diff --git a/assets/AnimatedWave-CpqzXgxy.js b/assets/AnimatedWave-CpqzXgxy.js deleted file mode 100644 index 096198be273c126b1a72211b3051d1b928b65c93..0000000000000000000000000000000000000000 --- a/assets/AnimatedWave-CpqzXgxy.js +++ /dev/null @@ -1,3 +0,0 @@ -import{Basic_default as e}from"./Basic-BE3KxqAa.js";import{Fragment as t,RouterLink as n,TransitionVertical_default as r,__plugin_vue_export_helper_default as i,computed as a,createBaseVNode as o,createCommentVNode as s,createElementBlock as c,createVNode as l,defineComponent as u,nextTick as d,normalizeClass as f,normalizeStyle as p,onMounted as m,openBlock as h,ref as g,renderList as _,renderSlot as v,resolveDirective as y,storeToRefs as b,toDisplayString as x,unref as S,useAudioContext as C,useChatStore as w,useConsciousnessStore as T,useDevicesList as E,useElementBounding as D,useI18n as O,useMarkdown as k,useMicVAD as A,useProvidersStore as j,useScroll as M,useSettings as N,useWhisper as P,vModelCheckbox as ee,vModelRadio as te,watch as F,withCtx as I,withDirectives as L}from"./index-iQVr9nx1.js";import{HeaderLink_default as R}from"./HeaderLink-DjJ0Gw-G.js";const z={},B={class:`cross-background-container`};function V(e,t){return h(),c(`div`,B,[v(e.$slots,`default`,{},void 0,!0)])}var H=i(z,[[`render`,V],[`__scopeId`,`data-v-455eb62c`]]);const U={"mb-1":``,"w-full":``,"gap-2":``},W={"w-full":``};var G=u({__name:`Header`,setup(e){return(e,t)=>(h(),c(`header`,U,[o(`div`,W,[l(R)]),l(S(n),{class:`m-1 block max-h-[10lh] min-h-[1lh] rounded-lg bg-neutral-100 p-2 text-lg text-neutral-500 outline-none dark:bg-neutral-800 dark:text-neutral-400`,to:`/settings`},{default:I(()=>t[0]||=[o(`div`,{"i-solar:settings-minimalistic-bold-duotone":``},null,-1)]),_:1,__:[0]})]))}}),K=G,ne=`/assets/worker-CkF6jqty.js`;const q=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``),J=e=>{var t;let n=typeof e;return n===`object`?e===null?`null`:(e==null||(t=e.constructor)==null?void 0:t.name)??`object`:n},Y=e=>{if(typeof e==`string`)return new TextEncoder().encode(e);if(e instanceof Uint8Array)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);throw TypeError(`The input must be a Uint8Array, a string, or an ArrayBuffer. Received a value of the type ${J(e)}.`)},X=e=>{let t=Y(e),n=``,r,i=t.length;for(r=2;r>2],n+=q[(t[r-2]&3)<<4|t[r-1]>>4],n+=q[(t[r-1]&15)<<2|t[r]>>6],n+=q[t[r]&63];return r===i+1&&(n+=q[t[r-2]>>2],n+=q[(t[r-2]&3)<<4],n+=`==`),r===i&&(n+=q[t[r-2]>>2],n+=q[(t[r-2]&3)<<4|t[r-1]>>4],n+=q[(t[r-1]&15)<<2],n+=`=`),n};function Z(e,t,n){for(let r=0;r{d().then(()=>{l.update(),u.value=l.height.value})}),m(async()=>{d().then(()=>{l.update(),u.value=l.height.value})}),(e,l)=>{let u=y(`auto-animate`);return h(),c(`div`,$,[l[2]||=o(`div`,{"flex-1":``},null,-1),L((h(),c(`div`,{ref_key:`chatHistoryRef`,ref:n,"h-full":``,"w-full":``,flex:`~ col`,"overflow-scroll":``},[l[1]||=o(`div`,{"flex-1":``},null,-1),(h(!0),c(t,null,_(S(i),(e,t)=>(h(),c(`div`,{key:t,"mb-2":``},[e.role===`error`?(h(),c(`div`,ie,[o(`div`,ae,[o(`div`,oe,[o(`div`,se,[o(`span`,ce,x(S(r)(`stage.chat.message.character-name.core-system`)),1)]),l[0]||=o(`div`,{"i-solar:danger-triangle-bold-duotone":``,"text-violet-500":``},null,-1)]),S(a)&&t===S(i).length-1?(h(),c(`div`,le)):(h(),c(`div`,{key:1,class:`markdown-content break-words text-violet-500`,text:`base {if(!e||!e.trim())return;let t=v.getProviderConfig(y.value);await H(e,{chatProvider:v.getProviderInstance(y.value),model:D.value,providerConfig:t})}});async function Y(){if(!(!i.value.trim()||p.value))try{let e=v.getProviderConfig(y.value);await H(i.value,{chatProvider:v.getProviderInstance(y.value),model:D.value,providerConfig:e})}catch(e){W.value.pop(),W.value.push({role:`error`,content:e.message})}}let{destroy:X,start:Z}=A(V,{onSpeechStart:()=>{a.value=!0},onVADMisfire:()=>{a.value=!1},onSpeechEnd:e=>{a.value=!1,Q(e.buffer)},auto:!1});async function Q(e){await G.resume();let t=await re(e,G.sampleRate);q({type:`generate`,data:{audio:t,language:`en`}})}async function $(e){let t=e.target,n=M.value.find(e=>e.deviceId===t.value);if(!n){z.value=void 0;return}z.value=n}return F(B,async e=>{e===`false`&&(X(),J())}),F(d,async e=>{e&&await R()}),m(()=>{Z()}),U(async()=>{i.value=``}),(n,m)=>(h(),c(`div`,Ce,[o(`fieldset`,we,[o(`label`,{class:f([u.value===`chat`?`bg-primary-100 dark:bg-primary-900`:`bg-white dark:bg-primary-950`,u.value===`chat`?`text-primary-500 dark:text-primary-500`:``,{"transition-colors-none ":S(k)}]),flex:`~ row`,checked:u.value===`chat`,"aria-checked":u.value===`chat`,border:`solid 2 primary-100 dark:primary-900`,text:`primary-300 hover:primary-500 dark:primary-300/50 dark:hover:primary-500`,transition:`all duration-250 ease-in-out`,"cursor-pointer":``,"items-center":``,"gap-1":``,"rounded-lg":``,"px-2":``},[L(o(`input`,{"onUpdate:modelValue":m[0]||=e=>u.value=e,type:`radio`,name:`tab`,value:`chat`,hidden:``},null,512),[[te,u.value]]),m[5]||=o(`div`,{"i-solar:dialog-2-bold-duotone":``,text:`2xl`,transform:`translate-y--2`},null,-1),o(`div`,Ee,[o(`span`,De,x(S(K)(`stage.chat.tabs.chat`)),1)])],10,Te)]),o(`div`,Oe,[o(`div`,ke,[l(Se,{"h-full":``,"flex-1":``,"p-4":``,w:`full`,"max-h":`i.value=e,placeholder:S(K)(`stage.message`),text:`primary-500 hover:primary-600 dark:primary-300/50 dark:hover:primary-500 placeholder:primary-400 placeholder:hover:primary-500 placeholder:dark:primary-300/50 placeholder:dark:hover:primary-500`,bg:`primary-200/20 dark:primary-400/20`,"min-h":`[100px]`,"max-h":`[300px]`,"w-full":``,"rounded-t-xl":``,"p-4":``,"font-medium":``,"outline-none":``,transition:`all duration-250 ease-in-out placeholder:all placeholder:duration-250 placeholder:ease-in-out`,class:f({"transition-colors-none placeholder:transition-colors-none":S(k)}),onSubmit:Y,onCompositionstart:m[2]||=e=>p.value=!0,onCompositionend:m[3]||=e=>p.value=!1},null,8,[`modelValue`,`placeholder`,`class`])])])]),o(`div`,je,[o(`div`,Me,[l(S(r),null,{default:I(()=>[d.value?(h(),c(`fieldset`,Ne,[(h(!0),c(t,null,_(S(M),(e,t)=>(h(),c(`label`,{key:t,class:`[&_div_span]:dark:hover:bg-cyan-300 [&_div_span]:dark:hover:bg-cyan-900`},[o(`input`,{type:`radio`,name:`audioInput`,value:e.deviceId,hidden:``,onChange:$},null,40,Pe),o(`div`,Fe,[o(`div`,Ie,[e.deviceId===S(V)?(h(),c(`div`,Le)):s(``,!0)]),o(`span`,{"inline-block":``,class:f([e.deviceId===S(V)?`cyan-400 dark:text-white`:`cyan-400/50 dark:text-white/50`]),transition:`all duration-250 ease-in-out`},x(e.label),3)])]))),128))])):s(``,!0)]),_:1}),o(`label`,{bg:`complementary-100 hover:complementary-200 dark:complementary-800 dark:hover:complementary-700`,transition:`all duration-250 ease-in-out`,class:f({"transition-colors-none":S(k)}),text:`complementary-400`,"h-fit":``,flex:``,"cursor-pointer":``,"items-center":``,"justify-center":``,"gap-2":``,"rounded-full":``,"px-4":``,"py-2":``},[L(o(`input`,{"onUpdate:modelValue":m[4]||=e=>d.value=e,type:`checkbox`,hidden:``},null,512),[[ee,d.value]]),m[6]||=o(`div`,{"i-solar:microphone-2-bold-duotone":``},null,-1),o(`div`,null,[a.value?(h(),c(`span`,ze,`Listening...`)):(h(),c(`span`,Re,x(S(K)(`settings.microphone`)),1))])],2)])])]))}}),Ve=Be;const He={py:`1`,flex:`~ col`,rounded:`lg`,"overflow-hidden":``},Ue={key:0,flex:``,mr:`12`},We={flex:`~ col`,shadow:`md violet-200/20 dark:none`,"min-w-20":``,"rounded-lg":``,"px-3":``,"py-2":``,h:`unset {d().then(()=>{a.update(),l.value=a.height.value})}),p(async()=>{d().then(()=>{a.update(),l.value=a.height.value})}),(e,a)=>{let l=y(`auto-animate`);return h(),c(`div`,He,[a[2]||=o(`div`,{"flex-1":``},null,-1),L((h(),c(`div`,{ref_key:`chatHistoryRef`,ref:n,"h-full":``,"w-full":``,"max-h":`40%`,flex:`~ col`,"overflow-scroll":``,class:`chat-history`},[a[1]||=o(`div`,{"flex-1":``},null,-1),(h(!0),c(t,null,_(S(i),(e,t)=>(h(),c(`div`,{key:t,"mb-2":``},[e.role===`error`?(h(),c(`div`,Ue,[o(`div`,We,[o(`div`,Ge,[o(`div`,Ke,[o(`span`,qe,x(S(r)(`stage.chat.message.character-name.core-system`)),1)]),a[0]||=o(`div`,{"i-solar:danger-triangle-bold-duotone":``,"text-violet-500":``},null,-1)]),e.content?(h(),c(`div`,{key:0,class:`markdown-content`,text:`base {r.value=!0},onVADMisfire:()=>{r.value=!1},onSpeechEnd:e=>{r.value=!1,P(e)},auto:!1});function P(e){alert(`Transcription is not implemented yet`)}return F(p,async e=>{e===`false`&&k()}),x(async()=>{n.value=``}),m(()=>{M()}),(t,r)=>(h(),c(`div`,ct,[l(st,{absolute:``,"left-0":``,"top-0":``,transform:`translate-y-[-100%]`,h:`80dvh`,"w-full":``}),o(`div`,lt,[l(S(e),{modelValue:n.value,"onUpdate:modelValue":r[0]||=e=>n.value=e,placeholder:S(E)(`stage.message`),border:`solid 2 primary-50 dark:primary-950/10`,text:`primary-500 hover:primary-600 dark:primary-100 dark:hover:primary-200 placeholder:primary-400 placeholder:hover:primary-500 placeholder:dark:primary-300 placeholder:dark:hover:primary-400`,bg:`primary-50/80 dark:primary-950/80`,"max-h":`[10lh]`,"min-h":`[calc(1lh+4px+4px)]`,"w-full":``,"resize-none":``,"overflow-y-scroll":``,rounded:`[1lh]`,"px-4":``,"py-0.5":``,"outline-none":``,"backdrop-blur-md":``,"scrollbar-none":``,transition:`all duration-250 ease-in-out placeholder:all placeholder:duration-250 placeholder:ease-in-out`,class:f([S(v)?`transition-colors-none placeholder:transition-colors-none`:``]),"default-height":`1lh`,onSubmit:D,onCompositionstart:r[1]||=e=>i.value=!0,onCompositionend:r[2]||=e=>i.value=!1},null,8,[`modelValue`,`placeholder`,`class`]),n.value.trim()||i.value?(h(),c(`button`,{key:0,w:`[calc(1lh+4px+4px)]`,h:`[calc(1lh+4px+4px)]`,"aspect-square":``,flex:``,"items-center":``,"self-end":``,"justify-center":``,"rounded-full":``,"outline-none":``,"backdrop-blur-md":``,text:`primary-500 hover:primary-600 dark:primary-100 dark:hover:primary-200 placeholder:primary-400 placeholder:hover:primary-500 placeholder:dark:primary-300 placeholder:dark:hover:primary-400`,bg:`primary-50/80 dark:primary-950/80`,onClick:D},r[3]||=[o(`div`,{"i-solar:arrow-up-outline":``},null,-1)])):s(``,!0)])]))}}),dt=ut;const ft={class:`relative`},pt={absolute:``,"left-0":``,"right-0":``,"top-0":``,"w-full":``,"overflow-hidden":``};var mt=u({__name:`AnimatedWave`,props:{height:{default:40},amplitude:{default:14},waveLength:{default:250},fillColor:{default:`oklch(95% 0.10 var(--chromatic-hue))`},direction:{default:`down`},movementDirection:{default:`left`},animationSpeed:{default:50}},setup(e){let t=e,n=g(t.height),r=g(t.amplitude),i=g(t.waveLength),s=g(t.fillColor),l=g(t.direction),u=g(t.movementDirection);function d(e,t,n,r,i){let a=[],o=Math.ceil(e/r),s=o*r,c=1,l=i===`up`?n:t-n;a.push(`M 0 ${l}`);let u=Math.PI*2/r;for(let e=0;e<=s;e+=c){let t=n*Math.sin(u*e),r=i===`up`?l-t:l+t;a.push(`L ${e} ${r}`)}let d=i===`up`?t:0;return a.push(`L ${s} ${d}`),a.push(`L 0 ${d} Z`),a.join(` `)}let f=a(()=>n.value+r.value*2),m=a(()=>{let e=` - - `;return`url(data:image/svg+xml;base64,${btoa(e)})`});return F(()=>[t.height,t.amplitude,t.waveLength,t.fillColor,t.direction,t.movementDirection],()=>{n.value=t.height,r.value=t.amplitude,i.value=t.waveLength,s.value=t.fillColor,l.value=t.direction,u.value=t.movementDirection},{immediate:!0}),(e,t)=>(h(),c(`div`,ft,[v(e.$slots,`default`,{},void 0,!0),o(`div`,pt,[o(`div`,{class:`colored-area wave`,style:p({background:s.value,height:`${f.value}px`,maskImage:m.value,WebkitMaskImage:m.value,"--wave-translate":`${-i.value}px`,"--animation-duration":`${i.value/e.animationSpeed}s`,"animation-direction":u.value===`left`?`normal`:`reverse`})},null,4)])]))}}),ht=i(mt,[[`__scopeId`,`data-v-33a54ad1`]]);export{ht as AnimatedWave_default,H as Cross_default,K as Header_default,Ve as InteractiveArea_default,dt as MobileInteractiveArea_default}; \ No newline at end of file diff --git a/assets/AnimatedWave-vmZPkx36.js b/assets/AnimatedWave-vmZPkx36.js new file mode 100644 index 0000000000000000000000000000000000000000..3062f6ac25bd8240de018af38a48da3e96e685b3 --- /dev/null +++ b/assets/AnimatedWave-vmZPkx36.js @@ -0,0 +1,3 @@ +import{b as e}from"./Basic-D95BeH1T.js";import{D as t,E as n,H as r,Q as i,aC as a,aG as o,aJ as s,aM as c,aO as l,aQ as u,aq as d,cT as f,cV as p,d as m,d3 as h,d6 as g,d7 as _,d9 as v,dB as y,dF as b,dG as x,dH as S,dK as C,dV as w,da as T,db as E,dj as D,dl as O,dp as k,dr as A,du as j,dv as M,e as N,e1 as P,e2 as F,e3 as I,h as L,i as R,o as ee}from"./index-C9kcCpP-.js";import{b as te}from"./HeaderLink-xWxD2Zu3.js";const z={},B={class:`cross-background-container`};function V(e,t){return S(),E(`div`,B,[k(e.$slots,`default`,{},void 0,!0)])}var H=a(z,[[`render`,V],[`__scopeId`,`data-v-455eb62c`]]);const U={"mb-1":``,"w-full":``,"gap-2":``},W={"w-full":``};var G=_({__name:`Header`,setup(e){return(e,t)=>(S(),E(`header`,U,[D(`div`,W,[y(te)]),y(w(o),{class:`m-1 block max-h-[10lh] min-h-[1lh] rounded-lg bg-neutral-100 p-2 text-lg text-neutral-500 outline-none dark:bg-neutral-800 dark:text-neutral-400`,to:`/settings`},{default:T(()=>t[0]||=[D(`div`,{"i-solar:settings-minimalistic-bold-duotone":``},null,-1)]),_:1,__:[0]})]))}}),K=G,ne=`/assets/worker-Bv82ofgX.js`;const q=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``),J=e=>{let t=typeof e;return t===`object`?e===null?`null`:e?.constructor?.name??`object`:t},Y=e=>{if(typeof e==`string`)return new TextEncoder().encode(e);if(e instanceof Uint8Array)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);throw TypeError(`The input must be a Uint8Array, a string, or an ArrayBuffer. Received a value of the type ${J(e)}.`)},X=e=>{let t=Y(e),n=``,r,i=t.length;for(r=2;r>2],n+=q[(t[r-2]&3)<<4|t[r-1]>>4],n+=q[(t[r-1]&15)<<2|t[r]>>6],n+=q[t[r]&63];return r===i+1&&(n+=q[t[r-2]>>2],n+=q[(t[r-2]&3)<<4],n+=`==`),r===i&&(n+=q[t[r-2]>>2],n+=q[(t[r-2]&3)<<4|t[r-1]>>4],n+=q[(t[r-1]&15)<<2],n+=`=`),n};function Z(e,t,n){for(let r=0;r{g().then(()=>{l.update(),d.value=l.height.value})}),m(async()=>{g().then(()=>{l.update(),d.value=l.height.value})}),(e,n)=>{let i=x(`auto-animate`);return S(),E(`div`,$,[n[2]||=D(`div`,{"flex-1":``},null,-1),A((S(),E(`div`,{ref_key:`chatHistoryRef`,ref:t,"h-full":``,"w-full":``,flex:`~ col`,"overflow-scroll":``},[n[1]||=D(`div`,{"flex-1":``},null,-1),(S(!0),E(j,null,O(w(a),(e,t)=>(S(),E(`div`,{key:t,"mb-2":``},[e.role===`error`?(S(),E(`div`,ie,[D(`div`,ae,[D(`div`,oe,[D(`div`,se,[D(`span`,ce,P(w(r)(`stage.chat.message.character-name.core-system`)),1)]),n[0]||=D(`div`,{"i-solar:danger-triangle-bold-duotone":``,"text-violet-500":``},null,-1)]),w(o)&&t===w(a).length-1?(S(),E(`div`,le)):(S(),E(`div`,{key:1,class:`markdown-content break-words text-violet-500`,text:`base {if(!e||!e.trim())return;let t=_.getProviderConfig(x.value);await H(e,{chatProvider:_.getProviderInstance(x.value),model:k.value,providerConfig:t})}});async function Y(){if(!(!a.value.trim()||g.value))try{let e=_.getProviderConfig(x.value);await H(a.value,{chatProvider:_.getProviderInstance(x.value),model:k.value,providerConfig:e})}catch(e){W.value.pop(),W.value.push({role:`error`,content:e.message})}}let{destroy:X,start:Z}=t(V,{onSpeechStart:()=>{o.value=!0},onVADMisfire:()=>{o.value=!1},onSpeechEnd:e=>{o.value=!1,Q(e.buffer)},auto:!1});async function Q(e){await G.resume();let t=await re(e,G.sampleRate);q({type:`generate`,data:{audio:t,language:`en`}})}async function $(e){let t=e.target,n=I.value.find(e=>e.deviceId===t.value);if(!n){z.value=void 0;return}z.value=n}return b(B,async e=>{e===`false`&&(X(),J())}),b(u,async e=>{e&&await te()}),h(()=>{Z()}),U(async()=>{a.value=``}),(t,n)=>(S(),E(`div`,Ce,[D(`fieldset`,we,[D(`label`,{class:F([c.value===`chat`?`bg-primary-100 dark:bg-primary-900`:`bg-white dark:bg-primary-950`,c.value===`chat`?`text-primary-500 dark:text-primary-500`:``,{"transition-colors-none ":w(M)}]),flex:`~ row`,checked:c.value===`chat`,"aria-checked":c.value===`chat`,border:`solid 2 primary-100 dark:primary-900`,text:`primary-300 hover:primary-500 dark:primary-300/50 dark:hover:primary-500`,transition:`all duration-250 ease-in-out`,"cursor-pointer":``,"items-center":``,"gap-1":``,"rounded-lg":``,"px-2":``},[A(D(`input`,{"onUpdate:modelValue":n[0]||=e=>c.value=e,type:`radio`,name:`tab`,value:`chat`,hidden:``},null,512),[[f,c.value]]),n[5]||=D(`div`,{"i-solar:dialog-2-bold-duotone":``,text:`2xl`,transform:`translate-y--2`},null,-1),D(`div`,Ee,[D(`span`,De,P(w(K)(`stage.chat.tabs.chat`)),1)])],10,Te)]),D(`div`,Oe,[D(`div`,ke,[y(Se,{"h-full":``,"flex-1":``,"p-4":``,w:`full`,"max-h":`a.value=e,placeholder:w(K)(`stage.message`),text:`primary-500 hover:primary-600 dark:primary-300/50 dark:hover:primary-500 placeholder:primary-400 placeholder:hover:primary-500 placeholder:dark:primary-300/50 placeholder:dark:hover:primary-500`,bg:`primary-200/20 dark:primary-400/20`,"min-h":`[100px]`,"max-h":`[300px]`,"w-full":``,"rounded-t-xl":``,"p-4":``,"font-medium":``,"outline-none":``,transition:`all duration-250 ease-in-out placeholder:all placeholder:duration-250 placeholder:ease-in-out`,class:F({"transition-colors-none placeholder:transition-colors-none":w(M)}),onSubmit:Y,onCompositionstart:n[2]||=e=>g.value=!0,onCompositionend:n[3]||=e=>g.value=!1},null,8,[`modelValue`,`placeholder`,`class`])])])]),D(`div`,je,[D(`div`,Me,[y(w(d),null,{default:T(()=>[u.value?(S(),E(`fieldset`,Ne,[(S(!0),E(j,null,O(w(I),(e,t)=>(S(),E(`label`,{key:t,class:`[&_div_span]:dark:hover:bg-cyan-300 [&_div_span]:dark:hover:bg-cyan-900`},[D(`input`,{type:`radio`,name:`audioInput`,value:e.deviceId,hidden:``,onChange:$},null,40,Pe),D(`div`,Fe,[D(`div`,Ie,[e.deviceId===w(V)?(S(),E(`div`,Le)):v(``,!0)]),D(`span`,{"inline-block":``,class:F([e.deviceId===w(V)?`cyan-400 dark:text-white`:`cyan-400/50 dark:text-white/50`]),transition:`all duration-250 ease-in-out`},P(e.label),3)])]))),128))])):v(``,!0)]),_:1}),D(`label`,{bg:`complementary-100 hover:complementary-200 dark:complementary-800 dark:hover:complementary-700`,transition:`all duration-250 ease-in-out`,class:F({"transition-colors-none":w(M)}),text:`complementary-400`,"h-fit":``,flex:``,"cursor-pointer":``,"items-center":``,"justify-center":``,"gap-2":``,"rounded-full":``,"px-4":``,"py-2":``},[A(D(`input`,{"onUpdate:modelValue":n[4]||=e=>u.value=e,type:`checkbox`,hidden:``},null,512),[[p,u.value]]),n[6]||=D(`div`,{"i-solar:microphone-2-bold-duotone":``},null,-1),D(`div`,null,[o.value?(S(),E(`span`,ze,`Listening...`)):(S(),E(`span`,Re,P(w(K)(`settings.microphone`)),1))])],2)])])]))}}),Ve=Be;const He={py:`1`,flex:`~ col`,rounded:`lg`,"overflow-hidden":``},Ue={key:0,flex:``,mr:`12`},We={flex:`~ col`,shadow:`md violet-200/20 dark:none`,"min-w-20":``,"rounded-lg":``,"px-3":``,"py-2":``,h:`unset {g().then(()=>{o.update(),l.value=o.height.value})}),p(async()=>{g().then(()=>{o.update(),l.value=o.height.value})}),(e,n)=>{let i=x(`auto-animate`);return S(),E(`div`,He,[n[2]||=D(`div`,{"flex-1":``},null,-1),A((S(),E(`div`,{ref_key:`chatHistoryRef`,ref:t,"h-full":``,"w-full":``,"max-h":`40%`,flex:`~ col`,"overflow-scroll":``,class:`chat-history`},[n[1]||=D(`div`,{"flex-1":``},null,-1),(S(!0),E(j,null,O(w(a),(e,t)=>(S(),E(`div`,{key:t,"mb-2":``},[e.role===`error`?(S(),E(`div`,Ue,[D(`div`,We,[D(`div`,Ge,[D(`div`,Ke,[D(`span`,qe,P(w(r)(`stage.chat.message.character-name.core-system`)),1)]),n[0]||=D(`div`,{"i-solar:danger-triangle-bold-duotone":``,"text-violet-500":``},null,-1)]),e.content?(S(),E(`div`,{key:0,class:`markdown-content`,text:`base {a.value=!0},onVADMisfire:()=>{a.value=!1},onSpeechEnd:e=>{a.value=!1,j(e)},auto:!1});function j(e){alert(`Transcription is not implemented yet`)}return b(d,async e=>{e===`false`&&k()}),_(async()=>{r.value=``}),h(()=>{A()}),(t,n)=>(S(),E(`div`,ct,[y(st,{absolute:``,"left-0":``,"top-0":``,transform:`translate-y-[-100%]`,h:`80dvh`,"w-full":``}),D(`div`,lt,[y(w(e),{modelValue:r.value,"onUpdate:modelValue":n[0]||=e=>r.value=e,placeholder:w(T)(`stage.message`),border:`solid 2 primary-50 dark:primary-950/10`,text:`primary-500 hover:primary-600 dark:primary-100 dark:hover:primary-200 placeholder:primary-400 placeholder:hover:primary-500 placeholder:dark:primary-300 placeholder:dark:hover:primary-400`,bg:`primary-50/80 dark:primary-950/80`,"max-h":`[10lh]`,"min-h":`[calc(1lh+4px+4px)]`,"w-full":``,"resize-none":``,"overflow-y-scroll":``,rounded:`[1lh]`,"px-4":``,"py-0.5":``,"outline-none":``,"backdrop-blur-md":``,"scrollbar-none":``,transition:`all duration-250 ease-in-out placeholder:all placeholder:duration-250 placeholder:ease-in-out`,class:F([w(p)?`transition-colors-none placeholder:transition-colors-none`:``]),"default-height":`1lh`,onSubmit:O,onCompositionstart:n[1]||=e=>o.value=!0,onCompositionend:n[2]||=e=>o.value=!1},null,8,[`modelValue`,`placeholder`,`class`]),r.value.trim()||o.value?(S(),E(`button`,{key:0,w:`[calc(1lh+4px+4px)]`,h:`[calc(1lh+4px+4px)]`,"aspect-square":``,flex:``,"items-center":``,"self-end":``,"justify-center":``,"rounded-full":``,"outline-none":``,"backdrop-blur-md":``,text:`primary-500 hover:primary-600 dark:primary-100 dark:hover:primary-200 placeholder:primary-400 placeholder:hover:primary-500 placeholder:dark:primary-300 placeholder:dark:hover:primary-400`,bg:`primary-50/80 dark:primary-950/80`,onClick:O},n[3]||=[D(`div`,{"i-solar:arrow-up-outline":``},null,-1)])):v(``,!0)])]))}}),dt=ut;const ft={class:`relative`},pt={absolute:``,"left-0":``,"right-0":``,"top-0":``,"w-full":``,"overflow-hidden":``};var mt=_({__name:`AnimatedWave`,props:{height:{default:40},amplitude:{default:14},waveLength:{default:250},fillColor:{default:`oklch(95% 0.10 var(--chromatic-hue))`},direction:{default:`down`},movementDirection:{default:`left`},animationSpeed:{default:50}},setup(e){let t=e,n=C(t.height),r=C(t.amplitude),i=C(t.waveLength),a=C(t.fillColor),o=C(t.direction),s=C(t.movementDirection);function c(e,t,n,r,i){let a=[],o=Math.ceil(e/r),s=o*r,c=1,l=i===`up`?n:t-n;a.push(`M 0 ${l}`);let u=Math.PI*2/r;for(let e=0;e<=s;e+=c){let t=n*Math.sin(u*e),r=i===`up`?l-t:l+t;a.push(`L ${e} ${r}`)}let d=i===`up`?t:0;return a.push(`L ${s} ${d}`),a.push(`L 0 ${d} Z`),a.join(` `)}let l=M(()=>n.value+r.value*2),u=M(()=>{let e=` + + `;return`url(data:image/svg+xml;base64,${btoa(e)})`});return b(()=>[t.height,t.amplitude,t.waveLength,t.fillColor,t.direction,t.movementDirection],()=>{n.value=t.height,r.value=t.amplitude,i.value=t.waveLength,a.value=t.fillColor,o.value=t.direction,s.value=t.movementDirection},{immediate:!0}),(e,t)=>(S(),E(`div`,ft,[k(e.$slots,`default`,{},void 0,!0),D(`div`,pt,[D(`div`,{class:`colored-area wave`,style:I({background:a.value,height:`${l.value}px`,maskImage:u.value,WebkitMaskImage:u.value,"--wave-translate":`${-i.value}px`,"--animation-duration":`${i.value/e.animationSpeed}s`,"animation-direction":s.value===`left`?`normal`:`reverse`})},null,4)])]))}}),ht=a(mt,[[`__scopeId`,`data-v-33a54ad1`]]);export{ht as b,dt as c,Ve as d,K as e,H as f}; \ No newline at end of file diff --git a/assets/Basic-BE3KxqAa.js b/assets/Basic-BE3KxqAa.js deleted file mode 100644 index 122a1c3deceacb92828f480b7dcc2a22e65866bf..0000000000000000000000000000000000000000 --- a/assets/Basic-BE3KxqAa.js +++ /dev/null @@ -1 +0,0 @@ -import{createElementBlock as e,defineComponent as t,mergeModels as n,normalizeStyle as r,openBlock as i,ref as a,useModel as o,vModelText as s,watch as c,withDirectives as l}from"./index-iQVr9nx1.js";var u=t({__name:`Basic`,props:n({defaultHeight:{}},{modelValue:{default:``},modelModifiers:{}}),emits:n([`submit`],[`update:modelValue`]),setup(t,{emit:n}){let u=t,d=n,f=o(t,`modelValue`),p=a(),m=a(`auto`);function h(e){e.code===`Enter`&&!e.shiftKey&&(e.preventDefault(),d(`submit`,f.value))}return c(f,()=>{m.value=`auto`,requestAnimationFrame(()=>{if(p.value){if(f.value===``){m.value=u.defaultHeight||`fit-content`;return}m.value=`${p.value.scrollHeight}px`}})},{immediate:!0}),(t,n)=>l((i(),e(`textarea`,{ref_key:`textareaRef`,ref:p,"onUpdate:modelValue":n[0]||=e=>f.value=e,style:r({height:m.value}),onKeydown:h},null,36)),[[s,f.value]])}}),d=u;export{d as Basic_default}; \ No newline at end of file diff --git a/assets/Basic-D95BeH1T.js b/assets/Basic-D95BeH1T.js new file mode 100644 index 0000000000000000000000000000000000000000..9203c81832abfa7b276c0d6d599f1245688c967d --- /dev/null +++ b/assets/Basic-D95BeH1T.js @@ -0,0 +1 @@ +import{cZ as e,d7 as t,dF as n,dH as r,dK as i,db as a,dg as o,do as s,dr as c,e3 as l}from"./index-C9kcCpP-.js";var u=t({__name:`Basic`,props:o({defaultHeight:{}},{modelValue:{default:``},modelModifiers:{}}),emits:o([`submit`],[`update:modelValue`]),setup(t,{emit:o}){let u=t,d=o,f=s(t,`modelValue`),p=i(),m=i(`auto`);function h(e){e.code===`Enter`&&!e.shiftKey&&(e.preventDefault(),d(`submit`,f.value))}return n(f,()=>{m.value=`auto`,requestAnimationFrame(()=>{if(p.value){if(f.value===``){m.value=u.defaultHeight||`fit-content`;return}m.value=`${p.value.scrollHeight}px`}})},{immediate:!0}),(t,n)=>c((r(),a(`textarea`,{ref_key:`textareaRef`,ref:p,"onUpdate:modelValue":n[0]||=e=>f.value=e,style:l({height:m.value}),onKeydown:h},null,36)),[[e,f.value]])}}),d=u;export{d as b}; \ No newline at end of file diff --git a/assets/CardCreate-DrM4wEtE.js b/assets/CardCreate-DrM4wEtE.js deleted file mode 100644 index f8b7f47b1b4e5115874337def31c5995fb47141e..0000000000000000000000000000000000000000 --- a/assets/CardCreate-DrM4wEtE.js +++ /dev/null @@ -1 +0,0 @@ -import{CardCreate_default as e}from"./CardCreate-QsTV9xFv.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardCreate-QsTV9xFv.js b/assets/CardCreate-QsTV9xFv.js deleted file mode 100644 index 3b5b4543e648770bcad4d3fd74cbe15ecd9007e1..0000000000000000000000000000000000000000 --- a/assets/CardCreate-QsTV9xFv.js +++ /dev/null @@ -1 +0,0 @@ -import{createBaseVNode as e,createElementBlock as t,defineComponent as n,openBlock as r,toDisplayString as i,unref as a,useI18n as o}from"./index-iQVr9nx1.js";const s={relative:``,class:`min-h-[120px] flex flex-col cursor-pointer items-center justify-center border-neutral-200 rounded-xl bg-white/60 p-6 dark:border-neutral-700 hover:border-primary-300 dark:bg-black/30 hover:bg-white/80 dark:hover:border-primary-700 dark:hover:bg-black/40`,border:`solid 2`,transition:`all duration-300`,"cursor-pointer":``,"opacity-95":``,hover:`scale-100 opacity-100 shadow-md dark:shadow-lg`},c={"font-medium":``,text:`neutral-600 dark:neutral-300`};var l=n({__name:`CardCreate`,setup(n){let{t:l}=o();return(n,o)=>(r(),t(`div`,s,[o[0]||=e(`div`,{"i-solar:add-square-line-duotone":``,"mb-4":``,"text-5xl":``,text:`neutral-400 dark:neutral-500`},null,-1),e(`p`,c,i(a(l)(`settings.pages.card.create_card`)),1)]))}}),u=l;export{u as CardCreate_default}; \ No newline at end of file diff --git a/assets/CardCreate-vI7-JE_m.js b/assets/CardCreate-vI7-JE_m.js new file mode 100644 index 0000000000000000000000000000000000000000..8e957c6eda6375c4b956f3a80271add482b89185 --- /dev/null +++ b/assets/CardCreate-vI7-JE_m.js @@ -0,0 +1 @@ +import{b as e}from"./CardCreate-zpppfU_P.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardCreate-zpppfU_P.js b/assets/CardCreate-zpppfU_P.js new file mode 100644 index 0000000000000000000000000000000000000000..e0c846a3b674a28a36d707829d4ee452164afdae --- /dev/null +++ b/assets/CardCreate-zpppfU_P.js @@ -0,0 +1 @@ +import{Q as e,d7 as t,dH as n,dV as r,db as i,dj as a,e1 as o}from"./index-C9kcCpP-.js";const s={relative:``,class:`min-h-[120px] flex flex-col cursor-pointer items-center justify-center border-neutral-200 rounded-xl bg-white/60 p-6 dark:border-neutral-700 hover:border-primary-300 dark:bg-black/30 hover:bg-white/80 dark:hover:border-primary-700 dark:hover:bg-black/40`,border:`solid 2`,transition:`all duration-300`,"cursor-pointer":``,"opacity-95":``,hover:`scale-100 opacity-100 shadow-md dark:shadow-lg`},c={"font-medium":``,text:`neutral-600 dark:neutral-300`};var l=t({__name:`CardCreate`,setup(t){let{t:l}=e();return(e,t)=>(n(),i(`div`,s,[t[0]||=a(`div`,{"i-solar:add-square-line-duotone":``,"mb-4":``,"text-5xl":``,text:`neutral-400 dark:neutral-500`},null,-1),a(`p`,c,o(r(l)(`settings.pages.card.create_card`)),1)]))}}),u=l;export{u as b}; \ No newline at end of file diff --git a/assets/CardCreationDialog-1FdBirpE.js b/assets/CardCreationDialog-1FdBirpE.js new file mode 100644 index 0000000000000000000000000000000000000000..384a06848cb29c8380f72d8bad39977f6eed303f --- /dev/null +++ b/assets/CardCreationDialog-1FdBirpE.js @@ -0,0 +1,3 @@ +import{b as e,c as t,j as n,m as r,o as i}from"./dist-NaQNo8Nw.js";import{Q as a,W as o,a6 as s,aC as c,aa as l,d$ as u,d7 as d,d9 as f,dB as p,dH as m,dI as h,dK as g,dS as ee,dV as _,da as v,db as y,dg as b,dj as x,dl as te,dn as ne,do as re,du as ie,dv as S,e1 as C,e2 as w,e6 as T,ea as E,f as D}from"./index-C9kcCpP-.js";var O=T((exports,t)=>{function n(e){return e.toLowerCase()}t.exports=n}),k=T((exports,t)=>{var n=O();t.exports=n}),A=T((exports,t)=>{function n(e,t,n){return e.replace(t,n)}t.exports=n}),j=T((exports,t)=>{var n=A();t.exports=n}),M=T((exports,t)=>{var n=String.prototype.trim!==void 0;t.exports=n}),N=T((exports,t)=>{var n=String.prototype.trim;t.exports=n}),P=T((exports,t)=>{var n=N(),r=` + \r +\f\v            \u2028\u2029   `,i=`᠎`;function a(){return n.call(r)===``&&n.call(i)===i}t.exports=a}),F=T((exports,t)=>{var n=j(),r=/^[\u0020\f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*([\S\s]*?)[\u0020\f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*$/;function i(e){return n(e,r,`$1`)}t.exports=i}),I=T((exports,t)=>{var n=N();function r(e){return n.call(e)}t.exports=r}),L=T((exports,t)=>{var n=M(),r=P(),i=F(),a=I(),o;o=n&&r()?a:i,t.exports=o}),R=T((exports,t)=>{var n=k(),r=j(),i=L(),a=/\s+/g,o=/[!"'(),–.:;<>?`{}|~\/\\\[\]_#$*&^@%]+/g,s=/([a-z0-9])([A-Z])/g;function c(e){return e=r(e,o,` `),e=r(e,s,`$1 $2`),e=i(e),e=r(e,a,`-`),n(e)}t.exports=c}),z=T((exports,t)=>{var n=R();t.exports=n}),B=E(z());const V={class:`w-full flex flex-col gap-5`},H={class:`mt-4`},U={class:`border-b border-neutral-200 dark:border-neutral-700`},W={class:`flex justify-center -mb-px sm:justify-start space-x-1`},G=[`onClick`],K={class:`flex items-center gap-1`},ae={key:0,class:`w-full rounded-xl bg-red900`},oe={class:`w-full p-4`},se={key:1,class:`tab-content ml-auto mr-auto w-95%`},ce={class:`mb-3`},le={class:`input-list ml-auto mr-auto w-90% flex flex-row flex-wrap justify-center gap-8`},ue={key:2,class:`tab-content ml-auto mr-auto w-95%`},de={class:`input-list ml-auto mr-auto w-90% flex flex-row flex-wrap justify-center gap-8`},fe={key:3,class:`tab-content ml-auto mr-auto w-95%`},pe={class:`input-list ml-auto mr-auto w-90% flex flex-row flex-wrap justify-center gap-8`},me={class:`ml-auto mr-1 flex flex-row gap-2`};var q=d({__name:`CardCreationDialog`,props:b({modelValue:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:b([`update:modelValue`],[`update:modelValue`]),setup(c,{emit:d}){let b=d,T=re(c,`modelValue`),{t:E}=a(),O=D(),k=g(``),A=[{id:`identity`,label:E(`settings.pages.card.creation.identity`),icon:`i-solar:emoji-funny-square-bold-duotone`},{id:`behavior`,label:E(`settings.pages.card.creation.behavior`),icon:`i-solar:chat-round-line-bold-duotone`},{id:`settings`,label:E(`settings.pages.card.creation.settings`),icon:`i-solar:settings-bold-duotone`}],j=S({get:()=>A.find(e=>e.id===k.value)?k.value:A[0]?.id||``,set:e=>{k.value=e}}),M=g(!1),N=g(``);function P(e){let t=ee(e);if(t.name.length>0)if(/^(?:\d+\.)+\d+$/.test(t.version))if(t.description.length>0)if(t.personality.length>0)if(t.scenario.length>0)if(t.systemPrompt.length>0){if(!(t.postHistoryInstructions.length>0))return M.value=!0,N.value=E(`settings.pages.card.creation.errors.posthistoryinstructions`),!1}else return M.value=!0,N.value=E(`settings.pages.card.creation.errors.systemprompt`),!1;else return M.value=!0,N.value=E(`settings.pages.card.creation.errors.scenario`),!1;else return M.value=!0,N.value=E(`settings.pages.card.creation.errors.personality`),!1;else return M.value=!0,N.value=E(`settings.pages.card.creation.errors.description`),!1;else return M.value=!0,N.value=E(`settings.pages.card.creation.errors.version`),!1;else return M.value=!0,N.value=E(`settings.pages.card.creation.errors.name`),!1;return M.value=!1,O.addCard(t),T.value=!1,!0}let F=g({name:E(`settings.pages.card.creation.defaults.name`),nickname:void 0,version:`1.0`,description:``,notes:void 0,personality:E(`settings.pages.card.creation.defaults.personality`),scenario:E(`settings.pages.card.creation.defaults.scenario`),systemPrompt:E(`settings.pages.card.creation.defaults.systemprompt`),postHistoryInstructions:E(`settings.pages.card.creation.defaults.posthistoryinstructions`),greetings:[],messageExample:[]});function I(e,t){return S({get:()=>F.value[e]??``,set:n=>{let r=n.trim();F.value[e]=r.length>0?t?t(r):r:``}})}let L=I(`name`,e=>(0,B.default)(e)),R=I(`nickname`),z=I(`description`),q=I(`notes`),J=I(`personality`),Y=I(`scenario`),X=S({get:()=>F.value.greetings??[],set:e=>{F.value.greetings=e||[]}}),Z=I(`version`),Q=I(`systemPrompt`),$=I(`postHistoryInstructions`);return(a,c)=>(m(),ne(_(t),{open:T.value,"onUpdate:open":c[12]||=e=>b(`update:modelValue`,e)},{default:v(()=>[p(_(n),null,{default:v(()=>[p(_(i),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-100 bg-black/50 backdrop-blur-sm`}),p(_(e),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-100 m-0 max-h-[90vh] max-w-6xl w-[92vw] flex flex-col overflow-auto border border-neutral-200 rounded-xl bg-white p-5 shadow-xl 2xl:w-[60vw] lg:w-[80vw] md:w-[85vw] xl:w-[70vw] -translate-x-1/2 -translate-y-1/2 dark:border-neutral-700 dark:bg-neutral-800 sm:p-6`},{default:v(()=>[x(`div`,V,[p(_(r),{"text-2xl":``,"font-normal":``,class:`from-primary-500 to-primary-400 bg-gradient-to-r bg-clip-text text-transparent`},{default:v(()=>[h(C(_(E)(`settings.pages.card.create_card`)),1)]),_:1}),x(`div`,H,[x(`div`,U,[x(`div`,W,[(m(),y(ie,null,te(A,e=>x(`button`,{key:e.id,class:w([`px-4 py-2 text-sm font-medium`,[j.value===e.id?`text-primary-600 dark:text-primary-400 border-b-2 border-primary-500 dark:border-primary-400`:`text-neutral-500 dark:text-neutral-400 hover:text-neutral-700 dark:hover:text-neutral-300`]]),onClick:t=>j.value=e.id},[x(`div`,K,[x(`div`,{class:w(e.icon)},null,2),h(` `+C(e.label),1)])],10,G)),64))])])]),M.value?(m(),y(`div`,ae,[x(`p`,oe,C(N.value),1)])):f(``,!0),j.value===`identity`?(m(),y(`div`,se,[x(`p`,ce,C(_(E)(`settings.pages.card.creation.fields_info.subtitle`)),1),x(`div`,le,[p(_(l),{modelValue:_(L),"onUpdate:modelValue":c[0]||=e=>u(L)?L.value=e:null,label:_(E)(`settings.pages.card.creation.name`),description:_(E)(`settings.pages.card.creation.fields_info.name`),required:!0},null,8,[`modelValue`,`label`,`description`]),p(_(l),{modelValue:_(R),"onUpdate:modelValue":c[1]||=e=>u(R)?R.value=e:null,label:_(E)(`settings.pages.card.creation.nickname`),description:_(E)(`settings.pages.card.creation.fields_info.nickname`)},null,8,[`modelValue`,`label`,`description`]),p(_(l),{modelValue:_(z),"onUpdate:modelValue":c[2]||=e=>u(z)?z.value=e:null,label:_(E)(`settings.pages.card.creation.description`),"single-line":!1,required:!0,description:_(E)(`settings.pages.card.creation.fields_info.description`)},null,8,[`modelValue`,`label`,`description`]),p(_(l),{modelValue:_(q),"onUpdate:modelValue":c[3]||=e=>u(q)?q.value=e:null,label:_(E)(`settings.pages.card.creator_notes`),"single-line":!1,description:_(E)(`settings.pages.card.creation.fields_info.notes`)},null,8,[`modelValue`,`label`,`description`])])])):j.value===`behavior`?(m(),y(`div`,ue,[x(`div`,de,[p(_(l),{modelValue:_(J),"onUpdate:modelValue":c[4]||=e=>u(J)?J.value=e:null,label:_(E)(`settings.pages.card.personality`),"single-line":!1,required:!0,description:_(E)(`settings.pages.card.creation.fields_info.personality`)},null,8,[`modelValue`,`label`,`description`]),p(_(l),{modelValue:_(Y),"onUpdate:modelValue":c[5]||=e=>u(Y)?Y.value=e:null,label:_(E)(`settings.pages.card.scenario`),"single-line":!1,required:!0,description:_(E)(`settings.pages.card.creation.fields_info.scenario`)},null,8,[`modelValue`,`label`,`description`]),p(_(s),{modelValue:X.value,"onUpdate:modelValue":c[6]||=e=>X.value=e,label:_(E)(`settings.pages.card.creation.greetings`),description:_(E)(`settings.pages.card.creation.fields_info.greetings`)},null,8,[`modelValue`,`label`,`description`])])])):j.value===`settings`?(m(),y(`div`,fe,[x(`div`,pe,[p(_(l),{modelValue:_(Q),"onUpdate:modelValue":c[7]||=e=>u(Q)?Q.value=e:null,label:_(E)(`settings.pages.card.systemprompt`),"single-line":!1,required:!0,description:_(E)(`settings.pages.card.creation.fields_info.systemprompt`)},null,8,[`modelValue`,`label`,`description`]),p(_(l),{modelValue:_($),"onUpdate:modelValue":c[8]||=e=>u($)?$.value=e:null,label:_(E)(`settings.pages.card.posthistoryinstructions`),"single-line":!1,required:!0,description:_(E)(`settings.pages.card.creation.fields_info.posthistoryinstructions`)},null,8,[`modelValue`,`label`,`description`]),p(_(l),{modelValue:_(Z),"onUpdate:modelValue":c[9]||=e=>u(Z)?Z.value=e:null,label:_(E)(`settings.pages.card.creation.version`),required:!0,description:_(E)(`settings.pages.card.creation.fields_info.version`)},null,8,[`modelValue`,`label`,`description`])])])):f(``,!0),x(`div`,me,[p(_(o),{variant:`secondary`,icon:`i-solar:undo-left-bold-duotone`,label:_(E)(`settings.pages.card.cancel`),disabled:!1,onClick:c[10]||=e=>T.value=!1},null,8,[`label`]),p(_(o),{variant:`primary`,icon:`i-solar:check-circle-bold-duotone`,label:_(E)(`settings.pages.card.creation.create`),disabled:!1,onClick:c[11]||=e=>P(F.value)},null,8,[`label`])])])]),_:1})]),_:1})]),_:1},8,[`open`]))}}),J=c(q,[[`__scopeId`,`data-v-c19882e9`]]);export{J as b}; \ No newline at end of file diff --git a/assets/CardCreationDialog-6qbWAmov.js b/assets/CardCreationDialog-6qbWAmov.js deleted file mode 100644 index 4bc9de93839a1aebc0da31a84663325dfc93bad1..0000000000000000000000000000000000000000 --- a/assets/CardCreationDialog-6qbWAmov.js +++ /dev/null @@ -1,3 +0,0 @@ -import{$u as e,Bu as t,Iv as n,Pu as r,nu as i}from"./dist-GvbkCCcT.js";import{Button_default as a,FieldInput_default as o,FieldValues_default as s,Fragment as c,__commonJSMin as l,__plugin_vue_export_helper_default as u,__toESM as d,computed as f,createBaseVNode as p,createBlock as m,createCommentVNode as h,createElementBlock as g,createTextVNode as _,createVNode as v,defineComponent as y,isRef as b,mergeModels as x,normalizeClass as S,openBlock as C,ref as w,renderList as ee,toDisplayString as T,toRaw as te,unref as E,useAiriCardStore as D,useI18n as O,useModel as k,withCtx as A}from"./index-iQVr9nx1.js";var j=l((exports,t)=>{function n(e){return e.toLowerCase()}t.exports=n}),M=l((exports,t)=>{var n=j();t.exports=n}),N=l((exports,t)=>{function n(e,t,n){return e.replace(t,n)}t.exports=n}),P=l((exports,t)=>{var n=N();t.exports=n}),F=l((exports,t)=>{var n=String.prototype.trim!==void 0;t.exports=n}),I=l((exports,t)=>{var n=String.prototype.trim;t.exports=n}),L=l((exports,t)=>{var n=I(),r=` - \r -\f\v            \u2028\u2029   `,i=`᠎`;function a(){return n.call(r)===``&&n.call(i)===i}t.exports=a}),R=l((exports,t)=>{var n=P(),r=/^[\u0020\f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*([\S\s]*?)[\u0020\f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*$/;function i(e){return n(e,r,`$1`)}t.exports=i}),z=l((exports,t)=>{var n=I();function r(e){return n.call(e)}t.exports=r}),B=l((exports,t)=>{var n=F(),r=L(),i=R(),a=z(),o;o=n&&r()?a:i,t.exports=o}),V=l((exports,t)=>{var n=M(),r=P(),i=B(),a=/\s+/g,o=/[!"'(),–.:;<>?`{}|~\/\\\[\]_#$*&^@%]+/g,s=/([a-z0-9])([A-Z])/g;function c(e){return e=r(e,o,` `),e=r(e,s,`$1 $2`),e=i(e),e=r(e,a,`-`),n(e)}t.exports=c}),H=l((exports,t)=>{var n=V();t.exports=n}),U=d(H());const W={class:`w-full flex flex-col gap-5`},G={class:`mt-4`},K={class:`border-b border-neutral-200 dark:border-neutral-700`},ne={class:`flex justify-center -mb-px sm:justify-start space-x-1`},re=[`onClick`],ie={class:`flex items-center gap-1`},ae={key:0,class:`w-full rounded-xl bg-red900`},oe={class:`w-full p-4`},se={key:1,class:`tab-content ml-auto mr-auto w-95%`},ce={class:`mb-3`},le={class:`input-list ml-auto mr-auto w-90% flex flex-row flex-wrap justify-center gap-8`},ue={key:2,class:`tab-content ml-auto mr-auto w-95%`},de={class:`input-list ml-auto mr-auto w-90% flex flex-row flex-wrap justify-center gap-8`},fe={key:3,class:`tab-content ml-auto mr-auto w-95%`},pe={class:`input-list ml-auto mr-auto w-90% flex flex-row flex-wrap justify-center gap-8`},me={class:`ml-auto mr-1 flex flex-row gap-2`};var q=y({__name:`CardCreationDialog`,props:x({modelValue:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:x([`update:modelValue`],[`update:modelValue`]),setup(l,{emit:u}){let d=u,y=k(l,`modelValue`),{t:x}=O(),j=D(),M=w(``),N=[{id:`identity`,label:x(`settings.pages.card.creation.identity`),icon:`i-solar:emoji-funny-square-bold-duotone`},{id:`behavior`,label:x(`settings.pages.card.creation.behavior`),icon:`i-solar:chat-round-line-bold-duotone`},{id:`settings`,label:x(`settings.pages.card.creation.settings`),icon:`i-solar:settings-bold-duotone`}],P=f({get:()=>{var e;return N.find(e=>e.id===M.value)?M.value:(e=N[0])?.id||``},set:e=>{M.value=e}}),F=w(!1),I=w(``);function L(e){let t=te(e);if(t.name.length>0)if(/^(?:\d+\.)+\d+$/.test(t.version))if(t.description.length>0)if(t.personality.length>0)if(t.scenario.length>0)if(t.systemPrompt.length>0){if(!(t.postHistoryInstructions.length>0))return F.value=!0,I.value=x(`settings.pages.card.creation.errors.posthistoryinstructions`),!1}else return F.value=!0,I.value=x(`settings.pages.card.creation.errors.systemprompt`),!1;else return F.value=!0,I.value=x(`settings.pages.card.creation.errors.scenario`),!1;else return F.value=!0,I.value=x(`settings.pages.card.creation.errors.personality`),!1;else return F.value=!0,I.value=x(`settings.pages.card.creation.errors.description`),!1;else return F.value=!0,I.value=x(`settings.pages.card.creation.errors.version`),!1;else return F.value=!0,I.value=x(`settings.pages.card.creation.errors.name`),!1;return F.value=!1,j.addCard(t),y.value=!1,!0}let R=w({name:x(`settings.pages.card.creation.defaults.name`),nickname:void 0,version:`1.0`,description:``,notes:void 0,personality:x(`settings.pages.card.creation.defaults.personality`),scenario:x(`settings.pages.card.creation.defaults.scenario`),systemPrompt:x(`settings.pages.card.creation.defaults.systemprompt`),postHistoryInstructions:x(`settings.pages.card.creation.defaults.posthistoryinstructions`),greetings:[],messageExample:[]});function z(e,t){return f({get:()=>R.value[e]??``,set:n=>{let r=n.trim();R.value[e]=r.length>0?t?t(r):r:``}})}let B=z(`name`,e=>(0,U.default)(e)),V=z(`nickname`),H=z(`description`),q=z(`notes`),J=z(`personality`),Y=z(`scenario`),X=f({get:()=>R.value.greetings??[],set:e=>{R.value.greetings=e||[]}}),Z=z(`version`),Q=z(`systemPrompt`),$=z(`postHistoryInstructions`);return(l,u)=>(C(),m(E(i),{open:y.value,"onUpdate:open":u[12]||=e=>d(`update:modelValue`,e)},{default:A(()=>[v(E(n),null,{default:A(()=>[v(E(e),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-100 bg-black/50 backdrop-blur-sm`}),v(E(r),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-100 m-0 max-h-[90vh] max-w-6xl w-[92vw] flex flex-col overflow-auto border border-neutral-200 rounded-xl bg-white p-5 shadow-xl 2xl:w-[60vw] lg:w-[80vw] md:w-[85vw] xl:w-[70vw] -translate-x-1/2 -translate-y-1/2 dark:border-neutral-700 dark:bg-neutral-800 sm:p-6`},{default:A(()=>[p(`div`,W,[v(E(t),{"text-2xl":``,"font-normal":``,class:`from-primary-500 to-primary-400 bg-gradient-to-r bg-clip-text text-transparent`},{default:A(()=>[_(T(E(x)(`settings.pages.card.create_card`)),1)]),_:1}),p(`div`,G,[p(`div`,K,[p(`div`,ne,[(C(),g(c,null,ee(N,e=>p(`button`,{key:e.id,class:S([`px-4 py-2 text-sm font-medium`,[P.value===e.id?`text-primary-600 dark:text-primary-400 border-b-2 border-primary-500 dark:border-primary-400`:`text-neutral-500 dark:text-neutral-400 hover:text-neutral-700 dark:hover:text-neutral-300`]]),onClick:t=>P.value=e.id},[p(`div`,ie,[p(`div`,{class:S(e.icon)},null,2),_(` `+T(e.label),1)])],10,re)),64))])])]),F.value?(C(),g(`div`,ae,[p(`p`,oe,T(I.value),1)])):h(``,!0),P.value===`identity`?(C(),g(`div`,se,[p(`p`,ce,T(E(x)(`settings.pages.card.creation.fields_info.subtitle`)),1),p(`div`,le,[v(E(o),{modelValue:E(B),"onUpdate:modelValue":u[0]||=e=>b(B)?B.value=e:null,label:E(x)(`settings.pages.card.creation.name`),description:E(x)(`settings.pages.card.creation.fields_info.name`),required:!0},null,8,[`modelValue`,`label`,`description`]),v(E(o),{modelValue:E(V),"onUpdate:modelValue":u[1]||=e=>b(V)?V.value=e:null,label:E(x)(`settings.pages.card.creation.nickname`),description:E(x)(`settings.pages.card.creation.fields_info.nickname`)},null,8,[`modelValue`,`label`,`description`]),v(E(o),{modelValue:E(H),"onUpdate:modelValue":u[2]||=e=>b(H)?H.value=e:null,label:E(x)(`settings.pages.card.creation.description`),"single-line":!1,required:!0,description:E(x)(`settings.pages.card.creation.fields_info.description`)},null,8,[`modelValue`,`label`,`description`]),v(E(o),{modelValue:E(q),"onUpdate:modelValue":u[3]||=e=>b(q)?q.value=e:null,label:E(x)(`settings.pages.card.creator_notes`),"single-line":!1,description:E(x)(`settings.pages.card.creation.fields_info.notes`)},null,8,[`modelValue`,`label`,`description`])])])):P.value===`behavior`?(C(),g(`div`,ue,[p(`div`,de,[v(E(o),{modelValue:E(J),"onUpdate:modelValue":u[4]||=e=>b(J)?J.value=e:null,label:E(x)(`settings.pages.card.personality`),"single-line":!1,required:!0,description:E(x)(`settings.pages.card.creation.fields_info.personality`)},null,8,[`modelValue`,`label`,`description`]),v(E(o),{modelValue:E(Y),"onUpdate:modelValue":u[5]||=e=>b(Y)?Y.value=e:null,label:E(x)(`settings.pages.card.scenario`),"single-line":!1,required:!0,description:E(x)(`settings.pages.card.creation.fields_info.scenario`)},null,8,[`modelValue`,`label`,`description`]),v(E(s),{modelValue:X.value,"onUpdate:modelValue":u[6]||=e=>X.value=e,label:E(x)(`settings.pages.card.creation.greetings`),description:E(x)(`settings.pages.card.creation.fields_info.greetings`)},null,8,[`modelValue`,`label`,`description`])])])):P.value===`settings`?(C(),g(`div`,fe,[p(`div`,pe,[v(E(o),{modelValue:E(Q),"onUpdate:modelValue":u[7]||=e=>b(Q)?Q.value=e:null,label:E(x)(`settings.pages.card.systemprompt`),"single-line":!1,required:!0,description:E(x)(`settings.pages.card.creation.fields_info.systemprompt`)},null,8,[`modelValue`,`label`,`description`]),v(E(o),{modelValue:E($),"onUpdate:modelValue":u[8]||=e=>b($)?$.value=e:null,label:E(x)(`settings.pages.card.posthistoryinstructions`),"single-line":!1,required:!0,description:E(x)(`settings.pages.card.creation.fields_info.posthistoryinstructions`)},null,8,[`modelValue`,`label`,`description`]),v(E(o),{modelValue:E(Z),"onUpdate:modelValue":u[9]||=e=>b(Z)?Z.value=e:null,label:E(x)(`settings.pages.card.creation.version`),required:!0,description:E(x)(`settings.pages.card.creation.fields_info.version`)},null,8,[`modelValue`,`label`,`description`])])])):h(``,!0),p(`div`,me,[v(E(a),{variant:`secondary`,icon:`i-solar:undo-left-bold-duotone`,label:E(x)(`settings.pages.card.cancel`),disabled:!1,onClick:u[10]||=e=>y.value=!1},null,8,[`label`]),v(E(a),{variant:`primary`,icon:`i-solar:check-circle-bold-duotone`,label:E(x)(`settings.pages.card.creation.create`),disabled:!1,onClick:u[11]||=e=>L(R.value)},null,8,[`label`])])])]),_:1})]),_:1})]),_:1},8,[`open`]))}}),J=u(q,[[`__scopeId`,`data-v-c19882e9`]]);export{J as CardCreationDialog_default}; \ No newline at end of file diff --git a/assets/CardCreationDialog-Cms6yBxy.js b/assets/CardCreationDialog-Cms6yBxy.js new file mode 100644 index 0000000000000000000000000000000000000000..f8fa715fb9c0efa32f0d6076bb8fe17208e93521 --- /dev/null +++ b/assets/CardCreationDialog-Cms6yBxy.js @@ -0,0 +1 @@ +import"./dist-NaQNo8Nw.js";import{b as e}from"./CardCreationDialog-1FdBirpE.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardCreationDialog-kvoYgWVP.js b/assets/CardCreationDialog-kvoYgWVP.js deleted file mode 100644 index 422806b959ca3f5faf42f3de6ebac417038025fe..0000000000000000000000000000000000000000 --- a/assets/CardCreationDialog-kvoYgWVP.js +++ /dev/null @@ -1 +0,0 @@ -import"./dist-GvbkCCcT.js";import{CardCreationDialog_default as e}from"./CardCreationDialog-6qbWAmov.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardDetailDialog-CNHw_vI_.js b/assets/CardDetailDialog-CNHw_vI_.js new file mode 100644 index 0000000000000000000000000000000000000000..c72f8d60ba25acaaa09f9654a0935f62947749c9 --- /dev/null +++ b/assets/CardDetailDialog-CNHw_vI_.js @@ -0,0 +1 @@ +import"./dist-NaQNo8Nw.js";import"./DeleteCardDialog-BSO29tu_.js";import{b as e}from"./CardDetailDialog-D8Olu3Yo.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardDetailDialog-Ci9-z9G1.js b/assets/CardDetailDialog-Ci9-z9G1.js deleted file mode 100644 index 791215e7b7dc6b17153fa51c0575082db4450293..0000000000000000000000000000000000000000 --- a/assets/CardDetailDialog-Ci9-z9G1.js +++ /dev/null @@ -1 +0,0 @@ -import"./dist-GvbkCCcT.js";import"./DeleteCardDialog-BTqL0RX4.js";import{CardDetailDialog_default as e}from"./CardDetailDialog-iDYkHhJf.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardDetailDialog-D8Olu3Yo.js b/assets/CardDetailDialog-D8Olu3Yo.js new file mode 100644 index 0000000000000000000000000000000000000000..09fd05e665f0c2c67918ed2778122de76bacac2b --- /dev/null +++ b/assets/CardDetailDialog-D8Olu3Yo.js @@ -0,0 +1 @@ +import{b as e,c as t,j as ee,m as te,o as ne}from"./dist-NaQNo8Nw.js";import{Q as n,W as re,aJ as r,d7 as i,d9 as a,dB as o,dH as s,dI as c,dK as l,dV as u,da as d,db as f,dj as p,dl as m,du as h,dv as g,e1 as _,e2 as v,f as ie}from"./index-C9kcCpP-.js";import{b as ae}from"./DeleteCardDialog-BSO29tu_.js";const oe={key:0,class:`w-full flex flex-col gap-5`},se={flex:`~ col`,"gap-3":``},ce={flex:`~ row`,"items-center":``,"justify-between":``},le={flex:`~ row`,"items-center":``,"gap-2":``},ue={key:0,class:`flex items-center gap-1 rounded-full bg-primary-100 px-2 py-0.5 text-xs text-primary-600 font-medium dark:bg-primary-900/40 dark:text-primary-400`},y={"mt-1":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},de={"font-medium":``},fe={flex:`~ row`,"gap-2":``},pe={class:`mt-4`},me={class:`border-b border-neutral-200 dark:border-neutral-700`},he={class:`flex justify-center -mb-px sm:justify-start space-x-1`},ge=[`onClick`],b={class:`flex items-center gap-1`},x={key:0},S=[`innerHTML`],C={key:1},w=[`innerHTML`],T={key:2},E={flex:`~ col`,"max-h-60":``,"gap-4":``,"overflow-auto":``,"pr-1":``,"sm:max-h-80":``},D={key:0,flex:`~ col`,"gap-2":``},O={"text-lg":``,"text-neutral-500":``,"font-medium":``,"dark:text-neutral-400":``},k=[`innerHTML`],A={key:3},j={grid:`~ cols-1 sm:cols-3`,"gap-4":``},M={flex:`~ col`,bg:`white/60 dark:black/30`,"gap-1":``,"rounded-lg":``,"p-3":``,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`},N={flex:`~ row`,"items-center":``,"gap-2":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},P={truncate:``,"font-medium":``},F={flex:`~ col`,bg:`white/60 dark:black/30`,"gap-2":``,"rounded-lg":``,"p-3":``,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`},I={flex:`~ row`,"items-center":``,"gap-2":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},L={truncate:``,"font-medium":``},_e={flex:`~ col`,bg:`white/60 dark:black/30`,"gap-2":``,"rounded-lg":``,"p-3":``,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`},ve={flex:`~ row`,"items-center":``,"gap-2":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},ye={truncate:``,"font-medium":``},be={key:1,bg:`neutral-50/50 dark:neutral-900/50`,"rounded-xl":``,"p-8":``,"text-center":``,border:`~ neutral-200/50 dark:neutral-700/30`,shadow:`sm`};var R=i({__name:`CardDetailDialog`,props:{modelValue:{type:Boolean},cardId:{}},emits:[`update:modelValue`],setup(i,{emit:R}){let z=i,B=R,{t:V}=n(),H=ie(),{removeCard:xe}=H,{activeCardId:U}=r(H),W=g(()=>{if(z.cardId)return H.getCard(z.cardId)}),G=g(()=>{if(!W.value||!W.value.extensions?.airi?.modules)return{consciousness:``,speech:``,voice:``};let e=W.value.extensions.airi.modules;return{consciousness:e.consciousness?.model||``,speech:e.speech?.model||``,voice:e.speech?.voice_id||``}}),K=g(()=>W.value?{personality:W.value.personality,scenario:W.value.scenario,systemPrompt:W.value.systemPrompt,postHistoryInstructions:W.value.postHistoryInstructions}:{}),q=g(()=>z.cardId===U.value),J=l(!1);function Se(){J.value=!0,setTimeout(()=>{U.value=z.cardId,J.value=!1},300)}function Y(e){return e?.replace(/\{\{(.*?)\}\}/g,`{{ $1 }}`).trim()}let X=l(!1);function Ce(){W.value&&(xe(z.cardId),B(`update:modelValue`,!1)),X.value=!1}let Z=l(``),Q=g(()=>{let e=[];return W.value?.description&&e.push({id:`description`,label:V(`settings.pages.card.description_label`),icon:`i-solar:document-text-linear`}),W.value?.notes&&e.push({id:`notes`,label:V(`settings.pages.card.creator_notes`),icon:`i-solar:notes-linear`}),Object.values(K.value).some(e=>!!e)&&e.push({id:`character`,label:V(`settings.pages.card.character`),icon:`i-solar:user-rounded-linear`}),e.push({id:`modules`,label:V(`settings.pages.card.modules`),icon:`i-solar:tuning-square-linear`}),e}),$=g({get:()=>Q.value.find(e=>e.id===Z.value)?Z.value:Q.value[0]?.id||``,set:e=>{Z.value=e}});return(n,r)=>(s(),f(h,null,[o(u(t),{open:n.modelValue,"onUpdate:open":r[0]||=e=>B(`update:modelValue`,e)},{default:d(()=>[o(u(ee),null,{default:d(()=>[o(u(ne),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-100 bg-black/50 backdrop-blur-sm`}),o(u(e),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-100 m-0 max-h-[90vh] max-w-6xl w-[92vw] flex flex-col overflow-auto border border-neutral-200 rounded-xl bg-white p-5 shadow-xl 2xl:w-[60vw] lg:w-[80vw] md:w-[85vw] xl:w-[70vw] -translate-x-1/2 -translate-y-1/2 dark:border-neutral-700 dark:bg-neutral-800 sm:p-6`},{default:d(()=>[W.value?(s(),f(`div`,oe,[p(`div`,se,[p(`div`,ce,[p(`div`,null,[p(`div`,le,[o(u(te),{"text-2xl":``,"font-normal":``,class:`from-primary-500 to-primary-400 bg-gradient-to-r bg-clip-text text-transparent`},{default:d(()=>[c(_(W.value.name),1)]),_:1}),q.value?(s(),f(`div`,ue,[r[3]||=p(`div`,{"i-solar:check-circle-bold-duotone":``,"text-xs":``},null,-1),c(` `+_(u(V)(`settings.pages.card.active_badge`)),1)])):a(``,!0)]),p(`div`,y,[c(` v`+_(W.value.version)+` `,1),W.value.creator?(s(),f(h,{key:0},[c(` · `+_(u(V)(`settings.pages.card.created_by`))+` `,1),p(`span`,de,_(W.value.creator),1)],64)):a(``,!0)])]),p(`div`,fe,[o(u(re),{variant:`primary`,icon:q.value?`i-solar:check-circle-bold-duotone`:`i-solar:play-circle-broken`,label:q.value?u(V)(`settings.pages.card.active`):u(V)(`settings.pages.card.activate`),disabled:q.value,class:v({"animate-pulse":J.value}),onClick:Se},null,8,[`icon`,`label`,`disabled`,`class`])])]),p(`div`,pe,[p(`div`,me,[p(`div`,he,[(s(!0),f(h,null,m(Q.value,e=>(s(),f(`button`,{key:e.id,class:v([`px-4 py-2 text-sm font-medium`,[$.value===e.id?`text-primary-600 dark:text-primary-400 border-b-2 border-primary-500 dark:border-primary-400`:`text-neutral-500 dark:text-neutral-400 hover:text-neutral-700 dark:hover:text-neutral-300`]]),onClick:t=>$.value=e.id},[p(`div`,b,[p(`div`,{class:v(e.icon)},null,2),c(` `+_(e.label),1)])],10,ge))),128))])])]),$.value===`notes`&&W.value.notes?(s(),f(`div`,x,[p(`div`,{bg:`white/60 dark:black/30`,border:`~ neutral-200/50 dark:neutral-700/30`,"max-h-60":``,"overflow-auto":``,"whitespace-pre-line":``,"rounded-lg":``,"p-4":``,"text-neutral-700":``,"sm:max-h-80":``,"dark:text-neutral-300":``,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`,innerHTML:Y(W.value.notes)},null,8,S)])):a(``,!0),$.value===`description`&&W.value.description?(s(),f(`div`,C,[p(`div`,{bg:`white/60 dark:black/30`,"max-h-60":``,"overflow-auto":``,"whitespace-pre-line":``,"rounded-lg":``,"p-4":``,"sm:max-h-80":``,text:`neutral-600 dark:neutral-300`,border:`~ neutral-200/50 dark:neutral-700/30`,innerHTML:Y(W.value.description)},null,8,w)])):a(``,!0),$.value===`character`&&Object.values(K.value).some(e=>!!e)?(s(),f(`div`,T,[p(`div`,E,[(s(!0),f(h,null,m(K.value,(e,t)=>(s(),f(h,{key:t},[e?(s(),f(`div`,D,[p(`h2`,O,_(u(V)(`settings.pages.card.${t.toLowerCase()}`)),1),p(`div`,{bg:`white/60 dark:black/30`,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`,"max-h-none":``,"overflow-auto":``,"whitespace-pre-line":``,"rounded-lg":``,"p-3":``,"text-neutral-700":``,"dark:text-neutral-300":``,innerHTML:Y(e)},null,8,k)])):a(``,!0)],64))),128))])])):a(``,!0),$.value===`modules`?(s(),f(`div`,A,[p(`div`,j,[p(`div`,M,[p(`span`,N,[r[4]||=p(`div`,{"i-lucide:ghost":``},null,-1),c(` `+_(u(V)(`settings.pages.card.consciousness.model`)),1)]),p(`div`,P,_(G.value.consciousness??`default`),1)]),p(`div`,F,[p(`span`,I,[r[5]||=p(`div`,{"i-lucide:mic":``},null,-1),c(` `+_(u(V)(`settings.pages.card.speech.model`)),1)]),p(`div`,L,_(G.value.speech??`default`),1)]),p(`div`,_e,[p(`span`,ve,[r[6]||=p(`div`,{"i-lucide:music":``},null,-1),c(` `+_(u(V)(`settings.pages.card.speech.voice`)),1)]),p(`div`,ye,_(G.value.voice??`default`),1)])])])):a(``,!0)])])):(s(),f(`div`,be,[r[7]||=p(`div`,{"i-solar:card-search-broken":``,"mx-auto":``,"mb-3":``,"text-6xl":``,"text-neutral-400":``},null,-1),c(` `+_(u(V)(`settings.pages.card.card_not_found`)),1)]))]),_:1})]),_:1})]),_:1},8,[`open`]),o(ae,{modelValue:X.value,"onUpdate:modelValue":r[1]||=e=>X.value=e,"card-name":W.value?.name,onConfirm:Ce,onCancel:r[2]||=e=>X.value=!1},null,8,[`modelValue`,`card-name`])],64))}}),z=R;export{z as b}; \ No newline at end of file diff --git a/assets/CardDetailDialog-iDYkHhJf.js b/assets/CardDetailDialog-iDYkHhJf.js deleted file mode 100644 index 368befb57d58e3af8d56e0da5a430c228a76aadb..0000000000000000000000000000000000000000 --- a/assets/CardDetailDialog-iDYkHhJf.js +++ /dev/null @@ -1 +0,0 @@ -import{$u as e,Bu as t,Iv as n,Pu as r,nu as i}from"./dist-GvbkCCcT.js";import{Button_default as ee,Fragment as a,computed as o,createBaseVNode as s,createCommentVNode as c,createElementBlock as l,createTextVNode as u,createVNode as d,defineComponent as f,normalizeClass as p,openBlock as m,ref as h,renderList as g,storeToRefs as te,toDisplayString as _,unref as v,useAiriCardStore as ne,useI18n as re,withCtx as y}from"./index-iQVr9nx1.js";import{DeleteCardDialog_default as b}from"./DeleteCardDialog-BTqL0RX4.js";const ie={key:0,class:`w-full flex flex-col gap-5`},ae={flex:`~ col`,"gap-3":``},oe={flex:`~ row`,"items-center":``,"justify-between":``},se={flex:`~ row`,"items-center":``,"gap-2":``},ce={key:0,class:`flex items-center gap-1 rounded-full bg-primary-100 px-2 py-0.5 text-xs text-primary-600 font-medium dark:bg-primary-900/40 dark:text-primary-400`},le={"mt-1":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},ue={"font-medium":``},de={flex:`~ row`,"gap-2":``},fe={class:`mt-4`},pe={class:`border-b border-neutral-200 dark:border-neutral-700`},me={class:`flex justify-center -mb-px sm:justify-start space-x-1`},he=[`onClick`],ge={class:`flex items-center gap-1`},x={key:0},S=[`innerHTML`],C={key:1},w=[`innerHTML`],T={key:2},E={flex:`~ col`,"max-h-60":``,"gap-4":``,"overflow-auto":``,"pr-1":``,"sm:max-h-80":``},D={key:0,flex:`~ col`,"gap-2":``},O={"text-lg":``,"text-neutral-500":``,"font-medium":``,"dark:text-neutral-400":``},k=[`innerHTML`],A={key:3},j={grid:`~ cols-1 sm:cols-3`,"gap-4":``},M={flex:`~ col`,bg:`white/60 dark:black/30`,"gap-1":``,"rounded-lg":``,"p-3":``,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`},N={flex:`~ row`,"items-center":``,"gap-2":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},P={truncate:``,"font-medium":``},F={flex:`~ col`,bg:`white/60 dark:black/30`,"gap-2":``,"rounded-lg":``,"p-3":``,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`},I={flex:`~ row`,"items-center":``,"gap-2":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},L={truncate:``,"font-medium":``},_e={flex:`~ col`,bg:`white/60 dark:black/30`,"gap-2":``,"rounded-lg":``,"p-3":``,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`},ve={flex:`~ row`,"items-center":``,"gap-2":``,"text-sm":``,"text-neutral-500":``,"dark:text-neutral-400":``},ye={truncate:``,"font-medium":``},be={key:1,bg:`neutral-50/50 dark:neutral-900/50`,"rounded-xl":``,"p-8":``,"text-center":``,border:`~ neutral-200/50 dark:neutral-700/30`,shadow:`sm`};var R=f({__name:`CardDetailDialog`,props:{modelValue:{type:Boolean},cardId:{}},emits:[`update:modelValue`],setup(f,{emit:R}){let z=f,B=R,{t:V}=re(),H=ne(),{removeCard:xe}=H,{activeCardId:U}=te(H),W=o(()=>{if(z.cardId)return H.getCard(z.cardId)}),G=o(()=>{var e,t,n,r;if(!W.value||!(!((e=W.value.extensions)==null||(e=e.airi)==null)&&e.modules))return{consciousness:``,speech:``,voice:``};let i=W.value.extensions.airi.modules;return{consciousness:(t=i.consciousness)?.model||``,speech:(n=i.speech)?.model||``,voice:(r=i.speech)?.voice_id||``}}),K=o(()=>W.value?{personality:W.value.personality,scenario:W.value.scenario,systemPrompt:W.value.systemPrompt,postHistoryInstructions:W.value.postHistoryInstructions}:{}),q=o(()=>z.cardId===U.value),J=h(!1);function Se(){J.value=!0,setTimeout(()=>{U.value=z.cardId,J.value=!1},300)}function Y(e){return e?.replace(/\{\{(.*?)\}\}/g,`{{ $1 }}`).trim()}let X=h(!1);function Ce(){W.value&&(xe(z.cardId),B(`update:modelValue`,!1)),X.value=!1}let Z=h(``),Q=o(()=>{var e,t;let n=[];return(e=W.value)?.description&&n.push({id:`description`,label:V(`settings.pages.card.description_label`),icon:`i-solar:document-text-linear`}),(t=W.value)?.notes&&n.push({id:`notes`,label:V(`settings.pages.card.creator_notes`),icon:`i-solar:notes-linear`}),Object.values(K.value).some(e=>!!e)&&n.push({id:`character`,label:V(`settings.pages.card.character`),icon:`i-solar:user-rounded-linear`}),n.push({id:`modules`,label:V(`settings.pages.card.modules`),icon:`i-solar:tuning-square-linear`}),n}),$=o({get:()=>{var e;return Q.value.find(e=>e.id===Z.value)?Z.value:(e=Q.value[0])?.id||``},set:e=>{Z.value=e}});return(o,f)=>{var h;return m(),l(a,null,[d(v(i),{open:o.modelValue,"onUpdate:open":f[0]||=e=>B(`update:modelValue`,e)},{default:y(()=>[d(v(n),null,{default:y(()=>[d(v(e),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-100 bg-black/50 backdrop-blur-sm`}),d(v(r),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-100 m-0 max-h-[90vh] max-w-6xl w-[92vw] flex flex-col overflow-auto border border-neutral-200 rounded-xl bg-white p-5 shadow-xl 2xl:w-[60vw] lg:w-[80vw] md:w-[85vw] xl:w-[70vw] -translate-x-1/2 -translate-y-1/2 dark:border-neutral-700 dark:bg-neutral-800 sm:p-6`},{default:y(()=>[W.value?(m(),l(`div`,ie,[s(`div`,ae,[s(`div`,oe,[s(`div`,null,[s(`div`,se,[d(v(t),{"text-2xl":``,"font-normal":``,class:`from-primary-500 to-primary-400 bg-gradient-to-r bg-clip-text text-transparent`},{default:y(()=>[u(_(W.value.name),1)]),_:1}),q.value?(m(),l(`div`,ce,[f[3]||=s(`div`,{"i-solar:check-circle-bold-duotone":``,"text-xs":``},null,-1),u(` `+_(v(V)(`settings.pages.card.active_badge`)),1)])):c(``,!0)]),s(`div`,le,[u(` v`+_(W.value.version)+` `,1),W.value.creator?(m(),l(a,{key:0},[u(` · `+_(v(V)(`settings.pages.card.created_by`))+` `,1),s(`span`,ue,_(W.value.creator),1)],64)):c(``,!0)])]),s(`div`,de,[d(v(ee),{variant:`primary`,icon:q.value?`i-solar:check-circle-bold-duotone`:`i-solar:play-circle-broken`,label:q.value?v(V)(`settings.pages.card.active`):v(V)(`settings.pages.card.activate`),disabled:q.value,class:p({"animate-pulse":J.value}),onClick:Se},null,8,[`icon`,`label`,`disabled`,`class`])])]),s(`div`,fe,[s(`div`,pe,[s(`div`,me,[(m(!0),l(a,null,g(Q.value,e=>(m(),l(`button`,{key:e.id,class:p([`px-4 py-2 text-sm font-medium`,[$.value===e.id?`text-primary-600 dark:text-primary-400 border-b-2 border-primary-500 dark:border-primary-400`:`text-neutral-500 dark:text-neutral-400 hover:text-neutral-700 dark:hover:text-neutral-300`]]),onClick:t=>$.value=e.id},[s(`div`,ge,[s(`div`,{class:p(e.icon)},null,2),u(` `+_(e.label),1)])],10,he))),128))])])]),$.value===`notes`&&W.value.notes?(m(),l(`div`,x,[s(`div`,{bg:`white/60 dark:black/30`,border:`~ neutral-200/50 dark:neutral-700/30`,"max-h-60":``,"overflow-auto":``,"whitespace-pre-line":``,"rounded-lg":``,"p-4":``,"text-neutral-700":``,"sm:max-h-80":``,"dark:text-neutral-300":``,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`,innerHTML:Y(W.value.notes)},null,8,S)])):c(``,!0),$.value===`description`&&W.value.description?(m(),l(`div`,C,[s(`div`,{bg:`white/60 dark:black/30`,"max-h-60":``,"overflow-auto":``,"whitespace-pre-line":``,"rounded-lg":``,"p-4":``,"sm:max-h-80":``,text:`neutral-600 dark:neutral-300`,border:`~ neutral-200/50 dark:neutral-700/30`,innerHTML:Y(W.value.description)},null,8,w)])):c(``,!0),$.value===`character`&&Object.values(K.value).some(e=>!!e)?(m(),l(`div`,T,[s(`div`,E,[(m(!0),l(a,null,g(K.value,(e,t)=>(m(),l(a,{key:t},[e?(m(),l(`div`,D,[s(`h2`,O,_(v(V)(`settings.pages.card.${t.toLowerCase()}`)),1),s(`div`,{bg:`white/60 dark:black/30`,border:`~ neutral-200/50 dark:neutral-700/30`,transition:`all duration-200`,hover:`bg-white/80 dark:bg-black/40`,"max-h-none":``,"overflow-auto":``,"whitespace-pre-line":``,"rounded-lg":``,"p-3":``,"text-neutral-700":``,"dark:text-neutral-300":``,innerHTML:Y(e)},null,8,k)])):c(``,!0)],64))),128))])])):c(``,!0),$.value===`modules`?(m(),l(`div`,A,[s(`div`,j,[s(`div`,M,[s(`span`,N,[f[4]||=s(`div`,{"i-lucide:ghost":``},null,-1),u(` `+_(v(V)(`settings.pages.card.consciousness.model`)),1)]),s(`div`,P,_(G.value.consciousness??`default`),1)]),s(`div`,F,[s(`span`,I,[f[5]||=s(`div`,{"i-lucide:mic":``},null,-1),u(` `+_(v(V)(`settings.pages.card.speech.model`)),1)]),s(`div`,L,_(G.value.speech??`default`),1)]),s(`div`,_e,[s(`span`,ve,[f[6]||=s(`div`,{"i-lucide:music":``},null,-1),u(` `+_(v(V)(`settings.pages.card.speech.voice`)),1)]),s(`div`,ye,_(G.value.voice??`default`),1)])])])):c(``,!0)])])):(m(),l(`div`,be,[f[7]||=s(`div`,{"i-solar:card-search-broken":``,"mx-auto":``,"mb-3":``,"text-6xl":``,"text-neutral-400":``},null,-1),u(` `+_(v(V)(`settings.pages.card.card_not_found`)),1)]))]),_:1})]),_:1})]),_:1},8,[`open`]),d(b,{modelValue:X.value,"onUpdate:modelValue":f[1]||=e=>X.value=e,"card-name":(h=W.value)?.name,onConfirm:Ce,onCancel:f[2]||=e=>X.value=!1},null,8,[`modelValue`,`card-name`])],64)}}}),z=R;export{z as CardDetailDialog_default}; \ No newline at end of file diff --git a/assets/CardListItem-DVQOs9x9.js b/assets/CardListItem-DVQOs9x9.js deleted file mode 100644 index 50b91b3e3c16089f66b4dea631830615e39a8dc8..0000000000000000000000000000000000000000 --- a/assets/CardListItem-DVQOs9x9.js +++ /dev/null @@ -1 +0,0 @@ -import{CursorFloating_default as e,createBaseVNode as t,createBlock as n,createCommentVNode as r,createElementBlock as i,defineComponent as a,normalizeClass as o,openBlock as s,toDisplayString as c,unref as l,withCtx as u,withModifiers as d}from"./index-iQVr9nx1.js";const f={relative:``,flex:`~ col 1`,"justify-between":``,"gap-3":``,"overflow-hidden":``,"rounded-lg":``,bg:`white dark:neutral-900`,"p-5":``,transition:`all ease-in-out duration-400`,after:`content-empty absolute inset-0 z--2 w-full h-full bg-dotted-[neutral-200/80] bg-size-10px mask-image-[linear-gradient(165deg,white_30%,transparent_50%)] transition-all duration-400 ease-in-out`,hover:`after:bg-dotted-[primary-300/50] dark:after:bg-dotted-[primary-200/20] text-primary-600/80 dark:text-primary-300/80`},p={"z-1":``,flex:``,"items-start":``,"justify-between":``,"gap-2":``},m={"flex-1":``,truncate:``,"text-lg":``,"font-normal":``},h={key:0,"shrink-0":``,"rounded-md":``,"p-1":``,bg:`primary-100 dark:primary-900/40`,text:`primary-600 dark:primary-400`},g={key:0,"line-clamp-3":``,"min-h-40px":``,"flex-1":``,"text-sm":``,text:`neutral-500 dark:neutral-400`},_={"z-1":``,flex:``,"items-center":``,"justify-between":``,"text-xs":``,text:`neutral-500 dark:neutral-400`},v={flex:``,"items-center":``,"gap-1.5":``},y={flex:``,"items-center":``,"gap-0.5":``},b={flex:``,"items-center":``,"gap-0.5":``},x={flex:``,"items-center":``,"justify-end":``,"px-2":``,"py-1.5":``},S=[`disabled`];var C=a({__name:`CardListItem`,props:{id:{},name:{},description:{},isActive:{type:Boolean},isSelected:{type:Boolean},version:{},consciousnessModel:{},voiceModel:{}},emits:[`select`,`activate`,`delete`],setup(a,{emit:C}){let w=C;return(a,C)=>(s(),n(l(e),{relative:``,"min-h-120px":``,flex:`~ col`,"cursor-pointer":``,"overflow-hidden":``,"rounded-xl":``,class:o([a.isSelected?`border-2 border-primary-400 dark:border-primary-600`:`border-2 border-neutral-100 dark:border-neutral-800/25`]),bg:`neutral-200/50 dark:neutral-800/50`,"drop-shadow":`none hover:[0px_4px_4px_rgba(220,220,220,0.4)] active:[0px_0px_0px_rgba(220,220,220,0.25)] dark:hover:none`,transition:`all ease-in-out duration-400`,before:`content-empty absolute inset-0 z-0 w-25% h-full transition-all duration-400 ease-in-out bg-gradient-to-r from-primary-500/0 to-primary-500/0 dark:from-primary-400/0 dark:to-primary-400/0 mask-image-[linear-gradient(120deg,white_100%)] opacity-0`,hover:`before:opacity-100 before:bg-gradient-to-r before:from-primary-500/20 before:via-primary-500/10 before:to-transparent before:dark:from-primary-400/20 before:dark:via-primary-400/10 before:dark:to-transparent`,onClick:C[2]||=e=>w(`select`)},{default:u(()=>[t(`div`,f,[t(`div`,p,[t(`h3`,m,c(a.name),1),a.isActive?(s(),i(`div`,h,C[3]||=[t(`div`,{"i-solar:check-circle-bold-duotone":``,"text-sm":``},null,-1)])):r(``,!0)]),a.description?(s(),i(`p`,g,c(a.description),1)):r(``,!0),t(`div`,_,[t(`div`,null,`v`+c(a.version),1),t(`div`,v,[t(`div`,y,[C[4]||=t(`div`,{"i-lucide:ghost":``,"text-xs":``},null,-1),t(`span`,null,c(a.consciousnessModel),1)]),t(`div`,b,[C[5]||=t(`div`,{"i-lucide:mic":``,"text-xs":``},null,-1),t(`span`,null,c(a.voiceModel),1)])])])]),t(`div`,x,[t(`button`,{"rounded-lg":``,"p-1.5":``,"transition-colors":``,hover:`bg-neutral-200 dark:bg-neutral-700/50`,disabled:a.isActive,onClick:C[0]||=d(e=>w(`activate`),[`stop`])},[t(`div`,{class:o([a.isActive?`i-solar:check-circle-bold-duotone text-primary-500 dark:text-primary-400`:`i-solar:play-circle-broken text-neutral-500 dark:text-neutral-400`])},null,2)],8,S),a.id===`default`?r(``,!0):(s(),i(`button`,{key:0,"rounded-lg":``,"p-1.5":``,"transition-colors":``,hover:`bg-neutral-200 dark:bg-neutral-700/50`,onClick:C[1]||=d(e=>w(`delete`),[`stop`])},C[6]||=[t(`div`,{"i-solar:trash-bin-trash-linear":``,text:`neutral-500 dark:neutral-400`},null,-1)]))])]),_:1},8,[`class`]))}}),w=C;export{w as CardListItem_default}; \ No newline at end of file diff --git a/assets/CardListItem-DZ5x2i0z.js b/assets/CardListItem-DZ5x2i0z.js deleted file mode 100644 index f6509dbfbf51bc80ab77172f4d3578a30defcddc..0000000000000000000000000000000000000000 --- a/assets/CardListItem-DZ5x2i0z.js +++ /dev/null @@ -1 +0,0 @@ -import{CardListItem_default as e}from"./CardListItem-DVQOs9x9.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardListItem-LYi2jKJc.js b/assets/CardListItem-LYi2jKJc.js new file mode 100644 index 0000000000000000000000000000000000000000..050dc03b779937e1642d3c4bc79f105d55644fb3 --- /dev/null +++ b/assets/CardListItem-LYi2jKJc.js @@ -0,0 +1 @@ +import{b as e}from"./CardListItem-noXJhtke.js";export{e as default}; \ No newline at end of file diff --git a/assets/CardListItem-noXJhtke.js b/assets/CardListItem-noXJhtke.js new file mode 100644 index 0000000000000000000000000000000000000000..3f7ca2afc5fb43d0c1802d9951e41a4312044de0 --- /dev/null +++ b/assets/CardListItem-noXJhtke.js @@ -0,0 +1 @@ +import{T as e,c$ as t,d7 as n,d9 as r,dH as i,dV as a,da as o,db as s,dj as c,dn as l,e1 as u,e2 as d}from"./index-C9kcCpP-.js";const f={relative:``,flex:`~ col 1`,"justify-between":``,"gap-3":``,"overflow-hidden":``,"rounded-lg":``,bg:`white dark:neutral-900`,"p-5":``,transition:`all ease-in-out duration-400`,after:`content-empty absolute inset-0 z--2 w-full h-full bg-dotted-[neutral-200/80] bg-size-10px mask-image-[linear-gradient(165deg,white_30%,transparent_50%)] transition-all duration-400 ease-in-out`,hover:`after:bg-dotted-[primary-300/50] dark:after:bg-dotted-[primary-200/20] text-primary-600/80 dark:text-primary-300/80`},p={"z-1":``,flex:``,"items-start":``,"justify-between":``,"gap-2":``},m={"flex-1":``,truncate:``,"text-lg":``,"font-normal":``},h={key:0,"shrink-0":``,"rounded-md":``,"p-1":``,bg:`primary-100 dark:primary-900/40`,text:`primary-600 dark:primary-400`},g={key:0,"line-clamp-3":``,"min-h-40px":``,"flex-1":``,"text-sm":``,text:`neutral-500 dark:neutral-400`},_={"z-1":``,flex:``,"items-center":``,"justify-between":``,"text-xs":``,text:`neutral-500 dark:neutral-400`},v={flex:``,"items-center":``,"gap-1.5":``},y={flex:``,"items-center":``,"gap-0.5":``},b={flex:``,"items-center":``,"gap-0.5":``},x={flex:``,"items-center":``,"justify-end":``,"px-2":``,"py-1.5":``},S=[`disabled`];var C=n({__name:`CardListItem`,props:{id:{},name:{},description:{},isActive:{type:Boolean},isSelected:{type:Boolean},version:{},consciousnessModel:{},voiceModel:{}},emits:[`select`,`activate`,`delete`],setup(n,{emit:C}){let w=C;return(n,C)=>(i(),l(a(e),{relative:``,"min-h-120px":``,flex:`~ col`,"cursor-pointer":``,"overflow-hidden":``,"rounded-xl":``,class:d([n.isSelected?`border-2 border-primary-400 dark:border-primary-600`:`border-2 border-neutral-100 dark:border-neutral-800/25`]),bg:`neutral-200/50 dark:neutral-800/50`,"drop-shadow":`none hover:[0px_4px_4px_rgba(220,220,220,0.4)] active:[0px_0px_0px_rgba(220,220,220,0.25)] dark:hover:none`,transition:`all ease-in-out duration-400`,before:`content-empty absolute inset-0 z-0 w-25% h-full transition-all duration-400 ease-in-out bg-gradient-to-r from-primary-500/0 to-primary-500/0 dark:from-primary-400/0 dark:to-primary-400/0 mask-image-[linear-gradient(120deg,white_100%)] opacity-0`,hover:`before:opacity-100 before:bg-gradient-to-r before:from-primary-500/20 before:via-primary-500/10 before:to-transparent before:dark:from-primary-400/20 before:dark:via-primary-400/10 before:dark:to-transparent`,onClick:C[2]||=e=>w(`select`)},{default:o(()=>[c(`div`,f,[c(`div`,p,[c(`h3`,m,u(n.name),1),n.isActive?(i(),s(`div`,h,C[3]||=[c(`div`,{"i-solar:check-circle-bold-duotone":``,"text-sm":``},null,-1)])):r(``,!0)]),n.description?(i(),s(`p`,g,u(n.description),1)):r(``,!0),c(`div`,_,[c(`div`,null,`v`+u(n.version),1),c(`div`,v,[c(`div`,y,[C[4]||=c(`div`,{"i-lucide:ghost":``,"text-xs":``},null,-1),c(`span`,null,u(n.consciousnessModel),1)]),c(`div`,b,[C[5]||=c(`div`,{"i-lucide:mic":``,"text-xs":``},null,-1),c(`span`,null,u(n.voiceModel),1)])])])]),c(`div`,x,[c(`button`,{"rounded-lg":``,"p-1.5":``,"transition-colors":``,hover:`bg-neutral-200 dark:bg-neutral-700/50`,disabled:n.isActive,onClick:C[0]||=t(e=>w(`activate`),[`stop`])},[c(`div`,{class:d([n.isActive?`i-solar:check-circle-bold-duotone text-primary-500 dark:text-primary-400`:`i-solar:play-circle-broken text-neutral-500 dark:text-neutral-400`])},null,2)],8,S),n.id===`default`?r(``,!0):(i(),s(`button`,{key:0,"rounded-lg":``,"p-1.5":``,"transition-colors":``,hover:`bg-neutral-200 dark:bg-neutral-700/50`,onClick:C[1]||=t(e=>w(`delete`),[`stop`])},C[6]||=[c(`div`,{"i-solar:trash-bin-trash-linear":``,text:`neutral-500 dark:neutral-400`},null,-1)]))])]),_:1},8,[`class`]))}}),w=C;export{w as b}; \ No newline at end of file diff --git a/assets/ColorPalette-BSzUrihr.js b/assets/ColorPalette-BSzUrihr.js new file mode 100644 index 0000000000000000000000000000000000000000..557d6271b5a8e01442a938693f69753e338e1611 --- /dev/null +++ b/assets/ColorPalette-BSzUrihr.js @@ -0,0 +1 @@ +import{h as e,i as t,l as n,q as r,r as i,t as a}from"./dist-NaQNo8Nw.js";import{c as o,d as s,d7 as c,d9 as l,dB as u,dH as d,dI as f,dV as p,da as m,db as h,dl as g,dn as _,du as v,e1 as y,e2 as b,e3 as x}from"./index-C9kcCpP-.js";const S={key:0,flex:``,"gap-2":``};var C=c({__name:`ColorPalette`,props:{colors:{}},setup(c){let C=s();return(s,c)=>s.colors.length?(d(),h(`div`,S,[(d(!0),h(v,null,g(s.colors,({hex:s,name:c})=>(d(),_(p(a),{key:s||`default`},{default:m(()=>[u(p(i),null,{default:m(()=>[u(p(e),{transition:`all ease-in-out duration-250`,"size-6":``,"cursor-pointer":``,"rounded-full":``,"bg-primary-500":``,style:x(s?{background:s}:{"--chromatic-hue":p(o)}),class:b(p(C).isColorSelectedForPrimary(s)?`scale-150 mx-1`:`hover:scale-110`),onClick:e=>p(C).applyPrimaryColorFrom(s)},null,8,[`style`,`class`,`onClick`]),u(p(r),null,{default:m(()=>[u(p(t),{bg:`white dark:neutral-800`,"rounded-lg":``,"px-3":``,"py-1.5":``,"text-sm":``,"shadow-md":``},{default:m(()=>[f(y(c)+` `,1),u(p(n),{"fill-white":``,"dark:fill-neutral-800":``})]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))])):l(``,!0)}}),w=C;export{w as b}; \ No newline at end of file diff --git a/assets/ColorPalette-vg8v3B0o.js b/assets/ColorPalette-vg8v3B0o.js deleted file mode 100644 index ed15da822133d54a3838d28d7206acf1ea75f49a..0000000000000000000000000000000000000000 --- a/assets/ColorPalette-vg8v3B0o.js +++ /dev/null @@ -1 +0,0 @@ -import{Gg as e,Hg as t,Ug as n,Wg as r,jg as i,qg as a}from"./dist-GvbkCCcT.js";import{DEFAULT_THEME_COLORS_HUE as o,Fragment as s,createBlock as c,createCommentVNode as l,createElementBlock as u,createTextVNode as d,createVNode as f,defineComponent as p,normalizeClass as m,normalizeStyle as h,openBlock as g,renderList as _,toDisplayString as v,unref as y,useSettings as b,withCtx as x}from"./index-iQVr9nx1.js";const S={key:0,flex:``,"gap-2":``};var C=p({__name:`ColorPalette`,props:{colors:{}},setup(p){let C=b();return(p,b)=>p.colors.length?(g(),u(`div`,S,[(g(!0),u(s,null,_(p.colors,({hex:s,name:l})=>(g(),c(y(t),{key:s||`default`},{default:x(()=>[f(y(r),null,{default:x(()=>[f(y(i),{transition:`all ease-in-out duration-250`,"size-6":``,"cursor-pointer":``,"rounded-full":``,"bg-primary-500":``,style:h(s?{background:s}:{"--chromatic-hue":y(o)}),class:m(y(C).isColorSelectedForPrimary(s)?`scale-150 mx-1`:`hover:scale-110`),onClick:e=>y(C).applyPrimaryColorFrom(s)},null,8,[`style`,`class`,`onClick`]),f(y(a),null,{default:x(()=>[f(y(n),{bg:`white dark:neutral-800`,"rounded-lg":``,"px-3":``,"py-1.5":``,"text-sm":``,"shadow-md":``},{default:x(()=>[d(v(l)+` `,1),f(y(e),{"fill-white":``,"dark:fill-neutral-800":``})]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))])):l(``,!0)}}),w=C;export{w as ColorPalette_default}; \ No newline at end of file diff --git a/assets/DeleteCardDialog-BSO29tu_.js b/assets/DeleteCardDialog-BSO29tu_.js new file mode 100644 index 0000000000000000000000000000000000000000..aa0037a31d059aaa8959d6d62d98dbf2fb34344e --- /dev/null +++ b/assets/DeleteCardDialog-BSO29tu_.js @@ -0,0 +1 @@ +import{d as e,e as t,f as n,g as r,k as i,n as a,p as o,s}from"./dist-NaQNo8Nw.js";import{Q as c,W as l,d7 as u,dB as d,dH as f,dI as p,dV as m,da as h,dj as g,dn as _,e1 as v}from"./index-C9kcCpP-.js";const y={class:`flex flex-row justify-end gap-3`};var b=u({__name:`DeleteCardDialog`,props:{modelValue:{type:Boolean},cardName:{}},emits:[`update:modelValue`,`confirm`,`cancel`],setup(u,{emit:b}){let x=b,{t:S}=c();function C(){x(`update:modelValue`,!1),x(`cancel`)}function w(){x(`update:modelValue`,!1),x(`confirm`)}return(c,u)=>(f(),_(m(e),{open:c.modelValue,"onUpdate:open":u[0]||=e=>x(`update:modelValue`,e)},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(s),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-100 bg-black/50`}),d(m(a),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-100 max-w-md w-full border border-neutral-200 rounded-xl bg-white p-6 shadow-xl -translate-x-1/2 -translate-y-1/2 dark:border-neutral-700 dark:bg-neutral-800`},{default:h(()=>[d(m(n),{class:`mb-4 text-xl font-normal`},{default:h(()=>[p(v(m(S)(`settings.pages.card.delete_card`)),1)]),_:1}),d(m(i),{class:`mb-6`},{default:h(()=>[p(v(m(S)(`settings.pages.card.delete_confirmation`))+` `,1),g(`b`,null,`"`+v(c.cardName||``)+`"`,1)]),_:1}),g(`div`,y,[d(m(r),{"as-child":``},{default:h(()=>[d(m(l),{variant:`secondary`,label:m(S)(`settings.pages.card.cancel`),onClick:C},null,8,[`label`])]),_:1}),d(m(o),{"as-child":``},{default:h(()=>[d(m(l),{variant:`danger`,label:m(S)(`settings.pages.card.delete`),onClick:w},null,8,[`label`])]),_:1})])]),_:1})]),_:1})]),_:1},8,[`open`]))}}),x=b;export{x as b}; \ No newline at end of file diff --git a/assets/DeleteCardDialog-BTqL0RX4.js b/assets/DeleteCardDialog-BTqL0RX4.js deleted file mode 100644 index 9361a7de0622c3a39b7cf8f7c76fbd2279ea0dc1..0000000000000000000000000000000000000000 --- a/assets/DeleteCardDialog-BTqL0RX4.js +++ /dev/null @@ -1 +0,0 @@ -import{Av as e,Fv as t,Mv as n,Nv as r,Ov as i,Tv as a,Vv as o,kv as s}from"./dist-GvbkCCcT.js";import{Button_default as c,createBaseVNode as l,createBlock as u,createTextVNode as d,createVNode as f,defineComponent as p,openBlock as m,toDisplayString as h,unref as g,useI18n as _,withCtx as v}from"./index-iQVr9nx1.js";const y={class:`flex flex-row justify-end gap-3`};var b=p({__name:`DeleteCardDialog`,props:{modelValue:{type:Boolean},cardName:{}},emits:[`update:modelValue`,`confirm`,`cancel`],setup(p,{emit:b}){let x=b,{t:S}=_();function C(){x(`update:modelValue`,!1),x(`cancel`)}function w(){x(`update:modelValue`,!1),x(`confirm`)}return(p,_)=>(m(),u(g(a),{open:p.modelValue,"onUpdate:open":_[0]||=e=>x(`update:modelValue`,e)},{default:v(()=>[f(g(e),null,{default:v(()=>[f(g(s),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-100 bg-black/50`}),f(g(i),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-100 max-w-md w-full border border-neutral-200 rounded-xl bg-white p-6 shadow-xl -translate-x-1/2 -translate-y-1/2 dark:border-neutral-700 dark:bg-neutral-800`},{default:v(()=>[f(g(o),{class:`mb-4 text-xl font-normal`},{default:v(()=>[d(h(g(S)(`settings.pages.card.delete_card`)),1)]),_:1}),f(g(t),{class:`mb-6`},{default:v(()=>[d(h(g(S)(`settings.pages.card.delete_confirmation`))+` `,1),l(`b`,null,`"`+h(p.cardName||``)+`"`,1)]),_:1}),l(`div`,y,[f(g(n),{"as-child":``},{default:v(()=>[f(g(c),{variant:`secondary`,label:g(S)(`settings.pages.card.cancel`),onClick:C},null,8,[`label`])]),_:1}),f(g(r),{"as-child":``},{default:v(()=>[f(g(c),{variant:`danger`,label:g(S)(`settings.pages.card.delete`),onClick:w},null,8,[`label`])]),_:1})])]),_:1})]),_:1})]),_:1},8,[`open`]))}}),x=b;export{x as DeleteCardDialog_default}; \ No newline at end of file diff --git a/assets/DeleteCardDialog-CJNH2uKY.js b/assets/DeleteCardDialog-CJNH2uKY.js deleted file mode 100644 index 3ebb31c1041ce35f76b015ad730179976d367544..0000000000000000000000000000000000000000 --- a/assets/DeleteCardDialog-CJNH2uKY.js +++ /dev/null @@ -1 +0,0 @@ -import"./dist-GvbkCCcT.js";import{DeleteCardDialog_default as e}from"./DeleteCardDialog-BTqL0RX4.js";export{e as default}; \ No newline at end of file diff --git a/assets/DeleteCardDialog-CmNQfJAN.js b/assets/DeleteCardDialog-CmNQfJAN.js new file mode 100644 index 0000000000000000000000000000000000000000..a9bf807bdf99eedaf58318f8fb595881056bb8db --- /dev/null +++ b/assets/DeleteCardDialog-CmNQfJAN.js @@ -0,0 +1 @@ +import"./dist-NaQNo8Nw.js";import{b as e}from"./DeleteCardDialog-BSO29tu_.js";export{e as default}; \ No newline at end of file diff --git a/assets/HeaderLink-DjJ0Gw-G.js b/assets/HeaderLink-DjJ0Gw-G.js deleted file mode 100644 index 2a632307faa85f774168b024bf0ecfbe94cd653c..0000000000000000000000000000000000000000 --- a/assets/HeaderLink-DjJ0Gw-G.js +++ /dev/null @@ -1 +0,0 @@ -import{RouterLink as e,__plugin_vue_export_helper_default as t,createBaseVNode as n,createBlock as r,createElementBlock as i,defineComponent as a,openBlock as o,unref as s,useDark as c,withCtx as l}from"./index-iQVr9nx1.js";var u=`/assets/logo-dark-B0bvNYTh.svg`,d=`/assets/logo-B2aCU-bH.svg`;const f=[`src`],p=[`src`];var m=a({__name:`HeaderLink`,setup(t){let a=c();return(t,c)=>(o(),r(s(e),{to:`/`,flex:`~`,"items-center":``,"gap-2":``,"px-2":``,"text-nowrap":``,"text-2xl":``,"outline-none":``},{default:l(()=>[s(a)?(o(),i(`img`,{key:0,src:s(u),"h-8":``,"w-8":``,class:`theme-colored`},null,8,f)):(o(),i(`img`,{key:1,src:s(d),"h-8":``,"w-8":``,class:`theme-colored`},null,8,p)),c[0]||=n(`div`,{"translate-y":`[2px]`,"font-semibold":``,"font-quicksand":``},[n(`span`,null,`AIRI`)],-1)]),_:1,__:[0]}))}}),h=t(m,[[`__scopeId`,`data-v-2542c9d9`]]);export{h as HeaderLink_default}; \ No newline at end of file diff --git a/assets/HeaderLink-xWxD2Zu3.js b/assets/HeaderLink-xWxD2Zu3.js new file mode 100644 index 0000000000000000000000000000000000000000..583cbb45569e7f113023c0381d3b99028953a1b4 --- /dev/null +++ b/assets/HeaderLink-xWxD2Zu3.js @@ -0,0 +1 @@ +import{aC as e,aG as t,aS as n,d7 as r,dH as i,dV as a,da as o,db as s,dj as c,dn as l}from"./index-C9kcCpP-.js";var u=`/assets/logo-dark-B0bvNYTh.svg`,d=`/assets/logo-B2aCU-bH.svg`;const f=[`src`],p=[`src`];var m=r({__name:`HeaderLink`,setup(e){let r=n();return(e,n)=>(i(),l(a(t),{to:`/`,flex:`~`,"items-center":``,"gap-2":``,"px-2":``,"text-nowrap":``,"text-2xl":``,"outline-none":``},{default:o(()=>[a(r)?(i(),s(`img`,{key:0,src:a(u),"h-8":``,"w-8":``,class:`theme-colored`},null,8,f)):(i(),s(`img`,{key:1,src:a(d),"h-8":``,"w-8":``,class:`theme-colored`},null,8,p)),n[0]||=c(`div`,{"translate-y":`[2px]`,"font-semibold":``,"font-quicksand":``},[c(`span`,null,`AIRI`)],-1)]),_:1,__:[0]}))}}),h=e(m,[[`__scopeId`,`data-v-2542c9d9`]]);export{h as b}; \ No newline at end of file diff --git a/assets/IconAnimation-CvK4BRGS.js b/assets/IconAnimation-CvK4BRGS.js new file mode 100644 index 0000000000000000000000000000000000000000..419694af72ef64bfffe0903f603bd6b58c89fe79 --- /dev/null +++ b/assets/IconAnimation-CvK4BRGS.js @@ -0,0 +1 @@ +import{d7 as e,dF as t,dH as n,dK as r,db as i,dj as a,dv as o,e2 as s,e3 as c}from"./index-C9kcCpP-.js";var l=e({__name:`IconAnimation`,props:{icon:{},iconSize:{},position:{},duration:{},started:{type:Boolean},textColor:{},isReverse:{type:Boolean},zIndex:{}},emits:[`animationEnded`],setup(e,{emit:l}){let u=e,d=l,f=r(!1);t(()=>u.started,e=>{e&&requestAnimationFrame(()=>{f.value=!0})});let p=o(()=>({opacity:f.value===u.isReverse?0:1,size:f.value===u.isReverse?u.iconSize:25,position:f.value===u.isReverse?u.position:`calc(50dvw - 12.5rem), calc(50dvh - 12.5rem)`,textColor:f.value===u.isReverse?u.textColor:`text-white`})),m=r([]),h=r(!1);function g(e){m.value.push(e.propertyName),m.value.includes(`color`)&&m.value.includes(`width`)&&m.value.includes(`height`)&&m.value.includes(`transform`)&&(h.value=!0,d(`animationEnded`))}return(e,t)=>(n(),i(`div`,{"pointer-events-none":``,fixed:``,w:`100dvw`,h:`100dvh`,style:c({zIndex:h.value?e.zIndex:void 0})},[a(`div`,{fixed:``,"inset-0":``,"bg-primary-500":``,"transition-opacity":``,"ease-linear":``,style:c({opacity:p.value.opacity,transitionDuration:`${e.duration}ms`})},null,4),a(`div`,{fixed:``,"inset-0":``,"ease-in-out":``,style:c({width:`${p.value.size}rem`,height:`${p.value.size}rem`,transform:`translate(${p.value.position})`,transitionDuration:`${e.duration}ms`}),class:s([p.value.textColor,u.icon,{"transition-all":f.value}]),onTransitionend:g},null,38)],4))}}),u=l;export{u as b}; \ No newline at end of file diff --git a/assets/IconAnimation-Ddiua4ZD.js b/assets/IconAnimation-Ddiua4ZD.js deleted file mode 100644 index 8b83237547c42a0f1c0ad82e0a2d7c88fa3b7dee..0000000000000000000000000000000000000000 --- a/assets/IconAnimation-Ddiua4ZD.js +++ /dev/null @@ -1 +0,0 @@ -import{computed as e,createBaseVNode as t,createElementBlock as n,defineComponent as r,normalizeClass as i,normalizeStyle as a,openBlock as o,ref as s,watch as c}from"./index-iQVr9nx1.js";var l=r({__name:`IconAnimation`,props:{icon:{},iconSize:{},position:{},duration:{},started:{type:Boolean},textColor:{},isReverse:{type:Boolean},zIndex:{}},emits:[`animationEnded`],setup(r,{emit:l}){let u=r,d=l,f=s(!1);c(()=>u.started,e=>{e&&requestAnimationFrame(()=>{f.value=!0})});let p=e(()=>({opacity:f.value===u.isReverse?0:1,size:f.value===u.isReverse?u.iconSize:25,position:f.value===u.isReverse?u.position:`calc(50dvw - 12.5rem), calc(50dvh - 12.5rem)`,textColor:f.value===u.isReverse?u.textColor:`text-white`})),m=s([]),h=s(!1);function g(e){m.value.push(e.propertyName),m.value.includes(`color`)&&m.value.includes(`width`)&&m.value.includes(`height`)&&m.value.includes(`transform`)&&(h.value=!0,d(`animationEnded`))}return(e,r)=>(o(),n(`div`,{"pointer-events-none":``,fixed:``,w:`100dvw`,h:`100dvh`,style:a({zIndex:h.value?e.zIndex:void 0})},[t(`div`,{fixed:``,"inset-0":``,"bg-primary-500":``,"transition-opacity":``,"ease-linear":``,style:a({opacity:p.value.opacity,transitionDuration:`${e.duration}ms`})},null,4),t(`div`,{fixed:``,"inset-0":``,"ease-in-out":``,style:a({width:`${p.value.size}rem`,height:`${p.value.size}rem`,transform:`translate(${p.value.position})`,transitionDuration:`${e.duration}ms`}),class:i([p.value.textColor,u.icon,{"transition-all":f.value}]),onTransitionend:g},null,38)],4))}}),u=l;export{u as IconAnimation_default}; \ No newline at end of file diff --git a/assets/InputFile-B-1kiNIu.js b/assets/InputFile-B-1kiNIu.js new file mode 100644 index 0000000000000000000000000000000000000000..c38ed9494a2ff8cbd53a0a1b95c1ba9479a55595 --- /dev/null +++ b/assets/InputFile-B-1kiNIu.js @@ -0,0 +1 @@ +import{b1 as e,d7 as t,dH as n,dK as r,dV as i,db as a,dg as o,dj as s,do as c,dp as l,e2 as u}from"./index-C9kcCpP-.js";const d=[`accept`,`multiple`],f={key:0,text:`center`,"text-sm":``},p={key:1,text:`center`,"text-sm":``};var m=t({__name:`InputFile`,props:o({accept:{},multiple:{type:Boolean}},{modelValue:{required:!1,default:()=>[]},modelModifiers:{}}),emits:[`update:modelValue`],setup(t){let o=c(t,`modelValue`),m=r(),h=r(!1),g=e(h,150);function _(e){let t=e.target;t.files&&t.files.length>0&&(m.value=t.files[0]),o.value=Array.from(t.files||[]),h.value=!1}return(e,t)=>(n(),a(`label`,{relative:``,class:u([`min-h-[120px] flex flex-col cursor-pointer items-center justify-center rounded-xl p-6`,[i(g)?`border-primary-400 dark:border-primary-600 hover:border-primary-300 dark:hover:border-primary-700`:`border-neutral-200 dark:border-neutral-700 hover:border-primary-300 dark:hover:border-primary-700`,i(g)?`bg-primary-50/5 dark:bg-primary-900/5`:`bg-white/60 dark:bg-black/30 hover:bg-white/80 dark:hover:bg-black/40`]]),border:`dashed 2`,transition:`all duration-300`,"cursor-pointer":``,"opacity-95":``,hover:`scale-100 opacity-100 shadow-md dark:shadow-lg`,onDragover:t[0]||=e=>h.value=!0,onDragleave:t[1]||=e=>h.value=!1},[s(`input`,{type:`file`,accept:e.accept,multiple:e.multiple,"cursor-pointer":``,class:`absolute inset-0 h-full w-full opacity-0`,onChange:_},null,40,d),l(e.$slots,`default`,{isDragging:i(g),firstFile:m.value,files:o.value},()=>[s(`div`,{class:u([`flex flex-col items-center`,[i(g)?`text-primary-500 dark:text-primary-400`:`text-neutral-400 dark:text-neutral-500`]])},[t[2]||=s(`div`,{"i-solar:upload-square-line-duotone":``,"mb-2":``,"text-5xl":``},null,-1),t[3]||=s(`p`,{"font-medium":``,text:`center lg`},` Upload `,-1),i(g)?(n(),a(`p`,f,` Release to upload `)):(n(),a(`p`,p,` Click or drag and drop a file here `))],2)])],34))}}),h=m;export{h as b}; \ No newline at end of file diff --git a/assets/InputFile-BJcnvuYo.js b/assets/InputFile-BJcnvuYo.js deleted file mode 100644 index 80677437a4c59884de0d9427bc257580ef319270..0000000000000000000000000000000000000000 --- a/assets/InputFile-BJcnvuYo.js +++ /dev/null @@ -1 +0,0 @@ -import{createBaseVNode as e,createElementBlock as t,defineComponent as n,mergeModels as r,normalizeClass as i,openBlock as a,ref as o,refDebounced as s,renderSlot as c,unref as l,useModel as u}from"./index-iQVr9nx1.js";const d=[`accept`,`multiple`],f={key:0,text:`center`,"text-sm":``},p={key:1,text:`center`,"text-sm":``};var m=n({__name:`InputFile`,props:r({accept:{},multiple:{type:Boolean}},{modelValue:{required:!1,default:()=>[]},modelModifiers:{}}),emits:[`update:modelValue`],setup(n){let r=u(n,`modelValue`),m=o(),h=o(!1),g=s(h,150);function _(e){let t=e.target;t.files&&t.files.length>0&&(m.value=t.files[0]),r.value=Array.from(t.files||[]),h.value=!1}return(n,o)=>(a(),t(`label`,{relative:``,class:i([`min-h-[120px] flex flex-col cursor-pointer items-center justify-center rounded-xl p-6`,[l(g)?`border-primary-400 dark:border-primary-600 hover:border-primary-300 dark:hover:border-primary-700`:`border-neutral-200 dark:border-neutral-700 hover:border-primary-300 dark:hover:border-primary-700`,l(g)?`bg-primary-50/5 dark:bg-primary-900/5`:`bg-white/60 dark:bg-black/30 hover:bg-white/80 dark:hover:bg-black/40`]]),border:`dashed 2`,transition:`all duration-300`,"cursor-pointer":``,"opacity-95":``,hover:`scale-100 opacity-100 shadow-md dark:shadow-lg`,onDragover:o[0]||=e=>h.value=!0,onDragleave:o[1]||=e=>h.value=!1},[e(`input`,{type:`file`,accept:n.accept,multiple:n.multiple,"cursor-pointer":``,class:`absolute inset-0 h-full w-full opacity-0`,onChange:_},null,40,d),c(n.$slots,`default`,{isDragging:l(g),firstFile:m.value,files:r.value},()=>[e(`div`,{class:i([`flex flex-col items-center`,[l(g)?`text-primary-500 dark:text-primary-400`:`text-neutral-400 dark:text-neutral-500`]])},[o[2]||=e(`div`,{"i-solar:upload-square-line-duotone":``,"mb-2":``,"text-5xl":``},null,-1),o[3]||=e(`p`,{"font-medium":``,text:`center lg`},` Upload `,-1),l(g)?(a(),t(`p`,f,` Release to upload `)):(a(),t(`p`,p,` Click or drag and drop a file here `))],2)])],34))}}),h=m;export{h as InputFile_default}; \ No newline at end of file diff --git a/assets/Scenes-CZT_B7Wn.js b/assets/Scenes-CZT_B7Wn.js deleted file mode 100644 index fddcafd2d911ff06828abbcf4d0c81d959f93991..0000000000000000000000000000000000000000 --- a/assets/Scenes-CZT_B7Wn.js +++ /dev/null @@ -1,3773 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/__vite-browser-external-Wa8hNVG-.js","assets/index-iQVr9nx1.js","assets/index-ChU1TNQB.css","assets/default-node-CK1wfd3F.js","assets/import-url-browser-CimRTf1_.js","assets/import-url-browser-7PcqReZq.js","assets/duckdb-mvp-D888HGlq.js","assets/import-url-node-D_b2Vrj1.js"])))=>i.map(i=>d[i]); -var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({});import{AdditiveBlending as t,AlwaysStencilFunc as n,AnimationMixer as r,Audio as i,AudioListener as a,AudioLoader as o,BackSide as s,Box2 as c,Box3 as l,BoxGeometry as u,BufferAttribute as d,BufferGeometry as f,CatmullRomCurve3 as p,ClampToEdgeWrapping as m,Collapsable_default as h,Color as g,CompressedTexture as _,CubeCamera as v,CubeReflectionMapping as y,CubeTextureLoader as b,CylinderGeometry as x,DataTexture as S,DataTextureLoader as C,DataUtils as w,DepthTexture as T,DoubleSide as E,EMOTION_EmotionMotionName_value as D,EMOTION_VRMExpressionName_value as O,EdgesGeometry as k,Ee as A,EmotionThinkMotionName as j,EquirectangularReflectionMapping as M,Euler as N,EventDispatcher as ee,ExtrudeGeometry as P,FileLoader as F,Float32BufferAttribute as I,FloatType as te,Fragment as L,FrontSide as R,Group as ne,HalfFloatType as z,InstancedBufferGeometry as re,InstancedInterleavedBuffer as ie,InstancedMesh as ae,InterleavedBuffer as oe,InterleavedBufferAttribute as se,InterpolateDiscrete as ce,InterpolateLinear as le,Ir as ue,Line as de,Line3 as fe,LineBasicMaterial as pe,LinearFilter as me,LinearMipmapLinearFilter as he,LinearMipmapNearestFilter as ge,Loader as _e,MOUSE as ve,Material as ye,MathUtils as be,Matrix3 as xe,Matrix4 as Se,Mesh as Ce,MeshBasicMaterial as we,MeshDepthMaterial as Te,MeshStandardMaterial as Ee,MirroredRepeatWrapping as De,Mn as Oe,NearestFilter as ke,NearestMipmapLinearFilter as Ae,NearestMipmapNearestFilter as je,NoToneMapping as Me,Object3D as Ne,OctahedronGeometry as Pe,OrthographicCamera as Fe,Path as Ie,PerspectiveCamera as Le,Plane as Re,PlaneGeometry as ze,PropertyBinding as Be,Q as Ve,QuadraticBezierCurve3 as He,Quaternion as Ue,REVISION as We,RGBAFormat as Ge,RawShaderMaterial as Ke,Ray as qe,Raycaster as Je,RepeatWrapping as Ye,ReplaceStencilOp as Xe,Scene as Ze,Screen_default as Qe,ShaderChunk as $e,ShaderMaterial as et,Shape as tt,ShapeGeometry as nt,ShapePath as rt,ShapeUtils as it,SkinnedMesh as at,Sphere as ot,SphereGeometry as st,Spherical as ct,TOUCH as lt,Texture as ut,TextureLoader as dt,TorusGeometry as ft,TransitionVertical_default as pt,Triangle as mt,Uniform as ht,UniformsLib as gt,UniformsUtils as _t,VRMUtils as vt,Vector2 as yt,Vector3 as B,Vector4 as bt,Vn as xt,WebGLCubeRenderTarget as St,WebGLRenderTarget as Ct,WebGLRenderer as wt,WireframeGeometry as Tt,__commonJSMin as Et,__export as Dt,__require as Ot,__toDynamicImportESM as kt,__toESM as At,__vitePreload as jt,breakpointsTailwind as Mt,clipFromVRMAnimation as Nt,computed as Pt,createBaseVNode as V,createBlock as Ft,createCommentVNode as It,createElementBlock as Lt,createVNode as Rt,defineComponent as zt,defu as Bt,dn as Vt,formatHex as Ht,generateSpeech as Ut,getCurrentInstance as Wt,getCurrentScope as Gt,io as Kt,isReactive as qt,isRef as Jt,lerp as Yt,llmInferenceEndToken as Xt,loadVRMAnimation as Zt,loadVrm as Qt,mergeProps as $t,nextTick as en,normalizeClass as tn,normalizeStyle as nn,onBeforeUnmount as rn,onMounted as an,onScopeDispose as on,onUnmounted as sn,openBlock as H,pe as cn,randFloat as ln,randomSaccadeInterval as un,reactive as dn,ref as U,render as fn,renderList as pn,renderSlot as mn,shallowReactive as hn,shallowRef as W,so as gn,storeToRefs as _n,toDisplayString as vn,toRaw as yn,toRef as bn,toRefs as xn,toValue as Sn,unref as G,useAttrs as Cn,useAudioContext as wn,useBlink as Tn,useBreakpoints as En,useChatStore as Dn,useDark as On,useDebounceFn as kn,useDelayMessageQueue as An,useEmotionsMessageQueue as jn,useI18n as Mn,useIdleEyeSaccades as Nn,useMessageContentQueue as Pn,useProvidersStore as Fn,useQueue as In,useSettings as Ln,useSlots as Rn,useSpeakingStore as zn,useSpeechStore as Bn,useVRMEmote as Vn,vModelCheckbox as Hn,watch as K,watchDebounced as Un,watchEffect as Wn,withAsyncContext as Gn,withCtx as Kn,withDirectives as qn}from"./index-iQVr9nx1.js";import{getImportUrlBundles as Jn}from"./import-url-browser-7PcqReZq.js";var Yn,Xn,Zn,Qn,$n,er,tr,nr,rr,ir,ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,Lr,Rr,zr,Br,Vr,Hr,Ur,Wr,Gr,Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi,hi,gi,_i,vi,yi,bi,xi,Si,Ci,wi,Ti,Ei,Di,Oi,ki,Ai,ji,Mi,Ni,Pi,Fi;let Ii,Li,Ri,zi;var Bi=zt({__name:`Range`,props:{modelValue:{},min:{default:0},max:{default:100},step:{default:1},disabled:{type:Boolean,default:!1}},emits:[`update:modelValue`,`mousedown`],setup(e,{emit:t}){let n=e,r=t,i=U(null);function a(e,t,n){return Math.min(Math.max(e,t),n)}function o(e){let t=e.toString();if(t.includes(`e-`))return Number.parseInt(t.split(`e-`)[1],10);let n=t.includes(`.`)?t.split(`.`)[1].length:0;return n}function s(e,t){let n=o(t),r=10**(n+3);return Number.parseFloat((e*r/r).toFixed(n))}let c=Pt(()=>s(a(n.modelValue,n.min,n.max),n.step)),l=Pt(()=>{let e=(c.value-n.min)/(n.max-n.min)*100;return{width:`${e}%`,backgroundSize:`${e}% 100%`}});function u(e){if(!i.value)return c.value;let t=i.value.getBoundingClientRect(),r=e.clientX-t.left,a=r/t.width,o=n.max-n.min,s=n.min+o*a,l=Math.round(s/n.step)*n.step;return Math.min(Math.max(l,n.min),n.max)}function d(e){if(n.disabled)return;let t=u(e);r(`update:modelValue`,t)}function f(e){if(n.disabled)return;e.preventDefault();let t=u(e);r(`update:modelValue`,t),window.addEventListener(`mousemove`,d),window.addEventListener(`mouseup`,p)}function p(e){window.removeEventListener(`mousemove`,d),window.removeEventListener(`mouseup`,p)}return sn(()=>{window.removeEventListener(`mousemove`,d),window.removeEventListener(`mouseup`,p)}),(e,t)=>(H(),Lt(`span`,{ref_key:`sliderRef`,ref:i,class:tn([`range-slider disabled:pointer-events-none disabled:cursor-default disabled:opacity-50`,{disabled:e.disabled}]),bg:`[#e6e1fc] dark:[#676085]`,"touch-action-none":``,relative:``,"inline-block":``,"w-full":``,"cursor-ew-resize":``,"rounded-sm":``,onMousedown:f},[V(`span`,{style:nn(l.value),bg:`[#cabeff] dark:[#4e34b9]`,relative:``,block:``,"rounded-sm":``,h:`[14px]`},null,4),V(`span`,{role:`slider`,class:`slider-thumb`,style:nn({left:`${(c.value-e.min)/(e.max-e.min)*100}%`}),absolute:``,"rounded-sm":``,w:`[1px]`,h:`[14px]`,bg:`neutral-100 dark:neutral-400`,top:`50%`,transform:`translate-x-[50%] translate-y-[-50%]`},null,4)],34))}}),Vi=Bi,Hi;(function(e){e[e.WEBGL_LEGACY=0]=`WEBGL_LEGACY`,e[e.WEBGL=1]=`WEBGL`,e[e.WEBGL2=2]=`WEBGL2`})(Hi||={});var Ui;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.WEBGL=1]=`WEBGL`,e[e.CANVAS=2]=`CANVAS`})(Ui||={});var Wi;(function(e){e[e.COLOR=16384]=`COLOR`,e[e.DEPTH=256]=`DEPTH`,e[e.STENCIL=1024]=`STENCIL`})(Wi||={});var Gi;(function(e){e[e.NORMAL=0]=`NORMAL`,e[e.ADD=1]=`ADD`,e[e.MULTIPLY=2]=`MULTIPLY`,e[e.SCREEN=3]=`SCREEN`,e[e.OVERLAY=4]=`OVERLAY`,e[e.DARKEN=5]=`DARKEN`,e[e.LIGHTEN=6]=`LIGHTEN`,e[e.COLOR_DODGE=7]=`COLOR_DODGE`,e[e.COLOR_BURN=8]=`COLOR_BURN`,e[e.HARD_LIGHT=9]=`HARD_LIGHT`,e[e.SOFT_LIGHT=10]=`SOFT_LIGHT`,e[e.DIFFERENCE=11]=`DIFFERENCE`,e[e.EXCLUSION=12]=`EXCLUSION`,e[e.HUE=13]=`HUE`,e[e.SATURATION=14]=`SATURATION`,e[e.COLOR=15]=`COLOR`,e[e.LUMINOSITY=16]=`LUMINOSITY`,e[e.NORMAL_NPM=17]=`NORMAL_NPM`,e[e.ADD_NPM=18]=`ADD_NPM`,e[e.SCREEN_NPM=19]=`SCREEN_NPM`,e[e.NONE=20]=`NONE`,e[e.SRC_OVER=0]=`SRC_OVER`,e[e.SRC_IN=21]=`SRC_IN`,e[e.SRC_OUT=22]=`SRC_OUT`,e[e.SRC_ATOP=23]=`SRC_ATOP`,e[e.DST_OVER=24]=`DST_OVER`,e[e.DST_IN=25]=`DST_IN`,e[e.DST_OUT=26]=`DST_OUT`,e[e.DST_ATOP=27]=`DST_ATOP`,e[e.ERASE=26]=`ERASE`,e[e.SUBTRACT=28]=`SUBTRACT`,e[e.XOR=29]=`XOR`})(Gi||={});var Ki;(function(e){e[e.POINTS=0]=`POINTS`,e[e.LINES=1]=`LINES`,e[e.LINE_LOOP=2]=`LINE_LOOP`,e[e.LINE_STRIP=3]=`LINE_STRIP`,e[e.TRIANGLES=4]=`TRIANGLES`,e[e.TRIANGLE_STRIP=5]=`TRIANGLE_STRIP`,e[e.TRIANGLE_FAN=6]=`TRIANGLE_FAN`})(Ki||={});var qi;(function(e){e[e.RGBA=6408]=`RGBA`,e[e.RGB=6407]=`RGB`,e[e.RG=33319]=`RG`,e[e.RED=6403]=`RED`,e[e.RGBA_INTEGER=36249]=`RGBA_INTEGER`,e[e.RGB_INTEGER=36248]=`RGB_INTEGER`,e[e.RG_INTEGER=33320]=`RG_INTEGER`,e[e.RED_INTEGER=36244]=`RED_INTEGER`,e[e.ALPHA=6406]=`ALPHA`,e[e.LUMINANCE=6409]=`LUMINANCE`,e[e.LUMINANCE_ALPHA=6410]=`LUMINANCE_ALPHA`,e[e.DEPTH_COMPONENT=6402]=`DEPTH_COMPONENT`,e[e.DEPTH_STENCIL=34041]=`DEPTH_STENCIL`})(qi||={});var Ji;(function(e){e[e.TEXTURE_2D=3553]=`TEXTURE_2D`,e[e.TEXTURE_CUBE_MAP=34067]=`TEXTURE_CUBE_MAP`,e[e.TEXTURE_2D_ARRAY=35866]=`TEXTURE_2D_ARRAY`,e[e.TEXTURE_CUBE_MAP_POSITIVE_X=34069]=`TEXTURE_CUBE_MAP_POSITIVE_X`,e[e.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]=`TEXTURE_CUBE_MAP_NEGATIVE_X`,e[e.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]=`TEXTURE_CUBE_MAP_POSITIVE_Y`,e[e.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]=`TEXTURE_CUBE_MAP_NEGATIVE_Y`,e[e.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]=`TEXTURE_CUBE_MAP_POSITIVE_Z`,e[e.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]=`TEXTURE_CUBE_MAP_NEGATIVE_Z`})(Ji||={});var Yi;(function(e){e[e.UNSIGNED_BYTE=5121]=`UNSIGNED_BYTE`,e[e.UNSIGNED_SHORT=5123]=`UNSIGNED_SHORT`,e[e.UNSIGNED_SHORT_5_6_5=33635]=`UNSIGNED_SHORT_5_6_5`,e[e.UNSIGNED_SHORT_4_4_4_4=32819]=`UNSIGNED_SHORT_4_4_4_4`,e[e.UNSIGNED_SHORT_5_5_5_1=32820]=`UNSIGNED_SHORT_5_5_5_1`,e[e.UNSIGNED_INT=5125]=`UNSIGNED_INT`,e[e.UNSIGNED_INT_10F_11F_11F_REV=35899]=`UNSIGNED_INT_10F_11F_11F_REV`,e[e.UNSIGNED_INT_2_10_10_10_REV=33640]=`UNSIGNED_INT_2_10_10_10_REV`,e[e.UNSIGNED_INT_24_8=34042]=`UNSIGNED_INT_24_8`,e[e.UNSIGNED_INT_5_9_9_9_REV=35902]=`UNSIGNED_INT_5_9_9_9_REV`,e[e.BYTE=5120]=`BYTE`,e[e.SHORT=5122]=`SHORT`,e[e.INT=5124]=`INT`,e[e.FLOAT=5126]=`FLOAT`,e[e.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]=`FLOAT_32_UNSIGNED_INT_24_8_REV`,e[e.HALF_FLOAT=36193]=`HALF_FLOAT`})(Yi||={});var Xi;(function(e){e[e.FLOAT=0]=`FLOAT`,e[e.INT=1]=`INT`,e[e.UINT=2]=`UINT`})(Xi||={});var Zi;(function(e){e[e.NEAREST=0]=`NEAREST`,e[e.LINEAR=1]=`LINEAR`})(Zi||={});var Qi;(function(e){e[e.CLAMP=33071]=`CLAMP`,e[e.REPEAT=10497]=`REPEAT`,e[e.MIRRORED_REPEAT=33648]=`MIRRORED_REPEAT`})(Qi||={});var $i;(function(e){e[e.OFF=0]=`OFF`,e[e.POW2=1]=`POW2`,e[e.ON=2]=`ON`,e[e.ON_MANUAL=3]=`ON_MANUAL`})($i||={});var ea;(function(e){e[e.NPM=0]=`NPM`,e[e.UNPACK=1]=`UNPACK`,e[e.PMA=2]=`PMA`,e[e.NO_PREMULTIPLIED_ALPHA=0]=`NO_PREMULTIPLIED_ALPHA`,e[e.PREMULTIPLY_ON_UPLOAD=1]=`PREMULTIPLY_ON_UPLOAD`,e[e.PREMULTIPLY_ALPHA=2]=`PREMULTIPLY_ALPHA`,e[e.PREMULTIPLIED_ALPHA=2]=`PREMULTIPLIED_ALPHA`})(ea||={});var ta;(function(e){e[e.NO=0]=`NO`,e[e.YES=1]=`YES`,e[e.AUTO=2]=`AUTO`,e[e.BLEND=0]=`BLEND`,e[e.CLEAR=1]=`CLEAR`,e[e.BLIT=2]=`BLIT`})(ta||={});var na;(function(e){e[e.AUTO=0]=`AUTO`,e[e.MANUAL=1]=`MANUAL`})(na||={});var ra;(function(e){e.LOW=`lowp`,e.MEDIUM=`mediump`,e.HIGH=`highp`})(ra||={});var ia;(function(e){e[e.NONE=0]=`NONE`,e[e.SCISSOR=1]=`SCISSOR`,e[e.STENCIL=2]=`STENCIL`,e[e.SPRITE=3]=`SPRITE`,e[e.COLOR=4]=`COLOR`})(ia||={});var aa;(function(e){e[e.RED=1]=`RED`,e[e.GREEN=2]=`GREEN`,e[e.BLUE=4]=`BLUE`,e[e.ALPHA=8]=`ALPHA`})(aa||={});var oa;(function(e){e[e.NONE=0]=`NONE`,e[e.LOW=2]=`LOW`,e[e.MEDIUM=4]=`MEDIUM`,e[e.HIGH=8]=`HIGH`})(oa||={});var sa;(function(e){e[e.ELEMENT_ARRAY_BUFFER=34963]=`ELEMENT_ARRAY_BUFFER`,e[e.ARRAY_BUFFER=34962]=`ARRAY_BUFFER`,e[e.UNIFORM_BUFFER=35345]=`UNIFORM_BUFFER`})(sa||={});var ca={createCanvas:function(e,t){var n=document.createElement(`canvas`);return n.width=e,n.height=t,n},getWebGLRenderingContext:function(){return WebGLRenderingContext},getNavigator:function(){return navigator},getBaseUrl:function(){var e;return(e=document.baseURI)??window.location.href},fetch:function(e,t){return fetch(e,t)}},la=/iPhone/i,ua=/iPod/i,da=/iPad/i,fa=/\biOS-universal(?:.+)Mac\b/i,pa=/\bAndroid(?:.+)Mobile\b/i,ma=/Android/i,ha=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,ga=/Silk/i,_a=/Windows Phone/i,va=/\bWindows(?:.+)ARM\b/i,ya=/BlackBerry/i,ba=/BB10/i,xa=/Opera Mini/i,Sa=/\b(CriOS|Chrome)(?:.+)Mobile/i,Ca=/Mobile(?:.+)Firefox\b/i,wa=function(e){return e!==void 0&&e.platform===`MacIntel`&&typeof e.maxTouchPoints==`number`&&e.maxTouchPoints>1&&typeof MSStream>`u`};function Ta(e){return function(t){return t.test(e)}}function Ea(e){var t={userAgent:``,platform:``,maxTouchPoints:0};!e&&typeof navigator<`u`?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e==`string`?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});var n=t.userAgent,r=n.split(`[FBAN`);r[1]!==void 0&&(n=r[0]),r=n.split(`Twitter`),r[1]!==void 0&&(n=r[0]);var i=Ta(n),a={apple:{phone:i(la)&&!i(_a),ipod:i(ua),tablet:!i(la)&&(i(da)||wa(t))&&!i(_a),universal:i(fa),device:(i(la)||i(ua)||i(da)||i(fa)||wa(t))&&!i(_a)},amazon:{phone:i(ha),tablet:!i(ha)&&i(ga),device:i(ha)||i(ga)},android:{phone:!i(_a)&&i(ha)||!i(_a)&&i(pa),tablet:!i(_a)&&!i(ha)&&!i(pa)&&(i(ga)||i(ma)),device:!i(_a)&&(i(ha)||i(ga)||i(pa)||i(ma))||i(/\bokhttp\b/i)},windows:{phone:i(_a),tablet:i(va),device:i(_a)||i(va)},other:{blackberry:i(ya),blackberry10:i(ba),opera:i(xa),firefox:i(Ca),chrome:i(Sa),device:i(ya)||i(ba)||i(xa)||i(Ca)||i(Sa)},any:!1,phone:!1,tablet:!1};return a.any=a.apple.device||a.android.device||a.windows.device||a.other.device,a.phone=a.apple.phone||a.android.phone||a.windows.phone,a.tablet=a.apple.tablet||a.android.tablet||a.windows.tablet,a}var Da=Ea(globalThis.navigator);function Oa(){return!Da.apple.device}function ka(e){var t=!0;if(Da.tablet||Da.phone){if(Da.apple.device){var n=navigator.userAgent.match(/OS (\d+)_(\d+)?/);if(n){var r=parseInt(n[1],10);r<11&&(t=!1)}}if(Da.android.device){var n=navigator.userAgent.match(/Android\s([0-9.]*)/);if(n){var r=parseInt(n[1],10);r<7&&(t=!1)}}}return t?e:4}var Aa={ADAPTER:ca,MIPMAP_TEXTURES:$i.POW2,ANISOTROPIC_LEVEL:0,RESOLUTION:1,FILTER_RESOLUTION:1,FILTER_MULTISAMPLE:oa.NONE,SPRITE_MAX_TEXTURES:ka(32),SPRITE_BATCH_SIZE:4096,RENDER_OPTIONS:{view:null,width:800,height:600,autoDensity:!1,backgroundColor:0,backgroundAlpha:1,useContextAlpha:!0,clearBeforeRender:!0,antialias:!1,preserveDrawingBuffer:!1},GC_MODE:na.AUTO,GC_MAX_IDLE:60*60,GC_MAX_CHECK_COUNT:60*10,WRAP_MODE:Qi.CLAMP,SCALE_MODE:Zi.LINEAR,PRECISION_VERTEX:ra.HIGH,PRECISION_FRAGMENT:Da.apple.device?ra.HIGH:ra.MEDIUM,CAN_UPLOAD_SAME_BUFFER:Oa(),CREATE_IMAGE_BITMAP:!1,ROUND_PIXELS:!1},ja=Et((exports,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i{t.exports=n,t.exports.default=n;function n(e,t,n){n||=2;var i=t&&t.length,o=i?t[0]*n:e.length,s=r(e,0,o,n,!0),c=[];if(!s||s.next===s.prev)return c;var l,d,f,p,m,h,g;if(i&&(s=u(e,t,s,n)),e.length>80*n){l=f=e[0],d=p=e[1];for(var _=n;_f&&(f=m),h>p&&(p=h);g=Math.max(f-l,p-d),g=g===0?0:32767/g}return a(s,c,n,l,d,g,0),c}function r(e,t,n,r,i){var a,o;if(i===N(e,t,n,r)>0)for(a=t;a=t;a-=r)o=A(a,e[a],e[a+1],o);return o&&S(o,o.next)&&(j(o),o=o.next),o}function i(e,t){if(!e)return e;t||=e;var n=e,r;do if(r=!1,!n.steiner&&(S(n,n.next)||x(n.prev,n,n.next)===0)){if(j(n),n=t=n.prev,n===n.next)break;r=!0}else n=n.next;while(r||n!==t);return t}function a(e,t,n,r,u,d,f){if(e){!f&&d&&h(e,r,u,d);for(var p=e,m,g;e.prev!==e.next;){if(m=e.prev,g=e.next,d?s(e,r,u,d):o(e)){t.push(m.i/n|0),t.push(e.i/n|0),t.push(g.i/n|0),j(e),e=g.next,p=g.next;continue}if(e=g,e===p){f?f===1?(e=c(i(e),t,n),a(e,t,n,r,u,d,2)):f===2&&l(e,t,n,r,u,d):a(i(e),t,n,r,u,d,1);break}}}}function o(e){var t=e.prev,n=e,r=e.next;if(x(t,n,r)>=0)return!1;for(var i=t.x,a=n.x,o=r.x,s=t.y,c=n.y,l=r.y,u=ia?i>o?i:o:a>o?a:o,p=s>c?s>l?s:l:c>l?c:l,m=r.next;m!==t;){if(m.x>=u&&m.x<=f&&m.y>=d&&m.y<=p&&y(i,s,a,c,o,l,m.x,m.y)&&x(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function s(e,t,n,r){var i=e.prev,a=e,o=e.next;if(x(i,a,o)>=0)return!1;for(var s=i.x,c=a.x,l=o.x,u=i.y,d=a.y,f=o.y,p=sc?s>l?s:l:c>l?c:l,g=u>d?u>f?u:f:d>f?d:f,v=_(p,m,t,n,r),b=_(h,g,t,n,r),S=e.prevZ,C=e.nextZ;S&&S.z>=v&&C&&C.z<=b;){if(S.x>=p&&S.x<=h&&S.y>=m&&S.y<=g&&S!==i&&S!==o&&y(s,u,c,d,l,f,S.x,S.y)&&x(S.prev,S,S.next)>=0||(S=S.prevZ,C.x>=p&&C.x<=h&&C.y>=m&&C.y<=g&&C!==i&&C!==o&&y(s,u,c,d,l,f,C.x,C.y)&&x(C.prev,C,C.next)>=0))return!1;C=C.nextZ}for(;S&&S.z>=v;){if(S.x>=p&&S.x<=h&&S.y>=m&&S.y<=g&&S!==i&&S!==o&&y(s,u,c,d,l,f,S.x,S.y)&&x(S.prev,S,S.next)>=0)return!1;S=S.prevZ}for(;C&&C.z<=b;){if(C.x>=p&&C.x<=h&&C.y>=m&&C.y<=g&&C!==i&&C!==o&&y(s,u,c,d,l,f,C.x,C.y)&&x(C.prev,C,C.next)>=0)return!1;C=C.nextZ}return!0}function c(e,t,n){var r=e;do{var a=r.prev,o=r.next.next;!S(a,o)&&C(a,r,r.next,o)&&D(a,o)&&D(o,a)&&(t.push(a.i/n|0),t.push(r.i/n|0),t.push(o.i/n|0),j(r),j(r.next),r=e=o),r=r.next}while(r!==e);return i(r)}function l(e,t,n,r,o,s){var c=e;do{for(var l=c.next.next;l!==c.prev;){if(c.i!==l.i&&b(c,l)){var u=k(c,l);c=i(c,c.next),u=i(u,u.next),a(c,t,n,r,o,s,0),a(u,t,n,r,o,s,0);return}l=l.next}c=c.next}while(c!==e)}function u(e,t,n,i){var a=[],o,s,c,l,u;for(o=0,s=t.length;o=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=r&&s>a&&(a=s,o=n.x=n.x&&n.x>=l&&r!==n.x&&y(io.x||n.x===o.x&&m(o,n)))&&(o=n,d=f)),n=n.next;while(n!==c);return o}function m(e,t){return x(e.prev,e,t.prev)<0&&x(t.next,e,e.next)<0}function h(e,t,n,r){var i=e;do i.z===0&&(i.z=_(i.x,i.y,t,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,g(i)}function g(e){var t,n,r,i,a,o,s,c,l=1;do{for(n=e,e=null,a=null,o=0;n;){for(o++,r=n,s=0,t=0;t0||c>0&&r;)s!==0&&(c===0||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,c--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;n=r}a.nextZ=null,l*=2}while(o>1);return e}function _(e,t,n,r,i){return e=(e-n)*i|0,t=(t-r)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function v(e){var t=e,n=e;do(t.x=(e-o)*(a-s)&&(e-o)*(r-s)>=(n-o)*(t-s)&&(n-o)*(a-s)>=(i-o)*(r-s)}function b(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!E(e,t)&&(D(e,t)&&D(t,e)&&O(e,t)&&(x(e.prev,e,t.prev)||x(e,t.prev,t))||S(e,t)&&x(e.prev,e,e.next)>0&&x(t.prev,t,t.next)>0)}function x(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function S(e,t){return e.x===t.x&&e.y===t.y}function C(e,t,n,r){var i=T(x(e,t,n)),a=T(x(e,t,r)),o=T(x(n,r,e)),s=T(x(n,r,t));return!!(i!==a&&o!==s||i===0&&w(e,n,t)||a===0&&w(e,r,t)||o===0&&w(n,e,r)||s===0&&w(n,t,r))}function w(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function T(e){return e>0?1:e<0?-1:0}function E(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&C(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}function D(e,t){return x(e.prev,e,e.next)<0?x(e,t,e.next)>=0&&x(e,e.prev,t)>=0:x(e,t,e.prev)<0||x(e,e.next,t)<0}function O(e,t){var n=e,r=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do n.y>a!=n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next;while(n!==e);return r}function k(e,t){var n=new M(e.i,e.x,e.y),r=new M(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function A(e,t,n,r){var i=new M(e,t,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function j(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function M(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}n.deviation=function(e,t,n,r){var i=t&&t.length,a=i?t[0]*n:e.length,o=Math.abs(N(e,0,a,n));if(i)for(var s=0,c=t.length;s0&&(r+=e[i-1].length,n.holes.push(r))}return n}}),Na=Et((exports,t)=>{(function(n){var r=typeof exports==`object`&&exports&&!exports.nodeType&&exports,i=typeof t==`object`&&t&&!t.nodeType&&t,a=typeof global==`object`&&global;(a.global===a||a.window===a||a.self===a)&&(n=a);var o,s=2147483647,c=36,l=1,u=26,d=38,f=700,p=72,m=128,h=`-`,g=/^xn--/,_=/[^\x20-\x7E]/,v=/[\x2E\u3002\uFF0E\uFF61]/g,y={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},b=c-l,x=Math.floor,S=String.fromCharCode,C;function w(e){throw RangeError(y[e])}function T(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function E(e,t){var n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(v,`.`);var i=e.split(`.`),a=T(i,t).join(`.`);return r+a}function D(e){for(var t=[],n=0,r=e.length,i,a;n=55296&&i<=56319&&n65535&&(e-=65536,t+=S(e>>>10&1023|55296),e=56320|e&1023),t+=S(e),t}).join(``)}function k(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:c}function A(e,t){return e+22+75*(e<26)-((t!=0)<<5)}function j(e,t,n){var r=0;for(e=n?x(e/f):e>>1,e+=x(e/t);e>b*u>>1;r+=c)e=x(e/b);return x(r+(b+1)*e/(e+d))}function M(e){var t=[],n=e.length,r,i=0,a=m,o=p,d,f,g,_,v,y,b,S,C;for(d=e.lastIndexOf(h),d<0&&(d=0),f=0;f=128&&w(`not-basic`),t.push(e.charCodeAt(f));for(g=d>0?d+1:0;g=n&&w(`invalid-input`),b=k(e.charCodeAt(g++)),(b>=c||b>x((s-i)/v))&&w(`overflow`),i+=b*v,S=y<=o?l:y>=o+u?u:y-o,!(bx(s/C)&&w(`overflow`),v*=C;r=t.length+1,o=j(i-_,r,_==0),x(i/r)>s-a&&w(`overflow`),a+=x(i/r),i%=r,t.splice(i++,0,a)}return O(t)}function N(e){var t,n,r,i,a,o,d,f,g,_,v,y=[],b,C,T,E;for(e=D(e),b=e.length,t=m,n=0,a=p,o=0;o=t&&vx((s-n)/C)&&w(`overflow`),n+=(d-t)*C,t=d,o=0;os&&w(`overflow`),v==t){for(f=n,g=c;_=g<=a?l:g>=a+u?u:g-a,!(f<_);g+=c)E=f-_,T=c-_,y.push(S(A(_+E%T,0))),f=x(E/T);y.push(S(A(f,0))),a=j(n,C,r==i),n=0,++r}++n,++t}return y.join(``)}function ee(e){return E(e,function(e){return g.test(e)?M(e.slice(4).toLowerCase()):e})}function P(e){return E(e,function(e){return _.test(e)?`xn--`+N(e):e})}if(o={version:`1.4.1`,ucs2:{decode:D,encode:O},decode:M,encode:N,toASCII:P,toUnicode:ee},typeof define==`function`&&typeof define.amd==`object`&&define.amd)define(`punycode`,function(){return o});else if(r&&i)if(t.exports==r)i.exports=o;else for(C in o)o.hasOwnProperty(C)&&(r[C]=o[C]);else n.punycode=o})(void 0)}),Pa=Et((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});function n(){let e,t,n=n=>{if(n&&(typeof n==`object`||typeof n==`function`)){if(e)return e.get(n)}else if(t)return t.get(n)},r=(n,r)=>{n&&(typeof n==`object`||typeof n==`function`)?(e||=new WeakMap,e.set(n,r)):(t||=new Map,t.set(n,r))},i=n=>{if(n&&(typeof n==`object`||typeof n==`function`)){if(e)return e.has(n)}else if(t)return t.has(n);return!1},a=e=>{if(!i(e))throw TypeError(`Side channel does not contain the given key`)};return{get:n,set:r,has:i,assert:a}}exports.default=n,(typeof exports.default==`object`&&exports.default!==null||typeof exports.default==`function`)&&(Object.assign(exports.default,exports),t.exports=exports.default)}),Fa=Et((exports,t)=>{var n=String.prototype.replace,r=/%20/g,i={RFC1738:`RFC1738`,RFC3986:`RFC3986`};t.exports={default:i.RFC3986,formatters:{RFC1738:function(e){return n.call(e,r,`+`)},RFC3986:function(e){return String(e)}},RFC1738:i.RFC1738,RFC3986:i.RFC3986}}),Ia=Et((exports,t)=>{var n=Fa(),r=Object.prototype.hasOwnProperty,i=Array.isArray,a=function(){for(var e=[],t=0;t<256;++t)e.push(`%`+((t<16?`0`:``)+t.toString(16)).toUpperCase());return e}(),o=function(e){for(;e.length>1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],a=0;a=d?s.slice(l,l+d):s,f=[],p=0;p=48&&m<=57||m>=65&&m<=90||m>=97&&m<=122||o===n.RFC1738&&(m===40||m===41)){f[f.length]=u.charAt(p);continue}if(m<128){f[f.length]=a[m];continue}if(m<2048){f[f.length]=a[192|m>>6]+a[128|m&63];continue}if(m<55296||m>=57344){f[f.length]=a[224|m>>12]+a[128|m>>6&63]+a[128|m&63];continue}p+=1,m=65536+((m&1023)<<10|u.charCodeAt(p)&1023),f[f.length]=a[240|m>>18]+a[128|m>>12&63]+a[128|m>>6&63]+a[128|m&63]}c+=f.join(``)}return c},p=function(e){for(var t=[{obj:{o:e},prop:`o`}],n=[],r=0;r{var n=Pa(),r=Ia(),i=Fa(),a=Object.prototype.hasOwnProperty,o={brackets:function(e){return e+`[]`},comma:`comma`,indices:function(e,t){return e+`[`+t+`]`},repeat:function(e){return e}},s=Array.isArray,c=Array.prototype.push,l=function(e,t){c.apply(e,s(t)?t:[t])},u=Date.prototype.toISOString,d=i.default,f={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:`indices`,charset:`utf-8`,charsetSentinel:!1,commaRoundTrip:!1,delimiter:`&`,encode:!0,encodeDotInKeys:!1,encoder:r.encode,encodeValuesOnly:!1,filter:void 0,format:d,formatter:i.formatters[d],indices:!1,serializeDate:function(e){return u.call(e)},skipNulls:!1,strictNullHandling:!1},p=function(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||typeof e==`symbol`||typeof e==`bigint`},m={},h=function e(t,i,a,o,c,u,d,h,g,_,v,y,b,x,S,C,w,T){for(var E=t,D=T,O=0,k=!1;(D=D.get(m))!==void 0&&!k;){var A=D.get(t);if(O+=1,A!==void 0){if(A===O)throw RangeError(`Cyclic object value`);k=!0}D.get(m)===void 0&&(O=0)}if(typeof _==`function`?E=_(i,E):E instanceof Date?E=b(E):a===`comma`&&s(E)&&(E=r.maybeMap(E,function(e){return e instanceof Date?b(e):e})),E===null){if(u)return g&&!C?g(i,f.encoder,w,`key`,x):i;E=``}if(p(E)||r.isBuffer(E)){if(g){var j=C?i:g(i,f.encoder,w,`key`,x);return[S(j)+`=`+S(g(E,f.encoder,w,`value`,x))]}return[S(i)+`=`+S(String(E))]}var M=[];if(E===void 0)return M;var N;if(a===`comma`&&s(E))C&&g&&(E=r.maybeMap(E,g)),N=[{value:E.length>0?E.join(`,`)||null:void 0}];else if(s(_))N=_;else{var ee=Object.keys(E);N=v?ee.sort(v):ee}var P=h?String(i).replace(/\./g,`%2E`):String(i),F=o&&s(E)&&E.length===1?P+`[]`:P;if(c&&s(E)&&E.length===0)return F+`[]`;for(var I=0;I0?b+y:``}}),Ra=Et((exports,t)=>{var n=Ia(),r=Object.prototype.hasOwnProperty,i=Array.isArray,a={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:`utf-8`,charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:n.decode,delimiter:`&`,depth:5,duplicates:`combine`,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},o=function(e){return e.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},s=function(e,t,n){if(e&&typeof e==`string`&&t.comma&&e.indexOf(`,`)>-1)return e.split(`,`);if(t.throwOnLimitExceeded&&n>=t.arrayLimit)throw RangeError(`Array limit exceeded. Only `+t.arrayLimit+` element`+(t.arrayLimit===1?``:`s`)+` allowed in an array.`);return e},c=`utf8=%26%2310003%3B`,l=`utf8=%E2%9C%93`,u=function(e,t){var u={__proto__:null},d=t.ignoreQueryPrefix?e.replace(/^\?/,``):e;d=d.replace(/%5B/gi,`[`).replace(/%5D/gi,`]`);var f=t.parameterLimit===1/0?void 0:t.parameterLimit,p=d.split(t.delimiter,t.throwOnLimitExceeded?f+1:f);if(t.throwOnLimitExceeded&&p.length>f)throw RangeError(`Parameter limit exceeded. Only `+f+` parameter`+(f===1?``:`s`)+` allowed.`);var m=-1,h,g=t.charset;if(t.charsetSentinel)for(h=0;h-1&&(x=i(x)?[x]:x);var S=r.call(u,b);S&&t.duplicates===`combine`?u[b]=n.combine(u[b],x):(!S||t.duplicates===`last`)&&(u[b]=x)}return u},d=function(e,t,r,i){var a=0;if(e.length>0&&e[e.length-1]===`[]`){var o=e.slice(0,-1).join(``);a=Array.isArray(t)&&t[o]?t[o].length:0}for(var c=i?t:s(t,r,a),l=e.length-1;l>=0;--l){var u,d=e[l];if(d===`[]`&&r.parseArrays)u=r.allowEmptyArrays&&(c===``||r.strictNullHandling&&c===null)?[]:n.combine([],c);else{u=r.plainObjects?{__proto__:null}:{};var f=d.charAt(0)===`[`&&d.charAt(d.length-1)===`]`?d.slice(1,-1):d,p=r.decodeDotInKeys?f.replace(/%2E/g,`.`):f,m=parseInt(p,10);!r.parseArrays&&p===``?u={0:c}:!isNaN(m)&&d!==p&&String(m)===p&&m>=0&&r.parseArrays&&m<=r.arrayLimit?(u=[],u[m]=c):p!==`__proto__`&&(u[p]=c)}c=u}return c},f=function(e,t,n,i){if(e){var a=n.allowDots?e.replace(/\.([^.[]+)/g,`[$1]`):e,o=/(\[[^[\]]*])/,s=/(\[[^[\]]*])/g,c=n.depth>0&&o.exec(a),l=c?a.slice(0,c.index):a,u=[];if(l){if(!n.plainObjects&&r.call(Object.prototype,l)&&!n.allowPrototypes)return;u.push(l)}for(var f=0;n.depth>0&&(c=s.exec(a))!==null&&f{var n=La(),r=Ra(),i=Fa();t.exports={formats:i,parse:r,stringify:n}}),Ba=Et(exports=>{var t=Na();function n(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var r=/^([a-z0-9.+-]+:)/i,i=/:[0-9]*$/,a=/^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/,o=[`<`,`>`,`"`,"`",` `,`\r`,` -`,` `],s=[`{`,`}`,`|`,`\\`,`^`,"`"].concat(o),c=[`'`].concat(s),l=[`%`,`/`,`?`,`;`,`#`].concat(c),u=[`/`,`?`,`#`],d=255,f=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},h={javascript:!0,"javascript:":!0},g={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},_=za();function v(e,t,r){if(e&&typeof e==`object`&&e instanceof n)return e;var i=new n;return i.parse(e,t,r),i}n.prototype.parse=function(e,n,i){if(typeof e!=`string`)throw TypeError(`Parameter 'url' must be a string, not `+typeof e);var o=e.indexOf(`?`),s=o!==-1&&o127?ee+=`x`:ee+=N[P];if(!ee.match(f)){var I=j.slice(0,E),te=j.slice(E+1),L=N.match(p);L&&(I.push(L[1]),te.unshift(L[2])),te.length&&(b=`/`+te.join(`.`)+b),this.hostname=I.join(`.`);break}}}this.hostname.length>d?this.hostname=``:this.hostname=this.hostname.toLowerCase(),A||(this.hostname=t.toASCII(this.hostname));var R=this.port?`:`+this.port:``,ne=this.hostname||``;this.host=ne+R,this.href+=this.host,A&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),b[0]!==`/`&&(b=`/`+b))}if(!m[C])for(var E=0,M=c.length;E0?r.host.split(`@`):!1;w&&(r.auth=w.shift(),r.hostname=w.shift(),r.host=r.hostname)}return r.search=e.search,r.query=e.query,(r.pathname!==null||r.search!==null)&&(r.path=(r.pathname?r.pathname:``)+(r.search?r.search:``)),r.href=r.format(),r}if(!S.length)return r.pathname=null,r.search?r.path=`/`+r.search:r.path=null,r.href=r.format(),r;for(var T=S.slice(-1)[0],E=(r.host||e.host||S.length>1)&&(T===`.`||T===`..`)||T===``,D=0,O=S.length;O>=0;O--)T=S[O],T===`.`?S.splice(O,1):T===`..`?(S.splice(O,1),D++):D&&(S.splice(O,1),D--);if(!b&&!x)for(;D--;)S.unshift(`..`);b&&S[0]!==``&&(!S[0]||S[0].charAt(0)!==`/`)&&S.unshift(``),E&&S.join(`/`).substr(-1)!==`/`&&S.push(``);var k=S[0]===``||S[0]&&S[0].charAt(0)===`/`;if(C){r.hostname=k?``:S.length?S.shift():``,r.host=r.hostname;var w=r.host&&r.host.indexOf(`@`)>0?r.host.split(`@`):!1;w&&(r.auth=w.shift(),r.hostname=w.shift(),r.host=r.hostname)}return b||=r.host&&S.length,b&&!k&&S.unshift(``),S.length>0?r.pathname=S.join(`/`):(r.pathname=null,r.path=null),(r.pathname!==null||r.search!==null)&&(r.path=(r.pathname?r.pathname:``)+(r.search?r.search:``)),r.auth=e.auth||r.auth,r.slashes=r.slashes||e.slashes,r.href=r.format(),r},n.prototype.parseHost=function(){var e=this.host,t=i.exec(e);t&&(t=t[0],t!==`:`&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)},exports.parse=v,exports.resolve=b,exports.resolveObject=x,exports.format=y,exports.Url=n}),Va=At(ja(),1),Ha=At(Ma(),1),Ua=At(Ba(),1),Wa={parse:Ua.parse,format:Ua.format,resolve:Ua.resolve};Aa.RETINA_PREFIX=/@([0-9\.]+)x/,Aa.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT=!1;var Ga=!1,Ka=`6.5.10`;function qa(e){var t;if(!Ga){if(Aa.ADAPTER.getNavigator().userAgent.toLowerCase().indexOf(`chrome`)>-1){var n=[` - %c %c %c PixiJS `+Ka+` - ✰ `+e+` ✰ %c %c http://www.pixijs.com/ %c %c ♥%c♥%c♥ - -`,`background: #ff66a5; padding:5px 0;`,`background: #ff66a5; padding:5px 0;`,`color: #ff66a5; background: #030307; padding:5px 0;`,`background: #ff66a5; padding:5px 0;`,`background: #ffc3dc; padding:5px 0;`,`background: #ff66a5; padding:5px 0;`,`color: #ff2424; background: #fff; padding:5px 0;`,`color: #ff2424; background: #fff; padding:5px 0;`,`color: #ff2424; background: #fff; padding:5px 0;`];(t=globalThis.console).log.apply(t,n)}else globalThis.console&&globalThis.console.log(`PixiJS `+Ka+` - `+e+` - http://www.pixijs.com/`);Ga=!0}}var Ja;function Ya(){return Ja===void 0&&(Ja=function(){var e={stencil:!0,failIfMajorPerformanceCaveat:Aa.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT};try{if(!Aa.ADAPTER.getWebGLRenderingContext())return!1;var t=Aa.ADAPTER.createCanvas(),n=t.getContext(`webgl`,e)||t.getContext(`experimental-webgl`,e),r=!!(n&&n.getContextAttributes().stencil);if(n){var i=n.getExtension(`WEBGL_lose_context`);i&&i.loseContext()}return n=null,r}catch{return!1}}()),Ja}function Xa(e,t){return t===void 0&&(t=[]),t[0]=(e>>16&255)/255,t[1]=(e>>8&255)/255,t[2]=(e&255)/255,t}function Za(e){var t=e.toString(16);return t=`000000`.substring(0,6-t.length)+t,`#`+t}function Qa(e){return(e[0]*255<<16)+(e[1]*255<<8)+(e[2]*255|0)}function $a(){for(var e=[],t=[],n=0;n<32;n++)e[n]=n,t[n]=n;e[Gi.NORMAL_NPM]=Gi.NORMAL,e[Gi.ADD_NPM]=Gi.ADD,e[Gi.SCREEN_NPM]=Gi.SCREEN,t[Gi.NORMAL]=Gi.NORMAL_NPM,t[Gi.ADD]=Gi.ADD_NPM,t[Gi.SCREEN]=Gi.SCREEN_NPM;var r=[];return r.push(t),r.push(e),r}var eo=$a();function to(e,t){if(t===1)return(t*255<<24)+e;if(t===0)return 0;var n=e>>16&255,r=e>>8&255,i=e&255;return n=n*t+.5|0,r=r*t+.5|0,i=i*t+.5|0,(t*255<<24)+(n<<16)+(r<<8)+i}function no(e){if(e.BYTES_PER_ELEMENT===4)return e instanceof Float32Array?`Float32Array`:e instanceof Uint32Array?`Uint32Array`:`Int32Array`;if(e.BYTES_PER_ELEMENT===2){if(e instanceof Uint16Array)return`Uint16Array`}else if(e.BYTES_PER_ELEMENT===1&&e instanceof Uint8Array)return`Uint8Array`;return null}function ro(e){return e+=e===0?1:0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1}function io(e){return!(e&e-1)&&!!e}function ao(e){var t=(e>65535?1:0)<<4;e>>>=t;var n=(e>255?1:0)<<3;return e>>>=n,t|=n,n=(e>15?1:0)<<2,e>>>=n,t|=n,n=(e>3?1:0)<<1,e>>>=n,t|=n,t|e>>1}function oo(e,t,n){var r=e.length,i;if(!(t>=r||n===0)){n=t+n>r?r-t:n;var a=r-n;for(i=t;i8)throw Error(`max arguments reached`);var c=this,l=c.name,u=c.items;this._aliasCount++;for(var d=0,f=u.length;d0&&this.items.length>1&&(this._aliasCount=0,this.items=this.items.slice(0))},e.prototype.add=function(e){return e[this._name]&&(this.ensureNonAliasedItems(),this.remove(e),this.items.push(e)),this},e.prototype.remove=function(e){var t=this.items.indexOf(e);return t!==-1&&(this.ensureNonAliasedItems(),this.items.splice(t,1)),this},e.prototype.contains=function(e){return this.items.indexOf(e)!==-1},e.prototype.removeAll=function(){return this.ensureNonAliasedItems(),this.items.length=0,this},e.prototype.destroy=function(){this.removeAll(),this.items=null,this._name=null},Object.defineProperty(e.prototype,`empty`,{get:function(){return this.items.length===0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`name`,{get:function(){return this._name},enumerable:!1,configurable:!0}),e}();Object.defineProperties(Co.prototype,{dispatch:{value:Co.prototype.emit},run:{value:Co.prototype.emit}}),Aa.TARGET_FPMS=.06;var wo;(function(e){e[e.INTERACTION=50]=`INTERACTION`,e[e.HIGH=25]=`HIGH`,e[e.NORMAL=0]=`NORMAL`,e[e.LOW=-25]=`LOW`,e[e.UTILITY=-50]=`UTILITY`})(wo||={});var To=function(){function e(e,t,n,r){t===void 0&&(t=null),n===void 0&&(n=0),r===void 0&&(r=!1),this.next=null,this.previous=null,this._destroyed=!1,this.fn=e,this.context=t,this.priority=n,this.once=r}return e.prototype.match=function(e,t){return t===void 0&&(t=null),this.fn===e&&this.context===t},e.prototype.emit=function(e){this.fn&&(this.context?this.fn.call(this.context,e):this.fn(e));var t=this.next;return this.once&&this.destroy(!0),this._destroyed&&(this.next=null),t},e.prototype.connect=function(e){this.previous=e,e.next&&(e.next.previous=this),this.next=e.next,e.next=this},e.prototype.destroy=function(e){e===void 0&&(e=!1),this._destroyed=!0,this.fn=null,this.context=null,this.previous&&(this.previous.next=this.next),this.next&&(this.next.previous=this.previous);var t=this.next;return this.next=e?null:t,this.previous=null,t},e}(),Eo=function(){function e(){var e=this;this.autoStart=!1,this.deltaTime=1,this.lastTime=-1,this.speed=1,this.started=!1,this._requestId=null,this._maxElapsedMS=100,this._minElapsedMS=0,this._protected=!1,this._lastFrame=-1,this._head=new To(null,null,1/0),this.deltaMS=1/Aa.TARGET_FPMS,this.elapsedMS=1/Aa.TARGET_FPMS,this._tick=function(t){e._requestId=null,e.started&&(e.update(t),e.started&&e._requestId===null&&e._head.next&&(e._requestId=requestAnimationFrame(e._tick)))}}return e.prototype._requestIfNeeded=function(){this._requestId===null&&this._head.next&&(this.lastTime=performance.now(),this._lastFrame=this.lastTime,this._requestId=requestAnimationFrame(this._tick))},e.prototype._cancelIfNeeded=function(){this._requestId!==null&&(cancelAnimationFrame(this._requestId),this._requestId=null)},e.prototype._startIfPossible=function(){this.started?this._requestIfNeeded():this.autoStart&&this.start()},e.prototype.add=function(e,t,n){return n===void 0&&(n=wo.NORMAL),this._addListener(new To(e,t,n))},e.prototype.addOnce=function(e,t,n){return n===void 0&&(n=wo.NORMAL),this._addListener(new To(e,t,n,!0))},e.prototype._addListener=function(e){var t=this._head.next,n=this._head;if(!t)e.connect(n);else{for(;t;){if(e.priority>t.priority){e.connect(n);break}n=t,t=t.next}e.previous||e.connect(n)}return this._startIfPossible(),this},e.prototype.remove=function(e,t){for(var n=this._head.next;n;)n=n.match(e,t)?n.destroy():n.next;return this._head.next||this._cancelIfNeeded(),this},Object.defineProperty(e.prototype,`count`,{get:function(){if(!this._head)return 0;for(var e=0,t=this._head;t=t.next;)e++;return e},enumerable:!1,configurable:!0}),e.prototype.start=function(){this.started||(this.started=!0,this._requestIfNeeded())},e.prototype.stop=function(){this.started&&(this.started=!1,this._cancelIfNeeded())},e.prototype.destroy=function(){if(!this._protected){this.stop();for(var e=this._head.next;e;)e=e.destroy(!0);this._head.destroy(),this._head=null}},e.prototype.update=function(e){e===void 0&&(e=performance.now());var t;if(e>this.lastTime){if(t=this.elapsedMS=e-this.lastTime,t>this._maxElapsedMS&&(t=this._maxElapsedMS),t*=this.speed,this._minElapsedMS){var n=e-this._lastFrame|0;if(n=this.x&&e=this.y&&te.right?e.right:this.right;if(r<=n)return!1;var i=this.ye.bottom?e.bottom:this.bottom;return a>i}var o=this.left,s=this.right,c=this.top,l=this.bottom;if(s<=o||l<=c)return!1;var u=No[0].set(e.left,e.top),d=No[1].set(e.left,e.bottom),f=No[2].set(e.right,e.top),p=No[3].set(e.right,e.bottom);if(f.x<=u.x||d.y<=u.y)return!1;var m=Math.sign(t.a*t.d-t.b*t.c);if(m===0||(t.apply(u,u),t.apply(d,d),t.apply(f,f),t.apply(p,p),Math.max(u.x,d.x,f.x,p.x)<=o||Math.min(u.x,d.x,f.x,p.x)>=s||Math.max(u.y,d.y,f.y,p.y)<=c||Math.min(u.y,d.y,f.y,p.y)>=l))return!1;var h=m*(d.y-u.y),g=m*(u.x-d.x),_=h*o+g*c,v=h*s+g*c,y=h*o+g*l,b=h*s+g*l;if(Math.max(_,v,y,b)<=h*u.x+g*u.y||Math.min(_,v,y,b)>=h*p.x+g*p.y)return!1;var x=m*(u.y-f.y),S=m*(f.x-u.x),C=x*o+S*c,w=x*s+S*c,T=x*o+S*l,E=x*s+S*l;return!(Math.max(C,w,T,E)<=x*u.x+S*u.y||Math.min(C,w,T,E)>=x*p.x+S*p.y)},e.prototype.pad=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.x-=e,this.y-=t,this.width+=e*2,this.height+=t*2,this},e.prototype.fit=function(e){var t=Math.max(this.x,e.x),n=Math.min(this.x+this.width,e.x+e.width),r=Math.max(this.y,e.y),i=Math.min(this.y+this.height,e.y+e.height);return this.x=t,this.width=Math.max(n-t,0),this.y=r,this.height=Math.max(i-r,0),this},e.prototype.ceil=function(e,t){e===void 0&&(e=1),t===void 0&&(t=.001);var n=Math.ceil((this.x+this.width-t)*e)/e,r=Math.ceil((this.y+this.height-t)*e)/e;return this.x=Math.floor((this.x+t)*e)/e,this.y=Math.floor((this.y+t)*e)/e,this.width=n-this.x,this.height=r-this.y,this},e.prototype.enlarge=function(e){var t=Math.min(this.x,e.x),n=Math.max(this.x+this.width,e.x+e.width),r=Math.min(this.y,e.y),i=Math.max(this.y+this.height,e.y+e.height);return this.x=t,this.width=n-t,this.y=r,this.height=i-r,this},e.prototype.toString=function(){return`[@pixi/math:Rectangle x=`+this.x+` y=`+this.y+` width=`+this.width+` height=`+this.height+`]`},e}(),Fo=function(){function e(e,t,n){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),this.x=e,this.y=t,this.radius=n,this.type=jo.CIRC}return e.prototype.clone=function(){return new e(this.x,this.y,this.radius)},e.prototype.contains=function(e,t){if(this.radius<=0)return!1;var n=this.radius*this.radius,r=this.x-e,i=this.y-t;return r*=r,i*=i,r+i<=n},e.prototype.getBounds=function(){return new Po(this.x-this.radius,this.y-this.radius,this.radius*2,this.radius*2)},e.prototype.toString=function(){return`[@pixi/math:Circle x=`+this.x+` y=`+this.y+` radius=`+this.radius+`]`},e}(),Io=function(){function e(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.x=e,this.y=t,this.width=n,this.height=r,this.type=jo.ELIP}return e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height)},e.prototype.contains=function(e,t){if(this.width<=0||this.height<=0)return!1;var n=(e-this.x)/this.width,r=(t-this.y)/this.height;return n*=n,r*=r,n+r<=1},e.prototype.getBounds=function(){return new Po(this.x-this.width,this.y-this.height,this.width,this.height)},e.prototype.toString=function(){return`[@pixi/math:Ellipse x=`+this.x+` y=`+this.y+` width=`+this.width+` height=`+this.height+`]`},e}(),Lo=function(){function e(){for(var e=arguments,t=[],n=0;nt!=l>t&&e<(c-o)*((t-s)/(l-s))+o;u&&(n=!n)}return n},e.prototype.toString=function(){return`[@pixi/math:Polygon`+(`closeStroke=`+this.closeStroke)+(`points=`+this.points.reduce(function(e,t){return e+`, `+t},``)+`]`)},e}(),Ro=function(){function e(e,t,n,r,i){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=20),this.x=e,this.y=t,this.width=n,this.height=r,this.radius=i,this.type=jo.RREC}return e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height,this.radius)},e.prototype.contains=function(e,t){if(this.width<=0||this.height<=0)return!1;if(e>=this.x&&e<=this.x+this.width&&t>=this.y&&t<=this.y+this.height){var n=Math.max(0,Math.min(this.radius,Math.min(this.width,this.height)/2));if(t>=this.y+n&&t<=this.y+this.height-n||e>=this.x+n&&e<=this.x+this.width-n)return!0;var r=e-(this.x+n),i=t-(this.y+n),a=n*n;if(r*r+i*i<=a||(r=e-(this.x+this.width-n),r*r+i*i<=a)||(i=t-(this.y+this.height-n),r*r+i*i<=a)||(r=e-(this.x+n),r*r+i*i<=a))return!0}return!1},e.prototype.toString=function(){return`[@pixi/math:RoundedRectangle x=`+this.x+` y=`+this.y+(`width=`+this.width+` height=`+this.height+` radius=`+this.radius+`]`)},e}(),zo=function(){function e(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=0),this._x=n,this._y=r,this.cb=e,this.scope=t}return e.prototype.clone=function(t,n){return t===void 0&&(t=this.cb),n===void 0&&(n=this.scope),new e(t,n,this._x,this._y)},e.prototype.set=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),(this._x!==e||this._y!==t)&&(this._x=e,this._y=t,this.cb.call(this.scope)),this},e.prototype.copyFrom=function(e){return(this._x!==e.x||this._y!==e.y)&&(this._x=e.x,this._y=e.y,this.cb.call(this.scope)),this},e.prototype.copyTo=function(e){return e.set(this._x,this._y),e},e.prototype.equals=function(e){return e.x===this._x&&e.y===this._y},e.prototype.toString=function(){return`[@pixi/math:ObservablePoint x=0 y=0 scope=`+this.scope+`]`},Object.defineProperty(e.prototype,`x`,{get:function(){return this._x},set:function(e){this._x!==e&&(this._x=e,this.cb.call(this.scope))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`y`,{get:function(){return this._y},set:function(e){this._y!==e&&(this._y=e,this.cb.call(this.scope))},enumerable:!1,configurable:!0}),e}(),Bo=function(){function e(e,t,n,r,i,a){e===void 0&&(e=1),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=1),i===void 0&&(i=0),a===void 0&&(a=0),this.array=null,this.a=e,this.b=t,this.c=n,this.d=r,this.tx=i,this.ty=a}return e.prototype.fromArray=function(e){this.a=e[0],this.b=e[1],this.c=e[3],this.d=e[4],this.tx=e[2],this.ty=e[5]},e.prototype.set=function(e,t,n,r,i,a){return this.a=e,this.b=t,this.c=n,this.d=r,this.tx=i,this.ty=a,this},e.prototype.toArray=function(e,t){this.array||=new Float32Array(9);var n=t||this.array;return e?(n[0]=this.a,n[1]=this.b,n[2]=0,n[3]=this.c,n[4]=this.d,n[5]=0,n[6]=this.tx,n[7]=this.ty,n[8]=1):(n[0]=this.a,n[1]=this.c,n[2]=this.tx,n[3]=this.b,n[4]=this.d,n[5]=this.ty,n[6]=0,n[7]=0,n[8]=1),n},e.prototype.apply=function(e,t){t||=new Mo;var n=e.x,r=e.y;return t.x=this.a*n+this.c*r+this.tx,t.y=this.b*n+this.d*r+this.ty,t},e.prototype.applyInverse=function(e,t){t||=new Mo;var n=1/(this.a*this.d+this.c*-this.b),r=e.x,i=e.y;return t.x=this.d*n*r+-this.c*n*i+(this.ty*this.c-this.tx*this.d)*n,t.y=this.a*n*i+-this.b*n*r+(-this.ty*this.a+this.tx*this.b)*n,t},e.prototype.translate=function(e,t){return this.tx+=e,this.ty+=t,this},e.prototype.scale=function(e,t){return this.a*=e,this.d*=t,this.c*=e,this.b*=t,this.tx*=e,this.ty*=t,this},e.prototype.rotate=function(e){var t=Math.cos(e),n=Math.sin(e),r=this.a,i=this.c,a=this.tx;return this.a=r*t-this.b*n,this.b=r*n+this.b*t,this.c=i*t-this.d*n,this.d=i*n+this.d*t,this.tx=a*t-this.ty*n,this.ty=a*n+this.ty*t,this},e.prototype.append=function(e){var t=this.a,n=this.b,r=this.c,i=this.d;return this.a=e.a*t+e.b*r,this.b=e.a*n+e.b*i,this.c=e.c*t+e.d*r,this.d=e.c*n+e.d*i,this.tx=e.tx*t+e.ty*r+this.tx,this.ty=e.tx*n+e.ty*i+this.ty,this},e.prototype.setTransform=function(e,t,n,r,i,a,o,s,c){return this.a=Math.cos(o+c)*i,this.b=Math.sin(o+c)*i,this.c=-Math.sin(o-s)*a,this.d=Math.cos(o-s)*a,this.tx=e-(n*this.a+r*this.c),this.ty=t-(n*this.b+r*this.d),this},e.prototype.prepend=function(e){var t=this.tx;if(e.a!==1||e.b!==0||e.c!==0||e.d!==1){var n=this.a,r=this.c;this.a=n*e.a+this.b*e.c,this.b=n*e.b+this.b*e.d,this.c=r*e.a+this.d*e.c,this.d=r*e.b+this.d*e.d}return this.tx=t*e.a+this.ty*e.c+e.tx,this.ty=t*e.b+this.ty*e.d+e.ty,this},e.prototype.decompose=function(e){var t=this.a,n=this.b,r=this.c,i=this.d,a=e.pivot,o=-Math.atan2(-r,i),s=Math.atan2(n,t),c=Math.abs(o+s);return c<1e-5||Math.abs(Oo-c)<1e-5?(e.rotation=s,e.skew.x=e.skew.y=0):(e.rotation=0,e.skew.x=o,e.skew.y=s),e.scale.x=Math.sqrt(t*t+n*n),e.scale.y=Math.sqrt(r*r+i*i),e.position.x=this.tx+(a.x*t+a.y*r),e.position.y=this.ty+(a.x*n+a.y*i),e},e.prototype.invert=function(){var e=this.a,t=this.b,n=this.c,r=this.d,i=this.tx,a=e*r-t*n;return this.a=r/a,this.b=-t/a,this.c=-n/a,this.d=e/a,this.tx=(n*this.ty-r*i)/a,this.ty=-(e*this.ty-t*i)/a,this},e.prototype.identity=function(){return this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0,this},e.prototype.clone=function(){var t=new e;return t.a=this.a,t.b=this.b,t.c=this.c,t.d=this.d,t.tx=this.tx,t.ty=this.ty,t},e.prototype.copyTo=function(e){return e.a=this.a,e.b=this.b,e.c=this.c,e.d=this.d,e.tx=this.tx,e.ty=this.ty,e},e.prototype.copyFrom=function(e){return this.a=e.a,this.b=e.b,this.c=e.c,this.d=e.d,this.tx=e.tx,this.ty=e.ty,this},e.prototype.toString=function(){return`[@pixi/math:Matrix a=`+this.a+` b=`+this.b+` c=`+this.c+` d=`+this.d+` tx=`+this.tx+` ty=`+this.ty+`]`},Object.defineProperty(e,`IDENTITY`,{get:function(){return new e},enumerable:!1,configurable:!0}),Object.defineProperty(e,`TEMP_MATRIX`,{get:function(){return new e},enumerable:!1,configurable:!0}),e}(),Vo=[1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1,0,1],Ho=[0,1,1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1],Uo=[0,-1,-1,-1,0,1,1,1,0,1,1,1,0,-1,-1,-1],Wo=[1,1,0,-1,-1,-1,0,1,-1,-1,0,1,1,1,0,-1],Go=[],Ko=[],qo=Math.sign;function Jo(){for(var e=0;e<16;e++){var t=[];Go.push(t);for(var n=0;n<16;n++)for(var r=qo(Vo[e]*Vo[n]+Uo[e]*Ho[n]),i=qo(Ho[e]*Vo[n]+Wo[e]*Ho[n]),a=qo(Vo[e]*Uo[n]+Uo[e]*Wo[n]),o=qo(Ho[e]*Uo[n]+Wo[e]*Wo[n]),s=0;s<16;s++)if(Vo[s]===r&&Ho[s]===i&&Uo[s]===a&&Wo[s]===o){t.push(s);break}}for(var e=0;e<16;e++){var c=new Bo;c.set(Vo[e],Ho[e],Uo[e],Wo[e],0,0),Ko.push(c)}}Jo();var Yo={E:0,SE:1,S:2,SW:3,W:4,NW:5,N:6,NE:7,MIRROR_VERTICAL:8,MAIN_DIAGONAL:10,MIRROR_HORIZONTAL:12,REVERSE_DIAGONAL:14,uX:function(e){return Vo[e]},uY:function(e){return Ho[e]},vX:function(e){return Uo[e]},vY:function(e){return Wo[e]},inv:function(e){return e&8?e&15:-e&7},add:function(e,t){return Go[e][t]},sub:function(e,t){return Go[e][Yo.inv(t)]},rotate180:function(e){return e^4},isVertical:function(e){return(e&3)==2},byDirection:function(e,t){return Math.abs(e)*2<=Math.abs(t)?t>=0?Yo.S:Yo.N:Math.abs(t)*2<=Math.abs(e)?e>0?Yo.E:Yo.W:t>0?e>0?Yo.SE:Yo.SW:e>0?Yo.NE:Yo.NW},matrixAppendRotationInv:function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=0);var i=Ko[Yo.inv(t)];i.tx=n,i.ty=r,e.append(i)}},Xo=function(){function e(){this.worldTransform=new Bo,this.localTransform=new Bo,this.position=new zo(this.onChange,this,0,0),this.scale=new zo(this.onChange,this,1,1),this.pivot=new zo(this.onChange,this,0,0),this.skew=new zo(this.updateSkew,this,0,0),this._rotation=0,this._cx=1,this._sx=0,this._cy=0,this._sy=1,this._localID=0,this._currentLocalID=0,this._worldID=0,this._parentID=0}return e.prototype.onChange=function(){this._localID++},e.prototype.updateSkew=function(){this._cx=Math.cos(this._rotation+this.skew.y),this._sx=Math.sin(this._rotation+this.skew.y),this._cy=-Math.sin(this._rotation-this.skew.x),this._sy=Math.cos(this._rotation-this.skew.x),this._localID++},e.prototype.toString=function(){return`[@pixi/math:Transform `+(`position=(`+this.position.x+`, `+this.position.y+`) `)+(`rotation=`+this.rotation+` `)+(`scale=(`+this.scale.x+`, `+this.scale.y+`) `)+(`skew=(`+this.skew.x+`, `+this.skew.y+`) `)+`]`},e.prototype.updateLocalTransform=function(){var e=this.localTransform;this._localID!==this._currentLocalID&&(e.a=this._cx*this.scale.x,e.b=this._sx*this.scale.x,e.c=this._cy*this.scale.y,e.d=this._sy*this.scale.y,e.tx=this.position.x-(this.pivot.x*e.a+this.pivot.y*e.c),e.ty=this.position.y-(this.pivot.x*e.b+this.pivot.y*e.d),this._currentLocalID=this._localID,this._parentID=-1)},e.prototype.updateTransform=function(e){var t=this.localTransform;if(this._localID!==this._currentLocalID&&(t.a=this._cx*this.scale.x,t.b=this._sx*this.scale.x,t.c=this._cy*this.scale.y,t.d=this._sy*this.scale.y,t.tx=this.position.x-(this.pivot.x*t.a+this.pivot.y*t.c),t.ty=this.position.y-(this.pivot.x*t.b+this.pivot.y*t.d),this._currentLocalID=this._localID,this._parentID=-1),this._parentID!==e._worldID){var n=e.worldTransform,r=this.worldTransform;r.a=t.a*n.a+t.b*n.c,r.b=t.a*n.b+t.b*n.d,r.c=t.c*n.a+t.d*n.c,r.d=t.c*n.b+t.d*n.d,r.tx=t.tx*n.a+t.ty*n.c+n.tx,r.ty=t.tx*n.b+t.ty*n.d+n.ty,this._parentID=e._worldID,this._worldID++}},e.prototype.setFromMatrix=function(e){e.decompose(this),this._localID++},Object.defineProperty(e.prototype,`rotation`,{get:function(){return this._rotation},set:function(e){this._rotation!==e&&(this._rotation=e,this.updateSkew())},enumerable:!1,configurable:!0}),e.IDENTITY=new e,e}();Aa.PREFER_ENV=Da.any?Hi.WEBGL:Hi.WEBGL2,Aa.STRICT_TEXTURE_CACHE=!1;var Zo=[];function Qo(e,t){if(!e)return null;var n=``;if(typeof e==`string`){var r=/\.(\w{3,4})(?:$|\?|#)/i.exec(e);r&&(n=r[1].toLowerCase())}for(var i=Zo.length-1;i>=0;--i){var a=Zo[i];if(a.test&&a.test(e,n))return new a(e,t)}throw Error(`Unrecognized source type to auto-detect Resource`)} -/*! ***************************************************************************** - -Copyright (c) Microsoft Corporation. - - - -Permission to use, copy, modify, and/or distribute this software for any - -purpose with or without fee is hereby granted. - - - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - -PERFORMANCE OF THIS SOFTWARE. - -***************************************************************************** */ -var $o=function(e,t){return $o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},$o(e,t)};function es(e,t){$o(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var ts=function(){return ts=Object.assign||function(e){for(var t=arguments,n,r=1,i=arguments.length;r0&&l>0,r.textureCacheIds=[],r.destroyed=!1,r.resource=null,r._batchEnabled=0,r._batchLocation=0,r.parentTextureArray=null,r.setResource(t),r}return Object.defineProperty(t.prototype,`realWidth`,{get:function(){return Math.round(this.width*this.resolution)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`realHeight`,{get:function(){return Math.round(this.height*this.resolution)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`mipmap`,{get:function(){return this._mipmap},set:function(e){this._mipmap!==e&&(this._mipmap=e,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scaleMode`,{get:function(){return this._scaleMode},set:function(e){this._scaleMode!==e&&(this._scaleMode=e,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`wrapMode`,{get:function(){return this._wrapMode},set:function(e){this._wrapMode!==e&&(this._wrapMode=e,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),t.prototype.setStyle=function(e,t){var n;return e!==void 0&&e!==this.scaleMode&&(this.scaleMode=e,n=!0),t!==void 0&&t!==this.mipmap&&(this.mipmap=t,n=!0),n&&this.dirtyStyleId++,this},t.prototype.setSize=function(e,t,n){return n||=this.resolution,this.setRealSize(e*n,t*n,n)},t.prototype.setRealSize=function(e,t,n){return this.resolution=n||this.resolution,this.width=Math.round(e)/this.resolution,this.height=Math.round(t)/this.resolution,this._refreshPOT(),this.update(),this},t.prototype._refreshPOT=function(){this.isPowerOfTwo=io(this.realWidth)&&io(this.realHeight)},t.prototype.setResolution=function(e){var t=this.resolution;return t===e?this:(this.resolution=e,this.valid&&(this.width=Math.round(this.width*t)/e,this.height=Math.round(this.height*t)/e,this.emit(`update`,this)),this._refreshPOT(),this)},t.prototype.setResource=function(e){if(this.resource===e)return this;if(this.resource)throw Error(`Resource can be set only once`);return e.bind(this),this.resource=e,this},t.prototype.update=function(){this.valid?(this.dirtyId++,this.dirtyStyleId++,this.emit(`update`,this)):this.width>0&&this.height>0&&(this.valid=!0,this.emit(`loaded`,this),this.emit(`update`,this))},t.prototype.onError=function(e){this.emit(`error`,this,e)},t.prototype.destroy=function(){this.resource&&(this.resource.unbind(this),this.resource.internal&&this.resource.destroy(),this.resource=null),this.cacheId&&(delete mo[this.cacheId],delete po[this.cacheId],this.cacheId=null),this.dispose(),t.removeFromCache(this),this.textureCacheIds=null,this.destroyed=!0},t.prototype.dispose=function(){this.emit(`dispose`,this)},t.prototype.castToBaseTexture=function(){return this},t.from=function(e,n,r){r===void 0&&(r=Aa.STRICT_TEXTURE_CACHE);var i=typeof e==`string`,a=null;if(i)a=e;else{if(!e._pixiId){var o=n&&n.pixiIdPrefix||`pixiid`;e._pixiId=o+`_`+co()}a=e._pixiId}var s=mo[a];if(i&&r&&!s)throw Error(`The cacheId "`+a+`" does not exist in BaseTextureCache.`);return s||(s=new t(e,n),s.cacheId=a,t.addToCache(s,a)),s},t.fromBuffer=function(e,n,r,i){e||=new Float32Array(n*r*4);var a=new os(e,{width:n,height:r}),o=e instanceof Float32Array?Yi.FLOAT:Yi.UNSIGNED_BYTE;return new t(a,Object.assign({},ss,i||{width:n,height:r,type:o}))},t.addToCache=function(e,t){t&&(e.textureCacheIds.indexOf(t)===-1&&e.textureCacheIds.push(t),mo[t]&&console.warn(`BaseTexture added to the cache with an id [`+t+`] that already had an entry`),mo[t]=e)},t.removeFromCache=function(e){if(typeof e==`string`){var t=mo[e];if(t){var n=t.textureCacheIds.indexOf(e);return n>-1&&t.textureCacheIds.splice(n,1),delete mo[e],t}}else if(e&&e.textureCacheIds){for(var r=0;r0)if(e.resource)this.addResourceAt(e.resource,t);else throw Error(`CubeResource does not support copying of renderTexture.`);else e.target=Ji.TEXTURE_CUBE_MAP_POSITIVE_X+t,e.parentTextureArray=this.baseTexture,this.items[t]=e;return e.valid&&!this.valid&&this.resize(e.realWidth,e.realHeight),this.items[t]=e,this},t.prototype.upload=function(e,n,r){for(var i=this.itemDirtyIds,a=0;a)?\s*()]*-->)?\s*\]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^>]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^>]*>/i,t}(ds),gs=function(e){es(t,e);function t(n,r){var i=this;if(r||={},!(n instanceof HTMLVideoElement)){var a=document.createElement(`video`);a.setAttribute(`preload`,`auto`),a.setAttribute(`webkit-playsinline`,``),a.setAttribute(`playsinline`,``),typeof n==`string`&&(n=[n]);var o=n[0].src||n[0];ds.crossOrigin(a,o,r.crossorigin);for(var s=0;s2},t.prototype._onPlayStart=function(){this.valid||this._onCanPlay(),this.autoUpdate&&!this._isConnectedToTicker&&(Eo.shared.add(this.update,this),this._isConnectedToTicker=!0)},t.prototype._onPlayStop=function(){this._isConnectedToTicker&&(Eo.shared.remove(this.update,this),this._isConnectedToTicker=!1)},t.prototype._onCanPlay=function(){var e=this.source;e.removeEventListener(`canplay`,this._onCanPlay),e.removeEventListener(`canplaythrough`,this._onCanPlay);var t=this.valid;this.resize(e.videoWidth,e.videoHeight),!t&&this._resolve&&(this._resolve(this),this._resolve=null),this._isSourcePlaying()?this._onPlayStart():this.autoPlay&&e.play()},t.prototype.dispose=function(){this._isConnectedToTicker&&(Eo.shared.remove(this.update,this),this._isConnectedToTicker=!1);var t=this.source;t&&(t.removeEventListener(`error`,this._onError,!0),t.pause(),t.src=``,t.load()),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,`autoUpdate`,{get:function(){return this._autoUpdate},set:function(e){e!==this._autoUpdate&&(this._autoUpdate=e,!this._autoUpdate&&this._isConnectedToTicker?(Eo.shared.remove(this.update,this),this._isConnectedToTicker=!1):this._autoUpdate&&!this._isConnectedToTicker&&this._isSourcePlaying()&&(Eo.shared.add(this.update,this),this._isConnectedToTicker=!0))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`updateFPS`,{get:function(){return this._updateFPS},set:function(e){e!==this._updateFPS&&(this._updateFPS=e)},enumerable:!1,configurable:!0}),t.test=function(e,n){return globalThis.HTMLVideoElement&&e instanceof HTMLVideoElement||t.TYPES.indexOf(n)>-1},t.TYPES=[`mp4`,`m4v`,`webm`,`ogg`,`ogv`,`h264`,`avi`,`mov`],t.MIME_TYPES={ogv:`video/ogg`,mov:`video/quicktime`,m4v:`video/mp4`},t}(ds),_s=function(e){es(t,e);function t(t){return e.call(this,t)||this}return t.test=function(e){return!!globalThis.createImageBitmap&&typeof ImageBitmap<`u`&&e instanceof ImageBitmap},t}(ds);Zo.push(ms,_s,fs,gs,hs,os,ps,us);var vs={__proto__:null,Resource:rs,BaseImageResource:ds,INSTALLED:Zo,autoDetectResource:Qo,AbstractMultiResource:ls,ArrayResource:us,BufferResource:os,CanvasResource:fs,CubeResource:ps,ImageResource:ms,SVGResource:hs,VideoResource:gs,ImageBitmapResource:_s},ys=function(e){es(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.upload=function(e,t,n){var r=e.gl;r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.alphaMode===ea.UNPACK);var i=t.realWidth,a=t.realHeight;return n.width===i&&n.height===a?r.texSubImage2D(t.target,0,0,0,i,a,t.format,n.type,this.data):(n.width=i,n.height=a,r.texImage2D(t.target,0,n.internalFormat,i,a,0,t.format,n.type,this.data)),!0},t}(os),bs=function(){function e(e,t){this.width=Math.round(e||100),this.height=Math.round(t||100),this.stencil=!1,this.depth=!1,this.dirtyId=0,this.dirtyFormat=0,this.dirtySize=0,this.depthTexture=null,this.colorTextures=[],this.glFramebuffers={},this.disposeRunner=new Co(`disposeFramebuffer`),this.multisample=oa.NONE}return Object.defineProperty(e.prototype,`colorTexture`,{get:function(){return this.colorTextures[0]},enumerable:!1,configurable:!0}),e.prototype.addColorTexture=function(e,t){return e===void 0&&(e=0),this.colorTextures[e]=t||new cs(null,{scaleMode:Zi.NEAREST,resolution:1,mipmap:$i.OFF,width:this.width,height:this.height}),this.dirtyId++,this.dirtyFormat++,this},e.prototype.addDepthTexture=function(e){return this.depthTexture=e||new cs(new ys(null,{width:this.width,height:this.height}),{scaleMode:Zi.NEAREST,resolution:1,width:this.width,height:this.height,mipmap:$i.OFF,format:qi.DEPTH_COMPONENT,type:Yi.UNSIGNED_SHORT}),this.dirtyId++,this.dirtyFormat++,this},e.prototype.enableDepth=function(){return this.depth=!0,this.dirtyId++,this.dirtyFormat++,this},e.prototype.enableStencil=function(){return this.stencil=!0,this.dirtyId++,this.dirtyFormat++,this},e.prototype.resize=function(e,t){if(e=Math.round(e),t=Math.round(t),!(e===this.width&&t===this.height)){this.width=e,this.height=t,this.dirtyId++,this.dirtySize++;for(var n=0;n-1&&t.textureCacheIds.splice(n,1),delete po[e],t}}else if(e&&e.textureCacheIds){for(var r=0;rthis.baseTexture.width,o=n+i>this.baseTexture.height;if(a||o){var s=a&&o?`and`:`or`,c=`X: `+t+` + `+r+` = `+(t+r)+` > `+this.baseTexture.width,l=`Y: `+n+` + `+i+` = `+(n+i)+` > `+this.baseTexture.height;throw Error(`Texture Error: frame does not fit inside the base Texture dimensions: `+(c+` `+s+` `+l))}this.valid=r&&i&&this.baseTexture.valid,!this.trim&&!this.rotate&&(this.orig=e),this.valid&&this.updateUvs()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`rotate`,{get:function(){return this._rotate},set:function(e){this._rotate=e,this.valid&&this.updateUvs()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`width`,{get:function(){return this.orig.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`height`,{get:function(){return this.orig.height},enumerable:!1,configurable:!0}),t.prototype.castToBaseTexture=function(){return this.baseTexture},Object.defineProperty(t,`EMPTY`,{get:function(){return t._EMPTY||(t._EMPTY=new t(new cs),ws(t._EMPTY),ws(t._EMPTY.baseTexture)),t._EMPTY},enumerable:!1,configurable:!0}),Object.defineProperty(t,`WHITE`,{get:function(){if(!t._WHITE){var e=Aa.ADAPTER.createCanvas(16,16),n=e.getContext(`2d`);e.width=16,e.height=16,n.fillStyle=`white`,n.fillRect(0,0,16,16),t._WHITE=new t(cs.from(e)),ws(t._WHITE),ws(t._WHITE.baseTexture)}return t._WHITE},enumerable:!1,configurable:!0}),t}(Va.default),Es=function(e){es(t,e);function t(t,n){var r=e.call(this,t,n)||this;return r.valid=!0,r.filterFrame=null,r.filterPoolKey=null,r.updateUvs(),r}return Object.defineProperty(t.prototype,`framebuffer`,{get:function(){return this.baseTexture.framebuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`multisample`,{get:function(){return this.framebuffer.multisample},set:function(e){this.framebuffer.multisample=e},enumerable:!1,configurable:!0}),t.prototype.resize=function(e,t,n){n===void 0&&(n=!0);var r=this.baseTexture.resolution,i=Math.round(e*r)/r,a=Math.round(t*r)/r;this.valid=i>0&&a>0,this._frame.width=this.orig.width=i,this._frame.height=this.orig.height=a,n&&this.baseTexture.resize(i,a),this.updateUvs()},t.prototype.setResolution=function(e){var t=this.baseTexture;t.resolution!==e&&(t.setResolution(e),this.resize(t.width,t.height,!1))},t.create=function(e){for(var n=arguments,r=[],i=1;i>>0,r>1&&(i+=r*4294967296)):i=r>1?-r:-1,this.texturePool[i]||(this.texturePool[i]=[]);var a=this.texturePool[i].pop();return a||=this.createTexture(e,t,r),a.filterPoolKey=i,a.setResolution(n),a},e.prototype.getFilterTexture=function(e,t,n){var r=this.getOptimalTexture(e.width,e.height,t||e.resolution,n||oa.NONE);return r.filterFrame=e.filterFrame,r},e.prototype.returnTexture=function(e){var t=e.filterPoolKey;e.filterFrame=null,this.texturePool[t].push(e)},e.prototype.returnFilterTexture=function(e){this.returnTexture(e)},e.prototype.clear=function(e){if(e=e!==!1,e)for(var t in this.texturePool){var n=this.texturePool[t];if(n)for(var r=0;r0&&e.height>0,this.texturePool){if(!(Number(t)<0))continue;var n=this.texturePool[t];if(n)for(var r=0;r1){for(var l=0;l1&&(u=this.getOptimalFilterTexture(l.width,l.height,t.resolution),u.filterFrame=l.filterFrame),n[d].apply(this,l,u,ta.CLEAR,t);var f=l;l=u,u=f}n[d].apply(this,l,c.renderTexture,ta.BLEND,t),d>1&&t.multisample>1&&this.returnFilterTexture(t.renderTexture),this.returnFilterTexture(l),this.returnFilterTexture(u)}t.clear(),this.statePool.push(t)},e.prototype.bindAndClear=function(e,t){t===void 0&&(t=ta.CLEAR);var n=this.renderer,r=n.renderTexture,i=n.state;if(e===this.defaultFilterStack[this.defaultFilterStack.length-1].renderTexture?this.renderer.projection.transform=this.activeState.transform:this.renderer.projection.transform=null,e&&e.filterFrame){var a=this.tempRect;a.x=0,a.y=0,a.width=e.filterFrame.width,a.height=e.filterFrame.height,r.bind(e,e.filterFrame,a)}else e===this.defaultFilterStack[this.defaultFilterStack.length-1].renderTexture?this.renderer.renderTexture.bind(e,this.activeState.bindingSourceFrame,this.activeState.bindingDestinationFrame):r.bind(e);var o=i.stateId&1||this.forceClear;(t===ta.CLEAR||t===ta.BLIT&&o)&&this.renderer.framebuffer.clear(0,0,0,0)},e.prototype.applyFilter=function(e,t,n,r){var i=this.renderer;i.state.set(e.state),this.bindAndClear(n,r),e.uniforms.uSampler=t,e.uniforms.filterGlobals=this.globalUniforms,i.shader.bind(e),e.legacy=!!e.program.attributeData.aTextureCoord,e.legacy?(this.quadUv.map(t._frame,t.filterFrame),i.geometry.bind(this.quadUv),i.geometry.draw(Ki.TRIANGLES)):(i.geometry.bind(this.quad),i.geometry.draw(Ki.TRIANGLE_STRIP))},e.prototype.calculateSpriteMatrix=function(e,t){var n=this.activeState,r=n.sourceFrame,i=n.destinationFrame,a=t._texture.orig,o=e.set(i.width,0,0,i.height,r.x,r.y),s=t.worldTransform.copyTo(Bo.TEMP_MATRIX);return s.invert(),o.prepend(s),o.scale(1/a.width,1/a.height),o.translate(t.anchor.x,t.anchor.y),o},e.prototype.destroy=function(){this.renderer=null,this.texturePool.clear(!1)},e.prototype.getOptimalFilterTexture=function(e,t,n,r){return n===void 0&&(n=1),r===void 0&&(r=oa.NONE),this.texturePool.getOptimalTexture(e,t,n,r)},e.prototype.getFilterTexture=function(e,t,n){if(typeof e==`number`){var r=e;e=t,t=r}e||=this.activeState.renderTexture;var i=this.texturePool.getOptimalTexture(e.width,e.height,t||e.resolution,n||oa.NONE);return i.filterFrame=e.filterFrame,i},e.prototype.returnFilterTexture=function(e){this.texturePool.returnTexture(e)},e.prototype.emptyPool=function(){this.texturePool.clear(!0)},e.prototype.resize=function(){this.texturePool.setScreenSize(this.renderer.view)},e.prototype.transformAABB=function(e,t){var n=Hs[0],r=Hs[1],i=Hs[2],a=Hs[3];n.set(t.left,t.top),r.set(t.left,t.bottom),i.set(t.right,t.top),a.set(t.right,t.bottom),e.apply(n,n),e.apply(r,r),e.apply(i,i),e.apply(a,a);var o=Math.min(n.x,r.x,i.x,a.x),s=Math.min(n.y,r.y,i.y,a.y),c=Math.max(n.x,r.x,i.x,a.x),l=Math.max(n.y,r.y,i.y,a.y);t.x=o,t.y=s,t.width=c-o,t.height=l-s},e.prototype.roundFrame=function(e,t,n,r,i){if(!(e.width<=0||e.height<=0||n.width<=0||n.height<=0)){if(i){var a=i.a,o=i.b,s=i.c,c=i.d;if((Math.abs(o)>1e-4||Math.abs(s)>1e-4)&&(Math.abs(a)>1e-4||Math.abs(c)>1e-4))return}i=i?Us.copyFrom(i):Us.identity(),i.translate(-n.x,-n.y).scale(r.width/n.width,r.height/n.height).translate(r.x,r.y),this.transformAABB(i,e),e.ceil(t),this.transformAABB(i.invert(),e)}},e}(),Gs=function(){function e(e){this.renderer=e}return e.prototype.flush=function(){},e.prototype.destroy=function(){this.renderer=null},e.prototype.start=function(){},e.prototype.stop=function(){this.flush()},e.prototype.render=function(e){},e}(),Ks=function(){function e(e){this.renderer=e,this.emptyRenderer=new Gs(e),this.currentRenderer=this.emptyRenderer}return e.prototype.setObjectRenderer=function(e){this.currentRenderer!==e&&(this.currentRenderer.stop(),this.currentRenderer=e,this.currentRenderer.start())},e.prototype.flush=function(){this.setObjectRenderer(this.emptyRenderer)},e.prototype.reset=function(){this.setObjectRenderer(this.emptyRenderer)},e.prototype.copyBoundTextures=function(e,t){for(var n=this.renderer.texture.boundTextures,r=t-1;r>=0;--r)e[r]=n[r]||null,e[r]&&(e[r]._batchLocation=r)},e.prototype.boundArray=function(e,t,n,r){for(var i=e.elements,a=e.ids,o=e.count,s=0,c=0;c=0&&u=Hi.WEBGL2&&(n=e.getContext(`webgl2`,t)),n)this.webGLVersion=2;else if(this.webGLVersion=1,n=e.getContext(`webgl`,t)||e.getContext(`experimental-webgl`,t),!n)throw Error(`This browser does not support WebGL. Try using the canvas renderer`);return this.gl=n,this.getExtensions(),this.gl},e.prototype.getExtensions=function(){var e=this.gl,t={loseContext:e.getExtension(`WEBGL_lose_context`),anisotropicFiltering:e.getExtension(`EXT_texture_filter_anisotropic`),floatTextureLinear:e.getExtension(`OES_texture_float_linear`),s3tc:e.getExtension(`WEBGL_compressed_texture_s3tc`),s3tc_sRGB:e.getExtension(`WEBGL_compressed_texture_s3tc_srgb`),etc:e.getExtension(`WEBGL_compressed_texture_etc`),etc1:e.getExtension(`WEBGL_compressed_texture_etc1`),pvrtc:e.getExtension(`WEBGL_compressed_texture_pvrtc`)||e.getExtension(`WEBKIT_WEBGL_compressed_texture_pvrtc`),atc:e.getExtension(`WEBGL_compressed_texture_atc`),astc:e.getExtension(`WEBGL_compressed_texture_astc`)};this.webGLVersion===1?Object.assign(this.extensions,t,{drawBuffers:e.getExtension(`WEBGL_draw_buffers`),depthTexture:e.getExtension(`WEBGL_depth_texture`),vertexArrayObject:e.getExtension(`OES_vertex_array_object`)||e.getExtension(`MOZ_OES_vertex_array_object`)||e.getExtension(`WEBKIT_OES_vertex_array_object`),uint32ElementIndex:e.getExtension(`OES_element_index_uint`),floatTexture:e.getExtension(`OES_texture_float`),floatTextureLinear:e.getExtension(`OES_texture_float_linear`),textureHalfFloat:e.getExtension(`OES_texture_half_float`),textureHalfFloatLinear:e.getExtension(`OES_texture_half_float_linear`)}):this.webGLVersion===2&&Object.assign(this.extensions,t,{colorBufferFloat:e.getExtension(`EXT_color_buffer_float`)})},e.prototype.handleContextLost=function(e){var t=this;e.preventDefault(),setTimeout(function(){t.gl.isContextLost()&&t.extensions.loseContext&&t.extensions.loseContext.restoreContext()},0)},e.prototype.handleContextRestored=function(){this.renderer.runners.contextChange.emit(this.gl)},e.prototype.destroy=function(){var e=this.renderer.view;this.renderer=null,e.removeEventListener(`webglcontextlost`,this.handleContextLost),e.removeEventListener(`webglcontextrestored`,this.handleContextRestored),this.gl.useProgram(null),this.extensions.loseContext&&this.extensions.loseContext.loseContext()},e.prototype.postrender=function(){this.renderer.renderingToScreen&&this.gl.flush()},e.prototype.validateContext=function(e){var t=e.getContextAttributes(),n=`WebGL2RenderingContext`in globalThis&&e instanceof globalThis.WebGL2RenderingContext;n&&(this.webGLVersion=2),t&&!t.stencil&&console.warn(`Provided WebGL context does not have a stencil buffer, masks may not render correctly`);var r=n||!!e.getExtension(`OES_element_index_uint`);this.supports.uint32Indices=r,r||console.warn(`Provided WebGL context does not support 32 index buffer, complex graphics may not render correctly`)},e}(),Ys=function(){function e(e){this.framebuffer=e,this.stencil=null,this.dirtyId=-1,this.dirtyFormat=-1,this.dirtySize=-1,this.multisample=oa.NONE,this.msaaBuffer=null,this.blitFramebuffer=null,this.mipLevel=0}return e}(),Xs=new Po,Zs=function(){function e(e){this.renderer=e,this.managedFramebuffers=[],this.unknownFramebuffer=new bs(10,10),this.msaaSamples=null}return e.prototype.contextChange=function(){this.disposeAll(!0);var e=this.gl=this.renderer.gl;if(this.CONTEXT_UID=this.renderer.CONTEXT_UID,this.current=this.unknownFramebuffer,this.viewport=new Po,this.hasMRT=!0,this.writeDepthTexture=!0,this.renderer.context.webGLVersion===1){var t=this.renderer.context.extensions.drawBuffers,n=this.renderer.context.extensions.depthTexture;Aa.PREFER_ENV===Hi.WEBGL_LEGACY&&(t=null,n=null),t?e.drawBuffers=function(e){return t.drawBuffersWEBGL(e)}:(this.hasMRT=!1,e.drawBuffers=function(){}),n||(this.writeDepthTexture=!1)}else this.msaaSamples=e.getInternalformatParameter(e.RENDERBUFFER,e.RGBA8,e.SAMPLES)},e.prototype.bind=function(e,t,n){n===void 0&&(n=0);var r=this.gl;if(e){var i=e.glFramebuffers[this.CONTEXT_UID]||this.initFramebuffer(e);this.current!==e&&(this.current=e,r.bindFramebuffer(r.FRAMEBUFFER,i.framebuffer)),i.mipLevel!==n&&(e.dirtyId++,e.dirtyFormat++,i.mipLevel=n),i.dirtyId!==e.dirtyId&&(i.dirtyId=e.dirtyId,i.dirtyFormat===e.dirtyFormat?i.dirtySize!==e.dirtySize&&(i.dirtySize=e.dirtySize,this.resizeFramebuffer(e)):(i.dirtyFormat=e.dirtyFormat,i.dirtySize=e.dirtySize,this.updateFramebuffer(e,n)));for(var a=0;a>n,c=t.height>>n,l=s/t.width;this.setViewport(t.x*l,t.y*l,s,c)}else{var s=e.width>>n,c=e.height>>n;this.setViewport(0,0,s,c)}}else this.current&&(this.current=null,r.bindFramebuffer(r.FRAMEBUFFER,null)),t?this.setViewport(t.x,t.y,t.width,t.height):this.setViewport(0,0,this.renderer.width,this.renderer.height)},e.prototype.setViewport=function(e,t,n,r){var i=this.viewport;e=Math.round(e),t=Math.round(t),n=Math.round(n),r=Math.round(r),(i.width!==n||i.height!==r||i.x!==e||i.y!==t)&&(i.x=e,i.y=t,i.width=n,i.height=r,this.gl.viewport(e,t,n,r))},Object.defineProperty(e.prototype,`size`,{get:function(){return this.current?{x:0,y:0,width:this.current.width,height:this.current.height}:{x:0,y:0,width:this.renderer.width,height:this.renderer.height}},enumerable:!1,configurable:!0}),e.prototype.clear=function(e,t,n,r,i){i===void 0&&(i=Wi.COLOR|Wi.DEPTH);var a=this.gl;a.clearColor(e,t,n,r),a.clear(i)},e.prototype.initFramebuffer=function(e){var t=this.gl,n=new Ys(t.createFramebuffer());return n.multisample=this.detectSamples(e.multisample),e.glFramebuffers[this.CONTEXT_UID]=n,this.managedFramebuffers.push(e),e.disposeRunner.add(this),n},e.prototype.resizeFramebuffer=function(e){var t=this.gl,n=e.glFramebuffers[this.CONTEXT_UID];n.msaaBuffer&&(t.bindRenderbuffer(t.RENDERBUFFER,n.msaaBuffer),t.renderbufferStorageMultisample(t.RENDERBUFFER,n.multisample,t.RGBA8,e.width,e.height)),n.stencil&&(t.bindRenderbuffer(t.RENDERBUFFER,n.stencil),n.msaaBuffer?t.renderbufferStorageMultisample(t.RENDERBUFFER,n.multisample,t.DEPTH24_STENCIL8,e.width,e.height):t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_STENCIL,e.width,e.height));var r=e.colorTextures,i=r.length;t.drawBuffers||(i=Math.min(i,1));for(var a=0;a1&&this.canMultisampleFramebuffer(e)?(r.msaaBuffer=r.msaaBuffer||n.createRenderbuffer(),n.bindRenderbuffer(n.RENDERBUFFER,r.msaaBuffer),n.renderbufferStorageMultisample(n.RENDERBUFFER,r.multisample,n.RGBA8,e.width,e.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0,n.RENDERBUFFER,r.msaaBuffer)):r.msaaBuffer&&(n.deleteRenderbuffer(r.msaaBuffer),r.msaaBuffer=null,r.blitFramebuffer&&(r.blitFramebuffer.dispose(),r.blitFramebuffer=null));for(var o=[],s=0;s1&&n.drawBuffers(o),e.depthTexture){var u=this.writeDepthTexture;if(u){var d=e.depthTexture;this.renderer.texture.bind(d,0),n.framebufferTexture2D(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.TEXTURE_2D,d._glTextures[this.CONTEXT_UID].texture,t)}}(e.stencil||e.depth)&&!(e.depthTexture&&this.writeDepthTexture)?(r.stencil=r.stencil||n.createRenderbuffer(),n.bindRenderbuffer(n.RENDERBUFFER,r.stencil),r.msaaBuffer?n.renderbufferStorageMultisample(n.RENDERBUFFER,r.multisample,n.DEPTH24_STENCIL8,e.width,e.height):n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_STENCIL,e.width,e.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.RENDERBUFFER,r.stencil)):r.stencil&&(n.deleteRenderbuffer(r.stencil),r.stencil=null)},e.prototype.canMultisampleFramebuffer=function(e){return this.renderer.context.webGLVersion!==1&&e.colorTextures.length<=1&&!e.depthTexture},e.prototype.detectSamples=function(e){var t=this.msaaSamples,n=oa.NONE;if(e<=1||t===null)return n;for(var r=0;r=0&&this.managedFramebuffers.splice(i,1),e.disposeRunner.remove(this),t||(r.deleteFramebuffer(n.framebuffer),n.msaaBuffer&&r.deleteRenderbuffer(n.msaaBuffer),n.stencil&&r.deleteRenderbuffer(n.stencil)),n.blitFramebuffer&&n.blitFramebuffer.dispose()}},e.prototype.disposeAll=function(e){var t=this.managedFramebuffers;this.managedFramebuffers=[];for(var n=0;n=Hi.WEBGL2&&(t=e.getContext(`webgl2`,{})),t||(t=e.getContext(`webgl`,{})||e.getContext(`experimental-webgl`,{}),t?t.getExtension(`WEBGL_draw_buffers`):t=null),sc=t}return sc}var lc;function uc(){if(!lc){lc=ra.MEDIUM;var e=cc();if(e&&e.getShaderPrecisionFormat){var t=e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT);lc=t.precision?ra.HIGH:ra.MEDIUM}}return lc}function dc(e,t,n){if(e.substring(0,9)!==`precision`){var r=t;return t===ra.HIGH&&n!==ra.HIGH&&(r=ra.MEDIUM),`precision `+r+` float; -`+e}else if(n!==ra.HIGH&&e.substring(0,15)===`precision highp`)return e.replace(`precision highp`,`precision mediump`);return e}var fc={float:1,vec2:2,vec3:3,vec4:4,int:1,ivec2:2,ivec3:3,ivec4:4,uint:1,uvec2:2,uvec3:3,uvec4:4,bool:1,bvec2:2,bvec3:3,bvec4:4,mat2:4,mat3:9,mat4:16,sampler2D:1};function pc(e){return fc[e]}var mc=null,hc={FLOAT:`float`,FLOAT_VEC2:`vec2`,FLOAT_VEC3:`vec3`,FLOAT_VEC4:`vec4`,INT:`int`,INT_VEC2:`ivec2`,INT_VEC3:`ivec3`,INT_VEC4:`ivec4`,UNSIGNED_INT:`uint`,UNSIGNED_INT_VEC2:`uvec2`,UNSIGNED_INT_VEC3:`uvec3`,UNSIGNED_INT_VEC4:`uvec4`,BOOL:`bool`,BOOL_VEC2:`bvec2`,BOOL_VEC3:`bvec3`,BOOL_VEC4:`bvec4`,FLOAT_MAT2:`mat2`,FLOAT_MAT3:`mat3`,FLOAT_MAT4:`mat4`,SAMPLER_2D:`sampler2D`,INT_SAMPLER_2D:`sampler2D`,UNSIGNED_INT_SAMPLER_2D:`sampler2D`,SAMPLER_CUBE:`samplerCube`,INT_SAMPLER_CUBE:`samplerCube`,UNSIGNED_INT_SAMPLER_CUBE:`samplerCube`,SAMPLER_2D_ARRAY:`sampler2DArray`,INT_SAMPLER_2D_ARRAY:`sampler2DArray`,UNSIGNED_INT_SAMPLER_2D_ARRAY:`sampler2DArray`};function gc(e,t){if(!mc){var n=Object.keys(hc);mc={};for(var r=0;r0&&(t+=` -else `),n0?this.maskStack[this.maskStack.length-1]._colorMask:15;n!==t&&this.renderer.gl.colorMask((n&1)!=0,(n&2)!=0,(n&4)!=0,(n&8)!=0)},e.prototype.destroy=function(){this.renderer=null},e}(),Jc=function(){function e(e){this.renderer=e,this.maskStack=[],this.glConst=0}return e.prototype.getStackLength=function(){return this.maskStack.length},e.prototype.setMaskStack=function(e){var t=this.renderer.gl,n=this.getStackLength();this.maskStack=e;var r=this.getStackLength();r!==n&&(r===0?t.disable(this.glConst):(t.enable(this.glConst),this._useCurrent()))},e.prototype._useCurrent=function(){},e.prototype.destroy=function(){this.renderer=null,this.maskStack=null},e}(),Yc=new Bo,Xc=[],Zc=function(e){es(t,e);function t(t){var n=e.call(this,t)||this;return n.glConst=Aa.ADAPTER.getWebGLRenderingContext().SCISSOR_TEST,n}return t.prototype.getStackLength=function(){var e=this.maskStack[this.maskStack.length-1];return e?e._scissorCounter:0},t.prototype.calcScissorRect=function(e){var t;if(!e._scissorRectLocal){var n=e._scissorRect,r=e.maskObject,i=this.renderer,a=i.renderTexture,o=r.getBounds(!0,(t=Xc.pop())??new Po);this.roundFrameToPixels(o,a.current?a.current.resolution:i.resolution,a.sourceFrame,a.destinationFrame,i.projection.transform),n&&o.fit(n),e._scissorRectLocal=o}},t.isMatrixRotated=function(e){if(!e)return!1;var t=e.a,n=e.b,r=e.c,i=e.d;return(Math.abs(n)>1e-4||Math.abs(r)>1e-4)&&(Math.abs(t)>1e-4||Math.abs(i)>1e-4)},t.prototype.testScissor=function(e){var n=e.maskObject;if(!n.isFastRect||!n.isFastRect()||t.isMatrixRotated(n.worldTransform)||t.isMatrixRotated(this.renderer.projection.transform))return!1;this.calcScissorRect(e);var r=e._scissorRectLocal;return r.width>0&&r.height>0},t.prototype.roundFrameToPixels=function(e,n,r,i,a){t.isMatrixRotated(a)||(a=a?Yc.copyFrom(a):Yc.identity(),a.translate(-r.x,-r.y).scale(i.width/r.width,i.height/r.height).translate(i.x,i.y),this.renderer.filter.transformAABB(a,e),e.fit(i),e.x=Math.round(e.x*n),e.y=Math.round(e.y*n),e.width=Math.round(e.width*n),e.height=Math.round(e.height*n))},t.prototype.push=function(e){e._scissorRectLocal||this.calcScissorRect(e);var t=this.renderer.gl;e._scissorRect||t.enable(t.SCISSOR_TEST),e._scissorCounter++,e._scissorRect=e._scissorRectLocal,this._useCurrent()},t.prototype.pop=function(e){var t=this.renderer.gl;e&&Xc.push(e._scissorRectLocal),this.getStackLength()>0?this._useCurrent():t.disable(t.SCISSOR_TEST)},t.prototype._useCurrent=function(){var e=this.maskStack[this.maskStack.length-1]._scissorRect,t;t=this.renderer.renderTexture.current?e.y:this.renderer.height-e.height-e.y,this.renderer.gl.scissor(e.x,t,e.width,e.height)},t}(Jc),Qc=function(e){es(t,e);function t(t){var n=e.call(this,t)||this;return n.glConst=Aa.ADAPTER.getWebGLRenderingContext().STENCIL_TEST,n}return t.prototype.getStackLength=function(){var e=this.maskStack[this.maskStack.length-1];return e?e._stencilCounter:0},t.prototype.push=function(e){var t=e.maskObject,n=this.renderer.gl,r=e._stencilCounter;r===0&&(this.renderer.framebuffer.forceStencil(),n.clearStencil(0),n.clear(n.STENCIL_BUFFER_BIT),n.enable(n.STENCIL_TEST)),e._stencilCounter++;var i=e._colorMask;i!==0&&(e._colorMask=0,n.colorMask(!1,!1,!1,!1)),n.stencilFunc(n.EQUAL,r,4294967295),n.stencilOp(n.KEEP,n.KEEP,n.INCR),t.renderable=!0,t.render(this.renderer),this.renderer.batch.flush(),t.renderable=!1,i!==0&&(e._colorMask=i,n.colorMask((i&1)!=0,(i&2)!=0,(i&4)!=0,(i&8)!=0)),this._useCurrent()},t.prototype.pop=function(e){var t=this.renderer.gl;if(this.getStackLength()===0)t.disable(t.STENCIL_TEST);else{var n=this.maskStack.length===0?null:this.maskStack[this.maskStack.length-1],r=n?n._colorMask:15;r!==0&&(n._colorMask=0,t.colorMask(!1,!1,!1,!1)),t.stencilOp(t.KEEP,t.KEEP,t.DECR),e.renderable=!0,e.render(this.renderer),this.renderer.batch.flush(),e.renderable=!1,r!==0&&(n._colorMask=r,t.colorMask((r&1)!=0,(r&2)!=0,(r&4)!=0,(r&8)!=0)),this._useCurrent()}},t.prototype._useCurrent=function(){var e=this.renderer.gl;e.stencilFunc(e.EQUAL,this.getStackLength(),4294967295),e.stencilOp(e.KEEP,e.KEEP,e.KEEP)},t}(Jc),$c=function(){function e(e){this.renderer=e,this.destinationFrame=null,this.sourceFrame=null,this.defaultFrame=null,this.projectionMatrix=new Bo,this.transform=null}return e.prototype.update=function(e,t,n,r){this.destinationFrame=e||this.destinationFrame||this.defaultFrame,this.sourceFrame=t||this.sourceFrame||e,this.calculateProjection(this.destinationFrame,this.sourceFrame,n,r),this.transform&&this.projectionMatrix.append(this.transform);var i=this.renderer;i.globalUniforms.uniforms.projectionMatrix=this.projectionMatrix,i.globalUniforms.update(),i.shader.shader&&i.shader.syncUniformGroup(i.shader.shader.uniforms.globals)},e.prototype.calculateProjection=function(e,t,n,r){var i=this.projectionMatrix,a=r?-1:1;i.identity(),i.a=1/t.width*2,i.d=a*(1/t.height*2),i.tx=-1-t.x*i.a,i.ty=-a-t.y*i.d},e.prototype.setTransform=function(e){},e.prototype.destroy=function(){this.renderer=null},e}(),el=new Po,tl=new Po,nl=function(){function e(e){this.renderer=e,this.clearColor=e._backgroundColorRgba,this.defaultMaskStack=[],this.current=null,this.sourceFrame=new Po,this.destinationFrame=new Po,this.viewportFrame=new Po}return e.prototype.bind=function(e,t,n){e===void 0&&(e=null);var r=this.renderer;this.current=e;var i,a,o;e?(i=e.baseTexture,o=i.resolution,t||(el.width=e.frame.width,el.height=e.frame.height,t=el),n||(tl.x=e.frame.x,tl.y=e.frame.y,tl.width=t.width,tl.height=t.height,n=tl),a=i.framebuffer):(o=r.resolution,t||(el.width=r.screen.width,el.height=r.screen.height,t=el),n||(n=el,n.width=t.width,n.height=t.height));var s=this.viewportFrame;s.x=n.x*o,s.y=n.y*o,s.width=n.width*o,s.height=n.height*o,e||(s.y=r.view.height-(s.y+s.height)),s.ceil(),this.renderer.framebuffer.bind(a,s),this.renderer.projection.update(n,t,o,!a),e?this.renderer.mask.setMaskStack(i.maskStack):this.renderer.mask.setMaskStack(this.defaultMaskStack),this.sourceFrame.copyFrom(t),this.destinationFrame.copyFrom(n)},e.prototype.clear=function(e,t){this.current?e||=this.current.baseTexture.clearColor:e||=this.clearColor;var n=this.destinationFrame,r=this.current?this.current.baseTexture:this.renderer.screen,i=n.width!==r.width||n.height!==r.height;if(i){var a=this.viewportFrame,o=a.x,s=a.y,c=a.width,l=a.height;o=Math.round(o),s=Math.round(s),c=Math.round(c),l=Math.round(l),this.renderer.gl.enable(this.renderer.gl.SCISSOR_TEST),this.renderer.gl.scissor(o,s,c,l)}this.renderer.framebuffer.clear(e[0],e[1],e[2],e[3],t),i&&this.renderer.scissor.pop()},e.prototype.resize=function(){this.bind(null)},e.prototype.reset=function(){this.bind(null)},e.prototype.destroy=function(){this.renderer=null},e}();function rl(e,t,n,r,i){n.buffer.update(i)}var il={float:` - data[offset] = v; - `,vec2:` - data[offset] = v[0]; - data[offset+1] = v[1]; - `,vec3:` - data[offset] = v[0]; - data[offset+1] = v[1]; - data[offset+2] = v[2]; - - `,vec4:` - data[offset] = v[0]; - data[offset+1] = v[1]; - data[offset+2] = v[2]; - data[offset+3] = v[3]; - `,mat2:` - data[offset] = v[0]; - data[offset+1] = v[1]; - - data[offset+4] = v[2]; - data[offset+5] = v[3]; - `,mat3:` - data[offset] = v[0]; - data[offset+1] = v[1]; - data[offset+2] = v[2]; - - data[offset + 4] = v[3]; - data[offset + 5] = v[4]; - data[offset + 6] = v[5]; - - data[offset + 8] = v[6]; - data[offset + 9] = v[7]; - data[offset + 10] = v[8]; - `,mat4:` - for(var i = 0; i < 16; i++) - { - data[offset + i] = v[i]; - } - `},al={float:4,vec2:8,vec3:12,vec4:16,int:4,ivec2:8,ivec3:12,ivec4:16,uint:4,uvec2:8,uvec3:12,uvec4:16,bool:4,bvec2:8,bvec3:12,bvec4:16,mat2:16*2,mat3:16*3,mat4:16*4};function ol(e){for(var t=e.map(function(e){return{data:e,offset:0,dataLen:0,dirty:0}}),n=0,r=0,i=0,a=0;a1&&(n=Math.max(n,16)*o.data.size),o.dataLen=n,r%n!==0&&r<16){var s=r%n%16;r+=s,i+=s}r+n>16?(i=Math.ceil(i/16)*16,o.offset=i,i+=n,r=n):(o.offset=i,r+=n,i+=n)}return i=Math.ceil(i/16)*16,{uboElements:t,size:i}}function sl(e,t){var n=[];for(var r in e)t[r]&&n.push(t[r]);return n.sort(function(e,t){return e.index-t.index}),n}function cl(e,t){if(!e.autoManage)return{size:0,syncFunc:rl};for(var n=sl(e.uniforms,t),r=ol(n),i=r.uboElements,a=r.size,o=[` - var v = null; - var v2 = null; - var cv = null; - var t = 0; - var gl = renderer.gl - var index = 0; - var data = buffer.data; - `],s=0;s1){var m=pc(c.data.type),h=Math.max(al[c.data.type]/16,1),g=m/h,_=(4-g%4)%4;o.push(` - cv = ud.`+u+`.value; - v = uv.`+u+`; - offset = `+c.offset/4+`; - - t = 0; - - for(var i=0; i < `+c.data.size*h+`; i++) - { - for(var j = 0; j < `+g+`; j++) - { - data[offset++] = v[t++]; - } - offset += `+_+`; - } - - `)}else{var v=il[c.data.type];o.push(` - cv = ud.`+u+`.value; - v = uv.`+u+`; - offset = `+c.offset/4+`; - `+v+`; - `)}}return o.push(` - renderer.buffer.update(buffer); - `),{size:a,syncFunc:Function(`ud`,`uv`,`renderer`,`syncData`,`buffer`,o.join(` -`))}}var ll=function(){function e(){}return e}(),ul=function(){function e(e,t){this.program=e,this.uniformData=t,this.uniformGroups={},this.uniformDirtyGroups={},this.uniformBufferBindings={}}return e.prototype.destroy=function(){this.uniformData=null,this.uniformGroups=null,this.uniformDirtyGroups=null,this.uniformBufferBindings=null,this.program=null},e}();function dl(e,t){for(var n={},r=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES),i=0;it?1:-1});for(var o=0;o>=1,n++;this.stateId=e.data}for(var n=0;nthis.checkCountMax&&(this.checkCount=0,this.run())))},e.prototype.run=function(){for(var e=this.renderer.texture,t=e.managedTextures,n=!1,r=0;rthis.maxIdle&&(e.destroyTexture(i,!0),t[r]=null,n=!0)}if(n){for(var a=0,r=0;r=0;r--)this.unload(e.children[r])},e.prototype.destroy=function(){this.renderer=null},e}();function El(e){var t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C;return C=`WebGL2RenderingContext`in globalThis&&e instanceof globalThis.WebGL2RenderingContext?(t={},t[Yi.UNSIGNED_BYTE]=(n={},n[qi.RGBA]=e.RGBA8,n[qi.RGB]=e.RGB8,n[qi.RG]=e.RG8,n[qi.RED]=e.R8,n[qi.RGBA_INTEGER]=e.RGBA8UI,n[qi.RGB_INTEGER]=e.RGB8UI,n[qi.RG_INTEGER]=e.RG8UI,n[qi.RED_INTEGER]=e.R8UI,n[qi.ALPHA]=e.ALPHA,n[qi.LUMINANCE]=e.LUMINANCE,n[qi.LUMINANCE_ALPHA]=e.LUMINANCE_ALPHA,n),t[Yi.BYTE]=(r={},r[qi.RGBA]=e.RGBA8_SNORM,r[qi.RGB]=e.RGB8_SNORM,r[qi.RG]=e.RG8_SNORM,r[qi.RED]=e.R8_SNORM,r[qi.RGBA_INTEGER]=e.RGBA8I,r[qi.RGB_INTEGER]=e.RGB8I,r[qi.RG_INTEGER]=e.RG8I,r[qi.RED_INTEGER]=e.R8I,r),t[Yi.UNSIGNED_SHORT]=(i={},i[qi.RGBA_INTEGER]=e.RGBA16UI,i[qi.RGB_INTEGER]=e.RGB16UI,i[qi.RG_INTEGER]=e.RG16UI,i[qi.RED_INTEGER]=e.R16UI,i[qi.DEPTH_COMPONENT]=e.DEPTH_COMPONENT16,i),t[Yi.SHORT]=(a={},a[qi.RGBA_INTEGER]=e.RGBA16I,a[qi.RGB_INTEGER]=e.RGB16I,a[qi.RG_INTEGER]=e.RG16I,a[qi.RED_INTEGER]=e.R16I,a),t[Yi.UNSIGNED_INT]=(o={},o[qi.RGBA_INTEGER]=e.RGBA32UI,o[qi.RGB_INTEGER]=e.RGB32UI,o[qi.RG_INTEGER]=e.RG32UI,o[qi.RED_INTEGER]=e.R32UI,o[qi.DEPTH_COMPONENT]=e.DEPTH_COMPONENT24,o),t[Yi.INT]=(s={},s[qi.RGBA_INTEGER]=e.RGBA32I,s[qi.RGB_INTEGER]=e.RGB32I,s[qi.RG_INTEGER]=e.RG32I,s[qi.RED_INTEGER]=e.R32I,s),t[Yi.FLOAT]=(c={},c[qi.RGBA]=e.RGBA32F,c[qi.RGB]=e.RGB32F,c[qi.RG]=e.RG32F,c[qi.RED]=e.R32F,c[qi.DEPTH_COMPONENT]=e.DEPTH_COMPONENT32F,c),t[Yi.HALF_FLOAT]=(l={},l[qi.RGBA]=e.RGBA16F,l[qi.RGB]=e.RGB16F,l[qi.RG]=e.RG16F,l[qi.RED]=e.R16F,l),t[Yi.UNSIGNED_SHORT_5_6_5]=(u={},u[qi.RGB]=e.RGB565,u),t[Yi.UNSIGNED_SHORT_4_4_4_4]=(d={},d[qi.RGBA]=e.RGBA4,d),t[Yi.UNSIGNED_SHORT_5_5_5_1]=(f={},f[qi.RGBA]=e.RGB5_A1,f),t[Yi.UNSIGNED_INT_2_10_10_10_REV]=(p={},p[qi.RGBA]=e.RGB10_A2,p[qi.RGBA_INTEGER]=e.RGB10_A2UI,p),t[Yi.UNSIGNED_INT_10F_11F_11F_REV]=(m={},m[qi.RGB]=e.R11F_G11F_B10F,m),t[Yi.UNSIGNED_INT_5_9_9_9_REV]=(h={},h[qi.RGB]=e.RGB9_E5,h),t[Yi.UNSIGNED_INT_24_8]=(g={},g[qi.DEPTH_STENCIL]=e.DEPTH24_STENCIL8,g),t[Yi.FLOAT_32_UNSIGNED_INT_24_8_REV]=(_={},_[qi.DEPTH_STENCIL]=e.DEPTH32F_STENCIL8,_),t):(v={},v[Yi.UNSIGNED_BYTE]=(y={},y[qi.RGBA]=e.RGBA,y[qi.RGB]=e.RGB,y[qi.ALPHA]=e.ALPHA,y[qi.LUMINANCE]=e.LUMINANCE,y[qi.LUMINANCE_ALPHA]=e.LUMINANCE_ALPHA,y),v[Yi.UNSIGNED_SHORT_5_6_5]=(b={},b[qi.RGB]=e.RGB,b),v[Yi.UNSIGNED_SHORT_4_4_4_4]=(x={},x[qi.RGBA]=e.RGBA,x),v[Yi.UNSIGNED_SHORT_5_5_5_1]=(S={},S[qi.RGBA]=e.RGBA,S),v),C}var Dl=function(){function e(e){this.texture=e,this.width=-1,this.height=-1,this.dirtyId=-1,this.dirtyStyleId=-1,this.mipmap=!1,this.wrapMode=33071,this.type=Yi.UNSIGNED_BYTE,this.internalFormat=qi.RGBA,this.samplerType=0}return e}(),Ol=function(){function e(e){this.renderer=e,this.boundTextures=[],this.currentLocation=-1,this.managedTextures=[],this._unknownBoundTextures=!1,this.unknownTexture=new cs,this.hasIntegerTextures=!1}return e.prototype.contextChange=function(){var e=this.gl=this.renderer.gl;this.CONTEXT_UID=this.renderer.CONTEXT_UID,this.webGLVersion=this.renderer.context.webGLVersion,this.internalFormats=El(e);var t=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS);this.boundTextures.length=t;for(var n=0;n=0;--a){var o=n[a];if(o){var s=o._glTextures[i];s.samplerType!==Xi.FLOAT&&this.renderer.texture.unbind(o)}}},e.prototype.initTexture=function(e){var t=new Dl(this.gl.createTexture());return t.dirtyId=-1,e._glTextures[this.CONTEXT_UID]=t,this.managedTextures.push(e),e.on(`dispose`,this.destroyTexture,this),t},e.prototype.initTextureType=function(e,t){var n,r;t.internalFormat=(r=(n=this.internalFormats[e.type])?.[e.format])??e.format,this.webGLVersion===2&&e.type===Yi.HALF_FLOAT?t.type=this.gl.HALF_FLOAT:t.type=e.type},e.prototype.updateTexture=function(e){var t=e._glTextures[this.CONTEXT_UID];if(t){var n=this.renderer;if(this.initTextureType(e,t),e.resource&&e.resource.upload(n,e,t))t.samplerType!==Xi.FLOAT&&(this.hasIntegerTextures=!0);else{var r=e.realWidth,i=e.realHeight,a=n.gl;(t.width!==r||t.height!==i||t.dirtyId<0)&&(t.width=r,t.height=i,a.texImage2D(e.target,0,t.internalFormat,r,i,0,e.format,t.type,null))}e.dirtyStyleId!==t.dirtyStyleId&&this.updateTextureStyle(e),t.dirtyId=e.dirtyId}},e.prototype.destroyTexture=function(e,t){var n=this.gl;if(e=e.castToBaseTexture(),e._glTextures[this.CONTEXT_UID]&&(this.unbind(e),n.deleteTexture(e._glTextures[this.CONTEXT_UID].texture),e.off(`dispose`,this.destroyTexture,this),delete e._glTextures[this.CONTEXT_UID],!t)){var r=this.managedTextures.indexOf(e);r!==-1&&oo(this.managedTextures,r,1)}},e.prototype.updateTextureStyle=function(e){var t=e._glTextures[this.CONTEXT_UID];t&&((e.mipmap===$i.POW2||this.webGLVersion!==2)&&!e.isPowerOfTwo?t.mipmap=!1:t.mipmap=e.mipmap>=1,this.webGLVersion!==2&&!e.isPowerOfTwo?t.wrapMode=Qi.CLAMP:t.wrapMode=e.wrapMode,e.resource&&e.resource.style(this.renderer,e,t)||this.setStyle(e,t),t.dirtyStyleId=e.dirtyStyleId)},e.prototype.setStyle=function(e,t){var n=this.gl;if(t.mipmap&&e.mipmap!==$i.ON_MANUAL&&n.generateMipmap(e.target),n.texParameteri(e.target,n.TEXTURE_WRAP_S,t.wrapMode),n.texParameteri(e.target,n.TEXTURE_WRAP_T,t.wrapMode),t.mipmap){n.texParameteri(e.target,n.TEXTURE_MIN_FILTER,e.scaleMode===Zi.LINEAR?n.LINEAR_MIPMAP_LINEAR:n.NEAREST_MIPMAP_NEAREST);var r=this.renderer.context.extensions.anisotropicFiltering;if(r&&e.anisotropicLevel>0&&e.scaleMode===Zi.LINEAR){var i=Math.min(e.anisotropicLevel,n.getParameter(r.MAX_TEXTURE_MAX_ANISOTROPY_EXT));n.texParameterf(e.target,r.TEXTURE_MAX_ANISOTROPY_EXT,i)}}else n.texParameteri(e.target,n.TEXTURE_MIN_FILTER,e.scaleMode===Zi.LINEAR?n.LINEAR:n.NEAREST);n.texParameteri(e.target,n.TEXTURE_MAG_FILTER,e.scaleMode===Zi.LINEAR?n.LINEAR:n.NEAREST)},e.prototype.destroy=function(){this.renderer=null},e}(),kl={__proto__:null,FilterSystem:Ws,BatchSystem:Ks,ContextSystem:Js,FramebufferSystem:Zs,GeometrySystem:$s,MaskSystem:qc,ScissorSystem:Zc,StencilSystem:Qc,ProjectionSystem:$c,RenderTextureSystem:nl,ShaderSystem:gl,StateSystem:wl,TextureGCSystem:Tl,TextureSystem:Ol},Al=new Bo,jl=function(e){es(t,e);function t(t,n){t===void 0&&(t=Ui.UNKNOWN);var r=e.call(this)||this;return n=Object.assign({},Aa.RENDER_OPTIONS,n),r.options=n,r.type=t,r.screen=new Po(0,0,n.width,n.height),r.view=n.view||Aa.ADAPTER.createCanvas(),r.resolution=n.resolution||Aa.RESOLUTION,r.useContextAlpha=n.useContextAlpha,r.autoDensity=!!n.autoDensity,r.preserveDrawingBuffer=n.preserveDrawingBuffer,r.clearBeforeRender=n.clearBeforeRender,r._backgroundColor=0,r._backgroundColorRgba=[0,0,0,1],r._backgroundColorString=`#000000`,r.backgroundColor=n.backgroundColor||r._backgroundColor,r.backgroundAlpha=n.backgroundAlpha,n.transparent!==void 0&&(uo(`6.0.0`,`Option transparent is deprecated, please use backgroundAlpha instead.`),r.useContextAlpha=n.transparent,r.backgroundAlpha=n.transparent?0:1),r._lastObjectRendered=null,r.plugins={},r}return t.prototype.initPlugins=function(e){for(var t in e)this.plugins[t]=new e[t](this)},Object.defineProperty(t.prototype,`width`,{get:function(){return this.view.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`height`,{get:function(){return this.view.height},enumerable:!1,configurable:!0}),t.prototype.resize=function(e,t){this.view.width=Math.round(e*this.resolution),this.view.height=Math.round(t*this.resolution);var n=this.view.width/this.resolution,r=this.view.height/this.resolution;this.screen.width=n,this.screen.height=r,this.autoDensity&&(this.view.style.width=n+`px`,this.view.style.height=r+`px`),this.emit(`resize`,n,r)},t.prototype.generateTexture=function(e,t,n,r){t===void 0&&(t={}),typeof t==`number`&&(uo(`6.1.0`,`generateTexture options (scaleMode, resolution, region) are now object options.`),t={scaleMode:t,resolution:n,region:r});var i=t.region,a=ns(t,[`region`]);r=i||e.getLocalBounds(null,!0),r.width===0&&(r.width=1),r.height===0&&(r.height=1);var o=Es.create(ts({width:r.width,height:r.height},a));return Al.tx=-r.x,Al.ty=-r.y,this.render(e,{renderTexture:o,clear:!1,transform:Al,skipUpdateTransform:!!e.parent}),o},t.prototype.destroy=function(e){for(var t in this.plugins)this.plugins[t].destroy(),this.plugins[t]=null;e&&this.view.parentNode&&this.view.parentNode.removeChild(this.view);var n=this;n.plugins=null,n.type=Ui.UNKNOWN,n.view=null,n.screen=null,n._tempDisplayObjectParent=null,n.options=null,this._backgroundColorRgba=null,this._backgroundColorString=null,this._lastObjectRendered=null},Object.defineProperty(t.prototype,`backgroundColor`,{get:function(){return this._backgroundColor},set:function(e){this._backgroundColor=e,this._backgroundColorString=Za(e),Xa(e,this._backgroundColorRgba)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`backgroundAlpha`,{get:function(){return this._backgroundColorRgba[3]},set:function(e){this._backgroundColorRgba[3]=e},enumerable:!1,configurable:!0}),t}(Va.default),Ml=function(){function e(e){this.buffer=e||null,this.updateID=-1,this.byteLength=-1,this.refCount=0}return e}(),Nl=function(){function e(e){this.renderer=e,this.managedBuffers={},this.boundBufferBases={}}return e.prototype.destroy=function(){this.renderer=null},e.prototype.contextChange=function(){this.disposeAll(!0),this.gl=this.renderer.gl,this.CONTEXT_UID=this.renderer.CONTEXT_UID},e.prototype.bind=function(e){var t=this,n=t.gl,r=t.CONTEXT_UID,i=e._glBuffers[r]||this.createGLBuffer(e);n.bindBuffer(e.type,i.buffer)},e.prototype.bindBufferBase=function(e,t){var n=this,r=n.gl,i=n.CONTEXT_UID;if(this.boundBufferBases[t]!==e){var a=e._glBuffers[i]||this.createGLBuffer(e);this.boundBufferBases[t]=e,r.bindBufferBase(r.UNIFORM_BUFFER,t,a.buffer)}},e.prototype.bindBufferRange=function(e,t,n){var r=this,i=r.gl,a=r.CONTEXT_UID;n||=0;var o=e._glBuffers[a]||this.createGLBuffer(e);i.bindBufferRange(i.UNIFORM_BUFFER,t||0,o.buffer,n*256,256)},e.prototype.update=function(e){var t=this,n=t.gl,r=t.CONTEXT_UID,i=e._glBuffers[r];if(e._updateID!==i.updateID)if(i.updateID=e._updateID,n.bindBuffer(e.type,i.buffer),i.byteLength>=e.data.byteLength)n.bufferSubData(e.type,0,e.data);else{var a=e.static?n.STATIC_DRAW:n.DYNAMIC_DRAW;i.byteLength=e.data.byteLength,n.bufferData(e.type,e.data,a)}},e.prototype.dispose=function(e,t){if(this.managedBuffers[e.id]){delete this.managedBuffers[e.id];var n=e._glBuffers[this.CONTEXT_UID],r=this.gl;e.disposeRunner.remove(this),n&&(t||r.deleteBuffer(n.buffer),delete e._glBuffers[this.CONTEXT_UID])}},e.prototype.disposeAll=function(e){for(var t=Object.keys(this.managedBuffers),n=0;n=oa.HIGH?this.multisample=oa.HIGH:t>=oa.MEDIUM?this.multisample=oa.MEDIUM:t>=oa.LOW?this.multisample=oa.LOW:this.multisample=oa.NONE},t.prototype.addSystem=function(e,t){var n=new e(this);if(this[t])throw Error(`Whoops! The name "`+t+`" is already in use`);for(var r in this[t]=n,this.runners)this.runners[r].add(n);return this},t.prototype.render=function(e,t){var n,r,i,a;if(t&&(t instanceof Es?(uo(`6.0.0`,`Renderer#render arguments changed, use options instead.`),n=t,r=arguments[2],i=arguments[3],a=arguments[4]):(n=t.renderTexture,r=t.clear,i=t.transform,a=t.skipUpdateTransform)),this.renderingToScreen=!n,this.runners.prerender.emit(),this.emit(`prerender`),this.projection.transform=i,!this.context.isLost){if(n||(this._lastObjectRendered=e),!a){var o=e.enableTempParent();e.updateTransform(),e.disableTempParent(o)}this.renderTexture.bind(n),this.batch.currentRenderer.start(),(r===void 0?this.clearBeforeRender:r)&&this.renderTexture.clear(),e.render(this),this.batch.currentRenderer.flush(),n&&n.baseTexture.update(),this.runners.postrender.emit(),this.projection.transform=null,this.emit(`postrender`)}},t.prototype.generateTexture=function(t,n,r,i){n===void 0&&(n={});var a=e.prototype.generateTexture.call(this,t,n,r,i);return this.framebuffer.blit(),a},t.prototype.resize=function(t,n){e.prototype.resize.call(this,t,n),this.runners.resize.emit(this.screen.height,this.screen.width)},t.prototype.reset=function(){return this.runners.reset.emit(),this},t.prototype.clear=function(){this.renderTexture.bind(),this.renderTexture.clear()},t.prototype.destroy=function(t){for(var n in this.runners.destroy.emit(),this.runners)this.runners[n].destroy();e.prototype.destroy.call(this,t),this.gl=null},Object.defineProperty(t.prototype,`extract`,{get:function(){return uo(`6.0.0`,`Renderer#extract has been deprecated, please use Renderer#plugins.extract instead.`),this.plugins.extract},enumerable:!1,configurable:!0}),t.registerPlugin=function(e,t){uo(`6.5.0`,`Renderer.registerPlugin() has been deprecated, please use extensions.add() instead.`),So.add({name:e,type:bo.RendererPlugin,ref:t})},t.__plugins={},t}(jl);So.handleByMap(bo.RendererPlugin,Pl.__plugins);function Fl(e){return Pl.create(e)}var Il=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Ll=Il,Rl=function(){function e(e){uo(`6.1.0`,`System class is deprecated, implemement ISystem interface instead.`),this.renderer=e}return e.prototype.destroy=function(){this.renderer=null},e}(),zl=function(){function e(){this.texArray=null,this.blend=0,this.type=Ki.TRIANGLES,this.start=0,this.size=0,this.data=null}return e}(),Bl=function(){function e(){this.elements=[],this.ids=[],this.count=0}return e.prototype.clear=function(){for(var e=0;ethis.size&&this.flush(),this._vertexCount+=e.vertexData.length/2,this._indexCount+=e.indices.length,this._bufferedTextures[this._bufferSize]=e._texture.baseTexture,this._bufferedElements[this._bufferSize++]=e)},t.prototype.buildTexturesAndDrawCalls=function(){var e=this,n=e._bufferedTextures,r=e.MAX_TEXTURES,i=t._textureArrayPool,a=this.renderer.batch,o=this._tempBoundTextures,s=this.renderer.textureGC.count,c=++cs._globalBatch,l=0,u=i[0],d=0;a.copyBoundTextures(o,r);for(var f=0;f=r&&(a.boundArray(u,o,c,r),this.buildDrawCalls(u,d,f),d=f,u=i[++l],++c),p._batchEnabled=c,p.touched=s,u.elements[u.count++]=p)}u.count>0&&(a.boundArray(u,o,c,r),this.buildDrawCalls(u,d,this._bufferSize),++l,++c);for(var f=0;f0&&(t+=` -else `),nthis.maxX||this.minY>this.maxY},e.prototype.clear=function(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0},e.prototype.getRectangle=function(e){return this.minX>this.maxX||this.minY>this.maxY?Po.EMPTY:(e||=new Po(0,0,1,1),e.x=this.minX,e.y=this.minY,e.width=this.maxX-this.minX,e.height=this.maxY-this.minY,e)},e.prototype.addPoint=function(e){this.minX=Math.min(this.minX,e.x),this.maxX=Math.max(this.maxX,e.x),this.minY=Math.min(this.minY,e.y),this.maxY=Math.max(this.maxY,e.y)},e.prototype.addPointMatrix=function(e,t){var n=e.a,r=e.b,i=e.c,a=e.d,o=e.tx,s=e.ty,c=n*t.x+i*t.y+o,l=r*t.x+a*t.y+s;this.minX=Math.min(this.minX,c),this.maxX=Math.max(this.maxX,c),this.minY=Math.min(this.minY,l),this.maxY=Math.max(this.maxY,l)},e.prototype.addQuad=function(e){var t=this.minX,n=this.minY,r=this.maxX,i=this.maxY,a=e[0],o=e[1];t=ar?a:r,i=o>i?o:i,a=e[2],o=e[3],t=ar?a:r,i=o>i?o:i,a=e[4],o=e[5],t=ar?a:r,i=o>i?o:i,a=e[6],o=e[7],t=ar?a:r,i=o>i?o:i,this.minX=t,this.minY=n,this.maxX=r,this.maxY=i},e.prototype.addFrame=function(e,t,n,r,i){this.addFrameMatrix(e.worldTransform,t,n,r,i)},e.prototype.addFrameMatrix=function(e,t,n,r,i){var a=e.a,o=e.b,s=e.c,c=e.d,l=e.tx,u=e.ty,d=this.minX,f=this.minY,p=this.maxX,m=this.maxY,h=a*t+s*n+l,g=o*t+c*n+u;d=hp?h:p,m=g>m?g:m,h=a*r+s*n+l,g=o*r+c*n+u,d=hp?h:p,m=g>m?g:m,h=a*t+s*i+l,g=o*t+c*i+u,d=hp?h:p,m=g>m?g:m,h=a*r+s*i+l,g=o*r+c*i+u,d=hp?h:p,m=g>m?g:m,this.minX=d,this.minY=f,this.maxX=p,this.maxY=m},e.prototype.addVertexData=function(e,t,n){for(var r=this.minX,i=this.minY,a=this.maxX,o=this.maxY,s=t;sa?c:a,o=l>o?l:o}this.minX=r,this.minY=i,this.maxX=a,this.maxY=o},e.prototype.addVertices=function(e,t,n,r){this.addVerticesMatrix(e.worldTransform,t,n,r)},e.prototype.addVerticesMatrix=function(e,t,n,r,i,a){i===void 0&&(i=0),a===void 0&&(a=i);for(var o=e.a,s=e.b,c=e.c,l=e.d,u=e.tx,d=e.ty,f=this.minX,p=this.minY,m=this.maxX,h=this.maxY,g=n;gr?e.maxX:r,this.maxY=e.maxY>i?e.maxY:i},e.prototype.addBoundsMask=function(e,t){var n=e.minX>t.minX?e.minX:t.minX,r=e.minY>t.minY?e.minY:t.minY,i=e.maxXc?i:c,this.maxY=a>l?a:l}},e.prototype.addBoundsMatrix=function(e,t){this.addFrameMatrix(t,e.minX,e.minY,e.maxX,e.maxY)},e.prototype.addBoundsArea=function(e,t){var n=e.minX>t.x?e.minX:t.x,r=e.minY>t.y?e.minY:t.y,i=e.maxXc?i:c,this.maxY=a>l?a:l}},e.prototype.pad=function(e,t){e===void 0&&(e=0),t===void 0&&(t=e),this.isEmpty()||(this.minX-=e,this.maxX+=e,this.minY-=t,this.maxY+=t)},e.prototype.addFramePad=function(e,t,n,r,i,a){e-=i,t-=a,n+=i,r+=a,this.minX=this.minXn?this.maxX:n,this.minY=this.minYr?this.maxY:r},e}(),tu=function(e,t){return tu=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},tu(e,t)};function nu(e,t){tu(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var ru=function(e){nu(t,e);function t(){var t=e.call(this)||this;return t.tempDisplayObjectParent=null,t.transform=new Xo,t.alpha=1,t.visible=!0,t.renderable=!0,t.cullable=!1,t.cullArea=null,t.parent=null,t.worldAlpha=1,t._lastSortedIndex=0,t._zIndex=0,t.filterArea=null,t.filters=null,t._enabledFilters=null,t._bounds=new eu,t._localBounds=null,t._boundsID=0,t._boundsRect=null,t._localBoundsRect=null,t._mask=null,t._maskRefCount=0,t._destroyed=!1,t.isSprite=!1,t.isMask=!1,t}return t.mixin=function(e){for(var n=Object.keys(e),r=0;r1)for(var r=0;rthis.children.length)throw Error(e+`addChildAt: The index `+t+` supplied is out of bounds `+this.children.length);return e.parent&&e.parent.removeChild(e),e.parent=this,this.sortDirty=!0,e.transform._parentID=-1,this.children.splice(t,0,e),this._boundsID++,this.onChildrenChange(t),e.emit(`added`,this),this.emit(`childAdded`,e,this,t),e},t.prototype.swapChildren=function(e,t){if(e!==t){var n=this.getChildIndex(e),r=this.getChildIndex(t);this.children[n]=t,this.children[r]=e,this.onChildrenChange(n=this.children.length)throw Error(`The index `+t+` supplied is out of bounds `+this.children.length);var n=this.getChildIndex(e);oo(this.children,n,1),this.children.splice(t,0,e),this.onChildrenChange(t)},t.prototype.getChildAt=function(e){if(e<0||e>=this.children.length)throw Error(`getChildAt: Index (`+e+`) does not exist.`);return this.children[e]},t.prototype.removeChild=function(){for(var e=arguments,t=[],n=0;n1)for(var r=0;r0&&i<=r){a=this.children.splice(n,i);for(var o=0;o1&&this.children.sort(au),this.sortDirty=!1},t.prototype.updateTransform=function(){this.sortableChildren&&this.sortDirty&&this.sortChildren(),this._boundsID++,this.transform.updateTransform(this.parent.transform),this.worldAlpha=this.alpha*this.parent.worldAlpha;for(var e=0,t=this.children.length;e0&&n.height>0){var r,i;if(this.cullArea?(r=this.cullArea,i=this.worldTransform):this._render!==t.prototype._render&&(r=this.getBounds(!0)),r&&n.intersects(r,i))this._render(e);else if(this.cullArea)return;for(var a=0,o=this.children.length;anew Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),du=class e{constructor(){this._breathParameters=[],this._currentTime=0}static create(){return new e}setParameters(e){this._breathParameters=e}getParameters(){return this._breathParameters}updateParameters(e,t){this._currentTime+=t;let n=this._currentTime*2*3.14159;for(let t=0;t=1&&(r=1,this._blinkingState=hu.EyeState_Closed,this._stateStartTimeSeconds=this._userTimeSeconds),n=1-r;break;case hu.EyeState_Closed:r=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._closedSeconds,r>=1&&(this._blinkingState=hu.EyeState_Opening,this._stateStartTimeSeconds=this._userTimeSeconds),n=0;break;case hu.EyeState_Opening:r=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._openingSeconds,r>=1&&(r=1,this._blinkingState=hu.EyeState_Interval,this._nextBlinkingTime=this.determinNextBlinkingTiming()),n=r;break;case hu.EyeState_Interval:this._nextBlinkingTime(e[e.EyeState_First=0]=`EyeState_First`,e[e.EyeState_Interval=1]=`EyeState_Interval`,e[e.EyeState_Closing=2]=`EyeState_Closing`,e[e.EyeState_Closed=3]=`EyeState_Closed`,e[e.EyeState_Opening=4]=`EyeState_Opening`,e))(hu||{});const gu=.001,_u=.5;var vu=class e{static create(t){let n=new e;typeof t.FadeInTime==`number`&&(n._fadeTimeSeconds=t.FadeInTime,n._fadeTimeSeconds<=0&&(n._fadeTimeSeconds=_u));let r=t.Groups,i=r.length;for(let e=0;egu){if(i>=0)break;i=o,a=e.getPartOpacityByIndex(n),a+=t/this._fadeTimeSeconds,a>1&&(a=1)}}i<0&&(i=0,a=1);for(let t=n;ts&&(r=1-s/(1-a)),t>r&&(t=r),e.setPartOpacityByIndex(n,t)}}}constructor(){this._fadeTimeSeconds=_u,this._lastModel=void 0,this._partGroups=[],this._partGroupCounts=[]}},yu=class e{constructor(e){this.parameterIndex=0,this.partIndex=0,this.partId=``,this.link=[],e!=null&&this.assignment(e)}assignment(e){return this.partId=e.partId,this.link=e.link.map(e=>e.clone()),this}initialize(e){this.parameterIndex=e.getParameterIndex(this.partId),this.partIndex=e.getPartIndex(this.partId),e.setParameterValueByIndex(this.parameterIndex,1)}clone(){let t=new e;return t.partId=this.partId,t.parameterIndex=this.parameterIndex,t.partIndex=this.partIndex,t.link=this.link.map(e=>e.clone()),t}},bu=class e{constructor(e,t){this.x=e||0,this.y=t||0}add(t){let n=new e(0,0);return n.x=this.x+t.x,n.y=this.y+t.y,n}substract(t){let n=new e(0,0);return n.x=this.x-t.x,n.y=this.y-t.y,n}multiply(t){let n=new e(0,0);return n.x=this.x*t.x,n.y=this.y*t.y,n}multiplyByScaler(t){return this.multiply(new e(t,t))}division(t){let n=new e(0,0);return n.x=this.x/t.x,n.y=this.y/t.y,n}divisionByScalar(t){return this.division(new e(t,t))}getLength(){return Math.sqrt(this.x*this.x+this.y*this.y)}getDistanceWith(e){return Math.sqrt((this.x-e.x)*(this.x-e.x)+(this.y-e.y)*(this.y-e.y))}dot(e){return this.x*e.x+this.y*e.y}normalize(){let e=(this.x*this.x+this.y*this.y)**.5;this.x/=e,this.y/=e}isEqual(e){return this.x==e.x&&this.y==e.y}isNotEqual(e){return!this.isEqual(e)}};const xu=class{static range(e,t,n){return en&&(e=n),e}static sin(e){return Math.sin(e)}static cos(e){return Math.cos(e)}static abs(e){return Math.abs(e)}static sqrt(e){return Math.sqrt(e)}static cbrt(e){if(e===0)return e;let t=e,n=t<0;n&&(t=-t);let r;return t===1/0?r=1/0:(r=Math.exp(Math.log(t)/3),r=(t/(r*r)+2*r)/3),n?-r:r}static getEasingSine(e){return e<0?0:e>1?1:.5-.5*this.cos(e*Math.PI)}static max(e,t){return e>t?e:t}static min(e,t){return e>t?t:e}static degreesToRadian(e){return e/180*Math.PI}static radianToDegrees(e){return e*180/Math.PI}static directionToRadian(e,t){let n=Math.atan2(t.y,t.x),r=Math.atan2(e.y,e.x),i=n-r;for(;i<-Math.PI;)i+=Math.PI*2;for(;i>Math.PI;)i-=Math.PI*2;return i}static directionToDegrees(e,t){let n=this.directionToRadian(e,t),r=this.radianToDegrees(n);return t.x-e.x>0&&(r=-r),r}static radianToDirection(e){let t=new bu;return t.x=this.sin(e),t.y=this.cos(e),t}static quadraticEquation(e,t,n){return this.abs(e)1&&(e=1),t<0?t=0:t>1&&(t=1),n<0?n=0:n>1&&(n=1),r<0?r=0:r>1&&(r=1),this._modelColor.R=e,this._modelColor.G=t,this._modelColor.B=n,this._modelColor.A=r}getModelColor(){return Object.assign({},this._modelColor)}setIsPremultipliedAlpha(e){this._isPremultipliedAlpha=e}isPremultipliedAlpha(){return this._isPremultipliedAlpha}setIsCulling(e){this._isCulling=e}isCulling(){return this._isCulling}setAnisotropy(e){this._anisortopy=e}getAnisotropy(){return this._anisortopy}getModel(){return this._model}constructor(){this._isCulling=!1,this._isPremultipliedAlpha=!1,this._anisortopy=0,this._modelColor=new Eu,this._mvpMatrix4x4=new Cu,this._mvpMatrix4x4.loadIdentity()}},Tu=(e=>(e[e.CubismBlendMode_Normal=0]=`CubismBlendMode_Normal`,e[e.CubismBlendMode_Additive=1]=`CubismBlendMode_Additive`,e[e.CubismBlendMode_Multiplicative=2]=`CubismBlendMode_Multiplicative`,e))(Tu||{}),Eu=class{constructor(){this.R=1,this.G=1,this.B=1,this.A=1}};let Du=!1,Ou=!1,ku;const Au={vertexOffset:0,vertexStep:2};var ju=class{static startUp(e){if(Du)return Fu(`CubismFramework.startUp() is already done.`),Du;if(Live2DCubismCore._isStarted)return Du=!0,!0;if(Live2DCubismCore._isStarted=!0,ku=e,ku&&Live2DCubismCore.Logging.csmSetLogFunction(ku.logFunction),Du=!0,Du){let e=Live2DCubismCore.Version.csmGetVersion(),t=(e&4278190080)>>24,n=(e&16711680)>>16,r=e&65535,i=e;Fu(`Live2D Cubism Core version: {0}.{1}.{2} ({3})`,(`00`+t).slice(-2),(`00`+n).slice(-2),(`0000`+r).slice(-4),i)}return Fu(`CubismFramework.startUp() is complete.`),Du}static cleanUp(){Du=!1,Ou=!1,ku=void 0}static initialize(){if(!Du){Iu(`CubismFramework is not started.`);return}if(Ou){Iu(`CubismFramework.initialize() skipped, already initialized.`);return}Ou=!0,Fu(`CubismFramework.initialize() is complete.`)}static dispose(){if(!Du){Iu(`CubismFramework is not started.`);return}if(!Ou){Iu(`CubismFramework.dispose() skipped, not initialized.`);return}wu.staticRelease(),Ou=!1,Fu(`CubismFramework.dispose() is complete.`)}static isStarted(){return Du}static isInitialized(){return Ou}static coreLogFunction(e){Live2DCubismCore.Logging.csmGetLogFunction()&&Live2DCubismCore.Logging.csmGetLogFunction()(e)}static getLoggingLevel(){return ku==null?Mu.LogLevel_Off:ku.loggingLevel}constructor(){}},Mu=(e=>(e[e.LogLevel_Verbose=0]=`LogLevel_Verbose`,e[e.LogLevel_Debug=1]=`LogLevel_Debug`,e[e.LogLevel_Info=2]=`LogLevel_Info`,e[e.LogLevel_Warning=3]=`LogLevel_Warning`,e[e.LogLevel_Error=4]=`LogLevel_Error`,e[e.LogLevel_Off=5]=`LogLevel_Off`,e))(Mu||{});const Nu=()=>{};function Pu(e,...t){Ru.print(Mu.LogLevel_Debug,`[CSM][D]`+e+` -`,t)}function Fu(e,...t){Ru.print(Mu.LogLevel_Info,`[CSM][I]`+e+` -`,t)}function Iu(e,...t){Ru.print(Mu.LogLevel_Warning,`[CSM][W]`+e+` -`,t)}function Lu(e,...t){Ru.print(Mu.LogLevel_Error,`[CSM][E]`+e+` -`,t)}var Ru=class{static print(e,t,n){if(en[t]);r(i)}static dumpBytes(e,t,n){for(let r=0;r0?this.print(e,` -`):r%8==0&&r>0&&this.print(e,` `),this.print(e,`{0} `,[t[r]&255]);this.print(e,` -`)}constructor(){}},zu=class{update(){this._model.update(),this._model.drawables.resetDynamicFlags()}getCanvasWidth(){return this._model==null?0:this._model.canvasinfo.CanvasWidth/this._model.canvasinfo.PixelsPerUnit}getCanvasHeight(){return this._model==null?0:this._model.canvasinfo.CanvasHeight/this._model.canvasinfo.PixelsPerUnit}saveParameters(){let e=this._model.parameters.count,t=this._savedParameters.length;for(let n=0;nt&&(t=this._model.parameters.minimumValues[e]),this._parameterValues[e]=n==1?t:this._parameterValues[e]=this._parameterValues[e]*(1-n)+t*n}setParameterValueById(e,t,n=1){let r=this.getParameterIndex(e);this.setParameterValueByIndex(r,t,n)}addParameterValueByIndex(e,t,n=1){this.setParameterValueByIndex(e,this.getParameterValueByIndex(e)+t*n)}addParameterValueById(e,t,n=1){let r=this.getParameterIndex(e);this.addParameterValueByIndex(r,t,n)}multiplyParameterValueById(e,t,n=1){let r=this.getParameterIndex(e);this.multiplyParameterValueByIndex(r,t,n)}multiplyParameterValueByIndex(e,t,n=1){this.setParameterValueByIndex(e,this.getParameterValueByIndex(e)*(1+(t-1)*n))}getDrawableIds(){return this._drawableIds.slice()}getDrawableIndex(e){let t=this._model.drawables.count;for(let n=0;nt&&(e=t);for(let t=0;t0&&t.getEndTime()(e[e.ExpressionBlendType_Add=0]=`ExpressionBlendType_Add`,e[e.ExpressionBlendType_Multiply=1]=`ExpressionBlendType_Multiply`,e[e.ExpressionBlendType_Overwrite=2]=`ExpressionBlendType_Overwrite`,e))(Wu||{}),Gu;(e=>{e.supportMoreMaskDivisions=!0,e.setOpacityFromMotion=!1})(Gu||={});var Ku=(e=>(e[e.CubismMotionCurveTarget_Model=0]=`CubismMotionCurveTarget_Model`,e[e.CubismMotionCurveTarget_Parameter=1]=`CubismMotionCurveTarget_Parameter`,e[e.CubismMotionCurveTarget_PartOpacity=2]=`CubismMotionCurveTarget_PartOpacity`,e))(Ku||{}),qu=(e=>(e[e.CubismMotionSegmentType_Linear=0]=`CubismMotionSegmentType_Linear`,e[e.CubismMotionSegmentType_Bezier=1]=`CubismMotionSegmentType_Bezier`,e[e.CubismMotionSegmentType_Stepped=2]=`CubismMotionSegmentType_Stepped`,e[e.CubismMotionSegmentType_InverseStepped=3]=`CubismMotionSegmentType_InverseStepped`,e))(qu||{}),Ju=class{constructor(e=0,t=0){this.time=e,this.value=t}},Yu=class{constructor(){this.basePointIndex=0,this.segmentType=0}},Xu=class{constructor(){this.id=``,this.type=0,this.segmentCount=0,this.baseSegmentIndex=0,this.fadeInTime=0,this.fadeOutTime=0}},Zu=class{constructor(){this.fireTime=0,this.value=``}},Qu=class{constructor(){this.duration=0,this.loop=!1,this.curveCount=0,this.eventCount=0,this.fps=0,this.curves=[],this.segments=[],this.points=[],this.events=[]}},$u=class{constructor(e){this._json=e}release(){this._json=void 0}getMotionDuration(){return this._json.Meta.Duration}isMotionLoop(){return this._json.Meta.Loop||!1}getEvaluationOptionFlag(e){return ed.EvaluationOptionFlag_AreBeziersRistricted==e?!!this._json.Meta.AreBeziersRestricted:!1}getMotionCurveCount(){return this._json.Meta.CurveCount}getMotionFps(){return this._json.Meta.Fps}getMotionTotalSegmentCount(){return this._json.Meta.TotalSegmentCount}getMotionTotalPointCount(){return this._json.Meta.TotalPointCount}getMotionFadeInTime(){return this._json.Meta.FadeInTime}getMotionFadeOutTime(){return this._json.Meta.FadeOutTime}getMotionCurveTarget(e){return this._json.Curves[e].Target}getMotionCurveId(e){return this._json.Curves[e].Id}getMotionCurveFadeInTime(e){return this._json.Curves[e].FadeInTime}getMotionCurveFadeOutTime(e){return this._json.Curves[e].FadeOutTime}getMotionCurveSegmentCount(e){return this._json.Curves[e].Segments.length}getMotionCurveSegment(e,t){return this._json.Curves[e].Segments[t]}getEventCount(){return this._json.Meta.UserDataCount||0}getTotalEventValueSize(){return this._json.Meta.TotalUserDataSize}getEventTime(e){return this._json.UserData[e].Time}getEventValue(e){return this._json.UserData[e].Value}},ed=(e=>(e[e.EvaluationOptionFlag_AreBeziersRistricted=0]=`EvaluationOptionFlag_AreBeziersRistricted`,e))(ed||{});const td=`EyeBlink`,nd=`LipSync`,rd=`Model`,id=`Parameter`,ad=`PartOpacity`,od=!1;function sd(e,t,n){let r=new Ju;return r.time=e.time+(t.time-e.time)*n,r.value=e.value+(t.value-e.value)*n,r}function cd(e,t){let n=(t-e[0].time)/(e[1].time-e[0].time);return n<0&&(n=0),e[0].value+(e[1].value-e[0].value)*n}function ld(e,t){let n=(t-e[0].time)/(e[3].time-e[0].time);n<0&&(n=0);let r=sd(e[0],e[1],n),i=sd(e[1],e[2],n),a=sd(e[2],e[3],n),o=sd(r,i,n),s=sd(i,a,n);return sd(o,s,n).value}function ud(e,t){let n=t,r=e[0].time,i=e[3].time,a=e[1].time,o=e[2].time,s=i-3*o+3*a-r,c=3*o-6*a+3*r,l=3*a-3*r,u=r-n,d=Su.cardanoAlgorithmForBezier(s,c,l,u),f=sd(e[0],e[1],d),p=sd(e[1],e[2],d),m=sd(e[2],e[3],d),h=sd(f,p,d),g=sd(p,m,d);return sd(h,g,d).value}function dd(e,t){return e[0].value}function fd(e,t){return e[1].value}function pd(e,t,n){let r=e.curves[t],i=-1,a=r.baseSegmentIndex+r.segmentCount,o=0;for(let t=r.baseSegmentIndex;tn){i=t;break}if(i==-1)return e.points[o].value;let s=e.segments[i];return s.evaluate(e.points.slice(s.basePointIndex),n)}var md=class e extends Vu{constructor(){super(),this._eyeBlinkParameterIds=[],this._lipSyncParameterIds=[],this._sourceFrameRate=30,this._loopDurationSeconds=-1,this._isLoop=!1,this._isLoopFadeIn=!0,this._lastWeight=0}static create(t,n){let r=new e;return r.parse(t),r._sourceFrameRate=r._motionData.fps,r._loopDurationSeconds=r._motionData.duration,r._onFinishedMotion=n,r}doUpdateParameters(e,t,n,r){this._modelCurveIdEyeBlink??=td,this._modelCurveIdLipSync??=nd;let i=t-r.getStartTime();i<0&&(i=0);let a=Number.MAX_VALUE,o=Number.MAX_VALUE,s=64,c=0,l=0;this._eyeBlinkParameterIds.length>s&&Pu(`too many eye blink targets : {0}`,this._eyeBlinkParameterIds.length),this._lipSyncParameterIds.length>s&&Pu(`too many lip sync targets : {0}`,this._lipSyncParameterIds.length);let u=this._fadeInSeconds<=0?1:Su.getEasingSine((t-r.getFadeInStartTime())/this._fadeInSeconds),d=this._fadeOutSeconds<=0||r.getEndTime()<0?1:Su.getEasingSine((r.getEndTime()-t)/this._fadeOutSeconds),f,p,m,h=i;if(this._isLoop)for(;h>this._motionData.duration;)h-=this._motionData.duration;let g=this._motionData.curves;for(p=0;p>t&1)continue;let i=r+(o-r)*n;e.setParameterValueById(this._eyeBlinkParameterIds[t],i)}if(a!=Number.MAX_VALUE)for(let t=0;t>t&1)continue;let i=r+(a-r)*n;e.setParameterValueById(this._lipSyncParameterIds[t],i)}for(;p=this._motionData.duration&&(this._isLoop?(r.setStartTime(t),this._isLoopFadeIn&&r.setFadeInStartTime(t)):(this._onFinishedMotion&&this._onFinishedMotion(this),r.setIsFinished(!0))),this._lastWeight=n}setIsLoop(e){this._isLoop=e}isLoop(){return this._isLoop}setIsLoopFadeIn(e){this._isLoopFadeIn=e}isLoopFadeIn(){return this._isLoopFadeIn}getDuration(){return this._isLoop?-1:this._loopDurationSeconds}getLoopDuration(){return this._loopDurationSeconds}setParameterFadeInTime(e,t){let n=this._motionData.curves;for(let r=0;rnew Xu),this._motionData.segments=Array.from({length:t.getMotionTotalSegmentCount()}).map(()=>new Yu),this._motionData.events=Array.from({length:this._motionData.eventCount}).map(()=>new Zu),this._motionData.points=[];let a=0,o=0;for(let e=0;ee&&this._motionData.events[n].fireTime<=t&&this._firedEventValues.push(this._motionData.events[n].value);return this._firedEventValues}},hd=class{constructor(){this._autoDelete=!1,this._available=!0,this._finished=!1,this._started=!1,this._startTimeSeconds=-1,this._fadeInStartTimeSeconds=0,this._endTimeSeconds=-1,this._stateTimeSeconds=0,this._stateWeight=0,this._lastEventCheckSeconds=0,this._motionQueueEntryHandle=this,this._fadeOutSeconds=0,this._isTriggeredFadeOut=!1}release(){this._autoDelete&&this._motion&&this._motion.release()}setFadeOut(e){this._fadeOutSeconds=e,this._isTriggeredFadeOut=!0}startFadeOut(e,t){let n=t+e;this._isTriggeredFadeOut=!0,(this._endTimeSeconds<0||nt!=null&&t._motionQueueEntryHandle==e)}setEventCallback(e,t=null){this._eventCallBack=e,this._eventCustomData=t}doUpdateMotion(e,t){let n=!1,r=0;for(;r(e[e.CubismPhysicsTargetType_Parameter=0]=`CubismPhysicsTargetType_Parameter`,e))(vd||{}),yd=(e=>(e[e.CubismPhysicsSource_X=0]=`CubismPhysicsSource_X`,e[e.CubismPhysicsSource_Y=1]=`CubismPhysicsSource_Y`,e[e.CubismPhysicsSource_Angle=2]=`CubismPhysicsSource_Angle`,e))(yd||{}),bd=class{constructor(){this.initialPosition=new bu(0,0),this.position=new bu(0,0),this.lastPosition=new bu(0,0),this.lastGravity=new bu(0,0),this.force=new bu(0,0),this.velocity=new bu(0,0)}},xd=class{constructor(){this.normalizationPosition={},this.normalizationAngle={}}},Sd=class{constructor(){this.source={}}},Cd=class{constructor(){this.destination={},this.translationScale=new bu(0,0)}},wd=class{constructor(){this.settings=[],this.inputs=[],this.outputs=[],this.particles=[],this.gravity=new bu(0,0),this.wind=new bu(0,0)}},Td=class{constructor(e){this._json=e}release(){this._json=void 0}getGravity(){let e=new bu(0,0);return e.x=this._json.Meta.EffectiveForces.Gravity.X,e.y=this._json.Meta.EffectiveForces.Gravity.Y,e}getWind(){let e=new bu(0,0);return e.x=this._json.Meta.EffectiveForces.Wind.X,e.y=this._json.Meta.EffectiveForces.Wind.Y,e}getSubRigCount(){return this._json.Meta.PhysicsSettingCount}getTotalInputCount(){return this._json.Meta.TotalInputCount}getTotalOutputCount(){return this._json.Meta.TotalOutputCount}getVertexCount(){return this._json.Meta.VertexCount}getNormalizationPositionMinimumValue(e){return this._json.PhysicsSettings[e].Normalization.Position.Minimum}getNormalizationPositionMaximumValue(e){return this._json.PhysicsSettings[e].Normalization.Position.Maximum}getNormalizationPositionDefaultValue(e){return this._json.PhysicsSettings[e].Normalization.Position.Default}getNormalizationAngleMinimumValue(e){return this._json.PhysicsSettings[e].Normalization.Angle.Minimum}getNormalizationAngleMaximumValue(e){return this._json.PhysicsSettings[e].Normalization.Angle.Maximum}getNormalizationAngleDefaultValue(e){return this._json.PhysicsSettings[e].Normalization.Angle.Default}getInputCount(e){return this._json.PhysicsSettings[e].Input.length}getInputWeight(e,t){return this._json.PhysicsSettings[e].Input[t].Weight}getInputReflect(e,t){return this._json.PhysicsSettings[e].Input[t].Reflect}getInputType(e,t){return this._json.PhysicsSettings[e].Input[t].Type}getInputSourceId(e,t){return this._json.PhysicsSettings[e].Input[t].Source.Id}getOutputCount(e){return this._json.PhysicsSettings[e].Output.length}getOutputVertexIndex(e,t){return this._json.PhysicsSettings[e].Output[t].VertexIndex}getOutputAngleScale(e,t){return this._json.PhysicsSettings[e].Output[t].Scale}getOutputWeight(e,t){return this._json.PhysicsSettings[e].Output[t].Weight}getOutputDestinationId(e,t){return this._json.PhysicsSettings[e].Output[t].Destination.Id}getOutputType(e,t){return this._json.PhysicsSettings[e].Output[t].Type}getOutputReflect(e,t){return this._json.PhysicsSettings[e].Output[t].Reflect}getParticleCount(e){return this._json.PhysicsSettings[e].Vertices.length}getParticleMobility(e,t){return this._json.PhysicsSettings[e].Vertices[t].Mobility}getParticleDelay(e,t){return this._json.PhysicsSettings[e].Vertices[t].Delay}getParticleAcceleration(e,t){return this._json.PhysicsSettings[e].Vertices[t].Acceleration}getParticleRadius(e,t){return this._json.PhysicsSettings[e].Vertices[t].Radius}getParticlePosition(e,t){let n=new bu(0,0);return n.x=this._json.PhysicsSettings[e].Vertices[t].Position.X,n.y=this._json.PhysicsSettings[e].Vertices[t].Position.Y,n}};const Ed=`X`,Dd=`Y`,Od=`Angle`,kd=5,Ad=100,jd=.001;var Md=class e{static create(t){let n=new e;return n.parse(t),n._physicsRig.gravity.y=0,n}evaluate(e,t){let n,r,i,a,o=new bu,s,c,l,u,d,f,p,m;d=e.getModel().parameters.values,f=e.getModel().parameters.maximumValues,p=e.getModel().parameters.minimumValues,m=e.getModel().parameters.defaultValues;for(let h=0;h=s.particleCount)break;l[t].destinationParameterIndex==-1&&(l[t].destinationParameterIndex=e.getParameterIndex(l[t].destination.id));let r=new bu;r.x=u[n].position.x-u[n-1].position.x,r.y=u[n].position.y-u[n-1].position.y,a=l[t].getValue(r,u,n,l[t].reflect,this._options.gravity);let i=l[t].destinationParameterIndex,o=!Float32Array.prototype.slice&&`subarray`in Float32Array.prototype?JSON.parse(JSON.stringify(d.subarray(i))):d.slice(i);Kd(o,p[i],f[i],a,l[t]);for(let e=i,t=0;e=2?t[n-1].position.substract(t[n-2].position):i.multiplyByScaler(-1),a=Su.directionToRadian(i,e),r&&(a*=-1),a}function Bd(e,t){return Math.abs(Math.max(e,t)-Math.min(e,t))}function Vd(e,t){let n=Math.min(e,t);return n+Bd(e,t)/2}function Hd(e,t){return e.x}function Ud(e,t){return e.y}function Wd(e,t){return t}function Gd(e,t,n,r,i,a,o,s){let c,l,u,d,f=new bu(0,0),p=new bu(0,0),m=new bu(0,0),h=new bu(0,0);e[0].position=new bu(n.x,n.y),c=Su.degreesToRadian(r),d=Su.radianToDirection(c),d.normalize();for(let n=1;nn&&(o>i.valueExceededMaximum&&(i.valueExceededMaximum=o),o=n),s=i.weight/Ad,s>=1||(o=e[0]*(1-s)+o*s),e[0]=o}function qd(e,t,n,r,i,a,o,s){let c=0,l=Su.max(n,t);le&&(e=u);let d=Su.min(i,a),f=Su.max(i,a),p=o,m=Vd(u,l),h=e-m;switch(Math.sign(h)){case 1:{let e=f-p,t=l-m;t!=0&&(c=h*(e/t),c+=p);break}case-1:{let e=d-p,t=u-m;t!=0&&(c=h*(e/t),c+=p);break}case 0:c=p;break}return s?c:c*-1}var Jd=class{constructor(e=0,t=0,n=0,r=0){this.x=e,this.y=t,this.width=n,this.height=r}getCenterX(){return this.x+.5*this.width}getCenterY(){return this.y+.5*this.height}getRight(){return this.x+this.width}getBottom(){return this.y+this.height}setRect(e){this.x=e.x,this.y=e.y,this.width=e.width,this.height=e.height}expand(e,t){this.x-=e,this.y-=t,this.width+=e*2,this.height+=t*2}};const Yd=4,Xd=10;let Zd,Qd,$d;var ef=class{getChannelFlagAsColor(e){return this._channelColors[e]}getMaskRenderTexture(){let e=0;if(this._maskTexture&&this._maskTexture.texture!=0&&(this._maskTexture.frameNo=this._currentFrameNo,e=this._maskTexture.texture),e==0){let t=this._clippingMaskBufferSize;this._colorBuffer=this.gl.createTexture(),this.gl.bindTexture(this.gl.TEXTURE_2D,this._colorBuffer),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,t,t,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,null),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.bindTexture(this.gl.TEXTURE_2D,null),e=this.gl.createFramebuffer(),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,e),this.gl.framebufferTexture2D(this.gl.FRAMEBUFFER,this.gl.COLOR_ATTACHMENT0,this.gl.TEXTURE_2D,this._colorBuffer,0),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,$d),this._maskTexture=new tf(this._currentFrameNo,e)}return e}setGL(e){this.gl=e}calcClippedDrawTotalBounds(e,t){let n=Number.MAX_VALUE,r=Number.MAX_VALUE,i=Number.MIN_VALUE,a=Number.MIN_VALUE,o=t._clippedDrawableIndexList.length;for(let s=0;sf&&(f=t),np&&(p=n)}if(u!=Number.MAX_VALUE)if(ui&&(i=f),p>a&&(a=p),n==Number.MAX_VALUE)t._allClippedDrawRect.x=0,t._allClippedDrawRect.y=0,t._allClippedDrawRect.width=0,t._allClippedDrawRect.height=0,t._isUsing=!1;else{t._isUsing=!0;let e=i-n,o=a-r;t._allClippedDrawRect.x=n,t._allClippedDrawRect.y=r,t._allClippedDrawRect.width=e,t._allClippedDrawRect.height=o}}}constructor(){this._maskRenderTexture=null,this._colorBuffer=null,this._currentFrameNo=0,this._clippingMaskBufferSize=256,this._clippingContextListForMask=[],this._clippingContextListForDraw=[],this._channelColors=[],this._tmpBoundsOnModel=new Jd,this._tmpMatrix=new Cu,this._tmpMatrixForMask=new Cu,this._tmpMatrixForDraw=new Cu;let e=new Eu;e.R=1,e.G=0,e.B=0,e.A=0,this._channelColors.push(e),e=new Eu,e.R=0,e.G=1,e.B=0,e.A=0,this._channelColors.push(e),e=new Eu,e.R=0,e.G=0,e.B=1,e.A=0,this._channelColors.push(e),e=new Eu,e.R=0,e.G=0,e.B=0,e.A=1,this._channelColors.push(e)}release(){var e,t,n;let r=this;for(let t=0;t0){this.gl.viewport(0,0,this._clippingMaskBufferSize,this._clippingMaskBufferSize),this._maskRenderTexture=this.getMaskRenderTexture(),t.getMvpMatrix(),t.preDraw(),this.setupLayoutBounds(n),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,this._maskRenderTexture),this.gl.clearColor(1,1,1,1),this.gl.clear(this.gl.COLOR_BUFFER_BIT);for(let n=0;n(e[e.ShaderNames_SetupMask=0]=`ShaderNames_SetupMask`,e[e.ShaderNames_NormalPremultipliedAlpha=1]=`ShaderNames_NormalPremultipliedAlpha`,e[e.ShaderNames_NormalMaskedPremultipliedAlpha=2]=`ShaderNames_NormalMaskedPremultipliedAlpha`,e[e.ShaderNames_NomralMaskedInvertedPremultipliedAlpha=3]=`ShaderNames_NomralMaskedInvertedPremultipliedAlpha`,e[e.ShaderNames_AddPremultipliedAlpha=4]=`ShaderNames_AddPremultipliedAlpha`,e[e.ShaderNames_AddMaskedPremultipliedAlpha=5]=`ShaderNames_AddMaskedPremultipliedAlpha`,e[e.ShaderNames_AddMaskedPremultipliedAlphaInverted=6]=`ShaderNames_AddMaskedPremultipliedAlphaInverted`,e[e.ShaderNames_MultPremultipliedAlpha=7]=`ShaderNames_MultPremultipliedAlpha`,e[e.ShaderNames_MultMaskedPremultipliedAlpha=8]=`ShaderNames_MultMaskedPremultipliedAlpha`,e[e.ShaderNames_MultMaskedPremultipliedAlphaInverted=9]=`ShaderNames_MultMaskedPremultipliedAlphaInverted`,e))(af||{});const sf=`attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_myPos;uniform mat4 u_clipMatrix;void main(){ gl_Position = u_clipMatrix * a_position; v_myPos = u_clipMatrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}`,cf=`precision mediump float;varying vec2 v_texCoord;varying vec4 v_myPos;uniform vec4 u_baseColor;uniform vec4 u_channelFlag;uniform sampler2D s_texture0;void main(){ float isInside = step(u_baseColor.x, v_myPos.x/v_myPos.w) * step(u_baseColor.y, v_myPos.y/v_myPos.w) * step(v_myPos.x/v_myPos.w, u_baseColor.z) * step(v_myPos.y/v_myPos.w, u_baseColor.w); gl_FragColor = u_channelFlag * texture2D(s_texture0, v_texCoord).a * isInside;}`,lf=`attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;uniform mat4 u_matrix;void main(){ gl_Position = u_matrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}`,uf=`attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform mat4 u_matrix;uniform mat4 u_clipMatrix;void main(){ gl_Position = u_matrix * a_position; v_clipPos = u_clipMatrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}`,df=`precision mediump float;varying vec2 v_texCoord;uniform vec4 u_baseColor;uniform sampler2D s_texture0;void main(){ gl_FragColor = texture2D(s_texture0 , v_texCoord) * u_baseColor;}`,ff=`precision mediump float;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform vec4 u_baseColor;uniform vec4 u_channelFlag;uniform sampler2D s_texture0;uniform sampler2D s_texture1;void main(){ vec4 col_formask = texture2D(s_texture0 , v_texCoord) * u_baseColor; vec4 clipMask = (1.0 - texture2D(s_texture1, v_clipPos.xy / v_clipPos.w)) * u_channelFlag; float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a; col_formask = col_formask * maskVal; gl_FragColor = col_formask;}`,pf=`precision mediump float;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform sampler2D s_texture0;uniform sampler2D s_texture1;uniform vec4 u_channelFlag;uniform vec4 u_baseColor;void main(){vec4 col_formask = texture2D(s_texture0, v_texCoord) * u_baseColor;vec4 clipMask = (1.0 - texture2D(s_texture1, v_clipPos.xy / v_clipPos.w)) * u_channelFlag;float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a;col_formask = col_formask * (1.0 - maskVal);gl_FragColor = col_formask;}`;var mf=class extends wu{constructor(){super(),this._clippingContextBufferForMask=null,this._clippingContextBufferForDraw=null,this._clippingManager=new ef,this.firstDraw=!0,this._textures={},this._sortedDrawableIndexList=[],this._bufferData={vertex:null,uv:null,index:null}}initialize(e){e.isUsingMasking()&&(this._clippingManager=new ef,this._clippingManager.initialize(e,e.getDrawableCount(),e.getDrawableMasks(),e.getDrawableMaskCounts()));for(let t=e.getDrawableCount()-1;t>=0;t--)this._sortedDrawableIndexList[t]=0;super.initialize(e)}bindTexture(e,t){this._textures[e]=t}getBindedTextures(){return this._textures}setClippingMaskBufferSize(e){this._clippingManager.release(),this._clippingManager=new ef,this._clippingManager.setClippingMaskBufferSize(e),this._clippingManager.initialize(this.getModel(),this.getModel().getDrawableCount(),this.getModel().getDrawableMasks(),this.getModel().getDrawableMaskCounts())}getClippingMaskBufferSize(){return this._clippingManager.getClippingMaskBufferSize()}release(){var e,t,n;let r=this;this._clippingManager.release(),r._clippingManager=void 0,(e=this.gl)==null||e.deleteBuffer(this._bufferData.vertex),this._bufferData.vertex=null,(t=this.gl)==null||t.deleteBuffer(this._bufferData.uv),this._bufferData.uv=null,(n=this.gl)==null||n.deleteBuffer(this._bufferData.index),this._bufferData.index=null,r._bufferData=void 0,r._textures=void 0}doDrawModel(){this.preDraw(),this._clippingManager!=null&&this._clippingManager.setupClippingContext(this.getModel(),this);let e=this.getModel().getDrawableCount(),t=this.getModel().getDrawableRenderOrders();for(let n=0;n{mf.doStaticRelease()};var hf=class{constructor(e){this.groups=e.Groups,this.hitAreas=e.HitAreas,this.layout=e.Layout,this.moc=e.FileReferences.Moc,this.expressions=e.FileReferences.Expressions,this.motions=e.FileReferences.Motions,this.textures=e.FileReferences.Textures,this.physics=e.FileReferences.Physics,this.pose=e.FileReferences.Pose}getEyeBlinkParameters(){var e,t;return(t=(e=this.groups)?.find(e=>e.Name===`EyeBlink`))?.Ids}getLipSyncParameters(){var e,t;return(t=(e=this.groups)?.find(e=>e.Name===`LipSync`))?.Ids}};const gf=`ParamAngleX`,_f=`ParamAngleY`,vf=`ParamAngleZ`,yf=`ParamEyeBallX`,bf=`ParamEyeBallY`,xf=`ParamBodyAngleX`,Sf=`ParamBreath`,Cf=2,wf=2;var Tf;(e=>{e.LOG_LEVEL_VERBOSE=0,e.LOG_LEVEL_WARNING=1,e.LOG_LEVEL_ERROR=2,e.LOG_LEVEL_NONE=999,e.logLevel=e.LOG_LEVEL_WARNING,e.sound=!0,e.motionSync=!0,e.motionFadingDuration=500,e.idleMotionFadingDuration=2e3,e.expressionFadingDuration=500,e.preserveExpressionOnMotion=!0,e.cubism4=Gu})(Tf||={});const Ef={log(e,...t){Tf.logLevel<=Tf.LOG_LEVEL_VERBOSE&&console.log(`[${e}]`,...t)},warn(e,...t){Tf.logLevel<=Tf.LOG_LEVEL_WARNING&&console.warn(`[${e}]`,...t)},error(e,...t){Tf.logLevel<=Tf.LOG_LEVEL_ERROR&&console.error(`[${e}]`,...t)}};function Df(e,t,n){return en?n:e}function Of(e,t){t.forEach(t=>{Object.getOwnPropertyNames(t.prototype).forEach(n=>{n!==`constructor`&&Object.defineProperty(e.prototype,n,Object.getOwnPropertyDescriptor(t.prototype,n))})})}function kf(e){let t=e.lastIndexOf(`/`);return t!=-1&&(e=e.slice(0,t)),t=e.lastIndexOf(`/`),t!==-1&&(e=e.slice(t+1)),e}function Af(e,t){let n=e.indexOf(t);n!==-1&&e.splice(n,1)}var jf=class extends Va.default{constructor(e,t){super(),this.expressions=[],this.reserveExpressionIndex=-1,this.destroyed=!1,this.settings=e,this.tag=`ExpressionManager(${e.name})`}init(){this.defaultExpression=this.createExpression({},void 0),this.currentExpression=this.defaultExpression,this.stopAllExpressions()}loadExpression(e){return uu(this,null,function*(){if(!this.definitions[e]){Ef.warn(this.tag,`Undefined expression at [${e}]`);return}if(this.expressions[e]===null){Ef.warn(this.tag,`Cannot set expression at [${e}] because it's already failed in loading.`);return}if(this.expressions[e])return this.expressions[e];let t=yield this._loadExpression(e);return this.expressions[e]=t,t})}_loadExpression(e){throw Error(`Not implemented.`)}setRandomExpression(){return uu(this,null,function*(){if(this.definitions.length){let e=[];for(let t=0;t-1&&ec&&(a*=c/s,o*=c/s),this.vx+=a,this.vy+=o;let l=Math.sqrt(lu(this.vx,2)+lu(this.vy,2)),u=.5*(Math.sqrt(lu(c,2)+8*c*r)-c);l>u&&(this.vx*=u/l,this.vy*=u/l),this.x+=this.vx,this.y+=this.vy}},If=class{constructor(e){this.json=e;let t=e.url;if(typeof t!=`string`)throw TypeError("The `url` field in settings JSON must be defined as a string.");this.url=t,this.name=kf(this.url)}resolveURL(e){return Wa.resolve(this.url,e)}replaceFiles(e){this.moc=e(this.moc,`moc`),this.pose!==void 0&&(this.pose=e(this.pose,`pose`)),this.physics!==void 0&&(this.physics=e(this.physics,`physics`));for(let t=0;t(e.push(t),t)),e}validateFiles(e){let t=(t,n)=>{let r=this.resolveURL(t);if(!e.includes(r)){if(n)throw Error(`File "${t}" is defined in settings, but doesn't exist in given files`);return!1}return!0},n=[this.moc,...this.textures];n.forEach(e=>t(e,!0));let r=this.getDefinedFiles();return r.filter(e=>t(e,!1))}},Lf=(e=>(e[e.NONE=0]=`NONE`,e[e.IDLE=1]=`IDLE`,e[e.NORMAL=2]=`NORMAL`,e[e.FORCE=3]=`FORCE`,e))(Lf||{}),Rf=class{constructor(){this.debug=!1,this.currentPriority=0,this.reservePriority=0}reserve(e,t,n){if(n<=0)return Ef.log(this.tag,`Cannot start a motion with MotionPriority.NONE.`),!1;if(e===this.currentGroup&&t===this.currentIndex)return Ef.log(this.tag,`Motion is already playing.`,this.dump(e,t)),!1;if(e===this.reservedGroup&&t===this.reservedIndex||e===this.reservedIdleGroup&&t===this.reservedIdleIndex)return Ef.log(this.tag,`Motion is already reserved.`,this.dump(e,t)),!1;if(n===1){if(this.currentPriority!==0)return Ef.log(this.tag,`Cannot start idle motion because another motion is playing.`,this.dump(e,t)),!1;if(this.reservedIdleGroup!==void 0)return Ef.log(this.tag,`Cannot start idle motion because another idle motion has reserved.`,this.dump(e,t)),!1;this.setReservedIdle(e,t)}else{if(n<3){if(n<=this.currentPriority)return Ef.log(this.tag,`Cannot start motion because another motion is playing as an equivalent or higher priority.`,this.dump(e,t)),!1;if(n<=this.reservePriority)return Ef.log(this.tag,`Cannot start motion because another motion has reserved as an equivalent or higher priority.`,this.dump(e,t)),!1}this.setReserved(e,t,n)}return!0}start(e,t,n,r){if(r===1){if(this.setReservedIdle(void 0,void 0),this.currentPriority!==0)return Ef.log(this.tag,`Cannot start idle motion because another motion is playing.`,this.dump(t,n)),!1}else{if(t!==this.reservedGroup||n!==this.reservedIndex)return Ef.log(this.tag,`Cannot start motion because another motion has taken the place.`,this.dump(t,n)),!1;this.setReserved(void 0,void 0,0)}return e?(this.setCurrent(t,n,r),!0):!1}complete(){this.setCurrent(void 0,void 0,0)}setCurrent(e,t,n){this.currentPriority=n,this.currentGroup=e,this.currentIndex=t}setReserved(e,t,n){this.reservePriority=n,this.reservedGroup=e,this.reservedIndex=t}setReservedIdle(e,t){this.reservedIdleGroup=e,this.reservedIdleIndex=t}isActive(e,t){return e===this.currentGroup&&t===this.currentIndex||e===this.reservedGroup&&t===this.reservedIndex||e===this.reservedIdleGroup&&t===this.reservedIdleIndex}reset(){this.setCurrent(void 0,void 0,0),this.setReserved(void 0,void 0,0),this.setReservedIdle(void 0,void 0)}shouldRequestIdleMotion(){return this.currentGroup===void 0&&this.reservedIdleGroup===void 0}shouldOverrideExpression(){return!Tf.preserveExpressionOnMotion&&this.currentPriority>1}dump(e,t){if(this.debug){let n=[`currentPriority`,`reservePriority`,`currentGroup`,`currentIndex`,`reservedGroup`,`reservedIndex`,`reservedIdleGroup`,`reservedIdleIndex`];return` - group = "${e}", index = ${t} -`+n.map(e=>`[`+e+`] `+this[e]).join(` -`)}return``}};const zf=`SoundManager`,Bf=.5;var Vf=class{static get volume(){return this._volume}static set volume(e){this._volume=(e>1?1:e<0?0:e)||0,this.audios.forEach(e=>e.volume=this._volume)}static add(e,t,n){let r=new Audio(e);return r.volume=this._volume,r.preload=`auto`,r.addEventListener(`ended`,()=>{this.dispose(r),t?.()}),r.addEventListener(`error`,t=>{this.dispose(r),Ef.warn(zf,`Error occurred on "${e}"`,t.error),n?.(t.error)}),this.audios.push(r),r}static play(e){return new Promise((t,n)=>{var r;(r=e.play())==null||r.catch(t=>{e.dispatchEvent(new ErrorEvent(`error`,{error:t})),n(t)}),e.readyState===e.HAVE_ENOUGH_DATA?t():e.addEventListener(`canplaythrough`,t)})}static dispose(e){e.pause(),e.removeAttribute(`src`),Af(this.audios,e)}static destroy(){for(let e=this.audios.length-1;e>=0;e--)this.dispose(this.audios[e])}};Vf.audios=[],Vf._volume=Bf;var Hf=class extends Va.default{constructor(e,t){super(),this.motionGroups={},this.state=new Rf,this.playing=!1,this.destroyed=!1,this.settings=e,this.tag=`MotionManager(${e.name})`,this.state.tag=this.tag}init(e){e?.idleMotionGroup&&(this.groups.idle=e.idleMotionGroup),this.setupMotions(e),this.stopAllMotions()}setupMotions(e){for(let e of Object.keys(this.definitions))this.motionGroups[e]=[];let t;switch(e?.motionPreload){case`NONE`:return;case`ALL`:t=Object.keys(this.definitions);break;case`IDLE`:default:t=[this.groups.idle];break}for(let e of t)if(this.definitions[e])for(let t=0;tthis.currentAudio=void 0,()=>this.currentAudio=void 0),this.currentAudio=a}catch(t){Ef.warn(this.tag,`Failed to create audio`,e,t)}}let o=yield this.loadMotion(e,t);if(a){let e=Vf.play(a).catch(e=>Ef.warn(this.tag,`Failed to play audio`,a.src,e));Tf.motionSync&&(yield e)}return this.state.start(o,e,t,n)?(Ef.log(this.tag,`Start motion:`,this.getMotionName(i)),this.emit(`motionStart`,e,t,a),this.state.shouldOverrideExpression()&&this.expressionManager&&this.expressionManager.resetExpression(),this.playing=!0,this._startMotion(o),!0):(a&&(Vf.dispose(a),this.currentAudio=void 0),!1)})}startRandomMotion(e,t){return uu(this,null,function*(){let n=this.definitions[e];if(n?.length){let r=[];for(let t=0;te.index>=0);for(let t of e)this.hitAreas[t.name]=t}hitTest(e,t){return Object.keys(this.hitAreas).filter(n=>this.isHit(n,e,t))}isHit(e,t,n){if(!this.hitAreas[e])return!1;let r=this.hitAreas[e].index,i=this.getDrawableBounds(r,Uf);return i.x<=t&&t<=i.x+i.width&&i.y<=n&&n<=i.y+i.height}getDrawableBounds(e,t){let n=this.getDrawableVertices(e),r=n[0],i=n[0],a=n[1],o=n[1];for(let e=0;e{(a.status===200||a.status===0)&&a.response?r(a.response):a.onerror()},a.onerror=()=>{Ef.warn(Gf,`Failed to load resource as ${a.responseType} (Status ${a.status}): ${t}`),i(new Kf(`Network error.`,t,a.status))},a.onabort=()=>i(new Kf(`Aborted.`,t,a.status,!0)),a.onloadend=()=>{var t;qf.allXhrSet.delete(a),e&&((t=qf.xhrMap.get(e))==null||t.delete(a))},a}static cancelXHRs(){var e;(e=qf.xhrMap.get(this))==null||e.forEach(e=>{e.abort(),qf.allXhrSet.delete(e)}),qf.xhrMap.delete(this)}static release(){qf.allXhrSet.forEach(e=>e.abort()),qf.allXhrSet.clear(),qf.xhrMap=new WeakMap}};let Jf=qf;Jf.xhrMap=new WeakMap,Jf.allXhrSet=new Set,Jf.loader=(e,t)=>new Promise((t,n)=>{let r=qf.createXHR(e.target,e.settings?e.settings.resolveURL(e.url):e.url,e.type,n=>{e.result=n,t()},n);r.send()});function Yf(e,t){let n=-1;return r(0);function r(i,a){if(a)return Promise.reject(a);if(i<=n)return Promise.reject(Error(`next() called multiple times`));n=i;let o=e[i];if(!o)return Promise.resolve();try{return Promise.resolve(o(t,r.bind(null,i+1)))}catch(e){return Promise.reject(e)}}}var Xf=class{static load(e){return Yf(this.middlewares,e).then(()=>e.result)}};Xf.middlewares=[Jf.loader];function Zf(e,t={}){var n;let r={resourceOptions:{crossorigin:t.crossOrigin}};if(Ts.fromURL)return Ts.fromURL(e,r).catch(e=>{if(e instanceof Error)throw e;let t=Error(`Texture loading error`);throw t.event=e,t});r.resourceOptions.autoLoad=!1;let i=Ts.from(e,r);if(i.baseTexture.valid)return Promise.resolve(i);let a=i.baseTexture.resource;return(n=a._live2d_load)??(a._live2d_load=new Promise((e,t)=>{let n=e=>{a.source.removeEventListener(`error`,n);let r=Error(`Texture loading error`);r.event=e,t(r)};a.source.addEventListener(`error`,n),a.load().then(()=>e(i)).catch(n)})),a._live2d_load}const Qf=`Live2DFactory`,$f=(e,t)=>uu(void 0,null,function*(){if(typeof e.source==`string`){let t=yield Xf.load({url:e.source,type:`json`,target:e.live2dModel});t.url=e.source,e.source=t,e.live2dModel.emit(`settingsJSONLoaded`,t)}return t()}),ep=(e,t)=>uu(void 0,null,function*(){if(e.source instanceof If)return e.settings=e.source,t();if(typeof e.source==`object`){let n=op.findRuntime(e.source);if(n){let r=n.createModelSettings(e.source);return e.settings=r,e.live2dModel.emit(`settingsLoaded`,r),t()}}throw TypeError(`Unknown settings format.`)}),tp=(e,t)=>{if(e.settings){let n=op.findRuntime(e.settings);if(n)return n.ready().then(t)}return t()},np=(e,t)=>uu(void 0,null,function*(){yield t();let n=e.internalModel;if(n){let t=e.settings,r=op.findRuntime(t);if(r){let i=[];t.pose&&i.push(Xf.load({settings:t,url:t.pose,type:`json`,target:n}).then(t=>{n.pose=r.createPose(n.coreModel,t),e.live2dModel.emit(`poseLoaded`,n.pose)}).catch(t=>{e.live2dModel.emit(`poseLoadError`,t),Ef.warn(Qf,`Failed to load pose.`,t)})),t.physics&&i.push(Xf.load({settings:t,url:t.physics,type:`json`,target:n}).then(t=>{n.physics=r.createPhysics(n.coreModel,t),e.live2dModel.emit(`physicsLoaded`,n.physics)}).catch(t=>{e.live2dModel.emit(`physicsLoadError`,t),Ef.warn(Qf,`Failed to load physics.`,t)})),i.length&&(yield Promise.all(i))}}}),rp=(e,t)=>uu(void 0,null,function*(){if(e.settings){let n=e.live2dModel,r=e.settings.textures.map(t=>{let n=e.settings.resolveURL(t);return Zf(n,{crossOrigin:e.options.crossOrigin})});if(yield t(),e.internalModel)n.internalModel=e.internalModel,n.emit(`modelLoaded`,e.internalModel);else throw TypeError(`Missing internal model.`);n.textures=yield Promise.all(r),n.emit(`textureLoaded`,n.textures)}else throw TypeError(`Missing settings.`)}),ip=(e,t)=>uu(void 0,null,function*(){let n=e.settings;if(n instanceof If){let r=op.findRuntime(n);if(!r)throw TypeError(`Unknown model settings.`);let i=yield Xf.load({settings:n,url:n.moc,type:`arraybuffer`,target:e.live2dModel});if(!r.isValidMoc(i))throw Error(`Invalid moc data`);let a=r.createCoreModel(i);return e.internalModel=r.createInternalModel(a,n,e.options),t()}throw TypeError(`Missing settings.`)}),ap=class{static registerRuntime(e){ap.runtimes.push(e),ap.runtimes.sort((e,t)=>t.version-e.version)}static findRuntime(e){for(let t of ap.runtimes)if(t.test(e))return t}static setupLive2DModel(e,t,n){return uu(this,null,function*(){let r=new Promise(t=>e.once(`textureLoaded`,t)),i=new Promise(t=>e.once(`modelLoaded`,t)),a=Promise.all([r,i]).then(()=>e.emit(`ready`));yield Yf(ap.live2DModelMiddlewares,{live2dModel:e,source:t,options:n||{}}),yield a,e.emit(`load`)})}static loadMotion(e,t,n){var r,i;let a=r=>e.emit(`motionLoadError`,t,n,r);try{let o=(r=e.definitions[t])?.[n];if(!o)return Promise.resolve(void 0);e.listeners(`destroy`).includes(ap.releaseTasks)||e.once(`destroy`,ap.releaseTasks);let s=ap.motionTasksMap.get(e);s||(s={},ap.motionTasksMap.set(e,s));let c=s[t];c||(c=[],s[t]=c);let l=e.getMotionFile(o);return(i=c[n])??(c[n]=Xf.load({url:l,settings:e.settings,type:e.motionDataType,target:e}).then(r=>{var i;let a=(i=ap.motionTasksMap.get(e))?.[t];a&&delete a[n];let s=e.createMotion(r,t,o);return e.emit(`motionLoaded`,t,n,s),s}).catch(t=>{Ef.warn(e.tag,`Failed to load motion: ${l} -`,t),a(t)})),c[n]}catch(r){Ef.warn(e.tag,`Failed to load motion at "${t}"[${n}] -`,r),a(r)}return Promise.resolve(void 0)}static loadExpression(e,t){var n;let r=n=>e.emit(`expressionLoadError`,t,n);try{let i=e.definitions[t];if(!i)return Promise.resolve(void 0);e.listeners(`destroy`).includes(ap.releaseTasks)||e.once(`destroy`,ap.releaseTasks);let a=ap.expressionTasksMap.get(e);a||(a=[],ap.expressionTasksMap.set(e,a));let o=e.getExpressionFile(i);return(n=a[t])??(a[t]=Xf.load({url:o,settings:e.settings,type:`json`,target:e}).then(n=>{let r=ap.expressionTasksMap.get(e);r&&delete r[t];let a=e.createExpression(n,i);return e.emit(`expressionLoaded`,t,a),a}).catch(t=>{Ef.warn(e.tag,`Failed to load expression: ${o} -`,t),r(t)})),a[t]}catch(n){Ef.warn(e.tag,`Failed to load expression at [${t}] -`,n),r(n)}return Promise.resolve(void 0)}static releaseTasks(){this instanceof Hf?ap.motionTasksMap.delete(this):ap.expressionTasksMap.delete(this)}};let op=ap;op.runtimes=[],op.urlToJSON=$f,op.jsonToSettings=ep,op.waitUntilReady=tp,op.setupOptionals=np,op.setupEssentials=rp,op.createInternalModel=ip,op.live2DModelMiddlewares=[$f,ep,tp,np,rp,ip],op.motionTasksMap=new WeakMap,op.expressionTasksMap=new WeakMap,Hf.prototype._loadMotion=function(e,t){return op.loadMotion(this,e,t)},jf.prototype._loadExpression=function(e){return op.loadExpression(this,e)};var sp=class{constructor(){this._autoInteract=!1}get autoInteract(){return this._autoInteract}set autoInteract(e){e!==this._autoInteract&&(e?this.on(`pointertap`,cp,this):this.off(`pointertap`,cp,this),this._autoInteract=e)}registerInteraction(e){e!==this.interactionManager&&(this.unregisterInteraction(),this._autoInteract&&e&&(this.interactionManager=e,e.on(`pointermove`,lp,this)))}unregisterInteraction(){var e;this.interactionManager&&((e=this.interactionManager)==null||e.off(`pointermove`,lp,this),this.interactionManager=void 0)}};function cp(e){this.tap(e.data.global.x,e.data.global.y)}function lp(e){this.focus(e.data.global.x,e.data.global.y)}var up=class extends Xo{};const dp=new Mo,fp=new Bo;let pp;var mp=class extends ou{constructor(e){super(),this.tag=`Live2DModel(uninitialized)`,this.textures=[],this.transform=new up,this.anchor=new zo(this.onAnchorChange,this,0,0),this.glContextID=-1,this.elapsedTime=performance.now(),this.deltaTime=0,this._autoUpdate=!1,this.once(`modelLoaded`,()=>this.init(e))}static from(e,t){let n=new this(t);return op.setupLive2DModel(n,e,t).then(()=>n)}static fromSync(e,t){let n=new this(t);return op.setupLive2DModel(n,e,t).then(t?.onLoad).catch(t?.onError),n}static registerTicker(e){pp=e}get autoUpdate(){return this._autoUpdate}set autoUpdate(e){var t;pp||=(t=window.PIXI)?.Ticker,e?this._destroyed||(pp?(pp.shared.add(this.onTickerUpdate,this),this._autoUpdate=!0):Ef.warn(this.tag,`No Ticker registered, please call Live2DModel.registerTicker(Ticker).`)):(pp?.shared.remove(this.onTickerUpdate,this),this._autoUpdate=!1)}init(e){this.tag=`Live2DModel(${this.internalModel.settings.name})`;let t=Object.assign({autoUpdate:!0,autoInteract:!0},e);t.autoInteract&&(this.interactive=!0),this.autoInteract=t.autoInteract,this.autoUpdate=t.autoUpdate}onAnchorChange(){this.pivot.set(this.anchor.x*this.internalModel.width,this.anchor.y*this.internalModel.height)}motion(e,t,n){return t===void 0?this.internalModel.motionManager.startRandomMotion(e,n):this.internalModel.motionManager.startMotion(e,t,n)}expression(e){return this.internalModel.motionManager.expressionManager?e===void 0?this.internalModel.motionManager.expressionManager.setRandomExpression():this.internalModel.motionManager.expressionManager.setExpression(e):Promise.resolve(!1)}focus(e,t,n=!1){dp.x=e,dp.y=t,this.toModelPosition(dp,dp,!0);let r=dp.x/this.internalModel.originalWidth*2-1,i=dp.y/this.internalModel.originalHeight*2-1,a=Math.atan2(i,r);this.internalModel.focusController.focus(Math.cos(a),-Math.sin(a),n)}tap(e,t){let n=this.hitTest(e,t);n.length&&(Ef.log(this.tag,`Hit`,n),this.emit(`hit`,n))}hitTest(e,t){return dp.x=e,dp.y=t,this.toModelPosition(dp,dp),this.internalModel.hitTest(dp.x,dp.y)}toModelPosition(e,t=e.clone(),n){return n||(this._recursivePostUpdateTransform(),this.parent?this.displayObjectUpdateTransform():(this.parent=this._tempDisplayObjectParent,this.displayObjectUpdateTransform(),this.parent=null)),this.transform.worldTransform.applyInverse(e,t),this.internalModel.localTransform.applyInverse(t,t),t}containsPoint(e){return this.getBounds(!0).contains(e.x,e.y)}_calculateBounds(){this._bounds.addFrame(this.transform,0,0,this.internalModel.width,this.internalModel.height)}onTickerUpdate(){this.update(pp.shared.deltaMS)}update(e){this.deltaTime+=e,this.elapsedTime+=e}_render(e){this.registerInteraction(e.plugins.interaction),e.batch.reset(),e.geometry.reset(),e.shader.reset(),e.state.reset();let t=!1;this.glContextID!==e.CONTEXT_UID&&(this.glContextID=e.CONTEXT_UID,this.internalModel.updateWebGLContext(e.gl,this.glContextID),t=!0);for(let n=0;nt.destroy(e.baseTexture)),this.internalModel.destroy(),super.destroy(e)}};Of(mp,[sp]);const hp=class{static resolveURL(e,t){var n;let r=(n=hp.filesMap[e])?.[t];if(r===void 0)throw Error(`Cannot find this file from uploaded files: `+t);return r}static upload(e,t){return uu(this,null,function*(){let n={};for(let r of t.getDefinedFiles()){let i=decodeURI(Wa.resolve(t.url,r)),a=e.find(e=>e.webkitRelativePath===i);a&&(n[r]=URL.createObjectURL(a))}hp.filesMap[t._objectURL]=n})}static createSettings(e){return uu(this,null,function*(){let t=e.find(e=>e.name.endsWith(`model.json`)||e.name.endsWith(`model3.json`));if(!t)throw TypeError(`Settings file not found`);let n=yield hp.readText(t),r=JSON.parse(n);r.url=t.webkitRelativePath;let i=op.findRuntime(r);if(!i)throw Error(`Unknown settings JSON`);let a=i.createModelSettings(r);return a._objectURL=URL.createObjectURL(t),a})}static readText(e){return uu(this,null,function*(){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsText(e,`utf8`)})})}};let gp=hp;gp.filesMap={},gp.factory=(e,t)=>uu(void 0,null,function*(){if(Array.isArray(e.source)&&e.source[0]instanceof File){let t=e.source,n=t.settings;if(!n)n=yield hp.createSettings(t);else if(!n._objectURL)throw Error(`"_objectURL" must be specified in ModelSettings`);n.validateFiles(t.map(e=>encodeURI(e.webkitRelativePath))),yield hp.upload(t,n),n.resolveURL=function(e){return hp.resolveURL(this._objectURL,e)},e.source=n,e.live2dModel.once(`modelLoaded`,e=>{e.once(`destroy`,function(){let e=this.settings._objectURL;if(URL.revokeObjectURL(e),hp.filesMap[e])for(let t of Object.values(hp.filesMap[e]))URL.revokeObjectURL(t);delete hp.filesMap[e]})})}return t()}),op.live2DModelMiddlewares.unshift(gp.factory);const _p=class{static unzip(e,t){return uu(this,null,function*(){let n=yield _p.getFilePaths(e),r=[];for(let e of t.getDefinedFiles()){let i=decodeURI(Wa.resolve(t.url,e));n.includes(i)&&r.push(i)}let i=yield _p.getFiles(e,r);for(let e=0;ee.endsWith(`model.json`)||e.endsWith(`model3.json`));if(!n)throw Error(`Settings file not found`);let r=yield _p.readText(e,n);if(!r)throw Error(`Empty settings file: `+n);let i=JSON.parse(r);i.url=n;let a=op.findRuntime(i);if(!a)throw Error(`Unknown settings JSON`);return a.createModelSettings(i)})}static zipReader(e,t){return uu(this,null,function*(){throw Error(`Not implemented`)})}static getFilePaths(e){return uu(this,null,function*(){throw Error(`Not implemented`)})}static getFiles(e,t){return uu(this,null,function*(){throw Error(`Not implemented`)})}static readText(e,t){return uu(this,null,function*(){throw Error(`Not implemented`)})}static releaseReader(e){}};let vp=_p;if(vp.ZIP_PROTOCOL=`zip://`,vp.uid=0,vp.factory=(e,t)=>uu(void 0,null,function*(){let n=e.source,r,i,a;if(typeof n==`string`&&(n.endsWith(`.zip`)||n.startsWith(_p.ZIP_PROTOCOL))?(r=n.startsWith(_p.ZIP_PROTOCOL)?n.slice(_p.ZIP_PROTOCOL.length):n,i=yield Xf.load({url:r,type:`blob`,target:e.live2dModel})):Array.isArray(n)&&n.length===1&&n[0]instanceof File&&n[0].name.endsWith(`.zip`)&&(i=n[0],r=URL.createObjectURL(i),a=n.settings),i){if(!i.size)throw Error(`Empty zip file`);let t=yield _p.zipReader(i,r);a||=yield _p.createSettings(t),a._objectURL=_p.ZIP_PROTOCOL+_p.uid+`/`+a.url;let n=yield _p.unzip(t,a);n.settings=a,e.source=n,r.startsWith(`blob:`)&&e.live2dModel.once(`modelLoaded`,e=>{e.once(`destroy`,function(){URL.revokeObjectURL(r)})}),_p.releaseReader(t)}return t()}),op.live2DModelMiddlewares.unshift(vp.factory),!window.Live2DCubismCore)throw Error(`Could not find Cubism 4 runtime. This plugin requires live2dcubismcore.js to be loaded.`);var yp=class extends jf{constructor(e,t){var n;super(e,t),this.queueManager=new gd,this.definitions=(n=e.expressions)??[],this.init()}isFinished(){return this.queueManager.isFinished()}getExpressionIndex(e){return this.definitions.findIndex(t=>t.Name===e)}getExpressionFile(e){return e.File}createExpression(e,t){return Uu.create(e)}_setExpression(e){return this.queueManager.startMotion(e,!1,performance.now())}stopAllExpressions(){this.queueManager.stopAllMotions()}updateParameters(e,t){return this.queueManager.doUpdateMotion(e,t)}},bp=class e extends If{constructor(t){if(super(t),!e.isValidJSON(t))throw TypeError(`Invalid JSON.`);Object.assign(this,new hf(t))}static isValidJSON(e){var t;return!!e?.FileReferences&&typeof e.FileReferences.Moc==`string`&&(t=e.FileReferences.Textures)?.length>0&&e.FileReferences.Textures.every(e=>typeof e==`string`)}replaceFiles(e){if(super.replaceFiles(e),this.motions)for(let[t,n]of Object.entries(this.motions))for(let r=0;r{this.emit(`motion:`+t)})}isFinished(){return this.queueManager.isFinished()}_startMotion(e,t){return e.setFinishedMotionHandler(t),this.queueManager.stopAllMotions(),this.queueManager.startMotion(e,!1,performance.now())}_stopAllMotions(){this.queueManager.stopAllMotions()}createMotion(e,t,n){let r=md.create(e),i=new $u(e),a=(t===this.groups.idle?Tf.idleMotionFadingDuration:Tf.motionFadingDuration)/1e3;return i.getMotionFadeInTime()===void 0&&r.setFadeInTime(n.FadeInTime>0?n.FadeInTime:a),i.getMotionFadeOutTime()===void 0&&r.setFadeOutTime(n.FadeOutTime>0?n.FadeOutTime:a),r.setEffectIds(this.eyeBlinkIds,this.lipSyncIds),r}getMotionFile(e){return e.File}getMotionName(e){return e.File}getSoundFile(e){return e.Sound}updateParameters(e,t){return this.queueManager.doUpdateMotion(e,t)}destroy(){super.destroy(),this.queueManager.release(),this.queueManager=void 0}};const Sp=new Cu;var Cp=class extends Wf{constructor(e,t,n){super(),this.lipSync=!0,this.breath=du.create(),this.renderer=new mf,this.idParamAngleX=gf,this.idParamAngleY=_f,this.idParamAngleZ=vf,this.idParamEyeBallX=yf,this.idParamEyeBallY=bf,this.idParamBodyAngleX=xf,this.idParamBreath=Sf,this.pixelsPerUnit=1,this.centeringTransform=new Bo,this.coreModel=e,this.settings=t,this.motionManager=new xp(t,n),this.init()}init(){var e;super.init(),(e=this.settings.getEyeBlinkParameters())?.length>0&&(this.eyeBlink=mu.create(this.settings)),this.breath.setParameters([new fu(this.idParamAngleX,0,15,6.5345,.5),new fu(this.idParamAngleY,0,8,3.5345,.5),new fu(this.idParamAngleZ,0,10,5.5345,.5),new fu(this.idParamBodyAngleX,0,4,15.5345,.5),new fu(this.idParamBreath,0,.5,3.2345,.5)]),this.renderer.initialize(this.coreModel),this.renderer.setIsPremultipliedAlpha(!0)}getSize(){return[this.coreModel.getModel().canvasinfo.CanvasWidth,this.coreModel.getModel().canvasinfo.CanvasHeight]}getLayout(){let e={};if(this.settings.layout)for(let t of Object.keys(this.settings.layout)){let n=t.charAt(0).toLowerCase()+t.slice(1);e[n]=this.settings.layout[t]}return e}setupLayout(){super.setupLayout(),this.pixelsPerUnit=this.coreModel.getModel().canvasinfo.PixelsPerUnit,this.centeringTransform.scale(this.pixelsPerUnit,this.pixelsPerUnit).translate(this.originalWidth/2,this.originalHeight/2)}updateWebGLContext(e,t){this.renderer.firstDraw=!0,this.renderer._bufferData={vertex:null,uv:null,index:null},this.renderer.startUp(e),this.renderer._clippingManager._currentFrameNo=t,this.renderer._clippingManager._maskTexture=void 0,rf.getInstance()._shaderSets=[]}bindTexture(e,t){this.renderer.bindTexture(e,t)}getHitAreaDefs(){var e,t;return(t=(e=this.settings.hitAreas)?.map(e=>({id:e.Id,name:e.Name,index:this.coreModel.getDrawableIndex(e.Id)})))??[]}getDrawableIDs(){return this.coreModel.getDrawableIds()}getDrawableIndex(e){return this.coreModel.getDrawableIndex(e)}getDrawableVertices(e){if(typeof e==`string`&&(e=this.coreModel.getDrawableIndex(e),e===-1))throw TypeError(`Unable to find drawable ID: `+e);let t=this.coreModel.getDrawableVertices(e).slice();for(let e=0;e{function n(){try{Dp(),e()}catch(e){if(Tp--,Tp<0){let n=Error(`Failed to start up Cubism 4 framework.`);n.cause=e,t(n);return}Ef.log(`Cubism4`,`Startup failed, retrying 10ms later...`),setTimeout(n,10)}}n()}),wp)}function Dp(e){e=Object.assign({logFunction:console.log,loggingLevel:Mu.LogLevel_Verbose},e),ju.startUp(e),ju.initialize()}op.registerRuntime({version:4,ready:Ep,test(e){return e instanceof bp||bp.isValidJSON(e)},isValidMoc(e){if(e.byteLength<4)return!1;let t=new Int8Array(e,0,4);return String.fromCharCode(...t)===`MOC3`},createModelSettings(e){return new bp(e)},createCoreModel(e){let t=Bu.create(e);try{let e=t.createModel();return e.__moc=t,e}catch(e){try{t.release()}catch{}throw e}},createInternalModel(e,t,n){let r=new Cp(e,t,n),i=e;return i.__moc&&(r.__moc=i.__moc,delete i.__moc,r.once(`destroy`,Op)),r},createPhysics(e,t){return Md.create(t)},createPose(e,t){return vu.create(t)}});function Op(){var e;(e=this.__moc)==null||e.release()}var kp=zt({__name:`Canvas`,props:{width:{},height:{},resolution:{default:2}},setup(e,{expose:t}){let n=e,r=U(),i=U(),a=U();async function o(e){mp.registerTicker(Eo),So.add(Do),i.value=new cu({width:n.width*n.resolution,height:n.height*n.resolution,backgroundAlpha:0,preserveDrawingBuffer:!0}),a.value=i.value.view,a.value.style.width=`100%`,a.value.style.height=`100%`,a.value.style.objectFit=`cover`,a.value.style.display=`block`,e.appendChild(i.value.view)}function s(){i.value&&i.value.renderer.resize(n.width,n.height)}K([()=>n.width,()=>n.height],()=>s()),K(()=>n.resolution,e=>{i.value&&e&&(i.value.renderer.resolution=e,s())}),an(async()=>r.value&&await o(r.value)),sn(()=>{var e;return(e=i.value)?.destroy()});async function c(){let e=new Promise(e=>{if(!a.value||!i.value)return e(null);i.value.render(),a.value.toBlob(e)});return e}function l(){return a.value}return t({captureFrame:c,canvasElement:l}),(e,t)=>(H(),Lt(`div`,{ref_key:`containerRef`,ref:r,"h-full":``,"w-full":``},[mn(e.$slots,`default`,{app:i.value})],512))}}),Ap=kp,jp=Et((exports,t)=>{ -/*! -localForage -- Offline Storage, Improved -Version 1.10.0 -https://localforage.github.io/localForage -(c) 2013-2017 Mozilla, Apache License 2.0 -*/ -(function(n){if(typeof exports==`object`&&t!==void 0)t.exports=n();else if(typeof define==`function`&&define.amd)define([],n);else{var r;r=typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this,r.localforage=n()}})(function(){var e,t,n;return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof Ot==`function`&&Ot;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=Error(`Cannot find module '`+o+`'`);throw l.code=`MODULE_NOT_FOUND`,l}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return i(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var a=typeof Ot==`function`&&Ot,o=0;o`u`&&e(3);var l=Promise;function u(e,t){t&&e.then(function(e){t(null,e)},function(e){t(e)})}function d(e,t,n){typeof t==`function`&&e.then(t),typeof n==`function`&&e.catch(n)}function f(e){return typeof e!=`string`&&(console.warn(e+` used as a key, but it is not a string.`),e=String(e)),e}function p(){if(arguments.length&&typeof arguments[arguments.length-1]==`function`)return arguments[arguments.length-1]}var m=`local-forage-detect-blob-support`,h=void 0,g={},_=Object.prototype.toString,v=`readonly`,y=`readwrite`;function b(e){for(var t=e.length,n=new ArrayBuffer(t),r=new Uint8Array(n),i=0;i=43)}}).catch(function(){return!1})}function S(e){return typeof h==`boolean`?l.resolve(h):x(e).then(function(e){return h=e,h})}function C(e){var t=g[e.name],n={};n.promise=new l(function(e,t){n.resolve=e,n.reject=t}),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then(function(){return n.promise}):t.dbReady=n.promise}function w(e){var t=g[e.name],n=t.deferredOperations.pop();if(n)return n.resolve(),n.promise}function T(e,t){var n=g[e.name],r=n.deferredOperations.pop();if(r)return r.reject(t),r.promise}function E(e,t){return new l(function(n,r){if(g[e.name]=g[e.name]||F(),e.db)if(t)C(e),e.db.close();else return n(e.db);var i=[e.name];t&&i.push(e.version);var a=o.open.apply(o,i);t&&(a.onupgradeneeded=function(t){var n=a.result;try{n.createObjectStore(e.storeName),t.oldVersion<=1&&n.createObjectStore(m)}catch(n){if(n.name===`ConstraintError`)console.warn(`The database "`+e.name+`" has been upgraded from version `+t.oldVersion+` to version `+t.newVersion+`, but the storage "`+e.storeName+`" already exists.`);else throw n}}),a.onerror=function(e){e.preventDefault(),r(a.error)},a.onsuccess=function(){var t=a.result;t.onversionchange=function(e){e.target.close()},n(t),w(e)}})}function D(e){return E(e,!1)}function O(e){return E(e,!0)}function k(e,t){if(!e.db)return!0;var n=!e.db.objectStoreNames.contains(e.storeName),r=e.versione.db.version;if(r&&(e.version!==t&&console.warn(`The database "`+e.name+`" can't be downgraded from version `+e.db.version+` to version `+e.version+`.`),e.version=e.db.version),i||n){if(n){var a=e.db.version+1;a>e.version&&(e.version=a)}return!0}return!1}function A(e){return new l(function(t,n){var r=new FileReader;r.onerror=n,r.onloadend=function(n){var r=btoa(n.target.result||``);t({__local_forage_encoded_blob:!0,data:r,type:e.type})},r.readAsBinaryString(e)})}function j(e){var t=b(atob(e.data));return c([t],{type:e.type})}function M(e){return e&&e.__local_forage_encoded_blob}function N(e){var t=this,n=t._initReady().then(function(){var e=g[t._dbInfo.name];if(e&&e.dbReady)return e.dbReady});return d(n,e,e),n}function ee(e){C(e);for(var t=g[e.name],n=t.forages,r=0;r0&&(!e.db||i.name===`InvalidStateError`||i.name===`NotFoundError`))return l.resolve().then(function(){if(!e.db||i.name===`NotFoundError`&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),O(e)}).then(function(){return ee(e).then(function(){P(e,t,n,r-1)})}).catch(n);n(i)}}function F(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function I(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=e[r];var i=g[n.name];i||(i=F(),g[n.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=N);var a=[];function o(){return l.resolve()}for(var s=0;s>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l}function Oe(e){var t=new Uint8Array(e),n=``,r;for(r=0;r>2],n+=le[(t[r]&3)<<4|t[r+1]>>4],n+=le[(t[r+1]&15)<<2|t[r+2]>>6],n+=le[t[r+2]&63];return t.length%3==2?n=n.substring(0,n.length-1)+`=`:t.length%3==1&&(n=n.substring(0,n.length-2)+`==`),n}function ke(e,t){var n=``;if(e&&(n=Ee.call(e)),e&&(n===`[object ArrayBuffer]`||e.buffer&&Ee.call(e.buffer)===`[object ArrayBuffer]`)){var r,i=fe;e instanceof ArrayBuffer?(r=e,i+=me):(r=e.buffer,n===`[object Int8Array]`?i+=ge:n===`[object Uint8Array]`?i+=_e:n===`[object Uint8ClampedArray]`?i+=ve:n===`[object Int16Array]`?i+=ye:n===`[object Uint16Array]`?i+=xe:n===`[object Int32Array]`?i+=be:n===`[object Uint32Array]`?i+=Se:n===`[object Float32Array]`?i+=Ce:n===`[object Float64Array]`?i+=we:t(Error(`Failed to get type for BinaryArray`))),t(i+Oe(r))}else if(n===`[object Blob]`){var a=new FileReader;a.onload=function(){var n=ue+e.type+`~`+Oe(this.result);t(fe+he+n)},a.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(n){console.error(`Couldn't convert value into a JSON string: `,e),t(null,n)}}function Ae(e){if(e.substring(0,pe)!==fe)return JSON.parse(e);var t=e.substring(Te),n=e.substring(pe,Te),r;if(n===he&&de.test(t)){var i=t.match(de);r=i[1],t=t.substring(i[0].length)}var a=De(t);switch(n){case me:return a;case he:return c([a],{type:r});case ge:return new Int8Array(a);case _e:return new Uint8Array(a);case ve:return new Uint8ClampedArray(a);case ye:return new Int16Array(a);case xe:return new Uint16Array(a);case be:return new Int32Array(a);case Se:return new Uint32Array(a);case Ce:return new Float32Array(a);case we:return new Float64Array(a);default:throw Error(`Unkown type: `+n)}}var je={serialize:ke,deserialize:Ae,stringToBuffer:De,bufferToString:Oe};function Me(e,t,n,r){e.executeSql(`CREATE TABLE IF NOT EXISTS `+t.storeName+` (id INTEGER PRIMARY KEY, key unique, value)`,[],n,r)}function Ne(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=typeof e[r]==`string`?e[r]:e[r].toString();var i=new l(function(e,r){try{n.db=openDatabase(n.name,String(n.version),n.description,n.size)}catch(e){return r(e)}n.db.transaction(function(i){Me(i,n,function(){t._dbInfo=n,e()},function(e,t){r(t)})},r)});return n.serializer=je,i}function Pe(e,t,n,r,i,a){e.executeSql(n,r,i,function(e,o){o.code===o.SYNTAX_ERR?e.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name = ?`,[t.storeName],function(e,s){s.rows.length?a(e,o):Me(e,t,function(){e.executeSql(n,r,i,a)},a)},a):a(e,o)},a)}function Fe(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Pe(n,i,`SELECT * FROM `+i.storeName+` WHERE key = ? LIMIT 1`,[e],function(e,n){var r=n.rows.length?n.rows.item(0).value:null;r&&=i.serializer.deserialize(r),t(r)},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function Ie(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Pe(n,i,`SELECT * FROM `+i.storeName,[],function(n,r){for(var a=r.rows,o=a.length,s=0;s0){a(Le.apply(i,[e,s,n,r-1]));return}o(t)}})})}).catch(o)});return u(a,n),a}function Re(e,t,n){return Le.apply(this,[e,t,n,1])}function ze(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Pe(n,i,`DELETE FROM `+i.storeName+` WHERE key = ?`,[e],function(){t()},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function Be(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){Pe(t,r,`DELETE FROM `+r.storeName,[],function(){e()},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function Ve(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){Pe(t,r,`SELECT COUNT(key) as c FROM `+r.storeName,[],function(t,n){var r=n.rows.item(0).c;e(r)},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function He(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Pe(n,i,`SELECT key FROM `+i.storeName+` WHERE id = ? LIMIT 1`,[e+1],function(e,n){var r=n.rows.length?n.rows.item(0).key:null;t(r)},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function Ue(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){Pe(t,r,`SELECT key FROM `+r.storeName,[],function(t,n){for(var r=[],i=0;i '__WebKitDatabaseInfoTable__'`,[],function(n,r){for(var i=[],a=0;a0}function Ze(e){var t=this,n={};if(e)for(var r in e)n[r]=e[r];return n.keyPrefix=Je(e,t._defaultConfig),Xe()?(t._dbInfo=n,n.serializer=je,l.resolve()):l.reject()}function Qe(e){var t=this,n=t.ready().then(function(){for(var e=t._dbInfo.keyPrefix,n=localStorage.length-1;n>=0;n--){var r=localStorage.key(n);r.indexOf(e)===0&&localStorage.removeItem(r)}});return u(n,e),n}function $e(e,t){var n=this;e=f(e);var r=n.ready().then(function(){var t=n._dbInfo,r=localStorage.getItem(t.keyPrefix+e);return r&&=t.serializer.deserialize(r),r});return u(r,t),r}function et(e,t){var n=this,r=n.ready().then(function(){for(var t=n._dbInfo,r=t.keyPrefix,i=r.length,a=localStorage.length,o=1,s=0;s=0;t--){var n=localStorage.key(t);n.indexOf(e)===0&&localStorage.removeItem(n)}}):l.reject(`Invalid arguments`),u(i,t),i}var st={_driver:`localStorageWrapper`,_initStorage:Ze,_support:qe(),iterate:et,getItem:$e,setItem:at,removeItem:it,clear:Qe,length:rt,key:tt,keys:nt,dropInstance:ot},ct=function(e,t){return e===t||typeof e==`number`&&typeof t==`number`&&isNaN(e)&&isNaN(t)},lt=function(e,t){for(var n=e.length,r=0;r=0;f--){var p=d[f],m=this.recursiveFindHit(e,p,n,r,c);if(m){if(!p.parent)continue;c=!1,m&&(e.target&&(r=!1),s=!0)}}return i&&(r&&!e.target&&!t.hitArea&&t.containsPoint&&t.containsPoint(o)&&(s=!0),t.interactive&&(s&&!e.target&&(e.target=t),n&&n(e,t,!!s))),s},e.prototype.findHit=function(e,t,n,r){this.recursiveFindHit(e,t,n,r,!1)},e}(),Rp={interactive:!1,interactiveChildren:!0,hitArea:null,get buttonMode(){return this.cursor===`pointer`},set buttonMode(e){e?this.cursor=`pointer`:this.cursor===`pointer`&&(this.cursor=null)},cursor:null,get trackedPointers(){return this._trackedPointers===void 0&&(this._trackedPointers={}),this._trackedPointers},_trackedPointers:void 0};ru.mixin(Rp);var zp=1,Bp={target:null,data:{global:null}},Vp=function(e){Pp(t,e);function t(t,n){var r=e.call(this)||this;return n||={},r.renderer=t,r.autoPreventDefault=n.autoPreventDefault===void 0?!0:n.autoPreventDefault,r.interactionFrequency=n.interactionFrequency||10,r.mouse=new Mp,r.mouse.identifier=zp,r.mouse.global.set(-999999),r.activeInteractionData={},r.activeInteractionData[zp]=r.mouse,r.interactionDataPool=[],r.eventData=new Fp,r.interactionDOMElement=null,r.moveWhenInside=!1,r.eventsAdded=!1,r.tickerAdded=!1,r.mouseOverRenderer=!(`PointerEvent`in globalThis),r.supportsTouchEvents=`ontouchstart`in globalThis,r.supportsPointerEvents=!!globalThis.PointerEvent,r.onPointerUp=r.onPointerUp.bind(r),r.processPointerUp=r.processPointerUp.bind(r),r.onPointerCancel=r.onPointerCancel.bind(r),r.processPointerCancel=r.processPointerCancel.bind(r),r.onPointerDown=r.onPointerDown.bind(r),r.processPointerDown=r.processPointerDown.bind(r),r.onPointerMove=r.onPointerMove.bind(r),r.processPointerMove=r.processPointerMove.bind(r),r.onPointerOut=r.onPointerOut.bind(r),r.processPointerOverOut=r.processPointerOverOut.bind(r),r.onPointerOver=r.onPointerOver.bind(r),r.cursorStyles={default:`inherit`,pointer:`pointer`},r.currentCursorMode=null,r.cursor=null,r.resolution=1,r.delayedEvents=[],r.search=new Lp,r._tempDisplayObject=new iu,r._eventListenerOptions={capture:!0,passive:!1},r._useSystemTicker=n.useSystemTicker===void 0?!0:n.useSystemTicker,r.setTargetElement(r.renderer.view,r.renderer.resolution),r}return Object.defineProperty(t.prototype,`useSystemTicker`,{get:function(){return this._useSystemTicker},set:function(e){this._useSystemTicker=e,e?this.addTickerListener():this.removeTickerListener()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lastObjectRendered`,{get:function(){return this.renderer._lastObjectRendered||this._tempDisplayObject},enumerable:!1,configurable:!0}),t.prototype.hitTest=function(e,t){return Bp.target=null,Bp.data.global=e,t||=this.lastObjectRendered,this.processInteractive(Bp,t,null,!0),Bp.target},t.prototype.setTargetElement=function(e,t){t===void 0&&(t=1),this.removeTickerListener(),this.removeEvents(),this.interactionDOMElement=e,this.resolution=t,this.addEvents(),this.addTickerListener()},t.prototype.addTickerListener=function(){this.tickerAdded||!this.interactionDOMElement||!this._useSystemTicker||(Eo.system.add(this.tickerUpdate,this,wo.INTERACTION),this.tickerAdded=!0)},t.prototype.removeTickerListener=function(){this.tickerAdded&&(Eo.system.remove(this.tickerUpdate,this),this.tickerAdded=!1)},t.prototype.addEvents=function(){if(!(this.eventsAdded||!this.interactionDOMElement)){var e=this.interactionDOMElement.style;globalThis.navigator.msPointerEnabled?(e.msContentZooming=`none`,e.msTouchAction=`none`):this.supportsPointerEvents&&(e.touchAction=`none`),this.supportsPointerEvents?(globalThis.document.addEventListener(`pointermove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`pointerdown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`pointerleave`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`pointerover`,this.onPointerOver,this._eventListenerOptions),globalThis.addEventListener(`pointercancel`,this.onPointerCancel,this._eventListenerOptions),globalThis.addEventListener(`pointerup`,this.onPointerUp,this._eventListenerOptions)):(globalThis.document.addEventListener(`mousemove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`mousedown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`mouseout`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`mouseover`,this.onPointerOver,this._eventListenerOptions),globalThis.addEventListener(`mouseup`,this.onPointerUp,this._eventListenerOptions)),this.supportsTouchEvents&&(this.interactionDOMElement.addEventListener(`touchstart`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`touchcancel`,this.onPointerCancel,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`touchend`,this.onPointerUp,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`touchmove`,this.onPointerMove,this._eventListenerOptions)),this.eventsAdded=!0}},t.prototype.removeEvents=function(){if(!(!this.eventsAdded||!this.interactionDOMElement)){var e=this.interactionDOMElement.style;globalThis.navigator.msPointerEnabled?(e.msContentZooming=``,e.msTouchAction=``):this.supportsPointerEvents&&(e.touchAction=``),this.supportsPointerEvents?(globalThis.document.removeEventListener(`pointermove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`pointerdown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`pointerleave`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`pointerover`,this.onPointerOver,this._eventListenerOptions),globalThis.removeEventListener(`pointercancel`,this.onPointerCancel,this._eventListenerOptions),globalThis.removeEventListener(`pointerup`,this.onPointerUp,this._eventListenerOptions)):(globalThis.document.removeEventListener(`mousemove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`mousedown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`mouseout`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`mouseover`,this.onPointerOver,this._eventListenerOptions),globalThis.removeEventListener(`mouseup`,this.onPointerUp,this._eventListenerOptions)),this.supportsTouchEvents&&(this.interactionDOMElement.removeEventListener(`touchstart`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`touchcancel`,this.onPointerCancel,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`touchend`,this.onPointerUp,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`touchmove`,this.onPointerMove,this._eventListenerOptions)),this.interactionDOMElement=null,this.eventsAdded=!1}},t.prototype.tickerUpdate=function(e){this._deltaTime+=e,!(this._deltaTime0&&(a=e.composedPath()[0]);for(var o=a===this.interactionDOMElement?``:`outside`,s=0;s 0.0) { - c.rgb /= c.a; - - vec3 rgb = pow(c.rgb, vec3(1. / gamma)); - rgb = mix(vec3(.5), mix(vec3(dot(vec3(.2125, .7154, .0721), rgb)), rgb, saturation), contrast); - rgb.r *= red; - rgb.g *= green; - rgb.b *= blue; - c.rgb = rgb * brightness; - - c.rgb *= c.a; - } - - gl_FragColor = c * alpha; -} -`,Kp=function(e){Up(t,e);function t(t){var n=e.call(this,Wp,Gp)||this;return n.gamma=1,n.saturation=1,n.contrast=1,n.brightness=1,n.red=1,n.green=1,n.blue=1,n.alpha=1,Object.assign(n,t),n}return t.prototype.apply=function(e,t,n,r){this.uniforms.gamma=Math.max(this.gamma,1e-4),this.uniforms.saturation=this.saturation,this.uniforms.contrast=this.contrast,this.uniforms.brightness=this.brightness,this.uniforms.red=this.red,this.uniforms.green=this.green,this.uniforms.blue=this.blue,this.uniforms.alpha=this.alpha,e.applyFilter(this,t,n,r)},t}(Vc),qp=function(e,t){return qp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},qp(e,t)};function Jp(e,t){qp(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Yp=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Xp=` -varying vec2 vTextureCoord; -uniform sampler2D uSampler; - -uniform vec2 uOffset; - -void main(void) -{ - vec4 color = vec4(0.0); - - // Sample top left pixel - color += texture2D(uSampler, vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y + uOffset.y)); - - // Sample top right pixel - color += texture2D(uSampler, vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y + uOffset.y)); - - // Sample bottom right pixel - color += texture2D(uSampler, vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y - uOffset.y)); - - // Sample bottom left pixel - color += texture2D(uSampler, vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y - uOffset.y)); - - // Average - color *= 0.25; - - gl_FragColor = color; -}`,Zp=` -varying vec2 vTextureCoord; -uniform sampler2D uSampler; - -uniform vec2 uOffset; -uniform vec4 filterClamp; - -void main(void) -{ - vec4 color = vec4(0.0); - - // Sample top left pixel - color += texture2D(uSampler, clamp(vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y + uOffset.y), filterClamp.xy, filterClamp.zw)); - - // Sample top right pixel - color += texture2D(uSampler, clamp(vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y + uOffset.y), filterClamp.xy, filterClamp.zw)); - - // Sample bottom right pixel - color += texture2D(uSampler, clamp(vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y - uOffset.y), filterClamp.xy, filterClamp.zw)); - - // Sample bottom left pixel - color += texture2D(uSampler, clamp(vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y - uOffset.y), filterClamp.xy, filterClamp.zw)); - - // Average - color *= 0.25; - - gl_FragColor = color; -} -`,Qp=function(e){Jp(t,e);function t(t,n,r){t===void 0&&(t=4),n===void 0&&(n=3),r===void 0&&(r=!1);var i=e.call(this,Yp,r?Zp:Xp)||this;return i._kernels=[],i._blur=4,i._quality=3,i.uniforms.uOffset=new Float32Array(2),i._pixelSize=new Mo,i.pixelSize=1,i._clamp=r,Array.isArray(t)?i.kernels=t:(i._blur=t,i.quality=n),i}return t.prototype.apply=function(e,t,n,r){var i=this._pixelSize.x/t._frame.width,a=this._pixelSize.y/t._frame.height,o;if(this._quality===1||this._blur===0)o=this._kernels[0]+.5,this.uniforms.uOffset[0]=o*i,this.uniforms.uOffset[1]=o*a,e.applyFilter(this,t,n,r);else{for(var s=e.getFilterTexture(),c=t,l=s,u=void 0,d=this._quality-1,f=0;f0)for(var r=e,i=e/t,a=1;a0?(this._kernels=e,this._quality=e.length,this._blur=Math.max.apply(Math,e)):(this._kernels=[0],this._quality=1)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`clamp`,{get:function(){return this._clamp},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`pixelSize`,{get:function(){return this._pixelSize},set:function(e){typeof e==`number`?(this._pixelSize.x=e,this._pixelSize.y=e):Array.isArray(e)?(this._pixelSize.x=e[0],this._pixelSize.y=e[1]):e instanceof Mo?(this._pixelSize.x=e.x,this._pixelSize.y=e.y):(this._pixelSize.x=1,this._pixelSize.y=1)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`quality`,{get:function(){return this._quality},set:function(e){this._quality=Math.max(1,Math.round(e)),this._generateKernels()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`blur`,{get:function(){return this._blur},set:function(e){this._blur=e,this._generateKernels()},enumerable:!1,configurable:!0}),t}(Vc),$p=function(e,t){return $p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},$p(e,t)};function em(e,t){$p(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var tm=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,nm=` -uniform sampler2D uSampler; -varying vec2 vTextureCoord; - -uniform float threshold; - -void main() { - vec4 color = texture2D(uSampler, vTextureCoord); - - // A simple & fast algorithm for getting brightness. - // It's inaccuracy , but good enought for this feature. - float _max = max(max(color.r, color.g), color.b); - float _min = min(min(color.r, color.g), color.b); - float brightness = (_max + _min) * 0.5; - - if(brightness > threshold) { - gl_FragColor = color; - } else { - gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); - } -} -`,rm=function(e){em(t,e);function t(t){t===void 0&&(t=.5);var n=e.call(this,tm,nm)||this;return n.threshold=t,n}return Object.defineProperty(t.prototype,`threshold`,{get:function(){return this.uniforms.threshold},set:function(e){this.uniforms.threshold=e},enumerable:!1,configurable:!0}),t}(Vc),im=`uniform sampler2D uSampler; -varying vec2 vTextureCoord; - -uniform sampler2D bloomTexture; -uniform float bloomScale; -uniform float brightness; - -void main() { - vec4 color = texture2D(uSampler, vTextureCoord); - color.rgb *= brightness; - vec4 bloomColor = vec4(texture2D(bloomTexture, vTextureCoord).rgb, 0.0); - bloomColor.rgb *= bloomScale; - gl_FragColor = color + bloomColor; -} -`,am=function(e){em(t,e);function t(n){var r=e.call(this,tm,im)||this;r.bloomScale=1,r.brightness=1,r._resolution=Aa.FILTER_RESOLUTION,typeof n==`number`&&(n={threshold:n});var i=Object.assign(t.defaults,n);r.bloomScale=i.bloomScale,r.brightness=i.brightness;var a=i.kernels,o=i.blur,s=i.quality,c=i.pixelSize,l=i.resolution;return r._extractFilter=new rm(i.threshold),r._extractFilter.resolution=l,r._blurFilter=a?new Qp(a):new Qp(o,s),r.pixelSize=c,r.resolution=l,r}return t.prototype.apply=function(e,t,n,r,i){var a=e.getFilterTexture();this._extractFilter.apply(e,t,a,1,i);var o=e.getFilterTexture();this._blurFilter.apply(e,a,o,1),this.uniforms.bloomScale=this.bloomScale,this.uniforms.brightness=this.brightness,this.uniforms.bloomTexture=o,e.applyFilter(this,t,n,r),e.returnFilterTexture(o),e.returnFilterTexture(a)},Object.defineProperty(t.prototype,`resolution`,{get:function(){return this._resolution},set:function(e){this._resolution=e,this._extractFilter&&(this._extractFilter.resolution=e),this._blurFilter&&(this._blurFilter.resolution=e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`threshold`,{get:function(){return this._extractFilter.threshold},set:function(e){this._extractFilter.threshold=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`kernels`,{get:function(){return this._blurFilter.kernels},set:function(e){this._blurFilter.kernels=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`blur`,{get:function(){return this._blurFilter.blur},set:function(e){this._blurFilter.blur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`quality`,{get:function(){return this._blurFilter.quality},set:function(e){this._blurFilter.quality=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`pixelSize`,{get:function(){return this._blurFilter.pixelSize},set:function(e){this._blurFilter.pixelSize=e},enumerable:!1,configurable:!0}),t.defaults={threshold:.5,bloomScale:1,brightness:1,kernels:null,blur:8,quality:4,pixelSize:1,resolution:Aa.FILTER_RESOLUTION},t}(Vc),om=function(e,t){return om=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},om(e,t)};function sm(e,t){om(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var cm=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,lm=`varying vec2 vTextureCoord; - -uniform vec4 filterArea; -uniform float pixelSize; -uniform sampler2D uSampler; - -vec2 mapCoord( vec2 coord ) -{ - coord *= filterArea.xy; - coord += filterArea.zw; - - return coord; -} - -vec2 unmapCoord( vec2 coord ) -{ - coord -= filterArea.zw; - coord /= filterArea.xy; - - return coord; -} - -vec2 pixelate(vec2 coord, vec2 size) -{ - return floor( coord / size ) * size; -} - -vec2 getMod(vec2 coord, vec2 size) -{ - return mod( coord , size) / size; -} - -float character(float n, vec2 p) -{ - p = floor(p*vec2(4.0, -4.0) + 2.5); - - if (clamp(p.x, 0.0, 4.0) == p.x) - { - if (clamp(p.y, 0.0, 4.0) == p.y) - { - if (int(mod(n/exp2(p.x + 5.0*p.y), 2.0)) == 1) return 1.0; - } - } - return 0.0; -} - -void main() -{ - vec2 coord = mapCoord(vTextureCoord); - - // get the rounded color.. - vec2 pixCoord = pixelate(coord, vec2(pixelSize)); - pixCoord = unmapCoord(pixCoord); - - vec4 color = texture2D(uSampler, pixCoord); - - // determine the character to use - float gray = (color.r + color.g + color.b) / 3.0; - - float n = 65536.0; // . - if (gray > 0.2) n = 65600.0; // : - if (gray > 0.3) n = 332772.0; // * - if (gray > 0.4) n = 15255086.0; // o - if (gray > 0.5) n = 23385164.0; // & - if (gray > 0.6) n = 15252014.0; // 8 - if (gray > 0.7) n = 13199452.0; // @ - if (gray > 0.8) n = 11512810.0; // # - - // get the mod.. - vec2 modd = getMod(coord, vec2(pixelSize)); - - gl_FragColor = color * character( n, vec2(-1.0) + modd * 2.0); - -} -`,um=function(e){sm(t,e);function t(t){t===void 0&&(t=8);var n=e.call(this,cm,lm)||this;return n.size=t,n}return Object.defineProperty(t.prototype,`size`,{get:function(){return this.uniforms.pixelSize},set:function(e){this.uniforms.pixelSize=e},enumerable:!1,configurable:!0}),t}(Vc),dm=function(e,t){return dm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},dm(e,t)};function fm(e,t){dm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var pm=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,mm=`precision mediump float; - -varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform vec4 filterArea; - -uniform float transformX; -uniform float transformY; -uniform vec3 lightColor; -uniform float lightAlpha; -uniform vec3 shadowColor; -uniform float shadowAlpha; - -void main(void) { - vec2 transform = vec2(1.0 / filterArea) * vec2(transformX, transformY); - vec4 color = texture2D(uSampler, vTextureCoord); - float light = texture2D(uSampler, vTextureCoord - transform).a; - float shadow = texture2D(uSampler, vTextureCoord + transform).a; - - color.rgb = mix(color.rgb, lightColor, clamp((color.a - light) * lightAlpha, 0.0, 1.0)); - color.rgb = mix(color.rgb, shadowColor, clamp((color.a - shadow) * shadowAlpha, 0.0, 1.0)); - gl_FragColor = vec4(color.rgb * color.a, color.a); -} -`,hm=function(e){fm(t,e);function t(t){var n=e.call(this,pm,mm)||this;return n._thickness=2,n._angle=0,n.uniforms.lightColor=new Float32Array(3),n.uniforms.shadowColor=new Float32Array(3),Object.assign(n,{rotation:45,thickness:2,lightColor:16777215,lightAlpha:.7,shadowColor:0,shadowAlpha:.7},t),n.padding=1,n}return t.prototype._updateTransform=function(){this.uniforms.transformX=this._thickness*Math.cos(this._angle),this.uniforms.transformY=this._thickness*Math.sin(this._angle)},Object.defineProperty(t.prototype,`rotation`,{get:function(){return this._angle/Ao},set:function(e){this._angle=e*Ao,this._updateTransform()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`thickness`,{get:function(){return this._thickness},set:function(e){this._thickness=e,this._updateTransform()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lightColor`,{get:function(){return Qa(this.uniforms.lightColor)},set:function(e){Xa(e,this.uniforms.lightColor)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lightAlpha`,{get:function(){return this.uniforms.lightAlpha},set:function(e){this.uniforms.lightAlpha=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`shadowColor`,{get:function(){return Qa(this.uniforms.shadowColor)},set:function(e){Xa(e,this.uniforms.shadowColor)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`shadowAlpha`,{get:function(){return this.uniforms.shadowAlpha},set:function(e){this.uniforms.shadowAlpha=e},enumerable:!1,configurable:!0}),t}(Vc),gm=function(e,t){return gm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},gm(e,t)};function _m(e,t){gm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var vm=`varying vec2 vTextureCoord; - -uniform sampler2D uSampler; -uniform float uAlpha; - -void main(void) -{ - gl_FragColor = texture2D(uSampler, vTextureCoord) * uAlpha; -} -`,ym=function(e){_m(t,e);function t(t){t===void 0&&(t=1);var n=e.call(this,Ll,vm,{uAlpha:1})||this;return n.alpha=t,n}return Object.defineProperty(t.prototype,`alpha`,{get:function(){return this.uniforms.uAlpha},set:function(e){this.uniforms.uAlpha=e},enumerable:!1,configurable:!0}),t}(Vc),bm=function(e,t){return bm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},bm(e,t)};function xm(e,t){bm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Sm=` - attribute vec2 aVertexPosition; - - uniform mat3 projectionMatrix; - - uniform float strength; - - varying vec2 vBlurTexCoords[%size%]; - - uniform vec4 inputSize; - uniform vec4 outputFrame; - - vec4 filterVertexPosition( void ) - { - vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy; - - return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0); - } - - vec2 filterTextureCoord( void ) - { - return aVertexPosition * (outputFrame.zw * inputSize.zw); - } - - void main(void) - { - gl_Position = filterVertexPosition(); - - vec2 textureCoord = filterTextureCoord(); - %blur% - }`;function Cm(e,t){var n=Math.ceil(e/2),r=Sm,i=``,a;a=t?`vBlurTexCoords[%index%] = textureCoord + vec2(%sampleIndex% * strength, 0.0);`:`vBlurTexCoords[%index%] = textureCoord + vec2(0.0, %sampleIndex% * strength);`;for(var o=0;o=n&&(o=e-s-1),c=c.replace(`%value%`,t[o].toString()),i+=c,i+=` -`}return r=r.replace(`%blur%`,i),r=r.replace(`%size%`,e.toString()),r}var Dm=function(e){xm(t,e);function t(t,n,r,i,a){n===void 0&&(n=8),r===void 0&&(r=4),i===void 0&&(i=Aa.FILTER_RESOLUTION),a===void 0&&(a=5);var o=this,s=Cm(a,t),c=Em(a);return o=e.call(this,s,c)||this,o.horizontal=t,o.resolution=i,o._quality=0,o.quality=r,o.blur=n,o}return t.prototype.apply=function(e,t,n,r){if(n?this.horizontal?this.uniforms.strength=1/n.width*(n.width/t.width):this.uniforms.strength=1/n.height*(n.height/t.height):this.horizontal?this.uniforms.strength=1/e.renderer.width*(e.renderer.width/t.width):this.uniforms.strength=1/e.renderer.height*(e.renderer.height/t.height),this.uniforms.strength*=this.strength,this.uniforms.strength/=this.passes,this.passes===1)e.applyFilter(this,t,n,r);else{var i=e.getFilterTexture(),a=e.renderer,o=t,s=i;this.state.blend=!1,e.applyFilter(this,o,s,ta.CLEAR);for(var c=1;c 0.0) { - coord *= mix(1.0, smoothstep(0.0, radius / distance, percent), strength * 0.75); - } else { - coord *= mix(1.0, pow(percent, 1.0 + strength * 0.75) * radius / distance, 1.0 - percent); - } - } - coord += center * dimensions.xy; - coord /= filterArea.xy; - vec2 clampedCoord = clamp(coord, filterClamp.xy, filterClamp.zw); - vec4 color = texture2D(uSampler, clampedCoord); - if (coord != clampedCoord) { - color *= max(0.0, 1.0 - length(coord - clampedCoord)); - } - - gl_FragColor = color; -} -`,Im=function(e){Nm(t,e);function t(n){var r=e.call(this,Pm,Fm)||this;return r.uniforms.dimensions=new Float32Array(2),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i=t.filterFrame,a=i.width,o=i.height;this.uniforms.dimensions[0]=a,this.uniforms.dimensions[1]=o,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.radius},set:function(e){this.uniforms.radius=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`strength`,{get:function(){return this.uniforms.strength},set:function(e){this.uniforms.strength=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.center},set:function(e){this.uniforms.center=e},enumerable:!1,configurable:!0}),t.defaults={center:[.5,.5],radius:100,strength:1},t}(Vc),Lm=function(e,t){return Lm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Lm(e,t)};function Rm(e,t){Lm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var zm=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Bm=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform sampler2D colorMap; -uniform float _mix; -uniform float _size; -uniform float _sliceSize; -uniform float _slicePixelSize; -uniform float _sliceInnerSize; -void main() { - vec4 color = texture2D(uSampler, vTextureCoord.xy); - - vec4 adjusted; - if (color.a > 0.0) { - color.rgb /= color.a; - float innerWidth = _size - 1.0; - float zSlice0 = min(floor(color.b * innerWidth), innerWidth); - float zSlice1 = min(zSlice0 + 1.0, innerWidth); - float xOffset = _slicePixelSize * 0.5 + color.r * _sliceInnerSize; - float s0 = xOffset + (zSlice0 * _sliceSize); - float s1 = xOffset + (zSlice1 * _sliceSize); - float yOffset = _sliceSize * 0.5 + color.g * (1.0 - _sliceSize); - vec4 slice0Color = texture2D(colorMap, vec2(s0,yOffset)); - vec4 slice1Color = texture2D(colorMap, vec2(s1,yOffset)); - float zOffset = fract(color.b * innerWidth); - adjusted = mix(slice0Color, slice1Color, zOffset); - - color.rgb *= color.a; - } - gl_FragColor = vec4(mix(color, adjusted, _mix).rgb, color.a); - -}`,Vm=function(e){Rm(t,e);function t(t,n,r){n===void 0&&(n=!1),r===void 0&&(r=1);var i=e.call(this,zm,Bm)||this;return i.mix=1,i._size=0,i._sliceSize=0,i._slicePixelSize=0,i._sliceInnerSize=0,i._nearest=!1,i._scaleMode=null,i._colorMap=null,i._scaleMode=null,i.nearest=n,i.mix=r,i.colorMap=t,i}return t.prototype.apply=function(e,t,n,r){this.uniforms._mix=this.mix,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`colorSize`,{get:function(){return this._size},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`colorMap`,{get:function(){return this._colorMap},set:function(e){var t;e&&(e instanceof Ts||(e=Ts.from(e)),(t=e)?.baseTexture&&(e.baseTexture.scaleMode=this._scaleMode,e.baseTexture.mipmap=$i.OFF,this._size=e.height,this._sliceSize=1/this._size,this._slicePixelSize=this._sliceSize/this._size,this._sliceInnerSize=this._slicePixelSize*(this._size-1),this.uniforms._size=this._size,this.uniforms._sliceSize=this._sliceSize,this.uniforms._slicePixelSize=this._slicePixelSize,this.uniforms._sliceInnerSize=this._sliceInnerSize,this.uniforms.colorMap=e),this._colorMap=e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`nearest`,{get:function(){return this._nearest},set:function(e){this._nearest=e,this._scaleMode=e?Zi.NEAREST:Zi.LINEAR;var t=this._colorMap;t&&t.baseTexture&&(t.baseTexture._glTextures={},t.baseTexture.scaleMode=this._scaleMode,t.baseTexture.mipmap=$i.OFF,t._updateID++,t.baseTexture.emit(`update`,t.baseTexture))},enumerable:!1,configurable:!0}),t.prototype.updateColorMap=function(){var e=this._colorMap;e&&e.baseTexture&&(e._updateID++,e.baseTexture.emit(`update`,e.baseTexture),this.colorMap=e)},t.prototype.destroy=function(t){t===void 0&&(t=!1),this._colorMap&&this._colorMap.destroy(t),e.prototype.destroy.call(this)},t}(Vc),Hm=function(e,t){return Hm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Hm(e,t)};function Um(e,t){Hm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Wm=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Gm=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform vec3 color; -uniform float alpha; - -void main(void) { - vec4 currentColor = texture2D(uSampler, vTextureCoord); - gl_FragColor = vec4(mix(currentColor.rgb, color.rgb, currentColor.a * alpha), currentColor.a); -} -`,Km=function(e){Um(t,e);function t(t,n){t===void 0&&(t=0),n===void 0&&(n=1);var r=e.call(this,Wm,Gm)||this;return r._color=0,r._alpha=1,r.uniforms.color=new Float32Array(3),r.color=t,r.alpha=n,r}return Object.defineProperty(t.prototype,`color`,{get:function(){return this._color},set:function(e){var t=this.uniforms.color;typeof e==`number`?(Xa(e,t),this._color=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._color=Qa(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`alpha`,{get:function(){return this._alpha},set:function(e){this.uniforms.alpha=e,this._alpha=e},enumerable:!1,configurable:!0}),t}(Vc),qm=function(e,t){return qm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},qm(e,t)};function Jm(e,t){qm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Ym=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Xm=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform vec3 originalColor; -uniform vec3 newColor; -uniform float epsilon; -void main(void) { - vec4 currentColor = texture2D(uSampler, vTextureCoord); - vec3 colorDiff = originalColor - (currentColor.rgb / max(currentColor.a, 0.0000000001)); - float colorDistance = length(colorDiff); - float doReplace = step(colorDistance, epsilon); - gl_FragColor = vec4(mix(currentColor.rgb, (newColor + colorDiff) * currentColor.a, doReplace), currentColor.a); -} -`,Zm=function(e){Jm(t,e);function t(t,n,r){t===void 0&&(t=16711680),n===void 0&&(n=0),r===void 0&&(r=.4);var i=e.call(this,Ym,Xm)||this;return i._originalColor=16711680,i._newColor=0,i.uniforms.originalColor=new Float32Array(3),i.uniforms.newColor=new Float32Array(3),i.originalColor=t,i.newColor=n,i.epsilon=r,i}return Object.defineProperty(t.prototype,`originalColor`,{get:function(){return this._originalColor},set:function(e){var t=this.uniforms.originalColor;typeof e==`number`?(Xa(e,t),this._originalColor=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._originalColor=Qa(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`newColor`,{get:function(){return this._newColor},set:function(e){var t=this.uniforms.newColor;typeof e==`number`?(Xa(e,t),this._newColor=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._newColor=Qa(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`epsilon`,{get:function(){return this.uniforms.epsilon},set:function(e){this.uniforms.epsilon=e},enumerable:!1,configurable:!0}),t}(Vc),Qm=function(e,t){return Qm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Qm(e,t)};function $m(e,t){Qm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var eh=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,th=`precision mediump float; - -varying mediump vec2 vTextureCoord; - -uniform sampler2D uSampler; -uniform vec2 texelSize; -uniform float matrix[9]; - -void main(void) -{ - vec4 c11 = texture2D(uSampler, vTextureCoord - texelSize); // top left - vec4 c12 = texture2D(uSampler, vec2(vTextureCoord.x, vTextureCoord.y - texelSize.y)); // top center - vec4 c13 = texture2D(uSampler, vec2(vTextureCoord.x + texelSize.x, vTextureCoord.y - texelSize.y)); // top right - - vec4 c21 = texture2D(uSampler, vec2(vTextureCoord.x - texelSize.x, vTextureCoord.y)); // mid left - vec4 c22 = texture2D(uSampler, vTextureCoord); // mid center - vec4 c23 = texture2D(uSampler, vec2(vTextureCoord.x + texelSize.x, vTextureCoord.y)); // mid right - - vec4 c31 = texture2D(uSampler, vec2(vTextureCoord.x - texelSize.x, vTextureCoord.y + texelSize.y)); // bottom left - vec4 c32 = texture2D(uSampler, vec2(vTextureCoord.x, vTextureCoord.y + texelSize.y)); // bottom center - vec4 c33 = texture2D(uSampler, vTextureCoord + texelSize); // bottom right - - gl_FragColor = - c11 * matrix[0] + c12 * matrix[1] + c13 * matrix[2] + - c21 * matrix[3] + c22 * matrix[4] + c23 * matrix[5] + - c31 * matrix[6] + c32 * matrix[7] + c33 * matrix[8]; - - gl_FragColor.a = c22.a; -} -`,nh=function(e){$m(t,e);function t(t,n,r){n===void 0&&(n=200),r===void 0&&(r=200);var i=e.call(this,eh,th)||this;return i.uniforms.texelSize=new Float32Array(2),i.uniforms.matrix=new Float32Array(9),t!==void 0&&(i.matrix=t),i.width=n,i.height=r,i}return Object.defineProperty(t.prototype,`matrix`,{get:function(){return this.uniforms.matrix},set:function(e){var t=this;e.forEach(function(e,n){t.uniforms.matrix[n]=e})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`width`,{get:function(){return 1/this.uniforms.texelSize[0]},set:function(e){this.uniforms.texelSize[0]=1/e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`height`,{get:function(){return 1/this.uniforms.texelSize[1]},set:function(e){this.uniforms.texelSize[1]=1/e},enumerable:!1,configurable:!0}),t}(Vc),rh=function(e,t){return rh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},rh(e,t)};function ih(e,t){rh(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var ah=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,oh=`precision mediump float; - -varying vec2 vTextureCoord; - -uniform sampler2D uSampler; - -void main(void) -{ - float lum = length(texture2D(uSampler, vTextureCoord.xy).rgb); - - gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0); - - if (lum < 1.00) - { - if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0) - { - gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); - } - } - - if (lum < 0.75) - { - if (mod(gl_FragCoord.x - gl_FragCoord.y, 10.0) == 0.0) - { - gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); - } - } - - if (lum < 0.50) - { - if (mod(gl_FragCoord.x + gl_FragCoord.y - 5.0, 10.0) == 0.0) - { - gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); - } - } - - if (lum < 0.3) - { - if (mod(gl_FragCoord.x - gl_FragCoord.y - 5.0, 10.0) == 0.0) - { - gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); - } - } -} -`,sh=function(e){ih(t,e);function t(){return e.call(this,ah,oh)||this}return t}(Vc),ch=function(e,t){return ch=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},ch(e,t)};function lh(e,t){ch(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var uh=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,dh=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; - -uniform vec4 filterArea; -uniform vec2 dimensions; - -const float SQRT_2 = 1.414213; - -const float light = 1.0; - -uniform float curvature; -uniform float lineWidth; -uniform float lineContrast; -uniform bool verticalLine; -uniform float noise; -uniform float noiseSize; - -uniform float vignetting; -uniform float vignettingAlpha; -uniform float vignettingBlur; - -uniform float seed; -uniform float time; - -float rand(vec2 co) { - return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453); -} - -void main(void) -{ - vec2 pixelCoord = vTextureCoord.xy * filterArea.xy; - vec2 dir = vec2(vTextureCoord.xy * filterArea.xy / dimensions - vec2(0.5, 0.5)); - - gl_FragColor = texture2D(uSampler, vTextureCoord); - vec3 rgb = gl_FragColor.rgb; - - if (noise > 0.0 && noiseSize > 0.0) - { - pixelCoord.x = floor(pixelCoord.x / noiseSize); - pixelCoord.y = floor(pixelCoord.y / noiseSize); - float _noise = rand(pixelCoord * noiseSize * seed) - 0.5; - rgb += _noise * noise; - } - - if (lineWidth > 0.0) - { - float _c = curvature > 0. ? curvature : 1.; - float k = curvature > 0. ?(length(dir * dir) * 0.25 * _c * _c + 0.935 * _c) : 1.; - vec2 uv = dir * k; - - float v = (verticalLine ? uv.x * dimensions.x : uv.y * dimensions.y) * min(1.0, 2.0 / lineWidth ) / _c; - float j = 1. + cos(v * 1.2 - time) * 0.5 * lineContrast; - rgb *= j; - float segment = verticalLine ? mod((dir.x + .5) * dimensions.x, 4.) : mod((dir.y + .5) * dimensions.y, 4.); - rgb *= 0.99 + ceil(segment) * 0.015; - } - - if (vignetting > 0.0) - { - float outter = SQRT_2 - vignetting * SQRT_2; - float darker = clamp((outter - length(dir) * SQRT_2) / ( 0.00001 + vignettingBlur * SQRT_2), 0.0, 1.0); - rgb *= darker + (1.0 - darker) * (1.0 - vignettingAlpha); - } - - gl_FragColor.rgb = rgb; -} -`,fh=function(e){lh(t,e);function t(n){var r=e.call(this,uh,dh)||this;return r.time=0,r.seed=0,r.uniforms.dimensions=new Float32Array(2),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i=t.filterFrame,a=i.width,o=i.height;this.uniforms.dimensions[0]=a,this.uniforms.dimensions[1]=o,this.uniforms.seed=this.seed,this.uniforms.time=this.time,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`curvature`,{get:function(){return this.uniforms.curvature},set:function(e){this.uniforms.curvature=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lineWidth`,{get:function(){return this.uniforms.lineWidth},set:function(e){this.uniforms.lineWidth=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lineContrast`,{get:function(){return this.uniforms.lineContrast},set:function(e){this.uniforms.lineContrast=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`verticalLine`,{get:function(){return this.uniforms.verticalLine},set:function(e){this.uniforms.verticalLine=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noise`,{get:function(){return this.uniforms.noise},set:function(e){this.uniforms.noise=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noiseSize`,{get:function(){return this.uniforms.noiseSize},set:function(e){this.uniforms.noiseSize=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignetting`,{get:function(){return this.uniforms.vignetting},set:function(e){this.uniforms.vignetting=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingAlpha`,{get:function(){return this.uniforms.vignettingAlpha},set:function(e){this.uniforms.vignettingAlpha=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingBlur`,{get:function(){return this.uniforms.vignettingBlur},set:function(e){this.uniforms.vignettingBlur=e},enumerable:!1,configurable:!0}),t.defaults={curvature:1,lineWidth:1,lineContrast:.25,verticalLine:!1,noise:0,noiseSize:1,seed:0,vignetting:.3,vignettingAlpha:1,vignettingBlur:.3,time:0},t}(Vc),ph=function(e,t){return ph=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},ph(e,t)};function mh(e,t){ph(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var hh=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,gh=`precision mediump float; - -varying vec2 vTextureCoord; -varying vec4 vColor; - -uniform vec4 filterArea; -uniform sampler2D uSampler; - -uniform float angle; -uniform float scale; - -float pattern() -{ - float s = sin(angle), c = cos(angle); - vec2 tex = vTextureCoord * filterArea.xy; - vec2 point = vec2( - c * tex.x - s * tex.y, - s * tex.x + c * tex.y - ) * scale; - return (sin(point.x) * sin(point.y)) * 4.0; -} - -void main() -{ - vec4 color = texture2D(uSampler, vTextureCoord); - float average = (color.r + color.g + color.b) / 3.0; - gl_FragColor = vec4(vec3(average * 10.0 - 5.0 + pattern()), color.a); -} -`,_h=function(e){mh(t,e);function t(t,n){t===void 0&&(t=1),n===void 0&&(n=5);var r=e.call(this,hh,gh)||this;return r.scale=t,r.angle=n,r}return Object.defineProperty(t.prototype,`scale`,{get:function(){return this.uniforms.scale},set:function(e){this.uniforms.scale=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`angle`,{get:function(){return this.uniforms.angle},set:function(e){this.uniforms.angle=e},enumerable:!1,configurable:!0}),t}(Vc),vh=function(e,t){return vh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},vh(e,t)};function yh(e,t){vh(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var bh=function(){return bh=Object.assign||function(e){for(var t=arguments,n,r=1,i=arguments.length;r 1.0 || coord.y > 1.0) { - return; - } - - float cx = coord.x - 0.5; - float cy = (coord.y - 0.5) * aspect; - float ny = (-sinDir * cx + cosDir * cy) / aspect + 0.5; - - // displacementMap: repeat - // ny = ny > 1.0 ? ny - 1.0 : (ny < 0.0 ? 1.0 + ny : ny); - - // displacementMap: mirror - ny = ny > 1.0 ? 2.0 - ny : (ny < 0.0 ? -ny : ny); - - vec4 dc = texture2D(displacementMap, vec2(0.5, ny)); - - float displacement = (dc.r - dc.g) * (offset / filterArea.x); - - coord = vTextureCoord + vec2(cosDir * displacement, sinDir * displacement * aspect); - - if (fillMode == CLAMP) { - coord = clamp(coord, filterClamp.xy, filterClamp.zw); - } else { - if( coord.x > filterClamp.z ) { - if (fillMode == TRANSPARENT) { - discard; - } else if (fillMode == LOOP) { - coord.x -= filterClamp.z; - } else if (fillMode == MIRROR) { - coord.x = filterClamp.z * 2.0 - coord.x; - } - } else if( coord.x < filterClamp.x ) { - if (fillMode == TRANSPARENT) { - discard; - } else if (fillMode == LOOP) { - coord.x += filterClamp.z; - } else if (fillMode == MIRROR) { - coord.x *= -filterClamp.z; - } - } - - if( coord.y > filterClamp.w ) { - if (fillMode == TRANSPARENT) { - discard; - } else if (fillMode == LOOP) { - coord.y -= filterClamp.w; - } else if (fillMode == MIRROR) { - coord.y = filterClamp.w * 2.0 - coord.y; - } - } else if( coord.y < filterClamp.y ) { - if (fillMode == TRANSPARENT) { - discard; - } else if (fillMode == LOOP) { - coord.y += filterClamp.w; - } else if (fillMode == MIRROR) { - coord.y *= -filterClamp.w; - } - } - } - - gl_FragColor.r = texture2D(uSampler, coord + red * (1.0 - seed * 0.4) / filterArea.xy).r; - gl_FragColor.g = texture2D(uSampler, coord + green * (1.0 - seed * 0.3) / filterArea.xy).g; - gl_FragColor.b = texture2D(uSampler, coord + blue * (1.0 - seed * 0.2) / filterArea.xy).b; - gl_FragColor.a = texture2D(uSampler, coord).a; -} -`,Nh=function(e){Ah(t,e);function t(n){var r=e.call(this,jh,Mh)||this;return r.offset=100,r.fillMode=t.TRANSPARENT,r.average=!1,r.seed=0,r.minSize=8,r.sampleSize=512,r._slices=0,r._offsets=new Float32Array(1),r._sizes=new Float32Array(1),r._direction=-1,r.uniforms.dimensions=new Float32Array(2),r._canvas=document.createElement(`canvas`),r._canvas.width=4,r._canvas.height=r.sampleSize,r.texture=Ts.from(r._canvas,{scaleMode:Zi.NEAREST}),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i=t.filterFrame,a=i.width,o=i.height;this.uniforms.dimensions[0]=a,this.uniforms.dimensions[1]=o,this.uniforms.aspect=o/a,this.uniforms.seed=this.seed,this.uniforms.offset=this.offset,this.uniforms.fillMode=this.fillMode,e.applyFilter(this,t,n,r)},t.prototype._randomizeSizes=function(){var e=this._sizes,t=this._slices-1,n=this.sampleSize,r=Math.min(this.minSize/n,.9/this._slices);if(this.average){for(var i=this._slices,a=1,o=0;o0;n--){var r=Math.random()*n>>0,i=e[n];e[n]=e[r],e[r]=i}},t.prototype._randomizeOffsets=function(){for(var e=0;e0?r:0,c=r<0?-r:0;n.fillStyle=`rgba(`+s+`, `+c+`, 0, 1)`,n.fillRect(0,i>>0,e,o+1>>0),i+=o}t.baseTexture.update(),this.uniforms.displacementMap=t},Object.defineProperty(t.prototype,`sizes`,{get:function(){return this._sizes},set:function(e){for(var t=Math.min(this._slices,e.length),n=0;n>0)+1},Object.defineProperty(t.prototype,`offset`,{get:function(){return this.uniforms.uOffset},set:function(e){this.uniforms.uOffset=e},enumerable:!1,configurable:!0}),t}(Vc),Xh=function(e,t){return Xh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Xh(e,t)};function Zh(e,t){Xh(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Qh=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,$h=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; - -uniform float epsilon; - -const int MAX_COLORS = %maxColors%; - -uniform vec3 originalColors[MAX_COLORS]; -uniform vec3 targetColors[MAX_COLORS]; - -void main(void) -{ - gl_FragColor = texture2D(uSampler, vTextureCoord); - - float alpha = gl_FragColor.a; - if (alpha < 0.0001) - { - return; - } - - vec3 color = gl_FragColor.rgb / alpha; - - for(int i = 0; i < MAX_COLORS; i++) - { - vec3 origColor = originalColors[i]; - if (origColor.r < 0.0) - { - break; - } - vec3 colorDiff = origColor - color; - if (length(colorDiff) < epsilon) - { - vec3 targetColor = targetColors[i]; - gl_FragColor = vec4((targetColor + colorDiff) * alpha, alpha); - return; - } - } -} -`,eg=function(e){Zh(t,e);function t(t,n,r){n===void 0&&(n=.05),r===void 0&&(r=t.length);var i=e.call(this,Qh,$h.replace(/%maxColors%/g,r.toFixed(0)))||this;return i._replacements=[],i._maxColors=0,i.epsilon=n,i._maxColors=r,i.uniforms.originalColors=new Float32Array(r*3),i.uniforms.targetColors=new Float32Array(r*3),i.replacements=t,i}return Object.defineProperty(t.prototype,`replacements`,{get:function(){return this._replacements},set:function(e){var t=this.uniforms.originalColors,n=this.uniforms.targetColors,r=e.length;if(r>this._maxColors)throw Error(`Length of replacements (`+r+`) exceeds the maximum colors length (`+this._maxColors+`)`);t[r*3]=-1;for(var i=0;i 0.5) then: 1 - 2 * (1 - dst) * (1 - src) - return vec3((dst.x <= 0.5) ? (2.0 * src.x * dst.x) : (1.0 - 2.0 * (1.0 - dst.x) * (1.0 - src.x)), - (dst.y <= 0.5) ? (2.0 * src.y * dst.y) : (1.0 - 2.0 * (1.0 - dst.y) * (1.0 - src.y)), - (dst.z <= 0.5) ? (2.0 * src.z * dst.z) : (1.0 - 2.0 * (1.0 - dst.z) * (1.0 - src.z))); -} - - -void main() -{ - gl_FragColor = texture2D(uSampler, vTextureCoord); - vec3 color = gl_FragColor.rgb; - - if (sepia > 0.0) - { - float gray = (color.x + color.y + color.z) / 3.0; - vec3 grayscale = vec3(gray); - - color = Overlay(SEPIA_RGB, grayscale); - - color = grayscale + sepia * (color - grayscale); - } - - vec2 coord = vTextureCoord * filterArea.xy / dimensions.xy; - - if (vignetting > 0.0) - { - float outter = SQRT_2 - vignetting * SQRT_2; - vec2 dir = vec2(vec2(0.5, 0.5) - coord); - dir.y *= dimensions.y / dimensions.x; - float darker = clamp((outter - length(dir) * SQRT_2) / ( 0.00001 + vignettingBlur * SQRT_2), 0.0, 1.0); - color.rgb *= darker + (1.0 - darker) * (1.0 - vignettingAlpha); - } - - if (scratchDensity > seed && scratch != 0.0) - { - float phase = seed * 256.0; - float s = mod(floor(phase), 2.0); - float dist = 1.0 / scratchDensity; - float d = distance(coord, vec2(seed * dist, abs(s - seed * dist))); - if (d < seed * 0.6 + 0.4) - { - highp float period = scratchDensity * 10.0; - - float xx = coord.x * period + phase; - float aa = abs(mod(xx, 0.5) * 4.0); - float bb = mod(floor(xx / 0.5), 2.0); - float yy = (1.0 - bb) * aa + bb * (2.0 - aa); - - float kk = 2.0 * period; - float dw = scratchWidth / dimensions.x * (0.75 + seed); - float dh = dw * kk; - - float tine = (yy - (2.0 - dh)); - - if (tine > 0.0) { - float _sign = sign(scratch); - - tine = s * tine / period + scratch + 0.1; - tine = clamp(tine + 1.0, 0.5 + _sign * 0.5, 1.5 + _sign * 0.5); - - color.rgb *= tine; - } - } - } - - if (noise > 0.0 && noiseSize > 0.0) - { - vec2 pixelCoord = vTextureCoord.xy * filterArea.xy; - pixelCoord.x = floor(pixelCoord.x / noiseSize); - pixelCoord.y = floor(pixelCoord.y / noiseSize); - // vec2 d = pixelCoord * noiseSize * vec2(1024.0 + seed * 512.0, 1024.0 - seed * 512.0); - // float _noise = snoise(d) * 0.5; - float _noise = rand(pixelCoord * noiseSize * seed) - 0.5; - color += _noise * noise; - } - - gl_FragColor.rgb = color; -} -`,ag=function(e){ng(t,e);function t(n,r){r===void 0&&(r=0);var i=e.call(this,rg,ig)||this;return i.seed=0,i.uniforms.dimensions=new Float32Array(2),typeof n==`number`?(i.seed=n,n=void 0):i.seed=r,Object.assign(i,t.defaults,n),i}return t.prototype.apply=function(e,t,n,r){var i,a;this.uniforms.dimensions[0]=(i=t.filterFrame)?.width,this.uniforms.dimensions[1]=(a=t.filterFrame)?.height,this.uniforms.seed=this.seed,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`sepia`,{get:function(){return this.uniforms.sepia},set:function(e){this.uniforms.sepia=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noise`,{get:function(){return this.uniforms.noise},set:function(e){this.uniforms.noise=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noiseSize`,{get:function(){return this.uniforms.noiseSize},set:function(e){this.uniforms.noiseSize=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scratch`,{get:function(){return this.uniforms.scratch},set:function(e){this.uniforms.scratch=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scratchDensity`,{get:function(){return this.uniforms.scratchDensity},set:function(e){this.uniforms.scratchDensity=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scratchWidth`,{get:function(){return this.uniforms.scratchWidth},set:function(e){this.uniforms.scratchWidth=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignetting`,{get:function(){return this.uniforms.vignetting},set:function(e){this.uniforms.vignetting=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingAlpha`,{get:function(){return this.uniforms.vignettingAlpha},set:function(e){this.uniforms.vignettingAlpha=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingBlur`,{get:function(){return this.uniforms.vignettingBlur},set:function(e){this.uniforms.vignettingBlur=e},enumerable:!1,configurable:!0}),t.defaults={sepia:.3,noise:.3,noiseSize:1,scratch:.5,scratchDensity:.3,scratchWidth:1,vignetting:.3,vignettingAlpha:1,vignettingBlur:.3},t}(Vc),og=function(e,t){return og=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},og(e,t)};function sg(e,t){og(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var cg=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,lg=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; - -uniform vec2 thickness; -uniform vec4 outlineColor; -uniform vec4 filterClamp; - -const float DOUBLE_PI = 3.14159265358979323846264 * 2.; - -void main(void) { - vec4 ownColor = texture2D(uSampler, vTextureCoord); - vec4 curColor; - float maxAlpha = 0.; - vec2 displaced; - for (float angle = 0.; angle <= DOUBLE_PI; angle += \${angleStep}) { - displaced.x = vTextureCoord.x + thickness.x * cos(angle); - displaced.y = vTextureCoord.y + thickness.y * sin(angle); - curColor = texture2D(uSampler, clamp(displaced, filterClamp.xy, filterClamp.zw)); - maxAlpha = max(maxAlpha, curColor.a); - } - float resultAlpha = max(maxAlpha, ownColor.a); - gl_FragColor = vec4((ownColor.rgb + outlineColor.rgb * (1. - ownColor.a)) * resultAlpha, resultAlpha); -} -`,ug=function(e){sg(t,e);function t(n,r,i){n===void 0&&(n=1),r===void 0&&(r=0),i===void 0&&(i=.1);var a=e.call(this,cg,lg.replace(/\$\{angleStep\}/,t.getAngleStep(i)))||this;return a._thickness=1,a.uniforms.thickness=new Float32Array([0,0]),a.uniforms.outlineColor=new Float32Array([0,0,0,1]),Object.assign(a,{thickness:n,color:r,quality:i}),a}return t.getAngleStep=function(e){var n=Math.max(e*t.MAX_SAMPLES,t.MIN_SAMPLES);return(Math.PI*2/n).toFixed(7)},t.prototype.apply=function(e,t,n,r){this.uniforms.thickness[0]=this._thickness/t._frame.width,this.uniforms.thickness[1]=this._thickness/t._frame.height,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`color`,{get:function(){return Qa(this.uniforms.outlineColor)},set:function(e){Xa(e,this.uniforms.outlineColor)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`thickness`,{get:function(){return this._thickness},set:function(e){this._thickness=e,this.padding=e},enumerable:!1,configurable:!0}),t.MIN_SAMPLES=1,t.MAX_SAMPLES=100,t}(Vc),dg=function(e,t){return dg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},dg(e,t)};function fg(e,t){dg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var pg=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,mg=`precision mediump float; - -varying vec2 vTextureCoord; - -uniform vec2 size; -uniform sampler2D uSampler; - -uniform vec4 filterArea; - -vec2 mapCoord( vec2 coord ) -{ - coord *= filterArea.xy; - coord += filterArea.zw; - - return coord; -} - -vec2 unmapCoord( vec2 coord ) -{ - coord -= filterArea.zw; - coord /= filterArea.xy; - - return coord; -} - -vec2 pixelate(vec2 coord, vec2 size) -{ - return floor( coord / size ) * size; -} - -void main(void) -{ - vec2 coord = mapCoord(vTextureCoord); - - coord = pixelate(coord, size); - - coord = unmapCoord(coord); - - gl_FragColor = texture2D(uSampler, coord); -} -`,hg=function(e){fg(t,e);function t(t){t===void 0&&(t=10);var n=e.call(this,pg,mg)||this;return n.size=t,n}return Object.defineProperty(t.prototype,`size`,{get:function(){return this.uniforms.size},set:function(e){typeof e==`number`&&(e=[e,e]),this.uniforms.size=e},enumerable:!1,configurable:!0}),t}(Vc),gg=function(e,t){return gg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},gg(e,t)};function _g(e,t){gg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var vg=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,yg=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform vec4 filterArea; - -uniform float uRadian; -uniform vec2 uCenter; -uniform float uRadius; -uniform int uKernelSize; - -const int MAX_KERNEL_SIZE = 2048; - -void main(void) -{ - vec4 color = texture2D(uSampler, vTextureCoord); - - if (uKernelSize == 0) - { - gl_FragColor = color; - return; - } - - float aspect = filterArea.y / filterArea.x; - vec2 center = uCenter.xy / filterArea.xy; - float gradient = uRadius / filterArea.x * 0.3; - float radius = uRadius / filterArea.x - gradient * 0.5; - int k = uKernelSize - 1; - - vec2 coord = vTextureCoord; - vec2 dir = vec2(center - coord); - float dist = length(vec2(dir.x, dir.y * aspect)); - - float radianStep = uRadian; - if (radius >= 0.0 && dist > radius) { - float delta = dist - radius; - float gap = gradient; - float scale = 1.0 - abs(delta / gap); - if (scale <= 0.0) { - gl_FragColor = color; - return; - } - radianStep *= scale; - } - radianStep /= float(k); - - float s = sin(radianStep); - float c = cos(radianStep); - mat2 rotationMatrix = mat2(vec2(c, -s), vec2(s, c)); - - for(int i = 0; i < MAX_KERNEL_SIZE - 1; i++) { - if (i == k) { - break; - } - - coord -= center; - coord.y *= aspect; - coord = rotationMatrix * coord; - coord.y /= aspect; - coord += center; - - vec4 sample = texture2D(uSampler, coord); - - // switch to pre-multiplied alpha to correctly blur transparent images - // sample.rgb *= sample.a; - - color += sample; - } - - gl_FragColor = color / float(uKernelSize); -} -`,bg=function(e){_g(t,e);function t(t,n,r,i){t===void 0&&(t=0),n===void 0&&(n=[0,0]),r===void 0&&(r=5),i===void 0&&(i=-1);var a=e.call(this,vg,yg)||this;return a._angle=0,a.angle=t,a.center=n,a.kernelSize=r,a.radius=i,a}return t.prototype.apply=function(e,t,n,r){this.uniforms.uKernelSize=this._angle===0?0:this.kernelSize,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`angle`,{get:function(){return this._angle},set:function(e){this._angle=e,this.uniforms.uRadian=e*Math.PI/180},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.uCenter},set:function(e){this.uniforms.uCenter=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.uRadius},set:function(e){(e<0||e===1/0)&&(e=-1),this.uniforms.uRadius=e},enumerable:!1,configurable:!0}),t}(Vc),xg=function(e,t){return xg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},xg(e,t)};function Sg(e,t){xg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Cg=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,wg=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; - -uniform vec4 filterArea; -uniform vec4 filterClamp; -uniform vec2 dimensions; - -uniform bool mirror; -uniform float boundary; -uniform vec2 amplitude; -uniform vec2 waveLength; -uniform vec2 alpha; -uniform float time; - -float rand(vec2 co) { - return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453); -} - -void main(void) -{ - vec2 pixelCoord = vTextureCoord.xy * filterArea.xy; - vec2 coord = pixelCoord / dimensions; - - if (coord.y < boundary) { - gl_FragColor = texture2D(uSampler, vTextureCoord); - return; - } - - float k = (coord.y - boundary) / (1. - boundary + 0.0001); - float areaY = boundary * dimensions.y / filterArea.y; - float v = areaY + areaY - vTextureCoord.y; - float y = mirror ? v : vTextureCoord.y; - - float _amplitude = ((amplitude.y - amplitude.x) * k + amplitude.x ) / filterArea.x; - float _waveLength = ((waveLength.y - waveLength.x) * k + waveLength.x) / filterArea.y; - float _alpha = (alpha.y - alpha.x) * k + alpha.x; - - float x = vTextureCoord.x + cos(v * 6.28 / _waveLength - time) * _amplitude; - x = clamp(x, filterClamp.x, filterClamp.z); - - vec4 color = texture2D(uSampler, vec2(x, y)); - - gl_FragColor = color * _alpha; -} -`,Tg=function(e){Sg(t,e);function t(n){var r=e.call(this,Cg,wg)||this;return r.time=0,r.uniforms.amplitude=new Float32Array(2),r.uniforms.waveLength=new Float32Array(2),r.uniforms.alpha=new Float32Array(2),r.uniforms.dimensions=new Float32Array(2),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i,a;this.uniforms.dimensions[0]=(i=t.filterFrame)?.width,this.uniforms.dimensions[1]=(a=t.filterFrame)?.height,this.uniforms.time=this.time,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`mirror`,{get:function(){return this.uniforms.mirror},set:function(e){this.uniforms.mirror=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`boundary`,{get:function(){return this.uniforms.boundary},set:function(e){this.uniforms.boundary=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`amplitude`,{get:function(){return this.uniforms.amplitude},set:function(e){this.uniforms.amplitude[0]=e[0],this.uniforms.amplitude[1]=e[1]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`waveLength`,{get:function(){return this.uniforms.waveLength},set:function(e){this.uniforms.waveLength[0]=e[0],this.uniforms.waveLength[1]=e[1]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`alpha`,{get:function(){return this.uniforms.alpha},set:function(e){this.uniforms.alpha[0]=e[0],this.uniforms.alpha[1]=e[1]},enumerable:!1,configurable:!0}),t.defaults={mirror:!0,boundary:.5,amplitude:[0,20],waveLength:[30,100],alpha:[1,1],time:0},t}(Vc),Eg=function(e,t){return Eg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Eg(e,t)};function Dg(e,t){Eg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Og=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,kg=`precision mediump float; - -varying vec2 vTextureCoord; - -uniform sampler2D uSampler; -uniform vec4 filterArea; -uniform vec2 red; -uniform vec2 green; -uniform vec2 blue; - -void main(void) -{ - gl_FragColor.r = texture2D(uSampler, vTextureCoord + red/filterArea.xy).r; - gl_FragColor.g = texture2D(uSampler, vTextureCoord + green/filterArea.xy).g; - gl_FragColor.b = texture2D(uSampler, vTextureCoord + blue/filterArea.xy).b; - gl_FragColor.a = texture2D(uSampler, vTextureCoord).a; -} -`,Ag=function(e){Dg(t,e);function t(t,n,r){t===void 0&&(t=[-10,0]),n===void 0&&(n=[0,10]),r===void 0&&(r=[0,0]);var i=e.call(this,Og,kg)||this;return i.red=t,i.green=n,i.blue=r,i}return Object.defineProperty(t.prototype,`red`,{get:function(){return this.uniforms.red},set:function(e){this.uniforms.red=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`green`,{get:function(){return this.uniforms.green},set:function(e){this.uniforms.green=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`blue`,{get:function(){return this.uniforms.blue},set:function(e){this.uniforms.blue=e},enumerable:!1,configurable:!0}),t}(Vc),jg=function(e,t){return jg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},jg(e,t)};function Mg(e,t){jg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Ng=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Pg=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform vec4 filterArea; -uniform vec4 filterClamp; - -uniform vec2 center; - -uniform float amplitude; -uniform float wavelength; -// uniform float power; -uniform float brightness; -uniform float speed; -uniform float radius; - -uniform float time; - -const float PI = 3.14159; - -void main() -{ - float halfWavelength = wavelength * 0.5 / filterArea.x; - float maxRadius = radius / filterArea.x; - float currentRadius = time * speed / filterArea.x; - - float fade = 1.0; - - if (maxRadius > 0.0) { - if (currentRadius > maxRadius) { - gl_FragColor = texture2D(uSampler, vTextureCoord); - return; - } - fade = 1.0 - pow(currentRadius / maxRadius, 2.0); - } - - vec2 dir = vec2(vTextureCoord - center / filterArea.xy); - dir.y *= filterArea.y / filterArea.x; - float dist = length(dir); - - if (dist <= 0.0 || dist < currentRadius - halfWavelength || dist > currentRadius + halfWavelength) { - gl_FragColor = texture2D(uSampler, vTextureCoord); - return; - } - - vec2 diffUV = normalize(dir); - - float diff = (dist - currentRadius) / halfWavelength; - - float p = 1.0 - pow(abs(diff), 2.0); - - // float powDiff = diff * pow(p, 2.0) * ( amplitude * fade ); - float powDiff = 1.25 * sin(diff * PI) * p * ( amplitude * fade ); - - vec2 offset = diffUV * powDiff / filterArea.xy; - - // Do clamp : - vec2 coord = vTextureCoord + offset; - vec2 clampedCoord = clamp(coord, filterClamp.xy, filterClamp.zw); - vec4 color = texture2D(uSampler, clampedCoord); - if (coord != clampedCoord) { - color *= max(0.0, 1.0 - length(coord - clampedCoord)); - } - - // No clamp : - // gl_FragColor = texture2D(uSampler, vTextureCoord + offset); - - color.rgb *= 1.0 + (brightness - 1.0) * p * fade; - - gl_FragColor = color; -} -`,Fg=function(e){Mg(t,e);function t(n,r,i){n===void 0&&(n=[0,0]),i===void 0&&(i=0);var a=e.call(this,Ng,Pg)||this;return a.center=n,Object.assign(a,t.defaults,r),a.time=i,a}return t.prototype.apply=function(e,t,n,r){this.uniforms.time=this.time,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.center},set:function(e){this.uniforms.center=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`amplitude`,{get:function(){return this.uniforms.amplitude},set:function(e){this.uniforms.amplitude=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`wavelength`,{get:function(){return this.uniforms.wavelength},set:function(e){this.uniforms.wavelength=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`brightness`,{get:function(){return this.uniforms.brightness},set:function(e){this.uniforms.brightness=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`speed`,{get:function(){return this.uniforms.speed},set:function(e){this.uniforms.speed=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.radius},set:function(e){this.uniforms.radius=e},enumerable:!1,configurable:!0}),t.defaults={amplitude:30,wavelength:160,brightness:1,speed:500,radius:-1},t}(Vc),Ig=function(e,t){return Ig=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Ig(e,t)};function Lg(e,t){Ig(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Rg=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,zg=`varying vec2 vTextureCoord; -uniform sampler2D uSampler; -uniform sampler2D uLightmap; -uniform vec4 filterArea; -uniform vec2 dimensions; -uniform vec4 ambientColor; -void main() { - vec4 diffuseColor = texture2D(uSampler, vTextureCoord); - vec2 lightCoord = (vTextureCoord * filterArea.xy) / dimensions; - vec4 light = texture2D(uLightmap, lightCoord); - vec3 ambient = ambientColor.rgb * ambientColor.a; - vec3 intensity = ambient + light.rgb; - vec3 finalColor = diffuseColor.rgb * intensity; - gl_FragColor = vec4(finalColor, diffuseColor.a); -} -`,Bg=function(e){Lg(t,e);function t(t,n,r){n===void 0&&(n=0),r===void 0&&(r=1);var i=e.call(this,Rg,zg)||this;return i._color=0,i.uniforms.dimensions=new Float32Array(2),i.uniforms.ambientColor=new Float32Array([0,0,0,r]),i.texture=t,i.color=n,i}return t.prototype.apply=function(e,t,n,r){var i,a;this.uniforms.dimensions[0]=(i=t.filterFrame)?.width,this.uniforms.dimensions[1]=(a=t.filterFrame)?.height,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`texture`,{get:function(){return this.uniforms.uLightmap},set:function(e){this.uniforms.uLightmap=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`color`,{get:function(){return this._color},set:function(e){var t=this.uniforms.ambientColor;typeof e==`number`?(Xa(e,t),this._color=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],this._color=Qa(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`alpha`,{get:function(){return this.uniforms.ambientColor[3]},set:function(e){this.uniforms.ambientColor[3]=e},enumerable:!1,configurable:!0}),t}(Vc),Vg=function(e,t){return Vg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Vg(e,t)};function Hg(e,t){Vg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Ug=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Wg=`varying vec2 vTextureCoord; - -uniform sampler2D uSampler; -uniform float blur; -uniform float gradientBlur; -uniform vec2 start; -uniform vec2 end; -uniform vec2 delta; -uniform vec2 texSize; - -float random(vec3 scale, float seed) -{ - return fract(sin(dot(gl_FragCoord.xyz + seed, scale)) * 43758.5453 + seed); -} - -void main(void) -{ - vec4 color = vec4(0.0); - float total = 0.0; - - float offset = random(vec3(12.9898, 78.233, 151.7182), 0.0); - vec2 normal = normalize(vec2(start.y - end.y, end.x - start.x)); - float radius = smoothstep(0.0, 1.0, abs(dot(vTextureCoord * texSize - start, normal)) / gradientBlur) * blur; - - for (float t = -30.0; t <= 30.0; t++) - { - float percent = (t + offset - 0.5) / 30.0; - float weight = 1.0 - abs(percent); - vec4 sample = texture2D(uSampler, vTextureCoord + delta / texSize * percent * radius); - sample.rgb *= sample.a; - color += sample * weight; - total += weight; - } - - color /= total; - color.rgb /= color.a + 0.00001; - - gl_FragColor = color; -} -`,Gg=function(e){Hg(t,e);function t(t,n,r,i){t===void 0&&(t=100),n===void 0&&(n=600);var a=e.call(this,Ug,Wg)||this;return a.uniforms.blur=t,a.uniforms.gradientBlur=n,a.uniforms.start=r||new Mo(0,window.innerHeight/2),a.uniforms.end=i||new Mo(600,window.innerHeight/2),a.uniforms.delta=new Mo(30,30),a.uniforms.texSize=new Mo(window.innerWidth,window.innerHeight),a.updateDelta(),a}return t.prototype.updateDelta=function(){this.uniforms.delta.x=0,this.uniforms.delta.y=0},Object.defineProperty(t.prototype,`blur`,{get:function(){return this.uniforms.blur},set:function(e){this.uniforms.blur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`gradientBlur`,{get:function(){return this.uniforms.gradientBlur},set:function(e){this.uniforms.gradientBlur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`start`,{get:function(){return this.uniforms.start},set:function(e){this.uniforms.start=e,this.updateDelta()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`end`,{get:function(){return this.uniforms.end},set:function(e){this.uniforms.end=e,this.updateDelta()},enumerable:!1,configurable:!0}),t}(Vc),Kg=function(e){Hg(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.updateDelta=function(){var e=this.uniforms.end.x-this.uniforms.start.x,t=this.uniforms.end.y-this.uniforms.start.y,n=Math.sqrt(e*e+t*t);this.uniforms.delta.x=e/n,this.uniforms.delta.y=t/n},t}(Gg),qg=function(e){Hg(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.updateDelta=function(){var e=this.uniforms.end.x-this.uniforms.start.x,t=this.uniforms.end.y-this.uniforms.start.y,n=Math.sqrt(e*e+t*t);this.uniforms.delta.x=-t/n,this.uniforms.delta.y=e/n},t}(Gg),Jg=function(e){Hg(t,e);function t(t,n,r,i){t===void 0&&(t=100),n===void 0&&(n=600);var a=e.call(this)||this;return a.tiltShiftXFilter=new Kg(t,n,r,i),a.tiltShiftYFilter=new qg(t,n,r,i),a}return t.prototype.apply=function(e,t,n,r){var i=e.getFilterTexture();this.tiltShiftXFilter.apply(e,t,i,1),this.tiltShiftYFilter.apply(e,i,n,r),e.returnFilterTexture(i)},Object.defineProperty(t.prototype,`blur`,{get:function(){return this.tiltShiftXFilter.blur},set:function(e){this.tiltShiftXFilter.blur=this.tiltShiftYFilter.blur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`gradientBlur`,{get:function(){return this.tiltShiftXFilter.gradientBlur},set:function(e){this.tiltShiftXFilter.gradientBlur=this.tiltShiftYFilter.gradientBlur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`start`,{get:function(){return this.tiltShiftXFilter.start},set:function(e){this.tiltShiftXFilter.start=this.tiltShiftYFilter.start=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`end`,{get:function(){return this.tiltShiftXFilter.end},set:function(e){this.tiltShiftXFilter.end=this.tiltShiftYFilter.end=e},enumerable:!1,configurable:!0}),t}(Vc),Yg=function(e,t){return Yg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Yg(e,t)};function Xg(e,t){Yg(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Zg=`attribute vec2 aVertexPosition; -attribute vec2 aTextureCoord; - -uniform mat3 projectionMatrix; - -varying vec2 vTextureCoord; - -void main(void) -{ - gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); - vTextureCoord = aTextureCoord; -}`,Qg=`varying vec2 vTextureCoord; - -uniform sampler2D uSampler; -uniform float radius; -uniform float angle; -uniform vec2 offset; -uniform vec4 filterArea; - -vec2 mapCoord( vec2 coord ) -{ - coord *= filterArea.xy; - coord += filterArea.zw; - - return coord; -} - -vec2 unmapCoord( vec2 coord ) -{ - coord -= filterArea.zw; - coord /= filterArea.xy; - - return coord; -} - -vec2 twist(vec2 coord) -{ - coord -= offset; - - float dist = length(coord); - - if (dist < radius) - { - float ratioDist = (radius - dist) / radius; - float angleMod = ratioDist * ratioDist * angle; - float s = sin(angleMod); - float c = cos(angleMod); - coord = vec2(coord.x * c - coord.y * s, coord.x * s + coord.y * c); - } - - coord += offset; - - return coord; -} - -void main(void) -{ - - vec2 coord = mapCoord(vTextureCoord); - - coord = twist(coord); - - coord = unmapCoord(coord); - - gl_FragColor = texture2D(uSampler, coord ); - -} -`,$g=function(e){Xg(t,e);function t(n){var r=e.call(this,Zg,Qg)||this;return Object.assign(r,t.defaults,n),r}return Object.defineProperty(t.prototype,`offset`,{get:function(){return this.uniforms.offset},set:function(e){this.uniforms.offset=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.radius},set:function(e){this.uniforms.radius=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`angle`,{get:function(){return this.uniforms.angle},set:function(e){this.uniforms.angle=e},enumerable:!1,configurable:!0}),t.defaults={radius:200,angle:4,padding:20,offset:new Mo},t}(Vc),e_=function(e,t){return e_=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e_(e,t)};function t_(e,t){e_(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function n_(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i= 0.0 && dist > radius) { // radius < 0 means it's infinity - delta = dist - radius; - gap = gradient; - } - - if (delta > 0.0) { - float normalCount = gap / filterArea.x; - delta = (normalCount - delta) / normalCount; - countLimit *= delta; - strength *= delta; - if (countLimit < 1.0) - { - gl_FragColor = texture2D(uSampler, vTextureCoord); - return; - } - } - - // randomize the lookup values to hide the fixed number of samples - float offset = rand(vTextureCoord, 0.0); - - float total = 0.0; - vec4 color = vec4(0.0); - - dir *= strength; - - for (float t = 0.0; t < MAX_KERNEL_SIZE; t++) { - float percent = (t + offset) / MAX_KERNEL_SIZE; - float weight = 4.0 * (percent - percent * percent); - vec2 p = vTextureCoord + dir * percent; - vec4 sample = texture2D(uSampler, p); - - // switch to pre-multiplied alpha to correctly blur transparent images - // sample.rgb *= sample.a; - - color += sample * weight; - total += weight; - - if (t > countLimit){ - break; - } - } - - color /= total; - // switch back from pre-multiplied alpha - // color.rgb /= color.a + 0.00001; - - gl_FragColor = color; -} -`,a_=function(e){t_(t,e);function t(n){var r=this,i=Object.assign(t.defaults,n),a=i.maxKernelSize,o=n_(i,[`maxKernelSize`]);return r=e.call(this,r_,i_.replace("${maxKernelSize}",a.toFixed(1)))||this,Object.assign(r,o),r}return Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.uCenter},set:function(e){this.uniforms.uCenter=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`strength`,{get:function(){return this.uniforms.uStrength},set:function(e){this.uniforms.uStrength=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`innerRadius`,{get:function(){return this.uniforms.uInnerRadius},set:function(e){this.uniforms.uInnerRadius=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.uRadius},set:function(e){(e<0||e===1/0)&&(e=-1),this.uniforms.uRadius=e},enumerable:!1,configurable:!0}),t.defaults={strength:.1,center:[0,0],innerRadius:0,radius:-1,maxKernelSize:32},t}(Vc);function o_(){let e=-1,t,n=-1;function r(r,i){(i>=e||i({x:0,y:0})},disableFocusAt:{type:Boolean,default:!1},xOffset:{},yOffset:{}},emits:[`modelLoaded`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=bn(()=>r.app),o=bn(()=>r.paused),s=bn(()=>r.focusAt),c=U(),l=U(0),u=U(0),d=Pt(()=>Math.max(0,Math.min(100,r.mouthOpenSize))),f=On(),p=En(Mt),m=Pt(()=>p.between(`sm`,`md`).value||p.smaller(`sm`).value),h=o_(),g=W(new Ch({alpha:.2,blur:0,distance:20,rotation:45}));function _(){return c.value.internalModel.coreModel}function v(e){if(!e.value)return;let t=2.2;m.value&&(t=2.2);let n=r.height*.95/u.value*t,i=r.width*.95/l.value*t,a=Math.min(n,i);e.value.scale.set(a,a)}let{live2dModelFile:y,loadingLive2dModel:b,live2dCurrentMotion:x,availableLive2dMotions:S,live2dLoadSource:C,live2dModelUrl:w,themeColorsHue:T,themeColorsHueDynamic:E}=_n(Ln()),D=U({group:`Idle`,index:0});function O(){let e=Number.parseFloat(String(r.xOffset))||0,t=Number.parseFloat(String(r.yOffset))||0;return String(r.xOffset).endsWith(`%`)&&(e=Number.parseFloat(String(r.xOffset).replace(`%`,``))/100*r.width),String(r.yOffset).endsWith(`%`)&&(t=Number.parseFloat(String(r.yOffset).replace(`%`,``))/100*r.height),Number.isNaN(e)&&(e=0),Number.isNaN(t)&&(t=0),{xOffset:e,yOffset:t}}async function k(){var e;if(!a.value)return;c.value&&(a.value.stage.removeChild(c.value),c.value.destroy(),c.value=void 0);let t=new mp;C.value===`file`?await op.setupLive2DModel(t,[y.value],{autoInteract:!1}):C.value===`url`&&await op.setupLive2DModel(t,w.value,{autoInteract:!1}),c.value=t,a.value.stage.addChild(c.value),l.value=c.value.width,u.value=c.value.height;let{xOffset:n,yOffset:o}=O();c.value.x=r.width/2+(n||0),c.value.y=r.height+(o||0),c.value.anchor.set(.5,.5),v(c),c.value.on(`hit`,e=>{c.value&&e.includes(`body`)&&c.value.motion(`tap_body`)});let s=c.value.internalModel,f=s.coreModel,p=s.motionManager;f.setParameterValueById(`ParamMouthOpenY`,d.value),S.value=Object.entries(p.definitions).flatMap(([e,t])=>t?t.map((t,n)=>({motionName:e,motionIndex:n,fileName:t.File})):[]).filter(Boolean),p.groups.idle&&(e=p.motionGroups[p.groups.idle])?.forEach(e=>{e._motionData.curves.forEach(e=>{(e.id===`ParamEyeBallX`||e.id===`ParamEyeBallY`)&&(e.id=`_${e.id}`)})});let m=p.update;p.update=function(e,t){return m?.call(this,e,t),p.state.currentGroup===p.groups.idle&&h.update(s,t),!0},p.on(`motionStart`,(e,t)=>{D.value={group:e,index:t}}),y.value&&await s_.default.setItem(`live2dModel`,y.value),i(`modelLoaded`),b.value=!1}async function A(){if(!a.value)return;mp.registerTicker(Eo),So.add(Do),So.add(Vp);let e=await s_.default.getItem(`live2dModel`);if(e){y.value=e,C.value=`file`,b.value=!0;return}if(w.value){C.value=`url`,b.value=!0;return}b.value=!1}async function j(e,t){var n;await(n=c.value)?.motion(e,t,Lf.FORCE)}let M=kn(()=>{if(c.value){let{xOffset:e,yOffset:t}=O();c.value.x=r.width/2+e,c.value.y=r.height+t,v(c)}},100),N=U(),ee=U(0);function P(){if(c.value){let e=getComputedStyle(N.value).backgroundColor;g.value.color=Number(Ht(e).replace(`#`,`0x`)),c.value.filters=[g.value]}}K([()=>r.width,()=>r.height],()=>M()),K(f,P,{immediate:!0}),K([c,T],P);function F(){P(),ee.value=requestAnimationFrame(F)}K(E,()=>{E.value?ee.value=requestAnimationFrame(F):(cancelAnimationFrame(ee.value),ee.value=0)},{immediate:!0}),K(d,e=>_().setParameterValueById(`ParamMouthOpenY`,e)),K(a,A),K(x,e=>j(e.group,e.index)),K(o,e=>{var t,n;return e?(t=a.value)?.stop():(n=a.value)?.start()}),K(s,e=>{c.value&&(r.disableFocusAt||c.value.focus(e.x,e.y))}),Un(b,e=>{e&&k()},{debounce:1e3}),an(P),sn(()=>{var e;cancelAnimationFrame(ee.value),c.value&&(e=a.value)?.stage.removeChild(c.value)});function I(){return S.value}return t({setMotion:j,listMotionGroups:I}),(e,t)=>(H(),Lt(L,null,[V(`div`,{ref_key:`dropShadowColorComputer`,ref:N,hidden:``,bg:`primary-400 dark:primary-500`},null,512),mn(e.$slots,`default`)],64))}}),l_=c_,u_=Et((exports,t)=>{ -/*! - -JSZip v3.10.1 - A JavaScript class for generating and reading zip files - - -(c) 2009-2016 Stuart Knightley -Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. - -JSZip uses the library pako released under the MIT license : -https://github.com/nodeca/pako/blob/main/LICENSE -*/ -(function(n){typeof exports==`object`&&t!==void 0?t.exports=n():typeof define==`function`&&define.amd?define([],n):(typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this).JSZip=n()})(function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof Ot==`function`&&Ot;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=Error(`Cannot find module '`+o+`'`);throw l.code=`MODULE_NOT_FOUND`,l}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return i(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var a=typeof Ot==`function`&&Ot,o=0;o>2,s=(3&t)<<4|n>>4,c=1>6:64,l=2>4,n=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),f[u++]=t,s!==64&&(f[u++]=n),c!==64&&(f[u++]=r);return f}},{"./support":30,"./utils":32}],2:[function(e,t,n){"use strict";var r=e(`./external`),i=e(`./stream/DataWorker`),a=e(`./stream/Crc32Probe`),o=e(`./stream/DataLengthProbe`);function s(e,t,n,r,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o(`data_length`)),t=this;return e.on(`end`,function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw Error(`Bug : uncompressed data size mismatch`)}),e},getCompressedWorker:function(){return new i(r.Promise.resolve(this.compressedContent)).withStreamInfo(`compressedSize`,this.compressedSize).withStreamInfo(`uncompressedSize`,this.uncompressedSize).withStreamInfo(`crc32`,this.crc32).withStreamInfo(`compression`,this.compression)}},s.createWorkerFrom=function(e,t,n){return e.pipe(new a).pipe(new o(`uncompressedSize`)).pipe(t.compressWorker(n)).pipe(new o(`compressedSize`)).withStreamInfo(`compression`,t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,n){"use strict";var r=e(`./stream/GenericWorker`);n.STORE={magic:`\0\0`,compressWorker:function(){return new r(`STORE compression`)},uncompressWorker:function(){return new r(`STORE decompression`)}},n.DEFLATE=e(`./flate`)},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,n){"use strict";var r=e(`./utils`),i=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t){return e!==void 0&&e.length?r.getTypeOf(e)===`string`?function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s>>8^a[255&(e^t.charCodeAt(s))];return-1^e}(0|t,e,e.length,0):function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s>>8^a[255&(e^t[s])];return-1^e}(0|t,e,e.length,0):0}},{"./utils":32}],5:[function(e,t,n){"use strict";n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!0,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],6:[function(e,t,n){"use strict";var r=null;r=typeof Promise<`u`?Promise:e(`lie`),t.exports={Promise:r}},{lie:37}],7:[function(e,t,n){"use strict";var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Uint32Array<`u`,i=e(`pako`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=r?`uint8array`:`array`;function c(e,t){o.call(this,`FlateWorker/`+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}n.magic=`\b\0`,a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,this._pako===null&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},n.compressWorker=function(e){return new c(`Deflate`,e)},n.uncompressWorker=function(){return new c(`Inflate`,{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,n){"use strict";function r(e,t){var n,r=``;for(n=0;n>>=8;return r}function i(e,t,n,i,o,u){var d,f,p=e.file,m=e.compression,h=u!==s.utf8encode,g=a.transformTo(`string`,u(p.name)),_=a.transformTo(`string`,s.utf8encode(p.name)),v=p.comment,y=a.transformTo(`string`,u(v)),b=a.transformTo(`string`,s.utf8encode(v)),x=_.length!==p.name.length,S=b.length!==v.length,C=``,w=``,T=``,E=p.dir,D=p.date,O={crc32:0,compressedSize:0,uncompressedSize:0};t&&!n||(O.crc32=e.crc32,O.compressedSize=e.compressedSize,O.uncompressedSize=e.uncompressedSize);var k=0;t&&(k|=8),h||!x&&!S||(k|=2048);var A=0,j=0;E&&(A|=16),o===`UNIX`?(j=798,A|=function(e,t){var n=e;return e||(n=t?16893:33204),(65535&n)<<16}(p.unixPermissions,E)):(j=20,A|=function(e){return 63&(e||0)}(p.dosPermissions)),d=D.getUTCHours(),d<<=6,d|=D.getUTCMinutes(),d<<=5,d|=D.getUTCSeconds()/2,f=D.getUTCFullYear()-1980,f<<=4,f|=D.getUTCMonth()+1,f<<=5,f|=D.getUTCDate(),x&&(w=r(1,1)+r(c(g),4)+_,C+=`up`+r(w.length,2)+w),S&&(T=r(1,1)+r(c(y),4)+b,C+=`uc`+r(T.length,2)+T);var M=``;return M+=` -\0`,M+=r(k,2),M+=m.magic,M+=r(d,2),M+=r(f,2),M+=r(O.crc32,4),M+=r(O.compressedSize,4),M+=r(O.uncompressedSize,4),M+=r(g.length,2),M+=r(C.length,2),{fileRecord:l.LOCAL_FILE_HEADER+M+g+C,dirRecord:l.CENTRAL_FILE_HEADER+r(j,2)+M+r(y.length,2)+`\0\0\0\0`+r(A,4)+r(i,4)+g+C+y}}var a=e(`../utils`),o=e(`../stream/GenericWorker`),s=e(`../utf8`),c=e(`../crc32`),l=e(`../signature`);function u(e,t,n,r){o.call(this,`ZipFileWorker`),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=n,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(u,o),u.prototype.push=function(e){var t=e.meta.percent||0,n=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:n?(t+100*(n-r-1))/n:100}}))},u.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var n=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:n.fileRecord,meta:{percent:0}})}else this.accumulate=!0},u.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,n=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(n.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+r(e.crc32,4)+r(e.compressedSize,4)+r(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:n.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},u.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)n=(n<<8)+this.byteAt(t);return this.index+=e,n},readString:function(e){return r.transformTo(`string`,this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,n){"use strict";var r=e(`./Uint8ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,n){"use strict";var r=e(`./DataReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,n){"use strict";var r=e(`./ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){if(this.checkOffset(e),e===0)return new Uint8Array;var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`../support`),a=e(`./ArrayReader`),o=e(`./StringReader`),s=e(`./NodeBufferReader`),c=e(`./Uint8ArrayReader`);t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),t!==`string`||i.uint8array?t===`nodebuffer`?new s(e):i.uint8array?new c(r.transformTo(`uint8array`,e)):new a(r.transformTo(`array`,e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,n){"use strict";n.LOCAL_FILE_HEADER=`PK`,n.CENTRAL_FILE_HEADER=`PK`,n.CENTRAL_DIRECTORY_END=`PK`,n.ZIP64_CENTRAL_DIRECTORY_LOCATOR=`PK\x07`,n.ZIP64_CENTRAL_DIRECTORY_END=`PK`,n.DATA_DESCRIPTOR=`PK\x07\b`},{}],24:[function(e,t,n){"use strict";var r=e(`./GenericWorker`),i=e(`../utils`);function a(e){r.call(this,`ConvertWorker to `+e),this.destType=e}i.inherits(a,r),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,n){"use strict";var r=e(`./GenericWorker`),i=e(`../crc32`);function a(){r.call(this,`Crc32Probe`),this.withStreamInfo(`crc32`,0)}e(`../utils`).inherits(a,r),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataLengthProbe for `+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataWorker`);var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type=``,this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case`string`:e=this.data.substring(this.index,t);break;case`uint8array`:e=this.data.subarray(this.index,t);break;case`array`:case`nodebuffer`:e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,n){"use strict";function r(e){this.name=e||`default`,this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit(`data`,e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit(`end`),this.cleanUp(),this.isFinished=!0}catch(e){this.emit(`error`,e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit(`error`,e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var n=0;n `+e:e}},t.exports=r},{}],29:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./ConvertWorker`),a=e(`./GenericWorker`),o=e(`../base64`),s=e(`../support`),c=e(`../external`),l=null;if(s.nodestream)try{l=e(`../nodejs/NodejsStreamOutputAdapter`)}catch{}function u(e,t){return new c.Promise(function(n,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on(`data`,function(e,n){a.push(e),t&&t(n)}).on(`error`,function(e){a=[],i(e)}).on(`end`,function(){try{var e=function(e,t,n){switch(e){case`blob`:return r.newBlob(r.transformTo(`arraybuffer`,t),n);case`base64`:return o.encode(t);default:return r.transformTo(e,t)}}(c,function(e,t){var n,r=0,i=null,a=0;for(n=0;n`u`)n.blob=!1;else{var r=new ArrayBuffer(0);try{n.blob=new Blob([r],{type:`application/zip`}).size===0}catch{try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(r),n.blob=i.getBlob(`application/zip`).size===0}catch{n.blob=!1}}}try{n.nodestream=!!e(`readable-stream`).Readable}catch{n.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,n){"use strict";for(var r=e(`./utils`),i=e(`./support`),a=e(`./nodejsUtils`),o=e(`./stream/GenericWorker`),s=Array(256),c=0;c<256;c++)s[c]=252<=c?6:248<=c?5:240<=c?4:224<=c?3:192<=c?2:1;s[254]=s[254]=1;function l(){o.call(this,`utf-8 decode`),this.leftOver=null}function u(){o.call(this,`utf-8 encode`)}n.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,`utf-8`):function(e){var t,n,r,a,o,s=e.length,c=0;for(a=0;a>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t}(e)},n.utf8decode=function(e){return i.nodebuffer?r.transformTo(`nodebuffer`,e).toString(`utf-8`):function(e){var t,n,i,a,o=e.length,c=Array(2*o);for(t=n=0;t>10&1023,c[n++]=56320|1023&i)}return c.length!==n&&(c.subarray?c=c.subarray(0,n):c.length=n),r.applyFromCharCode(c)}(e=r.transformTo(i.uint8array?`uint8array`:`array`,e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(i.uint8array?`uint8array`:`array`,e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=t;(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var n;for((t||=e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+s[e[n]]>t?n:t}(t),c=t;o!==t.length&&(i.uint8array?(c=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(c=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:n.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:n.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},n.Utf8DecodeWorker=l,r.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:n.utf8encode(e.data),meta:e.meta})},n.Utf8EncodeWorker=u},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,n){"use strict";var r=e(`./support`),i=e(`./base64`),a=e(`./nodejsUtils`),o=e(`./external`);function s(e){return e}function c(e,t){for(var n=0;n>8;this.dir=!!(16&this.externalFileAttributes),e==0&&(this.dosPermissions=63&this.externalFileAttributes),e==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!==`/`||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,n,r,i=e.index+this.extraFieldsLength;for(this.extraFields||={};e.index+4>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t},n.buf2binstring=function(e){return c(e,e.length)},n.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n>10&1023,l[r++]=56320|1023&i)}return c(l,r)},n.utf8border=function(e,t){var n;for((t||=e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+o[e[n]]>t?n:t}},{"./common":41}],43:[function(e,t,n){"use strict";t.exports=function(e,t,n,r){for(var i=65535&e|0,a=e>>>16&65535|0,o=0;n!==0;){for(n-=o=2e3>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s>>8^a[255&(e^t[s])];return-1^e}},{}],46:[function(e,t,n){"use strict";var r,i=e(`../utils/common`),a=e(`./trees`),o=e(`./adler32`),s=e(`./crc32`),c=e(`./messages`),l=0,u=4,d=0,f=-2,p=-1,m=4,h=2,g=8,_=9,v=286,y=30,b=19,x=2*v+1,S=15,C=3,w=258,T=w+C+1,E=42,D=113,O=1,k=2,A=3,j=4;function M(e,t){return e.msg=c[t],t}function N(e){return(e<<1)-(4e.avail_out&&(n=e.avail_out),n!==0&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))}function F(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,P(e.strm)}function I(e,t){e.pending_buf[e.pending++]=t}function te(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function L(e,t){var n,r,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-T?e.strstart-(e.w_size-T):0,l=e.window,u=e.w_mask,d=e.prev,f=e.strstart+w,p=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do if(l[(n=t)+o]===m&&l[n+o-1]===p&&l[n]===l[a]&&l[++n]===l[a+1]){a+=2,n++;do;while(l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&ac&&--i!=0);return o<=e.lookahead?o:e.lookahead}function R(e){var t,n,r,a,c,l,u,d,f,p,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-T)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=n=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--n;);for(t=n=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--n;);a+=m}if(e.strm.avail_in===0)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,f=a,p=void 0,p=l.avail_in,f=C)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<=C&&(e.ins_h=(e.ins_h<=C)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-C),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=C){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=C&&(e.ins_h=(e.ins_h<=C&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-C,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-C),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(R(e),e.lookahead===0&&t===l)return O;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((e.strstart===0||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,F(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-T&&(F(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(F(e,!0),e.strm.avail_out===0?A:j):(e.strstart>e.block_start&&(F(e,!1),e.strm.avail_out),O)}),new re(4,4,8,4,ne),new re(4,5,16,8,ne),new re(4,6,32,32,ne),new re(4,4,16,16,z),new re(8,16,32,32,z),new re(8,16,128,128,z),new re(8,32,128,256,z),new re(32,128,258,1024,z),new re(32,258,258,4096,z)],n.deflateInit=function(e,t){return se(e,t,g,15,8,0)},n.deflateInit2=se,n.deflateReset=oe,n.deflateResetKeep=ae,n.deflateSetHeader=function(e,t){return e&&e.state&&e.state.wrap===2?(e.state.gzhead=t,d):f},n.deflate=function(e,t){var n,i,o,c;if(!e||!e.state||5>8&255),I(i,i.gzhead.time>>16&255),I(i,i.gzhead.time>>24&255),I(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),I(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(I(i,255&i.gzhead.extra.length),I(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(I(i,0),I(i,0),I(i,0),I(i,0),I(i,0),I(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),I(i,3),i.status=D);else{var p=g+(i.w_bits-8<<4)<<8;p|=(2<=i.strategy||i.level<2?0:i.level<6?1:i.level===6?2:3)<<6,i.strstart!==0&&(p|=32),p+=31-p%31,i.status=D,te(i,p),i.strstart!==0&&(te(i,e.adler>>>16),te(i,65535&e.adler)),e.adler=1}if(i.status===69)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),P(e),o=i.pending,i.pending!==i.pending_buf_size));)I(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(i.status===73)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),P(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.gzindex=0,i.status=91)}else i.status=91;if(i.status===91)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),P(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.status=103)}else i.status=103;if(i.status===103&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&P(e),i.pending+2<=i.pending_buf_size&&(I(i,255&e.adler),I(i,e.adler>>8&255),e.adler=0,i.status=D)):i.status=D),i.pending!==0){if(P(e),e.avail_out===0)return i.last_flush=-1,d}else if(e.avail_in===0&&N(t)<=N(n)&&t!==u)return M(e,-5);if(i.status===666&&e.avail_in!==0)return M(e,-5);if(e.avail_in!==0||i.lookahead!==0||t!==l&&i.status!==666){var m=i.strategy===2?function(e,t){for(var n;;){if(e.lookahead===0&&(R(e),e.lookahead===0)){if(t===l)return O;break}if(e.match_length=0,n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(F(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(F(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(F(e,!1),e.strm.avail_out===0)?O:k}(i,t):i.strategy===3?function(e,t){for(var n,r,i,o,s=e.window;;){if(e.lookahead<=w){if(R(e),e.lookahead<=w&&t===l)return O;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=C&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=C?(n=a._tr_tally(e,1,e.match_length-C),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(F(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(F(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(F(e,!1),e.strm.avail_out===0)?O:k}(i,t):r[i.level].func(i,t);if(m!==A&&m!==j||(i.status=666),m===O||m===A)return e.avail_out===0&&(i.last_flush=-1),d;if(m===k&&(t===1?a._tr_align(i):t!==5&&(a._tr_stored_block(i,0,0,!1),t===3&&(ee(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),P(e),e.avail_out===0))return i.last_flush=-1,d}return t===u?i.wrap<=0?1:(i.wrap===2?(I(i,255&e.adler),I(i,e.adler>>8&255),I(i,e.adler>>16&255),I(i,e.adler>>24&255),I(i,255&e.total_in),I(i,e.total_in>>8&255),I(i,e.total_in>>16&255),I(i,e.total_in>>24&255)):(te(i,e.adler>>>16),te(i,65535&e.adler)),P(e),0=n.w_size&&(s===0&&(ee(n.head),n.strstart=0,n.block_start=0,n.insert=0),p=new i.Buf8(n.w_size),i.arraySet(p,t,m-n.w_size,n.w_size,0),t=p,m=n.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,R(n);n.lookahead>=C;){for(r=n.strstart,a=n.lookahead-(C-1);n.ins_h=(n.ins_h<>>=b=y>>>24,m-=b,(b=y>>>16&255)==0)E[a++]=65535&y;else{if(!(16&b)){if(!(64&b)){y=h[(65535&y)+(p&(1<>>=b,m-=b),m<15&&(p+=T[r++]<>>=b=y>>>24,m-=b,!(16&(b=y>>>16&255))){if(!(64&b)){y=g[(65535&y)+(p&(1<>>=b,m-=b,(b=a-o)>3,p&=(1<<(m-=x<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function g(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function _(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg=``,t.wrap&&(e.adler=1&t.wrap),t.mode=f,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(p),t.distcode=t.distdyn=new r.Buf32(m),t.sane=1,t.back=-1,u):d}function v(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,_(e)):d}function y(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(i<(a=o.wsize-o.wnext)&&(a=i),r.arraySet(o.window,t,n-i,a,o.wnext),(i-=a)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,n.check=a(n.check,R,2,0),x=b=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&b)<<8)+(b>>8))%31){e.msg=`incorrect header check`,n.mode=30;break}if((15&b)!=8){e.msg=`unknown compression method`,n.mode=30;break}if(x-=4,P=8+(15&(b>>>=4)),n.wbits===0)n.wbits=P;else if(P>n.wbits){e.msg=`invalid window size`,n.mode=30;break}n.dmax=1<>8&1),512&n.flags&&(R[0]=255&b,R[1]=b>>>8&255,n.check=a(n.check,R,2,0)),x=b=0,n.mode=3;case 3:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<>>8&255,R[2]=b>>>16&255,R[3]=b>>>24&255,n.check=a(n.check,R,4,0)),x=b=0,n.mode=4;case 4:for(;x<16;){if(v===0)break e;v--,b+=p[g++]<>8),512&n.flags&&(R[0]=255&b,R[1]=b>>>8&255,n.check=a(n.check,R,2,0)),x=b=0,n.mode=5;case 5:if(1024&n.flags){for(;x<16;){if(v===0)break e;v--,b+=p[g++]<>>8&255,n.check=a(n.check,R,2,0)),x=b=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&(v<(E=n.length)&&(E=v),E&&(n.head&&(P=n.head.extra_len-n.length,n.head.extra||(n.head.extra=Array(n.head.extra_len)),r.arraySet(n.head.extra,p,g,E,P)),512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,n.length-=E),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(v===0)break e;for(E=0;P=p[g+ E++],n.head&&P&&n.length<65536&&(n.head.name+=String.fromCharCode(P)),P&&E>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<>>=7&x,x-=7&x,n.mode=27;break}for(;x<3;){if(v===0)break e;v--,b+=p[g++]<>>=1)){case 0:n.mode=14;break;case 1:if(w(n),n.mode=20,t!==6)break;b>>>=2,x-=2;break e;case 2:n.mode=17;break;case 3:e.msg=`invalid block type`,n.mode=30}b>>>=2,x-=2;break;case 14:for(b>>>=7&x,x-=7&x;x<32;){if(v===0)break e;v--,b+=p[g++]<>>16^65535)){e.msg=`invalid stored block lengths`,n.mode=30;break}if(n.length=65535&b,x=b=0,n.mode=15,t===6)break e;case 15:n.mode=16;case 16:if(E=n.length){if(v>>=5,x-=5,n.ndist=1+(31&b),b>>>=5,x-=5,n.ncode=4+(15&b),b>>>=4,x-=4,286>>=3,x-=3}for(;n.have<19;)n.lens[ne[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,I={bits:n.lenbits},F=s(0,n.lens,0,19,n.lencode,0,n.work,I),n.lenbits=I.bits,F){e.msg=`invalid code lengths set`,n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have>>16&255,j=65535&L,!((k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>>=k,x-=k,n.lens[n.have++]=j;else{if(j===16){for(te=k+2;x>>=k,x-=k,n.have===0){e.msg=`invalid bit length repeat`,n.mode=30;break}P=n.lens[n.have-1],E=3+(3&b),b>>>=2,x-=2}else if(j===17){for(te=k+3;x>>=k)),b>>>=3,x-=3}else{for(te=k+7;x>>=k)),b>>>=7,x-=7}if(n.have+E>n.nlen+n.ndist){e.msg=`invalid bit length repeat`,n.mode=30;break}for(;E--;)n.lens[n.have++]=P}}if(n.mode===30)break;if(n.lens[256]===0){e.msg=`invalid code -- missing end-of-block`,n.mode=30;break}if(n.lenbits=9,I={bits:n.lenbits},F=s(c,n.lens,0,n.nlen,n.lencode,0,n.work,I),n.lenbits=I.bits,F){e.msg=`invalid literal/lengths set`,n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,I={bits:n.distbits},F=s(l,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,I),n.distbits=I.bits,F){e.msg=`invalid distances set`,n.mode=30;break}if(n.mode=20,t===6)break e;case 20:n.mode=21;case 21:if(6<=v&&258<=y){e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,o(e,C),_=e.next_out,m=e.output,y=e.avail_out,g=e.next_in,p=e.input,v=e.avail_in,b=n.hold,x=n.bits,n.mode===12&&(n.back=-1);break}for(n.back=0;A=(L=n.lencode[b&(1<>>16&255,j=65535&L,!((k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>M)])>>>16&255,j=65535&L,!(M+(k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,n.length=j,A===0){n.mode=26;break}if(32&A){n.back=-1,n.mode=12;break}if(64&A){e.msg=`invalid literal/length code`,n.mode=30;break}n.extra=15&A,n.mode=22;case 22:if(n.extra){for(te=n.extra;x>>=n.extra,x-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;A=(L=n.distcode[b&(1<>>16&255,j=65535&L,!((k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>M)])>>>16&255,j=65535&L,!(M+(k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,64&A){e.msg=`invalid distance code`,n.mode=30;break}n.offset=j,n.extra=15&A,n.mode=24;case 24:if(n.extra){for(te=n.extra;x>>=n.extra,x-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg=`invalid distance too far back`,n.mode=30;break}n.mode=25;case 25:if(y===0)break e;if(E=C-y,n.offset>E){if((E=n.offset-E)>n.whave&&n.sane){e.msg=`invalid distance too far back`,n.mode=30;break}D=E>n.wnext?(E-=n.wnext,n.wsize-E):n.wnext-E,E>n.length&&(E=n.length),O=n.window}else O=m,D=_-n.offset,E=n.length;for(yv?(b=I[te+d[w]],N[ee+d[w]]):(b=96,0),p=1<>k)+(m-=p)]=y<<24|b<<16|x|0,m!==0;);for(p=1<>=1;if(p===0?M=0:(M&=p-1,M+=p),w++,--P[C]==0){if(C===E)break;C=t[n+d[w]]}if(D>>7)]}function I(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function te(e,t,n){e.bi_valid>h-n?(e.bi_buf|=t<>h-e.bi_valid,e.bi_valid+=n-h):(e.bi_buf|=t<>>=1,n<<=1,0<--t;);return n>>>1}function ne(e,t,n){var r,i,a=Array(m+1),o=0;for(r=1;r<=m;r++)a[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];s!==0&&(e[2*i]=R(a[s]++,s))}}function z(e){var t;for(t=0;t>1;1<=n;n--)ae(e,a,n);for(i=c;n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ae(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,a[2*i]=a[2*n]+a[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,a[2*n+1]=a[2*r+1]=i,e.heap[1]=i++,ae(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,h=t.stat_desc.extra_base,g=t.stat_desc.max_length,_=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n>=7;r>>=1)if(1&n&&e.dyn_ltree[2*t]!==0)return i;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return a;for(t=32;t>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=n+5,n+4<=o&&t!==-1?de(e,t,n,r):e.strategy===4||s===o?(te(e,2+(r?1:0),3),oe(e,T,E)):(te(e,4+(r?1:0),3),function(e,t,n,r){var i;for(te(e,t-257,5),te(e,n-1,5),te(e,r-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,t===0?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(O[n]+l+1)]++,e.dyn_dtree[2*F(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){te(e,2,3),L(e,_,T),function(e){e.bi_valid===16?(I(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,n){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=``,this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){(function(e,t){"use strict";if(!e.setImmediate){var n,r,i,a,o=1,s={},c=!1,l=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,n={}.toString.call(e.process)===`[object process]`?function(e){process.nextTick(function(){f(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage(``,`*`),e.onmessage=n,t}}()?(a=`setImmediate$`+Math.random()+`$`,e.addEventListener?e.addEventListener(`message`,p,!1):e.attachEvent(`onmessage`,p),function(t){e.postMessage(a+t,`*`)}):e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){i.port2.postMessage(e)}):l&&`onreadystatechange`in l.createElement(`script`)?(r=l.documentElement,function(e){var t=l.createElement(`script`);t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(f,0,e)},u.setImmediate=function(e){typeof e!=`function`&&(e=Function(``+e));for(var t=Array(arguments.length-1),r=0;r`u`?e===void 0?this:e:self)}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}]},{},[10])(10)})}),d_=At(u_());vp.zipReader=(e,t)=>d_.default.loadAsync(e);const f_=vp.createSettings;vp.createSettings=async e=>{let t=Object.keys(e.files);return t.find(e=>p_(e))?f_(e):g_(t)};function p_(e){return e.endsWith(`model3.json`)}function m_(e){return e.endsWith(`.moc3`)}function h_(e){return e.split(/[\\/]/).pop()}function g_(e){let t=e.filter(e=>m_(e));if(t.length!==1){let e=t.length?`(${t.map(e=>`"${e}"`).join(`,`)})`:``;throw Error(`Expected exactly one moc file, got ${t.length} ${e}`)}let n=t[0],r=h_(n).replace(/\.moc3?/,``),i=e.filter(e=>e.endsWith(`.png`));if(!i.length)throw Error(`Textures not found`);let a=e.filter(e=>e.endsWith(`.mtn`)||e.endsWith(`.motion3.json`)),o=e.find(e=>e.includes(`physics`)),s=e.find(e=>e.includes(`pose`)),c=new bp({url:`${r}.model3.json`,Version:3,FileReferences:{Moc:n,Textures:i,Physics:o,Pose:s,Motions:a.length?{"":a.map(e=>({File:e}))}:void 0}});return c.name=r,c._objectURL=`example://${c.url}`,c}vp.readText=(e,t)=>{let n=e.file(t);if(!n)throw Error(`Cannot find file: ${t}`);return n.async(`text`)},vp.getFilePaths=e=>{let t=[];return e.forEach(e=>t.push(e)),Promise.resolve(t)},vp.getFiles=(e,t)=>Promise.all(t.map(async t=>{let n=t.slice(t.lastIndexOf(`/`)+1),r=await e.file(t).async(`blob`);return new File([r],n)}));const __={absolute:``,bottom:`3`,right:`3`},v_={flex:`~ row`,"cursor-pointer":``},y_=[`checked`,`aria-checked`],b_={key:0,"min-w":`50vw`,z:`(H(),Ft(Qe,{relative:``},{default:Kn(({width:a,height:o})=>[Rt(Ap,{width:a,height:o,resolution:2,"max-h":`100dvh`},{default:Kn(({app:t})=>[Rt(l_,{app:t,"mouth-open-size":e.mouthOpenSize,width:a,height:o,paused:e.paused,"focus-at":e.focusAt,"x-offset":e.xOffset,"y-offset":e.yOffset},null,8,[`app`,`mouth-open-size`,`width`,`height`,`paused`,`focus-at`,`x-offset`,`y-offset`])]),_:2},1032,[`width`,`height`]),V(`div`,__,[V(`div`,v_,[V(`label`,{class:tn([n.value?`bg-neutral-300 dark:bg-neutral-200`:`bg-neutral-100 dark:bg-neutral-700`]),transition:`all ease-in-out duration-500`,text:`lg neutral-500 dark:neutral-400`,"m-1":``,"h-fit":``,"w-fit":``,"cursor-pointer":``,"appearance-none":``,"gap-1":``,"rounded-lg":``,"rounded-md":``,"border-none":``,"p-2":``,"outline-none":``},[qn(V(`input`,{"onUpdate:modelValue":i[0]||=e=>n.value=e,checked:n.value,"aria-checked":n.value,name:`showLive2DViewerInspector`,type:`checkbox`,"appearance-none":``,"outline-none":``,hidden:``},null,8,y_),[[Hn,n.value]]),i[8]||=V(`div`,{"select-none":``},[V(`div`,{"i-solar:bug-bold-duotone":``})],-1)],2)]),Rt(G(pt),null,{default:Kn(()=>[n.value?(H(),Lt(`div`,b_,[V(`div`,x_,[V(`div`,S_,[V(`span`,null,vn(G(t)(`stage.viewers.debug-menu.emotions`)),1)]),V(`div`,C_,[V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[1]||=e=>r.value={group:`Surprise`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.surprised`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[2]||=e=>r.value={group:`Sad`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.sad`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[3]||=e=>r.value={group:`Angry`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.angry`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[4]||=e=>r.value={group:`Happy`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.happy`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[5]||=e=>r.value={group:`Awkward`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.awkward`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[6]||=e=>r.value={group:`Question`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.question`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[7]||=e=>r.value={group:`Think`,index:0}},vn(G(t)(`stage.viewers.debug-menu.emotions-btn.think`)),1)])])])):It(``,!0)]),_:1})])]),_:1}))}}),T_=w_;function E_(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}function D_(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)}function O_(e){return this instanceof O_?(this.v=e,this):new O_(e)}function k_(e,t,n){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var r=n.apply(e,t||[]),i,a=[];return i=Object.create((typeof AsyncIterator==`function`?AsyncIterator:Object).prototype),s(`next`),s(`throw`),s(`return`,o),i[Symbol.asyncIterator]=function(){return this},i;function o(e){return function(t){return Promise.resolve(t).then(e,d)}}function s(e,t){r[e]&&(i[e]=function(t){return new Promise(function(n,r){a.push([e,t,n,r])>1||c(e,t)})},t&&(i[e]=t(i[e])))}function c(e,t){try{l(r[e](t))}catch(e){f(a[0][3],e)}}function l(e){e.value instanceof O_?Promise.resolve(e.value.v).then(u,d):f(a[0][2],e)}function u(e){c(`next`,e)}function d(e){c(`throw`,e)}function f(e,t){e(t),a.shift(),a.length&&c(a[0][0],a[0][1])}}function A_(e){var t,n;return t={},r(`next`),r(`throw`,function(e){throw e}),r(`return`),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:O_(e[r](t)),done:!1}:i?i(t):t}:i}}function j_(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof D_==`function`?D_(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,a){n=e[t](n),i(r,a,n.done,n.value)})}}function i(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}}const M_=new TextDecoder(`utf-8`),N_=e=>M_.decode(e),P_=new TextEncoder,F_=e=>P_.encode(e),I_=e=>typeof e==`number`,L_=e=>typeof e==`boolean`,R_=e=>typeof e==`function`,z_=e=>e!=null&&Object(e)===e,B_=e=>z_(e)&&R_(e.then),V_=e=>z_(e)&&R_(e[Symbol.iterator]),H_=e=>z_(e)&&R_(e[Symbol.asyncIterator]),U_=e=>z_(e)&&z_(e.schema),W_=e=>z_(e)&&`done`in e&&`value`in e,G_=e=>z_(e)&&R_(e.stat)&&I_(e.fd),K_=e=>z_(e)&&Y_(e.body),q_=e=>`_getDOMStream`in e&&`_getNodeStream`in e,J_=e=>z_(e)&&R_(e.abort)&&R_(e.getWriter)&&!q_(e),Y_=e=>z_(e)&&R_(e.cancel)&&R_(e.getReader)&&!q_(e),X_=e=>z_(e)&&R_(e.end)&&R_(e.write)&&L_(e.writable)&&!q_(e),Z_=e=>z_(e)&&R_(e.read)&&R_(e.pipe)&&L_(e.readable)&&!q_(e),Q_=e=>z_(e)&&R_(e.clear)&&R_(e.bytes)&&R_(e.position)&&R_(e.setPosition)&&R_(e.capacity)&&R_(e.getBufferIdentifier)&&R_(e.createLong),$_=typeof SharedArrayBuffer<`u`?SharedArrayBuffer:ArrayBuffer;function ev(e){let t=e[0]?[e[0]]:[],n,r,i,a;for(let o,s,c=0,l=0,u=e.length;++ce+t.byteLength,0),i,a,o,s=0,c=-1,l=Math.min(t||1/0,r);for(let e=n.length;++crv(Int32Array,e),av=e=>rv(BigInt64Array,e),ov=e=>rv(Uint8Array,e),sv=e=>(e.next(),e);function*cv(e,t){let n=function*(e){yield e},r=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof $_?n(t):V_(t)?t:n(t);return yield*sv(function*(t){let n=null;do n=t.next(yield rv(e,n));while(!n.done)}(r[Symbol.iterator]())),new e}const lv=e=>cv(Uint8Array,e);function uv(e,t){return k_(this,arguments,function*(){if(B_(t))return yield O_(yield O_(yield*A_(j_(uv(e,yield O_(t))))));let n=function(e){return k_(this,arguments,function*(){yield yield O_(yield O_(e))})},r=function(e){return k_(this,arguments,function*(){yield O_(yield*A_(j_(sv(function*(e){let t=null;do t=e.next(yield t?.value);while(!t.done)}(e[Symbol.iterator]())))))})},i=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof $_?n(t):V_(t)?r(t):H_(t)?t:n(t);return yield O_(yield*A_(j_(sv(function(t){return k_(this,arguments,function*(){let n=null;do n=yield O_(t.next(yield yield O_(rv(e,n))));while(!n.done)})}(i[Symbol.asyncIterator]()))))),yield O_(new e)})}const dv=e=>uv(Uint8Array,e);function fv(e,t,n){if(e!==0){n=n.slice(0,t);for(let t=-1,r=n.length;++t0)do if(e[n]!==t[n])return!1;while(++n(e.next(),e);function*gv(e){let t,n=!1,r=[],i,a,o,s=0;function c(){return a===`peek`?nv(r,o)[0]:([i,r,s]=nv(r,o),i)}({cmd:a,size:o}=(yield(()=>null)())||{cmd:`read`,size:0});let l=lv(e)[Symbol.iterator]();try{do if({done:t,value:i}=Number.isNaN(o-s)?l.next():l.next(o-s),!t&&i.byteLength>0&&(r.push(i),s+=i.byteLength),t||o<=s)do({cmd:a,size:o}=yield c());while(onull)()))||{cmd:`read`,size:0});let l=dv(e)[Symbol.asyncIterator]();try{do if({done:t,value:i}=Number.isNaN(o-s)?yield O_(l.next()):yield O_(l.next(o-s)),!t&&i.byteLength>0&&(r.push(i),s+=i.byteLength),t||o<=s)do({cmd:a,size:o}=yield yield O_(c()));while(onull)()))||{cmd:`read`,size:0});let l=new yv(e);try{do if({done:t,value:i}=Number.isNaN(o-s)?yield O_(l.read()):yield O_(l.read(o-s)),!t&&i.byteLength>0&&(r.push(ov(i)),s+=i.byteLength),t||o<=s)do({cmd:a,size:o}=yield yield O_(c()));while(o{})}get closed(){return this.reader?this.reader.closed.catch(()=>{}):Promise.resolve()}releaseLock(){this.reader&&this.reader.releaseLock(),this.reader=null}cancel(e){return E_(this,void 0,void 0,function*(){let{reader:t,source:n}=this;t&&(yield t.cancel(e).catch(()=>{})),n&&n.locked&&this.releaseLock()})}read(e){return E_(this,void 0,void 0,function*(){if(e===0)return{done:this.reader==null,value:new Uint8Array};let t=yield this.reader.read();return!t.done&&(t.value=ov(t)),t})}};const bv=(e,t)=>{let n=e=>r([t,e]),r;return[t,n,new Promise(i=>(r=i)&&e.once(t,n))]};function xv(e){return k_(this,arguments,function*(){let t=[],n=`error`,r=!1,i=null,a,o,s=0,c=[],l;function u(){return a===`peek`?nv(c,o)[0]:([l,c,s]=nv(c,o),l)}if({cmd:a,size:o}=(yield yield O_((()=>null)()))||{cmd:`read`,size:0},e.isTTY)return yield yield O_(new Uint8Array),yield O_(null);try{t[0]=bv(e,`end`),t[1]=bv(e,`error`);do{if(t[2]=bv(e,`readable`),[n,i]=yield O_(Promise.race(t.map(e=>e[2]))),n===`error`)break;if((r=n===`end`)||(Number.isFinite(o-s)?(l=ov(e.read(o-s)),l.byteLength0&&(c.push(l),s+=l.byteLength)),r||o<=s)do({cmd:a,size:o}=yield yield O_(u()));while(o{for(let[n,r]of t)e.off(n,r);try{let t=e.destroy;t&&t.call(e,n),n=void 0}catch(e){n=e||n}finally{n==null?r():i(n)}})}})}var Sv;(function(e){e[e.V1=0]=`V1`,e[e.V2=1]=`V2`,e[e.V3=2]=`V3`,e[e.V4=3]=`V4`,e[e.V5=4]=`V5`})(Sv||={});var Cv;(function(e){e[e.Sparse=0]=`Sparse`,e[e.Dense=1]=`Dense`})(Cv||={});var wv;(function(e){e[e.HALF=0]=`HALF`,e[e.SINGLE=1]=`SINGLE`,e[e.DOUBLE=2]=`DOUBLE`})(wv||={});var Tv;(function(e){e[e.DAY=0]=`DAY`,e[e.MILLISECOND=1]=`MILLISECOND`})(Tv||={});var Ev;(function(e){e[e.SECOND=0]=`SECOND`,e[e.MILLISECOND=1]=`MILLISECOND`,e[e.MICROSECOND=2]=`MICROSECOND`,e[e.NANOSECOND=3]=`NANOSECOND`})(Ev||={});var Dv;(function(e){e[e.YEAR_MONTH=0]=`YEAR_MONTH`,e[e.DAY_TIME=1]=`DAY_TIME`,e[e.MONTH_DAY_NANO=2]=`MONTH_DAY_NANO`})(Dv||={});const Ov=2,kv=4,Av=4,jv=4,Mv=new Int32Array(2),Nv=new Float32Array(Mv.buffer),Pv=new Float64Array(Mv.buffer),Fv=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;var Iv;(function(e){e[e.UTF8_BYTES=1]=`UTF8_BYTES`,e[e.UTF16_STRING=2]=`UTF16_STRING`})(Iv||={});var Lv=class e{constructor(e){this.bytes_=e,this.position_=0,this.text_decoder_=new TextDecoder}static allocate(t){return new e(new Uint8Array(t))}clear(){this.position_=0}bytes(){return this.bytes_}position(){return this.position_}setPosition(e){this.position_=e}capacity(){return this.bytes_.length}readInt8(e){return this.readUint8(e)<<24>>24}readUint8(e){return this.bytes_[e]}readInt16(e){return this.readUint16(e)<<16>>16}readUint16(e){return this.bytes_[e]|this.bytes_[e+1]<<8}readInt32(e){return this.bytes_[e]|this.bytes_[e+1]<<8|this.bytes_[e+2]<<16|this.bytes_[e+3]<<24}readUint32(e){return this.readInt32(e)>>>0}readInt64(e){return BigInt.asIntN(64,BigInt(this.readUint32(e))+(BigInt(this.readUint32(e+4))<>8}writeUint16(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8}writeInt32(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8,this.bytes_[e+2]=t>>16,this.bytes_[e+3]=t>>24}writeUint32(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8,this.bytes_[e+2]=t>>16,this.bytes_[e+3]=t>>24}writeInt64(e,t){this.writeInt32(e,Number(BigInt.asIntN(32,t))),this.writeInt32(e+4,Number(BigInt.asIntN(32,t>>BigInt(32))))}writeUint64(e,t){this.writeUint32(e,Number(BigInt.asUintN(32,t))),this.writeUint32(e+4,Number(BigInt.asUintN(32,t>>BigInt(32))))}writeFloat32(e,t){Nv[0]=t,this.writeInt32(e,Mv[0])}writeFloat64(e,t){Pv[0]=t,this.writeInt32(e,Mv[Fv?0:1]),this.writeInt32(e+4,Mv[Fv?1:0])}getBufferIdentifier(){if(this.bytes_.lengththis.minalign&&(this.minalign=t);let r=~(this.bb.capacity()-this.space+n)+1&t-1;for(;this.space=0&&this.vtable[t]==0;t--);let n=t+1;for(;t>=0;t--)this.addInt16(this.vtable[t]==0?0:e-this.vtable[t]);let r=2;this.addInt16(e-this.object_start);let i=(n+r)*Ov;this.addInt16(i);let a=0,o=this.space;outer_loop:for(t=0;t=0;t--)this.writeInt8(e.charCodeAt(t))}this.prep(this.minalign,kv+r),this.addOffset(e),r&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)}finishSizePrefixed(e,t){this.finish(e,t,!0)}requiredField(e,t){let n=this.bb.capacity()-e,r=n-this.bb.readInt32(n),i=t=0;n--)e.addInt32(t[n]);return e.endVector()}static startTypeIdsVector(e,t){e.startVector(4,t,4)}static endUnion(e){let t=e.endObject();return t}static createUnion(t,n,r){return e.startUnion(t),e.addMode(t,n),e.addTypeIds(t,r),e.endUnion(t)}},hy=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsUtf8(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsUtf8(t,n){return t.setPosition(t.position()+jv),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static startUtf8(e){e.startObject(0)}static endUtf8(e){let t=e.endObject();return t}static createUtf8(t){return e.startUtf8(t),e.endUtf8(t)}},gy;(function(e){e[e.NONE=0]=`NONE`,e[e.Null=1]=`Null`,e[e.Int=2]=`Int`,e[e.FloatingPoint=3]=`FloatingPoint`,e[e.Binary=4]=`Binary`,e[e.Utf8=5]=`Utf8`,e[e.Bool=6]=`Bool`,e[e.Decimal=7]=`Decimal`,e[e.Date=8]=`Date`,e[e.Time=9]=`Time`,e[e.Timestamp=10]=`Timestamp`,e[e.Interval=11]=`Interval`,e[e.List=12]=`List`,e[e.Struct_=13]=`Struct_`,e[e.Union=14]=`Union`,e[e.FixedSizeBinary=15]=`FixedSizeBinary`,e[e.FixedSizeList=16]=`FixedSizeList`,e[e.Map=17]=`Map`,e[e.Duration=18]=`Duration`,e[e.LargeBinary=19]=`LargeBinary`,e[e.LargeUtf8=20]=`LargeUtf8`,e[e.LargeList=21]=`LargeList`,e[e.RunEndEncoded=22]=`RunEndEncoded`})(gy||={});var _y=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsField(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsField(t,n){return t.setPosition(t.position()+jv),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}name(e){let t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__string(this.bb_pos+t,e):null}nullable(){let e=this.bb.__offset(this.bb_pos,6);return e?!!this.bb.readInt8(this.bb_pos+e):!1}typeType(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.readUint8(this.bb_pos+e):gy.NONE}type(e){let t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__union(e,this.bb_pos+t):null}dictionary(e){let t=this.bb.__offset(this.bb_pos,12);return t?(e||new Yv).__init(this.bb.__indirect(this.bb_pos+t),this.bb):null}children(t,n){let r=this.bb.__offset(this.bb_pos,14);return r?(n||new e).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+t*4),this.bb):null}childrenLength(){let e=this.bb.__offset(this.bb_pos,14);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,16);return n?(t||new Xv).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,16);return e?this.bb.__vector_len(this.bb_pos+e):0}static startField(e){e.startObject(7)}static addName(e,t){e.addFieldOffset(0,t,0)}static addNullable(e,t){e.addFieldInt8(1,+t,0)}static addTypeType(e,t){e.addFieldInt8(2,t,gy.NONE)}static addType(e,t){e.addFieldOffset(3,t,0)}static addDictionary(e,t){e.addFieldOffset(4,t,0)}static addChildren(e,t){e.addFieldOffset(5,t,0)}static createChildrenVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startChildrenVector(e,t){e.startVector(4,t,4)}static addCustomMetadata(e,t){e.addFieldOffset(6,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endField(e){let t=e.endObject();return t}},vy=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsSchema(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsSchema(t,n){return t.setPosition(t.position()+jv),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}endianness(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):Kv.Little}fields(e,t){let n=this.bb.__offset(this.bb_pos,6);return n?(t||new _y).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}fieldsLength(){let e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,8);return n?(t||new Xv).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__vector_len(this.bb_pos+e):0}features(e){let t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readInt64(this.bb.__vector(this.bb_pos+t)+e*8):BigInt(0)}featuresLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__vector_len(this.bb_pos+e):0}static startSchema(e){e.startObject(4)}static addEndianness(e,t){e.addFieldInt16(0,t,Kv.Little)}static addFields(e,t){e.addFieldOffset(1,t,0)}static createFieldsVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startFieldsVector(e,t){e.startVector(4,t,4)}static addCustomMetadata(e,t){e.addFieldOffset(2,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static addFeatures(e,t){e.addFieldOffset(3,t,0)}static createFeaturesVector(e,t){e.startVector(8,t.length,8);for(let n=t.length-1;n>=0;n--)e.addInt64(t[n]);return e.endVector()}static startFeaturesVector(e,t){e.startVector(8,t,8)}static endSchema(e){let t=e.endObject();return t}static finishSchemaBuffer(e,t){e.finish(t)}static finishSizePrefixedSchemaBuffer(e,t){e.finish(t,void 0,!0)}static createSchema(t,n,r,i,a){return e.startSchema(t),e.addEndianness(t,n),e.addFields(t,r),e.addCustomMetadata(t,i),e.addFeatures(t,a),e.endSchema(t)}},yy;(function(e){e[e.NONE=0]=`NONE`,e[e.Schema=1]=`Schema`,e[e.DictionaryBatch=2]=`DictionaryBatch`,e[e.RecordBatch=3]=`RecordBatch`,e[e.Tensor=4]=`Tensor`,e[e.SparseTensor=5]=`SparseTensor`})(yy||={});var q;(function(e){e[e.NONE=0]=`NONE`,e[e.Null=1]=`Null`,e[e.Int=2]=`Int`,e[e.Float=3]=`Float`,e[e.Binary=4]=`Binary`,e[e.Utf8=5]=`Utf8`,e[e.Bool=6]=`Bool`,e[e.Decimal=7]=`Decimal`,e[e.Date=8]=`Date`,e[e.Time=9]=`Time`,e[e.Timestamp=10]=`Timestamp`,e[e.Interval=11]=`Interval`,e[e.List=12]=`List`,e[e.Struct=13]=`Struct`,e[e.Union=14]=`Union`,e[e.FixedSizeBinary=15]=`FixedSizeBinary`,e[e.FixedSizeList=16]=`FixedSizeList`,e[e.Map=17]=`Map`,e[e.Duration=18]=`Duration`,e[e.LargeBinary=19]=`LargeBinary`,e[e.LargeUtf8=20]=`LargeUtf8`,e[e.Dictionary=-1]=`Dictionary`,e[e.Int8=-2]=`Int8`,e[e.Int16=-3]=`Int16`,e[e.Int32=-4]=`Int32`,e[e.Int64=-5]=`Int64`,e[e.Uint8=-6]=`Uint8`,e[e.Uint16=-7]=`Uint16`,e[e.Uint32=-8]=`Uint32`,e[e.Uint64=-9]=`Uint64`,e[e.Float16=-10]=`Float16`,e[e.Float32=-11]=`Float32`,e[e.Float64=-12]=`Float64`,e[e.DateDay=-13]=`DateDay`,e[e.DateMillisecond=-14]=`DateMillisecond`,e[e.TimestampSecond=-15]=`TimestampSecond`,e[e.TimestampMillisecond=-16]=`TimestampMillisecond`,e[e.TimestampMicrosecond=-17]=`TimestampMicrosecond`,e[e.TimestampNanosecond=-18]=`TimestampNanosecond`,e[e.TimeSecond=-19]=`TimeSecond`,e[e.TimeMillisecond=-20]=`TimeMillisecond`,e[e.TimeMicrosecond=-21]=`TimeMicrosecond`,e[e.TimeNanosecond=-22]=`TimeNanosecond`,e[e.DenseUnion=-23]=`DenseUnion`,e[e.SparseUnion=-24]=`SparseUnion`,e[e.IntervalDayTime=-25]=`IntervalDayTime`,e[e.IntervalYearMonth=-26]=`IntervalYearMonth`,e[e.DurationSecond=-27]=`DurationSecond`,e[e.DurationMillisecond=-28]=`DurationMillisecond`,e[e.DurationMicrosecond=-29]=`DurationMicrosecond`,e[e.DurationNanosecond=-30]=`DurationNanosecond`})(q||={});var by;(function(e){e[e.OFFSET=0]=`OFFSET`,e[e.DATA=1]=`DATA`,e[e.VALIDITY=2]=`VALIDITY`,e[e.TYPE=3]=`TYPE`})(by||={});const xy=void 0;function Sy(e){if(e===null)return`null`;if(e===xy)return`undefined`;switch(typeof e){case`number`:return`${e}`;case`bigint`:return`${e}`;case`string`:return`"${e}"`}return typeof e[Symbol.toPrimitive]==`function`?e[Symbol.toPrimitive](`string`):ArrayBuffer.isView(e)?e instanceof BigInt64Array||e instanceof BigUint64Array?`[${[...e].map(e=>Sy(e))}]`:`[${e}]`:ArrayBuffer.isView(e)?`[${e}]`:JSON.stringify(e,(e,t)=>typeof t==`bigint`?`${t}`:t)}function Cy(e){if(typeof e==`bigint`&&(e<-(2**53-1)||e>2**53-1))throw TypeError(`${e} is not safe to convert to a number.`);return Number(e)}function wy(e,t){return Cy(e/t)+Cy(e%t)/Cy(t)}const Ty=Symbol.for(`isArrowBigNum`);function Ey(e,...t){return t.length===0?Object.setPrototypeOf(rv(this.TypedArray,e),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(e,...t),this.constructor.prototype)}Ey.prototype[Ty]=!0,Ey.prototype.toJSON=function(){return`"${Ny(this)}"`},Ey.prototype.valueOf=function(e){return My(this,e)},Ey.prototype.toString=function(){return Ny(this)},Ey.prototype[Symbol.toPrimitive]=function(e=`default`){switch(e){case`number`:return My(this);case`string`:return Ny(this);case`default`:return Py(this)}return Ny(this)};function Dy(...e){return Ey.apply(this,e)}function Oy(...e){return Ey.apply(this,e)}function ky(...e){return Ey.apply(this,e)}Object.setPrototypeOf(Dy.prototype,Object.create(Int32Array.prototype)),Object.setPrototypeOf(Oy.prototype,Object.create(Uint32Array.prototype)),Object.setPrototypeOf(ky.prototype,Object.create(Uint32Array.prototype)),Object.assign(Dy.prototype,Ey.prototype,{constructor:Dy,signed:!0,TypedArray:Int32Array,BigIntArray:BigInt64Array}),Object.assign(Oy.prototype,Ey.prototype,{constructor:Oy,signed:!1,TypedArray:Uint32Array,BigIntArray:BigUint64Array}),Object.assign(ky.prototype,Ey.prototype,{constructor:ky,signed:!0,TypedArray:Uint32Array,BigIntArray:BigUint64Array});const Ay=BigInt(4294967296)*BigInt(4294967296),jy=Ay-BigInt(1);function My(e,t){let{buffer:n,byteOffset:r,byteLength:i,signed:a}=e,o=new BigUint64Array(n,r,i/8),s=a&&o.at(-1)&BigInt(1)<=0)return Fy(e);t=t.slice();let r=1;for(let e=0;e(e.children=null,e.ArrayType=Array,e.OffsetArrayType=Int32Array,e[Symbol.toStringTag]=`DataType`))(ab.prototype);var ob=class extends ab{constructor(){super(q.Null)}toString(){return`Null`}};Ry=Symbol.toStringTag,ob[Ry]=(e=>e[Symbol.toStringTag]=`Null`)(ob.prototype);var sb=class extends ab{constructor(e,t){super(q.Int),this.isSigned=e,this.bitWidth=t}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?BigInt64Array:BigUint64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`${this.isSigned?`I`:`Ui`}nt${this.bitWidth}`}};zy=Symbol.toStringTag,sb[zy]=(e=>(e.isSigned=null,e.bitWidth=null,e[Symbol.toStringTag]=`Int`))(sb.prototype);var cb=class extends sb{constructor(){super(!0,8)}get ArrayType(){return Int8Array}},lb=class extends sb{constructor(){super(!0,16)}get ArrayType(){return Int16Array}},ub=class extends sb{constructor(){super(!0,32)}get ArrayType(){return Int32Array}},db=class extends sb{constructor(){super(!0,64)}get ArrayType(){return BigInt64Array}},fb=class extends sb{constructor(){super(!1,8)}get ArrayType(){return Uint8Array}},pb=class extends sb{constructor(){super(!1,16)}get ArrayType(){return Uint16Array}},mb=class extends sb{constructor(){super(!1,32)}get ArrayType(){return Uint32Array}},hb=class extends sb{constructor(){super(!1,64)}get ArrayType(){return BigUint64Array}};Object.defineProperty(cb.prototype,`ArrayType`,{value:Int8Array}),Object.defineProperty(lb.prototype,`ArrayType`,{value:Int16Array}),Object.defineProperty(ub.prototype,`ArrayType`,{value:Int32Array}),Object.defineProperty(db.prototype,`ArrayType`,{value:BigInt64Array}),Object.defineProperty(fb.prototype,`ArrayType`,{value:Uint8Array}),Object.defineProperty(pb.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(mb.prototype,`ArrayType`,{value:Uint32Array}),Object.defineProperty(hb.prototype,`ArrayType`,{value:BigUint64Array});var gb=class extends ab{constructor(e){super(q.Float),this.precision=e}get ArrayType(){switch(this.precision){case wv.HALF:return Uint16Array;case wv.SINGLE:return Float32Array;case wv.DOUBLE:return Float64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`Float${this.precision<<5||16}`}};By=Symbol.toStringTag,gb[By]=(e=>(e.precision=null,e[Symbol.toStringTag]=`Float`))(gb.prototype);var _b=class extends gb{constructor(){super(wv.HALF)}},vb=class extends gb{constructor(){super(wv.SINGLE)}},yb=class extends gb{constructor(){super(wv.DOUBLE)}};Object.defineProperty(_b.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(vb.prototype,`ArrayType`,{value:Float32Array}),Object.defineProperty(yb.prototype,`ArrayType`,{value:Float64Array});var bb=class extends ab{constructor(){super(q.Binary)}toString(){return`Binary`}};Vy=Symbol.toStringTag,bb[Vy]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Binary`))(bb.prototype);var xb=class extends ab{constructor(){super(q.LargeBinary)}toString(){return`LargeBinary`}};Hy=Symbol.toStringTag,xb[Hy]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeBinary`))(xb.prototype);var Sb=class extends ab{constructor(){super(q.Utf8)}toString(){return`Utf8`}};Uy=Symbol.toStringTag,Sb[Uy]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Utf8`))(Sb.prototype);var Cb=class extends ab{constructor(){super(q.LargeUtf8)}toString(){return`LargeUtf8`}};Wy=Symbol.toStringTag,Cb[Wy]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeUtf8`))(Cb.prototype);var wb=class extends ab{constructor(){super(q.Bool)}toString(){return`Bool`}};Gy=Symbol.toStringTag,wb[Gy]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Bool`))(wb.prototype);var Tb=class extends ab{constructor(e,t,n=128){super(q.Decimal),this.scale=e,this.precision=t,this.bitWidth=n}toString(){return`Decimal[${this.precision}e${this.scale>0?`+`:``}${this.scale}]`}};Ky=Symbol.toStringTag,Tb[Ky]=(e=>(e.scale=null,e.precision=null,e.ArrayType=Uint32Array,e[Symbol.toStringTag]=`Decimal`))(Tb.prototype);var Eb=class extends ab{constructor(e){super(q.Date),this.unit=e}toString(){return`Date${(this.unit+1)*32}<${Tv[this.unit]}>`}get ArrayType(){return this.unit===Tv.DAY?Int32Array:BigInt64Array}};qy=Symbol.toStringTag,Eb[qy]=(e=>(e.unit=null,e[Symbol.toStringTag]=`Date`))(Eb.prototype);var Db=class extends ab{constructor(e,t){super(q.Time),this.unit=e,this.bitWidth=t}toString(){return`Time${this.bitWidth}<${Ev[this.unit]}>`}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return BigInt64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}};Jy=Symbol.toStringTag,Db[Jy]=(e=>(e.unit=null,e.bitWidth=null,e[Symbol.toStringTag]=`Time`))(Db.prototype);var Ob=class extends ab{constructor(e,t){super(q.Timestamp),this.unit=e,this.timezone=t}toString(){return`Timestamp<${Ev[this.unit]}${this.timezone?`, ${this.timezone}`:``}>`}};Yy=Symbol.toStringTag,Ob[Yy]=(e=>(e.unit=null,e.timezone=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Timestamp`))(Ob.prototype);var kb=class extends ab{constructor(e){super(q.Interval),this.unit=e}toString(){return`Interval<${Dv[this.unit]}>`}};Xy=Symbol.toStringTag,kb[Xy]=(e=>(e.unit=null,e.ArrayType=Int32Array,e[Symbol.toStringTag]=`Interval`))(kb.prototype);var Ab=class extends ab{constructor(e){super(q.Duration),this.unit=e}toString(){return`Duration<${Ev[this.unit]}>`}};Zy=Symbol.toStringTag,Ab[Zy]=(e=>(e.unit=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Duration`))(Ab.prototype);var jb=class extends ab{constructor(e){super(q.List),this.children=[e]}toString(){return`List<${this.valueType}>`}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};Qy=Symbol.toStringTag,jb[Qy]=(e=>(e.children=null,e[Symbol.toStringTag]=`List`))(jb.prototype);var Mb=class extends ab{constructor(e){super(q.Struct),this.children=e}toString(){return`Struct<{${this.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};$y=Symbol.toStringTag,Mb[$y]=(e=>(e.children=null,e[Symbol.toStringTag]=`Struct`))(Mb.prototype);var Nb=class extends ab{constructor(e,t,n){super(q.Union),this.mode=e,this.children=n,this.typeIds=t=Int32Array.from(t),this.typeIdToChildIndex=t.reduce((e,t,n)=>(e[t]=n)&&e||e,Object.create(null))}toString(){return`${this[Symbol.toStringTag]}<${this.children.map(e=>`${e.type}`).join(` | `)}>`}};eb=Symbol.toStringTag,Nb[eb]=(e=>(e.mode=null,e.typeIds=null,e.children=null,e.typeIdToChildIndex=null,e.ArrayType=Int8Array,e[Symbol.toStringTag]=`Union`))(Nb.prototype);var Pb=class extends ab{constructor(e){super(q.FixedSizeBinary),this.byteWidth=e}toString(){return`FixedSizeBinary[${this.byteWidth}]`}};tb=Symbol.toStringTag,Pb[tb]=(e=>(e.byteWidth=null,e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`FixedSizeBinary`))(Pb.prototype);var Fb=class extends ab{constructor(e,t){super(q.FixedSizeList),this.listSize=e,this.children=[t]}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}};nb=Symbol.toStringTag,Fb[nb]=(e=>(e.children=null,e.listSize=null,e[Symbol.toStringTag]=`FixedSizeList`))(Fb.prototype);var Ib=class extends ab{constructor(e,t=!1){var n,r,i;if(super(q.Map),this.children=[e],this.keysSorted=t,e&&(e.name=`entries`,(n=e?.type)?.children)){let t=(r=e?.type)?.children[0];t&&(t.name=`key`);let n=(i=e?.type)?.children[1];n&&(n.name=`value`)}}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return`Map<{${this.children[0].type.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};rb=Symbol.toStringTag,Ib[rb]=(e=>(e.children=null,e.keysSorted=null,e[Symbol.toStringTag]=`Map_`))(Ib.prototype);const Lb=(e=>()=>++e)(-1);var Rb=class extends ab{constructor(e,t,n,r){super(q.Dictionary),this.indices=t,this.dictionary=e,this.isOrdered=r||!1,this.id=n==null?Lb():Cy(n)}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return`Dictionary<${this.indices}, ${this.dictionary}>`}};ib=Symbol.toStringTag,Rb[ib]=(e=>(e.id=null,e.indices=null,e.isOrdered=null,e.dictionary=null,e[Symbol.toStringTag]=`Dictionary`))(Rb.prototype);function zb(e){let t=e;switch(e.typeId){case q.Decimal:return e.bitWidth/32;case q.Interval:return 1+t.unit;case q.FixedSizeList:return t.listSize;case q.FixedSizeBinary:return t.byteWidth;default:return 1}}var Bb=class{visitMany(e,...t){return e.map((e,n)=>this.visit(e,...t.map(e=>e[n])))}visit(...e){return this.getVisitFn(e[0],!1).apply(this,e)}getVisitFn(e,t=!0){return Vb(this,e,t)}getVisitFnByTypeId(e,t=!0){return Hb(this,e,t)}visitNull(e,...t){return null}visitBool(e,...t){return null}visitInt(e,...t){return null}visitFloat(e,...t){return null}visitUtf8(e,...t){return null}visitLargeUtf8(e,...t){return null}visitBinary(e,...t){return null}visitLargeBinary(e,...t){return null}visitFixedSizeBinary(e,...t){return null}visitDate(e,...t){return null}visitTimestamp(e,...t){return null}visitTime(e,...t){return null}visitDecimal(e,...t){return null}visitList(e,...t){return null}visitStruct(e,...t){return null}visitUnion(e,...t){return null}visitDictionary(e,...t){return null}visitInterval(e,...t){return null}visitDuration(e,...t){return null}visitFixedSizeList(e,...t){return null}visitMap(e,...t){return null}};function Vb(e,t,n=!0){return typeof t==`number`?Hb(e,t,n):typeof t==`string`&&t in q?Hb(e,q[t],n):t&&t instanceof ab?Hb(e,Ub(t),n):t?.type&&t.type instanceof ab?Hb(e,Ub(t.type),n):Hb(e,q.NONE,n)}function Hb(e,t,n=!0){let r=null;switch(t){case q.Null:r=e.visitNull;break;case q.Bool:r=e.visitBool;break;case q.Int:r=e.visitInt;break;case q.Int8:r=e.visitInt8||e.visitInt;break;case q.Int16:r=e.visitInt16||e.visitInt;break;case q.Int32:r=e.visitInt32||e.visitInt;break;case q.Int64:r=e.visitInt64||e.visitInt;break;case q.Uint8:r=e.visitUint8||e.visitInt;break;case q.Uint16:r=e.visitUint16||e.visitInt;break;case q.Uint32:r=e.visitUint32||e.visitInt;break;case q.Uint64:r=e.visitUint64||e.visitInt;break;case q.Float:r=e.visitFloat;break;case q.Float16:r=e.visitFloat16||e.visitFloat;break;case q.Float32:r=e.visitFloat32||e.visitFloat;break;case q.Float64:r=e.visitFloat64||e.visitFloat;break;case q.Utf8:r=e.visitUtf8;break;case q.LargeUtf8:r=e.visitLargeUtf8;break;case q.Binary:r=e.visitBinary;break;case q.LargeBinary:r=e.visitLargeBinary;break;case q.FixedSizeBinary:r=e.visitFixedSizeBinary;break;case q.Date:r=e.visitDate;break;case q.DateDay:r=e.visitDateDay||e.visitDate;break;case q.DateMillisecond:r=e.visitDateMillisecond||e.visitDate;break;case q.Timestamp:r=e.visitTimestamp;break;case q.TimestampSecond:r=e.visitTimestampSecond||e.visitTimestamp;break;case q.TimestampMillisecond:r=e.visitTimestampMillisecond||e.visitTimestamp;break;case q.TimestampMicrosecond:r=e.visitTimestampMicrosecond||e.visitTimestamp;break;case q.TimestampNanosecond:r=e.visitTimestampNanosecond||e.visitTimestamp;break;case q.Time:r=e.visitTime;break;case q.TimeSecond:r=e.visitTimeSecond||e.visitTime;break;case q.TimeMillisecond:r=e.visitTimeMillisecond||e.visitTime;break;case q.TimeMicrosecond:r=e.visitTimeMicrosecond||e.visitTime;break;case q.TimeNanosecond:r=e.visitTimeNanosecond||e.visitTime;break;case q.Decimal:r=e.visitDecimal;break;case q.List:r=e.visitList;break;case q.Struct:r=e.visitStruct;break;case q.Union:r=e.visitUnion;break;case q.DenseUnion:r=e.visitDenseUnion||e.visitUnion;break;case q.SparseUnion:r=e.visitSparseUnion||e.visitUnion;break;case q.Dictionary:r=e.visitDictionary;break;case q.Interval:r=e.visitInterval;break;case q.IntervalDayTime:r=e.visitIntervalDayTime||e.visitInterval;break;case q.IntervalYearMonth:r=e.visitIntervalYearMonth||e.visitInterval;break;case q.Duration:r=e.visitDuration;break;case q.DurationSecond:r=e.visitDurationSecond||e.visitDuration;break;case q.DurationMillisecond:r=e.visitDurationMillisecond||e.visitDuration;break;case q.DurationMicrosecond:r=e.visitDurationMicrosecond||e.visitDuration;break;case q.DurationNanosecond:r=e.visitDurationNanosecond||e.visitDuration;break;case q.FixedSizeList:r=e.visitFixedSizeList;break;case q.Map:r=e.visitMap;break}if(typeof r==`function`)return r;if(!n)return()=>null;throw Error(`Unrecognized type '${q[t]}'`)}function Ub(e){switch(e.typeId){case q.Null:return q.Null;case q.Int:{let{bitWidth:t,isSigned:n}=e;switch(t){case 8:return n?q.Int8:q.Uint8;case 16:return n?q.Int16:q.Uint16;case 32:return n?q.Int32:q.Uint32;case 64:return n?q.Int64:q.Uint64}return q.Int}case q.Float:switch(e.precision){case wv.HALF:return q.Float16;case wv.SINGLE:return q.Float32;case wv.DOUBLE:return q.Float64}return q.Float;case q.Binary:return q.Binary;case q.LargeBinary:return q.LargeBinary;case q.Utf8:return q.Utf8;case q.LargeUtf8:return q.LargeUtf8;case q.Bool:return q.Bool;case q.Decimal:return q.Decimal;case q.Time:switch(e.unit){case Ev.SECOND:return q.TimeSecond;case Ev.MILLISECOND:return q.TimeMillisecond;case Ev.MICROSECOND:return q.TimeMicrosecond;case Ev.NANOSECOND:return q.TimeNanosecond}return q.Time;case q.Timestamp:switch(e.unit){case Ev.SECOND:return q.TimestampSecond;case Ev.MILLISECOND:return q.TimestampMillisecond;case Ev.MICROSECOND:return q.TimestampMicrosecond;case Ev.NANOSECOND:return q.TimestampNanosecond}return q.Timestamp;case q.Date:switch(e.unit){case Tv.DAY:return q.DateDay;case Tv.MILLISECOND:return q.DateMillisecond}return q.Date;case q.Interval:switch(e.unit){case Dv.DAY_TIME:return q.IntervalDayTime;case Dv.YEAR_MONTH:return q.IntervalYearMonth}return q.Interval;case q.Duration:switch(e.unit){case Ev.SECOND:return q.DurationSecond;case Ev.MILLISECOND:return q.DurationMillisecond;case Ev.MICROSECOND:return q.DurationMicrosecond;case Ev.NANOSECOND:return q.DurationNanosecond}return q.Duration;case q.Map:return q.Map;case q.List:return q.List;case q.Struct:return q.Struct;case q.Union:switch(e.mode){case Cv.Dense:return q.DenseUnion;case Cv.Sparse:return q.SparseUnion}return q.Union;case q.FixedSizeBinary:return q.FixedSizeBinary;case q.FixedSizeList:return q.FixedSizeList;case q.Dictionary:return q.Dictionary}throw Error(`Unrecognized type '${q[e.typeId]}'`)}Bb.prototype.visitInt8=null,Bb.prototype.visitInt16=null,Bb.prototype.visitInt32=null,Bb.prototype.visitInt64=null,Bb.prototype.visitUint8=null,Bb.prototype.visitUint16=null,Bb.prototype.visitUint32=null,Bb.prototype.visitUint64=null,Bb.prototype.visitFloat16=null,Bb.prototype.visitFloat32=null,Bb.prototype.visitFloat64=null,Bb.prototype.visitDateDay=null,Bb.prototype.visitDateMillisecond=null,Bb.prototype.visitTimestampSecond=null,Bb.prototype.visitTimestampMillisecond=null,Bb.prototype.visitTimestampMicrosecond=null,Bb.prototype.visitTimestampNanosecond=null,Bb.prototype.visitTimeSecond=null,Bb.prototype.visitTimeMillisecond=null,Bb.prototype.visitTimeMicrosecond=null,Bb.prototype.visitTimeNanosecond=null,Bb.prototype.visitDenseUnion=null,Bb.prototype.visitSparseUnion=null,Bb.prototype.visitIntervalDayTime=null,Bb.prototype.visitIntervalYearMonth=null,Bb.prototype.visitDuration=null,Bb.prototype.visitDurationSecond=null,Bb.prototype.visitDurationMillisecond=null,Bb.prototype.visitDurationMicrosecond=null,Bb.prototype.visitDurationNanosecond=null;const Wb=new Float64Array(1),Gb=new Uint32Array(Wb.buffer);function Kb(e){let t=(e&31744)>>10,n=(e&1023)/1024,r=(-1)**((e&32768)>>15);switch(t){case 31:return r*(n?NaN:1/0);case 0:return r*(n?6103515625e-14*n:0)}return r*2**(t-15)*(1+n)}function qb(e){if(e!==e)return 32256;Wb[0]=e;let t=(Gb[1]&2147483648)>>16&65535,n=Gb[1]&2146435072,r=0;return n>=1089470464?Gb[0]>0?n=31744:(n=(n&2080374784)>>16,r=(Gb[1]&1048575)>>10):n<=1056964608?(r=1048576+(Gb[1]&1048575),r=1048576+(r<<(n>>20)-998)>>21,n=0):(n=n-1056964608>>10,r=(Gb[1]&1048575)+512>>10),t|n|r&65535}var Jb=class extends Bb{};function Yb(e){return(t,n,r)=>{if(t.setValid(n,r!=null))return e(t,n,r)}}const Xb=(e,t,n)=>{e[t]=Math.floor(n/864e5)},Zb=(e,t,n,r)=>{if(n+1{let i=e+n;r?t[i>>3]|=1<>3]&=~(1<{e[t]=n},ex=({values:e},t,n)=>{e[t]=n},tx=({values:e},t,n)=>{e[t]=qb(n)},nx=(e,t,n)=>{switch(e.type.precision){case wv.HALF:return tx(e,t,n);case wv.SINGLE:case wv.DOUBLE:return ex(e,t,n)}},rx=({values:e},t,n)=>{Xb(e,t,n.valueOf())},ix=({values:e},t,n)=>{e[t]=BigInt(n)},ax=({stride:e,values:t},n,r)=>{t.set(r.subarray(0,e),e*n)},ox=({values:e,valueOffsets:t},n,r)=>Zb(e,t,n,r),sx=({values:e,valueOffsets:t},n,r)=>Zb(e,t,n,F_(r)),cx=(e,t,n)=>{e.type.unit===Tv.DAY?rx(e,t,n):ix(e,t,n)},lx=({values:e},t,n)=>{e[t]=BigInt(n/1e3)},ux=({values:e},t,n)=>{e[t]=BigInt(n)},dx=({values:e},t,n)=>{e[t]=BigInt(n*1e3)},fx=({values:e},t,n)=>{e[t]=BigInt(n*1e6)},px=(e,t,n)=>{switch(e.type.unit){case Ev.SECOND:return lx(e,t,n);case Ev.MILLISECOND:return ux(e,t,n);case Ev.MICROSECOND:return dx(e,t,n);case Ev.NANOSECOND:return fx(e,t,n)}},mx=({values:e},t,n)=>{e[t]=n},hx=({values:e},t,n)=>{e[t]=n},gx=({values:e},t,n)=>{e[t]=n},_x=({values:e},t,n)=>{e[t]=n},vx=(e,t,n)=>{switch(e.type.unit){case Ev.SECOND:return mx(e,t,n);case Ev.MILLISECOND:return hx(e,t,n);case Ev.MICROSECOND:return gx(e,t,n);case Ev.NANOSECOND:return _x(e,t,n)}},yx=({values:e,stride:t},n,r)=>{e.set(r.subarray(0,t),t*n)},bx=(e,t,n)=>{let r=e.children[0],i=e.valueOffsets,a=Bx.getVisitFn(r);if(Array.isArray(n))for(let e=-1,o=i[t],s=i[t+1];o{let r=e.children[0],{valueOffsets:i}=e,a=Bx.getVisitFn(r),{[t]:o,[t+1]:s}=i,c=n instanceof Map?n.entries():Object.entries(n);for(let e of c)if(a(r,o,e),++o>=s)break},Sx=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[a]),Cx=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(a)),wx=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(i.name)),Tx=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[i.name]),Ex=(e,t,n)=>{let r=e.type.children.map(e=>Bx.getVisitFn(e.type)),i=n instanceof Map?wx(t,n):n instanceof zC?Cx(t,n):Array.isArray(n)?Sx(t,n):Tx(t,n);e.type.children.forEach((t,n)=>i(r[n],e.children[n],t,n))},Dx=(e,t,n)=>{e.type.mode===Cv.Dense?Ox(e,t,n):kx(e,t,n)},Ox=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];Bx.visit(i,e.valueOffsets[t],n)},kx=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];Bx.visit(i,t,n)},Ax=(e,t,n)=>{var r;(r=e.dictionary)==null||r.set(e.values[t],n)},jx=(e,t,n)=>{e.type.unit===Dv.DAY_TIME?Mx(e,t,n):Nx(e,t,n)},Mx=({values:e},t,n)=>{e.set(n.subarray(0,2),2*t)},Nx=({values:e},t,n)=>{e[t]=n[0]*12+n[1]%12},Px=({values:e},t,n)=>{e[t]=n},Fx=({values:e},t,n)=>{e[t]=n},Ix=({values:e},t,n)=>{e[t]=n},Lx=({values:e},t,n)=>{e[t]=n},Rx=(e,t,n)=>{switch(e.type.unit){case Ev.SECOND:return Px(e,t,n);case Ev.MILLISECOND:return Fx(e,t,n);case Ev.MICROSECOND:return Ix(e,t,n);case Ev.NANOSECOND:return Lx(e,t,n)}},zx=(e,t,n)=>{let{stride:r}=e,i=e.children[0],a=Bx.getVisitFn(i);if(Array.isArray(n))for(let e=-1,o=t*r;++e`${Sy(e)}: ${Sy(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}[Symbol.iterator](){return new Wx(this[Vx],this[Hx])}},Wx=class{constructor(e,t){this.childIndex=0,this.children=e.children,this.rowIndex=t,this.childFields=e.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){let e=this.childIndex;return ee.name)}has(e,t){return e[Vx].type.children.findIndex(e=>e.name===t)!==-1}getOwnPropertyDescriptor(e,t){if(e[Vx].type.children.findIndex(e=>e.name===t)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[Vx].type.children.findIndex(e=>e.name===t);if(n!==-1){let r=IS.visit(e[Vx].children[n],e[Hx]);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[Vx].type.children.findIndex(e=>e.name===t);return r===-1?Reflect.has(e,t)||typeof t==`symbol`?Reflect.set(e,t,n):!1:(Bx.visit(e[Vx].children[r],e[Hx],n),Reflect.set(e,t,n))}},Kx=class extends Bb{};function qx(e){return(t,n)=>t.getValid(n)?e(t,n):null}const Jx=(e,t)=>864e5*e[t],Yx=(e,t)=>null,Xx=(e,t,n)=>{if(n+1>=t.length)return null;let r=Cy(t[n]),i=Cy(t[n+1]);return e.subarray(r,i)},Zx=({offset:e,values:t},n)=>{let r=e+n,i=t[r>>3];return(i&1<Jx(e,t),$x=({values:e},t)=>Cy(e[t]),eS=({stride:e,values:t},n)=>t[e*n],tS=({stride:e,values:t},n)=>Kb(t[e*n]),nS=({values:e},t)=>e[t],rS=({stride:e,values:t},n)=>t.subarray(e*n,e*(n+1)),iS=({values:e,valueOffsets:t},n)=>Xx(e,t,n),aS=({values:e,valueOffsets:t},n)=>{let r=Xx(e,t,n);return r===null?null:N_(r)},oS=({values:e},t)=>e[t],sS=({type:e,values:t},n)=>e.precision===wv.HALF?Kb(t[n]):t[n],cS=(e,t)=>e.type.unit===Tv.DAY?Qx(e,t):$x(e,t),lS=({values:e},t)=>1e3*Cy(e[t]),uS=({values:e},t)=>Cy(e[t]),dS=({values:e},t)=>wy(e[t],BigInt(1e3)),fS=({values:e},t)=>wy(e[t],BigInt(1e6)),pS=(e,t)=>{switch(e.type.unit){case Ev.SECOND:return lS(e,t);case Ev.MILLISECOND:return uS(e,t);case Ev.MICROSECOND:return dS(e,t);case Ev.NANOSECOND:return fS(e,t)}},mS=({values:e},t)=>e[t],hS=({values:e},t)=>e[t],gS=({values:e},t)=>e[t],_S=({values:e},t)=>e[t],vS=(e,t)=>{switch(e.type.unit){case Ev.SECOND:return mS(e,t);case Ev.MILLISECOND:return hS(e,t);case Ev.MICROSECOND:return gS(e,t);case Ev.NANOSECOND:return _S(e,t)}},yS=({values:e,stride:t},n)=>Iy.decimal(e.subarray(t*n,t*(n+1))),bS=(e,t)=>{let{valueOffsets:n,stride:r,children:i}=e,{[t*r]:a,[t*r+1]:o}=n,s=i[0],c=s.slice(a,o-a);return new zC([c])},xS=(e,t)=>{let{valueOffsets:n,children:r}=e,{[t]:i,[t+1]:a}=n,o=r[0];return new VS(o.slice(i,a-i))},SS=(e,t)=>new Ux(e,t),CS=(e,t)=>e.type.mode===Cv.Dense?wS(e,t):TS(e,t),wS=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return IS.visit(r,e.valueOffsets[t])},TS=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return IS.visit(r,t)},ES=(e,t)=>{var n;return(n=e.dictionary)?.get(e.values[t])},DS=(e,t)=>e.type.unit===Dv.DAY_TIME?OS(e,t):kS(e,t),OS=({values:e},t)=>e.subarray(2*t,2*(t+1)),kS=({values:e},t)=>{let n=e[t],r=new Int32Array(2);return r[0]=Math.trunc(n/12),r[1]=Math.trunc(n%12),r},AS=({values:e},t)=>e[t],jS=({values:e},t)=>e[t],MS=({values:e},t)=>e[t],NS=({values:e},t)=>e[t],PS=(e,t)=>{switch(e.type.unit){case Ev.SECOND:return AS(e,t);case Ev.MILLISECOND:return jS(e,t);case Ev.MICROSECOND:return MS(e,t);case Ev.NANOSECOND:return NS(e,t)}},FS=(e,t)=>{let{stride:n,children:r}=e,i=r[0],a=i.slice(t*n,n);return new zC([a])};Kx.prototype.visitNull=qx(Yx),Kx.prototype.visitBool=qx(Zx),Kx.prototype.visitInt=qx(oS),Kx.prototype.visitInt8=qx(eS),Kx.prototype.visitInt16=qx(eS),Kx.prototype.visitInt32=qx(eS),Kx.prototype.visitInt64=qx(nS),Kx.prototype.visitUint8=qx(eS),Kx.prototype.visitUint16=qx(eS),Kx.prototype.visitUint32=qx(eS),Kx.prototype.visitUint64=qx(nS),Kx.prototype.visitFloat=qx(sS),Kx.prototype.visitFloat16=qx(tS),Kx.prototype.visitFloat32=qx(eS),Kx.prototype.visitFloat64=qx(eS),Kx.prototype.visitUtf8=qx(aS),Kx.prototype.visitLargeUtf8=qx(aS),Kx.prototype.visitBinary=qx(iS),Kx.prototype.visitLargeBinary=qx(iS),Kx.prototype.visitFixedSizeBinary=qx(rS),Kx.prototype.visitDate=qx(cS),Kx.prototype.visitDateDay=qx(Qx),Kx.prototype.visitDateMillisecond=qx($x),Kx.prototype.visitTimestamp=qx(pS),Kx.prototype.visitTimestampSecond=qx(lS),Kx.prototype.visitTimestampMillisecond=qx(uS),Kx.prototype.visitTimestampMicrosecond=qx(dS),Kx.prototype.visitTimestampNanosecond=qx(fS),Kx.prototype.visitTime=qx(vS),Kx.prototype.visitTimeSecond=qx(mS),Kx.prototype.visitTimeMillisecond=qx(hS),Kx.prototype.visitTimeMicrosecond=qx(gS),Kx.prototype.visitTimeNanosecond=qx(_S),Kx.prototype.visitDecimal=qx(yS),Kx.prototype.visitList=qx(bS),Kx.prototype.visitStruct=qx(SS),Kx.prototype.visitUnion=qx(CS),Kx.prototype.visitDenseUnion=qx(wS),Kx.prototype.visitSparseUnion=qx(TS),Kx.prototype.visitDictionary=qx(ES),Kx.prototype.visitInterval=qx(DS),Kx.prototype.visitIntervalDayTime=qx(OS),Kx.prototype.visitIntervalYearMonth=qx(kS),Kx.prototype.visitDuration=qx(PS),Kx.prototype.visitDurationSecond=qx(AS),Kx.prototype.visitDurationMillisecond=qx(jS),Kx.prototype.visitDurationMicrosecond=qx(MS),Kx.prototype.visitDurationNanosecond=qx(NS),Kx.prototype.visitFixedSizeList=qx(FS),Kx.prototype.visitMap=qx(xS);const IS=new Kx,LS=Symbol.for(`keys`),RS=Symbol.for(`vals`),zS=Symbol.for(`kKeysAsStrings`),BS=Symbol.for(`_kKeysAsStrings`);var VS=class{constructor(e){return this[LS]=new zC([e.children[0]]).memoize(),this[RS]=e.children[1],new Proxy(this,new US)}get[zS](){return this[BS]||(this[BS]=Array.from(this[LS].toArray(),String))}[Symbol.iterator](){return new HS(this[LS],this[RS])}get size(){return this[LS].length}toArray(){return Object.values(this.toJSON())}toJSON(){let e=this[LS],t=this[RS],n={};for(let r=-1,i=e.length;++r`${Sy(e)}: ${Sy(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}},HS=class{constructor(e,t){this.keys=e,this.vals=t,this.keyIndex=0,this.numKeys=e.length}[Symbol.iterator](){return this}next(){let e=this.keyIndex;return e===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(e),IS.visit(this.vals,e)]})}},US=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(e){return e[zS]}has(e,t){return e[zS].includes(t)}getOwnPropertyDescriptor(e,t){let n=e[zS].indexOf(t);if(n!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[zS].indexOf(t);if(n!==-1){let r=IS.visit(Reflect.get(e,RS),n);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[zS].indexOf(t);return r===-1?Reflect.has(e,t)?Reflect.set(e,t,n):!1:(Bx.visit(Reflect.get(e,RS),r,n),Reflect.set(e,t,n))}};Object.defineProperties(VS.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:`Row`},[LS]:{writable:!0,enumerable:!1,configurable:!1,value:null},[RS]:{writable:!0,enumerable:!1,configurable:!1,value:null},[BS]:{writable:!0,enumerable:!1,configurable:!1,value:null}});let WS;function GS(e,t,n,r){let{length:i=0}=e,a=typeof t==`number`?t:0,o=typeof n==`number`?n:i;return a<0&&(a=(a%i+i)%i),o<0&&(o=(o%i+i)%i),oi&&(o=i),r?r(e,a,o):[a,o]}const KS=(e,t)=>e<0?t+e:e,qS=e=>e!==e;function JS(e){let t=typeof e;if(t!==`object`||e===null)return qS(e)?qS:t=>t===e;if(e instanceof Date){let t=e.valueOf();return e=>e instanceof Date?e.valueOf()===t:!1}return ArrayBuffer.isView(e)?t=>t?pv(e,t):!1:e instanceof Map?XS(e):Array.isArray(e)?YS(e):e instanceof zC?ZS(e):QS(e,!0)}function YS(e){let t=[];for(let n=-1,r=e.length;++n!1;let r=[];for(let t=-1,i=n.length;++t{if(!n||typeof n!=`object`)return!1;switch(n.constructor){case Array:return eC(e,n);case Map:return nC(e,n,n.keys());case VS:case Ux:case Object:case void 0:return nC(e,n,t||Object.keys(n))}return n instanceof zC?tC(e,n):!1}}function eC(e,t){let n=e.length;if(t.length!==n)return!1;for(let r=-1;++r>r}function aC(e,t,n){let r=n.byteLength+7&-8;if(e>0||n.byteLength>3):oC(new sC(n,e,t,null,rC)).subarray(0,r)),i}return n}function oC(e){let t=[],n=0,r=0,i=0;for(let a of e)a&&(i|=1<0)&&(t[n++]=i);let a=new Uint8Array(t.length+7&-8);return a.set(t),a}var sC=class{constructor(e,t,n,r,i){this.bytes=e,this.length=n,this.context=r,this.get=i,this.bit=t%8,this.byteIndex=t>>3,this.byte=e[this.byteIndex++],this.index=0}next(){return this.index>3<<3,i=t+(t%8==0?0:8-t%8);return cC(e,t,i)+cC(e,r,n)+lC(e,i>>3,r-i>>3)}function lC(e,t,n){let r=0,i=Math.trunc(t),a=new DataView(e.buffer,e.byteOffset,e.byteLength),o=n===void 0?e.byteLength:i+n;for(;o-i>=4;)r+=uC(a.getUint32(i)),i+=4;for(;o-i>=2;)r+=uC(a.getUint16(i)),i+=2;for(;o-i>=1;)r+=uC(a.getUint8(i)),i+=1;return r}function uC(e){let t=Math.trunc(e);return t-=t>>>1&1431655765,t=(t&858993459)+(t>>>2&858993459),(t+(t>>>4)&252645135)*16843009>>>24}const dC=-1;var fC=class e{get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get nullable(){if(this._nullCount!==0){let{type:e}=this;return ab.isSparseUnion(e)||ab.isDenseUnion(e)?this.children.some(e=>e.nullable):this.nullBitmap&&this.nullBitmap.byteLength>0}return!0}get byteLength(){let e=0,{valueOffsets:t,values:n,nullBitmap:r,typeIds:i}=this;return t&&(e+=t.byteLength),n&&(e+=n.byteLength),r&&(e+=r.byteLength),i&&(e+=i.byteLength),this.children.reduce((e,t)=>e+t.byteLength,e)}get nullCount(){if(ab.isUnion(this.type))return this.children.reduce((e,t)=>e+t.nullCount,0);let e=this._nullCount,t;return e<=dC&&(t=this.nullBitmap)&&(this._nullCount=e=t.length===0?0:this.length-cC(t,this.offset,this.offset+this.length)),e}constructor(t,n,r,i,a,o=[],s){this.type=t,this.children=o,this.dictionary=s,this.offset=Math.floor(Math.max(n||0,0)),this.length=Math.floor(Math.max(r||0,0)),this._nullCount=Math.floor(Math.max(i||0,-1));let c;a instanceof e?(this.stride=a.stride,this.values=a.values,this.typeIds=a.typeIds,this.nullBitmap=a.nullBitmap,this.valueOffsets=a.valueOffsets):(this.stride=zb(t),a&&((c=a[0])&&(this.valueOffsets=c),(c=a[1])&&(this.values=c),(c=a[2])&&(this.nullBitmap=c),(c=a[3])&&(this.typeIds=c)))}getValid(e){let{type:t}=this;if(ab.isUnion(t)){let n=t,r=this.children[n.typeIdToChildIndex[this.typeIds[e]]],i=n.mode===Cv.Dense?this.valueOffsets[e]:e;return r.getValid(i)}if(this.nullable&&this.nullCount>0){let t=this.offset+e,n=this.nullBitmap[t>>3];return(n&1<>3;(!r||r.byteLength<=c)&&(r=new Uint8Array((i+a+63&-64)>>3).fill(255),this.nullCount>0?(r.set(aC(i,a,this.nullBitmap),0),Object.assign(this,{nullBitmap:r})):Object.assign(this,{nullBitmap:r,_nullCount:0}));let l=r[c];n=(l&s)!==0,r[c]=t?l|s:l&~s}return n!==!!t&&(this._nullCount=this.nullCount+(t?-1:1)),t}clone(t=this.type,n=this.offset,r=this.length,i=this._nullCount,a=this,o=this.children){return new e(t,n,r,i,a,o,this.dictionary)}slice(e,t){let{stride:n,typeId:r,children:i}=this,a=(this._nullCount===0)-1,o=r===16?n:1,s=this._sliceBuffers(e,t,n,r);return this.clone(this.type,this.offset+e,t,a,s,i.length===0||this.valueOffsets?i:this._sliceChildren(i,o*e,o*t))}_changeLengthAndBackfillNullBitmap(e){if(this.typeId===q.Null)return this.clone(this.type,0,e,0);let{length:t,nullCount:n}=this,r=new Uint8Array((e+63&-64)>>3).fill(255,0,t>>3);r[t>>3]=(1<0&&r.set(aC(this.offset,t,this.nullBitmap),0);let i=this.buffers;return i[by.VALIDITY]=r,this.clone(this.type,0,e,n+(e-t),i)}_sliceBuffers(e,t,n,r){let i,{buffers:a}=this;return(i=a[by.TYPE])&&(a[by.TYPE]=i.subarray(e,e+t)),(i=a[by.OFFSET])&&(a[by.OFFSET]=i.subarray(e,e+t+1))||(i=a[by.DATA])&&(a[by.DATA]=r===6?i:i.subarray(n*e,n*(e+t))),a}_sliceChildren(e,t,n){return e.map(e=>e.slice(t,n))}};fC.prototype.children=Object.freeze([]);var pC=class e extends Bb{visit(e){return this.getVisitFn(e.type).call(this,e)}visitNull(e){let{type:t,offset:n=0,length:r=0}=e;return new fC(t,n,r,r)}visitBool(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length>>3,nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitInt(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitFloat(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitUtf8(e){let{type:t,offset:n=0}=e,r=ov(e.data),i=ov(e.nullBitmap),a=iv(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new fC(t,n,o,s,[a,r,i])}visitLargeUtf8(e){let{type:t,offset:n=0}=e,r=ov(e.data),i=ov(e.nullBitmap),a=av(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new fC(t,n,o,s,[a,r,i])}visitBinary(e){let{type:t,offset:n=0}=e,r=ov(e.data),i=ov(e.nullBitmap),a=iv(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new fC(t,n,o,s,[a,r,i])}visitLargeBinary(e){let{type:t,offset:n=0}=e,r=ov(e.data),i=ov(e.nullBitmap),a=av(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new fC(t,n,o,s,[a,r,i])}visitFixedSizeBinary(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length/zb(t),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitDate(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length/zb(t),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitTimestamp(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length/zb(t),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitTime(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length/zb(t),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitDecimal(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length/zb(t),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitList(e){let{type:t,offset:n=0,child:r}=e,i=ov(e.nullBitmap),a=iv(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new fC(t,n,o,s,[a,void 0,i],[r])}visitStruct(e){let{type:t,offset:n=0,children:r=[]}=e,i=ov(e.nullBitmap),{length:a=r.reduce((e,{length:t})=>Math.max(e,t),0),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,void 0,i],r)}visitUnion(e){let{type:t,offset:n=0,children:r=[]}=e,i=rv(t.ArrayType,e.typeIds),{length:a=i.length,nullCount:o=-1}=e;if(ab.isSparseUnion(t))return new fC(t,n,a,o,[void 0,void 0,void 0,i],r);let s=iv(e.valueOffsets);return new fC(t,n,a,o,[s,void 0,void 0,i],r)}visitDictionary(t){let{type:n,offset:r=0}=t,i=ov(t.nullBitmap),a=rv(n.indices.ArrayType,t.data),{dictionary:o=new zC([new e().visit({type:n.dictionary})])}=t,{length:s=a.length,nullCount:c=t.nullBitmap?-1:0}=t;return new fC(n,r,s,c,[void 0,a,i],[],o)}visitInterval(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length/zb(t),nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitDuration(e){let{type:t,offset:n=0}=e,r=ov(e.nullBitmap),i=rv(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new fC(t,n,a,o,[void 0,i,r])}visitFixedSizeList(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.valueType})}=t,a=ov(t.nullBitmap),{length:o=i.length/zb(n),nullCount:s=t.nullBitmap?-1:0}=t;return new fC(n,r,o,s,[void 0,void 0,a],[i])}visitMap(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.childType})}=t,a=ov(t.nullBitmap),o=iv(t.valueOffsets),{length:s=o.length-1,nullCount:c=t.nullBitmap?-1:0}=t;return new fC(n,r,s,c,[o,void 0,a],[i])}};const mC=new pC;function hC(e){return mC.visit(e)}var gC=class{constructor(e=0,t){this.numChunks=e,this.getChunkIterator=t,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndexe.nullable)}function vC(e){return e.reduce((e,t)=>e+t.nullCount,0)}function yC(e){return e.reduce((e,t,n)=>(e[n+1]=e[n]+t.length,e),new Uint32Array(e.length+1))}function bC(e,t,n,r){let i=[];for(let a=-1,o=e.length;++a=r)break;if(n>=s+c)continue;if(s>=n&&s+c<=r){i.push(o);continue}let l=Math.max(0,n-s),u=Math.min(r-s,c);i.push(o.slice(l,u-l))}return i.length===0&&i.push(e[0].slice(0,0)),i}function xC(e,t,n,r){let i=0,a=0,o=t.length-1;do{if(i>=o-1)return n0?0:-1}function OC(e,t){let{nullBitmap:n}=e;if(!n||e.nullCount<=0)return-1;let r=0;for(let i of new sC(n,e.offset+(t||0),e.length,n,rC)){if(!i)return r;++r}return-1}function kC(e,t,n){if(t===void 0)return-1;if(t===null)switch(e.typeId){case q.Union:break;case q.Dictionary:break;default:return OC(e,n)}let r=IS.getVisitFn(e),i=JS(t);for(let t=(n||0)-1,a=e.length;++t{let n=e.data[t];return n.values.subarray(0,n.length)[Symbol.iterator]()});let n=0;return new gC(e.data.length,t=>{let r=e.data[t],i=r.length,a=e.slice(n,n+i);return n+=i,new PC(a)})}var PC=class{constructor(e){this.vector=e,this.index=0}next(){return this.indexe.data):t;if(a.length===0||a.some(e=>!(e instanceof fC)))throw TypeError(`Vector constructor expects an Array of Data instances.`);let o=(n=a[0])?.type;switch(a.length){case 0:this._offsets=[0];break;case 1:{let{get:e,set:t,indexOf:n}=LC[o.typeId],r=a[0];this.isValid=e=>SC(r,e),this.get=t=>e(r,t),this.set=(e,n)=>t(r,e,n),this.indexOf=e=>n(r,e),this._offsets=[0,r.length];break}default:Object.setPrototypeOf(this,RC[o.typeId]),this._offsets=yC(a);break}this.data=a,this.type=o,this.stride=zb(o),this.numChildren=(i=(r=o.children)?.length)??0,this.length=this._offsets.at(-1)}get byteLength(){return this.data.reduce((e,t)=>e+t.byteLength,0)}get nullable(){return _C(this.data)}get nullCount(){return vC(this.data)}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return`${this.VectorName}<${this.type[Symbol.toStringTag]}>`}get VectorName(){return`${q[this.type.typeId]}Vector`}isValid(e){return!1}get(e){return null}at(e){return this.get(KS(e,this.length))}set(e,t){}indexOf(e,t){return-1}includes(e,t){return this.indexOf(e,t)>-1}[Symbol.iterator](){return FC.visit(this)}concat(...t){return new e(this.data.concat(t.flatMap(e=>e.data).flat(1/0)))}slice(t,n){return new e(GS(this,t,n,({data:e,_offsets:t},n,r)=>bC(e,t,n,r)))}toJSON(){return[...this]}toArray(){let{type:e,data:t,length:n,stride:r,ArrayType:i}=this;switch(e.typeId){case q.Int:case q.Float:case q.Decimal:case q.Time:case q.Timestamp:switch(t.length){case 0:return new i;case 1:return t[0].values.subarray(0,n*r);default:return t.reduce((e,{values:t,length:n})=>(e.array.set(t.subarray(0,n*r),e.offset),e.offset+=n*r,e),{array:new i(n*r),offset:0}).array}}return[...this]}toString(){return`[${[...this].join(`,`)}]`}getChild(e){var t;return this.getChildAt((t=this.type.children)?.findIndex(t=>t.name===e))}getChildAt(t){return t>-1&&te[t])):null}get isMemoized(){return ab.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(ab.isDictionary(this.type)){let t=new BC(this.data[0].dictionary),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return new BC(this)}unmemoize(){if(ab.isDictionary(this.type)&&this.isMemoized){let t=this.data[0].dictionary.unmemoize(),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return this}};IC=Symbol.toStringTag,zC[IC]=(e=>{e.type=ab.prototype,e.data=[],e.length=0,e.stride=1,e.numChildren=0,e._offsets=new Uint32Array([0]),e[Symbol.isConcatSpreadable]=!0;let t=Object.keys(q).map(e=>q[e]).filter(e=>typeof e==`number`&&e!==q.NONE);for(let n of t){let t=IS.getVisitFnByTypeId(n),r=Bx.getVisitFnByTypeId(n),i=jC.getVisitFnByTypeId(n);LC[n]={get:t,set:r,indexOf:i},RC[n]=Object.create(e,{isValid:{value:CC(SC)},get:{value:CC(IS.getVisitFnByTypeId(n))},set:{value:wC(Bx.getVisitFnByTypeId(n))},indexOf:{value:TC(jC.getVisitFnByTypeId(n))}})}return`Vector`})(zC.prototype);var BC=class e extends zC{constructor(t){super(t.data);let n=this.get,r=this.set,i=this.slice,a=Array(this.length);Object.defineProperty(this,`get`,{value(e){let t=a[e];if(t!==void 0)return t;let r=n.call(this,e);return a[e]=r,r}}),Object.defineProperty(this,`set`,{value(e,t){r.call(this,e,t),a[e]=t}}),Object.defineProperty(this,`slice`,{value:(t,n)=>new e(i.call(this,t,n))}),Object.defineProperty(this,`isMemoized`,{value:!0}),Object.defineProperty(this,`unmemoize`,{value:()=>new zC(this.data)}),Object.defineProperty(this,`memoize`,{value:()=>this})}},VC=class{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}offset(){return this.bb.readInt64(this.bb_pos)}metaDataLength(){return this.bb.readInt32(this.bb_pos+8)}bodyLength(){return this.bb.readInt64(this.bb_pos+16)}static sizeOf(){return 24}static createBlock(e,t,n,r){return e.prep(8,24),e.writeInt64(BigInt(r??0)),e.pad(4),e.writeInt32(n),e.writeInt64(BigInt(t??0)),e.offset()}},HC=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsFooter(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsFooter(t,n){return t.setPosition(t.position()+jv),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}version(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):Sv.V1}schema(e){let t=this.bb.__offset(this.bb_pos,6);return t?(e||new vy).__init(this.bb.__indirect(this.bb_pos+t),this.bb):null}dictionaries(e,t){let n=this.bb.__offset(this.bb_pos,8);return n?(t||new VC).__init(this.bb.__vector(this.bb_pos+n)+e*24,this.bb):null}dictionariesLength(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__vector_len(this.bb_pos+e):0}recordBatches(e,t){let n=this.bb.__offset(this.bb_pos,10);return n?(t||new VC).__init(this.bb.__vector(this.bb_pos+n)+e*24,this.bb):null}recordBatchesLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,12);return n?(t||new Xv).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__vector_len(this.bb_pos+e):0}static startFooter(e){e.startObject(5)}static addVersion(e,t){e.addFieldInt16(0,t,Sv.V1)}static addSchema(e,t){e.addFieldOffset(1,t,0)}static addDictionaries(e,t){e.addFieldOffset(2,t,0)}static startDictionariesVector(e,t){e.startVector(24,t,8)}static addRecordBatches(e,t){e.addFieldOffset(3,t,0)}static startRecordBatchesVector(e,t){e.startVector(24,t,8)}static addCustomMetadata(e,t){e.addFieldOffset(4,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endFooter(e){let t=e.endObject();return t}static finishFooterBuffer(e,t){e.finish(t)}static finishSizePrefixedFooterBuffer(e,t){e.finish(t,void 0,!0)}},UC=class e{constructor(e=[],t,n,r=Sv.V5){this.fields=e||[],this.metadata=t||new Map,n||=KC(this.fields),this.dictionaries=n,this.metadataVersion=r}get[Symbol.toStringTag](){return`Schema`}get names(){return this.fields.map(e=>e.name)}toString(){return`Schema<{ ${this.fields.map((e,t)=>`${t}: ${e}`).join(`, `)} }>`}select(t){let n=new Set(t),r=this.fields.filter(e=>n.has(e.name));return new e(r,this.metadata)}selectAt(t){let n=t.map(e=>this.fields[e]).filter(Boolean);return new e(n,this.metadata)}assign(...t){let n=t[0]instanceof e?t[0]:Array.isArray(t[0])?new e(t[0]):new e(t),r=[...this.fields],i=GC(GC(new Map,this.metadata),n.metadata),a=n.fields.filter(e=>{let t=r.findIndex(t=>t.name===e.name);return~t?(r[t]=e.clone({metadata:GC(GC(new Map,r[t].metadata),e.metadata)}))&&!1:!0}),o=KC(a,new Map);return new e([...r,...a],i,new Map([...this.dictionaries,...o]))}};UC.prototype.fields=null,UC.prototype.metadata=null,UC.prototype.dictionaries=null;var WC=class e{static new(...t){let[n,r,i,a]=t;return t[0]&&typeof t[0]==`object`&&({name:n}=t[0],r===void 0&&(r=t[0].type),i===void 0&&(i=t[0].nullable),a===void 0&&(a=t[0].metadata)),new e(`${n}`,r,i,a)}constructor(e,t,n=!1,r){this.name=e,this.type=t,this.nullable=n,this.metadata=r||new Map}get typeId(){return this.type.typeId}get[Symbol.toStringTag](){return`Field`}toString(){return`${this.name}: ${this.type}`}clone(...t){let[n,r,i,a]=t;return!t[0]||typeof t[0]!=`object`?[n=this.name,r=this.type,i=this.nullable,a=this.metadata]=t:{name:n=this.name,type:r=this.type,nullable:i=this.nullable,metadata:a=this.metadata}=t[0],e.new(n,r,i,a)}};WC.prototype.type=null,WC.prototype.name=null,WC.prototype.nullable=null,WC.prototype.metadata=null;function GC(e,t){return new Map([...e||new Map,...t||new Map])}function KC(e,t=new Map){for(let n=-1,r=e.length;++n0&&KC(i.children,t)}return t}var qC=Rv,JC=Lv,YC=class{static decode(e){e=new JC(ov(e));let t=HC.getRootAsFooter(e),n=UC.decode(t.schema(),new Map,t.version());return new XC(n,t)}static encode(e){let t=new qC,n=UC.encode(t,e.schema);HC.startRecordBatchesVector(t,e.numRecordBatches);for(let n of[...e.recordBatches()].slice().reverse())ZC.encode(t,n);let r=t.endVector();HC.startDictionariesVector(t,e.numDictionaries);for(let n of[...e.dictionaryBatches()].slice().reverse())ZC.encode(t,n);let i=t.endVector();return HC.startFooter(t),HC.addSchema(t,n),HC.addVersion(t,Sv.V5),HC.addRecordBatches(t,r),HC.addDictionaries(t,i),HC.finishFooterBuffer(t,HC.endFooter(t)),t.asUint8Array()}get numRecordBatches(){return this._recordBatches.length}get numDictionaries(){return this._dictionaryBatches.length}constructor(e,t=Sv.V5,n,r){this.schema=e,this.version=t,n&&(this._recordBatches=n),r&&(this._dictionaryBatches=r)}*recordBatches(){for(let e,t=-1,n=this.numRecordBatches;++t=0&&e=0&&e=0&&e=0&&ethis._closedPromiseResolve=e)}get closed(){return this._closedPromise}cancel(e){return E_(this,void 0,void 0,function*(){yield this.return(e)})}write(e){this._ensureOpen()&&(this.resolvers.length<=0?this._values.push(e):this.resolvers.shift().resolve({done:!1,value:e}))}abort(e){this._closedPromiseResolve&&(this.resolvers.length<=0?this._error={error:e}:this.resolvers.shift().reject({done:!0,value:e}))}close(){if(this._closedPromiseResolve){let{resolvers:e}=this;for(;e.length>0;)e.shift().resolve(QC);this._closedPromiseResolve(),this._closedPromiseResolve=void 0}}[Symbol.asyncIterator](){return this}toDOMStream(e){return mv.toDOMStream(this._closedPromiseResolve||this._error?this:this._values,e)}toNodeStream(e){return mv.toNodeStream(this._closedPromiseResolve||this._error?this:this._values,e)}throw(e){return E_(this,void 0,void 0,function*(){return yield this.abort(e),QC})}return(e){return E_(this,void 0,void 0,function*(){return yield this.close(),QC})}read(e){return E_(this,void 0,void 0,function*(){return(yield this.next(e,`read`)).value})}peek(e){return E_(this,void 0,void 0,function*(){return(yield this.next(e,`peek`)).value})}next(...e){return this._values.length>0?Promise.resolve({done:!1,value:this._values.shift()}):this._error?Promise.reject({done:!0,value:this._error.error}):this._closedPromiseResolve?new Promise((e,t)=>{this.resolvers.push({resolve:e,reject:t})}):Promise.resolve(QC)}_ensureOpen(){if(this._closedPromiseResolve)return!0;throw Error(`AsyncQueue is closed`)}},nw=class extends tw{write(e){if((e=ov(e)).byteLength>0)return super.write(e)}toString(e=!1){return e?N_(this.toUint8Array(!0)):this.toUint8Array(!1).then(N_)}toUint8Array(e=!1){return e?nv(this._values)[0]:(()=>E_(this,void 0,void 0,function*(){var e,t,n,r;let i=[],a=0;try{for(var o=!0,s=j_(this),c;c=yield s.next(),e=c.done,!e;o=!0){r=c.value,o=!1;let e=r;i.push(e),a+=e.byteLength}}catch(e){t={error:e}}finally{try{!o&&!e&&(n=s.return)&&(yield n.call(s))}finally{if(t)throw t.error}}return nv(i,a)[0]}))()}},rw=class{constructor(e){e&&(this.source=new aw(mv.fromIterable(e)))}[Symbol.iterator](){return this}next(e){return this.source.next(e)}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}peek(e){return this.source.peek(e)}read(e){return this.source.read(e)}},iw=class e{constructor(t){t instanceof e?this.source=t.source:t instanceof nw?this.source=new ow(mv.fromAsyncIterable(t)):Z_(t)?this.source=new ow(mv.fromNodeStream(t)):Y_(t)?this.source=new ow(mv.fromDOMStream(t)):K_(t)?this.source=new ow(mv.fromDOMStream(t.body)):V_(t)?this.source=new ow(mv.fromIterable(t)):(B_(t)||H_(t))&&(this.source=new ow(mv.fromAsyncIterable(t)))}[Symbol.asyncIterator](){return this}next(e){return this.source.next(e)}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}get closed(){return this.source.closed}cancel(e){return this.source.cancel(e)}peek(e){return this.source.peek(e)}read(e){return this.source.read(e)}},aw=class{constructor(e){this.source=e}cancel(e){this.return(e)}peek(e){return this.next(e,`peek`).value}read(e){return this.next(e,`read`).value}next(e,t=`read`){return this.source.next({cmd:t,size:e})}throw(e){return Object.create(this.source.throw&&this.source.throw(e)||QC)}return(e){return Object.create(this.source.return&&this.source.return(e)||QC)}},ow=class{constructor(e){this.source=e,this._closedPromise=new Promise(e=>this._closedPromiseResolve=e)}cancel(e){return E_(this,void 0,void 0,function*(){yield this.return(e)})}get closed(){return this._closedPromise}read(e){return E_(this,void 0,void 0,function*(){return(yield this.next(e,`read`)).value})}peek(e){return E_(this,void 0,void 0,function*(){return(yield this.next(e,`peek`)).value})}next(e){return E_(this,arguments,void 0,function*(e,t=`read`){return yield this.source.next({cmd:t,size:e})})}throw(e){return E_(this,void 0,void 0,function*(){let t=this.source.throw&&(yield this.source.throw(e))||QC;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(t)})}return(e){return E_(this,void 0,void 0,function*(){let t=this.source.return&&(yield this.source.return(e))||QC;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(t)})}},sw=class extends rw{constructor(e,t){super(),this.position=0,this.buffer=ov(e),this.size=t===void 0?this.buffer.byteLength:t}readInt32(e){let{buffer:t,byteOffset:n}=this.readAt(e,4);return new DataView(t,n).getInt32(0,!0)}seek(e){return this.position=Math.min(e,this.size),eE_(this,void 0,void 0,function*(){this.size=(yield e.stat()).size,delete this._pending}))()}readInt32(e){return E_(this,void 0,void 0,function*(){let{buffer:t,byteOffset:n}=yield this.readAt(e,4);return new DataView(t,n).getInt32(0,!0)})}seek(e){return E_(this,void 0,void 0,function*(){return this._pending&&(yield this._pending),this.position=Math.min(e,this.size),e>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),n=new Uint32Array([e.buffer[1]>>>16,e.buffer[1]&65535,e.buffer[0]>>>16,e.buffer[0]&65535]),r=t[3]*n[3];this.buffer[0]=r&65535;let i=r>>>16;return r=t[2]*n[3],i+=r,r=t[3]*n[2]>>>0,i+=r,this.buffer[0]+=i<<16,this.buffer[1]=i>>>0>>16,this.buffer[1]+=t[1]*n[3]+t[2]*n[2]+t[3]*n[1],this.buffer[1]+=t[0]*n[3]+t[1]*n[2]+t[2]*n[1]+t[3]*n[0]<<16,this}_plus(e){let t=this.buffer[0]+e.buffer[0]>>>0;this.buffer[1]+=e.buffer[1],t>>0&&++this.buffer[1],this.buffer[0]=t}lessThan(e){return this.buffer[1]>>0,t[2]=this.buffer[2]+e.buffer[2]>>>0,t[1]=this.buffer[1]+e.buffer[1]>>>0,t[0]=this.buffer[0]+e.buffer[0]>>>0,t[0]>>0&&++t[1],t[1]>>0&&++t[2],t[2]>>0&&++t[3],this.buffer[3]=t[3],this.buffer[2]=t[2],this.buffer[1]=t[1],this.buffer[0]=t[0],this}hex(){return`${uw(this.buffer[3])} ${uw(this.buffer[2])} ${uw(this.buffer[1])} ${uw(this.buffer[0])}`}static multiply(t,n){let r=new e(new Uint32Array(t.buffer));return r.times(n)}static add(t,n){let r=new e(new Uint32Array(t.buffer));return r.plus(n)}static from(t,n=new Uint32Array(4)){return e.fromString(typeof t==`string`?t:t.toString(),n)}static fromNumber(t,n=new Uint32Array(4)){return e.fromString(t.toString(),n)}static fromString(t,n=new Uint32Array(4)){let r=t.startsWith(`-`),i=t.length,a=new e(n);for(let n=r?1:0;n0&&this.readData(e,n)||new Uint8Array}readOffsets(e,t){return this.readData(e,t)}readTypeIds(e,t){return this.readData(e,t)}readData(e,{length:t,offset:n}=this.nextBufferRange()){return this.bytes.subarray(n,n+t)}readDictionary(e){return this.dictionaries.get(e.id)}},vw=class extends _w{constructor(e,t,n,r,i){super(new Uint8Array,t,n,r,i),this.sources=e}readNullBitmap(e,t,{offset:n}=this.nextBufferRange()){return t<=0?new Uint8Array:oC(this.sources[n])}readOffsets(e,{offset:t}=this.nextBufferRange()){return rv(Uint8Array,rv(e.OffsetArrayType,this.sources[t]))}readTypeIds(e,{offset:t}=this.nextBufferRange()){return rv(Uint8Array,rv(e.ArrayType,this.sources[t]))}readData(e,{offset:t}=this.nextBufferRange()){let{sources:n}=this;return ab.isTimestamp(e)||(ab.isInt(e)||ab.isTime(e))&&e.bitWidth===64||ab.isDuration(e)||ab.isDate(e)&&e.unit===Tv.MILLISECOND?rv(Uint8Array,hw.convertArray(n[t])):ab.isDecimal(e)?rv(Uint8Array,gw.convertArray(n[t])):ab.isBinary(e)||ab.isLargeBinary(e)||ab.isFixedSizeBinary(e)?yw(n[t]):ab.isBool(e)?oC(n[t]):ab.isUtf8(e)||ab.isLargeUtf8(e)?F_(n[t].join(``)):rv(Uint8Array,rv(e.ArrayType,n[t].map(e=>+e)))}};function yw(e){let t=e.join(``),n=new Uint8Array(t.length/2);for(let e=0;e>1]=Number.parseInt(t.slice(e,e+2),16);return n}var bw=class extends Bb{compareSchemas(e,t){return e===t||t instanceof e.constructor&&this.compareManyFields(e.fields,t.fields)}compareManyFields(e,t){return e===t||Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,n)=>this.compareFields(e,t[n]))}compareFields(e,t){return e===t||t instanceof e.constructor&&e.name===t.name&&e.nullable===t.nullable&&this.visit(e.type,t.type)}};function xw(e,t){return t instanceof e.constructor}function Sw(e,t){return e===t||xw(e,t)}function Cw(e,t){return e===t||xw(e,t)&&e.bitWidth===t.bitWidth&&e.isSigned===t.isSigned}function ww(e,t){return e===t||xw(e,t)&&e.precision===t.precision}function Tw(e,t){return e===t||xw(e,t)&&e.byteWidth===t.byteWidth}function Ew(e,t){return e===t||xw(e,t)&&e.unit===t.unit}function Dw(e,t){return e===t||xw(e,t)&&e.unit===t.unit&&e.timezone===t.timezone}function Ow(e,t){return e===t||xw(e,t)&&e.unit===t.unit&&e.bitWidth===t.bitWidth}function kw(e,t){return e===t||xw(e,t)&&e.children.length===t.children.length&&Lw.compareManyFields(e.children,t.children)}function Aw(e,t){return e===t||xw(e,t)&&e.children.length===t.children.length&&Lw.compareManyFields(e.children,t.children)}function jw(e,t){return e===t||xw(e,t)&&e.mode===t.mode&&e.typeIds.every((e,n)=>e===t.typeIds[n])&&Lw.compareManyFields(e.children,t.children)}function Mw(e,t){return e===t||xw(e,t)&&e.id===t.id&&e.isOrdered===t.isOrdered&&Lw.visit(e.indices,t.indices)&&Lw.visit(e.dictionary,t.dictionary)}function Nw(e,t){return e===t||xw(e,t)&&e.unit===t.unit}function Pw(e,t){return e===t||xw(e,t)&&e.unit===t.unit}function Fw(e,t){return e===t||xw(e,t)&&e.listSize===t.listSize&&e.children.length===t.children.length&&Lw.compareManyFields(e.children,t.children)}function Iw(e,t){return e===t||xw(e,t)&&e.keysSorted===t.keysSorted&&e.children.length===t.children.length&&Lw.compareManyFields(e.children,t.children)}bw.prototype.visitNull=Sw,bw.prototype.visitBool=Sw,bw.prototype.visitInt=Cw,bw.prototype.visitInt8=Cw,bw.prototype.visitInt16=Cw,bw.prototype.visitInt32=Cw,bw.prototype.visitInt64=Cw,bw.prototype.visitUint8=Cw,bw.prototype.visitUint16=Cw,bw.prototype.visitUint32=Cw,bw.prototype.visitUint64=Cw,bw.prototype.visitFloat=ww,bw.prototype.visitFloat16=ww,bw.prototype.visitFloat32=ww,bw.prototype.visitFloat64=ww,bw.prototype.visitUtf8=Sw,bw.prototype.visitLargeUtf8=Sw,bw.prototype.visitBinary=Sw,bw.prototype.visitLargeBinary=Sw,bw.prototype.visitFixedSizeBinary=Tw,bw.prototype.visitDate=Ew,bw.prototype.visitDateDay=Ew,bw.prototype.visitDateMillisecond=Ew,bw.prototype.visitTimestamp=Dw,bw.prototype.visitTimestampSecond=Dw,bw.prototype.visitTimestampMillisecond=Dw,bw.prototype.visitTimestampMicrosecond=Dw,bw.prototype.visitTimestampNanosecond=Dw,bw.prototype.visitTime=Ow,bw.prototype.visitTimeSecond=Ow,bw.prototype.visitTimeMillisecond=Ow,bw.prototype.visitTimeMicrosecond=Ow,bw.prototype.visitTimeNanosecond=Ow,bw.prototype.visitDecimal=Sw,bw.prototype.visitList=kw,bw.prototype.visitStruct=Aw,bw.prototype.visitUnion=jw,bw.prototype.visitDenseUnion=jw,bw.prototype.visitSparseUnion=jw,bw.prototype.visitDictionary=Mw,bw.prototype.visitInterval=Nw,bw.prototype.visitIntervalDayTime=Nw,bw.prototype.visitIntervalYearMonth=Nw,bw.prototype.visitDuration=Pw,bw.prototype.visitDurationSecond=Pw,bw.prototype.visitDurationMillisecond=Pw,bw.prototype.visitDurationMicrosecond=Pw,bw.prototype.visitDurationNanosecond=Pw,bw.prototype.visitFixedSizeList=Fw,bw.prototype.visitMap=Iw;const Lw=new bw;function Rw(e,t){return Lw.compareSchemas(e,t)}function zw(e,t){return Bw(e,t.map(e=>e.data.concat()))}function Bw(e,t){let n=[...e.fields],r=[],i={numBatches:t.reduce((e,t)=>Math.max(e,t.length),0)},a=0,o=0,s=-1,c=t.length,l,u=[];for(;i.numBatches-- >0;){for(o=1/0,s=-1;++s0&&(r[a++]=hC({type:new Mb(n),length:o,nullCount:0,children:u.slice()})))}return[e=e.assign(n),r.map(t=>new Gw(e,t))]}function Vw(e,t,n,r,i){var a;let o=(t+63&-64)>>3;for(let s=-1,c=r.length;++s=t)l===t?n[s]=c:(n[s]=c.slice(0,t),i.numBatches=Math.max(i.numBatches,r[s].unshift(c.slice(t,l-t))));else{let r=e[s];e[s]=r.clone({nullable:!0}),n[s]=(a=c?._changeLengthAndBackfillNullBitmap(t))??hC({type:r.type,length:t,nullCount:t,nullBitmap:new Uint8Array(o)})}}return n}var Hw,Uw=class e{constructor(...t){var n,r;if(t.length===0)return this.batches=[],this.schema=new UC([]),this._offsets=[0],this;let i,a;t[0]instanceof UC&&(i=t.shift()),t.at(-1)instanceof Uint32Array&&(a=t.pop());let o=t=>{if(t){if(t instanceof Gw)return[t];if(t instanceof e)return t.batches;if(t instanceof fC){if(t.type instanceof Mb)return[new Gw(new UC(t.type.children),t)]}else if(Array.isArray(t))return t.flatMap(e=>o(e));else if(typeof t[Symbol.iterator]==`function`)return[...t].flatMap(e=>o(e));else if(typeof t==`object`){let e=Object.keys(t),n=e.map(e=>new zC([t[e]])),r=i??new UC(e.map((e,t)=>new WC(String(e),n[t].type,n[t].nullable))),[,a]=zw(r,n);return a.length===0?[new Gw(t)]:a}}return[]},s=t.flatMap(e=>o(e));if(i=(r=i??(n=s[0])?.schema)??new UC([]),!(i instanceof UC))throw TypeError(`Table constructor expects a [Schema, RecordBatch[]] pair.`);for(let e of s){if(!(e instanceof Gw))throw TypeError(`Table constructor expects a [Schema, RecordBatch[]] pair.`);if(!Rw(i,e.schema))throw TypeError(`Table and inner RecordBatch schemas must be equivalent.`)}this.schema=i,this.batches=s,this._offsets=a??yC(this.data)}get data(){return this.batches.map(({data:e})=>e)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.reduce((e,t)=>e+t.length,0)}get nullCount(){return this._nullCount===-1&&(this._nullCount=vC(this.data)),this._nullCount}isValid(e){return!1}get(e){return null}at(e){return this.get(KS(e,this.numRows))}set(e,t){}indexOf(e,t){return-1}[Symbol.iterator](){return this.batches.length>0?FC.visit(new zC(this.data)):[][Symbol.iterator]()}toArray(){return[...this]}toString(){return`[\n ${this.toArray().join(`, - `)}\n]`}concat(...t){let n=this.schema,r=this.data.concat(t.flatMap(({data:e})=>e));return new e(n,r.map(e=>new Gw(n,e)))}slice(t,n){let r=this.schema;[t,n]=GS({length:this.numRows},t,n);let i=bC(this.data,this._offsets,t,n);return new e(r,i.map(e=>new Gw(r,e)))}getChild(e){return this.getChildAt(this.schema.fields.findIndex(t=>t.name===e))}getChildAt(e){if(e>-1&&et.children[e]);if(t.length===0){let{type:n}=this.schema.fields[e],r=hC({type:n,length:0,nullCount:0});t.push(r._changeLengthAndBackfillNullBitmap(this.numRows))}return new zC(t)}return null}setChild(e,t){var n;return this.setChildAt((n=this.schema.fields)?.findIndex(t=>t.name===e),t)}setChildAt(t,n){let r=this.schema,i=[...this.batches];if(t>-1&&tthis.getChildAt(t));[e[t],o[t]]=[a,n],[r,i]=zw(r,o)}return new e(r,i)}select(e){let t=this.schema.fields.reduce((e,t,n)=>e.set(t.name,n),new Map);return this.selectAt(e.map(e=>t.get(e)).filter(e=>e>-1))}selectAt(t){let n=this.schema.selectAt(t),r=this.batches.map(e=>e.selectAt(t));return new e(n,r)}assign(t){let n=this.schema.fields,[r,i]=t.schema.fields.reduce((e,t,r)=>{let[i,a]=e,o=n.findIndex(e=>e.name===t.name);return~o?a[o]=r:i.push(r),e},[[],[]]),a=this.schema.assign(t.schema),o=[...n.map((e,t)=>[t,i[t]]).map(([e,n])=>n===void 0?this.getChildAt(e):t.getChildAt(n)),...r.map(e=>t.getChildAt(e))].filter(Boolean);return new e(...zw(a,o))}};Hw=Symbol.toStringTag,Uw[Hw]=(e=>(e.schema=null,e.batches=[],e._offsets=new Uint32Array([0]),e._nullCount=-1,e[Symbol.isConcatSpreadable]=!0,e.isValid=CC(SC),e.get=CC(IS.getVisitFn(q.Struct)),e.set=wC(Bx.getVisitFn(q.Struct)),e.indexOf=TC(jC.getVisitFn(q.Struct)),`Table`))(Uw.prototype);var Ww,Gw=class e{constructor(...e){switch(e.length){case 2:if([this.schema]=e,!(this.schema instanceof UC)||([,this.data=hC({nullCount:0,type:new Mb(this.schema.fields),children:this.schema.fields.map(e=>hC({type:e.type,nullCount:0}))})]=e,!(this.data instanceof fC)))throw TypeError(`RecordBatch constructor expects a [Schema, Data] pair.`);[this.schema,this.data]=Kw(this.schema,this.data.children);break;case 1:{let[t]=e,{fields:n,children:r,length:i}=Object.keys(t).reduce((e,n,r)=>(e.children[r]=t[n],e.length=Math.max(e.length,t[n].length),e.fields[r]=WC.new({name:n,type:t[n].type,nullable:!0}),e),{length:0,fields:[],children:[]}),a=new UC(n),o=hC({type:new Mb(n),length:i,children:r,nullCount:0});[this.schema,this.data]=Kw(a,o.children,i);break}default:throw TypeError(`RecordBatch constructor expects an Object mapping names to child Data, or a [Schema, Data] pair.`)}}get dictionaries(){return this._dictionaries||=qw(this.schema.fields,this.data.children)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.length}get nullCount(){return this.data.nullCount}isValid(e){return this.data.getValid(e)}get(e){return IS.visit(this.data,e)}at(e){return this.get(KS(e,this.numRows))}set(e,t){return Bx.visit(this.data,e,t)}indexOf(e,t){return jC.visit(this.data,e,t)}[Symbol.iterator](){return FC.visit(new zC([this.data]))}toArray(){return[...this]}concat(...e){return new Uw(this.schema,[this,...e])}slice(t,n){let[r]=new zC([this.data]).slice(t,n).data;return new e(this.schema,r)}getChild(e){var t;return this.getChildAt((t=this.schema.fields)?.findIndex(t=>t.name===e))}getChildAt(e){return e>-1&&et.name===e),t)}setChildAt(t,n){let r=this.schema,i=this.data;if(t>-1&&tt.name===e);~t&&(i[t]=this.data.children[t])}return new e(n,hC({type:r,length:this.numRows,children:i}))}selectAt(t){let n=this.schema.selectAt(t),r=t.map(e=>this.data.children[e]).filter(Boolean),i=hC({type:new Mb(n.fields),length:this.numRows,children:r});return new e(n,i)}};Ww=Symbol.toStringTag,Gw[Ww]=(e=>(e._nullCount=-1,e[Symbol.isConcatSpreadable]=!0,`RecordBatch`))(Gw.prototype);function Kw(e,t,n=t.reduce((e,t)=>Math.max(e,t.length),0)){var r;let i=[...e.fields],a=[...t],o=(n+63&-64)>>3;for(let[s,c]of e.fields.entries()){let e=t[s];(!e||e.length!==n)&&(i[s]=c.clone({nullable:!0}),a[s]=(r=e?._changeLengthAndBackfillNullBitmap(n))??hC({type:c.type,length:n,nullCount:n,nullBitmap:new Uint8Array(o)}))}return[e.assign(i),hC({type:new Mb(i),length:n,children:a})]}function qw(e,t,n=new Map){var r,i;if(((r=e?.length)??0)>0&&e?.length===t?.length)for(let r=-1,a=e.length;++rhC({type:e.type})),n=hC({type:new Mb(e.fields),nullCount:0,children:t});super(e,n)}},Yw=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsMessage(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMessage(t,n){return t.setPosition(t.position()+jv),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}version(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):Sv.V1}headerType(){let e=this.bb.__offset(this.bb_pos,6);return e?this.bb.readUint8(this.bb_pos+e):yy.NONE}header(e){let t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__union(e,this.bb_pos+t):null}bodyLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.readInt64(this.bb_pos+e):BigInt(`0`)}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,12);return n?(t||new Xv).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__vector_len(this.bb_pos+e):0}static startMessage(e){e.startObject(5)}static addVersion(e,t){e.addFieldInt16(0,t,Sv.V1)}static addHeaderType(e,t){e.addFieldInt8(1,t,yy.NONE)}static addHeader(e,t){e.addFieldOffset(2,t,0)}static addBodyLength(e,t){e.addFieldInt64(3,t,BigInt(`0`))}static addCustomMetadata(e,t){e.addFieldOffset(4,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endMessage(e){let t=e.endObject();return t}static finishMessageBuffer(e,t){e.finish(t)}static finishSizePrefixedMessageBuffer(e,t){e.finish(t,void 0,!0)}static createMessage(t,n,r,i,a,o){return e.startMessage(t),e.addVersion(t,n),e.addHeaderType(t,r),e.addHeader(t,i),e.addBodyLength(t,a),e.addCustomMetadata(t,o),e.endMessage(t)}},Xw=class extends Bb{visit(e,t){return e==null||t==null?void 0:super.visit(e,t)}visitNull(e,t){return uy.startNull(t),uy.endNull(t)}visitInt(e,t){return Jv.startInt(t),Jv.addBitWidth(t,e.bitWidth),Jv.addIsSigned(t,e.isSigned),Jv.endInt(t)}visitFloat(e,t){return iy.startFloatingPoint(t),iy.addPrecision(t,e.precision),iy.endFloatingPoint(t)}visitBinary(e,t){return Zv.startBinary(t),Zv.endBinary(t)}visitLargeBinary(e,t){return oy.startLargeBinary(t),oy.endLargeBinary(t)}visitBool(e,t){return Qv.startBool(t),Qv.endBool(t)}visitUtf8(e,t){return hy.startUtf8(t),hy.endUtf8(t)}visitLargeUtf8(e,t){return sy.startLargeUtf8(t),sy.endLargeUtf8(t)}visitDecimal(e,t){return ey.startDecimal(t),ey.addScale(t,e.scale),ey.addPrecision(t,e.precision),ey.addBitWidth(t,e.bitWidth),ey.endDecimal(t)}visitDate(e,t){return $v.startDate(t),$v.addUnit(t,e.unit),$v.endDate(t)}visitTime(e,t){return fy.startTime(t),fy.addUnit(t,e.unit),fy.addBitWidth(t,e.bitWidth),fy.endTime(t)}visitTimestamp(e,t){let n=e.timezone&&t.createString(e.timezone)||void 0;return py.startTimestamp(t),py.addUnit(t,e.unit),n!==void 0&&py.addTimezone(t,n),py.endTimestamp(t)}visitInterval(e,t){return ay.startInterval(t),ay.addUnit(t,e.unit),ay.endInterval(t)}visitDuration(e,t){return ty.startDuration(t),ty.addUnit(t,e.unit),ty.endDuration(t)}visitList(e,t){return cy.startList(t),cy.endList(t)}visitStruct(e,t){return dy.startStruct_(t),dy.endStruct_(t)}visitUnion(e,t){my.startTypeIdsVector(t,e.typeIds.length);let n=my.createTypeIdsVector(t,e.typeIds);return my.startUnion(t),my.addMode(t,e.mode),my.addTypeIds(t,n),my.endUnion(t)}visitDictionary(e,t){let n=this.visit(e.indices,t);return Yv.startDictionaryEncoding(t),Yv.addId(t,BigInt(e.id)),Yv.addIsOrdered(t,e.isOrdered),n!==void 0&&Yv.addIndexType(t,n),Yv.endDictionaryEncoding(t)}visitFixedSizeBinary(e,t){return ny.startFixedSizeBinary(t),ny.addByteWidth(t,e.byteWidth),ny.endFixedSizeBinary(t)}visitFixedSizeList(e,t){return ry.startFixedSizeList(t),ry.addListSize(t,e.listSize),ry.endFixedSizeList(t)}visitMap(e,t){return ly.startMap(t),ly.addKeysSorted(t,e.keysSorted),ly.endMap(t)}};const Zw=new Xw;function Qw(e,t=new Map){return new UC(tT(e,t),sT(e.metadata),t)}function $w(e){return new pT(e.count,rT(e.columns),iT(e.columns))}function eT(e){return new mT($w(e.data),e.id,e.isDelta)}function tT(e,t){return(e.fields||[]).filter(Boolean).map(e=>WC.fromJSON(e,t))}function nT(e,t){return(e.children||[]).filter(Boolean).map(e=>WC.fromJSON(e,t))}function rT(e){return(e||[]).reduce((e,t)=>[...e,new gT(t.count,aT(t.VALIDITY)),...rT(t.children)],[])}function iT(e,t=[]){for(let n=-1,r=(e||[]).length;++ne+ +(t===0),0)}function oT(e,t){let n,r,i,a,o,s;return!t||!(a=e.dictionary)?(o=lT(e,nT(e,t)),i=new WC(e.name,o,e.nullable,sT(e.metadata))):t.has(n=a.id)?(r=(r=a.indexType)?cT(r):new ub,s=new Rb(t.get(n),r,n,a.isOrdered),i=new WC(e.name,s,e.nullable,sT(e.metadata))):(r=(r=a.indexType)?cT(r):new ub,t.set(n,o=lT(e,nT(e,t))),s=new Rb(o,r,n,a.isOrdered),i=new WC(e.name,s,e.nullable,sT(e.metadata))),i||null}function sT(e=[]){return new Map(e.map(({key:e,value:t})=>[e,t]))}function cT(e){return new sb(e.isSigned,e.bitWidth)}function lT(e,t){let n=e.type.name;switch(n){case`NONE`:return new ob;case`null`:return new ob;case`binary`:return new bb;case`largebinary`:return new xb;case`utf8`:return new Sb;case`largeutf8`:return new Cb;case`bool`:return new wb;case`list`:return new jb((t||[])[0]);case`struct`:return new Mb(t||[]);case`struct_`:return new Mb(t||[])}switch(n){case`int`:{let t=e.type;return new sb(t.isSigned,t.bitWidth)}case`floatingpoint`:{let t=e.type;return new gb(wv[t.precision])}case`decimal`:{let t=e.type;return new Tb(t.scale,t.precision,t.bitWidth)}case`date`:{let t=e.type;return new Eb(Tv[t.unit])}case`time`:{let t=e.type;return new Db(Ev[t.unit],t.bitWidth)}case`timestamp`:{let t=e.type;return new Ob(Ev[t.unit],t.timezone)}case`interval`:{let t=e.type;return new kb(Dv[t.unit])}case`duration`:{let t=e.type;return new Ab(Ev[t.unit])}case`union`:{let n=e.type,[r,...i]=(n.mode+``).toLowerCase(),a=r.toUpperCase()+i.join(``);return new Nb(Cv[a],n.typeIds||[],t||[])}case`fixedsizebinary`:{let t=e.type;return new Pb(t.byteWidth)}case`fixedsizelist`:{let n=e.type;return new Fb(n.listSize,(t||[])[0])}case`map`:{let n=e.type;return new Ib((t||[])[0],n.keysSorted)}}throw Error(`Unrecognized type: "${n}"`)}var uT=Rv,dT=Lv,fT=class e{static fromJSON(t,n){let r=new e(0,Sv.V5,n);return r._createHeader=_T(t,n),r}static decode(t){t=new dT(ov(t));let n=Yw.getRootAsMessage(t),r=n.bodyLength(),i=n.version(),a=n.headerType(),o=new e(r,i,a);return o._createHeader=vT(n,a),o}static encode(e){let t=new uT,n=-1;return e.isSchema()?n=UC.encode(t,e.header()):e.isRecordBatch()?n=pT.encode(t,e.header()):e.isDictionaryBatch()&&(n=mT.encode(t,e.header())),Yw.startMessage(t),Yw.addVersion(t,Sv.V5),Yw.addHeader(t,n),Yw.addHeaderType(t,e.headerType),Yw.addBodyLength(t,BigInt(e.bodyLength)),Yw.finishMessageBuffer(t,Yw.endMessage(t)),t.asUint8Array()}static from(t,n=0){if(t instanceof UC)return new e(0,Sv.V5,yy.Schema,t);if(t instanceof pT)return new e(n,Sv.V5,yy.RecordBatch,t);if(t instanceof mT)return new e(n,Sv.V5,yy.DictionaryBatch,t);throw Error(`Unrecognized Message header: ${t}`)}get type(){return this.headerType}get version(){return this._version}get headerType(){return this._headerType}get bodyLength(){return this._bodyLength}header(){return this._createHeader()}isSchema(){return this.headerType===yy.Schema}isRecordBatch(){return this.headerType===yy.RecordBatch}isDictionaryBatch(){return this.headerType===yy.DictionaryBatch}constructor(e,t,n,r){this._version=t,this._headerType=n,this.body=new Uint8Array,r&&(this._createHeader=()=>r),this._bodyLength=Cy(e)}},pT=class{get nodes(){return this._nodes}get length(){return this._length}get buffers(){return this._buffers}constructor(e,t,n){this._nodes=t,this._buffers=n,this._length=Cy(e)}},mT=class{get id(){return this._id}get data(){return this._data}get isDelta(){return this._isDelta}get length(){return this.data.length}get nodes(){return this.data.nodes}get buffers(){return this.data.buffers}constructor(e,t,n=!1){this._data=e,this._isDelta=n,this._id=Cy(t)}},hT=class{constructor(e,t){this.offset=Cy(e),this.length=Cy(t)}},gT=class{constructor(e,t){this.length=Cy(e),this.nullCount=Cy(t)}};function _T(e,t){return()=>{switch(t){case yy.Schema:return UC.fromJSON(e);case yy.RecordBatch:return pT.fromJSON(e);case yy.DictionaryBatch:return mT.fromJSON(e)}throw Error(`Unrecognized Message type: { name: ${yy[t]}, type: ${t} }`)}}function vT(e,t){return()=>{switch(t){case yy.Schema:return UC.decode(e.header(new vy),new Map,e.version());case yy.RecordBatch:return pT.decode(e.header(new Wv),e.version());case yy.DictionaryBatch:return mT.decode(e.header(new Gv),e.version())}throw Error(`Unrecognized Message type: { name: ${yy[t]}, type: ${t} }`)}}WC.encode=NT,WC.decode=OT,WC.fromJSON=oT,UC.encode=MT,UC.decode=yT,UC.fromJSON=Qw,pT.encode=PT,pT.decode=bT,pT.fromJSON=$w,mT.encode=FT,mT.decode=xT,mT.fromJSON=eT,gT.encode=IT,gT.decode=CT,hT.encode=LT,hT.decode=ST;function yT(e,t=new Map,n=Sv.V5){let r=ET(e,t);return new UC(r,kT(e),t,n)}function bT(e,t=Sv.V5){if(e.compression()!==null)throw Error(`Record batch compression not implemented`);return new pT(e.length(),wT(e),TT(e,t))}function xT(e,t=Sv.V5){return new mT(pT.decode(e.data(),t),e.id(),e.isDelta())}function ST(e){return new hT(e.offset(),e.length())}function CT(e){return new gT(e.length(),e.nullCount())}function wT(e){let t=[];for(let n,r=-1,i=-1,a=e.nodesLength();++rWC.encode(e,t));vy.startFieldsVector(e,n.length);let r=vy.createFieldsVector(e,n),i=t.metadata&&t.metadata.size>0?vy.createCustomMetadataVector(e,[...t.metadata].map(([t,n])=>{let r=e.createString(`${t}`),i=e.createString(`${n}`);return Xv.startKeyValue(e),Xv.addKey(e,r),Xv.addValue(e,i),Xv.endKeyValue(e)})):-1;return vy.startSchema(e),vy.addFields(e,r),vy.addEndianness(e,RT?Kv.Little:Kv.Big),i!==-1&&vy.addCustomMetadata(e,i),vy.endSchema(e)}function NT(e,t){let n=-1,r=-1,i=-1,a=t.type,o=t.typeId;ab.isDictionary(a)?(o=a.dictionary.typeId,i=Zw.visit(a,e),r=Zw.visit(a.dictionary,e)):r=Zw.visit(a,e);let s=(a.children||[]).map(t=>WC.encode(e,t)),c=_y.createChildrenVector(e,s),l=t.metadata&&t.metadata.size>0?_y.createCustomMetadataVector(e,[...t.metadata].map(([t,n])=>{let r=e.createString(`${t}`),i=e.createString(`${n}`);return Xv.startKeyValue(e),Xv.addKey(e,r),Xv.addValue(e,i),Xv.endKeyValue(e)})):-1;return t.name&&(n=e.createString(t.name)),_y.startField(e),_y.addType(e,r),_y.addTypeType(e,o),_y.addChildren(e,c),_y.addNullable(e,!!t.nullable),n!==-1&&_y.addName(e,n),i!==-1&&_y.addDictionary(e,i),l!==-1&&_y.addCustomMetadata(e,l),_y.endField(e)}function PT(e,t){let n=t.nodes||[],r=t.buffers||[];Wv.startNodesVector(e,n.length);for(let t of n.slice().reverse())gT.encode(e,t);let i=e.endVector();Wv.startBuffersVector(e,r.length);for(let t of r.slice().reverse())hT.encode(e,t);let a=e.endVector();return Wv.startRecordBatch(e),Wv.addLength(e,BigInt(t.length)),Wv.addNodes(e,i),Wv.addBuffers(e,a),Wv.endRecordBatch(e)}function FT(e,t){let n=pT.encode(e,t.data);return Gv.startDictionaryBatch(e),Gv.addId(e,BigInt(t.id)),Gv.addIsDelta(e,t.isDelta),Gv.addData(e,n),Gv.endDictionaryBatch(e)}function IT(e,t){return Uv.createFieldNode(e,BigInt(t.length),BigInt(t.nullCount))}function LT(e,t){return Hv.createBuffer(e,BigInt(t.offset),BigInt(t.length))}const RT=(()=>{let e=new ArrayBuffer(2);return new DataView(e).setInt16(0,256,!0),new Int16Array(e)[0]===256})(),zT=e=>`Expected ${yy[e]} Message in stream, but was null or length 0.`,BT=e=>`Header pointer of flatbuffer-encoded ${yy[e]} Message is null or length 0.`,VT=(e,t)=>`Expected to read ${e} metadata bytes, but only read ${t}.`,HT=(e,t)=>`Expected to read ${e} bytes for message body, but only read ${t}.`;var UT=class{constructor(e){this.source=e instanceof rw?e:new rw(e)}[Symbol.iterator](){return this}next(){let e;return(e=this.readMetadataLength()).done||e.value===-1&&(e=this.readMetadataLength()).done||(e=this.readMetadata(e.value)).done?QC:e}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}readMessage(e){let t;if((t=this.next()).done)return null;if(e!=null&&t.value.headerType!==e)throw Error(zT(e));return t.value}readMessageBody(e){if(e<=0)return new Uint8Array;let t=ov(this.source.read(e));if(t.byteLength[...e,...n.VALIDITY&&[n.VALIDITY]||[],...n.TYPE_ID&&[n.TYPE_ID]||[],...n.OFFSET&&[n.OFFSET]||[],...n.DATA&&[n.DATA]||[],...t(n.children)],[])}}readMessage(e){let t;if((t=this.next()).done)return null;if(e!=null&&t.value.headerType!==e)throw Error(zT(e));return t.value}readSchema(){let e=yy.Schema,t=this.readMessage(e),n=t?.header();if(!t||!n)throw Error(BT(e));return n}};const KT=4,qT=`ARROW1`,JT=new Uint8Array(qT.length);for(let e=0;ethis):this}readRecordBatch(e){return this._impl.isFile()?this._impl.readRecordBatch(e):null}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}toDOMStream(){return mv.toDOMStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this})}toNodeStream(){return mv.toNodeStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this},{objectMode:!0})}static throughNode(e){throw Error(`"throughNode" not available in this environment`)}static throughDOM(e,t){throw Error(`"throughDOM" not available in this environment`)}static from(t){return t instanceof e?t:U_(t)?pE(t):G_(t)?gE(t):B_(t)?(()=>E_(this,void 0,void 0,function*(){return yield e.from(yield t)}))():K_(t)||Y_(t)||Z_(t)||H_(t)?hE(new iw(t)):mE(new rw(t))}static readAll(t){return t instanceof e?t.isSync()?dE(t):fE(t):U_(t)||ArrayBuffer.isView(t)||V_(t)||W_(t)?dE(t):fE(t)}},eE=class extends $T{constructor(e){super(e),this._impl=e}readAll(){return[...this]}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return k_(this,arguments,function*(){yield O_(yield*A_(j_(this[Symbol.iterator]())))})}},tE=class extends $T{constructor(e){super(e),this._impl=e}readAll(){return E_(this,void 0,void 0,function*(){var e,t,n,r;let i=[];try{for(var a=!0,o=j_(this),s;s=yield o.next(),e=s.done,!e;a=!0){r=s.value,a=!1;let e=r;i.push(e)}}catch(e){t={error:e}}finally{try{!a&&!e&&(n=o.return)&&(yield n.call(o))}finally{if(t)throw t.error}}return i})}[Symbol.iterator](){throw Error(`AsyncRecordBatchStreamReader is not Iterable`)}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}},nE=class extends eE{constructor(e){super(e),this._impl=e}},rE=class extends tE{constructor(e){super(e),this._impl=e}},iE=class{get numDictionaries(){return this._dictionaryIndex}get numRecordBatches(){return this._recordBatchIndex}constructor(e=new Map){this.closed=!1,this.autoDestroy=!0,this._dictionaryIndex=0,this._recordBatchIndex=0,this.dictionaries=e}isSync(){return!1}isAsync(){return!1}isFile(){return!1}isStream(){return!1}reset(e){return this._dictionaryIndex=0,this._recordBatchIndex=0,this.schema=e,this.dictionaries=new Map,this}_loadRecordBatch(e,t){let n=this._loadVectors(e,t,this.schema.fields),r=hC({type:new Mb(this.schema.fields),length:e.length,children:n});return new Gw(this.schema,r)}_loadDictionaryBatch(e,t){let{id:n,isDelta:r}=e,{dictionaries:i,schema:a}=this,o=i.get(n),s=a.dictionaries.get(n),c=this._loadVectors(e.data,t,[s]);return(o&&r?o.concat(new zC(c)):new zC(c)).memoize()}_loadVectors(e,t,n){return new _w(t,e.nodes,e.buffers,this.dictionaries,this.schema.metadataVersion).visitMany(n)}},aE=class extends iE{constructor(e,t){super(t),this._reader=U_(e)?new GT(this._handle=e):new UT(this._handle=e)}isSync(){return!0}isStream(){return!0}[Symbol.iterator](){return this}cancel(){!this.closed&&(this.closed=!0)&&(this.reset()._reader.return(),this._reader=null,this.dictionaries=null)}open(e){return this.closed||(this.autoDestroy=uE(this,e),(this.schema||=this._reader.readSchema())||this.cancel()),this}throw(e){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.throw(e):QC}return(e){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.return(e):QC}next(){if(this.closed)return QC;let e,{_reader:t}=this;for(;e=this._readNextMessageAndValidate();)if(e.isSchema())this.reset(e.header());else if(e.isRecordBatch()){this._recordBatchIndex++;let n=e.header(),r=t.readMessageBody(e.bodyLength),i=this._loadRecordBatch(n,r);return{done:!1,value:i}}else if(e.isDictionaryBatch()){this._dictionaryIndex++;let n=e.header(),r=t.readMessageBody(e.bodyLength),i=this._loadDictionaryBatch(n,r);this.dictionaries.set(n.id,i)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new Jw(this.schema)}):this.return()}_readNextMessageAndValidate(e){return this._reader.readMessage(e)}},oE=class extends iE{constructor(e,t){super(t),this._reader=new WT(this._handle=e)}isAsync(){return!0}isStream(){return!0}[Symbol.asyncIterator](){return this}cancel(){return E_(this,void 0,void 0,function*(){!this.closed&&(this.closed=!0)&&(yield this.reset()._reader.return(),this._reader=null,this.dictionaries=null)})}open(e){return E_(this,void 0,void 0,function*(){return this.closed||(this.autoDestroy=uE(this,e),(this.schema||=yield this._reader.readSchema())||(yield this.cancel())),this})}throw(e){return E_(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.throw(e):QC})}return(e){return E_(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.return(e):QC})}next(){return E_(this,void 0,void 0,function*(){if(this.closed)return QC;let e,{_reader:t}=this;for(;e=yield this._readNextMessageAndValidate();)if(e.isSchema())yield this.reset(e.header());else if(e.isRecordBatch()){this._recordBatchIndex++;let n=e.header(),r=yield t.readMessageBody(e.bodyLength),i=this._loadRecordBatch(n,r);return{done:!1,value:i}}else if(e.isDictionaryBatch()){this._dictionaryIndex++;let n=e.header(),r=yield t.readMessageBody(e.bodyLength),i=this._loadDictionaryBatch(n,r);this.dictionaries.set(n.id,i)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new Jw(this.schema)}):yield this.return()})}_readNextMessageAndValidate(e){return E_(this,void 0,void 0,function*(){return yield this._reader.readMessage(e)})}},sE=class extends aE{get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}constructor(e,t){super(e instanceof sw?e:new sw(e),t)}isSync(){return!0}isFile(){return!0}open(e){if(!this.closed&&!this._footer){this.schema=(this._footer=this._readFooter()).schema;for(let e of this._footer.dictionaryBatches())e&&this._readDictionaryBatch(this._dictionaryIndex++)}return super.open(e)}readRecordBatch(e){var t;if(this.closed)return null;this._footer||this.open();let n=(t=this._footer)?.getRecordBatch(e);if(n&&this._handle.seek(n.offset)){let e=this._reader.readMessage(yy.RecordBatch);if(e?.isRecordBatch()){let t=e.header(),n=this._reader.readMessageBody(e.bodyLength),r=this._loadRecordBatch(t,n);return r}}return null}_readDictionaryBatch(e){var t;let n=(t=this._footer)?.getDictionaryBatch(e);if(n&&this._handle.seek(n.offset)){let e=this._reader.readMessage(yy.DictionaryBatch);if(e?.isDictionaryBatch()){let t=e.header(),n=this._reader.readMessageBody(e.bodyLength),r=this._loadDictionaryBatch(t,n);this.dictionaries.set(t.id,r)}}}_readFooter(){let{_handle:e}=this,t=e.size-ZT,n=e.readInt32(t),r=e.readAt(t-n,n);return YC.decode(r)}_readNextMessageAndValidate(e){var t;if(this._footer||this.open(),this._footer&&this._recordBatchIndexsuper.open}});return E_(this,void 0,void 0,function*(){if(!this.closed&&!this._footer){this.schema=(this._footer=yield this._readFooter()).schema;for(let e of this._footer.dictionaryBatches())e&&(yield this._readDictionaryBatch(this._dictionaryIndex++))}return yield t.open.call(this,e)})}readRecordBatch(e){return E_(this,void 0,void 0,function*(){var t;if(this.closed)return null;this._footer||(yield this.open());let n=(t=this._footer)?.getRecordBatch(e);if(n&&(yield this._handle.seek(n.offset))){let e=yield this._reader.readMessage(yy.RecordBatch);if(e?.isRecordBatch()){let t=e.header(),n=yield this._reader.readMessageBody(e.bodyLength),r=this._loadRecordBatch(t,n);return r}}return null})}_readDictionaryBatch(e){return E_(this,void 0,void 0,function*(){var t;let n=(t=this._footer)?.getDictionaryBatch(e);if(n&&(yield this._handle.seek(n.offset))){let e=yield this._reader.readMessage(yy.DictionaryBatch);if(e?.isDictionaryBatch()){let t=e.header(),n=yield this._reader.readMessageBody(e.bodyLength),r=this._loadDictionaryBatch(t,n);this.dictionaries.set(t.id,r)}}})}_readFooter(){return E_(this,void 0,void 0,function*(){let{_handle:e}=this;e._pending&&(yield e._pending);let t=e.size-ZT,n=yield e.readInt32(t),r=yield e.readAt(t-n,n);return YC.decode(r)})}_readNextMessageAndValidate(e){return E_(this,void 0,void 0,function*(){if(this._footer||(yield this.open()),this._footer&&this._recordBatchIndex=4?YT(t)?new nE(new sE(e.read())):new eE(new aE(e)):new eE(new aE(function*(){}()))}function hE(e){return E_(this,void 0,void 0,function*(){let t=yield e.peek(XT+7&-8);return t&&t.byteLength>=4?YT(t)?new nE(new sE(yield e.read())):new tE(new oE(e)):new tE(new oE(function(){return k_(this,arguments,function*(){})}()))})}function gE(e){return E_(this,void 0,void 0,function*(){let{size:t}=yield e.stat(),n=new cw(e,t);return t>=QT&&YT(yield n.readAt(0,XT+7&-8))?new rE(new cE(n)):new tE(new oE(n))})}var _E=class e extends Bb{static assemble(...t){let n=e=>e.flatMap(e=>Array.isArray(e)?n(e):e instanceof Gw?e.data.children:e.data),r=new e;return r.visitMany(n(t)),r}constructor(){super(),this._byteLength=0,this._nodes=[],this._buffers=[],this._bufferRegions=[]}visit(e){if(e instanceof zC)return this.visitMany(e.data),this;let{type:t}=e;if(!ab.isDictionary(t)){let{length:n}=e;if(n>2147483647)throw RangeError(`Cannot write arrays larger than 2^31 - 1 in length`);if(ab.isUnion(t))this.nodes.push(new gT(n,0));else{let{nullCount:r}=e;ab.isNull(t)||vE.call(this,r<=0?new Uint8Array:aC(e.offset,n,e.nullBitmap)),this.nodes.push(new gT(n,r))}}return super.visit(e)}visitNull(e){return this}visitDictionary(e){return this.visit(e.clone(e.type.indices))}get nodes(){return this._nodes}get buffers(){return this._buffers}get byteLength(){return this._byteLength}get bufferRegions(){return this._bufferRegions}};function vE(e){let t=e.byteLength+7&-8;return this.buffers.push(e),this.bufferRegions.push(new hT(this._byteLength,t)),this._byteLength+=t,this}function yE(e){var t;let{type:n,length:r,typeIds:i,valueOffsets:a}=e;if(vE.call(this,i),n.mode===Cv.Sparse)return wE.call(this,e);if(n.mode===Cv.Dense){if(e.offset<=0)return vE.call(this,a),wE.call(this,e);{let o=new Int32Array(r),s=Object.create(null),c=Object.create(null);for(let e,n,l=-1;++l{let i=n.typeIds[t],a=s[i],o=c[i];return e.slice(a,Math.min(r,o))}))}}return this}function bE(e){let t;return e.nullCount>=e.length?vE.call(this,new Uint8Array):(t=e.values)instanceof Uint8Array?vE.call(this,aC(e.offset,e.length,t)):vE.call(this,oC(e.values))}function xE(e){return vE.call(this,e.values.subarray(0,e.length*e.stride))}function SE(e){let{length:t,values:n,valueOffsets:r}=e,i=Cy(r[0]),a=Cy(r[t]),o=Math.min(a-i,n.byteLength-i);return vE.call(this,fv(-i,t+1,r)),vE.call(this,n.subarray(i,i+o)),this}function CE(e){let{length:t,valueOffsets:n}=e;if(n){let{0:r,[t]:i}=n;return vE.call(this,fv(-r,t+1,n)),this.visit(e.children[0].slice(r,i-r))}return this.visit(e.children[0])}function wE(e){return this.visitMany(e.type.children.map((t,n)=>e.children[n]).filter(Boolean))[0]}_E.prototype.visitBool=bE,_E.prototype.visitInt=xE,_E.prototype.visitFloat=xE,_E.prototype.visitUtf8=SE,_E.prototype.visitLargeUtf8=SE,_E.prototype.visitBinary=SE,_E.prototype.visitLargeBinary=SE,_E.prototype.visitFixedSizeBinary=xE,_E.prototype.visitDate=xE,_E.prototype.visitTimestamp=xE,_E.prototype.visitTime=xE,_E.prototype.visitDecimal=xE,_E.prototype.visitList=CE,_E.prototype.visitStruct=wE,_E.prototype.visitUnion=yE,_E.prototype.visitInterval=xE,_E.prototype.visitDuration=xE,_E.prototype.visitFixedSizeList=CE,_E.prototype.visitMap=CE;var TE=class extends ew{static throughNode(e){throw Error(`"throughNode" not available in this environment`)}static throughDOM(e,t){throw Error(`"throughDOM" not available in this environment`)}constructor(e){super(),this._position=0,this._started=!1,this._sink=new nw,this._schema=null,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,z_(e)||(e={autoDestroy:!0,writeLegacyIpcFormat:!1}),this._autoDestroy=typeof e.autoDestroy==`boolean`?e.autoDestroy:!0,this._writeLegacyIpcFormat=typeof e.writeLegacyIpcFormat==`boolean`?e.writeLegacyIpcFormat:!1}toString(e=!1){return this._sink.toString(e)}toUint8Array(e=!1){return this._sink.toUint8Array(e)}writeAll(e){return B_(e)?e.then(e=>this.writeAll(e)):H_(e)?kE(this,e):OE(this,e)}get closed(){return this._sink.closed}[Symbol.asyncIterator](){return this._sink[Symbol.asyncIterator]()}toDOMStream(e){return this._sink.toDOMStream(e)}toNodeStream(e){return this._sink.toNodeStream(e)}close(){return this.reset()._sink.close()}abort(e){return this.reset()._sink.abort(e)}finish(){return this._autoDestroy?this.close():this.reset(this._sink,this._schema),this}reset(e=this._sink,t=null){return e===this._sink||e instanceof nw?this._sink=e:(this._sink=new nw,e&&J_(e)?this.toDOMStream({type:`bytes`}).pipeTo(e):e&&X_(e)&&this.toNodeStream({objectMode:!1}).pipe(e)),this._started&&this._schema&&this._writeFooter(this._schema),this._started=!1,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,(!t||!Rw(t,this._schema))&&(t==null?(this._position=0,this._schema=null):(this._started=!0,this._schema=t,this._writeSchema(t))),this}write(e){let t=null;if(this._sink){if(e==null||e instanceof Uw&&!(t=e.schema)||e instanceof Gw&&!(t=e.schema))return this.finish()&&void 0}else throw Error(`RecordBatchWriter is closed`);if(t&&!Rw(t,this._schema)){if(this._started&&this._autoDestroy)return this.close();this.reset(this._sink,t)}e instanceof Gw?e instanceof Jw||this._writeRecordBatch(e):e instanceof Uw?this.writeAll(e.batches):V_(e)&&this.writeAll(e)}_writeMessage(e,t=8){let n=t-1,r=fT.encode(e),i=r.byteLength,a=this._writeLegacyIpcFormat?4:8,o=i+a+n&~n,s=o-i-a;return e.headerType===yy.RecordBatch?this._recordBatchBlocks.push(new ZC(o,e.bodyLength,this._position)):e.headerType===yy.DictionaryBatch&&this._dictionaryBlocks.push(new ZC(o,e.bodyLength,this._position)),this._writeLegacyIpcFormat||this._write(Int32Array.of(-1)),this._write(Int32Array.of(o-a)),i>0&&this._write(r),this._writePadding(s)}_write(e){if(this._started){let t=ov(e);t&&t.byteLength>0&&(this._sink.write(t),this._position+=t.byteLength)}return this}_writeSchema(e){return this._writeMessage(fT.from(e))}_writeFooter(e){return this._writeLegacyIpcFormat?this._write(Int32Array.of(0)):this._write(Int32Array.of(-1,0))}_writeMagic(){return this._write(JT)}_writePadding(e){return e>0?this._write(new Uint8Array(e)):this}_writeRecordBatch(e){let{byteLength:t,nodes:n,bufferRegions:r,buffers:i}=_E.assemble(e),a=new pT(e.numRows,n,r),o=fT.from(a,t);return this._writeDictionaries(e)._writeMessage(o)._writeBodyBuffers(i)}_writeDictionaryBatch(e,t,n=!1){let{byteLength:r,nodes:i,bufferRegions:a,buffers:o}=_E.assemble(new zC([e])),s=new pT(e.length,i,a),c=new mT(s,t,n),l=fT.from(c,r);return this._writeMessage(l)._writeBodyBuffers(o)}_writeBodyBuffers(e){let t,n,r;for(let i=-1,a=e.length;++i0&&(this._write(t),(r=(n+7&-8)-n)>0&&this._writePadding(r));return this}_writeDictionaries(e){var t,n;for(let[r,i]of e.dictionaries){let e=(t=i?.data)??[],a=this._seenDictionaries.get(r),o=(n=this._dictionaryDeltaOffsets.get(r))??0;if(!a||a.data[0]!==e[0])for(let[t,n]of e.entries())this._writeDictionaryBatch(n,r,t>0);else if(or.writeAll(e)):H_(t)?kE(r,t):OE(r,t)}},DE=class e extends TE{static writeAll(t){let n=new e;return B_(t)?t.then(e=>n.writeAll(e)):H_(t)?kE(n,t):OE(n,t)}constructor(){super(),this._autoDestroy=!0}_writeSchema(e){return this._writeMagic()._writePadding(2)}_writeDictionaryBatch(e,t,n=!1){if(!n&&this._seenDictionaries.has(t))throw Error(`The Arrow File format does not support replacement dictionaries. `);return super._writeDictionaryBatch(e,t,n)}_writeFooter(e){let t=YC.encode(new YC(e,Sv.V5,this._recordBatchBlocks,this._dictionaryBlocks));return super._writeFooter(e)._write(t)._write(Int32Array.of(t.byteLength))._writeMagic()}};function OE(e,t){let n=t;t instanceof Uw&&(n=t.batches,e.reset(void 0,t.schema));for(let t of n)e.write(t);return e.finish()}function kE(e,t){return E_(this,void 0,void 0,function*(){var n,r,i,a,o,s,c;try{for(n=!0,r=j_(t);i=yield r.next(),a=i.done,!a;n=!0){c=i.value,n=!1;let t=c;e.write(t)}}catch(e){o={error:e}}finally{try{!n&&!a&&(s=r.return)&&(yield s.call(r))}finally{if(o)throw o.error}}return e.finish()})}function AE(e,t=`stream`){return(t===`stream`?EE:DE).writeAll(e).toUint8Array(!0)}var jE=Object.create,ME=Object.defineProperty,NE=Object.getOwnPropertyDescriptor,PE=Object.getOwnPropertyNames,FE=Object.getPrototypeOf,IE=Object.prototype.hasOwnProperty,LE=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),RE=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of PE(t))!IE.call(e,i)&&i!==n&&ME(e,i,{get:()=>t[i],enumerable:!(r=NE(t,i))||r.enumerable});return e},zE=(e,t,n)=>(n=e==null?{}:jE(FE(e)),RE(t||!e||!e.__esModule?ME(n,`default`,{value:e,enumerable:!0}):n,e)),BE=LE((e,t)=>{t.exports=Worker}),VE=(e=>(e[e.UNDEFINED=0]=`UNDEFINED`,e[e.AUTOMATIC=1]=`AUTOMATIC`,e[e.READ_ONLY=2]=`READ_ONLY`,e[e.READ_WRITE=3]=`READ_WRITE`,e))(VE||{}),HE=(e=>(e[e.IDENTIFIER=0]=`IDENTIFIER`,e[e.NUMERIC_CONSTANT=1]=`NUMERIC_CONSTANT`,e[e.STRING_CONSTANT=2]=`STRING_CONSTANT`,e[e.OPERATOR=3]=`OPERATOR`,e[e.KEYWORD=4]=`KEYWORD`,e[e.COMMENT=5]=`COMMENT`,e))(HE||{}),UE=(e=>(e[e.NONE=0]=`NONE`,e[e.DEBUG=1]=`DEBUG`,e[e.INFO=2]=`INFO`,e[e.WARNING=3]=`WARNING`,e[e.ERROR=4]=`ERROR`,e))(UE||{}),WE=(e=>(e[e.NONE=0]=`NONE`,e[e.CONNECT=1]=`CONNECT`,e[e.DISCONNECT=2]=`DISCONNECT`,e[e.OPEN=3]=`OPEN`,e[e.QUERY=4]=`QUERY`,e[e.INSTANTIATE=5]=`INSTANTIATE`,e))(WE||{}),GE=(e=>(e[e.NONE=0]=`NONE`,e[e.OK=1]=`OK`,e[e.ERROR=2]=`ERROR`,e[e.START=3]=`START`,e[e.RUN=4]=`RUN`,e[e.CAPTURE=5]=`CAPTURE`,e))(GE||{}),KE=(e=>(e[e.NONE=0]=`NONE`,e[e.WEB_WORKER=1]=`WEB_WORKER`,e[e.NODE_WORKER=2]=`NODE_WORKER`,e[e.BINDINGS=3]=`BINDINGS`,e[e.ASYNC_DUCKDB=4]=`ASYNC_DUCKDB`,e))(KE||{}),qE=class{log(e){}},JE=class{constructor(e=2){this.level=e}log(e){e.level>=this.level&&console.log(e)}},YE=(e=>(e[e.SUCCESS=0]=`SUCCESS`,e))(YE||{}),XE=class{constructor(e,t){this._bindings=e,this._conn=t}get bindings(){return this._bindings}async close(){return this._bindings.disconnect(this._conn)}useUnsafe(e){return e(this._bindings,this._conn)}async query(e){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let t=await this._bindings.runQuery(this._conn,e),n=$T.from(t);return console.assert(n.isSync(),`Reader is not sync`),console.assert(n.isFile(),`Reader is not file`),new Uw(n)}async send(e,t=!1){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let n=await this._bindings.startPendingQuery(this._conn,e,t);for(;n==null;)n=await this._bindings.pollPendingQuery(this._conn);let r=new ZE(this._bindings,this._conn,n),i=await $T.from(r);return console.assert(i.isAsync()),console.assert(i.isStream()),i}async cancelSent(){return await this._bindings.cancelPendingQuery(this._conn)}async getTableNames(e){return await this._bindings.getTableNames(this._conn,e)}async prepare(e){let t=await this._bindings.createPrepared(this._conn,e);return new QE(this._bindings,this._conn,t)}async insertArrowTable(e,t){let n=AE(e,`stream`);await this.insertArrowFromIPCStream(n,t)}async insertArrowFromIPCStream(e,t){await this._bindings.insertArrowFromIPCStream(this._conn,e,t)}async insertCSVFromPath(e,t){await this._bindings.insertCSVFromPath(this._conn,e,t)}async insertJSONFromPath(e,t){await this._bindings.insertJSONFromPath(this._conn,e,t)}},ZE=class{constructor(e,t,n){this.db=e,this.conn=t,this.header=n,this._first=!0,this._depleted=!1,this._inFlight=null}async next(){if(this._first)return this._first=!1,{done:!1,value:this.header};if(this._depleted)return{done:!0,value:null};let e;return this._inFlight==null?e=await this.db.fetchQueryResults(this.conn):(e=await this._inFlight,this._inFlight=null),this._depleted=e.length==0,this._depleted||(this._inFlight=this.db.fetchQueryResults(this.conn)),{done:this._depleted,value:e}}[Symbol.asyncIterator](){return this}},QE=class{constructor(e,t,n){this.bindings=e,this.connectionId=t,this.statementId=n}async close(){await this.bindings.closePrepared(this.connectionId,this.statementId)}async query(...e){let t=await this.bindings.runPrepared(this.connectionId,this.statementId,e),n=$T.from(t);return console.assert(n.isSync()),console.assert(n.isFile()),new Uw(n)}async send(...e){let t=await this.bindings.sendPrepared(this.connectionId,this.statementId,e),n=new ZE(this.bindings,this.connectionId,t),r=await $T.from(n);return console.assert(r.isAsync()),console.assert(r.isStream()),r}},$E=(e=>(e.CANCEL_PENDING_QUERY=`CANCEL_PENDING_QUERY`,e.CLOSE_PREPARED=`CLOSE_PREPARED`,e.COLLECT_FILE_STATISTICS=`COLLECT_FILE_STATISTICS`,e.REGISTER_OPFS_FILE_NAME=`REGISTER_OPFS_FILE_NAME`,e.CONNECT=`CONNECT`,e.COPY_FILE_TO_BUFFER=`COPY_FILE_TO_BUFFER`,e.COPY_FILE_TO_PATH=`COPY_FILE_TO_PATH`,e.CREATE_PREPARED=`CREATE_PREPARED`,e.DISCONNECT=`DISCONNECT`,e.DROP_FILE=`DROP_FILE`,e.DROP_FILES=`DROP_FILES`,e.EXPORT_FILE_STATISTICS=`EXPORT_FILE_STATISTICS`,e.FETCH_QUERY_RESULTS=`FETCH_QUERY_RESULTS`,e.FLUSH_FILES=`FLUSH_FILES`,e.GET_FEATURE_FLAGS=`GET_FEATURE_FLAGS`,e.GET_TABLE_NAMES=`GET_TABLE_NAMES`,e.GET_VERSION=`GET_VERSION`,e.GLOB_FILE_INFOS=`GLOB_FILE_INFOS`,e.INSERT_ARROW_FROM_IPC_STREAM=`INSERT_ARROW_FROM_IPC_STREAM`,e.INSERT_CSV_FROM_PATH=`IMPORT_CSV_FROM_PATH`,e.INSERT_JSON_FROM_PATH=`IMPORT_JSON_FROM_PATH`,e.INSTANTIATE=`INSTANTIATE`,e.OPEN=`OPEN`,e.PING=`PING`,e.POLL_PENDING_QUERY=`POLL_PENDING_QUERY`,e.REGISTER_FILE_BUFFER=`REGISTER_FILE_BUFFER`,e.REGISTER_FILE_HANDLE=`REGISTER_FILE_HANDLE`,e.REGISTER_FILE_URL=`REGISTER_FILE_URL`,e.RESET=`RESET`,e.RUN_PREPARED=`RUN_PREPARED`,e.RUN_QUERY=`RUN_QUERY`,e.SEND_PREPARED=`SEND_PREPARED`,e.START_PENDING_QUERY=`START_PENDING_QUERY`,e.TOKENIZE=`TOKENIZE`,e))($E||{}),eD=(e=>(e.CONNECTION_INFO=`CONNECTION_INFO`,e.ERROR=`ERROR`,e.FEATURE_FLAGS=`FEATURE_FLAGS`,e.FILE_BUFFER=`FILE_BUFFER`,e.FILE_INFOS=`FILE_INFOS`,e.FILE_SIZE=`FILE_SIZE`,e.FILE_STATISTICS=`FILE_STATISTICS`,e.INSTANTIATE_PROGRESS=`INSTANTIATE_PROGRESS`,e.LOG=`LOG`,e.OK=`OK`,e.PREPARED_STATEMENT_ID=`PREPARED_STATEMENT_ID`,e.QUERY_PLAN=`QUERY_PLAN`,e.QUERY_RESULT=`QUERY_RESULT`,e.QUERY_RESULT_CHUNK=`QUERY_RESULT_CHUNK`,e.QUERY_RESULT_HEADER=`QUERY_RESULT_HEADER`,e.QUERY_RESULT_HEADER_OR_NULL=`QUERY_RESULT_HEADER_OR_NULL`,e.REGISTERED_FILE=`REGISTERED_FILE`,e.SCRIPT_TOKENS=`SCRIPT_TOKENS`,e.SUCCESS=`SUCCESS`,e.TABLE_NAMES=`TABLE_NAMES`,e.VERSION_STRING=`VERSION_STRING`,e))(eD||{}),tD=class{constructor(e,t){this.promiseResolver=()=>{},this.promiseRejecter=()=>{},this.type=e,this.data=t,this.promise=new Promise((e,t)=>{this.promiseResolver=e,this.promiseRejecter=t})}};function nD(e){switch(e.typeId){case q.Binary:return{sqlType:`binary`};case q.Bool:return{sqlType:`bool`};case q.Date:return{sqlType:`date`};case q.DateDay:return{sqlType:`date32[d]`};case q.DateMillisecond:return{sqlType:`date64[ms]`};case q.Decimal:{let t=e;return{sqlType:`decimal`,precision:t.precision,scale:t.scale}}case q.Float:return{sqlType:`float`};case q.Float16:return{sqlType:`float16`};case q.Float32:return{sqlType:`float32`};case q.Float64:return{sqlType:`float64`};case q.Int:return{sqlType:`int32`};case q.Int16:return{sqlType:`int16`};case q.Int32:return{sqlType:`int32`};case q.Int64:return{sqlType:`int64`};case q.Uint16:return{sqlType:`uint16`};case q.Uint32:return{sqlType:`uint32`};case q.Uint64:return{sqlType:`uint64`};case q.Uint8:return{sqlType:`uint8`};case q.IntervalDayTime:return{sqlType:`interval[dt]`};case q.IntervalYearMonth:return{sqlType:`interval[m]`};case q.List:return{sqlType:`list`,valueType:nD(e.valueType)};case q.FixedSizeBinary:return{sqlType:`fixedsizebinary`,byteWidth:e.byteWidth};case q.Null:return{sqlType:`null`};case q.Utf8:return{sqlType:`utf8`};case q.Struct:return{sqlType:`struct`,fields:e.children.map(e=>rD(e.name,e.type))};case q.Map:{let t=e;return{sqlType:`map`,keyType:nD(t.keyType),valueType:nD(t.valueType)}}case q.Time:return{sqlType:`time[s]`};case q.TimeMicrosecond:return{sqlType:`time[us]`};case q.TimeMillisecond:return{sqlType:`time[ms]`};case q.TimeNanosecond:return{sqlType:`time[ns]`};case q.TimeSecond:return{sqlType:`time[s]`};case q.Timestamp:return{sqlType:`timestamp`,timezone:e.timezone||void 0};case q.TimestampSecond:return{sqlType:`timestamp[s]`,timezone:e.timezone||void 0};case q.TimestampMicrosecond:return{sqlType:`timestamp[us]`,timezone:e.timezone||void 0};case q.TimestampNanosecond:return{sqlType:`timestamp[ns]`,timezone:e.timezone||void 0};case q.TimestampMillisecond:return{sqlType:`timestamp[ms]`,timezone:e.timezone||void 0}}throw Error(`unsupported arrow type: ${e.toString()}`)}function rD(e,t){let n=nD(t);return n.name=e,n}var iD=new TextEncoder,aD=class{constructor(e,t=null){this._onInstantiationProgress=[],this._worker=null,this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{},this._nextMessageId=0,this._pendingRequests=new Map,this._logger=e,this._onMessageHandler=this.onMessage.bind(this),this._onErrorHandler=this.onError.bind(this),this._onCloseHandler=this.onClose.bind(this),t!=null&&this.attach(t)}get logger(){return this._logger}attach(e){this._worker=e,this._worker.addEventListener(`message`,this._onMessageHandler),this._worker.addEventListener(`error`,this._onErrorHandler),this._worker.addEventListener(`close`,this._onCloseHandler),this._workerShutdownPromise=new Promise((e,t)=>{this._workerShutdownResolver=e})}detach(){this._worker&&(this._worker.removeEventListener(`message`,this._onMessageHandler),this._worker.removeEventListener(`error`,this._onErrorHandler),this._worker.removeEventListener(`close`,this._onCloseHandler),this._worker=null,this._workerShutdownResolver(null),this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async terminate(){this._worker&&(this._worker.terminate(),this._worker=null,this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async postTask(e,t=[]){if(!this._worker){console.error(`cannot send a message since the worker is not set!`);return}let n=this._nextMessageId++;return this._pendingRequests.set(n,e),this._worker.postMessage({messageId:n,type:e.type,data:e.data},t),await e.promise}onMessage(e){var t;let n=e.data;switch(n.type){case`LOG`:this._logger.log(n.data);return;case`INSTANTIATE_PROGRESS`:for(let e of this._onInstantiationProgress)e(n.data);return}let r=this._pendingRequests.get(n.requestId);if(!r){console.warn(`unassociated response: [${n.requestId}, ${n.type.toString()}]`);return}if(this._pendingRequests.delete(n.requestId),n.type==`ERROR`){let e=Error(n.data.message);e.name=n.data.name,(t=Object.getOwnPropertyDescriptor(e,`stack`))!=null&&t.writable&&(e.stack=n.data.stack),r.promiseRejecter(e);return}switch(r.type){case`CLOSE_PREPARED`:case`COLLECT_FILE_STATISTICS`:case`REGISTER_OPFS_FILE_NAME`:case`COPY_FILE_TO_PATH`:case`DISCONNECT`:case`DROP_FILE`:case`DROP_FILES`:case`FLUSH_FILES`:case`INSERT_ARROW_FROM_IPC_STREAM`:case`IMPORT_CSV_FROM_PATH`:case`IMPORT_JSON_FROM_PATH`:case`OPEN`:case`PING`:case`REGISTER_FILE_BUFFER`:case`REGISTER_FILE_HANDLE`:case`REGISTER_FILE_URL`:case`RESET`:if(n.type==`OK`){r.promiseResolver(n.data);return}break;case`INSTANTIATE`:if(this._onInstantiationProgress=[],n.type==`OK`){r.promiseResolver(n.data);return}break;case`GLOB_FILE_INFOS`:if(n.type==`FILE_INFOS`){r.promiseResolver(n.data);return}break;case`GET_VERSION`:if(n.type==`VERSION_STRING`){r.promiseResolver(n.data);return}break;case`GET_FEATURE_FLAGS`:if(n.type==`FEATURE_FLAGS`){r.promiseResolver(n.data);return}break;case`GET_TABLE_NAMES`:if(n.type==`TABLE_NAMES`){r.promiseResolver(n.data);return}break;case`TOKENIZE`:if(n.type==`SCRIPT_TOKENS`){r.promiseResolver(n.data);return}break;case`COPY_FILE_TO_BUFFER`:if(n.type==`FILE_BUFFER`){r.promiseResolver(n.data);return}break;case`EXPORT_FILE_STATISTICS`:if(n.type==`FILE_STATISTICS`){r.promiseResolver(n.data);return}break;case`CONNECT`:if(n.type==`CONNECTION_INFO`){r.promiseResolver(n.data);return}break;case`RUN_PREPARED`:case`RUN_QUERY`:if(n.type==`QUERY_RESULT`){r.promiseResolver(n.data);return}break;case`SEND_PREPARED`:if(n.type==`QUERY_RESULT_HEADER`){r.promiseResolver(n.data);return}break;case`START_PENDING_QUERY`:if(n.type==`QUERY_RESULT_HEADER_OR_NULL`){r.promiseResolver(n.data);return}break;case`POLL_PENDING_QUERY`:if(n.type==`QUERY_RESULT_HEADER_OR_NULL`){r.promiseResolver(n.data);return}break;case`CANCEL_PENDING_QUERY`:if(this._onInstantiationProgress=[],n.type==`SUCCESS`){r.promiseResolver(n.data);return}break;case`FETCH_QUERY_RESULTS`:if(n.type==`QUERY_RESULT_CHUNK`){r.promiseResolver(n.data);return}break;case`CREATE_PREPARED`:if(n.type==`PREPARED_STATEMENT_ID`){r.promiseResolver(n.data);return}break}r.promiseRejecter(Error(`unexpected response type: ${n.type.toString()}`))}onError(e){console.error(e),console.error(`error in duckdb worker: ${e.message}`),this._pendingRequests.clear()}onClose(){if(this._workerShutdownResolver(null),this._pendingRequests.size!=0){console.warn(`worker terminated with ${this._pendingRequests.size} pending requests`);return}this._pendingRequests.clear()}async reset(){let e=new tD(`RESET`,null);return await this.postTask(e)}async ping(){let e=new tD(`PING`,null);await this.postTask(e)}async dropFile(e){let t=new tD(`DROP_FILE`,e);return await this.postTask(t)}async dropFiles(){let e=new tD(`DROP_FILES`,null);return await this.postTask(e)}async flushFiles(){let e=new tD(`FLUSH_FILES`,null);return await this.postTask(e)}async instantiate(e,t=null,n=e=>{}){this._onInstantiationProgress.push(n);let r=new tD(`INSTANTIATE`,[e,t]);return await this.postTask(r)}async getVersion(){let e=new tD(`GET_VERSION`,null);return await this.postTask(e)}async getFeatureFlags(){let e=new tD(`GET_FEATURE_FLAGS`,null);return await this.postTask(e)}async open(e){let t=new tD(`OPEN`,e);await this.postTask(t)}async tokenize(e){let t=new tD(`TOKENIZE`,e);return await this.postTask(t)}async connectInternal(){let e=new tD(`CONNECT`,null);return await this.postTask(e)}async connect(){let e=await this.connectInternal();return new XE(this,e)}async disconnect(e){let t=new tD(`DISCONNECT`,e);await this.postTask(t)}async runQuery(e,t){let n=new tD(`RUN_QUERY`,[e,t]);return await this.postTask(n)}async startPendingQuery(e,t,n=!1){let r=new tD(`START_PENDING_QUERY`,[e,t,n]);return await this.postTask(r)}async pollPendingQuery(e){let t=new tD(`POLL_PENDING_QUERY`,e);return await this.postTask(t)}async cancelPendingQuery(e){let t=new tD(`CANCEL_PENDING_QUERY`,e);return await this.postTask(t)}async fetchQueryResults(e){let t=new tD(`FETCH_QUERY_RESULTS`,e);return await this.postTask(t)}async getTableNames(e,t){let n=new tD(`GET_TABLE_NAMES`,[e,t]);return await this.postTask(n)}async createPrepared(e,t){let n=new tD(`CREATE_PREPARED`,[e,t]);return await this.postTask(n)}async closePrepared(e,t){let n=new tD(`CLOSE_PREPARED`,[e,t]);await this.postTask(n)}async runPrepared(e,t,n){let r=new tD(`RUN_PREPARED`,[e,t,n]);return await this.postTask(r)}async sendPrepared(e,t,n){let r=new tD(`SEND_PREPARED`,[e,t,n]);return await this.postTask(r)}async globFiles(e){let t=new tD(`GLOB_FILE_INFOS`,e);return await this.postTask(t)}async registerFileText(e,t){let n=iD.encode(t);await this.registerFileBuffer(e,n)}async registerFileURL(e,t,n,r){t===void 0&&(t=e);let i=new tD(`REGISTER_FILE_URL`,[e,t,n,r]);await this.postTask(i)}async registerEmptyFileBuffer(e){}async registerFileBuffer(e,t){let n=new tD(`REGISTER_FILE_BUFFER`,[e,t]);await this.postTask(n,[t.buffer])}async registerFileHandle(e,t,n,r){let i=new tD(`REGISTER_FILE_HANDLE`,[e,t,n,r]);await this.postTask(i,[])}async registerOPFSFileName(e){let t=new tD(`REGISTER_OPFS_FILE_NAME`,[e]);await this.postTask(t,[])}async collectFileStatistics(e,t){let n=new tD(`COLLECT_FILE_STATISTICS`,[e,t]);await this.postTask(n,[])}async exportFileStatistics(e){let t=new tD(`EXPORT_FILE_STATISTICS`,e);return await this.postTask(t,[])}async copyFileToBuffer(e){let t=new tD(`COPY_FILE_TO_BUFFER`,e);return await this.postTask(t)}async copyFileToPath(e,t){let n=new tD(`COPY_FILE_TO_PATH`,[e,t]);await this.postTask(n)}async insertArrowFromIPCStream(e,t,n){if(t.length==0)return;let r=new tD(`INSERT_ARROW_FROM_IPC_STREAM`,[e,t,n]);await this.postTask(r,[t.buffer])}async insertCSVFromPath(e,t,n){if(n.columns!==void 0){let e=[];for(let t in n.columns){let r=n.columns[t];e.push(rD(t,r))}n.columnsFlat=e,delete n.columns}let r=new tD(`IMPORT_CSV_FROM_PATH`,[e,t,n]);await this.postTask(r)}async insertJSONFromPath(e,t,n){if(n.columns!==void 0){let e=[];for(let t in n.columns){let r=n.columns[t];e.push(rD(t,r))}n.columnsFlat=e,delete n.columns}let r=new tD(`IMPORT_JSON_FROM_PATH`,[e,t,n]);await this.postTask(r)}};function oD(){let e=new TextDecoder;return t=>(typeof SharedArrayBuffer<`u`&&t.buffer instanceof SharedArrayBuffer&&(t=new Uint8Array(t)),e.decode(t))}var sD=oD(),cD=(e=>(e[e.BUFFER=0]=`BUFFER`,e[e.NODE_FS=1]=`NODE_FS`,e[e.BROWSER_FILEREADER=2]=`BROWSER_FILEREADER`,e[e.BROWSER_FSACCESS=3]=`BROWSER_FSACCESS`,e[e.HTTP=4]=`HTTP`,e[e.S3=5]=`S3`,e))(cD||{}),lD=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),uD=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),dD=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),fD=()=>(async e=>{try{return typeof MessageChannel<`u`&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(e)}catch{return!1}})(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])),pD={name:`@duckdb/duckdb-wasm`,version:`1.29.1-dev68.0`,description:`DuckDB powered by WebAssembly`,license:`MIT`,repository:{type:`git`,url:`https://github.com/duckdb/duckdb-wasm.git`},keywords:[`sql`,`duckdb`,`relational`,`database`,`data`,`query`,`wasm`,`analytics`,`olap`,`arrow`,`parquet`,`json`,`csv`],dependencies:{"apache-arrow":`^17.0.0`},devDependencies:{"@types/emscripten":`^1.39.10`,"@types/jasmine":`^5.1.4`,"@typescript-eslint/eslint-plugin":`^6.21.0`,"@typescript-eslint/parser":`^6.21.0`,esbuild:`^0.20.2`,eslint:`^8.57.0`,"eslint-plugin-jasmine":`^4.1.3`,"eslint-plugin-react":`^7.34.0`,"fast-glob":`^3.3.2`,jasmine:`^5.1.0`,"jasmine-core":`^5.1.2`,"jasmine-spec-reporter":`^7.0.0`,"js-sha256":`^0.11.0`,karma:`^6.4.2`,"karma-chrome-launcher":`^3.2.0`,"karma-coverage":`^2.2.1`,"karma-firefox-launcher":`^2.1.3`,"karma-jasmine":`^5.1.0`,"karma-jasmine-html-reporter":`^2.1.0`,"karma-sourcemap-loader":`^0.4.0`,"karma-spec-reporter":`^0.0.36`,"make-dir":`^4.0.0`,nyc:`^15.1.0`,prettier:`^3.2.5`,puppeteer:`^22.8.0`,rimraf:`^5.0.5`,s3rver:`^3.7.1`,typedoc:`^0.25.13`,typescript:`^5.3.3`,"wasm-feature-detect":`^1.6.1`,"web-worker":`^1.2.0`},scripts:{"build:debug":`node bundle.mjs debug && tsc --emitDeclarationOnly`,"build:release":`node bundle.mjs release && tsc --emitDeclarationOnly`,docs:`typedoc`,report:`node ./coverage.mjs`,"test:node":`node --enable-source-maps ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs`,"test:node:debug":`node --inspect-brk --enable-source-maps ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs`,"test:node:coverage":`nyc -r json --report-dir ./coverage/node node ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs`,"test:firefox":`karma start ./karma/tests-firefox.cjs`,"test:chrome":`karma start ./karma/tests-chrome.cjs`,"test:chrome:eh":`karma start ./karma/tests-chrome-eh.cjs`,"test:chrome:coverage":`karma start ./karma/tests-chrome-coverage.cjs`,"test:browser":`karma start ./karma/tests-all.cjs`,"test:browser:debug":`karma start ./karma/tests-debug.cjs`,test:`npm run test:chrome && npm run test:node`,"test:coverage":`npm run test:chrome:coverage && npm run test:node:coverage && npm run report`,lint:`eslint src test`},files:[`dist`,`!dist/tests-*`,`!dist/duckdb-browser-mvp.worker.js.map`,`!dist/types/test`],main:`dist/duckdb-browser.cjs`,module:`dist/duckdb-browser.mjs`,types:`dist/duckdb-browser.d.ts`,jsdelivr:`dist/duckdb-browser.cjs`,unpkg:`dist/duckdb-browser.mjs`,sideEffects:!1,browser:{fs:!1,path:!1,perf_hooks:!1,os:!1,worker_threads:!1},exports:{"./dist/duckdb-mvp.wasm":`./dist/duckdb-mvp.wasm`,"./dist/duckdb-eh.wasm":`./dist/duckdb-eh.wasm`,"./dist/duckdb-coi.wasm":`./dist/duckdb-coi.wasm`,"./dist/duckdb-browser":`./dist/duckdb-browser.mjs`,"./dist/duckdb-browser.cjs":`./dist/duckdb-browser.cjs`,"./dist/duckdb-browser.mjs":`./dist/duckdb-browser.mjs`,"./dist/duckdb-browser-coi.pthread.worker.js":`./dist/duckdb-browser-coi.pthread.worker.js`,"./dist/duckdb-browser-coi.worker.js":`./dist/duckdb-browser-coi.worker.js`,"./dist/duckdb-browser-eh.worker.js":`./dist/duckdb-browser-eh.worker.js`,"./dist/duckdb-browser-mvp.worker.js":`./dist/duckdb-browser-mvp.worker.js`,"./dist/duckdb-node":`./dist/duckdb-node.cjs`,"./dist/duckdb-node.cjs":`./dist/duckdb-node.cjs`,"./dist/duckdb-node-blocking":`./dist/duckdb-node-blocking.cjs`,"./dist/duckdb-node-blocking.cjs":`./dist/duckdb-node-blocking.cjs`,"./dist/duckdb-node-eh.worker.cjs":`./dist/duckdb-node-eh.worker.cjs`,"./dist/duckdb-node-mvp.worker.cjs":`./dist/duckdb-node-mvp.worker.cjs`,"./blocking":{node:{types:`./dist/duckdb-node-blocking.d.ts`,require:`./dist/duckdb-node-blocking.cjs`,import:`./dist/duckdb-node-blocking.cjs`},types:`./dist/duckdb-node-blocking.d.ts`,import:`./dist/duckdb-node-blocking.mjs`,require:`./dist/duckdb-node-blocking.cjs`},".":{browser:{types:`./dist/duckdb-browser.d.ts`,import:`./dist/duckdb-browser.mjs`,require:`./dist/duckdb-browser.cjs`},node:{types:`./dist/duckdb-node.d.ts`,import:`./dist/duckdb-node.cjs`,require:`./dist/duckdb-node.cjs`},types:`./dist/duckdb-browser.d.ts`,import:`./dist/duckdb-browser.mjs`,require:`./dist/duckdb-browser.cjs`}}},mD=pD.name,hD=pD.version,gD=pD.version.split(`.`),_D=gD[0],vD=gD[1],yD=gD[2],bD=()=>typeof navigator>`u`,xD=()=>bD()?`node`:navigator.userAgent,SD=()=>xD().includes(`Firefox`),CD=()=>/^((?!chrome|android).)*safari/i.test(xD()),wD=null,TD=null,ED=null,DD=null,OD=null;async function kD(){return wD??=typeof BigInt64Array<`u`,TD??=await uD(),ED??=await fD(),DD??=await dD(),OD??=await lD(),{bigInt64Array:wD,crossOriginIsolated:bD()||globalThis.crossOriginIsolated||!1,wasmExceptions:TD,wasmSIMD:DD,wasmThreads:ED,wasmBulkMemory:OD}}async function AD(e){let t=await kD();if(t.wasmExceptions){if(t.wasmSIMD&&t.wasmThreads&&t.crossOriginIsolated&&e.coi)return{mainModule:e.coi.mainModule,mainWorker:e.coi.mainWorker,pthreadWorker:e.coi.pthreadWorker};if(e.eh)return{mainModule:e.eh.mainModule,mainWorker:e.eh.mainWorker,pthreadWorker:null}}return{mainModule:e.mvp.mainModule,mainWorker:e.mvp.mainWorker,pthreadWorker:null}}var jD=zE(BE());const MD=Symbol.for(`constructDateFrom`),ND={},PD={};function FD(e,t){try{let n=ND[e]||(ND[e]=new Intl.DateTimeFormat(`en-GB`,{timeZone:e,hour:`numeric`,timeZoneName:`longOffset`}).format),r=n(t).split(`GMT`)[1]||``;return r in PD?PD[r]:LD(r,r.split(`:`))}catch{if(e in PD)return PD[e];let t=e?.match(ID);return t?LD(e,t.slice(1)):NaN}}const ID=/([+-]\d\d):?(\d\d)?/;function LD(e,t){let n=+t[0],r=+(t[1]||0);return PD[e]=n>0?n*60+r:n*60-r}var RD=class e extends Date{constructor(...e){super(),e.length>1&&typeof e[e.length-1]==`string`&&(this.timeZone=e.pop()),this.internal=new Date,isNaN(FD(this.timeZone,this))?this.setTime(NaN):e.length?typeof e[0]==`number`&&(e.length===1||e.length===2&&typeof e[1]!=`number`)?this.setTime(e[0]):typeof e[0]==`string`?this.setTime(+new Date(e[0])):e[0]instanceof Date?this.setTime(+e[0]):(this.setTime(+new Date(...e)),HD(this,NaN),BD(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}withTimeZone(t){return new e(+this,t)}getTimezoneOffset(){return-FD(this.timeZone,this)}setTime(e){return Date.prototype.setTime.apply(this,arguments),BD(this),+this}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}};const zD=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!zD.test(e))return;let t=e.replace(zD,`$1UTC`);RD.prototype[t]&&(e.startsWith(`get`)?RD.prototype[e]=function(){return this.internal[t]()}:(RD.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),VD(this),+this},RD.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),BD(this),+this}))});function BD(e){e.internal.setTime(+e),e.internal.setUTCMinutes(e.internal.getUTCMinutes()-e.getTimezoneOffset())}function VD(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),HD(e)}function HD(e){let t=FD(e.timeZone,e),n=new Date(+e);n.setUTCHours(n.getUTCHours()-1);let r=-new Date(+e).getTimezoneOffset(),i=-new Date(+n).getTimezoneOffset(),a=r-i,o=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();a&&o&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+a);let s=r-t;s&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+s);let c=FD(e.timeZone,e),l=-new Date(+e).getTimezoneOffset(),u=l-c,d=c!==t,f=u-s;if(d&&f){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+f);let t=FD(e.timeZone,e),n=c-t;n&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+n),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+n))}}var UD=class e extends RD{static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}toISOString(){let[e,t,n]=this.tzComponents(),r=`${e}${t}:${n}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){let[e,t,n,r]=this.internal.toUTCString().split(` `);return`${e?.slice(0,-1)} ${n} ${t} ${r}`}toTimeString(){let e=this.internal.toUTCString().split(` `)[4],[t,n,r]=this.tzComponents();return`${e} GMT${t}${n}${r} (${WD(this.timeZone,this)})`}toLocaleString(e,t){return Date.prototype.toLocaleString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleDateString(e,t){return Date.prototype.toLocaleDateString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleTimeString(e,t){return Date.prototype.toLocaleTimeString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}tzComponents(){let e=this.getTimezoneOffset(),t=e>0?`-`:`+`,n=String(Math.floor(Math.abs(e)/60)).padStart(2,`0`),r=String(Math.abs(e)%60).padStart(2,`0`);return[t,n,r]}withTimeZone(t){return new e(+this,t)}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}};function WD(e,t){return new Intl.DateTimeFormat(`en-GB`,{timeZone:e,timeZoneName:`long`}).format(t).slice(12)}const GD=new TextDecoder(`utf-8`),KD=e=>GD.decode(e),qD=new TextEncoder,JD=e=>qD.encode(e),YD=e=>typeof e==`function`,XD=e=>e!=null&&Object(e)===e,ZD=e=>XD(e)&&YD(e.then),QD=e=>XD(e)&&YD(e[Symbol.iterator]),$D=e=>XD(e)&&YD(e[Symbol.asyncIterator]),eO=e=>XD(e)&&`done`in e&&`value`in e,tO=e=>XD(e)&&YD(e.clear)&&YD(e.bytes)&&YD(e.position)&&YD(e.setPosition)&&YD(e.capacity)&&YD(e.getBufferIdentifier)&&YD(e.createLong);var nO={};Dt(nO,{compareArrayLike:()=>VO,joinUint8Arrays:()=>oO,memcpy:()=>aO,rebaseValueOffsets:()=>BO,toArrayBufferView:()=>sO,toArrayBufferViewAsyncIterator:()=>AO,toArrayBufferViewIterator:()=>bO,toBigInt64Array:()=>dO,toBigUint64Array:()=>hO,toFloat32Array:()=>gO,toFloat32ArrayAsyncIterator:()=>LO,toFloat32ArrayIterator:()=>DO,toFloat64Array:()=>_O,toFloat64ArrayAsyncIterator:()=>RO,toFloat64ArrayIterator:()=>OO,toInt16Array:()=>lO,toInt16ArrayAsyncIterator:()=>MO,toInt16ArrayIterator:()=>SO,toInt32Array:()=>uO,toInt32ArrayAsyncIterator:()=>NO,toInt32ArrayIterator:()=>CO,toInt8Array:()=>cO,toInt8ArrayAsyncIterator:()=>jO,toInt8ArrayIterator:()=>xO,toUint16Array:()=>pO,toUint16ArrayAsyncIterator:()=>FO,toUint16ArrayIterator:()=>TO,toUint32Array:()=>mO,toUint32ArrayAsyncIterator:()=>IO,toUint32ArrayIterator:()=>EO,toUint8Array:()=>fO,toUint8ArrayAsyncIterator:()=>PO,toUint8ArrayIterator:()=>wO,toUint8ClampedArray:()=>vO,toUint8ClampedArrayAsyncIterator:()=>zO,toUint8ClampedArrayIterator:()=>kO});const rO=typeof SharedArrayBuffer<`u`?SharedArrayBuffer:ArrayBuffer;function iO(e){let t=e[0]?[e[0]]:[],n,r,i,a;for(let o,s,c=0,l=0,u=e.length;++ce+t.byteLength,0),i,a,o,s=0,c=-1,l=Math.min(t||1/0,r);for(let e=n.length;++csO(Int8Array,e),lO=e=>sO(Int16Array,e),uO=e=>sO(Int32Array,e),dO=e=>sO(BigInt64Array,e),fO=e=>sO(Uint8Array,e),pO=e=>sO(Uint16Array,e),mO=e=>sO(Uint32Array,e),hO=e=>sO(BigUint64Array,e),gO=e=>sO(Float32Array,e),_O=e=>sO(Float64Array,e),vO=e=>sO(Uint8ClampedArray,e),yO=e=>(e.next(),e);function*bO(e,t){let n=function*(e){yield e},r=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof rO?n(t):QD(t)?t:n(t);return yield*yO(function*(t){let n=null;do n=t.next(yield sO(e,n));while(!n.done)}(r[Symbol.iterator]())),new e}const xO=e=>bO(Int8Array,e),SO=e=>bO(Int16Array,e),CO=e=>bO(Int32Array,e),wO=e=>bO(Uint8Array,e),TO=e=>bO(Uint16Array,e),EO=e=>bO(Uint32Array,e),DO=e=>bO(Float32Array,e),OO=e=>bO(Float64Array,e),kO=e=>bO(Uint8ClampedArray,e);function AO(e,t){return k_(this,arguments,function*(){if(ZD(t))return yield O_(yield O_(yield*A_(j_(AO(e,yield O_(t))))));let n=function(e){return k_(this,arguments,function*(){yield yield O_(yield O_(e))})},r=function(e){return k_(this,arguments,function*(){yield O_(yield*A_(j_(yO(function*(e){let t=null;do t=e.next(yield t?.value);while(!t.done)}(e[Symbol.iterator]())))))})},i=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof rO?n(t):QD(t)?r(t):$D(t)?t:n(t);return yield O_(yield*A_(j_(yO(function(t){return k_(this,arguments,function*(){let n=null;do n=yield O_(t.next(yield yield O_(sO(e,n))));while(!n.done)})}(i[Symbol.asyncIterator]()))))),yield O_(new e)})}const jO=e=>AO(Int8Array,e),MO=e=>AO(Int16Array,e),NO=e=>AO(Int32Array,e),PO=e=>AO(Uint8Array,e),FO=e=>AO(Uint16Array,e),IO=e=>AO(Uint32Array,e),LO=e=>AO(Float32Array,e),RO=e=>AO(Float64Array,e),zO=e=>AO(Uint8ClampedArray,e);function BO(e,t,n){if(e!==0){n=n.slice(0,t);for(let t=-1,r=n.length;++t0)do if(e[n]!==t[n])return!1;while(++nXO});const YO=void 0;function XO(e){if(e===null)return`null`;if(e===YO)return`undefined`;switch(typeof e){case`number`:return`${e}`;case`bigint`:return`${e}`;case`string`:return`"${e}"`}return typeof e[Symbol.toPrimitive]==`function`?e[Symbol.toPrimitive](`string`):ArrayBuffer.isView(e)?e instanceof BigInt64Array||e instanceof BigUint64Array?`[${[...e].map(e=>XO(e))}]`:`[${e}]`:ArrayBuffer.isView(e)?`[${e}]`:JSON.stringify(e,(e,t)=>typeof t==`bigint`?`${t}`:t)}function ZO(e){if(typeof e==`bigint`&&(e<-(2**53-1)||e>2**53-1))throw TypeError(`${e} is not safe to convert to a number.`);return Number(e)}function QO(e,t){return ZO(e/t)+ZO(e%t)/ZO(t)}var $O={};Dt($O,{BN:()=>dk,bigNumToBigInt:()=>lk,bigNumToNumber:()=>sk,bigNumToString:()=>ck,isArrowBigNumSymbol:()=>ek});const ek=Symbol.for(`isArrowBigNum`);function tk(e,...t){return t.length===0?Object.setPrototypeOf(sO(this.TypedArray,e),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(e,...t),this.constructor.prototype)}tk.prototype[ek]=!0,tk.prototype.toJSON=function(){return`"${ck(this)}"`},tk.prototype.valueOf=function(e){return sk(this,e)},tk.prototype.toString=function(){return ck(this)},tk.prototype[Symbol.toPrimitive]=function(e=`default`){switch(e){case`number`:return sk(this);case`string`:return ck(this);case`default`:return lk(this)}return ck(this)};function nk(...e){return tk.apply(this,e)}function rk(...e){return tk.apply(this,e)}function ik(...e){return tk.apply(this,e)}Object.setPrototypeOf(nk.prototype,Object.create(Int32Array.prototype)),Object.setPrototypeOf(rk.prototype,Object.create(Uint32Array.prototype)),Object.setPrototypeOf(ik.prototype,Object.create(Uint32Array.prototype)),Object.assign(nk.prototype,tk.prototype,{constructor:nk,signed:!0,TypedArray:Int32Array,BigIntArray:BigInt64Array}),Object.assign(rk.prototype,tk.prototype,{constructor:rk,signed:!1,TypedArray:Uint32Array,BigIntArray:BigUint64Array}),Object.assign(ik.prototype,tk.prototype,{constructor:ik,signed:!0,TypedArray:Uint32Array,BigIntArray:BigUint64Array});const ak=BigInt(4294967296)*BigInt(4294967296),ok=ak-BigInt(1);function sk(e,t){let{buffer:n,byteOffset:r,byteLength:i,signed:a}=e,o=new BigUint64Array(n,r,i/8),s=a&&o.at(-1)&BigInt(1)<0){let e=BigInt(`1`.padEnd(t+1,`0`)),n=c/e,r=s?-(c%e):c%e,i=ZO(n),a=`${r}`.padStart(t,`0`),o=s&&i===0?`-`:``;return+`${o}${i}.${a}`}return ZO(c)}function ck(e){if(e.byteLength===8){let t=new e.BigIntArray(e.buffer,e.byteOffset,1);return`${t[0]}`}if(!e.signed)return uk(e);let t=new Uint16Array(e.buffer,e.byteOffset,e.byteLength/2),n=new Int16Array([t.at(-1)])[0];if(n>=0)return uk(e);t=t.slice();let r=1;for(let e=0;e(e.children=null,e.ArrayType=Array,e.OffsetArrayType=Int32Array,e[Symbol.toStringTag]=`DataType`))(Pk.prototype);var Fk=class extends Pk{constructor(){super(J.Null)}toString(){return`Null`}};pk=Symbol.toStringTag,Fk[pk]=(e=>e[Symbol.toStringTag]=`Null`)(Fk.prototype);var Ik=class extends Pk{constructor(e,t){super(J.Int),this.isSigned=e,this.bitWidth=t}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?BigInt64Array:BigUint64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`${this.isSigned?`I`:`Ui`}nt${this.bitWidth}`}};mk=Symbol.toStringTag,Ik[mk]=(e=>(e.isSigned=null,e.bitWidth=null,e[Symbol.toStringTag]=`Int`))(Ik.prototype);var Lk=class extends Ik{constructor(){super(!0,8)}get ArrayType(){return Int8Array}},Rk=class extends Ik{constructor(){super(!0,16)}get ArrayType(){return Int16Array}},zk=class extends Ik{constructor(){super(!0,32)}get ArrayType(){return Int32Array}},Bk=class extends Ik{constructor(){super(!0,64)}get ArrayType(){return BigInt64Array}},Vk=class extends Ik{constructor(){super(!1,8)}get ArrayType(){return Uint8Array}},Hk=class extends Ik{constructor(){super(!1,16)}get ArrayType(){return Uint16Array}},Uk=class extends Ik{constructor(){super(!1,32)}get ArrayType(){return Uint32Array}},Wk=class extends Ik{constructor(){super(!1,64)}get ArrayType(){return BigUint64Array}};Object.defineProperty(Lk.prototype,`ArrayType`,{value:Int8Array}),Object.defineProperty(Rk.prototype,`ArrayType`,{value:Int16Array}),Object.defineProperty(zk.prototype,`ArrayType`,{value:Int32Array}),Object.defineProperty(Bk.prototype,`ArrayType`,{value:BigInt64Array}),Object.defineProperty(Vk.prototype,`ArrayType`,{value:Uint8Array}),Object.defineProperty(Hk.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(Uk.prototype,`ArrayType`,{value:Uint32Array}),Object.defineProperty(Wk.prototype,`ArrayType`,{value:BigUint64Array});var Gk=class extends Pk{constructor(e){super(J.Float),this.precision=e}get ArrayType(){switch(this.precision){case UO.HALF:return Uint16Array;case UO.SINGLE:return Float32Array;case UO.DOUBLE:return Float64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`Float${this.precision<<5||16}`}};hk=Symbol.toStringTag,Gk[hk]=(e=>(e.precision=null,e[Symbol.toStringTag]=`Float`))(Gk.prototype);var Kk=class extends Gk{constructor(){super(UO.HALF)}},qk=class extends Gk{constructor(){super(UO.SINGLE)}},Jk=class extends Gk{constructor(){super(UO.DOUBLE)}};Object.defineProperty(Kk.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(qk.prototype,`ArrayType`,{value:Float32Array}),Object.defineProperty(Jk.prototype,`ArrayType`,{value:Float64Array});var Yk=class extends Pk{constructor(){super(J.Binary)}toString(){return`Binary`}};gk=Symbol.toStringTag,Yk[gk]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Binary`))(Yk.prototype);var Xk=class extends Pk{constructor(){super(J.LargeBinary)}toString(){return`LargeBinary`}};_k=Symbol.toStringTag,Xk[_k]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeBinary`))(Xk.prototype);var Zk=class extends Pk{constructor(){super(J.Utf8)}toString(){return`Utf8`}};vk=Symbol.toStringTag,Zk[vk]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Utf8`))(Zk.prototype);var Qk=class extends Pk{constructor(){super(J.LargeUtf8)}toString(){return`LargeUtf8`}};yk=Symbol.toStringTag,Qk[yk]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeUtf8`))(Qk.prototype);var $k=class extends Pk{constructor(){super(J.Bool)}toString(){return`Bool`}};bk=Symbol.toStringTag,$k[bk]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Bool`))($k.prototype);var eA=class extends Pk{constructor(e,t,n=128){super(J.Decimal),this.scale=e,this.precision=t,this.bitWidth=n}toString(){return`Decimal[${this.precision}e${this.scale>0?`+`:``}${this.scale}]`}};xk=Symbol.toStringTag,eA[xk]=(e=>(e.scale=null,e.precision=null,e.ArrayType=Uint32Array,e[Symbol.toStringTag]=`Decimal`))(eA.prototype);var tA=class extends Pk{constructor(e){super(J.Date),this.unit=e}toString(){return`Date${(this.unit+1)*32}<${WO[this.unit]}>`}get ArrayType(){return this.unit===WO.DAY?Int32Array:BigInt64Array}};Sk=Symbol.toStringTag,tA[Sk]=(e=>(e.unit=null,e[Symbol.toStringTag]=`Date`))(tA.prototype);var nA=class extends Pk{constructor(e,t){super(J.Time),this.unit=e,this.bitWidth=t}toString(){return`Time${this.bitWidth}<${GO[this.unit]}>`}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return BigInt64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}};Ck=Symbol.toStringTag,nA[Ck]=(e=>(e.unit=null,e.bitWidth=null,e[Symbol.toStringTag]=`Time`))(nA.prototype);var rA=class extends Pk{constructor(e,t){super(J.Timestamp),this.unit=e,this.timezone=t}toString(){return`Timestamp<${GO[this.unit]}${this.timezone?`, ${this.timezone}`:``}>`}};wk=Symbol.toStringTag,rA[wk]=(e=>(e.unit=null,e.timezone=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Timestamp`))(rA.prototype);var iA=class extends Pk{constructor(e){super(J.Interval),this.unit=e}toString(){return`Interval<${KO[this.unit]}>`}};Tk=Symbol.toStringTag,iA[Tk]=(e=>(e.unit=null,e.ArrayType=Int32Array,e[Symbol.toStringTag]=`Interval`))(iA.prototype);var aA=class extends Pk{constructor(e){super(J.Duration),this.unit=e}toString(){return`Duration<${GO[this.unit]}>`}};Ek=Symbol.toStringTag,aA[Ek]=(e=>(e.unit=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Duration`))(aA.prototype);var oA=class extends Pk{constructor(e){super(J.List),this.children=[e]}toString(){return`List<${this.valueType}>`}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};Dk=Symbol.toStringTag,oA[Dk]=(e=>(e.children=null,e[Symbol.toStringTag]=`List`))(oA.prototype);var sA=class extends Pk{constructor(e){super(J.Struct),this.children=e}toString(){return`Struct<{${this.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};Ok=Symbol.toStringTag,sA[Ok]=(e=>(e.children=null,e[Symbol.toStringTag]=`Struct`))(sA.prototype);var cA=class extends Pk{constructor(e,t,n){super(J.Union),this.mode=e,this.children=n,this.typeIds=t=Int32Array.from(t),this.typeIdToChildIndex=t.reduce((e,t,n)=>(e[t]=n)&&e||e,Object.create(null))}toString(){return`${this[Symbol.toStringTag]}<${this.children.map(e=>`${e.type}`).join(` | `)}>`}};kk=Symbol.toStringTag,cA[kk]=(e=>(e.mode=null,e.typeIds=null,e.children=null,e.typeIdToChildIndex=null,e.ArrayType=Int8Array,e[Symbol.toStringTag]=`Union`))(cA.prototype);var lA=class extends Pk{constructor(e){super(J.FixedSizeBinary),this.byteWidth=e}toString(){return`FixedSizeBinary[${this.byteWidth}]`}};Ak=Symbol.toStringTag,lA[Ak]=(e=>(e.byteWidth=null,e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`FixedSizeBinary`))(lA.prototype);var uA=class extends Pk{constructor(e,t){super(J.FixedSizeList),this.listSize=e,this.children=[t]}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}};jk=Symbol.toStringTag,uA[jk]=(e=>(e.children=null,e.listSize=null,e[Symbol.toStringTag]=`FixedSizeList`))(uA.prototype);var dA=class extends Pk{constructor(e,t=!1){var n,r,i;if(super(J.Map),this.children=[e],this.keysSorted=t,e&&(e.name=`entries`,(n=e?.type)?.children)){let t=(r=e?.type)?.children[0];t&&(t.name=`key`);let n=(i=e?.type)?.children[1];n&&(n.name=`value`)}}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return`Map<{${this.children[0].type.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};Mk=Symbol.toStringTag,dA[Mk]=(e=>(e.children=null,e.keysSorted=null,e[Symbol.toStringTag]=`Map_`))(dA.prototype);const fA=(e=>()=>++e)(-1);var pA=class extends Pk{constructor(e,t,n,r){super(J.Dictionary),this.indices=t,this.dictionary=e,this.isOrdered=r||!1,this.id=n==null?fA():ZO(n)}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return`Dictionary<${this.indices}, ${this.dictionary}>`}};Nk=Symbol.toStringTag,pA[Nk]=(e=>(e.id=null,e.indices=null,e.isOrdered=null,e.dictionary=null,e[Symbol.toStringTag]=`Dictionary`))(pA.prototype);function mA(e){let t=e;switch(e.typeId){case J.Decimal:return e.bitWidth/32;case J.Interval:return t.unit===KO.MONTH_DAY_NANO?4:1+t.unit;case J.FixedSizeList:return t.listSize;case J.FixedSizeBinary:return t.byteWidth;default:return 1}}var hA=class{visitMany(e,...t){return e.map((e,n)=>this.visit(e,...t.map(e=>e[n])))}visit(...e){return this.getVisitFn(e[0],!1).apply(this,e)}getVisitFn(e,t=!0){return gA(this,e,t)}getVisitFnByTypeId(e,t=!0){return _A(this,e,t)}visitNull(e,...t){return null}visitBool(e,...t){return null}visitInt(e,...t){return null}visitFloat(e,...t){return null}visitUtf8(e,...t){return null}visitLargeUtf8(e,...t){return null}visitBinary(e,...t){return null}visitLargeBinary(e,...t){return null}visitFixedSizeBinary(e,...t){return null}visitDate(e,...t){return null}visitTimestamp(e,...t){return null}visitTime(e,...t){return null}visitDecimal(e,...t){return null}visitList(e,...t){return null}visitStruct(e,...t){return null}visitUnion(e,...t){return null}visitDictionary(e,...t){return null}visitInterval(e,...t){return null}visitDuration(e,...t){return null}visitFixedSizeList(e,...t){return null}visitMap(e,...t){return null}};function gA(e,t,n=!0){return typeof t==`number`?_A(e,t,n):typeof t==`string`&&t in J?_A(e,J[t],n):t&&t instanceof Pk?_A(e,vA(t),n):t?.type&&t.type instanceof Pk?_A(e,vA(t.type),n):_A(e,J.NONE,n)}function _A(e,t,n=!0){let r=null;switch(t){case J.Null:r=e.visitNull;break;case J.Bool:r=e.visitBool;break;case J.Int:r=e.visitInt;break;case J.Int8:r=e.visitInt8||e.visitInt;break;case J.Int16:r=e.visitInt16||e.visitInt;break;case J.Int32:r=e.visitInt32||e.visitInt;break;case J.Int64:r=e.visitInt64||e.visitInt;break;case J.Uint8:r=e.visitUint8||e.visitInt;break;case J.Uint16:r=e.visitUint16||e.visitInt;break;case J.Uint32:r=e.visitUint32||e.visitInt;break;case J.Uint64:r=e.visitUint64||e.visitInt;break;case J.Float:r=e.visitFloat;break;case J.Float16:r=e.visitFloat16||e.visitFloat;break;case J.Float32:r=e.visitFloat32||e.visitFloat;break;case J.Float64:r=e.visitFloat64||e.visitFloat;break;case J.Utf8:r=e.visitUtf8;break;case J.LargeUtf8:r=e.visitLargeUtf8;break;case J.Binary:r=e.visitBinary;break;case J.LargeBinary:r=e.visitLargeBinary;break;case J.FixedSizeBinary:r=e.visitFixedSizeBinary;break;case J.Date:r=e.visitDate;break;case J.DateDay:r=e.visitDateDay||e.visitDate;break;case J.DateMillisecond:r=e.visitDateMillisecond||e.visitDate;break;case J.Timestamp:r=e.visitTimestamp;break;case J.TimestampSecond:r=e.visitTimestampSecond||e.visitTimestamp;break;case J.TimestampMillisecond:r=e.visitTimestampMillisecond||e.visitTimestamp;break;case J.TimestampMicrosecond:r=e.visitTimestampMicrosecond||e.visitTimestamp;break;case J.TimestampNanosecond:r=e.visitTimestampNanosecond||e.visitTimestamp;break;case J.Time:r=e.visitTime;break;case J.TimeSecond:r=e.visitTimeSecond||e.visitTime;break;case J.TimeMillisecond:r=e.visitTimeMillisecond||e.visitTime;break;case J.TimeMicrosecond:r=e.visitTimeMicrosecond||e.visitTime;break;case J.TimeNanosecond:r=e.visitTimeNanosecond||e.visitTime;break;case J.Decimal:r=e.visitDecimal;break;case J.List:r=e.visitList;break;case J.Struct:r=e.visitStruct;break;case J.Union:r=e.visitUnion;break;case J.DenseUnion:r=e.visitDenseUnion||e.visitUnion;break;case J.SparseUnion:r=e.visitSparseUnion||e.visitUnion;break;case J.Dictionary:r=e.visitDictionary;break;case J.Interval:r=e.visitInterval;break;case J.IntervalDayTime:r=e.visitIntervalDayTime||e.visitInterval;break;case J.IntervalYearMonth:r=e.visitIntervalYearMonth||e.visitInterval;break;case J.IntervalMonthDayNano:r=e.visitIntervalMonthDayNano||e.visitInterval;break;case J.Duration:r=e.visitDuration;break;case J.DurationSecond:r=e.visitDurationSecond||e.visitDuration;break;case J.DurationMillisecond:r=e.visitDurationMillisecond||e.visitDuration;break;case J.DurationMicrosecond:r=e.visitDurationMicrosecond||e.visitDuration;break;case J.DurationNanosecond:r=e.visitDurationNanosecond||e.visitDuration;break;case J.FixedSizeList:r=e.visitFixedSizeList;break;case J.Map:r=e.visitMap;break}if(typeof r==`function`)return r;if(!n)return()=>null;throw Error(`Unrecognized type '${J[t]}'`)}function vA(e){switch(e.typeId){case J.Null:return J.Null;case J.Int:{let{bitWidth:t,isSigned:n}=e;switch(t){case 8:return n?J.Int8:J.Uint8;case 16:return n?J.Int16:J.Uint16;case 32:return n?J.Int32:J.Uint32;case 64:return n?J.Int64:J.Uint64}return J.Int}case J.Float:switch(e.precision){case UO.HALF:return J.Float16;case UO.SINGLE:return J.Float32;case UO.DOUBLE:return J.Float64}return J.Float;case J.Binary:return J.Binary;case J.LargeBinary:return J.LargeBinary;case J.Utf8:return J.Utf8;case J.LargeUtf8:return J.LargeUtf8;case J.Bool:return J.Bool;case J.Decimal:return J.Decimal;case J.Time:switch(e.unit){case GO.SECOND:return J.TimeSecond;case GO.MILLISECOND:return J.TimeMillisecond;case GO.MICROSECOND:return J.TimeMicrosecond;case GO.NANOSECOND:return J.TimeNanosecond}return J.Time;case J.Timestamp:switch(e.unit){case GO.SECOND:return J.TimestampSecond;case GO.MILLISECOND:return J.TimestampMillisecond;case GO.MICROSECOND:return J.TimestampMicrosecond;case GO.NANOSECOND:return J.TimestampNanosecond}return J.Timestamp;case J.Date:switch(e.unit){case WO.DAY:return J.DateDay;case WO.MILLISECOND:return J.DateMillisecond}return J.Date;case J.Interval:switch(e.unit){case KO.DAY_TIME:return J.IntervalDayTime;case KO.YEAR_MONTH:return J.IntervalYearMonth;case KO.MONTH_DAY_NANO:return J.IntervalMonthDayNano}return J.Interval;case J.Duration:switch(e.unit){case GO.SECOND:return J.DurationSecond;case GO.MILLISECOND:return J.DurationMillisecond;case GO.MICROSECOND:return J.DurationMicrosecond;case GO.NANOSECOND:return J.DurationNanosecond}return J.Duration;case J.Map:return J.Map;case J.List:return J.List;case J.Struct:return J.Struct;case J.Union:switch(e.mode){case HO.Dense:return J.DenseUnion;case HO.Sparse:return J.SparseUnion}return J.Union;case J.FixedSizeBinary:return J.FixedSizeBinary;case J.FixedSizeList:return J.FixedSizeList;case J.Dictionary:return J.Dictionary}throw Error(`Unrecognized type '${J[e.typeId]}'`)}hA.prototype.visitInt8=null,hA.prototype.visitInt16=null,hA.prototype.visitInt32=null,hA.prototype.visitInt64=null,hA.prototype.visitUint8=null,hA.prototype.visitUint16=null,hA.prototype.visitUint32=null,hA.prototype.visitUint64=null,hA.prototype.visitFloat16=null,hA.prototype.visitFloat32=null,hA.prototype.visitFloat64=null,hA.prototype.visitDateDay=null,hA.prototype.visitDateMillisecond=null,hA.prototype.visitTimestampSecond=null,hA.prototype.visitTimestampMillisecond=null,hA.prototype.visitTimestampMicrosecond=null,hA.prototype.visitTimestampNanosecond=null,hA.prototype.visitTimeSecond=null,hA.prototype.visitTimeMillisecond=null,hA.prototype.visitTimeMicrosecond=null,hA.prototype.visitTimeNanosecond=null,hA.prototype.visitDenseUnion=null,hA.prototype.visitSparseUnion=null,hA.prototype.visitIntervalDayTime=null,hA.prototype.visitIntervalYearMonth=null,hA.prototype.visitIntervalMonthDayNano=null,hA.prototype.visitDuration=null,hA.prototype.visitDurationSecond=null,hA.prototype.visitDurationMillisecond=null,hA.prototype.visitDurationMicrosecond=null,hA.prototype.visitDurationNanosecond=null;var yA={};Dt(yA,{float64ToUint16:()=>CA,uint16ToFloat64:()=>SA});const bA=new Float64Array(1),xA=new Uint32Array(bA.buffer);function SA(e){let t=(e&31744)>>10,n=(e&1023)/1024,r=(-1)**((e&32768)>>15);switch(t){case 31:return r*(n?NaN:1/0);case 0:return r*(n?6103515625e-14*n:0)}return r*2**(t-15)*(1+n)}function CA(e){if(e!==e)return 32256;bA[0]=e;let t=(xA[1]&2147483648)>>16&65535,n=xA[1]&2146435072,r=0;return n>=1089470464?xA[0]>0?n=31744:(n=(n&2080374784)>>16,r=(xA[1]&1048575)>>10):n<=1056964608?(r=1048576+(xA[1]&1048575),r=1048576+(r<<(n>>20)-998)>>21,n=0):(n=n-1056964608>>10,r=(xA[1]&1048575)+512>>10),t|n|r&65535}var wA=class extends hA{};function TA(e){return(t,n,r)=>{if(t.setValid(n,r!=null))return e(t,n,r)}}const EA=(e,t,n)=>{e[t]=Math.floor(n/864e5)},DA=(e,t,n,r)=>{if(n+1{let i=e+n;r?t[i>>3]|=1<>3]&=~(1<{e[t]=n},AA=({values:e},t,n)=>{e[t]=n},jA=({values:e},t,n)=>{e[t]=CA(n)},MA=(e,t,n)=>{switch(e.type.precision){case UO.HALF:return jA(e,t,n);case UO.SINGLE:case UO.DOUBLE:return AA(e,t,n)}},NA=({values:e},t,n)=>{EA(e,t,n.valueOf())},PA=({values:e},t,n)=>{e[t]=BigInt(n)},FA=({stride:e,values:t},n,r)=>{t.set(r.subarray(0,e),e*n)},IA=({values:e,valueOffsets:t},n,r)=>DA(e,t,n,r),LA=({values:e,valueOffsets:t},n,r)=>DA(e,t,n,JD(r)),RA=(e,t,n)=>{e.type.unit===WO.DAY?NA(e,t,n):PA(e,t,n)},zA=({values:e},t,n)=>{e[t]=BigInt(n/1e3)},BA=({values:e},t,n)=>{e[t]=BigInt(n)},VA=({values:e},t,n)=>{e[t]=BigInt(n*1e3)},HA=({values:e},t,n)=>{e[t]=BigInt(n*1e6)},UA=(e,t,n)=>{switch(e.type.unit){case GO.SECOND:return zA(e,t,n);case GO.MILLISECOND:return BA(e,t,n);case GO.MICROSECOND:return VA(e,t,n);case GO.NANOSECOND:return HA(e,t,n)}},WA=({values:e},t,n)=>{e[t]=n},GA=({values:e},t,n)=>{e[t]=n},KA=({values:e},t,n)=>{e[t]=n},qA=({values:e},t,n)=>{e[t]=n},JA=(e,t,n)=>{switch(e.type.unit){case GO.SECOND:return WA(e,t,n);case GO.MILLISECOND:return GA(e,t,n);case GO.MICROSECOND:return KA(e,t,n);case GO.NANOSECOND:return qA(e,t,n)}},YA=({values:e,stride:t},n,r)=>{e.set(r.subarray(0,t),t*n)},XA=(e,t,n)=>{let r=e.children[0],i=e.valueOffsets,a=_j.getVisitFn(r);if(Array.isArray(n))for(let e=-1,o=i[t],s=i[t+1];o{let r=e.children[0],{valueOffsets:i}=e,a=_j.getVisitFn(r),{[t]:o,[t+1]:s}=i,c=n instanceof Map?n.entries():Object.entries(n);for(let e of c)if(a(r,o,e),++o>=s)break},QA=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[a]),$A=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(a)),ej=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(i.name)),tj=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[i.name]),nj=(e,t,n)=>{let r=e.type.children.map(e=>_j.getVisitFn(e.type)),i=n instanceof Map?ej(t,n):n instanceof bN?$A(t,n):Array.isArray(n)?QA(t,n):tj(t,n);e.type.children.forEach((t,n)=>i(r[n],e.children[n],t,n))},rj=(e,t,n)=>{e.type.mode===HO.Dense?ij(e,t,n):aj(e,t,n)},ij=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];_j.visit(i,e.valueOffsets[t],n)},aj=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];_j.visit(i,t,n)},oj=(e,t,n)=>{var r;(r=e.dictionary)==null||r.set(e.values[t],n)},sj=(e,t,n)=>{switch(e.type.unit){case KO.YEAR_MONTH:return lj(e,t,n);case KO.DAY_TIME:return cj(e,t,n);case KO.MONTH_DAY_NANO:return uj(e,t,n)}},cj=({values:e},t,n)=>{e.set(n.subarray(0,2),2*t)},lj=({values:e},t,n)=>{e[t]=n[0]*12+n[1]%12},uj=({values:e,stride:t},n,r)=>{e.set(r.subarray(0,t),t*n)},dj=({values:e},t,n)=>{e[t]=n},fj=({values:e},t,n)=>{e[t]=n},pj=({values:e},t,n)=>{e[t]=n},mj=({values:e},t,n)=>{e[t]=n},hj=(e,t,n)=>{switch(e.type.unit){case GO.SECOND:return dj(e,t,n);case GO.MILLISECOND:return fj(e,t,n);case GO.MICROSECOND:return pj(e,t,n);case GO.NANOSECOND:return mj(e,t,n)}},gj=(e,t,n)=>{let{stride:r}=e,i=e.children[0],a=_j.getVisitFn(i);if(Array.isArray(n))for(let e=-1,o=t*r;++e`${XO(e)}: ${XO(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}[Symbol.iterator](){return new xj(this[vj],this[yj])}},xj=class{constructor(e,t){this.childIndex=0,this.children=e.children,this.rowIndex=t,this.childFields=e.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){let e=this.childIndex;return ee.name)}has(e,t){return e[vj].type.children.some(e=>e.name===t)}getOwnPropertyDescriptor(e,t){if(e[vj].type.children.some(e=>e.name===t))return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[vj].type.children.findIndex(e=>e.name===t);if(n!==-1){let r=hM.visit(e[vj].children[n],e[yj]);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[vj].type.children.findIndex(e=>e.name===t);return r===-1?Reflect.has(e,t)||typeof t==`symbol`?Reflect.set(e,t,n):!1:(_j.visit(e[vj].children[r],e[yj],n),Reflect.set(e,t,n))}};const Cj=new Sj;var wj=class extends hA{};function Tj(e){return(t,n)=>t.getValid(n)?e(t,n):null}const Ej=(e,t)=>864e5*e[t],Dj=(e,t)=>null,Oj=(e,t,n)=>{if(n+1>=t.length)return null;let r=ZO(t[n]),i=ZO(t[n+1]);return e.subarray(r,i)},kj=({offset:e,values:t},n)=>{let r=e+n,i=t[r>>3];return(i&1<Ej(e,t),jj=({values:e},t)=>ZO(e[t]),Mj=({stride:e,values:t},n)=>t[e*n],Nj=({stride:e,values:t},n)=>SA(t[e*n]),Pj=({values:e},t)=>e[t],Fj=({stride:e,values:t},n)=>t.subarray(e*n,e*(n+1)),Ij=({values:e,valueOffsets:t},n)=>Oj(e,t,n),Lj=({values:e,valueOffsets:t},n)=>{let r=Oj(e,t,n);return r===null?null:KD(r)},Rj=({values:e},t)=>e[t],zj=({type:e,values:t},n)=>e.precision===UO.HALF?SA(t[n]):t[n],Bj=(e,t)=>e.type.unit===WO.DAY?Aj(e,t):jj(e,t),Vj=({values:e},t)=>1e3*ZO(e[t]),Hj=({values:e},t)=>ZO(e[t]),Uj=({values:e},t)=>QO(e[t],BigInt(1e3)),Wj=({values:e},t)=>QO(e[t],BigInt(1e6)),Gj=(e,t)=>{switch(e.type.unit){case GO.SECOND:return Vj(e,t);case GO.MILLISECOND:return Hj(e,t);case GO.MICROSECOND:return Uj(e,t);case GO.NANOSECOND:return Wj(e,t)}},Kj=({values:e},t)=>e[t],qj=({values:e},t)=>e[t],Jj=({values:e},t)=>e[t],Yj=({values:e},t)=>e[t],Xj=(e,t)=>{switch(e.type.unit){case GO.SECOND:return Kj(e,t);case GO.MILLISECOND:return qj(e,t);case GO.MICROSECOND:return Jj(e,t);case GO.NANOSECOND:return Yj(e,t)}},Zj=({values:e,stride:t},n)=>dk.decimal(e.subarray(t*n,t*(n+1))),Qj=(e,t)=>{let{valueOffsets:n,stride:r,children:i}=e,{[t*r]:a,[t*r+1]:o}=n,s=i[0],c=s.slice(a,o-a);return new bN([c])},$j=(e,t)=>{let{valueOffsets:n,children:r}=e,{[t]:i,[t+1]:a}=n,o=r[0];return new bM(o.slice(i,a-i))},eM=(e,t)=>new bj(e,t),tM=(e,t)=>e.type.mode===HO.Dense?nM(e,t):rM(e,t),nM=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return hM.visit(r,e.valueOffsets[t])},rM=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return hM.visit(r,t)},iM=(e,t)=>{var n;return(n=e.dictionary)?.get(e.values[t])},aM=(e,t)=>e.type.unit===KO.MONTH_DAY_NANO?cM(e,t):e.type.unit===KO.DAY_TIME?oM(e,t):sM(e,t),oM=({values:e},t)=>e.subarray(2*t,2*(t+1)),sM=({values:e},t)=>{let n=e[t],r=new Int32Array(2);return r[0]=Math.trunc(n/12),r[1]=Math.trunc(n%12),r},cM=({values:e},t)=>e.subarray(4*t,4*(t+1)),lM=({values:e},t)=>e[t],uM=({values:e},t)=>e[t],dM=({values:e},t)=>e[t],fM=({values:e},t)=>e[t],pM=(e,t)=>{switch(e.type.unit){case GO.SECOND:return lM(e,t);case GO.MILLISECOND:return uM(e,t);case GO.MICROSECOND:return dM(e,t);case GO.NANOSECOND:return fM(e,t)}},mM=(e,t)=>{let{stride:n,children:r}=e,i=r[0],a=i.slice(t*n,n);return new bN([a])};wj.prototype.visitNull=Tj(Dj),wj.prototype.visitBool=Tj(kj),wj.prototype.visitInt=Tj(Rj),wj.prototype.visitInt8=Tj(Mj),wj.prototype.visitInt16=Tj(Mj),wj.prototype.visitInt32=Tj(Mj),wj.prototype.visitInt64=Tj(Pj),wj.prototype.visitUint8=Tj(Mj),wj.prototype.visitUint16=Tj(Mj),wj.prototype.visitUint32=Tj(Mj),wj.prototype.visitUint64=Tj(Pj),wj.prototype.visitFloat=Tj(zj),wj.prototype.visitFloat16=Tj(Nj),wj.prototype.visitFloat32=Tj(Mj),wj.prototype.visitFloat64=Tj(Mj),wj.prototype.visitUtf8=Tj(Lj),wj.prototype.visitLargeUtf8=Tj(Lj),wj.prototype.visitBinary=Tj(Ij),wj.prototype.visitLargeBinary=Tj(Ij),wj.prototype.visitFixedSizeBinary=Tj(Fj),wj.prototype.visitDate=Tj(Bj),wj.prototype.visitDateDay=Tj(Aj),wj.prototype.visitDateMillisecond=Tj(jj),wj.prototype.visitTimestamp=Tj(Gj),wj.prototype.visitTimestampSecond=Tj(Vj),wj.prototype.visitTimestampMillisecond=Tj(Hj),wj.prototype.visitTimestampMicrosecond=Tj(Uj),wj.prototype.visitTimestampNanosecond=Tj(Wj),wj.prototype.visitTime=Tj(Xj),wj.prototype.visitTimeSecond=Tj(Kj),wj.prototype.visitTimeMillisecond=Tj(qj),wj.prototype.visitTimeMicrosecond=Tj(Jj),wj.prototype.visitTimeNanosecond=Tj(Yj),wj.prototype.visitDecimal=Tj(Zj),wj.prototype.visitList=Tj(Qj),wj.prototype.visitStruct=Tj(eM),wj.prototype.visitUnion=Tj(tM),wj.prototype.visitDenseUnion=Tj(nM),wj.prototype.visitSparseUnion=Tj(rM),wj.prototype.visitDictionary=Tj(iM),wj.prototype.visitInterval=Tj(aM),wj.prototype.visitIntervalDayTime=Tj(oM),wj.prototype.visitIntervalYearMonth=Tj(sM),wj.prototype.visitIntervalMonthDayNano=Tj(cM),wj.prototype.visitDuration=Tj(pM),wj.prototype.visitDurationSecond=Tj(lM),wj.prototype.visitDurationMillisecond=Tj(uM),wj.prototype.visitDurationMicrosecond=Tj(dM),wj.prototype.visitDurationNanosecond=Tj(fM),wj.prototype.visitFixedSizeList=Tj(mM),wj.prototype.visitMap=Tj($j);const hM=new wj,gM=Symbol.for(`keys`),_M=Symbol.for(`vals`),vM=Symbol.for(`kKeysAsStrings`),yM=Symbol.for(`_kKeysAsStrings`);var bM=class{constructor(e){return this[gM]=new bN([e.children[0]]).memoize(),this[_M]=e.children[1],new Proxy(this,new SM)}get[vM](){return this[yM]||(this[yM]=Array.from(this[gM].toArray(),String))}[Symbol.iterator](){return new xM(this[gM],this[_M])}get size(){return this[gM].length}toArray(){return Object.values(this.toJSON())}toJSON(){let e=this[gM],t=this[_M],n={};for(let r=-1,i=e.length;++r`${XO(e)}: ${XO(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}},xM=class{constructor(e,t){this.keys=e,this.vals=t,this.keyIndex=0,this.numKeys=e.length}[Symbol.iterator](){return this}next(){let e=this.keyIndex;return e===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(e),hM.visit(this.vals,e)]})}},SM=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(e){return e[vM]}has(e,t){return e[vM].includes(t)}getOwnPropertyDescriptor(e,t){let n=e[vM].indexOf(t);if(n!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[vM].indexOf(t);if(n!==-1){let r=hM.visit(Reflect.get(e,_M),n);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[vM].indexOf(t);return r===-1?Reflect.has(e,t)?Reflect.set(e,t,n):!1:(_j.visit(Reflect.get(e,_M),r,n),Reflect.set(e,t,n))}};Object.defineProperties(bM.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:`Row`},[gM]:{writable:!0,enumerable:!1,configurable:!1,value:null},[_M]:{writable:!0,enumerable:!1,configurable:!1,value:null},[yM]:{writable:!0,enumerable:!1,configurable:!1,value:null}});var CM={};Dt(CM,{clampRange:()=>TM,createElementComparator:()=>OM,wrapIndex:()=>EM});let wM;function TM(e,t,n,r){let{length:i=0}=e,a=typeof t==`number`?t:0,o=typeof n==`number`?n:i;return a<0&&(a=(a%i+i)%i),o<0&&(o=(o%i+i)%i),oi&&(o=i),r?r(e,a,o):[a,o]}const EM=(e,t)=>e<0?t+e:e,DM=e=>e!==e;function OM(e){let t=typeof e;if(t!==`object`||e===null)return DM(e)?DM:t=>t===e;if(e instanceof Date){let t=e.valueOf();return e=>e instanceof Date?e.valueOf()===t:!1}return ArrayBuffer.isView(e)?t=>t?VO(e,t):!1:e instanceof Map?AM(e):Array.isArray(e)?kM(e):e instanceof bN?jM(e):MM(e,!0)}function kM(e){let t=[];for(let n=-1,r=e.length;++n!1;let r=[];for(let t=-1,i=n.length;++t{if(!n||typeof n!=`object`)return!1;switch(n.constructor){case Array:return PM(e,n);case Map:return IM(e,n,n.keys());case bM:case bj:case Object:case void 0:return IM(e,n,t||Object.keys(n))}return n instanceof bN?FM(e,n):!1}}function PM(e,t){let n=e.length;if(t.length!==n)return!1;for(let r=-1;++rUM,getBit:()=>zM,getBool:()=>RM,packBools:()=>HM,popcnt_array:()=>GM,popcnt_bit_range:()=>WM,popcnt_uint32:()=>KM,setBool:()=>BM,truncateBitmap:()=>VM});function RM(e,t,n,r){return(n&1<>r}function BM(e,t,n){return n?!!(e[t>>3]|=1<>3]&=~(1<0||n.byteLength>3):HM(new UM(n,e,t,null,RM)).subarray(0,r)),i}return n}function HM(e){let t=[],n=0,r=0,i=0;for(let a of e)a&&(i|=1<0)&&(t[n++]=i);let a=new Uint8Array(t.length+7&-8);return a.set(t),a}var UM=class{constructor(e,t,n,r,i){this.bytes=e,this.length=n,this.context=r,this.get=i,this.bit=t%8,this.byteIndex=t>>3,this.byte=e[this.byteIndex++],this.index=0}next(){return this.index>3<<3,i=t+(t%8==0?0:8-t%8);return WM(e,t,i)+WM(e,r,n)+GM(e,i>>3,r-i>>3)}function GM(e,t,n){let r=0,i=Math.trunc(t),a=new DataView(e.buffer,e.byteOffset,e.byteLength),o=n===void 0?e.byteLength:i+n;for(;o-i>=4;)r+=KM(a.getUint32(i)),i+=4;for(;o-i>=2;)r+=KM(a.getUint16(i)),i+=2;for(;o-i>=1;)r+=KM(a.getUint8(i)),i+=1;return r}function KM(e){let t=Math.trunc(e);return t-=t>>>1&1431655765,t=(t&858993459)+(t>>>2&858993459),(t+(t>>>4)&252645135)*16843009>>>24}const qM=-1;var JM=class e{get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get nullable(){if(this._nullCount!==0){let{type:e}=this;return Pk.isSparseUnion(e)||Pk.isDenseUnion(e)?this.children.some(e=>e.nullable):this.nullBitmap&&this.nullBitmap.byteLength>0}return!0}get byteLength(){let e=0,{valueOffsets:t,values:n,nullBitmap:r,typeIds:i}=this;return t&&(e+=t.byteLength),n&&(e+=n.byteLength),r&&(e+=r.byteLength),i&&(e+=i.byteLength),this.children.reduce((e,t)=>e+t.byteLength,e)}get nullCount(){if(Pk.isUnion(this.type))return this.children.reduce((e,t)=>e+t.nullCount,0);let e=this._nullCount,t;return e<=qM&&(t=this.nullBitmap)&&(this._nullCount=e=t.length===0?0:this.length-WM(t,this.offset,this.offset+this.length)),e}constructor(t,n,r,i,a,o=[],s){this.type=t,this.children=o,this.dictionary=s,this.offset=Math.floor(Math.max(n||0,0)),this.length=Math.floor(Math.max(r||0,0)),this._nullCount=Math.floor(Math.max(i||0,-1));let c;a instanceof e?(this.stride=a.stride,this.values=a.values,this.typeIds=a.typeIds,this.nullBitmap=a.nullBitmap,this.valueOffsets=a.valueOffsets):(this.stride=mA(t),a&&((c=a[0])&&(this.valueOffsets=c),(c=a[1])&&(this.values=c),(c=a[2])&&(this.nullBitmap=c),(c=a[3])&&(this.typeIds=c)))}getValid(e){let{type:t}=this;if(Pk.isUnion(t)){let n=t,r=this.children[n.typeIdToChildIndex[this.typeIds[e]]],i=n.mode===HO.Dense?this.valueOffsets[e]:e;return r.getValid(i)}if(this.nullable&&this.nullCount>0){let t=this.offset+e,n=this.nullBitmap[t>>3];return(n&1<>3;(!r||r.byteLength<=c)&&(r=new Uint8Array((i+a+63&-64)>>3).fill(255),this.nullCount>0?(r.set(VM(i,a,this.nullBitmap),0),Object.assign(this,{nullBitmap:r})):Object.assign(this,{nullBitmap:r,_nullCount:0}));let l=r[c];n=(l&s)!==0,r[c]=t?l|s:l&~s}return n!==!!t&&(this._nullCount=this.nullCount+(t?-1:1)),t}clone(t=this.type,n=this.offset,r=this.length,i=this._nullCount,a=this,o=this.children){return new e(t,n,r,i,a,o,this.dictionary)}slice(e,t){let{stride:n,typeId:r,children:i}=this,a=(this._nullCount===0)-1,o=r===16?n:1,s=this._sliceBuffers(e,t,n,r);return this.clone(this.type,this.offset+e,t,a,s,i.length===0||this.valueOffsets?i:this._sliceChildren(i,o*e,o*t))}_changeLengthAndBackfillNullBitmap(e){if(this.typeId===J.Null)return this.clone(this.type,0,e,0);let{length:t,nullCount:n}=this,r=new Uint8Array((e+63&-64)>>3).fill(255,0,t>>3);r[t>>3]=(1<0&&r.set(VM(this.offset,t,this.nullBitmap),0);let i=this.buffers;return i[qO.VALIDITY]=r,this.clone(this.type,0,e,n+(e-t),i)}_sliceBuffers(e,t,n,r){let i,{buffers:a}=this;return(i=a[qO.TYPE])&&(a[qO.TYPE]=i.subarray(e,e+t)),(i=a[qO.OFFSET])&&(a[qO.OFFSET]=i.subarray(e,e+t+1))||(i=a[qO.DATA])&&(a[qO.DATA]=r===6?i:i.subarray(n*e,n*(e+t))),a}_sliceChildren(e,t,n){return e.map(e=>e.slice(t,n))}};JM.prototype.children=Object.freeze([]);var YM=class e extends hA{visit(e){return this.getVisitFn(e.type).call(this,e)}visitNull(e){let{type:t,offset:n=0,length:r=0}=e;return new JM(t,n,r,r)}visitBool(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length>>3,nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitInt(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitFloat(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitUtf8(e){let{type:t,offset:n=0}=e,r=fO(e.data),i=fO(e.nullBitmap),a=uO(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new JM(t,n,o,s,[a,r,i])}visitLargeUtf8(e){let{type:t,offset:n=0}=e,r=fO(e.data),i=fO(e.nullBitmap),a=dO(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new JM(t,n,o,s,[a,r,i])}visitBinary(e){let{type:t,offset:n=0}=e,r=fO(e.data),i=fO(e.nullBitmap),a=uO(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new JM(t,n,o,s,[a,r,i])}visitLargeBinary(e){let{type:t,offset:n=0}=e,r=fO(e.data),i=fO(e.nullBitmap),a=dO(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new JM(t,n,o,s,[a,r,i])}visitFixedSizeBinary(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length/mA(t),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitDate(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length/mA(t),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitTimestamp(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length/mA(t),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitTime(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length/mA(t),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitDecimal(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length/mA(t),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitList(e){let{type:t,offset:n=0,child:r}=e,i=fO(e.nullBitmap),a=uO(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new JM(t,n,o,s,[a,void 0,i],[r])}visitStruct(e){let{type:t,offset:n=0,children:r=[]}=e,i=fO(e.nullBitmap),{length:a=r.reduce((e,{length:t})=>Math.max(e,t),0),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,void 0,i],r)}visitUnion(e){let{type:t,offset:n=0,children:r=[]}=e,i=sO(t.ArrayType,e.typeIds),{length:a=i.length,nullCount:o=-1}=e;if(Pk.isSparseUnion(t))return new JM(t,n,a,o,[void 0,void 0,void 0,i],r);let s=uO(e.valueOffsets);return new JM(t,n,a,o,[s,void 0,void 0,i],r)}visitDictionary(t){let{type:n,offset:r=0}=t,i=fO(t.nullBitmap),a=sO(n.indices.ArrayType,t.data),{dictionary:o=new bN([new e().visit({type:n.dictionary})])}=t,{length:s=a.length,nullCount:c=t.nullBitmap?-1:0}=t;return new JM(n,r,s,c,[void 0,a,i],[],o)}visitInterval(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length/mA(t),nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitDuration(e){let{type:t,offset:n=0}=e,r=fO(e.nullBitmap),i=sO(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new JM(t,n,a,o,[void 0,i,r])}visitFixedSizeList(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.valueType})}=t,a=fO(t.nullBitmap),{length:o=i.length/mA(n),nullCount:s=t.nullBitmap?-1:0}=t;return new JM(n,r,o,s,[void 0,void 0,a],[i])}visitMap(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.childType})}=t,a=fO(t.nullBitmap),o=uO(t.valueOffsets),{length:s=o.length-1,nullCount:c=t.nullBitmap?-1:0}=t;return new JM(n,r,s,c,[o,void 0,a],[i])}};const XM=new YM;var ZM=class{constructor(e=0,t){this.numChunks=e,this.getChunkIterator=t,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndexe.nullable)}function $M(e){return e.reduce((e,t)=>e+t.nullCount,0)}function eN(e){return e.reduce((e,t,n)=>(e[n+1]=e[n]+t.length,e),new Uint32Array(e.length+1))}function tN(e,t,n,r){let i=[];for(let a=-1,o=e.length;++a=r)break;if(n>=s+c)continue;if(s>=n&&s+c<=r){i.push(o);continue}let l=Math.max(0,n-s),u=Math.min(r-s,c);i.push(o.slice(l,u-l))}return i.length===0&&i.push(e[0].slice(0,0)),i}function nN(e,t,n,r){let i=0,a=0,o=t.length-1;do{if(i>=o-1)return n0?0:-1}function lN(e,t){let{nullBitmap:n}=e;if(!n||e.nullCount<=0)return-1;let r=0;for(let i of new UM(n,e.offset+(t||0),e.length,n,RM)){if(!i)return r;++r}return-1}function uN(e,t,n){if(t===void 0)return-1;if(t===null)switch(e.typeId){case J.Union:break;case J.Dictionary:break;default:return lN(e,n)}let r=hM.getVisitFn(e),i=OM(t);for(let t=(n||0)-1,a=e.length;++t{let n=e.data[t];return n.values.subarray(0,n.length)[Symbol.iterator]()});let n=0;return new ZM(e.data.length,t=>{let r=e.data[t],i=r.length,a=e.slice(n,n+i);return n+=i,new hN(a)})}var hN=class{constructor(e){this.vector=e,this.index=0}next(){return this.indexe.data):t;if(a.length===0||a.some(e=>!(e instanceof JM)))throw TypeError(`Vector constructor expects an Array of Data instances.`);let o=(n=a[0])?.type;switch(a.length){case 0:this._offsets=[0];break;case 1:{let{get:e,set:t,indexOf:n}=vN[o.typeId],r=a[0];this.isValid=e=>rN(r,e),this.get=t=>e(r,t),this.set=(e,n)=>t(r,e,n),this.indexOf=e=>n(r,e),this._offsets=[0,r.length];break}default:Object.setPrototypeOf(this,yN[o.typeId]),this._offsets=eN(a);break}this.data=a,this.type=o,this.stride=mA(o),this.numChildren=(i=(r=o.children)?.length)??0,this.length=this._offsets.at(-1)}get byteLength(){return this.data.reduce((e,t)=>e+t.byteLength,0)}get nullable(){return QM(this.data)}get nullCount(){return $M(this.data)}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return`${this.VectorName}<${this.type[Symbol.toStringTag]}>`}get VectorName(){return`${J[this.type.typeId]}Vector`}isValid(e){return!1}get(e){return null}at(e){return this.get(EM(e,this.length))}set(e,t){}indexOf(e,t){return-1}includes(e,t){return this.indexOf(e,t)>-1}[Symbol.iterator](){return gN.visit(this)}concat(...t){return new e(this.data.concat(t.flatMap(e=>e.data).flat(1/0)))}slice(t,n){return new e(TM(this,t,n,({data:e,_offsets:t},n,r)=>tN(e,t,n,r)))}toJSON(){return[...this]}toArray(){let{type:e,data:t,length:n,stride:r,ArrayType:i}=this;switch(e.typeId){case J.Int:case J.Float:case J.Decimal:case J.Time:case J.Timestamp:switch(t.length){case 0:return new i;case 1:return t[0].values.subarray(0,n*r);default:return t.reduce((e,{values:t,length:n})=>(e.array.set(t.subarray(0,n*r),e.offset),e.offset+=n*r,e),{array:new i(n*r),offset:0}).array}}return[...this]}toString(){return`[${[...this].join(`,`)}]`}getChild(e){var t;return this.getChildAt((t=this.type.children)?.findIndex(t=>t.name===e))}getChildAt(t){return t>-1&&te[t])):null}get isMemoized(){return Pk.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(Pk.isDictionary(this.type)){let t=new xN(this.data[0].dictionary),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return new xN(this)}unmemoize(){if(Pk.isDictionary(this.type)&&this.isMemoized){let t=this.data[0].dictionary.unmemoize(),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return this}};_N=Symbol.toStringTag,bN[_N]=(e=>{e.type=Pk.prototype,e.data=[],e.length=0,e.stride=1,e.numChildren=0,e._offsets=new Uint32Array([0]),e[Symbol.isConcatSpreadable]=!0;let t=Object.keys(J).map(e=>J[e]).filter(e=>typeof e==`number`&&e!==J.NONE);for(let n of t){let t=hM.getVisitFnByTypeId(n),r=_j.getVisitFnByTypeId(n),i=fN.getVisitFnByTypeId(n);vN[n]={get:t,set:r,indexOf:i},yN[n]=Object.create(e,{isValid:{value:iN(rN)},get:{value:iN(hM.getVisitFnByTypeId(n))},set:{value:aN(_j.getVisitFnByTypeId(n))},indexOf:{value:oN(fN.getVisitFnByTypeId(n))}})}return`Vector`})(bN.prototype);var xN=class e extends bN{constructor(t){super(t.data);let n=this.get,r=this.set,i=this.slice,a=Array(this.length);Object.defineProperty(this,`get`,{value(e){let t=a[e];if(t!==void 0)return t;let r=n.call(this,e);return a[e]=r,r}}),Object.defineProperty(this,`set`,{value(e,t){r.call(this,e,t),a[e]=t}}),Object.defineProperty(this,`slice`,{value:(t,n)=>new e(i.call(this,t,n))}),Object.defineProperty(this,`isMemoized`,{value:!0}),Object.defineProperty(this,`unmemoize`,{value:()=>new bN(this.data)}),Object.defineProperty(this,`memoize`,{value:()=>this})}},SN={};Dt(SN,{BaseInt64:()=>DN,Int128:()=>AN,Int64:()=>kN,Uint64:()=>ON});const CN=65536;function wN(e){return e<0&&(e=4294967295+e+1),`0x${e.toString(16)}`}const TN=8,EN=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8];var DN=class{constructor(e){this.buffer=e}high(){return this.buffer[1]}low(){return this.buffer[0]}_times(e){let t=new Uint32Array([this.buffer[1]>>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),n=new Uint32Array([e.buffer[1]>>>16,e.buffer[1]&65535,e.buffer[0]>>>16,e.buffer[0]&65535]),r=t[3]*n[3];this.buffer[0]=r&65535;let i=r>>>16;return r=t[2]*n[3],i+=r,r=t[3]*n[2]>>>0,i+=r,this.buffer[0]+=i<<16,this.buffer[1]=i>>>0>>16,this.buffer[1]+=t[1]*n[3]+t[2]*n[2]+t[3]*n[1],this.buffer[1]+=t[0]*n[3]+t[1]*n[2]+t[2]*n[1]+t[3]*n[0]<<16,this}_plus(e){let t=this.buffer[0]+e.buffer[0]>>>0;this.buffer[1]+=e.buffer[1],t>>0&&++this.buffer[1],this.buffer[0]=t}lessThan(e){return this.buffer[1]>>0,t[2]=this.buffer[2]+e.buffer[2]>>>0,t[1]=this.buffer[1]+e.buffer[1]>>>0,t[0]=this.buffer[0]+e.buffer[0]>>>0,t[0]>>0&&++t[1],t[1]>>0&&++t[2],t[2]>>0&&++t[3],this.buffer[3]=t[3],this.buffer[2]=t[2],this.buffer[1]=t[1],this.buffer[0]=t[0],this}hex(){return`${wN(this.buffer[3])} ${wN(this.buffer[2])} ${wN(this.buffer[1])} ${wN(this.buffer[0])}`}static multiply(t,n){let r=new e(new Uint32Array(t.buffer));return r.times(n)}static add(t,n){let r=new e(new Uint32Array(t.buffer));return r.plus(n)}static from(t,n=new Uint32Array(4)){return e.fromString(typeof t==`string`?t:t.toString(),n)}static fromNumber(t,n=new Uint32Array(4)){return e.fromString(t.toString(),n)}static fromString(t,n=new Uint32Array(4)){let r=t.startsWith(`-`),i=t.length,a=new e(n);for(let n=r?1:0;nMN,toIntervalDayTimeObjects:()=>PN,toIntervalMonthDayNanoInt32Array:()=>NN,toIntervalMonthDayNanoObjects:()=>FN});function MN(e){var t,n;let r=e.length,i=new Int32Array(r*2);for(let a=0,o=0;a>BigInt(32))):o+=2}return i}function PN(e){let t=e.length,n=Array(t/2);for(let r=0,i=0;r>>0);r[a++]={months:e[i],days:e[i+1],nanoseconds:t?`${n}`:n}}return r}var IN=class extends hA{compareSchemas(e,t){return e===t||t instanceof e.constructor&&this.compareManyFields(e.fields,t.fields)}compareManyFields(e,t){return e===t||Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,n)=>this.compareFields(e,t[n]))}compareFields(e,t){return e===t||t instanceof e.constructor&&e.name===t.name&&e.nullable===t.nullable&&this.visit(e.type,t.type)}};function LN(e,t){return t instanceof e.constructor}function RN(e,t){return e===t||LN(e,t)}function zN(e,t){return e===t||LN(e,t)&&e.bitWidth===t.bitWidth&&e.isSigned===t.isSigned}function BN(e,t){return e===t||LN(e,t)&&e.precision===t.precision}function VN(e,t){return e===t||LN(e,t)&&e.byteWidth===t.byteWidth}function HN(e,t){return e===t||LN(e,t)&&e.unit===t.unit}function UN(e,t){return e===t||LN(e,t)&&e.unit===t.unit&&e.timezone===t.timezone}function WN(e,t){return e===t||LN(e,t)&&e.unit===t.unit&&e.bitWidth===t.bitWidth}function GN(e,t){return e===t||LN(e,t)&&e.children.length===t.children.length&&$N.compareManyFields(e.children,t.children)}function KN(e,t){return e===t||LN(e,t)&&e.children.length===t.children.length&&$N.compareManyFields(e.children,t.children)}function qN(e,t){return e===t||LN(e,t)&&e.mode===t.mode&&e.typeIds.every((e,n)=>e===t.typeIds[n])&&$N.compareManyFields(e.children,t.children)}function JN(e,t){return e===t||LN(e,t)&&e.id===t.id&&e.isOrdered===t.isOrdered&&$N.visit(e.indices,t.indices)&&$N.visit(e.dictionary,t.dictionary)}function YN(e,t){return e===t||LN(e,t)&&e.unit===t.unit}function XN(e,t){return e===t||LN(e,t)&&e.unit===t.unit}function ZN(e,t){return e===t||LN(e,t)&&e.listSize===t.listSize&&e.children.length===t.children.length&&$N.compareManyFields(e.children,t.children)}function QN(e,t){return e===t||LN(e,t)&&e.keysSorted===t.keysSorted&&e.children.length===t.children.length&&$N.compareManyFields(e.children,t.children)}IN.prototype.visitNull=RN,IN.prototype.visitBool=RN,IN.prototype.visitInt=zN,IN.prototype.visitInt8=zN,IN.prototype.visitInt16=zN,IN.prototype.visitInt32=zN,IN.prototype.visitInt64=zN,IN.prototype.visitUint8=zN,IN.prototype.visitUint16=zN,IN.prototype.visitUint32=zN,IN.prototype.visitUint64=zN,IN.prototype.visitFloat=BN,IN.prototype.visitFloat16=BN,IN.prototype.visitFloat32=BN,IN.prototype.visitFloat64=BN,IN.prototype.visitUtf8=RN,IN.prototype.visitLargeUtf8=RN,IN.prototype.visitBinary=RN,IN.prototype.visitLargeBinary=RN,IN.prototype.visitFixedSizeBinary=VN,IN.prototype.visitDate=HN,IN.prototype.visitDateDay=HN,IN.prototype.visitDateMillisecond=HN,IN.prototype.visitTimestamp=UN,IN.prototype.visitTimestampSecond=UN,IN.prototype.visitTimestampMillisecond=UN,IN.prototype.visitTimestampMicrosecond=UN,IN.prototype.visitTimestampNanosecond=UN,IN.prototype.visitTime=WN,IN.prototype.visitTimeSecond=WN,IN.prototype.visitTimeMillisecond=WN,IN.prototype.visitTimeMicrosecond=WN,IN.prototype.visitTimeNanosecond=WN,IN.prototype.visitDecimal=RN,IN.prototype.visitList=GN,IN.prototype.visitStruct=KN,IN.prototype.visitUnion=qN,IN.prototype.visitDenseUnion=qN,IN.prototype.visitSparseUnion=qN,IN.prototype.visitDictionary=JN,IN.prototype.visitInterval=YN,IN.prototype.visitIntervalDayTime=YN,IN.prototype.visitIntervalYearMonth=YN,IN.prototype.visitIntervalMonthDayNano=YN,IN.prototype.visitDuration=XN,IN.prototype.visitDurationSecond=XN,IN.prototype.visitDurationMillisecond=XN,IN.prototype.visitDurationMicrosecond=XN,IN.prototype.visitDurationNanosecond=XN,IN.prototype.visitFixedSizeList=ZN,IN.prototype.visitMap=QN;const $N=new IN;function eP(e,t){return $N.compareSchemas(e,t)}function tP(e,t){return $N.compareFields(e,t)}function nP(e,t){return $N.visit(e,t)}const rP=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},$O),SN),LM),yA),nO),CM),JO),jN),{compareSchemas:eP,compareFields:tP,compareTypes:nP}),iP=365.2425,aP=10**8*24*60*60*1e3,oP=6048e5,sP=864e5,cP=3600,lP=cP*24,uP=lP*7,dP=lP*iP,fP=dP/12,pP=fP*3,mP=Symbol.for(`constructDateFrom`);function hP(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&mP in e?e[mP](t):e instanceof Date?new e.constructor(t):new Date(t)}function gP(e,t){return hP(t||e,e)}let _P={};function vP(){return _P}function yP(e,t){var n,r;let i=vP(),a=t?.weekStartsOn??(t==null||(n=t.locale)==null||(n=n.options)==null?void 0:n.weekStartsOn)??i.weekStartsOn??((r=i.locale)==null||(r=r.options)==null?void 0:r.weekStartsOn)??0,o=gP(e,t?.in),s=o.getDay(),c=(s=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function SP(e){let t=gP(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function CP(e,...t){let n=hP.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function wP(e,t){let n=gP(e,t?.in);return n.setHours(0,0,0,0),n}function TP(e,t,n){let[r,i]=CP(n?.in,e,t),a=wP(r),o=wP(i),s=+a-SP(a),c=+o-SP(o);return Math.round((s-c)/sP)}function EP(e,t){let n=xP(e,t),r=hP(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),bP(r)}function DP(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function OP(e){return!(!DP(e)&&typeof e!=`number`||isNaN(+gP(e)))}function kP(e,t){let n=gP(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}const AP={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},jP=(e,t,n)=>{let r,i=AP[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function MP(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth,r=e.formats[n]||e.formats[e.defaultWidth];return r}}const NP={full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},PP={full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},FP={full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},IP={date:MP({formats:NP,defaultWidth:`full`}),time:MP({formats:PP,defaultWidth:`full`}),dateTime:MP({formats:FP,defaultWidth:`full`})},LP={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},RP=(e,t,n,r)=>LP[e];function zP(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}const BP={narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},VP={narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},HP={narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},UP={narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},WP={narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},GP={narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},KP=(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},qP={ordinalNumber:KP,era:zP({values:BP,defaultWidth:`wide`}),quarter:zP({values:VP,defaultWidth:`wide`,argumentCallback:e=>e-1}),month:zP({values:HP,defaultWidth:`wide`}),day:zP({values:UP,defaultWidth:`wide`}),dayPeriod:zP({values:WP,defaultWidth:`wide`,formattingValues:GP,defaultFormattingWidth:`wide`})};function JP(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?XP(s,e=>e.test(o)):YP(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function YP(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function XP(e,t){for(let n=0;n{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}const QP=/^(\d+)(th|st|nd|rd)?/i,$P=/\d+/i,eF={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},tF={any:[/^b/i,/^(a|c)/i]},nF={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},rF={any:[/1/i,/2/i,/3/i,/4/i]},iF={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},aF={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},oF={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},sF={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},cF={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},lF={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},uF={ordinalNumber:ZP({matchPattern:QP,parsePattern:$P,valueCallback:e=>parseInt(e,10)}),era:JP({matchPatterns:eF,defaultMatchWidth:`wide`,parsePatterns:tF,defaultParseWidth:`any`}),quarter:JP({matchPatterns:nF,defaultMatchWidth:`wide`,parsePatterns:rF,defaultParseWidth:`any`,valueCallback:e=>e+1}),month:JP({matchPatterns:iF,defaultMatchWidth:`wide`,parsePatterns:aF,defaultParseWidth:`any`}),day:JP({matchPatterns:oF,defaultMatchWidth:`wide`,parsePatterns:sF,defaultParseWidth:`any`}),dayPeriod:JP({matchPatterns:cF,defaultMatchWidth:`any`,parsePatterns:lF,defaultParseWidth:`any`})},dF={code:`en-US`,formatDistance:jP,formatLong:IP,formatRelative:RP,localize:qP,match:uF,options:{weekStartsOn:0,firstWeekContainsDate:1}};function fF(e,t){let n=gP(e,t?.in),r=TP(n,kP(n)),i=r+1;return i}function pF(e,t){let n=gP(e,t?.in),r=bP(n)-+EP(n);return Math.round(r/oP)+1}function mF(e,t){var n,r;let i=gP(e,t?.in),a=i.getFullYear(),o=vP(),s=t?.firstWeekContainsDate??(t==null||(n=t.locale)==null||(n=n.options)==null?void 0:n.firstWeekContainsDate)??o.firstWeekContainsDate??((r=o.locale)==null||(r=r.options)==null?void 0:r.firstWeekContainsDate)??1,c=hP(t?.in||e,0);c.setFullYear(a+1,0,s),c.setHours(0,0,0,0);let l=yP(c,t),u=hP(t?.in||e,0);u.setFullYear(a,0,s),u.setHours(0,0,0,0);let d=yP(u,t);return+i>=+l?a+1:+i>=+d?a:a-1}function hF(e,t){var n,r;let i=vP(),a=t?.firstWeekContainsDate??(t==null||(n=t.locale)==null||(n=n.options)==null?void 0:n.firstWeekContainsDate)??i.firstWeekContainsDate??((r=i.locale)==null||(r=r.options)==null?void 0:r.firstWeekContainsDate)??1,o=mF(e,t),s=hP(t?.in||e,0);s.setFullYear(o,0,a),s.setHours(0,0,0,0);let c=yP(s,t);return c}function gF(e,t){let n=gP(e,t?.in),r=yP(n,t)-+hF(n,t);return Math.round(r/oP)+1}function _F(e,t){let n=e<0?`-`:``,r=Math.abs(e).toString().padStart(t,`0`);return n+r}const vF={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return _F(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):_F(n+1,2)},d(e,t){return _F(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];case`aaaa`:default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return _F(e.getHours()%12||12,t.length)},H(e,t){return _F(e.getHours(),t.length)},m(e,t){return _F(e.getMinutes(),t.length)},s(e,t){return _F(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds(),i=Math.trunc(r*10**(n-3));return _F(i,t.length)}},yF={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},bF={G:function(e,t,n){let r=e.getFullYear()>0?1:0;switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});case`GGGG`:default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return vF.y(e,t)},Y:function(e,t,n,r){let i=mF(e,r),a=i>0?i:1-i;if(t===`YY`){let e=a%100;return _F(e,2)}return t===`Yo`?n.ordinalNumber(a,{unit:`year`}):_F(a,t.length)},R:function(e,t){let n=xP(e);return _F(n,t.length)},u:function(e,t){let n=e.getFullYear();return _F(n,t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return _F(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});case`QQQQ`:default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return _F(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});case`qqqq`:default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return vF.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});case`MMMM`:default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return _F(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});case`LLLL`:default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=gF(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):_F(i,t.length)},I:function(e,t,n){let r=pF(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):_F(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):vF.d(e,t)},D:function(e,t,n){let r=fF(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):_F(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});case`EEEE`:default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return _F(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});case`eeee`:default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return _F(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});case`cccc`:default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return _F(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});case`iiii`:default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours(),i=r/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});case`aaaa`:default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?yF.noon:r===0?yF.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});case`bbbb`:default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?yF.evening:r>=12?yF.afternoon:r>=4?yF.morning:yF.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});case`BBBB`:default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return vF.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):vF.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):_F(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):_F(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):vF.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):vF.s(e,t)},S:function(e,t){return vF.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return SF(r);case`XXXX`:case`XX`:return CF(r);case`XXXXX`:case`XXX`:default:return CF(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return SF(r);case`xxxx`:case`xx`:return CF(r);case`xxxxx`:case`xxx`:default:return CF(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+xF(r,`:`);case`OOOO`:default:return`GMT`+CF(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+xF(r,`:`);case`zzzz`:default:return`GMT`+CF(r,`:`)}},t:function(e,t,n){let r=Math.trunc(e/1e3);return _F(r,t.length)},T:function(e,t,n){return _F(+e,t.length)}};function xF(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+_F(a,2)}function SF(e,t){if(e%60==0){let t=e>0?`-`:`+`;return t+_F(Math.abs(e)/60,2)}return CF(e,t)}function CF(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=_F(Math.trunc(r/60),2),a=_F(r%60,2);return n+i+t+a}const wF=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});case`PPPP`:default:return t.date({width:`full`})}},TF=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});case`pppp`:default:return t.time({width:`full`})}},EF=(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return wF(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;case`PPPP`:default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,wF(r,t)).replace(`{{time}}`,TF(i,t))},DF={p:TF,P:EF},OF=/^D+$/,kF=/^Y+$/,AF=[`D`,`DD`,`YY`,`YYYY`];function jF(e){return OF.test(e)}function MF(e){return kF.test(e)}function NF(e,t,n){let r=PF(e,t,n);if(console.warn(r),AF.includes(e))throw RangeError(r)}function PF(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const FF=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,IF=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,LF=/^'([^]*?)'?$/,RF=/''/g,zF=/[a-zA-Z]/;function BF(e,t,n){var r,i,a,o;let s=vP(),c=n?.locale??s.locale??dF,l=n?.firstWeekContainsDate??(n==null||(r=n.locale)==null||(r=r.options)==null?void 0:r.firstWeekContainsDate)??s.firstWeekContainsDate??((i=s.locale)==null||(i=i.options)==null?void 0:i.firstWeekContainsDate)??1,u=n?.weekStartsOn??(n==null||(a=n.locale)==null||(a=a.options)==null?void 0:a.weekStartsOn)??s.weekStartsOn??((o=s.locale)==null||(o=o.options)==null?void 0:o.weekStartsOn)??0,d=gP(e,n?.in);if(!OP(d))throw RangeError(`Invalid time value`);let f=t.match(IF).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=DF[t];return n(e,c.formatLong)}return e}).join(``).match(FF).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:VF(e)};if(bF[t])return{isToken:!0,value:e};if(t.match(zF))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});c.localize.preprocessor&&(f=c.localize.preprocessor(d,f));let p={firstWeekContainsDate:l,weekStartsOn:u,locale:c};return f.map(r=>{if(!r.isToken)return r.value;let i=r.value;(!n?.useAdditionalWeekYearTokens&&MF(i)||!n?.useAdditionalDayOfYearTokens&&jF(i))&&NF(i,t,String(e));let a=bF[i[0]];return a(d,i,c.localize,p)}).join(``)}function VF(e){let t=e.match(LF);return t?t[1].replace(RF,`'`):e}function HF(e,t){return gP(e*1e3,t?.in)}function UF(e,t){let n=WF(t)?new t(0):hP(t,0);return n.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),n.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),n}function WF(e){var t;return typeof e==`function`&&(t=e.prototype)?.constructor===e}function GF(e,t){if(t===void 0)return e.trimEnd();let n=e.length;switch(typeof t){case`string`:if(t.length!==1)throw Error(`The 'chars' parameter should be a single character string.`);for(;n>0&&e[n-1]===t;)n--;break;case`object`:for(;n>0&&t.includes(e[n-1]);)n--}return e.substring(0,n)}function KF(e){return e==null}function qF(e){return e!=null}async function JF(){if(typeof window<`u`&&window!==null)return`browser`;try{let e=await jt(()=>import(`./__vite-browser-external-Wa8hNVG-.js`).then(kt(1)),__vite__mapDeps([0,1,2]));return e!==void 0&&e.versions!=null&&e.versions.node!=null?`node`:`unknown`}catch{return`unknown`}}function YF(e){return KF(e)?!1:Pk.isInt(e.type)&&!tI(e)||XF(e)}function XF(e){return KF(e)?!1:Pk.isInt(e.type)&&e.type.isSigned===!1}function ZF(e){return KF(e)?!1:Pk.isFloat(e.type)??!1}function QF(e){return KF(e)?!1:Pk.isDecimal(e.type)}function $F(e){return KF(e)?!1:Pk.isBool(e.type)}function eI(e){return KF(e)?!1:Pk.isDuration(e.type)}function tI(e){return KF(e)?!1:Pk.isInt(e.type)&&e.metadata.get(`ARROW:extension:name`)===`period`}function nI(e){return KF(e)?!1:Pk.isTimestamp(e.type)}function rI(e){return KF(e)?!1:Pk.isDate(e.type)}function iI(e){return KF(e)?!1:Pk.isTime(e.type)}function aI(e){return KF(e)?!1:Pk.isList(e.type)||Pk.isFixedSizeList(e.type)}function oI(e){return KF(e)?!1:Pk.isStruct(e.type)||Pk.isMap(e.type)}function sI(e){return KF(e)?!1:Pk.isStruct(e.type)&&e.metadata.get(`ARROW:extension:name`)===`interval`||Pk.isInterval(e.type)}const cI=new Date(1970,0,1);function lI(e,t){let n;if(t===GO.MILLISECOND)n=1e3;else if(t===GO.MICROSECOND)n=1e3*1e3;else if(t===GO.NANOSECOND)n=1e3*1e3*1e3;else return Number(e);return typeof e==`bigint`&&!Number.isSafeInteger(Number(e))?Number(e/BigInt(n)):Number(e)/n}function uI(e,t){var n;let r=lI(e,(t==null||(n=t.type)==null?void 0:n.unit)??GO.SECOND);return HF(r)}function dI(e,t){let n=uI(e,t);return BF(n,n.getMilliseconds()===0?`HH:mm:ss`:`HH:mm:ss.SSS`)}function fI(e){let t=`yyyy-MM-dd`;return e instanceof Date||typeof e==`number`&&Number.isFinite(e)?BF(e,t):(console.warn(`Unsupported date value: ${e}`),String(e))}function pI(e,t){var n;if(!(e instanceof Date||typeof e==`number`&&Number.isFinite(e)))return console.warn(`Unsupported datetime value: ${e}`),null;let r,i=t==null||(n=t.type)==null?void 0:n.timezone;return r=i?new RD(e,i):new RD(e),UF(r,Date)}function mI(e,t){var n;let r=(t==null||(n=t.type)==null?void 0:n.scale)||0,i=rP.bigNumToString(new rP.BN(e)).padStart(r,`0`);if(r===0)return i;let a=``;i.startsWith(`-`)&&(a=`-`,i=i.slice(1));let o=i.slice(0,-r)||`0`,s=GF(i.slice(-r),`0`)||``;return`${a}${o}${s?`.${s}`:``}`}const hI=new Intl.NumberFormat(`en-US`,{style:`decimal`,maximumFractionDigits:4,minimumFractionDigits:4,useGrouping:!0});function gI(e){let t=e[0],n=e[1],r=[];return t!==0&&r.push(`${t} year${t>1?`s`:``}`),n!==0&&r.push(`${n} month${n>1?`s`:``}`),r.length?r.join(` `):`0 months`}function _I(e,t){if(Pk.isInterval(t?.type))return gI(e);let n=t&&t.metadata.get(`ARROW:extension:name`);if(n&&n===`pandas.interval`){var r,i;let n=JSON.parse(t.metadata.get(`ARROW:extension:metadata`)),{closed:a}=n,o=e.toJSON(),s=a===`both`||a===`left`?`[`:`(`,c=a===`both`||a===`right`?`]`:`)`,l=yI(o.left,(r=t.type)==null||(r=r.children)==null?void 0:r[0]),u=yI(o.right,(i=t.type)==null||(i=i.children)==null?void 0:i[1]);return`${s+l}, ${u+c}`}return String(e)}function vI(e,t){return t?.type instanceof sA?JSON.parse(JSON.stringify(e,(e,t)=>{if(qF(t))return typeof t==`bigint`?Number(t):t})):JSON.parse(JSON.stringify(e,(e,t)=>typeof t==`bigint`?Number(t):t))}function yI(e,t){if(KF(e))return null;let n=e instanceof Date||Number.isFinite(e);if(n&&rI(t))return fI(e);if(typeof e==`bigint`&&iI(t))return dI(Number(e),t);if(n&&nI(t))return pI(e,t);if(tI(t))throw Error(`Period type is not supported yet`);if(sI(t))return _I(e,t);if(eI(t))throw Error(`Duration type is not supported yet`);return QF(t)?mI(e,t):ZF(t)&&Number.isFinite(e)||YF(t)?e:oI(t)||aI(t)?vI(e,t):$F(t)?!!e:String(e)}function bI(e){let t=(e.toArray()||[]).map(e=>e.toJSON())||[],n=t.map(t=>(e.schema.fields.forEach(e=>t[e.name]=yI(t[e.name],e)),t));return n}let xI=function(e){return e.ORIGIN_PRIVATE_FS=`origin-private-fs`,e.NODE_FS=`node-fs`,e}({});async function SI(e){let t=Bt(e,{logger:!1}),n,r,i=await JF();if(i===`browser`){if(t.bundles===void 0){let{getBundles:e}=await jt(async()=>{let{getBundles:e}=await import(`./default-browser-CAeK6Ish.js`);return{getBundles:e}},[]);t.bundles=await e()}r=await AD(await t.bundles),n=new Worker(r.mainWorker)}else if(i===`node`){if(t.bundles===void 0){let{getBundles:e}=await jt(async()=>{let{getBundles:e}=await import(`./default-node-CK1wfd3F.js`);return{getBundles:e}},__vite__mapDeps([3,1,2]));t.bundles=await e()}r=await AD(await t.bundles);let e=r.mainWorker;e.startsWith(`/@fs/`)&&(e=e.replace(`/@fs/`,`file://`));let i=await jt(()=>import(`./browser-BSMtDYed.js`),[]);n=new i.default(e,{type:`module`})}else throw Error(`Unsupported environment: ${i}`);let a;a=t.logger===!0?new JE:t.logger===!1?new qE:t.logger;let o=new aD(a,n);if(await o.instantiate(r.mainModule,r.pthreadWorker),t.storage)switch(t.storage.type){case xI.ORIGIN_PRIVATE_FS:try{let e=t.storage.path;e.startsWith(`/`)&&(e=e.slice(1)),await o.open({path:`opfs://${e}`,accessMode:t.storage.accessMode})}catch(e){throw await o.terminate(),await n.terminate(),e}break;case xI.NODE_FS:try{await o.open({path:t.storage.path,accessMode:t.storage.accessMode,useDirectIO:!0})}catch(e){throw await o.terminate(),await n.terminate(),e}break}let s=await o.connect();async function c(e,t=[]){if(!t||t.length===0){let t=await s.query(e);return{_results:t,_schema:t.schema,columns:t.schema.fields,rows:bI(t)}}let n=await s.prepare(e),r=await n.query(...t);return n.close(),{_results:r,_schema:r.schema,columns:r.schema.fields,rows:bI(r)}}return{worker:n,db:o,conn:s,query:async(e,t=[])=>c(e,t).then(e=>e.rows),queryWithColumns:async(e,t=[])=>c(e,t),close:async()=>{await s.close(),await o.terminate(),await n.terminate()}}}async function CI(e,t){await(await e).conn.send(`BEGIN TRANSACTION`);try{let n=await t(e);return await(await e).conn.send(`COMMIT`),n}catch(t){throw await(await e).conn.send(`ROLLBACK`),t}}async function wI(e,t,n){await(await e).conn.send(`SAVEPOINT ${t}`);try{let r=await n(e);return await(await e).conn.send(`RELEASE SAVEPOINT ${t}`),r}catch(n){throw await(await e).conn.send(`ROLLBACK TO SAVEPOINT ${t}`),n}}const Y=Symbol.for(`drizzle:entityKind`),TI=Symbol.for(`drizzle:hasOwnEntityKind`);function X(e,t){if(!e||typeof e!=`object`)return!1;if(e instanceof t)return!0;if(!Object.prototype.hasOwnProperty.call(t,Y))throw Error(`Class "${t.name??``}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let n=Object.getPrototypeOf(e).constructor;if(n)for(;n;){if(Y in n&&n[Y]===t[Y])return!0;n=Object.getPrototypeOf(n)}return!1}var EI=(Yn=class{constructor(t,n){e.defineProperty(this,`name`,void 0),e.defineProperty(this,`keyAsName`,void 0),e.defineProperty(this,`primary`,void 0),e.defineProperty(this,`notNull`,void 0),e.defineProperty(this,`default`,void 0),e.defineProperty(this,`defaultFn`,void 0),e.defineProperty(this,`onUpdateFn`,void 0),e.defineProperty(this,`hasDefault`,void 0),e.defineProperty(this,`isUnique`,void 0),e.defineProperty(this,`uniqueName`,void 0),e.defineProperty(this,`uniqueType`,void 0),e.defineProperty(this,`dataType`,void 0),e.defineProperty(this,`columnType`,void 0),e.defineProperty(this,`enumValues`,void 0),e.defineProperty(this,`generated`,void 0),e.defineProperty(this,`generatedIdentity`,void 0),e.defineProperty(this,`config`,void 0),this.table=t,this.config=n,this.name=n.name,this.keyAsName=n.keyAsName,this.notNull=n.notNull,this.default=n.default,this.defaultFn=n.defaultFn,this.onUpdateFn=n.onUpdateFn,this.hasDefault=n.hasDefault,this.primary=n.primaryKey,this.isUnique=n.isUnique,this.uniqueName=n.uniqueName,this.uniqueType=n.uniqueType,this.dataType=n.dataType,this.columnType=n.columnType,this.generated=n.generated,this.generatedIdentity=n.generatedIdentity}mapFromDriverValue(e){return e}mapToDriverValue(e){return e}shouldDisableInsert(){return this.config.generated!==void 0&&this.config.generated.type!==`byDefault`}},e.defineProperty(Yn,Y,`Column`),Yn),DI=(Xn=class{constructor(t,n,r){e.defineProperty(this,`config`,void 0),e.defineProperty(this,`$default`,this.$defaultFn),e.defineProperty(this,`$onUpdate`,this.$onUpdateFn),this.config={name:t,keyAsName:t===``,notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:n,columnType:r,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default(e){return this.config.default=e,this.config.hasDefault=!0,this}$defaultFn(e){return this.config.defaultFn=e,this.config.hasDefault=!0,this}$onUpdateFn(e){return this.config.onUpdateFn=e,this.config.hasDefault=!0,this}primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName(e){this.config.name===``&&(this.config.name=e)}},e.defineProperty(Xn,Y,`ColumnBuilder`),Xn);const OI=Symbol.for(`drizzle:Name`);var kI=(Zn=class{constructor(t,n){e.defineProperty(this,`reference`,void 0),e.defineProperty(this,`_onUpdate`,`no action`),e.defineProperty(this,`_onDelete`,`no action`),this.reference=()=>{let{name:e,columns:n,foreignColumns:r}=t();return{name:e,columns:n,foreignTable:r[0].table,foreignColumns:r}},n&&(this._onUpdate=n.onUpdate,this._onDelete=n.onDelete)}onUpdate(e){return this._onUpdate=e===void 0?`no action`:e,this}onDelete(e){return this._onDelete=e===void 0?`no action`:e,this}build(e){return new AI(e,this)}},e.defineProperty(Zn,Y,`PgForeignKeyBuilder`),Zn),AI=(Qn=class{constructor(t,n){e.defineProperty(this,`reference`,void 0),e.defineProperty(this,`onUpdate`,void 0),e.defineProperty(this,`onDelete`,void 0),this.table=t,this.reference=n.reference,this.onUpdate=n._onUpdate,this.onDelete=n._onDelete}getName(){let{name:e,columns:t,foreignColumns:n}=this.reference(),r=t.map(e=>e.name),i=n.map(e=>e.name),a=[this.table[OI],...r,n[0].table[OI],...i];return e??`${a.join(`_`)}_fk`}},e.defineProperty(Qn,Y,`PgForeignKey`),Qn);function jI(e,...t){return e(...t)}function MI(e,t){return`${e[OI]}_${t.join(`_`)}_unique`}var NI=($n=class{constructor(t,n){e.defineProperty(this,`columns`,void 0),e.defineProperty(this,`nullsNotDistinctConfig`,!1),this.name=n,this.columns=t}nullsNotDistinct(){return this.nullsNotDistinctConfig=!0,this}build(e){return new FI(e,this.columns,this.nullsNotDistinctConfig,this.name)}},e.defineProperty($n,Y,`PgUniqueConstraintBuilder`),$n),PI=(er=class{constructor(t){e.defineProperty(this,`name`,void 0),this.name=t}on(...e){return new NI(e,this.name)}},e.defineProperty(er,Y,`PgUniqueOnConstraintBuilder`),er),FI=(tr=class{constructor(t,n,r,i){e.defineProperty(this,`columns`,void 0),e.defineProperty(this,`name`,void 0),e.defineProperty(this,`nullsNotDistinct`,!1),this.table=t,this.columns=n,this.name=i??MI(this.table,this.columns.map(e=>e.name)),this.nullsNotDistinct=r}getName(){return this.name}},e.defineProperty(tr,Y,`PgUniqueConstraint`),tr);function II(e,t,n){for(let r=t;rArray.isArray(e)?zI(e):typeof e==`string`?`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`:`${e}`).join(`,`)}}`}var BI=(nr=class extends DI{constructor(...t){super(...t),e.defineProperty(this,`foreignKeyConfigs`,[])}array(e){return new WI(this.config.name,this,e)}references(e,t={}){return this.foreignKeyConfigs.push({ref:e,actions:t}),this}unique(e,t){return this.config.isUnique=!0,this.config.uniqueName=e,this.config.uniqueType=t?.nulls,this}generatedAlwaysAs(e){return this.config.generated={as:e,type:`always`,mode:`stored`},this}buildForeignKeys(e,t){return this.foreignKeyConfigs.map(({ref:n,actions:r})=>jI((n,r)=>{let i=new kI(()=>{let t=n();return{columns:[e],foreignColumns:[t]}});return r.onUpdate&&i.onUpdate(r.onUpdate),r.onDelete&&i.onDelete(r.onDelete),i.build(t)},n,r))}buildExtraConfigColumn(e){return new HI(e,this.config)}},e.defineProperty(nr,Y,`PgColumnBuilder`),nr),VI=(rr=class extends EI{constructor(e,t){t.uniqueName||=MI(e,[t.name]),super(e,t),this.table=e}},e.defineProperty(rr,Y,`PgColumn`),rr),HI=(ir=class extends VI{constructor(...t){super(...t),e.defineProperty(this,`indexConfig`,{order:this.config.order??`asc`,nulls:this.config.nulls??`last`,opClass:this.config.opClass}),e.defineProperty(this,`defaultConfig`,{order:`asc`,nulls:`last`,opClass:void 0})}getSQLType(){return this.getSQLType()}asc(){return this.indexConfig.order=`asc`,this}desc(){return this.indexConfig.order=`desc`,this}nullsFirst(){return this.indexConfig.nulls=`first`,this}nullsLast(){return this.indexConfig.nulls=`last`,this}op(e){return this.indexConfig.opClass=e,this}},e.defineProperty(ir,Y,`ExtraConfigColumn`),ir),UI=(ar=class{constructor(t,n,r,i){e.defineProperty(this,`name`,void 0),e.defineProperty(this,`keyAsName`,void 0),e.defineProperty(this,`type`,void 0),e.defineProperty(this,`indexConfig`,void 0),this.name=t,this.keyAsName=n,this.type=r,this.indexConfig=i}},e.defineProperty(ar,Y,`IndexedColumn`),ar),WI=(or=class extends BI{constructor(e,t,n){super(e,`array`,`PgArray`),this.config.baseBuilder=t,this.config.size=n}build(e){let t=this.config.baseBuilder.build(e);return new GI(e,this.config,t)}},e.defineProperty(or,Y,`PgArrayBuilder`),or),GI=(sr=class t extends VI{constructor(t,n,r,i){super(t,n),e.defineProperty(this,`size`,void 0),this.baseColumn=r,this.range=i,this.size=n.size}getSQLType(){return`${this.baseColumn.getSQLType()}[${typeof this.size==`number`?this.size:``}]`}mapFromDriverValue(e){return typeof e==`string`&&(e=RI(e)),e.map(e=>this.baseColumn.mapFromDriverValue(e))}mapToDriverValue(e,n=!1){let r=e.map(e=>e===null?null:X(this.baseColumn,t)?this.baseColumn.mapToDriverValue(e,!0):this.baseColumn.mapToDriverValue(e));return n?r:zI(r)}},e.defineProperty(sr,Y,`PgArray`),sr),KI=(cr=class extends BI{constructor(e,t){super(e,`string`,`PgEnumObjectColumn`),this.config.enum=t}build(e){return new qI(e,this.config)}},e.defineProperty(cr,Y,`PgEnumObjectColumnBuilder`),cr),qI=(lr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`enum`,void 0),e.defineProperty(this,`enumValues`,this.config.enum.enumValues),this.enum=n.enum}getSQLType(){return this.enum.enumName}},e.defineProperty(lr,Y,`PgEnumObjectColumn`),lr);const JI=Symbol.for(`drizzle:isPgEnum`);function YI(e){return!!e&&typeof e==`function`&&JI in e&&e[JI]===!0}var XI=(ur=class extends BI{constructor(e,t){super(e,`string`,`PgEnumColumn`),this.config.enum=t}build(e){return new ZI(e,this.config)}},e.defineProperty(ur,Y,`PgEnumColumnBuilder`),ur),ZI=(dr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`enum`,this.config.enum),e.defineProperty(this,`enumValues`,this.config.enum.enumValues),this.enum=n.enum}getSQLType(){return this.enum.enumName}},e.defineProperty(dr,Y,`PgEnumColumn`),dr),QI=(fr=class{constructor(e,t,n,r=!1,i=[]){this._={brand:`Subquery`,sql:e,selectedFields:t,alias:n,isWith:r,usedTables:i}}},e.defineProperty(fr,Y,`Subquery`),fr),$I=(pr=class extends QI{},e.defineProperty(pr,Y,`WithSubquery`),pr),eL=`0.44.2`;let tL,nL;const rL={startActiveSpan(e,t){return tL?(nL||=tL.trace.getTracer(`drizzle-orm`,eL),jI((n,r)=>r.startActiveSpan(e,e=>{try{return t(e)}catch(t){throw e.setStatus({code:n.SpanStatusCode.ERROR,message:t instanceof Error?t.message:`Unknown error`}),t}finally{e.end()}}),tL,nL)):t()}},iL=Symbol.for(`drizzle:ViewBaseConfig`),aL=Symbol.for(`drizzle:Schema`),oL=Symbol.for(`drizzle:Columns`),sL=Symbol.for(`drizzle:ExtraConfigColumns`),cL=Symbol.for(`drizzle:OriginalName`),lL=Symbol.for(`drizzle:BaseName`),uL=Symbol.for(`drizzle:IsAlias`),dL=Symbol.for(`drizzle:ExtraConfigBuilder`),fL=Symbol.for(`drizzle:IsDrizzleTable`);var pL=(mr=class{constructor(t,n,r){e.defineProperty(this,OI,void 0),e.defineProperty(this,cL,void 0),e.defineProperty(this,aL,void 0),e.defineProperty(this,oL,void 0),e.defineProperty(this,sL,void 0),e.defineProperty(this,lL,void 0),e.defineProperty(this,uL,!1),e.defineProperty(this,fL,!0),e.defineProperty(this,dL,void 0),this[OI]=this[cL]=t,this[aL]=n,this[lL]=r}},e.defineProperty(mr,Y,`Table`),e.defineProperty(mr,`Symbol`,{Name:OI,Schema:aL,OriginalName:cL,Columns:oL,ExtraConfigColumns:sL,BaseName:lL,IsAlias:uL,ExtraConfigBuilder:dL}),mr);function mL(e){return e[OI]}function hL(e){return`${e[aL]??`public`}.${e[OI]}`}var gL=(hr=class{},e.defineProperty(hr,Y,`FakePrimitiveParam`),hr);function _L(e){return e!=null&&typeof e.getSQL==`function`}function vL(e){let t={sql:``,params:[]};for(let r of e){var n;t.sql+=r.sql,t.params.push(...r.params),(n=r.typings)?.length&&(t.typings||=[],t.typings.push(...r.typings))}return t}var yL=(gr=class{constructor(t){e.defineProperty(this,`value`,void 0),this.value=Array.isArray(t)?t:[t]}getSQL(){return new bL([this])}},e.defineProperty(gr,Y,`StringChunk`),gr),bL=(_r=class t{constructor(t){e.defineProperty(this,`decoder`,CL),e.defineProperty(this,`shouldInlineParams`,!1),e.defineProperty(this,`usedTables`,[]),this.queryChunks=t;for(let e of t)if(X(e,pL)){let t=e[pL.Symbol.Schema];this.usedTables.push(t===void 0?e[pL.Symbol.Name]:t+`.`+e[pL.Symbol.Name])}}append(e){return this.queryChunks.push(...e.queryChunks),this}toQuery(e){return rL.startActiveSpan(`drizzle.buildSQL`,t=>{let n=this.buildQueryFromSourceParams(this.queryChunks,e);return t?.setAttributes({"drizzle.query.text":n.sql,"drizzle.query.params":JSON.stringify(n.params)}),n})}buildQueryFromSourceParams(e,n){let r=Object.assign({},n,{inlineParams:n.inlineParams||this.shouldInlineParams,paramStartIndex:n.paramStartIndex||{value:0}}),{casing:i,escapeName:a,escapeParam:o,prepareTyping:s,inlineParams:c,paramStartIndex:l}=r;return vL(e.map(e=>{if(X(e,yL))return{sql:e.value.join(``),params:[]};if(X(e,xL))return{sql:a(e.value),params:[]};if(e===void 0)return{sql:``,params:[]};if(Array.isArray(e)){let t=[new yL(`(`)];for(let[n,r]of e.entries())t.push(r),ne},wL={mapToDriverValue:e=>e},TL={...CL,...wL};var EL=(yr=class{constructor(t,n=wL){e.defineProperty(this,`brand`,void 0),this.value=t,this.encoder=n}getSQL(){return new bL([this])}},e.defineProperty(yr,Y,`Param`),yr);function Z(e,...t){let n=[];(t.length>0||e.length>0&&e[0]!==``)&&n.push(new yL(e[0]));for(let[r,i]of t.entries())n.push(i,new yL(e[r+1]));return new bL(n)}(e=>{function t(){return new bL([])}e.empty=t;function n(e){return new bL(e)}e.fromList=n;function r(e){return new bL([new yL(e)])}e.raw=r;function i(e,t){let n=[];for(let[r,i]of e.entries())r>0&&t!==void 0&&n.push(t),n.push(i);return new bL(n)}e.join=i;function a(e){return new xL(e)}e.identifier=a;function o(e){return new DL(e)}e.placeholder=o;function s(e,t){return new EL(e,t)}e.param=s})(Z||={}),(t=>{class n{constructor(t,n){e.defineProperty(this,`isSelectionField`,!1),this.sql=t,this.fieldAlias=n}getSQL(){return this.sql}clone(){return new n(this.sql,this.fieldAlias)}}e.defineProperty(n,Y,`SQL.Aliased`),t.Aliased=n})(bL||={});var DL=(br=class{constructor(e){this.name=e}getSQL(){return new bL([this])}},e.defineProperty(br,Y,`Placeholder`),br);function OL(e,t){return e.map(e=>{if(X(e,DL)){if(!(e.name in t))throw Error(`No value for placeholder "${e.name}" was provided`);return t[e.name]}if(X(e,EL)&&X(e.value,DL)){if(!(e.value.name in t))throw Error(`No value for placeholder "${e.value.name}" was provided`);return e.encoder.mapToDriverValue(t[e.value.name])}return e})}const kL=Symbol.for(`drizzle:IsDrizzleView`);var AL=(xr=class{constructor({name:t,schema:n,selectedFields:r,query:i}){e.defineProperty(this,iL,void 0),e.defineProperty(this,kL,!0),this[iL]={name:t,originalName:t,schema:n,selectedFields:r,query:i,isExisting:!i,isAlias:!1}}getSQL(){return new bL([this])}},e.defineProperty(xr,Y,`View`),xr);EI.prototype.getSQL=function(){return new bL([this])},pL.prototype.getSQL=function(){return new bL([this])},QI.prototype.getSQL=function(){return new bL([this])};var jL=(Sr=class{constructor(e){this.table=e}get(e,t){return t===`table`?this.table:e[t]}},e.defineProperty(Sr,Y,`ColumnAliasProxyHandler`),Sr),ML=(Cr=class{constructor(e,t){this.alias=e,this.replaceOriginalName=t}get(e,t){if(t===pL.Symbol.IsAlias)return!0;if(t===pL.Symbol.Name||this.replaceOriginalName&&t===pL.Symbol.OriginalName)return this.alias;if(t===iL)return{...e[iL],name:this.alias,isAlias:!0};if(t===pL.Symbol.Columns){let t=e[pL.Symbol.Columns];if(!t)return t;let n={};return Object.keys(t).map(r=>{n[r]=new Proxy(t[r],new jL(new Proxy(e,this)))}),n}let n=e[t];return X(n,EI)?new Proxy(n,new jL(new Proxy(e,this))):n}},e.defineProperty(Cr,Y,`TableAliasProxyHandler`),Cr),NL=(wr=class{constructor(e){this.alias=e}get(e,t){return t===`sourceTable`?PL(e.sourceTable,this.alias):e[t]}},e.defineProperty(wr,Y,`RelationTableAliasProxyHandler`),wr);function PL(e,t){return new Proxy(e,new ML(t,!1))}function FL(e,t){return new Proxy(e,new jL(new Proxy(e.table,new ML(t,!1))))}function IL(e,t){return new bL.Aliased(LL(e.sql,t),e.fieldAlias)}function LL(e,t){return Z.join(e.queryChunks.map(e=>X(e,EI)?FL(e,t):X(e,bL)?LL(e,t):X(e,bL.Aliased)?IL(e,t):e))}var RL=(Tr=class extends Error{constructor({message:e,cause:t}){super(e),this.name=`DrizzleError`,this.cause=t}},e.defineProperty(Tr,Y,`DrizzleError`),Tr),zL=(Er=class extends RL{constructor(){super({message:`Rollback`})}},e.defineProperty(Er,Y,`TransactionRollbackError`),Er),BL=(Dr=class{write(e){console.log(e)}},e.defineProperty(Dr,Y,`ConsoleLogWriter`),Dr),VL=(Or=class{constructor(t){e.defineProperty(this,`writer`,void 0),this.writer=t?.writer??new BL}logQuery(e,t){let n=t.map(e=>{try{return JSON.stringify(e)}catch{return String(e)}}),r=n.length?` -- params: [${n.join(`, `)}]`:``;this.writer.write(`Query: ${e}${r}`)}},e.defineProperty(Or,Y,`DefaultLogger`),Or),HL=(kr=class{logQuery(){}},e.defineProperty(kr,Y,`NoopLogger`),kr),UL=(Ii=Symbol.toStringTag,Ar=class{constructor(){e.defineProperty(this,Ii,`QueryPromise`)}catch(e){return this.then(void 0,e)}finally(e){return this.then(t=>(e?.(),t),t=>{throw e?.(),t})}then(e,t){return this.execute().then(e,t)}},e.defineProperty(Ar,Y,`QueryPromise`),Ar);function WL(e,t){return Object.entries(e).reduce((e,[n,r])=>{if(typeof n!=`string`)return e;let i=t?[...t,n]:[n];return X(r,EI)||X(r,bL)||X(r,bL.Aliased)?e.push({path:i,field:r}):X(r,pL)?e.push(...WL(r[pL.Symbol.Columns],i)):e.push(...WL(r,i)),e},[])}function GL(e,t){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let[e,t]of n.entries())if(t!==r[e])return!1;return!0}function KL(e,t){let n=Object.entries(t).filter(([,e])=>e!==void 0).map(([t,n])=>X(n,bL)||X(n,EI)?[t,n]:[t,new EL(n,e[pL.Symbol.Columns][t])]);if(n.length===0)throw Error(`No values to set`);return Object.fromEntries(n)}function qL(e,t){for(let n of t)for(let t of Object.getOwnPropertyNames(n.prototype)){if(t===`constructor`)continue;Object.defineProperty(e.prototype,t,Object.getOwnPropertyDescriptor(n.prototype,t)||Object.create(null))}}function JL(e){return e[pL.Symbol.Columns]}function YL(e){return X(e,QI)?e._.alias:X(e,AL)?e[iL].name:X(e,bL)?void 0:e[pL.Symbol.IsAlias]?e[pL.Symbol.Name]:e[pL.Symbol.BaseName]}function XL(e){if(typeof e!=`object`||!e||e.constructor.name!==`Object`)return!1;if(`logger`in e){let t=typeof e.logger;return!(t!==`boolean`&&(t!==`object`||typeof e.logger.logQuery!=`function`)&&t!==`undefined`)}if(`schema`in e){let t=typeof e.schema;return!(t!==`object`&&t!==`undefined`)}if(`casing`in e){let t=typeof e.casing;return!(t!==`string`&&t!==`undefined`)}if(`mode`in e)return!(e.mode!==`default`||e.mode!==`planetscale`||e.mode!==void 0);if(`connection`in e){let t=typeof e.connection;return!(t!==`string`&&t!==`object`&&t!==`undefined`)}if(`client`in e){let t=typeof e.client;return!(t!==`object`&&t!==`function`&&t!==`undefined`)}return Object.keys(e).length===0}var ZL=(jr=class extends BI{defaultNow(){return this.default(Z`now()`)}},e.defineProperty(jr,Y,`PgDateColumnBaseBuilder`),jr),QL=(Mr=class extends ZL{constructor(e){super(e,`date`,`PgDate`)}build(e){return new $L(e,this.config)}},e.defineProperty(Mr,Y,`PgDateBuilder`),Mr),$L=(Nr=class extends VI{getSQLType(){return`date`}mapFromDriverValue(e){return new Date(e)}mapToDriverValue(e){return e.toISOString()}},e.defineProperty(Nr,Y,`PgDate`),Nr),eR=(Pr=class extends ZL{constructor(e){super(e,`string`,`PgDateString`)}build(e){return new tR(e,this.config)}},e.defineProperty(Pr,Y,`PgDateStringBuilder`),Pr),tR=(Fr=class extends VI{getSQLType(){return`date`}},e.defineProperty(Fr,Y,`PgDateString`),Fr),nR=(Ir=class extends BI{constructor(e){super(e,`json`,`PgJson`)}build(e){return new rR(e,this.config)}},e.defineProperty(Ir,Y,`PgJsonBuilder`),Ir),rR=(Lr=class extends VI{constructor(e,t){super(e,t)}getSQLType(){return`json`}mapToDriverValue(e){return JSON.stringify(e)}mapFromDriverValue(e){if(typeof e==`string`)try{return JSON.parse(e)}catch{return e}return e}},e.defineProperty(Lr,Y,`PgJson`),Lr),iR=(Rr=class extends BI{constructor(e){super(e,`json`,`PgJsonb`)}build(e){return new aR(e,this.config)}},e.defineProperty(Rr,Y,`PgJsonbBuilder`),Rr),aR=(zr=class extends VI{constructor(e,t){super(e,t)}getSQLType(){return`jsonb`}mapToDriverValue(e){return JSON.stringify(e)}mapFromDriverValue(e){if(typeof e==`string`)try{return JSON.parse(e)}catch{return e}return e}},e.defineProperty(zr,Y,`PgJsonb`),zr),oR=(Br=class extends BI{constructor(e,t,n){super(e,`string`,`PgNumeric`),this.config.precision=t,this.config.scale=n}build(e){return new sR(e,this.config)}},e.defineProperty(Br,Y,`PgNumericBuilder`),Br),sR=(Vr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`precision`,void 0),e.defineProperty(this,`scale`,void 0),this.precision=n.precision,this.scale=n.scale}mapFromDriverValue(e){return typeof e==`string`?e:String(e)}getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?`numeric`:`numeric(${this.precision})`}},e.defineProperty(Vr,Y,`PgNumeric`),Vr),cR=(Hr=class extends BI{constructor(e,t,n){super(e,`number`,`PgNumericNumber`),this.config.precision=t,this.config.scale=n}build(e){return new lR(e,this.config)}},e.defineProperty(Hr,Y,`PgNumericNumberBuilder`),Hr),lR=(Ur=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`precision`,void 0),e.defineProperty(this,`scale`,void 0),e.defineProperty(this,`mapToDriverValue`,String),this.precision=n.precision,this.scale=n.scale}mapFromDriverValue(e){return typeof e==`number`?e:Number(e)}getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?`numeric`:`numeric(${this.precision})`}},e.defineProperty(Ur,Y,`PgNumericNumber`),Ur),uR=(Wr=class extends BI{constructor(e,t,n){super(e,`bigint`,`PgNumericBigInt`),this.config.precision=t,this.config.scale=n}build(e){return new dR(e,this.config)}},e.defineProperty(Wr,Y,`PgNumericBigIntBuilder`),Wr),dR=(Gr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`precision`,void 0),e.defineProperty(this,`scale`,void 0),e.defineProperty(this,`mapFromDriverValue`,BigInt),e.defineProperty(this,`mapToDriverValue`,String),this.precision=n.precision,this.scale=n.scale}getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?`numeric`:`numeric(${this.precision})`}},e.defineProperty(Gr,Y,`PgNumericBigInt`),Gr),fR=(Kr=class extends ZL{constructor(e,t,n){super(e,`string`,`PgTime`),this.withTimezone=t,this.precision=n,this.config.withTimezone=t,this.config.precision=n}build(e){return new pR(e,this.config)}},e.defineProperty(Kr,Y,`PgTimeBuilder`),Kr),pR=(qr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`withTimezone`,void 0),e.defineProperty(this,`precision`,void 0),this.withTimezone=n.withTimezone,this.precision=n.precision}getSQLType(){let e=this.precision===void 0?``:`(${this.precision})`;return`time${e}${this.withTimezone?` with time zone`:``}`}},e.defineProperty(qr,Y,`PgTime`),qr),mR=(Jr=class extends ZL{constructor(e,t,n){super(e,`date`,`PgTimestamp`),this.config.withTimezone=t,this.config.precision=n}build(e){return new hR(e,this.config)}},e.defineProperty(Jr,Y,`PgTimestampBuilder`),Jr),hR=(Yr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`withTimezone`,void 0),e.defineProperty(this,`precision`,void 0),e.defineProperty(this,`mapFromDriverValue`,e=>new Date(this.withTimezone?e:e+`+0000`)),e.defineProperty(this,`mapToDriverValue`,e=>e.toISOString()),this.withTimezone=n.withTimezone,this.precision=n.precision}getSQLType(){let e=this.precision===void 0?``:` (${this.precision})`;return`timestamp${e}${this.withTimezone?` with time zone`:``}`}},e.defineProperty(Yr,Y,`PgTimestamp`),Yr),gR=(Xr=class extends ZL{constructor(e,t,n){super(e,`string`,`PgTimestampString`),this.config.withTimezone=t,this.config.precision=n}build(e){return new _R(e,this.config)}},e.defineProperty(Xr,Y,`PgTimestampStringBuilder`),Xr),_R=(Zr=class extends VI{constructor(t,n){super(t,n),e.defineProperty(this,`withTimezone`,void 0),e.defineProperty(this,`precision`,void 0),this.withTimezone=n.withTimezone,this.precision=n.precision}getSQLType(){let e=this.precision===void 0?``:`(${this.precision})`;return`timestamp${e}${this.withTimezone?` with time zone`:``}`}},e.defineProperty(Zr,Y,`PgTimestampString`),Zr),vR=(Qr=class extends BI{constructor(e){super(e,`string`,`PgUUID`)}defaultRandom(){return this.default(Z`gen_random_uuid()`)}build(e){return new yR(e,this.config)}},e.defineProperty(Qr,Y,`PgUUIDBuilder`),Qr),yR=($r=class extends VI{getSQLType(){return`uuid`}},e.defineProperty($r,Y,`PgUUID`),$r);const bR=Symbol.for(`drizzle:PgInlineForeignKeys`),xR=Symbol.for(`drizzle:EnableRLS`);var SR=(Li=pL.Symbol.ExtraConfigBuilder,Ri=pL.Symbol.ExtraConfigColumns,ei=class extends pL{constructor(...t){super(...t),e.defineProperty(this,bR,[]),e.defineProperty(this,xR,!1),e.defineProperty(this,Li,void 0),e.defineProperty(this,Ri,{})}},e.defineProperty(ei,Y,`PgTable`),e.defineProperty(ei,`Symbol`,Object.assign({},pL.Symbol,{InlineForeignKeys:bR,EnableRLS:xR})),ei),CR=(ti=class{constructor(t,n){e.defineProperty(this,`columns`,void 0),e.defineProperty(this,`name`,void 0),this.columns=t,this.name=n}build(e){return new wR(e,this.columns,this.name)}},e.defineProperty(ti,Y,`PgPrimaryKeyBuilder`),ti),wR=(ni=class{constructor(t,n,r){e.defineProperty(this,`columns`,void 0),e.defineProperty(this,`name`,void 0),this.table=t,this.columns=n,this.name=r}getName(){return this.name??`${this.table[SR.Symbol.Name]}_${this.columns.map(e=>e.name).join(`_`)}_pk`}},e.defineProperty(ni,Y,`PgPrimaryKey`),ni);function TR(e,t){return SL(t)&&!_L(e)&&!X(e,EL)&&!X(e,DL)&&!X(e,EI)&&!X(e,pL)&&!X(e,AL)?new EL(e,t):e}const ER=(e,t)=>Z`${e} = ${TR(t,e)}`,DR=(e,t)=>Z`${e} <> ${TR(t,e)}`;function OR(...e){let t=e.filter(e=>e!==void 0);if(t.length!==0)return t.length===1?new bL(t):new bL([new yL(`(`),Z.join(t,new yL(` and `)),new yL(`)`)])}function kR(...e){let t=e.filter(e=>e!==void 0);if(t.length!==0)return t.length===1?new bL(t):new bL([new yL(`(`),Z.join(t,new yL(` or `)),new yL(`)`)])}function AR(e){return Z`not ${e}`}const jR=(e,t)=>Z`${e} > ${TR(t,e)}`,MR=(e,t)=>Z`${e} >= ${TR(t,e)}`,NR=(e,t)=>Z`${e} < ${TR(t,e)}`,PR=(e,t)=>Z`${e} <= ${TR(t,e)}`;function FR(e,t){return Array.isArray(t)?t.length===0?Z`false`:Z`${e} in ${t.map(t=>TR(t,e))}`:Z`${e} in ${TR(t,e)}`}function IR(e,t){return Array.isArray(t)?t.length===0?Z`true`:Z`${e} not in ${t.map(t=>TR(t,e))}`:Z`${e} not in ${TR(t,e)}`}function LR(e){return Z`${e} is null`}function RR(e){return Z`${e} is not null`}function zR(e){return Z`exists ${e}`}function BR(e){return Z`not exists ${e}`}function VR(e,t,n){return Z`${e} between ${TR(t,e)} and ${TR(n,e)}`}function HR(e,t,n){return Z`${e} not between ${TR(t,e)} and ${TR(n,e)}`}function UR(e,t){return Z`${e} like ${t}`}function WR(e,t){return Z`${e} not like ${t}`}function GR(e,t){return Z`${e} ilike ${t}`}function KR(e,t){return Z`${e} not ilike ${t}`}function qR(e){return Z`${e} asc`}function JR(e){return Z`${e} desc`}var YR=(ri=class{constructor(t,n,r){e.defineProperty(this,`referencedTableName`,void 0),e.defineProperty(this,`fieldName`,void 0),this.sourceTable=t,this.referencedTable=n,this.relationName=r,this.referencedTableName=n[pL.Symbol.Name]}},e.defineProperty(ri,Y,`Relation`),ri),XR=(ii=class{constructor(e,t){this.table=e,this.config=t}},e.defineProperty(ii,Y,`Relations`),ii),ZR=(ai=class e extends YR{constructor(e,t,n,r){super(e,t,n?.relationName),this.config=n,this.isNullable=r}withFieldName(t){let n=new e(this.sourceTable,this.referencedTable,this.config,this.isNullable);return n.fieldName=t,n}},e.defineProperty(ai,Y,`One`),ai),QR=(oi=class e extends YR{constructor(e,t,n){super(e,t,n?.relationName),this.config=n}withFieldName(t){let n=new e(this.sourceTable,this.referencedTable,this.config);return n.fieldName=t,n}},e.defineProperty(oi,Y,`Many`),oi);function $R(){return{and:OR,between:VR,eq:ER,exists:zR,gt:jR,gte:MR,ilike:GR,inArray:FR,isNull:LR,isNotNull:RR,like:UR,lt:NR,lte:PR,ne:DR,not:AR,notBetween:HR,notExists:BR,notLike:WR,notIlike:KR,notInArray:IR,or:kR,sql:Z}}function ez(){return{sql:Z,asc:qR,desc:JR}}function tz(e,t){Object.keys(e).length===1&&`default`in e&&!X(e.default,pL)&&(e=e.default);let n={},r={},i={};for(let[o,s]of Object.entries(e))if(X(s,pL)){var a;let e=hL(s),t=r[e];n[e]=o,i[o]={tsName:o,dbName:s[pL.Symbol.Name],schema:s[pL.Symbol.Schema],columns:s[pL.Symbol.Columns],relations:t?.relations??{},primaryKey:t?.primaryKey??[]};for(let e of Object.values(s[pL.Symbol.Columns]))e.primary&&i[o].primaryKey.push(e);let c=(a=s[pL.Symbol.ExtraConfigBuilder])?.call(s,s[pL.Symbol.ExtraConfigColumns]);if(c)for(let e of Object.values(c))X(e,CR)&&i[o].primaryKey.push(...e.columns)}else if(X(s,XR)){let e=hL(s.table),a=n[e],o=s.config(t(s.table)),c;for(let[t,n]of Object.entries(o))if(a){let e=i[a];e.relations[t]=n,c&&e.primaryKey.push(...c)}else e in r||(r[e]={relations:{},primaryKey:c}),r[e].relations[t]=n}return{tables:i,tableNamesMap:n}}function nz(e){return function(t,n){return new ZR(e,t,n,n?.fields.reduce((e,t)=>e&&t.notNull,!0)??!1)}}function rz(e){return function(t,n){return new QR(e,t,n)}}function iz(e,t,n){if(X(n,ZR)&&n.config)return{fields:n.config.fields,references:n.config.references};let r=t[hL(n.referencedTable)];if(!r)throw Error(`Table "${n.referencedTable[pL.Symbol.Name]}" not found in schema`);let i=e[r];if(!i)throw Error(`Table "${r}" not found in schema`);let a=n.sourceTable,o=t[hL(a)];if(!o)throw Error(`Table "${a[pL.Symbol.Name]}" not found in schema`);let s=[];for(let e of Object.values(i.relations))(n.relationName&&n!==e&&e.relationName===n.relationName||!n.relationName&&e.referencedTable===n.sourceTable)&&s.push(e);if(s.length>1)throw n.relationName?Error(`There are multiple relations with name "${n.relationName}" in table "${r}"`):Error(`There are multiple relations between "${r}" and "${n.sourceTable[pL.Symbol.Name]}". Please specify relation name`);if(s[0]&&X(s[0],ZR)&&s[0].config)return{fields:s[0].config.references,references:s[0].config.fields};throw Error(`There is not enough information to infer relation "${o}.${n.fieldName}"`)}function az(e){return{one:nz(e),many:rz(e)}}function oz(e,t,n,r,i=e=>e){let a={};for(let[o,s]of r.entries())if(s.isJson){let r=t.relations[s.tsKey],c=n[o],l=typeof c==`string`?JSON.parse(c):c;a[s.tsKey]=X(r,ZR)?l&&oz(e,e[s.relationTableTsKey],l,s.selection,i):l.map(t=>oz(e,e[s.relationTableTsKey],t,s.selection,i))}else{let e=i(n[o]),t=s.field,r;r=X(t,EI)?t:X(t,bL)?t.decoder:t.sql.decoder,a[s.tsKey]=e===null?null:r.mapFromDriverValue(e)}return a}var sz=(si=class t{constructor(t){e.defineProperty(this,`config`,void 0),this.config={...t}}get(e,n){if(n===`_`)return{...e._,selectedFields:new Proxy(e._.selectedFields,this)};if(n===iL)return{...e[iL],selectedFields:new Proxy(e[iL].selectedFields,this)};if(typeof n==`symbol`)return e[n];let r=X(e,QI)?e._.selectedFields:X(e,AL)?e[iL].selectedFields:e,i=r[n];if(X(i,bL.Aliased)){if(this.config.sqlAliasedBehavior===`sql`&&!i.isSelectionField)return i.sql;let e=i.clone();return e.isSelectionField=!0,e}if(X(i,bL)){if(this.config.sqlBehavior===`sql`)return i;throw Error(`You tried to reference "${n}" field from a subquery, which is a raw SQL field, but it doesn't have an alias declared. Please add an alias to the field using ".as('alias')" method.`)}return X(i,EI)?this.config.alias?new Proxy(i,new jL(new Proxy(i.table,new ML(this.config.alias,this.config.replaceOriginalName??!1)))):i:typeof i!=`object`||!i?i:new Proxy(i,new t(this.config))}},e.defineProperty(si,Y,`SelectionProxyHandler`),si);function cz(e){let t=e.replace(/['\u2019]/g,``).match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[];return t.map(e=>e.toLowerCase()).join(`_`)}function lz(e){let t=e.replace(/['\u2019]/g,``).match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[];return t.reduce((e,t,n)=>{let r=n===0?t.toLowerCase():`${t[0].toUpperCase()}${t.slice(1)}`;return e+r},``)}function uz(e){return e}var dz=(ci=class{constructor(t){e.defineProperty(this,`cache`,{}),e.defineProperty(this,`cachedTables`,{}),e.defineProperty(this,`convert`,void 0),this.convert=t===`snake_case`?cz:t===`camelCase`?lz:uz}getColumnCasing(e){if(!e.keyAsName)return e.name;let t=e.table[pL.Symbol.Schema]??`public`,n=e.table[pL.Symbol.OriginalName],r=`${t}.${n}.${e.name}`;return this.cache[r]||this.cacheTable(e.table),this.cache[r]}cacheTable(e){let t=e[pL.Symbol.Schema]??`public`,n=e[pL.Symbol.OriginalName],r=`${t}.${n}`;if(!this.cachedTables[r]){for(let t of Object.values(e[pL.Symbol.Columns])){let e=`${r}.${t.name}`;this.cache[e]=this.convert(t.name)}this.cachedTables[r]=!0}}clearCache(){this.cache={},this.cachedTables={}}},e.defineProperty(ci,Y,`CasingCache`),ci),fz=(li=class extends AL{},e.defineProperty(li,Y,`PgViewBase`),li),pz=(ui=class{constructor(t){e.defineProperty(this,`casing`,void 0),this.casing=new dz(t?.casing)}async migrate(e,t,n){let r=typeof n==`string`?`__drizzle_migrations`:n.migrationsTable??`__drizzle_migrations`,i=typeof n==`string`?`drizzle`:n.migrationsSchema??`drizzle`,a=Z` - CREATE TABLE IF NOT EXISTS ${Z.identifier(i)}.${Z.identifier(r)} ( - id SERIAL PRIMARY KEY, - hash text NOT NULL, - created_at bigint - ) - `;await t.execute(Z`CREATE SCHEMA IF NOT EXISTS ${Z.identifier(i)}`),await t.execute(a);let o=await t.all(Z`select id, hash, created_at from ${Z.identifier(i)}.${Z.identifier(r)} order by created_at desc limit 1`),s=o[0];await t.transaction(async t=>{for await(let n of e)if(!s||Number(s.created_at){var r;return t[e]!==void 0||(r=n[e])?.onUpdateFn!==void 0}),i=r.length;return Z.join(r.flatMap((e,r)=>{let a=n[e],o=t[e]??Z.param(a.onUpdateFn(),a),s=Z`${Z.identifier(this.casing.getColumnCasing(a))} = ${o}`;return r{let i=[];if(X(e,bL.Aliased)&&e.isSelectionField)i.push(Z.identifier(e.fieldAlias));else if(X(e,bL.Aliased)||X(e,bL)){let n=X(e,bL.Aliased)?e.sql:e;t?i.push(new bL(n.queryChunks.map(e=>X(e,VI)?Z.identifier(this.casing.getColumnCasing(e)):e))):i.push(n),X(e,bL.Aliased)&&i.push(Z` as ${Z.identifier(e.fieldAlias)}`)}else X(e,EI)&&(t?i.push(Z.identifier(this.casing.getColumnCasing(e))):i.push(e));return ro?.some(({alias:t})=>t===(e[pL.Symbol.IsAlias]?mL(e):e[pL.Symbol.BaseName])))(e.field.table)){let t=mL(e.field.table);throw Error(`Your "${e.path.join(`->`)}" field references a column "${t}"."${e.field.name}", but the table "${t}" is not part of the query! Did you forget to join it?`)}let h=!o||o.length===0,g=this.buildWithCTE(e),_;f&&(_=f===!0?Z` distinct`:Z` distinct on (${Z.join(f.on,Z`, `)})`);let v=this.buildSelection(m,{isSingleTable:h}),y=this.buildFromTable(a),b=this.buildJoins(o),x=r?Z` where ${r}`:void 0,S=i?Z` having ${i}`:void 0,C;s&&s.length>0&&(C=Z` order by ${Z.join(s,Z`, `)}`);let w;c&&c.length>0&&(w=Z` group by ${Z.join(c,Z`, `)}`);let T=typeof l==`object`||typeof l==`number`&&l>=0?Z` limit ${l}`:void 0,E=u?Z` offset ${u}`:void 0,D=Z.empty();if(d){let e=Z` for ${Z.raw(d.strength)}`;d.config.of&&e.append(Z` of ${Z.join(Array.isArray(d.config.of)?d.config.of:[d.config.of],Z`, `)}`),d.config.noWait?e.append(Z` nowait`):d.config.skipLocked&&e.append(Z` skip locked`),D.append(e)}let O=Z`${g}select${_} ${v} from ${y}${b}${x}${w}${S}${C}${T}${E}${D}`;return p.length>0?this.buildSetOperations(O,p):O}buildSetOperations(e,t){let[n,...r]=t;if(!n)throw Error(`Cannot pass undefined values to any set operator`);return r.length===0?this.buildSetOperationQuery({leftSelect:e,setOperator:n}):this.buildSetOperations(this.buildSetOperationQuery({leftSelect:e,setOperator:n}),r)}buildSetOperationQuery({leftSelect:e,setOperator:{type:t,isAll:n,rightSelect:r,limit:i,orderBy:a,offset:o}}){let s=Z`(${e.getSQL()}) `,c=Z`(${r.getSQL()})`,l;if(a&&a.length>0){let e=[];for(let t of a)if(X(t,VI))e.push(Z.identifier(t.name));else if(X(t,bL)){for(let e=0;e=0?Z` limit ${i}`:void 0,d=Z.raw(`${t} ${n?`all `:``}`),f=o?Z` offset ${o}`:void 0;return Z`${s}${d}${c}${l}${u}${f}`}buildInsertQuery({table:e,values:t,onConflict:n,returning:r,withList:i,select:a,overridingSystemValue_:o}){let s=[],c=e[pL.Symbol.Columns],l=Object.entries(c).filter(([e,t])=>!t.shouldDisableInsert()),u=l.map(([,e])=>Z.identifier(this.casing.getColumnCasing(e)));if(a){let e=t;X(e,bL)?s.push(e):s.push(e.getSQL())}else{let e=t;s.push(Z.raw(`values `));for(let[t,n]of e.entries()){let r=[];for(let[e,t]of l){let i=n[e];if(i===void 0||X(i,EL)&&i.value===void 0)if(t.defaultFn!==void 0){let e=t.defaultFn(),n=X(e,bL)?e:Z.param(e,t);r.push(n)}else if(!t.default&&t.onUpdateFn!==void 0){let e=t.onUpdateFn(),n=X(e,bL)?e:Z.param(e,t);r.push(n)}else r.push(Z`default`);else r.push(i)}s.push(r),t({dbKey:t.name,tsKey:e,field:FL(t,o),relationTableTsKey:void 0,isJson:!1,selection:[]}))}else{let r=Object.fromEntries(Object.entries(i.columns).map(([e,t])=>[e,FL(t,o)]));if(a.where){let e=typeof a.where==`function`?a.where(r,$R()):a.where;p=e&&LL(e,o)}let s=[],c=[];if(a.columns){let e=!1;for(let[t,n]of Object.entries(a.columns)){if(n===void 0)continue;t in i.columns&&(!e&&n===!0&&(e=!0),c.push(t))}c.length>0&&(c=e?c.filter(e=>{var t;return(t=a.columns)?.[e]===!0}):Object.keys(i.columns).filter(e=>!c.includes(e)))}else c=Object.keys(i.columns);for(let e of c){let t=i.columns[e];s.push({tsKey:e,value:t})}let h=[];a.with&&(h=Object.entries(a.with).filter(e=>!!e[1]).map(([e,t])=>({tsKey:e,queryConfig:t,relation:i.relations[e]})));let g;if(a.extras){g=typeof a.extras==`function`?a.extras(r,{sql:Z}):a.extras;for(let[e,t]of Object.entries(g))s.push({tsKey:e,value:IL(t,o)})}for(let{tsKey:e,value:t}of s)l.push({dbKey:X(t,bL.Aliased)?t.fieldAlias:i.columns[e].name,tsKey:e,field:X(t,EI)?FL(t,o):t,relationTableTsKey:void 0,isJson:!1,selection:[]});let _=typeof a.orderBy==`function`?a.orderBy(r,ez()):a.orderBy??[];Array.isArray(_)||(_=[_]),f=_.map(e=>X(e,EI)?FL(e,o):LL(e,o)),u=a.limit,d=a.offset;for(let{tsKey:r,queryConfig:i,relation:a}of h){let s=iz(t,n,a),c=hL(a.referencedTable),u=n[c],d=`${o}_${r}`,f=OR(...s.fields.map((e,t)=>ER(FL(s.references[t],d),FL(e,o)))),p=this.buildRelationalQueryWithoutPK({fullSchema:e,schema:t,tableNamesMap:n,table:e[u],tableConfig:t[u],queryConfig:X(a,ZR)?i===!0?{limit:1}:{...i,limit:1}:i,tableAlias:d,joinOn:f,nestedQueryRelation:a}),h=Z`${Z.identifier(d)}.${Z.identifier(`data`)}`.as(r);m.push({on:Z`true`,table:new QI(p.sql,{},d),alias:d,joinType:`left`,lateral:!0}),l.push({dbKey:r,tsKey:r,field:h,relationTableTsKey:u,isJson:!0,selection:p.selection})}}if(l.length===0)throw new RL({message:`No fields selected for table "${i.tsName}" ("${o}")`});let h;if(p=OR(c,p),s){let e=Z`json_build_array(${Z.join(l.map(({field:e,tsKey:t,isJson:n})=>n?Z`${Z.identifier(`${o}_${t}`)}.${Z.identifier(`data`)}`:X(e,bL.Aliased)?e.sql:e),Z`, `)})`;X(s,QR)&&(e=Z`coalesce(json_agg(${e}${f.length>0?Z` order by ${Z.join(f,Z`, `)}`:void 0}), '[]'::json)`);let t=[{dbKey:`data`,tsKey:`data`,field:e.as(`data`),isJson:!0,relationTableTsKey:i.tsName,selection:l}],n=u!==void 0||d!==void 0||f.length>0;n?(h=this.buildSelectQuery({table:PL(r,o),fields:{},fieldsFlat:[{path:[],field:Z.raw(`*`)}],where:p,limit:u,offset:d,orderBy:f,setOperators:[]}),p=void 0,u=void 0,d=void 0,f=[]):h=PL(r,o),h=this.buildSelectQuery({table:X(h,SR)?h:new QI(h,{},o),fields:{},fieldsFlat:t.map(({field:e})=>({path:[],field:X(e,EI)?FL(e,o):e})),joins:m,where:p,limit:u,offset:d,orderBy:f,setOperators:[]})}else h=this.buildSelectQuery({table:PL(r,o),fields:{},fieldsFlat:l.map(({field:e})=>({path:[],field:X(e,EI)?FL(e,o):e})),joins:m,where:p,limit:u,offset:d,orderBy:f,setOperators:[]});return{tableTsKey:i.tsName,sql:h,selection:l}}},e.defineProperty(ui,Y,`PgDialect`),ui),mz=(di=class{getSelectedFields(){return this._.selectedFields}},e.defineProperty(di,Y,`TypedQueryBuilder`),di),hz=(fi=class{constructor(t){e.defineProperty(this,`fields`,void 0),e.defineProperty(this,`session`,void 0),e.defineProperty(this,`dialect`,void 0),e.defineProperty(this,`withList`,[]),e.defineProperty(this,`distinct`,void 0),e.defineProperty(this,`authToken`,void 0),this.fields=t.fields,this.session=t.session,this.dialect=t.dialect,t.withList&&(this.withList=t.withList),this.distinct=t.distinct}setToken(e){return this.authToken=e,this}from(e){let t=!!this.fields,n=e,r;return r=this.fields?this.fields:X(n,QI)?Object.fromEntries(Object.keys(n._.selectedFields).map(e=>[e,n[e]])):X(n,fz)?n[iL].selectedFields:X(n,bL)?{}:JL(n),new _z({table:n,fields:r,isPartialSelect:t,session:this.session,dialect:this.dialect,withList:this.withList,distinct:this.distinct}).setToken(this.authToken)}},e.defineProperty(fi,Y,`PgSelectBuilder`),fi),gz=(pi=class extends mz{constructor({table:t,fields:n,isPartialSelect:r,session:i,dialect:a,withList:o,distinct:s}){super(),e.defineProperty(this,`_`,void 0),e.defineProperty(this,`config`,void 0),e.defineProperty(this,`joinsNotNullableMap`,void 0),e.defineProperty(this,`tableName`,void 0),e.defineProperty(this,`isPartialSelect`,void 0),e.defineProperty(this,`session`,void 0),e.defineProperty(this,`dialect`,void 0),e.defineProperty(this,`cacheConfig`,void 0),e.defineProperty(this,`usedTables`,new Set),e.defineProperty(this,`leftJoin`,this.createJoin(`left`,!1)),e.defineProperty(this,`leftJoinLateral`,this.createJoin(`left`,!0)),e.defineProperty(this,`rightJoin`,this.createJoin(`right`,!1)),e.defineProperty(this,`innerJoin`,this.createJoin(`inner`,!1)),e.defineProperty(this,`innerJoinLateral`,this.createJoin(`inner`,!0)),e.defineProperty(this,`fullJoin`,this.createJoin(`full`,!1)),e.defineProperty(this,`crossJoin`,this.createJoin(`cross`,!1)),e.defineProperty(this,`crossJoinLateral`,this.createJoin(`cross`,!0)),e.defineProperty(this,`union`,this.createSetOperator(`union`,!1)),e.defineProperty(this,`unionAll`,this.createSetOperator(`union`,!0)),e.defineProperty(this,`intersect`,this.createSetOperator(`intersect`,!1)),e.defineProperty(this,`intersectAll`,this.createSetOperator(`intersect`,!0)),e.defineProperty(this,`except`,this.createSetOperator(`except`,!1)),e.defineProperty(this,`exceptAll`,this.createSetOperator(`except`,!0)),this.config={withList:o,table:t,fields:{...n},distinct:s,setOperators:[]},this.isPartialSelect=r,this.session=i,this.dialect=a,this._={selectedFields:n,config:this.config},this.tableName=YL(t),this.joinsNotNullableMap=typeof this.tableName==`string`?{[this.tableName]:!0}:{};for(let e of Dz(t))this.usedTables.add(e)}getUsedTables(){return[...this.usedTables]}createJoin(e,t){return(n,r)=>{var i;let a=this.tableName,o=YL(n);for(let e of Dz(n))this.usedTables.add(e);if(typeof o==`string`&&(i=this.config.joins)?.some(e=>e.alias===o))throw Error(`Alias "${o}" is already used in this query`);if(!this.isPartialSelect&&(Object.keys(this.joinsNotNullableMap).length===1&&typeof a==`string`&&(this.config.fields={[a]:this.config.fields}),typeof o==`string`&&!X(n,bL))){let e=X(n,QI)?n._.selectedFields:X(n,AL)?n[iL].selectedFields:n[pL.Symbol.Columns];this.config.fields[o]=e}if(typeof r==`function`&&(r=r(new Proxy(this.config.fields,new sz({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))),this.config.joins||(this.config.joins=[]),this.config.joins.push({on:r,table:n,joinType:e,alias:o,lateral:t}),typeof o==`string`)switch(e){case`left`:this.joinsNotNullableMap[o]=!1;break;case`right`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[o]=!0;break;case`cross`:case`inner`:this.joinsNotNullableMap[o]=!0;break;case`full`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[o]=!1;break}return this}}createSetOperator(e,t){return n=>{let r=typeof n==`function`?n(yz()):n;if(!GL(this.getSelectedFields(),r.getSelectedFields()))throw Error(`Set operator error (union / intersect / except): selected fields are not the same or are in a different order`);return this.config.setOperators.push({type:e,isAll:t,rightSelect:r}),this}}addSetOperators(e){return this.config.setOperators.push(...e),this}where(e){return typeof e==`function`&&(e=e(new Proxy(this.config.fields,new sz({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))),this.config.where=e,this}having(e){return typeof e==`function`&&(e=e(new Proxy(this.config.fields,new sz({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))),this.config.having=e,this}groupBy(...e){if(typeof e[0]==`function`){let t=e[0](new Proxy(this.config.fields,new sz({sqlAliasedBehavior:`alias`,sqlBehavior:`sql`})));this.config.groupBy=Array.isArray(t)?t:[t]}else this.config.groupBy=e;return this}orderBy(...e){if(typeof e[0]==`function`){let t=e[0](new Proxy(this.config.fields,new sz({sqlAliasedBehavior:`alias`,sqlBehavior:`sql`}))),n=Array.isArray(t)?t:[t];this.config.setOperators.length>0?this.config.setOperators.at(-1).orderBy=n:this.config.orderBy=n}else{let t=e;this.config.setOperators.length>0?this.config.setOperators.at(-1).orderBy=t:this.config.orderBy=t}return this}limit(e){return this.config.setOperators.length>0?this.config.setOperators.at(-1).limit=e:this.config.limit=e,this}offset(e){return this.config.setOperators.length>0?this.config.setOperators.at(-1).offset=e:this.config.offset=e,this}for(e,t={}){return this.config.lockingClause={strength:e,config:t},this}getSQL(){return this.dialect.buildSelectQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}as(e){let t=[];if(t.push(...Dz(this.config.table)),this.config.joins)for(let e of this.config.joins)t.push(...Dz(e.table));return new Proxy(new QI(this.getSQL(),this.config.fields,e,!1,[...new Set(t)]),new sz({alias:e,sqlAliasedBehavior:`alias`,sqlBehavior:`error`}))}getSelectedFields(){return new Proxy(this.config.fields,new sz({alias:this.tableName,sqlAliasedBehavior:`alias`,sqlBehavior:`error`}))}$dynamic(){return this}$withCache(e){return this.cacheConfig=e===void 0?{config:{},enable:!0,autoInvalidate:!0}:e===!1?{enable:!1}:{enable:!0,autoInvalidate:!0,...e},this}},e.defineProperty(pi,Y,`PgSelectQueryBuilder`),pi),_z=(mi=class extends gz{constructor(...t){super(...t),e.defineProperty(this,`authToken`,void 0),e.defineProperty(this,`execute`,e=>rL.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken)))}_prepare(e){let{session:t,config:n,dialect:r,joinsNotNullableMap:i,authToken:a,cacheConfig:o,usedTables:s}=this;if(!t)throw Error(`Cannot execute a query on a query builder. Please use a database instance instead.`);let{fields:c}=n;return rL.startActiveSpan(`drizzle.prepareQuery`,()=>{let n=WL(c),l=t.prepareQuery(r.sqlToQuery(this.getSQL()),n,e,!0,void 0,{type:`select`,tables:[...s]},o);return l.joinsNotNullableMap=i,l.setToken(a)})}prepare(e){return this._prepare(e)}setToken(e){return this.authToken=e,this}},e.defineProperty(mi,Y,`PgSelect`),mi);qL(_z,[UL]);function vz(e,t){return(n,r,...i)=>{let a=[r,...i].map(n=>({type:e,isAll:t,rightSelect:n}));for(let e of a)if(!GL(n.getSelectedFields(),e.rightSelect.getSelectedFields()))throw Error(`Set operator error (union / intersect / except): selected fields are not the same or are in a different order`);return n.addSetOperators(a)}}const yz=()=>({union:bz,unionAll:xz,intersect:Sz,intersectAll:Cz,except:wz,exceptAll:Tz}),bz=vz(`union`,!1),xz=vz(`union`,!0),Sz=vz(`intersect`,!1),Cz=vz(`intersect`,!0),wz=vz(`except`,!1),Tz=vz(`except`,!0);var Ez=(hi=class{constructor(t){e.defineProperty(this,`dialect`,void 0),e.defineProperty(this,`dialectConfig`,void 0),e.defineProperty(this,`$with`,(e,t)=>{let n=this,r=r=>(typeof r==`function`&&(r=r(n)),new Proxy(new $I(r.getSQL(),t??(`getSelectedFields`in r?r.getSelectedFields()??{}:{}),e,!0),new sz({alias:e,sqlAliasedBehavior:`alias`,sqlBehavior:`error`})));return{as:r}}),this.dialect=X(t,pz)?t:void 0,this.dialectConfig=X(t,pz)?void 0:t}with(...e){let t=this;function n(n){return new hz({fields:n??void 0,session:void 0,dialect:t.getDialect(),withList:e})}function r(e){return new hz({fields:e??void 0,session:void 0,dialect:t.getDialect(),distinct:!0})}function i(e,n){return new hz({fields:n??void 0,session:void 0,dialect:t.getDialect(),distinct:{on:e}})}return{select:n,selectDistinct:r,selectDistinctOn:i}}select(e){return new hz({fields:e??void 0,session:void 0,dialect:this.getDialect()})}selectDistinct(e){return new hz({fields:e??void 0,session:void 0,dialect:this.getDialect(),distinct:!0})}selectDistinctOn(e,t){return new hz({fields:t??void 0,session:void 0,dialect:this.getDialect(),distinct:{on:e}})}getDialect(){return this.dialect||=new pz(this.dialectConfig),this.dialect}},e.defineProperty(hi,Y,`PgQueryBuilder`),hi);function Dz(e){return X(e,SR)?[e[aL]?`${e[aL]}.${e[pL.Symbol.BaseName]}`:e[pL.Symbol.BaseName]]:X(e,QI)?e._.usedTables??[]:X(e,bL)?e.usedTables??[]:[]}var Oz=(gi=class extends UL{constructor(t,n,r,i){super(),e.defineProperty(this,`config`,void 0),e.defineProperty(this,`cacheConfig`,void 0),e.defineProperty(this,`authToken`,void 0),e.defineProperty(this,`execute`,e=>rL.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken))),this.session=n,this.dialect=r,this.config={table:t,withList:i}}where(e){return this.config.where=e,this}returning(e=this.config.table[pL.Symbol.Columns]){return this.config.returningFields=e,this.config.returning=WL(e),this}getSQL(){return this.dialect.buildDeleteQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){return rL.startActiveSpan(`drizzle.prepareQuery`,()=>this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,e,!0,void 0,{type:`delete`,tables:Dz(this.config.table)},this.cacheConfig))}prepare(e){return this._prepare(e)}setToken(e){return this.authToken=e,this}getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new sz({alias:mL(this.config.table),sqlAliasedBehavior:`alias`,sqlBehavior:`error`})):void 0}$dynamic(){return this}},e.defineProperty(gi,Y,`PgDelete`),gi),kz=(_i=class{constructor(t,n,r,i,a){e.defineProperty(this,`authToken`,void 0),this.table=t,this.session=n,this.dialect=r,this.withList=i,this.overridingSystemValue_=a}setToken(e){return this.authToken=e,this}overridingSystemValue(){return this.overridingSystemValue_=!0,this}values(e){if(e=Array.isArray(e)?e:[e],e.length===0)throw Error(`values() must be called with at least one value`);let t=e.map(e=>{let t={},n=this.table[pL.Symbol.Columns];for(let r of Object.keys(e)){let i=e[r];t[r]=X(i,bL)?i:new EL(i,n[r])}return t});return new Az(this.table,t,this.session,this.dialect,this.withList,!1,this.overridingSystemValue_).setToken(this.authToken)}select(e){let t=typeof e==`function`?e(new Ez):e;if(!X(t,bL)&&!GL(this.table[oL],t._.selectedFields))throw Error(`Insert select error: selected fields are not the same or are in a different order compared to the table definition`);return new Az(this.table,t,this.session,this.dialect,this.withList,!0)}},e.defineProperty(_i,Y,`PgInsertBuilder`),_i),Az=(vi=class extends UL{constructor(t,n,r,i,a,o,s){super(),e.defineProperty(this,`config`,void 0),e.defineProperty(this,`cacheConfig`,void 0),e.defineProperty(this,`authToken`,void 0),e.defineProperty(this,`execute`,e=>rL.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken))),this.session=r,this.dialect=i,this.config={table:t,values:n,withList:a,select:o,overridingSystemValue_:s}}returning(e=this.config.table[pL.Symbol.Columns]){return this.config.returningFields=e,this.config.returning=WL(e),this}onConflictDoNothing(e={}){if(e.target===void 0)this.config.onConflict=Z`do nothing`;else{let t=``;t=Array.isArray(e.target)?e.target.map(e=>this.dialect.escapeName(this.dialect.casing.getColumnCasing(e))).join(`,`):this.dialect.escapeName(this.dialect.casing.getColumnCasing(e.target));let n=e.where?Z` where ${e.where}`:void 0;this.config.onConflict=Z`(${Z.raw(t)})${n} do nothing`}return this}onConflictDoUpdate(e){if(e.where&&(e.targetWhere||e.setWhere))throw Error(`You cannot use both "where" and "targetWhere"/"setWhere" at the same time - "where" is deprecated, use "targetWhere" or "setWhere" instead.`);let t=e.where?Z` where ${e.where}`:void 0,n=e.targetWhere?Z` where ${e.targetWhere}`:void 0,r=e.setWhere?Z` where ${e.setWhere}`:void 0,i=this.dialect.buildUpdateSet(this.config.table,KL(this.config.table,e.set)),a=``;return a=Array.isArray(e.target)?e.target.map(e=>this.dialect.escapeName(this.dialect.casing.getColumnCasing(e))).join(`,`):this.dialect.escapeName(this.dialect.casing.getColumnCasing(e.target)),this.config.onConflict=Z`(${Z.raw(a)})${n} do update set ${i}${t}${r}`,this}getSQL(){return this.dialect.buildInsertQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){return rL.startActiveSpan(`drizzle.prepareQuery`,()=>this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,e,!0,void 0,{type:`insert`,tables:Dz(this.config.table)},this.cacheConfig))}prepare(e){return this._prepare(e)}setToken(e){return this.authToken=e,this}getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new sz({alias:mL(this.config.table),sqlAliasedBehavior:`alias`,sqlBehavior:`error`})):void 0}$dynamic(){return this}},e.defineProperty(vi,Y,`PgInsert`),vi),jz=(yi=class extends UL{constructor(t,n,r){super(),e.defineProperty(this,`config`,void 0),e.defineProperty(this,`authToken`,void 0),e.defineProperty(this,`execute`,e=>rL.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken))),this.session=n,this.dialect=r,this.config={view:t}}concurrently(){if(this.config.withNoData!==void 0)throw Error(`Cannot use concurrently and withNoData together`);return this.config.concurrently=!0,this}withNoData(){if(this.config.concurrently!==void 0)throw Error(`Cannot use concurrently and withNoData together`);return this.config.withNoData=!0,this}getSQL(){return this.dialect.buildRefreshMaterializedViewQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){return rL.startActiveSpan(`drizzle.prepareQuery`,()=>this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),void 0,e,!0))}prepare(e){return this._prepare(e)}setToken(e){return this.authToken=e,this}},e.defineProperty(yi,Y,`PgRefreshMaterializedView`),yi),Mz=(bi=class{constructor(t,n,r,i){e.defineProperty(this,`authToken`,void 0),this.table=t,this.session=n,this.dialect=r,this.withList=i}setToken(e){return this.authToken=e,this}set(e){return new Nz(this.table,KL(this.table,e),this.session,this.dialect,this.withList).setToken(this.authToken)}},e.defineProperty(bi,Y,`PgUpdateBuilder`),bi),Nz=(xi=class extends UL{constructor(t,n,r,i,a){super(),e.defineProperty(this,`config`,void 0),e.defineProperty(this,`tableName`,void 0),e.defineProperty(this,`joinsNotNullableMap`,void 0),e.defineProperty(this,`cacheConfig`,void 0),e.defineProperty(this,`leftJoin`,this.createJoin(`left`)),e.defineProperty(this,`rightJoin`,this.createJoin(`right`)),e.defineProperty(this,`innerJoin`,this.createJoin(`inner`)),e.defineProperty(this,`fullJoin`,this.createJoin(`full`)),e.defineProperty(this,`authToken`,void 0),e.defineProperty(this,`execute`,e=>this._prepare().execute(e,this.authToken)),this.session=r,this.dialect=i,this.config={set:n,table:t,withList:a,joins:[]},this.tableName=YL(t),this.joinsNotNullableMap=typeof this.tableName==`string`?{[this.tableName]:!0}:{}}from(e){let t=e,n=YL(t);return typeof n==`string`&&(this.joinsNotNullableMap[n]=!0),this.config.from=t,this}getTableLikeFields(e){return X(e,SR)?e[pL.Symbol.Columns]:X(e,QI)?e._.selectedFields:e[iL].selectedFields}createJoin(e){return(t,n)=>{let r=YL(t);if(typeof r==`string`&&this.config.joins.some(e=>e.alias===r))throw Error(`Alias "${r}" is already used in this query`);if(typeof n==`function`){let e=this.config.from&&!X(this.config.from,bL)?this.getTableLikeFields(this.config.from):void 0;n=n(new Proxy(this.config.table[pL.Symbol.Columns],new sz({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})),e&&new Proxy(e,new sz({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))}if(this.config.joins.push({on:n,table:t,joinType:e,alias:r}),typeof r==`string`)switch(e){case`left`:this.joinsNotNullableMap[r]=!1;break;case`right`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[r]=!0;break;case`inner`:this.joinsNotNullableMap[r]=!0;break;case`full`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[r]=!1;break}return this}}where(e){return this.config.where=e,this}returning(e){if(!e&&(e=Object.assign({},this.config.table[pL.Symbol.Columns]),this.config.from)){let t=YL(this.config.from);if(typeof t==`string`&&this.config.from&&!X(this.config.from,bL)){let n=this.getTableLikeFields(this.config.from);e[t]=n}for(let t of this.config.joins){let n=YL(t.table);if(typeof n==`string`&&!X(t.table,bL)){let r=this.getTableLikeFields(t.table);e[n]=r}}}return this.config.returningFields=e,this.config.returning=WL(e),this}getSQL(){return this.dialect.buildUpdateQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){let t=this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,e,!0,void 0,{type:`insert`,tables:Dz(this.config.table)},this.cacheConfig);return t.joinsNotNullableMap=this.joinsNotNullableMap,t}prepare(e){return this._prepare(e)}setToken(e){return this.authToken=e,this}getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new sz({alias:mL(this.config.table),sqlAliasedBehavior:`alias`,sqlBehavior:`error`})):void 0}$dynamic(){return this}},e.defineProperty(xi,Y,`PgUpdate`),xi),Pz=(zi=Symbol.toStringTag,Si=class t extends bL{constructor(n){super(t.buildEmbeddedCount(n.source,n.filters).queryChunks),e.defineProperty(this,`sql`,void 0),e.defineProperty(this,`token`,void 0),e.defineProperty(this,zi,`PgCountBuilder`),e.defineProperty(this,`session`,void 0),this.params=n,this.mapWith(Number),this.session=n.session,this.sql=t.buildCount(n.source,n.filters)}static buildEmbeddedCount(e,t){return Z`(select count(*) from ${e}${Z.raw(` where `).if(t)}${t})`}static buildCount(e,t){return Z`select count(*) as count from ${e}${Z.raw(` where `).if(t)}${t};`}setToken(e){return this.token=e,this}then(e,t){return Promise.resolve(this.session.count(this.sql,this.token)).then(e,t)}catch(e){return this.then(void 0,e)}finally(e){return this.then(t=>(e?.(),t),t=>{throw e?.(),t})}},e.defineProperty(Si,Y,`PgCountBuilder`),Si),Fz=(Ci=class{constructor(e,t,n,r,i,a,o){this.fullSchema=e,this.schema=t,this.tableNamesMap=n,this.table=r,this.tableConfig=i,this.dialect=a,this.session=o}findMany(e){return new Iz(this.fullSchema,this.schema,this.tableNamesMap,this.table,this.tableConfig,this.dialect,this.session,e||{},`many`)}findFirst(e){return new Iz(this.fullSchema,this.schema,this.tableNamesMap,this.table,this.tableConfig,this.dialect,this.session,e?{...e,limit:1}:{limit:1},`first`)}},e.defineProperty(Ci,Y,`PgRelationalQueryBuilder`),Ci),Iz=(wi=class extends UL{constructor(t,n,r,i,a,o,s,c,l){super(),e.defineProperty(this,`authToken`,void 0),this.fullSchema=t,this.schema=n,this.tableNamesMap=r,this.table=i,this.tableConfig=a,this.dialect=o,this.session=s,this.config=c,this.mode=l}_prepare(e){return rL.startActiveSpan(`drizzle.prepareQuery`,()=>{let{query:t,builtQuery:n}=this._toSQL();return this.session.prepareQuery(n,void 0,e,!0,(e,n)=>{let r=e.map(e=>oz(this.schema,this.tableConfig,e,t.selection,n));return this.mode===`first`?r[0]:r})})}prepare(e){return this._prepare(e)}_getQuery(){return this.dialect.buildRelationalQueryWithoutPK({fullSchema:this.fullSchema,schema:this.schema,tableNamesMap:this.tableNamesMap,table:this.table,tableConfig:this.tableConfig,queryConfig:this.config,tableAlias:this.tableConfig.tsName})}getSQL(){return this._getQuery().sql}_toSQL(){let e=this._getQuery(),t=this.dialect.sqlToQuery(e.sql);return{query:e,builtQuery:t}}toSQL(){return this._toSQL().builtQuery}setToken(e){return this.authToken=e,this}execute(){return rL.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(void 0,this.authToken))}},e.defineProperty(wi,Y,`PgRelationalQuery`),wi),Lz=(Ti=class extends UL{constructor(e,t,n,r){super(),this.execute=e,this.sql=t,this.query=n,this.mapBatchResult=r}getSQL(){return this.sql}getQuery(){return this.query}mapResult(e,t){return t?this.mapBatchResult(e):e}_prepare(){return this}isResponseInArrayMode(){return!1}},e.defineProperty(Ti,Y,`PgRaw`),Ti),Rz=(Ei=class{constructor(t,n,r){if(e.defineProperty(this,`query`,void 0),e.defineProperty(this,`$with`,(e,t)=>{let n=this,r=r=>(typeof r==`function`&&(r=r(new Ez(n.dialect))),new Proxy(new $I(r.getSQL(),t??(`getSelectedFields`in r?r.getSelectedFields()??{}:{}),e,!0),new sz({alias:e,sqlAliasedBehavior:`alias`,sqlBehavior:`error`})));return{as:r}}),e.defineProperty(this,`$cache`,void 0),e.defineProperty(this,`authToken`,void 0),this.dialect=t,this.session=n,this._=r?{schema:r.schema,fullSchema:r.fullSchema,tableNamesMap:r.tableNamesMap,session:n}:{schema:void 0,fullSchema:{},tableNamesMap:{},session:n},this.query={},this._.schema)for(let[e,i]of Object.entries(this._.schema))this.query[e]=new Fz(r.fullSchema,this._.schema,this._.tableNamesMap,r.fullSchema[e],i,t,n);this.$cache={invalidate:async e=>{}}}$count(e,t){return new Pz({source:e,filters:t,session:this.session})}with(...e){let t=this;function n(n){return new hz({fields:n??void 0,session:t.session,dialect:t.dialect,withList:e})}function r(n){return new hz({fields:n??void 0,session:t.session,dialect:t.dialect,withList:e,distinct:!0})}function i(n,r){return new hz({fields:r??void 0,session:t.session,dialect:t.dialect,withList:e,distinct:{on:n}})}function a(n){return new Mz(n,t.session,t.dialect,e)}function o(n){return new kz(n,t.session,t.dialect,e)}function s(n){return new Oz(n,t.session,t.dialect,e)}return{select:n,selectDistinct:r,selectDistinctOn:i,update:a,insert:o,delete:s}}select(e){return new hz({fields:e??void 0,session:this.session,dialect:this.dialect})}selectDistinct(e){return new hz({fields:e??void 0,session:this.session,dialect:this.dialect,distinct:!0})}selectDistinctOn(e,t){return new hz({fields:t??void 0,session:this.session,dialect:this.dialect,distinct:{on:e}})}update(e){return new Mz(e,this.session,this.dialect)}insert(e){return new kz(e,this.session,this.dialect)}delete(e){return new Oz(e,this.session,this.dialect)}refreshMaterializedView(e){return new jz(e,this.session,this.dialect)}execute(e){let t=typeof e==`string`?Z.raw(e):e.getSQL(),n=this.dialect.sqlToQuery(t),r=this.session.prepareQuery(n,void 0,void 0,!1);return new Lz(()=>r.execute(void 0,this.authToken),t,n,e=>r.mapResult(e,!0))}transaction(e,t){return this.session.transaction(e,t)}},e.defineProperty(Ei,Y,`PgDatabase`),Ei),zz=(Di=class{},e.defineProperty(Di,Y,`Cache`),Di),Bz=(Oi=class extends zz{strategy(){return`all`}async get(e){}async put(e,t,n,r){}async onMutate(e){}},e.defineProperty(Oi,Y,`NoopCache`),Oi);async function Vz(e,t){let n=`${e}-${JSON.stringify(t)}`,r=new TextEncoder,i=r.encode(n),a=await crypto.subtle.digest(`SHA-256`,i),o=[...new Uint8Array(a)],s=o.map(e=>e.toString(16).padStart(2,`0`)).join(``);return s}var Hz=class e extends Error{constructor(t,n,r){super(`Failed query: ${t} -params: ${n}`),this.query=t,this.params=n,this.cause=r,Error.captureStackTrace(this,e),r&&(this.cause=r)}},Uz=(ki=class{constructor(t,n,r,i){var a;e.defineProperty(this,`authToken`,void 0),e.defineProperty(this,`joinsNotNullableMap`,void 0),this.query=t,this.cache=n,this.queryMetadata=r,this.cacheConfig=i,n&&n.strategy()===`all`&&i===void 0&&(this.cacheConfig={enable:!0,autoInvalidate:!0}),(a=this.cacheConfig)?.enable||(this.cacheConfig=void 0)}getQuery(){return this.query}mapResult(e,t){return e}setToken(e){return this.authToken=e,this}async queryWithCache(e,t,n){if(this.cache===void 0||X(this.cache,Bz)||this.queryMetadata===void 0)try{return await n()}catch(n){throw new Hz(e,t,n)}if(this.cacheConfig&&!this.cacheConfig.enable)try{return await n()}catch(n){throw new Hz(e,t,n)}if((this.queryMetadata.type===`insert`||this.queryMetadata.type===`update`||this.queryMetadata.type===`delete`)&&this.queryMetadata.tables.length>0)try{let[e]=await Promise.all([n(),this.cache.onMutate({tables:this.queryMetadata.tables})]);return e}catch(n){throw new Hz(e,t,n)}if(!this.cacheConfig)try{return await n()}catch(n){throw new Hz(e,t,n)}if(this.queryMetadata.type===`select`){let r=await this.cache.get(this.cacheConfig.tag??await Vz(e,t),this.queryMetadata.tables,this.cacheConfig.tag!==void 0,this.cacheConfig.autoInvalidate);if(r===void 0){let r;try{r=await n()}catch(n){throw new Hz(e,t,n)}return await this.cache.put(this.cacheConfig.tag??await Vz(e,t),r,this.cacheConfig.autoInvalidate?this.queryMetadata.tables:[],this.cacheConfig.tag!==void 0,this.cacheConfig.config),r}return r}try{return await n()}catch(n){throw new Hz(e,t,n)}}},e.defineProperty(ki,Y,`PgPreparedQuery`),ki),Wz=(Ai=class{constructor(e){this.dialect=e}execute(e,t){return rL.startActiveSpan(`drizzle.operation`,()=>{let n=rL.startActiveSpan(`drizzle.prepareQuery`,()=>this.prepareQuery(this.dialect.sqlToQuery(e),void 0,void 0,!1));return n.setToken(t).execute(void 0,t)})}all(e){return this.prepareQuery(this.dialect.sqlToQuery(e),void 0,void 0,!1).all()}async count(e,t){let n=await this.execute(e,t);return Number(n[0].count)}},e.defineProperty(Ai,Y,`PgSession`),Ai),Gz=(ji=class extends Rz{constructor(e,t,n,r=0){super(e,t,n),this.schema=n,this.nestedIndex=r}rollback(){throw new zL}getTransactionConfigSQL(e){let t=[];return e.isolationLevel&&t.push(`isolation level ${e.isolationLevel}`),e.accessMode&&t.push(e.accessMode),typeof e.deferrable==`boolean`&&t.push(e.deferrable?`deferrable`:`not deferrable`),Z.raw(t.join(` `))}setTransaction(e){return this.session.execute(Z`set transaction ${this.getTransactionConfigSQL(e)}`)}},e.defineProperty(ji,Y,`PgTransaction`),ji);function Kz(e){return typeof e==`string`&&/^true$/i.test(e)}function qz(e){let t={scheme:`duckdb-wasm:`},n=new URL(e);if(!n.protocol.startsWith(`duckdb-wasm:`))throw Error(`Expected scheme to be "duckdb-wasm:" but got "${n.protocol}"`);n.searchParams.get(`bundles`)===`import-url`&&(t.bundles=`import-url`);let r=n.searchParams.get(`logger`);r&&Kz(r)&&(t.logger=!0);let i=n.searchParams.get(`storage`);switch(i){case xI.ORIGIN_PRIVATE_FS:{n.host.length>0&&console.warn(`Host "${n.host}" will be ignored while using Origin Private FS`);let e=n.searchParams.get(`write`);t.storage={type:xI.ORIGIN_PRIVATE_FS,path:n.pathname.startsWith(`/`)?n.pathname.slice(1):n.pathname,...e&&Kz(e)&&{accessMode:VE.READ_WRITE}};break}case null:break;default:console.warn(`Unknown storage type "${i}"`);break}return t}var Jz=(Mi=class extends Uz{constructor(e,t,n,r,i,a){super({sql:t,params:n}),this.client=e,this.queryString=t,this.params=n,this.logger=r,this.fields=i,this.customResultMapper=a}async execute(e={}){let t=OL(this.params,e);this.logger.logQuery(this.queryString,t);let{fields:n,queryString:r,client:i,customResultMapper:a}=this,o=await i;return o.query(r,t)}async all(e={}){let t=OL(this.params,e);this.logger.logQuery(this.queryString,t);let n=await this.client;return n.query(this.queryString,t)}},e.defineProperty(Mi,Y,`DuckDBWasmPreparedQuery`),Mi),Yz=(Ni=class t extends Wz{constructor(t,n,r,i={}){super(n),e.defineProperty(this,`logger`,void 0),this.client=t,this.schema=r,this.options=i,this.logger=i.logger??new HL}prepareQuery(e,t,n,r,i){return new Jz(this.client,e.sql,e.params,this.logger,t,i)}async query(e,t){this.logger.logQuery(e,t);let n=await this.client;return n.query(e,t)}async queryObjects(e,t){this.logger.logQuery(e,t);let n=await this.client;return n.query(e,t)}transaction(e,n){return CI(this.client,async r=>{let i=new t(r,this.dialect,this.schema,this.options),a=new Xz(this.dialect,i,this.schema);return n&&await a.setTransaction(n),e(a)})}},e.defineProperty(Ni,Y,`DuckDBWasmSession`),Ni),Xz=(Pi=class t extends Gz{constructor(t,n,r,i=0){super(t,n,r,i),e.defineProperty(this,`dialect`,void 0),e.defineProperty(this,`session`,void 0),this.dialect=t,this.session=n}async transaction(e){return wI(this.session.client,``,async n=>{let r=new Yz(n,this.dialect,this.schema,this.session.options),i=new t(this.dialect,r,this.schema);return e(i)})}},e.defineProperty(Pi,Y,`DuckDBWasmTransaction`),Pi),Zz=(Fi=class extends Rz{},e.defineProperty(Fi,Y,`DuckDBWasmDatabase`),Fi);function Qz(e,t={}){let n=new pz({casing:t.casing}),r;t.logger===!0?r=new VL:t.logger!==!1&&(r=t.logger);let i;if(t.schema){let e=tz(t.schema,az);i={fullSchema:t.schema,schema:e.tables,tableNamesMap:e.tableNamesMap}}let a=new Yz(e,n,i,{logger:r}),o=new Zz(n,a,i);return o.$client=e,o}function $z(e,t){let n=qz(e),r;if(n.bundles===`import-url`){let e=async()=>{let e=await JF();switch(e){case`browser`:return(await jt(async()=>{let{getImportUrlBundles:e}=await import(`./import-url-browser-CimRTf1_.js`);return{getImportUrlBundles:e}},__vite__mapDeps([4,5,6]))).getImportUrlBundles();case`node`:return await(await jt(async()=>{let{getImportUrlBundles:e}=await import(`./import-url-node-D_b2Vrj1.js`);return{getImportUrlBundles:e}},__vite__mapDeps([7,6]))).getImportUrlBundles();default:throw Error(`Unsupported environment: "${e}"`)}};r=e()}else{let e=async()=>{let e=await JF();switch(e){case`browser`:return(await jt(async()=>{let{getBundles:e}=await import(`./default-browser-CAeK6Ish.js`);return{getBundles:e}},[])).getBundles();case`node`:return await(await jt(async()=>{let{getBundles:e}=await import(`./default-node-CK1wfd3F.js`);return{getBundles:e}},__vite__mapDeps([3,1,2]))).getBundles();default:throw Error(`Unsupported environment: "${e}"`)}};r=e()}return Qz(SI({bundles:r,logger:n.logger?new JE:void 0,storage:n.storage}),t)}function eB(...e){if(typeof e[0]==`string`)return $z(e[0],e[1]);if(XL(e[0])){let{connection:t,client:n,...r}=e[0];if(n)return Qz(n,r);if(typeof t==`string`)return $z(t,r);if(t===void 0)throw Error(`connection option is required`);return Qz(SI({bundles:t.bundles,logger:t.logger,storage:t.storage}),r)}return Qz(e[0],e[1])}(function(e){function t(e){return Qz({options:{parsers:{},serializers:{}}},e)}e.mock=t})(eB||={});var tB=Object.defineProperty,nB=(e,t,n)=>t in e?tB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,rB=(e,t,n)=>nB(e,typeof t==`symbol`?t:t+``,n);function iB(e){return Gt()?(on(e),!0):!1}function aB(e){return typeof e==`function`?e():G(e)}const oB=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;const sB=Object.prototype.toString,cB=e=>sB.call(e)===`[object Object]`,lB=()=>{};function uB(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}function dB(e,t={}){let n,r,i=lB,a=e=>{clearTimeout(e),i(),i=lB};return o=>{let s=aB(e),c=aB(t.maxWait);return n&&a(n),s<=0||c!==void 0&&c<=0?(r&&(a(r),r=null),Promise.resolve(o())):new Promise((e,l)=>{i=t.rejectOnCancel?l:e,c&&!r&&(r=setTimeout(()=>{n&&a(n),r=null,e(o())},c)),n=setTimeout(()=>{r&&a(r),r=null,e(o())},s)})}}function fB(...e){let t=0,n,r=!0,i=lB,a,o,s,c,l;!Jt(e[0])&&typeof e[0]==`object`?{delay:o,trailing:s=!0,leading:c=!0,rejectOnCancel:l=!1}=e[0]:[o,s=!0,c=!0,l=!1]=e;let u=()=>{n&&(clearTimeout(n),n=void 0,i(),i=lB)};return e=>{let d=aB(o),f=Date.now()-t,p=()=>a=e();return u(),d<=0?(t=Date.now(),p()):(f>d&&(c||!r)?(t=Date.now(),p()):s&&(a=new Promise((e,a)=>{i=l?a:e,n=setTimeout(()=>{t=Date.now(),r=!0,e(p()),u()},Math.max(0,d-f))})),!c&&!n&&(n=setTimeout(()=>r=!0,d)),r=!1,a)}}function pB(e){return Wt()}function mB(e,t=200,n={}){return uB(dB(t,n),e)}function hB(e,t=200,n=!1,r=!0,i=!1){return uB(fB(t,n,r,i),e)}function gB(e,t=!0,n){pB()?an(e,n):t?e():en(e)}const _B=oB?window:void 0;function vB(e){var t;let n=aB(e);return(t=n?.$el)??n}function yB(...e){let t,n,r,i;if(typeof e[0]==`string`||Array.isArray(e[0])?([n,r,i]=e,t=_B):[t,n,r,i]=e,!t)return lB;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);let a=[],o=()=>{a.forEach(e=>e()),a.length=0},s=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),c=K(()=>[vB(t),aB(i)],([e,t])=>{if(o(),!e)return;let i=cB(t)?{...t}:t;a.push(...n.flatMap(t=>r.map(n=>s(e,t,n,i))))},{immediate:!0,flush:`post`}),l=()=>{c(),o()};return iB(l),l}function bB(){let e=U(!1),t=Wt();return t&&an(()=>{e.value=!0},t),e}function xB(e){let t=bB();return Pt(()=>(t.value,!!e()))}function SB(e,t={}){let{window:n=_B}=t,r=xB(()=>n&&`matchMedia`in n&&typeof n.matchMedia==`function`),i,a=U(!1),o=e=>{a.value=e.matches},s=()=>{i&&(`removeEventListener`in i?i.removeEventListener(`change`,o):i.removeListener(o))},c=Wn(()=>{r.value&&(s(),i=n.matchMedia(aB(e)),`addEventListener`in i?i.addEventListener(`change`,o):i.addListener(o),a.value=i.matches)});return iB(()=>{c(),s(),i=void 0}),a}function CB(e,t,n={}){let{window:r=_B,...i}=n,a,o=xB(()=>r&&`ResizeObserver`in r),s=()=>{a&&(a.disconnect(),a=void 0)},c=Pt(()=>{let t=aB(e);return Array.isArray(t)?t.map(e=>vB(e)):[vB(t)]}),l=K(c,e=>{if(s(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),u=()=>{s(),l()};return iB(u),{isSupported:o,stop:u}}function wB(e,t={width:0,height:0},n={}){let{window:r=_B,box:i=`content-box`}=n,a=Pt(()=>{var t,n;return(n=(t=vB(e))?.namespaceURI)?.includes(`svg`)}),o=U(t.width),s=U(t.height),{stop:c}=CB(e,([t])=>{let n=i===`border-box`?t.borderBoxSize:i===`content-box`?t.contentBoxSize:t.devicePixelContentBoxSize;if(r&&a.value){let t=vB(e);if(t){let e=t.getBoundingClientRect();o.value=e.width,s.value=e.height}}else if(n){let e=Array.isArray(n)?n:[n];o.value=e.reduce((e,{inlineSize:t})=>e+t,0),s.value=e.reduce((e,{blockSize:t})=>e+t,0)}else o.value=t.contentRect.width,s.value=t.contentRect.height},n);gB(()=>{let n=vB(e);n&&(o.value=`offsetWidth`in n?n.offsetWidth:t.width,s.value=`offsetHeight`in n?n.offsetHeight:t.height)});let l=K(()=>vB(e),e=>{o.value=e?t.width:0,s.value=e?t.height:0});function u(){c(),l()}return{width:o,height:s,stop:u}}const TB=1;function EB(e,t={}){let{throttle:n=0,idle:r=200,onStop:i=lB,onScroll:a=lB,offset:o={left:0,right:0,top:0,bottom:0},eventListenerOptions:s={capture:!1,passive:!0},behavior:c=`auto`,window:l=_B,onError:u=e=>{console.error(e)}}=t,d=U(0),f=U(0),p=Pt({get(){return d.value},set(e){h(e,void 0)}}),m=Pt({get(){return f.value},set(e){h(void 0,e)}});function h(t,n){var r,i,a,o;if(!l)return;let s=aB(e);if(!s)return;(a=s instanceof Document?l.document.body:s)==null||a.scrollTo({top:(r=aB(n))??m.value,left:(i=aB(t))??p.value,behavior:aB(c)});let u=(o=s?.document)?.documentElement||s?.documentElement||s;p!=null&&(d.value=u.scrollLeft),m!=null&&(f.value=u.scrollTop)}let g=U(!1),_=dn({left:!0,right:!1,top:!0,bottom:!1}),v=dn({left:!1,right:!1,top:!1,bottom:!1}),y=e=>{g.value&&(g.value=!1,v.left=!1,v.right=!1,v.top=!1,v.bottom=!1,i(e))},b=mB(y,n+r),x=e=>{var t;if(!l)return;let n=(t=e?.document)?.documentElement||e?.documentElement||vB(e),{display:r,flexDirection:i}=getComputedStyle(n),a=n.scrollLeft;v.left=ad.value;let s=Math.abs(a)<=(o.left||0),c=Math.abs(a)+n.clientWidth>=n.scrollWidth-(o.right||0)-TB;r===`flex`&&i===`row-reverse`?(_.left=c,_.right=s):(_.left=s,_.right=c),d.value=a;let u=n.scrollTop;e===l.document&&!u&&(u=l.document.body.scrollTop),v.top=uf.value;let p=Math.abs(u)<=(o.top||0),m=Math.abs(u)+n.clientHeight>=n.scrollHeight-(o.bottom||0)-TB;r===`flex`&&i===`column-reverse`?(_.top=m,_.bottom=p):(_.top=p,_.bottom=m),f.value=u},S=e=>{var t;if(!l)return;let n=(t=e.target.documentElement)??e.target;x(n),g.value=!0,b(e),a(e)};return yB(e,`scroll`,n?hB(S,n,!0,!1):S,s),gB(()=>{try{let t=aB(e);if(!t)return;x(t)}catch(e){u(e)}}),yB(e,`scrollend`,y,s),{x:p,y:m,isScrolling:g,arrivedState:_,directions:v,measure(){let t=aB(e);l&&t&&x(t)}}}const DB={ctrl:`control`,command:`meta`,cmd:`meta`,option:`alt`,up:`arrowup`,down:`arrowdown`,left:`arrowleft`,right:`arrowright`};function OB(e={}){let{reactive:t=!1,target:n=_B,aliasMap:r=DB,passive:i=!0,onEventFired:a=lB}=e,o=dn(new Set),s={toJSON(){return{}},current:o},c=t?dn(s):s,l=new Set,u=new Set;function d(e,n){e in c&&(t?c[e]=n:c[e].value=n)}function f(){o.clear();for(let e of u)d(e,!1)}function p(e,t){var n,r;let i=(n=e.key)?.toLowerCase(),a=[(r=e.code)?.toLowerCase(),i].filter(Boolean);i&&(t?o.add(i):o.delete(i));for(let e of a)u.add(e),d(e,t);i===`meta`&&!t?(l.forEach(e=>{o.delete(e),d(e,!1)}),l.clear()):typeof e.getModifierState==`function`&&e.getModifierState(`Meta`)&&t&&[...o,...a].forEach(e=>l.add(e))}yB(n,`keydown`,e=>(p(e,!0),a(e)),{passive:i}),yB(n,`keyup`,e=>(p(e,!1),a(e)),{passive:i}),yB(`blur`,f,{passive:!0}),yB(`focus`,f,{passive:!0});let m=new Proxy(c,{get(e,n,i){if(typeof n!=`string`)return Reflect.get(e,n,i);if(n=n.toLowerCase(),n in r&&(n=r[n]),!(n in c))if(/[+_-]/.test(n)){let e=n.split(/[+_-]/g).map(e=>e.trim());c[n]=Pt(()=>e.every(e=>aB(m[e])))}else c[n]=U(!1);let a=Reflect.get(e,n,i);return t?aB(a):a}});return m}const kB={page:e=>[e.pageX,e.pageY],client:e=>[e.clientX,e.clientY],screen:e=>[e.screenX,e.screenY],movement:e=>e instanceof Touch?null:[e.movementX,e.movementY]};function AB(e={}){let{type:t=`page`,touch:n=!0,resetOnTouchEnds:r=!1,initialValue:i={x:0,y:0},window:a=_B,target:o=a,scroll:s=!0,eventFilter:c}=e,l=null,u=0,d=0,f=U(i.x),p=U(i.y),m=U(null),h=typeof t==`function`?t:kB[t],g=e=>{let t=h(e);l=e,t&&([f.value,p.value]=t,m.value=`mouse`),a&&(u=a.scrollX,d=a.scrollY)},_=e=>{if(e.touches.length>0){let t=h(e.touches[0]);t&&([f.value,p.value]=t,m.value=`touch`)}},v=()=>{if(!l||!a)return;let e=h(l);l instanceof MouseEvent&&e&&(f.value=e[0]+a.scrollX-u,p.value=e[1]+a.scrollY-d)},y=()=>{f.value=i.x,p.value=i.y},b=c?e=>c(()=>g(e),{}):e=>g(e),x=c?e=>c(()=>_(e),{}):e=>_(e),S=c?()=>c(()=>v(),{}):()=>v();if(o){let e={passive:!0};yB(o,[`mousemove`,`dragover`],b,e),n&&t!==`movement`&&(yB(o,[`touchstart`,`touchmove`],x,e),r&&yB(o,`touchend`,y,e)),s&&t===`page`&&yB(a,`scroll`,S,{passive:!0})}return{x:f,y:p,sourceType:m}}function jB(e={}){let{window:t=_B,behavior:n=`auto`}=e;if(!t)return{x:U(0),y:U(0)};let r=U(t.scrollX),i=U(t.scrollY),a=Pt({get(){return r.value},set(e){scrollTo({left:e,behavior:n})}}),o=Pt({get(){return i.value},set(e){scrollTo({top:e,behavior:n})}});return yB(t,`scroll`,()=>{r.value=t.scrollX,i.value=t.scrollY},{capture:!1,passive:!0}),{x:a,y:o}}function MB(e={}){let{window:t=_B,initialWidth:n=1/0,initialHeight:r=1/0,listenOrientation:i=!0,includeScrollbar:a=!0,type:o=`inner`}=e,s=U(n),c=U(r),l=()=>{t&&(o===`outer`?(s.value=t.outerWidth,c.value=t.outerHeight):a?(s.value=t.innerWidth,c.value=t.innerHeight):(s.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(l(),gB(l),yB(`resize`,l,{passive:!0}),i){let e=SB(`(orientation: portrait)`);K(e,()=>l())}return{width:s,height:c}}function NB(e){let{resolution:t,renderer:n,scene:r,envMap:i,fog:a,near:o,far:s}=e;n??=gn().renderer,r??=gn().scene,Wn(()=>{t=Sn(e.resolution)??255,o=Sn(e.near)??.1,s=Sn(e.far)??1e3,i=Sn(e.envMap)??void 0,a=Sn(e.fog)??void 0,n=Sn(e.renderer)??n,r=Sn(e.scene)??r});let c=Pt(()=>new St(Sn(t)));c.value.texture.type=z,iB(()=>{c.value.dispose()});let l=Pt(()=>new v(Sn(o),Sn(s),Sn(c))),u=()=>{let e=Sn(r),t=e.fog,o=e.background;e.background=Sn(i)||o,e.fog=Sn(a)||t,l.value.update(Sn(n),e),e.fog=t,e.background=o};return Wn(u),{fbo:c,camera:l,update:u}}const PB=[`object`],FB=zt({__name:`component`,props:{frames:{default:1/0},resolution:{},near:{},far:{},envMap:{},fog:{},renderer:{},scene:{}},setup(e,{expose:t}){let n=e,r=W(),{fbo:i,camera:a,update:o}=NB(n),s=0;return Kt().onBeforeRender(()=>{r.value&&(n.frames===1/0||s{`material`in e&&typeof e.material==`object`&&e.material&&`envMap`in e.material&&(e.material.envMap=i.value.texture)}),s++)}),t({instance:r,fbo:i,camera:a,update:o}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`groupRef`,ref:r},[V(`primitive`,{object:G(a)},null,8,PB),mn(e.$slots,`default`)],512))}}),IB=zt({__name:`Billboard`,props:{autoUpdate:{type:Boolean,default:!0},lockX:{type:Boolean,default:!1},lockY:{type:Boolean,default:!1},lockZ:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,r=W(new ne),i=W(new ne),a=new Ue,o=new N;function s(e){r.value&&(!e&&(e=gn().camera.value,!e)||(i.value.rotation.copy(o),r.value.updateMatrix(),r.value.updateWorldMatrix(!1,!1),r.value.getWorldQuaternion(a),e.getWorldQuaternion(i.value.quaternion).premultiply(a.invert()),n.lockX&&(i.value.rotation.x=o.x),n.lockY&&(i.value.rotation.y=o.y),n.lockZ&&(i.value.rotation.z=o.z)))}return Kt().onBeforeRender(({camera:e})=>{n.autoUpdate&&s(e)}),t({instance:r,update:s}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`outerRef`,ref:r},[V(`TresGroup`,{ref_key:`innerRef`,ref:i},[mn(e.$slots,`default`)],512)],512))}}),LB=zt({name:`GlobalAudio`,props:[`src`,`loop`,`volume`,`playbackRate`,`playTrigger`,`stopTrigger`],async setup(e,{expose:t,emit:n}){var r;let{camera:s,renderer:c}=cn(),l=new a;(r=s.value)==null||r.add(l);let u=new i(l),d=new o;t({instance:u}),sn(()=>{u&&u.disconnect()}),K(()=>[e.playbackRate],()=>u.setPlaybackRate(e.playbackRate??1),{immediate:!0}),K(()=>[e.volume],()=>u.setVolume(e.volume??.5),{immediate:!0}),K(()=>[e.loop],()=>u.setLoop(e.loop??!1),{immediate:!0}),K(()=>[e.src],async()=>{let t=await d.loadAsync(e.src);u.setBuffer(t)},{immediate:!0});let f=document.getElementById(e.playTrigger??``)||c.value.domElement;yB(f,`click`,()=>{u.isPlaying?u.pause():u.play(),n(`isPlaying`,u.isPlaying)});let p=document.getElementById(e.stopTrigger??``);return p&&yB(p,`click`,()=>{u.stop(),n(`isPlaying`,u.isPlaying)}),null}}),RB=[`color-space`,`args`,`attach`],zB=zt({__name:`GradientTexture`,props:{stops:{},colors:{},attach:{default:`map`},height:{default:1024},width:{default:16},type:{default:`linear`},innerCircleRadius:{default:0},outerCircleRadius:{default:`auto`}},setup(e,{expose:t}){let n=e,r=W(),i=document.createElement(`canvas`);function a(e){let t=e.getContext(`2d`);e.width=n.width,e.height=n.height;let i;if(n.type===`linear`)i=t.createLinearGradient(0,0,0,n.height);else{let r=e.width/2,a=e.height/2,o=n.outerCircleRadius===`auto`?Math.sqrt(r**2+a**2):Math.abs(Number(n.outerCircleRadius));i=t.createRadialGradient(r,a,Math.abs(n.innerCircleRadius),r,a,o)}let a=new g,o=n.stops.length;for(;o--;)i.addColorStop(n.stops[o],a.set(n.colors[o]).getStyle());t.save(),t.fillStyle=i,t.fillRect(0,0,n.width,n.height),t.restore(),r.value&&(r.value.needsUpdate=!0)}let o=gn().renderer;return K(()=>[n.colors,n.stops,n.height,n.width,n.type,n.innerCircleRadius,n.outerCircleRadius],()=>{a(i)},{immediate:!0}),qt(n.colors)&&K(n.colors,()=>a(i)),qt(n.stops)&&K(n.stops,()=>a(i)),t({instance:r}),(e,t)=>(H(),Lt(`TresCanvasTexture`,{ref_key:`textureRef`,ref:r,"color-space":G(o).outputColorSpace,args:[G(i)],attach:n.attach},null,8,RB))}});function BB(e,t,n,r){let i=class extends et{constructor(r={}){let i=Object.entries(e);super({uniforms:i.reduce((e,[t,n])=>{let r=_t.clone({[t]:{value:n}});return{...e,...r}},{}),vertexShader:t,fragmentShader:n}),rB(this,`key`,``),i.forEach(([e])=>Object.defineProperty(this,e,{get:()=>this.uniforms[e].value,set:t=>this.uniforms[e].value=t})),Object.assign(this,r)}};return i.key=be.generateUUID(),i}const VB=BB({color:new g(`white`),scale:new yt(1,1),imageBounds:new yt(1,1),resolution:1024,map:null,zoom:1,radius:0,grayscale:0,opacity:1},` - varying vec2 vUv; - varying vec2 vPos; - void main() { - gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4(position, 1.); - vUv = uv; - vPos = position.xy; - } - `,` - // mostly from https://gist.github.com/statico/df64c5d167362ecf7b34fca0b1459a44 - varying vec2 vUv; - varying vec2 vPos; - uniform vec2 scale; - uniform vec2 imageBounds; - uniform float resolution; - uniform vec3 color; - uniform sampler2D map; - uniform float radius; - uniform float zoom; - uniform float grayscale; - uniform float opacity; - const vec3 luma = vec3(.299, 0.587, 0.114); - vec4 toGrayscale(vec4 color, float intensity) { - return vec4(mix(color.rgb, vec3(dot(color.rgb, luma)), intensity), color.a); - } - vec2 aspect(vec2 size) { - return size / min(size.x, size.y); - } - - const float PI = 3.14159265; - - // from https://iquilezles.org/articles/distfunctions - float udRoundBox( vec2 p, vec2 b, float r ) { - return length(max(abs(p)-b+r,0.0))-r; - } - - void main() { - vec2 s = aspect(scale); - vec2 i = aspect(imageBounds); - float rs = s.x / s.y; - float ri = i.x / i.y; - vec2 new = rs < ri ? vec2(i.x * s.y / i.y, s.y) : vec2(s.x, i.y * s.x / i.x); - vec2 offset = (rs < ri ? vec2((new.x - s.x) / 2.0, 0.0) : vec2(0.0, (new.y - s.y) / 2.0)) / new; - vec2 uv = vUv * s / new + offset; - vec2 zUv = (uv - vec2(0.5, 0.5)) / zoom + vec2(0.5, 0.5); - - vec2 res = vec2(scale * resolution); - vec2 halfRes = 0.5 * res; - float b = udRoundBox(vUv.xy * res - halfRes, halfRes, resolution * radius); - vec3 a = mix(vec3(1.0,0.0,0.0), vec3(0.0,0.0,0.0), smoothstep(0.0, 1.0, b)); - gl_FragColor = toGrayscale(texture2D(map, zUv) * vec4(color, opacity * a), grayscale); - - #include - #include - } - `),HB=zt({__name:`ImageMaterial`,setup(e,{expose:t}){A({ImageMaterial:VB});let n=W();return t({instance:n}),(e,t)=>(H(),Lt(`TresImageMaterial`,{ref_key:`materialRef`,ref:n},null,512))}}),UB=[`scale`],WB=[`args`],GB=zt({__name:`component`,props:{segments:{default:1},scale:{default:1},color:{default:()=>new g(`white`)},zoom:{default:1},radius:{default:0},grayscale:{default:0},toneMapped:{type:Boolean,default:!0},transparent:{type:Boolean,default:!1},opacity:{default:1},side:{default:R},texture:{},url:{}},setup(e,{expose:t}){let n=e,r=W(),i=W(n.texture??null),a=gn().sizes,o=Pt(()=>Array.isArray(n.scale)?[n.scale[0],n.scale[1]]:[n.scale,n.scale]),s=Pt(()=>{var e,t;return[(e=i.value)?.image.width??0,(t=i.value)?.image.height??0]}),c=Pt(()=>Math.max(a.width.value,a.height.value));Wn(()=>{n.texture?i.value=n.texture:Vt([n.url]).then(e=>i.value=e)});let l=Pt(()=>Array.isArray(n.scale)?[...n.scale,1]:n.scale);return t({instance:r}),(e,t)=>(H(),Lt(`TresMesh`,{ref_key:`imageRef`,ref:r,scale:l.value},[mn(e.$slots,`default`,{},()=>[V(`TresPlaneGeometry`,{args:[1,1,n.segments,n.segments]},null,8,WB)]),Rt(HB,{color:n.color,map:i.value,zoom:n.zoom,grayscale:n.grayscale,opacity:n.opacity,scale:o.value,imageBounds:s.value,resolution:c.value,radius:e.radius,toneMapped:e.toneMapped,transparent:e.transparent,side:e.side},null,8,[`color`,`map`,`zoom`,`grayscale`,`opacity`,`scale`,`imageBounds`,`resolution`,`radius`,`toneMapped`,`transparent`,`side`])],8,UB))}}),KB=parseInt(We.replace(/\D+/g,``)),qB=KB>=125?`uv1`:`uv2`;function JB(e,t=Math.PI/3){let n=Math.cos(t),r=1.0000000001*100,i=[new B,new B,new B],a=new B,o=new B,s=new B,c=new B;function l(e){let t=~~(e.x*r),n=~~(e.y*r),i=~~(e.z*r);return`${t},${n},${i}`}let u=e.index?e.toNonIndexed():e,f=u.attributes.position,p={};for(let e=0,t=f.count/3;en&&c.add(t)}c.normalize(),h.setXYZ(t+e,c.x,c.y,c.z)}}return u.setAttribute(`normal`,h),u}var YB=Object.defineProperty,XB=(e,t,n)=>t in e?YB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ZB=(e,t,n)=>(XB(e,t+``,n),n);async function QB(e){let t=await e.arrayBuffer(),n=btoa(String.fromCharCode(...new Uint8Array(t)));return`data:${e.type||``};base64,${n}`}let $B,eV,tV,nV;function rV(e,t=1/0,n=null){eV||=new ze(2,2,1,1),tV||=new et({uniforms:{blitTexture:new ht(e)},vertexShader:` - varying vec2 vUv; - void main(){ - vUv = uv; - gl_Position = vec4(position.xy * 1.0,0.,.999999); - } - `,fragmentShader:` - uniform sampler2D blitTexture; - varying vec2 vUv; - - void main(){ - gl_FragColor = vec4(vUv.xy, 0, 1); - - #ifdef IS_SRGB - gl_FragColor = LinearTosRGB( texture2D( blitTexture, vUv) ); - #else - gl_FragColor = texture2D( blitTexture, vUv); - #endif - } - `}),tV.uniforms.blitTexture.value=e,tV.defines.IS_SRGB=`colorSpace`in e?e.colorSpace===`srgb`:e.encoding===3001,tV.needsUpdate=!0,nV||(nV=new Ce(eV,tV),nV.frustrumCulled=!1);let r=new Le,i=new Ze;i.add(nV),n||=$B=new wt({antialias:!1}),n.setSize(Math.min(e.image.width,t),Math.min(e.image.height,t)),n.clear(),n.render(i,r);let a=new ut(n.domElement);return a.minFilter=e.minFilter,a.magFilter=e.magFilter,a.wrapS=e.wrapS,a.wrapT=e.wrapT,a.name=e.name,$B&&($B.dispose(),$B=null),a}const iV={POSITION:[`byte`,`byte normalized`,`unsigned byte`,`unsigned byte normalized`,`short`,`short normalized`,`unsigned short`,`unsigned short normalized`],NORMAL:[`byte normalized`,`short normalized`],TANGENT:[`byte normalized`,`short normalized`],TEXCOORD:[`byte`,`byte normalized`,`unsigned byte`,`short`,`short normalized`,`unsigned short`]};var aV=class{constructor(){this.pluginCallbacks=[],this.register(function(e){return new EV(e)}),this.register(function(e){return new DV(e)}),this.register(function(e){return new AV(e)}),this.register(function(e){return new jV(e)}),this.register(function(e){return new MV(e)}),this.register(function(e){return new NV(e)}),this.register(function(e){return new OV(e)}),this.register(function(e){return new kV(e)}),this.register(function(e){return new PV(e)}),this.register(function(e){return new FV(e)}),this.register(function(e){return new IV(e)})}register(e){return this.pluginCallbacks.indexOf(e)===-1&&this.pluginCallbacks.push(e),this}unregister(e){return this.pluginCallbacks.indexOf(e)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,r){let i=new TV,a=[];for(let e=0,t=this.pluginCallbacks.length;ee.times[e.times.length-1]){if(Math.abs(e.times[e.times.length-1]-t)<.001)return e.times.length-1;r[r.length-1]=t,r.set(e.times,0),i.set(e.values,0),i.set(a.evaluate(t),e.values.length),o=r.length-1}else for(let s=0;st){r.set(e.times.slice(0,s+1),0),r[s+1]=t,r.set(e.times.slice(s+1),s+2),i.set(e.values.slice(0,(s+1)*n),0),i.set(a.evaluate(t),(s+1)*n),i.set(e.values.slice((s+1)*n),(s+2)*n),o=s+1;break}}return e.times=r,e.values=i,o},mergeMorphTargetTracks:function(e,t){let n=[],r={},i=e.tracks;for(let e=0;e4?n=e.array[i*e.itemSize+t]:(t===0?n=e.getX(i):t===1?n=e.getY(i):t===2?n=e.getZ(i):t===3&&(n=e.getW(i)),e.normalized===!0&&(n=be.normalize(n,e.array))),r.min[t]=Math.min(r.min[t],n),r.max[t]=Math.max(r.max[t],n)}return r}function xV(e){return Math.ceil(e/4)*4}function SV(e,t=0){let n=xV(e.byteLength);if(n!==e.byteLength){let r=new Uint8Array(n);if(r.set(new Uint8Array(e)),t!==0)for(let i=e.byteLength;i`u`&&typeof OffscreenCanvas<`u`?new OffscreenCanvas(1,1):document.createElement(`canvas`)}function wV(e,t){if(e.toBlob!==void 0)return new Promise(n=>e.toBlob(n,t));let n;return t===`image/jpeg`?n=.92:t===`image/webp`&&(n=.8),e.convertToBlob({type:t,quality:n})}var TV=class{constructor(){this.plugins=[],this.options={},this.pending=[],this.buffers=[],this.byteOffset=0,this.buffers=[],this.nodeMap=new Map,this.skins=[],this.extensionsUsed={},this.extensionsRequired={},this.uids=new Map,this.uid=0,this.json={asset:{version:`2.0`,generator:`THREE.GLTFExporter`}},this.cache={meshes:new Map,attributes:new Map,attributesNormalized:new Map,materials:new Map,textures:new Map,images:new Map}}setPlugins(e){this.plugins=e}async write(e,t,n={}){this.options=Object.assign({binary:!1,trs:!1,onlyVisible:!0,maxTextureSize:1/0,animations:[],includeCustomExtensions:!1},n),this.options.animations.length>0&&(this.options.trs=!0),this.processInput(e),await Promise.all(this.pending);let r=this,i=r.buffers,a=r.json;n=r.options;let o=r.extensionsUsed,s=r.extensionsRequired,c=new Blob(i,{type:`application/octet-stream`}),l=Object.keys(o),u=Object.keys(s);l.length>0&&(a.extensionsUsed=l),u.length>0&&(a.extensionsRequired=u),a.buffers&&a.buffers.length>0&&(a.buffers[0].byteLength=c.size),n.binary===!0?c.arrayBuffer().then(e=>{let n=SV(e),r=new DataView(new ArrayBuffer(mV));r.setUint32(0,n.byteLength,!0),r.setUint32(4,gV,!0);let i=SV(vV(JSON.stringify(a)),32),o=new DataView(new ArrayBuffer(mV));o.setUint32(0,i.byteLength,!0),o.setUint32(4,hV,!0);let s=new ArrayBuffer(dV),c=new DataView(s);c.setUint32(0,fV,!0),c.setUint32(4,pV,!0);let l=dV+o.byteLength+i.byteLength+r.byteLength+n.byteLength;c.setUint32(8,l,!0),new Blob([s,o,i,r,n],{type:`application/octet-stream`}).arrayBuffer().then(t)}):a.buffers&&a.buffers.length>0?QB(c).then(e=>{a.buffers[0].uri=e,t(a)}):t(a)}serializeUserData(e,t){if(Object.keys(e.userData).length===0)return;let n=this.options,r=this.extensionsUsed;try{let i=JSON.parse(JSON.stringify(e.userData));if(n.includeCustomExtensions&&i.gltfExtensions){for(let e in t.extensions===void 0&&(t.extensions={}),i.gltfExtensions)t.extensions[e]=i.gltfExtensions[e],r[e]=!0;delete i.gltfExtensions}Object.keys(i).length>0&&(t.extras=i)}catch(t){console.warn(`THREE.GLTFExporter: userData of '`+e.name+`' won't be serialized because of JSON.stringify error - `+t.message)}}getUID(e,t=!1){if(this.uids.has(e)===!1){let t=new Map;t.set(!0,this.uid++),t.set(!1,this.uid++),this.uids.set(e,t)}return this.uids.get(e).get(t)}isNormalizedNormalAttribute(e){if(this.cache.attributesNormalized.has(e))return!1;let t=new B;for(let n=0,r=e.count;n5e-4)return!1;return!0}createNormalizedNormalAttribute(e){let t=this.cache;if(t.attributesNormalized.has(e))return t.attributesNormalized.get(e);let n=e.clone(),r=new B;for(let e=0,t=n.count;e4?r=e.array[i*e.itemSize+n]:(n===0?r=e.getX(i):n===1?r=e.getY(i):n===2?r=e.getZ(i):n===3&&(r=e.getW(i)),e.normalized===!0&&(r=be.normalize(r,e.array))),t===oV.FLOAT?c.setFloat32(l,r,!0):t===oV.INT?c.setInt32(l,r,!0):t===oV.UNSIGNED_INT?c.setUint32(l,r,!0):t===oV.SHORT?c.setInt16(l,r,!0):t===oV.UNSIGNED_SHORT?c.setUint16(l,r,!0):t===oV.BYTE?c.setInt8(l,r):t===oV.UNSIGNED_BYTE&&c.setUint8(l,r),l+=o}let u={buffer:this.processBuffer(c.buffer),byteOffset:this.byteOffset,byteLength:s};return i!==void 0&&(u.target=i),i===oV.ARRAY_BUFFER&&(u.byteStride=e.itemSize*o),this.byteOffset+=s,a.bufferViews.push(u),{id:a.bufferViews.length-1,byteLength:0}}processBufferViewImage(e){let t=this,n=t.json;return n.bufferViews||=[],e.arrayBuffer().then(e=>{let r=SV(e),i={buffer:t.processBuffer(r),byteOffset:t.byteOffset,byteLength:r.byteLength};return t.byteOffset+=r.byteLength,n.bufferViews.push(i)-1})}processAccessor(e,t,n,r){let i=this.json,a={1:`SCALAR`,2:`VEC2`,3:`VEC3`,4:`VEC4`,9:`MAT3`,16:`MAT4`},o;if(e.array.constructor===Float32Array)o=oV.FLOAT;else if(e.array.constructor===Int32Array)o=oV.INT;else if(e.array.constructor===Uint32Array)o=oV.UNSIGNED_INT;else if(e.array.constructor===Int16Array)o=oV.SHORT;else if(e.array.constructor===Uint16Array)o=oV.UNSIGNED_SHORT;else if(e.array.constructor===Int8Array)o=oV.BYTE;else if(e.array.constructor===Uint8Array)o=oV.UNSIGNED_BYTE;else throw Error(`THREE.GLTFExporter: Unsupported bufferAttribute component type: `+e.array.constructor.name);if(n===void 0&&(n=0),r===void 0&&(r=e.count),r===0)return null;let s=bV(e,n,r),c;t!==void 0&&(c=e===t.index?oV.ELEMENT_ARRAY_BUFFER:oV.ARRAY_BUFFER);let l=this.processBufferView(e,o,n,r,c),u={bufferView:l.id,byteOffset:l.byteOffset,componentType:o,count:r,max:s.max,min:s.min,type:a[e.itemSize]};return e.normalized===!0&&(u.normalized=!0),i.accessors||=[],i.accessors.push(u)-1}processImage(e,t,n,r=`image/png`){if(e!==null){let i=this,a=i.cache,o=i.json,s=i.options,c=i.pending;a.images.has(e)||a.images.set(e,{});let l=a.images.get(e),u=r+`:flipY/`+n.toString();if(l[u]!==void 0)return l[u];o.images||=[];let d={mimeType:r},f=CV();f.width=Math.min(e.width,s.maxTextureSize),f.height=Math.min(e.height,s.maxTextureSize);let p=f.getContext(`2d`);if(n===!0&&(p.translate(0,f.height),p.scale(1,-1)),e.data!==void 0){t!==Ge&&console.error(`GLTFExporter: Only RGBAFormat is supported.`,t),(e.width>s.maxTextureSize||e.height>s.maxTextureSize)&&console.warn(`GLTFExporter: Image size is bigger than maxTextureSize`,e);let n=new Uint8ClampedArray(e.height*e.width*4);for(let t=0;ti.processBufferViewImage(e)).then(e=>{d.bufferView=e})):f.toDataURL===void 0?c.push(wV(f,r).then(QB).then(e=>{d.uri=e})):d.uri=f.toDataURL(r);let m=o.images.push(d)-1;return l[u]=m,m}else throw Error(`THREE.GLTFExporter: No valid image data found. Unable to process texture.`)}processSampler(e){let t=this.json;t.samplers||=[];let n={magFilter:cV[e.magFilter],minFilter:cV[e.minFilter],wrapS:cV[e.wrapS],wrapT:cV[e.wrapT]};return t.samplers.push(n)-1}processTexture(e){let t=this.options,n=this.cache,r=this.json;if(n.textures.has(e))return n.textures.get(e);r.textures||=[],e instanceof _&&(e=rV(e,t.maxTextureSize));let i=e.userData.mimeType;i===`image/webp`&&(i=`image/png`);let a={sampler:this.processSampler(e),source:this.processImage(e.image,e.format,e.flipY,i)};e.name&&(a.name=e.name),this._invokeAll(function(t){t.writeTexture&&t.writeTexture(e,a)});let o=r.textures.push(a)-1;return n.textures.set(e,o),o}processMaterial(e){let t=this.cache,n=this.json;if(t.materials.has(e))return t.materials.get(e);if(e.isShaderMaterial)return console.warn(`GLTFExporter: THREE.ShaderMaterial not supported.`),null;n.materials||=[];let r={pbrMetallicRoughness:{}};e.isMeshStandardMaterial!==!0&&e.isMeshBasicMaterial!==!0&&console.warn(`GLTFExporter: Use MeshStandardMaterial or MeshBasicMaterial for best results.`);let i=e.color.toArray().concat([e.opacity]);if(_V(i,[1,1,1,1])||(r.pbrMetallicRoughness.baseColorFactor=i),e.isMeshStandardMaterial?(r.pbrMetallicRoughness.metallicFactor=e.metalness,r.pbrMetallicRoughness.roughnessFactor=e.roughness):(r.pbrMetallicRoughness.metallicFactor=.5,r.pbrMetallicRoughness.roughnessFactor=.5),e.metalnessMap||e.roughnessMap){let t=this.buildMetalRoughTexture(e.metalnessMap,e.roughnessMap),n={index:this.processTexture(t),channel:t.channel};this.applyTextureTransform(n,t),r.pbrMetallicRoughness.metallicRoughnessTexture=n}if(e.map){let t={index:this.processTexture(e.map),texCoord:e.map.channel};this.applyTextureTransform(t,e.map),r.pbrMetallicRoughness.baseColorTexture=t}if(e.emissive){let t=e.emissive;if(Math.max(t.r,t.g,t.b)>0&&(r.emissiveFactor=e.emissive.toArray()),e.emissiveMap){let t={index:this.processTexture(e.emissiveMap),texCoord:e.emissiveMap.channel};this.applyTextureTransform(t,e.emissiveMap),r.emissiveTexture=t}}if(e.normalMap){let t={index:this.processTexture(e.normalMap),texCoord:e.normalMap.channel};e.normalScale&&e.normalScale.x!==1&&(t.scale=e.normalScale.x),this.applyTextureTransform(t,e.normalMap),r.normalTexture=t}if(e.aoMap){let t={index:this.processTexture(e.aoMap),texCoord:e.aoMap.channel};e.aoMapIntensity!==1&&(t.strength=e.aoMapIntensity),this.applyTextureTransform(t,e.aoMap),r.occlusionTexture=t}e.transparent?r.alphaMode=`BLEND`:e.alphaTest>0&&(r.alphaMode=`MASK`,r.alphaCutoff=e.alphaTest),e.side===E&&(r.doubleSided=!0),e.name!==``&&(r.name=e.name),this.serializeUserData(e,r),this._invokeAll(function(t){t.writeMaterial&&t.writeMaterial(e,r)});let a=n.materials.push(r)-1;return t.materials.set(e,a),a}processMesh(e){let t=this.cache,n=this.json,r=[e.geometry.uuid];if(Array.isArray(e.material))for(let t=0,n=e.material.length;t=152?{uv:`TEXCOORD_0`,uv1:`TEXCOORD_1`,uv2:`TEXCOORD_2`,uv3:`TEXCOORD_3`}:{uv:`TEXCOORD_0`,uv2:`TEXCOORD_1`},color:`COLOR_0`,skinWeight:`WEIGHTS_0`,skinIndex:`JOINTS_0`},p=a.getAttribute(`normal`);p!==void 0&&!this.isNormalizedNormalAttribute(p)&&(console.warn(`THREE.GLTFExporter: Creating normalized normal attribute from the non-normalized one.`),a.setAttribute(`normal`,this.createNormalizedNormalAttribute(p)));let m=null;for(let e in a.attributes){if(e.slice(0,5)===`morph`)continue;let n=a.attributes[e];if(e=f[e]||e.toUpperCase(),/^(POSITION|NORMAL|TANGENT|TEXCOORD_\d+|COLOR_\d+|JOINTS_\d+|WEIGHTS_\d+)$/.test(e)||(e=`_`+e),t.attributes.has(this.getUID(n))){c[e]=t.attributes.get(this.getUID(n));continue}m=null;let r=n.array;e===`JOINTS_0`&&!(r instanceof Uint16Array)&&!(r instanceof Uint8Array)&&(console.warn(`GLTFExporter: Attribute "skinIndex" converted to type UNSIGNED_SHORT.`),m=new d(new Uint16Array(r),n.itemSize,n.normalized));let i=this.processAccessor(m||n,a);i!==null&&(e.startsWith(`_`)||this.detectMeshQuantization(e,n),c[e]=i,t.attributes.set(this.getUID(n),i))}if(p!==void 0&&a.setAttribute(`normal`,p),Object.keys(c).length===0)return null;if(e.morphTargetInfluences!==void 0&&e.morphTargetInfluences.length>0){let n=[],r=[],i={};if(e.morphTargetDictionary!==void 0)for(let t in e.morphTargetDictionary)i[e.morphTargetDictionary[t]]=t;for(let o=0;o0&&(s.extras={},s.extras.targetNames=r)}let h=Array.isArray(e.material);if(h&&a.groups.length===0)return null;let g=h?e.material:[e.material],_=h?a.groups:[{materialIndex:0,start:void 0,count:void 0}];for(let e=0,n=_.length;e0&&(n.targets=u),a.index!==null){let r=this.getUID(a.index);(_[e].start!==void 0||_[e].count!==void 0)&&(r+=`:`+_[e].start+`:`+_[e].count),t.attributes.has(r)?n.indices=t.attributes.get(r):(n.indices=this.processAccessor(a.index,a,_[e].start,_[e].count),t.attributes.set(r,n.indices)),n.indices===null&&delete n.indices}let r=this.processMaterial(g[_[e].materialIndex]);r!==null&&(n.material=r),l.push(n)}s.primitives=l,n.meshes||=[],this._invokeAll(function(t){t.writeMesh&&t.writeMesh(e,s)});let v=n.meshes.push(s)-1;return t.meshes.set(i,v),v}detectMeshQuantization(e,t){if(this.extensionsUsed[sV])return;let n;switch(t.array.constructor){case Int8Array:n=`byte`;break;case Uint8Array:n=`unsigned byte`;break;case Int16Array:n=`short`;break;case Uint16Array:n=`unsigned short`;break;default:return}t.normalized&&(n+=` normalized`);let r=e.split(`_`,1)[0];iV[r]&&iV[r].includes(n)&&(this.extensionsUsed[sV]=!0,this.extensionsRequired[sV]=!0)}processCamera(e){let t=this.json;t.cameras||=[];let n=e.isOrthographicCamera,r={type:n?`orthographic`:`perspective`};return n?r.orthographic={xmag:e.right*2,ymag:e.top*2,zfar:e.far<=0?.001:e.far,znear:e.near<0?0:e.near}:r.perspective={aspectRatio:e.aspect,yfov:be.degToRad(e.fov),zfar:e.far<=0?.001:e.far,znear:e.near<0?0:e.near},e.name!==``&&(r.name=e.type),t.cameras.push(r)-1}processAnimation(e,t){let n=this.json,r=this.nodeMap;n.animations||=[],e=aV.Utils.mergeMorphTargetTracks(e.clone(),t);let i=e.tracks,a=[],o=[];for(let e=0;e0){let t=[];for(let r=0,i=e.children.length;r0&&(i.children=t)}this._invokeAll(function(t){t.writeNode&&t.writeNode(e,i)});let a=t.nodes.push(i)-1;return r.set(e,a),a}processScene(e){let t=this.json,n=this.options;t.scenes||(t.scenes=[],t.scene=0);let r={};e.name!==``&&(r.name=e.name),t.scenes.push(r);let i=[];for(let t=0,r=e.children.length;t0&&(r.nodes=i),this.serializeUserData(e,r)}processObjects(e){let t=new Ze;t.name=`AuxScene`;for(let n=0;n0&&this.processObjects(n);for(let e=0;e0&&(a.range=e.distance)):e.isSpotLight&&(a.type=`spot`,e.distance>0&&(a.range=e.distance),a.spot={},a.spot.innerConeAngle=(e.penumbra-1)*e.angle*-1,a.spot.outerConeAngle=e.angle),e.decay!==void 0&&e.decay!==2&&console.warn(`THREE.GLTFExporter: Light decay may be lost. glTF is physically-based, and expects light.decay=2.`),e.target&&(e.target.parent!==e||e.target.position.x!==0||e.target.position.y!==0||e.target.position.z!==-1)&&console.warn(`THREE.GLTFExporter: Light direction may be lost. For best results, make light.target a child of the light with position 0,0,-1.`),i[this.name]||(r.extensions=r.extensions||{},r.extensions[this.name]={lights:[]},i[this.name]=!0);let o=r.extensions[this.name].lights;o.push(a),t.extensions=t.extensions||{},t.extensions[this.name]={light:o.length-1}}};let DV=class{constructor(e){this.writer=e,this.name=`KHR_materials_unlit`}writeMaterial(e,t){if(!e.isMeshBasicMaterial)return;let n=this.writer.extensionsUsed;t.extensions=t.extensions||{},t.extensions[this.name]={},n[this.name]=!0,t.pbrMetallicRoughness.metallicFactor=0,t.pbrMetallicRoughness.roughnessFactor=.9}},OV=class{constructor(e){this.writer=e,this.name=`KHR_materials_clearcoat`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.clearcoat===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.clearcoatFactor=e.clearcoat,e.clearcoatMap){let t={index:n.processTexture(e.clearcoatMap),texCoord:e.clearcoatMap.channel};n.applyTextureTransform(t,e.clearcoatMap),i.clearcoatTexture=t}if(i.clearcoatRoughnessFactor=e.clearcoatRoughness,e.clearcoatRoughnessMap){let t={index:n.processTexture(e.clearcoatRoughnessMap),texCoord:e.clearcoatRoughnessMap.channel};n.applyTextureTransform(t,e.clearcoatRoughnessMap),i.clearcoatRoughnessTexture=t}if(e.clearcoatNormalMap){let t={index:n.processTexture(e.clearcoatNormalMap),texCoord:e.clearcoatNormalMap.channel};n.applyTextureTransform(t,e.clearcoatNormalMap),i.clearcoatNormalTexture=t}t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},kV=class{constructor(e){this.writer=e,this.name=`KHR_materials_iridescence`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.iridescence===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.iridescenceFactor=e.iridescence,e.iridescenceMap){let t={index:n.processTexture(e.iridescenceMap),texCoord:e.iridescenceMap.channel};n.applyTextureTransform(t,e.iridescenceMap),i.iridescenceTexture=t}if(i.iridescenceIor=e.iridescenceIOR,i.iridescenceThicknessMinimum=e.iridescenceThicknessRange[0],i.iridescenceThicknessMaximum=e.iridescenceThicknessRange[1],e.iridescenceThicknessMap){let t={index:n.processTexture(e.iridescenceThicknessMap),texCoord:e.iridescenceThicknessMap.channel};n.applyTextureTransform(t,e.iridescenceThicknessMap),i.iridescenceThicknessTexture=t}t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},AV=class{constructor(e){this.writer=e,this.name=`KHR_materials_transmission`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.transmission===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.transmissionFactor=e.transmission,e.transmissionMap){let t={index:n.processTexture(e.transmissionMap),texCoord:e.transmissionMap.channel};n.applyTextureTransform(t,e.transmissionMap),i.transmissionTexture=t}t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},jV=class{constructor(e){this.writer=e,this.name=`KHR_materials_volume`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.transmission===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.thicknessFactor=e.thickness,e.thicknessMap){let t={index:n.processTexture(e.thicknessMap),texCoord:e.thicknessMap.channel};n.applyTextureTransform(t,e.thicknessMap),i.thicknessTexture=t}i.attenuationDistance=e.attenuationDistance,i.attenuationColor=e.attenuationColor.toArray(),t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},MV=class{constructor(e){this.writer=e,this.name=`KHR_materials_ior`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.ior===1.5)return;let n=this.writer.extensionsUsed,r={};r.ior=e.ior,t.extensions=t.extensions||{},t.extensions[this.name]=r,n[this.name]=!0}},NV=class{constructor(e){this.writer=e,this.name=`KHR_materials_specular`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.specularIntensity===1&&e.specularColor.equals(uV)&&!e.specularIntensityMap&&!e.specularColorTexture)return;let n=this.writer,r=n.extensionsUsed,i={};if(e.specularIntensityMap){let t={index:n.processTexture(e.specularIntensityMap),texCoord:e.specularIntensityMap.channel};n.applyTextureTransform(t,e.specularIntensityMap),i.specularTexture=t}if(e.specularColorMap){let t={index:n.processTexture(e.specularColorMap),texCoord:e.specularColorMap.channel};n.applyTextureTransform(t,e.specularColorMap),i.specularColorTexture=t}i.specularFactor=e.specularIntensity,i.specularColorFactor=e.specularColor.toArray(),t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},PV=class{constructor(e){this.writer=e,this.name=`KHR_materials_sheen`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.sheen==0)return;let n=this.writer,r=n.extensionsUsed,i={};if(e.sheenRoughnessMap){let t={index:n.processTexture(e.sheenRoughnessMap),texCoord:e.sheenRoughnessMap.channel};n.applyTextureTransform(t,e.sheenRoughnessMap),i.sheenRoughnessTexture=t}if(e.sheenColorMap){let t={index:n.processTexture(e.sheenColorMap),texCoord:e.sheenColorMap.channel};n.applyTextureTransform(t,e.sheenColorMap),i.sheenColorTexture=t}i.sheenRoughnessFactor=e.sheenRoughness,i.sheenColorFactor=e.sheenColor.toArray(),t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},FV=class{constructor(e){this.writer=e,this.name=`KHR_materials_anisotropy`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.anisotropy==0)return;let n=this.writer,r=n.extensionsUsed,i={};if(e.anisotropyMap){let t={index:n.processTexture(e.anisotropyMap)};n.applyTextureTransform(t,e.anisotropyMap),i.anisotropyTexture=t}i.anisotropyStrength=e.anisotropy,i.anisotropyRotation=e.anisotropyRotation,t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},IV=class{constructor(e){this.writer=e,this.name=`KHR_materials_emissive_strength`}writeMaterial(e,t){if(!e.isMeshStandardMaterial||e.emissiveIntensity===1)return;let n=this.writer.extensionsUsed,r={};r.emissiveStrength=e.emissiveIntensity,t.extensions=t.extensions||{},t.extensions[this.name]=r,n[this.name]=!0}};var LV=Uint8Array,RV=Uint16Array,zV=Uint32Array,BV=new LV([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),VV=new LV([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),HV=new LV([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),UV=function(e,t){for(var n=new RV(31),r=0;r<31;++r)n[r]=t+=1<>>1|(XV&21845)<<1;ZV=(ZV&52428)>>>2|(ZV&13107)<<2,ZV=(ZV&61680)>>>4|(ZV&3855)<<4,YV[XV]=((ZV&65280)>>>8|(ZV&255)<<8)>>>1}for(var QV=function(e,t,n){for(var r=e.length,i=0,a=new RV(t);i>>c]=l}else for(s=new RV(r),i=0;i>>15-e[i]);return s},$V=new LV(288),XV=0;XV<144;++XV)$V[XV]=8;for(var XV=144;XV<256;++XV)$V[XV]=9;for(var XV=256;XV<280;++XV)$V[XV]=7;for(var XV=280;XV<288;++XV)$V[XV]=8;for(var eH=new LV(32),XV=0;XV<32;++XV)eH[XV]=5;var tH=QV($V,9,1),nH=QV(eH,5,1),rH=function(e){for(var t=e[0],n=1;nt&&(t=e[n]);return t},iH=function(e,t,n){var r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n},aH=function(e,t){var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)},oH=function(e){return(e/8|0)+(e&7&&1)},sH=function(e,t,n){(n==null||n>e.length)&&(n=e.length);var r=new(e instanceof RV?RV:e instanceof zV?zV:LV)(n-t);return r.set(e.subarray(t,n)),r},cH=function(e,t,n){var r=e.length;if(!r||n&&!n.l&&r<5)return t||new LV(0);var i=!t||n,a=!n||n.i;n||={},t||=new LV(r*3);var o=function(e){var n=t.length;if(e>n){var r=new LV(Math.max(n*2,e));r.set(t),t=r}},s=n.f||0,c=n.p||0,l=n.b||0,u=n.l,d=n.d,f=n.m,p=n.n,m=r*8;do{if(!u){n.f=s=iH(e,c,1);var h=iH(e,c+1,3);if(c+=3,h)if(h==1)u=tH,d=nH,f=9,p=5;else if(h==2){var g=iH(e,c,31)+257,_=iH(e,c+10,15)+4,v=g+iH(e,c+5,31)+1;c+=14;for(var y=new LV(v),b=new LV(19),x=0;x<_;++x)b[HV[x]]=iH(e,c+x*3,7);c+=_*3;for(var S=rH(b),C=(1<>>4;if(E<16)y[x++]=E;else{var D=0,O=0;for(E==16?(O=3+iH(e,c,3),c+=2,D=y[x-1]):E==17?(O=3+iH(e,c,7),c+=3):E==18&&(O=11+iH(e,c,127),c+=7);O--;)y[x++]=D}}var k=y.subarray(0,g),A=y.subarray(g);f=rH(k),p=rH(A),u=QV(k,f,1),d=QV(A,p,1)}else throw`invalid block type`;else{var E=oH(c)+4,j=e[E-4]|e[E-3]<<8,M=E+j;if(M>r){if(a)throw`unexpected EOF`;break}i&&o(l+j),t.set(e.subarray(E,M),l),n.b=l+=j,n.p=c=M*8;continue}if(c>m){if(a)throw`unexpected EOF`;break}}i&&o(l+131072);for(var N=(1<>>4;if(c+=D&15,c>m){if(a)throw`unexpected EOF`;break}if(!D)throw`invalid length/literal`;if(F<256)t[l++]=F;else if(F==256){P=c,u=null;break}else{var I=F-254;if(F>264){var x=F-257,te=BV[x];I=iH(e,c,(1<>>4;if(!L)throw`invalid distance`;c+=L&15;var A=JV[R];if(R>3){var te=VV[R];A+=aH(e,c)&(1<m){if(a)throw`unexpected EOF`;break}i&&o(l+131072);for(var ne=l+I;l>>4>7||(e[0]<<8|e[1])%31)throw`invalid zlib data`;if(e[1]&32)throw`invalid zlib data: preset dictionaries not supported`},dH=typeof TextDecoder<`u`&&new TextDecoder,fH=0;try{dH.decode(lH,{stream:!0}),fH=1}catch{}var pH=Object.defineProperty,mH=(e,t,n)=>t in e?pH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,hH=(e,t,n)=>(mH(e,t+``,n),n);const gH=class extends Ce{constructor(e,t={}){super(e),this.isReflector=!0,this.type=`Reflector`,this.camera=new Le;let n=this,r=t.color===void 0?new g(8355711):new g(t.color),i=t.textureWidth||512,a=t.textureHeight||512,o=t.clipBias||0,s=t.shader||gH.ReflectorShader,c=t.multisample===void 0?4:t.multisample,l=new Re,u=new B,d=new B,f=new B,p=new Se,m=new B(0,0,-1),h=new bt,_=new B,v=new B,y=new bt,b=new Se,x=this.camera,S=new Ct(i,a,{samples:c,type:z}),C=new et({uniforms:_t.clone(s.uniforms),fragmentShader:s.fragmentShader,vertexShader:s.vertexShader});C.uniforms.tDiffuse.value=S.texture,C.uniforms.color.value=r,C.uniforms.textureMatrix.value=b,this.material=C,this.onBeforeRender=function(e,t,r){if(d.setFromMatrixPosition(n.matrixWorld),f.setFromMatrixPosition(r.matrixWorld),p.extractRotation(n.matrixWorld),u.set(0,0,1),u.applyMatrix4(p),_.subVectors(d,f),_.dot(u)>0)return;_.reflect(u).negate(),_.add(d),p.extractRotation(r.matrixWorld),m.set(0,0,-1),m.applyMatrix4(p),m.add(f),v.subVectors(d,m),v.reflect(u).negate(),v.add(d),x.position.copy(_),x.up.set(0,1,0),x.up.applyMatrix4(p),x.up.reflect(u),x.lookAt(v),x.far=r.far,x.updateMatrixWorld(),x.projectionMatrix.copy(r.projectionMatrix),b.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),b.multiply(x.projectionMatrix),b.multiply(x.matrixWorldInverse),b.multiply(n.matrixWorld),l.setFromNormalAndCoplanarPoint(u,d),l.applyMatrix4(x.matrixWorldInverse),h.set(l.normal.x,l.normal.y,l.normal.z,l.constant);let i=x.projectionMatrix;y.x=(Math.sign(h.x)+i.elements[8])/i.elements[0],y.y=(Math.sign(h.y)+i.elements[9])/i.elements[5],y.z=-1,y.w=(1+i.elements[10])/i.elements[14],h.multiplyScalar(2/h.dot(y)),i.elements[2]=h.x,i.elements[6]=h.y,i.elements[10]=h.z+1-o,i.elements[14]=h.w,n.visible=!1;let a=e.getRenderTarget(),s=e.xr.enabled,c=e.shadowMap.autoUpdate,g=e.toneMapping,C=!1;C=`outputColorSpace`in e?e.outputColorSpace===`srgb`:e.outputEncoding===3001,e.xr.enabled=!1,e.shadowMap.autoUpdate=!1,`outputColorSpace`in e?e.outputColorSpace=`srgb-linear`:e.outputEncoding=3e3,e.toneMapping=Me,e.setRenderTarget(S),e.state.buffers.depth.setMask(!0),e.autoClear===!1&&e.clear(),e.render(t,x),e.xr.enabled=s,e.shadowMap.autoUpdate=c,e.toneMapping=g,`outputColorSpace`in e?e.outputColorSpace=C?`srgb`:`srgb-linear`:e.outputEncoding=C?3001:3e3,e.setRenderTarget(a);let w=r.viewport;w!==void 0&&e.state.viewport(w),n.visible=!0},this.getRenderTarget=function(){return S},this.dispose=function(){S.dispose(),n.material.dispose()}}};let _H=gH;hH(_H,`ReflectorShader`,{uniforms:{color:{value:null},tDiffuse:{value:null},textureMatrix:{value:null}},vertexShader:` - uniform mat4 textureMatrix; - varying vec4 vUv; - - #include - #include - - void main() { - - vUv = textureMatrix * vec4( position, 1.0 ); - - gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); - - #include - - }`,fragmentShader:` - uniform vec3 color; - uniform sampler2D tDiffuse; - varying vec4 vUv; - - #include - - float blendOverlay( float base, float blend ) { - - return( base < 0.5 ? ( 2.0 * base * blend ) : ( 1.0 - 2.0 * ( 1.0 - base ) * ( 1.0 - blend ) ) ); - - } - - vec3 blendOverlay( vec3 base, vec3 blend ) { - - return vec3( blendOverlay( base.r, blend.r ), blendOverlay( base.g, blend.g ), blendOverlay( base.b, blend.b ) ); - - } - - void main() { - - #include - - vec4 base = texture2DProj( tDiffuse, vUv ); - gl_FragColor = vec4( blendOverlay( base.rgb, color ), 1.0 ); - - #include - #include <${KB>=154?`colorspace_fragment`:`encodings_fragment`}> - - }`});var vH=Object.defineProperty,yH=(e,t,n)=>t in e?vH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,bH=(e,t,n)=>(yH(e,typeof t==`symbol`?t:t+``,n),n);const xH=new f,SH=new Float32Array([-1,-1,0,0,0,1,-1,0,1,0,1,1,0,1,1,-1,1,0,0,1]),CH=new oe(SH,5);xH.setIndex([0,1,2,0,2,3]),xH.setAttribute(`position`,new se(CH,3,0,!1)),xH.setAttribute(`uv`,new se(CH,2,3,!1));const wH=class extends Ce{constructor(){super(wH.Geometry,new we({opacity:0,transparent:!0})),this.isLensflare=!0,this.type=`Lensflare`,this.frustumCulled=!1,this.renderOrder=1/0;let e=new B,n=new B,r=new S(new Uint8Array(16*16*3),16,16,Ge);r.minFilter=ke,r.magFilter=ke,r.wrapS=m,r.wrapT=m;let i=new S(new Uint8Array(16*16*3),16,16,Ge);i.minFilter=ke,i.magFilter=ke,i.wrapS=m,i.wrapT=m;let a=wH.Geometry,o=new Ke({uniforms:{scale:{value:null},screenPosition:{value:null}},vertexShader:` - - precision highp float; - - uniform vec3 screenPosition; - uniform vec2 scale; - - attribute vec3 position; - - void main() { - - gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); - - }`,fragmentShader:` - - precision highp float; - - void main() { - - gl_FragColor = vec4( 1.0, 0.0, 1.0, 1.0 ); - - }`,depthTest:!0,depthWrite:!1,transparent:!1}),s=new Ke({uniforms:{map:{value:r},scale:{value:null},screenPosition:{value:null}},vertexShader:` - - precision highp float; - - uniform vec3 screenPosition; - uniform vec2 scale; - - attribute vec3 position; - attribute vec2 uv; - - varying vec2 vUV; - - void main() { - - vUV = uv; - - gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); - - }`,fragmentShader:` - - precision highp float; - - uniform sampler2D map; - - varying vec2 vUV; - - void main() { - - gl_FragColor = texture2D( map, vUV ); - - }`,depthTest:!1,depthWrite:!1,transparent:!1}),l=new Ce(a,o),u=[],d=EH.Shader,f=new Ke({uniforms:{map:{value:null},occlusionMap:{value:i},color:{value:new g(16777215)},scale:{value:new yt},screenPosition:{value:new B}},vertexShader:d.vertexShader,fragmentShader:d.fragmentShader,blending:t,transparent:!0,depthWrite:!1}),p=new Ce(a,f);this.addElement=function(e){u.push(e)};let h=new yt,_=new yt,v=new c,y=new bt;this.onBeforeRender=function(t,c,d){t.getCurrentViewport(y);let m=y.w/y.z,g=y.z/2,b=y.w/2,x=16/y.w;if(h.set(x*m,x),v.min.set(y.x,y.y),v.max.set(y.x+(y.z-16),y.y+(y.w-16)),n.setFromMatrixPosition(this.matrixWorld),n.applyMatrix4(d.matrixWorldInverse),!(n.z>0)&&(e.copy(n).applyMatrix4(d.projectionMatrix),_.x=y.x+e.x*g+g-8,_.y=y.y+e.y*b+b-8,v.containsPoint(_))){t.copyFramebufferToTexture(_,r);let n=o.uniforms;n.scale.value=h,n.screenPosition.value=e,t.renderBufferDirect(d,null,a,o,l,null),t.copyFramebufferToTexture(_,i),n=s.uniforms,n.scale.value=h,n.screenPosition.value=e,t.renderBufferDirect(d,null,a,s,l,null);let c=-e.x*2,m=-e.y*2;for(let n=0,r=u.length;n - #include - #include - #include - - void main() { - mirrorCoord = modelMatrix * vec4( position, 1.0 ); - worldPosition = mirrorCoord.xyzw; - mirrorCoord = textureMatrix * mirrorCoord; - vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 ); - gl_Position = projectionMatrix * mvPosition; - - #include - #include - #include - #include - #include - }`,fragmentShader:` - uniform sampler2D mirrorSampler; - uniform float alpha; - uniform float time; - uniform float size; - uniform float distortionScale; - uniform sampler2D normalSampler; - uniform vec3 sunColor; - uniform vec3 sunDirection; - uniform vec3 eye; - uniform vec3 waterColor; - - varying vec4 mirrorCoord; - varying vec4 worldPosition; - - vec4 getNoise( vec2 uv ) { - vec2 uv0 = ( uv / 103.0 ) + vec2(time / 17.0, time / 29.0); - vec2 uv1 = uv / 107.0-vec2( time / -19.0, time / 31.0 ); - vec2 uv2 = uv / vec2( 8907.0, 9803.0 ) + vec2( time / 101.0, time / 97.0 ); - vec2 uv3 = uv / vec2( 1091.0, 1027.0 ) - vec2( time / 109.0, time / -113.0 ); - vec4 noise = texture2D( normalSampler, uv0 ) + - texture2D( normalSampler, uv1 ) + - texture2D( normalSampler, uv2 ) + - texture2D( normalSampler, uv3 ); - return noise * 0.5 - 1.0; - } - - void sunLight( const vec3 surfaceNormal, const vec3 eyeDirection, float shiny, float spec, float diffuse, inout vec3 diffuseColor, inout vec3 specularColor ) { - vec3 reflection = normalize( reflect( -sunDirection, surfaceNormal ) ); - float direction = max( 0.0, dot( eyeDirection, reflection ) ); - specularColor += pow( direction, shiny ) * sunColor * spec; - diffuseColor += max( dot( sunDirection, surfaceNormal ), 0.0 ) * sunColor * diffuse; - } - - #include - #include - #include - #include - #include - #include - #include - #include - - void main() { - - #include - vec4 noise = getNoise( worldPosition.xz * size ); - vec3 surfaceNormal = normalize( noise.xzy * vec3( 1.5, 1.0, 1.5 ) ); - - vec3 diffuseLight = vec3(0.0); - vec3 specularLight = vec3(0.0); - - vec3 worldToEye = eye-worldPosition.xyz; - vec3 eyeDirection = normalize( worldToEye ); - sunLight( surfaceNormal, eyeDirection, 100.0, 2.0, 0.5, diffuseLight, specularLight ); - - float distance = length(worldToEye); - - vec2 distortion = surfaceNormal.xz * ( 0.001 + 1.0 / distance ) * distortionScale; - vec3 reflectionSample = vec3( texture2D( mirrorSampler, mirrorCoord.xy / mirrorCoord.w + distortion ) ); - - float theta = max( dot( eyeDirection, surfaceNormal ), 0.0 ); - float rf0 = 0.3; - float reflectance = rf0 + ( 1.0 - rf0 ) * pow( ( 1.0 - theta ), 5.0 ); - vec3 scatter = max( 0.0, dot( surfaceNormal, eyeDirection ) ) * waterColor; - vec3 albedo = mix( ( sunColor * diffuseLight * 0.3 + scatter ) * getShadowMask(), ( vec3( 0.1 ) + reflectionSample * 0.9 + reflectionSample * specularLight ), reflectance); - vec3 outgoingLight = albedo; - gl_FragColor = vec4( outgoingLight, alpha ); - - #include - #include <${parseInt(We.replace(/\D+/g,``))>=154?`colorspace_fragment`:`encodings_fragment`}> - #include - }`},j=new et({fragmentShader:A.fragmentShader,vertexShader:A.vertexShader,uniforms:_t.clone(A.uniforms),lights:!0,side:m,fog:h});j.uniforms.mirrorSampler.value=k.texture,j.uniforms.textureMatrix.value=D,j.uniforms.alpha.value=o,j.uniforms.time.value=s,j.uniforms.normalSampler.value=c,j.uniforms.sunColor.value=u,j.uniforms.waterColor.value=d,j.uniforms.sunDirection.value=l,j.uniforms.distortionScale.value=p,j.uniforms.eye.value=f,n.material=j,n.onBeforeRender=function(e,t,r){if(y.setFromMatrixPosition(n.matrixWorld),b.setFromMatrixPosition(r.matrixWorld),x.extractRotation(n.matrixWorld),v.set(0,0,1),v.applyMatrix4(x),w.subVectors(y,b),w.dot(v)>0)return;w.reflect(v).negate(),w.add(y),x.extractRotation(r.matrixWorld),S.set(0,0,-1),S.applyMatrix4(x),S.add(b),T.subVectors(y,S),T.reflect(v).negate(),T.add(y),O.position.copy(w),O.up.set(0,1,0),O.up.applyMatrix4(x),O.up.reflect(v),O.lookAt(T),O.far=r.far,O.updateMatrixWorld(),O.projectionMatrix.copy(r.projectionMatrix),D.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),D.multiply(O.projectionMatrix),D.multiply(O.matrixWorldInverse),_.setFromNormalAndCoplanarPoint(v,y),_.applyMatrix4(O.matrixWorldInverse),C.set(_.normal.x,_.normal.y,_.normal.z,_.constant);let i=O.projectionMatrix;E.x=(Math.sign(C.x)+i.elements[8])/i.elements[0],E.y=(Math.sign(C.y)+i.elements[9])/i.elements[5],E.z=-1,E.w=(1+i.elements[10])/i.elements[14],C.multiplyScalar(2/C.dot(E)),i.elements[2]=C.x,i.elements[6]=C.y,i.elements[10]=C.z+1-a,i.elements[14]=C.w,f.setFromMatrixPosition(r.matrixWorld);let o=e.getRenderTarget(),s=e.xr.enabled,c=e.shadowMap.autoUpdate;n.visible=!1,e.xr.enabled=!1,e.shadowMap.autoUpdate=!1,e.setRenderTarget(k),e.state.buffers.depth.setMask(!0),e.autoClear===!1&&e.clear(),e.render(t,O),n.visible=!0,e.xr.enabled=s,e.shadowMap.autoUpdate=c,e.setRenderTarget(o);let l=r.viewport;l!==void 0&&e.state.viewport(l)}}},OH=Object.defineProperty,kH=(e,t,n)=>t in e?OH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,AH=(e,t,n)=>(kH(e,typeof t==`symbol`?t:t+``,n),n);const jH={uniforms:{turbidity:{value:2},rayleigh:{value:1},mieCoefficient:{value:.005},mieDirectionalG:{value:.8},sunPosition:{value:new B},up:{value:new B(0,1,0)}},vertexShader:` - uniform vec3 sunPosition; - uniform float rayleigh; - uniform float turbidity; - uniform float mieCoefficient; - uniform vec3 up; - - varying vec3 vWorldPosition; - varying vec3 vSunDirection; - varying float vSunfade; - varying vec3 vBetaR; - varying vec3 vBetaM; - varying float vSunE; - - // constants for atmospheric scattering - const float e = 2.71828182845904523536028747135266249775724709369995957; - const float pi = 3.141592653589793238462643383279502884197169; - - // wavelength of used primaries, according to preetham - const vec3 lambda = vec3( 680E-9, 550E-9, 450E-9 ); - // this pre-calcuation replaces older TotalRayleigh(vec3 lambda) function: - // (8.0 * pow(pi, 3.0) * pow(pow(n, 2.0) - 1.0, 2.0) * (6.0 + 3.0 * pn)) / (3.0 * N * pow(lambda, vec3(4.0)) * (6.0 - 7.0 * pn)) - const vec3 totalRayleigh = vec3( 5.804542996261093E-6, 1.3562911419845635E-5, 3.0265902468824876E-5 ); - - // mie stuff - // K coefficient for the primaries - const float v = 4.0; - const vec3 K = vec3( 0.686, 0.678, 0.666 ); - // MieConst = pi * pow( ( 2.0 * pi ) / lambda, vec3( v - 2.0 ) ) * K - const vec3 MieConst = vec3( 1.8399918514433978E14, 2.7798023919660528E14, 4.0790479543861094E14 ); - - // earth shadow hack - // cutoffAngle = pi / 1.95; - const float cutoffAngle = 1.6110731556870734; - const float steepness = 1.5; - const float EE = 1000.0; - - float sunIntensity( float zenithAngleCos ) { - zenithAngleCos = clamp( zenithAngleCos, -1.0, 1.0 ); - return EE * max( 0.0, 1.0 - pow( e, -( ( cutoffAngle - acos( zenithAngleCos ) ) / steepness ) ) ); - } - - vec3 totalMie( float T ) { - float c = ( 0.2 * T ) * 10E-18; - return 0.434 * c * MieConst; - } - - void main() { - - vec4 worldPosition = modelMatrix * vec4( position, 1.0 ); - vWorldPosition = worldPosition.xyz; - - gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); - gl_Position.z = gl_Position.w; // set z to camera.far - - vSunDirection = normalize( sunPosition ); - - vSunE = sunIntensity( dot( vSunDirection, up ) ); - - vSunfade = 1.0 - clamp( 1.0 - exp( ( sunPosition.y / 450000.0 ) ), 0.0, 1.0 ); - - float rayleighCoefficient = rayleigh - ( 1.0 * ( 1.0 - vSunfade ) ); - - // extinction (absorbtion + out scattering) - // rayleigh coefficients - vBetaR = totalRayleigh * rayleighCoefficient; - - // mie coefficients - vBetaM = totalMie( turbidity ) * mieCoefficient; - - } - `,fragmentShader:` - varying vec3 vWorldPosition; - varying vec3 vSunDirection; - varying float vSunfade; - varying vec3 vBetaR; - varying vec3 vBetaM; - varying float vSunE; - - uniform float mieDirectionalG; - uniform vec3 up; - - const vec3 cameraPos = vec3( 0.0, 0.0, 0.0 ); - - // constants for atmospheric scattering - const float pi = 3.141592653589793238462643383279502884197169; - - const float n = 1.0003; // refractive index of air - const float N = 2.545E25; // number of molecules per unit volume for air at 288.15K and 1013mb (sea level -45 celsius) - - // optical length at zenith for molecules - const float rayleighZenithLength = 8.4E3; - const float mieZenithLength = 1.25E3; - // 66 arc seconds -> degrees, and the cosine of that - const float sunAngularDiameterCos = 0.999956676946448443553574619906976478926848692873900859324; - - // 3.0 / ( 16.0 * pi ) - const float THREE_OVER_SIXTEENPI = 0.05968310365946075; - // 1.0 / ( 4.0 * pi ) - const float ONE_OVER_FOURPI = 0.07957747154594767; - - float rayleighPhase( float cosTheta ) { - return THREE_OVER_SIXTEENPI * ( 1.0 + pow( cosTheta, 2.0 ) ); - } - - float hgPhase( float cosTheta, float g ) { - float g2 = pow( g, 2.0 ); - float inverse = 1.0 / pow( 1.0 - 2.0 * g * cosTheta + g2, 1.5 ); - return ONE_OVER_FOURPI * ( ( 1.0 - g2 ) * inverse ); - } - - void main() { - - vec3 direction = normalize( vWorldPosition - cameraPos ); - - // optical length - // cutoff angle at 90 to avoid singularity in next formula. - float zenithAngle = acos( max( 0.0, dot( up, direction ) ) ); - float inverse = 1.0 / ( cos( zenithAngle ) + 0.15 * pow( 93.885 - ( ( zenithAngle * 180.0 ) / pi ), -1.253 ) ); - float sR = rayleighZenithLength * inverse; - float sM = mieZenithLength * inverse; - - // combined extinction factor - vec3 Fex = exp( -( vBetaR * sR + vBetaM * sM ) ); - - // in scattering - float cosTheta = dot( direction, vSunDirection ); - - float rPhase = rayleighPhase( cosTheta * 0.5 + 0.5 ); - vec3 betaRTheta = vBetaR * rPhase; - - float mPhase = hgPhase( cosTheta, mieDirectionalG ); - vec3 betaMTheta = vBetaM * mPhase; - - vec3 Lin = pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * ( 1.0 - Fex ), vec3( 1.5 ) ); - Lin *= mix( vec3( 1.0 ), pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * Fex, vec3( 1.0 / 2.0 ) ), clamp( pow( 1.0 - dot( up, vSunDirection ), 5.0 ), 0.0, 1.0 ) ); - - // nightsky - float theta = acos( direction.y ); // elevation --> y-axis, [-pi/2, pi/2] - float phi = atan( direction.z, direction.x ); // azimuth --> x-axis [-pi/2, pi/2] - vec2 uv = vec2( phi, theta ) / vec2( 2.0 * pi, pi ) + vec2( 0.5, 0.0 ); - vec3 L0 = vec3( 0.1 ) * Fex; - - // composition + solar disc - float sundisk = smoothstep( sunAngularDiameterCos, sunAngularDiameterCos + 0.00002, cosTheta ); - L0 += ( vSunE * 19000.0 * Fex ) * sundisk; - - vec3 texColor = ( Lin + L0 ) * 0.04 + vec3( 0.0, 0.0003, 0.00075 ); - - vec3 retColor = pow( texColor, vec3( 1.0 / ( 1.2 + ( 1.2 * vSunfade ) ) ) ); - - gl_FragColor = vec4( retColor, 1.0 ); - - #include - #include <${KB>=154?`colorspace_fragment`:`encodings_fragment`}> - - } - `},MH=new et({name:`SkyShader`,fragmentShader:jH.fragmentShader,vertexShader:jH.vertexShader,uniforms:_t.clone(jH.uniforms),side:s,depthWrite:!1});var NH=class extends Ce{constructor(){super(new u(1,1,1),MH)}};AH(NH,`SkyShader`,jH),AH(NH,`material`,MH);const PH=new mt,FH=new B;var IH=class{constructor(e){let t=e.geometry;t.index&&(console.warn(`THREE.MeshSurfaceSampler: Converting geometry to non-indexed BufferGeometry.`),t=t.toNonIndexed()),this.geometry=t,this.randomFunction=Math.random,this.positionAttribute=this.geometry.getAttribute(`position`),this.colorAttribute=this.geometry.getAttribute(`color`),this.weightAttribute=null,this.distribution=null}setWeightAttribute(e){return this.weightAttribute=e?this.geometry.getAttribute(e):null,this}build(){let e=this.positionAttribute,t=this.weightAttribute,n=new Float32Array(e.count/3);for(let r=0;re){i=a;break}else e1&&(i=1-i,a=1-a),PH.a.fromBufferAttribute(this.positionAttribute,e*3),PH.b.fromBufferAttribute(this.positionAttribute,e*3+1),PH.c.fromBufferAttribute(this.positionAttribute,e*3+2),t.set(0,0,0).addScaledVector(PH.a,i).addScaledVector(PH.b,a).addScaledVector(PH.c,1-(i+a)),n!==void 0&&PH.getNormal(n),r!==void 0&&this.colorAttribute!==void 0&&(PH.a.fromBufferAttribute(this.colorAttribute,e*3),PH.b.fromBufferAttribute(this.colorAttribute,e*3+1),PH.c.fromBufferAttribute(this.colorAttribute,e*3+2),FH.set(0,0,0).addScaledVector(PH.a,i).addScaledVector(PH.b,a).addScaledVector(PH.c,1-(i+a)),r.r=FH.x,r.g=FH.y,r.b=FH.z),this}},LH=Object.defineProperty,RH=(e,t,n)=>t in e?LH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Q=(e,t,n)=>(RH(e,typeof t==`symbol`?t:t+``,n),n),zH=class extends Ne{constructor(e,t){super(),Q(this,`isTransformControls`,!0),Q(this,`visible`,!1),Q(this,`domElement`),Q(this,`raycaster`,new Je),Q(this,`gizmo`),Q(this,`plane`),Q(this,`tempVector`,new B),Q(this,`tempVector2`,new B),Q(this,`tempQuaternion`,new Ue),Q(this,`unit`,{X:new B(1,0,0),Y:new B(0,1,0),Z:new B(0,0,1)}),Q(this,`pointStart`,new B),Q(this,`pointEnd`,new B),Q(this,`offset`,new B),Q(this,`rotationAxis`,new B),Q(this,`startNorm`,new B),Q(this,`endNorm`,new B),Q(this,`rotationAngle`,0),Q(this,`cameraPosition`,new B),Q(this,`cameraQuaternion`,new Ue),Q(this,`cameraScale`,new B),Q(this,`parentPosition`,new B),Q(this,`parentQuaternion`,new Ue),Q(this,`parentQuaternionInv`,new Ue),Q(this,`parentScale`,new B),Q(this,`worldPositionStart`,new B),Q(this,`worldQuaternionStart`,new Ue),Q(this,`worldScaleStart`,new B),Q(this,`worldPosition`,new B),Q(this,`worldQuaternion`,new Ue),Q(this,`worldQuaternionInv`,new Ue),Q(this,`worldScale`,new B),Q(this,`eye`,new B),Q(this,`positionStart`,new B),Q(this,`quaternionStart`,new Ue),Q(this,`scaleStart`,new B),Q(this,`camera`),Q(this,`object`),Q(this,`enabled`,!0),Q(this,`axis`,null),Q(this,`mode`,`translate`),Q(this,`translationSnap`,null),Q(this,`rotationSnap`,null),Q(this,`scaleSnap`,null),Q(this,`space`,`world`),Q(this,`size`,1),Q(this,`dragging`,!1),Q(this,`showX`,!0),Q(this,`showY`,!0),Q(this,`showZ`,!0),Q(this,`changeEvent`,{type:`change`}),Q(this,`mouseDownEvent`,{type:`mouseDown`,mode:this.mode}),Q(this,`mouseUpEvent`,{type:`mouseUp`,mode:this.mode}),Q(this,`objectChangeEvent`,{type:`objectChange`}),Q(this,`intersectObjectWithRay`,(e,t,n)=>{let r=t.intersectObject(e,!0);for(let e=0;e(this.object=e,this.visible=!0,this)),Q(this,`detach`,()=>(this.object=void 0,this.visible=!1,this.axis=null,this)),Q(this,`reset`,()=>(this.enabled&&this.dragging&&this.object!==void 0&&(this.object.position.copy(this.positionStart),this.object.quaternion.copy(this.quaternionStart),this.object.scale.copy(this.scaleStart),this.dispatchEvent(this.changeEvent),this.dispatchEvent(this.objectChangeEvent),this.pointStart.copy(this.pointEnd)),this)),Q(this,`updateMatrixWorld`,()=>{this.object!==void 0&&(this.object.updateMatrixWorld(),this.object.parent===null?console.error(`TransformControls: The attached 3D object must be a part of the scene graph.`):this.object.parent.matrixWorld.decompose(this.parentPosition,this.parentQuaternion,this.parentScale),this.object.matrixWorld.decompose(this.worldPosition,this.worldQuaternion,this.worldScale),this.parentQuaternionInv.copy(this.parentQuaternion).invert(),this.worldQuaternionInv.copy(this.worldQuaternion).invert()),this.camera.updateMatrixWorld(),this.camera.matrixWorld.decompose(this.cameraPosition,this.cameraQuaternion,this.cameraScale),this.eye.copy(this.cameraPosition).sub(this.worldPosition).normalize(),super.updateMatrixWorld()}),Q(this,`pointerHover`,e=>{if(this.object===void 0||this.dragging===!0)return;this.raycaster.setFromCamera(e,this.camera);let t=this.intersectObjectWithRay(this.gizmo.picker[this.mode],this.raycaster);t?this.axis=t.object.name:this.axis=null}),Q(this,`pointerDown`,e=>{if(!(this.object===void 0||this.dragging===!0||e.button!==0)&&this.axis!==null){this.raycaster.setFromCamera(e,this.camera);let t=this.intersectObjectWithRay(this.plane,this.raycaster,!0);if(t){let e=this.space;if(this.mode===`scale`?e=`local`:(this.axis===`E`||this.axis===`XYZE`||this.axis===`XYZ`)&&(e=`world`),e===`local`&&this.mode===`rotate`){let e=this.rotationSnap;this.axis===`X`&&e&&(this.object.rotation.x=Math.round(this.object.rotation.x/e)*e),this.axis===`Y`&&e&&(this.object.rotation.y=Math.round(this.object.rotation.y/e)*e),this.axis===`Z`&&e&&(this.object.rotation.z=Math.round(this.object.rotation.z/e)*e)}this.object.updateMatrixWorld(),this.object.parent&&this.object.parent.updateMatrixWorld(),this.positionStart.copy(this.object.position),this.quaternionStart.copy(this.object.quaternion),this.scaleStart.copy(this.object.scale),this.object.matrixWorld.decompose(this.worldPositionStart,this.worldQuaternionStart,this.worldScaleStart),this.pointStart.copy(t.point).sub(this.worldPositionStart)}this.dragging=!0,this.mouseDownEvent.mode=this.mode,this.dispatchEvent(this.mouseDownEvent)}}),Q(this,`pointerMove`,e=>{let t=this.axis,n=this.mode,r=this.object,i=this.space;if(n===`scale`?i=`local`:(t===`E`||t===`XYZE`||t===`XYZ`)&&(i=`world`),r===void 0||t===null||this.dragging===!1||e.button!==-1)return;this.raycaster.setFromCamera(e,this.camera);let a=this.intersectObjectWithRay(this.plane,this.raycaster,!0);if(a){if(this.pointEnd.copy(a.point).sub(this.worldPositionStart),n===`translate`)this.offset.copy(this.pointEnd).sub(this.pointStart),i===`local`&&t!==`XYZ`&&this.offset.applyQuaternion(this.worldQuaternionInv),t.indexOf(`X`)===-1&&(this.offset.x=0),t.indexOf(`Y`)===-1&&(this.offset.y=0),t.indexOf(`Z`)===-1&&(this.offset.z=0),i===`local`&&t!==`XYZ`?this.offset.applyQuaternion(this.quaternionStart).divide(this.parentScale):this.offset.applyQuaternion(this.parentQuaternionInv).divide(this.parentScale),r.position.copy(this.offset).add(this.positionStart),this.translationSnap&&(i===`local`&&(r.position.applyQuaternion(this.tempQuaternion.copy(this.quaternionStart).invert()),t.search(`X`)!==-1&&(r.position.x=Math.round(r.position.x/this.translationSnap)*this.translationSnap),t.search(`Y`)!==-1&&(r.position.y=Math.round(r.position.y/this.translationSnap)*this.translationSnap),t.search(`Z`)!==-1&&(r.position.z=Math.round(r.position.z/this.translationSnap)*this.translationSnap),r.position.applyQuaternion(this.quaternionStart)),i===`world`&&(r.parent&&r.position.add(this.tempVector.setFromMatrixPosition(r.parent.matrixWorld)),t.search(`X`)!==-1&&(r.position.x=Math.round(r.position.x/this.translationSnap)*this.translationSnap),t.search(`Y`)!==-1&&(r.position.y=Math.round(r.position.y/this.translationSnap)*this.translationSnap),t.search(`Z`)!==-1&&(r.position.z=Math.round(r.position.z/this.translationSnap)*this.translationSnap),r.parent&&r.position.sub(this.tempVector.setFromMatrixPosition(r.parent.matrixWorld))));else if(n===`scale`){if(t.search(`XYZ`)!==-1){let e=this.pointEnd.length()/this.pointStart.length();this.pointEnd.dot(this.pointStart)<0&&(e*=-1),this.tempVector2.set(e,e,e)}else this.tempVector.copy(this.pointStart),this.tempVector2.copy(this.pointEnd),this.tempVector.applyQuaternion(this.worldQuaternionInv),this.tempVector2.applyQuaternion(this.worldQuaternionInv),this.tempVector2.divide(this.tempVector),t.search(`X`)===-1&&(this.tempVector2.x=1),t.search(`Y`)===-1&&(this.tempVector2.y=1),t.search(`Z`)===-1&&(this.tempVector2.z=1);r.scale.copy(this.scaleStart).multiply(this.tempVector2),this.scaleSnap&&this.object&&(t.search(`X`)!==-1&&(this.object.scale.x=Math.round(r.scale.x/this.scaleSnap)*this.scaleSnap||this.scaleSnap),t.search(`Y`)!==-1&&(r.scale.y=Math.round(r.scale.y/this.scaleSnap)*this.scaleSnap||this.scaleSnap),t.search(`Z`)!==-1&&(r.scale.z=Math.round(r.scale.z/this.scaleSnap)*this.scaleSnap||this.scaleSnap))}else if(n===`rotate`){this.offset.copy(this.pointEnd).sub(this.pointStart);let e=20/this.worldPosition.distanceTo(this.tempVector.setFromMatrixPosition(this.camera.matrixWorld));t===`E`?(this.rotationAxis.copy(this.eye),this.rotationAngle=this.pointEnd.angleTo(this.pointStart),this.startNorm.copy(this.pointStart).normalize(),this.endNorm.copy(this.pointEnd).normalize(),this.rotationAngle*=this.endNorm.cross(this.startNorm).dot(this.eye)<0?1:-1):t===`XYZE`?(this.rotationAxis.copy(this.offset).cross(this.eye).normalize(),this.rotationAngle=this.offset.dot(this.tempVector.copy(this.rotationAxis).cross(this.eye))*e):(t===`X`||t===`Y`||t===`Z`)&&(this.rotationAxis.copy(this.unit[t]),this.tempVector.copy(this.unit[t]),i===`local`&&this.tempVector.applyQuaternion(this.worldQuaternion),this.rotationAngle=this.offset.dot(this.tempVector.cross(this.eye).normalize())*e),this.rotationSnap&&(this.rotationAngle=Math.round(this.rotationAngle/this.rotationSnap)*this.rotationSnap),i===`local`&&t!==`E`&&t!==`XYZE`?(r.quaternion.copy(this.quaternionStart),r.quaternion.multiply(this.tempQuaternion.setFromAxisAngle(this.rotationAxis,this.rotationAngle)).normalize()):(this.rotationAxis.applyQuaternion(this.parentQuaternionInv),r.quaternion.copy(this.tempQuaternion.setFromAxisAngle(this.rotationAxis,this.rotationAngle)),r.quaternion.multiply(this.quaternionStart).normalize())}this.dispatchEvent(this.changeEvent),this.dispatchEvent(this.objectChangeEvent)}}),Q(this,`pointerUp`,e=>{e.button===0&&(this.dragging&&this.axis!==null&&(this.mouseUpEvent.mode=this.mode,this.dispatchEvent(this.mouseUpEvent)),this.dragging=!1,this.axis=null)}),Q(this,`getPointer`,e=>{var t;if(this.domElement&&(t=this.domElement.ownerDocument)!=null&&t.pointerLockElement)return{x:0,y:0,button:e.button};{let t=e.changedTouches?e.changedTouches[0]:e,n=this.domElement.getBoundingClientRect();return{x:(t.clientX-n.left)/n.width*2-1,y:-(t.clientY-n.top)/n.height*2+1,button:e.button}}}),Q(this,`onPointerHover`,e=>{if(this.enabled)switch(e.pointerType){case`mouse`:case`pen`:this.pointerHover(this.getPointer(e));break}}),Q(this,`onPointerDown`,e=>{!this.enabled||!this.domElement||(this.domElement.style.touchAction=`none`,this.domElement.ownerDocument.addEventListener(`pointermove`,this.onPointerMove),this.pointerHover(this.getPointer(e)),this.pointerDown(this.getPointer(e)))}),Q(this,`onPointerMove`,e=>{this.enabled&&this.pointerMove(this.getPointer(e))}),Q(this,`onPointerUp`,e=>{!this.enabled||!this.domElement||(this.domElement.style.touchAction=``,this.domElement.ownerDocument.removeEventListener(`pointermove`,this.onPointerMove),this.pointerUp(this.getPointer(e)))}),Q(this,`getMode`,()=>this.mode),Q(this,`setMode`,e=>{this.mode=e}),Q(this,`setTranslationSnap`,e=>{this.translationSnap=e}),Q(this,`setRotationSnap`,e=>{this.rotationSnap=e}),Q(this,`setScaleSnap`,e=>{this.scaleSnap=e}),Q(this,`setSize`,e=>{this.size=e}),Q(this,`setSpace`,e=>{this.space=e}),Q(this,`update`,()=>{console.warn(`THREE.TransformControls: update function has no more functionality and therefore has been deprecated.`)}),Q(this,`connect`,e=>{e===document&&console.error(`THREE.OrbitControls: "document" should not be used as the target "domElement". Please use "renderer.domElement" instead.`),this.domElement=e,this.domElement.addEventListener(`pointerdown`,this.onPointerDown),this.domElement.addEventListener(`pointermove`,this.onPointerHover),this.domElement.ownerDocument.addEventListener(`pointerup`,this.onPointerUp)}),Q(this,`dispose`,()=>{var e,t,n,r,i,a;(e=this.domElement)==null||e.removeEventListener(`pointerdown`,this.onPointerDown),(t=this.domElement)==null||t.removeEventListener(`pointermove`,this.onPointerHover),(r=(n=this.domElement)?.ownerDocument)==null||r.removeEventListener(`pointermove`,this.onPointerMove),(a=(i=this.domElement)?.ownerDocument)==null||a.removeEventListener(`pointerup`,this.onPointerUp),this.traverse(e=>{let t=e;t.geometry&&t.geometry.dispose(),t.material&&t.material.dispose()})}),this.domElement=t,this.camera=e,this.gizmo=new BH,this.add(this.gizmo),this.plane=new VH,this.add(this.plane);let n=(e,t)=>{let n=t;Object.defineProperty(this,e,{get:function(){return n===void 0?t:n},set:function(t){n!==t&&(n=t,this.plane[e]=t,this.gizmo[e]=t,this.dispatchEvent({type:e+`-changed`,value:t}),this.dispatchEvent(this.changeEvent))}}),this[e]=t,this.plane[e]=t,this.gizmo[e]=t};n(`camera`,this.camera),n(`object`,this.object),n(`enabled`,this.enabled),n(`axis`,this.axis),n(`mode`,this.mode),n(`translationSnap`,this.translationSnap),n(`rotationSnap`,this.rotationSnap),n(`scaleSnap`,this.scaleSnap),n(`space`,this.space),n(`size`,this.size),n(`dragging`,this.dragging),n(`showX`,this.showX),n(`showY`,this.showY),n(`showZ`,this.showZ),n(`worldPosition`,this.worldPosition),n(`worldPositionStart`,this.worldPositionStart),n(`worldQuaternion`,this.worldQuaternion),n(`worldQuaternionStart`,this.worldQuaternionStart),n(`cameraPosition`,this.cameraPosition),n(`cameraQuaternion`,this.cameraQuaternion),n(`pointStart`,this.pointStart),n(`pointEnd`,this.pointEnd),n(`rotationAxis`,this.rotationAxis),n(`rotationAngle`,this.rotationAngle),n(`eye`,this.eye),t!==void 0&&this.connect(t)}},BH=class extends Ne{constructor(){super(),Q(this,`isTransformControlsGizmo`,!0),Q(this,`type`,`TransformControlsGizmo`),Q(this,`tempVector`,new B(0,0,0)),Q(this,`tempEuler`,new N),Q(this,`alignVector`,new B(0,1,0)),Q(this,`zeroVector`,new B(0,0,0)),Q(this,`lookAtMatrix`,new Se),Q(this,`tempQuaternion`,new Ue),Q(this,`tempQuaternion2`,new Ue),Q(this,`identityQuaternion`,new Ue),Q(this,`unitX`,new B(1,0,0)),Q(this,`unitY`,new B(0,1,0)),Q(this,`unitZ`,new B(0,0,1)),Q(this,`gizmo`),Q(this,`picker`),Q(this,`helper`),Q(this,`rotationAxis`,new B),Q(this,`cameraPosition`,new B),Q(this,`worldPositionStart`,new B),Q(this,`worldQuaternionStart`,new Ue),Q(this,`worldPosition`,new B),Q(this,`worldQuaternion`,new Ue),Q(this,`eye`,new B),Q(this,`camera`,null),Q(this,`enabled`,!0),Q(this,`axis`,null),Q(this,`mode`,`translate`),Q(this,`space`,`world`),Q(this,`size`,1),Q(this,`dragging`,!1),Q(this,`showX`,!0),Q(this,`showY`,!0),Q(this,`showZ`,!0),Q(this,`updateMatrixWorld`,()=>{let e=this.space;this.mode===`scale`&&(e=`local`);let t=e===`local`?this.worldQuaternion:this.identityQuaternion;this.gizmo.translate.visible=this.mode===`translate`,this.gizmo.rotate.visible=this.mode===`rotate`,this.gizmo.scale.visible=this.mode===`scale`,this.helper.translate.visible=this.mode===`translate`,this.helper.rotate.visible=this.mode===`rotate`,this.helper.scale.visible=this.mode===`scale`;let n=[];n=n.concat(this.picker[this.mode].children),n=n.concat(this.gizmo[this.mode].children),n=n.concat(this.helper[this.mode].children);for(let e=0;e.9&&(r.visible=!1)),this.axis===`Y`&&(this.tempQuaternion.setFromEuler(this.tempEuler.set(0,0,Math.PI/2)),r.quaternion.copy(t).multiply(this.tempQuaternion),Math.abs(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye))>.9&&(r.visible=!1)),this.axis===`Z`&&(this.tempQuaternion.setFromEuler(this.tempEuler.set(0,Math.PI/2,0)),r.quaternion.copy(t).multiply(this.tempQuaternion),Math.abs(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye))>.9&&(r.visible=!1)),this.axis===`XYZE`&&(this.tempQuaternion.setFromEuler(this.tempEuler.set(0,Math.PI/2,0)),this.alignVector.copy(this.rotationAxis),r.quaternion.setFromRotationMatrix(this.lookAtMatrix.lookAt(this.zeroVector,this.alignVector,this.unitY)),r.quaternion.multiply(this.tempQuaternion),r.visible=this.dragging),this.axis===`E`&&(r.visible=!1)):r.name===`START`?(r.position.copy(this.worldPositionStart),r.visible=this.dragging):r.name===`END`?(r.position.copy(this.worldPosition),r.visible=this.dragging):r.name===`DELTA`?(r.position.copy(this.worldPositionStart),r.quaternion.copy(this.worldQuaternionStart),this.tempVector.set(1e-10,1e-10,1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1),this.tempVector.applyQuaternion(this.worldQuaternionStart.clone().invert()),r.scale.copy(this.tempVector),r.visible=this.dragging):(r.quaternion.copy(t),this.dragging?r.position.copy(this.worldPositionStart):r.position.copy(this.worldPosition),this.axis&&(r.visible=this.axis.search(r.name)!==-1));continue}r.quaternion.copy(t),this.mode===`translate`||this.mode===`scale`?((r.name===`X`||r.name===`XYZX`)&&Math.abs(this.alignVector.copy(this.unitX).applyQuaternion(t).dot(this.eye))>.99&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),(r.name===`Y`||r.name===`XYZY`)&&Math.abs(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye))>.99&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),(r.name===`Z`||r.name===`XYZZ`)&&Math.abs(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye))>.99&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name===`XY`&&Math.abs(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye))<.2&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name===`YZ`&&Math.abs(this.alignVector.copy(this.unitX).applyQuaternion(t).dot(this.eye))<.2&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name===`XZ`&&Math.abs(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye))<.2&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name.search(`X`)!==-1&&(this.alignVector.copy(this.unitX).applyQuaternion(t).dot(this.eye)<0?r.tag===`fwd`?r.visible=!1:r.scale.x*=-1:r.tag===`bwd`&&(r.visible=!1)),r.name.search(`Y`)!==-1&&(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye)<0?r.tag===`fwd`?r.visible=!1:r.scale.y*=-1:r.tag===`bwd`&&(r.visible=!1)),r.name.search(`Z`)!==-1&&(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye)<0?r.tag===`fwd`?r.visible=!1:r.scale.z*=-1:r.tag===`bwd`&&(r.visible=!1))):this.mode===`rotate`&&(this.tempQuaternion2.copy(t),this.alignVector.copy(this.eye).applyQuaternion(this.tempQuaternion.copy(t).invert()),r.name.search(`E`)!==-1&&r.quaternion.setFromRotationMatrix(this.lookAtMatrix.lookAt(this.eye,this.zeroVector,this.unitY)),r.name===`X`&&(this.tempQuaternion.setFromAxisAngle(this.unitX,Math.atan2(-this.alignVector.y,this.alignVector.z)),this.tempQuaternion.multiplyQuaternions(this.tempQuaternion2,this.tempQuaternion),r.quaternion.copy(this.tempQuaternion)),r.name===`Y`&&(this.tempQuaternion.setFromAxisAngle(this.unitY,Math.atan2(this.alignVector.x,this.alignVector.z)),this.tempQuaternion.multiplyQuaternions(this.tempQuaternion2,this.tempQuaternion),r.quaternion.copy(this.tempQuaternion)),r.name===`Z`&&(this.tempQuaternion.setFromAxisAngle(this.unitZ,Math.atan2(this.alignVector.y,this.alignVector.x)),this.tempQuaternion.multiplyQuaternions(this.tempQuaternion2,this.tempQuaternion),r.quaternion.copy(this.tempQuaternion))),r.visible=r.visible&&(r.name.indexOf(`X`)===-1||this.showX),r.visible=r.visible&&(r.name.indexOf(`Y`)===-1||this.showY),r.visible=r.visible&&(r.name.indexOf(`Z`)===-1||this.showZ),r.visible=r.visible&&(r.name.indexOf(`E`)===-1||this.showX&&this.showY&&this.showZ),r.material.tempOpacity=r.material.tempOpacity||r.material.opacity,r.material.tempColor=r.material.tempColor||r.material.color.clone(),r.material.color.copy(r.material.tempColor),r.material.opacity=r.material.tempOpacity,this.enabled?this.axis&&(r.name===this.axis||this.axis.split(``).some(function(e){return r.name===e})?(r.material.opacity=1,r.material.color.lerp(new g(1,1,1),.5)):(r.material.opacity*=.25,r.material.color.lerp(new g(1,1,1),.5))):(r.material.opacity*=.5,r.material.color.lerp(new g(1,1,1),.5))}super.updateMatrixWorld()});let e=new we({depthTest:!1,depthWrite:!1,transparent:!0,side:E,fog:!1,toneMapped:!1}),t=new pe({depthTest:!1,depthWrite:!1,transparent:!0,linewidth:1,fog:!1,toneMapped:!1}),n=e.clone();n.opacity=.15;let r=e.clone();r.opacity=.33;let i=e.clone();i.color.set(16711680);let a=e.clone();a.color.set(65280);let o=e.clone();o.color.set(255);let s=e.clone();s.opacity=.25;let c=s.clone();c.color.set(16776960);let l=s.clone();l.color.set(65535);let d=s.clone();d.color.set(16711935),e.clone().color.set(16776960);let p=t.clone();p.color.set(16711680);let m=t.clone();m.color.set(65280);let h=t.clone();h.color.set(255);let _=t.clone();_.color.set(65535);let v=t.clone();v.color.set(16711935);let y=t.clone();y.color.set(16776960);let b=t.clone();b.color.set(7895160);let S=y.clone();S.opacity=.25;let C=new x(0,.05,.2,12,1,!1),w=new u(.125,.125,.125),T=new f;T.setAttribute(`position`,new I([0,0,0,1,0,0],3));let D=(e,t)=>{let n=new f,r=[];for(let n=0;n<=64*t;++n)r.push(0,Math.cos(n/32*Math.PI)*e,Math.sin(n/32*Math.PI)*e);return n.setAttribute(`position`,new I(r,3)),n},O=()=>{let e=new f;return e.setAttribute(`position`,new I([0,0,0,1,1,1],3)),e},k={X:[[new Ce(C,i),[1,0,0],[0,0,-Math.PI/2],null,`fwd`],[new Ce(C,i),[1,0,0],[0,0,Math.PI/2],null,`bwd`],[new de(T,p)]],Y:[[new Ce(C,a),[0,1,0],null,null,`fwd`],[new Ce(C,a),[0,1,0],[Math.PI,0,0],null,`bwd`],[new de(T,m),null,[0,0,Math.PI/2]]],Z:[[new Ce(C,o),[0,0,1],[Math.PI/2,0,0],null,`fwd`],[new Ce(C,o),[0,0,1],[-Math.PI/2,0,0],null,`bwd`],[new de(T,h),null,[0,-Math.PI/2,0]]],XYZ:[[new Ce(new Pe(.1,0),s.clone()),[0,0,0],[0,0,0]]],XY:[[new Ce(new ze(.295,.295),c.clone()),[.15,.15,0]],[new de(T,y),[.18,.3,0],null,[.125,1,1]],[new de(T,y),[.3,.18,0],[0,0,Math.PI/2],[.125,1,1]]],YZ:[[new Ce(new ze(.295,.295),l.clone()),[0,.15,.15],[0,Math.PI/2,0]],[new de(T,_),[0,.18,.3],[0,0,Math.PI/2],[.125,1,1]],[new de(T,_),[0,.3,.18],[0,-Math.PI/2,0],[.125,1,1]]],XZ:[[new Ce(new ze(.295,.295),d.clone()),[.15,0,.15],[-Math.PI/2,0,0]],[new de(T,v),[.18,0,.3],null,[.125,1,1]],[new de(T,v),[.3,0,.18],[0,-Math.PI/2,0],[.125,1,1]]]},A={X:[[new Ce(new x(.2,0,1,4,1,!1),n),[.6,0,0],[0,0,-Math.PI/2]]],Y:[[new Ce(new x(.2,0,1,4,1,!1),n),[0,.6,0]]],Z:[[new Ce(new x(.2,0,1,4,1,!1),n),[0,0,.6],[Math.PI/2,0,0]]],XYZ:[[new Ce(new Pe(.2,0),n)]],XY:[[new Ce(new ze(.4,.4),n),[.2,.2,0]]],YZ:[[new Ce(new ze(.4,.4),n),[0,.2,.2],[0,Math.PI/2,0]]],XZ:[[new Ce(new ze(.4,.4),n),[.2,0,.2],[-Math.PI/2,0,0]]]},j={START:[[new Ce(new Pe(.01,2),r),null,null,null,`helper`]],END:[[new Ce(new Pe(.01,2),r),null,null,null,`helper`]],DELTA:[[new de(O(),r),null,null,null,`helper`]],X:[[new de(T,r.clone()),[-1e3,0,0],null,[1e6,1,1],`helper`]],Y:[[new de(T,r.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],`helper`]],Z:[[new de(T,r.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],`helper`]]},M={X:[[new de(D(1,.5),p)],[new Ce(new Pe(.04,0),i),[0,0,.99],null,[1,3,1]]],Y:[[new de(D(1,.5),m),null,[0,0,-Math.PI/2]],[new Ce(new Pe(.04,0),a),[0,0,.99],null,[3,1,1]]],Z:[[new de(D(1,.5),h),null,[0,Math.PI/2,0]],[new Ce(new Pe(.04,0),o),[.99,0,0],null,[1,3,1]]],E:[[new de(D(1.25,1),S),null,[0,Math.PI/2,0]],[new Ce(new x(.03,0,.15,4,1,!1),S),[1.17,0,0],[0,0,-Math.PI/2],[1,1,.001]],[new Ce(new x(.03,0,.15,4,1,!1),S),[-1.17,0,0],[0,0,Math.PI/2],[1,1,.001]],[new Ce(new x(.03,0,.15,4,1,!1),S),[0,-1.17,0],[Math.PI,0,0],[1,1,.001]],[new Ce(new x(.03,0,.15,4,1,!1),S),[0,1.17,0],[0,0,0],[1,1,.001]]],XYZE:[[new de(D(1,1),b),null,[0,Math.PI/2,0]]]},ee={AXIS:[[new de(T,r.clone()),[-1e3,0,0],null,[1e6,1,1],`helper`]]},P={X:[[new Ce(new ft(1,.1,4,24),n),[0,0,0],[0,-Math.PI/2,-Math.PI/2]]],Y:[[new Ce(new ft(1,.1,4,24),n),[0,0,0],[Math.PI/2,0,0]]],Z:[[new Ce(new ft(1,.1,4,24),n),[0,0,0],[0,0,-Math.PI/2]]],E:[[new Ce(new ft(1.25,.1,2,24),n)]],XYZE:[[new Ce(new st(.7,10,8),n)]]},F={X:[[new Ce(w,i),[.8,0,0],[0,0,-Math.PI/2]],[new de(T,p),null,null,[.8,1,1]]],Y:[[new Ce(w,a),[0,.8,0]],[new de(T,m),null,[0,0,Math.PI/2],[.8,1,1]]],Z:[[new Ce(w,o),[0,0,.8],[Math.PI/2,0,0]],[new de(T,h),null,[0,-Math.PI/2,0],[.8,1,1]]],XY:[[new Ce(w,c),[.85,.85,0],null,[2,2,.2]],[new de(T,y),[.855,.98,0],null,[.125,1,1]],[new de(T,y),[.98,.855,0],[0,0,Math.PI/2],[.125,1,1]]],YZ:[[new Ce(w,l),[0,.85,.85],null,[.2,2,2]],[new de(T,_),[0,.855,.98],[0,0,Math.PI/2],[.125,1,1]],[new de(T,_),[0,.98,.855],[0,-Math.PI/2,0],[.125,1,1]]],XZ:[[new Ce(w,d),[.85,0,.85],null,[2,.2,2]],[new de(T,v),[.855,0,.98],null,[.125,1,1]],[new de(T,v),[.98,0,.855],[0,-Math.PI/2,0],[.125,1,1]]],XYZX:[[new Ce(new u(.125,.125,.125),s.clone()),[1.1,0,0]]],XYZY:[[new Ce(new u(.125,.125,.125),s.clone()),[0,1.1,0]]],XYZZ:[[new Ce(new u(.125,.125,.125),s.clone()),[0,0,1.1]]]},te={X:[[new Ce(new x(.2,0,.8,4,1,!1),n),[.5,0,0],[0,0,-Math.PI/2]]],Y:[[new Ce(new x(.2,0,.8,4,1,!1),n),[0,.5,0]]],Z:[[new Ce(new x(.2,0,.8,4,1,!1),n),[0,0,.5],[Math.PI/2,0,0]]],XY:[[new Ce(w,n),[.85,.85,0],null,[3,3,.2]]],YZ:[[new Ce(w,n),[0,.85,.85],null,[.2,3,3]]],XZ:[[new Ce(w,n),[.85,0,.85],null,[3,.2,3]]],XYZX:[[new Ce(new u(.2,.2,.2),n),[1.1,0,0]]],XYZY:[[new Ce(new u(.2,.2,.2),n),[0,1.1,0]]],XYZZ:[[new Ce(new u(.2,.2,.2),n),[0,0,1.1]]]},L={X:[[new de(T,r.clone()),[-1e3,0,0],null,[1e6,1,1],`helper`]],Y:[[new de(T,r.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],`helper`]],Z:[[new de(T,r.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],`helper`]]},R=e=>{let t=new Ne;for(let n in e)for(let r=e[n].length;r--;){let i=e[n][r][0].clone(),a=e[n][r][1],o=e[n][r][2],s=e[n][r][3],c=e[n][r][4];i.name=n,i.tag=c,a&&i.position.set(a[0],a[1],a[2]),o&&i.rotation.set(o[0],o[1],o[2]),s&&i.scale.set(s[0],s[1],s[2]),i.updateMatrix();let l=i.geometry.clone();l.applyMatrix4(i.matrix),i.geometry=l,i.renderOrder=1/0,i.position.set(0,0,0),i.rotation.set(0,0,0),i.scale.set(1,1,1),t.add(i)}return t};this.gizmo={},this.picker={},this.helper={},this.add(this.gizmo.translate=R(k)),this.add(this.gizmo.rotate=R(M)),this.add(this.gizmo.scale=R(F)),this.add(this.picker.translate=R(A)),this.add(this.picker.rotate=R(P)),this.add(this.picker.scale=R(te)),this.add(this.helper.translate=R(j)),this.add(this.helper.rotate=R(ee)),this.add(this.helper.scale=R(L)),this.picker.translate.visible=!1,this.picker.rotate.visible=!1,this.picker.scale.visible=!1}},VH=class extends Ce{constructor(){super(new ze(1e5,1e5,2,2),new we({visible:!1,wireframe:!0,side:E,transparent:!0,opacity:.1,toneMapped:!1})),Q(this,`isTransformControlsPlane`,!0),Q(this,`type`,`TransformControlsPlane`),Q(this,`unitX`,new B(1,0,0)),Q(this,`unitY`,new B(0,1,0)),Q(this,`unitZ`,new B(0,0,1)),Q(this,`tempVector`,new B),Q(this,`dirVector`,new B),Q(this,`alignVector`,new B),Q(this,`tempMatrix`,new Se),Q(this,`identityQuaternion`,new Ue),Q(this,`cameraQuaternion`,new Ue),Q(this,`worldPosition`,new B),Q(this,`worldQuaternion`,new Ue),Q(this,`eye`,new B),Q(this,`axis`,null),Q(this,`mode`,`translate`),Q(this,`space`,`world`),Q(this,`updateMatrixWorld`,()=>{let e=this.space;switch(this.position.copy(this.worldPosition),this.mode===`scale`&&(e=`local`),this.unitX.set(1,0,0).applyQuaternion(e===`local`?this.worldQuaternion:this.identityQuaternion),this.unitY.set(0,1,0).applyQuaternion(e===`local`?this.worldQuaternion:this.identityQuaternion),this.unitZ.set(0,0,1).applyQuaternion(e===`local`?this.worldQuaternion:this.identityQuaternion),this.alignVector.copy(this.unitY),this.mode){case`translate`:case`scale`:switch(this.axis){case`X`:this.alignVector.copy(this.eye).cross(this.unitX),this.dirVector.copy(this.unitX).cross(this.alignVector);break;case`Y`:this.alignVector.copy(this.eye).cross(this.unitY),this.dirVector.copy(this.unitY).cross(this.alignVector);break;case`Z`:this.alignVector.copy(this.eye).cross(this.unitZ),this.dirVector.copy(this.unitZ).cross(this.alignVector);break;case`XY`:this.dirVector.copy(this.unitZ);break;case`YZ`:this.dirVector.copy(this.unitX);break;case`XZ`:this.alignVector.copy(this.unitZ),this.dirVector.copy(this.unitY);break;case`XYZ`:case`E`:this.dirVector.set(0,0,0);break}break;case`rotate`:default:this.dirVector.set(0,0,0)}this.dirVector.length()===0?this.quaternion.copy(this.cameraQuaternion):(this.tempMatrix.lookAt(this.tempVector.set(0,0,0),this.dirVector,this.alignVector),this.quaternion.setFromRotationMatrix(this.tempMatrix)),super.updateMatrixWorld()})}},HH=Object.defineProperty,UH=(e,t,n)=>t in e?HH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,WH=(e,t,n)=>(UH(e,typeof t==`symbol`?t:t+``,n),n);const GH=new N(0,0,0,`YXZ`),KH=new B,qH={type:`change`},JH={type:`lock`},YH={type:`unlock`},XH=Math.PI/2;var ZH=class extends ee{constructor(e,t){super(),WH(this,`camera`),WH(this,`domElement`),WH(this,`isLocked`),WH(this,`minPolarAngle`),WH(this,`maxPolarAngle`),WH(this,`pointerSpeed`),WH(this,`onMouseMove`,e=>{if(!this.domElement||this.isLocked===!1)return;let t=e.movementX||e.mozMovementX||e.webkitMovementX||0,n=e.movementY||e.mozMovementY||e.webkitMovementY||0;GH.setFromQuaternion(this.camera.quaternion),GH.y-=t*.002*this.pointerSpeed,GH.x-=n*.002*this.pointerSpeed,GH.x=Math.max(XH-this.maxPolarAngle,Math.min(XH-this.minPolarAngle,GH.x)),this.camera.quaternion.setFromEuler(GH),this.dispatchEvent(qH)}),WH(this,`onPointerlockChange`,()=>{this.domElement&&(this.domElement.ownerDocument.pointerLockElement===this.domElement?(this.dispatchEvent(JH),this.isLocked=!0):(this.dispatchEvent(YH),this.isLocked=!1))}),WH(this,`onPointerlockError`,()=>{console.error(`THREE.PointerLockControls: Unable to use Pointer Lock API`)}),WH(this,`connect`,e=>{this.domElement=e||this.domElement,this.domElement&&(this.domElement.ownerDocument.addEventListener(`mousemove`,this.onMouseMove),this.domElement.ownerDocument.addEventListener(`pointerlockchange`,this.onPointerlockChange),this.domElement.ownerDocument.addEventListener(`pointerlockerror`,this.onPointerlockError))}),WH(this,`disconnect`,()=>{this.domElement&&(this.domElement.ownerDocument.removeEventListener(`mousemove`,this.onMouseMove),this.domElement.ownerDocument.removeEventListener(`pointerlockchange`,this.onPointerlockChange),this.domElement.ownerDocument.removeEventListener(`pointerlockerror`,this.onPointerlockError))}),WH(this,`dispose`,()=>{this.disconnect()}),WH(this,`getObject`,()=>this.camera),WH(this,`direction`,new B(0,0,-1)),WH(this,`getDirection`,e=>e.copy(this.direction).applyQuaternion(this.camera.quaternion)),WH(this,`moveForward`,e=>{KH.setFromMatrixColumn(this.camera.matrix,0),KH.crossVectors(this.camera.up,KH),this.camera.position.addScaledVector(KH,e)}),WH(this,`moveRight`,e=>{KH.setFromMatrixColumn(this.camera.matrix,0),this.camera.position.addScaledVector(KH,e)}),WH(this,`lock`,()=>{this.domElement&&this.domElement.requestPointerLock()}),WH(this,`unlock`,()=>{this.domElement&&this.domElement.ownerDocument.exitPointerLock()}),this.camera=e,this.domElement=t,this.isLocked=!1,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.pointerSpeed=1,t&&this.connect(t)}},QH=Object.defineProperty,$H=(e,t,n)=>t in e?QH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,eU=(e,t,n)=>($H(e,typeof t==`symbol`?t:t+``,n),n);const tU=new qe,nU=new Re,rU=Math.cos(70*(Math.PI/180)),iU=(e,t)=>(e%t+t)%t;var aU=class extends ee{constructor(e,t){super(),eU(this,`object`),eU(this,`domElement`),eU(this,`enabled`,!0),eU(this,`target`,new B),eU(this,`minDistance`,0),eU(this,`maxDistance`,1/0),eU(this,`minZoom`,0),eU(this,`maxZoom`,1/0),eU(this,`minPolarAngle`,0),eU(this,`maxPolarAngle`,Math.PI),eU(this,`minAzimuthAngle`,-1/0),eU(this,`maxAzimuthAngle`,1/0),eU(this,`enableDamping`,!1),eU(this,`dampingFactor`,.05),eU(this,`enableZoom`,!0),eU(this,`zoomSpeed`,1),eU(this,`enableRotate`,!0),eU(this,`rotateSpeed`,1),eU(this,`enablePan`,!0),eU(this,`panSpeed`,1),eU(this,`screenSpacePanning`,!0),eU(this,`keyPanSpeed`,7),eU(this,`zoomToCursor`,!1),eU(this,`autoRotate`,!1),eU(this,`autoRotateSpeed`,2),eU(this,`reverseOrbit`,!1),eU(this,`reverseHorizontalOrbit`,!1),eU(this,`reverseVerticalOrbit`,!1),eU(this,`keys`,{LEFT:`ArrowLeft`,UP:`ArrowUp`,RIGHT:`ArrowRight`,BOTTOM:`ArrowDown`}),eU(this,`mouseButtons`,{LEFT:ve.ROTATE,MIDDLE:ve.DOLLY,RIGHT:ve.PAN}),eU(this,`touches`,{ONE:lt.ROTATE,TWO:lt.DOLLY_PAN}),eU(this,`target0`),eU(this,`position0`),eU(this,`zoom0`),eU(this,`_domElementKeyEvents`,null),eU(this,`getPolarAngle`),eU(this,`getAzimuthalAngle`),eU(this,`setPolarAngle`),eU(this,`setAzimuthalAngle`),eU(this,`getDistance`),eU(this,`getZoomScale`),eU(this,`listenToKeyEvents`),eU(this,`stopListenToKeyEvents`),eU(this,`saveState`),eU(this,`reset`),eU(this,`update`),eU(this,`connect`),eU(this,`dispose`),eU(this,`dollyIn`),eU(this,`dollyOut`),eU(this,`getScale`),eU(this,`setScale`),this.object=e,this.domElement=t,this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this.getPolarAngle=()=>l.phi,this.getAzimuthalAngle=()=>l.theta,this.setPolarAngle=e=>{let t=iU(e,2*Math.PI),r=l.phi;r<0&&(r+=2*Math.PI),t<0&&(t+=2*Math.PI);let i=Math.abs(t-r);2*Math.PI-i{let t=iU(e,2*Math.PI),r=l.theta;r<0&&(r+=2*Math.PI),t<0&&(t+=2*Math.PI);let i=Math.abs(t-r);2*Math.PI-in.object.position.distanceTo(n.target),this.listenToKeyEvents=e=>{e.addEventListener(`keydown`,we),this._domElementKeyEvents=e},this.stopListenToKeyEvents=()=>{this._domElementKeyEvents.removeEventListener(`keydown`,we),this._domElementKeyEvents=null},this.saveState=()=>{n.target0.copy(n.target),n.position0.copy(n.object.position),n.zoom0=n.object.zoom},this.reset=()=>{n.target.copy(n.target0),n.object.position.copy(n.position0),n.object.zoom=n.zoom0,n.object.updateProjectionMatrix(),n.dispatchEvent(r),n.update(),s=o.NONE},this.update=(()=>{let t=new B,i=new B(0,1,0),a=new Ue().setFromUnitVectors(e.up,i),p=a.clone().invert(),m=new B,h=new Ue,g=2*Math.PI;return function(){let _=n.object.position;a.setFromUnitVectors(e.up,i),p.copy(a).invert(),t.copy(_).sub(n.target),t.applyQuaternion(a),l.setFromVector3(t),n.autoRotate&&s===o.NONE&&k(D()),n.enableDamping?(l.theta+=u.theta*n.dampingFactor,l.phi+=u.phi*n.dampingFactor):(l.theta+=u.theta,l.phi+=u.phi);let v=n.minAzimuthAngle,y=n.maxAzimuthAngle;isFinite(v)&&isFinite(y)&&(v<-Math.PI?v+=g:v>Math.PI&&(v-=g),y<-Math.PI?y+=g:y>Math.PI&&(y-=g),v<=y?l.theta=Math.max(v,Math.min(y,l.theta)):l.theta=l.theta>(v+y)/2?Math.max(v,l.theta):Math.min(y,l.theta)),l.phi=Math.max(n.minPolarAngle,Math.min(n.maxPolarAngle,l.phi)),l.makeSafe(),n.enableDamping===!0?n.target.addScaledVector(f,n.dampingFactor):n.target.add(f),n.zoomToCursor&&w||n.object.isOrthographicCamera?l.radius=te(l.radius):l.radius=te(l.radius*d),t.setFromSpherical(l),t.applyQuaternion(p),_.copy(n.target).add(t),n.object.matrixAutoUpdate||n.object.updateMatrix(),n.object.lookAt(n.target),n.enableDamping===!0?(u.theta*=1-n.dampingFactor,u.phi*=1-n.dampingFactor,f.multiplyScalar(1-n.dampingFactor)):(u.set(0,0,0),f.set(0,0,0));let b=!1;if(n.zoomToCursor&&w){let r=null;if(n.object instanceof Le&&n.object.isPerspectiveCamera){let e=t.length();r=te(e*d);let i=e-r;n.object.position.addScaledVector(S,i),n.object.updateMatrixWorld()}else if(n.object.isOrthographicCamera){let e=new B(C.x,C.y,0);e.unproject(n.object),n.object.zoom=Math.max(n.minZoom,Math.min(n.maxZoom,n.object.zoom/d)),n.object.updateProjectionMatrix(),b=!0;let i=new B(C.x,C.y,0);i.unproject(n.object),n.object.position.sub(i).add(e),n.object.updateMatrixWorld(),r=t.length()}else console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled.`),n.zoomToCursor=!1;r!==null&&(n.screenSpacePanning?n.target.set(0,0,-1).transformDirection(n.object.matrix).multiplyScalar(r).add(n.object.position):(tU.origin.copy(n.object.position),tU.direction.set(0,0,-1).transformDirection(n.object.matrix),Math.abs(n.object.up.dot(tU.direction))c||8*(1-h.dot(n.object.quaternion))>c?(n.dispatchEvent(r),m.copy(n.object.position),h.copy(n.object.quaternion),b=!1,!0):!1}})(),this.connect=e=>{n.domElement=e,n.domElement.style.touchAction=`none`,n.domElement.addEventListener(`contextmenu`,De),n.domElement.addEventListener(`pointerdown`,_e),n.domElement.addEventListener(`pointercancel`,be),n.domElement.addEventListener(`wheel`,Ce)},this.dispose=()=>{var e,t,r,i,a,o;n.domElement&&(n.domElement.style.touchAction=`auto`),(e=n.domElement)==null||e.removeEventListener(`contextmenu`,De),(t=n.domElement)==null||t.removeEventListener(`pointerdown`,_e),(r=n.domElement)==null||r.removeEventListener(`pointercancel`,be),(i=n.domElement)==null||i.removeEventListener(`wheel`,Ce),(a=n.domElement)==null||a.ownerDocument.removeEventListener(`pointermove`,ye),(o=n.domElement)==null||o.ownerDocument.removeEventListener(`pointerup`,be),n._domElementKeyEvents!==null&&n._domElementKeyEvents.removeEventListener(`keydown`,we)};let n=this,r={type:`change`},i={type:`start`},a={type:`end`},o={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},s=o.NONE,c=1e-6,l=new ct,u=new ct,d=1,f=new B,p=new yt,m=new yt,h=new yt,g=new yt,_=new yt,v=new yt,y=new yt,b=new yt,x=new yt,S=new B,C=new yt,w=!1,T=[],E={};function D(){return 2*Math.PI/60/60*n.autoRotateSpeed}function O(){return .95**n.zoomSpeed}function k(e){n.reverseOrbit||n.reverseHorizontalOrbit?u.theta+=e:u.theta-=e}function A(e){n.reverseOrbit||n.reverseVerticalOrbit?u.phi+=e:u.phi-=e}let j=(()=>{let e=new B;return function(t,n){e.setFromMatrixColumn(n,0),e.multiplyScalar(-t),f.add(e)}})(),M=(()=>{let e=new B;return function(t,r){n.screenSpacePanning===!0?e.setFromMatrixColumn(r,1):(e.setFromMatrixColumn(r,0),e.crossVectors(n.object.up,e)),e.multiplyScalar(t),f.add(e)}})(),N=(()=>{let e=new B;return function(t,r){let i=n.domElement;if(i&&n.object instanceof Le&&n.object.isPerspectiveCamera){let a=n.object.position;e.copy(a).sub(n.target);let o=e.length();o*=Math.tan(n.object.fov/2*Math.PI/180),j(2*t*o/i.clientHeight,n.object.matrix),M(2*r*o/i.clientHeight,n.object.matrix)}else i&&n.object instanceof Fe&&n.object.isOrthographicCamera?(j(t*(n.object.right-n.object.left)/n.object.zoom/i.clientWidth,n.object.matrix),M(r*(n.object.top-n.object.bottom)/n.object.zoom/i.clientHeight,n.object.matrix)):(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.`),n.enablePan=!1)}})();function ee(e){n.object instanceof Le&&n.object.isPerspectiveCamera||n.object instanceof Fe&&n.object.isOrthographicCamera?d=e:(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.`),n.enableZoom=!1)}function P(e){ee(d/e)}function F(e){ee(d*e)}function I(e){if(!n.zoomToCursor||!n.domElement)return;w=!0;let t=n.domElement.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top,a=t.width,o=t.height;C.x=r/a*2-1,C.y=-(i/o)*2+1,S.set(C.x,C.y,1).unproject(n.object).sub(n.object.position).normalize()}function te(e){return Math.max(n.minDistance,Math.min(n.maxDistance,e))}function L(e){p.set(e.clientX,e.clientY)}function R(e){I(e),y.set(e.clientX,e.clientY)}function ne(e){g.set(e.clientX,e.clientY)}function z(e){m.set(e.clientX,e.clientY),h.subVectors(m,p).multiplyScalar(n.rotateSpeed);let t=n.domElement;t&&(k(2*Math.PI*h.x/t.clientHeight),A(2*Math.PI*h.y/t.clientHeight)),p.copy(m),n.update()}function re(e){b.set(e.clientX,e.clientY),x.subVectors(b,y),x.y>0?P(O()):x.y<0&&F(O()),y.copy(b),n.update()}function ie(e){_.set(e.clientX,e.clientY),v.subVectors(_,g).multiplyScalar(n.panSpeed),N(v.x,v.y),g.copy(_),n.update()}function ae(e){I(e),e.deltaY<0?F(O()):e.deltaY>0&&P(O()),n.update()}function oe(e){let t=!1;switch(e.code){case n.keys.UP:N(0,n.keyPanSpeed),t=!0;break;case n.keys.BOTTOM:N(0,-n.keyPanSpeed),t=!0;break;case n.keys.LEFT:N(n.keyPanSpeed,0),t=!0;break;case n.keys.RIGHT:N(-n.keyPanSpeed,0),t=!0;break}t&&(e.preventDefault(),n.update())}function se(){if(T.length==1)p.set(T[0].pageX,T[0].pageY);else{let e=.5*(T[0].pageX+T[1].pageX),t=.5*(T[0].pageY+T[1].pageY);p.set(e,t)}}function ce(){if(T.length==1)g.set(T[0].pageX,T[0].pageY);else{let e=.5*(T[0].pageX+T[1].pageX),t=.5*(T[0].pageY+T[1].pageY);g.set(e,t)}}function le(){let e=T[0].pageX-T[1].pageX,t=T[0].pageY-T[1].pageY,n=Math.sqrt(e*e+t*t);y.set(0,n)}function ue(){n.enableZoom&&le(),n.enablePan&&ce()}function de(){n.enableZoom&&le(),n.enableRotate&&se()}function fe(e){if(T.length==1)m.set(e.pageX,e.pageY);else{let t=je(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);m.set(n,r)}h.subVectors(m,p).multiplyScalar(n.rotateSpeed);let t=n.domElement;t&&(k(2*Math.PI*h.x/t.clientHeight),A(2*Math.PI*h.y/t.clientHeight)),p.copy(m)}function pe(e){if(T.length==1)_.set(e.pageX,e.pageY);else{let t=je(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);_.set(n,r)}v.subVectors(_,g).multiplyScalar(n.panSpeed),N(v.x,v.y),g.copy(_)}function me(e){let t=je(e),r=e.pageX-t.x,i=e.pageY-t.y,a=Math.sqrt(r*r+i*i);b.set(0,a),x.set(0,(b.y/y.y)**+n.zoomSpeed),P(x.y),y.copy(b)}function he(e){n.enableZoom&&me(e),n.enablePan&&pe(e)}function ge(e){n.enableZoom&&me(e),n.enableRotate&&fe(e)}function _e(e){var t,r;n.enabled!==!1&&(T.length===0&&((t=n.domElement)==null||t.ownerDocument.addEventListener(`pointermove`,ye),(r=n.domElement)==null||r.ownerDocument.addEventListener(`pointerup`,be)),Oe(e),e.pointerType===`touch`?Te(e):xe(e))}function ye(e){n.enabled!==!1&&(e.pointerType===`touch`?Ee(e):Se(e))}function be(e){var t,r,i;ke(e),T.length===0&&((t=n.domElement)==null||t.releasePointerCapture(e.pointerId),(r=n.domElement)==null||r.ownerDocument.removeEventListener(`pointermove`,ye),(i=n.domElement)==null||i.ownerDocument.removeEventListener(`pointerup`,be)),n.dispatchEvent(a),s=o.NONE}function xe(e){let t;switch(e.button){case 0:t=n.mouseButtons.LEFT;break;case 1:t=n.mouseButtons.MIDDLE;break;case 2:t=n.mouseButtons.RIGHT;break;default:t=-1}switch(t){case ve.DOLLY:if(n.enableZoom===!1)return;R(e),s=o.DOLLY;break;case ve.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(n.enablePan===!1)return;ne(e),s=o.PAN}else{if(n.enableRotate===!1)return;L(e),s=o.ROTATE}break;case ve.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(n.enableRotate===!1)return;L(e),s=o.ROTATE}else{if(n.enablePan===!1)return;ne(e),s=o.PAN}break;default:s=o.NONE}s!==o.NONE&&n.dispatchEvent(i)}function Se(e){if(n.enabled!==!1)switch(s){case o.ROTATE:if(n.enableRotate===!1)return;z(e);break;case o.DOLLY:if(n.enableZoom===!1)return;re(e);break;case o.PAN:if(n.enablePan===!1)return;ie(e);break}}function Ce(e){n.enabled===!1||n.enableZoom===!1||s!==o.NONE&&s!==o.ROTATE||(e.preventDefault(),n.dispatchEvent(i),ae(e),n.dispatchEvent(a))}function we(e){n.enabled===!1||n.enablePan===!1||oe(e)}function Te(e){switch(Ae(e),T.length){case 1:switch(n.touches.ONE){case lt.ROTATE:if(n.enableRotate===!1)return;se(),s=o.TOUCH_ROTATE;break;case lt.PAN:if(n.enablePan===!1)return;ce(),s=o.TOUCH_PAN;break;default:s=o.NONE}break;case 2:switch(n.touches.TWO){case lt.DOLLY_PAN:if(n.enableZoom===!1&&n.enablePan===!1)return;ue(),s=o.TOUCH_DOLLY_PAN;break;case lt.DOLLY_ROTATE:if(n.enableZoom===!1&&n.enableRotate===!1)return;de(),s=o.TOUCH_DOLLY_ROTATE;break;default:s=o.NONE}break;default:s=o.NONE}s!==o.NONE&&n.dispatchEvent(i)}function Ee(e){switch(Ae(e),s){case o.TOUCH_ROTATE:if(n.enableRotate===!1)return;fe(e),n.update();break;case o.TOUCH_PAN:if(n.enablePan===!1)return;pe(e),n.update();break;case o.TOUCH_DOLLY_PAN:if(n.enableZoom===!1&&n.enablePan===!1)return;he(e),n.update();break;case o.TOUCH_DOLLY_ROTATE:if(n.enableZoom===!1&&n.enableRotate===!1)return;ge(e),n.update();break;default:s=o.NONE}}function De(e){n.enabled!==!1&&e.preventDefault()}function Oe(e){T.push(e)}function ke(e){delete E[e.pointerId];for(let t=0;t{F(e),n.update()},this.dollyOut=(e=O())=>{P(e),n.update()},this.getScale=()=>d,this.setScale=e=>{ee(e),n.update()},this.getZoomScale=()=>O(),t!==void 0&&this.connect(t),this.update()}},oU=class extends aU{constructor(e,t){super(e,t),this.screenSpacePanning=!1,this.mouseButtons.LEFT=ve.PAN,this.mouseButtons.RIGHT=ve.ROTATE,this.touches.ONE=lt.PAN,this.touches.TWO=lt.DOLLY_ROTATE}};const sU=new Ue,cU={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},lU={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},uU={9728:ke,9729:me,9984:je,9985:ge,9986:Ae,9987:he},dU={33071:m,33648:De,10497:Ye},fU={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},pU={POSITION:`position`,NORMAL:`normal`,TANGENT:`tangent`,...KB>=152?{TEXCOORD_0:`uv`,TEXCOORD_1:`uv1`,TEXCOORD_2:`uv2`,TEXCOORD_3:`uv3`}:{TEXCOORD_0:`uv`,TEXCOORD_1:`uv2`},COLOR_0:`color`,WEIGHTS_0:`skinWeight`,JOINTS_0:`skinIndex`},mU={scale:`scale`,translation:`position`,rotation:`quaternion`,weights:`morphTargetInfluences`},hU={CUBICSPLINE:void 0,LINEAR:le,STEP:ce},gU={OPAQUE:`OPAQUE`,MASK:`MASK`,BLEND:`BLEND`},_U=new Se,vU=new B;function yU(e,t,n,r,i,a){let o=2*Math.PI*i/4,s=Math.max(a-2*i,0),c=Math.PI/4;vU.copy(t),vU[r]=0,vU.normalize();let l=.5*o/(o+s),u=1-vU.angleTo(e)/c;return Math.sign(vU[n])===1?u*l:s/(o+s)+l+l*(1-u)}var bU=class extends u{constructor(e=1,t=1,n=1,r=2,i=.1){if(r=r*2+1,i=Math.min(e/2,t/2,n/2,i),super(1,1,1,r,r,r),r===1)return;let a=this.toNonIndexed();this.index=null,this.attributes.position=a.attributes.position,this.attributes.normal=a.attributes.normal,this.attributes.uv=a.attributes.uv;let o=new B,s=new B,c=new B(e,t,n).divideScalar(2).subScalar(i),l=this.attributes.position.array,u=this.attributes.normal.array,d=this.attributes.uv.array,f=l.length/6,p=new B,m=.5/r;for(let r=0,a=0;rt in e?EU(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,OU=(e,t,n)=>(DU(e,typeof t==`symbol`?t:t+``,n),n),kU=class extends _e{constructor(e){super(e)}load(e,t,n,r){let i=new F(this.manager);i.setPath(this.path),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials),i.load(e,e=>{if(typeof e!=`string`)throw Error(`unsupported data type`);let n=JSON.parse(e),r=this.parse(n);t&&t(r)},n,r)}loadAsync(e,t){return super.loadAsync(e,t)}parse(e){return new AU(e)}},AU=class{constructor(e){OU(this,`data`),this.data=e}generateShapes(e,t=100,n){let r=[],i={letterSpacing:0,lineHeight:1,...n},a=jU(e,t,this.data,i);for(let e=0,t=a.length;e(a=c.indexOf(n))&&o=e.byteLength||!(l=r(e)))&&t(1,`no header found`),(u=l.match(n))||t(3,`bad initial token`),c.valid|=1,c.programtype=u[1],c.string+=l+` -`;l=r(e),l!==!1;){if(c.string+=l+` -`,l.charAt(0)===`#`){c.comments+=l+` -`;continue}if((u=l.match(i))&&(c.gamma=parseFloat(u[1])),(u=l.match(a))&&(c.exposure=parseFloat(u[1])),(u=l.match(o))&&(c.valid|=2,c.format=u[1]),(u=l.match(s))&&(c.valid|=4,c.height=parseInt(u[1],10),c.width=parseInt(u[2],10)),c.valid&2&&c.valid&4)break}return c.valid&2||t(3,`missing format specifier`),c.valid&4||t(3,`missing image size specifier`),c},a=function(e,n,r){let i=n;if(i<8||i>32767||e[0]!==2||e[1]!==2||e[2]&128)return new Uint8Array(e);i!==(e[2]<<8|e[3])&&t(3,`wrong scanline width`);let a=new Uint8Array(4*n*r);a.length||t(4,`unable to allocate buffer space`);let o=0,s=0,c=4*i,l=new Uint8Array(4),u=new Uint8Array(c),d=r;for(;d>0&&se.byteLength&&t(1),l[0]=e[s++],l[1]=e[s++],l[2]=e[s++],l[3]=e[s++],(l[0]!=2||l[1]!=2||(l[2]<<8|l[3])!=i)&&t(3,`bad rgbe scanline format`);let n=0,r;for(;n128;if(i&&(r-=128),(r===0||n+r>c)&&t(3,`bad scanline data`),i){let t=e[s++];for(let e=0;e0?F.copy(k[k.length-1]):F.identity())}function r(e){let t=new rt,n=new yt,r=new yt,i=new yt,o=!0,s=!1,c=e.getAttribute(`d`);if(c===``||c===`none`)return null;let l=c.match(/[a-df-z][^a-df-z]*/gi);for(let e=0,c=l.length;e0&&(n.copy(i),t.currentPath.currentPoint.copy(n),o=!0);break;default:console.warn(c)}s=!1}return t}function i(e){if(!(!e.sheet||!e.sheet.cssRules||!e.sheet.cssRules.length))for(let t=0;te.trim());for(let e=0;ee!==``));O[r[e]]=Object.assign(O[r[e]]||{},t)}}}function a(e,t,n,r,i,a,s,c){if(t==0||n==0){e.lineTo(c.x,c.y);return}r=r*Math.PI/180,t=Math.abs(t),n=Math.abs(n);let l=(s.x-c.x)/2,u=(s.y-c.y)/2,d=Math.cos(r)*l+Math.sin(r)*u,f=-Math.sin(r)*l+Math.cos(r)*u,p=t*t,m=n*n,h=d*d,g=f*f,_=h/p+g/m;if(_>1){let e=Math.sqrt(_);t=e*t,n=e*n,p=t*t,m=n*n}let v=p*g+m*h,y=(p*m-v)/v,b=Math.sqrt(Math.max(0,y));i===a&&(b=-b);let x=b*t*f/n,S=-b*n*d/t,C=Math.cos(r)*x-Math.sin(r)*S+(s.x+c.x)/2,w=Math.sin(r)*x+Math.cos(r)*S+(s.y+c.y)/2,T=o(1,0,(d-x)/t,(f-S)/n),E=o((d-x)/t,(f-S)/n,(-d-x)/t,(-f-S)/n)%(Math.PI*2);e.currentPath.absellipse(C,w,t,n,T,T+E,a===0,r)}function o(e,t,n,r){let i=e*n+t*r,a=Math.sqrt(e*e+t*t)*Math.sqrt(n*n+r*r),o=Math.acos(Math.max(-1,Math.min(1,i/a)));return e*r-t*n<0&&(o=-o),o}function s(e){let t=v(e.getAttribute(`x`)||0),n=v(e.getAttribute(`y`)||0),r=v(e.getAttribute(`rx`)||e.getAttribute(`ry`)||0),i=v(e.getAttribute(`ry`)||e.getAttribute(`rx`)||0),a=v(e.getAttribute(`width`)),o=v(e.getAttribute(`height`)),s=.448084975506,c=new rt;return c.moveTo(t+r,n),c.lineTo(t+a-r,n),(r!==0||i!==0)&&c.bezierCurveTo(t+a-r*s,n,t+a,n+i*s,t+a,n+i),c.lineTo(t+a,n+o-i),(r!==0||i!==0)&&c.bezierCurveTo(t+a,n+o-i*s,t+a-r*s,n+o,t+a-r,n+o),c.lineTo(t+r,n+o),(r!==0||i!==0)&&c.bezierCurveTo(t+r*s,n+o,t,n+o-i*s,t,n+o-i),c.lineTo(t,n+i),(r!==0||i!==0)&&c.bezierCurveTo(t,n+i*s,t+r*s,n,t+r,n),c}function c(e){function t(e,t,n){let a=v(t),o=v(n);i===0?r.moveTo(a,o):r.lineTo(a,o),i++}let n=/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,r=new rt,i=0;return e.getAttribute(`points`).replace(n,t),r.currentPath.autoClose=!0,r}function l(e){function t(e,t,n){let a=v(t),o=v(n);i===0?r.moveTo(a,o):r.lineTo(a,o),i++}let n=/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,r=new rt,i=0;return e.getAttribute(`points`).replace(n,t),r.currentPath.autoClose=!1,r}function u(e){let t=v(e.getAttribute(`cx`)||0),n=v(e.getAttribute(`cy`)||0),r=v(e.getAttribute(`r`)||0),i=new Ie;i.absarc(t,n,r,0,Math.PI*2);let a=new rt;return a.subPaths.push(i),a}function d(e){let t=v(e.getAttribute(`cx`)||0),n=v(e.getAttribute(`cy`)||0),r=v(e.getAttribute(`rx`)||0),i=v(e.getAttribute(`ry`)||0),a=new Ie;a.absellipse(t,n,r,i,0,Math.PI*2);let o=new rt;return o.subPaths.push(a),o}function f(e){let t=v(e.getAttribute(`x1`)||0),n=v(e.getAttribute(`y1`)||0),r=v(e.getAttribute(`x2`)||0),i=v(e.getAttribute(`y2`)||0),a=new rt;return a.moveTo(t,n),a.lineTo(r,i),a.currentPath.autoClose=!1,a}function p(e,t){t=Object.assign({},t);let n={};if(e.hasAttribute(`class`)){let t=e.getAttribute(`class`).split(/\s/).filter(Boolean).map(e=>e.trim());for(let e=0;e0&&t.premultiply(k[k.length-1]),F.copy(t),k.push(t),t}function b(e){let t=new xe,n=A;if(e.nodeName===`use`&&(e.hasAttribute(`x`)||e.hasAttribute(`y`))){let n=v(e.getAttribute(`x`)),r=v(e.getAttribute(`y`));t.translate(n,r)}if(e.hasAttribute(`transform`)){let r=e.getAttribute(`transform`).split(`)`);for(let e=r.length-1;e>=0;e--){let i=r[e].trim();if(i===``)continue;let a=i.indexOf(`(`),o=i.length;if(a>0&&a=1){let e=t[0],r=0;t.length>=2&&(r=t[1]),n.translate(e,r)}break;case`rotate`:if(t.length>=1){let e=0,r=0,i=0;e=t[0]*Math.PI/180,t.length>=3&&(r=t[1],i=t[2]),j.makeTranslation(-r,-i),M.makeRotation(e),N.multiplyMatrices(M,j),j.makeTranslation(r,i),n.multiplyMatrices(j,N)}break;case`scale`:if(t.length>=1){let e=t[0],r=e;t.length>=2&&(r=t[1]),n.scale(e,r)}break;case`skewX`:t.length===1&&n.set(1,Math.tan(t[0]*Math.PI/180),0,0,1,0,0,0,1);break;case`skewY`:t.length===1&&n.set(1,0,0,Math.tan(t[0]*Math.PI/180),1,0,0,0,1);break;case`matrix`:t.length===6&&n.set(t[0],t[2],t[4],t[1],t[3],t[5],0,0,1);break}}t.premultiply(n)}}return t}function x(e,t){function n(e){P.set(e.x,e.y,1).applyMatrix3(t),e.set(P.x,P.y)}function r(e){let n=e.xRadius,r=e.yRadius,i=Math.cos(e.aRotation),a=Math.sin(e.aRotation),o=new B(n*i,n*a,0),s=new B(-r*a,r*i,0),c=o.applyMatrix3(t),l=s.applyMatrix3(t),u=A.set(c.x,l.x,0,c.y,l.y,0,0,0,1),d=j.copy(u).invert(),f=M.copy(d).transpose().multiply(d).elements,p=E(f[0],f[1],f[4]),m=Math.sqrt(p.rt1),h=Math.sqrt(p.rt2);if(e.xRadius=1/m,e.yRadius=1/h,e.aRotation=Math.atan2(p.sn,p.cs),!((e.aEndAngle-e.aStartAngle)%(2*Math.PI)<2**-52)){let n=j.set(m,0,0,0,h,0,0,0,1),r=M.set(p.cs,p.sn,0,-p.sn,p.cs,0,0,0,1),i=n.multiply(r).multiply(u),a=e=>{let{x:t,y:n}=new B(Math.cos(e),Math.sin(e),0).applyMatrix3(i);return Math.atan2(n,t)};e.aStartAngle=a(e.aStartAngle),e.aEndAngle=a(e.aEndAngle),S(t)&&(e.aClockwise=!e.aClockwise)}}function i(e){let n=w(t),r=T(t);e.xRadius*=n,e.yRadius*=r;let i=n>2**-52?Math.atan2(t.elements[1],t.elements[0]):Math.atan2(-t.elements[3],t.elements[4]);e.aRotation+=i,S(t)&&(e.aStartAngle*=-1,e.aEndAngle*=-1,e.aClockwise=!e.aClockwise)}let a=e.subPaths;for(let e=0,o=a.length;e2**-52}function w(e){let t=e.elements;return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function T(e){let t=e.elements;return Math.sqrt(t[3]*t[3]+t[4]*t[4])}function E(e,t,n){let r,i,a,o,s,c=e+n,l=e-n,u=Math.sqrt(l*l+4*t*t);return c>0?(r=.5*(c+u),s=1/r,i=e*s*n-t*s*t):c<0?i=.5*(c-u):(r=.5*u,i=-.5*u),a=l>0?l+u:l-u,Math.abs(a)>2*Math.abs(t)?(s=-2*t/a,o=1/Math.sqrt(1+s*s),a=s*o):Math.abs(t)===0?(a=1,o=0):(s=-.5*a/t,a=1/Math.sqrt(1+s*s),o=s*a),l>0&&(s=a,a=-o,o=s),{rt1:r,rt2:i,cs:a,sn:o}}let D=[],O={},k=[],A=new xe,j=new xe,M=new xe,N=new xe,ee=new yt,P=new B,F=new xe,I=new DOMParser().parseFromString(e,`image/svg+xml`);return n(I.documentElement,{fill:`#000`,fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeLineJoin:`miter`,strokeLineCap:`butt`,strokeMiterLimit:4}),{paths:D,xml:I.documentElement}}static createShapes(e){let t={ORIGIN:0,DESTINATION:1,BETWEEN:2,LEFT:3,RIGHT:4,BEHIND:5,BEYOND:6},n={loc:t.ORIGIN,t:0};function r(e,r,a,o){let s=e.x,c=r.x,l=a.x,u=o.x,d=e.y,f=r.y,p=a.y,m=o.y,h=(u-l)*(d-p)-(m-p)*(s-l),g=(c-s)*(d-p)-(f-d)*(s-l),_=(m-p)*(c-s)-(u-l)*(f-d),v=h/_,y=g/_;if(_===0&&h!==0||v<=0||v>=1||y<0||y>1)return null;if(h===0&&_===0){for(let l=0;l<2;l++)if(i(l===0?a:o,e,r),n.loc==t.ORIGIN){let e=l===0?a:o;return{x:e.x,y:e.y,t:n.t}}else if(n.loc==t.BETWEEN){let e=+(s+n.t*(c-s)).toPrecision(10),t=+(d+n.t*(f-d)).toPrecision(10);return{x:e,y:t,t:n.t}}return null}else{for(let s=0;s<2;s++)if(i(s===0?a:o,e,r),n.loc==t.ORIGIN){let e=s===0?a:o;return{x:e.x,y:e.y,t:n.t}}let l=+(s+v*(c-s)).toPrecision(10),u=+(d+v*(f-d)).toPrecision(10);return{x:l,y:u,t:v}}}function i(e,r,i){let a=i.x-r.x,o=i.y-r.y,s=e.x-r.x,c=e.y-r.y,l=a*c-s*o;if(e.x===r.x&&e.y===r.y){n.loc=t.ORIGIN,n.t=0;return}if(e.x===i.x&&e.y===i.y){n.loc=t.DESTINATION,n.t=1;return}if(l<-(2**-52)){n.loc=t.LEFT;return}if(l>2**-52){n.loc=t.RIGHT;return}if(a*s<0||o*c<0){n.loc=t.BEHIND;return}if(Math.sqrt(a*a+o*o)e.t<=l.t+2**-52&&e.t>=l.t-2**-52)===void 0&&(n.push(l),i.push(new yt(l.x,l.y)))}}return i}function o(e,t,n){let r=new yt;t.getCenter(r);let i=[];return n.forEach(t=>{t.boundingBox.containsPoint(r)&&a(e,t.points).forEach(e=>{i.push({identifier:t.identifier,isCW:t.isCW,point:e})})}),i.sort((e,t)=>e.point.x-t.point.x),i}function s(e,t,n,r,i){(i==null||i===``)&&(i=`nonzero`);let a=new yt;e.boundingBox.getCenter(a);let s=[new yt(n,a.y),new yt(r,a.y)],c=o(s,e.boundingBox,t);c.sort((e,t)=>e.point.x-t.point.x);let l=[],u=[];c.forEach(t=>{t.identifier===e.identifier?l.push(t):u.push(t)});let d=l[0].point.x,f=[],p=0;for(;p0&&f[f.length-1]===u[p].identifier?f.pop():f.push(u[p].identifier),p++;if(f.push(e.identifier),i===`evenodd`){let t=f.length%2==0,n=f[f.length-2];return{identifier:e.identifier,isHole:t,for:n}}else if(i===`nonzero`){let n=!0,r=null,i=null;for(let e=0;e{let t=e.getPoints(),n=-999999999,r=999999999,i=-999999999,a=999999999;for(let e=0;en&&(n=o.y),o.yi&&(i=o.x),o.x=a&&(l=a-1),{curves:e.curves,points:t,isCW:it.isClockWise(t),identifier:-1,boundingBox:new c(new yt(a,r),new yt(i,n))}});d=d.filter(e=>e.points.length>1);for(let e=0;es(t,d,l,u,e.userData?e.userData.style.fillRule:void 0)),p=[];return d.forEach(e=>{if(!f[e.identifier].isHole){let t=new tt;t.curves=e.curves,f.filter(t=>t.isHole&&t.for===e.identifier).forEach(e=>{let n=d[e.identifier],r=new Ie;r.curves=n.curves,t.holes.push(r)}),p.push(t)}}),p}static getStrokeStyle(e,t,n,r,i){return e=e===void 0?1:e,t=t===void 0?`#000`:t,n=n===void 0?`miter`:n,r=r===void 0?`butt`:r,i=i===void 0?4:i,{strokeColor:t,strokeWidth:e,strokeLineJoin:n,strokeLineCap:r,strokeMiterLimit:i}}static pointsToStroke(t,n,r,i){let a=[],o=[],s=[];if(e.pointsToStrokeWithBuffers(t,n,r,i,a,o,s)===0)return null;let c=new f;return c.setAttribute(`position`,new I(a,3)),c.setAttribute(`normal`,new I(o,3)),c.setAttribute(`uv`,new I(s,2)),c}static pointsToStrokeWithBuffers(e,t,n,r,i,a,o,s){let c=new yt,l=new yt,u=new yt,d=new yt,f=new yt,p=new yt,m=new yt,h=new yt,g=new yt,_=new yt,v=new yt,y=new yt,b=new yt,x=new yt,S=new yt,C=new yt,w=new yt;n=n===void 0?12:n,r=r===void 0?.001:r,s=s===void 0?0:s,e=ce(e);let T=e.length;if(T<2)return 0;let E=e[0].equals(e[T-1]),D,O=e[0],k,A=t.strokeWidth/2,j=1/(T-1),M=0,N,ee,P,F,I=!1,te=0,L=s*3,R=s*2;ne(e[0],e[1],c).multiplyScalar(A),h.copy(e[0]).sub(c),g.copy(e[0]).add(c),_.copy(h),v.copy(g);for(let n=1;n2**-52){let n=A/e;u.multiplyScalar(-n),d.subVectors(D,O),f.copy(d).setLength(n).add(u),C.copy(f).negate();let r=f.length(),i=d.length();d.divideScalar(i),p.subVectors(k,D);let a=p.length();switch(p.divideScalar(a),d.dot(C)=r&&n.push(e[t]);return n.push(e[e.length-1]),n}}};const IU=new l,LU=new B;var RU=class extends re{constructor(){super(),this.isLineSegmentsGeometry=!0,this.type=`LineSegmentsGeometry`;let e=[-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],t=[-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],n=[0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5];this.setIndex(n),this.setAttribute(`position`,new I(e,3)),this.setAttribute(`uv`,new I(t,2))}applyMatrix4(e){let t=this.attributes.instanceStart,n=this.attributes.instanceEnd;return t!==void 0&&(t.applyMatrix4(e),n.applyMatrix4(e),t.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}setPositions(e){let t;e instanceof Float32Array?t=e:Array.isArray(e)&&(t=new Float32Array(e));let n=new ie(t,6,1);return this.setAttribute(`instanceStart`,new se(n,3,0)),this.setAttribute(`instanceEnd`,new se(n,3,3)),this.computeBoundingBox(),this.computeBoundingSphere(),this}setColors(e,t=3){let n;e instanceof Float32Array?n=e:Array.isArray(e)&&(n=new Float32Array(e));let r=new ie(n,t*2,1);return this.setAttribute(`instanceColorStart`,new se(r,t,0)),this.setAttribute(`instanceColorEnd`,new se(r,t,t)),this}fromWireframeGeometry(e){return this.setPositions(e.attributes.position.array),this}fromEdgesGeometry(e){return this.setPositions(e.attributes.position.array),this}fromMesh(e){return this.fromWireframeGeometry(new Tt(e.geometry)),this}fromLineSegments(e){let t=e.geometry;return this.setPositions(t.attributes.position.array),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new l);let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;e!==void 0&&t!==void 0&&(this.boundingBox.setFromBufferAttribute(e),IU.setFromBufferAttribute(t),this.boundingBox.union(IU))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new ot),this.boundingBox===null&&this.computeBoundingBox();let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;if(e!==void 0&&t!==void 0){let n=this.boundingSphere.center;this.boundingBox.getCenter(n);let r=0;for(let i=0,a=e.count;i - #include - #include - #include - - uniform float linewidth; - uniform vec2 resolution; - - attribute vec3 instanceStart; - attribute vec3 instanceEnd; - - #ifdef USE_COLOR - #ifdef USE_LINE_COLOR_ALPHA - varying vec4 vLineColor; - attribute vec4 instanceColorStart; - attribute vec4 instanceColorEnd; - #else - varying vec3 vLineColor; - attribute vec3 instanceColorStart; - attribute vec3 instanceColorEnd; - #endif - #endif - - #ifdef WORLD_UNITS - - varying vec4 worldPos; - varying vec3 worldStart; - varying vec3 worldEnd; - - #ifdef USE_DASH - - varying vec2 vUv; - - #endif - - #else - - varying vec2 vUv; - - #endif - - #ifdef USE_DASH - - uniform float dashScale; - attribute float instanceDistanceStart; - attribute float instanceDistanceEnd; - varying float vLineDistance; - - #endif - - void trimSegment( const in vec4 start, inout vec4 end ) { - - // trim end segment so it terminates between the camera plane and the near plane - - // conservative estimate of the near plane - float a = projectionMatrix[ 2 ][ 2 ]; // 3nd entry in 3th column - float b = projectionMatrix[ 3 ][ 2 ]; // 3nd entry in 4th column - float nearEstimate = - 0.5 * b / a; - - float alpha = ( nearEstimate - start.z ) / ( end.z - start.z ); - - end.xyz = mix( start.xyz, end.xyz, alpha ); - - } - - void main() { - - #ifdef USE_COLOR - - vLineColor = ( position.y < 0.5 ) ? instanceColorStart : instanceColorEnd; - - #endif - - #ifdef USE_DASH - - vLineDistance = ( position.y < 0.5 ) ? dashScale * instanceDistanceStart : dashScale * instanceDistanceEnd; - vUv = uv; - - #endif - - float aspect = resolution.x / resolution.y; - - // camera space - vec4 start = modelViewMatrix * vec4( instanceStart, 1.0 ); - vec4 end = modelViewMatrix * vec4( instanceEnd, 1.0 ); - - #ifdef WORLD_UNITS - - worldStart = start.xyz; - worldEnd = end.xyz; - - #else - - vUv = uv; - - #endif - - // special case for perspective projection, and segments that terminate either in, or behind, the camera plane - // clearly the gpu firmware has a way of addressing this issue when projecting into ndc space - // but we need to perform ndc-space calculations in the shader, so we must address this issue directly - // perhaps there is a more elegant solution -- WestLangley - - bool perspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 ); // 4th entry in the 3rd column - - if ( perspective ) { - - if ( start.z < 0.0 && end.z >= 0.0 ) { - - trimSegment( start, end ); - - } else if ( end.z < 0.0 && start.z >= 0.0 ) { - - trimSegment( end, start ); - - } - - } - - // clip space - vec4 clipStart = projectionMatrix * start; - vec4 clipEnd = projectionMatrix * end; - - // ndc space - vec3 ndcStart = clipStart.xyz / clipStart.w; - vec3 ndcEnd = clipEnd.xyz / clipEnd.w; - - // direction - vec2 dir = ndcEnd.xy - ndcStart.xy; - - // account for clip-space aspect ratio - dir.x *= aspect; - dir = normalize( dir ); - - #ifdef WORLD_UNITS - - // get the offset direction as perpendicular to the view vector - vec3 worldDir = normalize( end.xyz - start.xyz ); - vec3 offset; - if ( position.y < 0.5 ) { - - offset = normalize( cross( start.xyz, worldDir ) ); - - } else { - - offset = normalize( cross( end.xyz, worldDir ) ); - - } - - // sign flip - if ( position.x < 0.0 ) offset *= - 1.0; - - float forwardOffset = dot( worldDir, vec3( 0.0, 0.0, 1.0 ) ); - - // don't extend the line if we're rendering dashes because we - // won't be rendering the endcaps - #ifndef USE_DASH - - // extend the line bounds to encompass endcaps - start.xyz += - worldDir * linewidth * 0.5; - end.xyz += worldDir * linewidth * 0.5; - - // shift the position of the quad so it hugs the forward edge of the line - offset.xy -= dir * forwardOffset; - offset.z += 0.5; - - #endif - - // endcaps - if ( position.y > 1.0 || position.y < 0.0 ) { - - offset.xy += dir * 2.0 * forwardOffset; - - } - - // adjust for linewidth - offset *= linewidth * 0.5; - - // set the world position - worldPos = ( position.y < 0.5 ) ? start : end; - worldPos.xyz += offset; - - // project the worldpos - vec4 clip = projectionMatrix * worldPos; - - // shift the depth of the projected points so the line - // segments overlap neatly - vec3 clipPose = ( position.y < 0.5 ) ? ndcStart : ndcEnd; - clip.z = clipPose.z * clip.w; - - #else - - vec2 offset = vec2( dir.y, - dir.x ); - // undo aspect ratio adjustment - dir.x /= aspect; - offset.x /= aspect; - - // sign flip - if ( position.x < 0.0 ) offset *= - 1.0; - - // endcaps - if ( position.y < 0.0 ) { - - offset += - dir; - - } else if ( position.y > 1.0 ) { - - offset += dir; - - } - - // adjust for linewidth - offset *= linewidth; - - // adjust for clip-space to screen-space conversion // maybe resolution should be based on viewport ... - offset /= resolution.y; - - // select end - vec4 clip = ( position.y < 0.5 ) ? clipStart : clipEnd; - - // back to clip space - offset *= clip.w; - - clip.xy += offset; - - #endif - - gl_Position = clip; - - vec4 mvPosition = ( position.y < 0.5 ) ? start : end; // this is an approximation - - #include - #include - #include - - } - `,fragmentShader:` - uniform vec3 diffuse; - uniform float opacity; - uniform float linewidth; - - #ifdef USE_DASH - - uniform float dashOffset; - uniform float dashSize; - uniform float gapSize; - - #endif - - varying float vLineDistance; - - #ifdef WORLD_UNITS - - varying vec4 worldPos; - varying vec3 worldStart; - varying vec3 worldEnd; - - #ifdef USE_DASH - - varying vec2 vUv; - - #endif - - #else - - varying vec2 vUv; - - #endif - - #include - #include - #include - #include - - #ifdef USE_COLOR - #ifdef USE_LINE_COLOR_ALPHA - varying vec4 vLineColor; - #else - varying vec3 vLineColor; - #endif - #endif - - vec2 closestLineToLine(vec3 p1, vec3 p2, vec3 p3, vec3 p4) { - - float mua; - float mub; - - vec3 p13 = p1 - p3; - vec3 p43 = p4 - p3; - - vec3 p21 = p2 - p1; - - float d1343 = dot( p13, p43 ); - float d4321 = dot( p43, p21 ); - float d1321 = dot( p13, p21 ); - float d4343 = dot( p43, p43 ); - float d2121 = dot( p21, p21 ); - - float denom = d2121 * d4343 - d4321 * d4321; - - float numer = d1343 * d4321 - d1321 * d4343; - - mua = numer / denom; - mua = clamp( mua, 0.0, 1.0 ); - mub = ( d1343 + d4321 * ( mua ) ) / d4343; - mub = clamp( mub, 0.0, 1.0 ); - - return vec2( mua, mub ); - - } - - void main() { - - #include - - #ifdef USE_DASH - - if ( vUv.y < - 1.0 || vUv.y > 1.0 ) discard; // discard endcaps - - if ( mod( vLineDistance + dashOffset, dashSize + gapSize ) > dashSize ) discard; // todo - FIX - - #endif - - float alpha = opacity; - - #ifdef WORLD_UNITS - - // Find the closest points on the view ray and the line segment - vec3 rayEnd = normalize( worldPos.xyz ) * 1e5; - vec3 lineDir = worldEnd - worldStart; - vec2 params = closestLineToLine( worldStart, worldEnd, vec3( 0.0, 0.0, 0.0 ), rayEnd ); - - vec3 p1 = worldStart + lineDir * params.x; - vec3 p2 = rayEnd * params.y; - vec3 delta = p1 - p2; - float len = length( delta ); - float norm = len / linewidth; - - #ifndef USE_DASH - - #ifdef USE_ALPHA_TO_COVERAGE - - float dnorm = fwidth( norm ); - alpha = 1.0 - smoothstep( 0.5 - dnorm, 0.5 + dnorm, norm ); - - #else - - if ( norm > 0.5 ) { - - discard; - - } - - #endif - - #endif - - #else - - #ifdef USE_ALPHA_TO_COVERAGE - - // artifacts appear on some hardware if a derivative is taken within a conditional - float a = vUv.x; - float b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0; - float len2 = a * a + b * b; - float dlen = fwidth( len2 ); - - if ( abs( vUv.y ) > 1.0 ) { - - alpha = 1.0 - smoothstep( 1.0 - dlen, 1.0 + dlen, len2 ); - - } - - #else - - if ( abs( vUv.y ) > 1.0 ) { - - float a = vUv.x; - float b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0; - float len2 = a * a + b * b; - - if ( len2 > 1.0 ) discard; - - } - - #endif - - #endif - - vec4 diffuseColor = vec4( diffuse, alpha ); - #ifdef USE_COLOR - #ifdef USE_LINE_COLOR_ALPHA - diffuseColor *= vLineColor; - #else - diffuseColor.rgb *= vLineColor; - #endif - #endif - - #include - - gl_FragColor = diffuseColor; - - #include - #include <${parseInt(We.replace(/\D+/g,``))>=154?`colorspace_fragment`:`encodings_fragment`}> - #include - #include - - } - `,clipping:!0}),this.isLineMaterial=!0,this.onBeforeCompile=function(){this.transparent?this.defines.USE_LINE_COLOR_ALPHA=`1`:delete this.defines.USE_LINE_COLOR_ALPHA},Object.defineProperties(this,{color:{enumerable:!0,get:function(){return this.uniforms.diffuse.value},set:function(e){this.uniforms.diffuse.value=e}},worldUnits:{enumerable:!0,get:function(){return`WORLD_UNITS`in this.defines},set:function(e){e===!0?this.defines.WORLD_UNITS=``:delete this.defines.WORLD_UNITS}},linewidth:{enumerable:!0,get:function(){return this.uniforms.linewidth.value},set:function(e){this.uniforms.linewidth.value=e}},dashed:{enumerable:!0,get:function(){return`USE_DASH`in this.defines},set(e){!!e!=`USE_DASH`in this.defines&&(this.needsUpdate=!0),e===!0?this.defines.USE_DASH=``:delete this.defines.USE_DASH}},dashScale:{enumerable:!0,get:function(){return this.uniforms.dashScale.value},set:function(e){this.uniforms.dashScale.value=e}},dashSize:{enumerable:!0,get:function(){return this.uniforms.dashSize.value},set:function(e){this.uniforms.dashSize.value=e}},dashOffset:{enumerable:!0,get:function(){return this.uniforms.dashOffset.value},set:function(e){this.uniforms.dashOffset.value=e}},gapSize:{enumerable:!0,get:function(){return this.uniforms.gapSize.value},set:function(e){this.uniforms.gapSize.value=e}},opacity:{enumerable:!0,get:function(){return this.uniforms.opacity.value},set:function(e){this.uniforms.opacity.value=e}},resolution:{enumerable:!0,get:function(){return this.uniforms.resolution.value},set:function(e){this.uniforms.resolution.value.copy(e)}},alphaToCoverage:{enumerable:!0,get:function(){return`USE_ALPHA_TO_COVERAGE`in this.defines},set:function(e){!!e!=`USE_ALPHA_TO_COVERAGE`in this.defines&&(this.needsUpdate=!0),e===!0?(this.defines.USE_ALPHA_TO_COVERAGE=``,this.extensions.derivatives=!0):(delete this.defines.USE_ALPHA_TO_COVERAGE,this.extensions.derivatives=!1)}}}),this.setValues(e)}};const VU=new bt,HU=new B,UU=new B,WU=new bt,GU=new bt,KU=new bt,qU=new B,JU=new Se,YU=new fe,XU=new B,ZU=new l,QU=new ot,$U=new bt;let eW,tW;function nW(e,t,n){return $U.set(0,0,-t,1).applyMatrix4(e.projectionMatrix),$U.multiplyScalar(1/$U.w),$U.x=tW/n.width,$U.y=tW/n.height,$U.applyMatrix4(e.projectionMatrixInverse),$U.multiplyScalar(1/$U.w),Math.abs(Math.max($U.x,$U.y))}function rW(e,t){let n=e.matrixWorld,r=e.geometry,i=r.attributes.instanceStart,a=r.attributes.instanceEnd,o=Math.min(r.instanceCount,i.count);for(let r=0,s=o;ru&&GU.z>u)continue;if(WU.z>u){let e=WU.z-GU.z,t=(WU.z-u)/e;WU.lerp(GU,t)}else if(GU.z>u){let e=GU.z-WU.z,t=(GU.z-u)/e;GU.lerp(WU,t)}WU.applyMatrix4(r),GU.applyMatrix4(r),WU.multiplyScalar(1/WU.w),GU.multiplyScalar(1/GU.w),WU.x*=i.x/2,WU.y*=i.y/2,GU.x*=i.x/2,GU.y*=i.y/2,YU.start.copy(WU),YU.start.z=0,YU.end.copy(GU),YU.end.z=0;let o=YU.closestPointToPointParameter(qU,!0);YU.at(o,XU);let l=be.lerp(WU.z,GU.z,o),d=l>=-1&&l<=1,f=qU.distanceTo(XU)t)),o=Math.min(e.length,i);return a.slice(0,o).sort().map(t=>e[t])}shuffle(e){return e.map(e=>({value:e,sort:this._getNext()})).sort((e,t)=>e.sort-t.sort).map(({value:e})=>e)}getMulberry32(e=0){return e>0&&e<1&&(e=Math.floor(e*2**16)),()=>{e+=1831565813;let t=e;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}}};const FW=[cW,lW,uW,dW,fW],IW=be.lerp,LW=(e=0,t=jW)=>{let n=new PW(e).choice(FW);return t.map((t,r)=>{let i=new PW(e*(r*7907+1)+(typeof t.seed==`number`?t.seed:0)),a=i.int(t.length[0],t.length[1]);return Array.from({length:a}).fill(0).map(()=>{let e=n(i.rand());return{texture:i.defaultChoice(t.texture,MW.texture),size:IW(t.size[0],t.size[1],n(1-e)),distance:IW(t.distance[0],t.distance[1],e),color:i.defaultChoice(t.color,MW.color)}})}).flat()},RW=(e,t,n=void 0,r=void 0,i=MW)=>{if(e!==void 0&&e.length>0&&(typeof n==`number`||typeof r<`u`)){let a=LW(n??0,r??jW),o=a.length,s=e.length;return o>=s?a.map((n,r)=>Object.assign(n,t,rObject.assign({},i,n0){let n=Object.assign({},i,t);return e.map(e=>Object.assign({},n,e))}let a=r===void 0||r.length===0?jW:r;return LW(n??0,a).map(e=>Object.assign({},e,t))};function zW(e){return BW(e,(e,t)=>t in MW&&e!==void 0)}function BW(e,t){let n={};return Object.keys(e).forEach(r=>{t(e[r],r)&&(n[r]=e[r])}),n}const VW=zt({__name:`component`,props:{scale:{default:1},elements:{default:void 0},seed:{default:void 0},seedProps:{default:void 0},color:{default:void 0},distance:{default:void 0},size:{default:void 0},texture:{default:void 0}},setup(e,{expose:t}){let n=e,r=W(),i=W([]),a=W(zW(n));t({instance:r});let o=new dt,s=new TH,c=[],l=()=>{for(var e,t,n;c.length;)c.pop();(e=r.value)==null||e.children.forEach(e=>{`dispose`in e&&e.dispose()}),(t=r.value)==null||t.remove(...r.value.children),(n=r.value)==null||n.dispose()},u=e=>{if(typeof e.texture==`string`){let t=e.texture;e.texture=o.load(t),e.texture.name=t}return e.color=Oe(e.color),e},d=()=>{for(let e=i.value.length-1;e{c[t].size=e.size*n.scale})},f=()=>{for(;i.value.length>c.length;){let e={...u(i.value[c.length])};c.push(e),s.addElement(e)}i.value.forEach((e,t)=>{let n=c[t],{texture:r,size:i,distance:a,color:s}=e;if(typeof r==`string`){if(n.texture.name!==r){n.texture.dispose();let e=r;n.texture=o.load(e),n.texture.name=e}}else n.texture!==r&&(n.texture.dispose(),n.texture=r);n.size=i,n.distance=a,n.color=Oe(s)}),d()};return sn(()=>{l()}),an(()=>{var e;(e=r.value)==null||e.add(s),i.value=RW(n.elements,a.value,n.seed,n.seedProps)}),K(()=>[n.color,n.distance,n.size,n.texture],()=>{a.value={color:n.color,distance:n.distance,size:n.size,texture:n.texture}}),K(()=>[a.value,n.elements,n.seed,n.seedProps],()=>{i.value=RW(n.elements,a.value,n.seed,n.seedProps)}),K(()=>n.scale,()=>{d()}),K(()=>i.value,()=>{f()}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`lensflareRef`,ref:r},null,512))}}),HW=zt({__name:`Levioso`,props:{speed:{default:1},rotationFactor:{default:1},floatFactor:{default:1},range:{default:()=>[-.1,.1]}},setup(e,{expose:t}){let n=e,r=W();t({instance:r});{let e=Math.random()*1e4,{onBeforeRender:t}=Kt(),i=e;t(({delta:e,invalidate:t})=>{if(!r.value)return;i+=e*n.speed;let a=i*.25,o=r.value;o.rotation.x=Math.cos(a)*.125*n.rotationFactor,o.rotation.y=Math.sin(a)*.125*n.rotationFactor,o.rotation.z=Math.sin(a)*.05*n.rotationFactor,o.position.y=be.mapLinear(Math.sin(a),-1,1,n.range[0],n.range[1])*n.floatFactor,t()})}return(e,t)=>(H(),Lt(`TresGroup`,$t(e.$attrs,{ref_key:`groupRef`,ref:r}),[mn(e.$slots,`default`)],16))}}),UW=[`render-order`],WW=zt({__name:`component`,props:{id:{default:1},colorWrite:{type:Boolean,default:!0},depthWrite:{type:Boolean,default:!1}},setup(e,{expose:t}){let r=e,i=W();function a(){var e,t;let a=Array.isArray((e=i.value)?.material)?i.value.material[0]:(t=i.value)?.material;a&&(a.colorWrite=r.colorWrite,a.depthWrite=r.depthWrite,a.stencilWrite=!0,a.stencilRef=r.id,a.stencilFunc=n,a.stencilFail=Xe,a.stencilZFail=Xe,a.stencilZPass=Xe)}return Wn(a),t({instance:i}),(e,t)=>(H(),Lt(`TresMesh`,{ref_key:`meshRef`,ref:i,"render-order":-r.id},[mn(e.$slots,`default`)],8,UW))}}),GW=zt({__name:`MouseParallax`,props:{disabled:{type:Boolean,default:!1},factor:{default:2.5},ease:{default:.1},local:{type:Boolean,default:!1}},setup(e){let t=e,{camera:n,renderer:r}=cn(),{disabled:i,factor:a,ease:o,local:s}=xn(t),c={};s.value&&(c.target=r.value.domElement,c.type=`client`);let{x:l,y:u}=AB(c),{width:d,height:f}=s.value?wB(r.value.domElement):MB(),p=W(),m=U(),h=U();K([a,o],()=>{m.value=Array.isArray(a.value)?a.value:[a.value,a.value],h.value=Array.isArray(o.value)?o.value:[o.value,o.value]},{immediate:!0});let g=Pt(()=>(l.value/d.value-.5)*m.value[0]),_=Pt(()=>-(u.value/f.value-.5)*m.value[1]),{onBeforeRender:v}=Kt();return v(({delta:e,invalidate:t})=>{i.value||!p.value||Number.isNaN(g.value)||Number.isNaN(_.value)||(p.value.position.x+=(g.value-p.value.position.x)*h.value[0]*e,p.value.position.y+=(_.value-p.value.position.y)*h.value[1]*e,t())}),K(()=>p.value,e=>e?.add(n.value)),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`cameraGroupRef`,ref:p},null,512))}}),KW=BB({screenspace:!1,color:new g(`black`),opacity:1,thickness:.05,size:new yt(1,1)},`#include - #include - #include - uniform float thickness; - uniform bool screenspace; - uniform vec2 size; - void main() { - #if defined (USE_SKINNING) - #include - #include - #include - #include - #include - #endif - #include - #include - #include - #include - vec4 tNormal = vec4(normal, 0.0); - vec4 tPosition = vec4(transformed, 1.0); - #ifdef USE_INSTANCING - tNormal = instanceMatrix * tNormal; - tPosition = instanceMatrix * tPosition; - #endif - if (screenspace) { - vec3 newPosition = tPosition.xyz + tNormal.xyz * thickness; - gl_Position = projectionMatrix * modelViewMatrix * vec4(newPosition, 1.0); - } else { - vec4 clipPosition = projectionMatrix * modelViewMatrix * tPosition; - vec4 clipNormal = projectionMatrix * modelViewMatrix * tNormal; - vec2 offset = normalize(clipNormal.xy) * thickness / size * clipPosition.w * 2.0; - clipPosition.xy += offset; - gl_Position = clipPosition; - } - }`,`uniform vec3 color; - uniform float opacity; - void main(){ - gl_FragColor = vec4(color, opacity); - #include - #include - }`),qW=zt({__name:`component`,props:{color:{default:`black`},screenspace:{type:Boolean,default:!1},opacity:{default:1},transparent:{type:Boolean,default:!1},thickness:{default:.05},angle:{default:Math.PI},toneMapped:{type:Boolean,default:!0},polygonOffset:{type:Boolean,default:!1},polygonOffsetFactor:{default:0},renderOrder:{default:0}},setup(e,{expose:t}){let n=e,r=W();t({instance:r});let i=new KW({...n}),a=new yt(1,1),o=0,c=null;function l(e){var t;let r=e.parent;if(!(!r||!r.geometry)&&(o!==n.angle||c!==r.geometry)){o=n.angle,c=r.geometry;let a=(t=e.children)?.[0];a&&(n.angle&&a.geometry.dispose(),e.remove(a)),r.skeleton?(a=new at,a.material=i,a.bind(r.skeleton,r.bindMatrix),e.add(a)):r.isInstancedMesh?(a=new ae(r.geometry,i,r.count),a.instanceMatrix=r.instanceMatrix,e.add(a)):(a=new Ce,a.material=i,e.add(a)),a.geometry=n.angle?JB(r.geometry,n.angle):r.geometry}}function u(){i.side=s,i.transparent=n.transparent,i.thickness=n.thickness,i.color=Oe(n.color),i.opacity=n.opacity,i.size=a,i.screenspace=n.screenspace,i.toneMapped=n.toneMapped,i.polygonOffset=n.polygonOffset,i.polygonOffsetFactor=n.polygonOffsetFactor}let d=gn().sizes;return K(()=>[d.width.value,d.height.value],([e,t])=>{a.set(e,t)}),K(()=>[n.angle],()=>{r.value&&l(r.value)}),K(()=>[n.transparent,n.thickness,n.color,n.opacity,a,n.screenspace,n.toneMapped,n.polygonOffset,n.polygonOffsetFactor],()=>u(),{immediate:!0}),an(()=>l(r.value)),sn(()=>{var e;let t=(e=r.value)?.children[0];t&&(t.geometry.dispose(),i.dispose(),t.removeFromParent())}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`groupRef`,ref:r},null,512))}}),JW=[`args`],YW=zt({__name:`PositionalAudio`,props:{ready:{type:Boolean,default:!1},url:{},distance:{default:2},helper:{type:Boolean,default:!1},loop:{type:Boolean,default:!1},autoplay:{type:Boolean,default:!1},innerAngle:{default:360},outerAngle:{default:360},outerGain:{default:0}},emits:[`isPlaying`],async setup(e,{expose:t,emit:n}){let r,i,s=e,c=n,{ready:u,url:d,distance:f,helper:p,loop:m,autoplay:h,innerAngle:g,outerAngle:_,outerGain:v}=xn(s),{camera:y}=cn(),b=W(null),x=W(null),S=W(null),C=hn(new a),w=()=>{var e,t,n;(e=b?.value)!=null&&e.isPlaying||((t=b?.value)==null||t.play(),c(`isPlaying`,(n=b?.value)?.isPlaying))},T=()=>{var e,t;(e=b?.value)!=null&&e.isPlaying&&(b.value.pause(),c(`isPlaying`,(t=b?.value)?.isPlaying))},E=()=>{var e;b.value&&(b.value.stop(),c(`isPlaying`,(e=b?.value)?.isPlaying))},D=()=>{if(!(b!=null&&b.value))return;E();let e=b.value;e.source&&e.disconnect()},O=()=>{var e,t;!(b!=null&&b.value)||!(x!=null&&x.value)||((e=x?.value)==null||e.dispose(),(t=b?.value)==null||t.remove(x?.value))},k=()=>{var e;if(b.value&&(b.value.setBuffer(S.value),b.value.setRefDistance(f.value),b.value.setLoop(m.value),b.value.setDirectionalCone(g.value,_.value,v.value),(e=x?.value)==null||e.update(),x!=null&&x.value)){let e=x.value.material[0];!e.visible&&_.value!==g.value&&(e.visible=!0)}},A=()=>{var e,t;k();let n=(e=b.value)?.parent,r=new l().setFromObject(n),i=(r.max.z-r.min.z)*2;x.value=new sW(b.value,i,32,16),(t=b?.value)==null||t.add(x.value),x.value.update()},j=()=>{var e;(e=y?.value)==null||e.remove(C),D(),O()};return t({instance:b,play:w,stop:E,pause:T,dispose:j}),S.value=([r,i]=Gn(()=>ue(o,d.value)),r=await r,i(),r),K(b,()=>{b!=null&&b.value&&(p.value&&A(),u.value&&h&&w())}),K(p,()=>{p.value?A():O()}),K(u,()=>{u.value&&k(),h.value&&u.value&&w(),!h.value&&u.value&&E()}),K([f,m,S,g,_,v,h],()=>{k()}),an(()=>{var e;(e=y?.value)==null||e.add(C)}),rn(()=>{j()}),(e,t)=>(H(),Lt(`TresPositionalAudio`,$t({ref_key:`positionalAudioRef`,ref:b,args:[G(C)]},e.$attrs),null,16,JW))}}),XW=[`args`,`material-uniforms-color-value`],ZW=zt({__name:`Reflector`,props:{color:{default:`#333`},textureWidth:{default:512},textureHeight:{default:512},clipBias:{default:0},multisample:{default:4},shader:{default:_H.ReflectorShader}},setup(e,{expose:t}){let n=e,{extend:r,invalidate:i}=cn(),a=W();r({Reflector:_H});let{color:o,textureWidth:s,textureHeight:c,clipBias:l,multisample:u,shader:d}=xn(n);return K(n,()=>i()),t({instance:a}),(e,t)=>(H(),Lt(`TresReflector`,{ref_key:`reflectorRef`,ref:a,args:[void 0,{textureWidth:G(s),textureHeight:G(c),clipBias:G(l),multisample:G(u),shader:G(d)}],"material-uniforms-color-value":G(o)},[mn(e.$slots,`default`,{},()=>[t[0]||=V(`TresPlaneGeometry`,{args:[5,5]},null,-1)])],8,XW))}}),QW=[`position-z`],$W=zt({__name:`ScreenSpace`,props:{depth:{default:-1}},setup(e,{expose:t}){let n=W();return Kt().onBeforeRender(({camera:e})=>{n.value&&(n.value.quaternion.copy(e.quaternion),n.value.position.copy(e.position))}),t({instance:n}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`outerRef`,ref:n},[V(`TresGroup`,{"position-z":-e.depth},[mn(e.$slots,`default`)],8,QW)],512))}}),eG=[`args`,`center`],tG=zt({__name:`Text3D`,props:{font:{},text:{},size:{default:.5},height:{default:.2},curveSegments:{default:5},bevelEnabled:{type:Boolean,default:!0},bevelThickness:{default:.05},bevelSize:{default:.02},bevelOffset:{default:0},bevelSegments:{default:4},center:{type:Boolean,default:!1},needUpdates:{type:Boolean,default:!1}},async setup(e,{expose:t}){let n,r,i=e,{center:a,font:o,text:s,needUpdates:c,size:l,height:u,curveSegments:d,bevelEnabled:f,bevelThickness:p,bevelSize:m,bevelOffset:h,bevelSegments:g}=xn(i),{extend:_,invalidate:v}=cn();K(i,()=>v()),_({TextGeometry:xU});let y=new kU,b=Rn(),x=Pt(()=>{var e;return s!=null&&s.value?s.value:b.default?(e=b.default()[0].children)?.trim():c.value?``:`TresJS`}),S=W();t({instance:S});let C=([n,r]=Gn(()=>new Promise((e,t)=>{try{typeof o.value==`string`?y.load(o.value,t=>{e(t)}):e(o.value)}catch(e){t(console.error(`cientos`,e))}})),n=await n,r(),n),w=Pt(()=>({font:C,size:Sn(l),height:Sn(u),curveSegments:Sn(d),bevelEnabled:Sn(f),bevelThickness:Sn(p),bevelSize:Sn(m),bevelOffset:Sn(h),bevelSegments:Sn(g)}));return Wn(()=>{S.value&&c.value&&(S.value.geometry.dispose(),S.value.geometry=new xU(x.value,w.value),a.value&&S.value.geometry.center())}),(e,t)=>G(o)?(H(),Lt(`TresMesh`,{key:0,ref_key:`text3DRef`,ref:S},[x.value?(H(),Lt(`TresTextGeometry`,{key:0,args:[x.value,w.value],center:G(a)},null,8,eG)):It(``,!0),mn(e.$slots,`default`)],512)):It(``,!0)}});function nG(e){let t=U(null),{height:n,width:r,settings:i,depth:a,autoRender:o=U(!0)}=qt(e)?xn(e):xn(dn(e)),{onBeforeRender:s}=Kt(),{camera:c,renderer:l,scene:u,sizes:d,invalidate:f}=cn();return K(()=>[r?.value,d.width.value,n?.value,d.height.value],()=>{var e;(e=t.value)==null||e.dispose(),t.value=new Ct(r?.value||d.width.value,n?.value||d.height.value,{minFilter:me,magFilter:me,type:z,...i?.value}),a!=null&&a.value&&(t.value.depthTexture=new T(r?.value||d.width.value,n?.value||d.height.value,te)),f()},{immediate:!0}),s(()=>{o.value&&(l.value.setRenderTarget(t.value),l.value.clear(),l.value.render(u.value,c.value),l.value.setRenderTarget(null))},1/0),rn(()=>{var e;(e=t.value)==null||e.dispose()}),t}const rG=zt({__name:`component`,props:{width:{},height:{},depth:{type:Boolean,default:!1},settings:{default:void 0},autoRender:{type:Boolean,default:!0}},setup(e,{expose:t}){let n=nG(e);return t({instance:n}),()=>{}}}),iG=(e,t=16,n,r,i)=>{let a=new Float32Array(t*16),o=U(new oe(a,16));return(()=>{if(!e)return;let a=new IH(e);r&&a.setWeightAttribute(r),a.build();let s=new B,c=new B,l=new g,u=new Ne;e.updateMatrixWorld(!0);for(let r=0;ro()),Wn(()=>{var e,t;i.value=n.instanceMesh??(e=r.value)?.children.find(e=>Object.prototype.hasOwnProperty.call(e,`instanceMatrix`)),a.value=n.mesh??(t=r.value)?.children.find(e=>e.type===`Mesh`),iG(a.value,n.count,i.value,n.weight,n.transform)}),t({samplerRef:r}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`samplerRef`,ref:r},[mn(e.$slots,`default`)],512))}}),oG=new B,sG=new B,cG=new B,lG=(e,t,n)=>{let r=n.width/2,i=n.height/2;t.updateMatrixWorld(!1);let a=e.project(t);return a.x=a.x*r+r,a.y=-(a.y*i)+i,a},uG=(e,t,n,r=1)=>{let i=oG.set(e.x/n.width*2-1,-(e.y/n.height)*2+1,r);return i.unproject(t),i},dG=(e,t,n,r)=>{let i=lG(cG.copy(e),n,r),a=0;for(let o=0;o<2;++o){let s=sG.copy(i).setComponent(o,i.getComponent(o)+t),c=uG(s,n,r,s.z);a=Math.max(a,e.distanceTo(c))}return a},fG=zt({__name:`ScreenSizer`,setup(e,{expose:t}){let n=new B,r=W(),i=W(),a=gn().sizes,o=Pt(()=>({width:a.width.value,height:a.height.value}));return Kt().onBeforeRender(({camera:e})=>{let t=i.value;if(!t)return;let r=dG(t.getWorldPosition(n),1,e,o.value);t.scale.setScalar(r)}),t({instance:r}),(e,t)=>(H(),Lt(`TresObject3D`,{ref_key:`outerRef`,ref:r},[V(`TresObject3D`,{ref_key:`innerRef`,ref:i},[mn(e.$slots,`default`)],512)],512))}}),pG=[`color`],mG=zt({__name:`Edges`,props:{color:{default:`#ff0000`},threshold:{default:15}},setup(e,{expose:t}){let n=e,{color:r,threshold:i}=xn(n),a=W(),o=U(null),s=U(1);return t({instance:a}),K(()=>[a.value,i.value],()=>{if(a.value){let e=a.value.parent;if(e&&`geometry`in e&&e.geometry instanceof f){let t=e.geometry;(t!==o.value||i.value!==s.value)&&(o.value=t,s.value=i.value,a.value.geometry=new k(t,i.value))}}}),(e,t)=>(H(),Lt(`TresLineSegments`,$t({ref_key:`lineSegmentsRef`,ref:a},e.$attrs),[mn(e.$slots,`default`,{},()=>[V(`TresLineBasicMaterial`,{color:G(r)},null,8,pG)])],16))}}),hG={sunset:`venice/venice_sunset_1k.hdr`,studio:`studio/poly_haven_studio_1k.hdr`,city:`city/canary_wharf_1k.hdr`,umbrellas:`outdoor/outdoor_umbrellas_1k.hdr`,night:`outdoor/satara_night_1k.hdr`,forest:`outood/mossy_forest_1k.hdr`,snow:`outdoor/snowy_forest_path_01_1k.hdr`,dawn:`kiara/kiara_1_dawn_1k.hdr`,hangar:`indoor/small_hangar_01_1k.hdr`,urban:`indoor/abandoned_games_room_02_1k.hdr`,modern:`city/modern_buildings_2_1k.hdr`,shangai:`city/shanghai_bund_1k.hdr`},gG=`https://raw.githubusercontent.com/Tresjs/assets/main/textures/hdr/`;function _G(e){return e instanceof N?e:Array.isArray(e)?new N(e[0],e[1],e[2]):typeof e==`number`?new N(e,e,e):e instanceof B||typeof e==`object`&&`x`in e&&`y`in e&&`z`in e?new N(e.x,e.y,e.z):null}function vG(e){e.traverse(e=>{e instanceof Ce&&e.material&&(e.material.needsUpdate=!0)})}async function yG(e,t){let{scene:n,invalidate:r}=cn(),{preset:i,blur:a,files:o=U([]),path:s=U(``),background:c,backgroundIntensity:l=U(1),environmentIntensity:u=U(1),backgroundRotation:d=U([0,0,0]),environmentRotation:f=U([0,0,0]),syncMaterials:p=U(!1)}=xn(e);K(e,()=>{r()});let m=U(null),h=Pt(()=>Array.isArray(o.value)),g=Pt(()=>h.value?b:NU);return K([o,s],async([e,t])=>{if(e&&e.length>0&&!(i!=null&&i.value)){try{let n=await ue(g.value,h.value?[...G(e)]:G(e),e=>{t&&e.setPath(G(t))});m.value=Array.isArray(n)?n[0]:n}catch(e){throw Error(`Failed to load environment map: ${e}`)}m.value&&(m.value.mapping=h.value?y:M)}},{immediate:!0}),K(m,e=>{n.value&&e&&(n.value.environment=e)},{immediate:!0}),K([c,m],([e,r])=>{if(n.value){let i=t!=null&&t.value?t.value.texture:r;i&&(n.value.background=e?i:null)}},{immediate:!0}),K(()=>a?.value,e=>{n.value&&e&&(n.value.backgroundBlurriness=e)},{immediate:!0}),K(()=>l?.value,e=>{n.value&&(n.value.backgroundIntensity=e??1)},{immediate:!0}),K(()=>u?.value,e=>{n.value&&(n.value.environmentIntensity=e??1)},{immediate:!0}),K(()=>d?.value,e=>{if(n.value){let t=_G(e);t&&(n.value.backgroundRotation=t)}},{immediate:!0}),K(()=>f?.value,e=>{if(n.value&&!(p!=null&&p.value)){let t=_G(e);t&&(n.value.environmentRotation=t,vG(n.value))}},{immediate:!0}),K(()=>i?.value,async e=>{if(e&&e in hG){let t=gG,n=hG[e];try{let e=await ue(NU,n,e=>{t&&e.setPath(t)});m.value=Array.isArray(e)?e[0]:e}catch(e){throw Error(`Failed to load environment map: ${e}`)}m.value&&(m.value.mapping=M),r()}else if(e&&!(e in hG))throw Error(`Preset must be one of: ${Object.keys(hG).join(`, `)}`)},{immediate:!0}),K([p,d],([e,t])=>{if(e&&n.value){let e=_G(t);e&&(n.value.environmentRotation=e,vG(n.value))}},{immediate:!0}),m} -/*! -* camera-controls -* https://github.com/yomotsu/camera-controls -* (c) 2017 @yomotsu -* Released under the MIT License. -*/ -const bG={LEFT:1,RIGHT:2,MIDDLE:4},$=Object.freeze({NONE:0,ROTATE:1,TRUCK:2,OFFSET:4,DOLLY:8,ZOOM:16,TOUCH_ROTATE:32,TOUCH_TRUCK:64,TOUCH_OFFSET:128,TOUCH_DOLLY:256,TOUCH_ZOOM:512,TOUCH_DOLLY_TRUCK:1024,TOUCH_DOLLY_OFFSET:2048,TOUCH_DOLLY_ROTATE:4096,TOUCH_ZOOM_TRUCK:8192,TOUCH_ZOOM_OFFSET:16384,TOUCH_ZOOM_ROTATE:32768}),xG={NONE:0,IN:1,OUT:-1};function SG(e){return e.isPerspectiveCamera}function CG(e){return e.isOrthographicCamera}const wG=Math.PI*2,TG=Math.PI/2,EG=1e-5,DG=Math.PI/180;function OG(e,t,n){return Math.max(t,Math.min(n,e))}function kG(e,t=EG){return Math.abs(e)0==p>u&&(p=u,n.value=(p-u)/a),p}function FG(e,t,n,r,i=1/0,a,o){r=Math.max(1e-4,r);let s=2/r,c=s*a,l=1/(1+c+.48*c*c+.235*c*c*c),u=t.x,d=t.y,f=t.z,p=e.x-u,m=e.y-d,h=e.z-f,g=u,_=d,v=f,y=i*r,b=y*y,x=p*p+m*m+h*h;if(x>b){let e=Math.sqrt(x);p=p/e*y,m=m/e*y,h=h/e*y}u=e.x-p,d=e.y-m,f=e.z-h;let S=(n.x+s*p)*a,C=(n.y+s*m)*a,w=(n.z+s*h)*a;n.x=(n.x-s*S)*l,n.y=(n.y-s*C)*l,n.z=(n.z-s*w)*l,o.x=u+(p+S)*l,o.y=d+(m+C)*l,o.z=f+(h+w)*l;let T=g-e.x,E=_-e.y,D=v-e.z,O=o.x-g,k=o.y-_,A=o.z-v;return T*O+E*k+D*A>0&&(o.x=g,o.y=_,o.z=v,n.x=(o.x-g)/a,n.y=(o.y-_)/a,n.z=(o.z-v)/a),o}function IG(e,t){t.set(0,0),e.forEach(e=>{t.x+=e.clientX,t.y+=e.clientY}),t.x/=e.length,t.y/=e.length}function LG(e,t){return CG(e)?(console.warn(`${t} is not supported in OrthographicCamera`),!0):!1}var RG=class{constructor(){this._listeners={}}addEventListener(e,t){let n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){let n=this._listeners;return n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){let n=this._listeners[e];if(n!==void 0){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}removeAllEventListeners(e){if(!e){this._listeners={};return}Array.isArray(this._listeners[e])&&(this._listeners[e].length=0)}dispatchEvent(e){let t=this._listeners[e.type];if(t!==void 0){e.target=this;let n=t.slice(0);for(let t=0,r=n.length;t{},this._enabled=!0,this._state=$.NONE,this._viewport=null,this._changedDolly=0,this._changedZoom=0,this._hasRested=!0,this._boundaryEnclosesCamera=!1,this._needsUpdate=!0,this._updatedLastTime=!1,this._elementRect=new DOMRect,this._isDragging=!1,this._dragNeedsUpdate=!0,this._activePointers=[],this._lockedPointer=null,this._interactiveArea=new DOMRect(0,0,1,1),this._isUserControllingRotate=!1,this._isUserControllingDolly=!1,this._isUserControllingTruck=!1,this._isUserControllingOffset=!1,this._isUserControllingZoom=!1,this._lastDollyDirection=xG.NONE,this._thetaVelocity={value:0},this._phiVelocity={value:0},this._radiusVelocity={value:0},this._targetVelocity=new UG.Vector3,this._focalOffsetVelocity=new UG.Vector3,this._zoomVelocity={value:0},this._truckInternal=(e,t,n)=>{let r,i;if(SG(this._camera)){let n=JG.copy(this._camera.position).sub(this._target),a=this._camera.getEffectiveFOV()*DG,o=n.length()*Math.tan(a*.5);r=this.truckSpeed*e*o/this._elementRect.height,i=this.truckSpeed*t*o/this._elementRect.height}else if(CG(this._camera)){let n=this._camera;r=e*(n.right-n.left)/n.zoom/this._elementRect.width,i=t*(n.top-n.bottom)/n.zoom/this._elementRect.height}else return;this.verticalDragToForward?(n?this.setFocalOffset(this._focalOffsetEnd.x+r,this._focalOffsetEnd.y,this._focalOffsetEnd.z,!0):this.truck(r,0,!0),this.forward(-i,!0)):n?this.setFocalOffset(this._focalOffsetEnd.x+r,this._focalOffsetEnd.y+i,this._focalOffsetEnd.z,!0):this.truck(r,i,!0)},this._rotateInternal=(e,t)=>{let n=wG*this.azimuthRotateSpeed*e/this._elementRect.height,r=wG*this.polarRotateSpeed*t/this._elementRect.height;this.rotate(n,r,!0)},this._dollyInternal=(e,t,n)=>{let r=.95**(-e*this.dollySpeed),i=this._sphericalEnd.radius,a=this._sphericalEnd.radius*r,o=OG(a,this.minDistance,this.maxDistance),s=o-a;this.infinityDolly&&this.dollyToCursor?this._dollyToNoClamp(a,!0):(this.infinityDolly&&!this.dollyToCursor&&this.dollyInFixed(s,!0),this._dollyToNoClamp(o,!0)),this.dollyToCursor&&(this._changedDolly+=(this.infinityDolly?a:o)-i,this._dollyControlCoord.set(t,n)),this._lastDollyDirection=Math.sign(-e)},this._zoomInternal=(e,t,n)=>{let r=.95**(e*this.dollySpeed),i=this._zoom,a=this._zoom*r;this.zoomTo(a,!0),this.dollyToCursor&&(this._changedZoom+=a-i,this._dollyControlCoord.set(t,n))},typeof UG>`u`&&console.error("camera-controls: `THREE` is undefined. You must first run `CameraControls.install( { THREE: THREE } )`. Check the docs for further information."),this._camera=t,this._yAxisUpSpace=new UG.Quaternion().setFromUnitVectors(this._camera.up,GG),this._yAxisUpSpaceInverse=this._yAxisUpSpace.clone().invert(),this._state=$.NONE,this._target=new UG.Vector3,this._targetEnd=this._target.clone(),this._focalOffset=new UG.Vector3,this._focalOffsetEnd=this._focalOffset.clone(),this._spherical=new UG.Spherical().setFromVector3(JG.copy(this._camera.position).applyQuaternion(this._yAxisUpSpace)),this._sphericalEnd=this._spherical.clone(),this._lastDistance=this._spherical.radius,this._zoom=this._camera.zoom,this._zoomEnd=this._zoom,this._lastZoom=this._zoom,this._nearPlaneCorners=[new UG.Vector3,new UG.Vector3,new UG.Vector3,new UG.Vector3],this._updateNearPlaneCorners(),this._boundary=new UG.Box3(new UG.Vector3(-1/0,-1/0,-1/0),new UG.Vector3(1/0,1/0,1/0)),this._cameraUp0=this._camera.up.clone(),this._target0=this._target.clone(),this._position0=this._camera.position.clone(),this._zoom0=this._zoom,this._focalOffset0=this._focalOffset.clone(),this._dollyControlCoord=new UG.Vector2,this.mouseButtons={left:$.ROTATE,middle:$.DOLLY,right:$.TRUCK,wheel:SG(this._camera)?$.DOLLY:CG(this._camera)?$.ZOOM:$.NONE},this.touches={one:$.TOUCH_ROTATE,two:SG(this._camera)?$.TOUCH_DOLLY_TRUCK:CG(this._camera)?$.TOUCH_ZOOM_TRUCK:$.NONE,three:$.TOUCH_TRUCK};let r=new UG.Vector2,i=new UG.Vector2,a=new UG.Vector2,o=e=>{if(!this._enabled||!this._domElement)return;if(this._interactiveArea.left!==0||this._interactiveArea.top!==0||this._interactiveArea.width!==1||this._interactiveArea.height!==1){let t=this._domElement.getBoundingClientRect(),n=e.clientX/t.width,r=e.clientY/t.height;if(nthis._interactiveArea.right||rthis._interactiveArea.bottom)return}let t=e.pointerType===`mouse`?(e.buttons&bG.LEFT)===bG.LEFT?bG.LEFT:(e.buttons&bG.MIDDLE)===bG.MIDDLE?bG.MIDDLE:(e.buttons&bG.RIGHT)===bG.RIGHT?bG.RIGHT:null:null;if(t!==null){let e=this._findPointerByMouseButton(t);e&&this._disposePointer(e)}if((e.buttons&bG.LEFT)===bG.LEFT&&this._lockedPointer)return;let n={pointerId:e.pointerId,clientX:e.clientX,clientY:e.clientY,deltaX:0,deltaY:0,mouseButton:t};this._activePointers.push(n),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this._domElement.ownerDocument.addEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.addEventListener(`pointerup`,c),this._isDragging=!0,f(e)},s=e=>{e.cancelable&&e.preventDefault();let t=e.pointerId,n=this._lockedPointer||this._findPointerById(t);if(n){if(n.clientX=e.clientX,n.clientY=e.clientY,n.deltaX=e.movementX,n.deltaY=e.movementY,this._state=0,e.pointerType===`touch`)switch(this._activePointers.length){case 1:this._state=this.touches.one;break;case 2:this._state=this.touches.two;break;case 3:this._state=this.touches.three;break}else (!this._isDragging&&this._lockedPointer||this._isDragging&&(e.buttons&bG.LEFT)===bG.LEFT)&&(this._state|=this.mouseButtons.left),this._isDragging&&(e.buttons&bG.MIDDLE)===bG.MIDDLE&&(this._state|=this.mouseButtons.middle),this._isDragging&&(e.buttons&bG.RIGHT)===bG.RIGHT&&(this._state|=this.mouseButtons.right);p()}},c=e=>{let t=this._findPointerById(e.pointerId);if(!(t&&t===this._lockedPointer)){if(t&&this._disposePointer(t),e.pointerType===`touch`)switch(this._activePointers.length){case 0:this._state=$.NONE;break;case 1:this._state=this.touches.one;break;case 2:this._state=this.touches.two;break;case 3:this._state=this.touches.three;break}else this._state=$.NONE;m()}},l=-1,u=e=>{if(!this._domElement||!this._enabled||this.mouseButtons.wheel===$.NONE)return;if(this._interactiveArea.left!==0||this._interactiveArea.top!==0||this._interactiveArea.width!==1||this._interactiveArea.height!==1){let t=this._domElement.getBoundingClientRect(),n=e.clientX/t.width,r=e.clientY/t.height;if(nthis._interactiveArea.right||rthis._interactiveArea.bottom)return}if(e.preventDefault(),this.dollyToCursor||this.mouseButtons.wheel===$.ROTATE||this.mouseButtons.wheel===$.TRUCK){let e=performance.now();l-e<1e3&&this._getClientRect(this._elementRect),l=e}let t=HG?-1:-3,n=e.deltaMode===1?e.deltaY/t:e.deltaY/(t*10),r=this.dollyToCursor?(e.clientX-this._elementRect.x)/this._elementRect.width*2-1:0,i=this.dollyToCursor?(e.clientY-this._elementRect.y)/this._elementRect.height*-2+1:0;switch(this.mouseButtons.wheel){case $.ROTATE:this._rotateInternal(e.deltaX,e.deltaY),this._isUserControllingRotate=!0;break;case $.TRUCK:this._truckInternal(e.deltaX,e.deltaY,!1),this._isUserControllingTruck=!0;break;case $.OFFSET:this._truckInternal(e.deltaX,e.deltaY,!0),this._isUserControllingOffset=!0;break;case $.DOLLY:this._dollyInternal(-n,r,i),this._isUserControllingDolly=!0;break;case $.ZOOM:this._zoomInternal(-n,r,i),this._isUserControllingZoom=!0;break}this.dispatchEvent({type:`control`})},d=t=>{if(!(!this._domElement||!this._enabled)){if(this.mouseButtons.right===e.ACTION.NONE){let e=t instanceof PointerEvent?t.pointerId:0,n=this._findPointerById(e);n&&this._disposePointer(n),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c);return}t.preventDefault()}},f=e=>{if(this._enabled){if(IG(this._activePointers,qG),this._getClientRect(this._elementRect),r.copy(qG),i.copy(qG),this._activePointers.length>=2){let e=qG.x-this._activePointers[1].clientX,t=qG.y-this._activePointers[1].clientY,n=Math.sqrt(e*e+t*t);a.set(0,n);let r=(this._activePointers[0].clientX+this._activePointers[1].clientX)*.5,o=(this._activePointers[0].clientY+this._activePointers[1].clientY)*.5;i.set(r,o)}if(this._state=0,!e)this._lockedPointer&&(this._state|=this.mouseButtons.left);else if(`pointerType`in e&&e.pointerType===`touch`)switch(this._activePointers.length){case 1:this._state=this.touches.one;break;case 2:this._state=this.touches.two;break;case 3:this._state=this.touches.three;break}else !this._lockedPointer&&(e.buttons&bG.LEFT)===bG.LEFT&&(this._state|=this.mouseButtons.left),(e.buttons&bG.MIDDLE)===bG.MIDDLE&&(this._state|=this.mouseButtons.middle),(e.buttons&bG.RIGHT)===bG.RIGHT&&(this._state|=this.mouseButtons.right);((this._state&$.ROTATE)===$.ROTATE||(this._state&$.TOUCH_ROTATE)===$.TOUCH_ROTATE||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE)&&(this._sphericalEnd.theta=this._spherical.theta,this._sphericalEnd.phi=this._spherical.phi,this._thetaVelocity.value=0,this._phiVelocity.value=0),((this._state&$.TRUCK)===$.TRUCK||(this._state&$.TOUCH_TRUCK)===$.TOUCH_TRUCK||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK)&&(this._targetEnd.copy(this._target),this._targetVelocity.set(0,0,0)),((this._state&$.DOLLY)===$.DOLLY||(this._state&$.TOUCH_DOLLY)===$.TOUCH_DOLLY||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE)&&(this._sphericalEnd.radius=this._spherical.radius,this._radiusVelocity.value=0),((this._state&$.ZOOM)===$.ZOOM||(this._state&$.TOUCH_ZOOM)===$.TOUCH_ZOOM||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE)&&(this._zoomEnd=this._zoom,this._zoomVelocity.value=0),((this._state&$.OFFSET)===$.OFFSET||(this._state&$.TOUCH_OFFSET)===$.TOUCH_OFFSET||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET)&&(this._focalOffsetEnd.copy(this._focalOffset),this._focalOffsetVelocity.set(0,0,0)),this.dispatchEvent({type:`controlstart`})}},p=()=>{if(!this._enabled||!this._dragNeedsUpdate)return;this._dragNeedsUpdate=!1,IG(this._activePointers,qG);let e=this._domElement&&this._domElement.ownerDocument.pointerLockElement===this._domElement?this._lockedPointer||this._activePointers[0]:null,t=e?-e.deltaX:i.x-qG.x,n=e?-e.deltaY:i.y-qG.y;if(i.copy(qG),((this._state&$.ROTATE)===$.ROTATE||(this._state&$.TOUCH_ROTATE)===$.TOUCH_ROTATE||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE)&&(this._rotateInternal(t,n),this._isUserControllingRotate=!0),(this._state&$.DOLLY)===$.DOLLY||(this._state&$.ZOOM)===$.ZOOM){let e=this.dollyToCursor?(r.x-this._elementRect.x)/this._elementRect.width*2-1:0,t=this.dollyToCursor?(r.y-this._elementRect.y)/this._elementRect.height*-2+1:0,i=this.dollyDragInverted?-1:1;(this._state&$.DOLLY)===$.DOLLY?(this._dollyInternal(i*n*VG,e,t),this._isUserControllingDolly=!0):(this._zoomInternal(i*n*VG,e,t),this._isUserControllingZoom=!0)}if((this._state&$.TOUCH_DOLLY)===$.TOUCH_DOLLY||(this._state&$.TOUCH_ZOOM)===$.TOUCH_ZOOM||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE){let e=qG.x-this._activePointers[1].clientX,t=qG.y-this._activePointers[1].clientY,n=Math.sqrt(e*e+t*t),r=a.y-n;a.set(0,n);let o=this.dollyToCursor?(i.x-this._elementRect.x)/this._elementRect.width*2-1:0,s=this.dollyToCursor?(i.y-this._elementRect.y)/this._elementRect.height*-2+1:0;(this._state&$.TOUCH_DOLLY)===$.TOUCH_DOLLY||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET?(this._dollyInternal(r*VG,o,s),this._isUserControllingDolly=!0):(this._zoomInternal(r*VG,o,s),this._isUserControllingZoom=!0)}((this._state&$.TRUCK)===$.TRUCK||(this._state&$.TOUCH_TRUCK)===$.TOUCH_TRUCK||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK)&&(this._truckInternal(t,n,!1),this._isUserControllingTruck=!0),((this._state&$.OFFSET)===$.OFFSET||(this._state&$.TOUCH_OFFSET)===$.TOUCH_OFFSET||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET)&&(this._truckInternal(t,n,!0),this._isUserControllingOffset=!0),this.dispatchEvent({type:`control`})},m=()=>{IG(this._activePointers,qG),i.copy(qG),this._dragNeedsUpdate=!1,(this._activePointers.length===0||this._activePointers.length===1&&this._activePointers[0]===this._lockedPointer)&&(this._isDragging=!1),this._activePointers.length===0&&this._domElement&&(this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this.dispatchEvent({type:`controlend`}))};this.lockPointer=()=>{!this._enabled||!this._domElement||(this.cancel(),this._lockedPointer={pointerId:-1,clientX:0,clientY:0,deltaX:0,deltaY:0,mouseButton:null},this._activePointers.push(this._lockedPointer),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this._domElement.requestPointerLock(),this._domElement.ownerDocument.addEventListener(`pointerlockchange`,h),this._domElement.ownerDocument.addEventListener(`pointerlockerror`,g),this._domElement.ownerDocument.addEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.addEventListener(`pointerup`,c),f())},this.unlockPointer=()=>{var e,t,n;this._lockedPointer!==null&&(this._disposePointer(this._lockedPointer),this._lockedPointer=null),(e=this._domElement)==null||e.ownerDocument.exitPointerLock(),(t=this._domElement)==null||t.ownerDocument.removeEventListener(`pointerlockchange`,h),(n=this._domElement)==null||n.ownerDocument.removeEventListener(`pointerlockerror`,g),this.cancel()};let h=()=>{this._domElement&&this._domElement.ownerDocument.pointerLockElement===this._domElement||this.unlockPointer()},g=()=>{this.unlockPointer()};this._addAllEventListeners=e=>{this._domElement=e,this._domElement.style.touchAction=`none`,this._domElement.style.userSelect=`none`,this._domElement.style.webkitUserSelect=`none`,this._domElement.addEventListener(`pointerdown`,o),this._domElement.addEventListener(`pointercancel`,c),this._domElement.addEventListener(`wheel`,u,{passive:!1}),this._domElement.addEventListener(`contextmenu`,d)},this._removeAllEventListeners=()=>{this._domElement&&(this._domElement.style.touchAction=``,this._domElement.style.userSelect=``,this._domElement.style.webkitUserSelect=``,this._domElement.removeEventListener(`pointerdown`,o),this._domElement.removeEventListener(`pointercancel`,c),this._domElement.removeEventListener(`wheel`,u,{passive:!1}),this._domElement.removeEventListener(`contextmenu`,d),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this._domElement.ownerDocument.removeEventListener(`pointerlockchange`,h),this._domElement.ownerDocument.removeEventListener(`pointerlockerror`,g))},this.cancel=()=>{this._state!==$.NONE&&(this._state=$.NONE,this._activePointers.length=0,m())},n&&this.connect(n),this.update(0)}get camera(){return this._camera}set camera(e){this._camera=e,this.updateCameraUp(),this._camera.updateProjectionMatrix(),this._updateNearPlaneCorners(),this._needsUpdate=!0}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this._domElement&&(e?(this._domElement.style.touchAction=`none`,this._domElement.style.userSelect=`none`,this._domElement.style.webkitUserSelect=`none`):(this.cancel(),this._domElement.style.touchAction=``,this._domElement.style.userSelect=``,this._domElement.style.webkitUserSelect=``))}get active(){return!this._hasRested}get currentAction(){return this._state}get distance(){return this._spherical.radius}set distance(e){this._spherical.radius===e&&this._sphericalEnd.radius===e||(this._spherical.radius=e,this._sphericalEnd.radius=e,this._needsUpdate=!0)}get azimuthAngle(){return this._spherical.theta}set azimuthAngle(e){this._spherical.theta===e&&this._sphericalEnd.theta===e||(this._spherical.theta=e,this._sphericalEnd.theta=e,this._needsUpdate=!0)}get polarAngle(){return this._spherical.phi}set polarAngle(e){this._spherical.phi===e&&this._sphericalEnd.phi===e||(this._spherical.phi=e,this._sphericalEnd.phi=e,this._needsUpdate=!0)}get boundaryEnclosesCamera(){return this._boundaryEnclosesCamera}set boundaryEnclosesCamera(e){this._boundaryEnclosesCamera=e,this._needsUpdate=!0}set interactiveArea(e){this._interactiveArea.width=OG(e.width,0,1),this._interactiveArea.height=OG(e.height,0,1),this._interactiveArea.x=OG(e.x,0,1-this._interactiveArea.width),this._interactiveArea.y=OG(e.y,0,1-this._interactiveArea.height)}addEventListener(e,t){super.addEventListener(e,t)}removeEventListener(e,t){super.removeEventListener(e,t)}rotate(e,t,n=!1){return this.rotateTo(this._sphericalEnd.theta+e,this._sphericalEnd.phi+t,n)}rotateAzimuthTo(e,t=!1){return this.rotateTo(e,this._sphericalEnd.phi,t)}rotatePolarTo(e,t=!1){return this.rotateTo(this._sphericalEnd.theta,e,t)}rotateTo(e,t,n=!1){this._isUserControllingRotate=!1;let r=OG(e,this.minAzimuthAngle,this.maxAzimuthAngle),i=OG(t,this.minPolarAngle,this.maxPolarAngle);this._sphericalEnd.theta=r,this._sphericalEnd.phi=i,this._sphericalEnd.makeSafe(),this._needsUpdate=!0,n||(this._spherical.theta=this._sphericalEnd.theta,this._spherical.phi=this._sphericalEnd.phi);let a=!n||AG(this._spherical.theta,this._sphericalEnd.theta,this.restThreshold)&&AG(this._spherical.phi,this._sphericalEnd.phi,this.restThreshold);return this._createOnRestPromise(a)}dolly(e,t=!1){return this.dollyTo(this._sphericalEnd.radius-e,t)}dollyTo(e,t=!1){return this._isUserControllingDolly=!1,this._lastDollyDirection=xG.NONE,this._changedDolly=0,this._dollyToNoClamp(OG(e,this.minDistance,this.maxDistance),t)}_dollyToNoClamp(e,t=!1){let n=this._sphericalEnd.radius;if(this.colliderMeshes.length>=1){let t=this._collisionTest(),r=AG(t,this._spherical.radius);if(!(n>e)&&r)return Promise.resolve();this._sphericalEnd.radius=Math.min(e,t)}else this._sphericalEnd.radius=e;this._needsUpdate=!0,t||(this._spherical.radius=this._sphericalEnd.radius);let r=!t||AG(this._spherical.radius,this._sphericalEnd.radius,this.restThreshold);return this._createOnRestPromise(r)}dollyInFixed(e,t=!1){this._targetEnd.add(this._getCameraDirection(ZG).multiplyScalar(e)),t||this._target.copy(this._targetEnd);let n=!t||AG(this._target.x,this._targetEnd.x,this.restThreshold)&&AG(this._target.y,this._targetEnd.y,this.restThreshold)&&AG(this._target.z,this._targetEnd.z,this.restThreshold);return this._createOnRestPromise(n)}zoom(e,t=!1){return this.zoomTo(this._zoomEnd+e,t)}zoomTo(e,t=!1){this._isUserControllingZoom=!1,this._zoomEnd=OG(e,this.minZoom,this.maxZoom),this._needsUpdate=!0,t||(this._zoom=this._zoomEnd);let n=!t||AG(this._zoom,this._zoomEnd,this.restThreshold);return this._changedZoom=0,this._createOnRestPromise(n)}pan(e,t,n=!1){return console.warn("`pan` has been renamed to `truck`"),this.truck(e,t,n)}truck(e,t,n=!1){this._camera.updateMatrix(),QG.setFromMatrixColumn(this._camera.matrix,0),$G.setFromMatrixColumn(this._camera.matrix,1),QG.multiplyScalar(e),$G.multiplyScalar(-t);let r=JG.copy(QG).add($G),i=YG.copy(this._targetEnd).add(r);return this.moveTo(i.x,i.y,i.z,n)}forward(e,t=!1){JG.setFromMatrixColumn(this._camera.matrix,0),JG.crossVectors(this._camera.up,JG),JG.multiplyScalar(e);let n=YG.copy(this._targetEnd).add(JG);return this.moveTo(n.x,n.y,n.z,t)}elevate(e,t=!1){return JG.copy(this._camera.up).multiplyScalar(e),this.moveTo(this._targetEnd.x+JG.x,this._targetEnd.y+JG.y,this._targetEnd.z+JG.z,t)}moveTo(e,t,n,r=!1){this._isUserControllingTruck=!1;let i=JG.set(e,t,n).sub(this._targetEnd);this._encloseToBoundary(this._targetEnd,i,this.boundaryFriction),this._needsUpdate=!0,r||this._target.copy(this._targetEnd);let a=!r||AG(this._target.x,this._targetEnd.x,this.restThreshold)&&AG(this._target.y,this._targetEnd.y,this.restThreshold)&&AG(this._target.z,this._targetEnd.z,this.restThreshold);return this._createOnRestPromise(a)}lookInDirectionOf(e,t,n,r=!1){let i=JG.set(e,t,n).sub(this._targetEnd).normalize().multiplyScalar(-this._sphericalEnd.radius).add(this._targetEnd);return this.setPosition(i.x,i.y,i.z,r)}fitToBox(e,t,{cover:n=!1,paddingLeft:r=0,paddingRight:i=0,paddingBottom:a=0,paddingTop:o=0}={}){let s=[],c=e.isBox3?aK.copy(e):aK.setFromObject(e);c.isEmpty()&&(console.warn(`camera-controls: fitTo() cannot be used with an empty box. Aborting`),Promise.resolve());let l=jG(this._sphericalEnd.theta,TG),u=jG(this._sphericalEnd.phi,TG);s.push(this.rotateTo(l,u,t));let d=JG.setFromSpherical(this._sphericalEnd).normalize(),f=cK.setFromUnitVectors(d,KG),p=AG(Math.abs(d.y),1);p&&f.multiply(lK.setFromAxisAngle(GG,l)),f.multiply(this._yAxisUpSpaceInverse);let m=oK.makeEmpty();YG.copy(c.min).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.min).setX(c.max.x).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.min).setY(c.max.y).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.max).setZ(c.min.z).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.min).setZ(c.max.z).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.max).setY(c.min.y).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.max).setX(c.min.x).applyQuaternion(f),m.expandByPoint(YG),YG.copy(c.max).applyQuaternion(f),m.expandByPoint(YG),m.min.x-=r,m.min.y-=a,m.max.x+=i,m.max.y+=o,f.setFromUnitVectors(KG,d),p&&f.premultiply(lK.invert()),f.premultiply(this._yAxisUpSpace);let h=m.getSize(JG),g=m.getCenter(YG).applyQuaternion(f);if(SG(this._camera)){let e=this.getDistanceToFitBox(h.x,h.y,h.z,n);s.push(this.moveTo(g.x,g.y,g.z,t)),s.push(this.dollyTo(e,t)),s.push(this.setFocalOffset(0,0,0,t))}else if(CG(this._camera)){let e=this._camera,r=e.right-e.left,i=e.top-e.bottom,a=n?Math.max(r/h.x,i/h.y):Math.min(r/h.x,i/h.y);s.push(this.moveTo(g.x,g.y,g.z,t)),s.push(this.zoomTo(a,t)),s.push(this.setFocalOffset(0,0,0,t))}return Promise.all(s)}fitToSphere(t,n){let r=[],i=`isObject3D`in t?e.createBoundingSphere(t,sK):sK.copy(t);if(r.push(this.moveTo(i.center.x,i.center.y,i.center.z,n)),SG(this._camera)){let e=this.getDistanceToFitSphere(i.radius);r.push(this.dollyTo(e,n))}else if(CG(this._camera)){let e=this._camera.right-this._camera.left,t=this._camera.top-this._camera.bottom,a=2*i.radius,o=Math.min(e/a,t/a);r.push(this.zoomTo(o,n))}return r.push(this.setFocalOffset(0,0,0,n)),Promise.all(r)}setLookAt(e,t,n,r,i,a,o=!1){this._isUserControllingRotate=!1,this._isUserControllingDolly=!1,this._isUserControllingTruck=!1,this._lastDollyDirection=xG.NONE,this._changedDolly=0;let s=YG.set(r,i,a),c=JG.set(e,t,n);this._targetEnd.copy(s),this._sphericalEnd.setFromVector3(c.sub(s).applyQuaternion(this._yAxisUpSpace)),this.normalizeRotations(),this._needsUpdate=!0,o||(this._target.copy(this._targetEnd),this._spherical.copy(this._sphericalEnd));let l=!o||AG(this._target.x,this._targetEnd.x,this.restThreshold)&&AG(this._target.y,this._targetEnd.y,this.restThreshold)&&AG(this._target.z,this._targetEnd.z,this.restThreshold)&&AG(this._spherical.theta,this._sphericalEnd.theta,this.restThreshold)&&AG(this._spherical.phi,this._sphericalEnd.phi,this.restThreshold)&&AG(this._spherical.radius,this._sphericalEnd.radius,this.restThreshold);return this._createOnRestPromise(l)}lerpLookAt(e,t,n,r,i,a,o,s,c,l,u,d,f,p=!1){this._isUserControllingRotate=!1,this._isUserControllingDolly=!1,this._isUserControllingTruck=!1,this._lastDollyDirection=xG.NONE,this._changedDolly=0;let m=JG.set(r,i,a),h=YG.set(e,t,n);rK.setFromVector3(h.sub(m).applyQuaternion(this._yAxisUpSpace));let g=XG.set(l,u,d),_=YG.set(o,s,c);iK.setFromVector3(_.sub(g).applyQuaternion(this._yAxisUpSpace)),this._targetEnd.copy(m.lerp(g,f));let v=iK.theta-rK.theta,y=iK.phi-rK.phi,b=iK.radius-rK.radius;this._sphericalEnd.set(rK.radius+b*f,rK.phi+y*f,rK.theta+v*f),this.normalizeRotations(),this._needsUpdate=!0,p||(this._target.copy(this._targetEnd),this._spherical.copy(this._sphericalEnd));let x=!p||AG(this._target.x,this._targetEnd.x,this.restThreshold)&&AG(this._target.y,this._targetEnd.y,this.restThreshold)&&AG(this._target.z,this._targetEnd.z,this.restThreshold)&&AG(this._spherical.theta,this._sphericalEnd.theta,this.restThreshold)&&AG(this._spherical.phi,this._sphericalEnd.phi,this.restThreshold)&&AG(this._spherical.radius,this._sphericalEnd.radius,this.restThreshold);return this._createOnRestPromise(x)}setPosition(e,t,n,r=!1){return this.setLookAt(e,t,n,this._targetEnd.x,this._targetEnd.y,this._targetEnd.z,r)}setTarget(e,t,n,r=!1){let i=this.getPosition(JG),a=this.setLookAt(i.x,i.y,i.z,e,t,n,r);return this._sphericalEnd.phi=OG(this._sphericalEnd.phi,this.minPolarAngle,this.maxPolarAngle),a}setFocalOffset(e,t,n,r=!1){this._isUserControllingOffset=!1,this._focalOffsetEnd.set(e,t,n),this._needsUpdate=!0,r||this._focalOffset.copy(this._focalOffsetEnd);let i=!r||AG(this._focalOffset.x,this._focalOffsetEnd.x,this.restThreshold)&&AG(this._focalOffset.y,this._focalOffsetEnd.y,this.restThreshold)&&AG(this._focalOffset.z,this._focalOffsetEnd.z,this.restThreshold);return this._createOnRestPromise(i)}setOrbitPoint(e,t,n){this._camera.updateMatrixWorld(),QG.setFromMatrixColumn(this._camera.matrixWorldInverse,0),$G.setFromMatrixColumn(this._camera.matrixWorldInverse,1),eK.setFromMatrixColumn(this._camera.matrixWorldInverse,2);let r=JG.set(e,t,n),i=r.distanceTo(this._camera.position),a=r.sub(this._camera.position);QG.multiplyScalar(a.x),$G.multiplyScalar(a.y),eK.multiplyScalar(a.z),JG.copy(QG).add($G).add(eK),JG.z+=i,this.dollyTo(i,!1),this.setFocalOffset(-JG.x,JG.y,-JG.z,!1),this.moveTo(e,t,n,!1)}setBoundary(e){if(!e){this._boundary.min.set(-1/0,-1/0,-1/0),this._boundary.max.set(1/0,1/0,1/0),this._needsUpdate=!0;return}this._boundary.copy(e),this._boundary.clampPoint(this._targetEnd,this._targetEnd),this._needsUpdate=!0}setViewport(e,t,n,r){if(e===null){this._viewport=null;return}this._viewport=this._viewport||new UG.Vector4,typeof e==`number`?this._viewport.set(e,t,n,r):this._viewport.copy(e)}getDistanceToFitBox(e,t,n,r=!1){if(LG(this._camera,`getDistanceToFitBox`))return this._spherical.radius;let i=e/t,a=this._camera.getEffectiveFOV()*DG,o=this._camera.aspect;return((r?i>o:it.pointerId===e)}_findPointerByMouseButton(e){return this._activePointers.find(t=>t.mouseButton===e)}_disposePointer(e){this._activePointers.splice(this._activePointers.indexOf(e),1)}_encloseToBoundary(e,t,n){let r=t.lengthSq();if(r===0)return e;let i=YG.copy(t).add(e),a=this._boundary.clampPoint(i,XG).sub(i),o=a.lengthSq();if(o===0)return e.add(t);if(o===r)return e;if(n===0)return e.add(t).add(a);{let r=1+n*o/t.dot(a);return e.add(YG.copy(t).multiplyScalar(r)).add(a.multiplyScalar(1-n))}}_updateNearPlaneCorners(){if(SG(this._camera)){let e=this._camera,t=e.near,n=e.getEffectiveFOV()*DG,r=Math.tan(n*.5)*t,i=r*e.aspect;this._nearPlaneCorners[0].set(-i,-r,0),this._nearPlaneCorners[1].set(i,-r,0),this._nearPlaneCorners[2].set(i,r,0),this._nearPlaneCorners[3].set(-i,r,0)}else if(CG(this._camera)){let e=this._camera,t=1/e.zoom,n=e.left*t,r=e.right*t,i=e.top*t,a=e.bottom*t;this._nearPlaneCorners[0].set(n,i,0),this._nearPlaneCorners[1].set(r,i,0),this._nearPlaneCorners[2].set(r,a,0),this._nearPlaneCorners[3].set(n,a,0)}}_collisionTest(){let e=1/0;if(!(this.colliderMeshes.length>=1)||LG(this._camera,`_collisionTest`))return e;let t=this._getTargetDirection(ZG);uK.lookAt(WG,t,this._camera.up);for(let n=0;n<4;n++){let r=YG.copy(this._nearPlaneCorners[n]);r.applyMatrix4(uK);let i=XG.addVectors(this._target,r);dK.set(i,t),dK.far=this._spherical.radius+1;let a=dK.intersectObjects(this.colliderMeshes);a.length!==0&&a[0].distance{let t=()=>{this.removeEventListener(`rest`,t),e()};this.addEventListener(`rest`,t)}))}_addAllEventListeners(e){}_removeAllEventListeners(){}get dampingFactor(){return console.warn(`.dampingFactor has been deprecated. use smoothTime (in seconds) instead.`),0}set dampingFactor(e){console.warn(`.dampingFactor has been deprecated. use smoothTime (in seconds) instead.`)}get draggingDampingFactor(){return console.warn(`.draggingDampingFactor has been deprecated. use draggingSmoothTime (in seconds) instead.`),0}set draggingDampingFactor(e){console.warn(`.draggingDampingFactor has been deprecated. use draggingSmoothTime (in seconds) instead.`)}static createBoundingSphere(e,t=new UG.Sphere){let n=t,r=n.center;aK.makeEmpty(),e.traverseVisible(e=>{e.isMesh&&aK.expandByObject(e)}),aK.getCenter(r);let i=0;return e.traverseVisible(e=>{if(!e.isMesh)return;let t=e,n=t.geometry.clone();n.applyMatrix4(t.matrixWorld);let a=n.attributes.position;for(let e=0,t=a.count;e!!(e&&e.isPerspectiveCamera),mK=e=>!!(e&&e.isOrthographicCamera),hK=`min-polar-angle.max-polar-angle.min-azimuth-angle.max-azimuth-angle.distance.min-distance.max-distance.infinity-dolly.min-zoom.max-zoom.smooth-time.dragging-smooth-time.max-speed.azimuth-rotate-speed.polar-rotate-speed.dolly-speed.dolly-drag-inverted.truck-speed.dolly-to-cursor.drag-to-offset.vertical-drag-to-forward.boundary-friction.rest-threshold.collider-meshes.args.mouse-buttons.touches`.split(`.`),gK=(e,t)=>({left:fK.ACTION.ROTATE,middle:fK.ACTION.DOLLY,right:fK.ACTION.TRUCK,wheel:pK(e)?fK.ACTION.DOLLY:mK(e)?fK.ACTION.ZOOM:fK.ACTION.NONE,...t}),_K=(e,t)=>({one:fK.ACTION.TOUCH_ROTATE,two:pK(e)?fK.ACTION.TOUCH_DOLLY_TRUCK:mK(e)?fK.ACTION.TOUCH_ZOOM_TRUCK:fK.ACTION.NONE,three:fK.ACTION.TOUCH_TRUCK,...t}),vK=zt({__name:`CameraControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},minPolarAngle:{default:0},maxPolarAngle:{default:Math.PI},minAzimuthAngle:{default:-1/0},maxAzimuthAngle:{default:1/0},distance:{default:()=>cn().camera.value.position.z},minDistance:{default:2**-52},maxDistance:{default:1/0},infinityDolly:{type:Boolean,default:!1},minZoom:{default:.01},maxZoom:{default:1/0},smoothTime:{default:.25},draggingSmoothTime:{default:.125},maxSpeed:{default:1/0},azimuthRotateSpeed:{default:1},polarRotateSpeed:{default:1},dollySpeed:{default:1},dollyDragInverted:{type:Boolean,default:!1},truckSpeed:{default:2},dollyToCursor:{type:Boolean,default:!1},dragToOffset:{type:Boolean,default:!1},verticalDragToForward:{type:Boolean,default:!1},boundaryFriction:{default:0},restThreshold:{default:.01},colliderMeshes:{default:()=>[]},mouseButtons:{default:()=>gK(cn().camera.value)},touches:{default:()=>_K(cn().camera.value)}},emits:[`change`,`start`,`end`],setup(e,{expose:t,emit:n}){let r=e,i=n,{makeDefault:a,minPolarAngle:o,maxPolarAngle:s,minAzimuthAngle:c,maxAzimuthAngle:u,distance:d,minDistance:f,maxDistance:p,infinityDolly:m,minZoom:h,maxZoom:g,smoothTime:_,draggingSmoothTime:v,maxSpeed:y,azimuthRotateSpeed:b,polarRotateSpeed:x,dollySpeed:S,dollyDragInverted:C,truckSpeed:w,dollyToCursor:T,dragToOffset:E,verticalDragToForward:D,boundaryFriction:O,restThreshold:k,colliderMeshes:A}=xn(r),j={Box3:l,MathUtils:{clamp:be.clamp},Matrix4:Se,Quaternion:Ue,Raycaster:Je,Sphere:ot,Spherical:ct,Vector2:yt,Vector3:B,Vector4:bt};fK.install({THREE:j});let{camera:M,renderer:N,extend:ee,controls:P,invalidate:F}=cn();K(r,()=>{F()});let I=Pt(()=>gK(r.camera||M.value,r.mouseButtons)),te=Pt(()=>_K(r.camera||M.value,r.touches)),L=W(null);ee({CameraControls:fK}),Wn(()=>{R(),L.value&&a.value?P.value=L.value:P.value=null});function R(){yB(L.value,`update`,()=>{i(`change`,L.value),F()}),yB(L.value,`controlend`,()=>i(`end`,L.value)),yB(L.value,`controlstart`,()=>i(`start`,L.value))}let{onBeforeRender:ne}=Kt();return ne(({delta:e,invalidate:t})=>{var n,r;(n=L.value)!=null&&n.enabled&&((r=L.value)==null||r.update(e),t())}),sn(()=>{L.value&&L.value.disconnect()}),t({instance:L}),(e,t)=>(e.camera||G(M))&&(e.domElement||G(N))?(H(),Lt(`TresCameraControls`,{key:0,ref_key:`controlsRef`,ref:L,"min-polar-angle":G(o),"max-polar-angle":G(s),"min-azimuth-angle":G(c),"max-azimuth-angle":G(u),distance:G(d),"min-distance":G(f),"max-distance":G(p),"infinity-dolly":G(m),"min-zoom":G(h),"max-zoom":G(g),"smooth-time":G(_),"dragging-smooth-time":G(v),"max-speed":G(y),"azimuth-rotate-speed":G(b),"polar-rotate-speed":G(x),"dolly-speed":G(S),"dolly-drag-inverted":G(C),"truck-speed":G(w),"dolly-to-cursor":G(T),"drag-to-offset":G(E),"vertical-drag-to-forward":G(D),"boundary-friction":G(O),"rest-threshold":G(k),"collider-meshes":G(A),args:[e.camera||G(M),e.domElement||G(N).domElement],"mouse-buttons":I.value,touches:te.value},null,8,hK)):It(``,!0)}}),yK=zt({__name:`KeyboardControls`,props:{makeDefault:{type:Boolean,default:!0},camera:{},domElement:{},moveSpeed:{default:.2},selector:{}},emits:[`isLock`,`change`],setup(e,{expose:t,emit:n}){let r=e,i=n,{moveSpeed:a}=xn(r),{camera:o,controls:s,renderer:c,invalidate:l}=cn();K(r,()=>{l()});let u=U(0),d=U(0),{KeyW:f,KeyA:p,KeyS:m,KeyD:h,Up:g,Down:_,Left:v,Right:y}=OB();Wn(()=>{p.value||v.value?u.value=-a.value:h.value||y.value?u.value=a.value:u.value=0,f.value||g.value?d.value=a.value:m.value||_.value?d.value=-a.value:d.value=0}),t({instance:s});let b=e=>i(`isLock`,e),x=e=>i(`change`,e),S=new B,C=new B,w=new Ue,T=(e,t)=>{var n;if(!((n=o.value)!=null&&n.position)&&!S)return;let r=o.value,a=e*.001;r?.translateZ(-t),w.set(C.x*a,C.y*a,C.z*a,1).normalize(),r?.quaternion.multiply(w),(u.value||d.value)&&i(`change`,s.value)},{onBeforeRender:E}=Kt();return E(({delta:e,invalidate:t})=>{var n;s.value instanceof ZH&&(n=s.value)!=null&&n.isLocked&&(T(e,d.value),s.value.moveRight(u.value),t())}),(e,t)=>(H(),Ft(G(TK),{selector:e.selector,"make-default":e.makeDefault,camera:e.camera||G(o),"dom-element":e.domElement||G(c).domElement,onIsLock:b,onChange:x},null,8,[`selector`,`make-default`,`camera`,`dom-element`]))}}),bK=[`args`,`auto-rotate`,`auto-rotate-speed`,`enable-damping`,`damping-factor`,`enable-pan`,`key-pan-speed`,`keys`,`max-azimuth-angle`,`min-azimuth-angle`,`max-polar-angle`,`min-polar-angle`,`min-distance`,`max-distance`,`min-zoom`,`max-zoom`,`enable-zoom`,`zoom-speed`,`enable-rotate`,`rotate-speed`],xK=zt({__name:`MapControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},target:{},enableDamping:{type:Boolean,default:!0},dampingFactor:{default:.05},autoRotate:{type:Boolean,default:!1},autoRotateSpeed:{default:2},enablePan:{type:Boolean,default:!0},keyPanSpeed:{default:7},keys:{},maxAzimuthAngle:{default:1/0},minAzimuthAngle:{default:-1/0},maxPolarAngle:{default:Math.PI},minPolarAngle:{default:0},minDistance:{default:0},maxDistance:{default:1/0},minZoom:{default:0},maxZoom:{default:1/0},touches:{},enableZoom:{type:Boolean,default:!0},zoomSpeed:{default:1},enableRotate:{type:Boolean,default:!0},rotateSpeed:{default:1}},emits:[`change`,`start`,`end`],setup(e,{expose:t,emit:n}){let r=e,{autoRotate:i,autoRotateSpeed:a,enableDamping:o,dampingFactor:s,enablePan:c,keyPanSpeed:l,maxAzimuthAngle:u,minAzimuthAngle:d,maxPolarAngle:f,minPolarAngle:p,minDistance:m,maxDistance:h,minZoom:g,maxZoom:_,enableZoom:v,zoomSpeed:y,enableRotate:b,rotateSpeed:x}=xn(r),{camera:S,renderer:C,extend:w,controls:T,invalidate:E}=cn();K(r,()=>{E()});let D=W(null);w({MapControls:oU}),K(T,e=>{e&&r.makeDefault?T.value=e:T.value=null});let{onBeforeRender:O}=Kt();return O(({invalidate:e})=>{D.value&&(o.value||i.value)&&(D.value.update(),e())}),sn(()=>{D.value&&D.value.dispose()}),t({instance:D}),(e,t)=>(e.camera||G(S))&&(e.domElement||G(C))?(H(),Lt(`TresMapControls`,{key:0,ref_key:`controlsRef`,ref:D,args:[e.camera||G(S),e.domElement||G(C).domElement],"auto-rotate":G(i),"auto-rotate-speed":G(a),"enable-damping":G(o),"damping-factor":G(s),"enable-pan":G(c),"key-pan-speed":G(l),keys:e.keys,"max-azimuth-angle":G(u),"min-azimuth-angle":G(d),"max-polar-angle":G(f),"min-polar-angle":G(p),"min-distance":G(m),"max-distance":G(h),"min-zoom":G(g),"max-zoom":G(_),"enable-zoom":G(v),"zoom-speed":G(y),"enable-rotate":G(b),"rotate-speed":G(x)},null,8,bK)):It(``,!0)}}),SK=[`target`,`auto-rotate`,`auto-rotate-speed`,`enable-damping`,`damping-factor`,`enable-pan`,`key-pan-speed`,`keys`,`max-azimuth-angle`,`min-azimuth-angle`,`max-polar-angle`,`min-polar-angle`,`min-distance`,`max-distance`,`min-zoom`,`max-zoom`,`touches`,`enable-zoom`,`zoom-speed`,`enable-rotate`,`rotate-speed`,`mouse-buttons`,`args`],CK=zt({__name:`OrbitControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},target:{default:()=>[0,0,0]},enableDamping:{type:Boolean,default:!0},dampingFactor:{default:.05},autoRotate:{type:Boolean,default:!1},autoRotateSpeed:{default:2},enablePan:{type:Boolean,default:!0},keyPanSpeed:{default:7},keys:{},maxAzimuthAngle:{default:1/0},minAzimuthAngle:{default:-1/0},maxPolarAngle:{default:Math.PI},minPolarAngle:{default:0},minDistance:{default:0},maxDistance:{default:1/0},minZoom:{default:0},maxZoom:{default:1/0},touches:{default:()=>({ONE:lt.ROTATE,TWO:lt.DOLLY_PAN})},enableZoom:{type:Boolean,default:!0},zoomSpeed:{default:1},enableRotate:{type:Boolean,default:!0},rotateSpeed:{default:1},mouseButtons:{default:()=>({LEFT:ve.ROTATE,MIDDLE:ve.DOLLY,RIGHT:ve.PAN})}},emits:[`change`,`start`,`end`],setup(e,{expose:t,emit:n}){let r=e,i=n,{makeDefault:a,autoRotate:o,autoRotateSpeed:s,enableDamping:c,dampingFactor:l,enablePan:u,keyPanSpeed:d,maxAzimuthAngle:f,minAzimuthAngle:p,maxPolarAngle:m,minPolarAngle:h,minDistance:g,maxDistance:_,minZoom:v,maxZoom:y,enableZoom:b,zoomSpeed:x,enableRotate:S,touches:C,rotateSpeed:w,target:T,mouseButtons:E}=xn(r),{camera:D,renderer:O,extend:k,controls:A,invalidate:j}=cn(),M=W(null);k({OrbitControls:aU}),K(M,e=>{N(),e&&a.value?A.value=e:A.value=null});function N(){yB(M.value,`change`,()=>{i(`change`,M.value),j()}),yB(M.value,`start`,()=>i(`start`,M.value)),yB(M.value,`end`,()=>i(`end`,M.value))}let{onBeforeRender:ee}=Kt();return ee(({invalidate:e})=>{M.value&&(c.value||o.value)&&(M.value.update(),o.value&&e())}),sn(()=>{M.value&&M.value.dispose()}),t({instance:M}),(e,t)=>(e.camera||G(D))&&(e.domElement||G(O))?(H(),Lt(`TresOrbitControls`,{key:0,ref_key:`controlsRef`,ref:M,target:G(T),"auto-rotate":G(o),"auto-rotate-speed":G(s),"enable-damping":G(c),"damping-factor":G(l),"enable-pan":G(u),"key-pan-speed":G(d),keys:e.keys,"max-azimuth-angle":G(f),"min-azimuth-angle":G(p),"max-polar-angle":G(m),"min-polar-angle":G(h),"min-distance":G(g),"max-distance":G(_),"min-zoom":G(v),"max-zoom":G(y),touches:G(C),"enable-zoom":G(b),"zoom-speed":G(x),"enable-rotate":G(S),"rotate-speed":G(w),"mouse-buttons":G(E),args:[e.camera||G(D),e.domElement||G(O).domElement]},null,8,SK)):It(``,!0)}}),wK=[`args`],TK=zt({__name:`PointerLockControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},selector:{}},emits:[`isLock`,`change`],setup(e,{expose:t,emit:n}){let r=e,i=n,{camera:a,renderer:o,extend:s,controls:c,invalidate:l}=cn();K(r,()=>{l()});let u=W(null),d;s({PointerLockControls:ZH});let f=e=>{i(`isLock`,e)};return K(u,e=>{e&&r.makeDefault?c.value=e:c.value=null,d=document.getElementById(r.selector||``)||o.value.domElement,yB(d,`click`,()=>{u.value&&(u.value.lock(),u.value.addEventListener(`lock`,()=>f(!0)),u.value.addEventListener(`unlock`,()=>f(!1)),l())})}),sn(()=>{let e=u.value;e&&(e.removeEventListener(`lock`,()=>f(!0)),e.removeEventListener(`unlock`,()=>f(!1)),e.dispose())}),t({instance:c}),(e,t)=>(e.camera||G(a))&&(e.domElement||G(o))?(H(),Lt(`TresPointerLockControls`,{key:0,ref_key:`controlsRef`,ref:u,args:[e.camera||G(a),e.domElement||G(o).domElement]},null,8,wK)):It(``,!0)}}),EK=zt({__name:`ScrollControls`,props:{pages:{default:4},distance:{default:4},smoothScroll:{default:.1},horizontal:{type:Boolean,default:!1},htmlScroll:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(e,{expose:t,emit:n}){let r=e,i=n,{logWarning:a}=Ve();r.smoothScroll<0&&a(`SmoothControl must be greater than zero`),r.pages<0&&a(`Pages must be greater than zero`);let{camera:o,controls:s,renderer:c,invalidate:l}=cn();K(r,()=>{l()});let u=W(),d=document.createElement(`div`),{y:f}=jB(),{x:p,y:m,isScrolling:h}=EB(d),{height:g,width:_}=MB(),v=0,y=U(!1),b=U(0),x=U(0),S=U(0),C=r.horizontal?`x`:`y`,w=K(o,e=>{if(y.value){w();return}v=r.horizontal?e?.position.x||0:e?.position.y||0,y.value=!0},{immediate:!0});K(h,e=>{s.value&&(s.value.enabled=!e)},{immediate:!0}),K(f,e=>{!h.value&&!r.htmlScroll||(x.value=e/g.value/(S.value/g.value-1),b.value=-1*x.value,i(`update:modelValue`,x.value))}),K(m,e=>{x.value=e/g.value/(S.value/g.value),b.value=-1*x.value,i(`update:modelValue`,x.value)}),K(p,e=>{x.value=e/_.value/(S.value/_.value-1),b.value=+x.value,i(`update:modelValue`,x.value)}),K(c,e=>{var t,n;let i=e?.domElement;if(r.htmlScroll&&e!=null&&e.domElement)i!=null&&i.style.width&&i!=null&&i.style.position&&i!=null&&i.style.top&&i!=null&&i.style.left&&(i.style.width=`100%`,i.style.position=`fixed`,i.style.zIndex=` -99999`,i.style.top=`0`,i.style.left=`0`),S.value=document.body.scrollHeight;else{let a=document.createElement(`div`),o=document.createElement(`div`);d.style[r.horizontal?`overflowX`:`overflowY`]=`auto`,d.style[r.horizontal?`overflowY`:`overflowX`]=`hidden`,d.style.position=`absolute`,d.style.width=`100%`,d.style.height=` 100%`,d.style.top=`0`,d.style.left=`0`,d.classList.add(`scrollContainer`),a.style.position=`sticky`,a.style.top=`0px`,a.style.left=`0px`,a.style.width=`100%`,a.style.height=`100%`,a.style.overflow=`hidden`,d.appendChild(a),o.style.height=r.horizontal?`100%`:`${g.value*r.pages}px`,o.style.width=r.horizontal?`${_.value*r.pages}px`:`100vw`,o.style.pointerEvents=`none`,i.style.position=`fixed`,i.style.zIndex=`0`,i!=null&&i.style.width&&(i.style.width=`100%`),d.appendChild(o),e!=null&&e.domElement.parentNode&&(e.domElement.parentNode.style.position=`relative`),(n=(t=e?.domElement)?.parentNode)==null||n.appendChild(d),S.value=r.horizontal?_.value*r.pages:g.value*r.pages}},{immediate:!0});let{onBeforeRender:T}=Kt();return T(({invalidate:e})=>{var t;if((t=o.value)!=null&&t.position){let t=(b.value*r.distance-o.value.position[C]+v)*r.smoothScroll;o.value.position[C]+=t,u.value.children.length>0&&(u.value.position[C]+=t),e()}}),t({instance:u}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`wrapperRef`,ref:u},[mn(e.$slots,`default`)],512))}}),DK=[`object`,`args`,`mode`,`enabled`,`axis`,`translation-snap`,`rotation-snap`,`scale-snap`,`space`,`size`,`show-x`,`show-y`,`show-z`],OK=zt({__name:`TransformControls`,props:{object:{},camera:{},mode:{default:`translate`},enabled:{type:Boolean,default:!0},axis:{default:`XYZ`},translationSnap:{},rotationSnap:{},scaleSnap:{},space:{default:`world`},size:{default:1},showX:{type:Boolean,default:!0},showY:{type:Boolean,default:!0},showZ:{type:Boolean,default:!0}},emits:[`dragging`,`change`,`mouseDown`,`mouseUp`,`objectChange`],setup(e,{expose:t,emit:n}){let r=e,i=n,{object:a,mode:o,enabled:s,axis:c,translationSnap:l,rotationSnap:u,scaleSnap:d,space:f,size:p,showX:m,showY:h,showZ:g}=xn(r),_=W(null),{controls:v,camera:y,renderer:b,extend:x,invalidate:S}=cn();K([a,o,s,c,l,u,d,f,p,m,h,g],()=>{S()}),x({TransformControls:zH});let C=()=>{S(),i(`change`)},w=e=>{v.value&&(v.value.enabled=!e.value),S(),i(`dragging`,e.value)},T=()=>{S(),i(`mouseDown`)},E=()=>{S(),i(`mouseDown`)},D=()=>{S(),i(`objectChange`)};function O(){yB(_.value,`change`,C),yB(_.value,`dragging-changed`,w),yB(_.value,`mouseDown`,T),yB(_.value,`mouseUp`,E),yB(_.value,`objectChange`,D)}return K(_,e=>{e&&O()}),sn(()=>{_.value&&_.value.dispose()}),t({instance:_}),(e,t)=>{var n;return(e.camera||G(y))&&G(b)?(H(),Lt(`TresTransformControls`,{ref_key:`controlsRef`,ref:_,key:(n=e.camera||G(y))?.uuid,object:G(a),args:[e.camera||G(y),G(b).domElement],mode:G(o),enabled:G(s),axis:G(c),"translation-snap":G(l),"rotation-snap":G(u),"scale-snap":G(d),space:G(f),size:G(p),"show-x":G(m),"show-y":G(h),"show-z":G(g),visible:!0},null,8,DK)):It(``,!0)}}}),kK=[`geometry`,`render-order`],AK=zt({__name:`component`,props:{src:{},skipStrokes:{type:Boolean,default:!1},skipFills:{type:Boolean,default:!1},fillMaterial:{},strokeMaterial:{},fillMeshProps:{},strokeMeshProps:{},depth:{default:`renderOrder`}},setup(e,{expose:t}){let n=e;class r extends FU{load(e,t,n,r){let i=Array.isArray(e)?e[0]:e;super.load(i,t,n,r)}}let{src:i,skipStrokes:a,skipFills:o,fillMaterial:s,strokeMaterial:c,fillMeshProps:l,strokeMeshProps:u,depth:d}=xn(n),f=W(),p=W([]),m=W([]);t({instance:f}),Wn(async()=>h(i.value).then(e=>m.value=e.paths)),K([o,a,s,c,m],_);async function h(e){let t=e.startsWith(`e.geometry.dispose())}function _(){var e,t,r;g();let i=[],[s,c]=(()=>{let e={flat:!1,renderOrder:!1,offsetZ:!0},t={flat:0,renderOrder:0,offsetZ:.025},n=d.value;return typeof n==`number`?[!0,n]:[e[n],t[n]]})(),l=0;for(let u of m.value){let d=(e=u.userData)?.style??{},f=Object.assign({color:d.fill,opacity:d.fillOpacity,transparent:!0,side:E,depthWrite:s},n.fillMaterial);if(!o.value&&d.fill!==void 0&&d.fill!==`none`)for(let e of FU.createShapes(u)){let t=new nt(e);t.scale(1,-1,1),c&&t.translate(0,0,l++*c),i.push({geometry:t,material:f,isStroke:!1})}if(!a.value&&d.stroke!==void 0&&d.stroke!==`none`){let e=Object.assign({color:(t=u.userData)?.style.stroke,opacity:(r=u.userData)?.style.strokeOpacity,transparent:!0,side:E,depthWrite:s},n.strokeMaterial);for(let t of u.subPaths){let n=t.getPoints().map(e=>new yt(e.x,-e.y)),r=FU.pointsToStroke(n,d||`none`);c&&r.translate(0,0,l++*c),i.push({geometry:r,material:e,isStroke:!0})}}}p.value=i}return(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`svgRef`,ref:f},[(H(!0),Lt(L,null,pn(p.value,({geometry:e,material:t,isStroke:n},r)=>(H(),Lt(`TresMesh`,$t({key:`${r}`,ref_for:!0},G(n?u:l),{geometry:e,"render-order":G(d)===`renderOrder`?r:0}),[V(`TresMeshBasicMaterial`,$t({ref_for:!0},t),null,16)],16,kK))),128))],512))}});function jK(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}function MK(e){throw Error(`Could not dynamically require "`+e+`". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.`)}var NK={exports:{}},PK;function FK(){return PK||(PK=1,function(e,t){(function(t){e.exports=t()})(function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof MK==`function`&&MK;if(!s&&c)return c(o,!0);if(a)return a(o,!0);throw Error(`Cannot find module '`+o+`'`)}s=n[o]={exports:{}},t[o][0].call(s.exports,function(e){var n=t[o][1][e];return i(n||e)},s,s.exports,e,t,n,r)}return n[o].exports}for(var a=typeof MK==`function`&&MK,o=0;o>16),c((65280&r)>>8),c(255&r);return i==2?c(255&(r=l(e.charAt(n))<<2|l(e.charAt(n+1))>>4)):i==1&&(c((r=l(e.charAt(n))<<10|l(e.charAt(n+1))<<4|l(e.charAt(n+2))>>2)>>8&255),c(255&r)),a},e.fromByteArray=function(e){var t,n,r,i,a=e.length%3,o=``;function s(e){return`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.charAt(e)}for(t=0,r=e.length-a;t>18&63)+s(i>>12&63)+s(i>>6&63)+s(63&i);switch(a){case 1:o=(o+=s((n=e[e.length-1])>>2))+s(n<<4&63)+`==`;break;case 2:o=(o=(o+=s((n=(e[e.length-2]<<8)+e[e.length-1])>>10))+s(n>>4&63))+s(n<<2&63)+`=`}return o}})(n===void 0?this.base64js={}:n)}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/base64-js/lib/b64.js`,`/node_modules/gulp-browserify/node_modules/base64-js/lib`)},{buffer:3,lYpoI2:11}],3:[function(e,t,n){(function(t,r,i,a,o,s,c,l,u){var d=e(`base64-js`),f=e(`ieee754`);function i(e,t,n){if(!(this instanceof i))return new i(e,t,n);var r,a,o,s,c=typeof e;if(t===`base64`&&c==`string`)for(e=(s=e).trim?s.trim():s.replace(/^\s+|\s+$/g,``);e.length%4!=0;)e+=`=`;if(c==`number`)r=A(e);else if(c==`string`)r=i.byteLength(e,t);else{if(c!=`object`)throw Error(`First argument needs to be a number, array or string.`);r=A(e.length)}if(i._useTypedArrays?a=i._augment(new Uint8Array(r)):((a=this).length=r,a._isBuffer=!0),i._useTypedArrays&&typeof e.byteLength==`number`)a._set(e);else if(j(s=e)||i.isBuffer(s)||s&&typeof s==`object`&&typeof s.length==`number`)for(o=0;o>8,n%=256,r.push(n),r.push(t);return r}(t),e,n,r)}function h(e,t,n){var r=``;n=Math.min(e.length,n);for(var i=t;i>>0)):(t+1>>0),i}function v(e,t,n,r){if(r||(R(typeof n==`boolean`,`missing or invalid endian`),R(t!=null,`missing offset`),R(t+1>>8*(r?a:1-a)}function C(e,t,n,r,i){if(i||(R(t!=null,`missing value`),R(typeof r==`boolean`,`missing or invalid endian`),R(n!=null,`missing offset`),R(n+3>>8*(r?a:3-a)&255}function w(e,t,n,r,i){i||(R(t!=null,`missing value`),R(typeof r==`boolean`,`missing or invalid endian`),R(n!=null,`missing offset`),R(n+1this.length&&(r=this.length);var a=(r=e.length-t=this.length))return this[e]},i.prototype.readUInt16LE=function(e,t){return g(this,e,!0,t)},i.prototype.readUInt16BE=function(e,t){return g(this,e,!1,t)},i.prototype.readUInt32LE=function(e,t){return _(this,e,!0,t)},i.prototype.readUInt32BE=function(e,t){return _(this,e,!1,t)},i.prototype.readInt8=function(e,t){if(t||(R(e!=null,`missing offset`),R(e=this.length))return 128&this[e]?-1*(255-this[e]+1):this[e]},i.prototype.readInt16LE=function(e,t){return v(this,e,!0,t)},i.prototype.readInt16BE=function(e,t){return v(this,e,!1,t)},i.prototype.readInt32LE=function(e,t){return y(this,e,!0,t)},i.prototype.readInt32BE=function(e,t){return y(this,e,!1,t)},i.prototype.readFloatLE=function(e,t){return b(this,e,!0,t)},i.prototype.readFloatBE=function(e,t){return b(this,e,!1,t)},i.prototype.readDoubleLE=function(e,t){return x(this,e,!0,t)},i.prototype.readDoubleBE=function(e,t){return x(this,e,!1,t)},i.prototype.writeUInt8=function(e,t,n){n||(R(e!=null,`missing value`),R(t!=null,`missing offset`),R(t=this.length||(this[t]=e)},i.prototype.writeUInt16LE=function(e,t,n){S(this,e,t,!0,n)},i.prototype.writeUInt16BE=function(e,t,n){S(this,e,t,!1,n)},i.prototype.writeUInt32LE=function(e,t,n){C(this,e,t,!0,n)},i.prototype.writeUInt32BE=function(e,t,n){C(this,e,t,!1,n)},i.prototype.writeInt8=function(e,t,n){n||(R(e!=null,`missing value`),R(t!=null,`missing offset`),R(t=this.length||(0<=e?this.writeUInt8(e,t,n):this.writeUInt8(255+e+1,t,n))},i.prototype.writeInt16LE=function(e,t,n){w(this,e,t,!0,n)},i.prototype.writeInt16BE=function(e,t,n){w(this,e,t,!1,n)},i.prototype.writeInt32LE=function(e,t,n){T(this,e,t,!0,n)},i.prototype.writeInt32BE=function(e,t,n){T(this,e,t,!1,n)},i.prototype.writeFloatLE=function(e,t,n){E(this,e,t,!0,n)},i.prototype.writeFloatBE=function(e,t,n){E(this,e,t,!1,n)},i.prototype.writeDoubleLE=function(e,t,n){D(this,e,t,!0,n)},i.prototype.writeDoubleBE=function(e,t,n){D(this,e,t,!1,n)},i.prototype.fill=function(e,t,n){if(t||=0,n||=this.length,R(typeof(e=typeof(e||=0)==`string`?e.charCodeAt(0):e)==`number`&&!isNaN(e),`value is not a number`),R(t<=n,`end < start`),n!==t&&this.length!==0){R(0<=t&&t`},i.prototype.toArrayBuffer=function(){if(typeof Uint8Array>`u`)throw Error(`Buffer.toArrayBuffer not supported in this browser`);if(i._useTypedArrays)return new i(this).buffer;for(var e=new Uint8Array(this.length),t=0,n=e.length;t=t.length||i>=e.length);i++)t[i+n]=e[i];return i}function F(e){try{return decodeURIComponent(e)}catch{return`�`}}function I(e,t){R(typeof e==`number`,`cannot write a non-number as a number`),R(0<=e,`specified a negative value for writing an unsigned value`),R(e<=t,`value is larger than maximum value for type`),R(Math.floor(e)===e,`value has a fractional component`)}function te(e,t,n){R(typeof e==`number`,`cannot write a non-number as a number`),R(e<=t,`value larger than maximum allowed value`),R(n<=e,`value smaller than minimum allowed value`),R(Math.floor(e)===e,`value has a fractional component`)}function L(e,t,n){R(typeof e==`number`,`cannot write a non-number as a number`),R(e<=t,`value larger than maximum allowed value`),R(n<=e,`value smaller than minimum allowed value`)}function R(e,t){if(!e)throw Error(t||`Failed assertion`)}i._augment=function(e){return e._isBuffer=!0,e._get=e.get,e._set=e.set,e.get=O.get,e.set=O.set,e.write=O.write,e.toString=O.toString,e.toLocaleString=O.toString,e.toJSON=O.toJSON,e.copy=O.copy,e.slice=O.slice,e.readUInt8=O.readUInt8,e.readUInt16LE=O.readUInt16LE,e.readUInt16BE=O.readUInt16BE,e.readUInt32LE=O.readUInt32LE,e.readUInt32BE=O.readUInt32BE,e.readInt8=O.readInt8,e.readInt16LE=O.readInt16LE,e.readInt16BE=O.readInt16BE,e.readInt32LE=O.readInt32LE,e.readInt32BE=O.readInt32BE,e.readFloatLE=O.readFloatLE,e.readFloatBE=O.readFloatBE,e.readDoubleLE=O.readDoubleLE,e.readDoubleBE=O.readDoubleBE,e.writeUInt8=O.writeUInt8,e.writeUInt16LE=O.writeUInt16LE,e.writeUInt16BE=O.writeUInt16BE,e.writeUInt32LE=O.writeUInt32LE,e.writeUInt32BE=O.writeUInt32BE,e.writeInt8=O.writeInt8,e.writeInt16LE=O.writeInt16LE,e.writeInt16BE=O.writeInt16BE,e.writeInt32LE=O.writeInt32LE,e.writeInt32BE=O.writeInt32BE,e.writeFloatLE=O.writeFloatLE,e.writeFloatBE=O.writeFloatBE,e.writeDoubleLE=O.writeDoubleLE,e.writeDoubleBE=O.writeDoubleBE,e.fill=O.fill,e.inspect=O.inspect,e.toArrayBuffer=O.toArrayBuffer,e}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/buffer/index.js`,`/node_modules/gulp-browserify/node_modules/buffer`)},{"base64-js":2,buffer:3,ieee754:10,lYpoI2:11}],4:[function(e,t,n){(function(n,r,i,a,o,s,c,l,u){var i=e(`buffer`).Buffer,d=4,f=new i(d);f.fill(0),t.exports={hash:function(e,t,n,r){for(var a=t(function(e,t){e.length%d!=0&&(n=e.length+(d-e.length%d),e=i.concat([e,f],n));for(var n,r=[],a=t?e.readInt32BE:e.readInt32LE,o=0;oh?t=e(t):t.length>5]|=128<>>9<<4)]=t;for(var n=1732584193,r=-271733879,i=-1732584194,a=271733878,o=0;o>>32-i,n)}function m(e,t,n,r,i,a,o){return p(t&n|~t&r,e,t,i,a,o)}function h(e,t,n,r,i,a,o){return p(t&r|n&~r,e,t,i,a,o)}function g(e,t,n,r,i,a,o){return p(t^n^r,e,t,i,a,o)}function _(e,t,n,r,i,a,o){return p(n^(t|~r),e,t,i,a,o)}function v(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}t.exports=function(e){return d.hash(e,f,16)}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/md5.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{"./helpers":4,buffer:3,lYpoI2:11}],7:[function(e,t,n){(function(e,n,r,i,a,o,s,c,l){t.exports=function(e){for(var t,n=Array(e),r=0;r>>((3&r)<<3)&255;return n}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/rng.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{buffer:3,lYpoI2:11}],8:[function(e,t,n){(function(n,r,i,a,o,s,c,l,u){var d=e(`./helpers`);function f(e,t){e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var n,r,i,a=Array(80),o=1732584193,s=-271733879,c=-1732584194,l=271733878,u=-1009589776,d=0;d>16)+(t>>16)+(n>>16)<<16|65535&n}function m(e,t){return e<>>32-t}t.exports=function(e){return d.hash(e,f,20,!0)}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/sha.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{"./helpers":4,buffer:3,lYpoI2:11}],9:[function(e,t,n){(function(n,r,i,a,o,s,c,l,u){function d(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function f(e,t){var n,r=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],i=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],a=Array(64);e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var o,s,c=0;c>>t|e<<32-t},h=function(e,t){return e>>>t};t.exports=function(e){return p.hash(e,f,32,!0)}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/sha256.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{"./helpers":4,buffer:3,lYpoI2:11}],10:[function(e,t,n){(function(e,t,r,i,a,o,s,c,l){n.read=function(e,t,n,r,i){var a,o,s=8*i-r-1,c=(1<>1,u=-7,d=n?i-1:0,f=n?-1:1,i=e[t+d];for(d+=f,a=i&(1<<-u)-1,i>>=-u,u+=s;0>=-u,u+=r;0>1,d=i===23?2**-24-2**-77:0,f=r?0:a-1,p=r?1:-1,a=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(r=2**-o)<1&&(o--,r*=2),2<=(t+=1<=o+u?d/r:d*2**(1-u))*r&&(o++,r/=2),l<=o+u?(s=0,o=l):1<=o+u?(s=(t*r-1)*2**i,o+=u):(s=t*2**(u-1)*2**i,o=0));8<=i;e[n+f]=255&s,f+=p,s/=256,i-=8);for(o=o<>= ++ -- << >> <= >= == != && || += -= *= /= %= &= ^^ ^= |= ( ) [ ] . ! ~ * / % + - < > & ^ | ? : = , ; { }`.split(` `)),VK}var WK,GK;function KK(){return GK||(GK=1,WK=`abs.acos.all.any.asin.atan.ceil.clamp.cos.cross.dFdx.dFdy.degrees.distance.dot.equal.exp.exp2.faceforward.floor.fract.gl_BackColor.gl_BackLightModelProduct.gl_BackLightProduct.gl_BackMaterial.gl_BackSecondaryColor.gl_ClipPlane.gl_ClipVertex.gl_Color.gl_DepthRange.gl_DepthRangeParameters.gl_EyePlaneQ.gl_EyePlaneR.gl_EyePlaneS.gl_EyePlaneT.gl_Fog.gl_FogCoord.gl_FogFragCoord.gl_FogParameters.gl_FragColor.gl_FragCoord.gl_FragData.gl_FragDepth.gl_FragDepthEXT.gl_FrontColor.gl_FrontFacing.gl_FrontLightModelProduct.gl_FrontLightProduct.gl_FrontMaterial.gl_FrontSecondaryColor.gl_LightModel.gl_LightModelParameters.gl_LightModelProducts.gl_LightProducts.gl_LightSource.gl_LightSourceParameters.gl_MaterialParameters.gl_MaxClipPlanes.gl_MaxCombinedTextureImageUnits.gl_MaxDrawBuffers.gl_MaxFragmentUniformComponents.gl_MaxLights.gl_MaxTextureCoords.gl_MaxTextureImageUnits.gl_MaxTextureUnits.gl_MaxVaryingFloats.gl_MaxVertexAttribs.gl_MaxVertexTextureImageUnits.gl_MaxVertexUniformComponents.gl_ModelViewMatrix.gl_ModelViewMatrixInverse.gl_ModelViewMatrixInverseTranspose.gl_ModelViewMatrixTranspose.gl_ModelViewProjectionMatrix.gl_ModelViewProjectionMatrixInverse.gl_ModelViewProjectionMatrixInverseTranspose.gl_ModelViewProjectionMatrixTranspose.gl_MultiTexCoord0.gl_MultiTexCoord1.gl_MultiTexCoord2.gl_MultiTexCoord3.gl_MultiTexCoord4.gl_MultiTexCoord5.gl_MultiTexCoord6.gl_MultiTexCoord7.gl_Normal.gl_NormalMatrix.gl_NormalScale.gl_ObjectPlaneQ.gl_ObjectPlaneR.gl_ObjectPlaneS.gl_ObjectPlaneT.gl_Point.gl_PointCoord.gl_PointParameters.gl_PointSize.gl_Position.gl_ProjectionMatrix.gl_ProjectionMatrixInverse.gl_ProjectionMatrixInverseTranspose.gl_ProjectionMatrixTranspose.gl_SecondaryColor.gl_TexCoord.gl_TextureEnvColor.gl_TextureMatrix.gl_TextureMatrixInverse.gl_TextureMatrixInverseTranspose.gl_TextureMatrixTranspose.gl_Vertex.greaterThan.greaterThanEqual.inversesqrt.length.lessThan.lessThanEqual.log.log2.matrixCompMult.max.min.mix.mod.normalize.not.notEqual.pow.radians.reflect.refract.sign.sin.smoothstep.sqrt.step.tan.texture2D.texture2DLod.texture2DProj.texture2DProjLod.textureCube.textureCubeLod.texture2DLodEXT.texture2DProjLodEXT.textureCubeLodEXT.texture2DGradEXT.texture2DProjGradEXT.textureCubeGradEXT`.split(`.`)),WK}var qK,JK;function YK(){if(JK)return qK;JK=1;var e=BK();return qK=e.slice().concat(`layout.centroid.smooth.case.mat2x2.mat2x3.mat2x4.mat3x2.mat3x3.mat3x4.mat4x2.mat4x3.mat4x4.uvec2.uvec3.uvec4.samplerCubeShadow.sampler2DArray.sampler2DArrayShadow.isampler2D.isampler3D.isamplerCube.isampler2DArray.usampler2D.usampler3D.usamplerCube.usampler2DArray.coherent.restrict.readonly.writeonly.resource.atomic_uint.noperspective.patch.sample.subroutine.common.partition.active.filter.image1D.image2D.image3D.imageCube.iimage1D.iimage2D.iimage3D.iimageCube.uimage1D.uimage2D.uimage3D.uimageCube.image1DArray.image2DArray.iimage1DArray.iimage2DArray.uimage1DArray.uimage2DArray.image1DShadow.image2DShadow.image1DArrayShadow.image2DArrayShadow.imageBuffer.iimageBuffer.uimageBuffer.sampler1DArray.sampler1DArrayShadow.isampler1D.isampler1DArray.usampler1D.usampler1DArray.isampler2DRect.usampler2DRect.samplerBuffer.isamplerBuffer.usamplerBuffer.sampler2DMS.isampler2DMS.usampler2DMS.sampler2DMSArray.isampler2DMSArray.usampler2DMSArray`.split(`.`)),qK}var XK,ZK;function QK(){if(ZK)return XK;ZK=1;var e=KK();return e=e.slice().filter(function(e){return!/^(gl\_|texture)/.test(e)}),XK=e.concat(`gl_VertexID.gl_InstanceID.gl_Position.gl_PointSize.gl_FragCoord.gl_FrontFacing.gl_FragDepth.gl_PointCoord.gl_MaxVertexAttribs.gl_MaxVertexUniformVectors.gl_MaxVertexOutputVectors.gl_MaxFragmentInputVectors.gl_MaxVertexTextureImageUnits.gl_MaxCombinedTextureImageUnits.gl_MaxTextureImageUnits.gl_MaxFragmentUniformVectors.gl_MaxDrawBuffers.gl_MinProgramTexelOffset.gl_MaxProgramTexelOffset.gl_DepthRangeParameters.gl_DepthRange.trunc.round.roundEven.isnan.isinf.floatBitsToInt.floatBitsToUint.intBitsToFloat.uintBitsToFloat.packSnorm2x16.unpackSnorm2x16.packUnorm2x16.unpackUnorm2x16.packHalf2x16.unpackHalf2x16.outerProduct.transpose.determinant.inverse.texture.textureSize.textureProj.textureLod.textureOffset.texelFetch.texelFetchOffset.textureProjOffset.textureLodOffset.textureProjLod.textureProjLodOffset.textureGrad.textureGradOffset.textureProjGrad.textureProjGradOffset`.split(`.`)),XK}var $K,eq;function tq(){if(eq)return $K;eq=1,$K=b;var e=BK(),t=UK(),n=KK(),r=YK(),i=QK(),a=999,o=9999,s=0,c=1,l=2,u=3,d=4,f=5,p=6,m=7,h=8,g=9,_=10,v=11,y=[`block-comment`,`line-comment`,`preprocessor`,`operator`,`integer`,`float`,`ident`,`builtin`,`keyword`,`whitespace`,`eof`,`integer`];function b(b){var x=0,S=0,C=a,w,T,E=[],D=[],O=1,k=0,A=0,j=!1,M=!1,N=``,ee;b||={};var P=n,F=e;b.version===`300 es`&&(P=i,F=r);for(var I={},te={},x=0;x0)continue;i=e.slice(0,1).join(``)}return L(i),A+=i.length,E=E.slice(i.length),E.length}while(!0)}function le(){return/[^a-fA-F0-9]/.test(w)?(L(E.join(``)),C=a,x):(E.push(w),T=w,x+1)}function ue(){return w===`.`||/[eE]/.test(w)?(E.push(w),C=f,T=w,x+1):w===`x`&&E.length===1&&E[0]===`0`?(C=v,E.push(w),T=w,x+1):/[^\d]/.test(w)?(L(E.join(``)),C=a,x):(E.push(w),T=w,x+1)}function de(){return w===`f`&&(E.push(w),T=w,x+=1),/[eE]/.test(w)||(w===`-`||w===`+`)&&/[eE]/.test(T)?(E.push(w),T=w,x+1):/[^\d]/.test(w)?(L(E.join(``)),C=a,x):(E.push(w),T=w,x+1)}function fe(){if(/[^\d\w_]/.test(w)){var e=E.join(``);return C=te[e]?h:I[e]?m:p,L(E.join(``)),C=a,x}return E.push(w),T=w,x+1}}return $K}var nq,rq;function iq(){if(rq)return nq;rq=1;var e=tq();nq=t;function t(t,n){var r=e(n),i=[];return i=i.concat(r(t)),i=i.concat(r(null)),i}return nq}var aq=iq();const oq=jK(aq);var sq,cq;function lq(){if(cq)return sq;cq=1,sq=e;function e(e){for(var t=[],n=0;n=0;i--){if(n(e[i]))return i;if(r&&r(e[i]))return-1}return-1}}function t(e){return function(t){return t.type===`operator`&&(!e||t.data===e)}}function n(e){return e.type!==`whitespace`}return fq}var hq=mq();const gq=jK(hq);function _q(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return String(e)}function vq(e){var t=_q(e,`string`);return typeof t==`symbol`?t:String(t)}function yq(e,t,n){return t=vq(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bq(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function xq(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function Cq(e,t){if(e==null)return{};var n=Sq(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function wq(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function Tq(e,t){for(var n=0;n`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Mq(e,t){if(t&&(typeof t==`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return Dq(e)}function Nq(e){var t=jq();return function(){var n=Aq(e),r;if(t){var i=Aq(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return Mq(this,r)}}var Pq={position:`csm_Position`,positionRaw:`csm_PositionRaw`,pointSize:`csm_PointSize`,fragColor:`csm_FragColor`,diffuseColor:`csm_DiffuseColor`,normal:`csm_Normal`,roughness:`csm_Roughness`,metalness:`csm_Metalness`,emissive:`csm_Emissive`,ao:`csm_AO`,bump:`csm_Bump`,depthAlpha:`csm_DepthAlpha`},Fq,Iq,Lq=(Fq={},yq(Fq,`${Pq.normal}`,{"#include ":` - vec3 objectNormal = ${Pq.normal}; - #ifdef USE_TANGENT - vec3 objectTangent = vec3( tangent.xyz ); - #endif - `}),yq(Fq,`${Pq.position}`,{"#include ":` - vec3 transformed = ${Pq.position}; - `}),yq(Fq,`${Pq.positionRaw}`,{"#include ":` - vec4 csm_internal_positionUnprojected = ${Pq.positionRaw}; - mat4x4 csm_internal_unprojectMatrix = projectionMatrix * modelViewMatrix; - #ifdef USE_INSTANCING - csm_internal_unprojectMatrix = csm_internal_unprojectMatrix * instanceMatrix; - #endif - csm_internal_positionUnprojected = inverse(csm_internal_unprojectMatrix) * csm_internal_positionUnprojected; - vec3 transformed = csm_internal_positionUnprojected.xyz; - `}),yq(Fq,`${Pq.pointSize}`,{"gl_PointSize = size;":` - gl_PointSize = ${Pq.pointSize}; - `}),yq(Fq,`${Pq.diffuseColor}`,{"#include ":` - #include - diffuseColor = ${Pq.diffuseColor}; - `}),yq(Fq,`${Pq.fragColor}`,{"#include ":` - #include - gl_FragColor = ${Pq.fragColor}; - `}),yq(Fq,`${Pq.emissive}`,{"vec3 totalEmissiveRadiance = emissive;":` - vec3 totalEmissiveRadiance = ${Pq.emissive}; - `}),yq(Fq,`${Pq.roughness}`,{"#include ":` - #include - roughnessFactor = ${Pq.roughness}; - `}),yq(Fq,`${Pq.metalness}`,{"#include ":` - #include - metalnessFactor = ${Pq.metalness}; - `}),yq(Fq,`${Pq.ao}`,{"#include ":` - #include - reflectedLight.indirectDiffuse *= 1. - ${Pq.ao}; - `}),yq(Fq,`${Pq.bump}`,{"#include ":` - #include - - vec3 csm_internal_orthogonal = ${Pq.bump} - (dot(${Pq.bump}, normal) * normal); - vec3 csm_internal_projectedbump = mat3(csm_internal_vModelViewMatrix) * csm_internal_orthogonal; - normal = normalize(normal - csm_internal_projectedbump); - `}),yq(Fq,`${Pq.depthAlpha}`,{"gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );":` - gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity * ${Pq.depthAlpha} ); - `,"gl_FragColor = packDepthToRGBA( fragCoordZ );":` - gl_FragColor = packDepthToRGBA( fragCoordZ ); - gl_FragColor.a *= ${Pq.depthAlpha}; - `}),Fq),Rq=(Iq={},yq(Iq,`${Pq.position}`,{"gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );":` - gl_Position = projectionMatrix * modelViewMatrix * vec4( ${Pq.position}, 1.0 ); - `}),yq(Iq,`${Pq.positionRaw}`,{"gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );":` - gl_Position = ${Pq.position}; - `}),yq(Iq,`${Pq.diffuseColor}`,{"gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );":` - gl_FragColor = ${Pq.diffuseColor}; - `}),yq(Iq,`${Pq.fragColor}`,{"gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );":` - gl_FragColor = ${Pq.fragColor}; - `}),Iq),zq=` - -#ifdef IS_VERTEX - // csm_Position & csm_PositionRaw - #ifdef IS_UNKNOWN - vec3 csm_Position = vec3(0.0); - vec4 csm_PositionRaw = vec4(0.0); - vec3 csm_Normal = vec3(0.0); - #else - vec3 csm_Position = position; - vec4 csm_PositionRaw = projectionMatrix * modelViewMatrix * vec4(position, 1.); - vec3 csm_Normal = normal; - #endif - - // csm_PointSize - #ifdef IS_POINTSMATERIAL - float csm_PointSize = size; - #endif -#else - // csm_DiffuseColor & csm_FragColor - #if defined IS_UNKNOWN || defined IS_SHADERMATERIAL || defined IS_MESHDEPTHMATERIAL || defined IS_MESHNORMALMATERIAL || defined IS_SHADOWMATERIAL - vec4 csm_DiffuseColor = vec4(1.0, 0.0, 1.0, 1.0); - vec4 csm_FragColor = vec4(1.0, 0.0, 1.0, 1.0); - #else - #ifdef USE_MAP - vec4 _csm_sampledDiffuseColor = texture2D(map, vMapUv); - - #ifdef DECODE_VIDEO_TEXTURE - // inline sRGB decode (TODO: Remove this code when https://crbug.com/1256340 is solved) - _csm_sampledDiffuseColor = vec4(mix(pow(_csm_sampledDiffuseColor.rgb * 0.9478672986 + vec3(0.0521327014), vec3(2.4)), _csm_sampledDiffuseColor.rgb * 0.0773993808, vec3(lessThanEqual(_csm_sampledDiffuseColor.rgb, vec3(0.04045)))), _csm_sampledDiffuseColor.w); - #endif - - vec4 csm_DiffuseColor = vec4(diffuse, opacity) * _csm_sampledDiffuseColor; - vec4 csm_FragColor = vec4(diffuse, opacity) * _csm_sampledDiffuseColor; - #else - vec4 csm_DiffuseColor = vec4(diffuse, opacity); - vec4 csm_FragColor = vec4(diffuse, opacity); - #endif - #endif - - // csm_Emissive, csm_Roughness, csm_Metalness - #if defined IS_MESHSTANDARDMATERIAL || defined IS_MESHPHYSICALMATERIAL - vec3 csm_Emissive = emissive; - float csm_Roughness = roughness; - float csm_Metalness = metalness; - #endif - - // csm_AO - #if defined IS_MESHSTANDARDMATERIAL || defined IS_MESHPHYSICALMATERIAL || defined IS_MESHBASICMATERIAL || defined IS_MESHLAMBERTMATERIAL || defined IS_MESHPHONGMATERIAL || defined IS_MESHTOONMATERIAL - float csm_AO = 0.0; - #endif - - // csm_Bump - #if defined IS_MESHLAMBERTMATERIAL || defined IS_MESHMATCAPMATERIAL || defined IS_MESHNORMALMATERIAL || defined IS_MESHPHONGMATERIAL || defined IS_MESHPHYSICALMATERIAL || defined IS_MESHSTANDARDMATERIAL || defined IS_MESHTOONMATERIAL || defined IS_SHADOWMATERIAL - vec3 csm_Bump = vec3(0.0); - #endif - - float csm_DepthAlpha = 1.0; -#endif -`,Bq=` - varying mat4 csm_internal_vModelViewMatrix; -`,Vq=` - csm_internal_vModelViewMatrix = modelViewMatrix; -`,Hq=` - varying mat4 csm_internal_vModelViewMatrix; -`,Uq=` - -`,Wq,Gq=(Wq={},yq(Wq,`${Pq.position}`,`*`),yq(Wq,`${Pq.positionRaw}`,`*`),yq(Wq,`${Pq.normal}`,`*`),yq(Wq,`${Pq.pointSize}`,[`PointsMaterial`]),yq(Wq,`${Pq.diffuseColor}`,`*`),yq(Wq,`${Pq.fragColor}`,`*`),yq(Wq,`${Pq.emissive}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`]),yq(Wq,`${Pq.roughness}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`]),yq(Wq,`${Pq.metalness}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`]),yq(Wq,`${Pq.ao}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`,`MeshBasicMaterial`,`MeshLambertMaterial`,`MeshPhongMaterial`,`MeshToonMaterial`]),yq(Wq,`${Pq.bump}`,[`MeshLambertMaterial`,`MeshMatcapMaterial`,`MeshNormalMaterial`,`MeshPhongMaterial`,`MeshPhysicalMaterial`,`MeshStandardMaterial`,`MeshToonMaterial`,`ShadowMaterial`]),yq(Wq,`${Pq.depthAlpha}`,`*`),Wq),Kq=[`baseMaterial`,`fragmentShader`,`vertexShader`,`uniforms`,`patchMap`,`cacheKey`,`silent`],qq=function(e,t,n){return e.split(t).join(n)},Jq=function(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,`\\$&`)},Yq=function(e,t){return RegExp(`\\b${Jq(t)}\\b`).test(e)};function Xq(e){try{new e}catch(e){if(e.message.indexOf(`is not a constructor`)>=0)return!1}return!0}function Zq(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;Object.assign(e,t);var r=Object.getPrototypeOf(t);Object.entries(Object.getOwnPropertyDescriptors(r)).filter(function(e){var t=typeof e[1].get==`function`,n=typeof e[1].set==`function`,r=typeof e[1].value==`function`,i=e[0]===`constructor`;return(t||n||r)&&!i}).forEach(function(t){if(typeof e[t[0]]==`function`){n||console.warn(`Function ${t[0]} already exists on CSM, renaming to base_${t[0]}`);var r=`base_${t[0]}`;e[r]=t[1].value.bind(e);return}Object.defineProperty(e,t[0],t[1])})}function Qq(e){var t=e.toString().trim(),n=t.substring(t.indexOf(`{`)+1,t.lastIndexOf(`}`));return n.trim().length===0}function $q(e){return e.replace(/\s/g,``)}function eJ(e,t,n){var r=e.lastIndexOf(t);return r===-1?e:e.substring(0,r)+n+e.substring(r+t.length)}var tJ=function(e){kq(n,e);var t=Nq(n);function n(e){var r,i=e.baseMaterial,a=e.fragmentShader,o=e.vertexShader,s=e.uniforms,c=e.patchMap,l=e.cacheKey,u=e.silent,d=Cq(e,Kq);wq(this,n);var f;if(Xq(i)?f=new i(d):(f=i,Object.assign(f,d)),f.type===`RawShaderMaterial`)throw Error(`CustomShaderMaterial does not support RawShaderMaterial`);r=t.call(this),Zq(Dq(r),f,u),r.__csm={patchMap:c||{},fragmentShader:a||``,vertexShader:o||``,cacheKey:l,baseMaterial:i,instanceID:be.generateUUID(),type:f.type,isAlreadyExtended:!Qq(f.onBeforeCompile),cacheHash:``,silent:u},r.uniforms=xq(xq({},r.uniforms||{}),s||{});var p=r.__csm,m=p.fragmentShader,h=p.vertexShader,g=r.uniforms;return r.__csm.cacheHash=r.getCacheHash(),r.generateMaterial(m,h,g),r}return Eq(n,[{key:`update`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.uniforms=e.uniforms||this.uniforms,Object.assign(this.__csm,e);var t=this.__csm,n=t.fragmentShader,r=t.vertexShader,i=this.uniforms,a=this.getCacheHash();this.__csm.cacheHash=a,this.generateMaterial(n,r,i)}},{key:`clone`,value:function(){var e={baseMaterial:this.__csm.baseMaterial,fragmentShader:this.__csm.fragmentShader,vertexShader:this.__csm.vertexShader,uniforms:this.uniforms,silent:this.__csm.silent,patchMap:this.__csm.patchMap,cacheKey:this.__csm.cacheKey},t=new this.constructor(e);return Object.assign(this,t),t}},{key:`getCacheHash`,value:function(){var e=this.__csm,t=e.fragmentShader,n=e.vertexShader,r=this.uniforms,i=Object.values(r).reduce(function(e,t){var n=t.value;return e+JSON.stringify(n)},``),a=$q(t)+$q(n)+i;return a.trim().length>0?LK(a):this.customProgramCacheKey()}},{key:`generateMaterial`,value:function(e,t,n){var r=this,i=this.parseShader(e),a=this.parseShader(t);this.uniforms=n||{},this.customProgramCacheKey=function(){return r.__csm.cacheHash};var o=function(e){try{if(i){var t=r.patchShader(i,e.fragmentShader,!0);e.fragmentShader=r.getMaterialDefine()+t}if(a){var n=r.patchShader(a,e.vertexShader);e.vertexShader=`#define IS_VERTEX; -`+n,e.vertexShader=r.getMaterialDefine()+e.vertexShader}e.uniforms=xq(xq({},e.uniforms),r.uniforms),r.uniforms=e.uniforms}catch(e){console.error(e)}};if(this.__csm.isAlreadyExtended){var s=this.onBeforeCompile;this.onBeforeCompile=function(e,t){s(e,t),o(e)}}else this.onBeforeCompile=o;this.needsUpdate=!0}},{key:`patchShader`,value:function(e,t,n){var r=this,i=t,a=xq(xq({},this.getPatchMapForMaterial()),this.__csm.patchMap);Object.keys(a).forEach(function(t){Object.keys(a[t]).forEach(function(n){var o=Gq[t],s=r.__csm.type;if(t===`*`||Yq(e.main,t))if(!o||Array.isArray(o)&&o.includes(s)||o===`*`)i=qq(i,n,a[t][n]);else throw Error(`CSM: ${t} is not available in ${s}. Shader cannot compile.`)})}),i=i.replace(`void main() {`,` - #ifndef CSM_IS_HEAD_DEFAULTS_DEFINED - ${n?Hq:Bq} - #define CSM_IS_HEAD_DEFAULTS_DEFINED 1 - #endif - - ${e.header} - - void main() { - #ifndef CSM_IS_DEFAULTS_DEFINED - ${zq} - #define CSM_IS_DEFAULTS_DEFINED 1 - #endif - - #ifndef CSM_IS_MAIN_DEFAULTS_DEFINED - ${n?Uq:Vq} - #define CSM_IS_MAIN_DEFAULTS_DEFINED 1 - #endif - - // CSM_START - `);var o=this.__csm.isAlreadyExtended,s=i.includes(`// CSM_END`);return i=o&&s?eJ(i,`// CSM_END`,` - // CSM_END - ${e.main} - // CSM_END - `):i.replace(`// CSM_START`,` - // CSM_START - ${e.main} - // CSM_END - `),i=e.defines+i,i}},{key:`parseShader`,value:function(e){if(e){var t=e.replace(/\/\*\*(.*?)\*\/|\/\/(.*?)\n/gm,``),n=oq(t),r=gq(n),i=r.map(function(e){return e.name}).indexOf(`main`),a=dq(n.slice(0,i>=0?r[i].outer[0]:void 0)),o=i>=0?this.getShaderFromIndex(n,r[i].body):``;return{defines:``,header:a,main:o}}}},{key:`getMaterialDefine`,value:function(){var e=this.__csm.type;return e?`#define IS_${e.toUpperCase()}; -`:`#define IS_UNKNOWN; -`}},{key:`getPatchMapForMaterial`,value:function(){switch(this.__csm.type){case`ShaderMaterial`:return Rq;default:return Lq}}},{key:`getShaderFromIndex`,value:function(e,t){return dq(e.slice(t[0],t[1]))}}]),n}(ye),nJ=class extends Ee{constructor(e={}){super(e),rB(this,`_time`),rB(this,`_factor`),this.setValues(e),this._time={value:0},this._factor={value:1}}onBeforeCompile(e){e.uniforms||={},e.uniforms.time=this._time,e.uniforms.factor=this._factor,e.vertexShader=` - uniform float time; - uniform float factor; - ${e.vertexShader} - `,e.vertexShader=e.vertexShader.replace(`#include `,`float theta = sin( time + position.y ) / 2.0 * factor; - float c = cos( theta ); - float s = sin( theta ); - mat3 m = mat3( c, 0, s, 0, 1, 0, -s, 0, c ); - vec3 transformed = vec3( position ) * m; - vNormal = vNormal * m;`)}get time(){return this._time.value}set time(e){this._time.value=e}get factor(){return this._factor.value}set factor(e){this._factor.value=e}};const rJ=[`factor`],iJ=zt({__name:`index`,props:{speed:{default:1},factor:{default:1}},setup(e,{expose:t}){let n=e,r=W(),{extend:i,invalidate:a}=cn();i({MeshWobbleMaterial:nJ}),K(n,()=>a());let{onBeforeRender:o}=Kt();return o(({elapsed:e,invalidate:t})=>{r.value&&(r.value.time=e*n?.speed,t())}),t({instance:r}),(e,t)=>(H(),Lt(`TresMeshWobbleMaterial`,$t({ref_key:`materialRef`,ref:r,factor:e.factor},e.$attrs),null,16,rJ))}}),aJ=zt({name:`BakeShadows`,setup(){let{renderer:e}=cn();Wn(()=>{e.value.shadowMap.autoUpdate=!1,e.value.shadowMap.needsUpdate=!0})}});var oJ=`void main() { - gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); -}`,sJ=`#include - -void main() { - vec2 center = vec2(0., 1.); - float rotation = 0.0; - - - - float size = 0.03; - - vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); - vec2 scale; - scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); - scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); - - bool isPerspective = isPerspectiveMatrix( projectionMatrix ); - if ( isPerspective ) scale *= - mvPosition.z; - - vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale * size; - vec2 rotatedPosition; - rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; - rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; - mvPosition.xy += rotatedPosition; - - gl_Position = projectionMatrix * mvPosition; -}`;const cJ=new B(0,0,0),lJ=new B(0,0,0),uJ=new B(0,0,0);function dJ(e,t,n){let r=cJ.setFromMatrixPosition(e.matrixWorld);r.project(t);let i=n.width/2,a=n.height/2;return[(Number.isNaN(r.x)?0:r.x)*i+i,-(r.y*a)+a,r.z]}function fJ(e,t){let n=cJ.setFromMatrixPosition(e.matrixWorld),r=lJ.setFromMatrixPosition(t.matrixWorld),i=n.sub(r),a=t.getWorldDirection(uJ);return i.angleTo(a)>Math.PI/2}function pJ(e,t,n,r){let i=cJ.setFromMatrixPosition(e.matrixWorld),a=i.clone();a.project(t),n.setFromCamera(new yt(a.x,a.y),t);let o=n.intersectObjects(r,!0);if(o.length>0){let e=o[0].distance;return i.distanceTo(n.ray.origin)Math.abs(e)<1e-10?0:e;function _J(e,t,n=``){let r=`matrix3d(`;for(let n=0;n!==16;n++)r+=gJ(t[n]*e.elements[n])+(n===15?`)`:`,`);return n+r}const vJ=(e=>t=>_J(t,e))([1,-1,1,1,1,-1,1,1,1,-1,1,1,1,-1,1,1]),yJ=(e=>(t,n)=>_J(t,e(n),`translate(-50%,-50%)`))(e=>[1/e,1/e,1/e,1,-1/e,-1/e,-1/e,-1,1/e,1/e,1/e,1,1,1,1,1]),bJ=[`geometry`,`material`],xJ=zt({__name:`HTML`,props:{geometry:{default:new ze},material:{},as:{default:`div`},transform:{type:Boolean,default:!1},portal:{},wrapperClass:{},eps:{default:1e-4},distanceFactor:{},fullscreen:{type:Boolean},center:{type:Boolean},pointerEvents:{default:`auto`},sprite:{type:Boolean,default:!1},zIndexRange:{default:()=>[16777271,0]},occlude:{type:[Object,null,Array,Boolean,String]}},emits:[`onOcclude`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=Rn(),o=Cn(),s=U(),c=U(),{geometry:l,material:u,as:d,transform:f,portal:p,wrapperClass:m,eps:h,distanceFactor:g,fullscreen:_,center:v,pointerEvents:y,sprite:b,occlude:x,zIndexRange:S}=xn(r),{renderer:C,scene:w,camera:T,raycaster:D,sizes:O}=cn(),k=Pt(()=>document.createElement(d.value)),A=U([0,0,0]),j=U(0),M=U(),N=Pt(()=>f.value?{position:`absolute`,top:0,left:0,width:`${O.width.value}px`,height:`${O.height.value}px`,transformStyle:`preserve-3d`,pointerEvents:`none`,zIndex:2}:{position:`absolute`,transform:v.value?`translate3d(-50%,-50%,0)`:`none`,..._.value&&{top:-O.height.value/2,left:-O.width.value/2,width:`${O.width.value}px`,height:`${O.height.value}px`},zIndex:2,...Object.assign({},o.style)}),ee=Pt(()=>({position:`absolute`,pointerEvents:y.value})),P=U(null),F=U(!1),I=Pt(()=>x?.value&&x?.value!==`blending`||Array.isArray(x?.value)&&x?.value.length&&Jt(x.value[0]));K(()=>x,({value:e})=>{e===`blending`?(k.value.style.zIndex=`${Math.floor(S.value[0]/2)}`,k.value.style.position=`absolute`,k.value.style.pointerEvents=`none`):(k.value.style.zIndex=null,k.value.style.position=null,k.value.style.pointerEvents=null)}),K(()=>{var e;return[s.value,C.value,O.width.value,O.height.value,(e=a.default)?.call(a)]},([e,t])=>{var n,r,i,s,l,u;if(e&&t){let d=p?.value||t.domElement;if((n=w.value)==null||n.updateMatrixWorld(),f.value)k.value.style.cssText=`position:absolute;top:0;left:0;pointer-events:none;overflow:hidden;`;else{let t=dJ(e,T.value,{width:O.width.value,height:O.height.value});k.value.style.cssText=`position:absolute;top:0;left:0;transform:translate3d(${t[0]}px,${t[1]}px,0);transform-origin:0 0;`}d&&!k.value.parentNode&&((r=d.parentNode)==null||r.appendChild(k.value)),f.value?M.value=Rt(`div`,{id:`outer`,style:N.value},[Rt(`div`,{id:`inner`,style:ee.value},[Rt(`div`,{key:(i=c.value)?.uuid,id:w?.value.uuid,class:o.class,style:o.style},(s=a.default)?.call(a))])]):M.value=Rt(`div`,{key:(l=c.value)?.uuid,id:w?.value.uuid,style:N.value},(u=a.default)?.call(a)),fn(M.value,k.value)}}),Wn(()=>{m!=null&&m.value&&(k.value.className=m.value)});let te=U(!0),{onBeforeRender:L}=Kt();L(({invalidate:e})=>{var t,n,r,a,u,d,p;if(e(),s.value&&T.value&&C.value){(t=T.value)==null||t.updateMatrixWorld(),s.value.updateWorldMatrix(!0,!1);let e=f.value?A.value:dJ(s.value,T.value,{width:O.width.value||0,height:O.height.value||0});if(f.value||Math.abs(j.value-T.value.zoom)>h.value||Math.abs(A.value[0]-e[0])>h.value||Math.abs(A.value[1]-e[1])>h.value||Math.abs(A.value[2]-e[2])>h.value){let t=fJ(s.value,T.value),a=!1;I.value&&(Array.isArray(x?.value)?a=x?.value:x?.value!==`blending`&&(a=[w.value]));let o=te.value;if(a){let e=pJ(s.value,T.value,D.value,a);te.value=e&&!t}else te.value=!t;o!==te.value&&(i(`onOcclude`,!te.value),k.value.style.display=te.value?`block`:`none`);let c=Math.floor(S.value[0]/2),l=x!=null&&x.value?I.value?[S.value[0],c]:[c-1,0]:S.value;if(k.value.style.zIndex=`${hJ(s.value,T.value,l)}`,f.value){let[e,t]=[O.width.value/2,O.height.value/2],i=T.value.projectionMatrix.elements[5]*t,{isOrthographicCamera:a,top:o,left:c,bottom:l,right:u}=T.value,d=vJ(T.value.matrixWorldInverse),f=a?`scale(${i})translate(${gJ(-(u+c)/2)}px,${gJ((o+l)/2)}px)`:`translateZ(${i}px)`,p=s.value.matrixWorld;if(b.value&&(p=T.value.matrixWorldInverse.clone().transpose().copyPosition(p).scale(s.value.scale),p.elements[3]=p.elements[7]=p.elements[11]=0,p.elements[15]=1),k.value.style.width=`${O.width.value}px`,k.value.style.height=`${O.height.value}px`,k.value.style.perspective=a?``:`${i}px`,(n=M.value)!=null&&n.el&&(r=M.value)!=null&&r.children&&Array.isArray(M.value.children)){M.value.el.style.transform=`${f}${d}translate(${e}px,${t}px)`;let n=M.value.children[0];n&&n.el&&(n.el.style.transform=yJ(p,1/((g?.value||10)/400)))}}else{let t=g?.value===void 0?1:mJ(s.value,T.value)*g?.value;k.value.style.transform=`translate3d(${e[0]}px,${e[1]}px,0) scale(${t})`}}A.value=e,j.value=T.value.zoom}if(!I.value&&c.value&&!F.value)if(f.value){if((a=M.value)!=null&&a.el&&(u=M.value)!=null&&u.children){let e=((d=M.value)?.children)[0];if(e!=null&&e.clientWidth&&e!=null&&e.clientHeight){let{isOrthographicCamera:t}=T.value;if(t||l)o.scale&&(Array.isArray(o.scale)?o.scale instanceof B?c.value.scale.copy(o.scale.clone().divideScalar(1)):c.value.scale.set(1/o.scale[0],1/o.scale[1],1/o.scale[2]):c.value.scale.setScalar(1/o.scale));else{let t=(g?.value||10)/400,n=e.clientWidth*t,r=e.clientHeight*t;c.value.scale.set(n,r,1)}F.value=!0}}}else{let e=k.value.children[0];if(e!=null&&e.clientWidth&&e!=null&&e.clientHeight){let t=e.clientWidth*1,n=e.clientHeight*1;c.value.scale.set(t,n,1),F.value=!0}P.value.lookAt((p=T.value)?.position)}});let R=Pt(()=>({vertexShader:f.value?void 0:sJ,fragmentShader:oJ})),ne=Pt(()=>{let e=R.value;return u.value||new et({vertexShader:e.vertexShader,fragmentShader:e.fragmentShader,side:E})});return sn(()=>{ne.value&&ne.value.dispose(),k.value.remove()}),t({instance:s}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`groupRef`,ref:s},[G(x)&&!I.value?(H(),Lt(`TresMesh`,{key:0,ref_key:`meshRef`,ref:c,geometry:G(l),material:ne.value},null,8,bJ)):It(``,!0)],512))}});var SJ={exports:{}},CJ=SJ.exports,wJ;function TJ(){return wJ||(wJ=1,function(e,t){(function(t,n){e.exports=n()})(CJ,function(){var e=function(){function t(e){return i.appendChild(e.dom),e}function n(e){for(var t=0;to+1e3&&(c.update(1e3*s/(e-o),100),o=e,s=0,u)){var t=performance.memory;u.update(t.usedJSHeapSize/1048576,t.jsHeapSizeLimit/1048576)}return e},update:function(){a=this.end()},domElement:i,setMode:n}};return e.Panel=function(e,t,n){var r=1/0,i=0,a=Math.round,o=a(window.devicePixelRatio||1),s=80*o,c=48*o,l=3*o,u=2*o,d=3*o,f=15*o,p=74*o,m=30*o,h=document.createElement(`canvas`);h.width=s,h.height=c,h.style.cssText=`width:80px;height:48px`;var g=h.getContext(`2d`);return g.font=`bold `+9*o+`px Helvetica,Arial,sans-serif`,g.textBaseline=`top`,g.fillStyle=n,g.fillRect(0,0,s,c),g.fillStyle=t,g.fillText(e,l,u),g.fillRect(d,f,p,m),g.fillStyle=n,g.globalAlpha=.9,g.fillRect(d,f,p,m),{dom:h,update:function(c,_){r=Math.min(r,c),i=Math.max(i,c),g.fillStyle=n,g.globalAlpha=1,g.fillRect(0,0,s,f),g.fillStyle=t,g.fillText(a(c)+` `+e+` (`+a(r)+`-`+a(i)+`)`,l,u),g.drawImage(h,d+o,f,p-o,m,d,f,p-o,m),g.fillRect(d+p-o,f,o,m),g.fillStyle=n,g.globalAlpha=.9,g.fillRect(d+p-o,f,o,a((1-c/_)*m))}}},e})}(SJ)),SJ.exports}var EJ=TJ();const DJ=jK(EJ),OJ=zt({name:`Stats`,props:{showPanel:{type:Number,default:0}},setup(e,{expose:t}){let n=new DJ;t({instance:n});let r=document.body;n.showPanel(e.showPanel||0),r?.appendChild(n.dom);let{onBeforeRender:i,onAfterRender:a}=Kt();i(()=>n.begin(),-1/0),a(()=>n.end(),1/0),sn(()=>{r?.removeChild(n.dom)})}});var kJ=class{constructor(e,t,n){this.name=e,this.fg=t,this.bg=n,this.gradient=null,this.PR=Math.round(window.devicePixelRatio||1),this.WIDTH=90*this.PR,this.HEIGHT=48*this.PR,this.TEXT_X=3*this.PR,this.TEXT_Y=2*this.PR,this.GRAPH_X=3*this.PR,this.GRAPH_Y=15*this.PR,this.GRAPH_WIDTH=84*this.PR,this.GRAPH_HEIGHT=30*this.PR,this.canvas=document.createElement(`canvas`),this.canvas.width=this.WIDTH,this.canvas.height=this.HEIGHT,this.canvas.style.width=`90px`,this.canvas.style.height=`48px`,this.canvas.style.position=`absolute`,this.canvas.style.cssText=`width:90px;height:48px`,this.context=this.canvas.getContext(`2d`),this.initializeCanvas()}createGradient(){if(!this.context)throw Error(`No context`);let e=this.context.createLinearGradient(0,this.GRAPH_Y,0,this.GRAPH_Y+this.GRAPH_HEIGHT),t,n=this.fg;switch(this.fg.toLowerCase()){case`#0ff`:t=`#006666`;break;case`#0f0`:t=`#006600`;break;case`#ff0`:t=`#666600`;break;case`#e1e1e1`:t=`#666666`;break;default:t=this.bg;break}return e.addColorStop(0,t),e.addColorStop(1,n),e}initializeCanvas(){this.context&&(this.context.font=`bold `+9*this.PR+`px Helvetica,Arial,sans-serif`,this.context.textBaseline=`top`,this.gradient=this.createGradient(),this.context.fillStyle=this.bg,this.context.fillRect(0,0,this.WIDTH,this.HEIGHT),this.context.fillStyle=this.fg,this.context.fillText(this.name,this.TEXT_X,this.TEXT_Y),this.context.fillStyle=this.fg,this.context.fillRect(this.GRAPH_X,this.GRAPH_Y,this.GRAPH_WIDTH,this.GRAPH_HEIGHT),this.context.fillStyle=this.bg,this.context.globalAlpha=.9,this.context.fillRect(this.GRAPH_X,this.GRAPH_Y,this.GRAPH_WIDTH,this.GRAPH_HEIGHT))}update(e,t,n,r,i=0){if(!this.context||!this.gradient)return;let a=Math.min(1/0,e),o=Math.max(n,e);r=Math.max(r,t),this.context.globalAlpha=1,this.context.fillStyle=this.bg,this.context.fillRect(0,0,this.WIDTH,this.GRAPH_Y),this.context.fillStyle=this.fg,this.context.fillText(`${e.toFixed(i)} ${this.name} (${a.toFixed(i)}-${parseFloat(o.toFixed(i))})`,this.TEXT_X,this.TEXT_Y),this.context.drawImage(this.canvas,this.GRAPH_X+this.PR,this.GRAPH_Y,this.GRAPH_WIDTH-this.PR,this.GRAPH_HEIGHT,this.GRAPH_X,this.GRAPH_Y,this.GRAPH_WIDTH-this.PR,this.GRAPH_HEIGHT);let s=this.GRAPH_HEIGHT-(1-t/r)*this.GRAPH_HEIGHT;s>0&&(this.context.globalAlpha=1,this.context.fillStyle=this.gradient,this.context.fillRect(this.GRAPH_X+this.GRAPH_WIDTH-this.PR,this.GRAPH_Y+this.GRAPH_HEIGHT-s,this.PR,s))}};const AJ=class e{constructor({trackGPU:t=!1,logsPerSecond:n=30,samplesLog:r=60,samplesGraph:i=10,precision:a=2,minimal:o=!1,horizontal:s=!0,mode:c=0}={}){this.gl=null,this.ext=null,this.activeQuery=null,this.gpuQueries=[],this.threeRendererPatched=!1,this.frames=0,this.renderCount=0,this.isRunningCPUProfiling=!1,this.totalCpuDuration=0,this.totalGpuDuration=0,this.totalGpuDurationCompute=0,this.totalFps=0,this.gpuPanel=null,this.gpuPanelCompute=null,this.averageFps={logs:[],graph:[]},this.averageCpu={logs:[],graph:[]},this.averageGpu={logs:[],graph:[]},this.averageGpuCompute={logs:[],graph:[]},this.handleClick=e=>{e.preventDefault(),this.showPanel(++this.mode%this.dom.children.length)},this.handleResize=()=>{this.resizePanel(this.fpsPanel,0),this.resizePanel(this.msPanel,1),this.gpuPanel&&this.resizePanel(this.gpuPanel,2),this.gpuPanelCompute&&this.resizePanel(this.gpuPanelCompute,3)},this.mode=c,this.horizontal=s,this.minimal=o,this.trackGPU=t,this.samplesLog=r,this.samplesGraph=i,this.precision=a,this.logsPerSecond=n,this.dom=document.createElement(`div`),this.initializeDOM(),this.beginTime=performance.now(),this.prevTime=this.beginTime,this.prevCpuTime=this.beginTime,this.fpsPanel=this.addPanel(new e.Panel(`FPS`,`#0ff`,`#002`),0),this.msPanel=this.addPanel(new e.Panel(`CPU`,`#0f0`,`#020`),1),this.setupEventListeners()}initializeDOM(){this.dom.style.cssText=` - position: fixed; - top: 0; - left: 0; - opacity: 0.9; - z-index: 10000; - ${this.minimal?`cursor: pointer;`:``} - `}setupEventListeners(){this.minimal?(this.dom.addEventListener(`click`,this.handleClick),this.showPanel(this.mode)):window.addEventListener(`resize`,this.handleResize)}async init(e){if(!e){console.error(`Stats: The "canvas" parameter is undefined.`);return}this.handleThreeRenderer(e)||await this.handleWebGPURenderer(e)||this.initializeWebGL(e)}handleThreeRenderer(e){return e.isWebGLRenderer&&!this.threeRendererPatched?(this.patchThreeRenderer(e),this.gl=e.getContext(),this.trackGPU&&this.initializeGPUTracking(),!0):!1}async handleWebGPURenderer(e){return e.isWebGPURenderer?(this.trackGPU&&(e.backend.trackTimestamp=!0,await e.hasFeatureAsync(`timestamp-query`)&&this.initializeWebGPUPanels()),this.info=e.info,!0):!1}initializeWebGPUPanels(){this.gpuPanel=this.addPanel(new e.Panel(`GPU`,`#ff0`,`#220`),2),this.gpuPanelCompute=this.addPanel(new e.Panel(`CPT`,`#e1e1e1`,`#212121`),3)}initializeWebGL(e){if(e instanceof WebGL2RenderingContext)this.gl=e;else if(e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas){if(this.gl=e.getContext(`webgl2`),!this.gl)return console.error(`Stats: Unable to obtain WebGL2 context.`),!1}else return console.error(`Stats: Invalid input type. Expected WebGL2RenderingContext, HTMLCanvasElement, or OffscreenCanvas.`),!1;return!0}initializeGPUTracking(){this.gl&&(this.ext=this.gl.getExtension(`EXT_disjoint_timer_query_webgl2`),this.ext&&(this.gpuPanel=this.addPanel(new e.Panel(`GPU`,`#ff0`,`#220`),2)))}begin(){this.isRunningCPUProfiling||this.beginProfiling(`cpu-started`),!(!this.gl||!this.ext)&&(this.activeQuery&&this.gl.endQuery(this.ext.TIME_ELAPSED_EXT),this.activeQuery=this.gl.createQuery(),this.activeQuery&&this.gl.beginQuery(this.ext.TIME_ELAPSED_EXT,this.activeQuery))}end(){this.renderCount++,this.gl&&this.ext&&this.activeQuery&&(this.gl.endQuery(this.ext.TIME_ELAPSED_EXT),this.gpuQueries.push({query:this.activeQuery}),this.activeQuery=null)}update(){this.info?this.processWebGPUTimestamps():this.processGpuQueries(),this.endProfiling(`cpu-started`,`cpu-finished`,`cpu-duration`),this.updateAverages(),this.resetCounters()}processWebGPUTimestamps(){this.totalGpuDuration=this.info.render.timestamp,this.totalGpuDurationCompute=this.info.compute.timestamp,this.addToAverage(this.totalGpuDurationCompute,this.averageGpuCompute)}updateAverages(){this.addToAverage(this.totalCpuDuration,this.averageCpu),this.addToAverage(this.totalGpuDuration,this.averageGpu)}resetCounters(){this.renderCount=0,this.totalCpuDuration===0&&this.beginProfiling(`cpu-started`),this.totalCpuDuration=0,this.totalFps=0,this.beginTime=this.endInternal()}resizePanel(e,t){e.canvas.style.position=`absolute`,this.minimal?e.canvas.style.display=`none`:(e.canvas.style.display=`block`,this.horizontal?(e.canvas.style.top=`0px`,e.canvas.style.left=t*e.WIDTH/e.PR+`px`):(e.canvas.style.left=`0px`,e.canvas.style.top=t*e.HEIGHT/e.PR+`px`))}addPanel(e,t){return e.canvas&&(this.dom.appendChild(e.canvas),this.resizePanel(e,t)),e}showPanel(e){for(let t=0;t{if(this.gl){let n=this.gl.getQueryParameter(e.query,this.gl.QUERY_RESULT_AVAILABLE),r=this.gl.getParameter(this.ext.GPU_DISJOINT_EXT);if(n&&!r){let n=this.gl.getQueryParameter(e.query,this.gl.QUERY_RESULT)*1e-6;this.totalGpuDuration+=n,this.gl.deleteQuery(e.query),this.gpuQueries.splice(t,1)}}}))}endInternal(){this.frames++;let e=(performance||Date).now(),t=e-this.prevTime;if(e>=this.prevCpuTime+1e3/this.logsPerSecond){let n=Math.round(this.frames*1e3/t);this.addToAverage(n,this.averageFps),this.updatePanel(this.fpsPanel,this.averageFps,0),this.updatePanel(this.msPanel,this.averageCpu,this.precision),this.updatePanel(this.gpuPanel,this.averageGpu,this.precision),this.gpuPanelCompute&&this.updatePanel(this.gpuPanelCompute,this.averageGpuCompute),this.frames=0,this.prevCpuTime=e,this.prevTime=e}return e}addToAverage(e,t){t.logs.push(e),t.logs.length>this.samplesLog&&t.logs.shift(),t.graph.push(e),t.graph.length>this.samplesGraph&&t.graph.shift()}beginProfiling(e){window.performance&&(window.performance.mark(e),this.isRunningCPUProfiling=!0)}endProfiling(e,t,n){if(window.performance&&t&&this.isRunningCPUProfiling){window.performance.mark(t);let r=performance.measure(n,e,t);this.totalCpuDuration+=r.duration,this.isRunningCPUProfiling=!1}}updatePanel(e,t,n=2){if(t.logs.length>0){let r=0,i=.01;for(let e=0;ei&&(i=t.logs[e]);let a=0,o=.01;for(let e=0;eo&&(o=t.graph[e]);e&&e.update(r/Math.min(t.logs.length,this.samplesLog),a/Math.min(t.graph.length,this.samplesGraph),i,o,n)}}get domElement(){return this.dom}patchThreeRenderer(e){let t=e.render,n=this;e.render=function(e,r){n.begin(),t.call(this,e,r),n.end()},this.threeRendererPatched=!0}};AJ.Panel=kJ;let jJ=AJ;const MJ=zt({name:`StatsGl`,props:[`logsPerSecond`,`samplesLog`,`samplesGraph`,`precision`,`horizontal`,`minimal`,`mode`],setup(e,{expose:t}){let n=new jJ({logsPerSecond:e.logsPerSecond,samplesLog:e.samplesLog,samplesGraph:e.samplesGraph,precision:e.precision,horizontal:e.horizontal,minimal:e.minimal,mode:e.mode});t({instance:n});let r=document.body,i=n.dom||n.container;r?.appendChild(i);let{renderer:a}=cn(),{onAfterRender:o}=Kt();n.init(a.value),o(()=>n.update(),1/0),sn(()=>{r?.removeChild(i)})}}),{logError:NJ}=Ve(),PJ=[`args`],FJ=[`color`],IJ=zt({__name:`Box`,props:{args:{default:()=>[1,1,1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{invalidate:r}=cn(),{args:i,color:a}=xn(n);K(i,()=>r());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`boxRef`,ref:o},e.$attrs),[V(`TresBoxGeometry`,{args:G(i)},null,8,PJ),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(a)},null,8,FJ)])],16))}}),LJ=[`object`],RJ=zt({__name:`Line2`,props:{points:{},vertexColors:{default:null},color:{default:`white`},lineWidth:{default:1},worldUnits:{type:Boolean,default:!1},alphaToCoverage:{type:Boolean,default:!1},dashed:{type:Boolean,default:!1},dashSize:{default:1},gapSize:{default:1},dashScale:{default:1},dashOffset:{default:0}},setup(e,{expose:t}){let n=e;function r(e,t){if(!e||e.length===0)return Array.from({length:t}).fill(Oe(n.color));if(e.length===1)return Array.from({length:t}).fill(Oe(e[0]));if(e.length===t)return e.map(Oe);let r=t-1,i=e.map(Oe);closed&&i.push(i[0].clone());let a=[i[0]],o=r/(i.length-1);for(let e=1;eArray.isArray(n.vertexColors));function u(e,t){e.color=Oe(t.color),e.linewidth=t.lineWidth,e.alphaToCoverage=t.alphaToCoverage,e.worldUnits=t.worldUnits,e.vertexColors=Array.isArray(t.vertexColors),e.dashed=t.dashed,e.dashScale=t.dashScale,e.dashSize=t.dashSize,e.dashOffset=t.dashOffset,e.gapSize=t.gapSize,e.needsUpdate=!0}function d(e,t,n){let i=t.map(e=>e instanceof B?[e.x,e.y,e.z]:e instanceof yt?[e.x,e.y,0]:Array.isArray(e)&&e.length===2?[e[0],e[1],0]:e).flat();e.setPositions(i.flat());let a=r(n,t.length).map(e=>e.toArray()).flat();e.setColors(a),o.computeLineDistances()}u(i,n),d(a,n.points,n.vertexColors),o.computeLineDistances(),K(()=>[n.color,n.lineWidth,n.alphaToCoverage,n.worldUnits,l,n.dashed,n.dashScale,n.dashSize,n.dashOffset],()=>{u(i,n),c()}),K(()=>[n.points,n.vertexColors],()=>{d(a,n.points,n.vertexColors),c()}),K(()=>[s.height,s.width],()=>{i.resolution=new yt(s.width.value,s.height.value),c()}),sn(()=>{a.dispose(),i.dispose()});let f=W();return t({instance:f}),(e,t)=>(H(),Lt(`primitive`,{ref:f.value,object:G(o)},null,8,LJ))}}),zJ=zt({__name:`CatmullRomCurve3`,props:{segments:{default:20},closed:{type:Boolean,default:!1},curveType:{default:`centripetal`},tension:{default:.5},points:{},vertexColors:{},color:{},lineWidth:{},alphaToCoverage:{type:Boolean},dashed:{type:Boolean},dashSize:{},dashScale:{},dashOffset:{},gapSize:{},worldUnits:{type:Boolean}},setup(e,{expose:t}){let n=e;function r(e,t,n,r){let i=e.map(e=>e instanceof B?e:new B(...e));return new p(i,t,n,r)}function i(e,t){return e.getPoints(t)}let a=Pt(()=>r(n.points,n.closed,n.curveType,n.tension)),o=Pt(()=>i(a.value,n.segments)),s=W();return t({instance:s}),(e,t)=>(H(),Ft(RJ,{ref:s.value,points:o.value,"vertex-colors":n.vertexColors,color:n.color,"line-width":n.lineWidth,"alpha-to-coverage":n.alphaToCoverage,dashed:n.dashed,"dash-size":n.dashSize,"dash-scale":n.dashScale,"dash-offset":n.dashOffset,"gap-size":n.gapSize,"world-units":n.worldUnits},null,8,[`points`,`vertex-colors`,`color`,`line-width`,`alpha-to-coverage`,`dashed`,`dash-size`,`dash-scale`,`dash-offset`,`gap-size`,`world-units`]))}}),BJ=[`args`],VJ=[`color`],HJ=zt({__name:`Circle`,props:{args:{default:()=>[1,32,0,Math.PI*2]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`circleRef`,ref:o},e.$attrs),[V(`TresCircleGeometry`,{args:G(r)},null,8,BJ),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,VJ)])],16))}}),UJ=[`args`],WJ=[`color`],GJ=zt({__name:`Cone`,props:{args:{default:()=>[1,1,12,12,!1,0,Math.PI*2]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`coneRef`,ref:o},e.$attrs),[V(`TresConeGeometry`,{args:G(r)},null,8,UJ),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,WJ)])],16))}}),KJ=[`args`],qJ=[`color`],JJ=zt({__name:`Cylinder`,props:{args:{default:()=>[1,1,1,32,1,!1,0,Math.PI*2]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`cylinderRef`,ref:o},e.$attrs),[V(`TresCylinderGeometry`,{args:G(r)},null,8,KJ),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,qJ)])],16))}}),YJ=[`args`],XJ=[`color`],ZJ=zt({__name:`Dodecahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),a=W(),{invalidate:o}=cn();return K(r,()=>o()),t({instance:a}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`dodecahedronRef`,ref:a},e.$attrs),[V(`TresDodecahedronGeometry`,{args:G(r)},null,8,YJ),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,XJ)])],16))}}),QJ=[`args`],$J=[`color`],eY=zt({__name:`Icosahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`icosahedronRef`,ref:o},e.$attrs),[V(`TresIcosahedronGeometry`,{args:G(r)},null,8,QJ),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,$J)])],16))}}),tY=[`args`],nY=[`color`],rY=zt({__name:`Octahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`octahedronRef`,ref:o},e.$attrs),[V(`TresOctahedronGeometry`,{args:G(r)},null,8,tY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,nY)])],16))}}),iY=[`rotation`],aY=[`args`],oY=[`color`],sY=zt({__name:`Plane`,props:{args:{default:()=>[1,1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`planeRef`,ref:o,rotation:[-Math.PI/2,0,0]},e.$attrs),[V(`TresPlaneGeometry`,{args:G(r)},null,8,aY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,oY)])],16,iY))}}),cY=[`args`],lY=[`color`],uY=zt({__name:`Ring`,props:{args:{default:()=>[.5,1,32]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`ringRef`,ref:o},e.$attrs),[V(`TresRingGeometry`,{args:G(r)},null,8,cY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,lY)])],16))}}),dY=[`args`],fY=[`color`],pY=zt({__name:`RoundedBox`,props:{args:{default:()=>[1,1,1,2,.1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a,extend:o}=cn();o({RoundedBoxGeometry:bU}),K(r,()=>a());let s=W();return t({instance:s}),(e,t)=>(H(),Lt(`TresMesh`,{ref_key:`roundedBoxRef`,ref:s},[V(`TresRoundedBoxGeometry`,{args:G(r)},null,8,dY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,fY)])],512))}}),mY=[`args`],hY=[`color`],gY=zt({__name:`Sphere`,props:{args:{default:()=>[2,32,16]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`sphereRef`,ref:o},e.$attrs),[V(`TresSphereGeometry`,{args:G(r)},null,8,mY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,hY)])],16))}}),_Y=[`geometry`],vY=[`color`],yY=zt({__name:`Superformula`,props:{widthSegments:{default:32},heightSegments:{default:32},numArmsA:{default:4},expA:{default:()=>[40,1.3,.9]},numArmsB:{default:4},expB:{default:()=>[40,1.3,.9]},color:{default:`white`}},setup(e,{expose:t}){let n=e,{invalidate:r}=cn(),{cos:i,sin:a,abs:o}=Math,s=W(),c=W(n.color);function l(e,t){let n=new f,r=e*t,i=new Float32Array(Array.from({length:3*r}).fill(0)),a=new Float32Array(Array.from({length:3*r}).fill(0)),o=[];for(let n=0;nn.color,()=>c.value=n.color),K(()=>[n.widthSegments,n.heightSegments],()=>{s.value&&s.value.dispose(),s.value=l(n.widthSegments,n.heightSegments),r()},{immediate:!0}),K(()=>[n.numArmsA,n.expA[0],n.expA[1],n.expA[2],n.numArmsB,n.expB[0],n.expB[1],n.expB[2]],()=>{p(s.value,n.numArmsA,n.expA[0],n.expA[1],n.expA[2],n.numArmsB,n.expB[0],n.expB[1],n.expB[2],n.widthSegments,n.heightSegments),r()},{immediate:!0}),sn(()=>{s.value&&s.value.dispose()});let m=W();return t({instance:m}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`superformulaRef`,ref:m},e.$attrs,{geometry:s.value}),[mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:c.value},null,8,vY)])],16,_Y))}}),bY=[`rotation`],xY=[`args`],SY=[`color`],CY=zt({__name:`Tetrahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),a=W();return t({instance:a}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`tetrahedronRef`,ref:a,rotation:[-Math.PI/2,0,0]},e.$attrs),[V(`TresTetrahedronGeometry`,{args:G(r)},null,8,xY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,SY)])],16,bY))}}),wY=[`args`],TY=[`color`],EY=zt({__name:`Torus`,props:{args:{default:()=>[1,1,16,80]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`torusRef`,ref:o},e.$attrs),[V(`TresTorusGeometry`,{args:G(r)},null,8,wY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,TY)])],16))}}),DY=[`args`],OY=[`color`],kY=zt({__name:`TorusKnot`,props:{args:{default:()=>[1,.4,64,8]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`torusKnotRef`,ref:o},e.$attrs),[V(`TresTorusKnotGeometry`,{args:G(r)},null,8,DY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,OY)])],16))}}),AY=[`args`],jY=[`color`],MY=zt({__name:`Tube`,props:{args:{default:()=>[new He(new B(-1,0,0),new B(0,1,0),new B(1,0,0)),20,.2,8,!1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=xn(n),{invalidate:a}=cn();K(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),Lt(`TresMesh`,$t({ref_key:`tubeRef`,ref:o},e.$attrs),[V(`TresTubeGeometry`,{args:G(r)},null,8,AY),mn(e.$slots,`default`,{},()=>[V(`TresMeshBasicMaterial`,{color:G(i)},null,8,jY)])],16))}}),NY=zt({__name:`Align`,props:{top:{type:Boolean},right:{type:Boolean},bottom:{type:Boolean},left:{type:Boolean},front:{type:Boolean},back:{type:Boolean},disable:{type:Boolean},disableX:{type:Boolean},disableY:{type:Boolean},disableZ:{type:Boolean},precise:{type:Boolean,default:!0},onAlign:{},cacheKey:{default:void 0}},setup(e,{expose:t}){let n=e,r=W(),i=W(),a=W(),o=new l,s=new B,c=new ot;function u(){if(!i.value||!a.value||!r.value)return;i.value.matrixWorld.identity(),o.setFromObject(a.value,n.precise);let e=o.max.x-o.min.x,t=o.max.y-o.min.y,l=o.max.z-o.min.z;o.getCenter(s),o.getBoundingSphere(c);let u=n.top?t/2:n.bottom?-t/2:0,d=n.left?-e/2:n.right?e/2:0,f=n.front?l/2:n.back?-l/2:0;i.value.position.set(n.disable||n.disableX?0:-s.x+d,n.disable||n.disableY?0:-s.y+u,n.disable||n.disableZ?0:-s.z+f),typeof n.onAlign<`u`&&n.onAlign({parent:r.value.parent,container:r.value,width:e,height:t,depth:l,boundingBox:o,boundingSphere:c,center:s,verticalAlignment:u,horizontalAlignment:d,depthAlignment:f})}let d=null,f=null,p=Kt();return Wn(()=>{d?.(),d=null;let e=Sn(n.cacheKey);e===f&&f!=null||(f=e,n.cacheKey===null||n.cacheKey===void 0?d=p.onBeforeRender(()=>{u()}).off:u())}),t({instance:r,update:u}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`ref`,ref:r},[V(`TresGroup`,{ref_key:`outer`,ref:i},[V(`TresGroup`,{ref_key:`inner`,ref:a},[mn(e.$slots,`default`)],512)],512)],512))}}),PY=[`receive-shadow`,`rotation`],FY=[`args`],IY=zt({__name:`Backdrop`,props:{floor:{default:.25},segments:{default:20},receiveShadow:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,r=e=>e===0?0:2**(10*e-10),{floor:i,segments:a,receiveShadow:o}=xn(n),s=U(null);K([a,i,s],([e,t,n])=>{if(!n||e===null)return;let i=0,a=e/e/2,o=n.attributes.position;for(let n=0;n(H(),Lt(`TresGroup`,$t({ref_key:`backdropRef`,ref:c},e.$attrs),[V(`TresMesh`,{"receive-shadow":G(o),rotation:[-Math.PI/2,0,Math.PI/2]},[V(`TresPlaneGeometry`,{ref_key:`planeRef`,ref:s,args:[1,1,G(a),G(a)]},null,8,FY),mn(e.$slots,`default`,{},()=>[t[0]||=V(`TresMeshStandardMaterial`,{color:8421504,side:2},null,-1)])],8,PY)],16))}}),LY=[`object`],RY=zt({__name:`ContactShadows`,props:{opacity:{default:1},blur:{default:1},color:{default:`#000000`},tint:{default:void 0},scale:{default:10},width:{default:1},height:{default:1},far:{default:10},smooth:{type:Boolean,default:!0},resolution:{default:512},frames:{default:1/0},depthWrite:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e;function r(e,t,n){n.blurPlane.visible=!0,n.blurPlane.material=n.horizontalBlurMaterial,n.horizontalBlurMaterial.uniforms.tDiffuse.value=n.renderTarget.texture,n.horizontalBlurMaterial.uniforms.h.value=e/256,t.setRenderTarget(n.renderTargetBlur),t.render(n.blurPlane,n.shadowCamera),n.blurPlane.material=n.verticalBlurMaterial,n.verticalBlurMaterial.uniforms.tDiffuse.value=n.renderTargetBlur.texture,n.verticalBlurMaterial.uniforms.v.value=e/256,t.setRenderTarget(n.renderTarget),t.render(n.blurPlane,n.shadowCamera),n.blurPlane.visible=!1}function i(e,t,n,i){let{renderTarget:a,shadowCamera:o,depthMaterial:s}=i,c=t.background;t.background=null,t.overrideMaterial=s;let l=n.getClearAlpha();n.setClearAlpha(0),n.setRenderTarget(a),n.render(t,o),t.overrideMaterial=null,r(e.blur,n,i),e.smooth&&r(e.blur*.4,n,i),n.setRenderTarget(null),n.setClearAlpha(l),t.background=c}function a(e){let t=new ne,n=new Ct(e.resolution,e.resolution);n.texture.generateMipmaps=!1;let r=new Ct(e.resolution,e.resolution);r.texture.generateMipmaps=!1;let i=new ze(e.width,e.height).rotateX(Math.PI/2),a=new we({map:n.texture,opacity:e.opacity,transparent:!0,depthWrite:e.depthWrite,color:new g(e.color??`black`)}),o=new Ce(i,a);t.add(o),o.scale.y=-1;let s=new Ce(i);s.visible=!1,t.add(s);let c=new Fe(-e.width/2,e.width/2,e.height/2,-e.height/2,0,.3);c.rotation.x=Math.PI/2,t.add(c);let l=new Te,u=new et(SU);u.depthTest=!1;let d=new et(CU);return d.depthTest=!1,{renderTarget:n,renderTargetBlur:r,shadowCamera:c,depthMaterial:l,horizontalBlurMaterial:u,verticalBlurMaterial:d,shadowGroup:t,plane:o,blurPlane:s}}function o(e,t){let n=t.shadowCamera;n.left=-e.width/2,n.right=e.width/2,n.top=e.height/2,n.bottom=-e.height/2,n.far=e.far;let r=e.width*(Array.isArray(e.scale)?e.scale[0]:e.scale||1),i=e.height*(Array.isArray(e.scale)?e.scale[1]:e.scale||1);t.shadowGroup.scale.set(r,e.far,i)}function s(e,t){t.renderTarget.dispose(),t.renderTargetBlur.dispose(),t.renderTarget=new Ct(e,e),t.renderTarget.texture.generateMipmaps=!1,t.renderTargetBlur=new Ct(e,e),t.renderTargetBlur.texture.generateMipmaps=!1,t.plane.material.map=t.renderTarget.texture}function c(e,t){t.plane.material.color=new g(e.color??`black`),t.depthMaterial.dispose(),t.depthMaterial=new Te,t.depthMaterial.onBeforeCompile=function(t){let n=e.tint?new g(e.tint):new g(`white`),{r,g:i,b:a}=n,o=t.fragmentShader.replace(`gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );`,`gl_FragColor = vec4( ${r}, ${i}, ${a}, ( 1.0 - fragCoordZ ) * opacity);`);t.fragmentShader=o}}let{onBeforeRender:l}=Kt(),u=a(n),d=0,f=()=>d=d>=n.frames?n.frames-1:d;return l(({renderer:e,scene:t,invalidate:r})=>{d[n.opacity,n.depthWrite,n.blur,n.smooth],()=>{u.plane.material.opacity=n.opacity??1,u.plane.material.depthWrite=n.depthWrite??!1,f()},{immediate:!0}),K(()=>[n.color,n.tint],()=>{c(n,u),f()},{immediate:!0}),K(()=>[n.resolution],()=>{s(n.resolution,u),f()}),K(()=>[n.width,n.height,n.scale,n.far],()=>{o(n,u),f()},{immediate:!0}),sn(()=>{for(let e of Object.values(u))e&&`dispose`in e&&typeof e.dispose==`function`&&e.dispose()}),t({instance:u.shadowGroup}),(e,t)=>(H(),Lt(`primitive`,{object:G(u).shadowGroup},null,8,LY))}}),zY=zt({__name:`Fit`,props:{into:{default:()=>new l(new B(-.5,-.5,-.5),new B(.5,.5,.5))},precise:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,{invalidate:r}=cn(),i=W(new ne),a=W(new ne);function o(e,t){if(i.value.position.set(0,0,0),i.value.updateMatrixWorld(),a.value.scale.set(1,1,1),a.value.updateMatrixWorld(),!a.value.children.length||e===null)return;let{box3:n,use:o}=s(e,t),c=new l;a.value.children.forEach(e=>c.expandByObject(e,t));let u=c.getSize(new B),d=n.getSize(new B),f=Math.min(d.x/u.x,d.y/u.y,d.z/u.z);a.value.scale.setScalar(f===1/0?1:f),a.value.updateMatrixWorld();let p=i.value.worldToLocal(c.getCenter(new B));if(o.position){let e=i.value.worldToLocal(n.getCenter(new B));i.value.position.copy(e.sub(p.multiplyScalar(f)))}else i.value.position.copy(p.sub(p.multiplyScalar(f)));r()}function s(e,t){return typeof e==`number`?e=new B(e,e,e):Array.isArray(e)&&(e=new B(...e)),e&&`isVector3`in e&&e.isVector3?{box3:new l(new B(0,0,0),e),use:{position:!1}}:e&&`isBox3`in e&&e.isBox3?{box3:e,use:{position:!0}}:e&&`isObject3D`in e&&e.isObject3D?{box3:new l().setFromObject(e,t??!1),use:{position:!0}}:{box3:new l(new B(-.5,-.5,-.5),new B(.5,.5,.5)),use:{position:!0}}}K(()=>[n.into,n.precise],()=>o(n.into,n.precise)),an(()=>{o(n.into,n.precise),en().then(()=>{o(n.into,n.precise)})});let c=W();return t({instance:c,fit:(e=new l(new B(-.5,-.5,-.5),new B(.5,.5,.5)),t=!1)=>{o(e,t)},update:()=>o(n.into,n.precise)}),(e,t)=>(H(),Lt(`TresGroup`,{ref_key:`outer`,ref:c},[V(`TresGroup`,{ref_key:`middle`,ref:i},[V(`TresGroup`,{ref_key:`inner`,ref:a},[mn(e.$slots,`default`)],512)],512)],512))}}),BY=[`side`,`cell-size`,`section-size`,`cell-color`,`section-color`,`cell-thickness`,`section-thickness`,`fade-distance`,`fade-strength`,`fade-from`,`infinite-grid`,`follow-camera`],VY=[`args`],HY=zt({__name:`Grid`,props:{cellSize:{default:.5},cellThickness:{default:.5},cellColor:{default:`#000000`},sectionSize:{default:1},sectionThickness:{default:1},sectionColor:{default:`#0000ff`},followCamera:{type:Boolean,default:!1},infiniteGrid:{type:Boolean,default:!1},fadeDistance:{default:100},fadeStrength:{default:1},fadeFrom:{default:1},side:{default:s},args:{}},setup(e){let t=e,n=BB({cellSize:.5,sectionSize:1,fadeDistance:100,fadeStrength:1,fadeFrom:1,cellThickness:.5,sectionThickness:1,cellColor:new g,sectionColor:new g,infiniteGrid:!1,followCamera:!1,worldCamProjPosition:new B,worldPlanePosition:new B},` - varying vec3 localPosition; - varying vec4 worldPosition; - - uniform vec3 worldCamProjPosition; - uniform vec3 worldPlanePosition; - uniform float fadeDistance; - uniform bool infiniteGrid; - uniform bool followCamera; - - void main() { - localPosition = position.xzy; - if (infiniteGrid) localPosition *= 1.0 + fadeDistance; - - worldPosition = modelMatrix * vec4(localPosition, 1.0); - if (followCamera) { - worldPosition.xyz += (worldCamProjPosition - worldPlanePosition); - localPosition = (inverse(modelMatrix) * worldPosition).xyz; - } - - gl_Position = projectionMatrix * viewMatrix * worldPosition; - } - `,` - varying vec3 localPosition; - varying vec4 worldPosition; - - uniform vec3 worldCamProjPosition; - uniform float cellSize; - uniform float sectionSize; - uniform vec3 cellColor; - uniform vec3 sectionColor; - uniform float fadeDistance; - uniform float fadeStrength; - uniform float fadeFrom; - uniform float cellThickness; - uniform float sectionThickness; - - float getGrid(float size, float thickness) { - vec2 r = localPosition.xz / size; - vec2 grid = abs(fract(r - 0.5) - 0.5) / fwidth(r); - float line = min(grid.x, grid.y) + 1.0 - thickness; - return 1.0 - min(line, 1.0); - } - - void main() { - float g1 = getGrid(cellSize, cellThickness); - float g2 = getGrid(sectionSize, sectionThickness); - - vec3 from = worldCamProjPosition*vec3(fadeFrom); - float dist = distance(from, worldPosition.xyz); - float d = 1.0 - min(dist / fadeDistance, 1.0); - vec3 color = mix(cellColor, sectionColor, min(1.0, sectionThickness * g2)); - - gl_FragColor = vec4(color, (g1 + g2) * pow(d, fadeStrength)); - gl_FragColor.a = mix(0.75 * gl_FragColor.a, gl_FragColor.a, g2); - if (gl_FragColor.a <= 0.0) discard; - - #include - #include - } - `);A({GridMaterial:n});let r=W(new Ce),i=new Re,a=new B(0,1,0),o=new B(0,0,0);return Kt().onBeforeRender(e=>{i.setFromNormalAndCoplanarPoint(a,o).applyMatrix4(r.value.matrixWorld);let t=r.value.material,n=t.uniforms.worldCamProjPosition,s=t.uniforms.worldPlanePosition;i.projectPoint(e.camera.position,n.value),s.value.set(0,0,0).applyMatrix4(r.value.matrixWorld)}),(e,n)=>(H(),Lt(`TresMesh`,{ref_key:`ref`,ref:r,"frustum-culled":!1},[V(`TresGridMaterial`,{transparent:!0,"extensions-derivatives":!0,side:t.side,"cell-size":t.cellSize,"section-size":t.sectionSize,"cell-color":t.cellColor,"section-color":t.sectionColor,"cell-thickness":t.cellThickness,"section-thickness":t.sectionThickness,"fade-distance":t.fadeDistance,"fade-strength":t.fadeStrength,"fade-from":t.fadeFrom,"infinite-grid":t.infiniteGrid,"follow-camera":t.followCamera},null,8,BY),V(`TresPlaneGeometry`,{args:t.args},null,8,VY)],512))}}),UY=[`rotation-x`,`args`],WY=zt({__name:`Ocean`,props:{textureWidth:{default:512},textureHeight:{default:512},waterNormals:{default:`https://raw.githubusercontent.com/Tresjs/assets/main/textures/water-normals/Water_1_M_Normal.jpg`},sunDirection:{default:()=>new B},sunColor:{default:16777215},waterColor:{default:7695},distortionScale:{default:3.7},size:{default:1},clipBias:{default:0},alpha:{default:1},side:{default:R}},async setup(e,{expose:t}){let n,r,i=e,{textureWidth:a,textureHeight:o,waterNormals:s,sunDirection:c,sunColor:l,waterColor:u,distortionScale:d,size:f,clipBias:p,alpha:m,side:h}=xn(i),{extend:g,scene:_}=cn();g({Water:DH});let v=W(),y=W(),b=_.value.fog!==void 0;t({instance:v}),_.value.traverse(e=>{Object.prototype.hasOwnProperty.call(e,`isSky`)&&(y.value=e)}),an(async()=>{if(await en(),y.value){let e=y.value.material.uniforms.sunPosition.value;v.value.material.uniforms.sunDirection.value.copy(e)}});let{normalMap:x}=([n,r]=Gn(()=>Vt({normalMap:s.value})),n=await n,r(),n);x.wrapS=x.wrapT=Ye;let{onBeforeRender:S}=Kt();return S(({delta:e,invalidate:t})=>{v.value.material.uniforms.time.value+=e,t()}),(e,t)=>(H(),Lt(`TresWater`,{ref_key:`waterRef`,ref:v,"rotation-x":-Math.PI/2,args:[void 0,{textureWidth:G(a),textureHeight:G(o),waterNormals:G(x),sunDirection:G(c),sunColor:G(l),waterColor:G(u),distortionScale:G(d),fog:b,size:G(f),clipBias:G(p),alpha:G(m),side:G(h)}]},[mn(e.$slots,`default`,{},()=>[t[0]||=V(`TresPlaneGeometry`,{args:[1e4,1e4]},null,-1)])],8,UY))}}),GY=[`size`,`color`,`alpha-map`,`map`,`opacity`,`alpha-test`,`depth-write`,`transparent`,`size-attenuation`],KY=[`position`,`velocity`],qY=zt({__name:`Precipitation`,props:{size:{default:.1},area:{default:()=>[10,10,20]},color:{default:16777215},map:{},alphaMap:{},alphaTest:{default:.01},opacity:{default:.8},count:{default:5e3},speed:{default:.1},randomness:{default:.5},depthWrite:{type:Boolean,default:!1},transparent:{type:Boolean,default:!0},sizeAttenuation:{type:Boolean,default:!0}},setup(e,{expose:t}){let n=e,{size:r,area:i,color:a,alphaMap:o,map:s,opacity:c,alphaTest:l,depthWrite:u,transparent:d,sizeAttenuation:f,count:p,speed:m,randomness:h}=xn(n),g=W(),_=[],v=[],y=()=>{_=new Float32Array(p.value*3);for(let e=0;e{v=new Float32Array(p.value*2);for(let e=0;e{b(),y()});let x=W(null),S=W(null);Wn(async()=>{Wn(async()=>{if(typeof o.value==`string`){let e=await Vt({alphaMap:o.value});x.value=e.alphaMap}else x.value=o.value??null;if(typeof s.value==`string`){let e=await Vt({map:s.value});S.value=e.map}else S.value=s.value??null})});let{onBeforeRender:C}=Kt();C(({invalidate:e})=>{var t,n;if((t=g.value)!=null&&t.attributes.position.array&&(n=g.value)!=null&&n.attributes.position.count){let t=g.value.attributes.position.array;for(let e=0;e=i.value[0]/2)&&(t[e*3]=t[e*3]*-1),(t[e*3+1]<=-i.value[1]/2||t[e*3+1]>=i.value[1]/2)&&(t[e*3+1]=t[e*3+1]*-1)}g.value.attributes.position.needsUpdate=!0,e()}});let w=W();return t({instance:w}),(e,t)=>(H(),Lt(`TresPoints`,{ref_key:`pointsRef`,ref:w},[V(`TresPointsMaterial`,{size:G(r),color:G(a),"alpha-map":x.value,map:S.value,opacity:G(c),"alpha-test":G(l),"depth-write":G(u),transparent:G(d),"size-attenuation":G(f)},null,8,GY),V(`TresBufferGeometry`,{ref_key:`geometryRef`,ref:g,position:[G(_),3],velocity:[G(v)]},null,8,KY)],512))}}),JY=[`object`,`material-uniforms-turbidity-value`,`material-uniforms-rayleigh-value`,`material-uniforms-mieCoefficient-value`,`material-uniforms-mieDirectionalG-value`,`material-uniforms-sunPosition-value`,`scale`],YY=zt({__name:`Sky`,props:{turbidity:{default:3.4},rayleigh:{default:3},mieCoefficient:{default:.005},mieDirectionalG:{default:.7},elevation:{default:.6},azimuth:{default:180},distance:{default:45e4}},setup(e,{expose:t}){let n=e,{invalidate:r}=cn();K(n,()=>r());let i=W(),a=new NH,o=Pt(()=>s(n.azimuth,n.elevation));function s(e,t){let n=be.degToRad(90-t),r=be.degToRad(e);return new B().setFromSphericalCoords(1,n,r)}return t({instance:i,sunPosition:o.value}),(e,t)=>(H(),Lt(`primitive`,{ref_key:`skyRef`,ref:i,object:G(a),"material-uniforms-turbidity-value":n.turbidity,"material-uniforms-rayleigh-value":n.rayleigh,"material-uniforms-mieCoefficient-value":n.mieCoefficient,"material-uniforms-mieDirectionalG-value":n.mieDirectionalG,"material-uniforms-sunPosition-value":o.value,scale:n.distance},null,8,JY))}}),XY=[`position`],ZY=[`position`],QY=[`scale`],$Y=[`map`,`depth-test`,`color-space`,`color`,`opacity`],eX=zt({__name:`Smoke`,props:{color:{default:`#ffffff`},opacity:{default:.5},speed:{default:.4},width:{default:10},depth:{default:1.5},segments:{default:20},texture:{default:`https://raw.githubusercontent.com/Tresjs/assets/main/textures/clouds/defaultCloud.png`},depthTest:{type:Boolean,default:!0}},async setup(e,{expose:t}){let n,r,i=e,{width:a,depth:o,segments:s,texture:c,color:l,depthTest:u,opacity:d,speed:f}=xn(i),p=W(),m=W();t({instance:p});let h=[s].map((e,t)=>({x:a.value/2-Math.random()*a.value,y:a.value/2-Math.random()*a.value,scale:.4+Math.sin((t+1)/s.value*Math.PI)*((.2+Math.random())*10),density:Math.max(.2,Math.random()),rotation:Math.max(.002,.005*Math.random())*f.value})),g=(e,t)=>e/6*t*d.value,{map:_}=([n,r]=Gn(()=>Vt({map:c.value})),n=await n,r(),n),{renderer:v,camera:y}=cn(),b=Pt(()=>{var e;return(e=v.value)?.outputColorSpace}),{onBeforeRender:x}=Kt();return x(({invalidate:e})=>{var t,n;p.value&&y.value&&m.value&&((t=m.value)==null||t.children.forEach((e,t)=>{e.rotation.z+=h[t].rotation}),p.value.lookAt((n=y.value)?.position),e())}),(e,t)=>(H(),Lt(`TresGroup`,$t({ref_key:`smokeRef`,ref:p},e.$attrs),[V(`TresGroup`,{ref_key:`groupRef`,ref:m,position:[0,0,G(s)/2*G(o)]},[(H(!0),Lt(L,null,pn(G(h),({scale:e,x:t,y:n,density:r},i)=>(H(),Lt(`TresMesh`,{key:`${i}`,position:[t,n,-i*G(o)]},[V(`TresPlaneGeometry`,{scale:[e,e,e],rotation:[0,0,0]},null,8,QY),V(`TresMeshStandardMaterial`,{map:G(_),"depth-test":G(u),"color-space":b.value,color:G(l),"depth-write":!1,transparent:``,opacity:g(e,r)},null,8,$Y)],8,ZY))),128))],8,XY)],16))}}),tX=` -return PCSS( shadowMap, shadowCoord ); -`,nX=zt({__name:`SoftShadows`,props:{size:{default:25},samples:{default:10},focus:{default:0}},setup(e){let t=e,n=({focus:e=0,size:t=25,samples:n=10}={})=>` -#define PENUMBRA_FILTER_SIZE float(${t}) -#define RGB_NOISE_FUNCTION(uv) (randRGB(uv)) -vec3 randRGB(vec2 uv) { - return vec3( - fract(sin(dot(uv, vec2(12.75613, 38.12123))) * 13234.76575), - fract(sin(dot(uv, vec2(19.45531, 58.46547))) * 43678.23431), - fract(sin(dot(uv, vec2(23.67817, 78.23121))) * 93567.23423) - ); -} - -vec3 lowPassRandRGB(vec2 uv) { - // 3x3 convolution (average) - // can be implemented as separable with an extra buffer for a total of 6 samples instead of 9 - vec3 result = vec3(0); - result += RGB_NOISE_FUNCTION(uv + vec2(-1.0, -1.0)); - result += RGB_NOISE_FUNCTION(uv + vec2(-1.0, 0.0)); - result += RGB_NOISE_FUNCTION(uv + vec2(-1.0, +1.0)); - result += RGB_NOISE_FUNCTION(uv + vec2( 0.0, -1.0)); - result += RGB_NOISE_FUNCTION(uv + vec2( 0.0, 0.0)); - result += RGB_NOISE_FUNCTION(uv + vec2( 0.0, +1.0)); - result += RGB_NOISE_FUNCTION(uv + vec2(+1.0, -1.0)); - result += RGB_NOISE_FUNCTION(uv + vec2(+1.0, 0.0)); - result += RGB_NOISE_FUNCTION(uv + vec2(+1.0, +1.0)); - result *= 0.111111111; // 1.0 / 9.0 - return result; -} -vec3 highPassRandRGB(vec2 uv) { - // by subtracting the low-pass signal from the original signal, we're being left with the high-pass signal - // hp(x) = x - lp(x) - return RGB_NOISE_FUNCTION(uv) - lowPassRandRGB(uv) + 0.5; -} - - -vec2 vogelDiskSample(int sampleIndex, int sampleCount, float angle) { - const float goldenAngle = 2.399963f; // radians - float r = sqrt(float(sampleIndex) + 0.5f) / sqrt(float(sampleCount)); - float theta = float(sampleIndex) * goldenAngle + angle; - float sine = sin(theta); - float cosine = cos(theta); - return vec2(cosine, sine) * r; -} -float penumbraSize( const in float zReceiver, const in float zBlocker ) { // Parallel plane estimation - return (zReceiver - zBlocker) / zBlocker; -} -float findBlocker(sampler2D shadowMap, vec2 uv, float compare, float angle) { - float texelSize = 1.0 / float(textureSize(shadowMap, 0).x); - float blockerDepthSum = float(${e}); - float blockers = 0.0; - - int j = 0; - vec2 offset = vec2(0.); - float depth = 0.; - - #pragma unroll_loop_start - for(int i = 0; i < ${n}; i ++) { - offset = (vogelDiskSample(j, ${n}, angle) * texelSize) * 2.0 * PENUMBRA_FILTER_SIZE; - depth = unpackRGBAToDepth( texture2D( shadowMap, uv + offset)); - if (depth < compare) { - blockerDepthSum += depth; - blockers++; - } - j++; - } - #pragma unroll_loop_end - - if (blockers > 0.0) { - return blockerDepthSum / blockers; - } - return -1.0; -} - - -float vogelFilter(sampler2D shadowMap, vec2 uv, float zReceiver, float filterRadius, float angle) { - float texelSize = 1.0 / float(textureSize(shadowMap, 0).x); - float shadow = 0.0f; - int j = 0; - vec2 vogelSample = vec2(0.0); - vec2 offset = vec2(0.0); - #pragma unroll_loop_start - for (int i = 0; i < ${n}; i++) { - vogelSample = vogelDiskSample(j, ${n}, angle) * texelSize; - offset = vogelSample * (1.0 + filterRadius * float(${t})); - shadow += step( zReceiver, unpackRGBAToDepth( texture2D( shadowMap, uv + offset ) ) ); - j++; - } - #pragma unroll_loop_end - return shadow * 1.0 / ${n}.0; -} - -float PCSS (sampler2D shadowMap, vec4 coords) { - vec2 uv = coords.xy; - float zReceiver = coords.z; // Assumed to be eye-space z in this code - float angle = highPassRandRGB(gl_FragCoord.xy).r * PI2; - float avgBlockerDepth = findBlocker(shadowMap, uv, zReceiver, angle); - if (avgBlockerDepth == -1.0) { - return 1.0; - } - float penumbraRatio = penumbraSize(zReceiver, avgBlockerDepth); - return vogelFilter(shadowMap, uv, zReceiver, 1.25 * penumbraRatio, angle); -}`,r=$e.shadowmap_pars_fragment,{renderer:i,scene:a,camera:o}=gn();function s(e,t){let i=r;i=i.replace(`#ifdef USE_SHADOWMAP`,`#ifdef USE_SHADOWMAP - ${n(t)}`),i=i.replace(`#if defined( SHADOWMAP_TYPE_PCF )`,`${tX} - #if defined( SHADOWMAP_TYPE_PCF )`),$e.shadowmap_pars_fragment=i,e.shadowMap.enabled=!0}function c(e,t,n){t.traverse(t=>{var n,r;`material`in t&&t.material&&(e.properties.remove(t.material),typeof t.material==`object`&&`dispose`in t.material&&typeof t.material.dispose==`function`&&((r=(n=t.material).dispose)==null||r.call(n)))}),e.info.programs&&(e.info.programs.length=0),e.compile(t,n)}return sn(()=>{o.value&&($e.shadowmap_pars_fragment=r,c(i.value,a.value,o.value))}),K(t,()=>{o.value&&(s(i.value,t),c(i.value,a.value,o.value))},{immediate:!0}),(e,t)=>(H(),Lt(`TresGroup`))}});var rX=class extends Ne{constructor(){super(),rB(this,`virtualScene`,null),this.virtualScene=new Ze}add(...e){return this.virtualScene.add(...e),this}dispose(){this.virtualScene.traverse(e=>{e instanceof Ce&&(e.geometry.dispose(),e.material.dispose(),e.material.map&&e.material.map.dispose(),this.virtualScene.remove(e))}),this.virtualScene=null}};const iX=zt({__name:`component`,props:{background:{type:[Boolean,String],default:!1},blur:{default:0},files:{default:()=>[]},path:{default:``},preset:{default:void 0},resolution:{default:256},near:{default:1},far:{default:1e3},frames:{default:1/0},backgroundIntensity:{default:1},backgroundRotation:{},environmentIntensity:{default:1},environmentRotation:{},syncMaterials:{type:Boolean}},async setup(e,{expose:t}){let n,r,i=e,a=U(null);t({texture:a});let{extend:o,renderer:c,scene:l}=cn();o({EnvironmentScene:rX});let d=null,f=U(null),p=null,m=U(null),h=([n,r]=Gn(()=>yG(i,f)),n=await n,r(),n),{onBeforeRender:g}=Kt(),_=1;g(()=>{if(p&&m.value&&f.value&&(i.frames===1/0||_{if(e&&t!=null&&t.virtualScene){let n=yn(t).virtualScene,r=n.children.find(e=>e instanceof Ce&&e.userData.isEnvironment);r||(r=new Ce(new u(1,1,1),new we({side:s})),r.userData.isEnvironment=!0,n.add(r)),n.background=e,n.backgroundBlurriness=i.blur}},{immediate:!0});let y=e=>{e&&d!=null&&d.length?(l.value.environment=e.texture,i.background&&(l.value.background=e.texture)):h.value&&(l.value.environment=h.value,i.background&&(l.value.background=h.value))};return K(h,()=>{f.value&&y(f.value)},{immediate:!0,deep:!0}),K(()=>Rn().default,e=>{var t;if(e&&(d=e(),Array.isArray(d)&&d.length>0)){o({EnvironmentScene:rX}),f.value=new St(i.resolution),f.value.texture.type=z,p=new v(i.near,i.far,f.value),y(f.value);return}(t=f.value)==null||t.dispose(),f.value=null,y()},{immediate:!0,deep:!0}),a.value=h.value,sn(()=>{var e,t;(e=m.value)==null||e.dispose(),(t=f.value)==null||t.dispose()}),(e,t)=>f.value?(H(),Lt(`TresEnvironmentScene`,{key:0,ref_key:`environmentScene`,ref:m},[mn(e.$slots,`default`)],512)):It(``,!0)}}),aX={key:0,args:[0,1,64]},oX={key:1,args:[.5,1,64]},sX={key:2},cX=[`tone-mapped`,`map`,`side`,`color`],lX=zt({__name:`index`,props:{args:{default:null},form:{default:`rect`},toneMapped:{type:Boolean,default:!1},map:{default:null},intensity:{default:1},color:{default:new g(16777215)}},setup(e,{expose:t}){let n=e,r=U(),i=U();return Wn(()=>{r.value&&(r.value.color.copy(new g(n.color)),r.value.color.multiplyScalar(n.intensity),r.value.needsUpdate=!0)}),t({mesh:i}),(e,t)=>(H(),Lt(`TresMesh`,{ref_key:`mesh`,ref:i},[e.form===`circle`?(H(),Lt(`TresRingGeometry`,aX)):e.form===`ring`?(H(),Lt(`TresRingGeometry`,oX)):e.form===`rect`?(H(),Lt(`TresPlaneGeometry`,sX)):(H(),Ft(n.form,{key:3,args:e.args},null,8,[`args`])),V(`TresMeshBasicMaterial`,{ref_key:`material`,ref:r,"tone-mapped":e.toneMapped,map:e.map,side:G(E),color:e.color},null,8,cX)],512))}});var uX=zt({__name:`Model`,props:{model:{},idleAnimation:{},loadAnimations:{},position:{},paused:{type:Boolean}},emits:[`loadModelProgress`,`error`],setup(e,{expose:t,emit:n}){let i=e,a=n,o,s=U(),c=U(),{scene:l}=cn(),{onBeforeRender:u}=Kt(),d=Tn(),f=Nn(),p=U();K(()=>i.position,([e,t,n])=>{s.value&&s.value.scene.position.set(e,t,n)}),an(async()=>{if(l.value)try{let e=await Qt(i.model,{scene:l.value,lookAt:!0,position:i.position,onProgress:e=>a(`loadModelProgress`,Number.parseFloat((100*(e.loaded/e.total)).toFixed(2)))});if(!e){console.warn(`No VRM model loaded`);return}let t=await Zt(i.idleAnimation),n=await Nt(e,t);if(!n){console.warn(`No VRM animation loaded`);return}c.value=new r(e.scene),c.value.clipAction(n).play(),p.value=Vn(e),s.value=e,o=u(({delta:e})=>{var t,n,r;(t=c.value)?.update(e),(n=s.value)?.update(e),d.update(s.value,e),f.update(s.value,e),(r=p.value)?.update(e)}).off}catch(e){a(`error`,e)}}),sn(()=>{o?.(),s.value&&(s.value.scene.removeFromParent(),vt.deepDispose(s.value.scene))}),t({setExpression(e){var t;(t=p.value)?.setEmotionWithResetAfter(e,1e3)}});let{pause:m,resume:h}=Kt();return K(()=>i.paused,e=>{e?m():h()}),(e,t)=>mn(e.$slots,`default`)}}),dX=uX;const fX=[`position`],pX={absolute:``,bottom:`3`,right:`3`},mX={flex:`~ row`,"cursor-pointer":``},hX=[`checked`,`aria-checked`],gX={key:0,"min-w":`50vw`,z:`{var t;(t=f.value)?.setExpression(e)}}),(e,t)=>(H(),Ft(Qe,{relative:``},{default:Kn(({height:e,width:n})=>[Rt(G(xt),{alpha:!0,antialias:!0,width:n,height:e},{default:Kn(()=>[Rt(G(CK)),V(`TresPerspectiveCamera`,{position:[o.value,s.value,c.value]},null,8,fX),t[14]||=V(`TresDirectionalLight`,{color:16777215,intensity:1.2,position:[1,1,1]},null,-1),t[15]||=V(`TresAmbientLight`,{color:16777215,intensity:1.5},null,-1),Rt(dX,{ref_key:`modelRef`,ref:f,model:r.model,"idle-animation":r.idleAnimation,position:[l.value,u.value,d.value],paused:r.paused,onLoadModelProgress:t[0]||=e=>i(`loadModelProgress`,e),onError:t[1]||=e=>i(`error`,e)},null,8,[`model`,`idle-animation`,`position`,`paused`])]),_:2,__:[14,15]},1032,[`width`,`height`]),V(`div`,pX,[V(`div`,mX,[V(`label`,{class:tn([a.value?`bg-neutral-300 dark:bg-neutral-200`:`bg-neutral-100 dark:bg-neutral-700`]),transition:`all ease-in-out duration-500`,text:`lg neutral-500 dark:neutral-400`,"m-1":``,"h-fit":``,"w-fit":``,"cursor-pointer":``,"appearance-none":``,"gap-1":``,"rounded-lg":``,"rounded-md":``,"border-none":``,"p-2":``,"outline-none":``},[qn(V(`input`,{"onUpdate:modelValue":t[2]||=e=>a.value=e,checked:a.value,"aria-checked":a.value,name:`showLive2DViewerInspector`,type:`checkbox`,"appearance-none":``,"outline-none":``,hidden:``},null,8,hX),[[Hn,a.value]]),t[16]||=V(`div`,{"select-none":``},[V(`div`,{"i-solar:bug-bold-duotone":``})],-1)],2)]),Rt(G(pt),null,{default:Kn(()=>[a.value?(H(),Lt(`div`,gX,[V(`div`,_X,[V(`div`,vX,[V(`span`,null,vn(G(p)(`stage.viewers.debug-menu.vrm.model.title`)),1)]),Rt(h,{"h-fit":``,"w-full":``,flex:`~ col`,border:`~ gray/25 rounded-lg`,divide:`y dashed gray/25`,"of-clip":``,"shadow-sm":``},{label:Kn(()=>[V(`span`,yX,vn(G(p)(`stage.viewers.debug-menu.vrm.camera`)),1)]),default:Kn(()=>[V(`div`,bX,[t[17]||=V(`div`,{text:`neutral-400 dark:neutral-500`},[V(`span`,null,`X`)],-1),V(`label`,xX,[Rt(Vi,{modelValue:o.value,"onUpdate:modelValue":t[3]||=e=>o.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),V(`div`,SX,[V(`span`,null,vn(o.value),1)]),t[18]||=V(`div`,{text:`neutral-400 dark:neutral-500`},[V(`span`,null,`Y`)],-1),V(`label`,CX,[Rt(Vi,{modelValue:s.value,"onUpdate:modelValue":t[4]||=e=>s.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),V(`div`,wX,[V(`span`,null,vn(s.value),1)]),t[19]||=V(`div`,{text:`neutral-400 dark:neutral-500`},[V(`span`,null,`Z`)],-1),V(`label`,TX,[Rt(Vi,{modelValue:c.value,"onUpdate:modelValue":t[5]||=e=>c.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),V(`div`,EX,[V(`span`,null,vn(c.value),1)])])]),_:1}),Rt(h,{"h-fit":``,"w-full":``,flex:`~ col`,border:`~ gray/25 rounded-lg`,divide:`y dashed gray/25`,"of-clip":``,"shadow-sm":``},{label:Kn(()=>[V(`span`,DX,vn(G(p)(`stage.viewers.debug-menu.vrm.model.title`)),1)]),default:Kn(()=>[V(`div`,OX,[t[20]||=V(`div`,{text:`neutral-400 dark:neutral-500`},[V(`span`,null,`X`)],-1),V(`label`,kX,[Rt(Vi,{modelValue:l.value,"onUpdate:modelValue":t[6]||=e=>l.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),V(`div`,AX,[V(`span`,null,vn(l.value),1)]),t[21]||=V(`div`,{text:`neutral-400 dark:neutral-500`},[V(`span`,null,`Y`)],-1),V(`label`,jX,[Rt(Vi,{modelValue:u.value,"onUpdate:modelValue":t[7]||=e=>u.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),V(`div`,MX,[V(`span`,null,vn(u.value),1)]),t[22]||=V(`div`,{text:`neutral-400 dark:neutral-500`},[V(`span`,null,`Z`)],-1),V(`label`,NX,[Rt(Vi,{modelValue:d.value,"onUpdate:modelValue":t[8]||=e=>d.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),V(`div`,PX,[V(`span`,null,vn(d.value),1)])])]),_:1}),V(`div`,FX,[V(`span`,null,vn(G(p)(`stage.viewers.debug-menu.emotions`)),1)]),V(`div`,IX,[V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[9]||=e=>{var t;return(t=f.value)?.setExpression(`neutral`)}},vn(G(p)(`stage.viewers.debug-menu.emotions-btn.neutral`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[10]||=e=>{var t;return(t=f.value)?.setExpression(`surprised`)}},vn(G(p)(`stage.viewers.debug-menu.emotions-btn.surprised`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[11]||=e=>{var t;return(t=f.value)?.setExpression(`sad`)}},vn(G(p)(`stage.viewers.debug-menu.emotions-btn.sad`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[12]||=e=>{var t;return(t=f.value)?.setExpression(`angry`)}},vn(G(p)(`stage.viewers.debug-menu.emotions-btn.angry`)),1),V(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[13]||=e=>{var t;return(t=f.value)?.setExpression(`happy`)}},vn(G(p)(`stage.viewers.debug-menu.emotions-btn.happy`)),1)])])])):It(``,!0)]),_:1})])]),_:1}))}}),RX=LX;const zX={relative:``},BX={"h-full":``,"w-full":``};var VX=zt({__name:`Stage`,props:{paused:{type:Boolean,default:!1},focusAt:{},xOffset:{},yOffset:{}},setup(e){let t=U(),n=U(),{stageView:r}=_n(Ln()),{mouthOpenSize:i}=_n(zn()),{audioContext:a,calculateVolume:o}=wn(),{onBeforeMessageComposed:s,onBeforeSend:c,onTokenLiteral:l,onTokenSpecial:u,onStreamEnd:d,onAssistantResponseEnd:f}=Dn(),p=Fn(),m=U(),h=U(!1),g=U(!1),_=In({handlers:[e=>new Promise(t=>{let n=a.createBufferSource();n.buffer=e.data.audioBuffer,n.connect(a.destination),n.connect(m.value),h.value=!0,n.start(0),n.onended=()=>{h.value=!1,t()}})]}),v=Bn(),{ssmlEnabled:y,activeSpeechProvider:b,activeSpeechModel:x,activeSpeechVoice:S,pitch:C}=_n(v);async function w(e){try{if(!b.value){console.warn(`No active speech provider configured`);return}if(!S.value){console.warn(`No active speech voice configured`);return}let t=p.getProviderInstance(b.value);if(!t){console.error(`Failed to initialize speech provider`);return}let n=p.getProviderConfig(b.value),r=y.value?v.generateSSML(e.data,S.value,{...n,pitch:C.value}):e.data,i=await Ut({...t.speech(x.value,n),input:r,voice:S.value.id}),o=await a.decodeAudioData(i);await _.add({audioBuffer:o,text:e.data})}catch(e){console.error(`Speech generation failed:`,e)}}let T=In({handlers:[w]});T.on(`add`,e=>{console.debug(`ttsQueue added`,e)});let E=Pn(T),{live2dCurrentMotion:k}=_n(Ln()),A=In({handlers:[async e=>{if(r.value===`3d`){let t=O[e.data];if(!t)return;await n.value.setExpression(t)}else r.value===`2d`&&(k.value={group:D[e.data]})}]}),M=jn(A);M.onHandlerEvent(`emotion`,e=>{console.debug(`emotion detected`,e)});let N=An();N.onHandlerEvent(`delay`,e=>{console.debug(`delay detected`,e)});function ee(){requestAnimationFrame(ee),h.value&&(i.value=o(m.value,`linear`))}function P(){g.value||(ee(),a.resume(),g.value=!0)}function F(){m.value||=a.createAnalyser()}return s(async()=>{F(),P()}),c(async()=>{k.value={group:j}}),l(async e=>{await E.add(e)}),u(async e=>{await N.add(e),await M.add(e)}),d(async()=>{await N.add(Xt)}),f(async e=>{}),sn(()=>{g.value=!1}),an(async()=>{t.value=eB({connection:{bundles:Jn()}}),await t.value.execute(`CREATE TABLE memory_test (vec FLOAT[768]);`)}),(e,t)=>(H(),Lt(`div`,zX,[V(`div`,BX,[G(r)===`2d`?(H(),Ft(T_,{key:0,"focus-at":e.focusAt,"mouth-open-size":G(i),"min-w":`50% i.map(i=>d[i]); +import{A as e,B as t,C as n,H as r,I as i,J as a,Q as o,V as s,a$ as c,a2 as l,aI as u,aJ as d,aK as f,aR as p,aS as m,aq as h,at as g,av as _,ax as v,ay as y,az as b,b$ as x,b0 as S,b2 as C,b3 as w,b4 as T,b5 as E,b6 as D,b7 as O,b8 as k,b9 as A,bA as j,bB as M,bC as N,bD as ee,bE as P,bF as F,bG as I,bH as te,bI as L,bJ as R,bK as ne,bL as z,bM as re,bN as ie,bO as ae,bP as oe,bQ as se,bR as ce,bS as le,bT as ue,bU as de,bV as fe,bW as pe,bX as B,bY as me,bZ as he,b_ as ge,ba as _e,bb as ve,bc as ye,bd as be,be as xe,bf as Se,bg as Ce,bh as we,bi as Te,bj as Ee,bk as De,bl as Oe,bm as ke,bn as Ae,bo as je,bp as Me,bq as Ne,br as Pe,bs as Fe,bt as Ie,bu as Le,bv as Re,bw as ze,bx as Be,by as Ve,bz as He,c0 as Ue,c1 as We,c2 as Ge,c3 as Ke,c4 as qe,c5 as Je,c6 as Ye,c7 as Xe,c8 as Ze,c9 as Qe,cA as $e,cB as et,cC as tt,cD as nt,cE as rt,cF as it,cG as at,cH as ot,cI as st,cJ as ct,cK as lt,cL as ut,cM as dt,cN as ft,cO as pt,cP as mt,cQ as ht,cR as gt,cS as _t,cV as vt,c_ as yt,ca as bt,cb as xt,cc as St,cd as Ct,ce as wt,cf as Tt,cg as Et,ch as Dt,ci as Ot,cj as kt,ck as At,cl as jt,cm as Mt,cn as Nt,co as Pt,cp as Ft,cq as It,cr as Lt,cs as Rt,ct as zt,cu as Bt,cv as Vt,cw as Ht,cx as Ut,cy as Wt,cz as Gt,d as Kt,d$ as qt,d3 as Jt,d6 as Yt,d7 as Xt,d9 as Zt,dA as Qt,dB as $t,dC as en,dF as V,dH as H,dJ as tn,dK as U,dL as W,dM as nn,dP as rn,dR as an,dS as on,dT as sn,dU as cn,dV as G,dW as ln,dX as un,da as dn,db as fn,dc as pn,df as mn,dj as K,dl as hn,dm as gn,dn as _n,dp as vn,dr as yn,ds as bn,du as xn,dv as Sn,dw as Cn,dz as wn,e as Tn,e1 as En,e2 as Dn,e3 as On,e6 as kn,e7 as An,e8 as jn,e9 as Mn,ea as Nn,g as Pn,i as Fn,p as In,q as Ln,r as Rn,s as zn,t as Bn,u as Vn,v as Hn,w as Un,x as Wn,y as Gn,z as Kn}from"./index-C9kcCpP-.js";import{b as qn}from"./import-url-browser-D6BBwmoZ.js";var Jn=Xt({__name:`Range`,props:{modelValue:{},min:{default:0},max:{default:100},step:{default:1},disabled:{type:Boolean,default:!1}},emits:[`update:modelValue`,`mousedown`],setup(e,{emit:t}){let n=e,r=t,i=U(null);function a(e,t,n){return Math.min(Math.max(e,t),n)}function o(e){let t=e.toString();if(t.includes(`e-`))return Number.parseInt(t.split(`e-`)[1],10);let n=t.includes(`.`)?t.split(`.`)[1].length:0;return n}function s(e,t){let n=o(t),r=10**(n+3);return Number.parseFloat((e*r/r).toFixed(n))}let c=Sn(()=>s(a(n.modelValue,n.min,n.max),n.step)),l=Sn(()=>{let e=(c.value-n.min)/(n.max-n.min)*100;return{width:`${e}%`,backgroundSize:`${e}% 100%`}});function u(e){if(!i.value)return c.value;let t=i.value.getBoundingClientRect(),r=e.clientX-t.left,a=r/t.width,o=n.max-n.min,s=n.min+o*a,l=Math.round(s/n.step)*n.step;return Math.min(Math.max(l,n.min),n.max)}function d(e){if(n.disabled)return;let t=u(e);r(`update:modelValue`,t)}function f(e){if(n.disabled)return;e.preventDefault();let t=u(e);r(`update:modelValue`,t),window.addEventListener(`mousemove`,d),window.addEventListener(`mouseup`,p)}function p(e){window.removeEventListener(`mousemove`,d),window.removeEventListener(`mouseup`,p)}return mn(()=>{window.removeEventListener(`mousemove`,d),window.removeEventListener(`mouseup`,p)}),(e,t)=>(H(),fn(`span`,{ref_key:`sliderRef`,ref:i,class:Dn([`range-slider disabled:pointer-events-none disabled:cursor-default disabled:opacity-50`,{disabled:e.disabled}]),bg:`[#e6e1fc] dark:[#676085]`,"touch-action-none":``,relative:``,"inline-block":``,"w-full":``,"cursor-ew-resize":``,"rounded-sm":``,onMousedown:f},[K(`span`,{style:On(l.value),bg:`[#cabeff] dark:[#4e34b9]`,relative:``,block:``,"rounded-sm":``,h:`[14px]`},null,4),K(`span`,{role:`slider`,class:`slider-thumb`,style:On({left:`${(c.value-e.min)/(e.max-e.min)*100}%`}),absolute:``,"rounded-sm":``,w:`[1px]`,h:`[14px]`,bg:`neutral-100 dark:neutral-400`,top:`50%`,transform:`translate-x-[50%] translate-y-[-50%]`},null,4)],34))}}),Yn=Jn,Xn;(function(e){e[e.WEBGL_LEGACY=0]=`WEBGL_LEGACY`,e[e.WEBGL=1]=`WEBGL`,e[e.WEBGL2=2]=`WEBGL2`})(Xn||={});var Zn;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.WEBGL=1]=`WEBGL`,e[e.CANVAS=2]=`CANVAS`})(Zn||={});var Qn;(function(e){e[e.COLOR=16384]=`COLOR`,e[e.DEPTH=256]=`DEPTH`,e[e.STENCIL=1024]=`STENCIL`})(Qn||={});var $n;(function(e){e[e.NORMAL=0]=`NORMAL`,e[e.ADD=1]=`ADD`,e[e.MULTIPLY=2]=`MULTIPLY`,e[e.SCREEN=3]=`SCREEN`,e[e.OVERLAY=4]=`OVERLAY`,e[e.DARKEN=5]=`DARKEN`,e[e.LIGHTEN=6]=`LIGHTEN`,e[e.COLOR_DODGE=7]=`COLOR_DODGE`,e[e.COLOR_BURN=8]=`COLOR_BURN`,e[e.HARD_LIGHT=9]=`HARD_LIGHT`,e[e.SOFT_LIGHT=10]=`SOFT_LIGHT`,e[e.DIFFERENCE=11]=`DIFFERENCE`,e[e.EXCLUSION=12]=`EXCLUSION`,e[e.HUE=13]=`HUE`,e[e.SATURATION=14]=`SATURATION`,e[e.COLOR=15]=`COLOR`,e[e.LUMINOSITY=16]=`LUMINOSITY`,e[e.NORMAL_NPM=17]=`NORMAL_NPM`,e[e.ADD_NPM=18]=`ADD_NPM`,e[e.SCREEN_NPM=19]=`SCREEN_NPM`,e[e.NONE=20]=`NONE`,e[e.SRC_OVER=0]=`SRC_OVER`,e[e.SRC_IN=21]=`SRC_IN`,e[e.SRC_OUT=22]=`SRC_OUT`,e[e.SRC_ATOP=23]=`SRC_ATOP`,e[e.DST_OVER=24]=`DST_OVER`,e[e.DST_IN=25]=`DST_IN`,e[e.DST_OUT=26]=`DST_OUT`,e[e.DST_ATOP=27]=`DST_ATOP`,e[e.ERASE=26]=`ERASE`,e[e.SUBTRACT=28]=`SUBTRACT`,e[e.XOR=29]=`XOR`})($n||={});var er;(function(e){e[e.POINTS=0]=`POINTS`,e[e.LINES=1]=`LINES`,e[e.LINE_LOOP=2]=`LINE_LOOP`,e[e.LINE_STRIP=3]=`LINE_STRIP`,e[e.TRIANGLES=4]=`TRIANGLES`,e[e.TRIANGLE_STRIP=5]=`TRIANGLE_STRIP`,e[e.TRIANGLE_FAN=6]=`TRIANGLE_FAN`})(er||={});var tr;(function(e){e[e.RGBA=6408]=`RGBA`,e[e.RGB=6407]=`RGB`,e[e.RG=33319]=`RG`,e[e.RED=6403]=`RED`,e[e.RGBA_INTEGER=36249]=`RGBA_INTEGER`,e[e.RGB_INTEGER=36248]=`RGB_INTEGER`,e[e.RG_INTEGER=33320]=`RG_INTEGER`,e[e.RED_INTEGER=36244]=`RED_INTEGER`,e[e.ALPHA=6406]=`ALPHA`,e[e.LUMINANCE=6409]=`LUMINANCE`,e[e.LUMINANCE_ALPHA=6410]=`LUMINANCE_ALPHA`,e[e.DEPTH_COMPONENT=6402]=`DEPTH_COMPONENT`,e[e.DEPTH_STENCIL=34041]=`DEPTH_STENCIL`})(tr||={});var nr;(function(e){e[e.TEXTURE_2D=3553]=`TEXTURE_2D`,e[e.TEXTURE_CUBE_MAP=34067]=`TEXTURE_CUBE_MAP`,e[e.TEXTURE_2D_ARRAY=35866]=`TEXTURE_2D_ARRAY`,e[e.TEXTURE_CUBE_MAP_POSITIVE_X=34069]=`TEXTURE_CUBE_MAP_POSITIVE_X`,e[e.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]=`TEXTURE_CUBE_MAP_NEGATIVE_X`,e[e.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]=`TEXTURE_CUBE_MAP_POSITIVE_Y`,e[e.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]=`TEXTURE_CUBE_MAP_NEGATIVE_Y`,e[e.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]=`TEXTURE_CUBE_MAP_POSITIVE_Z`,e[e.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]=`TEXTURE_CUBE_MAP_NEGATIVE_Z`})(nr||={});var rr;(function(e){e[e.UNSIGNED_BYTE=5121]=`UNSIGNED_BYTE`,e[e.UNSIGNED_SHORT=5123]=`UNSIGNED_SHORT`,e[e.UNSIGNED_SHORT_5_6_5=33635]=`UNSIGNED_SHORT_5_6_5`,e[e.UNSIGNED_SHORT_4_4_4_4=32819]=`UNSIGNED_SHORT_4_4_4_4`,e[e.UNSIGNED_SHORT_5_5_5_1=32820]=`UNSIGNED_SHORT_5_5_5_1`,e[e.UNSIGNED_INT=5125]=`UNSIGNED_INT`,e[e.UNSIGNED_INT_10F_11F_11F_REV=35899]=`UNSIGNED_INT_10F_11F_11F_REV`,e[e.UNSIGNED_INT_2_10_10_10_REV=33640]=`UNSIGNED_INT_2_10_10_10_REV`,e[e.UNSIGNED_INT_24_8=34042]=`UNSIGNED_INT_24_8`,e[e.UNSIGNED_INT_5_9_9_9_REV=35902]=`UNSIGNED_INT_5_9_9_9_REV`,e[e.BYTE=5120]=`BYTE`,e[e.SHORT=5122]=`SHORT`,e[e.INT=5124]=`INT`,e[e.FLOAT=5126]=`FLOAT`,e[e.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]=`FLOAT_32_UNSIGNED_INT_24_8_REV`,e[e.HALF_FLOAT=36193]=`HALF_FLOAT`})(rr||={});var ir;(function(e){e[e.FLOAT=0]=`FLOAT`,e[e.INT=1]=`INT`,e[e.UINT=2]=`UINT`})(ir||={});var ar;(function(e){e[e.NEAREST=0]=`NEAREST`,e[e.LINEAR=1]=`LINEAR`})(ar||={});var or;(function(e){e[e.CLAMP=33071]=`CLAMP`,e[e.REPEAT=10497]=`REPEAT`,e[e.MIRRORED_REPEAT=33648]=`MIRRORED_REPEAT`})(or||={});var sr;(function(e){e[e.OFF=0]=`OFF`,e[e.POW2=1]=`POW2`,e[e.ON=2]=`ON`,e[e.ON_MANUAL=3]=`ON_MANUAL`})(sr||={});var cr;(function(e){e[e.NPM=0]=`NPM`,e[e.UNPACK=1]=`UNPACK`,e[e.PMA=2]=`PMA`,e[e.NO_PREMULTIPLIED_ALPHA=0]=`NO_PREMULTIPLIED_ALPHA`,e[e.PREMULTIPLY_ON_UPLOAD=1]=`PREMULTIPLY_ON_UPLOAD`,e[e.PREMULTIPLY_ALPHA=2]=`PREMULTIPLY_ALPHA`,e[e.PREMULTIPLIED_ALPHA=2]=`PREMULTIPLIED_ALPHA`})(cr||={});var lr;(function(e){e[e.NO=0]=`NO`,e[e.YES=1]=`YES`,e[e.AUTO=2]=`AUTO`,e[e.BLEND=0]=`BLEND`,e[e.CLEAR=1]=`CLEAR`,e[e.BLIT=2]=`BLIT`})(lr||={});var ur;(function(e){e[e.AUTO=0]=`AUTO`,e[e.MANUAL=1]=`MANUAL`})(ur||={});var dr;(function(e){e.LOW=`lowp`,e.MEDIUM=`mediump`,e.HIGH=`highp`})(dr||={});var fr;(function(e){e[e.NONE=0]=`NONE`,e[e.SCISSOR=1]=`SCISSOR`,e[e.STENCIL=2]=`STENCIL`,e[e.SPRITE=3]=`SPRITE`,e[e.COLOR=4]=`COLOR`})(fr||={});var pr;(function(e){e[e.RED=1]=`RED`,e[e.GREEN=2]=`GREEN`,e[e.BLUE=4]=`BLUE`,e[e.ALPHA=8]=`ALPHA`})(pr||={});var mr;(function(e){e[e.NONE=0]=`NONE`,e[e.LOW=2]=`LOW`,e[e.MEDIUM=4]=`MEDIUM`,e[e.HIGH=8]=`HIGH`})(mr||={});var hr;(function(e){e[e.ELEMENT_ARRAY_BUFFER=34963]=`ELEMENT_ARRAY_BUFFER`,e[e.ARRAY_BUFFER=34962]=`ARRAY_BUFFER`,e[e.UNIFORM_BUFFER=35345]=`UNIFORM_BUFFER`})(hr||={});var gr={createCanvas:function(e,t){var n=document.createElement(`canvas`);return n.width=e,n.height=t,n},getWebGLRenderingContext:function(){return WebGLRenderingContext},getNavigator:function(){return navigator},getBaseUrl:function(){var e;return(e=document.baseURI)??window.location.href},fetch:function(e,t){return fetch(e,t)}},_r=/iPhone/i,vr=/iPod/i,yr=/iPad/i,br=/\biOS-universal(?:.+)Mac\b/i,xr=/\bAndroid(?:.+)Mobile\b/i,Sr=/Android/i,Cr=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,wr=/Silk/i,Tr=/Windows Phone/i,Er=/\bWindows(?:.+)ARM\b/i,Dr=/BlackBerry/i,Or=/BB10/i,kr=/Opera Mini/i,Ar=/\b(CriOS|Chrome)(?:.+)Mobile/i,jr=/Mobile(?:.+)Firefox\b/i,Mr=function(e){return e!==void 0&&e.platform===`MacIntel`&&typeof e.maxTouchPoints==`number`&&e.maxTouchPoints>1&&typeof MSStream>`u`};function Nr(e){return function(t){return t.test(e)}}function Pr(e){var t={userAgent:``,platform:``,maxTouchPoints:0};!e&&typeof navigator<`u`?t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0}:typeof e==`string`?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0});var n=t.userAgent,r=n.split(`[FBAN`);r[1]!==void 0&&(n=r[0]),r=n.split(`Twitter`),r[1]!==void 0&&(n=r[0]);var i=Nr(n),a={apple:{phone:i(_r)&&!i(Tr),ipod:i(vr),tablet:!i(_r)&&(i(yr)||Mr(t))&&!i(Tr),universal:i(br),device:(i(_r)||i(vr)||i(yr)||i(br)||Mr(t))&&!i(Tr)},amazon:{phone:i(Cr),tablet:!i(Cr)&&i(wr),device:i(Cr)||i(wr)},android:{phone:!i(Tr)&&i(Cr)||!i(Tr)&&i(xr),tablet:!i(Tr)&&!i(Cr)&&!i(xr)&&(i(wr)||i(Sr)),device:!i(Tr)&&(i(Cr)||i(wr)||i(xr)||i(Sr))||i(/\bokhttp\b/i)},windows:{phone:i(Tr),tablet:i(Er),device:i(Tr)||i(Er)},other:{blackberry:i(Dr),blackberry10:i(Or),opera:i(kr),firefox:i(jr),chrome:i(Ar),device:i(Dr)||i(Or)||i(kr)||i(jr)||i(Ar)},any:!1,phone:!1,tablet:!1};return a.any=a.apple.device||a.android.device||a.windows.device||a.other.device,a.phone=a.apple.phone||a.android.phone||a.windows.phone,a.tablet=a.apple.tablet||a.android.tablet||a.windows.tablet,a}var Fr=Pr(globalThis.navigator);function Ir(){return!Fr.apple.device}function Lr(e){var t=!0;if(Fr.tablet||Fr.phone){if(Fr.apple.device){var n=navigator.userAgent.match(/OS (\d+)_(\d+)?/);if(n){var r=parseInt(n[1],10);r<11&&(t=!1)}}if(Fr.android.device){var n=navigator.userAgent.match(/Android\s([0-9.]*)/);if(n){var r=parseInt(n[1],10);r<7&&(t=!1)}}}return t?e:4}var Rr={ADAPTER:gr,MIPMAP_TEXTURES:sr.POW2,ANISOTROPIC_LEVEL:0,RESOLUTION:1,FILTER_RESOLUTION:1,FILTER_MULTISAMPLE:mr.NONE,SPRITE_MAX_TEXTURES:Lr(32),SPRITE_BATCH_SIZE:4096,RENDER_OPTIONS:{view:null,width:800,height:600,autoDensity:!1,backgroundColor:0,backgroundAlpha:1,useContextAlpha:!0,clearBeforeRender:!0,antialias:!1,preserveDrawingBuffer:!1},GC_MODE:ur.AUTO,GC_MAX_IDLE:60*60,GC_MAX_CHECK_COUNT:60*10,WRAP_MODE:or.CLAMP,SCALE_MODE:ar.LINEAR,PRECISION_VERTEX:dr.HIGH,PRECISION_FRAGMENT:Fr.apple.device?dr.HIGH:dr.MEDIUM,CAN_UPLOAD_SAME_BUFFER:Ir(),CREATE_IMAGE_BITMAP:!1,ROUND_PIXELS:!1},zr=kn((exports,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i{t.exports=n,t.exports.default=n;function n(e,t,n){n||=2;var i=t&&t.length,o=i?t[0]*n:e.length,s=r(e,0,o,n,!0),c=[];if(!s||s.next===s.prev)return c;var l,d,f,p,m,h,g;if(i&&(s=u(e,t,s,n)),e.length>80*n){l=f=e[0],d=p=e[1];for(var _=n;_f&&(f=m),h>p&&(p=h);g=Math.max(f-l,p-d),g=g===0?0:32767/g}return a(s,c,n,l,d,g,0),c}function r(e,t,n,r,i){var a,o;if(i===N(e,t,n,r)>0)for(a=t;a=t;a-=r)o=A(a,e[a],e[a+1],o);return o&&S(o,o.next)&&(j(o),o=o.next),o}function i(e,t){if(!e)return e;t||=e;var n=e,r;do if(r=!1,!n.steiner&&(S(n,n.next)||x(n.prev,n,n.next)===0)){if(j(n),n=t=n.prev,n===n.next)break;r=!0}else n=n.next;while(r||n!==t);return t}function a(e,t,n,r,u,d,f){if(e){!f&&d&&h(e,r,u,d);for(var p=e,m,g;e.prev!==e.next;){if(m=e.prev,g=e.next,d?s(e,r,u,d):o(e)){t.push(m.i/n|0),t.push(e.i/n|0),t.push(g.i/n|0),j(e),e=g.next,p=g.next;continue}if(e=g,e===p){f?f===1?(e=c(i(e),t,n),a(e,t,n,r,u,d,2)):f===2&&l(e,t,n,r,u,d):a(i(e),t,n,r,u,d,1);break}}}}function o(e){var t=e.prev,n=e,r=e.next;if(x(t,n,r)>=0)return!1;for(var i=t.x,a=n.x,o=r.x,s=t.y,c=n.y,l=r.y,u=ia?i>o?i:o:a>o?a:o,p=s>c?s>l?s:l:c>l?c:l,m=r.next;m!==t;){if(m.x>=u&&m.x<=f&&m.y>=d&&m.y<=p&&y(i,s,a,c,o,l,m.x,m.y)&&x(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function s(e,t,n,r){var i=e.prev,a=e,o=e.next;if(x(i,a,o)>=0)return!1;for(var s=i.x,c=a.x,l=o.x,u=i.y,d=a.y,f=o.y,p=sc?s>l?s:l:c>l?c:l,g=u>d?u>f?u:f:d>f?d:f,v=_(p,m,t,n,r),b=_(h,g,t,n,r),S=e.prevZ,C=e.nextZ;S&&S.z>=v&&C&&C.z<=b;){if(S.x>=p&&S.x<=h&&S.y>=m&&S.y<=g&&S!==i&&S!==o&&y(s,u,c,d,l,f,S.x,S.y)&&x(S.prev,S,S.next)>=0||(S=S.prevZ,C.x>=p&&C.x<=h&&C.y>=m&&C.y<=g&&C!==i&&C!==o&&y(s,u,c,d,l,f,C.x,C.y)&&x(C.prev,C,C.next)>=0))return!1;C=C.nextZ}for(;S&&S.z>=v;){if(S.x>=p&&S.x<=h&&S.y>=m&&S.y<=g&&S!==i&&S!==o&&y(s,u,c,d,l,f,S.x,S.y)&&x(S.prev,S,S.next)>=0)return!1;S=S.prevZ}for(;C&&C.z<=b;){if(C.x>=p&&C.x<=h&&C.y>=m&&C.y<=g&&C!==i&&C!==o&&y(s,u,c,d,l,f,C.x,C.y)&&x(C.prev,C,C.next)>=0)return!1;C=C.nextZ}return!0}function c(e,t,n){var r=e;do{var a=r.prev,o=r.next.next;!S(a,o)&&C(a,r,r.next,o)&&D(a,o)&&D(o,a)&&(t.push(a.i/n|0),t.push(r.i/n|0),t.push(o.i/n|0),j(r),j(r.next),r=e=o),r=r.next}while(r!==e);return i(r)}function l(e,t,n,r,o,s){var c=e;do{for(var l=c.next.next;l!==c.prev;){if(c.i!==l.i&&b(c,l)){var u=k(c,l);c=i(c,c.next),u=i(u,u.next),a(c,t,n,r,o,s,0),a(u,t,n,r,o,s,0);return}l=l.next}c=c.next}while(c!==e)}function u(e,t,n,i){var a=[],o,s,c,l,u;for(o=0,s=t.length;o=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=r&&s>a&&(a=s,o=n.x=n.x&&n.x>=l&&r!==n.x&&y(io.x||n.x===o.x&&m(o,n)))&&(o=n,d=f)),n=n.next;while(n!==c);return o}function m(e,t){return x(e.prev,e,t.prev)<0&&x(t.next,e,e.next)<0}function h(e,t,n,r){var i=e;do i.z===0&&(i.z=_(i.x,i.y,t,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,g(i)}function g(e){var t,n,r,i,a,o,s,c,l=1;do{for(n=e,e=null,a=null,o=0;n;){for(o++,r=n,s=0,t=0;t0||c>0&&r;)s!==0&&(c===0||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,c--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;n=r}a.nextZ=null,l*=2}while(o>1);return e}function _(e,t,n,r,i){return e=(e-n)*i|0,t=(t-r)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function v(e){var t=e,n=e;do(t.x=(e-o)*(a-s)&&(e-o)*(r-s)>=(n-o)*(t-s)&&(n-o)*(a-s)>=(i-o)*(r-s)}function b(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!E(e,t)&&(D(e,t)&&D(t,e)&&O(e,t)&&(x(e.prev,e,t.prev)||x(e,t.prev,t))||S(e,t)&&x(e.prev,e,e.next)>0&&x(t.prev,t,t.next)>0)}function x(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function S(e,t){return e.x===t.x&&e.y===t.y}function C(e,t,n,r){var i=T(x(e,t,n)),a=T(x(e,t,r)),o=T(x(n,r,e)),s=T(x(n,r,t));return!!(i!==a&&o!==s||i===0&&w(e,n,t)||a===0&&w(e,r,t)||o===0&&w(n,e,r)||s===0&&w(n,t,r))}function w(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function T(e){return e>0?1:e<0?-1:0}function E(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&C(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}function D(e,t){return x(e.prev,e,e.next)<0?x(e,t,e.next)>=0&&x(e,e.prev,t)>=0:x(e,t,e.prev)<0||x(e,e.next,t)<0}function O(e,t){var n=e,r=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do n.y>a!=n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next;while(n!==e);return r}function k(e,t){var n=new M(e.i,e.x,e.y),r=new M(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function A(e,t,n,r){var i=new M(e,t,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function j(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function M(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}n.deviation=function(e,t,n,r){var i=t&&t.length,a=i?t[0]*n:e.length,o=Math.abs(N(e,0,a,n));if(i)for(var s=0,c=t.length;s0&&(r+=e[i-1].length,n.holes.push(r))}return n}}),Vr=kn((exports,t)=>{(function(n){var r=typeof exports==`object`&&exports&&!exports.nodeType&&exports,i=typeof t==`object`&&t&&!t.nodeType&&t,a=typeof global==`object`&&global;(a.global===a||a.window===a||a.self===a)&&(n=a);var o,s=2147483647,c=36,l=1,u=26,d=38,f=700,p=72,m=128,h=`-`,g=/^xn--/,_=/[^\x20-\x7E]/,v=/[\x2E\u3002\uFF0E\uFF61]/g,y={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},b=c-l,x=Math.floor,S=String.fromCharCode,C;function w(e){throw RangeError(y[e])}function T(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function E(e,t){var n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(v,`.`);var i=e.split(`.`),a=T(i,t).join(`.`);return r+a}function D(e){for(var t=[],n=0,r=e.length,i,a;n=55296&&i<=56319&&n65535&&(e-=65536,t+=S(e>>>10&1023|55296),e=56320|e&1023),t+=S(e),t}).join(``)}function k(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:c}function A(e,t){return e+22+75*(e<26)-((t!=0)<<5)}function j(e,t,n){var r=0;for(e=n?x(e/f):e>>1,e+=x(e/t);e>b*u>>1;r+=c)e=x(e/b);return x(r+(b+1)*e/(e+d))}function M(e){var t=[],n=e.length,r,i=0,a=m,o=p,d,f,g,_,v,y,b,S,C;for(d=e.lastIndexOf(h),d<0&&(d=0),f=0;f=128&&w(`not-basic`),t.push(e.charCodeAt(f));for(g=d>0?d+1:0;g=n&&w(`invalid-input`),b=k(e.charCodeAt(g++)),(b>=c||b>x((s-i)/v))&&w(`overflow`),i+=b*v,S=y<=o?l:y>=o+u?u:y-o,!(bx(s/C)&&w(`overflow`),v*=C;r=t.length+1,o=j(i-_,r,_==0),x(i/r)>s-a&&w(`overflow`),a+=x(i/r),i%=r,t.splice(i++,0,a)}return O(t)}function N(e){var t,n,r,i,a,o,d,f,g,_,v,y=[],b,C,T,E;for(e=D(e),b=e.length,t=m,n=0,a=p,o=0;o=t&&vx((s-n)/C)&&w(`overflow`),n+=(d-t)*C,t=d,o=0;os&&w(`overflow`),v==t){for(f=n,g=c;_=g<=a?l:g>=a+u?u:g-a,!(f<_);g+=c)E=f-_,T=c-_,y.push(S(A(_+E%T,0))),f=x(E/T);y.push(S(A(f,0))),a=j(n,C,r==i),n=0,++r}++n,++t}return y.join(``)}function ee(e){return E(e,function(e){return g.test(e)?M(e.slice(4).toLowerCase()):e})}function P(e){return E(e,function(e){return _.test(e)?`xn--`+N(e):e})}if(o={version:`1.4.1`,ucs2:{decode:D,encode:O},decode:M,encode:N,toASCII:P,toUnicode:ee},typeof define==`function`&&typeof define.amd==`object`&&define.amd)define(`punycode`,function(){return o});else if(r&&i)if(t.exports==r)i.exports=o;else for(C in o)o.hasOwnProperty(C)&&(r[C]=o[C]);else n.punycode=o})(exports)}),Hr=kn((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});function n(){let e,t,n=n=>{if(n&&(typeof n==`object`||typeof n==`function`)){if(e)return e.get(n)}else if(t)return t.get(n)},r=(n,r)=>{n&&(typeof n==`object`||typeof n==`function`)?(e||=new WeakMap,e.set(n,r)):(t||=new Map,t.set(n,r))},i=n=>{if(n&&(typeof n==`object`||typeof n==`function`)){if(e)return e.has(n)}else if(t)return t.has(n);return!1},a=e=>{if(!i(e))throw TypeError(`Side channel does not contain the given key`)};return{get:n,set:r,has:i,assert:a}}exports.default=n,(typeof exports.default==`object`&&exports.default!==null||typeof exports.default==`function`)&&(Object.assign(exports.default,exports),t.exports=exports.default)}),Ur=kn((exports,t)=>{var n=String.prototype.replace,r=/%20/g,i={RFC1738:`RFC1738`,RFC3986:`RFC3986`};t.exports={default:i.RFC3986,formatters:{RFC1738:function(e){return n.call(e,r,`+`)},RFC3986:function(e){return String(e)}},RFC1738:i.RFC1738,RFC3986:i.RFC3986}}),Wr=kn((exports,t)=>{var n=Ur(),r=Object.prototype.hasOwnProperty,i=Array.isArray,a=function(){for(var e=[],t=0;t<256;++t)e.push(`%`+((t<16?`0`:``)+t.toString(16)).toUpperCase());return e}(),o=function(e){for(;e.length>1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],a=0;a=d?s.slice(l,l+d):s,f=[],p=0;p=48&&m<=57||m>=65&&m<=90||m>=97&&m<=122||o===n.RFC1738&&(m===40||m===41)){f[f.length]=u.charAt(p);continue}if(m<128){f[f.length]=a[m];continue}if(m<2048){f[f.length]=a[192|m>>6]+a[128|m&63];continue}if(m<55296||m>=57344){f[f.length]=a[224|m>>12]+a[128|m>>6&63]+a[128|m&63];continue}p+=1,m=65536+((m&1023)<<10|u.charCodeAt(p)&1023),f[f.length]=a[240|m>>18]+a[128|m>>12&63]+a[128|m>>6&63]+a[128|m&63]}c+=f.join(``)}return c},p=function(e){for(var t=[{obj:{o:e},prop:`o`}],n=[],r=0;r{var n=Hr(),r=Wr(),i=Ur(),a=Object.prototype.hasOwnProperty,o={brackets:function(e){return e+`[]`},comma:`comma`,indices:function(e,t){return e+`[`+t+`]`},repeat:function(e){return e}},s=Array.isArray,c=Array.prototype.push,l=function(e,t){c.apply(e,s(t)?t:[t])},u=Date.prototype.toISOString,d=i.default,f={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:`indices`,charset:`utf-8`,charsetSentinel:!1,commaRoundTrip:!1,delimiter:`&`,encode:!0,encodeDotInKeys:!1,encoder:r.encode,encodeValuesOnly:!1,filter:void 0,format:d,formatter:i.formatters[d],indices:!1,serializeDate:function(e){return u.call(e)},skipNulls:!1,strictNullHandling:!1},p=function(e){return typeof e==`string`||typeof e==`number`||typeof e==`boolean`||typeof e==`symbol`||typeof e==`bigint`},m={},h=function e(t,i,a,o,c,u,d,h,g,_,v,y,b,x,S,C,w,T){for(var E=t,D=T,O=0,k=!1;(D=D.get(m))!==void 0&&!k;){var A=D.get(t);if(O+=1,A!==void 0){if(A===O)throw RangeError(`Cyclic object value`);k=!0}D.get(m)===void 0&&(O=0)}if(typeof _==`function`?E=_(i,E):E instanceof Date?E=b(E):a===`comma`&&s(E)&&(E=r.maybeMap(E,function(e){return e instanceof Date?b(e):e})),E===null){if(u)return g&&!C?g(i,f.encoder,w,`key`,x):i;E=``}if(p(E)||r.isBuffer(E)){if(g){var j=C?i:g(i,f.encoder,w,`key`,x);return[S(j)+`=`+S(g(E,f.encoder,w,`value`,x))]}return[S(i)+`=`+S(String(E))]}var M=[];if(E===void 0)return M;var N;if(a===`comma`&&s(E))C&&g&&(E=r.maybeMap(E,g)),N=[{value:E.length>0?E.join(`,`)||null:void 0}];else if(s(_))N=_;else{var ee=Object.keys(E);N=v?ee.sort(v):ee}var P=h?String(i).replace(/\./g,`%2E`):String(i),F=o&&s(E)&&E.length===1?P+`[]`:P;if(c&&s(E)&&E.length===0)return F+`[]`;for(var I=0;I0?b+y:``}}),Kr=kn((exports,t)=>{var n=Wr(),r=Object.prototype.hasOwnProperty,i=Array.isArray,a={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:`utf-8`,charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:n.decode,delimiter:`&`,depth:5,duplicates:`combine`,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},o=function(e){return e.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(parseInt(t,10))})},s=function(e,t,n){if(e&&typeof e==`string`&&t.comma&&e.indexOf(`,`)>-1)return e.split(`,`);if(t.throwOnLimitExceeded&&n>=t.arrayLimit)throw RangeError(`Array limit exceeded. Only `+t.arrayLimit+` element`+(t.arrayLimit===1?``:`s`)+` allowed in an array.`);return e},c=`utf8=%26%2310003%3B`,l=`utf8=%E2%9C%93`,u=function(e,t){var u={__proto__:null},d=t.ignoreQueryPrefix?e.replace(/^\?/,``):e;d=d.replace(/%5B/gi,`[`).replace(/%5D/gi,`]`);var f=t.parameterLimit===1/0?void 0:t.parameterLimit,p=d.split(t.delimiter,t.throwOnLimitExceeded?f+1:f);if(t.throwOnLimitExceeded&&p.length>f)throw RangeError(`Parameter limit exceeded. Only `+f+` parameter`+(f===1?``:`s`)+` allowed.`);var m=-1,h,g=t.charset;if(t.charsetSentinel)for(h=0;h-1&&(x=i(x)?[x]:x);var S=r.call(u,b);S&&t.duplicates===`combine`?u[b]=n.combine(u[b],x):(!S||t.duplicates===`last`)&&(u[b]=x)}return u},d=function(e,t,r,i){var a=0;if(e.length>0&&e[e.length-1]===`[]`){var o=e.slice(0,-1).join(``);a=Array.isArray(t)&&t[o]?t[o].length:0}for(var c=i?t:s(t,r,a),l=e.length-1;l>=0;--l){var u,d=e[l];if(d===`[]`&&r.parseArrays)u=r.allowEmptyArrays&&(c===``||r.strictNullHandling&&c===null)?[]:n.combine([],c);else{u=r.plainObjects?{__proto__:null}:{};var f=d.charAt(0)===`[`&&d.charAt(d.length-1)===`]`?d.slice(1,-1):d,p=r.decodeDotInKeys?f.replace(/%2E/g,`.`):f,m=parseInt(p,10);!r.parseArrays&&p===``?u={0:c}:!isNaN(m)&&d!==p&&String(m)===p&&m>=0&&r.parseArrays&&m<=r.arrayLimit?(u=[],u[m]=c):p!==`__proto__`&&(u[p]=c)}c=u}return c},f=function(e,t,n,i){if(e){var a=n.allowDots?e.replace(/\.([^.[]+)/g,`[$1]`):e,o=/(\[[^[\]]*])/,s=/(\[[^[\]]*])/g,c=n.depth>0&&o.exec(a),l=c?a.slice(0,c.index):a,u=[];if(l){if(!n.plainObjects&&r.call(Object.prototype,l)&&!n.allowPrototypes)return;u.push(l)}for(var f=0;n.depth>0&&(c=s.exec(a))!==null&&f{var n=Gr(),r=Kr(),i=Ur();t.exports={formats:i,parse:r,stringify:n}}),Jr=kn(exports=>{var t=Vr();function n(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var r=/^([a-z0-9.+-]+:)/i,i=/:[0-9]*$/,a=/^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/,o=[`<`,`>`,`"`,"`",` `,`\r`,` +`,` `],s=[`{`,`}`,`|`,`\\`,`^`,"`"].concat(o),c=[`'`].concat(s),l=[`%`,`/`,`?`,`;`,`#`].concat(c),u=[`/`,`?`,`#`],d=255,f=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},h={javascript:!0,"javascript:":!0},g={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},_=qr();function v(e,t,r){if(e&&typeof e==`object`&&e instanceof n)return e;var i=new n;return i.parse(e,t,r),i}n.prototype.parse=function(e,n,i){if(typeof e!=`string`)throw TypeError(`Parameter 'url' must be a string, not `+typeof e);var o=e.indexOf(`?`),s=o!==-1&&o127?ee+=`x`:ee+=N[P];if(!ee.match(f)){var I=j.slice(0,E),te=j.slice(E+1),L=N.match(p);L&&(I.push(L[1]),te.unshift(L[2])),te.length&&(b=`/`+te.join(`.`)+b),this.hostname=I.join(`.`);break}}}this.hostname.length>d?this.hostname=``:this.hostname=this.hostname.toLowerCase(),A||(this.hostname=t.toASCII(this.hostname));var R=this.port?`:`+this.port:``,ne=this.hostname||``;this.host=ne+R,this.href+=this.host,A&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),b[0]!==`/`&&(b=`/`+b))}if(!m[C])for(var E=0,M=c.length;E0?r.host.split(`@`):!1;w&&(r.auth=w.shift(),r.hostname=w.shift(),r.host=r.hostname)}return r.search=e.search,r.query=e.query,(r.pathname!==null||r.search!==null)&&(r.path=(r.pathname?r.pathname:``)+(r.search?r.search:``)),r.href=r.format(),r}if(!S.length)return r.pathname=null,r.search?r.path=`/`+r.search:r.path=null,r.href=r.format(),r;for(var T=S.slice(-1)[0],E=(r.host||e.host||S.length>1)&&(T===`.`||T===`..`)||T===``,D=0,O=S.length;O>=0;O--)T=S[O],T===`.`?S.splice(O,1):T===`..`?(S.splice(O,1),D++):D&&(S.splice(O,1),D--);if(!b&&!x)for(;D--;)S.unshift(`..`);b&&S[0]!==``&&(!S[0]||S[0].charAt(0)!==`/`)&&S.unshift(``),E&&S.join(`/`).substr(-1)!==`/`&&S.push(``);var k=S[0]===``||S[0]&&S[0].charAt(0)===`/`;if(C){r.hostname=k?``:S.length?S.shift():``,r.host=r.hostname;var w=r.host&&r.host.indexOf(`@`)>0?r.host.split(`@`):!1;w&&(r.auth=w.shift(),r.hostname=w.shift(),r.host=r.hostname)}return b||=r.host&&S.length,b&&!k&&S.unshift(``),S.length>0?r.pathname=S.join(`/`):(r.pathname=null,r.path=null),(r.pathname!==null||r.search!==null)&&(r.path=(r.pathname?r.pathname:``)+(r.search?r.search:``)),r.auth=e.auth||r.auth,r.slashes=r.slashes||e.slashes,r.href=r.format(),r},n.prototype.parseHost=function(){var e=this.host,t=i.exec(e);t&&(t=t[0],t!==`:`&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)},exports.parse=v,exports.resolve=b,exports.format=y}),Yr=Nn(zr(),1),Xr=Nn(Br(),1),Zr=Nn(Jr(),1),Qr={parse:Zr.parse,format:Zr.format,resolve:Zr.resolve};Rr.RETINA_PREFIX=/@([0-9\.]+)x/,Rr.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT=!1;var $r=!1,ei=`6.5.10`;function ti(e){var t;if(!$r){if(Rr.ADAPTER.getNavigator().userAgent.toLowerCase().indexOf(`chrome`)>-1){var n=[` + %c %c %c PixiJS `+ei+` - ✰ `+e+` ✰ %c %c http://www.pixijs.com/ %c %c ♥%c♥%c♥ + +`,`background: #ff66a5; padding:5px 0;`,`background: #ff66a5; padding:5px 0;`,`color: #ff66a5; background: #030307; padding:5px 0;`,`background: #ff66a5; padding:5px 0;`,`background: #ffc3dc; padding:5px 0;`,`background: #ff66a5; padding:5px 0;`,`color: #ff2424; background: #fff; padding:5px 0;`,`color: #ff2424; background: #fff; padding:5px 0;`,`color: #ff2424; background: #fff; padding:5px 0;`];(t=globalThis.console).log.apply(t,n)}else globalThis.console&&globalThis.console.log(`PixiJS `+ei+` - `+e+` - http://www.pixijs.com/`);$r=!0}}var ni;function ri(){return ni===void 0&&(ni=function(){var e={stencil:!0,failIfMajorPerformanceCaveat:Rr.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT};try{if(!Rr.ADAPTER.getWebGLRenderingContext())return!1;var t=Rr.ADAPTER.createCanvas(),n=t.getContext(`webgl`,e)||t.getContext(`experimental-webgl`,e),r=!!(n&&n.getContextAttributes().stencil);if(n){var i=n.getExtension(`WEBGL_lose_context`);i&&i.loseContext()}return n=null,r}catch{return!1}}()),ni}function ii(e,t){return t===void 0&&(t=[]),t[0]=(e>>16&255)/255,t[1]=(e>>8&255)/255,t[2]=(e&255)/255,t}function ai(e){var t=e.toString(16);return t=`000000`.substring(0,6-t.length)+t,`#`+t}function oi(e){return(e[0]*255<<16)+(e[1]*255<<8)+(e[2]*255|0)}function si(){for(var e=[],t=[],n=0;n<32;n++)e[n]=n,t[n]=n;e[$n.NORMAL_NPM]=$n.NORMAL,e[$n.ADD_NPM]=$n.ADD,e[$n.SCREEN_NPM]=$n.SCREEN,t[$n.NORMAL]=$n.NORMAL_NPM,t[$n.ADD]=$n.ADD_NPM,t[$n.SCREEN]=$n.SCREEN_NPM;var r=[];return r.push(t),r.push(e),r}var ci=si();function li(e,t){if(t===1)return(t*255<<24)+e;if(t===0)return 0;var n=e>>16&255,r=e>>8&255,i=e&255;return n=n*t+.5|0,r=r*t+.5|0,i=i*t+.5|0,(t*255<<24)+(n<<16)+(r<<8)+i}function ui(e){if(e.BYTES_PER_ELEMENT===4)return e instanceof Float32Array?`Float32Array`:e instanceof Uint32Array?`Uint32Array`:`Int32Array`;if(e.BYTES_PER_ELEMENT===2){if(e instanceof Uint16Array)return`Uint16Array`}else if(e.BYTES_PER_ELEMENT===1&&e instanceof Uint8Array)return`Uint8Array`;return null}function di(e){return e+=e===0?1:0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1}function fi(e){return!(e&e-1)&&!!e}function pi(e){var t=(e>65535?1:0)<<4;e>>>=t;var n=(e>255?1:0)<<3;return e>>>=n,t|=n,n=(e>15?1:0)<<2,e>>>=n,t|=n,n=(e>3?1:0)<<1,e>>>=n,t|=n,t|e>>1}function mi(e,t,n){var r=e.length,i;if(!(t>=r||n===0)){n=t+n>r?r-t:n;var a=r-n;for(i=t;i8)throw Error(`max arguments reached`);var c=this,l=c.name,u=c.items;this._aliasCount++;for(var d=0,f=u.length;d0&&this.items.length>1&&(this._aliasCount=0,this.items=this.items.slice(0))},e.prototype.add=function(e){return e[this._name]&&(this.ensureNonAliasedItems(),this.remove(e),this.items.push(e)),this},e.prototype.remove=function(e){var t=this.items.indexOf(e);return t!==-1&&(this.ensureNonAliasedItems(),this.items.splice(t,1)),this},e.prototype.contains=function(e){return this.items.indexOf(e)!==-1},e.prototype.removeAll=function(){return this.ensureNonAliasedItems(),this.items.length=0,this},e.prototype.destroy=function(){this.removeAll(),this.items=null,this._name=null},Object.defineProperty(e.prototype,`empty`,{get:function(){return this.items.length===0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`name`,{get:function(){return this._name},enumerable:!1,configurable:!0}),e}();Object.defineProperties(Ai.prototype,{dispatch:{value:Ai.prototype.emit},run:{value:Ai.prototype.emit}}),Rr.TARGET_FPMS=.06;var ji;(function(e){e[e.INTERACTION=50]=`INTERACTION`,e[e.HIGH=25]=`HIGH`,e[e.NORMAL=0]=`NORMAL`,e[e.LOW=-25]=`LOW`,e[e.UTILITY=-50]=`UTILITY`})(ji||={});var Mi=function(){function e(e,t,n,r){t===void 0&&(t=null),n===void 0&&(n=0),r===void 0&&(r=!1),this.next=null,this.previous=null,this._destroyed=!1,this.fn=e,this.context=t,this.priority=n,this.once=r}return e.prototype.match=function(e,t){return t===void 0&&(t=null),this.fn===e&&this.context===t},e.prototype.emit=function(e){this.fn&&(this.context?this.fn.call(this.context,e):this.fn(e));var t=this.next;return this.once&&this.destroy(!0),this._destroyed&&(this.next=null),t},e.prototype.connect=function(e){this.previous=e,e.next&&(e.next.previous=this),this.next=e.next,e.next=this},e.prototype.destroy=function(e){e===void 0&&(e=!1),this._destroyed=!0,this.fn=null,this.context=null,this.previous&&(this.previous.next=this.next),this.next&&(this.next.previous=this.previous);var t=this.next;return this.next=e?null:t,this.previous=null,t},e}(),Ni=function(){function e(){var e=this;this.autoStart=!1,this.deltaTime=1,this.lastTime=-1,this.speed=1,this.started=!1,this._requestId=null,this._maxElapsedMS=100,this._minElapsedMS=0,this._protected=!1,this._lastFrame=-1,this._head=new Mi(null,null,1/0),this.deltaMS=1/Rr.TARGET_FPMS,this.elapsedMS=1/Rr.TARGET_FPMS,this._tick=function(t){e._requestId=null,e.started&&(e.update(t),e.started&&e._requestId===null&&e._head.next&&(e._requestId=requestAnimationFrame(e._tick)))}}return e.prototype._requestIfNeeded=function(){this._requestId===null&&this._head.next&&(this.lastTime=performance.now(),this._lastFrame=this.lastTime,this._requestId=requestAnimationFrame(this._tick))},e.prototype._cancelIfNeeded=function(){this._requestId!==null&&(cancelAnimationFrame(this._requestId),this._requestId=null)},e.prototype._startIfPossible=function(){this.started?this._requestIfNeeded():this.autoStart&&this.start()},e.prototype.add=function(e,t,n){return n===void 0&&(n=ji.NORMAL),this._addListener(new Mi(e,t,n))},e.prototype.addOnce=function(e,t,n){return n===void 0&&(n=ji.NORMAL),this._addListener(new Mi(e,t,n,!0))},e.prototype._addListener=function(e){var t=this._head.next,n=this._head;if(!t)e.connect(n);else{for(;t;){if(e.priority>t.priority){e.connect(n);break}n=t,t=t.next}e.previous||e.connect(n)}return this._startIfPossible(),this},e.prototype.remove=function(e,t){for(var n=this._head.next;n;)n=n.match(e,t)?n.destroy():n.next;return this._head.next||this._cancelIfNeeded(),this},Object.defineProperty(e.prototype,`count`,{get:function(){if(!this._head)return 0;for(var e=0,t=this._head;t=t.next;)e++;return e},enumerable:!1,configurable:!0}),e.prototype.start=function(){this.started||(this.started=!0,this._requestIfNeeded())},e.prototype.stop=function(){this.started&&(this.started=!1,this._cancelIfNeeded())},e.prototype.destroy=function(){if(!this._protected){this.stop();for(var e=this._head.next;e;)e=e.destroy(!0);this._head.destroy(),this._head=null}},e.prototype.update=function(e){e===void 0&&(e=performance.now());var t;if(e>this.lastTime){if(t=this.elapsedMS=e-this.lastTime,t>this._maxElapsedMS&&(t=this._maxElapsedMS),t*=this.speed,this._minElapsedMS){var n=e-this._lastFrame|0;if(n=this.x&&e=this.y&&te.right?e.right:this.right;if(r<=n)return!1;var i=this.ye.bottom?e.bottom:this.bottom;return a>i}var o=this.left,s=this.right,c=this.top,l=this.bottom;if(s<=o||l<=c)return!1;var u=Bi[0].set(e.left,e.top),d=Bi[1].set(e.left,e.bottom),f=Bi[2].set(e.right,e.top),p=Bi[3].set(e.right,e.bottom);if(f.x<=u.x||d.y<=u.y)return!1;var m=Math.sign(t.a*t.d-t.b*t.c);if(m===0||(t.apply(u,u),t.apply(d,d),t.apply(f,f),t.apply(p,p),Math.max(u.x,d.x,f.x,p.x)<=o||Math.min(u.x,d.x,f.x,p.x)>=s||Math.max(u.y,d.y,f.y,p.y)<=c||Math.min(u.y,d.y,f.y,p.y)>=l))return!1;var h=m*(d.y-u.y),g=m*(u.x-d.x),_=h*o+g*c,v=h*s+g*c,y=h*o+g*l,b=h*s+g*l;if(Math.max(_,v,y,b)<=h*u.x+g*u.y||Math.min(_,v,y,b)>=h*p.x+g*p.y)return!1;var x=m*(u.y-f.y),S=m*(f.x-u.x),C=x*o+S*c,w=x*s+S*c,T=x*o+S*l,E=x*s+S*l;return!(Math.max(C,w,T,E)<=x*u.x+S*u.y||Math.min(C,w,T,E)>=x*p.x+S*p.y)},e.prototype.pad=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.x-=e,this.y-=t,this.width+=e*2,this.height+=t*2,this},e.prototype.fit=function(e){var t=Math.max(this.x,e.x),n=Math.min(this.x+this.width,e.x+e.width),r=Math.max(this.y,e.y),i=Math.min(this.y+this.height,e.y+e.height);return this.x=t,this.width=Math.max(n-t,0),this.y=r,this.height=Math.max(i-r,0),this},e.prototype.ceil=function(e,t){e===void 0&&(e=1),t===void 0&&(t=.001);var n=Math.ceil((this.x+this.width-t)*e)/e,r=Math.ceil((this.y+this.height-t)*e)/e;return this.x=Math.floor((this.x+t)*e)/e,this.y=Math.floor((this.y+t)*e)/e,this.width=n-this.x,this.height=r-this.y,this},e.prototype.enlarge=function(e){var t=Math.min(this.x,e.x),n=Math.max(this.x+this.width,e.x+e.width),r=Math.min(this.y,e.y),i=Math.max(this.y+this.height,e.y+e.height);return this.x=t,this.width=n-t,this.y=r,this.height=i-r,this},e.prototype.toString=function(){return`[@pixi/math:Rectangle x=`+this.x+` y=`+this.y+` width=`+this.width+` height=`+this.height+`]`},e}(),Hi=function(){function e(e,t,n){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),this.x=e,this.y=t,this.radius=n,this.type=Ri.CIRC}return e.prototype.clone=function(){return new e(this.x,this.y,this.radius)},e.prototype.contains=function(e,t){if(this.radius<=0)return!1;var n=this.radius*this.radius,r=this.x-e,i=this.y-t;return r*=r,i*=i,r+i<=n},e.prototype.getBounds=function(){return new Vi(this.x-this.radius,this.y-this.radius,this.radius*2,this.radius*2)},e.prototype.toString=function(){return`[@pixi/math:Circle x=`+this.x+` y=`+this.y+` radius=`+this.radius+`]`},e}(),Ui=function(){function e(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.x=e,this.y=t,this.width=n,this.height=r,this.type=Ri.ELIP}return e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height)},e.prototype.contains=function(e,t){if(this.width<=0||this.height<=0)return!1;var n=(e-this.x)/this.width,r=(t-this.y)/this.height;return n*=n,r*=r,n+r<=1},e.prototype.getBounds=function(){return new Vi(this.x-this.width,this.y-this.height,this.width,this.height)},e.prototype.toString=function(){return`[@pixi/math:Ellipse x=`+this.x+` y=`+this.y+` width=`+this.width+` height=`+this.height+`]`},e}(),Wi=function(){function e(){for(var e=arguments,t=[],n=0;nt!=l>t&&e<(c-o)*((t-s)/(l-s))+o;u&&(n=!n)}return n},e.prototype.toString=function(){return`[@pixi/math:Polygon`+(`closeStroke=`+this.closeStroke)+(`points=`+this.points.reduce(function(e,t){return e+`, `+t},``)+`]`)},e}(),Gi=function(){function e(e,t,n,r,i){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=20),this.x=e,this.y=t,this.width=n,this.height=r,this.radius=i,this.type=Ri.RREC}return e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height,this.radius)},e.prototype.contains=function(e,t){if(this.width<=0||this.height<=0)return!1;if(e>=this.x&&e<=this.x+this.width&&t>=this.y&&t<=this.y+this.height){var n=Math.max(0,Math.min(this.radius,Math.min(this.width,this.height)/2));if(t>=this.y+n&&t<=this.y+this.height-n||e>=this.x+n&&e<=this.x+this.width-n)return!0;var r=e-(this.x+n),i=t-(this.y+n),a=n*n;if(r*r+i*i<=a||(r=e-(this.x+this.width-n),r*r+i*i<=a)||(i=t-(this.y+this.height-n),r*r+i*i<=a)||(r=e-(this.x+n),r*r+i*i<=a))return!0}return!1},e.prototype.toString=function(){return`[@pixi/math:RoundedRectangle x=`+this.x+` y=`+this.y+(`width=`+this.width+` height=`+this.height+` radius=`+this.radius+`]`)},e}(),Ki=function(){function e(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=0),this._x=n,this._y=r,this.cb=e,this.scope=t}return e.prototype.clone=function(t,n){return t===void 0&&(t=this.cb),n===void 0&&(n=this.scope),new e(t,n,this._x,this._y)},e.prototype.set=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),(this._x!==e||this._y!==t)&&(this._x=e,this._y=t,this.cb.call(this.scope)),this},e.prototype.copyFrom=function(e){return(this._x!==e.x||this._y!==e.y)&&(this._x=e.x,this._y=e.y,this.cb.call(this.scope)),this},e.prototype.copyTo=function(e){return e.set(this._x,this._y),e},e.prototype.equals=function(e){return e.x===this._x&&e.y===this._y},e.prototype.toString=function(){return`[@pixi/math:ObservablePoint x=0 y=0 scope=`+this.scope+`]`},Object.defineProperty(e.prototype,`x`,{get:function(){return this._x},set:function(e){this._x!==e&&(this._x=e,this.cb.call(this.scope))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`y`,{get:function(){return this._y},set:function(e){this._y!==e&&(this._y=e,this.cb.call(this.scope))},enumerable:!1,configurable:!0}),e}(),qi=function(){function e(e,t,n,r,i,a){e===void 0&&(e=1),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=1),i===void 0&&(i=0),a===void 0&&(a=0),this.array=null,this.a=e,this.b=t,this.c=n,this.d=r,this.tx=i,this.ty=a}return e.prototype.fromArray=function(e){this.a=e[0],this.b=e[1],this.c=e[3],this.d=e[4],this.tx=e[2],this.ty=e[5]},e.prototype.set=function(e,t,n,r,i,a){return this.a=e,this.b=t,this.c=n,this.d=r,this.tx=i,this.ty=a,this},e.prototype.toArray=function(e,t){this.array||=new Float32Array(9);var n=t||this.array;return e?(n[0]=this.a,n[1]=this.b,n[2]=0,n[3]=this.c,n[4]=this.d,n[5]=0,n[6]=this.tx,n[7]=this.ty,n[8]=1):(n[0]=this.a,n[1]=this.c,n[2]=this.tx,n[3]=this.b,n[4]=this.d,n[5]=this.ty,n[6]=0,n[7]=0,n[8]=1),n},e.prototype.apply=function(e,t){t||=new zi;var n=e.x,r=e.y;return t.x=this.a*n+this.c*r+this.tx,t.y=this.b*n+this.d*r+this.ty,t},e.prototype.applyInverse=function(e,t){t||=new zi;var n=1/(this.a*this.d+this.c*-this.b),r=e.x,i=e.y;return t.x=this.d*n*r+-this.c*n*i+(this.ty*this.c-this.tx*this.d)*n,t.y=this.a*n*i+-this.b*n*r+(-this.ty*this.a+this.tx*this.b)*n,t},e.prototype.translate=function(e,t){return this.tx+=e,this.ty+=t,this},e.prototype.scale=function(e,t){return this.a*=e,this.d*=t,this.c*=e,this.b*=t,this.tx*=e,this.ty*=t,this},e.prototype.rotate=function(e){var t=Math.cos(e),n=Math.sin(e),r=this.a,i=this.c,a=this.tx;return this.a=r*t-this.b*n,this.b=r*n+this.b*t,this.c=i*t-this.d*n,this.d=i*n+this.d*t,this.tx=a*t-this.ty*n,this.ty=a*n+this.ty*t,this},e.prototype.append=function(e){var t=this.a,n=this.b,r=this.c,i=this.d;return this.a=e.a*t+e.b*r,this.b=e.a*n+e.b*i,this.c=e.c*t+e.d*r,this.d=e.c*n+e.d*i,this.tx=e.tx*t+e.ty*r+this.tx,this.ty=e.tx*n+e.ty*i+this.ty,this},e.prototype.setTransform=function(e,t,n,r,i,a,o,s,c){return this.a=Math.cos(o+c)*i,this.b=Math.sin(o+c)*i,this.c=-Math.sin(o-s)*a,this.d=Math.cos(o-s)*a,this.tx=e-(n*this.a+r*this.c),this.ty=t-(n*this.b+r*this.d),this},e.prototype.prepend=function(e){var t=this.tx;if(e.a!==1||e.b!==0||e.c!==0||e.d!==1){var n=this.a,r=this.c;this.a=n*e.a+this.b*e.c,this.b=n*e.b+this.b*e.d,this.c=r*e.a+this.d*e.c,this.d=r*e.b+this.d*e.d}return this.tx=t*e.a+this.ty*e.c+e.tx,this.ty=t*e.b+this.ty*e.d+e.ty,this},e.prototype.decompose=function(e){var t=this.a,n=this.b,r=this.c,i=this.d,a=e.pivot,o=-Math.atan2(-r,i),s=Math.atan2(n,t),c=Math.abs(o+s);return c<1e-5||Math.abs(Fi-c)<1e-5?(e.rotation=s,e.skew.x=e.skew.y=0):(e.rotation=0,e.skew.x=o,e.skew.y=s),e.scale.x=Math.sqrt(t*t+n*n),e.scale.y=Math.sqrt(r*r+i*i),e.position.x=this.tx+(a.x*t+a.y*r),e.position.y=this.ty+(a.x*n+a.y*i),e},e.prototype.invert=function(){var e=this.a,t=this.b,n=this.c,r=this.d,i=this.tx,a=e*r-t*n;return this.a=r/a,this.b=-t/a,this.c=-n/a,this.d=e/a,this.tx=(n*this.ty-r*i)/a,this.ty=-(e*this.ty-t*i)/a,this},e.prototype.identity=function(){return this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0,this},e.prototype.clone=function(){var t=new e;return t.a=this.a,t.b=this.b,t.c=this.c,t.d=this.d,t.tx=this.tx,t.ty=this.ty,t},e.prototype.copyTo=function(e){return e.a=this.a,e.b=this.b,e.c=this.c,e.d=this.d,e.tx=this.tx,e.ty=this.ty,e},e.prototype.copyFrom=function(e){return this.a=e.a,this.b=e.b,this.c=e.c,this.d=e.d,this.tx=e.tx,this.ty=e.ty,this},e.prototype.toString=function(){return`[@pixi/math:Matrix a=`+this.a+` b=`+this.b+` c=`+this.c+` d=`+this.d+` tx=`+this.tx+` ty=`+this.ty+`]`},Object.defineProperty(e,`IDENTITY`,{get:function(){return new e},enumerable:!1,configurable:!0}),Object.defineProperty(e,`TEMP_MATRIX`,{get:function(){return new e},enumerable:!1,configurable:!0}),e}(),Ji=[1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1,0,1],Yi=[0,1,1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1],Xi=[0,-1,-1,-1,0,1,1,1,0,1,1,1,0,-1,-1,-1],Zi=[1,1,0,-1,-1,-1,0,1,-1,-1,0,1,1,1,0,-1],Qi=[],$i=[],ea=Math.sign;function ta(){for(var e=0;e<16;e++){var t=[];Qi.push(t);for(var n=0;n<16;n++)for(var r=ea(Ji[e]*Ji[n]+Xi[e]*Yi[n]),i=ea(Yi[e]*Ji[n]+Zi[e]*Yi[n]),a=ea(Ji[e]*Xi[n]+Xi[e]*Zi[n]),o=ea(Yi[e]*Xi[n]+Zi[e]*Zi[n]),s=0;s<16;s++)if(Ji[s]===r&&Yi[s]===i&&Xi[s]===a&&Zi[s]===o){t.push(s);break}}for(var e=0;e<16;e++){var c=new qi;c.set(Ji[e],Yi[e],Xi[e],Zi[e],0,0),$i.push(c)}}ta();var na={E:0,SE:1,S:2,SW:3,W:4,NW:5,N:6,NE:7,MIRROR_VERTICAL:8,MAIN_DIAGONAL:10,MIRROR_HORIZONTAL:12,REVERSE_DIAGONAL:14,uX:function(e){return Ji[e]},uY:function(e){return Yi[e]},vX:function(e){return Xi[e]},vY:function(e){return Zi[e]},inv:function(e){return e&8?e&15:-e&7},add:function(e,t){return Qi[e][t]},sub:function(e,t){return Qi[e][na.inv(t)]},rotate180:function(e){return e^4},isVertical:function(e){return(e&3)==2},byDirection:function(e,t){return Math.abs(e)*2<=Math.abs(t)?t>=0?na.S:na.N:Math.abs(t)*2<=Math.abs(e)?e>0?na.E:na.W:t>0?e>0?na.SE:na.SW:e>0?na.NE:na.NW},matrixAppendRotationInv:function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=0);var i=$i[na.inv(t)];i.tx=n,i.ty=r,e.append(i)}},ra=function(){function e(){this.worldTransform=new qi,this.localTransform=new qi,this.position=new Ki(this.onChange,this,0,0),this.scale=new Ki(this.onChange,this,1,1),this.pivot=new Ki(this.onChange,this,0,0),this.skew=new Ki(this.updateSkew,this,0,0),this._rotation=0,this._cx=1,this._sx=0,this._cy=0,this._sy=1,this._localID=0,this._currentLocalID=0,this._worldID=0,this._parentID=0}return e.prototype.onChange=function(){this._localID++},e.prototype.updateSkew=function(){this._cx=Math.cos(this._rotation+this.skew.y),this._sx=Math.sin(this._rotation+this.skew.y),this._cy=-Math.sin(this._rotation-this.skew.x),this._sy=Math.cos(this._rotation-this.skew.x),this._localID++},e.prototype.toString=function(){return`[@pixi/math:Transform `+(`position=(`+this.position.x+`, `+this.position.y+`) `)+(`rotation=`+this.rotation+` `)+(`scale=(`+this.scale.x+`, `+this.scale.y+`) `)+(`skew=(`+this.skew.x+`, `+this.skew.y+`) `)+`]`},e.prototype.updateLocalTransform=function(){var e=this.localTransform;this._localID!==this._currentLocalID&&(e.a=this._cx*this.scale.x,e.b=this._sx*this.scale.x,e.c=this._cy*this.scale.y,e.d=this._sy*this.scale.y,e.tx=this.position.x-(this.pivot.x*e.a+this.pivot.y*e.c),e.ty=this.position.y-(this.pivot.x*e.b+this.pivot.y*e.d),this._currentLocalID=this._localID,this._parentID=-1)},e.prototype.updateTransform=function(e){var t=this.localTransform;if(this._localID!==this._currentLocalID&&(t.a=this._cx*this.scale.x,t.b=this._sx*this.scale.x,t.c=this._cy*this.scale.y,t.d=this._sy*this.scale.y,t.tx=this.position.x-(this.pivot.x*t.a+this.pivot.y*t.c),t.ty=this.position.y-(this.pivot.x*t.b+this.pivot.y*t.d),this._currentLocalID=this._localID,this._parentID=-1),this._parentID!==e._worldID){var n=e.worldTransform,r=this.worldTransform;r.a=t.a*n.a+t.b*n.c,r.b=t.a*n.b+t.b*n.d,r.c=t.c*n.a+t.d*n.c,r.d=t.c*n.b+t.d*n.d,r.tx=t.tx*n.a+t.ty*n.c+n.tx,r.ty=t.tx*n.b+t.ty*n.d+n.ty,this._parentID=e._worldID,this._worldID++}},e.prototype.setFromMatrix=function(e){e.decompose(this),this._localID++},Object.defineProperty(e.prototype,`rotation`,{get:function(){return this._rotation},set:function(e){this._rotation!==e&&(this._rotation=e,this.updateSkew())},enumerable:!1,configurable:!0}),e.IDENTITY=new e,e}();Rr.PREFER_ENV=Fr.any?Xn.WEBGL:Xn.WEBGL2,Rr.STRICT_TEXTURE_CACHE=!1;var ia=[];function aa(e,t){if(!e)return null;var n=``;if(typeof e==`string`){var r=/\.(\w{3,4})(?:$|\?|#)/i.exec(e);r&&(n=r[1].toLowerCase())}for(var i=ia.length-1;i>=0;--i){var a=ia[i];if(a.test&&a.test(e,n))return new a(e,t)}throw Error(`Unrecognized source type to auto-detect Resource`)} +/*! ***************************************************************************** + +Copyright (c) Microsoft Corporation. + + + +Permission to use, copy, modify, and/or distribute this software for any + +purpose with or without fee is hereby granted. + + + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + +PERFORMANCE OF THIS SOFTWARE. + +***************************************************************************** */ +var oa=function(e,t){return oa=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},oa(e,t)};function sa(e,t){oa(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var ca=function(){return ca=Object.assign||function(e){for(var t=arguments,n,r=1,i=arguments.length;r0&&l>0,r.textureCacheIds=[],r.destroyed=!1,r.resource=null,r._batchEnabled=0,r._batchLocation=0,r.parentTextureArray=null,r.setResource(t),r}return Object.defineProperty(t.prototype,`realWidth`,{get:function(){return Math.round(this.width*this.resolution)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`realHeight`,{get:function(){return Math.round(this.height*this.resolution)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`mipmap`,{get:function(){return this._mipmap},set:function(e){this._mipmap!==e&&(this._mipmap=e,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scaleMode`,{get:function(){return this._scaleMode},set:function(e){this._scaleMode!==e&&(this._scaleMode=e,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`wrapMode`,{get:function(){return this._wrapMode},set:function(e){this._wrapMode!==e&&(this._wrapMode=e,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),t.prototype.setStyle=function(e,t){var n;return e!==void 0&&e!==this.scaleMode&&(this.scaleMode=e,n=!0),t!==void 0&&t!==this.mipmap&&(this.mipmap=t,n=!0),n&&this.dirtyStyleId++,this},t.prototype.setSize=function(e,t,n){return n||=this.resolution,this.setRealSize(e*n,t*n,n)},t.prototype.setRealSize=function(e,t,n){return this.resolution=n||this.resolution,this.width=Math.round(e)/this.resolution,this.height=Math.round(t)/this.resolution,this._refreshPOT(),this.update(),this},t.prototype._refreshPOT=function(){this.isPowerOfTwo=fi(this.realWidth)&&fi(this.realHeight)},t.prototype.setResolution=function(e){var t=this.resolution;return t===e?this:(this.resolution=e,this.valid&&(this.width=Math.round(this.width*t)/e,this.height=Math.round(this.height*t)/e,this.emit(`update`,this)),this._refreshPOT(),this)},t.prototype.setResource=function(e){if(this.resource===e)return this;if(this.resource)throw Error(`Resource can be set only once`);return e.bind(this),this.resource=e,this},t.prototype.update=function(){this.valid?(this.dirtyId++,this.dirtyStyleId++,this.emit(`update`,this)):this.width>0&&this.height>0&&(this.valid=!0,this.emit(`loaded`,this),this.emit(`update`,this))},t.prototype.onError=function(e){this.emit(`error`,this,e)},t.prototype.destroy=function(){this.resource&&(this.resource.unbind(this),this.resource.internal&&this.resource.destroy(),this.resource=null),this.cacheId&&(delete xi[this.cacheId],delete bi[this.cacheId],this.cacheId=null),this.dispose(),t.removeFromCache(this),this.textureCacheIds=null,this.destroyed=!0},t.prototype.dispose=function(){this.emit(`dispose`,this)},t.prototype.castToBaseTexture=function(){return this},t.from=function(e,n,r){r===void 0&&(r=Rr.STRICT_TEXTURE_CACHE);var i=typeof e==`string`,a=null;if(i)a=e;else{if(!e._pixiId){var o=n&&n.pixiIdPrefix||`pixiid`;e._pixiId=o+`_`+gi()}a=e._pixiId}var s=xi[a];if(i&&r&&!s)throw Error(`The cacheId "`+a+`" does not exist in BaseTextureCache.`);return s||(s=new t(e,n),s.cacheId=a,t.addToCache(s,a)),s},t.fromBuffer=function(e,n,r,i){e||=new Float32Array(n*r*4);var a=new da(e,{width:n,height:r}),o=e instanceof Float32Array?rr.FLOAT:rr.UNSIGNED_BYTE;return new t(a,Object.assign({},fa,i||{width:n,height:r,type:o}))},t.addToCache=function(e,t){t&&(e.textureCacheIds.indexOf(t)===-1&&e.textureCacheIds.push(t),xi[t]&&console.warn(`BaseTexture added to the cache with an id [`+t+`] that already had an entry`),xi[t]=e)},t.removeFromCache=function(e){if(typeof e==`string`){var t=xi[e];if(t){var n=t.textureCacheIds.indexOf(e);return n>-1&&t.textureCacheIds.splice(n,1),delete xi[e],t}}else if(e&&e.textureCacheIds){for(var r=0;r0)if(e.resource)this.addResourceAt(e.resource,t);else throw Error(`CubeResource does not support copying of renderTexture.`);else e.target=nr.TEXTURE_CUBE_MAP_POSITIVE_X+t,e.parentTextureArray=this.baseTexture,this.items[t]=e;return e.valid&&!this.valid&&this.resize(e.realWidth,e.realHeight),this.items[t]=e,this},t.prototype.upload=function(e,n,r){for(var i=this.itemDirtyIds,a=0;a)?\s*()]*-->)?\s*\]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^>]*(?:\s(width|height)=('|")(\d*(?:\.\d+)?)(?:px)?('|"))[^>]*>/i,t}(ga),xa=function(e){sa(t,e);function t(n,r){var i=this;if(r||={},!(n instanceof HTMLVideoElement)){var a=document.createElement(`video`);a.setAttribute(`preload`,`auto`),a.setAttribute(`webkit-playsinline`,``),a.setAttribute(`playsinline`,``),typeof n==`string`&&(n=[n]);var o=n[0].src||n[0];ga.crossOrigin(a,o,r.crossorigin);for(var s=0;s2},t.prototype._onPlayStart=function(){this.valid||this._onCanPlay(),this.autoUpdate&&!this._isConnectedToTicker&&(Ni.shared.add(this.update,this),this._isConnectedToTicker=!0)},t.prototype._onPlayStop=function(){this._isConnectedToTicker&&(Ni.shared.remove(this.update,this),this._isConnectedToTicker=!1)},t.prototype._onCanPlay=function(){var e=this.source;e.removeEventListener(`canplay`,this._onCanPlay),e.removeEventListener(`canplaythrough`,this._onCanPlay);var t=this.valid;this.resize(e.videoWidth,e.videoHeight),!t&&this._resolve&&(this._resolve(this),this._resolve=null),this._isSourcePlaying()?this._onPlayStart():this.autoPlay&&e.play()},t.prototype.dispose=function(){this._isConnectedToTicker&&(Ni.shared.remove(this.update,this),this._isConnectedToTicker=!1);var t=this.source;t&&(t.removeEventListener(`error`,this._onError,!0),t.pause(),t.src=``,t.load()),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,`autoUpdate`,{get:function(){return this._autoUpdate},set:function(e){e!==this._autoUpdate&&(this._autoUpdate=e,!this._autoUpdate&&this._isConnectedToTicker?(Ni.shared.remove(this.update,this),this._isConnectedToTicker=!1):this._autoUpdate&&!this._isConnectedToTicker&&this._isSourcePlaying()&&(Ni.shared.add(this.update,this),this._isConnectedToTicker=!0))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`updateFPS`,{get:function(){return this._updateFPS},set:function(e){e!==this._updateFPS&&(this._updateFPS=e)},enumerable:!1,configurable:!0}),t.test=function(e,n){return globalThis.HTMLVideoElement&&e instanceof HTMLVideoElement||t.TYPES.indexOf(n)>-1},t.TYPES=[`mp4`,`m4v`,`webm`,`ogg`,`ogv`,`h264`,`avi`,`mov`],t.MIME_TYPES={ogv:`video/ogg`,mov:`video/quicktime`,m4v:`video/mp4`},t}(ga),Sa=function(e){sa(t,e);function t(t){return e.call(this,t)||this}return t.test=function(e){return!!globalThis.createImageBitmap&&typeof ImageBitmap<`u`&&e instanceof ImageBitmap},t}(ga);ia.push(ya,Sa,_a,xa,ba,da,va,ha);var Ca={__proto__:null,Resource:ua,BaseImageResource:ga,INSTALLED:ia,autoDetectResource:aa,AbstractMultiResource:ma,ArrayResource:ha,BufferResource:da,CanvasResource:_a,CubeResource:va,ImageResource:ya,SVGResource:ba,VideoResource:xa,ImageBitmapResource:Sa},wa=function(e){sa(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.upload=function(e,t,n){var r=e.gl;r.pixelStorei(r.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.alphaMode===cr.UNPACK);var i=t.realWidth,a=t.realHeight;return n.width===i&&n.height===a?r.texSubImage2D(t.target,0,0,0,i,a,t.format,n.type,this.data):(n.width=i,n.height=a,r.texImage2D(t.target,0,n.internalFormat,i,a,0,t.format,n.type,this.data)),!0},t}(da),Ta=function(){function e(e,t){this.width=Math.round(e||100),this.height=Math.round(t||100),this.stencil=!1,this.depth=!1,this.dirtyId=0,this.dirtyFormat=0,this.dirtySize=0,this.depthTexture=null,this.colorTextures=[],this.glFramebuffers={},this.disposeRunner=new Ai(`disposeFramebuffer`),this.multisample=mr.NONE}return Object.defineProperty(e.prototype,`colorTexture`,{get:function(){return this.colorTextures[0]},enumerable:!1,configurable:!0}),e.prototype.addColorTexture=function(e,t){return e===void 0&&(e=0),this.colorTextures[e]=t||new pa(null,{scaleMode:ar.NEAREST,resolution:1,mipmap:sr.OFF,width:this.width,height:this.height}),this.dirtyId++,this.dirtyFormat++,this},e.prototype.addDepthTexture=function(e){return this.depthTexture=e||new pa(new wa(null,{width:this.width,height:this.height}),{scaleMode:ar.NEAREST,resolution:1,width:this.width,height:this.height,mipmap:sr.OFF,format:tr.DEPTH_COMPONENT,type:rr.UNSIGNED_SHORT}),this.dirtyId++,this.dirtyFormat++,this},e.prototype.enableDepth=function(){return this.depth=!0,this.dirtyId++,this.dirtyFormat++,this},e.prototype.enableStencil=function(){return this.stencil=!0,this.dirtyId++,this.dirtyFormat++,this},e.prototype.resize=function(e,t){if(e=Math.round(e),t=Math.round(t),!(e===this.width&&t===this.height)){this.width=e,this.height=t,this.dirtyId++,this.dirtySize++;for(var n=0;n-1&&t.textureCacheIds.splice(n,1),delete bi[e],t}}else if(e&&e.textureCacheIds){for(var r=0;rthis.baseTexture.width,o=n+i>this.baseTexture.height;if(a||o){var s=a&&o?`and`:`or`,c=`X: `+t+` + `+r+` = `+(t+r)+` > `+this.baseTexture.width,l=`Y: `+n+` + `+i+` = `+(n+i)+` > `+this.baseTexture.height;throw Error(`Texture Error: frame does not fit inside the base Texture dimensions: `+(c+` `+s+` `+l))}this.valid=r&&i&&this.baseTexture.valid,!this.trim&&!this.rotate&&(this.orig=e),this.valid&&this.updateUvs()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`rotate`,{get:function(){return this._rotate},set:function(e){this._rotate=e,this.valid&&this.updateUvs()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`width`,{get:function(){return this.orig.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`height`,{get:function(){return this.orig.height},enumerable:!1,configurable:!0}),t.prototype.castToBaseTexture=function(){return this.baseTexture},Object.defineProperty(t,`EMPTY`,{get:function(){return t._EMPTY||(t._EMPTY=new t(new pa),ka(t._EMPTY),ka(t._EMPTY.baseTexture)),t._EMPTY},enumerable:!1,configurable:!0}),Object.defineProperty(t,`WHITE`,{get:function(){if(!t._WHITE){var e=Rr.ADAPTER.createCanvas(16,16),n=e.getContext(`2d`);e.width=16,e.height=16,n.fillStyle=`white`,n.fillRect(0,0,16,16),t._WHITE=new t(pa.from(e)),ka(t._WHITE),ka(t._WHITE.baseTexture)}return t._WHITE},enumerable:!1,configurable:!0}),t}(Yr.default),ja=function(e){sa(t,e);function t(t,n){var r=e.call(this,t,n)||this;return r.valid=!0,r.filterFrame=null,r.filterPoolKey=null,r.updateUvs(),r}return Object.defineProperty(t.prototype,`framebuffer`,{get:function(){return this.baseTexture.framebuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`multisample`,{get:function(){return this.framebuffer.multisample},set:function(e){this.framebuffer.multisample=e},enumerable:!1,configurable:!0}),t.prototype.resize=function(e,t,n){n===void 0&&(n=!0);var r=this.baseTexture.resolution,i=Math.round(e*r)/r,a=Math.round(t*r)/r;this.valid=i>0&&a>0,this._frame.width=this.orig.width=i,this._frame.height=this.orig.height=a,n&&this.baseTexture.resize(i,a),this.updateUvs()},t.prototype.setResolution=function(e){var t=this.baseTexture;t.resolution!==e&&(t.setResolution(e),this.resize(t.width,t.height,!1))},t.create=function(e){for(var n=arguments,r=[],i=1;i>>0,r>1&&(i+=r*4294967296)):i=r>1?-r:-1,this.texturePool[i]||(this.texturePool[i]=[]);var a=this.texturePool[i].pop();return a||=this.createTexture(e,t,r),a.filterPoolKey=i,a.setResolution(n),a},e.prototype.getFilterTexture=function(e,t,n){var r=this.getOptimalTexture(e.width,e.height,t||e.resolution,n||mr.NONE);return r.filterFrame=e.filterFrame,r},e.prototype.returnTexture=function(e){var t=e.filterPoolKey;e.filterFrame=null,this.texturePool[t].push(e)},e.prototype.returnFilterTexture=function(e){this.returnTexture(e)},e.prototype.clear=function(e){if(e=e!==!1,e)for(var t in this.texturePool){var n=this.texturePool[t];if(n)for(var r=0;r0&&e.height>0,this.texturePool){if(!(Number(t)<0))continue;var n=this.texturePool[t];if(n)for(var r=0;r1){for(var l=0;l1&&(u=this.getOptimalFilterTexture(l.width,l.height,t.resolution),u.filterFrame=l.filterFrame),n[d].apply(this,l,u,lr.CLEAR,t);var f=l;l=u,u=f}n[d].apply(this,l,c.renderTexture,lr.BLEND,t),d>1&&t.multisample>1&&this.returnFilterTexture(t.renderTexture),this.returnFilterTexture(l),this.returnFilterTexture(u)}t.clear(),this.statePool.push(t)},e.prototype.bindAndClear=function(e,t){t===void 0&&(t=lr.CLEAR);var n=this.renderer,r=n.renderTexture,i=n.state;if(e===this.defaultFilterStack[this.defaultFilterStack.length-1].renderTexture?this.renderer.projection.transform=this.activeState.transform:this.renderer.projection.transform=null,e&&e.filterFrame){var a=this.tempRect;a.x=0,a.y=0,a.width=e.filterFrame.width,a.height=e.filterFrame.height,r.bind(e,e.filterFrame,a)}else e===this.defaultFilterStack[this.defaultFilterStack.length-1].renderTexture?this.renderer.renderTexture.bind(e,this.activeState.bindingSourceFrame,this.activeState.bindingDestinationFrame):r.bind(e);var o=i.stateId&1||this.forceClear;(t===lr.CLEAR||t===lr.BLIT&&o)&&this.renderer.framebuffer.clear(0,0,0,0)},e.prototype.applyFilter=function(e,t,n,r){var i=this.renderer;i.state.set(e.state),this.bindAndClear(n,r),e.uniforms.uSampler=t,e.uniforms.filterGlobals=this.globalUniforms,i.shader.bind(e),e.legacy=!!e.program.attributeData.aTextureCoord,e.legacy?(this.quadUv.map(t._frame,t.filterFrame),i.geometry.bind(this.quadUv),i.geometry.draw(er.TRIANGLES)):(i.geometry.bind(this.quad),i.geometry.draw(er.TRIANGLE_STRIP))},e.prototype.calculateSpriteMatrix=function(e,t){var n=this.activeState,r=n.sourceFrame,i=n.destinationFrame,a=t._texture.orig,o=e.set(i.width,0,0,i.height,r.x,r.y),s=t.worldTransform.copyTo(qi.TEMP_MATRIX);return s.invert(),o.prepend(s),o.scale(1/a.width,1/a.height),o.translate(t.anchor.x,t.anchor.y),o},e.prototype.destroy=function(){this.renderer=null,this.texturePool.clear(!1)},e.prototype.getOptimalFilterTexture=function(e,t,n,r){return n===void 0&&(n=1),r===void 0&&(r=mr.NONE),this.texturePool.getOptimalTexture(e,t,n,r)},e.prototype.getFilterTexture=function(e,t,n){if(typeof e==`number`){var r=e;e=t,t=r}e||=this.activeState.renderTexture;var i=this.texturePool.getOptimalTexture(e.width,e.height,t||e.resolution,n||mr.NONE);return i.filterFrame=e.filterFrame,i},e.prototype.returnFilterTexture=function(e){this.texturePool.returnTexture(e)},e.prototype.emptyPool=function(){this.texturePool.clear(!0)},e.prototype.resize=function(){this.texturePool.setScreenSize(this.renderer.view)},e.prototype.transformAABB=function(e,t){var n=qa[0],r=qa[1],i=qa[2],a=qa[3];n.set(t.left,t.top),r.set(t.left,t.bottom),i.set(t.right,t.top),a.set(t.right,t.bottom),e.apply(n,n),e.apply(r,r),e.apply(i,i),e.apply(a,a);var o=Math.min(n.x,r.x,i.x,a.x),s=Math.min(n.y,r.y,i.y,a.y),c=Math.max(n.x,r.x,i.x,a.x),l=Math.max(n.y,r.y,i.y,a.y);t.x=o,t.y=s,t.width=c-o,t.height=l-s},e.prototype.roundFrame=function(e,t,n,r,i){if(!(e.width<=0||e.height<=0||n.width<=0||n.height<=0)){if(i){var a=i.a,o=i.b,s=i.c,c=i.d;if((Math.abs(o)>1e-4||Math.abs(s)>1e-4)&&(Math.abs(a)>1e-4||Math.abs(c)>1e-4))return}i=i?Ja.copyFrom(i):Ja.identity(),i.translate(-n.x,-n.y).scale(r.width/n.width,r.height/n.height).translate(r.x,r.y),this.transformAABB(i,e),e.ceil(t),this.transformAABB(i.invert(),e)}},e}(),Xa=function(){function e(e){this.renderer=e}return e.prototype.flush=function(){},e.prototype.destroy=function(){this.renderer=null},e.prototype.start=function(){},e.prototype.stop=function(){this.flush()},e.prototype.render=function(e){},e}(),Za=function(){function e(e){this.renderer=e,this.emptyRenderer=new Xa(e),this.currentRenderer=this.emptyRenderer}return e.prototype.setObjectRenderer=function(e){this.currentRenderer!==e&&(this.currentRenderer.stop(),this.currentRenderer=e,this.currentRenderer.start())},e.prototype.flush=function(){this.setObjectRenderer(this.emptyRenderer)},e.prototype.reset=function(){this.setObjectRenderer(this.emptyRenderer)},e.prototype.copyBoundTextures=function(e,t){for(var n=this.renderer.texture.boundTextures,r=t-1;r>=0;--r)e[r]=n[r]||null,e[r]&&(e[r]._batchLocation=r)},e.prototype.boundArray=function(e,t,n,r){for(var i=e.elements,a=e.ids,o=e.count,s=0,c=0;c=0&&u=Xn.WEBGL2&&(n=e.getContext(`webgl2`,t)),n)this.webGLVersion=2;else if(this.webGLVersion=1,n=e.getContext(`webgl`,t)||e.getContext(`experimental-webgl`,t),!n)throw Error(`This browser does not support WebGL. Try using the canvas renderer`);return this.gl=n,this.getExtensions(),this.gl},e.prototype.getExtensions=function(){var e=this.gl,t={loseContext:e.getExtension(`WEBGL_lose_context`),anisotropicFiltering:e.getExtension(`EXT_texture_filter_anisotropic`),floatTextureLinear:e.getExtension(`OES_texture_float_linear`),s3tc:e.getExtension(`WEBGL_compressed_texture_s3tc`),s3tc_sRGB:e.getExtension(`WEBGL_compressed_texture_s3tc_srgb`),etc:e.getExtension(`WEBGL_compressed_texture_etc`),etc1:e.getExtension(`WEBGL_compressed_texture_etc1`),pvrtc:e.getExtension(`WEBGL_compressed_texture_pvrtc`)||e.getExtension(`WEBKIT_WEBGL_compressed_texture_pvrtc`),atc:e.getExtension(`WEBGL_compressed_texture_atc`),astc:e.getExtension(`WEBGL_compressed_texture_astc`)};this.webGLVersion===1?Object.assign(this.extensions,t,{drawBuffers:e.getExtension(`WEBGL_draw_buffers`),depthTexture:e.getExtension(`WEBGL_depth_texture`),vertexArrayObject:e.getExtension(`OES_vertex_array_object`)||e.getExtension(`MOZ_OES_vertex_array_object`)||e.getExtension(`WEBKIT_OES_vertex_array_object`),uint32ElementIndex:e.getExtension(`OES_element_index_uint`),floatTexture:e.getExtension(`OES_texture_float`),floatTextureLinear:e.getExtension(`OES_texture_float_linear`),textureHalfFloat:e.getExtension(`OES_texture_half_float`),textureHalfFloatLinear:e.getExtension(`OES_texture_half_float_linear`)}):this.webGLVersion===2&&Object.assign(this.extensions,t,{colorBufferFloat:e.getExtension(`EXT_color_buffer_float`)})},e.prototype.handleContextLost=function(e){var t=this;e.preventDefault(),setTimeout(function(){t.gl.isContextLost()&&t.extensions.loseContext&&t.extensions.loseContext.restoreContext()},0)},e.prototype.handleContextRestored=function(){this.renderer.runners.contextChange.emit(this.gl)},e.prototype.destroy=function(){var e=this.renderer.view;this.renderer=null,e.removeEventListener(`webglcontextlost`,this.handleContextLost),e.removeEventListener(`webglcontextrestored`,this.handleContextRestored),this.gl.useProgram(null),this.extensions.loseContext&&this.extensions.loseContext.loseContext()},e.prototype.postrender=function(){this.renderer.renderingToScreen&&this.gl.flush()},e.prototype.validateContext=function(e){var t=e.getContextAttributes(),n=`WebGL2RenderingContext`in globalThis&&e instanceof globalThis.WebGL2RenderingContext;n&&(this.webGLVersion=2),t&&!t.stencil&&console.warn(`Provided WebGL context does not have a stencil buffer, masks may not render correctly`);var r=n||!!e.getExtension(`OES_element_index_uint`);this.supports.uint32Indices=r,r||console.warn(`Provided WebGL context does not support 32 index buffer, complex graphics may not render correctly`)},e}(),eo=function(){function e(e){this.framebuffer=e,this.stencil=null,this.dirtyId=-1,this.dirtyFormat=-1,this.dirtySize=-1,this.multisample=mr.NONE,this.msaaBuffer=null,this.blitFramebuffer=null,this.mipLevel=0}return e}(),to=new Vi,no=function(){function e(e){this.renderer=e,this.managedFramebuffers=[],this.unknownFramebuffer=new Ta(10,10),this.msaaSamples=null}return e.prototype.contextChange=function(){this.disposeAll(!0);var e=this.gl=this.renderer.gl;if(this.CONTEXT_UID=this.renderer.CONTEXT_UID,this.current=this.unknownFramebuffer,this.viewport=new Vi,this.hasMRT=!0,this.writeDepthTexture=!0,this.renderer.context.webGLVersion===1){var t=this.renderer.context.extensions.drawBuffers,n=this.renderer.context.extensions.depthTexture;Rr.PREFER_ENV===Xn.WEBGL_LEGACY&&(t=null,n=null),t?e.drawBuffers=function(e){return t.drawBuffersWEBGL(e)}:(this.hasMRT=!1,e.drawBuffers=function(){}),n||(this.writeDepthTexture=!1)}else this.msaaSamples=e.getInternalformatParameter(e.RENDERBUFFER,e.RGBA8,e.SAMPLES)},e.prototype.bind=function(e,t,n){n===void 0&&(n=0);var r=this.gl;if(e){var i=e.glFramebuffers[this.CONTEXT_UID]||this.initFramebuffer(e);this.current!==e&&(this.current=e,r.bindFramebuffer(r.FRAMEBUFFER,i.framebuffer)),i.mipLevel!==n&&(e.dirtyId++,e.dirtyFormat++,i.mipLevel=n),i.dirtyId!==e.dirtyId&&(i.dirtyId=e.dirtyId,i.dirtyFormat===e.dirtyFormat?i.dirtySize!==e.dirtySize&&(i.dirtySize=e.dirtySize,this.resizeFramebuffer(e)):(i.dirtyFormat=e.dirtyFormat,i.dirtySize=e.dirtySize,this.updateFramebuffer(e,n)));for(var a=0;a>n,c=t.height>>n,l=s/t.width;this.setViewport(t.x*l,t.y*l,s,c)}else{var s=e.width>>n,c=e.height>>n;this.setViewport(0,0,s,c)}}else this.current&&(this.current=null,r.bindFramebuffer(r.FRAMEBUFFER,null)),t?this.setViewport(t.x,t.y,t.width,t.height):this.setViewport(0,0,this.renderer.width,this.renderer.height)},e.prototype.setViewport=function(e,t,n,r){var i=this.viewport;e=Math.round(e),t=Math.round(t),n=Math.round(n),r=Math.round(r),(i.width!==n||i.height!==r||i.x!==e||i.y!==t)&&(i.x=e,i.y=t,i.width=n,i.height=r,this.gl.viewport(e,t,n,r))},Object.defineProperty(e.prototype,`size`,{get:function(){return this.current?{x:0,y:0,width:this.current.width,height:this.current.height}:{x:0,y:0,width:this.renderer.width,height:this.renderer.height}},enumerable:!1,configurable:!0}),e.prototype.clear=function(e,t,n,r,i){i===void 0&&(i=Qn.COLOR|Qn.DEPTH);var a=this.gl;a.clearColor(e,t,n,r),a.clear(i)},e.prototype.initFramebuffer=function(e){var t=this.gl,n=new eo(t.createFramebuffer());return n.multisample=this.detectSamples(e.multisample),e.glFramebuffers[this.CONTEXT_UID]=n,this.managedFramebuffers.push(e),e.disposeRunner.add(this),n},e.prototype.resizeFramebuffer=function(e){var t=this.gl,n=e.glFramebuffers[this.CONTEXT_UID];n.msaaBuffer&&(t.bindRenderbuffer(t.RENDERBUFFER,n.msaaBuffer),t.renderbufferStorageMultisample(t.RENDERBUFFER,n.multisample,t.RGBA8,e.width,e.height)),n.stencil&&(t.bindRenderbuffer(t.RENDERBUFFER,n.stencil),n.msaaBuffer?t.renderbufferStorageMultisample(t.RENDERBUFFER,n.multisample,t.DEPTH24_STENCIL8,e.width,e.height):t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_STENCIL,e.width,e.height));var r=e.colorTextures,i=r.length;t.drawBuffers||(i=Math.min(i,1));for(var a=0;a1&&this.canMultisampleFramebuffer(e)?(r.msaaBuffer=r.msaaBuffer||n.createRenderbuffer(),n.bindRenderbuffer(n.RENDERBUFFER,r.msaaBuffer),n.renderbufferStorageMultisample(n.RENDERBUFFER,r.multisample,n.RGBA8,e.width,e.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0,n.RENDERBUFFER,r.msaaBuffer)):r.msaaBuffer&&(n.deleteRenderbuffer(r.msaaBuffer),r.msaaBuffer=null,r.blitFramebuffer&&(r.blitFramebuffer.dispose(),r.blitFramebuffer=null));for(var o=[],s=0;s1&&n.drawBuffers(o),e.depthTexture){var u=this.writeDepthTexture;if(u){var d=e.depthTexture;this.renderer.texture.bind(d,0),n.framebufferTexture2D(n.FRAMEBUFFER,n.DEPTH_ATTACHMENT,n.TEXTURE_2D,d._glTextures[this.CONTEXT_UID].texture,t)}}(e.stencil||e.depth)&&!(e.depthTexture&&this.writeDepthTexture)?(r.stencil=r.stencil||n.createRenderbuffer(),n.bindRenderbuffer(n.RENDERBUFFER,r.stencil),r.msaaBuffer?n.renderbufferStorageMultisample(n.RENDERBUFFER,r.multisample,n.DEPTH24_STENCIL8,e.width,e.height):n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_STENCIL,e.width,e.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.RENDERBUFFER,r.stencil)):r.stencil&&(n.deleteRenderbuffer(r.stencil),r.stencil=null)},e.prototype.canMultisampleFramebuffer=function(e){return this.renderer.context.webGLVersion!==1&&e.colorTextures.length<=1&&!e.depthTexture},e.prototype.detectSamples=function(e){var t=this.msaaSamples,n=mr.NONE;if(e<=1||t===null)return n;for(var r=0;r=0&&this.managedFramebuffers.splice(i,1),e.disposeRunner.remove(this),t||(r.deleteFramebuffer(n.framebuffer),n.msaaBuffer&&r.deleteRenderbuffer(n.msaaBuffer),n.stencil&&r.deleteRenderbuffer(n.stencil)),n.blitFramebuffer&&n.blitFramebuffer.dispose()}},e.prototype.disposeAll=function(e){var t=this.managedFramebuffers;this.managedFramebuffers=[];for(var n=0;n=Xn.WEBGL2&&(t=e.getContext(`webgl2`,{})),t||(t=e.getContext(`webgl`,{})||e.getContext(`experimental-webgl`,{}),t?t.getExtension(`WEBGL_draw_buffers`):t=null),po=t}return po}var ho;function go(){if(!ho){ho=dr.MEDIUM;var e=mo();if(e&&e.getShaderPrecisionFormat){var t=e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT);ho=t.precision?dr.HIGH:dr.MEDIUM}}return ho}function _o(e,t,n){if(e.substring(0,9)!==`precision`){var r=t;return t===dr.HIGH&&n!==dr.HIGH&&(r=dr.MEDIUM),`precision `+r+` float; +`+e}else if(n!==dr.HIGH&&e.substring(0,15)===`precision highp`)return e.replace(`precision highp`,`precision mediump`);return e}var vo={float:1,vec2:2,vec3:3,vec4:4,int:1,ivec2:2,ivec3:3,ivec4:4,uint:1,uvec2:2,uvec3:3,uvec4:4,bool:1,bvec2:2,bvec3:3,bvec4:4,mat2:4,mat3:9,mat4:16,sampler2D:1};function yo(e){return vo[e]}var bo=null,xo={FLOAT:`float`,FLOAT_VEC2:`vec2`,FLOAT_VEC3:`vec3`,FLOAT_VEC4:`vec4`,INT:`int`,INT_VEC2:`ivec2`,INT_VEC3:`ivec3`,INT_VEC4:`ivec4`,UNSIGNED_INT:`uint`,UNSIGNED_INT_VEC2:`uvec2`,UNSIGNED_INT_VEC3:`uvec3`,UNSIGNED_INT_VEC4:`uvec4`,BOOL:`bool`,BOOL_VEC2:`bvec2`,BOOL_VEC3:`bvec3`,BOOL_VEC4:`bvec4`,FLOAT_MAT2:`mat2`,FLOAT_MAT3:`mat3`,FLOAT_MAT4:`mat4`,SAMPLER_2D:`sampler2D`,INT_SAMPLER_2D:`sampler2D`,UNSIGNED_INT_SAMPLER_2D:`sampler2D`,SAMPLER_CUBE:`samplerCube`,INT_SAMPLER_CUBE:`samplerCube`,UNSIGNED_INT_SAMPLER_CUBE:`samplerCube`,SAMPLER_2D_ARRAY:`sampler2DArray`,INT_SAMPLER_2D_ARRAY:`sampler2DArray`,UNSIGNED_INT_SAMPLER_2D_ARRAY:`sampler2DArray`};function So(e,t){if(!bo){var n=Object.keys(xo);bo={};for(var r=0;r0&&(t+=` +else `),n0?this.maskStack[this.maskStack.length-1]._colorMask:15;n!==t&&this.renderer.gl.colorMask((n&1)!=0,(n&2)!=0,(n&4)!=0,(n&8)!=0)},e.prototype.destroy=function(){this.renderer=null},e}(),es=function(){function e(e){this.renderer=e,this.maskStack=[],this.glConst=0}return e.prototype.getStackLength=function(){return this.maskStack.length},e.prototype.setMaskStack=function(e){var t=this.renderer.gl,n=this.getStackLength();this.maskStack=e;var r=this.getStackLength();r!==n&&(r===0?t.disable(this.glConst):(t.enable(this.glConst),this._useCurrent()))},e.prototype._useCurrent=function(){},e.prototype.destroy=function(){this.renderer=null,this.maskStack=null},e}(),ts=new qi,ns=[],rs=function(e){sa(t,e);function t(t){var n=e.call(this,t)||this;return n.glConst=Rr.ADAPTER.getWebGLRenderingContext().SCISSOR_TEST,n}return t.prototype.getStackLength=function(){var e=this.maskStack[this.maskStack.length-1];return e?e._scissorCounter:0},t.prototype.calcScissorRect=function(e){var t;if(!e._scissorRectLocal){var n=e._scissorRect,r=e.maskObject,i=this.renderer,a=i.renderTexture,o=r.getBounds(!0,(t=ns.pop())??new Vi);this.roundFrameToPixels(o,a.current?a.current.resolution:i.resolution,a.sourceFrame,a.destinationFrame,i.projection.transform),n&&o.fit(n),e._scissorRectLocal=o}},t.isMatrixRotated=function(e){if(!e)return!1;var t=e.a,n=e.b,r=e.c,i=e.d;return(Math.abs(n)>1e-4||Math.abs(r)>1e-4)&&(Math.abs(t)>1e-4||Math.abs(i)>1e-4)},t.prototype.testScissor=function(e){var n=e.maskObject;if(!n.isFastRect||!n.isFastRect()||t.isMatrixRotated(n.worldTransform)||t.isMatrixRotated(this.renderer.projection.transform))return!1;this.calcScissorRect(e);var r=e._scissorRectLocal;return r.width>0&&r.height>0},t.prototype.roundFrameToPixels=function(e,n,r,i,a){t.isMatrixRotated(a)||(a=a?ts.copyFrom(a):ts.identity(),a.translate(-r.x,-r.y).scale(i.width/r.width,i.height/r.height).translate(i.x,i.y),this.renderer.filter.transformAABB(a,e),e.fit(i),e.x=Math.round(e.x*n),e.y=Math.round(e.y*n),e.width=Math.round(e.width*n),e.height=Math.round(e.height*n))},t.prototype.push=function(e){e._scissorRectLocal||this.calcScissorRect(e);var t=this.renderer.gl;e._scissorRect||t.enable(t.SCISSOR_TEST),e._scissorCounter++,e._scissorRect=e._scissorRectLocal,this._useCurrent()},t.prototype.pop=function(e){var t=this.renderer.gl;e&&ns.push(e._scissorRectLocal),this.getStackLength()>0?this._useCurrent():t.disable(t.SCISSOR_TEST)},t.prototype._useCurrent=function(){var e=this.maskStack[this.maskStack.length-1]._scissorRect,t;t=this.renderer.renderTexture.current?e.y:this.renderer.height-e.height-e.y,this.renderer.gl.scissor(e.x,t,e.width,e.height)},t}(es),os=function(e){sa(t,e);function t(t){var n=e.call(this,t)||this;return n.glConst=Rr.ADAPTER.getWebGLRenderingContext().STENCIL_TEST,n}return t.prototype.getStackLength=function(){var e=this.maskStack[this.maskStack.length-1];return e?e._stencilCounter:0},t.prototype.push=function(e){var t=e.maskObject,n=this.renderer.gl,r=e._stencilCounter;r===0&&(this.renderer.framebuffer.forceStencil(),n.clearStencil(0),n.clear(n.STENCIL_BUFFER_BIT),n.enable(n.STENCIL_TEST)),e._stencilCounter++;var i=e._colorMask;i!==0&&(e._colorMask=0,n.colorMask(!1,!1,!1,!1)),n.stencilFunc(n.EQUAL,r,4294967295),n.stencilOp(n.KEEP,n.KEEP,n.INCR),t.renderable=!0,t.render(this.renderer),this.renderer.batch.flush(),t.renderable=!1,i!==0&&(e._colorMask=i,n.colorMask((i&1)!=0,(i&2)!=0,(i&4)!=0,(i&8)!=0)),this._useCurrent()},t.prototype.pop=function(e){var t=this.renderer.gl;if(this.getStackLength()===0)t.disable(t.STENCIL_TEST);else{var n=this.maskStack.length===0?null:this.maskStack[this.maskStack.length-1],r=n?n._colorMask:15;r!==0&&(n._colorMask=0,t.colorMask(!1,!1,!1,!1)),t.stencilOp(t.KEEP,t.KEEP,t.DECR),e.renderable=!0,e.render(this.renderer),this.renderer.batch.flush(),e.renderable=!1,r!==0&&(n._colorMask=r,t.colorMask((r&1)!=0,(r&2)!=0,(r&4)!=0,(r&8)!=0)),this._useCurrent()}},t.prototype._useCurrent=function(){var e=this.renderer.gl;e.stencilFunc(e.EQUAL,this.getStackLength(),4294967295),e.stencilOp(e.KEEP,e.KEEP,e.KEEP)},t}(es),ss=function(){function e(e){this.renderer=e,this.destinationFrame=null,this.sourceFrame=null,this.defaultFrame=null,this.projectionMatrix=new qi,this.transform=null}return e.prototype.update=function(e,t,n,r){this.destinationFrame=e||this.destinationFrame||this.defaultFrame,this.sourceFrame=t||this.sourceFrame||e,this.calculateProjection(this.destinationFrame,this.sourceFrame,n,r),this.transform&&this.projectionMatrix.append(this.transform);var i=this.renderer;i.globalUniforms.uniforms.projectionMatrix=this.projectionMatrix,i.globalUniforms.update(),i.shader.shader&&i.shader.syncUniformGroup(i.shader.shader.uniforms.globals)},e.prototype.calculateProjection=function(e,t,n,r){var i=this.projectionMatrix,a=r?-1:1;i.identity(),i.a=1/t.width*2,i.d=a*(1/t.height*2),i.tx=-1-t.x*i.a,i.ty=-a-t.y*i.d},e.prototype.setTransform=function(e){},e.prototype.destroy=function(){this.renderer=null},e}(),cs=new Vi,ls=new Vi,us=function(){function e(e){this.renderer=e,this.clearColor=e._backgroundColorRgba,this.defaultMaskStack=[],this.current=null,this.sourceFrame=new Vi,this.destinationFrame=new Vi,this.viewportFrame=new Vi}return e.prototype.bind=function(e,t,n){e===void 0&&(e=null);var r=this.renderer;this.current=e;var i,a,o;e?(i=e.baseTexture,o=i.resolution,t||(cs.width=e.frame.width,cs.height=e.frame.height,t=cs),n||(ls.x=e.frame.x,ls.y=e.frame.y,ls.width=t.width,ls.height=t.height,n=ls),a=i.framebuffer):(o=r.resolution,t||(cs.width=r.screen.width,cs.height=r.screen.height,t=cs),n||(n=cs,n.width=t.width,n.height=t.height));var s=this.viewportFrame;s.x=n.x*o,s.y=n.y*o,s.width=n.width*o,s.height=n.height*o,e||(s.y=r.view.height-(s.y+s.height)),s.ceil(),this.renderer.framebuffer.bind(a,s),this.renderer.projection.update(n,t,o,!a),e?this.renderer.mask.setMaskStack(i.maskStack):this.renderer.mask.setMaskStack(this.defaultMaskStack),this.sourceFrame.copyFrom(t),this.destinationFrame.copyFrom(n)},e.prototype.clear=function(e,t){this.current?e||=this.current.baseTexture.clearColor:e||=this.clearColor;var n=this.destinationFrame,r=this.current?this.current.baseTexture:this.renderer.screen,i=n.width!==r.width||n.height!==r.height;if(i){var a=this.viewportFrame,o=a.x,s=a.y,c=a.width,l=a.height;o=Math.round(o),s=Math.round(s),c=Math.round(c),l=Math.round(l),this.renderer.gl.enable(this.renderer.gl.SCISSOR_TEST),this.renderer.gl.scissor(o,s,c,l)}this.renderer.framebuffer.clear(e[0],e[1],e[2],e[3],t),i&&this.renderer.scissor.pop()},e.prototype.resize=function(){this.bind(null)},e.prototype.reset=function(){this.bind(null)},e.prototype.destroy=function(){this.renderer=null},e}();function ds(e,t,n,r,i){n.buffer.update(i)}var fs={float:` + data[offset] = v; + `,vec2:` + data[offset] = v[0]; + data[offset+1] = v[1]; + `,vec3:` + data[offset] = v[0]; + data[offset+1] = v[1]; + data[offset+2] = v[2]; + + `,vec4:` + data[offset] = v[0]; + data[offset+1] = v[1]; + data[offset+2] = v[2]; + data[offset+3] = v[3]; + `,mat2:` + data[offset] = v[0]; + data[offset+1] = v[1]; + + data[offset+4] = v[2]; + data[offset+5] = v[3]; + `,mat3:` + data[offset] = v[0]; + data[offset+1] = v[1]; + data[offset+2] = v[2]; + + data[offset + 4] = v[3]; + data[offset + 5] = v[4]; + data[offset + 6] = v[5]; + + data[offset + 8] = v[6]; + data[offset + 9] = v[7]; + data[offset + 10] = v[8]; + `,mat4:` + for(var i = 0; i < 16; i++) + { + data[offset + i] = v[i]; + } + `},ps={float:4,vec2:8,vec3:12,vec4:16,int:4,ivec2:8,ivec3:12,ivec4:16,uint:4,uvec2:8,uvec3:12,uvec4:16,bool:4,bvec2:8,bvec3:12,bvec4:16,mat2:16*2,mat3:16*3,mat4:16*4};function ms(e){for(var t=e.map(function(e){return{data:e,offset:0,dataLen:0,dirty:0}}),n=0,r=0,i=0,a=0;a1&&(n=Math.max(n,16)*o.data.size),o.dataLen=n,r%n!==0&&r<16){var s=r%n%16;r+=s,i+=s}r+n>16?(i=Math.ceil(i/16)*16,o.offset=i,i+=n,r=n):(o.offset=i,r+=n,i+=n)}return i=Math.ceil(i/16)*16,{uboElements:t,size:i}}function hs(e,t){var n=[];for(var r in e)t[r]&&n.push(t[r]);return n.sort(function(e,t){return e.index-t.index}),n}function gs(e,t){if(!e.autoManage)return{size:0,syncFunc:ds};for(var n=hs(e.uniforms,t),r=ms(n),i=r.uboElements,a=r.size,o=[` + var v = null; + var v2 = null; + var cv = null; + var t = 0; + var gl = renderer.gl + var index = 0; + var data = buffer.data; + `],s=0;s1){var m=yo(c.data.type),h=Math.max(ps[c.data.type]/16,1),g=m/h,_=(4-g%4)%4;o.push(` + cv = ud.`+u+`.value; + v = uv.`+u+`; + offset = `+c.offset/4+`; + + t = 0; + + for(var i=0; i < `+c.data.size*h+`; i++) + { + for(var j = 0; j < `+g+`; j++) + { + data[offset++] = v[t++]; + } + offset += `+_+`; + } + + `)}else{var v=fs[c.data.type];o.push(` + cv = ud.`+u+`.value; + v = uv.`+u+`; + offset = `+c.offset/4+`; + `+v+`; + `)}}return o.push(` + renderer.buffer.update(buffer); + `),{size:a,syncFunc:Function(`ud`,`uv`,`renderer`,`syncData`,`buffer`,o.join(` +`))}}var _s=function(){function e(){}return e}(),vs=function(){function e(e,t){this.program=e,this.uniformData=t,this.uniformGroups={},this.uniformDirtyGroups={},this.uniformBufferBindings={}}return e.prototype.destroy=function(){this.uniformData=null,this.uniformGroups=null,this.uniformDirtyGroups=null,this.uniformBufferBindings=null,this.program=null},e}();function ys(e,t){for(var n={},r=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES),i=0;it?1:-1});for(var o=0;o>=1,n++;this.stateId=e.data}for(var n=0;nthis.checkCountMax&&(this.checkCount=0,this.run())))},e.prototype.run=function(){for(var e=this.renderer.texture,t=e.managedTextures,n=!1,r=0;rthis.maxIdle&&(e.destroyTexture(i,!0),t[r]=null,n=!0)}if(n){for(var a=0,r=0;r=0;r--)this.unload(e.children[r])},e.prototype.destroy=function(){this.renderer=null},e}();function Ps(e){var t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C;return C=`WebGL2RenderingContext`in globalThis&&e instanceof globalThis.WebGL2RenderingContext?(t={},t[rr.UNSIGNED_BYTE]=(n={},n[tr.RGBA]=e.RGBA8,n[tr.RGB]=e.RGB8,n[tr.RG]=e.RG8,n[tr.RED]=e.R8,n[tr.RGBA_INTEGER]=e.RGBA8UI,n[tr.RGB_INTEGER]=e.RGB8UI,n[tr.RG_INTEGER]=e.RG8UI,n[tr.RED_INTEGER]=e.R8UI,n[tr.ALPHA]=e.ALPHA,n[tr.LUMINANCE]=e.LUMINANCE,n[tr.LUMINANCE_ALPHA]=e.LUMINANCE_ALPHA,n),t[rr.BYTE]=(r={},r[tr.RGBA]=e.RGBA8_SNORM,r[tr.RGB]=e.RGB8_SNORM,r[tr.RG]=e.RG8_SNORM,r[tr.RED]=e.R8_SNORM,r[tr.RGBA_INTEGER]=e.RGBA8I,r[tr.RGB_INTEGER]=e.RGB8I,r[tr.RG_INTEGER]=e.RG8I,r[tr.RED_INTEGER]=e.R8I,r),t[rr.UNSIGNED_SHORT]=(i={},i[tr.RGBA_INTEGER]=e.RGBA16UI,i[tr.RGB_INTEGER]=e.RGB16UI,i[tr.RG_INTEGER]=e.RG16UI,i[tr.RED_INTEGER]=e.R16UI,i[tr.DEPTH_COMPONENT]=e.DEPTH_COMPONENT16,i),t[rr.SHORT]=(a={},a[tr.RGBA_INTEGER]=e.RGBA16I,a[tr.RGB_INTEGER]=e.RGB16I,a[tr.RG_INTEGER]=e.RG16I,a[tr.RED_INTEGER]=e.R16I,a),t[rr.UNSIGNED_INT]=(o={},o[tr.RGBA_INTEGER]=e.RGBA32UI,o[tr.RGB_INTEGER]=e.RGB32UI,o[tr.RG_INTEGER]=e.RG32UI,o[tr.RED_INTEGER]=e.R32UI,o[tr.DEPTH_COMPONENT]=e.DEPTH_COMPONENT24,o),t[rr.INT]=(s={},s[tr.RGBA_INTEGER]=e.RGBA32I,s[tr.RGB_INTEGER]=e.RGB32I,s[tr.RG_INTEGER]=e.RG32I,s[tr.RED_INTEGER]=e.R32I,s),t[rr.FLOAT]=(c={},c[tr.RGBA]=e.RGBA32F,c[tr.RGB]=e.RGB32F,c[tr.RG]=e.RG32F,c[tr.RED]=e.R32F,c[tr.DEPTH_COMPONENT]=e.DEPTH_COMPONENT32F,c),t[rr.HALF_FLOAT]=(l={},l[tr.RGBA]=e.RGBA16F,l[tr.RGB]=e.RGB16F,l[tr.RG]=e.RG16F,l[tr.RED]=e.R16F,l),t[rr.UNSIGNED_SHORT_5_6_5]=(u={},u[tr.RGB]=e.RGB565,u),t[rr.UNSIGNED_SHORT_4_4_4_4]=(d={},d[tr.RGBA]=e.RGBA4,d),t[rr.UNSIGNED_SHORT_5_5_5_1]=(f={},f[tr.RGBA]=e.RGB5_A1,f),t[rr.UNSIGNED_INT_2_10_10_10_REV]=(p={},p[tr.RGBA]=e.RGB10_A2,p[tr.RGBA_INTEGER]=e.RGB10_A2UI,p),t[rr.UNSIGNED_INT_10F_11F_11F_REV]=(m={},m[tr.RGB]=e.R11F_G11F_B10F,m),t[rr.UNSIGNED_INT_5_9_9_9_REV]=(h={},h[tr.RGB]=e.RGB9_E5,h),t[rr.UNSIGNED_INT_24_8]=(g={},g[tr.DEPTH_STENCIL]=e.DEPTH24_STENCIL8,g),t[rr.FLOAT_32_UNSIGNED_INT_24_8_REV]=(_={},_[tr.DEPTH_STENCIL]=e.DEPTH32F_STENCIL8,_),t):(v={},v[rr.UNSIGNED_BYTE]=(y={},y[tr.RGBA]=e.RGBA,y[tr.RGB]=e.RGB,y[tr.ALPHA]=e.ALPHA,y[tr.LUMINANCE]=e.LUMINANCE,y[tr.LUMINANCE_ALPHA]=e.LUMINANCE_ALPHA,y),v[rr.UNSIGNED_SHORT_5_6_5]=(b={},b[tr.RGB]=e.RGB,b),v[rr.UNSIGNED_SHORT_4_4_4_4]=(x={},x[tr.RGBA]=e.RGBA,x),v[rr.UNSIGNED_SHORT_5_5_5_1]=(S={},S[tr.RGBA]=e.RGBA,S),v),C}var Fs=function(){function e(e){this.texture=e,this.width=-1,this.height=-1,this.dirtyId=-1,this.dirtyStyleId=-1,this.mipmap=!1,this.wrapMode=33071,this.type=rr.UNSIGNED_BYTE,this.internalFormat=tr.RGBA,this.samplerType=0}return e}(),Is=function(){function e(e){this.renderer=e,this.boundTextures=[],this.currentLocation=-1,this.managedTextures=[],this._unknownBoundTextures=!1,this.unknownTexture=new pa,this.hasIntegerTextures=!1}return e.prototype.contextChange=function(){var e=this.gl=this.renderer.gl;this.CONTEXT_UID=this.renderer.CONTEXT_UID,this.webGLVersion=this.renderer.context.webGLVersion,this.internalFormats=Ps(e);var t=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS);this.boundTextures.length=t;for(var n=0;n=0;--a){var o=n[a];if(o){var s=o._glTextures[i];s.samplerType!==ir.FLOAT&&this.renderer.texture.unbind(o)}}},e.prototype.initTexture=function(e){var t=new Fs(this.gl.createTexture());return t.dirtyId=-1,e._glTextures[this.CONTEXT_UID]=t,this.managedTextures.push(e),e.on(`dispose`,this.destroyTexture,this),t},e.prototype.initTextureType=function(e,t){var n,r;t.internalFormat=(r=(n=this.internalFormats[e.type])?.[e.format])??e.format,this.webGLVersion===2&&e.type===rr.HALF_FLOAT?t.type=this.gl.HALF_FLOAT:t.type=e.type},e.prototype.updateTexture=function(e){var t=e._glTextures[this.CONTEXT_UID];if(t){var n=this.renderer;if(this.initTextureType(e,t),e.resource&&e.resource.upload(n,e,t))t.samplerType!==ir.FLOAT&&(this.hasIntegerTextures=!0);else{var r=e.realWidth,i=e.realHeight,a=n.gl;(t.width!==r||t.height!==i||t.dirtyId<0)&&(t.width=r,t.height=i,a.texImage2D(e.target,0,t.internalFormat,r,i,0,e.format,t.type,null))}e.dirtyStyleId!==t.dirtyStyleId&&this.updateTextureStyle(e),t.dirtyId=e.dirtyId}},e.prototype.destroyTexture=function(e,t){var n=this.gl;if(e=e.castToBaseTexture(),e._glTextures[this.CONTEXT_UID]&&(this.unbind(e),n.deleteTexture(e._glTextures[this.CONTEXT_UID].texture),e.off(`dispose`,this.destroyTexture,this),delete e._glTextures[this.CONTEXT_UID],!t)){var r=this.managedTextures.indexOf(e);r!==-1&&mi(this.managedTextures,r,1)}},e.prototype.updateTextureStyle=function(e){var t=e._glTextures[this.CONTEXT_UID];t&&((e.mipmap===sr.POW2||this.webGLVersion!==2)&&!e.isPowerOfTwo?t.mipmap=!1:t.mipmap=e.mipmap>=1,this.webGLVersion!==2&&!e.isPowerOfTwo?t.wrapMode=or.CLAMP:t.wrapMode=e.wrapMode,e.resource&&e.resource.style(this.renderer,e,t)||this.setStyle(e,t),t.dirtyStyleId=e.dirtyStyleId)},e.prototype.setStyle=function(e,t){var n=this.gl;if(t.mipmap&&e.mipmap!==sr.ON_MANUAL&&n.generateMipmap(e.target),n.texParameteri(e.target,n.TEXTURE_WRAP_S,t.wrapMode),n.texParameteri(e.target,n.TEXTURE_WRAP_T,t.wrapMode),t.mipmap){n.texParameteri(e.target,n.TEXTURE_MIN_FILTER,e.scaleMode===ar.LINEAR?n.LINEAR_MIPMAP_LINEAR:n.NEAREST_MIPMAP_NEAREST);var r=this.renderer.context.extensions.anisotropicFiltering;if(r&&e.anisotropicLevel>0&&e.scaleMode===ar.LINEAR){var i=Math.min(e.anisotropicLevel,n.getParameter(r.MAX_TEXTURE_MAX_ANISOTROPY_EXT));n.texParameterf(e.target,r.TEXTURE_MAX_ANISOTROPY_EXT,i)}}else n.texParameteri(e.target,n.TEXTURE_MIN_FILTER,e.scaleMode===ar.LINEAR?n.LINEAR:n.NEAREST);n.texParameteri(e.target,n.TEXTURE_MAG_FILTER,e.scaleMode===ar.LINEAR?n.LINEAR:n.NEAREST)},e.prototype.destroy=function(){this.renderer=null},e}(),Ls={__proto__:null,FilterSystem:Ya,BatchSystem:Za,ContextSystem:$a,FramebufferSystem:no,GeometrySystem:io,MaskSystem:$o,ScissorSystem:rs,StencilSystem:os,ProjectionSystem:ss,RenderTextureSystem:us,ShaderSystem:ws,StateSystem:Ms,TextureGCSystem:Ns,TextureSystem:Is},Rs=new qi,zs=function(e){sa(t,e);function t(t,n){t===void 0&&(t=Zn.UNKNOWN);var r=e.call(this)||this;return n=Object.assign({},Rr.RENDER_OPTIONS,n),r.options=n,r.type=t,r.screen=new Vi(0,0,n.width,n.height),r.view=n.view||Rr.ADAPTER.createCanvas(),r.resolution=n.resolution||Rr.RESOLUTION,r.useContextAlpha=n.useContextAlpha,r.autoDensity=!!n.autoDensity,r.preserveDrawingBuffer=n.preserveDrawingBuffer,r.clearBeforeRender=n.clearBeforeRender,r._backgroundColor=0,r._backgroundColorRgba=[0,0,0,1],r._backgroundColorString=`#000000`,r.backgroundColor=n.backgroundColor||r._backgroundColor,r.backgroundAlpha=n.backgroundAlpha,n.transparent!==void 0&&(vi(`6.0.0`,`Option transparent is deprecated, please use backgroundAlpha instead.`),r.useContextAlpha=n.transparent,r.backgroundAlpha=n.transparent?0:1),r._lastObjectRendered=null,r.plugins={},r}return t.prototype.initPlugins=function(e){for(var t in e)this.plugins[t]=new e[t](this)},Object.defineProperty(t.prototype,`width`,{get:function(){return this.view.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`height`,{get:function(){return this.view.height},enumerable:!1,configurable:!0}),t.prototype.resize=function(e,t){this.view.width=Math.round(e*this.resolution),this.view.height=Math.round(t*this.resolution);var n=this.view.width/this.resolution,r=this.view.height/this.resolution;this.screen.width=n,this.screen.height=r,this.autoDensity&&(this.view.style.width=n+`px`,this.view.style.height=r+`px`),this.emit(`resize`,n,r)},t.prototype.generateTexture=function(e,t,n,r){t===void 0&&(t={}),typeof t==`number`&&(vi(`6.1.0`,`generateTexture options (scaleMode, resolution, region) are now object options.`),t={scaleMode:t,resolution:n,region:r});var i=t.region,a=la(t,[`region`]);r=i||e.getLocalBounds(null,!0),r.width===0&&(r.width=1),r.height===0&&(r.height=1);var o=ja.create(ca({width:r.width,height:r.height},a));return Rs.tx=-r.x,Rs.ty=-r.y,this.render(e,{renderTexture:o,clear:!1,transform:Rs,skipUpdateTransform:!!e.parent}),o},t.prototype.destroy=function(e){for(var t in this.plugins)this.plugins[t].destroy(),this.plugins[t]=null;e&&this.view.parentNode&&this.view.parentNode.removeChild(this.view);var n=this;n.plugins=null,n.type=Zn.UNKNOWN,n.view=null,n.screen=null,n._tempDisplayObjectParent=null,n.options=null,this._backgroundColorRgba=null,this._backgroundColorString=null,this._lastObjectRendered=null},Object.defineProperty(t.prototype,`backgroundColor`,{get:function(){return this._backgroundColor},set:function(e){this._backgroundColor=e,this._backgroundColorString=ai(e),ii(e,this._backgroundColorRgba)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`backgroundAlpha`,{get:function(){return this._backgroundColorRgba[3]},set:function(e){this._backgroundColorRgba[3]=e},enumerable:!1,configurable:!0}),t}(Yr.default),Bs=function(){function e(e){this.buffer=e||null,this.updateID=-1,this.byteLength=-1,this.refCount=0}return e}(),Vs=function(){function e(e){this.renderer=e,this.managedBuffers={},this.boundBufferBases={}}return e.prototype.destroy=function(){this.renderer=null},e.prototype.contextChange=function(){this.disposeAll(!0),this.gl=this.renderer.gl,this.CONTEXT_UID=this.renderer.CONTEXT_UID},e.prototype.bind=function(e){var t=this,n=t.gl,r=t.CONTEXT_UID,i=e._glBuffers[r]||this.createGLBuffer(e);n.bindBuffer(e.type,i.buffer)},e.prototype.bindBufferBase=function(e,t){var n=this,r=n.gl,i=n.CONTEXT_UID;if(this.boundBufferBases[t]!==e){var a=e._glBuffers[i]||this.createGLBuffer(e);this.boundBufferBases[t]=e,r.bindBufferBase(r.UNIFORM_BUFFER,t,a.buffer)}},e.prototype.bindBufferRange=function(e,t,n){var r=this,i=r.gl,a=r.CONTEXT_UID;n||=0;var o=e._glBuffers[a]||this.createGLBuffer(e);i.bindBufferRange(i.UNIFORM_BUFFER,t||0,o.buffer,n*256,256)},e.prototype.update=function(e){var t=this,n=t.gl,r=t.CONTEXT_UID,i=e._glBuffers[r];if(e._updateID!==i.updateID)if(i.updateID=e._updateID,n.bindBuffer(e.type,i.buffer),i.byteLength>=e.data.byteLength)n.bufferSubData(e.type,0,e.data);else{var a=e.static?n.STATIC_DRAW:n.DYNAMIC_DRAW;i.byteLength=e.data.byteLength,n.bufferData(e.type,e.data,a)}},e.prototype.dispose=function(e,t){if(this.managedBuffers[e.id]){delete this.managedBuffers[e.id];var n=e._glBuffers[this.CONTEXT_UID],r=this.gl;e.disposeRunner.remove(this),n&&(t||r.deleteBuffer(n.buffer),delete e._glBuffers[this.CONTEXT_UID])}},e.prototype.disposeAll=function(e){for(var t=Object.keys(this.managedBuffers),n=0;n=mr.HIGH?this.multisample=mr.HIGH:t>=mr.MEDIUM?this.multisample=mr.MEDIUM:t>=mr.LOW?this.multisample=mr.LOW:this.multisample=mr.NONE},t.prototype.addSystem=function(e,t){var n=new e(this);if(this[t])throw Error(`Whoops! The name "`+t+`" is already in use`);for(var r in this[t]=n,this.runners)this.runners[r].add(n);return this},t.prototype.render=function(e,t){var n,r,i,a;if(t&&(t instanceof ja?(vi(`6.0.0`,`Renderer#render arguments changed, use options instead.`),n=t,r=arguments[2],i=arguments[3],a=arguments[4]):(n=t.renderTexture,r=t.clear,i=t.transform,a=t.skipUpdateTransform)),this.renderingToScreen=!n,this.runners.prerender.emit(),this.emit(`prerender`),this.projection.transform=i,!this.context.isLost){if(n||(this._lastObjectRendered=e),!a){var o=e.enableTempParent();e.updateTransform(),e.disableTempParent(o)}this.renderTexture.bind(n),this.batch.currentRenderer.start(),(r===void 0?this.clearBeforeRender:r)&&this.renderTexture.clear(),e.render(this),this.batch.currentRenderer.flush(),n&&n.baseTexture.update(),this.runners.postrender.emit(),this.projection.transform=null,this.emit(`postrender`)}},t.prototype.generateTexture=function(t,n,r,i){n===void 0&&(n={});var a=e.prototype.generateTexture.call(this,t,n,r,i);return this.framebuffer.blit(),a},t.prototype.resize=function(t,n){e.prototype.resize.call(this,t,n),this.runners.resize.emit(this.screen.height,this.screen.width)},t.prototype.reset=function(){return this.runners.reset.emit(),this},t.prototype.clear=function(){this.renderTexture.bind(),this.renderTexture.clear()},t.prototype.destroy=function(t){for(var n in this.runners.destroy.emit(),this.runners)this.runners[n].destroy();e.prototype.destroy.call(this,t),this.gl=null},Object.defineProperty(t.prototype,`extract`,{get:function(){return vi(`6.0.0`,`Renderer#extract has been deprecated, please use Renderer#plugins.extract instead.`),this.plugins.extract},enumerable:!1,configurable:!0}),t.registerPlugin=function(e,t){vi(`6.5.0`,`Renderer.registerPlugin() has been deprecated, please use extensions.add() instead.`),ki.add({name:e,type:Di.RendererPlugin,ref:t})},t.__plugins={},t}(zs);ki.handleByMap(Di.RendererPlugin,Hs.__plugins);function Us(e){return Hs.create(e)}var Ws=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Gs=Ws,Ks=function(){function e(e){vi(`6.1.0`,`System class is deprecated, implemement ISystem interface instead.`),this.renderer=e}return e.prototype.destroy=function(){this.renderer=null},e}(),qs=function(){function e(){this.texArray=null,this.blend=0,this.type=er.TRIANGLES,this.start=0,this.size=0,this.data=null}return e}(),Js=function(){function e(){this.elements=[],this.ids=[],this.count=0}return e.prototype.clear=function(){for(var e=0;ethis.size&&this.flush(),this._vertexCount+=e.vertexData.length/2,this._indexCount+=e.indices.length,this._bufferedTextures[this._bufferSize]=e._texture.baseTexture,this._bufferedElements[this._bufferSize++]=e)},t.prototype.buildTexturesAndDrawCalls=function(){var e=this,n=e._bufferedTextures,r=e.MAX_TEXTURES,i=t._textureArrayPool,a=this.renderer.batch,o=this._tempBoundTextures,s=this.renderer.textureGC.count,c=++pa._globalBatch,l=0,u=i[0],d=0;a.copyBoundTextures(o,r);for(var f=0;f=r&&(a.boundArray(u,o,c,r),this.buildDrawCalls(u,d,f),d=f,u=i[++l],++c),p._batchEnabled=c,p.touched=s,u.elements[u.count++]=p)}u.count>0&&(a.boundArray(u,o,c,r),this.buildDrawCalls(u,d,this._bufferSize),++l,++c);for(var f=0;f0&&(t+=` +else `),nthis.maxX||this.minY>this.maxY},e.prototype.clear=function(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0},e.prototype.getRectangle=function(e){return this.minX>this.maxX||this.minY>this.maxY?Vi.EMPTY:(e||=new Vi(0,0,1,1),e.x=this.minX,e.y=this.minY,e.width=this.maxX-this.minX,e.height=this.maxY-this.minY,e)},e.prototype.addPoint=function(e){this.minX=Math.min(this.minX,e.x),this.maxX=Math.max(this.maxX,e.x),this.minY=Math.min(this.minY,e.y),this.maxY=Math.max(this.maxY,e.y)},e.prototype.addPointMatrix=function(e,t){var n=e.a,r=e.b,i=e.c,a=e.d,o=e.tx,s=e.ty,c=n*t.x+i*t.y+o,l=r*t.x+a*t.y+s;this.minX=Math.min(this.minX,c),this.maxX=Math.max(this.maxX,c),this.minY=Math.min(this.minY,l),this.maxY=Math.max(this.maxY,l)},e.prototype.addQuad=function(e){var t=this.minX,n=this.minY,r=this.maxX,i=this.maxY,a=e[0],o=e[1];t=ar?a:r,i=o>i?o:i,a=e[2],o=e[3],t=ar?a:r,i=o>i?o:i,a=e[4],o=e[5],t=ar?a:r,i=o>i?o:i,a=e[6],o=e[7],t=ar?a:r,i=o>i?o:i,this.minX=t,this.minY=n,this.maxX=r,this.maxY=i},e.prototype.addFrame=function(e,t,n,r,i){this.addFrameMatrix(e.worldTransform,t,n,r,i)},e.prototype.addFrameMatrix=function(e,t,n,r,i){var a=e.a,o=e.b,s=e.c,c=e.d,l=e.tx,u=e.ty,d=this.minX,f=this.minY,p=this.maxX,m=this.maxY,h=a*t+s*n+l,g=o*t+c*n+u;d=hp?h:p,m=g>m?g:m,h=a*r+s*n+l,g=o*r+c*n+u,d=hp?h:p,m=g>m?g:m,h=a*t+s*i+l,g=o*t+c*i+u,d=hp?h:p,m=g>m?g:m,h=a*r+s*i+l,g=o*r+c*i+u,d=hp?h:p,m=g>m?g:m,this.minX=d,this.minY=f,this.maxX=p,this.maxY=m},e.prototype.addVertexData=function(e,t,n){for(var r=this.minX,i=this.minY,a=this.maxX,o=this.maxY,s=t;sa?c:a,o=l>o?l:o}this.minX=r,this.minY=i,this.maxX=a,this.maxY=o},e.prototype.addVertices=function(e,t,n,r){this.addVerticesMatrix(e.worldTransform,t,n,r)},e.prototype.addVerticesMatrix=function(e,t,n,r,i,a){i===void 0&&(i=0),a===void 0&&(a=i);for(var o=e.a,s=e.b,c=e.c,l=e.d,u=e.tx,d=e.ty,f=this.minX,p=this.minY,m=this.maxX,h=this.maxY,g=n;gr?e.maxX:r,this.maxY=e.maxY>i?e.maxY:i},e.prototype.addBoundsMask=function(e,t){var n=e.minX>t.minX?e.minX:t.minX,r=e.minY>t.minY?e.minY:t.minY,i=e.maxXc?i:c,this.maxY=a>l?a:l}},e.prototype.addBoundsMatrix=function(e,t){this.addFrameMatrix(t,e.minX,e.minY,e.maxX,e.maxY)},e.prototype.addBoundsArea=function(e,t){var n=e.minX>t.x?e.minX:t.x,r=e.minY>t.y?e.minY:t.y,i=e.maxXc?i:c,this.maxY=a>l?a:l}},e.prototype.pad=function(e,t){e===void 0&&(e=0),t===void 0&&(t=e),this.isEmpty()||(this.minX-=e,this.maxX+=e,this.minY-=t,this.maxY+=t)},e.prototype.addFramePad=function(e,t,n,r,i,a){e-=i,t-=a,n+=i,r+=a,this.minX=this.minXn?this.maxX:n,this.minY=this.minYr?this.maxY:r},e}(),lc=function(e,t){return lc=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},lc(e,t)};function uc(e,t){lc(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var dc=function(e){uc(t,e);function t(){var t=e.call(this)||this;return t.tempDisplayObjectParent=null,t.transform=new ra,t.alpha=1,t.visible=!0,t.renderable=!0,t.cullable=!1,t.cullArea=null,t.parent=null,t.worldAlpha=1,t._lastSortedIndex=0,t._zIndex=0,t.filterArea=null,t.filters=null,t._enabledFilters=null,t._bounds=new cc,t._localBounds=null,t._boundsID=0,t._boundsRect=null,t._localBoundsRect=null,t._mask=null,t._maskRefCount=0,t._destroyed=!1,t.isSprite=!1,t.isMask=!1,t}return t.mixin=function(e){for(var n=Object.keys(e),r=0;r1)for(var r=0;rthis.children.length)throw Error(e+`addChildAt: The index `+t+` supplied is out of bounds `+this.children.length);return e.parent&&e.parent.removeChild(e),e.parent=this,this.sortDirty=!0,e.transform._parentID=-1,this.children.splice(t,0,e),this._boundsID++,this.onChildrenChange(t),e.emit(`added`,this),this.emit(`childAdded`,e,this,t),e},t.prototype.swapChildren=function(e,t){if(e!==t){var n=this.getChildIndex(e),r=this.getChildIndex(t);this.children[n]=t,this.children[r]=e,this.onChildrenChange(n=this.children.length)throw Error(`The index `+t+` supplied is out of bounds `+this.children.length);var n=this.getChildIndex(e);mi(this.children,n,1),this.children.splice(t,0,e),this.onChildrenChange(t)},t.prototype.getChildAt=function(e){if(e<0||e>=this.children.length)throw Error(`getChildAt: Index (`+e+`) does not exist.`);return this.children[e]},t.prototype.removeChild=function(){for(var e=arguments,t=[],n=0;n1)for(var r=0;r0&&i<=r){a=this.children.splice(n,i);for(var o=0;o1&&this.children.sort(pc),this.sortDirty=!1},t.prototype.updateTransform=function(){this.sortableChildren&&this.sortDirty&&this.sortChildren(),this._boundsID++,this.transform.updateTransform(this.parent.transform),this.worldAlpha=this.alpha*this.parent.worldAlpha;for(var e=0,t=this.children.length;e0&&n.height>0){var r,i;if(this.cullArea?(r=this.cullArea,i=this.worldTransform):this._render!==t.prototype._render&&(r=this.getBounds(!0)),r&&n.intersects(r,i))this._render(e);else if(this.cullArea)return;for(var a=0,o=this.children.length;anew Promise((r,i)=>{var a=e=>{try{s(n.next(e))}catch(e){i(e)}},o=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?r(e.value):Promise.resolve(e.value).then(a,o);s((n=n.apply(e,t)).next())}),yc=class e{constructor(){this._breathParameters=[],this._currentTime=0}static create(){return new e}setParameters(e){this._breathParameters=e}getParameters(){return this._breathParameters}updateParameters(e,t){this._currentTime+=t;let n=this._currentTime*2*3.14159;for(let t=0;t=1&&(r=1,this._blinkingState=Cc.EyeState_Closed,this._stateStartTimeSeconds=this._userTimeSeconds),n=1-r;break;case Cc.EyeState_Closed:r=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._closedSeconds,r>=1&&(this._blinkingState=Cc.EyeState_Opening,this._stateStartTimeSeconds=this._userTimeSeconds),n=0;break;case Cc.EyeState_Opening:r=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._openingSeconds,r>=1&&(r=1,this._blinkingState=Cc.EyeState_Interval,this._nextBlinkingTime=this.determinNextBlinkingTiming()),n=r;break;case Cc.EyeState_Interval:this._nextBlinkingTime(e[e.EyeState_First=0]=`EyeState_First`,e[e.EyeState_Interval=1]=`EyeState_Interval`,e[e.EyeState_Closing=2]=`EyeState_Closing`,e[e.EyeState_Closed=3]=`EyeState_Closed`,e[e.EyeState_Opening=4]=`EyeState_Opening`,e))(Cc||{});const wc=.001,Tc=.5;var Ec=class e{static create(t){let n=new e;typeof t.FadeInTime==`number`&&(n._fadeTimeSeconds=t.FadeInTime,n._fadeTimeSeconds<=0&&(n._fadeTimeSeconds=Tc));let r=t.Groups,i=r.length;for(let e=0;ewc){if(i>=0)break;i=o,a=e.getPartOpacityByIndex(n),a+=t/this._fadeTimeSeconds,a>1&&(a=1)}}i<0&&(i=0,a=1);for(let t=n;ts&&(r=1-s/(1-a)),t>r&&(t=r),e.setPartOpacityByIndex(n,t)}}}constructor(){this._fadeTimeSeconds=Tc,this._lastModel=void 0,this._partGroups=[],this._partGroupCounts=[]}},Dc=class e{constructor(e){this.parameterIndex=0,this.partIndex=0,this.partId=``,this.link=[],e!=null&&this.assignment(e)}assignment(e){return this.partId=e.partId,this.link=e.link.map(e=>e.clone()),this}initialize(e){this.parameterIndex=e.getParameterIndex(this.partId),this.partIndex=e.getPartIndex(this.partId),e.setParameterValueByIndex(this.parameterIndex,1)}clone(){let t=new e;return t.partId=this.partId,t.parameterIndex=this.parameterIndex,t.partIndex=this.partIndex,t.link=this.link.map(e=>e.clone()),t}},Oc=class e{constructor(e,t){this.x=e||0,this.y=t||0}add(t){let n=new e(0,0);return n.x=this.x+t.x,n.y=this.y+t.y,n}substract(t){let n=new e(0,0);return n.x=this.x-t.x,n.y=this.y-t.y,n}multiply(t){let n=new e(0,0);return n.x=this.x*t.x,n.y=this.y*t.y,n}multiplyByScaler(t){return this.multiply(new e(t,t))}division(t){let n=new e(0,0);return n.x=this.x/t.x,n.y=this.y/t.y,n}divisionByScalar(t){return this.division(new e(t,t))}getLength(){return Math.sqrt(this.x*this.x+this.y*this.y)}getDistanceWith(e){return Math.sqrt((this.x-e.x)*(this.x-e.x)+(this.y-e.y)*(this.y-e.y))}dot(e){return this.x*e.x+this.y*e.y}normalize(){let e=(this.x*this.x+this.y*this.y)**.5;this.x/=e,this.y/=e}isEqual(e){return this.x==e.x&&this.y==e.y}isNotEqual(e){return!this.isEqual(e)}};const kc=class{static range(e,t,n){return en&&(e=n),e}static sin(e){return Math.sin(e)}static cos(e){return Math.cos(e)}static abs(e){return Math.abs(e)}static sqrt(e){return Math.sqrt(e)}static cbrt(e){if(e===0)return e;let t=e,n=t<0;n&&(t=-t);let r;return t===1/0?r=1/0:(r=Math.exp(Math.log(t)/3),r=(t/(r*r)+2*r)/3),n?-r:r}static getEasingSine(e){return e<0?0:e>1?1:.5-.5*this.cos(e*Math.PI)}static max(e,t){return e>t?e:t}static min(e,t){return e>t?t:e}static degreesToRadian(e){return e/180*Math.PI}static radianToDegrees(e){return e*180/Math.PI}static directionToRadian(e,t){let n=Math.atan2(t.y,t.x),r=Math.atan2(e.y,e.x),i=n-r;for(;i<-Math.PI;)i+=Math.PI*2;for(;i>Math.PI;)i-=Math.PI*2;return i}static directionToDegrees(e,t){let n=this.directionToRadian(e,t),r=this.radianToDegrees(n);return t.x-e.x>0&&(r=-r),r}static radianToDirection(e){let t=new Oc;return t.x=this.sin(e),t.y=this.cos(e),t}static quadraticEquation(e,t,n){return this.abs(e)1&&(e=1),t<0?t=0:t>1&&(t=1),n<0?n=0:n>1&&(n=1),r<0?r=0:r>1&&(r=1),this._modelColor.R=e,this._modelColor.G=t,this._modelColor.B=n,this._modelColor.A=r}getModelColor(){return Object.assign({},this._modelColor)}setIsPremultipliedAlpha(e){this._isPremultipliedAlpha=e}isPremultipliedAlpha(){return this._isPremultipliedAlpha}setIsCulling(e){this._isCulling=e}isCulling(){return this._isCulling}setAnisotropy(e){this._anisortopy=e}getAnisotropy(){return this._anisortopy}getModel(){return this._model}constructor(){this._isCulling=!1,this._isPremultipliedAlpha=!1,this._anisortopy=0,this._modelColor=new Pc,this._mvpMatrix4x4=new jc,this._mvpMatrix4x4.loadIdentity()}},Nc=(e=>(e[e.CubismBlendMode_Normal=0]=`CubismBlendMode_Normal`,e[e.CubismBlendMode_Additive=1]=`CubismBlendMode_Additive`,e[e.CubismBlendMode_Multiplicative=2]=`CubismBlendMode_Multiplicative`,e))(Nc||{}),Pc=class{constructor(){this.R=1,this.G=1,this.B=1,this.A=1}};let Fc=!1,Ic=!1,Lc;const Rc={vertexOffset:0,vertexStep:2};var zc=class{static startUp(e){if(Fc)return Uc(`CubismFramework.startUp() is already done.`),Fc;if(Live2DCubismCore._isStarted)return Fc=!0,!0;if(Live2DCubismCore._isStarted=!0,Lc=e,Lc&&Live2DCubismCore.Logging.csmSetLogFunction(Lc.logFunction),Fc=!0,Fc){let e=Live2DCubismCore.Version.csmGetVersion(),t=(e&4278190080)>>24,n=(e&16711680)>>16,r=e&65535,i=e;Uc(`Live2D Cubism Core version: {0}.{1}.{2} ({3})`,(`00`+t).slice(-2),(`00`+n).slice(-2),(`0000`+r).slice(-4),i)}return Uc(`CubismFramework.startUp() is complete.`),Fc}static cleanUp(){Fc=!1,Ic=!1,Lc=void 0}static initialize(){if(!Fc){Wc(`CubismFramework is not started.`);return}if(Ic){Wc(`CubismFramework.initialize() skipped, already initialized.`);return}Ic=!0,Uc(`CubismFramework.initialize() is complete.`)}static dispose(){if(!Fc){Wc(`CubismFramework is not started.`);return}if(!Ic){Wc(`CubismFramework.dispose() skipped, not initialized.`);return}Mc.staticRelease(),Ic=!1,Uc(`CubismFramework.dispose() is complete.`)}static isStarted(){return Fc}static isInitialized(){return Ic}static coreLogFunction(e){Live2DCubismCore.Logging.csmGetLogFunction()&&Live2DCubismCore.Logging.csmGetLogFunction()(e)}static getLoggingLevel(){return Lc==null?Bc.LogLevel_Off:Lc.loggingLevel}constructor(){}},Bc=(e=>(e[e.LogLevel_Verbose=0]=`LogLevel_Verbose`,e[e.LogLevel_Debug=1]=`LogLevel_Debug`,e[e.LogLevel_Info=2]=`LogLevel_Info`,e[e.LogLevel_Warning=3]=`LogLevel_Warning`,e[e.LogLevel_Error=4]=`LogLevel_Error`,e[e.LogLevel_Off=5]=`LogLevel_Off`,e))(Bc||{});const Vc=()=>{};function Hc(e,...t){Kc.print(Bc.LogLevel_Debug,`[CSM][D]`+e+` +`,t)}function Uc(e,...t){Kc.print(Bc.LogLevel_Info,`[CSM][I]`+e+` +`,t)}function Wc(e,...t){Kc.print(Bc.LogLevel_Warning,`[CSM][W]`+e+` +`,t)}function Gc(e,...t){Kc.print(Bc.LogLevel_Error,`[CSM][E]`+e+` +`,t)}var Kc=class{static print(e,t,n){if(en[t]);r(i)}static dumpBytes(e,t,n){for(let r=0;r0?this.print(e,` +`):r%8==0&&r>0&&this.print(e,` `),this.print(e,`{0} `,[t[r]&255]);this.print(e,` +`)}constructor(){}},qc=class{update(){this._model.update(),this._model.drawables.resetDynamicFlags()}getCanvasWidth(){return this._model==null?0:this._model.canvasinfo.CanvasWidth/this._model.canvasinfo.PixelsPerUnit}getCanvasHeight(){return this._model==null?0:this._model.canvasinfo.CanvasHeight/this._model.canvasinfo.PixelsPerUnit}saveParameters(){let e=this._model.parameters.count,t=this._savedParameters.length;for(let n=0;nt&&(t=this._model.parameters.minimumValues[e]),this._parameterValues[e]=n==1?t:this._parameterValues[e]=this._parameterValues[e]*(1-n)+t*n}setParameterValueById(e,t,n=1){let r=this.getParameterIndex(e);this.setParameterValueByIndex(r,t,n)}addParameterValueByIndex(e,t,n=1){this.setParameterValueByIndex(e,this.getParameterValueByIndex(e)+t*n)}addParameterValueById(e,t,n=1){let r=this.getParameterIndex(e);this.addParameterValueByIndex(r,t,n)}multiplyParameterValueById(e,t,n=1){let r=this.getParameterIndex(e);this.multiplyParameterValueByIndex(r,t,n)}multiplyParameterValueByIndex(e,t,n=1){this.setParameterValueByIndex(e,this.getParameterValueByIndex(e)*(1+(t-1)*n))}getDrawableIds(){return this._drawableIds.slice()}getDrawableIndex(e){let t=this._model.drawables.count;for(let n=0;nt&&(e=t);for(let t=0;t0&&t.getEndTime()(e[e.ExpressionBlendType_Add=0]=`ExpressionBlendType_Add`,e[e.ExpressionBlendType_Multiply=1]=`ExpressionBlendType_Multiply`,e[e.ExpressionBlendType_Overwrite=2]=`ExpressionBlendType_Overwrite`,e))(Qc||{}),$c;(e=>{e.supportMoreMaskDivisions=!0,e.setOpacityFromMotion=!1})($c||={});var el=(e=>(e[e.CubismMotionCurveTarget_Model=0]=`CubismMotionCurveTarget_Model`,e[e.CubismMotionCurveTarget_Parameter=1]=`CubismMotionCurveTarget_Parameter`,e[e.CubismMotionCurveTarget_PartOpacity=2]=`CubismMotionCurveTarget_PartOpacity`,e))(el||{}),tl=(e=>(e[e.CubismMotionSegmentType_Linear=0]=`CubismMotionSegmentType_Linear`,e[e.CubismMotionSegmentType_Bezier=1]=`CubismMotionSegmentType_Bezier`,e[e.CubismMotionSegmentType_Stepped=2]=`CubismMotionSegmentType_Stepped`,e[e.CubismMotionSegmentType_InverseStepped=3]=`CubismMotionSegmentType_InverseStepped`,e))(tl||{}),nl=class{constructor(e=0,t=0){this.time=e,this.value=t}},rl=class{constructor(){this.basePointIndex=0,this.segmentType=0}},il=class{constructor(){this.id=``,this.type=0,this.segmentCount=0,this.baseSegmentIndex=0,this.fadeInTime=0,this.fadeOutTime=0}},al=class{constructor(){this.fireTime=0,this.value=``}},ol=class{constructor(){this.duration=0,this.loop=!1,this.curveCount=0,this.eventCount=0,this.fps=0,this.curves=[],this.segments=[],this.points=[],this.events=[]}},sl=class{constructor(e){this._json=e}release(){this._json=void 0}getMotionDuration(){return this._json.Meta.Duration}isMotionLoop(){return this._json.Meta.Loop||!1}getEvaluationOptionFlag(e){return cl.EvaluationOptionFlag_AreBeziersRistricted==e?!!this._json.Meta.AreBeziersRestricted:!1}getMotionCurveCount(){return this._json.Meta.CurveCount}getMotionFps(){return this._json.Meta.Fps}getMotionTotalSegmentCount(){return this._json.Meta.TotalSegmentCount}getMotionTotalPointCount(){return this._json.Meta.TotalPointCount}getMotionFadeInTime(){return this._json.Meta.FadeInTime}getMotionFadeOutTime(){return this._json.Meta.FadeOutTime}getMotionCurveTarget(e){return this._json.Curves[e].Target}getMotionCurveId(e){return this._json.Curves[e].Id}getMotionCurveFadeInTime(e){return this._json.Curves[e].FadeInTime}getMotionCurveFadeOutTime(e){return this._json.Curves[e].FadeOutTime}getMotionCurveSegmentCount(e){return this._json.Curves[e].Segments.length}getMotionCurveSegment(e,t){return this._json.Curves[e].Segments[t]}getEventCount(){return this._json.Meta.UserDataCount||0}getTotalEventValueSize(){return this._json.Meta.TotalUserDataSize}getEventTime(e){return this._json.UserData[e].Time}getEventValue(e){return this._json.UserData[e].Value}},cl=(e=>(e[e.EvaluationOptionFlag_AreBeziersRistricted=0]=`EvaluationOptionFlag_AreBeziersRistricted`,e))(cl||{});const ll=`EyeBlink`,ul=`LipSync`,dl=`Model`,fl=`Parameter`,pl=`PartOpacity`,ml=!1;function hl(e,t,n){let r=new nl;return r.time=e.time+(t.time-e.time)*n,r.value=e.value+(t.value-e.value)*n,r}function gl(e,t){let n=(t-e[0].time)/(e[1].time-e[0].time);return n<0&&(n=0),e[0].value+(e[1].value-e[0].value)*n}function _l(e,t){let n=(t-e[0].time)/(e[3].time-e[0].time);n<0&&(n=0);let r=hl(e[0],e[1],n),i=hl(e[1],e[2],n),a=hl(e[2],e[3],n),o=hl(r,i,n),s=hl(i,a,n);return hl(o,s,n).value}function vl(e,t){let n=t,r=e[0].time,i=e[3].time,a=e[1].time,o=e[2].time,s=i-3*o+3*a-r,c=3*o-6*a+3*r,l=3*a-3*r,u=r-n,d=Ac.cardanoAlgorithmForBezier(s,c,l,u),f=hl(e[0],e[1],d),p=hl(e[1],e[2],d),m=hl(e[2],e[3],d),h=hl(f,p,d),g=hl(p,m,d);return hl(h,g,d).value}function yl(e,t){return e[0].value}function bl(e,t){return e[1].value}function xl(e,t,n){let r=e.curves[t],i=-1,a=r.baseSegmentIndex+r.segmentCount,o=0;for(let t=r.baseSegmentIndex;tn){i=t;break}if(i==-1)return e.points[o].value;let s=e.segments[i];return s.evaluate(e.points.slice(s.basePointIndex),n)}var Sl=class e extends Yc{constructor(){super(),this._eyeBlinkParameterIds=[],this._lipSyncParameterIds=[],this._sourceFrameRate=30,this._loopDurationSeconds=-1,this._isLoop=!1,this._isLoopFadeIn=!0,this._lastWeight=0}static create(t,n){let r=new e;return r.parse(t),r._sourceFrameRate=r._motionData.fps,r._loopDurationSeconds=r._motionData.duration,r._onFinishedMotion=n,r}doUpdateParameters(e,t,n,r){this._modelCurveIdEyeBlink??=ll,this._modelCurveIdLipSync??=ul;let i=t-r.getStartTime();i<0&&(i=0);let a=Number.MAX_VALUE,o=Number.MAX_VALUE,s=64,c=0,l=0;this._eyeBlinkParameterIds.length>s&&Hc(`too many eye blink targets : {0}`,this._eyeBlinkParameterIds.length),this._lipSyncParameterIds.length>s&&Hc(`too many lip sync targets : {0}`,this._lipSyncParameterIds.length);let u=this._fadeInSeconds<=0?1:Ac.getEasingSine((t-r.getFadeInStartTime())/this._fadeInSeconds),d=this._fadeOutSeconds<=0||r.getEndTime()<0?1:Ac.getEasingSine((r.getEndTime()-t)/this._fadeOutSeconds),f,p,m,h=i;if(this._isLoop)for(;h>this._motionData.duration;)h-=this._motionData.duration;let g=this._motionData.curves;for(p=0;p>t&1)continue;let i=r+(o-r)*n;e.setParameterValueById(this._eyeBlinkParameterIds[t],i)}if(a!=Number.MAX_VALUE)for(let t=0;t>t&1)continue;let i=r+(a-r)*n;e.setParameterValueById(this._lipSyncParameterIds[t],i)}for(;p=this._motionData.duration&&(this._isLoop?(r.setStartTime(t),this._isLoopFadeIn&&r.setFadeInStartTime(t)):(this._onFinishedMotion&&this._onFinishedMotion(this),r.setIsFinished(!0))),this._lastWeight=n}setIsLoop(e){this._isLoop=e}isLoop(){return this._isLoop}setIsLoopFadeIn(e){this._isLoopFadeIn=e}isLoopFadeIn(){return this._isLoopFadeIn}getDuration(){return this._isLoop?-1:this._loopDurationSeconds}getLoopDuration(){return this._loopDurationSeconds}setParameterFadeInTime(e,t){let n=this._motionData.curves;for(let r=0;rnew il),this._motionData.segments=Array.from({length:t.getMotionTotalSegmentCount()}).map(()=>new rl),this._motionData.events=Array.from({length:this._motionData.eventCount}).map(()=>new al),this._motionData.points=[];let a=0,o=0;for(let e=0;ee&&this._motionData.events[n].fireTime<=t&&this._firedEventValues.push(this._motionData.events[n].value);return this._firedEventValues}},Cl=class{constructor(){this._autoDelete=!1,this._available=!0,this._finished=!1,this._started=!1,this._startTimeSeconds=-1,this._fadeInStartTimeSeconds=0,this._endTimeSeconds=-1,this._stateTimeSeconds=0,this._stateWeight=0,this._lastEventCheckSeconds=0,this._motionQueueEntryHandle=this,this._fadeOutSeconds=0,this._isTriggeredFadeOut=!1}release(){this._autoDelete&&this._motion&&this._motion.release()}setFadeOut(e){this._fadeOutSeconds=e,this._isTriggeredFadeOut=!0}startFadeOut(e,t){let n=t+e;this._isTriggeredFadeOut=!0,(this._endTimeSeconds<0||nt!=null&&t._motionQueueEntryHandle==e)}setEventCallback(e,t=null){this._eventCallBack=e,this._eventCustomData=t}doUpdateMotion(e,t){let n=!1,r=0;for(;r(e[e.CubismPhysicsTargetType_Parameter=0]=`CubismPhysicsTargetType_Parameter`,e))(El||{}),Dl=(e=>(e[e.CubismPhysicsSource_X=0]=`CubismPhysicsSource_X`,e[e.CubismPhysicsSource_Y=1]=`CubismPhysicsSource_Y`,e[e.CubismPhysicsSource_Angle=2]=`CubismPhysicsSource_Angle`,e))(Dl||{}),Ol=class{constructor(){this.initialPosition=new Oc(0,0),this.position=new Oc(0,0),this.lastPosition=new Oc(0,0),this.lastGravity=new Oc(0,0),this.force=new Oc(0,0),this.velocity=new Oc(0,0)}},kl=class{constructor(){this.normalizationPosition={},this.normalizationAngle={}}},Al=class{constructor(){this.source={}}},jl=class{constructor(){this.destination={},this.translationScale=new Oc(0,0)}},Ml=class{constructor(){this.settings=[],this.inputs=[],this.outputs=[],this.particles=[],this.gravity=new Oc(0,0),this.wind=new Oc(0,0)}},Nl=class{constructor(e){this._json=e}release(){this._json=void 0}getGravity(){let e=new Oc(0,0);return e.x=this._json.Meta.EffectiveForces.Gravity.X,e.y=this._json.Meta.EffectiveForces.Gravity.Y,e}getWind(){let e=new Oc(0,0);return e.x=this._json.Meta.EffectiveForces.Wind.X,e.y=this._json.Meta.EffectiveForces.Wind.Y,e}getSubRigCount(){return this._json.Meta.PhysicsSettingCount}getTotalInputCount(){return this._json.Meta.TotalInputCount}getTotalOutputCount(){return this._json.Meta.TotalOutputCount}getVertexCount(){return this._json.Meta.VertexCount}getNormalizationPositionMinimumValue(e){return this._json.PhysicsSettings[e].Normalization.Position.Minimum}getNormalizationPositionMaximumValue(e){return this._json.PhysicsSettings[e].Normalization.Position.Maximum}getNormalizationPositionDefaultValue(e){return this._json.PhysicsSettings[e].Normalization.Position.Default}getNormalizationAngleMinimumValue(e){return this._json.PhysicsSettings[e].Normalization.Angle.Minimum}getNormalizationAngleMaximumValue(e){return this._json.PhysicsSettings[e].Normalization.Angle.Maximum}getNormalizationAngleDefaultValue(e){return this._json.PhysicsSettings[e].Normalization.Angle.Default}getInputCount(e){return this._json.PhysicsSettings[e].Input.length}getInputWeight(e,t){return this._json.PhysicsSettings[e].Input[t].Weight}getInputReflect(e,t){return this._json.PhysicsSettings[e].Input[t].Reflect}getInputType(e,t){return this._json.PhysicsSettings[e].Input[t].Type}getInputSourceId(e,t){return this._json.PhysicsSettings[e].Input[t].Source.Id}getOutputCount(e){return this._json.PhysicsSettings[e].Output.length}getOutputVertexIndex(e,t){return this._json.PhysicsSettings[e].Output[t].VertexIndex}getOutputAngleScale(e,t){return this._json.PhysicsSettings[e].Output[t].Scale}getOutputWeight(e,t){return this._json.PhysicsSettings[e].Output[t].Weight}getOutputDestinationId(e,t){return this._json.PhysicsSettings[e].Output[t].Destination.Id}getOutputType(e,t){return this._json.PhysicsSettings[e].Output[t].Type}getOutputReflect(e,t){return this._json.PhysicsSettings[e].Output[t].Reflect}getParticleCount(e){return this._json.PhysicsSettings[e].Vertices.length}getParticleMobility(e,t){return this._json.PhysicsSettings[e].Vertices[t].Mobility}getParticleDelay(e,t){return this._json.PhysicsSettings[e].Vertices[t].Delay}getParticleAcceleration(e,t){return this._json.PhysicsSettings[e].Vertices[t].Acceleration}getParticleRadius(e,t){return this._json.PhysicsSettings[e].Vertices[t].Radius}getParticlePosition(e,t){let n=new Oc(0,0);return n.x=this._json.PhysicsSettings[e].Vertices[t].Position.X,n.y=this._json.PhysicsSettings[e].Vertices[t].Position.Y,n}};const Pl=`X`,Fl=`Y`,Il=`Angle`,Ll=5,Rl=100,zl=.001;var Bl=class e{static create(t){let n=new e;return n.parse(t),n._physicsRig.gravity.y=0,n}evaluate(e,t){let n,r,i,a,o=new Oc,s,c,l,u,d,f,p,m;d=e.getModel().parameters.values,f=e.getModel().parameters.maximumValues,p=e.getModel().parameters.minimumValues,m=e.getModel().parameters.defaultValues;for(let h=0;h=s.particleCount)break;l[t].destinationParameterIndex==-1&&(l[t].destinationParameterIndex=e.getParameterIndex(l[t].destination.id));let r=new Oc;r.x=u[n].position.x-u[n-1].position.x,r.y=u[n].position.y-u[n-1].position.y,a=l[t].getValue(r,u,n,l[t].reflect,this._options.gravity);let i=l[t].destinationParameterIndex,o=!Float32Array.prototype.slice&&`subarray`in Float32Array.prototype?JSON.parse(JSON.stringify(d.subarray(i))):d.slice(i);eu(o,p[i],f[i],a,l[t]);for(let e=i,t=0;e=2?t[n-1].position.substract(t[n-2].position):i.multiplyByScaler(-1),a=Ac.directionToRadian(i,e),r&&(a*=-1),a}function Jl(e,t){return Math.abs(Math.max(e,t)-Math.min(e,t))}function Yl(e,t){let n=Math.min(e,t);return n+Jl(e,t)/2}function Xl(e,t){return e.x}function Zl(e,t){return e.y}function Ql(e,t){return t}function $l(e,t,n,r,i,a,o,s){let c,l,u,d,f=new Oc(0,0),p=new Oc(0,0),m=new Oc(0,0),h=new Oc(0,0);e[0].position=new Oc(n.x,n.y),c=Ac.degreesToRadian(r),d=Ac.radianToDirection(c),d.normalize();for(let n=1;nn&&(o>i.valueExceededMaximum&&(i.valueExceededMaximum=o),o=n),s=i.weight/Rl,s>=1||(o=e[0]*(1-s)+o*s),e[0]=o}function tu(e,t,n,r,i,a,o,s){let c=0,l=Ac.max(n,t);le&&(e=u);let d=Ac.min(i,a),f=Ac.max(i,a),p=o,m=Yl(u,l),h=e-m;switch(Math.sign(h)){case 1:{let e=f-p,t=l-m;t!=0&&(c=h*(e/t),c+=p);break}case-1:{let e=d-p,t=u-m;t!=0&&(c=h*(e/t),c+=p);break}case 0:c=p;break}return s?c:c*-1}var nu=class{constructor(e=0,t=0,n=0,r=0){this.x=e,this.y=t,this.width=n,this.height=r}getCenterX(){return this.x+.5*this.width}getCenterY(){return this.y+.5*this.height}getRight(){return this.x+this.width}getBottom(){return this.y+this.height}setRect(e){this.x=e.x,this.y=e.y,this.width=e.width,this.height=e.height}expand(e,t){this.x-=e,this.y-=t,this.width+=e*2,this.height+=t*2}};const ru=4,iu=10;let au,ou,su;var cu=class{getChannelFlagAsColor(e){return this._channelColors[e]}getMaskRenderTexture(){let e=0;if(this._maskTexture&&this._maskTexture.texture!=0&&(this._maskTexture.frameNo=this._currentFrameNo,e=this._maskTexture.texture),e==0){let t=this._clippingMaskBufferSize;this._colorBuffer=this.gl.createTexture(),this.gl.bindTexture(this.gl.TEXTURE_2D,this._colorBuffer),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,t,t,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,null),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.bindTexture(this.gl.TEXTURE_2D,null),e=this.gl.createFramebuffer(),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,e),this.gl.framebufferTexture2D(this.gl.FRAMEBUFFER,this.gl.COLOR_ATTACHMENT0,this.gl.TEXTURE_2D,this._colorBuffer,0),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,su),this._maskTexture=new lu(this._currentFrameNo,e)}return e}setGL(e){this.gl=e}calcClippedDrawTotalBounds(e,t){let n=Number.MAX_VALUE,r=Number.MAX_VALUE,i=Number.MIN_VALUE,a=Number.MIN_VALUE,o=t._clippedDrawableIndexList.length;for(let s=0;sf&&(f=t),np&&(p=n)}if(u!=Number.MAX_VALUE)if(ui&&(i=f),p>a&&(a=p),n==Number.MAX_VALUE)t._allClippedDrawRect.x=0,t._allClippedDrawRect.y=0,t._allClippedDrawRect.width=0,t._allClippedDrawRect.height=0,t._isUsing=!1;else{t._isUsing=!0;let e=i-n,o=a-r;t._allClippedDrawRect.x=n,t._allClippedDrawRect.y=r,t._allClippedDrawRect.width=e,t._allClippedDrawRect.height=o}}}constructor(){this._maskRenderTexture=null,this._colorBuffer=null,this._currentFrameNo=0,this._clippingMaskBufferSize=256,this._clippingContextListForMask=[],this._clippingContextListForDraw=[],this._channelColors=[],this._tmpBoundsOnModel=new nu,this._tmpMatrix=new jc,this._tmpMatrixForMask=new jc,this._tmpMatrixForDraw=new jc;let e=new Pc;e.R=1,e.G=0,e.B=0,e.A=0,this._channelColors.push(e),e=new Pc,e.R=0,e.G=1,e.B=0,e.A=0,this._channelColors.push(e),e=new Pc,e.R=0,e.G=0,e.B=1,e.A=0,this._channelColors.push(e),e=new Pc,e.R=0,e.G=0,e.B=0,e.A=1,this._channelColors.push(e)}release(){var e,t,n;let r=this;for(let t=0;t0){this.gl.viewport(0,0,this._clippingMaskBufferSize,this._clippingMaskBufferSize),this._maskRenderTexture=this.getMaskRenderTexture(),t.getMvpMatrix(),t.preDraw(),this.setupLayoutBounds(n),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,this._maskRenderTexture),this.gl.clearColor(1,1,1,1),this.gl.clear(this.gl.COLOR_BUFFER_BIT);for(let n=0;n(e[e.ShaderNames_SetupMask=0]=`ShaderNames_SetupMask`,e[e.ShaderNames_NormalPremultipliedAlpha=1]=`ShaderNames_NormalPremultipliedAlpha`,e[e.ShaderNames_NormalMaskedPremultipliedAlpha=2]=`ShaderNames_NormalMaskedPremultipliedAlpha`,e[e.ShaderNames_NomralMaskedInvertedPremultipliedAlpha=3]=`ShaderNames_NomralMaskedInvertedPremultipliedAlpha`,e[e.ShaderNames_AddPremultipliedAlpha=4]=`ShaderNames_AddPremultipliedAlpha`,e[e.ShaderNames_AddMaskedPremultipliedAlpha=5]=`ShaderNames_AddMaskedPremultipliedAlpha`,e[e.ShaderNames_AddMaskedPremultipliedAlphaInverted=6]=`ShaderNames_AddMaskedPremultipliedAlphaInverted`,e[e.ShaderNames_MultPremultipliedAlpha=7]=`ShaderNames_MultPremultipliedAlpha`,e[e.ShaderNames_MultMaskedPremultipliedAlpha=8]=`ShaderNames_MultMaskedPremultipliedAlpha`,e[e.ShaderNames_MultMaskedPremultipliedAlphaInverted=9]=`ShaderNames_MultMaskedPremultipliedAlphaInverted`,e))(fu||{});const pu=`attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_myPos;uniform mat4 u_clipMatrix;void main(){ gl_Position = u_clipMatrix * a_position; v_myPos = u_clipMatrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}`,mu=`precision mediump float;varying vec2 v_texCoord;varying vec4 v_myPos;uniform vec4 u_baseColor;uniform vec4 u_channelFlag;uniform sampler2D s_texture0;void main(){ float isInside = step(u_baseColor.x, v_myPos.x/v_myPos.w) * step(u_baseColor.y, v_myPos.y/v_myPos.w) * step(v_myPos.x/v_myPos.w, u_baseColor.z) * step(v_myPos.y/v_myPos.w, u_baseColor.w); gl_FragColor = u_channelFlag * texture2D(s_texture0, v_texCoord).a * isInside;}`,hu=`attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;uniform mat4 u_matrix;void main(){ gl_Position = u_matrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}`,gu=`attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform mat4 u_matrix;uniform mat4 u_clipMatrix;void main(){ gl_Position = u_matrix * a_position; v_clipPos = u_clipMatrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}`,_u=`precision mediump float;varying vec2 v_texCoord;uniform vec4 u_baseColor;uniform sampler2D s_texture0;void main(){ gl_FragColor = texture2D(s_texture0 , v_texCoord) * u_baseColor;}`,vu=`precision mediump float;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform vec4 u_baseColor;uniform vec4 u_channelFlag;uniform sampler2D s_texture0;uniform sampler2D s_texture1;void main(){ vec4 col_formask = texture2D(s_texture0 , v_texCoord) * u_baseColor; vec4 clipMask = (1.0 - texture2D(s_texture1, v_clipPos.xy / v_clipPos.w)) * u_channelFlag; float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a; col_formask = col_formask * maskVal; gl_FragColor = col_formask;}`,yu=`precision mediump float;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform sampler2D s_texture0;uniform sampler2D s_texture1;uniform vec4 u_channelFlag;uniform vec4 u_baseColor;void main(){vec4 col_formask = texture2D(s_texture0, v_texCoord) * u_baseColor;vec4 clipMask = (1.0 - texture2D(s_texture1, v_clipPos.xy / v_clipPos.w)) * u_channelFlag;float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a;col_formask = col_formask * (1.0 - maskVal);gl_FragColor = col_formask;}`;var bu=class extends Mc{constructor(){super(),this._clippingContextBufferForMask=null,this._clippingContextBufferForDraw=null,this._clippingManager=new cu,this.firstDraw=!0,this._textures={},this._sortedDrawableIndexList=[],this._bufferData={vertex:null,uv:null,index:null}}initialize(e){e.isUsingMasking()&&(this._clippingManager=new cu,this._clippingManager.initialize(e,e.getDrawableCount(),e.getDrawableMasks(),e.getDrawableMaskCounts()));for(let t=e.getDrawableCount()-1;t>=0;t--)this._sortedDrawableIndexList[t]=0;super.initialize(e)}bindTexture(e,t){this._textures[e]=t}getBindedTextures(){return this._textures}setClippingMaskBufferSize(e){this._clippingManager.release(),this._clippingManager=new cu,this._clippingManager.setClippingMaskBufferSize(e),this._clippingManager.initialize(this.getModel(),this.getModel().getDrawableCount(),this.getModel().getDrawableMasks(),this.getModel().getDrawableMaskCounts())}getClippingMaskBufferSize(){return this._clippingManager.getClippingMaskBufferSize()}release(){var e,t,n;let r=this;this._clippingManager.release(),r._clippingManager=void 0,(e=this.gl)==null||e.deleteBuffer(this._bufferData.vertex),this._bufferData.vertex=null,(t=this.gl)==null||t.deleteBuffer(this._bufferData.uv),this._bufferData.uv=null,(n=this.gl)==null||n.deleteBuffer(this._bufferData.index),this._bufferData.index=null,r._bufferData=void 0,r._textures=void 0}doDrawModel(){this.preDraw(),this._clippingManager!=null&&this._clippingManager.setupClippingContext(this.getModel(),this);let e=this.getModel().getDrawableCount(),t=this.getModel().getDrawableRenderOrders();for(let n=0;n{bu.doStaticRelease()};var xu=class{constructor(e){this.groups=e.Groups,this.hitAreas=e.HitAreas,this.layout=e.Layout,this.moc=e.FileReferences.Moc,this.expressions=e.FileReferences.Expressions,this.motions=e.FileReferences.Motions,this.textures=e.FileReferences.Textures,this.physics=e.FileReferences.Physics,this.pose=e.FileReferences.Pose}getEyeBlinkParameters(){var e,t;return(t=(e=this.groups)?.find(e=>e.Name===`EyeBlink`))?.Ids}getLipSyncParameters(){var e,t;return(t=(e=this.groups)?.find(e=>e.Name===`LipSync`))?.Ids}};const Su=`ParamAngleX`,Cu=`ParamAngleY`,wu=`ParamAngleZ`,Tu=`ParamEyeBallX`,Eu=`ParamEyeBallY`,Du=`ParamBodyAngleX`,Ou=`ParamBreath`,ku=2,Au=2;var ju;(e=>{e.LOG_LEVEL_VERBOSE=0,e.LOG_LEVEL_WARNING=1,e.LOG_LEVEL_ERROR=2,e.LOG_LEVEL_NONE=999,e.logLevel=e.LOG_LEVEL_WARNING,e.sound=!0,e.motionSync=!0,e.motionFadingDuration=500,e.idleMotionFadingDuration=2e3,e.expressionFadingDuration=500,e.preserveExpressionOnMotion=!0,e.cubism4=$c})(ju||={});const Mu={log(e,...t){ju.logLevel<=ju.LOG_LEVEL_VERBOSE&&console.log(`[${e}]`,...t)},warn(e,...t){ju.logLevel<=ju.LOG_LEVEL_WARNING&&console.warn(`[${e}]`,...t)},error(e,...t){ju.logLevel<=ju.LOG_LEVEL_ERROR&&console.error(`[${e}]`,...t)}};function Nu(e,t,n){return en?n:e}function Pu(e,t){t.forEach(t=>{Object.getOwnPropertyNames(t.prototype).forEach(n=>{n!==`constructor`&&Object.defineProperty(e.prototype,n,Object.getOwnPropertyDescriptor(t.prototype,n))})})}function Fu(e){let t=e.lastIndexOf(`/`);return t!=-1&&(e=e.slice(0,t)),t=e.lastIndexOf(`/`),t!==-1&&(e=e.slice(t+1)),e}function Iu(e,t){let n=e.indexOf(t);n!==-1&&e.splice(n,1)}var Lu=class extends Yr.default{constructor(e,t){super(),this.expressions=[],this.reserveExpressionIndex=-1,this.destroyed=!1,this.settings=e,this.tag=`ExpressionManager(${e.name})`}init(){this.defaultExpression=this.createExpression({},void 0),this.currentExpression=this.defaultExpression,this.stopAllExpressions()}loadExpression(e){return vc(this,null,function*(){if(!this.definitions[e]){Mu.warn(this.tag,`Undefined expression at [${e}]`);return}if(this.expressions[e]===null){Mu.warn(this.tag,`Cannot set expression at [${e}] because it's already failed in loading.`);return}if(this.expressions[e])return this.expressions[e];let t=yield this._loadExpression(e);return this.expressions[e]=t,t})}_loadExpression(e){throw Error(`Not implemented.`)}setRandomExpression(){return vc(this,null,function*(){if(this.definitions.length){let e=[];for(let t=0;t-1&&ec&&(a*=c/s,o*=c/s),this.vx+=a,this.vy+=o;let l=Math.sqrt(_c(this.vx,2)+_c(this.vy,2)),u=.5*(Math.sqrt(_c(c,2)+8*c*r)-c);l>u&&(this.vx*=u/l,this.vy*=u/l),this.x+=this.vx,this.y+=this.vy}},Hu=class{constructor(e){this.json=e;let t=e.url;if(typeof t!=`string`)throw TypeError("The `url` field in settings JSON must be defined as a string.");this.url=t,this.name=Fu(this.url)}resolveURL(e){return Qr.resolve(this.url,e)}replaceFiles(e){this.moc=e(this.moc,`moc`),this.pose!==void 0&&(this.pose=e(this.pose,`pose`)),this.physics!==void 0&&(this.physics=e(this.physics,`physics`));for(let t=0;t(e.push(t),t)),e}validateFiles(e){let t=(t,n)=>{let r=this.resolveURL(t);if(!e.includes(r)){if(n)throw Error(`File "${t}" is defined in settings, but doesn't exist in given files`);return!1}return!0},n=[this.moc,...this.textures];n.forEach(e=>t(e,!0));let r=this.getDefinedFiles();return r.filter(e=>t(e,!1))}},Uu=(e=>(e[e.NONE=0]=`NONE`,e[e.IDLE=1]=`IDLE`,e[e.NORMAL=2]=`NORMAL`,e[e.FORCE=3]=`FORCE`,e))(Uu||{}),Wu=class{constructor(){this.debug=!1,this.currentPriority=0,this.reservePriority=0}reserve(e,t,n){if(n<=0)return Mu.log(this.tag,`Cannot start a motion with MotionPriority.NONE.`),!1;if(e===this.currentGroup&&t===this.currentIndex)return Mu.log(this.tag,`Motion is already playing.`,this.dump(e,t)),!1;if(e===this.reservedGroup&&t===this.reservedIndex||e===this.reservedIdleGroup&&t===this.reservedIdleIndex)return Mu.log(this.tag,`Motion is already reserved.`,this.dump(e,t)),!1;if(n===1){if(this.currentPriority!==0)return Mu.log(this.tag,`Cannot start idle motion because another motion is playing.`,this.dump(e,t)),!1;if(this.reservedIdleGroup!==void 0)return Mu.log(this.tag,`Cannot start idle motion because another idle motion has reserved.`,this.dump(e,t)),!1;this.setReservedIdle(e,t)}else{if(n<3){if(n<=this.currentPriority)return Mu.log(this.tag,`Cannot start motion because another motion is playing as an equivalent or higher priority.`,this.dump(e,t)),!1;if(n<=this.reservePriority)return Mu.log(this.tag,`Cannot start motion because another motion has reserved as an equivalent or higher priority.`,this.dump(e,t)),!1}this.setReserved(e,t,n)}return!0}start(e,t,n,r){if(r===1){if(this.setReservedIdle(void 0,void 0),this.currentPriority!==0)return Mu.log(this.tag,`Cannot start idle motion because another motion is playing.`,this.dump(t,n)),!1}else{if(t!==this.reservedGroup||n!==this.reservedIndex)return Mu.log(this.tag,`Cannot start motion because another motion has taken the place.`,this.dump(t,n)),!1;this.setReserved(void 0,void 0,0)}return e?(this.setCurrent(t,n,r),!0):!1}complete(){this.setCurrent(void 0,void 0,0)}setCurrent(e,t,n){this.currentPriority=n,this.currentGroup=e,this.currentIndex=t}setReserved(e,t,n){this.reservePriority=n,this.reservedGroup=e,this.reservedIndex=t}setReservedIdle(e,t){this.reservedIdleGroup=e,this.reservedIdleIndex=t}isActive(e,t){return e===this.currentGroup&&t===this.currentIndex||e===this.reservedGroup&&t===this.reservedIndex||e===this.reservedIdleGroup&&t===this.reservedIdleIndex}reset(){this.setCurrent(void 0,void 0,0),this.setReserved(void 0,void 0,0),this.setReservedIdle(void 0,void 0)}shouldRequestIdleMotion(){return this.currentGroup===void 0&&this.reservedIdleGroup===void 0}shouldOverrideExpression(){return!ju.preserveExpressionOnMotion&&this.currentPriority>1}dump(e,t){if(this.debug){let n=[`currentPriority`,`reservePriority`,`currentGroup`,`currentIndex`,`reservedGroup`,`reservedIndex`,`reservedIdleGroup`,`reservedIdleIndex`];return` + group = "${e}", index = ${t} +`+n.map(e=>`[`+e+`] `+this[e]).join(` +`)}return``}};const Gu=`SoundManager`,Ku=.5;var qu=class{static get volume(){return this._volume}static set volume(e){this._volume=(e>1?1:e<0?0:e)||0,this.audios.forEach(e=>e.volume=this._volume)}static add(e,t,n){let r=new Audio(e);return r.volume=this._volume,r.preload=`auto`,r.addEventListener(`ended`,()=>{this.dispose(r),t?.()}),r.addEventListener(`error`,t=>{this.dispose(r),Mu.warn(Gu,`Error occurred on "${e}"`,t.error),n?.(t.error)}),this.audios.push(r),r}static play(e){return new Promise((t,n)=>{var r;(r=e.play())==null||r.catch(t=>{e.dispatchEvent(new ErrorEvent(`error`,{error:t})),n(t)}),e.readyState===e.HAVE_ENOUGH_DATA?t():e.addEventListener(`canplaythrough`,t)})}static dispose(e){e.pause(),e.removeAttribute(`src`),Iu(this.audios,e)}static destroy(){for(let e=this.audios.length-1;e>=0;e--)this.dispose(this.audios[e])}};qu.audios=[],qu._volume=Ku;var Ju=class extends Yr.default{constructor(e,t){super(),this.motionGroups={},this.state=new Wu,this.playing=!1,this.destroyed=!1,this.settings=e,this.tag=`MotionManager(${e.name})`,this.state.tag=this.tag}init(e){e?.idleMotionGroup&&(this.groups.idle=e.idleMotionGroup),this.setupMotions(e),this.stopAllMotions()}setupMotions(e){for(let e of Object.keys(this.definitions))this.motionGroups[e]=[];let t;switch(e?.motionPreload){case`NONE`:return;case`ALL`:t=Object.keys(this.definitions);break;case`IDLE`:default:t=[this.groups.idle];break}for(let e of t)if(this.definitions[e])for(let t=0;tthis.currentAudio=void 0,()=>this.currentAudio=void 0),this.currentAudio=a}catch(t){Mu.warn(this.tag,`Failed to create audio`,e,t)}}let o=yield this.loadMotion(e,t);if(a){let e=qu.play(a).catch(e=>Mu.warn(this.tag,`Failed to play audio`,a.src,e));ju.motionSync&&(yield e)}return this.state.start(o,e,t,n)?(Mu.log(this.tag,`Start motion:`,this.getMotionName(i)),this.emit(`motionStart`,e,t,a),this.state.shouldOverrideExpression()&&this.expressionManager&&this.expressionManager.resetExpression(),this.playing=!0,this._startMotion(o),!0):(a&&(qu.dispose(a),this.currentAudio=void 0),!1)})}startRandomMotion(e,t){return vc(this,null,function*(){let n=this.definitions[e];if(n?.length){let r=[];for(let t=0;te.index>=0);for(let t of e)this.hitAreas[t.name]=t}hitTest(e,t){return Object.keys(this.hitAreas).filter(n=>this.isHit(n,e,t))}isHit(e,t,n){if(!this.hitAreas[e])return!1;let r=this.hitAreas[e].index,i=this.getDrawableBounds(r,Yu);return i.x<=t&&t<=i.x+i.width&&i.y<=n&&n<=i.y+i.height}getDrawableBounds(e,t){let n=this.getDrawableVertices(e),r=n[0],i=n[0],a=n[1],o=n[1];for(let e=0;e{(a.status===200||a.status===0)&&a.response?r(a.response):a.onerror()},a.onerror=()=>{Mu.warn(Zu,`Failed to load resource as ${a.responseType} (Status ${a.status}): ${t}`),i(new Qu(`Network error.`,t,a.status))},a.onabort=()=>i(new Qu(`Aborted.`,t,a.status,!0)),a.onloadend=()=>{var t;$u.allXhrSet.delete(a),e&&((t=$u.xhrMap.get(e))==null||t.delete(a))},a}static cancelXHRs(){var e;(e=$u.xhrMap.get(this))==null||e.forEach(e=>{e.abort(),$u.allXhrSet.delete(e)}),$u.xhrMap.delete(this)}static release(){$u.allXhrSet.forEach(e=>e.abort()),$u.allXhrSet.clear(),$u.xhrMap=new WeakMap}};let ed=$u;ed.xhrMap=new WeakMap,ed.allXhrSet=new Set,ed.loader=(e,t)=>new Promise((t,n)=>{let r=$u.createXHR(e.target,e.settings?e.settings.resolveURL(e.url):e.url,e.type,n=>{e.result=n,t()},n);r.send()});function td(e,t){let n=-1;return r(0);function r(i,a){if(a)return Promise.reject(a);if(i<=n)return Promise.reject(Error(`next() called multiple times`));n=i;let o=e[i];if(!o)return Promise.resolve();try{return Promise.resolve(o(t,r.bind(null,i+1)))}catch(e){return Promise.reject(e)}}}var nd=class{static load(e){return td(this.middlewares,e).then(()=>e.result)}};nd.middlewares=[ed.loader];function rd(e,t={}){var n;let r={resourceOptions:{crossorigin:t.crossOrigin}};if(Aa.fromURL)return Aa.fromURL(e,r).catch(e=>{if(e instanceof Error)throw e;let t=Error(`Texture loading error`);throw t.event=e,t});r.resourceOptions.autoLoad=!1;let i=Aa.from(e,r);if(i.baseTexture.valid)return Promise.resolve(i);let a=i.baseTexture.resource;return(n=a._live2d_load)??(a._live2d_load=new Promise((e,t)=>{let n=e=>{a.source.removeEventListener(`error`,n);let r=Error(`Texture loading error`);r.event=e,t(r)};a.source.addEventListener(`error`,n),a.load().then(()=>e(i)).catch(n)})),a._live2d_load}const id=`Live2DFactory`,ad=(e,t)=>vc(void 0,null,function*(){if(typeof e.source==`string`){let t=yield nd.load({url:e.source,type:`json`,target:e.live2dModel});t.url=e.source,e.source=t,e.live2dModel.emit(`settingsJSONLoaded`,t)}return t()}),od=(e,t)=>vc(void 0,null,function*(){if(e.source instanceof Hu)return e.settings=e.source,t();if(typeof e.source==`object`){let n=fd.findRuntime(e.source);if(n){let r=n.createModelSettings(e.source);return e.settings=r,e.live2dModel.emit(`settingsLoaded`,r),t()}}throw TypeError(`Unknown settings format.`)}),sd=(e,t)=>{if(e.settings){let n=fd.findRuntime(e.settings);if(n)return n.ready().then(t)}return t()},cd=(e,t)=>vc(void 0,null,function*(){yield t();let n=e.internalModel;if(n){let t=e.settings,r=fd.findRuntime(t);if(r){let i=[];t.pose&&i.push(nd.load({settings:t,url:t.pose,type:`json`,target:n}).then(t=>{n.pose=r.createPose(n.coreModel,t),e.live2dModel.emit(`poseLoaded`,n.pose)}).catch(t=>{e.live2dModel.emit(`poseLoadError`,t),Mu.warn(id,`Failed to load pose.`,t)})),t.physics&&i.push(nd.load({settings:t,url:t.physics,type:`json`,target:n}).then(t=>{n.physics=r.createPhysics(n.coreModel,t),e.live2dModel.emit(`physicsLoaded`,n.physics)}).catch(t=>{e.live2dModel.emit(`physicsLoadError`,t),Mu.warn(id,`Failed to load physics.`,t)})),i.length&&(yield Promise.all(i))}}}),ld=(e,t)=>vc(void 0,null,function*(){if(e.settings){let n=e.live2dModel,r=e.settings.textures.map(t=>{let n=e.settings.resolveURL(t);return rd(n,{crossOrigin:e.options.crossOrigin})});if(yield t(),e.internalModel)n.internalModel=e.internalModel,n.emit(`modelLoaded`,e.internalModel);else throw TypeError(`Missing internal model.`);n.textures=yield Promise.all(r),n.emit(`textureLoaded`,n.textures)}else throw TypeError(`Missing settings.`)}),ud=(e,t)=>vc(void 0,null,function*(){let n=e.settings;if(n instanceof Hu){let r=fd.findRuntime(n);if(!r)throw TypeError(`Unknown model settings.`);let i=yield nd.load({settings:n,url:n.moc,type:`arraybuffer`,target:e.live2dModel});if(!r.isValidMoc(i))throw Error(`Invalid moc data`);let a=r.createCoreModel(i);return e.internalModel=r.createInternalModel(a,n,e.options),t()}throw TypeError(`Missing settings.`)}),dd=class{static registerRuntime(e){dd.runtimes.push(e),dd.runtimes.sort((e,t)=>t.version-e.version)}static findRuntime(e){for(let t of dd.runtimes)if(t.test(e))return t}static setupLive2DModel(e,t,n){return vc(this,null,function*(){let r=new Promise(t=>e.once(`textureLoaded`,t)),i=new Promise(t=>e.once(`modelLoaded`,t)),a=Promise.all([r,i]).then(()=>e.emit(`ready`));yield td(dd.live2DModelMiddlewares,{live2dModel:e,source:t,options:n||{}}),yield a,e.emit(`load`)})}static loadMotion(e,t,n){var r,i;let a=r=>e.emit(`motionLoadError`,t,n,r);try{let o=(r=e.definitions[t])?.[n];if(!o)return Promise.resolve(void 0);e.listeners(`destroy`).includes(dd.releaseTasks)||e.once(`destroy`,dd.releaseTasks);let s=dd.motionTasksMap.get(e);s||(s={},dd.motionTasksMap.set(e,s));let c=s[t];c||(c=[],s[t]=c);let l=e.getMotionFile(o);return(i=c[n])??(c[n]=nd.load({url:l,settings:e.settings,type:e.motionDataType,target:e}).then(r=>{var i;let a=(i=dd.motionTasksMap.get(e))?.[t];a&&delete a[n];let s=e.createMotion(r,t,o);return e.emit(`motionLoaded`,t,n,s),s}).catch(t=>{Mu.warn(e.tag,`Failed to load motion: ${l} +`,t),a(t)})),c[n]}catch(r){Mu.warn(e.tag,`Failed to load motion at "${t}"[${n}] +`,r),a(r)}return Promise.resolve(void 0)}static loadExpression(e,t){var n;let r=n=>e.emit(`expressionLoadError`,t,n);try{let i=e.definitions[t];if(!i)return Promise.resolve(void 0);e.listeners(`destroy`).includes(dd.releaseTasks)||e.once(`destroy`,dd.releaseTasks);let a=dd.expressionTasksMap.get(e);a||(a=[],dd.expressionTasksMap.set(e,a));let o=e.getExpressionFile(i);return(n=a[t])??(a[t]=nd.load({url:o,settings:e.settings,type:`json`,target:e}).then(n=>{let r=dd.expressionTasksMap.get(e);r&&delete r[t];let a=e.createExpression(n,i);return e.emit(`expressionLoaded`,t,a),a}).catch(t=>{Mu.warn(e.tag,`Failed to load expression: ${o} +`,t),r(t)})),a[t]}catch(n){Mu.warn(e.tag,`Failed to load expression at [${t}] +`,n),r(n)}return Promise.resolve(void 0)}static releaseTasks(){this instanceof Ju?dd.motionTasksMap.delete(this):dd.expressionTasksMap.delete(this)}};let fd=dd;fd.runtimes=[],fd.urlToJSON=ad,fd.jsonToSettings=od,fd.waitUntilReady=sd,fd.setupOptionals=cd,fd.setupEssentials=ld,fd.createInternalModel=ud,fd.live2DModelMiddlewares=[ad,od,sd,cd,ld,ud],fd.motionTasksMap=new WeakMap,fd.expressionTasksMap=new WeakMap,Ju.prototype._loadMotion=function(e,t){return fd.loadMotion(this,e,t)},Lu.prototype._loadExpression=function(e){return fd.loadExpression(this,e)};var pd=class{constructor(){this._autoInteract=!1}get autoInteract(){return this._autoInteract}set autoInteract(e){e!==this._autoInteract&&(e?this.on(`pointertap`,md,this):this.off(`pointertap`,md,this),this._autoInteract=e)}registerInteraction(e){e!==this.interactionManager&&(this.unregisterInteraction(),this._autoInteract&&e&&(this.interactionManager=e,e.on(`pointermove`,hd,this)))}unregisterInteraction(){var e;this.interactionManager&&((e=this.interactionManager)==null||e.off(`pointermove`,hd,this),this.interactionManager=void 0)}};function md(e){this.tap(e.data.global.x,e.data.global.y)}function hd(e){this.focus(e.data.global.x,e.data.global.y)}var gd=class extends ra{};const _d=new zi,vd=new qi;let yd;var bd=class extends mc{constructor(e){super(),this.tag=`Live2DModel(uninitialized)`,this.textures=[],this.transform=new gd,this.anchor=new Ki(this.onAnchorChange,this,0,0),this.glContextID=-1,this.elapsedTime=performance.now(),this.deltaTime=0,this._autoUpdate=!1,this.once(`modelLoaded`,()=>this.init(e))}static from(e,t){let n=new this(t);return fd.setupLive2DModel(n,e,t).then(()=>n)}static fromSync(e,t){let n=new this(t);return fd.setupLive2DModel(n,e,t).then(t?.onLoad).catch(t?.onError),n}static registerTicker(e){yd=e}get autoUpdate(){return this._autoUpdate}set autoUpdate(e){var t;yd||=(t=window.PIXI)?.Ticker,e?this._destroyed||(yd?(yd.shared.add(this.onTickerUpdate,this),this._autoUpdate=!0):Mu.warn(this.tag,`No Ticker registered, please call Live2DModel.registerTicker(Ticker).`)):(yd?.shared.remove(this.onTickerUpdate,this),this._autoUpdate=!1)}init(e){this.tag=`Live2DModel(${this.internalModel.settings.name})`;let t=Object.assign({autoUpdate:!0,autoInteract:!0},e);t.autoInteract&&(this.interactive=!0),this.autoInteract=t.autoInteract,this.autoUpdate=t.autoUpdate}onAnchorChange(){this.pivot.set(this.anchor.x*this.internalModel.width,this.anchor.y*this.internalModel.height)}motion(e,t,n){return t===void 0?this.internalModel.motionManager.startRandomMotion(e,n):this.internalModel.motionManager.startMotion(e,t,n)}expression(e){return this.internalModel.motionManager.expressionManager?e===void 0?this.internalModel.motionManager.expressionManager.setRandomExpression():this.internalModel.motionManager.expressionManager.setExpression(e):Promise.resolve(!1)}focus(e,t,n=!1){_d.x=e,_d.y=t,this.toModelPosition(_d,_d,!0);let r=_d.x/this.internalModel.originalWidth*2-1,i=_d.y/this.internalModel.originalHeight*2-1,a=Math.atan2(i,r);this.internalModel.focusController.focus(Math.cos(a),-Math.sin(a),n)}tap(e,t){let n=this.hitTest(e,t);n.length&&(Mu.log(this.tag,`Hit`,n),this.emit(`hit`,n))}hitTest(e,t){return _d.x=e,_d.y=t,this.toModelPosition(_d,_d),this.internalModel.hitTest(_d.x,_d.y)}toModelPosition(e,t=e.clone(),n){return n||(this._recursivePostUpdateTransform(),this.parent?this.displayObjectUpdateTransform():(this.parent=this._tempDisplayObjectParent,this.displayObjectUpdateTransform(),this.parent=null)),this.transform.worldTransform.applyInverse(e,t),this.internalModel.localTransform.applyInverse(t,t),t}containsPoint(e){return this.getBounds(!0).contains(e.x,e.y)}_calculateBounds(){this._bounds.addFrame(this.transform,0,0,this.internalModel.width,this.internalModel.height)}onTickerUpdate(){this.update(yd.shared.deltaMS)}update(e){this.deltaTime+=e,this.elapsedTime+=e}_render(e){this.registerInteraction(e.plugins.interaction),e.batch.reset(),e.geometry.reset(),e.shader.reset(),e.state.reset();let t=!1;this.glContextID!==e.CONTEXT_UID&&(this.glContextID=e.CONTEXT_UID,this.internalModel.updateWebGLContext(e.gl,this.glContextID),t=!0);for(let n=0;nt.destroy(e.baseTexture)),this.internalModel.destroy(),super.destroy(e)}};Pu(bd,[pd]);const xd=class{static resolveURL(e,t){var n;let r=(n=xd.filesMap[e])?.[t];if(r===void 0)throw Error(`Cannot find this file from uploaded files: `+t);return r}static upload(e,t){return vc(this,null,function*(){let n={};for(let r of t.getDefinedFiles()){let i=decodeURI(Qr.resolve(t.url,r)),a=e.find(e=>e.webkitRelativePath===i);a&&(n[r]=URL.createObjectURL(a))}xd.filesMap[t._objectURL]=n})}static createSettings(e){return vc(this,null,function*(){let t=e.find(e=>e.name.endsWith(`model.json`)||e.name.endsWith(`model3.json`));if(!t)throw TypeError(`Settings file not found`);let n=yield xd.readText(t),r=JSON.parse(n);r.url=t.webkitRelativePath;let i=fd.findRuntime(r);if(!i)throw Error(`Unknown settings JSON`);let a=i.createModelSettings(r);return a._objectURL=URL.createObjectURL(t),a})}static readText(e){return vc(this,null,function*(){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsText(e,`utf8`)})})}};let Sd=xd;Sd.filesMap={},Sd.factory=(e,t)=>vc(void 0,null,function*(){if(Array.isArray(e.source)&&e.source[0]instanceof File){let t=e.source,n=t.settings;if(!n)n=yield xd.createSettings(t);else if(!n._objectURL)throw Error(`"_objectURL" must be specified in ModelSettings`);n.validateFiles(t.map(e=>encodeURI(e.webkitRelativePath))),yield xd.upload(t,n),n.resolveURL=function(e){return xd.resolveURL(this._objectURL,e)},e.source=n,e.live2dModel.once(`modelLoaded`,e=>{e.once(`destroy`,function(){let e=this.settings._objectURL;if(URL.revokeObjectURL(e),xd.filesMap[e])for(let t of Object.values(xd.filesMap[e]))URL.revokeObjectURL(t);delete xd.filesMap[e]})})}return t()}),fd.live2DModelMiddlewares.unshift(Sd.factory);const Cd=class{static unzip(e,t){return vc(this,null,function*(){let n=yield Cd.getFilePaths(e),r=[];for(let e of t.getDefinedFiles()){let i=decodeURI(Qr.resolve(t.url,e));n.includes(i)&&r.push(i)}let i=yield Cd.getFiles(e,r);for(let e=0;ee.endsWith(`model.json`)||e.endsWith(`model3.json`));if(!n)throw Error(`Settings file not found`);let r=yield Cd.readText(e,n);if(!r)throw Error(`Empty settings file: `+n);let i=JSON.parse(r);i.url=n;let a=fd.findRuntime(i);if(!a)throw Error(`Unknown settings JSON`);return a.createModelSettings(i)})}static zipReader(e,t){return vc(this,null,function*(){throw Error(`Not implemented`)})}static getFilePaths(e){return vc(this,null,function*(){throw Error(`Not implemented`)})}static getFiles(e,t){return vc(this,null,function*(){throw Error(`Not implemented`)})}static readText(e,t){return vc(this,null,function*(){throw Error(`Not implemented`)})}static releaseReader(e){}};let wd=Cd;if(wd.ZIP_PROTOCOL=`zip://`,wd.uid=0,wd.factory=(e,t)=>vc(void 0,null,function*(){let n=e.source,r,i,a;if(typeof n==`string`&&(n.endsWith(`.zip`)||n.startsWith(Cd.ZIP_PROTOCOL))?(r=n.startsWith(Cd.ZIP_PROTOCOL)?n.slice(Cd.ZIP_PROTOCOL.length):n,i=yield nd.load({url:r,type:`blob`,target:e.live2dModel})):Array.isArray(n)&&n.length===1&&n[0]instanceof File&&n[0].name.endsWith(`.zip`)&&(i=n[0],r=URL.createObjectURL(i),a=n.settings),i){if(!i.size)throw Error(`Empty zip file`);let t=yield Cd.zipReader(i,r);a||=yield Cd.createSettings(t),a._objectURL=Cd.ZIP_PROTOCOL+Cd.uid+`/`+a.url;let n=yield Cd.unzip(t,a);n.settings=a,e.source=n,r.startsWith(`blob:`)&&e.live2dModel.once(`modelLoaded`,e=>{e.once(`destroy`,function(){URL.revokeObjectURL(r)})}),Cd.releaseReader(t)}return t()}),fd.live2DModelMiddlewares.unshift(wd.factory),!window.Live2DCubismCore)throw Error(`Could not find Cubism 4 runtime. This plugin requires live2dcubismcore.js to be loaded.`);var Td=class extends Lu{constructor(e,t){var n;super(e,t),this.queueManager=new wl,this.definitions=(n=e.expressions)??[],this.init()}isFinished(){return this.queueManager.isFinished()}getExpressionIndex(e){return this.definitions.findIndex(t=>t.Name===e)}getExpressionFile(e){return e.File}createExpression(e,t){return Zc.create(e)}_setExpression(e){return this.queueManager.startMotion(e,!1,performance.now())}stopAllExpressions(){this.queueManager.stopAllMotions()}updateParameters(e,t){return this.queueManager.doUpdateMotion(e,t)}},Ed=class e extends Hu{constructor(t){if(super(t),!e.isValidJSON(t))throw TypeError(`Invalid JSON.`);Object.assign(this,new xu(t))}static isValidJSON(e){var t;return!!e?.FileReferences&&typeof e.FileReferences.Moc==`string`&&(t=e.FileReferences.Textures)?.length>0&&e.FileReferences.Textures.every(e=>typeof e==`string`)}replaceFiles(e){if(super.replaceFiles(e),this.motions)for(let[t,n]of Object.entries(this.motions))for(let r=0;r{this.emit(`motion:`+t)})}isFinished(){return this.queueManager.isFinished()}_startMotion(e,t){return e.setFinishedMotionHandler(t),this.queueManager.stopAllMotions(),this.queueManager.startMotion(e,!1,performance.now())}_stopAllMotions(){this.queueManager.stopAllMotions()}createMotion(e,t,n){let r=Sl.create(e),i=new sl(e),a=(t===this.groups.idle?ju.idleMotionFadingDuration:ju.motionFadingDuration)/1e3;return i.getMotionFadeInTime()===void 0&&r.setFadeInTime(n.FadeInTime>0?n.FadeInTime:a),i.getMotionFadeOutTime()===void 0&&r.setFadeOutTime(n.FadeOutTime>0?n.FadeOutTime:a),r.setEffectIds(this.eyeBlinkIds,this.lipSyncIds),r}getMotionFile(e){return e.File}getMotionName(e){return e.File}getSoundFile(e){return e.Sound}updateParameters(e,t){return this.queueManager.doUpdateMotion(e,t)}destroy(){super.destroy(),this.queueManager.release(),this.queueManager=void 0}};const Od=new jc;var kd=class extends Xu{constructor(e,t,n){super(),this.lipSync=!0,this.breath=yc.create(),this.renderer=new bu,this.idParamAngleX=Su,this.idParamAngleY=Cu,this.idParamAngleZ=wu,this.idParamEyeBallX=Tu,this.idParamEyeBallY=Eu,this.idParamBodyAngleX=Du,this.idParamBreath=Ou,this.pixelsPerUnit=1,this.centeringTransform=new qi,this.coreModel=e,this.settings=t,this.motionManager=new Dd(t,n),this.init()}init(){var e;super.init(),(e=this.settings.getEyeBlinkParameters())?.length>0&&(this.eyeBlink=Sc.create(this.settings)),this.breath.setParameters([new bc(this.idParamAngleX,0,15,6.5345,.5),new bc(this.idParamAngleY,0,8,3.5345,.5),new bc(this.idParamAngleZ,0,10,5.5345,.5),new bc(this.idParamBodyAngleX,0,4,15.5345,.5),new bc(this.idParamBreath,0,.5,3.2345,.5)]),this.renderer.initialize(this.coreModel),this.renderer.setIsPremultipliedAlpha(!0)}getSize(){return[this.coreModel.getModel().canvasinfo.CanvasWidth,this.coreModel.getModel().canvasinfo.CanvasHeight]}getLayout(){let e={};if(this.settings.layout)for(let t of Object.keys(this.settings.layout)){let n=t.charAt(0).toLowerCase()+t.slice(1);e[n]=this.settings.layout[t]}return e}setupLayout(){super.setupLayout(),this.pixelsPerUnit=this.coreModel.getModel().canvasinfo.PixelsPerUnit,this.centeringTransform.scale(this.pixelsPerUnit,this.pixelsPerUnit).translate(this.originalWidth/2,this.originalHeight/2)}updateWebGLContext(e,t){this.renderer.firstDraw=!0,this.renderer._bufferData={vertex:null,uv:null,index:null},this.renderer.startUp(e),this.renderer._clippingManager._currentFrameNo=t,this.renderer._clippingManager._maskTexture=void 0,du.getInstance()._shaderSets=[]}bindTexture(e,t){this.renderer.bindTexture(e,t)}getHitAreaDefs(){var e,t;return(t=(e=this.settings.hitAreas)?.map(e=>({id:e.Id,name:e.Name,index:this.coreModel.getDrawableIndex(e.Id)})))??[]}getDrawableIDs(){return this.coreModel.getDrawableIds()}getDrawableIndex(e){return this.coreModel.getDrawableIndex(e)}getDrawableVertices(e){if(typeof e==`string`&&(e=this.coreModel.getDrawableIndex(e),e===-1))throw TypeError(`Unable to find drawable ID: `+e);let t=this.coreModel.getDrawableVertices(e).slice();for(let e=0;e{function n(){try{Nd(),e()}catch(e){if(jd--,jd<0){let n=Error(`Failed to start up Cubism 4 framework.`);n.cause=e,t(n);return}Mu.log(`Cubism4`,`Startup failed, retrying 10ms later...`),setTimeout(n,10)}}n()}),Ad)}function Nd(e){e=Object.assign({logFunction:console.log,loggingLevel:Bc.LogLevel_Verbose},e),zc.startUp(e),zc.initialize()}fd.registerRuntime({version:4,ready:Md,test(e){return e instanceof Ed||Ed.isValidJSON(e)},isValidMoc(e){if(e.byteLength<4)return!1;let t=new Int8Array(e,0,4);return String.fromCharCode(...t)===`MOC3`},createModelSettings(e){return new Ed(e)},createCoreModel(e){let t=Jc.create(e);try{let e=t.createModel();return e.__moc=t,e}catch(e){try{t.release()}catch{}throw e}},createInternalModel(e,t,n){let r=new kd(e,t,n),i=e;return i.__moc&&(r.__moc=i.__moc,delete i.__moc,r.once(`destroy`,Pd)),r},createPhysics(e,t){return Bl.create(t)},createPose(e,t){return Ec.create(t)}});function Pd(){var e;(e=this.__moc)==null||e.release()}var Fd=Xt({__name:`Canvas`,props:{width:{},height:{},resolution:{default:2}},setup(e,{expose:t}){let n=e,r=U(),i=U(),a=U();async function o(e){bd.registerTicker(Ni),ki.add(Pi),i.value=new gc({width:n.width*n.resolution,height:n.height*n.resolution,backgroundAlpha:0,preserveDrawingBuffer:!0}),a.value=i.value.view,a.value.style.width=`100%`,a.value.style.height=`100%`,a.value.style.objectFit=`cover`,a.value.style.display=`block`,e.appendChild(i.value.view)}function s(){i.value&&i.value.renderer.resize(n.width,n.height)}V([()=>n.width,()=>n.height],()=>s()),V(()=>n.resolution,e=>{i.value&&e&&(i.value.renderer.resolution=e,s())}),Jt(async()=>r.value&&await o(r.value)),mn(()=>i.value?.destroy());async function c(){let e=new Promise(e=>{if(!a.value||!i.value)return e(null);i.value.render(),a.value.toBlob(e)});return e}function l(){return a.value}return t({captureFrame:c,canvasElement:l}),(e,t)=>(H(),fn(`div`,{ref_key:`containerRef`,ref:r,"h-full":``,"w-full":``},[vn(e.$slots,`default`,{app:i.value})],512))}}),Id=Fd,Ld=kn((exports,t)=>{ +/*! +localForage -- Offline Storage, Improved +Version 1.10.0 +https://localforage.github.io/localForage +(c) 2013-2017 Mozilla, Apache License 2.0 +*/ +(function(n){if(typeof exports==`object`&&t!==void 0)t.exports=n();else if(typeof define==`function`&&define.amd)define([],n);else{var r;r=typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this,r.localforage=n()}})(function(){var e,t,n;return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof Mn==`function`&&Mn;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=Error(`Cannot find module '`+o+`'`);throw l.code=`MODULE_NOT_FOUND`,l}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return i(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var a=typeof Mn==`function`&&Mn,o=0;o`u`&&e(3);var l=Promise;function u(e,t){t&&e.then(function(e){t(null,e)},function(e){t(e)})}function d(e,t,n){typeof t==`function`&&e.then(t),typeof n==`function`&&e.catch(n)}function f(e){return typeof e!=`string`&&(console.warn(e+` used as a key, but it is not a string.`),e=String(e)),e}function p(){if(arguments.length&&typeof arguments[arguments.length-1]==`function`)return arguments[arguments.length-1]}var m=`local-forage-detect-blob-support`,h=void 0,g={},_=Object.prototype.toString,v=`readonly`,y=`readwrite`;function b(e){for(var t=e.length,n=new ArrayBuffer(t),r=new Uint8Array(n),i=0;i=43)}}).catch(function(){return!1})}function S(e){return typeof h==`boolean`?l.resolve(h):x(e).then(function(e){return h=e,h})}function C(e){var t=g[e.name],n={};n.promise=new l(function(e,t){n.resolve=e,n.reject=t}),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then(function(){return n.promise}):t.dbReady=n.promise}function w(e){var t=g[e.name],n=t.deferredOperations.pop();if(n)return n.resolve(),n.promise}function T(e,t){var n=g[e.name],r=n.deferredOperations.pop();if(r)return r.reject(t),r.promise}function E(e,t){return new l(function(n,r){if(g[e.name]=g[e.name]||F(),e.db)if(t)C(e),e.db.close();else return n(e.db);var i=[e.name];t&&i.push(e.version);var a=o.open.apply(o,i);t&&(a.onupgradeneeded=function(t){var n=a.result;try{n.createObjectStore(e.storeName),t.oldVersion<=1&&n.createObjectStore(m)}catch(n){if(n.name===`ConstraintError`)console.warn(`The database "`+e.name+`" has been upgraded from version `+t.oldVersion+` to version `+t.newVersion+`, but the storage "`+e.storeName+`" already exists.`);else throw n}}),a.onerror=function(e){e.preventDefault(),r(a.error)},a.onsuccess=function(){var t=a.result;t.onversionchange=function(e){e.target.close()},n(t),w(e)}})}function D(e){return E(e,!1)}function O(e){return E(e,!0)}function k(e,t){if(!e.db)return!0;var n=!e.db.objectStoreNames.contains(e.storeName),r=e.versione.db.version;if(r&&(e.version!==t&&console.warn(`The database "`+e.name+`" can't be downgraded from version `+e.db.version+` to version `+e.version+`.`),e.version=e.db.version),i||n){if(n){var a=e.db.version+1;a>e.version&&(e.version=a)}return!0}return!1}function A(e){return new l(function(t,n){var r=new FileReader;r.onerror=n,r.onloadend=function(n){var r=btoa(n.target.result||``);t({__local_forage_encoded_blob:!0,data:r,type:e.type})},r.readAsBinaryString(e)})}function j(e){var t=b(atob(e.data));return c([t],{type:e.type})}function M(e){return e&&e.__local_forage_encoded_blob}function N(e){var t=this,n=t._initReady().then(function(){var e=g[t._dbInfo.name];if(e&&e.dbReady)return e.dbReady});return d(n,e,e),n}function ee(e){C(e);for(var t=g[e.name],n=t.forages,r=0;r0&&(!e.db||i.name===`InvalidStateError`||i.name===`NotFoundError`))return l.resolve().then(function(){if(!e.db||i.name===`NotFoundError`&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),O(e)}).then(function(){return ee(e).then(function(){P(e,t,n,r-1)})}).catch(n);n(i)}}function F(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function I(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=e[r];var i=g[n.name];i||(i=F(),g[n.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=N);var a=[];function o(){return l.resolve()}for(var s=0;s>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l}function De(e){var t=new Uint8Array(e),n=``,r;for(r=0;r>2],n+=le[(t[r]&3)<<4|t[r+1]>>4],n+=le[(t[r+1]&15)<<2|t[r+2]>>6],n+=le[t[r+2]&63];return t.length%3==2?n=n.substring(0,n.length-1)+`=`:t.length%3==1&&(n=n.substring(0,n.length-2)+`==`),n}function Oe(e,t){var n=``;if(e&&(n=Te.call(e)),e&&(n===`[object ArrayBuffer]`||e.buffer&&Te.call(e.buffer)===`[object ArrayBuffer]`)){var r,i=fe;e instanceof ArrayBuffer?(r=e,i+=B):(r=e.buffer,n===`[object Int8Array]`?i+=he:n===`[object Uint8Array]`?i+=ge:n===`[object Uint8ClampedArray]`?i+=_e:n===`[object Int16Array]`?i+=ve:n===`[object Uint16Array]`?i+=be:n===`[object Int32Array]`?i+=ye:n===`[object Uint32Array]`?i+=xe:n===`[object Float32Array]`?i+=Se:n===`[object Float64Array]`?i+=Ce:t(Error(`Failed to get type for BinaryArray`))),t(i+De(r))}else if(n===`[object Blob]`){var a=new FileReader;a.onload=function(){var n=ue+e.type+`~`+De(this.result);t(fe+me+n)},a.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(n){console.error(`Couldn't convert value into a JSON string: `,e),t(null,n)}}function ke(e){if(e.substring(0,pe)!==fe)return JSON.parse(e);var t=e.substring(we),n=e.substring(pe,we),r;if(n===me&&de.test(t)){var i=t.match(de);r=i[1],t=t.substring(i[0].length)}var a=Ee(t);switch(n){case B:return a;case me:return c([a],{type:r});case he:return new Int8Array(a);case ge:return new Uint8Array(a);case _e:return new Uint8ClampedArray(a);case ve:return new Int16Array(a);case be:return new Uint16Array(a);case ye:return new Int32Array(a);case xe:return new Uint32Array(a);case Se:return new Float32Array(a);case Ce:return new Float64Array(a);default:throw Error(`Unkown type: `+n)}}var Ae={serialize:Oe,deserialize:ke,stringToBuffer:Ee,bufferToString:De};function je(e,t,n,r){e.executeSql(`CREATE TABLE IF NOT EXISTS `+t.storeName+` (id INTEGER PRIMARY KEY, key unique, value)`,[],n,r)}function Me(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=typeof e[r]==`string`?e[r]:e[r].toString();var i=new l(function(e,r){try{n.db=openDatabase(n.name,String(n.version),n.description,n.size)}catch(e){return r(e)}n.db.transaction(function(i){je(i,n,function(){t._dbInfo=n,e()},function(e,t){r(t)})},r)});return n.serializer=Ae,i}function Ne(e,t,n,r,i,a){e.executeSql(n,r,i,function(e,o){o.code===o.SYNTAX_ERR?e.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name = ?`,[t.storeName],function(e,s){s.rows.length?a(e,o):je(e,t,function(){e.executeSql(n,r,i,a)},a)},a):a(e,o)},a)}function Pe(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Ne(n,i,`SELECT * FROM `+i.storeName+` WHERE key = ? LIMIT 1`,[e],function(e,n){var r=n.rows.length?n.rows.item(0).value:null;r&&=i.serializer.deserialize(r),t(r)},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function Fe(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Ne(n,i,`SELECT * FROM `+i.storeName,[],function(n,r){for(var a=r.rows,o=a.length,s=0;s0){a(Ie.apply(i,[e,s,n,r-1]));return}o(t)}})})}).catch(o)});return u(a,n),a}function Le(e,t,n){return Ie.apply(this,[e,t,n,1])}function Re(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Ne(n,i,`DELETE FROM `+i.storeName+` WHERE key = ?`,[e],function(){t()},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function ze(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){Ne(t,r,`DELETE FROM `+r.storeName,[],function(){e()},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function Be(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){Ne(t,r,`SELECT COUNT(key) as c FROM `+r.storeName,[],function(t,n){var r=n.rows.item(0).c;e(r)},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function Ve(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){Ne(n,i,`SELECT key FROM `+i.storeName+` WHERE id = ? LIMIT 1`,[e+1],function(e,n){var r=n.rows.length?n.rows.item(0).key:null;t(r)},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function He(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){Ne(t,r,`SELECT key FROM `+r.storeName,[],function(t,n){for(var r=[],i=0;i '__WebKitDatabaseInfoTable__'`,[],function(n,r){for(var i=[],a=0;a0}function Xe(e){var t=this,n={};if(e)for(var r in e)n[r]=e[r];return n.keyPrefix=qe(e,t._defaultConfig),Ye()?(t._dbInfo=n,n.serializer=Ae,l.resolve()):l.reject()}function Ze(e){var t=this,n=t.ready().then(function(){for(var e=t._dbInfo.keyPrefix,n=localStorage.length-1;n>=0;n--){var r=localStorage.key(n);r.indexOf(e)===0&&localStorage.removeItem(r)}});return u(n,e),n}function Qe(e,t){var n=this;e=f(e);var r=n.ready().then(function(){var t=n._dbInfo,r=localStorage.getItem(t.keyPrefix+e);return r&&=t.serializer.deserialize(r),r});return u(r,t),r}function $e(e,t){var n=this,r=n.ready().then(function(){for(var t=n._dbInfo,r=t.keyPrefix,i=r.length,a=localStorage.length,o=1,s=0;s=0;t--){var n=localStorage.key(t);n.indexOf(e)===0&&localStorage.removeItem(n)}}):l.reject(`Invalid arguments`),u(i,t),i}var ot={_driver:`localStorageWrapper`,_initStorage:Xe,_support:Ke(),iterate:$e,getItem:Qe,setItem:it,removeItem:rt,clear:Ze,length:nt,key:et,keys:tt,dropInstance:at},st=function(e,t){return e===t||typeof e==`number`&&typeof t==`number`&&isNaN(e)&&isNaN(t)},ct=function(e,t){for(var n=e.length,r=0;r=0;f--){var p=d[f],m=this.recursiveFindHit(e,p,n,r,c);if(m){if(!p.parent)continue;c=!1,m&&(e.target&&(r=!1),s=!0)}}return i&&(r&&!e.target&&!t.hitArea&&t.containsPoint&&t.containsPoint(o)&&(s=!0),t.interactive&&(s&&!e.target&&(e.target=t),n&&n(e,t,!!s))),s},e.prototype.findHit=function(e,t,n,r){this.recursiveFindHit(e,t,n,r,!1)},e}(),Wd={interactive:!1,interactiveChildren:!0,hitArea:null,get buttonMode(){return this.cursor===`pointer`},set buttonMode(e){e?this.cursor=`pointer`:this.cursor===`pointer`&&(this.cursor=null)},cursor:null,get trackedPointers(){return this._trackedPointers===void 0&&(this._trackedPointers={}),this._trackedPointers},_trackedPointers:void 0};dc.mixin(Wd);var Gd=1,Kd={target:null,data:{global:null}},qd=function(e){Bd(t,e);function t(t,n){var r=e.call(this)||this;return n||={},r.renderer=t,r.autoPreventDefault=n.autoPreventDefault===void 0?!0:n.autoPreventDefault,r.interactionFrequency=n.interactionFrequency||10,r.mouse=new Rd,r.mouse.identifier=Gd,r.mouse.global.set(-999999),r.activeInteractionData={},r.activeInteractionData[Gd]=r.mouse,r.interactionDataPool=[],r.eventData=new Vd,r.interactionDOMElement=null,r.moveWhenInside=!1,r.eventsAdded=!1,r.tickerAdded=!1,r.mouseOverRenderer=!(`PointerEvent`in globalThis),r.supportsTouchEvents=`ontouchstart`in globalThis,r.supportsPointerEvents=!!globalThis.PointerEvent,r.onPointerUp=r.onPointerUp.bind(r),r.processPointerUp=r.processPointerUp.bind(r),r.onPointerCancel=r.onPointerCancel.bind(r),r.processPointerCancel=r.processPointerCancel.bind(r),r.onPointerDown=r.onPointerDown.bind(r),r.processPointerDown=r.processPointerDown.bind(r),r.onPointerMove=r.onPointerMove.bind(r),r.processPointerMove=r.processPointerMove.bind(r),r.onPointerOut=r.onPointerOut.bind(r),r.processPointerOverOut=r.processPointerOverOut.bind(r),r.onPointerOver=r.onPointerOver.bind(r),r.cursorStyles={default:`inherit`,pointer:`pointer`},r.currentCursorMode=null,r.cursor=null,r.resolution=1,r.delayedEvents=[],r.search=new Ud,r._tempDisplayObject=new fc,r._eventListenerOptions={capture:!0,passive:!1},r._useSystemTicker=n.useSystemTicker===void 0?!0:n.useSystemTicker,r.setTargetElement(r.renderer.view,r.renderer.resolution),r}return Object.defineProperty(t.prototype,`useSystemTicker`,{get:function(){return this._useSystemTicker},set:function(e){this._useSystemTicker=e,e?this.addTickerListener():this.removeTickerListener()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lastObjectRendered`,{get:function(){return this.renderer._lastObjectRendered||this._tempDisplayObject},enumerable:!1,configurable:!0}),t.prototype.hitTest=function(e,t){return Kd.target=null,Kd.data.global=e,t||=this.lastObjectRendered,this.processInteractive(Kd,t,null,!0),Kd.target},t.prototype.setTargetElement=function(e,t){t===void 0&&(t=1),this.removeTickerListener(),this.removeEvents(),this.interactionDOMElement=e,this.resolution=t,this.addEvents(),this.addTickerListener()},t.prototype.addTickerListener=function(){this.tickerAdded||!this.interactionDOMElement||!this._useSystemTicker||(Ni.system.add(this.tickerUpdate,this,ji.INTERACTION),this.tickerAdded=!0)},t.prototype.removeTickerListener=function(){this.tickerAdded&&(Ni.system.remove(this.tickerUpdate,this),this.tickerAdded=!1)},t.prototype.addEvents=function(){if(!(this.eventsAdded||!this.interactionDOMElement)){var e=this.interactionDOMElement.style;globalThis.navigator.msPointerEnabled?(e.msContentZooming=`none`,e.msTouchAction=`none`):this.supportsPointerEvents&&(e.touchAction=`none`),this.supportsPointerEvents?(globalThis.document.addEventListener(`pointermove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`pointerdown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`pointerleave`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`pointerover`,this.onPointerOver,this._eventListenerOptions),globalThis.addEventListener(`pointercancel`,this.onPointerCancel,this._eventListenerOptions),globalThis.addEventListener(`pointerup`,this.onPointerUp,this._eventListenerOptions)):(globalThis.document.addEventListener(`mousemove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`mousedown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`mouseout`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`mouseover`,this.onPointerOver,this._eventListenerOptions),globalThis.addEventListener(`mouseup`,this.onPointerUp,this._eventListenerOptions)),this.supportsTouchEvents&&(this.interactionDOMElement.addEventListener(`touchstart`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`touchcancel`,this.onPointerCancel,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`touchend`,this.onPointerUp,this._eventListenerOptions),this.interactionDOMElement.addEventListener(`touchmove`,this.onPointerMove,this._eventListenerOptions)),this.eventsAdded=!0}},t.prototype.removeEvents=function(){if(!(!this.eventsAdded||!this.interactionDOMElement)){var e=this.interactionDOMElement.style;globalThis.navigator.msPointerEnabled?(e.msContentZooming=``,e.msTouchAction=``):this.supportsPointerEvents&&(e.touchAction=``),this.supportsPointerEvents?(globalThis.document.removeEventListener(`pointermove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`pointerdown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`pointerleave`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`pointerover`,this.onPointerOver,this._eventListenerOptions),globalThis.removeEventListener(`pointercancel`,this.onPointerCancel,this._eventListenerOptions),globalThis.removeEventListener(`pointerup`,this.onPointerUp,this._eventListenerOptions)):(globalThis.document.removeEventListener(`mousemove`,this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`mousedown`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`mouseout`,this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`mouseover`,this.onPointerOver,this._eventListenerOptions),globalThis.removeEventListener(`mouseup`,this.onPointerUp,this._eventListenerOptions)),this.supportsTouchEvents&&(this.interactionDOMElement.removeEventListener(`touchstart`,this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`touchcancel`,this.onPointerCancel,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`touchend`,this.onPointerUp,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(`touchmove`,this.onPointerMove,this._eventListenerOptions)),this.interactionDOMElement=null,this.eventsAdded=!1}},t.prototype.tickerUpdate=function(e){this._deltaTime+=e,!(this._deltaTime0&&(a=e.composedPath()[0]);for(var o=a===this.interactionDOMElement?``:`outside`,s=0;s 0.0) { + c.rgb /= c.a; + + vec3 rgb = pow(c.rgb, vec3(1. / gamma)); + rgb = mix(vec3(.5), mix(vec3(dot(vec3(.2125, .7154, .0721), rgb)), rgb, saturation), contrast); + rgb.r *= red; + rgb.g *= green; + rgb.b *= blue; + c.rgb = rgb * brightness; + + c.rgb *= c.a; + } + + gl_FragColor = c * alpha; +} +`,Qd=function(e){Yd(t,e);function t(t){var n=e.call(this,Xd,Zd)||this;return n.gamma=1,n.saturation=1,n.contrast=1,n.brightness=1,n.red=1,n.green=1,n.blue=1,n.alpha=1,Object.assign(n,t),n}return t.prototype.apply=function(e,t,n,r){this.uniforms.gamma=Math.max(this.gamma,1e-4),this.uniforms.saturation=this.saturation,this.uniforms.contrast=this.contrast,this.uniforms.brightness=this.brightness,this.uniforms.red=this.red,this.uniforms.green=this.green,this.uniforms.blue=this.blue,this.uniforms.alpha=this.alpha,e.applyFilter(this,t,n,r)},t}(qo),$d=function(e,t){return $d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},$d(e,t)};function ef(e,t){$d(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var tf=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,nf=` +varying vec2 vTextureCoord; +uniform sampler2D uSampler; + +uniform vec2 uOffset; + +void main(void) +{ + vec4 color = vec4(0.0); + + // Sample top left pixel + color += texture2D(uSampler, vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y + uOffset.y)); + + // Sample top right pixel + color += texture2D(uSampler, vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y + uOffset.y)); + + // Sample bottom right pixel + color += texture2D(uSampler, vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y - uOffset.y)); + + // Sample bottom left pixel + color += texture2D(uSampler, vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y - uOffset.y)); + + // Average + color *= 0.25; + + gl_FragColor = color; +}`,rf=` +varying vec2 vTextureCoord; +uniform sampler2D uSampler; + +uniform vec2 uOffset; +uniform vec4 filterClamp; + +void main(void) +{ + vec4 color = vec4(0.0); + + // Sample top left pixel + color += texture2D(uSampler, clamp(vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y + uOffset.y), filterClamp.xy, filterClamp.zw)); + + // Sample top right pixel + color += texture2D(uSampler, clamp(vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y + uOffset.y), filterClamp.xy, filterClamp.zw)); + + // Sample bottom right pixel + color += texture2D(uSampler, clamp(vec2(vTextureCoord.x + uOffset.x, vTextureCoord.y - uOffset.y), filterClamp.xy, filterClamp.zw)); + + // Sample bottom left pixel + color += texture2D(uSampler, clamp(vec2(vTextureCoord.x - uOffset.x, vTextureCoord.y - uOffset.y), filterClamp.xy, filterClamp.zw)); + + // Average + color *= 0.25; + + gl_FragColor = color; +} +`,af=function(e){ef(t,e);function t(t,n,r){t===void 0&&(t=4),n===void 0&&(n=3),r===void 0&&(r=!1);var i=e.call(this,tf,r?rf:nf)||this;return i._kernels=[],i._blur=4,i._quality=3,i.uniforms.uOffset=new Float32Array(2),i._pixelSize=new zi,i.pixelSize=1,i._clamp=r,Array.isArray(t)?i.kernels=t:(i._blur=t,i.quality=n),i}return t.prototype.apply=function(e,t,n,r){var i=this._pixelSize.x/t._frame.width,a=this._pixelSize.y/t._frame.height,o;if(this._quality===1||this._blur===0)o=this._kernels[0]+.5,this.uniforms.uOffset[0]=o*i,this.uniforms.uOffset[1]=o*a,e.applyFilter(this,t,n,r);else{for(var s=e.getFilterTexture(),c=t,l=s,u=void 0,d=this._quality-1,f=0;f0)for(var r=e,i=e/t,a=1;a0?(this._kernels=e,this._quality=e.length,this._blur=Math.max.apply(Math,e)):(this._kernels=[0],this._quality=1)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`clamp`,{get:function(){return this._clamp},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`pixelSize`,{get:function(){return this._pixelSize},set:function(e){typeof e==`number`?(this._pixelSize.x=e,this._pixelSize.y=e):Array.isArray(e)?(this._pixelSize.x=e[0],this._pixelSize.y=e[1]):e instanceof zi?(this._pixelSize.x=e.x,this._pixelSize.y=e.y):(this._pixelSize.x=1,this._pixelSize.y=1)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`quality`,{get:function(){return this._quality},set:function(e){this._quality=Math.max(1,Math.round(e)),this._generateKernels()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`blur`,{get:function(){return this._blur},set:function(e){this._blur=e,this._generateKernels()},enumerable:!1,configurable:!0}),t}(qo),sf=function(e,t){return sf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},sf(e,t)};function cf(e,t){sf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var lf=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,uf=` +uniform sampler2D uSampler; +varying vec2 vTextureCoord; + +uniform float threshold; + +void main() { + vec4 color = texture2D(uSampler, vTextureCoord); + + // A simple & fast algorithm for getting brightness. + // It's inaccuracy , but good enought for this feature. + float _max = max(max(color.r, color.g), color.b); + float _min = min(min(color.r, color.g), color.b); + float brightness = (_max + _min) * 0.5; + + if(brightness > threshold) { + gl_FragColor = color; + } else { + gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); + } +} +`,df=function(e){cf(t,e);function t(t){t===void 0&&(t=.5);var n=e.call(this,lf,uf)||this;return n.threshold=t,n}return Object.defineProperty(t.prototype,`threshold`,{get:function(){return this.uniforms.threshold},set:function(e){this.uniforms.threshold=e},enumerable:!1,configurable:!0}),t}(qo),ff=`uniform sampler2D uSampler; +varying vec2 vTextureCoord; + +uniform sampler2D bloomTexture; +uniform float bloomScale; +uniform float brightness; + +void main() { + vec4 color = texture2D(uSampler, vTextureCoord); + color.rgb *= brightness; + vec4 bloomColor = vec4(texture2D(bloomTexture, vTextureCoord).rgb, 0.0); + bloomColor.rgb *= bloomScale; + gl_FragColor = color + bloomColor; +} +`,pf=function(e){cf(t,e);function t(n){var r=e.call(this,lf,ff)||this;r.bloomScale=1,r.brightness=1,r._resolution=Rr.FILTER_RESOLUTION,typeof n==`number`&&(n={threshold:n});var i=Object.assign(t.defaults,n);r.bloomScale=i.bloomScale,r.brightness=i.brightness;var a=i.kernels,o=i.blur,s=i.quality,c=i.pixelSize,l=i.resolution;return r._extractFilter=new df(i.threshold),r._extractFilter.resolution=l,r._blurFilter=a?new af(a):new af(o,s),r.pixelSize=c,r.resolution=l,r}return t.prototype.apply=function(e,t,n,r,i){var a=e.getFilterTexture();this._extractFilter.apply(e,t,a,1,i);var o=e.getFilterTexture();this._blurFilter.apply(e,a,o,1),this.uniforms.bloomScale=this.bloomScale,this.uniforms.brightness=this.brightness,this.uniforms.bloomTexture=o,e.applyFilter(this,t,n,r),e.returnFilterTexture(o),e.returnFilterTexture(a)},Object.defineProperty(t.prototype,`resolution`,{get:function(){return this._resolution},set:function(e){this._resolution=e,this._extractFilter&&(this._extractFilter.resolution=e),this._blurFilter&&(this._blurFilter.resolution=e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`threshold`,{get:function(){return this._extractFilter.threshold},set:function(e){this._extractFilter.threshold=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`kernels`,{get:function(){return this._blurFilter.kernels},set:function(e){this._blurFilter.kernels=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`blur`,{get:function(){return this._blurFilter.blur},set:function(e){this._blurFilter.blur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`quality`,{get:function(){return this._blurFilter.quality},set:function(e){this._blurFilter.quality=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`pixelSize`,{get:function(){return this._blurFilter.pixelSize},set:function(e){this._blurFilter.pixelSize=e},enumerable:!1,configurable:!0}),t.defaults={threshold:.5,bloomScale:1,brightness:1,kernels:null,blur:8,quality:4,pixelSize:1,resolution:Rr.FILTER_RESOLUTION},t}(qo),mf=function(e,t){return mf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},mf(e,t)};function hf(e,t){mf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var gf=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,_f=`varying vec2 vTextureCoord; + +uniform vec4 filterArea; +uniform float pixelSize; +uniform sampler2D uSampler; + +vec2 mapCoord( vec2 coord ) +{ + coord *= filterArea.xy; + coord += filterArea.zw; + + return coord; +} + +vec2 unmapCoord( vec2 coord ) +{ + coord -= filterArea.zw; + coord /= filterArea.xy; + + return coord; +} + +vec2 pixelate(vec2 coord, vec2 size) +{ + return floor( coord / size ) * size; +} + +vec2 getMod(vec2 coord, vec2 size) +{ + return mod( coord , size) / size; +} + +float character(float n, vec2 p) +{ + p = floor(p*vec2(4.0, -4.0) + 2.5); + + if (clamp(p.x, 0.0, 4.0) == p.x) + { + if (clamp(p.y, 0.0, 4.0) == p.y) + { + if (int(mod(n/exp2(p.x + 5.0*p.y), 2.0)) == 1) return 1.0; + } + } + return 0.0; +} + +void main() +{ + vec2 coord = mapCoord(vTextureCoord); + + // get the rounded color.. + vec2 pixCoord = pixelate(coord, vec2(pixelSize)); + pixCoord = unmapCoord(pixCoord); + + vec4 color = texture2D(uSampler, pixCoord); + + // determine the character to use + float gray = (color.r + color.g + color.b) / 3.0; + + float n = 65536.0; // . + if (gray > 0.2) n = 65600.0; // : + if (gray > 0.3) n = 332772.0; // * + if (gray > 0.4) n = 15255086.0; // o + if (gray > 0.5) n = 23385164.0; // & + if (gray > 0.6) n = 15252014.0; // 8 + if (gray > 0.7) n = 13199452.0; // @ + if (gray > 0.8) n = 11512810.0; // # + + // get the mod.. + vec2 modd = getMod(coord, vec2(pixelSize)); + + gl_FragColor = color * character( n, vec2(-1.0) + modd * 2.0); + +} +`,vf=function(e){hf(t,e);function t(t){t===void 0&&(t=8);var n=e.call(this,gf,_f)||this;return n.size=t,n}return Object.defineProperty(t.prototype,`size`,{get:function(){return this.uniforms.pixelSize},set:function(e){this.uniforms.pixelSize=e},enumerable:!1,configurable:!0}),t}(qo),yf=function(e,t){return yf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},yf(e,t)};function bf(e,t){yf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var xf=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Sf=`precision mediump float; + +varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform vec4 filterArea; + +uniform float transformX; +uniform float transformY; +uniform vec3 lightColor; +uniform float lightAlpha; +uniform vec3 shadowColor; +uniform float shadowAlpha; + +void main(void) { + vec2 transform = vec2(1.0 / filterArea) * vec2(transformX, transformY); + vec4 color = texture2D(uSampler, vTextureCoord); + float light = texture2D(uSampler, vTextureCoord - transform).a; + float shadow = texture2D(uSampler, vTextureCoord + transform).a; + + color.rgb = mix(color.rgb, lightColor, clamp((color.a - light) * lightAlpha, 0.0, 1.0)); + color.rgb = mix(color.rgb, shadowColor, clamp((color.a - shadow) * shadowAlpha, 0.0, 1.0)); + gl_FragColor = vec4(color.rgb * color.a, color.a); +} +`,Cf=function(e){bf(t,e);function t(t){var n=e.call(this,xf,Sf)||this;return n._thickness=2,n._angle=0,n.uniforms.lightColor=new Float32Array(3),n.uniforms.shadowColor=new Float32Array(3),Object.assign(n,{rotation:45,thickness:2,lightColor:16777215,lightAlpha:.7,shadowColor:0,shadowAlpha:.7},t),n.padding=1,n}return t.prototype._updateTransform=function(){this.uniforms.transformX=this._thickness*Math.cos(this._angle),this.uniforms.transformY=this._thickness*Math.sin(this._angle)},Object.defineProperty(t.prototype,`rotation`,{get:function(){return this._angle/Li},set:function(e){this._angle=e*Li,this._updateTransform()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`thickness`,{get:function(){return this._thickness},set:function(e){this._thickness=e,this._updateTransform()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lightColor`,{get:function(){return oi(this.uniforms.lightColor)},set:function(e){ii(e,this.uniforms.lightColor)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lightAlpha`,{get:function(){return this.uniforms.lightAlpha},set:function(e){this.uniforms.lightAlpha=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`shadowColor`,{get:function(){return oi(this.uniforms.shadowColor)},set:function(e){ii(e,this.uniforms.shadowColor)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`shadowAlpha`,{get:function(){return this.uniforms.shadowAlpha},set:function(e){this.uniforms.shadowAlpha=e},enumerable:!1,configurable:!0}),t}(qo),wf=function(e,t){return wf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},wf(e,t)};function Tf(e,t){wf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Ef=`varying vec2 vTextureCoord; + +uniform sampler2D uSampler; +uniform float uAlpha; + +void main(void) +{ + gl_FragColor = texture2D(uSampler, vTextureCoord) * uAlpha; +} +`,Df=function(e){Tf(t,e);function t(t){t===void 0&&(t=1);var n=e.call(this,Gs,Ef,{uAlpha:1})||this;return n.alpha=t,n}return Object.defineProperty(t.prototype,`alpha`,{get:function(){return this.uniforms.uAlpha},set:function(e){this.uniforms.uAlpha=e},enumerable:!1,configurable:!0}),t}(qo),Of=function(e,t){return Of=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},Of(e,t)};function kf(e,t){Of(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Af=` + attribute vec2 aVertexPosition; + + uniform mat3 projectionMatrix; + + uniform float strength; + + varying vec2 vBlurTexCoords[%size%]; + + uniform vec4 inputSize; + uniform vec4 outputFrame; + + vec4 filterVertexPosition( void ) + { + vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy; + + return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0); + } + + vec2 filterTextureCoord( void ) + { + return aVertexPosition * (outputFrame.zw * inputSize.zw); + } + + void main(void) + { + gl_Position = filterVertexPosition(); + + vec2 textureCoord = filterTextureCoord(); + %blur% + }`;function jf(e,t){var n=Math.ceil(e/2),r=Af,i=``,a;a=t?`vBlurTexCoords[%index%] = textureCoord + vec2(%sampleIndex% * strength, 0.0);`:`vBlurTexCoords[%index%] = textureCoord + vec2(0.0, %sampleIndex% * strength);`;for(var o=0;o=n&&(o=e-s-1),c=c.replace(`%value%`,t[o].toString()),i+=c,i+=` +`}return r=r.replace(`%blur%`,i),r=r.replace(`%size%`,e.toString()),r}var Ff=function(e){kf(t,e);function t(t,n,r,i,a){n===void 0&&(n=8),r===void 0&&(r=4),i===void 0&&(i=Rr.FILTER_RESOLUTION),a===void 0&&(a=5);var o=this,s=jf(a,t),c=Pf(a);return o=e.call(this,s,c)||this,o.horizontal=t,o.resolution=i,o._quality=0,o.quality=r,o.blur=n,o}return t.prototype.apply=function(e,t,n,r){if(n?this.horizontal?this.uniforms.strength=1/n.width*(n.width/t.width):this.uniforms.strength=1/n.height*(n.height/t.height):this.horizontal?this.uniforms.strength=1/e.renderer.width*(e.renderer.width/t.width):this.uniforms.strength=1/e.renderer.height*(e.renderer.height/t.height),this.uniforms.strength*=this.strength,this.uniforms.strength/=this.passes,this.passes===1)e.applyFilter(this,t,n,r);else{var i=e.getFilterTexture(),a=e.renderer,o=t,s=i;this.state.blend=!1,e.applyFilter(this,o,s,lr.CLEAR);for(var c=1;c 0.0) { + coord *= mix(1.0, smoothstep(0.0, radius / distance, percent), strength * 0.75); + } else { + coord *= mix(1.0, pow(percent, 1.0 + strength * 0.75) * radius / distance, 1.0 - percent); + } + } + coord += center * dimensions.xy; + coord /= filterArea.xy; + vec2 clampedCoord = clamp(coord, filterClamp.xy, filterClamp.zw); + vec4 color = texture2D(uSampler, clampedCoord); + if (coord != clampedCoord) { + color *= max(0.0, 1.0 - length(coord - clampedCoord)); + } + + gl_FragColor = color; +} +`,Wf=function(e){Vf(t,e);function t(n){var r=e.call(this,Hf,Uf)||this;return r.uniforms.dimensions=new Float32Array(2),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i=t.filterFrame,a=i.width,o=i.height;this.uniforms.dimensions[0]=a,this.uniforms.dimensions[1]=o,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.radius},set:function(e){this.uniforms.radius=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`strength`,{get:function(){return this.uniforms.strength},set:function(e){this.uniforms.strength=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.center},set:function(e){this.uniforms.center=e},enumerable:!1,configurable:!0}),t.defaults={center:[.5,.5],radius:100,strength:1},t}(qo),Gf=function(e,t){return Gf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Gf(e,t)};function Kf(e,t){Gf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var qf=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Jf=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform sampler2D colorMap; +uniform float _mix; +uniform float _size; +uniform float _sliceSize; +uniform float _slicePixelSize; +uniform float _sliceInnerSize; +void main() { + vec4 color = texture2D(uSampler, vTextureCoord.xy); + + vec4 adjusted; + if (color.a > 0.0) { + color.rgb /= color.a; + float innerWidth = _size - 1.0; + float zSlice0 = min(floor(color.b * innerWidth), innerWidth); + float zSlice1 = min(zSlice0 + 1.0, innerWidth); + float xOffset = _slicePixelSize * 0.5 + color.r * _sliceInnerSize; + float s0 = xOffset + (zSlice0 * _sliceSize); + float s1 = xOffset + (zSlice1 * _sliceSize); + float yOffset = _sliceSize * 0.5 + color.g * (1.0 - _sliceSize); + vec4 slice0Color = texture2D(colorMap, vec2(s0,yOffset)); + vec4 slice1Color = texture2D(colorMap, vec2(s1,yOffset)); + float zOffset = fract(color.b * innerWidth); + adjusted = mix(slice0Color, slice1Color, zOffset); + + color.rgb *= color.a; + } + gl_FragColor = vec4(mix(color, adjusted, _mix).rgb, color.a); + +}`,Yf=function(e){Kf(t,e);function t(t,n,r){n===void 0&&(n=!1),r===void 0&&(r=1);var i=e.call(this,qf,Jf)||this;return i.mix=1,i._size=0,i._sliceSize=0,i._slicePixelSize=0,i._sliceInnerSize=0,i._nearest=!1,i._scaleMode=null,i._colorMap=null,i._scaleMode=null,i.nearest=n,i.mix=r,i.colorMap=t,i}return t.prototype.apply=function(e,t,n,r){this.uniforms._mix=this.mix,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`colorSize`,{get:function(){return this._size},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`colorMap`,{get:function(){return this._colorMap},set:function(e){var t;e&&(e instanceof Aa||(e=Aa.from(e)),(t=e)?.baseTexture&&(e.baseTexture.scaleMode=this._scaleMode,e.baseTexture.mipmap=sr.OFF,this._size=e.height,this._sliceSize=1/this._size,this._slicePixelSize=this._sliceSize/this._size,this._sliceInnerSize=this._slicePixelSize*(this._size-1),this.uniforms._size=this._size,this.uniforms._sliceSize=this._sliceSize,this.uniforms._slicePixelSize=this._slicePixelSize,this.uniforms._sliceInnerSize=this._sliceInnerSize,this.uniforms.colorMap=e),this._colorMap=e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`nearest`,{get:function(){return this._nearest},set:function(e){this._nearest=e,this._scaleMode=e?ar.NEAREST:ar.LINEAR;var t=this._colorMap;t&&t.baseTexture&&(t.baseTexture._glTextures={},t.baseTexture.scaleMode=this._scaleMode,t.baseTexture.mipmap=sr.OFF,t._updateID++,t.baseTexture.emit(`update`,t.baseTexture))},enumerable:!1,configurable:!0}),t.prototype.updateColorMap=function(){var e=this._colorMap;e&&e.baseTexture&&(e._updateID++,e.baseTexture.emit(`update`,e.baseTexture),this.colorMap=e)},t.prototype.destroy=function(t){t===void 0&&(t=!1),this._colorMap&&this._colorMap.destroy(t),e.prototype.destroy.call(this)},t}(qo),Xf=function(e,t){return Xf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Xf(e,t)};function Zf(e,t){Xf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Qf=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,$f=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform vec3 color; +uniform float alpha; + +void main(void) { + vec4 currentColor = texture2D(uSampler, vTextureCoord); + gl_FragColor = vec4(mix(currentColor.rgb, color.rgb, currentColor.a * alpha), currentColor.a); +} +`,ep=function(e){Zf(t,e);function t(t,n){t===void 0&&(t=0),n===void 0&&(n=1);var r=e.call(this,Qf,$f)||this;return r._color=0,r._alpha=1,r.uniforms.color=new Float32Array(3),r.color=t,r.alpha=n,r}return Object.defineProperty(t.prototype,`color`,{get:function(){return this._color},set:function(e){var t=this.uniforms.color;typeof e==`number`?(ii(e,t),this._color=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._color=oi(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`alpha`,{get:function(){return this._alpha},set:function(e){this.uniforms.alpha=e,this._alpha=e},enumerable:!1,configurable:!0}),t}(qo),tp=function(e,t){return tp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},tp(e,t)};function np(e,t){tp(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var rp=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,ip=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform vec3 originalColor; +uniform vec3 newColor; +uniform float epsilon; +void main(void) { + vec4 currentColor = texture2D(uSampler, vTextureCoord); + vec3 colorDiff = originalColor - (currentColor.rgb / max(currentColor.a, 0.0000000001)); + float colorDistance = length(colorDiff); + float doReplace = step(colorDistance, epsilon); + gl_FragColor = vec4(mix(currentColor.rgb, (newColor + colorDiff) * currentColor.a, doReplace), currentColor.a); +} +`,ap=function(e){np(t,e);function t(t,n,r){t===void 0&&(t=16711680),n===void 0&&(n=0),r===void 0&&(r=.4);var i=e.call(this,rp,ip)||this;return i._originalColor=16711680,i._newColor=0,i.uniforms.originalColor=new Float32Array(3),i.uniforms.newColor=new Float32Array(3),i.originalColor=t,i.newColor=n,i.epsilon=r,i}return Object.defineProperty(t.prototype,`originalColor`,{get:function(){return this._originalColor},set:function(e){var t=this.uniforms.originalColor;typeof e==`number`?(ii(e,t),this._originalColor=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._originalColor=oi(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`newColor`,{get:function(){return this._newColor},set:function(e){var t=this.uniforms.newColor;typeof e==`number`?(ii(e,t),this._newColor=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],this._newColor=oi(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`epsilon`,{get:function(){return this.uniforms.epsilon},set:function(e){this.uniforms.epsilon=e},enumerable:!1,configurable:!0}),t}(qo),op=function(e,t){return op=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},op(e,t)};function sp(e,t){op(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var cp=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,lp=`precision mediump float; + +varying mediump vec2 vTextureCoord; + +uniform sampler2D uSampler; +uniform vec2 texelSize; +uniform float matrix[9]; + +void main(void) +{ + vec4 c11 = texture2D(uSampler, vTextureCoord - texelSize); // top left + vec4 c12 = texture2D(uSampler, vec2(vTextureCoord.x, vTextureCoord.y - texelSize.y)); // top center + vec4 c13 = texture2D(uSampler, vec2(vTextureCoord.x + texelSize.x, vTextureCoord.y - texelSize.y)); // top right + + vec4 c21 = texture2D(uSampler, vec2(vTextureCoord.x - texelSize.x, vTextureCoord.y)); // mid left + vec4 c22 = texture2D(uSampler, vTextureCoord); // mid center + vec4 c23 = texture2D(uSampler, vec2(vTextureCoord.x + texelSize.x, vTextureCoord.y)); // mid right + + vec4 c31 = texture2D(uSampler, vec2(vTextureCoord.x - texelSize.x, vTextureCoord.y + texelSize.y)); // bottom left + vec4 c32 = texture2D(uSampler, vec2(vTextureCoord.x, vTextureCoord.y + texelSize.y)); // bottom center + vec4 c33 = texture2D(uSampler, vTextureCoord + texelSize); // bottom right + + gl_FragColor = + c11 * matrix[0] + c12 * matrix[1] + c13 * matrix[2] + + c21 * matrix[3] + c22 * matrix[4] + c23 * matrix[5] + + c31 * matrix[6] + c32 * matrix[7] + c33 * matrix[8]; + + gl_FragColor.a = c22.a; +} +`,up=function(e){sp(t,e);function t(t,n,r){n===void 0&&(n=200),r===void 0&&(r=200);var i=e.call(this,cp,lp)||this;return i.uniforms.texelSize=new Float32Array(2),i.uniforms.matrix=new Float32Array(9),t!==void 0&&(i.matrix=t),i.width=n,i.height=r,i}return Object.defineProperty(t.prototype,`matrix`,{get:function(){return this.uniforms.matrix},set:function(e){var t=this;e.forEach(function(e,n){t.uniforms.matrix[n]=e})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`width`,{get:function(){return 1/this.uniforms.texelSize[0]},set:function(e){this.uniforms.texelSize[0]=1/e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`height`,{get:function(){return 1/this.uniforms.texelSize[1]},set:function(e){this.uniforms.texelSize[1]=1/e},enumerable:!1,configurable:!0}),t}(qo),dp=function(e,t){return dp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},dp(e,t)};function fp(e,t){dp(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var pp=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,mp=`precision mediump float; + +varying vec2 vTextureCoord; + +uniform sampler2D uSampler; + +void main(void) +{ + float lum = length(texture2D(uSampler, vTextureCoord.xy).rgb); + + gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0); + + if (lum < 1.00) + { + if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0) + { + gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + } + } + + if (lum < 0.75) + { + if (mod(gl_FragCoord.x - gl_FragCoord.y, 10.0) == 0.0) + { + gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + } + } + + if (lum < 0.50) + { + if (mod(gl_FragCoord.x + gl_FragCoord.y - 5.0, 10.0) == 0.0) + { + gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + } + } + + if (lum < 0.3) + { + if (mod(gl_FragCoord.x - gl_FragCoord.y - 5.0, 10.0) == 0.0) + { + gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + } + } +} +`,hp=function(e){fp(t,e);function t(){return e.call(this,pp,mp)||this}return t}(qo),gp=function(e,t){return gp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},gp(e,t)};function _p(e,t){gp(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var vp=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,yp=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; + +uniform vec4 filterArea; +uniform vec2 dimensions; + +const float SQRT_2 = 1.414213; + +const float light = 1.0; + +uniform float curvature; +uniform float lineWidth; +uniform float lineContrast; +uniform bool verticalLine; +uniform float noise; +uniform float noiseSize; + +uniform float vignetting; +uniform float vignettingAlpha; +uniform float vignettingBlur; + +uniform float seed; +uniform float time; + +float rand(vec2 co) { + return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453); +} + +void main(void) +{ + vec2 pixelCoord = vTextureCoord.xy * filterArea.xy; + vec2 dir = vec2(vTextureCoord.xy * filterArea.xy / dimensions - vec2(0.5, 0.5)); + + gl_FragColor = texture2D(uSampler, vTextureCoord); + vec3 rgb = gl_FragColor.rgb; + + if (noise > 0.0 && noiseSize > 0.0) + { + pixelCoord.x = floor(pixelCoord.x / noiseSize); + pixelCoord.y = floor(pixelCoord.y / noiseSize); + float _noise = rand(pixelCoord * noiseSize * seed) - 0.5; + rgb += _noise * noise; + } + + if (lineWidth > 0.0) + { + float _c = curvature > 0. ? curvature : 1.; + float k = curvature > 0. ?(length(dir * dir) * 0.25 * _c * _c + 0.935 * _c) : 1.; + vec2 uv = dir * k; + + float v = (verticalLine ? uv.x * dimensions.x : uv.y * dimensions.y) * min(1.0, 2.0 / lineWidth ) / _c; + float j = 1. + cos(v * 1.2 - time) * 0.5 * lineContrast; + rgb *= j; + float segment = verticalLine ? mod((dir.x + .5) * dimensions.x, 4.) : mod((dir.y + .5) * dimensions.y, 4.); + rgb *= 0.99 + ceil(segment) * 0.015; + } + + if (vignetting > 0.0) + { + float outter = SQRT_2 - vignetting * SQRT_2; + float darker = clamp((outter - length(dir) * SQRT_2) / ( 0.00001 + vignettingBlur * SQRT_2), 0.0, 1.0); + rgb *= darker + (1.0 - darker) * (1.0 - vignettingAlpha); + } + + gl_FragColor.rgb = rgb; +} +`,bp=function(e){_p(t,e);function t(n){var r=e.call(this,vp,yp)||this;return r.time=0,r.seed=0,r.uniforms.dimensions=new Float32Array(2),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i=t.filterFrame,a=i.width,o=i.height;this.uniforms.dimensions[0]=a,this.uniforms.dimensions[1]=o,this.uniforms.seed=this.seed,this.uniforms.time=this.time,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`curvature`,{get:function(){return this.uniforms.curvature},set:function(e){this.uniforms.curvature=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lineWidth`,{get:function(){return this.uniforms.lineWidth},set:function(e){this.uniforms.lineWidth=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lineContrast`,{get:function(){return this.uniforms.lineContrast},set:function(e){this.uniforms.lineContrast=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`verticalLine`,{get:function(){return this.uniforms.verticalLine},set:function(e){this.uniforms.verticalLine=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noise`,{get:function(){return this.uniforms.noise},set:function(e){this.uniforms.noise=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noiseSize`,{get:function(){return this.uniforms.noiseSize},set:function(e){this.uniforms.noiseSize=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignetting`,{get:function(){return this.uniforms.vignetting},set:function(e){this.uniforms.vignetting=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingAlpha`,{get:function(){return this.uniforms.vignettingAlpha},set:function(e){this.uniforms.vignettingAlpha=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingBlur`,{get:function(){return this.uniforms.vignettingBlur},set:function(e){this.uniforms.vignettingBlur=e},enumerable:!1,configurable:!0}),t.defaults={curvature:1,lineWidth:1,lineContrast:.25,verticalLine:!1,noise:0,noiseSize:1,seed:0,vignetting:.3,vignettingAlpha:1,vignettingBlur:.3,time:0},t}(qo),xp=function(e,t){return xp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},xp(e,t)};function Sp(e,t){xp(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Cp=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,wp=`precision mediump float; + +varying vec2 vTextureCoord; +varying vec4 vColor; + +uniform vec4 filterArea; +uniform sampler2D uSampler; + +uniform float angle; +uniform float scale; + +float pattern() +{ + float s = sin(angle), c = cos(angle); + vec2 tex = vTextureCoord * filterArea.xy; + vec2 point = vec2( + c * tex.x - s * tex.y, + s * tex.x + c * tex.y + ) * scale; + return (sin(point.x) * sin(point.y)) * 4.0; +} + +void main() +{ + vec4 color = texture2D(uSampler, vTextureCoord); + float average = (color.r + color.g + color.b) / 3.0; + gl_FragColor = vec4(vec3(average * 10.0 - 5.0 + pattern()), color.a); +} +`,Tp=function(e){Sp(t,e);function t(t,n){t===void 0&&(t=1),n===void 0&&(n=5);var r=e.call(this,Cp,wp)||this;return r.scale=t,r.angle=n,r}return Object.defineProperty(t.prototype,`scale`,{get:function(){return this.uniforms.scale},set:function(e){this.uniforms.scale=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`angle`,{get:function(){return this.uniforms.angle},set:function(e){this.uniforms.angle=e},enumerable:!1,configurable:!0}),t}(qo),Ep=function(e,t){return Ep=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Ep(e,t)};function Dp(e,t){Ep(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Op=function(){return Op=Object.assign||function(e){for(var t=arguments,n,r=1,i=arguments.length;r 1.0 || coord.y > 1.0) { + return; + } + + float cx = coord.x - 0.5; + float cy = (coord.y - 0.5) * aspect; + float ny = (-sinDir * cx + cosDir * cy) / aspect + 0.5; + + // displacementMap: repeat + // ny = ny > 1.0 ? ny - 1.0 : (ny < 0.0 ? 1.0 + ny : ny); + + // displacementMap: mirror + ny = ny > 1.0 ? 2.0 - ny : (ny < 0.0 ? -ny : ny); + + vec4 dc = texture2D(displacementMap, vec2(0.5, ny)); + + float displacement = (dc.r - dc.g) * (offset / filterArea.x); + + coord = vTextureCoord + vec2(cosDir * displacement, sinDir * displacement * aspect); + + if (fillMode == CLAMP) { + coord = clamp(coord, filterClamp.xy, filterClamp.zw); + } else { + if( coord.x > filterClamp.z ) { + if (fillMode == TRANSPARENT) { + discard; + } else if (fillMode == LOOP) { + coord.x -= filterClamp.z; + } else if (fillMode == MIRROR) { + coord.x = filterClamp.z * 2.0 - coord.x; + } + } else if( coord.x < filterClamp.x ) { + if (fillMode == TRANSPARENT) { + discard; + } else if (fillMode == LOOP) { + coord.x += filterClamp.z; + } else if (fillMode == MIRROR) { + coord.x *= -filterClamp.z; + } + } + + if( coord.y > filterClamp.w ) { + if (fillMode == TRANSPARENT) { + discard; + } else if (fillMode == LOOP) { + coord.y -= filterClamp.w; + } else if (fillMode == MIRROR) { + coord.y = filterClamp.w * 2.0 - coord.y; + } + } else if( coord.y < filterClamp.y ) { + if (fillMode == TRANSPARENT) { + discard; + } else if (fillMode == LOOP) { + coord.y += filterClamp.w; + } else if (fillMode == MIRROR) { + coord.y *= -filterClamp.w; + } + } + } + + gl_FragColor.r = texture2D(uSampler, coord + red * (1.0 - seed * 0.4) / filterArea.xy).r; + gl_FragColor.g = texture2D(uSampler, coord + green * (1.0 - seed * 0.3) / filterArea.xy).g; + gl_FragColor.b = texture2D(uSampler, coord + blue * (1.0 - seed * 0.2) / filterArea.xy).b; + gl_FragColor.a = texture2D(uSampler, coord).a; +} +`,Vp=function(e){Rp(t,e);function t(n){var r=e.call(this,zp,Bp)||this;return r.offset=100,r.fillMode=t.TRANSPARENT,r.average=!1,r.seed=0,r.minSize=8,r.sampleSize=512,r._slices=0,r._offsets=new Float32Array(1),r._sizes=new Float32Array(1),r._direction=-1,r.uniforms.dimensions=new Float32Array(2),r._canvas=document.createElement(`canvas`),r._canvas.width=4,r._canvas.height=r.sampleSize,r.texture=Aa.from(r._canvas,{scaleMode:ar.NEAREST}),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i=t.filterFrame,a=i.width,o=i.height;this.uniforms.dimensions[0]=a,this.uniforms.dimensions[1]=o,this.uniforms.aspect=o/a,this.uniforms.seed=this.seed,this.uniforms.offset=this.offset,this.uniforms.fillMode=this.fillMode,e.applyFilter(this,t,n,r)},t.prototype._randomizeSizes=function(){var e=this._sizes,t=this._slices-1,n=this.sampleSize,r=Math.min(this.minSize/n,.9/this._slices);if(this.average){for(var i=this._slices,a=1,o=0;o0;n--){var r=Math.random()*n>>0,i=e[n];e[n]=e[r],e[r]=i}},t.prototype._randomizeOffsets=function(){for(var e=0;e0?r:0,c=r<0?-r:0;n.fillStyle=`rgba(`+s+`, `+c+`, 0, 1)`,n.fillRect(0,i>>0,e,o+1>>0),i+=o}t.baseTexture.update(),this.uniforms.displacementMap=t},Object.defineProperty(t.prototype,`sizes`,{get:function(){return this._sizes},set:function(e){for(var t=Math.min(this._slices,e.length),n=0;n>0)+1},Object.defineProperty(t.prototype,`offset`,{get:function(){return this.uniforms.uOffset},set:function(e){this.uniforms.uOffset=e},enumerable:!1,configurable:!0}),t}(qo),im=function(e,t){return im=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},im(e,t)};function am(e,t){im(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var om=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,sm=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; + +uniform float epsilon; + +const int MAX_COLORS = %maxColors%; + +uniform vec3 originalColors[MAX_COLORS]; +uniform vec3 targetColors[MAX_COLORS]; + +void main(void) +{ + gl_FragColor = texture2D(uSampler, vTextureCoord); + + float alpha = gl_FragColor.a; + if (alpha < 0.0001) + { + return; + } + + vec3 color = gl_FragColor.rgb / alpha; + + for(int i = 0; i < MAX_COLORS; i++) + { + vec3 origColor = originalColors[i]; + if (origColor.r < 0.0) + { + break; + } + vec3 colorDiff = origColor - color; + if (length(colorDiff) < epsilon) + { + vec3 targetColor = targetColors[i]; + gl_FragColor = vec4((targetColor + colorDiff) * alpha, alpha); + return; + } + } +} +`,cm=function(e){am(t,e);function t(t,n,r){n===void 0&&(n=.05),r===void 0&&(r=t.length);var i=e.call(this,om,sm.replace(/%maxColors%/g,r.toFixed(0)))||this;return i._replacements=[],i._maxColors=0,i.epsilon=n,i._maxColors=r,i.uniforms.originalColors=new Float32Array(r*3),i.uniforms.targetColors=new Float32Array(r*3),i.replacements=t,i}return Object.defineProperty(t.prototype,`replacements`,{get:function(){return this._replacements},set:function(e){var t=this.uniforms.originalColors,n=this.uniforms.targetColors,r=e.length;if(r>this._maxColors)throw Error(`Length of replacements (`+r+`) exceeds the maximum colors length (`+this._maxColors+`)`);t[r*3]=-1;for(var i=0;i 0.5) then: 1 - 2 * (1 - dst) * (1 - src) + return vec3((dst.x <= 0.5) ? (2.0 * src.x * dst.x) : (1.0 - 2.0 * (1.0 - dst.x) * (1.0 - src.x)), + (dst.y <= 0.5) ? (2.0 * src.y * dst.y) : (1.0 - 2.0 * (1.0 - dst.y) * (1.0 - src.y)), + (dst.z <= 0.5) ? (2.0 * src.z * dst.z) : (1.0 - 2.0 * (1.0 - dst.z) * (1.0 - src.z))); +} + + +void main() +{ + gl_FragColor = texture2D(uSampler, vTextureCoord); + vec3 color = gl_FragColor.rgb; + + if (sepia > 0.0) + { + float gray = (color.x + color.y + color.z) / 3.0; + vec3 grayscale = vec3(gray); + + color = Overlay(SEPIA_RGB, grayscale); + + color = grayscale + sepia * (color - grayscale); + } + + vec2 coord = vTextureCoord * filterArea.xy / dimensions.xy; + + if (vignetting > 0.0) + { + float outter = SQRT_2 - vignetting * SQRT_2; + vec2 dir = vec2(vec2(0.5, 0.5) - coord); + dir.y *= dimensions.y / dimensions.x; + float darker = clamp((outter - length(dir) * SQRT_2) / ( 0.00001 + vignettingBlur * SQRT_2), 0.0, 1.0); + color.rgb *= darker + (1.0 - darker) * (1.0 - vignettingAlpha); + } + + if (scratchDensity > seed && scratch != 0.0) + { + float phase = seed * 256.0; + float s = mod(floor(phase), 2.0); + float dist = 1.0 / scratchDensity; + float d = distance(coord, vec2(seed * dist, abs(s - seed * dist))); + if (d < seed * 0.6 + 0.4) + { + highp float period = scratchDensity * 10.0; + + float xx = coord.x * period + phase; + float aa = abs(mod(xx, 0.5) * 4.0); + float bb = mod(floor(xx / 0.5), 2.0); + float yy = (1.0 - bb) * aa + bb * (2.0 - aa); + + float kk = 2.0 * period; + float dw = scratchWidth / dimensions.x * (0.75 + seed); + float dh = dw * kk; + + float tine = (yy - (2.0 - dh)); + + if (tine > 0.0) { + float _sign = sign(scratch); + + tine = s * tine / period + scratch + 0.1; + tine = clamp(tine + 1.0, 0.5 + _sign * 0.5, 1.5 + _sign * 0.5); + + color.rgb *= tine; + } + } + } + + if (noise > 0.0 && noiseSize > 0.0) + { + vec2 pixelCoord = vTextureCoord.xy * filterArea.xy; + pixelCoord.x = floor(pixelCoord.x / noiseSize); + pixelCoord.y = floor(pixelCoord.y / noiseSize); + // vec2 d = pixelCoord * noiseSize * vec2(1024.0 + seed * 512.0, 1024.0 - seed * 512.0); + // float _noise = snoise(d) * 0.5; + float _noise = rand(pixelCoord * noiseSize * seed) - 0.5; + color += _noise * noise; + } + + gl_FragColor.rgb = color; +} +`,pm=function(e){um(t,e);function t(n,r){r===void 0&&(r=0);var i=e.call(this,dm,fm)||this;return i.seed=0,i.uniforms.dimensions=new Float32Array(2),typeof n==`number`?(i.seed=n,n=void 0):i.seed=r,Object.assign(i,t.defaults,n),i}return t.prototype.apply=function(e,t,n,r){var i,a;this.uniforms.dimensions[0]=(i=t.filterFrame)?.width,this.uniforms.dimensions[1]=(a=t.filterFrame)?.height,this.uniforms.seed=this.seed,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`sepia`,{get:function(){return this.uniforms.sepia},set:function(e){this.uniforms.sepia=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noise`,{get:function(){return this.uniforms.noise},set:function(e){this.uniforms.noise=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`noiseSize`,{get:function(){return this.uniforms.noiseSize},set:function(e){this.uniforms.noiseSize=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scratch`,{get:function(){return this.uniforms.scratch},set:function(e){this.uniforms.scratch=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scratchDensity`,{get:function(){return this.uniforms.scratchDensity},set:function(e){this.uniforms.scratchDensity=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scratchWidth`,{get:function(){return this.uniforms.scratchWidth},set:function(e){this.uniforms.scratchWidth=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignetting`,{get:function(){return this.uniforms.vignetting},set:function(e){this.uniforms.vignetting=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingAlpha`,{get:function(){return this.uniforms.vignettingAlpha},set:function(e){this.uniforms.vignettingAlpha=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`vignettingBlur`,{get:function(){return this.uniforms.vignettingBlur},set:function(e){this.uniforms.vignettingBlur=e},enumerable:!1,configurable:!0}),t.defaults={sepia:.3,noise:.3,noiseSize:1,scratch:.5,scratchDensity:.3,scratchWidth:1,vignetting:.3,vignettingAlpha:1,vignettingBlur:.3},t}(qo),mm=function(e,t){return mm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},mm(e,t)};function hm(e,t){mm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var gm=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,_m=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; + +uniform vec2 thickness; +uniform vec4 outlineColor; +uniform vec4 filterClamp; + +const float DOUBLE_PI = 3.14159265358979323846264 * 2.; + +void main(void) { + vec4 ownColor = texture2D(uSampler, vTextureCoord); + vec4 curColor; + float maxAlpha = 0.; + vec2 displaced; + for (float angle = 0.; angle <= DOUBLE_PI; angle += \${angleStep}) { + displaced.x = vTextureCoord.x + thickness.x * cos(angle); + displaced.y = vTextureCoord.y + thickness.y * sin(angle); + curColor = texture2D(uSampler, clamp(displaced, filterClamp.xy, filterClamp.zw)); + maxAlpha = max(maxAlpha, curColor.a); + } + float resultAlpha = max(maxAlpha, ownColor.a); + gl_FragColor = vec4((ownColor.rgb + outlineColor.rgb * (1. - ownColor.a)) * resultAlpha, resultAlpha); +} +`,vm=function(e){hm(t,e);function t(n,r,i){n===void 0&&(n=1),r===void 0&&(r=0),i===void 0&&(i=.1);var a=e.call(this,gm,_m.replace(/\$\{angleStep\}/,t.getAngleStep(i)))||this;return a._thickness=1,a.uniforms.thickness=new Float32Array([0,0]),a.uniforms.outlineColor=new Float32Array([0,0,0,1]),Object.assign(a,{thickness:n,color:r,quality:i}),a}return t.getAngleStep=function(e){var n=Math.max(e*t.MAX_SAMPLES,t.MIN_SAMPLES);return(Math.PI*2/n).toFixed(7)},t.prototype.apply=function(e,t,n,r){this.uniforms.thickness[0]=this._thickness/t._frame.width,this.uniforms.thickness[1]=this._thickness/t._frame.height,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`color`,{get:function(){return oi(this.uniforms.outlineColor)},set:function(e){ii(e,this.uniforms.outlineColor)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`thickness`,{get:function(){return this._thickness},set:function(e){this._thickness=e,this.padding=e},enumerable:!1,configurable:!0}),t.MIN_SAMPLES=1,t.MAX_SAMPLES=100,t}(qo),ym=function(e,t){return ym=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},ym(e,t)};function bm(e,t){ym(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var xm=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Sm=`precision mediump float; + +varying vec2 vTextureCoord; + +uniform vec2 size; +uniform sampler2D uSampler; + +uniform vec4 filterArea; + +vec2 mapCoord( vec2 coord ) +{ + coord *= filterArea.xy; + coord += filterArea.zw; + + return coord; +} + +vec2 unmapCoord( vec2 coord ) +{ + coord -= filterArea.zw; + coord /= filterArea.xy; + + return coord; +} + +vec2 pixelate(vec2 coord, vec2 size) +{ + return floor( coord / size ) * size; +} + +void main(void) +{ + vec2 coord = mapCoord(vTextureCoord); + + coord = pixelate(coord, size); + + coord = unmapCoord(coord); + + gl_FragColor = texture2D(uSampler, coord); +} +`,Cm=function(e){bm(t,e);function t(t){t===void 0&&(t=10);var n=e.call(this,xm,Sm)||this;return n.size=t,n}return Object.defineProperty(t.prototype,`size`,{get:function(){return this.uniforms.size},set:function(e){typeof e==`number`&&(e=[e,e]),this.uniforms.size=e},enumerable:!1,configurable:!0}),t}(qo),wm=function(e,t){return wm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},wm(e,t)};function Tm(e,t){wm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Em=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Dm=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform vec4 filterArea; + +uniform float uRadian; +uniform vec2 uCenter; +uniform float uRadius; +uniform int uKernelSize; + +const int MAX_KERNEL_SIZE = 2048; + +void main(void) +{ + vec4 color = texture2D(uSampler, vTextureCoord); + + if (uKernelSize == 0) + { + gl_FragColor = color; + return; + } + + float aspect = filterArea.y / filterArea.x; + vec2 center = uCenter.xy / filterArea.xy; + float gradient = uRadius / filterArea.x * 0.3; + float radius = uRadius / filterArea.x - gradient * 0.5; + int k = uKernelSize - 1; + + vec2 coord = vTextureCoord; + vec2 dir = vec2(center - coord); + float dist = length(vec2(dir.x, dir.y * aspect)); + + float radianStep = uRadian; + if (radius >= 0.0 && dist > radius) { + float delta = dist - radius; + float gap = gradient; + float scale = 1.0 - abs(delta / gap); + if (scale <= 0.0) { + gl_FragColor = color; + return; + } + radianStep *= scale; + } + radianStep /= float(k); + + float s = sin(radianStep); + float c = cos(radianStep); + mat2 rotationMatrix = mat2(vec2(c, -s), vec2(s, c)); + + for(int i = 0; i < MAX_KERNEL_SIZE - 1; i++) { + if (i == k) { + break; + } + + coord -= center; + coord.y *= aspect; + coord = rotationMatrix * coord; + coord.y /= aspect; + coord += center; + + vec4 sample = texture2D(uSampler, coord); + + // switch to pre-multiplied alpha to correctly blur transparent images + // sample.rgb *= sample.a; + + color += sample; + } + + gl_FragColor = color / float(uKernelSize); +} +`,Om=function(e){Tm(t,e);function t(t,n,r,i){t===void 0&&(t=0),n===void 0&&(n=[0,0]),r===void 0&&(r=5),i===void 0&&(i=-1);var a=e.call(this,Em,Dm)||this;return a._angle=0,a.angle=t,a.center=n,a.kernelSize=r,a.radius=i,a}return t.prototype.apply=function(e,t,n,r){this.uniforms.uKernelSize=this._angle===0?0:this.kernelSize,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`angle`,{get:function(){return this._angle},set:function(e){this._angle=e,this.uniforms.uRadian=e*Math.PI/180},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.uCenter},set:function(e){this.uniforms.uCenter=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.uRadius},set:function(e){(e<0||e===1/0)&&(e=-1),this.uniforms.uRadius=e},enumerable:!1,configurable:!0}),t}(qo),km=function(e,t){return km=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},km(e,t)};function Am(e,t){km(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var jm=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Mm=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; + +uniform vec4 filterArea; +uniform vec4 filterClamp; +uniform vec2 dimensions; + +uniform bool mirror; +uniform float boundary; +uniform vec2 amplitude; +uniform vec2 waveLength; +uniform vec2 alpha; +uniform float time; + +float rand(vec2 co) { + return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453); +} + +void main(void) +{ + vec2 pixelCoord = vTextureCoord.xy * filterArea.xy; + vec2 coord = pixelCoord / dimensions; + + if (coord.y < boundary) { + gl_FragColor = texture2D(uSampler, vTextureCoord); + return; + } + + float k = (coord.y - boundary) / (1. - boundary + 0.0001); + float areaY = boundary * dimensions.y / filterArea.y; + float v = areaY + areaY - vTextureCoord.y; + float y = mirror ? v : vTextureCoord.y; + + float _amplitude = ((amplitude.y - amplitude.x) * k + amplitude.x ) / filterArea.x; + float _waveLength = ((waveLength.y - waveLength.x) * k + waveLength.x) / filterArea.y; + float _alpha = (alpha.y - alpha.x) * k + alpha.x; + + float x = vTextureCoord.x + cos(v * 6.28 / _waveLength - time) * _amplitude; + x = clamp(x, filterClamp.x, filterClamp.z); + + vec4 color = texture2D(uSampler, vec2(x, y)); + + gl_FragColor = color * _alpha; +} +`,Nm=function(e){Am(t,e);function t(n){var r=e.call(this,jm,Mm)||this;return r.time=0,r.uniforms.amplitude=new Float32Array(2),r.uniforms.waveLength=new Float32Array(2),r.uniforms.alpha=new Float32Array(2),r.uniforms.dimensions=new Float32Array(2),Object.assign(r,t.defaults,n),r}return t.prototype.apply=function(e,t,n,r){var i,a;this.uniforms.dimensions[0]=(i=t.filterFrame)?.width,this.uniforms.dimensions[1]=(a=t.filterFrame)?.height,this.uniforms.time=this.time,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`mirror`,{get:function(){return this.uniforms.mirror},set:function(e){this.uniforms.mirror=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`boundary`,{get:function(){return this.uniforms.boundary},set:function(e){this.uniforms.boundary=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`amplitude`,{get:function(){return this.uniforms.amplitude},set:function(e){this.uniforms.amplitude[0]=e[0],this.uniforms.amplitude[1]=e[1]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`waveLength`,{get:function(){return this.uniforms.waveLength},set:function(e){this.uniforms.waveLength[0]=e[0],this.uniforms.waveLength[1]=e[1]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`alpha`,{get:function(){return this.uniforms.alpha},set:function(e){this.uniforms.alpha[0]=e[0],this.uniforms.alpha[1]=e[1]},enumerable:!1,configurable:!0}),t.defaults={mirror:!0,boundary:.5,amplitude:[0,20],waveLength:[30,100],alpha:[1,1],time:0},t}(qo),Pm=function(e,t){return Pm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Pm(e,t)};function Fm(e,t){Pm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Im=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Lm=`precision mediump float; + +varying vec2 vTextureCoord; + +uniform sampler2D uSampler; +uniform vec4 filterArea; +uniform vec2 red; +uniform vec2 green; +uniform vec2 blue; + +void main(void) +{ + gl_FragColor.r = texture2D(uSampler, vTextureCoord + red/filterArea.xy).r; + gl_FragColor.g = texture2D(uSampler, vTextureCoord + green/filterArea.xy).g; + gl_FragColor.b = texture2D(uSampler, vTextureCoord + blue/filterArea.xy).b; + gl_FragColor.a = texture2D(uSampler, vTextureCoord).a; +} +`,Rm=function(e){Fm(t,e);function t(t,n,r){t===void 0&&(t=[-10,0]),n===void 0&&(n=[0,10]),r===void 0&&(r=[0,0]);var i=e.call(this,Im,Lm)||this;return i.red=t,i.green=n,i.blue=r,i}return Object.defineProperty(t.prototype,`red`,{get:function(){return this.uniforms.red},set:function(e){this.uniforms.red=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`green`,{get:function(){return this.uniforms.green},set:function(e){this.uniforms.green=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`blue`,{get:function(){return this.uniforms.blue},set:function(e){this.uniforms.blue=e},enumerable:!1,configurable:!0}),t}(qo),zm=function(e,t){return zm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},zm(e,t)};function Bm(e,t){zm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Vm=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Hm=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform vec4 filterArea; +uniform vec4 filterClamp; + +uniform vec2 center; + +uniform float amplitude; +uniform float wavelength; +// uniform float power; +uniform float brightness; +uniform float speed; +uniform float radius; + +uniform float time; + +const float PI = 3.14159; + +void main() +{ + float halfWavelength = wavelength * 0.5 / filterArea.x; + float maxRadius = radius / filterArea.x; + float currentRadius = time * speed / filterArea.x; + + float fade = 1.0; + + if (maxRadius > 0.0) { + if (currentRadius > maxRadius) { + gl_FragColor = texture2D(uSampler, vTextureCoord); + return; + } + fade = 1.0 - pow(currentRadius / maxRadius, 2.0); + } + + vec2 dir = vec2(vTextureCoord - center / filterArea.xy); + dir.y *= filterArea.y / filterArea.x; + float dist = length(dir); + + if (dist <= 0.0 || dist < currentRadius - halfWavelength || dist > currentRadius + halfWavelength) { + gl_FragColor = texture2D(uSampler, vTextureCoord); + return; + } + + vec2 diffUV = normalize(dir); + + float diff = (dist - currentRadius) / halfWavelength; + + float p = 1.0 - pow(abs(diff), 2.0); + + // float powDiff = diff * pow(p, 2.0) * ( amplitude * fade ); + float powDiff = 1.25 * sin(diff * PI) * p * ( amplitude * fade ); + + vec2 offset = diffUV * powDiff / filterArea.xy; + + // Do clamp : + vec2 coord = vTextureCoord + offset; + vec2 clampedCoord = clamp(coord, filterClamp.xy, filterClamp.zw); + vec4 color = texture2D(uSampler, clampedCoord); + if (coord != clampedCoord) { + color *= max(0.0, 1.0 - length(coord - clampedCoord)); + } + + // No clamp : + // gl_FragColor = texture2D(uSampler, vTextureCoord + offset); + + color.rgb *= 1.0 + (brightness - 1.0) * p * fade; + + gl_FragColor = color; +} +`,Um=function(e){Bm(t,e);function t(n,r,i){n===void 0&&(n=[0,0]),i===void 0&&(i=0);var a=e.call(this,Vm,Hm)||this;return a.center=n,Object.assign(a,t.defaults,r),a.time=i,a}return t.prototype.apply=function(e,t,n,r){this.uniforms.time=this.time,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.center},set:function(e){this.uniforms.center=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`amplitude`,{get:function(){return this.uniforms.amplitude},set:function(e){this.uniforms.amplitude=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`wavelength`,{get:function(){return this.uniforms.wavelength},set:function(e){this.uniforms.wavelength=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`brightness`,{get:function(){return this.uniforms.brightness},set:function(e){this.uniforms.brightness=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`speed`,{get:function(){return this.uniforms.speed},set:function(e){this.uniforms.speed=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.radius},set:function(e){this.uniforms.radius=e},enumerable:!1,configurable:!0}),t.defaults={amplitude:30,wavelength:160,brightness:1,speed:500,radius:-1},t}(qo),Wm=function(e,t){return Wm=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Wm(e,t)};function Gm(e,t){Wm(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Km=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,qm=`varying vec2 vTextureCoord; +uniform sampler2D uSampler; +uniform sampler2D uLightmap; +uniform vec4 filterArea; +uniform vec2 dimensions; +uniform vec4 ambientColor; +void main() { + vec4 diffuseColor = texture2D(uSampler, vTextureCoord); + vec2 lightCoord = (vTextureCoord * filterArea.xy) / dimensions; + vec4 light = texture2D(uLightmap, lightCoord); + vec3 ambient = ambientColor.rgb * ambientColor.a; + vec3 intensity = ambient + light.rgb; + vec3 finalColor = diffuseColor.rgb * intensity; + gl_FragColor = vec4(finalColor, diffuseColor.a); +} +`,Jm=function(e){Gm(t,e);function t(t,n,r){n===void 0&&(n=0),r===void 0&&(r=1);var i=e.call(this,Km,qm)||this;return i._color=0,i.uniforms.dimensions=new Float32Array(2),i.uniforms.ambientColor=new Float32Array([0,0,0,r]),i.texture=t,i.color=n,i}return t.prototype.apply=function(e,t,n,r){var i,a;this.uniforms.dimensions[0]=(i=t.filterFrame)?.width,this.uniforms.dimensions[1]=(a=t.filterFrame)?.height,e.applyFilter(this,t,n,r)},Object.defineProperty(t.prototype,`texture`,{get:function(){return this.uniforms.uLightmap},set:function(e){this.uniforms.uLightmap=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`color`,{get:function(){return this._color},set:function(e){var t=this.uniforms.ambientColor;typeof e==`number`?(ii(e,t),this._color=e):(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],this._color=oi(t))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`alpha`,{get:function(){return this.uniforms.ambientColor[3]},set:function(e){this.uniforms.ambientColor[3]=e},enumerable:!1,configurable:!0}),t}(qo),Ym=function(e,t){return Ym=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Ym(e,t)};function Xm(e,t){Ym(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Zm=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,Qm=`varying vec2 vTextureCoord; + +uniform sampler2D uSampler; +uniform float blur; +uniform float gradientBlur; +uniform vec2 start; +uniform vec2 end; +uniform vec2 delta; +uniform vec2 texSize; + +float random(vec3 scale, float seed) +{ + return fract(sin(dot(gl_FragCoord.xyz + seed, scale)) * 43758.5453 + seed); +} + +void main(void) +{ + vec4 color = vec4(0.0); + float total = 0.0; + + float offset = random(vec3(12.9898, 78.233, 151.7182), 0.0); + vec2 normal = normalize(vec2(start.y - end.y, end.x - start.x)); + float radius = smoothstep(0.0, 1.0, abs(dot(vTextureCoord * texSize - start, normal)) / gradientBlur) * blur; + + for (float t = -30.0; t <= 30.0; t++) + { + float percent = (t + offset - 0.5) / 30.0; + float weight = 1.0 - abs(percent); + vec4 sample = texture2D(uSampler, vTextureCoord + delta / texSize * percent * radius); + sample.rgb *= sample.a; + color += sample * weight; + total += weight; + } + + color /= total; + color.rgb /= color.a + 0.00001; + + gl_FragColor = color; +} +`,$m=function(e){Xm(t,e);function t(t,n,r,i){t===void 0&&(t=100),n===void 0&&(n=600);var a=e.call(this,Zm,Qm)||this;return a.uniforms.blur=t,a.uniforms.gradientBlur=n,a.uniforms.start=r||new zi(0,window.innerHeight/2),a.uniforms.end=i||new zi(600,window.innerHeight/2),a.uniforms.delta=new zi(30,30),a.uniforms.texSize=new zi(window.innerWidth,window.innerHeight),a.updateDelta(),a}return t.prototype.updateDelta=function(){this.uniforms.delta.x=0,this.uniforms.delta.y=0},Object.defineProperty(t.prototype,`blur`,{get:function(){return this.uniforms.blur},set:function(e){this.uniforms.blur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`gradientBlur`,{get:function(){return this.uniforms.gradientBlur},set:function(e){this.uniforms.gradientBlur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`start`,{get:function(){return this.uniforms.start},set:function(e){this.uniforms.start=e,this.updateDelta()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`end`,{get:function(){return this.uniforms.end},set:function(e){this.uniforms.end=e,this.updateDelta()},enumerable:!1,configurable:!0}),t}(qo),eh=function(e){Xm(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.updateDelta=function(){var e=this.uniforms.end.x-this.uniforms.start.x,t=this.uniforms.end.y-this.uniforms.start.y,n=Math.sqrt(e*e+t*t);this.uniforms.delta.x=e/n,this.uniforms.delta.y=t/n},t}($m),th=function(e){Xm(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.updateDelta=function(){var e=this.uniforms.end.x-this.uniforms.start.x,t=this.uniforms.end.y-this.uniforms.start.y,n=Math.sqrt(e*e+t*t);this.uniforms.delta.x=-t/n,this.uniforms.delta.y=e/n},t}($m),nh=function(e){Xm(t,e);function t(t,n,r,i){t===void 0&&(t=100),n===void 0&&(n=600);var a=e.call(this)||this;return a.tiltShiftXFilter=new eh(t,n,r,i),a.tiltShiftYFilter=new th(t,n,r,i),a}return t.prototype.apply=function(e,t,n,r){var i=e.getFilterTexture();this.tiltShiftXFilter.apply(e,t,i,1),this.tiltShiftYFilter.apply(e,i,n,r),e.returnFilterTexture(i)},Object.defineProperty(t.prototype,`blur`,{get:function(){return this.tiltShiftXFilter.blur},set:function(e){this.tiltShiftXFilter.blur=this.tiltShiftYFilter.blur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`gradientBlur`,{get:function(){return this.tiltShiftXFilter.gradientBlur},set:function(e){this.tiltShiftXFilter.gradientBlur=this.tiltShiftYFilter.gradientBlur=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`start`,{get:function(){return this.tiltShiftXFilter.start},set:function(e){this.tiltShiftXFilter.start=this.tiltShiftYFilter.start=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`end`,{get:function(){return this.tiltShiftXFilter.end},set:function(e){this.tiltShiftXFilter.end=this.tiltShiftYFilter.end=e},enumerable:!1,configurable:!0}),t}(qo),rh=function(e,t){return rh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},rh(e,t)};function ih(e,t){rh(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var ah=`attribute vec2 aVertexPosition; +attribute vec2 aTextureCoord; + +uniform mat3 projectionMatrix; + +varying vec2 vTextureCoord; + +void main(void) +{ + gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0); + vTextureCoord = aTextureCoord; +}`,oh=`varying vec2 vTextureCoord; + +uniform sampler2D uSampler; +uniform float radius; +uniform float angle; +uniform vec2 offset; +uniform vec4 filterArea; + +vec2 mapCoord( vec2 coord ) +{ + coord *= filterArea.xy; + coord += filterArea.zw; + + return coord; +} + +vec2 unmapCoord( vec2 coord ) +{ + coord -= filterArea.zw; + coord /= filterArea.xy; + + return coord; +} + +vec2 twist(vec2 coord) +{ + coord -= offset; + + float dist = length(coord); + + if (dist < radius) + { + float ratioDist = (radius - dist) / radius; + float angleMod = ratioDist * ratioDist * angle; + float s = sin(angleMod); + float c = cos(angleMod); + coord = vec2(coord.x * c - coord.y * s, coord.x * s + coord.y * c); + } + + coord += offset; + + return coord; +} + +void main(void) +{ + + vec2 coord = mapCoord(vTextureCoord); + + coord = twist(coord); + + coord = unmapCoord(coord); + + gl_FragColor = texture2D(uSampler, coord ); + +} +`,sh=function(e){ih(t,e);function t(n){var r=e.call(this,ah,oh)||this;return Object.assign(r,t.defaults,n),r}return Object.defineProperty(t.prototype,`offset`,{get:function(){return this.uniforms.offset},set:function(e){this.uniforms.offset=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.radius},set:function(e){this.uniforms.radius=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`angle`,{get:function(){return this.uniforms.angle},set:function(e){this.uniforms.angle=e},enumerable:!1,configurable:!0}),t.defaults={radius:200,angle:4,padding:20,offset:new zi},t}(qo),ch=function(e,t){return ch=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},ch(e,t)};function lh(e,t){ch(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function uh(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i= 0.0 && dist > radius) { // radius < 0 means it's infinity + delta = dist - radius; + gap = gradient; + } + + if (delta > 0.0) { + float normalCount = gap / filterArea.x; + delta = (normalCount - delta) / normalCount; + countLimit *= delta; + strength *= delta; + if (countLimit < 1.0) + { + gl_FragColor = texture2D(uSampler, vTextureCoord); + return; + } + } + + // randomize the lookup values to hide the fixed number of samples + float offset = rand(vTextureCoord, 0.0); + + float total = 0.0; + vec4 color = vec4(0.0); + + dir *= strength; + + for (float t = 0.0; t < MAX_KERNEL_SIZE; t++) { + float percent = (t + offset) / MAX_KERNEL_SIZE; + float weight = 4.0 * (percent - percent * percent); + vec2 p = vTextureCoord + dir * percent; + vec4 sample = texture2D(uSampler, p); + + // switch to pre-multiplied alpha to correctly blur transparent images + // sample.rgb *= sample.a; + + color += sample * weight; + total += weight; + + if (t > countLimit){ + break; + } + } + + color /= total; + // switch back from pre-multiplied alpha + // color.rgb /= color.a + 0.00001; + + gl_FragColor = color; +} +`,ph=function(e){lh(t,e);function t(n){var r=this,i=Object.assign(t.defaults,n),a=i.maxKernelSize,o=uh(i,[`maxKernelSize`]);return r=e.call(this,dh,fh.replace("${maxKernelSize}",a.toFixed(1)))||this,Object.assign(r,o),r}return Object.defineProperty(t.prototype,`center`,{get:function(){return this.uniforms.uCenter},set:function(e){this.uniforms.uCenter=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`strength`,{get:function(){return this.uniforms.uStrength},set:function(e){this.uniforms.uStrength=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`innerRadius`,{get:function(){return this.uniforms.uInnerRadius},set:function(e){this.uniforms.uInnerRadius=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`radius`,{get:function(){return this.uniforms.uRadius},set:function(e){(e<0||e===1/0)&&(e=-1),this.uniforms.uRadius=e},enumerable:!1,configurable:!0}),t.defaults={strength:.1,center:[0,0],innerRadius:0,radius:-1,maxKernelSize:32},t}(qo);function mh(){let e=-1,t,n=-1;function r(r,i){(i>=e||i({x:0,y:0})},disableFocusAt:{type:Boolean,default:!1},xOffset:{},yOffset:{}},emits:[`modelLoaded`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=tn(()=>r.app),o=tn(()=>r.paused),s=tn(()=>r.focusAt),l=U(),u=U(0),h=U(0),g=Sn(()=>Math.max(0,Math.min(100,r.mouthOpenSize))),_=m(),v=p(f),y=Sn(()=>v.between(`sm`,`md`).value||v.smaller(`sm`).value),x=mh(),C=W(new jp({alpha:.2,blur:0,distance:20,rotation:45}));function w(){return l.value.internalModel.coreModel}function T(e){if(!e.value)return;let t=2.2;y.value&&(t=2.2);let n=r.height*.95/h.value*t,i=r.width*.95/u.value*t,a=Math.min(n,i);e.value.scale.set(a,a)}let{live2dModelFile:E,loadingLive2dModel:D,live2dCurrentMotion:O,availableLive2dMotions:k,live2dLoadSource:A,live2dModelUrl:j,themeColorsHue:M,themeColorsHueDynamic:N}=d(Kt()),ee=U({group:`Idle`,index:0});function P(){let e=Number.parseFloat(String(r.xOffset))||0,t=Number.parseFloat(String(r.yOffset))||0;return String(r.xOffset).endsWith(`%`)&&(e=Number.parseFloat(String(r.xOffset).replace(`%`,``))/100*r.width),String(r.yOffset).endsWith(`%`)&&(t=Number.parseFloat(String(r.yOffset).replace(`%`,``))/100*r.height),Number.isNaN(e)&&(e=0),Number.isNaN(t)&&(t=0),{xOffset:e,yOffset:t}}async function F(){if(!a.value)return;l.value&&(a.value.stage.removeChild(l.value),l.value.destroy(),l.value=void 0);let e=new bd;A.value===`file`?await fd.setupLive2DModel(e,[E.value],{autoInteract:!1}):A.value===`url`&&await fd.setupLive2DModel(e,j.value,{autoInteract:!1}),l.value=e,a.value.stage.addChild(l.value),u.value=l.value.width,h.value=l.value.height;let{xOffset:t,yOffset:n}=P();l.value.x=r.width/2+(t||0),l.value.y=r.height+(n||0),l.value.anchor.set(.5,.5),T(l),l.value.on(`hit`,e=>{l.value&&e.includes(`body`)&&l.value.motion(`tap_body`)});let o=l.value.internalModel,s=o.coreModel,c=o.motionManager;s.setParameterValueById(`ParamMouthOpenY`,g.value),k.value=Object.entries(c.definitions).flatMap(([e,t])=>t?t.map((t,n)=>({motionName:e,motionIndex:n,fileName:t.File})):[]).filter(Boolean),c.groups.idle&&c.motionGroups[c.groups.idle]?.forEach(e=>{e._motionData.curves.forEach(e=>{(e.id===`ParamEyeBallX`||e.id===`ParamEyeBallY`)&&(e.id=`_${e.id}`)})});let d=c.update;c.update=function(e,t){return d?.call(this,e,t),c.state.currentGroup===c.groups.idle&&x.update(o,t),!0},c.on(`motionStart`,(e,t)=>{ee.value={group:e,index:t}}),E.value&&await hh.default.setItem(`live2dModel`,E.value),i(`modelLoaded`),D.value=!1}async function I(){if(!a.value)return;bd.registerTicker(Ni),ki.add(Pi),ki.add(qd);let e=await hh.default.getItem(`live2dModel`);if(e){E.value=e,A.value=`file`,D.value=!0;return}if(j.value){A.value=`url`,D.value=!0;return}D.value=!1}async function te(e,t){await l.value?.motion(e,t,Uu.FORCE)}let L=S(()=>{if(l.value){let{xOffset:e,yOffset:t}=P();l.value.x=r.width/2+e,l.value.y=r.height+t,T(l)}},100),R=U(),ne=U(0);function z(){if(l.value){let e=getComputedStyle(R.value).backgroundColor;C.value.color=Number(b(e).replace(`#`,`0x`)),l.value.filters=[C.value]}}V([()=>r.width,()=>r.height],()=>L()),V(_,z,{immediate:!0}),V([l,M],z);function re(){z(),ne.value=requestAnimationFrame(re)}V(N,()=>{N.value?ne.value=requestAnimationFrame(re):(cancelAnimationFrame(ne.value),ne.value=0)},{immediate:!0}),V(g,e=>w().setParameterValueById(`ParamMouthOpenY`,e)),V(a,I),V(O,e=>te(e.group,e.index)),V(o,e=>e?a.value?.stop():a.value?.start()),V(s,e=>{l.value&&(r.disableFocusAt||l.value.focus(e.x,e.y))}),c(D,e=>{e&&F()},{debounce:1e3}),Jt(z),mn(()=>{cancelAnimationFrame(ne.value),l.value&&a.value?.stage.removeChild(l.value)});function ie(){return k.value}return t({setMotion:te,listMotionGroups:ie}),(e,t)=>(H(),fn(xn,null,[K(`div`,{ref_key:`dropShadowColorComputer`,ref:R,hidden:``,bg:`primary-400 dark:primary-500`},null,512),vn(e.$slots,`default`)],64))}}),_h=gh,vh=kn((exports,t)=>{ +/*! + +JSZip v3.10.1 - A JavaScript class for generating and reading zip files + + +(c) 2009-2016 Stuart Knightley +Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. + +JSZip uses the library pako released under the MIT license : +https://github.com/nodeca/pako/blob/main/LICENSE +*/ +(function(n){typeof exports==`object`&&t!==void 0?t.exports=n():typeof define==`function`&&define.amd?define([],n):(typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this).JSZip=n()})(function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof Mn==`function`&&Mn;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=Error(`Cannot find module '`+o+`'`);throw l.code=`MODULE_NOT_FOUND`,l}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return i(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var a=typeof Mn==`function`&&Mn,o=0;o>2,s=(3&t)<<4|n>>4,c=1>6:64,l=2>4,n=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),f[u++]=t,s!==64&&(f[u++]=n),c!==64&&(f[u++]=r);return f}},{"./support":30,"./utils":32}],2:[function(e,t,n){"use strict";var r=e(`./external`),i=e(`./stream/DataWorker`),a=e(`./stream/Crc32Probe`),o=e(`./stream/DataLengthProbe`);function s(e,t,n,r,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o(`data_length`)),t=this;return e.on(`end`,function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw Error(`Bug : uncompressed data size mismatch`)}),e},getCompressedWorker:function(){return new i(r.Promise.resolve(this.compressedContent)).withStreamInfo(`compressedSize`,this.compressedSize).withStreamInfo(`uncompressedSize`,this.uncompressedSize).withStreamInfo(`crc32`,this.crc32).withStreamInfo(`compression`,this.compression)}},s.createWorkerFrom=function(e,t,n){return e.pipe(new a).pipe(new o(`uncompressedSize`)).pipe(t.compressWorker(n)).pipe(new o(`compressedSize`)).withStreamInfo(`compression`,t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,n){"use strict";var r=e(`./stream/GenericWorker`);n.STORE={magic:`\0\0`,compressWorker:function(){return new r(`STORE compression`)},uncompressWorker:function(){return new r(`STORE decompression`)}},n.DEFLATE=e(`./flate`)},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,n){"use strict";var r=e(`./utils`),i=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t){return e!==void 0&&e.length?r.getTypeOf(e)===`string`?function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s>>8^a[255&(e^t.charCodeAt(s))];return-1^e}(0|t,e,e.length,0):function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s>>8^a[255&(e^t[s])];return-1^e}(0|t,e,e.length,0):0}},{"./utils":32}],5:[function(e,t,n){"use strict";n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!0,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],6:[function(e,t,n){"use strict";var r=null;r=typeof Promise<`u`?Promise:e(`lie`),t.exports={Promise:r}},{lie:37}],7:[function(e,t,n){"use strict";var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Uint32Array<`u`,i=e(`pako`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=r?`uint8array`:`array`;function c(e,t){o.call(this,`FlateWorker/`+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}n.magic=`\b\0`,a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,this._pako===null&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},n.compressWorker=function(e){return new c(`Deflate`,e)},n.uncompressWorker=function(){return new c(`Inflate`,{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,n){"use strict";function r(e,t){var n,r=``;for(n=0;n>>=8;return r}function i(e,t,n,i,o,u){var d,f,p=e.file,m=e.compression,h=u!==s.utf8encode,g=a.transformTo(`string`,u(p.name)),_=a.transformTo(`string`,s.utf8encode(p.name)),v=p.comment,y=a.transformTo(`string`,u(v)),b=a.transformTo(`string`,s.utf8encode(v)),x=_.length!==p.name.length,S=b.length!==v.length,C=``,w=``,T=``,E=p.dir,D=p.date,O={crc32:0,compressedSize:0,uncompressedSize:0};t&&!n||(O.crc32=e.crc32,O.compressedSize=e.compressedSize,O.uncompressedSize=e.uncompressedSize);var k=0;t&&(k|=8),h||!x&&!S||(k|=2048);var A=0,j=0;E&&(A|=16),o===`UNIX`?(j=798,A|=function(e,t){var n=e;return e||(n=t?16893:33204),(65535&n)<<16}(p.unixPermissions,E)):(j=20,A|=function(e){return 63&(e||0)}(p.dosPermissions)),d=D.getUTCHours(),d<<=6,d|=D.getUTCMinutes(),d<<=5,d|=D.getUTCSeconds()/2,f=D.getUTCFullYear()-1980,f<<=4,f|=D.getUTCMonth()+1,f<<=5,f|=D.getUTCDate(),x&&(w=r(1,1)+r(c(g),4)+_,C+=`up`+r(w.length,2)+w),S&&(T=r(1,1)+r(c(y),4)+b,C+=`uc`+r(T.length,2)+T);var M=``;return M+=` +\0`,M+=r(k,2),M+=m.magic,M+=r(d,2),M+=r(f,2),M+=r(O.crc32,4),M+=r(O.compressedSize,4),M+=r(O.uncompressedSize,4),M+=r(g.length,2),M+=r(C.length,2),{fileRecord:l.LOCAL_FILE_HEADER+M+g+C,dirRecord:l.CENTRAL_FILE_HEADER+r(j,2)+M+r(y.length,2)+`\0\0\0\0`+r(A,4)+r(i,4)+g+C+y}}var a=e(`../utils`),o=e(`../stream/GenericWorker`),s=e(`../utf8`),c=e(`../crc32`),l=e(`../signature`);function u(e,t,n,r){o.call(this,`ZipFileWorker`),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=n,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(u,o),u.prototype.push=function(e){var t=e.meta.percent||0,n=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:n?(t+100*(n-r-1))/n:100}}))},u.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var n=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:n.fileRecord,meta:{percent:0}})}else this.accumulate=!0},u.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,n=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(n.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+r(e.crc32,4)+r(e.compressedSize,4)+r(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:n.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},u.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)n=(n<<8)+this.byteAt(t);return this.index+=e,n},readString:function(e){return r.transformTo(`string`,this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,n){"use strict";var r=e(`./Uint8ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,n){"use strict";var r=e(`./DataReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,n){"use strict";var r=e(`./ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){if(this.checkOffset(e),e===0)return new Uint8Array;var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`../support`),a=e(`./ArrayReader`),o=e(`./StringReader`),s=e(`./NodeBufferReader`),c=e(`./Uint8ArrayReader`);t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),t!==`string`||i.uint8array?t===`nodebuffer`?new s(e):i.uint8array?new c(r.transformTo(`uint8array`,e)):new a(r.transformTo(`array`,e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,n){"use strict";n.LOCAL_FILE_HEADER=`PK`,n.CENTRAL_FILE_HEADER=`PK`,n.CENTRAL_DIRECTORY_END=`PK`,n.ZIP64_CENTRAL_DIRECTORY_LOCATOR=`PK\x07`,n.ZIP64_CENTRAL_DIRECTORY_END=`PK`,n.DATA_DESCRIPTOR=`PK\x07\b`},{}],24:[function(e,t,n){"use strict";var r=e(`./GenericWorker`),i=e(`../utils`);function a(e){r.call(this,`ConvertWorker to `+e),this.destType=e}i.inherits(a,r),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,n){"use strict";var r=e(`./GenericWorker`),i=e(`../crc32`);function a(){r.call(this,`Crc32Probe`),this.withStreamInfo(`crc32`,0)}e(`../utils`).inherits(a,r),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataLengthProbe for `+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataWorker`);var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type=``,this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case`string`:e=this.data.substring(this.index,t);break;case`uint8array`:e=this.data.subarray(this.index,t);break;case`array`:case`nodebuffer`:e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,n){"use strict";function r(e){this.name=e||`default`,this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit(`data`,e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit(`end`),this.cleanUp(),this.isFinished=!0}catch(e){this.emit(`error`,e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit(`error`,e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var n=0;n `+e:e}},t.exports=r},{}],29:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./ConvertWorker`),a=e(`./GenericWorker`),o=e(`../base64`),s=e(`../support`),c=e(`../external`),l=null;if(s.nodestream)try{l=e(`../nodejs/NodejsStreamOutputAdapter`)}catch{}function u(e,t){return new c.Promise(function(n,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on(`data`,function(e,n){a.push(e),t&&t(n)}).on(`error`,function(e){a=[],i(e)}).on(`end`,function(){try{var e=function(e,t,n){switch(e){case`blob`:return r.newBlob(r.transformTo(`arraybuffer`,t),n);case`base64`:return o.encode(t);default:return r.transformTo(e,t)}}(c,function(e,t){var n,r=0,i=null,a=0;for(n=0;n`u`)n.blob=!1;else{var r=new ArrayBuffer(0);try{n.blob=new Blob([r],{type:`application/zip`}).size===0}catch{try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(r),n.blob=i.getBlob(`application/zip`).size===0}catch{n.blob=!1}}}try{n.nodestream=!!e(`readable-stream`).Readable}catch{n.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,n){"use strict";for(var r=e(`./utils`),i=e(`./support`),a=e(`./nodejsUtils`),o=e(`./stream/GenericWorker`),s=Array(256),c=0;c<256;c++)s[c]=252<=c?6:248<=c?5:240<=c?4:224<=c?3:192<=c?2:1;s[254]=s[254]=1;function l(){o.call(this,`utf-8 decode`),this.leftOver=null}function u(){o.call(this,`utf-8 encode`)}n.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,`utf-8`):function(e){var t,n,r,a,o,s=e.length,c=0;for(a=0;a>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t}(e)},n.utf8decode=function(e){return i.nodebuffer?r.transformTo(`nodebuffer`,e).toString(`utf-8`):function(e){var t,n,i,a,o=e.length,c=Array(2*o);for(t=n=0;t>10&1023,c[n++]=56320|1023&i)}return c.length!==n&&(c.subarray?c=c.subarray(0,n):c.length=n),r.applyFromCharCode(c)}(e=r.transformTo(i.uint8array?`uint8array`:`array`,e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(i.uint8array?`uint8array`:`array`,e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=t;(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var n;for((t||=e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+s[e[n]]>t?n:t}(t),c=t;o!==t.length&&(i.uint8array?(c=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(c=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:n.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:n.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},n.Utf8DecodeWorker=l,r.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:n.utf8encode(e.data),meta:e.meta})},n.Utf8EncodeWorker=u},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,n){"use strict";var r=e(`./support`),i=e(`./base64`),a=e(`./nodejsUtils`),o=e(`./external`);function s(e){return e}function c(e,t){for(var n=0;n>8;this.dir=!!(16&this.externalFileAttributes),e==0&&(this.dosPermissions=63&this.externalFileAttributes),e==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!==`/`||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,n,r,i=e.index+this.extraFieldsLength;for(this.extraFields||={};e.index+4>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t},n.buf2binstring=function(e){return c(e,e.length)},n.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n>10&1023,l[r++]=56320|1023&i)}return c(l,r)},n.utf8border=function(e,t){var n;for((t||=e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+o[e[n]]>t?n:t}},{"./common":41}],43:[function(e,t,n){"use strict";t.exports=function(e,t,n,r){for(var i=65535&e|0,a=e>>>16&65535|0,o=0;n!==0;){for(n-=o=2e3>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s>>8^a[255&(e^t[s])];return-1^e}},{}],46:[function(e,t,n){"use strict";var r,i=e(`../utils/common`),a=e(`./trees`),o=e(`./adler32`),s=e(`./crc32`),c=e(`./messages`),l=0,u=4,d=0,f=-2,p=-1,m=4,h=2,g=8,_=9,v=286,y=30,b=19,x=2*v+1,S=15,C=3,w=258,T=w+C+1,E=42,D=113,O=1,k=2,A=3,j=4;function M(e,t){return e.msg=c[t],t}function N(e){return(e<<1)-(4e.avail_out&&(n=e.avail_out),n!==0&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))}function F(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,P(e.strm)}function I(e,t){e.pending_buf[e.pending++]=t}function te(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function L(e,t){var n,r,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-T?e.strstart-(e.w_size-T):0,l=e.window,u=e.w_mask,d=e.prev,f=e.strstart+w,p=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do if(l[(n=t)+o]===m&&l[n+o-1]===p&&l[n]===l[a]&&l[++n]===l[a+1]){a+=2,n++;do;while(l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&ac&&--i!=0);return o<=e.lookahead?o:e.lookahead}function R(e){var t,n,r,a,c,l,u,d,f,p,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-T)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=n=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--n;);for(t=n=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--n;);a+=m}if(e.strm.avail_in===0)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,f=a,p=void 0,p=l.avail_in,f=C)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<=C&&(e.ins_h=(e.ins_h<=C)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-C),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=C){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=C&&(e.ins_h=(e.ins_h<=C&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-C,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-C),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(R(e),e.lookahead===0&&t===l)return O;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((e.strstart===0||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,F(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-T&&(F(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(F(e,!0),e.strm.avail_out===0?A:j):(e.strstart>e.block_start&&(F(e,!1),e.strm.avail_out),O)}),new re(4,4,8,4,ne),new re(4,5,16,8,ne),new re(4,6,32,32,ne),new re(4,4,16,16,z),new re(8,16,32,32,z),new re(8,16,128,128,z),new re(8,32,128,256,z),new re(32,128,258,1024,z),new re(32,258,258,4096,z)],n.deflateInit=function(e,t){return se(e,t,g,15,8,0)},n.deflateInit2=se,n.deflateReset=oe,n.deflateResetKeep=ae,n.deflateSetHeader=function(e,t){return e&&e.state&&e.state.wrap===2?(e.state.gzhead=t,d):f},n.deflate=function(e,t){var n,i,o,c;if(!e||!e.state||5>8&255),I(i,i.gzhead.time>>16&255),I(i,i.gzhead.time>>24&255),I(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),I(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(I(i,255&i.gzhead.extra.length),I(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(I(i,0),I(i,0),I(i,0),I(i,0),I(i,0),I(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),I(i,3),i.status=D);else{var p=g+(i.w_bits-8<<4)<<8;p|=(2<=i.strategy||i.level<2?0:i.level<6?1:i.level===6?2:3)<<6,i.strstart!==0&&(p|=32),p+=31-p%31,i.status=D,te(i,p),i.strstart!==0&&(te(i,e.adler>>>16),te(i,65535&e.adler)),e.adler=1}if(i.status===69)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),P(e),o=i.pending,i.pending!==i.pending_buf_size));)I(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(i.status===73)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),P(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.gzindex=0,i.status=91)}else i.status=91;if(i.status===91)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),P(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindexo&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.status=103)}else i.status=103;if(i.status===103&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&P(e),i.pending+2<=i.pending_buf_size&&(I(i,255&e.adler),I(i,e.adler>>8&255),e.adler=0,i.status=D)):i.status=D),i.pending!==0){if(P(e),e.avail_out===0)return i.last_flush=-1,d}else if(e.avail_in===0&&N(t)<=N(n)&&t!==u)return M(e,-5);if(i.status===666&&e.avail_in!==0)return M(e,-5);if(e.avail_in!==0||i.lookahead!==0||t!==l&&i.status!==666){var m=i.strategy===2?function(e,t){for(var n;;){if(e.lookahead===0&&(R(e),e.lookahead===0)){if(t===l)return O;break}if(e.match_length=0,n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(F(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(F(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(F(e,!1),e.strm.avail_out===0)?O:k}(i,t):i.strategy===3?function(e,t){for(var n,r,i,o,s=e.window;;){if(e.lookahead<=w){if(R(e),e.lookahead<=w&&t===l)return O;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=C&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=C?(n=a._tr_tally(e,1,e.match_length-C),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(F(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(F(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(F(e,!1),e.strm.avail_out===0)?O:k}(i,t):r[i.level].func(i,t);if(m!==A&&m!==j||(i.status=666),m===O||m===A)return e.avail_out===0&&(i.last_flush=-1),d;if(m===k&&(t===1?a._tr_align(i):t!==5&&(a._tr_stored_block(i,0,0,!1),t===3&&(ee(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),P(e),e.avail_out===0))return i.last_flush=-1,d}return t===u?i.wrap<=0?1:(i.wrap===2?(I(i,255&e.adler),I(i,e.adler>>8&255),I(i,e.adler>>16&255),I(i,e.adler>>24&255),I(i,255&e.total_in),I(i,e.total_in>>8&255),I(i,e.total_in>>16&255),I(i,e.total_in>>24&255)):(te(i,e.adler>>>16),te(i,65535&e.adler)),P(e),0=n.w_size&&(s===0&&(ee(n.head),n.strstart=0,n.block_start=0,n.insert=0),p=new i.Buf8(n.w_size),i.arraySet(p,t,m-n.w_size,n.w_size,0),t=p,m=n.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,R(n);n.lookahead>=C;){for(r=n.strstart,a=n.lookahead-(C-1);n.ins_h=(n.ins_h<>>=b=y>>>24,m-=b,(b=y>>>16&255)==0)E[a++]=65535&y;else{if(!(16&b)){if(!(64&b)){y=h[(65535&y)+(p&(1<>>=b,m-=b),m<15&&(p+=T[r++]<>>=b=y>>>24,m-=b,!(16&(b=y>>>16&255))){if(!(64&b)){y=g[(65535&y)+(p&(1<>>=b,m-=b,(b=a-o)>3,p&=(1<<(m-=x<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function g(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function _(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg=``,t.wrap&&(e.adler=1&t.wrap),t.mode=f,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(p),t.distcode=t.distdyn=new r.Buf32(m),t.sane=1,t.back=-1,u):d}function v(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,_(e)):d}function y(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(i<(a=o.wsize-o.wnext)&&(a=i),r.arraySet(o.window,t,n-i,a,o.wnext),(i-=a)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,n.check=a(n.check,R,2,0),x=b=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&b)<<8)+(b>>8))%31){e.msg=`incorrect header check`,n.mode=30;break}if((15&b)!=8){e.msg=`unknown compression method`,n.mode=30;break}if(x-=4,P=8+(15&(b>>>=4)),n.wbits===0)n.wbits=P;else if(P>n.wbits){e.msg=`invalid window size`,n.mode=30;break}n.dmax=1<>8&1),512&n.flags&&(R[0]=255&b,R[1]=b>>>8&255,n.check=a(n.check,R,2,0)),x=b=0,n.mode=3;case 3:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<>>8&255,R[2]=b>>>16&255,R[3]=b>>>24&255,n.check=a(n.check,R,4,0)),x=b=0,n.mode=4;case 4:for(;x<16;){if(v===0)break e;v--,b+=p[g++]<>8),512&n.flags&&(R[0]=255&b,R[1]=b>>>8&255,n.check=a(n.check,R,2,0)),x=b=0,n.mode=5;case 5:if(1024&n.flags){for(;x<16;){if(v===0)break e;v--,b+=p[g++]<>>8&255,n.check=a(n.check,R,2,0)),x=b=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&(v<(E=n.length)&&(E=v),E&&(n.head&&(P=n.head.extra_len-n.length,n.head.extra||(n.head.extra=Array(n.head.extra_len)),r.arraySet(n.head.extra,p,g,E,P)),512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,n.length-=E),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(v===0)break e;for(E=0;P=p[g+ E++],n.head&&P&&n.length<65536&&(n.head.name+=String.fromCharCode(P)),P&&E>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<>>=7&x,x-=7&x,n.mode=27;break}for(;x<3;){if(v===0)break e;v--,b+=p[g++]<>>=1)){case 0:n.mode=14;break;case 1:if(w(n),n.mode=20,t!==6)break;b>>>=2,x-=2;break e;case 2:n.mode=17;break;case 3:e.msg=`invalid block type`,n.mode=30}b>>>=2,x-=2;break;case 14:for(b>>>=7&x,x-=7&x;x<32;){if(v===0)break e;v--,b+=p[g++]<>>16^65535)){e.msg=`invalid stored block lengths`,n.mode=30;break}if(n.length=65535&b,x=b=0,n.mode=15,t===6)break e;case 15:n.mode=16;case 16:if(E=n.length){if(v>>=5,x-=5,n.ndist=1+(31&b),b>>>=5,x-=5,n.ncode=4+(15&b),b>>>=4,x-=4,286>>=3,x-=3}for(;n.have<19;)n.lens[ne[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,I={bits:n.lenbits},F=s(0,n.lens,0,19,n.lencode,0,n.work,I),n.lenbits=I.bits,F){e.msg=`invalid code lengths set`,n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have>>16&255,j=65535&L,!((k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>>=k,x-=k,n.lens[n.have++]=j;else{if(j===16){for(te=k+2;x>>=k,x-=k,n.have===0){e.msg=`invalid bit length repeat`,n.mode=30;break}P=n.lens[n.have-1],E=3+(3&b),b>>>=2,x-=2}else if(j===17){for(te=k+3;x>>=k)),b>>>=3,x-=3}else{for(te=k+7;x>>=k)),b>>>=7,x-=7}if(n.have+E>n.nlen+n.ndist){e.msg=`invalid bit length repeat`,n.mode=30;break}for(;E--;)n.lens[n.have++]=P}}if(n.mode===30)break;if(n.lens[256]===0){e.msg=`invalid code -- missing end-of-block`,n.mode=30;break}if(n.lenbits=9,I={bits:n.lenbits},F=s(c,n.lens,0,n.nlen,n.lencode,0,n.work,I),n.lenbits=I.bits,F){e.msg=`invalid literal/lengths set`,n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,I={bits:n.distbits},F=s(l,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,I),n.distbits=I.bits,F){e.msg=`invalid distances set`,n.mode=30;break}if(n.mode=20,t===6)break e;case 20:n.mode=21;case 21:if(6<=v&&258<=y){e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,o(e,C),_=e.next_out,m=e.output,y=e.avail_out,g=e.next_in,p=e.input,v=e.avail_in,b=n.hold,x=n.bits,n.mode===12&&(n.back=-1);break}for(n.back=0;A=(L=n.lencode[b&(1<>>16&255,j=65535&L,!((k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>M)])>>>16&255,j=65535&L,!(M+(k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,n.length=j,A===0){n.mode=26;break}if(32&A){n.back=-1,n.mode=12;break}if(64&A){e.msg=`invalid literal/length code`,n.mode=30;break}n.extra=15&A,n.mode=22;case 22:if(n.extra){for(te=n.extra;x>>=n.extra,x-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;A=(L=n.distcode[b&(1<>>16&255,j=65535&L,!((k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>M)])>>>16&255,j=65535&L,!(M+(k=L>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,64&A){e.msg=`invalid distance code`,n.mode=30;break}n.offset=j,n.extra=15&A,n.mode=24;case 24:if(n.extra){for(te=n.extra;x>>=n.extra,x-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg=`invalid distance too far back`,n.mode=30;break}n.mode=25;case 25:if(y===0)break e;if(E=C-y,n.offset>E){if((E=n.offset-E)>n.whave&&n.sane){e.msg=`invalid distance too far back`,n.mode=30;break}D=E>n.wnext?(E-=n.wnext,n.wsize-E):n.wnext-E,E>n.length&&(E=n.length),O=n.window}else O=m,D=_-n.offset,E=n.length;for(yv?(b=I[te+d[w]],N[ee+d[w]]):(b=96,0),p=1<>k)+(m-=p)]=y<<24|b<<16|x|0,m!==0;);for(p=1<>=1;if(p===0?M=0:(M&=p-1,M+=p),w++,--P[C]==0){if(C===E)break;C=t[n+d[w]]}if(D>>7)]}function I(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function te(e,t,n){e.bi_valid>h-n?(e.bi_buf|=t<>h-e.bi_valid,e.bi_valid+=n-h):(e.bi_buf|=t<>>=1,n<<=1,0<--t;);return n>>>1}function ne(e,t,n){var r,i,a=Array(m+1),o=0;for(r=1;r<=m;r++)a[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];s!==0&&(e[2*i]=R(a[s]++,s))}}function z(e){var t;for(t=0;t>1;1<=n;n--)ae(e,a,n);for(i=c;n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ae(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,a[2*i]=a[2*n]+a[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,a[2*n+1]=a[2*r+1]=i,e.heap[1]=i++,ae(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,h=t.stat_desc.extra_base,g=t.stat_desc.max_length,_=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n>=7;r>>=1)if(1&n&&e.dyn_ltree[2*t]!==0)return i;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return a;for(t=32;t>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=n+5,n+4<=o&&t!==-1?de(e,t,n,r):e.strategy===4||s===o?(te(e,2+(r?1:0),3),oe(e,T,E)):(te(e,4+(r?1:0),3),function(e,t,n,r){var i;for(te(e,t-257,5),te(e,n-1,5),te(e,r-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,t===0?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(O[n]+l+1)]++,e.dyn_dtree[2*F(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){te(e,2,3),L(e,_,T),function(e){e.bi_valid===16?(I(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,n){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=``,this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){(function(e,t){"use strict";if(!e.setImmediate){var n,r,i,a,o=1,s={},c=!1,l=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,n={}.toString.call(e.process)===`[object process]`?function(e){process.nextTick(function(){f(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage(``,`*`),e.onmessage=n,t}}()?(a=`setImmediate$`+Math.random()+`$`,e.addEventListener?e.addEventListener(`message`,p,!1):e.attachEvent(`onmessage`,p),function(t){e.postMessage(a+t,`*`)}):e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){i.port2.postMessage(e)}):l&&`onreadystatechange`in l.createElement(`script`)?(r=l.documentElement,function(e){var t=l.createElement(`script`);t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(f,0,e)},u.setImmediate=function(e){typeof e!=`function`&&(e=Function(``+e));for(var t=Array(arguments.length-1),r=0;r`u`?e===void 0?this:e:self)}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}]},{},[10])(10)})}),yh=Nn(vh());wd.zipReader=(e,t)=>yh.default.loadAsync(e);const bh=wd.createSettings;wd.createSettings=async e=>{let t=Object.keys(e.files);return t.find(e=>xh(e))?bh(e):wh(t)};function xh(e){return e.endsWith(`model3.json`)}function Sh(e){return e.endsWith(`.moc3`)}function Ch(e){return e.split(/[\\/]/).pop()}function wh(e){let t=e.filter(e=>Sh(e));if(t.length!==1){let e=t.length?`(${t.map(e=>`"${e}"`).join(`,`)})`:``;throw Error(`Expected exactly one moc file, got ${t.length} ${e}`)}let n=t[0],r=Ch(n).replace(/\.moc3?/,``),i=e.filter(e=>e.endsWith(`.png`));if(!i.length)throw Error(`Textures not found`);let a=e.filter(e=>e.endsWith(`.mtn`)||e.endsWith(`.motion3.json`)),o=e.find(e=>e.includes(`physics`)),s=e.find(e=>e.includes(`pose`)),c=new Ed({url:`${r}.model3.json`,Version:3,FileReferences:{Moc:n,Textures:i,Physics:o,Pose:s,Motions:a.length?{"":a.map(e=>({File:e}))}:void 0}});return c.name=r,c._objectURL=`example://${c.url}`,c}wd.readText=(e,t)=>{let n=e.file(t);if(!n)throw Error(`Cannot find file: ${t}`);return n.async(`text`)},wd.getFilePaths=e=>{let t=[];return e.forEach(e=>t.push(e)),Promise.resolve(t)},wd.getFiles=(e,t)=>Promise.all(t.map(async t=>{let n=t.slice(t.lastIndexOf(`/`)+1),r=await e.file(t).async(`blob`);return new File([r],n)}));const Th={absolute:``,bottom:`3`,right:`3`},Eh={flex:`~ row`,"cursor-pointer":``},Dh=[`checked`,`aria-checked`],Oh={key:0,"min-w":`50vw`,z:`(H(),_n(s,{relative:``},{default:dn(({width:a,height:o})=>[$t(Id,{width:a,height:o,resolution:2,"max-h":`100dvh`},{default:dn(({app:t})=>[$t(_h,{app:t,"mouth-open-size":e.mouthOpenSize,width:a,height:o,paused:e.paused,"focus-at":e.focusAt,"x-offset":e.xOffset,"y-offset":e.yOffset},null,8,[`app`,`mouth-open-size`,`width`,`height`,`paused`,`focus-at`,`x-offset`,`y-offset`])]),_:2},1032,[`width`,`height`]),K(`div`,Th,[K(`div`,Eh,[K(`label`,{class:Dn([n.value?`bg-neutral-300 dark:bg-neutral-200`:`bg-neutral-100 dark:bg-neutral-700`]),transition:`all ease-in-out duration-500`,text:`lg neutral-500 dark:neutral-400`,"m-1":``,"h-fit":``,"w-fit":``,"cursor-pointer":``,"appearance-none":``,"gap-1":``,"rounded-lg":``,"rounded-md":``,"border-none":``,"p-2":``,"outline-none":``},[yn(K(`input`,{"onUpdate:modelValue":i[0]||=e=>n.value=e,checked:n.value,"aria-checked":n.value,name:`showLive2DViewerInspector`,type:`checkbox`,"appearance-none":``,"outline-none":``,hidden:``},null,8,Dh),[[vt,n.value]]),i[8]||=K(`div`,{"select-none":``},[K(`div`,{"i-solar:bug-bold-duotone":``})],-1)],2)]),$t(G(h),null,{default:dn(()=>[n.value?(H(),fn(`div`,Oh,[K(`div`,kh,[K(`div`,Ah,[K(`span`,null,En(G(t)(`stage.viewers.debug-menu.emotions`)),1)]),K(`div`,jh,[K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[1]||=e=>r.value={group:`Surprise`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.surprised`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[2]||=e=>r.value={group:`Sad`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.sad`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[3]||=e=>r.value={group:`Angry`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.angry`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[4]||=e=>r.value={group:`Happy`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.happy`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[5]||=e=>r.value={group:`Awkward`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.awkward`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[6]||=e=>r.value={group:`Question`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.question`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:i[7]||=e=>r.value={group:`Think`,index:0}},En(G(t)(`stage.viewers.debug-menu.emotions-btn.think`)),1)])])])):Zt(``,!0)]),_:1})])]),_:1}))}}),Nh=Mh;function Ph(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}function Fh(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)}function Ih(e){return this instanceof Ih?(this.v=e,this):new Ih(e)}function Lh(e,t,n){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var r=n.apply(e,t||[]),i,a=[];return i=Object.create((typeof AsyncIterator==`function`?AsyncIterator:Object).prototype),s(`next`),s(`throw`),s(`return`,o),i[Symbol.asyncIterator]=function(){return this},i;function o(e){return function(t){return Promise.resolve(t).then(e,d)}}function s(e,t){r[e]&&(i[e]=function(t){return new Promise(function(n,r){a.push([e,t,n,r])>1||c(e,t)})},t&&(i[e]=t(i[e])))}function c(e,t){try{l(r[e](t))}catch(e){f(a[0][3],e)}}function l(e){e.value instanceof Ih?Promise.resolve(e.value.v).then(u,d):f(a[0][2],e)}function u(e){c(`next`,e)}function d(e){c(`throw`,e)}function f(e,t){e(t),a.shift(),a.length&&c(a[0][0],a[0][1])}}function Rh(e){var t,n;return t={},r(`next`),r(`throw`,function(e){throw e}),r(`return`),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:Ih(e[r](t)),done:!1}:i?i(t):t}:i}}function zh(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof Fh==`function`?Fh(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,a){n=e[t](n),i(r,a,n.done,n.value)})}}function i(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}}const Bh=new TextDecoder(`utf-8`),Vh=e=>Bh.decode(e),Hh=new TextEncoder,Uh=e=>Hh.encode(e),Wh=e=>typeof e==`number`,Gh=e=>typeof e==`boolean`,Kh=e=>typeof e==`function`,qh=e=>e!=null&&Object(e)===e,Jh=e=>qh(e)&&Kh(e.then),Yh=e=>qh(e)&&Kh(e[Symbol.iterator]),Xh=e=>qh(e)&&Kh(e[Symbol.asyncIterator]),Zh=e=>qh(e)&&qh(e.schema),Qh=e=>qh(e)&&`done`in e&&`value`in e,$h=e=>qh(e)&&Kh(e.stat)&&Wh(e.fd),eg=e=>qh(e)&&rg(e.body),tg=e=>`_getDOMStream`in e&&`_getNodeStream`in e,ng=e=>qh(e)&&Kh(e.abort)&&Kh(e.getWriter)&&!tg(e),rg=e=>qh(e)&&Kh(e.cancel)&&Kh(e.getReader)&&!tg(e),ig=e=>qh(e)&&Kh(e.end)&&Kh(e.write)&&Gh(e.writable)&&!tg(e),ag=e=>qh(e)&&Kh(e.read)&&Kh(e.pipe)&&Gh(e.readable)&&!tg(e),og=e=>qh(e)&&Kh(e.clear)&&Kh(e.bytes)&&Kh(e.position)&&Kh(e.setPosition)&&Kh(e.capacity)&&Kh(e.getBufferIdentifier)&&Kh(e.createLong),sg=typeof SharedArrayBuffer<`u`?SharedArrayBuffer:ArrayBuffer;function cg(e){let t=e[0]?[e[0]]:[],n,r,i,a;for(let o,s,c=0,l=0,u=e.length;++ce+t.byteLength,0),i,a,o,s=0,c=-1,l=Math.min(t||1/0,r);for(let e=n.length;++cdg(Int32Array,e),pg=e=>dg(BigInt64Array,e),mg=e=>dg(Uint8Array,e),hg=e=>(e.next(),e);function*gg(e,t){let n=function*(e){yield e},r=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof sg?n(t):Yh(t)?t:n(t);return yield*hg(function*(t){let n=null;do n=t.next(yield dg(e,n));while(!n.done)}(r[Symbol.iterator]())),new e}const _g=e=>gg(Uint8Array,e);function vg(e,t){return Lh(this,arguments,function*(){if(Jh(t))return yield Ih(yield Ih(yield*Rh(zh(vg(e,yield Ih(t))))));let n=function(e){return Lh(this,arguments,function*(){yield yield Ih(yield Ih(e))})},r=function(e){return Lh(this,arguments,function*(){yield Ih(yield*Rh(zh(hg(function*(e){let t=null;do t=e.next(yield t?.value);while(!t.done)}(e[Symbol.iterator]())))))})},i=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof sg?n(t):Yh(t)?r(t):Xh(t)?t:n(t);return yield Ih(yield*Rh(zh(hg(function(t){return Lh(this,arguments,function*(){let n=null;do n=yield Ih(t.next(yield yield Ih(dg(e,n))));while(!n.done)})}(i[Symbol.asyncIterator]()))))),yield Ih(new e)})}const yg=e=>vg(Uint8Array,e);function bg(e,t,n){if(e!==0){n=n.slice(0,t);for(let t=-1,r=n.length;++t0)do if(e[n]!==t[n])return!1;while(++n(e.next(),e);function*wg(e){let t,n=!1,r=[],i,a,o,s=0;function c(){return a===`peek`?ug(r,o)[0]:([i,r,s]=ug(r,o),i)}({cmd:a,size:o}=(yield(()=>null)())||{cmd:`read`,size:0});let l=_g(e)[Symbol.iterator]();try{do if({done:t,value:i}=Number.isNaN(o-s)?l.next():l.next(o-s),!t&&i.byteLength>0&&(r.push(i),s+=i.byteLength),t||o<=s)do({cmd:a,size:o}=yield c());while(onull)()))||{cmd:`read`,size:0});let l=yg(e)[Symbol.asyncIterator]();try{do if({done:t,value:i}=Number.isNaN(o-s)?yield Ih(l.next()):yield Ih(l.next(o-s)),!t&&i.byteLength>0&&(r.push(i),s+=i.byteLength),t||o<=s)do({cmd:a,size:o}=yield yield Ih(c()));while(onull)()))||{cmd:`read`,size:0});let l=new Dg(e);try{do if({done:t,value:i}=Number.isNaN(o-s)?yield Ih(l.read()):yield Ih(l.read(o-s)),!t&&i.byteLength>0&&(r.push(mg(i)),s+=i.byteLength),t||o<=s)do({cmd:a,size:o}=yield yield Ih(c()));while(o{})}get closed(){return this.reader?this.reader.closed.catch(()=>{}):Promise.resolve()}releaseLock(){this.reader&&this.reader.releaseLock(),this.reader=null}cancel(e){return Ph(this,void 0,void 0,function*(){let{reader:t,source:n}=this;t&&(yield t.cancel(e).catch(()=>{})),n&&n.locked&&this.releaseLock()})}read(e){return Ph(this,void 0,void 0,function*(){if(e===0)return{done:this.reader==null,value:new Uint8Array};let t=yield this.reader.read();return!t.done&&(t.value=mg(t)),t})}};const Og=(e,t)=>{let n=e=>r([t,e]),r;return[t,n,new Promise(i=>(r=i)&&e.once(t,n))]};function kg(e){return Lh(this,arguments,function*(){let t=[],n=`error`,r=!1,i=null,a,o,s=0,c=[],l;function u(){return a===`peek`?ug(c,o)[0]:([l,c,s]=ug(c,o),l)}if({cmd:a,size:o}=(yield yield Ih((()=>null)()))||{cmd:`read`,size:0},e.isTTY)return yield yield Ih(new Uint8Array),yield Ih(null);try{t[0]=Og(e,`end`),t[1]=Og(e,`error`);do{if(t[2]=Og(e,`readable`),[n,i]=yield Ih(Promise.race(t.map(e=>e[2]))),n===`error`)break;if((r=n===`end`)||(Number.isFinite(o-s)?(l=mg(e.read(o-s)),l.byteLength0&&(c.push(l),s+=l.byteLength)),r||o<=s)do({cmd:a,size:o}=yield yield Ih(u()));while(o{for(let[n,r]of t)e.off(n,r);try{let t=e.destroy;t&&t.call(e,n),n=void 0}catch(e){n=e||n}finally{n==null?r():i(n)}})}})}var Ag;(function(e){e[e.V1=0]=`V1`,e[e.V2=1]=`V2`,e[e.V3=2]=`V3`,e[e.V4=3]=`V4`,e[e.V5=4]=`V5`})(Ag||={});var jg;(function(e){e[e.Sparse=0]=`Sparse`,e[e.Dense=1]=`Dense`})(jg||={});var Mg;(function(e){e[e.HALF=0]=`HALF`,e[e.SINGLE=1]=`SINGLE`,e[e.DOUBLE=2]=`DOUBLE`})(Mg||={});var Ng;(function(e){e[e.DAY=0]=`DAY`,e[e.MILLISECOND=1]=`MILLISECOND`})(Ng||={});var Pg;(function(e){e[e.SECOND=0]=`SECOND`,e[e.MILLISECOND=1]=`MILLISECOND`,e[e.MICROSECOND=2]=`MICROSECOND`,e[e.NANOSECOND=3]=`NANOSECOND`})(Pg||={});var Fg;(function(e){e[e.YEAR_MONTH=0]=`YEAR_MONTH`,e[e.DAY_TIME=1]=`DAY_TIME`,e[e.MONTH_DAY_NANO=2]=`MONTH_DAY_NANO`})(Fg||={});const Ig=2,Lg=4,Rg=4,zg=4,Bg=new Int32Array(2),Vg=new Float32Array(Bg.buffer),Hg=new Float64Array(Bg.buffer),Ug=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;var Wg;(function(e){e[e.UTF8_BYTES=1]=`UTF8_BYTES`,e[e.UTF16_STRING=2]=`UTF16_STRING`})(Wg||={});var Gg=class e{constructor(e){this.bytes_=e,this.position_=0,this.text_decoder_=new TextDecoder}static allocate(t){return new e(new Uint8Array(t))}clear(){this.position_=0}bytes(){return this.bytes_}position(){return this.position_}setPosition(e){this.position_=e}capacity(){return this.bytes_.length}readInt8(e){return this.readUint8(e)<<24>>24}readUint8(e){return this.bytes_[e]}readInt16(e){return this.readUint16(e)<<16>>16}readUint16(e){return this.bytes_[e]|this.bytes_[e+1]<<8}readInt32(e){return this.bytes_[e]|this.bytes_[e+1]<<8|this.bytes_[e+2]<<16|this.bytes_[e+3]<<24}readUint32(e){return this.readInt32(e)>>>0}readInt64(e){return BigInt.asIntN(64,BigInt(this.readUint32(e))+(BigInt(this.readUint32(e+4))<>8}writeUint16(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8}writeInt32(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8,this.bytes_[e+2]=t>>16,this.bytes_[e+3]=t>>24}writeUint32(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8,this.bytes_[e+2]=t>>16,this.bytes_[e+3]=t>>24}writeInt64(e,t){this.writeInt32(e,Number(BigInt.asIntN(32,t))),this.writeInt32(e+4,Number(BigInt.asIntN(32,t>>BigInt(32))))}writeUint64(e,t){this.writeUint32(e,Number(BigInt.asUintN(32,t))),this.writeUint32(e+4,Number(BigInt.asUintN(32,t>>BigInt(32))))}writeFloat32(e,t){Vg[0]=t,this.writeInt32(e,Bg[0])}writeFloat64(e,t){Hg[0]=t,this.writeInt32(e,Bg[Ug?0:1]),this.writeInt32(e+4,Bg[Ug?1:0])}getBufferIdentifier(){if(this.bytes_.lengththis.minalign&&(this.minalign=t);let r=~(this.bb.capacity()-this.space+n)+1&t-1;for(;this.space=0&&this.vtable[t]==0;t--);let n=t+1;for(;t>=0;t--)this.addInt16(this.vtable[t]==0?0:e-this.vtable[t]);let r=2;this.addInt16(e-this.object_start);let i=(n+r)*Ig;this.addInt16(i);let a=0,o=this.space;outer_loop:for(t=0;t=0;t--)this.writeInt8(e.charCodeAt(t))}this.prep(this.minalign,Lg+r),this.addOffset(e),r&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)}finishSizePrefixed(e,t){this.finish(e,t,!0)}requiredField(e,t){let n=this.bb.capacity()-e,r=n-this.bb.readInt32(n),i=t=0;n--)e.addInt32(t[n]);return e.endVector()}static startTypeIdsVector(e,t){e.startVector(4,t,4)}static endUnion(e){let t=e.endObject();return t}static createUnion(t,n,r){return e.startUnion(t),e.addMode(t,n),e.addTypeIds(t,r),e.endUnion(t)}},C_=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsUtf8(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsUtf8(t,n){return t.setPosition(t.position()+zg),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static startUtf8(e){e.startObject(0)}static endUtf8(e){let t=e.endObject();return t}static createUtf8(t){return e.startUtf8(t),e.endUtf8(t)}},w_;(function(e){e[e.NONE=0]=`NONE`,e[e.Null=1]=`Null`,e[e.Int=2]=`Int`,e[e.FloatingPoint=3]=`FloatingPoint`,e[e.Binary=4]=`Binary`,e[e.Utf8=5]=`Utf8`,e[e.Bool=6]=`Bool`,e[e.Decimal=7]=`Decimal`,e[e.Date=8]=`Date`,e[e.Time=9]=`Time`,e[e.Timestamp=10]=`Timestamp`,e[e.Interval=11]=`Interval`,e[e.List=12]=`List`,e[e.Struct_=13]=`Struct_`,e[e.Union=14]=`Union`,e[e.FixedSizeBinary=15]=`FixedSizeBinary`,e[e.FixedSizeList=16]=`FixedSizeList`,e[e.Map=17]=`Map`,e[e.Duration=18]=`Duration`,e[e.LargeBinary=19]=`LargeBinary`,e[e.LargeUtf8=20]=`LargeUtf8`,e[e.LargeList=21]=`LargeList`,e[e.RunEndEncoded=22]=`RunEndEncoded`})(w_||={});var T_=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsField(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsField(t,n){return t.setPosition(t.position()+zg),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}name(e){let t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__string(this.bb_pos+t,e):null}nullable(){let e=this.bb.__offset(this.bb_pos,6);return e?!!this.bb.readInt8(this.bb_pos+e):!1}typeType(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.readUint8(this.bb_pos+e):w_.NONE}type(e){let t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__union(e,this.bb_pos+t):null}dictionary(e){let t=this.bb.__offset(this.bb_pos,12);return t?(e||new r_).__init(this.bb.__indirect(this.bb_pos+t),this.bb):null}children(t,n){let r=this.bb.__offset(this.bb_pos,14);return r?(n||new e).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+t*4),this.bb):null}childrenLength(){let e=this.bb.__offset(this.bb_pos,14);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,16);return n?(t||new i_).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,16);return e?this.bb.__vector_len(this.bb_pos+e):0}static startField(e){e.startObject(7)}static addName(e,t){e.addFieldOffset(0,t,0)}static addNullable(e,t){e.addFieldInt8(1,+t,0)}static addTypeType(e,t){e.addFieldInt8(2,t,w_.NONE)}static addType(e,t){e.addFieldOffset(3,t,0)}static addDictionary(e,t){e.addFieldOffset(4,t,0)}static addChildren(e,t){e.addFieldOffset(5,t,0)}static createChildrenVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startChildrenVector(e,t){e.startVector(4,t,4)}static addCustomMetadata(e,t){e.addFieldOffset(6,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endField(e){let t=e.endObject();return t}},E_=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsSchema(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsSchema(t,n){return t.setPosition(t.position()+zg),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}endianness(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):e_.Little}fields(e,t){let n=this.bb.__offset(this.bb_pos,6);return n?(t||new T_).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}fieldsLength(){let e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,8);return n?(t||new i_).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__vector_len(this.bb_pos+e):0}features(e){let t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readInt64(this.bb.__vector(this.bb_pos+t)+e*8):BigInt(0)}featuresLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__vector_len(this.bb_pos+e):0}static startSchema(e){e.startObject(4)}static addEndianness(e,t){e.addFieldInt16(0,t,e_.Little)}static addFields(e,t){e.addFieldOffset(1,t,0)}static createFieldsVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startFieldsVector(e,t){e.startVector(4,t,4)}static addCustomMetadata(e,t){e.addFieldOffset(2,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static addFeatures(e,t){e.addFieldOffset(3,t,0)}static createFeaturesVector(e,t){e.startVector(8,t.length,8);for(let n=t.length-1;n>=0;n--)e.addInt64(t[n]);return e.endVector()}static startFeaturesVector(e,t){e.startVector(8,t,8)}static endSchema(e){let t=e.endObject();return t}static finishSchemaBuffer(e,t){e.finish(t)}static finishSizePrefixedSchemaBuffer(e,t){e.finish(t,void 0,!0)}static createSchema(t,n,r,i,a){return e.startSchema(t),e.addEndianness(t,n),e.addFields(t,r),e.addCustomMetadata(t,i),e.addFeatures(t,a),e.endSchema(t)}},D_;(function(e){e[e.NONE=0]=`NONE`,e[e.Schema=1]=`Schema`,e[e.DictionaryBatch=2]=`DictionaryBatch`,e[e.RecordBatch=3]=`RecordBatch`,e[e.Tensor=4]=`Tensor`,e[e.SparseTensor=5]=`SparseTensor`})(D_||={});var q;(function(e){e[e.NONE=0]=`NONE`,e[e.Null=1]=`Null`,e[e.Int=2]=`Int`,e[e.Float=3]=`Float`,e[e.Binary=4]=`Binary`,e[e.Utf8=5]=`Utf8`,e[e.Bool=6]=`Bool`,e[e.Decimal=7]=`Decimal`,e[e.Date=8]=`Date`,e[e.Time=9]=`Time`,e[e.Timestamp=10]=`Timestamp`,e[e.Interval=11]=`Interval`,e[e.List=12]=`List`,e[e.Struct=13]=`Struct`,e[e.Union=14]=`Union`,e[e.FixedSizeBinary=15]=`FixedSizeBinary`,e[e.FixedSizeList=16]=`FixedSizeList`,e[e.Map=17]=`Map`,e[e.Duration=18]=`Duration`,e[e.LargeBinary=19]=`LargeBinary`,e[e.LargeUtf8=20]=`LargeUtf8`,e[e.Dictionary=-1]=`Dictionary`,e[e.Int8=-2]=`Int8`,e[e.Int16=-3]=`Int16`,e[e.Int32=-4]=`Int32`,e[e.Int64=-5]=`Int64`,e[e.Uint8=-6]=`Uint8`,e[e.Uint16=-7]=`Uint16`,e[e.Uint32=-8]=`Uint32`,e[e.Uint64=-9]=`Uint64`,e[e.Float16=-10]=`Float16`,e[e.Float32=-11]=`Float32`,e[e.Float64=-12]=`Float64`,e[e.DateDay=-13]=`DateDay`,e[e.DateMillisecond=-14]=`DateMillisecond`,e[e.TimestampSecond=-15]=`TimestampSecond`,e[e.TimestampMillisecond=-16]=`TimestampMillisecond`,e[e.TimestampMicrosecond=-17]=`TimestampMicrosecond`,e[e.TimestampNanosecond=-18]=`TimestampNanosecond`,e[e.TimeSecond=-19]=`TimeSecond`,e[e.TimeMillisecond=-20]=`TimeMillisecond`,e[e.TimeMicrosecond=-21]=`TimeMicrosecond`,e[e.TimeNanosecond=-22]=`TimeNanosecond`,e[e.DenseUnion=-23]=`DenseUnion`,e[e.SparseUnion=-24]=`SparseUnion`,e[e.IntervalDayTime=-25]=`IntervalDayTime`,e[e.IntervalYearMonth=-26]=`IntervalYearMonth`,e[e.DurationSecond=-27]=`DurationSecond`,e[e.DurationMillisecond=-28]=`DurationMillisecond`,e[e.DurationMicrosecond=-29]=`DurationMicrosecond`,e[e.DurationNanosecond=-30]=`DurationNanosecond`})(q||={});var O_;(function(e){e[e.OFFSET=0]=`OFFSET`,e[e.DATA=1]=`DATA`,e[e.VALIDITY=2]=`VALIDITY`,e[e.TYPE=3]=`TYPE`})(O_||={});const k_=void 0;function A_(e){if(e===null)return`null`;if(e===k_)return`undefined`;switch(typeof e){case`number`:return`${e}`;case`bigint`:return`${e}`;case`string`:return`"${e}"`}return typeof e[Symbol.toPrimitive]==`function`?e[Symbol.toPrimitive](`string`):ArrayBuffer.isView(e)?e instanceof BigInt64Array||e instanceof BigUint64Array?`[${[...e].map(e=>A_(e))}]`:`[${e}]`:ArrayBuffer.isView(e)?`[${e}]`:JSON.stringify(e,(e,t)=>typeof t==`bigint`?`${t}`:t)}function j_(e){if(typeof e==`bigint`&&(e<-(2**53-1)||e>2**53-1))throw TypeError(`${e} is not safe to convert to a number.`);return Number(e)}function M_(e,t){return j_(e/t)+j_(e%t)/j_(t)}const N_=Symbol.for(`isArrowBigNum`);function P_(e,...t){return t.length===0?Object.setPrototypeOf(dg(this.TypedArray,e),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(e,...t),this.constructor.prototype)}P_.prototype[N_]=!0,P_.prototype.toJSON=function(){return`"${V_(this)}"`},P_.prototype.valueOf=function(e){return B_(this,e)},P_.prototype.toString=function(){return V_(this)},P_.prototype[Symbol.toPrimitive]=function(e=`default`){switch(e){case`number`:return B_(this);case`string`:return V_(this);case`default`:return H_(this)}return V_(this)};function F_(...e){return P_.apply(this,e)}function I_(...e){return P_.apply(this,e)}function L_(...e){return P_.apply(this,e)}Object.setPrototypeOf(F_.prototype,Object.create(Int32Array.prototype)),Object.setPrototypeOf(I_.prototype,Object.create(Uint32Array.prototype)),Object.setPrototypeOf(L_.prototype,Object.create(Uint32Array.prototype)),Object.assign(F_.prototype,P_.prototype,{constructor:F_,signed:!0,TypedArray:Int32Array,BigIntArray:BigInt64Array}),Object.assign(I_.prototype,P_.prototype,{constructor:I_,signed:!1,TypedArray:Uint32Array,BigIntArray:BigUint64Array}),Object.assign(L_.prototype,P_.prototype,{constructor:L_,signed:!0,TypedArray:Uint32Array,BigIntArray:BigUint64Array});const R_=BigInt(4294967296)*BigInt(4294967296),z_=R_-BigInt(1);function B_(e,t){let{buffer:n,byteOffset:r,byteLength:i,signed:a}=e,o=new BigUint64Array(n,r,i/8),s=a&&o.at(-1)&BigInt(1)<=0)return U_(e);t=t.slice();let r=1;for(let e=0;e(e.children=null,e.ArrayType=Array,e.OffsetArrayType=Int32Array,e[Symbol.toStringTag]=`DataType`))(pv.prototype);var mv=class extends pv{constructor(){super(q.Null)}toString(){return`Null`}};K_=Symbol.toStringTag,mv[K_]=(e=>e[Symbol.toStringTag]=`Null`)(mv.prototype);var hv=class extends pv{constructor(e,t){super(q.Int),this.isSigned=e,this.bitWidth=t}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?BigInt64Array:BigUint64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`${this.isSigned?`I`:`Ui`}nt${this.bitWidth}`}};q_=Symbol.toStringTag,hv[q_]=(e=>(e.isSigned=null,e.bitWidth=null,e[Symbol.toStringTag]=`Int`))(hv.prototype);var gv=class extends hv{constructor(){super(!0,8)}get ArrayType(){return Int8Array}},_v=class extends hv{constructor(){super(!0,16)}get ArrayType(){return Int16Array}},vv=class extends hv{constructor(){super(!0,32)}get ArrayType(){return Int32Array}},yv=class extends hv{constructor(){super(!0,64)}get ArrayType(){return BigInt64Array}},bv=class extends hv{constructor(){super(!1,8)}get ArrayType(){return Uint8Array}},xv=class extends hv{constructor(){super(!1,16)}get ArrayType(){return Uint16Array}},Sv=class extends hv{constructor(){super(!1,32)}get ArrayType(){return Uint32Array}},Cv=class extends hv{constructor(){super(!1,64)}get ArrayType(){return BigUint64Array}};Object.defineProperty(gv.prototype,`ArrayType`,{value:Int8Array}),Object.defineProperty(_v.prototype,`ArrayType`,{value:Int16Array}),Object.defineProperty(vv.prototype,`ArrayType`,{value:Int32Array}),Object.defineProperty(yv.prototype,`ArrayType`,{value:BigInt64Array}),Object.defineProperty(bv.prototype,`ArrayType`,{value:Uint8Array}),Object.defineProperty(xv.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(Sv.prototype,`ArrayType`,{value:Uint32Array}),Object.defineProperty(Cv.prototype,`ArrayType`,{value:BigUint64Array});var wv=class extends pv{constructor(e){super(q.Float),this.precision=e}get ArrayType(){switch(this.precision){case Mg.HALF:return Uint16Array;case Mg.SINGLE:return Float32Array;case Mg.DOUBLE:return Float64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`Float${this.precision<<5||16}`}};J_=Symbol.toStringTag,wv[J_]=(e=>(e.precision=null,e[Symbol.toStringTag]=`Float`))(wv.prototype);var Tv=class extends wv{constructor(){super(Mg.HALF)}},Ev=class extends wv{constructor(){super(Mg.SINGLE)}},Dv=class extends wv{constructor(){super(Mg.DOUBLE)}};Object.defineProperty(Tv.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(Ev.prototype,`ArrayType`,{value:Float32Array}),Object.defineProperty(Dv.prototype,`ArrayType`,{value:Float64Array});var Ov=class extends pv{constructor(){super(q.Binary)}toString(){return`Binary`}};Y_=Symbol.toStringTag,Ov[Y_]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Binary`))(Ov.prototype);var kv=class extends pv{constructor(){super(q.LargeBinary)}toString(){return`LargeBinary`}};X_=Symbol.toStringTag,kv[X_]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeBinary`))(kv.prototype);var Av=class extends pv{constructor(){super(q.Utf8)}toString(){return`Utf8`}};Z_=Symbol.toStringTag,Av[Z_]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Utf8`))(Av.prototype);var jv=class extends pv{constructor(){super(q.LargeUtf8)}toString(){return`LargeUtf8`}};Q_=Symbol.toStringTag,jv[Q_]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeUtf8`))(jv.prototype);var Mv=class extends pv{constructor(){super(q.Bool)}toString(){return`Bool`}};$_=Symbol.toStringTag,Mv[$_]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Bool`))(Mv.prototype);var Nv=class extends pv{constructor(e,t,n=128){super(q.Decimal),this.scale=e,this.precision=t,this.bitWidth=n}toString(){return`Decimal[${this.precision}e${this.scale>0?`+`:``}${this.scale}]`}};ev=Symbol.toStringTag,Nv[ev]=(e=>(e.scale=null,e.precision=null,e.ArrayType=Uint32Array,e[Symbol.toStringTag]=`Decimal`))(Nv.prototype);var Pv=class extends pv{constructor(e){super(q.Date),this.unit=e}toString(){return`Date${(this.unit+1)*32}<${Ng[this.unit]}>`}get ArrayType(){return this.unit===Ng.DAY?Int32Array:BigInt64Array}};tv=Symbol.toStringTag,Pv[tv]=(e=>(e.unit=null,e[Symbol.toStringTag]=`Date`))(Pv.prototype);var Fv=class extends pv{constructor(e,t){super(q.Time),this.unit=e,this.bitWidth=t}toString(){return`Time${this.bitWidth}<${Pg[this.unit]}>`}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return BigInt64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}};nv=Symbol.toStringTag,Fv[nv]=(e=>(e.unit=null,e.bitWidth=null,e[Symbol.toStringTag]=`Time`))(Fv.prototype);var Iv=class extends pv{constructor(e,t){super(q.Timestamp),this.unit=e,this.timezone=t}toString(){return`Timestamp<${Pg[this.unit]}${this.timezone?`, ${this.timezone}`:``}>`}};rv=Symbol.toStringTag,Iv[rv]=(e=>(e.unit=null,e.timezone=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Timestamp`))(Iv.prototype);var Lv=class extends pv{constructor(e){super(q.Interval),this.unit=e}toString(){return`Interval<${Fg[this.unit]}>`}};iv=Symbol.toStringTag,Lv[iv]=(e=>(e.unit=null,e.ArrayType=Int32Array,e[Symbol.toStringTag]=`Interval`))(Lv.prototype);var Rv=class extends pv{constructor(e){super(q.Duration),this.unit=e}toString(){return`Duration<${Pg[this.unit]}>`}};av=Symbol.toStringTag,Rv[av]=(e=>(e.unit=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Duration`))(Rv.prototype);var zv=class extends pv{constructor(e){super(q.List),this.children=[e]}toString(){return`List<${this.valueType}>`}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};ov=Symbol.toStringTag,zv[ov]=(e=>(e.children=null,e[Symbol.toStringTag]=`List`))(zv.prototype);var Bv=class extends pv{constructor(e){super(q.Struct),this.children=e}toString(){return`Struct<{${this.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};sv=Symbol.toStringTag,Bv[sv]=(e=>(e.children=null,e[Symbol.toStringTag]=`Struct`))(Bv.prototype);var Vv=class extends pv{constructor(e,t,n){super(q.Union),this.mode=e,this.children=n,this.typeIds=t=Int32Array.from(t),this.typeIdToChildIndex=t.reduce((e,t,n)=>(e[t]=n)&&e||e,Object.create(null))}toString(){return`${this[Symbol.toStringTag]}<${this.children.map(e=>`${e.type}`).join(` | `)}>`}};cv=Symbol.toStringTag,Vv[cv]=(e=>(e.mode=null,e.typeIds=null,e.children=null,e.typeIdToChildIndex=null,e.ArrayType=Int8Array,e[Symbol.toStringTag]=`Union`))(Vv.prototype);var Hv=class extends pv{constructor(e){super(q.FixedSizeBinary),this.byteWidth=e}toString(){return`FixedSizeBinary[${this.byteWidth}]`}};lv=Symbol.toStringTag,Hv[lv]=(e=>(e.byteWidth=null,e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`FixedSizeBinary`))(Hv.prototype);var Uv=class extends pv{constructor(e,t){super(q.FixedSizeList),this.listSize=e,this.children=[t]}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}};uv=Symbol.toStringTag,Uv[uv]=(e=>(e.children=null,e.listSize=null,e[Symbol.toStringTag]=`FixedSizeList`))(Uv.prototype);var Wv=class extends pv{constructor(e,t=!1){var n,r,i;if(super(q.Map),this.children=[e],this.keysSorted=t,e&&(e.name=`entries`,(n=e?.type)?.children)){let t=(r=e?.type)?.children[0];t&&(t.name=`key`);let n=(i=e?.type)?.children[1];n&&(n.name=`value`)}}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return`Map<{${this.children[0].type.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};dv=Symbol.toStringTag,Wv[dv]=(e=>(e.children=null,e.keysSorted=null,e[Symbol.toStringTag]=`Map_`))(Wv.prototype);const Gv=(e=>()=>++e)(-1);var Kv=class extends pv{constructor(e,t,n,r){super(q.Dictionary),this.indices=t,this.dictionary=e,this.isOrdered=r||!1,this.id=n==null?Gv():j_(n)}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return`Dictionary<${this.indices}, ${this.dictionary}>`}};fv=Symbol.toStringTag,Kv[fv]=(e=>(e.id=null,e.indices=null,e.isOrdered=null,e.dictionary=null,e[Symbol.toStringTag]=`Dictionary`))(Kv.prototype);function qv(e){let t=e;switch(e.typeId){case q.Decimal:return e.bitWidth/32;case q.Interval:return 1+t.unit;case q.FixedSizeList:return t.listSize;case q.FixedSizeBinary:return t.byteWidth;default:return 1}}var Jv=class{visitMany(e,...t){return e.map((e,n)=>this.visit(e,...t.map(e=>e[n])))}visit(...e){return this.getVisitFn(e[0],!1).apply(this,e)}getVisitFn(e,t=!0){return Yv(this,e,t)}getVisitFnByTypeId(e,t=!0){return Xv(this,e,t)}visitNull(e,...t){return null}visitBool(e,...t){return null}visitInt(e,...t){return null}visitFloat(e,...t){return null}visitUtf8(e,...t){return null}visitLargeUtf8(e,...t){return null}visitBinary(e,...t){return null}visitLargeBinary(e,...t){return null}visitFixedSizeBinary(e,...t){return null}visitDate(e,...t){return null}visitTimestamp(e,...t){return null}visitTime(e,...t){return null}visitDecimal(e,...t){return null}visitList(e,...t){return null}visitStruct(e,...t){return null}visitUnion(e,...t){return null}visitDictionary(e,...t){return null}visitInterval(e,...t){return null}visitDuration(e,...t){return null}visitFixedSizeList(e,...t){return null}visitMap(e,...t){return null}};function Yv(e,t,n=!0){return typeof t==`number`?Xv(e,t,n):typeof t==`string`&&t in q?Xv(e,q[t],n):t&&t instanceof pv?Xv(e,Zv(t),n):t?.type&&t.type instanceof pv?Xv(e,Zv(t.type),n):Xv(e,q.NONE,n)}function Xv(e,t,n=!0){let r=null;switch(t){case q.Null:r=e.visitNull;break;case q.Bool:r=e.visitBool;break;case q.Int:r=e.visitInt;break;case q.Int8:r=e.visitInt8||e.visitInt;break;case q.Int16:r=e.visitInt16||e.visitInt;break;case q.Int32:r=e.visitInt32||e.visitInt;break;case q.Int64:r=e.visitInt64||e.visitInt;break;case q.Uint8:r=e.visitUint8||e.visitInt;break;case q.Uint16:r=e.visitUint16||e.visitInt;break;case q.Uint32:r=e.visitUint32||e.visitInt;break;case q.Uint64:r=e.visitUint64||e.visitInt;break;case q.Float:r=e.visitFloat;break;case q.Float16:r=e.visitFloat16||e.visitFloat;break;case q.Float32:r=e.visitFloat32||e.visitFloat;break;case q.Float64:r=e.visitFloat64||e.visitFloat;break;case q.Utf8:r=e.visitUtf8;break;case q.LargeUtf8:r=e.visitLargeUtf8;break;case q.Binary:r=e.visitBinary;break;case q.LargeBinary:r=e.visitLargeBinary;break;case q.FixedSizeBinary:r=e.visitFixedSizeBinary;break;case q.Date:r=e.visitDate;break;case q.DateDay:r=e.visitDateDay||e.visitDate;break;case q.DateMillisecond:r=e.visitDateMillisecond||e.visitDate;break;case q.Timestamp:r=e.visitTimestamp;break;case q.TimestampSecond:r=e.visitTimestampSecond||e.visitTimestamp;break;case q.TimestampMillisecond:r=e.visitTimestampMillisecond||e.visitTimestamp;break;case q.TimestampMicrosecond:r=e.visitTimestampMicrosecond||e.visitTimestamp;break;case q.TimestampNanosecond:r=e.visitTimestampNanosecond||e.visitTimestamp;break;case q.Time:r=e.visitTime;break;case q.TimeSecond:r=e.visitTimeSecond||e.visitTime;break;case q.TimeMillisecond:r=e.visitTimeMillisecond||e.visitTime;break;case q.TimeMicrosecond:r=e.visitTimeMicrosecond||e.visitTime;break;case q.TimeNanosecond:r=e.visitTimeNanosecond||e.visitTime;break;case q.Decimal:r=e.visitDecimal;break;case q.List:r=e.visitList;break;case q.Struct:r=e.visitStruct;break;case q.Union:r=e.visitUnion;break;case q.DenseUnion:r=e.visitDenseUnion||e.visitUnion;break;case q.SparseUnion:r=e.visitSparseUnion||e.visitUnion;break;case q.Dictionary:r=e.visitDictionary;break;case q.Interval:r=e.visitInterval;break;case q.IntervalDayTime:r=e.visitIntervalDayTime||e.visitInterval;break;case q.IntervalYearMonth:r=e.visitIntervalYearMonth||e.visitInterval;break;case q.Duration:r=e.visitDuration;break;case q.DurationSecond:r=e.visitDurationSecond||e.visitDuration;break;case q.DurationMillisecond:r=e.visitDurationMillisecond||e.visitDuration;break;case q.DurationMicrosecond:r=e.visitDurationMicrosecond||e.visitDuration;break;case q.DurationNanosecond:r=e.visitDurationNanosecond||e.visitDuration;break;case q.FixedSizeList:r=e.visitFixedSizeList;break;case q.Map:r=e.visitMap;break}if(typeof r==`function`)return r;if(!n)return()=>null;throw Error(`Unrecognized type '${q[t]}'`)}function Zv(e){switch(e.typeId){case q.Null:return q.Null;case q.Int:{let{bitWidth:t,isSigned:n}=e;switch(t){case 8:return n?q.Int8:q.Uint8;case 16:return n?q.Int16:q.Uint16;case 32:return n?q.Int32:q.Uint32;case 64:return n?q.Int64:q.Uint64}return q.Int}case q.Float:switch(e.precision){case Mg.HALF:return q.Float16;case Mg.SINGLE:return q.Float32;case Mg.DOUBLE:return q.Float64}return q.Float;case q.Binary:return q.Binary;case q.LargeBinary:return q.LargeBinary;case q.Utf8:return q.Utf8;case q.LargeUtf8:return q.LargeUtf8;case q.Bool:return q.Bool;case q.Decimal:return q.Decimal;case q.Time:switch(e.unit){case Pg.SECOND:return q.TimeSecond;case Pg.MILLISECOND:return q.TimeMillisecond;case Pg.MICROSECOND:return q.TimeMicrosecond;case Pg.NANOSECOND:return q.TimeNanosecond}return q.Time;case q.Timestamp:switch(e.unit){case Pg.SECOND:return q.TimestampSecond;case Pg.MILLISECOND:return q.TimestampMillisecond;case Pg.MICROSECOND:return q.TimestampMicrosecond;case Pg.NANOSECOND:return q.TimestampNanosecond}return q.Timestamp;case q.Date:switch(e.unit){case Ng.DAY:return q.DateDay;case Ng.MILLISECOND:return q.DateMillisecond}return q.Date;case q.Interval:switch(e.unit){case Fg.DAY_TIME:return q.IntervalDayTime;case Fg.YEAR_MONTH:return q.IntervalYearMonth}return q.Interval;case q.Duration:switch(e.unit){case Pg.SECOND:return q.DurationSecond;case Pg.MILLISECOND:return q.DurationMillisecond;case Pg.MICROSECOND:return q.DurationMicrosecond;case Pg.NANOSECOND:return q.DurationNanosecond}return q.Duration;case q.Map:return q.Map;case q.List:return q.List;case q.Struct:return q.Struct;case q.Union:switch(e.mode){case jg.Dense:return q.DenseUnion;case jg.Sparse:return q.SparseUnion}return q.Union;case q.FixedSizeBinary:return q.FixedSizeBinary;case q.FixedSizeList:return q.FixedSizeList;case q.Dictionary:return q.Dictionary}throw Error(`Unrecognized type '${q[e.typeId]}'`)}Jv.prototype.visitInt8=null,Jv.prototype.visitInt16=null,Jv.prototype.visitInt32=null,Jv.prototype.visitInt64=null,Jv.prototype.visitUint8=null,Jv.prototype.visitUint16=null,Jv.prototype.visitUint32=null,Jv.prototype.visitUint64=null,Jv.prototype.visitFloat16=null,Jv.prototype.visitFloat32=null,Jv.prototype.visitFloat64=null,Jv.prototype.visitDateDay=null,Jv.prototype.visitDateMillisecond=null,Jv.prototype.visitTimestampSecond=null,Jv.prototype.visitTimestampMillisecond=null,Jv.prototype.visitTimestampMicrosecond=null,Jv.prototype.visitTimestampNanosecond=null,Jv.prototype.visitTimeSecond=null,Jv.prototype.visitTimeMillisecond=null,Jv.prototype.visitTimeMicrosecond=null,Jv.prototype.visitTimeNanosecond=null,Jv.prototype.visitDenseUnion=null,Jv.prototype.visitSparseUnion=null,Jv.prototype.visitIntervalDayTime=null,Jv.prototype.visitIntervalYearMonth=null,Jv.prototype.visitDuration=null,Jv.prototype.visitDurationSecond=null,Jv.prototype.visitDurationMillisecond=null,Jv.prototype.visitDurationMicrosecond=null,Jv.prototype.visitDurationNanosecond=null;const Qv=new Float64Array(1),$v=new Uint32Array(Qv.buffer);function ey(e){let t=(e&31744)>>10,n=(e&1023)/1024,r=(-1)**((e&32768)>>15);switch(t){case 31:return r*(n?NaN:1/0);case 0:return r*(n?6103515625e-14*n:0)}return r*2**(t-15)*(1+n)}function ty(e){if(e!==e)return 32256;Qv[0]=e;let t=($v[1]&2147483648)>>16&65535,n=$v[1]&2146435072,r=0;return n>=1089470464?$v[0]>0?n=31744:(n=(n&2080374784)>>16,r=($v[1]&1048575)>>10):n<=1056964608?(r=1048576+($v[1]&1048575),r=1048576+(r<<(n>>20)-998)>>21,n=0):(n=n-1056964608>>10,r=($v[1]&1048575)+512>>10),t|n|r&65535}var ny=class extends Jv{};function ry(e){return(t,n,r)=>{if(t.setValid(n,r!=null))return e(t,n,r)}}const iy=(e,t,n)=>{e[t]=Math.floor(n/864e5)},ay=(e,t,n,r)=>{if(n+1{let i=e+n;r?t[i>>3]|=1<>3]&=~(1<{e[t]=n},cy=({values:e},t,n)=>{e[t]=n},ly=({values:e},t,n)=>{e[t]=ty(n)},uy=(e,t,n)=>{switch(e.type.precision){case Mg.HALF:return ly(e,t,n);case Mg.SINGLE:case Mg.DOUBLE:return cy(e,t,n)}},dy=({values:e},t,n)=>{iy(e,t,n.valueOf())},fy=({values:e},t,n)=>{e[t]=BigInt(n)},py=({stride:e,values:t},n,r)=>{t.set(r.subarray(0,e),e*n)},my=({values:e,valueOffsets:t},n,r)=>ay(e,t,n,r),hy=({values:e,valueOffsets:t},n,r)=>ay(e,t,n,Uh(r)),gy=(e,t,n)=>{e.type.unit===Ng.DAY?dy(e,t,n):fy(e,t,n)},_y=({values:e},t,n)=>{e[t]=BigInt(n/1e3)},vy=({values:e},t,n)=>{e[t]=BigInt(n)},yy=({values:e},t,n)=>{e[t]=BigInt(n*1e3)},by=({values:e},t,n)=>{e[t]=BigInt(n*1e6)},xy=(e,t,n)=>{switch(e.type.unit){case Pg.SECOND:return _y(e,t,n);case Pg.MILLISECOND:return vy(e,t,n);case Pg.MICROSECOND:return yy(e,t,n);case Pg.NANOSECOND:return by(e,t,n)}},Sy=({values:e},t,n)=>{e[t]=n},Cy=({values:e},t,n)=>{e[t]=n},wy=({values:e},t,n)=>{e[t]=n},Ty=({values:e},t,n)=>{e[t]=n},Ey=(e,t,n)=>{switch(e.type.unit){case Pg.SECOND:return Sy(e,t,n);case Pg.MILLISECOND:return Cy(e,t,n);case Pg.MICROSECOND:return wy(e,t,n);case Pg.NANOSECOND:return Ty(e,t,n)}},Dy=({values:e,stride:t},n,r)=>{e.set(r.subarray(0,t),t*n)},Oy=(e,t,n)=>{let r=e.children[0],i=e.valueOffsets,a=Jy.getVisitFn(r);if(Array.isArray(n))for(let e=-1,o=i[t],s=i[t+1];o{let r=e.children[0],{valueOffsets:i}=e,a=Jy.getVisitFn(r),{[t]:o,[t+1]:s}=i,c=n instanceof Map?n.entries():Object.entries(n);for(let e of c)if(a(r,o,e),++o>=s)break},Ay=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[a]),jy=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(a)),My=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(i.name)),Ny=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[i.name]),Py=(e,t,n)=>{let r=e.type.children.map(e=>Jy.getVisitFn(e.type)),i=n instanceof Map?My(t,n):n instanceof qx?jy(t,n):Array.isArray(n)?Ay(t,n):Ny(t,n);e.type.children.forEach((t,n)=>i(r[n],e.children[n],t,n))},Fy=(e,t,n)=>{e.type.mode===jg.Dense?Iy(e,t,n):Ly(e,t,n)},Iy=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];Jy.visit(i,e.valueOffsets[t],n)},Ly=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];Jy.visit(i,t,n)},Ry=(e,t,n)=>{var r;(r=e.dictionary)==null||r.set(e.values[t],n)},zy=(e,t,n)=>{e.type.unit===Fg.DAY_TIME?By(e,t,n):Vy(e,t,n)},By=({values:e},t,n)=>{e.set(n.subarray(0,2),2*t)},Vy=({values:e},t,n)=>{e[t]=n[0]*12+n[1]%12},Hy=({values:e},t,n)=>{e[t]=n},Uy=({values:e},t,n)=>{e[t]=n},Wy=({values:e},t,n)=>{e[t]=n},Gy=({values:e},t,n)=>{e[t]=n},Ky=(e,t,n)=>{switch(e.type.unit){case Pg.SECOND:return Hy(e,t,n);case Pg.MILLISECOND:return Uy(e,t,n);case Pg.MICROSECOND:return Wy(e,t,n);case Pg.NANOSECOND:return Gy(e,t,n)}},qy=(e,t,n)=>{let{stride:r}=e,i=e.children[0],a=Jy.getVisitFn(i);if(Array.isArray(n))for(let e=-1,o=t*r;++e`${A_(e)}: ${A_(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}[Symbol.iterator](){return new Qy(this[Yy],this[Xy])}},Qy=class{constructor(e,t){this.childIndex=0,this.children=e.children,this.rowIndex=t,this.childFields=e.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){let e=this.childIndex;return ee.name)}has(e,t){return e[Yy].type.children.findIndex(e=>e.name===t)!==-1}getOwnPropertyDescriptor(e,t){if(e[Yy].type.children.findIndex(e=>e.name===t)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[Yy].type.children.findIndex(e=>e.name===t);if(n!==-1){let r=Wb.visit(e[Yy].children[n],e[Xy]);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[Yy].type.children.findIndex(e=>e.name===t);return r===-1?Reflect.has(e,t)||typeof t==`symbol`?Reflect.set(e,t,n):!1:(Jy.visit(e[Yy].children[r],e[Xy],n),Reflect.set(e,t,n))}},eb=class extends Jv{};function tb(e){return(t,n)=>t.getValid(n)?e(t,n):null}const nb=(e,t)=>864e5*e[t],rb=(e,t)=>null,ib=(e,t,n)=>{if(n+1>=t.length)return null;let r=j_(t[n]),i=j_(t[n+1]);return e.subarray(r,i)},ab=({offset:e,values:t},n)=>{let r=e+n,i=t[r>>3];return(i&1<nb(e,t),sb=({values:e},t)=>j_(e[t]),cb=({stride:e,values:t},n)=>t[e*n],lb=({stride:e,values:t},n)=>ey(t[e*n]),ub=({values:e},t)=>e[t],db=({stride:e,values:t},n)=>t.subarray(e*n,e*(n+1)),fb=({values:e,valueOffsets:t},n)=>ib(e,t,n),pb=({values:e,valueOffsets:t},n)=>{let r=ib(e,t,n);return r===null?null:Vh(r)},mb=({values:e},t)=>e[t],hb=({type:e,values:t},n)=>e.precision===Mg.HALF?ey(t[n]):t[n],gb=(e,t)=>e.type.unit===Ng.DAY?ob(e,t):sb(e,t),_b=({values:e},t)=>1e3*j_(e[t]),vb=({values:e},t)=>j_(e[t]),yb=({values:e},t)=>M_(e[t],BigInt(1e3)),bb=({values:e},t)=>M_(e[t],BigInt(1e6)),xb=(e,t)=>{switch(e.type.unit){case Pg.SECOND:return _b(e,t);case Pg.MILLISECOND:return vb(e,t);case Pg.MICROSECOND:return yb(e,t);case Pg.NANOSECOND:return bb(e,t)}},Sb=({values:e},t)=>e[t],Cb=({values:e},t)=>e[t],wb=({values:e},t)=>e[t],Tb=({values:e},t)=>e[t],Eb=(e,t)=>{switch(e.type.unit){case Pg.SECOND:return Sb(e,t);case Pg.MILLISECOND:return Cb(e,t);case Pg.MICROSECOND:return wb(e,t);case Pg.NANOSECOND:return Tb(e,t)}},Db=({values:e,stride:t},n)=>W_.decimal(e.subarray(t*n,t*(n+1))),Ob=(e,t)=>{let{valueOffsets:n,stride:r,children:i}=e,{[t*r]:a,[t*r+1]:o}=n,s=i[0],c=s.slice(a,o-a);return new qx([c])},kb=(e,t)=>{let{valueOffsets:n,children:r}=e,{[t]:i,[t+1]:a}=n,o=r[0];return new Yb(o.slice(i,a-i))},Ab=(e,t)=>new Zy(e,t),jb=(e,t)=>e.type.mode===jg.Dense?Mb(e,t):Nb(e,t),Mb=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return Wb.visit(r,e.valueOffsets[t])},Nb=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return Wb.visit(r,t)},Pb=(e,t)=>{var n;return(n=e.dictionary)?.get(e.values[t])},Fb=(e,t)=>e.type.unit===Fg.DAY_TIME?Ib(e,t):Lb(e,t),Ib=({values:e},t)=>e.subarray(2*t,2*(t+1)),Lb=({values:e},t)=>{let n=e[t],r=new Int32Array(2);return r[0]=Math.trunc(n/12),r[1]=Math.trunc(n%12),r},Rb=({values:e},t)=>e[t],zb=({values:e},t)=>e[t],Bb=({values:e},t)=>e[t],Vb=({values:e},t)=>e[t],Hb=(e,t)=>{switch(e.type.unit){case Pg.SECOND:return Rb(e,t);case Pg.MILLISECOND:return zb(e,t);case Pg.MICROSECOND:return Bb(e,t);case Pg.NANOSECOND:return Vb(e,t)}},Ub=(e,t)=>{let{stride:n,children:r}=e,i=r[0],a=i.slice(t*n,n);return new qx([a])};eb.prototype.visitNull=tb(rb),eb.prototype.visitBool=tb(ab),eb.prototype.visitInt=tb(mb),eb.prototype.visitInt8=tb(cb),eb.prototype.visitInt16=tb(cb),eb.prototype.visitInt32=tb(cb),eb.prototype.visitInt64=tb(ub),eb.prototype.visitUint8=tb(cb),eb.prototype.visitUint16=tb(cb),eb.prototype.visitUint32=tb(cb),eb.prototype.visitUint64=tb(ub),eb.prototype.visitFloat=tb(hb),eb.prototype.visitFloat16=tb(lb),eb.prototype.visitFloat32=tb(cb),eb.prototype.visitFloat64=tb(cb),eb.prototype.visitUtf8=tb(pb),eb.prototype.visitLargeUtf8=tb(pb),eb.prototype.visitBinary=tb(fb),eb.prototype.visitLargeBinary=tb(fb),eb.prototype.visitFixedSizeBinary=tb(db),eb.prototype.visitDate=tb(gb),eb.prototype.visitDateDay=tb(ob),eb.prototype.visitDateMillisecond=tb(sb),eb.prototype.visitTimestamp=tb(xb),eb.prototype.visitTimestampSecond=tb(_b),eb.prototype.visitTimestampMillisecond=tb(vb),eb.prototype.visitTimestampMicrosecond=tb(yb),eb.prototype.visitTimestampNanosecond=tb(bb),eb.prototype.visitTime=tb(Eb),eb.prototype.visitTimeSecond=tb(Sb),eb.prototype.visitTimeMillisecond=tb(Cb),eb.prototype.visitTimeMicrosecond=tb(wb),eb.prototype.visitTimeNanosecond=tb(Tb),eb.prototype.visitDecimal=tb(Db),eb.prototype.visitList=tb(Ob),eb.prototype.visitStruct=tb(Ab),eb.prototype.visitUnion=tb(jb),eb.prototype.visitDenseUnion=tb(Mb),eb.prototype.visitSparseUnion=tb(Nb),eb.prototype.visitDictionary=tb(Pb),eb.prototype.visitInterval=tb(Fb),eb.prototype.visitIntervalDayTime=tb(Ib),eb.prototype.visitIntervalYearMonth=tb(Lb),eb.prototype.visitDuration=tb(Hb),eb.prototype.visitDurationSecond=tb(Rb),eb.prototype.visitDurationMillisecond=tb(zb),eb.prototype.visitDurationMicrosecond=tb(Bb),eb.prototype.visitDurationNanosecond=tb(Vb),eb.prototype.visitFixedSizeList=tb(Ub),eb.prototype.visitMap=tb(kb);const Wb=new eb,Gb=Symbol.for(`keys`),Kb=Symbol.for(`vals`),qb=Symbol.for(`kKeysAsStrings`),Jb=Symbol.for(`_kKeysAsStrings`);var Yb=class{constructor(e){return this[Gb]=new qx([e.children[0]]).memoize(),this[Kb]=e.children[1],new Proxy(this,new Zb)}get[qb](){return this[Jb]||(this[Jb]=Array.from(this[Gb].toArray(),String))}[Symbol.iterator](){return new Xb(this[Gb],this[Kb])}get size(){return this[Gb].length}toArray(){return Object.values(this.toJSON())}toJSON(){let e=this[Gb],t=this[Kb],n={};for(let r=-1,i=e.length;++r`${A_(e)}: ${A_(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}},Xb=class{constructor(e,t){this.keys=e,this.vals=t,this.keyIndex=0,this.numKeys=e.length}[Symbol.iterator](){return this}next(){let e=this.keyIndex;return e===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(e),Wb.visit(this.vals,e)]})}},Zb=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(e){return e[qb]}has(e,t){return e[qb].includes(t)}getOwnPropertyDescriptor(e,t){let n=e[qb].indexOf(t);if(n!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[qb].indexOf(t);if(n!==-1){let r=Wb.visit(Reflect.get(e,Kb),n);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[qb].indexOf(t);return r===-1?Reflect.has(e,t)?Reflect.set(e,t,n):!1:(Jy.visit(Reflect.get(e,Kb),r,n),Reflect.set(e,t,n))}};Object.defineProperties(Yb.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:`Row`},[Gb]:{writable:!0,enumerable:!1,configurable:!1,value:null},[Kb]:{writable:!0,enumerable:!1,configurable:!1,value:null},[Jb]:{writable:!0,enumerable:!1,configurable:!1,value:null}});let Qb;function $b(e,t,n,r){let{length:i=0}=e,a=typeof t==`number`?t:0,o=typeof n==`number`?n:i;return a<0&&(a=(a%i+i)%i),o<0&&(o=(o%i+i)%i),oi&&(o=i),r?r(e,a,o):[a,o]}const ex=(e,t)=>e<0?t+e:e,tx=e=>e!==e;function nx(e){let t=typeof e;if(t!==`object`||e===null)return tx(e)?tx:t=>t===e;if(e instanceof Date){let t=e.valueOf();return e=>e instanceof Date?e.valueOf()===t:!1}return ArrayBuffer.isView(e)?t=>t?xg(e,t):!1:e instanceof Map?ix(e):Array.isArray(e)?rx(e):e instanceof qx?ax(e):ox(e,!0)}function rx(e){let t=[];for(let n=-1,r=e.length;++n!1;let r=[];for(let t=-1,i=n.length;++t{if(!n||typeof n!=`object`)return!1;switch(n.constructor){case Array:return cx(e,n);case Map:return ux(e,n,n.keys());case Yb:case Zy:case Object:case void 0:return ux(e,n,t||Object.keys(n))}return n instanceof qx?lx(e,n):!1}}function cx(e,t){let n=e.length;if(t.length!==n)return!1;for(let r=-1;++r>r}function px(e,t,n){let r=n.byteLength+7&-8;if(e>0||n.byteLength>3):mx(new hx(n,e,t,null,dx)).subarray(0,r)),i}return n}function mx(e){let t=[],n=0,r=0,i=0;for(let a of e)a&&(i|=1<0)&&(t[n++]=i);let a=new Uint8Array(t.length+7&-8);return a.set(t),a}var hx=class{constructor(e,t,n,r,i){this.bytes=e,this.length=n,this.context=r,this.get=i,this.bit=t%8,this.byteIndex=t>>3,this.byte=e[this.byteIndex++],this.index=0}next(){return this.index>3<<3,i=t+(t%8==0?0:8-t%8);return gx(e,t,i)+gx(e,r,n)+_x(e,i>>3,r-i>>3)}function _x(e,t,n){let r=0,i=Math.trunc(t),a=new DataView(e.buffer,e.byteOffset,e.byteLength),o=n===void 0?e.byteLength:i+n;for(;o-i>=4;)r+=vx(a.getUint32(i)),i+=4;for(;o-i>=2;)r+=vx(a.getUint16(i)),i+=2;for(;o-i>=1;)r+=vx(a.getUint8(i)),i+=1;return r}function vx(e){let t=Math.trunc(e);return t-=t>>>1&1431655765,t=(t&858993459)+(t>>>2&858993459),(t+(t>>>4)&252645135)*16843009>>>24}const yx=-1;var bx=class e{get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get nullable(){if(this._nullCount!==0){let{type:e}=this;return pv.isSparseUnion(e)||pv.isDenseUnion(e)?this.children.some(e=>e.nullable):this.nullBitmap&&this.nullBitmap.byteLength>0}return!0}get byteLength(){let e=0,{valueOffsets:t,values:n,nullBitmap:r,typeIds:i}=this;return t&&(e+=t.byteLength),n&&(e+=n.byteLength),r&&(e+=r.byteLength),i&&(e+=i.byteLength),this.children.reduce((e,t)=>e+t.byteLength,e)}get nullCount(){if(pv.isUnion(this.type))return this.children.reduce((e,t)=>e+t.nullCount,0);let e=this._nullCount,t;return e<=yx&&(t=this.nullBitmap)&&(this._nullCount=e=t.length===0?0:this.length-gx(t,this.offset,this.offset+this.length)),e}constructor(t,n,r,i,a,o=[],s){this.type=t,this.children=o,this.dictionary=s,this.offset=Math.floor(Math.max(n||0,0)),this.length=Math.floor(Math.max(r||0,0)),this._nullCount=Math.floor(Math.max(i||0,-1));let c;a instanceof e?(this.stride=a.stride,this.values=a.values,this.typeIds=a.typeIds,this.nullBitmap=a.nullBitmap,this.valueOffsets=a.valueOffsets):(this.stride=qv(t),a&&((c=a[0])&&(this.valueOffsets=c),(c=a[1])&&(this.values=c),(c=a[2])&&(this.nullBitmap=c),(c=a[3])&&(this.typeIds=c)))}getValid(e){let{type:t}=this;if(pv.isUnion(t)){let n=t,r=this.children[n.typeIdToChildIndex[this.typeIds[e]]],i=n.mode===jg.Dense?this.valueOffsets[e]:e;return r.getValid(i)}if(this.nullable&&this.nullCount>0){let t=this.offset+e,n=this.nullBitmap[t>>3];return(n&1<>3;(!r||r.byteLength<=c)&&(r=new Uint8Array((i+a+63&-64)>>3).fill(255),this.nullCount>0?(r.set(px(i,a,this.nullBitmap),0),Object.assign(this,{nullBitmap:r})):Object.assign(this,{nullBitmap:r,_nullCount:0}));let l=r[c];n=(l&s)!==0,r[c]=t?l|s:l&~s}return n!==!!t&&(this._nullCount=this.nullCount+(t?-1:1)),t}clone(t=this.type,n=this.offset,r=this.length,i=this._nullCount,a=this,o=this.children){return new e(t,n,r,i,a,o,this.dictionary)}slice(e,t){let{stride:n,typeId:r,children:i}=this,a=(this._nullCount===0)-1,o=r===16?n:1,s=this._sliceBuffers(e,t,n,r);return this.clone(this.type,this.offset+e,t,a,s,i.length===0||this.valueOffsets?i:this._sliceChildren(i,o*e,o*t))}_changeLengthAndBackfillNullBitmap(e){if(this.typeId===q.Null)return this.clone(this.type,0,e,0);let{length:t,nullCount:n}=this,r=new Uint8Array((e+63&-64)>>3).fill(255,0,t>>3);r[t>>3]=(1<0&&r.set(px(this.offset,t,this.nullBitmap),0);let i=this.buffers;return i[O_.VALIDITY]=r,this.clone(this.type,0,e,n+(e-t),i)}_sliceBuffers(e,t,n,r){let i,{buffers:a}=this;return(i=a[O_.TYPE])&&(a[O_.TYPE]=i.subarray(e,e+t)),(i=a[O_.OFFSET])&&(a[O_.OFFSET]=i.subarray(e,e+t+1))||(i=a[O_.DATA])&&(a[O_.DATA]=r===6?i:i.subarray(n*e,n*(e+t))),a}_sliceChildren(e,t,n){return e.map(e=>e.slice(t,n))}};bx.prototype.children=Object.freeze([]);var xx=class e extends Jv{visit(e){return this.getVisitFn(e.type).call(this,e)}visitNull(e){let{type:t,offset:n=0,length:r=0}=e;return new bx(t,n,r,r)}visitBool(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length>>3,nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitInt(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitFloat(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitUtf8(e){let{type:t,offset:n=0}=e,r=mg(e.data),i=mg(e.nullBitmap),a=fg(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new bx(t,n,o,s,[a,r,i])}visitLargeUtf8(e){let{type:t,offset:n=0}=e,r=mg(e.data),i=mg(e.nullBitmap),a=pg(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new bx(t,n,o,s,[a,r,i])}visitBinary(e){let{type:t,offset:n=0}=e,r=mg(e.data),i=mg(e.nullBitmap),a=fg(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new bx(t,n,o,s,[a,r,i])}visitLargeBinary(e){let{type:t,offset:n=0}=e,r=mg(e.data),i=mg(e.nullBitmap),a=pg(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new bx(t,n,o,s,[a,r,i])}visitFixedSizeBinary(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length/qv(t),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitDate(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length/qv(t),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitTimestamp(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length/qv(t),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitTime(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length/qv(t),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitDecimal(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length/qv(t),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitList(e){let{type:t,offset:n=0,child:r}=e,i=mg(e.nullBitmap),a=fg(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new bx(t,n,o,s,[a,void 0,i],[r])}visitStruct(e){let{type:t,offset:n=0,children:r=[]}=e,i=mg(e.nullBitmap),{length:a=r.reduce((e,{length:t})=>Math.max(e,t),0),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,void 0,i],r)}visitUnion(e){let{type:t,offset:n=0,children:r=[]}=e,i=dg(t.ArrayType,e.typeIds),{length:a=i.length,nullCount:o=-1}=e;if(pv.isSparseUnion(t))return new bx(t,n,a,o,[void 0,void 0,void 0,i],r);let s=fg(e.valueOffsets);return new bx(t,n,a,o,[s,void 0,void 0,i],r)}visitDictionary(t){let{type:n,offset:r=0}=t,i=mg(t.nullBitmap),a=dg(n.indices.ArrayType,t.data),{dictionary:o=new qx([new e().visit({type:n.dictionary})])}=t,{length:s=a.length,nullCount:c=t.nullBitmap?-1:0}=t;return new bx(n,r,s,c,[void 0,a,i],[],o)}visitInterval(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length/qv(t),nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitDuration(e){let{type:t,offset:n=0}=e,r=mg(e.nullBitmap),i=dg(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new bx(t,n,a,o,[void 0,i,r])}visitFixedSizeList(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.valueType})}=t,a=mg(t.nullBitmap),{length:o=i.length/qv(n),nullCount:s=t.nullBitmap?-1:0}=t;return new bx(n,r,o,s,[void 0,void 0,a],[i])}visitMap(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.childType})}=t,a=mg(t.nullBitmap),o=fg(t.valueOffsets),{length:s=o.length-1,nullCount:c=t.nullBitmap?-1:0}=t;return new bx(n,r,s,c,[o,void 0,a],[i])}};const Sx=new xx;function Cx(e){return Sx.visit(e)}var wx=class{constructor(e=0,t){this.numChunks=e,this.getChunkIterator=t,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndexe.nullable)}function Ex(e){return e.reduce((e,t)=>e+t.nullCount,0)}function Dx(e){return e.reduce((e,t,n)=>(e[n+1]=e[n]+t.length,e),new Uint32Array(e.length+1))}function Ox(e,t,n,r){let i=[];for(let a=-1,o=e.length;++a=r)break;if(n>=s+c)continue;if(s>=n&&s+c<=r){i.push(o);continue}let l=Math.max(0,n-s),u=Math.min(r-s,c);i.push(o.slice(l,u-l))}return i.length===0&&i.push(e[0].slice(0,0)),i}function kx(e,t,n,r){let i=0,a=0,o=t.length-1;do{if(i>=o-1)return n0?0:-1}function Ix(e,t){let{nullBitmap:n}=e;if(!n||e.nullCount<=0)return-1;let r=0;for(let i of new hx(n,e.offset+(t||0),e.length,n,dx)){if(!i)return r;++r}return-1}function Lx(e,t,n){if(t===void 0)return-1;if(t===null)switch(e.typeId){case q.Union:break;case q.Dictionary:break;default:return Ix(e,n)}let r=Wb.getVisitFn(e),i=nx(t);for(let t=(n||0)-1,a=e.length;++t{let n=e.data[t];return n.values.subarray(0,n.length)[Symbol.iterator]()});let n=0;return new wx(e.data.length,t=>{let r=e.data[t],i=r.length,a=e.slice(n,n+i);return n+=i,new Hx(a)})}var Hx=class{constructor(e){this.vector=e,this.index=0}next(){return this.indexe.data):t;if(a.length===0||a.some(e=>!(e instanceof bx)))throw TypeError(`Vector constructor expects an Array of Data instances.`);let o=(n=a[0])?.type;switch(a.length){case 0:this._offsets=[0];break;case 1:{let{get:e,set:t,indexOf:n}=Gx[o.typeId],r=a[0];this.isValid=e=>Ax(r,e),this.get=t=>e(r,t),this.set=(e,n)=>t(r,e,n),this.indexOf=e=>n(r,e),this._offsets=[0,r.length];break}default:Object.setPrototypeOf(this,Kx[o.typeId]),this._offsets=Dx(a);break}this.data=a,this.type=o,this.stride=qv(o),this.numChildren=(i=(r=o.children)?.length)??0,this.length=this._offsets.at(-1)}get byteLength(){return this.data.reduce((e,t)=>e+t.byteLength,0)}get nullable(){return Tx(this.data)}get nullCount(){return Ex(this.data)}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return`${this.VectorName}<${this.type[Symbol.toStringTag]}>`}get VectorName(){return`${q[this.type.typeId]}Vector`}isValid(e){return!1}get(e){return null}at(e){return this.get(ex(e,this.length))}set(e,t){}indexOf(e,t){return-1}includes(e,t){return this.indexOf(e,t)>-1}[Symbol.iterator](){return Ux.visit(this)}concat(...t){return new e(this.data.concat(t.flatMap(e=>e.data).flat(1/0)))}slice(t,n){return new e($b(this,t,n,({data:e,_offsets:t},n,r)=>Ox(e,t,n,r)))}toJSON(){return[...this]}toArray(){let{type:e,data:t,length:n,stride:r,ArrayType:i}=this;switch(e.typeId){case q.Int:case q.Float:case q.Decimal:case q.Time:case q.Timestamp:switch(t.length){case 0:return new i;case 1:return t[0].values.subarray(0,n*r);default:return t.reduce((e,{values:t,length:n})=>(e.array.set(t.subarray(0,n*r),e.offset),e.offset+=n*r,e),{array:new i(n*r),offset:0}).array}}return[...this]}toString(){return`[${[...this].join(`,`)}]`}getChild(e){var t;return this.getChildAt((t=this.type.children)?.findIndex(t=>t.name===e))}getChildAt(t){return t>-1&&te[t])):null}get isMemoized(){return pv.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(pv.isDictionary(this.type)){let t=new Jx(this.data[0].dictionary),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return new Jx(this)}unmemoize(){if(pv.isDictionary(this.type)&&this.isMemoized){let t=this.data[0].dictionary.unmemoize(),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return this}};Wx=Symbol.toStringTag,qx[Wx]=(e=>{e.type=pv.prototype,e.data=[],e.length=0,e.stride=1,e.numChildren=0,e._offsets=new Uint32Array([0]),e[Symbol.isConcatSpreadable]=!0;let t=Object.keys(q).map(e=>q[e]).filter(e=>typeof e==`number`&&e!==q.NONE);for(let n of t){let t=Wb.getVisitFnByTypeId(n),r=Jy.getVisitFnByTypeId(n),i=zx.getVisitFnByTypeId(n);Gx[n]={get:t,set:r,indexOf:i},Kx[n]=Object.create(e,{isValid:{value:jx(Ax)},get:{value:jx(Wb.getVisitFnByTypeId(n))},set:{value:Mx(Jy.getVisitFnByTypeId(n))},indexOf:{value:Nx(zx.getVisitFnByTypeId(n))}})}return`Vector`})(qx.prototype);var Jx=class e extends qx{constructor(t){super(t.data);let n=this.get,r=this.set,i=this.slice,a=Array(this.length);Object.defineProperty(this,`get`,{value(e){let t=a[e];if(t!==void 0)return t;let r=n.call(this,e);return a[e]=r,r}}),Object.defineProperty(this,`set`,{value(e,t){r.call(this,e,t),a[e]=t}}),Object.defineProperty(this,`slice`,{value:(t,n)=>new e(i.call(this,t,n))}),Object.defineProperty(this,`isMemoized`,{value:!0}),Object.defineProperty(this,`unmemoize`,{value:()=>new qx(this.data)}),Object.defineProperty(this,`memoize`,{value:()=>this})}},Yx=class{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}offset(){return this.bb.readInt64(this.bb_pos)}metaDataLength(){return this.bb.readInt32(this.bb_pos+8)}bodyLength(){return this.bb.readInt64(this.bb_pos+16)}static sizeOf(){return 24}static createBlock(e,t,n,r){return e.prep(8,24),e.writeInt64(BigInt(r??0)),e.pad(4),e.writeInt32(n),e.writeInt64(BigInt(t??0)),e.offset()}},Xx=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsFooter(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsFooter(t,n){return t.setPosition(t.position()+zg),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}version(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):Ag.V1}schema(e){let t=this.bb.__offset(this.bb_pos,6);return t?(e||new E_).__init(this.bb.__indirect(this.bb_pos+t),this.bb):null}dictionaries(e,t){let n=this.bb.__offset(this.bb_pos,8);return n?(t||new Yx).__init(this.bb.__vector(this.bb_pos+n)+e*24,this.bb):null}dictionariesLength(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__vector_len(this.bb_pos+e):0}recordBatches(e,t){let n=this.bb.__offset(this.bb_pos,10);return n?(t||new Yx).__init(this.bb.__vector(this.bb_pos+n)+e*24,this.bb):null}recordBatchesLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,12);return n?(t||new i_).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__vector_len(this.bb_pos+e):0}static startFooter(e){e.startObject(5)}static addVersion(e,t){e.addFieldInt16(0,t,Ag.V1)}static addSchema(e,t){e.addFieldOffset(1,t,0)}static addDictionaries(e,t){e.addFieldOffset(2,t,0)}static startDictionariesVector(e,t){e.startVector(24,t,8)}static addRecordBatches(e,t){e.addFieldOffset(3,t,0)}static startRecordBatchesVector(e,t){e.startVector(24,t,8)}static addCustomMetadata(e,t){e.addFieldOffset(4,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endFooter(e){let t=e.endObject();return t}static finishFooterBuffer(e,t){e.finish(t)}static finishSizePrefixedFooterBuffer(e,t){e.finish(t,void 0,!0)}},Zx=class e{constructor(e=[],t,n,r=Ag.V5){this.fields=e||[],this.metadata=t||new Map,n||=eS(this.fields),this.dictionaries=n,this.metadataVersion=r}get[Symbol.toStringTag](){return`Schema`}get names(){return this.fields.map(e=>e.name)}toString(){return`Schema<{ ${this.fields.map((e,t)=>`${t}: ${e}`).join(`, `)} }>`}select(t){let n=new Set(t),r=this.fields.filter(e=>n.has(e.name));return new e(r,this.metadata)}selectAt(t){let n=t.map(e=>this.fields[e]).filter(Boolean);return new e(n,this.metadata)}assign(...t){let n=t[0]instanceof e?t[0]:Array.isArray(t[0])?new e(t[0]):new e(t),r=[...this.fields],i=$x($x(new Map,this.metadata),n.metadata),a=n.fields.filter(e=>{let t=r.findIndex(t=>t.name===e.name);return~t?(r[t]=e.clone({metadata:$x($x(new Map,r[t].metadata),e.metadata)}))&&!1:!0}),o=eS(a,new Map);return new e([...r,...a],i,new Map([...this.dictionaries,...o]))}};Zx.prototype.fields=null,Zx.prototype.metadata=null,Zx.prototype.dictionaries=null;var Qx=class e{static new(...t){let[n,r,i,a]=t;return t[0]&&typeof t[0]==`object`&&({name:n}=t[0],r===void 0&&(r=t[0].type),i===void 0&&(i=t[0].nullable),a===void 0&&(a=t[0].metadata)),new e(`${n}`,r,i,a)}constructor(e,t,n=!1,r){this.name=e,this.type=t,this.nullable=n,this.metadata=r||new Map}get typeId(){return this.type.typeId}get[Symbol.toStringTag](){return`Field`}toString(){return`${this.name}: ${this.type}`}clone(...t){let[n,r,i,a]=t;return!t[0]||typeof t[0]!=`object`?[n=this.name,r=this.type,i=this.nullable,a=this.metadata]=t:{name:n=this.name,type:r=this.type,nullable:i=this.nullable,metadata:a=this.metadata}=t[0],e.new(n,r,i,a)}};Qx.prototype.type=null,Qx.prototype.name=null,Qx.prototype.nullable=null,Qx.prototype.metadata=null;function $x(e,t){return new Map([...e||new Map,...t||new Map])}function eS(e,t=new Map){for(let n=-1,r=e.length;++n0&&eS(i.children,t)}return t}var tS=Kg,nS=Gg,rS=class{static decode(e){e=new nS(mg(e));let t=Xx.getRootAsFooter(e),n=Zx.decode(t.schema(),new Map,t.version());return new iS(n,t)}static encode(e){let t=new tS,n=Zx.encode(t,e.schema);Xx.startRecordBatchesVector(t,e.numRecordBatches);for(let n of[...e.recordBatches()].slice().reverse())aS.encode(t,n);let r=t.endVector();Xx.startDictionariesVector(t,e.numDictionaries);for(let n of[...e.dictionaryBatches()].slice().reverse())aS.encode(t,n);let i=t.endVector();return Xx.startFooter(t),Xx.addSchema(t,n),Xx.addVersion(t,Ag.V5),Xx.addRecordBatches(t,r),Xx.addDictionaries(t,i),Xx.finishFooterBuffer(t,Xx.endFooter(t)),t.asUint8Array()}get numRecordBatches(){return this._recordBatches.length}get numDictionaries(){return this._dictionaryBatches.length}constructor(e,t=Ag.V5,n,r){this.schema=e,this.version=t,n&&(this._recordBatches=n),r&&(this._dictionaryBatches=r)}*recordBatches(){for(let e,t=-1,n=this.numRecordBatches;++t=0&&e=0&&e=0&&e=0&&ethis._closedPromiseResolve=e)}get closed(){return this._closedPromise}cancel(e){return Ph(this,void 0,void 0,function*(){yield this.return(e)})}write(e){this._ensureOpen()&&(this.resolvers.length<=0?this._values.push(e):this.resolvers.shift().resolve({done:!1,value:e}))}abort(e){this._closedPromiseResolve&&(this.resolvers.length<=0?this._error={error:e}:this.resolvers.shift().reject({done:!0,value:e}))}close(){if(this._closedPromiseResolve){let{resolvers:e}=this;for(;e.length>0;)e.shift().resolve(oS);this._closedPromiseResolve(),this._closedPromiseResolve=void 0}}[Symbol.asyncIterator](){return this}toDOMStream(e){return Sg.toDOMStream(this._closedPromiseResolve||this._error?this:this._values,e)}toNodeStream(e){return Sg.toNodeStream(this._closedPromiseResolve||this._error?this:this._values,e)}throw(e){return Ph(this,void 0,void 0,function*(){return yield this.abort(e),oS})}return(e){return Ph(this,void 0,void 0,function*(){return yield this.close(),oS})}read(e){return Ph(this,void 0,void 0,function*(){return(yield this.next(e,`read`)).value})}peek(e){return Ph(this,void 0,void 0,function*(){return(yield this.next(e,`peek`)).value})}next(...e){return this._values.length>0?Promise.resolve({done:!1,value:this._values.shift()}):this._error?Promise.reject({done:!0,value:this._error.error}):this._closedPromiseResolve?new Promise((e,t)=>{this.resolvers.push({resolve:e,reject:t})}):Promise.resolve(oS)}_ensureOpen(){if(this._closedPromiseResolve)return!0;throw Error(`AsyncQueue is closed`)}},uS=class extends lS{write(e){if((e=mg(e)).byteLength>0)return super.write(e)}toString(e=!1){return e?Vh(this.toUint8Array(!0)):this.toUint8Array(!1).then(Vh)}toUint8Array(e=!1){return e?ug(this._values)[0]:(()=>Ph(this,void 0,void 0,function*(){var e,t,n,r;let i=[],a=0;try{for(var o=!0,s=zh(this),c;c=yield s.next(),e=c.done,!e;o=!0){r=c.value,o=!1;let e=r;i.push(e),a+=e.byteLength}}catch(e){t={error:e}}finally{try{!o&&!e&&(n=s.return)&&(yield n.call(s))}finally{if(t)throw t.error}}return ug(i,a)[0]}))()}},dS=class{constructor(e){e&&(this.source=new pS(Sg.fromIterable(e)))}[Symbol.iterator](){return this}next(e){return this.source.next(e)}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}peek(e){return this.source.peek(e)}read(e){return this.source.read(e)}},fS=class e{constructor(t){t instanceof e?this.source=t.source:t instanceof uS?this.source=new mS(Sg.fromAsyncIterable(t)):ag(t)?this.source=new mS(Sg.fromNodeStream(t)):rg(t)?this.source=new mS(Sg.fromDOMStream(t)):eg(t)?this.source=new mS(Sg.fromDOMStream(t.body)):Yh(t)?this.source=new mS(Sg.fromIterable(t)):(Jh(t)||Xh(t))&&(this.source=new mS(Sg.fromAsyncIterable(t)))}[Symbol.asyncIterator](){return this}next(e){return this.source.next(e)}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}get closed(){return this.source.closed}cancel(e){return this.source.cancel(e)}peek(e){return this.source.peek(e)}read(e){return this.source.read(e)}},pS=class{constructor(e){this.source=e}cancel(e){this.return(e)}peek(e){return this.next(e,`peek`).value}read(e){return this.next(e,`read`).value}next(e,t=`read`){return this.source.next({cmd:t,size:e})}throw(e){return Object.create(this.source.throw&&this.source.throw(e)||oS)}return(e){return Object.create(this.source.return&&this.source.return(e)||oS)}},mS=class{constructor(e){this.source=e,this._closedPromise=new Promise(e=>this._closedPromiseResolve=e)}cancel(e){return Ph(this,void 0,void 0,function*(){yield this.return(e)})}get closed(){return this._closedPromise}read(e){return Ph(this,void 0,void 0,function*(){return(yield this.next(e,`read`)).value})}peek(e){return Ph(this,void 0,void 0,function*(){return(yield this.next(e,`peek`)).value})}next(e){return Ph(this,arguments,void 0,function*(e,t=`read`){return yield this.source.next({cmd:t,size:e})})}throw(e){return Ph(this,void 0,void 0,function*(){let t=this.source.throw&&(yield this.source.throw(e))||oS;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(t)})}return(e){return Ph(this,void 0,void 0,function*(){let t=this.source.return&&(yield this.source.return(e))||oS;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(t)})}},hS=class extends dS{constructor(e,t){super(),this.position=0,this.buffer=mg(e),this.size=t===void 0?this.buffer.byteLength:t}readInt32(e){let{buffer:t,byteOffset:n}=this.readAt(e,4);return new DataView(t,n).getInt32(0,!0)}seek(e){return this.position=Math.min(e,this.size),ePh(this,void 0,void 0,function*(){this.size=(yield e.stat()).size,delete this._pending}))()}readInt32(e){return Ph(this,void 0,void 0,function*(){let{buffer:t,byteOffset:n}=yield this.readAt(e,4);return new DataView(t,n).getInt32(0,!0)})}seek(e){return Ph(this,void 0,void 0,function*(){return this._pending&&(yield this._pending),this.position=Math.min(e,this.size),e>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),n=new Uint32Array([e.buffer[1]>>>16,e.buffer[1]&65535,e.buffer[0]>>>16,e.buffer[0]&65535]),r=t[3]*n[3];this.buffer[0]=r&65535;let i=r>>>16;return r=t[2]*n[3],i+=r,r=t[3]*n[2]>>>0,i+=r,this.buffer[0]+=i<<16,this.buffer[1]=i>>>0>>16,this.buffer[1]+=t[1]*n[3]+t[2]*n[2]+t[3]*n[1],this.buffer[1]+=t[0]*n[3]+t[1]*n[2]+t[2]*n[1]+t[3]*n[0]<<16,this}_plus(e){let t=this.buffer[0]+e.buffer[0]>>>0;this.buffer[1]+=e.buffer[1],t>>0&&++this.buffer[1],this.buffer[0]=t}lessThan(e){return this.buffer[1]>>0,t[2]=this.buffer[2]+e.buffer[2]>>>0,t[1]=this.buffer[1]+e.buffer[1]>>>0,t[0]=this.buffer[0]+e.buffer[0]>>>0,t[0]>>0&&++t[1],t[1]>>0&&++t[2],t[2]>>0&&++t[3],this.buffer[3]=t[3],this.buffer[2]=t[2],this.buffer[1]=t[1],this.buffer[0]=t[0],this}hex(){return`${vS(this.buffer[3])} ${vS(this.buffer[2])} ${vS(this.buffer[1])} ${vS(this.buffer[0])}`}static multiply(t,n){let r=new e(new Uint32Array(t.buffer));return r.times(n)}static add(t,n){let r=new e(new Uint32Array(t.buffer));return r.plus(n)}static from(t,n=new Uint32Array(4)){return e.fromString(typeof t==`string`?t:t.toString(),n)}static fromNumber(t,n=new Uint32Array(4)){return e.fromString(t.toString(),n)}static fromString(t,n=new Uint32Array(4)){let r=t.startsWith(`-`),i=t.length,a=new e(n);for(let n=r?1:0;n0&&this.readData(e,n)||new Uint8Array}readOffsets(e,t){return this.readData(e,t)}readTypeIds(e,t){return this.readData(e,t)}readData(e,{length:t,offset:n}=this.nextBufferRange()){return this.bytes.subarray(n,n+t)}readDictionary(e){return this.dictionaries.get(e.id)}},ES=class extends TS{constructor(e,t,n,r,i){super(new Uint8Array,t,n,r,i),this.sources=e}readNullBitmap(e,t,{offset:n}=this.nextBufferRange()){return t<=0?new Uint8Array:mx(this.sources[n])}readOffsets(e,{offset:t}=this.nextBufferRange()){return dg(Uint8Array,dg(e.OffsetArrayType,this.sources[t]))}readTypeIds(e,{offset:t}=this.nextBufferRange()){return dg(Uint8Array,dg(e.ArrayType,this.sources[t]))}readData(e,{offset:t}=this.nextBufferRange()){let{sources:n}=this;return pv.isTimestamp(e)||(pv.isInt(e)||pv.isTime(e))&&e.bitWidth===64||pv.isDuration(e)||pv.isDate(e)&&e.unit===Ng.MILLISECOND?dg(Uint8Array,CS.convertArray(n[t])):pv.isDecimal(e)?dg(Uint8Array,wS.convertArray(n[t])):pv.isBinary(e)||pv.isLargeBinary(e)||pv.isFixedSizeBinary(e)?DS(n[t]):pv.isBool(e)?mx(n[t]):pv.isUtf8(e)||pv.isLargeUtf8(e)?Uh(n[t].join(``)):dg(Uint8Array,dg(e.ArrayType,n[t].map(e=>+e)))}};function DS(e){let t=e.join(``),n=new Uint8Array(t.length/2);for(let e=0;e>1]=Number.parseInt(t.slice(e,e+2),16);return n}var OS=class extends Jv{compareSchemas(e,t){return e===t||t instanceof e.constructor&&this.compareManyFields(e.fields,t.fields)}compareManyFields(e,t){return e===t||Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,n)=>this.compareFields(e,t[n]))}compareFields(e,t){return e===t||t instanceof e.constructor&&e.name===t.name&&e.nullable===t.nullable&&this.visit(e.type,t.type)}};function kS(e,t){return t instanceof e.constructor}function AS(e,t){return e===t||kS(e,t)}function jS(e,t){return e===t||kS(e,t)&&e.bitWidth===t.bitWidth&&e.isSigned===t.isSigned}function MS(e,t){return e===t||kS(e,t)&&e.precision===t.precision}function NS(e,t){return e===t||kS(e,t)&&e.byteWidth===t.byteWidth}function PS(e,t){return e===t||kS(e,t)&&e.unit===t.unit}function FS(e,t){return e===t||kS(e,t)&&e.unit===t.unit&&e.timezone===t.timezone}function IS(e,t){return e===t||kS(e,t)&&e.unit===t.unit&&e.bitWidth===t.bitWidth}function LS(e,t){return e===t||kS(e,t)&&e.children.length===t.children.length&&GS.compareManyFields(e.children,t.children)}function RS(e,t){return e===t||kS(e,t)&&e.children.length===t.children.length&&GS.compareManyFields(e.children,t.children)}function zS(e,t){return e===t||kS(e,t)&&e.mode===t.mode&&e.typeIds.every((e,n)=>e===t.typeIds[n])&&GS.compareManyFields(e.children,t.children)}function BS(e,t){return e===t||kS(e,t)&&e.id===t.id&&e.isOrdered===t.isOrdered&&GS.visit(e.indices,t.indices)&&GS.visit(e.dictionary,t.dictionary)}function VS(e,t){return e===t||kS(e,t)&&e.unit===t.unit}function HS(e,t){return e===t||kS(e,t)&&e.unit===t.unit}function US(e,t){return e===t||kS(e,t)&&e.listSize===t.listSize&&e.children.length===t.children.length&&GS.compareManyFields(e.children,t.children)}function WS(e,t){return e===t||kS(e,t)&&e.keysSorted===t.keysSorted&&e.children.length===t.children.length&&GS.compareManyFields(e.children,t.children)}OS.prototype.visitNull=AS,OS.prototype.visitBool=AS,OS.prototype.visitInt=jS,OS.prototype.visitInt8=jS,OS.prototype.visitInt16=jS,OS.prototype.visitInt32=jS,OS.prototype.visitInt64=jS,OS.prototype.visitUint8=jS,OS.prototype.visitUint16=jS,OS.prototype.visitUint32=jS,OS.prototype.visitUint64=jS,OS.prototype.visitFloat=MS,OS.prototype.visitFloat16=MS,OS.prototype.visitFloat32=MS,OS.prototype.visitFloat64=MS,OS.prototype.visitUtf8=AS,OS.prototype.visitLargeUtf8=AS,OS.prototype.visitBinary=AS,OS.prototype.visitLargeBinary=AS,OS.prototype.visitFixedSizeBinary=NS,OS.prototype.visitDate=PS,OS.prototype.visitDateDay=PS,OS.prototype.visitDateMillisecond=PS,OS.prototype.visitTimestamp=FS,OS.prototype.visitTimestampSecond=FS,OS.prototype.visitTimestampMillisecond=FS,OS.prototype.visitTimestampMicrosecond=FS,OS.prototype.visitTimestampNanosecond=FS,OS.prototype.visitTime=IS,OS.prototype.visitTimeSecond=IS,OS.prototype.visitTimeMillisecond=IS,OS.prototype.visitTimeMicrosecond=IS,OS.prototype.visitTimeNanosecond=IS,OS.prototype.visitDecimal=AS,OS.prototype.visitList=LS,OS.prototype.visitStruct=RS,OS.prototype.visitUnion=zS,OS.prototype.visitDenseUnion=zS,OS.prototype.visitSparseUnion=zS,OS.prototype.visitDictionary=BS,OS.prototype.visitInterval=VS,OS.prototype.visitIntervalDayTime=VS,OS.prototype.visitIntervalYearMonth=VS,OS.prototype.visitDuration=HS,OS.prototype.visitDurationSecond=HS,OS.prototype.visitDurationMillisecond=HS,OS.prototype.visitDurationMicrosecond=HS,OS.prototype.visitDurationNanosecond=HS,OS.prototype.visitFixedSizeList=US,OS.prototype.visitMap=WS;const GS=new OS;function KS(e,t){return GS.compareSchemas(e,t)}function qS(e,t){return JS(e,t.map(e=>e.data.concat()))}function JS(e,t){let n=[...e.fields],r=[],i={numBatches:t.reduce((e,t)=>Math.max(e,t.length),0)},a=0,o=0,s=-1,c=t.length,l,u=[];for(;i.numBatches-- >0;){for(o=1/0,s=-1;++s0&&(r[a++]=Cx({type:new Bv(n),length:o,nullCount:0,children:u.slice()})))}return[e=e.assign(n),r.map(t=>new $S(e,t))]}function YS(e,t,n,r,i){var a;let o=(t+63&-64)>>3;for(let s=-1,c=r.length;++s=t)l===t?n[s]=c:(n[s]=c.slice(0,t),i.numBatches=Math.max(i.numBatches,r[s].unshift(c.slice(t,l-t))));else{let r=e[s];e[s]=r.clone({nullable:!0}),n[s]=(a=c?._changeLengthAndBackfillNullBitmap(t))??Cx({type:r.type,length:t,nullCount:t,nullBitmap:new Uint8Array(o)})}}return n}var XS,ZS=class e{constructor(...t){var n,r;if(t.length===0)return this.batches=[],this.schema=new Zx([]),this._offsets=[0],this;let i,a;t[0]instanceof Zx&&(i=t.shift()),t.at(-1)instanceof Uint32Array&&(a=t.pop());let o=t=>{if(t){if(t instanceof $S)return[t];if(t instanceof e)return t.batches;if(t instanceof bx){if(t.type instanceof Bv)return[new $S(new Zx(t.type.children),t)]}else if(Array.isArray(t))return t.flatMap(e=>o(e));else if(typeof t[Symbol.iterator]==`function`)return[...t].flatMap(e=>o(e));else if(typeof t==`object`){let e=Object.keys(t),n=e.map(e=>new qx([t[e]])),r=i??new Zx(e.map((e,t)=>new Qx(String(e),n[t].type,n[t].nullable))),[,a]=qS(r,n);return a.length===0?[new $S(t)]:a}}return[]},s=t.flatMap(e=>o(e));if(i=(r=i??(n=s[0])?.schema)??new Zx([]),!(i instanceof Zx))throw TypeError(`Table constructor expects a [Schema, RecordBatch[]] pair.`);for(let e of s){if(!(e instanceof $S))throw TypeError(`Table constructor expects a [Schema, RecordBatch[]] pair.`);if(!KS(i,e.schema))throw TypeError(`Table and inner RecordBatch schemas must be equivalent.`)}this.schema=i,this.batches=s,this._offsets=a??Dx(this.data)}get data(){return this.batches.map(({data:e})=>e)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.reduce((e,t)=>e+t.length,0)}get nullCount(){return this._nullCount===-1&&(this._nullCount=Ex(this.data)),this._nullCount}isValid(e){return!1}get(e){return null}at(e){return this.get(ex(e,this.numRows))}set(e,t){}indexOf(e,t){return-1}[Symbol.iterator](){return this.batches.length>0?Ux.visit(new qx(this.data)):[][Symbol.iterator]()}toArray(){return[...this]}toString(){return`[\n ${this.toArray().join(`, + `)}\n]`}concat(...t){let n=this.schema,r=this.data.concat(t.flatMap(({data:e})=>e));return new e(n,r.map(e=>new $S(n,e)))}slice(t,n){let r=this.schema;[t,n]=$b({length:this.numRows},t,n);let i=Ox(this.data,this._offsets,t,n);return new e(r,i.map(e=>new $S(r,e)))}getChild(e){return this.getChildAt(this.schema.fields.findIndex(t=>t.name===e))}getChildAt(e){if(e>-1&&et.children[e]);if(t.length===0){let{type:n}=this.schema.fields[e],r=Cx({type:n,length:0,nullCount:0});t.push(r._changeLengthAndBackfillNullBitmap(this.numRows))}return new qx(t)}return null}setChild(e,t){var n;return this.setChildAt((n=this.schema.fields)?.findIndex(t=>t.name===e),t)}setChildAt(t,n){let r=this.schema,i=[...this.batches];if(t>-1&&tthis.getChildAt(t));[e[t],o[t]]=[a,n],[r,i]=qS(r,o)}return new e(r,i)}select(e){let t=this.schema.fields.reduce((e,t,n)=>e.set(t.name,n),new Map);return this.selectAt(e.map(e=>t.get(e)).filter(e=>e>-1))}selectAt(t){let n=this.schema.selectAt(t),r=this.batches.map(e=>e.selectAt(t));return new e(n,r)}assign(t){let n=this.schema.fields,[r,i]=t.schema.fields.reduce((e,t,r)=>{let[i,a]=e,o=n.findIndex(e=>e.name===t.name);return~o?a[o]=r:i.push(r),e},[[],[]]),a=this.schema.assign(t.schema),o=[...n.map((e,t)=>[t,i[t]]).map(([e,n])=>n===void 0?this.getChildAt(e):t.getChildAt(n)),...r.map(e=>t.getChildAt(e))].filter(Boolean);return new e(...qS(a,o))}};XS=Symbol.toStringTag,ZS[XS]=(e=>(e.schema=null,e.batches=[],e._offsets=new Uint32Array([0]),e._nullCount=-1,e[Symbol.isConcatSpreadable]=!0,e.isValid=jx(Ax),e.get=jx(Wb.getVisitFn(q.Struct)),e.set=Mx(Jy.getVisitFn(q.Struct)),e.indexOf=Nx(zx.getVisitFn(q.Struct)),`Table`))(ZS.prototype);var QS,$S=class e{constructor(...e){switch(e.length){case 2:if([this.schema]=e,!(this.schema instanceof Zx)||([,this.data=Cx({nullCount:0,type:new Bv(this.schema.fields),children:this.schema.fields.map(e=>Cx({type:e.type,nullCount:0}))})]=e,!(this.data instanceof bx)))throw TypeError(`RecordBatch constructor expects a [Schema, Data] pair.`);[this.schema,this.data]=eC(this.schema,this.data.children);break;case 1:{let[t]=e,{fields:n,children:r,length:i}=Object.keys(t).reduce((e,n,r)=>(e.children[r]=t[n],e.length=Math.max(e.length,t[n].length),e.fields[r]=Qx.new({name:n,type:t[n].type,nullable:!0}),e),{length:0,fields:[],children:[]}),a=new Zx(n),o=Cx({type:new Bv(n),length:i,children:r,nullCount:0});[this.schema,this.data]=eC(a,o.children,i);break}default:throw TypeError(`RecordBatch constructor expects an Object mapping names to child Data, or a [Schema, Data] pair.`)}}get dictionaries(){return this._dictionaries||=tC(this.schema.fields,this.data.children)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.length}get nullCount(){return this.data.nullCount}isValid(e){return this.data.getValid(e)}get(e){return Wb.visit(this.data,e)}at(e){return this.get(ex(e,this.numRows))}set(e,t){return Jy.visit(this.data,e,t)}indexOf(e,t){return zx.visit(this.data,e,t)}[Symbol.iterator](){return Ux.visit(new qx([this.data]))}toArray(){return[...this]}concat(...e){return new ZS(this.schema,[this,...e])}slice(t,n){let[r]=new qx([this.data]).slice(t,n).data;return new e(this.schema,r)}getChild(e){var t;return this.getChildAt((t=this.schema.fields)?.findIndex(t=>t.name===e))}getChildAt(e){return e>-1&&et.name===e),t)}setChildAt(t,n){let r=this.schema,i=this.data;if(t>-1&&tt.name===e);~t&&(i[t]=this.data.children[t])}return new e(n,Cx({type:r,length:this.numRows,children:i}))}selectAt(t){let n=this.schema.selectAt(t),r=t.map(e=>this.data.children[e]).filter(Boolean),i=Cx({type:new Bv(n.fields),length:this.numRows,children:r});return new e(n,i)}};QS=Symbol.toStringTag,$S[QS]=(e=>(e._nullCount=-1,e[Symbol.isConcatSpreadable]=!0,`RecordBatch`))($S.prototype);function eC(e,t,n=t.reduce((e,t)=>Math.max(e,t.length),0)){var r;let i=[...e.fields],a=[...t],o=(n+63&-64)>>3;for(let[s,c]of e.fields.entries()){let e=t[s];(!e||e.length!==n)&&(i[s]=c.clone({nullable:!0}),a[s]=(r=e?._changeLengthAndBackfillNullBitmap(n))??Cx({type:c.type,length:n,nullCount:n,nullBitmap:new Uint8Array(o)}))}return[e.assign(i),Cx({type:new Bv(i),length:n,children:a})]}function tC(e,t,n=new Map){var r,i;if(((r=e?.length)??0)>0&&e?.length===t?.length)for(let r=-1,a=e.length;++rCx({type:e.type})),n=Cx({type:new Bv(e.fields),nullCount:0,children:t});super(e,n)}},rC=class e{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsMessage(t,n){return(n||new e).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMessage(t,n){return t.setPosition(t.position()+zg),(n||new e).__init(t.readInt32(t.position())+t.position(),t)}version(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):Ag.V1}headerType(){let e=this.bb.__offset(this.bb_pos,6);return e?this.bb.readUint8(this.bb_pos+e):D_.NONE}header(e){let t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__union(e,this.bb_pos+t):null}bodyLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.readInt64(this.bb_pos+e):BigInt(`0`)}customMetadata(e,t){let n=this.bb.__offset(this.bb_pos,12);return n?(t||new i_).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+n)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__vector_len(this.bb_pos+e):0}static startMessage(e){e.startObject(5)}static addVersion(e,t){e.addFieldInt16(0,t,Ag.V1)}static addHeaderType(e,t){e.addFieldInt8(1,t,D_.NONE)}static addHeader(e,t){e.addFieldOffset(2,t,0)}static addBodyLength(e,t){e.addFieldInt64(3,t,BigInt(`0`))}static addCustomMetadata(e,t){e.addFieldOffset(4,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let n=t.length-1;n>=0;n--)e.addOffset(t[n]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endMessage(e){let t=e.endObject();return t}static finishMessageBuffer(e,t){e.finish(t)}static finishSizePrefixedMessageBuffer(e,t){e.finish(t,void 0,!0)}static createMessage(t,n,r,i,a,o){return e.startMessage(t),e.addVersion(t,n),e.addHeaderType(t,r),e.addHeader(t,i),e.addBodyLength(t,a),e.addCustomMetadata(t,o),e.endMessage(t)}},iC=class extends Jv{visit(e,t){return e==null||t==null?void 0:super.visit(e,t)}visitNull(e,t){return v_.startNull(t),v_.endNull(t)}visitInt(e,t){return n_.startInt(t),n_.addBitWidth(t,e.bitWidth),n_.addIsSigned(t,e.isSigned),n_.endInt(t)}visitFloat(e,t){return f_.startFloatingPoint(t),f_.addPrecision(t,e.precision),f_.endFloatingPoint(t)}visitBinary(e,t){return a_.startBinary(t),a_.endBinary(t)}visitLargeBinary(e,t){return m_.startLargeBinary(t),m_.endLargeBinary(t)}visitBool(e,t){return o_.startBool(t),o_.endBool(t)}visitUtf8(e,t){return C_.startUtf8(t),C_.endUtf8(t)}visitLargeUtf8(e,t){return h_.startLargeUtf8(t),h_.endLargeUtf8(t)}visitDecimal(e,t){return c_.startDecimal(t),c_.addScale(t,e.scale),c_.addPrecision(t,e.precision),c_.addBitWidth(t,e.bitWidth),c_.endDecimal(t)}visitDate(e,t){return s_.startDate(t),s_.addUnit(t,e.unit),s_.endDate(t)}visitTime(e,t){return b_.startTime(t),b_.addUnit(t,e.unit),b_.addBitWidth(t,e.bitWidth),b_.endTime(t)}visitTimestamp(e,t){let n=e.timezone&&t.createString(e.timezone)||void 0;return x_.startTimestamp(t),x_.addUnit(t,e.unit),n!==void 0&&x_.addTimezone(t,n),x_.endTimestamp(t)}visitInterval(e,t){return p_.startInterval(t),p_.addUnit(t,e.unit),p_.endInterval(t)}visitDuration(e,t){return l_.startDuration(t),l_.addUnit(t,e.unit),l_.endDuration(t)}visitList(e,t){return g_.startList(t),g_.endList(t)}visitStruct(e,t){return y_.startStruct_(t),y_.endStruct_(t)}visitUnion(e,t){S_.startTypeIdsVector(t,e.typeIds.length);let n=S_.createTypeIdsVector(t,e.typeIds);return S_.startUnion(t),S_.addMode(t,e.mode),S_.addTypeIds(t,n),S_.endUnion(t)}visitDictionary(e,t){let n=this.visit(e.indices,t);return r_.startDictionaryEncoding(t),r_.addId(t,BigInt(e.id)),r_.addIsOrdered(t,e.isOrdered),n!==void 0&&r_.addIndexType(t,n),r_.endDictionaryEncoding(t)}visitFixedSizeBinary(e,t){return u_.startFixedSizeBinary(t),u_.addByteWidth(t,e.byteWidth),u_.endFixedSizeBinary(t)}visitFixedSizeList(e,t){return d_.startFixedSizeList(t),d_.addListSize(t,e.listSize),d_.endFixedSizeList(t)}visitMap(e,t){return __.startMap(t),__.addKeysSorted(t,e.keysSorted),__.endMap(t)}};const aC=new iC;function oC(e,t=new Map){return new Zx(lC(e,t),hC(e.metadata),t)}function sC(e){return new xC(e.count,dC(e.columns),fC(e.columns))}function cC(e){return new SC(sC(e.data),e.id,e.isDelta)}function lC(e,t){return(e.fields||[]).filter(Boolean).map(e=>Qx.fromJSON(e,t))}function uC(e,t){return(e.children||[]).filter(Boolean).map(e=>Qx.fromJSON(e,t))}function dC(e){return(e||[]).reduce((e,t)=>[...e,new wC(t.count,pC(t.VALIDITY)),...dC(t.children)],[])}function fC(e,t=[]){for(let n=-1,r=(e||[]).length;++ne+ +(t===0),0)}function mC(e,t){let n,r,i,a,o,s;return!t||!(a=e.dictionary)?(o=_C(e,uC(e,t)),i=new Qx(e.name,o,e.nullable,hC(e.metadata))):t.has(n=a.id)?(r=(r=a.indexType)?gC(r):new vv,s=new Kv(t.get(n),r,n,a.isOrdered),i=new Qx(e.name,s,e.nullable,hC(e.metadata))):(r=(r=a.indexType)?gC(r):new vv,t.set(n,o=_C(e,uC(e,t))),s=new Kv(o,r,n,a.isOrdered),i=new Qx(e.name,s,e.nullable,hC(e.metadata))),i||null}function hC(e=[]){return new Map(e.map(({key:e,value:t})=>[e,t]))}function gC(e){return new hv(e.isSigned,e.bitWidth)}function _C(e,t){let n=e.type.name;switch(n){case`NONE`:return new mv;case`null`:return new mv;case`binary`:return new Ov;case`largebinary`:return new kv;case`utf8`:return new Av;case`largeutf8`:return new jv;case`bool`:return new Mv;case`list`:return new zv((t||[])[0]);case`struct`:return new Bv(t||[]);case`struct_`:return new Bv(t||[])}switch(n){case`int`:{let t=e.type;return new hv(t.isSigned,t.bitWidth)}case`floatingpoint`:{let t=e.type;return new wv(Mg[t.precision])}case`decimal`:{let t=e.type;return new Nv(t.scale,t.precision,t.bitWidth)}case`date`:{let t=e.type;return new Pv(Ng[t.unit])}case`time`:{let t=e.type;return new Fv(Pg[t.unit],t.bitWidth)}case`timestamp`:{let t=e.type;return new Iv(Pg[t.unit],t.timezone)}case`interval`:{let t=e.type;return new Lv(Fg[t.unit])}case`duration`:{let t=e.type;return new Rv(Pg[t.unit])}case`union`:{let n=e.type,[r,...i]=(n.mode+``).toLowerCase(),a=r.toUpperCase()+i.join(``);return new Vv(jg[a],n.typeIds||[],t||[])}case`fixedsizebinary`:{let t=e.type;return new Hv(t.byteWidth)}case`fixedsizelist`:{let n=e.type;return new Uv(n.listSize,(t||[])[0])}case`map`:{let n=e.type;return new Wv((t||[])[0],n.keysSorted)}}throw Error(`Unrecognized type: "${n}"`)}var vC=Kg,yC=Gg,bC=class e{static fromJSON(t,n){let r=new e(0,Ag.V5,n);return r._createHeader=TC(t,n),r}static decode(t){t=new yC(mg(t));let n=rC.getRootAsMessage(t),r=n.bodyLength(),i=n.version(),a=n.headerType(),o=new e(r,i,a);return o._createHeader=EC(n,a),o}static encode(e){let t=new vC,n=-1;return e.isSchema()?n=Zx.encode(t,e.header()):e.isRecordBatch()?n=xC.encode(t,e.header()):e.isDictionaryBatch()&&(n=SC.encode(t,e.header())),rC.startMessage(t),rC.addVersion(t,Ag.V5),rC.addHeader(t,n),rC.addHeaderType(t,e.headerType),rC.addBodyLength(t,BigInt(e.bodyLength)),rC.finishMessageBuffer(t,rC.endMessage(t)),t.asUint8Array()}static from(t,n=0){if(t instanceof Zx)return new e(0,Ag.V5,D_.Schema,t);if(t instanceof xC)return new e(n,Ag.V5,D_.RecordBatch,t);if(t instanceof SC)return new e(n,Ag.V5,D_.DictionaryBatch,t);throw Error(`Unrecognized Message header: ${t}`)}get type(){return this.headerType}get version(){return this._version}get headerType(){return this._headerType}get bodyLength(){return this._bodyLength}header(){return this._createHeader()}isSchema(){return this.headerType===D_.Schema}isRecordBatch(){return this.headerType===D_.RecordBatch}isDictionaryBatch(){return this.headerType===D_.DictionaryBatch}constructor(e,t,n,r){this._version=t,this._headerType=n,this.body=new Uint8Array,r&&(this._createHeader=()=>r),this._bodyLength=j_(e)}},xC=class{get nodes(){return this._nodes}get length(){return this._length}get buffers(){return this._buffers}constructor(e,t,n){this._nodes=t,this._buffers=n,this._length=j_(e)}},SC=class{get id(){return this._id}get data(){return this._data}get isDelta(){return this._isDelta}get length(){return this.data.length}get nodes(){return this.data.nodes}get buffers(){return this.data.buffers}constructor(e,t,n=!1){this._data=e,this._isDelta=n,this._id=j_(t)}},CC=class{constructor(e,t){this.offset=j_(e),this.length=j_(t)}},wC=class{constructor(e,t){this.length=j_(e),this.nullCount=j_(t)}};function TC(e,t){return()=>{switch(t){case D_.Schema:return Zx.fromJSON(e);case D_.RecordBatch:return xC.fromJSON(e);case D_.DictionaryBatch:return SC.fromJSON(e)}throw Error(`Unrecognized Message type: { name: ${D_[t]}, type: ${t} }`)}}function EC(e,t){return()=>{switch(t){case D_.Schema:return Zx.decode(e.header(new E_),new Map,e.version());case D_.RecordBatch:return xC.decode(e.header(new Qg),e.version());case D_.DictionaryBatch:return SC.decode(e.header(new $g),e.version())}throw Error(`Unrecognized Message type: { name: ${D_[t]}, type: ${t} }`)}}Qx.encode=VC,Qx.decode=IC,Qx.fromJSON=mC,Zx.encode=BC,Zx.decode=DC,Zx.fromJSON=oC,xC.encode=HC,xC.decode=OC,xC.fromJSON=sC,SC.encode=UC,SC.decode=kC,SC.fromJSON=cC,wC.encode=WC,wC.decode=jC,CC.encode=GC,CC.decode=AC;function DC(e,t=new Map,n=Ag.V5){let r=PC(e,t);return new Zx(r,LC(e),t,n)}function OC(e,t=Ag.V5){if(e.compression()!==null)throw Error(`Record batch compression not implemented`);return new xC(e.length(),MC(e),NC(e,t))}function kC(e,t=Ag.V5){return new SC(xC.decode(e.data(),t),e.id(),e.isDelta())}function AC(e){return new CC(e.offset(),e.length())}function jC(e){return new wC(e.length(),e.nullCount())}function MC(e){let t=[];for(let n,r=-1,i=-1,a=e.nodesLength();++rQx.encode(e,t));E_.startFieldsVector(e,n.length);let r=E_.createFieldsVector(e,n),i=t.metadata&&t.metadata.size>0?E_.createCustomMetadataVector(e,[...t.metadata].map(([t,n])=>{let r=e.createString(`${t}`),i=e.createString(`${n}`);return i_.startKeyValue(e),i_.addKey(e,r),i_.addValue(e,i),i_.endKeyValue(e)})):-1;return E_.startSchema(e),E_.addFields(e,r),E_.addEndianness(e,KC?e_.Little:e_.Big),i!==-1&&E_.addCustomMetadata(e,i),E_.endSchema(e)}function VC(e,t){let n=-1,r=-1,i=-1,a=t.type,o=t.typeId;pv.isDictionary(a)?(o=a.dictionary.typeId,i=aC.visit(a,e),r=aC.visit(a.dictionary,e)):r=aC.visit(a,e);let s=(a.children||[]).map(t=>Qx.encode(e,t)),c=T_.createChildrenVector(e,s),l=t.metadata&&t.metadata.size>0?T_.createCustomMetadataVector(e,[...t.metadata].map(([t,n])=>{let r=e.createString(`${t}`),i=e.createString(`${n}`);return i_.startKeyValue(e),i_.addKey(e,r),i_.addValue(e,i),i_.endKeyValue(e)})):-1;return t.name&&(n=e.createString(t.name)),T_.startField(e),T_.addType(e,r),T_.addTypeType(e,o),T_.addChildren(e,c),T_.addNullable(e,!!t.nullable),n!==-1&&T_.addName(e,n),i!==-1&&T_.addDictionary(e,i),l!==-1&&T_.addCustomMetadata(e,l),T_.endField(e)}function HC(e,t){let n=t.nodes||[],r=t.buffers||[];Qg.startNodesVector(e,n.length);for(let t of n.slice().reverse())wC.encode(e,t);let i=e.endVector();Qg.startBuffersVector(e,r.length);for(let t of r.slice().reverse())CC.encode(e,t);let a=e.endVector();return Qg.startRecordBatch(e),Qg.addLength(e,BigInt(t.length)),Qg.addNodes(e,i),Qg.addBuffers(e,a),Qg.endRecordBatch(e)}function UC(e,t){let n=xC.encode(e,t.data);return $g.startDictionaryBatch(e),$g.addId(e,BigInt(t.id)),$g.addIsDelta(e,t.isDelta),$g.addData(e,n),$g.endDictionaryBatch(e)}function WC(e,t){return Zg.createFieldNode(e,BigInt(t.length),BigInt(t.nullCount))}function GC(e,t){return Xg.createBuffer(e,BigInt(t.offset),BigInt(t.length))}const KC=(()=>{let e=new ArrayBuffer(2);return new DataView(e).setInt16(0,256,!0),new Int16Array(e)[0]===256})(),qC=e=>`Expected ${D_[e]} Message in stream, but was null or length 0.`,JC=e=>`Header pointer of flatbuffer-encoded ${D_[e]} Message is null or length 0.`,YC=(e,t)=>`Expected to read ${e} metadata bytes, but only read ${t}.`,XC=(e,t)=>`Expected to read ${e} bytes for message body, but only read ${t}.`;var ZC=class{constructor(e){this.source=e instanceof dS?e:new dS(e)}[Symbol.iterator](){return this}next(){let e;return(e=this.readMetadataLength()).done||e.value===-1&&(e=this.readMetadataLength()).done||(e=this.readMetadata(e.value)).done?oS:e}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}readMessage(e){let t;if((t=this.next()).done)return null;if(e!=null&&t.value.headerType!==e)throw Error(qC(e));return t.value}readMessageBody(e){if(e<=0)return new Uint8Array;let t=mg(this.source.read(e));if(t.byteLength[...e,...n.VALIDITY&&[n.VALIDITY]||[],...n.TYPE_ID&&[n.TYPE_ID]||[],...n.OFFSET&&[n.OFFSET]||[],...n.DATA&&[n.DATA]||[],...t(n.children)],[])}}readMessage(e){let t;if((t=this.next()).done)return null;if(e!=null&&t.value.headerType!==e)throw Error(qC(e));return t.value}readSchema(){let e=D_.Schema,t=this.readMessage(e),n=t?.header();if(!t||!n)throw Error(JC(e));return n}};const ew=4,tw=`ARROW1`,nw=new Uint8Array(6);for(let e=0;e<6;e+=1)nw[e]=tw.codePointAt(e);function rw(e,t=0){for(let n=-1,r=nw.length;++nthis):this}readRecordBatch(e){return this._impl.isFile()?this._impl.readRecordBatch(e):null}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}toDOMStream(){return Sg.toDOMStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this})}toNodeStream(){return Sg.toNodeStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this},{objectMode:!0})}static throughNode(e){throw Error(`"throughNode" not available in this environment`)}static throughDOM(e,t){throw Error(`"throughDOM" not available in this environment`)}static from(t){return t instanceof e?t:Zh(t)?xw(t):$h(t)?ww(t):Jh(t)?(()=>Ph(this,void 0,void 0,function*(){return yield e.from(yield t)}))():eg(t)||rg(t)||ag(t)||Xh(t)?Cw(new fS(t)):Sw(new dS(t))}static readAll(t){return t instanceof e?t.isSync()?yw(t):bw(t):Zh(t)||ArrayBuffer.isView(t)||Yh(t)||Qh(t)?yw(t):bw(t)}},cw=class extends sw{constructor(e){super(e),this._impl=e}readAll(){return[...this]}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return Lh(this,arguments,function*(){yield Ih(yield*Rh(zh(this[Symbol.iterator]())))})}},lw=class extends sw{constructor(e){super(e),this._impl=e}readAll(){return Ph(this,void 0,void 0,function*(){var e,t,n,r;let i=[];try{for(var a=!0,o=zh(this),s;s=yield o.next(),e=s.done,!e;a=!0){r=s.value,a=!1;let e=r;i.push(e)}}catch(e){t={error:e}}finally{try{!a&&!e&&(n=o.return)&&(yield n.call(o))}finally{if(t)throw t.error}}return i})}[Symbol.iterator](){throw Error(`AsyncRecordBatchStreamReader is not Iterable`)}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}},uw=class extends cw{constructor(e){super(e),this._impl=e}},dw=class extends lw{constructor(e){super(e),this._impl=e}},fw=class{get numDictionaries(){return this._dictionaryIndex}get numRecordBatches(){return this._recordBatchIndex}constructor(e=new Map){this.closed=!1,this.autoDestroy=!0,this._dictionaryIndex=0,this._recordBatchIndex=0,this.dictionaries=e}isSync(){return!1}isAsync(){return!1}isFile(){return!1}isStream(){return!1}reset(e){return this._dictionaryIndex=0,this._recordBatchIndex=0,this.schema=e,this.dictionaries=new Map,this}_loadRecordBatch(e,t){let n=this._loadVectors(e,t,this.schema.fields),r=Cx({type:new Bv(this.schema.fields),length:e.length,children:n});return new $S(this.schema,r)}_loadDictionaryBatch(e,t){let{id:n,isDelta:r}=e,{dictionaries:i,schema:a}=this,o=i.get(n),s=a.dictionaries.get(n),c=this._loadVectors(e.data,t,[s]);return(o&&r?o.concat(new qx(c)):new qx(c)).memoize()}_loadVectors(e,t,n){return new TS(t,e.nodes,e.buffers,this.dictionaries,this.schema.metadataVersion).visitMany(n)}},pw=class extends fw{constructor(e,t){super(t),this._reader=Zh(e)?new $C(this._handle=e):new ZC(this._handle=e)}isSync(){return!0}isStream(){return!0}[Symbol.iterator](){return this}cancel(){!this.closed&&(this.closed=!0)&&(this.reset()._reader.return(),this._reader=null,this.dictionaries=null)}open(e){return this.closed||(this.autoDestroy=vw(this,e),(this.schema||=this._reader.readSchema())||this.cancel()),this}throw(e){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.throw(e):oS}return(e){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.return(e):oS}next(){if(this.closed)return oS;let e,{_reader:t}=this;for(;e=this._readNextMessageAndValidate();)if(e.isSchema())this.reset(e.header());else if(e.isRecordBatch()){this._recordBatchIndex++;let n=e.header(),r=t.readMessageBody(e.bodyLength),i=this._loadRecordBatch(n,r);return{done:!1,value:i}}else if(e.isDictionaryBatch()){this._dictionaryIndex++;let n=e.header(),r=t.readMessageBody(e.bodyLength),i=this._loadDictionaryBatch(n,r);this.dictionaries.set(n.id,i)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new nC(this.schema)}):this.return()}_readNextMessageAndValidate(e){return this._reader.readMessage(e)}},mw=class extends fw{constructor(e,t){super(t),this._reader=new QC(this._handle=e)}isAsync(){return!0}isStream(){return!0}[Symbol.asyncIterator](){return this}cancel(){return Ph(this,void 0,void 0,function*(){!this.closed&&(this.closed=!0)&&(yield this.reset()._reader.return(),this._reader=null,this.dictionaries=null)})}open(e){return Ph(this,void 0,void 0,function*(){return this.closed||(this.autoDestroy=vw(this,e),(this.schema||=yield this._reader.readSchema())||(yield this.cancel())),this})}throw(e){return Ph(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.throw(e):oS})}return(e){return Ph(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.return(e):oS})}next(){return Ph(this,void 0,void 0,function*(){if(this.closed)return oS;let e,{_reader:t}=this;for(;e=yield this._readNextMessageAndValidate();)if(e.isSchema())yield this.reset(e.header());else if(e.isRecordBatch()){this._recordBatchIndex++;let n=e.header(),r=yield t.readMessageBody(e.bodyLength),i=this._loadRecordBatch(n,r);return{done:!1,value:i}}else if(e.isDictionaryBatch()){this._dictionaryIndex++;let n=e.header(),r=yield t.readMessageBody(e.bodyLength),i=this._loadDictionaryBatch(n,r);this.dictionaries.set(n.id,i)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new nC(this.schema)}):yield this.return()})}_readNextMessageAndValidate(e){return Ph(this,void 0,void 0,function*(){return yield this._reader.readMessage(e)})}},hw=class extends pw{get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}constructor(e,t){super(e instanceof hS?e:new hS(e),t)}isSync(){return!0}isFile(){return!0}open(e){if(!this.closed&&!this._footer){this.schema=(this._footer=this._readFooter()).schema;for(let e of this._footer.dictionaryBatches())e&&this._readDictionaryBatch(this._dictionaryIndex++)}return super.open(e)}readRecordBatch(e){var t;if(this.closed)return null;this._footer||this.open();let n=(t=this._footer)?.getRecordBatch(e);if(n&&this._handle.seek(n.offset)){let e=this._reader.readMessage(D_.RecordBatch);if(e?.isRecordBatch()){let t=e.header(),n=this._reader.readMessageBody(e.bodyLength),r=this._loadRecordBatch(t,n);return r}}return null}_readDictionaryBatch(e){var t;let n=(t=this._footer)?.getDictionaryBatch(e);if(n&&this._handle.seek(n.offset)){let e=this._reader.readMessage(D_.DictionaryBatch);if(e?.isDictionaryBatch()){let t=e.header(),n=this._reader.readMessageBody(e.bodyLength),r=this._loadDictionaryBatch(t,n);this.dictionaries.set(t.id,r)}}}_readFooter(){let{_handle:e}=this,t=e.size-aw,n=e.readInt32(t),r=e.readAt(t-n,n);return rS.decode(r)}_readNextMessageAndValidate(e){var t;if(this._footer||this.open(),this._footer&&this._recordBatchIndexsuper.open}});return Ph(this,void 0,void 0,function*(){if(!this.closed&&!this._footer){this.schema=(this._footer=yield this._readFooter()).schema;for(let e of this._footer.dictionaryBatches())e&&(yield this._readDictionaryBatch(this._dictionaryIndex++))}return yield t.open.call(this,e)})}readRecordBatch(e){return Ph(this,void 0,void 0,function*(){var t;if(this.closed)return null;this._footer||(yield this.open());let n=(t=this._footer)?.getRecordBatch(e);if(n&&(yield this._handle.seek(n.offset))){let e=yield this._reader.readMessage(D_.RecordBatch);if(e?.isRecordBatch()){let t=e.header(),n=yield this._reader.readMessageBody(e.bodyLength),r=this._loadRecordBatch(t,n);return r}}return null})}_readDictionaryBatch(e){return Ph(this,void 0,void 0,function*(){var t;let n=(t=this._footer)?.getDictionaryBatch(e);if(n&&(yield this._handle.seek(n.offset))){let e=yield this._reader.readMessage(D_.DictionaryBatch);if(e?.isDictionaryBatch()){let t=e.header(),n=yield this._reader.readMessageBody(e.bodyLength),r=this._loadDictionaryBatch(t,n);this.dictionaries.set(t.id,r)}}})}_readFooter(){return Ph(this,void 0,void 0,function*(){let{_handle:e}=this;e._pending&&(yield e._pending);let t=e.size-aw,n=yield e.readInt32(t),r=yield e.readAt(t-n,n);return rS.decode(r)})}_readNextMessageAndValidate(e){return Ph(this,void 0,void 0,function*(){if(this._footer||(yield this.open()),this._footer&&this._recordBatchIndex=4?rw(t)?new uw(new hw(e.read())):new cw(new pw(e)):new cw(new pw(function*(){}()))}function Cw(e){return Ph(this,void 0,void 0,function*(){let t=yield e.peek(iw+7&-8);return t&&t.byteLength>=4?rw(t)?new uw(new hw(yield e.read())):new lw(new mw(e)):new lw(new mw(function(){return Lh(this,arguments,function*(){})}()))})}function ww(e){return Ph(this,void 0,void 0,function*(){let{size:t}=yield e.stat(),n=new gS(e,t);return t>=ow&&rw(yield n.readAt(0,iw+7&-8))?new dw(new gw(n)):new lw(new mw(n))})}var Tw=class e extends Jv{static assemble(...t){let n=e=>e.flatMap(e=>Array.isArray(e)?n(e):e instanceof $S?e.data.children:e.data),r=new e;return r.visitMany(n(t)),r}constructor(){super(),this._byteLength=0,this._nodes=[],this._buffers=[],this._bufferRegions=[]}visit(e){if(e instanceof qx)return this.visitMany(e.data),this;let{type:t}=e;if(!pv.isDictionary(t)){let{length:n}=e;if(n>2147483647)throw RangeError(`Cannot write arrays larger than 2^31 - 1 in length`);if(pv.isUnion(t))this.nodes.push(new wC(n,0));else{let{nullCount:r}=e;pv.isNull(t)||Ew.call(this,r<=0?new Uint8Array:px(e.offset,n,e.nullBitmap)),this.nodes.push(new wC(n,r))}}return super.visit(e)}visitNull(e){return this}visitDictionary(e){return this.visit(e.clone(e.type.indices))}get nodes(){return this._nodes}get buffers(){return this._buffers}get byteLength(){return this._byteLength}get bufferRegions(){return this._bufferRegions}};function Ew(e){let t=e.byteLength+7&-8;return this.buffers.push(e),this.bufferRegions.push(new CC(this._byteLength,t)),this._byteLength+=t,this}function Dw(e){var t;let{type:n,length:r,typeIds:i,valueOffsets:a}=e;if(Ew.call(this,i),n.mode===jg.Sparse)return Mw.call(this,e);if(n.mode===jg.Dense){if(e.offset<=0)return Ew.call(this,a),Mw.call(this,e);{let o=new Int32Array(r),s=Object.create(null),c=Object.create(null);for(let e,n,l=-1;++l{let i=n.typeIds[t],a=s[i],o=c[i];return e.slice(a,Math.min(r,o))}))}}return this}function Ow(e){let t;return e.nullCount>=e.length?Ew.call(this,new Uint8Array):(t=e.values)instanceof Uint8Array?Ew.call(this,px(e.offset,e.length,t)):Ew.call(this,mx(e.values))}function kw(e){return Ew.call(this,e.values.subarray(0,e.length*e.stride))}function Aw(e){let{length:t,values:n,valueOffsets:r}=e,i=j_(r[0]),a=j_(r[t]),o=Math.min(a-i,n.byteLength-i);return Ew.call(this,bg(-i,t+1,r)),Ew.call(this,n.subarray(i,i+o)),this}function jw(e){let{length:t,valueOffsets:n}=e;if(n){let{0:r,[t]:i}=n;return Ew.call(this,bg(-r,t+1,n)),this.visit(e.children[0].slice(r,i-r))}return this.visit(e.children[0])}function Mw(e){return this.visitMany(e.type.children.map((t,n)=>e.children[n]).filter(Boolean))[0]}Tw.prototype.visitBool=Ow,Tw.prototype.visitInt=kw,Tw.prototype.visitFloat=kw,Tw.prototype.visitUtf8=Aw,Tw.prototype.visitLargeUtf8=Aw,Tw.prototype.visitBinary=Aw,Tw.prototype.visitLargeBinary=Aw,Tw.prototype.visitFixedSizeBinary=kw,Tw.prototype.visitDate=kw,Tw.prototype.visitTimestamp=kw,Tw.prototype.visitTime=kw,Tw.prototype.visitDecimal=kw,Tw.prototype.visitList=jw,Tw.prototype.visitStruct=Mw,Tw.prototype.visitUnion=Dw,Tw.prototype.visitInterval=kw,Tw.prototype.visitDuration=kw,Tw.prototype.visitFixedSizeList=jw,Tw.prototype.visitMap=jw;var Nw=class extends cS{static throughNode(e){throw Error(`"throughNode" not available in this environment`)}static throughDOM(e,t){throw Error(`"throughDOM" not available in this environment`)}constructor(e){super(),this._position=0,this._started=!1,this._sink=new uS,this._schema=null,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,qh(e)||(e={autoDestroy:!0,writeLegacyIpcFormat:!1}),this._autoDestroy=typeof e.autoDestroy==`boolean`?e.autoDestroy:!0,this._writeLegacyIpcFormat=typeof e.writeLegacyIpcFormat==`boolean`?e.writeLegacyIpcFormat:!1}toString(e=!1){return this._sink.toString(e)}toUint8Array(e=!1){return this._sink.toUint8Array(e)}writeAll(e){return Jh(e)?e.then(e=>this.writeAll(e)):Xh(e)?Lw(this,e):Iw(this,e)}get closed(){return this._sink.closed}[Symbol.asyncIterator](){return this._sink[Symbol.asyncIterator]()}toDOMStream(e){return this._sink.toDOMStream(e)}toNodeStream(e){return this._sink.toNodeStream(e)}close(){return this.reset()._sink.close()}abort(e){return this.reset()._sink.abort(e)}finish(){return this._autoDestroy?this.close():this.reset(this._sink,this._schema),this}reset(e=this._sink,t=null){return e===this._sink||e instanceof uS?this._sink=e:(this._sink=new uS,e&&ng(e)?this.toDOMStream({type:`bytes`}).pipeTo(e):e&&ig(e)&&this.toNodeStream({objectMode:!1}).pipe(e)),this._started&&this._schema&&this._writeFooter(this._schema),this._started=!1,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,(!t||!KS(t,this._schema))&&(t==null?(this._position=0,this._schema=null):(this._started=!0,this._schema=t,this._writeSchema(t))),this}write(e){let t=null;if(this._sink){if(e==null||e instanceof ZS&&!(t=e.schema)||e instanceof $S&&!(t=e.schema))return this.finish()&&void 0}else throw Error(`RecordBatchWriter is closed`);if(t&&!KS(t,this._schema)){if(this._started&&this._autoDestroy)return this.close();this.reset(this._sink,t)}e instanceof $S?e instanceof nC||this._writeRecordBatch(e):e instanceof ZS?this.writeAll(e.batches):Yh(e)&&this.writeAll(e)}_writeMessage(e,t=8){let n=t-1,r=bC.encode(e),i=r.byteLength,a=this._writeLegacyIpcFormat?4:8,o=i+a+n&~n,s=o-i-a;return e.headerType===D_.RecordBatch?this._recordBatchBlocks.push(new aS(o,e.bodyLength,this._position)):e.headerType===D_.DictionaryBatch&&this._dictionaryBlocks.push(new aS(o,e.bodyLength,this._position)),this._writeLegacyIpcFormat||this._write(Int32Array.of(-1)),this._write(Int32Array.of(o-a)),i>0&&this._write(r),this._writePadding(s)}_write(e){if(this._started){let t=mg(e);t&&t.byteLength>0&&(this._sink.write(t),this._position+=t.byteLength)}return this}_writeSchema(e){return this._writeMessage(bC.from(e))}_writeFooter(e){return this._writeLegacyIpcFormat?this._write(Int32Array.of(0)):this._write(Int32Array.of(-1,0))}_writeMagic(){return this._write(nw)}_writePadding(e){return e>0?this._write(new Uint8Array(e)):this}_writeRecordBatch(e){let{byteLength:t,nodes:n,bufferRegions:r,buffers:i}=Tw.assemble(e),a=new xC(e.numRows,n,r),o=bC.from(a,t);return this._writeDictionaries(e)._writeMessage(o)._writeBodyBuffers(i)}_writeDictionaryBatch(e,t,n=!1){let{byteLength:r,nodes:i,bufferRegions:a,buffers:o}=Tw.assemble(new qx([e])),s=new xC(e.length,i,a),c=new SC(s,t,n),l=bC.from(c,r);return this._writeMessage(l)._writeBodyBuffers(o)}_writeBodyBuffers(e){let t,n,r;for(let i=-1,a=e.length;++i0&&(this._write(t),(r=(n+7&-8)-n)>0&&this._writePadding(r));return this}_writeDictionaries(e){var t,n;for(let[r,i]of e.dictionaries){let e=(t=i?.data)??[],a=this._seenDictionaries.get(r),o=(n=this._dictionaryDeltaOffsets.get(r))??0;if(!a||a.data[0]!==e[0])for(let[t,n]of e.entries())this._writeDictionaryBatch(n,r,t>0);else if(or.writeAll(e)):Xh(t)?Lw(r,t):Iw(r,t)}},Fw=class e extends Nw{static writeAll(t){let n=new e;return Jh(t)?t.then(e=>n.writeAll(e)):Xh(t)?Lw(n,t):Iw(n,t)}constructor(){super(),this._autoDestroy=!0}_writeSchema(e){return this._writeMagic()._writePadding(2)}_writeDictionaryBatch(e,t,n=!1){if(!n&&this._seenDictionaries.has(t))throw Error(`The Arrow File format does not support replacement dictionaries. `);return super._writeDictionaryBatch(e,t,n)}_writeFooter(e){let t=rS.encode(new rS(e,Ag.V5,this._recordBatchBlocks,this._dictionaryBlocks));return super._writeFooter(e)._write(t)._write(Int32Array.of(t.byteLength))._writeMagic()}};function Iw(e,t){let n=t;t instanceof ZS&&(n=t.batches,e.reset(void 0,t.schema));for(let t of n)e.write(t);return e.finish()}function Lw(e,t){return Ph(this,void 0,void 0,function*(){var n,r,i,a,o,s,c;try{for(n=!0,r=zh(t);i=yield r.next(),a=i.done,!a;n=!0){c=i.value,n=!1;let t=c;e.write(t)}}catch(e){o={error:e}}finally{try{!n&&!a&&(s=r.return)&&(yield s.call(r))}finally{if(o)throw o.error}}return e.finish()})}function Rw(e,t=`stream`){return(t===`stream`?Pw:Fw).writeAll(e).toUint8Array(!0)}var zw=Object.create,Bw=Object.defineProperty,Vw=Object.getOwnPropertyDescriptor,Hw=Object.getOwnPropertyNames,Uw=Object.getPrototypeOf,Ww=Object.prototype.hasOwnProperty,Gw=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Kw=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of Hw(t))!Ww.call(e,i)&&i!==n&&Bw(e,i,{get:()=>t[i],enumerable:!(r=Vw(t,i))||r.enumerable});return e},qw=(e,t,n)=>(n=e==null?{}:zw(Uw(e)),Kw(t||!e||!e.__esModule?Bw(n,`default`,{value:e,enumerable:!0}):n,e)),Jw=Gw((e,t)=>{t.exports=Worker}),Yw=(e=>(e[e.UNDEFINED=0]=`UNDEFINED`,e[e.AUTOMATIC=1]=`AUTOMATIC`,e[e.READ_ONLY=2]=`READ_ONLY`,e[e.READ_WRITE=3]=`READ_WRITE`,e))(Yw||{}),Xw=(e=>(e[e.IDENTIFIER=0]=`IDENTIFIER`,e[e.NUMERIC_CONSTANT=1]=`NUMERIC_CONSTANT`,e[e.STRING_CONSTANT=2]=`STRING_CONSTANT`,e[e.OPERATOR=3]=`OPERATOR`,e[e.KEYWORD=4]=`KEYWORD`,e[e.COMMENT=5]=`COMMENT`,e))(Xw||{}),Zw=(e=>(e[e.NONE=0]=`NONE`,e[e.DEBUG=1]=`DEBUG`,e[e.INFO=2]=`INFO`,e[e.WARNING=3]=`WARNING`,e[e.ERROR=4]=`ERROR`,e))(Zw||{}),Qw=(e=>(e[e.NONE=0]=`NONE`,e[e.CONNECT=1]=`CONNECT`,e[e.DISCONNECT=2]=`DISCONNECT`,e[e.OPEN=3]=`OPEN`,e[e.QUERY=4]=`QUERY`,e[e.INSTANTIATE=5]=`INSTANTIATE`,e))(Qw||{}),$w=(e=>(e[e.NONE=0]=`NONE`,e[e.OK=1]=`OK`,e[e.ERROR=2]=`ERROR`,e[e.START=3]=`START`,e[e.RUN=4]=`RUN`,e[e.CAPTURE=5]=`CAPTURE`,e))($w||{}),eT=(e=>(e[e.NONE=0]=`NONE`,e[e.WEB_WORKER=1]=`WEB_WORKER`,e[e.NODE_WORKER=2]=`NODE_WORKER`,e[e.BINDINGS=3]=`BINDINGS`,e[e.ASYNC_DUCKDB=4]=`ASYNC_DUCKDB`,e))(eT||{}),tT=class{log(e){}},nT=class{constructor(e=2){this.level=e}log(e){e.level>=this.level&&console.log(e)}},rT=(e=>(e[e.SUCCESS=0]=`SUCCESS`,e))(rT||{}),iT=class{constructor(e,t){this._bindings=e,this._conn=t}get bindings(){return this._bindings}async close(){return this._bindings.disconnect(this._conn)}useUnsafe(e){return e(this._bindings,this._conn)}async query(e){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let t=await this._bindings.runQuery(this._conn,e),n=sw.from(t);return console.assert(n.isSync(),`Reader is not sync`),console.assert(n.isFile(),`Reader is not file`),new ZS(n)}async send(e,t=!1){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let n=await this._bindings.startPendingQuery(this._conn,e,t);for(;n==null;)n=await this._bindings.pollPendingQuery(this._conn);let r=new aT(this._bindings,this._conn,n),i=await sw.from(r);return console.assert(i.isAsync()),console.assert(i.isStream()),i}async cancelSent(){return await this._bindings.cancelPendingQuery(this._conn)}async getTableNames(e){return await this._bindings.getTableNames(this._conn,e)}async prepare(e){let t=await this._bindings.createPrepared(this._conn,e);return new oT(this._bindings,this._conn,t)}async insertArrowTable(e,t){let n=Rw(e,`stream`);await this.insertArrowFromIPCStream(n,t)}async insertArrowFromIPCStream(e,t){await this._bindings.insertArrowFromIPCStream(this._conn,e,t)}async insertCSVFromPath(e,t){await this._bindings.insertCSVFromPath(this._conn,e,t)}async insertJSONFromPath(e,t){await this._bindings.insertJSONFromPath(this._conn,e,t)}},aT=class{constructor(e,t,n){this.db=e,this.conn=t,this.header=n,this._first=!0,this._depleted=!1,this._inFlight=null}async next(){if(this._first)return this._first=!1,{done:!1,value:this.header};if(this._depleted)return{done:!0,value:null};let e;return this._inFlight==null?e=await this.db.fetchQueryResults(this.conn):(e=await this._inFlight,this._inFlight=null),this._depleted=e.length==0,this._depleted||(this._inFlight=this.db.fetchQueryResults(this.conn)),{done:this._depleted,value:e}}[Symbol.asyncIterator](){return this}},oT=class{constructor(e,t,n){this.bindings=e,this.connectionId=t,this.statementId=n}async close(){await this.bindings.closePrepared(this.connectionId,this.statementId)}async query(...e){let t=await this.bindings.runPrepared(this.connectionId,this.statementId,e),n=sw.from(t);return console.assert(n.isSync()),console.assert(n.isFile()),new ZS(n)}async send(...e){let t=await this.bindings.sendPrepared(this.connectionId,this.statementId,e),n=new aT(this.bindings,this.connectionId,t),r=await sw.from(n);return console.assert(r.isAsync()),console.assert(r.isStream()),r}},sT=(e=>(e.CANCEL_PENDING_QUERY=`CANCEL_PENDING_QUERY`,e.CLOSE_PREPARED=`CLOSE_PREPARED`,e.COLLECT_FILE_STATISTICS=`COLLECT_FILE_STATISTICS`,e.REGISTER_OPFS_FILE_NAME=`REGISTER_OPFS_FILE_NAME`,e.CONNECT=`CONNECT`,e.COPY_FILE_TO_BUFFER=`COPY_FILE_TO_BUFFER`,e.COPY_FILE_TO_PATH=`COPY_FILE_TO_PATH`,e.CREATE_PREPARED=`CREATE_PREPARED`,e.DISCONNECT=`DISCONNECT`,e.DROP_FILE=`DROP_FILE`,e.DROP_FILES=`DROP_FILES`,e.EXPORT_FILE_STATISTICS=`EXPORT_FILE_STATISTICS`,e.FETCH_QUERY_RESULTS=`FETCH_QUERY_RESULTS`,e.FLUSH_FILES=`FLUSH_FILES`,e.GET_FEATURE_FLAGS=`GET_FEATURE_FLAGS`,e.GET_TABLE_NAMES=`GET_TABLE_NAMES`,e.GET_VERSION=`GET_VERSION`,e.GLOB_FILE_INFOS=`GLOB_FILE_INFOS`,e.INSERT_ARROW_FROM_IPC_STREAM=`INSERT_ARROW_FROM_IPC_STREAM`,e.INSERT_CSV_FROM_PATH=`IMPORT_CSV_FROM_PATH`,e.INSERT_JSON_FROM_PATH=`IMPORT_JSON_FROM_PATH`,e.INSTANTIATE=`INSTANTIATE`,e.OPEN=`OPEN`,e.PING=`PING`,e.POLL_PENDING_QUERY=`POLL_PENDING_QUERY`,e.REGISTER_FILE_BUFFER=`REGISTER_FILE_BUFFER`,e.REGISTER_FILE_HANDLE=`REGISTER_FILE_HANDLE`,e.REGISTER_FILE_URL=`REGISTER_FILE_URL`,e.RESET=`RESET`,e.RUN_PREPARED=`RUN_PREPARED`,e.RUN_QUERY=`RUN_QUERY`,e.SEND_PREPARED=`SEND_PREPARED`,e.START_PENDING_QUERY=`START_PENDING_QUERY`,e.TOKENIZE=`TOKENIZE`,e))(sT||{}),cT=(e=>(e.CONNECTION_INFO=`CONNECTION_INFO`,e.ERROR=`ERROR`,e.FEATURE_FLAGS=`FEATURE_FLAGS`,e.FILE_BUFFER=`FILE_BUFFER`,e.FILE_INFOS=`FILE_INFOS`,e.FILE_SIZE=`FILE_SIZE`,e.FILE_STATISTICS=`FILE_STATISTICS`,e.INSTANTIATE_PROGRESS=`INSTANTIATE_PROGRESS`,e.LOG=`LOG`,e.OK=`OK`,e.PREPARED_STATEMENT_ID=`PREPARED_STATEMENT_ID`,e.QUERY_PLAN=`QUERY_PLAN`,e.QUERY_RESULT=`QUERY_RESULT`,e.QUERY_RESULT_CHUNK=`QUERY_RESULT_CHUNK`,e.QUERY_RESULT_HEADER=`QUERY_RESULT_HEADER`,e.QUERY_RESULT_HEADER_OR_NULL=`QUERY_RESULT_HEADER_OR_NULL`,e.REGISTERED_FILE=`REGISTERED_FILE`,e.SCRIPT_TOKENS=`SCRIPT_TOKENS`,e.SUCCESS=`SUCCESS`,e.TABLE_NAMES=`TABLE_NAMES`,e.VERSION_STRING=`VERSION_STRING`,e))(cT||{}),lT=class{constructor(e,t){this.promiseResolver=()=>{},this.promiseRejecter=()=>{},this.type=e,this.data=t,this.promise=new Promise((e,t)=>{this.promiseResolver=e,this.promiseRejecter=t})}};function uT(e){switch(e.typeId){case q.Binary:return{sqlType:`binary`};case q.Bool:return{sqlType:`bool`};case q.Date:return{sqlType:`date`};case q.DateDay:return{sqlType:`date32[d]`};case q.DateMillisecond:return{sqlType:`date64[ms]`};case q.Decimal:{let t=e;return{sqlType:`decimal`,precision:t.precision,scale:t.scale}}case q.Float:return{sqlType:`float`};case q.Float16:return{sqlType:`float16`};case q.Float32:return{sqlType:`float32`};case q.Float64:return{sqlType:`float64`};case q.Int:return{sqlType:`int32`};case q.Int16:return{sqlType:`int16`};case q.Int32:return{sqlType:`int32`};case q.Int64:return{sqlType:`int64`};case q.Uint16:return{sqlType:`uint16`};case q.Uint32:return{sqlType:`uint32`};case q.Uint64:return{sqlType:`uint64`};case q.Uint8:return{sqlType:`uint8`};case q.IntervalDayTime:return{sqlType:`interval[dt]`};case q.IntervalYearMonth:return{sqlType:`interval[m]`};case q.List:return{sqlType:`list`,valueType:uT(e.valueType)};case q.FixedSizeBinary:return{sqlType:`fixedsizebinary`,byteWidth:e.byteWidth};case q.Null:return{sqlType:`null`};case q.Utf8:return{sqlType:`utf8`};case q.Struct:return{sqlType:`struct`,fields:e.children.map(e=>dT(e.name,e.type))};case q.Map:{let t=e;return{sqlType:`map`,keyType:uT(t.keyType),valueType:uT(t.valueType)}}case q.Time:return{sqlType:`time[s]`};case q.TimeMicrosecond:return{sqlType:`time[us]`};case q.TimeMillisecond:return{sqlType:`time[ms]`};case q.TimeNanosecond:return{sqlType:`time[ns]`};case q.TimeSecond:return{sqlType:`time[s]`};case q.Timestamp:return{sqlType:`timestamp`,timezone:e.timezone||void 0};case q.TimestampSecond:return{sqlType:`timestamp[s]`,timezone:e.timezone||void 0};case q.TimestampMicrosecond:return{sqlType:`timestamp[us]`,timezone:e.timezone||void 0};case q.TimestampNanosecond:return{sqlType:`timestamp[ns]`,timezone:e.timezone||void 0};case q.TimestampMillisecond:return{sqlType:`timestamp[ms]`,timezone:e.timezone||void 0}}throw Error(`unsupported arrow type: ${e.toString()}`)}function dT(e,t){let n=uT(t);return n.name=e,n}var fT=new TextEncoder,pT=class{constructor(e,t=null){this._onInstantiationProgress=[],this._worker=null,this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{},this._nextMessageId=0,this._pendingRequests=new Map,this._logger=e,this._onMessageHandler=this.onMessage.bind(this),this._onErrorHandler=this.onError.bind(this),this._onCloseHandler=this.onClose.bind(this),t!=null&&this.attach(t)}get logger(){return this._logger}attach(e){this._worker=e,this._worker.addEventListener(`message`,this._onMessageHandler),this._worker.addEventListener(`error`,this._onErrorHandler),this._worker.addEventListener(`close`,this._onCloseHandler),this._workerShutdownPromise=new Promise((e,t)=>{this._workerShutdownResolver=e})}detach(){this._worker&&(this._worker.removeEventListener(`message`,this._onMessageHandler),this._worker.removeEventListener(`error`,this._onErrorHandler),this._worker.removeEventListener(`close`,this._onCloseHandler),this._worker=null,this._workerShutdownResolver(null),this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async terminate(){this._worker&&(this._worker.terminate(),this._worker=null,this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async postTask(e,t=[]){if(!this._worker){console.error(`cannot send a message since the worker is not set!`);return}let n=this._nextMessageId++;return this._pendingRequests.set(n,e),this._worker.postMessage({messageId:n,type:e.type,data:e.data},t),await e.promise}onMessage(e){var t;let n=e.data;switch(n.type){case`LOG`:this._logger.log(n.data);return;case`INSTANTIATE_PROGRESS`:for(let e of this._onInstantiationProgress)e(n.data);return}let r=this._pendingRequests.get(n.requestId);if(!r){console.warn(`unassociated response: [${n.requestId}, ${n.type.toString()}]`);return}if(this._pendingRequests.delete(n.requestId),n.type==`ERROR`){let e=Error(n.data.message);e.name=n.data.name,(t=Object.getOwnPropertyDescriptor(e,`stack`))!=null&&t.writable&&(e.stack=n.data.stack),r.promiseRejecter(e);return}switch(r.type){case`CLOSE_PREPARED`:case`COLLECT_FILE_STATISTICS`:case`REGISTER_OPFS_FILE_NAME`:case`COPY_FILE_TO_PATH`:case`DISCONNECT`:case`DROP_FILE`:case`DROP_FILES`:case`FLUSH_FILES`:case`INSERT_ARROW_FROM_IPC_STREAM`:case`IMPORT_CSV_FROM_PATH`:case`IMPORT_JSON_FROM_PATH`:case`OPEN`:case`PING`:case`REGISTER_FILE_BUFFER`:case`REGISTER_FILE_HANDLE`:case`REGISTER_FILE_URL`:case`RESET`:if(n.type==`OK`){r.promiseResolver(n.data);return}break;case`INSTANTIATE`:if(this._onInstantiationProgress=[],n.type==`OK`){r.promiseResolver(n.data);return}break;case`GLOB_FILE_INFOS`:if(n.type==`FILE_INFOS`){r.promiseResolver(n.data);return}break;case`GET_VERSION`:if(n.type==`VERSION_STRING`){r.promiseResolver(n.data);return}break;case`GET_FEATURE_FLAGS`:if(n.type==`FEATURE_FLAGS`){r.promiseResolver(n.data);return}break;case`GET_TABLE_NAMES`:if(n.type==`TABLE_NAMES`){r.promiseResolver(n.data);return}break;case`TOKENIZE`:if(n.type==`SCRIPT_TOKENS`){r.promiseResolver(n.data);return}break;case`COPY_FILE_TO_BUFFER`:if(n.type==`FILE_BUFFER`){r.promiseResolver(n.data);return}break;case`EXPORT_FILE_STATISTICS`:if(n.type==`FILE_STATISTICS`){r.promiseResolver(n.data);return}break;case`CONNECT`:if(n.type==`CONNECTION_INFO`){r.promiseResolver(n.data);return}break;case`RUN_PREPARED`:case`RUN_QUERY`:if(n.type==`QUERY_RESULT`){r.promiseResolver(n.data);return}break;case`SEND_PREPARED`:if(n.type==`QUERY_RESULT_HEADER`){r.promiseResolver(n.data);return}break;case`START_PENDING_QUERY`:if(n.type==`QUERY_RESULT_HEADER_OR_NULL`){r.promiseResolver(n.data);return}break;case`POLL_PENDING_QUERY`:if(n.type==`QUERY_RESULT_HEADER_OR_NULL`){r.promiseResolver(n.data);return}break;case`CANCEL_PENDING_QUERY`:if(this._onInstantiationProgress=[],n.type==`SUCCESS`){r.promiseResolver(n.data);return}break;case`FETCH_QUERY_RESULTS`:if(n.type==`QUERY_RESULT_CHUNK`){r.promiseResolver(n.data);return}break;case`CREATE_PREPARED`:if(n.type==`PREPARED_STATEMENT_ID`){r.promiseResolver(n.data);return}break}r.promiseRejecter(Error(`unexpected response type: ${n.type.toString()}`))}onError(e){console.error(e),console.error(`error in duckdb worker: ${e.message}`),this._pendingRequests.clear()}onClose(){if(this._workerShutdownResolver(null),this._pendingRequests.size!=0){console.warn(`worker terminated with ${this._pendingRequests.size} pending requests`);return}this._pendingRequests.clear()}async reset(){let e=new lT(`RESET`,null);return await this.postTask(e)}async ping(){let e=new lT(`PING`,null);await this.postTask(e)}async dropFile(e){let t=new lT(`DROP_FILE`,e);return await this.postTask(t)}async dropFiles(){let e=new lT(`DROP_FILES`,null);return await this.postTask(e)}async flushFiles(){let e=new lT(`FLUSH_FILES`,null);return await this.postTask(e)}async instantiate(e,t=null,n=e=>{}){this._onInstantiationProgress.push(n);let r=new lT(`INSTANTIATE`,[e,t]);return await this.postTask(r)}async getVersion(){let e=new lT(`GET_VERSION`,null);return await this.postTask(e)}async getFeatureFlags(){let e=new lT(`GET_FEATURE_FLAGS`,null);return await this.postTask(e)}async open(e){let t=new lT(`OPEN`,e);await this.postTask(t)}async tokenize(e){let t=new lT(`TOKENIZE`,e);return await this.postTask(t)}async connectInternal(){let e=new lT(`CONNECT`,null);return await this.postTask(e)}async connect(){let e=await this.connectInternal();return new iT(this,e)}async disconnect(e){let t=new lT(`DISCONNECT`,e);await this.postTask(t)}async runQuery(e,t){let n=new lT(`RUN_QUERY`,[e,t]);return await this.postTask(n)}async startPendingQuery(e,t,n=!1){let r=new lT(`START_PENDING_QUERY`,[e,t,n]);return await this.postTask(r)}async pollPendingQuery(e){let t=new lT(`POLL_PENDING_QUERY`,e);return await this.postTask(t)}async cancelPendingQuery(e){let t=new lT(`CANCEL_PENDING_QUERY`,e);return await this.postTask(t)}async fetchQueryResults(e){let t=new lT(`FETCH_QUERY_RESULTS`,e);return await this.postTask(t)}async getTableNames(e,t){let n=new lT(`GET_TABLE_NAMES`,[e,t]);return await this.postTask(n)}async createPrepared(e,t){let n=new lT(`CREATE_PREPARED`,[e,t]);return await this.postTask(n)}async closePrepared(e,t){let n=new lT(`CLOSE_PREPARED`,[e,t]);await this.postTask(n)}async runPrepared(e,t,n){let r=new lT(`RUN_PREPARED`,[e,t,n]);return await this.postTask(r)}async sendPrepared(e,t,n){let r=new lT(`SEND_PREPARED`,[e,t,n]);return await this.postTask(r)}async globFiles(e){let t=new lT(`GLOB_FILE_INFOS`,e);return await this.postTask(t)}async registerFileText(e,t){let n=fT.encode(t);await this.registerFileBuffer(e,n)}async registerFileURL(e,t,n,r){t===void 0&&(t=e);let i=new lT(`REGISTER_FILE_URL`,[e,t,n,r]);await this.postTask(i)}async registerEmptyFileBuffer(e){}async registerFileBuffer(e,t){let n=new lT(`REGISTER_FILE_BUFFER`,[e,t]);await this.postTask(n,[t.buffer])}async registerFileHandle(e,t,n,r){let i=new lT(`REGISTER_FILE_HANDLE`,[e,t,n,r]);await this.postTask(i,[])}async registerOPFSFileName(e){let t=new lT(`REGISTER_OPFS_FILE_NAME`,[e]);await this.postTask(t,[])}async collectFileStatistics(e,t){let n=new lT(`COLLECT_FILE_STATISTICS`,[e,t]);await this.postTask(n,[])}async exportFileStatistics(e){let t=new lT(`EXPORT_FILE_STATISTICS`,e);return await this.postTask(t,[])}async copyFileToBuffer(e){let t=new lT(`COPY_FILE_TO_BUFFER`,e);return await this.postTask(t)}async copyFileToPath(e,t){let n=new lT(`COPY_FILE_TO_PATH`,[e,t]);await this.postTask(n)}async insertArrowFromIPCStream(e,t,n){if(t.length==0)return;let r=new lT(`INSERT_ARROW_FROM_IPC_STREAM`,[e,t,n]);await this.postTask(r,[t.buffer])}async insertCSVFromPath(e,t,n){if(n.columns!==void 0){let e=[];for(let t in n.columns){let r=n.columns[t];e.push(dT(t,r))}n.columnsFlat=e,delete n.columns}let r=new lT(`IMPORT_CSV_FROM_PATH`,[e,t,n]);await this.postTask(r)}async insertJSONFromPath(e,t,n){if(n.columns!==void 0){let e=[];for(let t in n.columns){let r=n.columns[t];e.push(dT(t,r))}n.columnsFlat=e,delete n.columns}let r=new lT(`IMPORT_JSON_FROM_PATH`,[e,t,n]);await this.postTask(r)}};function mT(){let e=new TextDecoder;return t=>(typeof SharedArrayBuffer<`u`&&t.buffer instanceof SharedArrayBuffer&&(t=new Uint8Array(t)),e.decode(t))}var hT=mT(),gT=(e=>(e[e.BUFFER=0]=`BUFFER`,e[e.NODE_FS=1]=`NODE_FS`,e[e.BROWSER_FILEREADER=2]=`BROWSER_FILEREADER`,e[e.BROWSER_FSACCESS=3]=`BROWSER_FSACCESS`,e[e.HTTP=4]=`HTTP`,e[e.S3=5]=`S3`,e))(gT||{}),_T=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),vT=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),yT=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),bT=()=>(async e=>{try{return typeof MessageChannel<`u`&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(e)}catch{return!1}})(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])),xT={name:`@duckdb/duckdb-wasm`,version:`1.29.1-dev68.0`,description:`DuckDB powered by WebAssembly`,license:`MIT`,repository:{type:`git`,url:`https://github.com/duckdb/duckdb-wasm.git`},keywords:[`sql`,`duckdb`,`relational`,`database`,`data`,`query`,`wasm`,`analytics`,`olap`,`arrow`,`parquet`,`json`,`csv`],dependencies:{"apache-arrow":`^17.0.0`},devDependencies:{"@types/emscripten":`^1.39.10`,"@types/jasmine":`^5.1.4`,"@typescript-eslint/eslint-plugin":`^6.21.0`,"@typescript-eslint/parser":`^6.21.0`,esbuild:`^0.20.2`,eslint:`^8.57.0`,"eslint-plugin-jasmine":`^4.1.3`,"eslint-plugin-react":`^7.34.0`,"fast-glob":`^3.3.2`,jasmine:`^5.1.0`,"jasmine-core":`^5.1.2`,"jasmine-spec-reporter":`^7.0.0`,"js-sha256":`^0.11.0`,karma:`^6.4.2`,"karma-chrome-launcher":`^3.2.0`,"karma-coverage":`^2.2.1`,"karma-firefox-launcher":`^2.1.3`,"karma-jasmine":`^5.1.0`,"karma-jasmine-html-reporter":`^2.1.0`,"karma-sourcemap-loader":`^0.4.0`,"karma-spec-reporter":`^0.0.36`,"make-dir":`^4.0.0`,nyc:`^15.1.0`,prettier:`^3.2.5`,puppeteer:`^22.8.0`,rimraf:`^5.0.5`,s3rver:`^3.7.1`,typedoc:`^0.25.13`,typescript:`^5.3.3`,"wasm-feature-detect":`^1.6.1`,"web-worker":`^1.2.0`},scripts:{"build:debug":`node bundle.mjs debug && tsc --emitDeclarationOnly`,"build:release":`node bundle.mjs release && tsc --emitDeclarationOnly`,docs:`typedoc`,report:`node ./coverage.mjs`,"test:node":`node --enable-source-maps ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs`,"test:node:debug":`node --inspect-brk --enable-source-maps ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs`,"test:node:coverage":`nyc -r json --report-dir ./coverage/node node ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs`,"test:firefox":`karma start ./karma/tests-firefox.cjs`,"test:chrome":`karma start ./karma/tests-chrome.cjs`,"test:chrome:eh":`karma start ./karma/tests-chrome-eh.cjs`,"test:chrome:coverage":`karma start ./karma/tests-chrome-coverage.cjs`,"test:browser":`karma start ./karma/tests-all.cjs`,"test:browser:debug":`karma start ./karma/tests-debug.cjs`,test:`npm run test:chrome && npm run test:node`,"test:coverage":`npm run test:chrome:coverage && npm run test:node:coverage && npm run report`,lint:`eslint src test`},files:[`dist`,`!dist/tests-*`,`!dist/duckdb-browser-mvp.worker.js.map`,`!dist/types/test`],main:`dist/duckdb-browser.cjs`,module:`dist/duckdb-browser.mjs`,types:`dist/duckdb-browser.d.ts`,jsdelivr:`dist/duckdb-browser.cjs`,unpkg:`dist/duckdb-browser.mjs`,sideEffects:!1,browser:{fs:!1,path:!1,perf_hooks:!1,os:!1,worker_threads:!1},exports:{"./dist/duckdb-mvp.wasm":`./dist/duckdb-mvp.wasm`,"./dist/duckdb-eh.wasm":`./dist/duckdb-eh.wasm`,"./dist/duckdb-coi.wasm":`./dist/duckdb-coi.wasm`,"./dist/duckdb-browser":`./dist/duckdb-browser.mjs`,"./dist/duckdb-browser.cjs":`./dist/duckdb-browser.cjs`,"./dist/duckdb-browser.mjs":`./dist/duckdb-browser.mjs`,"./dist/duckdb-browser-coi.pthread.worker.js":`./dist/duckdb-browser-coi.pthread.worker.js`,"./dist/duckdb-browser-coi.worker.js":`./dist/duckdb-browser-coi.worker.js`,"./dist/duckdb-browser-eh.worker.js":`./dist/duckdb-browser-eh.worker.js`,"./dist/duckdb-browser-mvp.worker.js":`./dist/duckdb-browser-mvp.worker.js`,"./dist/duckdb-node":`./dist/duckdb-node.cjs`,"./dist/duckdb-node.cjs":`./dist/duckdb-node.cjs`,"./dist/duckdb-node-blocking":`./dist/duckdb-node-blocking.cjs`,"./dist/duckdb-node-blocking.cjs":`./dist/duckdb-node-blocking.cjs`,"./dist/duckdb-node-eh.worker.cjs":`./dist/duckdb-node-eh.worker.cjs`,"./dist/duckdb-node-mvp.worker.cjs":`./dist/duckdb-node-mvp.worker.cjs`,"./blocking":{node:{types:`./dist/duckdb-node-blocking.d.ts`,require:`./dist/duckdb-node-blocking.cjs`,import:`./dist/duckdb-node-blocking.cjs`},types:`./dist/duckdb-node-blocking.d.ts`,import:`./dist/duckdb-node-blocking.mjs`,require:`./dist/duckdb-node-blocking.cjs`},".":{browser:{types:`./dist/duckdb-browser.d.ts`,import:`./dist/duckdb-browser.mjs`,require:`./dist/duckdb-browser.cjs`},node:{types:`./dist/duckdb-node.d.ts`,import:`./dist/duckdb-node.cjs`,require:`./dist/duckdb-node.cjs`},types:`./dist/duckdb-browser.d.ts`,import:`./dist/duckdb-browser.mjs`,require:`./dist/duckdb-browser.cjs`}}},ST=xT.name,CT=xT.version,wT=xT.version.split(`.`),TT=wT[0],ET=wT[1],DT=wT[2],OT=()=>typeof navigator>`u`,kT=()=>OT()?`node`:navigator.userAgent,AT=()=>kT().includes(`Firefox`),jT=()=>/^((?!chrome|android).)*safari/i.test(kT()),MT=null,NT=null,PT=null,FT=null,IT=null;async function LT(){return MT??=typeof BigInt64Array<`u`,NT??=await vT(),PT??=await bT(),FT??=await yT(),IT??=await _T(),{bigInt64Array:MT,crossOriginIsolated:OT()||globalThis.crossOriginIsolated||!1,wasmExceptions:NT,wasmSIMD:FT,wasmThreads:PT,wasmBulkMemory:IT}}async function RT(e){let t=await LT();if(t.wasmExceptions){if(t.wasmSIMD&&t.wasmThreads&&t.crossOriginIsolated&&e.coi)return{mainModule:e.coi.mainModule,mainWorker:e.coi.mainWorker,pthreadWorker:e.coi.pthreadWorker};if(e.eh)return{mainModule:e.eh.mainModule,mainWorker:e.eh.mainWorker,pthreadWorker:null}}return{mainModule:e.mvp.mainModule,mainWorker:e.mvp.mainWorker,pthreadWorker:null}}var zT=qw(Jw());const BT=Symbol.for(`constructDateFrom`),VT={},HT={};function UT(e,t){try{let n=VT[e]||=new Intl.DateTimeFormat(`en-GB`,{timeZone:e,hour:`numeric`,timeZoneName:`longOffset`}).format,r=n(t).split(`GMT`)[1]||``;return r in HT?HT[r]:GT(r,r.split(`:`))}catch{if(e in HT)return HT[e];let t=e?.match(WT);return t?GT(e,t.slice(1)):NaN}}const WT=/([+-]\d\d):?(\d\d)?/;function GT(e,t){let n=+t[0],r=+(t[1]||0);return HT[e]=n>0?n*60+r:n*60-r}var KT=class e extends Date{constructor(...e){super(),e.length>1&&typeof e[e.length-1]==`string`&&(this.timeZone=e.pop()),this.internal=new Date,isNaN(UT(this.timeZone,this))?this.setTime(NaN):e.length?typeof e[0]==`number`&&(e.length===1||e.length===2&&typeof e[1]!=`number`)?this.setTime(e[0]):typeof e[0]==`string`?this.setTime(+new Date(e[0])):e[0]instanceof Date?this.setTime(+e[0]):(this.setTime(+new Date(...e)),XT(this,NaN),JT(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}withTimeZone(t){return new e(+this,t)}getTimezoneOffset(){return-UT(this.timeZone,this)}setTime(e){return Date.prototype.setTime.apply(this,arguments),JT(this),+this}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}};const qT=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!qT.test(e))return;let t=e.replace(qT,`$1UTC`);KT.prototype[t]&&(e.startsWith(`get`)?KT.prototype[e]=function(){return this.internal[t]()}:(KT.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),YT(this),+this},KT.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),JT(this),+this}))});function JT(e){e.internal.setTime(+e),e.internal.setUTCMinutes(e.internal.getUTCMinutes()-e.getTimezoneOffset())}function YT(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),XT(e)}function XT(e){let t=UT(e.timeZone,e),n=new Date(+e);n.setUTCHours(n.getUTCHours()-1);let r=-new Date(+e).getTimezoneOffset(),i=-new Date(+n).getTimezoneOffset(),a=r-i,o=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();a&&o&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+a);let s=r-t;s&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+s);let c=UT(e.timeZone,e),l=-new Date(+e).getTimezoneOffset(),u=l-c,d=c!==t,f=u-s;if(d&&f){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+f);let t=UT(e.timeZone,e),n=c-t;n&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+n),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+n))}}var ZT=class e extends KT{static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}toISOString(){let[e,t,n]=this.tzComponents(),r=`${e}${t}:${n}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){let[e,t,n,r]=this.internal.toUTCString().split(` `);return`${e?.slice(0,-1)} ${n} ${t} ${r}`}toTimeString(){let e=this.internal.toUTCString().split(` `)[4],[t,n,r]=this.tzComponents();return`${e} GMT${t}${n}${r} (${QT(this.timeZone,this)})`}toLocaleString(e,t){return Date.prototype.toLocaleString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleDateString(e,t){return Date.prototype.toLocaleDateString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleTimeString(e,t){return Date.prototype.toLocaleTimeString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}tzComponents(){let e=this.getTimezoneOffset(),t=e>0?`-`:`+`,n=String(Math.floor(Math.abs(e)/60)).padStart(2,`0`),r=String(Math.abs(e)%60).padStart(2,`0`);return[t,n,r]}withTimeZone(t){return new e(+this,t)}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}};function QT(e,t){return new Intl.DateTimeFormat(`en-GB`,{timeZone:e,timeZoneName:`long`}).format(t).slice(12)}const $T=new TextDecoder(`utf-8`),eE=e=>$T.decode(e),tE=new TextEncoder,nE=e=>tE.encode(e),rE=e=>typeof e==`function`,iE=e=>e!=null&&Object(e)===e,aE=e=>iE(e)&&rE(e.then),oE=e=>iE(e)&&rE(e[Symbol.iterator]),sE=e=>iE(e)&&rE(e[Symbol.asyncIterator]),cE=e=>iE(e)&&`done`in e&&`value`in e,lE=e=>iE(e)&&rE(e.clear)&&rE(e.bytes)&&rE(e.position)&&rE(e.setPosition)&&rE(e.capacity)&&rE(e.getBufferIdentifier)&&rE(e.createLong);var uE={};An(uE,{compareArrayLike:()=>YE,joinUint8Arrays:()=>mE,memcpy:()=>pE,rebaseValueOffsets:()=>JE,toArrayBufferView:()=>hE,toArrayBufferViewAsyncIterator:()=>RE,toArrayBufferViewIterator:()=>OE,toBigInt64Array:()=>yE,toBigUint64Array:()=>CE,toFloat32Array:()=>wE,toFloat32ArrayAsyncIterator:()=>GE,toFloat32ArrayIterator:()=>FE,toFloat64Array:()=>TE,toFloat64ArrayAsyncIterator:()=>KE,toFloat64ArrayIterator:()=>IE,toInt16Array:()=>_E,toInt16ArrayAsyncIterator:()=>BE,toInt16ArrayIterator:()=>AE,toInt32Array:()=>vE,toInt32ArrayAsyncIterator:()=>VE,toInt32ArrayIterator:()=>jE,toInt8Array:()=>gE,toInt8ArrayAsyncIterator:()=>zE,toInt8ArrayIterator:()=>kE,toUint16Array:()=>xE,toUint16ArrayAsyncIterator:()=>UE,toUint16ArrayIterator:()=>NE,toUint32Array:()=>SE,toUint32ArrayAsyncIterator:()=>WE,toUint32ArrayIterator:()=>PE,toUint8Array:()=>bE,toUint8ArrayAsyncIterator:()=>HE,toUint8ArrayIterator:()=>ME,toUint8ClampedArray:()=>EE,toUint8ClampedArrayAsyncIterator:()=>qE,toUint8ClampedArrayIterator:()=>LE});const dE=typeof SharedArrayBuffer<`u`?SharedArrayBuffer:ArrayBuffer;function fE(e){let t=e[0]?[e[0]]:[],n,r,i,a;for(let o,s,c=0,l=0,u=e.length;++ce+t.byteLength,0),i,a,o,s=0,c=-1,l=Math.min(t||1/0,r);for(let e=n.length;++chE(Int8Array,e),_E=e=>hE(Int16Array,e),vE=e=>hE(Int32Array,e),yE=e=>hE(BigInt64Array,e),bE=e=>hE(Uint8Array,e),xE=e=>hE(Uint16Array,e),SE=e=>hE(Uint32Array,e),CE=e=>hE(BigUint64Array,e),wE=e=>hE(Float32Array,e),TE=e=>hE(Float64Array,e),EE=e=>hE(Uint8ClampedArray,e),DE=e=>(e.next(),e);function*OE(e,t){let n=function*(e){yield e},r=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof dE?n(t):oE(t)?t:n(t);return yield*DE(function*(t){let n=null;do n=t.next(yield hE(e,n));while(!n.done)}(r[Symbol.iterator]())),new e}const kE=e=>OE(Int8Array,e),AE=e=>OE(Int16Array,e),jE=e=>OE(Int32Array,e),ME=e=>OE(Uint8Array,e),NE=e=>OE(Uint16Array,e),PE=e=>OE(Uint32Array,e),FE=e=>OE(Float32Array,e),IE=e=>OE(Float64Array,e),LE=e=>OE(Uint8ClampedArray,e);function RE(e,t){return Lh(this,arguments,function*(){if(aE(t))return yield Ih(yield Ih(yield*Rh(zh(RE(e,yield Ih(t))))));let n=function(e){return Lh(this,arguments,function*(){yield yield Ih(yield Ih(e))})},r=function(e){return Lh(this,arguments,function*(){yield Ih(yield*Rh(zh(DE(function*(e){let t=null;do t=e.next(yield t?.value);while(!t.done)}(e[Symbol.iterator]())))))})},i=typeof t==`string`||ArrayBuffer.isView(t)||t instanceof ArrayBuffer||t instanceof dE?n(t):oE(t)?r(t):sE(t)?t:n(t);return yield Ih(yield*Rh(zh(DE(function(t){return Lh(this,arguments,function*(){let n=null;do n=yield Ih(t.next(yield yield Ih(hE(e,n))));while(!n.done)})}(i[Symbol.asyncIterator]()))))),yield Ih(new e)})}const zE=e=>RE(Int8Array,e),BE=e=>RE(Int16Array,e),VE=e=>RE(Int32Array,e),HE=e=>RE(Uint8Array,e),UE=e=>RE(Uint16Array,e),WE=e=>RE(Uint32Array,e),GE=e=>RE(Float32Array,e),KE=e=>RE(Float64Array,e),qE=e=>RE(Uint8ClampedArray,e);function JE(e,t,n){if(e!==0){n=n.slice(0,t);for(let t=-1,r=n.length;++t0)do if(e[n]!==t[n])return!1;while(++niD});const rD=void 0;function iD(e){if(e===null)return`null`;if(e===rD)return`undefined`;switch(typeof e){case`number`:return`${e}`;case`bigint`:return`${e}`;case`string`:return`"${e}"`}return typeof e[Symbol.toPrimitive]==`function`?e[Symbol.toPrimitive](`string`):ArrayBuffer.isView(e)?e instanceof BigInt64Array||e instanceof BigUint64Array?`[${[...e].map(e=>iD(e))}]`:`[${e}]`:ArrayBuffer.isView(e)?`[${e}]`:JSON.stringify(e,(e,t)=>typeof t==`bigint`?`${t}`:t)}function aD(e){if(typeof e==`bigint`&&(e<-(2**53-1)||e>2**53-1))throw TypeError(`${e} is not safe to convert to a number.`);return Number(e)}function oD(e,t){return aD(e/t)+aD(e%t)/aD(t)}var sD={};An(sD,{BN:()=>yD,bigNumToBigInt:()=>_D,bigNumToNumber:()=>hD,bigNumToString:()=>gD,isArrowBigNumSymbol:()=>cD});const cD=Symbol.for(`isArrowBigNum`);function lD(e,...t){return t.length===0?Object.setPrototypeOf(hE(this.TypedArray,e),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(e,...t),this.constructor.prototype)}lD.prototype[cD]=!0,lD.prototype.toJSON=function(){return`"${gD(this)}"`},lD.prototype.valueOf=function(e){return hD(this,e)},lD.prototype.toString=function(){return gD(this)},lD.prototype[Symbol.toPrimitive]=function(e=`default`){switch(e){case`number`:return hD(this);case`string`:return gD(this);case`default`:return _D(this)}return gD(this)};function uD(...e){return lD.apply(this,e)}function dD(...e){return lD.apply(this,e)}function fD(...e){return lD.apply(this,e)}Object.setPrototypeOf(uD.prototype,Object.create(Int32Array.prototype)),Object.setPrototypeOf(dD.prototype,Object.create(Uint32Array.prototype)),Object.setPrototypeOf(fD.prototype,Object.create(Uint32Array.prototype)),Object.assign(uD.prototype,lD.prototype,{constructor:uD,signed:!0,TypedArray:Int32Array,BigIntArray:BigInt64Array}),Object.assign(dD.prototype,lD.prototype,{constructor:dD,signed:!1,TypedArray:Uint32Array,BigIntArray:BigUint64Array}),Object.assign(fD.prototype,lD.prototype,{constructor:fD,signed:!0,TypedArray:Uint32Array,BigIntArray:BigUint64Array});const pD=BigInt(4294967296)*BigInt(4294967296),mD=pD-BigInt(1);function hD(e,t){let{buffer:n,byteOffset:r,byteLength:i,signed:a}=e,o=new BigUint64Array(n,r,i/8),s=a&&o.at(-1)&BigInt(1)<0){let e=BigInt(`1`.padEnd(t+1,`0`)),n=c/e,r=s?-(c%e):c%e,i=aD(n),a=`${r}`.padStart(t,`0`),o=s&&i===0?`-`:``;return+`${o}${i}.${a}`}return aD(c)}function gD(e){if(e.byteLength===8){let t=new e.BigIntArray(e.buffer,e.byteOffset,1);return`${t[0]}`}if(!e.signed)return vD(e);let t=new Uint16Array(e.buffer,e.byteOffset,e.byteLength/2),n=new Int16Array([t.at(-1)])[0];if(n>=0)return vD(e);t=t.slice();let r=1;for(let e=0;e(e.children=null,e.ArrayType=Array,e.OffsetArrayType=Int32Array,e[Symbol.toStringTag]=`DataType`))(HD.prototype);var UD=class extends HD{constructor(){super(J.Null)}toString(){return`Null`}};xD=Symbol.toStringTag,UD[xD]=(e=>e[Symbol.toStringTag]=`Null`)(UD.prototype);var WD=class extends HD{constructor(e,t){super(J.Int),this.isSigned=e,this.bitWidth=t}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?BigInt64Array:BigUint64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`${this.isSigned?`I`:`Ui`}nt${this.bitWidth}`}};SD=Symbol.toStringTag,WD[SD]=(e=>(e.isSigned=null,e.bitWidth=null,e[Symbol.toStringTag]=`Int`))(WD.prototype);var GD=class extends WD{constructor(){super(!0,8)}get ArrayType(){return Int8Array}},KD=class extends WD{constructor(){super(!0,16)}get ArrayType(){return Int16Array}},qD=class extends WD{constructor(){super(!0,32)}get ArrayType(){return Int32Array}},JD=class extends WD{constructor(){super(!0,64)}get ArrayType(){return BigInt64Array}},YD=class extends WD{constructor(){super(!1,8)}get ArrayType(){return Uint8Array}},XD=class extends WD{constructor(){super(!1,16)}get ArrayType(){return Uint16Array}},ZD=class extends WD{constructor(){super(!1,32)}get ArrayType(){return Uint32Array}},QD=class extends WD{constructor(){super(!1,64)}get ArrayType(){return BigUint64Array}};Object.defineProperty(GD.prototype,`ArrayType`,{value:Int8Array}),Object.defineProperty(KD.prototype,`ArrayType`,{value:Int16Array}),Object.defineProperty(qD.prototype,`ArrayType`,{value:Int32Array}),Object.defineProperty(JD.prototype,`ArrayType`,{value:BigInt64Array}),Object.defineProperty(YD.prototype,`ArrayType`,{value:Uint8Array}),Object.defineProperty(XD.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(ZD.prototype,`ArrayType`,{value:Uint32Array}),Object.defineProperty(QD.prototype,`ArrayType`,{value:BigUint64Array});var $D=class extends HD{constructor(e){super(J.Float),this.precision=e}get ArrayType(){switch(this.precision){case ZE.HALF:return Uint16Array;case ZE.SINGLE:return Float32Array;case ZE.DOUBLE:return Float64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}toString(){return`Float${this.precision<<5||16}`}};CD=Symbol.toStringTag,$D[CD]=(e=>(e.precision=null,e[Symbol.toStringTag]=`Float`))($D.prototype);var eO=class extends $D{constructor(){super(ZE.HALF)}},tO=class extends $D{constructor(){super(ZE.SINGLE)}},nO=class extends $D{constructor(){super(ZE.DOUBLE)}};Object.defineProperty(eO.prototype,`ArrayType`,{value:Uint16Array}),Object.defineProperty(tO.prototype,`ArrayType`,{value:Float32Array}),Object.defineProperty(nO.prototype,`ArrayType`,{value:Float64Array});var rO=class extends HD{constructor(){super(J.Binary)}toString(){return`Binary`}};wD=Symbol.toStringTag,rO[wD]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Binary`))(rO.prototype);var iO=class extends HD{constructor(){super(J.LargeBinary)}toString(){return`LargeBinary`}};TD=Symbol.toStringTag,iO[TD]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeBinary`))(iO.prototype);var aO=class extends HD{constructor(){super(J.Utf8)}toString(){return`Utf8`}};ED=Symbol.toStringTag,aO[ED]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Utf8`))(aO.prototype);var oO=class extends HD{constructor(){super(J.LargeUtf8)}toString(){return`LargeUtf8`}};DD=Symbol.toStringTag,oO[DD]=(e=>(e.ArrayType=Uint8Array,e.OffsetArrayType=BigInt64Array,e[Symbol.toStringTag]=`LargeUtf8`))(oO.prototype);var sO=class extends HD{constructor(){super(J.Bool)}toString(){return`Bool`}};OD=Symbol.toStringTag,sO[OD]=(e=>(e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`Bool`))(sO.prototype);var cO=class extends HD{constructor(e,t,n=128){super(J.Decimal),this.scale=e,this.precision=t,this.bitWidth=n}toString(){return`Decimal[${this.precision}e${this.scale>0?`+`:``}${this.scale}]`}};kD=Symbol.toStringTag,cO[kD]=(e=>(e.scale=null,e.precision=null,e.ArrayType=Uint32Array,e[Symbol.toStringTag]=`Decimal`))(cO.prototype);var lO=class extends HD{constructor(e){super(J.Date),this.unit=e}toString(){return`Date${(this.unit+1)*32}<${QE[this.unit]}>`}get ArrayType(){return this.unit===QE.DAY?Int32Array:BigInt64Array}};AD=Symbol.toStringTag,lO[AD]=(e=>(e.unit=null,e[Symbol.toStringTag]=`Date`))(lO.prototype);var uO=class extends HD{constructor(e,t){super(J.Time),this.unit=e,this.bitWidth=t}toString(){return`Time${this.bitWidth}<${$E[this.unit]}>`}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return BigInt64Array}throw Error(`Unrecognized ${this[Symbol.toStringTag]} type`)}};jD=Symbol.toStringTag,uO[jD]=(e=>(e.unit=null,e.bitWidth=null,e[Symbol.toStringTag]=`Time`))(uO.prototype);var dO=class extends HD{constructor(e,t){super(J.Timestamp),this.unit=e,this.timezone=t}toString(){return`Timestamp<${$E[this.unit]}${this.timezone?`, ${this.timezone}`:``}>`}};MD=Symbol.toStringTag,dO[MD]=(e=>(e.unit=null,e.timezone=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Timestamp`))(dO.prototype);var fO=class extends HD{constructor(e){super(J.Interval),this.unit=e}toString(){return`Interval<${eD[this.unit]}>`}};ND=Symbol.toStringTag,fO[ND]=(e=>(e.unit=null,e.ArrayType=Int32Array,e[Symbol.toStringTag]=`Interval`))(fO.prototype);var pO=class extends HD{constructor(e){super(J.Duration),this.unit=e}toString(){return`Duration<${$E[this.unit]}>`}};PD=Symbol.toStringTag,pO[PD]=(e=>(e.unit=null,e.ArrayType=BigInt64Array,e[Symbol.toStringTag]=`Duration`))(pO.prototype);var mO=class extends HD{constructor(e){super(J.List),this.children=[e]}toString(){return`List<${this.valueType}>`}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};FD=Symbol.toStringTag,mO[FD]=(e=>(e.children=null,e[Symbol.toStringTag]=`List`))(mO.prototype);var hO=class extends HD{constructor(e){super(J.Struct),this.children=e}toString(){return`Struct<{${this.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};ID=Symbol.toStringTag,hO[ID]=(e=>(e.children=null,e[Symbol.toStringTag]=`Struct`))(hO.prototype);var gO=class extends HD{constructor(e,t,n){super(J.Union),this.mode=e,this.children=n,this.typeIds=t=Int32Array.from(t),this.typeIdToChildIndex=t.reduce((e,t,n)=>(e[t]=n)&&e||e,Object.create(null))}toString(){return`${this[Symbol.toStringTag]}<${this.children.map(e=>`${e.type}`).join(` | `)}>`}};LD=Symbol.toStringTag,gO[LD]=(e=>(e.mode=null,e.typeIds=null,e.children=null,e.typeIdToChildIndex=null,e.ArrayType=Int8Array,e[Symbol.toStringTag]=`Union`))(gO.prototype);var _O=class extends HD{constructor(e){super(J.FixedSizeBinary),this.byteWidth=e}toString(){return`FixedSizeBinary[${this.byteWidth}]`}};RD=Symbol.toStringTag,_O[RD]=(e=>(e.byteWidth=null,e.ArrayType=Uint8Array,e[Symbol.toStringTag]=`FixedSizeBinary`))(_O.prototype);var vO=class extends HD{constructor(e,t){super(J.FixedSizeList),this.listSize=e,this.children=[t]}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}};zD=Symbol.toStringTag,vO[zD]=(e=>(e.children=null,e.listSize=null,e[Symbol.toStringTag]=`FixedSizeList`))(vO.prototype);var yO=class extends HD{constructor(e,t=!1){var n,r,i;if(super(J.Map),this.children=[e],this.keysSorted=t,e&&(e.name=`entries`,(n=e?.type)?.children)){let t=(r=e?.type)?.children[0];t&&(t.name=`key`);let n=(i=e?.type)?.children[1];n&&(n.name=`value`)}}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return`Map<{${this.children[0].type.children.map(e=>`${e.name}:${e.type}`).join(`, `)}}>`}};BD=Symbol.toStringTag,yO[BD]=(e=>(e.children=null,e.keysSorted=null,e[Symbol.toStringTag]=`Map_`))(yO.prototype);const bO=(e=>()=>++e)(-1);var xO=class extends HD{constructor(e,t,n,r){super(J.Dictionary),this.indices=t,this.dictionary=e,this.isOrdered=r||!1,this.id=n==null?bO():aD(n)}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return`Dictionary<${this.indices}, ${this.dictionary}>`}};VD=Symbol.toStringTag,xO[VD]=(e=>(e.id=null,e.indices=null,e.isOrdered=null,e.dictionary=null,e[Symbol.toStringTag]=`Dictionary`))(xO.prototype);function SO(e){let t=e;switch(e.typeId){case J.Decimal:return e.bitWidth/32;case J.Interval:return t.unit===eD.MONTH_DAY_NANO?4:1+t.unit;case J.FixedSizeList:return t.listSize;case J.FixedSizeBinary:return t.byteWidth;default:return 1}}var CO=class{visitMany(e,...t){return e.map((e,n)=>this.visit(e,...t.map(e=>e[n])))}visit(...e){return this.getVisitFn(e[0],!1).apply(this,e)}getVisitFn(e,t=!0){return wO(this,e,t)}getVisitFnByTypeId(e,t=!0){return TO(this,e,t)}visitNull(e,...t){return null}visitBool(e,...t){return null}visitInt(e,...t){return null}visitFloat(e,...t){return null}visitUtf8(e,...t){return null}visitLargeUtf8(e,...t){return null}visitBinary(e,...t){return null}visitLargeBinary(e,...t){return null}visitFixedSizeBinary(e,...t){return null}visitDate(e,...t){return null}visitTimestamp(e,...t){return null}visitTime(e,...t){return null}visitDecimal(e,...t){return null}visitList(e,...t){return null}visitStruct(e,...t){return null}visitUnion(e,...t){return null}visitDictionary(e,...t){return null}visitInterval(e,...t){return null}visitDuration(e,...t){return null}visitFixedSizeList(e,...t){return null}visitMap(e,...t){return null}};function wO(e,t,n=!0){return typeof t==`number`?TO(e,t,n):typeof t==`string`&&t in J?TO(e,J[t],n):t&&t instanceof HD?TO(e,EO(t),n):t?.type&&t.type instanceof HD?TO(e,EO(t.type),n):TO(e,J.NONE,n)}function TO(e,t,n=!0){let r=null;switch(t){case J.Null:r=e.visitNull;break;case J.Bool:r=e.visitBool;break;case J.Int:r=e.visitInt;break;case J.Int8:r=e.visitInt8||e.visitInt;break;case J.Int16:r=e.visitInt16||e.visitInt;break;case J.Int32:r=e.visitInt32||e.visitInt;break;case J.Int64:r=e.visitInt64||e.visitInt;break;case J.Uint8:r=e.visitUint8||e.visitInt;break;case J.Uint16:r=e.visitUint16||e.visitInt;break;case J.Uint32:r=e.visitUint32||e.visitInt;break;case J.Uint64:r=e.visitUint64||e.visitInt;break;case J.Float:r=e.visitFloat;break;case J.Float16:r=e.visitFloat16||e.visitFloat;break;case J.Float32:r=e.visitFloat32||e.visitFloat;break;case J.Float64:r=e.visitFloat64||e.visitFloat;break;case J.Utf8:r=e.visitUtf8;break;case J.LargeUtf8:r=e.visitLargeUtf8;break;case J.Binary:r=e.visitBinary;break;case J.LargeBinary:r=e.visitLargeBinary;break;case J.FixedSizeBinary:r=e.visitFixedSizeBinary;break;case J.Date:r=e.visitDate;break;case J.DateDay:r=e.visitDateDay||e.visitDate;break;case J.DateMillisecond:r=e.visitDateMillisecond||e.visitDate;break;case J.Timestamp:r=e.visitTimestamp;break;case J.TimestampSecond:r=e.visitTimestampSecond||e.visitTimestamp;break;case J.TimestampMillisecond:r=e.visitTimestampMillisecond||e.visitTimestamp;break;case J.TimestampMicrosecond:r=e.visitTimestampMicrosecond||e.visitTimestamp;break;case J.TimestampNanosecond:r=e.visitTimestampNanosecond||e.visitTimestamp;break;case J.Time:r=e.visitTime;break;case J.TimeSecond:r=e.visitTimeSecond||e.visitTime;break;case J.TimeMillisecond:r=e.visitTimeMillisecond||e.visitTime;break;case J.TimeMicrosecond:r=e.visitTimeMicrosecond||e.visitTime;break;case J.TimeNanosecond:r=e.visitTimeNanosecond||e.visitTime;break;case J.Decimal:r=e.visitDecimal;break;case J.List:r=e.visitList;break;case J.Struct:r=e.visitStruct;break;case J.Union:r=e.visitUnion;break;case J.DenseUnion:r=e.visitDenseUnion||e.visitUnion;break;case J.SparseUnion:r=e.visitSparseUnion||e.visitUnion;break;case J.Dictionary:r=e.visitDictionary;break;case J.Interval:r=e.visitInterval;break;case J.IntervalDayTime:r=e.visitIntervalDayTime||e.visitInterval;break;case J.IntervalYearMonth:r=e.visitIntervalYearMonth||e.visitInterval;break;case J.IntervalMonthDayNano:r=e.visitIntervalMonthDayNano||e.visitInterval;break;case J.Duration:r=e.visitDuration;break;case J.DurationSecond:r=e.visitDurationSecond||e.visitDuration;break;case J.DurationMillisecond:r=e.visitDurationMillisecond||e.visitDuration;break;case J.DurationMicrosecond:r=e.visitDurationMicrosecond||e.visitDuration;break;case J.DurationNanosecond:r=e.visitDurationNanosecond||e.visitDuration;break;case J.FixedSizeList:r=e.visitFixedSizeList;break;case J.Map:r=e.visitMap;break}if(typeof r==`function`)return r;if(!n)return()=>null;throw Error(`Unrecognized type '${J[t]}'`)}function EO(e){switch(e.typeId){case J.Null:return J.Null;case J.Int:{let{bitWidth:t,isSigned:n}=e;switch(t){case 8:return n?J.Int8:J.Uint8;case 16:return n?J.Int16:J.Uint16;case 32:return n?J.Int32:J.Uint32;case 64:return n?J.Int64:J.Uint64}return J.Int}case J.Float:switch(e.precision){case ZE.HALF:return J.Float16;case ZE.SINGLE:return J.Float32;case ZE.DOUBLE:return J.Float64}return J.Float;case J.Binary:return J.Binary;case J.LargeBinary:return J.LargeBinary;case J.Utf8:return J.Utf8;case J.LargeUtf8:return J.LargeUtf8;case J.Bool:return J.Bool;case J.Decimal:return J.Decimal;case J.Time:switch(e.unit){case $E.SECOND:return J.TimeSecond;case $E.MILLISECOND:return J.TimeMillisecond;case $E.MICROSECOND:return J.TimeMicrosecond;case $E.NANOSECOND:return J.TimeNanosecond}return J.Time;case J.Timestamp:switch(e.unit){case $E.SECOND:return J.TimestampSecond;case $E.MILLISECOND:return J.TimestampMillisecond;case $E.MICROSECOND:return J.TimestampMicrosecond;case $E.NANOSECOND:return J.TimestampNanosecond}return J.Timestamp;case J.Date:switch(e.unit){case QE.DAY:return J.DateDay;case QE.MILLISECOND:return J.DateMillisecond}return J.Date;case J.Interval:switch(e.unit){case eD.DAY_TIME:return J.IntervalDayTime;case eD.YEAR_MONTH:return J.IntervalYearMonth;case eD.MONTH_DAY_NANO:return J.IntervalMonthDayNano}return J.Interval;case J.Duration:switch(e.unit){case $E.SECOND:return J.DurationSecond;case $E.MILLISECOND:return J.DurationMillisecond;case $E.MICROSECOND:return J.DurationMicrosecond;case $E.NANOSECOND:return J.DurationNanosecond}return J.Duration;case J.Map:return J.Map;case J.List:return J.List;case J.Struct:return J.Struct;case J.Union:switch(e.mode){case XE.Dense:return J.DenseUnion;case XE.Sparse:return J.SparseUnion}return J.Union;case J.FixedSizeBinary:return J.FixedSizeBinary;case J.FixedSizeList:return J.FixedSizeList;case J.Dictionary:return J.Dictionary}throw Error(`Unrecognized type '${J[e.typeId]}'`)}CO.prototype.visitInt8=null,CO.prototype.visitInt16=null,CO.prototype.visitInt32=null,CO.prototype.visitInt64=null,CO.prototype.visitUint8=null,CO.prototype.visitUint16=null,CO.prototype.visitUint32=null,CO.prototype.visitUint64=null,CO.prototype.visitFloat16=null,CO.prototype.visitFloat32=null,CO.prototype.visitFloat64=null,CO.prototype.visitDateDay=null,CO.prototype.visitDateMillisecond=null,CO.prototype.visitTimestampSecond=null,CO.prototype.visitTimestampMillisecond=null,CO.prototype.visitTimestampMicrosecond=null,CO.prototype.visitTimestampNanosecond=null,CO.prototype.visitTimeSecond=null,CO.prototype.visitTimeMillisecond=null,CO.prototype.visitTimeMicrosecond=null,CO.prototype.visitTimeNanosecond=null,CO.prototype.visitDenseUnion=null,CO.prototype.visitSparseUnion=null,CO.prototype.visitIntervalDayTime=null,CO.prototype.visitIntervalYearMonth=null,CO.prototype.visitIntervalMonthDayNano=null,CO.prototype.visitDuration=null,CO.prototype.visitDurationSecond=null,CO.prototype.visitDurationMillisecond=null,CO.prototype.visitDurationMicrosecond=null,CO.prototype.visitDurationNanosecond=null;var DO={};An(DO,{float64ToUint16:()=>jO,uint16ToFloat64:()=>AO});const OO=new Float64Array(1),kO=new Uint32Array(OO.buffer);function AO(e){let t=(e&31744)>>10,n=(e&1023)/1024,r=(-1)**((e&32768)>>15);switch(t){case 31:return r*(n?NaN:1/0);case 0:return r*(n?6103515625e-14*n:0)}return r*2**(t-15)*(1+n)}function jO(e){if(e!==e)return 32256;OO[0]=e;let t=(kO[1]&2147483648)>>16&65535,n=kO[1]&2146435072,r=0;return n>=1089470464?kO[0]>0?n=31744:(n=(n&2080374784)>>16,r=(kO[1]&1048575)>>10):n<=1056964608?(r=1048576+(kO[1]&1048575),r=1048576+(r<<(n>>20)-998)>>21,n=0):(n=n-1056964608>>10,r=(kO[1]&1048575)+512>>10),t|n|r&65535}var MO=class extends CO{};function NO(e){return(t,n,r)=>{if(t.setValid(n,r!=null))return e(t,n,r)}}const PO=(e,t,n)=>{e[t]=Math.floor(n/864e5)},FO=(e,t,n,r)=>{if(n+1{let i=e+n;r?t[i>>3]|=1<>3]&=~(1<{e[t]=n},RO=({values:e},t,n)=>{e[t]=n},zO=({values:e},t,n)=>{e[t]=jO(n)},BO=(e,t,n)=>{switch(e.type.precision){case ZE.HALF:return zO(e,t,n);case ZE.SINGLE:case ZE.DOUBLE:return RO(e,t,n)}},VO=({values:e},t,n)=>{PO(e,t,n.valueOf())},HO=({values:e},t,n)=>{e[t]=BigInt(n)},UO=({stride:e,values:t},n,r)=>{t.set(r.subarray(0,e),e*n)},WO=({values:e,valueOffsets:t},n,r)=>FO(e,t,n,r),GO=({values:e,valueOffsets:t},n,r)=>FO(e,t,n,nE(r)),KO=(e,t,n)=>{e.type.unit===QE.DAY?VO(e,t,n):HO(e,t,n)},qO=({values:e},t,n)=>{e[t]=BigInt(n/1e3)},JO=({values:e},t,n)=>{e[t]=BigInt(n)},YO=({values:e},t,n)=>{e[t]=BigInt(n*1e3)},XO=({values:e},t,n)=>{e[t]=BigInt(n*1e6)},ZO=(e,t,n)=>{switch(e.type.unit){case $E.SECOND:return qO(e,t,n);case $E.MILLISECOND:return JO(e,t,n);case $E.MICROSECOND:return YO(e,t,n);case $E.NANOSECOND:return XO(e,t,n)}},QO=({values:e},t,n)=>{e[t]=n},$O=({values:e},t,n)=>{e[t]=n},ek=({values:e},t,n)=>{e[t]=n},tk=({values:e},t,n)=>{e[t]=n},nk=(e,t,n)=>{switch(e.type.unit){case $E.SECOND:return QO(e,t,n);case $E.MILLISECOND:return $O(e,t,n);case $E.MICROSECOND:return ek(e,t,n);case $E.NANOSECOND:return tk(e,t,n)}},rk=({values:e,stride:t},n,r)=>{e.set(r.subarray(0,t),t*n)},ik=(e,t,n)=>{let r=e.children[0],i=e.valueOffsets,a=Tk.getVisitFn(r);if(Array.isArray(n))for(let e=-1,o=i[t],s=i[t+1];o{let r=e.children[0],{valueOffsets:i}=e,a=Tk.getVisitFn(r),{[t]:o,[t+1]:s}=i,c=n instanceof Map?n.entries():Object.entries(n);for(let e of c)if(a(r,o,e),++o>=s)break},ok=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[a]),sk=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(a)),ck=(e,t)=>(n,r,i,a)=>r&&n(r,e,t.get(i.name)),lk=(e,t)=>(n,r,i,a)=>r&&n(r,e,t[i.name]),uk=(e,t,n)=>{let r=e.type.children.map(e=>Tk.getVisitFn(e.type)),i=n instanceof Map?ck(t,n):n instanceof Oj?sk(t,n):Array.isArray(n)?ok(t,n):lk(t,n);e.type.children.forEach((t,n)=>i(r[n],e.children[n],t,n))},dk=(e,t,n)=>{e.type.mode===XE.Dense?fk(e,t,n):pk(e,t,n)},fk=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];Tk.visit(i,e.valueOffsets[t],n)},pk=(e,t,n)=>{let r=e.type.typeIdToChildIndex[e.typeIds[t]],i=e.children[r];Tk.visit(i,t,n)},mk=(e,t,n)=>{var r;(r=e.dictionary)==null||r.set(e.values[t],n)},hk=(e,t,n)=>{switch(e.type.unit){case eD.YEAR_MONTH:return _k(e,t,n);case eD.DAY_TIME:return gk(e,t,n);case eD.MONTH_DAY_NANO:return vk(e,t,n)}},gk=({values:e},t,n)=>{e.set(n.subarray(0,2),2*t)},_k=({values:e},t,n)=>{e[t]=n[0]*12+n[1]%12},vk=({values:e,stride:t},n,r)=>{e.set(r.subarray(0,t),t*n)},yk=({values:e},t,n)=>{e[t]=n},bk=({values:e},t,n)=>{e[t]=n},xk=({values:e},t,n)=>{e[t]=n},Sk=({values:e},t,n)=>{e[t]=n},Ck=(e,t,n)=>{switch(e.type.unit){case $E.SECOND:return yk(e,t,n);case $E.MILLISECOND:return bk(e,t,n);case $E.MICROSECOND:return xk(e,t,n);case $E.NANOSECOND:return Sk(e,t,n)}},wk=(e,t,n)=>{let{stride:r}=e,i=e.children[0],a=Tk.getVisitFn(i);if(Array.isArray(n))for(let e=-1,o=t*r;++e`${iD(e)}: ${iD(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}[Symbol.iterator](){return new kk(this[Ek],this[Dk])}},kk=class{constructor(e,t){this.childIndex=0,this.children=e.children,this.rowIndex=t,this.childFields=e.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){let e=this.childIndex;return ee.name)}has(e,t){return e[Ek].type.children.some(e=>e.name===t)}getOwnPropertyDescriptor(e,t){if(e[Ek].type.children.some(e=>e.name===t))return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[Ek].type.children.findIndex(e=>e.name===t);if(n!==-1){let r=CA.visit(e[Ek].children[n],e[Dk]);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[Ek].type.children.findIndex(e=>e.name===t);return r===-1?Reflect.has(e,t)||typeof t==`symbol`?Reflect.set(e,t,n):!1:(Tk.visit(e[Ek].children[r],e[Dk],n),Reflect.set(e,t,n))}};const jk=new Ak;var Mk=class extends CO{};function Nk(e){return(t,n)=>t.getValid(n)?e(t,n):null}const Pk=(e,t)=>864e5*e[t],Fk=(e,t)=>null,Ik=(e,t,n)=>{if(n+1>=t.length)return null;let r=aD(t[n]),i=aD(t[n+1]);return e.subarray(r,i)},Lk=({offset:e,values:t},n)=>{let r=e+n,i=t[r>>3];return(i&1<Pk(e,t),zk=({values:e},t)=>aD(e[t]),Bk=({stride:e,values:t},n)=>t[e*n],Vk=({stride:e,values:t},n)=>AO(t[e*n]),Hk=({values:e},t)=>e[t],Uk=({stride:e,values:t},n)=>t.subarray(e*n,e*(n+1)),Wk=({values:e,valueOffsets:t},n)=>Ik(e,t,n),Gk=({values:e,valueOffsets:t},n)=>{let r=Ik(e,t,n);return r===null?null:eE(r)},Kk=({values:e},t)=>e[t],qk=({type:e,values:t},n)=>e.precision===ZE.HALF?AO(t[n]):t[n],Jk=(e,t)=>e.type.unit===QE.DAY?Rk(e,t):zk(e,t),Yk=({values:e},t)=>1e3*aD(e[t]),Xk=({values:e},t)=>aD(e[t]),Zk=({values:e},t)=>oD(e[t],BigInt(1e3)),Qk=({values:e},t)=>oD(e[t],BigInt(1e6)),$k=(e,t)=>{switch(e.type.unit){case $E.SECOND:return Yk(e,t);case $E.MILLISECOND:return Xk(e,t);case $E.MICROSECOND:return Zk(e,t);case $E.NANOSECOND:return Qk(e,t)}},eA=({values:e},t)=>e[t],tA=({values:e},t)=>e[t],nA=({values:e},t)=>e[t],rA=({values:e},t)=>e[t],iA=(e,t)=>{switch(e.type.unit){case $E.SECOND:return eA(e,t);case $E.MILLISECOND:return tA(e,t);case $E.MICROSECOND:return nA(e,t);case $E.NANOSECOND:return rA(e,t)}},aA=({values:e,stride:t},n)=>yD.decimal(e.subarray(t*n,t*(n+1))),oA=(e,t)=>{let{valueOffsets:n,stride:r,children:i}=e,{[t*r]:a,[t*r+1]:o}=n,s=i[0],c=s.slice(a,o-a);return new Oj([c])},sA=(e,t)=>{let{valueOffsets:n,children:r}=e,{[t]:i,[t+1]:a}=n,o=r[0];return new OA(o.slice(i,a-i))},cA=(e,t)=>new Ok(e,t),lA=(e,t)=>e.type.mode===XE.Dense?uA(e,t):dA(e,t),uA=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return CA.visit(r,e.valueOffsets[t])},dA=(e,t)=>{let n=e.type.typeIdToChildIndex[e.typeIds[t]],r=e.children[n];return CA.visit(r,t)},fA=(e,t)=>{var n;return(n=e.dictionary)?.get(e.values[t])},pA=(e,t)=>e.type.unit===eD.MONTH_DAY_NANO?gA(e,t):e.type.unit===eD.DAY_TIME?mA(e,t):hA(e,t),mA=({values:e},t)=>e.subarray(2*t,2*(t+1)),hA=({values:e},t)=>{let n=e[t],r=new Int32Array(2);return r[0]=Math.trunc(n/12),r[1]=Math.trunc(n%12),r},gA=({values:e},t)=>e.subarray(4*t,4*(t+1)),_A=({values:e},t)=>e[t],vA=({values:e},t)=>e[t],yA=({values:e},t)=>e[t],bA=({values:e},t)=>e[t],xA=(e,t)=>{switch(e.type.unit){case $E.SECOND:return _A(e,t);case $E.MILLISECOND:return vA(e,t);case $E.MICROSECOND:return yA(e,t);case $E.NANOSECOND:return bA(e,t)}},SA=(e,t)=>{let{stride:n,children:r}=e,i=r[0],a=i.slice(t*n,n);return new Oj([a])};Mk.prototype.visitNull=Nk(Fk),Mk.prototype.visitBool=Nk(Lk),Mk.prototype.visitInt=Nk(Kk),Mk.prototype.visitInt8=Nk(Bk),Mk.prototype.visitInt16=Nk(Bk),Mk.prototype.visitInt32=Nk(Bk),Mk.prototype.visitInt64=Nk(Hk),Mk.prototype.visitUint8=Nk(Bk),Mk.prototype.visitUint16=Nk(Bk),Mk.prototype.visitUint32=Nk(Bk),Mk.prototype.visitUint64=Nk(Hk),Mk.prototype.visitFloat=Nk(qk),Mk.prototype.visitFloat16=Nk(Vk),Mk.prototype.visitFloat32=Nk(Bk),Mk.prototype.visitFloat64=Nk(Bk),Mk.prototype.visitUtf8=Nk(Gk),Mk.prototype.visitLargeUtf8=Nk(Gk),Mk.prototype.visitBinary=Nk(Wk),Mk.prototype.visitLargeBinary=Nk(Wk),Mk.prototype.visitFixedSizeBinary=Nk(Uk),Mk.prototype.visitDate=Nk(Jk),Mk.prototype.visitDateDay=Nk(Rk),Mk.prototype.visitDateMillisecond=Nk(zk),Mk.prototype.visitTimestamp=Nk($k),Mk.prototype.visitTimestampSecond=Nk(Yk),Mk.prototype.visitTimestampMillisecond=Nk(Xk),Mk.prototype.visitTimestampMicrosecond=Nk(Zk),Mk.prototype.visitTimestampNanosecond=Nk(Qk),Mk.prototype.visitTime=Nk(iA),Mk.prototype.visitTimeSecond=Nk(eA),Mk.prototype.visitTimeMillisecond=Nk(tA),Mk.prototype.visitTimeMicrosecond=Nk(nA),Mk.prototype.visitTimeNanosecond=Nk(rA),Mk.prototype.visitDecimal=Nk(aA),Mk.prototype.visitList=Nk(oA),Mk.prototype.visitStruct=Nk(cA),Mk.prototype.visitUnion=Nk(lA),Mk.prototype.visitDenseUnion=Nk(uA),Mk.prototype.visitSparseUnion=Nk(dA),Mk.prototype.visitDictionary=Nk(fA),Mk.prototype.visitInterval=Nk(pA),Mk.prototype.visitIntervalDayTime=Nk(mA),Mk.prototype.visitIntervalYearMonth=Nk(hA),Mk.prototype.visitIntervalMonthDayNano=Nk(gA),Mk.prototype.visitDuration=Nk(xA),Mk.prototype.visitDurationSecond=Nk(_A),Mk.prototype.visitDurationMillisecond=Nk(vA),Mk.prototype.visitDurationMicrosecond=Nk(yA),Mk.prototype.visitDurationNanosecond=Nk(bA),Mk.prototype.visitFixedSizeList=Nk(SA),Mk.prototype.visitMap=Nk(sA);const CA=new Mk,wA=Symbol.for(`keys`),TA=Symbol.for(`vals`),EA=Symbol.for(`kKeysAsStrings`),DA=Symbol.for(`_kKeysAsStrings`);var OA=class{constructor(e){return this[wA]=new Oj([e.children[0]]).memoize(),this[TA]=e.children[1],new Proxy(this,new AA)}get[EA](){return this[DA]||(this[DA]=Array.from(this[wA].toArray(),String))}[Symbol.iterator](){return new kA(this[wA],this[TA])}get size(){return this[wA].length}toArray(){return Object.values(this.toJSON())}toJSON(){let e=this[wA],t=this[TA],n={};for(let r=-1,i=e.length;++r`${iD(e)}: ${iD(t)}`).join(`, `)}}`}[Symbol.for(`nodejs.util.inspect.custom`)](){return this.toString()}},kA=class{constructor(e,t){this.keys=e,this.vals=t,this.keyIndex=0,this.numKeys=e.length}[Symbol.iterator](){return this}next(){let e=this.keyIndex;return e===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(e),CA.visit(this.vals,e)]})}},AA=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(e){return e[EA]}has(e,t){return e[EA].includes(t)}getOwnPropertyDescriptor(e,t){let n=e[EA].indexOf(t);if(n!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let n=e[EA].indexOf(t);if(n!==-1){let r=CA.visit(Reflect.get(e,TA),n);return Reflect.set(e,t,r),r}}set(e,t,n){let r=e[EA].indexOf(t);return r===-1?Reflect.has(e,t)?Reflect.set(e,t,n):!1:(Tk.visit(Reflect.get(e,TA),r,n),Reflect.set(e,t,n))}};Object.defineProperties(OA.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:`Row`},[wA]:{writable:!0,enumerable:!1,configurable:!1,value:null},[TA]:{writable:!0,enumerable:!1,configurable:!1,value:null},[DA]:{writable:!0,enumerable:!1,configurable:!1,value:null}});var jA={};An(jA,{clampRange:()=>NA,createElementComparator:()=>IA,wrapIndex:()=>PA});let MA;function NA(e,t,n,r){let{length:i=0}=e,a=typeof t==`number`?t:0,o=typeof n==`number`?n:i;return a<0&&(a=(a%i+i)%i),o<0&&(o=(o%i+i)%i),oi&&(o=i),r?r(e,a,o):[a,o]}const PA=(e,t)=>e<0?t+e:e,FA=e=>e!==e;function IA(e){let t=typeof e;if(t!==`object`||e===null)return FA(e)?FA:t=>t===e;if(e instanceof Date){let t=e.valueOf();return e=>e instanceof Date?e.valueOf()===t:!1}return ArrayBuffer.isView(e)?t=>t?YE(e,t):!1:e instanceof Map?RA(e):Array.isArray(e)?LA(e):e instanceof Oj?zA(e):BA(e,!0)}function LA(e){let t=[];for(let n=-1,r=e.length;++n!1;let r=[];for(let t=-1,i=n.length;++t{if(!n||typeof n!=`object`)return!1;switch(n.constructor){case Array:return HA(e,n);case Map:return WA(e,n,n.keys());case OA:case Ok:case Object:case void 0:return WA(e,n,t||Object.keys(n))}return n instanceof Oj?UA(e,n):!1}}function HA(e,t){let n=e.length;if(t.length!==n)return!1;for(let r=-1;++rZA,getBit:()=>qA,getBool:()=>KA,packBools:()=>XA,popcnt_array:()=>$A,popcnt_bit_range:()=>QA,popcnt_uint32:()=>ej,setBool:()=>JA,truncateBitmap:()=>YA});function KA(e,t,n,r){return(n&1<>r}function JA(e,t,n){return n?!!(e[t>>3]|=1<>3]&=~(1<0||n.byteLength>3):XA(new ZA(n,e,t,null,KA)).subarray(0,r)),i}return n}function XA(e){let t=[],n=0,r=0,i=0;for(let a of e)a&&(i|=1<0)&&(t[n++]=i);let a=new Uint8Array(t.length+7&-8);return a.set(t),a}var ZA=class{constructor(e,t,n,r,i){this.bytes=e,this.length=n,this.context=r,this.get=i,this.bit=t%8,this.byteIndex=t>>3,this.byte=e[this.byteIndex++],this.index=0}next(){return this.index>3<<3,i=t+(t%8==0?0:8-t%8);return QA(e,t,i)+QA(e,r,n)+$A(e,i>>3,r-i>>3)}function $A(e,t,n){let r=0,i=Math.trunc(t),a=new DataView(e.buffer,e.byteOffset,e.byteLength),o=n===void 0?e.byteLength:i+n;for(;o-i>=4;)r+=ej(a.getUint32(i)),i+=4;for(;o-i>=2;)r+=ej(a.getUint16(i)),i+=2;for(;o-i>=1;)r+=ej(a.getUint8(i)),i+=1;return r}function ej(e){let t=Math.trunc(e);return t-=t>>>1&1431655765,t=(t&858993459)+(t>>>2&858993459),(t+(t>>>4)&252645135)*16843009>>>24}const tj=-1;var nj=class e{get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get nullable(){if(this._nullCount!==0){let{type:e}=this;return HD.isSparseUnion(e)||HD.isDenseUnion(e)?this.children.some(e=>e.nullable):this.nullBitmap&&this.nullBitmap.byteLength>0}return!0}get byteLength(){let e=0,{valueOffsets:t,values:n,nullBitmap:r,typeIds:i}=this;return t&&(e+=t.byteLength),n&&(e+=n.byteLength),r&&(e+=r.byteLength),i&&(e+=i.byteLength),this.children.reduce((e,t)=>e+t.byteLength,e)}get nullCount(){if(HD.isUnion(this.type))return this.children.reduce((e,t)=>e+t.nullCount,0);let e=this._nullCount,t;return e<=tj&&(t=this.nullBitmap)&&(this._nullCount=e=t.length===0?0:this.length-QA(t,this.offset,this.offset+this.length)),e}constructor(t,n,r,i,a,o=[],s){this.type=t,this.children=o,this.dictionary=s,this.offset=Math.floor(Math.max(n||0,0)),this.length=Math.floor(Math.max(r||0,0)),this._nullCount=Math.floor(Math.max(i||0,-1));let c;a instanceof e?(this.stride=a.stride,this.values=a.values,this.typeIds=a.typeIds,this.nullBitmap=a.nullBitmap,this.valueOffsets=a.valueOffsets):(this.stride=SO(t),a&&((c=a[0])&&(this.valueOffsets=c),(c=a[1])&&(this.values=c),(c=a[2])&&(this.nullBitmap=c),(c=a[3])&&(this.typeIds=c)))}getValid(e){let{type:t}=this;if(HD.isUnion(t)){let n=t,r=this.children[n.typeIdToChildIndex[this.typeIds[e]]],i=n.mode===XE.Dense?this.valueOffsets[e]:e;return r.getValid(i)}if(this.nullable&&this.nullCount>0){let t=this.offset+e,n=this.nullBitmap[t>>3];return(n&1<>3;(!r||r.byteLength<=c)&&(r=new Uint8Array((i+a+63&-64)>>3).fill(255),this.nullCount>0?(r.set(YA(i,a,this.nullBitmap),0),Object.assign(this,{nullBitmap:r})):Object.assign(this,{nullBitmap:r,_nullCount:0}));let l=r[c];n=(l&s)!==0,r[c]=t?l|s:l&~s}return n!==!!t&&(this._nullCount=this.nullCount+(t?-1:1)),t}clone(t=this.type,n=this.offset,r=this.length,i=this._nullCount,a=this,o=this.children){return new e(t,n,r,i,a,o,this.dictionary)}slice(e,t){let{stride:n,typeId:r,children:i}=this,a=(this._nullCount===0)-1,o=r===16?n:1,s=this._sliceBuffers(e,t,n,r);return this.clone(this.type,this.offset+e,t,a,s,i.length===0||this.valueOffsets?i:this._sliceChildren(i,o*e,o*t))}_changeLengthAndBackfillNullBitmap(e){if(this.typeId===J.Null)return this.clone(this.type,0,e,0);let{length:t,nullCount:n}=this,r=new Uint8Array((e+63&-64)>>3).fill(255,0,t>>3);r[t>>3]=(1<0&&r.set(YA(this.offset,t,this.nullBitmap),0);let i=this.buffers;return i[tD.VALIDITY]=r,this.clone(this.type,0,e,n+(e-t),i)}_sliceBuffers(e,t,n,r){let i,{buffers:a}=this;return(i=a[tD.TYPE])&&(a[tD.TYPE]=i.subarray(e,e+t)),(i=a[tD.OFFSET])&&(a[tD.OFFSET]=i.subarray(e,e+t+1))||(i=a[tD.DATA])&&(a[tD.DATA]=r===6?i:i.subarray(n*e,n*(e+t))),a}_sliceChildren(e,t,n){return e.map(e=>e.slice(t,n))}};nj.prototype.children=Object.freeze([]);var rj=class e extends CO{visit(e){return this.getVisitFn(e.type).call(this,e)}visitNull(e){let{type:t,offset:n=0,length:r=0}=e;return new nj(t,n,r,r)}visitBool(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length>>3,nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitInt(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitFloat(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitUtf8(e){let{type:t,offset:n=0}=e,r=bE(e.data),i=bE(e.nullBitmap),a=vE(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new nj(t,n,o,s,[a,r,i])}visitLargeUtf8(e){let{type:t,offset:n=0}=e,r=bE(e.data),i=bE(e.nullBitmap),a=yE(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new nj(t,n,o,s,[a,r,i])}visitBinary(e){let{type:t,offset:n=0}=e,r=bE(e.data),i=bE(e.nullBitmap),a=vE(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new nj(t,n,o,s,[a,r,i])}visitLargeBinary(e){let{type:t,offset:n=0}=e,r=bE(e.data),i=bE(e.nullBitmap),a=yE(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new nj(t,n,o,s,[a,r,i])}visitFixedSizeBinary(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length/SO(t),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitDate(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length/SO(t),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitTimestamp(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length/SO(t),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitTime(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length/SO(t),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitDecimal(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length/SO(t),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitList(e){let{type:t,offset:n=0,child:r}=e,i=bE(e.nullBitmap),a=vE(e.valueOffsets),{length:o=a.length-1,nullCount:s=e.nullBitmap?-1:0}=e;return new nj(t,n,o,s,[a,void 0,i],[r])}visitStruct(e){let{type:t,offset:n=0,children:r=[]}=e,i=bE(e.nullBitmap),{length:a=r.reduce((e,{length:t})=>Math.max(e,t),0),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,void 0,i],r)}visitUnion(e){let{type:t,offset:n=0,children:r=[]}=e,i=hE(t.ArrayType,e.typeIds),{length:a=i.length,nullCount:o=-1}=e;if(HD.isSparseUnion(t))return new nj(t,n,a,o,[void 0,void 0,void 0,i],r);let s=vE(e.valueOffsets);return new nj(t,n,a,o,[s,void 0,void 0,i],r)}visitDictionary(t){let{type:n,offset:r=0}=t,i=bE(t.nullBitmap),a=hE(n.indices.ArrayType,t.data),{dictionary:o=new Oj([new e().visit({type:n.dictionary})])}=t,{length:s=a.length,nullCount:c=t.nullBitmap?-1:0}=t;return new nj(n,r,s,c,[void 0,a,i],[],o)}visitInterval(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length/SO(t),nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitDuration(e){let{type:t,offset:n=0}=e,r=bE(e.nullBitmap),i=hE(t.ArrayType,e.data),{length:a=i.length,nullCount:o=e.nullBitmap?-1:0}=e;return new nj(t,n,a,o,[void 0,i,r])}visitFixedSizeList(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.valueType})}=t,a=bE(t.nullBitmap),{length:o=i.length/SO(n),nullCount:s=t.nullBitmap?-1:0}=t;return new nj(n,r,o,s,[void 0,void 0,a],[i])}visitMap(t){let{type:n,offset:r=0,child:i=new e().visit({type:n.childType})}=t,a=bE(t.nullBitmap),o=vE(t.valueOffsets),{length:s=o.length-1,nullCount:c=t.nullBitmap?-1:0}=t;return new nj(n,r,s,c,[o,void 0,a],[i])}};const ij=new rj;var aj=class{constructor(e=0,t){this.numChunks=e,this.getChunkIterator=t,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndexe.nullable)}function sj(e){return e.reduce((e,t)=>e+t.nullCount,0)}function cj(e){return e.reduce((e,t,n)=>(e[n+1]=e[n]+t.length,e),new Uint32Array(e.length+1))}function lj(e,t,n,r){let i=[];for(let a=-1,o=e.length;++a=r)break;if(n>=s+c)continue;if(s>=n&&s+c<=r){i.push(o);continue}let l=Math.max(0,n-s),u=Math.min(r-s,c);i.push(o.slice(l,u-l))}return i.length===0&&i.push(e[0].slice(0,0)),i}function uj(e,t,n,r){let i=0,a=0,o=t.length-1;do{if(i>=o-1)return n0?0:-1}function _j(e,t){let{nullBitmap:n}=e;if(!n||e.nullCount<=0)return-1;let r=0;for(let i of new ZA(n,e.offset+(t||0),e.length,n,KA)){if(!i)return r;++r}return-1}function vj(e,t,n){if(t===void 0)return-1;if(t===null)switch(e.typeId){case J.Union:break;case J.Dictionary:break;default:return _j(e,n)}let r=CA.getVisitFn(e),i=IA(t);for(let t=(n||0)-1,a=e.length;++t{let n=e.data[t];return n.values.subarray(0,n.length)[Symbol.iterator]()});let n=0;return new aj(e.data.length,t=>{let r=e.data[t],i=r.length,a=e.slice(n,n+i);return n+=i,new Cj(a)})}var Cj=class{constructor(e){this.vector=e,this.index=0}next(){return this.indexe.data):t;if(a.length===0||a.some(e=>!(e instanceof nj)))throw TypeError(`Vector constructor expects an Array of Data instances.`);let o=(n=a[0])?.type;switch(a.length){case 0:this._offsets=[0];break;case 1:{let{get:e,set:t,indexOf:n}=Ej[o.typeId],r=a[0];this.isValid=e=>dj(r,e),this.get=t=>e(r,t),this.set=(e,n)=>t(r,e,n),this.indexOf=e=>n(r,e),this._offsets=[0,r.length];break}default:Object.setPrototypeOf(this,Dj[o.typeId]),this._offsets=cj(a);break}this.data=a,this.type=o,this.stride=SO(o),this.numChildren=(i=(r=o.children)?.length)??0,this.length=this._offsets.at(-1)}get byteLength(){return this.data.reduce((e,t)=>e+t.byteLength,0)}get nullable(){return oj(this.data)}get nullCount(){return sj(this.data)}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return`${this.VectorName}<${this.type[Symbol.toStringTag]}>`}get VectorName(){return`${J[this.type.typeId]}Vector`}isValid(e){return!1}get(e){return null}at(e){return this.get(PA(e,this.length))}set(e,t){}indexOf(e,t){return-1}includes(e,t){return this.indexOf(e,t)>-1}[Symbol.iterator](){return wj.visit(this)}concat(...t){return new e(this.data.concat(t.flatMap(e=>e.data).flat(1/0)))}slice(t,n){return new e(NA(this,t,n,({data:e,_offsets:t},n,r)=>lj(e,t,n,r)))}toJSON(){return[...this]}toArray(){let{type:e,data:t,length:n,stride:r,ArrayType:i}=this;switch(e.typeId){case J.Int:case J.Float:case J.Decimal:case J.Time:case J.Timestamp:switch(t.length){case 0:return new i;case 1:return t[0].values.subarray(0,n*r);default:return t.reduce((e,{values:t,length:n})=>(e.array.set(t.subarray(0,n*r),e.offset),e.offset+=n*r,e),{array:new i(n*r),offset:0}).array}}return[...this]}toString(){return`[${[...this].join(`,`)}]`}getChild(e){var t;return this.getChildAt((t=this.type.children)?.findIndex(t=>t.name===e))}getChildAt(t){return t>-1&&te[t])):null}get isMemoized(){return HD.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(HD.isDictionary(this.type)){let t=new kj(this.data[0].dictionary),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return new kj(this)}unmemoize(){if(HD.isDictionary(this.type)&&this.isMemoized){let t=this.data[0].dictionary.unmemoize(),n=this.data.map(e=>{let n=e.clone();return n.dictionary=t,n});return new e(n)}return this}};Tj=Symbol.toStringTag,Oj[Tj]=(e=>{e.type=HD.prototype,e.data=[],e.length=0,e.stride=1,e.numChildren=0,e._offsets=new Uint32Array([0]),e[Symbol.isConcatSpreadable]=!0;let t=Object.keys(J).map(e=>J[e]).filter(e=>typeof e==`number`&&e!==J.NONE);for(let n of t){let t=CA.getVisitFnByTypeId(n),r=Tk.getVisitFnByTypeId(n),i=bj.getVisitFnByTypeId(n);Ej[n]={get:t,set:r,indexOf:i},Dj[n]=Object.create(e,{isValid:{value:fj(dj)},get:{value:fj(CA.getVisitFnByTypeId(n))},set:{value:pj(Tk.getVisitFnByTypeId(n))},indexOf:{value:mj(bj.getVisitFnByTypeId(n))}})}return`Vector`})(Oj.prototype);var kj=class e extends Oj{constructor(t){super(t.data);let n=this.get,r=this.set,i=this.slice,a=Array(this.length);Object.defineProperty(this,`get`,{value(e){let t=a[e];if(t!==void 0)return t;let r=n.call(this,e);return a[e]=r,r}}),Object.defineProperty(this,`set`,{value(e,t){r.call(this,e,t),a[e]=t}}),Object.defineProperty(this,`slice`,{value:(t,n)=>new e(i.call(this,t,n))}),Object.defineProperty(this,`isMemoized`,{value:!0}),Object.defineProperty(this,`unmemoize`,{value:()=>new Oj(this.data)}),Object.defineProperty(this,`memoize`,{value:()=>this})}},Aj={};An(Aj,{BaseInt64:()=>Fj,Int128:()=>Rj,Int64:()=>Lj,Uint64:()=>Ij});const jj=65536;function Mj(e){return e<0&&(e=4294967295+e+1),`0x${e.toString(16)}`}const Nj=8,Pj=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8];var Fj=class{constructor(e){this.buffer=e}high(){return this.buffer[1]}low(){return this.buffer[0]}_times(e){let t=new Uint32Array([this.buffer[1]>>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),n=new Uint32Array([e.buffer[1]>>>16,e.buffer[1]&65535,e.buffer[0]>>>16,e.buffer[0]&65535]),r=t[3]*n[3];this.buffer[0]=r&65535;let i=r>>>16;return r=t[2]*n[3],i+=r,r=t[3]*n[2]>>>0,i+=r,this.buffer[0]+=i<<16,this.buffer[1]=i>>>0>>16,this.buffer[1]+=t[1]*n[3]+t[2]*n[2]+t[3]*n[1],this.buffer[1]+=t[0]*n[3]+t[1]*n[2]+t[2]*n[1]+t[3]*n[0]<<16,this}_plus(e){let t=this.buffer[0]+e.buffer[0]>>>0;this.buffer[1]+=e.buffer[1],t>>0&&++this.buffer[1],this.buffer[0]=t}lessThan(e){return this.buffer[1]>>0,t[2]=this.buffer[2]+e.buffer[2]>>>0,t[1]=this.buffer[1]+e.buffer[1]>>>0,t[0]=this.buffer[0]+e.buffer[0]>>>0,t[0]>>0&&++t[1],t[1]>>0&&++t[2],t[2]>>0&&++t[3],this.buffer[3]=t[3],this.buffer[2]=t[2],this.buffer[1]=t[1],this.buffer[0]=t[0],this}hex(){return`${Mj(this.buffer[3])} ${Mj(this.buffer[2])} ${Mj(this.buffer[1])} ${Mj(this.buffer[0])}`}static multiply(t,n){let r=new e(new Uint32Array(t.buffer));return r.times(n)}static add(t,n){let r=new e(new Uint32Array(t.buffer));return r.plus(n)}static from(t,n=new Uint32Array(4)){return e.fromString(typeof t==`string`?t:t.toString(),n)}static fromNumber(t,n=new Uint32Array(4)){return e.fromString(t.toString(),n)}static fromString(t,n=new Uint32Array(4)){let r=t.startsWith(`-`),i=t.length,a=new e(n);for(let n=r?1:0;nBj,toIntervalDayTimeObjects:()=>Hj,toIntervalMonthDayNanoInt32Array:()=>Vj,toIntervalMonthDayNanoObjects:()=>Uj});function Bj(e){var t,n;let r=e.length,i=new Int32Array(r*2);for(let a=0,o=0;a>BigInt(32))):o+=2}return i}function Hj(e){let t=e.length,n=Array(t/2);for(let r=0,i=0;r>>0);r[a++]={months:e[i],days:e[i+1],nanoseconds:t?`${n}`:n}}return r}var Wj=class extends CO{compareSchemas(e,t){return e===t||t instanceof e.constructor&&this.compareManyFields(e.fields,t.fields)}compareManyFields(e,t){return e===t||Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,n)=>this.compareFields(e,t[n]))}compareFields(e,t){return e===t||t instanceof e.constructor&&e.name===t.name&&e.nullable===t.nullable&&this.visit(e.type,t.type)}};function Gj(e,t){return t instanceof e.constructor}function Kj(e,t){return e===t||Gj(e,t)}function qj(e,t){return e===t||Gj(e,t)&&e.bitWidth===t.bitWidth&&e.isSigned===t.isSigned}function Jj(e,t){return e===t||Gj(e,t)&&e.precision===t.precision}function Yj(e,t){return e===t||Gj(e,t)&&e.byteWidth===t.byteWidth}function Xj(e,t){return e===t||Gj(e,t)&&e.unit===t.unit}function Zj(e,t){return e===t||Gj(e,t)&&e.unit===t.unit&&e.timezone===t.timezone}function Qj(e,t){return e===t||Gj(e,t)&&e.unit===t.unit&&e.bitWidth===t.bitWidth}function $j(e,t){return e===t||Gj(e,t)&&e.children.length===t.children.length&&sM.compareManyFields(e.children,t.children)}function eM(e,t){return e===t||Gj(e,t)&&e.children.length===t.children.length&&sM.compareManyFields(e.children,t.children)}function tM(e,t){return e===t||Gj(e,t)&&e.mode===t.mode&&e.typeIds.every((e,n)=>e===t.typeIds[n])&&sM.compareManyFields(e.children,t.children)}function nM(e,t){return e===t||Gj(e,t)&&e.id===t.id&&e.isOrdered===t.isOrdered&&sM.visit(e.indices,t.indices)&&sM.visit(e.dictionary,t.dictionary)}function rM(e,t){return e===t||Gj(e,t)&&e.unit===t.unit}function iM(e,t){return e===t||Gj(e,t)&&e.unit===t.unit}function aM(e,t){return e===t||Gj(e,t)&&e.listSize===t.listSize&&e.children.length===t.children.length&&sM.compareManyFields(e.children,t.children)}function oM(e,t){return e===t||Gj(e,t)&&e.keysSorted===t.keysSorted&&e.children.length===t.children.length&&sM.compareManyFields(e.children,t.children)}Wj.prototype.visitNull=Kj,Wj.prototype.visitBool=Kj,Wj.prototype.visitInt=qj,Wj.prototype.visitInt8=qj,Wj.prototype.visitInt16=qj,Wj.prototype.visitInt32=qj,Wj.prototype.visitInt64=qj,Wj.prototype.visitUint8=qj,Wj.prototype.visitUint16=qj,Wj.prototype.visitUint32=qj,Wj.prototype.visitUint64=qj,Wj.prototype.visitFloat=Jj,Wj.prototype.visitFloat16=Jj,Wj.prototype.visitFloat32=Jj,Wj.prototype.visitFloat64=Jj,Wj.prototype.visitUtf8=Kj,Wj.prototype.visitLargeUtf8=Kj,Wj.prototype.visitBinary=Kj,Wj.prototype.visitLargeBinary=Kj,Wj.prototype.visitFixedSizeBinary=Yj,Wj.prototype.visitDate=Xj,Wj.prototype.visitDateDay=Xj,Wj.prototype.visitDateMillisecond=Xj,Wj.prototype.visitTimestamp=Zj,Wj.prototype.visitTimestampSecond=Zj,Wj.prototype.visitTimestampMillisecond=Zj,Wj.prototype.visitTimestampMicrosecond=Zj,Wj.prototype.visitTimestampNanosecond=Zj,Wj.prototype.visitTime=Qj,Wj.prototype.visitTimeSecond=Qj,Wj.prototype.visitTimeMillisecond=Qj,Wj.prototype.visitTimeMicrosecond=Qj,Wj.prototype.visitTimeNanosecond=Qj,Wj.prototype.visitDecimal=Kj,Wj.prototype.visitList=$j,Wj.prototype.visitStruct=eM,Wj.prototype.visitUnion=tM,Wj.prototype.visitDenseUnion=tM,Wj.prototype.visitSparseUnion=tM,Wj.prototype.visitDictionary=nM,Wj.prototype.visitInterval=rM,Wj.prototype.visitIntervalDayTime=rM,Wj.prototype.visitIntervalYearMonth=rM,Wj.prototype.visitIntervalMonthDayNano=rM,Wj.prototype.visitDuration=iM,Wj.prototype.visitDurationSecond=iM,Wj.prototype.visitDurationMillisecond=iM,Wj.prototype.visitDurationMicrosecond=iM,Wj.prototype.visitDurationNanosecond=iM,Wj.prototype.visitFixedSizeList=aM,Wj.prototype.visitMap=oM;const sM=new Wj;function cM(e,t){return sM.compareSchemas(e,t)}function lM(e,t){return sM.compareFields(e,t)}function uM(e,t){return sM.visit(e,t)}const dM=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},sD),Aj),GA),DO),uE),jA),nD),zj),{compareSchemas:cM,compareFields:lM,compareTypes:uM}),fM=365.2425,pM=10**8*24*60*60*1e3,mM=6048e5,hM=864e5,gM=3600,_M=gM*24,vM=_M*7,yM=_M*fM,bM=yM/12,xM=bM*3,SM=Symbol.for(`constructDateFrom`);function CM(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&SM in e?e[SM](t):e instanceof Date?new e.constructor(t):new Date(t)}function wM(e,t){return CM(t||e,e)}let TM={};function EM(){return TM}function DM(e,t){let n=EM(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=wM(e,t?.in),a=i.getDay(),o=(a=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function AM(e){let t=wM(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function jM(e,...t){let n=CM.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function MM(e,t){let n=wM(e,t?.in);return n.setHours(0,0,0,0),n}function NM(e,t,n){let[r,i]=jM(n?.in,e,t),a=MM(r),o=MM(i),s=+a-AM(a),c=+o-AM(o);return Math.round((s-c)/hM)}function PM(e,t){let n=kM(e,t),r=CM(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),OM(r)}function FM(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function IM(e){return!(!FM(e)&&typeof e!=`number`||isNaN(+wM(e)))}function LM(e,t){let n=wM(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}const RM={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},zM=(e,t,n)=>{let r,i=RM[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function BM(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth,r=e.formats[n]||e.formats[e.defaultWidth];return r}}const VM={full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},HM={full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},UM={full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},WM={date:BM({formats:VM,defaultWidth:`full`}),time:BM({formats:HM,defaultWidth:`full`}),dateTime:BM({formats:UM,defaultWidth:`full`})},GM={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},KM=(e,t,n,r)=>GM[e];function qM(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}const JM={narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},YM={narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},XM={narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},ZM={narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},QM={narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},$M={narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},eN=(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},tN={ordinalNumber:eN,era:qM({values:JM,defaultWidth:`wide`}),quarter:qM({values:YM,defaultWidth:`wide`,argumentCallback:e=>e-1}),month:qM({values:XM,defaultWidth:`wide`}),day:qM({values:ZM,defaultWidth:`wide`}),dayPeriod:qM({values:QM,defaultWidth:`wide`,formattingValues:$M,defaultFormattingWidth:`wide`})};function nN(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?iN(s,e=>e.test(o)):rN(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function rN(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function iN(e,t){for(let n=0;n{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}const oN=/^(\d+)(th|st|nd|rd)?/i,sN=/\d+/i,cN={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},lN={any:[/^b/i,/^(a|c)/i]},uN={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},dN={any:[/1/i,/2/i,/3/i,/4/i]},fN={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},pN={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},mN={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},hN={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},gN={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},_N={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},vN={ordinalNumber:aN({matchPattern:oN,parsePattern:sN,valueCallback:e=>parseInt(e,10)}),era:nN({matchPatterns:cN,defaultMatchWidth:`wide`,parsePatterns:lN,defaultParseWidth:`any`}),quarter:nN({matchPatterns:uN,defaultMatchWidth:`wide`,parsePatterns:dN,defaultParseWidth:`any`,valueCallback:e=>e+1}),month:nN({matchPatterns:fN,defaultMatchWidth:`wide`,parsePatterns:pN,defaultParseWidth:`any`}),day:nN({matchPatterns:mN,defaultMatchWidth:`wide`,parsePatterns:hN,defaultParseWidth:`any`}),dayPeriod:nN({matchPatterns:gN,defaultMatchWidth:`any`,parsePatterns:_N,defaultParseWidth:`any`})},yN={code:`en-US`,formatDistance:zM,formatLong:WM,formatRelative:KM,localize:tN,match:vN,options:{weekStartsOn:0,firstWeekContainsDate:1}};function bN(e,t){let n=wM(e,t?.in),r=NM(n,LM(n)),i=r+1;return i}function xN(e,t){let n=wM(e,t?.in),r=OM(n)-+PM(n);return Math.round(r/mM)+1}function SN(e,t){let n=wM(e,t?.in),r=n.getFullYear(),i=EM(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,o=CM(t?.in||e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);let s=DM(o,t),c=CM(t?.in||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);let l=DM(c,t);return+n>=+s?r+1:+n>=+l?r:r-1}function CN(e,t){let n=EM(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,i=SN(e,t),a=CM(t?.in||e,0);a.setFullYear(i,0,r),a.setHours(0,0,0,0);let o=DM(a,t);return o}function wN(e,t){let n=wM(e,t?.in),r=DM(n,t)-+CN(n,t);return Math.round(r/mM)+1}function TN(e,t){let n=e<0?`-`:``,r=Math.abs(e).toString().padStart(t,`0`);return n+r}const EN={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return TN(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):TN(n+1,2)},d(e,t){return TN(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];case`aaaa`:default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return TN(e.getHours()%12||12,t.length)},H(e,t){return TN(e.getHours(),t.length)},m(e,t){return TN(e.getMinutes(),t.length)},s(e,t){return TN(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds(),i=Math.trunc(r*10**(n-3));return TN(i,t.length)}},DN={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},ON={G:function(e,t,n){let r=e.getFullYear()>0?1:0;switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});case`GGGG`:default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return EN.y(e,t)},Y:function(e,t,n,r){let i=SN(e,r),a=i>0?i:1-i;if(t===`YY`){let e=a%100;return TN(e,2)}return t===`Yo`?n.ordinalNumber(a,{unit:`year`}):TN(a,t.length)},R:function(e,t){let n=kM(e);return TN(n,t.length)},u:function(e,t){let n=e.getFullYear();return TN(n,t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return TN(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});case`QQQQ`:default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return TN(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});case`qqqq`:default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return EN.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});case`MMMM`:default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return TN(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});case`LLLL`:default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=wN(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):TN(i,t.length)},I:function(e,t,n){let r=xN(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):TN(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):EN.d(e,t)},D:function(e,t,n){let r=bN(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):TN(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});case`EEEE`:default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return TN(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});case`eeee`:default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return TN(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});case`cccc`:default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return TN(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});case`iiii`:default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours(),i=r/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});case`aaaa`:default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?DN.noon:r===0?DN.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});case`bbbb`:default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?DN.evening:r>=12?DN.afternoon:r>=4?DN.morning:DN.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});case`BBBB`:default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return EN.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):EN.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):TN(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):TN(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):EN.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):EN.s(e,t)},S:function(e,t){return EN.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return AN(r);case`XXXX`:case`XX`:return jN(r);case`XXXXX`:case`XXX`:default:return jN(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return AN(r);case`xxxx`:case`xx`:return jN(r);case`xxxxx`:case`xxx`:default:return jN(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+kN(r,`:`);case`OOOO`:default:return`GMT`+jN(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+kN(r,`:`);case`zzzz`:default:return`GMT`+jN(r,`:`)}},t:function(e,t,n){let r=Math.trunc(e/1e3);return TN(r,t.length)},T:function(e,t,n){return TN(+e,t.length)}};function kN(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+TN(a,2)}function AN(e,t){if(e%60==0){let t=e>0?`-`:`+`;return t+TN(Math.abs(e)/60,2)}return jN(e,t)}function jN(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=TN(Math.trunc(r/60),2),a=TN(r%60,2);return n+i+t+a}const MN=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});case`PPPP`:default:return t.date({width:`full`})}},NN=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});case`pppp`:default:return t.time({width:`full`})}},PN=(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return MN(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;case`PPPP`:default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,MN(r,t)).replace(`{{time}}`,NN(i,t))},FN={p:NN,P:PN},IN=/^D+$/,LN=/^Y+$/,RN=[`D`,`DD`,`YY`,`YYYY`];function zN(e){return IN.test(e)}function BN(e){return LN.test(e)}function VN(e,t,n){let r=HN(e,t,n);if(console.warn(r),RN.includes(e))throw RangeError(r)}function HN(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const UN=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,WN=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,GN=/^'([^]*?)'?$/,KN=/''/g,qN=/[a-zA-Z]/;function JN(e,t,n){let r=EM(),i=n?.locale??r.locale??yN,a=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,s=wM(e,n?.in);if(!IM(s))throw RangeError(`Invalid time value`);let c=t.match(WN).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=FN[t];return n(e,i.formatLong)}return e}).join(``).match(UN).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:YN(e)};if(ON[t])return{isToken:!0,value:e};if(t.match(qN))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));let l={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(r=>{if(!r.isToken)return r.value;let a=r.value;(!n?.useAdditionalWeekYearTokens&&BN(a)||!n?.useAdditionalDayOfYearTokens&&zN(a))&&VN(a,t,String(e));let o=ON[a[0]];return o(s,a,i.localize,l)}).join(``)}function YN(e){let t=e.match(GN);return t?t[1].replace(KN,`'`):e}function XN(e,t){return wM(e*1e3,t?.in)}function ZN(e,t){let n=QN(t)?new t(0):CM(t,0);return n.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),n.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),n}function QN(e){return typeof e==`function`&&e.prototype?.constructor===e}function $N(e,t){if(t===void 0)return e.trimEnd();let n=e.length;switch(typeof t){case`string`:if(t.length!==1)throw Error(`The 'chars' parameter should be a single character string.`);for(;n>0&&e[n-1]===t;)n--;break;case`object`:for(;n>0&&t.includes(e[n-1]);)n--}return e.substring(0,n)}function eP(e){return e==null}function tP(e){return e!=null}async function nP(){if(typeof window<`u`&&window!==null)return`browser`;try{let e=await u(()=>import(`./__vite-browser-external-Xk3YGxmN.js`).then(jn(1)),__vite__mapDeps([0,1,2]));return e!==void 0&&e.versions!=null&&e.versions.node!=null?`node`:`unknown`}catch{return`unknown`}}function rP(e){return eP(e)?!1:HD.isInt(e.type)&&!lP(e)||iP(e)}function iP(e){return eP(e)?!1:HD.isInt(e.type)&&e.type.isSigned===!1}function aP(e){return eP(e)?!1:HD.isFloat(e.type)??!1}function oP(e){return eP(e)?!1:HD.isDecimal(e.type)}function sP(e){return eP(e)?!1:HD.isBool(e.type)}function cP(e){return eP(e)?!1:HD.isDuration(e.type)}function lP(e){return eP(e)?!1:HD.isInt(e.type)&&e.metadata.get(`ARROW:extension:name`)===`period`}function uP(e){return eP(e)?!1:HD.isTimestamp(e.type)}function dP(e){return eP(e)?!1:HD.isDate(e.type)}function fP(e){return eP(e)?!1:HD.isTime(e.type)}function pP(e){return eP(e)?!1:HD.isList(e.type)||HD.isFixedSizeList(e.type)}function mP(e){return eP(e)?!1:HD.isStruct(e.type)||HD.isMap(e.type)}function hP(e){return eP(e)?!1:HD.isStruct(e.type)&&e.metadata.get(`ARROW:extension:name`)===`interval`||HD.isInterval(e.type)}const gP=new Date(1970,0,1);function _P(e,t){let n;if(t===$E.MILLISECOND)n=1e3;else if(t===$E.MICROSECOND)n=1e3*1e3;else if(t===$E.NANOSECOND)n=1e3*1e3*1e3;else return Number(e);return typeof e==`bigint`&&!Number.isSafeInteger(Number(e))?Number(e/BigInt(n)):Number(e)/n}function vP(e,t){let n=_P(e,t?.type?.unit??$E.SECOND);return XN(n)}function yP(e,t){let n=vP(e,t);return JN(n,n.getMilliseconds()===0?`HH:mm:ss`:`HH:mm:ss.SSS`)}function bP(e){let t=`yyyy-MM-dd`;return e instanceof Date||typeof e==`number`&&Number.isFinite(e)?JN(e,t):(console.warn(`Unsupported date value: ${e}`),String(e))}function xP(e,t){if(!(e instanceof Date||typeof e==`number`&&Number.isFinite(e)))return console.warn(`Unsupported datetime value: ${e}`),null;let n,r=t?.type?.timezone;return n=r?new KT(e,r):new KT(e),ZN(n,Date)}function SP(e,t){let n=t?.type?.scale||0,r=dM.bigNumToString(new dM.BN(e)).padStart(n,`0`);if(n===0)return r;let i=``;r.startsWith(`-`)&&(i=`-`,r=r.slice(1));let a=r.slice(0,-n)||`0`,o=$N(r.slice(-n),`0`)||``;return`${i}${a}${o?`.${o}`:``}`}const CP=new Intl.NumberFormat(`en-US`,{style:`decimal`,maximumFractionDigits:4,minimumFractionDigits:4,useGrouping:!0});function wP(e){let t=e[0],n=e[1],r=[];return t!==0&&r.push(`${t} year${t>1?`s`:``}`),n!==0&&r.push(`${n} month${n>1?`s`:``}`),r.length?r.join(` `):`0 months`}function TP(e,t){if(HD.isInterval(t?.type))return wP(e);let n=t&&t.metadata.get(`ARROW:extension:name`);if(n&&n===`pandas.interval`){let n=JSON.parse(t.metadata.get(`ARROW:extension:metadata`)),{closed:r}=n,i=e.toJSON(),a=r===`both`||r===`left`?`[`:`(`,o=r===`both`||r===`right`?`]`:`)`,s=DP(i.left,t.type?.children?.[0]),c=DP(i.right,t.type?.children?.[1]);return`${a+s}, ${c+o}`}return String(e)}function EP(e,t){return t?.type instanceof hO?JSON.parse(JSON.stringify(e,(e,t)=>{if(tP(t))return typeof t==`bigint`?Number(t):t})):JSON.parse(JSON.stringify(e,(e,t)=>typeof t==`bigint`?Number(t):t))}function DP(e,t){if(eP(e))return null;let n=e instanceof Date||Number.isFinite(e);if(n&&dP(t))return bP(e);if(typeof e==`bigint`&&fP(t))return yP(Number(e),t);if(n&&uP(t))return xP(e,t);if(lP(t))throw Error(`Period type is not supported yet`);if(hP(t))return TP(e,t);if(cP(t))throw Error(`Duration type is not supported yet`);return oP(t)?SP(e,t):aP(t)&&Number.isFinite(e)||rP(t)?e:mP(t)||pP(t)?EP(e,t):sP(t)?!!e:String(e)}function OP(e){let t=(e.toArray()||[]).map(e=>e.toJSON())||[],n=t.map(t=>(e.schema.fields.forEach(e=>t[e.name]=DP(t[e.name],e)),t));return n}let kP=function(e){return e.ORIGIN_PRIVATE_FS=`origin-private-fs`,e.NODE_FS=`node-fs`,e}({});async function AP(e){let t=C(e,{logger:!1}),n,r,i=await nP();if(i===`browser`){if(t.bundles===void 0){let{getBundles:e}=await u(async()=>{let{getBundles:e}=await import(`./default-browser-CAeK6Ish.js`);return{getBundles:e}},[]);t.bundles=await e()}r=await RT(await t.bundles),n=new Worker(r.mainWorker)}else if(i===`node`){if(t.bundles===void 0){let{getBundles:e}=await u(async()=>{let{getBundles:e}=await import(`./default-node-D3algJHl.js`);return{getBundles:e}},__vite__mapDeps([3,1,2]));t.bundles=await e()}r=await RT(await t.bundles);let e=r.mainWorker;e.startsWith(`/@fs/`)&&(e=e.replace(`/@fs/`,`file://`));let i=await u(()=>import(`./browser-BSMtDYed.js`),[]);n=new i.default(e,{type:`module`})}else throw Error(`Unsupported environment: ${i}`);let a;a=t.logger===!0?new nT:t.logger===!1?new tT:t.logger;let o=new pT(a,n);if(await o.instantiate(r.mainModule,r.pthreadWorker),t.storage)switch(t.storage.type){case kP.ORIGIN_PRIVATE_FS:try{let e=t.storage.path;e.startsWith(`/`)&&(e=e.slice(1)),await o.open({path:`opfs://${e}`,accessMode:t.storage.accessMode})}catch(e){throw await o.terminate(),await n.terminate(),e}break;case kP.NODE_FS:try{await o.open({path:t.storage.path,accessMode:t.storage.accessMode,useDirectIO:!0})}catch(e){throw await o.terminate(),await n.terminate(),e}break}let s=await o.connect();async function c(e,t=[]){if(!t||t.length===0){let t=await s.query(e);return{_results:t,_schema:t.schema,columns:t.schema.fields,rows:OP(t)}}let n=await s.prepare(e),r=await n.query(...t);return n.close(),{_results:r,_schema:r.schema,columns:r.schema.fields,rows:OP(r)}}return{worker:n,db:o,conn:s,query:async(e,t=[])=>c(e,t).then(e=>e.rows),queryWithColumns:async(e,t=[])=>c(e,t),close:async()=>{await s.close(),await o.terminate(),await n.terminate()}}}async function jP(e,t){await(await e).conn.send(`BEGIN TRANSACTION`);try{let n=await t(e);return await(await e).conn.send(`COMMIT`),n}catch(t){throw await(await e).conn.send(`ROLLBACK`),t}}async function MP(e,t,n){await(await e).conn.send(`SAVEPOINT ${t}`);try{let r=await n(e);return await(await e).conn.send(`RELEASE SAVEPOINT ${t}`),r}catch(n){throw await(await e).conn.send(`ROLLBACK TO SAVEPOINT ${t}`),n}}const Y=Symbol.for(`drizzle:entityKind`),NP=Symbol.for(`drizzle:hasOwnEntityKind`);function X(e,t){if(!e||typeof e!=`object`)return!1;if(e instanceof t)return!0;if(!Object.prototype.hasOwnProperty.call(t,Y))throw Error(`Class "${t.name??``}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let n=Object.getPrototypeOf(e).constructor;if(n)for(;n;){if(Y in n&&n[Y]===t[Y])return!0;n=Object.getPrototypeOf(n)}return!1}var PP=class{constructor(e,t){this.table=e,this.config=t,this.name=t.name,this.keyAsName=t.keyAsName,this.notNull=t.notNull,this.default=t.default,this.defaultFn=t.defaultFn,this.onUpdateFn=t.onUpdateFn,this.hasDefault=t.hasDefault,this.primary=t.primaryKey,this.isUnique=t.isUnique,this.uniqueName=t.uniqueName,this.uniqueType=t.uniqueType,this.dataType=t.dataType,this.columnType=t.columnType,this.generated=t.generated,this.generatedIdentity=t.generatedIdentity}static[Y]=`Column`;name;keyAsName;primary;notNull;default;defaultFn;onUpdateFn;hasDefault;isUnique;uniqueName;uniqueType;dataType;columnType;enumValues=void 0;generated=void 0;generatedIdentity=void 0;config;mapFromDriverValue(e){return e}mapToDriverValue(e){return e}shouldDisableInsert(){return this.config.generated!==void 0&&this.config.generated.type!==`byDefault`}},FP=class{static[Y]=`ColumnBuilder`;config;constructor(e,t,n){this.config={name:e,keyAsName:e===``,notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:t,columnType:n,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default(e){return this.config.default=e,this.config.hasDefault=!0,this}$defaultFn(e){return this.config.defaultFn=e,this.config.hasDefault=!0,this}$default=this.$defaultFn;$onUpdateFn(e){return this.config.onUpdateFn=e,this.config.hasDefault=!0,this}$onUpdate=this.$onUpdateFn;primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName(e){this.config.name===``&&(this.config.name=e)}};const IP=Symbol.for(`drizzle:Name`);var LP=class{static[Y]=`PgForeignKeyBuilder`;reference;_onUpdate=`no action`;_onDelete=`no action`;constructor(e,t){this.reference=()=>{let{name:t,columns:n,foreignColumns:r}=e();return{name:t,columns:n,foreignTable:r[0].table,foreignColumns:r}},t&&(this._onUpdate=t.onUpdate,this._onDelete=t.onDelete)}onUpdate(e){return this._onUpdate=e===void 0?`no action`:e,this}onDelete(e){return this._onDelete=e===void 0?`no action`:e,this}build(e){return new RP(e,this)}},RP=class{constructor(e,t){this.table=e,this.reference=t.reference,this.onUpdate=t._onUpdate,this.onDelete=t._onDelete}static[Y]=`PgForeignKey`;reference;onUpdate;onDelete;getName(){let{name:e,columns:t,foreignColumns:n}=this.reference(),r=t.map(e=>e.name),i=n.map(e=>e.name),a=[this.table[IP],...r,n[0].table[IP],...i];return e??`${a.join(`_`)}_fk`}};function zP(e,...t){return e(...t)}function BP(e,t){return`${e[IP]}_${t.join(`_`)}_unique`}var VP=class{constructor(e,t){this.name=t,this.columns=e}static[Y]=`PgUniqueConstraintBuilder`;columns;nullsNotDistinctConfig=!1;nullsNotDistinct(){return this.nullsNotDistinctConfig=!0,this}build(e){return new UP(e,this.columns,this.nullsNotDistinctConfig,this.name)}},HP=class{static[Y]=`PgUniqueOnConstraintBuilder`;name;constructor(e){this.name=e}on(...e){return new VP(e,this.name)}},UP=class{constructor(e,t,n,r){this.table=e,this.columns=t,this.name=r??BP(this.table,this.columns.map(e=>e.name)),this.nullsNotDistinct=n}static[Y]=`PgUniqueConstraint`;columns;name;nullsNotDistinct=!1;getName(){return this.name}};function WP(e,t,n){for(let r=t;rArray.isArray(e)?qP(e):typeof e==`string`?`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`:`${e}`).join(`,`)}}`}var JP=class extends FP{foreignKeyConfigs=[];static[Y]=`PgColumnBuilder`;array(e){return new QP(this.config.name,this,e)}references(e,t={}){return this.foreignKeyConfigs.push({ref:e,actions:t}),this}unique(e,t){return this.config.isUnique=!0,this.config.uniqueName=e,this.config.uniqueType=t?.nulls,this}generatedAlwaysAs(e){return this.config.generated={as:e,type:`always`,mode:`stored`},this}buildForeignKeys(e,t){return this.foreignKeyConfigs.map(({ref:n,actions:r})=>zP((n,r)=>{let i=new LP(()=>{let t=n();return{columns:[e],foreignColumns:[t]}});return r.onUpdate&&i.onUpdate(r.onUpdate),r.onDelete&&i.onDelete(r.onDelete),i.build(t)},n,r))}buildExtraConfigColumn(e){return new XP(e,this.config)}},YP=class extends PP{constructor(e,t){t.uniqueName||=BP(e,[t.name]),super(e,t),this.table=e}static[Y]=`PgColumn`},XP=class extends YP{static[Y]=`ExtraConfigColumn`;getSQLType(){return this.getSQLType()}indexConfig={order:this.config.order??`asc`,nulls:this.config.nulls??`last`,opClass:this.config.opClass};defaultConfig={order:`asc`,nulls:`last`,opClass:void 0};asc(){return this.indexConfig.order=`asc`,this}desc(){return this.indexConfig.order=`desc`,this}nullsFirst(){return this.indexConfig.nulls=`first`,this}nullsLast(){return this.indexConfig.nulls=`last`,this}op(e){return this.indexConfig.opClass=e,this}},ZP=class{static[Y]=`IndexedColumn`;constructor(e,t,n,r){this.name=e,this.keyAsName=t,this.type=n,this.indexConfig=r}name;keyAsName;type;indexConfig},QP=class extends JP{static[Y]=`PgArrayBuilder`;constructor(e,t,n){super(e,`array`,`PgArray`),this.config.baseBuilder=t,this.config.size=n}build(e){let t=this.config.baseBuilder.build(e);return new $P(e,this.config,t)}},$P=class e extends YP{constructor(e,t,n,r){super(e,t),this.baseColumn=n,this.range=r,this.size=t.size}size;static[Y]=`PgArray`;getSQLType(){return`${this.baseColumn.getSQLType()}[${typeof this.size==`number`?this.size:``}]`}mapFromDriverValue(e){return typeof e==`string`&&(e=KP(e)),e.map(e=>this.baseColumn.mapFromDriverValue(e))}mapToDriverValue(t,n=!1){let r=t.map(t=>t===null?null:X(this.baseColumn,e)?this.baseColumn.mapToDriverValue(t,!0):this.baseColumn.mapToDriverValue(t));return n?r:qP(r)}},eF=class extends JP{static[Y]=`PgEnumObjectColumnBuilder`;constructor(e,t){super(e,`string`,`PgEnumObjectColumn`),this.config.enum=t}build(e){return new tF(e,this.config)}},tF=class extends YP{static[Y]=`PgEnumObjectColumn`;enum;enumValues=this.config.enum.enumValues;constructor(e,t){super(e,t),this.enum=t.enum}getSQLType(){return this.enum.enumName}};const nF=Symbol.for(`drizzle:isPgEnum`);function rF(e){return!!e&&typeof e==`function`&&nF in e&&e[nF]===!0}var iF=class extends JP{static[Y]=`PgEnumColumnBuilder`;constructor(e,t){super(e,`string`,`PgEnumColumn`),this.config.enum=t}build(e){return new aF(e,this.config)}},aF=class extends YP{static[Y]=`PgEnumColumn`;enum=this.config.enum;enumValues=this.config.enum.enumValues;constructor(e,t){super(e,t),this.enum=t.enum}getSQLType(){return this.enum.enumName}},oF=class{static[Y]=`Subquery`;constructor(e,t,n,r=!1,i=[]){this._={brand:`Subquery`,sql:e,selectedFields:t,alias:n,isWith:r,usedTables:i}}},sF=class extends oF{static[Y]=`WithSubquery`},cF=`0.44.2`;let lF,uF;const dF={startActiveSpan(e,t){return lF?(uF||=lF.trace.getTracer(`drizzle-orm`,cF),zP((n,r)=>r.startActiveSpan(e,e=>{try{return t(e)}catch(t){throw e.setStatus({code:n.SpanStatusCode.ERROR,message:t instanceof Error?t.message:`Unknown error`}),t}finally{e.end()}}),lF,uF)):t()}},fF=Symbol.for(`drizzle:ViewBaseConfig`),pF=Symbol.for(`drizzle:Schema`),mF=Symbol.for(`drizzle:Columns`),hF=Symbol.for(`drizzle:ExtraConfigColumns`),gF=Symbol.for(`drizzle:OriginalName`),_F=Symbol.for(`drizzle:BaseName`),vF=Symbol.for(`drizzle:IsAlias`),yF=Symbol.for(`drizzle:ExtraConfigBuilder`),bF=Symbol.for(`drizzle:IsDrizzleTable`);var xF=class{static[Y]=`Table`;static Symbol={Name:IP,Schema:pF,OriginalName:gF,Columns:mF,ExtraConfigColumns:hF,BaseName:_F,IsAlias:vF,ExtraConfigBuilder:yF};[IP];[gF];[pF];[mF];[hF];[_F];[vF]=!1;[bF]=!0;[yF]=void 0;constructor(e,t,n){this[IP]=this[gF]=e,this[pF]=t,this[_F]=n}};function SF(e){return e[IP]}function CF(e){return`${e[pF]??`public`}.${e[IP]}`}var wF=class{static[Y]=`FakePrimitiveParam`};function TF(e){return e!=null&&typeof e.getSQL==`function`}function EF(e){let t={sql:``,params:[]};for(let n of e)t.sql+=n.sql,t.params.push(...n.params),n.typings?.length&&(t.typings||=[],t.typings.push(...n.typings));return t}var DF=class{static[Y]=`StringChunk`;value;constructor(e){this.value=Array.isArray(e)?e:[e]}getSQL(){return new OF([this])}},OF=class e{constructor(e){this.queryChunks=e;for(let t of e)if(X(t,xF)){let e=t[xF.Symbol.Schema];this.usedTables.push(e===void 0?t[xF.Symbol.Name]:e+`.`+t[xF.Symbol.Name])}}static[Y]=`SQL`;decoder=jF;shouldInlineParams=!1;usedTables=[];append(e){return this.queryChunks.push(...e.queryChunks),this}toQuery(e){return dF.startActiveSpan(`drizzle.buildSQL`,t=>{let n=this.buildQueryFromSourceParams(this.queryChunks,e);return t?.setAttributes({"drizzle.query.text":n.sql,"drizzle.query.params":JSON.stringify(n.params)}),n})}buildQueryFromSourceParams(t,n){let r=Object.assign({},n,{inlineParams:n.inlineParams||this.shouldInlineParams,paramStartIndex:n.paramStartIndex||{value:0}}),{casing:i,escapeName:a,escapeParam:o,prepareTyping:s,inlineParams:c,paramStartIndex:l}=r;return EF(t.map(t=>{if(X(t,DF))return{sql:t.value.join(``),params:[]};if(X(t,kF))return{sql:a(t.value),params:[]};if(t===void 0)return{sql:``,params:[]};if(Array.isArray(t)){let e=[new DF(`(`)];for(let[n,r]of t.entries())e.push(r),ne},MF={mapToDriverValue:e=>e},NF={...jF,...MF};var PF=class{constructor(e,t=MF){this.value=e,this.encoder=t}static[Y]=`Param`;brand;getSQL(){return new OF([this])}};function Z(e,...t){let n=[];(t.length>0||e.length>0&&e[0]!==``)&&n.push(new DF(e[0]));for(let[r,i]of t.entries())n.push(i,new DF(e[r+1]));return new OF(n)}(e=>{function t(){return new OF([])}e.empty=t;function n(e){return new OF(e)}e.fromList=n;function r(e){return new OF([new DF(e)])}e.raw=r;function i(e,t){let n=[];for(let[r,i]of e.entries())r>0&&t!==void 0&&n.push(t),n.push(i);return new OF(n)}e.join=i;function a(e){return new kF(e)}e.identifier=a;function o(e){return new FF(e)}e.placeholder=o;function s(e,t){return new PF(e,t)}e.param=s})(Z||={}),(e=>{class t{constructor(e,t){this.sql=e,this.fieldAlias=t}static[Y]=`SQL.Aliased`;isSelectionField=!1;getSQL(){return this.sql}clone(){return new t(this.sql,this.fieldAlias)}}e.Aliased=t})(OF||={});var FF=class{constructor(e){this.name=e}static[Y]=`Placeholder`;getSQL(){return new OF([this])}};function IF(e,t){return e.map(e=>{if(X(e,FF)){if(!(e.name in t))throw Error(`No value for placeholder "${e.name}" was provided`);return t[e.name]}if(X(e,PF)&&X(e.value,FF)){if(!(e.value.name in t))throw Error(`No value for placeholder "${e.value.name}" was provided`);return e.encoder.mapToDriverValue(t[e.value.name])}return e})}const LF=Symbol.for(`drizzle:IsDrizzleView`);var RF=class{static[Y]=`View`;[fF];[LF]=!0;constructor({name:e,schema:t,selectedFields:n,query:r}){this[fF]={name:e,originalName:e,schema:t,selectedFields:n,query:r,isExisting:!r,isAlias:!1}}getSQL(){return new OF([this])}};PP.prototype.getSQL=function(){return new OF([this])},xF.prototype.getSQL=function(){return new OF([this])},oF.prototype.getSQL=function(){return new OF([this])};var zF=class{constructor(e){this.table=e}static[Y]=`ColumnAliasProxyHandler`;get(e,t){return t===`table`?this.table:e[t]}},BF=class{constructor(e,t){this.alias=e,this.replaceOriginalName=t}static[Y]=`TableAliasProxyHandler`;get(e,t){if(t===xF.Symbol.IsAlias)return!0;if(t===xF.Symbol.Name||this.replaceOriginalName&&t===xF.Symbol.OriginalName)return this.alias;if(t===fF)return{...e[fF],name:this.alias,isAlias:!0};if(t===xF.Symbol.Columns){let t=e[xF.Symbol.Columns];if(!t)return t;let n={};return Object.keys(t).map(r=>{n[r]=new Proxy(t[r],new zF(new Proxy(e,this)))}),n}let n=e[t];return X(n,PP)?new Proxy(n,new zF(new Proxy(e,this))):n}},VF=class{constructor(e){this.alias=e}static[Y]=`RelationTableAliasProxyHandler`;get(e,t){return t===`sourceTable`?HF(e.sourceTable,this.alias):e[t]}};function HF(e,t){return new Proxy(e,new BF(t,!1))}function UF(e,t){return new Proxy(e,new zF(new Proxy(e.table,new BF(t,!1))))}function WF(e,t){return new OF.Aliased(GF(e.sql,t),e.fieldAlias)}function GF(e,t){return Z.join(e.queryChunks.map(e=>X(e,PP)?UF(e,t):X(e,OF)?GF(e,t):X(e,OF.Aliased)?WF(e,t):e))}var KF=class extends Error{static[Y]=`DrizzleError`;constructor({message:e,cause:t}){super(e),this.name=`DrizzleError`,this.cause=t}},qF=class extends KF{static[Y]=`TransactionRollbackError`;constructor(){super({message:`Rollback`})}},JF=class{static[Y]=`ConsoleLogWriter`;write(e){console.log(e)}},YF=class{static[Y]=`DefaultLogger`;writer;constructor(e){this.writer=e?.writer??new JF}logQuery(e,t){let n=t.map(e=>{try{return JSON.stringify(e)}catch{return String(e)}}),r=n.length?` -- params: [${n.join(`, `)}]`:``;this.writer.write(`Query: ${e}${r}`)}},XF=class{static[Y]=`NoopLogger`;logQuery(){}},ZF=class{static[Y]=`QueryPromise`;[Symbol.toStringTag]=`QueryPromise`;catch(e){return this.then(void 0,e)}finally(e){return this.then(t=>(e?.(),t),t=>{throw e?.(),t})}then(e,t){return this.execute().then(e,t)}};function QF(e,t){return Object.entries(e).reduce((e,[n,r])=>{if(typeof n!=`string`)return e;let i=t?[...t,n]:[n];return X(r,PP)||X(r,OF)||X(r,OF.Aliased)?e.push({path:i,field:r}):X(r,xF)?e.push(...QF(r[xF.Symbol.Columns],i)):e.push(...QF(r,i)),e},[])}function $F(e,t){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let[e,t]of n.entries())if(t!==r[e])return!1;return!0}function eI(e,t){let n=Object.entries(t).filter(([,e])=>e!==void 0).map(([t,n])=>X(n,OF)||X(n,PP)?[t,n]:[t,new PF(n,e[xF.Symbol.Columns][t])]);if(n.length===0)throw Error(`No values to set`);return Object.fromEntries(n)}function tI(e,t){for(let n of t)for(let t of Object.getOwnPropertyNames(n.prototype)){if(t===`constructor`)continue;Object.defineProperty(e.prototype,t,Object.getOwnPropertyDescriptor(n.prototype,t)||Object.create(null))}}function nI(e){return e[xF.Symbol.Columns]}function rI(e){return X(e,oF)?e._.alias:X(e,RF)?e[fF].name:X(e,OF)?void 0:e[xF.Symbol.IsAlias]?e[xF.Symbol.Name]:e[xF.Symbol.BaseName]}function iI(e){if(typeof e!=`object`||!e||e.constructor.name!==`Object`)return!1;if(`logger`in e){let t=typeof e.logger;return!(t!==`boolean`&&(t!==`object`||typeof e.logger.logQuery!=`function`)&&t!==`undefined`)}if(`schema`in e){let t=typeof e.schema;return!(t!==`object`&&t!==`undefined`)}if(`casing`in e){let t=typeof e.casing;return!(t!==`string`&&t!==`undefined`)}if(`mode`in e)return!(e.mode!==`default`||e.mode!==`planetscale`||e.mode!==void 0);if(`connection`in e){let t=typeof e.connection;return!(t!==`string`&&t!==`object`&&t!==`undefined`)}if(`client`in e){let t=typeof e.client;return!(t!==`object`&&t!==`function`&&t!==`undefined`)}return Object.keys(e).length===0}var aI=class extends JP{static[Y]=`PgDateColumnBaseBuilder`;defaultNow(){return this.default(Z`now()`)}},oI=class extends aI{static[Y]=`PgDateBuilder`;constructor(e){super(e,`date`,`PgDate`)}build(e){return new sI(e,this.config)}},sI=class extends YP{static[Y]=`PgDate`;getSQLType(){return`date`}mapFromDriverValue(e){return new Date(e)}mapToDriverValue(e){return e.toISOString()}},cI=class extends aI{static[Y]=`PgDateStringBuilder`;constructor(e){super(e,`string`,`PgDateString`)}build(e){return new lI(e,this.config)}},lI=class extends YP{static[Y]=`PgDateString`;getSQLType(){return`date`}},uI=class extends JP{static[Y]=`PgJsonBuilder`;constructor(e){super(e,`json`,`PgJson`)}build(e){return new dI(e,this.config)}},dI=class extends YP{static[Y]=`PgJson`;constructor(e,t){super(e,t)}getSQLType(){return`json`}mapToDriverValue(e){return JSON.stringify(e)}mapFromDriverValue(e){if(typeof e==`string`)try{return JSON.parse(e)}catch{return e}return e}},fI=class extends JP{static[Y]=`PgJsonbBuilder`;constructor(e){super(e,`json`,`PgJsonb`)}build(e){return new pI(e,this.config)}},pI=class extends YP{static[Y]=`PgJsonb`;constructor(e,t){super(e,t)}getSQLType(){return`jsonb`}mapToDriverValue(e){return JSON.stringify(e)}mapFromDriverValue(e){if(typeof e==`string`)try{return JSON.parse(e)}catch{return e}return e}},mI=class extends JP{static[Y]=`PgNumericBuilder`;constructor(e,t,n){super(e,`string`,`PgNumeric`),this.config.precision=t,this.config.scale=n}build(e){return new hI(e,this.config)}},hI=class extends YP{static[Y]=`PgNumeric`;precision;scale;constructor(e,t){super(e,t),this.precision=t.precision,this.scale=t.scale}mapFromDriverValue(e){return typeof e==`string`?e:String(e)}getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?`numeric`:`numeric(${this.precision})`}},gI=class extends JP{static[Y]=`PgNumericNumberBuilder`;constructor(e,t,n){super(e,`number`,`PgNumericNumber`),this.config.precision=t,this.config.scale=n}build(e){return new _I(e,this.config)}},_I=class extends YP{static[Y]=`PgNumericNumber`;precision;scale;constructor(e,t){super(e,t),this.precision=t.precision,this.scale=t.scale}mapFromDriverValue(e){return typeof e==`number`?e:Number(e)}mapToDriverValue=String;getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?`numeric`:`numeric(${this.precision})`}},vI=class extends JP{static[Y]=`PgNumericBigIntBuilder`;constructor(e,t,n){super(e,`bigint`,`PgNumericBigInt`),this.config.precision=t,this.config.scale=n}build(e){return new yI(e,this.config)}},yI=class extends YP{static[Y]=`PgNumericBigInt`;precision;scale;constructor(e,t){super(e,t),this.precision=t.precision,this.scale=t.scale}mapFromDriverValue=BigInt;mapToDriverValue=String;getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?`numeric`:`numeric(${this.precision})`}},bI=class extends aI{constructor(e,t,n){super(e,`string`,`PgTime`),this.withTimezone=t,this.precision=n,this.config.withTimezone=t,this.config.precision=n}static[Y]=`PgTimeBuilder`;build(e){return new xI(e,this.config)}},xI=class extends YP{static[Y]=`PgTime`;withTimezone;precision;constructor(e,t){super(e,t),this.withTimezone=t.withTimezone,this.precision=t.precision}getSQLType(){let e=this.precision===void 0?``:`(${this.precision})`;return`time${e}${this.withTimezone?` with time zone`:``}`}},SI=class extends aI{static[Y]=`PgTimestampBuilder`;constructor(e,t,n){super(e,`date`,`PgTimestamp`),this.config.withTimezone=t,this.config.precision=n}build(e){return new CI(e,this.config)}},CI=class extends YP{static[Y]=`PgTimestamp`;withTimezone;precision;constructor(e,t){super(e,t),this.withTimezone=t.withTimezone,this.precision=t.precision}getSQLType(){let e=this.precision===void 0?``:` (${this.precision})`;return`timestamp${e}${this.withTimezone?` with time zone`:``}`}mapFromDriverValue=e=>new Date(this.withTimezone?e:e+`+0000`);mapToDriverValue=e=>e.toISOString()},wI=class extends aI{static[Y]=`PgTimestampStringBuilder`;constructor(e,t,n){super(e,`string`,`PgTimestampString`),this.config.withTimezone=t,this.config.precision=n}build(e){return new TI(e,this.config)}},TI=class extends YP{static[Y]=`PgTimestampString`;withTimezone;precision;constructor(e,t){super(e,t),this.withTimezone=t.withTimezone,this.precision=t.precision}getSQLType(){let e=this.precision===void 0?``:`(${this.precision})`;return`timestamp${e}${this.withTimezone?` with time zone`:``}`}},EI=class extends JP{static[Y]=`PgUUIDBuilder`;constructor(e){super(e,`string`,`PgUUID`)}defaultRandom(){return this.default(Z`gen_random_uuid()`)}build(e){return new DI(e,this.config)}},DI=class extends YP{static[Y]=`PgUUID`;getSQLType(){return`uuid`}};const OI=Symbol.for(`drizzle:PgInlineForeignKeys`),kI=Symbol.for(`drizzle:EnableRLS`);var AI=class extends xF{static[Y]=`PgTable`;static Symbol=Object.assign({},xF.Symbol,{InlineForeignKeys:OI,EnableRLS:kI});[OI]=[];[kI]=!1;[xF.Symbol.ExtraConfigBuilder]=void 0;[xF.Symbol.ExtraConfigColumns]={}},jI=class{static[Y]=`PgPrimaryKeyBuilder`;columns;name;constructor(e,t){this.columns=e,this.name=t}build(e){return new MI(e,this.columns,this.name)}},MI=class{constructor(e,t,n){this.table=e,this.columns=t,this.name=n}static[Y]=`PgPrimaryKey`;columns;name;getName(){return this.name??`${this.table[AI.Symbol.Name]}_${this.columns.map(e=>e.name).join(`_`)}_pk`}};function NI(e,t){return AF(t)&&!TF(e)&&!X(e,PF)&&!X(e,FF)&&!X(e,PP)&&!X(e,xF)&&!X(e,RF)?new PF(e,t):e}const PI=(e,t)=>Z`${e} = ${NI(t,e)}`,FI=(e,t)=>Z`${e} <> ${NI(t,e)}`;function II(...e){let t=e.filter(e=>e!==void 0);if(t.length!==0)return t.length===1?new OF(t):new OF([new DF(`(`),Z.join(t,new DF(` and `)),new DF(`)`)])}function LI(...e){let t=e.filter(e=>e!==void 0);if(t.length!==0)return t.length===1?new OF(t):new OF([new DF(`(`),Z.join(t,new DF(` or `)),new DF(`)`)])}function RI(e){return Z`not ${e}`}const zI=(e,t)=>Z`${e} > ${NI(t,e)}`,BI=(e,t)=>Z`${e} >= ${NI(t,e)}`,VI=(e,t)=>Z`${e} < ${NI(t,e)}`,HI=(e,t)=>Z`${e} <= ${NI(t,e)}`;function UI(e,t){return Array.isArray(t)?t.length===0?Z`false`:Z`${e} in ${t.map(t=>NI(t,e))}`:Z`${e} in ${NI(t,e)}`}function WI(e,t){return Array.isArray(t)?t.length===0?Z`true`:Z`${e} not in ${t.map(t=>NI(t,e))}`:Z`${e} not in ${NI(t,e)}`}function GI(e){return Z`${e} is null`}function KI(e){return Z`${e} is not null`}function qI(e){return Z`exists ${e}`}function JI(e){return Z`not exists ${e}`}function YI(e,t,n){return Z`${e} between ${NI(t,e)} and ${NI(n,e)}`}function XI(e,t,n){return Z`${e} not between ${NI(t,e)} and ${NI(n,e)}`}function ZI(e,t){return Z`${e} like ${t}`}function QI(e,t){return Z`${e} not like ${t}`}function $I(e,t){return Z`${e} ilike ${t}`}function eL(e,t){return Z`${e} not ilike ${t}`}function tL(e){return Z`${e} asc`}function nL(e){return Z`${e} desc`}var rL=class{constructor(e,t,n){this.sourceTable=e,this.referencedTable=t,this.relationName=n,this.referencedTableName=t[xF.Symbol.Name]}static[Y]=`Relation`;referencedTableName;fieldName},iL=class{constructor(e,t){this.table=e,this.config=t}static[Y]=`Relations`},aL=class e extends rL{constructor(e,t,n,r){super(e,t,n?.relationName),this.config=n,this.isNullable=r}static[Y]=`One`;withFieldName(t){let n=new e(this.sourceTable,this.referencedTable,this.config,this.isNullable);return n.fieldName=t,n}},oL=class e extends rL{constructor(e,t,n){super(e,t,n?.relationName),this.config=n}static[Y]=`Many`;withFieldName(t){let n=new e(this.sourceTable,this.referencedTable,this.config);return n.fieldName=t,n}};function sL(){return{and:II,between:YI,eq:PI,exists:qI,gt:zI,gte:BI,ilike:$I,inArray:UI,isNull:GI,isNotNull:KI,like:ZI,lt:VI,lte:HI,ne:FI,not:RI,notBetween:XI,notExists:JI,notLike:QI,notIlike:eL,notInArray:WI,or:LI,sql:Z}}function cL(){return{sql:Z,asc:tL,desc:nL}}function lL(e,t){Object.keys(e).length===1&&`default`in e&&!X(e.default,xF)&&(e=e.default);let n={},r={},i={};for(let[a,o]of Object.entries(e))if(X(o,xF)){let e=CF(o),t=r[e];n[e]=a,i[a]={tsName:a,dbName:o[xF.Symbol.Name],schema:o[xF.Symbol.Schema],columns:o[xF.Symbol.Columns],relations:t?.relations??{},primaryKey:t?.primaryKey??[]};for(let e of Object.values(o[xF.Symbol.Columns]))e.primary&&i[a].primaryKey.push(e);let s=o[xF.Symbol.ExtraConfigBuilder]?.(o[xF.Symbol.ExtraConfigColumns]);if(s)for(let e of Object.values(s))X(e,jI)&&i[a].primaryKey.push(...e.columns)}else if(X(o,iL)){let e=CF(o.table),a=n[e],s=o.config(t(o.table)),c;for(let[t,n]of Object.entries(s))if(a){let e=i[a];e.relations[t]=n,c&&e.primaryKey.push(...c)}else e in r||(r[e]={relations:{},primaryKey:c}),r[e].relations[t]=n}return{tables:i,tableNamesMap:n}}function uL(e){return function(t,n){return new aL(e,t,n,n?.fields.reduce((e,t)=>e&&t.notNull,!0)??!1)}}function dL(e){return function(t,n){return new oL(e,t,n)}}function fL(e,t,n){if(X(n,aL)&&n.config)return{fields:n.config.fields,references:n.config.references};let r=t[CF(n.referencedTable)];if(!r)throw Error(`Table "${n.referencedTable[xF.Symbol.Name]}" not found in schema`);let i=e[r];if(!i)throw Error(`Table "${r}" not found in schema`);let a=n.sourceTable,o=t[CF(a)];if(!o)throw Error(`Table "${a[xF.Symbol.Name]}" not found in schema`);let s=[];for(let e of Object.values(i.relations))(n.relationName&&n!==e&&e.relationName===n.relationName||!n.relationName&&e.referencedTable===n.sourceTable)&&s.push(e);if(s.length>1)throw n.relationName?Error(`There are multiple relations with name "${n.relationName}" in table "${r}"`):Error(`There are multiple relations between "${r}" and "${n.sourceTable[xF.Symbol.Name]}". Please specify relation name`);if(s[0]&&X(s[0],aL)&&s[0].config)return{fields:s[0].config.references,references:s[0].config.fields};throw Error(`There is not enough information to infer relation "${o}.${n.fieldName}"`)}function pL(e){return{one:uL(e),many:dL(e)}}function mL(e,t,n,r,i=e=>e){let a={};for(let[o,s]of r.entries())if(s.isJson){let r=t.relations[s.tsKey],c=n[o],l=typeof c==`string`?JSON.parse(c):c;a[s.tsKey]=X(r,aL)?l&&mL(e,e[s.relationTableTsKey],l,s.selection,i):l.map(t=>mL(e,e[s.relationTableTsKey],t,s.selection,i))}else{let e=i(n[o]),t=s.field,r;r=X(t,PP)?t:X(t,OF)?t.decoder:t.sql.decoder,a[s.tsKey]=e===null?null:r.mapFromDriverValue(e)}return a}var hL=class e{static[Y]=`SelectionProxyHandler`;config;constructor(e){this.config={...e}}get(t,n){if(n===`_`)return{...t._,selectedFields:new Proxy(t._.selectedFields,this)};if(n===fF)return{...t[fF],selectedFields:new Proxy(t[fF].selectedFields,this)};if(typeof n==`symbol`)return t[n];let r=X(t,oF)?t._.selectedFields:X(t,RF)?t[fF].selectedFields:t,i=r[n];if(X(i,OF.Aliased)){if(this.config.sqlAliasedBehavior===`sql`&&!i.isSelectionField)return i.sql;let e=i.clone();return e.isSelectionField=!0,e}if(X(i,OF)){if(this.config.sqlBehavior===`sql`)return i;throw Error(`You tried to reference "${n}" field from a subquery, which is a raw SQL field, but it doesn't have an alias declared. Please add an alias to the field using ".as('alias')" method.`)}return X(i,PP)?this.config.alias?new Proxy(i,new zF(new Proxy(i.table,new BF(this.config.alias,this.config.replaceOriginalName??!1)))):i:typeof i!=`object`||!i?i:new Proxy(i,new e(this.config))}};function gL(e){let t=e.replace(/['\u2019]/g,``).match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[];return t.map(e=>e.toLowerCase()).join(`_`)}function _L(e){let t=e.replace(/['\u2019]/g,``).match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[];return t.reduce((e,t,n)=>{let r=n===0?t.toLowerCase():`${t[0].toUpperCase()}${t.slice(1)}`;return e+r},``)}function vL(e){return e}var yL=class{static[Y]=`CasingCache`;cache={};cachedTables={};convert;constructor(e){this.convert=e===`snake_case`?gL:e===`camelCase`?_L:vL}getColumnCasing(e){if(!e.keyAsName)return e.name;let t=e.table[xF.Symbol.Schema]??`public`,n=e.table[xF.Symbol.OriginalName],r=`${t}.${n}.${e.name}`;return this.cache[r]||this.cacheTable(e.table),this.cache[r]}cacheTable(e){let t=e[xF.Symbol.Schema]??`public`,n=e[xF.Symbol.OriginalName],r=`${t}.${n}`;if(!this.cachedTables[r]){for(let t of Object.values(e[xF.Symbol.Columns])){let e=`${r}.${t.name}`;this.cache[e]=this.convert(t.name)}this.cachedTables[r]=!0}}clearCache(){this.cache={},this.cachedTables={}}},bL=class extends RF{static[Y]=`PgViewBase`},xL=class{static[Y]=`PgDialect`;casing;constructor(e){this.casing=new yL(e?.casing)}async migrate(e,t,n){let r=typeof n==`string`?`__drizzle_migrations`:n.migrationsTable??`__drizzle_migrations`,i=typeof n==`string`?`drizzle`:n.migrationsSchema??`drizzle`,a=Z` + CREATE TABLE IF NOT EXISTS ${Z.identifier(i)}.${Z.identifier(r)} ( + id SERIAL PRIMARY KEY, + hash text NOT NULL, + created_at bigint + ) + `;await t.execute(Z`CREATE SCHEMA IF NOT EXISTS ${Z.identifier(i)}`),await t.execute(a);let o=await t.all(Z`select id, hash, created_at from ${Z.identifier(i)}.${Z.identifier(r)} order by created_at desc limit 1`),s=o[0];await t.transaction(async t=>{for await(let n of e)if(!s||Number(s.created_at)t[e]!==void 0||n[e]?.onUpdateFn!==void 0),i=r.length;return Z.join(r.flatMap((e,r)=>{let a=n[e],o=t[e]??Z.param(a.onUpdateFn(),a),s=Z`${Z.identifier(this.casing.getColumnCasing(a))} = ${o}`;return r{let i=[];if(X(e,OF.Aliased)&&e.isSelectionField)i.push(Z.identifier(e.fieldAlias));else if(X(e,OF.Aliased)||X(e,OF)){let n=X(e,OF.Aliased)?e.sql:e;t?i.push(new OF(n.queryChunks.map(e=>X(e,YP)?Z.identifier(this.casing.getColumnCasing(e)):e))):i.push(n),X(e,OF.Aliased)&&i.push(Z` as ${Z.identifier(e.fieldAlias)}`)}else X(e,PP)&&(t?i.push(Z.identifier(this.casing.getColumnCasing(e))):i.push(e));return ro?.some(({alias:t})=>t===(e[xF.Symbol.IsAlias]?SF(e):e[xF.Symbol.BaseName])))(e.field.table)){let t=SF(e.field.table);throw Error(`Your "${e.path.join(`->`)}" field references a column "${t}"."${e.field.name}", but the table "${t}" is not part of the query! Did you forget to join it?`)}let h=!o||o.length===0,g=this.buildWithCTE(e),_;f&&(_=f===!0?Z` distinct`:Z` distinct on (${Z.join(f.on,Z`, `)})`);let v=this.buildSelection(m,{isSingleTable:h}),y=this.buildFromTable(a),b=this.buildJoins(o),x=r?Z` where ${r}`:void 0,S=i?Z` having ${i}`:void 0,C;s&&s.length>0&&(C=Z` order by ${Z.join(s,Z`, `)}`);let w;c&&c.length>0&&(w=Z` group by ${Z.join(c,Z`, `)}`);let T=typeof l==`object`||typeof l==`number`&&l>=0?Z` limit ${l}`:void 0,E=u?Z` offset ${u}`:void 0,D=Z.empty();if(d){let e=Z` for ${Z.raw(d.strength)}`;d.config.of&&e.append(Z` of ${Z.join(Array.isArray(d.config.of)?d.config.of:[d.config.of],Z`, `)}`),d.config.noWait?e.append(Z` nowait`):d.config.skipLocked&&e.append(Z` skip locked`),D.append(e)}let O=Z`${g}select${_} ${v} from ${y}${b}${x}${w}${S}${C}${T}${E}${D}`;return p.length>0?this.buildSetOperations(O,p):O}buildSetOperations(e,t){let[n,...r]=t;if(!n)throw Error(`Cannot pass undefined values to any set operator`);return r.length===0?this.buildSetOperationQuery({leftSelect:e,setOperator:n}):this.buildSetOperations(this.buildSetOperationQuery({leftSelect:e,setOperator:n}),r)}buildSetOperationQuery({leftSelect:e,setOperator:{type:t,isAll:n,rightSelect:r,limit:i,orderBy:a,offset:o}}){let s=Z`(${e.getSQL()}) `,c=Z`(${r.getSQL()})`,l;if(a&&a.length>0){let e=[];for(let t of a)if(X(t,YP))e.push(Z.identifier(t.name));else if(X(t,OF)){for(let e=0;e=0?Z` limit ${i}`:void 0,d=Z.raw(`${t} ${n?`all `:``}`),f=o?Z` offset ${o}`:void 0;return Z`${s}${d}${c}${l}${u}${f}`}buildInsertQuery({table:e,values:t,onConflict:n,returning:r,withList:i,select:a,overridingSystemValue_:o}){let s=[],c=e[xF.Symbol.Columns],l=Object.entries(c).filter(([e,t])=>!t.shouldDisableInsert()),u=l.map(([,e])=>Z.identifier(this.casing.getColumnCasing(e)));if(a){let e=t;X(e,OF)?s.push(e):s.push(e.getSQL())}else{let e=t;s.push(Z.raw(`values `));for(let[t,n]of e.entries()){let r=[];for(let[e,t]of l){let i=n[e];if(i===void 0||X(i,PF)&&i.value===void 0)if(t.defaultFn!==void 0){let e=t.defaultFn(),n=X(e,OF)?e:Z.param(e,t);r.push(n)}else if(!t.default&&t.onUpdateFn!==void 0){let e=t.onUpdateFn(),n=X(e,OF)?e:Z.param(e,t);r.push(n)}else r.push(Z`default`);else r.push(i)}s.push(r),t({dbKey:t.name,tsKey:e,field:UF(t,o),relationTableTsKey:void 0,isJson:!1,selection:[]}))}else{let r=Object.fromEntries(Object.entries(i.columns).map(([e,t])=>[e,UF(t,o)]));if(a.where){let e=typeof a.where==`function`?a.where(r,sL()):a.where;p=e&&GF(e,o)}let s=[],c=[];if(a.columns){let e=!1;for(let[t,n]of Object.entries(a.columns)){if(n===void 0)continue;t in i.columns&&(!e&&n===!0&&(e=!0),c.push(t))}c.length>0&&(c=e?c.filter(e=>a.columns?.[e]===!0):Object.keys(i.columns).filter(e=>!c.includes(e)))}else c=Object.keys(i.columns);for(let e of c){let t=i.columns[e];s.push({tsKey:e,value:t})}let h=[];a.with&&(h=Object.entries(a.with).filter(e=>!!e[1]).map(([e,t])=>({tsKey:e,queryConfig:t,relation:i.relations[e]})));let g;if(a.extras){g=typeof a.extras==`function`?a.extras(r,{sql:Z}):a.extras;for(let[e,t]of Object.entries(g))s.push({tsKey:e,value:WF(t,o)})}for(let{tsKey:e,value:t}of s)l.push({dbKey:X(t,OF.Aliased)?t.fieldAlias:i.columns[e].name,tsKey:e,field:X(t,PP)?UF(t,o):t,relationTableTsKey:void 0,isJson:!1,selection:[]});let _=typeof a.orderBy==`function`?a.orderBy(r,cL()):a.orderBy??[];Array.isArray(_)||(_=[_]),f=_.map(e=>X(e,PP)?UF(e,o):GF(e,o)),u=a.limit,d=a.offset;for(let{tsKey:r,queryConfig:i,relation:a}of h){let s=fL(t,n,a),c=CF(a.referencedTable),u=n[c],d=`${o}_${r}`,f=II(...s.fields.map((e,t)=>PI(UF(s.references[t],d),UF(e,o)))),p=this.buildRelationalQueryWithoutPK({fullSchema:e,schema:t,tableNamesMap:n,table:e[u],tableConfig:t[u],queryConfig:X(a,aL)?i===!0?{limit:1}:{...i,limit:1}:i,tableAlias:d,joinOn:f,nestedQueryRelation:a}),h=Z`${Z.identifier(d)}.${Z.identifier(`data`)}`.as(r);m.push({on:Z`true`,table:new oF(p.sql,{},d),alias:d,joinType:`left`,lateral:!0}),l.push({dbKey:r,tsKey:r,field:h,relationTableTsKey:u,isJson:!0,selection:p.selection})}}if(l.length===0)throw new KF({message:`No fields selected for table "${i.tsName}" ("${o}")`});let h;if(p=II(c,p),s){let e=Z`json_build_array(${Z.join(l.map(({field:e,tsKey:t,isJson:n})=>n?Z`${Z.identifier(`${o}_${t}`)}.${Z.identifier(`data`)}`:X(e,OF.Aliased)?e.sql:e),Z`, `)})`;X(s,oL)&&(e=Z`coalesce(json_agg(${e}${f.length>0?Z` order by ${Z.join(f,Z`, `)}`:void 0}), '[]'::json)`);let t=[{dbKey:`data`,tsKey:`data`,field:e.as(`data`),isJson:!0,relationTableTsKey:i.tsName,selection:l}],n=u!==void 0||d!==void 0||f.length>0;n?(h=this.buildSelectQuery({table:HF(r,o),fields:{},fieldsFlat:[{path:[],field:Z.raw(`*`)}],where:p,limit:u,offset:d,orderBy:f,setOperators:[]}),p=void 0,u=void 0,d=void 0,f=[]):h=HF(r,o),h=this.buildSelectQuery({table:X(h,AI)?h:new oF(h,{},o),fields:{},fieldsFlat:t.map(({field:e})=>({path:[],field:X(e,PP)?UF(e,o):e})),joins:m,where:p,limit:u,offset:d,orderBy:f,setOperators:[]})}else h=this.buildSelectQuery({table:HF(r,o),fields:{},fieldsFlat:l.map(({field:e})=>({path:[],field:X(e,PP)?UF(e,o):e})),joins:m,where:p,limit:u,offset:d,orderBy:f,setOperators:[]});return{tableTsKey:i.tsName,sql:h,selection:l}}},SL=class{static[Y]=`TypedQueryBuilder`;getSelectedFields(){return this._.selectedFields}},CL=class{static[Y]=`PgSelectBuilder`;fields;session;dialect;withList=[];distinct;constructor(e){this.fields=e.fields,this.session=e.session,this.dialect=e.dialect,e.withList&&(this.withList=e.withList),this.distinct=e.distinct}authToken;setToken(e){return this.authToken=e,this}from(e){let t=!!this.fields,n=e,r;return r=this.fields?this.fields:X(n,oF)?Object.fromEntries(Object.keys(n._.selectedFields).map(e=>[e,n[e]])):X(n,bL)?n[fF].selectedFields:X(n,OF)?{}:nI(n),new TL({table:n,fields:r,isPartialSelect:t,session:this.session,dialect:this.dialect,withList:this.withList,distinct:this.distinct}).setToken(this.authToken)}},wL=class extends SL{static[Y]=`PgSelectQueryBuilder`;_;config;joinsNotNullableMap;tableName;isPartialSelect;session;dialect;cacheConfig=void 0;usedTables=new Set;constructor({table:e,fields:t,isPartialSelect:n,session:r,dialect:i,withList:a,distinct:o}){super(),this.config={withList:a,table:e,fields:{...t},distinct:o,setOperators:[]},this.isPartialSelect=n,this.session=r,this.dialect=i,this._={selectedFields:t,config:this.config},this.tableName=rI(e),this.joinsNotNullableMap=typeof this.tableName==`string`?{[this.tableName]:!0}:{};for(let t of FL(e))this.usedTables.add(t)}getUsedTables(){return[...this.usedTables]}createJoin(e,t){return(n,r)=>{let i=this.tableName,a=rI(n);for(let e of FL(n))this.usedTables.add(e);if(typeof a==`string`&&this.config.joins?.some(e=>e.alias===a))throw Error(`Alias "${a}" is already used in this query`);if(!this.isPartialSelect&&(Object.keys(this.joinsNotNullableMap).length===1&&typeof i==`string`&&(this.config.fields={[i]:this.config.fields}),typeof a==`string`&&!X(n,OF))){let e=X(n,oF)?n._.selectedFields:X(n,RF)?n[fF].selectedFields:n[xF.Symbol.Columns];this.config.fields[a]=e}if(typeof r==`function`&&(r=r(new Proxy(this.config.fields,new hL({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))),this.config.joins||(this.config.joins=[]),this.config.joins.push({on:r,table:n,joinType:e,alias:a,lateral:t}),typeof a==`string`)switch(e){case`left`:this.joinsNotNullableMap[a]=!1;break;case`right`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[a]=!0;break;case`cross`:case`inner`:this.joinsNotNullableMap[a]=!0;break;case`full`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[a]=!1;break}return this}}leftJoin=this.createJoin(`left`,!1);leftJoinLateral=this.createJoin(`left`,!0);rightJoin=this.createJoin(`right`,!1);innerJoin=this.createJoin(`inner`,!1);innerJoinLateral=this.createJoin(`inner`,!0);fullJoin=this.createJoin(`full`,!1);crossJoin=this.createJoin(`cross`,!1);crossJoinLateral=this.createJoin(`cross`,!0);createSetOperator(e,t){return n=>{let r=typeof n==`function`?n(DL()):n;if(!$F(this.getSelectedFields(),r.getSelectedFields()))throw Error(`Set operator error (union / intersect / except): selected fields are not the same or are in a different order`);return this.config.setOperators.push({type:e,isAll:t,rightSelect:r}),this}}union=this.createSetOperator(`union`,!1);unionAll=this.createSetOperator(`union`,!0);intersect=this.createSetOperator(`intersect`,!1);intersectAll=this.createSetOperator(`intersect`,!0);except=this.createSetOperator(`except`,!1);exceptAll=this.createSetOperator(`except`,!0);addSetOperators(e){return this.config.setOperators.push(...e),this}where(e){return typeof e==`function`&&(e=e(new Proxy(this.config.fields,new hL({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))),this.config.where=e,this}having(e){return typeof e==`function`&&(e=e(new Proxy(this.config.fields,new hL({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))),this.config.having=e,this}groupBy(...e){if(typeof e[0]==`function`){let t=e[0](new Proxy(this.config.fields,new hL({sqlAliasedBehavior:`alias`,sqlBehavior:`sql`})));this.config.groupBy=Array.isArray(t)?t:[t]}else this.config.groupBy=e;return this}orderBy(...e){if(typeof e[0]==`function`){let t=e[0](new Proxy(this.config.fields,new hL({sqlAliasedBehavior:`alias`,sqlBehavior:`sql`}))),n=Array.isArray(t)?t:[t];this.config.setOperators.length>0?this.config.setOperators.at(-1).orderBy=n:this.config.orderBy=n}else{let t=e;this.config.setOperators.length>0?this.config.setOperators.at(-1).orderBy=t:this.config.orderBy=t}return this}limit(e){return this.config.setOperators.length>0?this.config.setOperators.at(-1).limit=e:this.config.limit=e,this}offset(e){return this.config.setOperators.length>0?this.config.setOperators.at(-1).offset=e:this.config.offset=e,this}for(e,t={}){return this.config.lockingClause={strength:e,config:t},this}getSQL(){return this.dialect.buildSelectQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}as(e){let t=[];if(t.push(...FL(this.config.table)),this.config.joins)for(let e of this.config.joins)t.push(...FL(e.table));return new Proxy(new oF(this.getSQL(),this.config.fields,e,!1,[...new Set(t)]),new hL({alias:e,sqlAliasedBehavior:`alias`,sqlBehavior:`error`}))}getSelectedFields(){return new Proxy(this.config.fields,new hL({alias:this.tableName,sqlAliasedBehavior:`alias`,sqlBehavior:`error`}))}$dynamic(){return this}$withCache(e){return this.cacheConfig=e===void 0?{config:{},enable:!0,autoInvalidate:!0}:e===!1?{enable:!1}:{enable:!0,autoInvalidate:!0,...e},this}},TL=class extends wL{static[Y]=`PgSelect`;_prepare(e){let{session:t,config:n,dialect:r,joinsNotNullableMap:i,authToken:a,cacheConfig:o,usedTables:s}=this;if(!t)throw Error(`Cannot execute a query on a query builder. Please use a database instance instead.`);let{fields:c}=n;return dF.startActiveSpan(`drizzle.prepareQuery`,()=>{let n=QF(c),l=t.prepareQuery(r.sqlToQuery(this.getSQL()),n,e,!0,void 0,{type:`select`,tables:[...s]},o);return l.joinsNotNullableMap=i,l.setToken(a)})}prepare(e){return this._prepare(e)}authToken;setToken(e){return this.authToken=e,this}execute=e=>dF.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken))};tI(TL,[ZF]);function EL(e,t){return(n,r,...i)=>{let a=[r,...i].map(n=>({type:e,isAll:t,rightSelect:n}));for(let e of a)if(!$F(n.getSelectedFields(),e.rightSelect.getSelectedFields()))throw Error(`Set operator error (union / intersect / except): selected fields are not the same or are in a different order`);return n.addSetOperators(a)}}const DL=()=>({union:OL,unionAll:kL,intersect:AL,intersectAll:jL,except:ML,exceptAll:NL}),OL=EL(`union`,!1),kL=EL(`union`,!0),AL=EL(`intersect`,!1),jL=EL(`intersect`,!0),ML=EL(`except`,!1),NL=EL(`except`,!0);var PL=class{static[Y]=`PgQueryBuilder`;dialect;dialectConfig;constructor(e){this.dialect=X(e,xL)?e:void 0,this.dialectConfig=X(e,xL)?void 0:e}$with=(e,t)=>{let n=this,r=r=>(typeof r==`function`&&(r=r(n)),new Proxy(new sF(r.getSQL(),t??(`getSelectedFields`in r?r.getSelectedFields()??{}:{}),e,!0),new hL({alias:e,sqlAliasedBehavior:`alias`,sqlBehavior:`error`})));return{as:r}};with(...e){let t=this;function n(n){return new CL({fields:n??void 0,session:void 0,dialect:t.getDialect(),withList:e})}function r(e){return new CL({fields:e??void 0,session:void 0,dialect:t.getDialect(),distinct:!0})}function i(e,n){return new CL({fields:n??void 0,session:void 0,dialect:t.getDialect(),distinct:{on:e}})}return{select:n,selectDistinct:r,selectDistinctOn:i}}select(e){return new CL({fields:e??void 0,session:void 0,dialect:this.getDialect()})}selectDistinct(e){return new CL({fields:e??void 0,session:void 0,dialect:this.getDialect(),distinct:!0})}selectDistinctOn(e,t){return new CL({fields:t??void 0,session:void 0,dialect:this.getDialect(),distinct:{on:e}})}getDialect(){return this.dialect||=new xL(this.dialectConfig),this.dialect}};function FL(e){return X(e,AI)?[e[pF]?`${e[pF]}.${e[xF.Symbol.BaseName]}`:e[xF.Symbol.BaseName]]:X(e,oF)?e._.usedTables??[]:X(e,OF)?e.usedTables??[]:[]}var IL=class extends ZF{constructor(e,t,n,r){super(),this.session=t,this.dialect=n,this.config={table:e,withList:r}}static[Y]=`PgDelete`;config;cacheConfig;where(e){return this.config.where=e,this}returning(e=this.config.table[xF.Symbol.Columns]){return this.config.returningFields=e,this.config.returning=QF(e),this}getSQL(){return this.dialect.buildDeleteQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){return dF.startActiveSpan(`drizzle.prepareQuery`,()=>this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,e,!0,void 0,{type:`delete`,tables:FL(this.config.table)},this.cacheConfig))}prepare(e){return this._prepare(e)}authToken;setToken(e){return this.authToken=e,this}execute=e=>dF.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken));getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new hL({alias:SF(this.config.table),sqlAliasedBehavior:`alias`,sqlBehavior:`error`})):void 0}$dynamic(){return this}},LL=class{constructor(e,t,n,r,i){this.table=e,this.session=t,this.dialect=n,this.withList=r,this.overridingSystemValue_=i}static[Y]=`PgInsertBuilder`;authToken;setToken(e){return this.authToken=e,this}overridingSystemValue(){return this.overridingSystemValue_=!0,this}values(e){if(e=Array.isArray(e)?e:[e],e.length===0)throw Error(`values() must be called with at least one value`);let t=e.map(e=>{let t={},n=this.table[xF.Symbol.Columns];for(let r of Object.keys(e)){let i=e[r];t[r]=X(i,OF)?i:new PF(i,n[r])}return t});return new RL(this.table,t,this.session,this.dialect,this.withList,!1,this.overridingSystemValue_).setToken(this.authToken)}select(e){let t=typeof e==`function`?e(new PL):e;if(!X(t,OF)&&!$F(this.table[mF],t._.selectedFields))throw Error(`Insert select error: selected fields are not the same or are in a different order compared to the table definition`);return new RL(this.table,t,this.session,this.dialect,this.withList,!0)}},RL=class extends ZF{constructor(e,t,n,r,i,a,o){super(),this.session=n,this.dialect=r,this.config={table:e,values:t,withList:i,select:a,overridingSystemValue_:o}}static[Y]=`PgInsert`;config;cacheConfig;returning(e=this.config.table[xF.Symbol.Columns]){return this.config.returningFields=e,this.config.returning=QF(e),this}onConflictDoNothing(e={}){if(e.target===void 0)this.config.onConflict=Z`do nothing`;else{let t=``;t=Array.isArray(e.target)?e.target.map(e=>this.dialect.escapeName(this.dialect.casing.getColumnCasing(e))).join(`,`):this.dialect.escapeName(this.dialect.casing.getColumnCasing(e.target));let n=e.where?Z` where ${e.where}`:void 0;this.config.onConflict=Z`(${Z.raw(t)})${n} do nothing`}return this}onConflictDoUpdate(e){if(e.where&&(e.targetWhere||e.setWhere))throw Error(`You cannot use both "where" and "targetWhere"/"setWhere" at the same time - "where" is deprecated, use "targetWhere" or "setWhere" instead.`);let t=e.where?Z` where ${e.where}`:void 0,n=e.targetWhere?Z` where ${e.targetWhere}`:void 0,r=e.setWhere?Z` where ${e.setWhere}`:void 0,i=this.dialect.buildUpdateSet(this.config.table,eI(this.config.table,e.set)),a=``;return a=Array.isArray(e.target)?e.target.map(e=>this.dialect.escapeName(this.dialect.casing.getColumnCasing(e))).join(`,`):this.dialect.escapeName(this.dialect.casing.getColumnCasing(e.target)),this.config.onConflict=Z`(${Z.raw(a)})${n} do update set ${i}${t}${r}`,this}getSQL(){return this.dialect.buildInsertQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){return dF.startActiveSpan(`drizzle.prepareQuery`,()=>this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,e,!0,void 0,{type:`insert`,tables:FL(this.config.table)},this.cacheConfig))}prepare(e){return this._prepare(e)}authToken;setToken(e){return this.authToken=e,this}execute=e=>dF.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken));getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new hL({alias:SF(this.config.table),sqlAliasedBehavior:`alias`,sqlBehavior:`error`})):void 0}$dynamic(){return this}},zL=class extends ZF{constructor(e,t,n){super(),this.session=t,this.dialect=n,this.config={view:e}}static[Y]=`PgRefreshMaterializedView`;config;concurrently(){if(this.config.withNoData!==void 0)throw Error(`Cannot use concurrently and withNoData together`);return this.config.concurrently=!0,this}withNoData(){if(this.config.concurrently!==void 0)throw Error(`Cannot use concurrently and withNoData together`);return this.config.withNoData=!0,this}getSQL(){return this.dialect.buildRefreshMaterializedViewQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){return dF.startActiveSpan(`drizzle.prepareQuery`,()=>this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),void 0,e,!0))}prepare(e){return this._prepare(e)}authToken;setToken(e){return this.authToken=e,this}execute=e=>dF.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(e,this.authToken))},BL=class{constructor(e,t,n,r){this.table=e,this.session=t,this.dialect=n,this.withList=r}static[Y]=`PgUpdateBuilder`;authToken;setToken(e){return this.authToken=e,this}set(e){return new VL(this.table,eI(this.table,e),this.session,this.dialect,this.withList).setToken(this.authToken)}},VL=class extends ZF{constructor(e,t,n,r,i){super(),this.session=n,this.dialect=r,this.config={set:t,table:e,withList:i,joins:[]},this.tableName=rI(e),this.joinsNotNullableMap=typeof this.tableName==`string`?{[this.tableName]:!0}:{}}static[Y]=`PgUpdate`;config;tableName;joinsNotNullableMap;cacheConfig;from(e){let t=e,n=rI(t);return typeof n==`string`&&(this.joinsNotNullableMap[n]=!0),this.config.from=t,this}getTableLikeFields(e){return X(e,AI)?e[xF.Symbol.Columns]:X(e,oF)?e._.selectedFields:e[fF].selectedFields}createJoin(e){return(t,n)=>{let r=rI(t);if(typeof r==`string`&&this.config.joins.some(e=>e.alias===r))throw Error(`Alias "${r}" is already used in this query`);if(typeof n==`function`){let e=this.config.from&&!X(this.config.from,OF)?this.getTableLikeFields(this.config.from):void 0;n=n(new Proxy(this.config.table[xF.Symbol.Columns],new hL({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})),e&&new Proxy(e,new hL({sqlAliasedBehavior:`sql`,sqlBehavior:`sql`})))}if(this.config.joins.push({on:n,table:t,joinType:e,alias:r}),typeof r==`string`)switch(e){case`left`:this.joinsNotNullableMap[r]=!1;break;case`right`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[r]=!0;break;case`inner`:this.joinsNotNullableMap[r]=!0;break;case`full`:this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([e])=>[e,!1])),this.joinsNotNullableMap[r]=!1;break}return this}}leftJoin=this.createJoin(`left`);rightJoin=this.createJoin(`right`);innerJoin=this.createJoin(`inner`);fullJoin=this.createJoin(`full`);where(e){return this.config.where=e,this}returning(e){if(!e&&(e=Object.assign({},this.config.table[xF.Symbol.Columns]),this.config.from)){let t=rI(this.config.from);if(typeof t==`string`&&this.config.from&&!X(this.config.from,OF)){let n=this.getTableLikeFields(this.config.from);e[t]=n}for(let t of this.config.joins){let n=rI(t.table);if(typeof n==`string`&&!X(t.table,OF)){let r=this.getTableLikeFields(t.table);e[n]=r}}}return this.config.returningFields=e,this.config.returning=QF(e),this}getSQL(){return this.dialect.buildUpdateQuery(this.config)}toSQL(){let{typings:e,...t}=this.dialect.sqlToQuery(this.getSQL());return t}_prepare(e){let t=this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,e,!0,void 0,{type:`insert`,tables:FL(this.config.table)},this.cacheConfig);return t.joinsNotNullableMap=this.joinsNotNullableMap,t}prepare(e){return this._prepare(e)}authToken;setToken(e){return this.authToken=e,this}execute=e=>this._prepare().execute(e,this.authToken);getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new hL({alias:SF(this.config.table),sqlAliasedBehavior:`alias`,sqlBehavior:`error`})):void 0}$dynamic(){return this}},HL=class e extends OF{constructor(t){super(e.buildEmbeddedCount(t.source,t.filters).queryChunks),this.params=t,this.mapWith(Number),this.session=t.session,this.sql=e.buildCount(t.source,t.filters)}sql;token;static[Y]=`PgCountBuilder`;[Symbol.toStringTag]=`PgCountBuilder`;session;static buildEmbeddedCount(e,t){return Z`(select count(*) from ${e}${Z.raw(` where `).if(t)}${t})`}static buildCount(e,t){return Z`select count(*) as count from ${e}${Z.raw(` where `).if(t)}${t};`}setToken(e){return this.token=e,this}then(e,t){return Promise.resolve(this.session.count(this.sql,this.token)).then(e,t)}catch(e){return this.then(void 0,e)}finally(e){return this.then(t=>(e?.(),t),t=>{throw e?.(),t})}},UL=class{constructor(e,t,n,r,i,a,o){this.fullSchema=e,this.schema=t,this.tableNamesMap=n,this.table=r,this.tableConfig=i,this.dialect=a,this.session=o}static[Y]=`PgRelationalQueryBuilder`;findMany(e){return new WL(this.fullSchema,this.schema,this.tableNamesMap,this.table,this.tableConfig,this.dialect,this.session,e||{},`many`)}findFirst(e){return new WL(this.fullSchema,this.schema,this.tableNamesMap,this.table,this.tableConfig,this.dialect,this.session,e?{...e,limit:1}:{limit:1},`first`)}},WL=class extends ZF{constructor(e,t,n,r,i,a,o,s,c){super(),this.fullSchema=e,this.schema=t,this.tableNamesMap=n,this.table=r,this.tableConfig=i,this.dialect=a,this.session=o,this.config=s,this.mode=c}static[Y]=`PgRelationalQuery`;_prepare(e){return dF.startActiveSpan(`drizzle.prepareQuery`,()=>{let{query:t,builtQuery:n}=this._toSQL();return this.session.prepareQuery(n,void 0,e,!0,(e,n)=>{let r=e.map(e=>mL(this.schema,this.tableConfig,e,t.selection,n));return this.mode===`first`?r[0]:r})})}prepare(e){return this._prepare(e)}_getQuery(){return this.dialect.buildRelationalQueryWithoutPK({fullSchema:this.fullSchema,schema:this.schema,tableNamesMap:this.tableNamesMap,table:this.table,tableConfig:this.tableConfig,queryConfig:this.config,tableAlias:this.tableConfig.tsName})}getSQL(){return this._getQuery().sql}_toSQL(){let e=this._getQuery(),t=this.dialect.sqlToQuery(e.sql);return{query:e,builtQuery:t}}toSQL(){return this._toSQL().builtQuery}authToken;setToken(e){return this.authToken=e,this}execute(){return dF.startActiveSpan(`drizzle.operation`,()=>this._prepare().execute(void 0,this.authToken))}},GL=class extends ZF{constructor(e,t,n,r){super(),this.execute=e,this.sql=t,this.query=n,this.mapBatchResult=r}static[Y]=`PgRaw`;getSQL(){return this.sql}getQuery(){return this.query}mapResult(e,t){return t?this.mapBatchResult(e):e}_prepare(){return this}isResponseInArrayMode(){return!1}},KL=class{constructor(e,t,n){if(this.dialect=e,this.session=t,this._=n?{schema:n.schema,fullSchema:n.fullSchema,tableNamesMap:n.tableNamesMap,session:t}:{schema:void 0,fullSchema:{},tableNamesMap:{},session:t},this.query={},this._.schema)for(let[r,i]of Object.entries(this._.schema))this.query[r]=new UL(n.fullSchema,this._.schema,this._.tableNamesMap,n.fullSchema[r],i,e,t);this.$cache={invalidate:async e=>{}}}static[Y]=`PgDatabase`;query;$with=(e,t)=>{let n=this,r=r=>(typeof r==`function`&&(r=r(new PL(n.dialect))),new Proxy(new sF(r.getSQL(),t??(`getSelectedFields`in r?r.getSelectedFields()??{}:{}),e,!0),new hL({alias:e,sqlAliasedBehavior:`alias`,sqlBehavior:`error`})));return{as:r}};$count(e,t){return new HL({source:e,filters:t,session:this.session})}$cache;with(...e){let t=this;function n(n){return new CL({fields:n??void 0,session:t.session,dialect:t.dialect,withList:e})}function r(n){return new CL({fields:n??void 0,session:t.session,dialect:t.dialect,withList:e,distinct:!0})}function i(n,r){return new CL({fields:r??void 0,session:t.session,dialect:t.dialect,withList:e,distinct:{on:n}})}function a(n){return new BL(n,t.session,t.dialect,e)}function o(n){return new LL(n,t.session,t.dialect,e)}function s(n){return new IL(n,t.session,t.dialect,e)}return{select:n,selectDistinct:r,selectDistinctOn:i,update:a,insert:o,delete:s}}select(e){return new CL({fields:e??void 0,session:this.session,dialect:this.dialect})}selectDistinct(e){return new CL({fields:e??void 0,session:this.session,dialect:this.dialect,distinct:!0})}selectDistinctOn(e,t){return new CL({fields:t??void 0,session:this.session,dialect:this.dialect,distinct:{on:e}})}update(e){return new BL(e,this.session,this.dialect)}insert(e){return new LL(e,this.session,this.dialect)}delete(e){return new IL(e,this.session,this.dialect)}refreshMaterializedView(e){return new zL(e,this.session,this.dialect)}authToken;execute(e){let t=typeof e==`string`?Z.raw(e):e.getSQL(),n=this.dialect.sqlToQuery(t),r=this.session.prepareQuery(n,void 0,void 0,!1);return new GL(()=>r.execute(void 0,this.authToken),t,n,e=>r.mapResult(e,!0))}transaction(e,t){return this.session.transaction(e,t)}},qL=class{static[Y]=`Cache`},JL=class extends qL{strategy(){return`all`}static[Y]=`NoopCache`;async get(e){}async put(e,t,n,r){}async onMutate(e){}};async function YL(e,t){let n=`${e}-${JSON.stringify(t)}`,r=new TextEncoder,i=r.encode(n),a=await crypto.subtle.digest(`SHA-256`,i),o=[...new Uint8Array(a)],s=o.map(e=>e.toString(16).padStart(2,`0`)).join(``);return s}var XL=class e extends Error{constructor(t,n,r){super(`Failed query: ${t} +params: ${n}`),this.query=t,this.params=n,this.cause=r,Error.captureStackTrace(this,e),r&&(this.cause=r)}},ZL=class{constructor(e,t,n,r){this.query=e,this.cache=t,this.queryMetadata=n,this.cacheConfig=r,t&&t.strategy()===`all`&&r===void 0&&(this.cacheConfig={enable:!0,autoInvalidate:!0}),this.cacheConfig?.enable||(this.cacheConfig=void 0)}authToken;getQuery(){return this.query}mapResult(e,t){return e}setToken(e){return this.authToken=e,this}static[Y]=`PgPreparedQuery`;joinsNotNullableMap;async queryWithCache(e,t,n){if(this.cache===void 0||X(this.cache,JL)||this.queryMetadata===void 0)try{return await n()}catch(n){throw new XL(e,t,n)}if(this.cacheConfig&&!this.cacheConfig.enable)try{return await n()}catch(n){throw new XL(e,t,n)}if((this.queryMetadata.type===`insert`||this.queryMetadata.type===`update`||this.queryMetadata.type===`delete`)&&this.queryMetadata.tables.length>0)try{let[e]=await Promise.all([n(),this.cache.onMutate({tables:this.queryMetadata.tables})]);return e}catch(n){throw new XL(e,t,n)}if(!this.cacheConfig)try{return await n()}catch(n){throw new XL(e,t,n)}if(this.queryMetadata.type===`select`){let r=await this.cache.get(this.cacheConfig.tag??await YL(e,t),this.queryMetadata.tables,this.cacheConfig.tag!==void 0,this.cacheConfig.autoInvalidate);if(r===void 0){let r;try{r=await n()}catch(n){throw new XL(e,t,n)}return await this.cache.put(this.cacheConfig.tag??await YL(e,t),r,this.cacheConfig.autoInvalidate?this.queryMetadata.tables:[],this.cacheConfig.tag!==void 0,this.cacheConfig.config),r}return r}try{return await n()}catch(n){throw new XL(e,t,n)}}},QL=class{constructor(e){this.dialect=e}static[Y]=`PgSession`;execute(e,t){return dF.startActiveSpan(`drizzle.operation`,()=>{let n=dF.startActiveSpan(`drizzle.prepareQuery`,()=>this.prepareQuery(this.dialect.sqlToQuery(e),void 0,void 0,!1));return n.setToken(t).execute(void 0,t)})}all(e){return this.prepareQuery(this.dialect.sqlToQuery(e),void 0,void 0,!1).all()}async count(e,t){let n=await this.execute(e,t);return Number(n[0].count)}},$L=class extends KL{constructor(e,t,n,r=0){super(e,t,n),this.schema=n,this.nestedIndex=r}static[Y]=`PgTransaction`;rollback(){throw new qF}getTransactionConfigSQL(e){let t=[];return e.isolationLevel&&t.push(`isolation level ${e.isolationLevel}`),e.accessMode&&t.push(e.accessMode),typeof e.deferrable==`boolean`&&t.push(e.deferrable?`deferrable`:`not deferrable`),Z.raw(t.join(` `))}setTransaction(e){return this.session.execute(Z`set transaction ${this.getTransactionConfigSQL(e)}`)}};function eR(e){return typeof e==`string`&&/^true$/i.test(e)}function tR(e){let t={scheme:`duckdb-wasm:`},n=new URL(e);if(!n.protocol.startsWith(`duckdb-wasm:`))throw Error(`Expected scheme to be "duckdb-wasm:" but got "${n.protocol}"`);n.searchParams.get(`bundles`)===`import-url`&&(t.bundles=`import-url`);let r=n.searchParams.get(`logger`);r&&eR(r)&&(t.logger=!0);let i=n.searchParams.get(`storage`);switch(i){case kP.ORIGIN_PRIVATE_FS:{n.host.length>0&&console.warn(`Host "${n.host}" will be ignored while using Origin Private FS`);let e=n.searchParams.get(`write`);t.storage={type:kP.ORIGIN_PRIVATE_FS,path:n.pathname.startsWith(`/`)?n.pathname.slice(1):n.pathname,...e&&eR(e)&&{accessMode:Yw.READ_WRITE}};break}case null:break;default:console.warn(`Unknown storage type "${i}"`);break}return t}var nR=class extends ZL{static[Y]=`DuckDBWasmPreparedQuery`;constructor(e,t,n,r,i,a){super({sql:t,params:n}),this.client=e,this.queryString=t,this.params=n,this.logger=r,this.fields=i,this.customResultMapper=a}async execute(e={}){let t=IF(this.params,e);this.logger.logQuery(this.queryString,t);let{fields:n,queryString:r,client:i,customResultMapper:a}=this,o=await i;return o.query(r,t)}async all(e={}){let t=IF(this.params,e);this.logger.logQuery(this.queryString,t);let n=await this.client;return n.query(this.queryString,t)}},rR=class e extends QL{static[Y]=`DuckDBWasmSession`;logger;constructor(e,t,n,r={}){super(t),this.client=e,this.schema=n,this.options=r,this.logger=r.logger??new XF}prepareQuery(e,t,n,r,i){return new nR(this.client,e.sql,e.params,this.logger,t,i)}async query(e,t){this.logger.logQuery(e,t);let n=await this.client;return n.query(e,t)}async queryObjects(e,t){this.logger.logQuery(e,t);let n=await this.client;return n.query(e,t)}transaction(t,n){return jP(this.client,async r=>{let i=new e(r,this.dialect,this.schema,this.options),a=new iR(this.dialect,i,this.schema);return n&&await a.setTransaction(n),t(a)})}},iR=class e extends $L{static[Y]=`DuckDBWasmTransaction`;dialect;session;constructor(e,t,n,r=0){super(e,t,n,r),this.dialect=e,this.session=t}async transaction(t){return MP(this.session.client,``,async n=>{let r=new rR(n,this.dialect,this.schema,this.session.options),i=new e(this.dialect,r,this.schema);return t(i)})}},aR=class extends KL{static[Y]=`DuckDBWasmDatabase`};function oR(e,t={}){let n=new xL({casing:t.casing}),r;t.logger===!0?r=new YF:t.logger!==!1&&(r=t.logger);let i;if(t.schema){let e=lL(t.schema,pL);i={fullSchema:t.schema,schema:e.tables,tableNamesMap:e.tableNamesMap}}let a=new rR(e,n,i,{logger:r}),o=new aR(n,a,i);return o.$client=e,o}function sR(e,t){let n=tR(e),r;if(n.bundles===`import-url`){let e=async()=>{let e=await nP();switch(e){case`browser`:return(await u(async()=>{let{getImportUrlBundles:e}=await import(`./import-url-browser-DiF0t3Mp.js`);return{getImportUrlBundles:e}},__vite__mapDeps([4,5,6]))).getImportUrlBundles();case`node`:return await(await u(async()=>{let{getImportUrlBundles:e}=await import(`./import-url-node-6Z1GQvNO.js`);return{getImportUrlBundles:e}},__vite__mapDeps([7,6]))).getImportUrlBundles();default:throw Error(`Unsupported environment: "${e}"`)}};r=e()}else{let e=async()=>{let e=await nP();switch(e){case`browser`:return(await u(async()=>{let{getBundles:e}=await import(`./default-browser-CAeK6Ish.js`);return{getBundles:e}},[])).getBundles();case`node`:return await(await u(async()=>{let{getBundles:e}=await import(`./default-node-D3algJHl.js`);return{getBundles:e}},__vite__mapDeps([3,1,2]))).getBundles();default:throw Error(`Unsupported environment: "${e}"`)}};r=e()}return oR(AP({bundles:r,logger:n.logger?new nT:void 0,storage:n.storage}),t)}function cR(...e){if(typeof e[0]==`string`)return sR(e[0],e[1]);if(iI(e[0])){let{connection:t,client:n,...r}=e[0];if(n)return oR(n,r);if(typeof t==`string`)return sR(t,r);if(t===void 0)throw Error(`connection option is required`);return oR(AP({bundles:t.bundles,logger:t.logger,storage:t.storage}),r)}return oR(e[0],e[1])}(function(e){function t(e){return oR({options:{parsers:{},serializers:{}}},e)}e.mock=t})(cR||={});var lR=Object.defineProperty,uR=(e,t,n)=>t in e?lR(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,dR=(e,t,n)=>uR(e,typeof t==`symbol`?t:t+``,n);function fR(e){return an()?(cn(e),!0):!1}function pR(e){return typeof e==`function`?e():G(e)}const mR=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;const hR=Object.prototype.toString,gR=e=>hR.call(e)===`[object Object]`,_R=()=>{};function vR(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}function yR(e,t={}){let n,r,i=_R,a=e=>{clearTimeout(e),i(),i=_R};return o=>{let s=pR(e),c=pR(t.maxWait);return n&&a(n),s<=0||c!==void 0&&c<=0?(r&&(a(r),r=null),Promise.resolve(o())):new Promise((e,l)=>{i=t.rejectOnCancel?l:e,c&&!r&&(r=setTimeout(()=>{n&&a(n),r=null,e(o())},c)),n=setTimeout(()=>{r&&a(r),r=null,e(o())},s)})}}function bR(...e){let t=0,n,r=!0,i=_R,a,o,s,c,l;!qt(e[0])&&typeof e[0]==`object`?{delay:o,trailing:s=!0,leading:c=!0,rejectOnCancel:l=!1}=e[0]:[o,s=!0,c=!0,l=!1]=e;let u=()=>{n&&(clearTimeout(n),n=void 0,i(),i=_R)};return e=>{let d=pR(o),f=Date.now()-t,p=()=>a=e();return u(),d<=0?(t=Date.now(),p()):(f>d&&(c||!r)?(t=Date.now(),p()):s&&(a=new Promise((e,a)=>{i=l?a:e,n=setTimeout(()=>{t=Date.now(),r=!0,e(p()),u()},Math.max(0,d-f))})),!c&&!n&&(n=setTimeout(()=>r=!0,d)),r=!1,a)}}function xR(e){return Cn()}function SR(e,t=200,n={}){return vR(yR(t,n),e)}function CR(e,t=200,n=!1,r=!0,i=!1){return vR(bR(t,n,r,i),e)}function wR(e,t=!0,n){xR()?Jt(e,n):t?e():Yt(e)}const TR=mR?window:void 0;function ER(e){var t;let n=pR(e);return(t=n?.$el)??n}function DR(...e){let t,n,r,i;if(typeof e[0]==`string`||Array.isArray(e[0])?([n,r,i]=e,t=TR):[t,n,r,i]=e,!t)return _R;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);let a=[],o=()=>{a.forEach(e=>e()),a.length=0},s=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),c=V(()=>[ER(t),pR(i)],([e,t])=>{if(o(),!e)return;let i=gR(t)?{...t}:t;a.push(...n.flatMap(t=>r.map(n=>s(e,t,n,i))))},{immediate:!0,flush:`post`}),l=()=>{c(),o()};return fR(l),l}function OR(){let e=U(!1),t=Cn();return t&&Jt(()=>{e.value=!0},t),e}function kR(e){let t=OR();return Sn(()=>(t.value,!!e()))}function AR(e,t={}){let{window:n=TR}=t,r=kR(()=>n&&`matchMedia`in n&&typeof n.matchMedia==`function`),i,a=U(!1),o=e=>{a.value=e.matches},s=()=>{i&&(`removeEventListener`in i?i.removeEventListener(`change`,o):i.removeListener(o))},c=gn(()=>{r.value&&(s(),i=n.matchMedia(pR(e)),`addEventListener`in i?i.addEventListener(`change`,o):i.addListener(o),a.value=i.matches)});return fR(()=>{c(),s(),i=void 0}),a}function jR(e,t,n={}){let{window:r=TR,...i}=n,a,o=kR(()=>r&&`ResizeObserver`in r),s=()=>{a&&(a.disconnect(),a=void 0)},c=Sn(()=>{let t=pR(e);return Array.isArray(t)?t.map(e=>ER(e)):[ER(t)]}),l=V(c,e=>{if(s(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),u=()=>{s(),l()};return fR(u),{isSupported:o,stop:u}}function MR(e,t={width:0,height:0},n={}){let{window:r=TR,box:i=`content-box`}=n,a=Sn(()=>{var t,n;return(n=(t=ER(e))?.namespaceURI)?.includes(`svg`)}),o=U(t.width),s=U(t.height),{stop:c}=jR(e,([t])=>{let n=i===`border-box`?t.borderBoxSize:i===`content-box`?t.contentBoxSize:t.devicePixelContentBoxSize;if(r&&a.value){let t=ER(e);if(t){let e=t.getBoundingClientRect();o.value=e.width,s.value=e.height}}else if(n){let e=Array.isArray(n)?n:[n];o.value=e.reduce((e,{inlineSize:t})=>e+t,0),s.value=e.reduce((e,{blockSize:t})=>e+t,0)}else o.value=t.contentRect.width,s.value=t.contentRect.height},n);wR(()=>{let n=ER(e);n&&(o.value=`offsetWidth`in n?n.offsetWidth:t.width,s.value=`offsetHeight`in n?n.offsetHeight:t.height)});let l=V(()=>ER(e),e=>{o.value=e?t.width:0,s.value=e?t.height:0});function u(){c(),l()}return{width:o,height:s,stop:u}}const NR=1;function PR(e,t={}){let{throttle:n=0,idle:r=200,onStop:i=_R,onScroll:a=_R,offset:o={left:0,right:0,top:0,bottom:0},eventListenerOptions:s={capture:!1,passive:!0},behavior:c=`auto`,window:l=TR,onError:u=e=>{console.error(e)}}=t,d=U(0),f=U(0),p=Sn({get(){return d.value},set(e){h(e,void 0)}}),m=Sn({get(){return f.value},set(e){h(void 0,e)}});function h(t,n){var r,i,a,o;if(!l)return;let s=pR(e);if(!s)return;(a=s instanceof Document?l.document.body:s)==null||a.scrollTo({top:(r=pR(n))??m.value,left:(i=pR(t))??p.value,behavior:pR(c)});let u=(o=s?.document)?.documentElement||s?.documentElement||s;p!=null&&(d.value=u.scrollLeft),m!=null&&(f.value=u.scrollTop)}let g=U(!1),_=sn({left:!0,right:!1,top:!0,bottom:!1}),v=sn({left:!1,right:!1,top:!1,bottom:!1}),y=e=>{g.value&&(g.value=!1,v.left=!1,v.right=!1,v.top=!1,v.bottom=!1,i(e))},b=SR(y,n+r),x=e=>{var t;if(!l)return;let n=(t=e?.document)?.documentElement||e?.documentElement||ER(e),{display:r,flexDirection:i}=getComputedStyle(n),a=n.scrollLeft;v.left=ad.value;let s=Math.abs(a)<=(o.left||0),c=Math.abs(a)+n.clientWidth>=n.scrollWidth-(o.right||0)-NR;r===`flex`&&i===`row-reverse`?(_.left=c,_.right=s):(_.left=s,_.right=c),d.value=a;let u=n.scrollTop;e===l.document&&!u&&(u=l.document.body.scrollTop),v.top=uf.value;let p=Math.abs(u)<=(o.top||0),m=Math.abs(u)+n.clientHeight>=n.scrollHeight-(o.bottom||0)-NR;r===`flex`&&i===`column-reverse`?(_.top=m,_.bottom=p):(_.top=p,_.bottom=m),f.value=u},S=e=>{var t;if(!l)return;let n=(t=e.target.documentElement)??e.target;x(n),g.value=!0,b(e),a(e)};return DR(e,`scroll`,n?CR(S,n,!0,!1):S,s),wR(()=>{try{let t=pR(e);if(!t)return;x(t)}catch(e){u(e)}}),DR(e,`scrollend`,y,s),{x:p,y:m,isScrolling:g,arrivedState:_,directions:v,measure(){let t=pR(e);l&&t&&x(t)}}}const FR={ctrl:`control`,command:`meta`,cmd:`meta`,option:`alt`,up:`arrowup`,down:`arrowdown`,left:`arrowleft`,right:`arrowright`};function IR(e={}){let{reactive:t=!1,target:n=TR,aliasMap:r=FR,passive:i=!0,onEventFired:a=_R}=e,o=sn(new Set),s={toJSON(){return{}},current:o},c=t?sn(s):s,l=new Set,u=new Set;function d(e,n){e in c&&(t?c[e]=n:c[e].value=n)}function f(){o.clear();for(let e of u)d(e,!1)}function p(e,t){var n,r;let i=(n=e.key)?.toLowerCase(),a=[(r=e.code)?.toLowerCase(),i].filter(Boolean);i&&(t?o.add(i):o.delete(i));for(let e of a)u.add(e),d(e,t);i===`meta`&&!t?(l.forEach(e=>{o.delete(e),d(e,!1)}),l.clear()):typeof e.getModifierState==`function`&&e.getModifierState(`Meta`)&&t&&[...o,...a].forEach(e=>l.add(e))}DR(n,`keydown`,e=>(p(e,!0),a(e)),{passive:i}),DR(n,`keyup`,e=>(p(e,!1),a(e)),{passive:i}),DR(`blur`,f,{passive:!0}),DR(`focus`,f,{passive:!0});let m=new Proxy(c,{get(e,n,i){if(typeof n!=`string`)return Reflect.get(e,n,i);if(n=n.toLowerCase(),n in r&&(n=r[n]),!(n in c))if(/[+_-]/.test(n)){let e=n.split(/[+_-]/g).map(e=>e.trim());c[n]=Sn(()=>e.every(e=>pR(m[e])))}else c[n]=U(!1);let a=Reflect.get(e,n,i);return t?pR(a):a}});return m}const LR={page:e=>[e.pageX,e.pageY],client:e=>[e.clientX,e.clientY],screen:e=>[e.screenX,e.screenY],movement:e=>e instanceof Touch?null:[e.movementX,e.movementY]};function RR(e={}){let{type:t=`page`,touch:n=!0,resetOnTouchEnds:r=!1,initialValue:i={x:0,y:0},window:a=TR,target:o=a,scroll:s=!0,eventFilter:c}=e,l=null,u=0,d=0,f=U(i.x),p=U(i.y),m=U(null),h=typeof t==`function`?t:LR[t],g=e=>{let t=h(e);l=e,t&&([f.value,p.value]=t,m.value=`mouse`),a&&(u=a.scrollX,d=a.scrollY)},_=e=>{if(e.touches.length>0){let t=h(e.touches[0]);t&&([f.value,p.value]=t,m.value=`touch`)}},v=()=>{if(!l||!a)return;let e=h(l);l instanceof MouseEvent&&e&&(f.value=e[0]+a.scrollX-u,p.value=e[1]+a.scrollY-d)},y=()=>{f.value=i.x,p.value=i.y},b=c?e=>c(()=>g(e),{}):e=>g(e),x=c?e=>c(()=>_(e),{}):e=>_(e),S=c?()=>c(()=>v(),{}):()=>v();if(o){let e={passive:!0};DR(o,[`mousemove`,`dragover`],b,e),n&&t!==`movement`&&(DR(o,[`touchstart`,`touchmove`],x,e),r&&DR(o,`touchend`,y,e)),s&&t===`page`&&DR(a,`scroll`,S,{passive:!0})}return{x:f,y:p,sourceType:m}}function zR(e={}){let{window:t=TR,behavior:n=`auto`}=e;if(!t)return{x:U(0),y:U(0)};let r=U(t.scrollX),i=U(t.scrollY),a=Sn({get(){return r.value},set(e){scrollTo({left:e,behavior:n})}}),o=Sn({get(){return i.value},set(e){scrollTo({top:e,behavior:n})}});return DR(t,`scroll`,()=>{r.value=t.scrollX,i.value=t.scrollY},{capture:!1,passive:!0}),{x:a,y:o}}function BR(e={}){let{window:t=TR,initialWidth:n=1/0,initialHeight:r=1/0,listenOrientation:i=!0,includeScrollbar:a=!0,type:o=`inner`}=e,s=U(n),c=U(r),l=()=>{t&&(o===`outer`?(s.value=t.outerWidth,c.value=t.outerHeight):a?(s.value=t.innerWidth,c.value=t.innerHeight):(s.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(l(),wR(l),DR(`resize`,l,{passive:!0}),i){let e=AR(`(orientation: portrait)`);V(e,()=>l())}return{width:s,height:c}}function VR(e){let{resolution:t,renderer:n,scene:r,envMap:i,fog:a,near:o,far:s}=e;n??=w().renderer,r??=w().scene,gn(()=>{t=un(e.resolution)??255,o=un(e.near)??.1,s=un(e.far)??1e3,i=un(e.envMap)??void 0,a=un(e.fog)??void 0,n=un(e.renderer)??n,r=un(e.scene)??r});let c=Sn(()=>new Se(un(t)));c.value.texture.type=ae,fR(()=>{c.value.dispose()});let l=Sn(()=>new Ve(un(o),un(s),un(c))),u=()=>{let e=un(r),t=e.fog,o=e.background;e.background=un(i)||o,e.fog=un(a)||t,l.value.update(un(n),e),e.fog=t,e.background=o};return gn(u),{fbo:c,camera:l,update:u}}const HR=[`object`],UR=Xt({__name:`component`,props:{frames:{default:1/0},resolution:{},near:{},far:{},envMap:{},fog:{},renderer:{},scene:{}},setup(e,{expose:t}){let n=e,r=W(),{fbo:i,camera:a,update:o}=VR(n),s=0;return T().onBeforeRender(()=>{r.value&&(n.frames===1/0||s{`material`in e&&typeof e.material==`object`&&e.material&&`envMap`in e.material&&(e.material.envMap=i.value.texture)}),s++)}),t({instance:r,fbo:i,camera:a,update:o}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`groupRef`,ref:r},[K(`primitive`,{object:G(a)},null,8,HR),vn(e.$slots,`default`)],512))}}),WR=Xt({__name:`Billboard`,props:{autoUpdate:{type:Boolean,default:!0},lockX:{type:Boolean,default:!1},lockY:{type:Boolean,default:!1},lockZ:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,r=W(new Lt),i=W(new Lt),a=new ht,o=new me;function s(e){r.value&&(!e&&(e=w().camera.value,!e)||(i.value.rotation.copy(o),r.value.updateMatrix(),r.value.updateWorldMatrix(!1,!1),r.value.getWorldQuaternion(a),e.getWorldQuaternion(i.value.quaternion).premultiply(a.invert()),n.lockX&&(i.value.rotation.x=o.x),n.lockY&&(i.value.rotation.y=o.y),n.lockZ&&(i.value.rotation.z=o.z)))}return T().onBeforeRender(({camera:e})=>{n.autoUpdate&&s(e)}),t({instance:r,update:s}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`outerRef`,ref:r},[K(`TresGroup`,{ref_key:`innerRef`,ref:i},[vn(e.$slots,`default`)],512)],512))}}),GR=Xt({name:`GlobalAudio`,props:[`src`,`loop`,`volume`,`playbackRate`,`playTrigger`,`stopTrigger`],async setup(e,{expose:t,emit:n}){var r;let{camera:i,renderer:a}=ve(),o=new Ot;(r=i.value)==null||r.add(o);let s=new at(o),c=new Be;t({instance:s}),mn(()=>{s&&s.disconnect()}),V(()=>[e.playbackRate],()=>s.setPlaybackRate(e.playbackRate??1),{immediate:!0}),V(()=>[e.volume],()=>s.setVolume(e.volume??.5),{immediate:!0}),V(()=>[e.loop],()=>s.setLoop(e.loop??!1),{immediate:!0}),V(()=>[e.src],async()=>{let t=await c.loadAsync(e.src);s.setBuffer(t)},{immediate:!0});let l=document.getElementById(e.playTrigger??``)||a.value.domElement;DR(l,`click`,()=>{s.isPlaying?s.pause():s.play(),n(`isPlaying`,s.isPlaying)});let u=document.getElementById(e.stopTrigger??``);return u&&DR(u,`click`,()=>{s.stop(),n(`isPlaying`,s.isPlaying)}),null}}),KR=[`color-space`,`args`,`attach`],qR=Xt({__name:`GradientTexture`,props:{stops:{},colors:{},attach:{default:`map`},height:{default:1024},width:{default:16},type:{default:`linear`},innerCircleRadius:{default:0},outerCircleRadius:{default:`auto`}},setup(e,{expose:t}){let n=e,r=W(),i=document.createElement(`canvas`);function a(e){let t=e.getContext(`2d`);e.width=n.width,e.height=n.height;let i;if(n.type===`linear`)i=t.createLinearGradient(0,0,0,n.height);else{let r=e.width/2,a=e.height/2,o=n.outerCircleRadius===`auto`?Math.sqrt(r**2+a**2):Math.abs(Number(n.outerCircleRadius));i=t.createRadialGradient(r,a,Math.abs(n.innerCircleRadius),r,a,o)}let a=new Ft,o=n.stops.length;for(;o--;)i.addColorStop(n.stops[o],a.set(n.colors[o]).getStyle());t.save(),t.fillStyle=i,t.fillRect(0,0,n.width,n.height),t.restore(),r.value&&(r.value.needsUpdate=!0)}let o=w().renderer;return V(()=>[n.colors,n.stops,n.height,n.width,n.type,n.innerCircleRadius,n.outerCircleRadius],()=>{a(i)},{immediate:!0}),nn(n.colors)&&V(n.colors,()=>a(i)),nn(n.stops)&&V(n.stops,()=>a(i)),t({instance:r}),(e,t)=>(H(),fn(`TresCanvasTexture`,{ref_key:`textureRef`,ref:r,"color-space":G(o).outputColorSpace,args:[G(i)],attach:n.attach},null,8,KR))}});function JR(e,t,n,r){let i=class extends _t{constructor(r={}){let i=Object.entries(e);super({uniforms:i.reduce((e,[t,n])=>{let r=it.clone({[t]:{value:n}});return{...e,...r}},{}),vertexShader:t,fragmentShader:n}),dR(this,`key`,``),i.forEach(([e])=>Object.defineProperty(this,e,{get:()=>this.uniforms[e].value,set:t=>this.uniforms[e].value=t})),Object.assign(this,r)}};return i.key=Ie.generateUUID(),i}const YR=JR({color:new Ft(`white`),scale:new He(1,1),imageBounds:new He(1,1),resolution:1024,map:null,zoom:1,radius:0,grayscale:0,opacity:1},` + varying vec2 vUv; + varying vec2 vPos; + void main() { + gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4(position, 1.); + vUv = uv; + vPos = position.xy; + } + `,` + // mostly from https://gist.github.com/statico/df64c5d167362ecf7b34fca0b1459a44 + varying vec2 vUv; + varying vec2 vPos; + uniform vec2 scale; + uniform vec2 imageBounds; + uniform float resolution; + uniform vec3 color; + uniform sampler2D map; + uniform float radius; + uniform float zoom; + uniform float grayscale; + uniform float opacity; + const vec3 luma = vec3(.299, 0.587, 0.114); + vec4 toGrayscale(vec4 color, float intensity) { + return vec4(mix(color.rgb, vec3(dot(color.rgb, luma)), intensity), color.a); + } + vec2 aspect(vec2 size) { + return size / min(size.x, size.y); + } + + const float PI = 3.14159265; + + // from https://iquilezles.org/articles/distfunctions + float udRoundBox( vec2 p, vec2 b, float r ) { + return length(max(abs(p)-b+r,0.0))-r; + } + + void main() { + vec2 s = aspect(scale); + vec2 i = aspect(imageBounds); + float rs = s.x / s.y; + float ri = i.x / i.y; + vec2 new = rs < ri ? vec2(i.x * s.y / i.y, s.y) : vec2(s.x, i.y * s.x / i.x); + vec2 offset = (rs < ri ? vec2((new.x - s.x) / 2.0, 0.0) : vec2(0.0, (new.y - s.y) / 2.0)) / new; + vec2 uv = vUv * s / new + offset; + vec2 zUv = (uv - vec2(0.5, 0.5)) / zoom + vec2(0.5, 0.5); + + vec2 res = vec2(scale * resolution); + vec2 halfRes = 0.5 * res; + float b = udRoundBox(vUv.xy * res - halfRes, halfRes, resolution * radius); + vec3 a = mix(vec3(1.0,0.0,0.0), vec3(0.0,0.0,0.0), smoothstep(0.0, 1.0, b)); + gl_FragColor = toGrayscale(texture2D(map, zUv) * vec4(color, opacity * a), grayscale); + + #include + #include + } + `),XR=Xt({__name:`ImageMaterial`,setup(e,{expose:t}){A({ImageMaterial:YR});let n=W();return t({instance:n}),(e,t)=>(H(),fn(`TresImageMaterial`,{ref_key:`materialRef`,ref:n},null,512))}}),ZR=[`scale`],QR=[`args`],$R=Xt({__name:`component`,props:{segments:{default:1},scale:{default:1},color:{default:()=>new Ft(`white`)},zoom:{default:1},radius:{default:0},grayscale:{default:0},toneMapped:{type:Boolean,default:!0},transparent:{type:Boolean,default:!1},opacity:{default:1},side:{default:re},texture:{},url:{}},setup(e,{expose:t}){let n=e,r=W(),i=W(n.texture??null),a=w().sizes,o=Sn(()=>Array.isArray(n.scale)?[n.scale[0],n.scale[1]]:[n.scale,n.scale]),s=Sn(()=>{var e,t;return[(e=i.value)?.image.width??0,(t=i.value)?.image.height??0]}),c=Sn(()=>Math.max(a.width.value,a.height.value));gn(()=>{n.texture?i.value=n.texture:E([n.url]).then(e=>i.value=e)});let l=Sn(()=>Array.isArray(n.scale)?[...n.scale,1]:n.scale);return t({instance:r}),(e,t)=>(H(),fn(`TresMesh`,{ref_key:`imageRef`,ref:r,scale:l.value},[vn(e.$slots,`default`,{},()=>[K(`TresPlaneGeometry`,{args:[1,1,n.segments,n.segments]},null,8,QR)]),$t(XR,{color:n.color,map:i.value,zoom:n.zoom,grayscale:n.grayscale,opacity:n.opacity,scale:o.value,imageBounds:s.value,resolution:c.value,radius:e.radius,toneMapped:e.toneMapped,transparent:e.transparent,side:e.side},null,8,[`color`,`map`,`zoom`,`grayscale`,`opacity`,`scale`,`imageBounds`,`resolution`,`radius`,`toneMapped`,`transparent`,`side`])],8,ZR))}}),ez=parseInt(nt.replace(/\D+/g,``)),tz=ez>=125?`uv1`:`uv2`;function nz(e,t=Math.PI/3){let n=Math.cos(t),r=1.0000000001*100,i=[new B,new B,new B],a=new B,o=new B,s=new B,c=new B;function l(e){let t=~~(e.x*r),n=~~(e.y*r),i=~~(e.z*r);return`${t},${n},${i}`}let u=e.index?e.toNonIndexed():e,d=u.attributes.position,f={};for(let e=0,t=d.count/3;en&&c.add(t)}c.normalize(),m.setXYZ(t+e,c.x,c.y,c.z)}}return u.setAttribute(`normal`,m),u}var rz=Object.defineProperty,iz=(e,t,n)=>t in e?rz(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,az=(e,t,n)=>(iz(e,t+``,n),n);async function oz(e){let t=await e.arrayBuffer(),n=btoa(String.fromCharCode(...new Uint8Array(t)));return`data:${e.type||``};base64,${n}`}let sz,cz,lz,uz;function dz(e,t=1/0,n=null){cz||=new Wt(2,2,1,1),lz||=new _t({uniforms:{blitTexture:new wt(e)},vertexShader:` + varying vec2 vUv; + void main(){ + vUv = uv; + gl_Position = vec4(position.xy * 1.0,0.,.999999); + } + `,fragmentShader:` + uniform sampler2D blitTexture; + varying vec2 vUv; + + void main(){ + gl_FragColor = vec4(vUv.xy, 0, 1); + + #ifdef IS_SRGB + gl_FragColor = LinearTosRGB( texture2D( blitTexture, vUv) ); + #else + gl_FragColor = texture2D( blitTexture, vUv); + #endif + } + `}),lz.uniforms.blitTexture.value=e,lz.defines.IS_SRGB=`colorSpace`in e?e.colorSpace===`srgb`:e.encoding===3001,lz.needsUpdate=!0,uz||(uz=new M(cz,lz),uz.frustrumCulled=!1);let r=new Ht,i=new j;i.add(uz),n||=sz=new xe({antialias:!1}),n.setSize(Math.min(e.image.width,t),Math.min(e.image.height,t)),n.clear(),n.render(i,r);let a=new Me(n.domElement);return a.minFilter=e.minFilter,a.magFilter=e.magFilter,a.wrapS=e.wrapS,a.wrapT=e.wrapT,a.name=e.name,sz&&(sz.dispose(),sz=null),a}const fz={POSITION:[`byte`,`byte normalized`,`unsigned byte`,`unsigned byte normalized`,`short`,`short normalized`,`unsigned short`,`unsigned short normalized`],NORMAL:[`byte normalized`,`short normalized`],TANGENT:[`byte normalized`,`short normalized`],TEXCOORD:[`byte`,`byte normalized`,`unsigned byte`,`short`,`short normalized`,`unsigned short`]};var pz=class{constructor(){this.pluginCallbacks=[],this.register(function(e){return new Pz(e)}),this.register(function(e){return new Fz(e)}),this.register(function(e){return new Rz(e)}),this.register(function(e){return new zz(e)}),this.register(function(e){return new Bz(e)}),this.register(function(e){return new Vz(e)}),this.register(function(e){return new Iz(e)}),this.register(function(e){return new Lz(e)}),this.register(function(e){return new Hz(e)}),this.register(function(e){return new Uz(e)}),this.register(function(e){return new Wz(e)})}register(e){return this.pluginCallbacks.indexOf(e)===-1&&this.pluginCallbacks.push(e),this}unregister(e){return this.pluginCallbacks.indexOf(e)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,r){let i=new Nz,a=[];for(let e=0,t=this.pluginCallbacks.length;ee.times[e.times.length-1]){if(Math.abs(e.times[e.times.length-1]-t)<.001)return e.times.length-1;r[r.length-1]=t,r.set(e.times,0),i.set(e.values,0),i.set(a.evaluate(t),e.values.length),o=r.length-1}else for(let s=0;st){r.set(e.times.slice(0,s+1),0),r[s+1]=t,r.set(e.times.slice(s+1),s+2),i.set(e.values.slice(0,(s+1)*n),0),i.set(a.evaluate(t),(s+1)*n),i.set(e.values.slice((s+1)*n),(s+2)*n),o=s+1;break}}return e.times=r,e.values=i,o},mergeMorphTargetTracks:function(e,t){let n=[],r={},i=e.tracks;for(let e=0;e4?n=e.array[i*e.itemSize+t]:(t===0?n=e.getX(i):t===1?n=e.getY(i):t===2?n=e.getZ(i):t===3&&(n=e.getW(i)),e.normalized===!0&&(n=Ie.normalize(n,e.array))),r.min[t]=Math.min(r.min[t],n),r.max[t]=Math.max(r.max[t],n)}return r}function kz(e){return Math.ceil(e/4)*4}function Az(e,t=0){let n=kz(e.byteLength);if(n!==e.byteLength){let r=new Uint8Array(n);if(r.set(new Uint8Array(e)),t!==0)for(let i=e.byteLength;i`u`&&typeof OffscreenCanvas<`u`?new OffscreenCanvas(1,1):document.createElement(`canvas`)}function Mz(e,t){if(e.toBlob!==void 0)return new Promise(n=>e.toBlob(n,t));let n;return t===`image/jpeg`?n=.92:t===`image/webp`&&(n=.8),e.convertToBlob({type:t,quality:n})}var Nz=class{constructor(){this.plugins=[],this.options={},this.pending=[],this.buffers=[],this.byteOffset=0,this.buffers=[],this.nodeMap=new Map,this.skins=[],this.extensionsUsed={},this.extensionsRequired={},this.uids=new Map,this.uid=0,this.json={asset:{version:`2.0`,generator:`THREE.GLTFExporter`}},this.cache={meshes:new Map,attributes:new Map,attributesNormalized:new Map,materials:new Map,textures:new Map,images:new Map}}setPlugins(e){this.plugins=e}async write(e,t,n={}){this.options=Object.assign({binary:!1,trs:!1,onlyVisible:!0,maxTextureSize:1/0,animations:[],includeCustomExtensions:!1},n),this.options.animations.length>0&&(this.options.trs=!0),this.processInput(e),await Promise.all(this.pending);let r=this,i=r.buffers,a=r.json;n=r.options;let o=r.extensionsUsed,s=r.extensionsRequired,c=new Blob(i,{type:`application/octet-stream`}),l=Object.keys(o),u=Object.keys(s);l.length>0&&(a.extensionsUsed=l),u.length>0&&(a.extensionsRequired=u),a.buffers&&a.buffers.length>0&&(a.buffers[0].byteLength=c.size),n.binary===!0?c.arrayBuffer().then(e=>{let n=Az(e),r=new DataView(new ArrayBuffer(Sz));r.setUint32(0,n.byteLength,!0),r.setUint32(4,wz,!0);let i=Az(Ez(JSON.stringify(a)),32),o=new DataView(new ArrayBuffer(Sz));o.setUint32(0,i.byteLength,!0),o.setUint32(4,Cz,!0);let s=new ArrayBuffer(yz),c=new DataView(s);c.setUint32(0,bz,!0),c.setUint32(4,xz,!0);let l=yz+o.byteLength+i.byteLength+r.byteLength+n.byteLength;c.setUint32(8,l,!0),new Blob([s,o,i,r,n],{type:`application/octet-stream`}).arrayBuffer().then(t)}):a.buffers&&a.buffers.length>0?oz(c).then(e=>{a.buffers[0].uri=e,t(a)}):t(a)}serializeUserData(e,t){if(Object.keys(e.userData).length===0)return;let n=this.options,r=this.extensionsUsed;try{let i=JSON.parse(JSON.stringify(e.userData));if(n.includeCustomExtensions&&i.gltfExtensions){for(let e in t.extensions===void 0&&(t.extensions={}),i.gltfExtensions)t.extensions[e]=i.gltfExtensions[e],r[e]=!0;delete i.gltfExtensions}Object.keys(i).length>0&&(t.extras=i)}catch(t){console.warn(`THREE.GLTFExporter: userData of '`+e.name+`' won't be serialized because of JSON.stringify error - `+t.message)}}getUID(e,t=!1){if(this.uids.has(e)===!1){let t=new Map;t.set(!0,this.uid++),t.set(!1,this.uid++),this.uids.set(e,t)}return this.uids.get(e).get(t)}isNormalizedNormalAttribute(e){if(this.cache.attributesNormalized.has(e))return!1;let t=new B;for(let n=0,r=e.count;n5e-4)return!1;return!0}createNormalizedNormalAttribute(e){let t=this.cache;if(t.attributesNormalized.has(e))return t.attributesNormalized.get(e);let n=e.clone(),r=new B;for(let e=0,t=n.count;e4?r=e.array[i*e.itemSize+n]:(n===0?r=e.getX(i):n===1?r=e.getY(i):n===2?r=e.getZ(i):n===3&&(r=e.getW(i)),e.normalized===!0&&(r=Ie.normalize(r,e.array))),t===mz.FLOAT?c.setFloat32(l,r,!0):t===mz.INT?c.setInt32(l,r,!0):t===mz.UNSIGNED_INT?c.setUint32(l,r,!0):t===mz.SHORT?c.setInt16(l,r,!0):t===mz.UNSIGNED_SHORT?c.setUint16(l,r,!0):t===mz.BYTE?c.setInt8(l,r):t===mz.UNSIGNED_BYTE&&c.setUint8(l,r),l+=o}let u={buffer:this.processBuffer(c.buffer),byteOffset:this.byteOffset,byteLength:s};return i!==void 0&&(u.target=i),i===mz.ARRAY_BUFFER&&(u.byteStride=e.itemSize*o),this.byteOffset+=s,a.bufferViews.push(u),{id:a.bufferViews.length-1,byteLength:0}}processBufferViewImage(e){let t=this,n=t.json;return n.bufferViews||=[],e.arrayBuffer().then(e=>{let r=Az(e),i={buffer:t.processBuffer(r),byteOffset:t.byteOffset,byteLength:r.byteLength};return t.byteOffset+=r.byteLength,n.bufferViews.push(i)-1})}processAccessor(e,t,n,r){let i=this.json,a={1:`SCALAR`,2:`VEC2`,3:`VEC3`,4:`VEC4`,9:`MAT3`,16:`MAT4`},o;if(e.array.constructor===Float32Array)o=mz.FLOAT;else if(e.array.constructor===Int32Array)o=mz.INT;else if(e.array.constructor===Uint32Array)o=mz.UNSIGNED_INT;else if(e.array.constructor===Int16Array)o=mz.SHORT;else if(e.array.constructor===Uint16Array)o=mz.UNSIGNED_SHORT;else if(e.array.constructor===Int8Array)o=mz.BYTE;else if(e.array.constructor===Uint8Array)o=mz.UNSIGNED_BYTE;else throw Error(`THREE.GLTFExporter: Unsupported bufferAttribute component type: `+e.array.constructor.name);if(n===void 0&&(n=0),r===void 0&&(r=e.count),r===0)return null;let s=Oz(e,n,r),c;t!==void 0&&(c=e===t.index?mz.ELEMENT_ARRAY_BUFFER:mz.ARRAY_BUFFER);let l=this.processBufferView(e,o,n,r,c),u={bufferView:l.id,byteOffset:l.byteOffset,componentType:o,count:r,max:s.max,min:s.min,type:a[e.itemSize]};return e.normalized===!0&&(u.normalized=!0),i.accessors||=[],i.accessors.push(u)-1}processImage(e,t,n,r=`image/png`){if(e!==null){let i=this,a=i.cache,o=i.json,s=i.options,c=i.pending;a.images.has(e)||a.images.set(e,{});let l=a.images.get(e),u=r+`:flipY/`+n.toString();if(l[u]!==void 0)return l[u];o.images||=[];let d={mimeType:r},f=jz();f.width=Math.min(e.width,s.maxTextureSize),f.height=Math.min(e.height,s.maxTextureSize);let p=f.getContext(`2d`);if(n===!0&&(p.translate(0,f.height),p.scale(1,-1)),e.data!==void 0){t!==Ct&&console.error(`GLTFExporter: Only RGBAFormat is supported.`,t),(e.width>s.maxTextureSize||e.height>s.maxTextureSize)&&console.warn(`GLTFExporter: Image size is bigger than maxTextureSize`,e);let n=new Uint8ClampedArray(e.height*e.width*4);for(let t=0;ti.processBufferViewImage(e)).then(e=>{d.bufferView=e})):f.toDataURL===void 0?c.push(Mz(f,r).then(oz).then(e=>{d.uri=e})):d.uri=f.toDataURL(r);let m=o.images.push(d)-1;return l[u]=m,m}else throw Error(`THREE.GLTFExporter: No valid image data found. Unable to process texture.`)}processSampler(e){let t=this.json;t.samplers||=[];let n={magFilter:gz[e.magFilter],minFilter:gz[e.minFilter],wrapS:gz[e.wrapS],wrapT:gz[e.wrapT]};return t.samplers.push(n)-1}processTexture(e){let t=this.options,n=this.cache,r=this.json;if(n.textures.has(e))return n.textures.get(e);r.textures||=[],e instanceof Dt&&(e=dz(e,t.maxTextureSize));let i=e.userData.mimeType;i===`image/webp`&&(i=`image/png`);let a={sampler:this.processSampler(e),source:this.processImage(e.image,e.format,e.flipY,i)};e.name&&(a.name=e.name),this._invokeAll(function(t){t.writeTexture&&t.writeTexture(e,a)});let o=r.textures.push(a)-1;return n.textures.set(e,o),o}processMaterial(e){let t=this.cache,n=this.json;if(t.materials.has(e))return t.materials.get(e);if(e.isShaderMaterial)return console.warn(`GLTFExporter: THREE.ShaderMaterial not supported.`),null;n.materials||=[];let r={pbrMetallicRoughness:{}};e.isMeshStandardMaterial!==!0&&e.isMeshBasicMaterial!==!0&&console.warn(`GLTFExporter: Use MeshStandardMaterial or MeshBasicMaterial for best results.`);let i=e.color.toArray().concat([e.opacity]);if(Tz(i,[1,1,1,1])||(r.pbrMetallicRoughness.baseColorFactor=i),e.isMeshStandardMaterial?(r.pbrMetallicRoughness.metallicFactor=e.metalness,r.pbrMetallicRoughness.roughnessFactor=e.roughness):(r.pbrMetallicRoughness.metallicFactor=.5,r.pbrMetallicRoughness.roughnessFactor=.5),e.metalnessMap||e.roughnessMap){let t=this.buildMetalRoughTexture(e.metalnessMap,e.roughnessMap),n={index:this.processTexture(t),channel:t.channel};this.applyTextureTransform(n,t),r.pbrMetallicRoughness.metallicRoughnessTexture=n}if(e.map){let t={index:this.processTexture(e.map),texCoord:e.map.channel};this.applyTextureTransform(t,e.map),r.pbrMetallicRoughness.baseColorTexture=t}if(e.emissive){let t=e.emissive;if(Math.max(t.r,t.g,t.b)>0&&(r.emissiveFactor=e.emissive.toArray()),e.emissiveMap){let t={index:this.processTexture(e.emissiveMap),texCoord:e.emissiveMap.channel};this.applyTextureTransform(t,e.emissiveMap),r.emissiveTexture=t}}if(e.normalMap){let t={index:this.processTexture(e.normalMap),texCoord:e.normalMap.channel};e.normalScale&&e.normalScale.x!==1&&(t.scale=e.normalScale.x),this.applyTextureTransform(t,e.normalMap),r.normalTexture=t}if(e.aoMap){let t={index:this.processTexture(e.aoMap),texCoord:e.aoMap.channel};e.aoMapIntensity!==1&&(t.strength=e.aoMapIntensity),this.applyTextureTransform(t,e.aoMap),r.occlusionTexture=t}e.transparent?r.alphaMode=`BLEND`:e.alphaTest>0&&(r.alphaMode=`MASK`,r.alphaCutoff=e.alphaTest),e.side===ge&&(r.doubleSided=!0),e.name!==``&&(r.name=e.name),this.serializeUserData(e,r),this._invokeAll(function(t){t.writeMaterial&&t.writeMaterial(e,r)});let a=n.materials.push(r)-1;return t.materials.set(e,a),a}processMesh(e){let t=this.cache,n=this.json,r=[e.geometry.uuid];if(Array.isArray(e.material))for(let t=0,n=e.material.length;t=152?{uv:`TEXCOORD_0`,uv1:`TEXCOORD_1`,uv2:`TEXCOORD_2`,uv3:`TEXCOORD_3`}:{uv:`TEXCOORD_0`,uv2:`TEXCOORD_1`},color:`COLOR_0`,skinWeight:`WEIGHTS_0`,skinIndex:`JOINTS_0`},f=a.getAttribute(`normal`);f!==void 0&&!this.isNormalizedNormalAttribute(f)&&(console.warn(`THREE.GLTFExporter: Creating normalized normal attribute from the non-normalized one.`),a.setAttribute(`normal`,this.createNormalizedNormalAttribute(f)));let p=null;for(let e in a.attributes){if(e.slice(0,5)===`morph`)continue;let n=a.attributes[e];if(e=d[e]||e.toUpperCase(),/^(POSITION|NORMAL|TANGENT|TEXCOORD_\d+|COLOR_\d+|JOINTS_\d+|WEIGHTS_\d+)$/.test(e)||(e=`_`+e),t.attributes.has(this.getUID(n))){c[e]=t.attributes.get(this.getUID(n));continue}p=null;let r=n.array;e===`JOINTS_0`&&!(r instanceof Uint16Array)&&!(r instanceof Uint8Array)&&(console.warn(`GLTFExporter: Attribute "skinIndex" converted to type UNSIGNED_SHORT.`),p=new Et(new Uint16Array(r),n.itemSize,n.normalized));let i=this.processAccessor(p||n,a);i!==null&&(e.startsWith(`_`)||this.detectMeshQuantization(e,n),c[e]=i,t.attributes.set(this.getUID(n),i))}if(f!==void 0&&a.setAttribute(`normal`,f),Object.keys(c).length===0)return null;if(e.morphTargetInfluences!==void 0&&e.morphTargetInfluences.length>0){let n=[],r=[],i={};if(e.morphTargetDictionary!==void 0)for(let t in e.morphTargetDictionary)i[e.morphTargetDictionary[t]]=t;for(let o=0;o0&&(s.extras={},s.extras.targetNames=r)}let m=Array.isArray(e.material);if(m&&a.groups.length===0)return null;let h=m?e.material:[e.material],g=m?a.groups:[{materialIndex:0,start:void 0,count:void 0}];for(let e=0,n=g.length;e0&&(n.targets=u),a.index!==null){let r=this.getUID(a.index);(g[e].start!==void 0||g[e].count!==void 0)&&(r+=`:`+g[e].start+`:`+g[e].count),t.attributes.has(r)?n.indices=t.attributes.get(r):(n.indices=this.processAccessor(a.index,a,g[e].start,g[e].count),t.attributes.set(r,n.indices)),n.indices===null&&delete n.indices}let r=this.processMaterial(h[g[e].materialIndex]);r!==null&&(n.material=r),l.push(n)}s.primitives=l,n.meshes||=[],this._invokeAll(function(t){t.writeMesh&&t.writeMesh(e,s)});let _=n.meshes.push(s)-1;return t.meshes.set(i,_),_}detectMeshQuantization(e,t){if(this.extensionsUsed[hz])return;let n;switch(t.array.constructor){case Int8Array:n=`byte`;break;case Uint8Array:n=`unsigned byte`;break;case Int16Array:n=`short`;break;case Uint16Array:n=`unsigned short`;break;default:return}t.normalized&&(n+=` normalized`);let r=e.split(`_`,1)[0];fz[r]&&fz[r].includes(n)&&(this.extensionsUsed[hz]=!0,this.extensionsRequired[hz]=!0)}processCamera(e){let t=this.json;t.cameras||=[];let n=e.isOrthographicCamera,r={type:n?`orthographic`:`perspective`};return n?r.orthographic={xmag:e.right*2,ymag:e.top*2,zfar:e.far<=0?.001:e.far,znear:e.near<0?0:e.near}:r.perspective={aspectRatio:e.aspect,yfov:Ie.degToRad(e.fov),zfar:e.far<=0?.001:e.far,znear:e.near<0?0:e.near},e.name!==``&&(r.name=e.type),t.cameras.push(r)-1}processAnimation(e,t){let n=this.json,r=this.nodeMap;n.animations||=[],e=pz.Utils.mergeMorphTargetTracks(e.clone(),t);let i=e.tracks,a=[],o=[];for(let e=0;e0){let t=[];for(let r=0,i=e.children.length;r0&&(i.children=t)}this._invokeAll(function(t){t.writeNode&&t.writeNode(e,i)});let a=t.nodes.push(i)-1;return r.set(e,a),a}processScene(e){let t=this.json,n=this.options;t.scenes||(t.scenes=[],t.scene=0);let r={};e.name!==``&&(r.name=e.name),t.scenes.push(r);let i=[];for(let t=0,r=e.children.length;t0&&(r.nodes=i),this.serializeUserData(e,r)}processObjects(e){let t=new j;t.name=`AuxScene`;for(let n=0;n0&&this.processObjects(n);for(let e=0;e0&&(a.range=e.distance)):e.isSpotLight&&(a.type=`spot`,e.distance>0&&(a.range=e.distance),a.spot={},a.spot.innerConeAngle=(e.penumbra-1)*e.angle*-1,a.spot.outerConeAngle=e.angle),e.decay!==void 0&&e.decay!==2&&console.warn(`THREE.GLTFExporter: Light decay may be lost. glTF is physically-based, and expects light.decay=2.`),e.target&&(e.target.parent!==e||e.target.position.x!==0||e.target.position.y!==0||e.target.position.z!==-1)&&console.warn(`THREE.GLTFExporter: Light direction may be lost. For best results, make light.target a child of the light with position 0,0,-1.`),i[this.name]||(r.extensions=r.extensions||{},r.extensions[this.name]={lights:[]},i[this.name]=!0);let o=r.extensions[this.name].lights;o.push(a),t.extensions=t.extensions||{},t.extensions[this.name]={light:o.length-1}}};let Fz=class{constructor(e){this.writer=e,this.name=`KHR_materials_unlit`}writeMaterial(e,t){if(!e.isMeshBasicMaterial)return;let n=this.writer.extensionsUsed;t.extensions=t.extensions||{},t.extensions[this.name]={},n[this.name]=!0,t.pbrMetallicRoughness.metallicFactor=0,t.pbrMetallicRoughness.roughnessFactor=.9}},Iz=class{constructor(e){this.writer=e,this.name=`KHR_materials_clearcoat`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.clearcoat===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.clearcoatFactor=e.clearcoat,e.clearcoatMap){let t={index:n.processTexture(e.clearcoatMap),texCoord:e.clearcoatMap.channel};n.applyTextureTransform(t,e.clearcoatMap),i.clearcoatTexture=t}if(i.clearcoatRoughnessFactor=e.clearcoatRoughness,e.clearcoatRoughnessMap){let t={index:n.processTexture(e.clearcoatRoughnessMap),texCoord:e.clearcoatRoughnessMap.channel};n.applyTextureTransform(t,e.clearcoatRoughnessMap),i.clearcoatRoughnessTexture=t}if(e.clearcoatNormalMap){let t={index:n.processTexture(e.clearcoatNormalMap),texCoord:e.clearcoatNormalMap.channel};n.applyTextureTransform(t,e.clearcoatNormalMap),i.clearcoatNormalTexture=t}t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},Lz=class{constructor(e){this.writer=e,this.name=`KHR_materials_iridescence`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.iridescence===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.iridescenceFactor=e.iridescence,e.iridescenceMap){let t={index:n.processTexture(e.iridescenceMap),texCoord:e.iridescenceMap.channel};n.applyTextureTransform(t,e.iridescenceMap),i.iridescenceTexture=t}if(i.iridescenceIor=e.iridescenceIOR,i.iridescenceThicknessMinimum=e.iridescenceThicknessRange[0],i.iridescenceThicknessMaximum=e.iridescenceThicknessRange[1],e.iridescenceThicknessMap){let t={index:n.processTexture(e.iridescenceThicknessMap),texCoord:e.iridescenceThicknessMap.channel};n.applyTextureTransform(t,e.iridescenceThicknessMap),i.iridescenceThicknessTexture=t}t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},Rz=class{constructor(e){this.writer=e,this.name=`KHR_materials_transmission`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.transmission===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.transmissionFactor=e.transmission,e.transmissionMap){let t={index:n.processTexture(e.transmissionMap),texCoord:e.transmissionMap.channel};n.applyTextureTransform(t,e.transmissionMap),i.transmissionTexture=t}t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},zz=class{constructor(e){this.writer=e,this.name=`KHR_materials_volume`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.transmission===0)return;let n=this.writer,r=n.extensionsUsed,i={};if(i.thicknessFactor=e.thickness,e.thicknessMap){let t={index:n.processTexture(e.thicknessMap),texCoord:e.thicknessMap.channel};n.applyTextureTransform(t,e.thicknessMap),i.thicknessTexture=t}i.attenuationDistance=e.attenuationDistance,i.attenuationColor=e.attenuationColor.toArray(),t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},Bz=class{constructor(e){this.writer=e,this.name=`KHR_materials_ior`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.ior===1.5)return;let n=this.writer.extensionsUsed,r={};r.ior=e.ior,t.extensions=t.extensions||{},t.extensions[this.name]=r,n[this.name]=!0}},Vz=class{constructor(e){this.writer=e,this.name=`KHR_materials_specular`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.specularIntensity===1&&e.specularColor.equals(vz)&&!e.specularIntensityMap&&!e.specularColorTexture)return;let n=this.writer,r=n.extensionsUsed,i={};if(e.specularIntensityMap){let t={index:n.processTexture(e.specularIntensityMap),texCoord:e.specularIntensityMap.channel};n.applyTextureTransform(t,e.specularIntensityMap),i.specularTexture=t}if(e.specularColorMap){let t={index:n.processTexture(e.specularColorMap),texCoord:e.specularColorMap.channel};n.applyTextureTransform(t,e.specularColorMap),i.specularColorTexture=t}i.specularFactor=e.specularIntensity,i.specularColorFactor=e.specularColor.toArray(),t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},Hz=class{constructor(e){this.writer=e,this.name=`KHR_materials_sheen`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.sheen==0)return;let n=this.writer,r=n.extensionsUsed,i={};if(e.sheenRoughnessMap){let t={index:n.processTexture(e.sheenRoughnessMap),texCoord:e.sheenRoughnessMap.channel};n.applyTextureTransform(t,e.sheenRoughnessMap),i.sheenRoughnessTexture=t}if(e.sheenColorMap){let t={index:n.processTexture(e.sheenColorMap),texCoord:e.sheenColorMap.channel};n.applyTextureTransform(t,e.sheenColorMap),i.sheenColorTexture=t}i.sheenRoughnessFactor=e.sheenRoughness,i.sheenColorFactor=e.sheenColor.toArray(),t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},Uz=class{constructor(e){this.writer=e,this.name=`KHR_materials_anisotropy`}writeMaterial(e,t){if(!e.isMeshPhysicalMaterial||e.anisotropy==0)return;let n=this.writer,r=n.extensionsUsed,i={};if(e.anisotropyMap){let t={index:n.processTexture(e.anisotropyMap)};n.applyTextureTransform(t,e.anisotropyMap),i.anisotropyTexture=t}i.anisotropyStrength=e.anisotropy,i.anisotropyRotation=e.anisotropyRotation,t.extensions=t.extensions||{},t.extensions[this.name]=i,r[this.name]=!0}},Wz=class{constructor(e){this.writer=e,this.name=`KHR_materials_emissive_strength`}writeMaterial(e,t){if(!e.isMeshStandardMaterial||e.emissiveIntensity===1)return;let n=this.writer.extensionsUsed,r={};r.emissiveStrength=e.emissiveIntensity,t.extensions=t.extensions||{},t.extensions[this.name]=r,n[this.name]=!0}};var Gz=Uint8Array,Kz=Uint16Array,qz=Uint32Array,Jz=new Gz([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Yz=new Gz([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),Xz=new Gz([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Zz=function(e,t){for(var n=new Kz(31),r=0;r<31;++r)n[r]=t+=1<>>1|(iB&21845)<<1;aB=(aB&52428)>>>2|(aB&13107)<<2,aB=(aB&61680)>>>4|(aB&3855)<<4,rB[iB]=((aB&65280)>>>8|(aB&255)<<8)>>>1}for(var oB=function(e,t,n){for(var r=e.length,i=0,a=new Kz(t);i>>c]=l}else for(s=new Kz(r),i=0;i>>15-e[i]);return s},sB=new Gz(288),iB=0;iB<144;++iB)sB[iB]=8;for(var iB=144;iB<256;++iB)sB[iB]=9;for(var iB=256;iB<280;++iB)sB[iB]=7;for(var iB=280;iB<288;++iB)sB[iB]=8;for(var cB=new Gz(32),iB=0;iB<32;++iB)cB[iB]=5;var lB=oB(sB,9,1),uB=oB(cB,5,1),dB=function(e){for(var t=e[0],n=1;nt&&(t=e[n]);return t},fB=function(e,t,n){var r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n},pB=function(e,t){var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)},mB=function(e){return(e/8|0)+(e&7&&1)},hB=function(e,t,n){(n==null||n>e.length)&&(n=e.length);var r=new(e instanceof Kz?Kz:e instanceof qz?qz:Gz)(n-t);return r.set(e.subarray(t,n)),r},gB=function(e,t,n){var r=e.length;if(!r||n&&!n.l&&r<5)return t||new Gz(0);var i=!t||n,a=!n||n.i;n||={},t||=new Gz(r*3);var o=function(e){var n=t.length;if(e>n){var r=new Gz(Math.max(n*2,e));r.set(t),t=r}},s=n.f||0,c=n.p||0,l=n.b||0,u=n.l,d=n.d,f=n.m,p=n.n,m=r*8;do{if(!u){n.f=s=fB(e,c,1);var h=fB(e,c+1,3);if(c+=3,h)if(h==1)u=lB,d=uB,f=9,p=5;else if(h==2){var g=fB(e,c,31)+257,_=fB(e,c+10,15)+4,v=g+fB(e,c+5,31)+1;c+=14;for(var y=new Gz(v),b=new Gz(19),x=0;x<_;++x)b[Xz[x]]=fB(e,c+x*3,7);c+=_*3;for(var S=dB(b),C=(1<>>4;if(E<16)y[x++]=E;else{var D=0,O=0;for(E==16?(O=3+fB(e,c,3),c+=2,D=y[x-1]):E==17?(O=3+fB(e,c,7),c+=3):E==18&&(O=11+fB(e,c,127),c+=7);O--;)y[x++]=D}}var k=y.subarray(0,g),A=y.subarray(g);f=dB(k),p=dB(A),u=oB(k,f,1),d=oB(A,p,1)}else throw`invalid block type`;else{var E=mB(c)+4,j=e[E-4]|e[E-3]<<8,M=E+j;if(M>r){if(a)throw`unexpected EOF`;break}i&&o(l+j),t.set(e.subarray(E,M),l),n.b=l+=j,n.p=c=M*8;continue}if(c>m){if(a)throw`unexpected EOF`;break}}i&&o(l+131072);for(var N=(1<>>4;if(c+=D&15,c>m){if(a)throw`unexpected EOF`;break}if(!D)throw`invalid length/literal`;if(F<256)t[l++]=F;else if(F==256){P=c,u=null;break}else{var I=F-254;if(F>264){var x=F-257,te=Jz[x];I=fB(e,c,(1<>>4;if(!L)throw`invalid distance`;c+=L&15;var A=nB[R];if(R>3){var te=Yz[R];A+=pB(e,c)&(1<m){if(a)throw`unexpected EOF`;break}i&&o(l+131072);for(var ne=l+I;l>>4>7||(e[0]<<8|e[1])%31)throw`invalid zlib data`;if(e[1]&32)throw`invalid zlib data: preset dictionaries not supported`},yB=typeof TextDecoder<`u`&&new TextDecoder,bB=0;try{yB.decode(_B,{stream:!0}),bB=1}catch{}var xB=Object.defineProperty,SB=(e,t,n)=>t in e?xB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,CB=(e,t,n)=>(SB(e,t+``,n),n);const wB=class extends M{constructor(e,t={}){super(e),this.isReflector=!0,this.type=`Reflector`,this.camera=new Ht;let n=this,r=t.color===void 0?new Ft(8355711):new Ft(t.color),i=t.textureWidth||512,a=t.textureHeight||512,o=t.clipBias||0,s=t.shader||wB.ReflectorShader,c=t.multisample===void 0?4:t.multisample,l=new ft,u=new B,d=new B,f=new B,p=new se,m=new B(0,0,-1),h=new Ae,g=new B,_=new B,v=new Ae,y=new se,b=this.camera,x=new St(i,a,{samples:c,type:ae}),S=new _t({uniforms:it.clone(s.uniforms),fragmentShader:s.fragmentShader,vertexShader:s.vertexShader});S.uniforms.tDiffuse.value=x.texture,S.uniforms.color.value=r,S.uniforms.textureMatrix.value=y,this.material=S,this.onBeforeRender=function(e,t,r){if(d.setFromMatrixPosition(n.matrixWorld),f.setFromMatrixPosition(r.matrixWorld),p.extractRotation(n.matrixWorld),u.set(0,0,1),u.applyMatrix4(p),g.subVectors(d,f),g.dot(u)>0)return;g.reflect(u).negate(),g.add(d),p.extractRotation(r.matrixWorld),m.set(0,0,-1),m.applyMatrix4(p),m.add(f),_.subVectors(d,m),_.reflect(u).negate(),_.add(d),b.position.copy(g),b.up.set(0,1,0),b.up.applyMatrix4(p),b.up.reflect(u),b.lookAt(_),b.far=r.far,b.updateMatrixWorld(),b.projectionMatrix.copy(r.projectionMatrix),y.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),y.multiply(b.projectionMatrix),y.multiply(b.matrixWorldInverse),y.multiply(n.matrixWorld),l.setFromNormalAndCoplanarPoint(u,d),l.applyMatrix4(b.matrixWorldInverse),h.set(l.normal.x,l.normal.y,l.normal.z,l.constant);let i=b.projectionMatrix;v.x=(Math.sign(h.x)+i.elements[8])/i.elements[0],v.y=(Math.sign(h.y)+i.elements[9])/i.elements[5],v.z=-1,v.w=(1+i.elements[10])/i.elements[14],h.multiplyScalar(2/h.dot(v)),i.elements[2]=h.x,i.elements[6]=h.y,i.elements[10]=h.z+1-o,i.elements[14]=h.w,n.visible=!1;let a=e.getRenderTarget(),s=e.xr.enabled,c=e.shadowMap.autoUpdate,S=e.toneMapping,C=!1;C=`outputColorSpace`in e?e.outputColorSpace===`srgb`:e.outputEncoding===3001,e.xr.enabled=!1,e.shadowMap.autoUpdate=!1,`outputColorSpace`in e?e.outputColorSpace=`srgb-linear`:e.outputEncoding=3e3,e.toneMapping=ct,e.setRenderTarget(x),e.state.buffers.depth.setMask(!0),e.autoClear===!1&&e.clear(),e.render(t,b),e.xr.enabled=s,e.shadowMap.autoUpdate=c,e.toneMapping=S,`outputColorSpace`in e?e.outputColorSpace=C?`srgb`:`srgb-linear`:e.outputEncoding=C?3001:3e3,e.setRenderTarget(a);let w=r.viewport;w!==void 0&&e.state.viewport(w),n.visible=!0},this.getRenderTarget=function(){return x},this.dispose=function(){x.dispose(),n.material.dispose()}}};let TB=wB;CB(TB,`ReflectorShader`,{uniforms:{color:{value:null},tDiffuse:{value:null},textureMatrix:{value:null}},vertexShader:` + uniform mat4 textureMatrix; + varying vec4 vUv; + + #include + #include + + void main() { + + vUv = textureMatrix * vec4( position, 1.0 ); + + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + + #include + + }`,fragmentShader:` + uniform vec3 color; + uniform sampler2D tDiffuse; + varying vec4 vUv; + + #include + + float blendOverlay( float base, float blend ) { + + return( base < 0.5 ? ( 2.0 * base * blend ) : ( 1.0 - 2.0 * ( 1.0 - base ) * ( 1.0 - blend ) ) ); + + } + + vec3 blendOverlay( vec3 base, vec3 blend ) { + + return vec3( blendOverlay( base.r, blend.r ), blendOverlay( base.g, blend.g ), blendOverlay( base.b, blend.b ) ); + + } + + void main() { + + #include + + vec4 base = texture2DProj( tDiffuse, vUv ); + gl_FragColor = vec4( blendOverlay( base.rgb, color ), 1.0 ); + + #include + #include <${ez>=154?`colorspace_fragment`:`encodings_fragment`}> + + }`});var EB=Object.defineProperty,DB=(e,t,n)=>t in e?EB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,OB=(e,t,n)=>(DB(e,typeof t==`symbol`?t:t+``,n),n);const kB=new Fe,AB=new Float32Array([-1,-1,0,0,0,1,-1,0,1,0,1,1,0,1,1,-1,1,0,0,1]),jB=new fe(AB,5);kB.setIndex([0,1,2,0,2,3]),kB.setAttribute(`position`,new ee(jB,3,0,!1)),kB.setAttribute(`uv`,new ee(jB,2,3,!1));const MB=class extends M{constructor(){super(MB.Geometry,new I({opacity:0,transparent:!0})),this.isLensflare=!0,this.type=`Lensflare`,this.frustumCulled=!1,this.renderOrder=1/0;let e=new B,t=new B,n=new N(new Uint8Array(16*16*3),16,16,Ct);n.minFilter=At,n.magFilter=At,n.wrapS=Ze,n.wrapT=Ze;let r=new N(new Uint8Array(16*16*3),16,16,Ct);r.minFilter=At,r.magFilter=At,r.wrapS=Ze,r.wrapT=Ze;let i=MB.Geometry,a=new Ce({uniforms:{scale:{value:null},screenPosition:{value:null}},vertexShader:` + + precision highp float; + + uniform vec3 screenPosition; + uniform vec2 scale; + + attribute vec3 position; + + void main() { + + gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); + + }`,fragmentShader:` + + precision highp float; + + void main() { + + gl_FragColor = vec4( 1.0, 0.0, 1.0, 1.0 ); + + }`,depthTest:!0,depthWrite:!1,transparent:!1}),o=new Ce({uniforms:{map:{value:n},scale:{value:null},screenPosition:{value:null}},vertexShader:` + + precision highp float; + + uniform vec3 screenPosition; + uniform vec2 scale; + + attribute vec3 position; + attribute vec2 uv; + + varying vec2 vUV; + + void main() { + + vUV = uv; + + gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); + + }`,fragmentShader:` + + precision highp float; + + uniform sampler2D map; + + varying vec2 vUV; + + void main() { + + gl_FragColor = texture2D( map, vUV ); + + }`,depthTest:!1,depthWrite:!1,transparent:!1}),s=new M(i,a),c=[],l=PB.Shader,u=new Ce({uniforms:{map:{value:null},occlusionMap:{value:r},color:{value:new Ft(16777215)},scale:{value:new He},screenPosition:{value:new B}},vertexShader:l.vertexShader,fragmentShader:l.fragmentShader,blending:Je,transparent:!0,depthWrite:!1}),d=new M(i,u);this.addElement=function(e){c.push(e)};let f=new He,p=new He,m=new lt,h=new Ae;this.onBeforeRender=function(l,g,_){l.getCurrentViewport(h);let v=h.w/h.z,y=h.z/2,b=h.w/2,x=16/h.w;if(f.set(x*v,x),m.min.set(h.x,h.y),m.max.set(h.x+(h.z-16),h.y+(h.w-16)),t.setFromMatrixPosition(this.matrixWorld),t.applyMatrix4(_.matrixWorldInverse),!(t.z>0)&&(e.copy(t).applyMatrix4(_.projectionMatrix),p.x=h.x+e.x*y+y-8,p.y=h.y+e.y*b+b-8,m.containsPoint(p))){l.copyFramebufferToTexture(p,n);let t=a.uniforms;t.scale.value=f,t.screenPosition.value=e,l.renderBufferDirect(_,null,i,a,s,null),l.copyFramebufferToTexture(p,r),t=o.uniforms,t.scale.value=f,t.screenPosition.value=e,l.renderBufferDirect(_,null,i,o,s,null);let m=-e.x*2,g=-e.y*2;for(let t=0,n=c.length;t + #include + #include + #include + + void main() { + mirrorCoord = modelMatrix * vec4( position, 1.0 ); + worldPosition = mirrorCoord.xyzw; + mirrorCoord = textureMatrix * mirrorCoord; + vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 ); + gl_Position = projectionMatrix * mvPosition; + + #include + #include + #include + #include + #include + }`,fragmentShader:` + uniform sampler2D mirrorSampler; + uniform float alpha; + uniform float time; + uniform float size; + uniform float distortionScale; + uniform sampler2D normalSampler; + uniform vec3 sunColor; + uniform vec3 sunDirection; + uniform vec3 eye; + uniform vec3 waterColor; + + varying vec4 mirrorCoord; + varying vec4 worldPosition; + + vec4 getNoise( vec2 uv ) { + vec2 uv0 = ( uv / 103.0 ) + vec2(time / 17.0, time / 29.0); + vec2 uv1 = uv / 107.0-vec2( time / -19.0, time / 31.0 ); + vec2 uv2 = uv / vec2( 8907.0, 9803.0 ) + vec2( time / 101.0, time / 97.0 ); + vec2 uv3 = uv / vec2( 1091.0, 1027.0 ) - vec2( time / 109.0, time / -113.0 ); + vec4 noise = texture2D( normalSampler, uv0 ) + + texture2D( normalSampler, uv1 ) + + texture2D( normalSampler, uv2 ) + + texture2D( normalSampler, uv3 ); + return noise * 0.5 - 1.0; + } + + void sunLight( const vec3 surfaceNormal, const vec3 eyeDirection, float shiny, float spec, float diffuse, inout vec3 diffuseColor, inout vec3 specularColor ) { + vec3 reflection = normalize( reflect( -sunDirection, surfaceNormal ) ); + float direction = max( 0.0, dot( eyeDirection, reflection ) ); + specularColor += pow( direction, shiny ) * sunColor * spec; + diffuseColor += max( dot( sunDirection, surfaceNormal ), 0.0 ) * sunColor * diffuse; + } + + #include + #include + #include + #include + #include + #include + #include + #include + + void main() { + + #include + vec4 noise = getNoise( worldPosition.xz * size ); + vec3 surfaceNormal = normalize( noise.xzy * vec3( 1.5, 1.0, 1.5 ) ); + + vec3 diffuseLight = vec3(0.0); + vec3 specularLight = vec3(0.0); + + vec3 worldToEye = eye-worldPosition.xyz; + vec3 eyeDirection = normalize( worldToEye ); + sunLight( surfaceNormal, eyeDirection, 100.0, 2.0, 0.5, diffuseLight, specularLight ); + + float distance = length(worldToEye); + + vec2 distortion = surfaceNormal.xz * ( 0.001 + 1.0 / distance ) * distortionScale; + vec3 reflectionSample = vec3( texture2D( mirrorSampler, mirrorCoord.xy / mirrorCoord.w + distortion ) ); + + float theta = max( dot( eyeDirection, surfaceNormal ), 0.0 ); + float rf0 = 0.3; + float reflectance = rf0 + ( 1.0 - rf0 ) * pow( ( 1.0 - theta ), 5.0 ); + vec3 scatter = max( 0.0, dot( surfaceNormal, eyeDirection ) ) * waterColor; + vec3 albedo = mix( ( sunColor * diffuseLight * 0.3 + scatter ) * getShadowMask(), ( vec3( 0.1 ) + reflectionSample * 0.9 + reflectionSample * specularLight ), reflectance); + vec3 outgoingLight = albedo; + gl_FragColor = vec4( outgoingLight, alpha ); + + #include + #include <${parseInt(nt.replace(/\D+/g,``))>=154?`colorspace_fragment`:`encodings_fragment`}> + #include + }`},A=new _t({fragmentShader:k.fragmentShader,vertexShader:k.vertexShader,uniforms:it.clone(k.uniforms),lights:!0,side:m,fog:h});A.uniforms.mirrorSampler.value=O.texture,A.uniforms.textureMatrix.value=E,A.uniforms.alpha.value=o,A.uniforms.time.value=s,A.uniforms.normalSampler.value=c,A.uniforms.sunColor.value=u,A.uniforms.waterColor.value=d,A.uniforms.sunDirection.value=l,A.uniforms.distortionScale.value=p,A.uniforms.eye.value=f,n.material=A,n.onBeforeRender=function(e,t,r){if(v.setFromMatrixPosition(n.matrixWorld),y.setFromMatrixPosition(r.matrixWorld),b.extractRotation(n.matrixWorld),_.set(0,0,1),_.applyMatrix4(b),C.subVectors(v,y),C.dot(_)>0)return;C.reflect(_).negate(),C.add(v),b.extractRotation(r.matrixWorld),x.set(0,0,-1),x.applyMatrix4(b),x.add(y),w.subVectors(v,x),w.reflect(_).negate(),w.add(v),D.position.copy(C),D.up.set(0,1,0),D.up.applyMatrix4(b),D.up.reflect(_),D.lookAt(w),D.far=r.far,D.updateMatrixWorld(),D.projectionMatrix.copy(r.projectionMatrix),E.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),E.multiply(D.projectionMatrix),E.multiply(D.matrixWorldInverse),g.setFromNormalAndCoplanarPoint(_,v),g.applyMatrix4(D.matrixWorldInverse),S.set(g.normal.x,g.normal.y,g.normal.z,g.constant);let i=D.projectionMatrix;T.x=(Math.sign(S.x)+i.elements[8])/i.elements[0],T.y=(Math.sign(S.y)+i.elements[9])/i.elements[5],T.z=-1,T.w=(1+i.elements[10])/i.elements[14],S.multiplyScalar(2/S.dot(T)),i.elements[2]=S.x,i.elements[6]=S.y,i.elements[10]=S.z+1-a,i.elements[14]=S.w,f.setFromMatrixPosition(r.matrixWorld);let o=e.getRenderTarget(),s=e.xr.enabled,c=e.shadowMap.autoUpdate;n.visible=!1,e.xr.enabled=!1,e.shadowMap.autoUpdate=!1,e.setRenderTarget(O),e.state.buffers.depth.setMask(!0),e.autoClear===!1&&e.clear(),e.render(t,D),n.visible=!0,e.xr.enabled=s,e.shadowMap.autoUpdate=c,e.setRenderTarget(o);let l=r.viewport;l!==void 0&&e.state.viewport(l)}}},IB=Object.defineProperty,LB=(e,t,n)=>t in e?IB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,RB=(e,t,n)=>(LB(e,typeof t==`symbol`?t:t+``,n),n);const zB={uniforms:{turbidity:{value:2},rayleigh:{value:1},mieCoefficient:{value:.005},mieDirectionalG:{value:.8},sunPosition:{value:new B},up:{value:new B(0,1,0)}},vertexShader:` + uniform vec3 sunPosition; + uniform float rayleigh; + uniform float turbidity; + uniform float mieCoefficient; + uniform vec3 up; + + varying vec3 vWorldPosition; + varying vec3 vSunDirection; + varying float vSunfade; + varying vec3 vBetaR; + varying vec3 vBetaM; + varying float vSunE; + + // constants for atmospheric scattering + const float e = 2.71828182845904523536028747135266249775724709369995957; + const float pi = 3.141592653589793238462643383279502884197169; + + // wavelength of used primaries, according to preetham + const vec3 lambda = vec3( 680E-9, 550E-9, 450E-9 ); + // this pre-calcuation replaces older TotalRayleigh(vec3 lambda) function: + // (8.0 * pow(pi, 3.0) * pow(pow(n, 2.0) - 1.0, 2.0) * (6.0 + 3.0 * pn)) / (3.0 * N * pow(lambda, vec3(4.0)) * (6.0 - 7.0 * pn)) + const vec3 totalRayleigh = vec3( 5.804542996261093E-6, 1.3562911419845635E-5, 3.0265902468824876E-5 ); + + // mie stuff + // K coefficient for the primaries + const float v = 4.0; + const vec3 K = vec3( 0.686, 0.678, 0.666 ); + // MieConst = pi * pow( ( 2.0 * pi ) / lambda, vec3( v - 2.0 ) ) * K + const vec3 MieConst = vec3( 1.8399918514433978E14, 2.7798023919660528E14, 4.0790479543861094E14 ); + + // earth shadow hack + // cutoffAngle = pi / 1.95; + const float cutoffAngle = 1.6110731556870734; + const float steepness = 1.5; + const float EE = 1000.0; + + float sunIntensity( float zenithAngleCos ) { + zenithAngleCos = clamp( zenithAngleCos, -1.0, 1.0 ); + return EE * max( 0.0, 1.0 - pow( e, -( ( cutoffAngle - acos( zenithAngleCos ) ) / steepness ) ) ); + } + + vec3 totalMie( float T ) { + float c = ( 0.2 * T ) * 10E-18; + return 0.434 * c * MieConst; + } + + void main() { + + vec4 worldPosition = modelMatrix * vec4( position, 1.0 ); + vWorldPosition = worldPosition.xyz; + + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + gl_Position.z = gl_Position.w; // set z to camera.far + + vSunDirection = normalize( sunPosition ); + + vSunE = sunIntensity( dot( vSunDirection, up ) ); + + vSunfade = 1.0 - clamp( 1.0 - exp( ( sunPosition.y / 450000.0 ) ), 0.0, 1.0 ); + + float rayleighCoefficient = rayleigh - ( 1.0 * ( 1.0 - vSunfade ) ); + + // extinction (absorbtion + out scattering) + // rayleigh coefficients + vBetaR = totalRayleigh * rayleighCoefficient; + + // mie coefficients + vBetaM = totalMie( turbidity ) * mieCoefficient; + + } + `,fragmentShader:` + varying vec3 vWorldPosition; + varying vec3 vSunDirection; + varying float vSunfade; + varying vec3 vBetaR; + varying vec3 vBetaM; + varying float vSunE; + + uniform float mieDirectionalG; + uniform vec3 up; + + const vec3 cameraPos = vec3( 0.0, 0.0, 0.0 ); + + // constants for atmospheric scattering + const float pi = 3.141592653589793238462643383279502884197169; + + const float n = 1.0003; // refractive index of air + const float N = 2.545E25; // number of molecules per unit volume for air at 288.15K and 1013mb (sea level -45 celsius) + + // optical length at zenith for molecules + const float rayleighZenithLength = 8.4E3; + const float mieZenithLength = 1.25E3; + // 66 arc seconds -> degrees, and the cosine of that + const float sunAngularDiameterCos = 0.999956676946448443553574619906976478926848692873900859324; + + // 3.0 / ( 16.0 * pi ) + const float THREE_OVER_SIXTEENPI = 0.05968310365946075; + // 1.0 / ( 4.0 * pi ) + const float ONE_OVER_FOURPI = 0.07957747154594767; + + float rayleighPhase( float cosTheta ) { + return THREE_OVER_SIXTEENPI * ( 1.0 + pow( cosTheta, 2.0 ) ); + } + + float hgPhase( float cosTheta, float g ) { + float g2 = pow( g, 2.0 ); + float inverse = 1.0 / pow( 1.0 - 2.0 * g * cosTheta + g2, 1.5 ); + return ONE_OVER_FOURPI * ( ( 1.0 - g2 ) * inverse ); + } + + void main() { + + vec3 direction = normalize( vWorldPosition - cameraPos ); + + // optical length + // cutoff angle at 90 to avoid singularity in next formula. + float zenithAngle = acos( max( 0.0, dot( up, direction ) ) ); + float inverse = 1.0 / ( cos( zenithAngle ) + 0.15 * pow( 93.885 - ( ( zenithAngle * 180.0 ) / pi ), -1.253 ) ); + float sR = rayleighZenithLength * inverse; + float sM = mieZenithLength * inverse; + + // combined extinction factor + vec3 Fex = exp( -( vBetaR * sR + vBetaM * sM ) ); + + // in scattering + float cosTheta = dot( direction, vSunDirection ); + + float rPhase = rayleighPhase( cosTheta * 0.5 + 0.5 ); + vec3 betaRTheta = vBetaR * rPhase; + + float mPhase = hgPhase( cosTheta, mieDirectionalG ); + vec3 betaMTheta = vBetaM * mPhase; + + vec3 Lin = pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * ( 1.0 - Fex ), vec3( 1.5 ) ); + Lin *= mix( vec3( 1.0 ), pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * Fex, vec3( 1.0 / 2.0 ) ), clamp( pow( 1.0 - dot( up, vSunDirection ), 5.0 ), 0.0, 1.0 ) ); + + // nightsky + float theta = acos( direction.y ); // elevation --> y-axis, [-pi/2, pi/2] + float phi = atan( direction.z, direction.x ); // azimuth --> x-axis [-pi/2, pi/2] + vec2 uv = vec2( phi, theta ) / vec2( 2.0 * pi, pi ) + vec2( 0.5, 0.0 ); + vec3 L0 = vec3( 0.1 ) * Fex; + + // composition + solar disc + float sundisk = smoothstep( sunAngularDiameterCos, sunAngularDiameterCos + 0.00002, cosTheta ); + L0 += ( vSunE * 19000.0 * Fex ) * sundisk; + + vec3 texColor = ( Lin + L0 ) * 0.04 + vec3( 0.0, 0.0003, 0.00075 ); + + vec3 retColor = pow( texColor, vec3( 1.0 / ( 1.2 + ( 1.2 * vSunfade ) ) ) ); + + gl_FragColor = vec4( retColor, 1.0 ); + + #include + #include <${ez>=154?`colorspace_fragment`:`encodings_fragment`}> + + } + `},BB=new _t({name:`SkyShader`,fragmentShader:zB.fragmentShader,vertexShader:zB.vertexShader,uniforms:it.clone(zB.uniforms),side:le,depthWrite:!1});var VB=class extends M{constructor(){super(new F(1,1,1),BB)}};RB(VB,`SkyShader`,zB),RB(VB,`material`,BB);const HB=new mt,UB=new B;var WB=class{constructor(e){let t=e.geometry;t.index&&(console.warn(`THREE.MeshSurfaceSampler: Converting geometry to non-indexed BufferGeometry.`),t=t.toNonIndexed()),this.geometry=t,this.randomFunction=Math.random,this.positionAttribute=this.geometry.getAttribute(`position`),this.colorAttribute=this.geometry.getAttribute(`color`),this.weightAttribute=null,this.distribution=null}setWeightAttribute(e){return this.weightAttribute=e?this.geometry.getAttribute(e):null,this}build(){let e=this.positionAttribute,t=this.weightAttribute,n=new Float32Array(e.count/3);for(let r=0;re){i=a;break}else e1&&(i=1-i,a=1-a),HB.a.fromBufferAttribute(this.positionAttribute,e*3),HB.b.fromBufferAttribute(this.positionAttribute,e*3+1),HB.c.fromBufferAttribute(this.positionAttribute,e*3+2),t.set(0,0,0).addScaledVector(HB.a,i).addScaledVector(HB.b,a).addScaledVector(HB.c,1-(i+a)),n!==void 0&&HB.getNormal(n),r!==void 0&&this.colorAttribute!==void 0&&(HB.a.fromBufferAttribute(this.colorAttribute,e*3),HB.b.fromBufferAttribute(this.colorAttribute,e*3+1),HB.c.fromBufferAttribute(this.colorAttribute,e*3+2),UB.set(0,0,0).addScaledVector(HB.a,i).addScaledVector(HB.b,a).addScaledVector(HB.c,1-(i+a)),r.r=UB.x,r.g=UB.y,r.b=UB.z),this}},GB=Object.defineProperty,KB=(e,t,n)=>t in e?GB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Q=(e,t,n)=>(KB(e,typeof t==`symbol`?t:t+``,n),n),qB=class extends It{constructor(e,t){super(),Q(this,`isTransformControls`,!0),Q(this,`visible`,!1),Q(this,`domElement`),Q(this,`raycaster`,new Le),Q(this,`gizmo`),Q(this,`plane`),Q(this,`tempVector`,new B),Q(this,`tempVector2`,new B),Q(this,`tempQuaternion`,new ht),Q(this,`unit`,{X:new B(1,0,0),Y:new B(0,1,0),Z:new B(0,0,1)}),Q(this,`pointStart`,new B),Q(this,`pointEnd`,new B),Q(this,`offset`,new B),Q(this,`rotationAxis`,new B),Q(this,`startNorm`,new B),Q(this,`endNorm`,new B),Q(this,`rotationAngle`,0),Q(this,`cameraPosition`,new B),Q(this,`cameraQuaternion`,new ht),Q(this,`cameraScale`,new B),Q(this,`parentPosition`,new B),Q(this,`parentQuaternion`,new ht),Q(this,`parentQuaternionInv`,new ht),Q(this,`parentScale`,new B),Q(this,`worldPositionStart`,new B),Q(this,`worldQuaternionStart`,new ht),Q(this,`worldScaleStart`,new B),Q(this,`worldPosition`,new B),Q(this,`worldQuaternion`,new ht),Q(this,`worldQuaternionInv`,new ht),Q(this,`worldScale`,new B),Q(this,`eye`,new B),Q(this,`positionStart`,new B),Q(this,`quaternionStart`,new ht),Q(this,`scaleStart`,new B),Q(this,`camera`),Q(this,`object`),Q(this,`enabled`,!0),Q(this,`axis`,null),Q(this,`mode`,`translate`),Q(this,`translationSnap`,null),Q(this,`rotationSnap`,null),Q(this,`scaleSnap`,null),Q(this,`space`,`world`),Q(this,`size`,1),Q(this,`dragging`,!1),Q(this,`showX`,!0),Q(this,`showY`,!0),Q(this,`showZ`,!0),Q(this,`changeEvent`,{type:`change`}),Q(this,`mouseDownEvent`,{type:`mouseDown`,mode:this.mode}),Q(this,`mouseUpEvent`,{type:`mouseUp`,mode:this.mode}),Q(this,`objectChangeEvent`,{type:`objectChange`}),Q(this,`intersectObjectWithRay`,(e,t,n)=>{let r=t.intersectObject(e,!0);for(let e=0;e(this.object=e,this.visible=!0,this)),Q(this,`detach`,()=>(this.object=void 0,this.visible=!1,this.axis=null,this)),Q(this,`reset`,()=>(this.enabled&&this.dragging&&this.object!==void 0&&(this.object.position.copy(this.positionStart),this.object.quaternion.copy(this.quaternionStart),this.object.scale.copy(this.scaleStart),this.dispatchEvent(this.changeEvent),this.dispatchEvent(this.objectChangeEvent),this.pointStart.copy(this.pointEnd)),this)),Q(this,`updateMatrixWorld`,()=>{this.object!==void 0&&(this.object.updateMatrixWorld(),this.object.parent===null?console.error(`TransformControls: The attached 3D object must be a part of the scene graph.`):this.object.parent.matrixWorld.decompose(this.parentPosition,this.parentQuaternion,this.parentScale),this.object.matrixWorld.decompose(this.worldPosition,this.worldQuaternion,this.worldScale),this.parentQuaternionInv.copy(this.parentQuaternion).invert(),this.worldQuaternionInv.copy(this.worldQuaternion).invert()),this.camera.updateMatrixWorld(),this.camera.matrixWorld.decompose(this.cameraPosition,this.cameraQuaternion,this.cameraScale),this.eye.copy(this.cameraPosition).sub(this.worldPosition).normalize(),super.updateMatrixWorld()}),Q(this,`pointerHover`,e=>{if(this.object===void 0||this.dragging===!0)return;this.raycaster.setFromCamera(e,this.camera);let t=this.intersectObjectWithRay(this.gizmo.picker[this.mode],this.raycaster);t?this.axis=t.object.name:this.axis=null}),Q(this,`pointerDown`,e=>{if(!(this.object===void 0||this.dragging===!0||e.button!==0)&&this.axis!==null){this.raycaster.setFromCamera(e,this.camera);let t=this.intersectObjectWithRay(this.plane,this.raycaster,!0);if(t){let e=this.space;if(this.mode===`scale`?e=`local`:(this.axis===`E`||this.axis===`XYZE`||this.axis===`XYZ`)&&(e=`world`),e===`local`&&this.mode===`rotate`){let e=this.rotationSnap;this.axis===`X`&&e&&(this.object.rotation.x=Math.round(this.object.rotation.x/e)*e),this.axis===`Y`&&e&&(this.object.rotation.y=Math.round(this.object.rotation.y/e)*e),this.axis===`Z`&&e&&(this.object.rotation.z=Math.round(this.object.rotation.z/e)*e)}this.object.updateMatrixWorld(),this.object.parent&&this.object.parent.updateMatrixWorld(),this.positionStart.copy(this.object.position),this.quaternionStart.copy(this.object.quaternion),this.scaleStart.copy(this.object.scale),this.object.matrixWorld.decompose(this.worldPositionStart,this.worldQuaternionStart,this.worldScaleStart),this.pointStart.copy(t.point).sub(this.worldPositionStart)}this.dragging=!0,this.mouseDownEvent.mode=this.mode,this.dispatchEvent(this.mouseDownEvent)}}),Q(this,`pointerMove`,e=>{let t=this.axis,n=this.mode,r=this.object,i=this.space;if(n===`scale`?i=`local`:(t===`E`||t===`XYZE`||t===`XYZ`)&&(i=`world`),r===void 0||t===null||this.dragging===!1||e.button!==-1)return;this.raycaster.setFromCamera(e,this.camera);let a=this.intersectObjectWithRay(this.plane,this.raycaster,!0);if(a){if(this.pointEnd.copy(a.point).sub(this.worldPositionStart),n===`translate`)this.offset.copy(this.pointEnd).sub(this.pointStart),i===`local`&&t!==`XYZ`&&this.offset.applyQuaternion(this.worldQuaternionInv),t.indexOf(`X`)===-1&&(this.offset.x=0),t.indexOf(`Y`)===-1&&(this.offset.y=0),t.indexOf(`Z`)===-1&&(this.offset.z=0),i===`local`&&t!==`XYZ`?this.offset.applyQuaternion(this.quaternionStart).divide(this.parentScale):this.offset.applyQuaternion(this.parentQuaternionInv).divide(this.parentScale),r.position.copy(this.offset).add(this.positionStart),this.translationSnap&&(i===`local`&&(r.position.applyQuaternion(this.tempQuaternion.copy(this.quaternionStart).invert()),t.search(`X`)!==-1&&(r.position.x=Math.round(r.position.x/this.translationSnap)*this.translationSnap),t.search(`Y`)!==-1&&(r.position.y=Math.round(r.position.y/this.translationSnap)*this.translationSnap),t.search(`Z`)!==-1&&(r.position.z=Math.round(r.position.z/this.translationSnap)*this.translationSnap),r.position.applyQuaternion(this.quaternionStart)),i===`world`&&(r.parent&&r.position.add(this.tempVector.setFromMatrixPosition(r.parent.matrixWorld)),t.search(`X`)!==-1&&(r.position.x=Math.round(r.position.x/this.translationSnap)*this.translationSnap),t.search(`Y`)!==-1&&(r.position.y=Math.round(r.position.y/this.translationSnap)*this.translationSnap),t.search(`Z`)!==-1&&(r.position.z=Math.round(r.position.z/this.translationSnap)*this.translationSnap),r.parent&&r.position.sub(this.tempVector.setFromMatrixPosition(r.parent.matrixWorld))));else if(n===`scale`){if(t.search(`XYZ`)!==-1){let e=this.pointEnd.length()/this.pointStart.length();this.pointEnd.dot(this.pointStart)<0&&(e*=-1),this.tempVector2.set(e,e,e)}else this.tempVector.copy(this.pointStart),this.tempVector2.copy(this.pointEnd),this.tempVector.applyQuaternion(this.worldQuaternionInv),this.tempVector2.applyQuaternion(this.worldQuaternionInv),this.tempVector2.divide(this.tempVector),t.search(`X`)===-1&&(this.tempVector2.x=1),t.search(`Y`)===-1&&(this.tempVector2.y=1),t.search(`Z`)===-1&&(this.tempVector2.z=1);r.scale.copy(this.scaleStart).multiply(this.tempVector2),this.scaleSnap&&this.object&&(t.search(`X`)!==-1&&(this.object.scale.x=Math.round(r.scale.x/this.scaleSnap)*this.scaleSnap||this.scaleSnap),t.search(`Y`)!==-1&&(r.scale.y=Math.round(r.scale.y/this.scaleSnap)*this.scaleSnap||this.scaleSnap),t.search(`Z`)!==-1&&(r.scale.z=Math.round(r.scale.z/this.scaleSnap)*this.scaleSnap||this.scaleSnap))}else if(n===`rotate`){this.offset.copy(this.pointEnd).sub(this.pointStart);let e=20/this.worldPosition.distanceTo(this.tempVector.setFromMatrixPosition(this.camera.matrixWorld));t===`E`?(this.rotationAxis.copy(this.eye),this.rotationAngle=this.pointEnd.angleTo(this.pointStart),this.startNorm.copy(this.pointStart).normalize(),this.endNorm.copy(this.pointEnd).normalize(),this.rotationAngle*=this.endNorm.cross(this.startNorm).dot(this.eye)<0?1:-1):t===`XYZE`?(this.rotationAxis.copy(this.offset).cross(this.eye).normalize(),this.rotationAngle=this.offset.dot(this.tempVector.copy(this.rotationAxis).cross(this.eye))*e):(t===`X`||t===`Y`||t===`Z`)&&(this.rotationAxis.copy(this.unit[t]),this.tempVector.copy(this.unit[t]),i===`local`&&this.tempVector.applyQuaternion(this.worldQuaternion),this.rotationAngle=this.offset.dot(this.tempVector.cross(this.eye).normalize())*e),this.rotationSnap&&(this.rotationAngle=Math.round(this.rotationAngle/this.rotationSnap)*this.rotationSnap),i===`local`&&t!==`E`&&t!==`XYZE`?(r.quaternion.copy(this.quaternionStart),r.quaternion.multiply(this.tempQuaternion.setFromAxisAngle(this.rotationAxis,this.rotationAngle)).normalize()):(this.rotationAxis.applyQuaternion(this.parentQuaternionInv),r.quaternion.copy(this.tempQuaternion.setFromAxisAngle(this.rotationAxis,this.rotationAngle)),r.quaternion.multiply(this.quaternionStart).normalize())}this.dispatchEvent(this.changeEvent),this.dispatchEvent(this.objectChangeEvent)}}),Q(this,`pointerUp`,e=>{e.button===0&&(this.dragging&&this.axis!==null&&(this.mouseUpEvent.mode=this.mode,this.dispatchEvent(this.mouseUpEvent)),this.dragging=!1,this.axis=null)}),Q(this,`getPointer`,e=>{var t;if(this.domElement&&(t=this.domElement.ownerDocument)!=null&&t.pointerLockElement)return{x:0,y:0,button:e.button};{let t=e.changedTouches?e.changedTouches[0]:e,n=this.domElement.getBoundingClientRect();return{x:(t.clientX-n.left)/n.width*2-1,y:-(t.clientY-n.top)/n.height*2+1,button:e.button}}}),Q(this,`onPointerHover`,e=>{if(this.enabled)switch(e.pointerType){case`mouse`:case`pen`:this.pointerHover(this.getPointer(e));break}}),Q(this,`onPointerDown`,e=>{!this.enabled||!this.domElement||(this.domElement.style.touchAction=`none`,this.domElement.ownerDocument.addEventListener(`pointermove`,this.onPointerMove),this.pointerHover(this.getPointer(e)),this.pointerDown(this.getPointer(e)))}),Q(this,`onPointerMove`,e=>{this.enabled&&this.pointerMove(this.getPointer(e))}),Q(this,`onPointerUp`,e=>{!this.enabled||!this.domElement||(this.domElement.style.touchAction=``,this.domElement.ownerDocument.removeEventListener(`pointermove`,this.onPointerMove),this.pointerUp(this.getPointer(e)))}),Q(this,`getMode`,()=>this.mode),Q(this,`setMode`,e=>{this.mode=e}),Q(this,`setTranslationSnap`,e=>{this.translationSnap=e}),Q(this,`setRotationSnap`,e=>{this.rotationSnap=e}),Q(this,`setScaleSnap`,e=>{this.scaleSnap=e}),Q(this,`setSize`,e=>{this.size=e}),Q(this,`setSpace`,e=>{this.space=e}),Q(this,`update`,()=>{console.warn(`THREE.TransformControls: update function has no more functionality and therefore has been deprecated.`)}),Q(this,`connect`,e=>{e===document&&console.error(`THREE.OrbitControls: "document" should not be used as the target "domElement". Please use "renderer.domElement" instead.`),this.domElement=e,this.domElement.addEventListener(`pointerdown`,this.onPointerDown),this.domElement.addEventListener(`pointermove`,this.onPointerHover),this.domElement.ownerDocument.addEventListener(`pointerup`,this.onPointerUp)}),Q(this,`dispose`,()=>{var e,t,n,r,i,a;(e=this.domElement)==null||e.removeEventListener(`pointerdown`,this.onPointerDown),(t=this.domElement)==null||t.removeEventListener(`pointermove`,this.onPointerHover),(r=(n=this.domElement)?.ownerDocument)==null||r.removeEventListener(`pointermove`,this.onPointerMove),(a=(i=this.domElement)?.ownerDocument)==null||a.removeEventListener(`pointerup`,this.onPointerUp),this.traverse(e=>{let t=e;t.geometry&&t.geometry.dispose(),t.material&&t.material.dispose()})}),this.domElement=t,this.camera=e,this.gizmo=new JB,this.add(this.gizmo),this.plane=new YB,this.add(this.plane);let n=(e,t)=>{let n=t;Object.defineProperty(this,e,{get:function(){return n===void 0?t:n},set:function(t){n!==t&&(n=t,this.plane[e]=t,this.gizmo[e]=t,this.dispatchEvent({type:e+`-changed`,value:t}),this.dispatchEvent(this.changeEvent))}}),this[e]=t,this.plane[e]=t,this.gizmo[e]=t};n(`camera`,this.camera),n(`object`,this.object),n(`enabled`,this.enabled),n(`axis`,this.axis),n(`mode`,this.mode),n(`translationSnap`,this.translationSnap),n(`rotationSnap`,this.rotationSnap),n(`scaleSnap`,this.scaleSnap),n(`space`,this.space),n(`size`,this.size),n(`dragging`,this.dragging),n(`showX`,this.showX),n(`showY`,this.showY),n(`showZ`,this.showZ),n(`worldPosition`,this.worldPosition),n(`worldPositionStart`,this.worldPositionStart),n(`worldQuaternion`,this.worldQuaternion),n(`worldQuaternionStart`,this.worldQuaternionStart),n(`cameraPosition`,this.cameraPosition),n(`cameraQuaternion`,this.cameraQuaternion),n(`pointStart`,this.pointStart),n(`pointEnd`,this.pointEnd),n(`rotationAxis`,this.rotationAxis),n(`rotationAngle`,this.rotationAngle),n(`eye`,this.eye),t!==void 0&&this.connect(t)}},JB=class extends It{constructor(){super(),Q(this,`isTransformControlsGizmo`,!0),Q(this,`type`,`TransformControlsGizmo`),Q(this,`tempVector`,new B(0,0,0)),Q(this,`tempEuler`,new me),Q(this,`alignVector`,new B(0,1,0)),Q(this,`zeroVector`,new B(0,0,0)),Q(this,`lookAtMatrix`,new se),Q(this,`tempQuaternion`,new ht),Q(this,`tempQuaternion2`,new ht),Q(this,`identityQuaternion`,new ht),Q(this,`unitX`,new B(1,0,0)),Q(this,`unitY`,new B(0,1,0)),Q(this,`unitZ`,new B(0,0,1)),Q(this,`gizmo`),Q(this,`picker`),Q(this,`helper`),Q(this,`rotationAxis`,new B),Q(this,`cameraPosition`,new B),Q(this,`worldPositionStart`,new B),Q(this,`worldQuaternionStart`,new ht),Q(this,`worldPosition`,new B),Q(this,`worldQuaternion`,new ht),Q(this,`eye`,new B),Q(this,`camera`,null),Q(this,`enabled`,!0),Q(this,`axis`,null),Q(this,`mode`,`translate`),Q(this,`space`,`world`),Q(this,`size`,1),Q(this,`dragging`,!1),Q(this,`showX`,!0),Q(this,`showY`,!0),Q(this,`showZ`,!0),Q(this,`updateMatrixWorld`,()=>{let e=this.space;this.mode===`scale`&&(e=`local`);let t=e===`local`?this.worldQuaternion:this.identityQuaternion;this.gizmo.translate.visible=this.mode===`translate`,this.gizmo.rotate.visible=this.mode===`rotate`,this.gizmo.scale.visible=this.mode===`scale`,this.helper.translate.visible=this.mode===`translate`,this.helper.rotate.visible=this.mode===`rotate`,this.helper.scale.visible=this.mode===`scale`;let n=[];n=n.concat(this.picker[this.mode].children),n=n.concat(this.gizmo[this.mode].children),n=n.concat(this.helper[this.mode].children);for(let e=0;e.9&&(r.visible=!1)),this.axis===`Y`&&(this.tempQuaternion.setFromEuler(this.tempEuler.set(0,0,Math.PI/2)),r.quaternion.copy(t).multiply(this.tempQuaternion),Math.abs(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye))>.9&&(r.visible=!1)),this.axis===`Z`&&(this.tempQuaternion.setFromEuler(this.tempEuler.set(0,Math.PI/2,0)),r.quaternion.copy(t).multiply(this.tempQuaternion),Math.abs(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye))>.9&&(r.visible=!1)),this.axis===`XYZE`&&(this.tempQuaternion.setFromEuler(this.tempEuler.set(0,Math.PI/2,0)),this.alignVector.copy(this.rotationAxis),r.quaternion.setFromRotationMatrix(this.lookAtMatrix.lookAt(this.zeroVector,this.alignVector,this.unitY)),r.quaternion.multiply(this.tempQuaternion),r.visible=this.dragging),this.axis===`E`&&(r.visible=!1)):r.name===`START`?(r.position.copy(this.worldPositionStart),r.visible=this.dragging):r.name===`END`?(r.position.copy(this.worldPosition),r.visible=this.dragging):r.name===`DELTA`?(r.position.copy(this.worldPositionStart),r.quaternion.copy(this.worldQuaternionStart),this.tempVector.set(1e-10,1e-10,1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1),this.tempVector.applyQuaternion(this.worldQuaternionStart.clone().invert()),r.scale.copy(this.tempVector),r.visible=this.dragging):(r.quaternion.copy(t),this.dragging?r.position.copy(this.worldPositionStart):r.position.copy(this.worldPosition),this.axis&&(r.visible=this.axis.search(r.name)!==-1));continue}r.quaternion.copy(t),this.mode===`translate`||this.mode===`scale`?((r.name===`X`||r.name===`XYZX`)&&Math.abs(this.alignVector.copy(this.unitX).applyQuaternion(t).dot(this.eye))>.99&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),(r.name===`Y`||r.name===`XYZY`)&&Math.abs(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye))>.99&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),(r.name===`Z`||r.name===`XYZZ`)&&Math.abs(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye))>.99&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name===`XY`&&Math.abs(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye))<.2&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name===`YZ`&&Math.abs(this.alignVector.copy(this.unitX).applyQuaternion(t).dot(this.eye))<.2&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name===`XZ`&&Math.abs(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye))<.2&&(r.scale.set(1e-10,1e-10,1e-10),r.visible=!1),r.name.search(`X`)!==-1&&(this.alignVector.copy(this.unitX).applyQuaternion(t).dot(this.eye)<0?r.tag===`fwd`?r.visible=!1:r.scale.x*=-1:r.tag===`bwd`&&(r.visible=!1)),r.name.search(`Y`)!==-1&&(this.alignVector.copy(this.unitY).applyQuaternion(t).dot(this.eye)<0?r.tag===`fwd`?r.visible=!1:r.scale.y*=-1:r.tag===`bwd`&&(r.visible=!1)),r.name.search(`Z`)!==-1&&(this.alignVector.copy(this.unitZ).applyQuaternion(t).dot(this.eye)<0?r.tag===`fwd`?r.visible=!1:r.scale.z*=-1:r.tag===`bwd`&&(r.visible=!1))):this.mode===`rotate`&&(this.tempQuaternion2.copy(t),this.alignVector.copy(this.eye).applyQuaternion(this.tempQuaternion.copy(t).invert()),r.name.search(`E`)!==-1&&r.quaternion.setFromRotationMatrix(this.lookAtMatrix.lookAt(this.eye,this.zeroVector,this.unitY)),r.name===`X`&&(this.tempQuaternion.setFromAxisAngle(this.unitX,Math.atan2(-this.alignVector.y,this.alignVector.z)),this.tempQuaternion.multiplyQuaternions(this.tempQuaternion2,this.tempQuaternion),r.quaternion.copy(this.tempQuaternion)),r.name===`Y`&&(this.tempQuaternion.setFromAxisAngle(this.unitY,Math.atan2(this.alignVector.x,this.alignVector.z)),this.tempQuaternion.multiplyQuaternions(this.tempQuaternion2,this.tempQuaternion),r.quaternion.copy(this.tempQuaternion)),r.name===`Z`&&(this.tempQuaternion.setFromAxisAngle(this.unitZ,Math.atan2(this.alignVector.y,this.alignVector.x)),this.tempQuaternion.multiplyQuaternions(this.tempQuaternion2,this.tempQuaternion),r.quaternion.copy(this.tempQuaternion))),r.visible=r.visible&&(r.name.indexOf(`X`)===-1||this.showX),r.visible=r.visible&&(r.name.indexOf(`Y`)===-1||this.showY),r.visible=r.visible&&(r.name.indexOf(`Z`)===-1||this.showZ),r.visible=r.visible&&(r.name.indexOf(`E`)===-1||this.showX&&this.showY&&this.showZ),r.material.tempOpacity=r.material.tempOpacity||r.material.opacity,r.material.tempColor=r.material.tempColor||r.material.color.clone(),r.material.color.copy(r.material.tempColor),r.material.opacity=r.material.tempOpacity,this.enabled?this.axis&&(r.name===this.axis||this.axis.split(``).some(function(e){return r.name===e})?(r.material.opacity=1,r.material.color.lerp(new Ft(1,1,1),.5)):(r.material.opacity*=.25,r.material.color.lerp(new Ft(1,1,1),.5))):(r.material.opacity*=.5,r.material.color.lerp(new Ft(1,1,1),.5))}super.updateMatrixWorld()});let e=new I({depthTest:!1,depthWrite:!1,transparent:!0,side:ge,fog:!1,toneMapped:!1}),t=new qe({depthTest:!1,depthWrite:!1,transparent:!0,linewidth:1,fog:!1,toneMapped:!1}),n=e.clone();n.opacity=.15;let r=e.clone();r.opacity=.33;let i=e.clone();i.color.set(16711680);let a=e.clone();a.color.set(65280);let o=e.clone();o.color.set(255);let s=e.clone();s.opacity=.25;let c=s.clone();c.color.set(16776960);let l=s.clone();l.color.set(65535);let u=s.clone();u.color.set(16711935),e.clone().color.set(16776960);let d=t.clone();d.color.set(16711680);let f=t.clone();f.color.set(65280);let p=t.clone();p.color.set(255);let m=t.clone();m.color.set(65535);let h=t.clone();h.color.set(16711935);let g=t.clone();g.color.set(16776960);let _=t.clone();_.color.set(7895160);let v=g.clone();v.opacity=.25;let y=new ke(0,.05,.2,12,1,!1),b=new F(.125,.125,.125),x=new Fe;x.setAttribute(`position`,new Mt([0,0,0,1,0,0],3));let S=(e,t)=>{let n=new Fe,r=[];for(let n=0;n<=64*t;++n)r.push(0,Math.cos(n/32*Math.PI)*e,Math.sin(n/32*Math.PI)*e);return n.setAttribute(`position`,new Mt(r,3)),n},C=()=>{let e=new Fe;return e.setAttribute(`position`,new Mt([0,0,0,1,1,1],3)),e},w={X:[[new M(y,i),[1,0,0],[0,0,-Math.PI/2],null,`fwd`],[new M(y,i),[1,0,0],[0,0,Math.PI/2],null,`bwd`],[new et(x,d)]],Y:[[new M(y,a),[0,1,0],null,null,`fwd`],[new M(y,a),[0,1,0],[Math.PI,0,0],null,`bwd`],[new et(x,f),null,[0,0,Math.PI/2]]],Z:[[new M(y,o),[0,0,1],[Math.PI/2,0,0],null,`fwd`],[new M(y,o),[0,0,1],[-Math.PI/2,0,0],null,`bwd`],[new et(x,p),null,[0,-Math.PI/2,0]]],XYZ:[[new M(new Qe(.1,0),s.clone()),[0,0,0],[0,0,0]]],XY:[[new M(new Wt(.295,.295),c.clone()),[.15,.15,0]],[new et(x,g),[.18,.3,0],null,[.125,1,1]],[new et(x,g),[.3,.18,0],[0,0,Math.PI/2],[.125,1,1]]],YZ:[[new M(new Wt(.295,.295),l.clone()),[0,.15,.15],[0,Math.PI/2,0]],[new et(x,m),[0,.18,.3],[0,0,Math.PI/2],[.125,1,1]],[new et(x,m),[0,.3,.18],[0,-Math.PI/2,0],[.125,1,1]]],XZ:[[new M(new Wt(.295,.295),u.clone()),[.15,0,.15],[-Math.PI/2,0,0]],[new et(x,h),[.18,0,.3],null,[.125,1,1]],[new et(x,h),[.3,0,.18],[0,-Math.PI/2,0],[.125,1,1]]]},T={X:[[new M(new ke(.2,0,1,4,1,!1),n),[.6,0,0],[0,0,-Math.PI/2]]],Y:[[new M(new ke(.2,0,1,4,1,!1),n),[0,.6,0]]],Z:[[new M(new ke(.2,0,1,4,1,!1),n),[0,0,.6],[Math.PI/2,0,0]]],XYZ:[[new M(new Qe(.2,0),n)]],XY:[[new M(new Wt(.4,.4),n),[.2,.2,0]]],YZ:[[new M(new Wt(.4,.4),n),[0,.2,.2],[0,Math.PI/2,0]]],XZ:[[new M(new Wt(.4,.4),n),[.2,0,.2],[-Math.PI/2,0,0]]]},E={START:[[new M(new Qe(.01,2),r),null,null,null,`helper`]],END:[[new M(new Qe(.01,2),r),null,null,null,`helper`]],DELTA:[[new et(C(),r),null,null,null,`helper`]],X:[[new et(x,r.clone()),[-1e3,0,0],null,[1e6,1,1],`helper`]],Y:[[new et(x,r.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],`helper`]],Z:[[new et(x,r.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],`helper`]]},D={X:[[new et(S(1,.5),d)],[new M(new Qe(.04,0),i),[0,0,.99],null,[1,3,1]]],Y:[[new et(S(1,.5),f),null,[0,0,-Math.PI/2]],[new M(new Qe(.04,0),a),[0,0,.99],null,[3,1,1]]],Z:[[new et(S(1,.5),p),null,[0,Math.PI/2,0]],[new M(new Qe(.04,0),o),[.99,0,0],null,[1,3,1]]],E:[[new et(S(1.25,1),v),null,[0,Math.PI/2,0]],[new M(new ke(.03,0,.15,4,1,!1),v),[1.17,0,0],[0,0,-Math.PI/2],[1,1,.001]],[new M(new ke(.03,0,.15,4,1,!1),v),[-1.17,0,0],[0,0,Math.PI/2],[1,1,.001]],[new M(new ke(.03,0,.15,4,1,!1),v),[0,-1.17,0],[Math.PI,0,0],[1,1,.001]],[new M(new ke(.03,0,.15,4,1,!1),v),[0,1.17,0],[0,0,0],[1,1,.001]]],XYZE:[[new et(S(1,1),_),null,[0,Math.PI/2,0]]]},O={AXIS:[[new et(x,r.clone()),[-1e3,0,0],null,[1e6,1,1],`helper`]]},k={X:[[new M(new We(1,.1,4,24),n),[0,0,0],[0,-Math.PI/2,-Math.PI/2]]],Y:[[new M(new We(1,.1,4,24),n),[0,0,0],[Math.PI/2,0,0]]],Z:[[new M(new We(1,.1,4,24),n),[0,0,0],[0,0,-Math.PI/2]]],E:[[new M(new We(1.25,.1,2,24),n)]],XYZE:[[new M(new dt(.7,10,8),n)]]},A={X:[[new M(b,i),[.8,0,0],[0,0,-Math.PI/2]],[new et(x,d),null,null,[.8,1,1]]],Y:[[new M(b,a),[0,.8,0]],[new et(x,f),null,[0,0,Math.PI/2],[.8,1,1]]],Z:[[new M(b,o),[0,0,.8],[Math.PI/2,0,0]],[new et(x,p),null,[0,-Math.PI/2,0],[.8,1,1]]],XY:[[new M(b,c),[.85,.85,0],null,[2,2,.2]],[new et(x,g),[.855,.98,0],null,[.125,1,1]],[new et(x,g),[.98,.855,0],[0,0,Math.PI/2],[.125,1,1]]],YZ:[[new M(b,l),[0,.85,.85],null,[.2,2,2]],[new et(x,m),[0,.855,.98],[0,0,Math.PI/2],[.125,1,1]],[new et(x,m),[0,.98,.855],[0,-Math.PI/2,0],[.125,1,1]]],XZ:[[new M(b,u),[.85,0,.85],null,[2,.2,2]],[new et(x,h),[.855,0,.98],null,[.125,1,1]],[new et(x,h),[.98,0,.855],[0,-Math.PI/2,0],[.125,1,1]]],XYZX:[[new M(new F(.125,.125,.125),s.clone()),[1.1,0,0]]],XYZY:[[new M(new F(.125,.125,.125),s.clone()),[0,1.1,0]]],XYZZ:[[new M(new F(.125,.125,.125),s.clone()),[0,0,1.1]]]},j={X:[[new M(new ke(.2,0,.8,4,1,!1),n),[.5,0,0],[0,0,-Math.PI/2]]],Y:[[new M(new ke(.2,0,.8,4,1,!1),n),[0,.5,0]]],Z:[[new M(new ke(.2,0,.8,4,1,!1),n),[0,0,.5],[Math.PI/2,0,0]]],XY:[[new M(b,n),[.85,.85,0],null,[3,3,.2]]],YZ:[[new M(b,n),[0,.85,.85],null,[.2,3,3]]],XZ:[[new M(b,n),[.85,0,.85],null,[3,.2,3]]],XYZX:[[new M(new F(.2,.2,.2),n),[1.1,0,0]]],XYZY:[[new M(new F(.2,.2,.2),n),[0,1.1,0]]],XYZZ:[[new M(new F(.2,.2,.2),n),[0,0,1.1]]]},N={X:[[new et(x,r.clone()),[-1e3,0,0],null,[1e6,1,1],`helper`]],Y:[[new et(x,r.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],`helper`]],Z:[[new et(x,r.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],`helper`]]},ee=e=>{let t=new It;for(let n in e)for(let r=e[n].length;r--;){let i=e[n][r][0].clone(),a=e[n][r][1],o=e[n][r][2],s=e[n][r][3],c=e[n][r][4];i.name=n,i.tag=c,a&&i.position.set(a[0],a[1],a[2]),o&&i.rotation.set(o[0],o[1],o[2]),s&&i.scale.set(s[0],s[1],s[2]),i.updateMatrix();let l=i.geometry.clone();l.applyMatrix4(i.matrix),i.geometry=l,i.renderOrder=1/0,i.position.set(0,0,0),i.rotation.set(0,0,0),i.scale.set(1,1,1),t.add(i)}return t};this.gizmo={},this.picker={},this.helper={},this.add(this.gizmo.translate=ee(w)),this.add(this.gizmo.rotate=ee(D)),this.add(this.gizmo.scale=ee(A)),this.add(this.picker.translate=ee(T)),this.add(this.picker.rotate=ee(k)),this.add(this.picker.scale=ee(j)),this.add(this.helper.translate=ee(E)),this.add(this.helper.rotate=ee(O)),this.add(this.helper.scale=ee(N)),this.picker.translate.visible=!1,this.picker.rotate.visible=!1,this.picker.scale.visible=!1}},YB=class extends M{constructor(){super(new Wt(1e5,1e5,2,2),new I({visible:!1,wireframe:!0,side:ge,transparent:!0,opacity:.1,toneMapped:!1})),Q(this,`isTransformControlsPlane`,!0),Q(this,`type`,`TransformControlsPlane`),Q(this,`unitX`,new B(1,0,0)),Q(this,`unitY`,new B(0,1,0)),Q(this,`unitZ`,new B(0,0,1)),Q(this,`tempVector`,new B),Q(this,`dirVector`,new B),Q(this,`alignVector`,new B),Q(this,`tempMatrix`,new se),Q(this,`identityQuaternion`,new ht),Q(this,`cameraQuaternion`,new ht),Q(this,`worldPosition`,new B),Q(this,`worldQuaternion`,new ht),Q(this,`eye`,new B),Q(this,`axis`,null),Q(this,`mode`,`translate`),Q(this,`space`,`world`),Q(this,`updateMatrixWorld`,()=>{let e=this.space;switch(this.position.copy(this.worldPosition),this.mode===`scale`&&(e=`local`),this.unitX.set(1,0,0).applyQuaternion(e===`local`?this.worldQuaternion:this.identityQuaternion),this.unitY.set(0,1,0).applyQuaternion(e===`local`?this.worldQuaternion:this.identityQuaternion),this.unitZ.set(0,0,1).applyQuaternion(e===`local`?this.worldQuaternion:this.identityQuaternion),this.alignVector.copy(this.unitY),this.mode){case`translate`:case`scale`:switch(this.axis){case`X`:this.alignVector.copy(this.eye).cross(this.unitX),this.dirVector.copy(this.unitX).cross(this.alignVector);break;case`Y`:this.alignVector.copy(this.eye).cross(this.unitY),this.dirVector.copy(this.unitY).cross(this.alignVector);break;case`Z`:this.alignVector.copy(this.eye).cross(this.unitZ),this.dirVector.copy(this.unitZ).cross(this.alignVector);break;case`XY`:this.dirVector.copy(this.unitZ);break;case`YZ`:this.dirVector.copy(this.unitX);break;case`XZ`:this.alignVector.copy(this.unitZ),this.dirVector.copy(this.unitY);break;case`XYZ`:case`E`:this.dirVector.set(0,0,0);break}break;case`rotate`:default:this.dirVector.set(0,0,0)}this.dirVector.length()===0?this.quaternion.copy(this.cameraQuaternion):(this.tempMatrix.lookAt(this.tempVector.set(0,0,0),this.dirVector,this.alignVector),this.quaternion.setFromRotationMatrix(this.tempMatrix)),super.updateMatrixWorld()})}},XB=Object.defineProperty,ZB=(e,t,n)=>t in e?XB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,QB=(e,t,n)=>(ZB(e,typeof t==`symbol`?t:t+``,n),n);const $B=new me(0,0,0,`YXZ`),eV=new B,tV={type:`change`},nV={type:`lock`},rV={type:`unlock`},iV=Math.PI/2;var aV=class extends Gt{constructor(e,t){super(),QB(this,`camera`),QB(this,`domElement`),QB(this,`isLocked`),QB(this,`minPolarAngle`),QB(this,`maxPolarAngle`),QB(this,`pointerSpeed`),QB(this,`onMouseMove`,e=>{if(!this.domElement||this.isLocked===!1)return;let t=e.movementX||e.mozMovementX||e.webkitMovementX||0,n=e.movementY||e.mozMovementY||e.webkitMovementY||0;$B.setFromQuaternion(this.camera.quaternion),$B.y-=t*.002*this.pointerSpeed,$B.x-=n*.002*this.pointerSpeed,$B.x=Math.max(iV-this.maxPolarAngle,Math.min(iV-this.minPolarAngle,$B.x)),this.camera.quaternion.setFromEuler($B),this.dispatchEvent(tV)}),QB(this,`onPointerlockChange`,()=>{this.domElement&&(this.domElement.ownerDocument.pointerLockElement===this.domElement?(this.dispatchEvent(nV),this.isLocked=!0):(this.dispatchEvent(rV),this.isLocked=!1))}),QB(this,`onPointerlockError`,()=>{console.error(`THREE.PointerLockControls: Unable to use Pointer Lock API`)}),QB(this,`connect`,e=>{this.domElement=e||this.domElement,this.domElement&&(this.domElement.ownerDocument.addEventListener(`mousemove`,this.onMouseMove),this.domElement.ownerDocument.addEventListener(`pointerlockchange`,this.onPointerlockChange),this.domElement.ownerDocument.addEventListener(`pointerlockerror`,this.onPointerlockError))}),QB(this,`disconnect`,()=>{this.domElement&&(this.domElement.ownerDocument.removeEventListener(`mousemove`,this.onMouseMove),this.domElement.ownerDocument.removeEventListener(`pointerlockchange`,this.onPointerlockChange),this.domElement.ownerDocument.removeEventListener(`pointerlockerror`,this.onPointerlockError))}),QB(this,`dispose`,()=>{this.disconnect()}),QB(this,`getObject`,()=>this.camera),QB(this,`direction`,new B(0,0,-1)),QB(this,`getDirection`,e=>e.copy(this.direction).applyQuaternion(this.camera.quaternion)),QB(this,`moveForward`,e=>{eV.setFromMatrixColumn(this.camera.matrix,0),eV.crossVectors(this.camera.up,eV),this.camera.position.addScaledVector(eV,e)}),QB(this,`moveRight`,e=>{eV.setFromMatrixColumn(this.camera.matrix,0),this.camera.position.addScaledVector(eV,e)}),QB(this,`lock`,()=>{this.domElement&&this.domElement.requestPointerLock()}),QB(this,`unlock`,()=>{this.domElement&&this.domElement.ownerDocument.exitPointerLock()}),this.camera=e,this.domElement=t,this.isLocked=!1,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.pointerSpeed=1,t&&this.connect(t)}},oV=Object.defineProperty,sV=(e,t,n)=>t in e?oV(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,cV=(e,t,n)=>(sV(e,typeof t==`symbol`?t:t+``,n),n);const lV=new Ue,uV=new ft,dV=Math.cos(70*(Math.PI/180)),fV=(e,t)=>(e%t+t)%t;var pV=class extends Gt{constructor(e,t){super(),cV(this,`object`),cV(this,`domElement`),cV(this,`enabled`,!0),cV(this,`target`,new B),cV(this,`minDistance`,0),cV(this,`maxDistance`,1/0),cV(this,`minZoom`,0),cV(this,`maxZoom`,1/0),cV(this,`minPolarAngle`,0),cV(this,`maxPolarAngle`,Math.PI),cV(this,`minAzimuthAngle`,-1/0),cV(this,`maxAzimuthAngle`,1/0),cV(this,`enableDamping`,!1),cV(this,`dampingFactor`,.05),cV(this,`enableZoom`,!0),cV(this,`zoomSpeed`,1),cV(this,`enableRotate`,!0),cV(this,`rotateSpeed`,1),cV(this,`enablePan`,!0),cV(this,`panSpeed`,1),cV(this,`screenSpacePanning`,!0),cV(this,`keyPanSpeed`,7),cV(this,`zoomToCursor`,!1),cV(this,`autoRotate`,!1),cV(this,`autoRotateSpeed`,2),cV(this,`reverseOrbit`,!1),cV(this,`reverseHorizontalOrbit`,!1),cV(this,`reverseVerticalOrbit`,!1),cV(this,`keys`,{LEFT:`ArrowLeft`,UP:`ArrowUp`,RIGHT:`ArrowRight`,BOTTOM:`ArrowDown`}),cV(this,`mouseButtons`,{LEFT:ut.ROTATE,MIDDLE:ut.DOLLY,RIGHT:ut.PAN}),cV(this,`touches`,{ONE:pt.ROTATE,TWO:pt.DOLLY_PAN}),cV(this,`target0`),cV(this,`position0`),cV(this,`zoom0`),cV(this,`_domElementKeyEvents`,null),cV(this,`getPolarAngle`),cV(this,`getAzimuthalAngle`),cV(this,`setPolarAngle`),cV(this,`setAzimuthalAngle`),cV(this,`getDistance`),cV(this,`getZoomScale`),cV(this,`listenToKeyEvents`),cV(this,`stopListenToKeyEvents`),cV(this,`saveState`),cV(this,`reset`),cV(this,`update`),cV(this,`connect`),cV(this,`dispose`),cV(this,`dollyIn`),cV(this,`dollyOut`),cV(this,`getScale`),cV(this,`setScale`),this.object=e,this.domElement=t,this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this.getPolarAngle=()=>l.phi,this.getAzimuthalAngle=()=>l.theta,this.setPolarAngle=e=>{let t=fV(e,2*Math.PI),r=l.phi;r<0&&(r+=2*Math.PI),t<0&&(t+=2*Math.PI);let i=Math.abs(t-r);2*Math.PI-i{let t=fV(e,2*Math.PI),r=l.theta;r<0&&(r+=2*Math.PI),t<0&&(t+=2*Math.PI);let i=Math.abs(t-r);2*Math.PI-in.object.position.distanceTo(n.target),this.listenToKeyEvents=e=>{e.addEventListener(`keydown`,we),this._domElementKeyEvents=e},this.stopListenToKeyEvents=()=>{this._domElementKeyEvents.removeEventListener(`keydown`,we),this._domElementKeyEvents=null},this.saveState=()=>{n.target0.copy(n.target),n.position0.copy(n.object.position),n.zoom0=n.object.zoom},this.reset=()=>{n.target.copy(n.target0),n.object.position.copy(n.position0),n.object.zoom=n.zoom0,n.object.updateProjectionMatrix(),n.dispatchEvent(r),n.update(),s=o.NONE},this.update=(()=>{let t=new B,i=new B(0,1,0),a=new ht().setFromUnitVectors(e.up,i),p=a.clone().invert(),m=new B,h=new ht,g=2*Math.PI;return function(){let _=n.object.position;a.setFromUnitVectors(e.up,i),p.copy(a).invert(),t.copy(_).sub(n.target),t.applyQuaternion(a),l.setFromVector3(t),n.autoRotate&&s===o.NONE&&k(D()),n.enableDamping?(l.theta+=u.theta*n.dampingFactor,l.phi+=u.phi*n.dampingFactor):(l.theta+=u.theta,l.phi+=u.phi);let v=n.minAzimuthAngle,y=n.maxAzimuthAngle;isFinite(v)&&isFinite(y)&&(v<-Math.PI?v+=g:v>Math.PI&&(v-=g),y<-Math.PI?y+=g:y>Math.PI&&(y-=g),v<=y?l.theta=Math.max(v,Math.min(y,l.theta)):l.theta=l.theta>(v+y)/2?Math.max(v,l.theta):Math.min(y,l.theta)),l.phi=Math.max(n.minPolarAngle,Math.min(n.maxPolarAngle,l.phi)),l.makeSafe(),n.enableDamping===!0?n.target.addScaledVector(f,n.dampingFactor):n.target.add(f),n.zoomToCursor&&w||n.object.isOrthographicCamera?l.radius=te(l.radius):l.radius=te(l.radius*d),t.setFromSpherical(l),t.applyQuaternion(p),_.copy(n.target).add(t),n.object.matrixAutoUpdate||n.object.updateMatrix(),n.object.lookAt(n.target),n.enableDamping===!0?(u.theta*=1-n.dampingFactor,u.phi*=1-n.dampingFactor,f.multiplyScalar(1-n.dampingFactor)):(u.set(0,0,0),f.set(0,0,0));let b=!1;if(n.zoomToCursor&&w){let r=null;if(n.object instanceof Ht&&n.object.isPerspectiveCamera){let e=t.length();r=te(e*d);let i=e-r;n.object.position.addScaledVector(S,i),n.object.updateMatrixWorld()}else if(n.object.isOrthographicCamera){let e=new B(C.x,C.y,0);e.unproject(n.object),n.object.zoom=Math.max(n.minZoom,Math.min(n.maxZoom,n.object.zoom/d)),n.object.updateProjectionMatrix(),b=!0;let i=new B(C.x,C.y,0);i.unproject(n.object),n.object.position.sub(i).add(e),n.object.updateMatrixWorld(),r=t.length()}else console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled.`),n.zoomToCursor=!1;r!==null&&(n.screenSpacePanning?n.target.set(0,0,-1).transformDirection(n.object.matrix).multiplyScalar(r).add(n.object.position):(lV.origin.copy(n.object.position),lV.direction.set(0,0,-1).transformDirection(n.object.matrix),Math.abs(n.object.up.dot(lV.direction))c||8*(1-h.dot(n.object.quaternion))>c?(n.dispatchEvent(r),m.copy(n.object.position),h.copy(n.object.quaternion),b=!1,!0):!1}})(),this.connect=e=>{n.domElement=e,n.domElement.style.touchAction=`none`,n.domElement.addEventListener(`contextmenu`,De),n.domElement.addEventListener(`pointerdown`,ve),n.domElement.addEventListener(`pointercancel`,be),n.domElement.addEventListener(`wheel`,Ce)},this.dispose=()=>{var e,t,r,i,a,o;n.domElement&&(n.domElement.style.touchAction=`auto`),(e=n.domElement)==null||e.removeEventListener(`contextmenu`,De),(t=n.domElement)==null||t.removeEventListener(`pointerdown`,ve),(r=n.domElement)==null||r.removeEventListener(`pointercancel`,be),(i=n.domElement)==null||i.removeEventListener(`wheel`,Ce),(a=n.domElement)==null||a.ownerDocument.removeEventListener(`pointermove`,ye),(o=n.domElement)==null||o.ownerDocument.removeEventListener(`pointerup`,be),n._domElementKeyEvents!==null&&n._domElementKeyEvents.removeEventListener(`keydown`,we)};let n=this,r={type:`change`},i={type:`start`},a={type:`end`},o={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},s=o.NONE,c=1e-6,l=new ue,u=new ue,d=1,f=new B,p=new He,m=new He,h=new He,g=new He,_=new He,v=new He,y=new He,b=new He,x=new He,S=new B,C=new He,w=!1,T=[],E={};function D(){return 2*Math.PI/60/60*n.autoRotateSpeed}function O(){return .95**n.zoomSpeed}function k(e){n.reverseOrbit||n.reverseHorizontalOrbit?u.theta+=e:u.theta-=e}function A(e){n.reverseOrbit||n.reverseVerticalOrbit?u.phi+=e:u.phi-=e}let j=(()=>{let e=new B;return function(t,n){e.setFromMatrixColumn(n,0),e.multiplyScalar(-t),f.add(e)}})(),M=(()=>{let e=new B;return function(t,r){n.screenSpacePanning===!0?e.setFromMatrixColumn(r,1):(e.setFromMatrixColumn(r,0),e.crossVectors(n.object.up,e)),e.multiplyScalar(t),f.add(e)}})(),N=(()=>{let e=new B;return function(t,r){let i=n.domElement;if(i&&n.object instanceof Ht&&n.object.isPerspectiveCamera){let a=n.object.position;e.copy(a).sub(n.target);let o=e.length();o*=Math.tan(n.object.fov/2*Math.PI/180),j(2*t*o/i.clientHeight,n.object.matrix),M(2*r*o/i.clientHeight,n.object.matrix)}else i&&n.object instanceof Ke&&n.object.isOrthographicCamera?(j(t*(n.object.right-n.object.left)/n.object.zoom/i.clientWidth,n.object.matrix),M(r*(n.object.top-n.object.bottom)/n.object.zoom/i.clientHeight,n.object.matrix)):(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.`),n.enablePan=!1)}})();function ee(e){n.object instanceof Ht&&n.object.isPerspectiveCamera||n.object instanceof Ke&&n.object.isOrthographicCamera?d=e:(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.`),n.enableZoom=!1)}function P(e){ee(d/e)}function F(e){ee(d*e)}function I(e){if(!n.zoomToCursor||!n.domElement)return;w=!0;let t=n.domElement.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top,a=t.width,o=t.height;C.x=r/a*2-1,C.y=-(i/o)*2+1,S.set(C.x,C.y,1).unproject(n.object).sub(n.object.position).normalize()}function te(e){return Math.max(n.minDistance,Math.min(n.maxDistance,e))}function L(e){p.set(e.clientX,e.clientY)}function R(e){I(e),y.set(e.clientX,e.clientY)}function ne(e){g.set(e.clientX,e.clientY)}function z(e){m.set(e.clientX,e.clientY),h.subVectors(m,p).multiplyScalar(n.rotateSpeed);let t=n.domElement;t&&(k(2*Math.PI*h.x/t.clientHeight),A(2*Math.PI*h.y/t.clientHeight)),p.copy(m),n.update()}function re(e){b.set(e.clientX,e.clientY),x.subVectors(b,y),x.y>0?P(O()):x.y<0&&F(O()),y.copy(b),n.update()}function ie(e){_.set(e.clientX,e.clientY),v.subVectors(_,g).multiplyScalar(n.panSpeed),N(v.x,v.y),g.copy(_),n.update()}function ae(e){I(e),e.deltaY<0?F(O()):e.deltaY>0&&P(O()),n.update()}function oe(e){let t=!1;switch(e.code){case n.keys.UP:N(0,n.keyPanSpeed),t=!0;break;case n.keys.BOTTOM:N(0,-n.keyPanSpeed),t=!0;break;case n.keys.LEFT:N(n.keyPanSpeed,0),t=!0;break;case n.keys.RIGHT:N(-n.keyPanSpeed,0),t=!0;break}t&&(e.preventDefault(),n.update())}function se(){if(T.length==1)p.set(T[0].pageX,T[0].pageY);else{let e=.5*(T[0].pageX+T[1].pageX),t=.5*(T[0].pageY+T[1].pageY);p.set(e,t)}}function ce(){if(T.length==1)g.set(T[0].pageX,T[0].pageY);else{let e=.5*(T[0].pageX+T[1].pageX),t=.5*(T[0].pageY+T[1].pageY);g.set(e,t)}}function le(){let e=T[0].pageX-T[1].pageX,t=T[0].pageY-T[1].pageY,n=Math.sqrt(e*e+t*t);y.set(0,n)}function de(){n.enableZoom&&le(),n.enablePan&&ce()}function fe(){n.enableZoom&&le(),n.enableRotate&&se()}function pe(e){if(T.length==1)m.set(e.pageX,e.pageY);else{let t=je(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);m.set(n,r)}h.subVectors(m,p).multiplyScalar(n.rotateSpeed);let t=n.domElement;t&&(k(2*Math.PI*h.x/t.clientHeight),A(2*Math.PI*h.y/t.clientHeight)),p.copy(m)}function me(e){if(T.length==1)_.set(e.pageX,e.pageY);else{let t=je(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);_.set(n,r)}v.subVectors(_,g).multiplyScalar(n.panSpeed),N(v.x,v.y),g.copy(_)}function he(e){let t=je(e),r=e.pageX-t.x,i=e.pageY-t.y,a=Math.sqrt(r*r+i*i);b.set(0,a),x.set(0,(b.y/y.y)**+n.zoomSpeed),P(x.y),y.copy(b)}function ge(e){n.enableZoom&&he(e),n.enablePan&&me(e)}function _e(e){n.enableZoom&&he(e),n.enableRotate&&pe(e)}function ve(e){var t,r;n.enabled!==!1&&(T.length===0&&((t=n.domElement)==null||t.ownerDocument.addEventListener(`pointermove`,ye),(r=n.domElement)==null||r.ownerDocument.addEventListener(`pointerup`,be)),Oe(e),e.pointerType===`touch`?Te(e):xe(e))}function ye(e){n.enabled!==!1&&(e.pointerType===`touch`?Ee(e):Se(e))}function be(e){var t,r,i;ke(e),T.length===0&&((t=n.domElement)==null||t.releasePointerCapture(e.pointerId),(r=n.domElement)==null||r.ownerDocument.removeEventListener(`pointermove`,ye),(i=n.domElement)==null||i.ownerDocument.removeEventListener(`pointerup`,be)),n.dispatchEvent(a),s=o.NONE}function xe(e){let t;switch(e.button){case 0:t=n.mouseButtons.LEFT;break;case 1:t=n.mouseButtons.MIDDLE;break;case 2:t=n.mouseButtons.RIGHT;break;default:t=-1}switch(t){case ut.DOLLY:if(n.enableZoom===!1)return;R(e),s=o.DOLLY;break;case ut.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(n.enablePan===!1)return;ne(e),s=o.PAN}else{if(n.enableRotate===!1)return;L(e),s=o.ROTATE}break;case ut.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(n.enableRotate===!1)return;L(e),s=o.ROTATE}else{if(n.enablePan===!1)return;ne(e),s=o.PAN}break;default:s=o.NONE}s!==o.NONE&&n.dispatchEvent(i)}function Se(e){if(n.enabled!==!1)switch(s){case o.ROTATE:if(n.enableRotate===!1)return;z(e);break;case o.DOLLY:if(n.enableZoom===!1)return;re(e);break;case o.PAN:if(n.enablePan===!1)return;ie(e);break}}function Ce(e){n.enabled===!1||n.enableZoom===!1||s!==o.NONE&&s!==o.ROTATE||(e.preventDefault(),n.dispatchEvent(i),ae(e),n.dispatchEvent(a))}function we(e){n.enabled===!1||n.enablePan===!1||oe(e)}function Te(e){switch(Ae(e),T.length){case 1:switch(n.touches.ONE){case pt.ROTATE:if(n.enableRotate===!1)return;se(),s=o.TOUCH_ROTATE;break;case pt.PAN:if(n.enablePan===!1)return;ce(),s=o.TOUCH_PAN;break;default:s=o.NONE}break;case 2:switch(n.touches.TWO){case pt.DOLLY_PAN:if(n.enableZoom===!1&&n.enablePan===!1)return;de(),s=o.TOUCH_DOLLY_PAN;break;case pt.DOLLY_ROTATE:if(n.enableZoom===!1&&n.enableRotate===!1)return;fe(),s=o.TOUCH_DOLLY_ROTATE;break;default:s=o.NONE}break;default:s=o.NONE}s!==o.NONE&&n.dispatchEvent(i)}function Ee(e){switch(Ae(e),s){case o.TOUCH_ROTATE:if(n.enableRotate===!1)return;pe(e),n.update();break;case o.TOUCH_PAN:if(n.enablePan===!1)return;me(e),n.update();break;case o.TOUCH_DOLLY_PAN:if(n.enableZoom===!1&&n.enablePan===!1)return;ge(e),n.update();break;case o.TOUCH_DOLLY_ROTATE:if(n.enableZoom===!1&&n.enableRotate===!1)return;_e(e),n.update();break;default:s=o.NONE}}function De(e){n.enabled!==!1&&e.preventDefault()}function Oe(e){T.push(e)}function ke(e){delete E[e.pointerId];for(let t=0;t{F(e),n.update()},this.dollyOut=(e=O())=>{P(e),n.update()},this.getScale=()=>d,this.setScale=e=>{ee(e),n.update()},this.getZoomScale=()=>O(),t!==void 0&&this.connect(t),this.update()}},mV=class extends pV{constructor(e,t){super(e,t),this.screenSpacePanning=!1,this.mouseButtons.LEFT=ut.PAN,this.mouseButtons.RIGHT=ut.ROTATE,this.touches.ONE=pt.PAN,this.touches.TWO=pt.DOLLY_ROTATE}};const hV=new ht,gV={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},_V={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},vV={9728:At,9729:tt,9984:Nt,9985:ot,9986:Rt,9987:gt},yV={33071:Ze,33648:Tt,10497:Ye},bV={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},xV={POSITION:`position`,NORMAL:`normal`,TANGENT:`tangent`,...ez>=152?{TEXCOORD_0:`uv`,TEXCOORD_1:`uv1`,TEXCOORD_2:`uv2`,TEXCOORD_3:`uv3`}:{TEXCOORD_0:`uv`,TEXCOORD_1:`uv2`},COLOR_0:`color`,WEIGHTS_0:`skinWeight`,JOINTS_0:`skinIndex`},SV={scale:`scale`,translation:`position`,rotation:`quaternion`,weights:`morphTargetInfluences`},CV={CUBICSPLINE:void 0,LINEAR:x,STEP:de},wV={OPAQUE:`OPAQUE`,MASK:`MASK`,BLEND:`BLEND`},TV=new se,EV=new B;function DV(e,t,n,r,i,a){let o=2*Math.PI*i/4,s=Math.max(a-2*i,0),c=Math.PI/4;EV.copy(t),EV[r]=0,EV.normalize();let l=.5*o/(o+s),u=1-EV.angleTo(e)/c;return Math.sign(EV[n])===1?u*l:s/(o+s)+l+l*(1-u)}var OV=class extends F{constructor(e=1,t=1,n=1,r=2,i=.1){if(r=r*2+1,i=Math.min(e/2,t/2,n/2,i),super(1,1,1,r,r,r),r===1)return;let a=this.toNonIndexed();this.index=null,this.attributes.position=a.attributes.position,this.attributes.normal=a.attributes.normal,this.attributes.uv=a.attributes.uv;let o=new B,s=new B,c=new B(e,t,n).divideScalar(2).subScalar(i),l=this.attributes.position.array,u=this.attributes.normal.array,d=this.attributes.uv.array,f=l.length/6,p=new B,m=.5/r;for(let r=0,a=0;rt in e?PV(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,IV=(e,t,n)=>(FV(e,typeof t==`symbol`?t:t+``,n),n),LV=class extends we{constructor(e){super(e)}load(e,t,n,r){let i=new jt(this.manager);i.setPath(this.path),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials),i.load(e,e=>{if(typeof e!=`string`)throw Error(`unsupported data type`);let n=JSON.parse(e),r=this.parse(n);t&&t(r)},n,r)}loadAsync(e,t){return super.loadAsync(e,t)}parse(e){return new RV(e)}},RV=class{constructor(e){IV(this,`data`),this.data=e}generateShapes(e,t=100,n){let r=[],i={letterSpacing:0,lineHeight:1,...n},a=zV(e,t,this.data,i);for(let e=0,t=a.length;e(a=c.indexOf(n))&&o=e.byteLength||!(l=r(e)))&&t(1,`no header found`),(u=l.match(n))||t(3,`bad initial token`),c.valid|=1,c.programtype=u[1],c.string+=l+` +`;l=r(e),l!==!1;){if(c.string+=l+` +`,l.charAt(0)===`#`){c.comments+=l+` +`;continue}if((u=l.match(i))&&(c.gamma=parseFloat(u[1])),(u=l.match(a))&&(c.exposure=parseFloat(u[1])),(u=l.match(o))&&(c.valid|=2,c.format=u[1]),(u=l.match(s))&&(c.valid|=4,c.height=parseInt(u[1],10),c.width=parseInt(u[2],10)),c.valid&2&&c.valid&4)break}return c.valid&2||t(3,`missing format specifier`),c.valid&4||t(3,`missing image size specifier`),c},a=function(e,n,r){let i=n;if(i<8||i>32767||e[0]!==2||e[1]!==2||e[2]&128)return new Uint8Array(e);i!==(e[2]<<8|e[3])&&t(3,`wrong scanline width`);let a=new Uint8Array(4*n*r);a.length||t(4,`unable to allocate buffer space`);let o=0,s=0,c=4*i,l=new Uint8Array(4),u=new Uint8Array(c),d=r;for(;d>0&&se.byteLength&&t(1),l[0]=e[s++],l[1]=e[s++],l[2]=e[s++],l[3]=e[s++],(l[0]!=2||l[1]!=2||(l[2]<<8|l[3])!=i)&&t(3,`bad rgbe scanline format`);let n=0,r;for(;n128;if(i&&(r-=128),(r===0||n+r>c)&&t(3,`bad scanline data`),i){let t=e[s++];for(let e=0;e0?F.copy(k[k.length-1]):F.identity())}function r(e){let t=new ce,n=new He,r=new He,i=new He,o=!0,s=!1,c=e.getAttribute(`d`);if(c===``||c===`none`)return null;let l=c.match(/[a-df-z][^a-df-z]*/gi);for(let e=0,c=l.length;e0&&(n.copy(i),t.currentPath.currentPoint.copy(n),o=!0);break;default:console.warn(c)}s=!1}return t}function i(e){if(!(!e.sheet||!e.sheet.cssRules||!e.sheet.cssRules.length))for(let t=0;te.trim());for(let e=0;ee!==``));O[r[e]]=Object.assign(O[r[e]]||{},t)}}}function a(e,t,n,r,i,a,s,c){if(t==0||n==0){e.lineTo(c.x,c.y);return}r=r*Math.PI/180,t=Math.abs(t),n=Math.abs(n);let l=(s.x-c.x)/2,u=(s.y-c.y)/2,d=Math.cos(r)*l+Math.sin(r)*u,f=-Math.sin(r)*l+Math.cos(r)*u,p=t*t,m=n*n,h=d*d,g=f*f,_=h/p+g/m;if(_>1){let e=Math.sqrt(_);t=e*t,n=e*n,p=t*t,m=n*n}let v=p*g+m*h,y=(p*m-v)/v,b=Math.sqrt(Math.max(0,y));i===a&&(b=-b);let x=b*t*f/n,S=-b*n*d/t,C=Math.cos(r)*x-Math.sin(r)*S+(s.x+c.x)/2,w=Math.sin(r)*x+Math.cos(r)*S+(s.y+c.y)/2,T=o(1,0,(d-x)/t,(f-S)/n),E=o((d-x)/t,(f-S)/n,(-d-x)/t,(-f-S)/n)%(Math.PI*2);e.currentPath.absellipse(C,w,t,n,T,T+E,a===0,r)}function o(e,t,n,r){let i=e*n+t*r,a=Math.sqrt(e*e+t*t)*Math.sqrt(n*n+r*r),o=Math.acos(Math.max(-1,Math.min(1,i/a)));return e*r-t*n<0&&(o=-o),o}function s(e){let t=v(e.getAttribute(`x`)||0),n=v(e.getAttribute(`y`)||0),r=v(e.getAttribute(`rx`)||e.getAttribute(`ry`)||0),i=v(e.getAttribute(`ry`)||e.getAttribute(`rx`)||0),a=v(e.getAttribute(`width`)),o=v(e.getAttribute(`height`)),s=.448084975506,c=new ce;return c.moveTo(t+r,n),c.lineTo(t+a-r,n),(r!==0||i!==0)&&c.bezierCurveTo(t+a-r*s,n,t+a,n+i*s,t+a,n+i),c.lineTo(t+a,n+o-i),(r!==0||i!==0)&&c.bezierCurveTo(t+a,n+o-i*s,t+a-r*s,n+o,t+a-r,n+o),c.lineTo(t+r,n+o),(r!==0||i!==0)&&c.bezierCurveTo(t+r*s,n+o,t,n+o-i*s,t,n+o-i),c.lineTo(t,n+i),(r!==0||i!==0)&&c.bezierCurveTo(t,n+i*s,t+r*s,n,t+r,n),c}function c(e){function t(e,t,n){let a=v(t),o=v(n);i===0?r.moveTo(a,o):r.lineTo(a,o),i++}let n=/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,r=new ce,i=0;return e.getAttribute(`points`).replace(n,t),r.currentPath.autoClose=!0,r}function l(e){function t(e,t,n){let a=v(t),o=v(n);i===0?r.moveTo(a,o):r.lineTo(a,o),i++}let n=/([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g,r=new ce,i=0;return e.getAttribute(`points`).replace(n,t),r.currentPath.autoClose=!1,r}function u(e){let t=v(e.getAttribute(`cx`)||0),n=v(e.getAttribute(`cy`)||0),r=v(e.getAttribute(`r`)||0),i=new Xe;i.absarc(t,n,r,0,Math.PI*2);let a=new ce;return a.subPaths.push(i),a}function d(e){let t=v(e.getAttribute(`cx`)||0),n=v(e.getAttribute(`cy`)||0),r=v(e.getAttribute(`rx`)||0),i=v(e.getAttribute(`ry`)||0),a=new Xe;a.absellipse(t,n,r,i,0,Math.PI*2);let o=new ce;return o.subPaths.push(a),o}function f(e){let t=v(e.getAttribute(`x1`)||0),n=v(e.getAttribute(`y1`)||0),r=v(e.getAttribute(`x2`)||0),i=v(e.getAttribute(`y2`)||0),a=new ce;return a.moveTo(t,n),a.lineTo(r,i),a.currentPath.autoClose=!1,a}function p(e,t){t=Object.assign({},t);let n={};if(e.hasAttribute(`class`)){let t=e.getAttribute(`class`).split(/\s/).filter(Boolean).map(e=>e.trim());for(let e=0;e0&&t.premultiply(k[k.length-1]),F.copy(t),k.push(t),t}function b(e){let t=new zt,n=A;if(e.nodeName===`use`&&(e.hasAttribute(`x`)||e.hasAttribute(`y`))){let n=v(e.getAttribute(`x`)),r=v(e.getAttribute(`y`));t.translate(n,r)}if(e.hasAttribute(`transform`)){let r=e.getAttribute(`transform`).split(`)`);for(let e=r.length-1;e>=0;e--){let i=r[e].trim();if(i===``)continue;let a=i.indexOf(`(`),o=i.length;if(a>0&&a=1){let e=t[0],r=0;t.length>=2&&(r=t[1]),n.translate(e,r)}break;case`rotate`:if(t.length>=1){let e=0,r=0,i=0;e=t[0]*Math.PI/180,t.length>=3&&(r=t[1],i=t[2]),j.makeTranslation(-r,-i),M.makeRotation(e),N.multiplyMatrices(M,j),j.makeTranslation(r,i),n.multiplyMatrices(j,N)}break;case`scale`:if(t.length>=1){let e=t[0],r=e;t.length>=2&&(r=t[1]),n.scale(e,r)}break;case`skewX`:t.length===1&&n.set(1,Math.tan(t[0]*Math.PI/180),0,0,1,0,0,0,1);break;case`skewY`:t.length===1&&n.set(1,0,0,Math.tan(t[0]*Math.PI/180),1,0,0,0,1);break;case`matrix`:t.length===6&&n.set(t[0],t[2],t[4],t[1],t[3],t[5],0,0,1);break}}t.premultiply(n)}}return t}function x(e,t){function n(e){P.set(e.x,e.y,1).applyMatrix3(t),e.set(P.x,P.y)}function r(e){let n=e.xRadius,r=e.yRadius,i=Math.cos(e.aRotation),a=Math.sin(e.aRotation),o=new B(n*i,n*a,0),s=new B(-r*a,r*i,0),c=o.applyMatrix3(t),l=s.applyMatrix3(t),u=A.set(c.x,l.x,0,c.y,l.y,0,0,0,1),d=j.copy(u).invert(),f=M.copy(d).transpose().multiply(d).elements,p=E(f[0],f[1],f[4]),m=Math.sqrt(p.rt1),h=Math.sqrt(p.rt2);if(e.xRadius=1/m,e.yRadius=1/h,e.aRotation=Math.atan2(p.sn,p.cs),!((e.aEndAngle-e.aStartAngle)%(2*Math.PI)<2**-52)){let n=j.set(m,0,0,0,h,0,0,0,1),r=M.set(p.cs,p.sn,0,-p.sn,p.cs,0,0,0,1),i=n.multiply(r).multiply(u),a=e=>{let{x:t,y:n}=new B(Math.cos(e),Math.sin(e),0).applyMatrix3(i);return Math.atan2(n,t)};e.aStartAngle=a(e.aStartAngle),e.aEndAngle=a(e.aEndAngle),S(t)&&(e.aClockwise=!e.aClockwise)}}function i(e){let n=w(t),r=T(t);e.xRadius*=n,e.yRadius*=r;let i=n>2**-52?Math.atan2(t.elements[1],t.elements[0]):Math.atan2(-t.elements[3],t.elements[4]);e.aRotation+=i,S(t)&&(e.aStartAngle*=-1,e.aEndAngle*=-1,e.aClockwise=!e.aClockwise)}let a=e.subPaths;for(let e=0,o=a.length;e2**-52}function w(e){let t=e.elements;return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function T(e){let t=e.elements;return Math.sqrt(t[3]*t[3]+t[4]*t[4])}function E(e,t,n){let r,i,a,o,s,c=e+n,l=e-n,u=Math.sqrt(l*l+4*t*t);return c>0?(r=.5*(c+u),s=1/r,i=e*s*n-t*s*t):c<0?i=.5*(c-u):(r=.5*u,i=-.5*u),a=l>0?l+u:l-u,Math.abs(a)>2*Math.abs(t)?(s=-2*t/a,o=1/Math.sqrt(1+s*s),a=s*o):Math.abs(t)===0?(a=1,o=0):(s=-.5*a/t,a=1/Math.sqrt(1+s*s),o=s*a),l>0&&(s=a,a=-o,o=s),{rt1:r,rt2:i,cs:a,sn:o}}let D=[],O={},k=[],A=new zt,j=new zt,M=new zt,N=new zt,ee=new He,P=new B,F=new zt,I=new DOMParser().parseFromString(e,`image/svg+xml`);return n(I.documentElement,{fill:`#000`,fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeLineJoin:`miter`,strokeLineCap:`butt`,strokeMiterLimit:4}),{paths:D,xml:I.documentElement}}static createShapes(e){let t={ORIGIN:0,DESTINATION:1,BETWEEN:2,LEFT:3,RIGHT:4,BEHIND:5,BEYOND:6},n={loc:t.ORIGIN,t:0};function r(e,r,a,o){let s=e.x,c=r.x,l=a.x,u=o.x,d=e.y,f=r.y,p=a.y,m=o.y,h=(u-l)*(d-p)-(m-p)*(s-l),g=(c-s)*(d-p)-(f-d)*(s-l),_=(m-p)*(c-s)-(u-l)*(f-d),v=h/_,y=g/_;if(_===0&&h!==0||v<=0||v>=1||y<0||y>1)return null;if(h===0&&_===0){for(let l=0;l<2;l++)if(i(l===0?a:o,e,r),n.loc==t.ORIGIN){let e=l===0?a:o;return{x:e.x,y:e.y,t:n.t}}else if(n.loc==t.BETWEEN){let e=+(s+n.t*(c-s)).toPrecision(10),t=+(d+n.t*(f-d)).toPrecision(10);return{x:e,y:t,t:n.t}}return null}else{for(let s=0;s<2;s++)if(i(s===0?a:o,e,r),n.loc==t.ORIGIN){let e=s===0?a:o;return{x:e.x,y:e.y,t:n.t}}let l=+(s+v*(c-s)).toPrecision(10),u=+(d+v*(f-d)).toPrecision(10);return{x:l,y:u,t:v}}}function i(e,r,i){let a=i.x-r.x,o=i.y-r.y,s=e.x-r.x,c=e.y-r.y,l=a*c-s*o;if(e.x===r.x&&e.y===r.y){n.loc=t.ORIGIN,n.t=0;return}if(e.x===i.x&&e.y===i.y){n.loc=t.DESTINATION,n.t=1;return}if(l<-(2**-52)){n.loc=t.LEFT;return}if(l>2**-52){n.loc=t.RIGHT;return}if(a*s<0||o*c<0){n.loc=t.BEHIND;return}if(Math.sqrt(a*a+o*o)e.t<=l.t+2**-52&&e.t>=l.t-2**-52)===void 0&&(n.push(l),i.push(new He(l.x,l.y)))}}return i}function o(e,t,n){let r=new He;t.getCenter(r);let i=[];return n.forEach(t=>{t.boundingBox.containsPoint(r)&&a(e,t.points).forEach(e=>{i.push({identifier:t.identifier,isCW:t.isCW,point:e})})}),i.sort((e,t)=>e.point.x-t.point.x),i}function s(e,t,n,r,i){(i==null||i===``)&&(i=`nonzero`);let a=new He;e.boundingBox.getCenter(a);let s=[new He(n,a.y),new He(r,a.y)],c=o(s,e.boundingBox,t);c.sort((e,t)=>e.point.x-t.point.x);let l=[],u=[];c.forEach(t=>{t.identifier===e.identifier?l.push(t):u.push(t)});let d=l[0].point.x,f=[],p=0;for(;p0&&f[f.length-1]===u[p].identifier?f.pop():f.push(u[p].identifier),p++;if(f.push(e.identifier),i===`evenodd`){let t=f.length%2==0,n=f[f.length-2];return{identifier:e.identifier,isHole:t,for:n}}else if(i===`nonzero`){let n=!0,r=null,i=null;for(let e=0;e{let t=e.getPoints(),n=-999999999,r=999999999,i=-999999999,a=999999999;for(let e=0;en&&(n=o.y),o.yi&&(i=o.x),o.x=a&&(c=a-1),{curves:e.curves,points:t,isCW:Pt.isClockWise(t),identifier:-1,boundingBox:new lt(new He(a,r),new He(i,n))}});u=u.filter(e=>e.points.length>1);for(let e=0;es(t,u,c,l,e.userData?e.userData.style.fillRule:void 0)),f=[];return u.forEach(e=>{if(!d[e.identifier].isHole){let t=new De;t.curves=e.curves,d.filter(t=>t.isHole&&t.for===e.identifier).forEach(e=>{let n=u[e.identifier],r=new Xe;r.curves=n.curves,t.holes.push(r)}),f.push(t)}}),f}static getStrokeStyle(e,t,n,r,i){return e=e===void 0?1:e,t=t===void 0?`#000`:t,n=n===void 0?`miter`:n,r=r===void 0?`butt`:r,i=i===void 0?4:i,{strokeColor:t,strokeWidth:e,strokeLineJoin:n,strokeLineCap:r,strokeMiterLimit:i}}static pointsToStroke(t,n,r,i){let a=[],o=[],s=[];if(e.pointsToStrokeWithBuffers(t,n,r,i,a,o,s)===0)return null;let c=new Fe;return c.setAttribute(`position`,new Mt(a,3)),c.setAttribute(`normal`,new Mt(o,3)),c.setAttribute(`uv`,new Mt(s,2)),c}static pointsToStrokeWithBuffers(e,t,n,r,i,a,o,s){let c=new He,l=new He,u=new He,d=new He,f=new He,p=new He,m=new He,h=new He,g=new He,_=new He,v=new He,y=new He,b=new He,x=new He,S=new He,C=new He,w=new He;n=n===void 0?12:n,r=r===void 0?.001:r,s=s===void 0?0:s,e=ce(e);let T=e.length;if(T<2)return 0;let E=e[0].equals(e[T-1]),D,O=e[0],k,A=t.strokeWidth/2,j=1/(T-1),M=0,N,ee,P,F,I=!1,te=0,L=s*3,R=s*2;ne(e[0],e[1],c).multiplyScalar(A),h.copy(e[0]).sub(c),g.copy(e[0]).add(c),_.copy(h),v.copy(g);for(let n=1;n2**-52){let n=A/e;u.multiplyScalar(-n),d.subVectors(D,O),f.copy(d).setLength(n).add(u),C.copy(f).negate();let r=f.length(),i=d.length();d.divideScalar(i),p.subVectors(k,D);let a=p.length();switch(p.divideScalar(a),d.dot(C)=r&&n.push(e[t]);return n.push(e[e.length-1]),n}}};const WV=new xt,GV=new B;var KV=class extends ne{constructor(){super(),this.isLineSegmentsGeometry=!0,this.type=`LineSegmentsGeometry`;let e=[-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],t=[-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],n=[0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5];this.setIndex(n),this.setAttribute(`position`,new Mt(e,3)),this.setAttribute(`uv`,new Mt(t,2))}applyMatrix4(e){let t=this.attributes.instanceStart,n=this.attributes.instanceEnd;return t!==void 0&&(t.applyMatrix4(e),n.applyMatrix4(e),t.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}setPositions(e){let t;e instanceof Float32Array?t=e:Array.isArray(e)&&(t=new Float32Array(e));let n=new P(t,6,1);return this.setAttribute(`instanceStart`,new ee(n,3,0)),this.setAttribute(`instanceEnd`,new ee(n,3,3)),this.computeBoundingBox(),this.computeBoundingSphere(),this}setColors(e,t=3){let n;e instanceof Float32Array?n=e:Array.isArray(e)&&(n=new Float32Array(e));let r=new P(n,t*2,1);return this.setAttribute(`instanceColorStart`,new ee(r,t,0)),this.setAttribute(`instanceColorEnd`,new ee(r,t,t)),this}fromWireframeGeometry(e){return this.setPositions(e.attributes.position.array),this}fromEdgesGeometry(e){return this.setPositions(e.attributes.position.array),this}fromMesh(e){return this.fromWireframeGeometry(new bt(e.geometry)),this}fromLineSegments(e){let t=e.geometry;return this.setPositions(t.attributes.position.array),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new xt);let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;e!==void 0&&t!==void 0&&(this.boundingBox.setFromBufferAttribute(e),WV.setFromBufferAttribute(t),this.boundingBox.union(WV))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new st),this.boundingBox===null&&this.computeBoundingBox();let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;if(e!==void 0&&t!==void 0){let n=this.boundingSphere.center;this.boundingBox.getCenter(n);let r=0;for(let i=0,a=e.count;i + #include + #include + #include + + uniform float linewidth; + uniform vec2 resolution; + + attribute vec3 instanceStart; + attribute vec3 instanceEnd; + + #ifdef USE_COLOR + #ifdef USE_LINE_COLOR_ALPHA + varying vec4 vLineColor; + attribute vec4 instanceColorStart; + attribute vec4 instanceColorEnd; + #else + varying vec3 vLineColor; + attribute vec3 instanceColorStart; + attribute vec3 instanceColorEnd; + #endif + #endif + + #ifdef WORLD_UNITS + + varying vec4 worldPos; + varying vec3 worldStart; + varying vec3 worldEnd; + + #ifdef USE_DASH + + varying vec2 vUv; + + #endif + + #else + + varying vec2 vUv; + + #endif + + #ifdef USE_DASH + + uniform float dashScale; + attribute float instanceDistanceStart; + attribute float instanceDistanceEnd; + varying float vLineDistance; + + #endif + + void trimSegment( const in vec4 start, inout vec4 end ) { + + // trim end segment so it terminates between the camera plane and the near plane + + // conservative estimate of the near plane + float a = projectionMatrix[ 2 ][ 2 ]; // 3nd entry in 3th column + float b = projectionMatrix[ 3 ][ 2 ]; // 3nd entry in 4th column + float nearEstimate = - 0.5 * b / a; + + float alpha = ( nearEstimate - start.z ) / ( end.z - start.z ); + + end.xyz = mix( start.xyz, end.xyz, alpha ); + + } + + void main() { + + #ifdef USE_COLOR + + vLineColor = ( position.y < 0.5 ) ? instanceColorStart : instanceColorEnd; + + #endif + + #ifdef USE_DASH + + vLineDistance = ( position.y < 0.5 ) ? dashScale * instanceDistanceStart : dashScale * instanceDistanceEnd; + vUv = uv; + + #endif + + float aspect = resolution.x / resolution.y; + + // camera space + vec4 start = modelViewMatrix * vec4( instanceStart, 1.0 ); + vec4 end = modelViewMatrix * vec4( instanceEnd, 1.0 ); + + #ifdef WORLD_UNITS + + worldStart = start.xyz; + worldEnd = end.xyz; + + #else + + vUv = uv; + + #endif + + // special case for perspective projection, and segments that terminate either in, or behind, the camera plane + // clearly the gpu firmware has a way of addressing this issue when projecting into ndc space + // but we need to perform ndc-space calculations in the shader, so we must address this issue directly + // perhaps there is a more elegant solution -- WestLangley + + bool perspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 ); // 4th entry in the 3rd column + + if ( perspective ) { + + if ( start.z < 0.0 && end.z >= 0.0 ) { + + trimSegment( start, end ); + + } else if ( end.z < 0.0 && start.z >= 0.0 ) { + + trimSegment( end, start ); + + } + + } + + // clip space + vec4 clipStart = projectionMatrix * start; + vec4 clipEnd = projectionMatrix * end; + + // ndc space + vec3 ndcStart = clipStart.xyz / clipStart.w; + vec3 ndcEnd = clipEnd.xyz / clipEnd.w; + + // direction + vec2 dir = ndcEnd.xy - ndcStart.xy; + + // account for clip-space aspect ratio + dir.x *= aspect; + dir = normalize( dir ); + + #ifdef WORLD_UNITS + + // get the offset direction as perpendicular to the view vector + vec3 worldDir = normalize( end.xyz - start.xyz ); + vec3 offset; + if ( position.y < 0.5 ) { + + offset = normalize( cross( start.xyz, worldDir ) ); + + } else { + + offset = normalize( cross( end.xyz, worldDir ) ); + + } + + // sign flip + if ( position.x < 0.0 ) offset *= - 1.0; + + float forwardOffset = dot( worldDir, vec3( 0.0, 0.0, 1.0 ) ); + + // don't extend the line if we're rendering dashes because we + // won't be rendering the endcaps + #ifndef USE_DASH + + // extend the line bounds to encompass endcaps + start.xyz += - worldDir * linewidth * 0.5; + end.xyz += worldDir * linewidth * 0.5; + + // shift the position of the quad so it hugs the forward edge of the line + offset.xy -= dir * forwardOffset; + offset.z += 0.5; + + #endif + + // endcaps + if ( position.y > 1.0 || position.y < 0.0 ) { + + offset.xy += dir * 2.0 * forwardOffset; + + } + + // adjust for linewidth + offset *= linewidth * 0.5; + + // set the world position + worldPos = ( position.y < 0.5 ) ? start : end; + worldPos.xyz += offset; + + // project the worldpos + vec4 clip = projectionMatrix * worldPos; + + // shift the depth of the projected points so the line + // segments overlap neatly + vec3 clipPose = ( position.y < 0.5 ) ? ndcStart : ndcEnd; + clip.z = clipPose.z * clip.w; + + #else + + vec2 offset = vec2( dir.y, - dir.x ); + // undo aspect ratio adjustment + dir.x /= aspect; + offset.x /= aspect; + + // sign flip + if ( position.x < 0.0 ) offset *= - 1.0; + + // endcaps + if ( position.y < 0.0 ) { + + offset += - dir; + + } else if ( position.y > 1.0 ) { + + offset += dir; + + } + + // adjust for linewidth + offset *= linewidth; + + // adjust for clip-space to screen-space conversion // maybe resolution should be based on viewport ... + offset /= resolution.y; + + // select end + vec4 clip = ( position.y < 0.5 ) ? clipStart : clipEnd; + + // back to clip space + offset *= clip.w; + + clip.xy += offset; + + #endif + + gl_Position = clip; + + vec4 mvPosition = ( position.y < 0.5 ) ? start : end; // this is an approximation + + #include + #include + #include + + } + `,fragmentShader:` + uniform vec3 diffuse; + uniform float opacity; + uniform float linewidth; + + #ifdef USE_DASH + + uniform float dashOffset; + uniform float dashSize; + uniform float gapSize; + + #endif + + varying float vLineDistance; + + #ifdef WORLD_UNITS + + varying vec4 worldPos; + varying vec3 worldStart; + varying vec3 worldEnd; + + #ifdef USE_DASH + + varying vec2 vUv; + + #endif + + #else + + varying vec2 vUv; + + #endif + + #include + #include + #include + #include + + #ifdef USE_COLOR + #ifdef USE_LINE_COLOR_ALPHA + varying vec4 vLineColor; + #else + varying vec3 vLineColor; + #endif + #endif + + vec2 closestLineToLine(vec3 p1, vec3 p2, vec3 p3, vec3 p4) { + + float mua; + float mub; + + vec3 p13 = p1 - p3; + vec3 p43 = p4 - p3; + + vec3 p21 = p2 - p1; + + float d1343 = dot( p13, p43 ); + float d4321 = dot( p43, p21 ); + float d1321 = dot( p13, p21 ); + float d4343 = dot( p43, p43 ); + float d2121 = dot( p21, p21 ); + + float denom = d2121 * d4343 - d4321 * d4321; + + float numer = d1343 * d4321 - d1321 * d4343; + + mua = numer / denom; + mua = clamp( mua, 0.0, 1.0 ); + mub = ( d1343 + d4321 * ( mua ) ) / d4343; + mub = clamp( mub, 0.0, 1.0 ); + + return vec2( mua, mub ); + + } + + void main() { + + #include + + #ifdef USE_DASH + + if ( vUv.y < - 1.0 || vUv.y > 1.0 ) discard; // discard endcaps + + if ( mod( vLineDistance + dashOffset, dashSize + gapSize ) > dashSize ) discard; // todo - FIX + + #endif + + float alpha = opacity; + + #ifdef WORLD_UNITS + + // Find the closest points on the view ray and the line segment + vec3 rayEnd = normalize( worldPos.xyz ) * 1e5; + vec3 lineDir = worldEnd - worldStart; + vec2 params = closestLineToLine( worldStart, worldEnd, vec3( 0.0, 0.0, 0.0 ), rayEnd ); + + vec3 p1 = worldStart + lineDir * params.x; + vec3 p2 = rayEnd * params.y; + vec3 delta = p1 - p2; + float len = length( delta ); + float norm = len / linewidth; + + #ifndef USE_DASH + + #ifdef USE_ALPHA_TO_COVERAGE + + float dnorm = fwidth( norm ); + alpha = 1.0 - smoothstep( 0.5 - dnorm, 0.5 + dnorm, norm ); + + #else + + if ( norm > 0.5 ) { + + discard; + + } + + #endif + + #endif + + #else + + #ifdef USE_ALPHA_TO_COVERAGE + + // artifacts appear on some hardware if a derivative is taken within a conditional + float a = vUv.x; + float b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0; + float len2 = a * a + b * b; + float dlen = fwidth( len2 ); + + if ( abs( vUv.y ) > 1.0 ) { + + alpha = 1.0 - smoothstep( 1.0 - dlen, 1.0 + dlen, len2 ); + + } + + #else + + if ( abs( vUv.y ) > 1.0 ) { + + float a = vUv.x; + float b = ( vUv.y > 0.0 ) ? vUv.y - 1.0 : vUv.y + 1.0; + float len2 = a * a + b * b; + + if ( len2 > 1.0 ) discard; + + } + + #endif + + #endif + + vec4 diffuseColor = vec4( diffuse, alpha ); + #ifdef USE_COLOR + #ifdef USE_LINE_COLOR_ALPHA + diffuseColor *= vLineColor; + #else + diffuseColor.rgb *= vLineColor; + #endif + #endif + + #include + + gl_FragColor = diffuseColor; + + #include + #include <${parseInt(nt.replace(/\D+/g,``))>=154?`colorspace_fragment`:`encodings_fragment`}> + #include + #include + + } + `,clipping:!0}),this.isLineMaterial=!0,this.onBeforeCompile=function(){this.transparent?this.defines.USE_LINE_COLOR_ALPHA=`1`:delete this.defines.USE_LINE_COLOR_ALPHA},Object.defineProperties(this,{color:{enumerable:!0,get:function(){return this.uniforms.diffuse.value},set:function(e){this.uniforms.diffuse.value=e}},worldUnits:{enumerable:!0,get:function(){return`WORLD_UNITS`in this.defines},set:function(e){e===!0?this.defines.WORLD_UNITS=``:delete this.defines.WORLD_UNITS}},linewidth:{enumerable:!0,get:function(){return this.uniforms.linewidth.value},set:function(e){this.uniforms.linewidth.value=e}},dashed:{enumerable:!0,get:function(){return`USE_DASH`in this.defines},set(e){!!e!=`USE_DASH`in this.defines&&(this.needsUpdate=!0),e===!0?this.defines.USE_DASH=``:delete this.defines.USE_DASH}},dashScale:{enumerable:!0,get:function(){return this.uniforms.dashScale.value},set:function(e){this.uniforms.dashScale.value=e}},dashSize:{enumerable:!0,get:function(){return this.uniforms.dashSize.value},set:function(e){this.uniforms.dashSize.value=e}},dashOffset:{enumerable:!0,get:function(){return this.uniforms.dashOffset.value},set:function(e){this.uniforms.dashOffset.value=e}},gapSize:{enumerable:!0,get:function(){return this.uniforms.gapSize.value},set:function(e){this.uniforms.gapSize.value=e}},opacity:{enumerable:!0,get:function(){return this.uniforms.opacity.value},set:function(e){this.uniforms.opacity.value=e}},resolution:{enumerable:!0,get:function(){return this.uniforms.resolution.value},set:function(e){this.uniforms.resolution.value.copy(e)}},alphaToCoverage:{enumerable:!0,get:function(){return`USE_ALPHA_TO_COVERAGE`in this.defines},set:function(e){!!e!=`USE_ALPHA_TO_COVERAGE`in this.defines&&(this.needsUpdate=!0),e===!0?(this.defines.USE_ALPHA_TO_COVERAGE=``,this.extensions.derivatives=!0):(delete this.defines.USE_ALPHA_TO_COVERAGE,this.extensions.derivatives=!1)}}}),this.setValues(e)}};const YV=new Ae,XV=new B,ZV=new B,QV=new Ae,$V=new Ae,eH=new Ae,tH=new B,nH=new se,rH=new Re,iH=new B,aH=new xt,oH=new st,sH=new Ae;let cH,lH;function uH(e,t,n){return sH.set(0,0,-t,1).applyMatrix4(e.projectionMatrix),sH.multiplyScalar(1/sH.w),sH.x=lH/n.width,sH.y=lH/n.height,sH.applyMatrix4(e.projectionMatrixInverse),sH.multiplyScalar(1/sH.w),Math.abs(Math.max(sH.x,sH.y))}function dH(e,t){let n=e.matrixWorld,r=e.geometry,i=r.attributes.instanceStart,a=r.attributes.instanceEnd,o=Math.min(r.instanceCount,i.count);for(let r=0,s=o;ru&&$V.z>u)continue;if(QV.z>u){let e=QV.z-$V.z,t=(QV.z-u)/e;QV.lerp($V,t)}else if($V.z>u){let e=$V.z-QV.z,t=($V.z-u)/e;$V.lerp(QV,t)}QV.applyMatrix4(r),$V.applyMatrix4(r),QV.multiplyScalar(1/QV.w),$V.multiplyScalar(1/$V.w),QV.x*=i.x/2,QV.y*=i.y/2,$V.x*=i.x/2,$V.y*=i.y/2,rH.start.copy(QV),rH.start.z=0,rH.end.copy($V),rH.end.z=0;let o=rH.closestPointToPointParameter(tH,!0);rH.at(o,iH);let l=Ie.lerp(QV.z,$V.z,o),d=l>=-1&&l<=1,f=tH.distanceTo(iH)t)),o=Math.min(e.length,i);return a.slice(0,o).sort().map(t=>e[t])}shuffle(e){return e.map(e=>({value:e,sort:this._getNext()})).sort((e,t)=>e.sort-t.sort).map(({value:e})=>e)}getMulberry32(e=0){return e>0&&e<1&&(e=Math.floor(e*2**16)),()=>{e+=1831565813;let t=e;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}}};const UH=[gH,_H,vH,yH,bH],WH=Ie.lerp,GH=(e=0,t=zH)=>{let n=new HH(e).choice(UH);return t.map((t,r)=>{let i=new HH(e*(r*7907+1)+(typeof t.seed==`number`?t.seed:0)),a=i.int(t.length[0],t.length[1]);return Array.from({length:a}).fill(0).map(()=>{let e=n(i.rand());return{texture:i.defaultChoice(t.texture,BH.texture),size:WH(t.size[0],t.size[1],n(1-e)),distance:WH(t.distance[0],t.distance[1],e),color:i.defaultChoice(t.color,BH.color)}})}).flat()},KH=(e,t,n=void 0,r=void 0,i=BH)=>{if(e!==void 0&&e.length>0&&(typeof n==`number`||typeof r<`u`)){let a=GH(n??0,r??zH),o=a.length,s=e.length;return o>=s?a.map((n,r)=>Object.assign(n,t,rObject.assign({},i,n0){let n=Object.assign({},i,t);return e.map(e=>Object.assign({},n,e))}let a=r===void 0||r.length===0?zH:r;return GH(n??0,a).map(e=>Object.assign({},e,t))};function qH(e){return JH(e,(e,t)=>t in BH&&e!==void 0)}function JH(e,t){let n={};return Object.keys(e).forEach(r=>{t(e[r],r)&&(n[r]=e[r])}),n}const YH=Xt({__name:`component`,props:{scale:{default:1},elements:{default:void 0},seed:{default:void 0},seedProps:{default:void 0},color:{default:void 0},distance:{default:void 0},size:{default:void 0},texture:{default:void 0}},setup(e,{expose:t}){let n=e,r=W(),i=W([]),a=W(qH(n));t({instance:r});let o=new Bt,s=new NB,c=[],l=()=>{for(var e,t,n;c.length;)c.pop();(e=r.value)==null||e.children.forEach(e=>{`dispose`in e&&e.dispose()}),(t=r.value)==null||t.remove(...r.value.children),(n=r.value)==null||n.dispose()},u=e=>{if(typeof e.texture==`string`){let t=e.texture;e.texture=o.load(t),e.texture.name=t}return e.color=D(e.color),e},d=()=>{for(let e=i.value.length-1;e{c[t].size=e.size*n.scale})},f=()=>{for(;i.value.length>c.length;){let e={...u(i.value[c.length])};c.push(e),s.addElement(e)}i.value.forEach((e,t)=>{let n=c[t],{texture:r,size:i,distance:a,color:s}=e;if(typeof r==`string`){if(n.texture.name!==r){n.texture.dispose();let e=r;n.texture=o.load(e),n.texture.name=e}}else n.texture!==r&&(n.texture.dispose(),n.texture=r);n.size=i,n.distance=a,n.color=D(s)}),d()};return mn(()=>{l()}),Jt(()=>{var e;(e=r.value)==null||e.add(s),i.value=KH(n.elements,a.value,n.seed,n.seedProps)}),V(()=>[n.color,n.distance,n.size,n.texture],()=>{a.value={color:n.color,distance:n.distance,size:n.size,texture:n.texture}}),V(()=>[a.value,n.elements,n.seed,n.seedProps],()=>{i.value=KH(n.elements,a.value,n.seed,n.seedProps)}),V(()=>n.scale,()=>{d()}),V(()=>i.value,()=>{f()}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`lensflareRef`,ref:r},null,512))}}),XH=Xt({__name:`Levioso`,props:{speed:{default:1},rotationFactor:{default:1},floatFactor:{default:1},range:{default:()=>[-.1,.1]}},setup(e,{expose:t}){let n=e,r=W();t({instance:r});{let e=Math.random()*1e4,{onBeforeRender:t}=T(),i=e;t(({delta:e,invalidate:t})=>{if(!r.value)return;i+=e*n.speed;let a=i*.25,o=r.value;o.rotation.x=Math.cos(a)*.125*n.rotationFactor,o.rotation.y=Math.sin(a)*.125*n.rotationFactor,o.rotation.z=Math.sin(a)*.05*n.rotationFactor,o.position.y=Ie.mapLinear(Math.sin(a),-1,1,n.range[0],n.range[1])*n.floatFactor,t()})}return(e,t)=>(H(),fn(`TresGroup`,Qt(e.$attrs,{ref_key:`groupRef`,ref:r}),[vn(e.$slots,`default`)],16))}}),ZH=[`render-order`],QH=Xt({__name:`component`,props:{id:{default:1},colorWrite:{type:Boolean,default:!0},depthWrite:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,r=W();function i(){var e,t;let i=Array.isArray((e=r.value)?.material)?r.value.material[0]:(t=r.value)?.material;i&&(i.colorWrite=n.colorWrite,i.depthWrite=n.depthWrite,i.stencilWrite=!0,i.stencilRef=n.id,i.stencilFunc=$e,i.stencilFail=ie,i.stencilZFail=ie,i.stencilZPass=ie)}return gn(i),t({instance:r}),(e,t)=>(H(),fn(`TresMesh`,{ref_key:`meshRef`,ref:r,"render-order":-n.id},[vn(e.$slots,`default`)],8,ZH))}}),$H=Xt({__name:`MouseParallax`,props:{disabled:{type:Boolean,default:!1},factor:{default:2.5},ease:{default:.1},local:{type:Boolean,default:!1}},setup(e){let t=e,{camera:n,renderer:r}=ve(),{disabled:i,factor:a,ease:o,local:s}=rn(t),c={};s.value&&(c.target=r.value.domElement,c.type=`client`);let{x:l,y:u}=RR(c),{width:d,height:f}=s.value?MR(r.value.domElement):BR(),p=W(),m=U(),h=U();V([a,o],()=>{m.value=Array.isArray(a.value)?a.value:[a.value,a.value],h.value=Array.isArray(o.value)?o.value:[o.value,o.value]},{immediate:!0});let g=Sn(()=>(l.value/d.value-.5)*m.value[0]),_=Sn(()=>-(u.value/f.value-.5)*m.value[1]),{onBeforeRender:v}=T();return v(({delta:e,invalidate:t})=>{i.value||!p.value||Number.isNaN(g.value)||Number.isNaN(_.value)||(p.value.position.x+=(g.value-p.value.position.x)*h.value[0]*e,p.value.position.y+=(_.value-p.value.position.y)*h.value[1]*e,t())}),V(()=>p.value,e=>e?.add(n.value)),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`cameraGroupRef`,ref:p},null,512))}}),eU=JR({screenspace:!1,color:new Ft(`black`),opacity:1,thickness:.05,size:new He(1,1)},`#include + #include + #include + uniform float thickness; + uniform bool screenspace; + uniform vec2 size; + void main() { + #if defined (USE_SKINNING) + #include + #include + #include + #include + #include + #endif + #include + #include + #include + #include + vec4 tNormal = vec4(normal, 0.0); + vec4 tPosition = vec4(transformed, 1.0); + #ifdef USE_INSTANCING + tNormal = instanceMatrix * tNormal; + tPosition = instanceMatrix * tPosition; + #endif + if (screenspace) { + vec3 newPosition = tPosition.xyz + tNormal.xyz * thickness; + gl_Position = projectionMatrix * modelViewMatrix * vec4(newPosition, 1.0); + } else { + vec4 clipPosition = projectionMatrix * modelViewMatrix * tPosition; + vec4 clipNormal = projectionMatrix * modelViewMatrix * tNormal; + vec2 offset = normalize(clipNormal.xy) * thickness / size * clipPosition.w * 2.0; + clipPosition.xy += offset; + gl_Position = clipPosition; + } + }`,`uniform vec3 color; + uniform float opacity; + void main(){ + gl_FragColor = vec4(color, opacity); + #include + #include + }`),tU=Xt({__name:`component`,props:{color:{default:`black`},screenspace:{type:Boolean,default:!1},opacity:{default:1},transparent:{type:Boolean,default:!1},thickness:{default:.05},angle:{default:Math.PI},toneMapped:{type:Boolean,default:!0},polygonOffset:{type:Boolean,default:!1},polygonOffsetFactor:{default:0},renderOrder:{default:0}},setup(e,{expose:t}){let n=e,r=W();t({instance:r});let i=new eU({...n}),a=new He(1,1),o=0,s=null;function c(e){var t;let r=e.parent;if(!(!r||!r.geometry)&&(o!==n.angle||s!==r.geometry)){o=n.angle,s=r.geometry;let a=(t=e.children)?.[0];a&&(n.angle&&a.geometry.dispose(),e.remove(a)),r.skeleton?(a=new rt,a.material=i,a.bind(r.skeleton,r.bindMatrix),e.add(a)):r.isInstancedMesh?(a=new Ee(r.geometry,i,r.count),a.instanceMatrix=r.instanceMatrix,e.add(a)):(a=new M,a.material=i,e.add(a)),a.geometry=n.angle?nz(r.geometry,n.angle):r.geometry}}function l(){i.side=le,i.transparent=n.transparent,i.thickness=n.thickness,i.color=D(n.color),i.opacity=n.opacity,i.size=a,i.screenspace=n.screenspace,i.toneMapped=n.toneMapped,i.polygonOffset=n.polygonOffset,i.polygonOffsetFactor=n.polygonOffsetFactor}let u=w().sizes;return V(()=>[u.width.value,u.height.value],([e,t])=>{a.set(e,t)}),V(()=>[n.angle],()=>{r.value&&c(r.value)}),V(()=>[n.transparent,n.thickness,n.color,n.opacity,a,n.screenspace,n.toneMapped,n.polygonOffset,n.polygonOffsetFactor],()=>l(),{immediate:!0}),Jt(()=>c(r.value)),mn(()=>{var e;let t=(e=r.value)?.children[0];t&&(t.geometry.dispose(),i.dispose(),t.removeFromParent())}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`groupRef`,ref:r},null,512))}}),nU=[`args`],rU=Xt({__name:`PositionalAudio`,props:{ready:{type:Boolean,default:!1},url:{},distance:{default:2},helper:{type:Boolean,default:!1},loop:{type:Boolean,default:!1},autoplay:{type:Boolean,default:!1},innerAngle:{default:360},outerAngle:{default:360},outerGain:{default:0}},emits:[`isPlaying`],async setup(e,{expose:t,emit:n}){let r,i,a=e,o=n,{ready:s,url:c,distance:l,helper:u,loop:d,autoplay:f,innerAngle:p,outerAngle:m,outerGain:h}=rn(a),{camera:g}=ve(),_=W(null),v=W(null),y=W(null),b=ln(new Ot),x=()=>{var e,t,n;(e=_?.value)!=null&&e.isPlaying||((t=_?.value)==null||t.play(),o(`isPlaying`,(n=_?.value)?.isPlaying))},S=()=>{var e,t;(e=_?.value)!=null&&e.isPlaying&&(_.value.pause(),o(`isPlaying`,(t=_?.value)?.isPlaying))},C=()=>{var e;_.value&&(_.value.stop(),o(`isPlaying`,(e=_?.value)?.isPlaying))},w=()=>{if(!(_!=null&&_.value))return;C();let e=_.value;e.source&&e.disconnect()},T=()=>{var e,t;!(_!=null&&_.value)||!(v!=null&&v.value)||((e=v?.value)==null||e.dispose(),(t=_?.value)==null||t.remove(v?.value))},E=()=>{var e;if(_.value&&(_.value.setBuffer(y.value),_.value.setRefDistance(l.value),_.value.setLoop(d.value),_.value.setDirectionalCone(p.value,m.value,h.value),(e=v?.value)==null||e.update(),v!=null&&v.value)){let e=v.value.material[0];!e.visible&&m.value!==p.value&&(e.visible=!0)}},D=()=>{var e,t;E();let n=(e=_.value)?.parent,r=new xt().setFromObject(n),i=(r.max.z-r.min.z)*2;v.value=new hH(_.value,i,32,16),(t=_?.value)==null||t.add(v.value),v.value.update()},O=()=>{var e;(e=g?.value)==null||e.remove(b),w(),T()};return t({instance:_,play:x,stop:C,pause:S,dispose:O}),y.value=([r,i]=bn(()=>_e(Be,c.value)),r=await r,i(),r),V(_,()=>{_!=null&&_.value&&(u.value&&D(),s.value&&f&&x())}),V(u,()=>{u.value?D():T()}),V(s,()=>{s.value&&E(),f.value&&s.value&&x(),!f.value&&s.value&&C()}),V([l,d,y,p,m,h,f],()=>{E()}),Jt(()=>{var e;(e=g?.value)==null||e.add(b)}),pn(()=>{O()}),(e,t)=>(H(),fn(`TresPositionalAudio`,Qt({ref_key:`positionalAudioRef`,ref:_,args:[G(b)]},e.$attrs),null,16,nU))}}),iU=[`args`,`material-uniforms-color-value`],aU=Xt({__name:`Reflector`,props:{color:{default:`#333`},textureWidth:{default:512},textureHeight:{default:512},clipBias:{default:0},multisample:{default:4},shader:{default:TB.ReflectorShader}},setup(e,{expose:t}){let n=e,{extend:r,invalidate:i}=ve(),a=W();r({Reflector:TB});let{color:o,textureWidth:s,textureHeight:c,clipBias:l,multisample:u,shader:d}=rn(n);return V(n,()=>i()),t({instance:a}),(e,t)=>(H(),fn(`TresReflector`,{ref_key:`reflectorRef`,ref:a,args:[void 0,{textureWidth:G(s),textureHeight:G(c),clipBias:G(l),multisample:G(u),shader:G(d)}],"material-uniforms-color-value":G(o)},[vn(e.$slots,`default`,{},()=>[t[0]||=K(`TresPlaneGeometry`,{args:[5,5]},null,-1)])],8,iU))}}),oU=[`position-z`],sU=Xt({__name:`ScreenSpace`,props:{depth:{default:-1}},setup(e,{expose:t}){let n=W();return T().onBeforeRender(({camera:e})=>{n.value&&(n.value.quaternion.copy(e.quaternion),n.value.position.copy(e.position))}),t({instance:n}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`outerRef`,ref:n},[K(`TresGroup`,{"position-z":-e.depth},[vn(e.$slots,`default`)],8,oU)],512))}}),cU=[`args`,`center`],lU=Xt({__name:`Text3D`,props:{font:{},text:{},size:{default:.5},height:{default:.2},curveSegments:{default:5},bevelEnabled:{type:Boolean,default:!0},bevelThickness:{default:.05},bevelSize:{default:.02},bevelOffset:{default:0},bevelSegments:{default:4},center:{type:Boolean,default:!1},needUpdates:{type:Boolean,default:!1}},async setup(e,{expose:t}){let n,r,i=e,{center:a,font:o,text:s,needUpdates:c,size:l,height:u,curveSegments:d,bevelEnabled:f,bevelThickness:p,bevelSize:m,bevelOffset:h,bevelSegments:g}=rn(i),{extend:_,invalidate:v}=ve();V(i,()=>v()),_({TextGeometry:kV});let y=new LV,b=wn(),x=Sn(()=>{var e;return s!=null&&s.value?s.value:b.default?(e=b.default()[0].children)?.trim():c.value?``:`TresJS`}),S=W();t({instance:S});let C=([n,r]=bn(()=>new Promise((e,t)=>{try{typeof o.value==`string`?y.load(o.value,t=>{e(t)}):e(o.value)}catch(e){t(console.error(`cientos`,e))}})),n=await n,r(),n),w=Sn(()=>({font:C,size:un(l),height:un(u),curveSegments:un(d),bevelEnabled:un(f),bevelThickness:un(p),bevelSize:un(m),bevelOffset:un(h),bevelSegments:un(g)}));return gn(()=>{S.value&&c.value&&(S.value.geometry.dispose(),S.value.geometry=new kV(x.value,w.value),a.value&&S.value.geometry.center())}),(e,t)=>G(o)?(H(),fn(`TresMesh`,{key:0,ref_key:`text3DRef`,ref:S},[x.value?(H(),fn(`TresTextGeometry`,{key:0,args:[x.value,w.value],center:G(a)},null,8,cU)):Zt(``,!0),vn(e.$slots,`default`)],512)):Zt(``,!0)}});function uU(e){let t=U(null),{height:n,width:r,settings:i,depth:a,autoRender:o=U(!0)}=nn(e)?rn(e):rn(sn(e)),{onBeforeRender:s}=T(),{camera:c,renderer:l,scene:u,sizes:d,invalidate:f}=ve();return V(()=>[r?.value,d.width.value,n?.value,d.height.value],()=>{var e;(e=t.value)==null||e.dispose(),t.value=new St(r?.value||d.width.value,n?.value||d.height.value,{minFilter:tt,magFilter:tt,type:ae,...i?.value}),a!=null&&a.value&&(t.value.depthTexture=new Te(r?.value||d.width.value,n?.value||d.height.value,R)),f()},{immediate:!0}),s(()=>{o.value&&(l.value.setRenderTarget(t.value),l.value.clear(),l.value.render(u.value,c.value),l.value.setRenderTarget(null))},1/0),pn(()=>{var e;(e=t.value)==null||e.dispose()}),t}const dU=Xt({__name:`component`,props:{width:{},height:{},depth:{type:Boolean,default:!1},settings:{default:void 0},autoRender:{type:Boolean,default:!0}},setup(e,{expose:t}){let n=uU(e);return t({instance:n}),()=>{}}}),fU=(e,t=16,n,r,i)=>{let a=new Float32Array(t*16),o=U(new fe(a,16));return(()=>{if(!e)return;let a=new WB(e);r&&a.setWeightAttribute(r),a.build();let s=new B,c=new B,l=new Ft,u=new It;e.updateMatrixWorld(!0);for(let r=0;ro()),gn(()=>{var e,t;i.value=n.instanceMesh??(e=r.value)?.children.find(e=>Object.prototype.hasOwnProperty.call(e,`instanceMatrix`)),a.value=n.mesh??(t=r.value)?.children.find(e=>e.type===`Mesh`),fU(a.value,n.count,i.value,n.weight,n.transform)}),t({samplerRef:r}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`samplerRef`,ref:r},[vn(e.$slots,`default`)],512))}}),mU=new B,hU=new B,gU=new B,_U=(e,t,n)=>{let r=n.width/2,i=n.height/2;t.updateMatrixWorld(!1);let a=e.project(t);return a.x=a.x*r+r,a.y=-(a.y*i)+i,a},vU=(e,t,n,r=1)=>{let i=mU.set(e.x/n.width*2-1,-(e.y/n.height)*2+1,r);return i.unproject(t),i},yU=(e,t,n,r)=>{let i=_U(gU.copy(e),n,r),a=0;for(let o=0;o<2;++o){let s=hU.copy(i).setComponent(o,i.getComponent(o)+t),c=vU(s,n,r,s.z);a=Math.max(a,e.distanceTo(c))}return a},bU=Xt({__name:`ScreenSizer`,setup(e,{expose:t}){let n=new B,r=W(),i=W(),a=w().sizes,o=Sn(()=>({width:a.width.value,height:a.height.value}));return T().onBeforeRender(({camera:e})=>{let t=i.value;if(!t)return;let r=yU(t.getWorldPosition(n),1,e,o.value);t.scale.setScalar(r)}),t({instance:r}),(e,t)=>(H(),fn(`TresObject3D`,{ref_key:`outerRef`,ref:r},[K(`TresObject3D`,{ref_key:`innerRef`,ref:i},[vn(e.$slots,`default`)],512)],512))}}),xU=[`color`],SU=Xt({__name:`Edges`,props:{color:{default:`#ff0000`},threshold:{default:15}},setup(e,{expose:t}){let n=e,{color:r,threshold:i}=rn(n),a=W(),o=U(null),s=U(1);return t({instance:a}),V(()=>[a.value,i.value],()=>{if(a.value){let e=a.value.parent;if(e&&`geometry`in e&&e.geometry instanceof Fe){let t=e.geometry;(t!==o.value||i.value!==s.value)&&(o.value=t,s.value=i.value,a.value.geometry=new Oe(t,i.value))}}}),(e,t)=>(H(),fn(`TresLineSegments`,Qt({ref_key:`lineSegmentsRef`,ref:a},e.$attrs),[vn(e.$slots,`default`,{},()=>[K(`TresLineBasicMaterial`,{color:G(r)},null,8,xU)])],16))}}),CU={sunset:`venice/venice_sunset_1k.hdr`,studio:`studio/poly_haven_studio_1k.hdr`,city:`city/canary_wharf_1k.hdr`,umbrellas:`outdoor/outdoor_umbrellas_1k.hdr`,night:`outdoor/satara_night_1k.hdr`,forest:`outood/mossy_forest_1k.hdr`,snow:`outdoor/snowy_forest_path_01_1k.hdr`,dawn:`kiara/kiara_1_dawn_1k.hdr`,hangar:`indoor/small_hangar_01_1k.hdr`,urban:`indoor/abandoned_games_room_02_1k.hdr`,modern:`city/modern_buildings_2_1k.hdr`,shangai:`city/shanghai_bund_1k.hdr`},wU=`https://raw.githubusercontent.com/Tresjs/assets/main/textures/hdr/`;function TU(e){return e instanceof me?e:Array.isArray(e)?new me(e[0],e[1],e[2]):typeof e==`number`?new me(e,e,e):e instanceof B||typeof e==`object`&&`x`in e&&`y`in e&&`z`in e?new me(e.x,e.y,e.z):null}function EU(e){e.traverse(e=>{e instanceof M&&e.material&&(e.material.needsUpdate=!0)})}async function DU(e,t){let{scene:n,invalidate:r}=ve(),{preset:i,blur:a,files:o=U([]),path:s=U(``),background:c,backgroundIntensity:l=U(1),environmentIntensity:u=U(1),backgroundRotation:d=U([0,0,0]),environmentRotation:f=U([0,0,0]),syncMaterials:p=U(!1)}=rn(e);V(e,()=>{r()});let m=U(null),h=Sn(()=>Array.isArray(o.value)),g=Sn(()=>h.value?Vt:VV);return V([o,s],async([e,t])=>{if(e&&e.length>0&&!(i!=null&&i.value)){try{let n=await _e(g.value,h.value?[...G(e)]:G(e),e=>{t&&e.setPath(G(t))});m.value=Array.isArray(n)?n[0]:n}catch(e){throw Error(`Failed to load environment map: ${e}`)}m.value&&(m.value.mapping=h.value?oe:Ge)}},{immediate:!0}),V(m,e=>{n.value&&e&&(n.value.environment=e)},{immediate:!0}),V([c,m],([e,r])=>{if(n.value){let i=t!=null&&t.value?t.value.texture:r;i&&(n.value.background=e?i:null)}},{immediate:!0}),V(()=>a?.value,e=>{n.value&&e&&(n.value.backgroundBlurriness=e)},{immediate:!0}),V(()=>l?.value,e=>{n.value&&(n.value.backgroundIntensity=e??1)},{immediate:!0}),V(()=>u?.value,e=>{n.value&&(n.value.environmentIntensity=e??1)},{immediate:!0}),V(()=>d?.value,e=>{if(n.value){let t=TU(e);t&&(n.value.backgroundRotation=t)}},{immediate:!0}),V(()=>f?.value,e=>{if(n.value&&!(p!=null&&p.value)){let t=TU(e);t&&(n.value.environmentRotation=t,EU(n.value))}},{immediate:!0}),V(()=>i?.value,async e=>{if(e&&e in CU){let t=wU,n=CU[e];try{let e=await _e(VV,n,e=>{e.setPath(t)});m.value=Array.isArray(e)?e[0]:e}catch(e){throw Error(`Failed to load environment map: ${e}`)}m.value&&(m.value.mapping=Ge),r()}else if(e&&!(e in CU))throw Error(`Preset must be one of: ${Object.keys(CU).join(`, `)}`)},{immediate:!0}),V([p,d],([e,t])=>{if(e&&n.value){let e=TU(t);e&&(n.value.environmentRotation=e,EU(n.value))}},{immediate:!0}),m} +/*! +* camera-controls +* https://github.com/yomotsu/camera-controls +* (c) 2017 @yomotsu +* Released under the MIT License. +*/ +const OU={LEFT:1,RIGHT:2,MIDDLE:4},$=Object.freeze({NONE:0,ROTATE:1,TRUCK:2,OFFSET:4,DOLLY:8,ZOOM:16,TOUCH_ROTATE:32,TOUCH_TRUCK:64,TOUCH_OFFSET:128,TOUCH_DOLLY:256,TOUCH_ZOOM:512,TOUCH_DOLLY_TRUCK:1024,TOUCH_DOLLY_OFFSET:2048,TOUCH_DOLLY_ROTATE:4096,TOUCH_ZOOM_TRUCK:8192,TOUCH_ZOOM_OFFSET:16384,TOUCH_ZOOM_ROTATE:32768}),kU={NONE:0,IN:1,OUT:-1};function AU(e){return e.isPerspectiveCamera}function jU(e){return e.isOrthographicCamera}const MU=Math.PI*2,NU=Math.PI/2,PU=1e-5,FU=Math.PI/180;function IU(e,t,n){return Math.max(t,Math.min(n,e))}function LU(e,t=PU){return Math.abs(e)0==p>u&&(p=u,n.value=(p-u)/a),p}function UU(e,t,n,r,i=1/0,a,o){r=Math.max(1e-4,r);let s=2/r,c=s*a,l=1/(1+c+.48*c*c+.235*c*c*c),u=t.x,d=t.y,f=t.z,p=e.x-u,m=e.y-d,h=e.z-f,g=u,_=d,v=f,y=i*r,b=y*y,x=p*p+m*m+h*h;if(x>b){let e=Math.sqrt(x);p=p/e*y,m=m/e*y,h=h/e*y}u=e.x-p,d=e.y-m,f=e.z-h;let S=(n.x+s*p)*a,C=(n.y+s*m)*a,w=(n.z+s*h)*a;n.x=(n.x-s*S)*l,n.y=(n.y-s*C)*l,n.z=(n.z-s*w)*l,o.x=u+(p+S)*l,o.y=d+(m+C)*l,o.z=f+(h+w)*l;let T=g-e.x,E=_-e.y,D=v-e.z,O=o.x-g,k=o.y-_,A=o.z-v;return T*O+E*k+D*A>0&&(o.x=g,o.y=_,o.z=v,n.x=(o.x-g)/a,n.y=(o.y-_)/a,n.z=(o.z-v)/a),o}function WU(e,t){t.set(0,0),e.forEach(e=>{t.x+=e.clientX,t.y+=e.clientY}),t.x/=e.length,t.y/=e.length}function GU(e,t){return jU(e)?(console.warn(`${t} is not supported in OrthographicCamera`),!0):!1}var KU=class{constructor(){this._listeners={}}addEventListener(e,t){let n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){let n=this._listeners;return n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){let n=this._listeners[e];if(n!==void 0){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}removeAllEventListeners(e){if(!e){this._listeners={};return}Array.isArray(this._listeners[e])&&(this._listeners[e].length=0)}dispatchEvent(e){let t=this._listeners[e.type];if(t!==void 0){e.target=this;let n=t.slice(0);for(let t=0,r=n.length;t{},this._enabled=!0,this._state=$.NONE,this._viewport=null,this._changedDolly=0,this._changedZoom=0,this._hasRested=!0,this._boundaryEnclosesCamera=!1,this._needsUpdate=!0,this._updatedLastTime=!1,this._elementRect=new DOMRect,this._isDragging=!1,this._dragNeedsUpdate=!0,this._activePointers=[],this._lockedPointer=null,this._interactiveArea=new DOMRect(0,0,1,1),this._isUserControllingRotate=!1,this._isUserControllingDolly=!1,this._isUserControllingTruck=!1,this._isUserControllingOffset=!1,this._isUserControllingZoom=!1,this._lastDollyDirection=kU.NONE,this._thetaVelocity={value:0},this._phiVelocity={value:0},this._radiusVelocity={value:0},this._targetVelocity=new ZU.Vector3,this._focalOffsetVelocity=new ZU.Vector3,this._zoomVelocity={value:0},this._truckInternal=(e,t,n)=>{let r,i;if(AU(this._camera)){let n=nW.copy(this._camera.position).sub(this._target),a=this._camera.getEffectiveFOV()*FU,o=n.length()*Math.tan(a*.5);r=this.truckSpeed*e*o/this._elementRect.height,i=this.truckSpeed*t*o/this._elementRect.height}else if(jU(this._camera)){let n=this._camera;r=e*(n.right-n.left)/n.zoom/this._elementRect.width,i=t*(n.top-n.bottom)/n.zoom/this._elementRect.height}else return;this.verticalDragToForward?(n?this.setFocalOffset(this._focalOffsetEnd.x+r,this._focalOffsetEnd.y,this._focalOffsetEnd.z,!0):this.truck(r,0,!0),this.forward(-i,!0)):n?this.setFocalOffset(this._focalOffsetEnd.x+r,this._focalOffsetEnd.y+i,this._focalOffsetEnd.z,!0):this.truck(r,i,!0)},this._rotateInternal=(e,t)=>{let n=MU*this.azimuthRotateSpeed*e/this._elementRect.height,r=MU*this.polarRotateSpeed*t/this._elementRect.height;this.rotate(n,r,!0)},this._dollyInternal=(e,t,n)=>{let r=.95**(-e*this.dollySpeed),i=this._sphericalEnd.radius,a=this._sphericalEnd.radius*r,o=IU(a,this.minDistance,this.maxDistance),s=o-a;this.infinityDolly&&this.dollyToCursor?this._dollyToNoClamp(a,!0):(this.infinityDolly&&!this.dollyToCursor&&this.dollyInFixed(s,!0),this._dollyToNoClamp(o,!0)),this.dollyToCursor&&(this._changedDolly+=(this.infinityDolly?a:o)-i,this._dollyControlCoord.set(t,n)),this._lastDollyDirection=Math.sign(-e)},this._zoomInternal=(e,t,n)=>{let r=.95**(e*this.dollySpeed),i=this._zoom,a=this._zoom*r;this.zoomTo(a,!0),this.dollyToCursor&&(this._changedZoom+=a-i,this._dollyControlCoord.set(t,n))},typeof ZU>`u`&&console.error("camera-controls: `THREE` is undefined. You must first run `CameraControls.install( { THREE: THREE } )`. Check the docs for further information."),this._camera=t,this._yAxisUpSpace=new ZU.Quaternion().setFromUnitVectors(this._camera.up,$U),this._yAxisUpSpaceInverse=this._yAxisUpSpace.clone().invert(),this._state=$.NONE,this._target=new ZU.Vector3,this._targetEnd=this._target.clone(),this._focalOffset=new ZU.Vector3,this._focalOffsetEnd=this._focalOffset.clone(),this._spherical=new ZU.Spherical().setFromVector3(nW.copy(this._camera.position).applyQuaternion(this._yAxisUpSpace)),this._sphericalEnd=this._spherical.clone(),this._lastDistance=this._spherical.radius,this._zoom=this._camera.zoom,this._zoomEnd=this._zoom,this._lastZoom=this._zoom,this._nearPlaneCorners=[new ZU.Vector3,new ZU.Vector3,new ZU.Vector3,new ZU.Vector3],this._updateNearPlaneCorners(),this._boundary=new ZU.Box3(new ZU.Vector3(-1/0,-1/0,-1/0),new ZU.Vector3(1/0,1/0,1/0)),this._cameraUp0=this._camera.up.clone(),this._target0=this._target.clone(),this._position0=this._camera.position.clone(),this._zoom0=this._zoom,this._focalOffset0=this._focalOffset.clone(),this._dollyControlCoord=new ZU.Vector2,this.mouseButtons={left:$.ROTATE,middle:$.DOLLY,right:$.TRUCK,wheel:AU(this._camera)?$.DOLLY:jU(this._camera)?$.ZOOM:$.NONE},this.touches={one:$.TOUCH_ROTATE,two:AU(this._camera)?$.TOUCH_DOLLY_TRUCK:jU(this._camera)?$.TOUCH_ZOOM_TRUCK:$.NONE,three:$.TOUCH_TRUCK};let r=new ZU.Vector2,i=new ZU.Vector2,a=new ZU.Vector2,o=e=>{if(!this._enabled||!this._domElement)return;if(this._interactiveArea.left!==0||this._interactiveArea.top!==0||this._interactiveArea.width!==1||this._interactiveArea.height!==1){let t=this._domElement.getBoundingClientRect(),n=e.clientX/t.width,r=e.clientY/t.height;if(nthis._interactiveArea.right||rthis._interactiveArea.bottom)return}let t=e.pointerType===`mouse`?(e.buttons&OU.LEFT)===OU.LEFT?OU.LEFT:(e.buttons&OU.MIDDLE)===OU.MIDDLE?OU.MIDDLE:(e.buttons&OU.RIGHT)===OU.RIGHT?OU.RIGHT:null:null;if(t!==null){let e=this._findPointerByMouseButton(t);e&&this._disposePointer(e)}if((e.buttons&OU.LEFT)===OU.LEFT&&this._lockedPointer)return;let n={pointerId:e.pointerId,clientX:e.clientX,clientY:e.clientY,deltaX:0,deltaY:0,mouseButton:t};this._activePointers.push(n),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this._domElement.ownerDocument.addEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.addEventListener(`pointerup`,c),this._isDragging=!0,f(e)},s=e=>{e.cancelable&&e.preventDefault();let t=e.pointerId,n=this._lockedPointer||this._findPointerById(t);if(n){if(n.clientX=e.clientX,n.clientY=e.clientY,n.deltaX=e.movementX,n.deltaY=e.movementY,this._state=0,e.pointerType===`touch`)switch(this._activePointers.length){case 1:this._state=this.touches.one;break;case 2:this._state=this.touches.two;break;case 3:this._state=this.touches.three;break}else (!this._isDragging&&this._lockedPointer||this._isDragging&&(e.buttons&OU.LEFT)===OU.LEFT)&&(this._state|=this.mouseButtons.left),this._isDragging&&(e.buttons&OU.MIDDLE)===OU.MIDDLE&&(this._state|=this.mouseButtons.middle),this._isDragging&&(e.buttons&OU.RIGHT)===OU.RIGHT&&(this._state|=this.mouseButtons.right);p()}},c=e=>{let t=this._findPointerById(e.pointerId);if(!(t&&t===this._lockedPointer)){if(t&&this._disposePointer(t),e.pointerType===`touch`)switch(this._activePointers.length){case 0:this._state=$.NONE;break;case 1:this._state=this.touches.one;break;case 2:this._state=this.touches.two;break;case 3:this._state=this.touches.three;break}else this._state=$.NONE;m()}},l=-1,u=e=>{if(!this._domElement||!this._enabled||this.mouseButtons.wheel===$.NONE)return;if(this._interactiveArea.left!==0||this._interactiveArea.top!==0||this._interactiveArea.width!==1||this._interactiveArea.height!==1){let t=this._domElement.getBoundingClientRect(),n=e.clientX/t.width,r=e.clientY/t.height;if(nthis._interactiveArea.right||rthis._interactiveArea.bottom)return}if(e.preventDefault(),this.dollyToCursor||this.mouseButtons.wheel===$.ROTATE||this.mouseButtons.wheel===$.TRUCK){let e=performance.now();l-e<1e3&&this._getClientRect(this._elementRect),l=e}let t=XU?-1:-3,n=e.deltaMode===1?e.deltaY/t:e.deltaY/(t*10),r=this.dollyToCursor?(e.clientX-this._elementRect.x)/this._elementRect.width*2-1:0,i=this.dollyToCursor?(e.clientY-this._elementRect.y)/this._elementRect.height*-2+1:0;switch(this.mouseButtons.wheel){case $.ROTATE:this._rotateInternal(e.deltaX,e.deltaY),this._isUserControllingRotate=!0;break;case $.TRUCK:this._truckInternal(e.deltaX,e.deltaY,!1),this._isUserControllingTruck=!0;break;case $.OFFSET:this._truckInternal(e.deltaX,e.deltaY,!0),this._isUserControllingOffset=!0;break;case $.DOLLY:this._dollyInternal(-n,r,i),this._isUserControllingDolly=!0;break;case $.ZOOM:this._zoomInternal(-n,r,i),this._isUserControllingZoom=!0;break}this.dispatchEvent({type:`control`})},d=t=>{if(!(!this._domElement||!this._enabled)){if(this.mouseButtons.right===e.ACTION.NONE){let e=t instanceof PointerEvent?t.pointerId:0,n=this._findPointerById(e);n&&this._disposePointer(n),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c);return}t.preventDefault()}},f=e=>{if(this._enabled){if(WU(this._activePointers,tW),this._getClientRect(this._elementRect),r.copy(tW),i.copy(tW),this._activePointers.length>=2){let e=tW.x-this._activePointers[1].clientX,t=tW.y-this._activePointers[1].clientY,n=Math.sqrt(e*e+t*t);a.set(0,n);let r=(this._activePointers[0].clientX+this._activePointers[1].clientX)*.5,o=(this._activePointers[0].clientY+this._activePointers[1].clientY)*.5;i.set(r,o)}if(this._state=0,!e)this._lockedPointer&&(this._state|=this.mouseButtons.left);else if(`pointerType`in e&&e.pointerType===`touch`)switch(this._activePointers.length){case 1:this._state=this.touches.one;break;case 2:this._state=this.touches.two;break;case 3:this._state=this.touches.three;break}else !this._lockedPointer&&(e.buttons&OU.LEFT)===OU.LEFT&&(this._state|=this.mouseButtons.left),(e.buttons&OU.MIDDLE)===OU.MIDDLE&&(this._state|=this.mouseButtons.middle),(e.buttons&OU.RIGHT)===OU.RIGHT&&(this._state|=this.mouseButtons.right);((this._state&$.ROTATE)===$.ROTATE||(this._state&$.TOUCH_ROTATE)===$.TOUCH_ROTATE||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE)&&(this._sphericalEnd.theta=this._spherical.theta,this._sphericalEnd.phi=this._spherical.phi,this._thetaVelocity.value=0,this._phiVelocity.value=0),((this._state&$.TRUCK)===$.TRUCK||(this._state&$.TOUCH_TRUCK)===$.TOUCH_TRUCK||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK)&&(this._targetEnd.copy(this._target),this._targetVelocity.set(0,0,0)),((this._state&$.DOLLY)===$.DOLLY||(this._state&$.TOUCH_DOLLY)===$.TOUCH_DOLLY||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE)&&(this._sphericalEnd.radius=this._spherical.radius,this._radiusVelocity.value=0),((this._state&$.ZOOM)===$.ZOOM||(this._state&$.TOUCH_ZOOM)===$.TOUCH_ZOOM||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE)&&(this._zoomEnd=this._zoom,this._zoomVelocity.value=0),((this._state&$.OFFSET)===$.OFFSET||(this._state&$.TOUCH_OFFSET)===$.TOUCH_OFFSET||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET)&&(this._focalOffsetEnd.copy(this._focalOffset),this._focalOffsetVelocity.set(0,0,0)),this.dispatchEvent({type:`controlstart`})}},p=()=>{if(!this._enabled||!this._dragNeedsUpdate)return;this._dragNeedsUpdate=!1,WU(this._activePointers,tW);let e=this._domElement&&this._domElement.ownerDocument.pointerLockElement===this._domElement?this._lockedPointer||this._activePointers[0]:null,t=e?-e.deltaX:i.x-tW.x,n=e?-e.deltaY:i.y-tW.y;if(i.copy(tW),((this._state&$.ROTATE)===$.ROTATE||(this._state&$.TOUCH_ROTATE)===$.TOUCH_ROTATE||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE)&&(this._rotateInternal(t,n),this._isUserControllingRotate=!0),(this._state&$.DOLLY)===$.DOLLY||(this._state&$.ZOOM)===$.ZOOM){let e=this.dollyToCursor?(r.x-this._elementRect.x)/this._elementRect.width*2-1:0,t=this.dollyToCursor?(r.y-this._elementRect.y)/this._elementRect.height*-2+1:0,i=this.dollyDragInverted?-1:1;(this._state&$.DOLLY)===$.DOLLY?(this._dollyInternal(i*n*YU,e,t),this._isUserControllingDolly=!0):(this._zoomInternal(i*n*YU,e,t),this._isUserControllingZoom=!0)}if((this._state&$.TOUCH_DOLLY)===$.TOUCH_DOLLY||(this._state&$.TOUCH_ZOOM)===$.TOUCH_ZOOM||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_ZOOM_ROTATE)===$.TOUCH_ZOOM_ROTATE){let e=tW.x-this._activePointers[1].clientX,t=tW.y-this._activePointers[1].clientY,n=Math.sqrt(e*e+t*t),r=a.y-n;a.set(0,n);let o=this.dollyToCursor?(i.x-this._elementRect.x)/this._elementRect.width*2-1:0,s=this.dollyToCursor?(i.y-this._elementRect.y)/this._elementRect.height*-2+1:0;(this._state&$.TOUCH_DOLLY)===$.TOUCH_DOLLY||(this._state&$.TOUCH_DOLLY_ROTATE)===$.TOUCH_DOLLY_ROTATE||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET?(this._dollyInternal(r*YU,o,s),this._isUserControllingDolly=!0):(this._zoomInternal(r*YU,o,s),this._isUserControllingZoom=!0)}((this._state&$.TRUCK)===$.TRUCK||(this._state&$.TOUCH_TRUCK)===$.TOUCH_TRUCK||(this._state&$.TOUCH_DOLLY_TRUCK)===$.TOUCH_DOLLY_TRUCK||(this._state&$.TOUCH_ZOOM_TRUCK)===$.TOUCH_ZOOM_TRUCK)&&(this._truckInternal(t,n,!1),this._isUserControllingTruck=!0),((this._state&$.OFFSET)===$.OFFSET||(this._state&$.TOUCH_OFFSET)===$.TOUCH_OFFSET||(this._state&$.TOUCH_DOLLY_OFFSET)===$.TOUCH_DOLLY_OFFSET||(this._state&$.TOUCH_ZOOM_OFFSET)===$.TOUCH_ZOOM_OFFSET)&&(this._truckInternal(t,n,!0),this._isUserControllingOffset=!0),this.dispatchEvent({type:`control`})},m=()=>{WU(this._activePointers,tW),i.copy(tW),this._dragNeedsUpdate=!1,(this._activePointers.length===0||this._activePointers.length===1&&this._activePointers[0]===this._lockedPointer)&&(this._isDragging=!1),this._activePointers.length===0&&this._domElement&&(this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this.dispatchEvent({type:`controlend`}))};this.lockPointer=()=>{!this._enabled||!this._domElement||(this.cancel(),this._lockedPointer={pointerId:-1,clientX:0,clientY:0,deltaX:0,deltaY:0,mouseButton:null},this._activePointers.push(this._lockedPointer),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this._domElement.requestPointerLock(),this._domElement.ownerDocument.addEventListener(`pointerlockchange`,h),this._domElement.ownerDocument.addEventListener(`pointerlockerror`,g),this._domElement.ownerDocument.addEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.addEventListener(`pointerup`,c),f())},this.unlockPointer=()=>{var e,t,n;this._lockedPointer!==null&&(this._disposePointer(this._lockedPointer),this._lockedPointer=null),(e=this._domElement)==null||e.ownerDocument.exitPointerLock(),(t=this._domElement)==null||t.ownerDocument.removeEventListener(`pointerlockchange`,h),(n=this._domElement)==null||n.ownerDocument.removeEventListener(`pointerlockerror`,g),this.cancel()};let h=()=>{this._domElement&&this._domElement.ownerDocument.pointerLockElement===this._domElement||this.unlockPointer()},g=()=>{this.unlockPointer()};this._addAllEventListeners=e=>{this._domElement=e,this._domElement.style.touchAction=`none`,this._domElement.style.userSelect=`none`,this._domElement.style.webkitUserSelect=`none`,this._domElement.addEventListener(`pointerdown`,o),this._domElement.addEventListener(`pointercancel`,c),this._domElement.addEventListener(`wheel`,u,{passive:!1}),this._domElement.addEventListener(`contextmenu`,d)},this._removeAllEventListeners=()=>{this._domElement&&(this._domElement.style.touchAction=``,this._domElement.style.userSelect=``,this._domElement.style.webkitUserSelect=``,this._domElement.removeEventListener(`pointerdown`,o),this._domElement.removeEventListener(`pointercancel`,c),this._domElement.removeEventListener(`wheel`,u,{passive:!1}),this._domElement.removeEventListener(`contextmenu`,d),this._domElement.ownerDocument.removeEventListener(`pointermove`,s,{passive:!1}),this._domElement.ownerDocument.removeEventListener(`pointerup`,c),this._domElement.ownerDocument.removeEventListener(`pointerlockchange`,h),this._domElement.ownerDocument.removeEventListener(`pointerlockerror`,g))},this.cancel=()=>{this._state!==$.NONE&&(this._state=$.NONE,this._activePointers.length=0,m())},n&&this.connect(n),this.update(0)}get camera(){return this._camera}set camera(e){this._camera=e,this.updateCameraUp(),this._camera.updateProjectionMatrix(),this._updateNearPlaneCorners(),this._needsUpdate=!0}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this._domElement&&(e?(this._domElement.style.touchAction=`none`,this._domElement.style.userSelect=`none`,this._domElement.style.webkitUserSelect=`none`):(this.cancel(),this._domElement.style.touchAction=``,this._domElement.style.userSelect=``,this._domElement.style.webkitUserSelect=``))}get active(){return!this._hasRested}get currentAction(){return this._state}get distance(){return this._spherical.radius}set distance(e){this._spherical.radius===e&&this._sphericalEnd.radius===e||(this._spherical.radius=e,this._sphericalEnd.radius=e,this._needsUpdate=!0)}get azimuthAngle(){return this._spherical.theta}set azimuthAngle(e){this._spherical.theta===e&&this._sphericalEnd.theta===e||(this._spherical.theta=e,this._sphericalEnd.theta=e,this._needsUpdate=!0)}get polarAngle(){return this._spherical.phi}set polarAngle(e){this._spherical.phi===e&&this._sphericalEnd.phi===e||(this._spherical.phi=e,this._sphericalEnd.phi=e,this._needsUpdate=!0)}get boundaryEnclosesCamera(){return this._boundaryEnclosesCamera}set boundaryEnclosesCamera(e){this._boundaryEnclosesCamera=e,this._needsUpdate=!0}set interactiveArea(e){this._interactiveArea.width=IU(e.width,0,1),this._interactiveArea.height=IU(e.height,0,1),this._interactiveArea.x=IU(e.x,0,1-this._interactiveArea.width),this._interactiveArea.y=IU(e.y,0,1-this._interactiveArea.height)}addEventListener(e,t){super.addEventListener(e,t)}removeEventListener(e,t){super.removeEventListener(e,t)}rotate(e,t,n=!1){return this.rotateTo(this._sphericalEnd.theta+e,this._sphericalEnd.phi+t,n)}rotateAzimuthTo(e,t=!1){return this.rotateTo(e,this._sphericalEnd.phi,t)}rotatePolarTo(e,t=!1){return this.rotateTo(this._sphericalEnd.theta,e,t)}rotateTo(e,t,n=!1){this._isUserControllingRotate=!1;let r=IU(e,this.minAzimuthAngle,this.maxAzimuthAngle),i=IU(t,this.minPolarAngle,this.maxPolarAngle);this._sphericalEnd.theta=r,this._sphericalEnd.phi=i,this._sphericalEnd.makeSafe(),this._needsUpdate=!0,n||(this._spherical.theta=this._sphericalEnd.theta,this._spherical.phi=this._sphericalEnd.phi);let a=!n||RU(this._spherical.theta,this._sphericalEnd.theta,this.restThreshold)&&RU(this._spherical.phi,this._sphericalEnd.phi,this.restThreshold);return this._createOnRestPromise(a)}dolly(e,t=!1){return this.dollyTo(this._sphericalEnd.radius-e,t)}dollyTo(e,t=!1){return this._isUserControllingDolly=!1,this._lastDollyDirection=kU.NONE,this._changedDolly=0,this._dollyToNoClamp(IU(e,this.minDistance,this.maxDistance),t)}_dollyToNoClamp(e,t=!1){let n=this._sphericalEnd.radius;if(this.colliderMeshes.length>=1){let t=this._collisionTest(),r=RU(t,this._spherical.radius);if(!(n>e)&&r)return Promise.resolve();this._sphericalEnd.radius=Math.min(e,t)}else this._sphericalEnd.radius=e;this._needsUpdate=!0,t||(this._spherical.radius=this._sphericalEnd.radius);let r=!t||RU(this._spherical.radius,this._sphericalEnd.radius,this.restThreshold);return this._createOnRestPromise(r)}dollyInFixed(e,t=!1){this._targetEnd.add(this._getCameraDirection(aW).multiplyScalar(e)),t||this._target.copy(this._targetEnd);let n=!t||RU(this._target.x,this._targetEnd.x,this.restThreshold)&&RU(this._target.y,this._targetEnd.y,this.restThreshold)&&RU(this._target.z,this._targetEnd.z,this.restThreshold);return this._createOnRestPromise(n)}zoom(e,t=!1){return this.zoomTo(this._zoomEnd+e,t)}zoomTo(e,t=!1){this._isUserControllingZoom=!1,this._zoomEnd=IU(e,this.minZoom,this.maxZoom),this._needsUpdate=!0,t||(this._zoom=this._zoomEnd);let n=!t||RU(this._zoom,this._zoomEnd,this.restThreshold);return this._changedZoom=0,this._createOnRestPromise(n)}pan(e,t,n=!1){return console.warn("`pan` has been renamed to `truck`"),this.truck(e,t,n)}truck(e,t,n=!1){this._camera.updateMatrix(),oW.setFromMatrixColumn(this._camera.matrix,0),sW.setFromMatrixColumn(this._camera.matrix,1),oW.multiplyScalar(e),sW.multiplyScalar(-t);let r=nW.copy(oW).add(sW),i=rW.copy(this._targetEnd).add(r);return this.moveTo(i.x,i.y,i.z,n)}forward(e,t=!1){nW.setFromMatrixColumn(this._camera.matrix,0),nW.crossVectors(this._camera.up,nW),nW.multiplyScalar(e);let n=rW.copy(this._targetEnd).add(nW);return this.moveTo(n.x,n.y,n.z,t)}elevate(e,t=!1){return nW.copy(this._camera.up).multiplyScalar(e),this.moveTo(this._targetEnd.x+nW.x,this._targetEnd.y+nW.y,this._targetEnd.z+nW.z,t)}moveTo(e,t,n,r=!1){this._isUserControllingTruck=!1;let i=nW.set(e,t,n).sub(this._targetEnd);this._encloseToBoundary(this._targetEnd,i,this.boundaryFriction),this._needsUpdate=!0,r||this._target.copy(this._targetEnd);let a=!r||RU(this._target.x,this._targetEnd.x,this.restThreshold)&&RU(this._target.y,this._targetEnd.y,this.restThreshold)&&RU(this._target.z,this._targetEnd.z,this.restThreshold);return this._createOnRestPromise(a)}lookInDirectionOf(e,t,n,r=!1){let i=nW.set(e,t,n).sub(this._targetEnd).normalize().multiplyScalar(-this._sphericalEnd.radius).add(this._targetEnd);return this.setPosition(i.x,i.y,i.z,r)}fitToBox(e,t,{cover:n=!1,paddingLeft:r=0,paddingRight:i=0,paddingBottom:a=0,paddingTop:o=0}={}){let s=[],c=e.isBox3?pW.copy(e):pW.setFromObject(e);c.isEmpty()&&(console.warn(`camera-controls: fitTo() cannot be used with an empty box. Aborting`),Promise.resolve());let l=zU(this._sphericalEnd.theta,NU),u=zU(this._sphericalEnd.phi,NU);s.push(this.rotateTo(l,u,t));let d=nW.setFromSpherical(this._sphericalEnd).normalize(),f=gW.setFromUnitVectors(d,eW),p=RU(Math.abs(d.y),1);p&&f.multiply(_W.setFromAxisAngle($U,l)),f.multiply(this._yAxisUpSpaceInverse);let m=mW.makeEmpty();rW.copy(c.min).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.min).setX(c.max.x).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.min).setY(c.max.y).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.max).setZ(c.min.z).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.min).setZ(c.max.z).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.max).setY(c.min.y).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.max).setX(c.min.x).applyQuaternion(f),m.expandByPoint(rW),rW.copy(c.max).applyQuaternion(f),m.expandByPoint(rW),m.min.x-=r,m.min.y-=a,m.max.x+=i,m.max.y+=o,f.setFromUnitVectors(eW,d),p&&f.premultiply(_W.invert()),f.premultiply(this._yAxisUpSpace);let h=m.getSize(nW),g=m.getCenter(rW).applyQuaternion(f);if(AU(this._camera)){let e=this.getDistanceToFitBox(h.x,h.y,h.z,n);s.push(this.moveTo(g.x,g.y,g.z,t)),s.push(this.dollyTo(e,t)),s.push(this.setFocalOffset(0,0,0,t))}else if(jU(this._camera)){let e=this._camera,r=e.right-e.left,i=e.top-e.bottom,a=n?Math.max(r/h.x,i/h.y):Math.min(r/h.x,i/h.y);s.push(this.moveTo(g.x,g.y,g.z,t)),s.push(this.zoomTo(a,t)),s.push(this.setFocalOffset(0,0,0,t))}return Promise.all(s)}fitToSphere(t,n){let r=[],i=`isObject3D`in t?e.createBoundingSphere(t,hW):hW.copy(t);if(r.push(this.moveTo(i.center.x,i.center.y,i.center.z,n)),AU(this._camera)){let e=this.getDistanceToFitSphere(i.radius);r.push(this.dollyTo(e,n))}else if(jU(this._camera)){let e=this._camera.right-this._camera.left,t=this._camera.top-this._camera.bottom,a=2*i.radius,o=Math.min(e/a,t/a);r.push(this.zoomTo(o,n))}return r.push(this.setFocalOffset(0,0,0,n)),Promise.all(r)}setLookAt(e,t,n,r,i,a,o=!1){this._isUserControllingRotate=!1,this._isUserControllingDolly=!1,this._isUserControllingTruck=!1,this._lastDollyDirection=kU.NONE,this._changedDolly=0;let s=rW.set(r,i,a),c=nW.set(e,t,n);this._targetEnd.copy(s),this._sphericalEnd.setFromVector3(c.sub(s).applyQuaternion(this._yAxisUpSpace)),this.normalizeRotations(),this._needsUpdate=!0,o||(this._target.copy(this._targetEnd),this._spherical.copy(this._sphericalEnd));let l=!o||RU(this._target.x,this._targetEnd.x,this.restThreshold)&&RU(this._target.y,this._targetEnd.y,this.restThreshold)&&RU(this._target.z,this._targetEnd.z,this.restThreshold)&&RU(this._spherical.theta,this._sphericalEnd.theta,this.restThreshold)&&RU(this._spherical.phi,this._sphericalEnd.phi,this.restThreshold)&&RU(this._spherical.radius,this._sphericalEnd.radius,this.restThreshold);return this._createOnRestPromise(l)}lerpLookAt(e,t,n,r,i,a,o,s,c,l,u,d,f,p=!1){this._isUserControllingRotate=!1,this._isUserControllingDolly=!1,this._isUserControllingTruck=!1,this._lastDollyDirection=kU.NONE,this._changedDolly=0;let m=nW.set(r,i,a),h=rW.set(e,t,n);dW.setFromVector3(h.sub(m).applyQuaternion(this._yAxisUpSpace));let g=iW.set(l,u,d),_=rW.set(o,s,c);fW.setFromVector3(_.sub(g).applyQuaternion(this._yAxisUpSpace)),this._targetEnd.copy(m.lerp(g,f));let v=fW.theta-dW.theta,y=fW.phi-dW.phi,b=fW.radius-dW.radius;this._sphericalEnd.set(dW.radius+b*f,dW.phi+y*f,dW.theta+v*f),this.normalizeRotations(),this._needsUpdate=!0,p||(this._target.copy(this._targetEnd),this._spherical.copy(this._sphericalEnd));let x=!p||RU(this._target.x,this._targetEnd.x,this.restThreshold)&&RU(this._target.y,this._targetEnd.y,this.restThreshold)&&RU(this._target.z,this._targetEnd.z,this.restThreshold)&&RU(this._spherical.theta,this._sphericalEnd.theta,this.restThreshold)&&RU(this._spherical.phi,this._sphericalEnd.phi,this.restThreshold)&&RU(this._spherical.radius,this._sphericalEnd.radius,this.restThreshold);return this._createOnRestPromise(x)}setPosition(e,t,n,r=!1){return this.setLookAt(e,t,n,this._targetEnd.x,this._targetEnd.y,this._targetEnd.z,r)}setTarget(e,t,n,r=!1){let i=this.getPosition(nW),a=this.setLookAt(i.x,i.y,i.z,e,t,n,r);return this._sphericalEnd.phi=IU(this._sphericalEnd.phi,this.minPolarAngle,this.maxPolarAngle),a}setFocalOffset(e,t,n,r=!1){this._isUserControllingOffset=!1,this._focalOffsetEnd.set(e,t,n),this._needsUpdate=!0,r||this._focalOffset.copy(this._focalOffsetEnd);let i=!r||RU(this._focalOffset.x,this._focalOffsetEnd.x,this.restThreshold)&&RU(this._focalOffset.y,this._focalOffsetEnd.y,this.restThreshold)&&RU(this._focalOffset.z,this._focalOffsetEnd.z,this.restThreshold);return this._createOnRestPromise(i)}setOrbitPoint(e,t,n){this._camera.updateMatrixWorld(),oW.setFromMatrixColumn(this._camera.matrixWorldInverse,0),sW.setFromMatrixColumn(this._camera.matrixWorldInverse,1),cW.setFromMatrixColumn(this._camera.matrixWorldInverse,2);let r=nW.set(e,t,n),i=r.distanceTo(this._camera.position),a=r.sub(this._camera.position);oW.multiplyScalar(a.x),sW.multiplyScalar(a.y),cW.multiplyScalar(a.z),nW.copy(oW).add(sW).add(cW),nW.z+=i,this.dollyTo(i,!1),this.setFocalOffset(-nW.x,nW.y,-nW.z,!1),this.moveTo(e,t,n,!1)}setBoundary(e){if(!e){this._boundary.min.set(-1/0,-1/0,-1/0),this._boundary.max.set(1/0,1/0,1/0),this._needsUpdate=!0;return}this._boundary.copy(e),this._boundary.clampPoint(this._targetEnd,this._targetEnd),this._needsUpdate=!0}setViewport(e,t,n,r){if(e===null){this._viewport=null;return}this._viewport=this._viewport||new ZU.Vector4,typeof e==`number`?this._viewport.set(e,t,n,r):this._viewport.copy(e)}getDistanceToFitBox(e,t,n,r=!1){if(GU(this._camera,`getDistanceToFitBox`))return this._spherical.radius;let i=e/t,a=this._camera.getEffectiveFOV()*FU,o=this._camera.aspect;return((r?i>o:it.pointerId===e)}_findPointerByMouseButton(e){return this._activePointers.find(t=>t.mouseButton===e)}_disposePointer(e){this._activePointers.splice(this._activePointers.indexOf(e),1)}_encloseToBoundary(e,t,n){let r=t.lengthSq();if(r===0)return e;let i=rW.copy(t).add(e),a=this._boundary.clampPoint(i,iW).sub(i),o=a.lengthSq();if(o===0)return e.add(t);if(o===r)return e;if(n===0)return e.add(t).add(a);{let r=1+n*o/t.dot(a);return e.add(rW.copy(t).multiplyScalar(r)).add(a.multiplyScalar(1-n))}}_updateNearPlaneCorners(){if(AU(this._camera)){let e=this._camera,t=e.near,n=e.getEffectiveFOV()*FU,r=Math.tan(n*.5)*t,i=r*e.aspect;this._nearPlaneCorners[0].set(-i,-r,0),this._nearPlaneCorners[1].set(i,-r,0),this._nearPlaneCorners[2].set(i,r,0),this._nearPlaneCorners[3].set(-i,r,0)}else if(jU(this._camera)){let e=this._camera,t=1/e.zoom,n=e.left*t,r=e.right*t,i=e.top*t,a=e.bottom*t;this._nearPlaneCorners[0].set(n,i,0),this._nearPlaneCorners[1].set(r,i,0),this._nearPlaneCorners[2].set(r,a,0),this._nearPlaneCorners[3].set(n,a,0)}}_collisionTest(){let e=1/0;if(!(this.colliderMeshes.length>=1)||GU(this._camera,`_collisionTest`))return e;let t=this._getTargetDirection(aW);vW.lookAt(QU,t,this._camera.up);for(let n=0;n<4;n++){let r=rW.copy(this._nearPlaneCorners[n]);r.applyMatrix4(vW);let i=iW.addVectors(this._target,r);yW.set(i,t),yW.far=this._spherical.radius+1;let a=yW.intersectObjects(this.colliderMeshes);a.length!==0&&a[0].distance{let t=()=>{this.removeEventListener(`rest`,t),e()};this.addEventListener(`rest`,t)}))}_addAllEventListeners(e){}_removeAllEventListeners(){}get dampingFactor(){return console.warn(`.dampingFactor has been deprecated. use smoothTime (in seconds) instead.`),0}set dampingFactor(e){console.warn(`.dampingFactor has been deprecated. use smoothTime (in seconds) instead.`)}get draggingDampingFactor(){return console.warn(`.draggingDampingFactor has been deprecated. use draggingSmoothTime (in seconds) instead.`),0}set draggingDampingFactor(e){console.warn(`.draggingDampingFactor has been deprecated. use draggingSmoothTime (in seconds) instead.`)}static createBoundingSphere(e,t=new ZU.Sphere){let n=t,r=n.center;pW.makeEmpty(),e.traverseVisible(e=>{e.isMesh&&pW.expandByObject(e)}),pW.getCenter(r);let i=0;return e.traverseVisible(e=>{if(!e.isMesh)return;let t=e,n=t.geometry.clone();n.applyMatrix4(t.matrixWorld);let a=n.attributes.position;for(let e=0,t=a.count;e!!(e&&e.isPerspectiveCamera),SW=e=>!!(e&&e.isOrthographicCamera),CW=`min-polar-angle.max-polar-angle.min-azimuth-angle.max-azimuth-angle.distance.min-distance.max-distance.infinity-dolly.min-zoom.max-zoom.smooth-time.dragging-smooth-time.max-speed.azimuth-rotate-speed.polar-rotate-speed.dolly-speed.dolly-drag-inverted.truck-speed.dolly-to-cursor.drag-to-offset.vertical-drag-to-forward.boundary-friction.rest-threshold.collider-meshes.args.mouse-buttons.touches`.split(`.`),wW=(e,t)=>({left:bW.ACTION.ROTATE,middle:bW.ACTION.DOLLY,right:bW.ACTION.TRUCK,wheel:xW(e)?bW.ACTION.DOLLY:SW(e)?bW.ACTION.ZOOM:bW.ACTION.NONE,...t}),TW=(e,t)=>({one:bW.ACTION.TOUCH_ROTATE,two:xW(e)?bW.ACTION.TOUCH_DOLLY_TRUCK:SW(e)?bW.ACTION.TOUCH_ZOOM_TRUCK:bW.ACTION.NONE,three:bW.ACTION.TOUCH_TRUCK,...t}),EW=Xt({__name:`CameraControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},minPolarAngle:{default:0},maxPolarAngle:{default:Math.PI},minAzimuthAngle:{default:-1/0},maxAzimuthAngle:{default:1/0},distance:{default:()=>ve().camera.value.position.z},minDistance:{default:2**-52},maxDistance:{default:1/0},infinityDolly:{type:Boolean,default:!1},minZoom:{default:.01},maxZoom:{default:1/0},smoothTime:{default:.25},draggingSmoothTime:{default:.125},maxSpeed:{default:1/0},azimuthRotateSpeed:{default:1},polarRotateSpeed:{default:1},dollySpeed:{default:1},dollyDragInverted:{type:Boolean,default:!1},truckSpeed:{default:2},dollyToCursor:{type:Boolean,default:!1},dragToOffset:{type:Boolean,default:!1},verticalDragToForward:{type:Boolean,default:!1},boundaryFriction:{default:0},restThreshold:{default:.01},colliderMeshes:{default:()=>[]},mouseButtons:{default:()=>wW(ve().camera.value)},touches:{default:()=>TW(ve().camera.value)}},emits:[`change`,`start`,`end`],setup(e,{expose:t,emit:n}){let r=e,i=n,{makeDefault:a,minPolarAngle:o,maxPolarAngle:s,minAzimuthAngle:c,maxAzimuthAngle:l,distance:u,minDistance:d,maxDistance:f,infinityDolly:p,minZoom:m,maxZoom:h,smoothTime:g,draggingSmoothTime:_,maxSpeed:v,azimuthRotateSpeed:y,polarRotateSpeed:b,dollySpeed:x,dollyDragInverted:S,truckSpeed:C,dollyToCursor:w,dragToOffset:E,verticalDragToForward:D,boundaryFriction:O,restThreshold:k,colliderMeshes:A}=rn(r),j={Box3:xt,MathUtils:{clamp:Ie.clamp},Matrix4:se,Quaternion:ht,Raycaster:Le,Sphere:st,Spherical:ue,Vector2:He,Vector3:B,Vector4:Ae};bW.install({THREE:j});let{camera:M,renderer:N,extend:ee,controls:P,invalidate:F}=ve();V(r,()=>{F()});let I=Sn(()=>wW(r.camera||M.value,r.mouseButtons)),te=Sn(()=>TW(r.camera||M.value,r.touches)),L=W(null);ee({CameraControls:bW}),gn(()=>{R(),L.value&&a.value?P.value=L.value:P.value=null});function R(){DR(L.value,`update`,()=>{i(`change`,L.value),F()}),DR(L.value,`controlend`,()=>i(`end`,L.value)),DR(L.value,`controlstart`,()=>i(`start`,L.value))}let{onBeforeRender:ne}=T();return ne(({delta:e,invalidate:t})=>{var n,r;(n=L.value)!=null&&n.enabled&&((r=L.value)==null||r.update(e),t())}),mn(()=>{L.value&&L.value.disconnect()}),t({instance:L}),(e,t)=>(e.camera||G(M))&&(e.domElement||G(N))?(H(),fn(`TresCameraControls`,{key:0,ref_key:`controlsRef`,ref:L,"min-polar-angle":G(o),"max-polar-angle":G(s),"min-azimuth-angle":G(c),"max-azimuth-angle":G(l),distance:G(u),"min-distance":G(d),"max-distance":G(f),"infinity-dolly":G(p),"min-zoom":G(m),"max-zoom":G(h),"smooth-time":G(g),"dragging-smooth-time":G(_),"max-speed":G(v),"azimuth-rotate-speed":G(y),"polar-rotate-speed":G(b),"dolly-speed":G(x),"dolly-drag-inverted":G(S),"truck-speed":G(C),"dolly-to-cursor":G(w),"drag-to-offset":G(E),"vertical-drag-to-forward":G(D),"boundary-friction":G(O),"rest-threshold":G(k),"collider-meshes":G(A),args:[e.camera||G(M),e.domElement||G(N).domElement],"mouse-buttons":I.value,touches:te.value},null,8,CW)):Zt(``,!0)}}),DW=Xt({__name:`KeyboardControls`,props:{makeDefault:{type:Boolean,default:!0},camera:{},domElement:{},moveSpeed:{default:.2},selector:{}},emits:[`isLock`,`change`],setup(e,{expose:t,emit:n}){let r=e,i=n,{moveSpeed:a}=rn(r),{camera:o,controls:s,renderer:c,invalidate:l}=ve();V(r,()=>{l()});let u=U(0),d=U(0),{KeyW:f,KeyA:p,KeyS:m,KeyD:h,Up:g,Down:_,Left:v,Right:y}=IR();gn(()=>{p.value||v.value?u.value=-a.value:h.value||y.value?u.value=a.value:u.value=0,f.value||g.value?d.value=a.value:m.value||_.value?d.value=-a.value:d.value=0}),t({instance:s});let b=e=>i(`isLock`,e),x=e=>i(`change`,e),S=new B,C=new B,w=new ht,E=(e,t)=>{var n;if(!((n=o.value)!=null&&n.position)&&!S)return;let r=o.value,a=e*.001;r?.translateZ(-t),w.set(C.x*a,C.y*a,C.z*a,1).normalize(),r?.quaternion.multiply(w),(u.value||d.value)&&i(`change`,s.value)},{onBeforeRender:D}=T();return D(({delta:e,invalidate:t})=>{var n;s.value instanceof aV&&(n=s.value)!=null&&n.isLocked&&(E(e,d.value),s.value.moveRight(u.value),t())}),(e,t)=>(H(),_n(G(NW),{selector:e.selector,"make-default":e.makeDefault,camera:e.camera||G(o),"dom-element":e.domElement||G(c).domElement,onIsLock:b,onChange:x},null,8,[`selector`,`make-default`,`camera`,`dom-element`]))}}),OW=[`args`,`auto-rotate`,`auto-rotate-speed`,`enable-damping`,`damping-factor`,`enable-pan`,`key-pan-speed`,`keys`,`max-azimuth-angle`,`min-azimuth-angle`,`max-polar-angle`,`min-polar-angle`,`min-distance`,`max-distance`,`min-zoom`,`max-zoom`,`enable-zoom`,`zoom-speed`,`enable-rotate`,`rotate-speed`],kW=Xt({__name:`MapControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},target:{},enableDamping:{type:Boolean,default:!0},dampingFactor:{default:.05},autoRotate:{type:Boolean,default:!1},autoRotateSpeed:{default:2},enablePan:{type:Boolean,default:!0},keyPanSpeed:{default:7},keys:{},maxAzimuthAngle:{default:1/0},minAzimuthAngle:{default:-1/0},maxPolarAngle:{default:Math.PI},minPolarAngle:{default:0},minDistance:{default:0},maxDistance:{default:1/0},minZoom:{default:0},maxZoom:{default:1/0},touches:{},enableZoom:{type:Boolean,default:!0},zoomSpeed:{default:1},enableRotate:{type:Boolean,default:!0},rotateSpeed:{default:1}},emits:[`change`,`start`,`end`],setup(e,{expose:t,emit:n}){let r=e,{autoRotate:i,autoRotateSpeed:a,enableDamping:o,dampingFactor:s,enablePan:c,keyPanSpeed:l,maxAzimuthAngle:u,minAzimuthAngle:d,maxPolarAngle:f,minPolarAngle:p,minDistance:m,maxDistance:h,minZoom:g,maxZoom:_,enableZoom:v,zoomSpeed:y,enableRotate:b,rotateSpeed:x}=rn(r),{camera:S,renderer:C,extend:w,controls:E,invalidate:D}=ve();V(r,()=>{D()});let O=W(null);w({MapControls:mV}),V(E,e=>{e&&r.makeDefault?E.value=e:E.value=null});let{onBeforeRender:k}=T();return k(({invalidate:e})=>{O.value&&(o.value||i.value)&&(O.value.update(),e())}),mn(()=>{O.value&&O.value.dispose()}),t({instance:O}),(e,t)=>(e.camera||G(S))&&(e.domElement||G(C))?(H(),fn(`TresMapControls`,{key:0,ref_key:`controlsRef`,ref:O,args:[e.camera||G(S),e.domElement||G(C).domElement],"auto-rotate":G(i),"auto-rotate-speed":G(a),"enable-damping":G(o),"damping-factor":G(s),"enable-pan":G(c),"key-pan-speed":G(l),keys:e.keys,"max-azimuth-angle":G(u),"min-azimuth-angle":G(d),"max-polar-angle":G(f),"min-polar-angle":G(p),"min-distance":G(m),"max-distance":G(h),"min-zoom":G(g),"max-zoom":G(_),"enable-zoom":G(v),"zoom-speed":G(y),"enable-rotate":G(b),"rotate-speed":G(x)},null,8,OW)):Zt(``,!0)}}),AW=[`target`,`auto-rotate`,`auto-rotate-speed`,`enable-damping`,`damping-factor`,`enable-pan`,`key-pan-speed`,`keys`,`max-azimuth-angle`,`min-azimuth-angle`,`max-polar-angle`,`min-polar-angle`,`min-distance`,`max-distance`,`min-zoom`,`max-zoom`,`touches`,`enable-zoom`,`zoom-speed`,`enable-rotate`,`rotate-speed`,`mouse-buttons`,`args`],jW=Xt({__name:`OrbitControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},target:{default:()=>[0,0,0]},enableDamping:{type:Boolean,default:!0},dampingFactor:{default:.05},autoRotate:{type:Boolean,default:!1},autoRotateSpeed:{default:2},enablePan:{type:Boolean,default:!0},keyPanSpeed:{default:7},keys:{},maxAzimuthAngle:{default:1/0},minAzimuthAngle:{default:-1/0},maxPolarAngle:{default:Math.PI},minPolarAngle:{default:0},minDistance:{default:0},maxDistance:{default:1/0},minZoom:{default:0},maxZoom:{default:1/0},touches:{default:()=>({ONE:pt.ROTATE,TWO:pt.DOLLY_PAN})},enableZoom:{type:Boolean,default:!0},zoomSpeed:{default:1},enableRotate:{type:Boolean,default:!0},rotateSpeed:{default:1},mouseButtons:{default:()=>({LEFT:ut.ROTATE,MIDDLE:ut.DOLLY,RIGHT:ut.PAN})}},emits:[`change`,`start`,`end`],setup(e,{expose:t,emit:n}){let r=e,i=n,{makeDefault:a,autoRotate:o,autoRotateSpeed:s,enableDamping:c,dampingFactor:l,enablePan:u,keyPanSpeed:d,maxAzimuthAngle:f,minAzimuthAngle:p,maxPolarAngle:m,minPolarAngle:h,minDistance:g,maxDistance:_,minZoom:v,maxZoom:y,enableZoom:b,zoomSpeed:x,enableRotate:S,touches:C,rotateSpeed:w,target:E,mouseButtons:D}=rn(r),{camera:O,renderer:k,extend:A,controls:j,invalidate:M}=ve(),N=W(null);A({OrbitControls:pV}),V(N,e=>{ee(),e&&a.value?j.value=e:j.value=null});function ee(){DR(N.value,`change`,()=>{i(`change`,N.value),M()}),DR(N.value,`start`,()=>i(`start`,N.value)),DR(N.value,`end`,()=>i(`end`,N.value))}let{onBeforeRender:P}=T();return P(({invalidate:e})=>{N.value&&(c.value||o.value)&&(N.value.update(),o.value&&e())}),mn(()=>{N.value&&N.value.dispose()}),t({instance:N}),(e,t)=>(e.camera||G(O))&&(e.domElement||G(k))?(H(),fn(`TresOrbitControls`,{key:0,ref_key:`controlsRef`,ref:N,target:G(E),"auto-rotate":G(o),"auto-rotate-speed":G(s),"enable-damping":G(c),"damping-factor":G(l),"enable-pan":G(u),"key-pan-speed":G(d),keys:e.keys,"max-azimuth-angle":G(f),"min-azimuth-angle":G(p),"max-polar-angle":G(m),"min-polar-angle":G(h),"min-distance":G(g),"max-distance":G(_),"min-zoom":G(v),"max-zoom":G(y),touches:G(C),"enable-zoom":G(b),"zoom-speed":G(x),"enable-rotate":G(S),"rotate-speed":G(w),"mouse-buttons":G(D),args:[e.camera||G(O),e.domElement||G(k).domElement]},null,8,AW)):Zt(``,!0)}}),MW=[`args`],NW=Xt({__name:`PointerLockControls`,props:{makeDefault:{type:Boolean,default:!1},camera:{},domElement:{},selector:{}},emits:[`isLock`,`change`],setup(e,{expose:t,emit:n}){let r=e,i=n,{camera:a,renderer:o,extend:s,controls:c,invalidate:l}=ve();V(r,()=>{l()});let u=W(null),d;s({PointerLockControls:aV});let f=e=>{i(`isLock`,e)};return V(u,e=>{e&&r.makeDefault?c.value=e:c.value=null,d=document.getElementById(r.selector||``)||o.value.domElement,DR(d,`click`,()=>{u.value&&(u.value.lock(),u.value.addEventListener(`lock`,()=>f(!0)),u.value.addEventListener(`unlock`,()=>f(!1)),l())})}),mn(()=>{let e=u.value;e&&(e.removeEventListener(`lock`,()=>f(!0)),e.removeEventListener(`unlock`,()=>f(!1)),e.dispose())}),t({instance:c}),(e,t)=>(e.camera||G(a))&&(e.domElement||G(o))?(H(),fn(`TresPointerLockControls`,{key:0,ref_key:`controlsRef`,ref:u,args:[e.camera||G(a),e.domElement||G(o).domElement]},null,8,MW)):Zt(``,!0)}}),PW=Xt({__name:`ScrollControls`,props:{pages:{default:4},distance:{default:4},smoothScroll:{default:.1},horizontal:{type:Boolean,default:!1},htmlScroll:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(e,{expose:t,emit:n}){let r=e,i=n,{logWarning:a}=O();r.smoothScroll<0&&a(`SmoothControl must be greater than zero`),r.pages<0&&a(`Pages must be greater than zero`);let{camera:o,controls:s,renderer:c,invalidate:l}=ve();V(r,()=>{l()});let u=W(),d=document.createElement(`div`),{y:f}=zR(),{x:p,y:m,isScrolling:h}=PR(d),{height:g,width:_}=BR(),v=0,y=U(!1),b=U(0),x=U(0),S=U(0),C=r.horizontal?`x`:`y`,w=V(o,e=>{if(y.value){w();return}v=r.horizontal?e?.position.x||0:e?.position.y||0,y.value=!0},{immediate:!0});V(h,e=>{s.value&&(s.value.enabled=!e)},{immediate:!0}),V(f,e=>{!h.value&&!r.htmlScroll||(x.value=e/g.value/(S.value/g.value-1),b.value=-1*x.value,i(`update:modelValue`,x.value))}),V(m,e=>{x.value=e/g.value/(S.value/g.value),b.value=-1*x.value,i(`update:modelValue`,x.value)}),V(p,e=>{x.value=e/_.value/(S.value/_.value-1),b.value=+x.value,i(`update:modelValue`,x.value)}),V(c,e=>{var t,n;let i=e?.domElement;if(r.htmlScroll&&e!=null&&e.domElement)i!=null&&i.style.width&&i!=null&&i.style.position&&i!=null&&i.style.top&&i!=null&&i.style.left&&(i.style.width=`100%`,i.style.position=`fixed`,i.style.zIndex=` -99999`,i.style.top=`0`,i.style.left=`0`),S.value=document.body.scrollHeight;else{let a=document.createElement(`div`),o=document.createElement(`div`);d.style[r.horizontal?`overflowX`:`overflowY`]=`auto`,d.style[r.horizontal?`overflowY`:`overflowX`]=`hidden`,d.style.position=`absolute`,d.style.width=`100%`,d.style.height=` 100%`,d.style.top=`0`,d.style.left=`0`,d.classList.add(`scrollContainer`),a.style.position=`sticky`,a.style.top=`0px`,a.style.left=`0px`,a.style.width=`100%`,a.style.height=`100%`,a.style.overflow=`hidden`,d.appendChild(a),o.style.height=r.horizontal?`100%`:`${g.value*r.pages}px`,o.style.width=r.horizontal?`${_.value*r.pages}px`:`100vw`,o.style.pointerEvents=`none`,i.style.position=`fixed`,i.style.zIndex=`0`,i!=null&&i.style.width&&(i.style.width=`100%`),d.appendChild(o),e!=null&&e.domElement.parentNode&&(e.domElement.parentNode.style.position=`relative`),(n=(t=e?.domElement)?.parentNode)==null||n.appendChild(d),S.value=r.horizontal?_.value*r.pages:g.value*r.pages}},{immediate:!0});let{onBeforeRender:E}=T();return E(({invalidate:e})=>{var t;if((t=o.value)!=null&&t.position){let t=(b.value*r.distance-o.value.position[C]+v)*r.smoothScroll;o.value.position[C]+=t,u.value.children.length>0&&(u.value.position[C]+=t),e()}}),t({instance:u}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`wrapperRef`,ref:u},[vn(e.$slots,`default`)],512))}}),FW=[`object`,`args`,`mode`,`enabled`,`axis`,`translation-snap`,`rotation-snap`,`scale-snap`,`space`,`size`,`show-x`,`show-y`,`show-z`],IW=Xt({__name:`TransformControls`,props:{object:{},camera:{},mode:{default:`translate`},enabled:{type:Boolean,default:!0},axis:{default:`XYZ`},translationSnap:{},rotationSnap:{},scaleSnap:{},space:{default:`world`},size:{default:1},showX:{type:Boolean,default:!0},showY:{type:Boolean,default:!0},showZ:{type:Boolean,default:!0}},emits:[`dragging`,`change`,`mouseDown`,`mouseUp`,`objectChange`],setup(e,{expose:t,emit:n}){let r=e,i=n,{object:a,mode:o,enabled:s,axis:c,translationSnap:l,rotationSnap:u,scaleSnap:d,space:f,size:p,showX:m,showY:h,showZ:g}=rn(r),_=W(null),{controls:v,camera:y,renderer:b,extend:x,invalidate:S}=ve();V([a,o,s,c,l,u,d,f,p,m,h,g],()=>{S()}),x({TransformControls:qB});let C=()=>{S(),i(`change`)},w=e=>{v.value&&(v.value.enabled=!e.value),S(),i(`dragging`,e.value)},T=()=>{S(),i(`mouseDown`)},E=()=>{S(),i(`mouseDown`)},D=()=>{S(),i(`objectChange`)};function O(){DR(_.value,`change`,C),DR(_.value,`dragging-changed`,w),DR(_.value,`mouseDown`,T),DR(_.value,`mouseUp`,E),DR(_.value,`objectChange`,D)}return V(_,e=>{e&&O()}),mn(()=>{_.value&&_.value.dispose()}),t({instance:_}),(e,t)=>{var n;return(e.camera||G(y))&&G(b)?(H(),fn(`TresTransformControls`,{ref_key:`controlsRef`,ref:_,key:(n=e.camera||G(y))?.uuid,object:G(a),args:[e.camera||G(y),G(b).domElement],mode:G(o),enabled:G(s),axis:G(c),"translation-snap":G(l),"rotation-snap":G(u),"scale-snap":G(d),space:G(f),size:G(p),"show-x":G(m),"show-y":G(h),"show-z":G(g),visible:!0},null,8,FW)):Zt(``,!0)}}}),LW=[`geometry`,`render-order`],RW=Xt({__name:`component`,props:{src:{},skipStrokes:{type:Boolean,default:!1},skipFills:{type:Boolean,default:!1},fillMaterial:{},strokeMaterial:{},fillMeshProps:{},strokeMeshProps:{},depth:{default:`renderOrder`}},setup(e,{expose:t}){let n=e;class r extends UV{load(e,t,n,r){let i=Array.isArray(e)?e[0]:e;super.load(i,t,n,r)}}let{src:i,skipStrokes:a,skipFills:o,fillMaterial:s,strokeMaterial:c,fillMeshProps:l,strokeMeshProps:u,depth:d}=rn(n),f=W(),p=W([]),m=W([]);t({instance:f}),gn(async()=>h(i.value).then(e=>m.value=e.paths)),V([o,a,s,c,m],_);async function h(e){let t=e.startsWith(`e.geometry.dispose())}function _(){var e,t,r;g();let i=[],[s,c]=(()=>{let e={flat:!1,renderOrder:!1,offsetZ:!0},t={flat:0,renderOrder:0,offsetZ:.025},n=d.value;return typeof n==`number`?[!0,n]:[e[n],t[n]]})(),l=0;for(let u of m.value){let d=(e=u.userData)?.style??{},f=Object.assign({color:d.fill,opacity:d.fillOpacity,transparent:!0,side:ge,depthWrite:s},n.fillMaterial);if(!o.value&&d.fill!==void 0&&d.fill!==`none`)for(let e of UV.createShapes(u)){let t=new je(e);t.scale(1,-1,1),c&&t.translate(0,0,l++*c),i.push({geometry:t,material:f,isStroke:!1})}if(!a.value&&d.stroke!==void 0&&d.stroke!==`none`){let e=Object.assign({color:(t=u.userData)?.style.stroke,opacity:(r=u.userData)?.style.strokeOpacity,transparent:!0,side:ge,depthWrite:s},n.strokeMaterial);for(let t of u.subPaths){let n=t.getPoints().map(e=>new He(e.x,-e.y)),r=UV.pointsToStroke(n,d||`none`);c&&r.translate(0,0,l++*c),i.push({geometry:r,material:e,isStroke:!0})}}}p.value=i}return(e,t)=>(H(),fn(`TresGroup`,{ref_key:`svgRef`,ref:f},[(H(!0),fn(xn,null,hn(p.value,({geometry:e,material:t,isStroke:n},r)=>(H(),fn(`TresMesh`,Qt({key:`${r}`,ref_for:!0},G(n?u:l),{geometry:e,"render-order":G(d)===`renderOrder`?r:0}),[K(`TresMeshBasicMaterial`,Qt({ref_for:!0},t),null,16)],16,LW))),128))],512))}});function zW(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}function BW(e){throw Error(`Could not dynamically require "`+e+`". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.`)}var VW={exports:{}},HW;function UW(){return HW||(HW=1,function(e,t){(function(t){e.exports=t()})(function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof BW==`function`&&BW;if(!s&&c)return c(o,!0);if(a)return a(o,!0);throw Error(`Cannot find module '`+o+`'`)}s=n[o]={exports:{}},t[o][0].call(s.exports,function(e){var n=t[o][1][e];return i(n||e)},s,s.exports,e,t,n,r)}return n[o].exports}for(var a=typeof BW==`function`&&BW,o=0;o>16),c((65280&r)>>8),c(255&r);return i==2?c(255&(r=l(e.charAt(n))<<2|l(e.charAt(n+1))>>4)):i==1&&(c((r=l(e.charAt(n))<<10|l(e.charAt(n+1))<<4|l(e.charAt(n+2))>>2)>>8&255),c(255&r)),a},e.fromByteArray=function(e){var t,n,r,i,a=e.length%3,o=``;function s(e){return`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.charAt(e)}for(t=0,r=e.length-a;t>18&63)+s(i>>12&63)+s(i>>6&63)+s(63&i);switch(a){case 1:o=(o+=s((n=e[e.length-1])>>2))+s(n<<4&63)+`==`;break;case 2:o=(o=(o+=s((n=(e[e.length-2]<<8)+e[e.length-1])>>10))+s(n>>4&63))+s(n<<2&63)+`=`}return o}})(n===void 0?this.base64js={}:n)}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/base64-js/lib/b64.js`,`/node_modules/gulp-browserify/node_modules/base64-js/lib`)},{buffer:3,lYpoI2:11}],3:[function(e,t,n){(function(t,r,i,a,o,s,c,l,u){var d=e(`base64-js`),f=e(`ieee754`);function i(e,t,n){if(!(this instanceof i))return new i(e,t,n);var r,a,o,s,c=typeof e;if(t===`base64`&&c==`string`)for(e=(s=e).trim?s.trim():s.replace(/^\s+|\s+$/g,``);e.length%4!=0;)e+=`=`;if(c==`number`)r=A(e);else if(c==`string`)r=i.byteLength(e,t);else{if(c!=`object`)throw Error(`First argument needs to be a number, array or string.`);r=A(e.length)}if(i._useTypedArrays?a=i._augment(new Uint8Array(r)):((a=this).length=r,a._isBuffer=!0),i._useTypedArrays&&typeof e.byteLength==`number`)a._set(e);else if(j(s=e)||i.isBuffer(s)||s&&typeof s==`object`&&typeof s.length==`number`)for(o=0;o>8,n%=256,r.push(n),r.push(t);return r}(t),e,n,r)}function h(e,t,n){var r=``;n=Math.min(e.length,n);for(var i=t;i>>0)):(t+1>>0),i}function v(e,t,n,r){if(r||(R(typeof n==`boolean`,`missing or invalid endian`),R(t!=null,`missing offset`),R(t+1>>8*(r?a:1-a)}function C(e,t,n,r,i){if(i||(R(t!=null,`missing value`),R(typeof r==`boolean`,`missing or invalid endian`),R(n!=null,`missing offset`),R(n+3>>8*(r?a:3-a)&255}function w(e,t,n,r,i){i||(R(t!=null,`missing value`),R(typeof r==`boolean`,`missing or invalid endian`),R(n!=null,`missing offset`),R(n+1this.length&&(r=this.length);var a=(r=e.length-t=this.length))return this[e]},i.prototype.readUInt16LE=function(e,t){return g(this,e,!0,t)},i.prototype.readUInt16BE=function(e,t){return g(this,e,!1,t)},i.prototype.readUInt32LE=function(e,t){return _(this,e,!0,t)},i.prototype.readUInt32BE=function(e,t){return _(this,e,!1,t)},i.prototype.readInt8=function(e,t){if(t||(R(e!=null,`missing offset`),R(e=this.length))return 128&this[e]?-1*(255-this[e]+1):this[e]},i.prototype.readInt16LE=function(e,t){return v(this,e,!0,t)},i.prototype.readInt16BE=function(e,t){return v(this,e,!1,t)},i.prototype.readInt32LE=function(e,t){return y(this,e,!0,t)},i.prototype.readInt32BE=function(e,t){return y(this,e,!1,t)},i.prototype.readFloatLE=function(e,t){return b(this,e,!0,t)},i.prototype.readFloatBE=function(e,t){return b(this,e,!1,t)},i.prototype.readDoubleLE=function(e,t){return x(this,e,!0,t)},i.prototype.readDoubleBE=function(e,t){return x(this,e,!1,t)},i.prototype.writeUInt8=function(e,t,n){n||(R(e!=null,`missing value`),R(t!=null,`missing offset`),R(t=this.length||(this[t]=e)},i.prototype.writeUInt16LE=function(e,t,n){S(this,e,t,!0,n)},i.prototype.writeUInt16BE=function(e,t,n){S(this,e,t,!1,n)},i.prototype.writeUInt32LE=function(e,t,n){C(this,e,t,!0,n)},i.prototype.writeUInt32BE=function(e,t,n){C(this,e,t,!1,n)},i.prototype.writeInt8=function(e,t,n){n||(R(e!=null,`missing value`),R(t!=null,`missing offset`),R(t=this.length||(0<=e?this.writeUInt8(e,t,n):this.writeUInt8(255+e+1,t,n))},i.prototype.writeInt16LE=function(e,t,n){w(this,e,t,!0,n)},i.prototype.writeInt16BE=function(e,t,n){w(this,e,t,!1,n)},i.prototype.writeInt32LE=function(e,t,n){T(this,e,t,!0,n)},i.prototype.writeInt32BE=function(e,t,n){T(this,e,t,!1,n)},i.prototype.writeFloatLE=function(e,t,n){E(this,e,t,!0,n)},i.prototype.writeFloatBE=function(e,t,n){E(this,e,t,!1,n)},i.prototype.writeDoubleLE=function(e,t,n){D(this,e,t,!0,n)},i.prototype.writeDoubleBE=function(e,t,n){D(this,e,t,!1,n)},i.prototype.fill=function(e,t,n){if(t||=0,n||=this.length,R(typeof(e=typeof(e||=0)==`string`?e.charCodeAt(0):e)==`number`&&!isNaN(e),`value is not a number`),R(t<=n,`end < start`),n!==t&&this.length!==0){R(0<=t&&t`},i.prototype.toArrayBuffer=function(){if(typeof Uint8Array>`u`)throw Error(`Buffer.toArrayBuffer not supported in this browser`);if(i._useTypedArrays)return new i(this).buffer;for(var e=new Uint8Array(this.length),t=0,n=e.length;t=t.length||i>=e.length);i++)t[i+n]=e[i];return i}function F(e){try{return decodeURIComponent(e)}catch{return`�`}}function I(e,t){R(typeof e==`number`,`cannot write a non-number as a number`),R(0<=e,`specified a negative value for writing an unsigned value`),R(e<=t,`value is larger than maximum value for type`),R(Math.floor(e)===e,`value has a fractional component`)}function te(e,t,n){R(typeof e==`number`,`cannot write a non-number as a number`),R(e<=t,`value larger than maximum allowed value`),R(n<=e,`value smaller than minimum allowed value`),R(Math.floor(e)===e,`value has a fractional component`)}function L(e,t,n){R(typeof e==`number`,`cannot write a non-number as a number`),R(e<=t,`value larger than maximum allowed value`),R(n<=e,`value smaller than minimum allowed value`)}function R(e,t){if(!e)throw Error(t||`Failed assertion`)}i._augment=function(e){return e._isBuffer=!0,e._get=e.get,e._set=e.set,e.get=O.get,e.set=O.set,e.write=O.write,e.toString=O.toString,e.toLocaleString=O.toString,e.toJSON=O.toJSON,e.copy=O.copy,e.slice=O.slice,e.readUInt8=O.readUInt8,e.readUInt16LE=O.readUInt16LE,e.readUInt16BE=O.readUInt16BE,e.readUInt32LE=O.readUInt32LE,e.readUInt32BE=O.readUInt32BE,e.readInt8=O.readInt8,e.readInt16LE=O.readInt16LE,e.readInt16BE=O.readInt16BE,e.readInt32LE=O.readInt32LE,e.readInt32BE=O.readInt32BE,e.readFloatLE=O.readFloatLE,e.readFloatBE=O.readFloatBE,e.readDoubleLE=O.readDoubleLE,e.readDoubleBE=O.readDoubleBE,e.writeUInt8=O.writeUInt8,e.writeUInt16LE=O.writeUInt16LE,e.writeUInt16BE=O.writeUInt16BE,e.writeUInt32LE=O.writeUInt32LE,e.writeUInt32BE=O.writeUInt32BE,e.writeInt8=O.writeInt8,e.writeInt16LE=O.writeInt16LE,e.writeInt16BE=O.writeInt16BE,e.writeInt32LE=O.writeInt32LE,e.writeInt32BE=O.writeInt32BE,e.writeFloatLE=O.writeFloatLE,e.writeFloatBE=O.writeFloatBE,e.writeDoubleLE=O.writeDoubleLE,e.writeDoubleBE=O.writeDoubleBE,e.fill=O.fill,e.inspect=O.inspect,e.toArrayBuffer=O.toArrayBuffer,e}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/buffer/index.js`,`/node_modules/gulp-browserify/node_modules/buffer`)},{"base64-js":2,buffer:3,ieee754:10,lYpoI2:11}],4:[function(e,t,n){(function(n,r,i,a,o,s,c,l,u){var i=e(`buffer`).Buffer,d=4,f=new i(d);f.fill(0),t.exports={hash:function(e,t,n,r){for(var a=t(function(e,t){e.length%d!=0&&(n=e.length+(d-e.length%d),e=i.concat([e,f],n));for(var n,r=[],a=t?e.readInt32BE:e.readInt32LE,o=0;oh?t=e(t):t.length>5]|=128<>>9<<4)]=t;for(var n=1732584193,r=-271733879,i=-1732584194,a=271733878,o=0;o>>32-i,n)}function m(e,t,n,r,i,a,o){return p(t&n|~t&r,e,t,i,a,o)}function h(e,t,n,r,i,a,o){return p(t&r|n&~r,e,t,i,a,o)}function g(e,t,n,r,i,a,o){return p(t^n^r,e,t,i,a,o)}function _(e,t,n,r,i,a,o){return p(n^(t|~r),e,t,i,a,o)}function v(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}t.exports=function(e){return d.hash(e,f,16)}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/md5.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{"./helpers":4,buffer:3,lYpoI2:11}],7:[function(e,t,n){(function(e,n,r,i,a,o,s,c,l){t.exports=function(e){for(var t,n=Array(e),r=0;r>>((3&r)<<3)&255;return n}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/rng.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{buffer:3,lYpoI2:11}],8:[function(e,t,n){(function(n,r,i,a,o,s,c,l,u){var d=e(`./helpers`);function f(e,t){e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var n,r,i,a=Array(80),o=1732584193,s=-271733879,c=-1732584194,l=271733878,u=-1009589776,d=0;d>16)+(t>>16)+(n>>16)<<16|65535&n}function m(e,t){return e<>>32-t}t.exports=function(e){return d.hash(e,f,20,!0)}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/sha.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{"./helpers":4,buffer:3,lYpoI2:11}],9:[function(e,t,n){(function(n,r,i,a,o,s,c,l,u){function d(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function f(e,t){var n,r=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],i=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],a=Array(64);e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var o,s,c=0;c>>t|e<<32-t},h=function(e,t){return e>>>t};t.exports=function(e){return p.hash(e,f,32,!0)}}).call(this,e(`lYpoI2`),typeof self<`u`?self:typeof window<`u`?window:{},e(`buffer`).Buffer,arguments[3],arguments[4],arguments[5],arguments[6],`/node_modules/gulp-browserify/node_modules/crypto-browserify/sha256.js`,`/node_modules/gulp-browserify/node_modules/crypto-browserify`)},{"./helpers":4,buffer:3,lYpoI2:11}],10:[function(e,t,n){(function(e,t,r,i,a,o,s,c,l){n.read=function(e,t,n,r,i){var a,o,s=8*i-r-1,c=(1<>1,u=-7,d=n?i-1:0,f=n?-1:1,i=e[t+d];for(d+=f,a=i&(1<<-u)-1,i>>=-u,u+=s;0>=-u,u+=r;0>1,d=i===23?2**-24-2**-77:0,f=r?0:a-1,p=r?1:-1,a=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(r=2**-o)<1&&(o--,r*=2),2<=(t+=1<=o+u?d/r:d*2**(1-u))*r&&(o++,r/=2),l<=o+u?(s=0,o=l):1<=o+u?(s=(t*r-1)*2**i,o+=u):(s=t*2**(u-1)*2**i,o=0));8<=i;e[n+f]=255&s,f+=p,s/=256,i-=8);for(o=o<>= ++ -- << >> <= >= == != && || += -= *= /= %= &= ^^ ^= |= ( ) [ ] . ! ~ * / % + - < > & ^ | ? : = , ; { }`.split(` `)),YW}var QW,$W;function eG(){return $W||($W=1,QW=`abs.acos.all.any.asin.atan.ceil.clamp.cos.cross.dFdx.dFdy.degrees.distance.dot.equal.exp.exp2.faceforward.floor.fract.gl_BackColor.gl_BackLightModelProduct.gl_BackLightProduct.gl_BackMaterial.gl_BackSecondaryColor.gl_ClipPlane.gl_ClipVertex.gl_Color.gl_DepthRange.gl_DepthRangeParameters.gl_EyePlaneQ.gl_EyePlaneR.gl_EyePlaneS.gl_EyePlaneT.gl_Fog.gl_FogCoord.gl_FogFragCoord.gl_FogParameters.gl_FragColor.gl_FragCoord.gl_FragData.gl_FragDepth.gl_FragDepthEXT.gl_FrontColor.gl_FrontFacing.gl_FrontLightModelProduct.gl_FrontLightProduct.gl_FrontMaterial.gl_FrontSecondaryColor.gl_LightModel.gl_LightModelParameters.gl_LightModelProducts.gl_LightProducts.gl_LightSource.gl_LightSourceParameters.gl_MaterialParameters.gl_MaxClipPlanes.gl_MaxCombinedTextureImageUnits.gl_MaxDrawBuffers.gl_MaxFragmentUniformComponents.gl_MaxLights.gl_MaxTextureCoords.gl_MaxTextureImageUnits.gl_MaxTextureUnits.gl_MaxVaryingFloats.gl_MaxVertexAttribs.gl_MaxVertexTextureImageUnits.gl_MaxVertexUniformComponents.gl_ModelViewMatrix.gl_ModelViewMatrixInverse.gl_ModelViewMatrixInverseTranspose.gl_ModelViewMatrixTranspose.gl_ModelViewProjectionMatrix.gl_ModelViewProjectionMatrixInverse.gl_ModelViewProjectionMatrixInverseTranspose.gl_ModelViewProjectionMatrixTranspose.gl_MultiTexCoord0.gl_MultiTexCoord1.gl_MultiTexCoord2.gl_MultiTexCoord3.gl_MultiTexCoord4.gl_MultiTexCoord5.gl_MultiTexCoord6.gl_MultiTexCoord7.gl_Normal.gl_NormalMatrix.gl_NormalScale.gl_ObjectPlaneQ.gl_ObjectPlaneR.gl_ObjectPlaneS.gl_ObjectPlaneT.gl_Point.gl_PointCoord.gl_PointParameters.gl_PointSize.gl_Position.gl_ProjectionMatrix.gl_ProjectionMatrixInverse.gl_ProjectionMatrixInverseTranspose.gl_ProjectionMatrixTranspose.gl_SecondaryColor.gl_TexCoord.gl_TextureEnvColor.gl_TextureMatrix.gl_TextureMatrixInverse.gl_TextureMatrixInverseTranspose.gl_TextureMatrixTranspose.gl_Vertex.greaterThan.greaterThanEqual.inversesqrt.length.lessThan.lessThanEqual.log.log2.matrixCompMult.max.min.mix.mod.normalize.not.notEqual.pow.radians.reflect.refract.sign.sin.smoothstep.sqrt.step.tan.texture2D.texture2DLod.texture2DProj.texture2DProjLod.textureCube.textureCubeLod.texture2DLodEXT.texture2DProjLodEXT.textureCubeLodEXT.texture2DGradEXT.texture2DProjGradEXT.textureCubeGradEXT`.split(`.`)),QW}var tG,nG;function rG(){if(nG)return tG;nG=1;var e=JW();return tG=e.slice().concat(`layout.centroid.smooth.case.mat2x2.mat2x3.mat2x4.mat3x2.mat3x3.mat3x4.mat4x2.mat4x3.mat4x4.uvec2.uvec3.uvec4.samplerCubeShadow.sampler2DArray.sampler2DArrayShadow.isampler2D.isampler3D.isamplerCube.isampler2DArray.usampler2D.usampler3D.usamplerCube.usampler2DArray.coherent.restrict.readonly.writeonly.resource.atomic_uint.noperspective.patch.sample.subroutine.common.partition.active.filter.image1D.image2D.image3D.imageCube.iimage1D.iimage2D.iimage3D.iimageCube.uimage1D.uimage2D.uimage3D.uimageCube.image1DArray.image2DArray.iimage1DArray.iimage2DArray.uimage1DArray.uimage2DArray.image1DShadow.image2DShadow.image1DArrayShadow.image2DArrayShadow.imageBuffer.iimageBuffer.uimageBuffer.sampler1DArray.sampler1DArrayShadow.isampler1D.isampler1DArray.usampler1D.usampler1DArray.isampler2DRect.usampler2DRect.samplerBuffer.isamplerBuffer.usamplerBuffer.sampler2DMS.isampler2DMS.usampler2DMS.sampler2DMSArray.isampler2DMSArray.usampler2DMSArray`.split(`.`)),tG}var iG,aG;function oG(){if(aG)return iG;aG=1;var e=eG();return e=e.slice().filter(function(e){return!/^(gl\_|texture)/.test(e)}),iG=e.concat(`gl_VertexID.gl_InstanceID.gl_Position.gl_PointSize.gl_FragCoord.gl_FrontFacing.gl_FragDepth.gl_PointCoord.gl_MaxVertexAttribs.gl_MaxVertexUniformVectors.gl_MaxVertexOutputVectors.gl_MaxFragmentInputVectors.gl_MaxVertexTextureImageUnits.gl_MaxCombinedTextureImageUnits.gl_MaxTextureImageUnits.gl_MaxFragmentUniformVectors.gl_MaxDrawBuffers.gl_MinProgramTexelOffset.gl_MaxProgramTexelOffset.gl_DepthRangeParameters.gl_DepthRange.trunc.round.roundEven.isnan.isinf.floatBitsToInt.floatBitsToUint.intBitsToFloat.uintBitsToFloat.packSnorm2x16.unpackSnorm2x16.packUnorm2x16.unpackUnorm2x16.packHalf2x16.unpackHalf2x16.outerProduct.transpose.determinant.inverse.texture.textureSize.textureProj.textureLod.textureOffset.texelFetch.texelFetchOffset.textureProjOffset.textureLodOffset.textureProjLod.textureProjLodOffset.textureGrad.textureGradOffset.textureProjGrad.textureProjGradOffset`.split(`.`)),iG}var sG,cG;function lG(){if(cG)return sG;cG=1,sG=b;var e=JW(),t=ZW(),n=eG(),r=rG(),i=oG(),a=999,o=9999,s=0,c=1,l=2,u=3,d=4,f=5,p=6,m=7,h=8,g=9,_=10,v=11,y=[`block-comment`,`line-comment`,`preprocessor`,`operator`,`integer`,`float`,`ident`,`builtin`,`keyword`,`whitespace`,`eof`,`integer`];function b(b){var x=0,S=0,C=a,w,T,E=[],D=[],O=1,k=0,A=0,j=!1,M=!1,N=``,ee;b||={};var P=n,F=e;b.version===`300 es`&&(P=i,F=r);for(var I={},te={},x=0;x0)continue;i=e.slice(0,1).join(``)}return L(i),A+=i.length,E=E.slice(i.length),E.length}while(!0)}function le(){return/[^a-fA-F0-9]/.test(w)?(L(E.join(``)),C=a,x):(E.push(w),T=w,x+1)}function ue(){return w===`.`||/[eE]/.test(w)?(E.push(w),C=f,T=w,x+1):w===`x`&&E.length===1&&E[0]===`0`?(C=v,E.push(w),T=w,x+1):/[^\d]/.test(w)?(L(E.join(``)),C=a,x):(E.push(w),T=w,x+1)}function de(){return w===`f`&&(E.push(w),T=w,x+=1),/[eE]/.test(w)||(w===`-`||w===`+`)&&/[eE]/.test(T)?(E.push(w),T=w,x+1):/[^\d]/.test(w)?(L(E.join(``)),C=a,x):(E.push(w),T=w,x+1)}function fe(){if(/[^\d\w_]/.test(w)){var e=E.join(``);return C=te[e]?h:I[e]?m:p,L(E.join(``)),C=a,x}return E.push(w),T=w,x+1}}return sG}var uG,dG;function fG(){if(dG)return uG;dG=1;var e=lG();uG=t;function t(t,n){var r=e(n),i=[];return i=i.concat(r(t)),i=i.concat(r(null)),i}return uG}var pG=fG();const mG=zW(pG);var hG,gG;function _G(){if(gG)return hG;gG=1,hG=e;function e(e){for(var t=[],n=0;n=0;i--){if(n(e[i]))return i;if(r&&r(e[i]))return-1}return-1}}function t(e){return function(t){return t.type===`operator`&&(!e||t.data===e)}}function n(e){return e.type!==`whitespace`}return bG}var CG=SG();const wG=zW(CG);function TG(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return String(e)}function EG(e){var t=TG(e,`string`);return typeof t==`symbol`?t:String(t)}function DG(e,t,n){return t=EG(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function OG(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function kG(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function jG(e,t){if(e==null)return{};var n=AG(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function MG(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function NG(e,t){for(var n=0;n`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function BG(e,t){if(t&&(typeof t==`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return FG(e)}function VG(e){var t=zG();return function(){var n=RG(e),r;if(t){var i=RG(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return BG(this,r)}}var HG={position:`csm_Position`,positionRaw:`csm_PositionRaw`,pointSize:`csm_PointSize`,fragColor:`csm_FragColor`,diffuseColor:`csm_DiffuseColor`,normal:`csm_Normal`,roughness:`csm_Roughness`,metalness:`csm_Metalness`,emissive:`csm_Emissive`,ao:`csm_AO`,bump:`csm_Bump`,depthAlpha:`csm_DepthAlpha`},UG,WG,GG=(UG={},DG(UG,`${HG.normal}`,{"#include ":` + vec3 objectNormal = ${HG.normal}; + #ifdef USE_TANGENT + vec3 objectTangent = vec3( tangent.xyz ); + #endif + `}),DG(UG,`${HG.position}`,{"#include ":` + vec3 transformed = ${HG.position}; + `}),DG(UG,`${HG.positionRaw}`,{"#include ":` + vec4 csm_internal_positionUnprojected = ${HG.positionRaw}; + mat4x4 csm_internal_unprojectMatrix = projectionMatrix * modelViewMatrix; + #ifdef USE_INSTANCING + csm_internal_unprojectMatrix = csm_internal_unprojectMatrix * instanceMatrix; + #endif + csm_internal_positionUnprojected = inverse(csm_internal_unprojectMatrix) * csm_internal_positionUnprojected; + vec3 transformed = csm_internal_positionUnprojected.xyz; + `}),DG(UG,`${HG.pointSize}`,{"gl_PointSize = size;":` + gl_PointSize = ${HG.pointSize}; + `}),DG(UG,`${HG.diffuseColor}`,{"#include ":` + #include + diffuseColor = ${HG.diffuseColor}; + `}),DG(UG,`${HG.fragColor}`,{"#include ":` + #include + gl_FragColor = ${HG.fragColor}; + `}),DG(UG,`${HG.emissive}`,{"vec3 totalEmissiveRadiance = emissive;":` + vec3 totalEmissiveRadiance = ${HG.emissive}; + `}),DG(UG,`${HG.roughness}`,{"#include ":` + #include + roughnessFactor = ${HG.roughness}; + `}),DG(UG,`${HG.metalness}`,{"#include ":` + #include + metalnessFactor = ${HG.metalness}; + `}),DG(UG,`${HG.ao}`,{"#include ":` + #include + reflectedLight.indirectDiffuse *= 1. - ${HG.ao}; + `}),DG(UG,`${HG.bump}`,{"#include ":` + #include + + vec3 csm_internal_orthogonal = ${HG.bump} - (dot(${HG.bump}, normal) * normal); + vec3 csm_internal_projectedbump = mat3(csm_internal_vModelViewMatrix) * csm_internal_orthogonal; + normal = normalize(normal - csm_internal_projectedbump); + `}),DG(UG,`${HG.depthAlpha}`,{"gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );":` + gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity * ${HG.depthAlpha} ); + `,"gl_FragColor = packDepthToRGBA( fragCoordZ );":` + gl_FragColor = packDepthToRGBA( fragCoordZ ); + gl_FragColor.a *= ${HG.depthAlpha}; + `}),UG),KG=(WG={},DG(WG,`${HG.position}`,{"gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );":` + gl_Position = projectionMatrix * modelViewMatrix * vec4( ${HG.position}, 1.0 ); + `}),DG(WG,`${HG.positionRaw}`,{"gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );":` + gl_Position = ${HG.position}; + `}),DG(WG,`${HG.diffuseColor}`,{"gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );":` + gl_FragColor = ${HG.diffuseColor}; + `}),DG(WG,`${HG.fragColor}`,{"gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );":` + gl_FragColor = ${HG.fragColor}; + `}),WG),qG=` + +#ifdef IS_VERTEX + // csm_Position & csm_PositionRaw + #ifdef IS_UNKNOWN + vec3 csm_Position = vec3(0.0); + vec4 csm_PositionRaw = vec4(0.0); + vec3 csm_Normal = vec3(0.0); + #else + vec3 csm_Position = position; + vec4 csm_PositionRaw = projectionMatrix * modelViewMatrix * vec4(position, 1.); + vec3 csm_Normal = normal; + #endif + + // csm_PointSize + #ifdef IS_POINTSMATERIAL + float csm_PointSize = size; + #endif +#else + // csm_DiffuseColor & csm_FragColor + #if defined IS_UNKNOWN || defined IS_SHADERMATERIAL || defined IS_MESHDEPTHMATERIAL || defined IS_MESHNORMALMATERIAL || defined IS_SHADOWMATERIAL + vec4 csm_DiffuseColor = vec4(1.0, 0.0, 1.0, 1.0); + vec4 csm_FragColor = vec4(1.0, 0.0, 1.0, 1.0); + #else + #ifdef USE_MAP + vec4 _csm_sampledDiffuseColor = texture2D(map, vMapUv); + + #ifdef DECODE_VIDEO_TEXTURE + // inline sRGB decode (TODO: Remove this code when https://crbug.com/1256340 is solved) + _csm_sampledDiffuseColor = vec4(mix(pow(_csm_sampledDiffuseColor.rgb * 0.9478672986 + vec3(0.0521327014), vec3(2.4)), _csm_sampledDiffuseColor.rgb * 0.0773993808, vec3(lessThanEqual(_csm_sampledDiffuseColor.rgb, vec3(0.04045)))), _csm_sampledDiffuseColor.w); + #endif + + vec4 csm_DiffuseColor = vec4(diffuse, opacity) * _csm_sampledDiffuseColor; + vec4 csm_FragColor = vec4(diffuse, opacity) * _csm_sampledDiffuseColor; + #else + vec4 csm_DiffuseColor = vec4(diffuse, opacity); + vec4 csm_FragColor = vec4(diffuse, opacity); + #endif + #endif + + // csm_Emissive, csm_Roughness, csm_Metalness + #if defined IS_MESHSTANDARDMATERIAL || defined IS_MESHPHYSICALMATERIAL + vec3 csm_Emissive = emissive; + float csm_Roughness = roughness; + float csm_Metalness = metalness; + #endif + + // csm_AO + #if defined IS_MESHSTANDARDMATERIAL || defined IS_MESHPHYSICALMATERIAL || defined IS_MESHBASICMATERIAL || defined IS_MESHLAMBERTMATERIAL || defined IS_MESHPHONGMATERIAL || defined IS_MESHTOONMATERIAL + float csm_AO = 0.0; + #endif + + // csm_Bump + #if defined IS_MESHLAMBERTMATERIAL || defined IS_MESHMATCAPMATERIAL || defined IS_MESHNORMALMATERIAL || defined IS_MESHPHONGMATERIAL || defined IS_MESHPHYSICALMATERIAL || defined IS_MESHSTANDARDMATERIAL || defined IS_MESHTOONMATERIAL || defined IS_SHADOWMATERIAL + vec3 csm_Bump = vec3(0.0); + #endif + + float csm_DepthAlpha = 1.0; +#endif +`,JG=` + varying mat4 csm_internal_vModelViewMatrix; +`,YG=` + csm_internal_vModelViewMatrix = modelViewMatrix; +`,XG=` + varying mat4 csm_internal_vModelViewMatrix; +`,ZG=` + +`,QG,$G=(QG={},DG(QG,`${HG.position}`,`*`),DG(QG,`${HG.positionRaw}`,`*`),DG(QG,`${HG.normal}`,`*`),DG(QG,`${HG.pointSize}`,[`PointsMaterial`]),DG(QG,`${HG.diffuseColor}`,`*`),DG(QG,`${HG.fragColor}`,`*`),DG(QG,`${HG.emissive}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`]),DG(QG,`${HG.roughness}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`]),DG(QG,`${HG.metalness}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`]),DG(QG,`${HG.ao}`,[`MeshStandardMaterial`,`MeshPhysicalMaterial`,`MeshBasicMaterial`,`MeshLambertMaterial`,`MeshPhongMaterial`,`MeshToonMaterial`]),DG(QG,`${HG.bump}`,[`MeshLambertMaterial`,`MeshMatcapMaterial`,`MeshNormalMaterial`,`MeshPhongMaterial`,`MeshPhysicalMaterial`,`MeshStandardMaterial`,`MeshToonMaterial`,`ShadowMaterial`]),DG(QG,`${HG.depthAlpha}`,`*`),QG),eK=[`baseMaterial`,`fragmentShader`,`vertexShader`,`uniforms`,`patchMap`,`cacheKey`,`silent`],tK=function(e,t,n){return e.split(t).join(n)},nK=function(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,`\\$&`)},rK=function(e,t){return RegExp(`\\b${nK(t)}\\b`).test(e)};function iK(e){try{new e}catch(e){if(e.message.indexOf(`is not a constructor`)>=0)return!1}return!0}function aK(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;Object.assign(e,t);var r=Object.getPrototypeOf(t);Object.entries(Object.getOwnPropertyDescriptors(r)).filter(function(e){var t=typeof e[1].get==`function`,n=typeof e[1].set==`function`,r=typeof e[1].value==`function`,i=e[0]===`constructor`;return(t||n||r)&&!i}).forEach(function(t){if(typeof e[t[0]]==`function`){n||console.warn(`Function ${t[0]} already exists on CSM, renaming to base_${t[0]}`);var r=`base_${t[0]}`;e[r]=t[1].value.bind(e);return}Object.defineProperty(e,t[0],t[1])})}function oK(e){var t=e.toString().trim(),n=t.substring(t.indexOf(`{`)+1,t.lastIndexOf(`}`));return n.trim().length===0}function sK(e){return e.replace(/\s/g,``)}function cK(e,t,n){var r=e.lastIndexOf(t);return r===-1?e:e.substring(0,r)+n+e.substring(r+t.length)}var lK=function(e){LG(n,e);var t=VG(n);function n(e){var r,i=e.baseMaterial,a=e.fragmentShader,o=e.vertexShader,s=e.uniforms,c=e.patchMap,l=e.cacheKey,u=e.silent,d=jG(e,eK);MG(this,n);var f;if(iK(i)?f=new i(d):(f=i,Object.assign(f,d)),f.type===`RawShaderMaterial`)throw Error(`CustomShaderMaterial does not support RawShaderMaterial`);r=t.call(this),aK(FG(r),f,u),r.__csm={patchMap:c||{},fragmentShader:a||``,vertexShader:o||``,cacheKey:l,baseMaterial:i,instanceID:Ie.generateUUID(),type:f.type,isAlreadyExtended:!oK(f.onBeforeCompile),cacheHash:``,silent:u},r.uniforms=kG(kG({},r.uniforms||{}),s||{});var p=r.__csm,m=p.fragmentShader,h=p.vertexShader,g=r.uniforms;return r.__csm.cacheHash=r.getCacheHash(),r.generateMaterial(m,h,g),r}return PG(n,[{key:`update`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.uniforms=e.uniforms||this.uniforms,Object.assign(this.__csm,e);var t=this.__csm,n=t.fragmentShader,r=t.vertexShader,i=this.uniforms,a=this.getCacheHash();this.__csm.cacheHash=a,this.generateMaterial(n,r,i)}},{key:`clone`,value:function(){var e={baseMaterial:this.__csm.baseMaterial,fragmentShader:this.__csm.fragmentShader,vertexShader:this.__csm.vertexShader,uniforms:this.uniforms,silent:this.__csm.silent,patchMap:this.__csm.patchMap,cacheKey:this.__csm.cacheKey},t=new this.constructor(e);return Object.assign(this,t),t}},{key:`getCacheHash`,value:function(){var e=this.__csm,t=e.fragmentShader,n=e.vertexShader,r=this.uniforms,i=Object.values(r).reduce(function(e,t){var n=t.value;return e+JSON.stringify(n)},``),a=sK(t)+sK(n)+i;return a.trim().length>0?GW(a):this.customProgramCacheKey()}},{key:`generateMaterial`,value:function(e,t,n){var r=this,i=this.parseShader(e),a=this.parseShader(t);this.uniforms=n||{},this.customProgramCacheKey=function(){return r.__csm.cacheHash};var o=function(e){try{if(i){var t=r.patchShader(i,e.fragmentShader,!0);e.fragmentShader=r.getMaterialDefine()+t}if(a){var n=r.patchShader(a,e.vertexShader);e.vertexShader=`#define IS_VERTEX; +`+n,e.vertexShader=r.getMaterialDefine()+e.vertexShader}e.uniforms=kG(kG({},e.uniforms),r.uniforms),r.uniforms=e.uniforms}catch(e){console.error(e)}};if(this.__csm.isAlreadyExtended){var s=this.onBeforeCompile;this.onBeforeCompile=function(e,t){s(e,t),o(e)}}else this.onBeforeCompile=o;this.needsUpdate=!0}},{key:`patchShader`,value:function(e,t,n){var r=this,i=t,a=kG(kG({},this.getPatchMapForMaterial()),this.__csm.patchMap);Object.keys(a).forEach(function(t){Object.keys(a[t]).forEach(function(n){var o=$G[t],s=r.__csm.type;if(t===`*`||rK(e.main,t))if(!o||Array.isArray(o)&&o.includes(s)||o===`*`)i=tK(i,n,a[t][n]);else throw Error(`CSM: ${t} is not available in ${s}. Shader cannot compile.`)})}),i=i.replace(`void main() {`,` + #ifndef CSM_IS_HEAD_DEFAULTS_DEFINED + ${n?XG:JG} + #define CSM_IS_HEAD_DEFAULTS_DEFINED 1 + #endif + + ${e.header} + + void main() { + #ifndef CSM_IS_DEFAULTS_DEFINED + ${qG} + #define CSM_IS_DEFAULTS_DEFINED 1 + #endif + + #ifndef CSM_IS_MAIN_DEFAULTS_DEFINED + ${n?ZG:YG} + #define CSM_IS_MAIN_DEFAULTS_DEFINED 1 + #endif + + // CSM_START + `);var o=this.__csm.isAlreadyExtended,s=i.includes(`// CSM_END`);return i=o&&s?cK(i,`// CSM_END`,` + // CSM_END + ${e.main} + // CSM_END + `):i.replace(`// CSM_START`,` + // CSM_START + ${e.main} + // CSM_END + `),i=e.defines+i,i}},{key:`parseShader`,value:function(e){if(e){var t=e.replace(/\/\*\*(.*?)\*\/|\/\/(.*?)\n/gm,``),n=mG(t),r=wG(n),i=r.map(function(e){return e.name}).indexOf(`main`),a=yG(n.slice(0,i>=0?r[i].outer[0]:void 0)),o=i>=0?this.getShaderFromIndex(n,r[i].body):``;return{defines:``,header:a,main:o}}}},{key:`getMaterialDefine`,value:function(){var e=this.__csm.type;return e?`#define IS_${e.toUpperCase()}; +`:`#define IS_UNKNOWN; +`}},{key:`getPatchMapForMaterial`,value:function(){switch(this.__csm.type){case`ShaderMaterial`:return KG;default:return GG}}},{key:`getShaderFromIndex`,value:function(e,t){return yG(e.slice(t[0],t[1]))}}]),n}(pe),uK=class extends Pe{constructor(e={}){super(e),dR(this,`_time`),dR(this,`_factor`),this.setValues(e),this._time={value:0},this._factor={value:1}}onBeforeCompile(e){e.uniforms||={},e.uniforms.time=this._time,e.uniforms.factor=this._factor,e.vertexShader=` + uniform float time; + uniform float factor; + ${e.vertexShader} + `,e.vertexShader=e.vertexShader.replace(`#include `,`float theta = sin( time + position.y ) / 2.0 * factor; + float c = cos( theta ); + float s = sin( theta ); + mat3 m = mat3( c, 0, s, 0, 1, 0, -s, 0, c ); + vec3 transformed = vec3( position ) * m; + vNormal = vNormal * m;`)}get time(){return this._time.value}set time(e){this._time.value=e}get factor(){return this._factor.value}set factor(e){this._factor.value=e}};const dK=[`factor`],fK=Xt({__name:`index`,props:{speed:{default:1},factor:{default:1}},setup(e,{expose:t}){let n=e,r=W(),{extend:i,invalidate:a}=ve();i({MeshWobbleMaterial:uK}),V(n,()=>a());let{onBeforeRender:o}=T();return o(({elapsed:e,invalidate:t})=>{r.value&&(r.value.time=e*n?.speed,t())}),t({instance:r}),(e,t)=>(H(),fn(`TresMeshWobbleMaterial`,Qt({ref_key:`materialRef`,ref:r,factor:e.factor},e.$attrs),null,16,dK))}}),pK=Xt({name:`BakeShadows`,setup(){let{renderer:e}=ve();gn(()=>{e.value.shadowMap.autoUpdate=!1,e.value.shadowMap.needsUpdate=!0})}});var mK=`void main() { + gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); +}`,hK=`#include + +void main() { + vec2 center = vec2(0., 1.); + float rotation = 0.0; + + + + float size = 0.03; + + vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); + vec2 scale; + scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); + scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); + + bool isPerspective = isPerspectiveMatrix( projectionMatrix ); + if ( isPerspective ) scale *= - mvPosition.z; + + vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale * size; + vec2 rotatedPosition; + rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; + rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; + mvPosition.xy += rotatedPosition; + + gl_Position = projectionMatrix * mvPosition; +}`;const gK=new B(0,0,0),_K=new B(0,0,0),vK=new B(0,0,0);function yK(e,t,n){let r=gK.setFromMatrixPosition(e.matrixWorld);r.project(t);let i=n.width/2,a=n.height/2;return[(Number.isNaN(r.x)?0:r.x)*i+i,-(r.y*a)+a,r.z]}function bK(e,t){let n=gK.setFromMatrixPosition(e.matrixWorld),r=_K.setFromMatrixPosition(t.matrixWorld),i=n.sub(r),a=t.getWorldDirection(vK);return i.angleTo(a)>Math.PI/2}function xK(e,t,n,r){let i=gK.setFromMatrixPosition(e.matrixWorld),a=i.clone();a.project(t),n.setFromCamera(new He(a.x,a.y),t);let o=n.intersectObjects(r,!0);if(o.length>0){let e=o[0].distance;return i.distanceTo(n.ray.origin)Math.abs(e)<1e-10?0:e;function TK(e,t,n=``){let r=`matrix3d(`;for(let n=0;n!==16;n++)r+=wK(t[n]*e.elements[n])+(n===15?`)`:`,`);return n+r}const EK=(e=>t=>TK(t,e))([1,-1,1,1,1,-1,1,1,1,-1,1,1,1,-1,1,1]),DK=(e=>(t,n)=>TK(t,e(n),`translate(-50%,-50%)`))(e=>[1/e,1/e,1/e,1,-1/e,-1/e,-1/e,-1,1/e,1/e,1/e,1,1,1,1,1]),OK=[`geometry`,`material`],kK=Xt({__name:`HTML`,props:{geometry:{default:new Wt},material:{},as:{default:`div`},transform:{type:Boolean,default:!1},portal:{},wrapperClass:{},eps:{default:1e-4},distanceFactor:{},fullscreen:{type:Boolean},center:{type:Boolean},pointerEvents:{default:`auto`},sprite:{type:Boolean,default:!1},zIndexRange:{default:()=>[16777271,0]},occlude:{type:[Object,null,Array,Boolean,String]}},emits:[`onOcclude`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=wn(),o=en(),s=U(),c=U(),{geometry:l,material:u,as:d,transform:f,portal:p,wrapperClass:m,eps:h,distanceFactor:g,fullscreen:_,center:v,pointerEvents:y,sprite:b,occlude:x,zIndexRange:S}=rn(r),{renderer:C,scene:w,camera:E,raycaster:D,sizes:O}=ve(),k=Sn(()=>document.createElement(d.value)),A=U([0,0,0]),j=U(0),M=U(),N=Sn(()=>f.value?{position:`absolute`,top:0,left:0,width:`${O.width.value}px`,height:`${O.height.value}px`,transformStyle:`preserve-3d`,pointerEvents:`none`,zIndex:2}:{position:`absolute`,transform:v.value?`translate3d(-50%,-50%,0)`:`none`,..._.value&&{top:-O.height.value/2,left:-O.width.value/2,width:`${O.width.value}px`,height:`${O.height.value}px`},zIndex:2,...Object.assign({},o.style)}),ee=Sn(()=>({position:`absolute`,pointerEvents:y.value})),P=U(null),F=U(!1),I=Sn(()=>x?.value&&x?.value!==`blending`||Array.isArray(x?.value)&&x?.value.length&&qt(x.value[0]));V(()=>x,({value:e})=>{e===`blending`?(k.value.style.zIndex=`${Math.floor(S.value[0]/2)}`,k.value.style.position=`absolute`,k.value.style.pointerEvents=`none`):(k.value.style.zIndex=null,k.value.style.position=null,k.value.style.pointerEvents=null)}),V(()=>{var e;return[s.value,C.value,O.width.value,O.height.value,(e=a.default)?.call(a)]},([e,t])=>{var n,r,i,s,l,u;if(e&&t){let d=p?.value||t.domElement;if((n=w.value)==null||n.updateMatrixWorld(),f.value)k.value.style.cssText=`position:absolute;top:0;left:0;pointer-events:none;overflow:hidden;`;else{let t=yK(e,E.value,{width:O.width.value,height:O.height.value});k.value.style.cssText=`position:absolute;top:0;left:0;transform:translate3d(${t[0]}px,${t[1]}px,0);transform-origin:0 0;`}d&&!k.value.parentNode&&((r=d.parentNode)==null||r.appendChild(k.value)),f.value?M.value=$t(`div`,{id:`outer`,style:N.value},[$t(`div`,{id:`inner`,style:ee.value},[$t(`div`,{key:(i=c.value)?.uuid,id:w?.value.uuid,class:o.class,style:o.style},(s=a.default)?.call(a))])]):M.value=$t(`div`,{key:(l=c.value)?.uuid,id:w?.value.uuid,style:N.value},(u=a.default)?.call(a)),yt(M.value,k.value)}}),gn(()=>{m!=null&&m.value&&(k.value.className=m.value)});let te=U(!0),{onBeforeRender:L}=T();L(({invalidate:e})=>{var t,n,r,a,u,d,p;if(e(),s.value&&E.value&&C.value){(t=E.value)==null||t.updateMatrixWorld(),s.value.updateWorldMatrix(!0,!1);let e=f.value?A.value:yK(s.value,E.value,{width:O.width.value||0,height:O.height.value||0});if(f.value||Math.abs(j.value-E.value.zoom)>h.value||Math.abs(A.value[0]-e[0])>h.value||Math.abs(A.value[1]-e[1])>h.value||Math.abs(A.value[2]-e[2])>h.value){let t=bK(s.value,E.value),a=!1;I.value&&(Array.isArray(x?.value)?a=x?.value:x?.value!==`blending`&&(a=[w.value]));let o=te.value;if(a){let e=xK(s.value,E.value,D.value,a);te.value=e&&!t}else te.value=!t;o!==te.value&&(i(`onOcclude`,!te.value),k.value.style.display=te.value?`block`:`none`);let c=Math.floor(S.value[0]/2),l=x!=null&&x.value?I.value?[S.value[0],c]:[c-1,0]:S.value;if(k.value.style.zIndex=`${CK(s.value,E.value,l)}`,f.value){let[e,t]=[O.width.value/2,O.height.value/2],i=E.value.projectionMatrix.elements[5]*t,{isOrthographicCamera:a,top:o,left:c,bottom:l,right:u}=E.value,d=EK(E.value.matrixWorldInverse),f=a?`scale(${i})translate(${wK(-(u+c)/2)}px,${wK((o+l)/2)}px)`:`translateZ(${i}px)`,p=s.value.matrixWorld;if(b.value&&(p=E.value.matrixWorldInverse.clone().transpose().copyPosition(p).scale(s.value.scale),p.elements[3]=p.elements[7]=p.elements[11]=0,p.elements[15]=1),k.value.style.width=`${O.width.value}px`,k.value.style.height=`${O.height.value}px`,k.value.style.perspective=a?``:`${i}px`,(n=M.value)!=null&&n.el&&(r=M.value)!=null&&r.children&&Array.isArray(M.value.children)){M.value.el.style.transform=`${f}${d}translate(${e}px,${t}px)`;let n=M.value.children[0];n&&n.el&&(n.el.style.transform=DK(p,1/((g?.value||10)/400)))}}else{let t=g?.value===void 0?1:SK(s.value,E.value)*g?.value;k.value.style.transform=`translate3d(${e[0]}px,${e[1]}px,0) scale(${t})`}}A.value=e,j.value=E.value.zoom}if(!I.value&&c.value&&!F.value)if(f.value){if((a=M.value)!=null&&a.el&&(u=M.value)!=null&&u.children){let e=((d=M.value)?.children)[0];if(e!=null&&e.clientWidth&&e!=null&&e.clientHeight){let{isOrthographicCamera:t}=E.value;if(t||l)o.scale&&(Array.isArray(o.scale)?o.scale instanceof B?c.value.scale.copy(o.scale.clone().divideScalar(1)):c.value.scale.set(1/o.scale[0],1/o.scale[1],1/o.scale[2]):c.value.scale.setScalar(1/o.scale));else{let t=(g?.value||10)/400,n=e.clientWidth*t,r=e.clientHeight*t;c.value.scale.set(n,r,1)}F.value=!0}}}else{let e=k.value.children[0];if(e!=null&&e.clientWidth&&e!=null&&e.clientHeight){let t=e.clientWidth*1,n=e.clientHeight*1;c.value.scale.set(t,n,1),F.value=!0}P.value.lookAt((p=E.value)?.position)}});let R=Sn(()=>({vertexShader:f.value?void 0:hK,fragmentShader:mK})),ne=Sn(()=>{let e=R.value;return u.value||new _t({vertexShader:e.vertexShader,fragmentShader:e.fragmentShader,side:ge})});return mn(()=>{ne.value&&ne.value.dispose(),k.value.remove()}),t({instance:s}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`groupRef`,ref:s},[G(x)&&!I.value?(H(),fn(`TresMesh`,{key:0,ref_key:`meshRef`,ref:c,geometry:G(l),material:ne.value},null,8,OK)):Zt(``,!0)],512))}});var AK={exports:{}},jK=AK.exports,MK;function NK(){return MK||(MK=1,function(e,t){(function(t,n){e.exports=n()})(jK,function(){var e=function(){function t(e){return i.appendChild(e.dom),e}function n(e){for(var t=0;to+1e3&&(c.update(1e3*s/(e-o),100),o=e,s=0,u)){var t=performance.memory;u.update(t.usedJSHeapSize/1048576,t.jsHeapSizeLimit/1048576)}return e},update:function(){a=this.end()},domElement:i,setMode:n}};return e.Panel=function(e,t,n){var r=1/0,i=0,a=Math.round,o=a(window.devicePixelRatio||1),s=80*o,c=48*o,l=3*o,u=2*o,d=3*o,f=15*o,p=74*o,m=30*o,h=document.createElement(`canvas`);h.width=s,h.height=c,h.style.cssText=`width:80px;height:48px`;var g=h.getContext(`2d`);return g.font=`bold `+9*o+`px Helvetica,Arial,sans-serif`,g.textBaseline=`top`,g.fillStyle=n,g.fillRect(0,0,s,c),g.fillStyle=t,g.fillText(e,l,u),g.fillRect(d,f,p,m),g.fillStyle=n,g.globalAlpha=.9,g.fillRect(d,f,p,m),{dom:h,update:function(c,_){r=Math.min(r,c),i=Math.max(i,c),g.fillStyle=n,g.globalAlpha=1,g.fillRect(0,0,s,f),g.fillStyle=t,g.fillText(a(c)+` `+e+` (`+a(r)+`-`+a(i)+`)`,l,u),g.drawImage(h,d+o,f,p-o,m,d,f,p-o,m),g.fillRect(d+p-o,f,o,m),g.fillStyle=n,g.globalAlpha=.9,g.fillRect(d+p-o,f,o,a((1-c/_)*m))}}},e})}(AK)),AK.exports}var PK=NK();const FK=zW(PK),IK=Xt({name:`Stats`,props:{showPanel:{type:Number,default:0}},setup(e,{expose:t}){let n=new FK;t({instance:n});let r=document.body;n.showPanel(e.showPanel||0),r?.appendChild(n.dom);let{onBeforeRender:i,onAfterRender:a}=T();i(()=>n.begin(),-1/0),a(()=>n.end(),1/0),mn(()=>{r?.removeChild(n.dom)})}});var LK=class{constructor(e,t,n){this.name=e,this.fg=t,this.bg=n,this.gradient=null,this.PR=Math.round(window.devicePixelRatio||1),this.WIDTH=90*this.PR,this.HEIGHT=48*this.PR,this.TEXT_X=3*this.PR,this.TEXT_Y=2*this.PR,this.GRAPH_X=3*this.PR,this.GRAPH_Y=15*this.PR,this.GRAPH_WIDTH=84*this.PR,this.GRAPH_HEIGHT=30*this.PR,this.canvas=document.createElement(`canvas`),this.canvas.width=this.WIDTH,this.canvas.height=this.HEIGHT,this.canvas.style.width=`90px`,this.canvas.style.height=`48px`,this.canvas.style.position=`absolute`,this.canvas.style.cssText=`width:90px;height:48px`,this.context=this.canvas.getContext(`2d`),this.initializeCanvas()}createGradient(){if(!this.context)throw Error(`No context`);let e=this.context.createLinearGradient(0,this.GRAPH_Y,0,this.GRAPH_Y+this.GRAPH_HEIGHT),t,n=this.fg;switch(this.fg.toLowerCase()){case`#0ff`:t=`#006666`;break;case`#0f0`:t=`#006600`;break;case`#ff0`:t=`#666600`;break;case`#e1e1e1`:t=`#666666`;break;default:t=this.bg;break}return e.addColorStop(0,t),e.addColorStop(1,n),e}initializeCanvas(){this.context&&(this.context.font=`bold `+9*this.PR+`px Helvetica,Arial,sans-serif`,this.context.textBaseline=`top`,this.gradient=this.createGradient(),this.context.fillStyle=this.bg,this.context.fillRect(0,0,this.WIDTH,this.HEIGHT),this.context.fillStyle=this.fg,this.context.fillText(this.name,this.TEXT_X,this.TEXT_Y),this.context.fillStyle=this.fg,this.context.fillRect(this.GRAPH_X,this.GRAPH_Y,this.GRAPH_WIDTH,this.GRAPH_HEIGHT),this.context.fillStyle=this.bg,this.context.globalAlpha=.9,this.context.fillRect(this.GRAPH_X,this.GRAPH_Y,this.GRAPH_WIDTH,this.GRAPH_HEIGHT))}update(e,t,n,r,i=0){if(!this.context||!this.gradient)return;let a=Math.min(1/0,e),o=Math.max(n,e);r=Math.max(r,t),this.context.globalAlpha=1,this.context.fillStyle=this.bg,this.context.fillRect(0,0,this.WIDTH,this.GRAPH_Y),this.context.fillStyle=this.fg,this.context.fillText(`${e.toFixed(i)} ${this.name} (${a.toFixed(i)}-${parseFloat(o.toFixed(i))})`,this.TEXT_X,this.TEXT_Y),this.context.drawImage(this.canvas,this.GRAPH_X+this.PR,this.GRAPH_Y,this.GRAPH_WIDTH-this.PR,this.GRAPH_HEIGHT,this.GRAPH_X,this.GRAPH_Y,this.GRAPH_WIDTH-this.PR,this.GRAPH_HEIGHT);let s=this.GRAPH_HEIGHT-(1-t/r)*this.GRAPH_HEIGHT;s>0&&(this.context.globalAlpha=1,this.context.fillStyle=this.gradient,this.context.fillRect(this.GRAPH_X+this.GRAPH_WIDTH-this.PR,this.GRAPH_Y+this.GRAPH_HEIGHT-s,this.PR,s))}};const RK=class e{constructor({trackGPU:t=!1,logsPerSecond:n=30,samplesLog:r=60,samplesGraph:i=10,precision:a=2,minimal:o=!1,horizontal:s=!0,mode:c=0}={}){this.gl=null,this.ext=null,this.activeQuery=null,this.gpuQueries=[],this.threeRendererPatched=!1,this.frames=0,this.renderCount=0,this.isRunningCPUProfiling=!1,this.totalCpuDuration=0,this.totalGpuDuration=0,this.totalGpuDurationCompute=0,this.totalFps=0,this.gpuPanel=null,this.gpuPanelCompute=null,this.averageFps={logs:[],graph:[]},this.averageCpu={logs:[],graph:[]},this.averageGpu={logs:[],graph:[]},this.averageGpuCompute={logs:[],graph:[]},this.handleClick=e=>{e.preventDefault(),this.showPanel(++this.mode%this.dom.children.length)},this.handleResize=()=>{this.resizePanel(this.fpsPanel,0),this.resizePanel(this.msPanel,1),this.gpuPanel&&this.resizePanel(this.gpuPanel,2),this.gpuPanelCompute&&this.resizePanel(this.gpuPanelCompute,3)},this.mode=c,this.horizontal=s,this.minimal=o,this.trackGPU=t,this.samplesLog=r,this.samplesGraph=i,this.precision=a,this.logsPerSecond=n,this.dom=document.createElement(`div`),this.initializeDOM(),this.beginTime=performance.now(),this.prevTime=this.beginTime,this.prevCpuTime=this.beginTime,this.fpsPanel=this.addPanel(new e.Panel(`FPS`,`#0ff`,`#002`),0),this.msPanel=this.addPanel(new e.Panel(`CPU`,`#0f0`,`#020`),1),this.setupEventListeners()}initializeDOM(){this.dom.style.cssText=` + position: fixed; + top: 0; + left: 0; + opacity: 0.9; + z-index: 10000; + ${this.minimal?`cursor: pointer;`:``} + `}setupEventListeners(){this.minimal?(this.dom.addEventListener(`click`,this.handleClick),this.showPanel(this.mode)):window.addEventListener(`resize`,this.handleResize)}async init(e){if(!e){console.error(`Stats: The "canvas" parameter is undefined.`);return}this.handleThreeRenderer(e)||await this.handleWebGPURenderer(e)||this.initializeWebGL(e)}handleThreeRenderer(e){return e.isWebGLRenderer&&!this.threeRendererPatched?(this.patchThreeRenderer(e),this.gl=e.getContext(),this.trackGPU&&this.initializeGPUTracking(),!0):!1}async handleWebGPURenderer(e){return e.isWebGPURenderer?(this.trackGPU&&(e.backend.trackTimestamp=!0,await e.hasFeatureAsync(`timestamp-query`)&&this.initializeWebGPUPanels()),this.info=e.info,!0):!1}initializeWebGPUPanels(){this.gpuPanel=this.addPanel(new e.Panel(`GPU`,`#ff0`,`#220`),2),this.gpuPanelCompute=this.addPanel(new e.Panel(`CPT`,`#e1e1e1`,`#212121`),3)}initializeWebGL(e){if(e instanceof WebGL2RenderingContext)this.gl=e;else if(e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas){if(this.gl=e.getContext(`webgl2`),!this.gl)return console.error(`Stats: Unable to obtain WebGL2 context.`),!1}else return console.error(`Stats: Invalid input type. Expected WebGL2RenderingContext, HTMLCanvasElement, or OffscreenCanvas.`),!1;return!0}initializeGPUTracking(){this.gl&&(this.ext=this.gl.getExtension(`EXT_disjoint_timer_query_webgl2`),this.ext&&(this.gpuPanel=this.addPanel(new e.Panel(`GPU`,`#ff0`,`#220`),2)))}begin(){this.isRunningCPUProfiling||this.beginProfiling(`cpu-started`),!(!this.gl||!this.ext)&&(this.activeQuery&&this.gl.endQuery(this.ext.TIME_ELAPSED_EXT),this.activeQuery=this.gl.createQuery(),this.activeQuery&&this.gl.beginQuery(this.ext.TIME_ELAPSED_EXT,this.activeQuery))}end(){this.renderCount++,this.gl&&this.ext&&this.activeQuery&&(this.gl.endQuery(this.ext.TIME_ELAPSED_EXT),this.gpuQueries.push({query:this.activeQuery}),this.activeQuery=null)}update(){this.info?this.processWebGPUTimestamps():this.processGpuQueries(),this.endProfiling(`cpu-started`,`cpu-finished`,`cpu-duration`),this.updateAverages(),this.resetCounters()}processWebGPUTimestamps(){this.totalGpuDuration=this.info.render.timestamp,this.totalGpuDurationCompute=this.info.compute.timestamp,this.addToAverage(this.totalGpuDurationCompute,this.averageGpuCompute)}updateAverages(){this.addToAverage(this.totalCpuDuration,this.averageCpu),this.addToAverage(this.totalGpuDuration,this.averageGpu)}resetCounters(){this.renderCount=0,this.totalCpuDuration===0&&this.beginProfiling(`cpu-started`),this.totalCpuDuration=0,this.totalFps=0,this.beginTime=this.endInternal()}resizePanel(e,t){e.canvas.style.position=`absolute`,this.minimal?e.canvas.style.display=`none`:(e.canvas.style.display=`block`,this.horizontal?(e.canvas.style.top=`0px`,e.canvas.style.left=t*e.WIDTH/e.PR+`px`):(e.canvas.style.left=`0px`,e.canvas.style.top=t*e.HEIGHT/e.PR+`px`))}addPanel(e,t){return e.canvas&&(this.dom.appendChild(e.canvas),this.resizePanel(e,t)),e}showPanel(e){for(let t=0;t{if(this.gl){let n=this.gl.getQueryParameter(e.query,this.gl.QUERY_RESULT_AVAILABLE),r=this.gl.getParameter(this.ext.GPU_DISJOINT_EXT);if(n&&!r){let n=this.gl.getQueryParameter(e.query,this.gl.QUERY_RESULT)*1e-6;this.totalGpuDuration+=n,this.gl.deleteQuery(e.query),this.gpuQueries.splice(t,1)}}}))}endInternal(){this.frames++;let e=(performance||Date).now(),t=e-this.prevTime;if(e>=this.prevCpuTime+1e3/this.logsPerSecond){let n=Math.round(this.frames*1e3/t);this.addToAverage(n,this.averageFps),this.updatePanel(this.fpsPanel,this.averageFps,0),this.updatePanel(this.msPanel,this.averageCpu,this.precision),this.updatePanel(this.gpuPanel,this.averageGpu,this.precision),this.gpuPanelCompute&&this.updatePanel(this.gpuPanelCompute,this.averageGpuCompute),this.frames=0,this.prevCpuTime=e,this.prevTime=e}return e}addToAverage(e,t){t.logs.push(e),t.logs.length>this.samplesLog&&t.logs.shift(),t.graph.push(e),t.graph.length>this.samplesGraph&&t.graph.shift()}beginProfiling(e){window.performance&&(window.performance.mark(e),this.isRunningCPUProfiling=!0)}endProfiling(e,t,n){if(window.performance&&t&&this.isRunningCPUProfiling){window.performance.mark(t);let r=performance.measure(n,e,t);this.totalCpuDuration+=r.duration,this.isRunningCPUProfiling=!1}}updatePanel(e,t,n=2){if(t.logs.length>0){let r=0,i=.01;for(let e=0;ei&&(i=t.logs[e]);let a=0,o=.01;for(let e=0;eo&&(o=t.graph[e]);e&&e.update(r/Math.min(t.logs.length,this.samplesLog),a/Math.min(t.graph.length,this.samplesGraph),i,o,n)}}get domElement(){return this.dom}patchThreeRenderer(e){let t=e.render,n=this;e.render=function(e,r){n.begin(),t.call(this,e,r),n.end()},this.threeRendererPatched=!0}};RK.Panel=LK;let zK=RK;const BK=Xt({name:`StatsGl`,props:[`logsPerSecond`,`samplesLog`,`samplesGraph`,`precision`,`horizontal`,`minimal`,`mode`],setup(e,{expose:t}){let n=new zK({logsPerSecond:e.logsPerSecond,samplesLog:e.samplesLog,samplesGraph:e.samplesGraph,precision:e.precision,horizontal:e.horizontal,minimal:e.minimal,mode:e.mode});t({instance:n});let r=document.body,i=n.dom||n.container;r?.appendChild(i);let{renderer:a}=ve(),{onAfterRender:o}=T();n.init(a.value),o(()=>n.update(),1/0),mn(()=>{r?.removeChild(i)})}}),{logError:VK}=O(),HK=[`args`],UK=[`color`],WK=Xt({__name:`Box`,props:{args:{default:()=>[1,1,1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{invalidate:r}=ve(),{args:i,color:a}=rn(n);V(i,()=>r());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`boxRef`,ref:o},e.$attrs),[K(`TresBoxGeometry`,{args:G(i)},null,8,HK),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(a)},null,8,UK)])],16))}}),GK=[`object`],KK=Xt({__name:`Line2`,props:{points:{},vertexColors:{default:null},color:{default:`white`},lineWidth:{default:1},worldUnits:{type:Boolean,default:!1},alphaToCoverage:{type:Boolean,default:!1},dashed:{type:Boolean,default:!1},dashSize:{default:1},gapSize:{default:1},dashScale:{default:1},dashOffset:{default:0}},setup(e,{expose:t}){let n=e;function r(e,t){if(!e||e.length===0)return Array.from({length:t}).fill(D(n.color));if(e.length===1)return Array.from({length:t}).fill(D(e[0]));if(e.length===t)return e.map(D);let r=t-1,i=e.map(D);closed&&i.push(i[0].clone());let a=[i[0]],o=r/(i.length-1);for(let e=1;eArray.isArray(n.vertexColors));function u(e,t){e.color=D(t.color),e.linewidth=t.lineWidth,e.alphaToCoverage=t.alphaToCoverage,e.worldUnits=t.worldUnits,e.vertexColors=Array.isArray(t.vertexColors),e.dashed=t.dashed,e.dashScale=t.dashScale,e.dashSize=t.dashSize,e.dashOffset=t.dashOffset,e.gapSize=t.gapSize,e.needsUpdate=!0}function d(e,t,n){let i=t.map(e=>e instanceof B?[e.x,e.y,e.z]:e instanceof He?[e.x,e.y,0]:Array.isArray(e)&&e.length===2?[e[0],e[1],0]:e).flat();e.setPositions(i.flat());let a=r(n,t.length).map(e=>e.toArray()).flat();e.setColors(a),o.computeLineDistances()}u(i,n),d(a,n.points,n.vertexColors),o.computeLineDistances(),V(()=>[n.color,n.lineWidth,n.alphaToCoverage,n.worldUnits,l,n.dashed,n.dashScale,n.dashSize,n.dashOffset],()=>{u(i,n),c()}),V(()=>[n.points,n.vertexColors],()=>{d(a,n.points,n.vertexColors),c()}),V(()=>[s.height,s.width],()=>{i.resolution=new He(s.width.value,s.height.value),c()}),mn(()=>{a.dispose(),i.dispose()});let f=W();return t({instance:f}),(e,t)=>(H(),fn(`primitive`,{ref:f.value,object:G(o)},null,8,GK))}}),qK=Xt({__name:`CatmullRomCurve3`,props:{segments:{default:20},closed:{type:Boolean,default:!1},curveType:{default:`centripetal`},tension:{default:.5},points:{},vertexColors:{},color:{},lineWidth:{},alphaToCoverage:{type:Boolean},dashed:{type:Boolean},dashSize:{},dashScale:{},dashOffset:{},gapSize:{},worldUnits:{type:Boolean}},setup(e,{expose:t}){let n=e;function r(e,t,n,r){let i=e.map(e=>e instanceof B?e:new B(...e));return new te(i,t,n,r)}function i(e,t){return e.getPoints(t)}let a=Sn(()=>r(n.points,n.closed,n.curveType,n.tension)),o=Sn(()=>i(a.value,n.segments)),s=W();return t({instance:s}),(e,t)=>(H(),_n(KK,{ref:s.value,points:o.value,"vertex-colors":n.vertexColors,color:n.color,"line-width":n.lineWidth,"alpha-to-coverage":n.alphaToCoverage,dashed:n.dashed,"dash-size":n.dashSize,"dash-scale":n.dashScale,"dash-offset":n.dashOffset,"gap-size":n.gapSize,"world-units":n.worldUnits},null,8,[`points`,`vertex-colors`,`color`,`line-width`,`alpha-to-coverage`,`dashed`,`dash-size`,`dash-scale`,`dash-offset`,`gap-size`,`world-units`]))}}),JK=[`args`],YK=[`color`],XK=Xt({__name:`Circle`,props:{args:{default:()=>[1,32,0,Math.PI*2]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`circleRef`,ref:o},e.$attrs),[K(`TresCircleGeometry`,{args:G(r)},null,8,JK),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,YK)])],16))}}),ZK=[`args`],QK=[`color`],$K=Xt({__name:`Cone`,props:{args:{default:()=>[1,1,12,12,!1,0,Math.PI*2]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`coneRef`,ref:o},e.$attrs),[K(`TresConeGeometry`,{args:G(r)},null,8,ZK),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,QK)])],16))}}),eq=[`args`],tq=[`color`],nq=Xt({__name:`Cylinder`,props:{args:{default:()=>[1,1,1,32,1,!1,0,Math.PI*2]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`cylinderRef`,ref:o},e.$attrs),[K(`TresCylinderGeometry`,{args:G(r)},null,8,eq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,tq)])],16))}}),rq=[`args`],iq=[`color`],aq=Xt({__name:`Dodecahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),a=W(),{invalidate:o}=ve();return V(r,()=>o()),t({instance:a}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`dodecahedronRef`,ref:a},e.$attrs),[K(`TresDodecahedronGeometry`,{args:G(r)},null,8,rq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,iq)])],16))}}),oq=[`args`],sq=[`color`],cq=Xt({__name:`Icosahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`icosahedronRef`,ref:o},e.$attrs),[K(`TresIcosahedronGeometry`,{args:G(r)},null,8,oq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,sq)])],16))}}),lq=[`args`],uq=[`color`],dq=Xt({__name:`Octahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`octahedronRef`,ref:o},e.$attrs),[K(`TresOctahedronGeometry`,{args:G(r)},null,8,lq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,uq)])],16))}}),fq=[`rotation`],pq=[`args`],mq=[`color`],hq=Xt({__name:`Plane`,props:{args:{default:()=>[1,1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`planeRef`,ref:o,rotation:[-Math.PI/2,0,0]},e.$attrs),[K(`TresPlaneGeometry`,{args:G(r)},null,8,pq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,mq)])],16,fq))}}),gq=[`args`],_q=[`color`],vq=Xt({__name:`Ring`,props:{args:{default:()=>[.5,1,32]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`ringRef`,ref:o},e.$attrs),[K(`TresRingGeometry`,{args:G(r)},null,8,gq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,_q)])],16))}}),yq=[`args`],bq=[`color`],xq=Xt({__name:`RoundedBox`,props:{args:{default:()=>[1,1,1,2,.1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a,extend:o}=ve();o({RoundedBoxGeometry:OV}),V(r,()=>a());let s=W();return t({instance:s}),(e,t)=>(H(),fn(`TresMesh`,{ref_key:`roundedBoxRef`,ref:s},[K(`TresRoundedBoxGeometry`,{args:G(r)},null,8,yq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,bq)])],512))}}),Sq=[`args`],Cq=[`color`],wq=Xt({__name:`Sphere`,props:{args:{default:()=>[2,32,16]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`sphereRef`,ref:o},e.$attrs),[K(`TresSphereGeometry`,{args:G(r)},null,8,Sq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,Cq)])],16))}}),Tq=[`geometry`],Eq=[`color`],Dq=Xt({__name:`Superformula`,props:{widthSegments:{default:32},heightSegments:{default:32},numArmsA:{default:4},expA:{default:()=>[40,1.3,.9]},numArmsB:{default:4},expB:{default:()=>[40,1.3,.9]},color:{default:`white`}},setup(e,{expose:t}){let n=e,{invalidate:r}=ve(),{cos:i,sin:a,abs:o}=Math,s=W(),c=W(n.color);function l(e,t){let n=new Fe,r=e*t,i=new Float32Array(Array.from({length:3*r}).fill(0)),a=new Float32Array(Array.from({length:3*r}).fill(0)),o=[];for(let n=0;nn.color,()=>c.value=n.color),V(()=>[n.widthSegments,n.heightSegments],()=>{s.value&&s.value.dispose(),s.value=l(n.widthSegments,n.heightSegments),r()},{immediate:!0}),V(()=>[n.numArmsA,n.expA[0],n.expA[1],n.expA[2],n.numArmsB,n.expB[0],n.expB[1],n.expB[2]],()=>{d(s.value,n.numArmsA,n.expA[0],n.expA[1],n.expA[2],n.numArmsB,n.expB[0],n.expB[1],n.expB[2],n.widthSegments,n.heightSegments),r()},{immediate:!0}),mn(()=>{s.value&&s.value.dispose()});let f=W();return t({instance:f}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`superformulaRef`,ref:f},e.$attrs,{geometry:s.value}),[vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:c.value},null,8,Eq)])],16,Tq))}}),Oq=[`rotation`],kq=[`args`],Aq=[`color`],jq=Xt({__name:`Tetrahedron`,props:{args:{default:()=>[1,0]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),a=W();return t({instance:a}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`tetrahedronRef`,ref:a,rotation:[-Math.PI/2,0,0]},e.$attrs),[K(`TresTetrahedronGeometry`,{args:G(r)},null,8,kq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,Aq)])],16,Oq))}}),Mq=[`args`],Nq=[`color`],Pq=Xt({__name:`Torus`,props:{args:{default:()=>[1,1,16,80]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`torusRef`,ref:o},e.$attrs),[K(`TresTorusGeometry`,{args:G(r)},null,8,Mq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,Nq)])],16))}}),Fq=[`args`],Iq=[`color`],Lq=Xt({__name:`TorusKnot`,props:{args:{default:()=>[1,.4,64,8]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`torusKnotRef`,ref:o},e.$attrs),[K(`TresTorusKnotGeometry`,{args:G(r)},null,8,Fq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,Iq)])],16))}}),Rq=[`args`],zq=[`color`],Bq=Xt({__name:`Tube`,props:{args:{default:()=>[new L(new B(-1,0,0),new B(0,1,0),new B(1,0,0)),20,.2,8,!1]},color:{default:`#ffffff`}},setup(e,{expose:t}){let n=e,{args:r,color:i}=rn(n),{invalidate:a}=ve();V(r,()=>a());let o=W();return t({instance:o}),(e,t)=>(H(),fn(`TresMesh`,Qt({ref_key:`tubeRef`,ref:o},e.$attrs),[K(`TresTubeGeometry`,{args:G(r)},null,8,Rq),vn(e.$slots,`default`,{},()=>[K(`TresMeshBasicMaterial`,{color:G(i)},null,8,zq)])],16))}}),Vq=Xt({__name:`Align`,props:{top:{type:Boolean},right:{type:Boolean},bottom:{type:Boolean},left:{type:Boolean},front:{type:Boolean},back:{type:Boolean},disable:{type:Boolean},disableX:{type:Boolean},disableY:{type:Boolean},disableZ:{type:Boolean},precise:{type:Boolean,default:!0},onAlign:{},cacheKey:{default:void 0}},setup(e,{expose:t}){let n=e,r=W(),i=W(),a=W(),o=new xt,s=new B,c=new st;function l(){if(!i.value||!a.value||!r.value)return;i.value.matrixWorld.identity(),o.setFromObject(a.value,n.precise);let e=o.max.x-o.min.x,t=o.max.y-o.min.y,l=o.max.z-o.min.z;o.getCenter(s),o.getBoundingSphere(c);let u=n.top?t/2:n.bottom?-t/2:0,d=n.left?-e/2:n.right?e/2:0,f=n.front?l/2:n.back?-l/2:0;i.value.position.set(n.disable||n.disableX?0:-s.x+d,n.disable||n.disableY?0:-s.y+u,n.disable||n.disableZ?0:-s.z+f),typeof n.onAlign<`u`&&n.onAlign({parent:r.value.parent,container:r.value,width:e,height:t,depth:l,boundingBox:o,boundingSphere:c,center:s,verticalAlignment:u,horizontalAlignment:d,depthAlignment:f})}let u=null,d=null,f=T();return gn(()=>{u?.(),u=null;let e=un(n.cacheKey);e===d&&d!=null||(d=e,n.cacheKey===null||n.cacheKey===void 0?u=f.onBeforeRender(()=>{l()}).off:l())}),t({instance:r,update:l}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`ref`,ref:r},[K(`TresGroup`,{ref_key:`outer`,ref:i},[K(`TresGroup`,{ref_key:`inner`,ref:a},[vn(e.$slots,`default`)],512)],512)],512))}}),Hq=[`receive-shadow`,`rotation`],Uq=[`args`],Wq=Xt({__name:`Backdrop`,props:{floor:{default:.25},segments:{default:20},receiveShadow:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,r=e=>e===0?0:2**(10*e-10),{floor:i,segments:a,receiveShadow:o}=rn(n),s=U(null);V([a,i,s],([e,t,n])=>{if(!n||e===null)return;let i=0,a=e/e/2,o=n.attributes.position;for(let n=0;n(H(),fn(`TresGroup`,Qt({ref_key:`backdropRef`,ref:c},e.$attrs),[K(`TresMesh`,{"receive-shadow":G(o),rotation:[-Math.PI/2,0,Math.PI/2]},[K(`TresPlaneGeometry`,{ref_key:`planeRef`,ref:s,args:[1,1,G(a),G(a)]},null,8,Uq),vn(e.$slots,`default`,{},()=>[t[0]||=K(`TresMeshStandardMaterial`,{color:8421504,side:2},null,-1)])],8,Hq)],16))}}),Gq=[`object`],Kq=Xt({__name:`ContactShadows`,props:{opacity:{default:1},blur:{default:1},color:{default:`#000000`},tint:{default:void 0},scale:{default:10},width:{default:1},height:{default:1},far:{default:10},smooth:{type:Boolean,default:!0},resolution:{default:512},frames:{default:1/0},depthWrite:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e;function r(e,t,n){n.blurPlane.visible=!0,n.blurPlane.material=n.horizontalBlurMaterial,n.horizontalBlurMaterial.uniforms.tDiffuse.value=n.renderTarget.texture,n.horizontalBlurMaterial.uniforms.h.value=e/256,t.setRenderTarget(n.renderTargetBlur),t.render(n.blurPlane,n.shadowCamera),n.blurPlane.material=n.verticalBlurMaterial,n.verticalBlurMaterial.uniforms.tDiffuse.value=n.renderTargetBlur.texture,n.verticalBlurMaterial.uniforms.v.value=e/256,t.setRenderTarget(n.renderTarget),t.render(n.blurPlane,n.shadowCamera),n.blurPlane.visible=!1}function i(e,t,n,i){let{renderTarget:a,shadowCamera:o,depthMaterial:s}=i,c=t.background;t.background=null,t.overrideMaterial=s;let l=n.getClearAlpha();n.setClearAlpha(0),n.setRenderTarget(a),n.render(t,o),t.overrideMaterial=null,r(e.blur,n,i),e.smooth&&r(e.blur*.4,n,i),n.setRenderTarget(null),n.setClearAlpha(l),t.background=c}function a(e){let t=new Lt,n=new St(e.resolution,e.resolution);n.texture.generateMipmaps=!1;let r=new St(e.resolution,e.resolution);r.texture.generateMipmaps=!1;let i=new Wt(e.width,e.height).rotateX(Math.PI/2),a=new I({map:n.texture,opacity:e.opacity,transparent:!0,depthWrite:e.depthWrite,color:new Ft(e.color??`black`)}),o=new M(i,a);t.add(o),o.scale.y=-1;let s=new M(i);s.visible=!1,t.add(s);let c=new Ke(-e.width/2,e.width/2,e.height/2,-e.height/2,0,.3);c.rotation.x=Math.PI/2,t.add(c);let l=new Ne,u=new _t(AV);u.depthTest=!1;let d=new _t(jV);return d.depthTest=!1,{renderTarget:n,renderTargetBlur:r,shadowCamera:c,depthMaterial:l,horizontalBlurMaterial:u,verticalBlurMaterial:d,shadowGroup:t,plane:o,blurPlane:s}}function o(e,t){let n=t.shadowCamera;n.left=-e.width/2,n.right=e.width/2,n.top=e.height/2,n.bottom=-e.height/2,n.far=e.far;let r=e.width*(Array.isArray(e.scale)?e.scale[0]:e.scale||1),i=e.height*(Array.isArray(e.scale)?e.scale[1]:e.scale||1);t.shadowGroup.scale.set(r,e.far,i)}function s(e,t){t.renderTarget.dispose(),t.renderTargetBlur.dispose(),t.renderTarget=new St(e,e),t.renderTarget.texture.generateMipmaps=!1,t.renderTargetBlur=new St(e,e),t.renderTargetBlur.texture.generateMipmaps=!1,t.plane.material.map=t.renderTarget.texture}function c(e,t){t.plane.material.color=new Ft(e.color??`black`),t.depthMaterial.dispose(),t.depthMaterial=new Ne,t.depthMaterial.onBeforeCompile=function(t){let n=e.tint?new Ft(e.tint):new Ft(`white`),{r,g:i,b:a}=n,o=t.fragmentShader.replace(`gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );`,`gl_FragColor = vec4( ${r}, ${i}, ${a}, ( 1.0 - fragCoordZ ) * opacity);`);t.fragmentShader=o}}let{onBeforeRender:l}=T(),u=a(n),d=0,f=()=>d=d>=n.frames?n.frames-1:d;return l(({renderer:e,scene:t,invalidate:r})=>{d[n.opacity,n.depthWrite,n.blur,n.smooth],()=>{u.plane.material.opacity=n.opacity??1,u.plane.material.depthWrite=n.depthWrite??!1,f()},{immediate:!0}),V(()=>[n.color,n.tint],()=>{c(n,u),f()},{immediate:!0}),V(()=>[n.resolution],()=>{s(n.resolution,u),f()}),V(()=>[n.width,n.height,n.scale,n.far],()=>{o(n,u),f()},{immediate:!0}),mn(()=>{for(let e of Object.values(u))e&&`dispose`in e&&typeof e.dispose==`function`&&e.dispose()}),t({instance:u.shadowGroup}),(e,t)=>(H(),fn(`primitive`,{object:G(u).shadowGroup},null,8,Gq))}}),qq=Xt({__name:`Fit`,props:{into:{default:()=>new xt(new B(-.5,-.5,-.5),new B(.5,.5,.5))},precise:{type:Boolean,default:!1}},setup(e,{expose:t}){let n=e,{invalidate:r}=ve(),i=W(new Lt),a=W(new Lt);function o(e,t){if(i.value.position.set(0,0,0),i.value.updateMatrixWorld(),a.value.scale.set(1,1,1),a.value.updateMatrixWorld(),!a.value.children.length||e===null)return;let{box3:n,use:o}=s(e,t),c=new xt;a.value.children.forEach(e=>c.expandByObject(e,t));let l=c.getSize(new B),u=n.getSize(new B),d=Math.min(u.x/l.x,u.y/l.y,u.z/l.z);a.value.scale.setScalar(d===1/0?1:d),a.value.updateMatrixWorld();let f=i.value.worldToLocal(c.getCenter(new B));if(o.position){let e=i.value.worldToLocal(n.getCenter(new B));i.value.position.copy(e.sub(f.multiplyScalar(d)))}else i.value.position.copy(f.sub(f.multiplyScalar(d)));r()}function s(e,t){return typeof e==`number`?e=new B(e,e,e):Array.isArray(e)&&(e=new B(...e)),e&&`isVector3`in e&&e.isVector3?{box3:new xt(new B(0,0,0),e),use:{position:!1}}:e&&`isBox3`in e&&e.isBox3?{box3:e,use:{position:!0}}:e&&`isObject3D`in e&&e.isObject3D?{box3:new xt().setFromObject(e,t??!1),use:{position:!0}}:{box3:new xt(new B(-.5,-.5,-.5),new B(.5,.5,.5)),use:{position:!0}}}V(()=>[n.into,n.precise],()=>o(n.into,n.precise)),Jt(()=>{o(n.into,n.precise),Yt().then(()=>{o(n.into,n.precise)})});let c=W();return t({instance:c,fit:(e=new xt(new B(-.5,-.5,-.5),new B(.5,.5,.5)),t=!1)=>{o(e,t)},update:()=>o(n.into,n.precise)}),(e,t)=>(H(),fn(`TresGroup`,{ref_key:`outer`,ref:c},[K(`TresGroup`,{ref_key:`middle`,ref:i},[K(`TresGroup`,{ref_key:`inner`,ref:a},[vn(e.$slots,`default`)],512)],512)],512))}}),Jq=[`side`,`cell-size`,`section-size`,`cell-color`,`section-color`,`cell-thickness`,`section-thickness`,`fade-distance`,`fade-strength`,`fade-from`,`infinite-grid`,`follow-camera`],Yq=[`args`],Xq=Xt({__name:`Grid`,props:{cellSize:{default:.5},cellThickness:{default:.5},cellColor:{default:`#000000`},sectionSize:{default:1},sectionThickness:{default:1},sectionColor:{default:`#0000ff`},followCamera:{type:Boolean,default:!1},infiniteGrid:{type:Boolean,default:!1},fadeDistance:{default:100},fadeStrength:{default:1},fadeFrom:{default:1},side:{default:le},args:{}},setup(e){let t=e,n=JR({cellSize:.5,sectionSize:1,fadeDistance:100,fadeStrength:1,fadeFrom:1,cellThickness:.5,sectionThickness:1,cellColor:new Ft,sectionColor:new Ft,infiniteGrid:!1,followCamera:!1,worldCamProjPosition:new B,worldPlanePosition:new B},` + varying vec3 localPosition; + varying vec4 worldPosition; + + uniform vec3 worldCamProjPosition; + uniform vec3 worldPlanePosition; + uniform float fadeDistance; + uniform bool infiniteGrid; + uniform bool followCamera; + + void main() { + localPosition = position.xzy; + if (infiniteGrid) localPosition *= 1.0 + fadeDistance; + + worldPosition = modelMatrix * vec4(localPosition, 1.0); + if (followCamera) { + worldPosition.xyz += (worldCamProjPosition - worldPlanePosition); + localPosition = (inverse(modelMatrix) * worldPosition).xyz; + } + + gl_Position = projectionMatrix * viewMatrix * worldPosition; + } + `,` + varying vec3 localPosition; + varying vec4 worldPosition; + + uniform vec3 worldCamProjPosition; + uniform float cellSize; + uniform float sectionSize; + uniform vec3 cellColor; + uniform vec3 sectionColor; + uniform float fadeDistance; + uniform float fadeStrength; + uniform float fadeFrom; + uniform float cellThickness; + uniform float sectionThickness; + + float getGrid(float size, float thickness) { + vec2 r = localPosition.xz / size; + vec2 grid = abs(fract(r - 0.5) - 0.5) / fwidth(r); + float line = min(grid.x, grid.y) + 1.0 - thickness; + return 1.0 - min(line, 1.0); + } + + void main() { + float g1 = getGrid(cellSize, cellThickness); + float g2 = getGrid(sectionSize, sectionThickness); + + vec3 from = worldCamProjPosition*vec3(fadeFrom); + float dist = distance(from, worldPosition.xyz); + float d = 1.0 - min(dist / fadeDistance, 1.0); + vec3 color = mix(cellColor, sectionColor, min(1.0, sectionThickness * g2)); + + gl_FragColor = vec4(color, (g1 + g2) * pow(d, fadeStrength)); + gl_FragColor.a = mix(0.75 * gl_FragColor.a, gl_FragColor.a, g2); + if (gl_FragColor.a <= 0.0) discard; + + #include + #include + } + `);A({GridMaterial:n});let r=W(new M),i=new ft,a=new B(0,1,0),o=new B(0,0,0);return T().onBeforeRender(e=>{i.setFromNormalAndCoplanarPoint(a,o).applyMatrix4(r.value.matrixWorld);let t=r.value.material,n=t.uniforms.worldCamProjPosition,s=t.uniforms.worldPlanePosition;i.projectPoint(e.camera.position,n.value),s.value.set(0,0,0).applyMatrix4(r.value.matrixWorld)}),(e,n)=>(H(),fn(`TresMesh`,{ref_key:`ref`,ref:r,"frustum-culled":!1},[K(`TresGridMaterial`,{transparent:!0,"extensions-derivatives":!0,side:t.side,"cell-size":t.cellSize,"section-size":t.sectionSize,"cell-color":t.cellColor,"section-color":t.sectionColor,"cell-thickness":t.cellThickness,"section-thickness":t.sectionThickness,"fade-distance":t.fadeDistance,"fade-strength":t.fadeStrength,"fade-from":t.fadeFrom,"infinite-grid":t.infiniteGrid,"follow-camera":t.followCamera},null,8,Jq),K(`TresPlaneGeometry`,{args:t.args},null,8,Yq)],512))}}),Zq=[`rotation-x`,`args`],Qq=Xt({__name:`Ocean`,props:{textureWidth:{default:512},textureHeight:{default:512},waterNormals:{default:`https://raw.githubusercontent.com/Tresjs/assets/main/textures/water-normals/Water_1_M_Normal.jpg`},sunDirection:{default:()=>new B},sunColor:{default:16777215},waterColor:{default:7695},distortionScale:{default:3.7},size:{default:1},clipBias:{default:0},alpha:{default:1},side:{default:re}},async setup(e,{expose:t}){let n,r,i=e,{textureWidth:a,textureHeight:o,waterNormals:s,sunDirection:c,sunColor:l,waterColor:u,distortionScale:d,size:f,clipBias:p,alpha:m,side:h}=rn(i),{extend:g,scene:_}=ve();g({Water:FB});let v=W(),y=W(),b=_.value.fog!==void 0;t({instance:v}),_.value.traverse(e=>{Object.prototype.hasOwnProperty.call(e,`isSky`)&&(y.value=e)}),Jt(async()=>{if(await Yt(),y.value){let e=y.value.material.uniforms.sunPosition.value;v.value.material.uniforms.sunDirection.value.copy(e)}});let{normalMap:x}=([n,r]=bn(()=>E({normalMap:s.value})),n=await n,r(),n);x.wrapS=x.wrapT=Ye;let{onBeforeRender:S}=T();return S(({delta:e,invalidate:t})=>{v.value.material.uniforms.time.value+=e,t()}),(e,t)=>(H(),fn(`TresWater`,{ref_key:`waterRef`,ref:v,"rotation-x":-Math.PI/2,args:[void 0,{textureWidth:G(a),textureHeight:G(o),waterNormals:G(x),sunDirection:G(c),sunColor:G(l),waterColor:G(u),distortionScale:G(d),fog:b,size:G(f),clipBias:G(p),alpha:G(m),side:G(h)}]},[vn(e.$slots,`default`,{},()=>[t[0]||=K(`TresPlaneGeometry`,{args:[1e4,1e4]},null,-1)])],8,Zq))}}),$q=[`size`,`color`,`alpha-map`,`map`,`opacity`,`alpha-test`,`depth-write`,`transparent`,`size-attenuation`],eJ=[`position`,`velocity`],tJ=Xt({__name:`Precipitation`,props:{size:{default:.1},area:{default:()=>[10,10,20]},color:{default:16777215},map:{},alphaMap:{},alphaTest:{default:.01},opacity:{default:.8},count:{default:5e3},speed:{default:.1},randomness:{default:.5},depthWrite:{type:Boolean,default:!1},transparent:{type:Boolean,default:!0},sizeAttenuation:{type:Boolean,default:!0}},setup(e,{expose:t}){let n=e,{size:r,area:i,color:a,alphaMap:o,map:s,opacity:c,alphaTest:l,depthWrite:u,transparent:d,sizeAttenuation:f,count:p,speed:m,randomness:h}=rn(n),g=W(),_=[],v=[],y=()=>{_=new Float32Array(p.value*3);for(let e=0;e{v=new Float32Array(p.value*2);for(let e=0;e{b(),y()});let x=W(null),S=W(null);gn(async()=>{gn(async()=>{if(typeof o.value==`string`){let e=await E({alphaMap:o.value});x.value=e.alphaMap}else x.value=o.value??null;if(typeof s.value==`string`){let e=await E({map:s.value});S.value=e.map}else S.value=s.value??null})});let{onBeforeRender:C}=T();C(({invalidate:e})=>{var t,n;if((t=g.value)!=null&&t.attributes.position.array&&(n=g.value)!=null&&n.attributes.position.count){let t=g.value.attributes.position.array;for(let e=0;e=i.value[0]/2)&&(t[e*3]=t[e*3]*-1),(t[e*3+1]<=-i.value[1]/2||t[e*3+1]>=i.value[1]/2)&&(t[e*3+1]=t[e*3+1]*-1)}g.value.attributes.position.needsUpdate=!0,e()}});let w=W();return t({instance:w}),(e,t)=>(H(),fn(`TresPoints`,{ref_key:`pointsRef`,ref:w},[K(`TresPointsMaterial`,{size:G(r),color:G(a),"alpha-map":x.value,map:S.value,opacity:G(c),"alpha-test":G(l),"depth-write":G(u),transparent:G(d),"size-attenuation":G(f)},null,8,$q),K(`TresBufferGeometry`,{ref_key:`geometryRef`,ref:g,position:[G(_),3],velocity:[G(v)]},null,8,eJ)],512))}}),nJ=[`object`,`material-uniforms-turbidity-value`,`material-uniforms-rayleigh-value`,`material-uniforms-mieCoefficient-value`,`material-uniforms-mieDirectionalG-value`,`material-uniforms-sunPosition-value`,`scale`],rJ=Xt({__name:`Sky`,props:{turbidity:{default:3.4},rayleigh:{default:3},mieCoefficient:{default:.005},mieDirectionalG:{default:.7},elevation:{default:.6},azimuth:{default:180},distance:{default:45e4}},setup(e,{expose:t}){let n=e,{invalidate:r}=ve();V(n,()=>r());let i=W(),a=new VB,o=Sn(()=>s(n.azimuth,n.elevation));function s(e,t){let n=Ie.degToRad(90-t),r=Ie.degToRad(e);return new B().setFromSphericalCoords(1,n,r)}return t({instance:i,sunPosition:o.value}),(e,t)=>(H(),fn(`primitive`,{ref_key:`skyRef`,ref:i,object:G(a),"material-uniforms-turbidity-value":n.turbidity,"material-uniforms-rayleigh-value":n.rayleigh,"material-uniforms-mieCoefficient-value":n.mieCoefficient,"material-uniforms-mieDirectionalG-value":n.mieDirectionalG,"material-uniforms-sunPosition-value":o.value,scale:n.distance},null,8,nJ))}}),iJ=[`position`],aJ=[`position`],oJ=[`scale`],sJ=[`map`,`depth-test`,`color-space`,`color`,`opacity`],cJ=Xt({__name:`Smoke`,props:{color:{default:`#ffffff`},opacity:{default:.5},speed:{default:.4},width:{default:10},depth:{default:1.5},segments:{default:20},texture:{default:`https://raw.githubusercontent.com/Tresjs/assets/main/textures/clouds/defaultCloud.png`},depthTest:{type:Boolean,default:!0}},async setup(e,{expose:t}){let n,r,i=e,{width:a,depth:o,segments:s,texture:c,color:l,depthTest:u,opacity:d,speed:f}=rn(i),p=W(),m=W();t({instance:p});let h=[s].map((e,t)=>({x:a.value/2-Math.random()*a.value,y:a.value/2-Math.random()*a.value,scale:.4+Math.sin((t+1)/s.value*Math.PI)*((.2+Math.random())*10),density:Math.max(.2,Math.random()),rotation:Math.max(.002,.005*Math.random())*f.value})),g=(e,t)=>e/6*t*d.value,{map:_}=([n,r]=bn(()=>E({map:c.value})),n=await n,r(),n),{renderer:v,camera:y}=ve(),b=Sn(()=>{var e;return(e=v.value)?.outputColorSpace}),{onBeforeRender:x}=T();return x(({invalidate:e})=>{var t,n;p.value&&y.value&&m.value&&((t=m.value)==null||t.children.forEach((e,t)=>{e.rotation.z+=h[t].rotation}),p.value.lookAt((n=y.value)?.position),e())}),(e,t)=>(H(),fn(`TresGroup`,Qt({ref_key:`smokeRef`,ref:p},e.$attrs),[K(`TresGroup`,{ref_key:`groupRef`,ref:m,position:[0,0,G(s)/2*G(o)]},[(H(!0),fn(xn,null,hn(G(h),({scale:e,x:t,y:n,density:r},i)=>(H(),fn(`TresMesh`,{key:`${i}`,position:[t,n,-i*G(o)]},[K(`TresPlaneGeometry`,{scale:[e,e,e],rotation:[0,0,0]},null,8,oJ),K(`TresMeshStandardMaterial`,{map:G(_),"depth-test":G(u),"color-space":b.value,color:G(l),"depth-write":!1,transparent:``,opacity:g(e,r)},null,8,sJ)],8,aJ))),128))],8,iJ)],16))}}),lJ=` +return PCSS( shadowMap, shadowCoord ); +`,uJ=Xt({__name:`SoftShadows`,props:{size:{default:25},samples:{default:10},focus:{default:0}},setup(e){let t=e,n=({focus:e=0,size:t=25,samples:n=10}={})=>` +#define PENUMBRA_FILTER_SIZE float(${t}) +#define RGB_NOISE_FUNCTION(uv) (randRGB(uv)) +vec3 randRGB(vec2 uv) { + return vec3( + fract(sin(dot(uv, vec2(12.75613, 38.12123))) * 13234.76575), + fract(sin(dot(uv, vec2(19.45531, 58.46547))) * 43678.23431), + fract(sin(dot(uv, vec2(23.67817, 78.23121))) * 93567.23423) + ); +} + +vec3 lowPassRandRGB(vec2 uv) { + // 3x3 convolution (average) + // can be implemented as separable with an extra buffer for a total of 6 samples instead of 9 + vec3 result = vec3(0); + result += RGB_NOISE_FUNCTION(uv + vec2(-1.0, -1.0)); + result += RGB_NOISE_FUNCTION(uv + vec2(-1.0, 0.0)); + result += RGB_NOISE_FUNCTION(uv + vec2(-1.0, +1.0)); + result += RGB_NOISE_FUNCTION(uv + vec2( 0.0, -1.0)); + result += RGB_NOISE_FUNCTION(uv + vec2( 0.0, 0.0)); + result += RGB_NOISE_FUNCTION(uv + vec2( 0.0, +1.0)); + result += RGB_NOISE_FUNCTION(uv + vec2(+1.0, -1.0)); + result += RGB_NOISE_FUNCTION(uv + vec2(+1.0, 0.0)); + result += RGB_NOISE_FUNCTION(uv + vec2(+1.0, +1.0)); + result *= 0.111111111; // 1.0 / 9.0 + return result; +} +vec3 highPassRandRGB(vec2 uv) { + // by subtracting the low-pass signal from the original signal, we're being left with the high-pass signal + // hp(x) = x - lp(x) + return RGB_NOISE_FUNCTION(uv) - lowPassRandRGB(uv) + 0.5; +} + + +vec2 vogelDiskSample(int sampleIndex, int sampleCount, float angle) { + const float goldenAngle = 2.399963f; // radians + float r = sqrt(float(sampleIndex) + 0.5f) / sqrt(float(sampleCount)); + float theta = float(sampleIndex) * goldenAngle + angle; + float sine = sin(theta); + float cosine = cos(theta); + return vec2(cosine, sine) * r; +} +float penumbraSize( const in float zReceiver, const in float zBlocker ) { // Parallel plane estimation + return (zReceiver - zBlocker) / zBlocker; +} +float findBlocker(sampler2D shadowMap, vec2 uv, float compare, float angle) { + float texelSize = 1.0 / float(textureSize(shadowMap, 0).x); + float blockerDepthSum = float(${e}); + float blockers = 0.0; + + int j = 0; + vec2 offset = vec2(0.); + float depth = 0.; + + #pragma unroll_loop_start + for(int i = 0; i < ${n}; i ++) { + offset = (vogelDiskSample(j, ${n}, angle) * texelSize) * 2.0 * PENUMBRA_FILTER_SIZE; + depth = unpackRGBAToDepth( texture2D( shadowMap, uv + offset)); + if (depth < compare) { + blockerDepthSum += depth; + blockers++; + } + j++; + } + #pragma unroll_loop_end + + if (blockers > 0.0) { + return blockerDepthSum / blockers; + } + return -1.0; +} + + +float vogelFilter(sampler2D shadowMap, vec2 uv, float zReceiver, float filterRadius, float angle) { + float texelSize = 1.0 / float(textureSize(shadowMap, 0).x); + float shadow = 0.0f; + int j = 0; + vec2 vogelSample = vec2(0.0); + vec2 offset = vec2(0.0); + #pragma unroll_loop_start + for (int i = 0; i < ${n}; i++) { + vogelSample = vogelDiskSample(j, ${n}, angle) * texelSize; + offset = vogelSample * (1.0 + filterRadius * float(${t})); + shadow += step( zReceiver, unpackRGBAToDepth( texture2D( shadowMap, uv + offset ) ) ); + j++; + } + #pragma unroll_loop_end + return shadow * 1.0 / ${n}.0; +} + +float PCSS (sampler2D shadowMap, vec4 coords) { + vec2 uv = coords.xy; + float zReceiver = coords.z; // Assumed to be eye-space z in this code + float angle = highPassRandRGB(gl_FragCoord.xy).r * PI2; + float avgBlockerDepth = findBlocker(shadowMap, uv, zReceiver, angle); + if (avgBlockerDepth == -1.0) { + return 1.0; + } + float penumbraRatio = penumbraSize(zReceiver, avgBlockerDepth); + return vogelFilter(shadowMap, uv, zReceiver, 1.25 * penumbraRatio, angle); +}`,r=ye.shadowmap_pars_fragment,{renderer:i,scene:a,camera:o}=w();function s(e,t){let i=r;i=i.replace(`#ifdef USE_SHADOWMAP`,`#ifdef USE_SHADOWMAP + ${n(t)}`),i=i.replace(`#if defined( SHADOWMAP_TYPE_PCF )`,`${lJ} + #if defined( SHADOWMAP_TYPE_PCF )`),ye.shadowmap_pars_fragment=i,e.shadowMap.enabled=!0}function c(e,t,n){t.traverse(t=>{var n,r;`material`in t&&t.material&&(e.properties.remove(t.material),typeof t.material==`object`&&`dispose`in t.material&&typeof t.material.dispose==`function`&&((r=(n=t.material).dispose)==null||r.call(n)))}),e.info.programs&&(e.info.programs.length=0),e.compile(t,n)}return mn(()=>{o.value&&(ye.shadowmap_pars_fragment=r,c(i.value,a.value,o.value))}),V(t,()=>{o.value&&(s(i.value,t),c(i.value,a.value,o.value))},{immediate:!0}),(e,t)=>(H(),fn(`TresGroup`))}});var dJ=class extends It{constructor(){super(),dR(this,`virtualScene`,null),this.virtualScene=new j}add(...e){return this.virtualScene.add(...e),this}dispose(){this.virtualScene.traverse(e=>{e instanceof M&&(e.geometry.dispose(),e.material.dispose(),e.material.map&&e.material.map.dispose(),this.virtualScene.remove(e))}),this.virtualScene=null}};const fJ=Xt({__name:`component`,props:{background:{type:[Boolean,String],default:!1},blur:{default:0},files:{default:()=>[]},path:{default:``},preset:{default:void 0},resolution:{default:256},near:{default:1},far:{default:1e3},frames:{default:1/0},backgroundIntensity:{default:1},backgroundRotation:{},environmentIntensity:{default:1},environmentRotation:{},syncMaterials:{type:Boolean}},async setup(e,{expose:t}){let n,r,i=e,a=U(null);t({texture:a});let{extend:o,renderer:s,scene:c}=ve();o({EnvironmentScene:dJ});let l=null,u=U(null),d=null,f=U(null),p=([n,r]=bn(()=>DU(i,u)),n=await n,r(),n),{onBeforeRender:m}=T(),h=1;m(()=>{if(d&&f.value&&u.value&&(i.frames===1/0||h{if(e&&t!=null&&t.virtualScene){let n=on(t).virtualScene,r=n.children.find(e=>e instanceof M&&e.userData.isEnvironment);r||(r=new M(new F(1,1,1),new I({side:le})),r.userData.isEnvironment=!0,n.add(r)),n.background=e,n.backgroundBlurriness=i.blur}},{immediate:!0});let g=e=>{e&&l!=null&&l.length?(c.value.environment=e.texture,i.background&&(c.value.background=e.texture)):p.value&&(c.value.environment=p.value,i.background&&(c.value.background=p.value))};return V(p,()=>{u.value&&g(u.value)},{immediate:!0,deep:!0}),V(()=>wn().default,e=>{var t;if(e&&(l=e(),Array.isArray(l)&&l.length>0)){o({EnvironmentScene:dJ}),u.value=new Se(i.resolution),u.value.texture.type=ae,d=new Ve(i.near,i.far,u.value),g(u.value);return}(t=u.value)==null||t.dispose(),u.value=null,g()},{immediate:!0,deep:!0}),a.value=p.value,mn(()=>{var e,t;(e=f.value)==null||e.dispose(),(t=u.value)==null||t.dispose()}),(e,t)=>u.value?(H(),fn(`TresEnvironmentScene`,{key:0,ref_key:`environmentScene`,ref:f},[vn(e.$slots,`default`)],512)):Zt(``,!0)}}),pJ={key:0,args:[0,1,64]},mJ={key:1,args:[.5,1,64]},hJ={key:2},gJ=[`tone-mapped`,`map`,`side`,`color`],_J=Xt({__name:`index`,props:{args:{default:null},form:{default:`rect`},toneMapped:{type:Boolean,default:!1},map:{default:null},intensity:{default:1},color:{default:new Ft(16777215)}},setup(e,{expose:t}){let n=e,r=U(),i=U();return gn(()=>{r.value&&(r.value.color.copy(new Ft(n.color)),r.value.color.multiplyScalar(n.intensity),r.value.needsUpdate=!0)}),t({mesh:i}),(e,t)=>(H(),fn(`TresMesh`,{ref_key:`mesh`,ref:i},[e.form===`circle`?(H(),fn(`TresRingGeometry`,pJ)):e.form===`ring`?(H(),fn(`TresRingGeometry`,mJ)):e.form===`rect`?(H(),fn(`TresPlaneGeometry`,hJ)):(H(),_n(n.form,{key:3,args:e.args},null,8,[`args`])),K(`TresMeshBasicMaterial`,{ref_key:`material`,ref:r,"tone-mapped":e.toneMapped,map:e.map,side:G(ge),color:e.color},null,8,gJ)],512))}});var vJ=Xt({__name:`Model`,props:{model:{},idleAnimation:{},loadAnimations:{},position:{},paused:{type:Boolean}},emits:[`loadModelProgress`,`error`],setup(e,{expose:t,emit:n}){let r=e,i=n,a,o=U(),s=U(),{scene:c}=ve(),{onBeforeRender:l}=T(),u=Rn(),d=zn(),f=U();V(()=>r.position,([e,t,n])=>{o.value&&o.value.scene.position.set(e,t,n)}),Jt(async()=>{if(c.value)try{let e=await Ln(r.model,{scene:c.value,lookAt:!0,position:r.position,onProgress:e=>i(`loadModelProgress`,Number.parseFloat((100*(e.loaded/e.total)).toFixed(2)))});if(!e){console.warn(`No VRM model loaded`);return}let t=await Bn(r.idleAnimation),n=await Vn(e,t);if(!n){console.warn(`No VRM animation loaded`);return}s.value=new ze(e.scene),s.value.clipAction(n).play(),f.value=In(e),o.value=e,a=l(({delta:e})=>{s.value?.update(e),o.value?.update(e),u.update(o.value,e),d.update(o.value,e),f.value?.update(e)}).off}catch(e){i(`error`,e)}}),mn(()=>{a?.(),o.value&&(o.value.scene.removeFromParent(),Hn.deepDispose(o.value.scene))}),t({setExpression(e){f.value?.setEmotionWithResetAfter(e,1e3)}});let{pause:p,resume:m}=T();return V(()=>r.paused,e=>{e?p():m()}),(e,t)=>vn(e.$slots,`default`)}}),yJ=vJ;const bJ=[`position`],xJ={absolute:``,bottom:`3`,right:`3`},SJ={flex:`~ row`,"cursor-pointer":``},CJ=[`checked`,`aria-checked`],wJ={key:0,"min-w":`50vw`,z:`{g.value?.setExpression(e)}}),(e,t)=>(H(),_n(s,{relative:``},{default:dn(({height:e,width:n})=>[$t(G(k),{alpha:!0,antialias:!0,width:n,height:e},{default:dn(()=>[$t(G(jW)),K(`TresPerspectiveCamera`,{position:[c.value,u.value,d.value]},null,8,bJ),t[14]||=K(`TresDirectionalLight`,{color:16777215,intensity:1.2,position:[1,1,1]},null,-1),t[15]||=K(`TresAmbientLight`,{color:16777215,intensity:1.5},null,-1),$t(yJ,{ref_key:`modelRef`,ref:g,model:r.model,"idle-animation":r.idleAnimation,position:[f.value,p.value,m.value],paused:r.paused,onLoadModelProgress:t[0]||=e=>i(`loadModelProgress`,e),onError:t[1]||=e=>i(`error`,e)},null,8,[`model`,`idle-animation`,`position`,`paused`])]),_:2,__:[14,15]},1032,[`width`,`height`]),K(`div`,xJ,[K(`div`,SJ,[K(`label`,{class:Dn([a.value?`bg-neutral-300 dark:bg-neutral-200`:`bg-neutral-100 dark:bg-neutral-700`]),transition:`all ease-in-out duration-500`,text:`lg neutral-500 dark:neutral-400`,"m-1":``,"h-fit":``,"w-fit":``,"cursor-pointer":``,"appearance-none":``,"gap-1":``,"rounded-lg":``,"rounded-md":``,"border-none":``,"p-2":``,"outline-none":``},[yn(K(`input`,{"onUpdate:modelValue":t[2]||=e=>a.value=e,checked:a.value,"aria-checked":a.value,name:`showLive2DViewerInspector`,type:`checkbox`,"appearance-none":``,"outline-none":``,hidden:``},null,8,CJ),[[vt,a.value]]),t[16]||=K(`div`,{"select-none":``},[K(`div`,{"i-solar:bug-bold-duotone":``})],-1)],2)]),$t(G(h),null,{default:dn(()=>[a.value?(H(),fn(`div`,wJ,[K(`div`,TJ,[K(`div`,EJ,[K(`span`,null,En(G(_)(`stage.viewers.debug-menu.vrm.model.title`)),1)]),$t(l,{"h-fit":``,"w-full":``,flex:`~ col`,border:`~ gray/25 rounded-lg`,divide:`y dashed gray/25`,"of-clip":``,"shadow-sm":``},{label:dn(()=>[K(`span`,DJ,En(G(_)(`stage.viewers.debug-menu.vrm.camera`)),1)]),default:dn(()=>[K(`div`,OJ,[t[17]||=K(`div`,{text:`neutral-400 dark:neutral-500`},[K(`span`,null,`X`)],-1),K(`label`,kJ,[$t(Yn,{modelValue:c.value,"onUpdate:modelValue":t[3]||=e=>c.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),K(`div`,AJ,[K(`span`,null,En(c.value),1)]),t[18]||=K(`div`,{text:`neutral-400 dark:neutral-500`},[K(`span`,null,`Y`)],-1),K(`label`,jJ,[$t(Yn,{modelValue:u.value,"onUpdate:modelValue":t[4]||=e=>u.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),K(`div`,MJ,[K(`span`,null,En(u.value),1)]),t[19]||=K(`div`,{text:`neutral-400 dark:neutral-500`},[K(`span`,null,`Z`)],-1),K(`label`,NJ,[$t(Yn,{modelValue:d.value,"onUpdate:modelValue":t[5]||=e=>d.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),K(`div`,PJ,[K(`span`,null,En(d.value),1)])])]),_:1}),$t(l,{"h-fit":``,"w-full":``,flex:`~ col`,border:`~ gray/25 rounded-lg`,divide:`y dashed gray/25`,"of-clip":``,"shadow-sm":``},{label:dn(()=>[K(`span`,FJ,En(G(_)(`stage.viewers.debug-menu.vrm.model.title`)),1)]),default:dn(()=>[K(`div`,IJ,[t[20]||=K(`div`,{text:`neutral-400 dark:neutral-500`},[K(`span`,null,`X`)],-1),K(`label`,LJ,[$t(Yn,{modelValue:f.value,"onUpdate:modelValue":t[6]||=e=>f.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),K(`div`,RJ,[K(`span`,null,En(f.value),1)]),t[21]||=K(`div`,{text:`neutral-400 dark:neutral-500`},[K(`span`,null,`Y`)],-1),K(`label`,zJ,[$t(Yn,{modelValue:p.value,"onUpdate:modelValue":t[7]||=e=>p.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),K(`div`,BJ,[K(`span`,null,En(p.value),1)]),t[22]||=K(`div`,{text:`neutral-400 dark:neutral-500`},[K(`span`,null,`Z`)],-1),K(`label`,VJ,[$t(Yn,{modelValue:m.value,"onUpdate:modelValue":t[8]||=e=>m.value=e,min:-10,max:10,step:.01},null,8,[`modelValue`])]),K(`div`,HJ,[K(`span`,null,En(m.value),1)])])]),_:1}),K(`div`,UJ,[K(`span`,null,En(G(_)(`stage.viewers.debug-menu.emotions`)),1)]),K(`div`,WJ,[K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[9]||=e=>g.value?.setExpression(`neutral`)},En(G(_)(`stage.viewers.debug-menu.emotions-btn.neutral`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[10]||=e=>g.value?.setExpression(`surprised`)},En(G(_)(`stage.viewers.debug-menu.emotions-btn.surprised`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[11]||=e=>g.value?.setExpression(`sad`)},En(G(_)(`stage.viewers.debug-menu.emotions-btn.sad`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[12]||=e=>g.value?.setExpression(`angry`)},En(G(_)(`stage.viewers.debug-menu.emotions-btn.angry`)),1),K(`button`,{"rounded-lg":``,bg:`neutral-100/70 dark:neutral-800/50`,"px-2":``,"py-1":``,"backdrop-blur-sm":``,onClick:t[13]||=e=>g.value?.setExpression(`happy`)},En(G(_)(`stage.viewers.debug-menu.emotions-btn.happy`)),1)])])])):Zt(``,!0)]),_:1})])]),_:1}))}}),KJ=GJ;const qJ={relative:``},JJ={"h-full":``,"w-full":``};var YJ=Xt({__name:`Stage`,props:{paused:{type:Boolean,default:!1},focusAt:{},xOffset:{},yOffset:{}},setup(o){let s=U(),c=U(),{stageView:l}=d(Kt()),{mouthOpenSize:u}=d(i()),{audioContext:f,calculateVolume:p}=r(),{onBeforeMessageComposed:m,onBeforeSend:h,onTokenLiteral:b,onTokenSpecial:x,onStreamEnd:S,onAssistantResponseEnd:C}=Tn(),w=Fn(),T=U(),E=U(!1),D=U(!1),O=n({handlers:[e=>new Promise(t=>{let n=f.createBufferSource();n.buffer=e.data.audioBuffer,n.connect(f.destination),n.connect(T.value),E.value=!0,n.start(0),n.onended=()=>{E.value=!1,t()}})]}),k=Pn(),{ssmlEnabled:A,activeSpeechProvider:j,activeSpeechModel:M,activeSpeechVoice:N,pitch:ee}=d(k);async function P(e){try{if(!j.value){console.warn(`No active speech provider configured`);return}if(!N.value){console.warn(`No active speech voice configured`);return}let t=w.getProviderInstance(j.value);if(!t){console.error(`Failed to initialize speech provider`);return}let n=w.getProviderConfig(j.value),r=A.value?k.generateSSML(e.data,N.value,{...n,pitch:ee.value}):e.data,i=await a({...t.speech(M.value,n),input:r,voice:N.value.id}),o=await f.decodeAudioData(i);await O.add({audioBuffer:o,text:e.data})}catch(e){console.error(`Speech generation failed:`,e)}}let F=n({handlers:[P]});F.on(`add`,e=>{console.debug(`ttsQueue added`,e)});let I=e(F),{live2dCurrentMotion:te}=d(Kt()),L=n({handlers:[async e=>{if(l.value===`3d`){let t=y[e.data];if(!t)return;await c.value.setExpression(t)}else l.value===`2d`&&(te.value={group:v[e.data]})}]}),R=t(L);R.onHandlerEvent(`emotion`,e=>{console.debug(`emotion detected`,e)});let ne=Kn();ne.onHandlerEvent(`delay`,e=>{console.debug(`delay detected`,e)});function z(){requestAnimationFrame(z),E.value&&(u.value=p(T.value,`linear`))}function re(){D.value||(z(),f.resume(),D.value=!0)}function ie(){T.value||=f.createAnalyser()}return m(async()=>{ie(),re()}),h(async()=>{te.value={group:_}}),b(async e=>{await I.add(e)}),x(async e=>{await ne.add(e),await R.add(e)}),S(async()=>{await ne.add(g)}),C(async e=>{}),mn(()=>{D.value=!1}),Jt(async()=>{s.value=cR({connection:{bundles:qn()}}),await s.value.execute(`CREATE TABLE memory_test (vec FLOAT[768]);`)}),(e,t)=>(H(),fn(`div`,qJ,[K(`div`,JJ,[G(l)===`2d`?(H(),_n(Nh,{key:0,"focus-at":e.focusAt,"mouth-open-size":G(u),"min-w":`50% (r(),t(e,{modelValue:a.value,"onUpdate:modelValue":i[0]||=e=>a.value=e,border:`focus:primary-300 dark:focus:primary-400/50 2 solid neutral-100 dark:neutral-900`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-50 dark:neutral-950 focus:neutral-50 dark:focus:neutral-900`},null,8,[`modelValue`]))}}),o=a;export{o as Textarea_default}; \ No newline at end of file diff --git a/assets/Textarea-CMwGMW-L.js b/assets/Textarea-CMwGMW-L.js new file mode 100644 index 0000000000000000000000000000000000000000..51e8808a02ef95b393c31de69b52545e6252348a --- /dev/null +++ b/assets/Textarea-CMwGMW-L.js @@ -0,0 +1 @@ +import{b as e}from"./Basic-D95BeH1T.js";import{d7 as t,dH as n,dn as r,do as i}from"./index-C9kcCpP-.js";var a=t({__name:`Textarea`,props:{modelValue:{default:``},modelModifiers:{}},emits:[`update:modelValue`],setup(t){let a=i(t,`modelValue`);return(t,i)=>(n(),r(e,{modelValue:a.value,"onUpdate:modelValue":i[0]||=e=>a.value=e,border:`focus:primary-300 dark:focus:primary-400/50 2 solid neutral-100 dark:neutral-900`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-50 dark:neutral-950 focus:neutral-50 dark:focus:neutral-900`},null,8,[`modelValue`]))}}),o=a;export{o as b}; \ No newline at end of file diff --git a/assets/_...all_-Cu434aE7.js b/assets/_...all_-Cu434aE7.js deleted file mode 100644 index f59e9c84580c871395f1477e935289884bc27dd9..0000000000000000000000000000000000000000 --- a/assets/_...all_-Cu434aE7.js +++ /dev/null @@ -1 +0,0 @@ -import{__plugin_vue_export_helper_default as e,createElementBlock as t,openBlock as n}from"./index-iQVr9nx1.js";const r={};function i(e,r){return n(),t(`div`,null,` 404 - Page not found `)}var a=e(r,[[`render`,i]]);export{a as default}; \ No newline at end of file diff --git a/assets/_...all_-eQpeZWOw.js b/assets/_...all_-eQpeZWOw.js new file mode 100644 index 0000000000000000000000000000000000000000..a6e6c3f0842f6e1b29c5b57354a2d286fa5d859b --- /dev/null +++ b/assets/_...all_-eQpeZWOw.js @@ -0,0 +1 @@ +import{aC as e,dH as t,db as n}from"./index-C9kcCpP-.js";const r={};function i(e,r){return t(),n(`div`,null,` 404 - Page not found `)}var a=e(r,[[`render`,i]]);export{a as default}; \ No newline at end of file diff --git a/assets/__vite-browser-external-Wa8hNVG-.js b/assets/__vite-browser-external-Wa8hNVG-.js deleted file mode 100644 index a0df631a8c8dda4355b4aadb0569d5fb8422ae98..0000000000000000000000000000000000000000 --- a/assets/__vite-browser-external-Wa8hNVG-.js +++ /dev/null @@ -1 +0,0 @@ -import{__commonJSMin as e}from"./index-iQVr9nx1.js";var t=e((exports,t)=>{t.exports={}});export default t(); \ No newline at end of file diff --git a/assets/__vite-browser-external-Xk3YGxmN.js b/assets/__vite-browser-external-Xk3YGxmN.js new file mode 100644 index 0000000000000000000000000000000000000000..fc811c049423fea0b7a166b5135793c019656a3d --- /dev/null +++ b/assets/__vite-browser-external-Xk3YGxmN.js @@ -0,0 +1 @@ +import{e6 as e}from"./index-C9kcCpP-.js";var t=e((exports,t)=>{t.exports={}});export default t(); \ No newline at end of file diff --git a/assets/__vite-optional-peer-dep_effect_xsschema-HpGugLyI.js b/assets/__vite-optional-peer-dep_effect_xsschema-HpGugLyI.js deleted file mode 100644 index b515614e923ea7ca25bbb750412c598834dbaee1..0000000000000000000000000000000000000000 --- a/assets/__vite-optional-peer-dep_effect_xsschema-HpGugLyI.js +++ /dev/null @@ -1 +0,0 @@ -var e={};export{e as default}; \ No newline at end of file diff --git a/assets/__vite-optional-peer-dep_effect_xsschema-O4ggYyu8.js b/assets/__vite-optional-peer-dep_effect_xsschema-O4ggYyu8.js new file mode 100644 index 0000000000000000000000000000000000000000..4977ffee8e8d18a6d16ff12492f0468f75c2d389 --- /dev/null +++ b/assets/__vite-optional-peer-dep_effect_xsschema-O4ggYyu8.js @@ -0,0 +1 @@ +var e={};throw Error(`Could not resolve "effect" imported by "xsschema".`);export{e as default}; \ No newline at end of file diff --git a/assets/__vite-optional-peer-dep_sury_xsschema-DKmH-p9C.js b/assets/__vite-optional-peer-dep_sury_xsschema-DKmH-p9C.js new file mode 100644 index 0000000000000000000000000000000000000000..85fd3e118dbaca9a465384e6fec67a9ccad1d0e1 --- /dev/null +++ b/assets/__vite-optional-peer-dep_sury_xsschema-DKmH-p9C.js @@ -0,0 +1 @@ +var e={};throw Error(`Could not resolve "sury" imported by "xsschema".`);export{e as default}; \ No newline at end of file diff --git a/assets/__vite-optional-peer-dep_sury_xsschema-JuQAxfFv.js b/assets/__vite-optional-peer-dep_sury_xsschema-JuQAxfFv.js deleted file mode 100644 index b515614e923ea7ca25bbb750412c598834dbaee1..0000000000000000000000000000000000000000 --- a/assets/__vite-optional-peer-dep_sury_xsschema-JuQAxfFv.js +++ /dev/null @@ -1 +0,0 @@ -var e={};export{e as default}; \ No newline at end of file diff --git a/assets/airi-card-HWETNpiq.js b/assets/airi-card-HWETNpiq.js new file mode 100644 index 0000000000000000000000000000000000000000..20f4e3727b94b99bdcf2d06baeeb87a4f707a949 --- /dev/null +++ b/assets/airi-card-HWETNpiq.js @@ -0,0 +1 @@ +import"./dist-NaQNo8Nw.js";import{b as e}from"./InputFile-B-1kiNIu.js";import{Q as t,a3 as n,aJ as r,cZ as i,d7 as a,d9 as o,dB as s,dF as ee,dG as c,dH as l,dK as u,dV as d,da as te,db as f,dj as p,dl as m,dn as h,dr as g,du as _,dv as v,e1 as y,e2 as ne,f as re}from"./index-C9kcCpP-.js";import{b}from"./route-block-B2lA4iHQ.js";import{b as x}from"./CardCreate-zpppfU_P.js";import{b as S}from"./CardCreationDialog-1FdBirpE.js";import{b as C}from"./DeleteCardDialog-BSO29tu_.js";import{b as w}from"./CardDetailDialog-D8Olu3Yo.js";import{b as T}from"./CardListItem-noXJhtke.js";const ie={"rounded-xl":``,"p-4":``,flex:`~ col gap-4`},ae={flex:`~ row`,"flex-wrap":``,"items-center":``,"justify-between":``,"gap-4":``},oe={class:`relative min-w-[200px] flex-1`,"inline-flex":`~`,"w-full":``,"items-center":``},se=[`placeholder`],E={class:`relative flex flex-row justify-start gap-2 lg:flex-col`},D={class:`top-[-32px] whitespace-nowrap text-sm text-neutral-500 leading-10 lg:absolute dark:text-neutral-400`},O={key:0,flex:``,"flex-col":``,"items-center":``},k={"font-medium":``,text:`neutral-600 dark:neutral-300`},A={text:`neutral-500 dark:neutral-400`,"mt-2":``,"text-sm":``},j={key:1,flex:``,"flex-col":``,"items-center":``},M={"font-medium":``,text:`primary-600 dark:primary-300`},N={key:1,class:`col-span-full rounded-xl p-8 text-center`,border:`~ neutral-200/50 dark:neutral-700/30`,bg:`neutral-50/50 dark:neutral-900/50`},P={key:2,class:`col-span-full flex items-center gap-3 border-2 border-amber-200 rounded-xl bg-amber-50/80 p-4 dark:border-amber-800 dark:bg-amber-900/30`},F={class:`flex flex-col`},I={class:`font-medium`},L={class:`text-sm text-amber-600 dark:text-amber-400`},R={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var z=a({__name:`index`,setup(a){let{t:b}=t(),z=re(),{addCard:B,removeCard:ce}=z,{cards:V,activeCardId:H}=r(z),U=u(``),W=u(!1),G=u(!1),K=u(``),q=u(`nameAsc`),J=u([]);ee(J,async e=>{let t=e[0];if(t)try{let e=await t.text(),n=JSON.parse(e);U.value=B(n),W.value=!0}catch(e){console.error(`Error processing card file:`,e)}});let Y=v(()=>Array.from(V.value.entries()).map(([e,t])=>({id:e,name:t.name,description:t.description}))),le=v(()=>{if(!K.value)return Y.value;let e=K.value.toLowerCase();return Y.value.filter(t=>t.name.toLowerCase().includes(e)||t.description&&t.description.toLowerCase().includes(e))}),X=v(()=>{let e=[...le.value];return q.value===`nameAsc`?e.sort((e,t)=>e.name.localeCompare(t.name)):q.value===`nameDesc`?e.sort((e,t)=>t.name.localeCompare(e.name)):q.value===`recent`?e.sort((e,t)=>t.id.localeCompare(e.id)):e}),Z=u(!1),Q=u(null);function ue(){Q.value&&(ce(Q.value),Q.value=null,Z.value=!1)}function de(e){Q.value=e,Z.value=!0}function fe(e){U.value=e,W.value=!0}function pe(){G.value=!0}function me(e){H.value=e}function he(e){let t=V.value.get(e);return t?.version||`1.0.0`}function $(e,t){let n=V.value.get(e);if(!n||!n.extensions?.airi?.modules)return`default`;let r=n.extensions.airi.modules;return t===`consciousness`?r.consciousness?.model&&r.consciousness.model.split(`-`).pop()||`default`:t===`voice`&&r.speech?.voice_id||`default`}return(t,r)=>{let a=c(`motion`);return l(),f(_,null,[p(`div`,ie,[p(`div`,ae,[p(`div`,oe,[r[7]||=p(`div`,{class:`pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3`},[p(`div`,{"i-solar:magnifer-line-duotone":``,class:`text-neutral-500 dark:text-neutral-400`})],-1),g(p(`input`,{"onUpdate:modelValue":r[0]||=e=>K.value=e,type:`search`,class:`w-full rounded-xl p-2.5 pl-10 text-sm outline-none`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,bg:`white dark:neutral-900`,placeholder:d(b)(`settings.pages.card.search`)},null,8,se),[[i,K.value]])]),p(`div`,E,[p(`div`,D,y(d(b)(`settings.pages.card.sort_by`))+`: `,1),s(d(n),{modelValue:q.value,"onUpdate:modelValue":r[1]||=e=>q.value=e,options:[{value:`nameAsc`,label:d(b)(`settings.pages.card.name_asc`)},{value:`nameDesc`,label:d(b)(`settings.pages.card.name_desc`)},{value:`recent`,label:d(b)(`settings.pages.card.recent`)}],placeholder:`Select sort option`,class:`min-w-[150px]`},null,8,[`modelValue`,`options`])])]),p(`div`,{class:ne([`mt-4`,{"grid grid-cols-[repeat(auto-fill,minmax(280px,1fr))] gap-4 grid-auto-rows-[minmax(min-content,max-content)] grid-auto-flow-dense sm:grid-cols-[repeat(auto-fill,minmax(240px,1fr))] sm:gap-5 md:grid-cols-[repeat(auto-fill,minmax(220px,1fr))] lg:grid-cols-[repeat(auto-fill,minmax(250px,1fr))]":d(V).size>0}])},[s(d(e),{modelValue:J.value,"onUpdate:modelValue":r[2]||=e=>J.value=e,accept:`*.json`},{default:te(({isDragging:e})=>[e?(l(),f(`div`,j,[r[9]||=p(`div`,{"i-solar:upload-minimalistic-bold":``,class:`mb-2 text-5xl text-primary-500 dark:text-primary-400`},null,-1),p(`p`,M,y(d(b)(`settings.pages.card.drop_here`)),1)])):(l(),f(`div`,O,[r[8]||=p(`div`,{"i-solar:upload-square-line-duotone":``,"mb-4":``,"text-5xl":``,text:`neutral-400 dark:neutral-500`},null,-1),p(`p`,k,y(d(b)(`settings.pages.card.upload`)),1),p(`p`,A,y(d(b)(`settings.pages.card.upload_desc`)),1)]))]),_:1},8,[`modelValue`]),s(x,{onClick:pe}),d(V).size>0?(l(!0),f(_,{key:0},m(X.value,e=>(l(),h(T,{id:e.id,key:e.id,name:e.name,description:e.description,"is-active":e.id===d(H),"is-selected":e.id===U.value&&W.value,version:he(e.id),"consciousness-model":$(e.id,`consciousness`),"voice-model":$(e.id,`voice`),onSelect:t=>fe(e.id),onActivate:t=>me(e.id),onDelete:t=>de(e.id)},null,8,[`id`,`name`,`description`,`is-active`,`is-selected`,`version`,`consciousness-model`,`voice-model`,`onSelect`,`onActivate`,`onDelete`]))),128)):o(``,!0),d(V).size===0?(l(),f(`div`,N,[r[10]||=p(`div`,{"i-solar:card-search-broken":``,"mx-auto":``,"mb-3":``,"text-6xl":``,"text-neutral-400":``},null,-1),p(`p`,null,y(d(b)(`settings.pages.card.no_cards`)),1)])):o(``,!0),K.value&&X.value.length===0?(l(),f(`div`,P,[r[11]||=p(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),p(`div`,F,[p(`span`,I,y(d(b)(`settings.pages.card.no_results`)),1),p(`span`,L,y(d(b)(`settings.pages.card.try_different_search`)),1)])])):o(``,!0)],2)]),s(C,{modelValue:Z.value,"onUpdate:modelValue":r[3]||=e=>Z.value=e,"card-name":Q.value?d(z).getCard(Q.value)?.name:``,onConfirm:ue,onCancel:r[4]||=e=>Q.value=null},null,8,[`modelValue`,`card-name`]),s(w,{modelValue:W.value,"onUpdate:modelValue":r[5]||=e=>W.value=e,"card-id":U.value},null,8,[`modelValue`,`card-id`]),s(S,{modelValue:G.value,"onUpdate:modelValue":r[6]||=e=>G.value=e},null,8,[`modelValue`]),g((l(),f(`div`,R,r[12]||=[p(`div`,{text:`60`,"i-solar:emoji-funny-square-bold-duotone":``},null,-1)])),[[a]])],64)}}});typeof b==`function`&&b(z);var B=z;export{B as default}; \ No newline at end of file diff --git a/assets/airi-card-vWWO_DCt.js b/assets/airi-card-vWWO_DCt.js deleted file mode 100644 index 4243d2593c6adbd869e223c644f1b156d2f9d547..0000000000000000000000000000000000000000 --- a/assets/airi-card-vWWO_DCt.js +++ /dev/null @@ -1 +0,0 @@ -import"./dist-GvbkCCcT.js";import{InputFile_default as e}from"./InputFile-BJcnvuYo.js";import{Fragment as t,Select_default as n,computed as r,createBaseVNode as i,createBlock as a,createCommentVNode as o,createElementBlock as s,createVNode as c,defineComponent as l,normalizeClass as u,openBlock as d,ref as f,renderList as p,resolveDirective as ee,storeToRefs as m,toDisplayString as h,unref as g,useAiriCardStore as _,useI18n as v,vModelText as te,watch as ne,withCtx as re,withDirectives as y}from"./index-iQVr9nx1.js";import{route_block_default as b}from"./route-block-D_p8WJle.js";import{CardCreate_default as ie}from"./CardCreate-QsTV9xFv.js";import{CardCreationDialog_default as x}from"./CardCreationDialog-6qbWAmov.js";import{DeleteCardDialog_default as S}from"./DeleteCardDialog-BTqL0RX4.js";import{CardDetailDialog_default as C}from"./CardDetailDialog-iDYkHhJf.js";import{CardListItem_default as w}from"./CardListItem-DVQOs9x9.js";const T={"rounded-xl":``,"p-4":``,flex:`~ col gap-4`},ae={flex:`~ row`,"flex-wrap":``,"items-center":``,"justify-between":``,"gap-4":``},oe={class:`relative min-w-[200px] flex-1`,"inline-flex":`~`,"w-full":``,"items-center":``},se=[`placeholder`],E={class:`relative flex flex-row justify-start gap-2 lg:flex-col`},D={class:`top-[-32px] whitespace-nowrap text-sm text-neutral-500 leading-10 lg:absolute dark:text-neutral-400`},O={key:0,flex:``,"flex-col":``,"items-center":``},k={"font-medium":``,text:`neutral-600 dark:neutral-300`},A={text:`neutral-500 dark:neutral-400`,"mt-2":``,"text-sm":``},j={key:1,flex:``,"flex-col":``,"items-center":``},M={"font-medium":``,text:`primary-600 dark:primary-300`},N={key:1,class:`col-span-full rounded-xl p-8 text-center`,border:`~ neutral-200/50 dark:neutral-700/30`,bg:`neutral-50/50 dark:neutral-900/50`},P={key:2,class:`col-span-full flex items-center gap-3 border-2 border-amber-200 rounded-xl bg-amber-50/80 p-4 dark:border-amber-800 dark:bg-amber-900/30`},F={class:`flex flex-col`},I={class:`font-medium`},L={class:`text-sm text-amber-600 dark:text-amber-400`},R={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var z=l({__name:`index`,setup(l){let{t:b}=v(),z=_(),{addCard:B,removeCard:ce}=z,{cards:V,activeCardId:H}=m(z),U=f(``),W=f(!1),G=f(!1),K=f(``),q=f(`nameAsc`),J=f([]);ne(J,async e=>{let t=e[0];if(t)try{let e=await t.text(),n=JSON.parse(e);U.value=B(n),W.value=!0}catch(e){console.error(`Error processing card file:`,e)}});let Y=r(()=>Array.from(V.value.entries()).map(([e,t])=>({id:e,name:t.name,description:t.description}))),le=r(()=>{if(!K.value)return Y.value;let e=K.value.toLowerCase();return Y.value.filter(t=>t.name.toLowerCase().includes(e)||t.description&&t.description.toLowerCase().includes(e))}),X=r(()=>{let e=[...le.value];return q.value===`nameAsc`?e.sort((e,t)=>e.name.localeCompare(t.name)):q.value===`nameDesc`?e.sort((e,t)=>t.name.localeCompare(e.name)):q.value===`recent`?e.sort((e,t)=>t.id.localeCompare(e.id)):e}),Z=f(!1),Q=f(null);function ue(){Q.value&&(ce(Q.value),Q.value=null,Z.value=!1)}function de(e){Q.value=e,Z.value=!0}function fe(e){U.value=e,W.value=!0}function pe(){G.value=!0}function me(e){H.value=e}function he(e){let t=V.value.get(e);return t?.version||`1.0.0`}function $(e,t){var n,r,i;let a=V.value.get(e);if(!a||!(!((n=a.extensions)==null||(n=n.airi)==null)&&n.modules))return`default`;let o=a.extensions.airi.modules;return t===`consciousness`?(r=o.consciousness)?.model&&o.consciousness.model.split(`-`).pop()||`default`:t===`voice`&&(i=o.speech)?.voice_id||`default`}return(r,l)=>{var f;let m=ee(`motion`);return d(),s(t,null,[i(`div`,T,[i(`div`,ae,[i(`div`,oe,[l[7]||=i(`div`,{class:`pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3`},[i(`div`,{"i-solar:magnifer-line-duotone":``,class:`text-neutral-500 dark:text-neutral-400`})],-1),y(i(`input`,{"onUpdate:modelValue":l[0]||=e=>K.value=e,type:`search`,class:`w-full rounded-xl p-2.5 pl-10 text-sm outline-none`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,bg:`white dark:neutral-900`,placeholder:g(b)(`settings.pages.card.search`)},null,8,se),[[te,K.value]])]),i(`div`,E,[i(`div`,D,h(g(b)(`settings.pages.card.sort_by`))+`: `,1),c(g(n),{modelValue:q.value,"onUpdate:modelValue":l[1]||=e=>q.value=e,options:[{value:`nameAsc`,label:g(b)(`settings.pages.card.name_asc`)},{value:`nameDesc`,label:g(b)(`settings.pages.card.name_desc`)},{value:`recent`,label:g(b)(`settings.pages.card.recent`)}],placeholder:`Select sort option`,class:`min-w-[150px]`},null,8,[`modelValue`,`options`])])]),i(`div`,{class:u([`mt-4`,{"grid grid-cols-[repeat(auto-fill,minmax(280px,1fr))] gap-4 grid-auto-rows-[minmax(min-content,max-content)] grid-auto-flow-dense sm:grid-cols-[repeat(auto-fill,minmax(240px,1fr))] sm:gap-5 md:grid-cols-[repeat(auto-fill,minmax(220px,1fr))] lg:grid-cols-[repeat(auto-fill,minmax(250px,1fr))]":g(V).size>0}])},[c(g(e),{modelValue:J.value,"onUpdate:modelValue":l[2]||=e=>J.value=e,accept:`*.json`},{default:re(({isDragging:e})=>[e?(d(),s(`div`,j,[l[9]||=i(`div`,{"i-solar:upload-minimalistic-bold":``,class:`mb-2 text-5xl text-primary-500 dark:text-primary-400`},null,-1),i(`p`,M,h(g(b)(`settings.pages.card.drop_here`)),1)])):(d(),s(`div`,O,[l[8]||=i(`div`,{"i-solar:upload-square-line-duotone":``,"mb-4":``,"text-5xl":``,text:`neutral-400 dark:neutral-500`},null,-1),i(`p`,k,h(g(b)(`settings.pages.card.upload`)),1),i(`p`,A,h(g(b)(`settings.pages.card.upload_desc`)),1)]))]),_:1},8,[`modelValue`]),c(ie,{onClick:pe}),g(V).size>0?(d(!0),s(t,{key:0},p(X.value,e=>(d(),a(w,{id:e.id,key:e.id,name:e.name,description:e.description,"is-active":e.id===g(H),"is-selected":e.id===U.value&&W.value,version:he(e.id),"consciousness-model":$(e.id,`consciousness`),"voice-model":$(e.id,`voice`),onSelect:t=>fe(e.id),onActivate:t=>me(e.id),onDelete:t=>de(e.id)},null,8,[`id`,`name`,`description`,`is-active`,`is-selected`,`version`,`consciousness-model`,`voice-model`,`onSelect`,`onActivate`,`onDelete`]))),128)):o(``,!0),g(V).size===0?(d(),s(`div`,N,[l[10]||=i(`div`,{"i-solar:card-search-broken":``,"mx-auto":``,"mb-3":``,"text-6xl":``,"text-neutral-400":``},null,-1),i(`p`,null,h(g(b)(`settings.pages.card.no_cards`)),1)])):o(``,!0),K.value&&X.value.length===0?(d(),s(`div`,P,[l[11]||=i(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),i(`div`,F,[i(`span`,I,h(g(b)(`settings.pages.card.no_results`)),1),i(`span`,L,h(g(b)(`settings.pages.card.try_different_search`)),1)])])):o(``,!0)],2)]),c(S,{modelValue:Z.value,"onUpdate:modelValue":l[3]||=e=>Z.value=e,"card-name":Q.value?(f=g(z).getCard(Q.value))?.name:``,onConfirm:ue,onCancel:l[4]||=e=>Q.value=null},null,8,[`modelValue`,`card-name`]),c(C,{modelValue:W.value,"onUpdate:modelValue":l[5]||=e=>W.value=e,"card-id":U.value},null,8,[`modelValue`,`card-id`]),c(x,{modelValue:G.value,"onUpdate:modelValue":l[6]||=e=>G.value=e},null,8,[`modelValue`]),y((d(),s(`div`,R,l[12]||=[i(`div`,{text:`60`,"i-solar:emoji-funny-square-bold-duotone":``},null,-1)])),[[m]])],64)}}});typeof b==`function`&&b(z);var B=z;export{B as default}; \ No newline at end of file diff --git a/assets/alibaba-cloud-model-studio-DzXYVh34.js b/assets/alibaba-cloud-model-studio-DzXYVh34.js new file mode 100644 index 0000000000000000000000000000000000000000..f4828500ff999221f96e822ddb41a840460ef4c4 --- /dev/null +++ b/assets/alibaba-cloud-model-studio-DzXYVh34.js @@ -0,0 +1 @@ +import{K as e,Q as t,a8 as n,aJ as r,b as i,d3 as a,d7 as o,dB as s,dF as c,dH as l,dK as u,dV as d,da as f,dj as p,dn as m,dv as h,g,i as _}from"./index-C9kcCpP-.js";import{b as v}from"./route-block-B2lA4iHQ.js";const y={flex:`~ col gap-4`},b=`alibaba-cloud-model-studio`,x=`cosyvoice-v1`;var S=o({__name:`alibaba-cloud-model-studio`,setup(o){let v={speed:1},S=u(0),C=u(1),w=u(0),T=g(),E=_(),{providers:D}=r(E),{t:O}=t(),k=h(()=>!!D.value[b]?.apiKey),A=h(()=>T.availableVoices[b]||[]);async function j(e,t,n){let r=E.getProviderInstance(b);if(!r)throw Error(`Failed to initialize speech provider`);let i=E.getProviderConfig(b),a=i.model||x;return await T.speech(r,a,e,t,{...i,...v})}return a(async()=>{let e=E.getProviderConfig(b),t=E.getProviderMetadata(b);await t.validators.validateProviderConfig(e)?await T.loadVoicesForProvider(b):console.error(`Failed to validate provider config`,e)}),c(S,async()=>{let e=E.getProviderConfig(b);e.pitch=S.value}),c(C,async()=>{let e=E.getProviderConfig(b);e.speed=C.value}),c(w,async()=>{let e=E.getProviderConfig(b);e.volume=w.value}),c(D,async()=>{let e=E.getProviderConfig(b),t=E.getProviderMetadata(b);await t.validators.validateProviderConfig(e)?await T.loadVoicesForProvider(b):console.error(`Failed to validate provider config`,e)},{immediate:!0}),(t,r)=>(l(),m(d(i),{"provider-id":b,"default-model":x,"additional-settings":v},{"voice-settings":f(()=>[p(`div`,y,[s(d(n),{modelValue:S.value,"onUpdate:modelValue":r[0]||=e=>S.value=e,label:d(O)(`settings.pages.providers.provider.common.fields.field.pitch.label`),description:d(O)(`settings.pages.providers.provider.common.fields.field.pitch.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),s(d(n),{modelValue:C.value,"onUpdate:modelValue":r[1]||=e=>C.value=e,label:d(O)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:d(O)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`]),s(d(n),{modelValue:w.value,"onUpdate:modelValue":r[2]||=e=>w.value=e,label:d(O)(`settings.pages.providers.provider.common.fields.field.volume.label`),description:d(O)(`settings.pages.providers.provider.common.fields.field.volume.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`])])]),playground:f(()=>[s(d(e),{"available-voices":A.value,"generate-speech":j,"api-key-configured":k.value,"default-text":`Hello! This is a test of the ElevenLabs voice synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof v==`function`&&v(S);var C=S;export{C as default}; \ No newline at end of file diff --git a/assets/alibaba-cloud-model-studio-t5KYUhHp.js b/assets/alibaba-cloud-model-studio-t5KYUhHp.js deleted file mode 100644 index 30ed7be3dd262e3946856dc486c54bf9f548308d..0000000000000000000000000000000000000000 --- a/assets/alibaba-cloud-model-studio-t5KYUhHp.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldRange_default as e,SpeechPlayground_default as t,SpeechProviderSettings_default as n,computed as r,createBaseVNode as i,createBlock as a,createVNode as o,defineComponent as s,onMounted as c,openBlock as l,ref as u,storeToRefs as d,unref as f,useI18n as p,useProvidersStore as m,useSpeechStore as h,watch as g,withCtx as _}from"./index-iQVr9nx1.js";import{route_block_default as v}from"./route-block-D_p8WJle.js";const y={flex:`~ col gap-4`},b=`alibaba-cloud-model-studio`,x=`cosyvoice-v1`;var S=s({__name:`alibaba-cloud-model-studio`,setup(s){let v={speed:1},S=u(0),C=u(1),w=u(0),T=h(),E=m(),{providers:D}=d(E),{t:O}=p(),k=r(()=>{var e;return!!(e=D.value[b])?.apiKey}),A=r(()=>T.availableVoices[b]||[]);async function j(e,t,n){let r=E.getProviderInstance(b);if(!r)throw Error(`Failed to initialize speech provider`);let i=E.getProviderConfig(b),a=i.model||x;return await T.speech(r,a,e,t,{...i,...v})}return c(async()=>{let e=E.getProviderConfig(b),t=E.getProviderMetadata(b);await t.validators.validateProviderConfig(e)?await T.loadVoicesForProvider(b):console.error(`Failed to validate provider config`,e)}),g(S,async()=>{let e=E.getProviderConfig(b);e.pitch=S.value}),g(C,async()=>{let e=E.getProviderConfig(b);e.speed=C.value}),g(w,async()=>{let e=E.getProviderConfig(b);e.volume=w.value}),g(D,async()=>{let e=E.getProviderConfig(b),t=E.getProviderMetadata(b);await t.validators.validateProviderConfig(e)?await T.loadVoicesForProvider(b):console.error(`Failed to validate provider config`,e)},{immediate:!0}),(r,s)=>(l(),a(f(n),{"provider-id":b,"default-model":x,"additional-settings":v},{"voice-settings":_(()=>[i(`div`,y,[o(f(e),{modelValue:S.value,"onUpdate:modelValue":s[0]||=e=>S.value=e,label:f(O)(`settings.pages.providers.provider.common.fields.field.pitch.label`),description:f(O)(`settings.pages.providers.provider.common.fields.field.pitch.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),o(f(e),{modelValue:C.value,"onUpdate:modelValue":s[1]||=e=>C.value=e,label:f(O)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:f(O)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`]),o(f(e),{modelValue:w.value,"onUpdate:modelValue":s[2]||=e=>w.value=e,label:f(O)(`settings.pages.providers.provider.common.fields.field.volume.label`),description:f(O)(`settings.pages.providers.provider.common.fields.field.volume.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`])])]),playground:_(()=>[o(f(t),{"available-voices":A.value,"generate-speech":j,"api-key-configured":k.value,"default-text":`Hello! This is a test of the ElevenLabs voice synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof v==`function`&&v(S);var C=S;export{C as default}; \ No newline at end of file diff --git a/assets/anthropic-BL9968xm.js b/assets/anthropic-BL9968xm.js deleted file mode 100644 index e777127d47229df642f29ad85c1e4971744edd6f..0000000000000000000000000000000000000000 --- a/assets/anthropic-BL9968xm.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBaseVNode as s,createBlock as c,createTextVNode as l,createVNode as u,defineComponent as d,onMounted as f,openBlock as p,storeToRefs as m,toDisplayString as h,unref as g,useI18n as _,useProvidersStore as v,useRouter as y,watch as b,withCtx as x}from"./index-iQVr9nx1.js";import{route_block_default as S}from"./route-block-D_p8WJle.js";const C={bg:`orange-50 dark:orange-900/20`,"rounded-xl":``,"p-4":``,flex:`~ col gap-3`},w={"text-xl":``,"font-semibold":``,text:`orange-700 dark:orange-500`},T={underline:``,href:`https://docs.anthropic.com/en/api/openai-sdk`},E=`anthropic`;var D=d({__name:`anthropic`,setup(d){let{t:S}=_(),D=y(),O=v(),{providers:k}=m(O),A=o(()=>O.getProviderMetadata(E)),j=o({get:()=>{var e;return(e=k.value[E])?.apiKey||``},set:e=>{k.value[E]||(k.value[E]={}),k.value[E].apiKey=e}}),M=o({get:()=>{var e;return(e=k.value[E])?.baseUrl||`https://api.anthropic.com/v1/`},set:e=>{k.value[E]||(k.value[E]={}),k.value[E].baseUrl=e}});f(()=>{var e,t;k.value[E]||(k.value[E]={baseUrl:`https://api.anthropic.com/v1/`}),j.value=(e=k.value[E])?.apiKey||``,M.value=(t=k.value[E])?.baseUrl||`https://api.anthropic.com/v1/`}),b([j,M],()=>{k.value[E]={...k.value[E],apiKey:j.value,baseUrl:M.value||`https://api.anthropic.com/v1/`}});function N(){k.value[E]={baseUrl:`https://api.anthropic.com/v1/`}}return(o,d)=>{var f,m;return p(),c(g(a),{"provider-name":(f=A.value)?.localizedName||`Anthropic | Claude`,"provider-icon":(m=A.value)?.icon,"on-back":()=>g(D).back()},{default:x(()=>[s(`div`,C,[s(`h2`,w,h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.title`)),1),s(`p`,null,[l(h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part1`))+` `,1),s(`a`,T,h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part2`)),1),l(`, `+h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part3`))+` `,1),d[2]||=s(`a`,{underline:``,href:`https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CORS`},`CORS`,-1),l(` `+h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part4`)),1)]),s(`p`,null,[l(h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part5`))+` `,1),d[3]||=s(`a`,{underline:``,href:`https://workers.cloudflare.com/`},`Cloudflare Workers`,-1),l(` `+h(g(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part6`)),1)])]),u(g(i),null,{default:x(()=>[u(g(r),{title:g(S)(`settings.pages.providers.common.section.basic.title`),description:g(S)(`settings.pages.providers.common.section.basic.description`),"on-reset":N},{default:x(()=>{var e;return[u(g(t),{modelValue:j.value,"onUpdate:modelValue":d[0]||=e=>j.value=e,"provider-name":(e=A.value)?.localizedName||`Anthropic`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),u(g(e),{title:g(S)(`settings.pages.providers.common.section.advanced.title`)},{default:x(()=>[u(g(n),{modelValue:M.value,"onUpdate:modelValue":d[1]||=e=>M.value=e,placeholder:`https://api.anthropic.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof S==`function`&&S(D);var O=D;export{O as default}; \ No newline at end of file diff --git a/assets/anthropic-C47u_7Ce.js b/assets/anthropic-C47u_7Ce.js new file mode 100644 index 0000000000000000000000000000000000000000..505146ff41d605fa1adb47f2c30d0668e11ab476 --- /dev/null +++ b/assets/anthropic-C47u_7Ce.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dI as m,dV as h,da as g,dj as _,dn as v,dv as y,e1 as b,i as x}from"./index-C9kcCpP-.js";import{b as S}from"./route-block-B2lA4iHQ.js";const C={bg:`orange-50 dark:orange-900/20`,"rounded-xl":``,"p-4":``,flex:`~ col gap-3`},w={"text-xl":``,"font-semibold":``,text:`orange-700 dark:orange-500`},T={underline:``,href:`https://docs.anthropic.com/en/api/openai-sdk`},E=`anthropic`;var D=u({__name:`anthropic`,setup(u){let{t:S}=a(),D=s(),O=x(),{providers:k}=c(O),A=y(()=>O.getProviderMetadata(E)),j=y({get:()=>k.value[E]?.apiKey||``,set:e=>{k.value[E]||(k.value[E]={}),k.value[E].apiKey=e}}),M=y({get:()=>k.value[E]?.baseUrl||`https://api.anthropic.com/v1/`,set:e=>{k.value[E]||(k.value[E]={}),k.value[E].baseUrl=e}});l(()=>{k.value[E]||(k.value[E]={baseUrl:`https://api.anthropic.com/v1/`}),j.value=k.value[E]?.apiKey||``,M.value=k.value[E]?.baseUrl||`https://api.anthropic.com/v1/`}),f([j,M],()=>{k.value[E]={...k.value[E],apiKey:j.value,baseUrl:M.value||`https://api.anthropic.com/v1/`}});function N(){k.value[E]={baseUrl:`https://api.anthropic.com/v1/`}}return(a,s)=>(p(),v(h(e),{"provider-name":A.value?.localizedName||`Anthropic | Claude`,"provider-icon":A.value?.icon,"on-back":()=>h(D).back()},{default:g(()=>[_(`div`,C,[_(`h2`,w,b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.title`)),1),_(`p`,null,[m(b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part1`))+` `,1),_(`a`,T,b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part2`)),1),m(`, `+b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part3`))+` `,1),s[2]||=_(`a`,{underline:``,href:`https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CORS`},`CORS`,-1),m(` `+b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part4`)),1)]),_(`p`,null,[m(b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part5`))+` `,1),s[3]||=_(`a`,{underline:``,href:`https://workers.cloudflare.com/`},`Cloudflare Workers`,-1),m(` `+b(h(S)(`settings.pages.providers.provider.anthropic.helpinfo.description.part6`)),1)])]),d(h(t),null,{default:g(()=>[d(h(n),{title:h(S)(`settings.pages.providers.common.section.basic.title`),description:h(S)(`settings.pages.providers.common.section.basic.description`),"on-reset":N},{default:g(()=>[d(h(i),{modelValue:j.value,"onUpdate:modelValue":s[0]||=e=>j.value=e,"provider-name":A.value?.localizedName||`Anthropic`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(h(o),{title:h(S)(`settings.pages.providers.common.section.advanced.title`)},{default:g(()=>[d(h(r),{modelValue:M.value,"onUpdate:modelValue":s[1]||=e=>M.value=e,placeholder:`https://api.anthropic.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof S==`function`&&S(D);var O=D;export{O as default}; \ No newline at end of file diff --git a/assets/appearance-CHlIhV3Q.js b/assets/appearance-CHlIhV3Q.js new file mode 100644 index 0000000000000000000000000000000000000000..da33352e6ed1b0c56cb3a06f8e30d1c5cc75d36e --- /dev/null +++ b/assets/appearance-CHlIhV3Q.js @@ -0,0 +1 @@ +import{$ as e,Q as t,d7 as n,dG as r,dH as i,dV as a,db as o,dj as s,dl as c,dn as l,dr as u,du as d,dv as f,e3 as p}from"./index-C9kcCpP-.js";import{b as m}from"./route-block-B2lA4iHQ.js";const h={flex:`~ col gap-4`,"font-normal":``},g={flex:`~ col gap-4`},_={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-12rem)]`,"bottom-0":``,"right--10":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:180},enter:{scale:1,opacity:1,rotate:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``},v={text:`60`,"i-solar:settings-bold-duotone":``};var y=n({__name:`index`,setup(n){let{t:m}=t(),y=f(()=>[{title:m(`settings.pages.themes.general.title`),description:m(`settings.pages.themes.general.description`),icon:`i-solar:emoji-funny-square-bold-duotone`,to:`/settings/appearance/general`},{title:m(`settings.pages.themes.color-scheme.title`),description:m(`settings.pages.themes.color-scheme.description`),icon:`i-solar:pallete-2-bold-duotone`,to:`/settings/appearance/color-scheme`},{title:m(`settings.pages.themes.developer.title`),description:m(`settings.pages.themes.developer.description`),icon:`i-solar:code-bold-duotone`,to:`/settings/appearance/developer`}]);return(t,n)=>{let f=r(`motion`);return i(),o(`div`,h,[n[0]||=s(`div`,null,null,-1),s(`div`,g,[(i(!0),o(d,null,c(y.value,(t,n)=>u((i(),l(a(e),{key:t.to,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250,style:p({transitionDelay:`${n*50}ms`}),title:t.title,description:t.description,icon:t.icon,to:t.to},null,8,[`style`,`title`,`description`,`icon`,`to`])),[[f]])),128))]),u((i(),o(`div`,_,[u(s(`div`,v,null,512),[[f]])])),[[f]])])}}});typeof m==`function`&&m(y);var b=y;export{b as default}; \ No newline at end of file diff --git a/assets/appearance-DE27mPrm.js b/assets/appearance-DE27mPrm.js deleted file mode 100644 index 0730324562e4c7ae0721055071ef79bd56bef898..0000000000000000000000000000000000000000 --- a/assets/appearance-DE27mPrm.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,IconItem_default as t,computed as n,createBaseVNode as r,createBlock as i,createElementBlock as a,defineComponent as o,normalizeStyle as s,openBlock as c,renderList as l,resolveDirective as u,unref as d,useI18n as f,withDirectives as p}from"./index-iQVr9nx1.js";import{route_block_default as m}from"./route-block-D_p8WJle.js";const h={flex:`~ col gap-4`,"font-normal":``},g={flex:`~ col gap-4`},_={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-12rem)]`,"bottom-0":``,"right--10":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:180},enter:{scale:1,opacity:1,rotate:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``},v={text:`60`,"i-solar:settings-bold-duotone":``};var y=o({__name:`index`,setup(o){let{t:m}=f(),y=n(()=>[{title:m(`settings.pages.themes.general.title`),description:m(`settings.pages.themes.general.description`),icon:`i-solar:emoji-funny-square-bold-duotone`,to:`/settings/appearance/general`},{title:m(`settings.pages.themes.color-scheme.title`),description:m(`settings.pages.themes.color-scheme.description`),icon:`i-solar:pallete-2-bold-duotone`,to:`/settings/appearance/color-scheme`},{title:m(`settings.pages.themes.developer.title`),description:m(`settings.pages.themes.developer.description`),icon:`i-solar:code-bold-duotone`,to:`/settings/appearance/developer`}]);return(n,o)=>{let f=u(`motion`);return c(),a(`div`,h,[o[0]||=r(`div`,null,null,-1),r(`div`,g,[(c(!0),a(e,null,l(y.value,(e,n)=>p((c(),i(d(t),{key:e.to,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250,style:s({transitionDelay:`${n*50}ms`}),title:e.title,description:e.description,icon:e.icon,to:e.to},null,8,[`style`,`title`,`description`,`icon`,`to`])),[[f]])),128))]),p((c(),a(`div`,_,[p(r(`div`,v,null,512),[[f]])])),[[f]])])}}});typeof m==`function`&&m(y);var b=y;export{b as default}; \ No newline at end of file diff --git a/assets/audio-D04pH23-.js b/assets/audio-D04pH23-.js deleted file mode 100644 index 543b5829ffa79eb7339315ddf0c3e04d98c65c72..0000000000000000000000000000000000000000 --- a/assets/audio-D04pH23-.js +++ /dev/null @@ -1 +0,0 @@ -import{createBaseVNode as e,createElementBlock as t,defineComponent as n,openBlock as r,ref as i}from"./index-iQVr9nx1.js";var a=n({__name:`audio`,setup(n){let a=i(),o=i();function s(e){var t,n;if(!e)return;let r=(t=o.value)==null||(t=t.files)==null?void 0:t[0];if(!r)return;let i=document.createElement(`audio`);(n=a.value)?.appendChild(i),i.src=URL.createObjectURL(r),i.controls=!0,i.load(),i.play()}return(n,i)=>(r(),t(`div`,null,[e(`div`,null,[e(`div`,{ref_key:`containerRef`,ref:a},null,512),e(`input`,{ref_key:`fileInputRef`,ref:o,type:`file`,onChange:s},null,544)])]))}}),o=a;export{o as default}; \ No newline at end of file diff --git a/assets/audio-DDkm4nFt.js b/assets/audio-DDkm4nFt.js new file mode 100644 index 0000000000000000000000000000000000000000..729114d547cc3011d875ecfbea2b80c48e4ae22b --- /dev/null +++ b/assets/audio-DDkm4nFt.js @@ -0,0 +1 @@ +import{d7 as e,dH as t,dK as n,db as r,dj as i}from"./index-C9kcCpP-.js";var a=e({__name:`audio`,setup(e){let a=n(),o=n();function s(e){if(!e)return;let t=o.value?.files?.[0];if(!t)return;let n=document.createElement(`audio`);a.value?.appendChild(n),n.src=URL.createObjectURL(t),n.controls=!0,n.load(),n.play()}return(e,n)=>(t(),r(`div`,null,[i(`div`,null,[i(`div`,{ref_key:`containerRef`,ref:a},null,512),i(`input`,{ref_key:`fileInputRef`,ref:o,type:`file`,onChange:s},null,544)])]))}}),o=a;export{o as default}; \ No newline at end of file diff --git a/assets/audio-record-BxHzK1uy.js b/assets/audio-record-BxHzK1uy.js deleted file mode 100644 index f1795cb7cb6d07e8cd64b13868b6ad3415a663f3..0000000000000000000000000000000000000000 --- a/assets/audio-record-BxHzK1uy.js +++ /dev/null @@ -1 +0,0 @@ -import{Button_default as e,Fragment as t,Option_default as n,Select_default as r,computed as i,createBaseVNode as a,createBlock as o,createElementBlock as s,createTextVNode as c,createVNode as l,defineComponent as u,isRef as d,onMounted as f,onUnmounted as p,openBlock as m,ref as h,renderList as g,toDisplayString as _,toRef as v,unref as y,until as b,useDevicesList as x,useUserMedia as S,watch as C,withCtx as w}from"./index-iQVr9nx1.js";function T(){var e;let t=x({constraints:{audio:!0},requestPermissions:!1}),n=h((e=t.audioInputs.value[0])?.deviceId||``),r=h(),a=i(()=>t.audioInputs.value),o=h({audio:!0}),s=S({constraints:o,autoSwitch:!0,enabled:!1});async function c(){t.permissionGranted.value||t.isSupported.value&&await t.ensurePermissions()}C(n,()=>{n.value&&(o.value={audio:{deviceId:{exact:n.value}}})},{immediate:!0}),C(t.audioInputs,()=>{r.value=a.value.find(e=>e.deviceId===n.value)},{immediate:!0}),C([t.permissionGranted,a,n],async()=>{await c(),t.permissionGranted.value&&a.value.length!==0&&(r.value||=a.value[0])},{immediate:!0});async function l(){await c(),t.permissionGranted.value&&r.value&&(s.enabled.value&&s.restart(),s.start())}function u(){s.stop()}return{selectedAudioInputId:n,selectedAudioInput:r,audioInputs:a,start:l,stop:u,request:c,media:s}}function E(e,t=()=>Promise.resolve()){let n=h(),r=v(e);async function i(){if(await t(),await b(r).toBeTruthy(),!r.value){console.error(`No media media available`);return}n.value=new MediaRecorder(r.value),n.value.start()}function a(){n.value&&(n.value.stop(),n.value.ondataavailable=e=>{let t=e.data,n=URL.createObjectURL(t),r=new Audio(n);r.play()})}return{startRecord:i,stopRecord:a}}const D={class:`mt-4 w-full flex justify-center gap-2`};var O=u({__name:`audio-record`,setup(i){let{audioInputs:u,selectedAudioInputId:h,start:v,stop:b,media:x,request:S}=T(),{startRecord:C,stopRecord:O}=E(x.stream,v);return f(()=>S()),p(()=>b()),(i,f)=>(m(),s(`div`,null,[l(y(r),{modelValue:y(h),"onUpdate:modelValue":f[0]||=e=>d(h)?h.value=e:null,onChange:f[1]||=()=>y(v)()},{default:w(({value:e})=>{var t;return[a(`div`,null,_(e?(t=y(u).find(t=>t.deviceId===e))?.label:`Select Audio Input`),1)]}),options:w(({hide:e})=>[(m(!0),s(t,null,g(y(u),t=>(m(),o(y(n),{key:t.deviceId,value:t.deviceId,active:t.deviceId===y(h),onClick:t=>e()},{default:w(()=>[c(_(t.label),1)]),_:2},1032,[`value`,`active`,`onClick`]))),128))]),_:1},8,[`modelValue`]),a(`div`,D,[l(y(e),{onClick:y(C)},{default:w(()=>f[2]||=[c(` Start Recording `)]),_:1,__:[2]},8,[`onClick`]),l(y(e),{onClick:y(O)},{default:w(()=>f[3]||=[c(` Stop Recording `)]),_:1,__:[3]},8,[`onClick`])])]))}}),k=O;export{k as default}; \ No newline at end of file diff --git a/assets/audio-record-C0pKTMd6.js b/assets/audio-record-C0pKTMd6.js new file mode 100644 index 0000000000000000000000000000000000000000..20ba865444f02f0d1bc039c6f10c37843c77db81 --- /dev/null +++ b/assets/audio-record-C0pKTMd6.js @@ -0,0 +1 @@ +import{W as e,a3 as t,a4 as n,aO as r,aY as i,aZ as a,d$ as o,d3 as s,d7 as c,dB as l,dF as u,dH as d,dI as f,dJ as p,dK as m,dV as h,da as g,db as _,df as v,dj as y,dl as b,dn as x,du as S,dv as C,e1 as w}from"./index-C9kcCpP-.js";function T(){let e=r({constraints:{audio:!0},requestPermissions:!1}),t=m(e.audioInputs.value[0]?.deviceId||``),n=m(),a=C(()=>e.audioInputs.value),o=m({audio:!0}),s=i({constraints:o,autoSwitch:!0,enabled:!1});async function c(){e.permissionGranted.value||e.isSupported.value&&await e.ensurePermissions()}u(t,()=>{t.value&&(o.value={audio:{deviceId:{exact:t.value}}})},{immediate:!0}),u(e.audioInputs,()=>{n.value=a.value.find(e=>e.deviceId===t.value)},{immediate:!0}),u([e.permissionGranted,a,t],async()=>{await c(),e.permissionGranted.value&&a.value.length!==0&&(n.value||=a.value[0])},{immediate:!0});async function l(){await c(),e.permissionGranted.value&&n.value&&(s.enabled.value&&s.restart(),s.start())}function d(){s.stop()}return{selectedAudioInputId:t,selectedAudioInput:n,audioInputs:a,start:l,stop:d,request:c,media:s}}function E(e,t=()=>Promise.resolve()){let n=m(),r=p(e);async function i(){if(await t(),await a(r).toBeTruthy(),!r.value){console.error(`No media media available`);return}n.value=new MediaRecorder(r.value),n.value.start()}function o(){n.value&&(n.value.stop(),n.value.ondataavailable=e=>{let t=e.data,n=URL.createObjectURL(t),r=new Audio(n);r.play()})}return{startRecord:i,stopRecord:o}}const D={class:`mt-4 w-full flex justify-center gap-2`};var O=c({__name:`audio-record`,setup(r){let{audioInputs:i,selectedAudioInputId:a,start:c,stop:u,media:p,request:m}=T(),{startRecord:C,stopRecord:O}=E(p.stream,c);return s(()=>m()),v(()=>u()),(r,s)=>(d(),_(`div`,null,[l(h(t),{modelValue:h(a),"onUpdate:modelValue":s[0]||=e=>o(a)?a.value=e:null,onChange:s[1]||=()=>h(c)()},{default:g(({value:e})=>[y(`div`,null,w(e?h(i).find(t=>t.deviceId===e)?.label:`Select Audio Input`),1)]),options:g(({hide:e})=>[(d(!0),_(S,null,b(h(i),t=>(d(),x(h(n),{key:t.deviceId,value:t.deviceId,active:t.deviceId===h(a),onClick:t=>e()},{default:g(()=>[f(w(t.label),1)]),_:2},1032,[`value`,`active`,`onClick`]))),128))]),_:1},8,[`modelValue`]),y(`div`,D,[l(h(e),{onClick:h(C)},{default:g(()=>s[2]||=[f(` Start Recording `)]),_:1,__:[2]},8,[`onClick`]),l(h(e),{onClick:h(O)},{default:g(()=>s[3]||=[f(` Stop Recording `)]),_:1,__:[3]},8,[`onClick`])])]))}}),k=O;export{k as default}; \ No newline at end of file diff --git a/assets/background-remove-BCwtw-uq.js b/assets/background-remove-BCwtw-uq.js deleted file mode 100644 index 0e621da711361318c637b8934614e5081b6697ac..0000000000000000000000000000000000000000 --- a/assets/background-remove-BCwtw-uq.js +++ /dev/null @@ -1 +0,0 @@ -import{InputFile_default as e}from"./InputFile-BJcnvuYo.js";import{Fragment as t,check as n,computed as r,createBaseVNode as i,createCommentVNode as a,createElementBlock as o,createVNode as s,defineComponent as c,normalizeStyle as l,onMounted as u,openBlock as d,ref as f,renderList as p,toDisplayString as m,unref as h}from"./index-iQVr9nx1.js";import{__webpack_exports__AutoModel as g,__webpack_exports__AutoProcessor as _,__webpack_exports__RawImage as v,__webpack_exports__env as y}from"./transformers.web-CZcwiFXx.js";const b={flex:``,"flex-col":``,"items-center":``,"gap-4":``},x=[`disabled`],S={"h-full":``,"w-full":``,flex:``,"gap-2":``},C={w:`[50%]`,border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"min-h":`120`,h:`auto`,"overflow-hidden":``,"rounded-lg":``},w=[`src`],T={w:`[50%]`,border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"min-h":`120`,h:`auto`,relative:``,"overflow-hidden":``,"rounded-lg":``},E={key:0,bg:`black/50`,absolute:``,"inset-0":``,"z-10":``,flex:``,"flex-col":``,"items-center":``,"justify-center":``},D={"mb-4":``,"text-white":``,"font-medium":``},O={bg:`gray-200/30`,w:`70%`,"h-2":``,"overflow-hidden":``,"rounded-full":``},k=[`src`],A={bg:`black/0 group-hover:black/20`,absolute:``,"inset-0":``,flex:``,"items-center":``,"justify-center":``,"transition-all":``,"duration-200":``},j=[`onClick`],M={key:1,absolute:``,"bottom-2":``,"right-2":``};var N=c({__name:`background-remove`,setup(c){let N=f(),P=f(),F=f(),I=f(),L=f(!1),R=f(0),z=f(),B=f(),V=f([]),H=r(()=>V.value.map(e=>URL.createObjectURL(e)));u(async()=>{try{if(!(await n()).supported)throw Error(`WebGPU is not supported in this browser.`);let e=`Xenova/modnet`;y.backends.onnx.wasm.proxy=!1,N.value??=await g.from_pretrained(e,{device:`webgpu`}),P.value??=await _.from_pretrained(e,{})}catch(e){F.value=e}I.value=!1});async function U(){if(!N.value||!P.value)return;L.value=!0,R.value=0,z.value=[];let e=H.value.length;for(let t=0;t=z.value.length||!V.value[e])return;let t=V.value[e].name,n=t.substring(0,t.lastIndexOf(`.`))||t,r=t.substring(t.lastIndexOf(`.`))||`.png`,i=`${n}-background-removed${r}`,a=document.createElement(`a`);a.href=z.value[e],a.download=i,document.body.appendChild(a),a.click(),document.body.removeChild(a)}function G(){!z.value||z.value.length===0||z.value.forEach((e,t)=>{setTimeout(()=>W(t),t*100)})}return(n,r)=>(d(),o(`div`,b,[i(`button`,{bg:`neutral-100 dark:neutral-800`,"w-full":``,"cursor-pointer":``,"rounded-lg":``,"px-3":``,"py-2":``,disabled:L.value,onClick:U},m(L.value?`Processing...`:`Process`),9,x),i(`div`,S,[i(`div`,C,[(d(!0),o(t,null,p(H.value,(e,t)=>(d(),o(`img`,{key:t,src:e,"h-full":``,"w-full":``,"object-cover":``},null,8,w))),128))]),i(`div`,T,[L.value?(d(),o(`div`,E,[i(`div`,D,m(R.value)+`% `,1),i(`div`,O,[i(`div`,{bg:`emerald-500`,"h-full":``,style:l({width:`${R.value}%`}),"transition-all":``,"duration-200":``},null,4)])])):a(``,!0),(d(!0),o(t,null,p(z.value,(e,t)=>(d(),o(`div`,{key:t,relative:``,class:`group`,"h-full":``,"w-full":``},[i(`img`,{src:e,"h-full":``,"w-full":``,"object-cover":``},null,8,k),i(`div`,A,[i(`button`,{bg:`emerald-500 hover:emerald-600`,"rounded-full":``,"p-2":``,"text-white":``,"opacity-0":``,"transition-all":``,"duration-200":``,"group-hover:opacity-100":``,onClick:e=>W(t)},r[1]||=[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,class:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`},[i(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4`})],-1)],8,j)])]))),128)),z.value&&z.value.length>1?(d(),o(`div`,M,[i(`button`,{bg:`emerald-500 hover:emerald-600`,"rounded-full":``,"p-2":``,"text-white":``,onClick:G},r[2]||=[i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,class:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`},[i(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12`})],-1)])])):a(``,!0)])]),s(h(e),{modelValue:V.value,"onUpdate:modelValue":r[0]||=e=>V.value=e,"w-full":``},null,8,[`modelValue`])]))}}),P=N;export{P as default}; \ No newline at end of file diff --git a/assets/background-remove-GD_OBr4Y.js b/assets/background-remove-GD_OBr4Y.js new file mode 100644 index 0000000000000000000000000000000000000000..cd4bfa1c30698283931a466ef6e95073d5c7a31c --- /dev/null +++ b/assets/background-remove-GD_OBr4Y.js @@ -0,0 +1 @@ +import{b as e}from"./InputFile-B-1kiNIu.js";import{d3 as t,d7 as n,d9 as r,dB as i,dH as a,dK as o,dV as s,db as c,dj as l,dl as u,du as d,dv as f,e1 as p,e3 as m,j as h}from"./index-C9kcCpP-.js";import{b as g,d as _,e as v,f as y}from"./transformers.web-BihMDlzQ.js";const b={flex:``,"flex-col":``,"items-center":``,"gap-4":``},x=[`disabled`],S={"h-full":``,"w-full":``,flex:``,"gap-2":``},C={w:`[50%]`,border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"min-h":`120`,h:`auto`,"overflow-hidden":``,"rounded-lg":``},w=[`src`],T={w:`[50%]`,border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"min-h":`120`,h:`auto`,relative:``,"overflow-hidden":``,"rounded-lg":``},E={key:0,bg:`black/50`,absolute:``,"inset-0":``,"z-10":``,flex:``,"flex-col":``,"items-center":``,"justify-center":``},D={"mb-4":``,"text-white":``,"font-medium":``},O={bg:`gray-200/30`,w:`70%`,"h-2":``,"overflow-hidden":``,"rounded-full":``},k=[`src`],A={bg:`black/0 group-hover:black/20`,absolute:``,"inset-0":``,flex:``,"items-center":``,"justify-center":``,"transition-all":``,"duration-200":``},j=[`onClick`],M={key:1,absolute:``,"bottom-2":``,"right-2":``};var N=n({__name:`background-remove`,setup(n){let N=o(),P=o(),F=o(),I=o(),L=o(!1),R=o(0),z=o(),B=o(),V=o([]),H=f(()=>V.value.map(e=>URL.createObjectURL(e)));t(async()=>{try{if(!(await h()).supported)throw Error(`WebGPU is not supported in this browser.`);let e=`Xenova/modnet`;_.backends.onnx.wasm.proxy=!1,N.value??=await y.from_pretrained(e,{device:`webgpu`}),P.value??=await v.from_pretrained(e,{})}catch(e){F.value=e}I.value=!1});async function U(){if(!N.value||!P.value)return;L.value=!0,R.value=0,z.value=[];let e=H.value.length;for(let t=0;t=z.value.length||!V.value[e])return;let t=V.value[e].name,n=t.substring(0,t.lastIndexOf(`.`))||t,r=t.substring(t.lastIndexOf(`.`))||`.png`,i=`${n}-background-removed${r}`,a=document.createElement(`a`);a.href=z.value[e],a.download=i,document.body.appendChild(a),a.click(),document.body.removeChild(a)}function G(){!z.value||z.value.length===0||z.value.forEach((e,t)=>{setTimeout(()=>W(t),t*100)})}return(t,n)=>(a(),c(`div`,b,[l(`button`,{bg:`neutral-100 dark:neutral-800`,"w-full":``,"cursor-pointer":``,"rounded-lg":``,"px-3":``,"py-2":``,disabled:L.value,onClick:U},p(L.value?`Processing...`:`Process`),9,x),l(`div`,S,[l(`div`,C,[(a(!0),c(d,null,u(H.value,(e,t)=>(a(),c(`img`,{key:t,src:e,"h-full":``,"w-full":``,"object-cover":``},null,8,w))),128))]),l(`div`,T,[L.value?(a(),c(`div`,E,[l(`div`,D,p(R.value)+`% `,1),l(`div`,O,[l(`div`,{bg:`emerald-500`,"h-full":``,style:m({width:`${R.value}%`}),"transition-all":``,"duration-200":``},null,4)])])):r(``,!0),(a(!0),c(d,null,u(z.value,(e,t)=>(a(),c(`div`,{key:t,relative:``,class:`group`,"h-full":``,"w-full":``},[l(`img`,{src:e,"h-full":``,"w-full":``,"object-cover":``},null,8,k),l(`div`,A,[l(`button`,{bg:`emerald-500 hover:emerald-600`,"rounded-full":``,"p-2":``,"text-white":``,"opacity-0":``,"transition-all":``,"duration-200":``,"group-hover:opacity-100":``,onClick:e=>W(t)},n[1]||=[l(`svg`,{xmlns:`http://www.w3.org/2000/svg`,class:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`},[l(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4`})],-1)],8,j)])]))),128)),z.value&&z.value.length>1?(a(),c(`div`,M,[l(`button`,{bg:`emerald-500 hover:emerald-600`,"rounded-full":``,"p-2":``,"text-white":``,onClick:G},n[2]||=[l(`svg`,{xmlns:`http://www.w3.org/2000/svg`,class:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`},[l(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12`})],-1)])])):r(``,!0)])]),i(s(e),{modelValue:V.value,"onUpdate:modelValue":n[0]||=e=>V.value=e,"w-full":``},null,8,[`modelValue`])]))}}),P=N;export{P as default}; \ No newline at end of file diff --git a/assets/browser-3IcCfs_4.js b/assets/browser-UfbE_1lV.js similarity index 99% rename from assets/browser-3IcCfs_4.js rename to assets/browser-UfbE_1lV.js index 314eb64a2379587df5913be9fb270d0717dd9c08..ff5dce0f61ca214fed0c9fb7c3befb4917bc7cad 100644 --- a/assets/browser-3IcCfs_4.js +++ b/assets/browser-UfbE_1lV.js @@ -1 +1 @@ -var e=class{constructor(e,t){this.pixels=e,this.opts=t;let{sigBits:n}=t,r=(e,t,r)=>(e<<2*n)+(t<>=i,m>>=i,h>>=i;let n=r(p,m,h);o[n]===void 0&&(o[n]=0),o[n]+=1,p>s&&(s=p),pl&&(l=m),md&&(d=h),ht>0?e+1:e,0),this.hist=o,this.rmax=s,this.rmin=c,this.gmax=l,this.gmin=u,this.bmax=d,this.bmin=f}get colorCount(){return this._colorCount}},t=class{scaleDown(e){let t=this.getWidth(),n=this.getHeight(),r=1;if(e.maxDimension>0){let i=Math.max(t,n);i>e.maxDimension&&(r=e.maxDimension/i)}else r=1/e.quality;r<1&&this.resize(t*r,n*r,r)}};function n(e,t){var n;if(t.length>0){let r=e.data,i=r.length/4,a,o,s,c,l;for(let e=0;e{let i=()=>{this._initCanvas(),e(this)};t.complete?i():(t.onload=i,t.onerror=e=>r(Error(`Fail to load image: ${n}`)))})}clear(){this._getContext().clearRect(0,0,this._getWidth(),this._getHeight())}update(e){this._getContext().putImageData(e,0,0)}getWidth(){return this._getWidth()}getHeight(){return this._getHeight()}resize(e,t,n){if(!this.image)throw Error(`Image is not initialized`);this._width=this._getCanvas().width=e,this._height=this._getCanvas().height=t,this._getContext().scale(n,n),this._getContext().drawImage(this.image,0,0)}getPixelCount(){return this._getWidth()*this._getHeight()}getImageData(){return this._getContext().getImageData(0,0,this._getWidth(),this._getHeight())}remove(){this._canvas&&this._canvas.parentNode&&this._canvas.parentNode.removeChild(this._canvas)}};function o(e,...t){return t.forEach(t=>{if(t){for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];Array.isArray(r)?e[n]=r.slice(0):typeof r==`object`?(e[n]||(e[n]={}),o(e[n],r)):e[n]=r}}}),e}function s(e,t){let{colorCount:n,quantizer:r,generators:i,filters:a}=e,s={colorCount:n},c=typeof r==`string`?{name:r,options:{}}:r;return c.options=o({},s,c.options),o({},{quantizer:c,generators:i,filters:a},t)}var c=class{constructor(e,t={}){this._src=e,this._opts=o({},g.DefaultOpts,t)}maxColorCount(e){return this._opts.colorCount=e,this}maxDimension(e){return this._opts.maxDimension=e,this}addFilter(e){return this._opts.filters?this._opts.filters.push(e):this._opts.filters=[e],this}removeFilter(e){if(this._opts.filters){let t=this._opts.filters.indexOf(e);t>0&&this._opts.filters.splice(t)}return this}clearFilters(){return this._opts.filters=[],this}quality(e){return this._opts.quality=e,this}useImageClass(e){return this._opts.ImageClass=e,this}useGenerator(e,t){return this._opts.generators||(this._opts.generators=[]),this._opts.generators.push(t?{name:e,options:t}:e),this}useQuantizer(e,t){return this._opts.quantizer=t?{name:e,options:t}:e,this}build(){return new g(this._src,this._opts)}getPalette(){return this.build().getPalette()}},l=class{constructor(e){this.pipeline=e,this._map={}}names(){return Object.keys(this._map)}has(e){return!!this._map[e]}get(e){return this._map[e]}register(e,t){return this._map[e]=t,this.pipeline}},u=class{constructor(){this.filter=new l(this),this.quantizer=new l(this),this.generator=new l(this)}_buildProcessTasks({filters:e,quantizer:t,generators:n}){return n.length===1&&n[0]===`*`&&(n=this.generator.names()),{filters:e.map(e=>r(this.filter,e)),quantizer:r(this.quantizer,t),generators:n.map(e=>r(this.generator,e))};function r(e,t){let n,r;return typeof t==`string`?n=t:(n=t.name,r=t.options),{name:n,fn:e.get(n),options:r}}}async process(e,t){let{filters:n,quantizer:r,generators:i}=this._buildProcessTasks(t),a=await this._filterColors(n,e),o=await this._generateColors(r,a),s=await this._generatePalettes(i,o);return{colors:o,palettes:s}}_filterColors(e,t){return Promise.resolve(n(t,e.map(({fn:e})=>e)))}_generateColors(e,t){return Promise.resolve(e.fn(t.data,e.options))}async _generatePalettes(e,t){let n=await Promise.all(e.map(({fn:e,options:n})=>Promise.resolve(e(t,n))));return Promise.resolve(n.reduce((t,n,r)=>(t[e[r].name]=n,t),{}))}};function d(e,t,n){return`#`+((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1,7)}function f(e,t,n){e/=255,t/=255,n/=255;let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=0,s=(r+i)/2;if(r!==i){let c=r-i;switch(o=s>.5?c/(2-r-i):c/(r+i),r){case e:a=(t-n)/c+(t1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(t===0)r=i=a=n;else{let s=n<.5?n*(1+t):n+t-n*t,c=2*n-s;r=o(c,s,e+1/3),i=o(c,s,e),a=o(c,s,e-1/3)}return[r*255,i*255,a*255]}var m=class e{static applyFilters(e,t){return t.length>0?e.filter(({r:e,g:n,b:r})=>{var i;for(let a=0;a>=v,n>>=v,r>>=v,t>=i&&t<=a&&n>=o&&n<=s&&r>=c&&r<=l}split(){let{hist:e,getColorIndex:t}=this.histogram,{r1:n,r2:r,g1:i,g2:a,b1:o,b2:s}=this.dimension,c=this.count();if(!c)return[];if(c===1)return[this.clone()];let l=r-n+1,u=a-i+1,d=s-o+1,f=Math.max(l,u,d),p=null,m,h;m=h=0;let g=null;if(f===l){g=`r`,p=new Uint32Array(r+1);for(let c=n;c<=r;c++){m=0;for(let n=i;n<=a;n++)for(let r=o;r<=s;r++){let i=t(c,n,r);e[i]&&(m+=e[i])}h+=m,p[c]=h}}else if(f===u){g=`g`,p=new Uint32Array(a+1);for(let c=i;c<=a;c++){m=0;for(let i=n;i<=r;i++)for(let n=o;n<=s;n++){let r=t(i,c,n);e[r]&&(m+=e[r])}h+=m,p[c]=h}}else{g=`b`,p=new Uint32Array(s+1);for(let c=o;c<=s;c++){m=0;for(let o=n;o<=r;o++)for(let n=i;n<=a;n++){let r=t(o,n,c);e[r]&&(m+=e[r])}h+=m,p[c]=h}}let _=-1,v=new Uint32Array(p.length);for(let e=0;eh/2&&(_=e),v[e]=h-t)}let y=this;function b(e){let t=e+`1`,n=e+`2`,r=y.dimension[t],i=y.dimension[n],a=y.clone(),o=y.clone(),s=_-r,c=i-_;for(s<=c?(i=Math.min(i-1,~~(_+c/2)),i=Math.max(0,i)):(i=Math.max(r,~~(_-1-s/2)),i=Math.min(y.dimension[n],i));!p[i];)i++;let l=v[i];for(;!l&&p[i-1];)l=v[--i];return a.dimension[n]=i,o.dimension[t]=i+1,[a,o]}return b(g)}},b=class{_sort(){this._sorted||(this.contents.sort(this._comparator),this._sorted=!0)}constructor(e){this._comparator=e,this.contents=[],this._sorted=!1}push(e){this.contents.push(e),this._sorted=!1}peek(e){return this._sort(),e=typeof e==`number`?e:this.contents.length-1,this.contents[e]}pop(){return this._sort(),this.contents.pop()}size(){return this.contents.length}map(e){return this._sort(),this.contents.map(e)}};const x=.75;function S(e,t){let n=e.size();for(;e.size()0){let[r,i]=t.split();if(!r||(e.push(r),i&&i.count()>0&&e.push(i),e.size()===n))break;n=e.size()}else break}}const C=(e,t)=>{if(e.length===0||t.colorCount<2||t.colorCount>256)throw Error(`Wrong MMCQ parameters`);let n=y.build(e);n.histogram.colorCount;let r=new b((e,t)=>e.count()-t.count());r.push(n),S(r,x*t.colorCount);let i=new b((e,t)=>e.count()*e.volume()-t.count()*t.volume());return i.contents=r.contents,S(i,t.colorCount-i.size()),w(i)};function w(e){let t=[];for(;e.size();){let n=e.pop(),r=n.avg();t.push(new m(r,n.count()))}return t}const T={targetDarkLuma:.26,maxDarkLuma:.45,minLightLuma:.55,targetLightLuma:.74,minNormalLuma:.3,targetNormalLuma:.5,maxNormalLuma:.7,targetMutesSaturation:.3,maxMutesSaturation:.4,targetVibrantSaturation:1,minVibrantSaturation:.35,weightSaturation:3,weightLuma:6.5,weightPopulation:.5};function E(e){let t=0;return e.forEach(e=>{t=Math.max(t,e.population)}),t}function D(e,t){return e.Vibrant===t||e.DarkVibrant===t||e.LightVibrant===t||e.Muted===t||e.DarkMuted===t||e.LightMuted===t}function O(e,t,n,r,i,a,o){function s(...e){let t=0,n=0;for(let r=0;r{let[,f,p]=t.hsl;if(f>=s&&f<=c&&p>=i&&p<=a&&!D(e,t)){let e=O(f,o,p,r,t.population,n,l);(u===null||e>d)&&(u=t,d=e)}}),u}function A(e,t,n){let r={Vibrant:null,DarkVibrant:null,LightVibrant:null,Muted:null,DarkMuted:null,LightMuted:null};return r.Vibrant=k(r,e,t,n.targetNormalLuma,n.minNormalLuma,n.maxNormalLuma,n.targetVibrantSaturation,n.minVibrantSaturation,1,n),r.LightVibrant=k(r,e,t,n.targetLightLuma,n.minLightLuma,1,n.targetVibrantSaturation,n.minVibrantSaturation,1,n),r.DarkVibrant=k(r,e,t,n.targetDarkLuma,0,n.maxDarkLuma,n.targetVibrantSaturation,n.minVibrantSaturation,1,n),r.Muted=k(r,e,t,n.targetNormalLuma,n.minNormalLuma,n.maxNormalLuma,n.targetMutesSaturation,0,n.maxMutesSaturation,n),r.LightMuted=k(r,e,t,n.targetLightLuma,n.minLightLuma,1,n.targetMutesSaturation,0,n.maxMutesSaturation,n),r.DarkMuted=k(r,e,t,n.targetDarkLuma,0,n.maxDarkLuma,n.targetMutesSaturation,0,n.maxMutesSaturation,n),r}function j(e,t,n){if(!e.Vibrant&&!e.DarkVibrant&&!e.LightVibrant){if(!e.DarkVibrant&&e.DarkMuted){let[t,r,i]=e.DarkMuted.hsl;i=n.targetDarkLuma,e.DarkVibrant=new m(p(t,r,i),0)}if(!e.LightVibrant&&e.LightMuted){let[t,r,i]=e.LightMuted.hsl;i=n.targetDarkLuma,e.DarkVibrant=new m(p(t,r,i),0)}}if(!e.Vibrant&&e.DarkVibrant){let[t,r,i]=e.DarkVibrant.hsl;i=n.targetNormalLuma,e.Vibrant=new m(p(t,r,i),0)}else if(!e.Vibrant&&e.LightVibrant){let[t,r,i]=e.LightVibrant.hsl;i=n.targetNormalLuma,e.Vibrant=new m(p(t,r,i),0)}if(!e.DarkVibrant&&e.Vibrant){let[t,r,i]=e.Vibrant.hsl;i=n.targetDarkLuma,e.DarkVibrant=new m(p(t,r,i),0)}if(!e.LightVibrant&&e.Vibrant){let[t,r,i]=e.Vibrant.hsl;i=n.targetLightLuma,e.LightVibrant=new m(p(t,r,i),0)}if(!e.Muted&&e.Vibrant){let[t,r,i]=e.Vibrant.hsl;i=n.targetMutesSaturation,e.Muted=new m(p(t,r,i),0)}if(!e.DarkMuted&&e.DarkVibrant){let[t,r,i]=e.DarkVibrant.hsl;i=n.targetMutesSaturation,e.DarkMuted=new m(p(t,r,i),0)}if(!e.LightMuted&&e.LightVibrant){let[t,r,i]=e.LightVibrant.hsl;i=n.targetMutesSaturation,e.LightMuted=new m(p(t,r,i),0)}}const M=(e,t)=>{t=Object.assign({},T,t);let n=E(e),r=A(e,n,t);return j(r,n,t),r},N=new u().filter.register(`default`,(e,t,n,r)=>r>=125&&!(e>250&&t>250&&n>250)).quantizer.register(`mmcq`,C).generator.register(`default`,M);g.use(N);export{g as Vibrant}; \ No newline at end of file +var e=class{constructor(e,t){this.pixels=e,this.opts=t;let{sigBits:n}=t,r=(e,t,r)=>(e<<2*n)+(t<>=i,m>>=i,h>>=i;let n=r(p,m,h);o[n]===void 0&&(o[n]=0),o[n]+=1,p>s&&(s=p),pl&&(l=m),md&&(d=h),ht>0?e+1:e,0),this.hist=o,this.rmax=s,this.rmin=c,this.gmax=l,this.gmin=u,this.bmax=d,this.bmin=f}get colorCount(){return this._colorCount}},t=class{scaleDown(e){let t=this.getWidth(),n=this.getHeight(),r=1;if(e.maxDimension>0){let i=Math.max(t,n);i>e.maxDimension&&(r=e.maxDimension/i)}else r=1/e.quality;r<1&&this.resize(t*r,n*r,r)}};function n(e,t){var n;if(t.length>0){let r=e.data,i=r.length/4,a,o,s,c,l;for(let e=0;e{let i=()=>{this._initCanvas(),e(this)};t.complete?i():(t.onload=i,t.onerror=e=>r(Error(`Fail to load image: ${n}`)))})}clear(){this._getContext().clearRect(0,0,this._getWidth(),this._getHeight())}update(e){this._getContext().putImageData(e,0,0)}getWidth(){return this._getWidth()}getHeight(){return this._getHeight()}resize(e,t,n){if(!this.image)throw Error(`Image is not initialized`);this._width=this._getCanvas().width=e,this._height=this._getCanvas().height=t,this._getContext().scale(n,n),this._getContext().drawImage(this.image,0,0)}getPixelCount(){return this._getWidth()*this._getHeight()}getImageData(){return this._getContext().getImageData(0,0,this._getWidth(),this._getHeight())}remove(){this._canvas&&this._canvas.parentNode&&this._canvas.parentNode.removeChild(this._canvas)}};function o(e,...t){return t.forEach(t=>{if(t){for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];Array.isArray(r)?e[n]=r.slice(0):typeof r==`object`?(e[n]||(e[n]={}),o(e[n],r)):e[n]=r}}}),e}function s(e,t){let{colorCount:n,quantizer:r,generators:i,filters:a}=e,s={colorCount:n},c=typeof r==`string`?{name:r,options:{}}:r;return c.options=o({},s,c.options),o({},{quantizer:c,generators:i,filters:a},t)}var c=class{constructor(e,t={}){this._src=e,this._opts=o({},g.DefaultOpts,t)}maxColorCount(e){return this._opts.colorCount=e,this}maxDimension(e){return this._opts.maxDimension=e,this}addFilter(e){return this._opts.filters?this._opts.filters.push(e):this._opts.filters=[e],this}removeFilter(e){if(this._opts.filters){let t=this._opts.filters.indexOf(e);t>0&&this._opts.filters.splice(t)}return this}clearFilters(){return this._opts.filters=[],this}quality(e){return this._opts.quality=e,this}useImageClass(e){return this._opts.ImageClass=e,this}useGenerator(e,t){return this._opts.generators||(this._opts.generators=[]),this._opts.generators.push(t?{name:e,options:t}:e),this}useQuantizer(e,t){return this._opts.quantizer=t?{name:e,options:t}:e,this}build(){return new g(this._src,this._opts)}getPalette(){return this.build().getPalette()}},l=class{constructor(e){this.pipeline=e,this._map={}}names(){return Object.keys(this._map)}has(e){return!!this._map[e]}get(e){return this._map[e]}register(e,t){return this._map[e]=t,this.pipeline}},u=class{constructor(){this.filter=new l(this),this.quantizer=new l(this),this.generator=new l(this)}_buildProcessTasks({filters:e,quantizer:t,generators:n}){return n.length===1&&n[0]===`*`&&(n=this.generator.names()),{filters:e.map(e=>r(this.filter,e)),quantizer:r(this.quantizer,t),generators:n.map(e=>r(this.generator,e))};function r(e,t){let n,r;return typeof t==`string`?n=t:(n=t.name,r=t.options),{name:n,fn:e.get(n),options:r}}}async process(e,t){let{filters:n,quantizer:r,generators:i}=this._buildProcessTasks(t),a=await this._filterColors(n,e),o=await this._generateColors(r,a),s=await this._generatePalettes(i,o);return{colors:o,palettes:s}}_filterColors(e,t){return Promise.resolve(n(t,e.map(({fn:e})=>e)))}_generateColors(e,t){return Promise.resolve(e.fn(t.data,e.options))}async _generatePalettes(e,t){let n=await Promise.all(e.map(({fn:e,options:n})=>Promise.resolve(e(t,n))));return Promise.resolve(n.reduce((t,n,r)=>(t[e[r].name]=n,t),{}))}};function d(e,t,n){return`#`+((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1,7)}function f(e,t,n){e/=255,t/=255,n/=255;let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=0,s=(r+i)/2;if(r!==i){let c=r-i;switch(o=s>.5?c/(2-r-i):c/(r+i),r){case e:a=(t-n)/c+(t1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(t===0)r=i=a=n;else{let s=n<.5?n*(1+t):n+t-n*t,c=2*n-s;r=o(c,s,e+1/3),i=o(c,s,e),a=o(c,s,e-1/3)}return[r*255,i*255,a*255]}var m=class e{static applyFilters(e,t){return t.length>0?e.filter(({r:e,g:n,b:r})=>{var i;for(let a=0;a>=v,n>>=v,r>>=v,t>=i&&t<=a&&n>=o&&n<=s&&r>=c&&r<=l}split(){let{hist:e,getColorIndex:t}=this.histogram,{r1:n,r2:r,g1:i,g2:a,b1:o,b2:s}=this.dimension,c=this.count();if(!c)return[];if(c===1)return[this.clone()];let l=r-n+1,u=a-i+1,d=s-o+1,f=Math.max(l,u,d),p=null,m,h;m=h=0;let g=null;if(f===l){g=`r`,p=new Uint32Array(r+1);for(let c=n;c<=r;c++){m=0;for(let n=i;n<=a;n++)for(let r=o;r<=s;r++){let i=t(c,n,r);e[i]&&(m+=e[i])}h+=m,p[c]=h}}else if(f===u){g=`g`,p=new Uint32Array(a+1);for(let c=i;c<=a;c++){m=0;for(let i=n;i<=r;i++)for(let n=o;n<=s;n++){let r=t(i,c,n);e[r]&&(m+=e[r])}h+=m,p[c]=h}}else{g=`b`,p=new Uint32Array(s+1);for(let c=o;c<=s;c++){m=0;for(let o=n;o<=r;o++)for(let n=i;n<=a;n++){let r=t(o,n,c);e[r]&&(m+=e[r])}h+=m,p[c]=h}}let _=-1,v=new Uint32Array(p.length);for(let e=0;eh/2&&(_=e),v[e]=h-t)}let y=this;function b(e){let t=e+`1`,n=e+`2`,r=y.dimension[t],i=y.dimension[n],a=y.clone(),o=y.clone(),s=_-r,c=i-_;for(s<=c?(i=Math.min(i-1,~~(_+c/2)),i=Math.max(0,i)):(i=Math.max(r,~~(_-1-s/2)),i=Math.min(y.dimension[n],i));!p[i];)i++;let l=v[i];for(;!l&&p[i-1];)l=v[--i];return a.dimension[n]=i,o.dimension[t]=i+1,[a,o]}return b(g)}},b=class{_sort(){this._sorted||(this.contents.sort(this._comparator),this._sorted=!0)}constructor(e){this._comparator=e,this.contents=[],this._sorted=!1}push(e){this.contents.push(e),this._sorted=!1}peek(e){return this._sort(),e=typeof e==`number`?e:this.contents.length-1,this.contents[e]}pop(){return this._sort(),this.contents.pop()}size(){return this.contents.length}map(e){return this._sort(),this.contents.map(e)}};const x=.75;function S(e,t){let n=e.size();for(;e.size()0){let[r,i]=t.split();if(!r||(e.push(r),i&&i.count()>0&&e.push(i),e.size()===n))break;n=e.size()}else break}}const C=(e,t)=>{if(e.length===0||t.colorCount<2||t.colorCount>256)throw Error(`Wrong MMCQ parameters`);let n=y.build(e);n.histogram.colorCount;let r=new b((e,t)=>e.count()-t.count());r.push(n),S(r,x*t.colorCount);let i=new b((e,t)=>e.count()*e.volume()-t.count()*t.volume());return i.contents=r.contents,S(i,t.colorCount-i.size()),w(i)};function w(e){let t=[];for(;e.size();){let n=e.pop(),r=n.avg();t.push(new m(r,n.count()))}return t}const T={targetDarkLuma:.26,maxDarkLuma:.45,minLightLuma:.55,targetLightLuma:.74,minNormalLuma:.3,targetNormalLuma:.5,maxNormalLuma:.7,targetMutesSaturation:.3,maxMutesSaturation:.4,targetVibrantSaturation:1,minVibrantSaturation:.35,weightSaturation:3,weightLuma:6.5,weightPopulation:.5};function E(e){let t=0;return e.forEach(e=>{t=Math.max(t,e.population)}),t}function D(e,t){return e.Vibrant===t||e.DarkVibrant===t||e.LightVibrant===t||e.Muted===t||e.DarkMuted===t||e.LightMuted===t}function O(e,t,n,r,i,a,o){function s(...e){let t=0,n=0;for(let r=0;r{let[,f,p]=t.hsl;if(f>=s&&f<=c&&p>=i&&p<=a&&!D(e,t)){let e=O(f,o,p,r,t.population,n,l);(u===null||e>d)&&(u=t,d=e)}}),u}function A(e,t,n){let r={Vibrant:null,DarkVibrant:null,LightVibrant:null,Muted:null,DarkMuted:null,LightMuted:null};return r.Vibrant=k(r,e,t,n.targetNormalLuma,n.minNormalLuma,n.maxNormalLuma,n.targetVibrantSaturation,n.minVibrantSaturation,1,n),r.LightVibrant=k(r,e,t,n.targetLightLuma,n.minLightLuma,1,n.targetVibrantSaturation,n.minVibrantSaturation,1,n),r.DarkVibrant=k(r,e,t,n.targetDarkLuma,0,n.maxDarkLuma,n.targetVibrantSaturation,n.minVibrantSaturation,1,n),r.Muted=k(r,e,t,n.targetNormalLuma,n.minNormalLuma,n.maxNormalLuma,n.targetMutesSaturation,0,n.maxMutesSaturation,n),r.LightMuted=k(r,e,t,n.targetLightLuma,n.minLightLuma,1,n.targetMutesSaturation,0,n.maxMutesSaturation,n),r.DarkMuted=k(r,e,t,n.targetDarkLuma,0,n.maxDarkLuma,n.targetMutesSaturation,0,n.maxMutesSaturation,n),r}function j(e,t,n){if(!e.Vibrant&&!e.DarkVibrant&&!e.LightVibrant){if(!e.DarkVibrant&&e.DarkMuted){let[t,r,i]=e.DarkMuted.hsl;i=n.targetDarkLuma,e.DarkVibrant=new m(p(t,r,i),0)}if(!e.LightVibrant&&e.LightMuted){let[t,r,i]=e.LightMuted.hsl;i=n.targetDarkLuma,e.DarkVibrant=new m(p(t,r,i),0)}}if(!e.Vibrant&&e.DarkVibrant){let[t,r,i]=e.DarkVibrant.hsl;i=n.targetNormalLuma,e.Vibrant=new m(p(t,r,i),0)}else if(!e.Vibrant&&e.LightVibrant){let[t,r,i]=e.LightVibrant.hsl;i=n.targetNormalLuma,e.Vibrant=new m(p(t,r,i),0)}if(!e.DarkVibrant&&e.Vibrant){let[t,r,i]=e.Vibrant.hsl;i=n.targetDarkLuma,e.DarkVibrant=new m(p(t,r,i),0)}if(!e.LightVibrant&&e.Vibrant){let[t,r,i]=e.Vibrant.hsl;i=n.targetLightLuma,e.LightVibrant=new m(p(t,r,i),0)}if(!e.Muted&&e.Vibrant){let[t,r,i]=e.Vibrant.hsl;i=n.targetMutesSaturation,e.Muted=new m(p(t,r,i),0)}if(!e.DarkMuted&&e.DarkVibrant){let[t,r,i]=e.DarkVibrant.hsl;i=n.targetMutesSaturation,e.DarkMuted=new m(p(t,r,i),0)}if(!e.LightMuted&&e.LightVibrant){let[t,r,i]=e.LightVibrant.hsl;i=n.targetMutesSaturation,e.LightMuted=new m(p(t,r,i),0)}}const M=(e,t)=>{t=Object.assign({},T,t);let n=E(e),r=A(e,n,t);return j(r,n,t),r},N=new u().filter.register(`default`,(e,t,n,r)=>r>=125&&!(e>250&&t>250&&n>250)).quantizer.register(`mmcq`,C).generator.register(`default`,M);g.use(N);export{g as b}; \ No newline at end of file diff --git a/assets/chat-DyBPoQrn.js b/assets/chat-DyBPoQrn.js deleted file mode 100644 index d9cc84497e2c931dbf952734210673ef96215020..0000000000000000000000000000000000000000 --- a/assets/chat-DyBPoQrn.js +++ /dev/null @@ -1,3 +0,0 @@ -var e=function(exports){function t(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function n(e,n,r){return e.set(t(e,n),r),r}function r(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function i(e,t,n){r(e,t),t.set(e,n)}function a(e,n){return e.get(t(e,n))}return exports.classPrivateFieldGet2=a,exports.classPrivateFieldInitSpec=i,exports.classPrivateFieldSet2=n,exports}({});import{Fragment as t,createBaseVNode as n,createCommentVNode as r,createElementBlock as i,defineComponent as a,isRef as o,openBlock as s,ref as c,renderList as l,streamText as u,toDisplayString as d,toRaw as f,unref as p,useLocalStorage as m,vModelText as h,withDirectives as g}from"./index-iQVr9nx1.js";var _,v,y;let b;const x=()=>{let e=null;return{getStore:()=>(e===null&&console.warn("Woops! Looks like you are calling `getContext` after `await fn()`. Please move `getContext` to top level of handler."),e),run(t,n){e=t;try{return n()}finally{e=null}}}},S=new WeakMap,C=new WeakMap;let w=0,T=0;const E=e=>{let t=`${w++}`,n={debugLabel:e?.debugLabel??t,include:e=>r.has(e),with:i=>{let a=`${T++}`,o={[Symbol.toStringTag]:e?.debugLabel??`WorkflowEvent(${t}.${a})`,toString:()=>e?.debugLabel?e.debugLabel:`WorkflowEvent(${t}.${a})`,toJSON:()=>({type:e?.debugLabel?e.debugLabel:t,data:i}),get data(){return i}};return r.add(o),C.set(o,n),o}},r=new WeakSet;S.set(n,r),Object.defineProperty(n,Symbol.toStringTag,{get:()=>n?.debugLabel??`WorkflowEvent<${t}>`}),Object.defineProperty(n,`displayName`,{value:n?.debugLabel??`WorkflowEvent<${t}>`});let i=e?.uniqueId;return Object.defineProperty(n,`uniqueId`,{get:()=>(i||=t,i),set:()=>{throw Error(`uniqueId is readonly`)}}),n.toString=()=>e?.debugLabel??`WorkflowEvent<${t}>`,n},D=e=>typeof e==`object`&&e?S.has(e):!1,O=e=>typeof e==`object`&&e?C.get(e):void 0,k=e=>typeof e==`object`&&!!e&&`data`in e,A=e=>e!=null&&typeof e.then==`function`;function j(e,t){let n=Array(e.length);for(let r of t)for(let t=0;t(e.add(t),()=>{e.delete(t)}),publish:(...t)=>{let n=[];for(let r of e)n.push(r(...t));return n}};return M.set(t,e),t}var F=class extends TransformStream{constructor(){super({transform:(e,t)=>{O(e)&&t.enqueue(JSON.stringify({data:e.data,uniqueId:O(e).uniqueId})+` -`)}})}},I=(_=new WeakMap,class extends TransformStream{constructor(t){super({transform:(t,n)=>{let r=t.split(` -`).map(e=>e.trim()).filter(e=>e.length>0);r.forEach(t=>{let r=JSON.parse(t),i=Object.values(e.classPrivateFieldGet2(_,this)).find(e=>e.uniqueId===r.uniqueId);if(i){let e=i.with(r.data);n.enqueue(e)}else console.warn(`Unknown event: ${r.uniqueId}`)})}}),e.classPrivateFieldInitSpec(this,_,void 0),e.classPrivateFieldSet2(_,this,t)}}),L=(v=new WeakMap,y=new WeakMap,b=Symbol.asyncIterator,class t extends ReadableStream{on(t,n){return e.classPrivateFieldGet2(y,this).subscribe(e=>{t.include(e)&&n(e)})}constructor(t,n){if(!t&&!n)throw TypeError(`Either subscribable or root stream must be provided`);if(super(),e.classPrivateFieldInitSpec(this,v,void 0),e.classPrivateFieldInitSpec(this,y,void 0),t){e.classPrivateFieldSet2(y,this,t);let r;e.classPrivateFieldSet2(v,this,n??new ReadableStream({start:e=>{r=t.subscribe(t=>{e.enqueue(t)})},cancel:()=>{r()}}))}else{e.classPrivateFieldSet2(y,this,P()),e.classPrivateFieldSet2(v,this,n.pipeThrough(new TransformStream({transform:(t,n)=>{e.classPrivateFieldGet2(y,this).publish(t),n.enqueue(t)}})));return}}static fromReadableStream(e){return new t(null,e.pipeThrough(new TransformStream({transform:(e,t)=>{t.enqueue(e)}})))}static fromResponse(e,n){let r=e.body;if(!r)throw Error(`Response body is not readable`);return new t(null,r.pipeThrough(new TextDecoderStream).pipeThrough(new I(n)))}toResponse(t,n=new F){return new Response(e.classPrivateFieldGet2(v,this).pipeThrough(n).pipeThrough(new TextEncoderStream),t)}get locked(){return e.classPrivateFieldGet2(v,this).locked}[b](){return e.classPrivateFieldGet2(v,this)[Symbol.asyncIterator]()}cancel(t){return e.classPrivateFieldGet2(v,this).cancel(t)}getReader(){return e.classPrivateFieldGet2(v,this).getReader()}pipeThrough(n,r){let i=e.classPrivateFieldGet2(v,this).pipeThrough(n,r);return new t(null,i)}pipeTo(t,n){return e.classPrivateFieldGet2(v,this).pipeTo(t,n)}tee(){let[n,r]=e.classPrivateFieldGet2(v,this).tee();return[new t(e.classPrivateFieldGet2(y,this),n),new t(e.classPrivateFieldGet2(y,this),r)]}forEach(t){return e.classPrivateFieldGet2(v,this).pipeTo(new WritableStream({write:e=>{t(e)}}))}map(e){return this.pipeThrough(new TransformStream({transform:(t,n)=>{n.enqueue(e(t))}}))}values(t){return e.classPrivateFieldGet2(v,this).values(t)}take(e){let t=0;return this.pipeThrough(new TransformStream({transform:(n,r)=>{t=e&&r.terminate()}}))}filter(e){return this.pipeThrough(new TransformStream({transform:(t,n)=>{(typeof e==`function`?e(t):D(e)?e.include(t):e===t)&&n.enqueue(t)}}))}until(e){return this.pipeThrough(new TransformStream({transform:(t,n)=>{n.enqueue(t),(typeof e==`function`?e(t):D(e)?e.include(t):e===t)&&n.terminate()}}))}async toArray(){let e=[];return await this.pipeTo(new WritableStream({write:t=>{e.push(t)}})),e}});const R=x();function z(){let e=R.getStore();if(!e)throw Error(`No current context found`);return e}const B=x(),V=new WeakMap,H=({listeners:e})=>{let t=[],n=(e,t,n,r)=>{let c,l={get abortController(){return c||=new AbortController,c},async:`constructor`in e?e.constructor.name===`AsyncFunction`:!1,pending:null,handler:e,inputEvents:t,inputs:n,outputs:[],prev:r,next:new Set,get root(){return o}};l.prev.next.add(l);let u=i(l);B.run(l,()=>{let e=[...new Set([...N(s.__internal__call_context),...N(u.__internal__call_context)])];R.run(u,()=>{let t=0,n=r=>{if(t===e.length){let e;try{e=r.handler(...r.inputs)}catch(e){if(c??a)(c??a).abort(e);else throw console.error(`unhandled error in handler`,e),e}A(e)?(l.async=!0,l.pending=e.then(e=>(k(e)&&u.sendEvent(e),e))):k(e)&&u.sendEvent(e)}let i=e[t];i&&(t++,i(r,n))};n(l)})})},r=r=>{let i=[...t];[...e].filter(([e])=>{let t=j(e,i);return t.length===e.length}).map(([e,a])=>{let o=j(e,i);o.forEach(e=>{t.splice(t.indexOf(e),1)});for(let t of a)n(t,e,o,r)})},i=e=>{let n=null;return{get stream(){if(!n){let t=P();s.__internal__call_send_event.subscribe(n=>{let r=V.get(n);for(;r;){if(r===e){t.publish(n);break}r=r.prev}}),n=new L(t,null)}return n},get signal(){return e.abortController.signal},sendEvent:(...n)=>{n.forEach(n=>{V.set(n,e),e.outputs.push(n),t.push(n),s.__internal__call_send_event.publish(n,e),r(e)})},__internal__call_context:P(),__internal__call_send_event:P()}},a=new AbortController,o={get abortController(){return a||=new AbortController,a},async:!1,pending:null,inputEvents:[],inputs:[],outputs:[],handler:null,prev:null,next:new Set,get root(){return o}},s=i(o);return s},U=()=>{let e={steps:new Map};return{handle:(t,n)=>{if(e.steps.has(t)){let r=e.steps.get(t);r.add(n)}else{let r=new Set;r.add(n),e.steps.set(t,r)}},createContext(){return H({listeners:e.steps})}}};function W(e,t){let n=(...e)=>{let n=t.filter(([t])=>t.every((t,n)=>t.include(e[n]))).map(([e,t])=>t),r=z(),i=r.sendEvent;return(...e)=>{for(let t=0;tt.include(e[n])))return i(...e)}return console.warn(`Invalid input detected [%s]`,e.map(e=>e.data).join(`, `)),i(...e)}};return{...e,strictHandle:(t,n)=>{let r=(...e)=>{let t=z();return n(t.safeSendEvent,...e)};return e.handle(t,r)},createContext(){let t=e.createContext();return t.__internal__call_context.subscribe((e,t)=>{z().safeSendEvent=n(...e.inputs),t(e)}),t}}}async function G(e,t,n){let{stream:r,sendEvent:i}=e.createContext();i(t);let a=(await r.until(n).toArray()).at(-1);if(!a)throw Error(`No output event received`);return a}const K={flex:``,"flex-col":``,"gap-2":``},q={flex:`~ col`,"gap-2":``},J={flex:``,"flex-col":``,"gap-2":``},Y={grid:``,"grid-cols-2":``,"gap-2":``},X={flex:``,"items-center":``,"gap-2":``},Z={flex:``,"items-center":``,"gap-2":``},Q={flex:``,"items-center":``,"gap-2":``},$={key:0},ee={key:1};var te=a({__name:`chat`,setup(e){let a=m(`settings/llm/baseUrl`,`https://openrouter.ai/api/v1/`),_=m(`settings/llm/apiKey`,``),v=m(`settings/llm/model`,`openai/gpt-4o-mini`),y=c(``),b=c([]),x=c({role:`assistant`,content:``}),S=c(!1),C=E(),w=E(),T=E(),D=E(),O=E();async function k(){S.value=!0;try{let e=W(U(),[[[C],[w,O]],[[w],[T]],[[T],[D]]]);e.handle([C],async()=>{let{sendEvent:t}=e.createContext();x.value={role:`assistant`,content:``},b.value.push({role:`user`,content:y.value}),b.value.push(x.value);let n=await u({baseURL:a.value,apiKey:_.value,model:v.value,messages:b.value.slice(0,b.value.length-1).map(e=>f(e))});for await(let e of n.chunkStream)t(w.with(e.choices[0].delta.content||``));return O.with()}),e.handle([w],async e=>{x.value.content?x.value.content+=e.data:x.value.content=e.data}),await G(e,C.with(),O)}catch(e){console.error(e)}finally{S.value=!1}}return(e,c)=>(s(),i(`div`,K,[n(`div`,q,[n(`div`,J,[c[7]||=n(`div`,null,[n(`span`,{"text-neutral-500":``,"dark:text-neutral-400":``},`LLM`)],-1),n(`div`,Y,[n(`label`,X,[c[4]||=n(`span`,{"text-nowrap":``},` Base URL `,-1),g(n(`input`,{"onUpdate:modelValue":c[0]||=e=>o(a)?a.value=e:null,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[h,p(a)]])]),n(`label`,Z,[c[5]||=n(`span`,{"text-nowrap":``},` API Key `,-1),g(n(`input`,{"onUpdate:modelValue":c[1]||=e=>o(_)?_.value=e:null,type:`password`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[h,p(_)]])]),n(`label`,Q,[c[6]||=n(`span`,{"text-nowrap":``},` Model `,-1),g(n(`input`,{"onUpdate:modelValue":c[2]||=e=>o(v)?v.value=e:null,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[h,p(v)]])])])]),n(`div`,null,[g(n(`textarea`,{"onUpdate:modelValue":c[3]||=e=>y.value=e,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[h,y.value]])]),n(`button`,{"rounded-lg":``,bg:`blue-100 dark:blue-900`,"px-4":``,"py-2":``,onClick:k},` Send `),n(`div`,null,[(s(!0),i(t,null,l(b.value,(e,t)=>(s(),i(`div`,{key:t},[e.role===`user`?(s(),i(`div`,$,[n(`span`,null,d(e.content),1)])):r(``,!0),e.role===`assistant`?(s(),i(`div`,ee,[n(`span`,null,d(e.content),1)])):r(``,!0)]))),128))])])]))}}),ne=te;export{ne as default}; \ No newline at end of file diff --git a/assets/chat-OoWKER4B.js b/assets/chat-OoWKER4B.js new file mode 100644 index 0000000000000000000000000000000000000000..d54a8722829bb491fb72e0983333f6535a81573c --- /dev/null +++ b/assets/chat-OoWKER4B.js @@ -0,0 +1,3 @@ +import{aV as e,cZ as t,d$ as n,d7 as r,d9 as i,dH as a,dK as o,dS as s,dV as c,db as l,dj as u,dl as d,dr as f,du as p,e1 as m,n as h}from"./index-C9kcCpP-.js";const g=()=>{let e=null;return{getStore:()=>(e===null&&console.warn("Woops! Looks like you are calling `getContext` after `await fn()`. Please move `getContext` to top level of handler."),e),run(t,n){e=t;try{return n()}finally{e=null}}}},_=new WeakMap,v=new WeakMap;let y=0,b=0;const x=e=>{let t=`${y++}`,n={debugLabel:e?.debugLabel??t,include:e=>r.has(e),with:i=>{let a=`${b++}`,o={[Symbol.toStringTag]:e?.debugLabel??`WorkflowEvent(${t}.${a})`,toString:()=>e?.debugLabel?e.debugLabel:`WorkflowEvent(${t}.${a})`,toJSON:()=>({type:e?.debugLabel?e.debugLabel:t,data:i}),get data(){return i}};return r.add(o),v.set(o,n),o}},r=new WeakSet;_.set(n,r),Object.defineProperty(n,Symbol.toStringTag,{get:()=>n?.debugLabel??`WorkflowEvent<${t}>`}),Object.defineProperty(n,`displayName`,{value:n?.debugLabel??`WorkflowEvent<${t}>`});let i=e?.uniqueId;return Object.defineProperty(n,`uniqueId`,{get:()=>(i||=t,i),set:()=>{throw Error(`uniqueId is readonly`)}}),n.toString=()=>e?.debugLabel??`WorkflowEvent<${t}>`,n},S=e=>typeof e==`object`&&e?_.has(e):!1,C=e=>typeof e==`object`&&e?v.get(e):void 0,w=e=>typeof e==`object`&&!!e&&`data`in e,T=e=>e!=null&&typeof e.then==`function`;function E(e,t){let n=Array(e.length);for(let r of t)for(let t=0;t(e.add(t),()=>{e.delete(t)}),publish:(...t)=>{let n=[];for(let r of e)n.push(r(...t));return n}};return D.set(t,e),t}var A=class extends TransformStream{constructor(){super({transform:(e,t)=>{C(e)&&t.enqueue(JSON.stringify({data:e.data,uniqueId:C(e).uniqueId})+` +`)}})}},j=class extends TransformStream{#eventMap;constructor(e){super({transform:(e,t)=>{let n=e.split(` +`).map(e=>e.trim()).filter(e=>e.length>0);n.forEach(e=>{let n=JSON.parse(e),r=Object.values(this.#eventMap).find(e=>e.uniqueId===n.uniqueId);if(r){let e=r.with(n.data);t.enqueue(e)}else console.warn(`Unknown event: ${n.uniqueId}`)})}}),this.#eventMap=e}},M=class e extends ReadableStream{#stream;#subscribable;on(e,t){return this.#subscribable.subscribe(n=>{e.include(n)&&t(n)})}constructor(e,t){if(!e&&!t)throw TypeError(`Either subscribable or root stream must be provided`);if(super(),e){this.#subscribable=e;let n;this.#stream=t??new ReadableStream({start:t=>{n=e.subscribe(e=>{t.enqueue(e)})},cancel:()=>{n()}})}else{this.#subscribable=k(),this.#stream=t.pipeThrough(new TransformStream({transform:(e,t)=>{this.#subscribable.publish(e),t.enqueue(e)}}));return}}static fromReadableStream(t){return new e(null,t.pipeThrough(new TransformStream({transform:(e,t)=>{t.enqueue(e)}})))}static fromResponse(t,n){let r=t.body;if(!r)throw Error(`Response body is not readable`);return new e(null,r.pipeThrough(new TextDecoderStream).pipeThrough(new j(n)))}toResponse(e,t=new A){return new Response(this.#stream.pipeThrough(t).pipeThrough(new TextEncoderStream),e)}get locked(){return this.#stream.locked}[Symbol.asyncIterator](){return this.#stream[Symbol.asyncIterator]()}cancel(e){return this.#stream.cancel(e)}getReader(){return this.#stream.getReader()}pipeThrough(t,n){let r=this.#stream.pipeThrough(t,n);return new e(null,r)}pipeTo(e,t){return this.#stream.pipeTo(e,t)}tee(){let[t,n]=this.#stream.tee();return[new e(this.#subscribable,t),new e(this.#subscribable,n)]}forEach(e){return this.#stream.pipeTo(new WritableStream({write:t=>{e(t)}}))}map(e){return this.pipeThrough(new TransformStream({transform:(t,n)=>{n.enqueue(e(t))}}))}values(e){return this.#stream.values(e)}take(e){let t=0;return this.pipeThrough(new TransformStream({transform:(n,r)=>{t=e&&r.terminate()}}))}filter(e){return this.pipeThrough(new TransformStream({transform:(t,n)=>{(typeof e==`function`?e(t):S(e)?e.include(t):e===t)&&n.enqueue(t)}}))}until(e){return this.pipeThrough(new TransformStream({transform:(t,n)=>{n.enqueue(t),(typeof e==`function`?e(t):S(e)?e.include(t):e===t)&&n.terminate()}}))}async toArray(){let e=[];return await this.pipeTo(new WritableStream({write:t=>{e.push(t)}})),e}};const N=g();function P(){let e=N.getStore();if(!e)throw Error(`No current context found`);return e}const F=g(),I=new WeakMap,L=({listeners:e})=>{let t=[],n=(e,t,n,r)=>{let c,l={get abortController(){return c||=new AbortController,c},async:`constructor`in e?e.constructor.name===`AsyncFunction`:!1,pending:null,handler:e,inputEvents:t,inputs:n,outputs:[],prev:r,next:new Set,get root(){return o}};l.prev.next.add(l);let u=i(l);F.run(l,()=>{let e=[...new Set([...O(s.__internal__call_context),...O(u.__internal__call_context)])];N.run(u,()=>{let t=0,n=r=>{if(t===e.length){let e;try{e=r.handler(...r.inputs)}catch(e){if(c??a)(c??a).abort(e);else throw console.error(`unhandled error in handler`,e),e}T(e)?(l.async=!0,l.pending=e.then(e=>(w(e)&&u.sendEvent(e),e))):w(e)&&u.sendEvent(e)}let i=e[t];i&&(t++,i(r,n))};n(l)})})},r=r=>{let i=[...t];[...e].filter(([e])=>{let t=E(e,i);return t.length===e.length}).map(([e,a])=>{let o=E(e,i);o.forEach(e=>{t.splice(t.indexOf(e),1)});for(let t of a)n(t,e,o,r)})},i=e=>{let n=null;return{get stream(){if(!n){let t=k();s.__internal__call_send_event.subscribe(n=>{let r=I.get(n);for(;r;){if(r===e){t.publish(n);break}r=r.prev}}),n=new M(t,null)}return n},get signal(){return e.abortController.signal},sendEvent:(...n)=>{n.forEach(n=>{I.set(n,e),e.outputs.push(n),t.push(n),s.__internal__call_send_event.publish(n,e),r(e)})},__internal__call_context:k(),__internal__call_send_event:k()}},a=new AbortController,o={get abortController(){return a||=new AbortController,a},async:!1,pending:null,inputEvents:[],inputs:[],outputs:[],handler:null,prev:null,next:new Set,get root(){return o}},s=i(o);return s},R=()=>{let e={steps:new Map};return{handle:(t,n)=>{if(e.steps.has(t)){let r=e.steps.get(t);r.add(n)}else{let r=new Set;r.add(n),e.steps.set(t,r)}},createContext(){return L({listeners:e.steps})}}};function z(e,t){let n=(...e)=>{let n=t.filter(([t])=>t.every((t,n)=>t.include(e[n]))).map(([e,t])=>t),r=P(),i=r.sendEvent;return(...e)=>{for(let t=0;tt.include(e[n])))return i(...e)}return console.warn(`Invalid input detected [%s]`,e.map(e=>e.data).join(`, `)),i(...e)}};return{...e,strictHandle:(t,n)=>{let r=(...e)=>{let t=P();return n(t.safeSendEvent,...e)};return e.handle(t,r)},createContext(){let t=e.createContext();return t.__internal__call_context.subscribe((e,t)=>{P().safeSendEvent=n(...e.inputs),t(e)}),t}}}async function B(e,t,n){let{stream:r,sendEvent:i}=e.createContext();i(t);let a=(await r.until(n).toArray()).at(-1);if(!a)throw Error(`No output event received`);return a}const V={flex:``,"flex-col":``,"gap-2":``},H={flex:`~ col`,"gap-2":``},U={flex:``,"flex-col":``,"gap-2":``},W={grid:``,"grid-cols-2":``,"gap-2":``},G={flex:``,"items-center":``,"gap-2":``},K={flex:``,"items-center":``,"gap-2":``},q={flex:``,"items-center":``,"gap-2":``},J={key:0},Y={key:1};var X=r({__name:`chat`,setup(r){let g=e(`settings/llm/baseUrl`,`https://openrouter.ai/api/v1/`),_=e(`settings/llm/apiKey`,``),v=e(`settings/llm/model`,`openai/gpt-4o-mini`),y=o(``),b=o([]),S=o({role:`assistant`,content:``}),C=o(!1),w=x(),T=x(),E=x(),D=x(),O=x();async function k(){C.value=!0;try{let e=z(R(),[[[w],[T,O]],[[T],[E]],[[E],[D]]]);e.handle([w],async()=>{let{sendEvent:t}=e.createContext();S.value={role:`assistant`,content:``},b.value.push({role:`user`,content:y.value}),b.value.push(S.value);let n=await h({baseURL:g.value,apiKey:_.value,model:v.value,messages:b.value.slice(0,b.value.length-1).map(e=>s(e))});for await(let e of n.chunkStream)t(T.with(e.choices[0].delta.content||``));return O.with()}),e.handle([T],async e=>{S.value.content?S.value.content+=e.data:S.value.content=e.data}),await B(e,w.with(),O)}catch(e){console.error(e)}finally{C.value=!1}}return(e,r)=>(a(),l(`div`,V,[u(`div`,H,[u(`div`,U,[r[7]||=u(`div`,null,[u(`span`,{"text-neutral-500":``,"dark:text-neutral-400":``},`LLM`)],-1),u(`div`,W,[u(`label`,G,[r[4]||=u(`span`,{"text-nowrap":``},` Base URL `,-1),f(u(`input`,{"onUpdate:modelValue":r[0]||=e=>n(g)?g.value=e:null,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[t,c(g)]])]),u(`label`,K,[r[5]||=u(`span`,{"text-nowrap":``},` API Key `,-1),f(u(`input`,{"onUpdate:modelValue":r[1]||=e=>n(_)?_.value=e:null,type:`password`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[t,c(_)]])]),u(`label`,q,[r[6]||=u(`span`,{"text-nowrap":``},` Model `,-1),f(u(`input`,{"onUpdate:modelValue":r[2]||=e=>n(v)?v.value=e:null,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[t,c(v)]])])])]),u(`div`,null,[f(u(`textarea`,{"onUpdate:modelValue":r[3]||=e=>y.value=e,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`},null,512),[[t,y.value]])]),u(`button`,{"rounded-lg":``,bg:`blue-100 dark:blue-900`,"px-4":``,"py-2":``,onClick:k},` Send `),u(`div`,null,[(a(!0),l(p,null,d(b.value,(e,t)=>(a(),l(`div`,{key:t},[e.role===`user`?(a(),l(`div`,J,[u(`span`,null,m(e.content),1)])):i(``,!0),e.role===`assistant`?(a(),l(`div`,Y,[u(`span`,null,m(e.content),1)])):i(``,!0)]))),128))])])]))}}),Z=X;export{Z as default}; \ No newline at end of file diff --git a/assets/cloudflare-workers-ai-Cd0fSx03.js b/assets/cloudflare-workers-ai-Cd0fSx03.js deleted file mode 100644 index 2de51a1fc401e4a2d14773810f93befcced83511..0000000000000000000000000000000000000000 --- a/assets/cloudflare-workers-ai-Cd0fSx03.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAccountIdInput_default as e,ProviderApiKeyInput_default as t,ProviderBasicSettings_default as n,ProviderSettingsContainer_default as r,ProviderSettingsLayout_default as i,computed as a,createBlock as o,createVNode as s,defineComponent as c,onMounted as l,openBlock as u,storeToRefs as d,unref as f,useI18n as p,useProvidersStore as m,useRouter as h,watch as g,withCtx as _}from"./index-iQVr9nx1.js";import{route_block_default as v}from"./route-block-D_p8WJle.js";const y=`cloudflare-workers-ai`;var b=c({__name:`cloudflare-workers-ai`,setup(c){let{t:v}=p(),b=h(),x=m(),{providers:S}=d(x),C=a(()=>x.getProviderMetadata(y)),w=a({get:()=>{var e;return(e=S.value[y])?.apiKey||``},set:e=>{S.value[y]||(S.value[y]={}),S.value[y].apiKey=e}}),T=a({get:()=>{var e;return(e=S.value[y])?.accountId||``},set:e=>{S.value[y]||(S.value[y]={}),S.value[y].accountId=e}});l(()=>{var e,t;x.initializeProvider(y),w.value=(e=S.value[y])?.apiKey||``,T.value=(t=S.value[y])?.accountId||``}),g([w,T],()=>{S.value[y]={...S.value[y],apiKey:w.value,accountId:T.value}});function E(){var e;S.value[y]={...(e=C.value)?.defaultOptions}}return(a,c)=>{var l,d;return u(),o(f(i),{"provider-name":(l=C.value)?.localizedName,"provider-icon-color":(d=C.value)?.iconColor,"on-back":()=>f(b).back()},{default:_(()=>[s(f(r),null,{default:_(()=>[s(f(n),{title:f(v)(`settings.pages.providers.common.section.basic.title`),description:f(v)(`settings.pages.providers.common.section.basic.description`),"on-reset":E},{default:_(()=>{var n;return[s(f(t),{modelValue:w.value,"onUpdate:modelValue":c[0]||=e=>w.value=e,"provider-name":(n=C.value)?.localizedName,placeholder:f(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.api-key.placeholder`)},null,8,[`modelValue`,`provider-name`,`placeholder`]),s(f(e),{modelValue:T.value,"onUpdate:modelValue":c[1]||=e=>T.value=e,label:f(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.account-id.label`),description:f(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.account-id.description`),placeholder:f(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.account-id.placeholder`)},null,8,[`modelValue`,`label`,`description`,`placeholder`])]}),_:1},8,[`title`,`description`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`])}}});typeof v==`function`&&v(b);var x=b;export{x as default}; \ No newline at end of file diff --git a/assets/cloudflare-workers-ai-Coo5GpSQ.js b/assets/cloudflare-workers-ai-Coo5GpSQ.js new file mode 100644 index 0000000000000000000000000000000000000000..125c94f345d2cb91b1e56e630ded59bbdf79e517 --- /dev/null +++ b/assets/cloudflare-workers-ai-Coo5GpSQ.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,P as r,Q as i,S as a,aE as o,aJ as s,d3 as c,d7 as l,dB as u,dF as d,dH as f,dV as p,da as m,dn as h,dv as g,i as _}from"./index-C9kcCpP-.js";import{b as v}from"./route-block-B2lA4iHQ.js";const y=`cloudflare-workers-ai`;var b=l({__name:`cloudflare-workers-ai`,setup(l){let{t:v}=i(),b=o(),x=_(),{providers:S}=s(x),C=g(()=>x.getProviderMetadata(y)),w=g({get:()=>S.value[y]?.apiKey||``,set:e=>{S.value[y]||(S.value[y]={}),S.value[y].apiKey=e}}),T=g({get:()=>S.value[y]?.accountId||``,set:e=>{S.value[y]||(S.value[y]={}),S.value[y].accountId=e}});c(()=>{x.initializeProvider(y),w.value=S.value[y]?.apiKey||``,T.value=S.value[y]?.accountId||``}),d([w,T],()=>{S.value[y]={...S.value[y],apiKey:w.value,accountId:T.value}});function E(){S.value[y]={...C.value?.defaultOptions}}return(i,o)=>(f(),h(p(e),{"provider-name":C.value?.localizedName,"provider-icon-color":C.value?.iconColor,"on-back":()=>p(b).back()},{default:m(()=>[u(p(t),null,{default:m(()=>[u(p(n),{title:p(v)(`settings.pages.providers.common.section.basic.title`),description:p(v)(`settings.pages.providers.common.section.basic.description`),"on-reset":E},{default:m(()=>[u(p(r),{modelValue:w.value,"onUpdate:modelValue":o[0]||=e=>w.value=e,"provider-name":C.value?.localizedName,placeholder:p(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.api-key.placeholder`)},null,8,[`modelValue`,`provider-name`,`placeholder`]),u(p(a),{modelValue:T.value,"onUpdate:modelValue":o[1]||=e=>T.value=e,label:p(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.account-id.label`),description:p(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.account-id.description`),placeholder:p(v)(`settings.pages.providers.provider.cloudflare-workers-ai.fields.field.account-id.placeholder`)},null,8,[`modelValue`,`label`,`description`,`placeholder`])]),_:1},8,[`title`,`description`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`]))}});typeof v==`function`&&v(b);var x=b;export{x as default}; \ No newline at end of file diff --git a/assets/color-scheme-CEN2sNrK.js b/assets/color-scheme-CEN2sNrK.js new file mode 100644 index 0000000000000000000000000000000000000000..2256ac52f5ab0063302952e16fc7e2996d6cb08b --- /dev/null +++ b/assets/color-scheme-CEN2sNrK.js @@ -0,0 +1 @@ +import"./dist-NaQNo8Nw.js";import{Q as e,a1 as t,a5 as n,aC as r,cV as i,d as a,d7 as o,dB as s,dG as c,dH as l,dI as u,dV as d,da as f,db as p,dj as m,dl as h,dn as g,dr as _,du as v,e1 as y}from"./index-C9kcCpP-.js";import{b}from"./route-block-B2lA4iHQ.js";import{b as x}from"./ColorPalette-BSzUrihr.js";var S=[[],[`#A5978B`,`#D8CAAF`,`#B8B4A7`,`#C4BCB1`,`#E5DED8`,`#9A8F7D`,`#BEB5A7`,`#C9C0B6`],[`#7A9EAF`,`#B8C7CC`,`#D4B79C`,`#8B9D77`,`#C7D5CB`,`#E6D0B1`,`#94A7B1`,`#B4C8C3`],[`#D9B48F`,`#B5917A`,`#8C7A6B`,`#A17F5F`,`#B98C46`,`#C7A252`,`#DAB300`,`#D19826`],[`#9BA7B0`,`#C1CBD4`,`#A5ADB6`,`#8B959E`,`#D4DCE4`,`#7F8A94`,`#B3BCC6`,`#98A4AE`],[`#E4C6D0`,`#A61B29`,`#5D513C`,`#789262`,`#1C0D1A`,`#F7C242`,`#62A9DD`,`#8C4B3C`]];const C={flex:``,"items-center":``,"justify-between":``,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:300,delay:5*50,transition:`all ease-in-out duration-250`},w={"text-lg":``,"font-normal":``},T={relative:``,flex:``,"cursor-pointer":``,"items-center":``,"gap-2":``},E={class:`color-bar`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:320,delay:7*50,transition:`all ease-in-out duration-250`},D={"text-white":``,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:330,delay:8*50,transition:`all ease-in-out duration-250`},O={class:`color-bar transparency-grid`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:340,delay:9*50,transition:`all ease-in-out duration-250`},k=[`duration`,`delay`],A={"font-medium":``},j={text:`sm neutral-500`},M={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[65dvh]`,"right--15":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:30},enter:{scale:1,opacity:1,rotate:0},duration:250,flex:``,"items-center":``,"justify-center":``};var N=o({__name:`color-scheme`,setup(r){let o=a(),{t:b}=e();return(e,r)=>{let a=c(`motion`);return l(),p(v,null,[_((l(),g(d(t),{"mb-2":``,title:d(b)(`settings.pages.themes.sections.section.custom-color.title`),icon:`i-solar:pallete-2-bold-duotone`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:290,delay:4*50,transition:`all ease-in-out duration-250`},{default:f(()=>[_((l(),p(`div`,C,[m(`span`,w,y(e.$t(`settings.pages.themes.sections.section.custom-color.fields.field.primary-color.label`)),1),m(`label`,T,[_(m(`input`,{"onUpdate:modelValue":r[0]||=e=>d(o).themeColorsHueDynamic=e,type:`checkbox`,class:`peer sr-only`},null,512),[[i,d(o).themeColorsHueDynamic]]),r[2]||=m(`div`,{class:`h-6 w-11 rounded-full bg-neutral-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:bg-white dark:bg-neutral-600 peer-checked:bg-primary-500 after:transition-all after:content-[''] peer-checked:after:translate-x-full peer-checked:after:border-white`},null,-1),u(` `+y(e.$t(`settings.pages.themes.sections.section.custom-color.fields.field.primary-color.rgb-on.title`)),1)])])),[[a]]),_(s(d(n),{modelValue:d(o).themeColorsHue,"onUpdate:modelValue":r[1]||=e=>d(o).themeColorsHue=e,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:310,delay:6*50,disabled:d(o).themeColorsHueDynamic},null,8,[`modelValue`,`disabled`]),[[a]]),_((l(),p(`div`,E,[r[4]||=m(`span`,{"bg-primary-50":``},`50`,-1),r[5]||=m(`span`,{"bg-primary-100":``},`100`,-1),r[6]||=m(`span`,{"bg-primary-200":``},`200`,-1),r[7]||=m(`span`,{"bg-primary-300":``},`300`,-1),r[8]||=m(`span`,{"bg-primary-400":``},`400`,-1),r[9]||=m(`span`,{"bg-primary-500":``},`500`,-1),_((l(),p(`div`,D,r[3]||=[m(`span`,{"bg-primary-600":``},`600`,-1),m(`span`,{"bg-primary-700":``},`700`,-1),m(`span`,{"bg-primary-800":``},`800`,-1),m(`span`,{"bg-primary-900":``},`900`,-1),m(`span`,{"bg-primary-950":``},`950`,-1)])),[[a]])])),[[a]]),_((l(),p(`div`,O,r[10]||=[m(`span`,{bg:`primary-500/5`},`500/5`,-1),m(`span`,{bg:`primary-500/10`},`500/10`,-1),m(`span`,{bg:`primary-500/20`},`500/20`,-1),m(`span`,{bg:`primary-500/30`},`500/30`,-1),m(`span`,{bg:`primary-500/40`},`500/40`,-1),m(`span`,{bg:`primary-500/50`},`500/50`,-1),m(`span`,{bg:`primary-500/60`},`500/60`,-1),m(`span`,{bg:`primary-500/70`},`500/70`,-1),m(`span`,{bg:`primary-500/80`},`500/80`,-1),m(`span`,{bg:`primary-500/90`},`500/90`,-1),m(`span`,{bg:`primary-500`},`500`,-1)])),[[a]])]),_:1},8,[`title`])),[[a]]),_((l(),g(d(t),{"mb-2":``,title:d(b)(`settings.pages.themes.sections.section.theme-presets.title`),icon:`i-solar:magic-stick-2-bold-duotone`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:350,delay:10*50,transition:`all ease-in-out duration-250`},{default:f(()=>[(l(!0),p(v,null,h(e.$tm(`settings.pages.themes.sections.section.theme-presets.presets`),({title:t,description:n,colors:r},i)=>_((l(),p(`div`,{key:i,class:`w-full flex items-center justify-between rounded-lg px-4 py-3 outline-none transition-all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:360+i*10,delay:11*50+i*50,transition:`all ease-in-out duration-250`},[m(`div`,null,[m(`span`,A,y(e.$rt(t)),1),m(`div`,j,y(e.$rt(n)),1)]),s(x,{colors:r.map((t,n)=>({hex:d(S)[i][n],name:e.$rt(t)}))},null,8,[`colors`])],8,k)),[[a]])),128))]),_:1},8,[`title`])),[[a]]),_((l(),p(`div`,M,r[11]||=[m(`div`,{text:`60`,"i-solar:pallete-2-bold-duotone":``},null,-1)])),[[a]])],64)}}});typeof b==`function`&&b(N);var P=r(N,[[`__scopeId`,`data-v-8d079c31`]]);export{P as default}; \ No newline at end of file diff --git a/assets/color-scheme-DCNDjPVh.js b/assets/color-scheme-DCNDjPVh.js deleted file mode 100644 index d1068f836220faae48ec4bb3f647ea5e6fa44613..0000000000000000000000000000000000000000 --- a/assets/color-scheme-DCNDjPVh.js +++ /dev/null @@ -1 +0,0 @@ -import"./dist-GvbkCCcT.js";import{ColorHueRange_default as e,Fragment as t,Section_default as n,__plugin_vue_export_helper_default as r,createBaseVNode as i,createBlock as a,createElementBlock as o,createTextVNode as s,createVNode as c,defineComponent as l,openBlock as u,renderList as d,resolveDirective as f,toDisplayString as p,unref as m,useI18n as h,useSettings as g,vModelCheckbox as _,withCtx as v,withDirectives as y}from"./index-iQVr9nx1.js";import{route_block_default as b}from"./route-block-D_p8WJle.js";import{ColorPalette_default as x}from"./ColorPalette-vg8v3B0o.js";var S=[[],[`#A5978B`,`#D8CAAF`,`#B8B4A7`,`#C4BCB1`,`#E5DED8`,`#9A8F7D`,`#BEB5A7`,`#C9C0B6`],[`#7A9EAF`,`#B8C7CC`,`#D4B79C`,`#8B9D77`,`#C7D5CB`,`#E6D0B1`,`#94A7B1`,`#B4C8C3`],[`#D9B48F`,`#B5917A`,`#8C7A6B`,`#A17F5F`,`#B98C46`,`#C7A252`,`#DAB300`,`#D19826`],[`#9BA7B0`,`#C1CBD4`,`#A5ADB6`,`#8B959E`,`#D4DCE4`,`#7F8A94`,`#B3BCC6`,`#98A4AE`],[`#E4C6D0`,`#A61B29`,`#5D513C`,`#789262`,`#1C0D1A`,`#F7C242`,`#62A9DD`,`#8C4B3C`]];const C={flex:``,"items-center":``,"justify-between":``,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:300,delay:5*50,transition:`all ease-in-out duration-250`},w={"text-lg":``,"font-normal":``},T={relative:``,flex:``,"cursor-pointer":``,"items-center":``,"gap-2":``},E={class:`color-bar`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:320,delay:7*50,transition:`all ease-in-out duration-250`},D={"text-white":``,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:330,delay:8*50,transition:`all ease-in-out duration-250`},O={class:`color-bar transparency-grid`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:340,delay:9*50,transition:`all ease-in-out duration-250`},k=[`duration`,`delay`],A={"font-medium":``},j={text:`sm neutral-500`},M={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[65dvh]`,"right--15":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:30},enter:{scale:1,opacity:1,rotate:0},duration:250,flex:``,"items-center":``,"justify-center":``};var N=l({__name:`color-scheme`,setup(r){let l=g(),{t:b}=h();return(r,h)=>{let g=f(`motion`);return u(),o(t,null,[y((u(),a(m(n),{"mb-2":``,title:m(b)(`settings.pages.themes.sections.section.custom-color.title`),icon:`i-solar:pallete-2-bold-duotone`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:290,delay:4*50,transition:`all ease-in-out duration-250`},{default:v(()=>[y((u(),o(`div`,C,[i(`span`,w,p(r.$t(`settings.pages.themes.sections.section.custom-color.fields.field.primary-color.label`)),1),i(`label`,T,[y(i(`input`,{"onUpdate:modelValue":h[0]||=e=>m(l).themeColorsHueDynamic=e,type:`checkbox`,class:`peer sr-only`},null,512),[[_,m(l).themeColorsHueDynamic]]),h[2]||=i(`div`,{class:`h-6 w-11 rounded-full bg-neutral-200 after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:bg-white dark:bg-neutral-600 peer-checked:bg-primary-500 after:transition-all after:content-[''] peer-checked:after:translate-x-full peer-checked:after:border-white`},null,-1),s(` `+p(r.$t(`settings.pages.themes.sections.section.custom-color.fields.field.primary-color.rgb-on.title`)),1)])])),[[g]]),y(c(m(e),{modelValue:m(l).themeColorsHue,"onUpdate:modelValue":h[1]||=e=>m(l).themeColorsHue=e,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:310,delay:6*50,disabled:m(l).themeColorsHueDynamic},null,8,[`modelValue`,`disabled`]),[[g]]),y((u(),o(`div`,E,[h[4]||=i(`span`,{"bg-primary-50":``},`50`,-1),h[5]||=i(`span`,{"bg-primary-100":``},`100`,-1),h[6]||=i(`span`,{"bg-primary-200":``},`200`,-1),h[7]||=i(`span`,{"bg-primary-300":``},`300`,-1),h[8]||=i(`span`,{"bg-primary-400":``},`400`,-1),h[9]||=i(`span`,{"bg-primary-500":``},`500`,-1),y((u(),o(`div`,D,h[3]||=[i(`span`,{"bg-primary-600":``},`600`,-1),i(`span`,{"bg-primary-700":``},`700`,-1),i(`span`,{"bg-primary-800":``},`800`,-1),i(`span`,{"bg-primary-900":``},`900`,-1),i(`span`,{"bg-primary-950":``},`950`,-1)])),[[g]])])),[[g]]),y((u(),o(`div`,O,h[10]||=[i(`span`,{bg:`primary-500/5`},`500/5`,-1),i(`span`,{bg:`primary-500/10`},`500/10`,-1),i(`span`,{bg:`primary-500/20`},`500/20`,-1),i(`span`,{bg:`primary-500/30`},`500/30`,-1),i(`span`,{bg:`primary-500/40`},`500/40`,-1),i(`span`,{bg:`primary-500/50`},`500/50`,-1),i(`span`,{bg:`primary-500/60`},`500/60`,-1),i(`span`,{bg:`primary-500/70`},`500/70`,-1),i(`span`,{bg:`primary-500/80`},`500/80`,-1),i(`span`,{bg:`primary-500/90`},`500/90`,-1),i(`span`,{bg:`primary-500`},`500`,-1)])),[[g]])]),_:1},8,[`title`])),[[g]]),y((u(),a(m(n),{"mb-2":``,title:m(b)(`settings.pages.themes.sections.section.theme-presets.title`),icon:`i-solar:magic-stick-2-bold-duotone`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:350,delay:10*50,transition:`all ease-in-out duration-250`},{default:v(()=>[(u(!0),o(t,null,d(r.$tm(`settings.pages.themes.sections.section.theme-presets.presets`),({title:e,description:t,colors:n},a)=>y((u(),o(`div`,{key:a,class:`w-full flex items-center justify-between rounded-lg px-4 py-3 outline-none transition-all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:360+a*10,delay:11*50+a*50,transition:`all ease-in-out duration-250`},[i(`div`,null,[i(`span`,A,p(r.$rt(e)),1),i(`div`,j,p(r.$rt(t)),1)]),c(x,{colors:n.map((e,t)=>({hex:m(S)[a][t],name:r.$rt(e)}))},null,8,[`colors`])],8,k)),[[g]])),128))]),_:1},8,[`title`])),[[g]]),y((u(),o(`div`,M,h[11]||=[i(`div`,{text:`60`,"i-solar:pallete-2-bold-duotone":``},null,-1)])),[[g]])],64)}}});typeof b==`function`&&b(N);var P=r(N,[[`__scopeId`,`data-v-8d079c31`]]);export{P as default}; \ No newline at end of file diff --git a/assets/consciousness-Cnr7fcj_.js b/assets/consciousness-Cnr7fcj_.js deleted file mode 100644 index 09466e5be91ce59a3fa44412fc39ffc129a73ab2..0000000000000000000000000000000000000000 --- a/assets/consciousness-Cnr7fcj_.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,RadioCardManySelect_default as t,RadioCardSimple_default as ee,RouterLink as te,createBaseVNode as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createVNode as ne,defineComponent as re,isRef as o,onMounted as s,openBlock as c,renderList as ie,resolveDirective as l,storeToRefs as u,toDisplayString as d,unref as f,useConsciousnessStore as ae,useI18n as p,useProvidersStore as oe,vModelText as se,withCtx as ce,withDirectives as m}from"./index-iQVr9nx1.js";import{route_block_default as h}from"./route-block-D_p8WJle.js";const le={bg:`neutral-50 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,"p-4":``,flex:`~ col gap-4`},g={flex:`~ col gap-4`},_={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-500`},v={text:`neutral-400 dark:neutral-400`},y={"max-w-full":``},b={key:0,flex:`~ row gap-4`,style:{"scrollbar-width":`none`},"min-w-0":``,"of-x-scroll":``,"scroll-smooth":``,role:`radiogroup`},x={key:1},S={key:0},C={flex:`~ col gap-4`},w={class:`text-lg md:text-2xl`},T={text:`neutral-400 dark:neutral-400`},E={key:0,class:`flex items-center justify-center py-4`},D={key:1,class:`flex items-center gap-3 border border-red-200 rounded-lg bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20`},O={class:`flex flex-col`},k={class:`font-medium`},A={class:`text-sm text-red-600 dark:text-red-400`},j={key:2,class:`flex items-center gap-3 border border-amber-200 rounded-lg bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},M={class:`flex flex-col`},N={class:`font-medium`},P={class:`text-sm text-amber-600 dark:text-amber-400`},ue={key:1},F={flex:`~ col gap-4`},I={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},L={text:`neutral-400 dark:neutral-500`},R={class:`flex items-center gap-3 border border-primary-200 rounded-lg bg-primary-50 p-4 dark:border-primary-800 dark:bg-primary-900/20`},z={class:`flex flex-col`},B={class:`font-medium`},V={class:`text-sm text-primary-600 dark:text-primary-400`},H={class:`mt-2`},U={class:`mb-1 block text-sm font-medium`},de=[`placeholder`],fe={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var W=re({__name:`consciousness`,setup(re){let h=oe(),W=ae(),{configuredChatProvidersMetadata:G}=u(h),{activeProvider:K,activeModel:q,customModelName:pe,modelSearchQuery:J,supportsModelListing:Y,providerModels:X,isLoadingActiveProviderModels:Z,activeProviderModelError:Q}=u(W),{t:$}=p();s(async()=>{await W.loadModelsForProvider(K.value)});function me(e){pe.value=e}return(re,s)=>{let u=l(`motion`);return c(),a(e,null,[n(`div`,le,[n(`div`,null,[n(`div`,g,[n(`div`,null,[n(`h2`,_,d(f($)(`settings.pages.providers.title`)),1),n(`div`,v,[n(`span`,null,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.description`)),1)])]),n(`div`,y,[f(G).length>0?(c(),a(`fieldset`,b,[(c(!0),a(e,null,ie(f(G),e=>(c(),r(f(ee),{id:e.id,key:e.id,modelValue:f(K),"onUpdate:modelValue":s[0]||=e=>o(K)?K.value=e:null,name:`provider`,value:e.id,title:e.localizedName||`Unknown`,description:e.localizedDescription},null,8,[`id`,`modelValue`,`value`,`title`,`description`]))),128))])):(c(),a(`div`,x,[ne(f(te),{class:`flex items-center gap-3 rounded-lg p-4`,border:`2 dashed neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-800`,transition:`colors duration-200 ease-in-out`,to:`/settings/providers`},{default:ce(()=>s[4]||=[n(`div`,{"i-solar:warning-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),n(`div`,{class:`flex flex-col`},[n(`span`,{class:`font-medium`},`No Providers Configured`),n(`span`,{class:`text-sm text-neutral-400 dark:text-neutral-500`},`Click here to set up your LLM providers`)],-1),n(`div`,{"i-solar:arrow-right-line-duotone":``,class:`ml-auto text-xl text-neutral-400 dark:text-neutral-500`},null,-1)]),_:1,__:[4]})]))])])]),f(K)&&f(Y)?(c(),a(`div`,S,[n(`div`,C,[n(`div`,null,[n(`h2`,w,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.title`)),1),n(`div`,T,[n(`span`,null,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.subtitle`)),1)])]),f(Z)?(c(),a(`div`,E,[s[5]||=n(`div`,{class:`mr-2 animate-spin`},[n(`div`,{"i-solar:spinner-line-duotone":``,"text-xl":``})],-1),n(`span`,null,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.loading`)),1)])):f(Q)?(c(),a(`div`,D,[s[6]||=n(`div`,{"i-solar:close-circle-line-duotone":``,class:`text-2xl text-red-500 dark:text-red-400`},null,-1),n(`div`,O,[n(`span`,k,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.error`)),1),n(`span`,A,d(f(Q)),1)])])):f(X).length===0&&!f(Z)?(c(),a(`div`,j,[s[7]||=n(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),n(`div`,M,[n(`span`,N,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models`)),1),n(`span`,P,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models_description`)),1)])])):f(X).length>0?(c(),r(f(t),{key:3,modelValue:f(q),"onUpdate:modelValue":s[1]||=e=>o(q)?q.value=e:null,"search-query":f(J),"onUpdate:searchQuery":s[2]||=e=>o(J)?J.value=e:null,items:f(X).sort((e,t)=>e.id===f(q)?-1:t.id===f(q)?1:0),searchable:!0,"search-placeholder":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_placeholder`),"search-no-results-title":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results`),"search-no-results-description":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results_description`,{query:f(J)}),"search-results-text":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_results`,{count:`{count}`,total:`{total}`}),"custom-input-placeholder":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.custom_model_placeholder`),"expand-button-text":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.expand`),"collapse-button-text":f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.collapse`),"onUpdate:customValue":me},null,8,[`modelValue`,`search-query`,`items`,`search-placeholder`,`search-no-results-title`,`search-no-results-description`,`search-results-text`,`custom-input-placeholder`,`expand-button-text`,`collapse-button-text`])):i(``,!0)])])):f(K)&&!f(Y)?(c(),a(`div`,ue,[n(`div`,F,[n(`div`,null,[n(`h2`,I,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.title`)),1),n(`div`,L,[n(`span`,null,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.subtitle`)),1)])]),n(`div`,R,[s[8]||=n(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-primary-500 dark:text-primary-400`},null,-1),n(`div`,z,[n(`span`,B,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.not_supported`)),1),n(`span`,V,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.not_supported_description`)),1)])]),n(`div`,H,[n(`label`,U,d(f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.manual_model_name`)),1),m(n(`input`,{"onUpdate:modelValue":s[3]||=e=>o(q)?q.value=e:null,type:`text`,class:`w-full border border-neutral-300 rounded bg-white px-3 py-2 dark:border-neutral-700 dark:bg-neutral-900`,placeholder:f($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.manual_model_placeholder`)},null,8,de),[[se,f(q)]])])])])):i(``,!0)]),m((c(),a(`div`,fe,s[9]||=[n(`div`,{text:`60`,"i-solar:ghost-bold-duotone":``},null,-1)])),[[u]])],64)}}});typeof h==`function`&&h(W);var G=W;export{G as default}; \ No newline at end of file diff --git a/assets/consciousness-DLy5lbRs.js b/assets/consciousness-DLy5lbRs.js new file mode 100644 index 0000000000000000000000000000000000000000..0c379ed8716451cd706aefee9c696a373921148c --- /dev/null +++ b/assets/consciousness-DLy5lbRs.js @@ -0,0 +1 @@ +import{Q as e,Y as t,Z as n,aG as ee,aJ as r,cZ as te,d$ as i,d3 as a,d7 as ne,d9 as o,dB as re,dG as ie,dH as s,dV as c,da as ae,db as l,dj as u,dl as oe,dn as d,dr as f,du as p,e1 as m,h as se,i as ce}from"./index-C9kcCpP-.js";import{b as h}from"./route-block-B2lA4iHQ.js";const le={bg:`neutral-50 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,"p-4":``,flex:`~ col gap-4`},g={flex:`~ col gap-4`},_={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-500`},v={text:`neutral-400 dark:neutral-400`},y={"max-w-full":``},b={key:0,flex:`~ row gap-4`,style:{"scrollbar-width":`none`},"min-w-0":``,"of-x-scroll":``,"scroll-smooth":``,role:`radiogroup`},x={key:1},S={key:0},C={flex:`~ col gap-4`},w={class:`text-lg md:text-2xl`},T={text:`neutral-400 dark:neutral-400`},E={key:0,class:`flex items-center justify-center py-4`},D={key:1,class:`flex items-center gap-3 border border-red-200 rounded-lg bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20`},O={class:`flex flex-col`},k={class:`font-medium`},A={class:`text-sm text-red-600 dark:text-red-400`},j={key:2,class:`flex items-center gap-3 border border-amber-200 rounded-lg bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},M={class:`flex flex-col`},N={class:`font-medium`},P={class:`text-sm text-amber-600 dark:text-amber-400`},F={key:1},ue={flex:`~ col gap-4`},I={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},L={text:`neutral-400 dark:neutral-500`},R={class:`flex items-center gap-3 border border-primary-200 rounded-lg bg-primary-50 p-4 dark:border-primary-800 dark:bg-primary-900/20`},z={class:`flex flex-col`},B={class:`font-medium`},V={class:`text-sm text-primary-600 dark:text-primary-400`},H={class:`mt-2`},U={class:`mb-1 block text-sm font-medium`},de=[`placeholder`],fe={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var W=ne({__name:`consciousness`,setup(ne){let h=ce(),W=se(),{configuredChatProvidersMetadata:G}=r(h),{activeProvider:K,activeModel:q,customModelName:pe,modelSearchQuery:J,supportsModelListing:Y,providerModels:X,isLoadingActiveProviderModels:Z,activeProviderModelError:Q}=r(W),{t:$}=e();a(async()=>{await W.loadModelsForProvider(K.value)});function me(e){pe.value=e}return(e,r)=>{let a=ie(`motion`);return s(),l(p,null,[u(`div`,le,[u(`div`,null,[u(`div`,g,[u(`div`,null,[u(`h2`,_,m(c($)(`settings.pages.providers.title`)),1),u(`div`,v,[u(`span`,null,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.description`)),1)])]),u(`div`,y,[c(G).length>0?(s(),l(`fieldset`,b,[(s(!0),l(p,null,oe(c(G),e=>(s(),d(c(t),{id:e.id,key:e.id,modelValue:c(K),"onUpdate:modelValue":r[0]||=e=>i(K)?K.value=e:null,name:`provider`,value:e.id,title:e.localizedName||`Unknown`,description:e.localizedDescription},null,8,[`id`,`modelValue`,`value`,`title`,`description`]))),128))])):(s(),l(`div`,x,[re(c(ee),{class:`flex items-center gap-3 rounded-lg p-4`,border:`2 dashed neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-800`,transition:`colors duration-200 ease-in-out`,to:`/settings/providers`},{default:ae(()=>r[4]||=[u(`div`,{"i-solar:warning-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),u(`div`,{class:`flex flex-col`},[u(`span`,{class:`font-medium`},`No Providers Configured`),u(`span`,{class:`text-sm text-neutral-400 dark:text-neutral-500`},`Click here to set up your LLM providers`)],-1),u(`div`,{"i-solar:arrow-right-line-duotone":``,class:`ml-auto text-xl text-neutral-400 dark:text-neutral-500`},null,-1)]),_:1,__:[4]})]))])])]),c(K)&&c(Y)?(s(),l(`div`,S,[u(`div`,C,[u(`div`,null,[u(`h2`,w,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.title`)),1),u(`div`,T,[u(`span`,null,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.subtitle`)),1)])]),c(Z)?(s(),l(`div`,E,[r[5]||=u(`div`,{class:`mr-2 animate-spin`},[u(`div`,{"i-solar:spinner-line-duotone":``,"text-xl":``})],-1),u(`span`,null,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.loading`)),1)])):c(Q)?(s(),l(`div`,D,[r[6]||=u(`div`,{"i-solar:close-circle-line-duotone":``,class:`text-2xl text-red-500 dark:text-red-400`},null,-1),u(`div`,O,[u(`span`,k,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.error`)),1),u(`span`,A,m(c(Q)),1)])])):c(X).length===0&&!c(Z)?(s(),l(`div`,j,[r[7]||=u(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),u(`div`,M,[u(`span`,N,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models`)),1),u(`span`,P,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models_description`)),1)])])):c(X).length>0?(s(),d(c(n),{key:3,modelValue:c(q),"onUpdate:modelValue":r[1]||=e=>i(q)?q.value=e:null,"search-query":c(J),"onUpdate:searchQuery":r[2]||=e=>i(J)?J.value=e:null,items:c(X).sort((e,t)=>e.id===c(q)?-1:t.id===c(q)?1:0),searchable:!0,"search-placeholder":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_placeholder`),"search-no-results-title":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results`),"search-no-results-description":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results_description`,{query:c(J)}),"search-results-text":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_results`,{count:`{count}`,total:`{total}`}),"custom-input-placeholder":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.custom_model_placeholder`),"expand-button-text":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.expand`),"collapse-button-text":c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.collapse`),"onUpdate:customValue":me},null,8,[`modelValue`,`search-query`,`items`,`search-placeholder`,`search-no-results-title`,`search-no-results-description`,`search-results-text`,`custom-input-placeholder`,`expand-button-text`,`collapse-button-text`])):o(``,!0)])])):c(K)&&!c(Y)?(s(),l(`div`,F,[u(`div`,ue,[u(`div`,null,[u(`h2`,I,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.title`)),1),u(`div`,L,[u(`span`,null,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.subtitle`)),1)])]),u(`div`,R,[r[8]||=u(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-primary-500 dark:text-primary-400`},null,-1),u(`div`,z,[u(`span`,B,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.not_supported`)),1),u(`span`,V,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.not_supported_description`)),1)])]),u(`div`,H,[u(`label`,U,m(c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.manual_model_name`)),1),f(u(`input`,{"onUpdate:modelValue":r[3]||=e=>i(q)?q.value=e:null,type:`text`,class:`w-full border border-neutral-300 rounded bg-white px-3 py-2 dark:border-neutral-700 dark:bg-neutral-900`,placeholder:c($)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.manual_model_placeholder`)},null,8,de),[[te,c(q)]])])])])):o(``,!0)]),f((s(),l(`div`,fe,r[9]||=[u(`div`,{text:`60`,"i-solar:ghost-bold-duotone":``},null,-1)])),[[a]])],64)}}});typeof h==`function`&&h(W);var G=W;export{G as default}; \ No newline at end of file diff --git a/assets/core-BgSRlN71.js b/assets/core-BgSRlN71.js deleted file mode 100644 index c0f3eb7a0bf34234d68bb0b7646e194cbc9187ad..0000000000000000000000000000000000000000 --- a/assets/core-BgSRlN71.js +++ /dev/null @@ -1,3 +0,0 @@ -function e(e){let t=Object.values(e).filter(e=>typeof e==`number`),n=Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t);return n}function t(e){let t=!1;return{get value(){if(!t){let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}const n=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{},r=t(()=>{var e;if(typeof navigator<`u`&&!((e=navigator)==null||(e=e.userAgent)==null)&&e.includes(`Cloudflare`))return!1;try{let e=Function;return new e(``),!0}catch{return!1}}),i={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},a=Symbol(`ZodOutput`),o=Symbol(`ZodInput`);var s=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==`object`&&`id`in n){if(this._idmap.has(n.id))throw Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}remove(e){return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function c(){return new s}const l=c();var u=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??l,this.target=e?.target??`draft-2020-12`,this.unrepresentable=e?.unrepresentable??`throw`,this.override=e?.override??(()=>{}),this.io=e?.io??`output`,this.seen=new Map}process(t,n={path:[],schemaPath:[]}){var r,i,a;let o=t._zod.def,s={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},c=this.seen.get(t);if(c){c.count++;let e=n.schemaPath.includes(t);return e&&(c.cycle=n.path),c.schema}let l={schema:{},count:1,cycle:void 0,path:n.path};this.seen.set(t,l);let u=(r=(i=t._zod).toJSONSchema)?.call(i);if(u)l.schema=u;else{let r={...n,schemaPath:[...n.schemaPath,t],path:n.path},i=t._zod.parent;if(i)l.ref=i,this.process(i,r),this.seen.get(i).isParent=!0;else{let n=l.schema;switch(o.type){case`string`:{let e=n;e.type=`string`;let{minimum:r,maximum:i,format:a,patterns:o,contentEncoding:c}=t._zod.bag;if(typeof r==`number`&&(e.minLength=r),typeof i==`number`&&(e.maxLength=i),a&&(e.format=s[a]??a,e.format===``&&delete e.format),c&&(e.contentEncoding=c),o&&o.size>0){let t=[...o];t.length===1?e.pattern=t[0].source:t.length>1&&(l.schema.allOf=[...t.map(e=>({...this.target===`draft-7`?{type:`string`}:{},pattern:e.source}))])}break}case`number`:{let e=n,{minimum:r,maximum:i,format:a,multipleOf:o,exclusiveMaximum:s,exclusiveMinimum:c}=t._zod.bag;typeof a==`string`&&a.includes(`int`)?e.type=`integer`:e.type=`number`,typeof c==`number`&&(e.exclusiveMinimum=c),typeof r==`number`&&(e.minimum=r,typeof c==`number`&&(c>=r?delete e.minimum:delete e.exclusiveMinimum)),typeof s==`number`&&(e.exclusiveMaximum=s),typeof i==`number`&&(e.maximum=i,typeof s==`number`&&(s<=i?delete e.maximum:delete e.exclusiveMaximum)),typeof o==`number`&&(e.multipleOf=o);break}case`boolean`:{let e=n;e.type=`boolean`;break}case`bigint`:if(this.unrepresentable===`throw`)throw Error(`BigInt cannot be represented in JSON Schema`);break;case`symbol`:if(this.unrepresentable===`throw`)throw Error(`Symbols cannot be represented in JSON Schema`);break;case`null`:n.type=`null`;break;case`any`:break;case`unknown`:break;case`undefined`:case`never`:n.not={};break;case`void`:if(this.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`);break;case`date`:if(this.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`);break;case`array`:{let e=n,{minimum:i,maximum:a}=t._zod.bag;typeof i==`number`&&(e.minItems=i),typeof a==`number`&&(e.maxItems=a),e.type=`array`,e.items=this.process(o.element,{...r,path:[...r.path,`items`]});break}case`object`:{var d;let e=n;e.type=`object`,e.properties={};let t=o.shape;for(let n in t)e.properties[n]=this.process(t[n],{...r,path:[...r.path,`properties`,n]});let i=new Set(Object.keys(t)),a=new Set([...i].filter(e=>{let t=o.shape[e]._zod;return this.io===`input`?t.optin===void 0:t.optout===void 0}));a.size>0&&(e.required=Array.from(a)),(d=o.catchall)?._zod.def.type===`never`?e.additionalProperties=!1:o.catchall?o.catchall&&(e.additionalProperties=this.process(o.catchall,{...r,path:[...r.path,`additionalProperties`]})):this.io===`output`&&(e.additionalProperties=!1);break}case`union`:{let e=n;e.anyOf=o.options.map((e,t)=>this.process(e,{...r,path:[...r.path,`anyOf`,t]}));break}case`intersection`:{let e=n,t=this.process(o.left,{...r,path:[...r.path,`allOf`,0]}),i=this.process(o.right,{...r,path:[...r.path,`allOf`,1]}),a=e=>`allOf`in e&&Object.keys(e).length===1,s=[...a(t)?t.allOf:[t],...a(i)?i.allOf:[i]];e.allOf=s;break}case`tuple`:{let e=n;e.type=`array`;let i=o.items.map((e,t)=>this.process(e,{...r,path:[...r.path,`prefixItems`,t]}));if(this.target===`draft-2020-12`?e.prefixItems=i:e.items=i,o.rest){let t=this.process(o.rest,{...r,path:[...r.path,`items`]});this.target===`draft-2020-12`?e.items=t:e.additionalItems=t}o.rest&&(e.items=this.process(o.rest,{...r,path:[...r.path,`items`]}));let{minimum:a,maximum:s}=t._zod.bag;typeof a==`number`&&(e.minItems=a),typeof s==`number`&&(e.maxItems=s);break}case`record`:{let e=n;e.type=`object`,e.propertyNames=this.process(o.keyType,{...r,path:[...r.path,`propertyNames`]}),e.additionalProperties=this.process(o.valueType,{...r,path:[...r.path,`additionalProperties`]});break}case`map`:if(this.unrepresentable===`throw`)throw Error(`Map cannot be represented in JSON Schema`);break;case`set`:if(this.unrepresentable===`throw`)throw Error(`Set cannot be represented in JSON Schema`);break;case`enum`:{let t=n,r=e(o.entries);r.every(e=>typeof e==`number`)&&(t.type=`number`),r.every(e=>typeof e==`string`)&&(t.type=`string`),t.enum=r;break}case`literal`:{let e=n,t=[];for(let e of o.values)if(e===void 0){if(this.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(this.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);t.push(Number(e))}else t.push(e);if(t.length!==0)if(t.length===1){let n=t[0];e.type=n===null?`null`:typeof n,e.const=n}else t.every(e=>typeof e==`number`)&&(e.type=`number`),t.every(e=>typeof e==`string`)&&(e.type=`string`),t.every(e=>typeof e==`boolean`)&&(e.type=`string`),t.every(e=>e===null)&&(e.type=`null`),e.enum=t;break}case`file`:{let e=n,r={type:`string`,format:`binary`,contentEncoding:`binary`},{minimum:i,maximum:a,mime:o}=t._zod.bag;i!==void 0&&(r.minLength=i),a!==void 0&&(r.maxLength=a),o?o.length===1?(r.contentMediaType=o[0],Object.assign(e,r)):e.anyOf=o.map(e=>{let t={...r,contentMediaType:e};return t}):Object.assign(e,r);break}case`transform`:if(this.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`);break;case`nullable`:{let e=this.process(o.innerType,r);n.anyOf=[e,{type:`null`}];break}case`nonoptional`:this.process(o.innerType,r),l.ref=o.innerType;break;case`success`:{let e=n;e.type=`boolean`;break}case`default`:this.process(o.innerType,r),l.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue));break;case`prefault`:this.process(o.innerType,r),l.ref=o.innerType,this.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break;case`catch`:{this.process(o.innerType,r),l.ref=o.innerType;let e;try{e=o.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=e;break}case`nan`:if(this.unrepresentable===`throw`)throw Error(`NaN cannot be represented in JSON Schema`);break;case`template_literal`:{let e=n,r=t._zod.pattern;if(!r)throw Error(`Pattern not found in template literal`);e.type=`string`,e.pattern=r.source;break}case`pipe`:{let e=this.io===`input`?o.in._zod.def.type===`transform`?o.out:o.in:o.out;this.process(e,r),l.ref=e;break}case`readonly`:this.process(o.innerType,r),l.ref=o.innerType,n.readOnly=!0;break;case`promise`:this.process(o.innerType,r),l.ref=o.innerType;break;case`optional`:this.process(o.innerType,r),l.ref=o.innerType;break;case`lazy`:{let e=t._zod.innerType;this.process(e,r),l.ref=e;break}case`custom`:if(this.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`);break;default:}}}let p=this.metadataRegistry.get(t);p&&Object.assign(l.schema,p),this.io===`input`&&f(t)&&(delete l.schema.examples,delete l.schema.default),this.io===`input`&&l.schema._prefault&&((a=l.schema).default??(a.default=l.schema._prefault)),delete l.schema._prefault;let m=this.seen.get(t);return m.schema}emit(e,t){var n;let r={cycles:t?.cycles??`ref`,reused:t?.reused??`inline`,external:t?.external??void 0},i=this.seen.get(e);if(!i)throw Error(`Unprocessed schema. This is a bug in Zod.`);let a=e=>{let t=this.target===`draft-2020-12`?`$defs`:`definitions`;if(r.external){var n;let i=(n=r.external.registry.get(e[0]))?.id;if(i)return{ref:r.external.uri(i)};let a=e[1].defId??e[1].schema.id??`schema${this.counter++}`;return e[1].defId=a,{defId:a,ref:`${r.external.uri(`__shared`)}#/${t}/${a}`}}if(e[1]===i)return{ref:`#`};let a=`#`,o=`${a}/${t}/`,s=e[1].schema.id??`__schema${this.counter++}`;return{defId:s,ref:o+s}},o=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=a(e);t.def={...t.schema},r&&(t.defId=r);let i=t.schema;for(let e in i)delete i[e];i.$ref=n};for(let t of this.seen.entries()){var s;let n=t[1];if(e===t[0]){o(t);continue}if(r.external){var c;let n=(c=r.external.registry.get(t[0]))?.id;if(e!==t[0]&&n){o(t);continue}}let i=(s=this.metadataRegistry.get(t[0]))?.id;if(i){o(t);continue}if(n.cycle){var l;if(r.cycles===`throw`)throw Error(`Cycle detected: #/${(l=n.cycle)?.join(`/`)}/ - -Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`);r.cycles===`ref`&&o(t);continue}if(n.count>1&&r.reused===`ref`){o(t);continue}}let u=(e,t)=>{let n=this.seen.get(e),r=n.def??n.schema,i={...r};if(n.ref===null)return;let a=n.ref;if(n.ref=null,a){u(a,t);let e=this.seen.get(a).schema;e.$ref&&t.target===`draft-7`?(r.allOf=r.allOf??[],r.allOf.push(e)):(Object.assign(r,e),Object.assign(r,i))}n.isParent||this.override({zodSchema:e,jsonSchema:r,path:n.path??[]})};for(let e of[...this.seen.entries()].reverse())u(e[0],{target:this.target});let d={};this.target===`draft-2020-12`?d.$schema=`https://json-schema.org/draft/2020-12/schema`:this.target===`draft-7`?d.$schema=`http://json-schema.org/draft-07/schema#`:console.warn(`Invalid target: ${this.target}`),Object.assign(d,i.def);let f=(n=r.external)?.defs??{};for(let e of this.seen.entries()){let t=e[1];t.def&&t.defId&&(f[t.defId]=t.def)}!r.external&&Object.keys(f).length>0&&(this.target===`draft-2020-12`?d.$defs=f:d.definitions=f);try{return JSON.parse(JSON.stringify(d))}catch{throw Error(`Error converting schema to JSON.`)}}};function d(e,t){if(e instanceof s){let n=new u(t),r={};for(let t of e._idmap.entries()){let[e,r]=t;n.process(r)}let i={},a={registry:e,uri:t?.uri||(e=>e),defs:r};for(let r of e._idmap.entries()){let[e,o]=r;i[e]=n.emit(o,{...t,external:a})}if(Object.keys(r).length>0){let e=n.target===`draft-2020-12`?`$defs`:`definitions`;i.__shared={[e]:r}}return{schemas:i}}let n=new u(t);return n.process(e),n.emit(e,t)}function f(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e,i=r._zod.def;switch(i.type){case`string`:case`number`:case`bigint`:case`boolean`:case`date`:case`symbol`:case`undefined`:case`null`:case`any`:case`unknown`:case`never`:case`void`:case`literal`:case`enum`:case`nan`:case`file`:case`template_literal`:return!1;case`array`:return f(i.element,n);case`object`:for(let e in i.shape)if(f(i.shape[e],n))return!0;return!1;case`union`:for(let e of i.options)if(f(e,n))return!0;return!1;case`intersection`:return f(i.left,n)||f(i.right,n);case`tuple`:for(let e of i.items)if(f(e,n))return!0;return!!(i.rest&&f(i.rest,n));case`record`:return f(i.keyType,n)||f(i.valueType,n);case`map`:return f(i.keyType,n)||f(i.valueType,n);case`set`:return f(i.valueType,n);case`promise`:case`optional`:case`nonoptional`:case`nullable`:case`readonly`:return f(i.innerType,n);case`lazy`:return f(i.getter(),n);case`default`:return f(i.innerType,n);case`prefault`:return f(i.innerType,n);case`custom`:return!1;case`transform`:return!0;case`pipe`:return f(i.in,n)||f(i.out,n);case`success`:return!1;case`catch`:return!1;default:}throw Error(`Unknown schema type: ${i.type}`)}export{d as toJSONSchema}; \ No newline at end of file diff --git a/assets/core-o524g4tY.js b/assets/core-o524g4tY.js new file mode 100644 index 0000000000000000000000000000000000000000..31501410e66e7d84a9812180175d2bdb8ccb584f --- /dev/null +++ b/assets/core-o524g4tY.js @@ -0,0 +1,3 @@ +function e(e){let t=Object.values(e).filter(e=>typeof e==`number`),n=Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t);return n}function t(e){let t=!1;return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}}}}const n=Error.captureStackTrace?Error.captureStackTrace:(...e)=>{},r=t(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{let e=Function;return new e(``),!0}catch{return!1}}),i={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},a=Symbol(`ZodOutput`),o=Symbol(`ZodInput`);var s=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==`object`&&`id`in n){if(this._idmap.has(n.id))throw Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}remove(e){return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function c(){return new s}const l=c();var u=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??l,this.target=e?.target??`draft-2020-12`,this.unrepresentable=e?.unrepresentable??`throw`,this.override=e?.override??(()=>{}),this.io=e?.io??`output`,this.seen=new Map}process(t,n={path:[],schemaPath:[]}){var r;let i=t._zod.def,a={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},o=this.seen.get(t);if(o){o.count++;let e=n.schemaPath.includes(t);return e&&(o.cycle=n.path),o.schema}let s={schema:{},count:1,cycle:void 0,path:n.path};this.seen.set(t,s);let c=t._zod.toJSONSchema?.();if(c)s.schema=c;else{let r={...n,schemaPath:[...n.schemaPath,t],path:n.path},o=t._zod.parent;if(o)s.ref=o,this.process(o,r),this.seen.get(o).isParent=!0;else{let n=s.schema;switch(i.type){case`string`:{let e=n;e.type=`string`;let{minimum:r,maximum:i,format:o,patterns:c,contentEncoding:l}=t._zod.bag;if(typeof r==`number`&&(e.minLength=r),typeof i==`number`&&(e.maxLength=i),o&&(e.format=a[o]??o,e.format===``&&delete e.format),l&&(e.contentEncoding=l),c&&c.size>0){let t=[...c];t.length===1?e.pattern=t[0].source:t.length>1&&(s.schema.allOf=[...t.map(e=>({...this.target===`draft-7`?{type:`string`}:{},pattern:e.source}))])}break}case`number`:{let e=n,{minimum:r,maximum:i,format:a,multipleOf:o,exclusiveMaximum:s,exclusiveMinimum:c}=t._zod.bag;typeof a==`string`&&a.includes(`int`)?e.type=`integer`:e.type=`number`,typeof c==`number`&&(e.exclusiveMinimum=c),typeof r==`number`&&(e.minimum=r,typeof c==`number`&&(c>=r?delete e.minimum:delete e.exclusiveMinimum)),typeof s==`number`&&(e.exclusiveMaximum=s),typeof i==`number`&&(e.maximum=i,typeof s==`number`&&(s<=i?delete e.maximum:delete e.exclusiveMaximum)),typeof o==`number`&&(e.multipleOf=o);break}case`boolean`:{let e=n;e.type=`boolean`;break}case`bigint`:if(this.unrepresentable===`throw`)throw Error(`BigInt cannot be represented in JSON Schema`);break;case`symbol`:if(this.unrepresentable===`throw`)throw Error(`Symbols cannot be represented in JSON Schema`);break;case`null`:n.type=`null`;break;case`any`:break;case`unknown`:break;case`undefined`:case`never`:n.not={};break;case`void`:if(this.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`);break;case`date`:if(this.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`);break;case`array`:{let e=n,{minimum:a,maximum:o}=t._zod.bag;typeof a==`number`&&(e.minItems=a),typeof o==`number`&&(e.maxItems=o),e.type=`array`,e.items=this.process(i.element,{...r,path:[...r.path,`items`]});break}case`object`:{let e=n;e.type=`object`,e.properties={};let t=i.shape;for(let n in t)e.properties[n]=this.process(t[n],{...r,path:[...r.path,`properties`,n]});let a=new Set(Object.keys(t)),o=new Set([...a].filter(e=>{let t=i.shape[e]._zod;return this.io===`input`?t.optin===void 0:t.optout===void 0}));o.size>0&&(e.required=Array.from(o)),i.catchall?._zod.def.type===`never`?e.additionalProperties=!1:i.catchall?i.catchall&&(e.additionalProperties=this.process(i.catchall,{...r,path:[...r.path,`additionalProperties`]})):this.io===`output`&&(e.additionalProperties=!1);break}case`union`:{let e=n;e.anyOf=i.options.map((e,t)=>this.process(e,{...r,path:[...r.path,`anyOf`,t]}));break}case`intersection`:{let e=n,t=this.process(i.left,{...r,path:[...r.path,`allOf`,0]}),a=this.process(i.right,{...r,path:[...r.path,`allOf`,1]}),o=e=>`allOf`in e&&Object.keys(e).length===1,s=[...o(t)?t.allOf:[t],...o(a)?a.allOf:[a]];e.allOf=s;break}case`tuple`:{let e=n;e.type=`array`;let a=i.items.map((e,t)=>this.process(e,{...r,path:[...r.path,`prefixItems`,t]}));if(this.target===`draft-2020-12`?e.prefixItems=a:e.items=a,i.rest){let t=this.process(i.rest,{...r,path:[...r.path,`items`]});this.target===`draft-2020-12`?e.items=t:e.additionalItems=t}i.rest&&(e.items=this.process(i.rest,{...r,path:[...r.path,`items`]}));let{minimum:o,maximum:s}=t._zod.bag;typeof o==`number`&&(e.minItems=o),typeof s==`number`&&(e.maxItems=s);break}case`record`:{let e=n;e.type=`object`,e.propertyNames=this.process(i.keyType,{...r,path:[...r.path,`propertyNames`]}),e.additionalProperties=this.process(i.valueType,{...r,path:[...r.path,`additionalProperties`]});break}case`map`:if(this.unrepresentable===`throw`)throw Error(`Map cannot be represented in JSON Schema`);break;case`set`:if(this.unrepresentable===`throw`)throw Error(`Set cannot be represented in JSON Schema`);break;case`enum`:{let t=n,r=e(i.entries);r.every(e=>typeof e==`number`)&&(t.type=`number`),r.every(e=>typeof e==`string`)&&(t.type=`string`),t.enum=r;break}case`literal`:{let e=n,t=[];for(let e of i.values)if(e===void 0){if(this.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(this.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);t.push(Number(e))}else t.push(e);if(t.length!==0)if(t.length===1){let n=t[0];e.type=n===null?`null`:typeof n,e.const=n}else t.every(e=>typeof e==`number`)&&(e.type=`number`),t.every(e=>typeof e==`string`)&&(e.type=`string`),t.every(e=>typeof e==`boolean`)&&(e.type=`string`),t.every(e=>e===null)&&(e.type=`null`),e.enum=t;break}case`file`:{let e=n,r={type:`string`,format:`binary`,contentEncoding:`binary`},{minimum:i,maximum:a,mime:o}=t._zod.bag;i!==void 0&&(r.minLength=i),a!==void 0&&(r.maxLength=a),o?o.length===1?(r.contentMediaType=o[0],Object.assign(e,r)):e.anyOf=o.map(e=>{let t={...r,contentMediaType:e};return t}):Object.assign(e,r);break}case`transform`:if(this.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`);break;case`nullable`:{let e=this.process(i.innerType,r);n.anyOf=[e,{type:`null`}];break}case`nonoptional`:this.process(i.innerType,r),s.ref=i.innerType;break;case`success`:{let e=n;e.type=`boolean`;break}case`default`:this.process(i.innerType,r),s.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue));break;case`prefault`:this.process(i.innerType,r),s.ref=i.innerType,this.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)));break;case`catch`:{this.process(i.innerType,r),s.ref=i.innerType;let e;try{e=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=e;break}case`nan`:if(this.unrepresentable===`throw`)throw Error(`NaN cannot be represented in JSON Schema`);break;case`template_literal`:{let e=n,r=t._zod.pattern;if(!r)throw Error(`Pattern not found in template literal`);e.type=`string`,e.pattern=r.source;break}case`pipe`:{let e=this.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;this.process(e,r),s.ref=e;break}case`readonly`:this.process(i.innerType,r),s.ref=i.innerType,n.readOnly=!0;break;case`promise`:this.process(i.innerType,r),s.ref=i.innerType;break;case`optional`:this.process(i.innerType,r),s.ref=i.innerType;break;case`lazy`:{let e=t._zod.innerType;this.process(e,r),s.ref=e;break}case`custom`:if(this.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`);break;default:}}}let l=this.metadataRegistry.get(t);l&&Object.assign(s.schema,l),this.io===`input`&&f(t)&&(delete s.schema.examples,delete s.schema.default),this.io===`input`&&s.schema._prefault&&((r=s.schema).default??(r.default=s.schema._prefault)),delete s.schema._prefault;let u=this.seen.get(t);return u.schema}emit(e,t){let n={cycles:t?.cycles??`ref`,reused:t?.reused??`inline`,external:t?.external??void 0},r=this.seen.get(e);if(!r)throw Error(`Unprocessed schema. This is a bug in Zod.`);let i=e=>{let t=this.target===`draft-2020-12`?`$defs`:`definitions`;if(n.external){let r=n.external.registry.get(e[0])?.id;if(r)return{ref:n.external.uri(r)};let i=e[1].defId??e[1].schema.id??`schema${this.counter++}`;return e[1].defId=i,{defId:i,ref:`${n.external.uri(`__shared`)}#/${t}/${i}`}}if(e[1]===r)return{ref:`#`};let i=`#`,a=`${i}/${t}/`,o=e[1].schema.id??`__schema${this.counter++}`;return{defId:o,ref:a+o}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};for(let t of this.seen.entries()){let r=t[1];if(e===t[0]){a(t);continue}if(n.external){let r=n.external.registry.get(t[0])?.id;if(e!==t[0]&&r){a(t);continue}}let i=this.metadataRegistry.get(t[0])?.id;if(i){a(t);continue}if(r.cycle){if(n.cycles===`throw`)throw Error(`Cycle detected: #/${r.cycle?.join(`/`)}/ + +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`);n.cycles===`ref`&&a(t);continue}if(r.count>1&&n.reused===`ref`){a(t);continue}}let o=(e,t)=>{let n=this.seen.get(e),r=n.def??n.schema,i={...r};if(n.ref===null)return;let a=n.ref;if(n.ref=null,a){o(a,t);let e=this.seen.get(a).schema;e.$ref&&t.target===`draft-7`?(r.allOf=r.allOf??[],r.allOf.push(e)):(Object.assign(r,e),Object.assign(r,i))}n.isParent||this.override({zodSchema:e,jsonSchema:r,path:n.path??[]})};for(let e of[...this.seen.entries()].reverse())o(e[0],{target:this.target});let s={};this.target===`draft-2020-12`?s.$schema=`https://json-schema.org/draft/2020-12/schema`:this.target===`draft-7`?s.$schema=`http://json-schema.org/draft-07/schema#`:console.warn(`Invalid target: ${this.target}`),Object.assign(s,r.def);let c=n.external?.defs??{};for(let e of this.seen.entries()){let t=e[1];t.def&&t.defId&&(c[t.defId]=t.def)}!n.external&&Object.keys(c).length>0&&(this.target===`draft-2020-12`?s.$defs=c:s.definitions=c);try{return JSON.parse(JSON.stringify(s))}catch{throw Error(`Error converting schema to JSON.`)}}};function d(e,t){if(e instanceof s){let n=new u(t),r={};for(let t of e._idmap.entries()){let[e,r]=t;n.process(r)}let i={},a={registry:e,uri:t?.uri||(e=>e),defs:r};for(let r of e._idmap.entries()){let[e,o]=r;i[e]=n.emit(o,{...t,external:a})}if(Object.keys(r).length>0){let e=n.target===`draft-2020-12`?`$defs`:`definitions`;i.__shared={[e]:r}}return{schemas:i}}let n=new u(t);return n.process(e),n.emit(e,t)}function f(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e,i=r._zod.def;switch(i.type){case`string`:case`number`:case`bigint`:case`boolean`:case`date`:case`symbol`:case`undefined`:case`null`:case`any`:case`unknown`:case`never`:case`void`:case`literal`:case`enum`:case`nan`:case`file`:case`template_literal`:return!1;case`array`:return f(i.element,n);case`object`:for(let e in i.shape)if(f(i.shape[e],n))return!0;return!1;case`union`:for(let e of i.options)if(f(e,n))return!0;return!1;case`intersection`:return f(i.left,n)||f(i.right,n);case`tuple`:for(let e of i.items)if(f(e,n))return!0;return!!(i.rest&&f(i.rest,n));case`record`:return f(i.keyType,n)||f(i.valueType,n);case`map`:return f(i.keyType,n)||f(i.valueType,n);case`set`:return f(i.valueType,n);case`promise`:case`optional`:case`nonoptional`:case`nullable`:case`readonly`:return f(i.innerType,n);case`lazy`:return f(i.getter(),n);case`default`:return f(i.innerType,n);case`prefault`:return f(i.innerType,n);case`custom`:return!1;case`transform`:return!0;case`pipe`:return f(i.in,n)||f(i.out,n);case`success`:return!1;case`catch`:return!1;default:}throw Error(`Unknown schema type: ${i.type}`)}export{s as $ZodRegistry,u as JSONSchemaGenerator,l as globalRegistry,c as registry,d as toJSONSchema}; \ No newline at end of file diff --git a/assets/deepseek-DjD7u8Sw.js b/assets/deepseek-DjD7u8Sw.js deleted file mode 100644 index ee7cabcc67690964ac44cb5b625c48874ba140da..0000000000000000000000000000000000000000 --- a/assets/deepseek-DjD7u8Sw.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`deepseek`;var x=l({__name:`deepseek`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon-color":(f=w.value)?.iconColor,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.deepseek.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/deepseek-cryzZIcn.js b/assets/deepseek-cryzZIcn.js new file mode 100644 index 0000000000000000000000000000000000000000..827b9d80e4d9c269447b119ce72c58240094d604 --- /dev/null +++ b/assets/deepseek-cryzZIcn.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`deepseek`;var x=u({__name:`deepseek`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon-color":w.value?.iconColor,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.deepseek.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/default-B3hrbX4E.js b/assets/default-B3hrbX4E.js new file mode 100644 index 0000000000000000000000000000000000000000..54b15b996f5acd2935ebec7632ef3454be064bef --- /dev/null +++ b/assets/default-B3hrbX4E.js @@ -0,0 +1 @@ +import{aH as e,d7 as t,dB as n,dH as r,dV as i,db as a,dj as o}from"./index-C9kcCpP-.js";import{b as s}from"./HeaderLink-xWxD2Zu3.js";const c={style:{paddingBottom:`env(safe-area-inset-bottom, 0px)`,paddingTop:`env(safe-area-inset-top, 0px)`,paddingRight:`env(safe-area-inset-right, 0px)`,paddingLeft:`env(safe-area-inset-left, 0px)`},"h-full":``},l={class:`px-0 py-1 md:px-3 md:py-3`,"w-full":``,"gap-2":``,bg:`$bg-color`},u={class:`px-3 py-2 md:px-5 md:py-5`,flex:`~ col`,"mx-auto":``,"h-full":``,"max-w-screen-xl":``};var d=t({__name:`default`,setup(t){return(t,d)=>(r(),a(`div`,c,[o(`div`,l,[n(s)]),o(`div`,u,[n(i(e))])]))}}),f=d;export{f as default}; \ No newline at end of file diff --git a/assets/default-VFMqb8d1.js b/assets/default-VFMqb8d1.js deleted file mode 100644 index 432eb76a556c25bd276302c033e12df6c4b4f911..0000000000000000000000000000000000000000 --- a/assets/default-VFMqb8d1.js +++ /dev/null @@ -1 +0,0 @@ -import{RouterView as e,createBaseVNode as t,createElementBlock as n,createVNode as r,defineComponent as i,openBlock as a,unref as o}from"./index-iQVr9nx1.js";import{HeaderLink_default as s}from"./HeaderLink-DjJ0Gw-G.js";const c={style:{paddingBottom:`env(safe-area-inset-bottom, 0px)`,paddingTop:`env(safe-area-inset-top, 0px)`,paddingRight:`env(safe-area-inset-right, 0px)`,paddingLeft:`env(safe-area-inset-left, 0px)`},"h-full":``},l={class:`px-0 py-1 md:px-3 md:py-3`,"w-full":``,"gap-2":``,bg:`$bg-color`},u={class:`px-3 py-2 md:px-5 md:py-5`,flex:`~ col`,"mx-auto":``,"h-full":``,"max-w-screen-xl":``};var d=i({__name:`default`,setup(i){return(i,d)=>(a(),n(`div`,c,[t(`div`,l,[r(s)]),t(`div`,u,[r(o(e))])]))}}),f=d;export{f as default}; \ No newline at end of file diff --git a/assets/default-node-CK1wfd3F.js b/assets/default-node-CK1wfd3F.js deleted file mode 100644 index efed609362eabc7ad1fbff64a0d297a2500581d5..0000000000000000000000000000000000000000 --- a/assets/default-node-CK1wfd3F.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/__vite-browser-external-Wa8hNVG-.js","assets/index-iQVr9nx1.js","assets/index-ChU1TNQB.css"])))=>i.map(i=>d[i]); -import{__toDynamicImportESM as e,__vitePreload as t}from"./index-iQVr9nx1.js";async function n(){let{createRequire:n}=await t(async()=>{let{createRequire:t}=await import(`./__vite-browser-external-Wa8hNVG-.js`).then(e(1));return{createRequire:t}},__vite__mapDeps([0,1,2])),{dirname:r,resolve:i}=await t(async()=>{let{dirname:t,resolve:n}=await import(`./__vite-browser-external-Wa8hNVG-.js`).then(e(1));return{dirname:t,resolve:n}},__vite__mapDeps([0,1,2])),a=n(import.meta.url),o=r(a.resolve(`@duckdb/duckdb-wasm`));return{mvp:{mainModule:i(o,`./duckdb-mvp.wasm`),mainWorker:i(o,`./duckdb-node-mvp.worker.cjs`)},eh:{mainModule:i(o,`./duckdb-eh.wasm`),mainWorker:i(o,`./duckdb-node-eh.worker.cjs`)}}}export{n as getBundles}; \ No newline at end of file diff --git a/assets/default-node-D3algJHl.js b/assets/default-node-D3algJHl.js new file mode 100644 index 0000000000000000000000000000000000000000..dd1bce322376053accc8273862f112eae3aa946a --- /dev/null +++ b/assets/default-node-D3algJHl.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/__vite-browser-external-Xk3YGxmN.js","assets/index-C9kcCpP-.js","assets/index-AqR2SpAu.css"])))=>i.map(i=>d[i]); +import{aI as e,e8 as t}from"./index-C9kcCpP-.js";async function n(){let{createRequire:n}=await e(async()=>{let{createRequire:e}=await import(`./__vite-browser-external-Xk3YGxmN.js`).then(t(1));return{createRequire:e}},__vite__mapDeps([0,1,2])),{dirname:r,resolve:i}=await e(async()=>{let{dirname:e,resolve:n}=await import(`./__vite-browser-external-Xk3YGxmN.js`).then(t(1));return{dirname:e,resolve:n}},__vite__mapDeps([0,1,2])),a=n(import.meta.url),o=r(a.resolve(`@duckdb/duckdb-wasm`));return{mvp:{mainModule:i(o,`./duckdb-mvp.wasm`),mainWorker:i(o,`./duckdb-node-mvp.worker.cjs`)},eh:{mainModule:i(o,`./duckdb-eh.wasm`),mainWorker:i(o,`./duckdb-node-eh.worker.cjs`)}}}export{n as getBundles}; \ No newline at end of file diff --git a/assets/delays-Bymja6WU.js b/assets/delays-Bymja6WU.js new file mode 100644 index 0000000000000000000000000000000000000000..ff3d43887ca13747a4399592e1af162f5fae2f55 --- /dev/null +++ b/assets/delays-Bymja6WU.js @@ -0,0 +1 @@ +import"./Basic-D95BeH1T.js";import{b as e}from"./Textarea-CMwGMW-L.js";import{at as t,d7 as n,dB as r,dH as i,dK as a,dV as o,db as s,dj as c,dl as l,du as u,e1 as d,z as f}from"./index-C9kcCpP-.js";const p={flex:``,"flex-col":``,"gap-2":``,"p-2":``},m={flex:``,"flex-row":``,"gap-2":``},h={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},g={"w-full":``,flex:``,"flex-row":``,"gap-4":``},_={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``},v={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var y=n({__name:`delays`,setup(n){let y=a(``),b=a([]),x=a([]),S=a(!1),C=f();C.onHandlerEvent(`delay`,e=>{x.value.push(e)});function w(){S.value=!0;let e=y.value.split(``);for(let t of e)C.add(t);C.add(t),y.value=``,S.value=!1}return(t,n)=>(i(),s(`div`,p,[c(`div`,m,[r(o(e),{modelValue:y.value,"onUpdate:modelValue":n[0]||=e=>y.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:w},null,8,[`modelValue`]),c(`button`,h,d(S.value?`Processing...`:`Send`),1)]),c(`div`,g,[c(`div`,_,[n[1]||=c(`h3`,{"font-normal":``},` Emotion Message `,-1),(i(!0),s(u,null,l(b.value,e=>(i(),s(`div`,{key:e},[c(`div`,null,d(e),1)]))),128))]),c(`div`,v,[n[2]||=c(`h3`,{"font-normal":``},` Delays `,-1),(i(!0),s(u,null,l(x.value,e=>(i(),s(`div`,{key:e},[c(`div`,null,d(e)+`s`,1)]))),128))])])]))}}),b=y;export{b as default}; \ No newline at end of file diff --git a/assets/delays-DIgAwRJp.js b/assets/delays-DIgAwRJp.js deleted file mode 100644 index 0643d08e4acde38997ef3859660be7746fec8145..0000000000000000000000000000000000000000 --- a/assets/delays-DIgAwRJp.js +++ /dev/null @@ -1 +0,0 @@ -import"./Basic-BE3KxqAa.js";import{Textarea_default as e}from"./Textarea-BJEUAUG6.js";import{Fragment as t,createBaseVNode as n,createElementBlock as r,createVNode as i,defineComponent as a,llmInferenceEndToken as o,openBlock as s,ref as c,renderList as l,toDisplayString as u,unref as d,useDelayMessageQueue as f}from"./index-iQVr9nx1.js";const p={flex:``,"flex-col":``,"gap-2":``,"p-2":``},m={flex:``,"flex-row":``,"gap-2":``},h={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},g={"w-full":``,flex:``,"flex-row":``,"gap-4":``},_={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``},v={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var y=a({__name:`delays`,setup(a){let y=c(``),b=c([]),x=c([]),S=c(!1),C=f();C.onHandlerEvent(`delay`,e=>{x.value.push(e)});function w(){S.value=!0;let e=y.value.split(``);for(let t of e)C.add(t);C.add(o),y.value=``,S.value=!1}return(a,o)=>(s(),r(`div`,p,[n(`div`,m,[i(d(e),{modelValue:y.value,"onUpdate:modelValue":o[0]||=e=>y.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:w},null,8,[`modelValue`]),n(`button`,h,u(S.value?`Processing...`:`Send`),1)]),n(`div`,g,[n(`div`,_,[o[1]||=n(`h3`,{"font-normal":``},` Emotion Message `,-1),(s(!0),r(t,null,l(b.value,e=>(s(),r(`div`,{key:e},[n(`div`,null,u(e),1)]))),128))]),n(`div`,v,[o[2]||=n(`h3`,{"font-normal":``},` Delays `,-1),(s(!0),r(t,null,l(x.value,e=>(s(),r(`div`,{key:e},[n(`div`,null,u(e)+`s`,1)]))),128))])])]))}}),b=y;export{b as default}; \ No newline at end of file diff --git a/assets/developer-BMsKoloG.js b/assets/developer-BMsKoloG.js new file mode 100644 index 0000000000000000000000000000000000000000..ce5b6aaaa0ff1d99697ab8bb242e3ce161eddc01 --- /dev/null +++ b/assets/developer-BMsKoloG.js @@ -0,0 +1 @@ +import{cV as e,cY as t,d as n,d7 as r,d9 as i,dB as a,dG as o,dH as s,dI as c,dV as l,da as u,db as d,dg as f,dj as p,do as m,dr as h,du as g,e1 as _,e2 as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b={class:`w-full flex cursor-pointer items-center justify-between rounded-lg px-4 py-3 text-sm outline-none transition-all duration-250 ease-in-out`,bg:`neutral-50 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`},x=[`aria-checked`],S={key:0,text:`sm neutral-500`};var C=r({__name:`CheckBar`,props:f({text:{},iconOn:{},iconOff:{},description:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(n){let r=m(n,`modelValue`);return(n,o)=>(s(),d(`label`,b,[h(p(`input`,{"onUpdate:modelValue":o[0]||=e=>r.value=e,"aria-checked":r.value,type:`checkbox`,hidden:``},null,8,x),[[e,r.value]]),p(`div`,null,[c(_(n.$t(n.text))+` `,1),n.description?(s(),d(`div`,S,_(n.$t(n.description)),1)):i(``,!0)]),a(t,{name:`slide-away`,mode:`out-in`},{default:u(()=>[r.value?(s(),d(`div`,{key:0,class:v(n.iconOn),transition:`all ease-in-out duration-250`},null,2)):(s(),d(`div`,{key:1,class:v(n.iconOff),transition:`all ease-in-out duration-250`},null,2))]),_:1})]))}}),w=C;const T={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[65dvh]`,"right--15":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:30},enter:{scale:1,opacity:1,rotate:0},duration:250,flex:``,"items-center":``,"justify-center":``};var E=r({__name:`developer`,setup(e){let t=n();return(e,n)=>{let r=o(`motion`);return s(),d(g,null,[h(a(w,{modelValue:l(t).disableTransitions,"onUpdate:modelValue":n[0]||=e=>l(t).disableTransitions=e,"mb-2":``,"icon-on":`i-solar:people-nearby-bold-duotone`,"icon-off":`i-solar:running-2-line-duotone`,text:`settings.animations.stage-transitions.title`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:440,delay:19*50,transition:`all ease-in-out duration-250`},null,8,[`modelValue`]),[[r]]),h(a(w,{modelValue:l(t).usePageSpecificTransitions,"onUpdate:modelValue":n[1]||=e=>l(t).usePageSpecificTransitions=e,disabled:l(t).disableTransitions,"icon-on":`i-solar:running-2-line-duotone`,"icon-off":`i-solar:people-nearby-bold-duotone`,text:`settings.animations.use-page-specific-transitions.title`,description:`settings.animations.use-page-specific-transitions.description`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:450,delay:20*50,transition:`all ease-in-out duration-250`},null,8,[`modelValue`,`disabled`]),[[r]]),h((s(),d(`div`,T,n[2]||=[p(`div`,{text:`60`,"i-solar:code-bold-duotone":``},null,-1)])),[[r]])],64)}}});typeof y==`function`&&y(E);var D=E;export{D as default}; \ No newline at end of file diff --git a/assets/developer-Rn-HQane.js b/assets/developer-Rn-HQane.js deleted file mode 100644 index f2bb0328325a66976a0fc271af03def42c960458..0000000000000000000000000000000000000000 --- a/assets/developer-Rn-HQane.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,Transition as t,createBaseVNode as n,createCommentVNode as r,createElementBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,mergeModels as c,normalizeClass as l,openBlock as u,resolveDirective as d,toDisplayString as f,unref as p,useModel as m,useSettings as h,vModelCheckbox as g,withCtx as _,withDirectives as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b={class:`w-full flex cursor-pointer items-center justify-between rounded-lg px-4 py-3 text-sm outline-none transition-all duration-250 ease-in-out`,bg:`neutral-50 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`},x=[`aria-checked`],S={key:0,text:`sm neutral-500`};var C=s({__name:`CheckBar`,props:c({text:{},iconOn:{},iconOff:{},description:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let s=m(e,`modelValue`);return(e,c)=>(u(),i(`label`,b,[v(n(`input`,{"onUpdate:modelValue":c[0]||=e=>s.value=e,"aria-checked":s.value,type:`checkbox`,hidden:``},null,8,x),[[g,s.value]]),n(`div`,null,[a(f(e.$t(e.text))+` `,1),e.description?(u(),i(`div`,S,f(e.$t(e.description)),1)):r(``,!0)]),o(t,{name:`slide-away`,mode:`out-in`},{default:_(()=>[s.value?(u(),i(`div`,{key:0,class:l(e.iconOn),transition:`all ease-in-out duration-250`},null,2)):(u(),i(`div`,{key:1,class:l(e.iconOff),transition:`all ease-in-out duration-250`},null,2))]),_:1})]))}}),w=C;const T={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[65dvh]`,"right--15":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:30},enter:{scale:1,opacity:1,rotate:0},duration:250,flex:``,"items-center":``,"justify-center":``};var E=s({__name:`developer`,setup(t){let r=h();return(t,a)=>{let s=d(`motion`);return u(),i(e,null,[v(o(w,{modelValue:p(r).disableTransitions,"onUpdate:modelValue":a[0]||=e=>p(r).disableTransitions=e,"mb-2":``,"icon-on":`i-solar:people-nearby-bold-duotone`,"icon-off":`i-solar:running-2-line-duotone`,text:`settings.animations.stage-transitions.title`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:440,delay:19*50,transition:`all ease-in-out duration-250`},null,8,[`modelValue`]),[[s]]),v(o(w,{modelValue:p(r).usePageSpecificTransitions,"onUpdate:modelValue":a[1]||=e=>p(r).usePageSpecificTransitions=e,disabled:p(r).disableTransitions,"icon-on":`i-solar:running-2-line-duotone`,"icon-off":`i-solar:people-nearby-bold-duotone`,text:`settings.animations.use-page-specific-transitions.title`,description:`settings.animations.use-page-specific-transitions.description`,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:450,delay:20*50,transition:`all ease-in-out duration-250`},null,8,[`modelValue`,`disabled`]),[[s]]),v((u(),i(`div`,T,a[2]||=[n(`div`,{text:`60`,"i-solar:code-bold-duotone":``},null,-1)])),[[s]])],64)}}});typeof y==`function`&&y(E);var D=E;export{D as default}; \ No newline at end of file diff --git a/assets/dist-BjoOBWKx.js b/assets/dist-6SPr9_vA.js similarity index 100% rename from assets/dist-BjoOBWKx.js rename to assets/dist-6SPr9_vA.js diff --git a/assets/dist-GvbkCCcT.js b/assets/dist-GvbkCCcT.js deleted file mode 100644 index 67f68a9b833455ad48919aabc4aaaf0898c25fb1..0000000000000000000000000000000000000000 --- a/assets/dist-GvbkCCcT.js +++ /dev/null @@ -1,16 +0,0 @@ -import{Comment as e,Fragment as t,Teleport as n,arrow as r,camelize as i,cloneVNode as a,computePosition as o,computed as s,createBaseVNode as c,createBlock as l,createCommentVNode as u,createCoords as d,createElementBlock as f,createTextVNode as p,createVNode as m,customRef as h,defineComponent as g,effectScope as _,flip as v,floor as y,getCurrentInstance as b,getCurrentScope as x,guardReactiveProps as S,h as C,hide as w,inject as T,isRef as E,limitShift as D,markRaw as O,max as k,mergeDefaults as A,mergeProps as j,min as M,nextTick as N,normalizeProps as P,normalizeStyle as F,offset as ee,onBeforeMount as te,onBeforeUnmount as ne,onBeforeUpdate as re,onMounted as I,onScopeDispose as ie,onUnmounted as ae,onUpdated as oe,openBlock as L,provide as se,reactive as ce,readonly as le,rectToClientRect as ue,ref as R,renderList as de,renderSlot as z,resolveDynamicComponent as fe,round as pe,shallowReadonly as me,shallowRef as he,shift as ge,size as _e,toDisplayString as ve,toHandlerKey as ye,toHandlers as be,toRaw as xe,toRef as Se,toRefs as B,triggerRef as Ce,unref as V,useId as we,useSlots as Te,vModelSelect as Ee,vShow as De,watch as H,watchEffect as U,watchPostEffect as Oe,watchSyncEffect as ke,withCtx as W,withDirectives as Ae,withKeys as G,withModifiers as K}from"./index-iQVr9nx1.js";function je(){return typeof window<`u`}function Me(e){return Fe(e)?(e.nodeName||``).toLowerCase():`#document`}function Ne(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Pe(e){var t;return(t=(Fe(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Fe(e){return je()?e instanceof Node||e instanceof Ne(e).Node:!1}function Ie(e){return je()?e instanceof Element||e instanceof Ne(e).Element:!1}function Le(e){return je()?e instanceof HTMLElement||e instanceof Ne(e).HTMLElement:!1}function Re(e){return!je()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof Ne(e).ShadowRoot}function ze(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Ke(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&![`inline`,`contents`].includes(i)}function Be(e){return[`table`,`td`,`th`].includes(Me(e))}function Ve(e){return[`:popover-open`,`:modal`].some(t=>{try{return e.matches(t)}catch{return!1}})}function He(e){let t=We(),n=Ie(e)?Ke(e):e;return[`transform`,`translate`,`scale`,`rotate`,`perspective`].some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`].some(e=>(n.willChange||``).includes(e))||[`paint`,`layout`,`strict`,`content`].some(e=>(n.contain||``).includes(e))}function Ue(e){let t=Je(e);for(;Le(t)&&!Ge(t);){if(He(t))return t;if(Ve(t))return null;t=Je(t)}return null}function We(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}function Ge(e){return[`html`,`body`,`#document`].includes(Me(e))}function Ke(e){return Ne(e).getComputedStyle(e)}function qe(e){return Ie(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Je(e){if(Me(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Re(e)&&e.host||Pe(e);return Re(t)?t.host:t}function Ye(e){let t=Je(e);return Ge(t)?e.ownerDocument?e.ownerDocument.body:e.body:Le(t)&&ze(t)?t:Ye(t)}function Xe(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);let i=Ye(e),a=i===(r=e.ownerDocument)?.body,o=Ne(i);if(a){let e=Ze(o);return t.concat(o,o.visualViewport||[],ze(i)?i:[],e&&n?Xe(e):[])}return t.concat(i,Xe(i,[],n))}function Ze(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Qe(e){let t=Ke(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=Le(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=pe(n)!==a||pe(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function $e(e){return Ie(e)?e:e.contextElement}function et(e){let t=$e(e);if(!Le(t))return d(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Qe(t),o=(a?pe(n.width):n.width)/r,s=(a?pe(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}const tt=d(0);function nt(e){let t=Ne(e);return!We()||!t.visualViewport?tt:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function rt(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Ne(e)?!1:t}function it(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=$e(e),o=d(1);t&&(r?Ie(r)&&(o=et(r)):o=et(e));let s=rt(a,n,r)?nt(a):d(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,f=i.height/o.y;if(a){let e=Ne(a),t=r&&Ie(r)?Ne(r):r,n=e,i=Ze(n);for(;i&&r&&t!==n;){let e=et(i),t=i.getBoundingClientRect(),r=Ke(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,f*=e.y,c+=a,l+=o,n=Ne(i),i=Ze(n)}}return ue({width:u,height:f,x:c,y:l})}function at(e,t){let n=qe(e).scrollLeft;return t?t.left+n:it(Pe(e)).left+n}function ot(e,t,n){n===void 0&&(n=!1);let r=e.getBoundingClientRect(),i=r.left+t.scrollLeft-(n?0:at(e,r)),a=r.top+t.scrollTop;return{x:i,y:a}}function st(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=Pe(r),s=t?Ve(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=d(1),u=d(0),f=Le(r);if((f||!f&&!a)&&((Me(r)!==`body`||ze(o))&&(c=qe(r)),Le(r))){let e=it(r);l=et(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let p=o&&!f&&!a?ot(o,c,!0):d(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+p.x,y:n.y*l.y-c.scrollTop*l.y+u.y+p.y}}function ct(e){return Array.from(e.getClientRects())}function lt(e){let t=Pe(e),n=qe(e),r=e.ownerDocument.body,i=k(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=k(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+at(e),s=-n.scrollTop;return Ke(r).direction===`rtl`&&(o+=k(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}function ut(e,t){let n=Ne(e),r=Pe(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=We();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s,y:c}}function dt(e,t){let n=it(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Le(e)?et(e):d(1),o=e.clientWidth*a.x,s=e.clientHeight*a.y,c=i*a.x,l=r*a.y;return{width:o,height:s,x:c,y:l}}function ft(e,t,n){let r;if(t===`viewport`)r=ut(e,n);else if(t===`document`)r=lt(Pe(e));else if(Ie(t))r=dt(t,n);else{let n=nt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ue(r)}function pt(e,t){let n=Je(e);return n===t||!Ie(n)||Ge(n)?!1:Ke(n).position===`fixed`||pt(n,t)}function mt(e,t){let n=t.get(e);if(n)return n;let r=Xe(e,[],!1).filter(e=>Ie(e)&&Me(e)!==`body`),i=null,a=Ke(e).position===`fixed`,o=a?Je(e):e;for(;Ie(o)&&!Ge(o);){let t=Ke(o),n=He(o);!n&&t.position===`fixed`&&(i=null);let s=a?!n&&!i:!n&&t.position===`static`&&!!i&&[`absolute`,`fixed`].includes(i.position)||ze(o)&&!n&&pt(e,o);s?r=r.filter(e=>e!==o):i=t,o=Je(o)}return t.set(e,r),r}function ht(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=n===`clippingAncestors`?Ve(t)?[]:mt(t,this._c):[].concat(n),o=[...a,r],s=o[0],c=o.reduce((e,n)=>{let r=ft(t,n,i);return e.top=k(r.top,e.top),e.right=M(r.right,e.right),e.bottom=M(r.bottom,e.bottom),e.left=k(r.left,e.left),e},ft(t,s,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function gt(e){let{width:t,height:n}=Qe(e);return{width:t,height:n}}function _t(e,t,n){let r=Le(t),i=Pe(t),a=n===`fixed`,o=it(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=d(0);if(r||!r&&!a)if((Me(t)!==`body`||ze(i))&&(s=qe(t)),r){let e=it(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&(c.x=at(i));let l=i&&!r&&!a?ot(i,s):d(0),u=o.left+s.scrollLeft-c.x-l.x,f=o.top+s.scrollTop-c.y-l.y;return{x:u,y:f,width:o.width,height:o.height}}function vt(e){return Ke(e).position===`static`}function yt(e,t){if(!Le(e)||Ke(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return Pe(e)===n&&(n=n.ownerDocument.body),n}function bt(e,t){let n=Ne(e);if(Ve(e))return n;if(!Le(e)){let t=Je(e);for(;t&&!Ge(t);){if(Ie(t)&&!vt(t))return t;t=Je(t)}return n}let r=yt(e,t);for(;r&&Be(r)&&vt(r);)r=yt(r,t);return r&&Ge(r)&&vt(r)&&!He(r)?n:r||Ue(e)||n}const xt=async function(e){let t=this.getOffsetParent||bt,n=this.getDimensions,r=await n(e.floating);return{reference:_t(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function St(e){return Ke(e).direction===`rtl`}const Ct={convertOffsetParentRelativeRectToViewportRelativeRect:st,getDocumentElement:Pe,getClippingRect:ht,getOffsetParent:bt,getElementRects:xt,getClientRects:ct,getDimensions:gt,getScale:et,isElement:Ie,isRTL:St};function wt(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Tt(e,t){let n=null,r,i=Pe(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=y(d),h=y(i.clientWidth-(u+f)),g=y(i.clientHeight-(d+p)),_=y(u),v=-m+`px `+-h+`px `+-g+`px `+-_+`px`,b={rootMargin:v,threshold:k(0,M(1,c))||1},x=!0;function S(t){let n=t[0].intersectionRatio;if(n!==c){if(!x)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!wt(l,e.getBoundingClientRect())&&o(),x=!1}try{n=new IntersectionObserver(S,{...b,root:i.ownerDocument})}catch{n=new IntersectionObserver(S,b)}n.observe(e)}return o(!0),a}function Et(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=$e(e),u=i||a?[...l?Xe(l):[],...Xe(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?Tt(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?it(e):null;c&&g();function g(){let t=it(e);h&&!wt(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}const Dt=ee,Ot=ge,kt=v,At=_e,jt=w,Mt=r,Nt=D,Pt=(e,t,n)=>{let r=new Map,i={platform:Ct,...n},a={...i.platform,_c:r};return o(e,t,{...i,platform:a})};function Ft(e){return typeof e==`object`&&!!e&&`$el`in e}function It(e){if(Ft(e)){let t=e.$el;return Fe(t)&&Me(t)===`#comment`?null:t}return e}function Lt(e){return typeof e==`function`?e():V(e)}function Rt(e){return{name:`arrow`,options:e,fn(t){let n=It(Lt(e.element));return n==null?{}:Mt({element:n,padding:e.padding}).fn(t)}}}function zt(e){if(typeof window>`u`)return 1;let t=e.ownerDocument.defaultView||window;return t.devicePixelRatio||1}function Bt(e,t){let n=zt(e);return Math.round(t*n)/n}function Vt(e,t,n){n===void 0&&(n={});let r=n.whileElementsMounted,i=s(()=>{var e;return(e=Lt(n.open))??!0}),a=s(()=>Lt(n.middleware)),o=s(()=>{var e;return(e=Lt(n.placement))??`bottom`}),c=s(()=>{var e;return(e=Lt(n.strategy))??`absolute`}),l=s(()=>{var e;return(e=Lt(n.transform))??!0}),u=s(()=>It(e.value)),d=s(()=>It(t.value)),f=R(0),p=R(0),m=R(c.value),h=R(o.value),g=he({}),_=R(!1),v=s(()=>{let e={position:m.value,left:`0`,top:`0`};if(!d.value)return e;let t=Bt(d.value,f.value),n=Bt(d.value,p.value);return l.value?{...e,transform:`translate(`+t+`px, `+n+`px)`,...zt(d.value)>=1.5&&{willChange:`transform`}}:{position:m.value,left:t+`px`,top:n+`px`}}),y;function b(){if(u.value==null||d.value==null)return;let e=i.value;Pt(u.value,d.value,{middleware:a.value,placement:o.value,strategy:c.value}).then(t=>{f.value=t.x,p.value=t.y,m.value=t.strategy,h.value=t.placement,g.value=t.middlewareData,_.value=e!==!1})}function S(){typeof y==`function`&&(y(),y=void 0)}function C(){if(S(),r===void 0){b();return}if(u.value!=null&&d.value!=null){y=r(u.value,d.value,b);return}}function w(){i.value||(_.value=!1)}return H([a,o,c,i],b,{flush:`sync`}),H([u,d],C,{flush:`sync`}),H(i,w,{flush:`sync`}),x()&&ie(S),{x:me(f),y:me(p),strategy:me(m),placement:me(h),middlewareData:me(g),isPositioned:me(_),floatingStyles:v,update:b}}function Ht(e,t){return e-t*Math.floor(e/t)}const Ut=1721426;function Wt(e,t,n,r){t=Kt(e,t);let i=t-1,a=-2;return n<=2?a=0:Gt(t)&&(a=-1),Ut-1+365*i+Math.floor(i/4)-Math.floor(i/100)+Math.floor(i/400)+Math.floor((367*n-362)/12+a+r)}function Gt(e){return e%4==0&&(e%100!=0||e%400==0)}function Kt(e,t){return e===`BC`?1-t:t}function qt(e){let t=`AD`;return e<=0&&(t=`BC`,e=1-e),[t,e]}const Jt={standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]};var Yt=class{fromJulianDay(e){let t=e,n=t-Ut,r=Math.floor(n/146097),i=Ht(n,146097),a=Math.floor(i/36524),o=Ht(i,36524),s=Math.floor(o/1461),c=Ht(o,1461),l=Math.floor(c/365),u=r*400+a*100+s*4+l+(a!==4&&l!==4?1:0),[d,f]=qt(u),p=t-Wt(d,f,1,1),m=2;t0&&t===fn())return new Date(e).getTimezoneOffset()*-6e4;let{year:n,month:r,day:i,hour:a,minute:o,second:s}=Sn(e,t),c=yn(n,r,i,a,o,s,0);return c-Math.floor(e/1e3)*1e3}const xn=new Map;function Sn(e,t){let n=xn.get(t);n||(n=new Intl.DateTimeFormat(`en-US`,{timeZone:t,hour12:!1,era:`short`,year:`numeric`,month:`numeric`,day:`numeric`,hour:`numeric`,minute:`numeric`,second:`numeric`}),xn.set(t,n));let r=n.formatToParts(new Date(e)),i={};for(let e of r)e.type!==`literal`&&(i[e.type]=e.value);return{year:i.era===`BC`||i.era===`B`?-i.year+1:+i.year,month:+i.month,day:+i.day,hour:i.hour===`24`?0:+i.hour,minute:+i.minute,second:+i.second}}const Cn=864e5;function wn(e,t,n,r){let i=n===r?[n]:[n,r];return i.filter(n=>Tn(e,t,n))}function Tn(e,t,n){let r=Sn(n,t);return e.year===r.year&&e.month===r.month&&e.day===r.day&&e.hour===r.hour&&e.minute===r.minute&&e.second===r.second}function En(e,t,n=`compatible`){let r=An(e);if(t===`UTC`)return vn(r);if(t===fn()&&n===`compatible`){r=jn(r,new Yt);let e=new Date,t=Kt(r.era,r.year);return e.setFullYear(t,r.month-1,r.day),e.setHours(r.hour,r.minute,r.second,r.millisecond),e.getTime()}let i=vn(r),a=bn(i-Cn,t),o=bn(i+Cn,t),s=wn(r,t,i-a,i-o);if(s.length===1)return s[0];if(s.length>1)switch(n){case`compatible`:case`earlier`:return s[0];case`later`:return s[s.length-1];case`reject`:throw RangeError(`Multiple possible absolute times found`)}switch(n){case`earlier`:return Math.min(i-a,i-o);case`compatible`:case`later`:return Math.max(i-a,i-o);case`reject`:throw RangeError(`No such absolute time found`)}}function Dn(e,t,n=`compatible`){return new Date(En(e,t,n))}function On(e,t){let n=bn(e,t),r=new Date(e+n),i=r.getUTCFullYear(),a=r.getUTCMonth()+1,o=r.getUTCDate(),s=r.getUTCHours(),c=r.getUTCMinutes(),l=r.getUTCSeconds(),u=r.getUTCMilliseconds();return new vr(i<1?`BC`:`AD`,i<1?-i+1:i,a,o,t,n,s,c,l,u)}function kn(e){return new mr(e.calendar,e.era,e.year,e.month,e.day)}function An(e,t){let n=0,r=0,i=0,a=0;if(`timeZone`in e)({hour:n,minute:r,second:i,millisecond:a}=e);else if(`hour`in e&&!t)return e;return t&&({hour:n,minute:r,second:i,millisecond:a}=t),new gr(e.calendar,e.era,e.year,e.month,e.day,n,r,i,a)}function jn(e,t){if(tn(e.calendar,t))return e;let n=t.fromJulianDay(e.calendar.toJulianDay(e)),r=e.copy();return r.calendar=t,r.era=n.era,r.year=n.year,r.month=n.month,r.day=n.day,Vn(r),r}function Mn(e,t,n){if(e instanceof vr)return e.timeZone===t?e:Pn(e,t);let r=En(e,t,n);return On(r,t)}function Nn(e){let t=vn(e)-e.offset;return new Date(t)}function Pn(e,t){let n=vn(e)-e.offset;return jn(On(n,t),e.calendar)}const Fn=36e5;function In(e,t){let n=e.copy(),r=`hour`in n?Yn(n,t):0;Ln(n,t.years||0),n.calendar.balanceYearMonth&&n.calendar.balanceYearMonth(n,e),n.month+=t.months||0,Rn(n),Bn(n),n.day+=(t.weeks||0)*7,n.day+=t.days||0,n.day+=r,zn(n),n.calendar.balanceDate&&n.calendar.balanceDate(n),n.year<1&&(n.year=1,n.month=1,n.day=1);let i=n.calendar.getYearsInEra(n);if(n.year>i){var a,o;let e=(a=(o=n.calendar).isInverseEra)?.call(o,n);n.year=i,n.month=e?1:n.calendar.getMonthsInYear(n),n.day=e?1:n.calendar.getDaysInMonth(n)}n.month<1&&(n.month=1,n.day=1);let s=n.calendar.getMonthsInYear(n);return n.month>s&&(n.month=s,n.day=n.calendar.getDaysInMonth(n)),n.day=Math.max(1,Math.min(n.calendar.getDaysInMonth(n),n.day)),n}function Ln(e,t){var n,r;(n=(r=e.calendar).isInverseEra)?.call(r,e)&&(t=-t),e.year+=t}function Rn(e){for(;e.month<1;)Ln(e,-1),e.month+=e.calendar.getMonthsInYear(e);let t=0;for(;e.month>(t=e.calendar.getMonthsInYear(e));)e.month-=t,Ln(e,1)}function zn(e){for(;e.day<1;)e.month--,Rn(e),e.day+=e.calendar.getDaysInMonth(e);for(;e.day>e.calendar.getDaysInMonth(e);)e.day-=e.calendar.getDaysInMonth(e),e.month++,Rn(e)}function Bn(e){e.month=Math.max(1,Math.min(e.calendar.getMonthsInYear(e),e.month)),e.day=Math.max(1,Math.min(e.calendar.getDaysInMonth(e),e.day))}function Vn(e){e.calendar.constrainDate&&e.calendar.constrainDate(e),e.year=Math.max(1,Math.min(e.calendar.getYearsInEra(e),e.year)),Bn(e)}function Hn(e){let t={};for(let n in e)typeof e[n]==`number`&&(t[n]=-e[n]);return t}function Un(e,t){return In(e,Hn(t))}function Wn(e,t){let n=e.copy();return t.era!=null&&(n.era=t.era),t.year!=null&&(n.year=t.year),t.month!=null&&(n.month=t.month),t.day!=null&&(n.day=t.day),Vn(n),n}function Gn(e,t){let n=e.copy();return t.hour!=null&&(n.hour=t.hour),t.minute!=null&&(n.minute=t.minute),t.second!=null&&(n.second=t.second),t.millisecond!=null&&(n.millisecond=t.millisecond),qn(n),n}function Kn(e){e.second+=Math.floor(e.millisecond/1e3),e.millisecond=Jn(e.millisecond,1e3),e.minute+=Math.floor(e.second/60),e.second=Jn(e.second,60),e.hour+=Math.floor(e.minute/60),e.minute=Jn(e.minute,60);let t=Math.floor(e.hour/24);return e.hour=Jn(e.hour,24),t}function qn(e){e.millisecond=Math.max(0,Math.min(e.millisecond,1e3)),e.second=Math.max(0,Math.min(e.second,59)),e.minute=Math.max(0,Math.min(e.minute,59)),e.hour=Math.max(0,Math.min(e.hour,23))}function Jn(e,t){let n=e%t;return n<0&&(n+=t),n}function Yn(e,t){return e.hour+=t.hours||0,e.minute+=t.minutes||0,e.second+=t.seconds||0,e.millisecond+=t.milliseconds||0,Kn(e)}function Xn(e,t,n,r){let i=e.copy();switch(t){case`era`:{let t=e.calendar.getEras(),a=t.indexOf(e.era);if(a<0)throw Error(`Invalid era: `+e.era);a=Qn(a,n,0,t.length-1,r?.round),i.era=t[a],Vn(i);break}case`year`:var a,o;(a=(o=i.calendar).isInverseEra)?.call(o,i)&&(n=-n),i.year=Qn(e.year,n,-1/0,9999,r?.round),i.year===-1/0&&(i.year=1),i.calendar.balanceYearMonth&&i.calendar.balanceYearMonth(i,e);break;case`month`:i.month=Qn(e.month,n,1,e.calendar.getMonthsInYear(e),r?.round);break;case`day`:i.day=Qn(e.day,n,1,e.calendar.getDaysInMonth(e),r?.round);break;default:throw Error(`Unsupported field `+t)}return e.calendar.balanceDate&&e.calendar.balanceDate(i),Vn(i),i}function Zn(e,t,n,r){let i=e.copy();switch(t){case`hour`:{let t=e.hour,a=0,o=23;if(r?.hourCycle===12){let e=t>=12;a=e?12:0,o=e?23:11}i.hour=Qn(t,n,a,o,r?.round);break}case`minute`:i.minute=Qn(e.minute,n,0,59,r?.round);break;case`second`:i.second=Qn(e.second,n,0,59,r?.round);break;case`millisecond`:i.millisecond=Qn(e.millisecond,n,0,999,r?.round);break;default:throw Error(`Unsupported field `+t)}return i}function Qn(e,t,n,r,i=!1){if(i){e+=Math.sign(t),e0?Math.ceil(e/i)*i:Math.floor(e/i)*i,e>r&&(e=n)}else e+=t,er&&(e=n+(e-r-1));return e}function $n(e,t){let n;if(t.years!=null&&t.years!==0||t.months!=null&&t.months!==0||t.weeks!=null&&t.weeks!==0||t.days!=null&&t.days!==0){let r=In(An(e),{years:t.years,months:t.months,weeks:t.weeks,days:t.days});n=En(r,e.timeZone)}else n=vn(e)-e.offset;n+=t.milliseconds||0,n+=(t.seconds||0)*1e3,n+=(t.minutes||0)*6e4,n+=(t.hours||0)*36e5;let r=On(n,e.timeZone);return jn(r,e.calendar)}function er(e,t){return $n(e,Hn(t))}function tr(e,t,n,r){switch(t){case`hour`:{let t=0,i=23;if(r?.hourCycle===12){let n=e.hour>=12;t=n?12:0,i=n?23:11}let a=An(e),o=jn(Gn(a,{hour:t}),new Yt),s=[En(o,e.timeZone,`earlier`),En(o,e.timeZone,`later`)].filter(t=>On(t,e.timeZone).day===o.day)[0],c=jn(Gn(a,{hour:i}),new Yt),l=[En(c,e.timeZone,`earlier`),En(c,e.timeZone,`later`)].filter(t=>On(t,e.timeZone).day===c.day).pop(),u=vn(e)-e.offset,d=Math.floor(u/Fn),f=u%Fn;return u=Qn(d,n,Math.floor(s/Fn),Math.floor(l/Fn),r?.round)*Fn+f,jn(On(u,e.timeZone),e.calendar)}case`minute`:case`second`:case`millisecond`:return Zn(e,t,n,r);case`era`:case`year`:case`month`:case`day`:{let i=Xn(An(e),t,n,r),a=En(i,e.timeZone);return jn(On(a,e.timeZone),e.calendar)}default:throw Error(`Unsupported field `+t)}}function nr(e,t,n){let r=An(e),i=Gn(Wn(r,t),t);if(i.compare(r)===0)return e;let a=En(i,e.timeZone,n);return jn(On(a,e.timeZone),e.calendar)}const rr=[`hours`,`minutes`,`seconds`],ir=[`years`,`months`,`weeks`,`days`,...rr];function ar(e){return`${String(e.hour).padStart(2,`0`)}:${String(e.minute).padStart(2,`0`)}:${String(e.second).padStart(2,`0`)}${e.millisecond?String(e.millisecond/1e3).slice(1):``}`}function or(e){let t=jn(e,new Yt),n;return n=t.era===`BC`?t.year===1?`0000`:`-`+String(Math.abs(1-t.year)).padStart(6,`00`):String(t.year).padStart(4,`0`),`${n}-${String(t.month).padStart(2,`0`)}-${String(t.day).padStart(2,`0`)}`}function sr(e){return`${or(e)}T${ar(e)}`}function cr(e){let t=Math.sign(e)<0?`-`:`+`;e=Math.abs(e);let n=Math.floor(e/36e5),r=e%36e5/6e4;return`${t}${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`}function lr(e){return`${sr(e)}${cr(e.offset)}[${e.timeZone}]`}function ur(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function dr(e,t,n){ur(e,t),t.set(e,n)}function fr(e){let t=typeof e[0]==`object`?e.shift():new Yt,n;if(typeof e[0]==`string`)n=e.shift();else{let e=t.getEras();n=e[e.length-1]}let r=e.shift(),i=e.shift(),a=e.shift();return[t,n,r,i,a]}var pr=new WeakMap,mr=class e{copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day):new e(this.calendar,this.year,this.month,this.day)}add(e){return In(this,e)}subtract(e){return Un(this,e)}set(e){return Wn(this,e)}cycle(e,t,n){return Xn(this,e,t,n)}toDate(e){return Dn(this,e)}toString(){return or(this)}compare(e){return cn(this,e)}constructor(...e){dr(this,pr,{writable:!0,value:void 0});let[t,n,r,i,a]=fr(e);this.calendar=t,this.era=n,this.year=r,this.month=i,this.day=a,Vn(this)}},hr=new WeakMap,gr=class e{copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond):new e(this.calendar,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond)}add(e){return In(this,e)}subtract(e){return Un(this,e)}set(e){return Wn(Gn(this,e),e)}cycle(e,t,n){switch(e){case`era`:case`year`:case`month`:case`day`:return Xn(this,e,t,n);default:return Zn(this,e,t,n)}}toDate(e,t){return Dn(this,e,t)}toString(){return sr(this)}compare(e){let t=cn(this,e);return t===0?ln(this,An(e)):t}constructor(...e){dr(this,hr,{writable:!0,value:void 0});let[t,n,r,i,a]=fr(e);this.calendar=t,this.era=n,this.year=r,this.month=i,this.day=a,this.hour=e.shift()||0,this.minute=e.shift()||0,this.second=e.shift()||0,this.millisecond=e.shift()||0,Vn(this)}},_r=new WeakMap,vr=class e{copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond):new e(this.calendar,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond)}add(e){return $n(this,e)}subtract(e){return er(this,e)}set(e,t){return nr(this,e,t)}cycle(e,t,n){return tr(this,e,t,n)}toDate(){return Nn(this)}toString(){return lr(this)}toAbsoluteString(){return this.toDate().toISOString()}compare(e){return this.toDate().getTime()-Mn(e,this.timeZone).toDate().getTime()}constructor(...e){dr(this,_r,{writable:!0,value:void 0});let[t,n,r,i,a]=fr(e),o=e.shift(),s=e.shift();this.calendar=t,this.era=n,this.year=r,this.month=i,this.day=a,this.timeZone=o,this.offset=s,this.hour=e.shift()||0,this.minute=e.shift()||0,this.second=e.shift()||0,this.millisecond=e.shift()||0,Vn(this)}};const yr=[[1868,9,8],[1912,7,30],[1926,12,25],[1989,1,8],[2019,5,1]],br=[[1912,7,29],[1926,12,24],[1989,1,7],[2019,4,30]],xr=[1867,1911,1925,1988,2018],Sr=[`meiji`,`taisho`,`showa`,`heisei`,`reiwa`];function Cr(e){let t=yr.findIndex(([t,n,r])=>e.year=0){let[,n,r]=yr[t];e.month=Math.max(n,e.month),e.month===n&&(e.day=Math.max(r,e.day))}}getEras(){return Sr}getYearsInEra(e){let t=Sr.indexOf(e.era),n=yr[t],r=yr[t+1];if(r==null)return 9999-n[0]+1;let i=r[0]-n[0];return(e.month0?[`minguo`,t]:[`before_minguo`,1-t]}var Nr=class extends Yt{fromJulianDay(e){let t=super.fromJulianDay(e),n=Kt(t.era,t.year),[r,i]=Mr(n);return new mr(this,r,i,t.month,t.day)}toJulianDay(e){return super.toJulianDay(Pr(e))}getEras(){return[`before_minguo`,`minguo`]}balanceDate(e){let[t,n]=Mr(jr(e));e.era=t,e.year=n}isInverseEra(e){return e.era===`before_minguo`}getDaysInMonth(e){return super.getDaysInMonth(Pr(e))}getYearsInEra(e){return e.era===`before_minguo`?9999:9999-Ar}constructor(...e){super(...e),this.identifier=`roc`}};function Pr(e){let[t,n]=qt(jr(e));return new mr(t,n,e.month,e.day)}const Fr=1948320,Ir=[0,31,62,93,124,155,186,216,246,276,306,336];var Lr=class{fromJulianDay(e){let t=e-Fr,n=1+Math.floor((33*t+3)/12053),r=365*(n-1)+Math.floor((8*n+21)/33),i=t-r,a=i<216?Math.floor(i/31):Math.floor((i-6)/30),o=i-Ir[a]+1;return new mr(this,n,a+1,o)}toJulianDay(e){let t=Fr-1+365*(e.year-1)+Math.floor((8*e.year+21)/33);return t+=Ir[e.month-1],t+=e.day,t}getMonthsInYear(){return 12}getDaysInMonth(e){if(e.month<=6)return 31;if(e.month<=11)return 30;let t=Ht(25*e.year+11,33)<8;return t?30:29}getEras(){return[`AP`]}getYearsInEra(){return 9377}constructor(){this.identifier=`persian`}};const Rr=78,zr=80;var Br=class extends Yt{fromJulianDay(e){let t=super.fromJulianDay(e),n=t.year-Rr,r=e-Wt(t.era,t.year,1,1),i;r=8&&(a+=(e.month-7)*30),a+=e.day-1,a)}getDaysInMonth(e){return e.month===1&&Gt(e.year+Rr)||e.month>=2&&e.month<=6?31:30}getYearsInEra(){return 9919}getEras(){return[`saka`]}balanceDate(){}constructor(...e){super(...e),this.identifier=`indian`}};const Vr=1948440,Hr=1948439,Ur=1300,Wr=1600,Gr=460322;function Kr(e,t,n,r){return r+Math.ceil(29.5*(n-1))+(t-1)*354+Math.floor((3+11*t)/30)+e-1}function qr(e,t,n){let r=Math.floor((30*(n-t)+10646)/10631),i=Math.min(12,Math.ceil((n-(29+Kr(t,r,1,1)))/29.5)+1),a=n-Kr(t,r,i,1)+1;return new mr(e,r,i,a)}function Jr(e){return(14+11*e)%30<11}var Yr=class{fromJulianDay(e){return qr(this,Vr,e)}toJulianDay(e){return Kr(Vr,e.year,e.month,e.day)}getDaysInMonth(e){let t=29+e.month%2;return e.month===12&&Jr(e.year)&&t++,t}getMonthsInYear(){return 12}getDaysInYear(e){return Jr(e.year)?355:354}getYearsInEra(){return 9665}getEras(){return[`AH`]}constructor(){this.identifier=`islamic-civil`}},Xr=class extends Yr{fromJulianDay(e){return qr(this,Hr,e)}toJulianDay(e){return Kr(Hr,e.year,e.month,e.day)}constructor(...e){super(...e),this.identifier=`islamic-tbla`}};const Zr=`qgpUDckO1AbqBmwDrQpVBakGkgepC9QF2gpcBS0NlQZKB1QLagutBa4ETwoXBYsGpQbVCtYCWwmdBE0KJg2VDawFtgm6AlsKKwWVCsoG6Qr0AnYJtgJWCcoKpAvSC9kF3AJtCU0FpQpSC6ULtAW2CVcFlwJLBaMGUgdlC2oFqworBZUMSg2lDcoF1gpXCasESwmlClILagt1BXYCtwhbBFUFqQW0BdoJ3QRuAjYJqgpUDbIN1QXaAlsJqwRVCkkLZAtxC7QFtQpVCiUNkg7JDtQG6QprCasEkwpJDaQNsg25CroEWworBZUKKgtVC1wFvQQ9Ah0JlQpKC1oLbQW2AjsJmwRVBqkGVAdqC2wFrQpVBSkLkgupC9QF2gpaBasKlQVJB2QHqgu1BbYCVgpNDiULUgtqC60FrgIvCZcESwalBqwG1gpdBZ0ETQoWDZUNqgW1BdoCWwmtBJUFygbkBuoK9QS2AlYJqgpUC9IL2QXqAm0JrQSVCkoLpQuyBbUJ1gSXCkcFkwZJB1ULagVrCisFiwpGDaMNygXWCtsEawJLCaUKUgtpC3UFdgG3CFsCKwVlBbQF2gntBG0BtgimClINqQ3UBdoKWwmrBFMGKQdiB6kLsgW1ClUFJQuSDckO0gbpCmsFqwRVCikNVA2qDbUJugQ7CpsETQqqCtUK2gJdCV4ELgqaDFUNsga5BroEXQotBZUKUguoC7QLuQXaAloJSgukDdEO6AZqC20FNQWVBkoNqA3UDdoGWwWdAisGFQtKC5ULqgWuCi4JjwwnBZUGqgbWCl0FnQI=`;let Qr,$r;function ei(e){return Gr+$r[e-Ur]}function ti(e,t){let n=e-Ur,r=1<<11-(t-1);return(Qr[n]&r)===0?29:30}function ni(e,t){let n=ei(e);for(let r=1;rr)return super.fromJulianDay(e);{let e=Ur-1,n=1,r=1;for(;r>0;){e++,r=t-ei(e)+1;let i=ri(e);if(r===i){n=12;break}else if(rt;)r-=t,n++,t=ti(e,n);break}}return new mr(this,e,n,t-ni(e,n)+1)}}toJulianDay(e){return e.yearWr?super.toJulianDay(e):Vr+ni(e.year,e.month)+(e.day-1)}getDaysInMonth(e){return e.yearWr?super.getDaysInMonth(e):ti(e.year,e.month)}getDaysInYear(e){return e.yearWr?super.getDaysInYear(e):ri(e.year)}constructor(){if(super(),this.identifier=`islamic-umalqura`,Qr||=new Uint16Array(Uint8Array.from(atob(Zr),e=>e.charCodeAt(0)).buffer),!$r){$r=new Uint32Array(Wr-Ur+1);let e=0;for(let t=Ur;t<=Wr;t++){$r[t-Ur]=e;for(let n=1;n<=12;n++)e+=ti(t,n)}}}};const ai=347997,oi=1080,si=24*oi,ci=29,li=12*oi+793,ui=ci*si+li;function di(e){return Ht(e*7+1,19)<7}function fi(e){let t=Math.floor((235*e-234)/19),n=12084+13753*t,r=t*29+Math.floor(n/25920);return Ht(3*(r+1),7)<3&&(r+=1),r}function pi(e){let t=fi(e-1),n=fi(e),r=fi(e+1);return r-n===356?2:n-t===382?1:0}function mi(e){return fi(e)+pi(e)}function hi(e){return mi(e+1)-mi(e)}function gi(e){let t=hi(e);switch(t>380&&(t-=30),t){case 353:return 0;case 354:return 1;case 355:return 2}}function _i(e,t){if(t>=6&&!di(e)&&t++,t===4||t===7||t===9||t===11||t===13)return 29;let n=gi(e);return t===2?n===2?30:29:t===3?n===0?29:30:t===6?di(e)?30:0:30}var vi=class{fromJulianDay(e){let t=e-ai,n=t*si/ui,r=Math.floor((19*n+234)/235)+1,i=mi(r),a=Math.floor(t-i);for(;a<1;)r--,i=mi(r),a=Math.floor(t-i);let o=1,s=0;for(;s6?e.month--:!di(t.year)&&di(e.year)&&t.month>6&&e.month++)}constructor(){this.identifier=`hebrew`}};const yi=1723856,bi=1824665,xi=5500;function Si(e,t,n,r){return e+365*t+Math.floor(t/4)+30*(n-1)+r-1}function Ci(e,t){let n=Math.floor(4*(t-e)/1461),r=1+Math.floor((t-Si(e,n,1,1))/30),i=t+1-Si(e,n,r,1);return[n,r,i]}function wi(e){return Math.floor(e%4/3)}function Ti(e,t){return t%13==0?wi(e)+5:30}var Ei=class{fromJulianDay(e){let[t,n,r]=Ci(yi,e),i=`AM`;return t<=0&&(i=`AA`,t+=xi),new mr(this,i,t,n,r)}toJulianDay(e){let t=e.year;return e.era===`AA`&&(t-=xi),Si(yi,t,e.month,e.day)}getDaysInMonth(e){return Ti(e.year,e.month)}getMonthsInYear(){return 13}getDaysInYear(e){return 365+wi(e.year)}getYearsInEra(e){return e.era===`AA`?9999:9991}getEras(){return[`AA`,`AM`]}constructor(){this.identifier=`ethiopic`}},Di=class extends Ei{fromJulianDay(e){let[t,n,r]=Ci(yi,e);return t+=xi,new mr(this,`AA`,t,n,r)}getEras(){return[`AA`]}getYearsInEra(){return 9999}constructor(...e){super(...e),this.identifier=`ethioaa`}},Oi=class extends Ei{fromJulianDay(e){let[t,n,r]=Ci(bi,e),i=`CE`;return t<=0&&(i=`BCE`,t=1-t),new mr(this,i,t,n,r)}toJulianDay(e){let t=e.year;return e.era===`BCE`&&(t=1-t),Si(bi,t,e.month,e.day)}getDaysInMonth(e){let t=e.year;return e.era===`BCE`&&(t=1-t),Ti(t,e.month)}isInverseEra(e){return e.era===`BCE`}balanceDate(e){e.year<=0&&(e.era=e.era===`BCE`?`CE`:`BCE`,e.year=1-e.year)}getEras(){return[`BCE`,`CE`]}getYearsInEra(e){return e.era===`BCE`?9999:9715}constructor(...e){super(...e),this.identifier=`coptic`}};function ki(e){switch(e){case`buddhist`:return new Or;case`ethiopic`:return new Ei;case`ethioaa`:return new Di;case`coptic`:return new Oi;case`hebrew`:return new vi;case`indian`:return new Br;case`islamic-civil`:return new Yr;case`islamic-tbla`:return new Xr;case`islamic-umalqura`:return new ii;case`japanese`:return new Tr;case`persian`:return new Lr;case`roc`:return new Nr;case`gregory`:default:return new Yt}}let Ai=new Map;var ji=class{format(e){return this.formatter.format(e)}formatToParts(e){return this.formatter.formatToParts(e)}formatRange(e,t){if(typeof this.formatter.formatRange==`function`)return this.formatter.formatRange(e,t);if(t= start date`);return`${this.formatter.format(e)} \u{2013} ${this.formatter.format(t)}`}formatRangeToParts(e,t){if(typeof this.formatter.formatRangeToParts==`function`)return this.formatter.formatRangeToParts(e,t);if(t= start date`);let n=this.formatter.formatToParts(e),r=this.formatter.formatToParts(t);return[...n.map(e=>({...e,source:`startRange`})),{type:`literal`,value:` – `,source:`shared`},...r.map(e=>({...e,source:`endRange`}))]}resolvedOptions(){let e=this.formatter.resolvedOptions();return Li()&&(this.resolvedHourCycle||=Ri(e.locale,this.options),e.hourCycle=this.resolvedHourCycle,e.hour12=this.resolvedHourCycle===`h11`||this.resolvedHourCycle===`h12`),e.calendar===`ethiopic-amete-alem`&&(e.calendar=`ethioaa`),e}constructor(e,t={}){this.formatter=Ni(e,t),this.options=t}};const Mi={true:{ja:`h11`},false:{}};function Ni(e,t={}){if(typeof t.hour12==`boolean`&&Fi()){t={...t};let n=Mi[String(t.hour12)][e.split(`-`)[0]],r=t.hour12?`h12`:`h23`;t.hourCycle=n??r,delete t.hour12}let n=e+(t?Object.entries(t).sort((e,t)=>e[0]e.type===`hour`).value,10),i=parseInt(n.formatToParts(new Date(2020,2,3,23)).find(e=>e.type===`hour`).value,10);if(r===0&&i===23)return`h23`;if(r===24&&i===23)return`h24`;if(r===0&&i===11)return`h11`;if(r===12&&i===11)return`h12`;throw Error(`Unexpected hour cycle result`)}let zi=new Map,Bi=!1;try{Bi=new Intl.NumberFormat(`de-DE`,{signDisplay:`exceptZero`}).resolvedOptions().signDisplay===`exceptZero`}catch{}let Vi=!1;try{Vi=new Intl.NumberFormat(`de-DE`,{style:`unit`,unit:`degree`}).resolvedOptions().style===`unit`}catch{}const Hi={degree:{narrow:{default:`°`,"ja-JP":` 度`,"zh-TW":`度`,"sl-SI":` °`}}};var Ui=class{format(e){let t=``;if(t=!Bi&&this.options.signDisplay!=null?Gi(this.numberFormatter,this.options.signDisplay,e):this.numberFormatter.format(e),this.options.style===`unit`&&!Vi){var n;let{unit:e,unitDisplay:r=`short`,locale:i}=this.resolvedOptions();if(!e)return t;let a=(n=Hi[e])?.[r];t+=a[i]||a.default}return t}formatToParts(e){return this.numberFormatter.formatToParts(e)}formatRange(e,t){if(typeof this.numberFormatter.formatRange==`function`)return this.numberFormatter.formatRange(e,t);if(t= start date`);return`${this.format(e)} \u{2013} ${this.format(t)}`}formatRangeToParts(e,t){if(typeof this.numberFormatter.formatRangeToParts==`function`)return this.numberFormatter.formatRangeToParts(e,t);if(t= start date`);let n=this.numberFormatter.formatToParts(e),r=this.numberFormatter.formatToParts(t);return[...n.map(e=>({...e,source:`startRange`})),{type:`literal`,value:` – `,source:`shared`},...r.map(e=>({...e,source:`endRange`}))]}resolvedOptions(){let e=this.numberFormatter.resolvedOptions();return!Bi&&this.options.signDisplay!=null&&(e={...e,signDisplay:this.options.signDisplay}),!Vi&&this.options.style===`unit`&&(e={...e,style:`unit`,unit:this.options.unit,unitDisplay:this.options.unitDisplay}),e}constructor(e,t={}){this.numberFormatter=Wi(e,t),this.options=t}};function Wi(e,t={}){let{numberingSystem:n}=t;if(n&&e.includes(`-nu-`)&&(e.includes(`-u-`)||(e+=`-u-`),e+=`-nu-${n}`),t.style===`unit`&&!Vi){var r;let{unit:e,unitDisplay:n=`short`}=t;if(!e)throw Error(`unit option must be provided with style: "unit"`);if(!(r=Hi[e])?.[n])throw Error(`Unsupported unit ${e} with unitDisplay = ${n}`);t={...t,style:`decimal`}}let i=e+(t?Object.entries(t).sort((e,t)=>e[0]0||Object.is(n,0):t===`exceptZero`&&(Object.is(n,-0)||Object.is(n,0)?n=Math.abs(n):r=n>0),r){let t=e.format(-n),r=e.format(n),i=t.replace(r,``).replace(/\u200e|\u061C/,``);[...i].length!==1&&console.warn(`@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case`);let a=t.replace(r,`!!!`).replace(i,`+`).replace(`!!!`,r);return a}else return e.format(n)}}const Ki=RegExp(`^.*\\(.*\\).*$`),qi=[`latn`,`arab`,`hanidec`,`deva`,`beng`];var Ji=class{parse(e){return Xi(this.locale,this.options,e).parse(e)}isValidPartialNumber(e,t,n){return Xi(this.locale,this.options,e).isValidPartialNumber(e,t,n)}getNumberingSystem(e){return Xi(this.locale,this.options,e).options.numberingSystem}constructor(e,t={}){this.locale=e,this.options=t}};const Yi=new Map;function Xi(e,t,n){let r=Zi(e,t);if(!e.includes(`-nu-`)&&!r.isValidPartialNumber(n)){for(let i of qi)if(i!==r.options.numberingSystem){let r=Zi(e+(e.includes(`-u-`)?`-nu-`:`-u-nu-`)+i,t);if(r.isValidPartialNumber(n))return r}}return r}function Zi(e,t){let n=e+(t?Object.entries(t).sort((e,t)=>e[0]-1&&(t=`-${t}`)}let n=t?+t:NaN;if(isNaN(n))return NaN;if(this.options.style===`percent`){var r,i;let e={...this.options,style:`decimal`,minimumFractionDigits:Math.min(((r=this.options.minimumFractionDigits)??0)+2,20),maximumFractionDigits:Math.min(((i=this.options.maximumFractionDigits)??0)+2,20)};return new Ji(this.locale,e).parse(new Ui(this.locale,e).format(n))}return this.options.currencySign===`accounting`&&Ki.test(e)&&(n=-1*n),n}sanitize(e){return e=e.replace(this.symbols.literals,``),this.symbols.minusSign&&(e=e.replace(`-`,this.symbols.minusSign)),this.options.numberingSystem===`arab`&&(this.symbols.decimal&&(e=e.replace(`,`,this.symbols.decimal),e=e.replace(`،`,this.symbols.decimal)),this.symbols.group&&(e=na(e,`.`,this.symbols.group))),this.options.locale===`fr-FR`&&(e=na(e,`.`,` `)),e}isValidPartialNumber(e,t=-1/0,n=1/0){return e=this.sanitize(e),this.symbols.minusSign&&e.startsWith(this.symbols.minusSign)&&t<0?e=e.slice(this.symbols.minusSign.length):this.symbols.plusSign&&e.startsWith(this.symbols.plusSign)&&n>0&&(e=e.slice(this.symbols.plusSign.length)),this.symbols.group&&e.startsWith(this.symbols.group)||this.symbols.decimal&&e.indexOf(this.symbols.decimal)>-1&&this.options.maximumFractionDigits===0?!1:(this.symbols.group&&(e=na(e,this.symbols.group,``)),e=e.replace(this.symbols.numeral,``),this.symbols.decimal&&(e=e.replace(this.symbols.decimal,``)),e.length===0)}constructor(e,t={}){this.locale=e,this.formatter=new Intl.NumberFormat(e,t),this.options=this.formatter.resolvedOptions(),this.symbols=ta(e,this.formatter,this.options,t);var n,r;this.options.style===`percent`&&(((n=this.options.minimumFractionDigits)??0)>18||((r=this.options.maximumFractionDigits)??0)>18)&&console.warn(`NumberParser cannot handle percentages with greater than 18 decimal places, please reduce the number in your options.`)}};const $i=new Set([`decimal`,`fraction`,`integer`,`minusSign`,`plusSign`,`group`]),ea=[0,4,2,1,11,20,3,7,100,21,.1,1.1];function ta(e,t,n,r){var i,a,o,s;let c=new Intl.NumberFormat(e,{...n,minimumSignificantDigits:1,maximumSignificantDigits:21,roundingIncrement:1,roundingPriority:`auto`,roundingMode:`halfExpand`}),l=c.formatToParts(-10000.111),u=c.formatToParts(10000.111),d=ea.map(e=>c.formatToParts(e));var f;let p=(f=(i=l.find(e=>e.type===`minusSign`))?.value)??`-`,m=(a=u.find(e=>e.type===`plusSign`))?.value;!m&&(r?.signDisplay===`exceptZero`||r?.signDisplay===`always`)&&(m=`+`);let h=new Intl.NumberFormat(e,{...n,minimumFractionDigits:2,maximumFractionDigits:2}).formatToParts(.001),g=(o=h.find(e=>e.type===`decimal`))?.value,_=(s=l.find(e=>e.type===`group`))?.value,v=l.filter(e=>!$i.has(e.type)).map(e=>ra(e.value)),y=d.flatMap(e=>e.filter(e=>!$i.has(e.type)).map(e=>ra(e.value))),b=[...new Set([...v,...y])].sort((e,t)=>t.length-e.length),x=b.length===0?RegExp(`[\\p{White_Space}]`,`gu`):RegExp(`${b.join(`|`)}|[\\p{White_Space}]`,`gu`),S=[...new Intl.NumberFormat(n.locale,{useGrouping:!1}).format(9876543210)].reverse(),C=new Map(S.map((e,t)=>[e,t])),w=RegExp(`[${S.join(``)}]`,`g`),T=e=>String(C.get(e));return{minusSign:p,plusSign:m,decimal:g,group:_,literals:x,numeral:w,index:T}}function na(e,t,n){return e.replaceAll?e.replaceAll(t,n):e.split(t).join(n)}function ra(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function ia(e,t){let n=[];for(let r=0;r0}function fa(e,t){return e.compare(t)<=0}function pa(e,t){return e.compare(t)>=0}function ma(e,t,n){return pa(e,t)&&fa(e,n)}function ha(e,t,n){return da(e,t)&&ua(e,n)}function ga(e,t,n){let r=an(e,n);return t>r?e.subtract({days:r+7-t}):t===r?e:e.subtract({days:r-t})}function _a(e,t,n){let r=an(e,n),i=t===0?6:t-1;return r===i?e:r>i?e.add({days:7-r+i}):e.add({days:i-r})}function va(e,t,n,r){if(n===void 0&&r===void 0)return!0;let i=e.add({days:1});if(r!=null&&r(i)||n!=null&&n(i))return!1;let a=t;for(;i.compare(a)<0;)if(i=i.add({days:1}),r!=null&&r(i)||n!=null&&n(i))return!1;return!0}function ya(e,t){let n=[],r=e.add({days:1}),i=t;for(;r.compare(i)<0;)n.push(r),r=r.add({days:1});return n}function ba(e){let{dateObj:t,weekStartsOn:n,fixedWeeks:r,locale:i}=e,a=la(t),o=Array.from({length:a},(e,n)=>t.set({day:n+1})),s=pn(t),c=mn(t),l=ga(s,n,i),u=_a(c,n,i),d=ya(l.subtract({days:1}),s),f=ya(c,u.add({days:1})),p=d.length+o.length+f.length;if(r&&p<42){let e=42-p,n=f[f.length-1];n||=mn(t);let r=Array.from({length:e},(e,t)=>{let r=t+1;return n.add({days:r})});f.push(...r)}let m=d.concat(o,f),h=ia(m,7);return{value:t,cells:m,rows:h}}function xa(e){let{numberOfMonths:t,dateObj:n,...r}=e,i=[];if(!t||t===1)return i.push(ba({...r,dateObj:n})),i;i.push(ba({...r,dateObj:n}));for(let e=1;e{let n=T(r,t);if(n||n===null)return n;throw Error(`Injection \`${r.toString()}\` not found. Component must be used within ${Array.isArray(e)?`one of the following components: ${e.join(`, `)}`:`\`${e}\``}`)},e=>(se(r,e),e)]}function Sa(e,t,n){let r=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),r.dispatchEvent(i)}function Ca(e,t=-1/0,n=1/0){return Math.min(n,Math.max(t,e))}function wa(e,t){let n=e,r=t.toString(),i=r.indexOf(`.`),a=i>=0?r.length-i:0;if(a>0){let e=10**a;n=Math.round(n*e)/e}return n}function Ta(e,t,n,r){t=Number(t),n=Number(n);let i=(e-(Number.isNaN(t)?0:t))%r,a=wa(Math.abs(i)*2>=r?e+Math.sign(i)*(r-Math.abs(i)):e-i,r);return Number.isNaN(t)?!Number.isNaN(n)&&a>n&&(a=Math.floor(wa(n/r,r))*r):an&&(a=t+Math.floor(wa((n-t)/r,r))*r),a=wa(a,r),a}function Ea(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var Da=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n};const Oa=Ea(Da);function ka(e,t){if(e.length!==t.length)return!1;for(let n=0;nOa(e,t)),i=e.findIndex(e=>Oa(e,n));if(r===-1||i===-1)return[];let[a,o]=[r,i].sort((e,t)=>e-t);return e.slice(a,o+1)}const ja=typeof document<`u`;function Ma(e){return e==null}function Na(e){let{defaultValue:t,defaultPlaceholder:n,granularity:r=`day`,locale:i=`en`}=e;if(Array.isArray(t)&&t.length)return t.at(-1).copy();if(t&&!Array.isArray(t))return t.copy();if(n)return n.copy();let a=new Date,o=a.getFullYear(),s=a.getMonth()+1,c=a.getDate(),l=[`hour`,`minute`,`second`],u=new ji(i),d=ki(u.resolvedOptions().calendar);return l.includes(r??`day`)?jn(new gr(o,s,c,0,0,0),d):jn(new mr(o,s,c),d)}const Pa=`ach.af.am.an.ar.ast.az.be.bg.bn.br.bs.ca.cak.ckb.cs.cy.da.de.dsb.el.en.eo.es.et.eu.fa.ff.fi.fr.fy.ga.gd.gl.he.hr.hsb.hu.ia.id.it.ja.ka.kk.kn.ko.lb.lo.lt.lv.meh.ml.ms.nl.nn.no.oc.pl.pt.rm.ro.ru.sc.scn.sk.sl.sr.sv.szl.tg.th.tr.uk.zh-CN.zh-TW`.split(`.`),Fa=[`year`,`month`,`day`],Ia={ach:{year:`mwaka`,month:`dwe`,day:`nino`},af:{year:`jjjj`,month:`mm`,day:`dd`},am:{year:`ዓዓዓዓ`,month:`ሚሜ`,day:`ቀቀ`},an:{year:`aaaa`,month:`mm`,day:`dd`},ar:{year:`سنة`,month:`شهر`,day:`يوم`},ast:{year:`aaaa`,month:`mm`,day:`dd`},az:{year:`iiii`,month:`aa`,day:`gg`},be:{year:`гггг`,month:`мм`,day:`дд`},bg:{year:`гггг`,month:`мм`,day:`дд`},bn:{year:`yyyy`,month:`মিমি`,day:`dd`},br:{year:`bbbb`,month:`mm`,day:`dd`},bs:{year:`gggg`,month:`mm`,day:`dd`},ca:{year:`aaaa`,month:`mm`,day:`dd`},cak:{year:`jjjj`,month:`ii`,day:`q'q'`},ckb:{year:`ساڵ`,month:`مانگ`,day:`ڕۆژ`},cs:{year:`rrrr`,month:`mm`,day:`dd`},cy:{year:`bbbb`,month:`mm`,day:`dd`},da:{year:`åååå`,month:`mm`,day:`dd`},de:{year:`jjjj`,month:`mm`,day:`tt`},dsb:{year:`llll`,month:`mm`,day:`źź`},el:{year:`εεεε`,month:`μμ`,day:`ηη`},en:{year:`yyyy`,month:`mm`,day:`dd`},eo:{year:`jjjj`,month:`mm`,day:`tt`},es:{year:`aaaa`,month:`mm`,day:`dd`},et:{year:`aaaa`,month:`kk`,day:`pp`},eu:{year:`uuuu`,month:`hh`,day:`ee`},fa:{year:`سال`,month:`ماه`,day:`روز`},ff:{year:`hhhh`,month:`ll`,day:`ññ`},fi:{year:`vvvv`,month:`kk`,day:`pp`},fr:{year:`aaaa`,month:`mm`,day:`jj`},fy:{year:`jjjj`,month:`mm`,day:`dd`},ga:{year:`bbbb`,month:`mm`,day:`ll`},gd:{year:`bbbb`,month:`mm`,day:`ll`},gl:{year:`aaaa`,month:`mm`,day:`dd`},he:{year:`שנה`,month:`חודש`,day:`יום`},hr:{year:`gggg`,month:`mm`,day:`dd`},hsb:{year:`llll`,month:`mm`,day:`dd`},hu:{year:`éééé`,month:`hh`,day:`nn`},ia:{year:`aaaa`,month:`mm`,day:`dd`},id:{year:`tttt`,month:`bb`,day:`hh`},it:{year:`aaaa`,month:`mm`,day:`gg`},ja:{year:` 年 `,month:`月`,day:`日`},ka:{year:`წწწწ`,month:`თთ`,day:`რრ`},kk:{year:`жжжж`,month:`аа`,day:`кк`},kn:{year:`ವವವವ`,month:`ಮಿಮೀ`,day:`ದಿದಿ`},ko:{year:`연도`,month:`월`,day:`일`},lb:{year:`jjjj`,month:`mm`,day:`dd`},lo:{year:`ປປປປ`,month:`ດດ`,day:`ວວ`},lt:{year:`mmmm`,month:`mm`,day:`dd`},lv:{year:`gggg`,month:`mm`,day:`dd`},meh:{year:`aaaa`,month:`mm`,day:`dd`},ml:{year:`വർഷം`,month:`മാസം`,day:`തീയതി`},ms:{year:`tttt`,month:`mm`,day:`hh`},nl:{year:`jjjj`,month:`mm`,day:`dd`},nn:{year:`åååå`,month:`mm`,day:`dd`},no:{year:`åååå`,month:`mm`,day:`dd`},oc:{year:`aaaa`,month:`mm`,day:`jj`},pl:{year:`rrrr`,month:`mm`,day:`dd`},pt:{year:`aaaa`,month:`mm`,day:`dd`},rm:{year:`oooo`,month:`mm`,day:`dd`},ro:{year:`aaaa`,month:`ll`,day:`zz`},ru:{year:`гггг`,month:`мм`,day:`дд`},sc:{year:`aaaa`,month:`mm`,day:`dd`},scn:{year:`aaaa`,month:`mm`,day:`jj`},sk:{year:`rrrr`,month:`mm`,day:`dd`},sl:{year:`llll`,month:`mm`,day:`dd`},sr:{year:`гггг`,month:`мм`,day:`дд`},sv:{year:`åååå`,month:`mm`,day:`dd`},szl:{year:`rrrr`,month:`mm`,day:`dd`},tg:{year:`сссс`,month:`мм`,day:`рр`},th:{year:`ปปปป`,month:`ดด`,day:`วว`},tr:{year:`yyyy`,month:`aa`,day:`gg`},uk:{year:`рррр`,month:`мм`,day:`дд`},"zh-CN":{year:`年`,month:`月`,day:`日`},"zh-TW":{year:`年`,month:`月`,day:`日`}};function La(e){if(za(e))return Ia[e];{let t=Ua(e);return za(t)?Ia[t]:Ia.en}}function Ra(e,t,n){return Ba(e)?La(n)[e]:Ha(e)?t:Va(e)?`––`:``}function za(e){return Pa.includes(e)}function Ba(e){return Fa.includes(e)}function Va(e){return e===`hour`||e===`minute`||e===`second`}function Ha(e){return e===`era`||e===`dayPeriod`}function Ua(e){return Intl.Locale?new Intl.Locale(e).language:e.split(`-`)[0]}const Wa=[`day`,`month`,`year`],Ga=[`hour`,`minute`,`second`,`dayPeriod`],Ka=[...Wa,...Ga];function qa(e){return Wa.includes(e)}function Ja(e){return Ka.includes(e)}function Ya(e,t){let n={year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,timeZoneName:`short`,hourCycle:t===24?`h24`:void 0,hour12:t===24?!1:void 0};return e===`day`&&(delete n.second,delete n.hour,delete n.minute,delete n.timeZoneName),e===`hour`&&(delete n.minute,delete n.second),e===`minute`&&delete n.second,n}function Xa(e){let t=e.querySelector(`[data-selected]`);if(t)return t.focus();let n=e.querySelector(`[data-today]`);if(n)return n.focus();let r=e.querySelector(`[data-radix-vue-calendar-day]`);if(r)return r.focus()}function Za(e,t){var n;let r=he();return U(()=>{r.value=e()},{...t,flush:(n=void 0,`sync`)}),le(r)}function Qa(e,t){let n,r,i,a=R(!0),o=()=>{a.value=!0,i()};H(e,o,{flush:`sync`});let s=typeof t==`function`?t:t.get,c=typeof t==`function`?void 0:t.set,l=h((e,t)=>(r=e,i=t,{get(){return a.value&&(n=s(),a.value=!1),r(),n},set(e){c?.(e)}}));return Object.isExtensible(l)&&(l.trigger=o),l}function $a(e){return x()?(ie(e),!0):!1}function eo(){let e=new Set,t=t=>{e.delete(t)};return{on:n=>{e.add(n);let r=()=>t(n);return $a(r),{off:r}},off:t,trigger:(...t)=>Promise.all(Array.from(e).map(e=>e(...t)))}}function to(e){let t=!1,n,r=_(!0);return(...i)=>(t||(n=r.run(()=>e(...i)),t=!0),n)}function no(e){let t=0,n,r,i=()=>{--t,r&&t<=0&&(r.stop(),n=void 0,r=void 0)};return(...a)=>(t+=1,n||(r=_(!0),n=r.run(()=>e(...a))),$a(i),n)}function ro(e){return typeof e==`function`?e():V(e)}function io(e){if(!E(e))return ce(e);let t=new Proxy({},{get(t,n,r){return V(Reflect.get(e.value,n,r))},set(t,n,r){return E(e.value[n])&&!E(r)?e.value[n].value=r:e.value[n]=r,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return ce(t)}function ao(e){return io(s(e))}const oo=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;const so=e=>typeof e<`u`,co=e=>e!=null,lo=Object.prototype.toString,uo=e=>lo.call(e)===`[object Object]`,fo=()=>{},po=mo();function mo(){var e,t;return oo&&(e=window==null?void 0:window.navigator)?.userAgent&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(t=window==null?void 0:window.navigator)?.maxTouchPoints>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function ho(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}function go(e,t={}){let n,r,i=fo,a=e=>{clearTimeout(e),i(),i=fo};return o=>{let s=ro(e),c=ro(t.maxWait);return n&&a(n),s<=0||c!==void 0&&c<=0?(r&&(a(r),r=null),Promise.resolve(o())):new Promise((e,l)=>{i=t.rejectOnCancel?l:e,c&&!r&&(r=setTimeout(()=>{n&&a(n),r=null,e(o())},c)),n=setTimeout(()=>{r&&a(r),r=null,e(o())},s)})}}function _o(e){return b()}function vo(e,t=1e4){return h((n,r)=>{let i=ro(e),a,o=()=>setTimeout(()=>{i=ro(e),r()},ro(t));return $a(()=>{clearTimeout(a)}),{get(){return n(),i},set(e){i=e,r(),clearTimeout(a),a=o()}}})}function yo(e,t=200,n={}){return ho(go(t,n),e)}function bo(e,t){_o()&&ne(e,t)}function xo(e,t=!0,n){_o()?I(e,n):t?e():N(e)}function So(e,t,n={}){let{immediate:r=!0}=n,i=R(!1),a=null;function o(){a&&(clearTimeout(a),a=null)}function s(){i.value=!1,o()}function c(...n){o(),i.value=!0,a=setTimeout(()=>{i.value=!1,a=null,e(...n)},ro(t))}return r&&(i.value=!0,oo&&c()),$a(s),{isPending:le(i),start:c,stop:s}}function Co(e=1e3,t={}){let{controls:n=!1,callback:r}=t,i=So(r??fo,e,t),a=s(()=>!i.isPending.value);return n?{ready:a,...i}:a}function wo(e,t,n){let r=H(e,(...e)=>(N(()=>r()),t(...e)),n);return r}function To(e){var t;let n=ro(e);return(t=n?.$el)??n}const Eo=oo?window:void 0;function Do(...e){let t,n,r,i;if(typeof e[0]==`string`||Array.isArray(e[0])?([n,r,i]=e,t=Eo):[t,n,r,i]=e,!t)return fo;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);let a=[],o=()=>{a.forEach(e=>e()),a.length=0},s=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),c=H(()=>[To(t),ro(i)],([e,t])=>{if(o(),!e)return;let i=uo(t)?{...t}:t;a.push(...n.flatMap(t=>r.map(n=>s(e,t,n,i))))},{immediate:!0,flush:`post`}),l=()=>{c(),o()};return $a(l),l}function Oo(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function ko(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=Eo,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=Oo(t);return Do(i,a,e=>{e.repeat&&ro(s)||c(e)&&n(e)},o)}function Ao(){let e=R(!1),t=b();return t&&I(()=>{e.value=!0},t),e}function jo(e){let t=Ao();return s(()=>(t.value,!!e()))}function Mo(e,t,n={}){let{window:r=Eo,...i}=n,a,o=jo(()=>r&&`MutationObserver`in r),c=()=>{a&&(a.disconnect(),a=void 0)},l=s(()=>{let t=ro(e),n=(Array.isArray(t)?t:[t]).map(To).filter(co);return new Set(n)}),u=H(()=>l.value,e=>{c(),o.value&&e.size&&(a=new MutationObserver(t),e.forEach(e=>a.observe(e,i)))},{immediate:!0,flush:`post`}),d=()=>a?.takeRecords(),f=()=>{c(),u()};return $a(f),{isSupported:o,stop:f,takeRecords:d}}function No(e={}){var t;let{window:n=Eo,deep:r=!0,triggerOnRemoval:i=!1}=e,a=(t=e.document)??n?.document,o=()=>{var e;let t=a?.activeElement;if(r)for(;t!=null&&t.shadowRoot;)t=(e=t?.shadowRoot)?.activeElement;return t},s=R(),c=()=>{s.value=o()};return n&&(Do(n,`blur`,e=>{e.relatedTarget===null&&c()},!0),Do(n,`focus`,c,!0)),i&&Mo(a,e=>{e.filter(e=>e.removedNodes.length).map(e=>Array.from(e.removedNodes)).flat().forEach(e=>{e===s.value&&c()})},{childList:!0,subtree:!0}),c(),s}function Po(e,t={}){let{immediate:n=!0,fpsLimit:r=void 0,window:i=Eo}=t,a=R(!1),o=r?1e3/r:null,s=0,c=null;function l(t){if(!a.value||!i)return;s||=t;let n=t-s;if(o&&nnull,()=>t.proxy.$el);return oe(n.trigger),I(n.trigger),n}function Lo(e,t,n={}){let{window:r=Eo,...i}=n,a,o=jo(()=>r&&`ResizeObserver`in r),c=()=>{a&&(a.disconnect(),a=void 0)},l=s(()=>Array.isArray(e)?e.map(e=>To(e)):[To(e)]),u=H(l,e=>{if(c(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),d=()=>{c(),u()};return $a(d),{isSupported:o,stop:d}}function Ro(e,t={}){let n=No(t),r=s(()=>To(e));return{focused:s(()=>r.value&&n.value?r.value.contains(n.value):!1)}}function zo(e=Io()){let t=he(),n=()=>{let n=To(e);n&&(t.value=n.parentElement)};return xo(n),H(()=>ro(e),n),t}function J(e,t,n,r={}){var i,a,o;let{clone:c=!1,passive:l=!1,eventName:u,deep:d=!1,defaultValue:f,shouldEmit:p}=r,m=b(),h=n||m?.emit||(i=m?.$emit)?.bind(m)||(o=(a=m?.proxy)?.$emit)?.bind(m?.proxy),g=u;t||=`modelValue`,g||=`update:${t.toString()}`;let _=e=>c?typeof c==`function`?c(e):Fo(e):e,v=()=>so(e[t])?_(e[t]):f,y=e=>{p?p(e)&&h(g,e):h(g,e)};if(l){let n=v(),r=R(n),i=!1;return H(()=>e[t],e=>{i||(i=!0,r.value=_(e),N(()=>i=!1))}),H(r,n=>{!i&&(n!==e[t]||d)&&y(n)},{deep:d}),r}else return s({get(){return v()},set(e){y(e)}})}function Bo(e){return e?e.flatMap(e=>e.type===t?Bo(e.children):[e]):[]}function Y(){let e=document.activeElement;if(e==null)return null;for(;e!=null&&e.shadowRoot!=null&&e.shadowRoot.activeElement!=null;)e=e.shadowRoot.activeElement;return e}const Vo=[`INPUT`,`TEXTAREA`];function Ho(e,t,n,r={}){if(!t||r.enableIgnoredElement&&Vo.includes(t.nodeName))return null;let{arrowKeyOptions:i=`both`,attributeName:a=`[data-radix-vue-collection-item]`,itemsArray:o=[],loop:s=!0,dir:c=`ltr`,preventScroll:l=!0,focus:u=!1}=r,[d,f,p,m,h,g]=[e.key===`ArrowRight`,e.key===`ArrowLeft`,e.key===`ArrowUp`,e.key===`ArrowDown`,e.key===`Home`,e.key===`End`],_=p||m,v=d||f;if(!h&&!g&&(!_&&!v||i===`vertical`&&v||i===`horizontal`&&_))return null;let y=n?Array.from(n.querySelectorAll(a)):o;if(!y.length)return null;l&&e.preventDefault();let b=null;return v||_?b=Uo(y,t,{goForward:_?m:c===`ltr`?d:f,loop:s}):h?b=y.at(0)||null:g&&(b=y.at(-1)||null),u&&b?.focus(),b}function Uo(e,t,n,r=e.length){if(--r===0)return null;let i=e.indexOf(t),a=n.goForward?i+1:i-1;if(!n.loop&&(a<0||a>=e.length))return null;let o=(a+e.length)%e.length,s=e[o];return s?s.hasAttribute(`disabled`)&&s.getAttribute(`disabled`)!==`false`?Uo(e,s,n,r):s:null}function Wo(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)===`[object Module]`:!0}function Go(e,t,n=`.`,r){if(!Wo(t))return Go(e,{},n,r);let i=Object.assign({},t);for(let t in e){if(t===`__proto__`||t===`constructor`)continue;let a=e[t];a!=null&&(r&&r(i,t,a,n)||(Array.isArray(a)&&Array.isArray(i[t])?i[t]=[...a,...i[t]]:Wo(a)&&Wo(i[t])?i[t]=Go(a,i[t],(n?`${n}.`:``)+t.toString(),r):i[t]=a))}return i}function Ko(e){return(...t)=>t.reduce((t,n)=>Go(t,n,``,e),{})}const qo=Ko(),[Jo,Yo]=q(`ConfigProvider`),Xo=g({inheritAttrs:!1,__name:`ConfigProvider`,props:{dir:{default:`ltr`},scrollBody:{type:[Boolean,Object],default:!0},nonce:{default:void 0},useId:{type:Function,default:void 0}},setup(e){let t=e,{dir:n,scrollBody:r,nonce:i}=B(t);return Yo({dir:n,scrollBody:r,nonce:i,useId:t.useId}),(e,t)=>z(e.$slots,`default`)}});let Zo=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,Qo=(e=21)=>{let t=``,n=e;for(;n--;)t+=Zo[Math.random()*64|0];return t};const $o=no(()=>{let e=R(new Map),t=R(),n=s(()=>{for(let t of e.value.values())if(t)return!0;return!1}),r=Jo({scrollBody:R(!0)}),i=null,a=()=>{document.body.style.paddingRight=``,document.body.style.marginRight=``,document.body.style.pointerEvents=``,document.body.style.removeProperty(`--scrollbar-width`),document.body.style.overflow=t.value??``,po&&i?.(),t.value=void 0};return H(n,(e,n)=>{var o;if(!oo)return;if(!e){n&&a();return}t.value===void 0&&(t.value=document.body.style.overflow);let s=window.innerWidth-document.documentElement.clientWidth,c={padding:s,margin:0},l=(o=r.scrollBody)!=null&&o.value?typeof r.scrollBody.value==`object`?qo({padding:r.scrollBody.value.padding===!0?s:r.scrollBody.value.padding,margin:r.scrollBody.value.margin===!0?s:r.scrollBody.value.margin},c):c:{padding:0,margin:0};s>0&&(document.body.style.paddingRight=typeof l.padding==`number`?`${l.padding}px`:String(l.padding),document.body.style.marginRight=typeof l.margin==`number`?`${l.margin}px`:String(l.margin),document.body.style.setProperty(`--scrollbar-width`,`${s}px`),document.body.style.overflow=`hidden`),po&&(i=Do(document,`touchmove`,e=>ns(e),{passive:!1})),N(()=>{document.body.style.pointerEvents=`none`,document.body.style.overflow=`hidden`})},{immediate:!0,flush:`sync`}),e});function es(e){let t=Qo(6),n=$o();n.value.set(t,e??!1);let r=s({get:()=>n.value.get(t)??!1,set:e=>n.value.set(t,e)});return bo(()=>{n.value.delete(t)}),r}function ts(e){let t=window.getComputedStyle(e);if(t.overflowX===`scroll`||t.overflowY===`scroll`||t.overflowX===`auto`&&e.clientWidth1?!0:(t.preventDefault&&t.cancelable&&t.preventDefault(),!1)}const rs=`data-radix-vue-collection-item`;function os(e,t=rs){let n=e??Symbol();return{createCollection:e=>{let r=R([]);function i(){let n=To(e);return n?r.value=Array.from(n.querySelectorAll(`[${t}]:not([data-disabled])`)):r.value=[]}return re(()=>{r.value=[]}),I(i),oe(i),H(()=>e?.value,i,{immediate:!0}),se(n,r),r},injectCollection:()=>T(n,R([]))}}function ss(e){let t=R(e);function n(){return t.value}function r(e){t.value=e}function i(e,n){return new ji(t.value,n).format(e)}function a(e,t=!0){return ca(e)&&t?i(aa(e),{dateStyle:`long`,timeStyle:`long`}):i(aa(e),{dateStyle:`long`})}function o(e,n={}){return new ji(t.value,{month:`long`,year:`numeric`,...n}).format(e)}function s(e,n={}){return new ji(t.value,{month:`long`,...n}).format(e)}function c(){let e=sn(fn());return[1,2,3,4,5,6,7,8,9,10,11,12].map(t=>({label:s(aa(e.set({month:t}))),value:t}))}function l(e,n={}){return new ji(t.value,{year:`numeric`,...n}).format(e)}function u(e,n){return sa(e)?new ji(t.value,{...n,timeZone:e.timeZone}).formatToParts(aa(e)):new ji(t.value,n).formatToParts(aa(e))}function d(e,n=`narrow`){return new ji(t.value,{weekday:n}).format(e)}function f(e){var n;return(n=new ji(t.value,{hour:`numeric`,minute:`numeric`}).formatToParts(e).find(e=>e.type===`dayPeriod`))?.value===`PM`?`PM`:`AM`}let p={year:`numeric`,month:`numeric`,day:`numeric`,hour:`numeric`,minute:`numeric`,second:`numeric`};function m(e,t,n={}){let r={...p,...n},i=u(e,r).find(e=>e.type===t);return i?i.value:``}return{setLocale:r,getLocale:n,fullMonth:s,fullYear:l,fullMonthAndYear:o,toParts:u,custom:i,part:m,dayPeriod:f,selectedDate:a,dayOfWeek:d,getMonths:c}}function cs(e){let t=Jo({dir:R(`ltr`)});return s(()=>{var n;return e?.value||(n=t.dir)?.value||`ltr`})}function ls(e){let t=b(),n=t?.type.emits,r={};return n!=null&&n.length||console.warn(`No emitted event found. Please check component: ${t?.type.__name}`),n?.forEach(t=>{r[ye(i(t))]=(...n)=>e(t,...n)}),r}let us=0;function ds(){U(e=>{if(!oo)return;let t=document.querySelectorAll(`[data-radix-focus-guard]`);document.body.insertAdjacentElement(`afterbegin`,t[0]??fs()),document.body.insertAdjacentElement(`beforeend`,t[1]??fs()),us++,e(()=>{us===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),us--})})}function fs(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}function ps(e){return s(()=>{var t;return ro(e)?!!((t=To(e))!=null&&t.closest(`form`)):!0})}function ms(e){let t=b(),n=Object.keys(t?.type.props??{}).reduce((e,n)=>{let r=(t?.type.props[n]).default;return r!==void 0&&(e[n]=r),e},{}),r=Se(e);return s(()=>{let e={},a=t?.vnode.props??{};return Object.keys(a).forEach(t=>{e[i(t)]=a[t]}),Object.keys({...n,...e}).reduce((e,t)=>(r.value[t]!==void 0&&(e[t]=r.value[t]),e),{})})}function hs(e,t){let n=ms(e),r=t?ls(t):{};return s(()=>({...n.value,...r}))}function X(){let e=b(),t=R(),n=s(()=>{var e,n;return[`#text`,`#comment`].includes((e=t.value)?.$el.nodeName)?(n=t.value)?.$el.nextElementSibling:To(t)}),r=Object.assign({},e.exposed),i={};for(let t in e.props)Object.defineProperty(i,t,{enumerable:!0,configurable:!0,get:()=>e.props[t]});if(Object.keys(r).length>0)for(let e in r)Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>r[e]});Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>e.vnode.el}),e.exposed=i;function a(n){t.value=n,n&&(Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>n instanceof Element?n:n.$el}),e.exposed=i)}return{forwardRef:a,currentRef:t,currentElement:n}}function gs(e,t){let n=vo(!1,300),r=R(null),i=eo();function a(){r.value=null,n.value=!1}function o(e,t){let i=e.currentTarget,a={x:e.clientX,y:e.clientY},o=_s(a,i.getBoundingClientRect()),s=vs(a,o),c=ys(t.getBoundingClientRect()),l=xs([...s,...c]);r.value=l,n.value=!0}return U(n=>{if(e.value&&t.value){let r=e=>o(e,t.value),i=t=>o(t,e.value);e.value.addEventListener(`pointerleave`,r),t.value.addEventListener(`pointerleave`,i),n(()=>{var n,a;(n=e.value)==null||n.removeEventListener(`pointerleave`,r),(a=t.value)==null||a.removeEventListener(`pointerleave`,i)})}}),U(n=>{var o;if(r.value){let s=n=>{var o,s;if(!r.value)return;let c=n.target,l={x:n.clientX,y:n.clientY},u=(o=e.value)?.contains(c)||(s=t.value)?.contains(c),d=!bs(l,r.value),f=!!c.closest(`[data-grace-area-trigger]`);u?a():(d||f)&&(a(),i.trigger())};(o=e.value)==null||o.ownerDocument.addEventListener(`pointermove`,s),n(()=>{var t;return(t=e.value)?.ownerDocument.removeEventListener(`pointermove`,s)})}}),{isPointerInTransit:n,onPointerExit:i.on}}function _s(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function vs(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function ys(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function bs(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function xs(e){let t=e.slice();return t.sort((e,t)=>e.xt.x?1:e.yt.y?1:0),Ss(t)}function Ss(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Cs=function(e){if(typeof document>`u`)return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},ws=new WeakMap,Ts=new WeakMap,Es={},Ds=0,Os=function(e){return e&&(e.host||Os(e.parentNode))},ks=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=Os(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},As=function(e,t,n,r){var i=ks(t,Array.isArray(e)?e:[e]);Es[n]||(Es[n]=new WeakMap);var a=Es[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(ws.get(e)||0)+1,l=(a.get(e)||0)+1;ws.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Ts.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Ds++,function(){o.forEach(function(e){var t=ws.get(e)-1,i=a.get(e)-1;ws.set(e,t),a.set(e,i),t||(Ts.has(e)||e.removeAttribute(r),Ts.delete(e)),i||e.removeAttribute(n)}),Ds--,Ds||(ws=new WeakMap,ws=new WeakMap,Ts=new WeakMap,Es={})}},js=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=Cs(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live]`))),As(r,i,n,`aria-hidden`)):function(){return null}};function Ms(e){let t;H(()=>To(e),e=>{e?t=js(e):t&&t()}),ae(()=>{t&&t()})}let Ns=0;function Z(e,t=`radix`){if(e)return e;let n=Jo({useId:void 0});return we?`${t}-${we()}`:n.useId?`${t}-${n.useId()}`:`${t}-${++Ns}`}function Ps(e,t){let n=R(),r=(r,i)=>{if(t.multiple&&Array.isArray(e.value))if(t.selectionBehavior===`replace`)e.value=[r],n.value=r;else{let t=e.value.findIndex(e=>i(e));t===-1?e.value.push(r):e.value.splice(t,1)}else t.selectionBehavior===`replace`?e.value={...r}:!Array.isArray(e.value)&&i(e.value)?e.value=void 0:e.value={...r};return e.value};function i(r,i,a,o){var s;if(!(n!=null&&n.value)||!t.multiple||!Array.isArray(e.value))return;let c=(s=a().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===i))?.value;if(!c)return;let l=null;switch(r){case`prev`:case`next`:l=Aa(o,n.value,c);break;case`first`:l=Aa(o,n.value,o?.[0]);break;case`last`:l=Aa(o,n.value,o?.[o.length-1]);break}e.value=l}return{firstValue:n,onSelectItem:r,handleMultipleReplace:i}}function Fs(e){let t=R(),n=s(()=>{var e;return(e=t.value)?.width??0}),r=s(()=>{var e;return(e=t.value)?.height??0});return I(()=>{let n=To(e);if(n){t.value={width:n.offsetWidth,height:n.offsetHeight};let e=new ResizeObserver(e=>{if(!Array.isArray(e)||!e.length)return;let r=e[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=n.offsetWidth,a=n.offsetHeight;t.value={width:i,height:a}});return e.observe(n,{box:`border-box`}),()=>e.unobserve(n)}else t.value=void 0}),{width:n,height:r}}function Is(e,t){let n=R(e);function r(e){return t[n.value][e]??n.value}return{state:n,dispatch:e=>{n.value=r(e)}}}const Ls=`data-item-text`;function Rs(e){let t=vo(``,1e3);return{search:t,handleTypeaheadSearch:(n,r)=>{if(!(e!=null&&e.value)&&!r)return;t.value+=n;let i=e?.value??r,a=Y(),o=i.map(e=>{var t;return{ref:e,textValue:(t=(e.querySelector(`[${Ls}]`)??e).textContent)?.trim()??``}}),s=o.find(e=>e.ref===a),c=o.map(e=>e.textValue),l=Bs(c,t.value,s?.textValue),u=o.find(e=>e.textValue===l);return u&&u.ref.focus(),u?.ref},resetTypeahead:()=>{t.value=``}}}function zs(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function Bs(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=zs(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function Vs(){return{ALT:`Alt`,ARROW_DOWN:`ArrowDown`,ARROW_LEFT:`ArrowLeft`,ARROW_RIGHT:`ArrowRight`,ARROW_UP:`ArrowUp`,BACKSPACE:`Backspace`,CAPS_LOCK:`CapsLock`,CONTROL:`Control`,DELETE:`Delete`,END:`End`,ENTER:`Enter`,ESCAPE:`Escape`,F1:`F1`,F10:`F10`,F11:`F11`,F12:`F12`,F2:`F2`,F3:`F3`,F4:`F4`,F5:`F5`,F6:`F6`,F7:`F7`,F8:`F8`,F9:`F9`,HOME:`Home`,META:`Meta`,PAGE_DOWN:`PageDown`,PAGE_UP:`PageUp`,SHIFT:`Shift`,SPACE:` `,TAB:`Tab`,CTRL:`Control`,ASTERISK:`*`,SPACE_CODE:`Space`}}const Hs=g({name:`PrimitiveSlot`,inheritAttrs:!1,setup(t,{attrs:n,slots:r}){return()=>{var t,i;if(!r.default)return null;let o=Bo(r.default()),s=o.findIndex(t=>t.type!==e);if(s===-1)return o;let c=o[s];(t=c.props)==null||delete t.ref;let l=c.props?j(n,c.props):n;n.class&&(i=c.props)!=null&&i.class&&delete c.props.class;let u=a(c,l);for(let e in l)e.startsWith(`on`)&&(u.props||={},u.props[e]=l[e]);return o.length===1?u:(o[s]=u,o)}}}),Q=g({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(e,{attrs:t,slots:n}){let r=e.asChild?`template`:e.as;return typeof r==`string`&&[`area`,`img`,`input`].includes(r)?()=>C(r,t):r===`template`?()=>C(Hs,t,{default:n.default}):()=>C(e.as,t,{default:n.default})}});function Us(){let e=R(),t=s(()=>{var t,n;return[`#text`,`#comment`].includes((t=e.value)?.$el.nodeName)?(n=e.value)?.$el.nextElementSibling:To(e)});return{primitiveElement:e,currentElement:t}}const[Ws,Gs]=q(`CollapsibleRoot`),Ks=g({__name:`CollapsibleRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`update:open`],setup(e,{expose:t,emit:n}){let r=e,i=J(r,`open`,n,{defaultValue:r.defaultOpen,passive:r.open===void 0}),a=J(r,`disabled`);return Gs({contentId:``,disabled:a,open:i,onOpenToggle:()=>{i.value=!i.value}}),t({open:i}),X(),(e,t)=>(L(),l(V(Q),{as:e.as,"as-child":r.asChild,"data-state":V(i)?`open`:`closed`,"data-disabled":V(a)?``:void 0},{default:W(()=>[z(e.$slots,`default`,{open:V(i)})]),_:3},8,[`as`,`as-child`,`data-state`,`data-disabled`]))}}),qs=g({__name:`CollapsibleTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Ws();return(e,r)=>{var i,a;return L(),l(V(Q),{type:e.as===`button`?`button`:void 0,as:e.as,"as-child":t.asChild,"aria-controls":V(n).contentId,"aria-expanded":V(n).open.value,"data-state":V(n).open.value?`open`:`closed`,"data-disabled":(i=V(n).disabled)!=null&&i.value?``:void 0,disabled:(a=V(n).disabled)?.value,onClick:V(n).onOpenToggle},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`,`aria-controls`,`aria-expanded`,`data-state`,`data-disabled`,`disabled`,`onClick`])}}});function Js(e,t){var n;let r=R({}),i=R(`none`),a=R(e),o=e.value?`mounted`:`unmounted`,c,l=(n=t.value)?.ownerDocument.defaultView??Eo,{state:u,dispatch:d}=Is(o,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),f=e=>{var n;if(oo){let r=new CustomEvent(e,{bubbles:!1,cancelable:!1});(n=t.value)==null||n.dispatchEvent(r)}};H(e,async(e,n)=>{var a;let o=n!==e;if(await N(),o){let o=i.value,s=Ys(t.value);e?(d(`MOUNT`),f(`enter`),s===`none`&&f(`after-enter`)):s===`none`||(a=r.value)?.display===`none`?(d(`UNMOUNT`),f(`leave`),f(`after-leave`)):n&&o!==s?(d(`ANIMATION_OUT`),f(`leave`)):(d(`UNMOUNT`),f(`after-leave`))}},{immediate:!0});let p=e=>{let n=Ys(t.value),r=n.includes(e.animationName),i=u.value===`mounted`?`enter`:`leave`;if(e.target===t.value&&r&&(f(`after-${i}`),d(`ANIMATION_END`),!a.value)){let e=t.value.style.animationFillMode;t.value.style.animationFillMode=`forwards`,c=l?.setTimeout(()=>{var n;(n=t.value)?.style.animationFillMode===`forwards`&&(t.value.style.animationFillMode=e)})}e.target===t.value&&n===`none`&&d(`ANIMATION_END`)},m=e=>{e.target===t.value&&(i.value=Ys(t.value))},h=H(t,(e,t)=>{e?(r.value=getComputedStyle(e),e.addEventListener(`animationstart`,m),e.addEventListener(`animationcancel`,p),e.addEventListener(`animationend`,p)):(d(`ANIMATION_END`),c!==void 0&&l?.clearTimeout(c),t?.removeEventListener(`animationstart`,m),t?.removeEventListener(`animationcancel`,p),t?.removeEventListener(`animationend`,p))},{immediate:!0}),g=H(u,()=>{let e=Ys(t.value);i.value=u.value===`mounted`?e:`none`});return ae(()=>{h(),g()}),{isPresent:s(()=>[`mounted`,`unmountSuspended`].includes(u.value))}}function Ys(e){return e&&getComputedStyle(e).animationName||`none`}const Xs=g({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){var r;let{present:i,forceMount:a}=B(e),o=R(),{isPresent:s}=Js(i,o);n({present:s});let c=t.default({present:s});c=Bo(c||[]);let l=b();if(c&&c?.length>1){let e=(r=l?.parent)!=null&&r.type.name?`<${l.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${e}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(e=>` - ${e}`).join(` -`)].join(` -`))}return()=>a.value||i.value||s.value?C(t.default({present:s})[0],{ref:e=>{let t=To(e);return typeof t?.hasAttribute>`u`||(t!=null&&t.hasAttribute(`data-radix-popper-content-wrapper`)?o.value=t.firstElementChild:o.value=t),t}}):null}}),Zs=g({inheritAttrs:!1,__name:`CollapsibleContent`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Ws();n.contentId||=Z(void 0,`radix-vue-collapsible-content`);let r=R(),{forwardRef:i,currentElement:a}=X(),o=R(0),c=R(0),d=s(()=>n.open.value),f=R(d.value),p=R();return H(()=>{var e;return[d.value,(e=r.value)?.present]},async()=>{await N();let e=a.value;if(!e)return;p.value=p.value||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration=`0s`,e.style.animationName=`none`;let t=e.getBoundingClientRect();c.value=t.height,o.value=t.width,f.value||(e.style.transitionDuration=p.value.transitionDuration,e.style.animationName=p.value.animationName)},{immediate:!0}),I(()=>{requestAnimationFrame(()=>{f.value=!1})}),(e,a)=>(L(),l(V(Xs),{ref_key:`presentRef`,ref:r,present:e.forceMount||V(n).open.value,"force-mount":!0},{default:W(()=>{var a,s;return[m(V(Q),j(e.$attrs,{id:V(n).contentId,ref:V(i),"as-child":t.asChild,as:e.as,"data-state":V(n).open.value?`open`:`closed`,"data-disabled":(a=V(n).disabled)!=null&&a.value?``:void 0,hidden:!((s=r.value)!=null&&s.present),style:{"--radix-collapsible-content-height":`${c.value}px`,"--radix-collapsible-content-width":`${o.value}px`}}),{default:W(()=>{var t;return[(t=r.value)!=null&&t.present?z(e.$slots,`default`,{key:0}):u(``,!0)]}),_:3},16,[`id`,`as-child`,`as`,`data-state`,`data-disabled`,`hidden`,`style`])]}),_:3},8,[`present`]))}});function Qs({type:e,defaultValue:t,modelValue:n}){let r=n||t;if(Ma(e)&&Ma(n)&&Ma(t))throw Error("Either the `type` or the `value` or `default-value` prop must be defined.");if(n!==void 0&&t!==void 0&&typeof n!=typeof t)throw Error(`Invalid prop \`value\` of value \`${n}\` supplied, should be the same type as the \`defaultValue\` prop, which is \`${t}\`. The \`value\` prop must be: - ${e===`single`?`- a string`:e===`multiple`?`- an array of strings`:`- a string -- an array of strings`} - - \`undefined\``);let i=n!==void 0||t!==void 0;if(e&&i){let r=Array.isArray(n)||Array.isArray(t),i=n===void 0?`defaultValue`:`modelValue`,a=i===`modelValue`?typeof n:typeof t;if(e===`single`&&r)return console.error(`Invalid prop \`${i}\` of type ${a} supplied with type \`single\`. The \`modelValue\` prop must be a string or \`undefined\`. - You can remove the \`type\` prop to let the component infer the type from the ${i} prop.`),`multiple`;if(e===`multiple`&&!r)return console.error(`Invalid prop \`${i}\` of type ${a} supplied with type \`multiple\`. The \`modelValue\` prop must be an array of strings or \`undefined\`. - You can remove the \`type\` prop to let the component infer the type from the ${i} prop.`),`single`}return i?Array.isArray(r)?`multiple`:`single`:e}function $s({type:e,defaultValue:t,modelValue:n}){return e||Qs({type:e,defaultValue:t,modelValue:n})}function ec({type:e,defaultValue:t}){return t===void 0?e===`single`?void 0:[]:t}function tc(e,t){let n=R($s(e)),r=J(e,`modelValue`,t,{defaultValue:ec(e),passive:e.modelValue===void 0,deep:!0});H(()=>[e.type,e.modelValue,e.defaultValue],()=>{let t=Qs(e);n.value!==t&&(n.value=t)},{immediate:!0});function i(e){if(n.value===`single`)r.value=e===r.value?void 0:e;else{let t=[...r.value||[]];if(t.includes(e)){let n=t.findIndex(t=>t===e);t.splice(n,1)}else t.push(e);r.value=t}}let a=s(()=>n.value===`single`);return{modelValue:r,type:n,changeModelValue:i,isSingle:a}}const[nc,rc]=q(`AccordionRoot`),ic=g({__name:`AccordionRoot`,props:{collapsible:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},dir:{},orientation:{default:`vertical`},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{dir:i,disabled:a}=B(n),o=cs(i),{modelValue:s,changeModelValue:c,isSingle:u}=tc(n,r),{forwardRef:d,currentElement:f}=X();return rc({disabled:a,direction:o,orientation:n.orientation,parentElement:f,isSingle:u,collapsible:n.collapsible,modelValue:s,changeModelValue:c}),(e,t)=>(L(),l(V(Q),{ref:V(d),"as-child":e.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(s)})]),_:3},8,[`as-child`,`as`]))}}),[ac,oc]=q(`AccordionItem`),sc=g({__name:`AccordionItem`,props:{disabled:{type:Boolean},value:{},asChild:{type:Boolean},as:{}},setup(e,{expose:t}){let n=e,r=nc(),i=s(()=>r.isSingle.value?n.value===r.modelValue.value:Array.isArray(r.modelValue.value)&&r.modelValue.value.includes(n.value)),a=s(()=>r.disabled.value||n.disabled),o=s(()=>a.value?``:void 0),c=s(()=>i.value?`open`:`closed`);t({open:i,dataDisabled:o});let{currentRef:u,currentElement:d}=X();oc({open:i,dataState:c,disabled:a,dataDisabled:o,triggerId:``,currentRef:u,currentElement:d,value:s(()=>n.value)});function f(e){var t;let n=e.target;if(Array.from((t=r.parentElement.value)?.querySelectorAll(`[data-radix-vue-collection-item]`)??[]).findIndex(e=>e===n)===-1)return null;Ho(e,d.value,r.parentElement.value,{arrowKeyOptions:r.orientation,dir:r.direction.value,focus:!0})}return(e,t)=>(L(),l(V(Ks),{"data-orientation":V(r).orientation,"data-disabled":o.value,"data-state":c.value,disabled:a.value,open:i.value,as:n.as,"as-child":n.asChild,onKeydown:G(f,[`up`,`down`,`left`,`right`,`home`,`end`])},{default:W(()=>[z(e.$slots,`default`,{open:i.value})]),_:3},8,[`data-orientation`,`data-disabled`,`data-state`,`disabled`,`open`,`as`,`as-child`]))}}),cc=g({__name:`AccordionContent`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=nc(),r=ac();return X(),(e,i)=>(L(),l(V(Zs),{role:`region`,hidden:!V(r).open.value,"as-child":t.asChild,"force-mount":t.forceMount,"aria-labelledby":V(r).triggerId,"data-state":V(r).dataState.value,"data-disabled":V(r).dataDisabled.value,"data-orientation":V(n).orientation,style:{"--radix-accordion-content-width":`var(--radix-collapsible-content-width)`,"--radix-accordion-content-height":`var(--radix-collapsible-content-height)`}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`hidden`,`as-child`,`force-mount`,`aria-labelledby`,`data-state`,`data-disabled`,`data-orientation`]))}}),lc=g({__name:`AccordionHeader`,props:{asChild:{type:Boolean},as:{default:`h3`}},setup(e){let t=e,n=nc(),r=ac();return X(),(e,i)=>(L(),l(V(Q),{as:t.as,"as-child":t.asChild,"data-orientation":V(n).orientation,"data-state":V(r).dataState.value,"data-disabled":V(r).dataDisabled.value},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-orientation`,`data-state`,`data-disabled`]))}}),uc=g({__name:`AccordionTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=nc(),r=ac();r.triggerId||=Z(void 0,`radix-vue-accordion-trigger`);function i(){let e=n.isSingle.value&&r.open.value&&!n.collapsible;r.disabled.value||e||n.changeModelValue(r.value.value)}return(e,a)=>(L(),l(V(qs),{id:V(r).triggerId,ref:V(r).currentRef,"data-radix-vue-collection-item":``,as:t.as,"as-child":t.asChild,"aria-disabled":V(r).disabled.value||void 0,"aria-expanded":V(r).open.value||!1,"data-disabled":V(r).dataDisabled.value,"data-orientation":V(n).orientation,"data-state":V(r).dataState.value,disabled:V(r).disabled.value,onClick:i},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`as`,`as-child`,`aria-disabled`,`aria-expanded`,`data-disabled`,`data-orientation`,`data-state`,`disabled`]))}}),[dc,fc]=q(`DialogRoot`),pc=g({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=J(n,`open`,t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),i=R(),a=R(),{modal:o}=B(n);return fc({open:r,modal:o,openModal:()=>{r.value=!0},onOpenChange:e=>{r.value=e},onOpenToggle:()=>{r.value=!r.value},contentId:``,titleId:``,descriptionId:``,triggerElement:i,contentElement:a}),(e,t)=>z(e.$slots,`default`,{open:V(r)})}}),mc=g({__name:`DialogTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=dc(),{forwardRef:r,currentElement:i}=X();return n.contentId||=Z(void 0,`radix-vue-dialog-content`),I(()=>{n.triggerElement.value=i.value}),(e,i)=>(L(),l(V(Q),j(t,{ref:V(r),type:e.as===`button`?`button`:void 0,"aria-haspopup":`dialog`,"aria-expanded":V(n).open.value||!1,"aria-controls":V(n).open.value?V(n).contentId:void 0,"data-state":V(n).open.value?`open`:`closed`,onClick:V(n).onOpenToggle}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`onClick`]))}}),hc=g({__name:`Teleport`,props:{to:{default:`body`},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=Ao();return(e,r)=>V(t)||e.forceMount?(L(),l(n,{key:0,to:e.to,disabled:e.disabled},[z(e.$slots,`default`)],8,[`to`,`disabled`])):u(``,!0)}}),gc=g({__name:`DialogPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),_c=`dismissableLayer.pointerDownOutside`,vc=`dismissableLayer.focusOutside`;function yc(e,t){let n=t.closest(`[data-dismissable-layer]`),r=e.dataset.dismissableLayer===``?e:e.querySelector(`[data-dismissable-layer]`),i=Array.from(e.ownerDocument.querySelectorAll(`[data-dismissable-layer]`));return!!(n&&r===n||i.indexOf(r){});return U(n=>{if(!oo)return;let o=async n=>{let o=n.target;if(t!=null&&t.value){if(yc(t.value,o)){i.value=!1;return}if(n.target&&!i.value){let t=function(){Sa(_c,e,i)},i={originalEvent:n};n.pointerType===`touch`?(r.removeEventListener(`click`,a.value),a.value=t,r.addEventListener(`click`,a.value,{once:!0})):t()}else r.removeEventListener(`click`,a.value);i.value=!1}},s=window.setTimeout(()=>{r.addEventListener(`pointerdown`,o)},0);n(()=>{window.clearTimeout(s),r.removeEventListener(`pointerdown`,o),r.removeEventListener(`click`,a.value)})}),{onPointerDownCapture:()=>i.value=!0}}function xc(e,t){var n;let r=(n=t?.value)?.ownerDocument??(globalThis==null?void 0:globalThis.document),i=R(!1);return U(n=>{if(!oo)return;let a=async n=>{t!=null&&t.value&&(await N(),!(!t.value||yc(t.value,n.target))&&n.target&&!i.value&&Sa(vc,e,{originalEvent:n}))};r.addEventListener(`focusin`,a),n(()=>r.removeEventListener(`focusin`,a))}),{onFocusCapture:()=>i.value=!0,onBlurCapture:()=>i.value=!1}}const Sc=ce({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Cc=g({__name:`DismissableLayer`,props:{disableOutsidePointerEvents:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`dismiss`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=s(()=>{var e;return(e=a.value)?.ownerDocument??globalThis.document}),c=s(()=>Sc.layersRoot),u=s(()=>a.value?Array.from(c.value).indexOf(a.value):-1),d=s(()=>Sc.layersWithOutsidePointerEventsDisabled.size>0),f=s(()=>{let e=Array.from(c.value),[t]=[...Sc.layersWithOutsidePointerEventsDisabled].slice(-1),n=e.indexOf(t);return u.value>=n}),p=bc(async e=>{let t=[...Sc.branches].some(t=>t?.contains(e.target));!f.value||t||(r(`pointerDownOutside`,e),r(`interactOutside`,e),await N(),e.defaultPrevented||r(`dismiss`))},a),m=xc(e=>{[...Sc.branches].some(t=>t?.contains(e.target))||(r(`focusOutside`,e),r(`interactOutside`,e),e.defaultPrevented||r(`dismiss`))},a);ko(`Escape`,e=>{u.value===c.value.size-1&&(r(`escapeKeyDown`,e),e.defaultPrevented||r(`dismiss`))});let h;return U(e=>{a.value&&(n.disableOutsidePointerEvents&&(Sc.layersWithOutsidePointerEventsDisabled.size===0&&(h=o.value.body.style.pointerEvents,o.value.body.style.pointerEvents=`none`),Sc.layersWithOutsidePointerEventsDisabled.add(a.value)),c.value.add(a.value),e(()=>{n.disableOutsidePointerEvents&&Sc.layersWithOutsidePointerEventsDisabled.size===1&&(o.value.body.style.pointerEvents=h)}))}),U(e=>{e(()=>{a.value&&(c.value.delete(a.value),Sc.layersWithOutsidePointerEventsDisabled.delete(a.value))})}),(e,t)=>(L(),l(V(Q),{ref:V(i),"as-child":e.asChild,as:e.as,"data-dismissable-layer":``,style:F({pointerEvents:d.value?f.value?`auto`:`none`:void 0}),onFocusCapture:V(m).onFocusCapture,onBlurCapture:V(m).onBlurCapture,onPointerdownCapture:V(p).onPointerDownCapture},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`style`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]))}}),wc=g({__name:`DismissableLayerBranch`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n,currentElement:r}=X();return I(()=>{Sc.branches.add(r.value)}),ae(()=>{Sc.branches.delete(r.value)}),(e,r)=>(L(),l(V(Q),j({ref:V(n)},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Tc=`focusScope.autoFocusOnMount`,Ec=`focusScope.autoFocusOnUnmount`,Dc={bubbles:!1,cancelable:!0};function Oc(e,{select:t=!1}={}){let n=Y();for(let r of e)if(Pc(r,{select:t}),Y()!==n)return!0}function kc(e){let t=Ac(e),n=jc(t,e),r=jc(t.reverse(),e);return[n,r]}function Ac(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function jc(e,t){for(let n of e)if(!Mc(n,{upTo:t}))return n}function Mc(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function Nc(e){return e instanceof HTMLInputElement&&`select`in e}function Pc(e,{select:t=!1}={}){if(e&&e.focus){let n=Y();e.focus({preventScroll:!0}),e!==n&&Nc(e)&&t&&e.select()}}const Fc=to(()=>R([]));function Ic(){let e=Fc();return{add(t){let n=e.value[0];t!==n&&n?.pause(),e.value=Lc(e.value,t),e.value.unshift(t)},remove(t){var n;e.value=Lc(e.value,t),(n=e.value[0])==null||n.resume()}}}function Lc(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Rc(e){return e.filter(e=>e.tagName!==`A`)}const zc=g({__name:`FocusScope`,props:{loop:{type:Boolean,default:!1},trapped:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`mountAutoFocus`,`unmountAutoFocus`],setup(e,{emit:t}){let n=e,r=t,{currentRef:i,currentElement:a}=X(),o=R(null),s=Ic(),c=ce({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});U(e=>{if(!oo)return;let t=a.value;if(!n.trapped)return;function r(e){if(c.paused||!t)return;let n=e.target;t.contains(n)?o.value=n:Pc(o.value,{select:!0})}function i(e){if(c.paused||!t)return;let n=e.relatedTarget;n!==null&&(t.contains(n)||Pc(o.value,{select:!0}))}function s(e){t.contains(o.value)||Pc(t)}document.addEventListener(`focusin`,r),document.addEventListener(`focusout`,i);let l=new MutationObserver(s);t&&l.observe(t,{childList:!0,subtree:!0}),e(()=>{document.removeEventListener(`focusin`,r),document.removeEventListener(`focusout`,i),l.disconnect()})}),U(async e=>{let t=a.value;if(await N(),!t)return;s.add(c);let n=Y();if(!t.contains(n)){let e=new CustomEvent(Tc,Dc);t.addEventListener(Tc,e=>r(`mountAutoFocus`,e)),t.dispatchEvent(e),e.defaultPrevented||(Oc(Rc(Ac(t)),{select:!0}),Y()===n&&Pc(t))}e(()=>{t.removeEventListener(Tc,e=>r(`mountAutoFocus`,e));let e=new CustomEvent(Ec,Dc),i=e=>{r(`unmountAutoFocus`,e)};t.addEventListener(Ec,i),t.dispatchEvent(e),setTimeout(()=>{e.defaultPrevented||Pc(n??document.body,{select:!0}),t.removeEventListener(Ec,i),s.remove(c)},0)})});function u(e){if(!n.loop&&!n.trapped||c.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,r=Y();if(t&&r){let t=e.currentTarget,[i,a]=kc(t);i&&a?!e.shiftKey&&r===a?(e.preventDefault(),n.loop&&Pc(i,{select:!0})):e.shiftKey&&r===i&&(e.preventDefault(),n.loop&&Pc(a,{select:!0})):r===t&&e.preventDefault()}}return(e,t)=>(L(),l(V(Q),{ref_key:`currentRef`,ref:i,tabindex:`-1`,"as-child":e.asChild,as:e.as,onKeydown:u},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}}),Bc=`menu.itemSelect`,Vc=[`Enter`,` `],Hc=[`ArrowDown`,`PageUp`,`Home`],Uc=[`ArrowUp`,`PageDown`,`End`],Wc=[...Hc,...Uc],Gc={ltr:[...Vc,`ArrowRight`],rtl:[...Vc,`ArrowLeft`]},Kc={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]};function qc(e){return e?`open`:`closed`}function Jc(e){return e===`indeterminate`}function Yc(e){return Jc(e)?`indeterminate`:e?`checked`:`unchecked`}function Xc(e){let t=Y();for(let n of e)if(n===t||(n.focus(),Y()!==t))return}function Zc(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function Qc(e,t){if(!t)return!1;let n={x:e.clientX,y:e.clientY};return Zc(n,t)}function $c(e){return e.pointerType===`mouse`}const el=g({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=dc(),{forwardRef:a,currentElement:o}=X();return i.titleId||=Z(void 0,`radix-vue-dialog-title`),i.descriptionId||=Z(void 0,`radix-vue-dialog-description`),I(()=>{i.contentElement=o,Y()!==document.body&&(i.triggerElement.value=Y())}),(e,t)=>(L(),l(V(zc),{"as-child":``,loop:``,trapped:n.trapFocus,onMountAutoFocus:t[5]||=e=>r(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>r(`closeAutoFocus`,e)},{default:W(()=>[m(V(Cc),j({id:V(i).contentId,ref:V(a),as:e.as,"as-child":e.asChild,"disable-outside-pointer-events":e.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":V(i).descriptionId,"aria-labelledby":V(i).titleId,"data-state":V(qc)(V(i).open.value)},e.$attrs,{onDismiss:t[0]||=e=>V(i).onOpenChange(!1),onEscapeKeyDown:t[1]||=e=>r(`escapeKeyDown`,e),onFocusOutside:t[2]||=e=>r(`focusOutside`,e),onInteractOutside:t[3]||=e=>r(`interactOutside`,e),onPointerDownOutside:t[4]||=e=>r(`pointerDownOutside`,e)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}}),tl=g({__name:`DialogContentModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=dc(),a=ls(r),{forwardRef:o,currentElement:s}=X();return Ms(s),(e,t)=>(L(),l(el,j({...n,...V(a)},{ref:V(o),"trap-focus":V(i).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:t[0]||=e=>{var t;e.defaultPrevented||(e.preventDefault(),(t=V(i).triggerElement.value)==null||t.focus())},onPointerDownOutside:t[1]||=e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()},onFocusOutside:t[2]||=e=>{e.preventDefault()}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),nl=g({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=ls(t);X();let i=dc(),a=R(!1),o=R(!1);return(e,t)=>(L(),l(el,j({...n,...V(r)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{var t;e.defaultPrevented||(a.value||(t=V(i).triggerElement.value)==null||t.focus(),e.preventDefault()),a.value=!1,o.value=!1},onInteractOutside:t[1]||=e=>{var t;e.defaultPrevented||(a.value=!0,e.detail.originalEvent.type===`pointerdown`&&(o.value=!0));let n=e.target;(t=V(i).triggerElement.value)!=null&&t.contains(n)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&o.value&&e.preventDefault()}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),rl=g({__name:`DialogContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=dc(),a=ls(r),{forwardRef:o}=X();return(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(i).open.value},{default:W(()=>[V(i).modal.value?(L(),l(tl,j({key:0,ref:V(o)},{...n,...V(a),...e.$attrs}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):(L(),l(nl,j({key:1,ref:V(o)},{...n,...V(a),...e.$attrs}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),il=g({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=dc();return es(!0),X(),(e,n)=>(L(),l(V(Q),{as:e.as,"as-child":e.asChild,"data-state":V(t).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),al=g({__name:`DialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=dc(),{forwardRef:n}=X();return(e,r)=>{var i;return(i=V(t))!=null&&i.modal.value?(L(),l(V(Xs),{key:0,present:e.forceMount||V(t).open.value},{default:W(()=>[m(il,j(e.$attrs,{ref:V(n),as:e.as,"as-child":e.asChild}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):u(``,!0)}}}),ol=g({__name:`DialogClose`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=dc();return(e,r)=>(L(),l(V(Q),j(t,{type:e.as===`button`?`button`:void 0,onClick:r[0]||=e=>V(n).onOpenChange(!1)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`]))}}),sl=g({__name:`DialogTitle`,props:{asChild:{type:Boolean},as:{default:`h2`}},setup(e){let t=e,n=dc();return X(),(e,r)=>(L(),l(V(Q),j(t,{id:V(n).titleId}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),cl=g({__name:`DialogDescription`,props:{asChild:{type:Boolean},as:{default:`p`}},setup(e){let t=e;X();let n=dc();return(e,r)=>(L(),l(V(Q),j(t,{id:V(n).descriptionId}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),ll=g({__name:`AlertDialogRoot`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(L(),l(V(pc),j(V(n),{modal:!0}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ul=g({__name:`AlertDialogTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(mc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),dl=g({__name:`AlertDialogPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[fl,pl]=q(`AlertDialogContent`),ml=g({__name:`AlertDialogContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=ls(t);X();let i=R();return pl({onCancelElementChange:e=>{i.value=e}}),(e,t)=>(L(),l(V(rl),j({...n,...V(r)},{role:`alertdialog`,onPointerDownOutside:t[0]||=K(()=>{},[`prevent`]),onInteractOutside:t[1]||=K(()=>{},[`prevent`]),onOpenAutoFocus:t[2]||=()=>{N(()=>{var e;(e=i.value)==null||e.focus({preventScroll:!0})})}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),hl=g({__name:`AlertDialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(al),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),gl=g({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=fl(),{forwardRef:r,currentElement:i}=X();return I(()=>{n.onCancelElementChange(i.value)}),(e,n)=>(L(),l(V(ol),j(t,{ref:V(r)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),_l=g({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{default:`h2`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(sl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),vl=g({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{default:`p`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(cl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),yl=g({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(ol),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),bl=g({inheritAttrs:!1,__name:`AspectRatio`,props:{ratio:{default:1},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),r=s(()=>1/t.ratio*100);return(e,t)=>(L(),f(`div`,{style:F(`position: relative; width: 100%; padding-bottom: ${r.value}%`),"data-radix-aspect-ratio-wrapper":``},[m(V(Q),j({ref:V(n),"as-child":e.asChild,as:e.as,style:{position:`absolute`,inset:`0px`}},e.$attrs),{default:W(()=>[z(e.$slots,`default`,{aspect:r.value})]),_:3},16,[`as-child`,`as`])],4))}}),[xl,Sl]=q(`AvatarRoot`),Cl=g({__name:`AvatarRoot`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){return X(),Sl({imageLoadingStatus:R(`loading`)}),(e,t)=>(L(),l(V(Q),{"as-child":e.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}});function wl(e){function t(t){return Array.isArray(e.date.value)?e.date.value.some(e=>Zt(e,t)):e.date.value?Zt(e.date.value,t):!1}let n=s(()=>{var t,n,r,i;if(Array.isArray(e.date.value)){if(!e.date.value.length)return!1;for(let r of e.date.value)if((t=e.isDateDisabled)!=null&&t.call(e,r)||(n=e.isDateUnavailable)!=null&&n.call(e,r))return!0}else{if(!e.date.value)return!1;if((r=e.isDateDisabled)!=null&&r.call(e,e.date.value)||(i=e.isDateUnavailable)!=null&&i.call(e,e.date.value))return!0}return!1});return{isDateSelected:t,isInvalid:n}}function Tl(e,t){let n=t(e),r=n.compare(e),i={};return r>=7&&(i.day=1),r>=la(e)&&(i.month=1),n.set({...i})}function El(e,t){let n=t(e),r=e.compare(n),i={};return r>=7&&(i.day=35),r>=la(e)&&(i.month=13),n.set({...i})}function Dl(e,t){return t(e)}function Ol(e,t){return t(e)}function kl(e){let t=ss(e.locale.value),n=s(()=>{let t={calendar:e.placeholder.value.calendar.identifier};return e.placeholder.value.calendar.identifier===`gregory`&&e.placeholder.value.era===`BC`&&(t.era=`short`),t}),r=R(xa({dateObj:e.placeholder.value,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value})),i=s(()=>r.value.map(e=>e.value));function a(e){return!i.value.some(t=>en(e,t))}let o=(t=`month`,n)=>{if(!e.maxValue.value||!r.value.length)return!1;if(e.disabled.value)return!0;let i=r.value[r.value.length-1].value;if(n||e.nextPage.value){let t=Tl(i,n||e.nextPage.value);return da(t,e.maxValue.value)}if(t===`year`){let t=i.add({years:1}).set({day:1,month:1});return da(t,e.maxValue.value)}let a=i.add({months:1}).set({day:1});return da(a,e.maxValue.value)},c=(t=`month`,n)=>{if(!e.minValue.value||!r.value.length)return!1;if(e.disabled.value)return!0;let i=r.value[0].value;if(n||e.prevPage.value){let t=El(i,n||e.prevPage.value);return ua(t,e.minValue.value)}if(t===`year`){let t=i.subtract({years:1}).set({day:35,month:13});return ua(t,e.minValue.value)}let a=i.subtract({months:1}).set({day:35});return ua(a,e.minValue.value)};function l(t){var n;return!!((n=e.isDateDisabled)!=null&&n.call(e,t)||e.disabled.value||e.maxValue.value&&da(t,e.maxValue.value)||e.minValue.value&&ua(t,e.minValue.value))}let u=t=>{var n;return!!((n=e.isDateUnavailable)!=null&&n.call(e,t))},d=s(()=>r.value.length?r.value[0].rows[0].map(n=>t.dayOfWeek(aa(n),e.weekdayFormat.value)):[]),f=(t=`month`,n)=>{let i=r.value[0].value;if(n||e.nextPage.value){let t=Dl(i,n||e.nextPage.value),a=xa({dateObj:t,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=a;let o={};if(!n){let e=a[0].value.compare(i);e>=la(i)&&(o.day=1),e>=365&&(o.month=1)}e.placeholder.value=a[0].value.set({...o});return}let a=t===`month`?i.add({months:e.pagedNavigation.value?e.numberOfMonths.value:1}):i.add({years:1}),o=xa({dateObj:a,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=o,e.placeholder.value=o[0].value.set({day:1})},p=(t=`month`,n)=>{let i=r.value[0].value;if(n||e.prevPage.value){let t=Ol(i,n||e.prevPage.value),a=xa({dateObj:t,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=a;let o={};if(!n){let e=i.compare(a[0].value);e>=la(i)&&(o.day=1),e>=365&&(o.month=1)}e.placeholder.value=a[0].value.set({...o});return}let a=t===`month`?i.subtract({months:e.pagedNavigation.value?e.numberOfMonths.value:1}):i.subtract({years:1}),o=xa({dateObj:a,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=o,e.placeholder.value=o[0].value.set({day:1})};H(e.placeholder,t=>{i.value.some(e=>en(e,t))||(r.value=xa({dateObj:t,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value}))}),H([e.locale,e.weekStartsOn,e.fixedWeeks,e.numberOfMonths],()=>{r.value=xa({dateObj:e.placeholder.value,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value})});let m=s(()=>{if(!r.value.length)return``;if(e.locale.value!==t.getLocale()&&t.setLocale(e.locale.value),r.value.length===1){let e=r.value[0].value;return`${t.fullMonthAndYear(aa(e),n.value)}`}let i=aa(r.value[0].value),a=aa(r.value[r.value.length-1].value),o=t.fullMonth(i,n.value),s=t.fullMonth(a,n.value),c=t.fullYear(i,n.value),l=t.fullYear(a,n.value);return c===l?`${o} - ${s} ${l}`:`${o} ${c} - ${s} ${l}`}),h=s(()=>`${e.calendarLabel.value??`Event Date`}, ${m.value}`);return{isDateDisabled:l,isDateUnavailable:u,isNextButtonDisabled:o,isPrevButtonDisabled:c,grid:r,weekdays:d,visibleView:i,isOutsideVisibleView:a,formatter:t,nextPage:f,prevPage:p,headingValue:m,fullCalendarLabel:h}}const Al={style:{border:`0px`,clip:`rect(0px, 0px, 0px, 0px)`,"clip-path":`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:`0px`,position:`absolute`,"white-space":`nowrap`,width:`1px`}},jl={role:`heading`,"aria-level":`2`},[Ml,Nl]=q(`CalendarRoot`),Pl=g({__name:`CalendarRoot`,props:{modelValue:{},multiple:{type:Boolean,default:!1},defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},pagedNavigation:{type:Boolean,default:!1},preventDeselect:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},calendarLabel:{},fixedWeeks:{type:Boolean,default:!1},maxValue:{},minValue:{},locale:{default:`en`},numberOfMonths:{default:1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},initialFocus:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},isDateUnavailable:{type:Function,default:void 0},dir:{},nextPage:{},prevPage:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`update:placeholder`],setup(e,{emit:t}){let n=e,r=t,{locale:i,disabled:a,readonly:o,initialFocus:s,pagedNavigation:u,weekStartsOn:d,weekdayFormat:f,fixedWeeks:p,multiple:m,minValue:h,maxValue:g,numberOfMonths:_,preventDeselect:v,isDateDisabled:y,isDateUnavailable:b,calendarLabel:x,defaultValue:S,nextPage:C,prevPage:w,dir:T}=B(n),{primitiveElement:E,currentElement:D}=Us(),O=cs(T),k=J(n,`modelValue`,r,{defaultValue:S.value,passive:n.modelValue===void 0}),A=Na({defaultPlaceholder:n.placeholder,defaultValue:k.value,locale:n.locale}),j=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??A.copy(),passive:n.placeholder===void 0});function M(e){j.value=e.copy()}let{fullCalendarLabel:N,headingValue:P,isDateDisabled:F,isDateUnavailable:ee,isNextButtonDisabled:te,isPrevButtonDisabled:ne,weekdays:re,isOutsideVisibleView:ie,nextPage:ae,prevPage:oe,formatter:se,grid:ce}=kl({locale:i,placeholder:j,weekStartsOn:d,fixedWeeks:p,numberOfMonths:_,minValue:h,maxValue:g,disabled:a,weekdayFormat:f,pagedNavigation:u,isDateDisabled:y.value,isDateUnavailable:b.value,calendarLabel:x,nextPage:C,prevPage:w}),{isInvalid:le,isDateSelected:ue}=wl({date:k,isDateDisabled:F,isDateUnavailable:ee});H(k,e=>{if(Array.isArray(e)&&e.length){let t=e[e.length-1];t&&!$t(j.value,t)&&M(t)}else !Array.isArray(e)&&e&&!$t(j.value,e)&&M(e)});function R(e){if(m.value){if(!k.value)k.value=[e.copy()];else if(Array.isArray(k.value)){if(k.value.findIndex(t=>Zt(t,e))===-1)k.value=[...k.value,e];else if(!v.value){let t=k.value.filter(t=>!Zt(t,e));if(!t.length){j.value=e.copy(),k.value=void 0;return}k.value=t.map(e=>e.copy())}}}else{if(!k.value){k.value=e.copy();return}!v.value&&$t(k.value,e)?(j.value=e.copy(),k.value=void 0):k.value=e.copy()}}return I(()=>{s.value&&Xa(D.value)}),Nl({isDateUnavailable:ee,dir:O,isDateDisabled:F,locale:i,formatter:se,modelValue:k,placeholder:j,disabled:a,initialFocus:s,pagedNavigation:u,weekStartsOn:d,weekdayFormat:f,fixedWeeks:p,multiple:m,numberOfMonths:_,readonly:o,preventDeselect:v,fullCalendarLabel:N,headingValue:P,isInvalid:le,isDateSelected:ue,isNextButtonDisabled:te,isPrevButtonDisabled:ne,isOutsideVisibleView:ie,nextPage:ae,prevPage:oe,parentElement:D,onPlaceholderChange:M,onDateChange:R}),(e,t)=>(L(),l(V(Q),{ref_key:`primitiveElement`,ref:E,as:e.as,"as-child":e.asChild,role:`application`,"aria-label":V(N),"data-readonly":V(o)?``:void 0,"data-disabled":V(a)?``:void 0,"data-invalid":V(le)?``:void 0,dir:V(O)},{default:W(()=>[z(e.$slots,`default`,{date:V(j),grid:V(ce),weekDays:V(re),weekStartsOn:V(d),locale:V(i),fixedWeeks:V(p)}),c(`div`,Al,[c(`div`,jl,ve(V(N)),1)])]),_:3},8,[`as`,`as-child`,`aria-label`,`data-readonly`,`data-disabled`,`data-invalid`,`dir`]))}}),Fl=g({__name:`CalendarHeader`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Il=g({__name:`CalendarHeading`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Ml();return(e,r)=>(L(),l(V(Q),j(t,{"data-disabled":V(n).disabled.value?``:void 0}),{default:W(()=>[z(e.$slots,`default`,{headingValue:V(n).headingValue.value},()=>[p(ve(V(n).headingValue.value),1)])]),_:3},16,[`data-disabled`]))}}),Ll=g({__name:`CalendarGrid`,props:{asChild:{type:Boolean},as:{default:`table`}},setup(e){let t=e,n=Ml(),r=s(()=>n.disabled.value?!0:void 0),i=s(()=>n.readonly.value?!0:void 0);return(e,n)=>(L(),l(V(Q),j(t,{tabindex:`-1`,role:`grid`,"aria-readonly":i.value,"aria-disabled":r.value,"data-readonly":i.value&&``,"data-disabled":r.value&&``}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-readonly`,`aria-disabled`,`data-readonly`,`data-disabled`]))}}),Rl=g({__name:`CalendarCell`,props:{date:{},asChild:{type:Boolean},as:{default:`td`}},setup(e){let t=Ml();return(e,n)=>{var r,i;return L(),l(V(Q),{as:e.as,"as-child":e.asChild,role:`gridcell`,"aria-selected":V(t).isDateSelected(e.date)?!0:void 0,"aria-disabled":V(t).isDateDisabled(e.date)||(i=(r=V(t)).isDateUnavailable)?.call(r,e.date),"data-disabled":V(t).isDateDisabled(e.date)?``:void 0},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-selected`,`aria-disabled`,`data-disabled`])}}}),zl=g({__name:`CalendarHeadCell`,props:{asChild:{type:Boolean},as:{default:`th`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Bl=g({__name:`CalendarNext`,props:{step:{default:`month`},nextPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=s(()=>r.disabled.value||r.isNextButtonDisabled(t.step,t.nextPage)),r=Ml();return(e,i)=>(L(),l(V(Q),{as:t.as,"as-child":t.asChild,"aria-label":`Next page`,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>V(r).nextPage(t.step,t.nextPage)},{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Next page`)])]),_:3},8,[`as`,`as-child`,`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Vl=g({__name:`CalendarPrev`,props:{step:{default:`month`},prevPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=s(()=>r.disabled.value||r.isPrevButtonDisabled(t.step,t.prevPage)),r=Ml();return(e,i)=>(L(),l(V(Q),{"aria-label":`Previous page`,as:t.as,"as-child":t.asChild,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>V(r).prevPage(t.step,t.prevPage)},{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Prev page`)])]),_:3},8,[`as`,`as-child`,`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Hl=g({__name:`CalendarGridHead`,props:{asChild:{type:Boolean},as:{default:`thead`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),j(t,{"aria-hidden":`true`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Ul=g({__name:`CalendarGridBody`,props:{asChild:{type:Boolean},as:{default:`tbody`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Wl=g({__name:`CalendarGridRow`,props:{asChild:{type:Boolean},as:{default:`tr`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Gl=g({__name:`CalendarCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Vs(),r=Ml(),{primitiveElement:i,currentElement:a}=Us(),o=s(()=>t.day.day.toLocaleString(r.locale.value)),c=s(()=>r.formatter.custom(aa(t.day),{weekday:`long`,month:`long`,day:`numeric`,year:`numeric`})),u=s(()=>r.isDateDisabled(t.day)),d=s(()=>{var e;return(e=r.isDateUnavailable)?.call(r,t.day)}),f=s(()=>nn(t.day,fn())),m=s(()=>!Qt(t.day,t.month)),h=s(()=>r.isOutsideVisibleView(t.day)),g=s(()=>!r.disabled.value&&Zt(t.day,r.placeholder.value)),_=s(()=>r.isDateSelected(t.day)),v=`[data-radix-vue-calendar-cell-trigger]:not([data-disabled]):not([data-outside-view]):not([data-outside-visible-view])`;function y(e){var t;r.readonly.value||r.isDateDisabled(e)||(t=r.isDateUnavailable)!=null&&t.call(r,e)||r.onDateChange(e)}function b(){y(t.day)}function x(e){e.preventDefault(),e.stopPropagation();let i=r.parentElement.value,o=i?Array.from(i.querySelectorAll(v)):[],s=o.indexOf(a.value),c=7,l=r.dir.value===`rtl`?-1:1;switch(e.code){case n.ARROW_RIGHT:s+=l;break;case n.ARROW_LEFT:s-=l;break;case n.ARROW_UP:s-=c;break;case n.ARROW_DOWN:s+=c;break;case n.ENTER:case n.SPACE_CODE:y(t.day);return;default:return}if(s>=0&&s{let e=i?Array.from(i.querySelectorAll(v)):[];if(!r.pagedNavigation.value){let t=la(r.placeholder.value);e[t-Math.abs(s)].focus();return}e[e.length-Math.abs(s)].focus()});return}if(s>=o.length){if(r.isNextButtonDisabled(`month`))return;r.nextPage(),N(()=>{let e=i?Array.from(i.querySelectorAll(v)):[];if(!r.pagedNavigation.value){let t=la(r.placeholder.value.add({months:r.numberOfMonths.value-1}));e[e.length-t+s-o.length].focus();return}e[s-o.length].focus()})}}return(e,n)=>(L(),l(V(Q),j({ref_key:`primitiveElement`,ref:i},t,{role:`button`,"aria-label":c.value,"data-radix-vue-calendar-cell-trigger":``,"aria-disabled":u.value||d.value?!0:void 0,"data-selected":_.value?!0:void 0,"data-value":e.day.toString(),"data-disabled":u.value?``:void 0,"data-unavailable":d.value?``:void 0,"data-today":f.value?``:void 0,"data-outside-view":m.value?``:void 0,"data-outside-visible-view":h.value?``:void 0,"data-focused":g.value?``:void 0,tabindex:g.value?0:m.value||u.value?void 0:-1,onClick:b,onKeydown:[G(x,[`up`,`down`,`left`,`right`,`space`,`enter`]),n[0]||=G(K(()=>{},[`prevent`]),[`enter`])]}),{default:W(()=>[z(e.$slots,`default`,{dayValue:o.value},()=>[p(ve(o.value),1)])]),_:3},16,[`aria-label`,`aria-disabled`,`data-selected`,`data-value`,`data-disabled`,`data-unavailable`,`data-today`,`data-outside-view`,`data-outside-visible-view`,`data-focused`,`tabindex`]))}});function Kl(e){return e===`indeterminate`}function ql(e){return Kl(e)?`indeterminate`:e?`checked`:`unchecked`}const Jl=[`value`,`checked`,`name`,`disabled`,`required`],[Yl,Xl]=q(`CheckboxRoot`),Zl=g({inheritAttrs:!1,__name:`CheckboxRoot`,props:{defaultChecked:{type:Boolean},checked:{type:[Boolean,String],default:void 0},disabled:{type:Boolean},required:{type:Boolean},name:{},value:{default:`on`},id:{},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:checked`],setup(e,{emit:n}){let r=e,i=n,{disabled:a}=B(r),o=J(r,`checked`,i,{defaultValue:r.defaultChecked,passive:r.checked===void 0}),{forwardRef:c,currentElement:l}=X(),d=ps(l),p=s(()=>{var e;return r.id&&l.value?(e=document.querySelector(`[for="${r.id}"]`))?.innerText:void 0});return Xl({disabled:a,state:o}),(e,n)=>(L(),f(t,null,[m(V(Q),j(e.$attrs,{id:e.id,ref:V(c),role:`checkbox`,"as-child":r.asChild,as:e.as,type:e.as===`button`?`button`:void 0,"aria-checked":V(Kl)(V(o))?`mixed`:V(o),"aria-required":r.required,"aria-label":e.$attrs[`aria-label`]||p.value,"data-state":V(ql)(V(o)),"data-disabled":V(a)?``:void 0,disabled:V(a),onKeydown:G(K(()=>{},[`prevent`]),[`enter`]),onClick:n[0]||=e=>o.value=V(Kl)(V(o))?!0:!V(o)}),{default:W(()=>[z(e.$slots,`default`,{checked:V(o)})]),_:3},16,[`id`,`as-child`,`as`,`type`,`aria-checked`,`aria-required`,`aria-label`,`data-state`,`data-disabled`,`disabled`,`onKeydown`]),V(d)?(L(),f(`input`,{key:0,type:`checkbox`,tabindex:`-1`,"aria-hidden":`true`,value:e.value,checked:!!V(o),name:r.name,disabled:r.disabled,required:r.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Jl)):u(``,!0)],64))}}),Ql=g({__name:`CheckboxIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let{forwardRef:t}=X(),n=Yl();return(e,r)=>(L(),l(V(Xs),{present:e.forceMount||V(Kl)(V(n).state.value)||V(n).state.value===!0},{default:W(()=>[m(V(Q),j({ref:V(t),"data-state":V(ql)(V(n).state.value),"data-disabled":V(n).disabled.value?``:void 0,style:{pointerEvents:`none`},"as-child":e.asChild,as:e.as},e.$attrs),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`,`data-disabled`,`as-child`,`as`])]),_:3},8,[`present`]))}}),[$l,eu]=q(`PopperRoot`),tu=g({inheritAttrs:!1,__name:`PopperRoot`,setup(e){let t=R();return eu({anchor:t,onAnchorChange:e=>t.value=e}),(e,t)=>z(e.$slots,`default`)}}),nu=g({__name:`PopperAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n,currentElement:r}=X(),i=$l();return U(()=>{i.onAnchorChange(t.element??r.value)}),(e,t)=>(L(),l(V(Q),{ref:V(n),as:e.as,"as-child":e.asChild},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}});function ru(e){return e!==null}function iu(e){return{name:`transformOrigin`,options:e,fn(t){var n,r,i;let{placement:a,rects:o,middlewareData:s}=t,c=(n=s.arrow)?.centerOffset!==0,l=c?0:e.arrowWidth,u=c?0:e.arrowHeight,[d,f]=au(a),p={start:`0%`,center:`50%`,end:`100%`}[f],m=((r=s.arrow)?.x??0)+l/2,h=((i=s.arrow)?.y??0)+u/2,g=``,_=``;return d===`bottom`?(g=c?p:`${m}px`,_=`${-u}px`):d===`top`?(g=c?p:`${m}px`,_=`${o.floating.height+u}px`):d===`right`?(g=`${-u}px`,_=c?p:`${h}px`):d===`left`&&(g=`${o.floating.width+u}px`,_=c?p:`${h}px`),{data:{x:g,y:_}}}}}function au(e){let[t,n=`center`]=e.split(`-`);return[t,n]}const ou={side:`bottom`,sideOffset:0,align:`center`,alignOffset:0,arrowPadding:0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:`partial`,hideWhenDetached:!1,updatePositionStrategy:`optimized`,prioritizePosition:!1},[su,cu]=q(`PopperContent`),lu=g({inheritAttrs:!1,__name:`PopperContent`,props:A({side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},{...ou}),emits:[`placed`],setup(e,{emit:t}){let n=e,r=t,i=$l(),{forwardRef:a,currentElement:o}=X(),c=R(),l=R(),{width:u,height:d}=Fs(l),p=s(()=>n.side+(n.align===`center`?``:`-${n.align}`)),h=s(()=>typeof n.collisionPadding==`number`?n.collisionPadding:{top:0,right:0,bottom:0,left:0,...n.collisionPadding}),g=s(()=>Array.isArray(n.collisionBoundary)?n.collisionBoundary:[n.collisionBoundary]),_=s(()=>({padding:h.value,boundary:g.value.filter(ru),altBoundary:g.value.length>0})),v=Za(()=>[Dt({mainAxis:n.sideOffset+d.value,alignmentAxis:n.alignOffset}),n.prioritizePosition&&n.avoidCollisions&&kt({..._.value}),n.avoidCollisions&&Ot({mainAxis:!0,crossAxis:!!n.prioritizePosition,limiter:n.sticky===`partial`?Nt():void 0,..._.value}),!n.prioritizePosition&&n.avoidCollisions&&kt({..._.value}),At({..._.value,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),l.value&&Rt({element:l.value,padding:n.arrowPadding}),iu({arrowWidth:u.value,arrowHeight:d.value}),n.hideWhenDetached&&jt({strategy:`referenceHidden`,..._.value})]),{floatingStyles:y,placement:b,isPositioned:x,middlewareData:S}=Vt(i.anchor,c,{strategy:`fixed`,placement:p,whileElementsMounted:(...e)=>Et(...e,{animationFrame:n.updatePositionStrategy===`always`}),middleware:v}),C=s(()=>au(b.value)[0]),w=s(()=>au(b.value)[1]);Oe(()=>{x.value&&r(`placed`)});let T=s(()=>{var e;return(e=S.value.arrow)?.centerOffset!==0}),E=R(``);U(()=>{o.value&&(E.value=window.getComputedStyle(o.value).zIndex)});let D=s(()=>{var e;return(e=S.value.arrow)?.x??0}),O=s(()=>{var e;return(e=S.value.arrow)?.y??0});return cu({placedSide:C,onArrowChange:e=>l.value=e,arrowX:D,arrowY:O,shouldHideArrow:T}),(e,t)=>{var r,i,o;return L(),f(`div`,{ref_key:`floatingRef`,ref:c,"data-radix-popper-content-wrapper":``,style:F({...V(y),transform:V(x)?V(y).transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:E.value,"--radix-popper-transform-origin":[(r=V(S).transformOrigin)?.x,(i=V(S).transformOrigin)?.y].join(` `),...(o=V(S).hide)?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}})},[m(V(Q),j({ref:V(a)},e.$attrs,{"as-child":n.asChild,as:e.as,"data-side":C.value,"data-align":w.value,style:{animation:V(x)?void 0:`none`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as-child`,`as`,`data-side`,`data-align`,`style`])],4)}}}),uu=c(`polygon`,{points:`0,0 30,0 15,10`},null,-1),du=g({__name:`Arrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Q),j(t,{width:e.width,height:e.height,viewBox:e.asChild?void 0:`0 0 30 10`,preserveAspectRatio:e.asChild?void 0:`none`}),{default:W(()=>[z(e.$slots,`default`,{},()=>[uu])]),_:3},16,[`width`,`height`,`viewBox`,`preserveAspectRatio`]))}}),fu={top:`bottom`,right:`left`,bottom:`top`,left:`right`},pu=g({inheritAttrs:!1,__name:`PopperArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let{forwardRef:t}=X(),n=su(),r=s(()=>fu[n.placedSide.value]);return(e,i)=>{var a,o,s,c;return L(),f(`span`,{ref:e=>{V(n).onArrowChange(e)},style:F({position:`absolute`,left:(a=V(n).arrowX)!=null&&a.value?`${(o=V(n).arrowX)?.value}px`:void 0,top:(s=V(n).arrowY)!=null&&s.value?`${(c=V(n).arrowY)?.value}px`:void 0,[r.value]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[V(n).placedSide.value],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[V(n).placedSide.value],visibility:V(n).shouldHideArrow.value?`hidden`:void 0})},[m(du,j(e.$attrs,{ref:V(t),style:{display:`block`},as:e.as,"as-child":e.asChild,width:e.width,height:e.height}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`width`,`height`])],4)}}}),mu=g({__name:`VisuallyHidden`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){return X(),(e,t)=>(L(),l(V(Q),{as:e.as,"as-child":e.asChild,style:{position:`absolute`,border:0,width:`1px`,display:`inline-block`,height:`1px`,padding:0,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),hu=g({__name:`VisuallyHiddenInput`,props:{name:{},value:{},required:{type:Boolean},disabled:{type:Boolean}},setup(e){let n=e,r=s(()=>typeof n.value==`string`||typeof n.value==`number`||typeof n.value==`boolean`?[{name:n.name,value:n.value}]:typeof n.value==`object`&&Array.isArray(n.value)?n.value.flatMap((e,t)=>typeof e==`object`?Object.entries(e).map(([e,r])=>({name:`[${t}][${n.name}][${e}]`,value:r})):{name:`[${n.name}][${t}]`,value:e}):n.value!==null&&typeof n.value==`object`&&!Array.isArray(n.value)?Object.entries(n.value).map(([e,t])=>({name:`[${n.name}][${e}]`,value:t})):[]);return(e,n)=>(L(!0),f(t,null,de(r.value,t=>(L(),l(mu,{key:t.name,as:`input`,type:`hidden`,hidden:``,readonly:``,name:t.name,value:t.value,required:e.required,disabled:e.disabled},null,8,[`name`,`value`,`required`,`disabled`]))),128))}}),gu=`data-radix-vue-collection-item`,[_u,vu]=q(`CollectionProvider`);function yu(e=gu){let t=R(new Map),n=R(),r=vu({collectionRef:n,itemMap:t,attrName:e}),{getItems:i}=Su(r),a=s(()=>Array.from(r.itemMap.value.values())),o=s(()=>r.itemMap.value.size);return{getItems:i,reactiveItems:a,itemMapSize:o}}const bu=g({name:`CollectionSlot`,setup(e,{slots:t}){let n=_u(),{primitiveElement:r,currentElement:i}=Us();return H(i,()=>{n.collectionRef.value=i.value}),()=>C(Hs,{ref:r},t)}}),xu=g({name:`CollectionItem`,inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(e,{slots:t,attrs:n}){let r=_u(),{primitiveElement:i,currentElement:a}=Us();return U(t=>{if(a.value){let n=O(a.value);r.itemMap.value.set(n,{ref:a.value,value:e.value}),t(()=>r.itemMap.value.delete(n))}}),()=>C(Hs,{...n,[r.attrName]:``,ref:i},t)}});function Su(e){let t=e??_u();return{getItems:()=>{let e=t.collectionRef.value;if(!e)return[];let n=Array.from(e.querySelectorAll(`[${t.attrName}]`));return Array.from(t.itemMap.value.values()).sort((e,t)=>n.indexOf(e.ref)-n.indexOf(t.ref))}}}const[Cu,wu]=q(`ComboboxRoot`),Tu=g({__name:`ComboboxRoot`,props:{modelValue:{},defaultValue:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},searchTerm:{},selectedValue:{},multiple:{type:Boolean},disabled:{type:Boolean},name:{},dir:{},filterFunction:{},displayValue:{},resetSearchTermOnBlur:{type:Boolean,default:!0},resetSearchTermOnSelect:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:open`,`update:searchTerm`,`update:selectedValue`],setup(e,{emit:t}){let n=e,r=t,{multiple:i,disabled:a,dir:o}=B(n),c=cs(o),d=J(n,`searchTerm`,r,{defaultValue:``,passive:n.searchTerm===void 0}),f=J(n,`modelValue`,r,{defaultValue:n.defaultValue??i.value?[]:void 0,passive:n.modelValue===void 0,deep:!0}),p=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),h=J(n,`selectedValue`,r,{defaultValue:void 0,passive:n.selectedValue===void 0});async function g(e){var t,r;p.value=e,await N(),e?(f.value&&(Array.isArray(f.value)&&i.value?h.value=(t=C().find(e=>{var t,n;return(n=(t=e.ref)?.dataset)?.state===`checked`}))?.value:h.value=f.value),await N(),(r=y.value)==null||r.focus(),F()):(v.value=!1,n.resetSearchTermOnBlur&&O(`blur`))}function _(e){if(Array.isArray(f.value)&&i.value){let t=f.value.findIndex(t=>Oa(t,e)),n=[...f.value];t===-1?n.push(e):n.splice(t,1),f.value=n}else f.value=e,g(!1)}let v=R(!1),y=R(),b=R(),{forwardRef:x,currentElement:S}=X(),{getItems:C,reactiveItems:w,itemMapSize:T}=yu(`data-radix-vue-combobox-item`),E=R([]);H(()=>T.value,()=>{E.value=C().map(e=>e.value)},{immediate:!0,flush:`post`});let D=s(()=>{if(v.value){if(n.filterFunction)return n.filterFunction(E.value,d.value);let e=E.value.filter(e=>typeof e==`string`);if(e.length)return e.filter(e=>{var t;return e.toLowerCase().includes((t=d.value)?.toLowerCase())})}return E.value});function O(e){let t=e===`blur`||e===`select`&&n.resetSearchTermOnSelect;!i.value&&f.value&&!Array.isArray(f.value)?n.displayValue?d.value=n.displayValue(f.value):typeof f.value==`object`?t&&(d.value=``):d.value=f.value.toString():t&&(d.value=``)}let k=s(()=>D.value.findIndex(e=>Oa(e,h.value))),A=s(()=>{var e;return(e=w.value.find(e=>Oa(e.value,h.value)))?.ref}),M=s(()=>JSON.stringify(f.value));H(M,async()=>{await N(),await N(),O(`select`)},{immediate:!n.searchTerm}),H(()=>[D.value.length,d.value.length],async([e,t],[n,r])=>{await N(),await N(),e&&(r>t||k.value===-1)&&(h.value=D.value[0])});let P=ps(S);function F(){var e;A.value instanceof Element&&((e=A.value)==null||e.scrollIntoView({block:`nearest`}))}function ee(){A.value instanceof Element&&A.value.focus&&A.value.focus()}let te=R(!1);function ne(){te.value=!0}function re(){requestAnimationFrame(()=>{te.value=!1})}async function I(e){var t;D.value.length&&h.value&&A.value instanceof Element&&(e.preventDefault(),e.stopPropagation(),te.value||(t=A.value)==null||t.click())}return wu({searchTerm:d,modelValue:f,onValueChange:_,isUserInputted:v,multiple:i,disabled:a,open:p,onOpenChange:g,filteredOptions:D,contentId:``,inputElement:y,selectedElement:A,onInputElementChange:e=>y.value=e,onInputNavigation:async e=>{let t=k.value;t===0&&e===`up`||t===D.value.length-1&&e===`down`||(t===-1&&D.value.length||e===`home`?h.value=D.value[0]:e===`end`?h.value=D.value[D.value.length-1]:h.value=D.value[e===`up`?t-1:t+1],await N(),F(),ee(),N(()=>{var e;return(e=y.value)?.focus({preventScroll:!0})}))},onInputEnter:I,onCompositionEnd:re,onCompositionStart:ne,selectedValue:h,onSelectedValueChange:e=>h.value=e,parentElement:S,contentElement:b,onContentElementChange:e=>b.value=e}),(e,t)=>(L(),l(V(tu),null,{default:W(()=>[m(V(Q),j({ref:V(x),style:{pointerEvents:V(p)?`auto`:void 0},as:e.as,"as-child":e.asChild,dir:V(c)},e.$attrs),{default:W(()=>[z(e.$slots,`default`,{open:V(p),modelValue:V(f)}),V(P)&&n.name?(L(),l(V(hu),{key:0,name:n.name,value:V(f)},null,8,[`name`,`value`])):u(``,!0)]),_:3},16,[`style`,`as`,`as-child`,`dir`])]),_:3}))}}),Eu=g({__name:`ComboboxInput`,props:{type:{default:`text`},disabled:{type:Boolean},autoFocus:{type:Boolean},asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=Cu(),{forwardRef:r,currentElement:i}=X();I(()=>{let e=i.value.nodeName===`INPUT`?i.value:i.value.querySelector(`input`);e&&(n.onInputElementChange(e),setTimeout(()=>{t.autoFocus&&e?.focus()},1))});let a=s(()=>t.disabled||n.disabled.value||!1),o=R();ke(()=>{var e;return o.value=(e=n.selectedElement.value)?.id});function c(e){n.open.value?n.onInputNavigation(e.key===`ArrowUp`?`up`:`down`):n.onOpenChange(!0)}function u(e){n.open.value&&n.onInputNavigation(e.key===`Home`?`home`:`end`)}function d(e){var t;n.searchTerm.value=(t=e.target)?.value,n.open.value||n.onOpenChange(!0),n.isUserInputted.value=!0}return(e,t)=>(L(),l(V(Q),{ref:V(r),as:e.as,"as-child":e.asChild,type:e.type,disabled:a.value,value:V(n).searchTerm.value,"aria-expanded":V(n).open.value,"aria-controls":V(n).contentId,"aria-disabled":a.value??void 0,"aria-activedescendant":o.value,"aria-autocomplete":`list`,role:`combobox`,autocomplete:`false`,onInput:d,onKeydown:[G(K(c,[`prevent`]),[`down`,`up`]),G(V(n).onInputEnter,[`enter`]),G(K(u,[`prevent`]),[`home`,`end`])],onCompositionstart:V(n).onCompositionStart,onCompositionend:V(n).onCompositionEnd},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`type`,`disabled`,`value`,`aria-expanded`,`aria-controls`,`aria-disabled`,`aria-activedescendant`,`onKeydown`,`onCompositionstart`,`onCompositionend`]))}}),Du=g({__name:`ComboboxAnchor`,props:{asChild:{type:Boolean},as:{}},setup(e){let{forwardRef:t}=X();return(e,n)=>(L(),l(V(nu),{"as-child":``},{default:W(()=>[m(V(Q),j({ref:V(t),"as-child":e.asChild,as:e.as},e.$attrs),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as-child`,`as`])]),_:3}))}}),Ou=g({__name:`ComboboxTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Cu(),r=s(()=>t.disabled||n.disabled.value||!1);return(e,i)=>(L(),l(V(Q),j(t,{type:e.as===`button`?`button`:void 0,tabindex:`-1`,"aria-label":`Show popup`,"aria-haspopup":`listbox`,"aria-expanded":V(n).open.value,"aria-controls":V(n).contentId,"data-state":V(n).open.value?`open`:`closed`,disabled:r.value,"data-disabled":r.value?``:void 0,"aria-disabled":r.value??void 0,onClick:i[0]||=e=>V(n).onOpenChange(!V(n).open.value)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`aria-disabled`]))}}),ku=g({__name:`ComboboxCancel`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Cu();function r(){var e;n.searchTerm.value=``,(e=n.inputElement.value)==null||e.focus()}return(e,n)=>(L(),l(V(Q),j({type:e.as===`button`?`button`:void 0},t,{tabindex:`-1`,onClick:r}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`]))}}),[Au,ju]=q(`ComboboxGroup`),Mu=g({__name:`ComboboxGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{currentRef:n,currentElement:r}=X(),i=Z(void 0,`radix-vue-combobox-group`),a=Cu(),o=R(!1);function s(){if(!r.value)return;let e=r.value.querySelectorAll(`[data-radix-vue-combobox-item]:not([data-hidden])`);o.value=!!e.length}return Mo(r,()=>{N(()=>{s()})},{childList:!0}),H(()=>a.searchTerm.value,()=>{N(()=>{s()})},{immediate:!0}),ju({id:i}),(e,r)=>Ae((L(),l(V(Q),j(t,{ref_key:`currentRef`,ref:n,role:`group`,"aria-labelledby":V(i)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-labelledby`])),[[De,o.value]])}}),Nu=g({__name:`ComboboxLabel`,props:{for:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;X();let n=Au({id:``});return(e,r)=>(L(),l(V(Q),j(t,{id:V(n).id}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),[Pu,Fu]=q(`ComboboxContent`),Iu=g({__name:`ComboboxContentImpl`,props:{position:{default:`inline`},bodyLock:{type:Boolean},dismissable:{type:Boolean,default:!0},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=e,r=t,{position:i}=B(n),a=Cu();es(n.bodyLock);let{forwardRef:o,currentElement:c}=X();Ms(a.parentElement);let u=s(()=>n.position===`popper`?n:{}),d=ms(u.value);function f(e){a.onSelectedValueChange(``)}I(()=>{a.onContentElementChange(c.value)});let p={boxSizing:`border-box`,"--radix-combobox-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-combobox-content-available-width":`var(--radix-popper-available-width)`,"--radix-combobox-content-available-height":`var(--radix-popper-available-height)`,"--radix-combobox-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-combobox-trigger-height":`var(--radix-popper-anchor-height)`};return Fu({position:i}),(e,t)=>(L(),l(V(bu),null,{default:W(()=>[e.dismissable?(L(),l(V(Cc),{key:0,"as-child":``,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onDismiss:t[0]||=e=>V(a).onOpenChange(!1),onFocusOutside:t[1]||=e=>{var t;(t=V(a).parentElement.value)!=null&&t.contains(e.target)&&e.preventDefault(),r(`focusOutside`,e)},onInteractOutside:t[2]||=e=>r(`interactOutside`,e),onEscapeKeyDown:t[3]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[4]||=e=>{var t;(t=V(a).parentElement.value)!=null&&t.contains(e.target)&&e.preventDefault(),r(`pointerDownOutside`,e)}},{default:W(()=>[(L(),l(fe(V(i)===`popper`?V(lu):V(Q)),j({...e.$attrs,...V(d)},{id:V(a).contentId,ref:V(o),role:`listbox`,"data-state":V(a).open.value?`open`:`closed`,style:{display:`flex`,flexDirection:`column`,outline:`none`,...V(i)===`popper`?p:{}},onPointerleave:f}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`style`]))]),_:3},8,[`disable-outside-pointer-events`])):(L(),l(fe(V(i)===`popper`?V(lu):V(Q)),j({key:1},{...e.$attrs,...u.value},{id:V(a).contentId,ref:V(o),role:`listbox`,"data-state":V(a).open.value?`open`:`closed`,style:{display:`flex`,flexDirection:`column`,outline:`none`,...V(i)===`popper`?p:{}},onPointerleave:f}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`style`]))]),_:3}))}}),Lu=g({__name:`ComboboxContent`,props:{forceMount:{type:Boolean},position:{},bodyLock:{type:Boolean},dismissable:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=hs(e,t),{forwardRef:r}=X(),i=Cu();return i.contentId||=Z(void 0,`radix-vue-combobox-content`),(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(i).open.value},{default:W(()=>[m(Iu,j({...V(n),...e.$attrs},{ref:V(r)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),Ru=g({__name:`ComboboxEmpty`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;X();let n=Cu(),r=s(()=>n.filteredOptions.value.length===0);return(e,n)=>r.value?(L(),l(V(Q),P(j({key:0},t)),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`No options`)])]),_:3},16)):u(``,!0)}});function zu(e){let t=Jo({nonce:R()});return s(()=>{var n;return e?.value||(n=t.nonce)?.value})}const Bu=g({__name:`ComboboxViewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e){let n=e,{forwardRef:r}=X(),{nonce:i}=B(n),a=zu(i);return(e,i)=>(L(),f(t,null,[m(V(Q),j({...e.$attrs,...n},{ref:V(r),"data-radix-combobox-viewport":``,role:`presentation`,style:{position:`relative`,flex:1,overflow:`auto`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16),m(V(Q),{as:`style`,nonce:V(a)},{default:W(()=>[p(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-radix-combobox-viewport]::-webkit-scrollbar { display: none; } `)]),_:1},8,[`nonce`])],64))}}),[Vu,Hu]=q(`ComboboxItem`),Uu=`combobox.select`,Wu=g({__name:`ComboboxItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{disabled:i}=B(n),a=Cu();Au({id:``,options:R([])});let{forwardRef:o}=X(),c=s(()=>{var e,t;return a.multiple.value&&Array.isArray(a.modelValue.value)?(e=a.modelValue.value)?.some(e=>Oa(e,n.value)):Oa((t=a.modelValue)?.value,n.value)}),u=s(()=>Oa(a.selectedValue.value,n.value)),d=Z(void 0,`radix-vue-combobox-item`),f=Z(void 0,`radix-vue-combobox-option`),h=s(()=>a.isUserInputted.value?a.searchTerm.value===``||!!a.filteredOptions.value.find(e=>Oa(e,n.value)):!0);async function g(e){r(`select`,e),!(e!=null&&e.defaultPrevented)&&!i.value&&e&&a.onValueChange(n.value)}function _(e){if(!e)return;let t={originalEvent:e,value:n.value};Sa(Uu,g,t)}async function v(e){await N(),!e.defaultPrevented&&a.onSelectedValueChange(n.value)}if(n.value===``)throw Error(`A must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.`);return Hu({isSelected:c}),(e,t)=>(L(),l(V(xu),{value:e.value},{default:W(()=>[Ae(m(V(Q),{id:V(f),ref:V(o),role:`option`,tabindex:`-1`,"aria-labelledby":V(d),"data-highlighted":u.value?``:void 0,"aria-selected":c.value,"data-state":c.value?`checked`:`unchecked`,"aria-disabled":V(i)||void 0,"data-disabled":V(i)?``:void 0,as:e.as,"as-child":e.asChild,"data-hidden":h.value?void 0:!0,onClick:_,onPointermove:v},{default:W(()=>[z(e.$slots,`default`,{},()=>[p(ve(e.value),1)])]),_:3},8,[`id`,`aria-labelledby`,`data-highlighted`,`aria-selected`,`data-state`,`aria-disabled`,`data-disabled`,`as`,`as-child`,`data-hidden`]),[[De,h.value]])]),_:3},8,[`value`]))}}),Gu=g({__name:`ComboboxItemIndicator`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e;X();let n=Vu();return(e,r)=>V(n).isSelected.value?(L(),l(V(Q),j({key:0,"aria-hidden":`true`},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}}),Ku=g({__name:`ComboboxSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Q),j(t,{"aria-hidden":`true`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),qu=g({__name:`ComboboxArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e,n=Cu(),r=Pu();return X(),(e,i)=>V(n).open.value&&V(r).position.value===`popper`?(L(),l(V(pu),P(j({key:0},t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}}),Ju=g({__name:`ComboboxPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Yu=g({__name:`MenuAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(nu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Xu=g({__name:`MenuArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(pu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}});function Zu(){let e=R(!1);return I(()=>{Do(`keydown`,()=>{e.value=!0},{capture:!0,passive:!0}),Do([`pointerdown`,`pointermove`],()=>{e.value=!1},{capture:!0,passive:!0})}),e}const Qu=no(Zu),[$u,ed]=q([`MenuRoot`,`MenuSub`],`MenuContext`),[td,nd]=q(`MenuRoot`),rd=g({__name:`MenuRoot`,props:{open:{type:Boolean,default:!1},dir:{},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{modal:i,dir:a}=B(n),o=cs(a),s=J(n,`open`,r),c=R(),u=Qu();return ed({open:s,onOpenChange:e=>{s.value=e},content:c,onContentChange:e=>{c.value=e}}),nd({onClose:()=>{s.value=!1},isUsingKeyboardRef:u,dir:o,modal:i}),(e,t)=>(L(),l(V(tu),null,{default:W(()=>[z(e.$slots,`default`)]),_:3}))}}),id=`rovingFocusGroup.onEntryFocus`,ad={bubbles:!1,cancelable:!0},od={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function sd(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function cd(e,t,n){let r=sd(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return od[r]}function ld(e,t=!1){let n=Y();for(let r of e)if(r===n||(r.focus({preventScroll:t}),Y()!==n))return}function ud(e,t){return e.map((n,r)=>e[(t+r)%e.length])}const[dd,fd]=q(`RovingFocusGroup`),pd=g({__name:`RovingFocusGroup`,props:{orientation:{default:void 0},dir:{},loop:{type:Boolean,default:!1},currentTabStopId:{},defaultCurrentTabStopId:{},preventScrollOnEntryFocus:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`entryFocus`,`update:currentTabStopId`],setup(e,{expose:t,emit:n}){let r=e,i=n,{loop:a,orientation:o,dir:s}=B(r),c=cs(s),u=J(r,`currentTabStopId`,i,{defaultValue:r.defaultCurrentTabStopId,passive:r.currentTabStopId===void 0}),d=R(!1),f=R(!1),p=R(0),{getItems:h}=yu();function g(e){let t=!f.value;if(e.currentTarget&&e.target===e.currentTarget&&t&&!d.value){let t=new CustomEvent(id,ad);if(e.currentTarget.dispatchEvent(t),i(`entryFocus`,t),!t.defaultPrevented){let e=h().map(e=>e.ref).filter(e=>e.dataset.disabled!==``),t=e.find(e=>e.getAttribute(`data-active`)===`true`),n=e.find(e=>e.id===u.value),i=[t,n,...e].filter(Boolean);ld(i,r.preventScrollOnEntryFocus)}}f.value=!1}function _(){setTimeout(()=>{f.value=!1},1)}return t({getItems:h}),fd({loop:a,dir:c,orientation:o,currentTabStopId:u,onItemFocus:e=>{u.value=e},onItemShiftTab:()=>{d.value=!0},onFocusableItemAdd:()=>{p.value++},onFocusableItemRemove:()=>{p.value--}}),(e,t)=>(L(),l(V(bu),null,{default:W(()=>[m(V(Q),{tabindex:d.value||p.value===0?-1:0,"data-orientation":V(o),as:e.as,"as-child":e.asChild,dir:V(c),style:{outline:`none`},onMousedown:t[0]||=e=>f.value=!0,onMouseup:_,onFocus:g,onBlur:t[1]||=e=>d.value=!1},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`as`,`as-child`,`dir`])]),_:3}))}}),md=g({__name:`RovingFocusItem`,props:{tabStopId:{},focusable:{type:Boolean,default:!0},active:{type:Boolean,default:!0},allowShiftKey:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=dd(),r=s(()=>t.tabStopId||Z()),i=s(()=>n.currentTabStopId.value===r.value),{getItems:a}=Su();I(()=>{t.focusable&&n.onFocusableItemAdd()}),ae(()=>{t.focusable&&n.onFocusableItemRemove()});function o(e){if(e.key===`Tab`&&e.shiftKey){n.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let r=cd(e,n.orientation.value,n.dir.value);if(r!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!t.allowShiftKey&&e.shiftKey)return;e.preventDefault();let i=[...a().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)];if(r===`last`)i.reverse();else if(r===`prev`||r===`next`){r===`prev`&&i.reverse();let t=i.indexOf(e.currentTarget);i=n.loop.value?ud(i,t+1):i.slice(t+1)}N(()=>ld(i))}}return(e,t)=>(L(),l(V(xu),null,{default:W(()=>[m(V(Q),{tabindex:i.value?0:-1,"data-orientation":V(n).orientation.value,"data-active":e.active,"data-disabled":e.focusable?void 0:``,as:e.as,"as-child":e.asChild,onMousedown:t[0]||=t=>{e.focusable?V(n).onItemFocus(r.value):t.preventDefault()},onFocus:t[1]||=e=>V(n).onItemFocus(r.value),onKeydown:o},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}}),[hd,gd]=q(`MenuContent`),_d=g({__name:`MenuContentImpl`,props:A({loop:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},disableOutsideScroll:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},{...ou}),emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`,`dismiss`],setup(e,{emit:t}){let n=e,r=t,i=$u(),a=td(),{trapFocus:o,disableOutsidePointerEvents:s,loop:c}=B(n);ds(),es(s.value);let u=R(``),d=R(0),f=R(0),p=R(null),h=R(`right`),g=R(0),_=R(null),{createCollection:v}=os(),{forwardRef:y,currentElement:b}=X(),x=v(b);H(b,e=>{i.onContentChange(e)});let{handleTypeaheadSearch:S}=Rs(x);ae(()=>{window.clearTimeout(d.value)});function C(e){var t,n;return h.value===(t=p.value)?.side&&Qc(e,(n=p.value)?.area)}async function w(e){var t;r(`openAutoFocus`,e),!e.defaultPrevented&&(e.preventDefault(),(t=b.value)==null||t.focus({preventScroll:!0}))}function T(e){if(e.defaultPrevented)return;let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1,i=Ho(e,Y(),b.value,{loop:c.value,arrowKeyOptions:`vertical`,dir:a?.dir.value,focus:!0,attributeName:`[data-radix-vue-collection-item]:not([data-disabled])`});if(i)return i?.focus();if(e.code===`Space`||(t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&S(e.key)),e.target!==b.value)||!Wc.includes(e.key))return;e.preventDefault();let o=x.value;Uc.includes(e.key)&&o.reverse(),Xc(o)}function E(e){var t,n;(n=(t=e?.currentTarget)?.contains)!=null&&n.call(t,e.target)||(window.clearTimeout(d.value),u.value=``)}function D(e){var t;if(!$c(e))return;let n=e.target,r=g.value!==e.clientX;if((t=e?.currentTarget)!=null&&t.contains(n)&&r){let t=e.clientX>g.value?`right`:`left`;h.value=t,g.value=e.clientX}}return gd({onItemEnter:e=>!!C(e),onItemLeave:e=>{var t;C(e)||((t=b.value)==null||t.focus(),_.value=null)},onTriggerLeave:e=>!!C(e),searchRef:u,pointerGraceTimerRef:f,onPointerGraceIntentChange:e=>{p.value=e}}),(e,t)=>(L(),l(V(zc),{"as-child":``,trapped:V(o),onMountAutoFocus:w,onUnmountAutoFocus:t[7]||=e=>r(`closeAutoFocus`,e)},{default:W(()=>[m(V(Cc),{"as-child":``,"disable-outside-pointer-events":V(s),onEscapeKeyDown:t[2]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[3]||=e=>r(`pointerDownOutside`,e),onFocusOutside:t[4]||=e=>r(`focusOutside`,e),onInteractOutside:t[5]||=e=>r(`interactOutside`,e),onDismiss:t[6]||=e=>r(`dismiss`)},{default:W(()=>[m(V(pd),{"current-tab-stop-id":_.value,"onUpdate:currentTabStopId":t[0]||=e=>_.value=e,"as-child":``,orientation:`vertical`,dir:V(a).dir.value,loop:V(c),onEntryFocus:t[1]||=e=>{r(`entryFocus`,e),V(a).isUsingKeyboardRef.value||e.preventDefault()}},{default:W(()=>[m(V(lu),{ref:V(y),role:`menu`,as:e.as,"as-child":e.asChild,"aria-orientation":`vertical`,"data-radix-menu-content":``,"data-state":V(qc)(V(i).open.value),dir:V(a).dir.value,side:e.side,"side-offset":e.sideOffset,align:e.align,"align-offset":e.alignOffset,"avoid-collisions":e.avoidCollisions,"collision-boundary":e.collisionBoundary,"collision-padding":e.collisionPadding,"arrow-padding":e.arrowPadding,"prioritize-position":e.prioritizePosition,sticky:e.sticky,"hide-when-detached":e.hideWhenDetached,onKeydown:T,onBlur:E,onPointermove:D},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`,`dir`,`side`,`side-offset`,`align`,`align-offset`,`avoid-collisions`,`collision-boundary`,`collision-padding`,`arrow-padding`,`prioritize-position`,`sticky`,`hide-when-detached`])]),_:3},8,[`current-tab-stop-id`,`dir`,`loop`])]),_:3},8,[`disable-outside-pointer-events`])]),_:3},8,[`trapped`]))}}),vd=g({inheritAttrs:!1,__name:`MenuItemImpl`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=hd(),{forwardRef:r}=X(),i=R(!1);async function a(e){if(!e.defaultPrevented&&$c(e)){if(t.disabled)n.onItemLeave(e);else if(!n.onItemEnter(e)){let t=e.currentTarget;t?.focus({preventScroll:!0})}}}async function o(e){await N(),!e.defaultPrevented&&$c(e)&&n.onItemLeave(e)}return(e,t)=>(L(),l(V(xu),{value:{textValue:e.textValue}},{default:W(()=>[m(V(Q),j({ref:V(r),role:`menuitem`,tabindex:`-1`},e.$attrs,{as:e.as,"as-child":e.asChild,"data-radix-vue-collection-item":``,"aria-disabled":e.disabled||void 0,"data-disabled":e.disabled?``:void 0,"data-highlighted":i.value?``:void 0,onPointermove:a,onPointerleave:o,onFocus:t[0]||=async t=>{await N(),!(t.defaultPrevented||e.disabled)&&(i.value=!0)},onBlur:t[1]||=async e=>{await N(),!e.defaultPrevented&&(i.value=!1)}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`aria-disabled`,`data-disabled`,`data-highlighted`])]),_:3},8,[`value`]))}}),yd=g({__name:`MenuItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=td(),s=hd(),c=R(!1);async function u(){let e=a.value;if(!n.disabled&&e){let e=new CustomEvent(Bc,{bubbles:!0,cancelable:!0});r(`select`,e),await N(),e.defaultPrevented?c.value=!1:o.onClose()}}return(e,t)=>(L(),l(vd,j(n,{ref:V(i),onClick:u,onPointerdown:t[0]||=()=>{c.value=!0},onPointerup:t[1]||=async e=>{var t;await N(),!e.defaultPrevented&&(c.value||(t=e.currentTarget)==null||t.click())},onKeydown:t[2]||=async t=>{let n=V(s).searchRef.value!==``;e.disabled||n&&t.key===` `||V(Vc).includes(t.key)&&(t.currentTarget.click(),t.preventDefault())}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[bd,xd]=q([`MenuCheckboxItem`,`MenuRadioItem`],`MenuItemIndicatorContext`),Sd=g({__name:`MenuItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=bd({checked:R(!1)});return(e,n)=>(L(),l(V(Xs),{present:e.forceMount||V(Jc)(V(t).checked.value)||V(t).checked.value===!0},{default:W(()=>[m(V(Q),{as:e.as,"as-child":e.asChild,"data-state":V(Yc)(V(t).checked.value)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`])]),_:3},8,[`present`]))}}),Cd=g({__name:`MenuCheckboxItem`,props:{checked:{type:[Boolean,String],default:!1},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=t,i=J(n,`checked`,r);return xd({checked:i}),(e,t)=>(L(),l(yd,j({role:`menuitemcheckbox`},n,{"aria-checked":V(Jc)(V(i))?`mixed`:V(i),"data-state":V(Yc)(V(i)),onSelect:t[0]||=async e=>{r(`select`,e),V(Jc)(V(i))?i.value=!0:i.value=!V(i)}}),{default:W(()=>[z(e.$slots,`default`,{checked:V(i)})]),_:3},16,[`aria-checked`,`data-state`]))}}),wd=g({__name:`MenuRootContentModal`,props:{loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=hs(n,r),a=$u(),{forwardRef:o,currentElement:s}=X();return Ms(s),(e,t)=>(L(),l(_d,j(V(i),{ref:V(o),"trap-focus":V(a).open.value,"disable-outside-pointer-events":V(a).open.value,"disable-outside-scroll":!0,onDismiss:t[0]||=e=>V(a).onOpenChange(!1),onFocusOutside:t[1]||=K(e=>r(`focusOutside`,e),[`prevent`])}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`trap-focus`,`disable-outside-pointer-events`]))}}),Td=g({__name:`MenuRootContentNonModal`,props:{loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t),r=$u();return(e,t)=>(L(),l(_d,j(V(n),{"trap-focus":!1,"disable-outside-pointer-events":!1,"disable-outside-scroll":!1,onDismiss:t[0]||=e=>V(r).onOpenChange(!1)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Ed=g({__name:`MenuContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t),r=$u(),i=td();return(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(r).open.value},{default:W(()=>[V(i).modal.value?(L(),l(wd,P(j({key:0},{...e.$attrs,...V(n)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):(L(),l(Td,P(j({key:1},{...e.$attrs,...V(n)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Dd=g({__name:`MenuGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),j({role:`group`},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Od=g({__name:`MenuLabel`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),kd=g({__name:`MenuPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[Ad,jd]=q(`MenuRadioGroup`),Md=g({__name:`MenuRadioGroup`,props:{modelValue:{default:``},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t);return jd({modelValue:r,onValueChange:e=>{r.value=e}}),(e,t)=>(L(),l(Dd,P(S(n)),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(r)})]),_:3},16))}}),Nd=g({__name:`MenuRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{value:i}=B(n),a=Ad(),o=s(()=>a.modelValue.value===i?.value);return xd({checked:o}),(e,t)=>(L(),l(yd,j({role:`menuitemradio`},n,{"aria-checked":o.value,"data-state":V(Yc)(o.value),onSelect:t[0]||=async e=>{r(`select`,e),V(a).onValueChange(V(i))}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-checked`,`data-state`]))}}),Pd=g({__name:`MenuSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),j(t,{role:`separator`,"aria-orientation":`horizontal`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[Fd,Id]=q(`MenuSub`),Ld=g({__name:`MenuSub`,props:{open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=J(n,`open`,t,{defaultValue:!1,passive:n.open===void 0}),i=$u(),a=R(),o=R();return U(e=>{i?.open.value===!1&&(r.value=!1),e(()=>r.value=!1)}),ed({open:r,onOpenChange:e=>{r.value=e},content:o,onContentChange:e=>{o.value=e}}),Id({triggerId:``,contentId:``,trigger:a,onTriggerChange:e=>{a.value=e}}),(e,t)=>(L(),l(V(tu),null,{default:W(()=>[z(e.$slots,`default`)]),_:3}))}}),Rd=g({__name:`MenuSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t),r=$u(),i=td(),a=Fd(),{forwardRef:o,currentElement:s}=X();return a.contentId||=Z(void 0,`radix-vue-menu-sub-content`),(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(r).open.value},{default:W(()=>[m(_d,j(V(n),{id:V(a).contentId,ref:V(o),"aria-labelledby":V(a).triggerId,align:`start`,side:V(i).dir.value===`rtl`?`left`:`right`,"disable-outside-pointer-events":!1,"disable-outside-scroll":!1,"trap-focus":!1,onOpenAutoFocus:t[0]||=K(e=>{var t;V(i).isUsingKeyboardRef.value&&((t=V(s))==null||t.focus())},[`prevent`]),onCloseAutoFocus:t[1]||=K(()=>{},[`prevent`]),onFocusOutside:t[2]||=e=>{e.defaultPrevented||e.target!==V(a).trigger.value&&V(r).onOpenChange(!1)},onEscapeKeyDown:t[3]||=e=>{V(i).onClose(),e.preventDefault()},onKeydown:t[4]||=e=>{var t,n;let o=(t=e.currentTarget)?.contains(e.target),s=V(Kc)[V(i).dir.value].includes(e.key);o&&s&&(V(r).onOpenChange(!1),(n=V(a).trigger.value)==null||n.focus(),e.preventDefault())}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`,`side`])]),_:3},8,[`present`]))}}),zd=g({__name:`MenuSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=$u(),r=td(),i=Fd(),a=hd(),o=R(null);i.triggerId||=Z(void 0,`radix-vue-menu-sub-trigger`);function s(){o.value&&window.clearTimeout(o.value),o.value=null}ae(()=>{s()});function c(e){!$c(e)||a.onItemEnter(e)||!t.disabled&&!n.open.value&&!o.value&&(a.onPointerGraceIntentChange(null),o.value=window.setTimeout(()=>{n.onOpenChange(!0),s()},100))}async function u(e){var t,r;if(!$c(e))return;s();let i=(t=n.content.value)?.getBoundingClientRect();if(i!=null&&i.width){let t=(r=n.content.value)?.dataset.side,o=t===`right`,s=o?-5:5,c=i[o?`left`:`right`],l=i[o?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+s,y:e.clientY},{x:c,y:i.top},{x:l,y:i.top},{x:l,y:i.bottom},{x:c,y:i.bottom}],side:t}),window.clearTimeout(a.pointerGraceTimerRef.value),a.pointerGraceTimerRef.value=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e))return;a.onPointerGraceIntentChange(null)}}async function d(e){var i;let o=a.searchRef.value!==``;t.disabled||o&&e.key===` `||Gc[r.dir.value].includes(e.key)&&(n.onOpenChange(!0),await N(),(i=n.content.value)==null||i.focus(),e.preventDefault())}return(e,r)=>(L(),l(Yu,{"as-child":``},{default:W(()=>[m(vd,j(t,{id:V(i).triggerId,ref:e=>{var t;(t=V(i))==null||t.onTriggerChange(e?.$el)},"aria-haspopup":`menu`,"aria-expanded":V(n).open.value,"aria-controls":V(i).contentId,"data-state":V(qc)(V(n).open.value),onClick:r[0]||=async e=>{t.disabled||e.defaultPrevented||(e.currentTarget.focus(),V(n).open.value||V(n).onOpenChange(!0))},onPointermove:c,onPointerleave:u,onKeydown:d}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`aria-expanded`,`aria-controls`,`data-state`])]),_:3}))}}),[Bd,Vd]=q(`ContextMenuRoot`),Hd=g({inheritAttrs:!1,__name:`ContextMenuRoot`,props:{dir:{},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{dir:i,modal:a}=B(n);X();let o=cs(i),s=R(!1);return Vd({open:s,onOpenChange:e=>{s.value=e},dir:o,modal:a}),H(s,e=>{r(`update:open`,e)}),(e,t)=>(L(),l(V(rd),{open:s.value,"onUpdate:open":t[0]||=e=>s.value=e,dir:V(o),modal:V(a)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`open`,`dir`,`modal`]))}});function Ud(e){return e.pointerType!==`mouse`}const Wd=g({inheritAttrs:!1,__name:`ContextMenuTrigger`,props:{disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`span`}},setup(e){let n=e,{disabled:r}=B(n),{forwardRef:i}=X(),a=Bd(),o=R({x:0,y:0}),c=s(()=>({getBoundingClientRect:()=>({width:0,height:0,left:o.value.x,right:o.value.x,top:o.value.y,bottom:o.value.y,...o.value})})),l=R(0);function u(){window.clearTimeout(l.value)}function d(e){o.value={x:e.clientX,y:e.clientY},a.onOpenChange(!0)}async function p(e){r.value||(await N(),e.defaultPrevented||(u(),d(e),e.preventDefault()))}async function h(e){r.value||(await N(),Ud(e)&&!e.defaultPrevented&&(u(),l.value=window.setTimeout(()=>d(e),700)))}async function g(e){r.value||(await N(),Ud(e)&&!e.defaultPrevented&&u())}return(e,n)=>(L(),f(t,null,[m(V(Yu),{as:`template`,element:c.value},null,8,[`element`]),m(V(Q),j({ref:V(i),as:e.as,"as-child":e.asChild,"data-state":V(a).open.value?`open`:`closed`,"data-disabled":V(r)?``:void 0,style:{WebkitTouchCallout:`none`}},e.$attrs,{onContextmenu:p,onPointerdown:h,onPointermove:g,onPointercancel:g,onPointerup:g}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-state`,`data-disabled`])],64))}}),Gd=g({__name:`ContextMenuPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(kd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Kd=g({__name:`ContextMenuContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},alignOffset:{default:0},avoidCollisions:{type:Boolean,default:!0},collisionBoundary:{default:()=>[]},collisionPadding:{default:0},sticky:{default:`partial`},hideWhenDetached:{type:Boolean,default:!1},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let r=Bd(),i=R(!1);return(e,t)=>(L(),l(V(Ed),j(V(n),{side:`right`,"side-offset":2,align:`start`,style:{"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`},onCloseAutoFocus:t[0]||=e=>{!e.defaultPrevented&&i.value&&e.preventDefault(),i.value=!1},onInteractOutside:t[1]||=e=>{!e.defaultPrevented&&!V(r).modal.value&&(i.value=!0)}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),qd=g({__name:`ContextMenuArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Xu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Jd=g({__name:`ContextMenuItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(yd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Yd=g({__name:`ContextMenuGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Dd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Xd=g({__name:`ContextMenuSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Pd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Zd=g({__name:`ContextMenuCheckboxItem`,props:{checked:{type:[Boolean,String]},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Cd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Qd=g({__name:`ContextMenuItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Sd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),$d=g({__name:`ContextMenuLabel`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Od),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ef=g({__name:`ContextMenuRadioGroup`,props:{modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Md),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),tf=g({__name:`ContextMenuRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Nd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),nf=g({__name:`ContextMenuSub`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0});return(e,t)=>(L(),l(V(Ld),{open:V(i),"onUpdate:open":t[0]||=e=>E(i)?i.value=e:null},{default:W(()=>[z(e.$slots,`default`,{open:V(i)})]),_:3},8,[`open`]))}}),rf=g({__name:`ContextMenuSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(L(),l(V(Rd),j(V(n),{style:{"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),af=g({__name:`ContextMenuSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(zd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),sf=[`hour`,`minute`,`second`];function cf(e){let{formatter:t}=e,n=Wa.map(t=>[t,e.value[t]]);if(`hour`in e.value){let r=Ga.map(n=>n===`dayPeriod`?[n,t.dayPeriod(aa(e.value))]:[n,e.value[n]]),i=[...n,...r];return Object.fromEntries(i)}return Object.fromEntries(n)}function lf(e){let t=Ka.map(e=>e===`dayPeriod`?[e,`AM`]:[e,null]).filter(([t])=>t===`literal`||t===null||e===`minute`&&t===`second`||e===`hour`&&(t===`second`||t===`minute`)?!1:e===`day`?!sf.includes(t)&&t!==`dayPeriod`:!0);return Object.fromEntries(t)}function uf(e){let{segmentValues:t,formatter:n,locale:r}=e;function i(i){if(`hour`in t){let a=t[i];return a===null?Ra(i,``,r.value):i===`day`&&t.month!==null?n.part(e.dateRef.set({[i]:a,month:t.month}),i,{hourCycle:e.hourCycle===24?`h24`:void 0}):n.part(e.dateRef.set({[i]:a}),i,{hourCycle:e.hourCycle===24?`h24`:void 0})}else{if(qa(i)){let a=t[i];return a===null?Ra(i,``,r.value):i===`day`&&t.month!==null?n.part(e.dateRef.set({[i]:a,month:t.month}),i):n.part(e.dateRef.set({[i]:a}),i)}return``}}return Object.keys(t).reduce((e,n)=>{if(!Ja(n))return e;if(`hour`in t&&n===`dayPeriod`){let i=t[n];i===null?e[n]=Ra(n,`AM`,r.value):e[n]=i}else e[n]=i(n);return e},{})}function df(e){let{granularity:t,formatter:n,contentObj:r,hideTimeZone:i,hourCycle:a}=e;return n.toParts(e.dateRef,Ya(t,a)).map(e=>[`literal`,`timeZoneName`,null].includes(e.type)||!Ja(e.type)?{part:e.type,value:e.value}:{part:e.type,value:r[e.type]}).filter(t=>!(t.part===null||t.value===null||t.part===`timeZoneName`&&(!sa(e.dateRef)||i)))}function ff(e){let t=uf(e),n=df({contentObj:t,...e});return{obj:t,arr:n}}function pf(e){let t=Vs();return e===t.ARROW_RIGHT||e===t.ARROW_LEFT}function mf(e){return!Number.isNaN(Number.parseInt(e))}function hf(e){let t=Vs();return!!([t.ENTER,t.ARROW_UP,t.ARROW_DOWN,t.ARROW_LEFT,t.ARROW_RIGHT,t.BACKSPACE,t.SPACE,`a`,`A`,`p`,`P`].includes(e)||mf(e))}function gf(e){return Array.from(e.querySelectorAll(`[data-radix-vue-date-field-segment]`)).filter(e=>e.getAttribute(`data-radix-vue-date-field-segment`)!==`literal`)}const _f=[`id`,`value`,`name`,`disabled`,`required`],[vf,yf]=q(`DateFieldRoot`),bf=g({inheritAttrs:!1,__name:`DateFieldRoot`,props:{defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:placeholder`],setup(e,{expose:n,emit:r}){let i=e,a=r,{locale:o,disabled:l,readonly:u,isDateUnavailable:d,granularity:p,defaultValue:h,dir:g}=B(i),_=ss(i.locale),v=cs(g),{primitiveElement:y,currentElement:b}=Us(),x=R(new Set);I(()=>{gf(b.value).forEach(e=>x.value.add(e))});let S=J(i,`modelValue`,a,{defaultValue:h.value,passive:i.modelValue===void 0}),C=Na({defaultPlaceholder:i.placeholder,granularity:p.value,defaultValue:S.value,locale:i.locale}),w=J(i,`placeholder`,a,{defaultValue:i.defaultPlaceholder??C.copy(),passive:i.placeholder===void 0}),T=s(()=>i.granularity?ca(w.value)?i.granularity:`day`:ca(w.value)?`minute`:`day`),E=s(()=>{var e;return S.value?!!((e=d.value)!=null&&e.call(d,S.value)||i.minValue&&ua(S.value,i.minValue)||i.maxValue&&ua(i.maxValue,S.value)):!1}),D=lf(T.value),O=R(S.value?{...cf({value:S.value,formatter:_})}:{...D}),k=s(()=>ff({granularity:T.value,dateRef:w.value,formatter:_,hideTimeZone:i.hideTimeZone,hourCycle:i.hourCycle,segmentValues:O.value,locale:o})),A=s(()=>k.value.arr),M=s(()=>A.value.filter(({part:e})=>e!==`literal`));H(o,e=>{_.getLocale()!==e&&(_.setLocale(e),N(()=>{x.value.clear(),gf(b.value).forEach(e=>x.value.add(e))}))}),H(S,e=>{!Ma(e)&&w.value.compare(e)!==0&&(w.value=e.copy())}),H([S,o],([e])=>{Ma(e)?Object.values(O.value).every(e=>e!==null)&&e===void 0&&(O.value={...D}):O.value={...cf({value:e,formatter:_})}});let P=R(null),F=s(()=>Array.from(x.value).findIndex(e=>{var t;return e.getAttribute(`data-radix-vue-date-field-segment`)===(t=P.value)?.getAttribute(`data-radix-vue-date-field-segment`)})),ee=s(()=>{let e=v.value===`rtl`?-1:1;return(e<0?F.value<0:F.value>x.value.size-1)?null:Array.from(x.value)[F.value+e]}),te=s(()=>{let e=v.value===`rtl`?-1:1;return(e>0?F.value<0:F.value>x.value.size-1)?null:Array.from(x.value)[F.value-e]}),ne=Vs();function re(e){var t,n;pf(e.key)&&(e.key===ne.ARROW_LEFT&&((t=te.value)==null||t.focus()),e.key===ne.ARROW_RIGHT&&((n=ee.value)==null||n.focus()))}function ie(e){P.value=e}return yf({isDateUnavailable:d.value,locale:o,modelValue:S,placeholder:w,disabled:l,formatter:_,hourCycle:i.hourCycle,readonly:u,segmentValues:O,isInvalid:E,segmentContents:M,elements:x,setFocusedElement:ie,focusNext(){var e;(e=ee.value)==null||e.focus()}}),n({setFocusedElement:ie}),(e,n)=>(L(),f(t,null,[m(V(Q),j(e.$attrs,{ref_key:`primitiveElement`,ref:y,role:`group`,"aria-disabled":V(l)?!0:void 0,"data-disabled":V(l)?``:void 0,"data-readonly":V(u)?``:void 0,"data-invalid":E.value?``:void 0,dir:V(v),onKeydown:G(re,[`left`,`right`])}),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(S),segments:A.value,isInvalid:E.value})]),_:3},16,[`aria-disabled`,`data-disabled`,`data-readonly`,`data-invalid`,`dir`]),c(`input`,{id:e.id,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:V(S)?V(S).toString():``,name:e.name,disabled:V(l),required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0},onFocus:n[0]||=e=>{var t,n;return(n=(t=Array.from(x.value))?.[0])?.focus()}},null,40,_f)],64))}});function xf(e){return{role:`spinbutton`,contenteditable:!0,tabindex:e.disabled?void 0:0,spellcheck:!1,inputmode:`numeric`,autocorrect:`off`,enterkeyhint:`next`,style:`caret-color: transparent;`}}function Sf(e){let{segmentValues:t,placeholder:n}=e,r=t.day===null,i=t.day?n.set({day:t.day}):n,a=i.day,o=1,s=la(i),c=r?`Empty`:`${a}`;return{...xf(e),"aria-label":`day,`,"aria-valuemin":o,"aria-valuemax":s,"aria-valuenow":a,"aria-valuetext":c,"data-placeholder":r?``:void 0}}function Cf(e){let{segmentValues:t,placeholder:n,formatter:r}=e,i=t.month===null,a=t.month?n.set({month:t.month}):n,o=a.month,s=1,c=12,l=i?`Empty`:`${o} - ${r.fullMonth(aa(a))}`;return{...xf(e),"aria-label":`month, `,contenteditable:!0,"aria-valuemin":s,"aria-valuemax":c,"aria-valuenow":o,"aria-valuetext":l,"data-placeholder":i?``:void 0}}function wf(e){let{segmentValues:t,placeholder:n}=e,r=t.year===null,i=t.year?n.set({year:t.year}):n,a=1,o=9999,s=i.year,c=r?`Empty`:`${s}`;return{...xf(e),"aria-label":`year, `,"aria-valuemin":a,"aria-valuemax":o,"aria-valuenow":s,"aria-valuetext":c,"data-placeholder":r?``:void 0}}function Tf(e){let{segmentValues:t,hourCycle:n,placeholder:r}=e;if(!(`hour`in t)||!(`hour`in r))return{};let i=t.hour===null,a=t.hour?r.set({hour:t.hour}):r,o=n===12?1:0,s=n===12?12:23,c=a.hour,l=i?`Empty`:`${c} ${t.dayPeriod??``}`;return{...xf(e),"aria-label":`hour, `,"aria-valuemin":o,"aria-valuemax":s,"aria-valuenow":c,"aria-valuetext":l,"data-placeholder":i?``:void 0}}function Ef(e){let{segmentValues:t,placeholder:n}=e;if(!(`minute`in t)||!(`minute`in n))return{};let r=t.minute===null,i=(t.minute?n.set({minute:t.minute}):n).minute,a=0,o=59,s=r?`Empty`:`${i}`;return{...xf(e),"aria-label":`minute, `,"aria-valuemin":a,"aria-valuemax":o,"aria-valuenow":i,"aria-valuetext":s,"data-placeholder":r?``:void 0}}function Df(e){let{segmentValues:t,placeholder:n}=e;if(!(`second`in t)||!(`second`in n))return{};let r=t.second===null,i=(t.second?n.set({second:t.second}):n).second,a=0,o=59,s=r?`Empty`:`${i}`;return{...xf(e),"aria-label":`second, `,"aria-valuemin":a,"aria-valuemax":o,"aria-valuenow":i,"aria-valuetext":s,"data-placeholder":r?``:void 0}}function Of(e){let{segmentValues:t}=e;if(!(`dayPeriod`in t))return{};let n=0,r=12,i=t.hour?t.hour>12?t.hour-12:t.hour:0,a=t.dayPeriod??`AM`;return{...xf(e),inputmode:`text`,"aria-label":`AM/PM`,"aria-valuemin":n,"aria-valuemax":r,"aria-valuenow":i,"aria-valuetext":a}}function kf(e){return{"aria-hidden":!0,"data-segment":`literal`}}function Af(e){return{role:`textbox`,"aria-label":`timezone, `,"data-readonly":!0,"data-segment":`timeZoneName`,tabindex:e.disabled?void 0:0,style:`caret-color: transparent;`}}function jf(e){let{segmentValues:t,placeholder:n}=e,r=0,i=0,a=0,o=`era`in t?t.era:n.era;return{...xf(e),"aria-label":`era`,"aria-valuemin":r,"aria-valuemax":i,"aria-valuenow":a,"aria-valuetext":o}}const Mf={day:{attrs:Sf},month:{attrs:Cf},year:{attrs:wf},hour:{attrs:Tf},minute:{attrs:Ef},second:{attrs:Df},dayPeriod:{attrs:Of},literal:{attrs:kf},timeZoneName:{attrs:Af},era:{attrs:jf}};function Nf(e){let t=Vs();function n({e,part:n,dateRef:r,prevValue:i}){let a=e.key===t.ARROW_UP?1:-1,o=0,s=59;if(i===null)return a>0?o:s;let c=[n,a];return r.set({[n]:i}).cycle(...c)[n]}function r(t){if(e.hasLeftFocus.value=!1,t===null)return t;let n=t.toString();return n.length===1?(e.modelValue.value=void 0,null):Number.parseInt(n.slice(0,-1))}function i({e:n,part:r,dateRef:i,prevValue:a,hourCycle:o}){let s=n.key===t.ARROW_UP?1:-1;if(a===null)return i[r];if(r===`hour`&&`hour`in i){let e=[r,s,{hourCycle:o}];return i.set({[r]:a}).cycle(...e)[r]}let c=[r,s];return r===`day`&&e.segmentValues.value.month!==null?i.set({[r]:a,month:e.segmentValues.value.month}).cycle(...c)[r]:i.set({[r]:a}).cycle(...c)[r]}function a(t,n,r){let i=!1,a=Math.floor(t/10);if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,r=null),r===null)return n===0?(e.lastKeyZero.value=!0,{value:null,moveToNext:i}):((e.lastKeyZero.value||n>a)&&(i=!0),e.lastKeyZero.value=!1,{value:n,moveToNext:i});let o=r.toString().length,s=Number.parseInt(r.toString()+n.toString());return o===2||s>t?((n>a||s>t)&&(i=!0),{value:n,moveToNext:i}):(i=!0,{value:s,moveToNext:i})}function o(t,n){let r=!1,i=5;if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,n=null),n===null)return t===0?(e.lastKeyZero.value=!0,{value:0,moveToNext:r}):((e.lastKeyZero.value||t>i)&&(r=!0),e.lastKeyZero.value=!1,{value:t,moveToNext:r});let a=n.toString().length,o=Number.parseInt(n.toString()+t.toString());return a===2||o>59?(t>i&&(r=!0),{value:t,moveToNext:r}):(r=!0,{value:o,moveToNext:r})}function c(t,n){let r=!1,i=2;if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,n=null),n===null)return t===0?(e.lastKeyZero.value=!0,{value:0,moveToNext:r}):((e.lastKeyZero.value||t>i)&&(r=!0),e.lastKeyZero.value=!1,{value:t,moveToNext:r});let a=n.toString().length,o=Number.parseInt(n.toString()+t.toString());return a===2||o>24?(t>i&&(r=!0),{value:t,moveToNext:r}):(r=!0,{value:o,moveToNext:r})}function l(t,n){let r=!1;if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,n=null),n===null)return{value:t===0?1:t,moveToNext:r};let i=n.toString()+t.toString();return i.length>4?{value:t===0?1:t,moveToNext:r}:(i.length===4&&(r=!0),{value:Number.parseInt(i),moveToNext:r})}let u=s(()=>{var t;return(t=Mf[e.part])?.attrs({disabled:e.disabled.value,placeholder:e.placeholder.value,hourCycle:e.hourCycle,segmentValues:e.segmentValues.value,formatter:e.formatter})??{}});function d(n){if(!hf(n.key)||pf(n.key))return;let o=e.segmentValues.value.day;if(n.key===t.ARROW_DOWN||n.key===t.ARROW_UP){e.segmentValues.value.day=i({e:n,part:`day`,dateRef:e.placeholder.value,prevValue:o});return}if(mf(n.key)){let t=Number.parseInt(n.key),r=e.segmentValues.value.month,i=la(r?e.placeholder.value.set({month:r}):e.placeholder.value),{value:s,moveToNext:c}=a(i,t,o);e.segmentValues.value.day=s,c&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.day=r(o))}function f(n){if(!hf(n.key)||pf(n.key))return;let o=e.segmentValues.value.month;if(n.key===t.ARROW_DOWN||n.key===t.ARROW_UP){e.segmentValues.value.month=i({e:n,part:`month`,dateRef:e.placeholder.value,prevValue:o});return}if(mf(n.key)){let t=Number.parseInt(n.key),{value:r,moveToNext:i}=a(12,t,o);e.segmentValues.value.month=r,i&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.month=r(o))}function p(n){if(!hf(n.key)||pf(n.key))return;let a=e.segmentValues.value.year;if(n.key===t.ARROW_DOWN||n.key===t.ARROW_UP){e.segmentValues.value.year=i({e:n,part:`year`,dateRef:e.placeholder.value,prevValue:a});return}if(mf(n.key)){let t=Number.parseInt(n.key),{value:r,moveToNext:i}=l(t,a);e.segmentValues.value.year=r,i&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.year=r(a))}function m(n){let a=e.placeholder.value;if(!hf(n.key)||pf(n.key)||!(`hour`in a)||!(`hour`in e.segmentValues.value))return;let o=e.segmentValues.value.hour,s=e.hourCycle;if(n.key===t.ARROW_UP||n.key===t.ARROW_DOWN){e.segmentValues.value.hour=i({e:n,part:`hour`,dateRef:e.placeholder.value,prevValue:o,hourCycle:s}),`dayPeriod`in e.segmentValues.value&&(e.segmentValues.value.hour<12?e.segmentValues.value.dayPeriod=`AM`:e.segmentValues.value.hour&&(e.segmentValues.value.dayPeriod=`PM`));return}if(mf(n.key)){let t=Number.parseInt(n.key),{value:r,moveToNext:i}=c(t,o);`dayPeriod`in e.segmentValues.value&&r&&r>12?e.segmentValues.value.dayPeriod=`PM`:`dayPeriod`in e.segmentValues.value&&r&&(e.segmentValues.value.dayPeriod=`AM`),e.segmentValues.value.hour=r,i&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.hour=r(o))}function h(i){let a=e.placeholder.value;if(!hf(i.key)||pf(i.key)||!(`minute`in a)||!(`minute`in e.segmentValues.value))return;let s=e.segmentValues.value.minute;if(e.segmentValues.value.minute=n({e:i,part:`minute`,dateRef:e.placeholder.value,prevValue:s}),mf(i.key)){let t=Number.parseInt(i.key),{value:n,moveToNext:r}=o(t,s);e.segmentValues.value.minute=n,r&&e.focusNext()}i.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.minute=r(s))}function g(i){let a=e.placeholder.value;if(!hf(i.key)||pf(i.key)||!(`second`in a)||!(`second`in e.segmentValues.value))return;let s=e.segmentValues.value.second;if(e.segmentValues.value.second=n({e:i,part:`second`,dateRef:e.placeholder.value,prevValue:s}),mf(i.key)){let t=Number.parseInt(i.key),{value:n,moveToNext:r}=o(t,s);e.segmentValues.value.second=n,r&&e.focusNext()}i.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.second=r(s))}function _(n){if(!((!hf(n.key)||pf(n.key))&&n.key!==`a`&&n.key!==`p`||!(`hour`in e.placeholder.value)||!(`dayPeriod`in e.segmentValues.value))){if(n.key===t.ARROW_UP||n.key===t.ARROW_DOWN){if(e.segmentValues.value.dayPeriod===`AM`){e.segmentValues.value.dayPeriod=`PM`,e.segmentValues.value.hour=e.segmentValues.value.hour+12;return}e.segmentValues.value.dayPeriod=`AM`,e.segmentValues.value.hour=e.segmentValues.value.hour-12;return}if([`a`,`A`].includes(n.key)&&e.segmentValues.value.dayPeriod!==`AM`){e.segmentValues.value.dayPeriod=`AM`,e.segmentValues.value.hour=e.segmentValues.value.hour-12;return}[`p`,`P`].includes(n.key)&&e.segmentValues.value.dayPeriod!==`PM`&&(e.segmentValues.value.dayPeriod=`PM`,e.segmentValues.value.hour=e.segmentValues.value.hour+12)}}function v(t){e.disabled.value&&t.preventDefault()}function y(n){let r=e.disabled.value,i=e.readonly.value;if(n.key!==t.TAB&&n.preventDefault(),!(r||i)&&({day:d,month:f,year:p,hour:m,minute:h,second:g,dayPeriod:_,timeZoneName:()=>{}}[e.part](n),![t.ARROW_LEFT,t.ARROW_RIGHT].includes(n.key)&&n.key!==t.TAB&&n.key!==t.SHIFT&&hf(n.key)&&Object.values(e.segmentValues.value).every(e=>e!==null))){let t={...e.segmentValues.value},n=e.placeholder.value.copy();Object.keys(t).forEach(e=>{let r=t[e];n=n.set({[e]:r})}),e.modelValue.value=n.copy()}}return{handleSegmentClick:v,handleSegmentKeydown:y,attributes:u}}const Pf=g({__name:`DateFieldInput`,props:{part:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=vf(),r=R(!0),i=R(!1),{handleSegmentClick:a,handleSegmentKeydown:o,attributes:c}=Nf({hasLeftFocus:r,lastKeyZero:i,placeholder:n.placeholder,hourCycle:n.hourCycle,segmentValues:n.segmentValues,formatter:n.formatter,part:t.part,disabled:n.disabled,readonly:n.readonly,focusNext:n.focusNext,modelValue:n.modelValue}),u=s(()=>n.disabled.value),d=s(()=>n.readonly.value),f=s(()=>n.isInvalid.value);return(e,t)=>(L(),l(V(Q),j({as:e.as,"as-child":e.asChild},V(c),{contenteditable:u.value||d.value?!1:e.part!==`literal`,"data-radix-vue-date-field-segment":e.part,"aria-disabled":u.value?!0:void 0,"aria-readonly":d.value?!0:void 0,"data-disabled":u.value?``:void 0,"data-invalid":f.value?``:void 0,"aria-invalid":f.value?!0:void 0},be(e.part===`literal`?{}:{mousedown:V(a),keydown:V(o),focusout:()=>{r.value=!0},focusin:e=>{V(n).setFocusedElement(e.target)}})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`contenteditable`,`data-radix-vue-date-field-segment`,`aria-disabled`,`aria-readonly`,`data-disabled`,`data-invalid`,`aria-invalid`]))}}),Ff=g({__name:`DatePickerHeader`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Fl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),If=g({__name:`DatePickerHeading`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Il),P(S(t)),{default:W(({headingValue:t})=>[z(e.$slots,`default`,{headingValue:t},()=>[p(ve(t),1)])]),_:3},16))}}),Lf=g({__name:`DatePickerGrid`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Ll),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Rf=g({__name:`DatePickerCell`,props:{date:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Rl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),zf=g({__name:`DatePickerHeadCell`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(zl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Bf=g({__name:`DatePickerNext`,props:{step:{},nextPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Bl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Vf=g({__name:`DatePickerPrev`,props:{step:{},prevPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Vl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Hf=g({__name:`DatePickerGridHead`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Hl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Uf=g({__name:`DatePickerGridBody`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Ul),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Wf=g({__name:`DatePickerGridRow`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Wl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Gf=g({__name:`DatePickerCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Gl),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Kf=g({__name:`DatePickerInput`,props:{part:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Pf),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[qf,Jf]=q(`DatePickerRoot`),Yf=g({inheritAttrs:!1,__name:`DatePickerRoot`,props:{defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},modal:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},pagedNavigation:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},fixedWeeks:{type:Boolean,default:!1},numberOfMonths:{default:1},preventDeselect:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:placeholder`,`update:open`],setup(e,{emit:t}){let n=e,r=t,{locale:i,disabled:a,readonly:o,pagedNavigation:c,weekStartsOn:u,weekdayFormat:d,fixedWeeks:f,numberOfMonths:p,preventDeselect:m,isDateDisabled:h,isDateUnavailable:g,defaultOpen:_,modal:v,id:y,name:b,required:x,minValue:S,maxValue:C,granularity:w,hideTimeZone:T,hourCycle:D,defaultValue:O,dir:k}=B(n),A=cs(k),j=J(n,`modelValue`,r,{defaultValue:O.value,passive:n.modelValue===void 0}),M=s(()=>Na({defaultPlaceholder:n.placeholder,granularity:n.granularity,defaultValue:j.value,locale:n.locale})),N=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??M.value.copy(),passive:n.placeholder===void 0}),P=J(n,`open`,r,{defaultValue:_.value,passive:n.open===void 0}),F=R();return H(j,e=>{e&&e.compare(N.value)!==0&&(N.value=e.copy())}),Jf({isDateUnavailable:g.value,isDateDisabled:h.value,locale:i,disabled:a,pagedNavigation:c,weekStartsOn:u,weekdayFormat:d,fixedWeeks:f,numberOfMonths:p,readonly:o,preventDeselect:m,modelValue:j,placeholder:N,defaultOpen:_,modal:v,open:P,id:y,name:b,required:x,minValue:S,maxValue:C,granularity:w,hideTimeZone:T,hourCycle:D,dateFieldRef:F,dir:A,onDateChange(e){!e||!j.value?j.value=e?.copy()??void 0:!m.value&&e&&j.value.compare(e)===0?j.value=void 0:j.value=e.copy()},onPlaceholderChange(e){N.value=e.copy()}}),(e,t)=>(L(),l(V(dg),{open:V(P),"onUpdate:open":t[0]||=e=>E(P)?P.value=e:null,"default-open":V(_),modal:V(v)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`open`,`default-open`,`modal`]))}}),Xf=g({__name:`DatePickerCalendar`,setup(e){let t=qf();return(e,n)=>(L(),l(V(Pl),j({isDateDisabled:V(t).isDateDisabled,isDateUnavailable:V(t).isDateUnavailable,minValue:V(t).minValue.value,maxValue:V(t).maxValue.value,locale:V(t).locale.value,disabled:V(t).disabled.value,pagedNavigation:V(t).pagedNavigation.value,weekStartsOn:V(t).weekStartsOn.value,weekdayFormat:V(t).weekdayFormat.value,fixedWeeks:V(t).fixedWeeks.value,numberOfMonths:V(t).numberOfMonths.value,readonly:V(t).readonly.value,preventDeselect:V(t).preventDeselect.value,dir:V(t).dir.value},{"model-value":V(t).modelValue.value,placeholder:V(t).placeholder.value,"initial-focus":``,multiple:!1,"onUpdate:modelValue":n[0]||=e=>{e&&V(t).modelValue.value&&V($t)(e,V(t).modelValue.value)||V(t).onDateChange(e)},"onUpdate:placeholder":n[1]||=e=>{V($t)(e,V(t).placeholder.value)||V(t).onPlaceholderChange(e)}}),{default:W(({weekDays:t,grid:n,date:r,weekStartsOn:i,locale:a,fixedWeeks:o})=>[z(e.$slots,`default`,{date:r,grid:n,weekDays:t,weekStartsOn:i,locale:a,fixedWeeks:o})]),_:3},16,[`model-value`,`placeholder`]))}}),Zf=g({__name:`DatePickerField`,setup(e){let t=qf();return(e,n)=>(L(),l(V(bf),j({ref:V(t).dateFieldRef,"model-value":V(t).modelValue.value,placeholder:V(t).placeholder.value},{id:V(t).id.value,name:V(t).name.value,disabled:V(t).disabled.value,minValue:V(t).minValue.value,maxValue:V(t).maxValue.value,readonly:V(t).readonly.value,hourCycle:V(t).hourCycle.value,granularity:V(t).granularity.value,hideTimeZone:V(t).hideTimeZone.value,locale:V(t).locale.value,isDateUnavailable:V(t).isDateUnavailable,required:V(t).required.value,dir:V(t).dir.value},{"onUpdate:modelValue":n[0]||=e=>{e&&V(t).modelValue.value&&e.compare(V(t).modelValue.value)===0||V(t).onDateChange(e)},"onUpdate:placeholder":n[1]||=e=>{e.compare(V(t).placeholder.value)!==0&&V(t).onPlaceholderChange(e)}}),{default:W(({segments:t,modelValue:n})=>[z(e.$slots,`default`,{segments:t,modelValue:n})]),_:3},16,[`model-value`,`placeholder`]))}}),Qf=g({__name:`DatePickerAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(bg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),$f=g({__name:`DatePickerArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(vg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ep=g({__name:`DatePickerClose`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(yg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),tp=g({__name:`DatePickerTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=qf();return(e,r)=>(L(),l(V(fg),j({"data-radix-vue-date-field-segment":`trigger`},t,{disabled:V(n).disabled.value,onFocusin:r[0]||=e=>{var t;(t=V(n).dateFieldRef.value)==null||t.setFocusedElement(e.target)}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`disabled`]))}}),np=g({__name:`DatePickerContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return(e,t)=>(L(),l(V(pg),null,{default:W(()=>[m(V(_g),P(S({...V(n),...e.$attrs})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3}))}}),rp=g({__name:`DateRangePickerHeader`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Wg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ip=g({__name:`DateRangePickerHeading`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Gg),P(S(t)),{default:W(({headingValue:t})=>[z(e.$slots,`default`,{headingValue:t},()=>[p(ve(t),1)])]),_:3},16))}}),ap=g({__name:`DateRangePickerGrid`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Kg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),op=g({__name:`DateRangePickerCell`,props:{date:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(qg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),sp=g({__name:`DateRangePickerHeadCell`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Jg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),cp=g({__name:`DateRangePickerNext`,props:{step:{},nextPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Yg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),lp=g({__name:`DateRangePickerPrev`,props:{step:{},prevPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Xg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),up=g({__name:`DateRangePickerGridHead`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Zg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),dp=g({__name:`DateRangePickerGridBody`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Qg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),fp=g({__name:`DateRangePickerGridRow`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V($g),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),pp=g({__name:`DateRangePickerCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(e_),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),mp=g({__name:`DateRangePickerInput`,props:{part:{},type:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(kp),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[hp,gp]=q(`DateRangePickerRoot`),_p=g({inheritAttrs:!1,__name:`DateRangePickerRoot`,props:{defaultValue:{default:()=>({start:void 0,end:void 0})},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},modal:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},pagedNavigation:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},fixedWeeks:{type:Boolean,default:!1},numberOfMonths:{default:1},preventDeselect:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:placeholder`,`update:startValue`,`update:open`],setup(e,{emit:t}){let n=e,r=t,{locale:i,disabled:a,readonly:o,pagedNavigation:s,weekStartsOn:c,weekdayFormat:u,fixedWeeks:d,numberOfMonths:f,preventDeselect:p,isDateDisabled:m,isDateUnavailable:h,defaultOpen:g,modal:_,id:v,name:y,required:b,minValue:x,maxValue:S,granularity:C,hideTimeZone:w,hourCycle:T,dir:D}=B(n),O=cs(D),k=J(n,`modelValue`,r,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),A=Na({defaultPlaceholder:n.placeholder,granularity:n.granularity,defaultValue:k.value.start,locale:n.locale}),j=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??A.copy(),passive:n.placeholder===void 0}),M=J(n,`open`,r,{defaultValue:g.value,passive:n.open===void 0}),N=R();return H(k,e=>{e.start&&e.start.compare(j.value)!==0&&(j.value=e.start.copy())}),gp({isDateUnavailable:h.value,isDateDisabled:m.value,locale:i,disabled:a,pagedNavigation:s,weekStartsOn:c,weekdayFormat:u,fixedWeeks:d,numberOfMonths:f,readonly:o,preventDeselect:p,modelValue:k,placeholder:j,defaultOpen:g,modal:_,open:M,id:v,name:y,required:b,minValue:x,maxValue:S,granularity:C,hideTimeZone:w,hourCycle:T,dateFieldRef:N,dir:O,onStartValueChange(e){r(`update:startValue`,e)},onDateChange(e){var t,n;k.value={start:(t=e.start)?.copy(),end:(n=e.end)?.copy()}},onPlaceholderChange(e){j.value=e.copy()}}),(e,t)=>(L(),l(V(dg),{open:V(M),"onUpdate:open":t[0]||=e=>E(M)?M.value=e:null,"default-open":V(g),modal:V(_)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`open`,`default-open`,`modal`]))}}),vp=g({__name:`DateRangePickerCalendar`,setup(e){let t=hp();return(e,n)=>(L(),l(V(Ug),j({isDateDisabled:V(t).isDateDisabled,isDateUnavailable:V(t).isDateUnavailable,locale:V(t).locale.value,disabled:V(t).disabled.value,pagedNavigation:V(t).pagedNavigation.value,weekStartsOn:V(t).weekStartsOn.value,weekdayFormat:V(t).weekdayFormat.value,fixedWeeks:V(t).fixedWeeks.value,numberOfMonths:V(t).numberOfMonths.value,readonly:V(t).readonly.value,preventDeselect:V(t).preventDeselect.value,minValue:V(t).minValue.value,maxValue:V(t).maxValue.value,dir:V(t).dir.value},{"initial-focus":``,"model-value":V(t).modelValue.value,placeholder:V(t).placeholder.value,"onUpdate:startValue":n[0]||=e=>{V(t).onStartValueChange(e)},"onUpdate:modelValue":n[1]||=e=>{e.start&&V(t).modelValue.value.start&&e.end&&V(t).modelValue.value.end&&V($t)(e.start,V(t).modelValue.value.start)&&V($t)(e.end,V(t).modelValue.value.end)||V(t).onDateChange(e)},"onUpdate:placeholder":n[2]||=e=>{V($t)(e,V(t).placeholder.value)||V(t).onPlaceholderChange(e)}}),{default:W(({weekDays:t,grid:n,date:r,weekStartsOn:i,locale:a,fixedWeeks:o})=>[z(e.$slots,`default`,{date:r,grid:n,weekDays:t,weekStartsOn:i,locale:a,fixedWeeks:o})]),_:3},16,[`model-value`,`placeholder`]))}}),yp=g({__name:`DateRangePickerField`,setup(e){let t=hp();return(e,n)=>(L(),l(V(Op),j({ref:V(t).dateFieldRef,"model-value":V(t).modelValue.value,placeholder:V(t).placeholder.value},{id:V(t).id.value,name:V(t).name.value,disabled:V(t).disabled.value,minValue:V(t).minValue.value,maxValue:V(t).maxValue.value,readonly:V(t).readonly.value,hourCycle:V(t).hourCycle.value,granularity:V(t).granularity.value,hideTimeZone:V(t).hideTimeZone.value,locale:V(t).locale.value,isDateUnavailable:V(t).isDateUnavailable,required:V(t).required.value,dir:V(t).dir.value},{"onUpdate:modelValue":n[0]||=e=>{e.start&&V(t).modelValue.value.start&&e.end&&V(t).modelValue.value.end&&e.start.compare(V(t).modelValue.value.start)===0&&e.end.compare(V(t).modelValue.value.end)===0||V(t).onDateChange(e)},"onUpdate:placeholder":n[1]||=e=>{V($t)(e,V(t).placeholder.value)&&e.compare(V(t).placeholder.value)===0||V(t).onPlaceholderChange(e)}}),{default:W(({segments:t,modelValue:n})=>[z(e.$slots,`default`,{segments:t,modelValue:n})]),_:3},16,[`model-value`,`placeholder`]))}}),bp=g({__name:`DateRangePickerAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(bg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),xp=g({__name:`DateRangePickerArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(vg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Sp=g({__name:`DateRangePickerClose`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(yg),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Cp=g({__name:`DateRangePickerTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=hp();return(e,r)=>(L(),l(V(fg),j({"data-radix-vue-date-field-segment":`trigger`},t,{disabled:V(n).disabled.value,onFocusin:r[0]||=e=>{var t;(t=V(n).dateFieldRef.value)==null||t.setFocusedElement(e.target)}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`disabled`]))}}),wp=g({__name:`DateRangePickerContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return(e,t)=>(L(),l(V(pg),null,{default:W(()=>[m(V(_g),P(S({...V(n),...e.$attrs})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3}))}}),Tp=[`id`,`value`,`name`,`disabled`,`required`],[Ep,Dp]=q(`DateRangeFieldRoot`),Op=g({inheritAttrs:!1,__name:`DateRangeFieldRoot`,props:{defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:placeholder`],setup(e,{expose:n,emit:r}){var i,a;let o=e,l=r,{locale:u,disabled:d,readonly:p,isDateUnavailable:h,dir:g}=B(o),_=ss(o.locale),{primitiveElement:v,currentElement:y}=Us(),b=R(new Set),x=cs(g);I(()=>{gf(y.value).forEach(e=>b.value.add(e))});let S=J(o,`modelValue`,l,{defaultValue:o.defaultValue??{start:void 0,end:void 0},passive:o.modelValue===void 0}),C=Na({defaultPlaceholder:o.placeholder,granularity:o.granularity,defaultValue:S.value.start,locale:o.locale}),w=J(o,`placeholder`,l,{defaultValue:o.defaultPlaceholder??C.copy(),passive:o.placeholder===void 0}),T=s(()=>o.granularity?ca(w.value)?o.granularity:`day`:ca(w.value)?`minute`:`day`),E=s(()=>{var e;return S.value.start?!!((e=h.value)!=null&&e.call(h,S.value.start)||o.minValue&&ua(S.value.start,o.minValue)||o.maxValue&&ua(o.maxValue,S.value.start)):!1}),D=s(()=>{var e;return S.value.end?!!((e=h.value)!=null&&e.call(h,S.value.end)||o.minValue&&ua(S.value.end,o.minValue)||o.maxValue&&ua(o.maxValue,S.value.end)):!1}),O=s(()=>E.value||D.value?!0:!S.value.start||!S.value.end?!1:!fa(S.value.start,S.value.end)||h.value!==void 0&&!va(S.value.start,S.value.end,h.value,void 0)),k=lf(T.value),A=R(S.value.start?{...cf({value:S.value.start,formatter:_})}:{...k}),M=R(S.value.end?{...cf({value:S.value.end,formatter:_})}:{...k}),P=s(()=>ff({granularity:T.value,dateRef:w.value,formatter:_,hideTimeZone:o.hideTimeZone,hourCycle:o.hourCycle,segmentValues:A.value,locale:u})),F=s(()=>ff({granularity:T.value,dateRef:w.value,formatter:_,hideTimeZone:o.hideTimeZone,hourCycle:o.hourCycle,segmentValues:M.value,locale:u})),ee=s(()=>({start:P.value.arr,end:F.value.arr})),te=s(()=>({start:ee.value.start.filter(({part:e})=>e!==`literal`),end:ee.value.end.filter(({part:e})=>e!==`literal`)})),ne=R((i=S.value.start)?.copy()),re=R((a=S.value.end)?.copy());H([ne,re],([e,t])=>{S.value={start:e?.copy(),end:t?.copy()}}),H(S,e=>{e.start&&e.end&&((!ne.value||e.start.compare(ne.value)!==0)&&(ne.value=e.start.copy()),(!re.value||e.end.compare(re.value)!==0)&&(re.value=e.end.copy()))}),H([ne,u],([e])=>{e===void 0?Object.values(A.value).every(e=>e!==null)&&e===void 0&&(A.value={...k}):A.value={...cf({value:e,formatter:_})}}),H(u,e=>{_.getLocale()!==e&&(_.setLocale(e),N(()=>{b.value.clear(),gf(y.value).forEach(e=>b.value.add(e))}))}),H(S,e=>{e.start!==void 0&&w.value.compare(e.start)!==0&&(w.value=e.start.copy())}),H([re,u],([e])=>{e===void 0?Object.values(M.value).every(e=>e!==null)&&e===void 0&&(M.value={...k}):M.value={...cf({value:e,formatter:_})}});let ie=R(null),ae=s(()=>Array.from(b.value).findIndex(e=>{var t,n;return e.getAttribute(`data-radix-vue-date-field-segment`)===(t=ie.value)?.getAttribute(`data-radix-vue-date-field-segment`)&&e.getAttribute(`data-radix-vue-date-range-field-segment-type`)===(n=ie.value)?.getAttribute(`data-radix-vue-date-range-field-segment-type`)})),oe=s(()=>{let e=x.value===`rtl`?-1:1;return(e<0?ae.value<0:ae.value>b.value.size-1)?null:Array.from(b.value)[ae.value+e]}),se=s(()=>{let e=x.value===`rtl`?-1:1;return(e>0?ae.value<0:ae.value>b.value.size-1)?null:Array.from(b.value)[ae.value-e]}),ce=Vs();function le(e){var t,n;pf(e.key)&&(e.key===ce.ARROW_LEFT&&((t=se.value)==null||t.focus()),e.key===ce.ARROW_RIGHT&&((n=oe.value)==null||n.focus()))}function ue(e){ie.value=e}return Dp({isDateUnavailable:h.value,locale:u,startValue:ne,endValue:re,placeholder:w,disabled:d,formatter:_,hourCycle:o.hourCycle,readonly:p,segmentValues:{start:A,end:M},isInvalid:O,segmentContents:te,elements:b,setFocusedElement:ue,focusNext(){var e;(e=oe.value)==null||e.focus()}}),n({setFocusedElement:ue}),(e,n)=>{var r,i;return L(),f(t,null,[m(V(Q),j(e.$attrs,{ref_key:`primitiveElement`,ref:v,role:`group`,"aria-disabled":V(d)?!0:void 0,"data-disabled":V(d)?``:void 0,"data-readonly":V(p)?``:void 0,"data-invalid":O.value?``:void 0,dir:V(x),onKeydown:G(le,[`left`,`right`])}),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(S),segments:ee.value})]),_:3},16,[`aria-disabled`,`data-disabled`,`data-readonly`,`data-invalid`,`dir`]),c(`input`,{id:e.id,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:`${(r=V(S).start)?.toString()} - ${(i=V(S).end)?.toString()}`,name:e.name,disabled:V(d),required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0},onFocus:n[0]||=e=>{var t,n;return(n=(t=Array.from(b.value))?.[0])?.focus()}},null,40,Tp)],64)}}}),kp=g({__name:`DateRangeFieldInput`,props:{part:{},type:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Ep(),r=R(!0),i=R(!1),{handleSegmentClick:a,handleSegmentKeydown:o,attributes:c}=Nf({hasLeftFocus:r,lastKeyZero:i,placeholder:n.placeholder,hourCycle:n.hourCycle,segmentValues:n.segmentValues[t.type],formatter:n.formatter,part:t.part,disabled:n.disabled,readonly:n.readonly,focusNext:n.focusNext,modelValue:t.type===`start`?n.startValue:n.endValue}),u=s(()=>n.disabled.value),d=s(()=>n.readonly.value),f=s(()=>n.isInvalid.value);return(e,t)=>(L(),l(V(Q),j({as:e.as,"as-child":e.asChild},V(c),{contenteditable:u.value||d.value?!1:e.part!==`literal`,"data-radix-vue-date-field-segment":e.part,"aria-disabled":u.value?!0:void 0,"aria-readonly":d.value?!0:void 0,"data-disabled":u.value?``:void 0,"data-radix-vue-date-range-field-segment-type":e.type,"data-invalid":f.value?``:void 0,"aria-invalid":f.value?!0:void 0},be(e.part===`literal`?{}:{mousedown:V(a),keydown:V(o),focusout:()=>{r.value=!0},focusin:e=>{V(n).setFocusedElement(e.target)}})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`contenteditable`,`data-radix-vue-date-field-segment`,`aria-disabled`,`aria-readonly`,`data-disabled`,`data-radix-vue-date-range-field-segment-type`,`data-invalid`,`aria-invalid`]))}}),[Ap,jp]=q(`DropdownMenuRoot`),Mp=g({__name:`DropdownMenuRoot`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0},dir:{},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),a=R(),{modal:o,dir:s}=B(n),c=cs(s);return jp({open:i,onOpenChange:e=>{i.value=e},onOpenToggle:()=>{i.value=!i.value},triggerId:``,triggerElement:a,contentId:``,modal:o,dir:c}),(e,t)=>(L(),l(V(rd),{open:V(i),"onUpdate:open":t[0]||=e=>E(i)?i.value=e:null,dir:V(c),modal:V(o)},{default:W(()=>[z(e.$slots,`default`,{open:V(i)})]),_:3},8,[`open`,`dir`,`modal`]))}}),Np=g({__name:`DropdownMenuTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Ap(),{forwardRef:r,currentElement:i}=X();return I(()=>{n.triggerElement=i}),n.triggerId||=Z(void 0,`radix-vue-dropdown-menu-trigger`),(e,i)=>(L(),l(V(Yu),{"as-child":``},{default:W(()=>[m(V(Q),{id:V(n).triggerId,ref:V(r),type:e.as===`button`?`button`:void 0,"as-child":t.asChild,as:e.as,"aria-haspopup":`menu`,"aria-expanded":V(n).open.value,"aria-controls":V(n).open.value?V(n).contentId:void 0,"data-disabled":e.disabled?``:void 0,disabled:e.disabled,"data-state":V(n).open.value?`open`:`closed`,onClick:i[0]||=async t=>{var r;!e.disabled&&t.button===0&&t.ctrlKey===!1&&((r=V(n))==null||r.onOpenToggle(),await N(),V(n).open.value&&t.preventDefault())},onKeydown:i[1]||=G(t=>{e.disabled||([`Enter`,` `].includes(t.key)&&V(n).onOpenToggle(),t.key===`ArrowDown`&&V(n).onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(t.key)&&t.preventDefault())},[`enter`,`space`,`arrow-down`])},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as-child`,`as`,`aria-expanded`,`aria-controls`,`data-disabled`,`disabled`,`data-state`])]),_:3}))}}),Pp=g({__name:`DropdownMenuPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(kd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Fp=g({__name:`DropdownMenuContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let r=Ap(),i=R(!1);function a(e){e.defaultPrevented||(i.value||setTimeout(()=>{var e;(e=r.triggerElement.value)==null||e.focus()},0),i.value=!1,e.preventDefault())}return r.contentId||=Z(void 0,`radix-vue-dropdown-menu-content`),(e,t)=>{var o;return L(),l(V(Ed),j(V(n),{id:V(r).contentId,"aria-labelledby":(o=V(r))?.triggerId,style:{"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`},onCloseAutoFocus:a,onInteractOutside:t[0]||=e=>{var t;if(e.defaultPrevented)return;let n=e.detail.originalEvent,a=n.button===0&&n.ctrlKey===!0,o=n.button===2||a;(!V(r).modal.value||o)&&(i.value=!0),(t=V(r).triggerElement.value)!=null&&t.contains(e.target)&&e.preventDefault()}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`])}}}),Ip=g({__name:`DropdownMenuArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Xu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Lp=g({__name:`DropdownMenuItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(yd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Rp=g({__name:`DropdownMenuGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Dd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),zp=g({__name:`DropdownMenuSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Pd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Bp=g({__name:`DropdownMenuCheckboxItem`,props:{checked:{type:[Boolean,String]},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Cd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Vp=g({__name:`DropdownMenuItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Sd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Hp=g({__name:`DropdownMenuLabel`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Od),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Up=g({__name:`DropdownMenuRadioGroup`,props:{modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Md),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Wp=g({__name:`DropdownMenuRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(L(),l(V(Nd),P(S(V(n))),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Gp=g({__name:`DropdownMenuSub`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=J(n,`open`,t,{passive:n.open===void 0,defaultValue:n.defaultOpen??!1});return X(),(e,t)=>(L(),l(V(Ld),{open:V(r),"onUpdate:open":t[0]||=e=>E(r)?r.value=e:null},{default:W(()=>[z(e.$slots,`default`,{open:V(r)})]),_:3},8,[`open`]))}}),Kp=g({__name:`DropdownMenuSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(L(),l(V(Rd),j(V(n),{style:{"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),qp=g({__name:`DropdownMenuSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(zd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Jp=[`value`,`name`,`disabled`,`required`],[Yp,Xp]=q(`EditableRoot`),Zp=g({inheritAttrs:!1,__name:`EditableRoot`,props:{defaultValue:{},modelValue:{},placeholder:{default:`Enter text...`},dir:{},disabled:{type:Boolean,default:!1},readonly:{type:Boolean},activationMode:{default:`focus`},selectOnFocus:{type:Boolean,default:!1},submitMode:{default:`blur`},startWithEditMode:{type:Boolean},maxLength:{},autoResize:{type:Boolean,default:!1},id:{},name:{},required:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`submit`,`update:state`],setup(e,{expose:n,emit:r}){let i=e,a=r,{id:o,name:c,defaultValue:l,startWithEditMode:d,placeholder:p,maxLength:h,disabled:g,dir:_,submitMode:v,activationMode:y,selectOnFocus:b,readonly:x,autoResize:S,required:C}=B(i),w=R(),T=cs(_),E=R(d.value??!1),D=J(i,`modelValue`,a,{defaultValue:l.value??``,passive:i.modelValue===void 0}),{primitiveElement:O,currentElement:k}=Us(),A=ps(k),M=s(()=>typeof p.value==`string`?{edit:p.value,preview:p.value}:p.value),N=R(D.value);H(()=>D.value,()=>{N.value=D.value},{immediate:!0,deep:!0});function P(){E.value=!1,a(`update:state`,`cancel`)}function F(){E.value=!0,N.value=D.value,a(`update:state`,`edit`)}function ee(){D.value=N.value,E.value=!1,a(`update:state`,`submit`),a(`submit`,D.value)}function te(){E.value&&(v.value===`blur`||v.value===`both`?ee():P())}let ne=bc(()=>te(),k),re=xc(()=>te(),k),I=s(()=>D.value===``);return n({submit:ee,cancel:P,edit:F}),Xp({id:o,name:c,disabled:g,isEditing:E,maxLength:h,modelValue:D,inputValue:N,placeholder:M,edit:F,cancel:P,submit:ee,activationMode:y,submitMode:v,selectOnFocus:b,inputRef:w,startWithEditMode:d,isEmpty:I,readonly:x,autoResize:S}),(e,n)=>(L(),f(t,null,[m(V(Q),j(e.$attrs,{ref_key:`primitiveElement`,ref:O,as:e.as,"as-child":e.asChild,dir:V(T),"data-dismissable-layer":``,onFocusCapture:V(re).onFocusCapture,onBlurCapture:V(re).onBlurCapture,onPointerdownCapture:V(ne).onPointerDownCapture}),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(D),isEditing:E.value,isEmpty:I.value,submit:ee,cancel:P,edit:F})]),_:3},16,[`as`,`as-child`,`dir`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]),V(A)?(L(),f(`input`,{key:0,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:V(D),name:V(c),disabled:V(g),required:V(C),style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Jp)):u(``,!0)],64))}}),Qp=g({__name:`EditableArea`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Yp();return(e,r)=>(L(),l(V(Q),j(t,{"data-placeholder-shown":V(n).isEditing.value?void 0:``,"data-focus":V(n).isEditing.value?``:void 0,"data-focused":V(n).isEditing.value?``:void 0,"data-empty":V(n).isEmpty.value?``:void 0,"data-readonly":V(n).readonly.value?``:void 0,"data-disabled":V(n).disabled.value?``:void 0,style:V(n).autoResize.value?{display:`inline-grid`}:void 0}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-placeholder-shown`,`data-focus`,`data-focused`,`data-empty`,`data-readonly`,`data-disabled`,`style`]))}}),$p=g({__name:`EditableInput`,props:{asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=Vs(),r=Yp(),i=s(()=>r.disabled.value),a=s(()=>{var e;return(e=r.placeholder.value)?.edit}),{primitiveElement:o,currentElement:c}=Us();I(()=>{var e,t;r.inputRef.value=c.value,r.startWithEditMode.value&&((e=r.inputRef.value)==null||e.focus({preventScroll:!0}),r.selectOnFocus.value&&((t=r.inputRef.value)==null||t.select()))}),H(r.isEditing,e=>{e&&N(()=>{var e,t;(e=r.inputRef.value)==null||e.focus({preventScroll:!0}),r.selectOnFocus.value&&((t=r.inputRef.value)==null||t.select())})});function u(e){(r.submitMode.value===`enter`||r.submitMode.value===`both`)&&e.key===n.ENTER&&!e.shiftKey&&!e.metaKey&&r.submit()}return(e,n)=>(L(),l(V(Q),j({ref_key:`primitiveElement`,ref:o},t,{value:V(r).inputValue.value,placeholder:a.value,disabled:i.value,maxlength:V(r).maxLength.value,"data-disabled":i.value?``:void 0,"data-readonly":V(r).readonly.value?``:void 0,readonly:V(r).readonly.value,"aria-label":`editable input`,hidden:V(r).autoResize.value?void 0:!V(r).isEditing.value,style:V(r).autoResize.value?{all:`unset`,gridArea:`1 / 1 / auto / auto`,visibility:V(r).isEditing.value?void 0:`hidden`}:void 0,onInput:n[0]||=e=>V(r).inputValue.value=e.target.value,onKeydown:[G(u,[`enter`,`space`]),G(V(r).cancel,[`esc`])]}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`value`,`placeholder`,`disabled`,`maxlength`,`data-disabled`,`data-readonly`,`readonly`,`hidden`,`style`,`onKeydown`]))}}),em=g({__name:`EditablePreview`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=Yp(),r=s(()=>{var e;return(e=n.placeholder.value)?.preview});function i(){n.activationMode.value===`focus`&&n.edit()}function a(){n.activationMode.value===`dblclick`&&n.edit()}return(e,o)=>(L(),l(V(Q),j(t,{tabindex:`0`,"data-placeholder-shown":V(n).isEditing.value?void 0:``,hidden:V(n).autoResize.value?void 0:V(n).isEditing.value,style:V(n).autoResize.value?{whiteSpace:`pre`,userSelect:`none`,gridArea:`1 / 1 / auto / auto`,visibility:V(n).isEditing.value?`hidden`:void 0,overflow:`hidden`,textOverflow:`ellipsis`}:void 0,onFocusin:i,onDblclick:a}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(ve(V(n).modelValue.value||r.value),1)])]),_:3},16,[`data-placeholder-shown`,`hidden`,`style`]))}}),tm=g({__name:`EditableSubmitTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Yp();return(e,r)=>(L(),l(V(Q),j(t,{"aria-label":`submit`,"aria-disabled":V(n).disabled.value?``:void 0,"data-disabled":V(n).disabled.value?``:void 0,disabled:V(n).disabled.value,type:e.as===`button`?`button`:void 0,hidden:V(n).isEditing.value?void 0:``,onClick:V(n).submit}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Submit`)])]),_:3},16,[`aria-disabled`,`data-disabled`,`disabled`,`type`,`hidden`,`onClick`]))}}),nm=g({__name:`EditableCancelTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Yp();return(e,r)=>(L(),l(V(Q),j(t,{"aria-label":`cancel`,"aria-disabled":V(n).disabled.value?``:void 0,"data-disabled":V(n).disabled.value?``:void 0,disabled:V(n).disabled.value,type:e.as===`button`?`button`:void 0,hidden:V(n).isEditing.value?void 0:``,onClick:V(n).cancel}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Cancel`)])]),_:3},16,[`aria-disabled`,`data-disabled`,`disabled`,`type`,`hidden`,`onClick`]))}}),rm=g({__name:`EditableEditTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Yp();return(e,r)=>(L(),l(V(Q),j(t,{"aria-label":`edit`,"aria-disabled":V(n).disabled.value?``:void 0,"data-disabled":V(n).disabled.value?``:void 0,disabled:V(n).disabled.value,type:e.as===`button`?`button`:void 0,hidden:V(n).isEditing.value?``:void 0,onClick:V(n).edit}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Edit`)])]),_:3},16,[`aria-disabled`,`data-disabled`,`disabled`,`type`,`hidden`,`onClick`]))}}),[im,am]=q(`HoverCardRoot`),om=g({__name:`HoverCardRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},openDelay:{default:700},closeDelay:{default:300}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{openDelay:i,closeDelay:a}=B(n);X();let o=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),s=R(0),c=R(0),u=R(!1),d=R(!1),f=R(!1),p=R();function m(){clearTimeout(c.value),s.value=window.setTimeout(()=>o.value=!0,i.value)}function h(){clearTimeout(s.value),!u.value&&!d.value&&(c.value=window.setTimeout(()=>o.value=!1,a.value))}function g(){o.value=!1}return am({open:o,onOpenChange(e){o.value=e},onOpen:m,onClose:h,onDismiss:g,hasSelectionRef:u,isPointerDownOnContentRef:d,isPointerInTransitRef:f,triggerElement:p}),(e,t)=>(L(),l(V(tu),null,{default:W(()=>[z(e.$slots,`default`,{open:V(o)})]),_:3}))}});function sm(e){return e?.querySelector(`[data-state=checked]`)}function cm(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>lm(e,t,n)):lm(e,t,n)}function lm(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:Oa(e,t)}const[um,dm]=q(`ListboxRoot`),fm=g({__name:`ListboxRoot`,props:{modelValue:{},defaultValue:{},multiple:{type:Boolean},orientation:{default:`vertical`},dir:{},disabled:{type:Boolean},selectionBehavior:{default:`toggle`},highlightOnHover:{type:Boolean},by:{},name:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(e,{emit:t}){let n=e,r=t,{multiple:i,highlightOnHover:a,orientation:o,disabled:s,selectionBehavior:c,dir:d}=B(n),{getItems:f}=yu(),{handleTypeaheadSearch:p}=Rs(),{primitiveElement:m,currentElement:h}=Us(),g=Vs(),_=cs(d),v=ps(h),y=R(),b=R(!1),x=R(!0),S=J(n,`modelValue`,r,{defaultValue:n.defaultValue??(i.value?[]:void 0),passive:n.modelValue===void 0,deep:!0});function C(e){if(b.value=!0,Array.isArray(S.value)){let t=S.value.findIndex(t=>lm(t,e,n.by));if(n.selectionBehavior===`toggle`){let n=[...S.value];t===-1?n.push(e):n.splice(t,1),S.value=n}else S.value=[e],y.value=e}else n.selectionBehavior===`toggle`&&lm(S.value,e,n.by)?S.value=void 0:S.value=e;setTimeout(()=>{b.value=!1},1)}let w=R(null),T=R(null),E=R(!1),D=eo(),O=eo();function k(){return f().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)}function A(e){if(!e)return;w.value=e,w.value.focus(),w.value.scrollIntoView({block:`nearest`});let t=f().find(t=>t.ref===e);r(`highlight`,t)}function j(e){w.value&&w.value.click()}function M(e){if(b.value=!0,E.value)O.trigger(e);else{let t=e.altKey||e.ctrlKey||e.metaKey;if(t&&e.key===`a`&&i.value){let t=f(),n=t.map(e=>e.value);S.value=[...n],e.preventDefault(),A(t[t.length-1].ref)}else if(!t){let t=p(e.key,k());t&&A(t)}}setTimeout(()=>{b.value=!1},1)}function P(e){let t=w.value;t!=null&&t.isConnected&&(T.value=t),w.value=null,r(`leave`,e)}function F(e){var t,n;let i=new CustomEvent(`listbox.entryFocus`,{bubbles:!1,cancelable:!0});if((t=e.currentTarget)==null||t.dispatchEvent(i),r(`entryFocus`,i),!i.defaultPrevented)if(T.value)A(T.value);else{let e=(n=k())?.[0];A(e)}}function ee(e){let t=cd(e,o.value,_.value);if(!t)return;let n=k();if(w.value){if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let e=n.indexOf(w.value);n=n.slice(e+1)}te(e,n[0])}if(n.length){let e=!w.value&&t===`prev`?n.length-1:0;A(n[e])}if(E.value)return O.trigger(e)}function te(e,t){var r;if(!(E.value||n.selectionBehavior!==`replace`||!i.value||!Array.isArray(S.value)||(e.altKey||e.ctrlKey||e.metaKey)&&!e.shiftKey)&&e.shiftKey){let n=f().filter(e=>e.ref.dataset.disabled!==``),i=(r=n.find(e=>e.ref===t))?.value;if(e.key===g.END?i=n[n.length-1].value:e.key===g.HOME&&(i=n[0].value),!i||!y.value)return;let a=Aa(n.map(e=>e.value),y.value,i);S.value=a}}async function ne(e){if(E.value)D.trigger(e);else{await N();let e=k().find(e=>e.dataset.state===`checked`);e&&A(e)}}return H(S,()=>{b.value||N(()=>{ne()})},{immediate:!0,deep:!0}),dm({modelValue:S,onValueChange:C,multiple:i,orientation:o,dir:_,disabled:s,highlightOnHover:a,highlightedElement:w,isVirtual:E,virtualFocusHook:D,virtualKeydownHook:O,by:n.by,firstValue:y,selectionBehavior:c,focusable:x,onLeave:P,onEnter:F,onChangeHighlight:A,onKeydownEnter:j,onKeydownNavigation:ee,onKeydownTypeAhead:M}),(e,t)=>(L(),l(V(Q),{ref_key:`primitiveElement`,ref:m,as:e.as,"as-child":e.asChild,dir:V(_),"data-disabled":V(s)?``:void 0,onPointerleave:P,onFocusout:t[0]||=async e=>{let t=e.relatedTarget||e.target;await N(),w.value&&V(h)&&!V(h).contains(t)&&P(e)}},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(S)}),V(v)&&n.name?(L(),l(V(hu),{key:0,name:n.name,value:V(S)},null,8,[`name`,`value`])):u(``,!0)]),_:3},8,[`as`,`as-child`,`dir`,`data-disabled`]))}}),pm=g({__name:`ListboxContent`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=um(),n=vo(!1,10);return(e,r)=>(L(),l(V(bu),null,{default:W(()=>[m(V(Q),{role:`listbox`,as:e.as,"as-child":e.asChild,tabindex:V(t).focusable.value?V(t).highlightedElement.value?`-1`:`0`:void 0,"aria-orientation":V(t).orientation.value,"aria-multiselectable":!!V(t).multiple.value,"data-orientation":V(t).orientation.value,onMousedown:r[0]||=K(e=>n.value=!0,[`left`]),onFocus:r[1]||=e=>{V(n)||V(t).onEnter(e)},onKeydown:[r[2]||=G(K(e=>{V(t).focusable.value&&V(t).onKeydownNavigation(e)},[`prevent`]),[`down`,`up`,`left`,`right`,`home`,`end`]),G(V(t).onKeydownEnter,[`enter`]),V(t).onKeydownTypeAhead]},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`tabindex`,`aria-orientation`,`aria-multiselectable`,`data-orientation`,`onKeydown`])]),_:3}))}}),mm=g({__name:`ListboxFilter`,props:{modelValue:{},autoFocus:{type:Boolean},asChild:{type:Boolean},as:{default:`input`}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t,{defaultValue:``,passive:n.modelValue===void 0}),i=um();i.focusable.value=!1;let{primitiveElement:a,currentElement:o}=Us();return I(()=>{setTimeout(()=>{var e;n.autoFocus&&((e=o.value)==null||e.focus())},1)}),(e,t)=>(L(),l(V(Q),{ref_key:`primitiveElement`,ref:a,as:e.as,"as-child":e.asChild,value:V(r),disabled:V(i).disabled.value?``:void 0,"data-disabled":V(i).disabled.value?``:void 0,type:`text`,onKeydown:[G(K(V(i).onKeydownNavigation,[`prevent`]),[`down`,`up`,`home`,`end`]),G(V(i).onKeydownEnter,[`enter`])],onInput:t[0]||=e=>{r.value=e.target.value}},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(r)})]),_:3},8,[`as`,`as-child`,`value`,`disabled`,`data-disabled`,`onKeydown`]))}}),hm=`listbox.select`,[gm,_m]=q(`ListboxItem`),vm=g({__name:`ListboxItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`div`}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=Z(void 0,`radix-vue-listbox-item`),c=um(),u=s(()=>a.value===c.highlightedElement.value),d=s(()=>cm(c.modelValue.value,n.value,c.by)),f=s(()=>c.disabled.value||n.disabled);async function p(e){r(`select`,e),!(e!=null&&e.defaultPrevented)&&!f.value&&e&&(c.onValueChange(n.value),c.onChangeHighlight(e.target))}function h(e){let t={originalEvent:e,value:n.value};Sa(hm,p,t)}return _m({isSelected:d}),(e,t)=>(L(),l(V(xu),{value:e.value},{default:W(()=>[m(V(Q),{id:V(o),ref:V(i),role:`option`,tabindex:V(c).focusable.value?u.value?`0`:`-1`:void 0,"aria-selected":d.value,as:e.as,"as-child":e.asChild,disabled:f.value?``:void 0,"data-disabled":f.value?``:void 0,"data-highlighted":u.value?``:void 0,"data-state":d.value?`checked`:`unchecked`,onClick:h,onKeydown:G(K(h,[`prevent`]),[`space`]),onPointermove:t[0]||=e=>{V(c).highlightOnHover.value?V(c).onChangeHighlight(V(a)):V(c).focusable.value||V(c).onChangeHighlight(V(a))}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`tabindex`,`aria-selected`,`as`,`as-child`,`disabled`,`data-disabled`,`data-highlighted`,`data-state`,`onKeydown`])]),_:3},8,[`value`]))}}),ym=g({__name:`ListboxItemIndicator`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e;X();let n=gm();return(e,r)=>V(n).isSelected.value?(L(),l(V(Q),j({key:0,"aria-hidden":`true`},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}});function bm(e,t,n){let r=n.initialDeps??[],i;return()=>{var a,o,s,c;let l;n.key&&(a=n.debug)!=null&&a.call(n)&&(l=Date.now());let u=e();if(!(u.length!==r.length||u.some((e,t)=>r[t]!==e)))return i;r=u;let d;if(n.key&&(o=n.debug)!=null&&o.call(n)&&(d=Date.now()),i=t(...u),n.key&&(s=n.debug)!=null&&s.call(n)){let e=Math.round((Date.now()-l)*100)/100,t=Math.round((Date.now()-d)*100)/100,r=t/16,i=(e,t)=>{for(e=String(e);e.lengthMath.abs(e-t)<1,Cm=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},wm=e=>e,Tm=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),r=[];for(let e=t;e<=n;e++)r.push(e);return r},Em=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(n.getBoundingClientRect()),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(e=>{let t=e[0];if(t!=null&&t.borderBoxSize){let e=t.borderBoxSize[0];if(e){i({width:e.inlineSize,height:e.blockSize});return}}i(n.getBoundingClientRect())});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},Dm={passive:!0},Om=typeof window>`u`?!0:`onscrollend`in window,km=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=0,a=Om?()=>{}:Cm(r,()=>{t(i,!1)},e.options.isScrollingResetDelay),o=r=>()=>{i=n[e.options.horizontal?`scrollLeft`:`scrollTop`],a(),t(i,r)},s=o(!0),c=o(!1);return c(),n.addEventListener(`scroll`,s,Dm),n.addEventListener(`scrollend`,c,Dm),()=>{n.removeEventListener(`scroll`,s),n.removeEventListener(`scrollend`,c)}},Am=(e,t,n)=>{if(t!=null&&t.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}return Math.round(e.getBoundingClientRect()[n.options.horizontal?`width`:`height`])},jm=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;let o=e+t;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:o,behavior:n})};var Mm=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollToIndexTimeoutId=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.pendingMeasuredCacheIndexes=[],this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{this._measureElement(e.target,e)})}));return{disconnect:()=>{var e;return(e=t())?.disconnect()},observe:e=>{var n;return(n=t())?.observe(e,{box:`border-box`})},unobserve:e=>{var n;return(n=t())?.unobserve(e)}}})(),this.range=null,this.setOptions=e=>{Object.entries(e).forEach(([t,n])=>{typeof n>`u`&&delete e[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:wm,rangeExtractor:Tm,onChange:()=>{},measureElement:Am,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,...e}},this.notify=(e,t)=>{var n,r;let{startIndex:i,endIndex:a}=this.range??{startIndex:void 0,endIndex:void 0},o=this.calculateRange();(e||i!==o?.startIndex||a!==o?.endIndex)&&((r=(n=this.options).onChange)==null||r.call(n,this,t))},this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.observer.disconnect(),this.elementsCache.clear()},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var e;let t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.notify(!1,!1);return}this.scrollElement=t,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=(e=this.scrollElement)?.window??null,this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.notify(!1,!1)})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{this.scrollAdjustments=0,this.scrollDirection=t?this.getScrollOffset()this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{let n=new Map,r=new Map;for(let i=t-1;i>=0;i--){let t=e[i];if(n.has(t.lane))continue;let a=r.get(t.lane);if(a==null||t.end>a.end?r.set(t.lane,t):t.ende.end===t.end?e.index-t.index:e.end-t.end)[0]:void 0},this.getMeasurementOptions=bm(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled],(e,t,n,r,i)=>(this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i}),{key:!1}),this.getMeasurements=bm(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i},a)=>{var o;if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),[];this.measurementsCache.length===0&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let s=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];let c=this.measurementsCache.slice(0,s);for(let i=s;i{let t=r(i),n=this.elementsCache.get(t);if(!e){n&&(this.observer.unobserve(n),this.elementsCache.delete(t));return}n!==e&&(n&&this.observer.unobserve(n),this.observer.observe(e),this.elementsCache.set(t,e)),e.isConnected&&this.resizeItem(i,this.options.measureElement(e,void 0,this))};let s=r(i),l=this.options.lanes===1?c[i-1]:this.getFurthestMeasurement(c,i),u=l?l.end+this.options.gap:t+n,d=a.get(s),f=typeof d==`number`?d:this.options.estimateSize(i),p=u+f,m=l?l.lane:i%this.options.lanes;c[i]={index:i,start:u,size:f,end:p,key:s,lane:m,measureElement:e}}return this.measurementsCache=c,c},{key:!1,debug:()=>this.options.debug}),this.calculateRange=bm(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset()],(e,t,n)=>this.range=e.length>0&&t>0?Pm({measurements:e,outerSize:t,scrollOffset:n}):null,{key:!1,debug:()=>this.options.debug}),this.getIndexes=bm(()=>[this.options.rangeExtractor,this.calculateRange(),this.options.overscan,this.options.count],(e,t,n,r)=>t===null?[]:e({startIndex:t.startIndex,endIndex:t.endIndex,overscan:n,count:r}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(e,t)=>{let n=this.indexFromElement(e),r=this.getMeasurements()[n];if(!r||!e.isConnected){this.elementsCache.forEach((t,n)=>{t===e&&(this.observer.unobserve(e),this.elementsCache.delete(n))});return}let i=this.elementsCache.get(r.key);i!==e&&(i&&this.observer.unobserve(i),this.observer.observe(e),this.elementsCache.set(r.key,e)),this.resizeItem(n,this.options.measureElement(e,t,this))},this.resizeItem=(e,t)=>{let n=this.getMeasurements()[e];if(!n)return;let r=this.itemSizeCache.get(n.key)??n.size,i=t-r;i!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange===void 0?n.start{e&&this._measureElement(e,void 0)},this.getVirtualItems=bm(()=>[this.getIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;rthis.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length!==0)return xm(t[Nm(0,t.length-1,e=>xm(t[e]).start,e)])},this.getOffsetForAlignment=(e,t)=>{let n=this.getSize(),r=this.getScrollOffset();t===`auto`&&(t=e<=r?`start`:e>=r+n?`end`:`start`),t===`start`?e=e:t===`end`?e-=n:t===`center`&&(e-=n/2);let i=this.options.horizontal?`scrollWidth`:`scrollHeight`,a=(this.scrollElement?`document`in this.scrollElement?this.scrollElement.document.documentElement[i]:this.scrollElement[i]:0)-n;return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getMeasurements()[e];if(!n)return;let r=this.getSize(),i=this.getScrollOffset();if(t===`auto`)if(n.end>=i+r-this.options.scrollPaddingEnd)t=`end`;else if(n.start<=i+this.options.scrollPaddingStart)t=`start`;else return[i,t];let a=t===`end`?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.cancelScrollToIndex=()=>{this.scrollToIndexTimeoutId!==null&&this.targetWindow&&(this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId),this.scrollToIndexTimeoutId=null)},this.scrollToOffset=(e,{align:t=`start`,behavior:n}={})=>{this.cancelScrollToIndex(),n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})},this.scrollToIndex=(e,{align:t=`auto`,behavior:n}={})=>{e=Math.max(0,Math.min(e,this.options.count-1)),this.cancelScrollToIndex(),n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size.");let r=this.getOffsetForIndex(e,t);if(!r)return;let[i,a]=r;this._scrollToOffset(i,{adjustments:void 0,behavior:n}),n!==`smooth`&&this.isDynamicMode()&&this.targetWindow&&(this.scrollToIndexTimeoutId=this.targetWindow.setTimeout(()=>{if(this.scrollToIndexTimeoutId=null,this.elementsCache.has(this.options.getItemKey(e))){let[t]=xm(this.getOffsetForIndex(e,a));Sm(t,this.getScrollOffset())||this.scrollToIndex(e,{align:a,behavior:n})}else this.scrollToIndex(e,{align:a,behavior:n})}))},this.scrollBy=(e,{behavior:t}={})=>{this.cancelScrollToIndex(),t===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var e;let t=this.getMeasurements(),n;return n=t.length===0?this.options.paddingStart:this.options.lanes===1?(e=t[t.length-1])?.end??0:Math.max(...t.slice(-this.options.lanes).map(e=>e.end)),n-this.options.scrollMargin+this.options.paddingEnd},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{var e,t;this.itemSizeCache=new Map,(t=(e=this.options).onChange)==null||t.call(e,this,!1)},this.setOptions(e)}};const Nm=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(ar)t=i-1;else return i}return e>0?e-1:0};function Pm({measurements:e,outerSize:t,scrollOffset:n}){let r=e.length-1,i=Nm(0,r,t=>e[t].start,n),a=i;for(;aV(e).getScrollElement(),e=>{e&&t._willUpdate()},{immediate:!0}),H(()=>V(e),e=>{t.setOptions({...e,onChange:(t,r)=>{var i;Ce(n),(i=e.onChange)==null||i.call(e,t,r)}}),t._willUpdate(),Ce(n)},{immediate:!0}),ie(r),n}function Im(e){return Fm(s(()=>({observeElementRect:Em,observeElementOffset:km,scrollToFn:jm,...V(e)})))}const Lm=g({__name:`ListboxVirtualizer`,props:{options:{},estimateSize:{},textContent:{type:Function}},setup(e){let n=e,r=Te(),i=um(),o=zo(),{getItems:c}=Su();i.isVirtual.value=!0;let u=s(()=>{let e=o.value;if(e){let t=window.getComputedStyle(e);return{start:Number.parseFloat(t.paddingBlockStart||t.paddingTop),end:Number.parseFloat(t.paddingBlockEnd||t.paddingBottom)}}else return{start:0,end:0}}),d=Im({get scrollPaddingStart(){return u.value.start},get scrollPaddingEnd(){return u.value.end},get count(){return n.options.length},get horizontal(){return i.orientation.value===`horizontal`},estimateSize(){return n.estimateSize??28},getScrollElement(){return o.value},overscan:12}),p=s(()=>d.value.getVirtualItems().map(e=>({item:e,is:a(r.default({option:n.options[e.index],virtualizer:d.value,virtualItem:e})[0],{key:`${e.key}`,"data-index":e.index,"aria-setsize":n.options.length,"aria-posinset":e.index+1,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})})));i.virtualFocusHook.on(e=>{let t=n.options.findIndex(e=>Array.isArray(i.modelValue.value)?lm(e,i.modelValue.value[0],i.by):lm(e,i.modelValue.value,i.by));t!==-1&&(e?.preventDefault(),d.value.scrollToIndex(t,{align:`start`}),requestAnimationFrame(()=>{let t=sm(o.value);t&&e&&t?.focus()}))});let m=vo(``,1e3),h=s(()=>{let e=e=>n.textContent?n.textContent(e):e.toString().toLowerCase();return n.options.map((t,n)=>({index:n,textContent:e(t)}))});function g(e,t){var r,a,o,s;if(!((r=i.firstValue)!=null&&r.value)||!i.multiple.value||!Array.isArray(i.modelValue.value))return;let l=(a=c().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===i.highlightedElement.value))?.value;if(!l)return;let u=null;switch(t){case`prev`:case`next`:u=Aa(n.options,i.firstValue.value,l);break;case`first`:u=Aa(n.options,i.firstValue.value,(o=n.options)?.[0]);break;case`last`:u=Aa(n.options,i.firstValue.value,(s=n.options)?.[n.options.length-1]);break}i.modelValue.value=u}return i.virtualKeydownHook.on(e=>{var t;let r=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!r)return;let a=od[e.key];if(r&&e.key===`a`&&i.multiple.value?(e.preventDefault(),i.modelValue.value=[...n.options],a=`last`):e.shiftKey&&a&&g(e,a),[`first`,`last`].includes(a)){e.preventDefault();let t=a===`first`?0:n.options.length-1;d.value.scrollToIndex(t),requestAnimationFrame(()=>{let e=c(),t=a===`first`?e[0]:e[e.length-1];i.onChangeHighlight(t.ref)})}else if(!a&&!r){m.value+=e.key;let n=Number((t=Y())?.getAttribute(`data-index`)),r=h.value[n].textContent,a=h.value.map(e=>e.textContent),s=Bs(a,m.value,r),c=h.value.find(e=>e.textContent===s);c&&(d.value.scrollToIndex(c.index,{align:`start`}),requestAnimationFrame(()=>{let e=o.value.querySelector(`[data-index="${c.index}"]`);e instanceof HTMLElement&&i.onChangeHighlight(e)}))}}),(e,n)=>(L(),f(`div`,{"data-radix-vue-virtualizer":``,style:F({position:`relative`,width:`100%`,height:`${V(d).getTotalSize()}px`})},[(L(!0),f(t,null,de(p.value,({is:e,item:t})=>(L(),l(fe(e),{key:t.index}))),128))],4))}}),[Rm,zm]=q(`ListboxGroup`),Bm=g({__name:`ListboxGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Z(void 0,`radix-vue-listbox-group`);return zm({id:n}),(e,r)=>(L(),l(V(Q),j({role:`group`},t,{"aria-labelledby":V(n)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-labelledby`]))}}),Vm=g({__name:`ListboxGroupLabel`,props:{for:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Rm({id:``});return(e,r)=>(L(),l(V(Q),j(t,{id:V(n).id}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),[Hm,Um]=q(`MenubarRoot`),Wm=g({__name:`MenubarRoot`,props:{modelValue:{},defaultValue:{},dir:{},loop:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),{createCollection:o}=os(`menubar`);o(a);let s=J(n,`modelValue`,r,{defaultValue:n.defaultValue??``,passive:n.modelValue===void 0}),c=R(null),{dir:u,loop:d}=B(n),f=cs(u);return Um({modelValue:s,dir:f,loop:d,onMenuOpen:e=>{s.value=e,c.value=e},onMenuClose:()=>{s.value=``},onMenuToggle:e=>{s.value=s.value?``:e,c.value=e}}),(e,t)=>(L(),l(V(pd),{"current-tab-stop-id":c.value,"onUpdate:currentTabStopId":t[0]||=e=>c.value=e,orientation:`horizontal`,loop:V(d),dir:V(f),"as-child":``},{default:W(()=>[m(V(Q),{ref:V(i),role:`menubar`},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(s)})]),_:3},512)]),_:3},8,[`current-tab-stop-id`,`loop`,`dir`]))}}),[Gm,Km]=q(`MenubarMenu`),qm=g({__name:`MenubarMenu`,props:{value:{}},setup(e){let t=Z(e.value),n=Hm();X();let r=R(),i=R(!1),a=s(()=>n.modelValue.value===t);return H(a,()=>{a.value||(i.value=!1)}),Km({value:t,triggerElement:r,triggerId:t,contentId:``,wasKeyboardTriggerOpenRef:i}),(e,t)=>(L(),l(V(rd),{open:a.value,modal:!1,dir:V(n).dir.value,"onUpdate:open":t[0]||=e=>{e||V(n).onMenuClose()}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`open`,`dir`]))}}),Jm=g({__name:`MenubarTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=Hm(),n=Gm(),{forwardRef:r,currentElement:i}=X(),a=R(!1),o=s(()=>t.modelValue.value===n.value);return I(()=>{n.triggerElement=i}),(e,s)=>(L(),l(V(md),{"as-child":``,focusable:!e.disabled,"tab-stop-id":V(n).value},{default:W(()=>[m(V(Yu),{"as-child":``},{default:W(()=>[m(V(Q),{id:V(n).triggerId,ref:V(r),as:e.as,type:e.as===`button`?`button`:void 0,role:`menuitem`,"aria-haspopup":`menu`,"aria-expanded":o.value,"aria-controls":o.value?V(n).contentId:void 0,"data-highlighted":a.value?``:void 0,"data-state":o.value?`open`:`closed`,"data-disabled":e.disabled?``:void 0,disabled:e.disabled,"data-value":V(n).value,"data-radix-vue-collection-item":``,onPointerdown:s[0]||=r=>{!e.disabled&&r.button===0&&r.ctrlKey===!1&&(V(t).onMenuOpen(V(n).value),o.value||r.preventDefault())},onPointerenter:s[1]||=()=>{var e;V(t).modelValue.value&&!o.value&&(V(t).onMenuOpen(V(n).value),(e=V(i))==null||e.focus())},onKeydown:s[2]||=G(r=>{e.disabled||([`Enter`,` `].includes(r.key)&&V(t).onMenuToggle(V(n).value),r.key===`ArrowDown`&&V(t).onMenuOpen(V(n).value),[`Enter`,` `,`ArrowDown`].includes(r.key)&&(V(n).wasKeyboardTriggerOpenRef.value=!0,r.preventDefault()))},[`enter`,`space`,`arrow-down`]),onFocus:s[3]||=e=>a.value=!0,onBlur:s[4]||=e=>a.value=!1},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`as`,`type`,`aria-expanded`,`aria-controls`,`data-highlighted`,`data-state`,`data-disabled`,`disabled`,`data-value`])]),_:3})]),_:3},8,[`focusable`,`tab-stop-id`]))}}),Ym=g({__name:`MenubarPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(kd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Xm=g({__name:`MenubarContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},side:{},sideOffset:{},align:{default:`start`},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let r=Hm(),i=Gm();i.contentId||=Z(void 0,`radix-vue-menubar-content`);let{injectCollection:a}=os(`menubar`),o=a(),s=R(!1);function c(e){let t=e.target.hasAttribute(`data-radix-menubar-subtrigger`),n=(r.dir.value===`rtl`?`ArrowRight`:`ArrowLeft`)===e.key;if(!n&&t)return;let a=o.value.map(e=>e.dataset.value);n&&a.reverse();let s=a.indexOf(i.value);a=r.loop.value?zs(a,s+1):a.slice(s+1);let[c]=a;c&&r.onMenuOpen(c)}return(e,t)=>(L(),l(V(Ed),j(V(n),{id:V(i).contentId,"data-radix-menubar-content":``,"aria-labelledby":V(i).triggerId,style:{"--radix-menubar-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-menubar-content-available-width":`var(--radix-popper-available-width)`,"--radix-menubar-content-available-height":`var(--radix-popper-available-height)`,"--radix-menubar-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-menubar-trigger-height":`var(--radix-popper-anchor-height)`},onCloseAutoFocus:t[0]||=e=>{var t;!V(r).modelValue.value&&!s.value&&((t=V(i).triggerElement.value)==null||t.focus()),s.value=!1,e.preventDefault()},onFocusOutside:t[1]||=e=>{let t=e.target;V(o).some(e=>e.contains(t))&&e.preventDefault()},onInteractOutside:t[2]||=e=>{s.value=!0},onEntryFocus:t[3]||=e=>{V(i).wasKeyboardTriggerOpenRef.value||e.preventDefault()},onKeydown:G(c,[`arrow-right`,`arrow-left`])}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`]))}}),Zm=g({__name:`MenubarArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Xu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Qm=g({__name:`MenubarItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(yd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),$m=g({__name:`MenubarGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Dd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),eh=g({__name:`MenubarSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Pd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),th=g({__name:`MenubarCheckboxItem`,props:{checked:{type:[Boolean,String]},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Cd),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),nh=g({__name:`MenubarItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Sd),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),rh=g({__name:`MenubarLabel`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Od),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ih=g({__name:`MenubarRadioGroup`,props:{modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(L(),l(V(Md),P(S({...n,...V(r)})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ah=g({__name:`MenubarRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(L(),l(V(Nd),P(S(V(n))),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),oh=g({__name:`MenubarSub`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`open`,r,{defaultValue:n.defaultOpen??!1,passive:n.open===void 0});return(e,t)=>(L(),l(V(Ld),{open:V(i),"onUpdate:open":t[0]||=e=>E(i)?i.value=e:null},{default:W(()=>[z(e.$slots,`default`,{open:V(i)})]),_:3},8,[`open`]))}}),sh=g({__name:`MenubarSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let{injectCollection:r}=os(`menubar`),i=Hm(),a=Gm(),o=r();function s(e){if(e.target.hasAttribute(`data-radix-menubar-subtrigger`))return;let t=o.value.map(e=>e.dataset.value),n=t.indexOf(a.value);t=i.loop.value?zs(t,n+1):t.slice(n+1);let[r]=t;r&&i.onMenuOpen(r)}return(e,t)=>(L(),l(V(Rd),j(V(n),{"data-radix-menubar-content":``,style:{"--radix-menubar-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-menubar-content-available-width":`var(--radix-popper-available-width)`,"--radix-menubar-content-available-height":`var(--radix-popper-available-height)`,"--radix-menubar-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-menubar-trigger-height":`var(--radix-popper-anchor-height)`},onKeydown:G(s,[`arrow-right`])}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),ch=g({__name:`MenubarSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(zd),j(t,{"data-radix-menubar-subtrigger":``}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[lh,uh]=q([`NavigationMenuRoot`,`NavigationMenuSub`],`NavigationMenuContext`),dh=g({__name:`NavigationMenuRoot`,props:{modelValue:{default:void 0},defaultValue:{},dir:{},orientation:{default:`horizontal`},delayDuration:{default:200},skipDelayDuration:{default:300},disableClickTrigger:{type:Boolean,default:!1},disableHoverTrigger:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`nav`}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t,{defaultValue:n.defaultValue??``,passive:n.modelValue===void 0}),i=R(``),{forwardRef:a,currentElement:o}=X(),c=R(),u=R(),{createCollection:d}=os(`nav`);d(c);let{delayDuration:f,skipDelayDuration:p,dir:m,disableClickTrigger:h,disableHoverTrigger:g}=B(n),_=cs(m),v=vo(!1,p),y=s(()=>r.value!==``||v.value?150:f.value),b=yo(e=>{typeof e==`string`&&(i.value=r.value,r.value=e)},y);return uh({isRootMenu:!0,modelValue:r,previousValue:i,baseId:Z(void 0,`radix-navigation-menu`),disableClickTrigger:h,disableHoverTrigger:g,dir:_,orientation:n.orientation,rootNavigationMenu:o,indicatorTrack:c,onIndicatorTrackChange:e=>{c.value=e},viewport:u,onViewportChange:e=>{u.value=e},onTriggerEnter:e=>{b(e)},onTriggerLeave:()=>{v.value=!0,b(``)},onContentEnter:()=>{b()},onContentLeave:()=>{b(``)},onItemSelect:e=>{i.value=r.value,r.value=e},onItemDismiss:()=>{i.value=r.value,r.value=``}}),(e,t)=>(L(),l(V(Q),{ref:V(a),"aria-label":`Main`,as:e.as,"as-child":e.asChild,"data-orientation":e.orientation,dir:V(_),"data-radix-navigation-menu":``},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(r)})]),_:3},8,[`as`,`as-child`,`data-orientation`,`dir`]))}});function fh(e){return e?`open`:`closed`}function ph(e,t){return`${e}-trigger-${t}`}function mh(e,t){return`${e}-content-${t}`}const hh=`navigationMenu.linkSelect`,gh=`navigationMenu.rootContentDismiss`;function _h(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function vh(e){let t=Y();return e.some(e=>e===t?!0:(e.focus(),Y()!==t))}function yh(e){return e.forEach(e=>{e.dataset.tabindex=e.getAttribute(`tabindex`)||``,e.setAttribute(`tabindex`,`-1`)}),()=>{e.forEach(e=>{let t=e.dataset.tabindex;e.setAttribute(`tabindex`,t)})}}function bh(e){return t=>t.pointerType===`mouse`?e(t):void 0}const[xh,Sh]=q(`NavigationMenuItem`),Ch=g({__name:`NavigationMenuItem`,props:{value:{},asChild:{type:Boolean},as:{default:`li`}},setup(e){let t=e;X();let{injectCollection:n}=os(`nav`),r=n(),i=lh(),a=Z(t.value),o=R(),s=R(),c=mh(i.baseId,a),u=()=>({}),d=R(!1);async function f(e=`start`){let t=document.getElementById(c);if(t){u();let n=_h(t);n.length&&vh(e===`start`?n:n.reverse())}}function p(){let e=document.getElementById(c);if(e){let t=_h(e);t.length&&(u=yh(t))}}Sh({value:a,contentId:c,triggerRef:o,focusProxyRef:s,wasEscapeCloseRef:d,onEntryKeyDown:f,onFocusProxyEnter:f,onContentFocusOutside:p,onRootContentClose:p});function m(){var e;i.onItemDismiss(),(e=o.value)==null||e.focus()}function h(e){let t=Y();if(e.keyCode===32||e.key===`Enter`)if(i.modelValue.value===a){m(),e.preventDefault();return}else{e.target.click(),e.preventDefault();return}let n=r.value.filter(e=>{var t;return(t=e.parentElement)?.hasAttribute(`data-menu-item`)});if(!n.includes(t))return;let o=Ho(e,t,void 0,{itemsArray:n,loop:!1});o&&o?.focus(),e.preventDefault(),e.stopPropagation()}return(e,t)=>(L(),l(V(Q),{"as-child":e.asChild,as:e.as,"data-menu-item":``,onKeydown:G(h,[`up`,`down`,`left`,`right`,`home`,`end`,`space`])},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}}),wh=g({__name:`NavigationMenuContentImpl`,props:{disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=e,r=t,{injectCollection:i}=os(`nav`),a=i(),{forwardRef:o,currentElement:c}=X(),u=lh(),d=xh(),f=ph(u.baseId,d.value),p=mh(u.baseId,d.value),m=R(null),h=s(()=>{let e=a.value.map(e=>e.id.split(`trigger-`)[1]);u.dir.value===`rtl`&&e.reverse();let t=e.indexOf(u.modelValue.value),n=e.indexOf(u.previousValue.value),r=d.value===u.modelValue.value,i=n===e.indexOf(d.value);if(!r&&!i)return m.value;let o=(()=>{if(t!==n){if(r&&n!==-1)return t>n?`from-end`:`from-start`;if(i&&t!==-1)return t>n?`to-start`:`to-end`}return null})();return m.value=o,o});function g(e){var t,n;if(r(`focusOutside`,e),r(`interactOutside`,e),!e.defaultPrevented){d.onContentFocusOutside();let r=e.target;(n=(t=u.rootNavigationMenu)?.value)!=null&&n.contains(r)&&e.preventDefault()}}function _(e){var t;if(r(`pointerDownOutside`,e),!e.defaultPrevented){let n=e.target,r=a.value.some(e=>e.contains(n)),i=u.isRootMenu&&(t=u.viewport.value)?.contains(n);(r||i||!u.isRootMenu)&&e.preventDefault()}}U(e=>{let t=c.value;if(u.isRootMenu&&t){let n=()=>{var e;u.onItemDismiss(),d.onRootContentClose(),t.contains(Y())&&((e=d.triggerRef.value)==null||e.focus())};t.addEventListener(gh,n),e(()=>t.removeEventListener(gh,n))}});function v(e){var t,n;r(`escapeKeyDown`,e),e.defaultPrevented||(u.onItemDismiss(),(n=(t=d.triggerRef)?.value)==null||n.focus(),d.wasEscapeCloseRef.value=!0)}function y(e){var t;if(e.target.closest(`[data-radix-navigation-menu]`)!==u.rootNavigationMenu.value)return;let n=e.altKey||e.ctrlKey||e.metaKey,r=e.key===`Tab`&&!n,i=_h(e.currentTarget);if(r){let n=Y(),r=i.findIndex(e=>e===n),a=e.shiftKey?i.slice(0,r).reverse():i.slice(r+1,i.length);if(vh(a))e.preventDefault();else{(t=d.focusProxyRef.value)==null||t.focus();return}}let a=Ho(e,Y(),void 0,{itemsArray:i,loop:!1,enableIgnoredElement:!0});a?.focus()}function b(){var e;let t=new Event(gh,{bubbles:!0,cancelable:!0});(e=c.value)==null||e.dispatchEvent(t)}return(e,t)=>(L(),l(V(Cc),j({id:V(p),ref:V(o),"aria-labelledby":V(f),"data-motion":h.value,"data-state":V(fh)(V(u).modelValue.value===V(d).value),"data-orientation":V(u).orientation},n,{onKeydown:y,onEscapeKeyDown:v,onPointerDownOutside:_,onFocusOutside:g,onDismiss:b}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`,`data-motion`,`data-state`,`data-orientation`]))}}),Th=g({inheritAttrs:!1,__name:`NavigationMenuContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let r=e,i=t,a=ls(i),{forwardRef:o}=X(),c=Ao(),d=lh(),f=xh(),p=s(()=>f.value===d.modelValue.value),h=s(()=>d.viewport.value&&!d.modelValue.value&&d.previousValue.value?d.previousValue.value===f.value:!1);return(e,t)=>V(c)?(L(),l(n,{key:0,to:V(d).viewport.value,disabled:!V(d).viewport.value},[m(V(Xs),{present:e.forceMount||p.value||h.value},{default:W(()=>[m(wh,j({ref:V(o),"data-state":V(fh)(p.value),style:{pointerEvents:!p.value&&V(d).isRootMenu?`none`:void 0}},{...e.$attrs,...r,...V(a)},{onPointerenter:t[0]||=e=>V(d).onContentEnter(V(f).value),onPointerleave:t[1]||=e=>V(bh)(()=>V(d).onContentLeave())(e),onPointerDownOutside:t[2]||=e=>i(`pointerDownOutside`,e),onFocusOutside:t[3]||=e=>i(`focusOutside`,e),onInteractOutside:t[4]||=e=>i(`interactOutside`,e)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`,`style`])]),_:3},8,[`present`])],8,[`to`,`disabled`])):u(``,!0)}}),Eh=g({inheritAttrs:!1,__name:`NavigationMenuIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:r}=X(),{injectCollection:i}=os(`nav`),a=i(),o=lh(),c=R(),d=s(()=>o.orientation===`horizontal`),f=s(()=>!!o.modelValue.value),p=R();function h(){p.value&&(c.value={size:d.value?p.value.offsetWidth:p.value.offsetHeight,offset:d.value?p.value.offsetLeft:p.value.offsetTop})}return U(()=>{if(!o.modelValue.value){c.value=void 0;return}let e=a.value;p.value=e.find(e=>e.id.includes(o.modelValue.value)),h()}),Lo(p,h),Lo(o.indicatorTrack,h),(e,i)=>V(o).indicatorTrack.value?(L(),l(n,{key:0,to:V(o).indicatorTrack.value},[m(V(Xs),{present:e.forceMount||f.value},{default:W(()=>{var n,i,a,s;return[m(V(Q),j({ref:V(r),"aria-hidden":`true`,"data-state":f.value?`visible`:`hidden`,"data-orientation":V(o).orientation,"as-child":t.asChild,as:e.as,style:{position:`absolute`,...d.value?{left:0,width:`${(n=c.value)?.size}px`,transform:`translateX(${(i=c.value)?.offset}px)`}:{top:0,height:`${(a=c.value)?.size}px`,transform:`translateY(${(s=c.value)?.offset}px)`}}},e.$attrs),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`,`data-orientation`,`as-child`,`as`,`style`])]}),_:3},8,[`present`])],8,[`to`])):u(``,!0)}}),Dh=g({__name:`NavigationMenuLink`,props:{active:{type:Boolean},asChild:{type:Boolean},as:{default:`a`}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t;X();async function i(e){var t;let n=new CustomEvent(hh,{bubbles:!0,cancelable:!0,detail:{originalEvent:e}});if(r(`select`,n),!n.defaultPrevented&&!e.metaKey){let n=new CustomEvent(gh,{bubbles:!0,cancelable:!0});(t=e.target)==null||t.dispatchEvent(n)}}return(e,t)=>(L(),l(V(Q),{as:e.as,"data-active":e.active?``:void 0,"aria-current":e.active?`page`:void 0,"as-child":n.asChild,"data-radix-vue-collection-item":``,onClick:i},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`data-active`,`aria-current`,`as-child`]))}}),Oh=g({inheritAttrs:!1,__name:`NavigationMenuList`,props:{asChild:{type:Boolean},as:{default:`ul`}},setup(e){let t=e,n=lh(),{forwardRef:r,currentElement:i}=X();return I(()=>{n.onIndicatorTrackChange(i.value)}),(e,i)=>(L(),l(V(Q),{ref:V(r),style:{position:`relative`}},{default:W(()=>[m(V(Q),j(e.$attrs,{"as-child":t.asChild,as:e.as,"data-orientation":V(n).orientation}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as-child`,`as`,`data-orientation`])]),_:3},512))}}),kh=g({__name:`NavigationMenuSub`,props:{modelValue:{},defaultValue:{},orientation:{default:`horizontal`},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t,{defaultValue:n.defaultValue??``,passive:n.modelValue===void 0}),i=R(``),a=lh(),{forwardRef:o,currentElement:s}=X(),c=R(),u=R(),{createCollection:d}=os(`nav`);return d(c),uh({...a,isRootMenu:!1,modelValue:r,previousValue:i,orientation:n.orientation,rootNavigationMenu:s,indicatorTrack:c,onIndicatorTrackChange:e=>{c.value=e},viewport:u,onViewportChange:e=>{u.value=e},onTriggerEnter:e=>{r.value=e},onTriggerLeave:()=>{},onContentEnter:()=>{},onContentLeave:()=>{},onItemSelect:e=>{r.value=e},onItemDismiss:()=>{r.value=``}}),(e,t)=>(L(),l(V(Q),{ref:V(o),"data-orientation":e.orientation,"as-child":n.asChild,as:e.as,"data-radix-navigation-menu":``},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(r)})]),_:3},8,[`data-orientation`,`as-child`,`as`]))}}),Ah=[`aria-owns`],jh=g({inheritAttrs:!1,__name:`NavigationMenuTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let n=e,r=lh(),i=xh(),{forwardRef:a,currentElement:o}=X(),c=R(``),l=R(``),d=vo(!1,300),p=R(!1),h=s(()=>i.value===r.modelValue.value);I(()=>{i.triggerRef=o,c.value=ph(r.baseId,i.value),l.value=mh(r.baseId,i.value)});function g(){r.disableHoverTrigger.value||(p.value=!1,i.wasEscapeCloseRef.value=!1)}function _(e){if(!r.disableHoverTrigger.value&&e.pointerType===`mouse`){if(n.disabled||p.value||i.wasEscapeCloseRef.value||d.value)return;r.onTriggerEnter(i.value),d.value=!0}}function v(e){if(!r.disableHoverTrigger.value&&e.pointerType===`mouse`){if(n.disabled)return;r.onTriggerLeave(),d.value=!1}}function y(e){e.pointerType===`mouse`&&r.disableClickTrigger.value||d.value||(h.value?r.onItemSelect(``):r.onItemSelect(i.value),p.value=h.value)}function b(e){let t={horizontal:`ArrowDown`,vertical:r.dir.value===`rtl`?`ArrowLeft`:`ArrowRight`}[r.orientation];h.value&&e.key===t&&(i.onEntryKeyDown(),e.preventDefault(),e.stopPropagation())}function x(e){i.focusProxyRef.value=To(e)}function S(e){let t=document.getElementById(i.contentId),n=e.relatedTarget,r=n===o.value,a=t?.contains(n);(r||!a)&&i.onFocusProxyEnter(r?`start`:`end`)}return(e,i)=>(L(),f(t,null,[m(V(Q),j({id:c.value,ref:V(a),disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-state":V(fh)(h.value),"aria-expanded":h.value,"aria-controls":l.value,"as-child":n.asChild,as:e.as},e.$attrs,{"data-radix-vue-collection-item":``,onPointerenter:g,onPointermove:_,onPointerleave:v,onClick:y,onKeydown:b}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`disabled`,`data-disabled`,`data-state`,`aria-expanded`,`aria-controls`,`as-child`,`as`]),h.value?(L(),f(t,{key:0},[m(V(mu),{ref:x,"aria-hidden":`true`,tabindex:0,onFocus:S}),V(r).viewport?(L(),f(`span`,{key:0,"aria-owns":l.value},null,8,Ah)):u(``,!0)],64)):u(``,!0)],64))}}),Mh=g({inheritAttrs:!1,__name:`NavigationMenuViewport`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let{forwardRef:t,currentElement:n}=X(),r=lh(),i=R(),a=s(()=>!!r.modelValue.value),o=s(()=>r.modelValue.value);H(n,()=>{n.value&&r.onViewportChange(n.value)});let c=R();return H([o,a],async()=>{var e,t;if(await N(),!n.value)return;let r=(t=(e=n.value.querySelector(`[data-state=open]`))?.children)?.[0];c.value=r},{immediate:!0}),Lo(c,()=>{c.value&&(i.value={width:c.value.offsetWidth,height:c.value.offsetHeight})}),(e,n)=>(L(),l(V(Xs),{present:e.forceMount||a.value},{default:W(()=>{var o,s;return[m(V(Q),j(e.$attrs,{ref:V(t),as:e.as,"as-child":e.asChild,"data-state":V(fh)(a.value),"data-orientation":V(r).orientation,style:{pointerEvents:!a.value&&V(r).isRootMenu?`none`:void 0,"--radix-navigation-menu-viewport-width":i.value?`${(o=i.value)?.width}px`:void 0,"--radix-navigation-menu-viewport-height":i.value?`${(s=i.value)?.height}px`:void 0},onPointerenter:n[0]||=e=>V(r).onContentEnter(V(r).modelValue.value),onPointerleave:n[1]||=e=>V(bh)(()=>V(r).onContentLeave())(e)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-state`,`data-orientation`,`style`])]}),_:3},8,[`present`]))}});function Nh(e){let{disabled:t}=e,n=R(),r=eo(),i=()=>window.clearTimeout(n.value),a=e=>{i(),!t.value&&(r.trigger(),n.value=window.setTimeout(()=>{a(60)},e))},o=()=>{a(400)},c=()=>{i()},l=R(!1),u=s(()=>To(e.target)),d=e=>{e.button!==0||l.value||(e.preventDefault(),l.value=!0,o())},f=()=>{l.value=!1,c()};return oo&&(Do(u||window,`pointerdown`,d),Do(window,`pointerup`,f),Do(window,`pointercancel`,f)),{isPressed:l,onTrigger:r.on}}function Ph(e,t=R({})){return ao(()=>new Ui(e.value,t.value))}function Fh(e,t=R({})){return ao(()=>new Ji(e.value,t.value))}function Ih(e,t,n){let r=e===`+`?t+n:t-n;if(t%1!=0||n%1!=0){let i=t.toString().split(`.`),a=n.toString().split(`.`),o=i[1]&&i[1].length||0,s=a[1]&&a[1].length||0,c=10**Math.max(o,s);t=Math.round(t*c),n=Math.round(n*c),r=e===`+`?t+n:t-n,r/=c}return r}const Lh=[`value`,`name`,`disabled`,`required`],[Rh,zh]=q(`NumberFieldRoot`),Bh=g({inheritAttrs:!1,__name:`NumberFieldRoot`,props:{defaultValue:{default:void 0},modelValue:{},min:{},max:{},step:{default:1},formatOptions:{},locale:{default:`en-US`},disabled:{type:Boolean},required:{type:Boolean},name:{},id:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,i=n,{disabled:a,min:o,max:c,step:l,locale:d,formatOptions:p,id:h}=B(r),g=J(r,`modelValue`,i,{defaultValue:r.defaultValue,passive:r.modelValue===void 0}),{primitiveElement:_,currentElement:v}=Us(),y=ps(v),b=R(),x=s(()=>F(g.value)===o.value||(o.value&&!isNaN(g.value)?Ih(`-`,g.value,l.value)F(g.value)===c.value||(c.value&&!isNaN(g.value)?Ih(`+`,g.value,l.value)>c.value:!1));function C(e,t=1){var n;let i=O.parse((n=b.value)?.value??``);r.disabled||(isNaN(i)?g.value=o.value??0:e===`increase`?g.value=F(i+(l.value??1)*t):g.value=F(i-(l.value??1)*t))}function w(e=1){C(`increase`,e)}function T(e=1){C(`decrease`,e)}function E(e){e===`min`&&o.value!==void 0?g.value=F(o.value):e===`max`&&c.value!==void 0&&(g.value=F(c.value))}let D=Ph(d,p),O=Fh(d,p),k=s(()=>D.resolvedOptions().maximumFractionDigits>0?`decimal`:`numeric`),A=Ph(d,p),M=s(()=>isNaN(g.value)?``:A.format(g.value));function N(e){return O.isValidPartialNumber(e,o.value,c.value)}function P(e){b.value&&(b.value.value=e)}function F(e){let t;return t=l.value===void 0||isNaN(l.value)?Ca(e,o.value,c.value):Ta(e,o.value,c.value,l.value),t=O.parse(D.format(t)),t}function ee(e){let t=O.parse(e);return g.value=F(t),e.length?(isNaN(t),P(M.value)):P(e)}return zh({modelValue:g,handleDecrease:T,handleIncrease:w,handleMinMaxValue:E,inputMode:k,inputEl:b,onInputElement:e=>b.value=e,textValue:M,validate:N,applyInputValue:ee,disabled:a,max:c,min:o,isDecreaseDisabled:x,isIncreaseDisabled:S,id:h}),(e,n)=>(L(),f(t,null,[m(V(Q),j(e.$attrs,{ref_key:`primitiveElement`,ref:_,role:`group`,as:e.as,"as-child":e.asChild,"data-disabled":V(a)?``:void 0}),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(g),textValue:M.value})]),_:3},16,[`as`,`as-child`,`data-disabled`]),V(y)?(L(),f(`input`,{key:0,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:V(g),name:r.name,disabled:r.disabled,required:r.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Lh)):u(``,!0)],64))}}),Vh=g({__name:`NumberFieldInput`,props:{asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,{primitiveElement:n,currentElement:r}=Us(),i=Rh();function a(e){e.target===Y()&&(Math.abs(e.deltaY)<=Math.abs(e.deltaX)||(e.preventDefault(),e.deltaY>0?i.handleIncrease():e.deltaY<0&&i.handleDecrease()))}I(()=>{i.onInputElement(r.value)});let o=R(i.textValue.value);H(()=>i.textValue.value,()=>{o.value=i.textValue.value},{immediate:!0,deep:!0});function s(){requestAnimationFrame(()=>{o.value=i.textValue.value})}return(e,r)=>(L(),l(V(Q),j(t,{id:V(i).id.value,ref_key:`primitiveElement`,ref:n,value:o.value,role:`spinbutton`,type:`text`,tabindex:`0`,inputmode:V(i).inputMode.value,disabled:V(i).disabled.value?``:void 0,"data-disabled":V(i).disabled.value?``:void 0,autocomplete:`off`,autocorrect:`off`,spellcheck:`false`,"aria-roledescription":`Number field`,"aria-valuenow":V(i).modelValue.value,"aria-valuemin":V(i).min.value,"aria-valuemax":V(i).max.value,onKeydown:[r[0]||=G(K(e=>V(i).handleIncrease(),[`prevent`]),[`up`]),r[1]||=G(K(e=>V(i).handleDecrease(),[`prevent`]),[`down`]),r[2]||=G(K(e=>V(i).handleIncrease(10),[`prevent`]),[`page-up`]),r[3]||=G(K(e=>V(i).handleDecrease(10),[`prevent`]),[`page-down`]),r[4]||=G(K(e=>V(i).handleMinMaxValue(`min`),[`prevent`]),[`home`]),r[5]||=G(K(e=>V(i).handleMinMaxValue(`max`),[`prevent`]),[`end`]),r[8]||=G(e=>{var t;return V(i).applyInputValue((t=e.target)?.value)},[`enter`])],onWheel:a,onBeforeinput:r[6]||=e=>{let t=e.target,n=t.value.slice(0,t.selectionStart??void 0)+(e.data??``)+t.value.slice(t.selectionEnd??void 0);V(i).validate(n)||e.preventDefault()},onInput:r[7]||=e=>{let t=e.target;o.value=t.value},onChange:s,onBlur:r[9]||=e=>{var t;return V(i).applyInputValue((t=e.target)?.value)}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`value`,`inputmode`,`disabled`,`data-disabled`,`aria-valuenow`,`aria-valuemin`,`aria-valuemax`]))}}),Hh=g({__name:`NumberFieldIncrement`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Rh(),r=s(()=>{var e;return(e=n.disabled)?.value||t.disabled||n.isIncreaseDisabled.value}),{primitiveElement:i,currentElement:a}=Us(),{isPressed:o,onTrigger:c}=Nh({target:a,disabled:r});return c(()=>{n.handleIncrease()}),(e,n)=>(L(),l(V(Q),j(t,{ref_key:`primitiveElement`,ref:i,tabindex:`-1`,"aria-label":`Increase`,type:e.as===`button`?`button`:void 0,style:{userSelect:V(o)?`none`:void 0},disabled:r.value?``:void 0,"data-disabled":r.value?``:void 0,"data-pressed":V(o)?`true`:void 0,onContextmenu:n[0]||=K(()=>{},[`prevent`])}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`,`style`,`disabled`,`data-disabled`,`data-pressed`]))}}),Uh=g({__name:`NumberFieldDecrement`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Rh(),r=s(()=>{var e;return(e=n.disabled)?.value||t.disabled||n.isDecreaseDisabled.value}),{primitiveElement:i,currentElement:a}=Us(),{isPressed:o,onTrigger:c}=Nh({target:a,disabled:r});return c(()=>{n.handleDecrease()}),(e,n)=>(L(),l(V(Q),j(t,{ref_key:`primitiveElement`,ref:i,tabindex:`-1`,"aria-label":`Decrease`,type:e.as===`button`?`button`:void 0,style:{userSelect:V(o)?`none`:void 0},disabled:r.value?``:void 0,"data-disabled":r.value?``:void 0,"data-pressed":V(o)?`true`:void 0,onContextmenu:n[0]||=K(()=>{},[`prevent`])}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`,`style`,`disabled`,`data-disabled`,`data-pressed`]))}}),[Wh,Gh]=q(`PaginationRoot`),Kh=g({__name:`PaginationRoot`,props:{page:{},defaultPage:{default:1},itemsPerPage:{default:10},total:{default:0},siblingCount:{default:2},disabled:{type:Boolean},showEdges:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`nav`}},emits:[`update:page`],setup(e,{emit:t}){let n=e,r=t,{siblingCount:i,disabled:a,showEdges:o}=B(n);X();let c=J(n,`page`,r,{defaultValue:n.defaultPage,passive:n.page===void 0}),u=s(()=>Math.max(1,Math.ceil(n.total/n.itemsPerPage)));return Gh({page:c,onPageChange(e){c.value=e},pageCount:u,siblingCount:i,disabled:a,showEdges:o}),(e,t)=>(L(),l(V(Q),{as:e.as,"as-child":e.asChild},{default:W(()=>[z(e.$slots,`default`,{page:V(c),pageCount:u.value})]),_:3},8,[`as`,`as-child`]))}}),qh=g({__name:`PaginationEllipsis`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Q),j(t,{"data-type":`ellipsis`}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`…`)])]),_:3},16))}}),Jh=g({__name:`PaginationFirst`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Wh();X();let r=s(()=>n.page.value===1||n.disabled.value);return(e,i)=>(L(),l(V(Q),j(t,{"aria-label":`First Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&V(n).onPageChange(1)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`First page`)])]),_:3},16,[`type`,`disabled`]))}}),Yh=g({__name:`PaginationLast`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Wh();X();let r=s(()=>n.page.value===n.pageCount.value||n.disabled.value);return(e,i)=>(L(),l(V(Q),j(t,{"aria-label":`Last Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&V(n).onPageChange(V(n).pageCount.value)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Last page`)])]),_:3},16,[`type`,`disabled`]))}});function Xh(e,t){let n=t-e+1;return Array.from({length:n},(t,n)=>n+e)}function Zh(e){return e.map(e=>typeof e==`number`?{type:`page`,value:e}:{type:`ellipsis`})}const Qh=`ellipsis`;function $h(e,t,n,r){let i=t,a=Math.max(e-n,1),o=Math.min(e+n,i);if(r){let e=Math.min(2*n+5,t)-2,r=a>3&&Math.abs(i-e-1+1)>2&&Math.abs(a-1)>2,s=o2&&Math.abs(i-o)>2;if(!r&&s)return[...Xh(1,e),Qh,i];if(r&&!s){let t=Xh(i-e+1,i);return[1,Qh,...t]}if(r&&s){let e=Xh(a,o);return[1,Qh,...e,Qh,i]}return Xh(1,i)}else{let r=n*2+1;return tZh($h(n.page.value,n.pageCount.value,n.siblingCount.value,n.showEdges.value)));return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`,{items:r.value})]),_:3},16))}}),tg=g({__name:`PaginationListItem`,props:{value:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Wh(),r=s(()=>n.page.value===t.value),i=s(()=>n.disabled.value);return(e,a)=>(L(),l(V(Q),j(t,{"data-type":`page`,"aria-label":`Page ${e.value}`,"aria-current":r.value?`page`:void 0,"data-selected":r.value?`true`:void 0,disabled:i.value,type:e.as===`button`?`button`:void 0,onClick:a[0]||=t=>!i.value&&V(n).onPageChange(e.value)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(ve(e.value),1)])]),_:3},16,[`aria-label`,`aria-current`,`data-selected`,`disabled`,`type`]))}}),ng=g({__name:`PaginationNext`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Wh(),r=s(()=>n.page.value===n.pageCount.value||n.disabled.value);return(e,i)=>(L(),l(V(Q),j(t,{"aria-label":`Next Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&V(n).onPageChange(V(n).page.value+1)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Next page`)])]),_:3},16,[`type`,`disabled`]))}}),rg=g({__name:`PaginationPrev`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Wh(),r=s(()=>n.page.value===1||n.disabled.value);return(e,i)=>(L(),l(V(Q),j(t,{"aria-label":`Previous Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&V(n).onPageChange(V(n).page.value-1)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Prev page`)])]),_:3},16,[`type`,`disabled`]))}}),ig=[`id`,`value`,`name`,`disabled`,`required`],[ag,og]=q(`PinInputRoot`),sg=g({inheritAttrs:!1,__name:`PinInputRoot`,props:{modelValue:{},defaultValue:{},placeholder:{default:``},mask:{type:Boolean},otp:{type:Boolean},type:{default:`text`},dir:{},name:{},disabled:{type:Boolean},required:{type:Boolean},id:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`complete`],setup(e,{emit:n}){let r=e,i=n,{mask:a,otp:o,placeholder:l,type:u,disabled:d,dir:p}=B(r),{forwardRef:h}=X(),g=cs(p),_=J(r,`modelValue`,i,{defaultValue:r.defaultValue??[],passive:r.modelValue===void 0}),v=R(new Set);function y(e){v.value.add(e)}let b=s(()=>_.value.filter(e=>!!e).length===v.value.size);return H(_,()=>{b.value&&i(`complete`,_.value)},{deep:!0}),og({modelValue:_,mask:a,otp:o,placeholder:l,type:u,dir:g,disabled:d,isCompleted:b,inputElements:v,onInputElementChange:y}),(e,n)=>(L(),f(t,null,[m(V(Q),j(e.$attrs,{ref:V(h),dir:V(g),"data-complete":b.value?``:void 0,"data-disabled":V(d)?``:void 0}),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(_)})]),_:3},16,[`dir`,`data-complete`,`data-disabled`]),c(`input`,{id:e.id,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:V(_).join(``),name:e.name,disabled:V(d),required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0},onFocus:n[0]||=e=>{var t,n;return(n=(t=Array.from(v.value))?.[0])?.focus()}},null,40,ig)],64))}}),cg=g({__name:`PinInputInput`,props:{index:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=ag(),r=s(()=>Array.from(n.inputElements.value)),i=s(()=>n.modelValue.value[t.index]),a=s(()=>t.disabled||n.disabled.value),o=s(()=>n.otp.value),c=s(()=>n.type.value===`number`),u=s(()=>n.mask.value),{primitiveElement:d,currentElement:f}=Us();function p(e){var n;let i=e.target;if(((n=e.data)?.length??0)>1){x(i.value);return}if(c.value&&!/^\d*$/.test(i.value)){i.value=i.value.replace(/\D/g,``);return}i.value=i.value.slice(-1),C(t.index,i.value);let a=r.value[t.index+1];a&&a.focus()}function m(){let e=f.value;N(()=>{e&&!e.value&&(e.placeholder=n.placeholder.value)})}function h(e){Ho(e,Y(),void 0,{itemsArray:r.value,focus:!0,loop:!1,arrowKeyOptions:`horizontal`,dir:n.dir.value})}function g(e){if(e.preventDefault(),e.target.value)C(t.index,``);else{let e=r.value[t.index-1];e&&(e.focus(),C(t.index-1,``))}}function _(e){e.key===`Delete`&&(e.preventDefault(),C(t.index,``))}function v(e){let t=e.target;t.setSelectionRange(1,1),t.value||(t.placeholder=``)}function y(e){m()}function b(e){e.preventDefault();let t=e.clipboardData;if(!t)return;let n=t.getData(`text`);x(n)}function x(e){var i;let a=[...n.modelValue.value],o=e.length>=r.value.length?0:t.index,s=Math.min(o+e.length,r.value.length);for(let t=o;t=0&&e[t]===``;)e.pop(),t--;return e}function C(e,t){let r=[...n.modelValue.value];r[e]=t,n.modelValue.value=S(r)}return H(i,()=>{i.value||m()}),I(()=>{n.onInputElementChange(f.value)}),ae(()=>{var e;(e=n.inputElements)==null||e.value.delete(f.value)}),(e,t)=>(L(),l(V(Q),{ref_key:`primitiveElement`,ref:d,autocapitalize:`none`,as:e.as,"as-child":e.asChild,autocomplete:o.value?`one-time-code`:`false`,type:u.value?`password`:`text`,inputmode:c.value?`numeric`:`text`,pattern:c.value?`[0-9]*`:void 0,placeholder:V(n).placeholder.value,value:i.value,disabled:a.value,"data-disabled":a.value?``:void 0,"data-complete":V(n).isCompleted.value?``:void 0,"aria-label":`pin input ${e.index+1} of ${r.value.length}`,onInput:t[0]||=e=>p(e),onKeydown:[G(h,[`left`,`right`,`up`,`down`,`home`,`end`]),G(g,[`backspace`]),G(_,[`delete`])],onFocus:v,onBlur:y,onPaste:b},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`autocomplete`,`type`,`inputmode`,`pattern`,`placeholder`,`value`,`disabled`,`data-disabled`,`data-complete`,`aria-label`]))}}),[lg,ug]=q(`PopoverRoot`),dg=g({__name:`PopoverRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},modal:{type:Boolean,default:!1}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{modal:i}=B(n),a=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),o=R(),s=R(!1);return ug({contentId:``,modal:i,open:a,onOpenChange:e=>{a.value=e},onOpenToggle:()=>{a.value=!a.value},triggerElement:o,hasCustomAnchor:s}),(e,t)=>(L(),l(V(tu),null,{default:W(()=>[z(e.$slots,`default`,{open:V(a)})]),_:3}))}}),fg=g({__name:`PopoverTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=lg(),{forwardRef:r,currentElement:i}=X();return I(()=>{n.triggerElement.value=i.value}),(e,i)=>(L(),l(fe(V(n).hasCustomAnchor.value?V(Q):V(nu)),{"as-child":``},{default:W(()=>[m(V(Q),{ref:V(r),type:e.as===`button`?`button`:void 0,"aria-haspopup":`dialog`,"aria-expanded":V(n).open.value,"aria-controls":V(n).contentId,"data-state":V(n).open.value?`open`:`closed`,as:e.as,"as-child":t.asChild,onClick:V(n).onOpenToggle},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`as`,`as-child`,`onClick`])]),_:3}))}}),pg=g({__name:`PopoverPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),mg=g({__name:`PopoverContentImpl`,props:{trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=ms(n),{forwardRef:a}=X(),o=lg();return ds(),(e,t)=>(L(),l(V(zc),{"as-child":``,loop:``,trapped:e.trapFocus,onMountAutoFocus:t[5]||=e=>r(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>r(`closeAutoFocus`,e)},{default:W(()=>[m(V(Cc),{"as-child":``,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onPointerDownOutside:t[0]||=e=>r(`pointerDownOutside`,e),onInteractOutside:t[1]||=e=>r(`interactOutside`,e),onEscapeKeyDown:t[2]||=e=>r(`escapeKeyDown`,e),onFocusOutside:t[3]||=e=>r(`focusOutside`,e),onDismiss:t[4]||=e=>V(o).onOpenChange(!1)},{default:W(()=>[m(V(lu),j(V(i),{id:V(o).contentId,ref:V(a),"data-state":V(o).open.value?`open`:`closed`,role:`dialog`,style:{"--radix-popover-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-popover-content-available-width":`var(--radix-popper-available-width)`,"--radix-popover-content-available-height":`var(--radix-popper-available-height)`,"--radix-popover-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-popover-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`data-state`])]),_:3},8,[`disable-outside-pointer-events`])]),_:3},8,[`trapped`]))}}),hg=g({__name:`PopoverContentModal`,props:{trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=lg(),a=R(!1);es(!0);let o=hs(n,r),{forwardRef:s,currentElement:c}=X();return Ms(c),(e,t)=>(L(),l(mg,j(V(o),{ref:V(s),"trap-focus":V(i).open.value,"disable-outside-pointer-events":``,onCloseAutoFocus:t[0]||=K(e=>{var t;r(`closeAutoFocus`,e),a.value||(t=V(i).triggerElement.value)==null||t.focus()},[`prevent`]),onPointerDownOutside:t[1]||=e=>{r(`pointerDownOutside`,e);let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,i=t.button===2||n;a.value=i},onFocusOutside:t[2]||=K(()=>{},[`prevent`])}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),gg=g({__name:`PopoverContentNonModal`,props:{trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=lg(),a=R(!1),o=R(!1),s=hs(n,r);return(e,t)=>(L(),l(mg,j(V(s),{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{var t;r(`closeAutoFocus`,e),e.defaultPrevented||(a.value||(t=V(i).triggerElement.value)==null||t.focus(),e.preventDefault()),a.value=!1,o.value=!1},onInteractOutside:t[1]||=async e=>{var t;r(`interactOutside`,e),e.defaultPrevented||(a.value=!0,e.detail.originalEvent.type===`pointerdown`&&(o.value=!0));let n=e.target;(t=V(i).triggerElement.value)!=null&&t.contains(n)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&o.value&&e.preventDefault()}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),_g=g({__name:`PopoverContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=lg(),a=hs(n,r),{forwardRef:o}=X();return i.contentId||=Z(void 0,`radix-vue-popover-content`),(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(i).open.value},{default:W(()=>[V(i).modal.value?(L(),l(hg,j({key:0},V(a),{ref:V(o)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):(L(),l(gg,j({key:1},V(a),{ref:V(o)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),vg=g({__name:`PopoverArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(pu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),yg=g({__name:`PopoverClose`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=lg();return(e,r)=>(L(),l(V(Q),{type:e.as===`button`?`button`:void 0,as:e.as,"as-child":t.asChild,onClick:r[0]||=e=>V(n).onOpenChange(!1)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`]))}}),bg=g({__name:`PopoverAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;X();let n=lg();return te(()=>{n.hasCustomAnchor.value=!0}),ae(()=>{n.hasCustomAnchor.value=!1}),(e,n)=>(L(),l(V(nu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),xg=100,[Sg,Cg]=q(`ProgressRoot`),wg=e=>typeof e==`number`;function Tg(e,t){return Ma(e)||wg(e)&&!Number.isNaN(e)&&e<=t&&e>=0?e:(console.error(`Invalid prop \`value\` of value \`${e}\` supplied to \`ProgressRoot\`. The \`value\` prop must be: - - a positive number - - less than the value passed to \`max\` (or ${xg} if no \`max\` prop is set) - - \`null\` or \`undefined\` if the progress is indeterminate. - -Defaulting to \`null\`.`),null)}function Eg(e){return wg(e)&&!Number.isNaN(e)&&e>0?e:(console.error(`Invalid prop \`max\` of value \`${e}\` supplied to \`ProgressRoot\`. Only numbers greater than 0 are valid max values. Defaulting to \`${xg}\`.`),xg)}const Dg=g({__name:`ProgressRoot`,props:{modelValue:{},max:{default:xg},getValueLabel:{type:Function,default:(e,t)=>`${Math.round(e/t*xg)}%`},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:max`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`modelValue`,r,{passive:n.modelValue===void 0}),a=J(n,`max`,r,{passive:n.max===void 0});H(()=>i.value,async e=>{let t=Tg(e,n.max);t!==e&&(await N(),i.value=t)},{immediate:!0}),H(()=>n.max,e=>{let t=Eg(n.max);t!==e&&(a.value=t)},{immediate:!0});let o=s(()=>Ma(i.value)?`indeterminate`:i.value===a.value?`complete`:`loading`);return Cg({modelValue:i,max:a,progressState:o}),(e,t)=>(L(),l(V(Q),{"as-child":e.asChild,as:e.as,"aria-valuemax":V(a),"aria-valuemin":0,"aria-valuenow":wg(V(i))?V(i):void 0,"aria-valuetext":e.getValueLabel(V(i),V(a)),"aria-label":e.getValueLabel(V(i),V(a)),role:`progressbar`,"data-state":o.value,"data-value":V(i)??void 0,"data-max":V(a)},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(i)})]),_:3},8,[`as-child`,`as`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-label`,`data-state`,`data-value`,`data-max`]))}}),Og=g({__name:`ProgressIndicator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Sg();return X(),(e,r)=>{var i;return L(),l(V(Q),j(t,{"data-state":V(n).progressState.value,"data-value":(i=V(n).modelValue)?.value??void 0,"data-max":V(n).max.value}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`,`data-value`,`data-max`])}}}),[kg,Ag]=q(`RadioGroupRoot`),jg=g({__name:`RadioGroupRoot`,props:{modelValue:{},defaultValue:{},disabled:{type:Boolean,default:!1},name:{},required:{type:Boolean,default:!1},orientation:{default:void 0},dir:{},loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i}=X(),a=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),{disabled:o,loop:s,orientation:c,name:u,required:d,dir:f}=B(n),p=cs(f);return Ag({modelValue:a,changeModelValue:e=>{a.value=e},disabled:o,loop:s,orientation:c,name:u?.value,required:d}),(e,t)=>(L(),l(V(pd),{"as-child":``,orientation:V(c),dir:V(p),loop:V(s)},{default:W(()=>[m(V(Q),{ref:V(i),role:`radiogroup`,"data-disabled":V(o)?``:void 0,"as-child":e.asChild,as:e.as,required:V(d),"aria-orientation":V(c),"aria-required":V(d),dir:V(p),name:V(u)},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(a)})]),_:3},8,[`data-disabled`,`as-child`,`as`,`required`,`aria-orientation`,`aria-required`,`dir`,`name`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Mg=[`value`,`checked`,`name`,`disabled`,`required`],Ng=g({__name:`Radio`,props:{id:{},value:{},disabled:{type:Boolean,default:!1},required:{type:Boolean},checked:{type:Boolean,default:void 0},name:{},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:checked`],setup(e,{emit:t}){let n=e,r=J(n,`checked`,t,{passive:n.checked===void 0}),{value:i}=B(n),{forwardRef:a,currentElement:o}=X(),c=ps(o),d=s(()=>{var e;return n.id&&o.value?(e=document.querySelector(`[for="${n.id}"]`))?.innerText??n.value:void 0});function p(e){r.value=!0,c.value&&e.stopPropagation()}return(e,t)=>(L(),l(V(Q),j(e.$attrs,{id:e.id,ref:V(a),role:`radio`,type:e.as===`button`?`button`:void 0,as:e.as,"aria-checked":V(r),"aria-label":d.value,"as-child":e.asChild,disabled:e.disabled?``:void 0,"data-state":V(r)?`checked`:`unchecked`,"data-disabled":e.disabled?``:void 0,value:V(i),required:e.required,name:e.name,onClick:K(p,[`stop`])}),{default:W(()=>[z(e.$slots,`default`,{checked:V(r)}),V(c)?(L(),f(`input`,{key:0,type:`radio`,tabindex:`-1`,"aria-hidden":`true`,value:V(i),checked:!!V(r),name:e.name,disabled:e.disabled,required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Mg)):u(``,!0)]),_:3},16,[`id`,`type`,`as`,`aria-checked`,`aria-label`,`as-child`,`disabled`,`data-state`,`data-disabled`,`value`,`required`,`name`]))}}),[Pg,Fg]=q(`RadioGroupItem`),Ig=g({inheritAttrs:!1,__name:`RadioGroupItem`,props:{id:{},value:{},disabled:{type:Boolean,default:!1},required:{type:Boolean},name:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,{forwardRef:n,currentElement:r}=X(),i=kg(),a=s(()=>i.disabled.value||t.disabled),o=s(()=>i.required.value||t.required),c=s(()=>{var e;return(e=i.modelValue)?.value===t.value});Fg({disabled:a,checked:c});let u=R(!1),d=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`];Do(`keydown`,e=>{d.includes(e.key)&&(u.value=!0)}),Do(`keyup`,()=>{u.value=!1});function f(){setTimeout(()=>{var e;u.value&&((e=r.value)==null||e.click())},0)}return(e,r)=>(L(),l(V(md),{checked:c.value,disabled:a.value,"as-child":``,focusable:!a.value,active:c.value},{default:W(()=>[m(Ng,j({...e.$attrs,...t},{ref:V(n),checked:c.value,required:o.value,disabled:a.value,"onUpdate:checked":r[0]||=t=>V(i).changeModelValue(e.value),onKeydown:r[1]||=G(K(()=>{},[`prevent`]),[`enter`]),onFocus:f}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`checked`,`required`,`disabled`])]),_:3},8,[`checked`,`disabled`,`focusable`,`active`]))}}),Lg=g({__name:`RadioGroupIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let{forwardRef:t}=X(),n=Pg();return(e,r)=>(L(),l(V(Xs),{present:e.forceMount||V(n).checked.value},{default:W(()=>[m(V(Q),j({ref:V(t),"data-state":V(n).checked.value?`checked`:`unchecked`,"data-disabled":V(n).disabled.value?``:void 0,"as-child":e.asChild,as:e.as},e.$attrs),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`,`data-disabled`,`as-child`,`as`])]),_:3},8,[`present`]))}});function Rg(e){let t=s(()=>e.start.value?!!e.isDateDisabled(e.start.value):!1),n=s(()=>e.end.value?!!e.isDateDisabled(e.end.value):!1),r=s(()=>t.value||n.value?!1:!!(e.start.value&&e.end.value&&ua(e.end.value,e.start.value))),i=t=>e.start.value?Zt(e.start.value,t):!1,a=t=>e.end.value?Zt(e.end.value,t):!1,o=t=>e.start.value&&Zt(e.start.value,t)||e.end.value&&Zt(e.end.value,t)?!0:e.end.value&&e.start.value?ha(t,e.start.value,e.end.value):!1,c=s(()=>{if(e.start.value&&e.end.value||!e.start.value||!e.focusedValue.value)return null;let t=ua(e.start.value,e.focusedValue.value),n=t?e.start.value:e.focusedValue.value,r=t?e.focusedValue.value:e.start.value;return Zt(n,r)||va(n,r,e.isDateUnavailable,e.isDateDisabled)?{start:n,end:r}:null});return{isInvalid:r,isSelected:o,highlightedRange:c,isSelectionStart:i,isSelectionEnd:a,isHighlightedStart:e=>!c.value||!c.value.start?!1:Zt(c.value.start,e),isHighlightedEnd:e=>!c.value||!c.value.end?!1:Zt(c.value.end,e)}}const zg={style:{border:`0px`,clip:`rect(0px, 0px, 0px, 0px)`,"clip-path":`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:`0px`,position:`absolute`,"white-space":`nowrap`,width:`1px`}},Bg={role:`heading`,"aria-level":`2`},[Vg,Hg]=q(`RangeCalendarRoot`),Ug=g({__name:`RangeCalendarRoot`,props:{defaultPlaceholder:{},defaultValue:{default:()=>({start:void 0,end:void 0})},modelValue:{},placeholder:{default:void 0},pagedNavigation:{type:Boolean,default:!1},preventDeselect:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},calendarLabel:{},fixedWeeks:{type:Boolean,default:!1},maxValue:{},minValue:{},locale:{default:`en`},numberOfMonths:{default:1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},initialFocus:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},isDateUnavailable:{type:Function,default:void 0},dir:{},nextPage:{},prevPage:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`update:placeholder`,`update:startValue`],setup(e,{emit:t}){let n=e,r=t,{disabled:i,readonly:a,initialFocus:o,pagedNavigation:s,weekStartsOn:u,weekdayFormat:d,fixedWeeks:f,numberOfMonths:p,preventDeselect:m,isDateUnavailable:h,isDateDisabled:g,calendarLabel:_,maxValue:v,minValue:y,locale:b,dir:x,nextPage:S,prevPage:C}=B(n),{primitiveElement:w,currentElement:T}=Us(),E=cs(x),D=R(),O=R(),k=J(n,`modelValue`,r,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),A=Na({defaultPlaceholder:n.placeholder,defaultValue:k.value.start,locale:n.locale}),j=R(k.value.start),M=R(k.value.end),N=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??A.copy(),passive:n.placeholder===void 0});function P(e){N.value=e.copy()}let{fullCalendarLabel:F,headingValue:ee,isDateDisabled:te,isDateUnavailable:ne,isNextButtonDisabled:re,isPrevButtonDisabled:ie,grid:ae,weekdays:oe,isOutsideVisibleView:se,nextPage:ce,prevPage:le,formatter:ue}=kl({locale:b,placeholder:N,weekStartsOn:u,fixedWeeks:f,numberOfMonths:p,minValue:y,maxValue:v,disabled:i,weekdayFormat:d,pagedNavigation:s,isDateDisabled:g.value,isDateUnavailable:h.value,calendarLabel:_,nextPage:S,prevPage:C}),{isInvalid:de,isSelected:fe,highlightedRange:pe,isSelectionStart:me,isSelectionEnd:he,isHighlightedStart:ge,isHighlightedEnd:_e}=Rg({start:j,end:M,isDateDisabled:te,isDateUnavailable:ne,focusedValue:O});return H(k,e=>{var t,n,r,i;(!e||!e.start||j.value&&!$t(e.start,j.value))&&(j.value=(n=(t=e?.start)?.copy)?.call(t)),(!e||!e.end||M.value&&!$t(e.end,M.value))&&(M.value=(i=(r=e?.end)?.copy)?.call(r))}),H(j,e=>{e&&!$t(e,N.value)&&P(e),r(`update:startValue`,e)}),H([j,M],([e,t])=>{let n=k.value;if(!(n&&n.start&&n.end&&e&&t&&$t(n.start,e)&&$t(n.end,t)))if(e&&t){if(n.start&&n.end&&$t(n.start,e)&&$t(n.end,t))return;ua(t,e)?k.value={start:t.copy(),end:e.copy()}:k.value={start:e.copy(),end:t.copy()}}else n.start&&n.end&&(k.value={start:e?.copy(),end:void 0})}),Hg({isDateUnavailable:ne,startValue:j,endValue:M,formatter:ue,modelValue:k,placeholder:N,disabled:i,initialFocus:o,pagedNavigation:s,weekStartsOn:u,weekdayFormat:d,fixedWeeks:f,numberOfMonths:p,readonly:a,preventDeselect:m,fullCalendarLabel:F,headingValue:ee,isInvalid:de,isDateDisabled:te,highlightedRange:pe,focusedValue:O,lastPressedDateValue:D,isSelected:fe,isSelectionEnd:he,isSelectionStart:me,isNextButtonDisabled:re,isPrevButtonDisabled:ie,isOutsideVisibleView:se,nextPage:ce,prevPage:le,parentElement:T,onPlaceholderChange:P,locale:b,dir:E,isHighlightedStart:ge,isHighlightedEnd:_e}),I(()=>{o.value&&Xa(T.value)}),(e,t)=>(L(),l(V(Q),{ref_key:`primitiveElement`,ref:w,as:e.as,"as-child":e.asChild,role:`application`,"aria-label":V(F),"data-readonly":V(a)?``:void 0,"data-disabled":V(i)?``:void 0,"data-invalid":V(de)?``:void 0,dir:V(E)},{default:W(()=>[c(`div`,zg,[c(`div`,Bg,ve(V(F)),1)]),z(e.$slots,`default`,{date:V(N),grid:V(ae),weekDays:V(oe),weekStartsOn:V(u),locale:V(b),fixedWeeks:V(f)})]),_:3},8,[`as`,`as-child`,`aria-label`,`data-readonly`,`data-disabled`,`data-invalid`,`dir`]))}}),Wg=g({__name:`RangeCalendarHeader`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Gg=g({__name:`RangeCalendarHeading`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Vg();return(e,r)=>(L(),l(V(Q),j(t,{"data-disabled":V(n).disabled.value?``:void 0}),{default:W(()=>[z(e.$slots,`default`,{headingValue:V(n).headingValue.value},()=>[p(ve(V(n).headingValue.value),1)])]),_:3},16,[`data-disabled`]))}}),Kg=g({__name:`RangeCalendarGrid`,props:{asChild:{type:Boolean},as:{default:`table`}},setup(e){let t=e,n=Vg(),r=s(()=>n.disabled.value?!0:void 0),i=s(()=>n.readonly.value?!0:void 0);return(e,n)=>(L(),l(V(Q),j(t,{tabindex:`-1`,role:`grid`,"aria-readonly":i.value,"aria-disabled":r.value,"data-readonly":i.value&&``,"data-disabled":r.value&&``}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-readonly`,`aria-disabled`,`data-readonly`,`data-disabled`]))}}),qg=g({__name:`RangeCalendarCell`,props:{date:{},asChild:{type:Boolean},as:{default:`td`}},setup(e){let t=Vg();return(e,n)=>{var r,i;return L(),l(V(Q),{as:e.as,"as-child":e.asChild,role:`gridcell`,"aria-selected":V(t).isSelected(e.date)?!0:void 0,"aria-disabled":V(t).isDateDisabled(e.date)||(i=(r=V(t)).isDateUnavailable)?.call(r,e.date),"data-disabled":V(t).isDateDisabled(e.date)?``:void 0},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-selected`,`aria-disabled`,`data-disabled`])}}}),Jg=g({__name:`RangeCalendarHeadCell`,props:{asChild:{type:Boolean},as:{default:`th`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Yg=g({__name:`RangeCalendarNext`,props:{step:{},nextPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=s(()=>r.disabled.value||r.isNextButtonDisabled(t.step,t.nextPage)),r=Vg();return(e,i)=>(L(),l(V(Q),j(t,{"aria-label":`Next page`,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>V(r).nextPage(t.step,t.nextPage)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Next page`)])]),_:3},16,[`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Xg=g({__name:`RangeCalendarPrev`,props:{step:{},prevPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=s(()=>r.disabled.value||r.isPrevButtonDisabled(t.step,t.prevPage)),r=Vg();return(e,i)=>(L(),l(V(Q),j(t,{"aria-label":`Previous page`,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>V(r).prevPage(t.step,t.prevPage)}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`Prev page`)])]),_:3},16,[`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Zg=g({__name:`RangeCalendarGridHead`,props:{asChild:{type:Boolean},as:{default:`thead`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),j(t,{"aria-hidden":`true`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Qg=g({__name:`RangeCalendarGridBody`,props:{asChild:{type:Boolean},as:{default:`tbody`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),$g=g({__name:`RangeCalendarGridRow`,props:{asChild:{type:Boolean},as:{default:`tr`}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),e_=g({__name:`RangeCalendarCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Vg(),r=Vs(),{primitiveElement:i,currentElement:a}=Us(),o=s(()=>n.formatter.custom(aa(t.day),{weekday:`long`,month:`long`,day:`numeric`,year:`numeric`})),c=s(()=>n.isDateDisabled(t.day)),u=s(()=>{var e;return(e=n.isDateUnavailable)?.call(n,t.day)}),d=s(()=>n.isSelected(t.day)),f=s(()=>n.isSelectionStart(t.day)),m=s(()=>n.isSelectionEnd(t.day)),h=s(()=>n.isHighlightedStart(t.day)),g=s(()=>n.isHighlightedEnd(t.day)),_=s(()=>n.highlightedRange.value?ma(t.day,n.highlightedRange.value.start,n.highlightedRange.value.end):!1),v=`[data-radix-vue-calendar-cell-trigger]:not([data-disabled]):not([data-outside-view]):not([data-outside-visible-view])`,y=s(()=>nn(t.day,fn())),b=s(()=>!Qt(t.day,t.month)),x=s(()=>n.isOutsideVisibleView(t.day)),S=s(()=>t.day.day.toLocaleString(n.locale.value)),C=s(()=>!n.disabled.value&&Zt(t.day,n.placeholder.value));function w(e,t){var r;if(!n.readonly.value&&!(n.isDateDisabled(t)||(r=n.isDateUnavailable)!=null&&r.call(n,t))){if(n.lastPressedDateValue.value=t.copy(),n.startValue.value&&n.highlightedRange.value===null){if(Zt(t,n.startValue.value)&&!n.preventDeselect.value&&!n.endValue.value){n.startValue.value=void 0,n.onPlaceholderChange(t);return}else if(!n.endValue.value){e.preventDefault(),n.lastPressedDateValue.value&&Zt(n.lastPressedDateValue.value,t)&&(n.startValue.value=t.copy());return}}if(n.startValue.value&&n.endValue.value&&Zt(n.endValue.value,t)&&!n.preventDeselect.value){n.startValue.value=void 0,n.endValue.value=void 0,n.onPlaceholderChange(t);return}n.startValue.value?n.endValue.value?n.endValue.value&&n.startValue.value&&(n.endValue.value=void 0,n.startValue.value=t.copy()):n.endValue.value=t.copy():n.startValue.value=t.copy()}}function T(e){w(e,t.day)}function E(){var e;n.isDateDisabled(t.day)||(e=n.isDateUnavailable)!=null&&e.call(n,t.day)||(n.focusedValue.value=t.day.copy())}function D(e){e.preventDefault(),e.stopPropagation();let i=n.parentElement.value,o=i?Array.from(i.querySelectorAll(v)):[],s=o.indexOf(a.value),c=7,l=n.dir.value===`rtl`?-1:1;switch(e.code){case r.ARROW_RIGHT:s+=l;break;case r.ARROW_LEFT:s-=l;break;case r.ARROW_UP:s-=c;break;case r.ARROW_DOWN:s+=c;break;case r.ENTER:case r.SPACE_CODE:w(e,t.day);return;default:return}if(s>=0&&s{let e=i?Array.from(i.querySelectorAll(v)):[];if(!n.pagedNavigation.value){let t=la(n.placeholder.value);e[t-Math.abs(s)].focus();return}e[e.length-Math.abs(s)].focus()});return}if(s>=o.length){if(n.isNextButtonDisabled(`month`))return;n.nextPage(),N(()=>{let e=i?Array.from(i.querySelectorAll(v)):[];if(!n.pagedNavigation.value){let t=la(n.placeholder.value.add({months:n.numberOfMonths.value-1}));e[e.length-t+s-o.length].focus();return}e[s-o.length].focus()})}}return(e,n)=>(L(),l(V(Q),j({ref_key:`primitiveElement`,ref:i},t,{role:`button`,"aria-label":o.value,"data-radix-vue-calendar-cell-trigger":``,"aria-selected":d.value?!0:void 0,"aria-disabled":c.value||u.value?!0:void 0,"data-highlighted":_.value?``:void 0,"data-selection-start":f.value?!0:void 0,"data-selection-end":m.value?!0:void 0,"data-highlighted-start":h.value?!0:void 0,"data-highlighted-end":g.value?!0:void 0,"data-selected":d.value?!0:void 0,"data-outside-visible-view":x.value?``:void 0,"data-value":e.day.toString(),"data-disabled":c.value?``:void 0,"data-unavailable":u.value?``:void 0,"data-today":y.value?``:void 0,"data-outside-view":b.value?``:void 0,"data-focused":C.value?``:void 0,tabindex:C.value?0:b.value||c.value?void 0:-1,onClick:T,onFocusin:E,onMouseenter:E,onKeydown:G(D,[`up`,`down`,`left`,`right`,`enter`,`space`])}),{default:W(()=>[z(e.$slots,`default`,{dayValue:S.value},()=>[p(ve(S.value),1)])]),_:3},16,[`aria-label`,`aria-selected`,`aria-disabled`,`data-highlighted`,`data-selection-start`,`data-selection-end`,`data-highlighted-start`,`data-highlighted-end`,`data-selected`,`data-outside-visible-view`,`data-value`,`data-disabled`,`data-unavailable`,`data-today`,`data-outside-view`,`data-focused`,`tabindex`]))}}),[t_,n_]=q(`ScrollAreaRoot`),r_=g({__name:`ScrollAreaRoot`,props:{type:{default:`hover`},dir:{},scrollHideDelay:{default:600},asChild:{type:Boolean},as:{}},setup(e,{expose:t}){let n=e,r=R(0),i=R(0),a=R(),o=R(),s=R(),c=R(),u=R(!1),d=R(!1),{type:f,dir:p,scrollHideDelay:m}=B(n),h=cs(p);function g(){var e;(e=a.value)==null||e.scrollTo({top:0})}function _(){var e;(e=a.value)==null||e.scrollTo({top:0,left:0})}t({viewport:a,scrollTop:g,scrollTopLeft:_});let{forwardRef:v,currentElement:y}=X();return n_({type:f,dir:h,scrollHideDelay:m,scrollArea:y,viewport:a,onViewportChange:e=>{a.value=e||void 0},content:o,onContentChange:e=>{o.value=e},scrollbarX:s,scrollbarXEnabled:u,scrollbarY:c,scrollbarYEnabled:d,onScrollbarXChange:e=>{s.value=e||void 0},onScrollbarYChange:e=>{c.value=e||void 0},onScrollbarXEnabledChange:e=>{u.value=e},onScrollbarYEnabledChange:e=>{d.value=e},onCornerWidthChange:e=>{r.value=e},onCornerHeightChange:e=>{i.value=e}}),(e,t)=>(L(),l(V(Q),{ref:V(v),"as-child":n.asChild,as:e.as,dir:V(h),style:F({position:`relative`,"--radix-scroll-area-corner-width":`${r.value}px`,"--radix-scroll-area-corner-height":`${i.value}px`})},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`dir`,`style`]))}}),i_=g({inheritAttrs:!1,__name:`ScrollAreaViewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e,{expose:n}){let r=e,{nonce:i}=B(r),a=zu(i),o=t_(),s=R();I(()=>{o.onViewportChange(s.value),o.onContentChange(u.value)}),n({viewportElement:s});let{forwardRef:l,currentElement:u}=X();return(e,n)=>(L(),f(t,null,[c(`div`,j({ref_key:`viewportElement`,ref:s,"data-radix-scroll-area-viewport":``,style:{overflowX:V(o).scrollbarXEnabled.value?`scroll`:`hidden`,overflowY:V(o).scrollbarYEnabled.value?`scroll`:`hidden`}},e.$attrs,{tabindex:0}),[m(V(Q),{ref:V(l),style:F({minWidth:V(o).scrollbarXEnabled.value?`fit-content`:void 0}),"as-child":r.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`style`,`as-child`,`as`])],16),m(V(Q),{as:`style`,nonce:V(a)},{default:W(()=>[p(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-scroll-area-viewport] { scrollbar-width:none; -ms-overflow-style:none; -webkit-overflow-scrolling:touch; } [data-radix-scroll-area-viewport]::-webkit-scrollbar { display:none; } `)]),_:1},8,[`nonce`])],64))}});function a_(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function o_(e){let t=s_(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function s_(e,t){let n=e/t;return Number.isNaN(n)?0:n}function c_(e,t=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},r=0;return function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)}(),()=>window.cancelAnimationFrame(r)}function l_(e,t,n=`ltr`){let r=o_(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=Ca(e,c[0],c[1]);return a_([0,o],[0,s])(l)}function u_(e){return e?Number.parseInt(e,10):0}function d_(e,t,n,r=`ltr`){let i=o_(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return a_([c,l],d)(e)}function f_(e,t){return e>0&&e{document.addEventListener(`wheel`,g,{passive:!1})}),ae(()=>{document.removeEventListener(`wheel`,g)});function _(){var e,t,r,o,s;c.value&&(n.isHorizontal?a.handleSizeChange({content:(e=i.viewport.value)?.scrollWidth??0,viewport:(t=i.viewport.value)?.offsetWidth??0,scrollbar:{size:c.value.clientWidth??0,paddingStart:u_(getComputedStyle(c.value).paddingLeft),paddingEnd:u_(getComputedStyle(c.value).paddingRight)}}):a.handleSizeChange({content:(r=i.viewport.value)?.scrollHeight??0,viewport:(o=i.viewport.value)?.offsetHeight??0,scrollbar:{size:(s=c.value)?.clientHeight??0,paddingStart:u_(getComputedStyle(c.value).paddingLeft),paddingEnd:u_(getComputedStyle(c.value).paddingRight)}}))}return Lo(c,_),Lo(i.content,_),(e,t)=>(L(),l(V(Q),{ref:V(s),style:{position:`absolute`},"data-scrollbarimpl":``,as:V(o).as.value,"as-child":V(o).asChild.value,onPointerdown:p,onPointermove:m,onPointerup:h},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),m_=g({__name:`ScrollAreaScrollbarX`,setup(e){let t=t_(),n=g_(),{forwardRef:r,currentElement:i}=X();I(()=>{i.value&&t.onScrollbarXChange(i.value)});let a=s(()=>n.sizes.value);return(e,i)=>(L(),l(p_,{ref:V(r),"is-horizontal":!0,"data-orientation":`horizontal`,style:F({bottom:0,left:V(t).dir.value===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:V(t).dir.value===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":a.value?`${V(o_)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>V(n).onDragScroll(e.x)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`style`]))}}),h_=g({__name:`ScrollAreaScrollbarY`,setup(e){let t=t_(),n=g_(),{forwardRef:r,currentElement:i}=X();I(()=>{i.value&&t.onScrollbarYChange(i.value)});let a=s(()=>n.sizes.value);return(e,i)=>(L(),l(p_,{ref:V(r),"is-horizontal":!1,"data-orientation":`vertical`,style:F({top:0,right:V(t).dir.value===`ltr`?0:void 0,left:V(t).dir.value===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":a.value?`${V(o_)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>V(n).onDragScroll(e.y)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`style`]))}}),[g_,__]=q(`ScrollAreaScrollbarVisible`),v_=g({__name:`ScrollAreaScrollbarVisible`,setup(e){let t=t_(),n=S_(),{forwardRef:r}=X(),i=R({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),a=s(()=>{let e=s_(i.value.viewport,i.value.content);return e>0&&e<1}),o=R(),c=R(0);function u(e,n){if(h.value){let r=t.viewport.value.scrollLeft+e.deltaY;t.viewport.value.scrollLeft=r,f_(r,n)&&e.preventDefault()}else{let r=t.viewport.value.scrollTop+e.deltaY;t.viewport.value.scrollTop=r,f_(r,n)&&e.preventDefault()}}function d(e,t){h.value?c.value=t.x:c.value=t.y}function f(e){c.value=0}function p(e){i.value=e}function m(e,t){return d_(e,c.value,i.value,t)}let h=s(()=>n.isHorizontal.value);function g(e){h.value?t.viewport.value.scrollLeft=m(e,t.dir.value):t.viewport.value.scrollTop=m(e)}function _(){if(h.value){if(t.viewport.value&&o.value){let e=t.viewport.value.scrollLeft,n=l_(e,i.value,t.dir.value);o.value.style.transform=`translate3d(${n}px, 0, 0)`}}else if(t.viewport.value&&o.value){let e=t.viewport.value.scrollTop,n=l_(e,i.value);o.value.style.transform=`translate3d(0, ${n}px, 0)`}}function v(e){o.value=e}return __({sizes:i,hasThumb:a,handleWheelScroll:u,handleThumbDown:d,handleThumbUp:f,handleSizeChange:p,onThumbPositionChange:_,onThumbChange:v,onDragScroll:g}),(e,t)=>h.value?(L(),l(m_,j({key:0},e.$attrs,{ref:V(r)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):(L(),l(h_,j({key:1},e.$attrs,{ref:V(r)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),y_=g({__name:`ScrollAreaScrollbarAuto`,props:{forceMount:{type:Boolean}},setup(e){let t=t_(),n=S_(),{forwardRef:r}=X(),i=R(!1),a=yo(()=>{if(t.viewport.value){let e=t.viewport.value.offsetWidtha()),Lo(t.viewport,a),Lo(t.content,a),(e,t)=>(L(),l(V(Xs),{present:e.forceMount||i.value},{default:W(()=>[m(v_,j(e.$attrs,{ref:V(r),"data-state":i.value?`visible`:`hidden`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),b_=g({inheritAttrs:!1,__name:`ScrollAreaScrollbarHover`,props:{forceMount:{type:Boolean}},setup(e){let t=t_(),{forwardRef:n}=X(),r,i=R(!1);function a(){window.clearTimeout(r),i.value=!0}function o(){r=window.setTimeout(()=>{i.value=!1},t.scrollHideDelay.value)}return I(()=>{let e=t.scrollArea.value;e&&(e.addEventListener(`pointerenter`,a),e.addEventListener(`pointerleave`,o))}),ae(()=>{let e=t.scrollArea.value;e&&(window.clearTimeout(r),e.removeEventListener(`pointerenter`,a),e.removeEventListener(`pointerleave`,o))}),(e,t)=>(L(),l(V(Xs),{present:e.forceMount||i.value},{default:W(()=>[m(y_,j(e.$attrs,{ref:V(n),"data-state":i.value?`visible`:`hidden`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),x_=g({__name:`ScrollAreaScrollbarScroll`,props:{forceMount:{type:Boolean}},setup(e){let t=t_(),n=S_(),{forwardRef:r}=X(),{state:i,dispatch:a}=Is(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});U(e=>{if(i.value===`idle`){let n=window.setTimeout(()=>a(`HIDE`),t.scrollHideDelay.value);e(()=>{window.clearTimeout(n)})}});let o=yo(()=>a(`SCROLL_END`),100);return U(e=>{let r=t.viewport.value,i=n.isHorizontal.value?`scrollLeft`:`scrollTop`;if(r){let t=r[i],n=()=>{let e=r[i];t!==e&&(a(`SCROLL`),o()),t=e};r.addEventListener(`scroll`,n),e(()=>{r.removeEventListener(`scroll`,n)})}}),(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(i)!==`hidden`},{default:W(()=>[m(v_,j(e.$attrs,{ref:V(r)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),[S_,C_]=q(`ScrollAreaScrollbar`),w_=g({inheritAttrs:!1,__name:`ScrollAreaScrollbar`,props:{orientation:{default:`vertical`},forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,{forwardRef:n}=X(),r=t_(),i=s(()=>t.orientation===`horizontal`);H(i,()=>{i.value?r.onScrollbarXEnabledChange(!0):r.onScrollbarYEnabledChange(!0)},{immediate:!0}),ae(()=>{r.onScrollbarXEnabledChange(!1),r.onScrollbarYEnabledChange(!1)});let{orientation:a,forceMount:o,asChild:c,as:d}=B(t);return C_({orientation:a,forceMount:o,isHorizontal:i,as:d,asChild:c}),(e,t)=>V(r).type.value===`hover`?(L(),l(b_,j({key:0},e.$attrs,{ref:V(n),"force-mount":V(o)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`force-mount`])):V(r).type.value===`scroll`?(L(),l(x_,j({key:1},e.$attrs,{ref:V(n),"force-mount":V(o)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`force-mount`])):V(r).type.value===`auto`?(L(),l(y_,j({key:2},e.$attrs,{ref:V(n),"force-mount":V(o)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`force-mount`])):V(r).type.value===`always`?(L(),l(v_,j({key:3},e.$attrs,{ref:V(n),"data-state":`visible`}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}}),T_=g({__name:`ScrollAreaThumb`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=t_(),r=g_();function i(e){let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,i=e.clientY-t.top;r.handleThumbDown(e,{x:n,y:i})}function a(e){r.handleThumbUp(e)}let{forwardRef:o,currentElement:c}=X(),u=R(),d=s(()=>n.viewport.value);function f(){if(!u.value){let e=c_(d.value,r.onThumbPositionChange);u.value=e,r.onThumbPositionChange()}}let p=s(()=>r.sizes.value);return wo(p,()=>{r.onThumbChange(c.value),d.value&&(r.onThumbPositionChange(),d.value.addEventListener(`scroll`,f))}),ae(()=>{var e;d.value.removeEventListener(`scroll`,f),(e=n.viewport.value)==null||e.removeEventListener(`scroll`,f)}),(e,n)=>(L(),l(V(Q),{ref:V(o),"data-state":V(r).hasThumb?`visible`:`hidden`,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`},"as-child":t.asChild,as:e.as,onPointerdown:i,onPointerup:a},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`data-state`,`as-child`,`as`]))}}),E_=g({__name:`ScrollAreaCornerImpl`,setup(e){let t=t_(),n=R(0),r=R(0),i=s(()=>!!n.value&&!!r.value);function a(){var e;let n=(e=t.scrollbarX.value)?.offsetHeight||0;t.onCornerHeightChange(n),r.value=n}function o(){var e;let r=(e=t.scrollbarY.value)?.offsetWidth||0;t.onCornerWidthChange(r),n.value=r}return Lo(t.scrollbarX.value,a),Lo(t.scrollbarY.value,o),H(()=>t.scrollbarX.value,a),H(()=>t.scrollbarY.value,o),(e,a)=>{var o;return i.value?(L(),l(V(Q),j({key:0,style:{width:`${n.value}px`,height:`${r.value}px`,position:`absolute`,right:V(t).dir.value===`ltr`?0:void 0,left:V(t).dir.value===`rtl`?0:void 0,bottom:0}},(o=e.$parent)?.$props),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`style`])):u(``,!0)}}}),D_=g({__name:`ScrollAreaCorner`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),r=t_(),i=s(()=>!!r.scrollbarX.value&&!!r.scrollbarY.value),a=s(()=>r.type.value!==`scroll`&&i.value);return(e,r)=>a.value?(L(),l(E_,j({key:0},t,{ref:V(n)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}}),O_=[`default-value`],k_=g({__name:`BubbleSelect`,props:{autocomplete:{},autofocus:{type:Boolean},disabled:{type:Boolean},form:{},multiple:{type:Boolean},name:{},required:{type:Boolean},size:{},value:{}},setup(e){let t=e,{value:n}=B(t),r=R();return(e,i)=>(L(),l(V(mu),{"as-child":``},{default:W(()=>[Ae(c(`select`,j({ref_key:`selectElement`,ref:r},t,{"onUpdate:modelValue":i[0]||=e=>E(n)?n.value=e:null,"default-value":V(n)}),[z(e.$slots,`default`)],16,O_),[[Ee,V(n)]])]),_:3}))}}),A_={key:0,value:``},[j_,M_]=q(`SelectRoot`),[N_,P_]=q(`SelectRoot`),F_=g({__name:`SelectRoot`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},defaultValue:{default:``},modelValue:{default:void 0},dir:{},name:{},autocomplete:{},disabled:{type:Boolean},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`],setup(e,{emit:n}){let r=e,i=n,a=J(r,`modelValue`,i,{defaultValue:r.defaultValue,passive:r.modelValue===void 0}),o=J(r,`open`,i,{defaultValue:r.defaultOpen,passive:r.open===void 0}),c=R(),d=R(),p=R({x:0,y:0}),m=R(!1),{required:h,disabled:g,dir:_}=B(r),v=cs(_);M_({triggerElement:c,onTriggerChange:e=>{c.value=e},valueElement:d,onValueElementChange:e=>{d.value=e},valueElementHasChildren:m,onValueElementHasChildrenChange:e=>{m.value=e},contentId:``,modelValue:a,onValueChange:e=>{a.value=e},open:o,required:h,onOpenChange:e=>{o.value=e},dir:v,triggerPointerDownPosRef:p,disabled:g});let y=ps(c),b=R(new Set),x=s(()=>Array.from(b.value).map(e=>{var t;return(t=e.props)?.value}).join(`;`));return P_({onNativeOptionAdd:e=>{b.value.add(e)},onNativeOptionRemove:e=>{b.value.delete(e)}}),(e,n)=>(L(),l(V(tu),null,{default:W(()=>[z(e.$slots,`default`,{modelValue:V(a),open:V(o)}),V(y)?(L(),l(k_,j({key:x.value},e.$attrs,{"aria-hidden":`true`,tabindex:`-1`,required:V(h),name:e.name,autocomplete:e.autocomplete,disabled:V(g),value:V(a),onChange:n[0]||=e=>a.value=e.target.value}),{default:W(()=>[V(a)===void 0?(L(),f(`option`,A_)):u(``,!0),(L(!0),f(t,null,de(Array.from(b.value),e=>(L(),l(fe(e),j({ref_for:!0},e.props,{key:e.key??``}),null,16))),128))]),_:1},16,[`required`,`name`,`autocomplete`,`disabled`,`value`])):u(``,!0)]),_:3}))}}),I_=[` `,`Enter`,`ArrowUp`,`ArrowDown`],L_=[` `,`Enter`],R_=10;function z_(e){return e===``||Ma(e)}const B_=g({__name:`SelectTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=j_(),r=s(()=>{var e;return(e=n.disabled)?.value||t.disabled}),{forwardRef:i,currentElement:a}=X();n.contentId||=Z(void 0,`radix-vue-select-content`),I(()=>{n.triggerElement=a});let{injectCollection:o}=os(),c=o(),{search:u,handleTypeaheadSearch:d,resetTypeahead:f}=Rs(c);function p(){r.value||(n.onOpenChange(!0),f())}function h(e){p(),n.triggerPointerDownPosRef.value={x:Math.round(e.pageX),y:Math.round(e.pageY)}}return(e,t)=>(L(),l(V(nu),{"as-child":``},{default:W(()=>{var a,o,s,c;return[m(V(Q),{ref:V(i),role:`combobox`,type:e.as===`button`?`button`:void 0,"aria-controls":V(n).contentId,"aria-expanded":V(n).open.value||!1,"aria-required":(a=V(n).required)?.value,"aria-autocomplete":`none`,disabled:r.value,dir:(o=V(n))?.dir.value,"data-state":(s=V(n))!=null&&s.open.value?`open`:`closed`,"data-disabled":r.value?``:void 0,"data-placeholder":V(z_)((c=V(n).modelValue)?.value)?``:void 0,"as-child":e.asChild,as:e.as,onClick:t[0]||=e=>{var t;(t=e?.currentTarget)==null||t.focus()},onPointerdown:t[1]||=e=>{if(e.pointerType===`touch`)return e.preventDefault();let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&(h(e),e.preventDefault())},onPointerup:t[2]||=K(e=>{e.pointerType===`touch`&&h(e)},[`prevent`]),onKeydown:t[3]||=e=>{let t=V(u)!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&t&&e.key===` `||(V(d)(e.key),V(I_).includes(e.key)&&(p(),e.preventDefault()))}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`type`,`aria-controls`,`aria-expanded`,`aria-required`,`disabled`,`dir`,`data-state`,`data-disabled`,`data-placeholder`,`as-child`,`as`])]}),_:3}))}}),V_=g({__name:`SelectPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[H_,U_]=q(`SelectItemAlignedPosition`),W_=g({inheritAttrs:!1,__name:`SelectItemAlignedPosition`,props:{asChild:{type:Boolean},as:{}},emits:[`placed`],setup(e,{emit:t}){let n=e,r=t,{injectCollection:i}=os(),a=j_(),o=q_(),s=i(),c=R(!1),l=R(!0),u=R(),{forwardRef:d,currentElement:p}=X(),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o;function y(){if(a.triggerElement.value&&a.valueElement.value&&u.value&&p.value&&h!=null&&h.value&&g!=null&&g.value&&_!=null&&_.value){let e=a.triggerElement.value.getBoundingClientRect(),t=p.value.getBoundingClientRect(),n=a.valueElement.value.getBoundingClientRect(),i=_.value.getBoundingClientRect();if(a.dir.value!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-R_,d=Ca(a,R_,Math.max(R_,l-c));u.value.style.minWidth=`${s}px`,u.value.style.left=`${d}px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-R_,d=Ca(a,R_,Math.max(R_,l-c));u.value.style.minWidth=`${s}px`,u.value.style.right=`${d}px`}let o=s.value,l=window.innerHeight-R_*2,d=h.value.scrollHeight,f=window.getComputedStyle(p.value),m=Number.parseInt(f.borderTopWidth,10),v=Number.parseInt(f.paddingTop,10),y=Number.parseInt(f.borderBottomWidth,10),b=Number.parseInt(f.paddingBottom,10),x=m+v+d+b+y,S=Math.min(g.value.offsetHeight*5,x),C=window.getComputedStyle(h.value),w=Number.parseInt(C.paddingTop,10),T=Number.parseInt(C.paddingBottom,10),E=e.top+e.height/2-R_,D=l-E,O=g.value.offsetHeight/2,k=g.value.offsetTop+O,A=m+v+k,j=x-A;if(A<=E){let e=g.value===o[o.length-1];u.value.style.bottom=`0px`;let t=p.value.clientHeight-h.value.offsetTop-h.value.offsetHeight,n=Math.max(D,O+(e?T:0)+t+y),r=A+n;u.value.style.height=`${r}px`}else{let e=g.value===o[0];u.value.style.top=`0px`;let t=Math.max(E,m+h.value.offsetTop+(e?w:0)+O)+j;u.value.style.height=`${t}px`,h.value.scrollTop=A-E+h.value.offsetTop}u.value.style.margin=`${R_}px 0`,u.value.style.minHeight=`${S}px`,u.value.style.maxHeight=`${l}px`,r(`placed`),requestAnimationFrame(()=>c.value=!0)}}let b=R(``);I(async()=>{await N(),y(),p.value&&(b.value=window.getComputedStyle(p.value).zIndex)});function x(e){e&&l.value===!0&&(y(),v?.(),l.value=!1)}return U_({contentWrapper:u,shouldExpandOnScrollRef:c,onScrollButtonChange:x}),(e,t)=>(L(),f(`div`,{ref_key:`contentWrapperElement`,ref:u,style:F({display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:b.value})},[m(V(Q),j({ref:V(d),style:{boxSizing:`border-box`,maxHeight:`100%`}},{...e.$attrs,...n}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)],4))}}),G_=g({__name:`SelectPopperPosition`,props:{side:{},sideOffset:{},align:{default:`start`},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{default:R_},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=ms(e);return(e,n)=>(L(),l(V(lu),j(V(t),{style:{boxSizing:`border-box`,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),K_={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[q_,J_]=q(`SelectContent`),Y_=g({__name:`SelectContentImpl`,props:{position:{default:`item-aligned`},bodyLock:{type:Boolean,default:!0},side:{},sideOffset:{},align:{default:`start`},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=t,i=j_();ds(),es(n.bodyLock);let{createCollection:a}=os(),o=R();Ms(o);let c=a(o),{search:u,handleTypeaheadSearch:d}=Rs(c),f=R(),p=R(),h=R(),g=R(!1),_=R(!1);function v(){p.value&&o.value&&Xc([p.value,o.value])}H(g,()=>{v()});let{onOpenChange:y,triggerPointerDownPosRef:b}=i;U(e=>{if(!o.value)return;let t={x:0,y:0},n=e=>{var n,r;t={x:Math.abs(Math.round(e.pageX)-((n=b.value)?.x??0)),y:Math.abs(Math.round(e.pageY)-((r=b.value)?.y??0))}},r=e=>{var r;e.pointerType!==`touch`&&(t.x<=10&&t.y<=10?e.preventDefault():(r=o.value)!=null&&r.contains(e.target)||y(!1),document.removeEventListener(`pointermove`,n),b.value=null)};b.value!==null&&(document.addEventListener(`pointermove`,n),document.addEventListener(`pointerup`,r,{capture:!0,once:!0})),e(()=>{document.removeEventListener(`pointermove`,n),document.removeEventListener(`pointerup`,r,{capture:!0})})});function x(e){let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&d(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=c.value;if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>Xc(t)),e.preventDefault()}}let S=s(()=>n.position===`popper`?n:{}),C=ms(S.value);return J_({content:o,viewport:f,onViewportChange:e=>{f.value=e},itemRefCallback:(e,t,n)=>{var r,a;let o=!_.value&&!n;((r=i.modelValue)?.value!==void 0&&(a=i.modelValue)?.value===t||o)&&(p.value=e,o&&(_.value=!0))},selectedItem:p,selectedItemText:h,onItemLeave:()=>{var e;(e=o.value)==null||e.focus()},itemTextRefCallback:(e,t,n)=>{var r,a;let o=!_.value&&!n;((r=i.modelValue)?.value!==void 0&&(a=i.modelValue)?.value===t||o)&&(h.value=e)},focusSelectedItem:v,position:n.position,isPositioned:g,searchRef:u}),(e,t)=>(L(),l(V(zc),{"as-child":``,onMountAutoFocus:t[6]||=K(()=>{},[`prevent`]),onUnmountAutoFocus:t[7]||=e=>{var t;r(`closeAutoFocus`,e),!e.defaultPrevented&&((t=V(i).triggerElement.value)==null||t.focus({preventScroll:!0}),e.preventDefault())}},{default:W(()=>[m(V(Cc),{"as-child":``,"disable-outside-pointer-events":``,onFocusOutside:t[2]||=K(()=>{},[`prevent`]),onDismiss:t[3]||=e=>V(i).onOpenChange(!1),onEscapeKeyDown:t[4]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[5]||=e=>r(`pointerDownOutside`,e)},{default:W(()=>[(L(),l(fe(e.position===`popper`?G_:W_),j({...e.$attrs,...V(C)},{id:V(i).contentId,ref:e=>{o.value=V(To)(e)},role:`listbox`,"data-state":V(i).open.value?`open`:`closed`,dir:V(i).dir.value,style:{display:`flex`,flexDirection:`column`,outline:`none`},onContextmenu:t[0]||=K(()=>{},[`prevent`]),onPlaced:t[1]||=e=>g.value=!0,onKeydown:x}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`dir`,`onKeydown`]))]),_:3})]),_:3}))}}),X_=g({inheritAttrs:!1,__name:`SelectProvider`,props:{context:{}},setup(e){return M_(e.context),(e,t)=>z(e.$slots,`default`)}}),Z_={key:1},Q_=g({inheritAttrs:!1,__name:`SelectContent`,props:{forceMount:{type:Boolean},position:{},bodyLock:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let r=e,i=hs(r,t),a=j_(),o=R();I(()=>{o.value=new DocumentFragment});let c=R(),d=s(()=>r.forceMount||a.open.value);return(e,t)=>{var r;return d.value?(L(),l(V(Xs),{key:0,ref_key:`presenceRef`,ref:c,present:!0},{default:W(()=>[m(Y_,P(S({...V(i),...e.$attrs})),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3},512)):!((r=c.value)!=null&&r.present)&&o.value?(L(),f(`div`,Z_,[(L(),l(n,{to:o.value},[m(X_,{context:V(a)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`context`])],8,[`to`]))])):u(``,!0)}}}),$_=g({__name:`SelectArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e,n=j_(),r=q_(K_);return(e,i)=>V(n).open.value&&V(r).position===`popper`?(L(),l(V(pu),P(j({key:0},t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}}),ev=g({__name:`SelectSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(V(Q),j({"aria-hidden":`true`},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),[tv,nv]=q(`SelectItem`),rv=g({__name:`SelectItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{disabled:n}=B(t),r=j_(),i=q_(K_),{forwardRef:a,currentElement:o}=X(),c=s(()=>{var e;return(e=r.modelValue)?.value===t.value}),u=R(!1),d=R(t.textValue??``),f=Z(void 0,`radix-vue-select-item-text`);async function p(e){await N(),!(e!=null&&e.defaultPrevented)&&(n.value||(r.onValueChange(t.value),r.onOpenChange(!1)))}async function m(e){var t;await N(),!e.defaultPrevented&&(n.value?(t=i.onItemLeave)==null||t.call(i):e.currentTarget.focus({preventScroll:!0}))}async function h(e){var t;await N(),!e.defaultPrevented&&e.currentTarget===Y()&&((t=i.onItemLeave)==null||t.call(i))}async function g(e){var t;await N(),!(e.defaultPrevented||(t=i.searchRef)?.value!==``&&e.key===` `)&&(L_.includes(e.key)&&p(),e.key===` `&&e.preventDefault())}if(t.value===``)throw Error(`A must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return I(()=>{o.value&&i.itemRefCallback(o.value,t.value,t.disabled)}),nv({value:t.value,disabled:n,textId:f,isSelected:c,onItemTextChange:e=>{d.value=((d.value||e?.textContent)??``).trim()}}),(e,t)=>(L(),l(V(Q),{ref:V(a),role:`option`,"data-radix-vue-collection-item":``,"aria-labelledby":V(f),"data-highlighted":u.value?``:void 0,"aria-selected":c.value,"data-state":c.value?`checked`:`unchecked`,"aria-disabled":V(n)||void 0,"data-disabled":V(n)?``:void 0,tabindex:V(n)?void 0:-1,as:e.as,"as-child":e.asChild,onFocus:t[0]||=e=>u.value=!0,onBlur:t[1]||=e=>u.value=!1,onPointerup:p,onPointerdown:t[2]||=e=>{e.currentTarget.focus({preventScroll:!0})},onTouchend:t[3]||=K(()=>{},[`prevent`,`stop`]),onPointermove:m,onPointerleave:h,onKeydown:g},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`aria-labelledby`,`data-highlighted`,`aria-selected`,`data-state`,`aria-disabled`,`data-disabled`,`tabindex`,`as`,`as-child`]))}}),iv=g({__name:`SelectItemIndicator`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=tv();return(e,r)=>V(n).isSelected.value?(L(),l(V(Q),j({key:0,"aria-hidden":`true`},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)):u(``,!0)}}),[av,ov]=q(`SelectGroup`),sv=g({__name:`SelectGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Z(void 0,`radix-vue-select-group`);return ov({id:n}),(e,r)=>(L(),l(V(Q),j({role:`group`},t,{"aria-labelledby":V(n)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-labelledby`]))}}),cv=g({__name:`SelectLabel`,props:{for:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=av({id:``});return(e,r)=>(L(),l(V(Q),j(t,{id:V(n).id}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),lv=g({inheritAttrs:!1,__name:`SelectItemText`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let r=e,i=j_(),a=q_(K_),o=N_(),c=tv(),{forwardRef:d,currentElement:p}=X(),h=s(()=>{var e;return C(`option`,{key:c.value,value:c.value,disabled:c.disabled.value,textContent:(e=p.value)?.textContent})});return I(()=>{p.value&&(c.onItemTextChange(p.value),a.itemTextRefCallback(p.value,c.value,c.disabled.value),o.onNativeOptionAdd(h.value))}),ne(()=>{o.onNativeOptionRemove(h.value)}),(e,a)=>(L(),f(t,null,[m(V(Q),j({id:V(c).textId,ref:V(d)},{...r,...e.$attrs},{"data-item-text":``}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]),V(c).isSelected.value&&V(i).valueElement.value&&!V(i).valueElementHasChildren.value?(L(),l(n,{key:0,to:V(i).valueElement.value},[z(e.$slots,`default`)],8,[`to`])):u(``,!0)],64))}}),uv=g({__name:`SelectViewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e){let n=e,{nonce:r}=B(n),i=zu(r),a=q_(K_),o=a.position===`item-aligned`?H_():void 0,{forwardRef:s,currentElement:c}=X();I(()=>{a?.onViewportChange(c.value)});let l=R(0);function u(e){let t=e.currentTarget,{shouldExpandOnScrollRef:n,contentWrapper:r}=o??{};if(n!=null&&n.value&&r!=null&&r.value){let e=Math.abs(l.value-t.scrollTop);if(e>0){let n=window.innerHeight-R_*2,i=Number.parseFloat(r.value.style.minHeight),a=Number.parseFloat(r.value.style.height),o=Math.max(i,a);if(o0?s:0,r.value.style.justifyContent=`flex-end`)}}}l.value=t.scrollTop}return(e,r)=>(L(),f(t,null,[m(V(Q),j({ref:V(s),"data-radix-select-viewport":``,role:`presentation`},{...e.$attrs,...n},{style:{position:`relative`,flex:1,overflow:`hidden auto`},onScroll:u}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16),m(V(Q),{as:`style`,nonce:V(i)},{default:W(()=>[p(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-radix-select-viewport]::-webkit-scrollbar { display: none; } `)]),_:1},8,[`nonce`])],64))}}),dv=g({__name:`SelectScrollButtonImpl`,emits:[`autoScroll`],setup(e,{emit:t}){let n=t,{injectCollection:r}=os(),i=r(),a=q_(K_),o=R(null);function s(){o.value!==null&&(window.clearInterval(o.value),o.value=null)}U(()=>{let e=i.value.find(e=>e===Y());e?.scrollIntoView({block:`nearest`})});function c(){o.value===null&&(o.value=window.setInterval(()=>{n(`autoScroll`)},50))}function u(){var e;(e=a.onItemLeave)==null||e.call(a),o.value===null&&(o.value=window.setInterval(()=>{n(`autoScroll`)},50))}return ne(()=>s()),(e,t)=>{var n;return L(),l(V(Q),j({"aria-hidden":`true`,style:{flexShrink:0}},(n=e.$parent)?.$props,{onPointerdown:c,onPointermove:u,onPointerleave:t[0]||=()=>{s()}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)}}}),fv=g({__name:`SelectScrollUpButton`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=q_(K_),n=t.position===`item-aligned`?H_():void 0,{forwardRef:r,currentElement:i}=X(),a=R(!1);return U(e=>{var n,r;if((n=t.viewport)!=null&&n.value&&(r=t.isPositioned)!=null&&r.value){let n=function(){a.value=r.scrollTop>0},r=t.viewport.value;n(),r.addEventListener(`scroll`,n),e(()=>r.removeEventListener(`scroll`,n))}}),H(i,()=>{i.value&&n?.onScrollButtonChange(i.value)}),(e,n)=>a.value?(L(),l(dv,{key:0,ref:V(r),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=V(t);e!=null&&e.value&&n!=null&&n.value&&(e.value.scrollTop=e.value.scrollTop-n.value.offsetHeight)}},{default:W(()=>[z(e.$slots,`default`)]),_:3},512)):u(``,!0)}}),pv=g({__name:`SelectScrollDownButton`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=q_(K_),n=t.position===`item-aligned`?H_():void 0,{forwardRef:r,currentElement:i}=X(),a=R(!1);return U(e=>{var n,r;if((n=t.viewport)!=null&&n.value&&(r=t.isPositioned)!=null&&r.value){let n=function(){let e=r.scrollHeight-r.clientHeight;a.value=Math.ceil(r.scrollTop)r.removeEventListener(`scroll`,n))}}),H(i,()=>{i.value&&n?.onScrollButtonChange(i.value)}),(e,n)=>a.value?(L(),l(dv,{key:0,ref:V(r),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=V(t);e!=null&&e.value&&n!=null&&n.value&&(e.value.scrollTop=e.value.scrollTop+n.value.offsetHeight)}},{default:W(()=>[z(e.$slots,`default`)]),_:3},512)):u(``,!0)}}),mv=g({__name:`SelectValue`,props:{placeholder:{default:``},asChild:{type:Boolean},as:{default:`span`}},setup(e){let{forwardRef:n,currentElement:r}=X(),i=j_(),a=Te();return te(()=>{var e;let t=!!Bo((e=a?.default)?.call(a)).length;i.onValueElementHasChildrenChange(t)}),I(()=>{i.valueElement=r}),(e,r)=>(L(),l(V(Q),{ref:V(n),as:e.as,"as-child":e.asChild,style:{pointerEvents:`none`}},{default:W(()=>{var n;return[V(z_)((n=V(i).modelValue)?.value)?(L(),f(t,{key:0},[p(ve(e.placeholder),1)],64)):z(e.$slots,`default`,{key:1})]}),_:3},8,[`as`,`as-child`]))}}),hv=g({__name:`SelectIcon`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){return(e,t)=>(L(),l(V(Q),{"aria-hidden":`true`,as:e.as,"as-child":e.asChild},{default:W(()=>[z(e.$slots,`default`,{},()=>[p(`▼`)])]),_:3},8,[`as`,`as-child`]))}}),gv=g({__name:`BaseSeparator`,props:{orientation:{default:`horizontal`},decorative:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=[`horizontal`,`vertical`];function r(e){return n.includes(e)}let i=s(()=>r(t.orientation)?t.orientation:`horizontal`),a=s(()=>i.value===`vertical`?t.orientation:void 0),o=s(()=>t.decorative?{role:`none`}:{"aria-orientation":a.value,role:`separator`});return(e,t)=>(L(),l(V(Q),j({as:e.as,"as-child":e.asChild,"data-orientation":i.value},o.value),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-orientation`]))}}),_v=g({__name:`Separator`,props:{orientation:{default:`horizontal`},decorative:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(L(),l(gv,P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}});function vv(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}function yv(e,t,n){let r=100/(n-t)*(e-t);return Ca(r,0,100)}function bv(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?[`Minimum`,`Maximum`][e]:void 0}function xv(e,t){if(e.length===1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}function Sv(e,t,n){let r=e/2,i=Tv([0,50],[0,r]);return(r-i(t)*n)*n}function Cv(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function wv(e,t){if(t>0){let n=Cv(e);return Math.min(...n)>=t}return!0}function Tv(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function Ev(e){return(String(e).split(`.`)[1]||``).length}function Dv(e,t){let n=10**t;return Math.round(e*n)/n}const Ov=[`PageUp`,`PageDown`],kv=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],Av={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageDown`,`ArrowUp`,`ArrowLeft`]},[jv,Mv]=q([`SliderVertical`,`SliderHorizontal`]),Nv=g({__name:`SliderImpl`,props:{asChild:{type:Boolean},as:{default:`span`}},emits:[`slideStart`,`slideMove`,`slideEnd`,`homeKeyDown`,`endKeyDown`,`stepKeyDown`],setup(e,{emit:t}){let n=e,r=t,i=Lv();return(e,t)=>(L(),l(V(Q),j({"data-slider-impl":``},n,{onKeydown:t[0]||=e=>{e.key===`Home`?(r(`homeKeyDown`,e),e.preventDefault()):e.key===`End`?(r(`endKeyDown`,e),e.preventDefault()):V(Ov).concat(V(kv)).includes(e.key)&&(r(`stepKeyDown`,e),e.preventDefault())},onPointerdown:t[1]||=e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),V(i).thumbElements.value.includes(t)?t.focus():r(`slideStart`,e)},onPointermove:t[2]||=e=>{e.target.hasPointerCapture(e.pointerId)&&r(`slideMove`,e)},onPointerup:t[3]||=e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),r(`slideEnd`,e))}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Pv=g({__name:`SliderHorizontal`,props:{dir:{},min:{},max:{},inverted:{type:Boolean}},emits:[`slideEnd`,`slideStart`,`slideMove`,`homeKeyDown`,`endKeyDown`,`stepKeyDown`],setup(e,{emit:t}){let n=e,r=t,{max:i,min:a,dir:o,inverted:c}=B(n),{forwardRef:u,currentElement:d}=X(),f=R(),p=s(()=>o?.value===`ltr`&&!c.value||o?.value!==`ltr`&&c.value);function m(e){let t=f.value||d.value.getBoundingClientRect(),n=[0,t.width],r=p.value?[a.value,i.value]:[i.value,a.value],o=Tv(n,r);return f.value=t,o(e-t.left)}return Mv({startEdge:p.value?`left`:`right`,endEdge:p.value?`right`:`left`,direction:p.value?1:-1,size:`width`}),(e,t)=>(L(),l(Nv,{ref:V(u),dir:V(o),"data-orientation":`horizontal`,style:{"--radix-slider-thumb-transform":`translateX(-50%)`},onSlideStart:t[0]||=e=>{let t=m(e.clientX);r(`slideStart`,t)},onSlideMove:t[1]||=e=>{let t=m(e.clientX);r(`slideMove`,t)},onSlideEnd:t[2]||=()=>{f.value=void 0,r(`slideEnd`)},onStepKeyDown:t[3]||=e=>{let t=p.value?`from-left`:`from-right`,n=V(Av)[t].includes(e.key);r(`stepKeyDown`,e,n?-1:1)},onEndKeyDown:t[4]||=e=>r(`endKeyDown`,e),onHomeKeyDown:t[5]||=e=>r(`homeKeyDown`,e)},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`dir`]))}}),Fv=g({__name:`SliderVertical`,props:{min:{},max:{},inverted:{type:Boolean}},emits:[`slideEnd`,`slideStart`,`slideMove`,`homeKeyDown`,`endKeyDown`,`stepKeyDown`],setup(e,{emit:t}){let n=e,r=t,{max:i,min:a,inverted:o}=B(n),{forwardRef:c,currentElement:u}=X(),d=R(),f=s(()=>!o.value);function p(e){let t=d.value||u.value.getBoundingClientRect(),n=[0,t.height],r=f.value?[i.value,a.value]:[a.value,i.value],o=Tv(n,r);return d.value=t,o(e-t.top)}return Mv({startEdge:f.value?`bottom`:`top`,endEdge:f.value?`top`:`bottom`,size:`height`,direction:f.value?1:-1}),(e,t)=>(L(),l(Nv,{ref:V(c),"data-orientation":`vertical`,style:{"--radix-slider-thumb-transform":`translateY(50%)`},onSlideStart:t[0]||=e=>{let t=p(e.clientY);r(`slideStart`,t)},onSlideMove:t[1]||=e=>{let t=p(e.clientY);r(`slideMove`,t)},onSlideEnd:t[2]||=()=>{d.value=void 0,r(`slideEnd`)},onStepKeyDown:t[3]||=e=>{let t=f.value?`from-bottom`:`from-top`,n=V(Av)[t].includes(e.key);r(`stepKeyDown`,e,n?-1:1)},onEndKeyDown:t[4]||=e=>r(`endKeyDown`,e),onHomeKeyDown:t[5]||=e=>r(`homeKeyDown`,e)},{default:W(()=>[z(e.$slots,`default`)]),_:3},512))}}),Iv=[`value`,`name`,`disabled`,`step`],[Lv,Rv]=q(`SliderRoot`),zv=g({inheritAttrs:!1,__name:`SliderRoot`,props:{name:{},defaultValue:{default:()=>[0]},modelValue:{},disabled:{type:Boolean,default:!1},orientation:{default:`horizontal`},dir:{},inverted:{type:Boolean,default:!1},min:{default:0},max:{default:100},step:{default:1},minStepsBetweenThumbs:{default:0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`valueCommit`],setup(e,{emit:n}){let r=e,i=n,{min:a,max:o,step:s,minStepsBetweenThumbs:c,orientation:d,disabled:p,dir:h}=B(r),g=cs(h),{forwardRef:_,currentElement:v}=X(),y=ps(v);yu();let b=J(r,`modelValue`,i,{defaultValue:r.defaultValue,passive:r.modelValue===void 0}),x=R(0),S=R(b.value);function C(e){let t=xv(b.value,e);E(e,t)}function w(e){E(e,x.value)}function T(){let e=S.value[x.value];b.value[x.value]!==e&&i(`valueCommit`,xe(b.value))}function E(e,t,{commit:n}={commit:!1}){var r;let l=Ev(s.value),u=Dv(Math.round((e-a.value)/s.value)*s.value+a.value,l),d=Ca(u,a.value,o.value),f=vv(b.value,d,t);if(wv(f,c.value*s.value)){x.value=f.indexOf(d);let e=String(f)!==String(b.value);e&&n&&i(`valueCommit`,f),e&&((r=D.value[x.value])==null||r.focus(),b.value=f)}}let D=R([]);return Rv({modelValue:b,valueIndexToChangeRef:x,thumbElements:D,orientation:d,min:a,max:o,disabled:p}),(e,n)=>(L(),f(t,null,[m(V(bu),null,{default:W(()=>[(L(),l(fe(V(d)===`horizontal`?Pv:Fv),j(e.$attrs,{ref:V(_),"as-child":e.asChild,as:e.as,min:V(a),max:V(o),dir:V(g),inverted:e.inverted,"aria-disabled":V(p),"data-disabled":V(p)?``:void 0,onPointerdown:n[0]||=()=>{V(p)||(S.value=V(b))},onSlideStart:n[1]||=e=>!V(p)&&C(e),onSlideMove:n[2]||=e=>!V(p)&&w(e),onSlideEnd:n[3]||=e=>!V(p)&&T(),onHomeKeyDown:n[4]||=e=>!V(p)&&E(V(a),0,{commit:!0}),onEndKeyDown:n[5]||=e=>!V(p)&&E(V(o),V(b).length-1,{commit:!0}),onStepKeyDown:n[6]||=(e,t)=>{if(!V(p)){let n=V(Ov).includes(e.key)||e.shiftKey&&V(kv).includes(e.key)?10:1,r=x.value,i=V(b)[r],a=V(s)*n*t;E(i+a,r,{commit:!0})}}}),{default:W(()=>[z(e.$slots,`default`,{modelValue:V(b)})]),_:3},16,[`as-child`,`as`,`min`,`max`,`dir`,`inverted`,`aria-disabled`,`data-disabled`]))]),_:3}),V(y)?(L(!0),f(t,{key:0},de(V(b),(t,n)=>(L(),f(`input`,{key:n,value:t,type:`number`,style:{display:`none`},name:e.name?e.name+(V(b).length>1?`[]`:``):void 0,disabled:V(p),step:V(s)},null,8,Iv))),128)):u(``,!0)],64))}}),Bv=g({inheritAttrs:!1,__name:`SliderThumbImpl`,props:{index:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Lv(),r=jv(),{forwardRef:i,currentElement:a}=X(),o=s(()=>{var e,r;return(r=(e=n.modelValue)?.value)?.[t.index]}),c=s(()=>o.value===void 0?0:yv(o.value,n.min.value??0,n.max.value??100)),u=s(()=>{var e,r;return bv(t.index,(r=(e=n.modelValue)?.value)?.length??0)}),d=Fs(a),f=s(()=>d[r.size].value),p=s(()=>f.value?Sv(f.value,c.value,r.direction):0),h=Ao();return I(()=>{n.thumbElements.value.push(a.value)}),ae(()=>{let e=n.thumbElements.value.findIndex(e=>e===a.value)??-1;n.thumbElements.value.splice(e,1)}),(e,t)=>(L(),l(V(xu),null,{default:W(()=>[m(V(Q),j(e.$attrs,{ref:V(i),role:`slider`,"data-radix-vue-collection-item":``,tabindex:V(n).disabled.value?void 0:0,"aria-label":e.$attrs[`aria-label`]||u.value,"data-disabled":V(n).disabled.value?``:void 0,"data-orientation":V(n).orientation.value,"aria-valuenow":o.value,"aria-valuemin":V(n).min.value,"aria-valuemax":V(n).max.value,"aria-orientation":V(n).orientation.value,"as-child":e.asChild,as:e.as,style:{transform:`var(--radix-slider-thumb-transform)`,position:`absolute`,[V(r).startEdge]:`calc(${c.value}% + ${p.value}px)`,display:!V(h)&&o.value===void 0?`none`:void 0},onFocus:t[0]||=()=>{V(n).valueIndexToChangeRef.value=e.index}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`tabindex`,`aria-label`,`data-disabled`,`data-orientation`,`aria-valuenow`,`aria-valuemin`,`aria-valuemax`,`aria-orientation`,`as-child`,`as`,`style`])]),_:3}))}}),Vv=g({__name:`SliderThumb`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{getItems:n}=Su(),{forwardRef:r,currentElement:i}=X(),a=s(()=>i.value?n().findIndex(e=>e.ref===i.value):-1);return(e,n)=>(L(),l(Bv,j({ref:V(r)},t,{index:a.value}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`index`]))}}),Hv=g({__name:`SliderTrack`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=Lv();return X(),(e,n)=>(L(),l(V(Q),{"as-child":e.asChild,as:e.as,"data-disabled":V(t).disabled.value?``:void 0,"data-orientation":V(t).orientation.value},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`data-disabled`,`data-orientation`]))}}),Uv=g({__name:`SliderRange`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=Lv(),n=jv();X();let r=s(()=>{var e,n;return(n=(e=t.modelValue)?.value)?.map(e=>yv(e,t.min.value,t.max.value))}),i=s(()=>t.modelValue.value.length>1?Math.min(...r.value):0),a=s(()=>100-Math.max(...r.value));return(e,r)=>(L(),l(V(Q),{"data-disabled":V(t).disabled.value?``:void 0,"data-orientation":V(t).orientation.value,"as-child":e.asChild,as:e.as,style:F({[V(n).startEdge]:`${i.value}%`,[V(n).endEdge]:`${a.value}%`})},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`data-disabled`,`data-orientation`,`as-child`,`as`,`style`]))}});let Wv=null,Gv=null;function Kv(e,t){if(t){let e=(t&uy)!==0,n=(t&dy)!==0,r=(t&fy)!==0,i=(t&py)!==0;if(e)return r?`se-resize`:i?`ne-resize`:`e-resize`;if(n)return r?`sw-resize`:i?`nw-resize`:`w-resize`;if(r)return`s-resize`;if(i)return`n-resize`}switch(e){case`horizontal`:return`ew-resize`;case`intersection`:return`move`;case`vertical`:return`ns-resize`}}function qv(){Gv!==null&&(document.head.removeChild(Gv),Wv=null,Gv=null)}function Jv(e,t){let n=Kv(e,t);Wv!==n&&(Wv=n,Gv===null&&(Gv=document.createElement(`style`),document.head.appendChild(Gv)),Gv.innerHTML=`*{cursor: ${n}!important;}`)}function Yv({defaultSize:e,dragState:t,layout:n,panelData:r,panelIndex:i,precision:a=3}){let o=n[i],s;return s=o==null?e===void 0?`1`:e.toPrecision(a):r.length===1?`1`:o.toPrecision(a),{flexBasis:0,flexGrow:s,flexShrink:1,overflow:`hidden`,pointerEvents:t===null?void 0:`none`}}function Xv(e){return e.type===`keydown`}function Zv(e){return e.type.startsWith(`mouse`)}function Qv(e){return e.type.startsWith(`touch`)}function $v(e){if(Zv(e))return{x:e.clientX,y:e.clientY};if(Qv(e)){let t=e.touches[0];if(t&&t.clientX&&t.clientY)return{x:t.clientX,y:t.clientY}}return{x:1/0,y:1/0}}function ey(e,t){let n=e===`horizontal`,{x:r,y:i}=$v(t);return n?r:i}function ty(e,t,n){return e.xt.x&&e.yt.y}function $(e,t=`Assertion failed!`){if(!e)throw console.error(t),Error(t)}function ny(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:cy(e),b:cy(t)},r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;$(r);let i={a:sy(oy(n.a)),b:sy(oy(n.b))};if(i.a===i.b){let e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)},i=e.length;for(;i--;){let n=e[i];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(i.a-i.b)}const ry=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function iy(e){let t=getComputedStyle(ly(e)).display;return t===`flex`||t===`inline-flex`}function ay(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||iy(e))||+t.opacity<1||`transform`in t&&t.transform!==`none`||`webkitTransform`in t&&t.webkitTransform!==`none`||`mixBlendMode`in t&&t.mixBlendMode!==`normal`||`filter`in t&&t.filter!==`none`||`webkitFilter`in t&&t.webkitFilter!==`none`||`isolation`in t&&t.isolation===`isolate`||ry.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function oy(e){let t=e.length;for(;t--;){let n=e[t];if($(n),ay(n))return n}return null}function sy(e){return e&&Number(getComputedStyle(e).zIndex)||0}function cy(e){let t=[];for(;e;)t.push(e),e=ly(e);return t}function ly(e){var t;return e.parentNode instanceof DocumentFragment&&(t=e.parentNode)?.host||e.parentNode}const uy=1,dy=2,fy=4,py=8;function my(){if(typeof matchMedia==`function`)return matchMedia(`(pointer:coarse)`).matches?`coarse`:`fine`}const hy=my()===`coarse`,gy=[];let _y=!1;const vy=new Map,yy=new Map,by=new Set;function xy(e,t,n,r,i){let{ownerDocument:a}=t,o={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:i},s=vy.get(a)??0;return vy.set(a,s+1),by.add(o),Oy(),function(){yy.delete(e),by.delete(o);let t=vy.get(a)??1;vy.set(a,t-1),Oy(),qv(),t===1&&vy.delete(a)}}function Sy(e){let{target:t}=e,{x:n,y:r}=$v(e);_y=!0,Ty({target:t,x:n,y:r}),Oy(),gy.length>0&&(ky(`down`,e),e.preventDefault())}function Cy(e){let{x:t,y:n}=$v(e);if(!_y){let{target:r}=e;Ty({target:r,x:t,y:n})}ky(`move`,e),Dy(),gy.length>0&&e.preventDefault()}function wy(e){let{target:t}=e,{x:n,y:r}=$v(e);yy.clear(),_y=!1,gy.length>0&&e.preventDefault(),ky(`up`,e),Ty({target:t,x:n,y:r}),Dy(),Oy()}function Ty({target:e,x:t,y:n}){gy.splice(0);let r=null;e instanceof HTMLElement&&(r=e),by.forEach(e=>{let{element:i,hitAreaMargins:a}=e,o=i.getBoundingClientRect(),{bottom:s,left:c,right:l,top:u}=o,d=hy?a.coarse:a.fine;if(t>=c-d&&t<=l+d&&n>=u-d&&n<=s+d){if(r!==null&&i!==r&&!i.contains(r)&&!r.contains(i)&&ny(r,i)>0){let e=r,t=!1;for(;e&&!e.contains(i);){if(ty(e.getBoundingClientRect(),o)){t=!0;break}e=e.parentElement}if(t)return}gy.push(e)}})}function Ey(e,t){yy.set(e,t)}function Dy(){let e=!1,t=!1;gy.forEach(n=>{let{direction:r}=n;r.value===`horizontal`?e=!0:t=!0});let n=0;yy.forEach(e=>{n|=e}),e&&t?Jv(`intersection`,n):e?Jv(`horizontal`,n):t?Jv(`vertical`,n):qv()}function Oy(){vy.forEach((e,t)=>{let{body:n}=t;n.removeEventListener(`contextmenu`,wy),n.removeEventListener(`mousedown`,Sy),n.removeEventListener(`mouseleave`,Cy),n.removeEventListener(`mousemove`,Cy),n.removeEventListener(`touchmove`,Cy),n.removeEventListener(`touchstart`,Sy)}),window.removeEventListener(`mouseup`,wy),window.removeEventListener(`touchcancel`,wy),window.removeEventListener(`touchend`,wy),by.size>0&&(_y?(gy.length>0&&vy.forEach((e,t)=>{let{body:n}=t;e>0&&(n.addEventListener(`contextmenu`,wy),n.addEventListener(`mouseleave`,Cy),n.addEventListener(`mousemove`,Cy),n.addEventListener(`touchmove`,Cy,{passive:!1}))}),window.addEventListener(`mouseup`,wy),window.addEventListener(`touchcancel`,wy),window.addEventListener(`touchend`,wy)):vy.forEach((e,t)=>{let{body:n}=t;e>0&&(n.addEventListener(`mousedown`,Sy),n.addEventListener(`mousemove`,Cy),n.addEventListener(`touchmove`,Cy,{passive:!1}),n.addEventListener(`touchstart`,Sy))}))}function ky(e,t){by.forEach(n=>{let{setResizeHandlerState:r}=n,i=gy.includes(n);r(e,i,t)})}const Ay=10;function jy(e,t,n=Ay){e=Number.parseFloat(e.toFixed(n)),t=Number.parseFloat(t.toFixed(n));let r=e-t;return r===0?0:r>0?1:-1}function My(e,t,n){return jy(e,t,n)===0}function Ny({panelConstraints:e,panelIndex:t,size:n}){let r=e[t];$(r!=null);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:s=0}=r;if(jy(n,s)<0)if(a){let e=(i+s)/2;n=jy(n,e)<0?i:s}else n=s;return n=Math.min(o,n),n=Number.parseFloat(n.toFixed(Ay)),n}function Py(e,t){if(e.length!==t.length)return!1;for(let n=0;n0&&(e=e<0?0-t:t)}}}{let r=e<0?o:s,i=n[r];$(i);let{collapsible:a}=i;if(a){let i=t[r];$(i!=null);let a=n[r];$(a);let{collapsedSize:o=0,minSize:s=0}=a;if(My(i,s)){let t=i-o;jy(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{let r=e<0?1:-1,i=e<0?s:o,a=0;for(;;){let e=t[i];$(e!=null);let o=Ny({panelConstraints:n,panelIndex:i,size:100})-e;if(a+=o,i+=r,i<0||i>=n.length)break}let c=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-c:c}{let r=e<0?o:s;for(;r>=0&&r=0))break;e<0?r--:r++}}if(My(c,0))return t;{let r=e<0?s:o,i=t[r];$(i!=null);let l=i+c,u=Ny({panelConstraints:n,panelIndex:r,size:l});if(a[r]=u,!My(u,l)){let t=l-u,r=e<0?s:o;for(;r>=0&&r0?r--:r++}}}let l=a.reduce((e,t)=>t+e,0);return My(l,100)?a:t}function Iy(e,t=document){var n;if(!ja)return null;if(t instanceof HTMLElement&&(n=t?.dataset)?.panelGroupId===e)return t;let r=t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`);return r||null}function Ly(e,t=document){if(!ja)return null;let n=t.querySelector(`[data-panel-resize-handle-id="${e}"]`);return n||null}function Ry(e,t,n=document){return ja?zy(e,n).findIndex(e=>e.getAttribute(`data-panel-resize-handle-id`)===t)??null:null}function zy(e,t=document){return ja?Array.from(t.querySelectorAll(`[data-panel-resize-handle-id][data-panel-group-id="${e}"]`)):[]}function By(e,t,n,r=document){var i,a;let o=Ly(t,r),s=zy(e,r),c=o?s.indexOf(o):-1,l=(i=n[c])?.id??null,u=(a=n[c+1])?.id??null;return[l,u]}function Vy(e,t,n,r,i){let a=n===`horizontal`,o=Ly(t,i);$(o);let s=o.getAttribute(`data-panel-group-id`);$(s);let{initialCursorPosition:c}=r,l=ey(n,e),u=Iy(s,i);$(u);let d=u.getBoundingClientRect(),f=a?d.width:d.height;return(l-c)/f*100}function Hy(e,t,n,r,i,a){if(Xv(e)){let t=n===`horizontal`,r=0;r=e.shiftKey?100:i??10;let a=0;switch(e.key){case`ArrowDown`:a=t?0:r;break;case`ArrowLeft`:a=t?-r:0;break;case`ArrowRight`:a=t?r:0;break;case`ArrowUp`:a=t?0:-r;break;case`End`:a=100;break;case`Home`:a=-100;break}return a}else return r==null?0:Vy(e,t,n,r,a)}function Uy({layout:e,panelsArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];$(s!=null),t.forEach((e,t)=>{let{constraints:n}=e,{maxSize:c=100,minSize:l=0}=n;t===s?(r=l,i=c):(a+=l,o+=c)});let c=Math.min(i,100-a),l=Math.max(r,100-o),u=e[s];return{valueMax:c,valueMin:l,valueNow:u}}function Wy({panelDataArray:e}){let t=Array(e.length),n=e.map(e=>e.constraints),r=0,i=100;for(let a=0;a{let i=e[r];$(i);let{callbacks:a,constraints:o,id:s}=i,{collapsedSize:c=0,collapsible:l}=o,u=n[s];if(u==null||t!==u){n[s]=t;let{onCollapse:e,onExpand:r,onResize:i}=a;i&&i(t,u),l&&(e||r)&&(r&&(u==null||u===c)&&t!==c&&r(),e&&(u==null||u!==c)&&t===c&&e())}})}function Ky(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function qy(e,t,n){let r=Ry(e,t,n);return r==null?[-1,-1]:[r,r+1]}function Jy({layout:e,panelConstraints:t}){let n=[...e],r=n.reduce((e,t)=>e+t,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${n.map(e=>`${e}%`).join(`, `)}`);if(!My(r,100)){console.warn(`WARNING: Invalid layout total size: ${n.map(e=>`${e}%`).join(`, `)}. Layout normalization will be applied.`);for(let e=0;elocalStorage.getItem(e),e.setItem=(e,t)=>{localStorage.setItem(e,t)};else throw TypeError(`localStorage not supported in this environment`)}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function Xy(e){return`radix-vue:${e}`}function Zy(e){return e.map(e=>{let{constraints:t,id:n,idIsFromProps:r,order:i}=e;return r?n:i?`${i}:${JSON.stringify(t)}`:JSON.stringify(t)}).sort((e,t)=>e.localeCompare(t)).join(`,`)}function Qy(e,t){try{let n=Xy(e),r=t.getItem(n);if(r){let e=JSON.parse(r);if(typeof e==`object`&&e)return e}}catch{}return null}function $y(e,t,n){let r=Qy(e,n)??{},i=Zy(t);return r[i]??null}function eb(e,t,n,r,i){let a=Xy(e),o=Zy(t),s=Qy(e,i)??{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}function tb({eagerValuesRef:e,groupId:t,layout:n,panelDataArray:r,panelGroupElement:i,setLayout:a}){U(e=>{let a=i.value;if(!a)return;let o=zy(t,a);for(let e=0;e{o.forEach(e=>{e.removeAttribute(`aria-controls`),e.removeAttribute(`aria-valuemax`),e.removeAttribute(`aria-valuemin`),e.removeAttribute(`aria-valuenow`)})})}),U(r=>{let o=i.value;if(!o)return;let s=e.value;$(s);let{panelDataArray:c}=s,l=Iy(t,o);$(l!=null,`No group found for id "${t}"`);let u=zy(t,o);$(u);let d=u.map(e=>{let r=e.getAttribute(`data-panel-resize-handle-id`);$(r);let[i,s]=By(t,r,c,o);if(i==null||s==null)return()=>{};let l=e=>{if(!e.defaultPrevented)switch(e.key){case`Enter`:{e.preventDefault();let s=c.findIndex(e=>e.id===i);if(s>=0){let e=c[s];$(e);let i=n.value[s],{collapsedSize:l=0,collapsible:u,minSize:d=0}=e.constraints;if(i!=null&&u){let e=Fy({delta:My(i,l)?d-l:l-i,layout:n.value,panelConstraints:c.map(e=>e.constraints),pivotIndices:qy(t,r,o),trigger:`keyboard`});n.value!==e&&a(e)}}break}}};return e.addEventListener(`keydown`,l),()=>{e.removeEventListener(`keydown`,l)}});r(()=>{d.forEach(e=>e())})})}const nb=100,rb={getItem:e=>(Yy(rb),rb.getItem(e)),setItem:(e,t)=>{Yy(rb),rb.setItem(e,t)}},[ib,ab]=q(`PanelGroup`),ob=g({__name:`SplitterGroup`,props:{id:{},autoSaveId:{default:null},direction:{},keyboardResizeBy:{default:10},storage:{default:()=>rb},asChild:{type:Boolean},as:{}},emits:[`layout`],setup(e,{emit:t}){let n=e,r=t,i={},{direction:a}=B(n),o=Z(n.id,`radix-vue-splitter-group`),c=cs(),{forwardRef:u,currentElement:d}=X(),f=R(null),p=R([]),m=R({}),h=R(new Map),g=R(0),_=s(()=>({autoSaveId:n.autoSaveId,direction:n.direction,dragState:f.value,id:o,keyboardResizeBy:n.keyboardResizeBy,storage:n.storage})),v=R({layout:p.value,panelDataArray:[],panelDataArrayChanged:!1}),y=e=>p.value=e;tb({eagerValuesRef:v,groupId:o,layout:p,panelDataArray:v.value.panelDataArray,setLayout:y,panelGroupElement:d}),U(()=>{let{panelDataArray:e}=v.value,{autoSaveId:t}=n;if(t){if(p.value.length===0||p.value.length!==e.length)return;let r=i[t];r||(r=Ky(eb,nb),i[t]=r);let a=[...e],o=new Map(h.value);r(t,a,o,p.value,n.storage)}});function b(e,t){let{panelDataArray:n}=v.value,r=N(n,e);return Yv({defaultSize:t,dragState:f.value,layout:p.value,panelData:n,panelIndex:r})}function x(e){let{panelDataArray:t}=v.value;t.push(e),t.sort((e,t)=>{let n=e.order,r=t.order;return n==null&&r==null?0:n==null?-1:r==null?1:n-r}),v.value.panelDataArrayChanged=!0}H(()=>v.value.panelDataArrayChanged,()=>{if(v.value.panelDataArrayChanged){v.value.panelDataArrayChanged=!1;let{autoSaveId:e,storage:t}=_.value,{layout:n,panelDataArray:i}=v.value,a=null;if(e){let n=$y(e,i,t);n&&(h.value=new Map(Object.entries(n.expandToSizes)),a=n.layout)}a===null&&(a=Wy({panelDataArray:i}));let o=Jy({layout:a,panelConstraints:i.map(e=>e.constraints)});ka(n,o)||(y(o),v.value.layout=o,r(`layout`,o),Gy(i,o,m.value))}});function S(e){return function(t){t.preventDefault();let n=d.value;if(!n)return()=>null;let{direction:i,dragState:a,id:o,keyboardResizeBy:s}=_.value,{layout:l,panelDataArray:u}=v.value,{initialLayout:f}=a??{},p=qy(o,e,n),h=Hy(t,e,i,a,s,n);if(h===0)return;let b=i===`horizontal`;c.value===`rtl`&&b&&(h=-h);let x=u.map(e=>e.constraints),S=Fy({delta:h,layout:f??l,panelConstraints:x,pivotIndices:p,trigger:Xv(t)?`keyboard`:`mouse-or-touch`}),C=!Py(l,S);(Zv(t)||Qv(t))&&g.value!==h&&(g.value=h,C?Ey(e,0):b?Ey(e,h<0?uy:dy):Ey(e,h<0?fy:py)),C&&(y(S),v.value.layout=S,r(`layout`,S),Gy(u,S,m.value))}}function C(e,t){let{layout:n,panelDataArray:i}=v.value,a=i.map(e=>e.constraints),{panelSize:o,pivotIndices:s}=P(i,e,n);$(o!=null);let c=N(i,e)===i.length-1?o-t:t-o,l=Fy({delta:c,layout:n,panelConstraints:a,pivotIndices:s,trigger:`imperative-api`});Py(n,l)||(y(l),v.value.layout=l,r(`layout`,l),Gy(i,l,m.value))}function w(e,t){let{layout:n,panelDataArray:r}=v.value,i=N(r,e);r[i]=e,v.value.panelDataArrayChanged=!0;let{collapsedSize:a=0,collapsible:o}=t,{collapsedSize:s=0,collapsible:c,maxSize:l=100,minSize:u=0}=e.constraints,{panelSize:d}=P(r,e,n);d!==null&&(o&&c&&d===a?a!==s&&C(e,s):dl&&C(e,l))}function T(e,t){let{direction:n}=_.value,{layout:r}=v.value;if(!d.value)return;let i=Ly(e,d.value);$(i);let a=ey(n,t);f.value={dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r}}function E(){f.value=null}function D(e){let{panelDataArray:t}=v.value,n=N(t,e);n>=0&&(t.splice(n,1),delete m.value[e.id],v.value.panelDataArrayChanged=!0)}function O(e){let{layout:t,panelDataArray:n}=v.value;if(e.constraints.collapsible){let i=n.map(e=>e.constraints),{collapsedSize:a=0,panelSize:o,pivotIndices:s}=P(n,e,t);if($(o!=null,`Panel size not found for panel "${e.id}"`),o!==a){h.value.set(e.id,o);let c=N(n,e)===n.length-1?o-a:a-o,l=Fy({delta:c,layout:t,panelConstraints:i,pivotIndices:s,trigger:`imperative-api`});Py(t,l)||(y(l),v.value.layout=l,r(`layout`,l),Gy(n,l,m.value))}}}function k(e){let{layout:t,panelDataArray:n}=v.value;if(e.constraints.collapsible){let i=n.map(e=>e.constraints),{collapsedSize:a=0,panelSize:o,minSize:s=0,pivotIndices:c}=P(n,e,t);if(o===a){let a=h.value.get(e.id),l=a!=null&&a>=s?a:s,u=N(n,e)===n.length-1?o-l:l-o,d=Fy({delta:u,layout:t,panelConstraints:i,pivotIndices:c,trigger:`imperative-api`});Py(t,d)||(y(d),v.value.layout=d,r(`layout`,d),Gy(n,d,m.value))}}}function A(e){let{layout:t,panelDataArray:n}=v.value,{panelSize:r}=P(n,e,t);return $(r!=null,`Panel size not found for panel "${e.id}"`),r}function j(e){let{layout:t,panelDataArray:n}=v.value,{collapsedSize:r=0,collapsible:i,panelSize:a}=P(n,e,t);return i?a===void 0?e.constraints.defaultSize===e.constraints.collapsedSize:a===r:!1}function M(e){let{layout:t,panelDataArray:n}=v.value,{collapsedSize:r=0,collapsible:i,panelSize:a}=P(n,e,t);return $(a!=null,`Panel size not found for panel "${e.id}"`),!i||a>r}ab({direction:a,dragState:f.value,groupId:o,reevaluatePanelConstraints:w,registerPanel:x,registerResizeHandle:S,resizePanel:C,startDragging:T,stopDragging:E,unregisterPanel:D,panelGroupElement:d,collapsePanel:O,expandPanel:k,isPanelCollapsed:j,isPanelExpanded:M,getPanelSize:A,getPanelStyle:b});function N(e,t){return e.findIndex(e=>e===t||e.id===t.id)}function P(e,t,n){let r=N(e,t),i=r===e.length-1?[r-1,r]:[r,r+1],a=n[r];return{...t.constraints,panelSize:a,pivotIndices:i}}return(e,t)=>(L(),l(V(Q),{ref:V(u),as:e.as,"as-child":e.asChild,style:F({display:`flex`,flexDirection:V(a)===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`}),"data-panel-group":``,"data-orientation":V(a),"data-panel-group-id":V(o)},{default:W(()=>[z(e.$slots,`default`,{layout:p.value})]),_:3},8,[`as`,`as-child`,`style`,`data-orientation`,`data-panel-group-id`]))}}),sb=g({__name:`SplitterPanel`,props:{collapsedSize:{},collapsible:{type:Boolean},defaultSize:{},id:{},maxSize:{},minSize:{},order:{},asChild:{type:Boolean},as:{}},emits:[`collapse`,`expand`,`resize`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=ib();if(a===null)throw Error(`SplitterPanel components must be rendered within a SplitterGroup container`);let{collapsePanel:o,expandPanel:c,getPanelSize:u,getPanelStyle:d,isPanelCollapsed:f,resizePanel:p,groupId:m,reevaluatePanelConstraints:h,registerPanel:g,unregisterPanel:_}=a,v=Z(r.id,`radix-vue-splitter-panel`),y=s(()=>({callbacks:{onCollapse:()=>i(`collapse`),onExpand:()=>i(`expand`),onResize:(...e)=>i(`resize`,...e)},constraints:{collapsedSize:r.collapsedSize&&Number.parseFloat(r.collapsedSize.toFixed(Ay)),collapsible:r.collapsible,defaultSize:r.defaultSize,maxSize:r.maxSize,minSize:r.minSize},id:v,idIsFromProps:r.id!==void 0,order:r.order}));H(()=>y.value.constraints,(e,t)=>{(t.collapsedSize!==e.collapsedSize||t.collapsible!==e.collapsible||t.maxSize!==e.maxSize||t.minSize!==e.minSize)&&h(y.value,t)},{deep:!0}),I(()=>{let e=y.value;g(e),ae(()=>{_(e)})});let b=s(()=>d(y.value,r.defaultSize)),x=s(()=>f(y.value)),S=s(()=>!x.value);return t({collapse:()=>{o(y.value)},expand:()=>{c(y.value)},getSize(){return u(y.value)},resize:e=>{p(y.value,e)},isCollapsed:x,isExpanded:S}),(e,t)=>(L(),l(V(Q),{id:V(v),style:F(b.value),as:e.as,"as-child":e.asChild,"data-panel":``,"data-panel-collapsible":e.collapsible||void 0,"data-panel-group-id":V(m),"data-panel-id":V(v),"data-panel-size":Number.parseFloat(`${b.value.flexGrow}`).toFixed(1),"data-state":e.collapsible?x.value?`collapsed`:`expanded`:void 0},{default:W(()=>[z(e.$slots,`default`,{isCollapsed:x.value,isExpanded:S.value})]),_:3},8,[`id`,`style`,`as`,`as-child`,`data-panel-collapsible`,`data-panel-group-id`,`data-panel-id`,`data-panel-size`,`data-state`]))}});function cb({disabled:e,handleId:t,resizeHandler:n,panelGroupElement:r}){U(i=>{let a=r.value;if(e.value||n.value===null||a===null)return;let o=Ly(t,a);if(o==null)return;let s=e=>{var r;if(!e.defaultPrevented)switch(e.key){case`ArrowDown`:case`ArrowLeft`:case`ArrowRight`:case`ArrowUp`:case`End`:case`Home`:e.preventDefault(),(r=n.value)==null||r.call(n,e);break;case`F6`:{e.preventDefault();let n=o.getAttribute(`data-panel-group-id`);$(n);let r=zy(n,a),i=Ry(n,t,a);$(i!==null);let s=e.shiftKey?i>0?i-1:r.length-1:i+1{o.removeEventListener(`keydown`,s)})})}const lb=g({__name:`SplitterResizeHandle`,props:{id:{},hitAreaMargins:{},tabindex:{default:0},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`dragging`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),{disabled:o}=B(n),s=ib();if(s===null)throw Error(`PanelResizeHandle components must be rendered within a PanelGroup container`);let{direction:c,groupId:u,registerResizeHandle:d,startDragging:f,stopDragging:p,panelGroupElement:m}=s,h=Z(n.id,`radix-vue-splitter-resize-handle`),g=R(`inactive`),_=R(!1),v=R(null);return H(o,()=>{ja&&(o.value?v.value=null:v.value=d(h))},{immediate:!0}),U(e=>{var t,i;if(o.value||v.value===null)return;let s=a.value;if(!s)return;$(s);let l=(e,t,n)=>{var i;if(t)switch(e){case`down`:g.value=`drag`,f(h,n),r(`dragging`,!0);break;case`move`:g.value!==`drag`&&(g.value=`hover`),(i=v.value)==null||i.call(v,n);break;case`up`:g.value=`hover`,p(),r(`dragging`,!1);break}else g.value=`inactive`};e(xy(h,s,c,{coarse:(t=n.hitAreaMargins)?.coarse??15,fine:(i=n.hitAreaMargins)?.fine??5},l))}),cb({disabled:o,resizeHandler:v,handleId:h,panelGroupElement:m}),(e,t)=>(L(),l(V(Q),{id:V(h),ref:V(i),style:{touchAction:`none`,userSelect:`none`},as:e.as,"as-child":e.asChild,role:`separator`,"data-resize-handle":``,tabindex:e.tabindex,"data-state":g.value,"data-disabled":V(o)?``:void 0,"data-orientation":V(c),"data-panel-group-id":V(u),"data-resize-handle-active":g.value===`drag`?`pointer`:_.value?`keyboard`:void 0,"data-resize-handle-state":g.value,"data-panel-resize-handle-enabled":!V(o),"data-panel-resize-handle-id":V(h),onBlur:t[0]||=e=>_.value=!1,onFocus:t[1]||=e=>_.value=!1},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`as`,`as-child`,`tabindex`,`data-state`,`data-disabled`,`data-orientation`,`data-panel-group-id`,`data-resize-handle-active`,`data-resize-handle-state`,`data-panel-resize-handle-enabled`,`data-panel-resize-handle-id`]))}}),ub={"aria-live":`polite`,"aria-atomic":`true`,role:`status`,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},[db,fb]=q(`StepperRoot`),pb=g({__name:`StepperRoot`,props:{defaultValue:{default:1},orientation:{default:`horizontal`},dir:{},modelValue:{},linear:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{dir:i,orientation:a,linear:o}=B(n),u=cs(i);X();let d=R(new Set),f=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),p=s(()=>Array.from(d.value)),m=s(()=>f.value===1),h=s(()=>f.value===p.value.length),g=s(()=>d.value.size);function _(e){e>g.value||e<1||d.value.size&&p.value[e]&&p.value[e].getAttribute(`disabled`)||o.value&&e>(f.value??1)+1||(f.value=e)}let v=R(null),y=R(null),b=s(()=>v.value?v.value.getAttribute(`disabled`)===``:!0),x=s(()=>y.value?y.value.getAttribute(`disabled`)===``:!0);return H(f,async()=>{await N(()=>{v.value=p.value.length&&f.value1?p.value[f.value-2]:null})}),H(p,async()=>{await N(()=>{v.value=p.value.length&&f.value1?p.value[f.value-2]:null})}),fb({modelValue:f,changeModelValue:e=>{f.value=e},orientation:a,dir:u,linear:o,totalStepperItems:d}),(e,t)=>(L(),l(V(Q),{role:`group`,"aria-label":`progress`,as:e.as,"as-child":e.asChild,"data-linear":V(o)?``:void 0,"data-orientation":e.orientation},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(f),totalSteps:d.value.size,isNextDisabled:b.value,isPrevDisabled:x.value,isFirstStep:m.value,isLastStep:h.value,goToStep:_,nextStep:()=>_((V(f)??1)+1),prevStep:()=>_((V(f)??1)-1)}),c(`div`,ub,` Step `+ve(V(f))+` of `+ve(d.value.size),1)]),_:3},8,[`as`,`as-child`,`data-linear`,`data-orientation`]))}}),[mb,hb]=q(`StepperItem`),gb=g({__name:`StepperItem`,props:{step:{},disabled:{type:Boolean,default:!1},completed:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},setup(e){let t=e,{disabled:n,step:r,completed:i}=B(t),{forwardRef:a}=X(),o=db(),c=Z(void 0,`radix-vue-stepper-item-title`),u=Z(void 0,`radix-vue-stepper-item-description`),d=s(()=>i.value?`completed`:o.modelValue.value===r.value?`active`:o.modelValue.value>r.value?`completed`:`inactive`),f=s(()=>n.value?!1:o.linear.value?r.value<=o.modelValue.value||r.value===o.modelValue.value+1:!0);return hb({titleId:c,descriptionId:u,state:d,disabled:n,step:r,isFocusable:f}),(e,t)=>(L(),l(V(Q),{ref:V(a),as:e.as,"as-child":e.asChild,"aria-current":d.value===`active`?`true`:void 0,"data-state":d.value,disabled:V(n)||!f.value?``:void 0,"data-disabled":V(n)||!f.value?``:void 0,"data-orientation":V(o).orientation.value},{default:W(()=>[z(e.$slots,`default`,{state:d.value})]),_:3},8,[`as`,`as-child`,`aria-current`,`data-state`,`disabled`,`data-disabled`,`data-orientation`]))}}),_b=g({__name:`StepperTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=db(),n=mb(),r=Vs(),i=s(()=>Array.from(t.totalStepperItems.value));function a(e){if(!n.disabled.value){if(t.linear.value){if((n.step.value<=t.modelValue.value||n.step.value===t.modelValue.value+1)&&e.ctrlKey===!1){t.changeModelValue(n.step.value);return}}else if(e.ctrlKey===!1){t.changeModelValue(n.step.value);return}e.preventDefault()}}function o(e){e.preventDefault(),!n.disabled.value&&((e.key===r.ENTER||e.key===r.SPACE)&&!e.ctrlKey&&!e.shiftKey&&t.changeModelValue(n.step.value),[r.ARROW_LEFT,r.ARROW_RIGHT,r.ARROW_UP,r.ARROW_DOWN].includes(e.key)&&Ho(e,Y(),void 0,{itemsArray:i.value,focus:!0,loop:!1,arrowKeyOptions:t.orientation.value,dir:t.dir.value}))}let{forwardRef:c,currentElement:u}=X();return I(()=>{t.totalStepperItems.value.add(u.value)}),ae(()=>{t.totalStepperItems.value.delete(u.value)}),(e,r)=>(L(),l(V(Q),{ref:V(c),type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"data-state":V(n).state.value,disabled:V(n).disabled.value||!V(n).isFocusable.value?``:void 0,"data-disabled":V(n).disabled.value||!V(n).isFocusable.value?``:void 0,"data-orientation":V(t).orientation.value,tabindex:V(n).isFocusable.value?0:-1,"aria-describedby":V(n).descriptionId,"aria-labelledby":V(n).titleId,onMousedown:K(a,[`left`]),onKeydown:G(o,[`enter`,`space`,`left`,`right`,`up`,`down`])},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`,`data-state`,`disabled`,`data-disabled`,`data-orientation`,`tabindex`,`aria-describedby`,`aria-labelledby`]))}}),vb=g({__name:`StepperDescription`,props:{asChild:{type:Boolean},as:{default:`p`}},setup(e){let t=e;X();let n=mb();return(e,r)=>(L(),l(V(Q),j(t,{id:V(n).descriptionId}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),yb=g({__name:`StepperTitle`,props:{asChild:{type:Boolean},as:{default:`h4`}},setup(e){let t=e,n=mb();return X(),(e,r)=>(L(),l(V(Q),j(t,{id:V(n).titleId}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),bb=g({__name:`StepperIndicator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=mb();return X(),(e,r)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(` Step `+ve(V(n).step.value),1)])]),_:3},16))}}),xb=g({__name:`StepperSeparator`,props:{orientation:{},decorative:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=db(),r=mb();return X(),(e,i)=>(L(),l(V(_v),j(t,{decorative:``,orientation:V(n).orientation.value,"data-state":V(r).state.value}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`orientation`,`data-state`]))}}),Sb=[`name`,`disabled`,`required`,`value`,`checked`,`data-state`,`data-disabled`],[Cb,wb]=q(`SwitchRoot`),Tb=g({__name:`SwitchRoot`,props:{defaultChecked:{type:Boolean},checked:{type:Boolean,default:void 0},disabled:{type:Boolean},required:{type:Boolean},name:{},id:{},value:{default:`on`},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:checked`],setup(e,{emit:n}){let r=e,i=n,{disabled:a}=B(r),o=J(r,`checked`,i,{defaultValue:r.defaultChecked,passive:r.checked===void 0});function c(){a.value||(o.value=!o.value)}let{forwardRef:l,currentElement:d}=X(),p=ps(d),h=s(()=>{var e;return r.id&&d.value?(e=document.querySelector(`[for="${r.id}"]`))?.innerText:void 0});return wb({checked:o,toggleCheck:c,disabled:a}),(e,n)=>(L(),f(t,null,[m(V(Q),j(e.$attrs,{id:e.id,ref:V(l),role:`switch`,type:e.as===`button`?`button`:void 0,value:e.value,"aria-label":e.$attrs[`aria-label`]||h.value,"aria-checked":V(o),"aria-required":e.required,"data-state":V(o)?`checked`:`unchecked`,"data-disabled":V(a)?``:void 0,"as-child":e.asChild,as:e.as,disabled:V(a),onClick:c,onKeydown:G(K(c,[`prevent`]),[`enter`])}),{default:W(()=>[z(e.$slots,`default`,{checked:V(o)})]),_:3},16,[`id`,`type`,`value`,`aria-label`,`aria-checked`,`aria-required`,`data-state`,`data-disabled`,`as-child`,`as`,`disabled`,`onKeydown`]),V(p)?(L(),f(`input`,{key:0,type:`checkbox`,name:e.name,tabindex:`-1`,"aria-hidden":`true`,disabled:V(a),required:e.required,value:e.value,checked:!!V(o),"data-state":V(o)?`checked`:`unchecked`,"data-disabled":V(a)?``:void 0,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Sb)):u(``,!0)],64))}}),Eb=g({__name:`SwitchThumb`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=Cb();return X(),(e,n)=>{var r;return L(),l(V(Q),{"data-state":(r=V(t).checked)!=null&&r.value?`checked`:`unchecked`,"data-disabled":V(t).disabled.value?``:void 0,"as-child":e.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`data-state`,`data-disabled`,`as-child`,`as`])}}}),[Db,Ob]=q(`TabsRoot`),kb=g({__name:`TabsRoot`,props:{defaultValue:{},orientation:{default:`horizontal`},dir:{},activationMode:{default:`automatic`},modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{orientation:i,dir:a}=B(n),o=cs(a);X();let s=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),c=R();return Ob({modelValue:s,changeModelValue:e=>{s.value=e},orientation:i,dir:o,activationMode:n.activationMode,baseId:Z(void 0,`radix-vue-tabs`),tabsList:c}),(e,t)=>(L(),l(V(Q),{dir:V(o),"data-orientation":V(i),"as-child":e.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(s)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}}),Ab=g({__name:`TabsList`,props:{loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},setup(e){let t=e,{loop:n}=B(t),{forwardRef:r,currentElement:i}=X(),a=Db();return a.tabsList=i,(e,t)=>(L(),l(V(pd),{"as-child":``,orientation:V(a).orientation.value,dir:V(a).dir.value,loop:V(n)},{default:W(()=>[m(V(Q),{ref:V(r),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":V(a).orientation.value},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}});function jb(e,t){return`${e}-trigger-${t}`}function Mb(e,t){return`${e}-content-${t}`}const Nb=g({__name:`TabsContent`,props:{value:{},forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),r=Db(),i=s(()=>jb(r.baseId,t.value)),a=s(()=>Mb(r.baseId,t.value)),o=s(()=>t.value===r.modelValue.value),c=R(o.value);return I(()=>{requestAnimationFrame(()=>{c.value=!1})}),(e,t)=>(L(),l(V(Xs),{present:o.value,"force-mount":``},{default:W(({present:t})=>[m(V(Q),{id:a.value,ref:V(n),"as-child":e.asChild,as:e.as,role:`tabpanel`,"data-state":o.value?`active`:`inactive`,"data-orientation":V(r).orientation.value,"aria-labelledby":i.value,hidden:!t.value,tabindex:`0`,style:F({animationDuration:c.value?`0s`:void 0})},{default:W(()=>[e.forceMount||o.value?z(e.$slots,`default`,{key:0}):u(``,!0)]),_:2},1032,[`id`,`as-child`,`as`,`data-state`,`data-orientation`,`aria-labelledby`,`hidden`,`style`])]),_:3},8,[`present`]))}}),Pb=g({__name:`TabsTrigger`,props:{value:{},disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,{forwardRef:n}=X(),r=Db(),i=s(()=>jb(r.baseId,t.value)),a=s(()=>Mb(r.baseId,t.value)),o=s(()=>t.value===r.modelValue.value);return(e,t)=>(L(),l(V(md),{"as-child":``,focusable:!e.disabled,active:o.value},{default:W(()=>[m(V(Q),{id:i.value,ref:V(n),role:`tab`,type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"aria-selected":o.value?`true`:`false`,"aria-controls":a.value,"data-state":o.value?`active`:`inactive`,disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-orientation":V(r).orientation.value,onMousedown:t[0]||=K(t=>{!e.disabled&&t.ctrlKey===!1?V(r).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=G(t=>V(r).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=V(r).activationMode!==`manual`;!o.value&&!e.disabled&&t&&V(r).changeModelValue(e.value)}},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as`,`as-child`,`aria-selected`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`data-orientation`])]),_:3},8,[`focusable`,`active`]))}}),Fb=g({__name:`TabsIndicator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Db();X();let r=R(),i=R({size:null,position:null});H(()=>[n.modelValue.value,n?.dir.value],async()=>{await N(),a()},{immediate:!0}),Lo([n.tabsList,r],a);function a(){var e;r.value=(e=n.tabsList.value)?.querySelector(`[role="tab"][data-state="active"]`),r.value&&(n.orientation.value===`horizontal`?i.value={size:r.value.offsetWidth,position:r.value.offsetLeft}:i.value={size:r.value.offsetHeight,position:r.value.offsetTop})}return(e,n)=>typeof i.value.size==`number`?(L(),l(V(Q),j({key:0},t,{style:{"--radix-tabs-indicator-size":`${i.value.size}px`,"--radix-tabs-indicator-position":`${i.value.position}px`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`style`])):u(``,!0)}}),[Ib,Lb]=q(`TagsInputRoot`),Rb=g({__name:`TagsInputRoot`,props:{modelValue:{},defaultValue:{default:()=>[]},addOnPaste:{type:Boolean},addOnTab:{type:Boolean},addOnBlur:{type:Boolean},duplicate:{type:Boolean},disabled:{type:Boolean},delimiter:{default:`,`},dir:{},max:{default:0},required:{type:Boolean},name:{},id:{},convertValue:{},displayValue:{type:Function,default:e=>e.toString()},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`invalid`],setup(e,{emit:t}){let n=e,r=t,{addOnPaste:i,disabled:a,delimiter:o,max:s,id:c,dir:d,addOnBlur:f,addOnTab:p}=B(n),h=cs(d),g=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:!0,deep:!0}),{forwardRef:_,currentElement:v}=X(),{focused:y}=Ro(v),b=ps(v),{getItems:x}=yu(),S=R(),C=R(!1);return Lb({modelValue:g,onAddValue:e=>{let t=g.value.length>0&&typeof g.value[0]==`object`,i=g.value.length>0&&typeof n.defaultValue[0]==`object`;if((t||i)&&typeof n.convertValue!=`function`)throw Error("You must provide a `convertValue` function when using objects as values.");let a=n.convertValue?n.convertValue(e):e;if(g.value.length>=s.value&&s.value)return r(`invalid`,a),!1;if(n.duplicate)return g.value=[...g.value,a],!0;if(g.value.includes(a))C.value=!0;else return g.value=[...g.value,a],!0;return r(`invalid`,a),!1},onRemoveValue:e=>{e!==-1&&(g.value=g.value.filter((t,n)=>n!==e))},onInputKeydown:e=>{let t=e.target,n=x().map(e=>e.ref).filter(e=>e.dataset.disabled!==``);if(!n.length)return;let r=n.at(-1);switch(e.key){case`Delete`:case`Backspace`:if(t.selectionStart!==0||t.selectionEnd!==0)break;if(S.value){let t=n.findIndex(e=>e===S.value);g.value=g.value.filter((e,n)=>n!==t),S.value=S.value===r?n.at(t-1):n.at(t+1),e.preventDefault()}else e.key===`Backspace`&&(S.value=r,e.preventDefault());break;case`Home`:case`End`:case`ArrowRight`:case`ArrowLeft`:{let i=e.key===`ArrowRight`&&h.value===`ltr`||e.key===`ArrowLeft`&&h.value===`rtl`,a=!i;if(t.selectionStart!==0||t.selectionEnd!==0)break;if(a&&!S.value)S.value=r,e.preventDefault();else if(i&&r&&S.value===r)S.value=void 0,e.preventDefault();else if(S.value){let t=Ho(e,S.value,void 0,{itemsArray:n,loop:!1,dir:h.value});t&&(S.value=t),e.preventDefault()}break}case`ArrowUp`:case`ArrowDown`:S.value&&e.preventDefault();break;default:S.value=void 0}},selectedElement:S,isInvalidInput:C,addOnPaste:i,addOnBlur:f,addOnTab:p,dir:h,disabled:a,delimiter:o,max:s,id:c,displayValue:n.displayValue}),(e,t)=>(L(),l(V(bu),null,{default:W(()=>[m(V(Q),{ref:V(_),dir:V(h),as:e.as,"as-child":e.asChild,"data-invalid":C.value?``:void 0,"data-disabled":V(a)?``:void 0,"data-focused":V(y)?``:void 0},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(g)}),V(b)&&e.name?(L(),l(V(hu),{key:0,name:e.name,value:V(g),required:e.required,disabled:V(a)},null,8,[`name`,`value`,`required`,`disabled`])):u(``,!0)]),_:3},8,[`dir`,`as`,`as-child`,`data-invalid`,`data-disabled`,`data-focused`])]),_:3}))}}),zb=g({__name:`TagsInputInput`,props:{placeholder:{},autoFocus:{type:Boolean},maxLength:{},asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=Ib(),{forwardRef:r,currentElement:i}=X();function a(e){if(!n.addOnBlur.value)return;let t=e.target;t.value&&n.onAddValue(t.value)&&(t.value=``)}function o(e){n.addOnTab.value&&d(e)}let s=R(!1);function c(){s.value=!0}function u(){requestAnimationFrame(()=>{s.value=!1})}async function d(e){if(s.value||(await N(),e.defaultPrevented))return;let t=e.target;t.value&&(n.onAddValue(t.value)&&(t.value=``),e.preventDefault())}function f(e){n.isInvalidInput.value=!1;let t=n.delimiter.value;if(t===e.data){let r=e.target;r.value=r.value.replaceAll(t,``),n.onAddValue(r.value)&&(r.value=``)}}function p(e){if(n.addOnPaste.value){e.preventDefault();let t=e.clipboardData;if(!t)return;let r=t.getData(`text`);n.delimiter.value?r.split(n.delimiter.value).forEach(e=>{n.onAddValue(e)}):n.onAddValue(r)}}return I(()=>{let e=i.value.nodeName===`INPUT`?i.value:i.value.querySelector(`input`);e&&setTimeout(()=>{t.autoFocus&&e?.focus()},1)}),(e,t)=>{var i;return L(),l(V(Q),{id:(i=V(n).id)?.value,ref:V(r),type:`text`,autocomplete:`off`,autocorrect:`off`,autocapitalize:`off`,as:e.as,"as-child":e.asChild,maxlength:e.maxLength,placeholder:e.placeholder,disabled:V(n).disabled.value,"data-invalid":V(n).isInvalidInput.value?``:void 0,onInput:f,onKeydown:[G(d,[`enter`]),G(o,[`tab`]),V(n).onInputKeydown],onBlur:a,onCompositionstart:c,onCompositionend:u,onPaste:p},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`id`,`as`,`as-child`,`maxlength`,`placeholder`,`disabled`,`data-invalid`,`onKeydown`])}}}),[Bb,Vb]=q(`TagsInputItem`),Hb=g({__name:`TagsInputItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{value:n}=B(t),r=Ib(),{forwardRef:i,currentElement:a}=X(),o=s(()=>r.selectedElement.value===a.value),c=s(()=>t.disabled||r.disabled.value),u=Vb({value:n,isSelected:o,disabled:c,textId:``,displayValue:s(()=>r.displayValue(n.value))});return(e,t)=>(L(),l(V(xu),null,{default:W(()=>[m(V(Q),{ref:V(i),as:e.as,"as-child":e.asChild,"aria-labelledby":V(u).textId,"aria-current":o.value,"data-disabled":c.value?``:void 0,"data-state":o.value?`active`:`inactive`},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-labelledby`,`aria-current`,`data-disabled`,`data-state`])]),_:3}))}}),Ub=g({__name:`TagsInputItemText`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=Bb();return X(),n.textId||=Z(void 0,`radix-vue-tags-input-item-text`),(e,r)=>(L(),l(V(Q),j(t,{id:V(n).textId}),{default:W(()=>[z(e.$slots,`default`,{},()=>[p(ve(V(n).displayValue.value),1)])]),_:3},16,[`id`]))}}),Wb=g({__name:`TagsInputItemDelete`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Ib(),r=Bb(),i=s(()=>{var e;return(e=r.disabled)?.value||n.disabled.value});function a(){if(i.value)return;let e=n.modelValue.value.findIndex(e=>e===r.value.value);n.onRemoveValue(e)}return(e,n)=>(L(),l(V(Q),j({tabindex:`-1`},t,{"aria-labelledby":V(r).textId,"aria-current":V(r).isSelected.value,"data-state":V(r).isSelected.value?`active`:`inactive`,"data-disabled":i.value?``:void 0,type:e.as===`button`?`button`:void 0,onClick:a}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-labelledby`,`aria-current`,`data-state`,`data-disabled`,`type`]))}}),Gb=g({__name:`TagsInputClear`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Ib();function r(){n.disabled.value||(n.modelValue.value=[])}return(e,i)=>(L(),l(V(Q),j(t,{type:e.as===`button`?`button`:void 0,"data-disabled":V(n).disabled.value?``:void 0,onClick:r}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`,`data-disabled`]))}}),[Kb,qb]=q(`ToastProvider`),Jb=g({inheritAttrs:!1,__name:`ToastProvider`,props:{label:{default:`Notification`},duration:{default:5e3},swipeDirection:{default:`right`},swipeThreshold:{default:50}},setup(e){let t=e,{label:n,duration:r,swipeDirection:i,swipeThreshold:a}=B(t),o=R(),s=R(0),c=R(!1),l=R(!1);if(t.label&&typeof t.label==`string`&&!t.label.trim()){let e="Invalid prop `label` supplied to `ToastProvider`. Expected non-empty `string`.";throw Error(e)}return qb({label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:s,viewport:o,onViewportChange(e){o.value=e},onToastAdd(){s.value++},onToastRemove(){s.value--},isFocusedToastEscapeKeyDownRef:c,isClosePausedRef:l}),(e,t)=>z(e.$slots,`default`)}}),Yb=`toast.swipeStart`,Xb=`toast.swipeMove`,Zb=`toast.swipeCancel`,Qb=`toast.swipeEnd`,$b=`toast.viewportPause`,ex=`toast.viewportResume`;function tx(e,t,n){let r=n.originalEvent.currentTarget,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),r.dispatchEvent(i)}function nx(e,t,n=0){let r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t===`left`||t===`right`?a&&r>n:!a&&i>n}function rx(e){return e.nodeType===e.ELEMENT_NODE}function ix(e){let t=[];return Array.from(e.childNodes).forEach(e=>{if(e.nodeType===e.TEXT_NODE&&e.textContent&&t.push(e.textContent),rx(e)){let n=e.ariaHidden||e.hidden||e.style.display===`none`,r=e.dataset.radixToastAnnounceExclude===``;if(!n)if(r){let n=e.dataset.radixToastAnnounceAlt;n&&t.push(n)}else t.push(...ix(e))}}),t}const ax=g({__name:`ToastAnnounce`,setup(e){let t=Kb(),n=Co(1e3),r=R(!1);return Po(()=>{r.value=!0}),(e,i)=>V(n)||r.value?(L(),l(V(mu),{key:0},{default:W(()=>[p(ve(V(t).label.value)+` `,1),z(e.$slots,`default`)]),_:3})):u(``,!0)}}),[ox,sx]=q(`ToastRoot`),cx=g({inheritAttrs:!1,__name:`ToastRootImpl`,props:{type:{},open:{type:Boolean,default:!1},duration:{},asChild:{type:Boolean},as:{default:`li`}},emits:[`close`,`escapeKeyDown`,`pause`,`resume`,`swipeStart`,`swipeMove`,`swipeCancel`,`swipeEnd`],setup(e,{emit:r}){let i=e,a=r,{forwardRef:o,currentElement:c}=X(),d=Kb(),h=R(null),g=R(null),_=s(()=>typeof i.duration==`number`?i.duration:d.duration.value),v=R(0),y=R(_.value),b=R(0),x=R(_.value),S=Po(()=>{let e=new Date().getTime()-v.value;x.value=Math.max(y.value-e,0)},{fpsLimit:60});function C(e){e<=0||e===1/0||oo&&(window.clearTimeout(b.value),v.value=new Date().getTime(),b.value=window.setTimeout(w,e))}function w(){var e,t;(e=c.value)!=null&&e.contains(Y())&&((t=d.viewport.value)==null||t.focus()),d.isClosePausedRef.value=!1,a(`close`)}let T=s(()=>c.value?ix(c.value):null);if(i.type&&![`foreground`,`background`].includes(i.type)){let e="Invalid prop `type` supplied to `Toast`. Expected `foreground | background`.";throw Error(e)}return U(e=>{let t=d.viewport.value;if(t){let e=()=>{C(y.value),S.resume(),a(`resume`)},n=()=>{let e=new Date().getTime()-v.value;y.value-=e,window.clearTimeout(b.value),S.pause(),a(`pause`)};return t.addEventListener($b,n),t.addEventListener(ex,e),()=>{t.removeEventListener($b,n),t.removeEventListener(ex,e)}}}),H(()=>[i.open,_.value],()=>{y.value=_.value,i.open&&!d.isClosePausedRef.value&&C(_.value)},{immediate:!0}),ko(`Escape`,e=>{a(`escapeKeyDown`,e),e.defaultPrevented||(d.isFocusedToastEscapeKeyDownRef.value=!0,w())}),I(()=>{d.onToastAdd()}),ae(()=>{d.onToastRemove()}),sx({onClose:w}),(e,r)=>(L(),f(t,null,[T.value?(L(),l(ax,{key:0,role:`alert`,"aria-live":e.type===`foreground`?`assertive`:`polite`,"aria-atomic":`true`},{default:W(()=>[p(ve(T.value),1)]),_:1},8,[`aria-live`])):u(``,!0),V(d).viewport.value?(L(),l(n,{key:1,to:V(d).viewport.value},[m(V(Q),j({ref:V(o),role:`alert`,"aria-live":`off`,"aria-atomic":`true`,tabindex:`0`,"data-radix-vue-collection-item":``},e.$attrs,{as:e.as,"as-child":e.asChild,"data-state":e.open?`open`:`closed`,"data-swipe-direction":V(d).swipeDirection.value,style:{userSelect:`none`,touchAction:`none`},onPointerdown:r[0]||=K(e=>{h.value={x:e.clientX,y:e.clientY}},[`left`]),onPointermove:r[1]||=e=>{if(!h.value)return;let t=e.clientX-h.value.x,n=e.clientY-h.value.y,r=!!g.value,i=[`left`,`right`].includes(V(d).swipeDirection.value),o=[`left`,`up`].includes(V(d).swipeDirection.value)?Math.min:Math.max,s=i?o(0,t):0,c=i?0:o(0,n),l=e.pointerType===`touch`?10:2,u={x:s,y:c},f={originalEvent:e,delta:u};r?(g.value=u,V(tx)(V(Xb),e=>a(`swipeMove`,e),f)):V(nx)(u,V(d).swipeDirection.value,l)?(g.value=u,V(tx)(V(Yb),e=>a(`swipeStart`,e),f),e.target.setPointerCapture(e.pointerId)):(Math.abs(t)>l||Math.abs(n)>l)&&(h.value=null)},onPointerup:r[2]||=e=>{let t=g.value,n=e.target;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),g.value=null,h.value=null,t){let n=e.currentTarget,r={originalEvent:e,delta:t};V(nx)(t,V(d).swipeDirection.value,V(d).swipeThreshold.value)?V(tx)(V(Qb),e=>a(`swipeEnd`,e),r):V(tx)(V(Zb),e=>a(`swipeCancel`,e),r),n?.addEventListener(`click`,e=>e.preventDefault(),{once:!0})}}}),{default:W(()=>[z(e.$slots,`default`,{remaining:x.value,duration:_.value})]),_:3},16,[`as`,`as-child`,`data-state`,`data-swipe-direction`])],8,[`to`])):u(``,!0)],64))}}),lx=g({__name:`ToastRoot`,props:{defaultOpen:{type:Boolean,default:!0},forceMount:{type:Boolean},type:{default:`foreground`},open:{type:Boolean,default:void 0},duration:{},asChild:{type:Boolean},as:{default:`li`}},emits:[`escapeKeyDown`,`pause`,`resume`,`swipeStart`,`swipeMove`,`swipeCancel`,`swipeEnd`,`update:open`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i}=X(),a=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0});return(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(a)},{default:W(()=>[m(cx,j({ref:V(i),open:V(a),type:e.type,as:e.as,"as-child":e.asChild,duration:e.duration},e.$attrs,{onClose:t[0]||=e=>a.value=!1,onPause:t[1]||=e=>r(`pause`),onResume:t[2]||=e=>r(`resume`),onEscapeKeyDown:t[3]||=e=>r(`escapeKeyDown`,e),onSwipeStart:t[4]||=e=>{r(`swipeStart`,e),e.currentTarget.setAttribute(`data-swipe`,`start`)},onSwipeMove:t[5]||=e=>{let{x:t,y:n}=e.detail.delta,r=e.currentTarget;r.setAttribute(`data-swipe`,`move`),r.style.setProperty(`--radix-toast-swipe-move-x`,`${t}px`),r.style.setProperty(`--radix-toast-swipe-move-y`,`${n}px`)},onSwipeCancel:t[6]||=e=>{let t=e.currentTarget;t.setAttribute(`data-swipe`,`cancel`),t.style.removeProperty(`--radix-toast-swipe-move-x`),t.style.removeProperty(`--radix-toast-swipe-move-y`),t.style.removeProperty(`--radix-toast-swipe-end-x`),t.style.removeProperty(`--radix-toast-swipe-end-y`)},onSwipeEnd:t[7]||=e=>{let{x:t,y:n}=e.detail.delta,r=e.currentTarget;r.setAttribute(`data-swipe`,`end`),r.style.removeProperty(`--radix-toast-swipe-move-x`),r.style.removeProperty(`--radix-toast-swipe-move-y`),r.style.setProperty(`--radix-toast-swipe-end-x`,`${t}px`),r.style.setProperty(`--radix-toast-swipe-end-y`,`${n}px`),a.value=!1}}),{default:W(({remaining:t,duration:n})=>[z(e.$slots,`default`,{remaining:t,duration:n,open:V(a)})]),_:3},16,[`open`,`type`,`as`,`as-child`,`duration`])]),_:3},8,[`present`]))}}),ux=g({__name:`ToastPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),dx=g({__name:`ToastAnnounceExclude`,props:{altText:{},asChild:{type:Boolean},as:{}},setup(e){return(e,t)=>(L(),l(V(Q),{as:e.as,"as-child":e.asChild,"data-radix-toast-announce-exclude":``,"data-radix-toast-announce-alt":e.altText||void 0},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-radix-toast-announce-alt`]))}}),fx=g({__name:`ToastClose`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=ox(),{forwardRef:r}=X();return(e,i)=>(L(),l(dx,{"as-child":``},{default:W(()=>[m(V(Q),j(t,{ref:V(r),type:e.as===`button`?`button`:void 0,onClick:i[0]||=e=>V(n).onClose()}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`])]),_:3}))}}),px=g({__name:`ToastAction`,props:{altText:{},asChild:{type:Boolean},as:{}},setup(e){if(!e.altText)throw Error("Missing prop `altText` expected on `ToastAction`");let{forwardRef:t}=X();return(e,n)=>e.altText?(L(),l(dx,{key:0,"alt-text":e.altText,"as-child":``},{default:W(()=>[m(fx,{ref:V(t),as:e.as,"as-child":e.asChild},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`as`,`as-child`])]),_:3},8,[`alt-text`])):u(``,!0)}}),mx=g({__name:`FocusProxy`,emits:[`focusFromOutsideViewport`],setup(e,{emit:t}){let n=t,r=Kb();return(e,t)=>(L(),l(V(mu),{"aria-hidden":`true`,tabindex:`0`,style:{position:`fixed`},onFocus:t[0]||=e=>{var t;let i=e.relatedTarget;!((t=V(r).viewport.value)!=null&&t.contains(i))&&n(`focusFromOutsideViewport`)}},{default:W(()=>[z(e.$slots,`default`)]),_:3}))}}),hx=g({inheritAttrs:!1,__name:`ToastViewport`,props:{hotkey:{default:()=>[`F8`]},label:{type:[String,Function],default:`Notifications ({hotkey})`},asChild:{type:Boolean},as:{default:`ol`}},setup(e){let t=e,{hotkey:n,label:r}=B(t),{forwardRef:i,currentElement:a}=X(),{createCollection:o}=os(),c=o(a),d=Kb(),f=s(()=>d.toastCount.value>0),p=R(),h=R(),g=s(()=>n.value.join(`+`).replace(/Key/g,``).replace(/Digit/g,``));ko(n.value,()=>{a.value.focus()}),I(()=>{d.onViewportChange(a.value)}),U(e=>{let t=a.value;if(f.value&&t){let n=()=>{if(!d.isClosePausedRef.value){let e=new CustomEvent($b);t.dispatchEvent(e),d.isClosePausedRef.value=!0}},r=()=>{if(d.isClosePausedRef.value){let e=new CustomEvent(ex);t.dispatchEvent(e),d.isClosePausedRef.value=!1}},i=e=>{!t.contains(e.relatedTarget)&&r()},a=()=>{t.contains(Y())||r()},o=e=>{var n,r,i;let a=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!a){let a=Y(),o=e.shiftKey;if(e.target===t&&o){(n=p.value)==null||n.focus();return}let s=_({tabbingDirection:o?`backwards`:`forwards`}),c=s.findIndex(e=>e===a);Oc(s.slice(c+1))?e.preventDefault():o?(r=p.value)==null||r.focus():(i=h.value)==null||i.focus()}};t.addEventListener(`focusin`,n),t.addEventListener(`focusout`,i),t.addEventListener(`pointermove`,n),t.addEventListener(`pointerleave`,a),t.addEventListener(`keydown`,o),window.addEventListener(`blur`,n),window.addEventListener(`focus`,r),e(()=>{t.removeEventListener(`focusin`,n),t.removeEventListener(`focusout`,i),t.removeEventListener(`pointermove`,n),t.removeEventListener(`pointerleave`,a),t.removeEventListener(`keydown`,o),window.removeEventListener(`blur`,n),window.removeEventListener(`focus`,r)})}});function _({tabbingDirection:e}){let t=c.value.map(t=>{let n=[t,...Ac(t)];return e===`forwards`?n:n.reverse()});return(e===`forwards`?t.reverse():t).flat()}return(e,t)=>(L(),l(V(wc),{role:`region`,"aria-label":typeof V(r)==`string`?V(r).replace(`{hotkey}`,g.value):V(r)(g.value),tabindex:`-1`,style:F({pointerEvents:f.value?void 0:`none`})},{default:W(()=>[f.value?(L(),l(mx,{key:0,ref:e=>{p.value=V(To)(e)},onFocusFromOutsideViewport:t[0]||=()=>{let e=_({tabbingDirection:`forwards`});V(Oc)(e)}},null,512)):u(``,!0),m(V(Q),j({ref:V(i),tabindex:`-1`,as:e.as,"as-child":e.asChild},e.$attrs),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`as`,`as-child`]),f.value?(L(),l(mx,{key:1,ref:e=>{h.value=V(To)(e)},onFocusFromOutsideViewport:t[1]||=()=>{let e=_({tabbingDirection:`backwards`});V(Oc)(e)}},null,512)):u(``,!0)]),_:3},8,[`aria-label`,`style`]))}}),gx=g({__name:`ToastTitle`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),_x=g({__name:`ToastDescription`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(Q),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),vx=g({__name:`Toggle`,props:{defaultValue:{type:Boolean},pressed:{type:Boolean,default:void 0},disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:pressed`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`pressed`,r,{defaultValue:n.defaultValue,passive:n.pressed===void 0});function a(){i.value=!i.value}let o=s(()=>i.value?`on`:`off`);return(e,t)=>(L(),l(V(Q),{type:e.as===`button`?`button`:void 0,"as-child":n.asChild,as:e.as,"aria-pressed":V(i),"data-state":o.value,"data-disabled":e.disabled?``:void 0,disabled:e.disabled,onClick:a},{default:W(()=>[z(e.$slots,`default`,{pressed:V(i)})]),_:3},8,[`type`,`as-child`,`as`,`aria-pressed`,`data-state`,`data-disabled`,`disabled`]))}}),[yx,bx]=q(`ToggleGroupRoot`),xx=g({__name:`ToggleGroupRoot`,props:{rovingFocus:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},orientation:{},dir:{},loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{loop:i,rovingFocus:a,disabled:o,dir:s}=B(n),c=cs(s),{forwardRef:u}=X(),{modelValue:d,changeModelValue:f,isSingle:p}=tc(n,r);return bx({isSingle:p,modelValue:d,changeModelValue:f,dir:c,orientation:n.orientation,loop:i,rovingFocus:a,disabled:o}),(e,t)=>(L(),l(fe(V(a)?V(pd):V(Q)),{"as-child":``,orientation:V(a)?e.orientation:void 0,dir:V(c),loop:V(a)?V(i):void 0},{default:W(()=>[m(V(Q),{ref:V(u),role:`group`,"as-child":e.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`,{modelValue:V(d)})]),_:3},8,[`as-child`,`as`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Sx=g({__name:`ToggleGroupItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=yx(),r=s(()=>{var e;return(e=n.disabled)?.value||t.disabled}),i=s(()=>{var e;return(e=n.modelValue.value)?.includes(t.value)}),a=s(()=>{var e;return n.isSingle.value?n.modelValue.value===t.value:(e=n.modelValue.value)?.includes(t.value)}),{forwardRef:o}=X();return(e,s)=>(L(),l(fe(V(n).rovingFocus.value?V(md):V(Q)),{"as-child":``,focusable:!r.value,active:i.value},{default:W(()=>[m(V(vx),j(t,{ref:V(o),disabled:r.value,pressed:a.value,"onUpdate:pressed":s[0]||=t=>V(n).changeModelValue(e.value)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`disabled`,`pressed`])]),_:3},8,[`focusable`,`active`]))}}),[Cx,wx]=q(`ToolbarRoot`),Tx=g({__name:`ToolbarRoot`,props:{orientation:{default:`horizontal`},dir:{},loop:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{orientation:n,dir:r}=B(t),i=cs(r),{forwardRef:a}=X();return wx({orientation:n,dir:i}),(e,t)=>(L(),l(V(pd),{"as-child":``,orientation:V(n),dir:V(i),loop:e.loop},{default:W(()=>[m(V(Q),{ref:V(a),role:`toolbar`,"aria-orientation":V(n),"as-child":e.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`aria-orientation`,`as-child`,`as`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Ex=g({__name:`ToolbarButton`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,{forwardRef:n}=X();return(e,r)=>(L(),l(V(md),{"as-child":``,focusable:!e.disabled},{default:W(()=>[m(V(Q),j({ref:V(n),type:e.as===`button`?`button`:void 0},t),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`type`])]),_:3},8,[`focusable`]))}}),Dx=g({__name:`ToolbarLink`,props:{asChild:{type:Boolean},as:{default:`a`}},setup(e){let t=e,{forwardRef:n}=X();return(e,r)=>(L(),l(V(md),{"as-child":``,focusable:``},{default:W(()=>[m(V(Q),j(t,{ref:V(n),onKeydown:r[0]||=e=>{var t;e.key===` `&&((t=e.currentTarget)==null||t.click())}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3}))}}),Ox=g({__name:`ToolbarToggleGroup`,props:{rovingFocus:{type:Boolean},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,i=Cx(),a=ls(r);return X(),(e,t)=>(L(),l(V(xx),j({...n,...V(a)},{"data-orientation":V(i).orientation.value,dir:V(i).dir.value,"roving-focus":!1}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`data-orientation`,`dir`]))}}),kx=g({__name:`ToolbarToggleItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X();return(e,r)=>(L(),l(Ex,{"as-child":``},{default:W(()=>[m(V(Sx),j(t,{ref:V(n)}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16)]),_:3}))}}),Ax=g({__name:`ToolbarSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Cx();return X(),(e,r)=>(L(),l(gv,{orientation:V(n).orientation.value,"as-child":t.asChild,as:e.as},{default:W(()=>[z(e.$slots,`default`)]),_:3},8,[`orientation`,`as-child`,`as`]))}}),jx=`tooltip.open`,[Mx,Nx]=q(`TooltipProvider`),Px=g({inheritAttrs:!1,__name:`TooltipProvider`,props:{delayDuration:{default:700},skipDelayDuration:{default:300},disableHoverableContent:{type:Boolean,default:!1},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean,default:!1}},setup(e){let t=e,{delayDuration:n,skipDelayDuration:r,disableHoverableContent:i,disableClosingTrigger:a,ignoreNonKeyboardFocus:o,disabled:s}=B(t);X();let c=R(!0),l=R(!1),{start:u,stop:d}=So(()=>{c.value=!0},r,{immediate:!1});return Nx({isOpenDelayed:c,delayDuration:n,onOpen(){d(),c.value=!1},onClose(){u()},isPointerInTransitRef:l,disableHoverableContent:i,disableClosingTrigger:a,disabled:s,ignoreNonKeyboardFocus:o}),(e,t)=>z(e.$slots,`default`)}}),[Fx,Ix]=q(`TooltipRoot`),Lx=g({__name:`TooltipRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},delayDuration:{default:void 0},disableHoverableContent:{type:Boolean,default:void 0},disableClosingTrigger:{type:Boolean,default:void 0},disabled:{type:Boolean,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=Mx(),a=s(()=>n.disableHoverableContent??i.disableHoverableContent.value),o=s(()=>n.disableClosingTrigger??i.disableClosingTrigger.value),c=s(()=>n.disabled??i.disabled.value),u=s(()=>n.delayDuration??i.delayDuration.value),d=s(()=>n.ignoreNonKeyboardFocus??i.ignoreNonKeyboardFocus.value),f=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0});H(f,e=>{i.onClose&&(e?(i.onOpen(),document.dispatchEvent(new CustomEvent(jx))):i.onClose())});let p=R(!1),m=R(),h=s(()=>f.value?p.value?`delayed-open`:`instant-open`:`closed`),{start:g,stop:_}=So(()=>{p.value=!0,f.value=!0},u,{immediate:!1});function v(){_(),p.value=!1,f.value=!0}function y(){_(),f.value=!1}function b(){g()}return Ix({contentId:``,open:f,stateAttribute:h,trigger:m,onTriggerChange(e){m.value=e},onTriggerEnter(){i.isOpenDelayed.value?b():v()},onTriggerLeave(){a.value?y():_()},onOpen:v,onClose:y,disableHoverableContent:a,disableClosingTrigger:o,disabled:c,ignoreNonKeyboardFocus:d}),(e,t)=>(L(),l(V(tu),null,{default:W(()=>[z(e.$slots,`default`,{open:V(f)})]),_:3}))}}),Rx=g({__name:`TooltipTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Fx(),r=Mx();n.contentId||=Z(void 0,`radix-vue-tooltip-content`);let{forwardRef:i,currentElement:a}=X(),o=R(!1),c=R(!1),u=s(()=>n.disabled.value?{}:{click:v,focus:g,pointermove:p,pointerleave:h,pointerdown:f,blur:_});I(()=>{n.onTriggerChange(a.value)});function d(){setTimeout(()=>{o.value=!1},1)}function f(){o.value=!0,document.addEventListener(`pointerup`,d,{once:!0})}function p(e){e.pointerType!==`touch`&&!c.value&&!r.isPointerInTransitRef.value&&(n.onTriggerEnter(),c.value=!0)}function h(){n.onTriggerLeave(),c.value=!1}function g(e){var t,r;o.value||n.ignoreNonKeyboardFocus.value&&!((r=(t=e.target).matches)!=null&&r.call(t,`:focus-visible`))||n.onOpen()}function _(){n.onClose()}function v(){n.disableClosingTrigger.value||n.onClose()}return(e,r)=>(L(),l(V(nu),{"as-child":``},{default:W(()=>[m(V(Q),j({ref:V(i),"aria-describedby":V(n).open.value?V(n).contentId:void 0,"data-state":V(n).stateAttribute.value,as:e.as,"as-child":t.asChild,"data-grace-area-trigger":``},be(u.value)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-describedby`,`data-state`,`as`,`as-child`])]),_:3}))}}),zx=g({__name:`TooltipContentImpl`,props:{ariaLabel:{},asChild:{type:Boolean},as:{},side:{default:`top`},sideOffset:{default:0},align:{default:`center`},alignOffset:{},avoidCollisions:{type:Boolean,default:!0},collisionBoundary:{default:()=>[]},collisionPadding:{default:0},arrowPadding:{default:0},sticky:{default:`partial`},hideWhenDetached:{type:Boolean,default:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(t,{emit:n}){let r=t,i=n,a=Fx(),{forwardRef:o}=X(),c=Te(),u=s(()=>{var e;return(e=c.default)?.call(c)}),d=s(()=>{var t;if(r.ariaLabel)return r.ariaLabel;let n=``;function i(t){typeof t.children==`string`&&t.type!==e?n+=t.children:Array.isArray(t.children)&&t.children.forEach(e=>i(e))}return(t=u.value)==null||t.forEach(e=>i(e)),n}),f=s(()=>{let{ariaLabel:e,...t}=r;return t});return I(()=>{Do(window,`scroll`,e=>{let t=e.target;t!=null&&t.contains(a.trigger.value)&&a.onClose()}),Do(window,jx,a.onClose)}),(e,t)=>(L(),l(V(Cc),{"as-child":``,"disable-outside-pointer-events":!1,onEscapeKeyDown:t[0]||=e=>i(`escapeKeyDown`,e),onPointerDownOutside:t[1]||=e=>{var t;V(a).disableClosingTrigger.value&&(t=V(a).trigger.value)!=null&&t.contains(e.target)&&e.preventDefault(),i(`pointerDownOutside`,e)},onFocusOutside:t[2]||=K(()=>{},[`prevent`]),onDismiss:t[3]||=e=>V(a).onClose()},{default:W(()=>[m(V(lu),j({ref:V(o),"data-state":V(a).stateAttribute.value},{...e.$attrs,...f.value},{style:{"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:W(()=>[z(e.$slots,`default`),m(V(mu),{id:V(a).contentId,role:`tooltip`},{default:W(()=>[p(ve(d.value),1)]),_:1},8,[`id`])]),_:3},16,[`data-state`])]),_:3}))}}),Bx=g({__name:`TooltipContentHoverable`,props:{ariaLabel:{},asChild:{type:Boolean},as:{},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean}},setup(e){let t=ms(e),{forwardRef:n,currentElement:r}=X(),{trigger:i,onClose:a}=Fx(),o=Mx(),{isPointerInTransit:s,onPointerExit:c}=gs(i,r);return o.isPointerInTransitRef=s,c(()=>{a()}),(e,r)=>(L(),l(zx,j({ref:V(n)},V(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Vx=g({__name:`TooltipContent`,props:{forceMount:{type:Boolean},ariaLabel:{},asChild:{type:Boolean},as:{},side:{default:`top`},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=t,i=Fx(),a=hs(n,r),{forwardRef:o}=X();return(e,t)=>(L(),l(V(Xs),{present:e.forceMount||V(i).open.value},{default:W(()=>[(L(),l(fe(V(i).disableHoverableContent.value?zx:Bx),j({ref:V(o)},V(a)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Hx=g({__name:`TooltipArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(L(),l(V(pu),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}}),Ux=g({__name:`TooltipPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(L(),l(V(hc),P(S(t)),{default:W(()=>[z(e.$slots,`default`)]),_:3},16))}});function Wx(e){return e.reduce((e,t)=>(e.push(t),t.children&&e.push(...Wx(t.children)),e),[])}const[Gx,Kx]=q(`TreeRoot`),qx=g({__name:`TreeRoot`,props:{modelValue:{},defaultValue:{},items:{},expanded:{},defaultExpanded:{},getKey:{},getChildren:{type:Function,default:e=>e.children},selectionBehavior:{default:`toggle`},multiple:{type:Boolean},dir:{},disabled:{type:Boolean},propagateSelect:{type:Boolean},asChild:{type:Boolean},as:{default:`ul`}},emits:[`update:modelValue`,`update:expanded`],setup(e,{emit:t}){let n=e,r=t,{items:i,multiple:a,disabled:o,propagateSelect:c,dir:u}=B(n),{handleTypeaheadSearch:d}=Rs(),f=cs(u),p=R(),h=R(!1),g=eo(),_=J(n,`modelValue`,r,{defaultValue:n.defaultValue??(a.value?[]:void 0),passive:n.modelValue===void 0,deep:!0}),v=J(n,`expanded`,r,{defaultValue:n.defaultExpanded??[],passive:n.expanded===void 0,deep:!0}),{onSelectItem:y,handleMultipleReplace:b}=Ps(_,n),x=s(()=>a.value&&Array.isArray(_.value)?_.value.map(e=>n.getKey(e)):[n.getKey(_.value??{})]);function S(e,t=1,r){return e.reduce((i,a,o)=>{let s=n.getKey(a),c=n.getChildren(a),l=v.value.includes(s),u={_id:s,value:a,index:o,level:t,parentItem:r,hasChildren:!!c,bind:{value:a,level:t,"aria-setsize":e.length,"aria-posinset":o+1}};return i.push(u),c&&l&&i.push(...S(c,t+1,a)),i},[])}let C=s(()=>{let e=n.items;return v.value.map(e=>e),S(e??[])});function w(e){var t;if(h.value)g.trigger(e);else{let n=(t=p.value)?.getItems().map(e=>e.ref);d(e.key,n)}}function T(e){if(h.value)return;let t=od[e.key];N(()=>{var e;b(t,Y(),(e=p.value)?.getItems,C.value.map(e=>e.value))})}return Kx({modelValue:_,selectedKeys:x,onSelect:e=>{var t;let r=t=>n.getKey(t??{})===n.getKey(e),i=n.multiple&&Array.isArray(_.value)?(t=_.value)?.findIndex(r)!==-1:void 0;if(y(e,r),n.propagateSelect&&n.multiple&&Array.isArray(_.value)){let t=Wx(n.getChildren(e)??[]);i?_.value=[..._.value].filter(e=>!t.some(t=>n.getKey(e??{})===n.getKey(t))):_.value=[..._.value,...t]}},expanded:v,onToggle(e){if(!(e&&n.getChildren(e)))return;let t=n.getKey(e)??e;v.value.includes(t)?v.value=v.value.filter(e=>e!==t):v.value.push(t)},getKey:n.getKey,getChildren:n.getChildren,items:i,expandedItems:C,disabled:o,multiple:a,dir:f,propagateSelect:c,isVirtual:h,virtualKeydownHook:g,handleMultipleReplace:b}),(e,t)=>(L(),l(V(pd),{ref_key:`rovingFocusGroupRef`,ref:p,"as-child":``,orientation:`vertical`,dir:V(f)},{default:W(()=>[m(V(Q),{role:`tree`,as:e.as,"as-child":e.asChild,"aria-multiselectable":V(a)?!0:void 0,onKeydown:[w,G(K(T,[`shift`]),[`up`,`down`])]},{default:W(()=>[z(e.$slots,`default`,{flattenItems:C.value,modelValue:V(_),expanded:V(v)})]),_:3},8,[`as`,`as-child`,`aria-multiselectable`,`onKeydown`])]),_:3},8,[`dir`]))}}),Jx=`tree.select`,Yx=`tree.toggle`,Xx=g({inheritAttrs:!1,__name:`TreeItem`,props:{value:{},level:{},asChild:{type:Boolean},as:{default:`li`}},emits:[`select`,`toggle`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=Gx(),{getItems:o}=Su(),c=s(()=>!!a.getChildren(r.value)),u=s(()=>{let e=a.getKey(r.value);return a.expanded.value.includes(e)}),d=s(()=>{let e=a.getKey(r.value);return a.selectedKeys.value.includes(e)}),f=s(()=>{if(a.propagateSelect.value&&d.value&&c.value&&Array.isArray(a.modelValue.value))return!Wx(a.getChildren(r.value)||[]).every(e=>a.modelValue.value.find(t=>a.getKey(t)===a.getKey(e)))});function p(e){if(c.value)if(u.value){let e=o().map(e=>e.ref),t=Y(),n=e.indexOf(t),i=[...e].slice(n).find(e=>Number(e.getAttribute(`data-indent`))===r.level+1);i&&i.focus()}else y(e)}function h(e){if(u.value)y(e);else{let e=o().map(e=>e.ref),t=Y(),n=e.indexOf(t),i=[...e].slice(0,n).reverse().find(e=>Number(e.getAttribute(`data-indent`))===r.level-1);i&&i.focus()}}async function g(e){i(`select`,e),!(e!=null&&e.defaultPrevented)&&a.onSelect(r.value)}async function _(e){i(`toggle`,e),!(e!=null&&e.defaultPrevented)&&a.onToggle(r.value)}async function v(e){if(!e)return;let t={originalEvent:e,value:r.value,isExpanded:u.value,isSelected:d.value};Sa(Jx,g,t)}async function y(e){if(!e)return;let t={originalEvent:e,value:r.value,isExpanded:u.value,isSelected:d.value};Sa(Yx,_,t)}return t({isExpanded:u,isSelected:d,isIndeterminate:f,handleToggle:()=>a.onToggle(r.value),handleSelect:()=>a.onSelect(r.value)}),(e,t)=>(L(),l(V(md),{"as-child":``,value:e.value,"allow-shift-key":``},{default:W(()=>[m(V(Q),j(e.$attrs,{role:`treeitem`,as:e.as,"as-child":e.asChild,"aria-selected":d.value,"aria-expanded":c.value?u.value:void 0,"aria-level":e.level,"data-indent":e.level,"data-selected":d.value?``:void 0,"data-expanded":u.value?``:void 0,onKeydown:[G(K(v,[`self`,`prevent`]),[`enter`,`space`]),t[0]||=G(K(e=>V(a).dir.value===`ltr`?p(e):h(e),[`prevent`]),[`right`]),t[1]||=G(K(e=>V(a).dir.value===`ltr`?h(e):p(e),[`prevent`]),[`left`])],onClick:t[2]||=K(e=>{v(e),y(e)},[`stop`])}),{default:W(()=>[z(e.$slots,`default`,{isExpanded:u.value,isSelected:d.value,isIndeterminate:f.value,handleSelect:()=>V(a).onSelect(e.value),handleToggle:()=>V(a).onToggle(e.value)})]),_:3},16,[`as`,`as-child`,`aria-selected`,`aria-expanded`,`aria-level`,`data-indent`,`data-selected`,`data-expanded`,`onKeydown`])]),_:3},8,[`value`]))}}),Zx=g({__name:`TreeVirtualizer`,props:{estimateSize:{},textContent:{type:Function}},setup(e){let n=e,r=Te(),i=Gx(),o=zo(),{getItems:c}=Su(),u=vo(``,1e3),d=s(()=>{let e=e=>n.textContent?n.textContent(e):e.toString().toLowerCase();return i.expandedItems.value.map((t,n)=>({index:n,textContent:e(t.value)}))});i.isVirtual.value=!0;let p=s(()=>{let e=o.value;if(e){let t=window.getComputedStyle(e);return{start:Number.parseFloat(t.paddingBlockStart||t.paddingTop),end:Number.parseFloat(t.paddingBlockEnd||t.paddingBottom)}}else return{start:0,end:0}}),m=Im({get scrollPaddingStart(){return p.value.start},get scrollPaddingEnd(){return p.value.end},get count(){return i.expandedItems.value.length??0},get horizontal(){return!1},getItemKey(e){return e+i.getKey(i.expandedItems.value[e].value)},estimateSize(){return n.estimateSize??28},getScrollElement(){return o.value},overscan:12}),h=s(()=>m.value.getVirtualItems().map(e=>({item:e,is:a(r.default({item:i.expandedItems.value[e.index],virtualizer:m.value,virtualItem:e})[0],{"data-index":e.index,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})})));function g(e){m.value.scrollToIndex(e,{align:`start`}),requestAnimationFrame(()=>{let t=o.value.querySelector(`[data-index="${e}"]`);t instanceof HTMLElement&&t.focus()})}return i.virtualKeydownHook.on(e=>{var t;let n=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!n)return;let r=od[e.key];if([`first`,`last`].includes(r)){e.preventDefault();let t=r===`first`?0:i.expandedItems.value.length-1;m.value.scrollToIndex(t),requestAnimationFrame(()=>{let e=c();(r===`first`?e[0]:e[e.length-1]).ref.focus()})}else if(r===`prev`&&e.key!==`ArrowUp`){let e=Y(),t=Number(e.getAttribute(`data-index`)),n=Number(e.getAttribute(`data-indent`)),r=i.expandedItems.value.slice(0,t).map((e,t)=>({...e,index:t})).reverse().find(e=>e.level===n-1);r&&g(r.index)}else if(!r&&!n){u.value+=e.key;let n=Number((t=Y())?.getAttribute(`data-index`)),r=d.value[n].textContent,i=d.value.map(e=>e.textContent),a=Bs(i,u.value,r),o=d.value.find(e=>e.textContent===a);o&&g(o.index)}N(()=>{e.shiftKey&&r&&i.handleMultipleReplace(r,Y(),c,i.expandedItems.value.map(e=>e.value))})}),(e,n)=>(L(),f(`div`,{"data-radix-vue-virtualizer":``,style:F({position:`relative`,width:`100%`,height:`${V(m).getTotalSize()}px`})},[(L(!0),f(t,null,de(h.value,({is:e,item:t})=>(L(),l(fe(e),{key:t.key}))),128))],4))}}),Qx=g({__name:`Viewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e){let n=e,{forwardRef:r}=X(),{nonce:i}=B(n),a=zu(i);return(e,i)=>(L(),f(t,null,[m(V(Q),j({...e.$attrs,...n},{ref:V(r),"data-radix-viewport":``,role:`presentation`,style:{position:`relative`,flex:1,overflow:`auto`}}),{default:W(()=>[z(e.$slots,`default`)]),_:3},16),m(V(Q),{as:`style`,nonce:V(a)},{default:W(()=>[p(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-radix-viewport]::-webkit-scrollbar { display: none; } `)]),_:1},8,[`nonce`])],64))}});export{al as $u,dl as Av,sl as Bu,vl as Fv,Hx as Gg,Px as Hg,gc as Iv,gl as Mv,yl as Nv,ml as Ov,rl as Pu,ll as Tv,Vx as Ug,_l as Vv,Lx as Wg,Rx as jg,hl as kv,pc as nu,Ux as qg}; \ No newline at end of file diff --git a/assets/dist-NaQNo8Nw.js b/assets/dist-NaQNo8Nw.js new file mode 100644 index 0000000000000000000000000000000000000000..849200b21f3024e004ecc88cda1fcb458fb597a4 --- /dev/null +++ b/assets/dist-NaQNo8Nw.js @@ -0,0 +1,16 @@ +import{ac as e,ad as t,ae as n,af as r,ag as i,ah as a,ai as o,aj as s,ak as c,al as l,am as u,an as d,ao as f,ap as p,c$ as m,cU as h,cW as g,cX as _,d$ as v,d0 as y,d1 as b,d2 as x,d3 as S,d4 as C,d5 as w,d6 as T,d7 as E,d8 as D,d9 as O,dA as k,dB as A,dD as j,dE as M,dF as N,dH as P,dI as F,dJ as ee,dK as I,dL as te,dN as ne,dO as re,dP as L,dQ as ie,dR as ae,dS as oe,dT as se,dU as ce,dV as R,dY as le,dZ as ue,d_ as de,da as z,db as B,dc as fe,dd as pe,de as V,df as me,dh as he,di as ge,dj as _e,dk as ve,dl as ye,dm as H,dn as U,dp as W,dq as be,dr as xe,du as Se,dv as G,dw as Ce,dx as we,dy as Te,dz as Ee,e0 as De,e1 as Oe,e3 as ke,e4 as K,e5 as Ae}from"./index-C9kcCpP-.js";function je(){return typeof window<`u`}function Me(e){return Fe(e)?(e.nodeName||``).toLowerCase():`#document`}function Ne(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Pe(e){var t;return(t=(Fe(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Fe(e){return je()?e instanceof Node||e instanceof Ne(e).Node:!1}function Ie(e){return je()?e instanceof Element||e instanceof Ne(e).Element:!1}function Le(e){return je()?e instanceof HTMLElement||e instanceof Ne(e).HTMLElement:!1}function Re(e){return!je()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof Ne(e).ShadowRoot}function ze(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Ke(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&![`inline`,`contents`].includes(i)}function Be(e){return[`table`,`td`,`th`].includes(Me(e))}function Ve(e){return[`:popover-open`,`:modal`].some(t=>{try{return e.matches(t)}catch{return!1}})}function He(e){let t=We(),n=Ie(e)?Ke(e):e;return[`transform`,`translate`,`scale`,`rotate`,`perspective`].some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`].some(e=>(n.willChange||``).includes(e))||[`paint`,`layout`,`strict`,`content`].some(e=>(n.contain||``).includes(e))}function Ue(e){let t=Je(e);for(;Le(t)&&!Ge(t);){if(He(t))return t;if(Ve(t))return null;t=Je(t)}return null}function We(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}function Ge(e){return[`html`,`body`,`#document`].includes(Me(e))}function Ke(e){return Ne(e).getComputedStyle(e)}function qe(e){return Ie(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Je(e){if(Me(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Re(e)&&e.host||Pe(e);return Re(t)?t.host:t}function Ye(e){let t=Je(e);return Ge(t)?e.ownerDocument?e.ownerDocument.body:e.body:Le(t)&&ze(t)?t:Ye(t)}function Xe(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);let i=Ye(e),a=i===(r=e.ownerDocument)?.body,o=Ne(i);if(a){let e=Ze(o);return t.concat(o,o.visualViewport||[],ze(i)?i:[],e&&n?Xe(e):[])}return t.concat(i,Xe(i,[],n))}function Ze(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Qe(e){let t=Ke(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=Le(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=u(n)!==a||u(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function $e(e){return Ie(e)?e:e.contextElement}function et(e){let t=$e(e);if(!Le(t))return f(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Qe(t),o=(a?u(n.width):n.width)/r,s=(a?u(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}const tt=f(0);function nt(e){let t=Ne(e);return!We()||!t.visualViewport?tt:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function rt(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Ne(e)?!1:t}function it(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=$e(e),o=f(1);t&&(r?Ie(r)&&(o=et(r)):o=et(e));let s=rt(a,n,r)?nt(a):f(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=Ne(a),t=r&&Ie(r)?Ne(r):r,n=e,i=Ze(n);for(;i&&r&&t!==n;){let e=et(i),t=i.getBoundingClientRect(),r=Ke(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=Ne(i),i=Ze(n)}}return p({width:u,height:d,x:c,y:l})}function at(e,t){let n=qe(e).scrollLeft;return t?t.left+n:it(Pe(e)).left+n}function ot(e,t,n){n===void 0&&(n=!1);let r=e.getBoundingClientRect(),i=r.left+t.scrollLeft-(n?0:at(e,r)),a=r.top+t.scrollTop;return{x:i,y:a}}function st(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=Pe(r),s=t?Ve(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=f(1),u=f(0),d=Le(r);if((d||!d&&!a)&&((Me(r)!==`body`||ze(o))&&(c=qe(r)),Le(r))){let e=it(r);l=et(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let p=o&&!d&&!a?ot(o,c,!0):f(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+p.x,y:n.y*l.y-c.scrollTop*l.y+u.y+p.y}}function ct(e){return Array.from(e.getClientRects())}function lt(e){let t=Pe(e),n=qe(e),r=e.ownerDocument.body,i=l(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=l(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+at(e),s=-n.scrollTop;return Ke(r).direction===`rtl`&&(o+=l(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}function ut(e,t){let n=Ne(e),r=Pe(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=We();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s,y:c}}function dt(e,t){let n=it(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Le(e)?et(e):f(1),o=e.clientWidth*a.x,s=e.clientHeight*a.y,c=i*a.x,l=r*a.y;return{width:o,height:s,x:c,y:l}}function ft(e,t,n){let r;if(t===`viewport`)r=ut(e,n);else if(t===`document`)r=lt(Pe(e));else if(Ie(t))r=dt(t,n);else{let n=nt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return p(r)}function pt(e,t){let n=Je(e);return n===t||!Ie(n)||Ge(n)?!1:Ke(n).position===`fixed`||pt(n,t)}function mt(e,t){let n=t.get(e);if(n)return n;let r=Xe(e,[],!1).filter(e=>Ie(e)&&Me(e)!==`body`),i=null,a=Ke(e).position===`fixed`,o=a?Je(e):e;for(;Ie(o)&&!Ge(o);){let t=Ke(o),n=He(o);!n&&t.position===`fixed`&&(i=null);let s=a?!n&&!i:!n&&t.position===`static`&&!!i&&[`absolute`,`fixed`].includes(i.position)||ze(o)&&!n&&pt(e,o);s?r=r.filter(e=>e!==o):i=t,o=Je(o)}return t.set(e,r),r}function ht(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=n===`clippingAncestors`?Ve(t)?[]:mt(t,this._c):[].concat(n),o=[...a,r],s=o[0],u=o.reduce((e,n)=>{let r=ft(t,n,i);return e.top=l(r.top,e.top),e.right=c(r.right,e.right),e.bottom=c(r.bottom,e.bottom),e.left=l(r.left,e.left),e},ft(t,s,i));return{width:u.right-u.left,height:u.bottom-u.top,x:u.left,y:u.top}}function gt(e){let{width:t,height:n}=Qe(e);return{width:t,height:n}}function _t(e,t,n){let r=Le(t),i=Pe(t),a=n===`fixed`,o=it(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=f(0);if(r||!r&&!a)if((Me(t)!==`body`||ze(i))&&(s=qe(t)),r){let e=it(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&(c.x=at(i));let l=i&&!r&&!a?ot(i,s):f(0),u=o.left+s.scrollLeft-c.x-l.x,d=o.top+s.scrollTop-c.y-l.y;return{x:u,y:d,width:o.width,height:o.height}}function vt(e){return Ke(e).position===`static`}function yt(e,t){if(!Le(e)||Ke(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return Pe(e)===n&&(n=n.ownerDocument.body),n}function bt(e,t){let n=Ne(e);if(Ve(e))return n;if(!Le(e)){let t=Je(e);for(;t&&!Ge(t);){if(Ie(t)&&!vt(t))return t;t=Je(t)}return n}let r=yt(e,t);for(;r&&Be(r)&&vt(r);)r=yt(r,t);return r&&Ge(r)&&vt(r)&&!He(r)?n:r||Ue(e)||n}const xt=async function(e){let t=this.getOffsetParent||bt,n=this.getDimensions,r=await n(e.floating);return{reference:_t(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function St(e){return Ke(e).direction===`rtl`}const Ct={convertOffsetParentRelativeRectToViewportRelativeRect:st,getDocumentElement:Pe,getClippingRect:ht,getOffsetParent:bt,getElementRects:xt,getClientRects:ct,getDimensions:gt,getScale:et,isElement:Ie,isRTL:St};function wt(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Tt(e,t){let n=null,r,i=Pe(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,u){s===void 0&&(s=!1),u===void 0&&(u=1),a();let f=e.getBoundingClientRect(),{left:p,top:m,width:h,height:g}=f;if(s||t(),!h||!g)return;let _=d(m),v=d(i.clientWidth-(p+h)),y=d(i.clientHeight-(m+g)),b=d(p),x=-_+`px `+-v+`px `+-y+`px `+-b+`px`,S={rootMargin:x,threshold:l(0,c(1,u))||1},C=!0;function w(t){let n=t[0].intersectionRatio;if(n!==u){if(!C)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!wt(f,e.getBoundingClientRect())&&o(),C=!1}try{n=new IntersectionObserver(w,{...S,root:i.ownerDocument})}catch{n=new IntersectionObserver(w,S)}n.observe(e)}return o(!0),a}function Et(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=$e(e),u=i||a?[...l?Xe(l):[],...Xe(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?Tt(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?it(e):null;c&&g();function g(){let t=it(e);h&&!wt(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}const Dt=i,Ot=o,kt=s,At=n,jt=r,Mt=a,Nt=t,Pt=(t,n,r)=>{let i=new Map,a={platform:Ct,...r},o={...a.platform,_c:i};return e(t,n,{...a,platform:o})};function Ft(e){return typeof e==`object`&&!!e&&`$el`in e}function It(e){if(Ft(e)){let t=e.$el;return Fe(t)&&Me(t)===`#comment`?null:t}return e}function Lt(e){return typeof e==`function`?e():R(e)}function Rt(e){return{name:`arrow`,options:e,fn(t){let n=It(Lt(e.element));return n==null?{}:Mt({element:n,padding:e.padding}).fn(t)}}}function zt(e){if(typeof window>`u`)return 1;let t=e.ownerDocument.defaultView||window;return t.devicePixelRatio||1}function Bt(e,t){let n=zt(e);return Math.round(t*n)/n}function Vt(e,t,n){n===void 0&&(n={});let r=n.whileElementsMounted,i=G(()=>{var e;return(e=Lt(n.open))??!0}),a=G(()=>Lt(n.middleware)),o=G(()=>{var e;return(e=Lt(n.placement))??`bottom`}),s=G(()=>{var e;return(e=Lt(n.strategy))??`absolute`}),c=G(()=>{var e;return(e=Lt(n.transform))??!0}),l=G(()=>It(e.value)),u=G(()=>It(t.value)),d=I(0),f=I(0),p=I(s.value),m=I(o.value),h=te({}),g=I(!1),_=G(()=>{let e={position:p.value,left:`0`,top:`0`};if(!u.value)return e;let t=Bt(u.value,d.value),n=Bt(u.value,f.value);return c.value?{...e,transform:`translate(`+t+`px, `+n+`px)`,...zt(u.value)>=1.5&&{willChange:`transform`}}:{position:p.value,left:t+`px`,top:n+`px`}}),v;function y(){if(l.value==null||u.value==null)return;let e=i.value;Pt(l.value,u.value,{middleware:a.value,placement:o.value,strategy:s.value}).then(t=>{d.value=t.x,f.value=t.y,p.value=t.strategy,m.value=t.placement,h.value=t.middlewareData,g.value=e!==!1})}function b(){typeof v==`function`&&(v(),v=void 0)}function x(){if(b(),r===void 0){y();return}if(l.value!=null&&u.value!=null){v=r(l.value,u.value,y);return}}function S(){i.value||(g.value=!1)}return N([a,o,s,i],y,{flush:`sync`}),N([l,u],x,{flush:`sync`}),N(i,S,{flush:`sync`}),ae()&&ce(b),{x:de(d),y:de(f),strategy:de(p),placement:de(m),middlewareData:de(h),isPositioned:de(g),floatingStyles:_,update:y}}function Ht(e,t){return e-t*Math.floor(e/t)}const Ut=1721426;function Wt(e,t,n,r){t=Kt(e,t);let i=t-1,a=-2;return n<=2?a=0:Gt(t)&&(a=-1),Ut-1+365*i+Math.floor(i/4)-Math.floor(i/100)+Math.floor(i/400)+Math.floor((367*n-362)/12+a+r)}function Gt(e){return e%4==0&&(e%100!=0||e%400==0)}function Kt(e,t){return e===`BC`?1-t:t}function qt(e){let t=`AD`;return e<=0&&(t=`BC`,e=1-e),[t,e]}const Jt={standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]};var Yt=class{fromJulianDay(e){let t=e,n=t-Ut,r=Math.floor(n/146097),i=Ht(n,146097),a=Math.floor(i/36524),o=Ht(i,36524),s=Math.floor(o/1461),c=Ht(o,1461),l=Math.floor(c/365),u=r*400+a*100+s*4+l+(a!==4&&l!==4?1:0),[d,f]=qt(u),p=t-Wt(d,f,1,1),m=2;t0&&t===fn())return new Date(e).getTimezoneOffset()*-6e4;let{year:n,month:r,day:i,hour:a,minute:o,second:s}=Sn(e,t),c=yn(n,r,i,a,o,s,0);return c-Math.floor(e/1e3)*1e3}const xn=new Map;function Sn(e,t){let n=xn.get(t);n||(n=new Intl.DateTimeFormat(`en-US`,{timeZone:t,hour12:!1,era:`short`,year:`numeric`,month:`numeric`,day:`numeric`,hour:`numeric`,minute:`numeric`,second:`numeric`}),xn.set(t,n));let r=n.formatToParts(new Date(e)),i={};for(let e of r)e.type!==`literal`&&(i[e.type]=e.value);return{year:i.era===`BC`||i.era===`B`?-i.year+1:+i.year,month:+i.month,day:+i.day,hour:i.hour===`24`?0:+i.hour,minute:+i.minute,second:+i.second}}const Cn=864e5;function wn(e,t,n,r){let i=n===r?[n]:[n,r];return i.filter(n=>Tn(e,t,n))}function Tn(e,t,n){let r=Sn(n,t);return e.year===r.year&&e.month===r.month&&e.day===r.day&&e.hour===r.hour&&e.minute===r.minute&&e.second===r.second}function En(e,t,n=`compatible`){let r=An(e);if(t===`UTC`)return vn(r);if(t===fn()&&n===`compatible`){r=jn(r,new Yt);let e=new Date,t=Kt(r.era,r.year);return e.setFullYear(t,r.month-1,r.day),e.setHours(r.hour,r.minute,r.second,r.millisecond),e.getTime()}let i=vn(r),a=bn(i-Cn,t),o=bn(i+Cn,t),s=wn(r,t,i-a,i-o);if(s.length===1)return s[0];if(s.length>1)switch(n){case`compatible`:case`earlier`:return s[0];case`later`:return s[s.length-1];case`reject`:throw RangeError(`Multiple possible absolute times found`)}switch(n){case`earlier`:return Math.min(i-a,i-o);case`compatible`:case`later`:return Math.max(i-a,i-o);case`reject`:throw RangeError(`No such absolute time found`)}}function Dn(e,t,n=`compatible`){return new Date(En(e,t,n))}function On(e,t){let n=bn(e,t),r=new Date(e+n),i=r.getUTCFullYear(),a=r.getUTCMonth()+1,o=r.getUTCDate(),s=r.getUTCHours(),c=r.getUTCMinutes(),l=r.getUTCSeconds(),u=r.getUTCMilliseconds();return new vr(i<1?`BC`:`AD`,i<1?-i+1:i,a,o,t,n,s,c,l,u)}function kn(e){return new mr(e.calendar,e.era,e.year,e.month,e.day)}function An(e,t){let n=0,r=0,i=0,a=0;if(`timeZone`in e)({hour:n,minute:r,second:i,millisecond:a}=e);else if(`hour`in e&&!t)return e;return t&&({hour:n,minute:r,second:i,millisecond:a}=t),new gr(e.calendar,e.era,e.year,e.month,e.day,n,r,i,a)}function jn(e,t){if(tn(e.calendar,t))return e;let n=t.fromJulianDay(e.calendar.toJulianDay(e)),r=e.copy();return r.calendar=t,r.era=n.era,r.year=n.year,r.month=n.month,r.day=n.day,Vn(r),r}function Mn(e,t,n){if(e instanceof vr)return e.timeZone===t?e:Pn(e,t);let r=En(e,t,n);return On(r,t)}function Nn(e){let t=vn(e)-e.offset;return new Date(t)}function Pn(e,t){let n=vn(e)-e.offset;return jn(On(n,t),e.calendar)}const Fn=36e5;function In(e,t){let n=e.copy(),r=`hour`in n?Yn(n,t):0;Ln(n,t.years||0),n.calendar.balanceYearMonth&&n.calendar.balanceYearMonth(n,e),n.month+=t.months||0,Rn(n),Bn(n),n.day+=(t.weeks||0)*7,n.day+=t.days||0,n.day+=r,zn(n),n.calendar.balanceDate&&n.calendar.balanceDate(n),n.year<1&&(n.year=1,n.month=1,n.day=1);let i=n.calendar.getYearsInEra(n);if(n.year>i){var a,o;let e=(a=(o=n.calendar).isInverseEra)?.call(o,n);n.year=i,n.month=e?1:n.calendar.getMonthsInYear(n),n.day=e?1:n.calendar.getDaysInMonth(n)}n.month<1&&(n.month=1,n.day=1);let s=n.calendar.getMonthsInYear(n);return n.month>s&&(n.month=s,n.day=n.calendar.getDaysInMonth(n)),n.day=Math.max(1,Math.min(n.calendar.getDaysInMonth(n),n.day)),n}function Ln(e,t){var n,r;(n=(r=e.calendar).isInverseEra)?.call(r,e)&&(t=-t),e.year+=t}function Rn(e){for(;e.month<1;)Ln(e,-1),e.month+=e.calendar.getMonthsInYear(e);let t=0;for(;e.month>(t=e.calendar.getMonthsInYear(e));)e.month-=t,Ln(e,1)}function zn(e){for(;e.day<1;)e.month--,Rn(e),e.day+=e.calendar.getDaysInMonth(e);for(;e.day>e.calendar.getDaysInMonth(e);)e.day-=e.calendar.getDaysInMonth(e),e.month++,Rn(e)}function Bn(e){e.month=Math.max(1,Math.min(e.calendar.getMonthsInYear(e),e.month)),e.day=Math.max(1,Math.min(e.calendar.getDaysInMonth(e),e.day))}function Vn(e){e.calendar.constrainDate&&e.calendar.constrainDate(e),e.year=Math.max(1,Math.min(e.calendar.getYearsInEra(e),e.year)),Bn(e)}function Hn(e){let t={};for(let n in e)typeof e[n]==`number`&&(t[n]=-e[n]);return t}function Un(e,t){return In(e,Hn(t))}function Wn(e,t){let n=e.copy();return t.era!=null&&(n.era=t.era),t.year!=null&&(n.year=t.year),t.month!=null&&(n.month=t.month),t.day!=null&&(n.day=t.day),Vn(n),n}function Gn(e,t){let n=e.copy();return t.hour!=null&&(n.hour=t.hour),t.minute!=null&&(n.minute=t.minute),t.second!=null&&(n.second=t.second),t.millisecond!=null&&(n.millisecond=t.millisecond),qn(n),n}function Kn(e){e.second+=Math.floor(e.millisecond/1e3),e.millisecond=Jn(e.millisecond,1e3),e.minute+=Math.floor(e.second/60),e.second=Jn(e.second,60),e.hour+=Math.floor(e.minute/60),e.minute=Jn(e.minute,60);let t=Math.floor(e.hour/24);return e.hour=Jn(e.hour,24),t}function qn(e){e.millisecond=Math.max(0,Math.min(e.millisecond,1e3)),e.second=Math.max(0,Math.min(e.second,59)),e.minute=Math.max(0,Math.min(e.minute,59)),e.hour=Math.max(0,Math.min(e.hour,23))}function Jn(e,t){let n=e%t;return n<0&&(n+=t),n}function Yn(e,t){return e.hour+=t.hours||0,e.minute+=t.minutes||0,e.second+=t.seconds||0,e.millisecond+=t.milliseconds||0,Kn(e)}function Xn(e,t,n,r){let i=e.copy();switch(t){case`era`:{let t=e.calendar.getEras(),a=t.indexOf(e.era);if(a<0)throw Error(`Invalid era: `+e.era);a=Qn(a,n,0,t.length-1,r?.round),i.era=t[a],Vn(i);break}case`year`:var a,o;(a=(o=i.calendar).isInverseEra)?.call(o,i)&&(n=-n),i.year=Qn(e.year,n,-1/0,9999,r?.round),i.year===-1/0&&(i.year=1),i.calendar.balanceYearMonth&&i.calendar.balanceYearMonth(i,e);break;case`month`:i.month=Qn(e.month,n,1,e.calendar.getMonthsInYear(e),r?.round);break;case`day`:i.day=Qn(e.day,n,1,e.calendar.getDaysInMonth(e),r?.round);break;default:throw Error(`Unsupported field `+t)}return e.calendar.balanceDate&&e.calendar.balanceDate(i),Vn(i),i}function Zn(e,t,n,r){let i=e.copy();switch(t){case`hour`:{let t=e.hour,a=0,o=23;if(r?.hourCycle===12){let e=t>=12;a=e?12:0,o=e?23:11}i.hour=Qn(t,n,a,o,r?.round);break}case`minute`:i.minute=Qn(e.minute,n,0,59,r?.round);break;case`second`:i.second=Qn(e.second,n,0,59,r?.round);break;case`millisecond`:i.millisecond=Qn(e.millisecond,n,0,999,r?.round);break;default:throw Error(`Unsupported field `+t)}return i}function Qn(e,t,n,r,i=!1){if(i){e+=Math.sign(t),e0?Math.ceil(e/i)*i:Math.floor(e/i)*i,e>r&&(e=n)}else e+=t,er&&(e=n+(e-r-1));return e}function $n(e,t){let n;if(t.years!=null&&t.years!==0||t.months!=null&&t.months!==0||t.weeks!=null&&t.weeks!==0||t.days!=null&&t.days!==0){let r=In(An(e),{years:t.years,months:t.months,weeks:t.weeks,days:t.days});n=En(r,e.timeZone)}else n=vn(e)-e.offset;n+=t.milliseconds||0,n+=(t.seconds||0)*1e3,n+=(t.minutes||0)*6e4,n+=(t.hours||0)*36e5;let r=On(n,e.timeZone);return jn(r,e.calendar)}function er(e,t){return $n(e,Hn(t))}function tr(e,t,n,r){switch(t){case`hour`:{let t=0,i=23;if(r?.hourCycle===12){let n=e.hour>=12;t=n?12:0,i=n?23:11}let a=An(e),o=jn(Gn(a,{hour:t}),new Yt),s=[En(o,e.timeZone,`earlier`),En(o,e.timeZone,`later`)].filter(t=>On(t,e.timeZone).day===o.day)[0],c=jn(Gn(a,{hour:i}),new Yt),l=[En(c,e.timeZone,`earlier`),En(c,e.timeZone,`later`)].filter(t=>On(t,e.timeZone).day===c.day).pop(),u=vn(e)-e.offset,d=Math.floor(u/Fn),f=u%Fn;return u=Qn(d,n,Math.floor(s/Fn),Math.floor(l/Fn),r?.round)*Fn+f,jn(On(u,e.timeZone),e.calendar)}case`minute`:case`second`:case`millisecond`:return Zn(e,t,n,r);case`era`:case`year`:case`month`:case`day`:{let i=Xn(An(e),t,n,r),a=En(i,e.timeZone);return jn(On(a,e.timeZone),e.calendar)}default:throw Error(`Unsupported field `+t)}}function nr(e,t,n){let r=An(e),i=Gn(Wn(r,t),t);if(i.compare(r)===0)return e;let a=En(i,e.timeZone,n);return jn(On(a,e.timeZone),e.calendar)}const rr=[`hours`,`minutes`,`seconds`],ir=[`years`,`months`,`weeks`,`days`,...rr];function ar(e){return`${String(e.hour).padStart(2,`0`)}:${String(e.minute).padStart(2,`0`)}:${String(e.second).padStart(2,`0`)}${e.millisecond?String(e.millisecond/1e3).slice(1):``}`}function or(e){let t=jn(e,new Yt),n;return n=t.era===`BC`?t.year===1?`0000`:`-`+String(Math.abs(1-t.year)).padStart(6,`00`):String(t.year).padStart(4,`0`),`${n}-${String(t.month).padStart(2,`0`)}-${String(t.day).padStart(2,`0`)}`}function sr(e){return`${or(e)}T${ar(e)}`}function cr(e){let t=Math.sign(e)<0?`-`:`+`;e=Math.abs(e);let n=Math.floor(e/36e5),r=e%36e5/6e4;return`${t}${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`}function lr(e){return`${sr(e)}${cr(e.offset)}[${e.timeZone}]`}function ur(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function dr(e,t,n){ur(e,t),t.set(e,n)}function fr(e){let t=typeof e[0]==`object`?e.shift():new Yt,n;if(typeof e[0]==`string`)n=e.shift();else{let e=t.getEras();n=e[e.length-1]}let r=e.shift(),i=e.shift(),a=e.shift();return[t,n,r,i,a]}var pr=new WeakMap,mr=class e{copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day):new e(this.calendar,this.year,this.month,this.day)}add(e){return In(this,e)}subtract(e){return Un(this,e)}set(e){return Wn(this,e)}cycle(e,t,n){return Xn(this,e,t,n)}toDate(e){return Dn(this,e)}toString(){return or(this)}compare(e){return cn(this,e)}constructor(...e){dr(this,pr,{writable:!0,value:void 0});let[t,n,r,i,a]=fr(e);this.calendar=t,this.era=n,this.year=r,this.month=i,this.day=a,Vn(this)}},hr=new WeakMap,gr=class e{copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond):new e(this.calendar,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond)}add(e){return In(this,e)}subtract(e){return Un(this,e)}set(e){return Wn(Gn(this,e),e)}cycle(e,t,n){switch(e){case`era`:case`year`:case`month`:case`day`:return Xn(this,e,t,n);default:return Zn(this,e,t,n)}}toDate(e,t){return Dn(this,e,t)}toString(){return sr(this)}compare(e){let t=cn(this,e);return t===0?ln(this,An(e)):t}constructor(...e){dr(this,hr,{writable:!0,value:void 0});let[t,n,r,i,a]=fr(e);this.calendar=t,this.era=n,this.year=r,this.month=i,this.day=a,this.hour=e.shift()||0,this.minute=e.shift()||0,this.second=e.shift()||0,this.millisecond=e.shift()||0,Vn(this)}},_r=new WeakMap,vr=class e{copy(){return this.era?new e(this.calendar,this.era,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond):new e(this.calendar,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond)}add(e){return $n(this,e)}subtract(e){return er(this,e)}set(e,t){return nr(this,e,t)}cycle(e,t,n){return tr(this,e,t,n)}toDate(){return Nn(this)}toString(){return lr(this)}toAbsoluteString(){return this.toDate().toISOString()}compare(e){return this.toDate().getTime()-Mn(e,this.timeZone).toDate().getTime()}constructor(...e){dr(this,_r,{writable:!0,value:void 0});let[t,n,r,i,a]=fr(e),o=e.shift(),s=e.shift();this.calendar=t,this.era=n,this.year=r,this.month=i,this.day=a,this.timeZone=o,this.offset=s,this.hour=e.shift()||0,this.minute=e.shift()||0,this.second=e.shift()||0,this.millisecond=e.shift()||0,Vn(this)}};const yr=[[1868,9,8],[1912,7,30],[1926,12,25],[1989,1,8],[2019,5,1]],br=[[1912,7,29],[1926,12,24],[1989,1,7],[2019,4,30]],xr=[1867,1911,1925,1988,2018],Sr=[`meiji`,`taisho`,`showa`,`heisei`,`reiwa`];function Cr(e){let t=yr.findIndex(([t,n,r])=>e.year=0){let[,n,r]=yr[t];e.month=Math.max(n,e.month),e.month===n&&(e.day=Math.max(r,e.day))}}getEras(){return Sr}getYearsInEra(e){let t=Sr.indexOf(e.era),n=yr[t],r=yr[t+1];if(r==null)return 9999-n[0]+1;let i=r[0]-n[0];return(e.month0?[`minguo`,t]:[`before_minguo`,1-t]}var Nr=class extends Yt{fromJulianDay(e){let t=super.fromJulianDay(e),n=Kt(t.era,t.year),[r,i]=Mr(n);return new mr(this,r,i,t.month,t.day)}toJulianDay(e){return super.toJulianDay(Pr(e))}getEras(){return[`before_minguo`,`minguo`]}balanceDate(e){let[t,n]=Mr(jr(e));e.era=t,e.year=n}isInverseEra(e){return e.era===`before_minguo`}getDaysInMonth(e){return super.getDaysInMonth(Pr(e))}getYearsInEra(e){return e.era===`before_minguo`?9999:9999-Ar}constructor(...e){super(...e),this.identifier=`roc`}};function Pr(e){let[t,n]=qt(jr(e));return new mr(t,n,e.month,e.day)}const Fr=1948320,Ir=[0,31,62,93,124,155,186,216,246,276,306,336];var Lr=class{fromJulianDay(e){let t=e-Fr,n=1+Math.floor((33*t+3)/12053),r=365*(n-1)+Math.floor((8*n+21)/33),i=t-r,a=i<216?Math.floor(i/31):Math.floor((i-6)/30),o=i-Ir[a]+1;return new mr(this,n,a+1,o)}toJulianDay(e){let t=Fr-1+365*(e.year-1)+Math.floor((8*e.year+21)/33);return t+=Ir[e.month-1],t+=e.day,t}getMonthsInYear(){return 12}getDaysInMonth(e){if(e.month<=6)return 31;if(e.month<=11)return 30;let t=Ht(25*e.year+11,33)<8;return t?30:29}getEras(){return[`AP`]}getYearsInEra(){return 9377}constructor(){this.identifier=`persian`}};const Rr=78,zr=80;var Br=class extends Yt{fromJulianDay(e){let t=super.fromJulianDay(e),n=t.year-Rr,r=e-Wt(t.era,t.year,1,1),i;r=8&&(a+=(e.month-7)*30),a+=e.day-1,a)}getDaysInMonth(e){return e.month===1&&Gt(e.year+Rr)||e.month>=2&&e.month<=6?31:30}getYearsInEra(){return 9919}getEras(){return[`saka`]}balanceDate(){}constructor(...e){super(...e),this.identifier=`indian`}};const Vr=1948440,Hr=1948439,Ur=1300,Wr=1600,Gr=460322;function Kr(e,t,n,r){return r+Math.ceil(29.5*(n-1))+(t-1)*354+Math.floor((3+11*t)/30)+e-1}function qr(e,t,n){let r=Math.floor((30*(n-t)+10646)/10631),i=Math.min(12,Math.ceil((n-(29+Kr(t,r,1,1)))/29.5)+1),a=n-Kr(t,r,i,1)+1;return new mr(e,r,i,a)}function Jr(e){return(14+11*e)%30<11}var Yr=class{fromJulianDay(e){return qr(this,Vr,e)}toJulianDay(e){return Kr(Vr,e.year,e.month,e.day)}getDaysInMonth(e){let t=29+e.month%2;return e.month===12&&Jr(e.year)&&t++,t}getMonthsInYear(){return 12}getDaysInYear(e){return Jr(e.year)?355:354}getYearsInEra(){return 9665}getEras(){return[`AH`]}constructor(){this.identifier=`islamic-civil`}},Xr=class extends Yr{fromJulianDay(e){return qr(this,Hr,e)}toJulianDay(e){return Kr(Hr,e.year,e.month,e.day)}constructor(...e){super(...e),this.identifier=`islamic-tbla`}};const Zr=`qgpUDckO1AbqBmwDrQpVBakGkgepC9QF2gpcBS0NlQZKB1QLagutBa4ETwoXBYsGpQbVCtYCWwmdBE0KJg2VDawFtgm6AlsKKwWVCsoG6Qr0AnYJtgJWCcoKpAvSC9kF3AJtCU0FpQpSC6ULtAW2CVcFlwJLBaMGUgdlC2oFqworBZUMSg2lDcoF1gpXCasESwmlClILagt1BXYCtwhbBFUFqQW0BdoJ3QRuAjYJqgpUDbIN1QXaAlsJqwRVCkkLZAtxC7QFtQpVCiUNkg7JDtQG6QprCasEkwpJDaQNsg25CroEWworBZUKKgtVC1wFvQQ9Ah0JlQpKC1oLbQW2AjsJmwRVBqkGVAdqC2wFrQpVBSkLkgupC9QF2gpaBasKlQVJB2QHqgu1BbYCVgpNDiULUgtqC60FrgIvCZcESwalBqwG1gpdBZ0ETQoWDZUNqgW1BdoCWwmtBJUFygbkBuoK9QS2AlYJqgpUC9IL2QXqAm0JrQSVCkoLpQuyBbUJ1gSXCkcFkwZJB1ULagVrCisFiwpGDaMNygXWCtsEawJLCaUKUgtpC3UFdgG3CFsCKwVlBbQF2gntBG0BtgimClINqQ3UBdoKWwmrBFMGKQdiB6kLsgW1ClUFJQuSDckO0gbpCmsFqwRVCikNVA2qDbUJugQ7CpsETQqqCtUK2gJdCV4ELgqaDFUNsga5BroEXQotBZUKUguoC7QLuQXaAloJSgukDdEO6AZqC20FNQWVBkoNqA3UDdoGWwWdAisGFQtKC5ULqgWuCi4JjwwnBZUGqgbWCl0FnQI=`;let Qr,$r;function ei(e){return Gr+$r[e-Ur]}function ti(e,t){let n=e-Ur,r=1<<11-(t-1);return(Qr[n]&r)===0?29:30}function ni(e,t){let n=ei(e);for(let r=1;rr)return super.fromJulianDay(e);{let e=Ur-1,n=1,r=1;for(;r>0;){e++,r=t-ei(e)+1;let i=ri(e);if(r===i){n=12;break}else if(rt;)r-=t,n++,t=ti(e,n);break}}return new mr(this,e,n,t-ni(e,n)+1)}}toJulianDay(e){return e.yearWr?super.toJulianDay(e):Vr+ni(e.year,e.month)+(e.day-1)}getDaysInMonth(e){return e.yearWr?super.getDaysInMonth(e):ti(e.year,e.month)}getDaysInYear(e){return e.yearWr?super.getDaysInYear(e):ri(e.year)}constructor(){if(super(),this.identifier=`islamic-umalqura`,Qr||=new Uint16Array(Uint8Array.from(atob(Zr),e=>e.charCodeAt(0)).buffer),!$r){$r=new Uint32Array(Wr-Ur+1);let e=0;for(let t=Ur;t<=Wr;t++){$r[t-Ur]=e;for(let n=1;n<=12;n++)e+=ti(t,n)}}}};const ai=347997,oi=1080,si=24*oi,ci=29,li=12*oi+793,ui=ci*si+li;function di(e){return Ht(e*7+1,19)<7}function fi(e){let t=Math.floor((235*e-234)/19),n=12084+13753*t,r=t*29+Math.floor(n/25920);return Ht(3*(r+1),7)<3&&(r+=1),r}function pi(e){let t=fi(e-1),n=fi(e),r=fi(e+1);return r-n===356?2:n-t===382?1:0}function mi(e){return fi(e)+pi(e)}function hi(e){return mi(e+1)-mi(e)}function gi(e){let t=hi(e);switch(t>380&&(t-=30),t){case 353:return 0;case 354:return 1;case 355:return 2}}function _i(e,t){if(t>=6&&!di(e)&&t++,t===4||t===7||t===9||t===11||t===13)return 29;let n=gi(e);return t===2?n===2?30:29:t===3?n===0?29:30:t===6?di(e)?30:0:30}var vi=class{fromJulianDay(e){let t=e-ai,n=t*si/ui,r=Math.floor((19*n+234)/235)+1,i=mi(r),a=Math.floor(t-i);for(;a<1;)r--,i=mi(r),a=Math.floor(t-i);let o=1,s=0;for(;s6?e.month--:!di(t.year)&&di(e.year)&&t.month>6&&e.month++)}constructor(){this.identifier=`hebrew`}};const yi=1723856,bi=1824665,xi=5500;function Si(e,t,n,r){return e+365*t+Math.floor(t/4)+30*(n-1)+r-1}function Ci(e,t){let n=Math.floor(4*(t-e)/1461),r=1+Math.floor((t-Si(e,n,1,1))/30),i=t+1-Si(e,n,r,1);return[n,r,i]}function wi(e){return Math.floor(e%4/3)}function Ti(e,t){return t%13==0?wi(e)+5:30}var Ei=class{fromJulianDay(e){let[t,n,r]=Ci(yi,e),i=`AM`;return t<=0&&(i=`AA`,t+=xi),new mr(this,i,t,n,r)}toJulianDay(e){let t=e.year;return e.era===`AA`&&(t-=xi),Si(yi,t,e.month,e.day)}getDaysInMonth(e){return Ti(e.year,e.month)}getMonthsInYear(){return 13}getDaysInYear(e){return 365+wi(e.year)}getYearsInEra(e){return e.era===`AA`?9999:9991}getEras(){return[`AA`,`AM`]}constructor(){this.identifier=`ethiopic`}},Di=class extends Ei{fromJulianDay(e){let[t,n,r]=Ci(yi,e);return t+=xi,new mr(this,`AA`,t,n,r)}getEras(){return[`AA`]}getYearsInEra(){return 9999}constructor(...e){super(...e),this.identifier=`ethioaa`}},Oi=class extends Ei{fromJulianDay(e){let[t,n,r]=Ci(bi,e),i=`CE`;return t<=0&&(i=`BCE`,t=1-t),new mr(this,i,t,n,r)}toJulianDay(e){let t=e.year;return e.era===`BCE`&&(t=1-t),Si(bi,t,e.month,e.day)}getDaysInMonth(e){let t=e.year;return e.era===`BCE`&&(t=1-t),Ti(t,e.month)}isInverseEra(e){return e.era===`BCE`}balanceDate(e){e.year<=0&&(e.era=e.era===`BCE`?`CE`:`BCE`,e.year=1-e.year)}getEras(){return[`BCE`,`CE`]}getYearsInEra(e){return e.era===`BCE`?9999:9715}constructor(...e){super(...e),this.identifier=`coptic`}};function ki(e){switch(e){case`buddhist`:return new Or;case`ethiopic`:return new Ei;case`ethioaa`:return new Di;case`coptic`:return new Oi;case`hebrew`:return new vi;case`indian`:return new Br;case`islamic-civil`:return new Yr;case`islamic-tbla`:return new Xr;case`islamic-umalqura`:return new ii;case`japanese`:return new Tr;case`persian`:return new Lr;case`roc`:return new Nr;case`gregory`:default:return new Yt}}let Ai=new Map;var ji=class{format(e){return this.formatter.format(e)}formatToParts(e){return this.formatter.formatToParts(e)}formatRange(e,t){if(typeof this.formatter.formatRange==`function`)return this.formatter.formatRange(e,t);if(t= start date`);return`${this.formatter.format(e)} \u{2013} ${this.formatter.format(t)}`}formatRangeToParts(e,t){if(typeof this.formatter.formatRangeToParts==`function`)return this.formatter.formatRangeToParts(e,t);if(t= start date`);let n=this.formatter.formatToParts(e),r=this.formatter.formatToParts(t);return[...n.map(e=>({...e,source:`startRange`})),{type:`literal`,value:` – `,source:`shared`},...r.map(e=>({...e,source:`endRange`}))]}resolvedOptions(){let e=this.formatter.resolvedOptions();return Li()&&(this.resolvedHourCycle||=Ri(e.locale,this.options),e.hourCycle=this.resolvedHourCycle,e.hour12=this.resolvedHourCycle===`h11`||this.resolvedHourCycle===`h12`),e.calendar===`ethiopic-amete-alem`&&(e.calendar=`ethioaa`),e}constructor(e,t={}){this.formatter=Ni(e,t),this.options=t}};const Mi={true:{ja:`h11`},false:{}};function Ni(e,t={}){if(typeof t.hour12==`boolean`&&Fi()){t={...t};let n=Mi[String(t.hour12)][e.split(`-`)[0]],r=t.hour12?`h12`:`h23`;t.hourCycle=n??r,delete t.hour12}let n=e+(t?Object.entries(t).sort((e,t)=>e[0]e.type===`hour`).value,10),i=parseInt(n.formatToParts(new Date(2020,2,3,23)).find(e=>e.type===`hour`).value,10);if(r===0&&i===23)return`h23`;if(r===24&&i===23)return`h24`;if(r===0&&i===11)return`h11`;if(r===12&&i===11)return`h12`;throw Error(`Unexpected hour cycle result`)}let zi=new Map,Bi=!1;try{Bi=new Intl.NumberFormat(`de-DE`,{signDisplay:`exceptZero`}).resolvedOptions().signDisplay===`exceptZero`}catch{}let Vi=!1;try{Vi=new Intl.NumberFormat(`de-DE`,{style:`unit`,unit:`degree`}).resolvedOptions().style===`unit`}catch{}const Hi={degree:{narrow:{default:`°`,"ja-JP":` 度`,"zh-TW":`度`,"sl-SI":` °`}}};var Ui=class{format(e){let t=``;if(t=!Bi&&this.options.signDisplay!=null?Gi(this.numberFormatter,this.options.signDisplay,e):this.numberFormatter.format(e),this.options.style===`unit`&&!Vi){var n;let{unit:e,unitDisplay:r=`short`,locale:i}=this.resolvedOptions();if(!e)return t;let a=(n=Hi[e])?.[r];t+=a[i]||a.default}return t}formatToParts(e){return this.numberFormatter.formatToParts(e)}formatRange(e,t){if(typeof this.numberFormatter.formatRange==`function`)return this.numberFormatter.formatRange(e,t);if(t= start date`);return`${this.format(e)} \u{2013} ${this.format(t)}`}formatRangeToParts(e,t){if(typeof this.numberFormatter.formatRangeToParts==`function`)return this.numberFormatter.formatRangeToParts(e,t);if(t= start date`);let n=this.numberFormatter.formatToParts(e),r=this.numberFormatter.formatToParts(t);return[...n.map(e=>({...e,source:`startRange`})),{type:`literal`,value:` – `,source:`shared`},...r.map(e=>({...e,source:`endRange`}))]}resolvedOptions(){let e=this.numberFormatter.resolvedOptions();return!Bi&&this.options.signDisplay!=null&&(e={...e,signDisplay:this.options.signDisplay}),!Vi&&this.options.style===`unit`&&(e={...e,style:`unit`,unit:this.options.unit,unitDisplay:this.options.unitDisplay}),e}constructor(e,t={}){this.numberFormatter=Wi(e,t),this.options=t}};function Wi(e,t={}){let{numberingSystem:n}=t;if(n&&e.includes(`-nu-`)&&(e.includes(`-u-`)||(e+=`-u-`),e+=`-nu-${n}`),t.style===`unit`&&!Vi){var r;let{unit:e,unitDisplay:n=`short`}=t;if(!e)throw Error(`unit option must be provided with style: "unit"`);if(!(r=Hi[e])?.[n])throw Error(`Unsupported unit ${e} with unitDisplay = ${n}`);t={...t,style:`decimal`}}let i=e+(t?Object.entries(t).sort((e,t)=>e[0]0||Object.is(n,0):t===`exceptZero`&&(Object.is(n,-0)||Object.is(n,0)?n=Math.abs(n):r=n>0),r){let t=e.format(-n),r=e.format(n),i=t.replace(r,``).replace(/\u200e|\u061C/,``);[...i].length!==1&&console.warn(`@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case`);let a=t.replace(r,`!!!`).replace(i,`+`).replace(`!!!`,r);return a}else return e.format(n)}}const Ki=RegExp(`^.*\\(.*\\).*$`),qi=[`latn`,`arab`,`hanidec`,`deva`,`beng`];var Ji=class{parse(e){return Xi(this.locale,this.options,e).parse(e)}isValidPartialNumber(e,t,n){return Xi(this.locale,this.options,e).isValidPartialNumber(e,t,n)}getNumberingSystem(e){return Xi(this.locale,this.options,e).options.numberingSystem}constructor(e,t={}){this.locale=e,this.options=t}};const Yi=new Map;function Xi(e,t,n){let r=Zi(e,t);if(!e.includes(`-nu-`)&&!r.isValidPartialNumber(n)){for(let i of qi)if(i!==r.options.numberingSystem){let r=Zi(e+(e.includes(`-u-`)?`-nu-`:`-u-nu-`)+i,t);if(r.isValidPartialNumber(n))return r}}return r}function Zi(e,t){let n=e+(t?Object.entries(t).sort((e,t)=>e[0]-1&&(t=`-${t}`)}let n=t?+t:NaN;if(isNaN(n))return NaN;if(this.options.style===`percent`){var r,i;let e={...this.options,style:`decimal`,minimumFractionDigits:Math.min(((r=this.options.minimumFractionDigits)??0)+2,20),maximumFractionDigits:Math.min(((i=this.options.maximumFractionDigits)??0)+2,20)};return new Ji(this.locale,e).parse(new Ui(this.locale,e).format(n))}return this.options.currencySign===`accounting`&&Ki.test(e)&&(n=-1*n),n}sanitize(e){return e=e.replace(this.symbols.literals,``),this.symbols.minusSign&&(e=e.replace(`-`,this.symbols.minusSign)),this.options.numberingSystem===`arab`&&(this.symbols.decimal&&(e=e.replace(`,`,this.symbols.decimal),e=e.replace(`،`,this.symbols.decimal)),this.symbols.group&&(e=na(e,`.`,this.symbols.group))),this.options.locale===`fr-FR`&&(e=na(e,`.`,` `)),e}isValidPartialNumber(e,t=-1/0,n=1/0){return e=this.sanitize(e),this.symbols.minusSign&&e.startsWith(this.symbols.minusSign)&&t<0?e=e.slice(this.symbols.minusSign.length):this.symbols.plusSign&&e.startsWith(this.symbols.plusSign)&&n>0&&(e=e.slice(this.symbols.plusSign.length)),this.symbols.group&&e.startsWith(this.symbols.group)||this.symbols.decimal&&e.indexOf(this.symbols.decimal)>-1&&this.options.maximumFractionDigits===0?!1:(this.symbols.group&&(e=na(e,this.symbols.group,``)),e=e.replace(this.symbols.numeral,``),this.symbols.decimal&&(e=e.replace(this.symbols.decimal,``)),e.length===0)}constructor(e,t={}){this.locale=e,this.formatter=new Intl.NumberFormat(e,t),this.options=this.formatter.resolvedOptions(),this.symbols=ta(e,this.formatter,this.options,t);var n,r;this.options.style===`percent`&&(((n=this.options.minimumFractionDigits)??0)>18||((r=this.options.maximumFractionDigits)??0)>18)&&console.warn(`NumberParser cannot handle percentages with greater than 18 decimal places, please reduce the number in your options.`)}};const $i=new Set([`decimal`,`fraction`,`integer`,`minusSign`,`plusSign`,`group`]),ea=[0,4,2,1,11,20,3,7,100,21,.1,1.1];function ta(e,t,n,r){var i,a,o,s;let c=new Intl.NumberFormat(e,{...n,minimumSignificantDigits:1,maximumSignificantDigits:21,roundingIncrement:1,roundingPriority:`auto`,roundingMode:`halfExpand`}),l=c.formatToParts(-10000.111),u=c.formatToParts(10000.111),d=ea.map(e=>c.formatToParts(e));var f;let p=(f=(i=l.find(e=>e.type===`minusSign`))?.value)??`-`,m=(a=u.find(e=>e.type===`plusSign`))?.value;!m&&(r?.signDisplay===`exceptZero`||r?.signDisplay===`always`)&&(m=`+`);let h=new Intl.NumberFormat(e,{...n,minimumFractionDigits:2,maximumFractionDigits:2}).formatToParts(.001),g=(o=h.find(e=>e.type===`decimal`))?.value,_=(s=l.find(e=>e.type===`group`))?.value,v=l.filter(e=>!$i.has(e.type)).map(e=>ra(e.value)),y=d.flatMap(e=>e.filter(e=>!$i.has(e.type)).map(e=>ra(e.value))),b=[...new Set([...v,...y])].sort((e,t)=>t.length-e.length),x=b.length===0?RegExp(`[\\p{White_Space}]`,`gu`):RegExp(`${b.join(`|`)}|[\\p{White_Space}]`,`gu`),S=[...new Intl.NumberFormat(n.locale,{useGrouping:!1}).format(9876543210)].reverse(),C=new Map(S.map((e,t)=>[e,t])),w=RegExp(`[${S.join(``)}]`,`g`),T=e=>String(C.get(e));return{minusSign:p,plusSign:m,decimal:g,group:_,literals:x,numeral:w,index:T}}function na(e,t,n){return e.replaceAll?e.replaceAll(t,n):e.split(t).join(n)}function ra(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function ia(e,t){let n=[];for(let r=0;r0}function fa(e,t){return e.compare(t)<=0}function pa(e,t){return e.compare(t)>=0}function ma(e,t,n){return pa(e,t)&&fa(e,n)}function ha(e,t,n){return da(e,t)&&ua(e,n)}function ga(e,t,n){let r=an(e,n);return t>r?e.subtract({days:r+7-t}):t===r?e:e.subtract({days:r-t})}function _a(e,t,n){let r=an(e,n),i=t===0?6:t-1;return r===i?e:r>i?e.add({days:7-r+i}):e.add({days:i-r})}function va(e,t,n,r){if(n===void 0&&r===void 0)return!0;let i=e.add({days:1});if(r!=null&&r(i)||n!=null&&n(i))return!1;let a=t;for(;i.compare(a)<0;)if(i=i.add({days:1}),r!=null&&r(i)||n!=null&&n(i))return!1;return!0}function ya(e,t){let n=[],r=e.add({days:1}),i=t;for(;r.compare(i)<0;)n.push(r),r=r.add({days:1});return n}function ba(e){let{dateObj:t,weekStartsOn:n,fixedWeeks:r,locale:i}=e,a=la(t),o=Array.from({length:a},(e,n)=>t.set({day:n+1})),s=pn(t),c=mn(t),l=ga(s,n,i),u=_a(c,n,i),d=ya(l.subtract({days:1}),s),f=ya(c,u.add({days:1})),p=d.length+o.length+f.length;if(r&&p<42){let e=42-p,n=f[f.length-1];n||=mn(t);let r=Array.from({length:e},(e,t)=>{let r=t+1;return n.add({days:r})});f.push(...r)}let m=d.concat(o,f),h=ia(m,7);return{value:t,cells:m,rows:h}}function xa(e){let{numberOfMonths:t,dateObj:n,...r}=e,i=[];if(!t||t===1)return i.push(ba({...r,dateObj:n})),i;i.push(ba({...r,dateObj:n}));for(let e=1;e{let n=pe(r,t);if(n||n===null)return n;throw Error(`Injection \`${r.toString()}\` not found. Component must be used within ${Array.isArray(e)?`one of the following components: ${e.join(`, `)}`:`\`${e}\``}`)},e=>(b(r,e),e)]}function Sa(e,t,n){let r=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),r.dispatchEvent(i)}function Ca(e,t=-1/0,n=1/0){return Math.min(n,Math.max(t,e))}function wa(e,t){let n=e,r=t.toString(),i=r.indexOf(`.`),a=i>=0?r.length-i:0;if(a>0){let e=10**a;n=Math.round(n*e)/e}return n}function Ta(e,t,n,r){t=Number(t),n=Number(n);let i=(e-(Number.isNaN(t)?0:t))%r,a=wa(Math.abs(i)*2>=r?e+Math.sign(i)*(r-Math.abs(i)):e-i,r);return Number.isNaN(t)?!Number.isNaN(n)&&a>n&&(a=Math.floor(wa(n/r,r))*r):an&&(a=t+Math.floor(wa((n-t)/r,r))*r),a=wa(a,r),a}function Ea(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var Da=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n};const Oa=Ea(Da);function ka(e,t){if(e.length!==t.length)return!1;for(let n=0;nOa(e,t)),i=e.findIndex(e=>Oa(e,n));if(r===-1||i===-1)return[];let[a,o]=[r,i].sort((e,t)=>e-t);return e.slice(a,o+1)}const ja=typeof document<`u`;function Ma(e){return e==null}function Na(e){let{defaultValue:t,defaultPlaceholder:n,granularity:r=`day`,locale:i=`en`}=e;if(Array.isArray(t)&&t.length)return t.at(-1).copy();if(t&&!Array.isArray(t))return t.copy();if(n)return n.copy();let a=new Date,o=a.getFullYear(),s=a.getMonth()+1,c=a.getDate(),l=[`hour`,`minute`,`second`],u=new ji(i),d=ki(u.resolvedOptions().calendar);return l.includes(r??`day`)?jn(new gr(o,s,c,0,0,0),d):jn(new mr(o,s,c),d)}const Pa=`ach.af.am.an.ar.ast.az.be.bg.bn.br.bs.ca.cak.ckb.cs.cy.da.de.dsb.el.en.eo.es.et.eu.fa.ff.fi.fr.fy.ga.gd.gl.he.hr.hsb.hu.ia.id.it.ja.ka.kk.kn.ko.lb.lo.lt.lv.meh.ml.ms.nl.nn.no.oc.pl.pt.rm.ro.ru.sc.scn.sk.sl.sr.sv.szl.tg.th.tr.uk.zh-CN.zh-TW`.split(`.`),Fa=[`year`,`month`,`day`],Ia={ach:{year:`mwaka`,month:`dwe`,day:`nino`},af:{year:`jjjj`,month:`mm`,day:`dd`},am:{year:`ዓዓዓዓ`,month:`ሚሜ`,day:`ቀቀ`},an:{year:`aaaa`,month:`mm`,day:`dd`},ar:{year:`سنة`,month:`شهر`,day:`يوم`},ast:{year:`aaaa`,month:`mm`,day:`dd`},az:{year:`iiii`,month:`aa`,day:`gg`},be:{year:`гггг`,month:`мм`,day:`дд`},bg:{year:`гггг`,month:`мм`,day:`дд`},bn:{year:`yyyy`,month:`মিমি`,day:`dd`},br:{year:`bbbb`,month:`mm`,day:`dd`},bs:{year:`gggg`,month:`mm`,day:`dd`},ca:{year:`aaaa`,month:`mm`,day:`dd`},cak:{year:`jjjj`,month:`ii`,day:`q'q'`},ckb:{year:`ساڵ`,month:`مانگ`,day:`ڕۆژ`},cs:{year:`rrrr`,month:`mm`,day:`dd`},cy:{year:`bbbb`,month:`mm`,day:`dd`},da:{year:`åååå`,month:`mm`,day:`dd`},de:{year:`jjjj`,month:`mm`,day:`tt`},dsb:{year:`llll`,month:`mm`,day:`źź`},el:{year:`εεεε`,month:`μμ`,day:`ηη`},en:{year:`yyyy`,month:`mm`,day:`dd`},eo:{year:`jjjj`,month:`mm`,day:`tt`},es:{year:`aaaa`,month:`mm`,day:`dd`},et:{year:`aaaa`,month:`kk`,day:`pp`},eu:{year:`uuuu`,month:`hh`,day:`ee`},fa:{year:`سال`,month:`ماه`,day:`روز`},ff:{year:`hhhh`,month:`ll`,day:`ññ`},fi:{year:`vvvv`,month:`kk`,day:`pp`},fr:{year:`aaaa`,month:`mm`,day:`jj`},fy:{year:`jjjj`,month:`mm`,day:`dd`},ga:{year:`bbbb`,month:`mm`,day:`ll`},gd:{year:`bbbb`,month:`mm`,day:`ll`},gl:{year:`aaaa`,month:`mm`,day:`dd`},he:{year:`שנה`,month:`חודש`,day:`יום`},hr:{year:`gggg`,month:`mm`,day:`dd`},hsb:{year:`llll`,month:`mm`,day:`dd`},hu:{year:`éééé`,month:`hh`,day:`nn`},ia:{year:`aaaa`,month:`mm`,day:`dd`},id:{year:`tttt`,month:`bb`,day:`hh`},it:{year:`aaaa`,month:`mm`,day:`gg`},ja:{year:` 年 `,month:`月`,day:`日`},ka:{year:`წწწწ`,month:`თთ`,day:`რრ`},kk:{year:`жжжж`,month:`аа`,day:`кк`},kn:{year:`ವವವವ`,month:`ಮಿಮೀ`,day:`ದಿದಿ`},ko:{year:`연도`,month:`월`,day:`일`},lb:{year:`jjjj`,month:`mm`,day:`dd`},lo:{year:`ປປປປ`,month:`ດດ`,day:`ວວ`},lt:{year:`mmmm`,month:`mm`,day:`dd`},lv:{year:`gggg`,month:`mm`,day:`dd`},meh:{year:`aaaa`,month:`mm`,day:`dd`},ml:{year:`വർഷം`,month:`മാസം`,day:`തീയതി`},ms:{year:`tttt`,month:`mm`,day:`hh`},nl:{year:`jjjj`,month:`mm`,day:`dd`},nn:{year:`åååå`,month:`mm`,day:`dd`},no:{year:`åååå`,month:`mm`,day:`dd`},oc:{year:`aaaa`,month:`mm`,day:`jj`},pl:{year:`rrrr`,month:`mm`,day:`dd`},pt:{year:`aaaa`,month:`mm`,day:`dd`},rm:{year:`oooo`,month:`mm`,day:`dd`},ro:{year:`aaaa`,month:`ll`,day:`zz`},ru:{year:`гггг`,month:`мм`,day:`дд`},sc:{year:`aaaa`,month:`mm`,day:`dd`},scn:{year:`aaaa`,month:`mm`,day:`jj`},sk:{year:`rrrr`,month:`mm`,day:`dd`},sl:{year:`llll`,month:`mm`,day:`dd`},sr:{year:`гггг`,month:`мм`,day:`дд`},sv:{year:`åååå`,month:`mm`,day:`dd`},szl:{year:`rrrr`,month:`mm`,day:`dd`},tg:{year:`сссс`,month:`мм`,day:`рр`},th:{year:`ปปปป`,month:`ดด`,day:`วว`},tr:{year:`yyyy`,month:`aa`,day:`gg`},uk:{year:`рррр`,month:`мм`,day:`дд`},"zh-CN":{year:`年`,month:`月`,day:`日`},"zh-TW":{year:`年`,month:`月`,day:`日`}};function La(e){if(za(e))return Ia[e];{let t=Ua(e);return za(t)?Ia[t]:Ia.en}}function Ra(e,t,n){return Ba(e)?La(n)[e]:Ha(e)?t:Va(e)?`––`:``}function za(e){return Pa.includes(e)}function Ba(e){return Fa.includes(e)}function Va(e){return e===`hour`||e===`minute`||e===`second`}function Ha(e){return e===`era`||e===`dayPeriod`}function Ua(e){return Intl.Locale?new Intl.Locale(e).language:e.split(`-`)[0]}const Wa=[`day`,`month`,`year`],Ga=[`hour`,`minute`,`second`,`dayPeriod`],Ka=[...Wa,...Ga];function qa(e){return Wa.includes(e)}function Ja(e){return Ka.includes(e)}function Ya(e,t){let n={year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,timeZoneName:`short`,hourCycle:t===24?`h24`:void 0,hour12:t===24?!1:void 0};return e===`day`&&(delete n.second,delete n.hour,delete n.minute,delete n.timeZoneName),e===`hour`&&(delete n.minute,delete n.second),e===`minute`&&delete n.second,n}function Xa(e){let t=e.querySelector(`[data-selected]`);if(t)return t.focus();let n=e.querySelector(`[data-today]`);if(n)return n.focus();let r=e.querySelector(`[data-radix-vue-calendar-day]`);if(r)return r.focus()}function Za(e,t){var n;let r=te();return H(()=>{r.value=e()},{...t,flush:(n=void 0,`sync`)}),ue(r)}function Qa(e,t){let n,r,i,a=I(!0),o=()=>{a.value=!0,i()};N(e,o,{flush:`sync`});let s=typeof t==`function`?t:t.get,c=typeof t==`function`?void 0:t.set,l=ne((e,t)=>(r=e,i=t,{get(){return a.value&&(n=s(),a.value=!1),r(),n},set(e){c?.(e)}}));return Object.isExtensible(l)&&(l.trigger=o),l}function $a(e){return ae()?(ce(e),!0):!1}function eo(){let e=new Set,t=t=>{e.delete(t)};return{on:n=>{e.add(n);let r=()=>t(n);return $a(r),{off:r}},off:t,trigger:(...t)=>Promise.all(Array.from(e).map(e=>e(...t)))}}function to(e){let t=!1,n,r=re(!0);return(...i)=>(t||(n=r.run(()=>e(...i)),t=!0),n)}function no(e){let t=0,n,r,i=()=>{--t,r&&t<=0&&(r.stop(),n=void 0,r=void 0)};return(...a)=>(t+=1,n||(r=re(!0),n=r.run(()=>e(...a))),$a(i),n)}function ro(e){return typeof e==`function`?e():R(e)}function io(e){if(!v(e))return se(e);let t=new Proxy({},{get(t,n,r){return R(Reflect.get(e.value,n,r))},set(t,n,r){return v(e.value[n])&&!v(r)?e.value[n].value=r:e.value[n]=r,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return se(t)}function ao(e){return io(G(e))}const oo=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;const so=e=>typeof e<`u`,co=e=>e!=null,lo=Object.prototype.toString,uo=e=>lo.call(e)===`[object Object]`,fo=()=>{},po=mo();function mo(){var e,t;return oo&&(e=window==null?void 0:window.navigator)?.userAgent&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(t=window==null?void 0:window.navigator)?.maxTouchPoints>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function ho(e,t){function n(...n){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,n),{fn:t,thisArg:this,args:n})).then(r).catch(i)})}return n}function go(e,t={}){let n,r,i=fo,a=e=>{clearTimeout(e),i(),i=fo};return o=>{let s=ro(e),c=ro(t.maxWait);return n&&a(n),s<=0||c!==void 0&&c<=0?(r&&(a(r),r=null),Promise.resolve(o())):new Promise((e,l)=>{i=t.rejectOnCancel?l:e,c&&!r&&(r=setTimeout(()=>{n&&a(n),r=null,e(o())},c)),n=setTimeout(()=>{r&&a(r),r=null,e(o())},s)})}}function _o(e){return Ce()}function vo(e,t=1e4){return ne((n,r)=>{let i=ro(e),a,o=()=>setTimeout(()=>{i=ro(e),r()},ro(t));return $a(()=>{clearTimeout(a)}),{get(){return n(),i},set(e){i=e,r(),clearTimeout(a),a=o()}}})}function yo(e,t=200,n={}){return ho(go(t,n),e)}function bo(e,t){_o()&&fe(e,t)}function xo(e,t=!0,n){_o()?S(e,n):t?e():T(e)}function So(e,t,n={}){let{immediate:r=!0}=n,i=I(!1),a=null;function o(){a&&(clearTimeout(a),a=null)}function s(){i.value=!1,o()}function c(...n){o(),i.value=!0,a=setTimeout(()=>{i.value=!1,a=null,e(...n)},ro(t))}return r&&(i.value=!0,oo&&c()),$a(s),{isPending:ue(i),start:c,stop:s}}function Co(e=1e3,t={}){let{controls:n=!1,callback:r}=t,i=So(r??fo,e,t),a=G(()=>!i.isPending.value);return n?{ready:a,...i}:a}function wo(e,t,n){let r=N(e,(...e)=>(T(()=>r()),t(...e)),n);return r}function To(e){var t;let n=ro(e);return(t=n?.$el)??n}const Eo=oo?window:void 0;function Do(...e){let t,n,r,i;if(typeof e[0]==`string`||Array.isArray(e[0])?([n,r,i]=e,t=Eo):[t,n,r,i]=e,!t)return fo;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);let a=[],o=()=>{a.forEach(e=>e()),a.length=0},s=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),c=N(()=>[To(t),ro(i)],([e,t])=>{if(o(),!e)return;let i=uo(t)?{...t}:t;a.push(...n.flatMap(t=>r.map(n=>s(e,t,n,i))))},{immediate:!0,flush:`post`}),l=()=>{c(),o()};return $a(l),l}function Oo(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function ko(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=Eo,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=Oo(t);return Do(i,a,e=>{e.repeat&&ro(s)||c(e)&&n(e)},o)}function Ao(){let e=I(!1),t=Ce();return t&&S(()=>{e.value=!0},t),e}function jo(e){let t=Ao();return G(()=>(t.value,!!e()))}function Mo(e,t,n={}){let{window:r=Eo,...i}=n,a,o=jo(()=>r&&`MutationObserver`in r),s=()=>{a&&(a.disconnect(),a=void 0)},c=G(()=>{let t=ro(e),n=(Array.isArray(t)?t:[t]).map(To).filter(co);return new Set(n)}),l=N(()=>c.value,e=>{s(),o.value&&e.size&&(a=new MutationObserver(t),e.forEach(e=>a.observe(e,i)))},{immediate:!0,flush:`post`}),u=()=>a?.takeRecords(),d=()=>{s(),l()};return $a(d),{isSupported:o,stop:d,takeRecords:u}}function No(e={}){var t;let{window:n=Eo,deep:r=!0,triggerOnRemoval:i=!1}=e,a=(t=e.document)??n?.document,o=()=>{var e;let t=a?.activeElement;if(r)for(;t!=null&&t.shadowRoot;)t=(e=t?.shadowRoot)?.activeElement;return t},s=I(),c=()=>{s.value=o()};return n&&(Do(n,`blur`,e=>{e.relatedTarget===null&&c()},!0),Do(n,`focus`,c,!0)),i&&Mo(a,e=>{e.filter(e=>e.removedNodes.length).map(e=>Array.from(e.removedNodes)).flat().forEach(e=>{e===s.value&&c()})},{childList:!0,subtree:!0}),c(),s}function Po(e,t={}){let{immediate:n=!0,fpsLimit:r=void 0,window:i=Eo}=t,a=I(!1),o=r?1e3/r:null,s=0,c=null;function l(t){if(!a.value||!i)return;s||=t;let n=t-s;if(o&&nnull,()=>t.proxy.$el);return D(n.trigger),S(n.trigger),n}function Lo(e,t,n={}){let{window:r=Eo,...i}=n,a,o=jo(()=>r&&`ResizeObserver`in r),s=()=>{a&&(a.disconnect(),a=void 0)},c=G(()=>Array.isArray(e)?e.map(e=>To(e)):[To(e)]),l=N(c,e=>{if(s(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),u=()=>{s(),l()};return $a(u),{isSupported:o,stop:u}}function Ro(e,t={}){let n=No(t),r=G(()=>To(e));return{focused:G(()=>r.value&&n.value?r.value.contains(n.value):!1)}}function zo(e=Io()){let t=te(),n=()=>{let n=To(e);n&&(t.value=n.parentElement)};return xo(n),N(()=>ro(e),n),t}function J(e,t,n,r={}){var i,a,o;let{clone:s=!1,passive:c=!1,eventName:l,deep:u=!1,defaultValue:d,shouldEmit:f}=r,p=Ce(),m=n||p?.emit||(i=p?.$emit)?.bind(p)||(o=(a=p?.proxy)?.$emit)?.bind(p?.proxy),h=l;t||=`modelValue`,h||=`update:${t.toString()}`;let g=e=>s?typeof s==`function`?s(e):Fo(e):e,_=()=>so(e[t])?g(e[t]):d,v=e=>{f?f(e)&&m(h,e):m(h,e)};if(c){let n=_(),r=I(n),i=!1;return N(()=>e[t],e=>{i||(i=!0,r.value=g(e),T(()=>i=!1))}),N(r,n=>{!i&&(n!==e[t]||u)&&v(n)},{deep:u}),r}else return G({get(){return _()},set(e){v(e)}})}function Bo(e){return e?e.flatMap(e=>e.type===Se?Bo(e.children):[e]):[]}function Y(){let e=document.activeElement;if(e==null)return null;for(;e!=null&&e.shadowRoot!=null&&e.shadowRoot.activeElement!=null;)e=e.shadowRoot.activeElement;return e}const Vo=[`INPUT`,`TEXTAREA`];function Ho(e,t,n,r={}){if(!t||r.enableIgnoredElement&&Vo.includes(t.nodeName))return null;let{arrowKeyOptions:i=`both`,attributeName:a=`[data-radix-vue-collection-item]`,itemsArray:o=[],loop:s=!0,dir:c=`ltr`,preventScroll:l=!0,focus:u=!1}=r,[d,f,p,m,h,g]=[e.key===`ArrowRight`,e.key===`ArrowLeft`,e.key===`ArrowUp`,e.key===`ArrowDown`,e.key===`Home`,e.key===`End`],_=p||m,v=d||f;if(!h&&!g&&(!_&&!v||i===`vertical`&&v||i===`horizontal`&&_))return null;let y=n?Array.from(n.querySelectorAll(a)):o;if(!y.length)return null;l&&e.preventDefault();let b=null;return v||_?b=Uo(y,t,{goForward:_?m:c===`ltr`?d:f,loop:s}):h?b=y.at(0)||null:g&&(b=y.at(-1)||null),u&&b?.focus(),b}function Uo(e,t,n,r=e.length){if(--r===0)return null;let i=e.indexOf(t),a=n.goForward?i+1:i-1;if(!n.loop&&(a<0||a>=e.length))return null;let o=(a+e.length)%e.length,s=e[o];return s?s.hasAttribute(`disabled`)&&s.getAttribute(`disabled`)!==`false`?Uo(e,s,n,r):s:null}function Wo(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)===`[object Module]`:!0}function Go(e,t,n=`.`,r){if(!Wo(t))return Go(e,{},n,r);let i=Object.assign({},t);for(let t in e){if(t===`__proto__`||t===`constructor`)continue;let a=e[t];a!=null&&(r&&r(i,t,a,n)||(Array.isArray(a)&&Array.isArray(i[t])?i[t]=[...a,...i[t]]:Wo(a)&&Wo(i[t])?i[t]=Go(a,i[t],(n?`${n}.`:``)+t.toString(),r):i[t]=a))}return i}function Ko(e){return(...t)=>t.reduce((t,n)=>Go(t,n,``,e),{})}const qo=Ko(),[Jo,Yo]=q(`ConfigProvider`),Xo=E({inheritAttrs:!1,__name:`ConfigProvider`,props:{dir:{default:`ltr`},scrollBody:{type:[Boolean,Object],default:!0},nonce:{default:void 0},useId:{type:Function,default:void 0}},setup(e){let t=e,{dir:n,scrollBody:r,nonce:i}=L(t);return Yo({dir:n,scrollBody:r,nonce:i,useId:t.useId}),(e,t)=>W(e.$slots,`default`)}});let Zo=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,Qo=(e=21)=>{let t=``,n=e;for(;n--;)t+=Zo[Math.random()*64|0];return t};const $o=no(()=>{let e=I(new Map),t=I(),n=G(()=>{for(let t of e.value.values())if(t)return!0;return!1}),r=Jo({scrollBody:I(!0)}),i=null,a=()=>{document.body.style.paddingRight=``,document.body.style.marginRight=``,document.body.style.pointerEvents=``,document.body.style.removeProperty(`--scrollbar-width`),document.body.style.overflow=t.value??``,po&&i?.(),t.value=void 0};return N(n,(e,n)=>{var o;if(!oo)return;if(!e){n&&a();return}t.value===void 0&&(t.value=document.body.style.overflow);let s=window.innerWidth-document.documentElement.clientWidth,c={padding:s,margin:0},l=(o=r.scrollBody)!=null&&o.value?typeof r.scrollBody.value==`object`?qo({padding:r.scrollBody.value.padding===!0?s:r.scrollBody.value.padding,margin:r.scrollBody.value.margin===!0?s:r.scrollBody.value.margin},c):c:{padding:0,margin:0};s>0&&(document.body.style.paddingRight=typeof l.padding==`number`?`${l.padding}px`:String(l.padding),document.body.style.marginRight=typeof l.margin==`number`?`${l.margin}px`:String(l.margin),document.body.style.setProperty(`--scrollbar-width`,`${s}px`),document.body.style.overflow=`hidden`),po&&(i=Do(document,`touchmove`,e=>ns(e),{passive:!1})),T(()=>{document.body.style.pointerEvents=`none`,document.body.style.overflow=`hidden`})},{immediate:!0,flush:`sync`}),e});function es(e){let t=Qo(6),n=$o();n.value.set(t,e??!1);let r=G({get:()=>n.value.get(t)??!1,set:e=>n.value.set(t,e)});return bo(()=>{n.value.delete(t)}),r}function ts(e){let t=window.getComputedStyle(e);if(t.overflowX===`scroll`||t.overflowY===`scroll`||t.overflowX===`auto`&&e.clientWidth1?!0:(t.preventDefault&&t.cancelable&&t.preventDefault(),!1)}const rs=`data-radix-vue-collection-item`;function os(e,t=rs){let n=e??Symbol();return{createCollection:e=>{let r=I([]);function i(){let n=To(e);return n?r.value=Array.from(n.querySelectorAll(`[${t}]:not([data-disabled])`)):r.value=[]}return w(()=>{r.value=[]}),S(i),D(i),N(()=>e?.value,i,{immediate:!0}),b(n,r),r},injectCollection:()=>pe(n,I([]))}}function ss(e){let t=I(e);function n(){return t.value}function r(e){t.value=e}function i(e,n){return new ji(t.value,n).format(e)}function a(e,t=!0){return ca(e)&&t?i(aa(e),{dateStyle:`long`,timeStyle:`long`}):i(aa(e),{dateStyle:`long`})}function o(e,n={}){return new ji(t.value,{month:`long`,year:`numeric`,...n}).format(e)}function s(e,n={}){return new ji(t.value,{month:`long`,...n}).format(e)}function c(){let e=sn(fn());return[1,2,3,4,5,6,7,8,9,10,11,12].map(t=>({label:s(aa(e.set({month:t}))),value:t}))}function l(e,n={}){return new ji(t.value,{year:`numeric`,...n}).format(e)}function u(e,n){return sa(e)?new ji(t.value,{...n,timeZone:e.timeZone}).formatToParts(aa(e)):new ji(t.value,n).formatToParts(aa(e))}function d(e,n=`narrow`){return new ji(t.value,{weekday:n}).format(e)}function f(e){var n;return(n=new ji(t.value,{hour:`numeric`,minute:`numeric`}).formatToParts(e).find(e=>e.type===`dayPeriod`))?.value===`PM`?`PM`:`AM`}let p={year:`numeric`,month:`numeric`,day:`numeric`,hour:`numeric`,minute:`numeric`,second:`numeric`};function m(e,t,n={}){let r={...p,...n},i=u(e,r).find(e=>e.type===t);return i?i.value:``}return{setLocale:r,getLocale:n,fullMonth:s,fullYear:l,fullMonthAndYear:o,toParts:u,custom:i,part:m,dayPeriod:f,selectedDate:a,dayOfWeek:d,getMonths:c}}function cs(e){let t=Jo({dir:I(`ltr`)});return G(()=>{var n;return e?.value||(n=t.dir)?.value||`ltr`})}function ls(e){let t=Ce(),n=t?.type.emits,r={};return n!=null&&n.length||console.warn(`No emitted event found. Please check component: ${t?.type.__name}`),n?.forEach(t=>{r[De(Ae(t))]=(...n)=>e(t,...n)}),r}let us=0;function ds(){H(e=>{if(!oo)return;let t=document.querySelectorAll(`[data-radix-focus-guard]`);document.body.insertAdjacentElement(`afterbegin`,t[0]??fs()),document.body.insertAdjacentElement(`beforeend`,t[1]??fs()),us++,e(()=>{us===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),us--})})}function fs(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}function ps(e){return G(()=>{var t;return ro(e)?!!((t=To(e))!=null&&t.closest(`form`)):!0})}function ms(e){let t=Ce(),n=Object.keys(t?.type.props??{}).reduce((e,n)=>{let r=(t?.type.props[n]).default;return r!==void 0&&(e[n]=r),e},{}),r=ee(e);return G(()=>{let e={},i=t?.vnode.props??{};return Object.keys(i).forEach(t=>{e[Ae(t)]=i[t]}),Object.keys({...n,...e}).reduce((e,t)=>(r.value[t]!==void 0&&(e[t]=r.value[t]),e),{})})}function hs(e,t){let n=ms(e),r=t?ls(t):{};return G(()=>({...n.value,...r}))}function X(){let e=Ce(),t=I(),n=G(()=>{var e,n;return[`#text`,`#comment`].includes((e=t.value)?.$el.nodeName)?(n=t.value)?.$el.nextElementSibling:To(t)}),r=Object.assign({},e.exposed),i={};for(let t in e.props)Object.defineProperty(i,t,{enumerable:!0,configurable:!0,get:()=>e.props[t]});if(Object.keys(r).length>0)for(let e in r)Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>r[e]});Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>e.vnode.el}),e.exposed=i;function a(n){t.value=n,n&&(Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>n instanceof Element?n:n.$el}),e.exposed=i)}return{forwardRef:a,currentRef:t,currentElement:n}}function gs(e,t){let n=vo(!1,300),r=I(null),i=eo();function a(){r.value=null,n.value=!1}function o(e,t){let i=e.currentTarget,a={x:e.clientX,y:e.clientY},o=_s(a,i.getBoundingClientRect()),s=vs(a,o),c=ys(t.getBoundingClientRect()),l=xs([...s,...c]);r.value=l,n.value=!0}return H(n=>{if(e.value&&t.value){let r=e=>o(e,t.value),i=t=>o(t,e.value);e.value.addEventListener(`pointerleave`,r),t.value.addEventListener(`pointerleave`,i),n(()=>{var n,a;(n=e.value)==null||n.removeEventListener(`pointerleave`,r),(a=t.value)==null||a.removeEventListener(`pointerleave`,i)})}}),H(n=>{var o;if(r.value){let s=n=>{var o,s;if(!r.value)return;let c=n.target,l={x:n.clientX,y:n.clientY},u=(o=e.value)?.contains(c)||(s=t.value)?.contains(c),d=!bs(l,r.value),f=!!c.closest(`[data-grace-area-trigger]`);u?a():(d||f)&&(a(),i.trigger())};(o=e.value)==null||o.ownerDocument.addEventListener(`pointermove`,s),n(()=>{var t;return(t=e.value)?.ownerDocument.removeEventListener(`pointermove`,s)})}}),{isPointerInTransit:n,onPointerExit:i.on}}function _s(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function vs(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function ys(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function bs(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function xs(e){let t=e.slice();return t.sort((e,t)=>e.xt.x?1:e.yt.y?1:0),Ss(t)}function Ss(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Cs=function(e){if(typeof document>`u`)return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},ws=new WeakMap,Ts=new WeakMap,Es={},Ds=0,Os=function(e){return e&&(e.host||Os(e.parentNode))},ks=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=Os(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},As=function(e,t,n,r){var i=ks(t,Array.isArray(e)?e:[e]);Es[n]||(Es[n]=new WeakMap);var a=Es[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(ws.get(e)||0)+1,l=(a.get(e)||0)+1;ws.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Ts.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Ds++,function(){o.forEach(function(e){var t=ws.get(e)-1,i=a.get(e)-1;ws.set(e,t),a.set(e,i),t||(Ts.has(e)||e.removeAttribute(r),Ts.delete(e)),i||e.removeAttribute(n)}),Ds--,Ds||(ws=new WeakMap,ws=new WeakMap,Ts=new WeakMap,Es={})}},js=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=Cs(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live]`))),As(r,i,n,`aria-hidden`)):function(){return null}};function Ms(e){let t;N(()=>To(e),e=>{e?t=js(e):t&&t()}),me(()=>{t&&t()})}let Ns=0;function Z(e,t=`radix`){if(e)return e;let n=Jo({useId:void 0});return he?`${t}-${he()}`:n.useId?`${t}-${n.useId()}`:`${t}-${++Ns}`}function Ps(e,t){let n=I(),r=(r,i)=>{if(t.multiple&&Array.isArray(e.value))if(t.selectionBehavior===`replace`)e.value=[r],n.value=r;else{let t=e.value.findIndex(e=>i(e));t===-1?e.value.push(r):e.value.splice(t,1)}else t.selectionBehavior===`replace`?e.value={...r}:!Array.isArray(e.value)&&i(e.value)?e.value=void 0:e.value={...r};return e.value};function i(r,i,a,o){var s;if(!(n!=null&&n.value)||!t.multiple||!Array.isArray(e.value))return;let c=(s=a().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===i))?.value;if(!c)return;let l=null;switch(r){case`prev`:case`next`:l=Aa(o,n.value,c);break;case`first`:l=Aa(o,n.value,o?.[0]);break;case`last`:l=Aa(o,n.value,o?.[o.length-1]);break}e.value=l}return{firstValue:n,onSelectItem:r,handleMultipleReplace:i}}function Fs(e){let t=I(),n=G(()=>{var e;return(e=t.value)?.width??0}),r=G(()=>{var e;return(e=t.value)?.height??0});return S(()=>{let n=To(e);if(n){t.value={width:n.offsetWidth,height:n.offsetHeight};let e=new ResizeObserver(e=>{if(!Array.isArray(e)||!e.length)return;let r=e[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=n.offsetWidth,a=n.offsetHeight;t.value={width:i,height:a}});return e.observe(n,{box:`border-box`}),()=>e.unobserve(n)}else t.value=void 0}),{width:n,height:r}}function Is(e,t){let n=I(e);function r(e){return t[n.value][e]??n.value}return{state:n,dispatch:e=>{n.value=r(e)}}}const Ls=`data-item-text`;function Rs(e){let t=vo(``,1e3);return{search:t,handleTypeaheadSearch:(n,r)=>{if(!(e!=null&&e.value)&&!r)return;t.value+=n;let i=e?.value??r,a=Y(),o=i.map(e=>{var t;return{ref:e,textValue:(t=(e.querySelector(`[${Ls}]`)??e).textContent)?.trim()??``}}),s=o.find(e=>e.ref===a),c=o.map(e=>e.textValue),l=Bs(c,t.value,s?.textValue),u=o.find(e=>e.textValue===l);return u&&u.ref.focus(),u?.ref},resetTypeahead:()=>{t.value=``}}}function zs(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function Bs(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=zs(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function Vs(){return{ALT:`Alt`,ARROW_DOWN:`ArrowDown`,ARROW_LEFT:`ArrowLeft`,ARROW_RIGHT:`ArrowRight`,ARROW_UP:`ArrowUp`,BACKSPACE:`Backspace`,CAPS_LOCK:`CapsLock`,CONTROL:`Control`,DELETE:`Delete`,END:`End`,ENTER:`Enter`,ESCAPE:`Escape`,F1:`F1`,F10:`F10`,F11:`F11`,F12:`F12`,F2:`F2`,F3:`F3`,F4:`F4`,F5:`F5`,F6:`F6`,F7:`F7`,F8:`F8`,F9:`F9`,HOME:`Home`,META:`Meta`,PAGE_DOWN:`PageDown`,PAGE_UP:`PageUp`,SHIFT:`Shift`,SPACE:` `,TAB:`Tab`,CTRL:`Control`,ASTERISK:`*`,SPACE_CODE:`Space`}}const Hs=E({name:`PrimitiveSlot`,inheritAttrs:!1,setup(e,{attrs:t,slots:n}){return()=>{var e,r;if(!n.default)return null;let i=Bo(n.default()),a=i.findIndex(e=>e.type!==we);if(a===-1)return i;let o=i[a];(e=o.props)==null||delete e.ref;let s=o.props?k(t,o.props):t;t.class&&(r=o.props)!=null&&r.class&&delete o.props.class;let c=ge(o,s);for(let e in s)e.startsWith(`on`)&&(c.props||={},c.props[e]=s[e]);return i.length===1?c:(i[a]=c,i)}}}),Q=E({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(e,{attrs:t,slots:n}){let r=e.asChild?`template`:e.as;return typeof r==`string`&&[`area`,`img`,`input`].includes(r)?()=>M(r,t):r===`template`?()=>M(Hs,t,{default:n.default}):()=>M(e.as,t,{default:n.default})}});function Us(){let e=I(),t=G(()=>{var t,n;return[`#text`,`#comment`].includes((t=e.value)?.$el.nodeName)?(n=e.value)?.$el.nextElementSibling:To(e)});return{primitiveElement:e,currentElement:t}}const[Ws,Gs]=q(`CollapsibleRoot`),Ks=E({__name:`CollapsibleRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`update:open`],setup(e,{expose:t,emit:n}){let r=e,i=J(r,`open`,n,{defaultValue:r.defaultOpen,passive:r.open===void 0}),a=J(r,`disabled`);return Gs({contentId:``,disabled:a,open:i,onOpenToggle:()=>{i.value=!i.value}}),t({open:i}),X(),(e,t)=>(P(),U(R(Q),{as:e.as,"as-child":r.asChild,"data-state":R(i)?`open`:`closed`,"data-disabled":R(a)?``:void 0},{default:z(()=>[W(e.$slots,`default`,{open:R(i)})]),_:3},8,[`as`,`as-child`,`data-state`,`data-disabled`]))}}),qs=E({__name:`CollapsibleTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Ws();return(e,r)=>{var i,a;return P(),U(R(Q),{type:e.as===`button`?`button`:void 0,as:e.as,"as-child":t.asChild,"aria-controls":R(n).contentId,"aria-expanded":R(n).open.value,"data-state":R(n).open.value?`open`:`closed`,"data-disabled":(i=R(n).disabled)!=null&&i.value?``:void 0,disabled:(a=R(n).disabled)?.value,onClick:R(n).onOpenToggle},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`,`aria-controls`,`aria-expanded`,`data-state`,`data-disabled`,`disabled`,`onClick`])}}});function Js(e,t){var n;let r=I({}),i=I(`none`),a=I(e),o=e.value?`mounted`:`unmounted`,s,c=(n=t.value)?.ownerDocument.defaultView??Eo,{state:l,dispatch:u}=Is(o,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),d=e=>{var n;if(oo){let r=new CustomEvent(e,{bubbles:!1,cancelable:!1});(n=t.value)==null||n.dispatchEvent(r)}};N(e,async(e,n)=>{var a;let o=n!==e;if(await T(),o){let o=i.value,s=Ys(t.value);e?(u(`MOUNT`),d(`enter`),s===`none`&&d(`after-enter`)):s===`none`||(a=r.value)?.display===`none`?(u(`UNMOUNT`),d(`leave`),d(`after-leave`)):n&&o!==s?(u(`ANIMATION_OUT`),d(`leave`)):(u(`UNMOUNT`),d(`after-leave`))}},{immediate:!0});let f=e=>{let n=Ys(t.value),r=n.includes(e.animationName),i=l.value===`mounted`?`enter`:`leave`;if(e.target===t.value&&r&&(d(`after-${i}`),u(`ANIMATION_END`),!a.value)){let e=t.value.style.animationFillMode;t.value.style.animationFillMode=`forwards`,s=c?.setTimeout(()=>{var n;(n=t.value)?.style.animationFillMode===`forwards`&&(t.value.style.animationFillMode=e)})}e.target===t.value&&n===`none`&&u(`ANIMATION_END`)},p=e=>{e.target===t.value&&(i.value=Ys(t.value))},m=N(t,(e,t)=>{e?(r.value=getComputedStyle(e),e.addEventListener(`animationstart`,p),e.addEventListener(`animationcancel`,f),e.addEventListener(`animationend`,f)):(u(`ANIMATION_END`),s!==void 0&&c?.clearTimeout(s),t?.removeEventListener(`animationstart`,p),t?.removeEventListener(`animationcancel`,f),t?.removeEventListener(`animationend`,f))},{immediate:!0}),h=N(l,()=>{let e=Ys(t.value);i.value=l.value===`mounted`?e:`none`});return me(()=>{m(),h()}),{isPresent:G(()=>[`mounted`,`unmountSuspended`].includes(l.value))}}function Ys(e){return e&&getComputedStyle(e).animationName||`none`}const Xs=E({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){var r;let{present:i,forceMount:a}=L(e),o=I(),{isPresent:s}=Js(i,o);n({present:s});let c=t.default({present:s});c=Bo(c||[]);let l=Ce();if(c&&c?.length>1){let e=(r=l?.parent)!=null&&r.type.name?`<${l.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${e}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(e=>` - ${e}`).join(` +`)].join(` +`))}return()=>a.value||i.value||s.value?M(t.default({present:s})[0],{ref:e=>{let t=To(e);return typeof t?.hasAttribute>`u`||(t!=null&&t.hasAttribute(`data-radix-popper-content-wrapper`)?o.value=t.firstElementChild:o.value=t),t}}):null}}),Zs=E({inheritAttrs:!1,__name:`CollapsibleContent`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Ws();n.contentId||=Z(void 0,`radix-vue-collapsible-content`);let r=I(),{forwardRef:i,currentElement:a}=X(),o=I(0),s=I(0),c=G(()=>n.open.value),l=I(c.value),u=I();return N(()=>{var e;return[c.value,(e=r.value)?.present]},async()=>{await T();let e=a.value;if(!e)return;u.value=u.value||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration=`0s`,e.style.animationName=`none`;let t=e.getBoundingClientRect();s.value=t.height,o.value=t.width,l.value||(e.style.transitionDuration=u.value.transitionDuration,e.style.animationName=u.value.animationName)},{immediate:!0}),S(()=>{requestAnimationFrame(()=>{l.value=!1})}),(e,a)=>(P(),U(R(Xs),{ref_key:`presentRef`,ref:r,present:e.forceMount||R(n).open.value,"force-mount":!0},{default:z(()=>{var a,c;return[A(R(Q),k(e.$attrs,{id:R(n).contentId,ref:R(i),"as-child":t.asChild,as:e.as,"data-state":R(n).open.value?`open`:`closed`,"data-disabled":(a=R(n).disabled)!=null&&a.value?``:void 0,hidden:!((c=r.value)!=null&&c.present),style:{"--radix-collapsible-content-height":`${s.value}px`,"--radix-collapsible-content-width":`${o.value}px`}}),{default:z(()=>{var t;return[(t=r.value)!=null&&t.present?W(e.$slots,`default`,{key:0}):O(``,!0)]}),_:3},16,[`id`,`as-child`,`as`,`data-state`,`data-disabled`,`hidden`,`style`])]}),_:3},8,[`present`]))}});function Qs({type:e,defaultValue:t,modelValue:n}){let r=n||t;if(Ma(e)&&Ma(n)&&Ma(t))throw Error("Either the `type` or the `value` or `default-value` prop must be defined.");if(n!==void 0&&t!==void 0&&typeof n!=typeof t)throw Error(`Invalid prop \`value\` of value \`${n}\` supplied, should be the same type as the \`defaultValue\` prop, which is \`${t}\`. The \`value\` prop must be: + ${e===`single`?`- a string`:e===`multiple`?`- an array of strings`:`- a string +- an array of strings`} + - \`undefined\``);let i=n!==void 0||t!==void 0;if(e&&i){let r=Array.isArray(n)||Array.isArray(t),i=n===void 0?`defaultValue`:`modelValue`,a=i===`modelValue`?typeof n:typeof t;if(e===`single`&&r)return console.error(`Invalid prop \`${i}\` of type ${a} supplied with type \`single\`. The \`modelValue\` prop must be a string or \`undefined\`. + You can remove the \`type\` prop to let the component infer the type from the ${i} prop.`),`multiple`;if(e===`multiple`&&!r)return console.error(`Invalid prop \`${i}\` of type ${a} supplied with type \`multiple\`. The \`modelValue\` prop must be an array of strings or \`undefined\`. + You can remove the \`type\` prop to let the component infer the type from the ${i} prop.`),`single`}return i?Array.isArray(r)?`multiple`:`single`:e}function $s({type:e,defaultValue:t,modelValue:n}){return e||Qs({type:e,defaultValue:t,modelValue:n})}function ec({type:e,defaultValue:t}){return t===void 0?e===`single`?void 0:[]:t}function tc(e,t){let n=I($s(e)),r=J(e,`modelValue`,t,{defaultValue:ec(e),passive:e.modelValue===void 0,deep:!0});N(()=>[e.type,e.modelValue,e.defaultValue],()=>{let t=Qs(e);n.value!==t&&(n.value=t)},{immediate:!0});function i(e){if(n.value===`single`)r.value=e===r.value?void 0:e;else{let t=[...r.value||[]];if(t.includes(e)){let n=t.findIndex(t=>t===e);t.splice(n,1)}else t.push(e);r.value=t}}let a=G(()=>n.value===`single`);return{modelValue:r,type:n,changeModelValue:i,isSingle:a}}const[nc,rc]=q(`AccordionRoot`),ic=E({__name:`AccordionRoot`,props:{collapsible:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},dir:{},orientation:{default:`vertical`},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{dir:i,disabled:a}=L(n),o=cs(i),{modelValue:s,changeModelValue:c,isSingle:l}=tc(n,r),{forwardRef:u,currentElement:d}=X();return rc({disabled:a,direction:o,orientation:n.orientation,parentElement:d,isSingle:l,collapsible:n.collapsible,modelValue:s,changeModelValue:c}),(e,t)=>(P(),U(R(Q),{ref:R(u),"as-child":e.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(s)})]),_:3},8,[`as-child`,`as`]))}}),[ac,oc]=q(`AccordionItem`),sc=E({__name:`AccordionItem`,props:{disabled:{type:Boolean},value:{},asChild:{type:Boolean},as:{}},setup(e,{expose:t}){let n=e,r=nc(),i=G(()=>r.isSingle.value?n.value===r.modelValue.value:Array.isArray(r.modelValue.value)&&r.modelValue.value.includes(n.value)),a=G(()=>r.disabled.value||n.disabled),o=G(()=>a.value?``:void 0),s=G(()=>i.value?`open`:`closed`);t({open:i,dataDisabled:o});let{currentRef:c,currentElement:l}=X();oc({open:i,dataState:s,disabled:a,dataDisabled:o,triggerId:``,currentRef:c,currentElement:l,value:G(()=>n.value)});function u(e){var t;let n=e.target;if(Array.from((t=r.parentElement.value)?.querySelectorAll(`[data-radix-vue-collection-item]`)??[]).findIndex(e=>e===n)===-1)return null;Ho(e,l.value,r.parentElement.value,{arrowKeyOptions:r.orientation,dir:r.direction.value,focus:!0})}return(e,t)=>(P(),U(R(Ks),{"data-orientation":R(r).orientation,"data-disabled":o.value,"data-state":s.value,disabled:a.value,open:i.value,as:n.as,"as-child":n.asChild,onKeydown:h(u,[`up`,`down`,`left`,`right`,`home`,`end`])},{default:z(()=>[W(e.$slots,`default`,{open:i.value})]),_:3},8,[`data-orientation`,`data-disabled`,`data-state`,`disabled`,`open`,`as`,`as-child`]))}}),cc=E({__name:`AccordionContent`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=nc(),r=ac();return X(),(e,i)=>(P(),U(R(Zs),{role:`region`,hidden:!R(r).open.value,"as-child":t.asChild,"force-mount":t.forceMount,"aria-labelledby":R(r).triggerId,"data-state":R(r).dataState.value,"data-disabled":R(r).dataDisabled.value,"data-orientation":R(n).orientation,style:{"--radix-accordion-content-width":`var(--radix-collapsible-content-width)`,"--radix-accordion-content-height":`var(--radix-collapsible-content-height)`}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`hidden`,`as-child`,`force-mount`,`aria-labelledby`,`data-state`,`data-disabled`,`data-orientation`]))}}),lc=E({__name:`AccordionHeader`,props:{asChild:{type:Boolean},as:{default:`h3`}},setup(e){let t=e,n=nc(),r=ac();return X(),(e,i)=>(P(),U(R(Q),{as:t.as,"as-child":t.asChild,"data-orientation":R(n).orientation,"data-state":R(r).dataState.value,"data-disabled":R(r).dataDisabled.value},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-orientation`,`data-state`,`data-disabled`]))}}),uc=E({__name:`AccordionTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=nc(),r=ac();r.triggerId||=Z(void 0,`radix-vue-accordion-trigger`);function i(){let e=n.isSingle.value&&r.open.value&&!n.collapsible;r.disabled.value||e||n.changeModelValue(r.value.value)}return(e,a)=>(P(),U(R(qs),{id:R(r).triggerId,ref:R(r).currentRef,"data-radix-vue-collection-item":``,as:t.as,"as-child":t.asChild,"aria-disabled":R(r).disabled.value||void 0,"aria-expanded":R(r).open.value||!1,"data-disabled":R(r).dataDisabled.value,"data-orientation":R(n).orientation,"data-state":R(r).dataState.value,disabled:R(r).disabled.value,onClick:i},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`as`,`as-child`,`aria-disabled`,`aria-expanded`,`data-disabled`,`data-orientation`,`data-state`,`disabled`]))}}),[dc,fc]=q(`DialogRoot`),pc=E({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=J(n,`open`,t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),i=I(),a=I(),{modal:o}=L(n);return fc({open:r,modal:o,openModal:()=>{r.value=!0},onOpenChange:e=>{r.value=e},onOpenToggle:()=>{r.value=!r.value},contentId:``,titleId:``,descriptionId:``,triggerElement:i,contentElement:a}),(e,t)=>W(e.$slots,`default`,{open:R(r)})}}),mc=E({__name:`DialogTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=dc(),{forwardRef:r,currentElement:i}=X();return n.contentId||=Z(void 0,`radix-vue-dialog-content`),S(()=>{n.triggerElement.value=i.value}),(e,i)=>(P(),U(R(Q),k(t,{ref:R(r),type:e.as===`button`?`button`:void 0,"aria-haspopup":`dialog`,"aria-expanded":R(n).open.value||!1,"aria-controls":R(n).open.value?R(n).contentId:void 0,"data-state":R(n).open.value?`open`:`closed`,onClick:R(n).onOpenToggle}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`onClick`]))}}),hc=E({__name:`Teleport`,props:{to:{default:`body`},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=Ao();return(e,n)=>R(t)||e.forceMount?(P(),U(ve,{key:0,to:e.to,disabled:e.disabled},[W(e.$slots,`default`)],8,[`to`,`disabled`])):O(``,!0)}}),gc=E({__name:`DialogPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),_c=`dismissableLayer.pointerDownOutside`,vc=`dismissableLayer.focusOutside`;function yc(e,t){let n=t.closest(`[data-dismissable-layer]`),r=e.dataset.dismissableLayer===``?e:e.querySelector(`[data-dismissable-layer]`),i=Array.from(e.ownerDocument.querySelectorAll(`[data-dismissable-layer]`));return!!(n&&r===n||i.indexOf(r){});return H(n=>{if(!oo)return;let o=async n=>{let o=n.target;if(t!=null&&t.value){if(yc(t.value,o)){i.value=!1;return}if(n.target&&!i.value){let t=function(){Sa(_c,e,i)},i={originalEvent:n};n.pointerType===`touch`?(r.removeEventListener(`click`,a.value),a.value=t,r.addEventListener(`click`,a.value,{once:!0})):t()}else r.removeEventListener(`click`,a.value);i.value=!1}},s=window.setTimeout(()=>{r.addEventListener(`pointerdown`,o)},0);n(()=>{window.clearTimeout(s),r.removeEventListener(`pointerdown`,o),r.removeEventListener(`click`,a.value)})}),{onPointerDownCapture:()=>i.value=!0}}function xc(e,t){var n;let r=(n=t?.value)?.ownerDocument??(globalThis==null?void 0:globalThis.document),i=I(!1);return H(n=>{if(!oo)return;let a=async n=>{t!=null&&t.value&&(await T(),!(!t.value||yc(t.value,n.target))&&n.target&&!i.value&&Sa(vc,e,{originalEvent:n}))};r.addEventListener(`focusin`,a),n(()=>r.removeEventListener(`focusin`,a))}),{onFocusCapture:()=>i.value=!0,onBlurCapture:()=>i.value=!1}}const Sc=se({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Cc=E({__name:`DismissableLayer`,props:{disableOutsidePointerEvents:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`dismiss`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=G(()=>{var e;return(e=a.value)?.ownerDocument??globalThis.document}),s=G(()=>Sc.layersRoot),c=G(()=>a.value?Array.from(s.value).indexOf(a.value):-1),l=G(()=>Sc.layersWithOutsidePointerEventsDisabled.size>0),u=G(()=>{let e=Array.from(s.value),[t]=[...Sc.layersWithOutsidePointerEventsDisabled].slice(-1),n=e.indexOf(t);return c.value>=n}),d=bc(async e=>{let t=[...Sc.branches].some(t=>t?.contains(e.target));!u.value||t||(r(`pointerDownOutside`,e),r(`interactOutside`,e),await T(),e.defaultPrevented||r(`dismiss`))},a),f=xc(e=>{[...Sc.branches].some(t=>t?.contains(e.target))||(r(`focusOutside`,e),r(`interactOutside`,e),e.defaultPrevented||r(`dismiss`))},a);ko(`Escape`,e=>{c.value===s.value.size-1&&(r(`escapeKeyDown`,e),e.defaultPrevented||r(`dismiss`))});let p;return H(e=>{a.value&&(n.disableOutsidePointerEvents&&(Sc.layersWithOutsidePointerEventsDisabled.size===0&&(p=o.value.body.style.pointerEvents,o.value.body.style.pointerEvents=`none`),Sc.layersWithOutsidePointerEventsDisabled.add(a.value)),s.value.add(a.value),e(()=>{n.disableOutsidePointerEvents&&Sc.layersWithOutsidePointerEventsDisabled.size===1&&(o.value.body.style.pointerEvents=p)}))}),H(e=>{e(()=>{a.value&&(s.value.delete(a.value),Sc.layersWithOutsidePointerEventsDisabled.delete(a.value))})}),(e,t)=>(P(),U(R(Q),{ref:R(i),"as-child":e.asChild,as:e.as,"data-dismissable-layer":``,style:ke({pointerEvents:l.value?u.value?`auto`:`none`:void 0}),onFocusCapture:R(f).onFocusCapture,onBlurCapture:R(f).onBlurCapture,onPointerdownCapture:R(d).onPointerDownCapture},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`style`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]))}}),wc=E({__name:`DismissableLayerBranch`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n,currentElement:r}=X();return S(()=>{Sc.branches.add(r.value)}),me(()=>{Sc.branches.delete(r.value)}),(e,r)=>(P(),U(R(Q),k({ref:R(n)},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Tc=`focusScope.autoFocusOnMount`,Ec=`focusScope.autoFocusOnUnmount`,Dc={bubbles:!1,cancelable:!0};function Oc(e,{select:t=!1}={}){let n=Y();for(let r of e)if(Pc(r,{select:t}),Y()!==n)return!0}function kc(e){let t=Ac(e),n=jc(t,e),r=jc(t.reverse(),e);return[n,r]}function Ac(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function jc(e,t){for(let n of e)if(!Mc(n,{upTo:t}))return n}function Mc(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function Nc(e){return e instanceof HTMLInputElement&&`select`in e}function Pc(e,{select:t=!1}={}){if(e&&e.focus){let n=Y();e.focus({preventScroll:!0}),e!==n&&Nc(e)&&t&&e.select()}}const Fc=to(()=>I([]));function Ic(){let e=Fc();return{add(t){let n=e.value[0];t!==n&&n?.pause(),e.value=Lc(e.value,t),e.value.unshift(t)},remove(t){var n;e.value=Lc(e.value,t),(n=e.value[0])==null||n.resume()}}}function Lc(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Rc(e){return e.filter(e=>e.tagName!==`A`)}const zc=E({__name:`FocusScope`,props:{loop:{type:Boolean,default:!1},trapped:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`mountAutoFocus`,`unmountAutoFocus`],setup(e,{emit:t}){let n=e,r=t,{currentRef:i,currentElement:a}=X(),o=I(null),s=Ic(),c=se({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});H(e=>{if(!oo)return;let t=a.value;if(!n.trapped)return;function r(e){if(c.paused||!t)return;let n=e.target;t.contains(n)?o.value=n:Pc(o.value,{select:!0})}function i(e){if(c.paused||!t)return;let n=e.relatedTarget;n!==null&&(t.contains(n)||Pc(o.value,{select:!0}))}function s(e){t.contains(o.value)||Pc(t)}document.addEventListener(`focusin`,r),document.addEventListener(`focusout`,i);let l=new MutationObserver(s);t&&l.observe(t,{childList:!0,subtree:!0}),e(()=>{document.removeEventListener(`focusin`,r),document.removeEventListener(`focusout`,i),l.disconnect()})}),H(async e=>{let t=a.value;if(await T(),!t)return;s.add(c);let n=Y();if(!t.contains(n)){let e=new CustomEvent(Tc,Dc);t.addEventListener(Tc,e=>r(`mountAutoFocus`,e)),t.dispatchEvent(e),e.defaultPrevented||(Oc(Rc(Ac(t)),{select:!0}),Y()===n&&Pc(t))}e(()=>{t.removeEventListener(Tc,e=>r(`mountAutoFocus`,e));let e=new CustomEvent(Ec,Dc),i=e=>{r(`unmountAutoFocus`,e)};t.addEventListener(Ec,i),t.dispatchEvent(e),setTimeout(()=>{e.defaultPrevented||Pc(n??document.body,{select:!0}),t.removeEventListener(Ec,i),s.remove(c)},0)})});function l(e){if(!n.loop&&!n.trapped||c.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,r=Y();if(t&&r){let t=e.currentTarget,[i,a]=kc(t);i&&a?!e.shiftKey&&r===a?(e.preventDefault(),n.loop&&Pc(i,{select:!0})):e.shiftKey&&r===i&&(e.preventDefault(),n.loop&&Pc(a,{select:!0})):r===t&&e.preventDefault()}}return(e,t)=>(P(),U(R(Q),{ref_key:`currentRef`,ref:i,tabindex:`-1`,"as-child":e.asChild,as:e.as,onKeydown:l},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}}),Bc=`menu.itemSelect`,Vc=[`Enter`,` `],Hc=[`ArrowDown`,`PageUp`,`Home`],Uc=[`ArrowUp`,`PageDown`,`End`],Wc=[...Hc,...Uc],Gc={ltr:[...Vc,`ArrowRight`],rtl:[...Vc,`ArrowLeft`]},Kc={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]};function qc(e){return e?`open`:`closed`}function Jc(e){return e===`indeterminate`}function Yc(e){return Jc(e)?`indeterminate`:e?`checked`:`unchecked`}function Xc(e){let t=Y();for(let n of e)if(n===t||(n.focus(),Y()!==t))return}function Zc(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function Qc(e,t){if(!t)return!1;let n={x:e.clientX,y:e.clientY};return Zc(n,t)}function $c(e){return e.pointerType===`mouse`}const el=E({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=dc(),{forwardRef:a,currentElement:o}=X();return i.titleId||=Z(void 0,`radix-vue-dialog-title`),i.descriptionId||=Z(void 0,`radix-vue-dialog-description`),S(()=>{i.contentElement=o,Y()!==document.body&&(i.triggerElement.value=Y())}),(e,t)=>(P(),U(R(zc),{"as-child":``,loop:``,trapped:n.trapFocus,onMountAutoFocus:t[5]||=e=>r(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>r(`closeAutoFocus`,e)},{default:z(()=>[A(R(Cc),k({id:R(i).contentId,ref:R(a),as:e.as,"as-child":e.asChild,"disable-outside-pointer-events":e.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":R(i).descriptionId,"aria-labelledby":R(i).titleId,"data-state":R(qc)(R(i).open.value)},e.$attrs,{onDismiss:t[0]||=e=>R(i).onOpenChange(!1),onEscapeKeyDown:t[1]||=e=>r(`escapeKeyDown`,e),onFocusOutside:t[2]||=e=>r(`focusOutside`,e),onInteractOutside:t[3]||=e=>r(`interactOutside`,e),onPointerDownOutside:t[4]||=e=>r(`pointerDownOutside`,e)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}}),tl=E({__name:`DialogContentModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=dc(),a=ls(r),{forwardRef:o,currentElement:s}=X();return Ms(s),(e,t)=>(P(),U(el,k({...n,...R(a)},{ref:R(o),"trap-focus":R(i).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:t[0]||=e=>{var t;e.defaultPrevented||(e.preventDefault(),(t=R(i).triggerElement.value)==null||t.focus())},onPointerDownOutside:t[1]||=e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()},onFocusOutside:t[2]||=e=>{e.preventDefault()}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),nl=E({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=ls(t);X();let i=dc(),a=I(!1),o=I(!1);return(e,t)=>(P(),U(el,k({...n,...R(r)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{var t;e.defaultPrevented||(a.value||(t=R(i).triggerElement.value)==null||t.focus(),e.preventDefault()),a.value=!1,o.value=!1},onInteractOutside:t[1]||=e=>{var t;e.defaultPrevented||(a.value=!0,e.detail.originalEvent.type===`pointerdown`&&(o.value=!0));let n=e.target;(t=R(i).triggerElement.value)!=null&&t.contains(n)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&o.value&&e.preventDefault()}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),rl=E({__name:`DialogContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=dc(),a=ls(r),{forwardRef:o}=X();return(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(i).open.value},{default:z(()=>[R(i).modal.value?(P(),U(tl,k({key:0,ref:R(o)},{...n,...R(a),...e.$attrs}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):(P(),U(nl,k({key:1,ref:R(o)},{...n,...R(a),...e.$attrs}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),il=E({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=dc();return es(!0),X(),(e,n)=>(P(),U(R(Q),{as:e.as,"as-child":e.asChild,"data-state":R(t).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),al=E({__name:`DialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=dc(),{forwardRef:n}=X();return(e,r)=>{var i;return(i=R(t))!=null&&i.modal.value?(P(),U(R(Xs),{key:0,present:e.forceMount||R(t).open.value},{default:z(()=>[A(il,k(e.$attrs,{ref:R(n),as:e.as,"as-child":e.asChild}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):O(``,!0)}}}),ol=E({__name:`DialogClose`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=dc();return(e,r)=>(P(),U(R(Q),k(t,{type:e.as===`button`?`button`:void 0,onClick:r[0]||=e=>R(n).onOpenChange(!1)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`]))}}),sl=E({__name:`DialogTitle`,props:{asChild:{type:Boolean},as:{default:`h2`}},setup(e){let t=e,n=dc();return X(),(e,r)=>(P(),U(R(Q),k(t,{id:R(n).titleId}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),cl=E({__name:`DialogDescription`,props:{asChild:{type:Boolean},as:{default:`p`}},setup(e){let t=e;X();let n=dc();return(e,r)=>(P(),U(R(Q),k(t,{id:R(n).descriptionId}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),ll=E({__name:`AlertDialogRoot`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(P(),U(R(pc),k(R(n),{modal:!0}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ul=E({__name:`AlertDialogTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(mc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),dl=E({__name:`AlertDialogPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[fl,pl]=q(`AlertDialogContent`),ml=E({__name:`AlertDialogContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=ls(t);X();let i=I();return pl({onCancelElementChange:e=>{i.value=e}}),(e,t)=>(P(),U(R(rl),k({...n,...R(r)},{role:`alertdialog`,onPointerDownOutside:t[0]||=m(()=>{},[`prevent`]),onInteractOutside:t[1]||=m(()=>{},[`prevent`]),onOpenAutoFocus:t[2]||=()=>{T(()=>{var e;(e=i.value)==null||e.focus({preventScroll:!0})})}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),hl=E({__name:`AlertDialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(al),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),gl=E({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=fl(),{forwardRef:r,currentElement:i}=X();return S(()=>{n.onCancelElementChange(i.value)}),(e,n)=>(P(),U(R(ol),k(t,{ref:R(r)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),_l=E({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{default:`h2`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(sl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),vl=E({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{default:`p`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(cl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),yl=E({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(ol),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),bl=E({inheritAttrs:!1,__name:`AspectRatio`,props:{ratio:{default:1},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),r=G(()=>1/t.ratio*100);return(e,t)=>(P(),B(`div`,{style:ke(`position: relative; width: 100%; padding-bottom: ${r.value}%`),"data-radix-aspect-ratio-wrapper":``},[A(R(Q),k({ref:R(n),"as-child":e.asChild,as:e.as,style:{position:`absolute`,inset:`0px`}},e.$attrs),{default:z(()=>[W(e.$slots,`default`,{aspect:r.value})]),_:3},16,[`as-child`,`as`])],4))}}),[xl,Sl]=q(`AvatarRoot`),Cl=E({__name:`AvatarRoot`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){return X(),Sl({imageLoadingStatus:I(`loading`)}),(e,t)=>(P(),U(R(Q),{"as-child":e.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}});function wl(e){function t(t){return Array.isArray(e.date.value)?e.date.value.some(e=>Zt(e,t)):e.date.value?Zt(e.date.value,t):!1}let n=G(()=>{var t,n,r,i;if(Array.isArray(e.date.value)){if(!e.date.value.length)return!1;for(let r of e.date.value)if((t=e.isDateDisabled)!=null&&t.call(e,r)||(n=e.isDateUnavailable)!=null&&n.call(e,r))return!0}else{if(!e.date.value)return!1;if((r=e.isDateDisabled)!=null&&r.call(e,e.date.value)||(i=e.isDateUnavailable)!=null&&i.call(e,e.date.value))return!0}return!1});return{isDateSelected:t,isInvalid:n}}function Tl(e,t){let n=t(e),r=n.compare(e),i={};return r>=7&&(i.day=1),r>=la(e)&&(i.month=1),n.set({...i})}function El(e,t){let n=t(e),r=e.compare(n),i={};return r>=7&&(i.day=35),r>=la(e)&&(i.month=13),n.set({...i})}function Dl(e,t){return t(e)}function Ol(e,t){return t(e)}function kl(e){let t=ss(e.locale.value),n=G(()=>{let t={calendar:e.placeholder.value.calendar.identifier};return e.placeholder.value.calendar.identifier===`gregory`&&e.placeholder.value.era===`BC`&&(t.era=`short`),t}),r=I(xa({dateObj:e.placeholder.value,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value})),i=G(()=>r.value.map(e=>e.value));function a(e){return!i.value.some(t=>en(e,t))}let o=(t=`month`,n)=>{if(!e.maxValue.value||!r.value.length)return!1;if(e.disabled.value)return!0;let i=r.value[r.value.length-1].value;if(n||e.nextPage.value){let t=Tl(i,n||e.nextPage.value);return da(t,e.maxValue.value)}if(t===`year`){let t=i.add({years:1}).set({day:1,month:1});return da(t,e.maxValue.value)}let a=i.add({months:1}).set({day:1});return da(a,e.maxValue.value)},s=(t=`month`,n)=>{if(!e.minValue.value||!r.value.length)return!1;if(e.disabled.value)return!0;let i=r.value[0].value;if(n||e.prevPage.value){let t=El(i,n||e.prevPage.value);return ua(t,e.minValue.value)}if(t===`year`){let t=i.subtract({years:1}).set({day:35,month:13});return ua(t,e.minValue.value)}let a=i.subtract({months:1}).set({day:35});return ua(a,e.minValue.value)};function c(t){var n;return!!((n=e.isDateDisabled)!=null&&n.call(e,t)||e.disabled.value||e.maxValue.value&&da(t,e.maxValue.value)||e.minValue.value&&ua(t,e.minValue.value))}let l=t=>{var n;return!!((n=e.isDateUnavailable)!=null&&n.call(e,t))},u=G(()=>r.value.length?r.value[0].rows[0].map(n=>t.dayOfWeek(aa(n),e.weekdayFormat.value)):[]),d=(t=`month`,n)=>{let i=r.value[0].value;if(n||e.nextPage.value){let t=Dl(i,n||e.nextPage.value),a=xa({dateObj:t,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=a;let o={};if(!n){let e=a[0].value.compare(i);e>=la(i)&&(o.day=1),e>=365&&(o.month=1)}e.placeholder.value=a[0].value.set({...o});return}let a=t===`month`?i.add({months:e.pagedNavigation.value?e.numberOfMonths.value:1}):i.add({years:1}),o=xa({dateObj:a,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=o,e.placeholder.value=o[0].value.set({day:1})},f=(t=`month`,n)=>{let i=r.value[0].value;if(n||e.prevPage.value){let t=Ol(i,n||e.prevPage.value),a=xa({dateObj:t,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=a;let o={};if(!n){let e=i.compare(a[0].value);e>=la(i)&&(o.day=1),e>=365&&(o.month=1)}e.placeholder.value=a[0].value.set({...o});return}let a=t===`month`?i.subtract({months:e.pagedNavigation.value?e.numberOfMonths.value:1}):i.subtract({years:1}),o=xa({dateObj:a,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});r.value=o,e.placeholder.value=o[0].value.set({day:1})};N(e.placeholder,t=>{i.value.some(e=>en(e,t))||(r.value=xa({dateObj:t,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value}))}),N([e.locale,e.weekStartsOn,e.fixedWeeks,e.numberOfMonths],()=>{r.value=xa({dateObj:e.placeholder.value,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value})});let p=G(()=>{if(!r.value.length)return``;if(e.locale.value!==t.getLocale()&&t.setLocale(e.locale.value),r.value.length===1){let e=r.value[0].value;return`${t.fullMonthAndYear(aa(e),n.value)}`}let i=aa(r.value[0].value),a=aa(r.value[r.value.length-1].value),o=t.fullMonth(i,n.value),s=t.fullMonth(a,n.value),c=t.fullYear(i,n.value),l=t.fullYear(a,n.value);return c===l?`${o} - ${s} ${l}`:`${o} ${c} - ${s} ${l}`}),m=G(()=>`${e.calendarLabel.value??`Event Date`}, ${p.value}`);return{isDateDisabled:c,isDateUnavailable:l,isNextButtonDisabled:o,isPrevButtonDisabled:s,grid:r,weekdays:u,visibleView:i,isOutsideVisibleView:a,formatter:t,nextPage:d,prevPage:f,headingValue:p,fullCalendarLabel:m}}const Al={style:{border:`0px`,clip:`rect(0px, 0px, 0px, 0px)`,"clip-path":`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:`0px`,position:`absolute`,"white-space":`nowrap`,width:`1px`}},jl={role:`heading`,"aria-level":`2`},[Ml,Nl]=q(`CalendarRoot`),Pl=E({__name:`CalendarRoot`,props:{modelValue:{},multiple:{type:Boolean,default:!1},defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},pagedNavigation:{type:Boolean,default:!1},preventDeselect:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},calendarLabel:{},fixedWeeks:{type:Boolean,default:!1},maxValue:{},minValue:{},locale:{default:`en`},numberOfMonths:{default:1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},initialFocus:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},isDateUnavailable:{type:Function,default:void 0},dir:{},nextPage:{},prevPage:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`update:placeholder`],setup(e,{emit:t}){let n=e,r=t,{locale:i,disabled:a,readonly:o,initialFocus:s,pagedNavigation:c,weekStartsOn:l,weekdayFormat:u,fixedWeeks:d,multiple:f,minValue:p,maxValue:m,numberOfMonths:h,preventDeselect:g,isDateDisabled:_,isDateUnavailable:v,calendarLabel:y,defaultValue:b,nextPage:x,prevPage:C,dir:w}=L(n),{primitiveElement:T,currentElement:E}=Us(),D=cs(w),O=J(n,`modelValue`,r,{defaultValue:b.value,passive:n.modelValue===void 0}),k=Na({defaultPlaceholder:n.placeholder,defaultValue:O.value,locale:n.locale}),A=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??k.copy(),passive:n.placeholder===void 0});function j(e){A.value=e.copy()}let{fullCalendarLabel:M,headingValue:F,isDateDisabled:ee,isDateUnavailable:I,isNextButtonDisabled:te,isPrevButtonDisabled:ne,weekdays:re,isOutsideVisibleView:ie,nextPage:ae,prevPage:oe,formatter:se,grid:ce}=kl({locale:i,placeholder:A,weekStartsOn:l,fixedWeeks:d,numberOfMonths:h,minValue:p,maxValue:m,disabled:a,weekdayFormat:u,pagedNavigation:c,isDateDisabled:_.value,isDateUnavailable:v.value,calendarLabel:y,nextPage:x,prevPage:C}),{isInvalid:le,isDateSelected:ue}=wl({date:O,isDateDisabled:ee,isDateUnavailable:I});N(O,e=>{if(Array.isArray(e)&&e.length){let t=e[e.length-1];t&&!$t(A.value,t)&&j(t)}else !Array.isArray(e)&&e&&!$t(A.value,e)&&j(e)});function de(e){if(f.value){if(!O.value)O.value=[e.copy()];else if(Array.isArray(O.value)){if(O.value.findIndex(t=>Zt(t,e))===-1)O.value=[...O.value,e];else if(!g.value){let t=O.value.filter(t=>!Zt(t,e));if(!t.length){A.value=e.copy(),O.value=void 0;return}O.value=t.map(e=>e.copy())}}}else{if(!O.value){O.value=e.copy();return}!g.value&&$t(O.value,e)?(A.value=e.copy(),O.value=void 0):O.value=e.copy()}}return S(()=>{s.value&&Xa(E.value)}),Nl({isDateUnavailable:I,dir:D,isDateDisabled:ee,locale:i,formatter:se,modelValue:O,placeholder:A,disabled:a,initialFocus:s,pagedNavigation:c,weekStartsOn:l,weekdayFormat:u,fixedWeeks:d,multiple:f,numberOfMonths:h,readonly:o,preventDeselect:g,fullCalendarLabel:M,headingValue:F,isInvalid:le,isDateSelected:ue,isNextButtonDisabled:te,isPrevButtonDisabled:ne,isOutsideVisibleView:ie,nextPage:ae,prevPage:oe,parentElement:E,onPlaceholderChange:j,onDateChange:de}),(e,t)=>(P(),U(R(Q),{ref_key:`primitiveElement`,ref:T,as:e.as,"as-child":e.asChild,role:`application`,"aria-label":R(M),"data-readonly":R(o)?``:void 0,"data-disabled":R(a)?``:void 0,"data-invalid":R(le)?``:void 0,dir:R(D)},{default:z(()=>[W(e.$slots,`default`,{date:R(A),grid:R(ce),weekDays:R(re),weekStartsOn:R(l),locale:R(i),fixedWeeks:R(d)}),_e(`div`,Al,[_e(`div`,jl,Oe(R(M)),1)])]),_:3},8,[`as`,`as-child`,`aria-label`,`data-readonly`,`data-disabled`,`data-invalid`,`dir`]))}}),Fl=E({__name:`CalendarHeader`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Il=E({__name:`CalendarHeading`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Ml();return(e,r)=>(P(),U(R(Q),k(t,{"data-disabled":R(n).disabled.value?``:void 0}),{default:z(()=>[W(e.$slots,`default`,{headingValue:R(n).headingValue.value},()=>[F(Oe(R(n).headingValue.value),1)])]),_:3},16,[`data-disabled`]))}}),Ll=E({__name:`CalendarGrid`,props:{asChild:{type:Boolean},as:{default:`table`}},setup(e){let t=e,n=Ml(),r=G(()=>n.disabled.value?!0:void 0),i=G(()=>n.readonly.value?!0:void 0);return(e,n)=>(P(),U(R(Q),k(t,{tabindex:`-1`,role:`grid`,"aria-readonly":i.value,"aria-disabled":r.value,"data-readonly":i.value&&``,"data-disabled":r.value&&``}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-readonly`,`aria-disabled`,`data-readonly`,`data-disabled`]))}}),Rl=E({__name:`CalendarCell`,props:{date:{},asChild:{type:Boolean},as:{default:`td`}},setup(e){let t=Ml();return(e,n)=>{var r,i;return P(),U(R(Q),{as:e.as,"as-child":e.asChild,role:`gridcell`,"aria-selected":R(t).isDateSelected(e.date)?!0:void 0,"aria-disabled":R(t).isDateDisabled(e.date)||(i=(r=R(t)).isDateUnavailable)?.call(r,e.date),"data-disabled":R(t).isDateDisabled(e.date)?``:void 0},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-selected`,`aria-disabled`,`data-disabled`])}}}),zl=E({__name:`CalendarHeadCell`,props:{asChild:{type:Boolean},as:{default:`th`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Bl=E({__name:`CalendarNext`,props:{step:{default:`month`},nextPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=G(()=>r.disabled.value||r.isNextButtonDisabled(t.step,t.nextPage)),r=Ml();return(e,i)=>(P(),U(R(Q),{as:t.as,"as-child":t.asChild,"aria-label":`Next page`,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>R(r).nextPage(t.step,t.nextPage)},{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Next page`)])]),_:3},8,[`as`,`as-child`,`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Vl=E({__name:`CalendarPrev`,props:{step:{default:`month`},prevPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=G(()=>r.disabled.value||r.isPrevButtonDisabled(t.step,t.prevPage)),r=Ml();return(e,i)=>(P(),U(R(Q),{"aria-label":`Previous page`,as:t.as,"as-child":t.asChild,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>R(r).prevPage(t.step,t.prevPage)},{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Prev page`)])]),_:3},8,[`as`,`as-child`,`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Hl=E({__name:`CalendarGridHead`,props:{asChild:{type:Boolean},as:{default:`thead`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),k(t,{"aria-hidden":`true`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Ul=E({__name:`CalendarGridBody`,props:{asChild:{type:Boolean},as:{default:`tbody`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Wl=E({__name:`CalendarGridRow`,props:{asChild:{type:Boolean},as:{default:`tr`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Gl=E({__name:`CalendarCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Vs(),r=Ml(),{primitiveElement:i,currentElement:a}=Us(),o=G(()=>t.day.day.toLocaleString(r.locale.value)),s=G(()=>r.formatter.custom(aa(t.day),{weekday:`long`,month:`long`,day:`numeric`,year:`numeric`})),c=G(()=>r.isDateDisabled(t.day)),l=G(()=>{var e;return(e=r.isDateUnavailable)?.call(r,t.day)}),u=G(()=>nn(t.day,fn())),d=G(()=>!Qt(t.day,t.month)),f=G(()=>r.isOutsideVisibleView(t.day)),p=G(()=>!r.disabled.value&&Zt(t.day,r.placeholder.value)),g=G(()=>r.isDateSelected(t.day)),_=`[data-radix-vue-calendar-cell-trigger]:not([data-disabled]):not([data-outside-view]):not([data-outside-visible-view])`;function v(e){var t;r.readonly.value||r.isDateDisabled(e)||(t=r.isDateUnavailable)!=null&&t.call(r,e)||r.onDateChange(e)}function y(){v(t.day)}function b(e){e.preventDefault(),e.stopPropagation();let i=r.parentElement.value,o=i?Array.from(i.querySelectorAll(_)):[],s=o.indexOf(a.value),c=7,l=r.dir.value===`rtl`?-1:1;switch(e.code){case n.ARROW_RIGHT:s+=l;break;case n.ARROW_LEFT:s-=l;break;case n.ARROW_UP:s-=c;break;case n.ARROW_DOWN:s+=c;break;case n.ENTER:case n.SPACE_CODE:v(t.day);return;default:return}if(s>=0&&s{let e=i?Array.from(i.querySelectorAll(_)):[];if(!r.pagedNavigation.value){let t=la(r.placeholder.value);e[t-Math.abs(s)].focus();return}e[e.length-Math.abs(s)].focus()});return}if(s>=o.length){if(r.isNextButtonDisabled(`month`))return;r.nextPage(),T(()=>{let e=i?Array.from(i.querySelectorAll(_)):[];if(!r.pagedNavigation.value){let t=la(r.placeholder.value.add({months:r.numberOfMonths.value-1}));e[e.length-t+s-o.length].focus();return}e[s-o.length].focus()})}}return(e,n)=>(P(),U(R(Q),k({ref_key:`primitiveElement`,ref:i},t,{role:`button`,"aria-label":s.value,"data-radix-vue-calendar-cell-trigger":``,"aria-disabled":c.value||l.value?!0:void 0,"data-selected":g.value?!0:void 0,"data-value":e.day.toString(),"data-disabled":c.value?``:void 0,"data-unavailable":l.value?``:void 0,"data-today":u.value?``:void 0,"data-outside-view":d.value?``:void 0,"data-outside-visible-view":f.value?``:void 0,"data-focused":p.value?``:void 0,tabindex:p.value?0:d.value||c.value?void 0:-1,onClick:y,onKeydown:[h(b,[`up`,`down`,`left`,`right`,`space`,`enter`]),n[0]||=h(m(()=>{},[`prevent`]),[`enter`])]}),{default:z(()=>[W(e.$slots,`default`,{dayValue:o.value},()=>[F(Oe(o.value),1)])]),_:3},16,[`aria-label`,`aria-disabled`,`data-selected`,`data-value`,`data-disabled`,`data-unavailable`,`data-today`,`data-outside-view`,`data-outside-visible-view`,`data-focused`,`tabindex`]))}});function Kl(e){return e===`indeterminate`}function ql(e){return Kl(e)?`indeterminate`:e?`checked`:`unchecked`}const Jl=[`value`,`checked`,`name`,`disabled`,`required`],[Yl,Xl]=q(`CheckboxRoot`),Zl=E({inheritAttrs:!1,__name:`CheckboxRoot`,props:{defaultChecked:{type:Boolean},checked:{type:[Boolean,String],default:void 0},disabled:{type:Boolean},required:{type:Boolean},name:{},value:{default:`on`},id:{},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:checked`],setup(e,{emit:t}){let n=e,r=t,{disabled:i}=L(n),a=J(n,`checked`,r,{defaultValue:n.defaultChecked,passive:n.checked===void 0}),{forwardRef:o,currentElement:s}=X(),c=ps(s),l=G(()=>{var e;return n.id&&s.value?(e=document.querySelector(`[for="${n.id}"]`))?.innerText:void 0});return Xl({disabled:i,state:a}),(e,t)=>(P(),B(Se,null,[A(R(Q),k(e.$attrs,{id:e.id,ref:R(o),role:`checkbox`,"as-child":n.asChild,as:e.as,type:e.as===`button`?`button`:void 0,"aria-checked":R(Kl)(R(a))?`mixed`:R(a),"aria-required":n.required,"aria-label":e.$attrs[`aria-label`]||l.value,"data-state":R(ql)(R(a)),"data-disabled":R(i)?``:void 0,disabled:R(i),onKeydown:h(m(()=>{},[`prevent`]),[`enter`]),onClick:t[0]||=e=>a.value=R(Kl)(R(a))?!0:!R(a)}),{default:z(()=>[W(e.$slots,`default`,{checked:R(a)})]),_:3},16,[`id`,`as-child`,`as`,`type`,`aria-checked`,`aria-required`,`aria-label`,`data-state`,`data-disabled`,`disabled`,`onKeydown`]),R(c)?(P(),B(`input`,{key:0,type:`checkbox`,tabindex:`-1`,"aria-hidden":`true`,value:e.value,checked:!!R(a),name:n.name,disabled:n.disabled,required:n.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Jl)):O(``,!0)],64))}}),Ql=E({__name:`CheckboxIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let{forwardRef:t}=X(),n=Yl();return(e,r)=>(P(),U(R(Xs),{present:e.forceMount||R(Kl)(R(n).state.value)||R(n).state.value===!0},{default:z(()=>[A(R(Q),k({ref:R(t),"data-state":R(ql)(R(n).state.value),"data-disabled":R(n).disabled.value?``:void 0,style:{pointerEvents:`none`},"as-child":e.asChild,as:e.as},e.$attrs),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`,`data-disabled`,`as-child`,`as`])]),_:3},8,[`present`]))}}),[$l,eu]=q(`PopperRoot`),tu=E({inheritAttrs:!1,__name:`PopperRoot`,setup(e){let t=I();return eu({anchor:t,onAnchorChange:e=>t.value=e}),(e,t)=>W(e.$slots,`default`)}}),nu=E({__name:`PopperAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n,currentElement:r}=X(),i=$l();return H(()=>{i.onAnchorChange(t.element??r.value)}),(e,t)=>(P(),U(R(Q),{ref:R(n),as:e.as,"as-child":e.asChild},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}});function ru(e){return e!==null}function iu(e){return{name:`transformOrigin`,options:e,fn(t){var n,r,i;let{placement:a,rects:o,middlewareData:s}=t,c=(n=s.arrow)?.centerOffset!==0,l=c?0:e.arrowWidth,u=c?0:e.arrowHeight,[d,f]=au(a),p={start:`0%`,center:`50%`,end:`100%`}[f],m=((r=s.arrow)?.x??0)+l/2,h=((i=s.arrow)?.y??0)+u/2,g=``,_=``;return d===`bottom`?(g=c?p:`${m}px`,_=`${-u}px`):d===`top`?(g=c?p:`${m}px`,_=`${o.floating.height+u}px`):d===`right`?(g=`${-u}px`,_=c?p:`${h}px`):d===`left`&&(g=`${o.floating.width+u}px`,_=c?p:`${h}px`),{data:{x:g,y:_}}}}}function au(e){let[t,n=`center`]=e.split(`-`);return[t,n]}const ou={side:`bottom`,sideOffset:0,align:`center`,alignOffset:0,arrowPadding:0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:`partial`,hideWhenDetached:!1,updatePositionStrategy:`optimized`,prioritizePosition:!1},[su,cu]=q(`PopperContent`),lu=E({inheritAttrs:!1,__name:`PopperContent`,props:x({side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},{...ou}),emits:[`placed`],setup(e,{emit:t}){let n=e,r=t,i=$l(),{forwardRef:a,currentElement:o}=X(),s=I(),c=I(),{width:l,height:u}=Fs(c),d=G(()=>n.side+(n.align===`center`?``:`-${n.align}`)),f=G(()=>typeof n.collisionPadding==`number`?n.collisionPadding:{top:0,right:0,bottom:0,left:0,...n.collisionPadding}),p=G(()=>Array.isArray(n.collisionBoundary)?n.collisionBoundary:[n.collisionBoundary]),m=G(()=>({padding:f.value,boundary:p.value.filter(ru),altBoundary:p.value.length>0})),h=Za(()=>[Dt({mainAxis:n.sideOffset+u.value,alignmentAxis:n.alignOffset}),n.prioritizePosition&&n.avoidCollisions&&kt({...m.value}),n.avoidCollisions&&Ot({mainAxis:!0,crossAxis:!!n.prioritizePosition,limiter:n.sticky===`partial`?Nt():void 0,...m.value}),!n.prioritizePosition&&n.avoidCollisions&&kt({...m.value}),At({...m.value,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),c.value&&Rt({element:c.value,padding:n.arrowPadding}),iu({arrowWidth:l.value,arrowHeight:u.value}),n.hideWhenDetached&&jt({strategy:`referenceHidden`,...m.value})]),{floatingStyles:g,placement:_,isPositioned:v,middlewareData:y}=Vt(i.anchor,s,{strategy:`fixed`,placement:d,whileElementsMounted:(...e)=>Et(...e,{animationFrame:n.updatePositionStrategy===`always`}),middleware:h}),b=G(()=>au(_.value)[0]),x=G(()=>au(_.value)[1]);be(()=>{v.value&&r(`placed`)});let S=G(()=>{var e;return(e=y.value.arrow)?.centerOffset!==0}),C=I(``);H(()=>{o.value&&(C.value=window.getComputedStyle(o.value).zIndex)});let w=G(()=>{var e;return(e=y.value.arrow)?.x??0}),T=G(()=>{var e;return(e=y.value.arrow)?.y??0});return cu({placedSide:b,onArrowChange:e=>c.value=e,arrowX:w,arrowY:T,shouldHideArrow:S}),(e,t)=>{var r,i,o;return P(),B(`div`,{ref_key:`floatingRef`,ref:s,"data-radix-popper-content-wrapper":``,style:ke({...R(g),transform:R(v)?R(g).transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:C.value,"--radix-popper-transform-origin":[(r=R(y).transformOrigin)?.x,(i=R(y).transformOrigin)?.y].join(` `),...(o=R(y).hide)?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}})},[A(R(Q),k({ref:R(a)},e.$attrs,{"as-child":n.asChild,as:e.as,"data-side":b.value,"data-align":x.value,style:{animation:R(v)?void 0:`none`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as-child`,`as`,`data-side`,`data-align`,`style`])],4)}}}),uu=_e(`polygon`,{points:`0,0 30,0 15,10`},null,-1),du=E({__name:`Arrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Q),k(t,{width:e.width,height:e.height,viewBox:e.asChild?void 0:`0 0 30 10`,preserveAspectRatio:e.asChild?void 0:`none`}),{default:z(()=>[W(e.$slots,`default`,{},()=>[uu])]),_:3},16,[`width`,`height`,`viewBox`,`preserveAspectRatio`]))}}),fu={top:`bottom`,right:`left`,bottom:`top`,left:`right`},pu=E({inheritAttrs:!1,__name:`PopperArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let{forwardRef:t}=X(),n=su(),r=G(()=>fu[n.placedSide.value]);return(e,i)=>{var a,o,s,c;return P(),B(`span`,{ref:e=>{R(n).onArrowChange(e)},style:ke({position:`absolute`,left:(a=R(n).arrowX)!=null&&a.value?`${(o=R(n).arrowX)?.value}px`:void 0,top:(s=R(n).arrowY)!=null&&s.value?`${(c=R(n).arrowY)?.value}px`:void 0,[r.value]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[R(n).placedSide.value],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[R(n).placedSide.value],visibility:R(n).shouldHideArrow.value?`hidden`:void 0})},[A(du,k(e.$attrs,{ref:R(t),style:{display:`block`},as:e.as,"as-child":e.asChild,width:e.width,height:e.height}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`width`,`height`])],4)}}}),mu=E({__name:`VisuallyHidden`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){return X(),(e,t)=>(P(),U(R(Q),{as:e.as,"as-child":e.asChild,style:{position:`absolute`,border:0,width:`1px`,display:`inline-block`,height:`1px`,padding:0,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),hu=E({__name:`VisuallyHiddenInput`,props:{name:{},value:{},required:{type:Boolean},disabled:{type:Boolean}},setup(e){let t=e,n=G(()=>typeof t.value==`string`||typeof t.value==`number`||typeof t.value==`boolean`?[{name:t.name,value:t.value}]:typeof t.value==`object`&&Array.isArray(t.value)?t.value.flatMap((e,n)=>typeof e==`object`?Object.entries(e).map(([e,r])=>({name:`[${n}][${t.name}][${e}]`,value:r})):{name:`[${t.name}][${n}]`,value:e}):t.value!==null&&typeof t.value==`object`&&!Array.isArray(t.value)?Object.entries(t.value).map(([e,n])=>({name:`[${t.name}][${e}]`,value:n})):[]);return(e,t)=>(P(!0),B(Se,null,ye(n.value,t=>(P(),U(mu,{key:t.name,as:`input`,type:`hidden`,hidden:``,readonly:``,name:t.name,value:t.value,required:e.required,disabled:e.disabled},null,8,[`name`,`value`,`required`,`disabled`]))),128))}}),gu=`data-radix-vue-collection-item`,[_u,vu]=q(`CollectionProvider`);function yu(e=gu){let t=I(new Map),n=I(),r=vu({collectionRef:n,itemMap:t,attrName:e}),{getItems:i}=Su(r),a=G(()=>Array.from(r.itemMap.value.values())),o=G(()=>r.itemMap.value.size);return{getItems:i,reactiveItems:a,itemMapSize:o}}const bu=E({name:`CollectionSlot`,setup(e,{slots:t}){let n=_u(),{primitiveElement:r,currentElement:i}=Us();return N(i,()=>{n.collectionRef.value=i.value}),()=>M(Hs,{ref:r},t)}}),xu=E({name:`CollectionItem`,inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(e,{slots:t,attrs:n}){let r=_u(),{primitiveElement:i,currentElement:a}=Us();return H(t=>{if(a.value){let n=le(a.value);r.itemMap.value.set(n,{ref:a.value,value:e.value}),t(()=>r.itemMap.value.delete(n))}}),()=>M(Hs,{...n,[r.attrName]:``,ref:i},t)}});function Su(e){let t=e??_u();return{getItems:()=>{let e=t.collectionRef.value;if(!e)return[];let n=Array.from(e.querySelectorAll(`[${t.attrName}]`));return Array.from(t.itemMap.value.values()).sort((e,t)=>n.indexOf(e.ref)-n.indexOf(t.ref))}}}const[Cu,wu]=q(`ComboboxRoot`),Tu=E({__name:`ComboboxRoot`,props:{modelValue:{},defaultValue:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},searchTerm:{},selectedValue:{},multiple:{type:Boolean},disabled:{type:Boolean},name:{},dir:{},filterFunction:{},displayValue:{},resetSearchTermOnBlur:{type:Boolean,default:!0},resetSearchTermOnSelect:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:open`,`update:searchTerm`,`update:selectedValue`],setup(e,{emit:t}){let n=e,r=t,{multiple:i,disabled:a,dir:o}=L(n),s=cs(o),c=J(n,`searchTerm`,r,{defaultValue:``,passive:n.searchTerm===void 0}),l=J(n,`modelValue`,r,{defaultValue:n.defaultValue??i.value?[]:void 0,passive:n.modelValue===void 0,deep:!0}),u=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),d=J(n,`selectedValue`,r,{defaultValue:void 0,passive:n.selectedValue===void 0});async function f(e){var t,r;u.value=e,await T(),e?(l.value&&(Array.isArray(l.value)&&i.value?d.value=(t=y().find(e=>{var t,n;return(n=(t=e.ref)?.dataset)?.state===`checked`}))?.value:d.value=l.value),await T(),(r=h.value)==null||r.focus(),F()):(m.value=!1,n.resetSearchTermOnBlur&&w(`blur`))}function p(e){if(Array.isArray(l.value)&&i.value){let t=l.value.findIndex(t=>Oa(t,e)),n=[...l.value];t===-1?n.push(e):n.splice(t,1),l.value=n}else l.value=e,f(!1)}let m=I(!1),h=I(),g=I(),{forwardRef:_,currentElement:v}=X(),{getItems:y,reactiveItems:b,itemMapSize:x}=yu(`data-radix-vue-combobox-item`),S=I([]);N(()=>x.value,()=>{S.value=y().map(e=>e.value)},{immediate:!0,flush:`post`});let C=G(()=>{if(m.value){if(n.filterFunction)return n.filterFunction(S.value,c.value);let e=S.value.filter(e=>typeof e==`string`);if(e.length)return e.filter(e=>{var t;return e.toLowerCase().includes((t=c.value)?.toLowerCase())})}return S.value});function w(e){let t=e===`blur`||e===`select`&&n.resetSearchTermOnSelect;!i.value&&l.value&&!Array.isArray(l.value)?n.displayValue?c.value=n.displayValue(l.value):typeof l.value==`object`?t&&(c.value=``):c.value=l.value.toString():t&&(c.value=``)}let E=G(()=>C.value.findIndex(e=>Oa(e,d.value))),D=G(()=>{var e;return(e=b.value.find(e=>Oa(e.value,d.value)))?.ref}),j=G(()=>JSON.stringify(l.value));N(j,async()=>{await T(),await T(),w(`select`)},{immediate:!n.searchTerm}),N(()=>[C.value.length,c.value.length],async([e,t],[n,r])=>{await T(),await T(),e&&(r>t||E.value===-1)&&(d.value=C.value[0])});let M=ps(v);function F(){var e;D.value instanceof Element&&((e=D.value)==null||e.scrollIntoView({block:`nearest`}))}function ee(){D.value instanceof Element&&D.value.focus&&D.value.focus()}let te=I(!1);function ne(){te.value=!0}function re(){requestAnimationFrame(()=>{te.value=!1})}async function ie(e){var t;C.value.length&&d.value&&D.value instanceof Element&&(e.preventDefault(),e.stopPropagation(),te.value||(t=D.value)==null||t.click())}return wu({searchTerm:c,modelValue:l,onValueChange:p,isUserInputted:m,multiple:i,disabled:a,open:u,onOpenChange:f,filteredOptions:C,contentId:``,inputElement:h,selectedElement:D,onInputElementChange:e=>h.value=e,onInputNavigation:async e=>{let t=E.value;t===0&&e===`up`||t===C.value.length-1&&e===`down`||(t===-1&&C.value.length||e===`home`?d.value=C.value[0]:e===`end`?d.value=C.value[C.value.length-1]:d.value=C.value[e===`up`?t-1:t+1],await T(),F(),ee(),T(()=>{var e;return(e=h.value)?.focus({preventScroll:!0})}))},onInputEnter:ie,onCompositionEnd:re,onCompositionStart:ne,selectedValue:d,onSelectedValueChange:e=>d.value=e,parentElement:v,contentElement:g,onContentElementChange:e=>g.value=e}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[A(R(Q),k({ref:R(_),style:{pointerEvents:R(u)?`auto`:void 0},as:e.as,"as-child":e.asChild,dir:R(s)},e.$attrs),{default:z(()=>[W(e.$slots,`default`,{open:R(u),modelValue:R(l)}),R(M)&&n.name?(P(),U(R(hu),{key:0,name:n.name,value:R(l)},null,8,[`name`,`value`])):O(``,!0)]),_:3},16,[`style`,`as`,`as-child`,`dir`])]),_:3}))}}),Eu=E({__name:`ComboboxInput`,props:{type:{default:`text`},disabled:{type:Boolean},autoFocus:{type:Boolean},asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=Cu(),{forwardRef:r,currentElement:i}=X();S(()=>{let e=i.value.nodeName===`INPUT`?i.value:i.value.querySelector(`input`);e&&(n.onInputElementChange(e),setTimeout(()=>{t.autoFocus&&e?.focus()},1))});let a=G(()=>t.disabled||n.disabled.value||!1),o=I();Te(()=>{var e;return o.value=(e=n.selectedElement.value)?.id});function s(e){n.open.value?n.onInputNavigation(e.key===`ArrowUp`?`up`:`down`):n.onOpenChange(!0)}function c(e){n.open.value&&n.onInputNavigation(e.key===`Home`?`home`:`end`)}function l(e){var t;n.searchTerm.value=(t=e.target)?.value,n.open.value||n.onOpenChange(!0),n.isUserInputted.value=!0}return(e,t)=>(P(),U(R(Q),{ref:R(r),as:e.as,"as-child":e.asChild,type:e.type,disabled:a.value,value:R(n).searchTerm.value,"aria-expanded":R(n).open.value,"aria-controls":R(n).contentId,"aria-disabled":a.value??void 0,"aria-activedescendant":o.value,"aria-autocomplete":`list`,role:`combobox`,autocomplete:`false`,onInput:l,onKeydown:[h(m(s,[`prevent`]),[`down`,`up`]),h(R(n).onInputEnter,[`enter`]),h(m(c,[`prevent`]),[`home`,`end`])],onCompositionstart:R(n).onCompositionStart,onCompositionend:R(n).onCompositionEnd},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`type`,`disabled`,`value`,`aria-expanded`,`aria-controls`,`aria-disabled`,`aria-activedescendant`,`onKeydown`,`onCompositionstart`,`onCompositionend`]))}}),Du=E({__name:`ComboboxAnchor`,props:{asChild:{type:Boolean},as:{}},setup(e){let{forwardRef:t}=X();return(e,n)=>(P(),U(R(nu),{"as-child":``},{default:z(()=>[A(R(Q),k({ref:R(t),"as-child":e.asChild,as:e.as},e.$attrs),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as-child`,`as`])]),_:3}))}}),Ou=E({__name:`ComboboxTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Cu(),r=G(()=>t.disabled||n.disabled.value||!1);return(e,i)=>(P(),U(R(Q),k(t,{type:e.as===`button`?`button`:void 0,tabindex:`-1`,"aria-label":`Show popup`,"aria-haspopup":`listbox`,"aria-expanded":R(n).open.value,"aria-controls":R(n).contentId,"data-state":R(n).open.value?`open`:`closed`,disabled:r.value,"data-disabled":r.value?``:void 0,"aria-disabled":r.value??void 0,onClick:i[0]||=e=>R(n).onOpenChange(!R(n).open.value)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`aria-disabled`]))}}),ku=E({__name:`ComboboxCancel`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Cu();function r(){var e;n.searchTerm.value=``,(e=n.inputElement.value)==null||e.focus()}return(e,n)=>(P(),U(R(Q),k({type:e.as===`button`?`button`:void 0},t,{tabindex:`-1`,onClick:r}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`]))}}),[Au,ju]=q(`ComboboxGroup`),Mu=E({__name:`ComboboxGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{currentRef:n,currentElement:r}=X(),i=Z(void 0,`radix-vue-combobox-group`),a=Cu(),o=I(!1);function s(){if(!r.value)return;let e=r.value.querySelectorAll(`[data-radix-vue-combobox-item]:not([data-hidden])`);o.value=!!e.length}return Mo(r,()=>{T(()=>{s()})},{childList:!0}),N(()=>a.searchTerm.value,()=>{T(()=>{s()})},{immediate:!0}),ju({id:i}),(e,r)=>xe((P(),U(R(Q),k(t,{ref_key:`currentRef`,ref:n,role:`group`,"aria-labelledby":R(i)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-labelledby`])),[[g,o.value]])}}),Nu=E({__name:`ComboboxLabel`,props:{for:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;X();let n=Au({id:``});return(e,r)=>(P(),U(R(Q),k(t,{id:R(n).id}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),[Pu,Fu]=q(`ComboboxContent`),Iu=E({__name:`ComboboxContentImpl`,props:{position:{default:`inline`},bodyLock:{type:Boolean},dismissable:{type:Boolean,default:!0},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=e,r=t,{position:i}=L(n),a=Cu();es(n.bodyLock);let{forwardRef:o,currentElement:s}=X();Ms(a.parentElement);let c=G(()=>n.position===`popper`?n:{}),l=ms(c.value);function u(e){a.onSelectedValueChange(``)}S(()=>{a.onContentElementChange(s.value)});let d={boxSizing:`border-box`,"--radix-combobox-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-combobox-content-available-width":`var(--radix-popper-available-width)`,"--radix-combobox-content-available-height":`var(--radix-popper-available-height)`,"--radix-combobox-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-combobox-trigger-height":`var(--radix-popper-anchor-height)`};return Fu({position:i}),(e,t)=>(P(),U(R(bu),null,{default:z(()=>[e.dismissable?(P(),U(R(Cc),{key:0,"as-child":``,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onDismiss:t[0]||=e=>R(a).onOpenChange(!1),onFocusOutside:t[1]||=e=>{var t;(t=R(a).parentElement.value)!=null&&t.contains(e.target)&&e.preventDefault(),r(`focusOutside`,e)},onInteractOutside:t[2]||=e=>r(`interactOutside`,e),onEscapeKeyDown:t[3]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[4]||=e=>{var t;(t=R(a).parentElement.value)!=null&&t.contains(e.target)&&e.preventDefault(),r(`pointerDownOutside`,e)}},{default:z(()=>[(P(),U(j(R(i)===`popper`?R(lu):R(Q)),k({...e.$attrs,...R(l)},{id:R(a).contentId,ref:R(o),role:`listbox`,"data-state":R(a).open.value?`open`:`closed`,style:{display:`flex`,flexDirection:`column`,outline:`none`,...R(i)===`popper`?d:{}},onPointerleave:u}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`style`]))]),_:3},8,[`disable-outside-pointer-events`])):(P(),U(j(R(i)===`popper`?R(lu):R(Q)),k({key:1},{...e.$attrs,...c.value},{id:R(a).contentId,ref:R(o),role:`listbox`,"data-state":R(a).open.value?`open`:`closed`,style:{display:`flex`,flexDirection:`column`,outline:`none`,...R(i)===`popper`?d:{}},onPointerleave:u}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`style`]))]),_:3}))}}),Lu=E({__name:`ComboboxContent`,props:{forceMount:{type:Boolean},position:{},bodyLock:{type:Boolean},dismissable:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=hs(e,t),{forwardRef:r}=X(),i=Cu();return i.contentId||=Z(void 0,`radix-vue-combobox-content`),(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(i).open.value},{default:z(()=>[A(Iu,k({...R(n),...e.$attrs},{ref:R(r)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),Ru=E({__name:`ComboboxEmpty`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;X();let n=Cu(),r=G(()=>n.filteredOptions.value.length===0);return(e,n)=>r.value?(P(),U(R(Q),K(k({key:0},t)),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`No options`)])]),_:3},16)):O(``,!0)}});function zu(e){let t=Jo({nonce:I()});return G(()=>{var n;return e?.value||(n=t.nonce)?.value})}const Bu=E({__name:`ComboboxViewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),{nonce:r}=L(t),i=zu(r);return(e,r)=>(P(),B(Se,null,[A(R(Q),k({...e.$attrs,...t},{ref:R(n),"data-radix-combobox-viewport":``,role:`presentation`,style:{position:`relative`,flex:1,overflow:`auto`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16),A(R(Q),{as:`style`,nonce:R(i)},{default:z(()=>[F(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-radix-combobox-viewport]::-webkit-scrollbar { display: none; } `)]),_:1},8,[`nonce`])],64))}}),[Vu,Hu]=q(`ComboboxItem`),Uu=`combobox.select`,Wu=E({__name:`ComboboxItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{disabled:i}=L(n),a=Cu();Au({id:``,options:I([])});let{forwardRef:o}=X(),s=G(()=>{var e,t;return a.multiple.value&&Array.isArray(a.modelValue.value)?(e=a.modelValue.value)?.some(e=>Oa(e,n.value)):Oa((t=a.modelValue)?.value,n.value)}),c=G(()=>Oa(a.selectedValue.value,n.value)),l=Z(void 0,`radix-vue-combobox-item`),u=Z(void 0,`radix-vue-combobox-option`),d=G(()=>a.isUserInputted.value?a.searchTerm.value===``||!!a.filteredOptions.value.find(e=>Oa(e,n.value)):!0);async function f(e){r(`select`,e),!(e!=null&&e.defaultPrevented)&&!i.value&&e&&a.onValueChange(n.value)}function p(e){if(!e)return;let t={originalEvent:e,value:n.value};Sa(Uu,f,t)}async function m(e){await T(),!e.defaultPrevented&&a.onSelectedValueChange(n.value)}if(n.value===``)throw Error(`A must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.`);return Hu({isSelected:s}),(e,t)=>(P(),U(R(xu),{value:e.value},{default:z(()=>[xe(A(R(Q),{id:R(u),ref:R(o),role:`option`,tabindex:`-1`,"aria-labelledby":R(l),"data-highlighted":c.value?``:void 0,"aria-selected":s.value,"data-state":s.value?`checked`:`unchecked`,"aria-disabled":R(i)||void 0,"data-disabled":R(i)?``:void 0,as:e.as,"as-child":e.asChild,"data-hidden":d.value?void 0:!0,onClick:p,onPointermove:m},{default:z(()=>[W(e.$slots,`default`,{},()=>[F(Oe(e.value),1)])]),_:3},8,[`id`,`aria-labelledby`,`data-highlighted`,`aria-selected`,`data-state`,`aria-disabled`,`data-disabled`,`as`,`as-child`,`data-hidden`]),[[g,d.value]])]),_:3},8,[`value`]))}}),Gu=E({__name:`ComboboxItemIndicator`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e;X();let n=Vu();return(e,r)=>R(n).isSelected.value?(P(),U(R(Q),k({key:0,"aria-hidden":`true`},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}}),Ku=E({__name:`ComboboxSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Q),k(t,{"aria-hidden":`true`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),qu=E({__name:`ComboboxArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e,n=Cu(),r=Pu();return X(),(e,i)=>R(n).open.value&&R(r).position.value===`popper`?(P(),U(R(pu),K(k({key:0},t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}}),Ju=E({__name:`ComboboxPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Yu=E({__name:`MenuAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(nu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Xu=E({__name:`MenuArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(pu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}});function Zu(){let e=I(!1);return S(()=>{Do(`keydown`,()=>{e.value=!0},{capture:!0,passive:!0}),Do([`pointerdown`,`pointermove`],()=>{e.value=!1},{capture:!0,passive:!0})}),e}const Qu=no(Zu),[$u,ed]=q([`MenuRoot`,`MenuSub`],`MenuContext`),[td,nd]=q(`MenuRoot`),rd=E({__name:`MenuRoot`,props:{open:{type:Boolean,default:!1},dir:{},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{modal:i,dir:a}=L(n),o=cs(a),s=J(n,`open`,r),c=I(),l=Qu();return ed({open:s,onOpenChange:e=>{s.value=e},content:c,onContentChange:e=>{c.value=e}}),nd({onClose:()=>{s.value=!1},isUsingKeyboardRef:l,dir:o,modal:i}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[W(e.$slots,`default`)]),_:3}))}}),id=`rovingFocusGroup.onEntryFocus`,ad={bubbles:!1,cancelable:!0},od={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function sd(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function cd(e,t,n){let r=sd(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return od[r]}function ld(e,t=!1){let n=Y();for(let r of e)if(r===n||(r.focus({preventScroll:t}),Y()!==n))return}function ud(e,t){return e.map((n,r)=>e[(t+r)%e.length])}const[dd,fd]=q(`RovingFocusGroup`),pd=E({__name:`RovingFocusGroup`,props:{orientation:{default:void 0},dir:{},loop:{type:Boolean,default:!1},currentTabStopId:{},defaultCurrentTabStopId:{},preventScrollOnEntryFocus:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`entryFocus`,`update:currentTabStopId`],setup(e,{expose:t,emit:n}){let r=e,i=n,{loop:a,orientation:o,dir:s}=L(r),c=cs(s),l=J(r,`currentTabStopId`,i,{defaultValue:r.defaultCurrentTabStopId,passive:r.currentTabStopId===void 0}),u=I(!1),d=I(!1),f=I(0),{getItems:p}=yu();function m(e){let t=!d.value;if(e.currentTarget&&e.target===e.currentTarget&&t&&!u.value){let t=new CustomEvent(id,ad);if(e.currentTarget.dispatchEvent(t),i(`entryFocus`,t),!t.defaultPrevented){let e=p().map(e=>e.ref).filter(e=>e.dataset.disabled!==``),t=e.find(e=>e.getAttribute(`data-active`)===`true`),n=e.find(e=>e.id===l.value),i=[t,n,...e].filter(Boolean);ld(i,r.preventScrollOnEntryFocus)}}d.value=!1}function h(){setTimeout(()=>{d.value=!1},1)}return t({getItems:p}),fd({loop:a,dir:c,orientation:o,currentTabStopId:l,onItemFocus:e=>{l.value=e},onItemShiftTab:()=>{u.value=!0},onFocusableItemAdd:()=>{f.value++},onFocusableItemRemove:()=>{f.value--}}),(e,t)=>(P(),U(R(bu),null,{default:z(()=>[A(R(Q),{tabindex:u.value||f.value===0?-1:0,"data-orientation":R(o),as:e.as,"as-child":e.asChild,dir:R(c),style:{outline:`none`},onMousedown:t[0]||=e=>d.value=!0,onMouseup:h,onFocus:m,onBlur:t[1]||=e=>u.value=!1},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`as`,`as-child`,`dir`])]),_:3}))}}),md=E({__name:`RovingFocusItem`,props:{tabStopId:{},focusable:{type:Boolean,default:!0},active:{type:Boolean,default:!0},allowShiftKey:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=dd(),r=G(()=>t.tabStopId||Z()),i=G(()=>n.currentTabStopId.value===r.value),{getItems:a}=Su();S(()=>{t.focusable&&n.onFocusableItemAdd()}),me(()=>{t.focusable&&n.onFocusableItemRemove()});function o(e){if(e.key===`Tab`&&e.shiftKey){n.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let r=cd(e,n.orientation.value,n.dir.value);if(r!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!t.allowShiftKey&&e.shiftKey)return;e.preventDefault();let i=[...a().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)];if(r===`last`)i.reverse();else if(r===`prev`||r===`next`){r===`prev`&&i.reverse();let t=i.indexOf(e.currentTarget);i=n.loop.value?ud(i,t+1):i.slice(t+1)}T(()=>ld(i))}}return(e,t)=>(P(),U(R(xu),null,{default:z(()=>[A(R(Q),{tabindex:i.value?0:-1,"data-orientation":R(n).orientation.value,"data-active":e.active,"data-disabled":e.focusable?void 0:``,as:e.as,"as-child":e.asChild,onMousedown:t[0]||=t=>{e.focusable?R(n).onItemFocus(r.value):t.preventDefault()},onFocus:t[1]||=e=>R(n).onItemFocus(r.value),onKeydown:o},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}}),[hd,gd]=q(`MenuContent`),_d=E({__name:`MenuContentImpl`,props:x({loop:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},disableOutsideScroll:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},{...ou}),emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`,`dismiss`],setup(e,{emit:t}){let n=e,r=t,i=$u(),a=td(),{trapFocus:o,disableOutsidePointerEvents:s,loop:c}=L(n);ds(),es(s.value);let l=I(``),u=I(0),d=I(0),f=I(null),p=I(`right`),m=I(0),h=I(null),{createCollection:g}=os(),{forwardRef:_,currentElement:v}=X(),y=g(v);N(v,e=>{i.onContentChange(e)});let{handleTypeaheadSearch:b}=Rs(y);me(()=>{window.clearTimeout(u.value)});function x(e){var t,n;return p.value===(t=f.value)?.side&&Qc(e,(n=f.value)?.area)}async function S(e){var t;r(`openAutoFocus`,e),!e.defaultPrevented&&(e.preventDefault(),(t=v.value)==null||t.focus({preventScroll:!0}))}function C(e){if(e.defaultPrevented)return;let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1,i=Ho(e,Y(),v.value,{loop:c.value,arrowKeyOptions:`vertical`,dir:a?.dir.value,focus:!0,attributeName:`[data-radix-vue-collection-item]:not([data-disabled])`});if(i)return i?.focus();if(e.code===`Space`||(t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&b(e.key)),e.target!==v.value)||!Wc.includes(e.key))return;e.preventDefault();let o=y.value;Uc.includes(e.key)&&o.reverse(),Xc(o)}function w(e){var t,n;(n=(t=e?.currentTarget)?.contains)!=null&&n.call(t,e.target)||(window.clearTimeout(u.value),l.value=``)}function T(e){var t;if(!$c(e))return;let n=e.target,r=m.value!==e.clientX;if((t=e?.currentTarget)!=null&&t.contains(n)&&r){let t=e.clientX>m.value?`right`:`left`;p.value=t,m.value=e.clientX}}return gd({onItemEnter:e=>!!x(e),onItemLeave:e=>{var t;x(e)||((t=v.value)==null||t.focus(),h.value=null)},onTriggerLeave:e=>!!x(e),searchRef:l,pointerGraceTimerRef:d,onPointerGraceIntentChange:e=>{f.value=e}}),(e,t)=>(P(),U(R(zc),{"as-child":``,trapped:R(o),onMountAutoFocus:S,onUnmountAutoFocus:t[7]||=e=>r(`closeAutoFocus`,e)},{default:z(()=>[A(R(Cc),{"as-child":``,"disable-outside-pointer-events":R(s),onEscapeKeyDown:t[2]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[3]||=e=>r(`pointerDownOutside`,e),onFocusOutside:t[4]||=e=>r(`focusOutside`,e),onInteractOutside:t[5]||=e=>r(`interactOutside`,e),onDismiss:t[6]||=e=>r(`dismiss`)},{default:z(()=>[A(R(pd),{"current-tab-stop-id":h.value,"onUpdate:currentTabStopId":t[0]||=e=>h.value=e,"as-child":``,orientation:`vertical`,dir:R(a).dir.value,loop:R(c),onEntryFocus:t[1]||=e=>{r(`entryFocus`,e),R(a).isUsingKeyboardRef.value||e.preventDefault()}},{default:z(()=>[A(R(lu),{ref:R(_),role:`menu`,as:e.as,"as-child":e.asChild,"aria-orientation":`vertical`,"data-radix-menu-content":``,"data-state":R(qc)(R(i).open.value),dir:R(a).dir.value,side:e.side,"side-offset":e.sideOffset,align:e.align,"align-offset":e.alignOffset,"avoid-collisions":e.avoidCollisions,"collision-boundary":e.collisionBoundary,"collision-padding":e.collisionPadding,"arrow-padding":e.arrowPadding,"prioritize-position":e.prioritizePosition,sticky:e.sticky,"hide-when-detached":e.hideWhenDetached,onKeydown:C,onBlur:w,onPointermove:T},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`,`dir`,`side`,`side-offset`,`align`,`align-offset`,`avoid-collisions`,`collision-boundary`,`collision-padding`,`arrow-padding`,`prioritize-position`,`sticky`,`hide-when-detached`])]),_:3},8,[`current-tab-stop-id`,`dir`,`loop`])]),_:3},8,[`disable-outside-pointer-events`])]),_:3},8,[`trapped`]))}}),vd=E({inheritAttrs:!1,__name:`MenuItemImpl`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=hd(),{forwardRef:r}=X(),i=I(!1);async function a(e){if(!e.defaultPrevented&&$c(e)){if(t.disabled)n.onItemLeave(e);else if(!n.onItemEnter(e)){let t=e.currentTarget;t?.focus({preventScroll:!0})}}}async function o(e){await T(),!e.defaultPrevented&&$c(e)&&n.onItemLeave(e)}return(e,t)=>(P(),U(R(xu),{value:{textValue:e.textValue}},{default:z(()=>[A(R(Q),k({ref:R(r),role:`menuitem`,tabindex:`-1`},e.$attrs,{as:e.as,"as-child":e.asChild,"data-radix-vue-collection-item":``,"aria-disabled":e.disabled||void 0,"data-disabled":e.disabled?``:void 0,"data-highlighted":i.value?``:void 0,onPointermove:a,onPointerleave:o,onFocus:t[0]||=async t=>{await T(),!(t.defaultPrevented||e.disabled)&&(i.value=!0)},onBlur:t[1]||=async e=>{await T(),!e.defaultPrevented&&(i.value=!1)}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`aria-disabled`,`data-disabled`,`data-highlighted`])]),_:3},8,[`value`]))}}),yd=E({__name:`MenuItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=td(),s=hd(),c=I(!1);async function l(){let e=a.value;if(!n.disabled&&e){let e=new CustomEvent(Bc,{bubbles:!0,cancelable:!0});r(`select`,e),await T(),e.defaultPrevented?c.value=!1:o.onClose()}}return(e,t)=>(P(),U(vd,k(n,{ref:R(i),onClick:l,onPointerdown:t[0]||=()=>{c.value=!0},onPointerup:t[1]||=async e=>{var t;await T(),!e.defaultPrevented&&(c.value||(t=e.currentTarget)==null||t.click())},onKeydown:t[2]||=async t=>{let n=R(s).searchRef.value!==``;e.disabled||n&&t.key===` `||R(Vc).includes(t.key)&&(t.currentTarget.click(),t.preventDefault())}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[bd,xd]=q([`MenuCheckboxItem`,`MenuRadioItem`],`MenuItemIndicatorContext`),Sd=E({__name:`MenuItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=bd({checked:I(!1)});return(e,n)=>(P(),U(R(Xs),{present:e.forceMount||R(Jc)(R(t).checked.value)||R(t).checked.value===!0},{default:z(()=>[A(R(Q),{as:e.as,"as-child":e.asChild,"data-state":R(Yc)(R(t).checked.value)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`])]),_:3},8,[`present`]))}}),Cd=E({__name:`MenuCheckboxItem`,props:{checked:{type:[Boolean,String],default:!1},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=t,i=J(n,`checked`,r);return xd({checked:i}),(e,t)=>(P(),U(yd,k({role:`menuitemcheckbox`},n,{"aria-checked":R(Jc)(R(i))?`mixed`:R(i),"data-state":R(Yc)(R(i)),onSelect:t[0]||=async e=>{r(`select`,e),R(Jc)(R(i))?i.value=!0:i.value=!R(i)}}),{default:z(()=>[W(e.$slots,`default`,{checked:R(i)})]),_:3},16,[`aria-checked`,`data-state`]))}}),wd=E({__name:`MenuRootContentModal`,props:{loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=hs(n,r),a=$u(),{forwardRef:o,currentElement:s}=X();return Ms(s),(e,t)=>(P(),U(_d,k(R(i),{ref:R(o),"trap-focus":R(a).open.value,"disable-outside-pointer-events":R(a).open.value,"disable-outside-scroll":!0,onDismiss:t[0]||=e=>R(a).onOpenChange(!1),onFocusOutside:t[1]||=m(e=>r(`focusOutside`,e),[`prevent`])}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`trap-focus`,`disable-outside-pointer-events`]))}}),Td=E({__name:`MenuRootContentNonModal`,props:{loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t),r=$u();return(e,t)=>(P(),U(_d,k(R(n),{"trap-focus":!1,"disable-outside-pointer-events":!1,"disable-outside-scroll":!1,onDismiss:t[0]||=e=>R(r).onOpenChange(!1)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Ed=E({__name:`MenuContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t),r=$u(),i=td();return(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(r).open.value},{default:z(()=>[R(i).modal.value?(P(),U(wd,K(k({key:0},{...e.$attrs,...R(n)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):(P(),U(Td,K(k({key:1},{...e.$attrs,...R(n)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Dd=E({__name:`MenuGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),k({role:`group`},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Od=E({__name:`MenuLabel`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),kd=E({__name:`MenuPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[Ad,jd]=q(`MenuRadioGroup`),Md=E({__name:`MenuRadioGroup`,props:{modelValue:{default:``},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t);return jd({modelValue:r,onValueChange:e=>{r.value=e}}),(e,t)=>(P(),U(Dd,K(V(n)),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(r)})]),_:3},16))}}),Nd=E({__name:`MenuRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{value:i}=L(n),a=Ad(),o=G(()=>a.modelValue.value===i?.value);return xd({checked:o}),(e,t)=>(P(),U(yd,k({role:`menuitemradio`},n,{"aria-checked":o.value,"data-state":R(Yc)(o.value),onSelect:t[0]||=async e=>{r(`select`,e),R(a).onValueChange(R(i))}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-checked`,`data-state`]))}}),Pd=E({__name:`MenuSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),k(t,{role:`separator`,"aria-orientation":`horizontal`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[Fd,Id]=q(`MenuSub`),Ld=E({__name:`MenuSub`,props:{open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=J(n,`open`,t,{defaultValue:!1,passive:n.open===void 0}),i=$u(),a=I(),o=I();return H(e=>{i?.open.value===!1&&(r.value=!1),e(()=>r.value=!1)}),ed({open:r,onOpenChange:e=>{r.value=e},content:o,onContentChange:e=>{o.value=e}}),Id({triggerId:``,contentId:``,trigger:a,onTriggerChange:e=>{a.value=e}}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[W(e.$slots,`default`)]),_:3}))}}),Rd=E({__name:`MenuSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t),r=$u(),i=td(),a=Fd(),{forwardRef:o,currentElement:s}=X();return a.contentId||=Z(void 0,`radix-vue-menu-sub-content`),(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(r).open.value},{default:z(()=>[A(_d,k(R(n),{id:R(a).contentId,ref:R(o),"aria-labelledby":R(a).triggerId,align:`start`,side:R(i).dir.value===`rtl`?`left`:`right`,"disable-outside-pointer-events":!1,"disable-outside-scroll":!1,"trap-focus":!1,onOpenAutoFocus:t[0]||=m(e=>{var t;R(i).isUsingKeyboardRef.value&&((t=R(s))==null||t.focus())},[`prevent`]),onCloseAutoFocus:t[1]||=m(()=>{},[`prevent`]),onFocusOutside:t[2]||=e=>{e.defaultPrevented||e.target!==R(a).trigger.value&&R(r).onOpenChange(!1)},onEscapeKeyDown:t[3]||=e=>{R(i).onClose(),e.preventDefault()},onKeydown:t[4]||=e=>{var t,n;let o=(t=e.currentTarget)?.contains(e.target),s=R(Kc)[R(i).dir.value].includes(e.key);o&&s&&(R(r).onOpenChange(!1),(n=R(a).trigger.value)==null||n.focus(),e.preventDefault())}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`,`side`])]),_:3},8,[`present`]))}}),zd=E({__name:`MenuSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=$u(),r=td(),i=Fd(),a=hd(),o=I(null);i.triggerId||=Z(void 0,`radix-vue-menu-sub-trigger`);function s(){o.value&&window.clearTimeout(o.value),o.value=null}me(()=>{s()});function c(e){!$c(e)||a.onItemEnter(e)||!t.disabled&&!n.open.value&&!o.value&&(a.onPointerGraceIntentChange(null),o.value=window.setTimeout(()=>{n.onOpenChange(!0),s()},100))}async function l(e){var t,r;if(!$c(e))return;s();let i=(t=n.content.value)?.getBoundingClientRect();if(i!=null&&i.width){let t=(r=n.content.value)?.dataset.side,o=t===`right`,s=o?-5:5,c=i[o?`left`:`right`],l=i[o?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+s,y:e.clientY},{x:c,y:i.top},{x:l,y:i.top},{x:l,y:i.bottom},{x:c,y:i.bottom}],side:t}),window.clearTimeout(a.pointerGraceTimerRef.value),a.pointerGraceTimerRef.value=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e))return;a.onPointerGraceIntentChange(null)}}async function u(e){var i;let o=a.searchRef.value!==``;t.disabled||o&&e.key===` `||Gc[r.dir.value].includes(e.key)&&(n.onOpenChange(!0),await T(),(i=n.content.value)==null||i.focus(),e.preventDefault())}return(e,r)=>(P(),U(Yu,{"as-child":``},{default:z(()=>[A(vd,k(t,{id:R(i).triggerId,ref:e=>{var t;(t=R(i))==null||t.onTriggerChange(e?.$el)},"aria-haspopup":`menu`,"aria-expanded":R(n).open.value,"aria-controls":R(i).contentId,"data-state":R(qc)(R(n).open.value),onClick:r[0]||=async e=>{t.disabled||e.defaultPrevented||(e.currentTarget.focus(),R(n).open.value||R(n).onOpenChange(!0))},onPointermove:c,onPointerleave:l,onKeydown:u}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`aria-expanded`,`aria-controls`,`data-state`])]),_:3}))}}),[Bd,Vd]=q(`ContextMenuRoot`),Hd=E({inheritAttrs:!1,__name:`ContextMenuRoot`,props:{dir:{},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{dir:i,modal:a}=L(n);X();let o=cs(i),s=I(!1);return Vd({open:s,onOpenChange:e=>{s.value=e},dir:o,modal:a}),N(s,e=>{r(`update:open`,e)}),(e,t)=>(P(),U(R(rd),{open:s.value,"onUpdate:open":t[0]||=e=>s.value=e,dir:R(o),modal:R(a)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`open`,`dir`,`modal`]))}});function Ud(e){return e.pointerType!==`mouse`}const Wd=E({inheritAttrs:!1,__name:`ContextMenuTrigger`,props:{disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,{disabled:n}=L(t),{forwardRef:r}=X(),i=Bd(),a=I({x:0,y:0}),o=G(()=>({getBoundingClientRect:()=>({width:0,height:0,left:a.value.x,right:a.value.x,top:a.value.y,bottom:a.value.y,...a.value})})),s=I(0);function c(){window.clearTimeout(s.value)}function l(e){a.value={x:e.clientX,y:e.clientY},i.onOpenChange(!0)}async function u(e){n.value||(await T(),e.defaultPrevented||(c(),l(e),e.preventDefault()))}async function d(e){n.value||(await T(),Ud(e)&&!e.defaultPrevented&&(c(),s.value=window.setTimeout(()=>l(e),700)))}async function f(e){n.value||(await T(),Ud(e)&&!e.defaultPrevented&&c())}return(e,t)=>(P(),B(Se,null,[A(R(Yu),{as:`template`,element:o.value},null,8,[`element`]),A(R(Q),k({ref:R(r),as:e.as,"as-child":e.asChild,"data-state":R(i).open.value?`open`:`closed`,"data-disabled":R(n)?``:void 0,style:{WebkitTouchCallout:`none`}},e.$attrs,{onContextmenu:u,onPointerdown:d,onPointermove:f,onPointercancel:f,onPointerup:f}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-state`,`data-disabled`])],64))}}),Gd=E({__name:`ContextMenuPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(kd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Kd=E({__name:`ContextMenuContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},alignOffset:{default:0},avoidCollisions:{type:Boolean,default:!0},collisionBoundary:{default:()=>[]},collisionPadding:{default:0},sticky:{default:`partial`},hideWhenDetached:{type:Boolean,default:!1},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let r=Bd(),i=I(!1);return(e,t)=>(P(),U(R(Ed),k(R(n),{side:`right`,"side-offset":2,align:`start`,style:{"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`},onCloseAutoFocus:t[0]||=e=>{!e.defaultPrevented&&i.value&&e.preventDefault(),i.value=!1},onInteractOutside:t[1]||=e=>{!e.defaultPrevented&&!R(r).modal.value&&(i.value=!0)}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),qd=E({__name:`ContextMenuArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Xu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Jd=E({__name:`ContextMenuItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(yd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Yd=E({__name:`ContextMenuGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Dd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Xd=E({__name:`ContextMenuSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Pd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Zd=E({__name:`ContextMenuCheckboxItem`,props:{checked:{type:[Boolean,String]},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Cd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Qd=E({__name:`ContextMenuItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Sd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),$d=E({__name:`ContextMenuLabel`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Od),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ef=E({__name:`ContextMenuRadioGroup`,props:{modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Md),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),tf=E({__name:`ContextMenuRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Nd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),nf=E({__name:`ContextMenuSub`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0});return(e,t)=>(P(),U(R(Ld),{open:R(i),"onUpdate:open":t[0]||=e=>v(i)?i.value=e:null},{default:z(()=>[W(e.$slots,`default`,{open:R(i)})]),_:3},8,[`open`]))}}),rf=E({__name:`ContextMenuSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(P(),U(R(Rd),k(R(n),{style:{"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),af=E({__name:`ContextMenuSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(zd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),sf=[`hour`,`minute`,`second`];function cf(e){let{formatter:t}=e,n=Wa.map(t=>[t,e.value[t]]);if(`hour`in e.value){let r=Ga.map(n=>n===`dayPeriod`?[n,t.dayPeriod(aa(e.value))]:[n,e.value[n]]),i=[...n,...r];return Object.fromEntries(i)}return Object.fromEntries(n)}function lf(e){let t=Ka.map(e=>e===`dayPeriod`?[e,`AM`]:[e,null]).filter(([t])=>t===`literal`||t===null||e===`minute`&&t===`second`||e===`hour`&&(t===`second`||t===`minute`)?!1:e===`day`?!sf.includes(t)&&t!==`dayPeriod`:!0);return Object.fromEntries(t)}function uf(e){let{segmentValues:t,formatter:n,locale:r}=e;function i(i){if(`hour`in t){let a=t[i];return a===null?Ra(i,``,r.value):i===`day`&&t.month!==null?n.part(e.dateRef.set({[i]:a,month:t.month}),i,{hourCycle:e.hourCycle===24?`h24`:void 0}):n.part(e.dateRef.set({[i]:a}),i,{hourCycle:e.hourCycle===24?`h24`:void 0})}else{if(qa(i)){let a=t[i];return a===null?Ra(i,``,r.value):i===`day`&&t.month!==null?n.part(e.dateRef.set({[i]:a,month:t.month}),i):n.part(e.dateRef.set({[i]:a}),i)}return``}}return Object.keys(t).reduce((e,n)=>{if(!Ja(n))return e;if(`hour`in t&&n===`dayPeriod`){let i=t[n];i===null?e[n]=Ra(n,`AM`,r.value):e[n]=i}else e[n]=i(n);return e},{})}function df(e){let{granularity:t,formatter:n,contentObj:r,hideTimeZone:i,hourCycle:a}=e;return n.toParts(e.dateRef,Ya(t,a)).map(e=>[`literal`,`timeZoneName`,null].includes(e.type)||!Ja(e.type)?{part:e.type,value:e.value}:{part:e.type,value:r[e.type]}).filter(t=>!(t.part===null||t.value===null||t.part===`timeZoneName`&&(!sa(e.dateRef)||i)))}function ff(e){let t=uf(e),n=df({contentObj:t,...e});return{obj:t,arr:n}}function pf(e){let t=Vs();return e===t.ARROW_RIGHT||e===t.ARROW_LEFT}function mf(e){return!Number.isNaN(Number.parseInt(e))}function hf(e){let t=Vs();return!!([t.ENTER,t.ARROW_UP,t.ARROW_DOWN,t.ARROW_LEFT,t.ARROW_RIGHT,t.BACKSPACE,t.SPACE,`a`,`A`,`p`,`P`].includes(e)||mf(e))}function gf(e){return Array.from(e.querySelectorAll(`[data-radix-vue-date-field-segment]`)).filter(e=>e.getAttribute(`data-radix-vue-date-field-segment`)!==`literal`)}const _f=[`id`,`value`,`name`,`disabled`,`required`],[vf,yf]=q(`DateFieldRoot`),bf=E({inheritAttrs:!1,__name:`DateFieldRoot`,props:{defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:placeholder`],setup(e,{expose:t,emit:n}){let r=e,i=n,{locale:a,disabled:o,readonly:s,isDateUnavailable:c,granularity:l,defaultValue:u,dir:d}=L(r),f=ss(r.locale),p=cs(d),{primitiveElement:m,currentElement:g}=Us(),_=I(new Set);S(()=>{gf(g.value).forEach(e=>_.value.add(e))});let v=J(r,`modelValue`,i,{defaultValue:u.value,passive:r.modelValue===void 0}),y=Na({defaultPlaceholder:r.placeholder,granularity:l.value,defaultValue:v.value,locale:r.locale}),b=J(r,`placeholder`,i,{defaultValue:r.defaultPlaceholder??y.copy(),passive:r.placeholder===void 0}),x=G(()=>r.granularity?ca(b.value)?r.granularity:`day`:ca(b.value)?`minute`:`day`),C=G(()=>{var e;return v.value?!!((e=c.value)!=null&&e.call(c,v.value)||r.minValue&&ua(v.value,r.minValue)||r.maxValue&&ua(r.maxValue,v.value)):!1}),w=lf(x.value),E=I(v.value?{...cf({value:v.value,formatter:f})}:{...w}),D=G(()=>ff({granularity:x.value,dateRef:b.value,formatter:f,hideTimeZone:r.hideTimeZone,hourCycle:r.hourCycle,segmentValues:E.value,locale:a})),O=G(()=>D.value.arr),j=G(()=>O.value.filter(({part:e})=>e!==`literal`));N(a,e=>{f.getLocale()!==e&&(f.setLocale(e),T(()=>{_.value.clear(),gf(g.value).forEach(e=>_.value.add(e))}))}),N(v,e=>{!Ma(e)&&b.value.compare(e)!==0&&(b.value=e.copy())}),N([v,a],([e])=>{Ma(e)?Object.values(E.value).every(e=>e!==null)&&e===void 0&&(E.value={...w}):E.value={...cf({value:e,formatter:f})}});let M=I(null),F=G(()=>Array.from(_.value).findIndex(e=>{var t;return e.getAttribute(`data-radix-vue-date-field-segment`)===(t=M.value)?.getAttribute(`data-radix-vue-date-field-segment`)})),ee=G(()=>{let e=p.value===`rtl`?-1:1;return(e<0?F.value<0:F.value>_.value.size-1)?null:Array.from(_.value)[F.value+e]}),te=G(()=>{let e=p.value===`rtl`?-1:1;return(e>0?F.value<0:F.value>_.value.size-1)?null:Array.from(_.value)[F.value-e]}),ne=Vs();function re(e){var t,n;pf(e.key)&&(e.key===ne.ARROW_LEFT&&((t=te.value)==null||t.focus()),e.key===ne.ARROW_RIGHT&&((n=ee.value)==null||n.focus()))}function ie(e){M.value=e}return yf({isDateUnavailable:c.value,locale:a,modelValue:v,placeholder:b,disabled:o,formatter:f,hourCycle:r.hourCycle,readonly:s,segmentValues:E,isInvalid:C,segmentContents:j,elements:_,setFocusedElement:ie,focusNext(){var e;(e=ee.value)==null||e.focus()}}),t({setFocusedElement:ie}),(e,t)=>(P(),B(Se,null,[A(R(Q),k(e.$attrs,{ref_key:`primitiveElement`,ref:m,role:`group`,"aria-disabled":R(o)?!0:void 0,"data-disabled":R(o)?``:void 0,"data-readonly":R(s)?``:void 0,"data-invalid":C.value?``:void 0,dir:R(p),onKeydown:h(re,[`left`,`right`])}),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(v),segments:O.value,isInvalid:C.value})]),_:3},16,[`aria-disabled`,`data-disabled`,`data-readonly`,`data-invalid`,`dir`]),_e(`input`,{id:e.id,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:R(v)?R(v).toString():``,name:e.name,disabled:R(o),required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0},onFocus:t[0]||=e=>{var t,n;return(n=(t=Array.from(_.value))?.[0])?.focus()}},null,40,_f)],64))}});function xf(e){return{role:`spinbutton`,contenteditable:!0,tabindex:e.disabled?void 0:0,spellcheck:!1,inputmode:`numeric`,autocorrect:`off`,enterkeyhint:`next`,style:`caret-color: transparent;`}}function Sf(e){let{segmentValues:t,placeholder:n}=e,r=t.day===null,i=t.day?n.set({day:t.day}):n,a=i.day,o=1,s=la(i),c=r?`Empty`:`${a}`;return{...xf(e),"aria-label":`day,`,"aria-valuemin":o,"aria-valuemax":s,"aria-valuenow":a,"aria-valuetext":c,"data-placeholder":r?``:void 0}}function Cf(e){let{segmentValues:t,placeholder:n,formatter:r}=e,i=t.month===null,a=t.month?n.set({month:t.month}):n,o=a.month,s=1,c=12,l=i?`Empty`:`${o} - ${r.fullMonth(aa(a))}`;return{...xf(e),"aria-label":`month, `,contenteditable:!0,"aria-valuemin":s,"aria-valuemax":c,"aria-valuenow":o,"aria-valuetext":l,"data-placeholder":i?``:void 0}}function wf(e){let{segmentValues:t,placeholder:n}=e,r=t.year===null,i=t.year?n.set({year:t.year}):n,a=1,o=9999,s=i.year,c=r?`Empty`:`${s}`;return{...xf(e),"aria-label":`year, `,"aria-valuemin":a,"aria-valuemax":o,"aria-valuenow":s,"aria-valuetext":c,"data-placeholder":r?``:void 0}}function Tf(e){let{segmentValues:t,hourCycle:n,placeholder:r}=e;if(!(`hour`in t)||!(`hour`in r))return{};let i=t.hour===null,a=t.hour?r.set({hour:t.hour}):r,o=n===12?1:0,s=n===12?12:23,c=a.hour,l=i?`Empty`:`${c} ${t.dayPeriod??``}`;return{...xf(e),"aria-label":`hour, `,"aria-valuemin":o,"aria-valuemax":s,"aria-valuenow":c,"aria-valuetext":l,"data-placeholder":i?``:void 0}}function Ef(e){let{segmentValues:t,placeholder:n}=e;if(!(`minute`in t)||!(`minute`in n))return{};let r=t.minute===null,i=(t.minute?n.set({minute:t.minute}):n).minute,a=0,o=59,s=r?`Empty`:`${i}`;return{...xf(e),"aria-label":`minute, `,"aria-valuemin":a,"aria-valuemax":o,"aria-valuenow":i,"aria-valuetext":s,"data-placeholder":r?``:void 0}}function Df(e){let{segmentValues:t,placeholder:n}=e;if(!(`second`in t)||!(`second`in n))return{};let r=t.second===null,i=(t.second?n.set({second:t.second}):n).second,a=0,o=59,s=r?`Empty`:`${i}`;return{...xf(e),"aria-label":`second, `,"aria-valuemin":a,"aria-valuemax":o,"aria-valuenow":i,"aria-valuetext":s,"data-placeholder":r?``:void 0}}function Of(e){let{segmentValues:t}=e;if(!(`dayPeriod`in t))return{};let n=0,r=12,i=t.hour?t.hour>12?t.hour-12:t.hour:0,a=t.dayPeriod??`AM`;return{...xf(e),inputmode:`text`,"aria-label":`AM/PM`,"aria-valuemin":n,"aria-valuemax":r,"aria-valuenow":i,"aria-valuetext":a}}function kf(e){return{"aria-hidden":!0,"data-segment":`literal`}}function Af(e){return{role:`textbox`,"aria-label":`timezone, `,"data-readonly":!0,"data-segment":`timeZoneName`,tabindex:e.disabled?void 0:0,style:`caret-color: transparent;`}}function jf(e){let{segmentValues:t,placeholder:n}=e,r=0,i=0,a=0,o=`era`in t?t.era:n.era;return{...xf(e),"aria-label":`era`,"aria-valuemin":r,"aria-valuemax":i,"aria-valuenow":a,"aria-valuetext":o}}const Mf={day:{attrs:Sf},month:{attrs:Cf},year:{attrs:wf},hour:{attrs:Tf},minute:{attrs:Ef},second:{attrs:Df},dayPeriod:{attrs:Of},literal:{attrs:kf},timeZoneName:{attrs:Af},era:{attrs:jf}};function Nf(e){let t=Vs();function n({e,part:n,dateRef:r,prevValue:i}){let a=e.key===t.ARROW_UP?1:-1,o=0,s=59;if(i===null)return a>0?o:s;let c=[n,a];return r.set({[n]:i}).cycle(...c)[n]}function r(t){if(e.hasLeftFocus.value=!1,t===null)return t;let n=t.toString();return n.length===1?(e.modelValue.value=void 0,null):Number.parseInt(n.slice(0,-1))}function i({e:n,part:r,dateRef:i,prevValue:a,hourCycle:o}){let s=n.key===t.ARROW_UP?1:-1;if(a===null)return i[r];if(r===`hour`&&`hour`in i){let e=[r,s,{hourCycle:o}];return i.set({[r]:a}).cycle(...e)[r]}let c=[r,s];return r===`day`&&e.segmentValues.value.month!==null?i.set({[r]:a,month:e.segmentValues.value.month}).cycle(...c)[r]:i.set({[r]:a}).cycle(...c)[r]}function a(t,n,r){let i=!1,a=Math.floor(t/10);if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,r=null),r===null)return n===0?(e.lastKeyZero.value=!0,{value:null,moveToNext:i}):((e.lastKeyZero.value||n>a)&&(i=!0),e.lastKeyZero.value=!1,{value:n,moveToNext:i});let o=r.toString().length,s=Number.parseInt(r.toString()+n.toString());return o===2||s>t?((n>a||s>t)&&(i=!0),{value:n,moveToNext:i}):(i=!0,{value:s,moveToNext:i})}function o(t,n){let r=!1,i=5;if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,n=null),n===null)return t===0?(e.lastKeyZero.value=!0,{value:0,moveToNext:r}):((e.lastKeyZero.value||t>i)&&(r=!0),e.lastKeyZero.value=!1,{value:t,moveToNext:r});let a=n.toString().length,o=Number.parseInt(n.toString()+t.toString());return a===2||o>59?(t>i&&(r=!0),{value:t,moveToNext:r}):(r=!0,{value:o,moveToNext:r})}function s(t,n){let r=!1,i=2;if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,n=null),n===null)return t===0?(e.lastKeyZero.value=!0,{value:0,moveToNext:r}):((e.lastKeyZero.value||t>i)&&(r=!0),e.lastKeyZero.value=!1,{value:t,moveToNext:r});let a=n.toString().length,o=Number.parseInt(n.toString()+t.toString());return a===2||o>24?(t>i&&(r=!0),{value:t,moveToNext:r}):(r=!0,{value:o,moveToNext:r})}function c(t,n){let r=!1;if(e.hasLeftFocus.value&&(e.hasLeftFocus.value=!1,n=null),n===null)return{value:t===0?1:t,moveToNext:r};let i=n.toString()+t.toString();return i.length>4?{value:t===0?1:t,moveToNext:r}:(i.length===4&&(r=!0),{value:Number.parseInt(i),moveToNext:r})}let l=G(()=>{var t;return(t=Mf[e.part])?.attrs({disabled:e.disabled.value,placeholder:e.placeholder.value,hourCycle:e.hourCycle,segmentValues:e.segmentValues.value,formatter:e.formatter})??{}});function u(n){if(!hf(n.key)||pf(n.key))return;let o=e.segmentValues.value.day;if(n.key===t.ARROW_DOWN||n.key===t.ARROW_UP){e.segmentValues.value.day=i({e:n,part:`day`,dateRef:e.placeholder.value,prevValue:o});return}if(mf(n.key)){let t=Number.parseInt(n.key),r=e.segmentValues.value.month,i=la(r?e.placeholder.value.set({month:r}):e.placeholder.value),{value:s,moveToNext:c}=a(i,t,o);e.segmentValues.value.day=s,c&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.day=r(o))}function d(n){if(!hf(n.key)||pf(n.key))return;let o=e.segmentValues.value.month;if(n.key===t.ARROW_DOWN||n.key===t.ARROW_UP){e.segmentValues.value.month=i({e:n,part:`month`,dateRef:e.placeholder.value,prevValue:o});return}if(mf(n.key)){let t=Number.parseInt(n.key),{value:r,moveToNext:i}=a(12,t,o);e.segmentValues.value.month=r,i&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.month=r(o))}function f(n){if(!hf(n.key)||pf(n.key))return;let a=e.segmentValues.value.year;if(n.key===t.ARROW_DOWN||n.key===t.ARROW_UP){e.segmentValues.value.year=i({e:n,part:`year`,dateRef:e.placeholder.value,prevValue:a});return}if(mf(n.key)){let t=Number.parseInt(n.key),{value:r,moveToNext:i}=c(t,a);e.segmentValues.value.year=r,i&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.year=r(a))}function p(n){let a=e.placeholder.value;if(!hf(n.key)||pf(n.key)||!(`hour`in a)||!(`hour`in e.segmentValues.value))return;let o=e.segmentValues.value.hour,c=e.hourCycle;if(n.key===t.ARROW_UP||n.key===t.ARROW_DOWN){e.segmentValues.value.hour=i({e:n,part:`hour`,dateRef:e.placeholder.value,prevValue:o,hourCycle:c}),`dayPeriod`in e.segmentValues.value&&(e.segmentValues.value.hour<12?e.segmentValues.value.dayPeriod=`AM`:e.segmentValues.value.hour&&(e.segmentValues.value.dayPeriod=`PM`));return}if(mf(n.key)){let t=Number.parseInt(n.key),{value:r,moveToNext:i}=s(t,o);`dayPeriod`in e.segmentValues.value&&r&&r>12?e.segmentValues.value.dayPeriod=`PM`:`dayPeriod`in e.segmentValues.value&&r&&(e.segmentValues.value.dayPeriod=`AM`),e.segmentValues.value.hour=r,i&&e.focusNext()}n.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.hour=r(o))}function m(i){let a=e.placeholder.value;if(!hf(i.key)||pf(i.key)||!(`minute`in a)||!(`minute`in e.segmentValues.value))return;let s=e.segmentValues.value.minute;if(e.segmentValues.value.minute=n({e:i,part:`minute`,dateRef:e.placeholder.value,prevValue:s}),mf(i.key)){let t=Number.parseInt(i.key),{value:n,moveToNext:r}=o(t,s);e.segmentValues.value.minute=n,r&&e.focusNext()}i.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.minute=r(s))}function h(i){let a=e.placeholder.value;if(!hf(i.key)||pf(i.key)||!(`second`in a)||!(`second`in e.segmentValues.value))return;let s=e.segmentValues.value.second;if(e.segmentValues.value.second=n({e:i,part:`second`,dateRef:e.placeholder.value,prevValue:s}),mf(i.key)){let t=Number.parseInt(i.key),{value:n,moveToNext:r}=o(t,s);e.segmentValues.value.second=n,r&&e.focusNext()}i.key===t.BACKSPACE&&(e.hasLeftFocus.value=!1,e.segmentValues.value.second=r(s))}function g(n){if(!((!hf(n.key)||pf(n.key))&&n.key!==`a`&&n.key!==`p`||!(`hour`in e.placeholder.value)||!(`dayPeriod`in e.segmentValues.value))){if(n.key===t.ARROW_UP||n.key===t.ARROW_DOWN){if(e.segmentValues.value.dayPeriod===`AM`){e.segmentValues.value.dayPeriod=`PM`,e.segmentValues.value.hour=e.segmentValues.value.hour+12;return}e.segmentValues.value.dayPeriod=`AM`,e.segmentValues.value.hour=e.segmentValues.value.hour-12;return}if([`a`,`A`].includes(n.key)&&e.segmentValues.value.dayPeriod!==`AM`){e.segmentValues.value.dayPeriod=`AM`,e.segmentValues.value.hour=e.segmentValues.value.hour-12;return}[`p`,`P`].includes(n.key)&&e.segmentValues.value.dayPeriod!==`PM`&&(e.segmentValues.value.dayPeriod=`PM`,e.segmentValues.value.hour=e.segmentValues.value.hour+12)}}function _(t){e.disabled.value&&t.preventDefault()}function v(n){let r=e.disabled.value,i=e.readonly.value;if(n.key!==t.TAB&&n.preventDefault(),!(r||i)&&({day:u,month:d,year:f,hour:p,minute:m,second:h,dayPeriod:g,timeZoneName:()=>{}}[e.part](n),![t.ARROW_LEFT,t.ARROW_RIGHT].includes(n.key)&&n.key!==t.TAB&&n.key!==t.SHIFT&&hf(n.key)&&Object.values(e.segmentValues.value).every(e=>e!==null))){let t={...e.segmentValues.value},n=e.placeholder.value.copy();Object.keys(t).forEach(e=>{let r=t[e];n=n.set({[e]:r})}),e.modelValue.value=n.copy()}}return{handleSegmentClick:_,handleSegmentKeydown:v,attributes:l}}const Pf=E({__name:`DateFieldInput`,props:{part:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=vf(),r=I(!0),i=I(!1),{handleSegmentClick:a,handleSegmentKeydown:o,attributes:s}=Nf({hasLeftFocus:r,lastKeyZero:i,placeholder:n.placeholder,hourCycle:n.hourCycle,segmentValues:n.segmentValues,formatter:n.formatter,part:t.part,disabled:n.disabled,readonly:n.readonly,focusNext:n.focusNext,modelValue:n.modelValue}),c=G(()=>n.disabled.value),l=G(()=>n.readonly.value),u=G(()=>n.isInvalid.value);return(e,t)=>(P(),U(R(Q),k({as:e.as,"as-child":e.asChild},R(s),{contenteditable:c.value||l.value?!1:e.part!==`literal`,"data-radix-vue-date-field-segment":e.part,"aria-disabled":c.value?!0:void 0,"aria-readonly":l.value?!0:void 0,"data-disabled":c.value?``:void 0,"data-invalid":u.value?``:void 0,"aria-invalid":u.value?!0:void 0},y(e.part===`literal`?{}:{mousedown:R(a),keydown:R(o),focusout:()=>{r.value=!0},focusin:e=>{R(n).setFocusedElement(e.target)}})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`contenteditable`,`data-radix-vue-date-field-segment`,`aria-disabled`,`aria-readonly`,`data-disabled`,`data-invalid`,`aria-invalid`]))}}),Ff=E({__name:`DatePickerHeader`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Fl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),If=E({__name:`DatePickerHeading`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Il),K(V(t)),{default:z(({headingValue:t})=>[W(e.$slots,`default`,{headingValue:t},()=>[F(Oe(t),1)])]),_:3},16))}}),Lf=E({__name:`DatePickerGrid`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Ll),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Rf=E({__name:`DatePickerCell`,props:{date:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Rl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),zf=E({__name:`DatePickerHeadCell`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(zl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Bf=E({__name:`DatePickerNext`,props:{step:{},nextPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Bl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Vf=E({__name:`DatePickerPrev`,props:{step:{},prevPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Vl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Hf=E({__name:`DatePickerGridHead`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Hl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Uf=E({__name:`DatePickerGridBody`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Ul),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Wf=E({__name:`DatePickerGridRow`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Wl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Gf=E({__name:`DatePickerCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Gl),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Kf=E({__name:`DatePickerInput`,props:{part:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Pf),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[qf,Jf]=q(`DatePickerRoot`),Yf=E({inheritAttrs:!1,__name:`DatePickerRoot`,props:{defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},modal:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},pagedNavigation:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},fixedWeeks:{type:Boolean,default:!1},numberOfMonths:{default:1},preventDeselect:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:placeholder`,`update:open`],setup(e,{emit:t}){let n=e,r=t,{locale:i,disabled:a,readonly:o,pagedNavigation:s,weekStartsOn:c,weekdayFormat:l,fixedWeeks:u,numberOfMonths:d,preventDeselect:f,isDateDisabled:p,isDateUnavailable:m,defaultOpen:h,modal:g,id:_,name:y,required:b,minValue:x,maxValue:S,granularity:C,hideTimeZone:w,hourCycle:T,defaultValue:E,dir:D}=L(n),O=cs(D),k=J(n,`modelValue`,r,{defaultValue:E.value,passive:n.modelValue===void 0}),A=G(()=>Na({defaultPlaceholder:n.placeholder,granularity:n.granularity,defaultValue:k.value,locale:n.locale})),j=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??A.value.copy(),passive:n.placeholder===void 0}),M=J(n,`open`,r,{defaultValue:h.value,passive:n.open===void 0}),F=I();return N(k,e=>{e&&e.compare(j.value)!==0&&(j.value=e.copy())}),Jf({isDateUnavailable:m.value,isDateDisabled:p.value,locale:i,disabled:a,pagedNavigation:s,weekStartsOn:c,weekdayFormat:l,fixedWeeks:u,numberOfMonths:d,readonly:o,preventDeselect:f,modelValue:k,placeholder:j,defaultOpen:h,modal:g,open:M,id:_,name:y,required:b,minValue:x,maxValue:S,granularity:C,hideTimeZone:w,hourCycle:T,dateFieldRef:F,dir:O,onDateChange(e){!e||!k.value?k.value=e?.copy()??void 0:!f.value&&e&&k.value.compare(e)===0?k.value=void 0:k.value=e.copy()},onPlaceholderChange(e){j.value=e.copy()}}),(e,t)=>(P(),U(R(dg),{open:R(M),"onUpdate:open":t[0]||=e=>v(M)?M.value=e:null,"default-open":R(h),modal:R(g)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`open`,`default-open`,`modal`]))}}),Xf=E({__name:`DatePickerCalendar`,setup(e){let t=qf();return(e,n)=>(P(),U(R(Pl),k({isDateDisabled:R(t).isDateDisabled,isDateUnavailable:R(t).isDateUnavailable,minValue:R(t).minValue.value,maxValue:R(t).maxValue.value,locale:R(t).locale.value,disabled:R(t).disabled.value,pagedNavigation:R(t).pagedNavigation.value,weekStartsOn:R(t).weekStartsOn.value,weekdayFormat:R(t).weekdayFormat.value,fixedWeeks:R(t).fixedWeeks.value,numberOfMonths:R(t).numberOfMonths.value,readonly:R(t).readonly.value,preventDeselect:R(t).preventDeselect.value,dir:R(t).dir.value},{"model-value":R(t).modelValue.value,placeholder:R(t).placeholder.value,"initial-focus":``,multiple:!1,"onUpdate:modelValue":n[0]||=e=>{e&&R(t).modelValue.value&&R($t)(e,R(t).modelValue.value)||R(t).onDateChange(e)},"onUpdate:placeholder":n[1]||=e=>{R($t)(e,R(t).placeholder.value)||R(t).onPlaceholderChange(e)}}),{default:z(({weekDays:t,grid:n,date:r,weekStartsOn:i,locale:a,fixedWeeks:o})=>[W(e.$slots,`default`,{date:r,grid:n,weekDays:t,weekStartsOn:i,locale:a,fixedWeeks:o})]),_:3},16,[`model-value`,`placeholder`]))}}),Zf=E({__name:`DatePickerField`,setup(e){let t=qf();return(e,n)=>(P(),U(R(bf),k({ref:R(t).dateFieldRef,"model-value":R(t).modelValue.value,placeholder:R(t).placeholder.value},{id:R(t).id.value,name:R(t).name.value,disabled:R(t).disabled.value,minValue:R(t).minValue.value,maxValue:R(t).maxValue.value,readonly:R(t).readonly.value,hourCycle:R(t).hourCycle.value,granularity:R(t).granularity.value,hideTimeZone:R(t).hideTimeZone.value,locale:R(t).locale.value,isDateUnavailable:R(t).isDateUnavailable,required:R(t).required.value,dir:R(t).dir.value},{"onUpdate:modelValue":n[0]||=e=>{e&&R(t).modelValue.value&&e.compare(R(t).modelValue.value)===0||R(t).onDateChange(e)},"onUpdate:placeholder":n[1]||=e=>{e.compare(R(t).placeholder.value)!==0&&R(t).onPlaceholderChange(e)}}),{default:z(({segments:t,modelValue:n})=>[W(e.$slots,`default`,{segments:t,modelValue:n})]),_:3},16,[`model-value`,`placeholder`]))}}),Qf=E({__name:`DatePickerAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(bg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),$f=E({__name:`DatePickerArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(vg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ep=E({__name:`DatePickerClose`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(yg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),tp=E({__name:`DatePickerTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=qf();return(e,r)=>(P(),U(R(fg),k({"data-radix-vue-date-field-segment":`trigger`},t,{disabled:R(n).disabled.value,onFocusin:r[0]||=e=>{var t;(t=R(n).dateFieldRef.value)==null||t.setFocusedElement(e.target)}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`disabled`]))}}),np=E({__name:`DatePickerContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return(e,t)=>(P(),U(R(pg),null,{default:z(()=>[A(R(_g),K(V({...R(n),...e.$attrs})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3}))}}),rp=E({__name:`DateRangePickerHeader`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Wg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ip=E({__name:`DateRangePickerHeading`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Gg),K(V(t)),{default:z(({headingValue:t})=>[W(e.$slots,`default`,{headingValue:t},()=>[F(Oe(t),1)])]),_:3},16))}}),ap=E({__name:`DateRangePickerGrid`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Kg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),op=E({__name:`DateRangePickerCell`,props:{date:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(qg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),sp=E({__name:`DateRangePickerHeadCell`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Jg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),cp=E({__name:`DateRangePickerNext`,props:{step:{},nextPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Yg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),lp=E({__name:`DateRangePickerPrev`,props:{step:{},prevPage:{type:Function},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Xg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),up=E({__name:`DateRangePickerGridHead`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Zg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),dp=E({__name:`DateRangePickerGridBody`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Qg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),fp=E({__name:`DateRangePickerGridRow`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R($g),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),pp=E({__name:`DateRangePickerCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(e_),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),mp=E({__name:`DateRangePickerInput`,props:{part:{},type:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(kp),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[hp,gp]=q(`DateRangePickerRoot`),_p=E({inheritAttrs:!1,__name:`DateRangePickerRoot`,props:{defaultValue:{default:()=>({start:void 0,end:void 0})},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},modal:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},pagedNavigation:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},fixedWeeks:{type:Boolean,default:!1},numberOfMonths:{default:1},preventDeselect:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:placeholder`,`update:startValue`,`update:open`],setup(e,{emit:t}){let n=e,r=t,{locale:i,disabled:a,readonly:o,pagedNavigation:s,weekStartsOn:c,weekdayFormat:l,fixedWeeks:u,numberOfMonths:d,preventDeselect:f,isDateDisabled:p,isDateUnavailable:m,defaultOpen:h,modal:g,id:_,name:y,required:b,minValue:x,maxValue:S,granularity:C,hideTimeZone:w,hourCycle:T,dir:E}=L(n),D=cs(E),O=J(n,`modelValue`,r,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),k=Na({defaultPlaceholder:n.placeholder,granularity:n.granularity,defaultValue:O.value.start,locale:n.locale}),A=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??k.copy(),passive:n.placeholder===void 0}),j=J(n,`open`,r,{defaultValue:h.value,passive:n.open===void 0}),M=I();return N(O,e=>{e.start&&e.start.compare(A.value)!==0&&(A.value=e.start.copy())}),gp({isDateUnavailable:m.value,isDateDisabled:p.value,locale:i,disabled:a,pagedNavigation:s,weekStartsOn:c,weekdayFormat:l,fixedWeeks:u,numberOfMonths:d,readonly:o,preventDeselect:f,modelValue:O,placeholder:A,defaultOpen:h,modal:g,open:j,id:_,name:y,required:b,minValue:x,maxValue:S,granularity:C,hideTimeZone:w,hourCycle:T,dateFieldRef:M,dir:D,onStartValueChange(e){r(`update:startValue`,e)},onDateChange(e){var t,n;O.value={start:(t=e.start)?.copy(),end:(n=e.end)?.copy()}},onPlaceholderChange(e){A.value=e.copy()}}),(e,t)=>(P(),U(R(dg),{open:R(j),"onUpdate:open":t[0]||=e=>v(j)?j.value=e:null,"default-open":R(h),modal:R(g)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`open`,`default-open`,`modal`]))}}),vp=E({__name:`DateRangePickerCalendar`,setup(e){let t=hp();return(e,n)=>(P(),U(R(Ug),k({isDateDisabled:R(t).isDateDisabled,isDateUnavailable:R(t).isDateUnavailable,locale:R(t).locale.value,disabled:R(t).disabled.value,pagedNavigation:R(t).pagedNavigation.value,weekStartsOn:R(t).weekStartsOn.value,weekdayFormat:R(t).weekdayFormat.value,fixedWeeks:R(t).fixedWeeks.value,numberOfMonths:R(t).numberOfMonths.value,readonly:R(t).readonly.value,preventDeselect:R(t).preventDeselect.value,minValue:R(t).minValue.value,maxValue:R(t).maxValue.value,dir:R(t).dir.value},{"initial-focus":``,"model-value":R(t).modelValue.value,placeholder:R(t).placeholder.value,"onUpdate:startValue":n[0]||=e=>{R(t).onStartValueChange(e)},"onUpdate:modelValue":n[1]||=e=>{e.start&&R(t).modelValue.value.start&&e.end&&R(t).modelValue.value.end&&R($t)(e.start,R(t).modelValue.value.start)&&R($t)(e.end,R(t).modelValue.value.end)||R(t).onDateChange(e)},"onUpdate:placeholder":n[2]||=e=>{R($t)(e,R(t).placeholder.value)||R(t).onPlaceholderChange(e)}}),{default:z(({weekDays:t,grid:n,date:r,weekStartsOn:i,locale:a,fixedWeeks:o})=>[W(e.$slots,`default`,{date:r,grid:n,weekDays:t,weekStartsOn:i,locale:a,fixedWeeks:o})]),_:3},16,[`model-value`,`placeholder`]))}}),yp=E({__name:`DateRangePickerField`,setup(e){let t=hp();return(e,n)=>(P(),U(R(Op),k({ref:R(t).dateFieldRef,"model-value":R(t).modelValue.value,placeholder:R(t).placeholder.value},{id:R(t).id.value,name:R(t).name.value,disabled:R(t).disabled.value,minValue:R(t).minValue.value,maxValue:R(t).maxValue.value,readonly:R(t).readonly.value,hourCycle:R(t).hourCycle.value,granularity:R(t).granularity.value,hideTimeZone:R(t).hideTimeZone.value,locale:R(t).locale.value,isDateUnavailable:R(t).isDateUnavailable,required:R(t).required.value,dir:R(t).dir.value},{"onUpdate:modelValue":n[0]||=e=>{e.start&&R(t).modelValue.value.start&&e.end&&R(t).modelValue.value.end&&e.start.compare(R(t).modelValue.value.start)===0&&e.end.compare(R(t).modelValue.value.end)===0||R(t).onDateChange(e)},"onUpdate:placeholder":n[1]||=e=>{R($t)(e,R(t).placeholder.value)&&e.compare(R(t).placeholder.value)===0||R(t).onPlaceholderChange(e)}}),{default:z(({segments:t,modelValue:n})=>[W(e.$slots,`default`,{segments:t,modelValue:n})]),_:3},16,[`model-value`,`placeholder`]))}}),bp=E({__name:`DateRangePickerAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(bg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),xp=E({__name:`DateRangePickerArrow`,props:{width:{},height:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(vg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Sp=E({__name:`DateRangePickerClose`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(yg),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Cp=E({__name:`DateRangePickerTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=hp();return(e,r)=>(P(),U(R(fg),k({"data-radix-vue-date-field-segment":`trigger`},t,{disabled:R(n).disabled.value,onFocusin:r[0]||=e=>{var t;(t=R(n).dateFieldRef.value)==null||t.setFocusedElement(e.target)}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`disabled`]))}}),wp=E({__name:`DateRangePickerContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return(e,t)=>(P(),U(R(pg),null,{default:z(()=>[A(R(_g),K(V({...R(n),...e.$attrs})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3}))}}),Tp=[`id`,`value`,`name`,`disabled`,`required`],[Ep,Dp]=q(`DateRangeFieldRoot`),Op=E({inheritAttrs:!1,__name:`DateRangeFieldRoot`,props:{defaultValue:{default:void 0},defaultPlaceholder:{},placeholder:{default:void 0},modelValue:{},hourCycle:{},granularity:{},hideTimeZone:{type:Boolean},maxValue:{},minValue:{},locale:{default:`en`},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},isDateUnavailable:{type:Function,default:void 0},name:{},required:{type:Boolean},id:{},dir:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:placeholder`],setup(e,{expose:t,emit:n}){var r,i;let a=e,o=n,{locale:s,disabled:c,readonly:l,isDateUnavailable:u,dir:d}=L(a),f=ss(a.locale),{primitiveElement:p,currentElement:m}=Us(),g=I(new Set),_=cs(d);S(()=>{gf(m.value).forEach(e=>g.value.add(e))});let v=J(a,`modelValue`,o,{defaultValue:a.defaultValue??{start:void 0,end:void 0},passive:a.modelValue===void 0}),y=Na({defaultPlaceholder:a.placeholder,granularity:a.granularity,defaultValue:v.value.start,locale:a.locale}),b=J(a,`placeholder`,o,{defaultValue:a.defaultPlaceholder??y.copy(),passive:a.placeholder===void 0}),x=G(()=>a.granularity?ca(b.value)?a.granularity:`day`:ca(b.value)?`minute`:`day`),C=G(()=>{var e;return v.value.start?!!((e=u.value)!=null&&e.call(u,v.value.start)||a.minValue&&ua(v.value.start,a.minValue)||a.maxValue&&ua(a.maxValue,v.value.start)):!1}),w=G(()=>{var e;return v.value.end?!!((e=u.value)!=null&&e.call(u,v.value.end)||a.minValue&&ua(v.value.end,a.minValue)||a.maxValue&&ua(a.maxValue,v.value.end)):!1}),E=G(()=>C.value||w.value?!0:!v.value.start||!v.value.end?!1:!fa(v.value.start,v.value.end)||u.value!==void 0&&!va(v.value.start,v.value.end,u.value,void 0)),D=lf(x.value),O=I(v.value.start?{...cf({value:v.value.start,formatter:f})}:{...D}),j=I(v.value.end?{...cf({value:v.value.end,formatter:f})}:{...D}),M=G(()=>ff({granularity:x.value,dateRef:b.value,formatter:f,hideTimeZone:a.hideTimeZone,hourCycle:a.hourCycle,segmentValues:O.value,locale:s})),F=G(()=>ff({granularity:x.value,dateRef:b.value,formatter:f,hideTimeZone:a.hideTimeZone,hourCycle:a.hourCycle,segmentValues:j.value,locale:s})),ee=G(()=>({start:M.value.arr,end:F.value.arr})),te=G(()=>({start:ee.value.start.filter(({part:e})=>e!==`literal`),end:ee.value.end.filter(({part:e})=>e!==`literal`)})),ne=I((r=v.value.start)?.copy()),re=I((i=v.value.end)?.copy());N([ne,re],([e,t])=>{v.value={start:e?.copy(),end:t?.copy()}}),N(v,e=>{e.start&&e.end&&((!ne.value||e.start.compare(ne.value)!==0)&&(ne.value=e.start.copy()),(!re.value||e.end.compare(re.value)!==0)&&(re.value=e.end.copy()))}),N([ne,s],([e])=>{e===void 0?Object.values(O.value).every(e=>e!==null)&&e===void 0&&(O.value={...D}):O.value={...cf({value:e,formatter:f})}}),N(s,e=>{f.getLocale()!==e&&(f.setLocale(e),T(()=>{g.value.clear(),gf(m.value).forEach(e=>g.value.add(e))}))}),N(v,e=>{e.start!==void 0&&b.value.compare(e.start)!==0&&(b.value=e.start.copy())}),N([re,s],([e])=>{e===void 0?Object.values(j.value).every(e=>e!==null)&&e===void 0&&(j.value={...D}):j.value={...cf({value:e,formatter:f})}});let ie=I(null),ae=G(()=>Array.from(g.value).findIndex(e=>{var t,n;return e.getAttribute(`data-radix-vue-date-field-segment`)===(t=ie.value)?.getAttribute(`data-radix-vue-date-field-segment`)&&e.getAttribute(`data-radix-vue-date-range-field-segment-type`)===(n=ie.value)?.getAttribute(`data-radix-vue-date-range-field-segment-type`)})),oe=G(()=>{let e=_.value===`rtl`?-1:1;return(e<0?ae.value<0:ae.value>g.value.size-1)?null:Array.from(g.value)[ae.value+e]}),se=G(()=>{let e=_.value===`rtl`?-1:1;return(e>0?ae.value<0:ae.value>g.value.size-1)?null:Array.from(g.value)[ae.value-e]}),ce=Vs();function le(e){var t,n;pf(e.key)&&(e.key===ce.ARROW_LEFT&&((t=se.value)==null||t.focus()),e.key===ce.ARROW_RIGHT&&((n=oe.value)==null||n.focus()))}function ue(e){ie.value=e}return Dp({isDateUnavailable:u.value,locale:s,startValue:ne,endValue:re,placeholder:b,disabled:c,formatter:f,hourCycle:a.hourCycle,readonly:l,segmentValues:{start:O,end:j},isInvalid:E,segmentContents:te,elements:g,setFocusedElement:ue,focusNext(){var e;(e=oe.value)==null||e.focus()}}),t({setFocusedElement:ue}),(e,t)=>{var n,r;return P(),B(Se,null,[A(R(Q),k(e.$attrs,{ref_key:`primitiveElement`,ref:p,role:`group`,"aria-disabled":R(c)?!0:void 0,"data-disabled":R(c)?``:void 0,"data-readonly":R(l)?``:void 0,"data-invalid":E.value?``:void 0,dir:R(_),onKeydown:h(le,[`left`,`right`])}),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(v),segments:ee.value})]),_:3},16,[`aria-disabled`,`data-disabled`,`data-readonly`,`data-invalid`,`dir`]),_e(`input`,{id:e.id,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:`${(n=R(v).start)?.toString()} - ${(r=R(v).end)?.toString()}`,name:e.name,disabled:R(c),required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0},onFocus:t[0]||=e=>{var t,n;return(n=(t=Array.from(g.value))?.[0])?.focus()}},null,40,Tp)],64)}}}),kp=E({__name:`DateRangeFieldInput`,props:{part:{},type:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Ep(),r=I(!0),i=I(!1),{handleSegmentClick:a,handleSegmentKeydown:o,attributes:s}=Nf({hasLeftFocus:r,lastKeyZero:i,placeholder:n.placeholder,hourCycle:n.hourCycle,segmentValues:n.segmentValues[t.type],formatter:n.formatter,part:t.part,disabled:n.disabled,readonly:n.readonly,focusNext:n.focusNext,modelValue:t.type===`start`?n.startValue:n.endValue}),c=G(()=>n.disabled.value),l=G(()=>n.readonly.value),u=G(()=>n.isInvalid.value);return(e,t)=>(P(),U(R(Q),k({as:e.as,"as-child":e.asChild},R(s),{contenteditable:c.value||l.value?!1:e.part!==`literal`,"data-radix-vue-date-field-segment":e.part,"aria-disabled":c.value?!0:void 0,"aria-readonly":l.value?!0:void 0,"data-disabled":c.value?``:void 0,"data-radix-vue-date-range-field-segment-type":e.type,"data-invalid":u.value?``:void 0,"aria-invalid":u.value?!0:void 0},y(e.part===`literal`?{}:{mousedown:R(a),keydown:R(o),focusout:()=>{r.value=!0},focusin:e=>{R(n).setFocusedElement(e.target)}})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`contenteditable`,`data-radix-vue-date-field-segment`,`aria-disabled`,`aria-readonly`,`data-disabled`,`data-radix-vue-date-range-field-segment-type`,`data-invalid`,`aria-invalid`]))}}),[Ap,jp]=q(`DropdownMenuRoot`),Mp=E({__name:`DropdownMenuRoot`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0},dir:{},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),a=I(),{modal:o,dir:s}=L(n),c=cs(s);return jp({open:i,onOpenChange:e=>{i.value=e},onOpenToggle:()=>{i.value=!i.value},triggerId:``,triggerElement:a,contentId:``,modal:o,dir:c}),(e,t)=>(P(),U(R(rd),{open:R(i),"onUpdate:open":t[0]||=e=>v(i)?i.value=e:null,dir:R(c),modal:R(o)},{default:z(()=>[W(e.$slots,`default`,{open:R(i)})]),_:3},8,[`open`,`dir`,`modal`]))}}),Np=E({__name:`DropdownMenuTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Ap(),{forwardRef:r,currentElement:i}=X();return S(()=>{n.triggerElement=i}),n.triggerId||=Z(void 0,`radix-vue-dropdown-menu-trigger`),(e,i)=>(P(),U(R(Yu),{"as-child":``},{default:z(()=>[A(R(Q),{id:R(n).triggerId,ref:R(r),type:e.as===`button`?`button`:void 0,"as-child":t.asChild,as:e.as,"aria-haspopup":`menu`,"aria-expanded":R(n).open.value,"aria-controls":R(n).open.value?R(n).contentId:void 0,"data-disabled":e.disabled?``:void 0,disabled:e.disabled,"data-state":R(n).open.value?`open`:`closed`,onClick:i[0]||=async t=>{var r;!e.disabled&&t.button===0&&t.ctrlKey===!1&&((r=R(n))==null||r.onOpenToggle(),await T(),R(n).open.value&&t.preventDefault())},onKeydown:i[1]||=h(t=>{e.disabled||([`Enter`,` `].includes(t.key)&&R(n).onOpenToggle(),t.key===`ArrowDown`&&R(n).onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(t.key)&&t.preventDefault())},[`enter`,`space`,`arrow-down`])},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as-child`,`as`,`aria-expanded`,`aria-controls`,`data-disabled`,`disabled`,`data-state`])]),_:3}))}}),Pp=E({__name:`DropdownMenuPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(kd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Fp=E({__name:`DropdownMenuContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let r=Ap(),i=I(!1);function a(e){e.defaultPrevented||(i.value||setTimeout(()=>{var e;(e=r.triggerElement.value)==null||e.focus()},0),i.value=!1,e.preventDefault())}return r.contentId||=Z(void 0,`radix-vue-dropdown-menu-content`),(e,t)=>{var o;return P(),U(R(Ed),k(R(n),{id:R(r).contentId,"aria-labelledby":(o=R(r))?.triggerId,style:{"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`},onCloseAutoFocus:a,onInteractOutside:t[0]||=e=>{var t;if(e.defaultPrevented)return;let n=e.detail.originalEvent,a=n.button===0&&n.ctrlKey===!0,o=n.button===2||a;(!R(r).modal.value||o)&&(i.value=!0),(t=R(r).triggerElement.value)!=null&&t.contains(e.target)&&e.preventDefault()}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`])}}}),Ip=E({__name:`DropdownMenuArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Xu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Lp=E({__name:`DropdownMenuItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(yd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Rp=E({__name:`DropdownMenuGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Dd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),zp=E({__name:`DropdownMenuSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Pd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Bp=E({__name:`DropdownMenuCheckboxItem`,props:{checked:{type:[Boolean,String]},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Cd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Vp=E({__name:`DropdownMenuItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Sd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Hp=E({__name:`DropdownMenuLabel`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Od),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Up=E({__name:`DropdownMenuRadioGroup`,props:{modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Md),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Wp=E({__name:`DropdownMenuRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(P(),U(R(Nd),K(V(R(n))),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Gp=E({__name:`DropdownMenuSub`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=J(n,`open`,t,{passive:n.open===void 0,defaultValue:n.defaultOpen??!1});return X(),(e,t)=>(P(),U(R(Ld),{open:R(r),"onUpdate:open":t[0]||=e=>v(r)?r.value=e:null},{default:z(()=>[W(e.$slots,`default`,{open:R(r)})]),_:3},8,[`open`]))}}),Kp=E({__name:`DropdownMenuSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(P(),U(R(Rd),k(R(n),{style:{"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),qp=E({__name:`DropdownMenuSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(zd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Jp=[`value`,`name`,`disabled`,`required`],[Yp,Xp]=q(`EditableRoot`),Zp=E({inheritAttrs:!1,__name:`EditableRoot`,props:{defaultValue:{},modelValue:{},placeholder:{default:`Enter text...`},dir:{},disabled:{type:Boolean,default:!1},readonly:{type:Boolean},activationMode:{default:`focus`},selectOnFocus:{type:Boolean,default:!1},submitMode:{default:`blur`},startWithEditMode:{type:Boolean},maxLength:{},autoResize:{type:Boolean,default:!1},id:{},name:{},required:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`submit`,`update:state`],setup(e,{expose:t,emit:n}){let r=e,i=n,{id:a,name:o,defaultValue:s,startWithEditMode:c,placeholder:l,maxLength:u,disabled:d,dir:f,submitMode:p,activationMode:m,selectOnFocus:h,readonly:g,autoResize:_,required:v}=L(r),y=I(),b=cs(f),x=I(c.value??!1),S=J(r,`modelValue`,i,{defaultValue:s.value??``,passive:r.modelValue===void 0}),{primitiveElement:C,currentElement:w}=Us(),T=ps(w),E=G(()=>typeof l.value==`string`?{edit:l.value,preview:l.value}:l.value),D=I(S.value);N(()=>S.value,()=>{D.value=S.value},{immediate:!0,deep:!0});function j(){x.value=!1,i(`update:state`,`cancel`)}function M(){x.value=!0,D.value=S.value,i(`update:state`,`edit`)}function F(){S.value=D.value,x.value=!1,i(`update:state`,`submit`),i(`submit`,S.value)}function ee(){x.value&&(p.value===`blur`||p.value===`both`?F():j())}let te=bc(()=>ee(),w),ne=xc(()=>ee(),w),re=G(()=>S.value===``);return t({submit:F,cancel:j,edit:M}),Xp({id:a,name:o,disabled:d,isEditing:x,maxLength:u,modelValue:S,inputValue:D,placeholder:E,edit:M,cancel:j,submit:F,activationMode:m,submitMode:p,selectOnFocus:h,inputRef:y,startWithEditMode:c,isEmpty:re,readonly:g,autoResize:_}),(e,t)=>(P(),B(Se,null,[A(R(Q),k(e.$attrs,{ref_key:`primitiveElement`,ref:C,as:e.as,"as-child":e.asChild,dir:R(b),"data-dismissable-layer":``,onFocusCapture:R(ne).onFocusCapture,onBlurCapture:R(ne).onBlurCapture,onPointerdownCapture:R(te).onPointerDownCapture}),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(S),isEditing:x.value,isEmpty:re.value,submit:F,cancel:j,edit:M})]),_:3},16,[`as`,`as-child`,`dir`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]),R(T)?(P(),B(`input`,{key:0,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:R(S),name:R(o),disabled:R(d),required:R(v),style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Jp)):O(``,!0)],64))}}),Qp=E({__name:`EditableArea`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Yp();return(e,r)=>(P(),U(R(Q),k(t,{"data-placeholder-shown":R(n).isEditing.value?void 0:``,"data-focus":R(n).isEditing.value?``:void 0,"data-focused":R(n).isEditing.value?``:void 0,"data-empty":R(n).isEmpty.value?``:void 0,"data-readonly":R(n).readonly.value?``:void 0,"data-disabled":R(n).disabled.value?``:void 0,style:R(n).autoResize.value?{display:`inline-grid`}:void 0}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-placeholder-shown`,`data-focus`,`data-focused`,`data-empty`,`data-readonly`,`data-disabled`,`style`]))}}),$p=E({__name:`EditableInput`,props:{asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=Vs(),r=Yp(),i=G(()=>r.disabled.value),a=G(()=>{var e;return(e=r.placeholder.value)?.edit}),{primitiveElement:o,currentElement:s}=Us();S(()=>{var e,t;r.inputRef.value=s.value,r.startWithEditMode.value&&((e=r.inputRef.value)==null||e.focus({preventScroll:!0}),r.selectOnFocus.value&&((t=r.inputRef.value)==null||t.select()))}),N(r.isEditing,e=>{e&&T(()=>{var e,t;(e=r.inputRef.value)==null||e.focus({preventScroll:!0}),r.selectOnFocus.value&&((t=r.inputRef.value)==null||t.select())})});function c(e){(r.submitMode.value===`enter`||r.submitMode.value===`both`)&&e.key===n.ENTER&&!e.shiftKey&&!e.metaKey&&r.submit()}return(e,n)=>(P(),U(R(Q),k({ref_key:`primitiveElement`,ref:o},t,{value:R(r).inputValue.value,placeholder:a.value,disabled:i.value,maxlength:R(r).maxLength.value,"data-disabled":i.value?``:void 0,"data-readonly":R(r).readonly.value?``:void 0,readonly:R(r).readonly.value,"aria-label":`editable input`,hidden:R(r).autoResize.value?void 0:!R(r).isEditing.value,style:R(r).autoResize.value?{all:`unset`,gridArea:`1 / 1 / auto / auto`,visibility:R(r).isEditing.value?void 0:`hidden`}:void 0,onInput:n[0]||=e=>R(r).inputValue.value=e.target.value,onKeydown:[h(c,[`enter`,`space`]),h(R(r).cancel,[`esc`])]}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`value`,`placeholder`,`disabled`,`maxlength`,`data-disabled`,`data-readonly`,`readonly`,`hidden`,`style`,`onKeydown`]))}}),em=E({__name:`EditablePreview`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=Yp(),r=G(()=>{var e;return(e=n.placeholder.value)?.preview});function i(){n.activationMode.value===`focus`&&n.edit()}function a(){n.activationMode.value===`dblclick`&&n.edit()}return(e,o)=>(P(),U(R(Q),k(t,{tabindex:`0`,"data-placeholder-shown":R(n).isEditing.value?void 0:``,hidden:R(n).autoResize.value?void 0:R(n).isEditing.value,style:R(n).autoResize.value?{whiteSpace:`pre`,userSelect:`none`,gridArea:`1 / 1 / auto / auto`,visibility:R(n).isEditing.value?`hidden`:void 0,overflow:`hidden`,textOverflow:`ellipsis`}:void 0,onFocusin:i,onDblclick:a}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(Oe(R(n).modelValue.value||r.value),1)])]),_:3},16,[`data-placeholder-shown`,`hidden`,`style`]))}}),tm=E({__name:`EditableSubmitTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Yp();return(e,r)=>(P(),U(R(Q),k(t,{"aria-label":`submit`,"aria-disabled":R(n).disabled.value?``:void 0,"data-disabled":R(n).disabled.value?``:void 0,disabled:R(n).disabled.value,type:e.as===`button`?`button`:void 0,hidden:R(n).isEditing.value?void 0:``,onClick:R(n).submit}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Submit`)])]),_:3},16,[`aria-disabled`,`data-disabled`,`disabled`,`type`,`hidden`,`onClick`]))}}),nm=E({__name:`EditableCancelTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Yp();return(e,r)=>(P(),U(R(Q),k(t,{"aria-label":`cancel`,"aria-disabled":R(n).disabled.value?``:void 0,"data-disabled":R(n).disabled.value?``:void 0,disabled:R(n).disabled.value,type:e.as===`button`?`button`:void 0,hidden:R(n).isEditing.value?void 0:``,onClick:R(n).cancel}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Cancel`)])]),_:3},16,[`aria-disabled`,`data-disabled`,`disabled`,`type`,`hidden`,`onClick`]))}}),rm=E({__name:`EditableEditTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Yp();return(e,r)=>(P(),U(R(Q),k(t,{"aria-label":`edit`,"aria-disabled":R(n).disabled.value?``:void 0,"data-disabled":R(n).disabled.value?``:void 0,disabled:R(n).disabled.value,type:e.as===`button`?`button`:void 0,hidden:R(n).isEditing.value?``:void 0,onClick:R(n).edit}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Edit`)])]),_:3},16,[`aria-disabled`,`data-disabled`,`disabled`,`type`,`hidden`,`onClick`]))}}),[im,am]=q(`HoverCardRoot`),om=E({__name:`HoverCardRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},openDelay:{default:700},closeDelay:{default:300}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{openDelay:i,closeDelay:a}=L(n);X();let o=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),s=I(0),c=I(0),l=I(!1),u=I(!1),d=I(!1),f=I();function p(){clearTimeout(c.value),s.value=window.setTimeout(()=>o.value=!0,i.value)}function m(){clearTimeout(s.value),!l.value&&!u.value&&(c.value=window.setTimeout(()=>o.value=!1,a.value))}function h(){o.value=!1}return am({open:o,onOpenChange(e){o.value=e},onOpen:p,onClose:m,onDismiss:h,hasSelectionRef:l,isPointerDownOnContentRef:u,isPointerInTransitRef:d,triggerElement:f}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[W(e.$slots,`default`,{open:R(o)})]),_:3}))}});function sm(e){return e?.querySelector(`[data-state=checked]`)}function cm(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>lm(e,t,n)):lm(e,t,n)}function lm(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:Oa(e,t)}const[um,dm]=q(`ListboxRoot`),fm=E({__name:`ListboxRoot`,props:{modelValue:{},defaultValue:{},multiple:{type:Boolean},orientation:{default:`vertical`},dir:{},disabled:{type:Boolean},selectionBehavior:{default:`toggle`},highlightOnHover:{type:Boolean},by:{},name:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(e,{emit:t}){let n=e,r=t,{multiple:i,highlightOnHover:a,orientation:o,disabled:s,selectionBehavior:c,dir:l}=L(n),{getItems:u}=yu(),{handleTypeaheadSearch:d}=Rs(),{primitiveElement:f,currentElement:p}=Us(),m=Vs(),h=cs(l),g=ps(p),_=I(),v=I(!1),y=I(!0),b=J(n,`modelValue`,r,{defaultValue:n.defaultValue??(i.value?[]:void 0),passive:n.modelValue===void 0,deep:!0});function x(e){if(v.value=!0,Array.isArray(b.value)){let t=b.value.findIndex(t=>lm(t,e,n.by));if(n.selectionBehavior===`toggle`){let n=[...b.value];t===-1?n.push(e):n.splice(t,1),b.value=n}else b.value=[e],_.value=e}else n.selectionBehavior===`toggle`&&lm(b.value,e,n.by)?b.value=void 0:b.value=e;setTimeout(()=>{v.value=!1},1)}let S=I(null),C=I(null),w=I(!1),E=eo(),D=eo();function k(){return u().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)}function A(e){if(!e)return;S.value=e,S.value.focus(),S.value.scrollIntoView({block:`nearest`});let t=u().find(t=>t.ref===e);r(`highlight`,t)}function j(e){S.value&&S.value.click()}function M(e){if(v.value=!0,w.value)D.trigger(e);else{let t=e.altKey||e.ctrlKey||e.metaKey;if(t&&e.key===`a`&&i.value){let t=u(),n=t.map(e=>e.value);b.value=[...n],e.preventDefault(),A(t[t.length-1].ref)}else if(!t){let t=d(e.key,k());t&&A(t)}}setTimeout(()=>{v.value=!1},1)}function F(e){let t=S.value;t!=null&&t.isConnected&&(C.value=t),S.value=null,r(`leave`,e)}function ee(e){var t,n;let i=new CustomEvent(`listbox.entryFocus`,{bubbles:!1,cancelable:!0});if((t=e.currentTarget)==null||t.dispatchEvent(i),r(`entryFocus`,i),!i.defaultPrevented)if(C.value)A(C.value);else{let e=(n=k())?.[0];A(e)}}function te(e){let t=cd(e,o.value,h.value);if(!t)return;let n=k();if(S.value){if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let e=n.indexOf(S.value);n=n.slice(e+1)}ne(e,n[0])}if(n.length){let e=!S.value&&t===`prev`?n.length-1:0;A(n[e])}if(w.value)return D.trigger(e)}function ne(e,t){var r;if(!(w.value||n.selectionBehavior!==`replace`||!i.value||!Array.isArray(b.value)||(e.altKey||e.ctrlKey||e.metaKey)&&!e.shiftKey)&&e.shiftKey){let n=u().filter(e=>e.ref.dataset.disabled!==``),i=(r=n.find(e=>e.ref===t))?.value;if(e.key===m.END?i=n[n.length-1].value:e.key===m.HOME&&(i=n[0].value),!i||!_.value)return;let a=Aa(n.map(e=>e.value),_.value,i);b.value=a}}async function re(e){if(w.value)E.trigger(e);else{await T();let e=k().find(e=>e.dataset.state===`checked`);e&&A(e)}}return N(b,()=>{v.value||T(()=>{re()})},{immediate:!0,deep:!0}),dm({modelValue:b,onValueChange:x,multiple:i,orientation:o,dir:h,disabled:s,highlightOnHover:a,highlightedElement:S,isVirtual:w,virtualFocusHook:E,virtualKeydownHook:D,by:n.by,firstValue:_,selectionBehavior:c,focusable:y,onLeave:F,onEnter:ee,onChangeHighlight:A,onKeydownEnter:j,onKeydownNavigation:te,onKeydownTypeAhead:M}),(e,t)=>(P(),U(R(Q),{ref_key:`primitiveElement`,ref:f,as:e.as,"as-child":e.asChild,dir:R(h),"data-disabled":R(s)?``:void 0,onPointerleave:F,onFocusout:t[0]||=async e=>{let t=e.relatedTarget||e.target;await T(),S.value&&R(p)&&!R(p).contains(t)&&F(e)}},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(b)}),R(g)&&n.name?(P(),U(R(hu),{key:0,name:n.name,value:R(b)},null,8,[`name`,`value`])):O(``,!0)]),_:3},8,[`as`,`as-child`,`dir`,`data-disabled`]))}}),pm=E({__name:`ListboxContent`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=um(),n=vo(!1,10);return(e,r)=>(P(),U(R(bu),null,{default:z(()=>[A(R(Q),{role:`listbox`,as:e.as,"as-child":e.asChild,tabindex:R(t).focusable.value?R(t).highlightedElement.value?`-1`:`0`:void 0,"aria-orientation":R(t).orientation.value,"aria-multiselectable":!!R(t).multiple.value,"data-orientation":R(t).orientation.value,onMousedown:r[0]||=m(e=>n.value=!0,[`left`]),onFocus:r[1]||=e=>{R(n)||R(t).onEnter(e)},onKeydown:[r[2]||=h(m(e=>{R(t).focusable.value&&R(t).onKeydownNavigation(e)},[`prevent`]),[`down`,`up`,`left`,`right`,`home`,`end`]),h(R(t).onKeydownEnter,[`enter`]),R(t).onKeydownTypeAhead]},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`tabindex`,`aria-orientation`,`aria-multiselectable`,`data-orientation`,`onKeydown`])]),_:3}))}}),mm=E({__name:`ListboxFilter`,props:{modelValue:{},autoFocus:{type:Boolean},asChild:{type:Boolean},as:{default:`input`}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t,{defaultValue:``,passive:n.modelValue===void 0}),i=um();i.focusable.value=!1;let{primitiveElement:a,currentElement:o}=Us();return S(()=>{setTimeout(()=>{var e;n.autoFocus&&((e=o.value)==null||e.focus())},1)}),(e,t)=>(P(),U(R(Q),{ref_key:`primitiveElement`,ref:a,as:e.as,"as-child":e.asChild,value:R(r),disabled:R(i).disabled.value?``:void 0,"data-disabled":R(i).disabled.value?``:void 0,type:`text`,onKeydown:[h(m(R(i).onKeydownNavigation,[`prevent`]),[`down`,`up`,`home`,`end`]),h(R(i).onKeydownEnter,[`enter`])],onInput:t[0]||=e=>{r.value=e.target.value}},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(r)})]),_:3},8,[`as`,`as-child`,`value`,`disabled`,`data-disabled`,`onKeydown`]))}}),hm=`listbox.select`,[gm,_m]=q(`ListboxItem`),vm=E({__name:`ListboxItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`div`}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=Z(void 0,`radix-vue-listbox-item`),s=um(),c=G(()=>a.value===s.highlightedElement.value),l=G(()=>cm(s.modelValue.value,n.value,s.by)),u=G(()=>s.disabled.value||n.disabled);async function d(e){r(`select`,e),!(e!=null&&e.defaultPrevented)&&!u.value&&e&&(s.onValueChange(n.value),s.onChangeHighlight(e.target))}function f(e){let t={originalEvent:e,value:n.value};Sa(hm,d,t)}return _m({isSelected:l}),(e,t)=>(P(),U(R(xu),{value:e.value},{default:z(()=>[A(R(Q),{id:R(o),ref:R(i),role:`option`,tabindex:R(s).focusable.value?c.value?`0`:`-1`:void 0,"aria-selected":l.value,as:e.as,"as-child":e.asChild,disabled:u.value?``:void 0,"data-disabled":u.value?``:void 0,"data-highlighted":c.value?``:void 0,"data-state":l.value?`checked`:`unchecked`,onClick:f,onKeydown:h(m(f,[`prevent`]),[`space`]),onPointermove:t[0]||=e=>{R(s).highlightOnHover.value?R(s).onChangeHighlight(R(a)):R(s).focusable.value||R(s).onChangeHighlight(R(a))}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`tabindex`,`aria-selected`,`as`,`as-child`,`disabled`,`data-disabled`,`data-highlighted`,`data-state`,`onKeydown`])]),_:3},8,[`value`]))}}),ym=E({__name:`ListboxItemIndicator`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e;X();let n=gm();return(e,r)=>R(n).isSelected.value?(P(),U(R(Q),k({key:0,"aria-hidden":`true`},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}});function bm(e,t,n){let r=n.initialDeps??[],i;return()=>{var a,o,s,c;let l;n.key&&(a=n.debug)!=null&&a.call(n)&&(l=Date.now());let u=e();if(!(u.length!==r.length||u.some((e,t)=>r[t]!==e)))return i;r=u;let d;if(n.key&&(o=n.debug)!=null&&o.call(n)&&(d=Date.now()),i=t(...u),n.key&&(s=n.debug)!=null&&s.call(n)){let e=Math.round((Date.now()-l)*100)/100,t=Math.round((Date.now()-d)*100)/100,r=t/16,i=(e,t)=>{for(e=String(e);e.lengthMath.abs(e-t)<1,Cm=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},wm=e=>e,Tm=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),r=[];for(let e=t;e<=n;e++)r.push(e);return r},Em=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(n.getBoundingClientRect()),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(e=>{let t=e[0];if(t!=null&&t.borderBoxSize){let e=t.borderBoxSize[0];if(e){i({width:e.inlineSize,height:e.blockSize});return}}i(n.getBoundingClientRect())});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},Dm={passive:!0},Om=typeof window>`u`?!0:`onscrollend`in window,km=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=0,a=Om?()=>{}:Cm(r,()=>{t(i,!1)},e.options.isScrollingResetDelay),o=r=>()=>{i=n[e.options.horizontal?`scrollLeft`:`scrollTop`],a(),t(i,r)},s=o(!0),c=o(!1);return c(),n.addEventListener(`scroll`,s,Dm),n.addEventListener(`scrollend`,c,Dm),()=>{n.removeEventListener(`scroll`,s),n.removeEventListener(`scrollend`,c)}},Am=(e,t,n)=>{if(t!=null&&t.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}return Math.round(e.getBoundingClientRect()[n.options.horizontal?`width`:`height`])},jm=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;let o=e+t;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:o,behavior:n})};var Mm=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollToIndexTimeoutId=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.pendingMeasuredCacheIndexes=[],this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{this._measureElement(e.target,e)})}));return{disconnect:()=>{var e;return(e=t())?.disconnect()},observe:e=>{var n;return(n=t())?.observe(e,{box:`border-box`})},unobserve:e=>{var n;return(n=t())?.unobserve(e)}}})(),this.range=null,this.setOptions=e=>{Object.entries(e).forEach(([t,n])=>{typeof n>`u`&&delete e[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:wm,rangeExtractor:Tm,onChange:()=>{},measureElement:Am,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,...e}},this.notify=(e,t)=>{var n,r;let{startIndex:i,endIndex:a}=this.range??{startIndex:void 0,endIndex:void 0},o=this.calculateRange();(e||i!==o?.startIndex||a!==o?.endIndex)&&((r=(n=this.options).onChange)==null||r.call(n,this,t))},this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.observer.disconnect(),this.elementsCache.clear()},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var e;let t=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==t){if(this.cleanup(),!t){this.notify(!1,!1);return}this.scrollElement=t,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=(e=this.scrollElement)?.window??null,this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.notify(!1,!1)})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{this.scrollAdjustments=0,this.scrollDirection=t?this.getScrollOffset()this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{let n=new Map,r=new Map;for(let i=t-1;i>=0;i--){let t=e[i];if(n.has(t.lane))continue;let a=r.get(t.lane);if(a==null||t.end>a.end?r.set(t.lane,t):t.ende.end===t.end?e.index-t.index:e.end-t.end)[0]:void 0},this.getMeasurementOptions=bm(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled],(e,t,n,r,i)=>(this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i}),{key:!1}),this.getMeasurements=bm(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i},a)=>{var o;if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),[];this.measurementsCache.length===0&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let s=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];let c=this.measurementsCache.slice(0,s);for(let i=s;i{let t=r(i),n=this.elementsCache.get(t);if(!e){n&&(this.observer.unobserve(n),this.elementsCache.delete(t));return}n!==e&&(n&&this.observer.unobserve(n),this.observer.observe(e),this.elementsCache.set(t,e)),e.isConnected&&this.resizeItem(i,this.options.measureElement(e,void 0,this))};let s=r(i),l=this.options.lanes===1?c[i-1]:this.getFurthestMeasurement(c,i),u=l?l.end+this.options.gap:t+n,d=a.get(s),f=typeof d==`number`?d:this.options.estimateSize(i),p=u+f,m=l?l.lane:i%this.options.lanes;c[i]={index:i,start:u,size:f,end:p,key:s,lane:m,measureElement:e}}return this.measurementsCache=c,c},{key:!1,debug:()=>this.options.debug}),this.calculateRange=bm(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset()],(e,t,n)=>this.range=e.length>0&&t>0?Pm({measurements:e,outerSize:t,scrollOffset:n}):null,{key:!1,debug:()=>this.options.debug}),this.getIndexes=bm(()=>[this.options.rangeExtractor,this.calculateRange(),this.options.overscan,this.options.count],(e,t,n,r)=>t===null?[]:e({startIndex:t.startIndex,endIndex:t.endIndex,overscan:n,count:r}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(e,t)=>{let n=this.indexFromElement(e),r=this.getMeasurements()[n];if(!r||!e.isConnected){this.elementsCache.forEach((t,n)=>{t===e&&(this.observer.unobserve(e),this.elementsCache.delete(n))});return}let i=this.elementsCache.get(r.key);i!==e&&(i&&this.observer.unobserve(i),this.observer.observe(e),this.elementsCache.set(r.key,e)),this.resizeItem(n,this.options.measureElement(e,t,this))},this.resizeItem=(e,t)=>{let n=this.getMeasurements()[e];if(!n)return;let r=this.itemSizeCache.get(n.key)??n.size,i=t-r;i!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange===void 0?n.start{e&&this._measureElement(e,void 0)},this.getVirtualItems=bm(()=>[this.getIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;rthis.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length!==0)return xm(t[Nm(0,t.length-1,e=>xm(t[e]).start,e)])},this.getOffsetForAlignment=(e,t)=>{let n=this.getSize(),r=this.getScrollOffset();t===`auto`&&(t=e<=r?`start`:e>=r+n?`end`:`start`),t===`start`?e=e:t===`end`?e-=n:t===`center`&&(e-=n/2);let i=this.options.horizontal?`scrollWidth`:`scrollHeight`,a=(this.scrollElement?`document`in this.scrollElement?this.scrollElement.document.documentElement[i]:this.scrollElement[i]:0)-n;return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getMeasurements()[e];if(!n)return;let r=this.getSize(),i=this.getScrollOffset();if(t===`auto`)if(n.end>=i+r-this.options.scrollPaddingEnd)t=`end`;else if(n.start<=i+this.options.scrollPaddingStart)t=`start`;else return[i,t];let a=t===`end`?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.cancelScrollToIndex=()=>{this.scrollToIndexTimeoutId!==null&&this.targetWindow&&(this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId),this.scrollToIndexTimeoutId=null)},this.scrollToOffset=(e,{align:t=`start`,behavior:n}={})=>{this.cancelScrollToIndex(),n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})},this.scrollToIndex=(e,{align:t=`auto`,behavior:n}={})=>{e=Math.max(0,Math.min(e,this.options.count-1)),this.cancelScrollToIndex(),n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size.");let r=this.getOffsetForIndex(e,t);if(!r)return;let[i,a]=r;this._scrollToOffset(i,{adjustments:void 0,behavior:n}),n!==`smooth`&&this.isDynamicMode()&&this.targetWindow&&(this.scrollToIndexTimeoutId=this.targetWindow.setTimeout(()=>{if(this.scrollToIndexTimeoutId=null,this.elementsCache.has(this.options.getItemKey(e))){let[t]=xm(this.getOffsetForIndex(e,a));Sm(t,this.getScrollOffset())||this.scrollToIndex(e,{align:a,behavior:n})}else this.scrollToIndex(e,{align:a,behavior:n})}))},this.scrollBy=(e,{behavior:t}={})=>{this.cancelScrollToIndex(),t===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{var e;let t=this.getMeasurements(),n;return n=t.length===0?this.options.paddingStart:this.options.lanes===1?(e=t[t.length-1])?.end??0:Math.max(...t.slice(-this.options.lanes).map(e=>e.end)),n-this.options.scrollMargin+this.options.paddingEnd},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{var e,t;this.itemSizeCache=new Map,(t=(e=this.options).onChange)==null||t.call(e,this,!1)},this.setOptions(e)}};const Nm=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(ar)t=i-1;else return i}return e>0?e-1:0};function Pm({measurements:e,outerSize:t,scrollOffset:n}){let r=e.length-1,i=Nm(0,r,t=>e[t].start,n),a=i;for(;aR(e).getScrollElement(),e=>{e&&t._willUpdate()},{immediate:!0}),N(()=>R(e),e=>{t.setOptions({...e,onChange:(t,r)=>{var i;ie(n),(i=e.onChange)==null||i.call(e,t,r)}}),t._willUpdate(),ie(n)},{immediate:!0}),ce(r),n}function Im(e){return Fm(G(()=>({observeElementRect:Em,observeElementOffset:km,scrollToFn:jm,...R(e)})))}const Lm=E({__name:`ListboxVirtualizer`,props:{options:{},estimateSize:{},textContent:{type:Function}},setup(e){let t=e,n=Ee(),r=um(),i=zo(),{getItems:a}=Su();r.isVirtual.value=!0;let o=G(()=>{let e=i.value;if(e){let t=window.getComputedStyle(e);return{start:Number.parseFloat(t.paddingBlockStart||t.paddingTop),end:Number.parseFloat(t.paddingBlockEnd||t.paddingBottom)}}else return{start:0,end:0}}),s=Im({get scrollPaddingStart(){return o.value.start},get scrollPaddingEnd(){return o.value.end},get count(){return t.options.length},get horizontal(){return r.orientation.value===`horizontal`},estimateSize(){return t.estimateSize??28},getScrollElement(){return i.value},overscan:12}),c=G(()=>s.value.getVirtualItems().map(e=>({item:e,is:ge(n.default({option:t.options[e.index],virtualizer:s.value,virtualItem:e})[0],{key:`${e.key}`,"data-index":e.index,"aria-setsize":t.options.length,"aria-posinset":e.index+1,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})})));r.virtualFocusHook.on(e=>{let n=t.options.findIndex(e=>Array.isArray(r.modelValue.value)?lm(e,r.modelValue.value[0],r.by):lm(e,r.modelValue.value,r.by));n!==-1&&(e?.preventDefault(),s.value.scrollToIndex(n,{align:`start`}),requestAnimationFrame(()=>{let t=sm(i.value);t&&e&&t?.focus()}))});let l=vo(``,1e3),u=G(()=>{let e=e=>t.textContent?t.textContent(e):e.toString().toLowerCase();return t.options.map((t,n)=>({index:n,textContent:e(t)}))});function d(e,n){var i,o,s,c;if(!((i=r.firstValue)!=null&&i.value)||!r.multiple.value||!Array.isArray(r.modelValue.value))return;let l=(o=a().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===r.highlightedElement.value))?.value;if(!l)return;let u=null;switch(n){case`prev`:case`next`:u=Aa(t.options,r.firstValue.value,l);break;case`first`:u=Aa(t.options,r.firstValue.value,(s=t.options)?.[0]);break;case`last`:u=Aa(t.options,r.firstValue.value,(c=t.options)?.[t.options.length-1]);break}r.modelValue.value=u}return r.virtualKeydownHook.on(e=>{var n;let o=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!o)return;let c=od[e.key];if(o&&e.key===`a`&&r.multiple.value?(e.preventDefault(),r.modelValue.value=[...t.options],c=`last`):e.shiftKey&&c&&d(e,c),[`first`,`last`].includes(c)){e.preventDefault();let n=c===`first`?0:t.options.length-1;s.value.scrollToIndex(n),requestAnimationFrame(()=>{let e=a(),t=c===`first`?e[0]:e[e.length-1];r.onChangeHighlight(t.ref)})}else if(!c&&!o){l.value+=e.key;let t=Number((n=Y())?.getAttribute(`data-index`)),a=u.value[t].textContent,o=u.value.map(e=>e.textContent),c=Bs(o,l.value,a),d=u.value.find(e=>e.textContent===c);d&&(s.value.scrollToIndex(d.index,{align:`start`}),requestAnimationFrame(()=>{let e=i.value.querySelector(`[data-index="${d.index}"]`);e instanceof HTMLElement&&r.onChangeHighlight(e)}))}}),(e,t)=>(P(),B(`div`,{"data-radix-vue-virtualizer":``,style:ke({position:`relative`,width:`100%`,height:`${R(s).getTotalSize()}px`})},[(P(!0),B(Se,null,ye(c.value,({is:e,item:t})=>(P(),U(j(e),{key:t.index}))),128))],4))}}),[Rm,zm]=q(`ListboxGroup`),Bm=E({__name:`ListboxGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Z(void 0,`radix-vue-listbox-group`);return zm({id:n}),(e,r)=>(P(),U(R(Q),k({role:`group`},t,{"aria-labelledby":R(n)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-labelledby`]))}}),Vm=E({__name:`ListboxGroupLabel`,props:{for:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Rm({id:``});return(e,r)=>(P(),U(R(Q),k(t,{id:R(n).id}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),[Hm,Um]=q(`MenubarRoot`),Wm=E({__name:`MenubarRoot`,props:{modelValue:{},defaultValue:{},dir:{},loop:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),{createCollection:o}=os(`menubar`);o(a);let s=J(n,`modelValue`,r,{defaultValue:n.defaultValue??``,passive:n.modelValue===void 0}),c=I(null),{dir:l,loop:u}=L(n),d=cs(l);return Um({modelValue:s,dir:d,loop:u,onMenuOpen:e=>{s.value=e,c.value=e},onMenuClose:()=>{s.value=``},onMenuToggle:e=>{s.value=s.value?``:e,c.value=e}}),(e,t)=>(P(),U(R(pd),{"current-tab-stop-id":c.value,"onUpdate:currentTabStopId":t[0]||=e=>c.value=e,orientation:`horizontal`,loop:R(u),dir:R(d),"as-child":``},{default:z(()=>[A(R(Q),{ref:R(i),role:`menubar`},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(s)})]),_:3},512)]),_:3},8,[`current-tab-stop-id`,`loop`,`dir`]))}}),[Gm,Km]=q(`MenubarMenu`),qm=E({__name:`MenubarMenu`,props:{value:{}},setup(e){let t=Z(e.value),n=Hm();X();let r=I(),i=I(!1),a=G(()=>n.modelValue.value===t);return N(a,()=>{a.value||(i.value=!1)}),Km({value:t,triggerElement:r,triggerId:t,contentId:``,wasKeyboardTriggerOpenRef:i}),(e,t)=>(P(),U(R(rd),{open:a.value,modal:!1,dir:R(n).dir.value,"onUpdate:open":t[0]||=e=>{e||R(n).onMenuClose()}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`open`,`dir`]))}}),Jm=E({__name:`MenubarTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=Hm(),n=Gm(),{forwardRef:r,currentElement:i}=X(),a=I(!1),o=G(()=>t.modelValue.value===n.value);return S(()=>{n.triggerElement=i}),(e,s)=>(P(),U(R(md),{"as-child":``,focusable:!e.disabled,"tab-stop-id":R(n).value},{default:z(()=>[A(R(Yu),{"as-child":``},{default:z(()=>[A(R(Q),{id:R(n).triggerId,ref:R(r),as:e.as,type:e.as===`button`?`button`:void 0,role:`menuitem`,"aria-haspopup":`menu`,"aria-expanded":o.value,"aria-controls":o.value?R(n).contentId:void 0,"data-highlighted":a.value?``:void 0,"data-state":o.value?`open`:`closed`,"data-disabled":e.disabled?``:void 0,disabled:e.disabled,"data-value":R(n).value,"data-radix-vue-collection-item":``,onPointerdown:s[0]||=r=>{!e.disabled&&r.button===0&&r.ctrlKey===!1&&(R(t).onMenuOpen(R(n).value),o.value||r.preventDefault())},onPointerenter:s[1]||=()=>{var e;R(t).modelValue.value&&!o.value&&(R(t).onMenuOpen(R(n).value),(e=R(i))==null||e.focus())},onKeydown:s[2]||=h(r=>{e.disabled||([`Enter`,` `].includes(r.key)&&R(t).onMenuToggle(R(n).value),r.key===`ArrowDown`&&R(t).onMenuOpen(R(n).value),[`Enter`,` `,`ArrowDown`].includes(r.key)&&(R(n).wasKeyboardTriggerOpenRef.value=!0,r.preventDefault()))},[`enter`,`space`,`arrow-down`]),onFocus:s[3]||=e=>a.value=!0,onBlur:s[4]||=e=>a.value=!1},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`as`,`type`,`aria-expanded`,`aria-controls`,`data-highlighted`,`data-state`,`data-disabled`,`disabled`,`data-value`])]),_:3})]),_:3},8,[`focusable`,`tab-stop-id`]))}}),Ym=E({__name:`MenubarPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(kd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Xm=E({__name:`MenubarContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},side:{},sideOffset:{},align:{default:`start`},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let r=Hm(),i=Gm();i.contentId||=Z(void 0,`radix-vue-menubar-content`);let{injectCollection:a}=os(`menubar`),o=a(),s=I(!1);function c(e){let t=e.target.hasAttribute(`data-radix-menubar-subtrigger`),n=(r.dir.value===`rtl`?`ArrowRight`:`ArrowLeft`)===e.key;if(!n&&t)return;let a=o.value.map(e=>e.dataset.value);n&&a.reverse();let s=a.indexOf(i.value);a=r.loop.value?zs(a,s+1):a.slice(s+1);let[c]=a;c&&r.onMenuOpen(c)}return(e,t)=>(P(),U(R(Ed),k(R(n),{id:R(i).contentId,"data-radix-menubar-content":``,"aria-labelledby":R(i).triggerId,style:{"--radix-menubar-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-menubar-content-available-width":`var(--radix-popper-available-width)`,"--radix-menubar-content-available-height":`var(--radix-popper-available-height)`,"--radix-menubar-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-menubar-trigger-height":`var(--radix-popper-anchor-height)`},onCloseAutoFocus:t[0]||=e=>{var t;!R(r).modelValue.value&&!s.value&&((t=R(i).triggerElement.value)==null||t.focus()),s.value=!1,e.preventDefault()},onFocusOutside:t[1]||=e=>{let t=e.target;R(o).some(e=>e.contains(t))&&e.preventDefault()},onInteractOutside:t[2]||=e=>{s.value=!0},onEntryFocus:t[3]||=e=>{R(i).wasKeyboardTriggerOpenRef.value||e.preventDefault()},onKeydown:h(c,[`arrow-right`,`arrow-left`])}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`]))}}),Zm=E({__name:`MenubarArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Xu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Qm=E({__name:`MenubarItem`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(yd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),$m=E({__name:`MenubarGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Dd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),eh=E({__name:`MenubarSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Pd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),th=E({__name:`MenubarCheckboxItem`,props:{checked:{type:[Boolean,String]},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`,`update:checked`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Cd),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),nh=E({__name:`MenubarItemIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Sd),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),rh=E({__name:`MenubarLabel`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Od),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ih=E({__name:`MenubarRadioGroup`,props:{modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=ls(t);return X(),(e,t)=>(P(),U(R(Md),K(V({...n,...R(r)})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ah=E({__name:`MenubarRadioItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},emits:[`select`],setup(e,{emit:t}){let n=hs(e,t);return X(),(e,t)=>(P(),U(R(Nd),K(V(R(n))),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),oh=E({__name:`MenubarSub`,props:{defaultOpen:{type:Boolean},open:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`open`,r,{defaultValue:n.defaultOpen??!1,passive:n.open===void 0});return(e,t)=>(P(),U(R(Ld),{open:R(i),"onUpdate:open":t[0]||=e=>v(i)?i.value=e:null},{default:z(()=>[W(e.$slots,`default`,{open:R(i)})]),_:3},8,[`open`]))}}),sh=E({__name:`MenubarSubContent`,props:{forceMount:{type:Boolean},loop:{type:Boolean},sideOffset:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`entryFocus`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=hs(e,t);X();let{injectCollection:r}=os(`menubar`),i=Hm(),a=Gm(),o=r();function s(e){if(e.target.hasAttribute(`data-radix-menubar-subtrigger`))return;let t=o.value.map(e=>e.dataset.value),n=t.indexOf(a.value);t=i.loop.value?zs(t,n+1):t.slice(n+1);let[r]=t;r&&i.onMenuOpen(r)}return(e,t)=>(P(),U(R(Rd),k(R(n),{"data-radix-menubar-content":``,style:{"--radix-menubar-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-menubar-content-available-width":`var(--radix-popper-available-width)`,"--radix-menubar-content-available-height":`var(--radix-popper-available-height)`,"--radix-menubar-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-menubar-trigger-height":`var(--radix-popper-anchor-height)`},onKeydown:h(s,[`arrow-right`])}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),ch=E({__name:`MenubarSubTrigger`,props:{disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(zd),k(t,{"data-radix-menubar-subtrigger":``}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[lh,uh]=q([`NavigationMenuRoot`,`NavigationMenuSub`],`NavigationMenuContext`),dh=E({__name:`NavigationMenuRoot`,props:{modelValue:{default:void 0},defaultValue:{},dir:{},orientation:{default:`horizontal`},delayDuration:{default:200},skipDelayDuration:{default:300},disableClickTrigger:{type:Boolean,default:!1},disableHoverTrigger:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`nav`}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t,{defaultValue:n.defaultValue??``,passive:n.modelValue===void 0}),i=I(``),{forwardRef:a,currentElement:o}=X(),s=I(),c=I(),{createCollection:l}=os(`nav`);l(s);let{delayDuration:u,skipDelayDuration:d,dir:f,disableClickTrigger:p,disableHoverTrigger:m}=L(n),h=cs(f),g=vo(!1,d),_=G(()=>r.value!==``||g.value?150:u.value),v=yo(e=>{typeof e==`string`&&(i.value=r.value,r.value=e)},_);return uh({isRootMenu:!0,modelValue:r,previousValue:i,baseId:Z(void 0,`radix-navigation-menu`),disableClickTrigger:p,disableHoverTrigger:m,dir:h,orientation:n.orientation,rootNavigationMenu:o,indicatorTrack:s,onIndicatorTrackChange:e=>{s.value=e},viewport:c,onViewportChange:e=>{c.value=e},onTriggerEnter:e=>{v(e)},onTriggerLeave:()=>{g.value=!0,v(``)},onContentEnter:()=>{v()},onContentLeave:()=>{v(``)},onItemSelect:e=>{i.value=r.value,r.value=e},onItemDismiss:()=>{i.value=r.value,r.value=``}}),(e,t)=>(P(),U(R(Q),{ref:R(a),"aria-label":`Main`,as:e.as,"as-child":e.asChild,"data-orientation":e.orientation,dir:R(h),"data-radix-navigation-menu":``},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(r)})]),_:3},8,[`as`,`as-child`,`data-orientation`,`dir`]))}});function fh(e){return e?`open`:`closed`}function ph(e,t){return`${e}-trigger-${t}`}function mh(e,t){return`${e}-content-${t}`}const hh=`navigationMenu.linkSelect`,gh=`navigationMenu.rootContentDismiss`;function _h(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function vh(e){let t=Y();return e.some(e=>e===t?!0:(e.focus(),Y()!==t))}function yh(e){return e.forEach(e=>{e.dataset.tabindex=e.getAttribute(`tabindex`)||``,e.setAttribute(`tabindex`,`-1`)}),()=>{e.forEach(e=>{let t=e.dataset.tabindex;e.setAttribute(`tabindex`,t)})}}function bh(e){return t=>t.pointerType===`mouse`?e(t):void 0}const[xh,Sh]=q(`NavigationMenuItem`),Ch=E({__name:`NavigationMenuItem`,props:{value:{},asChild:{type:Boolean},as:{default:`li`}},setup(e){let t=e;X();let{injectCollection:n}=os(`nav`),r=n(),i=lh(),a=Z(t.value),o=I(),s=I(),c=mh(i.baseId,a),l=()=>({}),u=I(!1);async function d(e=`start`){let t=document.getElementById(c);if(t){l();let n=_h(t);n.length&&vh(e===`start`?n:n.reverse())}}function f(){let e=document.getElementById(c);if(e){let t=_h(e);t.length&&(l=yh(t))}}Sh({value:a,contentId:c,triggerRef:o,focusProxyRef:s,wasEscapeCloseRef:u,onEntryKeyDown:d,onFocusProxyEnter:d,onContentFocusOutside:f,onRootContentClose:f});function p(){var e;i.onItemDismiss(),(e=o.value)==null||e.focus()}function m(e){let t=Y();if(e.keyCode===32||e.key===`Enter`)if(i.modelValue.value===a){p(),e.preventDefault();return}else{e.target.click(),e.preventDefault();return}let n=r.value.filter(e=>{var t;return(t=e.parentElement)?.hasAttribute(`data-menu-item`)});if(!n.includes(t))return;let o=Ho(e,t,void 0,{itemsArray:n,loop:!1});o&&o?.focus(),e.preventDefault(),e.stopPropagation()}return(e,t)=>(P(),U(R(Q),{"as-child":e.asChild,as:e.as,"data-menu-item":``,onKeydown:h(m,[`up`,`down`,`left`,`right`,`home`,`end`,`space`])},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}}),wh=E({__name:`NavigationMenuContentImpl`,props:{disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=e,r=t,{injectCollection:i}=os(`nav`),a=i(),{forwardRef:o,currentElement:s}=X(),c=lh(),l=xh(),u=ph(c.baseId,l.value),d=mh(c.baseId,l.value),f=I(null),p=G(()=>{let e=a.value.map(e=>e.id.split(`trigger-`)[1]);c.dir.value===`rtl`&&e.reverse();let t=e.indexOf(c.modelValue.value),n=e.indexOf(c.previousValue.value),r=l.value===c.modelValue.value,i=n===e.indexOf(l.value);if(!r&&!i)return f.value;let o=(()=>{if(t!==n){if(r&&n!==-1)return t>n?`from-end`:`from-start`;if(i&&t!==-1)return t>n?`to-start`:`to-end`}return null})();return f.value=o,o});function m(e){var t,n;if(r(`focusOutside`,e),r(`interactOutside`,e),!e.defaultPrevented){l.onContentFocusOutside();let r=e.target;(n=(t=c.rootNavigationMenu)?.value)!=null&&n.contains(r)&&e.preventDefault()}}function h(e){var t;if(r(`pointerDownOutside`,e),!e.defaultPrevented){let n=e.target,r=a.value.some(e=>e.contains(n)),i=c.isRootMenu&&(t=c.viewport.value)?.contains(n);(r||i||!c.isRootMenu)&&e.preventDefault()}}H(e=>{let t=s.value;if(c.isRootMenu&&t){let n=()=>{var e;c.onItemDismiss(),l.onRootContentClose(),t.contains(Y())&&((e=l.triggerRef.value)==null||e.focus())};t.addEventListener(gh,n),e(()=>t.removeEventListener(gh,n))}});function g(e){var t,n;r(`escapeKeyDown`,e),e.defaultPrevented||(c.onItemDismiss(),(n=(t=l.triggerRef)?.value)==null||n.focus(),l.wasEscapeCloseRef.value=!0)}function _(e){var t;if(e.target.closest(`[data-radix-navigation-menu]`)!==c.rootNavigationMenu.value)return;let n=e.altKey||e.ctrlKey||e.metaKey,r=e.key===`Tab`&&!n,i=_h(e.currentTarget);if(r){let n=Y(),r=i.findIndex(e=>e===n),a=e.shiftKey?i.slice(0,r).reverse():i.slice(r+1,i.length);if(vh(a))e.preventDefault();else{(t=l.focusProxyRef.value)==null||t.focus();return}}let a=Ho(e,Y(),void 0,{itemsArray:i,loop:!1,enableIgnoredElement:!0});a?.focus()}function v(){var e;let t=new Event(gh,{bubbles:!0,cancelable:!0});(e=s.value)==null||e.dispatchEvent(t)}return(e,t)=>(P(),U(R(Cc),k({id:R(d),ref:R(o),"aria-labelledby":R(u),"data-motion":p.value,"data-state":R(fh)(R(c).modelValue.value===R(l).value),"data-orientation":R(c).orientation},n,{onKeydown:_,onEscapeKeyDown:g,onPointerDownOutside:h,onFocusOutside:m,onDismiss:v}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`,`data-motion`,`data-state`,`data-orientation`]))}}),Th=E({inheritAttrs:!1,__name:`NavigationMenuContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=e,r=t,i=ls(r),{forwardRef:a}=X(),o=Ao(),s=lh(),c=xh(),l=G(()=>c.value===s.modelValue.value),u=G(()=>s.viewport.value&&!s.modelValue.value&&s.previousValue.value?s.previousValue.value===c.value:!1);return(e,t)=>R(o)?(P(),U(ve,{key:0,to:R(s).viewport.value,disabled:!R(s).viewport.value},[A(R(Xs),{present:e.forceMount||l.value||u.value},{default:z(()=>[A(wh,k({ref:R(a),"data-state":R(fh)(l.value),style:{pointerEvents:!l.value&&R(s).isRootMenu?`none`:void 0}},{...e.$attrs,...n,...R(i)},{onPointerenter:t[0]||=e=>R(s).onContentEnter(R(c).value),onPointerleave:t[1]||=e=>R(bh)(()=>R(s).onContentLeave())(e),onPointerDownOutside:t[2]||=e=>r(`pointerDownOutside`,e),onFocusOutside:t[3]||=e=>r(`focusOutside`,e),onInteractOutside:t[4]||=e=>r(`interactOutside`,e)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`,`style`])]),_:3},8,[`present`])],8,[`to`,`disabled`])):O(``,!0)}}),Eh=E({inheritAttrs:!1,__name:`NavigationMenuIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),{injectCollection:r}=os(`nav`),i=r(),a=lh(),o=I(),s=G(()=>a.orientation===`horizontal`),c=G(()=>!!a.modelValue.value),l=I();function u(){l.value&&(o.value={size:s.value?l.value.offsetWidth:l.value.offsetHeight,offset:s.value?l.value.offsetLeft:l.value.offsetTop})}return H(()=>{if(!a.modelValue.value){o.value=void 0;return}let e=i.value;l.value=e.find(e=>e.id.includes(a.modelValue.value)),u()}),Lo(l,u),Lo(a.indicatorTrack,u),(e,r)=>R(a).indicatorTrack.value?(P(),U(ve,{key:0,to:R(a).indicatorTrack.value},[A(R(Xs),{present:e.forceMount||c.value},{default:z(()=>{var r,i,l,u;return[A(R(Q),k({ref:R(n),"aria-hidden":`true`,"data-state":c.value?`visible`:`hidden`,"data-orientation":R(a).orientation,"as-child":t.asChild,as:e.as,style:{position:`absolute`,...s.value?{left:0,width:`${(r=o.value)?.size}px`,transform:`translateX(${(i=o.value)?.offset}px)`}:{top:0,height:`${(l=o.value)?.size}px`,transform:`translateY(${(u=o.value)?.offset}px)`}}},e.$attrs),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`,`data-orientation`,`as-child`,`as`,`style`])]}),_:3},8,[`present`])],8,[`to`])):O(``,!0)}}),Dh=E({__name:`NavigationMenuLink`,props:{active:{type:Boolean},asChild:{type:Boolean},as:{default:`a`}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t;X();async function i(e){var t;let n=new CustomEvent(hh,{bubbles:!0,cancelable:!0,detail:{originalEvent:e}});if(r(`select`,n),!n.defaultPrevented&&!e.metaKey){let n=new CustomEvent(gh,{bubbles:!0,cancelable:!0});(t=e.target)==null||t.dispatchEvent(n)}}return(e,t)=>(P(),U(R(Q),{as:e.as,"data-active":e.active?``:void 0,"aria-current":e.active?`page`:void 0,"as-child":n.asChild,"data-radix-vue-collection-item":``,onClick:i},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`data-active`,`aria-current`,`as-child`]))}}),Oh=E({inheritAttrs:!1,__name:`NavigationMenuList`,props:{asChild:{type:Boolean},as:{default:`ul`}},setup(e){let t=e,n=lh(),{forwardRef:r,currentElement:i}=X();return S(()=>{n.onIndicatorTrackChange(i.value)}),(e,i)=>(P(),U(R(Q),{ref:R(r),style:{position:`relative`}},{default:z(()=>[A(R(Q),k(e.$attrs,{"as-child":t.asChild,as:e.as,"data-orientation":R(n).orientation}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as-child`,`as`,`data-orientation`])]),_:3},512))}}),kh=E({__name:`NavigationMenuSub`,props:{modelValue:{},defaultValue:{},orientation:{default:`horizontal`},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=J(n,`modelValue`,t,{defaultValue:n.defaultValue??``,passive:n.modelValue===void 0}),i=I(``),a=lh(),{forwardRef:o,currentElement:s}=X(),c=I(),l=I(),{createCollection:u}=os(`nav`);return u(c),uh({...a,isRootMenu:!1,modelValue:r,previousValue:i,orientation:n.orientation,rootNavigationMenu:s,indicatorTrack:c,onIndicatorTrackChange:e=>{c.value=e},viewport:l,onViewportChange:e=>{l.value=e},onTriggerEnter:e=>{r.value=e},onTriggerLeave:()=>{},onContentEnter:()=>{},onContentLeave:()=>{},onItemSelect:e=>{r.value=e},onItemDismiss:()=>{r.value=``}}),(e,t)=>(P(),U(R(Q),{ref:R(o),"data-orientation":e.orientation,"as-child":n.asChild,as:e.as,"data-radix-navigation-menu":``},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(r)})]),_:3},8,[`data-orientation`,`as-child`,`as`]))}}),Ah=[`aria-owns`],jh=E({inheritAttrs:!1,__name:`NavigationMenuTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=lh(),r=xh(),{forwardRef:i,currentElement:a}=X(),o=I(``),s=I(``),c=vo(!1,300),l=I(!1),u=G(()=>r.value===n.modelValue.value);S(()=>{r.triggerRef=a,o.value=ph(n.baseId,r.value),s.value=mh(n.baseId,r.value)});function d(){n.disableHoverTrigger.value||(l.value=!1,r.wasEscapeCloseRef.value=!1)}function f(e){if(!n.disableHoverTrigger.value&&e.pointerType===`mouse`){if(t.disabled||l.value||r.wasEscapeCloseRef.value||c.value)return;n.onTriggerEnter(r.value),c.value=!0}}function p(e){if(!n.disableHoverTrigger.value&&e.pointerType===`mouse`){if(t.disabled)return;n.onTriggerLeave(),c.value=!1}}function m(e){e.pointerType===`mouse`&&n.disableClickTrigger.value||c.value||(u.value?n.onItemSelect(``):n.onItemSelect(r.value),l.value=u.value)}function h(e){let t={horizontal:`ArrowDown`,vertical:n.dir.value===`rtl`?`ArrowLeft`:`ArrowRight`}[n.orientation];u.value&&e.key===t&&(r.onEntryKeyDown(),e.preventDefault(),e.stopPropagation())}function g(e){r.focusProxyRef.value=To(e)}function _(e){let t=document.getElementById(r.contentId),n=e.relatedTarget,i=n===a.value,o=t?.contains(n);(i||!o)&&r.onFocusProxyEnter(i?`start`:`end`)}return(e,r)=>(P(),B(Se,null,[A(R(Q),k({id:o.value,ref:R(i),disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-state":R(fh)(u.value),"aria-expanded":u.value,"aria-controls":s.value,"as-child":t.asChild,as:e.as},e.$attrs,{"data-radix-vue-collection-item":``,onPointerenter:d,onPointermove:f,onPointerleave:p,onClick:m,onKeydown:h}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`disabled`,`data-disabled`,`data-state`,`aria-expanded`,`aria-controls`,`as-child`,`as`]),u.value?(P(),B(Se,{key:0},[A(R(mu),{ref:g,"aria-hidden":`true`,tabindex:0,onFocus:_}),R(n).viewport?(P(),B(`span`,{key:0,"aria-owns":s.value},null,8,Ah)):O(``,!0)],64)):O(``,!0)],64))}}),Mh=E({inheritAttrs:!1,__name:`NavigationMenuViewport`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let{forwardRef:t,currentElement:n}=X(),r=lh(),i=I(),a=G(()=>!!r.modelValue.value),o=G(()=>r.modelValue.value);N(n,()=>{n.value&&r.onViewportChange(n.value)});let s=I();return N([o,a],async()=>{var e,t;if(await T(),!n.value)return;let r=(t=(e=n.value.querySelector(`[data-state=open]`))?.children)?.[0];s.value=r},{immediate:!0}),Lo(s,()=>{s.value&&(i.value={width:s.value.offsetWidth,height:s.value.offsetHeight})}),(e,n)=>(P(),U(R(Xs),{present:e.forceMount||a.value},{default:z(()=>{var o,s;return[A(R(Q),k(e.$attrs,{ref:R(t),as:e.as,"as-child":e.asChild,"data-state":R(fh)(a.value),"data-orientation":R(r).orientation,style:{pointerEvents:!a.value&&R(r).isRootMenu?`none`:void 0,"--radix-navigation-menu-viewport-width":i.value?`${(o=i.value)?.width}px`:void 0,"--radix-navigation-menu-viewport-height":i.value?`${(s=i.value)?.height}px`:void 0},onPointerenter:n[0]||=e=>R(r).onContentEnter(R(r).modelValue.value),onPointerleave:n[1]||=e=>R(bh)(()=>R(r).onContentLeave())(e)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-state`,`data-orientation`,`style`])]}),_:3},8,[`present`]))}});function Nh(e){let{disabled:t}=e,n=I(),r=eo(),i=()=>window.clearTimeout(n.value),a=e=>{i(),!t.value&&(r.trigger(),n.value=window.setTimeout(()=>{a(60)},e))},o=()=>{a(400)},s=()=>{i()},c=I(!1),l=G(()=>To(e.target)),u=e=>{e.button!==0||c.value||(e.preventDefault(),c.value=!0,o())},d=()=>{c.value=!1,s()};return oo&&(Do(l||window,`pointerdown`,u),Do(window,`pointerup`,d),Do(window,`pointercancel`,d)),{isPressed:c,onTrigger:r.on}}function Ph(e,t=I({})){return ao(()=>new Ui(e.value,t.value))}function Fh(e,t=I({})){return ao(()=>new Ji(e.value,t.value))}function Ih(e,t,n){let r=e===`+`?t+n:t-n;if(t%1!=0||n%1!=0){let i=t.toString().split(`.`),a=n.toString().split(`.`),o=i[1]&&i[1].length||0,s=a[1]&&a[1].length||0,c=10**Math.max(o,s);t=Math.round(t*c),n=Math.round(n*c),r=e===`+`?t+n:t-n,r/=c}return r}const Lh=[`value`,`name`,`disabled`,`required`],[Rh,zh]=q(`NumberFieldRoot`),Bh=E({inheritAttrs:!1,__name:`NumberFieldRoot`,props:{defaultValue:{default:void 0},modelValue:{},min:{},max:{},step:{default:1},formatOptions:{},locale:{default:`en-US`},disabled:{type:Boolean},required:{type:Boolean},name:{},id:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{disabled:i,min:a,max:o,step:s,locale:c,formatOptions:l,id:u}=L(n),d=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),{primitiveElement:f,currentElement:p}=Us(),m=ps(p),h=I(),g=G(()=>M(d.value)===a.value||(a.value&&!isNaN(d.value)?Ih(`-`,d.value,s.value)M(d.value)===o.value||(o.value&&!isNaN(d.value)?Ih(`+`,d.value,s.value)>o.value:!1));function v(e,t=1){var r;let i=C.parse((r=h.value)?.value??``);n.disabled||(isNaN(i)?d.value=a.value??0:e===`increase`?d.value=M(i+(s.value??1)*t):d.value=M(i-(s.value??1)*t))}function y(e=1){v(`increase`,e)}function b(e=1){v(`decrease`,e)}function x(e){e===`min`&&a.value!==void 0?d.value=M(a.value):e===`max`&&o.value!==void 0&&(d.value=M(o.value))}let S=Ph(c,l),C=Fh(c,l),w=G(()=>S.resolvedOptions().maximumFractionDigits>0?`decimal`:`numeric`),T=Ph(c,l),E=G(()=>isNaN(d.value)?``:T.format(d.value));function D(e){return C.isValidPartialNumber(e,a.value,o.value)}function j(e){h.value&&(h.value.value=e)}function M(e){let t;return t=s.value===void 0||isNaN(s.value)?Ca(e,a.value,o.value):Ta(e,a.value,o.value,s.value),t=C.parse(S.format(t)),t}function N(e){let t=C.parse(e);return d.value=M(t),e.length?(isNaN(t),j(E.value)):j(e)}return zh({modelValue:d,handleDecrease:b,handleIncrease:y,handleMinMaxValue:x,inputMode:w,inputEl:h,onInputElement:e=>h.value=e,textValue:E,validate:D,applyInputValue:N,disabled:i,max:o,min:a,isDecreaseDisabled:g,isIncreaseDisabled:_,id:u}),(e,t)=>(P(),B(Se,null,[A(R(Q),k(e.$attrs,{ref_key:`primitiveElement`,ref:f,role:`group`,as:e.as,"as-child":e.asChild,"data-disabled":R(i)?``:void 0}),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(d),textValue:E.value})]),_:3},16,[`as`,`as-child`,`data-disabled`]),R(m)?(P(),B(`input`,{key:0,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:R(d),name:n.name,disabled:n.disabled,required:n.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Lh)):O(``,!0)],64))}}),Vh=E({__name:`NumberFieldInput`,props:{asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,{primitiveElement:n,currentElement:r}=Us(),i=Rh();function a(e){e.target===Y()&&(Math.abs(e.deltaY)<=Math.abs(e.deltaX)||(e.preventDefault(),e.deltaY>0?i.handleIncrease():e.deltaY<0&&i.handleDecrease()))}S(()=>{i.onInputElement(r.value)});let o=I(i.textValue.value);N(()=>i.textValue.value,()=>{o.value=i.textValue.value},{immediate:!0,deep:!0});function s(){requestAnimationFrame(()=>{o.value=i.textValue.value})}return(e,r)=>(P(),U(R(Q),k(t,{id:R(i).id.value,ref_key:`primitiveElement`,ref:n,value:o.value,role:`spinbutton`,type:`text`,tabindex:`0`,inputmode:R(i).inputMode.value,disabled:R(i).disabled.value?``:void 0,"data-disabled":R(i).disabled.value?``:void 0,autocomplete:`off`,autocorrect:`off`,spellcheck:`false`,"aria-roledescription":`Number field`,"aria-valuenow":R(i).modelValue.value,"aria-valuemin":R(i).min.value,"aria-valuemax":R(i).max.value,onKeydown:[r[0]||=h(m(e=>R(i).handleIncrease(),[`prevent`]),[`up`]),r[1]||=h(m(e=>R(i).handleDecrease(),[`prevent`]),[`down`]),r[2]||=h(m(e=>R(i).handleIncrease(10),[`prevent`]),[`page-up`]),r[3]||=h(m(e=>R(i).handleDecrease(10),[`prevent`]),[`page-down`]),r[4]||=h(m(e=>R(i).handleMinMaxValue(`min`),[`prevent`]),[`home`]),r[5]||=h(m(e=>R(i).handleMinMaxValue(`max`),[`prevent`]),[`end`]),r[8]||=h(e=>{var t;return R(i).applyInputValue((t=e.target)?.value)},[`enter`])],onWheel:a,onBeforeinput:r[6]||=e=>{let t=e.target,n=t.value.slice(0,t.selectionStart??void 0)+(e.data??``)+t.value.slice(t.selectionEnd??void 0);R(i).validate(n)||e.preventDefault()},onInput:r[7]||=e=>{let t=e.target;o.value=t.value},onChange:s,onBlur:r[9]||=e=>{var t;return R(i).applyInputValue((t=e.target)?.value)}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`value`,`inputmode`,`disabled`,`data-disabled`,`aria-valuenow`,`aria-valuemin`,`aria-valuemax`]))}}),Hh=E({__name:`NumberFieldIncrement`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Rh(),r=G(()=>{var e;return(e=n.disabled)?.value||t.disabled||n.isIncreaseDisabled.value}),{primitiveElement:i,currentElement:a}=Us(),{isPressed:o,onTrigger:s}=Nh({target:a,disabled:r});return s(()=>{n.handleIncrease()}),(e,n)=>(P(),U(R(Q),k(t,{ref_key:`primitiveElement`,ref:i,tabindex:`-1`,"aria-label":`Increase`,type:e.as===`button`?`button`:void 0,style:{userSelect:R(o)?`none`:void 0},disabled:r.value?``:void 0,"data-disabled":r.value?``:void 0,"data-pressed":R(o)?`true`:void 0,onContextmenu:n[0]||=m(()=>{},[`prevent`])}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`,`style`,`disabled`,`data-disabled`,`data-pressed`]))}}),Uh=E({__name:`NumberFieldDecrement`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Rh(),r=G(()=>{var e;return(e=n.disabled)?.value||t.disabled||n.isDecreaseDisabled.value}),{primitiveElement:i,currentElement:a}=Us(),{isPressed:o,onTrigger:s}=Nh({target:a,disabled:r});return s(()=>{n.handleDecrease()}),(e,n)=>(P(),U(R(Q),k(t,{ref_key:`primitiveElement`,ref:i,tabindex:`-1`,"aria-label":`Decrease`,type:e.as===`button`?`button`:void 0,style:{userSelect:R(o)?`none`:void 0},disabled:r.value?``:void 0,"data-disabled":r.value?``:void 0,"data-pressed":R(o)?`true`:void 0,onContextmenu:n[0]||=m(()=>{},[`prevent`])}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`,`style`,`disabled`,`data-disabled`,`data-pressed`]))}}),[Wh,Gh]=q(`PaginationRoot`),Kh=E({__name:`PaginationRoot`,props:{page:{},defaultPage:{default:1},itemsPerPage:{default:10},total:{default:0},siblingCount:{default:2},disabled:{type:Boolean},showEdges:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`nav`}},emits:[`update:page`],setup(e,{emit:t}){let n=e,r=t,{siblingCount:i,disabled:a,showEdges:o}=L(n);X();let s=J(n,`page`,r,{defaultValue:n.defaultPage,passive:n.page===void 0}),c=G(()=>Math.max(1,Math.ceil(n.total/n.itemsPerPage)));return Gh({page:s,onPageChange(e){s.value=e},pageCount:c,siblingCount:i,disabled:a,showEdges:o}),(e,t)=>(P(),U(R(Q),{as:e.as,"as-child":e.asChild},{default:z(()=>[W(e.$slots,`default`,{page:R(s),pageCount:c.value})]),_:3},8,[`as`,`as-child`]))}}),qh=E({__name:`PaginationEllipsis`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Q),k(t,{"data-type":`ellipsis`}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`…`)])]),_:3},16))}}),Jh=E({__name:`PaginationFirst`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Wh();X();let r=G(()=>n.page.value===1||n.disabled.value);return(e,i)=>(P(),U(R(Q),k(t,{"aria-label":`First Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&R(n).onPageChange(1)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`First page`)])]),_:3},16,[`type`,`disabled`]))}}),Yh=E({__name:`PaginationLast`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Wh();X();let r=G(()=>n.page.value===n.pageCount.value||n.disabled.value);return(e,i)=>(P(),U(R(Q),k(t,{"aria-label":`Last Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&R(n).onPageChange(R(n).pageCount.value)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Last page`)])]),_:3},16,[`type`,`disabled`]))}});function Xh(e,t){let n=t-e+1;return Array.from({length:n},(t,n)=>n+e)}function Zh(e){return e.map(e=>typeof e==`number`?{type:`page`,value:e}:{type:`ellipsis`})}const Qh=`ellipsis`;function $h(e,t,n,r){let i=t,a=Math.max(e-n,1),o=Math.min(e+n,i);if(r){let e=Math.min(2*n+5,t)-2,r=a>3&&Math.abs(i-e-1+1)>2&&Math.abs(a-1)>2,s=o2&&Math.abs(i-o)>2;if(!r&&s)return[...Xh(1,e),Qh,i];if(r&&!s){let t=Xh(i-e+1,i);return[1,Qh,...t]}if(r&&s){let e=Xh(a,o);return[1,Qh,...e,Qh,i]}return Xh(1,i)}else{let r=n*2+1;return tZh($h(n.page.value,n.pageCount.value,n.siblingCount.value,n.showEdges.value)));return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`,{items:r.value})]),_:3},16))}}),tg=E({__name:`PaginationListItem`,props:{value:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Wh(),r=G(()=>n.page.value===t.value),i=G(()=>n.disabled.value);return(e,a)=>(P(),U(R(Q),k(t,{"data-type":`page`,"aria-label":`Page ${e.value}`,"aria-current":r.value?`page`:void 0,"data-selected":r.value?`true`:void 0,disabled:i.value,type:e.as===`button`?`button`:void 0,onClick:a[0]||=t=>!i.value&&R(n).onPageChange(e.value)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(Oe(e.value),1)])]),_:3},16,[`aria-label`,`aria-current`,`data-selected`,`disabled`,`type`]))}}),ng=E({__name:`PaginationNext`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Wh(),r=G(()=>n.page.value===n.pageCount.value||n.disabled.value);return(e,i)=>(P(),U(R(Q),k(t,{"aria-label":`Next Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&R(n).onPageChange(R(n).page.value+1)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Next page`)])]),_:3},16,[`type`,`disabled`]))}}),rg=E({__name:`PaginationPrev`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Wh(),r=G(()=>n.page.value===1||n.disabled.value);return(e,i)=>(P(),U(R(Q),k(t,{"aria-label":`Previous Page`,type:e.as===`button`?`button`:void 0,disabled:r.value,onClick:i[0]||=e=>!r.value&&R(n).onPageChange(R(n).page.value-1)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Prev page`)])]),_:3},16,[`type`,`disabled`]))}}),ig=[`id`,`value`,`name`,`disabled`,`required`],[ag,og]=q(`PinInputRoot`),sg=E({inheritAttrs:!1,__name:`PinInputRoot`,props:{modelValue:{},defaultValue:{},placeholder:{default:``},mask:{type:Boolean},otp:{type:Boolean},type:{default:`text`},dir:{},name:{},disabled:{type:Boolean},required:{type:Boolean},id:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`complete`],setup(e,{emit:t}){let n=e,r=t,{mask:i,otp:a,placeholder:o,type:s,disabled:c,dir:l}=L(n),{forwardRef:u}=X(),d=cs(l),f=J(n,`modelValue`,r,{defaultValue:n.defaultValue??[],passive:n.modelValue===void 0}),p=I(new Set);function m(e){p.value.add(e)}let h=G(()=>f.value.filter(e=>!!e).length===p.value.size);return N(f,()=>{h.value&&r(`complete`,f.value)},{deep:!0}),og({modelValue:f,mask:i,otp:a,placeholder:o,type:s,dir:d,disabled:c,isCompleted:h,inputElements:p,onInputElementChange:m}),(e,t)=>(P(),B(Se,null,[A(R(Q),k(e.$attrs,{ref:R(u),dir:R(d),"data-complete":h.value?``:void 0,"data-disabled":R(c)?``:void 0}),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(f)})]),_:3},16,[`dir`,`data-complete`,`data-disabled`]),_e(`input`,{id:e.id,type:`text`,tabindex:`-1`,"aria-hidden":`true`,value:R(f).join(``),name:e.name,disabled:R(c),required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0},onFocus:t[0]||=e=>{var t,n;return(n=(t=Array.from(p.value))?.[0])?.focus()}},null,40,ig)],64))}}),cg=E({__name:`PinInputInput`,props:{index:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=ag(),r=G(()=>Array.from(n.inputElements.value)),i=G(()=>n.modelValue.value[t.index]),a=G(()=>t.disabled||n.disabled.value),o=G(()=>n.otp.value),s=G(()=>n.type.value===`number`),c=G(()=>n.mask.value),{primitiveElement:l,currentElement:u}=Us();function d(e){var n;let i=e.target;if(((n=e.data)?.length??0)>1){b(i.value);return}if(s.value&&!/^\d*$/.test(i.value)){i.value=i.value.replace(/\D/g,``);return}i.value=i.value.slice(-1),C(t.index,i.value);let a=r.value[t.index+1];a&&a.focus()}function f(){let e=u.value;T(()=>{e&&!e.value&&(e.placeholder=n.placeholder.value)})}function p(e){Ho(e,Y(),void 0,{itemsArray:r.value,focus:!0,loop:!1,arrowKeyOptions:`horizontal`,dir:n.dir.value})}function m(e){if(e.preventDefault(),e.target.value)C(t.index,``);else{let e=r.value[t.index-1];e&&(e.focus(),C(t.index-1,``))}}function g(e){e.key===`Delete`&&(e.preventDefault(),C(t.index,``))}function _(e){let t=e.target;t.setSelectionRange(1,1),t.value||(t.placeholder=``)}function v(e){f()}function y(e){e.preventDefault();let t=e.clipboardData;if(!t)return;let n=t.getData(`text`);b(n)}function b(e){var i;let a=[...n.modelValue.value],o=e.length>=r.value.length?0:t.index,c=Math.min(o+e.length,r.value.length);for(let t=o;t=0&&e[t]===``;)e.pop(),t--;return e}function C(e,t){let r=[...n.modelValue.value];r[e]=t,n.modelValue.value=x(r)}return N(i,()=>{i.value||f()}),S(()=>{n.onInputElementChange(u.value)}),me(()=>{var e;(e=n.inputElements)==null||e.value.delete(u.value)}),(e,t)=>(P(),U(R(Q),{ref_key:`primitiveElement`,ref:l,autocapitalize:`none`,as:e.as,"as-child":e.asChild,autocomplete:o.value?`one-time-code`:`false`,type:c.value?`password`:`text`,inputmode:s.value?`numeric`:`text`,pattern:s.value?`[0-9]*`:void 0,placeholder:R(n).placeholder.value,value:i.value,disabled:a.value,"data-disabled":a.value?``:void 0,"data-complete":R(n).isCompleted.value?``:void 0,"aria-label":`pin input ${e.index+1} of ${r.value.length}`,onInput:t[0]||=e=>d(e),onKeydown:[h(p,[`left`,`right`,`up`,`down`,`home`,`end`]),h(m,[`backspace`]),h(g,[`delete`])],onFocus:_,onBlur:v,onPaste:y},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`autocomplete`,`type`,`inputmode`,`pattern`,`placeholder`,`value`,`disabled`,`data-disabled`,`data-complete`,`aria-label`]))}}),[lg,ug]=q(`PopoverRoot`),dg=E({__name:`PopoverRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},modal:{type:Boolean,default:!1}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,{modal:i}=L(n),a=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),o=I(),s=I(!1);return ug({contentId:``,modal:i,open:a,onOpenChange:e=>{a.value=e},onOpenToggle:()=>{a.value=!a.value},triggerElement:o,hasCustomAnchor:s}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[W(e.$slots,`default`,{open:R(a)})]),_:3}))}}),fg=E({__name:`PopoverTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=lg(),{forwardRef:r,currentElement:i}=X();return S(()=>{n.triggerElement.value=i.value}),(e,i)=>(P(),U(j(R(n).hasCustomAnchor.value?R(Q):R(nu)),{"as-child":``},{default:z(()=>[A(R(Q),{ref:R(r),type:e.as===`button`?`button`:void 0,"aria-haspopup":`dialog`,"aria-expanded":R(n).open.value,"aria-controls":R(n).contentId,"data-state":R(n).open.value?`open`:`closed`,as:e.as,"as-child":t.asChild,onClick:R(n).onOpenToggle},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`as`,`as-child`,`onClick`])]),_:3}))}}),pg=E({__name:`PopoverPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),mg=E({__name:`PopoverContentImpl`,props:{trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=ms(n),{forwardRef:a}=X(),o=lg();return ds(),(e,t)=>(P(),U(R(zc),{"as-child":``,loop:``,trapped:e.trapFocus,onMountAutoFocus:t[5]||=e=>r(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>r(`closeAutoFocus`,e)},{default:z(()=>[A(R(Cc),{"as-child":``,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onPointerDownOutside:t[0]||=e=>r(`pointerDownOutside`,e),onInteractOutside:t[1]||=e=>r(`interactOutside`,e),onEscapeKeyDown:t[2]||=e=>r(`escapeKeyDown`,e),onFocusOutside:t[3]||=e=>r(`focusOutside`,e),onDismiss:t[4]||=e=>R(o).onOpenChange(!1)},{default:z(()=>[A(R(lu),k(R(i),{id:R(o).contentId,ref:R(a),"data-state":R(o).open.value?`open`:`closed`,role:`dialog`,style:{"--radix-popover-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-popover-content-available-width":`var(--radix-popper-available-width)`,"--radix-popover-content-available-height":`var(--radix-popper-available-height)`,"--radix-popover-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-popover-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`data-state`])]),_:3},8,[`disable-outside-pointer-events`])]),_:3},8,[`trapped`]))}}),hg=E({__name:`PopoverContentModal`,props:{trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=lg(),a=I(!1);es(!0);let o=hs(n,r),{forwardRef:s,currentElement:c}=X();return Ms(c),(e,t)=>(P(),U(mg,k(R(o),{ref:R(s),"trap-focus":R(i).open.value,"disable-outside-pointer-events":``,onCloseAutoFocus:t[0]||=m(e=>{var t;r(`closeAutoFocus`,e),a.value||(t=R(i).triggerElement.value)==null||t.focus()},[`prevent`]),onPointerDownOutside:t[1]||=e=>{r(`pointerDownOutside`,e);let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,i=t.button===2||n;a.value=i},onFocusOutside:t[2]||=m(()=>{},[`prevent`])}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),gg=E({__name:`PopoverContentNonModal`,props:{trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=lg(),a=I(!1),o=I(!1),s=hs(n,r);return(e,t)=>(P(),U(mg,k(R(s),{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{var t;r(`closeAutoFocus`,e),e.defaultPrevented||(a.value||(t=R(i).triggerElement.value)==null||t.focus(),e.preventDefault()),a.value=!1,o.value=!1},onInteractOutside:t[1]||=async e=>{var t;r(`interactOutside`,e),e.defaultPrevented||(a.value=!0,e.detail.originalEvent.type===`pointerdown`&&(o.value=!0));let n=e.target;(t=R(i).triggerElement.value)!=null&&t.contains(n)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&o.value&&e.preventDefault()}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),_g=E({__name:`PopoverContent`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=lg(),a=hs(n,r),{forwardRef:o}=X();return i.contentId||=Z(void 0,`radix-vue-popover-content`),(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(i).open.value},{default:z(()=>[R(i).modal.value?(P(),U(hg,k({key:0},R(a),{ref:R(o)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):(P(),U(gg,k({key:1},R(a),{ref:R(o)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),vg=E({__name:`PopoverArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(pu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),yg=E({__name:`PopoverClose`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=lg();return(e,r)=>(P(),U(R(Q),{type:e.as===`button`?`button`:void 0,as:e.as,"as-child":t.asChild,onClick:r[0]||=e=>R(n).onOpenChange(!1)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`]))}}),bg=E({__name:`PopoverAnchor`,props:{element:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;X();let n=lg();return C(()=>{n.hasCustomAnchor.value=!0}),me(()=>{n.hasCustomAnchor.value=!1}),(e,n)=>(P(),U(R(nu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),xg=100,[Sg,Cg]=q(`ProgressRoot`),wg=e=>typeof e==`number`;function Tg(e,t){return Ma(e)||wg(e)&&!Number.isNaN(e)&&e<=t&&e>=0?e:(console.error(`Invalid prop \`value\` of value \`${e}\` supplied to \`ProgressRoot\`. The \`value\` prop must be: + - a positive number + - less than the value passed to \`max\` (or ${xg} if no \`max\` prop is set) + - \`null\` or \`undefined\` if the progress is indeterminate. + +Defaulting to \`null\`.`),null)}function Eg(e){return wg(e)&&!Number.isNaN(e)&&e>0?e:(console.error(`Invalid prop \`max\` of value \`${e}\` supplied to \`ProgressRoot\`. Only numbers greater than 0 are valid max values. Defaulting to \`${xg}\`.`),xg)}const Dg=E({__name:`ProgressRoot`,props:{modelValue:{},max:{default:xg},getValueLabel:{type:Function,default:(e,t)=>`${Math.round(e/t*xg)}%`},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:max`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`modelValue`,r,{passive:n.modelValue===void 0}),a=J(n,`max`,r,{passive:n.max===void 0});N(()=>i.value,async e=>{let t=Tg(e,n.max);t!==e&&(await T(),i.value=t)},{immediate:!0}),N(()=>n.max,e=>{let t=Eg(n.max);t!==e&&(a.value=t)},{immediate:!0});let o=G(()=>Ma(i.value)?`indeterminate`:i.value===a.value?`complete`:`loading`);return Cg({modelValue:i,max:a,progressState:o}),(e,t)=>(P(),U(R(Q),{"as-child":e.asChild,as:e.as,"aria-valuemax":R(a),"aria-valuemin":0,"aria-valuenow":wg(R(i))?R(i):void 0,"aria-valuetext":e.getValueLabel(R(i),R(a)),"aria-label":e.getValueLabel(R(i),R(a)),role:`progressbar`,"data-state":o.value,"data-value":R(i)??void 0,"data-max":R(a)},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(i)})]),_:3},8,[`as-child`,`as`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-label`,`data-state`,`data-value`,`data-max`]))}}),Og=E({__name:`ProgressIndicator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Sg();return X(),(e,r)=>{var i;return P(),U(R(Q),k(t,{"data-state":R(n).progressState.value,"data-value":(i=R(n).modelValue)?.value??void 0,"data-max":R(n).max.value}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`,`data-value`,`data-max`])}}}),[kg,Ag]=q(`RadioGroupRoot`),jg=E({__name:`RadioGroupRoot`,props:{modelValue:{},defaultValue:{},disabled:{type:Boolean,default:!1},name:{},required:{type:Boolean,default:!1},orientation:{default:void 0},dir:{},loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i}=X(),a=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),{disabled:o,loop:s,orientation:c,name:l,required:u,dir:d}=L(n),f=cs(d);return Ag({modelValue:a,changeModelValue:e=>{a.value=e},disabled:o,loop:s,orientation:c,name:l?.value,required:u}),(e,t)=>(P(),U(R(pd),{"as-child":``,orientation:R(c),dir:R(f),loop:R(s)},{default:z(()=>[A(R(Q),{ref:R(i),role:`radiogroup`,"data-disabled":R(o)?``:void 0,"as-child":e.asChild,as:e.as,required:R(u),"aria-orientation":R(c),"aria-required":R(u),dir:R(f),name:R(l)},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(a)})]),_:3},8,[`data-disabled`,`as-child`,`as`,`required`,`aria-orientation`,`aria-required`,`dir`,`name`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Mg=[`value`,`checked`,`name`,`disabled`,`required`],Ng=E({__name:`Radio`,props:{id:{},value:{},disabled:{type:Boolean,default:!1},required:{type:Boolean},checked:{type:Boolean,default:void 0},name:{},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:checked`],setup(e,{emit:t}){let n=e,r=J(n,`checked`,t,{passive:n.checked===void 0}),{value:i}=L(n),{forwardRef:a,currentElement:o}=X(),s=ps(o),c=G(()=>{var e;return n.id&&o.value?(e=document.querySelector(`[for="${n.id}"]`))?.innerText??n.value:void 0});function l(e){r.value=!0,s.value&&e.stopPropagation()}return(e,t)=>(P(),U(R(Q),k(e.$attrs,{id:e.id,ref:R(a),role:`radio`,type:e.as===`button`?`button`:void 0,as:e.as,"aria-checked":R(r),"aria-label":c.value,"as-child":e.asChild,disabled:e.disabled?``:void 0,"data-state":R(r)?`checked`:`unchecked`,"data-disabled":e.disabled?``:void 0,value:R(i),required:e.required,name:e.name,onClick:m(l,[`stop`])}),{default:z(()=>[W(e.$slots,`default`,{checked:R(r)}),R(s)?(P(),B(`input`,{key:0,type:`radio`,tabindex:`-1`,"aria-hidden":`true`,value:R(i),checked:!!R(r),name:e.name,disabled:e.disabled,required:e.required,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Mg)):O(``,!0)]),_:3},16,[`id`,`type`,`as`,`aria-checked`,`aria-label`,`as-child`,`disabled`,`data-state`,`data-disabled`,`value`,`required`,`name`]))}}),[Pg,Fg]=q(`RadioGroupItem`),Ig=E({inheritAttrs:!1,__name:`RadioGroupItem`,props:{id:{},value:{},disabled:{type:Boolean,default:!1},required:{type:Boolean},name:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,{forwardRef:n,currentElement:r}=X(),i=kg(),a=G(()=>i.disabled.value||t.disabled),o=G(()=>i.required.value||t.required),s=G(()=>{var e;return(e=i.modelValue)?.value===t.value});Fg({disabled:a,checked:s});let c=I(!1),l=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`];Do(`keydown`,e=>{l.includes(e.key)&&(c.value=!0)}),Do(`keyup`,()=>{c.value=!1});function u(){setTimeout(()=>{var e;c.value&&((e=r.value)==null||e.click())},0)}return(e,r)=>(P(),U(R(md),{checked:s.value,disabled:a.value,"as-child":``,focusable:!a.value,active:s.value},{default:z(()=>[A(Ng,k({...e.$attrs,...t},{ref:R(n),checked:s.value,required:o.value,disabled:a.value,"onUpdate:checked":r[0]||=t=>R(i).changeModelValue(e.value),onKeydown:r[1]||=h(m(()=>{},[`prevent`]),[`enter`]),onFocus:u}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`checked`,`required`,`disabled`])]),_:3},8,[`checked`,`disabled`,`focusable`,`active`]))}}),Lg=E({__name:`RadioGroupIndicator`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`span`}},setup(e){let{forwardRef:t}=X(),n=Pg();return(e,r)=>(P(),U(R(Xs),{present:e.forceMount||R(n).checked.value},{default:z(()=>[A(R(Q),k({ref:R(t),"data-state":R(n).checked.value?`checked`:`unchecked`,"data-disabled":R(n).disabled.value?``:void 0,"as-child":e.asChild,as:e.as},e.$attrs),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`,`data-disabled`,`as-child`,`as`])]),_:3},8,[`present`]))}});function Rg(e){let t=G(()=>e.start.value?!!e.isDateDisabled(e.start.value):!1),n=G(()=>e.end.value?!!e.isDateDisabled(e.end.value):!1),r=G(()=>t.value||n.value?!1:!!(e.start.value&&e.end.value&&ua(e.end.value,e.start.value))),i=t=>e.start.value?Zt(e.start.value,t):!1,a=t=>e.end.value?Zt(e.end.value,t):!1,o=t=>e.start.value&&Zt(e.start.value,t)||e.end.value&&Zt(e.end.value,t)?!0:e.end.value&&e.start.value?ha(t,e.start.value,e.end.value):!1,s=G(()=>{if(e.start.value&&e.end.value||!e.start.value||!e.focusedValue.value)return null;let t=ua(e.start.value,e.focusedValue.value),n=t?e.start.value:e.focusedValue.value,r=t?e.focusedValue.value:e.start.value;return Zt(n,r)||va(n,r,e.isDateUnavailable,e.isDateDisabled)?{start:n,end:r}:null});return{isInvalid:r,isSelected:o,highlightedRange:s,isSelectionStart:i,isSelectionEnd:a,isHighlightedStart:e=>!s.value||!s.value.start?!1:Zt(s.value.start,e),isHighlightedEnd:e=>!s.value||!s.value.end?!1:Zt(s.value.end,e)}}const zg={style:{border:`0px`,clip:`rect(0px, 0px, 0px, 0px)`,"clip-path":`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:`0px`,position:`absolute`,"white-space":`nowrap`,width:`1px`}},Bg={role:`heading`,"aria-level":`2`},[Vg,Hg]=q(`RangeCalendarRoot`),Ug=E({__name:`RangeCalendarRoot`,props:{defaultPlaceholder:{},defaultValue:{default:()=>({start:void 0,end:void 0})},modelValue:{},placeholder:{default:void 0},pagedNavigation:{type:Boolean,default:!1},preventDeselect:{type:Boolean,default:!1},weekStartsOn:{default:0},weekdayFormat:{default:`narrow`},calendarLabel:{},fixedWeeks:{type:Boolean,default:!1},maxValue:{},minValue:{},locale:{default:`en`},numberOfMonths:{default:1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},initialFocus:{type:Boolean,default:!1},isDateDisabled:{type:Function,default:void 0},isDateUnavailable:{type:Function,default:void 0},dir:{},nextPage:{},prevPage:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`update:placeholder`,`update:startValue`],setup(e,{emit:t}){let n=e,r=t,{disabled:i,readonly:a,initialFocus:o,pagedNavigation:s,weekStartsOn:c,weekdayFormat:l,fixedWeeks:u,numberOfMonths:d,preventDeselect:f,isDateUnavailable:p,isDateDisabled:m,calendarLabel:h,maxValue:g,minValue:_,locale:v,dir:y,nextPage:b,prevPage:x}=L(n),{primitiveElement:C,currentElement:w}=Us(),T=cs(y),E=I(),D=I(),O=J(n,`modelValue`,r,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),k=Na({defaultPlaceholder:n.placeholder,defaultValue:O.value.start,locale:n.locale}),A=I(O.value.start),j=I(O.value.end),M=J(n,`placeholder`,r,{defaultValue:n.defaultPlaceholder??k.copy(),passive:n.placeholder===void 0});function F(e){M.value=e.copy()}let{fullCalendarLabel:ee,headingValue:te,isDateDisabled:ne,isDateUnavailable:re,isNextButtonDisabled:ie,isPrevButtonDisabled:ae,grid:oe,weekdays:se,isOutsideVisibleView:ce,nextPage:le,prevPage:ue,formatter:de}=kl({locale:v,placeholder:M,weekStartsOn:c,fixedWeeks:u,numberOfMonths:d,minValue:_,maxValue:g,disabled:i,weekdayFormat:l,pagedNavigation:s,isDateDisabled:m.value,isDateUnavailable:p.value,calendarLabel:h,nextPage:b,prevPage:x}),{isInvalid:B,isSelected:fe,highlightedRange:pe,isSelectionStart:V,isSelectionEnd:me,isHighlightedStart:he,isHighlightedEnd:ge}=Rg({start:A,end:j,isDateDisabled:ne,isDateUnavailable:re,focusedValue:D});return N(O,e=>{var t,n,r,i;(!e||!e.start||A.value&&!$t(e.start,A.value))&&(A.value=(n=(t=e?.start)?.copy)?.call(t)),(!e||!e.end||j.value&&!$t(e.end,j.value))&&(j.value=(i=(r=e?.end)?.copy)?.call(r))}),N(A,e=>{e&&!$t(e,M.value)&&F(e),r(`update:startValue`,e)}),N([A,j],([e,t])=>{let n=O.value;if(!(n&&n.start&&n.end&&e&&t&&$t(n.start,e)&&$t(n.end,t)))if(e&&t){if(n.start&&n.end&&$t(n.start,e)&&$t(n.end,t))return;ua(t,e)?O.value={start:t.copy(),end:e.copy()}:O.value={start:e.copy(),end:t.copy()}}else n.start&&n.end&&(O.value={start:e?.copy(),end:void 0})}),Hg({isDateUnavailable:re,startValue:A,endValue:j,formatter:de,modelValue:O,placeholder:M,disabled:i,initialFocus:o,pagedNavigation:s,weekStartsOn:c,weekdayFormat:l,fixedWeeks:u,numberOfMonths:d,readonly:a,preventDeselect:f,fullCalendarLabel:ee,headingValue:te,isInvalid:B,isDateDisabled:ne,highlightedRange:pe,focusedValue:D,lastPressedDateValue:E,isSelected:fe,isSelectionEnd:me,isSelectionStart:V,isNextButtonDisabled:ie,isPrevButtonDisabled:ae,isOutsideVisibleView:ce,nextPage:le,prevPage:ue,parentElement:w,onPlaceholderChange:F,locale:v,dir:T,isHighlightedStart:he,isHighlightedEnd:ge}),S(()=>{o.value&&Xa(w.value)}),(e,t)=>(P(),U(R(Q),{ref_key:`primitiveElement`,ref:C,as:e.as,"as-child":e.asChild,role:`application`,"aria-label":R(ee),"data-readonly":R(a)?``:void 0,"data-disabled":R(i)?``:void 0,"data-invalid":R(B)?``:void 0,dir:R(T)},{default:z(()=>[_e(`div`,zg,[_e(`div`,Bg,Oe(R(ee)),1)]),W(e.$slots,`default`,{date:R(M),grid:R(oe),weekDays:R(se),weekStartsOn:R(c),locale:R(v),fixedWeeks:R(u)})]),_:3},8,[`as`,`as-child`,`aria-label`,`data-readonly`,`data-disabled`,`data-invalid`,`dir`]))}}),Wg=E({__name:`RangeCalendarHeader`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Gg=E({__name:`RangeCalendarHeading`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Vg();return(e,r)=>(P(),U(R(Q),k(t,{"data-disabled":R(n).disabled.value?``:void 0}),{default:z(()=>[W(e.$slots,`default`,{headingValue:R(n).headingValue.value},()=>[F(Oe(R(n).headingValue.value),1)])]),_:3},16,[`data-disabled`]))}}),Kg=E({__name:`RangeCalendarGrid`,props:{asChild:{type:Boolean},as:{default:`table`}},setup(e){let t=e,n=Vg(),r=G(()=>n.disabled.value?!0:void 0),i=G(()=>n.readonly.value?!0:void 0);return(e,n)=>(P(),U(R(Q),k(t,{tabindex:`-1`,role:`grid`,"aria-readonly":i.value,"aria-disabled":r.value,"data-readonly":i.value&&``,"data-disabled":r.value&&``}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-readonly`,`aria-disabled`,`data-readonly`,`data-disabled`]))}}),qg=E({__name:`RangeCalendarCell`,props:{date:{},asChild:{type:Boolean},as:{default:`td`}},setup(e){let t=Vg();return(e,n)=>{var r,i;return P(),U(R(Q),{as:e.as,"as-child":e.asChild,role:`gridcell`,"aria-selected":R(t).isSelected(e.date)?!0:void 0,"aria-disabled":R(t).isDateDisabled(e.date)||(i=(r=R(t)).isDateUnavailable)?.call(r,e.date),"data-disabled":R(t).isDateDisabled(e.date)?``:void 0},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-selected`,`aria-disabled`,`data-disabled`])}}}),Jg=E({__name:`RangeCalendarHeadCell`,props:{asChild:{type:Boolean},as:{default:`th`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Yg=E({__name:`RangeCalendarNext`,props:{step:{},nextPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=G(()=>r.disabled.value||r.isNextButtonDisabled(t.step,t.nextPage)),r=Vg();return(e,i)=>(P(),U(R(Q),k(t,{"aria-label":`Next page`,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>R(r).nextPage(t.step,t.nextPage)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Next page`)])]),_:3},16,[`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Xg=E({__name:`RangeCalendarPrev`,props:{step:{},prevPage:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=G(()=>r.disabled.value||r.isPrevButtonDisabled(t.step,t.prevPage)),r=Vg();return(e,i)=>(P(),U(R(Q),k(t,{"aria-label":`Previous page`,type:e.as===`button`?`button`:void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:i[0]||=e=>R(r).prevPage(t.step,t.prevPage)}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`Prev page`)])]),_:3},16,[`type`,`aria-disabled`,`data-disabled`,`disabled`]))}}),Zg=E({__name:`RangeCalendarGridHead`,props:{asChild:{type:Boolean},as:{default:`thead`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),k(t,{"aria-hidden":`true`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Qg=E({__name:`RangeCalendarGridBody`,props:{asChild:{type:Boolean},as:{default:`tbody`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),$g=E({__name:`RangeCalendarGridRow`,props:{asChild:{type:Boolean},as:{default:`tr`}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),e_=E({__name:`RangeCalendarCellTrigger`,props:{day:{},month:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=Vg(),r=Vs(),{primitiveElement:i,currentElement:a}=Us(),o=G(()=>n.formatter.custom(aa(t.day),{weekday:`long`,month:`long`,day:`numeric`,year:`numeric`})),s=G(()=>n.isDateDisabled(t.day)),c=G(()=>{var e;return(e=n.isDateUnavailable)?.call(n,t.day)}),l=G(()=>n.isSelected(t.day)),u=G(()=>n.isSelectionStart(t.day)),d=G(()=>n.isSelectionEnd(t.day)),f=G(()=>n.isHighlightedStart(t.day)),p=G(()=>n.isHighlightedEnd(t.day)),m=G(()=>n.highlightedRange.value?ma(t.day,n.highlightedRange.value.start,n.highlightedRange.value.end):!1),g=`[data-radix-vue-calendar-cell-trigger]:not([data-disabled]):not([data-outside-view]):not([data-outside-visible-view])`,_=G(()=>nn(t.day,fn())),v=G(()=>!Qt(t.day,t.month)),y=G(()=>n.isOutsideVisibleView(t.day)),b=G(()=>t.day.day.toLocaleString(n.locale.value)),x=G(()=>!n.disabled.value&&Zt(t.day,n.placeholder.value));function S(e,t){var r;if(!n.readonly.value&&!(n.isDateDisabled(t)||(r=n.isDateUnavailable)!=null&&r.call(n,t))){if(n.lastPressedDateValue.value=t.copy(),n.startValue.value&&n.highlightedRange.value===null){if(Zt(t,n.startValue.value)&&!n.preventDeselect.value&&!n.endValue.value){n.startValue.value=void 0,n.onPlaceholderChange(t);return}else if(!n.endValue.value){e.preventDefault(),n.lastPressedDateValue.value&&Zt(n.lastPressedDateValue.value,t)&&(n.startValue.value=t.copy());return}}if(n.startValue.value&&n.endValue.value&&Zt(n.endValue.value,t)&&!n.preventDeselect.value){n.startValue.value=void 0,n.endValue.value=void 0,n.onPlaceholderChange(t);return}n.startValue.value?n.endValue.value?n.endValue.value&&n.startValue.value&&(n.endValue.value=void 0,n.startValue.value=t.copy()):n.endValue.value=t.copy():n.startValue.value=t.copy()}}function C(e){S(e,t.day)}function w(){var e;n.isDateDisabled(t.day)||(e=n.isDateUnavailable)!=null&&e.call(n,t.day)||(n.focusedValue.value=t.day.copy())}function E(e){e.preventDefault(),e.stopPropagation();let i=n.parentElement.value,o=i?Array.from(i.querySelectorAll(g)):[],s=o.indexOf(a.value),c=7,l=n.dir.value===`rtl`?-1:1;switch(e.code){case r.ARROW_RIGHT:s+=l;break;case r.ARROW_LEFT:s-=l;break;case r.ARROW_UP:s-=c;break;case r.ARROW_DOWN:s+=c;break;case r.ENTER:case r.SPACE_CODE:S(e,t.day);return;default:return}if(s>=0&&s{let e=i?Array.from(i.querySelectorAll(g)):[];if(!n.pagedNavigation.value){let t=la(n.placeholder.value);e[t-Math.abs(s)].focus();return}e[e.length-Math.abs(s)].focus()});return}if(s>=o.length){if(n.isNextButtonDisabled(`month`))return;n.nextPage(),T(()=>{let e=i?Array.from(i.querySelectorAll(g)):[];if(!n.pagedNavigation.value){let t=la(n.placeholder.value.add({months:n.numberOfMonths.value-1}));e[e.length-t+s-o.length].focus();return}e[s-o.length].focus()})}}return(e,n)=>(P(),U(R(Q),k({ref_key:`primitiveElement`,ref:i},t,{role:`button`,"aria-label":o.value,"data-radix-vue-calendar-cell-trigger":``,"aria-selected":l.value?!0:void 0,"aria-disabled":s.value||c.value?!0:void 0,"data-highlighted":m.value?``:void 0,"data-selection-start":u.value?!0:void 0,"data-selection-end":d.value?!0:void 0,"data-highlighted-start":f.value?!0:void 0,"data-highlighted-end":p.value?!0:void 0,"data-selected":l.value?!0:void 0,"data-outside-visible-view":y.value?``:void 0,"data-value":e.day.toString(),"data-disabled":s.value?``:void 0,"data-unavailable":c.value?``:void 0,"data-today":_.value?``:void 0,"data-outside-view":v.value?``:void 0,"data-focused":x.value?``:void 0,tabindex:x.value?0:v.value||s.value?void 0:-1,onClick:C,onFocusin:w,onMouseenter:w,onKeydown:h(E,[`up`,`down`,`left`,`right`,`enter`,`space`])}),{default:z(()=>[W(e.$slots,`default`,{dayValue:b.value},()=>[F(Oe(b.value),1)])]),_:3},16,[`aria-label`,`aria-selected`,`aria-disabled`,`data-highlighted`,`data-selection-start`,`data-selection-end`,`data-highlighted-start`,`data-highlighted-end`,`data-selected`,`data-outside-visible-view`,`data-value`,`data-disabled`,`data-unavailable`,`data-today`,`data-outside-view`,`data-focused`,`tabindex`]))}}),[t_,n_]=q(`ScrollAreaRoot`),r_=E({__name:`ScrollAreaRoot`,props:{type:{default:`hover`},dir:{},scrollHideDelay:{default:600},asChild:{type:Boolean},as:{}},setup(e,{expose:t}){let n=e,r=I(0),i=I(0),a=I(),o=I(),s=I(),c=I(),l=I(!1),u=I(!1),{type:d,dir:f,scrollHideDelay:p}=L(n),m=cs(f);function h(){var e;(e=a.value)==null||e.scrollTo({top:0})}function g(){var e;(e=a.value)==null||e.scrollTo({top:0,left:0})}t({viewport:a,scrollTop:h,scrollTopLeft:g});let{forwardRef:_,currentElement:v}=X();return n_({type:d,dir:m,scrollHideDelay:p,scrollArea:v,viewport:a,onViewportChange:e=>{a.value=e||void 0},content:o,onContentChange:e=>{o.value=e},scrollbarX:s,scrollbarXEnabled:l,scrollbarY:c,scrollbarYEnabled:u,onScrollbarXChange:e=>{s.value=e||void 0},onScrollbarYChange:e=>{c.value=e||void 0},onScrollbarXEnabledChange:e=>{l.value=e},onScrollbarYEnabledChange:e=>{u.value=e},onCornerWidthChange:e=>{r.value=e},onCornerHeightChange:e=>{i.value=e}}),(e,t)=>(P(),U(R(Q),{ref:R(_),"as-child":n.asChild,as:e.as,dir:R(m),style:ke({position:`relative`,"--radix-scroll-area-corner-width":`${r.value}px`,"--radix-scroll-area-corner-height":`${i.value}px`})},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`dir`,`style`]))}}),i_=E({inheritAttrs:!1,__name:`ScrollAreaViewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e,{expose:t}){let n=e,{nonce:r}=L(n),i=zu(r),a=t_(),o=I();S(()=>{a.onViewportChange(o.value),a.onContentChange(c.value)}),t({viewportElement:o});let{forwardRef:s,currentElement:c}=X();return(e,t)=>(P(),B(Se,null,[_e(`div`,k({ref_key:`viewportElement`,ref:o,"data-radix-scroll-area-viewport":``,style:{overflowX:R(a).scrollbarXEnabled.value?`scroll`:`hidden`,overflowY:R(a).scrollbarYEnabled.value?`scroll`:`hidden`}},e.$attrs,{tabindex:0}),[A(R(Q),{ref:R(s),style:ke({minWidth:R(a).scrollbarXEnabled.value?`fit-content`:void 0}),"as-child":n.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`style`,`as-child`,`as`])],16),A(R(Q),{as:`style`,nonce:R(i)},{default:z(()=>[F(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-scroll-area-viewport] { scrollbar-width:none; -ms-overflow-style:none; -webkit-overflow-scrolling:touch; } [data-radix-scroll-area-viewport]::-webkit-scrollbar { display:none; } `)]),_:1},8,[`nonce`])],64))}});function a_(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function o_(e){let t=s_(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function s_(e,t){let n=e/t;return Number.isNaN(n)?0:n}function c_(e,t=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},r=0;return function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)}(),()=>window.cancelAnimationFrame(r)}function l_(e,t,n=`ltr`){let r=o_(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=Ca(e,c[0],c[1]);return a_([0,o],[0,s])(l)}function u_(e){return e?Number.parseInt(e,10):0}function d_(e,t,n,r=`ltr`){let i=o_(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return a_([c,l],d)(e)}function f_(e,t){return e>0&&e{document.addEventListener(`wheel`,h,{passive:!1})}),me(()=>{document.removeEventListener(`wheel`,h)});function g(){var e,t,r,o,s;c.value&&(n.isHorizontal?a.handleSizeChange({content:(e=i.viewport.value)?.scrollWidth??0,viewport:(t=i.viewport.value)?.offsetWidth??0,scrollbar:{size:c.value.clientWidth??0,paddingStart:u_(getComputedStyle(c.value).paddingLeft),paddingEnd:u_(getComputedStyle(c.value).paddingRight)}}):a.handleSizeChange({content:(r=i.viewport.value)?.scrollHeight??0,viewport:(o=i.viewport.value)?.offsetHeight??0,scrollbar:{size:(s=c.value)?.clientHeight??0,paddingStart:u_(getComputedStyle(c.value).paddingLeft),paddingEnd:u_(getComputedStyle(c.value).paddingRight)}}))}return Lo(c,g),Lo(i.content,g),(e,t)=>(P(),U(R(Q),{ref:R(s),style:{position:`absolute`},"data-scrollbarimpl":``,as:R(o).as.value,"as-child":R(o).asChild.value,onPointerdown:f,onPointermove:p,onPointerup:m},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),m_=E({__name:`ScrollAreaScrollbarX`,setup(e){let t=t_(),n=g_(),{forwardRef:r,currentElement:i}=X();S(()=>{i.value&&t.onScrollbarXChange(i.value)});let a=G(()=>n.sizes.value);return(e,i)=>(P(),U(p_,{ref:R(r),"is-horizontal":!0,"data-orientation":`horizontal`,style:ke({bottom:0,left:R(t).dir.value===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:R(t).dir.value===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":a.value?`${R(o_)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>R(n).onDragScroll(e.x)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`style`]))}}),h_=E({__name:`ScrollAreaScrollbarY`,setup(e){let t=t_(),n=g_(),{forwardRef:r,currentElement:i}=X();S(()=>{i.value&&t.onScrollbarYChange(i.value)});let a=G(()=>n.sizes.value);return(e,i)=>(P(),U(p_,{ref:R(r),"is-horizontal":!1,"data-orientation":`vertical`,style:ke({top:0,right:R(t).dir.value===`ltr`?0:void 0,left:R(t).dir.value===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":a.value?`${R(o_)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>R(n).onDragScroll(e.y)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`style`]))}}),[g_,__]=q(`ScrollAreaScrollbarVisible`),v_=E({__name:`ScrollAreaScrollbarVisible`,setup(e){let t=t_(),n=S_(),{forwardRef:r}=X(),i=I({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),a=G(()=>{let e=s_(i.value.viewport,i.value.content);return e>0&&e<1}),o=I(),s=I(0);function c(e,n){if(p.value){let r=t.viewport.value.scrollLeft+e.deltaY;t.viewport.value.scrollLeft=r,f_(r,n)&&e.preventDefault()}else{let r=t.viewport.value.scrollTop+e.deltaY;t.viewport.value.scrollTop=r,f_(r,n)&&e.preventDefault()}}function l(e,t){p.value?s.value=t.x:s.value=t.y}function u(e){s.value=0}function d(e){i.value=e}function f(e,t){return d_(e,s.value,i.value,t)}let p=G(()=>n.isHorizontal.value);function m(e){p.value?t.viewport.value.scrollLeft=f(e,t.dir.value):t.viewport.value.scrollTop=f(e)}function h(){if(p.value){if(t.viewport.value&&o.value){let e=t.viewport.value.scrollLeft,n=l_(e,i.value,t.dir.value);o.value.style.transform=`translate3d(${n}px, 0, 0)`}}else if(t.viewport.value&&o.value){let e=t.viewport.value.scrollTop,n=l_(e,i.value);o.value.style.transform=`translate3d(0, ${n}px, 0)`}}function g(e){o.value=e}return __({sizes:i,hasThumb:a,handleWheelScroll:c,handleThumbDown:l,handleThumbUp:u,handleSizeChange:d,onThumbPositionChange:h,onThumbChange:g,onDragScroll:m}),(e,t)=>p.value?(P(),U(m_,k({key:0},e.$attrs,{ref:R(r)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):(P(),U(h_,k({key:1},e.$attrs,{ref:R(r)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),y_=E({__name:`ScrollAreaScrollbarAuto`,props:{forceMount:{type:Boolean}},setup(e){let t=t_(),n=S_(),{forwardRef:r}=X(),i=I(!1),a=yo(()=>{if(t.viewport.value){let e=t.viewport.value.offsetWidtha()),Lo(t.viewport,a),Lo(t.content,a),(e,t)=>(P(),U(R(Xs),{present:e.forceMount||i.value},{default:z(()=>[A(v_,k(e.$attrs,{ref:R(r),"data-state":i.value?`visible`:`hidden`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),b_=E({inheritAttrs:!1,__name:`ScrollAreaScrollbarHover`,props:{forceMount:{type:Boolean}},setup(e){let t=t_(),{forwardRef:n}=X(),r,i=I(!1);function a(){window.clearTimeout(r),i.value=!0}function o(){r=window.setTimeout(()=>{i.value=!1},t.scrollHideDelay.value)}return S(()=>{let e=t.scrollArea.value;e&&(e.addEventListener(`pointerenter`,a),e.addEventListener(`pointerleave`,o))}),me(()=>{let e=t.scrollArea.value;e&&(window.clearTimeout(r),e.removeEventListener(`pointerenter`,a),e.removeEventListener(`pointerleave`,o))}),(e,t)=>(P(),U(R(Xs),{present:e.forceMount||i.value},{default:z(()=>[A(y_,k(e.$attrs,{ref:R(n),"data-state":i.value?`visible`:`hidden`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),x_=E({__name:`ScrollAreaScrollbarScroll`,props:{forceMount:{type:Boolean}},setup(e){let t=t_(),n=S_(),{forwardRef:r}=X(),{state:i,dispatch:a}=Is(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});H(e=>{if(i.value===`idle`){let n=window.setTimeout(()=>a(`HIDE`),t.scrollHideDelay.value);e(()=>{window.clearTimeout(n)})}});let o=yo(()=>a(`SCROLL_END`),100);return H(e=>{let r=t.viewport.value,i=n.isHorizontal.value?`scrollLeft`:`scrollTop`;if(r){let t=r[i],n=()=>{let e=r[i];t!==e&&(a(`SCROLL`),o()),t=e};r.addEventListener(`scroll`,n),e(()=>{r.removeEventListener(`scroll`,n)})}}),(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(i)!==`hidden`},{default:z(()=>[A(v_,k(e.$attrs,{ref:R(r)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),[S_,C_]=q(`ScrollAreaScrollbar`),w_=E({inheritAttrs:!1,__name:`ScrollAreaScrollbar`,props:{orientation:{default:`vertical`},forceMount:{type:Boolean},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,{forwardRef:n}=X(),r=t_(),i=G(()=>t.orientation===`horizontal`);N(i,()=>{i.value?r.onScrollbarXEnabledChange(!0):r.onScrollbarYEnabledChange(!0)},{immediate:!0}),me(()=>{r.onScrollbarXEnabledChange(!1),r.onScrollbarYEnabledChange(!1)});let{orientation:a,forceMount:o,asChild:s,as:c}=L(t);return C_({orientation:a,forceMount:o,isHorizontal:i,as:c,asChild:s}),(e,t)=>R(r).type.value===`hover`?(P(),U(b_,k({key:0},e.$attrs,{ref:R(n),"force-mount":R(o)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`force-mount`])):R(r).type.value===`scroll`?(P(),U(x_,k({key:1},e.$attrs,{ref:R(n),"force-mount":R(o)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`force-mount`])):R(r).type.value===`auto`?(P(),U(y_,k({key:2},e.$attrs,{ref:R(n),"force-mount":R(o)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`force-mount`])):R(r).type.value===`always`?(P(),U(v_,k({key:3},e.$attrs,{ref:R(n),"data-state":`visible`}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}}),T_=E({__name:`ScrollAreaThumb`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=t_(),r=g_();function i(e){let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,i=e.clientY-t.top;r.handleThumbDown(e,{x:n,y:i})}function a(e){r.handleThumbUp(e)}let{forwardRef:o,currentElement:s}=X(),c=I(),l=G(()=>n.viewport.value);function u(){if(!c.value){let e=c_(l.value,r.onThumbPositionChange);c.value=e,r.onThumbPositionChange()}}let d=G(()=>r.sizes.value);return wo(d,()=>{r.onThumbChange(s.value),l.value&&(r.onThumbPositionChange(),l.value.addEventListener(`scroll`,u))}),me(()=>{var e;l.value.removeEventListener(`scroll`,u),(e=n.viewport.value)==null||e.removeEventListener(`scroll`,u)}),(e,n)=>(P(),U(R(Q),{ref:R(o),"data-state":R(r).hasThumb?`visible`:`hidden`,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`},"as-child":t.asChild,as:e.as,onPointerdown:i,onPointerup:a},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`data-state`,`as-child`,`as`]))}}),E_=E({__name:`ScrollAreaCornerImpl`,setup(e){let t=t_(),n=I(0),r=I(0),i=G(()=>!!n.value&&!!r.value);function a(){var e;let n=(e=t.scrollbarX.value)?.offsetHeight||0;t.onCornerHeightChange(n),r.value=n}function o(){var e;let r=(e=t.scrollbarY.value)?.offsetWidth||0;t.onCornerWidthChange(r),n.value=r}return Lo(t.scrollbarX.value,a),Lo(t.scrollbarY.value,o),N(()=>t.scrollbarX.value,a),N(()=>t.scrollbarY.value,o),(e,a)=>{var o;return i.value?(P(),U(R(Q),k({key:0,style:{width:`${n.value}px`,height:`${r.value}px`,position:`absolute`,right:R(t).dir.value===`ltr`?0:void 0,left:R(t).dir.value===`rtl`?0:void 0,bottom:0}},(o=e.$parent)?.$props),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`style`])):O(``,!0)}}}),D_=E({__name:`ScrollAreaCorner`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),r=t_(),i=G(()=>!!r.scrollbarX.value&&!!r.scrollbarY.value),a=G(()=>r.type.value!==`scroll`&&i.value);return(e,r)=>a.value?(P(),U(E_,k({key:0},t,{ref:R(n)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}}),O_=[`default-value`],k_=E({__name:`BubbleSelect`,props:{autocomplete:{},autofocus:{type:Boolean},disabled:{type:Boolean},form:{},multiple:{type:Boolean},name:{},required:{type:Boolean},size:{},value:{}},setup(e){let t=e,{value:n}=L(t),r=I();return(e,i)=>(P(),U(R(mu),{"as-child":``},{default:z(()=>[xe(_e(`select`,k({ref_key:`selectElement`,ref:r},t,{"onUpdate:modelValue":i[0]||=e=>v(n)?n.value=e:null,"default-value":R(n)}),[W(e.$slots,`default`)],16,O_),[[_,R(n)]])]),_:3}))}}),A_={key:0,value:``},[j_,M_]=q(`SelectRoot`),[N_,P_]=q(`SelectRoot`),F_=E({__name:`SelectRoot`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},defaultValue:{default:``},modelValue:{default:void 0},dir:{},name:{},autocomplete:{},disabled:{type:Boolean},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`],setup(e,{emit:t}){let n=e,r=t,i=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),a=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0}),o=I(),s=I(),c=I({x:0,y:0}),l=I(!1),{required:u,disabled:d,dir:f}=L(n),p=cs(f);M_({triggerElement:o,onTriggerChange:e=>{o.value=e},valueElement:s,onValueElementChange:e=>{s.value=e},valueElementHasChildren:l,onValueElementHasChildrenChange:e=>{l.value=e},contentId:``,modelValue:i,onValueChange:e=>{i.value=e},open:a,required:u,onOpenChange:e=>{a.value=e},dir:p,triggerPointerDownPosRef:c,disabled:d});let m=ps(o),h=I(new Set),g=G(()=>Array.from(h.value).map(e=>{var t;return(t=e.props)?.value}).join(`;`));return P_({onNativeOptionAdd:e=>{h.value.add(e)},onNativeOptionRemove:e=>{h.value.delete(e)}}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[W(e.$slots,`default`,{modelValue:R(i),open:R(a)}),R(m)?(P(),U(k_,k({key:g.value},e.$attrs,{"aria-hidden":`true`,tabindex:`-1`,required:R(u),name:e.name,autocomplete:e.autocomplete,disabled:R(d),value:R(i),onChange:t[0]||=e=>i.value=e.target.value}),{default:z(()=>[R(i)===void 0?(P(),B(`option`,A_)):O(``,!0),(P(!0),B(Se,null,ye(Array.from(h.value),e=>(P(),U(j(e),k({ref_for:!0},e.props,{key:e.key??``}),null,16))),128))]),_:1},16,[`required`,`name`,`autocomplete`,`disabled`,`value`])):O(``,!0)]),_:3}))}}),I_=[` `,`Enter`,`ArrowUp`,`ArrowDown`],L_=[` `,`Enter`],R_=10;function z_(e){return e===``||Ma(e)}const B_=E({__name:`SelectTrigger`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=j_(),r=G(()=>{var e;return(e=n.disabled)?.value||t.disabled}),{forwardRef:i,currentElement:a}=X();n.contentId||=Z(void 0,`radix-vue-select-content`),S(()=>{n.triggerElement=a});let{injectCollection:o}=os(),s=o(),{search:c,handleTypeaheadSearch:l,resetTypeahead:u}=Rs(s);function d(){r.value||(n.onOpenChange(!0),u())}function f(e){d(),n.triggerPointerDownPosRef.value={x:Math.round(e.pageX),y:Math.round(e.pageY)}}return(e,t)=>(P(),U(R(nu),{"as-child":``},{default:z(()=>{var a,o,s,u;return[A(R(Q),{ref:R(i),role:`combobox`,type:e.as===`button`?`button`:void 0,"aria-controls":R(n).contentId,"aria-expanded":R(n).open.value||!1,"aria-required":(a=R(n).required)?.value,"aria-autocomplete":`none`,disabled:r.value,dir:(o=R(n))?.dir.value,"data-state":(s=R(n))!=null&&s.open.value?`open`:`closed`,"data-disabled":r.value?``:void 0,"data-placeholder":R(z_)((u=R(n).modelValue)?.value)?``:void 0,"as-child":e.asChild,as:e.as,onClick:t[0]||=e=>{var t;(t=e?.currentTarget)==null||t.focus()},onPointerdown:t[1]||=e=>{if(e.pointerType===`touch`)return e.preventDefault();let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&(f(e),e.preventDefault())},onPointerup:t[2]||=m(e=>{e.pointerType===`touch`&&f(e)},[`prevent`]),onKeydown:t[3]||=e=>{let t=R(c)!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&t&&e.key===` `||(R(l)(e.key),R(I_).includes(e.key)&&(d(),e.preventDefault()))}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`type`,`aria-controls`,`aria-expanded`,`aria-required`,`disabled`,`dir`,`data-state`,`data-disabled`,`data-placeholder`,`as-child`,`as`])]}),_:3}))}}),V_=E({__name:`SelectPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[H_,U_]=q(`SelectItemAlignedPosition`),W_=E({inheritAttrs:!1,__name:`SelectItemAlignedPosition`,props:{asChild:{type:Boolean},as:{}},emits:[`placed`],setup(e,{emit:t}){let n=e,r=t,{injectCollection:i}=os(),a=j_(),o=q_(),s=i(),c=I(!1),l=I(!0),u=I(),{forwardRef:d,currentElement:f}=X(),{viewport:p,selectedItem:m,selectedItemText:h,focusSelectedItem:g}=o;function _(){if(a.triggerElement.value&&a.valueElement.value&&u.value&&f.value&&p!=null&&p.value&&m!=null&&m.value&&h!=null&&h.value){let e=a.triggerElement.value.getBoundingClientRect(),t=f.value.getBoundingClientRect(),n=a.valueElement.value.getBoundingClientRect(),i=h.value.getBoundingClientRect();if(a.dir.value!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-R_,d=Ca(a,R_,Math.max(R_,l-c));u.value.style.minWidth=`${s}px`,u.value.style.left=`${d}px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-R_,d=Ca(a,R_,Math.max(R_,l-c));u.value.style.minWidth=`${s}px`,u.value.style.right=`${d}px`}let o=s.value,l=window.innerHeight-R_*2,d=p.value.scrollHeight,g=window.getComputedStyle(f.value),_=Number.parseInt(g.borderTopWidth,10),v=Number.parseInt(g.paddingTop,10),y=Number.parseInt(g.borderBottomWidth,10),b=Number.parseInt(g.paddingBottom,10),x=_+v+d+b+y,S=Math.min(m.value.offsetHeight*5,x),C=window.getComputedStyle(p.value),w=Number.parseInt(C.paddingTop,10),T=Number.parseInt(C.paddingBottom,10),E=e.top+e.height/2-R_,D=l-E,O=m.value.offsetHeight/2,k=m.value.offsetTop+O,A=_+v+k,j=x-A;if(A<=E){let e=m.value===o[o.length-1];u.value.style.bottom=`0px`;let t=f.value.clientHeight-p.value.offsetTop-p.value.offsetHeight,n=Math.max(D,O+(e?T:0)+t+y),r=A+n;u.value.style.height=`${r}px`}else{let e=m.value===o[0];u.value.style.top=`0px`;let t=Math.max(E,_+p.value.offsetTop+(e?w:0)+O)+j;u.value.style.height=`${t}px`,p.value.scrollTop=A-E+p.value.offsetTop}u.value.style.margin=`${R_}px 0`,u.value.style.minHeight=`${S}px`,u.value.style.maxHeight=`${l}px`,r(`placed`),requestAnimationFrame(()=>c.value=!0)}}let v=I(``);S(async()=>{await T(),_(),f.value&&(v.value=window.getComputedStyle(f.value).zIndex)});function y(e){e&&l.value===!0&&(_(),g?.(),l.value=!1)}return U_({contentWrapper:u,shouldExpandOnScrollRef:c,onScrollButtonChange:y}),(e,t)=>(P(),B(`div`,{ref_key:`contentWrapperElement`,ref:u,style:ke({display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:v.value})},[A(R(Q),k({ref:R(d),style:{boxSizing:`border-box`,maxHeight:`100%`}},{...e.$attrs,...n}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)],4))}}),G_=E({__name:`SelectPopperPosition`,props:{side:{},sideOffset:{},align:{default:`start`},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{default:R_},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=ms(e);return(e,n)=>(P(),U(R(lu),k(R(t),{style:{boxSizing:`border-box`,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),K_={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[q_,J_]=q(`SelectContent`),Y_=E({__name:`SelectContentImpl`,props:{position:{default:`item-aligned`},bodyLock:{type:Boolean,default:!0},side:{},sideOffset:{},align:{default:`start`},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=t,i=j_();ds(),es(n.bodyLock);let{createCollection:a}=os(),o=I();Ms(o);let s=a(o),{search:c,handleTypeaheadSearch:l}=Rs(s),u=I(),d=I(),f=I(),p=I(!1),h=I(!1);function g(){d.value&&o.value&&Xc([d.value,o.value])}N(p,()=>{g()});let{onOpenChange:_,triggerPointerDownPosRef:v}=i;H(e=>{if(!o.value)return;let t={x:0,y:0},n=e=>{var n,r;t={x:Math.abs(Math.round(e.pageX)-((n=v.value)?.x??0)),y:Math.abs(Math.round(e.pageY)-((r=v.value)?.y??0))}},r=e=>{var r;e.pointerType!==`touch`&&(t.x<=10&&t.y<=10?e.preventDefault():(r=o.value)!=null&&r.contains(e.target)||_(!1),document.removeEventListener(`pointermove`,n),v.value=null)};v.value!==null&&(document.addEventListener(`pointermove`,n),document.addEventListener(`pointerup`,r,{capture:!0,once:!0})),e(()=>{document.removeEventListener(`pointermove`,n),document.removeEventListener(`pointerup`,r,{capture:!0})})});function y(e){let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&l(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=s.value;if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>Xc(t)),e.preventDefault()}}let b=G(()=>n.position===`popper`?n:{}),x=ms(b.value);return J_({content:o,viewport:u,onViewportChange:e=>{u.value=e},itemRefCallback:(e,t,n)=>{var r,a;let o=!h.value&&!n;((r=i.modelValue)?.value!==void 0&&(a=i.modelValue)?.value===t||o)&&(d.value=e,o&&(h.value=!0))},selectedItem:d,selectedItemText:f,onItemLeave:()=>{var e;(e=o.value)==null||e.focus()},itemTextRefCallback:(e,t,n)=>{var r,a;let o=!h.value&&!n;((r=i.modelValue)?.value!==void 0&&(a=i.modelValue)?.value===t||o)&&(f.value=e)},focusSelectedItem:g,position:n.position,isPositioned:p,searchRef:c}),(e,t)=>(P(),U(R(zc),{"as-child":``,onMountAutoFocus:t[6]||=m(()=>{},[`prevent`]),onUnmountAutoFocus:t[7]||=e=>{var t;r(`closeAutoFocus`,e),!e.defaultPrevented&&((t=R(i).triggerElement.value)==null||t.focus({preventScroll:!0}),e.preventDefault())}},{default:z(()=>[A(R(Cc),{"as-child":``,"disable-outside-pointer-events":``,onFocusOutside:t[2]||=m(()=>{},[`prevent`]),onDismiss:t[3]||=e=>R(i).onOpenChange(!1),onEscapeKeyDown:t[4]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[5]||=e=>r(`pointerDownOutside`,e)},{default:z(()=>[(P(),U(j(e.position===`popper`?G_:W_),k({...e.$attrs,...R(x)},{id:R(i).contentId,ref:e=>{o.value=R(To)(e)},role:`listbox`,"data-state":R(i).open.value?`open`:`closed`,dir:R(i).dir.value,style:{display:`flex`,flexDirection:`column`,outline:`none`},onContextmenu:t[0]||=m(()=>{},[`prevent`]),onPlaced:t[1]||=e=>p.value=!0,onKeydown:y}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`dir`,`onKeydown`]))]),_:3})]),_:3}))}}),X_=E({inheritAttrs:!1,__name:`SelectProvider`,props:{context:{}},setup(e){return M_(e.context),(e,t)=>W(e.$slots,`default`)}}),Z_={key:1},Q_=E({inheritAttrs:!1,__name:`SelectContent`,props:{forceMount:{type:Boolean},position:{},bodyLock:{type:Boolean},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},updatePositionStrategy:{},prioritizePosition:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=hs(n,t),i=j_(),a=I();S(()=>{a.value=new DocumentFragment});let o=I(),s=G(()=>n.forceMount||i.open.value);return(e,t)=>{var n;return s.value?(P(),U(R(Xs),{key:0,ref_key:`presenceRef`,ref:o,present:!0},{default:z(()=>[A(Y_,K(V({...R(r),...e.$attrs})),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3},512)):!((n=o.value)!=null&&n.present)&&a.value?(P(),B(`div`,Z_,[(P(),U(ve,{to:a.value},[A(X_,{context:R(i)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`context`])],8,[`to`]))])):O(``,!0)}}}),$_=E({__name:`SelectArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e,n=j_(),r=q_(K_);return(e,i)=>R(n).open.value&&R(r).position===`popper`?(P(),U(R(pu),K(k({key:0},t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}}),ev=E({__name:`SelectSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(R(Q),k({"aria-hidden":`true`},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),[tv,nv]=q(`SelectItem`),rv=E({__name:`SelectItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{disabled:n}=L(t),r=j_(),i=q_(K_),{forwardRef:a,currentElement:o}=X(),s=G(()=>{var e;return(e=r.modelValue)?.value===t.value}),c=I(!1),l=I(t.textValue??``),u=Z(void 0,`radix-vue-select-item-text`);async function d(e){await T(),!(e!=null&&e.defaultPrevented)&&(n.value||(r.onValueChange(t.value),r.onOpenChange(!1)))}async function f(e){var t;await T(),!e.defaultPrevented&&(n.value?(t=i.onItemLeave)==null||t.call(i):e.currentTarget.focus({preventScroll:!0}))}async function p(e){var t;await T(),!e.defaultPrevented&&e.currentTarget===Y()&&((t=i.onItemLeave)==null||t.call(i))}async function h(e){var t;await T(),!(e.defaultPrevented||(t=i.searchRef)?.value!==``&&e.key===` `)&&(L_.includes(e.key)&&d(),e.key===` `&&e.preventDefault())}if(t.value===``)throw Error(`A must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return S(()=>{o.value&&i.itemRefCallback(o.value,t.value,t.disabled)}),nv({value:t.value,disabled:n,textId:u,isSelected:s,onItemTextChange:e=>{l.value=((l.value||e?.textContent)??``).trim()}}),(e,t)=>(P(),U(R(Q),{ref:R(a),role:`option`,"data-radix-vue-collection-item":``,"aria-labelledby":R(u),"data-highlighted":c.value?``:void 0,"aria-selected":s.value,"data-state":s.value?`checked`:`unchecked`,"aria-disabled":R(n)||void 0,"data-disabled":R(n)?``:void 0,tabindex:R(n)?void 0:-1,as:e.as,"as-child":e.asChild,onFocus:t[0]||=e=>c.value=!0,onBlur:t[1]||=e=>c.value=!1,onPointerup:d,onPointerdown:t[2]||=e=>{e.currentTarget.focus({preventScroll:!0})},onTouchend:t[3]||=m(()=>{},[`prevent`,`stop`]),onPointermove:f,onPointerleave:p,onKeydown:h},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`aria-labelledby`,`data-highlighted`,`aria-selected`,`data-state`,`aria-disabled`,`data-disabled`,`tabindex`,`as`,`as-child`]))}}),iv=E({__name:`SelectItemIndicator`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=tv();return(e,r)=>R(n).isSelected.value?(P(),U(R(Q),k({key:0,"aria-hidden":`true`},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)):O(``,!0)}}),[av,ov]=q(`SelectGroup`),sv=E({__name:`SelectGroup`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Z(void 0,`radix-vue-select-group`);return ov({id:n}),(e,r)=>(P(),U(R(Q),k({role:`group`},t,{"aria-labelledby":R(n)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-labelledby`]))}}),cv=E({__name:`SelectLabel`,props:{for:{},asChild:{type:Boolean},as:{default:`div`}},setup(e){let t=e,n=av({id:``});return(e,r)=>(P(),U(R(Q),k(t,{id:R(n).id}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),lv=E({inheritAttrs:!1,__name:`SelectItemText`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=j_(),r=q_(K_),i=N_(),a=tv(),{forwardRef:o,currentElement:s}=X(),c=G(()=>{var e;return M(`option`,{key:a.value,value:a.value,disabled:a.disabled.value,textContent:(e=s.value)?.textContent})});return S(()=>{s.value&&(a.onItemTextChange(s.value),r.itemTextRefCallback(s.value,a.value,a.disabled.value),i.onNativeOptionAdd(c.value))}),fe(()=>{i.onNativeOptionRemove(c.value)}),(e,r)=>(P(),B(Se,null,[A(R(Q),k({id:R(a).textId,ref:R(o)},{...t,...e.$attrs},{"data-item-text":``}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]),R(a).isSelected.value&&R(n).valueElement.value&&!R(n).valueElementHasChildren.value?(P(),U(ve,{key:0,to:R(n).valueElement.value},[W(e.$slots,`default`)],8,[`to`])):O(``,!0)],64))}}),uv=E({__name:`SelectViewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{nonce:n}=L(t),r=zu(n),i=q_(K_),a=i.position===`item-aligned`?H_():void 0,{forwardRef:o,currentElement:s}=X();S(()=>{i?.onViewportChange(s.value)});let c=I(0);function l(e){let t=e.currentTarget,{shouldExpandOnScrollRef:n,contentWrapper:r}=a??{};if(n!=null&&n.value&&r!=null&&r.value){let e=Math.abs(c.value-t.scrollTop);if(e>0){let n=window.innerHeight-R_*2,i=Number.parseFloat(r.value.style.minHeight),a=Number.parseFloat(r.value.style.height),o=Math.max(i,a);if(o0?s:0,r.value.style.justifyContent=`flex-end`)}}}c.value=t.scrollTop}return(e,n)=>(P(),B(Se,null,[A(R(Q),k({ref:R(o),"data-radix-select-viewport":``,role:`presentation`},{...e.$attrs,...t},{style:{position:`relative`,flex:1,overflow:`hidden auto`},onScroll:l}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16),A(R(Q),{as:`style`,nonce:R(r)},{default:z(()=>[F(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-radix-select-viewport]::-webkit-scrollbar { display: none; } `)]),_:1},8,[`nonce`])],64))}}),dv=E({__name:`SelectScrollButtonImpl`,emits:[`autoScroll`],setup(e,{emit:t}){let n=t,{injectCollection:r}=os(),i=r(),a=q_(K_),o=I(null);function s(){o.value!==null&&(window.clearInterval(o.value),o.value=null)}H(()=>{let e=i.value.find(e=>e===Y());e?.scrollIntoView({block:`nearest`})});function c(){o.value===null&&(o.value=window.setInterval(()=>{n(`autoScroll`)},50))}function l(){var e;(e=a.onItemLeave)==null||e.call(a),o.value===null&&(o.value=window.setInterval(()=>{n(`autoScroll`)},50))}return fe(()=>s()),(e,t)=>{var n;return P(),U(R(Q),k({"aria-hidden":`true`,style:{flexShrink:0}},(n=e.$parent)?.$props,{onPointerdown:c,onPointermove:l,onPointerleave:t[0]||=()=>{s()}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)}}}),fv=E({__name:`SelectScrollUpButton`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=q_(K_),n=t.position===`item-aligned`?H_():void 0,{forwardRef:r,currentElement:i}=X(),a=I(!1);return H(e=>{var n,r;if((n=t.viewport)!=null&&n.value&&(r=t.isPositioned)!=null&&r.value){let n=function(){a.value=r.scrollTop>0},r=t.viewport.value;n(),r.addEventListener(`scroll`,n),e(()=>r.removeEventListener(`scroll`,n))}}),N(i,()=>{i.value&&n?.onScrollButtonChange(i.value)}),(e,n)=>a.value?(P(),U(dv,{key:0,ref:R(r),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=R(t);e!=null&&e.value&&n!=null&&n.value&&(e.value.scrollTop=e.value.scrollTop-n.value.offsetHeight)}},{default:z(()=>[W(e.$slots,`default`)]),_:3},512)):O(``,!0)}}),pv=E({__name:`SelectScrollDownButton`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=q_(K_),n=t.position===`item-aligned`?H_():void 0,{forwardRef:r,currentElement:i}=X(),a=I(!1);return H(e=>{var n,r;if((n=t.viewport)!=null&&n.value&&(r=t.isPositioned)!=null&&r.value){let n=function(){let e=r.scrollHeight-r.clientHeight;a.value=Math.ceil(r.scrollTop)r.removeEventListener(`scroll`,n))}}),N(i,()=>{i.value&&n?.onScrollButtonChange(i.value)}),(e,n)=>a.value?(P(),U(dv,{key:0,ref:R(r),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=R(t);e!=null&&e.value&&n!=null&&n.value&&(e.value.scrollTop=e.value.scrollTop+n.value.offsetHeight)}},{default:z(()=>[W(e.$slots,`default`)]),_:3},512)):O(``,!0)}}),mv=E({__name:`SelectValue`,props:{placeholder:{default:``},asChild:{type:Boolean},as:{default:`span`}},setup(e){let{forwardRef:t,currentElement:n}=X(),r=j_(),i=Ee();return C(()=>{var e;let t=!!Bo((e=i?.default)?.call(i)).length;r.onValueElementHasChildrenChange(t)}),S(()=>{r.valueElement=n}),(e,n)=>(P(),U(R(Q),{ref:R(t),as:e.as,"as-child":e.asChild,style:{pointerEvents:`none`}},{default:z(()=>{var t;return[R(z_)((t=R(r).modelValue)?.value)?(P(),B(Se,{key:0},[F(Oe(e.placeholder),1)],64)):W(e.$slots,`default`,{key:1})]}),_:3},8,[`as`,`as-child`]))}}),hv=E({__name:`SelectIcon`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){return(e,t)=>(P(),U(R(Q),{"aria-hidden":`true`,as:e.as,"as-child":e.asChild},{default:z(()=>[W(e.$slots,`default`,{},()=>[F(`▼`)])]),_:3},8,[`as`,`as-child`]))}}),gv=E({__name:`BaseSeparator`,props:{orientation:{default:`horizontal`},decorative:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=[`horizontal`,`vertical`];function r(e){return n.includes(e)}let i=G(()=>r(t.orientation)?t.orientation:`horizontal`),a=G(()=>i.value===`vertical`?t.orientation:void 0),o=G(()=>t.decorative?{role:`none`}:{"aria-orientation":a.value,role:`separator`});return(e,t)=>(P(),U(R(Q),k({as:e.as,"as-child":e.asChild,"data-orientation":i.value},o.value),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-orientation`]))}}),_v=E({__name:`Separator`,props:{orientation:{default:`horizontal`},decorative:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(P(),U(gv,K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}});function vv(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}function yv(e,t,n){let r=100/(n-t)*(e-t);return Ca(r,0,100)}function bv(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?[`Minimum`,`Maximum`][e]:void 0}function xv(e,t){if(e.length===1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}function Sv(e,t,n){let r=e/2,i=Tv([0,50],[0,r]);return(r-i(t)*n)*n}function Cv(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function wv(e,t){if(t>0){let n=Cv(e);return Math.min(...n)>=t}return!0}function Tv(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function Ev(e){return(String(e).split(`.`)[1]||``).length}function Dv(e,t){let n=10**t;return Math.round(e*n)/n}const Ov=[`PageUp`,`PageDown`],kv=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],Av={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageDown`,`ArrowUp`,`ArrowLeft`]},[jv,Mv]=q([`SliderVertical`,`SliderHorizontal`]),Nv=E({__name:`SliderImpl`,props:{asChild:{type:Boolean},as:{default:`span`}},emits:[`slideStart`,`slideMove`,`slideEnd`,`homeKeyDown`,`endKeyDown`,`stepKeyDown`],setup(e,{emit:t}){let n=e,r=t,i=Lv();return(e,t)=>(P(),U(R(Q),k({"data-slider-impl":``},n,{onKeydown:t[0]||=e=>{e.key===`Home`?(r(`homeKeyDown`,e),e.preventDefault()):e.key===`End`?(r(`endKeyDown`,e),e.preventDefault()):R(Ov).concat(R(kv)).includes(e.key)&&(r(`stepKeyDown`,e),e.preventDefault())},onPointerdown:t[1]||=e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),R(i).thumbElements.value.includes(t)?t.focus():r(`slideStart`,e)},onPointermove:t[2]||=e=>{e.target.hasPointerCapture(e.pointerId)&&r(`slideMove`,e)},onPointerup:t[3]||=e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),r(`slideEnd`,e))}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Pv=E({__name:`SliderHorizontal`,props:{dir:{},min:{},max:{},inverted:{type:Boolean}},emits:[`slideEnd`,`slideStart`,`slideMove`,`homeKeyDown`,`endKeyDown`,`stepKeyDown`],setup(e,{emit:t}){let n=e,r=t,{max:i,min:a,dir:o,inverted:s}=L(n),{forwardRef:c,currentElement:l}=X(),u=I(),d=G(()=>o?.value===`ltr`&&!s.value||o?.value!==`ltr`&&s.value);function f(e){let t=u.value||l.value.getBoundingClientRect(),n=[0,t.width],r=d.value?[a.value,i.value]:[i.value,a.value],o=Tv(n,r);return u.value=t,o(e-t.left)}return Mv({startEdge:d.value?`left`:`right`,endEdge:d.value?`right`:`left`,direction:d.value?1:-1,size:`width`}),(e,t)=>(P(),U(Nv,{ref:R(c),dir:R(o),"data-orientation":`horizontal`,style:{"--radix-slider-thumb-transform":`translateX(-50%)`},onSlideStart:t[0]||=e=>{let t=f(e.clientX);r(`slideStart`,t)},onSlideMove:t[1]||=e=>{let t=f(e.clientX);r(`slideMove`,t)},onSlideEnd:t[2]||=()=>{u.value=void 0,r(`slideEnd`)},onStepKeyDown:t[3]||=e=>{let t=d.value?`from-left`:`from-right`,n=R(Av)[t].includes(e.key);r(`stepKeyDown`,e,n?-1:1)},onEndKeyDown:t[4]||=e=>r(`endKeyDown`,e),onHomeKeyDown:t[5]||=e=>r(`homeKeyDown`,e)},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`dir`]))}}),Fv=E({__name:`SliderVertical`,props:{min:{},max:{},inverted:{type:Boolean}},emits:[`slideEnd`,`slideStart`,`slideMove`,`homeKeyDown`,`endKeyDown`,`stepKeyDown`],setup(e,{emit:t}){let n=e,r=t,{max:i,min:a,inverted:o}=L(n),{forwardRef:s,currentElement:c}=X(),l=I(),u=G(()=>!o.value);function d(e){let t=l.value||c.value.getBoundingClientRect(),n=[0,t.height],r=u.value?[i.value,a.value]:[a.value,i.value],o=Tv(n,r);return l.value=t,o(e-t.top)}return Mv({startEdge:u.value?`bottom`:`top`,endEdge:u.value?`top`:`bottom`,size:`height`,direction:u.value?1:-1}),(e,t)=>(P(),U(Nv,{ref:R(s),"data-orientation":`vertical`,style:{"--radix-slider-thumb-transform":`translateY(50%)`},onSlideStart:t[0]||=e=>{let t=d(e.clientY);r(`slideStart`,t)},onSlideMove:t[1]||=e=>{let t=d(e.clientY);r(`slideMove`,t)},onSlideEnd:t[2]||=()=>{l.value=void 0,r(`slideEnd`)},onStepKeyDown:t[3]||=e=>{let t=u.value?`from-bottom`:`from-top`,n=R(Av)[t].includes(e.key);r(`stepKeyDown`,e,n?-1:1)},onEndKeyDown:t[4]||=e=>r(`endKeyDown`,e),onHomeKeyDown:t[5]||=e=>r(`homeKeyDown`,e)},{default:z(()=>[W(e.$slots,`default`)]),_:3},512))}}),Iv=[`value`,`name`,`disabled`,`step`],[Lv,Rv]=q(`SliderRoot`),zv=E({inheritAttrs:!1,__name:`SliderRoot`,props:{name:{},defaultValue:{default:()=>[0]},modelValue:{},disabled:{type:Boolean,default:!1},orientation:{default:`horizontal`},dir:{},inverted:{type:Boolean,default:!1},min:{default:0},max:{default:100},step:{default:1},minStepsBetweenThumbs:{default:0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`valueCommit`],setup(e,{emit:t}){let n=e,r=t,{min:i,max:a,step:o,minStepsBetweenThumbs:s,orientation:c,disabled:l,dir:u}=L(n),d=cs(u),{forwardRef:f,currentElement:p}=X(),m=ps(p);yu();let h=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),g=I(0),_=I(h.value);function v(e){let t=xv(h.value,e);x(e,t)}function y(e){x(e,g.value)}function b(){let e=_.value[g.value];h.value[g.value]!==e&&r(`valueCommit`,oe(h.value))}function x(e,t,{commit:n}={commit:!1}){var c;let l=Ev(o.value),u=Dv(Math.round((e-i.value)/o.value)*o.value+i.value,l),d=Ca(u,i.value,a.value),f=vv(h.value,d,t);if(wv(f,s.value*o.value)){g.value=f.indexOf(d);let e=String(f)!==String(h.value);e&&n&&r(`valueCommit`,f),e&&((c=S.value[g.value])==null||c.focus(),h.value=f)}}let S=I([]);return Rv({modelValue:h,valueIndexToChangeRef:g,thumbElements:S,orientation:c,min:i,max:a,disabled:l}),(e,t)=>(P(),B(Se,null,[A(R(bu),null,{default:z(()=>[(P(),U(j(R(c)===`horizontal`?Pv:Fv),k(e.$attrs,{ref:R(f),"as-child":e.asChild,as:e.as,min:R(i),max:R(a),dir:R(d),inverted:e.inverted,"aria-disabled":R(l),"data-disabled":R(l)?``:void 0,onPointerdown:t[0]||=()=>{R(l)||(_.value=R(h))},onSlideStart:t[1]||=e=>!R(l)&&v(e),onSlideMove:t[2]||=e=>!R(l)&&y(e),onSlideEnd:t[3]||=e=>!R(l)&&b(),onHomeKeyDown:t[4]||=e=>!R(l)&&x(R(i),0,{commit:!0}),onEndKeyDown:t[5]||=e=>!R(l)&&x(R(a),R(h).length-1,{commit:!0}),onStepKeyDown:t[6]||=(e,t)=>{if(!R(l)){let n=R(Ov).includes(e.key)||e.shiftKey&&R(kv).includes(e.key)?10:1,r=g.value,i=R(h)[r],a=R(o)*n*t;x(i+a,r,{commit:!0})}}}),{default:z(()=>[W(e.$slots,`default`,{modelValue:R(h)})]),_:3},16,[`as-child`,`as`,`min`,`max`,`dir`,`inverted`,`aria-disabled`,`data-disabled`]))]),_:3}),R(m)?(P(!0),B(Se,{key:0},ye(R(h),(t,n)=>(P(),B(`input`,{key:n,value:t,type:`number`,style:{display:`none`},name:e.name?e.name+(R(h).length>1?`[]`:``):void 0,disabled:R(l),step:R(o)},null,8,Iv))),128)):O(``,!0)],64))}}),Bv=E({inheritAttrs:!1,__name:`SliderThumbImpl`,props:{index:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Lv(),r=jv(),{forwardRef:i,currentElement:a}=X(),o=G(()=>{var e,r;return(r=(e=n.modelValue)?.value)?.[t.index]}),s=G(()=>o.value===void 0?0:yv(o.value,n.min.value??0,n.max.value??100)),c=G(()=>{var e,r;return bv(t.index,(r=(e=n.modelValue)?.value)?.length??0)}),l=Fs(a),u=G(()=>l[r.size].value),d=G(()=>u.value?Sv(u.value,s.value,r.direction):0),f=Ao();return S(()=>{n.thumbElements.value.push(a.value)}),me(()=>{let e=n.thumbElements.value.findIndex(e=>e===a.value)??-1;n.thumbElements.value.splice(e,1)}),(e,t)=>(P(),U(R(xu),null,{default:z(()=>[A(R(Q),k(e.$attrs,{ref:R(i),role:`slider`,"data-radix-vue-collection-item":``,tabindex:R(n).disabled.value?void 0:0,"aria-label":e.$attrs[`aria-label`]||c.value,"data-disabled":R(n).disabled.value?``:void 0,"data-orientation":R(n).orientation.value,"aria-valuenow":o.value,"aria-valuemin":R(n).min.value,"aria-valuemax":R(n).max.value,"aria-orientation":R(n).orientation.value,"as-child":e.asChild,as:e.as,style:{transform:`var(--radix-slider-thumb-transform)`,position:`absolute`,[R(r).startEdge]:`calc(${s.value}% + ${d.value}px)`,display:!R(f)&&o.value===void 0?`none`:void 0},onFocus:t[0]||=()=>{R(n).valueIndexToChangeRef.value=e.index}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`tabindex`,`aria-label`,`data-disabled`,`data-orientation`,`aria-valuenow`,`aria-valuemin`,`aria-valuemax`,`aria-orientation`,`as-child`,`as`,`style`])]),_:3}))}}),Vv=E({__name:`SliderThumb`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,{getItems:n}=Su(),{forwardRef:r,currentElement:i}=X(),a=G(()=>i.value?n().findIndex(e=>e.ref===i.value):-1);return(e,n)=>(P(),U(Bv,k({ref:R(r)},t,{index:a.value}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`index`]))}}),Hv=E({__name:`SliderTrack`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=Lv();return X(),(e,n)=>(P(),U(R(Q),{"as-child":e.asChild,as:e.as,"data-disabled":R(t).disabled.value?``:void 0,"data-orientation":R(t).orientation.value},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`data-disabled`,`data-orientation`]))}}),Uv=E({__name:`SliderRange`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=Lv(),n=jv();X();let r=G(()=>{var e,n;return(n=(e=t.modelValue)?.value)?.map(e=>yv(e,t.min.value,t.max.value))}),i=G(()=>t.modelValue.value.length>1?Math.min(...r.value):0),a=G(()=>100-Math.max(...r.value));return(e,r)=>(P(),U(R(Q),{"data-disabled":R(t).disabled.value?``:void 0,"data-orientation":R(t).orientation.value,"as-child":e.asChild,as:e.as,style:ke({[R(n).startEdge]:`${i.value}%`,[R(n).endEdge]:`${a.value}%`})},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`data-disabled`,`data-orientation`,`as-child`,`as`,`style`]))}});let Wv=null,Gv=null;function Kv(e,t){if(t){let e=(t&uy)!==0,n=(t&dy)!==0,r=(t&fy)!==0,i=(t&py)!==0;if(e)return r?`se-resize`:i?`ne-resize`:`e-resize`;if(n)return r?`sw-resize`:i?`nw-resize`:`w-resize`;if(r)return`s-resize`;if(i)return`n-resize`}switch(e){case`horizontal`:return`ew-resize`;case`intersection`:return`move`;case`vertical`:return`ns-resize`}}function qv(){Gv!==null&&(document.head.removeChild(Gv),Wv=null,Gv=null)}function Jv(e,t){let n=Kv(e,t);Wv!==n&&(Wv=n,Gv===null&&(Gv=document.createElement(`style`),document.head.appendChild(Gv)),Gv.innerHTML=`*{cursor: ${n}!important;}`)}function Yv({defaultSize:e,dragState:t,layout:n,panelData:r,panelIndex:i,precision:a=3}){let o=n[i],s;return s=o==null?e===void 0?`1`:e.toPrecision(a):r.length===1?`1`:o.toPrecision(a),{flexBasis:0,flexGrow:s,flexShrink:1,overflow:`hidden`,pointerEvents:t===null?void 0:`none`}}function Xv(e){return e.type===`keydown`}function Zv(e){return e.type.startsWith(`mouse`)}function Qv(e){return e.type.startsWith(`touch`)}function $v(e){if(Zv(e))return{x:e.clientX,y:e.clientY};if(Qv(e)){let t=e.touches[0];if(t&&t.clientX&&t.clientY)return{x:t.clientX,y:t.clientY}}return{x:1/0,y:1/0}}function ey(e,t){let n=e===`horizontal`,{x:r,y:i}=$v(t);return n?r:i}function ty(e,t,n){return e.xt.x&&e.yt.y}function $(e,t=`Assertion failed!`){if(!e)throw console.error(t),Error(t)}function ny(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:cy(e),b:cy(t)},r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;$(r);let i={a:sy(oy(n.a)),b:sy(oy(n.b))};if(i.a===i.b){let e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)},i=e.length;for(;i--;){let n=e[i];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(i.a-i.b)}const ry=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function iy(e){let t=getComputedStyle(ly(e)).display;return t===`flex`||t===`inline-flex`}function ay(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||iy(e))||+t.opacity<1||`transform`in t&&t.transform!==`none`||`webkitTransform`in t&&t.webkitTransform!==`none`||`mixBlendMode`in t&&t.mixBlendMode!==`normal`||`filter`in t&&t.filter!==`none`||`webkitFilter`in t&&t.webkitFilter!==`none`||`isolation`in t&&t.isolation===`isolate`||ry.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function oy(e){let t=e.length;for(;t--;){let n=e[t];if($(n),ay(n))return n}return null}function sy(e){return e&&Number(getComputedStyle(e).zIndex)||0}function cy(e){let t=[];for(;e;)t.push(e),e=ly(e);return t}function ly(e){var t;return e.parentNode instanceof DocumentFragment&&(t=e.parentNode)?.host||e.parentNode}const uy=1,dy=2,fy=4,py=8;function my(){if(typeof matchMedia==`function`)return matchMedia(`(pointer:coarse)`).matches?`coarse`:`fine`}const hy=my()===`coarse`,gy=[];let _y=!1;const vy=new Map,yy=new Map,by=new Set;function xy(e,t,n,r,i){let{ownerDocument:a}=t,o={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:i},s=vy.get(a)??0;return vy.set(a,s+1),by.add(o),Oy(),function(){yy.delete(e),by.delete(o);let t=vy.get(a)??1;vy.set(a,t-1),Oy(),qv(),t===1&&vy.delete(a)}}function Sy(e){let{target:t}=e,{x:n,y:r}=$v(e);_y=!0,Ty({target:t,x:n,y:r}),Oy(),gy.length>0&&(ky(`down`,e),e.preventDefault())}function Cy(e){let{x:t,y:n}=$v(e);if(!_y){let{target:r}=e;Ty({target:r,x:t,y:n})}ky(`move`,e),Dy(),gy.length>0&&e.preventDefault()}function wy(e){let{target:t}=e,{x:n,y:r}=$v(e);yy.clear(),_y=!1,gy.length>0&&e.preventDefault(),ky(`up`,e),Ty({target:t,x:n,y:r}),Dy(),Oy()}function Ty({target:e,x:t,y:n}){gy.splice(0);let r=null;e instanceof HTMLElement&&(r=e),by.forEach(e=>{let{element:i,hitAreaMargins:a}=e,o=i.getBoundingClientRect(),{bottom:s,left:c,right:l,top:u}=o,d=hy?a.coarse:a.fine;if(t>=c-d&&t<=l+d&&n>=u-d&&n<=s+d){if(r!==null&&i!==r&&!i.contains(r)&&!r.contains(i)&&ny(r,i)>0){let e=r,t=!1;for(;e&&!e.contains(i);){if(ty(e.getBoundingClientRect(),o)){t=!0;break}e=e.parentElement}if(t)return}gy.push(e)}})}function Ey(e,t){yy.set(e,t)}function Dy(){let e=!1,t=!1;gy.forEach(n=>{let{direction:r}=n;r.value===`horizontal`?e=!0:t=!0});let n=0;yy.forEach(e=>{n|=e}),e&&t?Jv(`intersection`,n):e?Jv(`horizontal`,n):t?Jv(`vertical`,n):qv()}function Oy(){vy.forEach((e,t)=>{let{body:n}=t;n.removeEventListener(`contextmenu`,wy),n.removeEventListener(`mousedown`,Sy),n.removeEventListener(`mouseleave`,Cy),n.removeEventListener(`mousemove`,Cy),n.removeEventListener(`touchmove`,Cy),n.removeEventListener(`touchstart`,Sy)}),window.removeEventListener(`mouseup`,wy),window.removeEventListener(`touchcancel`,wy),window.removeEventListener(`touchend`,wy),by.size>0&&(_y?(gy.length>0&&vy.forEach((e,t)=>{let{body:n}=t;e>0&&(n.addEventListener(`contextmenu`,wy),n.addEventListener(`mouseleave`,Cy),n.addEventListener(`mousemove`,Cy),n.addEventListener(`touchmove`,Cy,{passive:!1}))}),window.addEventListener(`mouseup`,wy),window.addEventListener(`touchcancel`,wy),window.addEventListener(`touchend`,wy)):vy.forEach((e,t)=>{let{body:n}=t;e>0&&(n.addEventListener(`mousedown`,Sy),n.addEventListener(`mousemove`,Cy),n.addEventListener(`touchmove`,Cy,{passive:!1}),n.addEventListener(`touchstart`,Sy))}))}function ky(e,t){by.forEach(n=>{let{setResizeHandlerState:r}=n,i=gy.includes(n);r(e,i,t)})}const Ay=10;function jy(e,t,n=Ay){e=Number.parseFloat(e.toFixed(n)),t=Number.parseFloat(t.toFixed(n));let r=e-t;return r===0?0:r>0?1:-1}function My(e,t,n){return jy(e,t,n)===0}function Ny({panelConstraints:e,panelIndex:t,size:n}){let r=e[t];$(r!=null);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:s=0}=r;if(jy(n,s)<0)if(a){let e=(i+s)/2;n=jy(n,e)<0?i:s}else n=s;return n=Math.min(o,n),n=Number.parseFloat(n.toFixed(Ay)),n}function Py(e,t){if(e.length!==t.length)return!1;for(let n=0;n0&&(e=e<0?0-t:t)}}}{let r=e<0?o:s,i=n[r];$(i);let{collapsible:a}=i;if(a){let i=t[r];$(i!=null);let a=n[r];$(a);let{collapsedSize:o=0,minSize:s=0}=a;if(My(i,s)){let t=i-o;jy(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{let r=e<0?1:-1,i=e<0?s:o,a=0;for(;;){let e=t[i];$(e!=null);let o=Ny({panelConstraints:n,panelIndex:i,size:100})-e;if(a+=o,i+=r,i<0||i>=n.length)break}let c=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-c:c}{let r=e<0?o:s;for(;r>=0&&r=0))break;e<0?r--:r++}}if(My(c,0))return t;{let r=e<0?s:o,i=t[r];$(i!=null);let l=i+c,u=Ny({panelConstraints:n,panelIndex:r,size:l});if(a[r]=u,!My(u,l)){let t=l-u,r=e<0?s:o;for(;r>=0&&r0?r--:r++}}}let l=a.reduce((e,t)=>t+e,0);return My(l,100)?a:t}function Iy(e,t=document){var n;if(!ja)return null;if(t instanceof HTMLElement&&(n=t?.dataset)?.panelGroupId===e)return t;let r=t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`);return r||null}function Ly(e,t=document){if(!ja)return null;let n=t.querySelector(`[data-panel-resize-handle-id="${e}"]`);return n||null}function Ry(e,t,n=document){return ja?zy(e,n).findIndex(e=>e.getAttribute(`data-panel-resize-handle-id`)===t)??null:null}function zy(e,t=document){return ja?Array.from(t.querySelectorAll(`[data-panel-resize-handle-id][data-panel-group-id="${e}"]`)):[]}function By(e,t,n,r=document){var i,a;let o=Ly(t,r),s=zy(e,r),c=o?s.indexOf(o):-1,l=(i=n[c])?.id??null,u=(a=n[c+1])?.id??null;return[l,u]}function Vy(e,t,n,r,i){let a=n===`horizontal`,o=Ly(t,i);$(o);let s=o.getAttribute(`data-panel-group-id`);$(s);let{initialCursorPosition:c}=r,l=ey(n,e),u=Iy(s,i);$(u);let d=u.getBoundingClientRect(),f=a?d.width:d.height;return(l-c)/f*100}function Hy(e,t,n,r,i,a){if(Xv(e)){let t=n===`horizontal`,r=0;r=e.shiftKey?100:i??10;let a=0;switch(e.key){case`ArrowDown`:a=t?0:r;break;case`ArrowLeft`:a=t?-r:0;break;case`ArrowRight`:a=t?r:0;break;case`ArrowUp`:a=t?0:-r;break;case`End`:a=100;break;case`Home`:a=-100;break}return a}else return r==null?0:Vy(e,t,n,r,a)}function Uy({layout:e,panelsArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];$(s!=null),t.forEach((e,t)=>{let{constraints:n}=e,{maxSize:c=100,minSize:l=0}=n;t===s?(r=l,i=c):(a+=l,o+=c)});let c=Math.min(i,100-a),l=Math.max(r,100-o),u=e[s];return{valueMax:c,valueMin:l,valueNow:u}}function Wy({panelDataArray:e}){let t=Array(e.length),n=e.map(e=>e.constraints),r=0,i=100;for(let a=0;a{let i=e[r];$(i);let{callbacks:a,constraints:o,id:s}=i,{collapsedSize:c=0,collapsible:l}=o,u=n[s];if(u==null||t!==u){n[s]=t;let{onCollapse:e,onExpand:r,onResize:i}=a;i&&i(t,u),l&&(e||r)&&(r&&(u==null||u===c)&&t!==c&&r(),e&&(u==null||u!==c)&&t===c&&e())}})}function Ky(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function qy(e,t,n){let r=Ry(e,t,n);return r==null?[-1,-1]:[r,r+1]}function Jy({layout:e,panelConstraints:t}){let n=[...e],r=n.reduce((e,t)=>e+t,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${n.map(e=>`${e}%`).join(`, `)}`);if(!My(r,100)){console.warn(`WARNING: Invalid layout total size: ${n.map(e=>`${e}%`).join(`, `)}. Layout normalization will be applied.`);for(let e=0;elocalStorage.getItem(e),e.setItem=(e,t)=>{localStorage.setItem(e,t)};else throw TypeError(`localStorage not supported in this environment`)}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function Xy(e){return`radix-vue:${e}`}function Zy(e){return e.map(e=>{let{constraints:t,id:n,idIsFromProps:r,order:i}=e;return r?n:i?`${i}:${JSON.stringify(t)}`:JSON.stringify(t)}).sort((e,t)=>e.localeCompare(t)).join(`,`)}function Qy(e,t){try{let n=Xy(e),r=t.getItem(n);if(r){let e=JSON.parse(r);if(typeof e==`object`&&e)return e}}catch{}return null}function $y(e,t,n){let r=Qy(e,n)??{},i=Zy(t);return r[i]??null}function eb(e,t,n,r,i){let a=Xy(e),o=Zy(t),s=Qy(e,i)??{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}function tb({eagerValuesRef:e,groupId:t,layout:n,panelDataArray:r,panelGroupElement:i,setLayout:a}){H(e=>{let a=i.value;if(!a)return;let o=zy(t,a);for(let e=0;e{o.forEach(e=>{e.removeAttribute(`aria-controls`),e.removeAttribute(`aria-valuemax`),e.removeAttribute(`aria-valuemin`),e.removeAttribute(`aria-valuenow`)})})}),H(r=>{let o=i.value;if(!o)return;let s=e.value;$(s);let{panelDataArray:c}=s,l=Iy(t,o);$(l!=null,`No group found for id "${t}"`);let u=zy(t,o);$(u);let d=u.map(e=>{let r=e.getAttribute(`data-panel-resize-handle-id`);$(r);let[i,s]=By(t,r,c,o);if(i==null||s==null)return()=>{};let l=e=>{if(!e.defaultPrevented)switch(e.key){case`Enter`:{e.preventDefault();let s=c.findIndex(e=>e.id===i);if(s>=0){let e=c[s];$(e);let i=n.value[s],{collapsedSize:l=0,collapsible:u,minSize:d=0}=e.constraints;if(i!=null&&u){let e=Fy({delta:My(i,l)?d-l:l-i,layout:n.value,panelConstraints:c.map(e=>e.constraints),pivotIndices:qy(t,r,o),trigger:`keyboard`});n.value!==e&&a(e)}}break}}};return e.addEventListener(`keydown`,l),()=>{e.removeEventListener(`keydown`,l)}});r(()=>{d.forEach(e=>e())})})}const nb=100,rb={getItem:e=>(Yy(rb),rb.getItem(e)),setItem:(e,t)=>{Yy(rb),rb.setItem(e,t)}},[ib,ab]=q(`PanelGroup`),ob=E({__name:`SplitterGroup`,props:{id:{},autoSaveId:{default:null},direction:{},keyboardResizeBy:{default:10},storage:{default:()=>rb},asChild:{type:Boolean},as:{}},emits:[`layout`],setup(e,{emit:t}){let n=e,r=t,i={},{direction:a}=L(n),o=Z(n.id,`radix-vue-splitter-group`),s=cs(),{forwardRef:c,currentElement:l}=X(),u=I(null),d=I([]),f=I({}),p=I(new Map),m=I(0),h=G(()=>({autoSaveId:n.autoSaveId,direction:n.direction,dragState:u.value,id:o,keyboardResizeBy:n.keyboardResizeBy,storage:n.storage})),g=I({layout:d.value,panelDataArray:[],panelDataArrayChanged:!1}),_=e=>d.value=e;tb({eagerValuesRef:g,groupId:o,layout:d,panelDataArray:g.value.panelDataArray,setLayout:_,panelGroupElement:l}),H(()=>{let{panelDataArray:e}=g.value,{autoSaveId:t}=n;if(t){if(d.value.length===0||d.value.length!==e.length)return;let r=i[t];r||(r=Ky(eb,nb),i[t]=r);let a=[...e],o=new Map(p.value);r(t,a,o,d.value,n.storage)}});function v(e,t){let{panelDataArray:n}=g.value,r=j(n,e);return Yv({defaultSize:t,dragState:u.value,layout:d.value,panelData:n,panelIndex:r})}function y(e){let{panelDataArray:t}=g.value;t.push(e),t.sort((e,t)=>{let n=e.order,r=t.order;return n==null&&r==null?0:n==null?-1:r==null?1:n-r}),g.value.panelDataArrayChanged=!0}N(()=>g.value.panelDataArrayChanged,()=>{if(g.value.panelDataArrayChanged){g.value.panelDataArrayChanged=!1;let{autoSaveId:e,storage:t}=h.value,{layout:n,panelDataArray:i}=g.value,a=null;if(e){let n=$y(e,i,t);n&&(p.value=new Map(Object.entries(n.expandToSizes)),a=n.layout)}a===null&&(a=Wy({panelDataArray:i}));let o=Jy({layout:a,panelConstraints:i.map(e=>e.constraints)});ka(n,o)||(_(o),g.value.layout=o,r(`layout`,o),Gy(i,o,f.value))}});function b(e){return function(t){t.preventDefault();let n=l.value;if(!n)return()=>null;let{direction:i,dragState:a,id:o,keyboardResizeBy:c}=h.value,{layout:u,panelDataArray:d}=g.value,{initialLayout:p}=a??{},v=qy(o,e,n),y=Hy(t,e,i,a,c,n);if(y===0)return;let b=i===`horizontal`;s.value===`rtl`&&b&&(y=-y);let x=d.map(e=>e.constraints),S=Fy({delta:y,layout:p??u,panelConstraints:x,pivotIndices:v,trigger:Xv(t)?`keyboard`:`mouse-or-touch`}),C=!Py(u,S);(Zv(t)||Qv(t))&&m.value!==y&&(m.value=y,C?Ey(e,0):b?Ey(e,y<0?uy:dy):Ey(e,y<0?fy:py)),C&&(_(S),g.value.layout=S,r(`layout`,S),Gy(d,S,f.value))}}function x(e,t){let{layout:n,panelDataArray:i}=g.value,a=i.map(e=>e.constraints),{panelSize:o,pivotIndices:s}=M(i,e,n);$(o!=null);let c=j(i,e)===i.length-1?o-t:t-o,l=Fy({delta:c,layout:n,panelConstraints:a,pivotIndices:s,trigger:`imperative-api`});Py(n,l)||(_(l),g.value.layout=l,r(`layout`,l),Gy(i,l,f.value))}function S(e,t){let{layout:n,panelDataArray:r}=g.value,i=j(r,e);r[i]=e,g.value.panelDataArrayChanged=!0;let{collapsedSize:a=0,collapsible:o}=t,{collapsedSize:s=0,collapsible:c,maxSize:l=100,minSize:u=0}=e.constraints,{panelSize:d}=M(r,e,n);d!==null&&(o&&c&&d===a?a!==s&&x(e,s):dl&&x(e,l))}function C(e,t){let{direction:n}=h.value,{layout:r}=g.value;if(!l.value)return;let i=Ly(e,l.value);$(i);let a=ey(n,t);u.value={dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r}}function w(){u.value=null}function T(e){let{panelDataArray:t}=g.value,n=j(t,e);n>=0&&(t.splice(n,1),delete f.value[e.id],g.value.panelDataArrayChanged=!0)}function E(e){let{layout:t,panelDataArray:n}=g.value;if(e.constraints.collapsible){let i=n.map(e=>e.constraints),{collapsedSize:a=0,panelSize:o,pivotIndices:s}=M(n,e,t);if($(o!=null,`Panel size not found for panel "${e.id}"`),o!==a){p.value.set(e.id,o);let c=j(n,e)===n.length-1?o-a:a-o,l=Fy({delta:c,layout:t,panelConstraints:i,pivotIndices:s,trigger:`imperative-api`});Py(t,l)||(_(l),g.value.layout=l,r(`layout`,l),Gy(n,l,f.value))}}}function D(e){let{layout:t,panelDataArray:n}=g.value;if(e.constraints.collapsible){let i=n.map(e=>e.constraints),{collapsedSize:a=0,panelSize:o,minSize:s=0,pivotIndices:c}=M(n,e,t);if(o===a){let a=p.value.get(e.id),l=a!=null&&a>=s?a:s,u=j(n,e)===n.length-1?o-l:l-o,d=Fy({delta:u,layout:t,panelConstraints:i,pivotIndices:c,trigger:`imperative-api`});Py(t,d)||(_(d),g.value.layout=d,r(`layout`,d),Gy(n,d,f.value))}}}function O(e){let{layout:t,panelDataArray:n}=g.value,{panelSize:r}=M(n,e,t);return $(r!=null,`Panel size not found for panel "${e.id}"`),r}function k(e){let{layout:t,panelDataArray:n}=g.value,{collapsedSize:r=0,collapsible:i,panelSize:a}=M(n,e,t);return i?a===void 0?e.constraints.defaultSize===e.constraints.collapsedSize:a===r:!1}function A(e){let{layout:t,panelDataArray:n}=g.value,{collapsedSize:r=0,collapsible:i,panelSize:a}=M(n,e,t);return $(a!=null,`Panel size not found for panel "${e.id}"`),!i||a>r}ab({direction:a,dragState:u.value,groupId:o,reevaluatePanelConstraints:S,registerPanel:y,registerResizeHandle:b,resizePanel:x,startDragging:C,stopDragging:w,unregisterPanel:T,panelGroupElement:l,collapsePanel:E,expandPanel:D,isPanelCollapsed:k,isPanelExpanded:A,getPanelSize:O,getPanelStyle:v});function j(e,t){return e.findIndex(e=>e===t||e.id===t.id)}function M(e,t,n){let r=j(e,t),i=r===e.length-1?[r-1,r]:[r,r+1],a=n[r];return{...t.constraints,panelSize:a,pivotIndices:i}}return(e,t)=>(P(),U(R(Q),{ref:R(c),as:e.as,"as-child":e.asChild,style:ke({display:`flex`,flexDirection:R(a)===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`}),"data-panel-group":``,"data-orientation":R(a),"data-panel-group-id":R(o)},{default:z(()=>[W(e.$slots,`default`,{layout:d.value})]),_:3},8,[`as`,`as-child`,`style`,`data-orientation`,`data-panel-group-id`]))}}),sb=E({__name:`SplitterPanel`,props:{collapsedSize:{},collapsible:{type:Boolean},defaultSize:{},id:{},maxSize:{},minSize:{},order:{},asChild:{type:Boolean},as:{}},emits:[`collapse`,`expand`,`resize`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=ib();if(a===null)throw Error(`SplitterPanel components must be rendered within a SplitterGroup container`);let{collapsePanel:o,expandPanel:s,getPanelSize:c,getPanelStyle:l,isPanelCollapsed:u,resizePanel:d,groupId:f,reevaluatePanelConstraints:p,registerPanel:m,unregisterPanel:h}=a,g=Z(r.id,`radix-vue-splitter-panel`),_=G(()=>({callbacks:{onCollapse:()=>i(`collapse`),onExpand:()=>i(`expand`),onResize:(...e)=>i(`resize`,...e)},constraints:{collapsedSize:r.collapsedSize&&Number.parseFloat(r.collapsedSize.toFixed(Ay)),collapsible:r.collapsible,defaultSize:r.defaultSize,maxSize:r.maxSize,minSize:r.minSize},id:g,idIsFromProps:r.id!==void 0,order:r.order}));N(()=>_.value.constraints,(e,t)=>{(t.collapsedSize!==e.collapsedSize||t.collapsible!==e.collapsible||t.maxSize!==e.maxSize||t.minSize!==e.minSize)&&p(_.value,t)},{deep:!0}),S(()=>{let e=_.value;m(e),me(()=>{h(e)})});let v=G(()=>l(_.value,r.defaultSize)),y=G(()=>u(_.value)),b=G(()=>!y.value);return t({collapse:()=>{o(_.value)},expand:()=>{s(_.value)},getSize(){return c(_.value)},resize:e=>{d(_.value,e)},isCollapsed:y,isExpanded:b}),(e,t)=>(P(),U(R(Q),{id:R(g),style:ke(v.value),as:e.as,"as-child":e.asChild,"data-panel":``,"data-panel-collapsible":e.collapsible||void 0,"data-panel-group-id":R(f),"data-panel-id":R(g),"data-panel-size":Number.parseFloat(`${v.value.flexGrow}`).toFixed(1),"data-state":e.collapsible?y.value?`collapsed`:`expanded`:void 0},{default:z(()=>[W(e.$slots,`default`,{isCollapsed:y.value,isExpanded:b.value})]),_:3},8,[`id`,`style`,`as`,`as-child`,`data-panel-collapsible`,`data-panel-group-id`,`data-panel-id`,`data-panel-size`,`data-state`]))}});function cb({disabled:e,handleId:t,resizeHandler:n,panelGroupElement:r}){H(i=>{let a=r.value;if(e.value||n.value===null||a===null)return;let o=Ly(t,a);if(o==null)return;let s=e=>{var r;if(!e.defaultPrevented)switch(e.key){case`ArrowDown`:case`ArrowLeft`:case`ArrowRight`:case`ArrowUp`:case`End`:case`Home`:e.preventDefault(),(r=n.value)==null||r.call(n,e);break;case`F6`:{e.preventDefault();let n=o.getAttribute(`data-panel-group-id`);$(n);let r=zy(n,a),i=Ry(n,t,a);$(i!==null);let s=e.shiftKey?i>0?i-1:r.length-1:i+1{o.removeEventListener(`keydown`,s)})})}const lb=E({__name:`SplitterResizeHandle`,props:{id:{},hitAreaMargins:{},tabindex:{default:0},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`dragging`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),{disabled:o}=L(n),s=ib();if(s===null)throw Error(`PanelResizeHandle components must be rendered within a PanelGroup container`);let{direction:c,groupId:l,registerResizeHandle:u,startDragging:d,stopDragging:f,panelGroupElement:p}=s,m=Z(n.id,`radix-vue-splitter-resize-handle`),h=I(`inactive`),g=I(!1),_=I(null);return N(o,()=>{ja&&(o.value?_.value=null:_.value=u(m))},{immediate:!0}),H(e=>{var t,i;if(o.value||_.value===null)return;let s=a.value;if(!s)return;$(s);let l=(e,t,n)=>{var i;if(t)switch(e){case`down`:h.value=`drag`,d(m,n),r(`dragging`,!0);break;case`move`:h.value!==`drag`&&(h.value=`hover`),(i=_.value)==null||i.call(_,n);break;case`up`:h.value=`hover`,f(),r(`dragging`,!1);break}else h.value=`inactive`};e(xy(m,s,c,{coarse:(t=n.hitAreaMargins)?.coarse??15,fine:(i=n.hitAreaMargins)?.fine??5},l))}),cb({disabled:o,resizeHandler:_,handleId:m,panelGroupElement:p}),(e,t)=>(P(),U(R(Q),{id:R(m),ref:R(i),style:{touchAction:`none`,userSelect:`none`},as:e.as,"as-child":e.asChild,role:`separator`,"data-resize-handle":``,tabindex:e.tabindex,"data-state":h.value,"data-disabled":R(o)?``:void 0,"data-orientation":R(c),"data-panel-group-id":R(l),"data-resize-handle-active":h.value===`drag`?`pointer`:g.value?`keyboard`:void 0,"data-resize-handle-state":h.value,"data-panel-resize-handle-enabled":!R(o),"data-panel-resize-handle-id":R(m),onBlur:t[0]||=e=>g.value=!1,onFocus:t[1]||=e=>g.value=!1},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`as`,`as-child`,`tabindex`,`data-state`,`data-disabled`,`data-orientation`,`data-panel-group-id`,`data-resize-handle-active`,`data-resize-handle-state`,`data-panel-resize-handle-enabled`,`data-panel-resize-handle-id`]))}}),ub={"aria-live":`polite`,"aria-atomic":`true`,role:`status`,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},[db,fb]=q(`StepperRoot`),pb=E({__name:`StepperRoot`,props:{defaultValue:{default:1},orientation:{default:`horizontal`},dir:{},modelValue:{},linear:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{dir:i,orientation:a,linear:o}=L(n),s=cs(i);X();let c=I(new Set),l=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),u=G(()=>Array.from(c.value)),d=G(()=>l.value===1),f=G(()=>l.value===u.value.length),p=G(()=>c.value.size);function m(e){e>p.value||e<1||c.value.size&&u.value[e]&&u.value[e].getAttribute(`disabled`)||o.value&&e>(l.value??1)+1||(l.value=e)}let h=I(null),g=I(null),_=G(()=>h.value?h.value.getAttribute(`disabled`)===``:!0),v=G(()=>g.value?g.value.getAttribute(`disabled`)===``:!0);return N(l,async()=>{await T(()=>{h.value=u.value.length&&l.value1?u.value[l.value-2]:null})}),N(u,async()=>{await T(()=>{h.value=u.value.length&&l.value1?u.value[l.value-2]:null})}),fb({modelValue:l,changeModelValue:e=>{l.value=e},orientation:a,dir:s,linear:o,totalStepperItems:c}),(e,t)=>(P(),U(R(Q),{role:`group`,"aria-label":`progress`,as:e.as,"as-child":e.asChild,"data-linear":R(o)?``:void 0,"data-orientation":e.orientation},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(l),totalSteps:c.value.size,isNextDisabled:_.value,isPrevDisabled:v.value,isFirstStep:d.value,isLastStep:f.value,goToStep:m,nextStep:()=>m((R(l)??1)+1),prevStep:()=>m((R(l)??1)-1)}),_e(`div`,ub,` Step `+Oe(R(l))+` of `+Oe(c.value.size),1)]),_:3},8,[`as`,`as-child`,`data-linear`,`data-orientation`]))}}),[mb,hb]=q(`StepperItem`),gb=E({__name:`StepperItem`,props:{step:{},disabled:{type:Boolean,default:!1},completed:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},setup(e){let t=e,{disabled:n,step:r,completed:i}=L(t),{forwardRef:a}=X(),o=db(),s=Z(void 0,`radix-vue-stepper-item-title`),c=Z(void 0,`radix-vue-stepper-item-description`),l=G(()=>i.value?`completed`:o.modelValue.value===r.value?`active`:o.modelValue.value>r.value?`completed`:`inactive`),u=G(()=>n.value?!1:o.linear.value?r.value<=o.modelValue.value||r.value===o.modelValue.value+1:!0);return hb({titleId:s,descriptionId:c,state:l,disabled:n,step:r,isFocusable:u}),(e,t)=>(P(),U(R(Q),{ref:R(a),as:e.as,"as-child":e.asChild,"aria-current":l.value===`active`?`true`:void 0,"data-state":l.value,disabled:R(n)||!u.value?``:void 0,"data-disabled":R(n)||!u.value?``:void 0,"data-orientation":R(o).orientation.value},{default:z(()=>[W(e.$slots,`default`,{state:l.value})]),_:3},8,[`as`,`as-child`,`aria-current`,`data-state`,`disabled`,`data-disabled`,`data-orientation`]))}}),_b=E({__name:`StepperTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=db(),n=mb(),r=Vs(),i=G(()=>Array.from(t.totalStepperItems.value));function a(e){if(!n.disabled.value){if(t.linear.value){if((n.step.value<=t.modelValue.value||n.step.value===t.modelValue.value+1)&&e.ctrlKey===!1){t.changeModelValue(n.step.value);return}}else if(e.ctrlKey===!1){t.changeModelValue(n.step.value);return}e.preventDefault()}}function o(e){e.preventDefault(),!n.disabled.value&&((e.key===r.ENTER||e.key===r.SPACE)&&!e.ctrlKey&&!e.shiftKey&&t.changeModelValue(n.step.value),[r.ARROW_LEFT,r.ARROW_RIGHT,r.ARROW_UP,r.ARROW_DOWN].includes(e.key)&&Ho(e,Y(),void 0,{itemsArray:i.value,focus:!0,loop:!1,arrowKeyOptions:t.orientation.value,dir:t.dir.value}))}let{forwardRef:s,currentElement:c}=X();return S(()=>{t.totalStepperItems.value.add(c.value)}),me(()=>{t.totalStepperItems.value.delete(c.value)}),(e,r)=>(P(),U(R(Q),{ref:R(s),type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"data-state":R(n).state.value,disabled:R(n).disabled.value||!R(n).isFocusable.value?``:void 0,"data-disabled":R(n).disabled.value||!R(n).isFocusable.value?``:void 0,"data-orientation":R(t).orientation.value,tabindex:R(n).isFocusable.value?0:-1,"aria-describedby":R(n).descriptionId,"aria-labelledby":R(n).titleId,onMousedown:m(a,[`left`]),onKeydown:h(o,[`enter`,`space`,`left`,`right`,`up`,`down`])},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`,`data-state`,`disabled`,`data-disabled`,`data-orientation`,`tabindex`,`aria-describedby`,`aria-labelledby`]))}}),vb=E({__name:`StepperDescription`,props:{asChild:{type:Boolean},as:{default:`p`}},setup(e){let t=e;X();let n=mb();return(e,r)=>(P(),U(R(Q),k(t,{id:R(n).descriptionId}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),yb=E({__name:`StepperTitle`,props:{asChild:{type:Boolean},as:{default:`h4`}},setup(e){let t=e,n=mb();return X(),(e,r)=>(P(),U(R(Q),k(t,{id:R(n).titleId}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`id`]))}}),bb=E({__name:`StepperIndicator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=mb();return X(),(e,r)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(` Step `+Oe(R(n).step.value),1)])]),_:3},16))}}),xb=E({__name:`StepperSeparator`,props:{orientation:{},decorative:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,n=db(),r=mb();return X(),(e,i)=>(P(),U(R(_v),k(t,{decorative:``,orientation:R(n).orientation.value,"data-state":R(r).state.value}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`orientation`,`data-state`]))}}),Sb=[`name`,`disabled`,`required`,`value`,`checked`,`data-state`,`data-disabled`],[Cb,wb]=q(`SwitchRoot`),Tb=E({__name:`SwitchRoot`,props:{defaultChecked:{type:Boolean},checked:{type:Boolean,default:void 0},disabled:{type:Boolean},required:{type:Boolean},name:{},id:{},value:{default:`on`},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:checked`],setup(e,{emit:t}){let n=e,r=t,{disabled:i}=L(n),a=J(n,`checked`,r,{defaultValue:n.defaultChecked,passive:n.checked===void 0});function o(){i.value||(a.value=!a.value)}let{forwardRef:s,currentElement:c}=X(),l=ps(c),u=G(()=>{var e;return n.id&&c.value?(e=document.querySelector(`[for="${n.id}"]`))?.innerText:void 0});return wb({checked:a,toggleCheck:o,disabled:i}),(e,t)=>(P(),B(Se,null,[A(R(Q),k(e.$attrs,{id:e.id,ref:R(s),role:`switch`,type:e.as===`button`?`button`:void 0,value:e.value,"aria-label":e.$attrs[`aria-label`]||u.value,"aria-checked":R(a),"aria-required":e.required,"data-state":R(a)?`checked`:`unchecked`,"data-disabled":R(i)?``:void 0,"as-child":e.asChild,as:e.as,disabled:R(i),onClick:o,onKeydown:h(m(o,[`prevent`]),[`enter`])}),{default:z(()=>[W(e.$slots,`default`,{checked:R(a)})]),_:3},16,[`id`,`type`,`value`,`aria-label`,`aria-checked`,`aria-required`,`data-state`,`data-disabled`,`as-child`,`as`,`disabled`,`onKeydown`]),R(l)?(P(),B(`input`,{key:0,type:`checkbox`,name:e.name,tabindex:`-1`,"aria-hidden":`true`,disabled:R(i),required:e.required,value:e.value,checked:!!R(a),"data-state":R(a)?`checked`:`unchecked`,"data-disabled":R(i)?``:void 0,style:{transform:`translateX(-100%)`,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}},null,8,Sb)):O(``,!0)],64))}}),Eb=E({__name:`SwitchThumb`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=Cb();return X(),(e,n)=>{var r;return P(),U(R(Q),{"data-state":(r=R(t).checked)!=null&&r.value?`checked`:`unchecked`,"data-disabled":R(t).disabled.value?``:void 0,"as-child":e.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`data-state`,`data-disabled`,`as-child`,`as`])}}}),[Db,Ob]=q(`TabsRoot`),kb=E({__name:`TabsRoot`,props:{defaultValue:{},orientation:{default:`horizontal`},dir:{},activationMode:{default:`automatic`},modelValue:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{orientation:i,dir:a}=L(n),o=cs(a);X();let s=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),c=I();return Ob({modelValue:s,changeModelValue:e=>{s.value=e},orientation:i,dir:o,activationMode:n.activationMode,baseId:Z(void 0,`radix-vue-tabs`),tabsList:c}),(e,t)=>(P(),U(R(Q),{dir:R(o),"data-orientation":R(i),"as-child":e.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(s)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}}),Ab=E({__name:`TabsList`,props:{loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{}},setup(e){let t=e,{loop:n}=L(t),{forwardRef:r,currentElement:i}=X(),a=Db();return a.tabsList=i,(e,t)=>(P(),U(R(pd),{"as-child":``,orientation:R(a).orientation.value,dir:R(a).dir.value,loop:R(n)},{default:z(()=>[A(R(Q),{ref:R(r),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":R(a).orientation.value},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}});function jb(e,t){return`${e}-trigger-${t}`}function Mb(e,t){return`${e}-content-${t}`}const Nb=E({__name:`TabsContent`,props:{value:{},forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),r=Db(),i=G(()=>jb(r.baseId,t.value)),a=G(()=>Mb(r.baseId,t.value)),o=G(()=>t.value===r.modelValue.value),s=I(o.value);return S(()=>{requestAnimationFrame(()=>{s.value=!1})}),(e,t)=>(P(),U(R(Xs),{present:o.value,"force-mount":``},{default:z(({present:t})=>[A(R(Q),{id:a.value,ref:R(n),"as-child":e.asChild,as:e.as,role:`tabpanel`,"data-state":o.value?`active`:`inactive`,"data-orientation":R(r).orientation.value,"aria-labelledby":i.value,hidden:!t.value,tabindex:`0`,style:ke({animationDuration:s.value?`0s`:void 0})},{default:z(()=>[e.forceMount||o.value?W(e.$slots,`default`,{key:0}):O(``,!0)]),_:2},1032,[`id`,`as-child`,`as`,`data-state`,`data-orientation`,`aria-labelledby`,`hidden`,`style`])]),_:3},8,[`present`]))}}),Pb=E({__name:`TabsTrigger`,props:{value:{},disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,{forwardRef:n}=X(),r=Db(),i=G(()=>jb(r.baseId,t.value)),a=G(()=>Mb(r.baseId,t.value)),o=G(()=>t.value===r.modelValue.value);return(e,t)=>(P(),U(R(md),{"as-child":``,focusable:!e.disabled,active:o.value},{default:z(()=>[A(R(Q),{id:i.value,ref:R(n),role:`tab`,type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"aria-selected":o.value?`true`:`false`,"aria-controls":a.value,"data-state":o.value?`active`:`inactive`,disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-orientation":R(r).orientation.value,onMousedown:t[0]||=m(t=>{!e.disabled&&t.ctrlKey===!1?R(r).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=h(t=>R(r).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=R(r).activationMode!==`manual`;!o.value&&!e.disabled&&t&&R(r).changeModelValue(e.value)}},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as`,`as-child`,`aria-selected`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`data-orientation`])]),_:3},8,[`focusable`,`active`]))}}),Fb=E({__name:`TabsIndicator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Db();X();let r=I(),i=I({size:null,position:null});N(()=>[n.modelValue.value,n?.dir.value],async()=>{await T(),a()},{immediate:!0}),Lo([n.tabsList,r],a);function a(){var e;r.value=(e=n.tabsList.value)?.querySelector(`[role="tab"][data-state="active"]`),r.value&&(n.orientation.value===`horizontal`?i.value={size:r.value.offsetWidth,position:r.value.offsetLeft}:i.value={size:r.value.offsetHeight,position:r.value.offsetTop})}return(e,n)=>typeof i.value.size==`number`?(P(),U(R(Q),k({key:0},t,{style:{"--radix-tabs-indicator-size":`${i.value.size}px`,"--radix-tabs-indicator-position":`${i.value.position}px`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`style`])):O(``,!0)}}),[Ib,Lb]=q(`TagsInputRoot`),Rb=E({__name:`TagsInputRoot`,props:{modelValue:{},defaultValue:{default:()=>[]},addOnPaste:{type:Boolean},addOnTab:{type:Boolean},addOnBlur:{type:Boolean},duplicate:{type:Boolean},disabled:{type:Boolean},delimiter:{default:`,`},dir:{},max:{default:0},required:{type:Boolean},name:{},id:{},convertValue:{},displayValue:{type:Function,default:e=>e.toString()},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`invalid`],setup(e,{emit:t}){let n=e,r=t,{addOnPaste:i,disabled:a,delimiter:o,max:s,id:c,dir:l,addOnBlur:u,addOnTab:d}=L(n),f=cs(l),p=J(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:!0,deep:!0}),{forwardRef:m,currentElement:h}=X(),{focused:g}=Ro(h),_=ps(h),{getItems:v}=yu(),y=I(),b=I(!1);return Lb({modelValue:p,onAddValue:e=>{let t=p.value.length>0&&typeof p.value[0]==`object`,i=p.value.length>0&&typeof n.defaultValue[0]==`object`;if((t||i)&&typeof n.convertValue!=`function`)throw Error("You must provide a `convertValue` function when using objects as values.");let a=n.convertValue?n.convertValue(e):e;if(p.value.length>=s.value&&s.value)return r(`invalid`,a),!1;if(n.duplicate)return p.value=[...p.value,a],!0;if(p.value.includes(a))b.value=!0;else return p.value=[...p.value,a],!0;return r(`invalid`,a),!1},onRemoveValue:e=>{e!==-1&&(p.value=p.value.filter((t,n)=>n!==e))},onInputKeydown:e=>{let t=e.target,n=v().map(e=>e.ref).filter(e=>e.dataset.disabled!==``);if(!n.length)return;let r=n.at(-1);switch(e.key){case`Delete`:case`Backspace`:if(t.selectionStart!==0||t.selectionEnd!==0)break;if(y.value){let t=n.findIndex(e=>e===y.value);p.value=p.value.filter((e,n)=>n!==t),y.value=y.value===r?n.at(t-1):n.at(t+1),e.preventDefault()}else e.key===`Backspace`&&(y.value=r,e.preventDefault());break;case`Home`:case`End`:case`ArrowRight`:case`ArrowLeft`:{let i=e.key===`ArrowRight`&&f.value===`ltr`||e.key===`ArrowLeft`&&f.value===`rtl`,a=!i;if(t.selectionStart!==0||t.selectionEnd!==0)break;if(a&&!y.value)y.value=r,e.preventDefault();else if(i&&r&&y.value===r)y.value=void 0,e.preventDefault();else if(y.value){let t=Ho(e,y.value,void 0,{itemsArray:n,loop:!1,dir:f.value});t&&(y.value=t),e.preventDefault()}break}case`ArrowUp`:case`ArrowDown`:y.value&&e.preventDefault();break;default:y.value=void 0}},selectedElement:y,isInvalidInput:b,addOnPaste:i,addOnBlur:u,addOnTab:d,dir:f,disabled:a,delimiter:o,max:s,id:c,displayValue:n.displayValue}),(e,t)=>(P(),U(R(bu),null,{default:z(()=>[A(R(Q),{ref:R(m),dir:R(f),as:e.as,"as-child":e.asChild,"data-invalid":b.value?``:void 0,"data-disabled":R(a)?``:void 0,"data-focused":R(g)?``:void 0},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(p)}),R(_)&&e.name?(P(),U(R(hu),{key:0,name:e.name,value:R(p),required:e.required,disabled:R(a)},null,8,[`name`,`value`,`required`,`disabled`])):O(``,!0)]),_:3},8,[`dir`,`as`,`as-child`,`data-invalid`,`data-disabled`,`data-focused`])]),_:3}))}}),zb=E({__name:`TagsInputInput`,props:{placeholder:{},autoFocus:{type:Boolean},maxLength:{},asChild:{type:Boolean},as:{default:`input`}},setup(e){let t=e,n=Ib(),{forwardRef:r,currentElement:i}=X();function a(e){if(!n.addOnBlur.value)return;let t=e.target;t.value&&n.onAddValue(t.value)&&(t.value=``)}function o(e){n.addOnTab.value&&u(e)}let s=I(!1);function c(){s.value=!0}function l(){requestAnimationFrame(()=>{s.value=!1})}async function u(e){if(s.value||(await T(),e.defaultPrevented))return;let t=e.target;t.value&&(n.onAddValue(t.value)&&(t.value=``),e.preventDefault())}function d(e){n.isInvalidInput.value=!1;let t=n.delimiter.value;if(t===e.data){let r=e.target;r.value=r.value.replaceAll(t,``),n.onAddValue(r.value)&&(r.value=``)}}function f(e){if(n.addOnPaste.value){e.preventDefault();let t=e.clipboardData;if(!t)return;let r=t.getData(`text`);n.delimiter.value?r.split(n.delimiter.value).forEach(e=>{n.onAddValue(e)}):n.onAddValue(r)}}return S(()=>{let e=i.value.nodeName===`INPUT`?i.value:i.value.querySelector(`input`);e&&setTimeout(()=>{t.autoFocus&&e?.focus()},1)}),(e,t)=>{var i;return P(),U(R(Q),{id:(i=R(n).id)?.value,ref:R(r),type:`text`,autocomplete:`off`,autocorrect:`off`,autocapitalize:`off`,as:e.as,"as-child":e.asChild,maxlength:e.maxLength,placeholder:e.placeholder,disabled:R(n).disabled.value,"data-invalid":R(n).isInvalidInput.value?``:void 0,onInput:d,onKeydown:[h(u,[`enter`]),h(o,[`tab`]),R(n).onInputKeydown],onBlur:a,onCompositionstart:c,onCompositionend:l,onPaste:f},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`id`,`as`,`as-child`,`maxlength`,`placeholder`,`disabled`,`data-invalid`,`onKeydown`])}}}),[Bb,Vb]=q(`TagsInputItem`),Hb=E({__name:`TagsInputItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{value:n}=L(t),r=Ib(),{forwardRef:i,currentElement:a}=X(),o=G(()=>r.selectedElement.value===a.value),s=G(()=>t.disabled||r.disabled.value),c=Vb({value:n,isSelected:o,disabled:s,textId:``,displayValue:G(()=>r.displayValue(n.value))});return(e,t)=>(P(),U(R(xu),null,{default:z(()=>[A(R(Q),{ref:R(i),as:e.as,"as-child":e.asChild,"aria-labelledby":R(c).textId,"aria-current":o.value,"data-disabled":s.value?``:void 0,"data-state":o.value?`active`:`inactive`},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-labelledby`,`aria-current`,`data-disabled`,`data-state`])]),_:3}))}}),Ub=E({__name:`TagsInputItemText`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(e){let t=e,n=Bb();return X(),n.textId||=Z(void 0,`radix-vue-tags-input-item-text`),(e,r)=>(P(),U(R(Q),k(t,{id:R(n).textId}),{default:z(()=>[W(e.$slots,`default`,{},()=>[F(Oe(R(n).displayValue.value),1)])]),_:3},16,[`id`]))}}),Wb=E({__name:`TagsInputItemDelete`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Ib(),r=Bb(),i=G(()=>{var e;return(e=r.disabled)?.value||n.disabled.value});function a(){if(i.value)return;let e=n.modelValue.value.findIndex(e=>e===r.value.value);n.onRemoveValue(e)}return(e,n)=>(P(),U(R(Q),k({tabindex:`-1`},t,{"aria-labelledby":R(r).textId,"aria-current":R(r).isSelected.value,"data-state":R(r).isSelected.value?`active`:`inactive`,"data-disabled":i.value?``:void 0,type:e.as===`button`?`button`:void 0,onClick:a}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-labelledby`,`aria-current`,`data-state`,`data-disabled`,`type`]))}}),Gb=E({__name:`TagsInputClear`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;X();let n=Ib();function r(){n.disabled.value||(n.modelValue.value=[])}return(e,i)=>(P(),U(R(Q),k(t,{type:e.as===`button`?`button`:void 0,"data-disabled":R(n).disabled.value?``:void 0,onClick:r}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`,`data-disabled`]))}}),[Kb,qb]=q(`ToastProvider`),Jb=E({inheritAttrs:!1,__name:`ToastProvider`,props:{label:{default:`Notification`},duration:{default:5e3},swipeDirection:{default:`right`},swipeThreshold:{default:50}},setup(e){let t=e,{label:n,duration:r,swipeDirection:i,swipeThreshold:a}=L(t),o=I(),s=I(0),c=I(!1),l=I(!1);if(t.label&&typeof t.label==`string`&&!t.label.trim()){let e="Invalid prop `label` supplied to `ToastProvider`. Expected non-empty `string`.";throw Error(e)}return qb({label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:s,viewport:o,onViewportChange(e){o.value=e},onToastAdd(){s.value++},onToastRemove(){s.value--},isFocusedToastEscapeKeyDownRef:c,isClosePausedRef:l}),(e,t)=>W(e.$slots,`default`)}}),Yb=`toast.swipeStart`,Xb=`toast.swipeMove`,Zb=`toast.swipeCancel`,Qb=`toast.swipeEnd`,$b=`toast.viewportPause`,ex=`toast.viewportResume`;function tx(e,t,n){let r=n.originalEvent.currentTarget,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),r.dispatchEvent(i)}function nx(e,t,n=0){let r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t===`left`||t===`right`?a&&r>n:!a&&i>n}function rx(e){return e.nodeType===e.ELEMENT_NODE}function ix(e){let t=[];return Array.from(e.childNodes).forEach(e=>{if(e.nodeType===e.TEXT_NODE&&e.textContent&&t.push(e.textContent),rx(e)){let n=e.ariaHidden||e.hidden||e.style.display===`none`,r=e.dataset.radixToastAnnounceExclude===``;if(!n)if(r){let n=e.dataset.radixToastAnnounceAlt;n&&t.push(n)}else t.push(...ix(e))}}),t}const ax=E({__name:`ToastAnnounce`,setup(e){let t=Kb(),n=Co(1e3),r=I(!1);return Po(()=>{r.value=!0}),(e,i)=>R(n)||r.value?(P(),U(R(mu),{key:0},{default:z(()=>[F(Oe(R(t).label.value)+` `,1),W(e.$slots,`default`)]),_:3})):O(``,!0)}}),[ox,sx]=q(`ToastRoot`),cx=E({inheritAttrs:!1,__name:`ToastRootImpl`,props:{type:{},open:{type:Boolean,default:!1},duration:{},asChild:{type:Boolean},as:{default:`li`}},emits:[`close`,`escapeKeyDown`,`pause`,`resume`,`swipeStart`,`swipeMove`,`swipeCancel`,`swipeEnd`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i,currentElement:a}=X(),o=Kb(),s=I(null),c=I(null),l=G(()=>typeof n.duration==`number`?n.duration:o.duration.value),u=I(0),d=I(l.value),f=I(0),p=I(l.value),h=Po(()=>{let e=new Date().getTime()-u.value;p.value=Math.max(d.value-e,0)},{fpsLimit:60});function g(e){e<=0||e===1/0||oo&&(window.clearTimeout(f.value),u.value=new Date().getTime(),f.value=window.setTimeout(_,e))}function _(){var e,t;(e=a.value)!=null&&e.contains(Y())&&((t=o.viewport.value)==null||t.focus()),o.isClosePausedRef.value=!1,r(`close`)}let v=G(()=>a.value?ix(a.value):null);if(n.type&&![`foreground`,`background`].includes(n.type)){let e="Invalid prop `type` supplied to `Toast`. Expected `foreground | background`.";throw Error(e)}return H(e=>{let t=o.viewport.value;if(t){let e=()=>{g(d.value),h.resume(),r(`resume`)},n=()=>{let e=new Date().getTime()-u.value;d.value-=e,window.clearTimeout(f.value),h.pause(),r(`pause`)};return t.addEventListener($b,n),t.addEventListener(ex,e),()=>{t.removeEventListener($b,n),t.removeEventListener(ex,e)}}}),N(()=>[n.open,l.value],()=>{d.value=l.value,n.open&&!o.isClosePausedRef.value&&g(l.value)},{immediate:!0}),ko(`Escape`,e=>{r(`escapeKeyDown`,e),e.defaultPrevented||(o.isFocusedToastEscapeKeyDownRef.value=!0,_())}),S(()=>{o.onToastAdd()}),me(()=>{o.onToastRemove()}),sx({onClose:_}),(e,t)=>(P(),B(Se,null,[v.value?(P(),U(ax,{key:0,role:`alert`,"aria-live":e.type===`foreground`?`assertive`:`polite`,"aria-atomic":`true`},{default:z(()=>[F(Oe(v.value),1)]),_:1},8,[`aria-live`])):O(``,!0),R(o).viewport.value?(P(),U(ve,{key:1,to:R(o).viewport.value},[A(R(Q),k({ref:R(i),role:`alert`,"aria-live":`off`,"aria-atomic":`true`,tabindex:`0`,"data-radix-vue-collection-item":``},e.$attrs,{as:e.as,"as-child":e.asChild,"data-state":e.open?`open`:`closed`,"data-swipe-direction":R(o).swipeDirection.value,style:{userSelect:`none`,touchAction:`none`},onPointerdown:t[0]||=m(e=>{s.value={x:e.clientX,y:e.clientY}},[`left`]),onPointermove:t[1]||=e=>{if(!s.value)return;let t=e.clientX-s.value.x,n=e.clientY-s.value.y,i=!!c.value,a=[`left`,`right`].includes(R(o).swipeDirection.value),l=[`left`,`up`].includes(R(o).swipeDirection.value)?Math.min:Math.max,u=a?l(0,t):0,d=a?0:l(0,n),f=e.pointerType===`touch`?10:2,p={x:u,y:d},m={originalEvent:e,delta:p};i?(c.value=p,R(tx)(R(Xb),e=>r(`swipeMove`,e),m)):R(nx)(p,R(o).swipeDirection.value,f)?(c.value=p,R(tx)(R(Yb),e=>r(`swipeStart`,e),m),e.target.setPointerCapture(e.pointerId)):(Math.abs(t)>f||Math.abs(n)>f)&&(s.value=null)},onPointerup:t[2]||=e=>{let t=c.value,n=e.target;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),c.value=null,s.value=null,t){let n=e.currentTarget,i={originalEvent:e,delta:t};R(nx)(t,R(o).swipeDirection.value,R(o).swipeThreshold.value)?R(tx)(R(Qb),e=>r(`swipeEnd`,e),i):R(tx)(R(Zb),e=>r(`swipeCancel`,e),i),n?.addEventListener(`click`,e=>e.preventDefault(),{once:!0})}}}),{default:z(()=>[W(e.$slots,`default`,{remaining:p.value,duration:l.value})]),_:3},16,[`as`,`as-child`,`data-state`,`data-swipe-direction`])],8,[`to`])):O(``,!0)],64))}}),lx=E({__name:`ToastRoot`,props:{defaultOpen:{type:Boolean,default:!0},forceMount:{type:Boolean},type:{default:`foreground`},open:{type:Boolean,default:void 0},duration:{},asChild:{type:Boolean},as:{default:`li`}},emits:[`escapeKeyDown`,`pause`,`resume`,`swipeStart`,`swipeMove`,`swipeCancel`,`swipeEnd`,`update:open`],setup(e,{emit:t}){let n=e,r=t,{forwardRef:i}=X(),a=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0});return(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(a)},{default:z(()=>[A(cx,k({ref:R(i),open:R(a),type:e.type,as:e.as,"as-child":e.asChild,duration:e.duration},e.$attrs,{onClose:t[0]||=e=>a.value=!1,onPause:t[1]||=e=>r(`pause`),onResume:t[2]||=e=>r(`resume`),onEscapeKeyDown:t[3]||=e=>r(`escapeKeyDown`,e),onSwipeStart:t[4]||=e=>{r(`swipeStart`,e),e.currentTarget.setAttribute(`data-swipe`,`start`)},onSwipeMove:t[5]||=e=>{let{x:t,y:n}=e.detail.delta,r=e.currentTarget;r.setAttribute(`data-swipe`,`move`),r.style.setProperty(`--radix-toast-swipe-move-x`,`${t}px`),r.style.setProperty(`--radix-toast-swipe-move-y`,`${n}px`)},onSwipeCancel:t[6]||=e=>{let t=e.currentTarget;t.setAttribute(`data-swipe`,`cancel`),t.style.removeProperty(`--radix-toast-swipe-move-x`),t.style.removeProperty(`--radix-toast-swipe-move-y`),t.style.removeProperty(`--radix-toast-swipe-end-x`),t.style.removeProperty(`--radix-toast-swipe-end-y`)},onSwipeEnd:t[7]||=e=>{let{x:t,y:n}=e.detail.delta,r=e.currentTarget;r.setAttribute(`data-swipe`,`end`),r.style.removeProperty(`--radix-toast-swipe-move-x`),r.style.removeProperty(`--radix-toast-swipe-move-y`),r.style.setProperty(`--radix-toast-swipe-end-x`,`${t}px`),r.style.setProperty(`--radix-toast-swipe-end-y`,`${n}px`),a.value=!1}}),{default:z(({remaining:t,duration:n})=>[W(e.$slots,`default`,{remaining:t,duration:n,open:R(a)})]),_:3},16,[`open`,`type`,`as`,`as-child`,`duration`])]),_:3},8,[`present`]))}}),ux=E({__name:`ToastPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),dx=E({__name:`ToastAnnounceExclude`,props:{altText:{},asChild:{type:Boolean},as:{}},setup(e){return(e,t)=>(P(),U(R(Q),{as:e.as,"as-child":e.asChild,"data-radix-toast-announce-exclude":``,"data-radix-toast-announce-alt":e.altText||void 0},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-radix-toast-announce-alt`]))}}),fx=E({__name:`ToastClose`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=ox(),{forwardRef:r}=X();return(e,i)=>(P(),U(dx,{"as-child":``},{default:z(()=>[A(R(Q),k(t,{ref:R(r),type:e.as===`button`?`button`:void 0,onClick:i[0]||=e=>R(n).onClose()}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`])]),_:3}))}}),px=E({__name:`ToastAction`,props:{altText:{},asChild:{type:Boolean},as:{}},setup(e){if(!e.altText)throw Error("Missing prop `altText` expected on `ToastAction`");let{forwardRef:t}=X();return(e,n)=>e.altText?(P(),U(dx,{key:0,"alt-text":e.altText,"as-child":``},{default:z(()=>[A(fx,{ref:R(t),as:e.as,"as-child":e.asChild},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`as`,`as-child`])]),_:3},8,[`alt-text`])):O(``,!0)}}),mx=E({__name:`FocusProxy`,emits:[`focusFromOutsideViewport`],setup(e,{emit:t}){let n=t,r=Kb();return(e,t)=>(P(),U(R(mu),{"aria-hidden":`true`,tabindex:`0`,style:{position:`fixed`},onFocus:t[0]||=e=>{var t;let i=e.relatedTarget;!((t=R(r).viewport.value)!=null&&t.contains(i))&&n(`focusFromOutsideViewport`)}},{default:z(()=>[W(e.$slots,`default`)]),_:3}))}}),hx=E({inheritAttrs:!1,__name:`ToastViewport`,props:{hotkey:{default:()=>[`F8`]},label:{type:[String,Function],default:`Notifications ({hotkey})`},asChild:{type:Boolean},as:{default:`ol`}},setup(e){let t=e,{hotkey:n,label:r}=L(t),{forwardRef:i,currentElement:a}=X(),{createCollection:o}=os(),s=o(a),c=Kb(),l=G(()=>c.toastCount.value>0),u=I(),d=I(),f=G(()=>n.value.join(`+`).replace(/Key/g,``).replace(/Digit/g,``));ko(n.value,()=>{a.value.focus()}),S(()=>{c.onViewportChange(a.value)}),H(e=>{let t=a.value;if(l.value&&t){let n=()=>{if(!c.isClosePausedRef.value){let e=new CustomEvent($b);t.dispatchEvent(e),c.isClosePausedRef.value=!0}},r=()=>{if(c.isClosePausedRef.value){let e=new CustomEvent(ex);t.dispatchEvent(e),c.isClosePausedRef.value=!1}},i=e=>{!t.contains(e.relatedTarget)&&r()},a=()=>{t.contains(Y())||r()},o=e=>{var n,r,i;let a=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!a){let a=Y(),o=e.shiftKey;if(e.target===t&&o){(n=u.value)==null||n.focus();return}let s=p({tabbingDirection:o?`backwards`:`forwards`}),c=s.findIndex(e=>e===a);Oc(s.slice(c+1))?e.preventDefault():o?(r=u.value)==null||r.focus():(i=d.value)==null||i.focus()}};t.addEventListener(`focusin`,n),t.addEventListener(`focusout`,i),t.addEventListener(`pointermove`,n),t.addEventListener(`pointerleave`,a),t.addEventListener(`keydown`,o),window.addEventListener(`blur`,n),window.addEventListener(`focus`,r),e(()=>{t.removeEventListener(`focusin`,n),t.removeEventListener(`focusout`,i),t.removeEventListener(`pointermove`,n),t.removeEventListener(`pointerleave`,a),t.removeEventListener(`keydown`,o),window.removeEventListener(`blur`,n),window.removeEventListener(`focus`,r)})}});function p({tabbingDirection:e}){let t=s.value.map(t=>{let n=[t,...Ac(t)];return e===`forwards`?n:n.reverse()});return(e===`forwards`?t.reverse():t).flat()}return(e,t)=>(P(),U(R(wc),{role:`region`,"aria-label":typeof R(r)==`string`?R(r).replace(`{hotkey}`,f.value):R(r)(f.value),tabindex:`-1`,style:ke({pointerEvents:l.value?void 0:`none`})},{default:z(()=>[l.value?(P(),U(mx,{key:0,ref:e=>{u.value=R(To)(e)},onFocusFromOutsideViewport:t[0]||=()=>{let e=p({tabbingDirection:`forwards`});R(Oc)(e)}},null,512)):O(``,!0),A(R(Q),k({ref:R(i),tabindex:`-1`,as:e.as,"as-child":e.asChild},e.$attrs),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`as`,`as-child`]),l.value?(P(),U(mx,{key:1,ref:e=>{d.value=R(To)(e)},onFocusFromOutsideViewport:t[1]||=()=>{let e=p({tabbingDirection:`backwards`});R(Oc)(e)}},null,512)):O(``,!0)]),_:3},8,[`aria-label`,`style`]))}}),gx=E({__name:`ToastTitle`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),_x=E({__name:`ToastDescription`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(Q),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),vx=E({__name:`Toggle`,props:{defaultValue:{type:Boolean},pressed:{type:Boolean,default:void 0},disabled:{type:Boolean,default:!1},asChild:{type:Boolean},as:{default:`button`}},emits:[`update:pressed`],setup(e,{emit:t}){let n=e,r=t;X();let i=J(n,`pressed`,r,{defaultValue:n.defaultValue,passive:n.pressed===void 0});function a(){i.value=!i.value}let o=G(()=>i.value?`on`:`off`);return(e,t)=>(P(),U(R(Q),{type:e.as===`button`?`button`:void 0,"as-child":n.asChild,as:e.as,"aria-pressed":R(i),"data-state":o.value,"data-disabled":e.disabled?``:void 0,disabled:e.disabled,onClick:a},{default:z(()=>[W(e.$slots,`default`,{pressed:R(i)})]),_:3},8,[`type`,`as-child`,`as`,`aria-pressed`,`data-state`,`data-disabled`,`disabled`]))}}),[yx,bx]=q(`ToggleGroupRoot`),xx=E({__name:`ToggleGroupRoot`,props:{rovingFocus:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},orientation:{},dir:{},loop:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{loop:i,rovingFocus:a,disabled:o,dir:s}=L(n),c=cs(s),{forwardRef:l}=X(),{modelValue:u,changeModelValue:d,isSingle:f}=tc(n,r);return bx({isSingle:f,modelValue:u,changeModelValue:d,dir:c,orientation:n.orientation,loop:i,rovingFocus:a,disabled:o}),(e,t)=>(P(),U(j(R(a)?R(pd):R(Q)),{"as-child":``,orientation:R(a)?e.orientation:void 0,dir:R(c),loop:R(a)?R(i):void 0},{default:z(()=>[A(R(Q),{ref:R(l),role:`group`,"as-child":e.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`,{modelValue:R(u)})]),_:3},8,[`as-child`,`as`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Sx=E({__name:`ToggleGroupItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=yx(),r=G(()=>{var e;return(e=n.disabled)?.value||t.disabled}),i=G(()=>{var e;return(e=n.modelValue.value)?.includes(t.value)}),a=G(()=>{var e;return n.isSingle.value?n.modelValue.value===t.value:(e=n.modelValue.value)?.includes(t.value)}),{forwardRef:o}=X();return(e,s)=>(P(),U(j(R(n).rovingFocus.value?R(md):R(Q)),{"as-child":``,focusable:!r.value,active:i.value},{default:z(()=>[A(R(vx),k(t,{ref:R(o),disabled:r.value,pressed:a.value,"onUpdate:pressed":s[0]||=t=>R(n).changeModelValue(e.value)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`disabled`,`pressed`])]),_:3},8,[`focusable`,`active`]))}}),[Cx,wx]=q(`ToolbarRoot`),Tx=E({__name:`ToolbarRoot`,props:{orientation:{default:`horizontal`},dir:{},loop:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{orientation:n,dir:r}=L(t),i=cs(r),{forwardRef:a}=X();return wx({orientation:n,dir:i}),(e,t)=>(P(),U(R(pd),{"as-child":``,orientation:R(n),dir:R(i),loop:e.loop},{default:z(()=>[A(R(Q),{ref:R(a),role:`toolbar`,"aria-orientation":R(n),"as-child":e.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`aria-orientation`,`as-child`,`as`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),Ex=E({__name:`ToolbarButton`,props:{disabled:{type:Boolean},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,{forwardRef:n}=X();return(e,r)=>(P(),U(R(md),{"as-child":``,focusable:!e.disabled},{default:z(()=>[A(R(Q),k({ref:R(n),type:e.as===`button`?`button`:void 0},t),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`type`])]),_:3},8,[`focusable`]))}}),Dx=E({__name:`ToolbarLink`,props:{asChild:{type:Boolean},as:{default:`a`}},setup(e){let t=e,{forwardRef:n}=X();return(e,r)=>(P(),U(R(md),{"as-child":``,focusable:``},{default:z(()=>[A(R(Q),k(t,{ref:R(n),onKeydown:r[0]||=e=>{var t;e.key===` `&&((t=e.currentTarget)==null||t.click())}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3}))}}),Ox=E({__name:`ToolbarToggleGroup`,props:{rovingFocus:{type:Boolean},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},asChild:{type:Boolean},as:{},type:{},modelValue:{},defaultValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,i=Cx(),a=ls(r);return X(),(e,t)=>(P(),U(R(xx),k({...n,...R(a)},{"data-orientation":R(i).orientation.value,dir:R(i).dir.value,"roving-focus":!1}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`data-orientation`,`dir`]))}}),kx=E({__name:`ToolbarToggleItem`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X();return(e,r)=>(P(),U(Ex,{"as-child":``},{default:z(()=>[A(R(Sx),k(t,{ref:R(n)}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16)]),_:3}))}}),Ax=E({__name:`ToolbarSeparator`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e,n=Cx();return X(),(e,r)=>(P(),U(gv,{orientation:R(n).orientation.value,"as-child":t.asChild,as:e.as},{default:z(()=>[W(e.$slots,`default`)]),_:3},8,[`orientation`,`as-child`,`as`]))}}),jx=`tooltip.open`,[Mx,Nx]=q(`TooltipProvider`),Px=E({inheritAttrs:!1,__name:`TooltipProvider`,props:{delayDuration:{default:700},skipDelayDuration:{default:300},disableHoverableContent:{type:Boolean,default:!1},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean,default:!1}},setup(e){let t=e,{delayDuration:n,skipDelayDuration:r,disableHoverableContent:i,disableClosingTrigger:a,ignoreNonKeyboardFocus:o,disabled:s}=L(t);X();let c=I(!0),l=I(!1),{start:u,stop:d}=So(()=>{c.value=!0},r,{immediate:!1});return Nx({isOpenDelayed:c,delayDuration:n,onOpen(){d(),c.value=!1},onClose(){u()},isPointerInTransitRef:l,disableHoverableContent:i,disableClosingTrigger:a,disabled:s,ignoreNonKeyboardFocus:o}),(e,t)=>W(e.$slots,`default`)}}),[Fx,Ix]=q(`TooltipRoot`),Lx=E({__name:`TooltipRoot`,props:{defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},delayDuration:{default:void 0},disableHoverableContent:{type:Boolean,default:void 0},disableClosingTrigger:{type:Boolean,default:void 0},disabled:{type:Boolean,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t;X();let i=Mx(),a=G(()=>n.disableHoverableContent??i.disableHoverableContent.value),o=G(()=>n.disableClosingTrigger??i.disableClosingTrigger.value),s=G(()=>n.disabled??i.disabled.value),c=G(()=>n.delayDuration??i.delayDuration.value),l=G(()=>n.ignoreNonKeyboardFocus??i.ignoreNonKeyboardFocus.value),u=J(n,`open`,r,{defaultValue:n.defaultOpen,passive:n.open===void 0});N(u,e=>{i.onClose&&(e?(i.onOpen(),document.dispatchEvent(new CustomEvent(jx))):i.onClose())});let d=I(!1),f=I(),p=G(()=>u.value?d.value?`delayed-open`:`instant-open`:`closed`),{start:m,stop:h}=So(()=>{d.value=!0,u.value=!0},c,{immediate:!1});function g(){h(),d.value=!1,u.value=!0}function _(){h(),u.value=!1}function v(){m()}return Ix({contentId:``,open:u,stateAttribute:p,trigger:f,onTriggerChange(e){f.value=e},onTriggerEnter(){i.isOpenDelayed.value?v():g()},onTriggerLeave(){a.value?_():h()},onOpen:g,onClose:_,disableHoverableContent:a,disableClosingTrigger:o,disabled:s,ignoreNonKeyboardFocus:l}),(e,t)=>(P(),U(R(tu),null,{default:z(()=>[W(e.$slots,`default`,{open:R(u)})]),_:3}))}}),Rx=E({__name:`TooltipTrigger`,props:{asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e,n=Fx(),r=Mx();n.contentId||=Z(void 0,`radix-vue-tooltip-content`);let{forwardRef:i,currentElement:a}=X(),o=I(!1),s=I(!1),c=G(()=>n.disabled.value?{}:{click:h,focus:p,pointermove:d,pointerleave:f,pointerdown:u,blur:m});S(()=>{n.onTriggerChange(a.value)});function l(){setTimeout(()=>{o.value=!1},1)}function u(){o.value=!0,document.addEventListener(`pointerup`,l,{once:!0})}function d(e){e.pointerType!==`touch`&&!s.value&&!r.isPointerInTransitRef.value&&(n.onTriggerEnter(),s.value=!0)}function f(){n.onTriggerLeave(),s.value=!1}function p(e){var t,r;o.value||n.ignoreNonKeyboardFocus.value&&!((r=(t=e.target).matches)!=null&&r.call(t,`:focus-visible`))||n.onOpen()}function m(){n.onClose()}function h(){n.disableClosingTrigger.value||n.onClose()}return(e,r)=>(P(),U(R(nu),{"as-child":``},{default:z(()=>[A(R(Q),k({ref:R(i),"aria-describedby":R(n).open.value?R(n).contentId:void 0,"data-state":R(n).stateAttribute.value,as:e.as,"as-child":t.asChild,"data-grace-area-trigger":``},y(c.value)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16,[`aria-describedby`,`data-state`,`as`,`as-child`])]),_:3}))}}),zx=E({__name:`TooltipContentImpl`,props:{ariaLabel:{},asChild:{type:Boolean},as:{},side:{default:`top`},sideOffset:{default:0},align:{default:`center`},alignOffset:{},avoidCollisions:{type:Boolean,default:!0},collisionBoundary:{default:()=>[]},collisionPadding:{default:0},arrowPadding:{default:0},sticky:{default:`partial`},hideWhenDetached:{type:Boolean,default:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=t,i=Fx(),{forwardRef:a}=X(),o=Ee(),s=G(()=>{var e;return(e=o.default)?.call(o)}),c=G(()=>{var e;if(n.ariaLabel)return n.ariaLabel;let t=``;function r(e){typeof e.children==`string`&&e.type!==we?t+=e.children:Array.isArray(e.children)&&e.children.forEach(e=>r(e))}return(e=s.value)==null||e.forEach(e=>r(e)),t}),l=G(()=>{let{ariaLabel:e,...t}=n;return t});return S(()=>{Do(window,`scroll`,e=>{let t=e.target;t!=null&&t.contains(i.trigger.value)&&i.onClose()}),Do(window,jx,i.onClose)}),(e,t)=>(P(),U(R(Cc),{"as-child":``,"disable-outside-pointer-events":!1,onEscapeKeyDown:t[0]||=e=>r(`escapeKeyDown`,e),onPointerDownOutside:t[1]||=e=>{var t;R(i).disableClosingTrigger.value&&(t=R(i).trigger.value)!=null&&t.contains(e.target)&&e.preventDefault(),r(`pointerDownOutside`,e)},onFocusOutside:t[2]||=m(()=>{},[`prevent`]),onDismiss:t[3]||=e=>R(i).onClose()},{default:z(()=>[A(R(lu),k({ref:R(a),"data-state":R(i).stateAttribute.value},{...e.$attrs,...l.value},{style:{"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`}}),{default:z(()=>[W(e.$slots,`default`),A(R(mu),{id:R(i).contentId,role:`tooltip`},{default:z(()=>[F(Oe(c.value),1)]),_:1},8,[`id`])]),_:3},16,[`data-state`])]),_:3}))}}),Bx=E({__name:`TooltipContentHoverable`,props:{ariaLabel:{},asChild:{type:Boolean},as:{},side:{},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean}},setup(e){let t=ms(e),{forwardRef:n,currentElement:r}=X(),{trigger:i,onClose:a}=Fx(),o=Mx(),{isPointerInTransit:s,onPointerExit:c}=gs(i,r);return o.isPointerInTransitRef=s,c(()=>{a()}),(e,r)=>(P(),U(zx,k({ref:R(n)},R(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Vx=E({__name:`TooltipContent`,props:{forceMount:{type:Boolean},ariaLabel:{},asChild:{type:Boolean},as:{},side:{default:`top`},sideOffset:{},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=t,i=Fx(),a=hs(n,r),{forwardRef:o}=X();return(e,t)=>(P(),U(R(Xs),{present:e.forceMount||R(i).open.value},{default:z(()=>[(P(),U(j(R(i).disableHoverableContent.value?zx:Bx),k({ref:R(o)},R(a)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Hx=E({__name:`TooltipArrow`,props:{width:{default:10},height:{default:5},asChild:{type:Boolean},as:{default:`svg`}},setup(e){let t=e;return X(),(e,n)=>(P(),U(R(pu),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}}),Ux=E({__name:`TooltipPortal`,props:{to:{},disabled:{type:Boolean},forceMount:{type:Boolean}},setup(e){let t=e;return(e,n)=>(P(),U(R(hc),K(V(t)),{default:z(()=>[W(e.$slots,`default`)]),_:3},16))}});function Wx(e){return e.reduce((e,t)=>(e.push(t),t.children&&e.push(...Wx(t.children)),e),[])}const[Gx,Kx]=q(`TreeRoot`),qx=E({__name:`TreeRoot`,props:{modelValue:{},defaultValue:{},items:{},expanded:{},defaultExpanded:{},getKey:{},getChildren:{type:Function,default:e=>e.children},selectionBehavior:{default:`toggle`},multiple:{type:Boolean},dir:{},disabled:{type:Boolean},propagateSelect:{type:Boolean},asChild:{type:Boolean},as:{default:`ul`}},emits:[`update:modelValue`,`update:expanded`],setup(e,{emit:t}){let n=e,r=t,{items:i,multiple:a,disabled:o,propagateSelect:s,dir:c}=L(n),{handleTypeaheadSearch:l}=Rs(),u=cs(c),d=I(),f=I(!1),p=eo(),g=J(n,`modelValue`,r,{defaultValue:n.defaultValue??(a.value?[]:void 0),passive:n.modelValue===void 0,deep:!0}),_=J(n,`expanded`,r,{defaultValue:n.defaultExpanded??[],passive:n.expanded===void 0,deep:!0}),{onSelectItem:v,handleMultipleReplace:y}=Ps(g,n),b=G(()=>a.value&&Array.isArray(g.value)?g.value.map(e=>n.getKey(e)):[n.getKey(g.value??{})]);function x(e,t=1,r){return e.reduce((i,a,o)=>{let s=n.getKey(a),c=n.getChildren(a),l=_.value.includes(s),u={_id:s,value:a,index:o,level:t,parentItem:r,hasChildren:!!c,bind:{value:a,level:t,"aria-setsize":e.length,"aria-posinset":o+1}};return i.push(u),c&&l&&i.push(...x(c,t+1,a)),i},[])}let S=G(()=>{let e=n.items;return _.value.map(e=>e),x(e??[])});function C(e){var t;if(f.value)p.trigger(e);else{let n=(t=d.value)?.getItems().map(e=>e.ref);l(e.key,n)}}function w(e){if(f.value)return;let t=od[e.key];T(()=>{var e;y(t,Y(),(e=d.value)?.getItems,S.value.map(e=>e.value))})}return Kx({modelValue:g,selectedKeys:b,onSelect:e=>{var t;let r=t=>n.getKey(t??{})===n.getKey(e),i=n.multiple&&Array.isArray(g.value)?(t=g.value)?.findIndex(r)!==-1:void 0;if(v(e,r),n.propagateSelect&&n.multiple&&Array.isArray(g.value)){let t=Wx(n.getChildren(e)??[]);i?g.value=[...g.value].filter(e=>!t.some(t=>n.getKey(e??{})===n.getKey(t))):g.value=[...g.value,...t]}},expanded:_,onToggle(e){if(!(e&&n.getChildren(e)))return;let t=n.getKey(e)??e;_.value.includes(t)?_.value=_.value.filter(e=>e!==t):_.value.push(t)},getKey:n.getKey,getChildren:n.getChildren,items:i,expandedItems:S,disabled:o,multiple:a,dir:u,propagateSelect:s,isVirtual:f,virtualKeydownHook:p,handleMultipleReplace:y}),(e,t)=>(P(),U(R(pd),{ref_key:`rovingFocusGroupRef`,ref:d,"as-child":``,orientation:`vertical`,dir:R(u)},{default:z(()=>[A(R(Q),{role:`tree`,as:e.as,"as-child":e.asChild,"aria-multiselectable":R(a)?!0:void 0,onKeydown:[C,h(m(w,[`shift`]),[`up`,`down`])]},{default:z(()=>[W(e.$slots,`default`,{flattenItems:S.value,modelValue:R(g),expanded:R(_)})]),_:3},8,[`as`,`as-child`,`aria-multiselectable`,`onKeydown`])]),_:3},8,[`dir`]))}}),Jx=`tree.select`,Yx=`tree.toggle`,Xx=E({inheritAttrs:!1,__name:`TreeItem`,props:{value:{},level:{},asChild:{type:Boolean},as:{default:`li`}},emits:[`select`,`toggle`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=Gx(),{getItems:o}=Su(),s=G(()=>!!a.getChildren(r.value)),c=G(()=>{let e=a.getKey(r.value);return a.expanded.value.includes(e)}),l=G(()=>{let e=a.getKey(r.value);return a.selectedKeys.value.includes(e)}),u=G(()=>{if(a.propagateSelect.value&&l.value&&s.value&&Array.isArray(a.modelValue.value))return!Wx(a.getChildren(r.value)||[]).every(e=>a.modelValue.value.find(t=>a.getKey(t)===a.getKey(e)))});function d(e){if(s.value)if(c.value){let e=o().map(e=>e.ref),t=Y(),n=e.indexOf(t),i=[...e].slice(n).find(e=>Number(e.getAttribute(`data-indent`))===r.level+1);i&&i.focus()}else v(e)}function f(e){if(c.value)v(e);else{let e=o().map(e=>e.ref),t=Y(),n=e.indexOf(t),i=[...e].slice(0,n).reverse().find(e=>Number(e.getAttribute(`data-indent`))===r.level-1);i&&i.focus()}}async function p(e){i(`select`,e),!(e!=null&&e.defaultPrevented)&&a.onSelect(r.value)}async function g(e){i(`toggle`,e),!(e!=null&&e.defaultPrevented)&&a.onToggle(r.value)}async function _(e){if(!e)return;let t={originalEvent:e,value:r.value,isExpanded:c.value,isSelected:l.value};Sa(Jx,p,t)}async function v(e){if(!e)return;let t={originalEvent:e,value:r.value,isExpanded:c.value,isSelected:l.value};Sa(Yx,g,t)}return t({isExpanded:c,isSelected:l,isIndeterminate:u,handleToggle:()=>a.onToggle(r.value),handleSelect:()=>a.onSelect(r.value)}),(e,t)=>(P(),U(R(md),{"as-child":``,value:e.value,"allow-shift-key":``},{default:z(()=>[A(R(Q),k(e.$attrs,{role:`treeitem`,as:e.as,"as-child":e.asChild,"aria-selected":l.value,"aria-expanded":s.value?c.value:void 0,"aria-level":e.level,"data-indent":e.level,"data-selected":l.value?``:void 0,"data-expanded":c.value?``:void 0,onKeydown:[h(m(_,[`self`,`prevent`]),[`enter`,`space`]),t[0]||=h(m(e=>R(a).dir.value===`ltr`?d(e):f(e),[`prevent`]),[`right`]),t[1]||=h(m(e=>R(a).dir.value===`ltr`?f(e):d(e),[`prevent`]),[`left`])],onClick:t[2]||=m(e=>{_(e),v(e)},[`stop`])}),{default:z(()=>[W(e.$slots,`default`,{isExpanded:c.value,isSelected:l.value,isIndeterminate:u.value,handleSelect:()=>R(a).onSelect(e.value),handleToggle:()=>R(a).onToggle(e.value)})]),_:3},16,[`as`,`as-child`,`aria-selected`,`aria-expanded`,`aria-level`,`data-indent`,`data-selected`,`data-expanded`,`onKeydown`])]),_:3},8,[`value`]))}}),Zx=E({__name:`TreeVirtualizer`,props:{estimateSize:{},textContent:{type:Function}},setup(e){let t=e,n=Ee(),r=Gx(),i=zo(),{getItems:a}=Su(),o=vo(``,1e3),s=G(()=>{let e=e=>t.textContent?t.textContent(e):e.toString().toLowerCase();return r.expandedItems.value.map((t,n)=>({index:n,textContent:e(t.value)}))});r.isVirtual.value=!0;let c=G(()=>{let e=i.value;if(e){let t=window.getComputedStyle(e);return{start:Number.parseFloat(t.paddingBlockStart||t.paddingTop),end:Number.parseFloat(t.paddingBlockEnd||t.paddingBottom)}}else return{start:0,end:0}}),l=Im({get scrollPaddingStart(){return c.value.start},get scrollPaddingEnd(){return c.value.end},get count(){return r.expandedItems.value.length??0},get horizontal(){return!1},getItemKey(e){return e+r.getKey(r.expandedItems.value[e].value)},estimateSize(){return t.estimateSize??28},getScrollElement(){return i.value},overscan:12}),u=G(()=>l.value.getVirtualItems().map(e=>({item:e,is:ge(n.default({item:r.expandedItems.value[e.index],virtualizer:l.value,virtualItem:e})[0],{"data-index":e.index,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})})));function d(e){l.value.scrollToIndex(e,{align:`start`}),requestAnimationFrame(()=>{let t=i.value.querySelector(`[data-index="${e}"]`);t instanceof HTMLElement&&t.focus()})}return r.virtualKeydownHook.on(e=>{var t;let n=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!n)return;let i=od[e.key];if([`first`,`last`].includes(i)){e.preventDefault();let t=i===`first`?0:r.expandedItems.value.length-1;l.value.scrollToIndex(t),requestAnimationFrame(()=>{let e=a();(i===`first`?e[0]:e[e.length-1]).ref.focus()})}else if(i===`prev`&&e.key!==`ArrowUp`){let e=Y(),t=Number(e.getAttribute(`data-index`)),n=Number(e.getAttribute(`data-indent`)),i=r.expandedItems.value.slice(0,t).map((e,t)=>({...e,index:t})).reverse().find(e=>e.level===n-1);i&&d(i.index)}else if(!i&&!n){o.value+=e.key;let n=Number((t=Y())?.getAttribute(`data-index`)),r=s.value[n].textContent,i=s.value.map(e=>e.textContent),a=Bs(i,o.value,r),c=s.value.find(e=>e.textContent===a);c&&d(c.index)}T(()=>{e.shiftKey&&i&&r.handleMultipleReplace(i,Y(),a,r.expandedItems.value.map(e=>e.value))})}),(e,t)=>(P(),B(`div`,{"data-radix-vue-virtualizer":``,style:ke({position:`relative`,width:`100%`,height:`${R(l).getTotalSize()}px`})},[(P(!0),B(Se,null,ye(u.value,({is:e,item:t})=>(P(),U(j(e),{key:t.key}))),128))],4))}}),Qx=E({__name:`Viewport`,props:{nonce:{},asChild:{type:Boolean},as:{}},setup(e){let t=e,{forwardRef:n}=X(),{nonce:r}=L(t),i=zu(r);return(e,r)=>(P(),B(Se,null,[A(R(Q),k({...e.$attrs,...t},{ref:R(n),"data-radix-viewport":``,role:`presentation`,style:{position:`relative`,flex:1,overflow:`auto`}}),{default:z(()=>[W(e.$slots,`default`)]),_:3},16),A(R(Q),{as:`style`,nonce:R(i)},{default:z(()=>[F(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-radix-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-radix-viewport]::-webkit-scrollbar { display: none; } `)]),_:1},8,[`nonce`])],64))}});export{rl as b,pc as c,ll as d,dl as e,_l as f,gl as g,Rx as h,Vx as i,gc as j,vl as k,Hx as l,sl as m,ml as n,al as o,yl as p,Ux as q,Lx as r,hl as s,Px as t}; \ No newline at end of file diff --git a/assets/duckdb-mvp-D888HGlq.js b/assets/duckdb-mvp-D888HGlq.js deleted file mode 100644 index 149c3b85e53fd0f3fe3ea5162a6a26d8e815eaea..0000000000000000000000000000000000000000 --- a/assets/duckdb-mvp-D888HGlq.js +++ /dev/null @@ -1 +0,0 @@ -var e=`/assets/duckdb-eh-BJOC5S4x.wasm`,t=`/assets/duckdb-mvp-8HYqhb4i.wasm`;export{e as duckdb_eh_default,t as duckdb_mvp_default}; \ No newline at end of file diff --git a/assets/duckdb-mvp-D8OBsaZy.js b/assets/duckdb-mvp-D8OBsaZy.js new file mode 100644 index 0000000000000000000000000000000000000000..cf6c436aacf48bca02d534c600bee32f8fbfe015 --- /dev/null +++ b/assets/duckdb-mvp-D8OBsaZy.js @@ -0,0 +1 @@ +var e=`/assets/duckdb-eh-BJOC5S4x.wasm`,t=`/assets/duckdb-mvp-8HYqhb4i.wasm`;export{t as b,e as c}; \ No newline at end of file diff --git a/assets/effect-DBSVVF8G-BCfh_Z9z.js b/assets/effect-DBSVVF8G-BCfh_Z9z.js deleted file mode 100644 index f9f9ac049e0ff204299c5c2cdb9930128823c4be..0000000000000000000000000000000000000000 --- a/assets/effect-DBSVVF8G-BCfh_Z9z.js +++ /dev/null @@ -1 +0,0 @@ -import{__vitePreload as e,tryImport as t}from"./index-iQVr9nx1.js";const n=async()=>{let{JSONSchema:n}=await t(e(()=>import(`./__vite-optional-peer-dep_effect_xsschema-HpGugLyI.js`),[]),`effect`);return e=>n.make(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/effect-DBSVVF8G-CevZ3D-J.js b/assets/effect-DBSVVF8G-CevZ3D-J.js new file mode 100644 index 0000000000000000000000000000000000000000..50bbc718aa5b2c42739d475fed7d5a6ebd11b170 --- /dev/null +++ b/assets/effect-DBSVVF8G-CevZ3D-J.js @@ -0,0 +1 @@ +import{aI as e,m as t}from"./index-C9kcCpP-.js";const n=async()=>{let{JSONSchema:n}=await t(e(()=>import(`./__vite-optional-peer-dep_effect_xsschema-O4ggYyu8.js`),[]),`effect`);return e=>n.make(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/elevenlabs-DQkIgILi.js b/assets/elevenlabs-DQkIgILi.js deleted file mode 100644 index cb65fe80e5ea26aac3f41561306e71251d8196d7..0000000000000000000000000000000000000000 --- a/assets/elevenlabs-DQkIgILi.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldCheckbox_default as e,FieldRange_default as t,SpeechPlayground_default as n,SpeechProviderSettings_default as r,computed as i,createBaseVNode as a,createBlock as o,createVNode as s,defineComponent as c,onMounted as l,openBlock as u,ref as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useSpeechStore as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b={flex:`~ col gap-4`},x=`elevenlabs`,S=`eleven_multilingual_v2`;var C=c({__name:`elevenlabs`,setup(c){let y={similarityBoost:.75,stability:.5,speed:1,style:0,useSpeakerBoost:!0},C=d(0),w=d(1),T=d(0),E=d(0),D=d(.5),O=d(.75),k=d(!1),A=g(),j=h(),{providers:M}=f(j),{t:N}=m(),P=i(()=>{var e;return!!(e=M.value[x])?.apiKey}),F=i(()=>A.availableVoices[x]||[]);async function I(e,t,n){let r=j.getProviderInstance(x);if(!r)throw Error(`Failed to initialize speech provider`);let i=j.getProviderConfig(x),a=i.model||S;return await A.speech(r,a,e,t,{...i,...y})}return l(async()=>{let e=j.getProviderConfig(x),t=j.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await A.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)}),_(C,async()=>{let e=j.getProviderConfig(x);e.pitch=C.value}),_(w,async()=>{let e=j.getProviderConfig(x);e.speed=w.value}),_(T,async()=>{let e=j.getProviderConfig(x);e.volume=T.value}),_(E,async()=>{let e=j.getProviderConfig(x);e.style=E.value}),_(D,async()=>{let e=j.getProviderConfig(x);e.stability=D.value}),_(O,async()=>{let e=j.getProviderConfig(x);e.similarityBoost=O.value}),_(k,async()=>{let e=j.getProviderConfig(x);e.useSpeakerBoost=k.value}),_(M,async()=>{let e=j.getProviderConfig(x),t=j.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await A.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)},{immediate:!0}),(i,c)=>(u(),o(p(r),{"provider-id":x,"default-model":S,"additional-settings":y},{"voice-settings":v(()=>[a(`div`,b,[s(p(t),{modelValue:C.value,"onUpdate:modelValue":c[0]||=e=>C.value=e,label:p(N)(`settings.pages.providers.provider.common.fields.field.pitch.label`),description:p(N)(`settings.pages.providers.provider.common.fields.field.pitch.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),s(p(t),{modelValue:w.value,"onUpdate:modelValue":c[1]||=e=>w.value=e,label:p(N)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:p(N)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`]),s(p(t),{modelValue:T.value,"onUpdate:modelValue":c[2]||=e=>T.value=e,label:p(N)(`settings.pages.providers.provider.common.fields.field.volume.label`),description:p(N)(`settings.pages.providers.provider.common.fields.field.volume.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),s(p(t),{modelValue:E.value,"onUpdate:modelValue":c[3]||=e=>E.value=e,label:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.style.label`),description:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.style.description`),min:0,max:1,step:.01},null,8,[`modelValue`,`label`,`description`]),s(p(t),{modelValue:D.value,"onUpdate:modelValue":c[4]||=e=>D.value=e,label:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.stability.label`),description:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.stability.description`),min:0,max:1,step:.01},null,8,[`modelValue`,`label`,`description`]),s(p(t),{modelValue:O.value,"onUpdate:modelValue":c[5]||=e=>O.value=e,label:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.simularity-boost.label`),description:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.simularity-boost.description`),min:0,max:1,step:.01},null,8,[`modelValue`,`label`,`description`]),s(p(e),{modelValue:k.value,"onUpdate:modelValue":c[6]||=e=>k.value=e,label:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.speaker-boost.label`),description:p(N)(`settings.pages.providers.provider.elevenlabs.fields.field.speaker-boost.description`)},null,8,[`modelValue`,`label`,`description`])])]),playground:v(()=>[s(p(n),{"available-voices":F.value,"generate-speech":I,"api-key-configured":P.value,"default-text":`Hello! This is a test of the ElevenLabs voice synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof y==`function`&&y(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/elevenlabs-DzuUHR4k.js b/assets/elevenlabs-DzuUHR4k.js new file mode 100644 index 0000000000000000000000000000000000000000..475f7a1df97b4b000af5aa229875d79e03ee1a4c --- /dev/null +++ b/assets/elevenlabs-DzuUHR4k.js @@ -0,0 +1 @@ +import{K as e,Q as t,a8 as n,aJ as r,ab as i,b as a,d3 as o,d7 as s,dB as c,dF as l,dH as u,dK as d,dV as f,da as p,dj as m,dn as h,dv as g,g as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b={flex:`~ col gap-4`},x=`elevenlabs`,S=`eleven_multilingual_v2`;var C=s({__name:`elevenlabs`,setup(s){let y={similarityBoost:.75,stability:.5,speed:1,style:0,useSpeakerBoost:!0},C=d(0),w=d(1),T=d(0),E=d(0),D=d(.5),O=d(.75),k=d(!1),A=_(),j=v(),{providers:M}=r(j),{t:N}=t(),P=g(()=>!!M.value[x]?.apiKey),F=g(()=>A.availableVoices[x]||[]);async function I(e,t,n){let r=j.getProviderInstance(x);if(!r)throw Error(`Failed to initialize speech provider`);let i=j.getProviderConfig(x),a=i.model||S;return await A.speech(r,a,e,t,{...i,...y})}return o(async()=>{let e=j.getProviderConfig(x),t=j.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await A.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)}),l(C,async()=>{let e=j.getProviderConfig(x);e.pitch=C.value}),l(w,async()=>{let e=j.getProviderConfig(x);e.speed=w.value}),l(T,async()=>{let e=j.getProviderConfig(x);e.volume=T.value}),l(E,async()=>{let e=j.getProviderConfig(x);e.style=E.value}),l(D,async()=>{let e=j.getProviderConfig(x);e.stability=D.value}),l(O,async()=>{let e=j.getProviderConfig(x);e.similarityBoost=O.value}),l(k,async()=>{let e=j.getProviderConfig(x);e.useSpeakerBoost=k.value}),l(M,async()=>{let e=j.getProviderConfig(x),t=j.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await A.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)},{immediate:!0}),(t,r)=>(u(),h(f(a),{"provider-id":x,"default-model":S,"additional-settings":y},{"voice-settings":p(()=>[m(`div`,b,[c(f(n),{modelValue:C.value,"onUpdate:modelValue":r[0]||=e=>C.value=e,label:f(N)(`settings.pages.providers.provider.common.fields.field.pitch.label`),description:f(N)(`settings.pages.providers.provider.common.fields.field.pitch.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),c(f(n),{modelValue:w.value,"onUpdate:modelValue":r[1]||=e=>w.value=e,label:f(N)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:f(N)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`]),c(f(n),{modelValue:T.value,"onUpdate:modelValue":r[2]||=e=>T.value=e,label:f(N)(`settings.pages.providers.provider.common.fields.field.volume.label`),description:f(N)(`settings.pages.providers.provider.common.fields.field.volume.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),c(f(n),{modelValue:E.value,"onUpdate:modelValue":r[3]||=e=>E.value=e,label:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.style.label`),description:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.style.description`),min:0,max:1,step:.01},null,8,[`modelValue`,`label`,`description`]),c(f(n),{modelValue:D.value,"onUpdate:modelValue":r[4]||=e=>D.value=e,label:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.stability.label`),description:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.stability.description`),min:0,max:1,step:.01},null,8,[`modelValue`,`label`,`description`]),c(f(n),{modelValue:O.value,"onUpdate:modelValue":r[5]||=e=>O.value=e,label:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.simularity-boost.label`),description:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.simularity-boost.description`),min:0,max:1,step:.01},null,8,[`modelValue`,`label`,`description`]),c(f(i),{modelValue:k.value,"onUpdate:modelValue":r[6]||=e=>k.value=e,label:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.speaker-boost.label`),description:f(N)(`settings.pages.providers.provider.elevenlabs.fields.field.speaker-boost.description`)},null,8,[`modelValue`,`label`,`description`])])]),playground:p(()=>[c(f(e),{"available-voices":F.value,"generate-speech":I,"api-key-configured":P.value,"default-text":`Hello! This is a test of the ElevenLabs voice synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof y==`function`&&y(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/emotions-B6yfBv1x.js b/assets/emotions-B6yfBv1x.js new file mode 100644 index 0000000000000000000000000000000000000000..1617ff38331355525c32ac3e99b5431e2ec3da83 --- /dev/null +++ b/assets/emotions-B6yfBv1x.js @@ -0,0 +1 @@ +import"./Basic-D95BeH1T.js";import{b as e}from"./Textarea-CMwGMW-L.js";import{B as t,C as n,at as r,d7 as i,dB as a,dH as o,dK as s,dV as c,db as l,dj as u,dl as d,du as f,e1 as p}from"./index-C9kcCpP-.js";const m={flex:``,"flex-col":``,"gap-2":``,"p-2":``},h={flex:``,"flex-row":``,"gap-2":``},g={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},_={"w-full":``,flex:``,"flex-row":``,"gap-4":``},v={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``},y={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var b=i({__name:`emotions`,setup(i){let b=s(``),x=s([]),S=s([]),C=s(!1),w=n({handlers:[async e=>{S.value.push(e.data)}]}),T=t(w);function E(){C.value=!0;let e=b.value.split(``);for(let t of e)T.add(t);T.add(r),b.value=``,C.value=!1}return(t,n)=>(o(),l(`div`,m,[u(`div`,h,[a(c(e),{modelValue:b.value,"onUpdate:modelValue":n[0]||=e=>b.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:E},null,8,[`modelValue`]),u(`button`,g,p(C.value?`Processing...`:`Send`),1)]),u(`div`,_,[u(`div`,v,[n[1]||=u(`h3`,{"font-normal":``},` Messages `,-1),(o(!0),l(f,null,d(x.value,e=>(o(),l(`div`,{key:e},[u(`div`,null,p(e),1)]))),128))]),u(`div`,y,[n[2]||=u(`h3`,{"font-normal":``},` Emotions `,-1),(o(!0),l(f,null,d(S.value,e=>(o(),l(`div`,{key:e},[u(`div`,null,p(e),1)]))),128))])])]))}}),x=b;export{x as default}; \ No newline at end of file diff --git a/assets/emotions-Bvj1954O.js b/assets/emotions-Bvj1954O.js deleted file mode 100644 index 34522fce1c1d3690c759e11286b8a629542283ab..0000000000000000000000000000000000000000 --- a/assets/emotions-Bvj1954O.js +++ /dev/null @@ -1 +0,0 @@ -import"./Basic-BE3KxqAa.js";import{Textarea_default as e}from"./Textarea-BJEUAUG6.js";import{Fragment as t,createBaseVNode as n,createElementBlock as r,createVNode as i,defineComponent as a,llmInferenceEndToken as o,openBlock as s,ref as c,renderList as l,toDisplayString as u,unref as d,useEmotionsMessageQueue as f,useQueue as p}from"./index-iQVr9nx1.js";const m={flex:``,"flex-col":``,"gap-2":``,"p-2":``},h={flex:``,"flex-row":``,"gap-2":``},g={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},_={"w-full":``,flex:``,"flex-row":``,"gap-4":``},v={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``},y={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var b=a({__name:`emotions`,setup(a){let b=c(``),x=c([]),S=c([]),C=c(!1),w=p({handlers:[async e=>{S.value.push(e.data)}]}),T=f(w);function E(){C.value=!0;let e=b.value.split(``);for(let t of e)T.add(t);T.add(o),b.value=``,C.value=!1}return(a,o)=>(s(),r(`div`,m,[n(`div`,h,[i(d(e),{modelValue:b.value,"onUpdate:modelValue":o[0]||=e=>b.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:E},null,8,[`modelValue`]),n(`button`,g,u(C.value?`Processing...`:`Send`),1)]),n(`div`,_,[n(`div`,v,[o[1]||=n(`h3`,{"font-normal":``},` Messages `,-1),(s(!0),r(t,null,l(x.value,e=>(s(),r(`div`,{key:e},[n(`div`,null,u(e),1)]))),128))]),n(`div`,y,[o[2]||=n(`h3`,{"font-normal":``},` Emotions `,-1),(s(!0),r(t,null,l(S.value,e=>(s(),r(`div`,{key:e},[n(`div`,null,u(e),1)]))),128))])])]))}}),x=b;export{x as default}; \ No newline at end of file diff --git a/assets/esm-CGcXMJ5Z.js b/assets/esm-CGcXMJ5Z.js new file mode 100644 index 0000000000000000000000000000000000000000..6508d9059dafe09cc4854484e44cd85ea1955c5e --- /dev/null +++ b/assets/esm-CGcXMJ5Z.js @@ -0,0 +1,3 @@ +import{k as e}from"./index-C9kcCpP-.js";const t=Symbol(`Let zodToJsonSchema decide on which parser to use`),n={name:void 0,$refStrategy:`root`,basePath:[`#`],effectStrategy:`input`,pipeStrategy:`all`,dateStrategy:`format:date-time`,mapStrategy:`entries`,removeAdditionalStrategy:`passthrough`,allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:`definitions`,target:`jsonSchema7`,strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:`escape`,applyRegexFlags:!1,emailStrategy:`format:email`,base64Strategy:`contentEncoding:base64`,nameStrategy:`ref`,openAiAnyTypeName:`OpenAiAnyType`},r=e=>typeof e==`string`?{...n,name:e}:{...n,...e},i=e=>{let t=r(e),n=t.name===void 0?t.basePath:[...t.basePath,t.definitionPath,t.name];return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}};function a(e,t,n,r){r?.errorMessages&&n&&(e.errorMessage={...e.errorMessage,[t]:n})}function o(e,t,n,r,i){e[t]=n,a(e,t,r,i)}const s=(e,t)=>{let n=0;for(;n$(e.innerType._def,t);function m(e,t,n){let r=n??t.dateStrategy;if(Array.isArray(r))return{anyOf:r.map((n,r)=>m(e,t,n))};switch(r){case`string`:case`format:date-time`:return{type:`string`,format:`date-time`};case`format:date`:return{type:`string`,format:`date`};case`integer`:return h(e,t)}}const h=(e,t)=>{let n={type:`integer`,format:`unix-time`};if(t.target===`openApi3`)return n;for(let r of e.checks)switch(r.kind){case`min`:o(n,`minimum`,r.value,r.message,t);break;case`max`:o(n,`maximum`,r.value,r.message,t);break}return n};function g(e,t){return{...$(e.innerType._def,t),default:e.defaultValue()}}function _(e,t){return t.effectStrategy===`input`?$(e.schema._def,t):c(t)}function v(e){return{type:`string`,enum:Array.from(e.values)}}const y=e=>`type`in e&&e.type===`string`?!1:`allOf`in e;function b(e,t){let n=[$(e.left._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]}),$(e.right._def,{...t,currentPath:[...t.currentPath,`allOf`,`1`]})].filter(e=>!!e),r=t.target===`jsonSchema2019-09`?{unevaluatedProperties:!1}:void 0,i=[];return n.forEach(e=>{if(y(e))i.push(...e.allOf),e.unevaluatedProperties===void 0&&(r=void 0);else{let t=e;if(`additionalProperties`in e&&e.additionalProperties===!1){let{additionalProperties:n,...r}=e;t=r}else r=void 0;i.push(t)}}),i.length?{allOf:i,...r}:void 0}function x(e,t){let n=typeof e.value;return n!==`bigint`&&n!==`number`&&n!==`boolean`&&n!==`string`?{type:Array.isArray(e.value)?`array`:`object`}:t.target===`openApi3`?{type:n===`bigint`?`integer`:n,enum:[e.value]}:{type:n===`bigint`?`integer`:n,const:e.value}}let S;const C={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(S===void 0&&(S=RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)),S),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function w(e,t){let n={type:`string`};if(e.checks)for(let r of e.checks)switch(r.kind){case`min`:o(n,`minLength`,typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value,r.message,t);break;case`max`:o(n,`maxLength`,typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value,r.message,t);break;case`email`:switch(t.emailStrategy){case`format:email`:O(n,`email`,r.message,t);break;case`format:idn-email`:O(n,`idn-email`,r.message,t);break;case`pattern:zod`:k(n,C.email,r.message,t);break}break;case`url`:O(n,`uri`,r.message,t);break;case`uuid`:O(n,`uuid`,r.message,t);break;case`regex`:k(n,r.regex,r.message,t);break;case`cuid`:k(n,C.cuid,r.message,t);break;case`cuid2`:k(n,C.cuid2,r.message,t);break;case`startsWith`:k(n,RegExp(`^${T(r.value,t)}`),r.message,t);break;case`endsWith`:k(n,RegExp(`${T(r.value,t)}$`),r.message,t);break;case`datetime`:O(n,`date-time`,r.message,t);break;case`date`:O(n,`date`,r.message,t);break;case`time`:O(n,`time`,r.message,t);break;case`duration`:O(n,`duration`,r.message,t);break;case`length`:o(n,`minLength`,typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value,r.message,t),o(n,`maxLength`,typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value,r.message,t);break;case`includes`:k(n,RegExp(T(r.value,t)),r.message,t);break;case`ip`:r.version!==`v6`&&O(n,`ipv4`,r.message,t),r.version!==`v4`&&O(n,`ipv6`,r.message,t);break;case`base64url`:k(n,C.base64url,r.message,t);break;case`jwt`:k(n,C.jwt,r.message,t);break;case`cidr`:r.version!==`v6`&&k(n,C.ipv4Cidr,r.message,t),r.version!==`v4`&&k(n,C.ipv6Cidr,r.message,t);break;case`emoji`:k(n,C.emoji(),r.message,t);break;case`ulid`:k(n,C.ulid,r.message,t);break;case`base64`:switch(t.base64Strategy){case`format:binary`:O(n,`binary`,r.message,t);break;case`contentEncoding:base64`:o(n,`contentEncoding`,`base64`,r.message,t);break;case`pattern:zod`:k(n,C.base64,r.message,t);break}break;case`nanoid`:k(n,C.nanoid,r.message,t);case`toLowerCase`:case`toUpperCase`:case`trim`:break;default:(e=>{})(r)}return n}function T(e,t){return t.patternStrategy===`escape`?D(e):e}const E=new Set(`ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789`);function D(e){let t=``;for(let n=0;ne.format)?(e.anyOf||=[],e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&r.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.anyOf.push({format:t,...n&&r.errorMessages&&{errorMessage:{format:n}}})):o(e,`format`,t,n,r)}function k(e,t,n,r){e.pattern||e.allOf?.some(e=>e.pattern)?(e.allOf||=[],e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&r.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:A(t,r),...n&&r.errorMessages&&{errorMessage:{pattern:n}}})):o(e,`pattern`,A(t,r),n,r)}function A(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes(`i`),m:e.flags.includes(`m`),s:e.flags.includes(`s`)},r=n.i?e.source.toLowerCase():e.source,i=``,a=!1,o=!1,s=!1;for(let e=0;e({...e,[r]:$(t.valueType._def,{...n,currentPath:[...n.currentPath,`properties`,r]})??c(n)}),{}),additionalProperties:n.rejectedAdditionalProperties};let r={type:`object`,additionalProperties:$(t.valueType._def,{...n,currentPath:[...n.currentPath,`additionalProperties`]})??n.allowedAdditionalProperties};if(n.target===`openApi3`)return r;if(t.keyType?._def.typeName===e.ZodString&&t.keyType._def.checks?.length){let{type:e,...i}=w(t.keyType._def,n);return{...r,propertyNames:i}}else if(t.keyType?._def.typeName===e.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};else if(t.keyType?._def.typeName===e.ZodBranded&&t.keyType._def.type._def.typeName===e.ZodString&&t.keyType._def.type._def.checks?.length){let{type:e,...i}=f(t.keyType._def,n);return{...r,propertyNames:i}}return r}function M(e,t){if(t.mapStrategy===`record`)return j(e,t);let n=$(e.keyType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`0`]})||c(t),r=$(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`1`]})||c(t);return{type:`array`,maxItems:125,items:{type:`array`,items:[n,r],minItems:2,maxItems:2}}}function N(e){let t=e.values,n=Object.keys(e.values).filter(e=>typeof t[t[e]]!=`number`),r=n.map(e=>t[e]),i=Array.from(new Set(r.map(e=>typeof e)));return{type:i.length===1?i[0]===`string`?`string`:`number`:[`string`,`number`],enum:r}}function P(e){return e.target===`openAi`?void 0:{not:c({...e,currentPath:[...e.currentPath,`not`]})}}function F(e){return e.target===`openApi3`?{enum:[`null`],nullable:!0}:{type:`null`}}const I={ZodString:`string`,ZodNumber:`number`,ZodBigInt:`integer`,ZodBoolean:`boolean`,ZodNull:`null`};function L(e,t){if(t.target===`openApi3`)return R(e,t);let n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(e=>e._def.typeName in I&&(!e._def.checks||!e._def.checks.length))){let e=n.reduce((e,t)=>{let n=I[t._def.typeName];return n&&!e.includes(n)?[...e,n]:e},[]);return{type:e.length>1?e:e[0]}}else if(n.every(e=>e._def.typeName===`ZodLiteral`&&!e.description)){let e=n.reduce((e,t)=>{let n=typeof t._def.value;switch(n){case`string`:case`number`:case`boolean`:return[...e,n];case`bigint`:return[...e,`integer`];case`object`:if(t._def.value===null)return[...e,`null`];case`symbol`:case`undefined`:case`function`:default:return e}},[]);if(e.length===n.length){let t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:n.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(n.every(e=>e._def.typeName===`ZodEnum`))return{type:`string`,enum:n.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return R(e,t)}const R=(e,t)=>{let n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,n)=>$(e._def,{...t,currentPath:[...t.currentPath,`anyOf`,`${n}`]})).filter(e=>!!e&&(!t.strictUnions||typeof e==`object`&&Object.keys(e).length>0));return n.length?{anyOf:n}:void 0};function z(e,t){if([`ZodString`,`ZodNumber`,`ZodBigInt`,`ZodBoolean`,`ZodNull`].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target===`openApi3`?{type:I[e.innerType._def.typeName],nullable:!0}:{type:[I[e.innerType._def.typeName],`null`]};if(t.target===`openApi3`){let n=$(e.innerType._def,{...t,currentPath:[...t.currentPath]});return n&&`$ref`in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let n=$(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`0`]});return n&&{anyOf:[n,{type:`null`}]}}function B(e,t){let n={type:`number`};if(!e.checks)return n;for(let r of e.checks)switch(r.kind){case`int`:n.type=`integer`,a(n,`type`,r.message,t);break;case`min`:t.target===`jsonSchema7`?r.inclusive?o(n,`minimum`,r.value,r.message,t):o(n,`exclusiveMinimum`,r.value,r.message,t):(r.inclusive||(n.exclusiveMinimum=!0),o(n,`minimum`,r.value,r.message,t));break;case`max`:t.target===`jsonSchema7`?r.inclusive?o(n,`maximum`,r.value,r.message,t):o(n,`exclusiveMaximum`,r.value,r.message,t):(r.inclusive||(n.exclusiveMaximum=!0),o(n,`maximum`,r.value,r.message,t));break;case`multipleOf`:o(n,`multipleOf`,r.value,r.message,t);break}return n}function V(e,t){let n=t.target===`openAi`,r={type:`object`,properties:{}},i=[],a=e.shape();for(let e in a){let o=a[e];if(o===void 0||o._def===void 0)continue;let s=U(o);s&&n&&(o._def.typeName===`ZodOptional`&&(o=o._def.innerType),o.isNullable()||(o=o.nullable()),s=!1);let c=$(o._def,{...t,currentPath:[...t.currentPath,`properties`,e],propertyPath:[...t.currentPath,`properties`,e]});if(c===void 0)continue;r.properties[e]=c,s||i.push(e)}i.length&&(r.required=i);let o=H(e,t);return o!==void 0&&(r.additionalProperties=o),r}function H(e,t){if(e.catchall._def.typeName!==`ZodNever`)return $(e.catchall._def,{...t,currentPath:[...t.currentPath,`additionalProperties`]});switch(e.unknownKeys){case`passthrough`:return t.allowedAdditionalProperties;case`strict`:return t.rejectedAdditionalProperties;case`strip`:return t.removeAdditionalStrategy===`strict`?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function U(e){try{return e.isOptional()}catch{return!0}}const W=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return $(e.innerType._def,t);let n=$(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`1`]});return n?{anyOf:[{not:c(t)},n]}:c(t)},G=(e,t)=>{if(t.pipeStrategy===`input`)return $(e.in._def,t);if(t.pipeStrategy===`output`)return $(e.out._def,t);let n=$(e.in._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]}),r=$(e.out._def,{...t,currentPath:[...t.currentPath,`allOf`,n?`1`:`0`]});return{allOf:[n,r].filter(e=>e!==void 0)}};function K(e,t){return $(e.type._def,t)}function q(e,t){let n=$(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`]}),r={type:`array`,uniqueItems:!0,items:n};return e.minSize&&o(r,`minItems`,e.minSize.value,e.minSize.message,t),e.maxSize&&o(r,`maxItems`,e.maxSize.value,e.maxSize.message,t),r}function J(e,t){return e.rest?{type:`array`,minItems:e.items.length,items:e.items.map((e,n)=>$(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[]),additionalItems:$(e.rest._def,{...t,currentPath:[...t.currentPath,`additionalItems`]})}:{type:`array`,minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,n)=>$(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[])}}function Y(e){return{not:c(e)}}function X(e){return c(e)}const Z=(e,t)=>$(e.innerType._def,t),Q=(t,n,r)=>{switch(n){case e.ZodString:return w(t,r);case e.ZodNumber:return B(t,r);case e.ZodObject:return V(t,r);case e.ZodBigInt:return u(t,r);case e.ZodBoolean:return d();case e.ZodDate:return m(t,r);case e.ZodUndefined:return Y(r);case e.ZodNull:return F(r);case e.ZodArray:return l(t,r);case e.ZodUnion:case e.ZodDiscriminatedUnion:return L(t,r);case e.ZodIntersection:return b(t,r);case e.ZodTuple:return J(t,r);case e.ZodRecord:return j(t,r);case e.ZodLiteral:return x(t,r);case e.ZodEnum:return v(t);case e.ZodNativeEnum:return N(t);case e.ZodNullable:return z(t,r);case e.ZodOptional:return W(t,r);case e.ZodMap:return M(t,r);case e.ZodSet:return q(t,r);case e.ZodLazy:return()=>t.getter()._def;case e.ZodPromise:return K(t,r);case e.ZodNaN:case e.ZodNever:return P(r);case e.ZodEffects:return _(t,r);case e.ZodAny:return c(r);case e.ZodUnknown:return X(r);case e.ZodDefault:return g(t,r);case e.ZodBranded:return f(t,r);case e.ZodReadonly:return Z(t,r);case e.ZodCatch:return p(t,r);case e.ZodPipeline:return G(t,r);case e.ZodFunction:case e.ZodVoid:case e.ZodSymbol:return;default:return(e=>void 0)(n)}};function $(e,n,r=!1){let i=n.seen.get(e);if(n.override){let a=n.override?.(e,n,i,r);if(a!==t)return a}if(i&&!r){let e=ee(i,n);if(e!==void 0)return e}let a={def:e,path:n.currentPath,jsonSchema:void 0};n.seen.set(e,a);let o=Q(e,e.typeName,n),s=typeof o==`function`?$(o(),n):o;if(s&&te(e,n,s),n.postProcess){let t=n.postProcess(s,e,n);return a.jsonSchema=s,t}return a.jsonSchema=s,s}const ee=(e,t)=>{switch(t.$refStrategy){case`root`:return{$ref:e.path.join(`/`)};case`relative`:return{$ref:s(t.currentPath,e.path)};case`none`:case`seen`:return e.path.lengtht.currentPath[n]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join(`/`)}! Defaulting to any`),c(t)):t.$refStrategy===`seen`?c(t):void 0}},te=(e,t,n)=>(e.description&&(n.description=e.description,t.markdownDescription&&(n.markdownDescription=e.description)),n),ne=(e,t)=>{let n=i(t),r=typeof t==`object`&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>({...e,[t]:$(r._def,{...n,currentPath:[...n.basePath,n.definitionPath,t]},!0)??c(n)}),{}):void 0,a=typeof t==`string`?t:t?.nameStrategy===`title`?void 0:t?.name,o=$(e._def,a===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,a]},!1)??c(n),s=typeof t==`object`&&t.name!==void 0&&t.nameStrategy===`title`?t.name:void 0;s!==void 0&&(o.title=s),n.flags.hasReferencedOpenAiAnyType&&(r||={},r[n.openAiAnyTypeName]||(r[n.openAiAnyTypeName]={type:[`string`,`number`,`integer`,`boolean`,`array`,`null`],items:{$ref:n.$refStrategy===`relative`?`1`:[...n.basePath,n.definitionPath,n.openAiAnyTypeName].join(`/`)}}));let l=a===void 0?r?{...o,[n.definitionPath]:r}:o:{$ref:[...n.$refStrategy===`relative`?[]:n.basePath,n.definitionPath,a].join(`/`),[n.definitionPath]:{...r,[a]:o}};return n.target===`jsonSchema7`?l.$schema=`http://json-schema.org/draft-07/schema#`:(n.target===`jsonSchema2019-09`||n.target===`openAi`)&&(l.$schema=`https://json-schema.org/draft/2019-09/schema#`),n.target===`openAi`&&(`anyOf`in l||`oneOf`in l||`allOf`in l||`type`in l&&Array.isArray(l.type))&&console.warn(`Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.`),l};export{a as addErrorMessage,n as defaultOptions,r as getDefaultOptions,i as getRefs,s as getRelativePath,t as ignoreOverride,c as parseAnyDef,l as parseArrayDef,u as parseBigintDef,d as parseBooleanDef,f as parseBrandedDef,p as parseCatchDef,m as parseDateDef,$ as parseDef,g as parseDefaultDef,_ as parseEffectsDef,v as parseEnumDef,b as parseIntersectionDef,x as parseLiteralDef,M as parseMapDef,N as parseNativeEnumDef,P as parseNeverDef,F as parseNullDef,z as parseNullableDef,B as parseNumberDef,V as parseObjectDef,W as parseOptionalDef,G as parsePipelineDef,K as parsePromiseDef,Z as parseReadonlyDef,j as parseRecordDef,q as parseSetDef,w as parseStringDef,J as parseTupleDef,Y as parseUndefinedDef,L as parseUnionDef,X as parseUnknownDef,I as primitiveMappings,Q as selectParser,o as setResponseValueAndErrors,C as zodPatterns,ne as zodToJsonSchema}; \ No newline at end of file diff --git a/assets/esm-CM8C1Snz.js b/assets/esm-CM8C1Snz.js deleted file mode 100644 index 55819e217f3da56e2b26348114a8db69f1e27854..0000000000000000000000000000000000000000 --- a/assets/esm-CM8C1Snz.js +++ /dev/null @@ -1,3 +0,0 @@ -import{ZodFirstPartyTypeKind as e}from"./index-iQVr9nx1.js";const t=Symbol(`Let zodToJsonSchema decide on which parser to use`),n={name:void 0,$refStrategy:`root`,basePath:[`#`],effectStrategy:`input`,pipeStrategy:`all`,dateStrategy:`format:date-time`,mapStrategy:`entries`,removeAdditionalStrategy:`passthrough`,allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:`definitions`,target:`jsonSchema7`,strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:`escape`,applyRegexFlags:!1,emailStrategy:`format:email`,base64Strategy:`contentEncoding:base64`,nameStrategy:`ref`,openAiAnyTypeName:`OpenAiAnyType`},r=e=>typeof e==`string`?{...n,name:e}:{...n,...e},i=e=>{let t=r(e),n=t.name===void 0?t.basePath:[...t.basePath,t.definitionPath,t.name];return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}};function a(e,t,n,r){r?.errorMessages&&n&&(e.errorMessage={...e.errorMessage,[t]:n})}function o(e,t,n,r,i){e[t]=n,a(e,t,r,i)}const s=(e,t)=>{let n=0;for(;n$(e.innerType._def,t);function m(e,t,n){let r=n??t.dateStrategy;if(Array.isArray(r))return{anyOf:r.map((n,r)=>m(e,t,n))};switch(r){case`string`:case`format:date-time`:return{type:`string`,format:`date-time`};case`format:date`:return{type:`string`,format:`date`};case`integer`:return h(e,t)}}const h=(e,t)=>{let n={type:`integer`,format:`unix-time`};if(t.target===`openApi3`)return n;for(let r of e.checks)switch(r.kind){case`min`:o(n,`minimum`,r.value,r.message,t);break;case`max`:o(n,`maximum`,r.value,r.message,t);break}return n};function g(e,t){return{...$(e.innerType._def,t),default:e.defaultValue()}}function _(e,t){return t.effectStrategy===`input`?$(e.schema._def,t):c(t)}function v(e){return{type:`string`,enum:Array.from(e.values)}}const y=e=>`type`in e&&e.type===`string`?!1:`allOf`in e;function b(e,t){let n=[$(e.left._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]}),$(e.right._def,{...t,currentPath:[...t.currentPath,`allOf`,`1`]})].filter(e=>!!e),r=t.target===`jsonSchema2019-09`?{unevaluatedProperties:!1}:void 0,i=[];return n.forEach(e=>{if(y(e))i.push(...e.allOf),e.unevaluatedProperties===void 0&&(r=void 0);else{let t=e;if(`additionalProperties`in e&&e.additionalProperties===!1){let{additionalProperties:n,...r}=e;t=r}else r=void 0;i.push(t)}}),i.length?{allOf:i,...r}:void 0}function x(e,t){let n=typeof e.value;return n!==`bigint`&&n!==`number`&&n!==`boolean`&&n!==`string`?{type:Array.isArray(e.value)?`array`:`object`}:t.target===`openApi3`?{type:n===`bigint`?`integer`:n,enum:[e.value]}:{type:n===`bigint`?`integer`:n,const:e.value}}let S;const C={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(S===void 0&&(S=RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)),S),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function w(e,t){let n={type:`string`};if(e.checks)for(let r of e.checks)switch(r.kind){case`min`:o(n,`minLength`,typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value,r.message,t);break;case`max`:o(n,`maxLength`,typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value,r.message,t);break;case`email`:switch(t.emailStrategy){case`format:email`:O(n,`email`,r.message,t);break;case`format:idn-email`:O(n,`idn-email`,r.message,t);break;case`pattern:zod`:k(n,C.email,r.message,t);break}break;case`url`:O(n,`uri`,r.message,t);break;case`uuid`:O(n,`uuid`,r.message,t);break;case`regex`:k(n,r.regex,r.message,t);break;case`cuid`:k(n,C.cuid,r.message,t);break;case`cuid2`:k(n,C.cuid2,r.message,t);break;case`startsWith`:k(n,RegExp(`^${T(r.value,t)}`),r.message,t);break;case`endsWith`:k(n,RegExp(`${T(r.value,t)}$`),r.message,t);break;case`datetime`:O(n,`date-time`,r.message,t);break;case`date`:O(n,`date`,r.message,t);break;case`time`:O(n,`time`,r.message,t);break;case`duration`:O(n,`duration`,r.message,t);break;case`length`:o(n,`minLength`,typeof n.minLength==`number`?Math.max(n.minLength,r.value):r.value,r.message,t),o(n,`maxLength`,typeof n.maxLength==`number`?Math.min(n.maxLength,r.value):r.value,r.message,t);break;case`includes`:k(n,RegExp(T(r.value,t)),r.message,t);break;case`ip`:r.version!==`v6`&&O(n,`ipv4`,r.message,t),r.version!==`v4`&&O(n,`ipv6`,r.message,t);break;case`base64url`:k(n,C.base64url,r.message,t);break;case`jwt`:k(n,C.jwt,r.message,t);break;case`cidr`:r.version!==`v6`&&k(n,C.ipv4Cidr,r.message,t),r.version!==`v4`&&k(n,C.ipv6Cidr,r.message,t);break;case`emoji`:k(n,C.emoji(),r.message,t);break;case`ulid`:k(n,C.ulid,r.message,t);break;case`base64`:switch(t.base64Strategy){case`format:binary`:O(n,`binary`,r.message,t);break;case`contentEncoding:base64`:o(n,`contentEncoding`,`base64`,r.message,t);break;case`pattern:zod`:k(n,C.base64,r.message,t);break}break;case`nanoid`:k(n,C.nanoid,r.message,t);case`toLowerCase`:case`toUpperCase`:case`trim`:break;default:(e=>{})(r)}return n}function T(e,t){return t.patternStrategy===`escape`?D(e):e}const E=new Set(`ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789`);function D(e){let t=``;for(let n=0;ne.format)?(e.anyOf||=[],e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&r.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.anyOf.push({format:t,...n&&r.errorMessages&&{errorMessage:{format:n}}})):o(e,`format`,t,n,r)}function k(e,t,n,r){var i;e.pattern||(i=e.allOf)?.some(e=>e.pattern)?(e.allOf||=[],e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&r.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:A(t,r),...n&&r.errorMessages&&{errorMessage:{pattern:n}}})):o(e,`pattern`,A(t,r),n,r)}function A(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes(`i`),m:e.flags.includes(`m`),s:e.flags.includes(`s`)},r=n.i?e.source.toLowerCase():e.source,i=``,a=!1,o=!1,s=!1;for(let e=0;e({...e,[r]:$(t.valueType._def,{...n,currentPath:[...n.currentPath,`properties`,r]})??c(n)}),{}),additionalProperties:n.rejectedAdditionalProperties};let u={type:`object`,additionalProperties:$(t.valueType._def,{...n,currentPath:[...n.currentPath,`additionalProperties`]})??n.allowedAdditionalProperties};if(n.target===`openApi3`)return u;if((i=t.keyType)?._def.typeName===e.ZodString&&(a=t.keyType._def.checks)?.length){let{type:e,...r}=w(t.keyType._def,n);return{...u,propertyNames:r}}else if((o=t.keyType)?._def.typeName===e.ZodEnum)return{...u,propertyNames:{enum:t.keyType._def.values}};else if((s=t.keyType)?._def.typeName===e.ZodBranded&&t.keyType._def.type._def.typeName===e.ZodString&&(l=t.keyType._def.type._def.checks)?.length){let{type:e,...r}=f(t.keyType._def,n);return{...u,propertyNames:r}}return u}function M(e,t){if(t.mapStrategy===`record`)return j(e,t);let n=$(e.keyType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`0`]})||c(t),r=$(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`,`items`,`1`]})||c(t);return{type:`array`,maxItems:125,items:{type:`array`,items:[n,r],minItems:2,maxItems:2}}}function N(e){let t=e.values,n=Object.keys(e.values).filter(e=>typeof t[t[e]]!=`number`),r=n.map(e=>t[e]),i=Array.from(new Set(r.map(e=>typeof e)));return{type:i.length===1?i[0]===`string`?`string`:`number`:[`string`,`number`],enum:r}}function P(e){return e.target===`openAi`?void 0:{not:c({...e,currentPath:[...e.currentPath,`not`]})}}function F(e){return e.target===`openApi3`?{enum:[`null`],nullable:!0}:{type:`null`}}const I={ZodString:`string`,ZodNumber:`number`,ZodBigInt:`integer`,ZodBoolean:`boolean`,ZodNull:`null`};function L(e,t){if(t.target===`openApi3`)return R(e,t);let n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(e=>e._def.typeName in I&&(!e._def.checks||!e._def.checks.length))){let e=n.reduce((e,t)=>{let n=I[t._def.typeName];return n&&!e.includes(n)?[...e,n]:e},[]);return{type:e.length>1?e:e[0]}}else if(n.every(e=>e._def.typeName===`ZodLiteral`&&!e.description)){let e=n.reduce((e,t)=>{let n=typeof t._def.value;switch(n){case`string`:case`number`:case`boolean`:return[...e,n];case`bigint`:return[...e,`integer`];case`object`:if(t._def.value===null)return[...e,`null`];case`symbol`:case`undefined`:case`function`:default:return e}},[]);if(e.length===n.length){let t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:n.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(n.every(e=>e._def.typeName===`ZodEnum`))return{type:`string`,enum:n.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return R(e,t)}const R=(e,t)=>{let n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,n)=>$(e._def,{...t,currentPath:[...t.currentPath,`anyOf`,`${n}`]})).filter(e=>!!e&&(!t.strictUnions||typeof e==`object`&&Object.keys(e).length>0));return n.length?{anyOf:n}:void 0};function z(e,t){if([`ZodString`,`ZodNumber`,`ZodBigInt`,`ZodBoolean`,`ZodNull`].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target===`openApi3`?{type:I[e.innerType._def.typeName],nullable:!0}:{type:[I[e.innerType._def.typeName],`null`]};if(t.target===`openApi3`){let n=$(e.innerType._def,{...t,currentPath:[...t.currentPath]});return n&&`$ref`in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let n=$(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`0`]});return n&&{anyOf:[n,{type:`null`}]}}function B(e,t){let n={type:`number`};if(!e.checks)return n;for(let r of e.checks)switch(r.kind){case`int`:n.type=`integer`,a(n,`type`,r.message,t);break;case`min`:t.target===`jsonSchema7`?r.inclusive?o(n,`minimum`,r.value,r.message,t):o(n,`exclusiveMinimum`,r.value,r.message,t):(r.inclusive||(n.exclusiveMinimum=!0),o(n,`minimum`,r.value,r.message,t));break;case`max`:t.target===`jsonSchema7`?r.inclusive?o(n,`maximum`,r.value,r.message,t):o(n,`exclusiveMaximum`,r.value,r.message,t):(r.inclusive||(n.exclusiveMaximum=!0),o(n,`maximum`,r.value,r.message,t));break;case`multipleOf`:o(n,`multipleOf`,r.value,r.message,t);break}return n}function V(e,t){let n=t.target===`openAi`,r={type:`object`,properties:{}},i=[],a=e.shape();for(let e in a){let o=a[e];if(o===void 0||o._def===void 0)continue;let s=U(o);s&&n&&(o._def.typeName===`ZodOptional`&&(o=o._def.innerType),o.isNullable()||(o=o.nullable()),s=!1);let c=$(o._def,{...t,currentPath:[...t.currentPath,`properties`,e],propertyPath:[...t.currentPath,`properties`,e]});if(c===void 0)continue;r.properties[e]=c,s||i.push(e)}i.length&&(r.required=i);let o=H(e,t);return o!==void 0&&(r.additionalProperties=o),r}function H(e,t){if(e.catchall._def.typeName!==`ZodNever`)return $(e.catchall._def,{...t,currentPath:[...t.currentPath,`additionalProperties`]});switch(e.unknownKeys){case`passthrough`:return t.allowedAdditionalProperties;case`strict`:return t.rejectedAdditionalProperties;case`strip`:return t.removeAdditionalStrategy===`strict`?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function U(e){try{return e.isOptional()}catch{return!0}}const W=(e,t)=>{var n;if(t.currentPath.toString()===(n=t.propertyPath)?.toString())return $(e.innerType._def,t);let r=$(e.innerType._def,{...t,currentPath:[...t.currentPath,`anyOf`,`1`]});return r?{anyOf:[{not:c(t)},r]}:c(t)},G=(e,t)=>{if(t.pipeStrategy===`input`)return $(e.in._def,t);if(t.pipeStrategy===`output`)return $(e.out._def,t);let n=$(e.in._def,{...t,currentPath:[...t.currentPath,`allOf`,`0`]}),r=$(e.out._def,{...t,currentPath:[...t.currentPath,`allOf`,n?`1`:`0`]});return{allOf:[n,r].filter(e=>e!==void 0)}};function K(e,t){return $(e.type._def,t)}function q(e,t){let n=$(e.valueType._def,{...t,currentPath:[...t.currentPath,`items`]}),r={type:`array`,uniqueItems:!0,items:n};return e.minSize&&o(r,`minItems`,e.minSize.value,e.minSize.message,t),e.maxSize&&o(r,`maxItems`,e.maxSize.value,e.maxSize.message,t),r}function J(e,t){return e.rest?{type:`array`,minItems:e.items.length,items:e.items.map((e,n)=>$(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[]),additionalItems:$(e.rest._def,{...t,currentPath:[...t.currentPath,`additionalItems`]})}:{type:`array`,minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,n)=>$(e._def,{...t,currentPath:[...t.currentPath,`items`,`${n}`]})).reduce((e,t)=>t===void 0?e:[...e,t],[])}}function Y(e){return{not:c(e)}}function X(e){return c(e)}const Z=(e,t)=>$(e.innerType._def,t),Q=(t,n,r)=>{switch(n){case e.ZodString:return w(t,r);case e.ZodNumber:return B(t,r);case e.ZodObject:return V(t,r);case e.ZodBigInt:return u(t,r);case e.ZodBoolean:return d();case e.ZodDate:return m(t,r);case e.ZodUndefined:return Y(r);case e.ZodNull:return F(r);case e.ZodArray:return l(t,r);case e.ZodUnion:case e.ZodDiscriminatedUnion:return L(t,r);case e.ZodIntersection:return b(t,r);case e.ZodTuple:return J(t,r);case e.ZodRecord:return j(t,r);case e.ZodLiteral:return x(t,r);case e.ZodEnum:return v(t);case e.ZodNativeEnum:return N(t);case e.ZodNullable:return z(t,r);case e.ZodOptional:return W(t,r);case e.ZodMap:return M(t,r);case e.ZodSet:return q(t,r);case e.ZodLazy:return()=>t.getter()._def;case e.ZodPromise:return K(t,r);case e.ZodNaN:case e.ZodNever:return P(r);case e.ZodEffects:return _(t,r);case e.ZodAny:return c(r);case e.ZodUnknown:return X(r);case e.ZodDefault:return g(t,r);case e.ZodBranded:return f(t,r);case e.ZodReadonly:return Z(t,r);case e.ZodCatch:return p(t,r);case e.ZodPipeline:return G(t,r);case e.ZodFunction:case e.ZodVoid:case e.ZodSymbol:return;default:return(e=>void 0)(n)}};function $(e,n,r=!1){let i=n.seen.get(e);if(n.override){var a;let o=(a=n.override)?.call(n,e,n,i,r);if(o!==t)return o}if(i&&!r){let e=ee(i,n);if(e!==void 0)return e}let o={def:e,path:n.currentPath,jsonSchema:void 0};n.seen.set(e,o);let s=Q(e,e.typeName,n),c=typeof s==`function`?$(s(),n):s;if(c&&te(e,n,c),n.postProcess){let t=n.postProcess(c,e,n);return o.jsonSchema=c,t}return o.jsonSchema=c,c}const ee=(e,t)=>{switch(t.$refStrategy){case`root`:return{$ref:e.path.join(`/`)};case`relative`:return{$ref:s(t.currentPath,e.path)};case`none`:case`seen`:return e.path.lengtht.currentPath[n]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join(`/`)}! Defaulting to any`),c(t)):t.$refStrategy===`seen`?c(t):void 0}},te=(e,t,n)=>(e.description&&(n.description=e.description,t.markdownDescription&&(n.markdownDescription=e.description)),n),ne=(e,t)=>{let n=i(t),r=typeof t==`object`&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>({...e,[t]:$(r._def,{...n,currentPath:[...n.basePath,n.definitionPath,t]},!0)??c(n)}),{}):void 0,a=typeof t==`string`?t:t?.nameStrategy===`title`?void 0:t?.name,o=$(e._def,a===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,a]},!1)??c(n),s=typeof t==`object`&&t.name!==void 0&&t.nameStrategy===`title`?t.name:void 0;s!==void 0&&(o.title=s),n.flags.hasReferencedOpenAiAnyType&&(r||={},r[n.openAiAnyTypeName]||(r[n.openAiAnyTypeName]={type:[`string`,`number`,`integer`,`boolean`,`array`,`null`],items:{$ref:n.$refStrategy===`relative`?`1`:[...n.basePath,n.definitionPath,n.openAiAnyTypeName].join(`/`)}}));let l=a===void 0?r?{...o,[n.definitionPath]:r}:o:{$ref:[...n.$refStrategy===`relative`?[]:n.basePath,n.definitionPath,a].join(`/`),[n.definitionPath]:{...r,[a]:o}};return n.target===`jsonSchema7`?l.$schema=`http://json-schema.org/draft-07/schema#`:(n.target===`jsonSchema2019-09`||n.target===`openAi`)&&(l.$schema=`https://json-schema.org/draft/2019-09/schema#`),n.target===`openAi`&&(`anyOf`in l||`oneOf`in l||`allOf`in l||`type`in l&&Array.isArray(l.type))&&console.warn(`Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.`),l};export{ne as zodToJsonSchema}; \ No newline at end of file diff --git a/assets/featherless-ai-C665TGqc.js b/assets/featherless-ai-C665TGqc.js new file mode 100644 index 0000000000000000000000000000000000000000..82166f422dd1614694ee38b2fc86679b1592f952 --- /dev/null +++ b/assets/featherless-ai-C665TGqc.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`featherless-ai`;var x=u({__name:`featherless-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`fw-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.featherless.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/featherless-ai-CnXf0hdU.js b/assets/featherless-ai-CnXf0hdU.js deleted file mode 100644 index 5d62c1b9dcda159a0096588f5eb926d6e2798da8..0000000000000000000000000000000000000000 --- a/assets/featherless-ai-CnXf0hdU.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`featherless-ai`;var x=l({__name:`featherless-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`fw-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.featherless.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/filter-message-CC7rWc9-.js b/assets/filter-message-CC7rWc9-.js new file mode 100644 index 0000000000000000000000000000000000000000..f28fbe27391a6c1b4deb3db4bf560b0638053523 --- /dev/null +++ b/assets/filter-message-CC7rWc9-.js @@ -0,0 +1 @@ +import"./Basic-D95BeH1T.js";import{b as e}from"./Textarea-CMwGMW-L.js";import{F as t,d7 as n,dB as r,dH as i,dK as a,dV as o,db as s,dj as c,e1 as l}from"./index-C9kcCpP-.js";const u={flex:``,"flex-col":``,"gap-2":``,"p-2":``},d={flex:``,"flex-row":``,"gap-2":``},f={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},p={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var m=n({__name:`filter-message`,setup(n){let m=a(``),h=a(!1),g=a({content:``});async function _(){h.value=!0;let e=m.value.split(``),n=function(e){return e.Literal=`literal`,e.Special=`special`,e}({}),r=n.Literal,i=``;for(let a of e){await t(50);let e=r;a===`<`?e=n.Special:a===`>`&&(e=n.Literal),r===n.Literal&&e===n.Special&&(g.value.content+=i,i=``),r===n.Special&&e===n.Literal&&(i=``),r===n.Literal&&e===n.Literal&&(g.value.content+=a,i=``),r=e}i&&(g.value.content+=i),m.value=``,h.value=!1}return(t,n)=>(i(),s(`div`,u,[c(`div`,d,[r(o(e),{modelValue:m.value,"onUpdate:modelValue":n[0]||=e=>m.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:_},null,8,[`modelValue`]),c(`button`,f,l(h.value?`Processing...`:`Send`),1)]),c(`div`,p,[n[1]||=c(`h3`,{"font-normal":``},` Streaming Message `,-1),c(`div`,null,l(g.value.content),1)])]))}}),h=m;export{h as default}; \ No newline at end of file diff --git a/assets/filter-message-Cz8_UJue.js b/assets/filter-message-Cz8_UJue.js deleted file mode 100644 index f22927460dbe4e97fd4df542709c96b4f2fce95b..0000000000000000000000000000000000000000 --- a/assets/filter-message-Cz8_UJue.js +++ /dev/null @@ -1 +0,0 @@ -import"./Basic-BE3KxqAa.js";import{Textarea_default as e}from"./Textarea-BJEUAUG6.js";import{createBaseVNode as t,createElementBlock as n,createVNode as r,defineComponent as i,openBlock as a,ref as o,sleep as s,toDisplayString as c,unref as l}from"./index-iQVr9nx1.js";const u={flex:``,"flex-col":``,"gap-2":``,"p-2":``},d={flex:``,"flex-row":``,"gap-2":``},f={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},p={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var m=i({__name:`filter-message`,setup(i){let m=o(``),h=o(!1),g=o({content:``});async function _(){h.value=!0;let e=m.value.split(``),t=function(e){return e.Literal=`literal`,e.Special=`special`,e}({}),n=t.Literal,r=``;for(let i of e){await s(50);let e=n;i===`<`?e=t.Special:i===`>`&&(e=t.Literal),n===t.Literal&&e===t.Special&&(g.value.content+=r,r=``),n===t.Special&&e===t.Literal&&(r=``),n===t.Literal&&e===t.Literal&&(g.value.content+=i,r=``),n=e}r&&(g.value.content+=r),m.value=``,h.value=!1}return(i,o)=>(a(),n(`div`,u,[t(`div`,d,[r(l(e),{modelValue:m.value,"onUpdate:modelValue":o[0]||=e=>m.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:_},null,8,[`modelValue`]),t(`button`,f,c(h.value?`Processing...`:`Send`),1)]),t(`div`,p,[o[1]||=t(`h3`,{"font-normal":``},` Streaming Message `,-1),t(`div`,null,c(g.value.content),1)])]))}}),h=m;export{h as default}; \ No newline at end of file diff --git a/assets/fireworks-ai-CNUUKc6N.js b/assets/fireworks-ai-CNUUKc6N.js new file mode 100644 index 0000000000000000000000000000000000000000..190c70b10eb01e170a2d04ba4834a2941439a9af --- /dev/null +++ b/assets/fireworks-ai-CNUUKc6N.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`fireworks-ai`;var x=u({__name:`fireworks-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`fw-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.fireworks.ai/inference/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/fireworks-ai-CeuUFiNS.js b/assets/fireworks-ai-CeuUFiNS.js deleted file mode 100644 index 07a2c903077a1cfb0d60d558b5a7968f250d2b0c..0000000000000000000000000000000000000000 --- a/assets/fireworks-ai-CeuUFiNS.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`fireworks-ai`;var x=l({__name:`fireworks-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`fw-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.fireworks.ai/inference/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/general-BDYMIhOo.js b/assets/general-BDYMIhOo.js deleted file mode 100644 index c630dff70420812f420c6b7e1e4a32739fc65857..0000000000000000000000000000000000000000 --- a/assets/general-BDYMIhOo.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldCheckbox_default as e,FieldSelect_default as t,Option_default as n,Select_default as r,createBaseVNode as i,createBlock as a,createElementBlock as o,createTextVNode as s,createVNode as c,defineComponent as l,isRef as u,openBlock as d,resolveDirective as f,toDisplayString as p,unref as m,useDark as h,useI18n as g,useSettings as _,withCtx as v,withDirectives as y}from"./index-iQVr9nx1.js";import{route_block_default as b}from"./route-block-D_p8WJle.js";const x={"rounded-lg":``,"bg-neutral-50":``,"p-4":``,"dark:bg-neutral-800":``,flex:`~ col gap-4`},S={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[65dvh]`,"right--15":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:30},enter:{scale:1,opacity:1,rotate:0},duration:250,flex:``,"items-center":``,"justify-center":``};var C=l({__name:`general`,setup(l){let b=_(),{t:C,locale:w}=g(),T=h();return(l,h)=>{let g=f(`motion`);return d(),o(`div`,x,[y(c(m(e),{modelValue:m(T),"onUpdate:modelValue":h[0]||=e=>u(T)?T.value=e:null,"mb-2":``,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:270,delay:2*50,label:m(C)(`settings.theme.title`),description:m(C)(`settings.theme.description`)},null,8,[`modelValue`,`label`,`description`]),[[g]]),y((d(),a(m(t),{initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:280,delay:3*50,transition:`all ease-in-out duration-250`,label:m(C)(`settings.language.title`),description:m(C)(`settings.language.description`)},{default:v(()=>[c(m(r),{modelValue:m(b).language,"onUpdate:modelValue":h[1]||=e=>m(b).language=e,transition:`all ease-in-out duration-250`,"cursor-pointer":``,"bg-transparent":``,"outline-none":``},{default:v(({value:e})=>[i(`div`,null,p(e?l.$t(`settings.language.${e}`):m(C)(`settings.language.english`)),1)]),options:v(({hide:e})=>[c(m(n),{value:`en`,active:m(w)===`en`,onClick:t=>e()},{default:v(()=>[s(p(l.$t(`settings.language.english`)),1)]),_:2},1032,[`active`,`onClick`]),c(m(n),{value:`zh-Hans`,active:m(w)===`zh-Hans`,onClick:t=>e()},{default:v(()=>[s(p(l.$t(`settings.language.chinese`)),1)]),_:2},1032,[`active`,`onClick`])]),_:1},8,[`modelValue`])]),_:1},8,[`label`,`description`])),[[g]]),y((d(),o(`div`,S,h[2]||=[i(`div`,{text:`60`,"i-solar:emoji-funny-square-bold-duotone":``},null,-1)])),[[g]])])}}});typeof b==`function`&&b(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/general-DiRR6B5N.js b/assets/general-DiRR6B5N.js new file mode 100644 index 0000000000000000000000000000000000000000..255da4e60ad27fa989065a7b824b2827bb9b9d61 --- /dev/null +++ b/assets/general-DiRR6B5N.js @@ -0,0 +1 @@ +import{Q as e,a3 as t,a4 as n,a7 as r,aS as i,ab as a,d as o,d$ as s,d7 as c,dB as l,dG as u,dH as d,dI as f,dV as p,da as m,db as h,dj as g,dn as _,dr as v,e1 as y}from"./index-C9kcCpP-.js";import{b}from"./route-block-B2lA4iHQ.js";const x={"rounded-lg":``,"bg-neutral-50":``,"p-4":``,"dark:bg-neutral-800":``,flex:`~ col gap-4`},S={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[65dvh]`,"right--15":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:30},enter:{scale:1,opacity:1,rotate:0},duration:250,flex:``,"items-center":``,"justify-center":``};var C=c({__name:`general`,setup(c){let b=o(),{t:C,locale:w}=e(),T=i();return(e,i)=>{let o=u(`motion`);return d(),h(`div`,x,[v(l(p(a),{modelValue:p(T),"onUpdate:modelValue":i[0]||=e=>s(T)?T.value=e:null,"mb-2":``,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:270,delay:2*50,label:p(C)(`settings.theme.title`),description:p(C)(`settings.theme.description`)},null,8,[`modelValue`,`label`,`description`]),[[o]]),v((d(),_(p(r),{initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:280,delay:3*50,transition:`all ease-in-out duration-250`,label:p(C)(`settings.language.title`),description:p(C)(`settings.language.description`)},{default:m(()=>[l(p(t),{modelValue:p(b).language,"onUpdate:modelValue":i[1]||=e=>p(b).language=e,transition:`all ease-in-out duration-250`,"cursor-pointer":``,"bg-transparent":``,"outline-none":``},{default:m(({value:t})=>[g(`div`,null,y(t?e.$t(`settings.language.${t}`):p(C)(`settings.language.english`)),1)]),options:m(({hide:t})=>[l(p(n),{value:`en`,active:p(w)===`en`,onClick:e=>t()},{default:m(()=>[f(y(e.$t(`settings.language.english`)),1)]),_:2},1032,[`active`,`onClick`]),l(p(n),{value:`zh-Hans`,active:p(w)===`zh-Hans`,onClick:e=>t()},{default:m(()=>[f(y(e.$t(`settings.language.chinese`)),1)]),_:2},1032,[`active`,`onClick`])]),_:1},8,[`modelValue`])]),_:1},8,[`label`,`description`])),[[o]]),v((d(),h(`div`,S,i[2]||=[g(`div`,{text:`60`,"i-solar:emoji-funny-square-bold-duotone":``},null,-1)])),[[o]])])}}});typeof b==`function`&&b(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/gesture-circle-D3DL8v2R.js b/assets/gesture-circle-D3DL8v2R.js deleted file mode 100644 index 3fe9d967eeecac1205d4a7b98ed9ca3548735f0c..0000000000000000000000000000000000000000 --- a/assets/gesture-circle-D3DL8v2R.js +++ /dev/null @@ -1 +0,0 @@ -import{computed as e,createBaseVNode as t,createElementBlock as n,defineComponent as r,openBlock as i,ref as a,refDebounced as o,refThrottled as s,toDisplayString as c,unref as l,useElementBounding as u,usePointer as d,useResizeObserver as f,watch as p}from"./index-iQVr9nx1.js";import{route_block_default as m}from"./route-block-D_p8WJle.js";const h={relative:``,"h-full":``},g={bg:`neutral-100/50 dark:neutral-900/50`,absolute:``,"inset-0":``,"h-fit":``,"rounded-xl":``,"px-3":``,"py-2":``,"font-mono":``,"shadow-md":``,"backdrop-blur-md":``,grid:`~ cols-[150px_1fr]`},_=6;var v=r({__name:`gesture-circle`,setup(r){let m=a(),v=a(),y=a(),b=a(),{x,y:S}=d({target:y}),C=u(v,{immediate:!0,windowResize:!0}),w=e(()=>({x:x.value,y:S.value}));f(v,e=>{let t=e[0],{width:n,height:r}=t.contentRect;y.value&&(y.value.width=n,y.value.height=r)}),p(v,e=>{var t;if(!e)return;let n=document.createElement(`canvas`);n.width=C.width.value,n.height=C.height.value,n.style.objectFit=`contain`;let r=n.getContext(`2d`);b.value=r,y.value=n,(t=v.value)?.appendChild(n)});let T=s(w,50),E=o(w,50),D=a(E.value),O=a(0),k=a(0),A=a(!1),j=a([]),M=a(!1);return p([x,S],()=>{b.value&&(b.value.beginPath(),b.value.fillStyle=`red`,b.value.arc(x.value,S.value,4,0,2*Math.PI),b.value.closePath(),b.value.fill())}),p(E,()=>{if(M.value=!1,b.value&&b.value.reset(),j.value.length>=_){let e=j.value.reduce((e,t)=>e+t.x,0)/j.value.length,t=j.value.reduce((e,t)=>e+t.y,0)/j.value.length,n=j.value.map(n=>Math.sqrt((n.x-e)**2+(n.y-t)**2)),r=n.reduce((e,t)=>e+t,0)/n.length,i=n.reduce((e,t)=>e+(t-r)**2,0)/n.length,a=Math.sqrt(i);a<20&&(k.value++,M.value=!0)}j.value=[]}),p(T,e=>{j.value.push(e)}),(e,r)=>(i(),n(`div`,{ref_key:`containerRef`,ref:m,"h-full":``},[t(`div`,h,[t(`div`,g,[r[0]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` pointThrottled: `,-1),t(`div`,null,c(l(T)),1),r[1]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` pointDebounced: `,-1),t(`div`,null,c(l(E)),1),r[2]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` lastPoint: `,-1),t(`div`,null,c(D.value),1),r[3]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` distance: `,-1),t(`div`,null,c(O.value),1),r[4]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` count: `,-1),t(`div`,null,c(k.value),1),r[5]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` show: `,-1),t(`div`,null,c(A.value),1),r[6]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` lastPoints: `,-1),t(`div`,null,c(j.value),1),r[7]||=t(`div`,{text:`neutral-400 dark:neutral-600`},` isCircle: `,-1),t(`div`,null,c(M.value),1)]),t(`div`,{ref_key:`canvasContainerRef`,ref:v,"h-full":``,"w-full":``},null,512)])],512))}});typeof m==`function`&&m(v);var y=v;export{y as default}; \ No newline at end of file diff --git a/assets/gesture-circle-D7hIKXta.js b/assets/gesture-circle-D7hIKXta.js new file mode 100644 index 0000000000000000000000000000000000000000..eed5d0322e2535b3c6f497e3b9c220d24ce027ce --- /dev/null +++ b/assets/gesture-circle-D7hIKXta.js @@ -0,0 +1 @@ +import{aN as e,aQ as t,aX as n,a_ as r,b1 as i,d7 as a,dF as o,dH as s,dK as c,dV as l,db as u,dj as d,dv as f,e1 as p}from"./index-C9kcCpP-.js";import{b as m}from"./route-block-B2lA4iHQ.js";const h={relative:``,"h-full":``},g={bg:`neutral-100/50 dark:neutral-900/50`,absolute:``,"inset-0":``,"h-fit":``,"rounded-xl":``,"px-3":``,"py-2":``,"font-mono":``,"shadow-md":``,"backdrop-blur-md":``,grid:`~ cols-[150px_1fr]`},_=6;var v=a({__name:`gesture-circle`,setup(a){let m=c(),v=c(),y=c(),b=c(),{x,y:S}=e({target:y}),C=t(v,{immediate:!0,windowResize:!0}),w=f(()=>({x:x.value,y:S.value}));n(v,e=>{let t=e[0],{width:n,height:r}=t.contentRect;y.value&&(y.value.width=n,y.value.height=r)}),o(v,e=>{if(!e)return;let t=document.createElement(`canvas`);t.width=C.width.value,t.height=C.height.value,t.style.objectFit=`contain`;let n=t.getContext(`2d`);b.value=n,y.value=t,v.value?.appendChild(t)});let T=r(w,50),E=i(w,50),D=c(E.value),O=c(0),k=c(0),A=c(!1),j=c([]),M=c(!1);return o([x,S],()=>{b.value&&(b.value.beginPath(),b.value.fillStyle=`red`,b.value.arc(x.value,S.value,4,0,2*Math.PI),b.value.closePath(),b.value.fill())}),o(E,()=>{if(M.value=!1,b.value&&b.value.reset(),j.value.length>=_){let e=j.value.reduce((e,t)=>e+t.x,0)/j.value.length,t=j.value.reduce((e,t)=>e+t.y,0)/j.value.length,n=j.value.map(n=>Math.sqrt((n.x-e)**2+(n.y-t)**2)),r=n.reduce((e,t)=>e+t,0)/n.length,i=n.reduce((e,t)=>e+(t-r)**2,0)/n.length,a=Math.sqrt(i);a<20&&(k.value++,M.value=!0)}j.value=[]}),o(T,e=>{j.value.push(e)}),(e,t)=>(s(),u(`div`,{ref_key:`containerRef`,ref:m,"h-full":``},[d(`div`,h,[d(`div`,g,[t[0]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` pointThrottled: `,-1),d(`div`,null,p(l(T)),1),t[1]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` pointDebounced: `,-1),d(`div`,null,p(l(E)),1),t[2]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` lastPoint: `,-1),d(`div`,null,p(D.value),1),t[3]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` distance: `,-1),d(`div`,null,p(O.value),1),t[4]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` count: `,-1),d(`div`,null,p(k.value),1),t[5]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` show: `,-1),d(`div`,null,p(A.value),1),t[6]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` lastPoints: `,-1),d(`div`,null,p(j.value),1),t[7]||=d(`div`,{text:`neutral-400 dark:neutral-600`},` isCircle: `,-1),d(`div`,null,p(M.value),1)]),d(`div`,{ref_key:`canvasContainerRef`,ref:v,"h-full":``,"w-full":``},null,512)])],512))}});typeof m==`function`&&m(v);var y=v;export{y as default}; \ No newline at end of file diff --git a/assets/google-generative-ai-BGBjFWON.js b/assets/google-generative-ai-BGBjFWON.js deleted file mode 100644 index 8b80896acaafccd1d9dcf993cded8076f6714b9a..0000000000000000000000000000000000000000 --- a/assets/google-generative-ai-BGBjFWON.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`google-generative-ai`;var x=l({__name:`google-generative-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||`https://generativelanguage.googleapis.com/v1beta/openai/`},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;C.value[b]||(C.value[b]={baseUrl:`https://api.anthropic.com/v1/`}),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||`https://generativelanguage.googleapis.com/v1beta/openai/`}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://generativelanguage.googleapis.com/v1beta/openai/`}});function D(){C.value[b]={baseUrl:`https://generativelanguage.googleapis.com/v1beta/openai/`}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName||`Google | Gemini`,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName||`Google`,placeholder:`GEMINI_API_KEY`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://generativelanguage.googleapis.com/v1beta/openai/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/google-generative-ai-DlK2YXku.js b/assets/google-generative-ai-DlK2YXku.js new file mode 100644 index 0000000000000000000000000000000000000000..1b1d4a7a953fc84186e1ef54dfbb194247944496 --- /dev/null +++ b/assets/google-generative-ai-DlK2YXku.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`google-generative-ai`;var x=u({__name:`google-generative-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||`https://generativelanguage.googleapis.com/v1beta/openai/`,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{C.value[b]||(C.value[b]={baseUrl:`https://api.anthropic.com/v1/`}),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||`https://generativelanguage.googleapis.com/v1beta/openai/`}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://generativelanguage.googleapis.com/v1beta/openai/`}});function D(){C.value[b]={baseUrl:`https://generativelanguage.googleapis.com/v1beta/openai/`}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName||`Google | Gemini`,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName||`Google`,placeholder:`GEMINI_API_KEY`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://generativelanguage.googleapis.com/v1beta/openai/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/hearing-Bb4rC1nx.js b/assets/hearing-Bb4rC1nx.js deleted file mode 100644 index ca893574a0623fdebfce6ae11443c841eef7e4c1..0000000000000000000000000000000000000000 --- a/assets/hearing-Bb4rC1nx.js +++ /dev/null @@ -1 +0,0 @@ -var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({});import{FieldCheckbox_default as t,FieldRange_default as n,FieldSelect_default as r,LevelMeter_default as i,ThresholdMeter_default as a,TimeSeriesChart_default as o,computed as s,createBaseVNode as c,createBlock as l,createCommentVNode as u,createElementBlock as d,createTextVNode as ee,createVNode as f,defineComponent as p,nextTick as te,normalizeClass as ne,onMounted as re,onUnmounted as ie,openBlock as m,ref as h,toDisplayString as g,unref as _,useDevicesList as v,watch as y}from"./index-iQVr9nx1.js";import{__webpack_exports__AutoModel as b,__webpack_exports__Tensor as x}from"./transformers.web-CZcwiFXx.js";import{route_block_default as S}from"./route-block-D_p8WJle.js";var ae=`/assets/process.worklet-CF6Ao8XG.js`,oe=class{constructor(t,n={}){e.defineProperty(this,`audioContext`,null),e.defineProperty(this,`audioWorkletNode`,null),e.defineProperty(this,`mediaStream`,null),e.defineProperty(this,`sourceNode`,null),e.defineProperty(this,`vad`,void 0),e.defineProperty(this,`workletInitialized`,!1),this.vad=t,this.audioContext=new AudioContext(n.audioContextOptions||{sampleRate:16e3,latencyHint:`interactive`})}async initialize(e){if(!this.audioContext)throw Error(`Audio context not created`);try{this.workletInitialized||(await this.audioContext.audioWorklet.addModule(e),URL.revokeObjectURL(e),this.workletInitialized=!0),this.audioWorkletNode=new AudioWorkletNode(this.audioContext,`vad-processor`),this.audioWorkletNode.port.onmessage=async e=>{let{buffer:t}=e.data;t&&t.length>0&&await this.vad.processAudio(new Float32Array(t))}}catch(e){throw console.error(`Failed to initialize audio worklet:`,e),e}}async startMicrophone(){if(!this.audioContext||!this.audioWorkletNode)throw Error(`Audio system not initialized. Call initialize() first.`);try{this.audioContext.state===`suspended`&&await this.audioContext.resume(),this.mediaStream=await navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,sampleRate:this.audioContext.sampleRate}}),this.sourceNode=this.audioContext.createMediaStreamSource(this.mediaStream),this.sourceNode.connect(this.audioWorkletNode);let e=this.audioContext.createGain();e.gain.value=0,this.audioWorkletNode.connect(e),e.connect(this.audioContext.destination)}catch(e){throw console.error(`Failed to start microphone:`,e),e}}async stopMicrophone(){var e,t;this.mediaStream&&(this.mediaStream.getTracks().forEach(e=>e.stop()),this.mediaStream=null),this.sourceNode&&(this.sourceNode.disconnect(),this.sourceNode=null),(e=this.audioContext)?.suspend(),(t=this.audioWorkletNode)?.disconnect()}stop(){this.sourceNode&&this.audioWorkletNode&&(this.sourceNode.disconnect(),this.audioWorkletNode.disconnect()),this.mediaStream&&(this.mediaStream.getTracks().forEach(e=>e.stop()),this.mediaStream=null),this.audioContext&&this.audioContext.state!==`closed`&&this.audioContext.suspend(),this.sourceNode=null,this.audioWorkletNode=null}dispose(){this.stop(),this.audioContext&&this.audioContext.state!==`closed`&&(this.audioContext.close(),this.audioContext=null),this.workletInitialized=!1}},C=class{constructor(t={}){e.defineProperty(this,`config`,void 0),e.defineProperty(this,`model`,void 0),e.defineProperty(this,`state`,void 0),e.defineProperty(this,`sampleRateTensor`,void 0),e.defineProperty(this,`buffer`,void 0),e.defineProperty(this,`bufferPointer`,0),e.defineProperty(this,`isRecording`,!1),e.defineProperty(this,`postSpeechSamples`,0),e.defineProperty(this,`prevBuffers`,[]),e.defineProperty(this,`inferenceChain`,Promise.resolve()),e.defineProperty(this,`eventListeners`,{}),e.defineProperty(this,`isReady`,!1);let n={sampleRate:16e3,speechThreshold:.3,exitThreshold:.1,minSilenceDurationMs:400,speechPadMs:80,minSpeechDurationMs:250,maxBufferDuration:30,newBufferSize:512};this.config={...n,...t},this.buffer=new Float32Array(this.config.maxBufferDuration*this.config.sampleRate),this.sampleRateTensor=new x(`int64`,[this.config.sampleRate],[]),this.state=new x(`float32`,new Float32Array(2*1*128),[2,1,128])}async initialize(){try{this.emit(`status`,{type:`info`,message:`Loading VAD model...`}),this.model=await b.from_pretrained(`onnx-community/silero-vad`,{config:{model_type:`custom`},dtype:`fp32`}),this.isReady=!0,this.emit(`status`,{type:`info`,message:`VAD model loaded successfully`})}catch(e){throw this.emit(`status`,{type:`error`,message:`Failed to load VAD model: ${e}`}),e}}on(e,t){this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(t)}off(e,t){this.eventListeners[e]&&(this.eventListeners[e]=this.eventListeners[e].filter(e=>e!==t))}emit(e,t){if(this.eventListeners[e])for(let n of this.eventListeners[e])n(t)}async processAudio(e){if(!this.isReady)throw Error(`VAD model is not initialized. Call initialize() first.`);let t=this.isRecording,n=await this.detectSpeech(e),r=this.config.sampleRate/1e3,i=this.config.minSilenceDurationMs*r,a=this.config.speechPadMs*r,o=this.config.minSpeechDurationMs*r,s=Math.ceil(a/this.config.newBufferSize);if(!t&&!n){this.prevBuffers.length>=s&&this.prevBuffers.shift(),this.prevBuffers.push(e.slice(0));return}let c=this.buffer.length-this.bufferPointer;if(e.length>=c){this.buffer.set(e.subarray(0,c),this.bufferPointer),this.bufferPointer+=c;let t=e.subarray(c);this.processSpeechSegment(t);return}else this.buffer.set(e,this.bufferPointer),this.bufferPointer+=e.length;if(n){this.isRecording||(this.emit(`speech-start`,void 0),this.emit(`status`,{type:`info`,message:`Speech detected`})),this.isRecording=!0,this.postSpeechSamples=0;return}if(this.postSpeechSamples+=e.length,this.postSpeechSamples>=i){if(this.bufferPointer{var e;return(e=this.model)?.call(this,{input:t,sr:this.sampleRateTensor,state:this.state})}));this.state=n;let i=r.data[0];return this.emit(`debug`,{message:`VAD score`,data:{probability:i}}),i>this.config.speechThreshold||this.isRecording&&i>=this.config.exitThreshold}processSpeechSegment(e){let t=this.config.sampleRate/1e3,n=this.config.speechPadMs*t,r=this.bufferPointer/this.config.sampleRate*1e3,i=e?.length??0,a=this.prevBuffers.reduce((e,t)=>e+t.length,0),o=new Float32Array(a+this.bufferPointer+n),s=0;for(let e of this.prevBuffers)o.set(e,s),s+=e.length;o.set(this.buffer.slice(0,this.bufferPointer+n),s),this.emit(`speech-end`,void 0),this.emit(`speech-ready`,{buffer:o,duration:r}),e&&this.buffer.set(e,0),this.reset(i)}reset(e=0){this.buffer.fill(0,e),this.bufferPointer=e,this.isRecording=!1,this.postSpeechSamples=0,this.prevBuffers=[]}updateConfig(e){this.config={...this.config,...e},(e.maxBufferDuration||e.sampleRate)&&(this.buffer=new Float32Array(this.config.maxBufferDuration*this.config.sampleRate),this.bufferPointer=0),e.sampleRate&&(this.sampleRateTensor=new x(`int64`,[this.config.sampleRate],[]))}getLastProbability(){return 0}isCurrentlyRecording(){return this.isRecording}};async function se(e){let t=new C(e);return await t.initialize(),t}const w={class:`space-y-6`},ce={class:`rounded-lg bg-neutral-50 p-4 dark:bg-neutral-800`},le={class:`space-y-4`},T={key:0,class:`space-y-3`},ue={key:1,class:`space-y-3`},de={key:2,class:`space-y-3`},fe={class:`flex items-center gap-3`},pe={class:`text-sm font-medium`},me={class:`ml-auto text-xs text-neutral-500`},he={class:`border-t border-neutral-200 pt-3 dark:border-neutral-700`},ge={key:0,class:`mt-3 space-y-2`},_e={key:0,class:`flex items-center gap-2 text-primary-600 dark:text-primary-400`},E={key:1,class:`flex items-center gap-2 text-red-600 dark:text-red-400`},ve={class:`text-sm`},D={key:2,class:`flex items-center gap-2 text-green-600 dark:text-green-400`},O={class:`ml-auto text-xs text-neutral-500`},k={key:1,class:`border-t border-neutral-200 pt-4 dark:border-neutral-700`},A={key:0,class:`mt-3`},j={key:2,class:`border border-amber-200 rounded-lg bg-amber-50 p-3 dark:border-amber-800 dark:bg-amber-900/20`},M=50;var N=p({__name:`hearing`,setup(e){var p;let b=v({constraints:{audio:!0}}),x=s(()=>b.audioInputs.value),S=h((p=b.audioInputs.value[0])?.deviceId||``),C=h(!1),N=h(!1),P=h(),F=h(),I=h(),L=h(),R=h(),z=h(),B=h(0),V=h(!1),H=h(25),U=h(50),W=h(),G=h(!1),K=h(!1),q=h(``),J=h(!0),Y=h(0),X=h(.5),Z=h([]);async function ye(){if(!(G.value||K.value)){K.value=!0,q.value=``;try{let e=await se({sampleRate:16e3,speechThreshold:X.value,exitThreshold:X.value*.3,minSilenceDurationMs:400});e.on(`speech-start`,()=>{V.value=!0}),e.on(`speech-end`,()=>{V.value=!1}),e.on(`debug`,({data:e})=>{e?.probability!==void 0&&(Y.value=e.probability,Z.value.push(e.probability),Z.value.length>M&&Z.value.shift())}),e.on(`status`,({type:e,message:t})=>{e===`error`&&(q.value=t)});let t=new oe(e,{minChunkSize:512,audioContextOptions:{sampleRate:16e3,latencyHint:`interactive`}});await t.initialize(ae),W.value=t,G.value=!0}catch(e){q.value=e instanceof Error?e.message:String(e),console.error(`Failed to load VAD model:`,e)}finally{K.value=!1}}}async function Q(){try{if(!S.value){console.warn(`No audio input device selected`);return}await $(),F.value=await navigator.mediaDevices.getUserMedia({audio:{deviceId:S.value,echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0}}),P.value=new AudioContext;let e=P.value.createMediaStreamSource(F.value);I.value=P.value.createAnalyser(),I.value.fftSize=256,I.value.smoothingTimeConstant=.3,L.value=P.value.createGain(),L.value.gain.value=N.value?U.value/100:0,e.connect(I.value),N.value&&(e.connect(L.value),L.value.connect(P.value.destination));let t=I.value.frequencyBinCount;R.value=new Uint8Array(t),be(),J.value&&(await ye(),W.value&&await W.value.startMicrophone())}catch(e){console.error(`Error setting up audio monitoring:`,e),q.value=e instanceof Error?e.message:String(e)}}async function $(){z.value&&(cancelAnimationFrame(z.value),z.value=void 0),W.value&&await W.value.stopMicrophone(),F.value&&(F.value.getTracks().forEach(e=>e.stop()),F.value=void 0),P.value&&(await P.value.close(),P.value=void 0),I.value=void 0,L.value=void 0,R.value=void 0,B.value=0,V.value=!1,Y.value=0,Z.value=[]}function be(){let e=()=>{if(!I.value||!R.value)return;I.value.getByteFrequencyData(R.value);let t=0;for(let e=0;eH.value),z.value=requestAnimationFrame(e)};e()}async function xe(){!P.value||!L.value||(N.value?(L.value.gain.value=U.value/100,L.value.connect(P.value.destination)):(L.value.gain.value=0,L.value.disconnect()))}y(S,async()=>{C.value&&await Q()}),y(N,xe),y(U,()=>{L.value&&N.value&&(L.value.gain.value=U.value/100)}),y(x,()=>{var e;!S.value&&x.value.length>0&&(S.value=(e=x.value[0])?.deviceId)}),y(X,()=>{W.value&&G.value});async function Se(){C.value?await Q():await $()}let Ce=s(()=>{if(!J.value||!G.value)return V.value?`bg-green-500 shadow-lg shadow-green-500/50`:`bg-white dark:bg-neutral-900 border-2 border-neutral-300 dark:border-neutral-600`;let e=Y.value,t=X.value;return e>t?`bg-green-500 shadow-lg shadow-green-500/50`:e>t*.5?`bg-yellow-500 shadow-lg shadow-yellow-500/30`:`bg-white dark:bg-neutral-900 border-2 border-neutral-300 dark:border-neutral-600`});return re(()=>{b.ensurePermissions().then(()=>te()).then(()=>{var e;x.value.length>0&&!S.value&&(S.value=(e=x.value[0])?.deviceId)})}),ie(()=>{$(),W.value&&W.value.dispose()}),(e,s)=>(m(),d(`div`,w,[c(`div`,null,[f(_(r),{modelValue:S.value,"onUpdate:modelValue":s[0]||=e=>S.value=e,label:`Audio Input Device`,description:`Select the audio input device for your hearing module.`,options:x.value.map(e=>({label:e.label||e.deviceId,value:e.deviceId})),placeholder:`Select an audio input device`},null,8,[`modelValue`,`options`])]),c(`div`,ce,[s[12]||=c(`h3`,{class:`mb-4 flex items-center gap-2 text-lg`},[c(`div`,{class:`text-xl`,"i-solar:volume-loud-bold-duotone":``}),ee(` Monitoring `)],-1),c(`div`,le,[f(_(t),{modelValue:C.value,"onUpdate:modelValue":[s[1]||=e=>C.value=e,Se],label:`Enable Audio Monitoring`,description:`Start monitoring audio input levels and voice activity detection`},null,8,[`modelValue`]),C.value?(m(),d(`div`,T,[f(_(i),{level:B.value,label:`Input Level`},null,8,[`level`]),J.value&&G.value?(m(),l(_(a),{key:0,value:Y.value,threshold:X.value,label:`Probability of Speech`,"below-label":`Silence`,"above-label":`Speech`,"threshold-label":`Detection threshold`},null,8,[`value`,`threshold`])):u(``,!0),J.value&&G.value?(m(),d(`div`,ue,[f(_(n),{modelValue:X.value,"onUpdate:modelValue":s[2]||=e=>X.value=e,label:`Sensitivity`,description:`Adjust the threshold for speech detection`,min:.1,max:.9,step:.05,"format-value":e=>`${(e*100).toFixed(0)}%`},null,8,[`modelValue`,`format-value`])])):(m(),d(`div`,de,[f(_(n),{modelValue:H.value,"onUpdate:modelValue":s[3]||=e=>H.value=e,label:`Sensitivity`,description:`Adjust the threshold for speech detection`,min:1,max:80,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`])])),c(`div`,fe,[c(`div`,{class:ne([`h-4 w-4 rounded-full transition-all duration-200`,Ce.value])},null,2),c(`span`,pe,g(V.value?`Speaking Detected`:`Silence`),1),c(`span`,me,g(J.value&&G.value?`Model Based`:`Volume Based`),1)]),c(`div`,he,[f(_(t),{modelValue:J.value,"onUpdate:modelValue":s[4]||=e=>J.value=e,label:`Model Based`,description:`Use AI models for more accurate speech detection`},null,8,[`modelValue`]),J.value?(m(),d(`div`,ge,[K.value?(m(),d(`div`,_e,s[7]||=[c(`div`,{class:`animate-spin text-sm`,"i-solar:spinner-line-duotone":``},null,-1),c(`span`,{class:`text-sm`},`Loading...`,-1)])):q.value?(m(),d(`div`,E,[s[8]||=c(`div`,{class:`text-sm`,"i-solar:close-circle-bold-duotone":``},null,-1),c(`span`,ve,`Inference error: `+g(q.value),1)])):G.value?(m(),d(`div`,D,[s[9]||=c(`div`,{class:`text-sm`,"i-solar:check-circle-bold-duotone":``},null,-1),s[10]||=c(`span`,{class:`text-sm`},`Activated`,-1),c(`span`,O,` Probability: `+g((Y.value*100).toFixed(1))+`% `,1)])):u(``,!0)])):u(``,!0)]),J.value&&G.value?(m(),l(_(o),{key:3,history:Z.value,"current-value":Y.value,threshold:X.value,"is-active":V.value,title:`Voice Activity`,subtitle:`Last 2 seconds`,"active-label":`Speaking`,"active-legend-label":`Voice detected`,"inactive-legend-label":`Silence`,"threshold-label":`Speech threshold`},null,8,[`history`,`current-value`,`threshold`,`is-active`])):u(``,!0)])):u(``,!0),C.value?(m(),d(`div`,k,[f(_(t),{modelValue:N.value,"onUpdate:modelValue":s[5]||=e=>N.value=e,label:`Monitor Audio (Listen)`,description:`Enable audio playback monitoring (like OBS). Be careful of feedback!`},null,8,[`modelValue`]),N.value?(m(),d(`div`,A,[f(_(n),{modelValue:U.value,"onUpdate:modelValue":s[6]||=e=>U.value=e,label:`Monitor Volume`,description:`Control the volume of audio monitoring playback`,min:0,max:100,step:5,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`])])):u(``,!0)])):u(``,!0),N.value?(m(),d(`div`,j,s[11]||=[c(`div`,{class:`flex items-center gap-2 text-amber-700 dark:text-amber-300`},[c(`div`,{class:`text-sm`,"i-solar:warning-circle-bold-duotone":``}),c(`span`,{class:`text-sm font-medium`},`Audio feedback warning`)],-1),c(`div`,{class:`mt-1 text-xs text-amber-600 dark:text-amber-400`},` Use headphones to prevent audio feedback. Lower the monitor volume if you hear echoing. `,-1)])):u(``,!0)])])]))}});typeof S==`function`&&S(N);var P=N;export{P as default}; \ No newline at end of file diff --git a/assets/hearing-DXhzYE8B.js b/assets/hearing-DXhzYE8B.js new file mode 100644 index 0000000000000000000000000000000000000000..0b39f60054ee4075871997e3162c51dfd86d4b74 --- /dev/null +++ b/assets/hearing-DXhzYE8B.js @@ -0,0 +1 @@ +import{a7 as e,a8 as t,aA as n,aD as r,aO as i,ab as a,as as o,d3 as s,d6 as c,d7 as ee,d9 as l,dB as u,dF as d,dH as f,dI as te,dK as p,dV as m,db as h,df as ne,dj as g,dn as _,dv as v,e1 as y,e2 as re}from"./index-C9kcCpP-.js";import{c as b,f as x}from"./transformers.web-BihMDlzQ.js";import{b as S}from"./route-block-B2lA4iHQ.js";var C=`/assets/process.worklet-CF6Ao8XG.js`,w=class{audioContext=null;audioWorkletNode=null;mediaStream=null;sourceNode=null;vad;workletInitialized=!1;constructor(e,t={}){this.vad=e,this.audioContext=new AudioContext(t.audioContextOptions||{sampleRate:16e3,latencyHint:`interactive`})}async initialize(e){if(!this.audioContext)throw Error(`Audio context not created`);try{this.workletInitialized||(await this.audioContext.audioWorklet.addModule(e),URL.revokeObjectURL(e),this.workletInitialized=!0),this.audioWorkletNode=new AudioWorkletNode(this.audioContext,`vad-processor`),this.audioWorkletNode.port.onmessage=async e=>{let{buffer:t}=e.data;t&&t.length>0&&await this.vad.processAudio(new Float32Array(t))}}catch(e){throw console.error(`Failed to initialize audio worklet:`,e),e}}async startMicrophone(){if(!this.audioContext||!this.audioWorkletNode)throw Error(`Audio system not initialized. Call initialize() first.`);try{this.audioContext.state===`suspended`&&await this.audioContext.resume(),this.mediaStream=await navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,sampleRate:this.audioContext.sampleRate}}),this.sourceNode=this.audioContext.createMediaStreamSource(this.mediaStream),this.sourceNode.connect(this.audioWorkletNode);let e=this.audioContext.createGain();e.gain.value=0,this.audioWorkletNode.connect(e),e.connect(this.audioContext.destination)}catch(e){throw console.error(`Failed to start microphone:`,e),e}}async stopMicrophone(){this.mediaStream&&(this.mediaStream.getTracks().forEach(e=>e.stop()),this.mediaStream=null),this.sourceNode&&(this.sourceNode.disconnect(),this.sourceNode=null),this.audioContext?.suspend(),this.audioWorkletNode?.disconnect()}stop(){this.sourceNode&&this.audioWorkletNode&&(this.sourceNode.disconnect(),this.audioWorkletNode.disconnect()),this.mediaStream&&(this.mediaStream.getTracks().forEach(e=>e.stop()),this.mediaStream=null),this.audioContext&&this.audioContext.state!==`closed`&&this.audioContext.suspend(),this.sourceNode=null,this.audioWorkletNode=null}dispose(){this.stop(),this.audioContext&&this.audioContext.state!==`closed`&&(this.audioContext.close(),this.audioContext=null),this.workletInitialized=!1}},T=class{config;model;state;sampleRateTensor;buffer;bufferPointer=0;isRecording=!1;postSpeechSamples=0;prevBuffers=[];inferenceChain=Promise.resolve();eventListeners={};isReady=!1;constructor(e={}){let t={sampleRate:16e3,speechThreshold:.3,exitThreshold:.1,minSilenceDurationMs:400,speechPadMs:80,minSpeechDurationMs:250,maxBufferDuration:30,newBufferSize:512};this.config={...t,...e},this.buffer=new Float32Array(this.config.maxBufferDuration*this.config.sampleRate),this.sampleRateTensor=new b(`int64`,[this.config.sampleRate],[]),this.state=new b(`float32`,new Float32Array(2*1*128),[2,1,128])}async initialize(){try{this.emit(`status`,{type:`info`,message:`Loading VAD model...`}),this.model=await x.from_pretrained(`onnx-community/silero-vad`,{config:{model_type:`custom`},dtype:`fp32`}),this.isReady=!0,this.emit(`status`,{type:`info`,message:`VAD model loaded successfully`})}catch(e){throw this.emit(`status`,{type:`error`,message:`Failed to load VAD model: ${e}`}),e}}on(e,t){this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(t)}off(e,t){this.eventListeners[e]&&(this.eventListeners[e]=this.eventListeners[e].filter(e=>e!==t))}emit(e,t){if(this.eventListeners[e])for(let n of this.eventListeners[e])n(t)}async processAudio(e){if(!this.isReady)throw Error(`VAD model is not initialized. Call initialize() first.`);let t=this.isRecording,n=await this.detectSpeech(e),r=this.config.sampleRate/1e3,i=this.config.minSilenceDurationMs*r,a=this.config.speechPadMs*r,o=this.config.minSpeechDurationMs*r,s=Math.ceil(a/this.config.newBufferSize);if(!t&&!n){this.prevBuffers.length>=s&&this.prevBuffers.shift(),this.prevBuffers.push(e.slice(0));return}let c=this.buffer.length-this.bufferPointer;if(e.length>=c){this.buffer.set(e.subarray(0,c),this.bufferPointer),this.bufferPointer+=c;let t=e.subarray(c);this.processSpeechSegment(t);return}else this.buffer.set(e,this.bufferPointer),this.bufferPointer+=e.length;if(n){this.isRecording||(this.emit(`speech-start`,void 0),this.emit(`status`,{type:`info`,message:`Speech detected`})),this.isRecording=!0,this.postSpeechSamples=0;return}if(this.postSpeechSamples+=e.length,this.postSpeechSamples>=i){if(this.bufferPointerthis.model?.({input:t,sr:this.sampleRateTensor,state:this.state})));this.state=n;let i=r.data[0];return this.emit(`debug`,{message:`VAD score`,data:{probability:i}}),i>this.config.speechThreshold||this.isRecording&&i>=this.config.exitThreshold}processSpeechSegment(e){let t=this.config.sampleRate/1e3,n=this.config.speechPadMs*t,r=this.bufferPointer/this.config.sampleRate*1e3,i=e?.length??0,a=this.prevBuffers.reduce((e,t)=>e+t.length,0),o=new Float32Array(a+this.bufferPointer+n),s=0;for(let e of this.prevBuffers)o.set(e,s),s+=e.length;o.set(this.buffer.slice(0,this.bufferPointer+n),s),this.emit(`speech-end`,void 0),this.emit(`speech-ready`,{buffer:o,duration:r}),e&&this.buffer.set(e,0),this.reset(i)}reset(e=0){this.buffer.fill(0,e),this.bufferPointer=e,this.isRecording=!1,this.postSpeechSamples=0,this.prevBuffers=[]}updateConfig(e){this.config={...this.config,...e},(e.maxBufferDuration||e.sampleRate)&&(this.buffer=new Float32Array(this.config.maxBufferDuration*this.config.sampleRate),this.bufferPointer=0),e.sampleRate&&(this.sampleRateTensor=new b(`int64`,[this.config.sampleRate],[]))}getLastProbability(){return 0}isCurrentlyRecording(){return this.isRecording}};async function ie(e){let t=new T(e);return await t.initialize(),t}const ae={class:`space-y-6`},E={class:`rounded-lg bg-neutral-50 p-4 dark:bg-neutral-800`},D={class:`space-y-4`},O={key:0,class:`space-y-3`},oe={key:1,class:`space-y-3`},se={key:2,class:`space-y-3`},ce={class:`flex items-center gap-3`},le={class:`text-sm font-medium`},ue={class:`ml-auto text-xs text-neutral-500`},de={class:`border-t border-neutral-200 pt-3 dark:border-neutral-700`},fe={key:0,class:`mt-3 space-y-2`},pe={key:0,class:`flex items-center gap-2 text-primary-600 dark:text-primary-400`},me={key:1,class:`flex items-center gap-2 text-red-600 dark:text-red-400`},he={class:`text-sm`},ge={key:2,class:`flex items-center gap-2 text-green-600 dark:text-green-400`},_e={class:`ml-auto text-xs text-neutral-500`},k={key:1,class:`border-t border-neutral-200 pt-4 dark:border-neutral-700`},A={key:0,class:`mt-3`},j={key:2,class:`border border-amber-200 rounded-lg bg-amber-50 p-3 dark:border-amber-800 dark:bg-amber-900/20`},M=50;var N=ee({__name:`hearing`,setup(ee){let b=i({constraints:{audio:!0}}),x=v(()=>b.audioInputs.value),S=p(b.audioInputs.value[0]?.deviceId||``),T=p(!1),N=p(!1),P=p(),F=p(),I=p(),L=p(),R=p(),z=p(),B=p(0),V=p(!1),H=p(25),U=p(50),W=p(),G=p(!1),K=p(!1),q=p(``),J=p(!0),Y=p(0),X=p(.5),Z=p([]);async function ve(){if(!(G.value||K.value)){K.value=!0,q.value=``;try{let e=await ie({sampleRate:16e3,speechThreshold:X.value,exitThreshold:X.value*.3,minSilenceDurationMs:400});e.on(`speech-start`,()=>{V.value=!0}),e.on(`speech-end`,()=>{V.value=!1}),e.on(`debug`,({data:e})=>{e?.probability!==void 0&&(Y.value=e.probability,Z.value.push(e.probability),Z.value.length>M&&Z.value.shift())}),e.on(`status`,({type:e,message:t})=>{e===`error`&&(q.value=t)});let t=new w(e,{minChunkSize:512,audioContextOptions:{sampleRate:16e3,latencyHint:`interactive`}});await t.initialize(C),W.value=t,G.value=!0}catch(e){q.value=e instanceof Error?e.message:String(e),console.error(`Failed to load VAD model:`,e)}finally{K.value=!1}}}async function Q(){try{if(!S.value){console.warn(`No audio input device selected`);return}await $(),F.value=await navigator.mediaDevices.getUserMedia({audio:{deviceId:S.value,echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0}}),P.value=new AudioContext;let e=P.value.createMediaStreamSource(F.value);I.value=P.value.createAnalyser(),I.value.fftSize=256,I.value.smoothingTimeConstant=.3,L.value=P.value.createGain(),L.value.gain.value=N.value?U.value/100:0,e.connect(I.value),N.value&&(e.connect(L.value),L.value.connect(P.value.destination));let t=I.value.frequencyBinCount;R.value=new Uint8Array(t),ye(),J.value&&(await ve(),W.value&&await W.value.startMicrophone())}catch(e){console.error(`Error setting up audio monitoring:`,e),q.value=e instanceof Error?e.message:String(e)}}async function $(){z.value&&(cancelAnimationFrame(z.value),z.value=void 0),W.value&&await W.value.stopMicrophone(),F.value&&(F.value.getTracks().forEach(e=>e.stop()),F.value=void 0),P.value&&(await P.value.close(),P.value=void 0),I.value=void 0,L.value=void 0,R.value=void 0,B.value=0,V.value=!1,Y.value=0,Z.value=[]}function ye(){let e=()=>{if(!I.value||!R.value)return;I.value.getByteFrequencyData(R.value);let t=0;for(let e=0;eH.value),z.value=requestAnimationFrame(e)};e()}async function be(){!P.value||!L.value||(N.value?(L.value.gain.value=U.value/100,L.value.connect(P.value.destination)):(L.value.gain.value=0,L.value.disconnect()))}d(S,async()=>{T.value&&await Q()}),d(N,be),d(U,()=>{L.value&&N.value&&(L.value.gain.value=U.value/100)}),d(x,()=>{!S.value&&x.value.length>0&&(S.value=x.value[0]?.deviceId)}),d(X,()=>{W.value&&G.value});async function xe(){T.value?await Q():await $()}let Se=v(()=>{if(!J.value||!G.value)return V.value?`bg-green-500 shadow-lg shadow-green-500/50`:`bg-white dark:bg-neutral-900 border-2 border-neutral-300 dark:border-neutral-600`;let e=Y.value,t=X.value;return e>t?`bg-green-500 shadow-lg shadow-green-500/50`:e>t*.5?`bg-yellow-500 shadow-lg shadow-yellow-500/30`:`bg-white dark:bg-neutral-900 border-2 border-neutral-300 dark:border-neutral-600`});return s(()=>{b.ensurePermissions().then(()=>c()).then(()=>{x.value.length>0&&!S.value&&(S.value=x.value[0]?.deviceId)})}),ne(()=>{$(),W.value&&W.value.dispose()}),(i,s)=>(f(),h(`div`,ae,[g(`div`,null,[u(m(e),{modelValue:S.value,"onUpdate:modelValue":s[0]||=e=>S.value=e,label:`Audio Input Device`,description:`Select the audio input device for your hearing module.`,options:x.value.map(e=>({label:e.label||e.deviceId,value:e.deviceId})),placeholder:`Select an audio input device`},null,8,[`modelValue`,`options`])]),g(`div`,E,[s[12]||=g(`h3`,{class:`mb-4 flex items-center gap-2 text-lg`},[g(`div`,{class:`text-xl`,"i-solar:volume-loud-bold-duotone":``}),te(` Monitoring `)],-1),g(`div`,D,[u(m(a),{modelValue:T.value,"onUpdate:modelValue":[s[1]||=e=>T.value=e,xe],label:`Enable Audio Monitoring`,description:`Start monitoring audio input levels and voice activity detection`},null,8,[`modelValue`]),T.value?(f(),h(`div`,O,[u(m(r),{level:B.value,label:`Input Level`},null,8,[`level`]),J.value&&G.value?(f(),_(m(n),{key:0,value:Y.value,threshold:X.value,label:`Probability of Speech`,"below-label":`Silence`,"above-label":`Speech`,"threshold-label":`Detection threshold`},null,8,[`value`,`threshold`])):l(``,!0),J.value&&G.value?(f(),h(`div`,oe,[u(m(t),{modelValue:X.value,"onUpdate:modelValue":s[2]||=e=>X.value=e,label:`Sensitivity`,description:`Adjust the threshold for speech detection`,min:.1,max:.9,step:.05,"format-value":e=>`${(e*100).toFixed(0)}%`},null,8,[`modelValue`,`format-value`])])):(f(),h(`div`,se,[u(m(t),{modelValue:H.value,"onUpdate:modelValue":s[3]||=e=>H.value=e,label:`Sensitivity`,description:`Adjust the threshold for speech detection`,min:1,max:80,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`])])),g(`div`,ce,[g(`div`,{class:re([`h-4 w-4 rounded-full transition-all duration-200`,Se.value])},null,2),g(`span`,le,y(V.value?`Speaking Detected`:`Silence`),1),g(`span`,ue,y(J.value&&G.value?`Model Based`:`Volume Based`),1)]),g(`div`,de,[u(m(a),{modelValue:J.value,"onUpdate:modelValue":s[4]||=e=>J.value=e,label:`Model Based`,description:`Use AI models for more accurate speech detection`},null,8,[`modelValue`]),J.value?(f(),h(`div`,fe,[K.value?(f(),h(`div`,pe,s[7]||=[g(`div`,{class:`animate-spin text-sm`,"i-solar:spinner-line-duotone":``},null,-1),g(`span`,{class:`text-sm`},`Loading...`,-1)])):q.value?(f(),h(`div`,me,[s[8]||=g(`div`,{class:`text-sm`,"i-solar:close-circle-bold-duotone":``},null,-1),g(`span`,he,`Inference error: `+y(q.value),1)])):G.value?(f(),h(`div`,ge,[s[9]||=g(`div`,{class:`text-sm`,"i-solar:check-circle-bold-duotone":``},null,-1),s[10]||=g(`span`,{class:`text-sm`},`Activated`,-1),g(`span`,_e,` Probability: `+y((Y.value*100).toFixed(1))+`% `,1)])):l(``,!0)])):l(``,!0)]),J.value&&G.value?(f(),_(m(o),{key:3,history:Z.value,"current-value":Y.value,threshold:X.value,"is-active":V.value,title:`Voice Activity`,subtitle:`Last 2 seconds`,"active-label":`Speaking`,"active-legend-label":`Voice detected`,"inactive-legend-label":`Silence`,"threshold-label":`Speech threshold`},null,8,[`history`,`current-value`,`threshold`,`is-active`])):l(``,!0)])):l(``,!0),T.value?(f(),h(`div`,k,[u(m(a),{modelValue:N.value,"onUpdate:modelValue":s[5]||=e=>N.value=e,label:`Monitor Audio (Listen)`,description:`Enable audio playback monitoring (like OBS). Be careful of feedback!`},null,8,[`modelValue`]),N.value?(f(),h(`div`,A,[u(m(t),{modelValue:U.value,"onUpdate:modelValue":s[6]||=e=>U.value=e,label:`Monitor Volume`,description:`Control the volume of audio monitoring playback`,min:0,max:100,step:5,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`])])):l(``,!0)])):l(``,!0),N.value?(f(),h(`div`,j,s[11]||=[g(`div`,{class:`flex items-center gap-2 text-amber-700 dark:text-amber-300`},[g(`div`,{class:`text-sm`,"i-solar:warning-circle-bold-duotone":``}),g(`span`,{class:`text-sm font-medium`},`Audio feedback warning`)],-1),g(`div`,{class:`mt-1 text-xs text-amber-600 dark:text-amber-400`},` Use headphones to prevent audio feedback. Lower the monitor volume if you hear echoing. `,-1)])):l(``,!0)])])]))}});typeof S==`function`&&S(N);var P=N;export{P as default}; \ No newline at end of file diff --git a/assets/home-C5vBXnsS.js b/assets/home-C5vBXnsS.js new file mode 100644 index 0000000000000000000000000000000000000000..f6cbba00fc5d4223401540b7d23d0d1a8d6b35f2 --- /dev/null +++ b/assets/home-C5vBXnsS.js @@ -0,0 +1 @@ +import{aH as e,d7 as t,dB as n,dH as r,dV as i,db as a,dj as o}from"./index-C9kcCpP-.js";const s={style:{paddingBottom:`env(safe-area-inset-bottom, 0px)`,paddingTop:`env(safe-area-inset-top, 0px)`,paddingRight:`env(safe-area-inset-right, 0px)`,paddingLeft:`env(safe-area-inset-left, 0px)`},"h-full":``},c={class:`px-3 py-2 md:px-5 md:py-5`,flex:`~ col`,"h-full":``};var l=t({__name:`home`,setup(t){return(t,l)=>(r(),a(`div`,s,[o(`div`,c,[n(i(e))])]))}}),u=l;export{u as default}; \ No newline at end of file diff --git a/assets/home-C8SJ9QB4.js b/assets/home-C8SJ9QB4.js deleted file mode 100644 index 418c0cc9be935c7ecb3e7d126bf77478c2fa2322..0000000000000000000000000000000000000000 --- a/assets/home-C8SJ9QB4.js +++ /dev/null @@ -1 +0,0 @@ -import{RouterView as e,createBaseVNode as t,createElementBlock as n,createVNode as r,defineComponent as i,openBlock as a,unref as o}from"./index-iQVr9nx1.js";const s={style:{paddingBottom:`env(safe-area-inset-bottom, 0px)`,paddingTop:`env(safe-area-inset-top, 0px)`,paddingRight:`env(safe-area-inset-right, 0px)`,paddingLeft:`env(safe-area-inset-left, 0px)`},"h-full":``},c={class:`px-3 py-2 md:px-5 md:py-5`,flex:`~ col`,"h-full":``};var l=i({__name:`home`,setup(i){return(i,l)=>(a(),n(`div`,s,[t(`div`,c,[r(o(e))])]))}}),u=l;export{u as default}; \ No newline at end of file diff --git a/assets/icon-animation-B3Ug4nWM.js b/assets/icon-animation-B3Ug4nWM.js deleted file mode 100644 index 78bf69ba2a8b85722e8c56b8022fb1bce67ed25a..0000000000000000000000000000000000000000 --- a/assets/icon-animation-B3Ug4nWM.js +++ /dev/null @@ -1 +0,0 @@ -import{computed as e,onMounted as t,onUnmounted as n,ref as r,useSettings as i}from"./index-iQVr9nx1.js";function a(a){let o=r(!1),s=r(!1),c=r(a),l=i(),u=e(()=>s.value&&!l.disableTransitions&&l.usePageSpecificTransitions);return t(()=>{s.value=!0,requestAnimationFrame(()=>{o.value=!0})}),n(()=>{o.value=!1,s.value=!1}),{iconAnimationStarted:o,showIconAnimation:u,animationIcon:c}}export{a as useIconAnimation}; \ No newline at end of file diff --git a/assets/icon-animation-BGVKm1so.js b/assets/icon-animation-BGVKm1so.js new file mode 100644 index 0000000000000000000000000000000000000000..c350d93848bf5fd84f3117acfe45124efa106f5a --- /dev/null +++ b/assets/icon-animation-BGVKm1so.js @@ -0,0 +1 @@ +import{d as e,d3 as t,dK as n,df as r,dv as i}from"./index-C9kcCpP-.js";function a(a){let o=n(!1),s=n(!1),c=n(a),l=e(),u=i(()=>s.value&&!l.disableTransitions&&l.usePageSpecificTransitions);return t(()=>{s.value=!0,requestAnimationFrame(()=>{o.value=!0})}),r(()=>{o.value=!1,s.value=!1}),{iconAnimationStarted:o,showIconAnimation:u,animationIcon:c}}export{a as b}; \ No newline at end of file diff --git a/assets/image-DCQY7vtj.js b/assets/image-DCQY7vtj.js new file mode 100644 index 0000000000000000000000000000000000000000..d368a84eeccd3026b4480027c96ab02ec103746e --- /dev/null +++ b/assets/image-DCQY7vtj.js @@ -0,0 +1,2 @@ +import{aC as e,aP as t,d7 as n,d9 as r,dH as i,dK as a,dV as o,db as s,dj as c,e1 as l}from"./index-C9kcCpP-.js";const u={bg:`neutral-100`,flex:`~ col`,"items-center":``,"justify-center":``,"rounded-lg":``,"px-4":``,"py-3":``},d={key:0},f=[`src`],p={bg:`neutral-100`,class:`text-wrap-any`,"max-h":`100`,"overflow-scroll":``,"rounded-lg":``,"text-wrap":``,"text-black":``,"font-mono":``};var m=n({__name:`image`,setup(e){let n=a(),m=a(``),{copy:h}=t({source:m});async function g(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=e=>{t(e.target?.result?.toString()||``)},r.onerror=e=>{n(e)},r.readAsDataURL(e)})}async function _(e){let t=e.target,r=t.files?.[0];if(r){n.value=r;let e=await g(r);m.value=e}}return(e,t)=>(i(),s(`div`,null,[c(`label`,u,[c(`input`,{type:`file`,accept:`image/*`,hidden:``,onChange:_},null,32),t[1]||=c(`span`,null,`Upload Image`,-1)]),m.value?(i(),s(`div`,d,[c(`img`,{src:m.value,alt:`Uploaded Image`,"w-100":``},null,8,f),c(`pre`,p,` `+l(m.value)+` + `,1),c(`button`,{bg:`primary-500`,text:`white`,"mt-4":``,"rounded-lg":``,"px-4":``,"py-2":``,onClick:t[0]||=()=>o(h)()},` Copy Data URL `)])):r(``,!0)]))}}),h=e(m,[[`__scopeId`,`data-v-7edd53e6`]]);export{h as default}; \ No newline at end of file diff --git a/assets/image-FSHpQQAR.js b/assets/image-FSHpQQAR.js deleted file mode 100644 index 793abcd56c0ddd1afca469d3bd25666ac1f51c96..0000000000000000000000000000000000000000 --- a/assets/image-FSHpQQAR.js +++ /dev/null @@ -1,2 +0,0 @@ -import{__plugin_vue_export_helper_default as e,createBaseVNode as t,createCommentVNode as n,createElementBlock as r,defineComponent as i,openBlock as a,ref as o,toDisplayString as s,unref as c,useClipboard as l}from"./index-iQVr9nx1.js";const u={bg:`neutral-100`,flex:`~ col`,"items-center":``,"justify-center":``,"rounded-lg":``,"px-4":``,"py-3":``},d={key:0},f=[`src`],p={bg:`neutral-100`,class:`text-wrap-any`,"max-h":`100`,"overflow-scroll":``,"rounded-lg":``,"text-wrap":``,"text-black":``,"font-mono":``};var m=i({__name:`image`,setup(e){let i=o(),m=o(``),{copy:h}=l({source:m});async function g(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=e=>{var n;t(((n=e.target)==null||(n=n.result)==null?void 0:n.toString())||``)},r.onerror=e=>{n(e)},r.readAsDataURL(e)})}async function _(e){var t;let n=e.target,r=(t=n.files)?.[0];if(r){i.value=r;let e=await g(r);m.value=e}}return(e,i)=>(a(),r(`div`,null,[t(`label`,u,[t(`input`,{type:`file`,accept:`image/*`,hidden:``,onChange:_},null,32),i[1]||=t(`span`,null,`Upload Image`,-1)]),m.value?(a(),r(`div`,d,[t(`img`,{src:m.value,alt:`Uploaded Image`,"w-100":``},null,8,f),t(`pre`,p,` `+s(m.value)+` - `,1),t(`button`,{bg:`primary-500`,text:`white`,"mt-4":``,"rounded-lg":``,"px-4":``,"py-2":``,onClick:i[0]||=()=>c(h)()},` Copy Data URL `)])):n(``,!0)]))}}),h=e(m,[[`__scopeId`,`data-v-7edd53e6`]]);export{h as default}; \ No newline at end of file diff --git a/assets/import-url-browser-7PcqReZq.js b/assets/import-url-browser-7PcqReZq.js deleted file mode 100644 index b7b8a21e2577a39a9c567863090dca1424dbb2da..0000000000000000000000000000000000000000 --- a/assets/import-url-browser-7PcqReZq.js +++ /dev/null @@ -1 +0,0 @@ -import{duckdb_eh_default as e,duckdb_mvp_default as t}from"./duckdb-mvp-D888HGlq.js";var n=`/assets/duckdb-browser-eh.worker-B2xnDV1H.js`,r=`/assets/duckdb-browser-mvp.worker-DCs3_EjR.js`,i=`/assets/duckdb-coi-CSr8FQO4.wasm`,a=`/assets/duckdb-browser-coi.worker-Ji2I_m5s.js`,o=`/assets/duckdb-browser-coi.pthread.worker-WD1J30pV.js`;function s(){return{mvp:{mainModule:t,mainWorker:r},eh:{mainModule:e,mainWorker:n},coi:{mainModule:i,mainWorker:a,pthreadWorker:o}}}export{s as getImportUrlBundles}; \ No newline at end of file diff --git a/assets/import-url-browser-CimRTf1_.js b/assets/import-url-browser-CimRTf1_.js deleted file mode 100644 index b8b844921649c6922955c3f84d25ca5940c3e62f..0000000000000000000000000000000000000000 --- a/assets/import-url-browser-CimRTf1_.js +++ /dev/null @@ -1 +0,0 @@ -import{getImportUrlBundles as e}from"./import-url-browser-7PcqReZq.js";import"./duckdb-mvp-D888HGlq.js";export{e as getImportUrlBundles}; \ No newline at end of file diff --git a/assets/import-url-browser-D6BBwmoZ.js b/assets/import-url-browser-D6BBwmoZ.js new file mode 100644 index 0000000000000000000000000000000000000000..b1b6b05aa7107096028409a3a6504ec7bb390247 --- /dev/null +++ b/assets/import-url-browser-D6BBwmoZ.js @@ -0,0 +1 @@ +import{b as e,c as t}from"./duckdb-mvp-D8OBsaZy.js";var n=`/assets/duckdb-browser-eh.worker-B2xnDV1H.js`,r=`/assets/duckdb-browser-mvp.worker-DCs3_EjR.js`,i=`/assets/duckdb-coi-CSr8FQO4.wasm`,a=`/assets/duckdb-browser-coi.worker-Ji2I_m5s.js`,o=`/assets/duckdb-browser-coi.pthread.worker-WD1J30pV.js`;function s(){return{mvp:{mainModule:e,mainWorker:r},eh:{mainModule:t,mainWorker:n},coi:{mainModule:i,mainWorker:a,pthreadWorker:o}}}export{s as b}; \ No newline at end of file diff --git a/assets/import-url-browser-DiF0t3Mp.js b/assets/import-url-browser-DiF0t3Mp.js new file mode 100644 index 0000000000000000000000000000000000000000..1cbf4d5d0493a1055d749a5d46b5a6d6107229a0 --- /dev/null +++ b/assets/import-url-browser-DiF0t3Mp.js @@ -0,0 +1 @@ +import{b as e}from"./import-url-browser-D6BBwmoZ.js";import"./duckdb-mvp-D8OBsaZy.js";export{e as getImportUrlBundles}; \ No newline at end of file diff --git a/assets/import-url-node-6Z1GQvNO.js b/assets/import-url-node-6Z1GQvNO.js new file mode 100644 index 0000000000000000000000000000000000000000..7c60f6c5f882e0d831a833be6b9d1f3acbdfe59e --- /dev/null +++ b/assets/import-url-node-6Z1GQvNO.js @@ -0,0 +1 @@ +import{b as e,c as t}from"./duckdb-mvp-D8OBsaZy.js";var n=`/assets/duckdb-node-eh.worker-JckteRwc.cjs`,r=`/assets/duckdb-node-mvp.worker-GMEh9yNX.cjs`;function i(e){return e.startsWith(`/@fs/`)?e.replace(`/@fs/`,`file://`):e}async function a(){return{mvp:{mainModule:i(e),mainWorker:i(r)},eh:{mainModule:i(t),mainWorker:i(n)}}}export{a as getImportUrlBundles}; \ No newline at end of file diff --git a/assets/import-url-node-D_b2Vrj1.js b/assets/import-url-node-D_b2Vrj1.js deleted file mode 100644 index cb610324357a0db00b25fb7f818b708c34393c21..0000000000000000000000000000000000000000 --- a/assets/import-url-node-D_b2Vrj1.js +++ /dev/null @@ -1 +0,0 @@ -import{duckdb_eh_default as e,duckdb_mvp_default as t}from"./duckdb-mvp-D888HGlq.js";var n=`/assets/duckdb-node-eh.worker-JckteRwc.cjs`,r=`/assets/duckdb-node-mvp.worker-GMEh9yNX.cjs`;function i(e){return e.startsWith(`/@fs/`)?e.replace(`/@fs/`,`file://`):e}async function a(){return{mvp:{mainModule:i(t),mainWorker:i(r)},eh:{mainModule:i(e),mainWorker:i(n)}}}export{a as getImportUrlBundles}; \ No newline at end of file diff --git a/assets/index-AqR2SpAu.css b/assets/index-AqR2SpAu.css new file mode 100644 index 0000000000000000000000000000000000000000..0df32e34b17d64b385e27661c2f31e81ffa01b89 --- /dev/null +++ b/assets/index-AqR2SpAu.css @@ -0,0 +1 @@ +.volumed[data-v-d8ce56aa]{transform-style:preserve-3d;width:fit-content;height:fit-content}.test-dummy-flat[data-v-28f8c660]{display:inline-block;position:relative}.test-dummy-flat .marker[data-v-28f8c660]{background:conic-gradient(#ffeb3b 0deg 90deg,#000 90deg 180deg,#ffeb3b 180deg 270deg,#000 270deg 360deg);border-radius:50%;position:absolute;inset:0;box-shadow:0 4px 12px #b9b9b933}.dark .test-dummy-flat .marker[data-v-28f8c660]{box-shadow:0 4px 12px #0003}.fade-enter-active[data-v-6b4f300d],.fade-leave-active[data-v-6b4f300d]{transition:opacity .2s}.fade-enter-from[data-v-6b4f300d],.fade-leave-to[data-v-6b4f300d]{opacity:0}.fade-enter-to[data-v-6b4f300d],.fade-leave-from[data-v-6b4f300d]{opacity:1}.form_input-range[data-v-8956898c]{--height:2em;min-height:var(--height);appearance:none;--thumb-width:4px;--thumb-height:var(--height);--thumb-box-shadow:0 0 0px #e6e6e6;--thumb-border:none;--thumb-border-radius:999px;--thumb-background:oklch(80% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-hover:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-active:oklch(70% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--track-height:calc(var(--height) - var(--track-value-padding)*2);--track-box-shadow:none;--track-border:solid 2px #eee;--track-border-radius:6px;--track-background:#eee;--track-background-hover:#eee;--track-background-active:#eee;--track-value-background:#fff;--track-value-background-hover:#fff;--track-value-background-active:#fff;--track-value-padding:2px;background:0 0;border-radius:4px;transition:background-color .2s}.dark .form_input-range[data-v-8956898c]{--thumb-background:oklch(70% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-hover:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-active:oklch(80% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--track-border:solid 2px #2c2c2c;--track-background:#2c2c2c;--track-background-hover:#2c2c2c;--track-background-active:#2c2c2c;--track-value-background:#a4a4a4;--track-value-background-hover:#a4a4a4;--track-value-background-active:#a4a4a4}.form_input-range.slider-progress[data-v-8956898c]{--range:calc(var(--max) - var(--min));--ratio:calc((var(--value) - var(--min))/var(--range));--sx:calc(.5*0em + var(--ratio)*(100% - 0em))}.form_input-range[data-v-8956898c]:focus{outline:none}.form_input-range[data-v-8956898c]::-webkit-slider-thumb{appearance:none;width:var(--thumb-width);height:var(--thumb-height);border-radius:var(--thumb-border-radius);background:var(--thumb-background);border:var(--thumb-border);box-shadow:var(--thumb-box-shadow);margin-top:calc(var(--track-height)*.5 - var(--thumb-height)*.5 - 2px);margin-left:calc(0 - var(--track-value-padding));cursor:col-resize;transition:background .2s ease-in-out,box-shadow .2s ease-in-out,border-color .2s ease-in-out,transform .2s ease-in-out}.form_input-range[data-v-8956898c]::-webkit-slider-runnable-track{height:var(--track-height);border:var(--track-border);border-radius:var(--track-border-radius);background:var(--track-background);box-shadow:var(--track-box-shadow);cursor:col-resize;transition:box-shadow .2s ease-in-out,border-color .2s ease-in-out;position:relative}.form_input-range[data-v-8956898c]::-webkit-slider-thumb:hover{background:var(--thumb-background-hover)}.form_input-range[data-v-8956898c]:hover::-webkit-slider-runnable-track{background:var(--track-background-hover)}.form_input-range[data-v-8956898c]::-webkit-slider-thumb:active{background:var(--thumb-background-active)}.form_input-range[data-v-8956898c]:active::-webkit-slider-runnable-track{background:var(--track-background-active)}.form_input-range.slider-progress[data-v-8956898c]::-webkit-slider-runnable-track{margin-right:calc(0 - var(--track-value-padding));background:linear-gradient(var(--track-value-background),var(--track-value-background))0/var(--sx)100% no-repeat,var(--track-background)}.form_input-range.slider-progress[data-v-8956898c]:hover::-webkit-slider-runnable-track{background:linear-gradient(var(--track-value-background-hover),var(--track-value-background-hover))0/var(--sx)100% no-repeat,var(--track-background-hover)}.form_input-range.slider-progress[data-v-8956898c]:active::-webkit-slider-runnable-track{background:linear-gradient(var(--track-value-background-active),var(--track-value-background-active))0/var(--sx)100% no-repeat,var(--track-background-active)}.form_input-range[data-v-8956898c]::-moz-range-thumb{width:var(--thumb-width);height:var(--thumb-height);border-radius:var(--thumb-border-radius);background:var(--thumb-background);box-shadow:var(--thumb-box-shadow);cursor:col-resize;margin-left:calc(0 - var(--track-value-padding));border:none}.form_input-range[data-v-8956898c]::-moz-range-track{height:var(--track-height);border:var(--track-border);border-radius:var(--track-border-radius);background:var(--track-background);box-shadow:var(--track-box-shadow);cursor:col-resize;width:calc(100% - var(--track-value-padding)*2)}.form_input-range[data-v-8956898c]::-moz-range-thumb:hover{background:var(--thumb-background-hover)}.form_input-range[data-v-8956898c]:hover::-moz-range-track{background:var(--track-background-hover)}.form_input-range[data-v-8956898c]::-moz-range-thumb:active{background:var(--thumb-background-active)}.form_input-range[data-v-8956898c]:active::-moz-range-track{background:var(--track-background-active)}.form_input-range.slider-progress[data-v-8956898c]::-moz-range-track{background:linear-gradient(var(--track-value-background),var(--track-value-background))0/var(--sx)100% no-repeat,var(--track-background)}.form_input-range.slider-progress[data-v-8956898c]:hover::-moz-range-track{background:linear-gradient(var(--track-value-background-hover),var(--track-value-background-hover))0/var(--sx)100% no-repeat,var(--track-background-hover)}.form_input-range.slider-progress[data-v-8956898c]:active::-moz-range-track{background:linear-gradient(var(--track-value-background-active),var(--track-value-background-active))0/var(--sx)100% no-repeat,var(--track-background-active)}.form_input-range[data-v-8956898c]::-ms-fill-upper{background:0 0;border-color:#0000}.form_input-range[data-v-8956898c]::-ms-fill-lower{background:0 0;border-color:#0000}.form_input-range[data-v-8956898c]::-ms-thumb{width:var(--thumb-width);height:var(--thumb-height);border-radius:var(--thumb-border-radius);background:var(--thumb-background);border:var(--thumb-border);box-shadow:var(--thumb-box-shadow);margin-top:0;margin-left:calc(0 - var(--track-value-padding));box-sizing:border-box;cursor:col-resize}.form_input-range[data-v-8956898c]::-ms-track{height:var(--track-height);border-radius:var(--track-border-radius);background:var(--track-background);border:var(--track-border);box-shadow:var(--track-box-shadow);box-sizing:border-box;cursor:col-resize}.form_input-range[data-v-8956898c]::-ms-thumb:hover{background:var(--thumb-background-hover)}.form_input-range[data-v-8956898c]:hover::-ms-track{background:var(--track-background-hover)}.form_input-range[data-v-8956898c]::-ms-thumb:active{background:var(--thumb-background-active)}.form_input-range[data-v-8956898c]:active::-ms-track{background:var(--track-background-active)}.form_input-range.slider-progress[data-v-8956898c]::-ms-fill-lower{height:var(--track-height);border-radius:var(--track-border-radius)0 0 var(--track-border-radius);background:var(--track-value-background);margin:0;margin-left:calc(var(--track-value-padding));margin-right:calc(0 - var(--track-value-padding));border:none;border-right-width:0}.form_input-range.slider-progress[data-v-8956898c]:hover::-ms-fill-lower{background:var(--track-value-background-hover)}.form_input-range.slider-progress[data-v-8956898c]:active::-ms-fill-lower{background:var(--track-value-background-active)}.color-hue-range[data-v-49fc55e8]{appearance:none;background:linear-gradient(90deg,#ffb2cb,#ffba76,#bedf0d,#00efd2,#90d7ff,#d8bfff,#ffb2cb);background:linear-gradient(90deg,lab(80.0841% 65.3995 .860357),lab(81.7178% 42.879 86.4545),lab(84.2289% -27.648 80.2367),lab(85.1086% -71.1664 -.472653),lab(82.2823% -19.2763 -62.1951),lab(79.7314% 41.9269 -62.2558),lab(80.0841% 65.3994 .860381));border-radius:.5rem;height:2.5rem}.color-hue-range[data-v-49fc55e8]::-webkit-slider-thumb{cursor:pointer;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(115 115 115/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity));background-color:rgb(38 38 38/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dark .color-hue-range[data-v-49fc55e8]::-webkit-slider-thumb{cursor:pointer;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(255 255 255/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity));background-color:rgb(212 212 212/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.color-hue-range[data-v-49fc55e8]::-moz-range-thumb{cursor:pointer;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(115 115 115/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity));background-color:rgb(38 38 38/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dark .color-hue-range[data-v-49fc55e8]::-moz-range-thumb{cursor:pointer;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(255 255 255/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity));background-color:rgb(212 212 212/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.resize-observer[data-v-b329ee4c]{z-index:-1;pointer-events:none;opacity:0;background-color:#0000;border:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:hidden}.resize-observer[data-v-b329ee4c] object{pointer-events:none;z-index:-1;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:hidden}.v-popper__popper{z-index:10000;outline:none;top:0;left:0}.v-popper__arrow-container{display:none}.v-popper__inner{border:none!important}.menu-icon-item[data-v-d08788bb]{position:relative;overflow:hidden}.menu-icon-item[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:-1;opacity:0;width:25%;height:100%;transition:all .4s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#fff 30%,#0000 50%);mask-image:linear-gradient(120deg,#fff 30%,#0000 50%)}.dark .menu-icon-item[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.menu-icon-item[data-v-d08788bb]:hover:before,.menu-icon-item._hover[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .menu-icon-item[data-v-d08788bb]:hover:before,.dark .menu-icon-item._hover[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.menu-icon-item[data-v-d08788bb]:after{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.6;z-index:-2;content:"";background-size:10px 10px;width:100%;height:100%;transition:all .4s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(165deg,#fff 30%,#0000 50%);mask-image:linear-gradient(165deg,#fff 30%,#0000 50%)}.menu-icon-item[data-v-d08788bb]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.dark .menu-icon-item[data-v-d08788bb]:after{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.25}.dark .menu-icon-item[data-v-d08788bb]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.menu-icon-item-icon[data-v-d08788bb]{opacity:.5}.menu-icon-item:hover .menu-icon-item-title[data-v-d08788bb],.menu-icon-item._hover .menu-icon-item-title[data-v-d08788bb]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.menu-icon-item:hover .menu-icon-item-description[data-v-d08788bb],.menu-icon-item._hover .menu-icon-item-description[data-v-d08788bb]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.menu-icon-item:hover .menu-icon-item-icon[data-v-d08788bb],.menu-icon-item._hover .menu-icon-item-icon[data-v-d08788bb]{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));scale:1.2}.dark .menu-icon-item:hover .menu-icon-item-title[data-v-d08788bb],.dark .menu-icon-item._hover .menu-icon-item-title[data-v-d08788bb]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .menu-icon-item:hover .menu-icon-item-description[data-v-d08788bb],.dark .menu-icon-item._hover .menu-icon-item-description[data-v-d08788bb]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.dark .menu-icon-item:hover .menu-icon-item-icon[data-v-d08788bb],.dark .menu-icon-item._hover .menu-icon-item-icon[data-v-d08788bb]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.menu-icon-status-item[data-v-93a9757f]{position:relative;overflow:hidden}.menu-icon-status-item[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .4s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .menu-icon-status-item[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.menu-icon-status-item[data-v-93a9757f]:hover:before,.menu-icon-status-item._hover[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:50%}.dark .menu-icon-status-item[data-v-93a9757f]:hover:before,.dark .menu-icon-status-item._hover[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.menu-icon-status-item-link[data-v-93a9757f]:after{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.8;z-index:-2;content:"";background-size:10px 10px;width:100%;height:100%;transition:all .4s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(165deg,#fff 30%,#0000 50%);mask-image:linear-gradient(165deg,#fff 30%,#0000 50%)}.menu-icon-status-item-link[data-v-93a9757f]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.dark .menu-icon-status-item-link[data-v-93a9757f]:after{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.4}.dark .menu-icon-status-item-link[data-v-93a9757f]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.menu-icon-status-item-icon-color[data-v-93a9757f]{opacity:.5}.menu-icon-status-item:hover .menu-icon-status-item-title[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-title[data-v-93a9757f]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.menu-icon-status-item:hover .menu-icon-status-item-description[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-description[data-v-93a9757f]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.menu-icon-status-item:hover .menu-icon-status-item-icon[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-icon[data-v-93a9757f],.menu-icon-status-item:hover .menu-icon-status-item-icon-color[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-icon-color[data-v-93a9757f]{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));scale:1.2}.dark .menu-icon-status-item:hover .menu-icon-status-item-title[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-title[data-v-93a9757f]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .menu-icon-status-item:hover .menu-icon-status-item-description[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-description[data-v-93a9757f]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.dark .menu-icon-status-item:hover .menu-icon-status-item-icon[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-icon[data-v-93a9757f],.dark .menu-icon-status-item:hover .menu-icon-status-item-icon-color[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-icon-color[data-v-93a9757f]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.form_radio-card-detail[data-v-fb6236db]{position:relative;overflow:hidden}.form_radio-card-detail[data-v-fb6236db]:before{pointer-events:none;--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .form_radio-card-detail[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.form_radio-card-detail[data-v-fb6236db]:hover:before,.form_radio-card-detail._hover[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .form_radio-card-detail[data-v-fb6236db]:hover:before,.dark .form_radio-card-detail._hover[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.form_radio-card-detail-active[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:.5;width:85%}.dark .form_radio-card-detail-active[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}input[type=search][data-v-98ce709a]::-webkit-search-cancel-button{display:none}.form_radio-card-simple[data-v-880ce73f]{position:relative;overflow:hidden}.form_radio-card-simple[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .form_radio-card-simple[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.form_radio-card-simple[data-v-880ce73f]:hover:before,.form_radio-card-simple._hover[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .form_radio-card-simple[data-v-880ce73f]:hover:before,.dark .form_radio-card-simple._hover[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.form_radio-card-simple-active[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:.5;width:85%}.dark .form_radio-card-simple-active[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.form_voice-card[data-v-fd4023c4]{flex-direction:column;display:flex;position:relative;overflow:hidden}.form_voice-card[data-v-fd4023c4]:before{pointer-events:none;--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .form_voice-card[data-v-fd4023c4]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.form_voice-card[data-v-fd4023c4]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .form_voice-card[data-v-fd4023c4]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}input[type=search][data-v-55cec23c]::-webkit-search-cancel-button{display:none}.voice-card[data-v-55cec23c]{flex-direction:column;display:flex;position:relative;overflow:hidden}.voice-card[data-v-55cec23c]:before{pointer-events:none;--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .voice-card[data-v-55cec23c]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.voice-card[data-v-55cec23c]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .voice-card[data-v-55cec23c]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.skeleton[data-v-fa4a54cc]{transition:all .2s ease-in-out;position:relative}.skeleton-pulse[data-v-fa4a54cc]{animation:2s ease-in-out .5s infinite skeleton-pulse-fa4a54cc}@keyframes skeleton-pulse-fa4a54cc{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.skeleton-wave[data-v-fa4a54cc]:after{content:"";border-radius:inherit;background:linear-gradient(90deg,#0000,#fff,#0000);animation:2s ease-in-out infinite skeleton-wave-fa4a54cc;position:absolute;inset:0;transform:translate(-100%)}.dark .skeleton-wave[data-v-fa4a54cc]:after{background:linear-gradient(90deg,#0000,#ffffff1a,#0000)}@keyframes skeleton-wave-fa4a54cc{0%{opacity:0;transform:translate(-100%)}60%{opacity:1;transform:translate(100%)}to{opacity:0;transform:translate(100%)}}.card-hover-effect[data-v-24a7a9d5]{transform-style:preserve-3d;transform-origin:50%;will-change:transform;transition:transform .3s cubic-bezier(.23,1,.32,1)}.card-hover-effect[data-v-24a7a9d5]:before,.card-hover-effect[data-v-24a7a9d5]:after{content:"";pointer-events:none;background-repeat:no-repeat;transition:all .33s;position:absolute;inset:0}.card-hover-effect[data-v-24a7a9d5]:before{background-position:var(--card-position-x)var(--card-position-y);background-size:300% 300%;background-image:linear-gradient(115deg,transparent 0%,rgba(var(--color-primary-500),calc(.3*var(--effect-intensity)))25%,transparent 47%,transparent 53%,rgba(var(--color-primary-600),calc(.3*var(--effect-intensity)))75%,transparent 100%);opacity:calc(.5*var(--effect-intensity));filter:brightness(.5)contrast();z-index:1;mix-blend-mode:color-dodge}.card-hover-effect[data-v-24a7a9d5]:after{background-position:var(--sparkle-position-x)var(--sparkle-position-y);background-size:160%;background-image:linear-gradient(125deg,rgba(var(--color-primary-500),calc(.3*var(--effect-intensity)))15%,rgba(var(--color-primary-400),calc(.25*var(--effect-intensity)))30%,rgba(var(--color-primary-300),calc(.2*var(--effect-intensity)))40%,rgba(var(--color-primary-200),calc(.1*var(--effect-intensity)))60%,rgba(var(--color-primary-400),calc(.25*var(--effect-intensity)))70%,rgba(var(--color-primary-500),calc(.3*var(--effect-intensity)))85%);background-blend-mode:overlay;opacity:calc(var(--sparkle-opacity)*var(--effect-intensity));filter:brightness()contrast();z-index:2;mix-blend-mode:color-dodge}.card-hover-effect[data-v-24a7a9d5]:hover:before{opacity:calc(.88*var(--effect-intensity));filter:brightness(.66)contrast(1.33)}.card-hover-effect[data-v-24a7a9d5]:hover:after{opacity:var(--effect-intensity);filter:brightness(1.1)contrast(1.2)}.slide-next-enter-active[data-v-b0368141],.slide-next-leave-active[data-v-b0368141]{transition:transform .2s ease-in-out,opacity .2s ease-in-out}.slide-next-enter-from[data-v-b0368141]{opacity:0;transform:translate(100%)}.slide-next-enter-to[data-v-b0368141],.slide-next-leave-from[data-v-b0368141]{opacity:1;transform:translate(0)}.slide-next-leave-to[data-v-b0368141]{opacity:0;transform:translate(-100%)}.slide-prev-enter-active[data-v-b0368141],.slide-prev-leave-active[data-v-b0368141]{transition:transform .2s ease-in-out,opacity .2s ease-in-out}.slide-prev-enter-from[data-v-b0368141]{opacity:0;transform:translate(-100%)}.slide-prev-enter-to[data-v-b0368141],.slide-prev-leave-from[data-v-b0368141]{opacity:1;transform:translate(0)}.slide-prev-leave-to[data-v-b0368141]{opacity:0;transform:translate(100%)}[data-sonner-toast=""] [data-content=""]{width:100%}.stage-transition-3[data-v-17464329]{--delay:0s;--sharpness:40%;position:fixed;inset:0;overflow:hidden}.stage-transition-3[data-v-17464329]:before,.stage-transition-3[data-v-17464329]:after{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both arrowIn-17464329,1s cubic-bezier(.87,.05,.02,.97) forwards arrowOut-17464329;position:absolute;inset:0}.stage-transition-3[data-v-17464329]:before{background-color:var(--stage-transition-3-overlay-color-2);animation-delay:calc(0s + var(--delay,0s)),calc(1.4s + var(--delay,0s))}.stage-transition-3[data-v-17464329]:after{background-color:var(--stage-transition-3-overlay-color-1);animation-delay:calc(.2s + var(--delay,0s)),calc(1.2s + var(--delay,0s))}@keyframes arrowIn-17464329{0%{clip-path:polygon(calc(var(--sharpness)*-1)0,calc(var(--sharpness)*-1)0,0 50%,calc(var(--sharpness)*-1)100%,calc(var(--sharpness)*-1)100%,0 50%)}to{clip-path:polygon(calc(var(--sharpness)*-1)0,100% 0,calc(100% + var(--sharpness))50%,100% 100%,calc(var(--sharpness)*-1)100%,0 50%)}}@keyframes arrowOut-17464329{0%{clip-path:polygon(calc(var(--sharpness)*-1)0,100% 0,calc(100% + var(--sharpness))50%,100% 100%,calc(var(--sharpness)*-1)100%,0 50%)}to{clip-path:polygon(100% 0,100% 0,calc(100% + var(--sharpness))50%,100% 100%,100% 100%,calc(100% + var(--sharpness))50%)}}.circle-expansion-transition[data-v-4624be9e]{pointer-events:none;width:150vmax;height:150vmax;position:fixed;top:calc(50% - 75vmax);left:calc(50% - 75vmax)}.circle-expansion-transition div[data-v-4624be9e]{border-radius:50%;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.circle-expansion-transition div[data-v-4624be9e]:first-child{background-color:var(--circle-expansion-color-1);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + 0s)forwards}.circle-expansion-transition div[data-v-4624be9e]:nth-child(2){background-color:var(--circle-expansion-color-2);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + .15s)forwards}.circle-expansion-transition div[data-v-4624be9e]:nth-child(3){background-color:var(--circle-expansion-color-3);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + .3s)forwards}.circle-expansion-transition div[data-v-4624be9e]:nth-child(4){background-color:var(--circle-expansion-color-4);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + .45s)forwards}@keyframes circleExpand-4624be9e{0%{transform:scale(0)}to{transform:scale(1)}}.fantasy-fall-transition[data-v-826171f5]{position:fixed;inset:0;overflow:hidden}.fantasy-fall-up[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-bottom-left-radius:var(--fantasy-fall-radius-sm);border-bottom-right-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-up var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translateY(-100%)}.fantasy-fall-down[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-top-left-radius:var(--fantasy-fall-radius-sm);border-top-right-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-down var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translateY(100%)}.fantasy-fall-left[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-top-right-radius:var(--fantasy-fall-radius-sm);border-bottom-right-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-left var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translate(-100%)}.fantasy-fall-right[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-top-left-radius:var(--fantasy-fall-radius-sm);border-bottom-left-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-right var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translate(100%)}@media (min-width:768px){.fantasy-fall-up[data-v-826171f5]:before{border-bottom-left-radius:var(--fantasy-fall-radius-md);border-bottom-right-radius:var(--fantasy-fall-radius-md)}.fantasy-fall-down[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-md);border-top-right-radius:var(--fantasy-fall-radius-md)}.fantasy-fall-left[data-v-826171f5]:before{border-top-right-radius:var(--fantasy-fall-radius-md);border-bottom-right-radius:var(--fantasy-fall-radius-md)}.fantasy-fall-right[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-md);border-bottom-left-radius:var(--fantasy-fall-radius-md)}}@media (min-width:1024px){.fantasy-fall-up[data-v-826171f5]:before{border-bottom-left-radius:var(--fantasy-fall-radius-lg);border-bottom-right-radius:var(--fantasy-fall-radius-lg)}.fantasy-fall-down[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-lg);border-top-right-radius:var(--fantasy-fall-radius-lg)}.fantasy-fall-left[data-v-826171f5]:before{border-top-right-radius:var(--fantasy-fall-radius-lg);border-bottom-right-radius:var(--fantasy-fall-radius-lg)}.fantasy-fall-right[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-lg);border-bottom-left-radius:var(--fantasy-fall-radius-lg)}}@keyframes fantasy-fall-up{0%{transform:translateY(-100%)}50%{transform:translateY(0%)}to{border-bottom-right-radius:0%;border-bottom-left-radius:0%;transform:translateY(0%)}}@keyframes fantasy-fall-down{0%{transform:translateY(100%)}50%{transform:translateY(0%)}to{border-top-left-radius:0%;border-top-right-radius:0%;transform:translateY(0%)}}@keyframes fantasy-fall-left{0%{transform:translate(-100%)}50%{transform:translate(0%)}to{border-top-right-radius:0%;border-bottom-right-radius:0%;transform:translate(0%)}}@keyframes fantasy-fall-right{0%{transform:translate(100%)}50%{transform:translate(0%)}to{border-top-left-radius:0%;border-bottom-left-radius:0%;transform:translate(0%)}}.stage-transition-4[data-v-4221f976]{--delay:0s;grid-template-rows:repeat(5,1fr);display:grid;position:fixed;inset:0;overflow:hidden}.stage-transition-4__block[data-v-4221f976]{width:100%;height:100%;position:relative}.stage-transition-4__block[data-v-4221f976]:before,.stage-transition-4__block[data-v-4221f976]:after{content:"";animation:.8s cubic-bezier(.87,.05,.02,.97) both slideIn-4221f976,.8s cubic-bezier(.87,.05,.02,.97) forwards slideOut-4221f976;position:absolute;inset:0}.stage-transition-4__block[data-v-4221f976]:before{background-color:var(--stage-transition-4-overlay-color-2);animation-delay:calc(0s + var(--d,0s) + var(--delay,0s)),calc(1.6s + var(--d,0s) + var(--delay,0s))}.stage-transition-4__block[data-v-4221f976]:after{background-color:var(--stage-transition-4-overlay-color-1);animation-delay:calc(.3s + var(--d,0s) + var(--delay,0s)),calc(1.3s + var(--d,0s) + var(--delay,0s))}.stage-transition-4__block[data-v-4221f976]:first-child{--d:.1s}.stage-transition-4__block[data-v-4221f976]:nth-child(2){--d:.3s}.stage-transition-4__block[data-v-4221f976]:nth-child(3){--d:0s}.stage-transition-4__block[data-v-4221f976]:nth-child(4){--d:.4s}.stage-transition-4__block[data-v-4221f976]:nth-child(5){--d:.2s}@keyframes slideIn-4221f976{0%{transform:translate(-101%)}to{transform:translate(0)}}@keyframes slideOut-4221f976{0%{transform:translate(0)}to{transform:translate(101%)}}.stage-transition-1[data-v-81c0af14]{--delay:0s;position:fixed;inset:0;overflow:hidden}.stage-transition-1[data-v-81c0af14]:before,.stage-transition-1[data-v-81c0af14]:after{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both slideIn-81c0af14,1s cubic-bezier(.87,.05,.02,.97) forwards slideOut-81c0af14;position:absolute;inset:0}.stage-transition-1[data-v-81c0af14]:before{background-color:var(--stage-transition-1-overlay-color-2);animation-delay:calc(0s + var(--delay,0s)),calc(1.4s + var(--delay,0s))}.stage-transition-1[data-v-81c0af14]:after{background-color:var(--stage-transition-1-overlay-color-1);animation-delay:calc(.2s + var(--delay,0s)),calc(1.2s + var(--delay,0s))}@keyframes slideIn-81c0af14{0%{transform:translate(-101%)}to{transform:translate(0)}}@keyframes slideOut-81c0af14{0%{transform:translate(0)}to{transform:translate(101%)}}.stage-transition-2[data-v-9e8b66c8]{--delay:0s;--skew-x:100%;position:fixed;inset:0;overflow:hidden}.stage-transition-2[data-v-9e8b66c8]:before,.stage-transition-2[data-v-9e8b66c8]:after{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both maskIn-9e8b66c8,1s cubic-bezier(.87,.05,.02,.97) forwards maskOut-9e8b66c8;position:absolute;inset:0}.stage-transition-2[data-v-9e8b66c8]:before{background-color:var(--stage-transition-2-overlay-color-2);animation-delay:calc(0s + var(--delay,0s)),calc(1.4s + var(--delay,0s))}.stage-transition-2[data-v-9e8b66c8]:after{background-color:var(--stage-transition-2-overlay-color-1);animation-delay:calc(.2s + var(--delay,0s)),calc(1.2s + var(--delay,0s))}@keyframes maskIn-9e8b66c8{0%{clip-path:polygon(0 0,0 0,calc(var(--skew-x,0)*-1)100%,calc(var(--skew-x,0)*-1)100%)}to{clip-path:polygon(0 0,calc(100% + var(--skew-x,0))0,100% 100%,calc(var(--skew-x,0)*-1)100%)}}@keyframes maskOut-9e8b66c8{0%{clip-path:polygon(0 0,calc(100% + var(--skew-x,0))0,100% 100%,calc(var(--skew-x,0)*-1)100%)}to{clip-path:polygon(calc(100% + var(--skew-x,0))0,calc(100% + var(--skew-x,0))0,100% 100%,100% 100%)}}.rectangle-rotate-transition[data-v-45ea2f7f]{position:fixed;inset:0;overflow:hidden}.rectangle[data-v-45ea2f7f]{width:100%;height:100%;position:absolute}.rectangle div[data-v-45ea2f7f]{width:100vmax;height:100vmax;position:absolute;transform:scale(0)}.rectangle-rotate-1 div[data-v-45ea2f7f]{background-color:var(--rectangle-rotate-1-color);animation:expand-rotate-45ea2f7f var(--rectangle-rotate-duration)ease calc(var(--rectangle-rotate-delay) + 0s)forwards;top:-50vmax;left:-50vmax}.rectangle-rotate-2 div[data-v-45ea2f7f]{background-color:var(--rectangle-rotate-2-color);animation:expand-rotate-45ea2f7f var(--rectangle-rotate-duration)ease calc(var(--rectangle-rotate-delay) + var(--rectangle-rotate-stagger))forwards;bottom:-50vmax;right:-50vmax}.rectangle-rotate-3 div[data-v-45ea2f7f]{background-color:var(--rectangle-rotate-3-color);animation:expand-rotate-45ea2f7f var(--rectangle-rotate-duration)ease calc(var(--rectangle-rotate-delay) + calc(var(--rectangle-rotate-stagger)*2))forwards;top:calc(50% - 50vmax);left:calc(50% - 50vmax)}@keyframes expand-rotate-45ea2f7f{0%{transform:scale(0)rotate(0)}to{transform:scale(1)rotate(var(--rectangle-rotate-rotation))}}html[dir=ltr],[data-sonner-toaster][dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%,-35%)}html[dir=rtl],[data-sonner-toaster][dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%,-35%)}[data-sonner-toaster]{width:var(--width);--gray1:#fcfcfc;--gray2:#f8f8f8;--gray3:#f3f3f3;--gray4:#ededed;--gray5:#e8e8e8;--gray6:#e2e2e2;--gray7:#dbdbdb;--gray8:#c7c7c7;--gray9:#8f8f8f;--gray10:#858585;--gray11:#6f6f6f;--gray12:#171717;--border-radius:8px;box-sizing:border-box;z-index:999999999;outline:none;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;list-style:none;transition:transform .4s;position:fixed}[data-sonner-toaster][data-lifted=true]{transform:translateY(-8px)}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translate(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift)*var(--gap));z-index:var(--z-index);opacity:0;transform:var(--y);touch-action:none;box-sizing:border-box;overflow-wrap:anywhere;outline:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;position:absolute}[data-sonner-toast][data-styled=true]{background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);width:var(--width);align-items:center;gap:6px;padding:16px;font-size:13px;display:flex;box-shadow:0 4px 12px #0000001a}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-y-position=top]{--y:translateY(-100%);--lift:1;--lift-amount:calc(1*var(--gap));top:0}[data-sonner-toast][data-y-position=bottom]{--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift)*var(--gap));bottom:0}[data-sonner-toast][data-styled=true] [data-description]{color:#3f3f3f;font-weight:400;line-height:1.4}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{color:inherit;font-weight:500;line-height:1.5}[data-sonner-toast][data-styled=true] [data-icon]{width:16px;height:16px;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end);flex-shrink:0;justify-content:flex-start;align-items:center;display:flex;position:relative}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform-origin:50%;animation:.3s forwards sonner-fade-in;transform:scale(.8)}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{flex-direction:column;gap:2px;display:flex}[data-sonner-toast][data-styled=true] [data-button]{height:24px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);cursor:pointer;border:none;border-radius:4px;outline:none;flex-shrink:0;align-items:center;padding-left:8px;padding-right:8px;font-size:12px;font-weight:500;transition:opacity .4s,box-shadow .2s;display:flex}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px #0006}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:#00000014}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:#ffffff4d}[data-sonner-toast][data-styled=true] [data-close-button]{left:var(--toast-close-button-start);right:var(--toast-close-button-end);width:20px;height:20px;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);cursor:pointer;z-index:1;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .1s,background .2s,border-color .2s;display:flex;position:absolute;top:0}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]:before{content:"";z-index:-1;height:100%;position:absolute;left:-100%;right:-100%}[data-sonner-toast][data-y-position=top][data-swiping=true]:before{bottom:50%;transform:scaleY(3)translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]:before{top:50%;transform:scaleY(3)translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]:before{content:"";position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]:after{content:"";height:calc(var(--gap) + 1px);width:100%;position:absolute;bottom:100%;left:0}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before)*.05 + 1;--y:translateY(calc(var(--lift-amount)*var(--toasts-before)))scale(calc(-1*var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset) + var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]:before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y)translateY(var(--swipe-amount-y,0px))translateX(var(--swipe-amount-x,0px));transition:none}[data-sonner-toast][data-swiped=true]{-webkit-user-select:none;user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%;position:fixed}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left)*-1)}[data-sonner-toaster] [data-sonner-toast]{width:calc(100% - var(--mobile-offset-left)*2);left:0;right:0}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:#ecfdf3;--success-border:#bffcd9;--success-text:#008a2e;--info-bg:#f0f8ff;--info-border:#dde7fd;--info-text:#0973dc;--warning-bg:#fffcf0;--warning-border:#fbeeb1;--warning-text:#dc7609;--error-bg:#fff0f0;--error-border:#ffe0e1;--error-text:#e60000}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:#333;--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:#1f1f1f;--normal-border:#333;--normal-border-hover:#404040;--normal-text:var(--gray1);--success-bg:#001f0f;--success-border:#003d1c;--success-text:#59f3a6;--info-bg:#000d1f;--info-border:#19233e;--info-text:#5896f3;--warning-bg:#1d1f00;--warning-border:#2e2e00;--warning-text:#f3cf58;--error-bg:#2d0607;--error-border:#4d0408;--error-text:#ff9ea1}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);z-index:10;position:absolute;inset:0}.sonner-loading-wrapper[data-visible=false]{transform-origin:50%;animation:.2s forwards sonner-fade-out}.sonner-spinner{height:var(--size);width:var(--size);position:relative;top:50%;left:50%}.sonner-loading-bar{background:var(--gray11);border-radius:6px;width:24%;height:8%;animation:1.2s linear infinite sonner-spin;position:absolute;top:-3.9%;left:-10%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg)translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg)translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg)translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg)translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg)translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg)translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg)translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg)translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg)translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg)translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg)translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg)translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{transform-origin:50%;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8)translate(-50%,-50%)}@property --chromatic-hue{syntax:"";inherits:true;initial-value:0}@keyframes hue-anim{0%{--chromatic-hue:0}to{--chromatic-hue:360}}.dynamic-hue{animation:10s linear infinite hue-anim}@font-face{font-family:cjkfonts AllSeto;font-style:normal;font-display:swap;src:url(/assets/cjkFonts_allseto_v1.11-ByBdljxl.ttf)format("truetype")}@font-face{font-family:Xiaolai SC;font-style:normal;font-display:swap;src:url(/assets/XiaolaiSC-Regular-SNWuh554.ttf)format("truetype")}*,:before,:after{box-sizing:border-box;border-style:solid;border-width:0;border-color:var(--un-default-border-color,#e5e7eb)}:before,:after{--un-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.slide-away-enter-active,.slide-away-leave-active{transition:transform .3s ease-in-out,opacity .3s ease-in-out}.slide-away-enter,.slide-away-leave-to{opacity:0;transform:translateY(-10px)}.slide-away-enter-from,.slide-away-leave{opacity:0;transform:translateY(10px)}:root{--bg-color-light:#fff;--bg-color-dark:#121212;--bg-color:var(--bg-color-light)}html,body,#app{overscroll-behavior:none;height:100%;margin:0;padding:0}html{background:var(--bg-color);transition:all .3s ease-in-out}html.dark{--bg-color:var(--bg-color-dark);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}#nprogress{pointer-events:none}#nprogress .bar{background:color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))70%,#636363);opacity:.75;z-index:1031;width:100%;height:2px;position:fixed;top:0;left:0}@supports (color:lab(0% 0 0)){#nprogress .bar{background:color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))70%,lab(42% 0 0))}}.dark #nprogress .bar{background:`color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))90%,#dedede)`}@supports (color:lab(0% 0 0)){.dark #nprogress .bar{background:`color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))90%,lab(88.4% 0 0))`}}@media (display-mode:standalone){#nprogress,#nprogress .bar{display:none}}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:100 1000;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-sans:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:100 1000;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-sans:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/comfortaa:vf@latest/cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/comfortaa:vf@latest/cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/comfortaa:vf@latest/greek-wght-normal.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/comfortaa:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/comfortaa:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/comfortaa:vf@latest/vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-serif-display@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-serif-display@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/cyrillic-300-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/cyrillic-400-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/cyrillic-500-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/japanese-300-normal.woff2)format("woff2")}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/japanese-400-normal.woff2)format("woff2")}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/japanese-500-normal.woff2)format("woff2")}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-800-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-ext-800-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/greek-wght-normal.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/greek-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/kayah-li-wght-normal.woff2)format("woff2-variations");unicode-range:U+200C-200D,U+2010,U+25CC,U+A900-A92F}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Gugi;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/gugi@latest/korean-400-normal.woff2)format("woff2")}@font-face{font-family:Gugi;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/gugi@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@latest/vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Urbanist;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/urbanist:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Urbanist;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/urbanist:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-100-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-300-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-400-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-500-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-700-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-800-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-900-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-100-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-300-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-400-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-500-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-700-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-800-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-900-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-100-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-300-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-400-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-500-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-700-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-800-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-900-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-100-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-300-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-400-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-500-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-700-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-800-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-900-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-100-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-300-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-400-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-500-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-700-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-800-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-900-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-100-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-300-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-400-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-500-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-700-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-800-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-900-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-100-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-700-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-800-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-900-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-100-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-700-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-800-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-900-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-100-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-300-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-400-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-500-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-700-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-800-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-900-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }:root{--chromatic-hue:220.44;--chromatic-chroma:calc(.18 + (cos(var(--chromatic-hue)*3.14159/180)*.04));--chromatic-chroma-50:calc(var(--chromatic-chroma)*.3);--chromatic-chroma-100:calc(var(--chromatic-chroma)*.5);--chromatic-chroma-200:calc(var(--chromatic-chroma)*.6);--chromatic-chroma-300:calc(var(--chromatic-chroma)*.75);--chromatic-chroma-400:calc(var(--chromatic-chroma)*.85);--chromatic-chroma-500:var(--chromatic-chroma);--chromatic-chroma-600:calc(var(--chromatic-chroma)*1.15);--chromatic-chroma-700:calc(var(--chromatic-chroma)*1.1);--chromatic-chroma-800:calc(var(--chromatic-chroma)*.85);--chromatic-chroma-900:calc(var(--chromatic-chroma)*.7);--chromatic-chroma-950:calc(var(--chromatic-chroma)*.5)}.i-eos-icons\:three-dots-loading,[i-eos-icons\:three-dots-loading=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Ccircle cx='18' cy='12' r='0' fill='currentColor'%3E%3Canimate attributeName='r' begin='.67' calcMode='spline' dur='1.5s' keySplines='0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8' repeatCount='indefinite' values='0;2;0;0'/%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='0' fill='currentColor'%3E%3Canimate attributeName='r' begin='.33' calcMode='spline' dur='1.5s' keySplines='0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8' repeatCount='indefinite' values='0;2;0;0'/%3E%3C/circle%3E%3Ccircle cx='6' cy='12' r='0' fill='currentColor'%3E%3Canimate attributeName='r' begin='0' calcMode='spline' dur='1.5s' keySplines='0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8' repeatCount='indefinite' values='0;2;0;0'/%3E%3C/circle%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:alibabacloud{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M14.752 4.64h5.274C22.242 4.64 24 6.475 24 8.691V15.8a3.947 3.947 0 01-3.974 3.975h-5.274l1.299-1.835 3.822-1.222c.688-.23 1.146-.918 1.146-1.605v-5.81c0-.687-.458-1.375-1.146-1.605L16.05 6.475l-1.3-1.835zM2.98 15.111c0 .688.46 1.376 1.147 1.606l3.822 1.146 1.3 1.835H3.974A3.947 3.947 0 010 15.723V8.69c0-2.216 1.758-4.05 3.975-4.05h5.273L7.95 6.474 4.127 7.697c-.688.23-1.146.918-1.146 1.606v5.808z'/%3E%3Cpath d='M16.051 11.213H8.025v1.835h8.026v-1.835z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:anthropic{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M13.827 3.52h3.603L24 20h-3.603l-6.57-16.48zm-7.258 0h3.767L16.906 20h-3.674l-1.343-3.461H5.017l-1.344 3.46H0L6.57 3.522zm4.132 9.959L8.453 7.687 6.205 13.48H10.7z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:cloudflare{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cg%3E%3Cpath d='M16.493 17.4c.135-.52.08-.983-.161-1.338-.215-.328-.592-.519-1.05-.519l-8.663-.109a.148.148 0 01-.135-.082c-.027-.054-.027-.109-.027-.163.027-.082.108-.164.189-.164l8.744-.11c1.05-.054 2.153-.9 2.556-1.937l.511-1.31c.027-.055.027-.11.027-.164C17.92 8.91 15.66 7 12.942 7c-2.503 0-4.628 1.638-5.381 3.903a2.432 2.432 0 00-1.803-.491c-1.21.109-2.153 1.092-2.287 2.32-.027.328 0 .628.054.9C1.56 13.688 0 15.326 0 17.319c0 .19.027.355.027.545 0 .082.08.137.161.137h15.983c.08 0 .188-.055.215-.164l.107-.437'/%3E%3Cpath d='M19.238 11.75h-.242c-.054 0-.108.054-.135.109l-.35 1.2c-.134.52-.08.983.162 1.338.215.328.592.518 1.05.518l1.855.11c.054 0 .108.027.135.082.027.054.027.109.027.163-.027.082-.108.164-.188.164l-1.91.11c-1.05.054-2.153.9-2.557 1.937l-.134.355c-.027.055.026.137.107.137h6.592c.081 0 .162-.055.162-.137.107-.41.188-.846.188-1.31-.027-2.62-2.153-4.777-4.762-4.777'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:deepseek{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:featherless-ai{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' width='1em' height='1em' %3E%3Cg fill='currentColor'%3E%3Cpath d='M40.0866 4.68482C38.2902 3.5825 35.863 3 33.0672 3C28.7842 3 24.0653 4.35865 19.8276 6.72206L19.7979 6.71083C19.7979 6.71083 19.7937 6.73344 19.7914 6.74423C18.5086 7.4617 17.2656 8.2629 16.0981 9.15731C9.22112 14.4248 7.29519 20.6748 8.92004 24.0156C7.14142 27.0728 6.0457 30.2332 6 33.9767C9.41949 27.421 11.4719 22.108 22.6146 13.1637C19.4309 13.8501 13.9281 17.1057 10.2271 22.0459C9.87793 19.156 12.1477 14.4895 17.2033 10.6174C17.8435 10.127 18.5092 9.66864 19.1886 9.23374C18.6577 10.8934 18.8269 10.4806 17.7254 12.8076C19.3543 11.2566 20.4268 10.2995 22.035 7.64145C24.123 6.60964 26.2948 5.83844 28.4482 5.37235C28.0919 6.56071 27.4137 8.57466 26.4955 10.1669C26.4955 10.1669 28.8258 9.66435 30.7518 9.77788C29.6995 10.9459 28.7527 12.2094 27.7926 13.5012C26.4777 15.2696 25.1184 17.0983 23.3778 18.8005C23.1683 19.0054 22.968 19.1912 22.7649 19.383C20.0902 19.1254 18.3235 20.1315 16.6683 21.9089C17.9737 21.2966 19.7273 20.7924 20.8266 21.0959C18.8008 22.7579 15.6106 24.9488 12.9893 24.7684C12.4922 25.5295 12.4608 25.5528 11.9144 26.4722C16.1664 27.537 21.507 23.1905 24.6498 20.1161C26.4926 18.3131 27.8964 16.4257 29.2534 14.6012C32.0481 10.8427 34.4616 7.5974 39.8153 6.3624L42 5.85877L40.0866 4.68482Z' class='logo-mark'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:fireworks{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath clip-rule='evenodd' d='M14.8 5l-2.801 6.795L9.195 5H7.397l3.072 7.428a1.64 1.64 0 003.038.002L16.598 5H14.8zm1.196 10.352l5.124-5.244-.699-1.669-5.596 5.739a1.664 1.664 0 00-.343 1.807 1.642 1.642 0 001.516 1.012L16 17l8-.02-.699-1.669-7.303.041h-.002zM2.88 10.104l.699-1.669 5.596 5.739c.468.479.603 1.189.343 1.807a1.643 1.643 0 01-1.516 1.012l-8-.018-.002.002.699-1.669 7.303.042-5.122-5.246z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:gemini{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M12 24A14.304 14.304 0 000 12 14.304 14.304 0 0012 0a14.305 14.305 0 0012 12 14.305 14.305 0 00-12 12'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:huggingface{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M16.781 3.277c2.997 1.704 4.844 4.851 4.844 8.258 0 .995-.155 1.955-.443 2.857a1.332 1.332 0 011.125.4 1.41 1.41 0 01.2 1.723c.204.165.352.385.428.632l.017.062c.06.222.12.69-.2 1.166.244.37.279.836.093 1.236-.255.57-.893 1.018-2.128 1.5l-.202.078-.131.048c-.478.173-.89.295-1.061.345l-.086.024c-.89.243-1.808.375-2.732.394-1.32 0-2.3-.36-2.923-1.067a9.852 9.852 0 01-3.18.018C9.778 21.647 8.802 22 7.494 22a11.249 11.249 0 01-2.541-.343l-.221-.06-.273-.08a16.574 16.574 0 01-1.175-.405c-1.237-.483-1.875-.93-2.13-1.501-.186-.4-.151-.867.093-1.236a1.42 1.42 0 01-.2-1.166c.069-.273.226-.516.447-.694a1.41 1.41 0 01.2-1.722c.233-.248.557-.391.917-.407l.078-.001a9.385 9.385 0 01-.44-2.85c0-3.407 1.847-6.554 4.844-8.258a9.822 9.822 0 019.687 0zM4.188 14.758c.125.687 2.357 2.35 2.14 2.707-.19.315-.796-.239-.948-.386l-.041-.04-.168-.147c-.561-.479-2.304-1.9-2.74-1.432-.43.46.119.859 1.055 1.42l.784.467.136.083c1.045.643 1.12.84.95 1.113-.188.295-3.07-2.1-3.34-1.083-.27 1.011 2.942 1.304 2.744 2.006-.2.7-2.265-1.324-2.685-.537-.425.79 2.913 1.718 2.94 1.725l.16.04.175.042c1.227.284 3.565.65 4.435-.604.673-.973.64-1.709-.248-2.61l-.057-.057c-.945-.928-1.495-2.288-1.495-2.288l-.017-.058-.025-.072c-.082-.22-.284-.639-.63-.584-.46.073-.798 1.21.12 1.933l.05.038c.977.721-.195 1.21-.573.534l-.058-.104-.143-.25c-.463-.799-1.282-2.111-1.739-2.397-.532-.332-.907-.148-.782.541zm14.842-.541c-.533.335-1.563 2.074-1.94 2.751a.613.613 0 01-.687.302.436.436 0 01-.176-.098.303.303 0 01-.049-.06l-.014-.028-.008-.02-.007-.019-.003-.013-.003-.017a.289.289 0 01-.004-.048c0-.12.071-.266.25-.427.026-.024.054-.047.084-.07l.047-.036c.022-.016.043-.032.063-.049.883-.71.573-1.81.131-1.917l-.031-.006-.056-.004a.368.368 0 00-.062.006l-.028.005-.042.014-.039.017-.028.015-.028.019-.036.027-.023.02c-.173.158-.273.428-.31.542l-.016.054s-.53 1.309-1.439 2.234l-.054.054c-.365.358-.596.69-.702 1.018-.143.437-.066.868.21 1.353.055.097.117.195.187.296.882 1.275 3.282.876 4.494.59l.286-.07.25-.074c.276-.084.736-.233 1.2-.42l.188-.077.065-.028.064-.028.124-.056.081-.038c.529-.252.964-.543.994-.827l.001-.036a.299.299 0 00-.037-.139c-.094-.176-.271-.212-.491-.168l-.045.01c-.044.01-.09.024-.136.04l-.097.035-.054.022c-.559.23-1.238.705-1.607.745h.006a.452.452 0 01-.05.003h-.024l-.024-.003-.023-.005c-.068-.016-.116-.06-.14-.142a.22.22 0 01-.005-.1c.062-.345.958-.595 1.713-.91l.066-.028c.528-.224.97-.483.985-.832v-.04a.47.47 0 00-.016-.098c-.048-.18-.175-.251-.36-.251-.785 0-2.55 1.36-2.92 1.36-.025 0-.048-.007-.058-.024a.6.6 0 01-.046-.088c-.1-.238.068-.462 1.06-1.066l.209-.126c.538-.32 1.01-.588 1.341-.831.29-.212.475-.406.503-.6l.003-.028c.008-.113-.038-.227-.147-.344a.266.266 0 00-.07-.054l-.034-.015-.013-.005a.403.403 0 00-.13-.02c-.162 0-.369.07-.595.18-.637.313-1.431.952-1.826 1.285l-.249.215-.033.033c-.08.078-.288.27-.493.386l-.071.037-.041.019a.535.535 0 01-.122.036h.005a.346.346 0 01-.031.003l.01-.001-.013.001c-.079.005-.145-.021-.19-.095a.113.113 0 01-.014-.065c.027-.465 2.034-1.991 2.152-2.642l.009-.048c.1-.65-.271-.817-.791-.493zM11.938 2.984c-4.798 0-8.688 3.829-8.688 8.55 0 .692.083 1.364.24 2.008l.008-.009c.252-.298.612-.46 1.017-.46.355.008.699.117.993.312.22.14.465.384.715.694.261-.372.69-.598 1.15-.605.852 0 1.367.728 1.562 1.383l.047.105.06.127c.192.396.595 1.139 1.143 1.68 1.06 1.04 1.324 2.115.8 3.266a8.865 8.865 0 002.024-.014c-.505-1.12-.26-2.17.74-3.186l.066-.066c.695-.684 1.157-1.69 1.252-1.912.195-.655.708-1.383 1.56-1.383.46.007.889.233 1.15.605.25-.31.495-.553.718-.694a1.87 1.87 0 01.99-.312c.357 0 .682.126.925.36.14-.61.215-1.245.215-1.898 0-4.722-3.89-8.55-8.687-8.55zm1.857 8.926l.439-.212c.553-.264.89-.383.89.152 0 1.093-.771 3.208-3.155 3.262h-.184c-2.325-.052-3.116-2.06-3.156-3.175l-.001-.087c0-1.107 1.452.586 3.25.586.716 0 1.379-.272 1.917-.526zm4.017-3.143c.45 0 .813.358.813.8 0 .441-.364.8-.813.8a.806.806 0 01-.812-.8c0-.442.364-.8.812-.8zm-11.624 0c.448 0 .812.358.812.8 0 .441-.364.8-.812.8a.806.806 0 01-.813-.8c0-.442.364-.8.813-.8zm7.79-.841c.32-.384.846-.54 1.33-.394.483.146.83.564.878 1.06.048.495-.212.97-.659 1.203-.322.168-.447-.477-.767-.585l.002-.003c-.287-.098-.772.362-.925.079a1.215 1.215 0 01.14-1.36zm-4.323 0c.322.384.377.92.14 1.36-.152.283-.64-.177-.925-.079l.003.003c-.108.036-.194.134-.273.24l-.118.165c-.11.15-.22.262-.377.18a1.226 1.226 0 01-.658-1.204c.048-.495.395-.913.878-1.059a1.262 1.262 0 011.33.394z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:microsoft{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M11.49 2H2v9.492h9.492V2h-.002z'/%3E%3Cpath d='M22 2h-9.492v9.492H22V2z'/%3E%3Cpath d='M11.49 12.508H2V22h9.492v-9.492h-.002z'/%3E%3Cpath d='M22 12.508h-9.492V22H22v-9.492z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:mistral{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath clip-rule='evenodd' d='M3.428 3.4h3.429v3.428h3.429v3.429h-.002 3.431V6.828h3.427V3.4h3.43v13.714H24v3.429H13.714v-3.428h-3.428v-3.429h-3.43v3.428h3.43v3.429H0v-3.429h3.428V3.4zm10.286 13.715h3.428v-3.429h-3.427v3.429z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:moonshot{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M1.052 16.916l9.539 2.552a21.007 21.007 0 00.06 2.033l5.956 1.593a11.997 11.997 0 01-5.586.865l-.18-.016-.044-.004-.084-.009-.094-.01a11.605 11.605 0 01-.157-.02l-.107-.014-.11-.016a11.962 11.962 0 01-.32-.051l-.042-.008-.075-.013-.107-.02-.07-.015-.093-.019-.075-.016-.095-.02-.097-.023-.094-.022-.068-.017-.088-.022-.09-.024-.095-.025-.082-.023-.109-.03-.062-.02-.084-.025-.093-.028-.105-.034-.058-.019-.08-.026-.09-.031-.066-.024a6.293 6.293 0 01-.044-.015l-.068-.025-.101-.037-.057-.022-.08-.03-.087-.035-.088-.035-.079-.032-.095-.04-.063-.028-.063-.027a5.655 5.655 0 01-.041-.018l-.066-.03-.103-.047-.052-.024-.096-.046-.062-.03-.084-.04-.086-.044-.093-.047-.052-.027-.103-.055-.057-.03-.058-.032a6.49 6.49 0 01-.046-.026l-.094-.053-.06-.034-.051-.03-.072-.041-.082-.05-.093-.056-.052-.032-.084-.053-.061-.039-.079-.05-.07-.047-.053-.035a7.785 7.785 0 01-.054-.036l-.044-.03-.044-.03a6.066 6.066 0 01-.04-.028l-.057-.04-.076-.054-.069-.05-.074-.054-.056-.042-.076-.057-.076-.059-.086-.067-.045-.035-.064-.052-.074-.06-.089-.073-.046-.039-.046-.039a7.516 7.516 0 01-.043-.037l-.045-.04-.061-.053-.07-.062-.068-.06-.062-.058-.067-.062-.053-.05-.088-.084a13.28 13.28 0 01-.099-.097l-.029-.028-.041-.042-.069-.07-.05-.051-.05-.053a6.457 6.457 0 01-.168-.179l-.08-.088-.062-.07-.071-.08-.042-.049-.053-.062-.058-.068-.046-.056a7.175 7.175 0 01-.027-.033l-.045-.055-.066-.082-.041-.052-.05-.064-.02-.025a11.99 11.99 0 01-1.44-2.402zm-1.02-5.794l11.353 3.037a20.468 20.468 0 00-.469 2.011l10.817 2.894a12.076 12.076 0 01-1.845 2.005L.657 15.923l-.016-.046-.035-.104a11.965 11.965 0 01-.05-.153l-.007-.023a11.896 11.896 0 01-.207-.741l-.03-.126-.018-.08-.021-.097-.018-.081-.018-.09-.017-.084-.018-.094c-.026-.141-.05-.283-.071-.426l-.017-.118-.011-.083-.013-.102a12.01 12.01 0 01-.019-.161l-.005-.047a12.12 12.12 0 01-.034-2.145zm1.593-5.15l11.948 3.196c-.368.605-.705 1.231-1.01 1.875l11.295 3.022c-.142.82-.368 1.612-.668 2.365l-11.55-3.09L.124 10.26l.015-.1.008-.049.01-.067.015-.087.018-.098c.026-.148.056-.295.088-.442l.028-.124.02-.085.024-.097c.022-.09.045-.18.07-.268l.028-.102.023-.083.03-.1.025-.082.03-.096.026-.082.031-.095a11.896 11.896 0 011.01-2.232zm4.442-4.4L17.352 4.59a20.77 20.77 0 00-1.688 1.721l7.823 2.093c.267.852.442 1.744.513 2.665L2.106 5.213l.045-.065.027-.04.04-.055.046-.065.055-.076.054-.072.064-.086.05-.065.057-.073.055-.07.06-.074.055-.069.065-.077.054-.066.066-.077.053-.06.072-.082.053-.06.067-.074.054-.058.073-.078.058-.06.063-.067.168-.17.1-.098.059-.056.076-.071a12.084 12.084 0 012.272-1.677zM12.017 0h.097l.082.001.069.001.054.002.068.002.046.001.076.003.047.002.06.003.054.002.087.005.105.007.144.011.088.007.044.004.077.008.082.008.047.005.102.012.05.006.108.014.081.01.042.006.065.01.207.032.07.012.065.011.14.026.092.018.11.022.046.01.075.016.041.01L14.7.3l.042.01.065.015.049.012.071.017.096.024.112.03.113.03.113.032.05.015.07.02.078.024.073.023.05.016.05.016.076.025.099.033.102.036.048.017.064.023.093.034.11.041.116.045.1.04.047.02.06.024.041.018.063.026.04.018.057.025.11.048.1.046.074.035.075.036.06.028.092.046.091.045.102.052.053.028.049.026.046.024.06.033.041.022.052.029.088.05.106.06.087.051.057.034.053.032.096.059.088.055.098.062.036.024.064.041.084.056.04.027.062.042.062.043.023.017c.054.037.108.075.161.114l.083.06.065.048.056.043.086.065.082.064.04.03.05.041.086.069.079.065.085.071c.712.6 1.353 1.283 1.909 2.031L7.222.994l.062-.027.065-.028.081-.034.086-.035c.113-.045.227-.09.341-.131l.096-.035.093-.033.084-.03.096-.031c.087-.03.176-.058.264-.085l.091-.027.086-.025.102-.03.085-.023.1-.026L9.04.37l.09-.023.091-.022.095-.022.09-.02.098-.021.091-.02.095-.018.092-.018.1-.018.091-.016.098-.017.092-.014.097-.015.092-.013.102-.013.091-.012.105-.012.09-.01.105-.01c.093-.01.186-.018.28-.024l.106-.008.09-.005.11-.006.093-.004.1-.004.097-.002.099-.002.197-.002z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:novita{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath clip-rule='evenodd' d='M9.167 4.17v5.665L0 19.003h9.167v-5.666l5.666 5.666H24L9.167 4.17z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:ollama{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M7.905 1.09c.216.085.411.225.588.41.295.306.544.744.734 1.263.191.522.315 1.1.362 1.68a5.054 5.054 0 012.049-.636l.051-.004c.87-.07 1.73.087 2.48.474.101.053.2.11.297.17.05-.569.172-1.134.36-1.644.19-.52.439-.957.733-1.264a1.67 1.67 0 01.589-.41c.257-.1.53-.118.796-.042.401.114.745.368 1.016.737.248.337.434.769.561 1.287.23.934.27 2.163.115 3.645l.053.04.026.019c.757.576 1.284 1.397 1.563 2.35.435 1.487.216 3.155-.534 4.088l-.018.021.002.003c.417.762.67 1.567.724 2.4l.002.03c.064 1.065-.2 2.137-.814 3.19l-.007.01.01.024c.472 1.157.62 2.322.438 3.486l-.006.039a.651.651 0 01-.747.536.648.648 0 01-.54-.742c.167-1.033.01-2.069-.48-3.123a.643.643 0 01.04-.617l.004-.006c.604-.924.854-1.83.8-2.72-.046-.779-.325-1.544-.8-2.273a.644.644 0 01.18-.886l.009-.006c.243-.159.467-.565.58-1.12a4.229 4.229 0 00-.095-1.974c-.205-.7-.58-1.284-1.105-1.683-.595-.454-1.383-.673-2.38-.61a.653.653 0 01-.632-.371c-.314-.665-.772-1.141-1.343-1.436a3.288 3.288 0 00-1.772-.332c-1.245.099-2.343.801-2.67 1.686a.652.652 0 01-.61.425c-1.067.002-1.893.252-2.497.703-.522.39-.878.935-1.066 1.588a4.07 4.07 0 00-.068 1.886c.112.558.331 1.02.582 1.269l.008.007c.212.207.257.53.109.785-.36.622-.629 1.549-.673 2.44-.05 1.018.186 1.902.719 2.536l.016.019a.643.643 0 01.095.69c-.576 1.236-.753 2.252-.562 3.052a.652.652 0 01-1.269.298c-.243-1.018-.078-2.184.473-3.498l.014-.035-.008-.012a4.339 4.339 0 01-.598-1.309l-.005-.019a5.764 5.764 0 01-.177-1.785c.044-.91.278-1.842.622-2.59l.012-.026-.002-.002c-.293-.418-.51-.953-.63-1.545l-.005-.024a5.352 5.352 0 01.093-2.49c.262-.915.777-1.701 1.536-2.269.06-.045.123-.09.186-.132-.159-1.493-.119-2.73.112-3.67.127-.518.314-.95.562-1.287.27-.368.614-.622 1.015-.737.266-.076.54-.059.797.042zm4.116 9.09c.936 0 1.8.313 2.446.855.63.527 1.005 1.235 1.005 1.94 0 .888-.406 1.58-1.133 2.022-.62.375-1.451.557-2.403.557-1.009 0-1.871-.259-2.493-.734-.617-.47-.963-1.13-.963-1.845 0-.707.398-1.417 1.056-1.946.668-.537 1.55-.849 2.485-.849zm0 .896a3.07 3.07 0 00-1.916.65c-.461.37-.722.835-.722 1.25 0 .428.21.829.61 1.134.455.347 1.124.548 1.943.548.799 0 1.473-.147 1.932-.426.463-.28.7-.686.7-1.257 0-.423-.246-.89-.683-1.256-.484-.405-1.14-.643-1.864-.643zm.662 1.21l.004.004c.12.151.095.37-.056.49l-.292.23v.446a.375.375 0 01-.376.373.375.375 0 01-.376-.373v-.46l-.271-.218a.347.347 0 01-.052-.49.353.353 0 01.494-.051l.215.172.22-.174a.353.353 0 01.49.051zm-5.04-1.919c.478 0 .867.39.867.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zm8.706 0c.48 0 .868.39.868.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zM7.44 2.3l-.003.002a.659.659 0 00-.285.238l-.005.006c-.138.189-.258.467-.348.832-.17.692-.216 1.631-.124 2.782.43-.128.899-.208 1.404-.237l.01-.001.019-.034c.046-.082.095-.161.148-.239.123-.771.022-1.692-.253-2.444-.134-.364-.297-.65-.453-.813a.628.628 0 00-.107-.09L7.44 2.3zm9.174.04l-.002.001a.628.628 0 00-.107.09c-.156.163-.32.45-.453.814-.29.794-.387 1.776-.23 2.572l.058.097.008.014h.03a5.184 5.184 0 011.466.212c.086-1.124.038-2.043-.128-2.722-.09-.365-.21-.643-.349-.832l-.004-.006a.659.659 0 00-.285-.239h-.004z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:openai{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M21.55 10.004a5.416 5.416 0 00-.478-4.501c-1.217-2.09-3.662-3.166-6.05-2.66A5.59 5.59 0 0010.831 1C8.39.995 6.224 2.546 5.473 4.838A5.553 5.553 0 001.76 7.496a5.487 5.487 0 00.691 6.5 5.416 5.416 0 00.477 4.502c1.217 2.09 3.662 3.165 6.05 2.66A5.586 5.586 0 0013.168 23c2.443.006 4.61-1.546 5.361-3.84a5.553 5.553 0 003.715-2.66 5.488 5.488 0 00-.693-6.497v.001zm-8.381 11.558a4.199 4.199 0 01-2.675-.954c.034-.018.093-.05.132-.074l4.44-2.53a.71.71 0 00.364-.623v-6.176l1.877 1.069c.02.01.033.029.036.05v5.115c-.003 2.274-1.87 4.118-4.174 4.123zM4.192 17.78a4.059 4.059 0 01-.498-2.763c.032.02.09.055.131.078l4.44 2.53c.225.13.504.13.73 0l5.42-3.088v2.138a.068.068 0 01-.027.057L9.9 19.288c-1.999 1.136-4.552.46-5.707-1.51h-.001zM3.023 8.216A4.15 4.15 0 015.198 6.41l-.002.151v5.06a.711.711 0 00.364.624l5.42 3.087-1.876 1.07a.067.067 0 01-.063.005l-4.489-2.559c-1.995-1.14-2.679-3.658-1.53-5.63h.001zm15.417 3.54l-5.42-3.088L14.896 7.6a.067.067 0 01.063-.006l4.489 2.557c1.998 1.14 2.683 3.662 1.529 5.633a4.163 4.163 0 01-2.174 1.807V12.38a.71.71 0 00-.363-.623zm1.867-2.773a6.04 6.04 0 00-.132-.078l-4.44-2.53a.731.731 0 00-.729 0l-5.42 3.088V7.325a.068.068 0 01.027-.057L14.1 4.713c2-1.137 4.555-.46 5.707 1.513.487.833.664 1.809.499 2.757h.001zm-11.741 3.81l-1.877-1.068a.065.065 0 01-.036-.051V6.559c.001-2.277 1.873-4.122 4.181-4.12.976 0 1.92.338 2.671.954-.034.018-.092.05-.131.073l-4.44 2.53a.71.71 0 00-.365.623l-.003 6.173v.002zm1.02-2.168L12 9.25l2.414 1.375v2.75L12 14.75l-2.415-1.375v-2.75z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:openrouter{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M16.804 1.957l7.22 4.105v.087L16.73 10.21l.017-2.117-.821-.03c-1.059-.028-1.611.002-2.268.11-1.064.175-2.038.577-3.147 1.352L8.345 11.03c-.284.195-.495.336-.68.455l-.515.322-.397.234.385.23.53.338c.476.314 1.17.796 2.701 1.866 1.11.775 2.083 1.177 3.147 1.352l.3.045c.694.091 1.375.094 2.825.033l.022-2.159 7.22 4.105v.087L16.589 22l.014-1.862-.635.022c-1.386.042-2.137.002-3.138-.162-1.694-.28-3.26-.926-4.881-2.059l-2.158-1.5a21.997 21.997 0 00-.755-.498l-.467-.28a55.927 55.927 0 00-.76-.43C2.908 14.73.563 14.116 0 14.116V9.888l.14.004c.564-.007 2.91-.622 3.809-1.124l1.016-.58.438-.274c.428-.28 1.072-.726 2.686-1.853 1.621-1.133 3.186-1.78 4.881-2.059 1.152-.19 1.974-.213 3.814-.138l.02-1.907z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:perplexity{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M19.785 0v7.272H22.5V17.62h-2.935V24l-7.037-6.194v6.145h-1.091v-6.152L4.392 24v-6.465H1.5V7.188h2.884V0l7.053 6.494V.19h1.09v6.49L19.786 0zm-7.257 9.044v7.319l5.946 5.234V14.44l-5.946-5.397zm-1.099-.08l-5.946 5.398v7.235l5.946-5.234V8.965zm8.136 7.58h1.844V8.349H13.46l6.105 5.54v2.655zm-8.982-8.28H2.59v8.195h1.8v-2.576l6.192-5.62zM5.475 2.476v4.71h5.115l-5.115-4.71zm13.219 0l-5.115 4.71h5.115v-4.71z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:player2{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M19.956 10.178C19.8934 10.7544 19.724 11.6784 19.1182 12.5274C18.3667 13.5817 17.3528 13.8824 16.9558 13.9746C16.6911 14.0049 16.3026 14.045 15.8323 14.0789C14.1804 14.2045 13.0525 14.1565 11.7041 14.131C10.81 14.1143 9.54304 14.1034 7.98548 14.131C7.97564 16.7493 7.96551 19.368 7.95508 21.987L5 22V15.8717C5.00358 14.6542 5.00983 12.9193 5.03397 10.7643C6.47441 10.7684 14.6905 10.7205 15.6696 10.7721C15.8672 10.7841 16.3621 10.8039 16.6764 10.4458C16.8842 10.2113 16.9696 9.83348 16.9763 9.26802C16.9835 8.82659 16.9902 8.38204 16.9763 7.94322C16.9459 6.90454 16.608 6.51472 15.7103 6.51107C12.8124 6.5069 9.91142 6.43915 7.01356 6.51107C6.60048 6.51888 5.90083 6.53087 5.02056 6.50325V3C5.43007 3.00782 6.13285 3.02397 7.00686 3.01563C11.1399 2.98436 12.7292 3.01199 15.5328 3.01563C18.3591 3.0198 19.994 4.94393 19.994 8.26009C19.9913 8.90059 20.0253 9.54944 19.956 10.178Z'/%3E%3Cpath d='M20 19H11V22H20V19Z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:together{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cg%3E%3Cpath d='M17.385 11.23a4.615 4.615 0 100-9.23 4.615 4.615 0 000 9.23zm0 10.77a4.615 4.615 0 100-9.23 4.615 4.615 0 000 9.23zm-10.77 0a4.615 4.615 0 100-9.23 4.615 4.615 0 000 9.23z' opacity='.2'/%3E%3Ccircle cx='6.615' cy='6.615' r='4.615'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:vllm{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M0 4.973h9.324V23L0 4.973z'/%3E%3Cpath d='M13.986 4.351L22.378 0l-6.216 23H9.324l4.662-18.649z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:volcengine{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M7.29 5.36L3.148 21.737a.215.215 0 00.203.261h8.29a.214.214 0 00.215-.261L7.7 5.359a.214.214 0 00-.41 0z' fill-opacity='.5'/%3E%3Cpath clip-rule='evenodd' d='M4.553 16.18l-1.406 5.558a.214.214 0 00.203.261h2.42-4.551a.214.214 0 01-.214-.26l2.275-8.961a.214.214 0 01.409 0l.864 3.402z'/%3E%3Cpath d='M14.44.15a.214.214 0 00-.41 0L8.366 21.739a.214.214 0 00.214.261H19.9a.214.214 0 00.215-.261L14.44.151z' fill-opacity='.5'/%3E%3Cpath clip-rule='evenodd' d='M16.694 22h3.207a.215.215 0 00.214-.262l-1.839-6.993 1.164-4.592a.214.214 0 01.411 0l2.951 11.586a.214.214 0 01-.214.261h-5.894z'/%3E%3Cpath d='M10.278 7.741L6.685 21.736a.214.214 0 00.214.264h7.17a.216.216 0 00.214-.166.216.216 0 000-.098L10.687 7.742a.214.214 0 00-.409 0z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:xai{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M6.469 8.776L16.512 23h-4.464L2.005 8.776H6.47zm-.004 7.9l2.233 3.164L6.467 23H2l4.465-6.324zM22 2.582V23h-3.659V7.764L22 2.582zM22 1l-9.952 14.095-2.233-3.163L17.533 1H22z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lucide\:ghost,[i-lucide\:ghost=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M9 10h.01M15 10h.01M12 2a8 8 0 0 0-8 8v12l3-3l2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lucide\:mic,[i-lucide\:mic=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M12 19v3m7-12v2a7 7 0 0 1-14 0v-2'/%3E%3Crect width='6' height='13' x='9' y='2' rx='3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lucide\:music,[i-lucide\:music=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M9 18V5l12-2v13'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Ccircle cx='18' cy='16' r='3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:discord{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M20.317 4.37a19.8 19.8 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.3 18.3 0 0 0-5.487 0a13 13 0 0 0-.617-1.25a.08.08 0 0 0-.079-.037A19.7 19.7 0 0 0 3.677 4.37a.1.1 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.08.08 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.08.08 0 0 0 .084-.028a14 14 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13 13 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10 10 0 0 0 .372-.292a.07.07 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.07.07 0 0 1 .078.01q.181.149.373.292a.077.077 0 0 1-.006.127a12.3 12.3 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.08.08 0 0 0 .084.028a19.8 19.8 0 0 0 6.002-3.03a.08.08 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.06.06 0 0 0-.031-.03M8.02 15.33c-1.182 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418m7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:elevenlabs{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4.604 0v24h4.931V0zm9.86 0v24h4.933V0z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:github,[i-simple-icons\:github=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:javascript{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M0 0h24v24H0zm22.034 18.276c-.175-1.095-.888-2.015-3.003-2.873c-.736-.345-1.554-.585-1.797-1.14c-.091-.33-.105-.51-.046-.705c.15-.646.915-.84 1.515-.66c.39.12.75.42.976.9c1.034-.676 1.034-.676 1.755-1.125c-.27-.42-.404-.601-.586-.78c-.63-.705-1.469-1.065-2.834-1.034l-.705.089c-.676.165-1.32.525-1.71 1.005c-1.14 1.291-.811 3.541.569 4.471c1.365 1.02 3.361 1.244 3.616 2.205c.24 1.17-.87 1.545-1.966 1.41c-.811-.18-1.26-.586-1.755-1.336l-1.83 1.051c.21.48.45.689.81 1.109c1.74 1.756 6.09 1.666 6.871-1.004c.029-.09.24-.705.074-1.65zm-8.983-7.245h-2.248c0 1.938-.009 3.864-.009 5.805c0 1.232.063 2.363-.138 2.711c-.33.689-1.18.601-1.566.48c-.396-.196-.597-.466-.83-.855c-.063-.105-.11-.196-.127-.196l-1.825 1.125c.305.63.75 1.172 1.324 1.517c.855.51 2.004.675 3.207.405c.783-.226 1.458-.691 1.811-1.411c.51-.93.402-2.07.397-3.346c.012-2.054 0-4.109 0-6.179z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:x{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584l-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:add-circle-line-duotone,[i-solar\:add-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='M15 12h-3m0 0H9m3 0V9m0 3v3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:add-square-line-duotone,[i-solar\:add-square-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-4.714 0-7.071 1.464-8.536C4.93 2 7.286 2 12 2s7.071 0 8.535 1.464C22 4.93 22 7.286 22 12s0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12Z' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='M15 12h-3m0 0H9m3 0V9m0 3v3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:alt-arrow-down-linear,[i-solar\:alt-arrow-down-linear=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 9l-7 6l-7-6'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:alt-arrow-left-line-duotone,[i-solar\:alt-arrow-left-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m15 5l-6 7l6 7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:armchair-2-bold-duotone,[i-solar\:armchair-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16.533 18H6.75v2a.75.75 0 1 1-1.5 0v-2.324c-.829-.362-1.49-1.005-1.808-1.817l-.039-.102L2.1 12.264C1.685 11.15 2.613 10 3.927 10c.81 0 1.534.453 1.81 1.134l1.098 2.706c.1.246.15.37.222.47a1.2 1.2 0 0 0 .74.463c.13.027.277.027.57.027h6.98c.569 0 .853 0 1.091-.098q.196-.082.349-.219c.184-.166.281-.405.475-.883l1.001-2.466c.276-.68 1-1.134 1.81-1.134c1.314 0 2.242 1.15 1.827 2.264l-1.12 3c-.195.524-.292.785-.421 1.008a3.43 3.43 0 0 1-1.609 1.404V20a.75.75 0 1 1-1.5 0v-2.005c-.187.005-.415.005-.717.005'/%3E%3Cpath fill='currentColor' d='M13.236 3.5h-2.472c-1.1 0-1.976 0-2.66.088c-.706.09-1.285.28-1.746.72c-.464.441-.669 1.003-.765 1.685c-.093.658-.093 1.495-.093 2.54v2.195q.147.186.237.406l1.098 2.706c.1.246.15.37.222.47a1.2 1.2 0 0 0 .74.463c.13.027.277.027.57.027h6.98c.569 0 .853 0 1.091-.098q.196-.082.349-.219c.184-.166.281-.405.475-.883l1.001-2.466q.09-.221.237-.406V8.533c0-1.045 0-1.882-.093-2.54c-.096-.682-.301-1.244-.765-1.686c-.46-.438-1.04-.629-1.745-.72c-.685-.087-1.56-.087-2.661-.087' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:arrow-right-line-duotone,[i-solar\:arrow-right-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Cpath fill='currentColor' d='M4 11.25a.75.75 0 0 0 0 1.5zm0 1.5h16v-1.5H4z' opacity='.5'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m14 6l6 6l-6 6'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:arrow-up-outline,[i-solar\:arrow-up-outline=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M11.47 3.47a.75.75 0 0 1 1.06 0l6 6a.75.75 0 1 1-1.06 1.06l-4.72-4.72V20a.75.75 0 0 1-1.5 0V5.81l-4.72 4.72a.75.75 0 1 1-1.06-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:book-bookmark-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 20.028V18H8v2.028c0 .277 0 .416.095.472s.224-.006.484-.13l1.242-.593c.088-.042.132-.063.179-.063s.091.02.179.063l1.242.593c.26.124.39.186.484.13c.095-.056.095-.195.095-.472' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8 18h-.574c-1.084 0-1.462.006-1.753.068c-.513.11-.96.347-1.285.667c-.11.108-.164.161-.291.505s-.107.489-.066.78l.022.15c.11.653.31.998.616 1.244c.307.246.737.407 1.55.494c.837.09 1.946.092 3.536.092h4.43c1.59 0 2.7-.001 3.536-.092c.813-.087 1.243-.248 1.55-.494s.506-.591.616-1.243c.091-.548.11-1.241.113-2.171h-8v2.028c0 .277 0 .416-.095.472s-.224-.006-.484-.13l-1.242-.593c-.088-.042-.132-.063-.179-.063s-.091.02-.179.063l-1.242.593c-.26.124-.39.186-.484.13C8 20.444 8 20.305 8 20.028z'/%3E%3Cpath fill='currentColor' d='M4.727 2.733c.306-.308.734-.508 1.544-.618C7.105 2.002 8.209 2 9.793 2h4.414c1.584 0 2.688.002 3.522.115c.81.11 1.238.31 1.544.618c.305.308.504.74.613 1.557c.112.84.114 1.955.114 3.552V18H7.426c-1.084 0-1.462.006-1.753.068c-.513.11-.96.347-1.285.667c-.11.108-.164.161-.291.505A1.3 1.3 0 0 0 4 19.7V7.842c0-1.597.002-2.711.114-3.552c.109-.816.308-1.249.613-1.557' opacity='.5'/%3E%3Cpath fill='currentColor' d='M7.25 7A.75.75 0 0 1 8 6.25h8a.75.75 0 0 1 0 1.5H8A.75.75 0 0 1 7.25 7M8 9.75a.75.75 0 0 0 0 1.5h5a.75.75 0 0 0 0-1.5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:bookmark-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M21 11.098v4.993c0 3.096 0 4.645-.734 5.321c-.35.323-.792.526-1.263.58c-.987.113-2.14-.907-4.445-2.946c-1.02-.901-1.529-1.352-2.118-1.47a2.2 2.2 0 0 0-.88 0c-.59.118-1.099.569-2.118 1.47c-2.305 2.039-3.458 3.059-4.445 2.945a2.24 2.24 0 0 1-1.263-.579C3 20.736 3 19.188 3 16.091v-4.994C3 6.81 3 4.666 4.318 3.333S7.758 2 12 2s6.364 0 7.682 1.332S21 6.81 21 11.098' opacity='.5'/%3E%3Cpath fill='currentColor' d='M9 5.25a.75.75 0 0 0 0 1.5h6a.75.75 0 0 0 0-1.5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:box-minimalistic-bold-duotone,[i-solar\:box-minimalistic-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M8.422 20.618C10.178 21.54 11.056 22 12 22V12L2.638 7.073l-.04.067C2 8.154 2 9.417 2 11.942v.117c0 2.524 0 3.787.597 4.801c.598 1.015 1.674 1.58 3.825 2.709z'/%3E%3Cpath fill='currentColor' d='m17.577 4.432l-2-1.05C13.822 2.461 12.944 2 12 2c-.945 0-1.822.46-3.578 1.382l-2 1.05C4.318 5.536 3.242 6.1 2.638 7.072L12 12l9.362-4.927c-.606-.973-1.68-1.537-3.785-2.641' opacity='.7'/%3E%3Cpath fill='currentColor' d='m21.403 7.14l-.041-.067L12 12v10c.944 0 1.822-.46 3.578-1.382l2-1.05c2.151-1.129 3.227-1.693 3.825-2.708c.597-1.014.597-2.277.597-4.8v-.117c0-2.525 0-3.788-.597-4.802' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:bug-bold-duotone,[i-solar\:bug-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M19 11.938V15a7 7 0 0 1-6.25 6.96V15a.75.75 0 0 0-1.5 0v6.96A7 7 0 0 1 5 15v-3.062A3.94 3.94 0 0 1 8.938 8h6.124A3.94 3.94 0 0 1 19 11.938' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M19 14.75v-1.5h3a.75.75 0 0 1 0 1.5zm-1.504 4.586c.31-.393.58-.82.801-1.276l2.538 1.27a.75.75 0 1 1-.67 1.34zM5.703 18.06q.333.684.801 1.276l-2.669 1.335a.75.75 0 0 1-.67-1.342zM5 13.25H2a.75.75 0 0 0 0 1.5h3zm12.354-4.515l2.81-1.406a.75.75 0 1 1 .671 1.341L18.42 9.88a4 4 0 0 0-1.065-1.144M6.647 8.735c-.427.306-.79.695-1.067 1.144L3.165 8.67a.75.75 0 0 1 .67-1.341zM16.5 8.27V7.5a4.5 4.5 0 1 0-9 0v.77A3.9 3.9 0 0 1 8.938 8h6.124c.508 0 .993.096 1.438.27'/%3E%3Cpath fill='currentColor' d='M6.376 1.584a.75.75 0 0 0 .208 1.04l2.36 1.573a4.5 4.5 0 0 1 1.387-.877L7.416 1.376a.75.75 0 0 0-1.04.208m8.68 2.613a4.5 4.5 0 0 0-1.387-.877l2.915-1.944a.75.75 0 1 1 .832 1.248z' opacity='.5'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 14.25a.75.75 0 0 1 .75.75v7h-1.5v-7a.75.75 0 0 1 .75-.75' clip-rule='evenodd'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:card-search-broken,[i-solar\:card-search-broken=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' d='M14 4c3.771 0 5.657 0 6.828 1.172S22 8.229 22 12v1M10 4C6.229 4 4.343 4 3.172 5.172S2 8.229 2 12s0 5.657 1.172 6.828S6.229 20 10 20h3m-3-4H6'/%3E%3Ccircle cx='18' cy='17' r='3'/%3E%3Cpath stroke-linecap='round' d='m20.5 19.5l1 1M2 10h5m15 0H11'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:chat-round-line-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12c0 1.6.376 3.112 1.043 4.453c.178.356.237.763.134 1.148l-.595 2.226a1.3 1.3 0 0 0 1.591 1.592l2.226-.596a1.63 1.63 0 0 1 1.149.133A9.96 9.96 0 0 0 12 22' opacity='.5'/%3E%3Cpath fill='currentColor' d='M7.825 12.85a.825.825 0 0 0 0 1.65h6.05a.825.825 0 0 0 0-1.65zm0-3.85a.825.825 0 0 0 0 1.65h8.8a.825.825 0 0 0 0-1.65z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:chat-square-like-bold-duotone,[i-solar\:chat-square-like-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m13.629 20.472l-.542.916c-.483.816-1.69.816-2.174 0l-.542-.916c-.42-.71-.63-1.066-.968-1.262c-.338-.197-.763-.204-1.613-.219c-1.256-.021-2.043-.098-2.703-.372a5 5 0 0 1-2.706-2.706C2 14.995 2 13.83 2 11.5v-1c0-3.273 0-4.91.737-6.112a5 5 0 0 1 1.65-1.651C5.59 2 7.228 2 10.5 2h3c3.273 0 4.91 0 6.113.737a5 5 0 0 1 1.65 1.65C22 5.59 22 7.228 22 10.5v1c0 2.33 0 3.495-.38 4.413a5 5 0 0 1-2.707 2.706c-.66.274-1.447.35-2.703.372c-.85.015-1.275.022-1.613.219c-.338.196-.548.551-.968 1.262' opacity='.5'/%3E%3Cpath fill='currentColor' d='M10.99 14.308c-1.327-.978-3.49-2.84-3.49-4.593c0-2.677 2.475-3.677 4.5-1.609c2.025-2.068 4.5-1.068 4.5 1.609c0 1.752-2.163 3.615-3.49 4.593c-.454.335-.681.502-1.01.502s-.556-.167-1.01-.502'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:check-circle-bold-duotone,[i-solar\:check-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M16.03 8.97a.75.75 0 0 1 0 1.06l-5 5a.75.75 0 0 1-1.06 0l-2-2a.75.75 0 1 1 1.06-1.06l1.47 1.47l2.235-2.235L14.97 8.97a.75.75 0 0 1 1.06 0'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:check-circle-line-duotone,[i-solar\:check-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m8.5 12.5l2 2l5-5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:close-circle-bold-duotone,[i-solar\:close-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.97 8.97a.75.75 0 0 1 1.06 0L12 10.94l1.97-1.97a.75.75 0 1 1 1.06 1.06L13.06 12l1.97 1.97a.75.75 0 0 1-1.06 1.06L12 13.06l-1.97 1.97a.75.75 0 0 1-1.06-1.06L10.94 12l-1.97-1.97a.75.75 0 0 1 0-1.06'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:close-circle-line-duotone,[i-solar\:close-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='m14.5 9.5l-5 5m0-5l5 5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:code-bold-duotone,[i-solar\:code-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16.443 7.328a.75.75 0 0 1 1.059-.056l1.737 1.564c.737.663 1.347 1.212 1.767 1.71c.44.525.754 1.088.754 1.784c0 .695-.313 1.258-.754 1.782c-.42.499-1.03 1.049-1.767 1.711l-1.737 1.564a.75.75 0 1 1-1.004-1.115l1.697-1.527c.788-.709 1.319-1.19 1.663-1.598c.33-.393.402-.622.402-.817c0-.196-.072-.425-.402-.818c-.344-.409-.875-.889-1.663-1.598l-1.697-1.527a.75.75 0 0 1-.056-1.06m-8.94 1.06a.75.75 0 0 0-1.004-1.115L4.761 8.836c-.737.663-1.347 1.212-1.767 1.71c-.44.525-.754 1.088-.754 1.784c0 .695.313 1.258.754 1.782c.42.499 1.03 1.049 1.767 1.711l1.737 1.564a.75.75 0 1 0 1.004-1.115l-1.697-1.527c-.788-.709-1.319-1.19-1.663-1.598c-.33-.393-.402-.622-.402-.817c0-.196.072-.425.402-.818c.344-.409.875-.889 1.663-1.598z'/%3E%3Cpath fill='currentColor' d='M14.182 4.276a.75.75 0 0 1 .53.918l-3.974 14.83a.75.75 0 1 1-1.449-.389l3.974-14.83a.75.75 0 0 1 .919-.53' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:danger-circle-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10s10-4.477 10-10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12 6.25a.75.75 0 0 1 .75.75v6a.75.75 0 0 1-1.5 0V7a.75.75 0 0 1 .75-.75M12 17a1 1 0 1 0 0-2a1 1 0 0 0 0 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:danger-triangle-bold-duotone,[i-solar\:danger-triangle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 3c-2.31 0-3.77 2.587-6.688 7.762l-.364.644c-2.425 4.3-3.638 6.45-2.542 8.022S6.214 21 11.636 21h.728c5.422 0 8.134 0 9.23-1.572s-.117-3.722-2.542-8.022l-.364-.645C15.77 5.587 14.311 3 12 3' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12 7.25a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-1.5 0V8a.75.75 0 0 1 .75-.75M12 17a1 1 0 1 0 0-2a1 1 0 0 0 0 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:dialog-2-bold-duotone,[i-solar\:dialog-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='m10.404 22.48l.275-.465c.44-.745.66-1.117 1.012-1.325c.351-.207.81-.222 1.725-.252c.859-.027 1.436-.102 1.93-.306a4.24 4.24 0 0 0 2.295-2.296c.323-.779.323-1.767.323-3.743v-.848c0-2.777 0-4.165-.625-5.185c-.35-.57-.83-1.05-1.4-1.4c-1.02-.625-2.408-.625-5.185-.625H8.21c-2.777 0-4.165 0-5.185.625c-.57.35-1.05.83-1.4 1.4C1 9.08 1 10.468 1 13.245v.848c0 1.976 0 2.964.323 3.744a4.24 4.24 0 0 0 2.295 2.295c.494.204 1.07.28 1.93.306c.916.03 1.374.045 1.725.252c.35.208.571.58 1.012 1.325l.275.465c.41.692 1.434.692 1.844 0m2.789-7.963a1.06 1.06 0 1 0 0-2.12a1.06 1.06 0 0 0 0 2.12m-2.65-1.06a1.06 1.06 0 1 1-2.121 0a1.06 1.06 0 0 1 2.12 0m-4.772 1.06a1.06 1.06 0 1 0 0-2.12a1.06 1.06 0 0 0 0 2.12' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M15.486 1c1.267 0 2.274 0 3.082.077c.829.079 1.53.244 2.153.626a4.8 4.8 0 0 1 1.575 1.575c.383.624.548 1.325.627 2.153c.076.808.076 1.816.076 3.082v.866c0 .901 0 1.619-.04 2.2c-.04.595-.125 1.106-.323 1.584a4.77 4.77 0 0 1-2.67 2.617q-.21.082-.368.135h-1.65c.016-.499.016-1.093.016-1.822v-.848c0-2.777 0-4.165-.625-5.185c-.35-.57-.83-1.05-1.4-1.4c-1.02-.625-2.408-.625-5.185-.625H8.21c-.986 0-1.796 0-2.478.028v-1.65q.05-.17.13-.396q.133-.389.346-.739a4.8 4.8 0 0 1 1.576-1.575c.624-.382 1.324-.547 2.153-.626C10.745 1 11.752 1 13.019 1z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:document-text-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M3 10c0-3.771 0-5.657 1.172-6.828S7.229 2 11 2h2c3.771 0 5.657 0 6.828 1.172S21 6.229 21 10v4c0 3.771 0 5.657-1.172 6.828S16.771 22 13 22h-2c-3.771 0-5.657 0-6.828-1.172S3 17.771 3 14z'/%3E%3Cpath stroke-linecap='round' d='M8 12h8M8 8h8m-8 8h5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:emoji-funny-square-bold-duotone,[i-solar\:emoji-funny-square-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M6.504 21.52c1.633.943 3.706.387 7.853-.724s6.22-1.666 7.163-3.3s.387-3.706-.724-7.853s-1.666-6.22-3.3-7.163s-3.706-.388-7.853.724c-4.147 1.11-6.22 1.666-7.163 3.3s-.388 3.706.724 7.853c1.11 4.147 1.666 6.22 3.3 7.163' opacity='.5'/%3E%3Cpath fill='currentColor' d='M14.898 11.224c.533-.143.792-.908.578-1.708s-.821-1.333-1.355-1.19c-.533.143-.792.907-.577 1.708c.214.8.82 1.333 1.354 1.19m-5.796 1.553c.534-.143.792-.908.578-1.708s-.82-1.333-1.354-1.19s-.792.907-.578 1.708s.82 1.333 1.354 1.19m-.917 2.974a.75.75 0 0 1 .91-.545c1.13.283 2.428.287 3.746-.066c1.318-.354 2.44-1.006 3.278-1.816a.75.75 0 1 1 1.043 1.078a8.4 8.4 0 0 1-1.15.928l.159.322a1.5 1.5 0 1 1-2.693 1.322l-.196-.4l-.053.014c-1.555.417-3.112.42-4.499.073a.75.75 0 0 1-.545-.91'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:eye-closed-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2.919 6.605a1 1 0 0 0-1.838.79l.002.003l.003.007l.01.021l.032.072q.04.09.12.25c.105.21.262.506.47.857c.41.687 1.027 1.6 1.872 2.52l-.797.797a1 1 0 1 0 1.414 1.414l.84-.84c.565.455 1.197.885 1.897 1.256l-.782 1.202a1 1 0 0 0 1.676 1.091l.985-1.514c.677.208 1.402.355 2.177.425V16.5a1 1 0 0 0 1 1V13c-2.748 0-4.819-1.199-6.304-2.59l-.024-.022a12 12 0 0 1-.564-.569a13.4 13.4 0 0 1-1.67-2.237a12 12 0 0 1-.516-.968zm-1.838.79L2 7c-.92.394-.919.395-.919.395' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M15.22 12.398A8.7 8.7 0 0 1 12 13v4.5a1 1 0 0 0 1-1v-1.544c.772-.07 1.497-.217 2.176-.425l.986 1.515a1 1 0 0 0 1.676-1.091l-.782-1.203c.701-.37 1.332-.8 1.897-1.256l.84.84a1 1 0 1 0 1.414-1.414l-.797-.798a15.4 15.4 0 0 0 2.302-3.296a10 10 0 0 0 .19-.395l.011-.026l.004-.008l.002-.005a1 1 0 1 0-1.838-.788l-.005.011a5 5 0 0 1-.146.302a13 13 0 0 1-2.614 3.48c-.841.79-1.87 1.517-3.095 2' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:face-scan-circle-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M10.801 2.57a.71.71 0 0 1-.555.838a8.78 8.78 0 0 0-6.838 6.838a.71.71 0 1 1-1.394-.283a10.2 10.2 0 0 1 7.949-7.949a.71.71 0 0 1 .838.556M2.57 13.199a.71.71 0 0 1 .838.555a8.78 8.78 0 0 0 6.838 6.838a.71.71 0 1 1-.283 1.394a10.2 10.2 0 0 1-7.948-7.949a.71.71 0 0 1 .555-.838M13.199 2.57a.71.71 0 0 1 .838-.556a10.2 10.2 0 0 1 7.949 7.949a.711.711 0 0 1-1.394.283a8.78 8.78 0 0 0-6.838-6.838a.71.71 0 0 1-.555-.838m8.231 10.629a.71.71 0 0 1 .556.838a10.2 10.2 0 0 1-7.949 7.949a.711.711 0 0 1-.283-1.394a8.78 8.78 0 0 0 6.838-6.838a.71.71 0 0 1 .838-.555' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M12 19.583a7.583 7.583 0 1 0 0-15.166a7.583 7.583 0 0 0 0 15.166' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.94 14.539a.71.71 0 0 1 .995-.148c.59.437 1.3.69 2.065.69a3.45 3.45 0 0 0 2.065-.69a.71.71 0 1 1 .847 1.142a4.87 4.87 0 0 1-2.912.97a4.87 4.87 0 0 1-2.911-.97a.71.71 0 0 1-.148-.994m5.547-2.895c.458 0 .83-.557.83-1.244s-.372-1.244-.83-1.244s-.83.557-.83 1.244s.372 1.244.83 1.244m-4.976 0c.458 0 .83-.557.83-1.244s-.372-1.244-.83-1.244s-.83.557-.83 1.244s.372 1.244.83 1.244'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:filters-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M18 8A6 6 0 1 1 6 8a6 6 0 0 1 12 0'/%3E%3Cpath fill='currentColor' d='M13.58 13.79a6 6 0 0 1-7.16-3.58a6 6 0 1 0 7.16 3.58' opacity='.7'/%3E%3Cpath fill='currentColor' d='M13.58 13.79c.271.684.42 1.43.42 2.21a6 6 0 0 1-2 4.472a6 6 0 1 0 5.58-10.262a6.01 6.01 0 0 1-4 3.58' opacity='.4'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:ghost-bold-duotone,[i-solar\:ghost-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 19.206V12c0-5.523-4.477-10-10-10S2 6.477 2 12v7.206a1.727 1.727 0 0 0 2.5 1.544a2.89 2.89 0 0 1 2.896.18a2.89 2.89 0 0 0 3.208 0l.353-.234a1.88 1.88 0 0 1 2.086 0l.353.235a2.89 2.89 0 0 0 3.208 0a2.89 2.89 0 0 1 2.897-.18A1.727 1.727 0 0 0 22 19.206' opacity='.5'/%3E%3Cpath fill='currentColor' d='M15 12c.552 0 1-.672 1-1.5S15.552 9 15 9s-1 .672-1 1.5s.448 1.5 1 1.5m-5-1.5c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S8.448 9 9 9s1 .672 1 1.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:info-circle-line-duotone,[i-solar\:info-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='1.5' opacity='.5'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-width='1.5' d='M12 17v-6'/%3E%3Ccircle cx='1' cy='1' r='1' fill='currentColor' transform='matrix(1 0 0 -1 11 9)'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:layers-bold-duotone,[i-solar\:layers-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4.979 9.685C2.993 8.891 2 8.494 2 8s.993-.89 2.979-1.685l2.808-1.123C9.773 4.397 10.767 4 12 4s2.227.397 4.213 1.192l2.808 1.123C21.007 7.109 22 7.506 22 8s-.993.89-2.979 1.685l-2.808 1.124C14.227 11.603 13.233 12 12 12s-2.227-.397-4.213-1.191z'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 8c0 .494.993.89 2.979 1.685l2.808 1.124C9.773 11.603 10.767 12 12 12s2.227-.397 4.213-1.191l2.808-1.124C21.007 8.891 22 8.494 22 8s-.993-.89-2.979-1.685l-2.808-1.123C14.227 4.397 13.233 4 12 4s-2.227.397-4.213 1.192L4.98 6.315C2.993 7.109 2 7.506 2 8' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='m5.766 10l-.787.315C2.993 11.109 2 11.507 2 12s.993.89 2.979 1.685l2.808 1.124C9.773 15.603 10.767 16 12 16s2.227-.397 4.213-1.191l2.808-1.124C21.007 12.891 22 12.493 22 12s-.993-.89-2.979-1.685L18.234 10l-2.021.809C14.227 11.603 13.233 12 12 12s-2.227-.397-4.213-1.191z' opacity='.7'/%3E%3Cpath fill='currentColor' d='m5.766 14l-.787.315C2.993 15.109 2 15.507 2 16s.993.89 2.979 1.685l2.808 1.124C9.773 19.603 10.767 20 12 20s2.227-.397 4.213-1.192l2.808-1.123C21.007 16.891 22 16.494 22 16c0-.493-.993-.89-2.979-1.685L18.234 14l-2.021.809C14.227 15.603 13.233 16 12 16s-2.227-.397-4.213-1.191z' opacity='.4'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:leaf-bold-duotone,[i-solar\:leaf-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 22c-4.418 0-8-3.646-8-8.143c0-4.462 2.553-9.67 6.537-11.531A3.45 3.45 0 0 1 12 2z' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M13.463 2.326A3.45 3.45 0 0 0 12 2v7l4.432-4.432c-.863-.947-1.86-1.724-2.97-2.242' opacity='.3'/%3E%3Cpath fill='currentColor' d='M12 9v5.5l6.614-6.614c-.572-1.22-1.308-2.357-2.182-3.318z' opacity='.4'/%3E%3Cpath fill='currentColor' d='m12 19.5l7.811-7.811a15 15 0 0 0-1.197-3.803L12 14.5z' opacity='.6'/%3E%3Cpath fill='currentColor' d='M19.811 11.689L12 19.5V22c4.418 0 8-3.646 8-8.143c0-.71-.064-1.438-.189-2.168' opacity='.7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:magic-stick-2-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16.714 2.127c-.836-.43-1.922.263-4.095 1.65l-.562.36c-.618.394-.927.591-1.273.648c-.347.056-.692-.034-1.382-.215l-.628-.164C6.345 3.769 5.13 3.45 4.436 4.13s-.412 1.908.157 4.363l.147.635c.161.697.242 1.046.177 1.393c-.066.346-.27.65-.68 1.26l-.372.555c-1.439 2.145-2.158 3.217-1.753 4.067c.406.85 1.668.915 4.192 1.045l.654.033c.717.037 1.076.056 1.382.213c.306.158.524.436.962.994l.398.507c1.539 1.962 2.309 2.943 3.255 2.788c.945-.154 1.441-1.342 2.433-3.717l.257-.614c.282-.675.422-1.012.677-1.261c.255-.25.595-.382 1.274-.647l.618-.24c2.39-.933 3.586-1.4 3.765-2.345s-.777-1.744-2.688-3.342l-.495-.413c-.543-.454-.815-.68-.963-.992s-.158-.672-.175-1.393l-.016-.657c-.062-2.538-.093-3.806-.928-4.236'/%3E%3Cpath fill='currentColor' d='M15.93 16.991c.127-.268.239-.45.392-.6c.172-.167.382-.282.71-.42l4.498 4.499a.75.75 0 0 1-1.06 1.06z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:magic-stick-3-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M3.845 3.845a2.883 2.883 0 0 0 0 4.077L5.432 9.51c.012-.014.555.503.568.49l4-4c.013-.013-.504-.556-.49-.568L7.922 3.845a2.883 2.883 0 0 0-4.077 0m1.288 11.462a.483.483 0 0 1 .9 0l.157.4a.48.48 0 0 0 .272.273l.398.157a.486.486 0 0 1 0 .903l-.398.158a.48.48 0 0 0-.272.273l-.157.4a.483.483 0 0 1-.9 0l-.157-.4a.48.48 0 0 0-.272-.273l-.398-.158a.486.486 0 0 1 0-.903l.398-.157a.48.48 0 0 0 .272-.274z' opacity='.5'/%3E%3Cpath fill='currentColor' d='M19.967 9.13a.483.483 0 0 1 .9 0l.156.399c.05.125.148.224.273.273l.398.158a.486.486 0 0 1 0 .902l-.398.158a.5.5 0 0 0-.273.273l-.156.4a.483.483 0 0 1-.9 0l-.157-.4a.5.5 0 0 0-.272-.273l-.398-.158a.486.486 0 0 1 0-.902l.398-.158a.5.5 0 0 0 .272-.273z' opacity='.2'/%3E%3Cpath fill='currentColor' d='M16.1 2.307a.483.483 0 0 1 .9 0l.43 1.095a.48.48 0 0 0 .272.274l1.091.432a.486.486 0 0 1 0 .903l-1.09.432a.5.5 0 0 0-.273.273L17 6.81a.483.483 0 0 1-.9 0l-.43-1.095a.5.5 0 0 0-.273-.273l-1.09-.432a.486.486 0 0 1 0-.903l1.09-.432a.5.5 0 0 0 .273-.274z' opacity='.7'/%3E%3Cpath fill='currentColor' d='M10.568 6.49c-.012.014-.555-.503-.568-.49l-4 4c-.013.013.504.556.49.568l9.588 9.587a2.883 2.883 0 1 0 4.078-4.077z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:magnifer-line-duotone,[i-solar\:magnifer-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cdefs%3E%3Cmask id='solarMagniferLineDuotone0'%3E%3Cg fill='none' stroke-width='1.5'%3E%3Ccircle cx='11.5' cy='11.5' r='9.5' stroke='gray'/%3E%3Cpath stroke='%23fff' stroke-linecap='round' d='M18.5 18.5L22 22'/%3E%3C/g%3E%3C/mask%3E%3C/defs%3E%3Cpath fill='currentColor' d='M0 0h24v24H0z' mask='url(%23solarMagniferLineDuotone0)'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:microphone-2-bold-duotone,[i-solar\:microphone-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M4 9a.75.75 0 0 1 .75.75v1a7.25 7.25 0 1 0 14.5 0v-1a.75.75 0 0 1 1.5 0v1a8.75 8.75 0 0 1-8 8.718v2.282a.75.75 0 0 1-1.5 0v-2.282a8.75 8.75 0 0 1-8-8.718v-1A.75.75 0 0 1 4 9' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M9.75 7.75A.75.75 0 0 0 9 7H6.298a5.751 5.751 0 0 1 11.404 0H13.5a.75.75 0 0 0 0 1.5h4.25V10H13.5a.75.75 0 0 0 0 1.5h4.201a5.751 5.751 0 0 1-11.403 0H9A.75.75 0 0 0 9 10H6.25V8.5H9a.75.75 0 0 0 .75-.75' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12.75 10.75c0 .414.336.75.75.75h4.201l.049-1.5H13.5a.75.75 0 0 0-.75.75m0-3c0 .414.336.75.75.75h4.25L17.701 7H13.5a.75.75 0 0 0-.75.75m-3 0A.75.75 0 0 0 9 7H6.298L6.25 8.5H9a.75.75 0 0 0 .75-.75m0 3A.75.75 0 0 0 9 10H6.25l.048 1.5H9a.75.75 0 0 0 .75-.75'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:microphone-3-bold-duotone,[i-solar\:microphone-3-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M4 9a.75.75 0 0 1 .75.75v1a7.25 7.25 0 1 0 14.5 0v-1a.75.75 0 0 1 1.5 0v1a8.75 8.75 0 0 1-8 8.718v2.282a.75.75 0 0 1-1.5 0v-2.282a8.75 8.75 0 0 1-8-8.718v-1A.75.75 0 0 1 4 9' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 2a5.75 5.75 0 0 0-5.75 5.75v3a5.75 5.75 0 0 0 11.5 0v-3A5.75 5.75 0 0 0 12 2m2 9.5a.75.75 0 0 0 0-1.5h-4a.75.75 0 0 0 0 1.5zm-.25-3.75a.75.75 0 0 1-.75.75h-2A.75.75 0 0 1 11 7h2a.75.75 0 0 1 .75.75' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M14 11.5a.75.75 0 0 0 0-1.5h-4a.75.75 0 0 0 0 1.5zm-1-3A.75.75 0 0 0 13 7h-2a.75.75 0 0 0 0 1.5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:minus-circle-line-duotone,[i-solar\:minus-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='M15 12H9'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:notes-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='m20.312 12.647l.517-1.932c.604-2.255.907-3.382.68-4.358a4 4 0 0 0-1.162-2.011c-.731-.685-1.859-.987-4.114-1.591c-2.255-.605-3.383-.907-4.358-.68a4 4 0 0 0-2.011 1.162c-.587.626-.893 1.543-1.348 3.209l-.244.905l-.517 1.932c-.605 2.255-.907 3.382-.68 4.358a4 4 0 0 0 1.162 2.011c.731.685 1.859.987 4.114 1.592c2.032.544 3.149.843 4.064.73q.15-.019.294-.052a4 4 0 0 0 2.011-1.16c.685-.732.987-1.86 1.592-4.115Z'/%3E%3Cpath d='M16.415 17.974a4 4 0 0 1-1.068 1.678c-.731.685-1.859.987-4.114 1.591s-3.383.907-4.358.679a4 4 0 0 1-2.011-1.161c-.685-.731-.988-1.859-1.592-4.114l-.517-1.932c-.605-2.255-.907-3.383-.68-4.358a4 4 0 0 1 1.162-2.011c.731-.685 1.859-.987 4.114-1.592q.638-.172 1.165-.309'/%3E%3Cpath stroke-linecap='round' d='m11.777 10l4.83 1.294M11 12.898l2.898.776'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:pallete-2-bold-duotone,[i-solar\:pallete-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M10.847 21.934C5.867 21.362 2 17.133 2 12C2 6.477 6.477 2 12 2s10 4.477 10 10c0 5.157-3.283 4.733-6.086 4.37c-1.618-.209-3.075-.397-3.652.518c-.395.626.032 1.406.555 1.929a1.673 1.673 0 0 1 0 2.366c-.523.523-1.235.836-1.97.751' opacity='.5'/%3E%3Cpath fill='currentColor' d='M11.085 7a1.5 1.5 0 1 1-3 0a1.5 1.5 0 0 1 3 0M6.5 13a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3m11 0a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3m-3-4.5a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:pause-circle-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.076 8.617C8 8.801 8 9.034 8 9.5v5c0 .466 0 .699.076.883a1 1 0 0 0 .541.54c.184.077.417.077.883.077s.699 0 .883-.076a1 1 0 0 0 .54-.541c.077-.184.077-.417.077-.883v-5c0-.466 0-.699-.076-.883a1 1 0 0 0-.541-.54C10.199 8 9.966 8 9.5 8s-.699 0-.883.076a1 1 0 0 0-.54.541m4.999 0C13 8.801 13 9.034 13 9.5v5c0 .466 0 .699.076.883a1 1 0 0 0 .541.54c.184.077.417.077.883.077s.699 0 .883-.076a1 1 0 0 0 .54-.541c.077-.184.077-.417.077-.883v-5c0-.466 0-.699-.076-.883a1 1 0 0 0-.541-.54C15.199 8 14.966 8 14.5 8s-.699 0-.883.076a1 1 0 0 0-.54.541'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:people-nearby-bold-duotone,[i-solar\:people-nearby-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19.717 20.362C21.143 19.585 22 18.587 22 17.5c0-1.152-.963-2.204-2.546-3C17.623 13.58 14.962 13 12 13s-5.623.58-7.454 1.5C2.963 15.296 2 16.348 2 17.5s.963 2.204 2.546 3C6.377 21.42 9.038 22 12 22c3.107 0 5.882-.637 7.717-1.638' opacity='.6'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M9.25 4a2.75 2.75 0 1 1 5.5 0a2.75 2.75 0 0 1-5.5 0' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='m8.223 11.574l-2.175-.725a1.532 1.532 0 0 1 .805-2.952l1.898.407l.21.044a15 15 0 0 0 6.288-.044l1.897-.407a1.532 1.532 0 0 1 .806 2.952l-2.175.725c-.263.088-.394.132-.493.193a1 1 0 0 0-.466.986c.016.115.066.244.165.503l1.247 3.242a1.473 1.473 0 0 1-2.654 1.26L12 15l-1.576 2.757a1.473 1.473 0 0 1-2.654-1.26l1.247-3.241c.1-.259.149-.388.165-.503a1 1 0 0 0-.466-.986c-.099-.061-.23-.105-.493-.193'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:play-circle-bold-duotone,[i-solar\:play-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12s4.477 10 10 10' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='m15.414 13.059l-4.72 2.787C9.934 16.294 9 15.71 9 14.786V9.214c0-.924.934-1.507 1.694-1.059l4.72 2.787c.781.462.781 1.656 0 2.118'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:play-circle-broken{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M13.888 9.935C14.963 10.812 15.5 11.25 15.5 12s-.537 1.188-1.612 2.065c-.297.242-.591.47-.862.66c-.237.167-.506.339-.784.508c-1.073.652-1.609.978-2.09.617c-.48-.36-.524-1.116-.612-2.628c-.024-.427-.04-.846-.04-1.222s.016-.795.04-1.222c.088-1.512.132-2.267.612-2.628c.481-.361 1.018-.035 2.09.617c.278.169.547.341.784.508c.27.19.565.418.862.66Z'/%3E%3Cpath stroke-linecap='round' d='M7 3.338A9.95 9.95 0 0 1 12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12c0-1.821.487-3.53 1.338-5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:refresh-bold-duotone,[i-solar\:refresh-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12.079 2.25c-4.794 0-8.734 3.663-9.118 8.333H2a.75.75 0 0 0-.528 1.283l1.68 1.666a.75.75 0 0 0 1.056 0l1.68-1.666a.75.75 0 0 0-.528-1.283h-.893c.38-3.831 3.638-6.833 7.612-6.833a7.66 7.66 0 0 1 6.537 3.643a.75.75 0 1 0 1.277-.786A9.16 9.16 0 0 0 12.08 2.25'/%3E%3Cpath fill='currentColor' d='M20.841 10.467a.75.75 0 0 0-1.054 0L18.1 12.133a.75.75 0 0 0 .527 1.284h.899c-.381 3.83-3.651 6.833-7.644 6.833a7.7 7.7 0 0 1-6.565-3.644a.75.75 0 1 0-1.276.788a9.2 9.2 0 0 0 7.84 4.356c4.809 0 8.766-3.66 9.151-8.333H22a.75.75 0 0 0 .527-1.284z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:running-2-line-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Ccircle cx='18.5' cy='4.5' r='2.5' stroke='currentColor' stroke-width='1.5' opacity='.5'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-width='1.5' d='m9 17l-1 1.2c-.738.886-1.107 1.328-1.61 1.564S5.31 20 4.157 20H3'/%3E%3Cpath fill='currentColor' d='M13.65 22a.75.75 0 0 0 1.5 0zm-1.085-5.754l.453-.598zm1.184 1.015l.587-.466zm.557 1.12l.727-.186zm-.802-6.826a.75.75 0 0 0-1.009-1.11zm-2.652 1.61l.703.26zm.07 1.555l-.677.323zm2.728 5.219v2.06h1.5v-2.06zm-1.538-3.095c.663.502.887.679 1.05.884l1.174-.934c-.308-.387-.717-.69-1.319-1.146zm3.038 3.095c0-.755.006-1.264-.117-1.744l-1.453.373c.065.254.07.538.07 1.37zm-1.988-2.211c.197.247.339.534.417.84l1.454-.373a3.75 3.75 0 0 0-.697-1.4zm-.667-7.283c-.42.381-.945.836-1.354 1.224c-.21.198-.41.398-.573.586c-.149.172-.327.4-.42.649l1.407.521c-.007.021.014-.035.146-.187c.116-.134.276-.295.471-.48c.4-.38.865-.778 1.332-1.203zm.523 5.203c-.488-.37-.818-.62-1.056-.832c-.233-.208-.32-.33-.363-.418l-1.354.645c.167.35.423.63.72.894c.292.26.679.552 1.147.907zm-2.87-2.744a2.75 2.75 0 0 0 .097 2.139l1.354-.645a1.25 1.25 0 0 1-.044-.973z' opacity='.5'/%3E%3Cpath fill='currentColor' d='m5.436 8.82l-.37-.652zm-1.807.164a.75.75 0 1 0 .742 1.304zm9.778-1.627l-.286.693zm-2.96-.715l-.055-.748zM21 12.75a.75.75 0 1 0 0-1.5zm-5.232-3.213l-.67.335zM5.065 8.168l-1.436.816l.742 1.304l1.435-.816zm8.627-1.505c-1.344-.553-2.08-.857-3.3-.769l.11 1.496c.823-.06 1.255.099 2.62.66zm-7.886 2.81c2.502-1.422 3.552-2 4.695-2.083l-.109-1.496c-1.56.114-2.949.923-5.327 2.274zm13.949 3.276H21v-1.5h-1.245zm-4.658-2.878a5.21 5.21 0 0 0 4.658 2.878v-1.5A3.71 3.71 0 0 1 16.439 9.2zm1.342-.67a5.33 5.33 0 0 0-2.747-2.538l-.57 1.387c.86.354 1.564 1 1.975 1.821z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:settings-bold-duotone,[i-solar\:settings-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M14.279 2.152C13.909 2 13.439 2 12.5 2s-1.408 0-1.779.152a2 2 0 0 0-1.09 1.083c-.094.223-.13.484-.145.863a1.62 1.62 0 0 1-.796 1.353a1.64 1.64 0 0 1-1.579.008c-.338-.178-.583-.276-.825-.308a2.03 2.03 0 0 0-1.49.396c-.318.242-.553.646-1.022 1.453c-.47.807-.704 1.21-.757 1.605c-.07.526.074 1.058.4 1.479c.148.192.357.353.68.555c.477.297.783.803.783 1.361s-.306 1.064-.782 1.36c-.324.203-.533.364-.682.556a2 2 0 0 0-.399 1.479c.053.394.287.798.757 1.605s.704 1.21 1.022 1.453c.424.323.96.465 1.49.396c.242-.032.487-.13.825-.308a1.64 1.64 0 0 1 1.58.008c.486.28.774.795.795 1.353c.015.38.051.64.145.863c.204.49.596.88 1.09 1.083c.37.152.84.152 1.779.152s1.409 0 1.779-.152a2 2 0 0 0 1.09-1.083c.094-.223.13-.483.145-.863c.02-.558.309-1.074.796-1.353a1.64 1.64 0 0 1 1.579-.008c.338.178.583.276.825.308c.53.07 1.066-.073 1.49-.396c.318-.242.553-.646 1.022-1.453c.47-.807.704-1.21.757-1.605a2 2 0 0 0-.4-1.479c-.148-.192-.357-.353-.68-.555c-.477-.297-.783-.803-.783-1.361s.306-1.064.782-1.36c.324-.203.533-.364.682-.556a2 2 0 0 0 .399-1.479c-.053-.394-.287-.798-.757-1.605s-.704-1.21-1.022-1.453a2.03 2.03 0 0 0-1.49-.396c-.242.032-.487.13-.825.308a1.64 1.64 0 0 1-1.58-.008a1.62 1.62 0 0 1-.795-1.353c-.015-.38-.051-.64-.145-.863a2 2 0 0 0-1.09-1.083' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M15.523 12c0 1.657-1.354 3-3.023 3s-3.023-1.343-3.023-3S10.83 9 12.5 9s3.023 1.343 3.023 3'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:settings-minimalistic-bold-duotone,[i-solar\:settings-minimalistic-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12.428 2c-1.114 0-2.129.6-4.157 1.802l-.686.406C5.555 5.41 4.542 6.011 3.985 7c-.557.99-.557 2.19-.557 4.594v.812c0 2.403 0 3.605.557 4.594s1.57 1.59 3.6 2.791l.686.407C10.299 21.399 11.314 22 12.428 22s2.128-.6 4.157-1.802l.686-.407c2.028-1.2 3.043-1.802 3.6-2.791c.557-.99.557-2.19.557-4.594v-.812c0-2.403 0-3.605-.557-4.594s-1.572-1.59-3.6-2.792l-.686-.406C14.555 2.601 13.542 2 12.428 2' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12.428 8.25a3.75 3.75 0 1 0 0 7.5a3.75 3.75 0 0 0 0-7.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:stop-circle-bold-duotone,[i-solar\:stop-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.586 8.586C8 9.172 8 10.114 8 12s0 2.828.586 3.414S10.114 16 12 16s2.828 0 3.414-.586S16 13.886 16 12s0-2.828-.586-3.414S13.886 8 12 8s-2.828 0-3.414.586'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:trash-bin-trash-linear,[i-solar\:trash-bin-trash-linear=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' d='M20.5 6h-17m15.333 2.5l-.46 6.9c-.177 2.654-.265 3.981-1.13 4.79s-2.196.81-4.856.81h-.774c-2.66 0-3.991 0-4.856-.81c-.865-.809-.954-2.136-1.13-4.79l-.46-6.9M9.5 11l.5 5m4.5-5l-.5 5'/%3E%3Cpath d='M6.5 6h.11a2 2 0 0 0 1.83-1.32l.034-.103l.097-.291c.083-.249.125-.373.18-.479a1.5 1.5 0 0 1 1.094-.788C9.962 3 10.093 3 10.355 3h3.29c.262 0 .393 0 .51.019a1.5 1.5 0 0 1 1.094.788c.055.106.097.23.18.479l.097.291A2 2 0 0 0 17.5 6'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:tuning-square-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-4.714 0-7.071 1.464-8.536C4.93 2 7.286 2 12 2s7.071 0 8.535 1.464C22 4.93 22 7.286 22 12s0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12Z'/%3E%3Ccircle cx='8' cy='10' r='2'/%3E%3Ccircle cx='2' cy='2' r='2' transform='matrix(1 0 0 -1 14 16)'/%3E%3Cpath stroke-linecap='round' d='M8 14v5m8-9V5M8 5v1m8 13v-1'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:undo-left-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M7.53 3.47a.75.75 0 0 1 0 1.06L5.06 7l2.47 2.47a.75.75 0 1 1-1.06 1.06l-3-3a.75.75 0 0 1 0-1.06l3-3a.75.75 0 0 1 1.06 0' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='m5.06 7l.75-.75h9.226c.904 0 1.633 0 2.222.053c.606.055 1.136.172 1.617.45a3.75 3.75 0 0 1 1.372 1.372c.278.481.395 1.011.45 1.617c.053.589.053 1.318.053 2.222v.072c0 .904 0 1.633-.053 2.222c-.055.606-.172 1.136-.45 1.617a3.75 3.75 0 0 1-1.372 1.373c-.481.277-1.011.394-1.617.449c-.589.053-1.318.053-2.222.053H8a.75.75 0 0 1 0-1.5h7c.948 0 1.61 0 2.122-.047c.502-.046.788-.13 1.003-.254a2.25 2.25 0 0 0 .823-.824c.125-.215.21-.5.255-1.003c.046-.512.047-1.174.047-2.122s0-1.61-.047-2.122c-.046-.503-.13-.788-.255-1.003a2.25 2.25 0 0 0-.823-.824c-.215-.124-.5-.208-1.003-.254c-.512-.046-1.174-.047-2.122-.047H5.81z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:upload-minimalistic-bold,[i-solar\:upload-minimalistic-bold=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12.554 2.494a.75.75 0 0 0-1.107 0l-4 4.375A.75.75 0 0 0 8.553 7.88l2.696-2.95V16a.75.75 0 0 0 1.5 0V4.932l2.697 2.95a.75.75 0 1 0 1.107-1.013z'/%3E%3Cpath fill='currentColor' d='M3.75 15a.75.75 0 0 0-1.5 0v.055c0 1.367 0 2.47.117 3.337c.12.9.38 1.658.981 2.26c.602.602 1.36.86 2.26.982c.867.116 1.97.116 3.337.116h6.11c1.367 0 2.47 0 3.337-.116c.9-.122 1.658-.38 2.26-.982s.86-1.36.982-2.26c.116-.867.116-1.97.116-3.337V15a.75.75 0 0 0-1.5 0c0 1.435-.002 2.436-.103 3.192c-.099.734-.28 1.122-.556 1.399c-.277.277-.665.457-1.4.556c-.755.101-1.756.103-3.191.103H9c-1.435 0-2.437-.002-3.192-.103c-.734-.099-1.122-.28-1.399-.556c-.277-.277-.457-.665-.556-1.4c-.101-.755-.103-1.756-.103-3.191'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:upload-square-line-duotone,[i-solar\:upload-square-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 17v-7m0 0l3 3m-3-3l-3 3'/%3E%3Cpath stroke-linecap='round' d='M16 7H8'/%3E%3Cpath d='M2 12c0-4.714 0-7.071 1.464-8.536C4.93 2 7.286 2 12 2s7.071 0 8.535 1.464C22 4.93 22 7.286 22 12s0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12Z' opacity='.5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:user-rounded-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='6' r='4'/%3E%3Cellipse cx='12' cy='17' rx='7' ry='4'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:user-speak-rounded-bold-duotone,[i-solar\:user-speak-rounded-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Ccircle cx='10' cy='6.75' r='4' fill='currentColor'/%3E%3Cellipse cx='10' cy='17.75' fill='currentColor' opacity='.5' rx='7' ry='4'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M18.357 2.364a.75.75 0 0 1 1.029-.257L19 2.75l.386-.643h.001l.002.002l.004.002l.01.006l.113.076c.07.049.166.12.277.212c.222.185.512.462.802.838c.582.758 1.155 1.914 1.155 3.507s-.573 2.75-1.155 3.507c-.29.376-.58.653-.802.838a4 4 0 0 1-.363.27l-.028.018l-.01.006l-.003.002l-.002.001s-.001.001-.387-.642l.386.643a.75.75 0 0 1-.776-1.283l.005-.004l.041-.027q.06-.042.177-.136c.152-.128.362-.326.573-.6c.417-.542.844-1.386.844-2.593s-.427-2.05-.844-2.593a3.8 3.8 0 0 0-.573-.6a3 3 0 0 0-.218-.163l-.005-.003a.75.75 0 0 1-.253-1.027' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M16.33 4.415a.75.75 0 0 1 1.006-.336L17 4.75l.336-.67h.001l.002.001l.004.002l.008.004l.022.012a2 2 0 0 1 .233.153c.136.102.31.254.48.467c.349.436.664 1.099.664 2.031s-.316 1.595-.664 2.031a2.7 2.7 0 0 1-.654.586l-.06.034l-.02.012l-.01.004l-.003.002l-.002.001l-.33-.657l.329.658a.75.75 0 0 1-.685-1.335l.003-.001l.052-.036c.052-.04.13-.106.209-.205c.15-.189.335-.526.335-1.094s-.184-.905-.335-1.094a1.2 1.2 0 0 0-.261-.24l-.003-.002a.75.75 0 0 1-.322-1' clip-rule='evenodd'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:volume-loud-bold-duotone,[i-solar\:volume-loud-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M2.003 11.716c.037-1.843.056-2.764.668-3.552a3 3 0 0 1 .413-.431c.752-.636 1.746-.636 3.733-.636c.71 0 1.065 0 1.403-.092q.105-.03.209-.067c.33-.121.627-.33 1.22-.746c2.338-1.645 3.508-2.467 4.489-2.11c.188.069.37.168.533.29c.848.635.913 2.115 1.042 5.073c.048 1.096.08 2.034.08 2.555s-.032 1.46-.08 2.555c-.13 2.958-.194 4.438-1.042 5.073a2.1 2.1 0 0 1-.533.29c-.982.357-2.15-.465-4.49-2.11c-.592-.416-.889-.625-1.22-.746a3 3 0 0 0-.208-.067c-.338-.092-.693-.092-1.403-.092c-1.987 0-2.98 0-3.733-.636a3 3 0 0 1-.413-.43c-.612-.79-.63-1.71-.668-3.552a14 14 0 0 1 0-.57'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M19.49 5.552a.66.66 0 0 1 .97.094l-.53.471l.53-.47h.002v.002l.004.004l.007.009l.078.112a5 5 0 0 1 .187.305c.149.265.339.652.526 1.171C21.64 8.291 22 9.851 22 12s-.36 3.71-.736 4.75c-.187.52-.377.907-.526 1.172a5 5 0 0 1-.265.417l-.007.009l-.003.003l-.001.002s-.001.001-.531-.47l.53.471a.66.66 0 0 1-.972.094a.77.77 0 0 1-.091-1.03l.003-.005l.028-.04a3 3 0 0 0 .126-.208c.11-.195.264-.506.422-.943c.314-.871.643-2.252.643-4.222c0-1.969-.329-3.35-.643-4.222a6 6 0 0 0-.422-.942a3 3 0 0 0-.126-.207l-.028-.041l-.003-.004' clip-rule='evenodd' opacity='.4'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M17.757 8.416c.333-.197.753-.07.938.286l-.603.357l.603-.357l.001.002l.002.003l.003.007l.01.018l.024.053q.028.063.07.17c.053.145.12.35.185.62c.13.54.252 1.337.252 2.425c0 1.089-.122 1.886-.252 2.426c-.065.27-.132.475-.186.619a3 3 0 0 1-.094.223l-.009.018l-.003.007l-.002.003v.002s-.001.001-.604-.356l.603.357c-.185.355-.605.483-.938.286c-.33-.196-.45-.638-.272-.991l.004-.01l.035-.085c.032-.086.08-.23.13-.438c.1-.416.208-1.09.208-2.06c0-.971-.108-1.645-.208-2.061a4 4 0 0 0-.165-.523l-.004-.01c-.179-.354-.058-.796.272-.991' clip-rule='evenodd' opacity='.7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-svg-spinners\:3-dots-fade{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Ccircle cx='4' cy='12' r='3' fill='currentColor'%3E%3Canimate id='svgSpinners3DotsFade0' fill='freeze' attributeName='opacity' begin='0;svgSpinners3DotsFade1.end-0.25s' dur='0.75s' values='1;.2'/%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='3' fill='currentColor' opacity='.4'%3E%3Canimate fill='freeze' attributeName='opacity' begin='svgSpinners3DotsFade0.begin+0.15s' dur='0.75s' values='1;.2'/%3E%3C/circle%3E%3Ccircle cx='20' cy='12' r='3' fill='currentColor' opacity='.3'%3E%3Canimate id='svgSpinners3DotsFade1' fill='freeze' attributeName='opacity' begin='svgSpinners3DotsFade0.begin+0.3s' dur='0.75s' values='1;.2'/%3E%3C/circle%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-svg-spinners\:ring-resize{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg stroke='currentColor'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-linecap='round' stroke-width='3'%3E%3Canimate attributeName='stroke-dasharray' calcMode='spline' dur='1.5s' keySplines='0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1' keyTimes='0;0.475;0.95;1' repeatCount='indefinite' values='0 150;42 150;42 150;42 150'/%3E%3Canimate attributeName='stroke-dashoffset' calcMode='spline' dur='1.5s' keySplines='0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1' keyTimes='0;0.475;0.95;1' repeatCount='indefinite' values='0;-16;-59;-59'/%3E%3C/circle%3E%3CanimateTransform attributeName='transform' dur='2s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-vscode-icons\:file-type-minecraft{background:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='%2352a535' d='M30 2H2v28h28z'/%3E%3Cpath fill='%2386d562' d='M24.4 13.2h-5.6v.47h5.6zm-5.6 8.4h-5.6v.47h5.6zm2.8 2.8h-2.8v.47h2.8zm-8.4 0h-2.8v.47h2.8zm0-11.2H7.6v.47h5.6z'/%3E%3Cpath d='M24.4 13.2V7.6h-5.6v5.6h-5.6V16h-2.8v8.4h2.8v-2.8h5.6v2.8h2.8V16h-2.8v-2.8zM13.2 7.6H7.6v5.6h5.6z'/%3E%3Cpath fill='%232a641c' d='M24.4 7.6h-5.6v.47h5.6zm-5.6 5.6h-5.6v.47h5.6zm-5.6-5.6H7.6v.47h5.6zm0 8.4h-2.8v.47h2.8zm8.4 0h-2.8v.47h2.8z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;width:1.2em;height:1.2em}[i-solar\:danger-circle-bold-duotone~=disabled\:]:disabled{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10s10-4.477 10-10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12 6.25a.75.75 0 0 1 .75.75v6a.75.75 0 0 1-1.5 0V7a.75.75 0 0 1 .75-.75M12 17a1 1 0 1 0 0-2a1 1 0 0 0 0 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);font-weight:500;text-decoration:underline}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){border-left:.25em solid var(--un-prose-borders);margin:1em 0;padding-left:1em;font-style:italic}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875em;font-weight:600}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){border-radius:.375rem;padding:1.25rem 1.5rem;overflow-x:auto}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;tab-size:4;-webkit-hyphens:none;hyphens:none;background:0 0}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-hr);margin:2em 0}.prose :where(table):not(:where(.not-prose,.not-prose *)){border-collapse:collapse;margin:1em 0;display:block;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;border-radius:.25rem;padding:.25rem .5rem;font-size:.875em}.prose :where(details):not(:where(.not-prose,.not-prose *)){background:var(--un-prose-bg-soft);margin:1em 0;padding:1.25rem 1.5rem}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container,[container=""]{width:100%}.scrollbar-none,[scrollbar-none=""]{scrollbar-width:none}.scrollbar-none::-webkit-scrollbar{display:none}[scrollbar-none=""]::-webkit-scrollbar{display:none}@media (min-width:640px){.container,[container=""]{max-width:640px}}@media (min-width:768px){.container,[container=""]{max-width:768px}}@media (min-width:1024px){.container,[container=""]{max-width:1024px}}@media (min-width:1280px){.container,[container=""]{max-width:1280px}}@media (min-width:1536px){.container,[container=""]{max-width:1536px}}.\[input\:checked\~\&\]{input:checked~&}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none,[pointer-events-none=""],.disabled\:pointer-events-none:disabled{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.sticky,[sticky=""]{position:sticky}.before-position-absolute:before,[before~=absolute]:before,.after\:absolute:after,[after~=absolute]:after{position:absolute}.inset-0,[inset-0=""],.before\:inset-0:before,[before~=inset-0]:before,[after~=inset-0]:after{inset:0}.inset-x-0,[inset-x-0=""]{left:0;right:0}.inset-y-0{top:0;bottom:0}.bottom-0,[bottom-0=""]{bottom:0}.bottom-11,[bottom-11=""]{bottom:2.75rem}.bottom-2{bottom:.5rem}.left-0,[left-0=""]{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.right--10,[right--10=""]{right:-2.5rem}.right--15,[right--15=""]{right:-3.75rem}.right--5,[right--5=""]{right:-1.25rem}.right-0,[right-0=""],[right~="0"]{right:0}.right-2,[right-2=""]{right:.5rem}.right-4,[right-4=""]{right:1rem}.top--20,[top--20=""]{top:-5rem}.top-\[-32px\]{top:-32px}.top-0,[top-0=""],[top~="0"]{top:0}.top-1\/2,[top~="50%"]{top:50%}.top-2,[top-2=""]{top:.5rem}[bottom~="[calc(100%+8px)]"]{bottom:calc(100% + 8px)}[bottom~="3"]{bottom:.75rem}[right~="3"]{right:.75rem}[top~="[65dvh]"]{top:65dvh}[top~="[calc(100dvh-12rem)]"]{top:calc(100dvh - 12rem)}[top~="[calc(100dvh-15rem)]"]{top:calc(100dvh - 15rem)}.after\:left-\[2px\]:after{left:2px}.after\:top-\[2px\]:after{top:2px}.line-clamp-1,[line-clamp-1=""]{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3,[line-clamp-3=""]{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.z--1,[z--1=""]{z-index:-1}.z--2{z-index:-2}.z-\[9999\]{z-index:9999}.z-0{z-index:0}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100,[z-100=""]{z-index:100}.z-1000{z-index:1000}.z-2,[z-2=""]{z-index:2}.z-3,[z-3=""]{z-index:3}.z-30,[z-30=""]{z-index:30}.z-4,[z-4=""]{z-index:4}.z-99,[z-99=""]{z-index:99}[before~=z-0]:before{z-index:0}[after~=z--2]:after{z-index:-2}.grid,[grid=""],[grid~=\~]{display:grid}.col-span-full{grid-column:1/-1}.auto-cols-\[350px\]{grid-auto-columns:350px}.auto-cols-auto{grid-auto-columns:auto}.grid-auto-rows-\[minmax\(min-content\,max-content\)\]{grid-auto-rows:minmax(min-content,max-content)}.grid-auto-flow-dense{grid-auto-flow:dense}.grid-flow-col{grid-auto-flow:column}.grid-flow-row{grid-auto-flow:row}.cols-\[150px_1fr\],[grid~="cols-[150px_1fr]"]{grid-template-columns:150px 1fr}.cols-\[20px_1fr_60px\],[grid~="cols-[20px_1fr_60px]"]{grid-template-columns:20px 1fr 60px}.grid-cols-\[repeat\(auto-fill\,minmax\(280px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.cols-1,.grid-cols-1,[grid~=cols-1]{grid-template-columns:repeat(1,minmax(0,1fr))}.cols-2,.grid-cols-2,[grid-cols-2=""],[grid~=cols-2]{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0,[m0=""]{margin:0}.m-1,[m-1=""]{margin:.25rem}.m-auto{margin:auto}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-5,[mx-5=""]{margin-left:1.25rem;margin-right:1.25rem}.mx-auto,[mx-auto=""]{margin-left:auto;margin-right:auto}.mx2,[mx2=""]{margin-left:.5rem;margin-right:.5rem}.my{margin-top:1rem;margin-bottom:1rem}.my-0,[my-0=""]{margin-top:0;margin-bottom:0}.my-5,[my-5=""]{margin-top:1.25rem;margin-bottom:1.25rem}.my-auto,[my-auto=""]{margin-top:auto;margin-bottom:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:0}.mb-1,[mb-1=""]{margin-bottom:.25rem}.mb-2,.mb2,[mb-2=""],[mb2=""]{margin-bottom:.5rem}.mb-3,[mb-3=""]{margin-bottom:.75rem}.mb-4,[mb-4=""]{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml{margin-left:1rem}.ml-0\.5,[ml-0\.5=""]{margin-left:.125rem}.ml-auto{margin-left:auto}.mr{margin-right:1rem}.mr-0\!{margin-right:0!important}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-auto{margin-right:auto}.ms{margin-inline-start:1rem}.mt-0\.5{margin-top:.125rem}.mt-1,[mt-1=""]{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4,[mt-4=""]{margin-top:1rem}.mt-auto{margin-top:auto}[ml~="12"]{margin-left:3rem}[mr~="12"]{margin-right:3rem}[box~=border]{box-sizing:border-box}.inline,[inline=""]{display:inline}.block,[block=""]{display:block}.inline-block,[inline-block=""]{display:inline-block}.contents{display:contents}.aspect-square,[aspect-square=""]{aspect-ratio:1}.size-16,[size-16=""]{width:4rem;height:4rem}.size-2{width:.5rem;height:.5rem}.size-20,[size-20=""]{width:5rem;height:5rem}.size-24,[size-24=""],[size~="24"]{width:6rem;height:6rem}.size-3,[size-3=""]{width:.75rem;height:.75rem}.size-5{width:1.25rem;height:1.25rem}.size-6,[size-6=""],[size~="6"]{width:1.5rem;height:1.5rem}.size-60,[size-60=""]{width:15rem;height:15rem}[size~=sm]{width:24rem;height:24rem}.h-0\.5,[h-0\.5=""]{height:.125rem}.h-0\.5lh{height:.5lh}.h-1\.5,[h-1\.5=""]{height:.375rem}.h-10{height:2.5rem}.h-100dvh,[h-100dvh=""],[h~="100dvh"]{height:100dvh}.h-12{height:3rem}.h-16{height:4rem}.h-18,[h-18=""]{height:4.5rem}.h-1lh{height:1lh}.h-2,.h2,[h-2=""]{height:.5rem}.h-24,[h-24=""]{height:6rem}.h-3\.5{height:.875rem}.h-30,[h-30=""]{height:7.5rem}.h-4,[h-4=""]{height:1rem}.h-48,[h-48=""]{height:12rem}.h-5,[h-5=""]{height:1.25rem}.h-6{height:1.5rem}.h-60,[h-60=""]{height:15rem}.h-7,[h-7=""]{height:1.75rem}.h-8,[h-8=""]{height:2rem}.h-auto,[h-auto=""],[h~=auto]{height:auto}.h-fit,[h-fit=""]{height:fit-content}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h3{height:.75rem}.max-h-\[10lh\],[max-h~="[10lh]"]{max-height:10lh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[96\%\]{max-height:96%}.max-h-\[calc\(100dvh-7lh\)\]{max-height:calc(100dvh - 7lh)}.max-h-60,[max-h-60=""]{max-height:15rem}.max-h-full{max-height:100%}.max-h-none,[max-h-none=""]{max-height:none}.max-w-2xl{max-width:42rem}.max-w-6xl{max-width:72rem}.max-w-full,[max-w-full=""]{max-width:100%}.max-w-md{max-width:28rem}.min-h-\[120px\],.min-h-120px,[min-h-120px=""]{min-height:120px}.min-h-\[1lh\]{min-height:1lh}.min-h-16,[min-h-16=""]{min-height:4rem}.min-h-40px,[min-h-40px=""]{min-height:40px}.min-h-70dvh,[min-h-70dvh=""]{min-height:70dvh}.min-w-\[150px\]{min-width:150px}.min-w-\[160px\],[min-w~="[160px]"]{min-width:160px}.min-w-\[200px\]{min-width:200px}.min-w-0,[min-w-0=""]{min-width:0}.min-w-2,[min-w-2=""]{min-width:.5rem}.min-w-20,[min-w-20=""]{min-width:5rem}.min-w-20px{min-width:20px}.min-w-50,[min-w-50=""]{min-width:12.5rem}.w-\[92dvw\]{width:92dvw}.w-\[92vw\]{width:92vw}.w-0\!{width:0!important}.w-1{width:.25rem}.w-1\.5,[w-1\.5=""]{width:.375rem}.w-1\/2,[w~="[50%]"]{width:50%}.w-10\%{width:10%}.w-100,[w-100=""]{width:25rem}.w-100vw,[w-100vw=""]{width:100vw}.w-11{width:2.75rem}.w-18,[w-18=""]{width:4.5rem}.w-1lh{width:1lh}.w-2,[w-2=""]{width:.5rem}.w-25\%{width:25%}.w-3\.5{width:.875rem}.w-30,[w-30=""]{width:7.5rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-5,[w-5=""]{width:1.25rem}.w-8,[w-8=""]{width:2rem}.w-90\%{width:90%}.w-95\%{width:95%}.w-auto,[w-auto=""]{width:auto}.w-fit,[w-fit=""]{width:fit-content}.w-full,[w-full=""],[w~="100%"],[w~=full]{width:100%}[h~="[14px]"]{height:14px}[h~="[calc(1lh+4px+4px)]"]{height:calc(1lh + 8px)}[h~="300"]{height:75rem}[h~="50dvh"]{height:50dvh}[h~="80dvh"]{height:80dvh}[h~="85dvh"]{height:85dvh}[h~=unset]{height:unset}[max-h~="[300px]"]{max-height:300px}[max-h~="[4.5rem]"]{max-height:4.5rem}[max-h~="[85vh]"]{max-height:85vh}[max-h~="100"]{max-height:25rem}[max-h~="100dvh"]{max-height:100dvh}[max-h~="40%"]{max-height:40%}[max-h~="50"]{max-height:12.5rem}[max-w~="[calc(100dvw-1rem)]"]{max-width:calc(100dvw - 1rem)}[max-w~="500px"]{max-width:500px}[min-h~="[100px]"]{min-height:100px}[min-h~="[calc(1lh+4px+4px)]"]{min-height:calc(1lh + 8px)}[min-h~="100"]{min-height:25rem}[min-h~="120"]{min-height:30rem}[min-w~="1/2"],[min-w~="50%"]{min-width:50%}[min-w~="30%"]{min-width:30%}[min-w~="3em"]{min-width:3em}[min-w~="50vw"]{min-width:50vw}[min-w~="6"]{min-width:1.5rem}[w~="[1px]"]{width:1px}[w~="[calc(1lh+4px+4px)]"]{width:calc(1lh + 8px)}[w~="100dvw"]{width:100dvw}[w~="12.5"]{width:3.125rem}[w~="70%"]{width:70%}.before\:h-full:before{height:100%}.before\:w-1:before{width:.25rem}[before~=h-full]:before{height:100%}[before~=w-25\%]:before{width:25%}.after\:h-5:after{height:1.25rem}.after\:w-5:after{width:1.25rem}[after~=h-full]:after{height:100%}[after~=w-full]:after{width:100%}.max-w-screen-xl,[max-w-screen-xl=""]{max-width:1280px}.flex,[flex=""],[flex~=\~]{display:flex}.inline-flex,[inline-flex=""],[inline-flex~=\~]{display:inline-flex}.flex-1,[flex-1=""],[flex~="1"]{flex:1}.flex-shrink-0,.shrink-0,[flex-shrink-0=""],[shrink-0=""]{flex-shrink:0}.flex-row,[flex-row=""],[flex~=row]{flex-direction:row}[flex~=row-reverse]{flex-direction:row-reverse}.flex-col,[flex-col=""],[flex~=col]{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap,[flex-wrap=""]{flex-wrap:wrap}.origin-left,[origin-left=""]{transform-origin:0}[perspective~="800"]{perspective:800px}.-translate-x-1\/2,.translate-x-\[-50\%\]{--un-translate-x:-50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.-translate-y-1\/2,.translate-y-\[-50\%\],[transform~="translate-y-[-50%]"]{--un-translate-y:-50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-x-\[50\%\],[transform~="translate-x-[50%]"]{--un-translate-x:50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y--2,[transform~=translate-y--2]{--un-translate-y:-.5rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-\[-100\%\],[transform~="translate-y-[-100%]"]{--un-translate-y:-100%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-\[0\.25lh\]{--un-translate-y:.25lh;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-\[50\%\]{--un-translate-y:50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-1,[translate-y-1=""]{--un-translate-y:.25rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-2,[translate-y-2=""]{--un-translate-y:.5rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-4,[translate-y-4=""]{--un-translate-y:1rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-x~="0.5"]{--un-translate-x:.125rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-x~="data-[state=checked]:full"][data-state=checked]{--un-translate-x:100%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-y~="[-80%]"]{--un-translate-y:-80%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-y~="[2px]"]{--un-translate-y:2px;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.peer:checked~.peer-checked\:after\:translate-x-full:after{--un-translate-x:100%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.\[\&_\.card-cover_img\]\:hover\:translate-y-2:hover .card-cover img,[hover\:translate-y-2=""]:hover{--un-translate-y:.5rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.rotate-180{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:180deg;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.scale-100{--un-scale-x:1;--un-scale-y:1;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.scale-125{--un-scale-x:1.25;--un-scale-y:1.25;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.scale-150{--un-scale-x:1.5;--un-scale-y:1.5;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.\[\&_\.card-cover_img\]\:hover\:scale-102:hover .card-cover img{--un-scale-x:1.02;--un-scale-y:1.02;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.hover\:scale-110:hover{--un-scale-x:1.1;--un-scale-y:1.1;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[hover~=scale-100]:hover{--un-scale-x:1;--un-scale-y:1;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.preserve-3d{transform-style:preserve-3d}.transform,[transform=""]{transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-pulse,[animate-pulse=""]{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-spin{animation:1s linear infinite spin}.disabled\:cursor-default:disabled{cursor:default}.cursor-pointer,[cursor-pointer=""],[cursor~=pointer]{cursor:pointer}.cursor-not-allowed,.disabled\:cursor-not-allowed:disabled,[cursor~=disabled\:not-allowed]:disabled,[disabled\:cursor-not-allowed=""]:disabled{cursor:not-allowed}.cursor-ew-resize,[cursor-ew-resize=""]{cursor:ew-resize}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}.resize-none,[resize-none=""]{resize:none}.appearance-none,[appearance-none=""]{appearance:none}.place-self-end{place-self:end}.items-start,[items-start=""]{align-items:flex-start}.items-end,[items-end=""]{align-items:flex-end}.items-center,[flex~=items-center],[items-center=""]{align-items:center}.self-end,[self-end=""]{align-self:flex-end}.justify-start{justify-content:flex-start}.justify-end,[justify-end=""]{justify-content:flex-end}.justify-center,[flex~=justify-center],[justify-center=""]{justify-content:center}.justify-between,[justify-between=""]{justify-content:space-between}.gap-0\.5,[gap-0\.5=""]{gap:.125rem}.gap-1,[gap-1=""]{gap:.25rem}.gap-1\.5,[gap-1\.5=""]{gap:.375rem}.gap-2,[flex~=gap-2],[gap-2=""]{gap:.5rem}.gap-3,[flex~=gap-3],[gap-3=""]{gap:.75rem}.gap-4,[flex~=gap-4],[gap-4=""],[grid~=gap-4]{gap:1rem}.gap-5,[gap-5=""]{gap:1.25rem}.gap-6,[flex~=gap-6]{gap:1.5rem}.gap-8{gap:2rem}.gap-x-2,[flex~=gap-x-2]{column-gap:.5rem}.gap-y-0,[flex~=gap-y-0]{row-gap:0}.space-x-1>:not([hidden])~:not([hidden]){--un-space-x-reverse:0;margin-left:calc(.25rem*calc(1 - var(--un-space-x-reverse)));margin-right:calc(.25rem*var(--un-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(.5rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(.5rem*var(--un-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(.75rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(.75rem*var(--un-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(1rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(1rem*var(--un-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(1.5rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(1.5rem*var(--un-space-y-reverse))}[divide~=y]>:not([hidden])~:not([hidden]){--un-divide-y-reverse:0;border-top-width:calc(1px*calc(1 - var(--un-divide-y-reverse)));border-bottom-width:calc(1px*var(--un-divide-y-reverse))}[divide~=gray\/25]>:not([hidden])~:not([hidden]){border-color:#9ca3af40}[border~=dashed],[divide~=dashed]>:not([hidden])~:not([hidden]){border-style:dashed}.of-clip,[of-clip=""]{overflow:clip}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""],[overflow~=hidden]{overflow:hidden}.overflow-auto,[overflow-auto=""]{overflow:auto}.overflow-scroll,[overflow-scroll=""]{overflow:scroll}.of-x-scroll,[of-x-scroll=""]{overflow-x:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto,[overflow-y-auto=""]{overflow-y:auto}.overflow-y-scroll,[overflow-y-scroll=""]{overflow-y:scroll}.scroll-smooth,[scroll-smooth=""]{scroll-behavior:smooth}.truncate,[truncate=""]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-ellipsis,[text-ellipsis=""]{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line,[whitespace-pre-line=""]{white-space:pre-line}.whitespace-pre-wrap,[whitespace-pre-wrap=""]{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.b,.border,[b=""],[border=""],[border~=\~],[border~="1"]{border-width:1px}.border-2,[border-2=""],[border~="2"],[border~="2px"]{border-width:2px}[border~="4"]{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.\[\&\:checked\+div\]\:border-primary-500:checked+div,.border-primary-500{--un-border-opacity:1;border-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.border-amber-200{--un-border-opacity:1;border-color:rgb(253 230 138/var(--un-border-opacity))}.border-neutral-100,[border~=neutral-100]{--un-border-opacity:1;border-color:rgb(245 245 245/var(--un-border-opacity))}.border-neutral-200,.dark [border~=dark\:neutral-200],[border-neutral-200=""],[border~=neutral-200]{--un-border-opacity:1;border-color:rgb(229 229 229/var(--un-border-opacity))}.border-neutral-200\/50,[border~=neutral-200\/50]{border-color:#e5e5e580}.border-neutral-300,[border-neutral-300=""],[border~="data-[state=unchecked]:neutral-300"][data-state=unchecked],[border~=neutral-300]{--un-border-opacity:1;border-color:rgb(212 212 212/var(--un-border-opacity))}.border-neutral-400{--un-border-opacity:1;border-color:rgb(163 163 163/var(--un-border-opacity))}.border-neutral-500{--un-border-opacity:1;border-color:rgb(115 115 115/var(--un-border-opacity))}.border-primary-100,[border~=primary-100]{--un-border-opacity:1;border-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))80%,oklch(100% 0 360/var(--un-border-opacity)))}.border-primary-200,[border~="data-[state=checked]:primary-200"][data-state=checked]{--un-border-opacity:1;border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.border-primary-200\/30{border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.3)}.border-primary-400,.dark .dark\:\[\&\:checked\+div\]\:border-primary-400:checked+div,.dark .dark\:border-primary-400{--un-border-opacity:1;border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.border-red-200{--un-border-opacity:1;border-color:rgb(254 202 202/var(--un-border-opacity))}.border-red-200\/30{border-color:#fecaca4d}.border-white,[border~=white]{--un-border-opacity:1;border-color:rgb(255 255 255/var(--un-border-opacity))}.dark .dark\:border-amber-800{--un-border-opacity:1;border-color:rgb(146 64 14/var(--un-border-opacity))}.dark .dark\:border-neutral-600,.dark [border~=dark\:neutral-600],.dark [dark\:border-neutral-600=""]{--un-border-opacity:1;border-color:rgb(82 82 82/var(--un-border-opacity))}.dark .dark\:border-neutral-700,.dark [border~=dark\:neutral-700],.dark [dark\:border-neutral-700=""]{--un-border-opacity:1;border-color:rgb(64 64 64/var(--un-border-opacity))}.dark .dark\:border-neutral-700\/50{border-color:#40404080}.dark .dark\:border-neutral-800,.dark [border~=dark\:neutral-800],.dark [dark\:border-neutral-800=""],[border~=neutral-800]{--un-border-opacity:1;border-color:rgb(38 38 38/var(--un-border-opacity))}.dark .dark\:border-neutral-800\/25,.dark [border~="dark:neutral-800/25"]{border-color:#26262640}.dark .dark\:border-neutral-900,.dark [border~=dark\:neutral-900]{--un-border-opacity:1;border-color:rgb(23 23 23/var(--un-border-opacity))}.dark .dark\:border-primary-600{--un-border-opacity:1;border-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark .dark\:border-primary-800,.dark [border~=dark\:primary-800]{--un-border-opacity:1;border-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark .dark\:border-primary-900,.dark [border~=dark\:primary-900]{--un-border-opacity:1;border-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark .dark\:border-primary-900\/40{border-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.4)}.dark .dark\:border-red-800{--un-border-opacity:1;border-color:rgb(153 27 27/var(--un-border-opacity))}.dark .dark\:border-red-900\/30{border-color:#7f1d1d4d}.dark [border~="dark:cyan-500/50"]{border-color:#06b6d480}.dark [border~="dark:neutral-700/30"]{border-color:#4040404d}.dark [border~="dark:primary-400/20"]{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)}.dark [border~="dark:primary-500/50"]{border-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.5)}.dark [border~="dark:primary-950/10"]{border-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.1)}.dark [border~="dark:violet-500/50"]{border-color:#8b5cf680}[border~=cyan-200\/50]{border-color:#a5f3fc80}[border~=gray\/25]{border-color:#9ca3af40}[border~=primary-200\/20]{border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.2)}[border~=primary-200\/50]{border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.5)}[border~=primary-300]{--un-border-opacity:1;border-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}[border~=primary-50]{--un-border-opacity:1;border-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))30%,oklch(100% 0 360/var(--un-border-opacity)))}[border~=violet-200\/50]{border-color:#ddd6fe80}.peer:checked~.peer-checked\:after\:border-white:after{--un-border-opacity:1;border-color:rgb(255 255 255/var(--un-border-opacity))}[border~=focus-within\:neutral-800]:focus-within{--un-border-opacity:1;border-color:rgb(38 38 38/var(--un-border-opacity))}.dark .dark\:hover\:border-primary-400\/30:hover{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.3)}.dark .dark\:hover\:border-primary-700:hover{--un-border-opacity:1;border-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark [border~="dark:hover:primary-400/30"]:hover{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.3)}.hover\:border-primary-300:hover{--un-border-opacity:1;border-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.hover\:border-primary-500\/30:hover,[border~="hover:primary-500/30"]:hover{border-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.3)}.dark [border~="dark:focus:neutral-600"]:focus{--un-border-opacity:1;border-color:rgb(82 82 82/var(--un-border-opacity))}.dark [border~="dark:focus:neutral-700"]:focus{--un-border-opacity:1;border-color:rgb(64 64 64/var(--un-border-opacity))}.dark [border~="dark:focus:primary-400/50"]:focus{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.5)}[border~=focus\:neutral-200]:focus{--un-border-opacity:1;border-color:rgb(229 229 229/var(--un-border-opacity))}[border~=focus\:neutral-400]:focus{--un-border-opacity:1;border-color:rgb(163 163 163/var(--un-border-opacity))}[border~=focus\:primary-100]:focus{--un-border-opacity:1;border-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))80%,oklch(100% 0 360/var(--un-border-opacity)))}[border~=focus\:primary-300]:focus{--un-border-opacity:1;border-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.rounded,[rounded=""]{border-radius:.25rem}.rounded-2xl,[rounded-2xl=""]{border-radius:1rem}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-lg,[border~=rounded-lg],[rounded-lg=""],[rounded~=lg]{border-radius:.5rem}.rounded-md,[rounded-md=""]{border-radius:.375rem}.rounded-sm,[rounded-sm=""]{border-radius:.125rem}.rounded-xl,[rounded-xl=""]{border-radius:.75rem}[rounded~="[1lh]"]{border-radius:1lh}.before\:rounded-full:before,.after\:rounded-full:after{border-radius:9999px}.rounded-l-xl,[rounded-l-xl=""]{border-top-left-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-r-xl,[rounded-r-xl=""]{border-top-right-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-t-2xl{border-top-left-radius:1rem;border-top-right-radius:1rem}.rounded-t-xl,[rounded-t-xl=""]{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border-none,[border-none=""]{border-style:none}.border-solid,[border~=solid]{border-style:solid}.bg-amber-50{--un-bg-opacity:1;background-color:rgb(255 251 235/var(--un-bg-opacity))}.bg-amber-50\/80{background-color:#fffbebcc}.bg-black\/50,[bg~=black\/50]{background-color:#00000080}.bg-blue-50,[bg-blue-50=""]{--un-bg-opacity:1;background-color:rgb(239 246 255/var(--un-bg-opacity))}.bg-green-50,[bg-green-50=""]{--un-bg-opacity:1;background-color:rgb(240 253 244/var(--un-bg-opacity))}.bg-green-500,[bg-green-500=""],[bg~=green-500]{--un-bg-opacity:1;background-color:rgb(34 197 94/var(--un-bg-opacity))}.bg-lime-400\/10{background-color:#a3e6351a}.bg-neutral-100,[bg-neutral-100=""],[bg~=neutral-100]{--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity))}.bg-neutral-200,.dark .dark\:bg-neutral-200,[bg-neutral-200=""],[bg~=neutral-200]{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}.bg-neutral-200\/45{background-color:#e5e5e573}.bg-neutral-300,.dark [bg~=dark\:neutral-300],[bg-neutral-300=""],[bg~="data-[state=unchecked]:neutral-300"][data-state=unchecked]{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.bg-neutral-400,.dark [bg~=dark\:neutral-400],[bg~=neutral-400]{--un-bg-opacity:1;background-color:rgb(163 163 163/var(--un-bg-opacity))}.bg-neutral-50,[bg-neutral-50=""],[bg~=neutral-50]{--un-bg-opacity:1;background-color:rgb(250 250 250/var(--un-bg-opacity))}.bg-neutral-600,.dark .dark\:bg-neutral-600{--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity))}.bg-neutral-800,.dark .dark\:bg-neutral-800,.dark [bg~="dark:data-[state=unchecked]:neutral-800"][data-state=unchecked],.dark [bg~=dark\:neutral-800],.dark [dark\:bg-neutral-800=""]{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}.bg-orange-400\/10{background-color:#fb923c1a}.bg-primary{--un-bg-opacity:1;background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-100,[bg-primary-100=""],[bg~=primary-100]{--un-bg-opacity:1;background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))80%,oklch(100% 0 360/var(--un-bg-opacity)))}.bg-primary-100\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.1)80%,#ffffff1a)}@supports (color:lab(0% 0 0)){.bg-primary-100\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.1)80%,lab(100% 0 0/.1))}}.bg-primary-100\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/1)80%,#fff)}@supports (color:lab(0% 0 0)){.bg-primary-100\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/1)80%,lab(100% 0 0))}}.bg-primary-100\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.2)80%,#fff3)}@supports (color:lab(0% 0 0)){.bg-primary-100\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.2)80%,lab(100% 0 0/.2))}}.bg-primary-100\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.3)80%,#ffffff4d)}@supports (color:lab(0% 0 0)){.bg-primary-100\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.3)80%,lab(100% 0 0/.3))}}.bg-primary-100\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.4)80%,#fff6)}@supports (color:lab(0% 0 0)){.bg-primary-100\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.4)80%,lab(100% 0 0/.4))}}.bg-primary-100\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.05)80%,#ffffff0d)}@supports (color:lab(0% 0 0)){.bg-primary-100\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.05)80%,lab(100% 0 0/.05))}}.bg-primary-100\/50{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.5)80%,#ffffff80)}@supports (color:lab(0% 0 0)){.bg-primary-100\/50{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.5)80%,lab(100% 0 0/.5))}}.bg-primary-100\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.6)80%,#fff9)}@supports (color:lab(0% 0 0)){.bg-primary-100\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.6)80%,lab(100% 0 0/.6))}}.bg-primary-100\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.7)80%,#ffffffb3)}@supports (color:lab(0% 0 0)){.bg-primary-100\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.7)80%,lab(100% 0 0/.7))}}.bg-primary-100\/80{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.8)80%,#fffc)}@supports (color:lab(0% 0 0)){.bg-primary-100\/80{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.8)80%,lab(100% 0 0/.8))}}.bg-primary-100\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.9)80%,#ffffffe6)}@supports (color:lab(0% 0 0)){.bg-primary-100\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.9)80%,lab(100% 0 0/.9))}}.bg-primary-200,[bg-primary-200=""]{--un-bg-opacity:1;background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-200\/10{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-200\/100{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-200\/20,[bg~=primary-200\/20]{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-200\/30{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-200\/40{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-200\/5{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-200\/50{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-200\/60{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-200\/70{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-200\/80{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-200\/90{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-300,[bg-primary-300=""]{--un-bg-opacity:1;background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-300\/10{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-300\/100{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-300\/20{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-300\/30{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-300\/40{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-300\/5{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-300\/50,.dark .dark\:bg-primary-300\/50{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-300\/60{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-300\/70{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-300\/80{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-300\/90{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-400,.dark .dark\:bg-primary-400,.dark [bg~=dark\:primary-400],[bg-primary-400=""],[bg~="data-[state=checked]:primary-400"][data-state=checked],[bg~=primary-400]{--un-bg-opacity:1;background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-400\/10{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-400\/100{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-400\/20,.dark [bg~="dark:primary-400/20"]{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-400\/30{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-400\/40{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-400\/5{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-400\/50{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-400\/60{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-400\/70{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-400\/80,.dark [bg~="data-[state=checked]:dark:primary-400/80"][data-state=checked]{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-400\/90{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-50,[bg-primary-50=""]{--un-bg-opacity:1;background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))30%,oklch(100% 0 360/var(--un-bg-opacity)))}.bg-primary-50\/10,.dark .dark\:bg-primary-50\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.1)30%,#ffffff1a)}@supports (color:lab(0% 0 0)){.bg-primary-50\/10,.dark .dark\:bg-primary-50\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.1)30%,lab(100% 0 0/.1))}}.bg-primary-50\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/1)30%,#fff)}@supports (color:lab(0% 0 0)){.bg-primary-50\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/1)30%,lab(100% 0 0))}}.bg-primary-50\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.2)30%,#fff3)}@supports (color:lab(0% 0 0)){.bg-primary-50\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.2)30%,lab(100% 0 0/.2))}}.bg-primary-50\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.3)30%,#ffffff4d)}@supports (color:lab(0% 0 0)){.bg-primary-50\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.3)30%,lab(100% 0 0/.3))}}.bg-primary-50\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.4)30%,#fff6)}@supports (color:lab(0% 0 0)){.bg-primary-50\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.4)30%,lab(100% 0 0/.4))}}.bg-primary-50\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.05)30%,#ffffff0d)}@supports (color:lab(0% 0 0)){.bg-primary-50\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.05)30%,lab(100% 0 0/.05))}}.bg-primary-50\/50,[bg~=primary-50\/50]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.5)30%,#ffffff80)}@supports (color:lab(0% 0 0)){.bg-primary-50\/50,[bg~=primary-50\/50]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.5)30%,lab(100% 0 0/.5))}}.bg-primary-50\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.6)30%,#fff9)}@supports (color:lab(0% 0 0)){.bg-primary-50\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.6)30%,lab(100% 0 0/.6))}}.bg-primary-50\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.7)30%,#ffffffb3)}@supports (color:lab(0% 0 0)){.bg-primary-50\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.7)30%,lab(100% 0 0/.7))}}.bg-primary-50\/80,[bg~=primary-50\/80]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.8)30%,#fffc)}@supports (color:lab(0% 0 0)){.bg-primary-50\/80,[bg~=primary-50\/80]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.8)30%,lab(100% 0 0/.8))}}.bg-primary-50\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.9)30%,#ffffffe6)}@supports (color:lab(0% 0 0)){.bg-primary-50\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.9)30%,lab(100% 0 0/.9))}}.bg-primary-500,.dark [bg~=dark\:primary-500],[bg-primary-500=""],[bg~=primary-500],.peer:checked~.peer-checked\:bg-primary-500{--un-bg-opacity:1;background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-500\/10,[bg~=primary-500\/10]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-500\/100{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-500\/20,[bg~=primary-500\/20]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-500\/30,[bg~=primary-500\/30]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-500\/40,[bg~=primary-500\/40]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-500\/5,[bg~=primary-500\/5]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-500\/50,[bg~=primary-500\/50]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-500\/60,[bg~=primary-500\/60]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-500\/70,[bg~=primary-500\/70]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-500\/80,[bg~=primary-500\/80]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-500\/90,[bg~=primary-500\/90]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-600,.dark .dark\:bg-primary-600,[bg-primary-600=""]{--un-bg-opacity:1;background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-600\/10{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-600\/100{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-600\/20{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-600\/30{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-600\/40{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-600\/5{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-600\/50{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-600\/60{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-600\/70{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-600\/80{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-600\/90{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-700,.dark .dark\:bg-primary-700,.dark [dark\:bg-primary-700=""],[bg-primary-700=""]{--un-bg-opacity:1;background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-700\/10{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-700\/100{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-700\/20{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-700\/30{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-700\/40{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-700\/5{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-700\/50{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-700\/60{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-700\/70{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-700\/80{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-700\/90{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-800,.dark [bg~=dark\:primary-800],[bg-primary-800=""]{--un-bg-opacity:1;background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-800\/10{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-800\/100{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-800\/20{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-800\/30{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-800\/40{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-800\/5{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-800\/50{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-800\/60{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-800\/70{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-800\/80{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-800\/90{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-900,.dark .dark\:bg-primary-900,[bg-primary-900=""]{--un-bg-opacity:1;background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-900\/10,.dark .dark\:bg-primary-900\/10{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-900\/100{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-900\/20,.dark .dark\:bg-primary-900\/20{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-900\/30,.dark .dark\:bg-primary-900\/30{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-900\/40,.dark .dark\:bg-primary-900\/40,.dark [bg~="dark:primary-900/40"]{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-900\/5,.dark .dark\:bg-primary-900\/5{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-900\/50{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-900\/60{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-900\/70{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-900\/80{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-900\/90{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-950,.dark .dark\:bg-primary-950,[bg-primary-950=""]{--un-bg-opacity:1;background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-950\/10{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-950\/100{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-950\/20{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-950\/30{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-950\/40{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-950\/5{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-950\/50{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-950\/60{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-950\/70,.dark [bg~="dark:primary-950/70"]{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-950\/80,.dark [bg~="dark:primary-950/80"]{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-950\/90{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary\/10{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary\/100{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/1)}.bg-primary\/20{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary\/30{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary\/40{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary\/5{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary\/50{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary\/60{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary\/70{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary\/80{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary\/90{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.9)}.bg-red-100{--un-bg-opacity:1;background-color:rgb(254 226 226/var(--un-bg-opacity))}.bg-red-50,[bg-red-50=""]{--un-bg-opacity:1;background-color:rgb(254 242 242/var(--un-bg-opacity))}.bg-red-500{--un-bg-opacity:1;background-color:rgb(239 68 68/var(--un-bg-opacity))}.bg-red900,.dark [dark\:bg-red-900=""]{--un-bg-opacity:1;background-color:rgb(127 29 29/var(--un-bg-opacity))}.bg-transparent,.dark [bg~=dark\:transparent],[bg-transparent=""],[bg~=transparent]{background-color:#0000}.bg-violet-400\/10{background-color:#a78bfa1a}.bg-white,[bg-white=""],[bg~=white]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.bg-white\/60,[bg~=white\/60]{background-color:#fff9}.bg-white\/80{background-color:#fffc}.bg-yellow-500{--un-bg-opacity:1;background-color:rgb(234 179 8/var(--un-bg-opacity))}.dark .dark\:bg-amber-900\/20{background-color:#78350f33}.dark .dark\:bg-amber-900\/30{background-color:#78350f4d}.dark .dark\:bg-black\/30,.dark [bg~="dark:black/30"]{background-color:#0000004d}.dark .dark\:bg-black\/40{background-color:#0006}.dark .dark\:bg-blue-900\/30{background-color:#1e3a8a4d}.dark .dark\:bg-green-900\/30{background-color:#14532d4d}.dark .dark\:bg-lime-50\/10{background-color:#f7fee71a}.dark .dark\:bg-lime-900\/10{background-color:#3653141a}.dark .dark\:bg-neutral-600\/40{background-color:#52525266}.dark .dark\:bg-neutral-700,.dark [bg~=dark\:neutral-700],.dark [dark\:bg-neutral-700=""],[bg~=neutral-700]{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}.dark .dark\:bg-neutral-700\/50{background-color:#40404080}.dark .dark\:bg-neutral-800\/50,.dark [bg~="dark:neutral-800/50"]{background-color:#26262680}.dark .dark\:bg-neutral-900,.dark [bg~=dark\:neutral-900],.dark [dark\:bg-neutral-900=""]{--un-bg-opacity:1;background-color:rgb(23 23 23/var(--un-bg-opacity))}.dark .dark\:bg-neutral-900\/20{background-color:#17171733}.dark .dark\:bg-neutral-900\/95{background-color:#171717f2}.dark .dark\:bg-orange-50\/10{background-color:#fff7ed1a}.dark .dark\:bg-orange-900\/10{background-color:#7c2d121a}.dark .dark\:bg-primary-800\/25{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.25)}.dark .dark\:bg-red-900\/20{background-color:#7f1d1d33}.dark .dark\:bg-red-900\/30{background-color:#7f1d1d4d}.dark .dark\:bg-red-900\/40{background-color:#7f1d1d66}.dark .dark\:bg-violet-50\/10{background-color:#f5f3ff1a}.dark .dark\:bg-violet-900\/10{background-color:#4c1d951a}.dark [bg~="dark:[#4e34b9]"]{--un-bg-opacity:1;background-color:rgb(78 52 185/var(--un-bg-opacity))}.dark [bg~="dark:[#676085]"]{--un-bg-opacity:1;background-color:rgb(103 96 133/var(--un-bg-opacity))}.dark [bg~="dark:[rgba(0,0,0,0.3)]"]{--un-bg-opacity:.3;background-color:rgba(0,0,0,var(--un-bg-opacity))}.dark [bg~="dark:#181818"]{--un-bg-opacity:1;background-color:rgb(24 24 24/var(--un-bg-opacity))}.dark [bg~="dark:black/20"],.group:hover [bg~="group-hover:black/20"]{background-color:#0003}.dark [bg~=dark\:blue-900],.dark [dark\:bg-blue-900=""]{--un-bg-opacity:1;background-color:rgb(30 58 138/var(--un-bg-opacity))}.dark [bg~=dark\:complementary-800]{--un-bg-opacity:1;background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))}.dark [bg~=dark\:cyan-900]{--un-bg-opacity:1;background-color:rgb(22 78 99/var(--un-bg-opacity))}.dark [bg~=dark\:green-600]{--un-bg-opacity:1;background-color:rgb(22 163 74/var(--un-bg-opacity))}.dark [bg~=dark\:neutral-500]{--un-bg-opacity:1;background-color:rgb(115 115 115/var(--un-bg-opacity))}.dark [bg~="dark:neutral-900/50"]{background-color:#17171780}.dark [bg~="dark:neutral-900/70"]{background-color:#171717b3}.dark [bg~=dark\:neutral-950]{--un-bg-opacity:1;background-color:rgb(10 10 10/var(--un-bg-opacity))}.dark [bg~="dark:orange-900/20"]{background-color:#7c2d1233}.dark [bg~=dark\:violet-800]{--un-bg-opacity:1;background-color:rgb(91 33 182/var(--un-bg-opacity))}.dark [dark\:bg-green-900=""]{--un-bg-opacity:1;background-color:rgb(20 83 45/var(--un-bg-opacity))}[bg~="[#cabeff]"]{--un-bg-opacity:1;background-color:rgb(202 190 255/var(--un-bg-opacity))}[bg~="[#e6e1fc]"]{--un-bg-opacity:1;background-color:rgb(230 225 252/var(--un-bg-opacity))}[bg~=\$bg-color]{background-color:var(--bg-color)}[bg~=black\/0]{background-color:#0000}[bg~=blue-100]{--un-bg-opacity:1;background-color:rgb(219 234 254/var(--un-bg-opacity))}[bg~=complementary-100]{--un-bg-opacity:1;background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))80%,oklch(100% 0 360/var(--un-bg-opacity)))}[bg~=emerald-500]{--un-bg-opacity:1;background-color:rgb(16 185 129/var(--un-bg-opacity))}[bg~=gray-200\/30]{background-color:#e5e7eb4d}[bg~=inherit]{background-color:inherit }[bg~=neutral-100\/50]{background-color:#f5f5f580}[bg~=neutral-100\/70]{background-color:#f5f5f5b3}[bg~=neutral-200\/20]{background-color:#e5e5e533}[bg~=neutral-200\/50]{background-color:#e5e5e580}[bg~=neutral-50\/50]{background-color:#fafafa80}[bg~=orange-50]{--un-bg-opacity:1;background-color:rgb(255 247 237/var(--un-bg-opacity))}[bg~=violet-500]{--un-bg-opacity:1;background-color:rgb(139 92 246/var(--un-bg-opacity))}[bg~=white\/70]{background-color:#ffffffb3}.dark [dark\:bg-neutral-700~=default\:]:default,.dark [dark\:bg-neutral-700~=checked\:]:checked{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}.dark .\[\&_div_span\]\:dark\:hover\:bg-cyan-300:hover div span{--un-bg-opacity:1;background-color:rgb(103 232 249/var(--un-bg-opacity))}.dark .\[\&_div_span\]\:dark\:hover\:bg-cyan-900:hover div span{--un-bg-opacity:1;background-color:rgb(22 78 99/var(--un-bg-opacity))}.dark .dark\:hover\:bg-black\/40:hover{background-color:#0006}.dark .dark\:hover\:bg-neutral-600:hover{--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity))}.dark .dark\:hover\:bg-neutral-600\/60:hover{background-color:#52525299}.dark .dark\:hover\:bg-neutral-800:hover{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}.dark .dark\:hover\:bg-primary-900\/60:hover{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.6)}.dark .dark\:hover\:bg-red-900\/60:hover{background-color:#7f1d1d99}.dark [bg~="dark:hover:complementary-700"]:hover{--un-bg-opacity:1;background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))}.dark [bg~="dark:hover:neutral-800"]:hover{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}.dark [dark\:hover\:bg-cyan-300=""]:hover{--un-bg-opacity:1;background-color:rgb(103 232 249/var(--un-bg-opacity))}.dark [hover~="dark:bg-black/40"]:hover{background-color:#0006}.dark [hover~=dark\:bg-neutral-700]:hover{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}.dark [hover~="dark:bg-neutral-700/50"]:hover{background-color:#40404080}.hover\:bg-neutral-100:hover{--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity))}.hover\:bg-neutral-200:hover{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}.hover\:bg-neutral-300:hover{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.hover\:bg-neutral-400:hover{--un-bg-opacity:1;background-color:rgb(163 163 163/var(--un-bg-opacity))}.hover\:bg-primary-200:hover{--un-bg-opacity:1;background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.hover\:bg-primary-600:hover{--un-bg-opacity:1;background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.hover\:bg-red-200:hover{--un-bg-opacity:1;background-color:rgb(254 202 202/var(--un-bg-opacity))}.hover\:bg-white\/80:hover{background-color:#fffc}[bg~=hover\:complementary-200]:hover{--un-bg-opacity:1;background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))}[bg~=hover\:emerald-600]:hover{--un-bg-opacity:1;background-color:rgb(5 150 105/var(--un-bg-opacity))}[bg~=hover\:neutral-200]:hover{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}[bg~=hover\:neutral-50]:hover{--un-bg-opacity:1;background-color:rgb(250 250 250/var(--un-bg-opacity))}[hover\:bg-neutral-300=""]:hover{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}[hover\:bg-primary-600=""]:hover{--un-bg-opacity:1;background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}[hover~=bg-neutral-200]:hover{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}[hover~=bg-white\/80]:hover{background-color:#fffc}.dark [bg~="dark:focus:neutral-900"]:focus{--un-bg-opacity:1;background-color:rgb(23 23 23/var(--un-bg-opacity))}[bg~=focus\:neutral-50]:focus{--un-bg-opacity:1;background-color:rgb(250 250 250/var(--un-bg-opacity))}.active\:bg-neutral-300:active{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.active\:bg-primary-300:active{--un-bg-opacity:1;background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.active\:bg-red-300:active{--un-bg-opacity:1;background-color:rgb(252 165 165/var(--un-bg-opacity))}.dark .dark\:active\:bg-neutral-600\/40:active{background-color:#52525266}.dark .dark\:active\:bg-primary-900\/40:active{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.4)}.dark .dark\:active\:bg-red-900\/40:active{background-color:#7f1d1d66}.dark [bg~="dark:active:neutral-700"]:active{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}[bg~=active\:gray-50]:active{--un-bg-opacity:1;background-color:rgb(249 250 251/var(--un-bg-opacity))}[bg~=active\:neutral-300]:active{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.dark [bg~="dark:disabled:neutral-800"]:disabled{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}[bg~=disabled\:neutral-100]:disabled{--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity))}.before\:bg-lime-400:before{--un-bg-opacity:1;background-color:rgb(163 230 53/var(--un-bg-opacity))}.before\:bg-orange-400:before{--un-bg-opacity:1;background-color:rgb(251 146 60/var(--un-bg-opacity))}.before\:bg-primary-400:before{--un-bg-opacity:1;background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.before\:bg-violet-400:before{--un-bg-opacity:1;background-color:rgb(167 139 250/var(--un-bg-opacity))}.dark .before\:dark\:bg-lime-900:before{--un-bg-opacity:1;background-color:rgb(54 83 20/var(--un-bg-opacity))}.dark .before\:dark\:bg-orange-900:before{--un-bg-opacity:1;background-color:rgb(124 45 18/var(--un-bg-opacity))}.dark .before\:dark\:bg-primary-900:before{--un-bg-opacity:1;background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.dark .before\:dark\:bg-violet-900:before{--un-bg-opacity:1;background-color:rgb(76 29 149/var(--un-bg-opacity))}.after\:bg-white:after{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.dark .dark\:from-neutral-800,.dark [dark\:from-neutral-800=""]{--un-gradient-from-position:0%;--un-gradient-from:rgb(38 38 38/var(--un-from-opacity,1))var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:#26262600 var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .dark\:from-primary-400\/0{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .dark\:from-primary-400\/20{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-neutral-50,[from-neutral-50=""]{--un-gradient-from-position:0%;--un-gradient-from:rgb(250 250 250/var(--un-from-opacity,1))var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:#fafafa00 var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-primary-500{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-from-opacity,1))var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-primary-500\/0{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-primary-500\/20,.before\:from-primary-500\/20:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .before\:dark\:from-primary-400\/20:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark [before~="dark:from-primary-400/0"]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark [hover~="before:dark:from-primary-400/20"]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}[before~=from-primary-500\/0]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}[hover~="before:from-primary-500/20"]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .dark\:via-primary-400\/10{--un-gradient-via-position:50%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}.via-primary-500\/10,.before\:via-primary-500\/10:before{--un-gradient-via-position:50%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}.dark .before\:dark\:via-primary-400\/10:before,.dark [hover~="before:dark:via-primary-400/10"]:hover:before{--un-gradient-via-position:50%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}[hover~="before:via-primary-500/10"]:hover:before{--un-gradient-via-position:50%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}.dark .dark\:to-neutral-900{--un-gradient-to-position:100%;--un-gradient-to:rgb(23 23 23/var(--un-to-opacity,1))var(--un-gradient-to-position)}.dark .dark\:to-primary-400\/0{--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}.dark .dark\:to-transparent,.to-transparent{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}.to-neutral-100,[to-neutral-100=""]{--un-gradient-to-position:100%;--un-gradient-to:rgb(245 245 245/var(--un-to-opacity,1))var(--un-gradient-to-position)}.to-primary-400{--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-to-opacity,1))var(--un-gradient-to-position)}.to-primary-500\/0{--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}.before\:to-transparent:before,.dark .before\:dark\:to-transparent:before{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}.dark [before~="dark:to-primary-400/0"]:before{--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}.dark [hover~="before:dark:to-transparent"]:hover:before{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}[before~=to-primary-500\/0]:before{--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}[hover~=before\:to-transparent]:hover:before{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}.bg-gradient-to-b,[bg-gradient-to-b=""]{--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient))}.bg-gradient-to-r,.before\:bg-gradient-to-r:before,[before~=bg-gradient-to-r]:before,[hover~=before\:bg-gradient-to-r]:hover:before{--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.dark .dark\:fill-neutral-800,.dark [dark\:fill-neutral-800=""]{--un-fill-opacity:1;fill:rgb(38 38 38/var(--un-fill-opacity))}.fill-white,[fill-white=""]{--un-fill-opacity:1;fill:rgb(255 255 255/var(--un-fill-opacity))}[stroke-width~="0.5"]{stroke-width:.5px}[stroke-width~="1.5"]{stroke-width:1.5px}[stroke-width~="2"]{stroke-width:2px}[stroke~="163"]{stroke-width:163px}[stroke~="175"]{stroke-width:175px}.object-cover,[object-cover=""]{object-fit:cover}.object-contain,[object-contain=""]{object-fit:contain}.p-1,[p-1=""]{padding:.25rem}.p-1\.5,[p-1\.5=""]{padding:.375rem}.p-2,.p2,[p-2=""],[p~="2"],[p2=""]{padding:.5rem}.p-2\.5,[p~="2.5"]{padding:.625rem}.p-3,[p-3=""]{padding:.75rem}.p-4,[p-4=""]{padding:1rem}.p-5,[p-5=""]{padding:1.25rem}.p-6{padding:1.5rem}.p-8,[p-8=""]{padding:2rem}.px,.px-4,[px-4=""],[px=""]{padding-left:1rem;padding-right:1rem}.px-0{padding-left:0;padding-right:0}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2,.px2,[px-2=""],[px~="2"],[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-3,[px-3=""]{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py,.py-4,[py~="4"]{padding-top:1rem;padding-bottom:1rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5,[py-0\.5=""]{padding-top:.125rem;padding-bottom:.125rem}.py-1,.py1,[py-1=""],[py~="1"],[py1=""]{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5,[py-1\.5=""]{padding-top:.375rem;padding-bottom:.375rem}.py-2,[py-2=""]{padding-top:.5rem;padding-bottom:.5rem}.py-3,[py-3=""]{padding-top:.75rem;padding-bottom:.75rem}.pb-0{padding-bottom:0}.pb-2,[pb-2=""]{padding-bottom:.5rem}.pb-4,[pb-4=""]{padding-bottom:1rem}.pb-6,[pb-6=""]{padding-bottom:1.5rem}.pl,.pl-4,[pl-4=""]{padding-left:1rem}.pl-10{padding-left:2.5rem}.pl-3,[pl-3=""]{padding-left:.75rem}.pl-5,[pl-5=""]{padding-left:1.25rem}.pr-\[20px\]{padding-right:20px}.pr-1,[pr-1=""]{padding-right:.25rem}.pr-3,[pr-3=""]{padding-right:.75rem}.pr-4,[pr-4=""]{padding-right:1rem}.pt,.pt-4,[pt-4=""]{padding-top:1rem}.pt-0{padding-top:0}.pt-10,[pt-10=""]{padding-top:2.5rem}.pt-2,[pt-2=""]{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-center,[text-center=""],[text~=center]{text-align:center}.text-left,[text-left=""]{text-align:left}.text-right,[text-right=""]{text-align:right}.text-wrap,[text-wrap=""]{text-wrap:wrap}.text-nowrap,[text-nowrap=""]{text-wrap:nowrap}.text-2xl,[text-2xl=""],[text~="2xl"]{font-size:1.5rem;line-height:2rem}.text-3xl,[text-3xl=""]{font-size:1.875rem;line-height:2.25rem}.text-5xl,[text-5xl=""]{font-size:3rem;line-height:1}.text-6xl,[text-6xl=""]{font-size:3.75rem;line-height:1}.text-base,[text-base=""],[text~=base]{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""],[text~=lg]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl,[text-xl=""]{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""],[text~=xs]{font-size:.75rem;line-height:1rem}[text~="4xl"]{font-size:2.25rem;line-height:2.5rem}[text~="60"]{font-size:15rem}[default-text~="2"]:default{font-size:.5rem}.dark .dark\:text-amber-300{--un-text-opacity:1;color:rgb(252 211 77/var(--un-text-opacity))}.dark .dark\:text-amber-400{--un-text-opacity:1;color:rgb(251 191 36/var(--un-text-opacity))}.dark .dark\:text-blue-300{--un-text-opacity:1;color:rgb(147 197 253/var(--un-text-opacity))}.dark .dark\:text-green-300{--un-text-opacity:1;color:rgb(134 239 172/var(--un-text-opacity))}.dark .dark\:text-green-400{--un-text-opacity:1;color:rgb(74 222 128/var(--un-text-opacity))}.dark .dark\:text-lime-400{--un-text-opacity:1;color:rgb(163 230 53/var(--un-text-opacity))}.dark .dark\:text-neutral-100,[text~=neutral-100]{--un-text-opacity:1;color:rgb(245 245 245/var(--un-text-opacity))}.dark .dark\:text-neutral-100\/80{color:#f5f5f5cc}.dark .dark\:text-neutral-200,.dark [dark\:text-neutral-200=""],.dark [text~=dark\:neutral-200]{--un-text-opacity:1;color:rgb(229 229 229/var(--un-text-opacity))}.dark .dark\:text-neutral-300,.dark [dark\:text-neutral-300=""],.dark [text~=dark\:neutral-300],[text~=neutral-300]{--un-text-opacity:1;color:rgb(212 212 212/var(--un-text-opacity))}.dark .dark\:text-neutral-400,.dark [dark\:text-neutral-400=""],.dark [text~=dark\:neutral-400],.text-neutral-400,[text-neutral-400=""],[text~=neutral-400]{--un-text-opacity:1;color:rgb(163 163 163/var(--un-text-opacity))}.dark .dark\:text-neutral-500,.dark [text~=dark\:neutral-500],.text-neutral-500,[text-neutral-500=""],[text~=neutral-500]{--un-text-opacity:1;color:rgb(115 115 115/var(--un-text-opacity))}.dark .dark\:text-neutral-600,.dark [text~=dark\:neutral-600],.text-neutral-600,[text~=neutral-600]{--un-text-opacity:1;color:rgb(82 82 82/var(--un-text-opacity))}.dark .dark\:text-neutral-600\/20,.dark [text~="dark:neutral-600/20"]{color:#52525233}.dark .dark\:text-orange-400{--un-text-opacity:1;color:rgb(251 146 60/var(--un-text-opacity))}.dark .dark\:color-primary-100,.dark .dark\:text-primary-100,.dark [dark\:color-primary-100=""],.dark [text~=dark\:primary-100]{--un-text-opacity:1;color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))80%,oklch(100% 0 360/var(--un-text-opacity)))}.dark .dark\:text-primary-300,.dark [text~=dark\:primary-300],.text-primary-300,[text~=primary-300]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-primary-300\/80{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.8)}.color-primary-400,.dark .dark\:text-primary-400,.dark [text~=dark\:primary-400],.text-primary-400,[color-primary-400=""]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-primary-500,.text-primary-500,[text~=primary-500]{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-primary-600,.text-primary-600,[text~=primary-600]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-red-100{--un-text-opacity:1;color:rgb(254 226 226/var(--un-text-opacity))}.dark .dark\:text-red-300{--un-text-opacity:1;color:rgb(252 165 165/var(--un-text-opacity))}.dark .dark\:text-red-400{--un-text-opacity:1;color:rgb(248 113 113/var(--un-text-opacity))}.dark .dark\:text-violet-400{--un-text-opacity:1;color:rgb(167 139 250/var(--un-text-opacity))}.dark .dark\:text-white,.dark [dark\:text-white=""],.dark [text~=dark\:white],.text-white,[text-white=""],[text~=white]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}.dark .dark\:text-white\/50{color:#ffffff80}.dark [text~="dark:cyan-600/90"]{color:#0891b2e6}.dark [text~=dark\:gray-200]{--un-text-opacity:1;color:rgb(229 231 235/var(--un-text-opacity))}.dark [text~="dark:neutral-600/50"]{color:#52525280}.dark [text~=dark\:neutral-900]{--un-text-opacity:1;color:rgb(23 23 23/var(--un-text-opacity))}.dark [text~=dark\:orange-500],.text-orange-500{--un-text-opacity:1;color:rgb(249 115 22/var(--un-text-opacity))}.dark [text~="dark:primary-300/50"]{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.5)}.dark [text~="dark:primary-600/90"]{color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.9)}.dark [text~="dark:violet-600/90"]{color:#7c3aede6}.text-amber-500{--un-text-opacity:1;color:rgb(245 158 11/var(--un-text-opacity))}.text-amber-600{--un-text-opacity:1;color:rgb(217 119 6/var(--un-text-opacity))}.text-amber-700{--un-text-opacity:1;color:rgb(180 83 9/var(--un-text-opacity))}.text-black,[text-black=""]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.text-blue-500{--un-text-opacity:1;color:rgb(59 130 246/var(--un-text-opacity))}.text-blue-700,[text-blue-700=""]{--un-text-opacity:1;color:rgb(29 78 216/var(--un-text-opacity))}.text-green-600{--un-text-opacity:1;color:rgb(22 163 74/var(--un-text-opacity))}.text-green-700,[text-green-700=""]{--un-text-opacity:1;color:rgb(21 128 61/var(--un-text-opacity))}.text-lime-500{--un-text-opacity:1;color:rgb(132 204 22/var(--un-text-opacity))}.text-neutral-200\/50,[text~=neutral-200\/50]{color:#e5e5e580}.text-neutral-400\/50,[text~=neutral-400\/50]{color:#a3a3a380}.text-neutral-500\/50,[text~=neutral-500\/50]{color:#73737380}.text-neutral-700,[text-neutral-700=""],[text~=neutral-700]{--un-text-opacity:1;color:rgb(64 64 64/var(--un-text-opacity))}.text-neutral-800{--un-text-opacity:1;color:rgb(38 38 38/var(--un-text-opacity))}.text-neutral-900\/80{color:#171717cc}.text-neutral-950{--un-text-opacity:1;color:rgb(10 10 10/var(--un-text-opacity))}.text-primary-600\/80{color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.8)}.text-primary-700{--un-text-opacity:1;color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.text-primary-800{--un-text-opacity:1;color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.text-primary-950{--un-text-opacity:1;color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.text-red-500{--un-text-opacity:1;color:rgb(239 68 68/var(--un-text-opacity))}.text-red-600{--un-text-opacity:1;color:rgb(220 38 38/var(--un-text-opacity))}.text-red-700,[text-red-700=""]{--un-text-opacity:1;color:rgb(185 28 28/var(--un-text-opacity))}.text-red-950{--un-text-opacity:1;color:rgb(69 10 10/var(--un-text-opacity))}.text-transparent{color:#0000}.text-violet-500,[text-violet-500=""]{--un-text-opacity:1;color:rgb(139 92 246/var(--un-text-opacity))}[text~=complementary-400]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 180)/var(--un-text-opacity))}[text~=cyan-400]{--un-text-opacity:1;color:rgb(34 211 238/var(--un-text-opacity))}[text~=cyan-400\/90]{color:#22d3eee6}[text~=gray-700]{--un-text-opacity:1;color:rgb(55 65 81/var(--un-text-opacity))}[text~=orange-700]{--un-text-opacity:1;color:rgb(194 65 12/var(--un-text-opacity))}[text~=primary-400\/90]{color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.9)}[text~=violet-400\/90]{color:#a78bfae6}.dark .dark\:hover\:text-neutral-300:hover{--un-text-opacity:1;color:rgb(212 212 212/var(--un-text-opacity))}.dark [hover~="dark:text-primary-300/80"]:hover{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.8)}.dark [text~="dark:hover:primary-200"]:hover{--un-text-opacity:1;color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="dark:hover:primary-500"]:hover{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.hover\:text-neutral-700:hover{--un-text-opacity:1;color:rgb(64 64 64/var(--un-text-opacity))}[hover~=text-primary-600\/80]:hover{color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.8)}[text~=hover\:primary-500]:hover{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}[text~=hover\:primary-600]:hover{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="dark:disabled:neutral-600"]:disabled{--un-text-opacity:1;color:rgb(82 82 82/var(--un-text-opacity))}[text~=disabled\:neutral-400]:disabled{--un-text-opacity:1;color:rgb(163 163 163/var(--un-text-opacity))}.dark [text~="placeholder:dark:hover:primary-400"]:hover::placeholder{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="placeholder:dark:hover:primary-500"]:hover::placeholder{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="placeholder:dark:primary-300"]::placeholder{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="placeholder:dark:primary-300/50"]::placeholder{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.5)}[text~="placeholder:hover:primary-500"]:hover::placeholder{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}[text~=placeholder\:primary-400]::placeholder{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.font-bold,[font-bold=""]{font-weight:700}.font-medium,[font-medium=""]{font-weight:500}.font-normal,[font-normal=""]{font-weight:400}.font-semibold,[font-semibold=""]{font-weight:600}.leading-10,.lh-10{line-height:2.5rem}[leading~="[0.75]"]{line-height:.75}[leading~="[1]"]{line-height:1}.font-cuteen,[font-cuteen=""]{font-family:Sniglet}.font-jura,[font-jura=""]{font-family:Jura}.font-mono,[font-mono=""]{font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-quicksand,[font-quicksand=""]{font-family:Quicksand}.font-sans,[font-sans=""]{font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-italic,.italic,[font-italic=""]{font-style:italic}.decoration-underline,.underline,[decoration-underline=""],[underline=""]{text-decoration-line:underline}.decoration-dashed,[decoration-dashed=""]{text-decoration-style:dashed}.tab,[aria-checked~=tab][aria-checked=true],[tab=""],[checked~=tab]:checked{tab-size:4}.text-stroke-1,[text-stroke-1=""]{-webkit-text-stroke-width:1px}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color,#0003),0 0 1px var(--un-text-shadow-color,#0100051a);text-shadow:var(--un-text-shadow)}.\[\&\:checked\+div_\.radio-dot\]\:opacity-100:checked+div .radio-dot,.opacity-100,.group:hover .group-hover\:opacity-100,.group:hover [group-hover\:opacity-100=""]{opacity:1}.op-0,.opacity-0,[opacity-0=""]{opacity:0}.op50,.opacity-50,[op50=""]{opacity:.5}.opacity-25{opacity:.25}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-95,[opacity-95=""]{opacity:.95}[hover~=opacity-100]:hover{opacity:1}.disabled\:opacity-50:disabled,[disabled\:opacity-50=""]:disabled{opacity:.5}.before\:opacity-100:before{opacity:1}[before~=opacity-0]:before{opacity:0}[hover~=before\:opacity-100]:hover:before{opacity:1}.mix-blend-screen,[mix-blend-screen=""]{mix-blend-mode:screen}.dark .dark\:shadow-lg,.shadow-lg,[shadow-lg=""]{--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.dark [shadow~=dark\:none]{--un-shadow:0 0 var(--un-shadow-color,#0000);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow{--un-shadow:var(--un-shadow-inset)0 1px 3px 0 var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 1px 2px -1px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-green-500\/50{--un-shadow-color:#22c55e80 }.shadow-md,[shadow-md=""],[shadow~=md]{--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-sm,[shadow-sm=""],[shadow~=sm]{--un-shadow:var(--un-shadow-inset)0 1px 2px 0 var(--un-shadow-color,#0000000d);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset)0 20px 25px -5px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 8px 10px -6px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-yellow-500\/30{--un-shadow-color:#eab3084d }[shadow-green-500=""]{--un-shadow-opacity:1;--un-shadow-color:rgb(34 197 94/var(--un-shadow-opacity))}[shadow~=cyan-200\/20]{--un-shadow-color:#a5f3fc33 }[shadow~=cyan-200\/50]{--un-shadow-color:#a5f3fc80 }[shadow~=primary-200\/20]{--un-shadow-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.2)}[shadow~=primary-200\/50]{--un-shadow-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.5)}[shadow~=violet-200\/20]{--un-shadow-color:#ddd6fe33 }[shadow~=violet-200\/50]{--un-shadow-color:#ddd6fe80 }.focus-within\:shadow-neutral-800:focus-within{--un-shadow-opacity:1;--un-shadow-color:rgb(38 38 38/var(--un-shadow-opacity))}[shadow~="focus-within:[0_0_0_1px]"]:focus-within{--un-shadow:0 0 0 1px var(--un-shadow-color);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.dark [hover~=dark\:shadow-lg]:hover{--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}[hover~=shadow-md]:hover{--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline{outline-style:solid}.outline-none,[outline-none=""],[outline~=focus-within\:none]:focus-within{outline-offset:2px;outline:2px solid #0000}.focus\:ring-2:focus{--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset)0 0 0 var(--un-ring-offset-width)var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset)0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width))var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.focus\:ring-offset-2:focus{--un-ring-offset-width:2px}.dark .dark\:focus\:ring-neutral-600\/30:focus{--un-ring-color:#5252524d }.dark .dark\:focus\:ring-primary-600\/30:focus{--un-ring-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.3)}.dark .dark\:focus\:ring-red-600\/30:focus{--un-ring-color:#dc26264d }.dark .dark\:focus\:ring-red-600\/60:focus{--un-ring-color:#dc262699 }.focus\:ring-black\/10:focus{--un-ring-color:#0000001a }.focus\:ring-neutral-300\/60:focus{--un-ring-color:#d4d4d499 }.focus\:ring-primary-300\/60:focus{--un-ring-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.6)}.focus\:ring-red-300\/30:focus{--un-ring-color:#fca5a54d }.dark .dark\:focus\:ring-offset-neutral-900:focus{--un-ring-offset-opacity:1;--un-ring-offset-color:rgb(23 23 23/var(--un-ring-offset-opacity))}.focus\:ring-offset-white:focus{--un-ring-offset-opacity:1;--un-ring-offset-color:rgb(255 255 255/var(--un-ring-offset-opacity))}.backdrop-blur-md,[backdrop-blur-md=""]{--un-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.backdrop-blur-sm,[backdrop-blur-sm=""]{--un-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.backdrop-blur-xl,[backdrop-blur-xl=""]{--un-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.blur{--un-blur:blur(8px);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.drop-shadow{--un-drop-shadow:drop-shadow(0 1px 2px var(--un-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--un-drop-shadow-color,#0000000f));filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.drop-shadow-sm,[drop-shadow-sm=""]{--un-drop-shadow:drop-shadow(0 1px 1px var(--un-drop-shadow-color,#0000000d));filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}[drop-shadow~=none],.dark [drop-shadow~="dark:hover:none"]:hover{--un-drop-shadow:drop-shadow(0 0 var(--un-drop-shadow-color,#0000));filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}[drop-shadow~="hover:[0px_4px_4px_rgba(220,220,220,0.4)]"]:hover{--un-drop-shadow:drop-shadow(0px 4px 4px #dcdcdc66);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}[drop-shadow~="active:[0px_0px_0px_rgba(220,220,220,0.25)]"]:active{--un-drop-shadow:drop-shadow(0px 0px 0px #dcdcdc40);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.\[\&_\.provider-icon\]\:grayscale-100 .provider-icon,.grayscale-100,[grayscale-100=""]{--un-grayscale:grayscale(1);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.\[\&_\.provider-icon\]\:hover\:grayscale-0:hover .provider-icon{--un-grayscale:grayscale(0);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.filter{filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\,margin\]{transition-property:width,margin;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-100,[transition~="100"]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.1s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all,[transition-all=""],[transition~=all]{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors,[transition-colors=""],[transition~=colors]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity,[transition-opacity=""]{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform,[transition~=transform]{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition~=border]{transition-property:border;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition~=width]{transition-property:width;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition~=placeholder\:all]::placeholder,[before~=transition-all]:before,.after\:transition-all:after,[after~=transition-all]:after{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,[duration-150=""]{transition-duration:.15s}.duration-200,[duration-200=""],[transition~=duration-200]{transition-duration:.2s}.duration-250,[duration-250=""],[duration~="250"],[transition~=duration-250]{transition-duration:.25s}.duration-300,[transition~=duration-300]{transition-duration:.3s}.duration-400,[transition~=duration-400]{transition-duration:.4s}.duration-500,[duration-500=""],[duration~="500"],[transition~=duration-500]{transition-duration:.5s}.duration-75{transition-duration:75ms}[duration~="10"]{transition-duration:10ms}[duration~="1000"]{transition-duration:1s}.placeholder\:duration-250::placeholder,[placeholder\:duration-250=""]::placeholder,[transition~=placeholder\:duration-250]::placeholder{transition-duration:.25s}[before~=duration-400]:before,[after~=duration-400]:after{transition-duration:.4s}[delay~="10"]{transition-delay:10ms}[delay~="100"]{transition-delay:.1s}[delay~="11"]{transition-delay:11ms}[delay~="19"]{transition-delay:19ms}[delay~="2"]{transition-delay:2ms}[delay~="20"]{transition-delay:20ms}[delay~="200"]{transition-delay:.2s}[delay~="3"]{transition-delay:3ms}[delay~="4"]{transition-delay:4ms}[delay~="5"]{transition-delay:5ms}[delay~="50"]{transition-delay:50ms}[delay~="6"]{transition-delay:6ms}[delay~="7"]{transition-delay:7ms}[delay~="8"]{transition-delay:8ms}[delay~="9"]{transition-delay:9ms}.ease,.ease-in-out,[ease-in-out=""],[transition~=ease-in-out]{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-linear,[ease-linear=""]{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.placeholder\:ease-in-out::placeholder,[transition~=placeholder\:ease-in-out]::placeholder,[before~=ease-in-out]:before,[after~=ease-in-out]:after{transition-timing-function:cubic-bezier(.4,0,.2,1)}.will-change-background-color,[will-change-background-color=""]{will-change:background-color}.will-change-color,[will-change-color=""]{will-change:color}.will-change-transform,[will-change-transform=""]{will-change:transform}.will-change-width,[will-change-width=""]{will-change:width}.before\:content-\[\'\'\]:before,.after\:content-\[\'\'\]:after,.content-empty,[before~=content-empty]:before,[after~=content-empty]:after{content:""}.hidden,[hidden=""]{display:none}.bg-dotted-\[neutral-200\/60\]{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.6}.bg-dotted-\[neutral-200\/80\]{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.8}.dark .dark\:bg-dotted-\[neutral-700\/25\]{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.25}.dark .dark\:bg-dotted-\[neutral-700\/40\]{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.4}.dark .dark\:hover\:bg-dotted-\[primary-200\/20\]:hover{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.hover\:bg-dotted-\[primary-300\/50\]:hover,.after\:bg-dotted-\[primary-300\/50\]:after{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.dark .dark\:after\:bg-dotted-\[primary-200\/20\]:after,.dark [hover~="dark:after:bg-dotted-[primary-200/20]"]:hover:after{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}[after~="bg-dotted-[neutral-200/80]"]:after{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.8}[hover~="after:bg-dotted-[primary-300/50]"]:hover:after{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.transition-colors-none,.placeholder\:transition-colors-none::placeholder{transition-property:color,background-color,border-color,text-color;transition-duration:0s}@media (max-width:1023.9px){[min-w~="i.map(i=>d[i]); -var babelHelpers=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({}),__create=Object.create,__defProp$1=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp$1=Object.prototype.hasOwnProperty,__esmMin=(fn$5,res)=>()=>(fn$5&&(res=fn$5(fn$5=0)),res),__commonJSMin=(cb$1,mod)=>()=>(mod||cb$1((mod={exports:{}}).exports,mod),mod.exports),__export=(target$1,all$3)=>{for(var name$2 in all$3)__defProp$1(target$1,name$2,{get:all$3[name$2],enumerable:!0})},__copyProps=(to$1,from,except,desc)=>{if(from&&typeof from==`object`||typeof from==`function`)for(var keys$3=__getOwnPropNames(from),i$1=0,n$2=keys$3.length,key$1;i$1from[k$4]).bind(null,key$1),enumerable:!(desc=__getOwnPropDesc(from,key$1))||desc.enumerable});return to$1},__toESM=(mod,isNodeMode,target$1)=>(target$1=mod==null?{}:__create(__getProtoOf(mod)),__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp$1(target$1,`default`,{value:mod,enumerable:!0}):target$1,mod)),__toCommonJS=mod=>__copyProps(__defProp$1({},`__esModule`,{value:!0}),mod),__toDynamicImportESM=isNodeMode=>mod=>__toESM(mod.default,isNodeMode),__require=(x$3=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(x$3,{get:(a$2,b$3)=>(typeof require<`u`?require:a$2)[b$3]}):x$3)(function(x$3){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+x$3+"\" in an environment that doesn't expose the `require` function.")});(function(){let relList=document.createElement(`link`).relList;if(relList&&relList.supports&&relList.supports(`modulepreload`))return;for(let link$1 of document.querySelectorAll(`link[rel="modulepreload"]`))processPreload(link$1);new MutationObserver(mutations$1=>{for(let mutation of mutations$1){if(mutation.type!==`childList`)continue;for(let node$1 of mutation.addedNodes)node$1.tagName===`LINK`&&node$1.rel===`modulepreload`&&processPreload(node$1)}}).observe(document,{childList:!0,subtree:!0});function getFetchOpts(link$1){let fetchOpts={};return link$1.integrity&&(fetchOpts.integrity=link$1.integrity),link$1.referrerPolicy&&(fetchOpts.referrerPolicy=link$1.referrerPolicy),link$1.crossOrigin===`use-credentials`?fetchOpts.credentials=`include`:link$1.crossOrigin===`anonymous`?fetchOpts.credentials=`omit`:fetchOpts.credentials=`same-origin`,fetchOpts}function processPreload(link$1){if(link$1.ep)return;link$1.ep=!0;let fetchOpts=getFetchOpts(link$1);fetch(link$1.href,fetchOpts)}})(); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/default-B3hrbX4E.js","assets/HeaderLink-xWxD2Zu3.js","assets/HeaderLink-Bxs3yYEi.css","assets/settings-BmSeK43T.js","assets/theme-color-CX8iTiuc.js","assets/pages-Byy2Hhdn.js","assets/route-block-B2lA4iHQ.js","assets/AnimatedWave-vmZPkx36.js","assets/Basic-D95BeH1T.js","assets/AnimatedWave-Ba4PQcRS.css","assets/Scenes-HTltqZ48.js","assets/import-url-browser-D6BBwmoZ.js","assets/duckdb-mvp-D8OBsaZy.js","assets/background-remove-GD_OBr4Y.js","assets/transformers.web-BihMDlzQ.js","assets/InputFile-B-1kiNIu.js","assets/gesture-circle-D7hIKXta.js","assets/image-DCQY7vtj.js","assets/image-BhuwcwI9.css","assets/polaroid-A4EHzymE.js","assets/vibrant-DdAX8FW9.js","assets/browser-UfbE_1lV.js","assets/settings-CldBYxd-.js","assets/IconAnimation-CvK4BRGS.js","assets/airi-card-HWETNpiq.js","assets/CardCreate-zpppfU_P.js","assets/CardCreationDialog-1FdBirpE.js","assets/dist-NaQNo8Nw.js","assets/CardCreationDialog-CG2KLbdk.css","assets/CardDetailDialog-D8Olu3Yo.js","assets/DeleteCardDialog-BSO29tu_.js","assets/CardListItem-noXJhtke.js","assets/CardCreate-vI7-JE_m.js","assets/CardCreationDialog-Cms6yBxy.js","assets/CardDetailDialog-CNHw_vI_.js","assets/CardListItem-LYi2jKJc.js","assets/DeleteCardDialog-CmNQfJAN.js","assets/appearance-CHlIhV3Q.js","assets/color-scheme-CEN2sNrK.js","assets/ColorPalette-BSzUrihr.js","assets/color-scheme-DQ9rzeUD.css","assets/developer-BMsKoloG.js","assets/general-DiRR6B5N.js","assets/memory-BMWLkjdm.js","assets/models-CrCwINpv.js","assets/icon-animation-BGVKm1so.js","assets/models-D8ntFVBl.css","assets/modules-BIBnS6fC.js","assets/consciousness-DLy5lbRs.js","assets/hearing-DXhzYE8B.js","assets/memory-long-term-Ct-X9BDW.js","assets/memory-short-term-Dw4gKfK3.js","assets/speech-T1PXFj7-.js","assets/Textarea-CMwGMW-L.js","assets/providers-DTc4g9cH.js","assets/alibaba-cloud-model-studio-DzXYVh34.js","assets/anthropic-C47u_7Ce.js","assets/cloudflare-workers-ai-Coo5GpSQ.js","assets/deepseek-cryzZIcn.js","assets/elevenlabs-DzuUHR4k.js","assets/featherless-ai-C665TGqc.js","assets/fireworks-ai-CNUUKc6N.js","assets/google-generative-ai-DlK2YXku.js","assets/microsoft-speech-jmLNHtkW.js","assets/mistral-ai-DKfvUF_S.js","assets/moonshot-ai-cGYSl1Nz.js","assets/novita-ai-B4HVg0kO.js","assets/ollama-6INhEbAn.js","assets/openai-DOyMayjy.js","assets/openai-audio-speech-DfzMcJUw.js","assets/openai-audio-transcription-c5hgWOUB.js","assets/openrouter-ai-DzSt5Tci.js","assets/player2-uSjrXn5Y.js","assets/player2-speech-BBofLZIX.js","assets/together-ai-CecV5ca4.js","assets/volcengine-BmRMK9-E.js","assets/xai-DkCOJscz.js","assets/scene-COu-Ti7i.js","assets/stage-DcWHapKr.js","assets/filter-message-CC7rWc9-.js","assets/delays-Bymja6WU.js","assets/emotions-B6yfBv1x.js","assets/messages-E5zyAorn.js"])))=>i.map(i=>d[i]); +var __create=Object.create,__defProp$1=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp$1=Object.prototype.hasOwnProperty,__esmMin=(fn$5,res)=>()=>(fn$5&&(res=fn$5(fn$5=0)),res),__commonJSMin=(cb$1,mod)=>()=>(mod||cb$1((mod={exports:{}}).exports,mod),mod.exports),__export=(target$1,all$3)=>{for(var name$2 in all$3)__defProp$1(target$1,name$2,{get:all$3[name$2],enumerable:!0})},__copyProps=(to$1,from,except,desc)=>{if(from&&typeof from==`object`||typeof from==`function`)for(var keys$3=__getOwnPropNames(from),i$1=0,n$2=keys$3.length,key$1;i$1from[k$4]).bind(null,key$1),enumerable:!(desc=__getOwnPropDesc(from,key$1))||desc.enumerable});return to$1},__toESM=(mod,isNodeMode,target$1)=>(target$1=mod==null?{}:__create(__getProtoOf(mod)),__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp$1(target$1,`default`,{value:mod,enumerable:!0}):target$1,mod)),__toCommonJS=mod=>__copyProps(__defProp$1({},`__esModule`,{value:!0}),mod),__toDynamicImportESM=isNodeMode=>mod=>__toESM(mod.default,isNodeMode),__require=(x$3=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(x$3,{get:(a$2,b$3)=>(typeof require<`u`?require:a$2)[b$3]}):x$3)(function(x$3){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+x$3+"\" in an environment that doesn't expose the `require` function.")});(function(){let relList=document.createElement(`link`).relList;if(relList&&relList.supports&&relList.supports(`modulepreload`))return;for(let link$1 of document.querySelectorAll(`link[rel="modulepreload"]`))processPreload(link$1);new MutationObserver(mutations$1=>{for(let mutation of mutations$1){if(mutation.type!==`childList`)continue;for(let node$1 of mutation.addedNodes)node$1.tagName===`LINK`&&node$1.rel===`modulepreload`&&processPreload(node$1)}}).observe(document,{childList:!0,subtree:!0});function getFetchOpts(link$1){let fetchOpts={};return link$1.integrity&&(fetchOpts.integrity=link$1.integrity),link$1.referrerPolicy&&(fetchOpts.referrerPolicy=link$1.referrerPolicy),link$1.crossOrigin===`use-credentials`?fetchOpts.credentials=`include`:link$1.crossOrigin===`anonymous`?fetchOpts.credentials=`omit`:fetchOpts.credentials=`same-origin`,fetchOpts}function processPreload(link$1){if(link$1.ep)return;link$1.ep=!0;let fetchOpts=getFetchOpts(link$1);fetch(link$1.href,fetchOpts)}})(); /** * @vue/shared v3.5.17 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -3833,17 +3833,17 @@ void main() { } -}`;var WebXRDepthSensing=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(renderer$1,depthData,renderState){if(this.texture===null){let texture=new Texture,texProps=renderer$1.properties.get(texture);texProps.__webglTexture=depthData.texture,(depthData.depthNear!==renderState.depthNear||depthData.depthFar!==renderState.depthFar)&&(this.depthNear=depthData.depthNear,this.depthFar=depthData.depthFar),this.texture=texture}}getMesh(cameraXR){if(this.texture!==null&&this.mesh===null){let viewport=cameraXR.cameras[0].viewport,material=new ShaderMaterial({vertexShader:_occlusion_vertex,fragmentShader:_occlusion_fragment,uniforms:{depthColor:{value:this.texture},depthWidth:{value:viewport.z},depthHeight:{value:viewport.w}}});this.mesh=new Mesh(new PlaneGeometry(20,20),material)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},WebXRManager=class extends EventDispatcher{constructor(renderer$1,gl){super();let scope=this,session=null,framebufferScaleFactor=1,referenceSpace=null,referenceSpaceType=`local-floor`,foveation=1,customReferenceSpace=null,pose=null,glBinding=null,glProjLayer=null,glBaseLayer=null,xrFrame=null,depthSensing=new WebXRDepthSensing,attributes=gl.getContextAttributes(),initialRenderTarget=null,newRenderTarget=null,controllers=[],controllerInputSources=[],currentSize=new Vector2,currentPixelRatio=null,cameraL=new PerspectiveCamera;cameraL.viewport=new Vector4;let cameraR=new PerspectiveCamera;cameraR.viewport=new Vector4;let cameras=[cameraL,cameraR],cameraXR=new ArrayCamera,_currentDepthNear=null,_currentDepthFar=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(index$1){let controller=controllers[index$1];return controller===void 0&&(controller=new WebXRController,controllers[index$1]=controller),controller.getTargetRaySpace()},this.getControllerGrip=function(index$1){let controller=controllers[index$1];return controller===void 0&&(controller=new WebXRController,controllers[index$1]=controller),controller.getGripSpace()},this.getHand=function(index$1){let controller=controllers[index$1];return controller===void 0&&(controller=new WebXRController,controllers[index$1]=controller),controller.getHandSpace()};function onSessionEvent(event){let controllerIndex=controllerInputSources.indexOf(event.inputSource);if(controllerIndex===-1)return;let controller=controllers[controllerIndex];controller!==void 0&&(controller.update(event.inputSource,event.frame,customReferenceSpace||referenceSpace),controller.dispatchEvent({type:event.type,data:event.inputSource}))}function onSessionEnd(){session.removeEventListener(`select`,onSessionEvent),session.removeEventListener(`selectstart`,onSessionEvent),session.removeEventListener(`selectend`,onSessionEvent),session.removeEventListener(`squeeze`,onSessionEvent),session.removeEventListener(`squeezestart`,onSessionEvent),session.removeEventListener(`squeezeend`,onSessionEvent),session.removeEventListener(`end`,onSessionEnd),session.removeEventListener(`inputsourceschange`,onInputSourcesChange);for(let i$1=0;i$1=0&&(controllerInputSources[index$1]=null,controllers[index$1].disconnect(inputSource))}for(let i$1=0;i$1=controllerInputSources.length){controllerInputSources.push(inputSource),controllerIndex=i$2;break}else if(controllerInputSources[i$2]===null){controllerInputSources[i$2]=inputSource,controllerIndex=i$2;break}if(controllerIndex===-1)break}let controller=controllers[controllerIndex];controller&&controller.connect(inputSource)}}let cameraLPos=new Vector3,cameraRPos=new Vector3;function setProjectionFromUnion(camera,cameraL$1,cameraR$1){cameraLPos.setFromMatrixPosition(cameraL$1.matrixWorld),cameraRPos.setFromMatrixPosition(cameraR$1.matrixWorld);let ipd=cameraLPos.distanceTo(cameraRPos),projL=cameraL$1.projectionMatrix.elements,projR=cameraR$1.projectionMatrix.elements,near=projL[14]/(projL[10]-1),far=projL[14]/(projL[10]+1),topFov=(projL[9]+1)/projL[5],bottomFov=(projL[9]-1)/projL[5],leftFov=(projL[8]-1)/projL[0],rightFov=(projR[8]+1)/projR[0],left=near*leftFov,right=near*rightFov,zOffset=ipd/(-leftFov+rightFov),xOffset=zOffset*-leftFov;if(cameraL$1.matrixWorld.decompose(camera.position,camera.quaternion,camera.scale),camera.translateX(xOffset),camera.translateZ(zOffset),camera.matrixWorld.compose(camera.position,camera.quaternion,camera.scale),camera.matrixWorldInverse.copy(camera.matrixWorld).invert(),projL[10]===-1)camera.projectionMatrix.copy(cameraL$1.projectionMatrix),camera.projectionMatrixInverse.copy(cameraL$1.projectionMatrixInverse);else{let near2=near+zOffset,far2=far+zOffset,left2=left-xOffset,right2=right+(ipd-xOffset),top2=topFov*far/far2*near2,bottom2=bottomFov*far/far2*near2;camera.projectionMatrix.makePerspective(left2,right2,top2,bottom2,near2,far2),camera.projectionMatrixInverse.copy(camera.projectionMatrix).invert()}}function updateCamera(camera,parent){parent===null?camera.matrixWorld.copy(camera.matrix):camera.matrixWorld.multiplyMatrices(parent.matrixWorld,camera.matrix),camera.matrixWorldInverse.copy(camera.matrixWorld).invert()}this.updateCamera=function(camera){if(session===null)return;let depthNear=camera.near,depthFar=camera.far;depthSensing.texture!==null&&(depthSensing.depthNear>0&&(depthNear=depthSensing.depthNear),depthSensing.depthFar>0&&(depthFar=depthSensing.depthFar)),cameraXR.near=cameraR.near=cameraL.near=depthNear,cameraXR.far=cameraR.far=cameraL.far=depthFar,(_currentDepthNear!==cameraXR.near||_currentDepthFar!==cameraXR.far)&&(session.updateRenderState({depthNear:cameraXR.near,depthFar:cameraXR.far}),_currentDepthNear=cameraXR.near,_currentDepthFar=cameraXR.far),cameraL.layers.mask=camera.layers.mask|2,cameraR.layers.mask=camera.layers.mask|4,cameraXR.layers.mask=cameraL.layers.mask|cameraR.layers.mask;let parent=camera.parent,cameras$1=cameraXR.cameras;updateCamera(cameraXR,parent);for(let i$1=0;i$10&&(uniforms.alphaTest.value=material.alphaTest);let materialProperties=properties.get(material),envMap=materialProperties.envMap,envMapRotation=materialProperties.envMapRotation;envMap&&(uniforms.envMap.value=envMap,_e1.copy(envMapRotation),_e1.x*=-1,_e1.y*=-1,_e1.z*=-1,envMap.isCubeTexture&&envMap.isRenderTargetTexture===!1&&(_e1.y*=-1,_e1.z*=-1),uniforms.envMapRotation.value.setFromMatrix4(_m1.makeRotationFromEuler(_e1)),uniforms.flipEnvMap.value=envMap.isCubeTexture&&envMap.isRenderTargetTexture===!1?-1:1,uniforms.reflectivity.value=material.reflectivity,uniforms.ior.value=material.ior,uniforms.refractionRatio.value=material.refractionRatio),material.lightMap&&(uniforms.lightMap.value=material.lightMap,uniforms.lightMapIntensity.value=material.lightMapIntensity,refreshTransformUniform(material.lightMap,uniforms.lightMapTransform)),material.aoMap&&(uniforms.aoMap.value=material.aoMap,uniforms.aoMapIntensity.value=material.aoMapIntensity,refreshTransformUniform(material.aoMap,uniforms.aoMapTransform))}function refreshUniformsLine(uniforms,material){uniforms.diffuse.value.copy(material.color),uniforms.opacity.value=material.opacity,material.map&&(uniforms.map.value=material.map,refreshTransformUniform(material.map,uniforms.mapTransform))}function refreshUniformsDash(uniforms,material){uniforms.dashSize.value=material.dashSize,uniforms.totalSize.value=material.dashSize+material.gapSize,uniforms.scale.value=material.scale}function refreshUniformsPoints(uniforms,material,pixelRatio,height){uniforms.diffuse.value.copy(material.color),uniforms.opacity.value=material.opacity,uniforms.size.value=material.size*pixelRatio,uniforms.scale.value=height*.5,material.map&&(uniforms.map.value=material.map,refreshTransformUniform(material.map,uniforms.uvTransform)),material.alphaMap&&(uniforms.alphaMap.value=material.alphaMap,refreshTransformUniform(material.alphaMap,uniforms.alphaMapTransform)),material.alphaTest>0&&(uniforms.alphaTest.value=material.alphaTest)}function refreshUniformsSprites(uniforms,material){uniforms.diffuse.value.copy(material.color),uniforms.opacity.value=material.opacity,uniforms.rotation.value=material.rotation,material.map&&(uniforms.map.value=material.map,refreshTransformUniform(material.map,uniforms.mapTransform)),material.alphaMap&&(uniforms.alphaMap.value=material.alphaMap,refreshTransformUniform(material.alphaMap,uniforms.alphaMapTransform)),material.alphaTest>0&&(uniforms.alphaTest.value=material.alphaTest)}function refreshUniformsPhong(uniforms,material){uniforms.specular.value.copy(material.specular),uniforms.shininess.value=Math.max(material.shininess,1e-4)}function refreshUniformsToon(uniforms,material){material.gradientMap&&(uniforms.gradientMap.value=material.gradientMap)}function refreshUniformsStandard(uniforms,material){uniforms.metalness.value=material.metalness,material.metalnessMap&&(uniforms.metalnessMap.value=material.metalnessMap,refreshTransformUniform(material.metalnessMap,uniforms.metalnessMapTransform)),uniforms.roughness.value=material.roughness,material.roughnessMap&&(uniforms.roughnessMap.value=material.roughnessMap,refreshTransformUniform(material.roughnessMap,uniforms.roughnessMapTransform)),material.envMap&&(uniforms.envMapIntensity.value=material.envMapIntensity)}function refreshUniformsPhysical(uniforms,material,transmissionRenderTarget){uniforms.ior.value=material.ior,material.sheen>0&&(uniforms.sheenColor.value.copy(material.sheenColor).multiplyScalar(material.sheen),uniforms.sheenRoughness.value=material.sheenRoughness,material.sheenColorMap&&(uniforms.sheenColorMap.value=material.sheenColorMap,refreshTransformUniform(material.sheenColorMap,uniforms.sheenColorMapTransform)),material.sheenRoughnessMap&&(uniforms.sheenRoughnessMap.value=material.sheenRoughnessMap,refreshTransformUniform(material.sheenRoughnessMap,uniforms.sheenRoughnessMapTransform))),material.clearcoat>0&&(uniforms.clearcoat.value=material.clearcoat,uniforms.clearcoatRoughness.value=material.clearcoatRoughness,material.clearcoatMap&&(uniforms.clearcoatMap.value=material.clearcoatMap,refreshTransformUniform(material.clearcoatMap,uniforms.clearcoatMapTransform)),material.clearcoatRoughnessMap&&(uniforms.clearcoatRoughnessMap.value=material.clearcoatRoughnessMap,refreshTransformUniform(material.clearcoatRoughnessMap,uniforms.clearcoatRoughnessMapTransform)),material.clearcoatNormalMap&&(uniforms.clearcoatNormalMap.value=material.clearcoatNormalMap,refreshTransformUniform(material.clearcoatNormalMap,uniforms.clearcoatNormalMapTransform),uniforms.clearcoatNormalScale.value.copy(material.clearcoatNormalScale),material.side===BackSide&&uniforms.clearcoatNormalScale.value.negate())),material.dispersion>0&&(uniforms.dispersion.value=material.dispersion),material.iridescence>0&&(uniforms.iridescence.value=material.iridescence,uniforms.iridescenceIOR.value=material.iridescenceIOR,uniforms.iridescenceThicknessMinimum.value=material.iridescenceThicknessRange[0],uniforms.iridescenceThicknessMaximum.value=material.iridescenceThicknessRange[1],material.iridescenceMap&&(uniforms.iridescenceMap.value=material.iridescenceMap,refreshTransformUniform(material.iridescenceMap,uniforms.iridescenceMapTransform)),material.iridescenceThicknessMap&&(uniforms.iridescenceThicknessMap.value=material.iridescenceThicknessMap,refreshTransformUniform(material.iridescenceThicknessMap,uniforms.iridescenceThicknessMapTransform))),material.transmission>0&&(uniforms.transmission.value=material.transmission,uniforms.transmissionSamplerMap.value=transmissionRenderTarget.texture,uniforms.transmissionSamplerSize.value.set(transmissionRenderTarget.width,transmissionRenderTarget.height),material.transmissionMap&&(uniforms.transmissionMap.value=material.transmissionMap,refreshTransformUniform(material.transmissionMap,uniforms.transmissionMapTransform)),uniforms.thickness.value=material.thickness,material.thicknessMap&&(uniforms.thicknessMap.value=material.thicknessMap,refreshTransformUniform(material.thicknessMap,uniforms.thicknessMapTransform)),uniforms.attenuationDistance.value=material.attenuationDistance,uniforms.attenuationColor.value.copy(material.attenuationColor)),material.anisotropy>0&&(uniforms.anisotropyVector.value.set(material.anisotropy*Math.cos(material.anisotropyRotation),material.anisotropy*Math.sin(material.anisotropyRotation)),material.anisotropyMap&&(uniforms.anisotropyMap.value=material.anisotropyMap,refreshTransformUniform(material.anisotropyMap,uniforms.anisotropyMapTransform))),uniforms.specularIntensity.value=material.specularIntensity,uniforms.specularColor.value.copy(material.specularColor),material.specularColorMap&&(uniforms.specularColorMap.value=material.specularColorMap,refreshTransformUniform(material.specularColorMap,uniforms.specularColorMapTransform)),material.specularIntensityMap&&(uniforms.specularIntensityMap.value=material.specularIntensityMap,refreshTransformUniform(material.specularIntensityMap,uniforms.specularIntensityMapTransform))}function refreshUniformsMatcap(uniforms,material){material.matcap&&(uniforms.matcap.value=material.matcap)}function refreshUniformsDistance(uniforms,material){let light=properties.get(material).light;uniforms.referencePosition.value.setFromMatrixPosition(light.matrixWorld),uniforms.nearDistance.value=light.shadow.camera.near,uniforms.farDistance.value=light.shadow.camera.far}return{refreshFogUniforms,refreshMaterialUniforms}}function WebGLUniformsGroups(gl,info,capabilities,state){let buffers={},updateList={},allocatedBindingPoints=[],maxBindingPoints=gl.getParameter(gl.MAX_UNIFORM_BUFFER_BINDINGS);function bind(uniformsGroup,program){let webglProgram=program.program;state.uniformBlockBinding(uniformsGroup,webglProgram)}function update(uniformsGroup,program){let buffer$1=buffers[uniformsGroup.id];buffer$1===void 0&&(prepareUniformsGroup(uniformsGroup),buffer$1=createBuffer(uniformsGroup),buffers[uniformsGroup.id]=buffer$1,uniformsGroup.addEventListener(`dispose`,onUniformsGroupsDispose));let webglProgram=program.program;state.updateUBOMapping(uniformsGroup,webglProgram);let frame$1=info.render.frame;updateList[uniformsGroup.id]!==frame$1&&(updateBufferData(uniformsGroup),updateList[uniformsGroup.id]=frame$1)}function createBuffer(uniformsGroup){let bindingPointIndex=allocateBindingPointIndex();uniformsGroup.__bindingPointIndex=bindingPointIndex;let buffer$1=gl.createBuffer(),size$1=uniformsGroup.__size,usage=uniformsGroup.usage;return gl.bindBuffer(gl.UNIFORM_BUFFER,buffer$1),gl.bufferData(gl.UNIFORM_BUFFER,size$1,usage),gl.bindBuffer(gl.UNIFORM_BUFFER,null),gl.bindBufferBase(gl.UNIFORM_BUFFER,bindingPointIndex,buffer$1),buffer$1}function allocateBindingPointIndex(){for(let i$1=0;i$10&&(offset$1+=chunkSize-chunkOffset),uniformsGroup.__size=offset$1,uniformsGroup.__cache={},this}function getUniformSize(value$1){let info$1={boundary:0,storage:0};return typeof value$1==`number`||typeof value$1==`boolean`?(info$1.boundary=4,info$1.storage=4):value$1.isVector2?(info$1.boundary=8,info$1.storage=8):value$1.isVector3||value$1.isColor?(info$1.boundary=16,info$1.storage=12):value$1.isVector4?(info$1.boundary=16,info$1.storage=16):value$1.isMatrix3?(info$1.boundary=48,info$1.storage=48):value$1.isMatrix4?(info$1.boundary=64,info$1.storage=64):value$1.isTexture?console.warn(`THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group.`):console.warn(`THREE.WebGLRenderer: Unsupported uniform value type.`,value$1),info$1}function onUniformsGroupsDispose(event){let uniformsGroup=event.target;uniformsGroup.removeEventListener(`dispose`,onUniformsGroupsDispose);let index$1=allocatedBindingPoints.indexOf(uniformsGroup.__bindingPointIndex);allocatedBindingPoints.splice(index$1,1),gl.deleteBuffer(buffers[uniformsGroup.id]),delete buffers[uniformsGroup.id],delete updateList[uniformsGroup.id]}function dispose$1(){for(let id in buffers)gl.deleteBuffer(buffers[id]);allocatedBindingPoints=[],buffers={},updateList={}}return{bind,update,dispose:dispose$1}}var WebGLRenderer=class{constructor(parameters={}){let{canvas=createCanvasElement(),context:context$1=null,depth=!0,stencil=!1,alpha:alpha$1=!1,antialias=!1,premultipliedAlpha=!0,preserveDrawingBuffer=!1,powerPreference=`default`,failIfMajorPerformanceCaveat=!1,reverseDepthBuffer=!1}=parameters;this.isWebGLRenderer=!0;let _alpha;if(context$1!==null){if(typeof WebGLRenderingContext<`u`&&context$1 instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);_alpha=context$1.getContextAttributes().alpha}else _alpha=alpha$1;let uintClearColor=new Uint32Array(4),intClearColor=new Int32Array(4),currentRenderList=null,currentRenderState=null,renderListStack=[],renderStateStack=[];this.domElement=canvas,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=NoToneMapping,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let _this=this,_isContextLost=!1;this._outputColorSpace=SRGBColorSpace;let _currentActiveCubeFace=0,_currentActiveMipmapLevel=0,_currentRenderTarget=null,_currentMaterialId=-1,_currentCamera=null,_currentViewport=new Vector4,_currentScissor=new Vector4,_currentScissorTest=null,_currentClearColor=new Color(0),_currentClearAlpha=0,_width=canvas.width,_height=canvas.height,_pixelRatio=1,_opaqueSort=null,_transparentSort=null,_viewport=new Vector4(0,0,_width,_height),_scissor=new Vector4(0,0,_width,_height),_scissorTest=!1,_frustum$2=new Frustum,_clippingEnabled=!1,_localClippingEnabled=!1,_currentProjectionMatrix=new Matrix4,_projScreenMatrix$3=new Matrix4,_vector3$1=new Vector3,_vector4=new Vector4,_emptyScene={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},_renderBackground=!1;function getTargetPixelRatio(){return _currentRenderTarget===null?_pixelRatio:1}let _gl=context$1;function getContext$1(contextName,contextAttributes){return canvas.getContext(contextName,contextAttributes)}try{let contextAttributes={alpha:!0,depth,stencil,antialias,premultipliedAlpha,preserveDrawingBuffer,powerPreference,failIfMajorPerformanceCaveat};if(`setAttribute`in canvas&&canvas.setAttribute(`data-engine`,`three.js r${REVISION}`),canvas.addEventListener(`webglcontextlost`,onContextLost,!1),canvas.addEventListener(`webglcontextrestored`,onContextRestore,!1),canvas.addEventListener(`webglcontextcreationerror`,onContextCreationError,!1),_gl===null){let contextName=`webgl2`;if(_gl=getContext$1(contextName,contextAttributes),_gl===null)throw getContext$1(contextName)?Error(`Error creating WebGL context with your selected attributes.`):Error(`Error creating WebGL context.`)}}catch(error){throw console.error(`THREE.WebGLRenderer: `+error.message),error}let extensions,capabilities,state,info,properties,textures,cubemaps,cubeuvmaps,attributes,geometries,objects,programCache,materials,renderLists,renderStates,clipping,shadowMap,background,morphtargets,bufferRenderer,indexedBufferRenderer,utils,bindingStates,uniformsGroups;function initGLContext(){extensions=new WebGLExtensions(_gl),extensions.init(),utils=new WebGLUtils(_gl,extensions),capabilities=new WebGLCapabilities(_gl,extensions,parameters,utils),state=new WebGLState(_gl,extensions),capabilities.reverseDepthBuffer&&reverseDepthBuffer&&state.buffers.depth.setReversed(!0),info=new WebGLInfo(_gl),properties=new WebGLProperties,textures=new WebGLTextures(_gl,extensions,state,properties,capabilities,utils,info),cubemaps=new WebGLCubeMaps(_this),cubeuvmaps=new WebGLCubeUVMaps(_this),attributes=new WebGLAttributes(_gl),bindingStates=new WebGLBindingStates(_gl,attributes),geometries=new WebGLGeometries(_gl,attributes,info,bindingStates),objects=new WebGLObjects(_gl,geometries,attributes,info),morphtargets=new WebGLMorphtargets(_gl,capabilities,textures),clipping=new WebGLClipping(properties),programCache=new WebGLPrograms(_this,cubemaps,cubeuvmaps,extensions,capabilities,bindingStates,clipping),materials=new WebGLMaterials(_this,properties),renderLists=new WebGLRenderLists,renderStates=new WebGLRenderStates(extensions),background=new WebGLBackground(_this,cubemaps,cubeuvmaps,state,objects,_alpha,premultipliedAlpha),shadowMap=new WebGLShadowMap(_this,objects,capabilities),uniformsGroups=new WebGLUniformsGroups(_gl,info,capabilities,state),bufferRenderer=new WebGLBufferRenderer(_gl,extensions,info),indexedBufferRenderer=new WebGLIndexedBufferRenderer(_gl,extensions,info),info.programs=programCache.programs,_this.capabilities=capabilities,_this.extensions=extensions,_this.properties=properties,_this.renderLists=renderLists,_this.shadowMap=shadowMap,_this.state=state,_this.info=info}initGLContext();let xr$1=new WebXRManager(_this,_gl);this.xr=xr$1,this.getContext=function(){return _gl},this.getContextAttributes=function(){return _gl.getContextAttributes()},this.forceContextLoss=function(){let extension$1=extensions.get(`WEBGL_lose_context`);extension$1&&extension$1.loseContext()},this.forceContextRestore=function(){let extension$1=extensions.get(`WEBGL_lose_context`);extension$1&&extension$1.restoreContext()},this.getPixelRatio=function(){return _pixelRatio},this.setPixelRatio=function(value$1){value$1!==void 0&&(_pixelRatio=value$1,this.setSize(_width,_height,!1))},this.getSize=function(target$1){return target$1.set(_width,_height)},this.setSize=function(width,height,updateStyle=!0){if(xr$1.isPresenting){console.warn(`THREE.WebGLRenderer: Can't change size while VR device is presenting.`);return}_width=width,_height=height,canvas.width=Math.floor(width*_pixelRatio),canvas.height=Math.floor(height*_pixelRatio),updateStyle===!0&&(canvas.style.width=width+`px`,canvas.style.height=height+`px`),this.setViewport(0,0,width,height)},this.getDrawingBufferSize=function(target$1){return target$1.set(_width*_pixelRatio,_height*_pixelRatio).floor()},this.setDrawingBufferSize=function(width,height,pixelRatio){_width=width,_height=height,_pixelRatio=pixelRatio,canvas.width=Math.floor(width*pixelRatio),canvas.height=Math.floor(height*pixelRatio),this.setViewport(0,0,width,height)},this.getCurrentViewport=function(target$1){return target$1.copy(_currentViewport)},this.getViewport=function(target$1){return target$1.copy(_viewport)},this.setViewport=function(x$3,y$2,width,height){x$3.isVector4?_viewport.set(x$3.x,x$3.y,x$3.z,x$3.w):_viewport.set(x$3,y$2,width,height),state.viewport(_currentViewport.copy(_viewport).multiplyScalar(_pixelRatio).round())},this.getScissor=function(target$1){return target$1.copy(_scissor)},this.setScissor=function(x$3,y$2,width,height){x$3.isVector4?_scissor.set(x$3.x,x$3.y,x$3.z,x$3.w):_scissor.set(x$3,y$2,width,height),state.scissor(_currentScissor.copy(_scissor).multiplyScalar(_pixelRatio).round())},this.getScissorTest=function(){return _scissorTest},this.setScissorTest=function(boolean$1){state.setScissorTest(_scissorTest=boolean$1)},this.setOpaqueSort=function(method){_opaqueSort=method},this.setTransparentSort=function(method){_transparentSort=method},this.getClearColor=function(target$1){return target$1.copy(background.getClearColor())},this.setClearColor=function(){background.setClearColor(...arguments)},this.getClearAlpha=function(){return background.getClearAlpha()},this.setClearAlpha=function(){background.setClearAlpha(...arguments)},this.clear=function(color$2=!0,depth$1=!0,stencil$1=!0){let bits=0;if(color$2){let isIntegerFormat=!1;if(_currentRenderTarget!==null){let targetFormat=_currentRenderTarget.texture.format;isIntegerFormat=targetFormat===RGBAIntegerFormat||targetFormat===RGIntegerFormat||targetFormat===RedIntegerFormat}if(isIntegerFormat){let targetType=_currentRenderTarget.texture.type,isUnsignedType=targetType===UnsignedByteType||targetType===UnsignedIntType||targetType===UnsignedShortType||targetType===UnsignedInt248Type||targetType===UnsignedShort4444Type||targetType===UnsignedShort5551Type,clearColor=background.getClearColor(),a$2=background.getClearAlpha(),r$2=clearColor.r,g$2=clearColor.g,b$3=clearColor.b;isUnsignedType?(uintClearColor[0]=r$2,uintClearColor[1]=g$2,uintClearColor[2]=b$3,uintClearColor[3]=a$2,_gl.clearBufferuiv(_gl.COLOR,0,uintClearColor)):(intClearColor[0]=r$2,intClearColor[1]=g$2,intClearColor[2]=b$3,intClearColor[3]=a$2,_gl.clearBufferiv(_gl.COLOR,0,intClearColor))}else bits|=_gl.COLOR_BUFFER_BIT}depth$1&&(bits|=_gl.DEPTH_BUFFER_BIT),stencil$1&&(bits|=_gl.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),_gl.clear(bits)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){canvas.removeEventListener(`webglcontextlost`,onContextLost,!1),canvas.removeEventListener(`webglcontextrestored`,onContextRestore,!1),canvas.removeEventListener(`webglcontextcreationerror`,onContextCreationError,!1),background.dispose(),renderLists.dispose(),renderStates.dispose(),properties.dispose(),cubemaps.dispose(),cubeuvmaps.dispose(),objects.dispose(),bindingStates.dispose(),uniformsGroups.dispose(),programCache.dispose(),xr$1.dispose(),xr$1.removeEventListener(`sessionstart`,onXRSessionStart),xr$1.removeEventListener(`sessionend`,onXRSessionEnd),animation.stop()};function onContextLost(event){event.preventDefault(),console.log(`THREE.WebGLRenderer: Context Lost.`),_isContextLost=!0}function onContextRestore(){console.log(`THREE.WebGLRenderer: Context Restored.`),_isContextLost=!1;let infoAutoReset=info.autoReset,shadowMapEnabled=shadowMap.enabled,shadowMapAutoUpdate=shadowMap.autoUpdate,shadowMapNeedsUpdate=shadowMap.needsUpdate,shadowMapType=shadowMap.type;initGLContext(),info.autoReset=infoAutoReset,shadowMap.enabled=shadowMapEnabled,shadowMap.autoUpdate=shadowMapAutoUpdate,shadowMap.needsUpdate=shadowMapNeedsUpdate,shadowMap.type=shadowMapType}function onContextCreationError(event){console.error(`THREE.WebGLRenderer: A WebGL context could not be created. Reason: `,event.statusMessage)}function onMaterialDispose(event){let material=event.target;material.removeEventListener(`dispose`,onMaterialDispose),deallocateMaterial(material)}function deallocateMaterial(material){releaseMaterialProgramReferences(material),properties.remove(material)}function releaseMaterialProgramReferences(material){let programs=properties.get(material).programs;programs!==void 0&&(programs.forEach(function(program){programCache.releaseProgram(program)}),material.isShaderMaterial&&programCache.releaseShaderCache(material))}this.renderBufferDirect=function(camera,scene,geometry,material,object,group){scene===null&&(scene=_emptyScene);let frontFaceCW=object.isMesh&&object.matrixWorld.determinant()<0,program=setProgram(camera,scene,geometry,material,object);state.setMaterial(material,frontFaceCW);let index$1=geometry.index,rangeFactor=1;if(material.wireframe===!0){if(index$1=geometries.getWireframeAttribute(geometry),index$1===void 0)return;rangeFactor=2}let drawRange=geometry.drawRange,position$2=geometry.attributes.position,drawStart=drawRange.start*rangeFactor,drawEnd=(drawRange.start+drawRange.count)*rangeFactor;group!==null&&(drawStart=Math.max(drawStart,group.start*rangeFactor),drawEnd=Math.min(drawEnd,(group.start+group.count)*rangeFactor)),index$1===null?position$2!=null&&(drawStart=Math.max(drawStart,0),drawEnd=Math.min(drawEnd,position$2.count)):(drawStart=Math.max(drawStart,0),drawEnd=Math.min(drawEnd,index$1.count));let drawCount=drawEnd-drawStart;if(drawCount<0||drawCount===1/0)return;bindingStates.setup(object,material,program,geometry,index$1);let attribute,renderer$1=bufferRenderer;if(index$1!==null&&(attribute=attributes.get(index$1),renderer$1=indexedBufferRenderer,renderer$1.setIndex(attribute)),object.isMesh)material.wireframe===!0?(state.setLineWidth(material.wireframeLinewidth*getTargetPixelRatio()),renderer$1.setMode(_gl.LINES)):renderer$1.setMode(_gl.TRIANGLES);else if(object.isLine){let lineWidth=material.linewidth;lineWidth===void 0&&(lineWidth=1),state.setLineWidth(lineWidth*getTargetPixelRatio()),object.isLineSegments?renderer$1.setMode(_gl.LINES):object.isLineLoop?renderer$1.setMode(_gl.LINE_LOOP):renderer$1.setMode(_gl.LINE_STRIP)}else object.isPoints?renderer$1.setMode(_gl.POINTS):object.isSprite&&renderer$1.setMode(_gl.TRIANGLES);if(object.isBatchedMesh)if(object._multiDrawInstances!==null)warnOnce$1(`THREE.WebGLRenderer: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection.`),renderer$1.renderMultiDrawInstances(object._multiDrawStarts,object._multiDrawCounts,object._multiDrawCount,object._multiDrawInstances);else if(extensions.get(`WEBGL_multi_draw`))renderer$1.renderMultiDraw(object._multiDrawStarts,object._multiDrawCounts,object._multiDrawCount);else{let starts=object._multiDrawStarts,counts=object._multiDrawCounts,drawCount$1=object._multiDrawCount,bytesPerElement=index$1?attributes.get(index$1).bytesPerElement:1,uniforms=properties.get(material).currentProgram.getUniforms();for(let i$1=0;i$1{function checkMaterialsReady(){if(materials$1.forEach(function(material){let materialProperties=properties.get(material),program=materialProperties.currentProgram;program.isReady()&&materials$1.delete(material)}),materials$1.size===0){resolve$1(scene);return}setTimeout(checkMaterialsReady,10)}extensions.get(`KHR_parallel_shader_compile`)===null?setTimeout(checkMaterialsReady,10):checkMaterialsReady()})};let onAnimationFrameCallback=null;function onAnimationFrame(time){onAnimationFrameCallback&&onAnimationFrameCallback(time)}function onXRSessionStart(){animation.stop()}function onXRSessionEnd(){animation.start()}let animation=new WebGLAnimation;animation.setAnimationLoop(onAnimationFrame),typeof self<`u`&&animation.setContext(self),this.setAnimationLoop=function(callback){onAnimationFrameCallback=callback,xr$1.setAnimationLoop(callback),callback===null?animation.stop():animation.start()},xr$1.addEventListener(`sessionstart`,onXRSessionStart),xr$1.addEventListener(`sessionend`,onXRSessionEnd),this.render=function(scene,camera){if(camera!==void 0&&camera.isCamera!==!0){console.error(`THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(_isContextLost===!0)return;if(scene.matrixWorldAutoUpdate===!0&&scene.updateMatrixWorld(),camera.parent===null&&camera.matrixWorldAutoUpdate===!0&&camera.updateMatrixWorld(),xr$1.enabled===!0&&xr$1.isPresenting===!0&&(xr$1.cameraAutoUpdate===!0&&xr$1.updateCamera(camera),camera=xr$1.getCamera()),scene.isScene===!0&&scene.onBeforeRender(_this,scene,camera,_currentRenderTarget),currentRenderState=renderStates.get(scene,renderStateStack.length),currentRenderState.init(camera),renderStateStack.push(currentRenderState),_projScreenMatrix$3.multiplyMatrices(camera.projectionMatrix,camera.matrixWorldInverse),_frustum$2.setFromProjectionMatrix(_projScreenMatrix$3),_localClippingEnabled=this.localClippingEnabled,_clippingEnabled=clipping.init(this.clippingPlanes,_localClippingEnabled),currentRenderList=renderLists.get(scene,renderListStack.length),currentRenderList.init(),renderListStack.push(currentRenderList),xr$1.enabled===!0&&xr$1.isPresenting===!0){let depthSensingMesh=_this.xr.getDepthSensingMesh();depthSensingMesh!==null&&projectObject(depthSensingMesh,camera,-1/0,_this.sortObjects)}projectObject(scene,camera,0,_this.sortObjects),currentRenderList.finish(),_this.sortObjects===!0&¤tRenderList.sort(_opaqueSort,_transparentSort),_renderBackground=xr$1.enabled===!1||xr$1.isPresenting===!1||xr$1.hasDepthSensing()===!1,_renderBackground&&background.addToRenderList(currentRenderList,scene),this.info.render.frame++,_clippingEnabled===!0&&clipping.beginShadows();let shadowsArray=currentRenderState.state.shadowsArray;shadowMap.render(shadowsArray,scene,camera),_clippingEnabled===!0&&clipping.endShadows(),this.info.autoReset===!0&&this.info.reset();let opaqueObjects=currentRenderList.opaque,transmissiveObjects=currentRenderList.transmissive;if(currentRenderState.setupLights(),camera.isArrayCamera){let cameras=camera.cameras;if(transmissiveObjects.length>0)for(let i$1=0,l$1=cameras.length;i$10&&renderTransmissionPass(opaqueObjects,transmissiveObjects,scene,camera),_renderBackground&&background.render(scene),renderScene(currentRenderList,scene,camera);_currentRenderTarget!==null&&_currentActiveMipmapLevel===0&&(textures.updateMultisampleRenderTarget(_currentRenderTarget),textures.updateRenderTargetMipmap(_currentRenderTarget)),scene.isScene===!0&&scene.onAfterRender(_this,scene,camera),bindingStates.resetDefaultState(),_currentMaterialId=-1,_currentCamera=null,renderStateStack.pop(),renderStateStack.length>0?(currentRenderState=renderStateStack[renderStateStack.length-1],_clippingEnabled===!0&&clipping.setGlobalState(_this.clippingPlanes,currentRenderState.state.camera)):currentRenderState=null,renderListStack.pop(),currentRenderList=renderListStack.length>0?renderListStack[renderListStack.length-1]:null};function projectObject(object,camera,groupOrder,sortObjects){if(object.visible===!1)return;let visible=object.layers.test(camera.layers);if(visible){if(object.isGroup)groupOrder=object.renderOrder;else if(object.isLOD)object.autoUpdate===!0&&object.update(camera);else if(object.isLight)currentRenderState.pushLight(object),object.castShadow&¤tRenderState.pushShadow(object);else if(object.isSprite){if(!object.frustumCulled||_frustum$2.intersectsSprite(object)){sortObjects&&_vector4.setFromMatrixPosition(object.matrixWorld).applyMatrix4(_projScreenMatrix$3);let geometry=objects.update(object),material=object.material;material.visible&¤tRenderList.push(object,geometry,material,groupOrder,_vector4.z,null)}}else if((object.isMesh||object.isLine||object.isPoints)&&(!object.frustumCulled||_frustum$2.intersectsObject(object))){let geometry=objects.update(object),material=object.material;if(sortObjects&&(object.boundingSphere===void 0?(geometry.boundingSphere===null&&geometry.computeBoundingSphere(),_vector4.copy(geometry.boundingSphere.center)):(object.boundingSphere===null&&object.computeBoundingSphere(),_vector4.copy(object.boundingSphere.center)),_vector4.applyMatrix4(object.matrixWorld).applyMatrix4(_projScreenMatrix$3)),Array.isArray(material)){let groups=geometry.groups;for(let i$1=0,l$1=groups.length;i$10&&renderObjects(opaqueObjects,scene,camera),transmissiveObjects.length>0&&renderObjects(transmissiveObjects,scene,camera),transparentObjects.length>0&&renderObjects(transparentObjects,scene,camera),state.buffers.depth.setTest(!0),state.buffers.depth.setMask(!0),state.buffers.color.setMask(!0),state.setPolygonOffset(!1)}function renderTransmissionPass(opaqueObjects,transmissiveObjects,scene,camera){let overrideMaterial=scene.isScene===!0?scene.overrideMaterial:null;if(overrideMaterial!==null)return;currentRenderState.state.transmissionRenderTarget[camera.id]===void 0&&(currentRenderState.state.transmissionRenderTarget[camera.id]=new WebGLRenderTarget(1,1,{generateMipmaps:!0,type:extensions.has(`EXT_color_buffer_half_float`)||extensions.has(`EXT_color_buffer_float`)?HalfFloatType:UnsignedByteType,minFilter:LinearMipmapLinearFilter,samples:4,stencilBuffer:stencil,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:ColorManagement.workingColorSpace}));let transmissionRenderTarget=currentRenderState.state.transmissionRenderTarget[camera.id],activeViewport=camera.viewport||_currentViewport;transmissionRenderTarget.setSize(activeViewport.z*_this.transmissionResolutionScale,activeViewport.w*_this.transmissionResolutionScale);let currentRenderTarget=_this.getRenderTarget(),currentActiveCubeFace=_this.getActiveCubeFace(),currentActiveMipmapLevel=_this.getActiveMipmapLevel();_this.setRenderTarget(transmissionRenderTarget),_this.getClearColor(_currentClearColor),_currentClearAlpha=_this.getClearAlpha(),_currentClearAlpha<1&&_this.setClearColor(16777215,.5),_this.clear(),_renderBackground&&background.render(scene);let currentToneMapping=_this.toneMapping;_this.toneMapping=NoToneMapping;let currentCameraViewport=camera.viewport;if(camera.viewport!==void 0&&(camera.viewport=void 0),currentRenderState.setupLightsView(camera),_clippingEnabled===!0&&clipping.setGlobalState(_this.clippingPlanes,camera),renderObjects(opaqueObjects,scene,camera),textures.updateMultisampleRenderTarget(transmissionRenderTarget),textures.updateRenderTargetMipmap(transmissionRenderTarget),extensions.has(`WEBGL_multisampled_render_to_texture`)===!1){let renderTargetNeedsUpdate=!1;for(let i$1=0,l$1=transmissiveObjects.length;i$10),morphTargets=!!geometry.morphAttributes.position,morphNormals=!!geometry.morphAttributes.normal,morphColors=!!geometry.morphAttributes.color,toneMapping=NoToneMapping;material.toneMapped&&(_currentRenderTarget===null||_currentRenderTarget.isXRRenderTarget===!0)&&(toneMapping=_this.toneMapping);let morphAttribute=geometry.morphAttributes.position||geometry.morphAttributes.normal||geometry.morphAttributes.color,morphTargetsCount=morphAttribute===void 0?0:morphAttribute.length,materialProperties=properties.get(material),lights=currentRenderState.state.lights;if(_clippingEnabled===!0&&(_localClippingEnabled===!0||camera!==_currentCamera)){let useCache=camera===_currentCamera&&material.id===_currentMaterialId;clipping.setState(material,camera,useCache)}let needsProgramChange=!1;material.version===materialProperties.__version?materialProperties.needsLights&&materialProperties.lightsStateVersion!==lights.state.version?needsProgramChange=!0:materialProperties.outputColorSpace===colorSpace?object.isBatchedMesh&&materialProperties.batching===!1||!object.isBatchedMesh&&materialProperties.batching===!0||object.isBatchedMesh&&materialProperties.batchingColor===!0&&object.colorTexture===null||object.isBatchedMesh&&materialProperties.batchingColor===!1&&object.colorTexture!==null||object.isInstancedMesh&&materialProperties.instancing===!1||!object.isInstancedMesh&&materialProperties.instancing===!0||object.isSkinnedMesh&&materialProperties.skinning===!1||!object.isSkinnedMesh&&materialProperties.skinning===!0||object.isInstancedMesh&&materialProperties.instancingColor===!0&&object.instanceColor===null||object.isInstancedMesh&&materialProperties.instancingColor===!1&&object.instanceColor!==null||object.isInstancedMesh&&materialProperties.instancingMorph===!0&&object.morphTexture===null||object.isInstancedMesh&&materialProperties.instancingMorph===!1&&object.morphTexture!==null?needsProgramChange=!0:materialProperties.envMap===envMap?material.fog===!0&&materialProperties.fog!==fog||materialProperties.numClippingPlanes!==void 0&&(materialProperties.numClippingPlanes!==clipping.numPlanes||materialProperties.numIntersection!==clipping.numIntersection)?needsProgramChange=!0:materialProperties.vertexAlphas===vertexAlphas&&materialProperties.vertexTangents===vertexTangents&&materialProperties.morphTargets===morphTargets&&materialProperties.morphNormals===morphNormals&&materialProperties.morphColors===morphColors&&materialProperties.toneMapping===toneMapping?materialProperties.morphTargetsCount!==morphTargetsCount&&(needsProgramChange=!0):needsProgramChange=!0:needsProgramChange=!0:needsProgramChange=!0:(needsProgramChange=!0,materialProperties.__version=material.version);let program=materialProperties.currentProgram;needsProgramChange===!0&&(program=getProgram(material,scene,object));let refreshProgram=!1,refreshMaterial=!1,refreshLights=!1,p_uniforms=program.getUniforms(),m_uniforms=materialProperties.uniforms;if(state.useProgram(program.program)&&(refreshProgram=!0,refreshMaterial=!0,refreshLights=!0),material.id!==_currentMaterialId&&(_currentMaterialId=material.id,refreshMaterial=!0),refreshProgram||_currentCamera!==camera){let reverseDepthBuffer$1=state.buffers.depth.getReversed();reverseDepthBuffer$1?(_currentProjectionMatrix.copy(camera.projectionMatrix),toNormalizedProjectionMatrix(_currentProjectionMatrix),toReversedProjectionMatrix(_currentProjectionMatrix),p_uniforms.setValue(_gl,`projectionMatrix`,_currentProjectionMatrix)):p_uniforms.setValue(_gl,`projectionMatrix`,camera.projectionMatrix),p_uniforms.setValue(_gl,`viewMatrix`,camera.matrixWorldInverse);let uCamPos=p_uniforms.map.cameraPosition;uCamPos!==void 0&&uCamPos.setValue(_gl,_vector3$1.setFromMatrixPosition(camera.matrixWorld)),capabilities.logarithmicDepthBuffer&&p_uniforms.setValue(_gl,`logDepthBufFC`,2/(Math.log(camera.far+1)/Math.LN2)),(material.isMeshPhongMaterial||material.isMeshToonMaterial||material.isMeshLambertMaterial||material.isMeshBasicMaterial||material.isMeshStandardMaterial||material.isShaderMaterial)&&p_uniforms.setValue(_gl,`isOrthographic`,camera.isOrthographicCamera===!0),_currentCamera!==camera&&(_currentCamera=camera,refreshMaterial=!0,refreshLights=!0)}if(object.isSkinnedMesh){p_uniforms.setOptional(_gl,object,`bindMatrix`),p_uniforms.setOptional(_gl,object,`bindMatrixInverse`);let skeleton=object.skeleton;skeleton&&(skeleton.boneTexture===null&&skeleton.computeBoneTexture(),p_uniforms.setValue(_gl,`boneTexture`,skeleton.boneTexture,textures))}object.isBatchedMesh&&(p_uniforms.setOptional(_gl,object,`batchingTexture`),p_uniforms.setValue(_gl,`batchingTexture`,object._matricesTexture,textures),p_uniforms.setOptional(_gl,object,`batchingIdTexture`),p_uniforms.setValue(_gl,`batchingIdTexture`,object._indirectTexture,textures),p_uniforms.setOptional(_gl,object,`batchingColorTexture`),object._colorsTexture!==null&&p_uniforms.setValue(_gl,`batchingColorTexture`,object._colorsTexture,textures));let morphAttributes=geometry.morphAttributes;if((morphAttributes.position!==void 0||morphAttributes.normal!==void 0||morphAttributes.color!==void 0)&&morphtargets.update(object,geometry,program),(refreshMaterial||materialProperties.receiveShadow!==object.receiveShadow)&&(materialProperties.receiveShadow=object.receiveShadow,p_uniforms.setValue(_gl,`receiveShadow`,object.receiveShadow)),material.isMeshGouraudMaterial&&material.envMap!==null&&(m_uniforms.envMap.value=envMap,m_uniforms.flipEnvMap.value=envMap.isCubeTexture&&envMap.isRenderTargetTexture===!1?-1:1),material.isMeshStandardMaterial&&material.envMap===null&&scene.environment!==null&&(m_uniforms.envMapIntensity.value=scene.environmentIntensity),refreshMaterial&&(p_uniforms.setValue(_gl,`toneMappingExposure`,_this.toneMappingExposure),materialProperties.needsLights&&markUniformsLightsNeedsUpdate(m_uniforms,refreshLights),fog&&material.fog===!0&&materials.refreshFogUniforms(m_uniforms,fog),materials.refreshMaterialUniforms(m_uniforms,material,_pixelRatio,_height,currentRenderState.state.transmissionRenderTarget[camera.id]),WebGLUniforms.upload(_gl,getUniformList(materialProperties),m_uniforms,textures)),material.isShaderMaterial&&material.uniformsNeedUpdate===!0&&(WebGLUniforms.upload(_gl,getUniformList(materialProperties),m_uniforms,textures),material.uniformsNeedUpdate=!1),material.isSpriteMaterial&&p_uniforms.setValue(_gl,`center`,object.center),p_uniforms.setValue(_gl,`modelViewMatrix`,object.modelViewMatrix),p_uniforms.setValue(_gl,`normalMatrix`,object.normalMatrix),p_uniforms.setValue(_gl,`modelMatrix`,object.matrixWorld),material.isShaderMaterial||material.isRawShaderMaterial){let groups=material.uniformsGroups;for(let i$1=0,l$1=groups.length;i$10&&textures.useMultisampledRTT(renderTarget)===!1?properties.get(renderTarget).__webglMultisampledFramebuffer:Array.isArray(__webglFramebuffer)?__webglFramebuffer[activeMipmapLevel]:__webglFramebuffer,_currentViewport.copy(renderTarget.viewport),_currentScissor.copy(renderTarget.scissor),_currentScissorTest=renderTarget.scissorTest}else _currentViewport.copy(_viewport).multiplyScalar(_pixelRatio).floor(),_currentScissor.copy(_scissor).multiplyScalar(_pixelRatio).floor(),_currentScissorTest=_scissorTest;activeMipmapLevel!==0&&(framebuffer=_scratchFrameBuffer);let framebufferBound=state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer);if(framebufferBound&&useDefaultFramebuffer&&state.drawBuffers(renderTarget,framebuffer),state.viewport(_currentViewport),state.scissor(_currentScissor),state.setScissorTest(_currentScissorTest),isCube){let textureProperties=properties.get(renderTarget.texture);_gl.framebufferTexture2D(_gl.FRAMEBUFFER,_gl.COLOR_ATTACHMENT0,_gl.TEXTURE_CUBE_MAP_POSITIVE_X+activeCubeFace,textureProperties.__webglTexture,activeMipmapLevel)}else if(isRenderTarget3D){let textureProperties=properties.get(renderTarget.texture),layer=activeCubeFace;_gl.framebufferTextureLayer(_gl.FRAMEBUFFER,_gl.COLOR_ATTACHMENT0,textureProperties.__webglTexture,activeMipmapLevel,layer)}else if(renderTarget!==null&&activeMipmapLevel!==0){let textureProperties=properties.get(renderTarget.texture);_gl.framebufferTexture2D(_gl.FRAMEBUFFER,_gl.COLOR_ATTACHMENT0,_gl.TEXTURE_2D,textureProperties.__webglTexture,activeMipmapLevel)}_currentMaterialId=-1},this.readRenderTargetPixels=function(renderTarget,x$3,y$2,width,height,buffer$1,activeCubeFaceIndex,textureIndex=0){if(!(renderTarget&&renderTarget.isWebGLRenderTarget)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);return}let framebuffer=properties.get(renderTarget).__webglFramebuffer;if(renderTarget.isWebGLCubeRenderTarget&&activeCubeFaceIndex!==void 0&&(framebuffer=framebuffer[activeCubeFaceIndex]),framebuffer){state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer);try{let texture=renderTarget.textures[textureIndex],textureFormat=texture.format,textureType=texture.type;if(!capabilities.textureFormatReadable(textureFormat)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(!capabilities.textureTypeReadable(textureType)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}x$3>=0&&x$3<=renderTarget.width-width&&y$2>=0&&y$2<=renderTarget.height-height&&(renderTarget.textures.length>1&&_gl.readBuffer(_gl.COLOR_ATTACHMENT0+textureIndex),_gl.readPixels(x$3,y$2,width,height,utils.convert(textureFormat),utils.convert(textureType),buffer$1))}finally{let framebuffer$1=_currentRenderTarget===null?null:properties.get(_currentRenderTarget).__webglFramebuffer;state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer$1)}}},this.readRenderTargetPixelsAsync=async function(renderTarget,x$3,y$2,width,height,buffer$1,activeCubeFaceIndex,textureIndex=0){if(!(renderTarget&&renderTarget.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let framebuffer=properties.get(renderTarget).__webglFramebuffer;if(renderTarget.isWebGLCubeRenderTarget&&activeCubeFaceIndex!==void 0&&(framebuffer=framebuffer[activeCubeFaceIndex]),framebuffer)if(x$3>=0&&x$3<=renderTarget.width-width&&y$2>=0&&y$2<=renderTarget.height-height){state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer);let texture=renderTarget.textures[textureIndex],textureFormat=texture.format,textureType=texture.type;if(!capabilities.textureFormatReadable(textureFormat))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(!capabilities.textureTypeReadable(textureType))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);let glBuffer=_gl.createBuffer();_gl.bindBuffer(_gl.PIXEL_PACK_BUFFER,glBuffer),_gl.bufferData(_gl.PIXEL_PACK_BUFFER,buffer$1.byteLength,_gl.STREAM_READ),renderTarget.textures.length>1&&_gl.readBuffer(_gl.COLOR_ATTACHMENT0+textureIndex),_gl.readPixels(x$3,y$2,width,height,utils.convert(textureFormat),utils.convert(textureType),0);let currFramebuffer=_currentRenderTarget===null?null:properties.get(_currentRenderTarget).__webglFramebuffer;state.bindFramebuffer(_gl.FRAMEBUFFER,currFramebuffer);let sync$1=_gl.fenceSync(_gl.SYNC_GPU_COMMANDS_COMPLETE,0);return _gl.flush(),await probeAsync(_gl,sync$1,4),_gl.bindBuffer(_gl.PIXEL_PACK_BUFFER,glBuffer),_gl.getBufferSubData(_gl.PIXEL_PACK_BUFFER,0,buffer$1),_gl.deleteBuffer(glBuffer),_gl.deleteSync(sync$1),buffer$1}else throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)},this.copyFramebufferToTexture=function(texture,position$2=null,level=0){let levelScale=2**-level,width=Math.floor(texture.image.width*levelScale),height=Math.floor(texture.image.height*levelScale),x$3=position$2===null?0:position$2.x,y$2=position$2===null?0:position$2.y;textures.setTexture2D(texture,0),_gl.copyTexSubImage2D(_gl.TEXTURE_2D,level,0,0,x$3,y$2,width,height),state.unbindTexture()};let _srcFramebuffer=_gl.createFramebuffer(),_dstFramebuffer=_gl.createFramebuffer();this.copyTextureToTexture=function(srcTexture,dstTexture,srcRegion=null,dstPosition=null,srcLevel=0,dstLevel=null){dstLevel===null&&(srcLevel===0?dstLevel=0:(warnOnce$1(`WebGLRenderer: copyTextureToTexture function signature has changed to support src and dst mipmap levels.`),dstLevel=srcLevel,srcLevel=0));let width,height,depth$1,minX,minY,minZ,dstX,dstY,dstZ,image$1=srcTexture.isCompressedTexture?srcTexture.mipmaps[dstLevel]:srcTexture.image;if(srcRegion!==null)width=srcRegion.max.x-srcRegion.min.x,height=srcRegion.max.y-srcRegion.min.y,depth$1=srcRegion.isBox3?srcRegion.max.z-srcRegion.min.z:1,minX=srcRegion.min.x,minY=srcRegion.min.y,minZ=srcRegion.isBox3?srcRegion.min.z:0;else{let levelScale=2**-srcLevel;width=Math.floor(image$1.width*levelScale),height=Math.floor(image$1.height*levelScale),depth$1=srcTexture.isDataArrayTexture?image$1.depth:srcTexture.isData3DTexture?Math.floor(image$1.depth*levelScale):1,minX=0,minY=0,minZ=0}dstPosition===null?(dstX=0,dstY=0,dstZ=0):(dstX=dstPosition.x,dstY=dstPosition.y,dstZ=dstPosition.z);let glFormat=utils.convert(dstTexture.format),glType=utils.convert(dstTexture.type),glTarget;dstTexture.isData3DTexture?(textures.setTexture3D(dstTexture,0),glTarget=_gl.TEXTURE_3D):dstTexture.isDataArrayTexture||dstTexture.isCompressedArrayTexture?(textures.setTexture2DArray(dstTexture,0),glTarget=_gl.TEXTURE_2D_ARRAY):(textures.setTexture2D(dstTexture,0),glTarget=_gl.TEXTURE_2D),_gl.pixelStorei(_gl.UNPACK_FLIP_Y_WEBGL,dstTexture.flipY),_gl.pixelStorei(_gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,dstTexture.premultiplyAlpha),_gl.pixelStorei(_gl.UNPACK_ALIGNMENT,dstTexture.unpackAlignment);let currentUnpackRowLen=_gl.getParameter(_gl.UNPACK_ROW_LENGTH),currentUnpackImageHeight=_gl.getParameter(_gl.UNPACK_IMAGE_HEIGHT),currentUnpackSkipPixels=_gl.getParameter(_gl.UNPACK_SKIP_PIXELS),currentUnpackSkipRows=_gl.getParameter(_gl.UNPACK_SKIP_ROWS),currentUnpackSkipImages=_gl.getParameter(_gl.UNPACK_SKIP_IMAGES);_gl.pixelStorei(_gl.UNPACK_ROW_LENGTH,image$1.width),_gl.pixelStorei(_gl.UNPACK_IMAGE_HEIGHT,image$1.height),_gl.pixelStorei(_gl.UNPACK_SKIP_PIXELS,minX),_gl.pixelStorei(_gl.UNPACK_SKIP_ROWS,minY),_gl.pixelStorei(_gl.UNPACK_SKIP_IMAGES,minZ);let isSrc3D=srcTexture.isDataArrayTexture||srcTexture.isData3DTexture,isDst3D=dstTexture.isDataArrayTexture||dstTexture.isData3DTexture;if(srcTexture.isDepthTexture){let srcTextureProperties=properties.get(srcTexture),dstTextureProperties=properties.get(dstTexture),srcRenderTargetProperties=properties.get(srcTextureProperties.__renderTarget),dstRenderTargetProperties=properties.get(dstTextureProperties.__renderTarget);state.bindFramebuffer(_gl.READ_FRAMEBUFFER,srcRenderTargetProperties.__webglFramebuffer),state.bindFramebuffer(_gl.DRAW_FRAMEBUFFER,dstRenderTargetProperties.__webglFramebuffer);for(let i$1=0;i$1{fns.delete(fn$5)},clear=()=>{fns.clear()},on$1=fn$5=>{fns.add(fn$5);let offFn=()=>off(fn$5);return tryOnScopeDispose$1(offFn),{off:offFn}},trigger$1=(...args)=>Promise.all(Array.from(fns).map(fn$5=>fn$5(...args)));return{on:on$1,off,trigger:trigger$1,clear}}function createGlobalState(stateFactory){let initialized=!1,state,scope=effectScope(!0);return(...args)=>(initialized||(state=scope.run(()=>stateFactory(...args)),initialized=!0),state)}const localProvidedStateMap$1=new WeakMap,injectLocal$1=(...args)=>{var _a$2;let key$1=args[0],instance=(_a$2=getCurrentInstance())?.proxy;if(instance==null&&!hasInjectionContext())throw Error(`injectLocal must be called in setup`);return instance&&localProvidedStateMap$1.has(instance)&&key$1 in localProvidedStateMap$1.get(instance)?localProvidedStateMap$1.get(instance)[key$1]:inject(...args)};function createSharedComposable(composable){let subscribers=0,state,scope,dispose$1=()=>{--subscribers,scope&&subscribers<=0&&(scope.stop(),state=void 0,scope=void 0)};return(...args)=>(subscribers+=1,scope||(scope=effectScope(!0),state=scope.run(()=>composable(...args))),tryOnScopeDispose$1(dispose$1),state)}const isClient$1=typeof window<`u`&&typeof document<`u`,isWorker$1=typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope,isDef$1=val=>val!==void 0,notNullish$1=val=>val!=null,toString$3=Object.prototype.toString,isObject$4=val=>toString$3.call(val)===`[object Object]`,noop$3=()=>{},isIOS=getIsIOS();function getIsIOS(){var _a$2,_b;return isClient$1&&(_a$2=window==null?void 0:window.navigator)?.userAgent&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(_b=window==null?void 0:window.navigator)?.maxTouchPoints>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function createFilterWrapper$1(filter$1,fn$5){function wrapper(...args){return new Promise((resolve$1,reject)=>{Promise.resolve(filter$1(()=>fn$5.apply(this,args),{fn:fn$5,thisArg:this,args})).then(resolve$1).catch(reject)})}return wrapper}function debounceFilter$1(ms,options$1={}){let timer,maxTimer,lastRejector=noop$3,_clearTimeout=timer2=>{clearTimeout(timer2),lastRejector(),lastRejector=noop$3},lastInvoker,filter$1=invoke$1=>{let duration=toValue$1(ms),maxDuration$1=toValue$1(options$1.maxWait);return timer&&_clearTimeout(timer),duration<=0||maxDuration$1!==void 0&&maxDuration$1<=0?(maxTimer&&(_clearTimeout(maxTimer),maxTimer=null),Promise.resolve(invoke$1())):new Promise((resolve$1,reject)=>{lastRejector=options$1.rejectOnCancel?reject:resolve$1,lastInvoker=invoke$1,maxDuration$1&&!maxTimer&&(maxTimer=setTimeout(()=>{timer&&_clearTimeout(timer),maxTimer=null,resolve$1(lastInvoker())},maxDuration$1)),timer=setTimeout(()=>{maxTimer&&_clearTimeout(maxTimer),maxTimer=null,resolve$1(invoke$1())},duration)})};return filter$1}function cacheStringFunction$1(fn$5){let cache$1=Object.create(null);return str=>{let hit=cache$1[str];return hit||(cache$1[str]=fn$5(str))}}const hyphenateRE$1=/\B([A-Z])/g,hyphenate$1=cacheStringFunction$1(str=>str.replace(hyphenateRE$1,`-$1`).toLowerCase()),camelizeRE$1=/-(\w)/g,camelize$2=cacheStringFunction$1(str=>str.replace(camelizeRE$1,(_$2,c$4)=>c$4?c$4.toUpperCase():``));function pxValue$1(px$2){return px$2.endsWith(`rem`)?Number.parseFloat(px$2)*16:Number.parseFloat(px$2)}function objectPick$1(obj,keys$3,omitUndefined=!1){return keys$3.reduce((n$2,k$4)=>(k$4 in obj&&(!omitUndefined||obj[k$4]!==void 0)&&(n$2[k$4]=obj[k$4]),n$2),{})}function getLifeCycleTarget$1(target$1){return target$1||getCurrentInstance()}function toArray$1(value$1){return Array.isArray(value$1)?value$1:[value$1]}function useDebounceFn$1(fn$5,ms=200,options$1={}){return createFilterWrapper$1(debounceFilter$1(ms,options$1),fn$5)}function refDebounced$1(value$1,ms=200,options$1={}){let debounced=ref(value$1.value),updater=useDebounceFn$1(()=>{debounced.value=value$1.value},ms,options$1);return watch(value$1,()=>updater()),debounced}function toRefs$2(objectRef,options$1={}){if(!isRef(objectRef))return toRefs(objectRef);let result=Array.isArray(objectRef.value)?Array.from({length:objectRef.value.length}):{};for(let key$1 in objectRef.value)result[key$1]=customRef(()=>({get(){return objectRef.value[key$1]},set(v$1){var _a$2;let replaceRef=(_a$2=toValue$1(options$1.replaceRef))??!0;if(replaceRef)if(Array.isArray(objectRef.value)){let copy=[...objectRef.value];copy[key$1]=v$1,objectRef.value=copy}else{let newObject={...objectRef.value,[key$1]:v$1};Object.setPrototypeOf(newObject,Object.getPrototypeOf(objectRef.value)),objectRef.value=newObject}else objectRef.value[key$1]=v$1}}));return result}const toValue=toValue$1;function tryOnBeforeUnmount(fn$5,target$1){let instance=getLifeCycleTarget$1(target$1);instance&&onBeforeUnmount(fn$5,target$1)}function tryOnMounted$1(fn$5,sync$1=!0,target$1){let instance=getLifeCycleTarget$1();instance?onMounted(fn$5,target$1):sync$1?fn$5():nextTick(fn$5)}function useIntervalFn$1(cb$1,interval=1e3,options$1={}){let{immediate=!0,immediateCallback=!1}=options$1,timer=null,isActive=shallowRef(!1);function clean$3(){timer&&(clearInterval(timer),timer=null)}function pause(){isActive.value=!1,clean$3()}function resume(){let intervalValue=toValue$1(interval);intervalValue<=0||(isActive.value=!0,immediateCallback&&cb$1(),clean$3(),isActive.value&&(timer=setInterval(cb$1,intervalValue)))}if(immediate&&isClient$1&&resume(),isRef(interval)||typeof interval==`function`){let stopWatch=watch(interval,()=>{isActive.value&&isClient$1&&resume()});tryOnScopeDispose$1(stopWatch)}return tryOnScopeDispose$1(pause),{isActive,pause,resume}}function watchImmediate$1(source,cb$1,options$1){return watch(source,cb$1,{...options$1,immediate:!0})}const defaultWindow=isClient$1?window:void 0,defaultDocument$1=isClient$1?window.document:void 0,defaultNavigator$1=isClient$1?window.navigator:void 0,defaultLocation$1=isClient$1?window.location:void 0;function unrefElement(elRef){var _a$2;let plain=toValue$1(elRef);return(_a$2=plain?.$el)??plain}function useEventListener(...args){let cleanups=[],cleanup=()=>{cleanups.forEach(fn$5=>fn$5()),cleanups.length=0},register=(el,event,listener,options$1)=>(el.addEventListener(event,listener,options$1),()=>el.removeEventListener(event,listener,options$1)),firstParamTargets=computed(()=>{let test$1=toArray$1(toValue$1(args[0])).filter(e$3=>e$3!=null);return test$1.every(e$3=>typeof e$3!=`string`)?test$1:void 0}),stopWatch=watchImmediate$1(()=>{var _a$2,_b;return[(_b=(_a$2=firstParamTargets.value)?.map(e$3=>unrefElement(e$3)))??[defaultWindow].filter(e$3=>e$3!=null),toArray$1(toValue$1(firstParamTargets.value?args[1]:args[0])),toArray$1(unref(firstParamTargets.value?args[2]:args[1])),toValue$1(firstParamTargets.value?args[3]:args[2])]},([raw_targets,raw_events,raw_listeners,raw_options])=>{if(cleanup(),!raw_targets?.length||!raw_events?.length||!raw_listeners?.length)return;let optionsClone=isObject$4(raw_options)?{...raw_options}:raw_options;cleanups.push(...raw_targets.flatMap(el=>raw_events.flatMap(event=>raw_listeners.map(listener=>register(el,event,listener,optionsClone)))))},{flush:`post`}),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose$1(cleanup),stop$1}function useMounted(){let isMounted=shallowRef(!1),instance=getCurrentInstance();return instance&&onMounted(()=>{isMounted.value=!0},instance),isMounted}function useSupported$1(callback){let isMounted=useMounted();return computed(()=>(isMounted.value,!!callback()))}function useMutationObserver$1(target$1,callback,options$1={}){let{window:window$1=defaultWindow,...mutationOptions}=options$1,observer,isSupported=useSupported$1(()=>window$1&&`MutationObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let value$1=toValue$1(target$1),items=toArray$1(value$1).map(unrefElement).filter(notNullish$1);return new Set(items)}),stopWatch=watch(()=>targets.value,targets2=>{cleanup(),isSupported.value&&targets2.size&&(observer=new MutationObserver(callback),targets2.forEach(el=>observer.observe(el,mutationOptions)))},{immediate:!0,flush:`post`}),takeRecords=()=>observer?.takeRecords(),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose$1(stop$1),{isSupported,stop:stop$1,takeRecords}}function createKeyPredicate(keyFilter){return typeof keyFilter==`function`?keyFilter:typeof keyFilter==`string`?event=>event.key===keyFilter:Array.isArray(keyFilter)?event=>keyFilter.includes(event.key):()=>!0}function onKeyStroke(...args){let key$1,handler,options$1={};args.length===3?(key$1=args[0],handler=args[1],options$1=args[2]):args.length===2?typeof args[1]==`object`?(key$1=!0,handler=args[0],options$1=args[1]):(key$1=args[0],handler=args[1]):(key$1=!0,handler=args[0]);let{target:target$1=defaultWindow,eventName=`keydown`,passive=!1,dedupe=!1}=options$1,predicate=createKeyPredicate(key$1),listener=e$3=>{e$3.repeat&&toValue$1(dedupe)||predicate(e$3)&&handler(e$3)};return useEventListener(target$1,eventName,listener,passive)}function useRafFn(fn$5,options$1={}){let{immediate=!0,fpsLimit=void 0,window:window$1=defaultWindow,once=!1}=options$1,isActive=shallowRef(!1),intervalLimit=computed(()=>fpsLimit?1e3/toValue$1(fpsLimit):null),previousFrameTimestamp=0,rafId=null;function loop(timestamp$2){if(!isActive.value||!window$1)return;previousFrameTimestamp||=timestamp$2;let delta=timestamp$2-previousFrameTimestamp;if(intervalLimit.value&&deltawindow$1&&`matchMedia`in window$1&&typeof window$1.matchMedia==`function`),ssrSupport=shallowRef(typeof ssrWidth==`number`),mediaQuery=shallowRef(),matches$1=shallowRef(!1),handler=event=>{matches$1.value=event.matches};return watchEffect(()=>{if(ssrSupport.value){ssrSupport.value=!isSupported.value;let queryStrings=toValue$1(query).split(`,`);matches$1.value=queryStrings.some(queryString=>{let not=queryString.includes(`not all`),minWidth=queryString.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),maxWidth=queryString.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),res=!!(minWidth||maxWidth);return minWidth&&res&&(res=ssrWidth>=pxValue$1(minWidth[1])),maxWidth&&res&&(res=ssrWidth<=pxValue$1(maxWidth[1])),not?!res:res});return}isSupported.value&&(mediaQuery.value=window$1.matchMedia(toValue$1(query)),matches$1.value=mediaQuery.value.matches)}),useEventListener(mediaQuery,`change`,handler,{passive:!0}),computed(()=>matches$1.value)}function cloneFnJSON(source){return JSON.parse(JSON.stringify(source))}function useDevicePixelRatio(options$1={}){let{window:window$1=defaultWindow}=options$1,pixelRatio=shallowRef(1),query=useMediaQuery$1(()=>`(resolution: ${pixelRatio.value}dppx)`,options$1),stop$1=noop$3;return window$1&&(stop$1=watchImmediate$1(query,()=>pixelRatio.value=window$1.devicePixelRatio)),{pixelRatio:readonly(pixelRatio),stop:stop$1}}function useResizeObserver$1(target$1,callback,options$1={}){let{window:window$1=defaultWindow,...observerOptions}=options$1,observer,isSupported=useSupported$1(()=>window$1&&`ResizeObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let _targets=toValue$1(target$1);return Array.isArray(_targets)?_targets.map(el=>unrefElement(el)):[unrefElement(_targets)]}),stopWatch=watch(targets,els=>{if(cleanup(),isSupported.value&&window$1){observer=new ResizeObserver(callback);for(let _el of els)_el&&observer.observe(_el,observerOptions)}},{immediate:!0,flush:`post`}),stop$1=()=>{cleanup(),stopWatch()};return tryOnScopeDispose$1(stop$1),{isSupported,stop:stop$1}}function useElementBounding$1(target$1,options$1={}){let{reset=!0,windowResize=!0,windowScroll=!0,immediate=!0,updateTiming=`sync`}=options$1,height=shallowRef(0),bottom=shallowRef(0),left=shallowRef(0),right=shallowRef(0),top=shallowRef(0),width=shallowRef(0),x$3=shallowRef(0),y$2=shallowRef(0);function recalculate(){let el=unrefElement(target$1);if(!el){reset&&(height.value=0,bottom.value=0,left.value=0,right.value=0,top.value=0,width.value=0,x$3.value=0,y$2.value=0);return}let rect=el.getBoundingClientRect();height.value=rect.height,bottom.value=rect.bottom,left.value=rect.left,right.value=rect.right,top.value=rect.top,width.value=rect.width,x$3.value=rect.x,y$2.value=rect.y}function update(){updateTiming===`sync`?recalculate():updateTiming===`next-frame`&&requestAnimationFrame(()=>recalculate())}return useResizeObserver$1(target$1,update),watch(()=>unrefElement(target$1),ele=>!ele&&update()),useMutationObserver$1(target$1,update,{attributeFilter:[`style`,`class`]}),windowScroll&&useEventListener(`scroll`,update,{capture:!0,passive:!0}),windowResize&&useEventListener(`resize`,update,{passive:!0}),tryOnMounted$1(()=>{immediate&&update()}),{height,bottom,left,right,top,width,x:x$3,y:y$2,update}}function useElementSize(target$1,initialSize={width:0,height:0},options$1={}){let{window:window$1=defaultWindow,box=`content-box`}=options$1,isSVG=computed(()=>{var _a$2,_b;return(_b=(_a$2=unrefElement(target$1))?.namespaceURI)?.includes(`svg`)}),width=shallowRef(initialSize.width),height=shallowRef(initialSize.height),{stop:stop1}=useResizeObserver$1(target$1,([entry])=>{let boxSize=box===`border-box`?entry.borderBoxSize:box===`content-box`?entry.contentBoxSize:entry.devicePixelContentBoxSize;if(window$1&&isSVG.value){let $elem=unrefElement(target$1);if($elem){let rect=$elem.getBoundingClientRect();width.value=rect.width,height.value=rect.height}}else if(boxSize){let formatBoxSize=toArray$1(boxSize);width.value=formatBoxSize.reduce((acc,{inlineSize})=>acc+inlineSize,0),height.value=formatBoxSize.reduce((acc,{blockSize})=>acc+blockSize,0)}else width.value=entry.contentRect.width,height.value=entry.contentRect.height},options$1);tryOnMounted$1(()=>{let ele=unrefElement(target$1);ele&&(width.value=`offsetWidth`in ele?ele.offsetWidth:initialSize.width,height.value=`offsetHeight`in ele?ele.offsetHeight:initialSize.height)});let stop2=watch(()=>unrefElement(target$1),ele=>{width.value=ele?initialSize.width:0,height.value=ele?initialSize.height:0});function stop$1(){stop1(),stop2()}return{width,height,stop:stop$1}}function useFps(options$1){var _a$2;let fps=shallowRef(0);if(typeof performance>`u`)return fps;let every=(_a$2=options$1?.every)??10,last=performance.now(),ticks=0;return useRafFn(()=>{if(ticks+=1,ticks>=every){let now=performance.now(),diff=now-last;fps.value=Math.round(1e3/(diff/ticks)),last=now,ticks=0}}),fps}function useMemory(options$1={}){let memory=ref(),isSupported=useSupported$1(()=>typeof performance<`u`&&`memory`in performance);if(isSupported.value){let{interval=1e3}=options$1;useIntervalFn$1(()=>{memory.value=performance.memory},interval,{immediate:options$1.immediate,immediateCallback:options$1.immediateCallback})}return{isSupported,memory}}const defaultState$1={x:0,y:0,pointerId:0,pressure:0,tiltX:0,tiltY:0,width:0,height:0,twist:0,pointerType:null},keys$2=Object.keys(defaultState$1);function usePointer$1(options$1={}){let{target:target$1=defaultWindow}=options$1,isInside=shallowRef(!1),state=ref(options$1.initialValue||{});Object.assign(state.value,defaultState$1,state.value);let handler=event=>{isInside.value=!0,!(options$1.pointerTypes&&!options$1.pointerTypes.includes(event.pointerType))&&(state.value=objectPick$1(event,keys$2,!1))};if(target$1){let listenerOptions={passive:!0};useEventListener(target$1,[`pointerdown`,`pointermove`,`pointerup`],handler,listenerOptions),useEventListener(target$1,`pointerleave`,()=>isInside.value=!1,listenerOptions)}return{...toRefs$2(state),isInside}}const DEFAULT_UNITS$1=[{max:6e4,value:1e3,name:`second`},{max:276e4,value:6e4,name:`minute`},{max:72e6,value:36e5,name:`hour`},{max:5184e5,value:864e5,name:`day`},{max:24192e5,value:6048e5,name:`week`},{max:28512e6,value:2592e6,name:`month`},{max:1/0,value:31536e6,name:`year`}];function useVModel(props,key$1,emit$1,options$1={}){var _a$2,_b,_c;let{clone:clone$2=!1,passive=!1,eventName,deep=!1,defaultValue,shouldEmit}=options$1,vm=getCurrentInstance(),_emit=emit$1||vm?.emit||(_a$2=vm?.$emit)?.bind(vm)||(_c=(_b=vm?.proxy)?.$emit)?.bind(vm?.proxy),event=eventName;key$1||=`modelValue`,event||=`update:${key$1.toString()}`;let cloneFn=val=>clone$2?typeof clone$2==`function`?clone$2(val):cloneFnJSON(val):val,getValue$2=()=>isDef$1(props[key$1])?cloneFn(props[key$1]):defaultValue,triggerEmit=value$1=>{shouldEmit?shouldEmit(value$1)&&_emit(event,value$1):_emit(event,value$1)};if(passive){let initialValue=getValue$2(),proxy=ref(initialValue),isUpdating=!1;return watch(()=>props[key$1],v$1=>{isUpdating||(isUpdating=!0,proxy.value=cloneFn(v$1),nextTick(()=>isUpdating=!1))}),watch(proxy,v$1=>{!isUpdating&&(v$1!==props[key$1]||deep)&&triggerEmit(v$1)},{deep}),proxy}else return computed({get(){return getValue$2()},set(value$1){triggerEmit(value$1)}})}function useWindowSize$1(options$1={}){let{window:window$1=defaultWindow,initialWidth=1/0,initialHeight=1/0,listenOrientation=!0,includeScrollbar=!0,type=`inner`}=options$1,width=shallowRef(initialWidth),height=shallowRef(initialHeight),update=()=>{if(window$1)if(type===`outer`)width.value=window$1.outerWidth,height.value=window$1.outerHeight;else if(type===`visual`&&window$1.visualViewport){let{width:visualViewportWidth,height:visualViewportHeight,scale:scale$1}=window$1.visualViewport;width.value=Math.round(visualViewportWidth*scale$1),height.value=Math.round(visualViewportHeight*scale$1)}else includeScrollbar?(width.value=window$1.innerWidth,height.value=window$1.innerHeight):(width.value=window$1.document.documentElement.clientWidth,height.value=window$1.document.documentElement.clientHeight)};update(),tryOnMounted$1(update);let listenerOptions={passive:!0};if(useEventListener(`resize`,update,listenerOptions),window$1&&type===`visual`&&window$1.visualViewport&&useEventListener(window$1.visualViewport,`resize`,update,listenerOptions),listenOrientation){let matches$1=useMediaQuery$1(`(orientation: portrait)`);watch(matches$1,()=>update())}return{width,height}}var At=Object.defineProperty,xt=(e$3,t,r$2)=>t in e$3?At(e$3,t,{enumerable:!0,configurable:!0,writable:!0,value:r$2}):e$3[t]=r$2,de$2=(e$3,t,r$2)=>xt(e$3,typeof t==`symbol`?t:t+``,r$2);const gr=`@tresjs/core`,hr=`module`,vr=`4.3.6`,yr=`pnpm@10.6.3`,_r=`Declarative ThreeJS using Vue Components`,wr=`Alvaro Saburido (https://github.com/alvarosabu/)`,br=`MIT`,Mr={type:`git`,url:`git+https://github.com/Tresjs/tres.git`},Pr=[`vue`,`3d`,`threejs`,`three`,`threejs-vue`],Cr=!1,Er={".":{types:`./dist/index.d.ts`,import:`./dist/tres.js`,require:`./dist/tres.umd.cjs`},"./components":{types:`./dist/src/components/index.d.ts`},"./composables":{types:`./dist/src/composables/index.d.ts`},"./types":{types:`./dist/src/types/index.d.ts`},"./utils":{types:`./dist/src/utils/index.d.ts`},"./*":`./*`},Tr=`./dist/tres.js`,Sr=`./dist/tres.js`,Ar=`./dist/index.d.ts`,xr=[`*.d.ts`,`dist`],kr={access:`public`},Lr={dev:`pnpm --filter='./playground/vue' dev`,"dev:nuxt":`pnpm --filter='./playground/nuxt' dev`,build:`vite build`,test:`vitest`,"test:ci":`vitest run`,"test:ui":`vitest --ui --coverage.enabled=true`,release:`release-it`,coverage:`vitest run --coverage`,lint:`eslint .`,"lint:fix":`eslint . --fix`,"docs:dev":`vitepress dev docs`,"docs:build":`vitepress build docs`,"docs:serve":`vitepress serve docs`,"docs:preview":`vitepress preview docs`,"docs:contributors":`esno scripts/update-contributors.ts`},Rr={three:`>=0.133`,vue:`>=3.4`},Or={"@alvarosabu/utils":`^3.2.0`,"@vue/devtools-api":`^6.6.3`,"@vueuse/core":`^12.5.0`},Dr={"@release-it/conventional-changelog":`^10.0.0`,"@stackblitz/sdk":`^1.11.0`,"@tresjs/cientos":`4.1.0`,"@tresjs/eslint-config":`^1.4.0`,"@types/three":`^0.173.0`,"@typescript-eslint/eslint-plugin":`^8.23.0`,"@typescript-eslint/parser":`^8.23.0`,"@vitejs/plugin-vue":`^5.2.1`,"@vitest/coverage-c8":`^0.33.0`,"@vitest/coverage-v8":`^3.0.5`,"@vitest/ui":`^3.0.5`,"@vue/test-utils":`^2.4.6`,eslint:`^9.19.0`,"eslint-plugin-vue":`^9.32.0`,esno:`^4.8.0`,gsap:`^3.12.7`,jsdom:`^26.0.0`,kolorist:`^1.8.0`,ohmyfetch:`^0.4.21`,pathe:`^2.0.2`,"release-it":`^18.1.2`,"rollup-plugin-analyzer":`^4.0.0`,"rollup-plugin-copy":`^3.5.0`,"rollup-plugin-visualizer":`^5.14.0`,sponsorkit:`^16.3.0`,three:`^0.173.0`,unocss:`^65.4.3`,unplugin:`^2.1.2`,"unplugin-vue-components":`^28.0.0`,vite:`^6.1.0`,"vite-plugin-banner":`^0.8.0`,"vite-plugin-dts":`4.5.0`,"vite-plugin-inspect":`^10.1.0`,"vite-plugin-require-transform":`^1.0.21`,"vite-svg-loader":`^5.1.0`,vitepress:`1.6.3`,vitest:`3.0.5`,vue:`3.5.13`,"vue-demi":`^0.14.10`},jr={name:gr,type:hr,version:vr,packageManager:yr,description:_r,author:wr,license:br,repository:Mr,keywords:Pr,sideEffects:Cr,exports:Er,main:Tr,module:Sr,types:Ar,files:xr,publishConfig:kr,scripts:Lr,peerDependencies:Rr,dependencies:Or,devDependencies:Dr};function Br(e$3){let t={nodes:{},materials:{}};return e$3&&e$3.traverse(r$2=>{r$2.name&&(t.nodes[r$2.name]=r$2),r$2.material&&!t.materials[r$2.material.name]&&(t.materials[r$2.material.name]=r$2.material)}),t}async function Ir(e$3,t,r$2,n$2,o$1){let{logError:l$1}=Q$2(),s$1=new e$3;return o$1&&o$1(s$1),r$2&&r$2(s$1),await new Promise((a$2,c$4)=>{s$1.load(t,i$1=>{let f$3=i$1;f$3.scene&&Object.assign(f$3,Br(f$3.scene)),a$2(f$3)},n$2,i$1=>{l$1(`[useLoader] - Failed to load resource`,i$1),c$4(i$1)})})}var $r=class extends Mesh{constructor(...r$2){super(...r$2),de$2(this,`type`,`HightlightMesh`),de$2(this,`createTime`),this.createTime=Date.now()}onBeforeRender(){let n$2=(Date.now()-this.createTime)/1e3,s$1=1+.07*Math.sin(2.5*n$2);this.scale.set(s$1,s$1,s$1)}};function be$1(e$3){return typeof e$3>`u`}function ke(e$3){return Array.isArray(e$3)}function Hr(e$3){return typeof e$3==`number`}function dt$3(e$3){return typeof e$3==`string`}function Y$1(e$3){return typeof e$3==`function`}function j(e$3){return e$3===Object(e$3)&&!ke(e$3)&&!Y$1(e$3)}function N(e$3){return j(e$3)&&!!e$3.isObject3D}function mt$2(e$3){return j(e$3)&&!!e$3.isColor}function Ur(e$3){return e$3!=null&&(typeof e$3==`string`||typeof e$3==`number`||mt$2(e$3))}function Me$1(e$3){return typeof e$3==`object`&&!!e$3&&`set`in e$3&&typeof e$3.set==`function`}function Fr(e$3){return Me$1(e$3)&&`copy`in e$3&&typeof e$3.copy==`function`}function Wr(e$3){return!!(e$3!=null&&e$3.constructor)}function Ge(e$3){return e$3 instanceof Layers}function Ve(e$3){return j(e$3)&&!!e$3.isCamera}function Nr(e$3){return j(e$3)&&!!e$3.isBufferGeometry}function zr(e$3){return j(e$3)&&!!e$3.isMaterial}function Gr(e$3){return j(e$3)&&!!e$3.isLight}function Vr(e$3){return j(e$3)&&!!e$3.isFog}function Yr(e$3){return j(e$3)&&!!e$3.isScene}function ne(e$3){return N(e$3)||Nr(e$3)||zr(e$3)||Vr(e$3)}function qr(e$3){return j(e$3)&&!!e$3.isPrimitive}const gt$2=(e$3,t)=>{for(let r$2 of Object.keys(t))t[r$2]instanceof Object&&Object.assign(t[r$2],gt$2(e$3[r$2],t[r$2]));return Object.assign(e$3||{},t),e$3},Kr=`html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot`,Jr=Zr(Kr);function Ye(e$3){return e$3&&e$3.nodeType===1}function he$1(e$3){return e$3.replace(/-([a-z])/g,(t,r$2)=>r$2.toUpperCase())}const Qr=/\B([A-Z])/g;function Xr(e$3){return e$3.replace(Qr,`-$1`).toLowerCase()}function Zr(e$3,t){let r$2=Object.create(null),n$2=e$3.split(`,`);for(let o$1=0;o$1!!r$2[o$1.toLowerCase()]:o$1=>!!r$2[o$1]}const qe=(e$3,t)=>{if(!t)return;let r$2=Array.isArray(t)?t:t.match(/([^[.\]])+/g);return r$2?.reduce((n$2,o$1)=>n$2&&n$2[o$1],e$3)},en=(e$3,t,r$2)=>{let n$2=Array.isArray(t)?t:t.match(/([^[.\]])+/g);n$2&&n$2.reduce((o$1,l$1,s$1)=>(o$1[l$1]===void 0&&(o$1[l$1]={}),s$1===n$2.length-1&&(o$1[l$1]=r$2),o$1[l$1]),e$3)};function ht$2(e$3,t){if(Ye(e$3)&&Ye(t)){let o$1=e$3.attributes,l$1=t.attributes;return o$1.length===l$1.length?Array.from(o$1).every(({name:s$1,value:a$2})=>t.getAttribute(s$1)===a$2):!1}if(e$3===t)return!0;if(typeof e$3!=`object`||!e$3||typeof t!=`object`||!t)return!1;let r$2=Object.keys(e$3),n$2=Object.keys(t);if(r$2.length!==n$2.length)return!1;for(let o$1 of r$2)if(!n$2.includes(o$1)||!ht$2(e$3[o$1],t[o$1]))return!1;return!0}function tn(e$3,t){if(!Array.isArray(e$3)||!Array.isArray(t)||e$3.length!==t.length)return!1;for(let r$2=0;r$2{if(c$4.uuid===t)return c$4;for(let i$1 of c$4.children){let f$3=o$1(i$1);if(f$3)return f$3}},l$1=o$1(e$3);if(!l$1){console.warn(`Object with UUID not found in the scene.`);return}let s$1=l$1;for(let c$4=0;c$4vt$2(o$1)),!(e$3 instanceof Scene)){let o$1=e$3;e$3&&((n$2=e$3.dispose)==null||n$2.call(e$3)),o$1.geometry&&o$1.geometry.dispose(),Array.isArray(o$1.material)?o$1.material.forEach(l$1=>Ke(l$1)):o$1.material&&Ke(o$1.material)}}function ln(e$3,t){let r$2=0;for(let n$2=0;n$2r$2===0?t:t.charAt(0).toUpperCase()+t.slice(1)).join(``)}const Qe=/-\d+$/;function cn$1(e$3,t,r$2){if(dt$3(r$2)){if(Qe.test(r$2)){let l$1=r$2.replace(Qe,``),{target:s$1,key:a$2}=Pe$1(e$3,l$1);if(!Array.isArray(s$1[a$2])){let c$4=s$1[a$2],i$1=[];i$1.__tresDetach=()=>{i$1.every(f$3=>be$1(f$3))&&(s$1[a$2]=c$4)},s$1[a$2]=i$1}}let{target:n$2,key:o$1}=Pe$1(e$3,r$2);t.__tres.previousAttach=n$2[o$1],n$2[o$1]=J(t)}else t.__tres.previousAttach=r$2(e$3,t)}function un$2(e$3,t,r$2){var n$2,o$1,l$1;if(dt$3(r$2)){let{target:s$1,key:a$2}=Pe$1(e$3,r$2),c$4=t.__tres.previousAttach;c$4===void 0?delete s$1[a$2]:s$1[a$2]=c$4,`__tresDetach`in s$1&&s$1.__tresDetach()}else (o$1=(n$2=t.__tres)?.previousAttach)==null||o$1.call(n$2,e$3,t);(l$1=t.__tres)==null||delete l$1.previousAttach}function z$1(e$3,t,r$2){let n$2=e$3;return n$2.__tres={type:`unknown`,eventCount:0,root:r$2,handlers:{},memoizedProps:{},objects:[],parent:null,previousAttach:null,...t},n$2.__tres.attach||(n$2.isMaterial?n$2.__tres.attach=`material`:n$2.isBufferGeometry?n$2.__tres.attach=`geometry`:n$2.isFog&&(n$2.__tres.attach=`fog`)),n$2}function yt$2(e$3){var r$2;let t=(r$2=e$3?.__tres)?.root;t&&t.render&&t.render.canBeInvalidated.value&&t.invalidate()}function fn$4(e$3,t,r$2){var o$1;if(!Y$1(e$3.setPixelRatio))return;let n$2=0;if(r$2&&ke(r$2)&&r$2.length>=2){let[l$1,s$1]=r$2;n$2=MathUtils.clamp(t,l$1,s$1)}else n$2=Hr(r$2)?r$2:t;n$2!==(o$1=e$3.getPixelRatio)?.call(e$3)&&e$3.setPixelRatio(n$2)}function pn(e$3,t,r$2,n$2,o$1){let l$1=[...t.__tres.objects],s$1=J(t);if(e$3=J(e$3),s$1===e$3)return!0;let a$2=z$1(e$3,t.__tres??{},o$1),c$4=t.parent??t.__tres.parent??null,i$1={...t.__tres.memoizedProps};delete i$1.object;for(let f$3 of l$1)_t$2(f$3,o$1),wt$2(f$3,o$1);s$1.__tres.objects=[],n$2.remove(t);for(let[f$3,v$1]of Object.entries(i$1))n$2.patchProp(a$2,f$3,a$2[f$3],v$1);r$2(e$3),n$2.insert(t,c$4);for(let f$3 of l$1)n$2.insert(f$3,t);return!0}function J(e$3){return qr(e$3)?(e$3.object.__tres=e$3.__tres,e$3.object):e$3}function _t$2(e$3,t){var n$2,o$1,l$1,s$1;let r$2=(n$2=e$3.__tres)?.parent||t.scene.value;e$3.__tres&&(e$3.__tres.parent=null),r$2&&r$2.__tres&&`objects`in r$2.__tres&&ln(r$2.__tres.objects,a$2=>a$2!==e$3),(o$1=e$3.__tres)!=null&&o$1.attach?un$2(r$2,e$3,e$3.__tres.attach):((s$1=(l$1=e$3.parent)?.remove)==null||s$1.call(l$1,J(e$3)),e$3.parent=null)}function wt$2(e$3,t){var r$2;(r$2=e$3.traverse)==null||r$2.call(e$3,n$2=>{var o$1;t.deregisterCamera(n$2),(o$1=t.eventManager)==null||o$1.deregisterPointerMissedObject(n$2)}),t.deregisterCamera(e$3),yt$2(e$3)}async function dn(e$3,t){let r$2=new TextureLoader(t),n$2=o$1=>new Promise((l$1,s$1)=>{r$2.load(o$1,a$2=>l$1(a$2),()=>null,()=>{s$1(Error(`[useTextures] - Failed to load texture`))})});if(rn(e$3)){let o$1=await Promise.all(e$3.map(l$1=>n$2(l$1)));return e$3.length>1?o$1:o$1[0]}else{let{map:o$1,displacementMap:l$1,normalMap:s$1,roughnessMap:a$2,metalnessMap:c$4,aoMap:i$1,alphaMap:f$3,matcap:v$1}=e$3;return{map:o$1?await n$2(o$1):null,displacementMap:l$1?await n$2(l$1):null,normalMap:s$1?await n$2(s$1):null,roughnessMap:a$2?await n$2(a$2):null,metalnessMap:c$4?await n$2(c$4):null,aoMap:i$1?await n$2(i$1):null,alphaMap:f$3?await n$2(f$3):null,matcap:v$1?await n$2(v$1):null}}}const to=defineComponent({__name:`component`,props:{map:{},displacementMap:{},normalMap:{},roughnessMap:{},metalnessMap:{},aoMap:{},alphaMap:{},matcap:{}},async setup(e$3){let t,r$2,n$2=e$3,o$1=([t,r$2]=withAsyncContext(()=>reactive(dn(n$2))),t=await t,r$2(),t);return(l$1,s$1)=>renderSlot(l$1.$slots,`default`,{textures:unref(o$1)})}}),mn=({sizes:e$3})=>{let t=ref([]),r$2=computed(()=>t.value[0]),n$2=s$1=>{let a$2=s$1 instanceof Camera?s$1:t.value.find(i$1=>i$1.uuid===s$1);if(!a$2)return;let c$4=t.value.filter(({uuid:i$1})=>i$1!==a$2.uuid);t.value=[a$2,...c$4]},o$1=(s$1,a$2=!1)=>{if(Ve(s$1)){let c$4=s$1;if(t.value.some(({uuid:i$1})=>i$1===c$4.uuid))return;a$2?n$2(c$4):t.value.push(c$4)}},l$1=s$1=>{if(Ve(s$1)){let a$2=s$1;t.value=t.value.filter(({uuid:c$4})=>c$4!==a$2.uuid)}};return watchEffect(()=>{e$3.aspectRatio.value&&t.value.forEach(s$1=>{!s$1.manual&&(s$1 instanceof PerspectiveCamera||gn(s$1))&&(s$1 instanceof PerspectiveCamera?s$1.aspect=e$3.aspectRatio.value:(s$1.left=e$3.width.value*-.5,s$1.right=e$3.width.value*.5,s$1.top=e$3.height.value*.5,s$1.bottom=e$3.height.value*-.5),s$1.updateProjectionMatrix())})}),onUnmounted(()=>{t.value=[]}),{camera:r$2,cameras:t,registerCamera:o$1,deregisterCamera:l$1,setCameraActive:n$2}};function gn(e$3){return e$3.hasOwnProperty(`isOrthographicCamera`)&&e$3.isOrthographicCamera}const ro=!0,fe$1=`[TresJS ▲ ■ ●] `;function hn(...e$3){typeof e$3[0]==`string`?e$3[0]=fe$1+e$3[0]:e$3.unshift(fe$1),console.error(...e$3)}function vn$2(...e$3){typeof e$3[0]==`string`?e$3[0]=fe$1+e$3[0]:e$3.unshift(fe$1),console.warn(...e$3)}function yn(e$3,t){}function Q$2(){return{logError:hn,logWarning:vn$2,logMessage:yn}}const Ce$2=ref({}),Ee$1=e$3=>Object.assign(Ce$2.value,e$3);function ve(){let e$3=new Map,t=new Set,r$2=0,n$2=!1,o$1=()=>{let i$1=Array.from(e$3.entries()).sort((f$3,v$1)=>{let u$1=f$3[1].priority-v$1[1].priority;return u$1===0?f$3[1].addI-v$1[1].addI:u$1});t.clear(),i$1.forEach(f$3=>t.add(f$3[0]))},l$1=i$1=>{e$3.delete(i$1),t.delete(i$1)};return{on:(i$1,f$3=0)=>{e$3.set(i$1,{priority:f$3,addI:r$2++});let v$1=()=>l$1(i$1);return tryOnScopeDispose$1(v$1),n$2=!0,{off:v$1}},off:l$1,trigger:(...i$1)=>{n$2&&(o$1(),n$2=!1),t.forEach(f$3=>f$3(...i$1))},dispose:()=>{e$3.clear(),t.clear()},get count(){return e$3.size}}}function _n(){let e$3=!0,t=!0,r$2=!1,n$2=new Clock(!1),o$1=ref(n$2.running),l$1=ref(!1),s$1,a$2=MathUtils.generateUUID(),c$4=null,i$1=ve(),f$3=ve(),v$1=ve();S$2();let u$1={};function _$2(M$1){u$1=M$1}function d$2(M$1,x$3,m$2=0){switch(x$3){case`before`:return i$1.on(M$1,m$2);case`render`:return c$4||=M$1,f$3.dispose(),f$3.on(M$1);case`after`:return v$1.on(M$1,m$2)}}function y$2(){t&&(t=!1,S$2(),E$2())}function p$5(){t=!0,S$2(),cancelAnimationFrame(s$1)}function h$3(){r$2=!1,S$2()}function P$1(){r$2=!0,S$2()}function C$3(){l$1.value=!0}function b$3(){l$1.value=!1}function E$2(){if(!e$3){s$1=requestAnimationFrame(E$2);return}let M$1=n$2.getDelta(),x$3=n$2.getElapsedTime(),m$2={camera:unref(u$1.camera),scene:unref(u$1.scene),renderer:unref(u$1.renderer),raycaster:unref(u$1.raycaster),controls:unref(u$1.controls),invalidate:u$1.invalidate,advance:u$1.advance},w$1={delta:M$1,elapsed:x$3,clock:n$2,...m$2};o$1.value&&i$1.trigger(w$1),l$1.value||(f$3.count?f$3.trigger(w$1):c$4&&c$4(w$1)),o$1.value&&v$1.trigger(w$1),s$1=requestAnimationFrame(E$2)}function S$2(){let M$1=!t&&!r$2;n$2.running!==M$1&&(n$2.running?n$2.stop():n$2.start()),o$1.value=n$2.running}return{loopId:a$2,register:(M$1,x$3,m$2)=>d$2(M$1,x$3,m$2),start:y$2,stop:p$5,pause:P$1,resume:h$3,pauseRender:C$3,resumeRender:b$3,isRenderPaused:l$1,isActive:o$1,setContext:_$2,setReady:M$1=>e$3=M$1}}function Le(e$3){let t=0;return e$3.traverse(r$2=>{if(r$2.isMesh&&r$2.geometry&&r$2.type!==`HightlightMesh`){let n$2=r$2.geometry,o$1=n$2.attributes.position.count*3*Float32Array.BYTES_PER_ELEMENT,l$1=n$2.index?n$2.index.count*Uint32Array.BYTES_PER_ELEMENT:0,s$1=n$2.attributes.normal?n$2.attributes.normal.count*3*Float32Array.BYTES_PER_ELEMENT:0,a$2=n$2.attributes.uv?n$2.attributes.uv.count*2*Float32Array.BYTES_PER_ELEMENT:0,c$4=o$1+l$1+s$1+a$2;t+=c$4}}),t}function wn(e$3){return(e$3/1024).toFixed(2)}const bn=Number.parseInt(REVISION.replace(`dev`,``));function Mn(e$3){return e$3 instanceof Color?e$3:Array.isArray(e$3)?new Color(...e$3):new Color(e$3)}const oe$1={realistic:{shadows:!0,physicallyCorrectLights:!0,outputColorSpace:SRGBColorSpace,toneMapping:ACESFilmicToneMapping,toneMappingExposure:3,shadowMap:{enabled:!0,type:PCFSoftShadowMap}},flat:{toneMapping:NoToneMapping,toneMappingExposure:1}};function Pn({canvas:e$3,options:t,contextParts:{sizes:r$2,render:n$2,invalidate:o$1,advance:l$1}}){let s$1=computed(()=>({alpha:toValue(t.alpha)??!0,depth:toValue(t.depth),canvas:unrefElement(e$3),context:toValue(t.context),stencil:toValue(t.stencil),antialias:toValue(t.antialias)??!0,precision:toValue(t.precision),powerPreference:toValue(t.powerPreference),premultipliedAlpha:toValue(t.premultipliedAlpha),preserveDrawingBuffer:toValue(t.preserveDrawingBuffer),logarithmicDepthBuffer:toValue(t.logarithmicDepthBuffer),failIfMajorPerformanceCaveat:toValue(t.failIfMajorPerformanceCaveat)})),a$2=shallowRef(new WebGLRenderer(s$1.value));function c$4(){t.renderMode===`on-demand`&&o$1()}watch(s$1,()=>{a$2.value.dispose(),a$2.value=new WebGLRenderer(s$1.value),c$4()}),watch([r$2.width,r$2.height],()=>{a$2.value.setSize(r$2.width.value,r$2.height.value),c$4()},{immediate:!0}),watch(()=>t.clearColor,c$4);let{pixelRatio:i$1}=useDevicePixelRatio(),{logError:f$3}=Q$2(),u$1=(()=>{let d$2=new WebGLRenderer,y$2={shadowMap:{enabled:d$2.shadowMap.enabled,type:d$2.shadowMap.type},toneMapping:d$2.toneMapping,toneMappingExposure:d$2.toneMappingExposure,outputColorSpace:d$2.outputColorSpace};return d$2.dispose(),y$2})(),_$2=toValue(t.renderMode);return _$2===`on-demand`&&o$1(),_$2===`manual`&&setTimeout(()=>{l$1()},100),watchEffect(()=>{let d$2=toValue(t.preset);d$2&&(d$2 in oe$1||f$3(`Renderer Preset must be one of these: ${Object.keys(oe$1).join(`, `)}`),gt$2(a$2.value,oe$1[d$2])),fn$4(a$2.value,i$1.value,toValue(t.dpr)),_$2===`always`&&(n$2.frames.value=Math.max(1,n$2.frames.value));let y$2=(P$1,C$3)=>{let b$3=toValue(P$1),E$2=()=>{if(d$2)return qe(oe$1[d$2],C$3)};if(b$3!==void 0)return b$3;let S$2=E$2();return S$2===void 0?qe(u$1,C$3):S$2},p$5=(P$1,C$3)=>en(a$2.value,C$3,y$2(P$1,C$3));p$5(t.shadows,`shadowMap.enabled`),p$5(t.toneMapping??ACESFilmicToneMapping,`toneMapping`),p$5(t.shadowMapType,`shadowMap.type`),bn<150&&p$5(!t.useLegacyLights,`physicallyCorrectLights`),p$5(t.outputColorSpace,`outputColorSpace`),p$5(t.toneMappingExposure,`toneMappingExposure`);let h$3=y$2(t.clearColor,`clearColor`);h$3&&a$2.value.setClearColor(h$3?Mn(h$3):new Color(0))}),onUnmounted(()=>{a$2.value.dispose(),a$2.value.forceContextLoss()}),{renderer:a$2}}function Cn(e$3,t,r$2=10){let n$2=toValue(e$3)?useWindowSize$1():useElementSize(computed(()=>toValue(t).parentElement)),o$1=readonly(refDebounced$1(n$2.width,r$2)),l$1=readonly(refDebounced$1(n$2.height,r$2)),s$1=computed(()=>o$1.value/l$1.value);return{height:l$1,width:o$1,aspectRatio:s$1}}const En=(e$3,t)=>{let r$2=computed(()=>t.renderer.value.domElement),n$2=shallowRef([]),{x:o$1,y:l$1}=usePointer$1({target:r$2}),s$1=0,{width:a$2,height:c$4,top:i$1,left:f$3}=useElementBounding$1(r$2),v$1=({x:g$2,y:T$1})=>{if(r$2.value)return{x:(g$2-f$3.value)/a$2.value*2-1,y:-((T$1-i$1.value)/c$4.value)*2+1}},u$1=({x:g$2,y:T$1})=>{if(t.camera.value)return t.raycaster.value.setFromCamera(new Vector2(g$2,T$1),t.camera.value),n$2.value=t.raycaster.value.intersectObjects(e$3.value,!0),n$2.value},_$2=g$2=>{let T$1=v$1({x:g$2?.clientX??o$1.value,y:g$2?.clientY??l$1.value});return T$1&&u$1(T$1)||[]},d$2=createEventHook$1(),y$2=createEventHook$1(),p$5=createEventHook$1(),h$3=createEventHook$1(),P$1=createEventHook$1(),C$3=createEventHook$1(),b$3=createEventHook$1(),E$2=createEventHook$1();function S$2(g$2){let T$1={};for(let U in g$2)typeof U!=`function`&&(T$1[U]=g$2[U]);return T$1}let M$1=(g$2,T$1)=>{var Ie,$e$1,He$1;let U=S$2(T$1),re$3=new Vector3(T$1?.clientX,T$1?.clientY,0).unproject((Ie=t.camera)?.value);g$2.trigger({...U,intersections:n$2.value,unprojectedPoint:re$3,ray:($e$1=t.raycaster)?.value.ray,camera:(He$1=t.camera)?.value,sourceEvent:T$1,delta:s$1,stopPropagating:!1})},x$3,m$2=g$2=>{_$2(g$2),M$1(p$5,g$2),x$3=g$2},w$1=()=>{x$3&&m$2(x$3)},k$4,L$1,R$1,B$2=g$2=>{var T$1;k$4=(T$1=n$2.value[0])?.object,s$1=0,L$1=new Vector2(g$2?.clientX??o$1.value,g$2?.clientY??l$1.value),M$1(P$1,g$2)},O$2,G$1=!1,Oe$2=g$2=>{var T$1,U,re$3;g$2 instanceof PointerEvent&&(n$2.value.length===0&&M$1(C$3,g$2),k$4===(T$1=n$2.value[0])?.object&&(R$1=new Vector2(g$2?.clientX??o$1.value,g$2?.clientY??l$1.value),s$1=L$1?.distanceTo(R$1),g$2.button===0?(M$1(d$2,g$2),O$2===(U=n$2.value[0])?.object?G$1=!0:(O$2=(re$3=n$2.value[0])?.object,G$1=!1)):g$2.button===2&&M$1(b$3,g$2)),M$1(h$3,g$2))},De=g$2=>{G$1&&(M$1(y$2,g$2),O$2=void 0,G$1=!1)},je=g$2=>M$1(p$5,g$2),Be$2=g$2=>M$1(E$2,g$2);return r$2.value.addEventListener(`pointerup`,Oe$2),r$2.value.addEventListener(`pointerdown`,B$2),r$2.value.addEventListener(`pointermove`,m$2),r$2.value.addEventListener(`pointerleave`,je),r$2.value.addEventListener(`dblclick`,De),r$2.value.addEventListener(`wheel`,Be$2),onUnmounted(()=>{r$2!=null&&r$2.value&&(r$2.value.removeEventListener(`pointerup`,Oe$2),r$2.value.removeEventListener(`pointerdown`,B$2),r$2.value.removeEventListener(`pointermove`,m$2),r$2.value.removeEventListener(`pointerleave`,je),r$2.value.removeEventListener(`dblclick`,De),r$2.value.removeEventListener(`wheel`,Be$2))}),{intersects:n$2,onClick:g$2=>d$2.on(g$2).off,onDblClick:g$2=>y$2.on(g$2).off,onContextMenu:g$2=>b$3.on(g$2).off,onPointerMove:g$2=>p$5.on(g$2).off,onPointerUp:g$2=>h$3.on(g$2).off,onPointerDown:g$2=>P$1.on(g$2).off,onPointerMissed:g$2=>C$3.on(g$2).off,onWheel:g$2=>E$2.on(g$2).off,forceUpdate:w$1}};function ye(e$3,t){if(Array.isArray(e$3))for(let r$2 of e$3)r$2(t);typeof e$3==`function`&&e$3(t)}function Tn(e$3,t,r$2){var x$3;let n$2=shallowRef(),o$1=shallowRef();e$3&&(n$2.value=e$3),t&&(o$1.value=t);let l$1=m$2=>{var w$1;return(w$1=m$2.__tres)?.eventCount>0},s$1=m$2=>{var w$1;return(w$1=m$2.children)?.some(k$4=>s$1(k$4))||l$1(m$2)},a$2=shallowRef(((x$3=n$2.value)?.children).filter(s$1)||[]);function c$4(m$2,w$1){let k$4=[],L$1=()=>w$1.stopPropagating=!0;w$1.stopPropagation=L$1;for(let R$1 of w$1?.intersections){if(w$1.stopPropagating)return;w$1={...w$1,...R$1};let{object:B$2}=R$1;w$1.eventObject=B$2,ye(B$2[m$2],w$1),k$4.push(B$2);let O$2=B$2.parent;for(;O$2!==null&&!w$1.stopPropagating&&!k$4.includes(O$2);)w$1.eventObject=O$2,ye(O$2[m$2],w$1),k$4.push(O$2),O$2=O$2.parent;let G$1=Xr(m$2.slice(2));r$2(G$1,{intersection:R$1,event:w$1})}}let{onClick:i$1,onDblClick:f$3,onContextMenu:v$1,onPointerMove:u$1,onPointerDown:_$2,onPointerUp:d$2,onPointerMissed:y$2,onWheel:p$5,forceUpdate:h$3}=En(a$2,t);d$2(m$2=>c$4(`onPointerUp`,m$2)),_$2(m$2=>c$4(`onPointerDown`,m$2)),i$1(m$2=>c$4(`onClick`,m$2)),f$3(m$2=>c$4(`onDoubleClick`,m$2)),v$1(m$2=>c$4(`onContextMenu`,m$2)),p$5(m$2=>c$4(`onWheel`,m$2));let P$1=[];u$1(m$2=>{let w$1=m$2.intersections.map(({object:L$1})=>L$1),k$4=m$2.intersections;P$1.forEach(({object:L$1})=>{w$1.includes(L$1)||(m$2.intersections=P$1,c$4(`onPointerLeave`,m$2),c$4(`onPointerOut`,m$2))}),m$2.intersections=k$4,m$2.intersections.forEach(({object:L$1})=>{P$1.includes(L$1)||(c$4(`onPointerEnter`,m$2),c$4(`onPointerOver`,m$2))}),c$4(`onPointerMove`,m$2),P$1=m$2.intersections});let C$3=[];y$2(m$2=>{let w$1=()=>m$2.stopPropagating=!0;m$2.stopPropagation=w$1,C$3.forEach(k$4=>{m$2.stopPropagating||(m$2.eventObject=k$4,ye(k$4.onPointerMissed,m$2))}),r$2(`pointer-missed`,{event:m$2})});function b$3(m$2){ne(m$2)&&N(m$2)&&a$2.value.push(m$2)}function E$2(m$2){if(ne(m$2)&&N(m$2)){let w$1=a$2.value.indexOf(m$2);w$1>-1&&a$2.value.splice(w$1,1)}}function S$2(m$2){ne(m$2)&&N(m$2)&&m$2.onPointerMissed&&C$3.push(m$2)}function M$1(m$2){if(ne(m$2)&&N(m$2)){let w$1=C$3.indexOf(m$2);w$1>-1&&C$3.splice(w$1,1)}}return t.eventManager={forceUpdate:h$3,registerObject:b$3,deregisterObject:E$2,registerPointerMissedObject:S$2,deregisterPointerMissedObject:M$1},{forceUpdate:h$3,registerObject:b$3,deregisterObject:E$2,registerPointerMissedObject:S$2,deregisterPointerMissedObject:M$1}}function Sn(e$3,t,r$2=100){r$2=r$2<=0?100:r$2;let n$2=createEventHook$1(),o$1=new Set,l$1=!1,s$1=!1,a$2=null;function c$4(){a$2&&clearTimeout(a$2),!s$1&&!l$1&&e$3()?(n$2.trigger(t),o$1.forEach(u$1=>u$1()),o$1.clear(),l$1=!0):!s$1&&!l$1&&(a$2=setTimeout(c$4,r$2))}function i$1(){s$1=!0,a$2&&clearTimeout(a$2)}c$4();let f$3=(u$1,..._$2)=>{u$1(..._$2)};return{on:u$1=>{if(l$1)return f$3(u$1,t),{off:()=>{}};{let _$2=n$2.on(u$1);return o$1.add(_$2.off),n$2.on(u$1)}},off:n$2.off,trigger:n$2.trigger,clear:n$2.clear,cancel:i$1}}const ee$2=new WeakMap;function bt$2(e$3){if(e$3||=pe$1(),ee$2.has(e$3))return ee$2.get(e$3);let t=100,r$2=Date.now(),l$1=Sn(()=>{if(Date.now()-r$2>=t)return!0;{let s$1=e$3.renderer.value,a$2=s$1?.domElement||{width:0,height:0};return!!(s$1&&a$2.width>0&&a$2.height>0)}},e$3);return ee$2.set(e$3,l$1),l$1}function An({scene:e$3,canvas:t,windowSize:r$2,rendererOptions:n$2,emit:o$1}){let l$1=shallowRef(e$3),s$1=Cn(r$2,t),{camera:a$2,cameras:c$4,registerCamera:i$1,deregisterCamera:f$3,setCameraActive:v$1}=mn({sizes:s$1}),u$1={mode:ref(n$2.renderMode||`always`),priority:ref(0),frames:ref(0),maxFrames:60,canBeInvalidated:computed(()=>u$1.mode.value===`on-demand`&&u$1.frames.value===0)};function _$2(R$1=1){n$2.renderMode===`on-demand`&&(u$1.frames.value=Math.min(u$1.maxFrames,u$1.frames.value+R$1))}function d$2(){n$2.renderMode===`manual`&&(u$1.frames.value=1)}let{renderer:y$2}=Pn({canvas:t,options:n$2,contextParts:{sizes:s$1,render:u$1,invalidate:_$2,advance:d$2}}),p$5={sizes:s$1,scene:l$1,camera:a$2,cameras:readonly(c$4),renderer:y$2,raycaster:shallowRef(new Raycaster),controls:ref(null),perf:{maxFrames:160,fps:{value:0,accumulator:[]},memory:{currentMem:0,allocatedMem:0,accumulator:[]}},render:u$1,advance:d$2,extend:Ee$1,invalidate:_$2,registerCamera:i$1,setCameraActive:v$1,deregisterCamera:f$3,loop:_n()};provide(`useTres`,p$5),p$5.scene.value.__tres={root:p$5},p$5.loop.register(()=>{a$2.value&&u$1.frames.value>0&&(y$2.value.render(e$3,a$2.value),o$1(`render`,p$5.renderer.value)),u$1.priority.value=0,u$1.mode.value===`always`?u$1.frames.value=1:u$1.frames.value=Math.max(0,u$1.frames.value-1)},`render`);let{on:h$3,cancel:P$1}=bt$2(p$5);p$5.loop.setReady(!1),p$5.loop.start(),h$3(()=>{o$1(`ready`,p$5),p$5.loop.setReady(!0),Tn(e$3,p$5,o$1)}),onUnmounted(()=>{P$1(),p$5.loop.stop()});let C$3=100,b$3=useFps({every:C$3}),{isSupported:E$2,memory:S$2}=useMemory({interval:C$3}),M$1=160,x$3=performance.now(),m$2=({timestamp:R$1})=>{p$5.scene.value&&(p$5.perf.memory.allocatedMem=Le(p$5.scene.value)),R$1-x$3>=C$3&&(x$3=R$1,p$5.perf.fps.accumulator.push(b$3.value),p$5.perf.fps.accumulator.length>M$1&&p$5.perf.fps.accumulator.shift(),p$5.perf.fps.value=b$3.value,E$2.value&&S$2.value&&(p$5.perf.memory.accumulator.push(S$2.value.usedJSHeapSize/1024/1024),p$5.perf.memory.accumulator.length>M$1&&p$5.perf.memory.accumulator.shift(),p$5.perf.memory.currentMem=p$5.perf.memory.accumulator.reduce((B$2,O$2)=>B$2+O$2,0)/p$5.perf.memory.accumulator.length))},w$1=0,k$4=1,{pause:L$1}=useRafFn(({delta:R$1})=>{window.__TRES__DEVTOOLS__&&(m$2({timestamp:performance.now()}),w$1+=R$1,w$1>=k$4&&(window.__TRES__DEVTOOLS__.cb(p$5),w$1=0))},{immediate:!0});return onUnmounted(()=>{L$1()}),p$5}function pe$1(){let e$3=inject(`useTres`);if(!e$3)throw Error(`useTresContext must be used together with useTresContextProvider`);return e$3}const so=pe$1;function io(){let{camera:e$3,scene:t,renderer:r$2,loop:n$2,raycaster:o$1,controls:l$1,invalidate:s$1,advance:a$2}=pe$1();n$2.setContext({camera:e$3,scene:t,renderer:r$2,raycaster:o$1,controls:l$1,invalidate:s$1,advance:a$2});function c$4(v$1,u$1=0){return n$2.register(v$1,`before`,u$1)}function i$1(v$1){return n$2.register(v$1,`render`)}function f$3(v$1,u$1=0){return n$2.register(v$1,`after`,u$1)}return{pause:n$2.pause,resume:n$2.resume,pauseRender:n$2.pauseRender,resumeRender:n$2.resumeRender,isActive:n$2.isActive,onBeforeRender:c$4,render:i$1,onAfterRender:f$3}}const Mt$1=createEventHook$1(),Pt$2=createEventHook$1(),Re=createEventHook$1(),te$1=new Clock;let le$1=0,ce$1=0;const{pause:xn,resume:Xe,isActive:kn}=useRafFn(()=>{Mt$1.trigger({delta:le$1,elapsed:ce$1,clock:te$1}),Pt$2.trigger({delta:le$1,elapsed:ce$1,clock:te$1}),Re.trigger({delta:le$1,elapsed:ce$1,clock:te$1})},{immediate:!1});Re.on(()=>{le$1=te$1.getDelta(),ce$1=te$1.getElapsedTime()});function Ln(e$3,t={},r$2={}){let n$2=e$3,o$1=a$2=>{n$2=a$2},l$1=new Proxy({},{}),s$1={has(a$2,c$4){return c$4 in t||c$4 in n$2},get(a$2,c$4,i$1){return c$4 in t?t[c$4](n$2):n$2[c$4]},set(a$2,c$4,i$1){return r$2[c$4]?r$2[c$4](i$1,n$2,l$1,o$1):n$2[c$4]=i$1,!0}};return l$1=new Proxy({},s$1),l$1}const{logError:et$1}=Q$2(),tt$1=[`onClick`,`onContextMenu`,`onPointerMove`,`onPointerEnter`,`onPointerLeave`,`onPointerOver`,`onPointerOut`,`onDoubleClick`,`onPointerDown`,`onPointerUp`,`onPointerCancel`,`onPointerMissed`,`onLostPointerCapture`,`onWheel`],Rn=e$3=>{let t=e$3.scene.value;function r$2(i$1,f$3,v$1,u$1){if(u$1||={},u$1.args||=[],i$1===`template`||Jr(i$1))return null;let _$2=i$1.replace(`Tres`,``),d$2;if(i$1===`primitive`){(!j(u$1.object)||isRef(u$1.object))&&et$1(`Tres primitives need an 'object' prop, whose value is an object or shallowRef`),_$2=u$1.object.type;let y$2={};d$2=Ln(u$1.object,{object:h$3=>h$3,isPrimitive:()=>!0,__tres:()=>y$2},{object:(h$3,P$1,C$3,b$3)=>{pn(h$3,C$3,b$3,{patchProp:l$1,remove:o$1,insert:n$2},e$3)},__tres:h$3=>{Object.assign(y$2,h$3)}})}else{let y$2=Ce$2.value[_$2];y$2||et$1(`${_$2} is not defined on the THREE namespace. Use extend to add it to the catalog.`),d$2=new y$2(...u$1.args)}return d$2?(d$2.isCamera&&(u$1!=null&&u$1.position||d$2.position.set(3,3,3),u$1!=null&&u$1.lookAt||d$2.lookAt(0,0,0)),d$2=z$1(d$2,{...d$2.__tres,type:_$2,memoizedProps:u$1,eventCount:0,primitive:i$1===`primitive`,attach:u$1.attach},e$3),d$2):null}function n$2(i$1,f$3){var _$2,d$2,y$2;if(!i$1)return;f$3||=t;let v$1=i$1.__tres?i$1:z$1(i$1,{},e$3),u$1=f$3.__tres?f$3:z$1(f$3,{},e$3);i$1=J(v$1),f$3=J(u$1),i$1.__tres&&(_$2=i$1.__tres)?.eventCount>0&&((d$2=e$3.eventManager)==null||d$2.registerObject(i$1)),e$3.registerCamera(i$1),(y$2=e$3.eventManager)==null||y$2.registerPointerMissedObject(i$1),v$1.__tres.attach?cn$1(u$1,v$1,v$1.__tres.attach):N(i$1)&&N(u$1)&&(u$1.add(i$1),i$1.dispatchEvent({type:`added`})),v$1.__tres.parent=u$1,u$1.__tres.objects&&!u$1.__tres.objects.includes(v$1)&&u$1.__tres.objects.push(v$1)}function o$1(i$1,f$3){var d$2,y$2,p$5,h$3;if(!i$1)return;i$1!=null&&i$1.__tres&&(d$2=i$1.__tres)?.eventCount>0&&((y$2=e$3.eventManager)==null||y$2.deregisterObject(i$1)),f$3=be$1(f$3)?`default`:f$3;let v$1=(p$5=i$1.__tres)?.dispose;be$1(v$1)||(f$3=v$1===null?!1:v$1);let u$1=(h$3=i$1.__tres)?.primitive,_$2=f$3===`default`?!u$1:!!f$3;if(i$1.__tres&&`objects`in i$1.__tres&&[...i$1.__tres.objects].forEach(P$1=>o$1(P$1,f$3)),_$2&&i$1.children&&[...i$1.children].forEach(P$1=>o$1(P$1,f$3)),_t$2(i$1,e$3),wt$2(i$1,e$3),_$2&&!Yr(i$1)){if(Y$1(f$3))f$3(i$1);else if(Y$1(i$1.dispose))try{i$1.dispose()}catch{}}`__tres`in i$1&&delete i$1.__tres}function l$1(i$1,f$3,v$1,u$1){var P$1,C$3;if(!i$1)return;let _$2=i$1,d$2=f$3;if(i$1.__tres&&(i$1.__tres.memoizedProps[f$3]=u$1),f$3===`attach`){let b$3=(P$1=i$1.__tres)?.parent||i$1.parent;o$1(i$1),z$1(i$1,{attach:u$1},e$3),b$3&&n$2(i$1,b$3);return}if(f$3===`dispose`){i$1.__tres||(i$1=z$1(i$1,{},e$3)),i$1.__tres.dispose=u$1;return}if(N(i$1)&&d$2===`blocks-pointer-events`){u$1||u$1===``?i$1[d$2]=u$1:delete i$1[d$2];return}tt$1.includes(f$3)&&i$1.__tres&&(i$1.__tres.eventCount+=1);let y$2=he$1(d$2),p$5=_$2?.[y$2];if(d$2===`args`){let b$3=i$1,E$2=v$1??[],S$2=u$1??[],M$1=(C$3=i$1.__tres)?.type||i$1.type;M$1&&E$2.length&&!tn(E$2,S$2)&&(_$2=Object.assign(b$3,new Ce$2.value[M$1](...u$1)));return}if(_$2.type===`BufferGeometry`){if(d$2===`args`)return;_$2.setAttribute(he$1(d$2),new BufferAttribute(...u$1));return}if(d$2.includes(`-`)&&p$5===void 0){p$5=_$2;for(let b$3 of d$2.split(`-`))y$2=d$2=he$1(b$3),_$2=p$5,p$5=p$5?.[d$2]}let h$3=u$1;if(h$3===``&&(h$3=!0),Y$1(p$5)){tt$1.includes(f$3)||(ke(h$3)?i$1[y$2](...h$3):i$1[y$2](h$3)),y$2.startsWith(`on`)&&Y$1(h$3)&&(_$2[y$2]=h$3);return}Ge(p$5)&&Ge(h$3)?p$5.mask=h$3.mask:mt$2(p$5)&&Ur(h$3)?p$5.set(h$3):Fr(p$5)&&Wr(h$3)&&p$5.constructor===h$3.constructor?p$5.copy(h$3):Me$1(p$5)&&Array.isArray(h$3)?`fromArray`in p$5&&typeof p$5.fromArray==`function`?p$5.fromArray(h$3):p$5.set(...h$3):Me$1(p$5)&&typeof h$3==`number`?`setScalar`in p$5&&typeof p$5.setScalar==`function`?p$5.setScalar(h$3):p$5.set(h$3):_$2[y$2]=h$3,yt$2(i$1)}function s$1(i$1){var f$3;return(f$3=i$1?.__tres)?.parent||null}function a$2(i$1){let f$3=z$1(new Object3D,{type:`Comment`},e$3);return f$3.name=i$1,f$3}function c$4(i$1){var _$2;let f$3=s$1(i$1),v$1=(_$2=f$3?.__tres)?.objects||[],u$1=v$1.indexOf(i$1);return u$1<0||u$1>=v$1.length-1?null:v$1[u$1+1]}return{insert:n$2,remove:o$1,createElement:r$2,patchProp:l$1,parentNode:s$1,createText:()=>void 0,createComment:a$2,setText:()=>void 0,setElementText:()=>void 0,nextSibling:c$4,querySelector:()=>void 0,setScopeId:()=>void 0,cloneNode:()=>void 0,insertStaticContent:()=>void 0}};function On(){return Ct$1().__VUE_DEVTOOLS_GLOBAL_HOOK__}function Ct$1(){return typeof navigator<`u`&&typeof window<`u`?window:typeof globalThis<`u`?globalThis:{}}const Dn=typeof Proxy==`function`,jn=`devtools-plugin:setup`,Bn=`plugin:settings:set`;let V,Te$2;function In(){var e$3;return V!==void 0||(typeof window<`u`&&window.performance?(V=!0,Te$2=window.performance):typeof globalThis<`u`&&(e$3=globalThis.perf_hooks)!=null&&e$3.performance?(V=!0,Te$2=globalThis.perf_hooks.performance):V=!1),V}function $n(){return In()?Te$2.now():Date.now()}var Hn=class{constructor(t,r$2){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=r$2;let n$2={};if(t.settings)for(let s$1 in t.settings){let a$2=t.settings[s$1];n$2[s$1]=a$2.defaultValue}let o$1=`__vue-devtools-plugin-settings__${t.id}`,l$1=Object.assign({},n$2);try{let s$1=localStorage.getItem(o$1),a$2=JSON.parse(s$1);Object.assign(l$1,a$2)}catch{}this.fallbacks={getSettings(){return l$1},setSettings(s$1){try{localStorage.setItem(o$1,JSON.stringify(s$1))}catch{}l$1=s$1},now(){return $n()}},r$2&&r$2.on(Bn,(s$1,a$2)=>{s$1===this.plugin.id&&this.fallbacks.setSettings(a$2)}),this.proxiedOn=new Proxy({},{get:(s$1,a$2)=>this.target?this.target.on[a$2]:(...c$4)=>{this.onQueue.push({method:a$2,args:c$4})}}),this.proxiedTarget=new Proxy({},{get:(s$1,a$2)=>this.target?this.target[a$2]:a$2===`on`?this.proxiedOn:Object.keys(this.fallbacks).includes(a$2)?(...c$4)=>(this.targetQueue.push({method:a$2,args:c$4,resolve:()=>{}}),this.fallbacks[a$2](...c$4)):(...c$4)=>new Promise(i$1=>{this.targetQueue.push({method:a$2,args:c$4,resolve:i$1})})})}async setRealTarget(t){this.target=t;for(let r$2 of this.onQueue)this.target.on[r$2.method](...r$2.args);for(let r$2 of this.targetQueue)r$2.resolve(await this.target[r$2.method](...r$2.args))}};function Un(e$3,t){let r$2=e$3,n$2=Ct$1(),o$1=On(),l$1=Dn&&r$2.enableEarlyProxy;if(o$1&&(n$2.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__||!l$1))o$1.emit(jn,e$3,t);else{let s$1=l$1?new Hn(r$2,o$1):null;(n$2.__VUE_DEVTOOLS_PLUGINS__=n$2.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:r$2,setupFn:t,proxy:s$1}),s$1&&t(s$1.proxiedTarget)}}function Fn(e$3,t){let r$2=`▲ ■ ●${e$3}`;typeof rt$2==`function`?rt$2(r$2,t):console.log(r$2)}function rt$2(e$3,t){throw Error(e$3+t)}const Et$1=e$3=>{let t={id:e$3.uuid,label:e$3.type,children:[],tags:[]};e$3.name!==``&&t.tags.push({label:e$3.name,textColor:5750629,backgroundColor:15793395});let r$2=Le(e$3);return r$2>0&&t.tags.push({label:`${wn(r$2)} KB`,textColor:15707189,backgroundColor:16775644,tooltip:`Memory usage`}),e$3.type.includes(`Light`)&&(Gr(e$3)&&t.tags.push({label:`${e$3.intensity}`,textColor:9738662,backgroundColor:16316922,tooltip:`Intensity`}),t.tags.push({label:`#${new Color(e$3.color).getHexString()}`,textColor:9738662,backgroundColor:16316922,tooltip:`Color`})),e$3.type.includes(`Camera`)&&(t.tags.push({label:`${e$3.fov}°`,textColor:9738662,backgroundColor:16316922,tooltip:`Field of view`}),t.tags.push({label:`x: ${Math.round(e$3.position.x)} y: ${Math.round(e$3.position.y)} z: ${Math.round(e$3.position.z)}`,textColor:9738662,backgroundColor:16316922,tooltip:`Position`})),t};function Tt$2(e$3,t,r$2=``){e$3.children.forEach(n$2=>{if(n$2.type===`HightlightMesh`||r$2&&!n$2.type.includes(r$2)&&!n$2.name.includes(r$2))return;let o$1=Et$1(n$2);t.children.push(o$1),Tt$2(n$2,o$1,r$2)})}const Wn=[],X$1=`tres:inspector`,Nn=reactive({sceneGraph:null});function zn(e$3,t){Un({id:`dev.esm.tres`,label:`TresJS 🪐`,logo:`https://raw.githubusercontent.com/Tresjs/tres/main/public/favicon.svg`,packageName:`tresjs`,homepage:`https://tresjs.org`,componentStateTypes:Wn,app:e$3},r$2=>{typeof r$2.now!=`function`&&Fn(`You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html.`),r$2.addInspector({id:X$1,label:`TresJS 🪐`,icon:`account_tree`,treeFilterPlaceholder:`Search instances`}),setInterval(()=>{r$2.sendInspectorTree(X$1)},1e3),setInterval(()=>{r$2.notifyComponentUpdate()},5e3),r$2.on.getInspectorTree(l$1=>{if(l$1.inspectorId===X$1){let s$1=Et$1(t.scene.value);Tt$2(t.scene.value,s$1,l$1.filter),Nn.sceneGraph=s$1,l$1.rootNodes=[s$1]}});let n$2=null,o$1=null;r$2.on.getInspectorState(l$1=>{var s$1;if(l$1.inspectorId===X$1){let[a$2]=t.scene.value.getObjectsByProperty(`uuid`,l$1.nodeId);if(!a$2)return;if(o$1&&n$2&&n$2.parent&&o$1.remove(n$2),a$2.isMesh){let c$4=on(a$2);a$2.add(c$4),n$2=c$4,o$1=a$2}l$1.state={object:Object.entries(a$2).map(([c$4,i$1])=>c$4===`children`?{key:c$4,value:i$1.filter(f$3=>f$3.type!==`HightlightMesh`)}:{key:c$4,value:i$1,editable:!0}).filter(({key:c$4})=>c$4!==`parent`)},a$2.isScene&&(l$1.state={...l$1.state,state:[{key:`Scene Info`,value:{objects:a$2.children.length,memory:Le(a$2),calls:t.renderer.value.info.render.calls,triangles:t.renderer.value.info.render.triangles,points:t.renderer.value.info.render.points,lines:t.renderer.value.info.render.lines}},{key:`Programs`,value:(s$1=t.renderer.value.info.programs)?.map(c$4=>({...c$4,programName:c$4.name}))||[]}]})}}),r$2.on.editInspectorState(l$1=>{l$1.inspectorId===X$1&&nn(t.scene.value,l$1.nodeId,l$1.path,l$1.state.value)})})}const Gn=[`data-scene`,`data-tres`],Vn=defineComponent({__name:`TresCanvas`,props:{shadows:{type:Boolean,default:void 0},clearColor:{},toneMapping:{},shadowMapType:{},useLegacyLights:{type:Boolean,default:void 0},outputColorSpace:{},toneMappingExposure:{},renderMode:{default:`always`},dpr:{},camera:{},preset:{},windowSize:{type:Boolean,default:void 0},enableProvideBridge:{type:Boolean,default:!0},context:{},alpha:{type:Boolean,default:void 0},premultipliedAlpha:{type:Boolean},antialias:{type:Boolean,default:void 0},stencil:{type:Boolean,default:void 0},preserveDrawingBuffer:{type:Boolean,default:void 0},powerPreference:{},depth:{type:Boolean,default:void 0},failIfMajorPerformanceCaveat:{type:Boolean,default:void 0},precision:{},logarithmicDepthBuffer:{type:Boolean,default:void 0},reverseDepthBuffer:{type:Boolean}},emits:[`render`,`click`,`double-click`,`context-menu`,`pointer-move`,`pointer-up`,`pointer-down`,`pointer-enter`,`pointer-leave`,`pointer-over`,`pointer-out`,`pointer-missed`,`wheel`,`ready`],setup(e$3,{expose:t,emit:r$2}){let n$2=e$3,o$1=r$2,l$1=useSlots(),s$1=ref(),a$2=shallowRef(new Scene),c$4=getCurrentInstance();Ee$1(three_module_exports);let i$1=(d$2,y$2=!1)=>defineComponent({setup(){var C$3;let p$5=(C$3=getCurrentInstance())?.appContext;p$5&&(p$5.app=c$4?.appContext.app);let h$3={};function P$1(b$3){b$3&&(b$3.parent&&P$1(b$3.parent),b$3.provides&&Object.assign(h$3,b$3.provides))}return c$4!=null&&c$4.parent&&n$2.enableProvideBridge&&(P$1(c$4.parent),Reflect.ownKeys(h$3).forEach(b$3=>{provide(b$3,h$3[b$3])})),provide(`useTres`,d$2),provide(`extend`,Ee$1),typeof window<`u`&&zn(p$5?.app,d$2),()=>h(Fragment,null,y$2?[]:l$1.default())}}),f$3=(d$2,y$2=!1)=>{let p$5=i$1(d$2,y$2),{render:h$3}=createRenderer(Rn(d$2));h$3(h(p$5),a$2.value)},v$1=(d$2,y$2=!1)=>{vt$2(d$2.scene.value),y$2&&(d$2.renderer.value.dispose(),d$2.renderer.value.renderLists.dispose(),d$2.renderer.value.forceContextLoss()),a$2.value.__tres={root:d$2}},u$1=shallowRef(null);t({context:u$1,dispose:()=>v$1(u$1.value,!0)});let _$2=()=>{v$1(u$1.value),f$3(u$1.value,!0)};return onMounted(()=>{let d$2=s$1;u$1.value=An({scene:a$2.value,canvas:d$2,windowSize:n$2.windowSize??!1,rendererOptions:n$2,emit:o$1});let{registerCamera:y$2,camera:p$5,cameras:h$3,deregisterCamera:P$1}=u$1.value;f$3(u$1.value);let C$3=()=>{let b$3=new PerspectiveCamera(45,window.innerWidth/window.innerHeight,.1,1e3);b$3.position.set(3,3,3),b$3.lookAt(0,0,0),y$2(b$3);let E$2=watchEffect(()=>{h$3.value.length>=2&&(b$3.removeFromParent(),P$1(b$3),E$2?.())})};watch(()=>n$2.camera,(b$3,E$2)=>{b$3&&y$2(b$3),E$2&&(E$2.removeFromParent(),P$1(E$2))},{immediate:!0}),p$5.value||C$3()}),onUnmounted(_$2),(d$2,y$2)=>(openBlock(),createElementBlock(`canvas`,{ref_key:`canvas`,ref:s$1,"data-scene":a$2.value.uuid,class:normalizeClass(d$2.$attrs.class),"data-tres":`tresjs ${unref(jr).version}`,style:normalizeStyle({display:`block`,width:`100%`,height:`100%`,position:d$2.windowSize?`fixed`:`relative`,top:0,left:0,pointerEvents:`auto`,touchAction:`none`,...d$2.$attrs.style})},null,14,Gn))}}),Yn=[`TresCanvas`,`TresLeches`,`TresScene`],co={template:{compilerOptions:{isCustomElement:e$3=>e$3.startsWith(`Tres`)&&!Yn.includes(e$3)||e$3===`primitive`}}},{logWarning:qn}=Q$2();var St$2=class extends Line{constructor(t,r$2){let n$2=[1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],o$1=new BufferGeometry;o$1.setAttribute(`position`,new Float32BufferAttribute(n$2,3)),o$1.computeBoundingSphere();let l$1=new LineBasicMaterial({fog:!1});super(o$1,l$1),this.light=t,this.color=r$2,this.type=`RectAreaLightHelper`;let s$1=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],a$2=new BufferGeometry;a$2.setAttribute(`position`,new Float32BufferAttribute(s$1,3)),a$2.computeBoundingSphere(),this.add(new Mesh(a$2,new MeshBasicMaterial({side:BackSide,fog:!1})))}updateMatrixWorld(){if(this.scale.set(.5*this.light.width,.5*this.light.height,1),this.color!==void 0)this.material.color.set(this.color),this.children[0].material.color.set(this.color);else{this.material.color.copy(this.light.color).multiplyScalar(this.light.intensity);let t=this.material.color,r$2=Math.max(t.r,t.g,t.b);r$2>1&&t.multiplyScalar(1/r$2),this.children[0].material.color.copy(this.material.color)}this.matrixWorld.extractRotation(this.light.matrixWorld).scale(this.scale).copyPosition(this.light.matrixWorld),this.children[0].matrixWorld.copy(this.matrixWorld)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}};const{logWarning:nt$1}=Q$2();let se,F$1;const Kn={DirectionalLight:DirectionalLightHelper,PointLight:PointLightHelper,SpotLight:SpotLightHelper,HemisphereLight:HemisphereLightHelper,RectAreaLight:St$2},fo={mounted:e$3=>{if(!e$3.isLight){nt$1(`${e$3.type} is not a light`);return}se=Kn[e$3.type],e$3.parent.add(new se(e$3,1,e$3.color.getHex()))},updated:e$3=>{F$1=e$3.parent.children.find(t=>t instanceof se),!(F$1 instanceof St$2)&&F$1.update()},unmounted:e$3=>{if(!e$3.isLight){nt$1(`${e$3.type} is not a light`);return}F$1=e$3.parent.children.find(t=>t instanceof se),F$1&&F$1.dispose&&F$1.dispose(),e$3.parent&&e$3.parent.remove(F$1)}},po={mounted:(e$3,t)=>{if(t.arg){console.log(`v-log:${t.arg}`,e$3[t.arg]);return}console.log(`v-log`,e$3)}},mo={install(e$3){e$3.component(`TresCanvas`,Vn)}};var require_nprogress=__commonJSMin((exports,module)=>{(function(root$3,factory){typeof define==`function`&&define.amd?define(factory):typeof exports==`object`?module.exports=factory():root$3.NProgress=factory()})(void 0,function(){var NProgress$1={};NProgress$1.version=`0.2.0`;var Settings=NProgress$1.settings={minimum:.08,easing:`ease`,positionUsing:``,speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:`[role="bar"]`,spinnerSelector:`[role="spinner"]`,parent:`body`,template:`
`};NProgress$1.configure=function(options$1){var key$1,value$1;for(key$1 in options$1)value$1=options$1[key$1],value$1!==void 0&&options$1.hasOwnProperty(key$1)&&(Settings[key$1]=value$1);return this},NProgress$1.status=null,NProgress$1.set=function(n$2){var started=NProgress$1.isStarted();n$2=clamp$7(n$2,Settings.minimum,1),NProgress$1.status=n$2===1?null:n$2;var progress$1=NProgress$1.render(!started),bar=progress$1.querySelector(Settings.barSelector),speed=Settings.speed,ease=Settings.easing;return progress$1.offsetWidth,queue$1(function(next){Settings.positionUsing===``&&(Settings.positionUsing=NProgress$1.getPositioningCSS()),css(bar,barPositionCSS(n$2,speed,ease)),n$2===1?(css(progress$1,{transition:`none`,opacity:1}),progress$1.offsetWidth,setTimeout(function(){css(progress$1,{transition:`all `+speed+`ms linear`,opacity:0}),setTimeout(function(){NProgress$1.remove(),next()},speed)},speed)):setTimeout(next,speed)}),this},NProgress$1.isStarted=function(){return typeof NProgress$1.status==`number`},NProgress$1.start=function(){NProgress$1.status||NProgress$1.set(0);var work=function(){setTimeout(function(){NProgress$1.status&&(NProgress$1.trickle(),work())},Settings.trickleSpeed)};return Settings.trickle&&work(),this},NProgress$1.done=function(force){return!force&&!NProgress$1.status?this:NProgress$1.inc(.3+.5*Math.random()).set(1)},NProgress$1.inc=function(amount){var n$2=NProgress$1.status;return n$2?(typeof amount!=`number`&&(amount=(1-n$2)*clamp$7(Math.random()*n$2,.1,.95)),n$2=clamp$7(n$2+amount,0,.994),NProgress$1.set(n$2)):NProgress$1.start()},NProgress$1.trickle=function(){return NProgress$1.inc(Math.random()*Settings.trickleRate)},function(){var initial=0,current=0;NProgress$1.promise=function($promise){return!$promise||$promise.state()===`resolved`?this:(current===0&&NProgress$1.start(),initial++,current++,$promise.always(function(){current--,current===0?(initial=0,NProgress$1.done()):NProgress$1.set((initial-current)/initial)}),this)}}(),NProgress$1.render=function(fromStart){if(NProgress$1.isRendered())return document.getElementById(`nprogress`);addClass(document.documentElement,`nprogress-busy`);var progress$1=document.createElement(`div`);progress$1.id=`nprogress`,progress$1.innerHTML=Settings.template;var bar=progress$1.querySelector(Settings.barSelector),perc=fromStart?`-100`:toBarPerc(NProgress$1.status||0),parent=document.querySelector(Settings.parent),spinner;return css(bar,{transition:`all 0 linear`,transform:`translate3d(`+perc+`%,0,0)`}),Settings.showSpinner||(spinner=progress$1.querySelector(Settings.spinnerSelector),spinner&&removeElement(spinner)),parent!=document.body&&addClass(parent,`nprogress-custom-parent`),parent.appendChild(progress$1),progress$1},NProgress$1.remove=function(){removeClass(document.documentElement,`nprogress-busy`),removeClass(document.querySelector(Settings.parent),`nprogress-custom-parent`);var progress$1=document.getElementById(`nprogress`);progress$1&&removeElement(progress$1)},NProgress$1.isRendered=function(){return!!document.getElementById(`nprogress`)},NProgress$1.getPositioningCSS=function(){var bodyStyle=document.body.style,vendorPrefix=`WebkitTransform`in bodyStyle?`Webkit`:`MozTransform`in bodyStyle?`Moz`:`msTransform`in bodyStyle?`ms`:`OTransform`in bodyStyle?`O`:``;return vendorPrefix+`Perspective`in bodyStyle?`translate3d`:vendorPrefix+`Transform`in bodyStyle?`translate`:`margin`};function clamp$7(n$2,min$1,max$1){return n$2max$1?max$1:n$2}function toBarPerc(n$2){return(-1+n$2)*100}function barPositionCSS(n$2,speed,ease){var barCSS;return barCSS=Settings.positionUsing===`translate3d`?{transform:`translate3d(`+toBarPerc(n$2)+`%,0,0)`}:Settings.positionUsing===`translate`?{transform:`translate(`+toBarPerc(n$2)+`%,0)`}:{"margin-left":toBarPerc(n$2)+`%`},barCSS.transition=`all `+speed+`ms `+ease,barCSS}var queue$1=function(){var pending=[];function next(){var fn$5=pending.shift();fn$5&&fn$5(next)}return function(fn$5){pending.push(fn$5),pending.length==1&&next()}}(),css=function(){var cssPrefixes=[`Webkit`,`O`,`Moz`,`ms`],cssProps={};function camelCase(string$2){return string$2.replace(/^-ms-/,`ms-`).replace(/-([\da-z])/gi,function(match,letter){return letter.toUpperCase()})}function getVendorProp(name$2){var style=document.body.style;if(name$2 in style)return name$2;for(var i$1=cssPrefixes.length,capName=name$2.charAt(0).toUpperCase()+name$2.slice(1),vendorName;i$1--;)if(vendorName=cssPrefixes[i$1]+capName,vendorName in style)return vendorName;return name$2}function getStyleProp(name$2){return name$2=camelCase(name$2),cssProps[name$2]||(cssProps[name$2]=getVendorProp(name$2))}function applyCss(element$3,prop,value$1){prop=getStyleProp(prop),element$3.style[prop]=value$1}return function(element$3,properties){var args=arguments,prop,value$1;if(args.length==2)for(prop in properties)value$1=properties[prop],value$1!==void 0&&properties.hasOwnProperty(prop)&&applyCss(element$3,prop,value$1);else applyCss(element$3,args[1],args[2])}}();function hasClass(element$3,name$2){var list$2=typeof element$3==`string`?element$3:classList(element$3);return list$2.indexOf(` `+name$2+` `)>=0}function addClass(element$3,name$2){var oldList=classList(element$3),newList=oldList+name$2;hasClass(oldList,name$2)||(element$3.className=newList.substring(1))}function removeClass(element$3,name$2){var oldList=classList(element$3),newList;hasClass(element$3,name$2)&&(newList=oldList.replace(` `+name$2+` `,` `),element$3.className=newList.substring(1,newList.length-1))}function classList(element$3){return(` `+(element$3.className||``)+` `).replace(/\s+/gi,` `)}function removeElement(element$3){element$3&&element$3.parentNode&&element$3.parentNode.removeChild(element$3)}return NProgress$1})});const parents=new Set,coords=new WeakMap,siblings$1=new WeakMap,animations=new WeakMap,intersections=new WeakMap,intervals=new WeakMap,options=new WeakMap,debounces=new WeakMap,enabled=new WeakSet;let root$2,scrollX=0,scrollY=0;const TGT=`__aa_tgt`,DEL=`__aa_del`,NEW=`__aa_new`,handleMutations=mutations$1=>{let elements=getElements(mutations$1);elements&&elements.forEach(el=>animate$1(el))},handleResizes=entries=>{entries.forEach(entry=>{entry.target===root$2&&updateAllPos(),coords.has(entry.target)&&updatePos(entry.target)})};function observePosition(el){let oldObserver=intersections.get(el);oldObserver?.disconnect();let rect=coords.get(el),invocations=0,buffer$1=5;rect||(rect=getCoords(el),coords.set(el,rect));let{offsetWidth,offsetHeight}=root$2,rootMargins=[rect.top-buffer$1,offsetWidth-(rect.left+buffer$1+rect.width),offsetHeight-(rect.top+buffer$1+rect.height),rect.left-buffer$1],rootMargin=rootMargins.map(px$2=>`${-1*Math.floor(px$2)}px`).join(` `),observer=new IntersectionObserver(()=>{++invocations>1&&updatePos(el)},{root:root$2,threshold:1,rootMargin});observer.observe(el),intersections.set(el,observer)}function updatePos(el){clearTimeout(debounces.get(el));let optionsOrPlugin=getOptions(el),delay=isPlugin(optionsOrPlugin)?500:optionsOrPlugin.duration;debounces.set(el,setTimeout(async()=>{let currentAnimation=animations.get(el);try{await currentAnimation?.finished,coords.set(el,getCoords(el)),observePosition(el)}catch{}},delay))}function updateAllPos(){clearTimeout(debounces.get(root$2)),debounces.set(root$2,setTimeout(()=>{parents.forEach(parent=>forEach(parent,el=>lowPriority(()=>updatePos(el))))},100))}function poll(el){setTimeout(()=>{intervals.set(el,setInterval(()=>lowPriority(updatePos.bind(null,el)),2e3))},Math.round(2e3*Math.random()))}function lowPriority(callback){typeof requestIdleCallback==`function`?requestIdleCallback(()=>callback()):requestAnimationFrame(()=>callback())}let mutations,resize;const supportedBrowser=typeof window<`u`&&`ResizeObserver`in window;supportedBrowser&&(root$2=document.documentElement,mutations=new MutationObserver(handleMutations),resize=new ResizeObserver(handleResizes),window.addEventListener(`scroll`,()=>{scrollY=window.scrollY,scrollX=window.scrollX}),resize.observe(root$2));function getElements(mutations$1){let observedNodes=mutations$1.reduce((nodes,mutation)=>[...nodes,...Array.from(mutation.addedNodes),...Array.from(mutation.removedNodes)],[]),onlyCommentNodesObserved=observedNodes.every(node$1=>node$1.nodeName===`#comment`);return onlyCommentNodesObserved?!1:mutations$1.reduce((elements,mutation)=>{if(elements===!1)return!1;if(mutation.target instanceof Element){if(target(mutation.target),!elements.has(mutation.target)){elements.add(mutation.target);for(let i$1=0;i$1callback(parent,options.has(parent)));for(let i$1=0;i$1callback(child,options.has(child)))}}function getPluginTuple(pluginReturn){return Array.isArray(pluginReturn)?pluginReturn:[pluginReturn]}function isPlugin(config){return typeof config==`function`}function remain(el){let oldCoords=coords.get(el),newCoords=getCoords(el);if(!isEnabled(el))return coords.set(el,newCoords);let animation;if(!oldCoords)return;let pluginOrOptions=getOptions(el);if(typeof pluginOrOptions!=`function`){let deltaX=oldCoords.left-newCoords.left,deltaY=oldCoords.top-newCoords.top,[widthFrom,widthTo,heightFrom,heightTo]=getTransitionSizes(el,oldCoords,newCoords),start={transform:`translate(${deltaX}px, ${deltaY}px)`},end={transform:`translate(0, 0)`};widthFrom!==widthTo&&(start.width=`${widthFrom}px`,end.width=`${widthTo}px`),heightFrom!==heightTo&&(start.height=`${heightFrom}px`,end.height=`${heightTo}px`),animation=el.animate([start,end],{duration:pluginOrOptions.duration,easing:pluginOrOptions.easing})}else{let[keyframes$3]=getPluginTuple(pluginOrOptions(el,`remain`,oldCoords,newCoords));animation=new Animation(keyframes$3),animation.play()}animations.set(el,animation),coords.set(el,newCoords),animation.addEventListener(`finish`,updatePos.bind(null,el))}function add(el){NEW in el&&delete el[NEW];let newCoords=getCoords(el);coords.set(el,newCoords);let pluginOrOptions=getOptions(el);if(!isEnabled(el))return;let animation;if(typeof pluginOrOptions!=`function`)animation=el.animate([{transform:`scale(.98)`,opacity:0},{transform:`scale(0.98)`,opacity:0,offset:.5},{transform:`scale(1)`,opacity:1}],{duration:pluginOrOptions.duration*1.5,easing:`ease-in`});else{let[keyframes$3]=getPluginTuple(pluginOrOptions(el,`add`,newCoords));animation=new Animation(keyframes$3),animation.play()}animations.set(el,animation),animation.addEventListener(`finish`,updatePos.bind(null,el))}function cleanUp(el,styles){var _a$2;el.remove(),coords.delete(el),siblings$1.delete(el),animations.delete(el),(_a$2=intersections.get(el))==null||_a$2.disconnect(),setTimeout(()=>{if(DEL in el&&delete el[DEL],Object.defineProperty(el,NEW,{value:!0,configurable:!0}),styles&&el instanceof HTMLElement)for(let style in styles)el.style[style]=``},0)}function remove(el){var _a$2;if(!siblings$1.has(el)||!coords.has(el))return;let[prev,next]=siblings$1.get(el);Object.defineProperty(el,DEL,{value:!0,configurable:!0});let finalX=window.scrollX,finalY=window.scrollY;if(next&&next.parentNode&&next.parentNode instanceof Element?next.parentNode.insertBefore(el,next):prev&&prev.parentNode?prev.parentNode.appendChild(el):(_a$2=getTarget(el))==null||_a$2.appendChild(el),!isEnabled(el))return cleanUp(el);let[top,left,width,height]=deletePosition(el),optionsOrPlugin=getOptions(el),oldCoords=coords.get(el);(finalX!==scrollX||finalY!==scrollY)&&adjustScroll(el,finalX,finalY,optionsOrPlugin);let animation,styleReset={position:`absolute`,top:`${top}px`,left:`${left}px`,width:`${width}px`,height:`${height}px`,margin:`0`,pointerEvents:`none`,transformOrigin:`center`,zIndex:`100`};if(!isPlugin(optionsOrPlugin))Object.assign(el.style,styleReset),animation=el.animate([{transform:`scale(1)`,opacity:1},{transform:`scale(.98)`,opacity:0}],{duration:optionsOrPlugin.duration,easing:`ease-out`});else{let[keyframes$3,options$1]=getPluginTuple(optionsOrPlugin(el,`remove`,oldCoords));options$1?.styleReset!==!1&&(styleReset=options$1?.styleReset||styleReset,Object.assign(el.style,styleReset)),animation=new Animation(keyframes$3),animation.play()}animations.set(el,animation),animation.addEventListener(`finish`,cleanUp.bind(null,el,styleReset))}function adjustScroll(el,finalX,finalY,optionsOrPlugin){let scrollDeltaX=scrollX-finalX,scrollDeltaY=scrollY-finalY,scrollBefore=document.documentElement.style.scrollBehavior,scrollBehavior=getComputedStyle(root$2).scrollBehavior;if(scrollBehavior===`smooth`&&(document.documentElement.style.scrollBehavior=`auto`),window.scrollTo(window.scrollX+scrollDeltaX,window.scrollY+scrollDeltaY),!el.parentElement)return;let parent=el.parentElement,lastHeight=parent.clientHeight,lastWidth=parent.clientWidth,startScroll=performance.now();function smoothScroll(){requestAnimationFrame(()=>{if(!isPlugin(optionsOrPlugin)){let deltaY=lastHeight-parent.clientHeight,deltaX=lastWidth-parent.clientWidth;startScroll+optionsOrPlugin.duration>performance.now()?(window.scrollTo({left:window.scrollX-deltaX,top:window.scrollY-deltaY}),lastHeight=parent.clientHeight,lastWidth=parent.clientWidth,smoothScroll()):document.documentElement.style.scrollBehavior=scrollBefore}})}smoothScroll()}function deletePosition(el){let oldCoords=coords.get(el),[width,,height]=getTransitionSizes(el,oldCoords,getCoords(el)),offsetParent=el.parentElement;for(;offsetParent&&(getComputedStyle(offsetParent).position===`static`||offsetParent instanceof HTMLBodyElement);)offsetParent=offsetParent.parentElement;offsetParent||=document.body;let parentStyles=getComputedStyle(offsetParent),parentCoords=coords.get(offsetParent)||getCoords(offsetParent),top=Math.round(oldCoords.top-parentCoords.top)-raw$2(parentStyles.borderTopWidth),left=Math.round(oldCoords.left-parentCoords.left)-raw$2(parentStyles.borderLeftWidth);return[top,left,width,height]}function autoAnimate(el,config={}){if(mutations&&resize){let mediaQuery=window.matchMedia(`(prefers-reduced-motion: reduce)`),isDisabledDueToReduceMotion=mediaQuery.matches&&!isPlugin(config)&&!config.disrespectUserMotionPreference;isDisabledDueToReduceMotion||(enabled.add(el),getComputedStyle(el).position===`static`&&Object.assign(el.style,{position:`relative`}),forEach(el,updatePos,poll,element$3=>resize?.observe(element$3)),isPlugin(config)?options.set(el,config):options.set(el,{duration:250,easing:`ease-in-out`,...config}),mutations.observe(el,{childList:!0}),parents.add(el))}return Object.freeze({parent:el,enable:()=>{enabled.add(el)},disable:()=>{enabled.delete(el)},isEnabled:()=>enabled.has(el)})}const vAutoAnimate={mounted:(el,binding)=>{autoAnimate(el,binding.value||{})},getSSRProps:()=>({})},vAutoAnimate$1=vAutoAnimate,autoAnimatePlugin={install(app){app.directive(`auto-animate`,vAutoAnimate$1)}};function isPlainObject$5(value$1){if(typeof value$1!=`object`||!value$1)return!1;let prototype=Object.getPrototypeOf(value$1);return prototype!==null&&prototype!==Object.prototype&&Object.getPrototypeOf(prototype)!==null||Symbol.iterator in value$1?!1:Symbol.toStringTag in value$1?Object.prototype.toString.call(value$1)===`[object Module]`:!0}function _defu(baseObject,defaults,namespace=`.`,merger){if(!isPlainObject$5(defaults))return _defu(baseObject,{},namespace,merger);let object=Object.assign({},defaults);for(let key$1 in baseObject){if(key$1===`__proto__`||key$1===`constructor`)continue;let value$1=baseObject[key$1];if(value$1==null||merger&&merger(object,key$1,value$1,namespace))continue;Array.isArray(value$1)&&Array.isArray(object[key$1])?object[key$1]=[...value$1,...object[key$1]]:isPlainObject$5(value$1)&&isPlainObject$5(object[key$1])?object[key$1]=_defu(value$1,object[key$1],(namespace?`${namespace}.`:``)+key$1.toString(),merger):object[key$1]=value$1}return object}function createDefu(merger){return(...arguments_)=>arguments_.reduce((p$5,c$4)=>_defu(p$5,c$4,``,merger),{})}const defu=createDefu(),defuFn=createDefu((object,key$1,currentValue)=>{if(object[key$1]!==void 0&&typeof currentValue==`function`)return object[key$1]=currentValue(object[key$1]),!0}),defuArrayFn=createDefu((object,key$1,currentValue)=>{if(Array.isArray(object[key$1])&&typeof currentValue==`function`)return object[key$1]=currentValue(object[key$1]),!0});function tryOnScopeDispose(fn$5){return getCurrentScope()?(onScopeDispose(fn$5),!0):!1}function createEventHook(){let fns=new Set,off=fn$5=>{fns.delete(fn$5)},clear=()=>{fns.clear()},on$1=fn$5=>{fns.add(fn$5);let offFn=()=>off(fn$5);return tryOnScopeDispose(offFn),{off:offFn}},trigger$1=(...args)=>Promise.all(Array.from(fns).map(fn$5=>fn$5(...args)));return{on:on$1,off,trigger:trigger$1,clear}}const localProvidedStateMap=new WeakMap,injectLocal=(...args)=>{var _a$2;let key$1=args[0],instance=(_a$2=getCurrentInstance())?.proxy;if(instance==null&&!hasInjectionContext())throw Error(`injectLocal must be called in setup`);return instance&&localProvidedStateMap.has(instance)&&key$1 in localProvidedStateMap.get(instance)?localProvidedStateMap.get(instance)[key$1]:inject(...args)},isClient$2=typeof window<`u`&&typeof document<`u`,isWorker=typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope,notNullish=val=>val!=null,toString$2=Object.prototype.toString,isObject$1=val=>toString$2.call(val)===`[object Object]`,noop$2=()=>{},hasOwn$2=(val,key$1)=>Object.prototype.hasOwnProperty.call(val,key$1);function toRef$1(...args){if(args.length!==1)return toRef(...args);let r$2=args[0];return typeof r$2==`function`?readonly(customRef(()=>({get:r$2,set:noop$2}))):ref(r$2)}function createFilterWrapper(filter$1,fn$5){function wrapper(...args){return new Promise((resolve$1,reject)=>{Promise.resolve(filter$1(()=>fn$5.apply(this,args),{fn:fn$5,thisArg:this,args})).then(resolve$1).catch(reject)})}return wrapper}const bypassFilter=invoke$1=>invoke$1();function debounceFilter(ms,options$1={}){let timer,maxTimer,lastRejector=noop$2,_clearTimeout=timer2=>{clearTimeout(timer2),lastRejector(),lastRejector=noop$2},lastInvoker,filter$1=invoke$1=>{let duration=toValue$1(ms),maxDuration$1=toValue$1(options$1.maxWait);return timer&&_clearTimeout(timer),duration<=0||maxDuration$1!==void 0&&maxDuration$1<=0?(maxTimer&&(_clearTimeout(maxTimer),maxTimer=void 0),Promise.resolve(invoke$1())):new Promise((resolve$1,reject)=>{lastRejector=options$1.rejectOnCancel?reject:resolve$1,lastInvoker=invoke$1,maxDuration$1&&!maxTimer&&(maxTimer=setTimeout(()=>{timer&&_clearTimeout(timer),maxTimer=void 0,resolve$1(lastInvoker())},maxDuration$1)),timer=setTimeout(()=>{maxTimer&&_clearTimeout(maxTimer),maxTimer=void 0,resolve$1(invoke$1())},duration)})};return filter$1}function throttleFilter(...args){let lastExec=0,timer,isLeading=!0,lastRejector=noop$2,lastValue,ms,trailing,leading,rejectOnCancel;!isRef(args[0])&&typeof args[0]==`object`?{delay:ms,trailing=!0,leading=!0,rejectOnCancel=!1}=args[0]:[ms,trailing=!0,leading=!0,rejectOnCancel=!1]=args;let clear=()=>{timer&&(clearTimeout(timer),timer=void 0,lastRejector(),lastRejector=noop$2)},filter$1=_invoke=>{let duration=toValue$1(ms),elapsed=Date.now()-lastExec,invoke$1=()=>lastValue=_invoke();return clear(),duration<=0?(lastExec=Date.now(),invoke$1()):(elapsed>duration&&(leading||!isLeading)?(lastExec=Date.now(),invoke$1()):trailing&&(lastValue=new Promise((resolve$1,reject)=>{lastRejector=rejectOnCancel?reject:resolve$1,timer=setTimeout(()=>{lastExec=Date.now(),isLeading=!0,resolve$1(invoke$1()),clear()},Math.max(0,duration-elapsed))})),!leading&&!timer&&(timer=setTimeout(()=>isLeading=!0,duration)),isLeading=!1,lastValue)};return filter$1}function pausableFilter(extendFilter=bypassFilter,options$1={}){let{initialState=`active`}=options$1,isActive=toRef$1(initialState===`active`);function pause(){isActive.value=!1}function resume(){isActive.value=!0}let eventFilter=(...args)=>{isActive.value&&extendFilter(...args)};return{isActive:readonly(isActive),pause,resume,eventFilter}}function promiseTimeout(ms,throwOnTimeout=!1,reason=`Timeout`){return new Promise((resolve$1,reject)=>{throwOnTimeout?setTimeout(()=>reject(reason),ms):setTimeout(resolve$1,ms)})}function createSingletonPromise(fn$5){let _promise;function wrapper(){return _promise||=fn$5(),_promise}return wrapper.reset=async()=>{let _prev=_promise;_promise=void 0,_prev&&await _prev},wrapper}function increaseWithUnit(target$1,delta){var _a$2;if(typeof target$1==`number`)return target$1+delta;let value$1=(_a$2=target$1.match(/^-?\d+\.?\d*/))?.[0]||``,unit=target$1.slice(value$1.length),result=Number.parseFloat(value$1)+delta;return Number.isNaN(result)?target$1:result+unit}function pxValue(px$2){return px$2.endsWith(`rem`)?Number.parseFloat(px$2)*16:Number.parseFloat(px$2)}function objectPick(obj,keys$3,omitUndefined=!1){return keys$3.reduce((n$2,k$4)=>(k$4 in obj&&(!omitUndefined||obj[k$4]!==void 0)&&(n$2[k$4]=obj[k$4]),n$2),{})}function toArray(value$1){return Array.isArray(value$1)?value$1:[value$1]}function cacheStringFunction(fn$5){let cache$1=Object.create(null);return str=>{let hit=cache$1[str];return hit||(cache$1[str]=fn$5(str))}}const hyphenateRE=/\B([A-Z])/g,hyphenate=cacheStringFunction(str=>str.replace(hyphenateRE,`-$1`).toLowerCase()),camelizeRE=/-(\w)/g,camelize$1=cacheStringFunction(str=>str.replace(camelizeRE,(_$2,c$4)=>c$4?c$4.toUpperCase():``));function getLifeCycleTarget(target$1){return target$1||getCurrentInstance()}function useDebounceFn(fn$5,ms=200,options$1={}){return createFilterWrapper(debounceFilter(ms,options$1),fn$5)}function refDebounced(value$1,ms=200,options$1={}){let debounced=ref(toValue$1(value$1)),updater=useDebounceFn(()=>{debounced.value=value$1.value},ms,options$1);return watch(value$1,()=>updater()),shallowReadonly(debounced)}function useThrottleFn(fn$5,ms=200,trailing=!1,leading=!0,rejectOnCancel=!1){return createFilterWrapper(throttleFilter(ms,trailing,leading,rejectOnCancel),fn$5)}function refThrottled(value$1,delay=200,trailing=!0,leading=!0){if(delay<=0)return value$1;let throttled=ref(toValue$1(value$1)),updater=useThrottleFn(()=>{throttled.value=value$1.value},delay,trailing,leading);return watch(value$1,()=>updater()),throttled}function watchWithFilter(source,cb$1,options$1={}){let{eventFilter=bypassFilter,...watchOptions}=options$1;return watch(source,createFilterWrapper(eventFilter,cb$1),watchOptions)}function watchPausable(source,cb$1,options$1={}){let{eventFilter:filter$1,initialState=`active`,...watchOptions}=options$1,{eventFilter,pause,resume,isActive}=pausableFilter(filter$1,{initialState}),stop$1=watchWithFilter(source,cb$1,{...watchOptions,eventFilter});return{stop:stop$1,pause,resume,isActive}}function toRefs$1(objectRef,options$1={}){if(!isRef(objectRef))return toRefs(objectRef);let result=Array.isArray(objectRef.value)?Array.from({length:objectRef.value.length}):{};for(let key$1 in objectRef.value)result[key$1]=customRef(()=>({get(){return objectRef.value[key$1]},set(v$1){var _a$2;let replaceRef=(_a$2=toValue$1(options$1.replaceRef))??!0;if(replaceRef)if(Array.isArray(objectRef.value)){let copy=[...objectRef.value];copy[key$1]=v$1,objectRef.value=copy}else{let newObject={...objectRef.value,[key$1]:v$1};Object.setPrototypeOf(newObject,Object.getPrototypeOf(objectRef.value)),objectRef.value=newObject}else objectRef.value[key$1]=v$1}}));return result}function tryOnMounted(fn$5,sync$1=!0,target$1){let instance=getLifeCycleTarget(target$1);instance?onMounted(fn$5,target$1):sync$1?fn$5():nextTick(fn$5)}function tryOnUnmounted(fn$5,target$1){let instance=getLifeCycleTarget(target$1);instance&&onUnmounted(fn$5,target$1)}function createUntil(r$2,isNot=!1){function toMatch(condition,{flush=`sync`,deep=!1,timeout,throwOnTimeout}={}){let stop$1=null,watcher=new Promise(resolve$1=>{stop$1=watch(r$2,v$1=>{condition(v$1)!==isNot&&(stop$1?stop$1():nextTick(()=>stop$1?.()),resolve$1(v$1))},{flush,deep,immediate:!0})}),promises=[watcher];return timeout!=null&&promises.push(promiseTimeout(timeout,throwOnTimeout).then(()=>toValue$1(r$2)).finally(()=>stop$1?.())),Promise.race(promises)}function toBe(value$1,options$1){if(!isRef(value$1))return toMatch(v$1=>v$1===value$1,options$1);let{flush=`sync`,deep=!1,timeout,throwOnTimeout}=options$1??{},stop$1=null,watcher=new Promise(resolve$1=>{stop$1=watch([r$2,value$1],([v1,v2])=>{isNot!==(v1===v2)&&(stop$1?stop$1():nextTick(()=>stop$1?.()),resolve$1(v1))},{flush,deep,immediate:!0})}),promises=[watcher];return timeout!=null&&promises.push(promiseTimeout(timeout,throwOnTimeout).then(()=>toValue$1(r$2)).finally(()=>(stop$1?.(),toValue$1(r$2)))),Promise.race(promises)}function toBeTruthy(options$1){return toMatch(v$1=>!!v$1,options$1)}function toBeNull(options$1){return toBe(null,options$1)}function toBeUndefined(options$1){return toBe(void 0,options$1)}function toBeNaN(options$1){return toMatch(Number.isNaN,options$1)}function toContains(value$1,options$1){return toMatch(v$1=>{let array=Array.from(v$1);return array.includes(value$1)||array.includes(toValue$1(value$1))},options$1)}function changed(options$1){return changedTimes(1,options$1)}function changedTimes(n$2=1,options$1){let count$1=-1;return toMatch(()=>(count$1+=1,count$1>=n$2),options$1)}if(Array.isArray(toValue$1(r$2))){let instance={toMatch,toContains,changed,changedTimes,get not(){return createUntil(r$2,!isNot)}};return instance}else{let instance={toMatch,toBe,toBeTruthy,toBeNull,toBeNaN,toBeUndefined,changed,changedTimes,get not(){return createUntil(r$2,!isNot)}};return instance}}function until(r$2){return createUntil(r$2)}function useTimeoutFn(cb$1,interval,options$1={}){let{immediate=!0,immediateCallback=!1}=options$1,isPending=shallowRef(!1),timer;function clear(){timer&&(clearTimeout(timer),timer=void 0)}function stop$1(){isPending.value=!1,clear()}function start(...args){immediateCallback&&cb$1(),clear(),isPending.value=!0,timer=setTimeout(()=>{isPending.value=!1,timer=void 0,cb$1(...args)},toValue$1(interval))}return immediate&&(isPending.value=!0,isClient$2&&start()),tryOnScopeDispose(stop$1),{isPending:shallowReadonly(isPending),start,stop:stop$1}}function watchDebounced(source,cb$1,options$1={}){let{debounce=0,maxWait=void 0,...watchOptions}=options$1;return watchWithFilter(source,cb$1,{...watchOptions,eventFilter:debounceFilter(debounce,{maxWait})})}function watchImmediate(source,cb$1,options$1){return watch(source,cb$1,{...options$1,immediate:!0})}function computedAsync(evaluationCallback,initialState,optionsOrRef){let options$1;options$1=isRef(optionsOrRef)?{evaluating:optionsOrRef}:optionsOrRef||{};let{lazy=!1,flush=`pre`,evaluating=void 0,shallow=!0,onError=noop$2}=options$1,started=shallowRef(!lazy),current=shallow?shallowRef(initialState):ref(initialState),counter=0;return watchEffect(async onInvalidate=>{if(!started.value)return;counter++;let counterAtBeginning=counter,hasFinished=!1;evaluating&&Promise.resolve().then(()=>{evaluating.value=!0});try{let result=await evaluationCallback(cancelCallback=>{onInvalidate(()=>{evaluating&&(evaluating.value=!1),hasFinished||cancelCallback()})});counterAtBeginning===counter&&(current.value=result)}catch(e$3){onError(e$3)}finally{evaluating&&counterAtBeginning===counter&&(evaluating.value=!1),hasFinished=!0}},{flush}),lazy?computed(()=>(started.value=!0,current.value)):current}const defaultWindow$1=isClient$2?window:void 0,defaultDocument=isClient$2?window.document:void 0,defaultNavigator=isClient$2?window.navigator:void 0,defaultLocation=isClient$2?window.location:void 0;function unrefElement$1(elRef){var _a$2;let plain=toValue$1(elRef);return(_a$2=plain?.$el)??plain}function useEventListener$1(...args){let cleanups=[],cleanup=()=>{cleanups.forEach(fn$5=>fn$5()),cleanups.length=0},register=(el,event,listener,options$1)=>(el.addEventListener(event,listener,options$1),()=>el.removeEventListener(event,listener,options$1)),firstParamTargets=computed(()=>{let test$1=toArray(toValue$1(args[0])).filter(e$3=>e$3!=null);return test$1.every(e$3=>typeof e$3!=`string`)?test$1:void 0}),stopWatch=watchImmediate(()=>{var _a$2,_b;return[(_b=(_a$2=firstParamTargets.value)?.map(e$3=>unrefElement$1(e$3)))??[defaultWindow$1].filter(e$3=>e$3!=null),toArray(toValue$1(firstParamTargets.value?args[1]:args[0])),toArray(unref(firstParamTargets.value?args[2]:args[1])),toValue$1(firstParamTargets.value?args[3]:args[2])]},([raw_targets,raw_events,raw_listeners,raw_options])=>{if(cleanup(),!raw_targets?.length||!raw_events?.length||!raw_listeners?.length)return;let optionsClone=isObject$1(raw_options)?{...raw_options}:raw_options;cleanups.push(...raw_targets.flatMap(el=>raw_events.flatMap(event=>raw_listeners.map(listener=>register(el,event,listener,optionsClone)))))},{flush:`post`}),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose(cleanup),stop$1}function useMounted$1(){let isMounted=shallowRef(!1),instance=getCurrentInstance();return instance&&onMounted(()=>{isMounted.value=!0},instance),isMounted}function useSupported(callback){let isMounted=useMounted$1();return computed(()=>(isMounted.value,!!callback()))}function useMutationObserver(target$1,callback,options$1={}){let{window:window$1=defaultWindow$1,...mutationOptions}=options$1,observer,isSupported=useSupported(()=>window$1&&`MutationObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let value$1=toValue$1(target$1),items=toArray(value$1).map(unrefElement$1).filter(notNullish);return new Set(items)}),stopWatch=watch(()=>targets.value,targets2=>{cleanup(),isSupported.value&&targets2.size&&(observer=new MutationObserver(callback),targets2.forEach(el=>observer.observe(el,mutationOptions)))},{immediate:!0,flush:`post`}),takeRecords=()=>observer?.takeRecords(),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose(stop$1),{isSupported,stop:stop$1,takeRecords}}const ssrWidthSymbol=Symbol(`vueuse-ssr-width`);function useSSRWidth(){let ssrWidth=hasInjectionContext()?injectLocal(ssrWidthSymbol,null):null;return typeof ssrWidth==`number`?ssrWidth:void 0}function useMediaQuery(query,options$1={}){let{window:window$1=defaultWindow$1,ssrWidth=useSSRWidth()}=options$1,isSupported=useSupported(()=>window$1&&`matchMedia`in window$1&&typeof window$1.matchMedia==`function`),ssrSupport=shallowRef(typeof ssrWidth==`number`),mediaQuery=shallowRef(),matches$1=shallowRef(!1),handler=event=>{matches$1.value=event.matches};return watchEffect(()=>{if(ssrSupport.value){ssrSupport.value=!isSupported.value;let queryStrings=toValue$1(query).split(`,`);matches$1.value=queryStrings.some(queryString=>{let not=queryString.includes(`not all`),minWidth=queryString.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),maxWidth=queryString.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),res=!!(minWidth||maxWidth);return minWidth&&res&&(res=ssrWidth>=pxValue(minWidth[1])),maxWidth&&res&&(res=ssrWidth<=pxValue(maxWidth[1])),not?!res:res});return}isSupported.value&&(mediaQuery.value=window$1.matchMedia(toValue$1(query)),matches$1.value=mediaQuery.value.matches)}),useEventListener$1(mediaQuery,`change`,handler,{passive:!0}),computed(()=>matches$1.value)}const breakpointsTailwind={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function useBreakpoints(breakpoints,options$1={}){function getValue$2(k$4,delta){let v$1=toValue$1(breakpoints[toValue$1(k$4)]);return delta!=null&&(v$1=increaseWithUnit(v$1,delta)),typeof v$1==`number`&&(v$1=`${v$1}px`),v$1}let{window:window$1=defaultWindow$1,strategy=`min-width`,ssrWidth=useSSRWidth()}=options$1,ssrSupport=typeof ssrWidth==`number`,mounted=ssrSupport?shallowRef(!1):{value:!0};ssrSupport&&tryOnMounted(()=>mounted.value=!!window$1);function match(query,size$1){return!mounted.value&&ssrSupport?query===`min`?ssrWidth>=pxValue(size$1):ssrWidth<=pxValue(size$1):window$1?window$1.matchMedia(`(${query}-width: ${size$1})`).matches:!1}let greaterOrEqual=k$4=>useMediaQuery(()=>`(min-width: ${getValue$2(k$4)})`,options$1),smallerOrEqual=k$4=>useMediaQuery(()=>`(max-width: ${getValue$2(k$4)})`,options$1),shortcutMethods=Object.keys(breakpoints).reduce((shortcuts,k$4)=>(Object.defineProperty(shortcuts,k$4,{get:()=>strategy===`min-width`?greaterOrEqual(k$4):smallerOrEqual(k$4),enumerable:!0,configurable:!0}),shortcuts),{});function current(){let points=Object.keys(breakpoints).map(k$4=>[k$4,shortcutMethods[k$4],pxValue(getValue$2(k$4))]).sort((a$2,b$3)=>a$2[2]-b$3[2]);return computed(()=>points.filter(([,v$1])=>v$1.value).map(([k$4])=>k$4))}return Object.assign(shortcutMethods,{greaterOrEqual,smallerOrEqual,greater(k$4){return useMediaQuery(()=>`(min-width: ${getValue$2(k$4,.1)})`,options$1)},smaller(k$4){return useMediaQuery(()=>`(max-width: ${getValue$2(k$4,-.1)})`,options$1)},between(a$2,b$3){return useMediaQuery(()=>`(min-width: ${getValue$2(a$2)}) and (max-width: ${getValue$2(b$3,-.1)})`,options$1)},isGreater(k$4){return match(`min`,getValue$2(k$4,.1))},isGreaterOrEqual(k$4){return match(`min`,getValue$2(k$4))},isSmaller(k$4){return match(`max`,getValue$2(k$4,-.1))},isSmallerOrEqual(k$4){return match(`max`,getValue$2(k$4))},isInBetween(a$2,b$3){return match(`min`,getValue$2(a$2))&&match(`max`,getValue$2(b$3,-.1))},current,active(){let bps=current();return computed(()=>bps.value.length===0?``:bps.value.at(strategy===`min-width`?-1:0))}})}function usePermission(permissionDesc,options$1={}){let{controls=!1,navigator:navigator$1=defaultNavigator}=options$1,isSupported=useSupported(()=>navigator$1&&`permissions`in navigator$1),permissionStatus=shallowRef(),desc=typeof permissionDesc==`string`?{name:permissionDesc}:permissionDesc,state=shallowRef(),update=()=>{var _a$2,_b;state.value=(_b=(_a$2=permissionStatus.value)?.state)??`prompt`};useEventListener$1(permissionStatus,`change`,update,{passive:!0});let query=createSingletonPromise(async()=>{if(isSupported.value){if(!permissionStatus.value)try{permissionStatus.value=await navigator$1.permissions.query(desc)}catch{permissionStatus.value=void 0}finally{update()}if(controls)return toRaw(permissionStatus.value)}});return query(),controls?{state,isSupported,query}:state}function useClipboard(options$1={}){let{navigator:navigator$1=defaultNavigator,read=!1,source,copiedDuring=1500,legacy=!1}=options$1,isClipboardApiSupported=useSupported(()=>navigator$1&&`clipboard`in navigator$1),permissionRead=usePermission(`clipboard-read`),permissionWrite=usePermission(`clipboard-write`),isSupported=computed(()=>isClipboardApiSupported.value||legacy),text$5=shallowRef(``),copied=shallowRef(!1),timeout=useTimeoutFn(()=>copied.value=!1,copiedDuring,{immediate:!1});async function updateText(){let useLegacy=!(isClipboardApiSupported.value&&isAllowed(permissionRead.value));if(!useLegacy)try{text$5.value=await navigator$1.clipboard.readText()}catch{useLegacy=!0}useLegacy&&(text$5.value=legacyRead())}isSupported.value&&read&&useEventListener$1([`copy`,`cut`],updateText,{passive:!0});async function copy(value$1=toValue$1(source)){if(isSupported.value&&value$1!=null){let useLegacy=!(isClipboardApiSupported.value&&isAllowed(permissionWrite.value));if(!useLegacy)try{await navigator$1.clipboard.writeText(value$1)}catch{useLegacy=!0}useLegacy&&legacyCopy(value$1),text$5.value=value$1,copied.value=!0,timeout.start()}}function legacyCopy(value$1){let ta=document.createElement(`textarea`);ta.value=value$1??``,ta.style.position=`absolute`,ta.style.opacity=`0`,document.body.appendChild(ta),ta.select(),document.execCommand(`copy`),ta.remove()}function legacyRead(){var _a$2,_b,_c;return(_c=(_b=(_a$2=document==null?void 0:document.getSelection)?.call(document))?.toString())??``}function isAllowed(status){return status===`granted`||status===`prompt`}return{isSupported,text:text$5,copied,copy}}const _global$1=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},globalKey=`__vueuse_ssr_handlers__`,handlers$2=getHandlers();function getHandlers(){return globalKey in _global$1||(_global$1[globalKey]=_global$1[globalKey]||{}),_global$1[globalKey]}function getSSRHandler(key$1,fallback){return handlers$2[key$1]||fallback}function usePreferredDark(options$1){return useMediaQuery(`(prefers-color-scheme: dark)`,options$1)}function guessSerializerType(rawInit){return rawInit==null?`any`:rawInit instanceof Set?`set`:rawInit instanceof Map?`map`:rawInit instanceof Date?`date`:typeof rawInit==`boolean`?`boolean`:typeof rawInit==`string`?`string`:typeof rawInit==`object`?`object`:Number.isNaN(rawInit)?`any`:`number`}const StorageSerializers={boolean:{read:v$1=>v$1===`true`,write:v$1=>String(v$1)},object:{read:v$1=>JSON.parse(v$1),write:v$1=>JSON.stringify(v$1)},number:{read:v$1=>Number.parseFloat(v$1),write:v$1=>String(v$1)},any:{read:v$1=>v$1,write:v$1=>String(v$1)},string:{read:v$1=>v$1,write:v$1=>String(v$1)},map:{read:v$1=>new Map(JSON.parse(v$1)),write:v$1=>JSON.stringify(Array.from(v$1.entries()))},set:{read:v$1=>new Set(JSON.parse(v$1)),write:v$1=>JSON.stringify(Array.from(v$1))},date:{read:v$1=>new Date(v$1),write:v$1=>v$1.toISOString()}},customStorageEventName=`vueuse-storage`;function useStorage(key$1,defaults,storage,options$1={}){var _a$2;let{flush=`pre`,deep=!0,listenToStorageChanges=!0,writeDefaults=!0,mergeDefaults:mergeDefaults$1=!1,shallow,window:window$1=defaultWindow$1,eventFilter,onError=e$3=>{console.error(e$3)},initOnMounted}=options$1,data$10=(shallow?shallowRef:ref)(typeof defaults==`function`?defaults():defaults),keyComputed=computed(()=>toValue$1(key$1));if(!storage)try{storage=getSSRHandler(`getDefaultStorage`,()=>{var _a2;return(_a2=defaultWindow$1)?.localStorage})()}catch(e$3){onError(e$3)}if(!storage)return data$10;let rawInit=toValue$1(defaults),type=guessSerializerType(rawInit),serializer$1=(_a$2=options$1.serializer)??StorageSerializers[type],{pause:pauseWatch,resume:resumeWatch}=watchPausable(data$10,()=>write(data$10.value),{flush,deep,eventFilter});watch(keyComputed,()=>update(),{flush});let firstMounted=!1,onStorageEvent=ev=>{initOnMounted&&!firstMounted||update(ev)},onStorageCustomEvent=ev=>{initOnMounted&&!firstMounted||updateFromCustomEvent(ev)};window$1&&listenToStorageChanges&&(storage instanceof Storage?useEventListener$1(window$1,`storage`,onStorageEvent,{passive:!0}):useEventListener$1(window$1,customStorageEventName,onStorageCustomEvent)),initOnMounted?tryOnMounted(()=>{firstMounted=!0,update()}):update();function dispatchWriteEvent(oldValue,newValue){if(window$1){let payload={key:keyComputed.value,oldValue,newValue,storageArea:storage};window$1.dispatchEvent(storage instanceof Storage?new StorageEvent(`storage`,payload):new CustomEvent(customStorageEventName,{detail:payload}))}}function write(v$1){try{let oldValue=storage.getItem(keyComputed.value);if(v$1==null)dispatchWriteEvent(oldValue,null),storage.removeItem(keyComputed.value);else{let serialized=serializer$1.write(v$1);oldValue!==serialized&&(storage.setItem(keyComputed.value,serialized),dispatchWriteEvent(oldValue,serialized))}}catch(e$3){onError(e$3)}}function read(event){let rawValue=event?event.newValue:storage.getItem(keyComputed.value);if(rawValue==null)return writeDefaults&&rawInit!=null&&storage.setItem(keyComputed.value,serializer$1.write(rawInit)),rawInit;if(!event&&mergeDefaults$1){let value$1=serializer$1.read(rawValue);return typeof mergeDefaults$1==`function`?mergeDefaults$1(value$1,rawInit):type===`object`&&!Array.isArray(value$1)?{...rawInit,...value$1}:value$1}else if(typeof rawValue!=`string`)return rawValue;else return serializer$1.read(rawValue)}function update(event){if(!(event&&event.storageArea!==storage)){if(event&&event.key==null){data$10.value=rawInit;return}if(!(event&&event.key!==keyComputed.value)){pauseWatch();try{event?.newValue!==serializer$1.write(data$10.value)&&(data$10.value=read(event))}catch(e$3){onError(e$3)}finally{event?nextTick(resumeWatch):resumeWatch()}}}}function updateFromCustomEvent(event){update(event.detail)}return data$10}const CSS_DISABLE_TRANS=`*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`;function useColorMode(options$1={}){let{selector=`html`,attribute=`class`,initialValue=`auto`,window:window$1=defaultWindow$1,storage,storageKey=`vueuse-color-scheme`,listenToStorageChanges=!0,storageRef,emitAuto,disableTransition=!0}=options$1,modes$1={auto:``,light:`light`,dark:`dark`,...options$1.modes||{}},preferredDark=usePreferredDark({window:window$1}),system=computed(()=>preferredDark.value?`dark`:`light`),store=storageRef||(storageKey==null?toRef$1(initialValue):useStorage(storageKey,initialValue,storage,{window:window$1,listenToStorageChanges})),state=computed(()=>store.value===`auto`?system.value:store.value),updateHTMLAttrs=getSSRHandler(`updateHTMLAttrs`,(selector2,attribute2,value$1)=>{let el=typeof selector2==`string`?window$1?.document.querySelector(selector2):unrefElement$1(selector2);if(!el)return;let classesToAdd=new Set,classesToRemove=new Set,attributeToChange=null;if(attribute2===`class`){let current=value$1.split(/\s/g);Object.values(modes$1).flatMap(i$1=>(i$1||``).split(/\s/g)).filter(Boolean).forEach(v$1=>{current.includes(v$1)?classesToAdd.add(v$1):classesToRemove.add(v$1)})}else attributeToChange={key:attribute2,value:value$1};if(classesToAdd.size===0&&classesToRemove.size===0&&attributeToChange===null)return;let style;disableTransition&&(style=window$1.document.createElement(`style`),style.appendChild(document.createTextNode(CSS_DISABLE_TRANS)),window$1.document.head.appendChild(style));for(let c$4 of classesToAdd)el.classList.add(c$4);for(let c$4 of classesToRemove)el.classList.remove(c$4);attributeToChange&&el.setAttribute(attributeToChange.key,attributeToChange.value),disableTransition&&(window$1.getComputedStyle(style).opacity,document.head.removeChild(style))});function defaultOnChanged(mode){var _a$2;updateHTMLAttrs(selector,attribute,(_a$2=modes$1[mode])??mode)}function onChanged(mode){options$1.onChanged?options$1.onChanged(mode,defaultOnChanged):defaultOnChanged(mode)}watch(state,onChanged,{flush:`post`,immediate:!0}),tryOnMounted(()=>onChanged(state.value));let auto=computed({get(){return emitAuto?store.value:state.value},set(v$1){store.value=v$1}});return Object.assign(auto,{store,system,state})}function useCssVar(prop,target$1,options$1={}){let{window:window$1=defaultWindow$1,initialValue,observe=!1}=options$1,variable=shallowRef(initialValue),elRef=computed(()=>{var _a$2;return unrefElement$1(target$1)||(_a$2=window$1?.document)?.documentElement});function updateCssVar(){var _a$2;let key$1=toValue$1(prop),el=toValue$1(elRef);if(el&&window$1&&key$1){let value$1=(_a$2=window$1.getComputedStyle(el).getPropertyValue(key$1))?.trim();variable.value=value$1||variable.value||initialValue}}return observe&&useMutationObserver(elRef,updateCssVar,{attributeFilter:[`style`,`class`],window:window$1}),watch([elRef,()=>toValue$1(prop)],(_$2,old)=>{old[0]&&old[1]&&old[0].style.removeProperty(old[1]),updateCssVar()},{immediate:!0}),watch([variable,elRef],([val,el])=>{let raw_prop=toValue$1(prop);el?.style&&raw_prop&&(val==null?el.style.removeProperty(raw_prop):el.style.setProperty(raw_prop,val))},{immediate:!0}),variable}function useDark(options$1={}){let{valueDark=`dark`,valueLight=``}=options$1,mode=useColorMode({...options$1,onChanged:(mode2,defaultHandler)=>{var _a$2;options$1.onChanged?(_a$2=options$1.onChanged)==null||_a$2.call(options$1,mode2===`dark`,defaultHandler,mode2):defaultHandler(mode2)},modes:{dark:valueDark,light:valueLight}}),system=computed(()=>mode.system.value),isDark=computed({get(){return mode.value===`dark`},set(v$1){let modeVal=v$1?`dark`:`light`;system.value===modeVal?mode.value=`auto`:mode.value=modeVal}});return isDark}function useDevicesList(options$1={}){let{navigator:navigator$1=defaultNavigator,requestPermissions=!1,constraints={audio:!0,video:!0},onUpdated:onUpdated$1}=options$1,devices=ref([]),videoInputs=computed(()=>devices.value.filter(i$1=>i$1.kind===`videoinput`)),audioInputs=computed(()=>devices.value.filter(i$1=>i$1.kind===`audioinput`)),audioOutputs=computed(()=>devices.value.filter(i$1=>i$1.kind===`audiooutput`)),isSupported=useSupported(()=>navigator$1&&navigator$1.mediaDevices&&navigator$1.mediaDevices.enumerateDevices),permissionGranted=shallowRef(!1),stream;async function update(){isSupported.value&&(devices.value=await navigator$1.mediaDevices.enumerateDevices(),onUpdated$1?.(devices.value),stream&&(stream.getTracks().forEach(t=>t.stop()),stream=null))}async function ensurePermissions(){let deviceName=constraints.video?`camera`:`microphone`;if(!isSupported.value)return!1;if(permissionGranted.value)return!0;let{state,query}=usePermission(deviceName,{controls:!0});if(await query(),state.value!==`granted`){let granted=!0;try{let allDevices=await navigator$1.mediaDevices.enumerateDevices(),hasCamera=allDevices.some(device=>device.kind===`videoinput`),hasMicrophone=allDevices.some(device=>device.kind===`audioinput`||device.kind===`audiooutput`);constraints.video=hasCamera?constraints.video:!1,constraints.audio=hasMicrophone?constraints.audio:!1,stream=await navigator$1.mediaDevices.getUserMedia(constraints)}catch{stream=null,granted=!1}update(),permissionGranted.value=granted}else permissionGranted.value=!0;return permissionGranted.value}return isSupported.value&&(requestPermissions&&ensurePermissions(),useEventListener$1(navigator$1.mediaDevices,`devicechange`,update,{passive:!0}),update()),{devices,ensurePermissions,permissionGranted,videoInputs,audioInputs,audioOutputs,isSupported}}function useResizeObserver(target$1,callback,options$1={}){let{window:window$1=defaultWindow$1,...observerOptions}=options$1,observer,isSupported=useSupported(()=>window$1&&`ResizeObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let _targets=toValue$1(target$1);return Array.isArray(_targets)?_targets.map(el=>unrefElement$1(el)):[unrefElement$1(_targets)]}),stopWatch=watch(targets,els=>{if(cleanup(),isSupported.value&&window$1){observer=new ResizeObserver(callback);for(let _el of els)_el&&observer.observe(_el,observerOptions)}},{immediate:!0,flush:`post`}),stop$1=()=>{cleanup(),stopWatch()};return tryOnScopeDispose(stop$1),{isSupported,stop:stop$1}}function useElementBounding(target$1,options$1={}){let{reset=!0,windowResize=!0,windowScroll=!0,immediate=!0,updateTiming=`sync`}=options$1,height=shallowRef(0),bottom=shallowRef(0),left=shallowRef(0),right=shallowRef(0),top=shallowRef(0),width=shallowRef(0),x$3=shallowRef(0),y$2=shallowRef(0);function recalculate(){let el=unrefElement$1(target$1);if(!el){reset&&(height.value=0,bottom.value=0,left.value=0,right.value=0,top.value=0,width.value=0,x$3.value=0,y$2.value=0);return}let rect=el.getBoundingClientRect();height.value=rect.height,bottom.value=rect.bottom,left.value=rect.left,right.value=rect.right,top.value=rect.top,width.value=rect.width,x$3.value=rect.x,y$2.value=rect.y}function update(){updateTiming===`sync`?recalculate():updateTiming===`next-frame`&&requestAnimationFrame(()=>recalculate())}return useResizeObserver(target$1,update),watch(()=>unrefElement$1(target$1),ele=>!ele&&update()),useMutationObserver(target$1,update,{attributeFilter:[`style`,`class`]}),windowScroll&&useEventListener$1(`scroll`,update,{capture:!0,passive:!0}),windowResize&&useEventListener$1(`resize`,update,{passive:!0}),tryOnMounted(()=>{immediate&&update()}),{height,bottom,left,right,top,width,x:x$3,y:y$2,update}}function useIntersectionObserver(target$1,callback,options$1={}){let{root:root$3,rootMargin=`0px`,threshold=0,window:window$1=defaultWindow$1,immediate=!0}=options$1,isSupported=useSupported(()=>window$1&&`IntersectionObserver`in window$1),targets=computed(()=>{let _target$1=toValue$1(target$1);return toArray(_target$1).map(unrefElement$1).filter(notNullish)}),cleanup=noop$2,isActive=shallowRef(immediate),stopWatch=isSupported.value?watch(()=>[targets.value,unrefElement$1(root$3),isActive.value],([targets2,root2])=>{if(cleanup(),!isActive.value||!targets2.length)return;let observer=new IntersectionObserver(callback,{root:unrefElement$1(root2),rootMargin,threshold});targets2.forEach(el=>el&&observer.observe(el)),cleanup=()=>{observer.disconnect(),cleanup=noop$2}},{immediate,flush:`post`}):noop$2,stop$1=()=>{cleanup(),stopWatch(),isActive.value=!1};return tryOnScopeDispose(stop$1),{isSupported,isActive,pause(){cleanup(),isActive.value=!1},resume(){isActive.value=!0},stop:stop$1}}const DEFAULT_OPTIONS={multiple:!0,accept:`*`,reset:!1,directory:!1};function prepareInitialFiles(files){if(!files)return null;if(files instanceof FileList)return files;let dt$4=new DataTransfer;for(let file of files)dt$4.items.add(file);return dt$4.files}function useFileDialog(options$1={}){let{document:document$3=defaultDocument}=options$1,files=ref(prepareInitialFiles(options$1.initialFiles)),{on:onChange,trigger:changeTrigger}=createEventHook(),{on:onCancel,trigger:cancelTrigger}=createEventHook(),input;document$3&&(input=unrefElement$1(options$1.input)||document$3.createElement(`input`),input.type=`file`,input.onchange=event=>{let result=event.target;files.value=result.files,changeTrigger(files.value)},input.oncancel=()=>{cancelTrigger()});let reset=()=>{files.value=null,input&&input.value&&(input.value=``,changeTrigger(null))},open$1=localOptions=>{if(!input)return;let _options={...DEFAULT_OPTIONS,...options$1,...localOptions};input.multiple=_options.multiple,input.accept=_options.accept,input.webkitdirectory=_options.directory,hasOwn$2(_options,`capture`)&&(input.capture=_options.capture),_options.reset&&reset(),input.click()};return{files:readonly(files),open:open$1,reset,onCancel,onChange}}const ARRIVED_STATE_THRESHOLD_PIXELS=1;function useScroll(element$3,options$1={}){let{throttle=0,idle=200,onStop=noop$2,onScroll=noop$2,offset:offset$1={left:0,right:0,top:0,bottom:0},observe:_observe={mutation:!1},eventListenerOptions={capture:!1,passive:!0},behavior=`auto`,window:window$1=defaultWindow$1,onError=e$3=>{console.error(e$3)}}=options$1,observe=typeof _observe==`boolean`?{mutation:_observe}:_observe,internalX=shallowRef(0),internalY=shallowRef(0),x$3=computed({get(){return internalX.value},set(x2){scrollTo(x2,void 0)}}),y$2=computed({get(){return internalY.value},set(y2){scrollTo(void 0,y2)}});function scrollTo(_x$1,_y$1){var _a$2,_b,_c,_d;if(!window$1)return;let _element=toValue$1(element$3);if(!_element)return;(_c=_element instanceof Document?window$1.document.body:_element)==null||_c.scrollTo({top:(_a$2=toValue$1(_y$1))??y$2.value,left:(_b=toValue$1(_x$1))??x$3.value,behavior:toValue$1(behavior)});let scrollContainer=(_d=_element?.document)?.documentElement||_element?.documentElement||_element;x$3!=null&&(internalX.value=scrollContainer.scrollLeft),y$2!=null&&(internalY.value=scrollContainer.scrollTop)}let isScrolling=shallowRef(!1),arrivedState=reactive({left:!0,right:!1,top:!0,bottom:!1}),directions=reactive({left:!1,right:!1,top:!1,bottom:!1}),onScrollEnd=e$3=>{isScrolling.value&&(isScrolling.value=!1,directions.left=!1,directions.right=!1,directions.top=!1,directions.bottom=!1,onStop(e$3))},onScrollEndDebounced=useDebounceFn(onScrollEnd,throttle+idle),setArrivedState=target$1=>{var _a$2;if(!window$1)return;let el=(_a$2=target$1?.document)?.documentElement||target$1?.documentElement||unrefElement$1(target$1),{display,flexDirection,direction}=getComputedStyle(el),directionMultipler=direction===`rtl`?-1:1,scrollLeft=el.scrollLeft;directions.left=scrollLeftinternalX.value;let left=Math.abs(scrollLeft*directionMultipler)<=(offset$1.left||0),right=Math.abs(scrollLeft*directionMultipler)+el.clientWidth>=el.scrollWidth-(offset$1.right||0)-ARRIVED_STATE_THRESHOLD_PIXELS;display===`flex`&&flexDirection===`row-reverse`?(arrivedState.left=right,arrivedState.right=left):(arrivedState.left=left,arrivedState.right=right),internalX.value=scrollLeft;let scrollTop=el.scrollTop;target$1===window$1.document&&!scrollTop&&(scrollTop=window$1.document.body.scrollTop),directions.top=scrollTopinternalY.value;let top=Math.abs(scrollTop)<=(offset$1.top||0),bottom=Math.abs(scrollTop)+el.clientHeight>=el.scrollHeight-(offset$1.bottom||0)-ARRIVED_STATE_THRESHOLD_PIXELS;display===`flex`&&flexDirection===`column-reverse`?(arrivedState.top=bottom,arrivedState.bottom=top):(arrivedState.top=top,arrivedState.bottom=bottom),internalY.value=scrollTop},onScrollHandler=e$3=>{var _a$2;if(!window$1)return;let eventTarget=(_a$2=e$3.target.documentElement)??e$3.target;setArrivedState(eventTarget),isScrolling.value=!0,onScrollEndDebounced(e$3),onScroll(e$3)};return useEventListener$1(element$3,`scroll`,throttle?useThrottleFn(onScrollHandler,throttle,!0,!1):onScrollHandler,eventListenerOptions),tryOnMounted(()=>{try{let _element=toValue$1(element$3);if(!_element)return;setArrivedState(_element)}catch(e$3){onError(e$3)}}),observe?.mutation&&element$3!=null&&element$3!==window$1&&element$3!==document&&useMutationObserver(element$3,()=>{let _element=toValue$1(element$3);_element&&setArrivedState(_element)},{attributes:!0,childList:!0,subtree:!0}),useEventListener$1(element$3,`scrollend`,onScrollEnd,eventListenerOptions),{x:x$3,y:y$2,isScrolling,arrivedState,directions,measure(){let _element=toValue$1(element$3);window$1&&_element&&setArrivedState(_element)}}}function useLocalStorage(key$1,initialValue,options$1={}){let{window:window$1=defaultWindow$1}=options$1;return useStorage(key$1,initialValue,window$1?.localStorage,options$1)}const UseMouseBuiltinExtractors={page:event=>[event.pageX,event.pageY],client:event=>[event.clientX,event.clientY],screen:event=>[event.screenX,event.screenY],movement:event=>event instanceof MouseEvent?[event.movementX,event.movementY]:null};function useMouse(options$1={}){let{type=`page`,touch=!0,resetOnTouchEnds=!1,initialValue={x:0,y:0},window:window$1=defaultWindow$1,target:target$1=window$1,scroll=!0,eventFilter}=options$1,_prevMouseEvent=null,_prevScrollX=0,_prevScrollY=0,x$3=shallowRef(initialValue.x),y$2=shallowRef(initialValue.y),sourceType=shallowRef(null),extractor=typeof type==`function`?type:UseMouseBuiltinExtractors[type],mouseHandler=event=>{let result=extractor(event);_prevMouseEvent=event,result&&([x$3.value,y$2.value]=result,sourceType.value=`mouse`),window$1&&(_prevScrollX=window$1.scrollX,_prevScrollY=window$1.scrollY)},touchHandler=event=>{if(event.touches.length>0){let result=extractor(event.touches[0]);result&&([x$3.value,y$2.value]=result,sourceType.value=`touch`)}},scrollHandler=()=>{if(!_prevMouseEvent||!window$1)return;let pos=extractor(_prevMouseEvent);_prevMouseEvent instanceof MouseEvent&&pos&&(x$3.value=pos[0]+window$1.scrollX-_prevScrollX,y$2.value=pos[1]+window$1.scrollY-_prevScrollY)},reset=()=>{x$3.value=initialValue.x,y$2.value=initialValue.y},mouseHandlerWrapper=eventFilter?event=>eventFilter(()=>mouseHandler(event),{}):event=>mouseHandler(event),touchHandlerWrapper=eventFilter?event=>eventFilter(()=>touchHandler(event),{}):event=>touchHandler(event),scrollHandlerWrapper=eventFilter?()=>eventFilter(()=>scrollHandler(),{}):()=>scrollHandler();if(target$1){let listenerOptions={passive:!0};useEventListener$1(target$1,[`mousemove`,`dragover`],mouseHandlerWrapper,listenerOptions),touch&&type!==`movement`&&(useEventListener$1(target$1,[`touchstart`,`touchmove`],touchHandlerWrapper,listenerOptions),resetOnTouchEnds&&useEventListener$1(target$1,`touchend`,reset,listenerOptions)),scroll&&type===`page`&&useEventListener$1(window$1,`scroll`,scrollHandlerWrapper,listenerOptions)}return{x:x$3,y:y$2,sourceType}}function useObjectUrl(object){let url=shallowRef(),release=()=>{url.value&&URL.revokeObjectURL(url.value),url.value=void 0};return watch(()=>toValue$1(object),newObject=>{release(),newObject&&(url.value=URL.createObjectURL(newObject))},{immediate:!0}),tryOnScopeDispose(release),readonly(url)}const defaultState={x:0,y:0,pointerId:0,pressure:0,tiltX:0,tiltY:0,width:0,height:0,twist:0,pointerType:null},keys$1=Object.keys(defaultState);function usePointer(options$1={}){let{target:target$1=defaultWindow$1}=options$1,isInside=shallowRef(!1),state=ref(options$1.initialValue||{});Object.assign(state.value,defaultState,state.value);let handler=event=>{isInside.value=!0,!(options$1.pointerTypes&&!options$1.pointerTypes.includes(event.pointerType))&&(state.value=objectPick(event,keys$1,!1))};if(target$1){let listenerOptions={passive:!0};useEventListener$1(target$1,[`pointerdown`,`pointermove`,`pointerup`],handler,listenerOptions),useEventListener$1(target$1,`pointerleave`,()=>isInside.value=!1,listenerOptions)}return{...toRefs$1(state),isInside}}const topVarName=`--vueuse-safe-area-top`,rightVarName=`--vueuse-safe-area-right`,bottomVarName=`--vueuse-safe-area-bottom`,leftVarName=`--vueuse-safe-area-left`;function useScreenSafeArea(){let top=shallowRef(``),right=shallowRef(``),bottom=shallowRef(``),left=shallowRef(``);if(isClient$2){let topCssVar=useCssVar(topVarName),rightCssVar=useCssVar(rightVarName),bottomCssVar=useCssVar(bottomVarName),leftCssVar=useCssVar(leftVarName);topCssVar.value=`env(safe-area-inset-top, 0px)`,rightCssVar.value=`env(safe-area-inset-right, 0px)`,bottomCssVar.value=`env(safe-area-inset-bottom, 0px)`,leftCssVar.value=`env(safe-area-inset-left, 0px)`,tryOnMounted(update),useEventListener$1(`resize`,useDebounceFn(update),{passive:!0})}function update(){top.value=getValue(topVarName),right.value=getValue(rightVarName),bottom.value=getValue(bottomVarName),left.value=getValue(leftVarName)}return{top,right,bottom,left,update}}function getValue(position$2){return getComputedStyle(document.documentElement).getPropertyValue(position$2)}const DEFAULT_UNITS=[{max:6e4,value:1e3,name:`second`},{max:276e4,value:6e4,name:`minute`},{max:72e6,value:36e5,name:`hour`},{max:5184e5,value:864e5,name:`day`},{max:24192e5,value:6048e5,name:`week`},{max:28512e6,value:2592e6,name:`month`},{max:1/0,value:31536e6,name:`year`}];function useUserMedia(options$1={}){var _a$2,_b;let enabled$1=shallowRef((_a$2=options$1.enabled)??!1),autoSwitch=shallowRef((_b=options$1.autoSwitch)??!0),constraints=ref(options$1.constraints),{navigator:navigator$1=defaultNavigator}=options$1,isSupported=useSupported(()=>{var _a2;return(_a2=navigator$1?.mediaDevices)?.getUserMedia}),stream=shallowRef();function getDeviceOptions(type){switch(type){case`video`:if(constraints.value)return constraints.value.video||!1;break;case`audio`:if(constraints.value)return constraints.value.audio||!1;break}}async function _start$1(){if(!(!isSupported.value||stream.value))return stream.value=await navigator$1.mediaDevices.getUserMedia({video:getDeviceOptions(`video`),audio:getDeviceOptions(`audio`)}),stream.value}function _stop(){var _a2;(_a2=stream.value)==null||_a2.getTracks().forEach(t=>t.stop()),stream.value=void 0}function stop$1(){_stop(),enabled$1.value=!1}async function start(){return await _start$1(),stream.value&&(enabled$1.value=!0),stream.value}async function restart(){return _stop(),await start()}return watch(enabled$1,v$1=>{v$1?_start$1():_stop()},{immediate:!0}),watch(constraints,()=>{autoSwitch.value&&stream.value&&restart()},{immediate:!0}),tryOnScopeDispose(()=>{stop$1()}),{isSupported,stream,start,stop:stop$1,restart,constraints,enabled:enabled$1,autoSwitch}}function useWebWorker(arg0,workerOptions,options$1){let{window:window$1=defaultWindow$1}=options$1??{},data$10=ref(null),worker=shallowRef(),post=(...args)=>{worker.value&&worker.value.postMessage(...args)},terminate=function(){worker.value&&worker.value.terminate()};return window$1&&(typeof arg0==`string`?worker.value=new Worker(arg0,workerOptions):typeof arg0==`function`?worker.value=arg0():worker.value=arg0,worker.value.onmessage=e$3=>{data$10.value=e$3.data},tryOnScopeDispose(()=>{worker.value&&worker.value.terminate()})),{data:data$10,post,terminate,worker}}function useWindowSize(options$1={}){let{window:window$1=defaultWindow$1,initialWidth=1/0,initialHeight=1/0,listenOrientation=!0,includeScrollbar=!0,type=`inner`}=options$1,width=shallowRef(initialWidth),height=shallowRef(initialHeight),update=()=>{if(window$1)if(type===`outer`)width.value=window$1.outerWidth,height.value=window$1.outerHeight;else if(type===`visual`&&window$1.visualViewport){let{width:visualViewportWidth,height:visualViewportHeight,scale:scale$1}=window$1.visualViewport;width.value=Math.round(visualViewportWidth*scale$1),height.value=Math.round(visualViewportHeight*scale$1)}else includeScrollbar?(width.value=window$1.innerWidth,height.value=window$1.innerHeight):(width.value=window$1.document.documentElement.clientWidth,height.value=window$1.document.documentElement.clientHeight)};update(),tryOnMounted(update);let listenerOptions={passive:!0};if(useEventListener$1(`resize`,update,listenerOptions),window$1&&type===`visual`&&window$1.visualViewport&&useEventListener$1(window$1.visualViewport,`resize`,update,listenerOptions),listenOrientation){let matches$1=useMediaQuery(`(orientation: portrait)`);watch(matches$1,()=>update())}return{width,height}}const defaultTimestep=1/60*1e3,getCurrentTime=typeof performance<`u`?()=>performance.now():()=>Date.now(),onNextFrame=typeof window<`u`?callback=>window.requestAnimationFrame(callback):callback=>setTimeout(()=>callback(getCurrentTime()),defaultTimestep);function createRenderStep(runNextFrame$1){let toRun=[],toRunNextFrame=[],numToRun=0,isProcessing$1=!1,flushNextFrame=!1,toKeepAlive=new WeakSet,step={schedule:(callback,keepAlive=!1,immediate=!1)=>{let addToCurrentFrame=immediate&&isProcessing$1,buffer$1=addToCurrentFrame?toRun:toRunNextFrame;return keepAlive&&toKeepAlive.add(callback),buffer$1.indexOf(callback)===-1&&(buffer$1.push(callback),addToCurrentFrame&&isProcessing$1&&(numToRun=toRun.length)),callback},cancel:callback=>{let index$1=toRunNextFrame.indexOf(callback);index$1!==-1&&toRunNextFrame.splice(index$1,1),toKeepAlive.delete(callback)},process:frameData=>{if(isProcessing$1){flushNextFrame=!0;return}if(isProcessing$1=!0,[toRun,toRunNextFrame]=[toRunNextFrame,toRun],toRunNextFrame.length=0,numToRun=toRun.length,numToRun)for(let i$1=0;i$1(acc[key$1]=createRenderStep(()=>runNextFrame=!0),acc),{}),sync=stepsOrder.reduce((acc,key$1)=>{let step=steps[key$1];return acc[key$1]=(process$1,keepAlive=!1,immediate=!1)=>(runNextFrame||startLoop(),step.schedule(process$1,keepAlive,immediate)),acc},{}),cancelSync=stepsOrder.reduce((acc,key$1)=>(acc[key$1]=steps[key$1].cancel,acc),{}),flushSync=stepsOrder.reduce((acc,key$1)=>(acc[key$1]=()=>steps[key$1].process(frame),acc),{}),processStep=stepId=>steps[stepId].process(frame),processFrame=timestamp$2=>{runNextFrame=!1,frame.delta=useDefaultElapsed?defaultTimestep:Math.max(Math.min(timestamp$2-frame.timestamp,maxElapsed),1),frame.timestamp=timestamp$2,isProcessing=!0,stepsOrder.forEach(processStep),isProcessing=!1,runNextFrame&&(useDefaultElapsed=!1,onNextFrame(processFrame))},startLoop=()=>{runNextFrame=!0,useDefaultElapsed=!0,isProcessing||onNextFrame(processFrame)},getFrameData=()=>frame;var es_default=sync;function __rest(s$1,e$3){var t={};for(var p$5 in s$1)Object.prototype.hasOwnProperty.call(s$1,p$5)&&e$3.indexOf(p$5)<0&&(t[p$5]=s$1[p$5]);if(s$1!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i$1=0,p$5=Object.getOwnPropertySymbols(s$1);i$1Math.min(Math.max(v$1,min$1),max$1),safeMin=.001,minDuration=.01,maxDuration=10,minDamping=.05,maxDamping=1;function findSpring({duration=800,bounce=.25,velocity=0,mass=1}){let envelope,derivative;warning(duration<=maxDuration*1e3,`Spring duration must be 10 seconds or less`);let dampingRatio=1-bounce;dampingRatio=clamp$2(minDamping,maxDamping,dampingRatio),duration=clamp$2(minDuration,maxDuration,duration/1e3),dampingRatio<1?(envelope=undampedFreq$1=>{let exponentialDecay=undampedFreq$1*dampingRatio,delta=exponentialDecay*duration,a$2=exponentialDecay-velocity,b$3=calcAngularFreq(undampedFreq$1,dampingRatio),c$4=Math.exp(-delta);return safeMin-a$2/b$3*c$4},derivative=undampedFreq$1=>{let exponentialDecay=undampedFreq$1*dampingRatio,delta=exponentialDecay*duration,d$2=delta*velocity+velocity,e$3=dampingRatio**2*undampedFreq$1**2*duration,f$3=Math.exp(-delta),g$2=calcAngularFreq(undampedFreq$1**2,dampingRatio),factor$1=-envelope(undampedFreq$1)+safeMin>0?-1:1;return factor$1*((d$2-e$3)*f$3)/g$2}):(envelope=undampedFreq$1=>{let a$2=Math.exp(-undampedFreq$1*duration),b$3=(undampedFreq$1-velocity)*duration+1;return-safeMin+a$2*b$3},derivative=undampedFreq$1=>{let a$2=Math.exp(-undampedFreq$1*duration),b$3=(velocity-undampedFreq$1)*(duration*duration);return a$2*b$3});let initialGuess=5/duration,undampedFreq=approximateRoot(envelope,derivative,initialGuess);if(duration*=1e3,isNaN(undampedFreq))return{stiffness:100,damping:10,duration};{let stiffness=undampedFreq**2*mass;return{stiffness,damping:dampingRatio*2*Math.sqrt(mass*stiffness),duration}}}const rootIterations=12;function approximateRoot(envelope,derivative,initialGuess){let result=initialGuess;for(let i$1=1;i$1options$1[key$1]!==void 0)}function getSpringOptions(options$1){let springOptions=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},options$1);if(!isSpringType(options$1,physicsKeys)&&isSpringType(options$1,durationKeys)){let derived=findSpring(options$1);springOptions=Object.assign(Object.assign(Object.assign({},springOptions),derived),{velocity:0,mass:1}),springOptions.isResolvedFromDuration=!0}return springOptions}function spring(_a$2){var{from=0,to:to$1=1,restSpeed=2,restDelta}=_a$2,options$1=__rest(_a$2,[`from`,`to`,`restSpeed`,`restDelta`]);let state={done:!1,value:from},{stiffness,damping,mass,velocity,duration,isResolvedFromDuration}=getSpringOptions(options$1),resolveSpring=zero,resolveVelocity=zero;function createSpring(){let initialVelocity=velocity?-(velocity/1e3):0,initialDelta=to$1-from,dampingRatio=damping/(2*Math.sqrt(stiffness*mass)),undampedAngularFreq=Math.sqrt(stiffness/mass)/1e3;if(restDelta===void 0&&(restDelta=Math.min(Math.abs(to$1-from)/100,.4)),dampingRatio<1){let angularFreq=calcAngularFreq(undampedAngularFreq,dampingRatio);resolveSpring=t=>{let envelope=Math.exp(-dampingRatio*undampedAngularFreq*t);return to$1-envelope*((initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)/angularFreq*Math.sin(angularFreq*t)+initialDelta*Math.cos(angularFreq*t))},resolveVelocity=t=>{let envelope=Math.exp(-dampingRatio*undampedAngularFreq*t);return dampingRatio*undampedAngularFreq*envelope*(Math.sin(angularFreq*t)*(initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)/angularFreq+initialDelta*Math.cos(angularFreq*t))-envelope*(Math.cos(angularFreq*t)*(initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)-angularFreq*initialDelta*Math.sin(angularFreq*t))}}else if(dampingRatio===1)resolveSpring=t=>to$1-Math.exp(-undampedAngularFreq*t)*(initialDelta+(initialVelocity+undampedAngularFreq*initialDelta)*t);else{let dampedAngularFreq=undampedAngularFreq*Math.sqrt(dampingRatio*dampingRatio-1);resolveSpring=t=>{let envelope=Math.exp(-dampingRatio*undampedAngularFreq*t),freqForT=Math.min(dampedAngularFreq*t,300);return to$1-envelope*((initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)*Math.sinh(freqForT)+dampedAngularFreq*initialDelta*Math.cosh(freqForT))/dampedAngularFreq}}}return createSpring(),{next:t=>{let current=resolveSpring(t);if(isResolvedFromDuration)state.done=t>=duration;else{let currentVelocity=resolveVelocity(t)*1e3,isBelowVelocityThreshold=Math.abs(currentVelocity)<=restSpeed,isBelowDisplacementThreshold=Math.abs(to$1-current)<=restDelta;state.done=isBelowVelocityThreshold&&isBelowDisplacementThreshold}return state.value=state.done?to$1:current,state},flipTarget:()=>{velocity=-velocity,[from,to$1]=[to$1,from],createSpring()}}}spring.needsInterpolation=(a$2,b$3)=>typeof a$2==`string`||typeof b$3==`string`;const zero=_t$3=>0,progress=(from,to$1,value$1)=>{let toFromDifference=to$1-from;return toFromDifference===0?1:(value$1-from)/toFromDifference},mix=(from,to$1,progress$1)=>-progress$1*from+progress$1*to$1+from,clamp$3=(min$1,max$1)=>v$1=>Math.max(Math.min(v$1,max$1),min$1),sanitize=v$1=>v$1%1?Number(v$1.toFixed(5)):v$1,floatRegex=/(-)?([\d]*\.?[\d])+/g,colorRegex=/(#[0-9a-f]{6}|#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,singleColorRegex=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function isString$1(v$1){return typeof v$1==`string`}const number$2={test:v$1=>typeof v$1==`number`,parse:parseFloat,transform:v$1=>v$1},alpha=Object.assign(Object.assign({},number$2),{transform:clamp$3(0,1)}),scale=Object.assign(Object.assign({},number$2),{default:1}),createUnitType=unit=>({test:v$1=>isString$1(v$1)&&v$1.endsWith(unit)&&v$1.split(` `).length===1,parse:parseFloat,transform:v$1=>`${v$1}${unit}`}),degrees=createUnitType(`deg`),percent=createUnitType(`%`),px=createUnitType(`px`),vh=createUnitType(`vh`),vw=createUnitType(`vw`),progressPercentage=Object.assign(Object.assign({},percent),{parse:v$1=>percent.parse(v$1)/100,transform:v$1=>percent.transform(v$1*100)}),isColorString=(type,testProp)=>v$1=>!!(isString$1(v$1)&&singleColorRegex.test(v$1)&&v$1.startsWith(type)||testProp&&Object.prototype.hasOwnProperty.call(v$1,testProp)),splitColor=(aName,bName,cName)=>v$1=>{if(!isString$1(v$1))return v$1;let[a$2,b$3,c$4,alpha$1]=v$1.match(floatRegex);return{[aName]:parseFloat(a$2),[bName]:parseFloat(b$3),[cName]:parseFloat(c$4),alpha:alpha$1===void 0?1:parseFloat(alpha$1)}},hsla={test:isColorString(`hsl`,`hue`),parse:splitColor(`hue`,`saturation`,`lightness`),transform:({hue:hue$2,saturation,lightness,alpha:alpha$1=1})=>`hsla(`+Math.round(hue$2)+`, `+percent.transform(sanitize(saturation))+`, `+percent.transform(sanitize(lightness))+`, `+sanitize(alpha.transform(alpha$1))+`)`},clampRgbUnit=clamp$3(0,255),rgbUnit=Object.assign(Object.assign({},number$2),{transform:v$1=>Math.round(clampRgbUnit(v$1))}),rgba={test:isColorString(`rgb`,`red`),parse:splitColor(`red`,`green`,`blue`),transform:({red,green,blue,alpha:alpha$1=1})=>`rgba(`+rgbUnit.transform(red)+`, `+rgbUnit.transform(green)+`, `+rgbUnit.transform(blue)+`, `+sanitize(alpha.transform(alpha$1))+`)`};function parseHex$1(v$1){let r$2=``,g$2=``,b$3=``,a$2=``;return v$1.length>5?(r$2=v$1.substr(1,2),g$2=v$1.substr(3,2),b$3=v$1.substr(5,2),a$2=v$1.substr(7,2)):(r$2=v$1.substr(1,1),g$2=v$1.substr(2,1),b$3=v$1.substr(3,1),a$2=v$1.substr(4,1),r$2+=r$2,g$2+=g$2,b$3+=b$3,a$2+=a$2),{red:parseInt(r$2,16),green:parseInt(g$2,16),blue:parseInt(b$3,16),alpha:a$2?parseInt(a$2,16)/255:1}}const hex$1={test:isColorString(`#`),parse:parseHex$1,transform:rgba.transform},color$1={test:v$1=>rgba.test(v$1)||hex$1.test(v$1)||hsla.test(v$1),parse:v$1=>rgba.test(v$1)?rgba.parse(v$1):hsla.test(v$1)?hsla.parse(v$1):hex$1.parse(v$1),transform:v$1=>isString$1(v$1)?v$1:v$1.hasOwnProperty(`red`)?rgba.transform(v$1):hsla.transform(v$1)},colorToken="${c}",numberToken="${n}";function test(v$1){var _a$2,_b,_c,_d;return isNaN(v$1)&&isString$1(v$1)&&((_b=(_a$2=v$1.match(floatRegex))?.length)??0)+((_d=(_c=v$1.match(colorRegex))?.length)??0)>0}function analyse$1(v$1){typeof v$1==`number`&&(v$1=`${v$1}`);let values=[],numColors=0,colors=v$1.match(colorRegex);colors&&(numColors=colors.length,v$1=v$1.replace(colorRegex,colorToken),values.push(...colors.map(color$1.parse)));let numbers=v$1.match(floatRegex);return numbers&&(v$1=v$1.replace(floatRegex,numberToken),values.push(...numbers.map(number$2.parse))),{values,numColors,tokenised:v$1}}function parse$3(v$1){return analyse$1(v$1).values}function createTransformer$1(v$1){let{values,numColors,tokenised}=analyse$1(v$1),numValues=values.length;return v$2=>{let output=tokenised;for(let i$1=0;i$1typeof v$1==`number`?0:v$1;function getAnimatableNone$2(v$1){let parsed=parse$3(v$1),transformer=createTransformer$1(v$1);return transformer(parsed.map(convertNumbersToZero))}const complex={test,parse:parse$3,createTransformer:createTransformer$1,getAnimatableNone:getAnimatableNone$2},maxDefaults=new Set([`brightness`,`contrast`,`saturate`,`opacity`]);function applyDefaultFilter(v$1){let[name$2,value$1]=v$1.slice(0,-1).split(`(`);if(name$2===`drop-shadow`)return v$1;let[number$3]=value$1.match(floatRegex)||[];if(!number$3)return v$1;let unit=value$1.replace(number$3,``),defaultValue=maxDefaults.has(name$2)?1:0;return number$3!==value$1&&(defaultValue*=100),name$2+`(`+defaultValue+unit+`)`}const functionRegex=/([a-z-]*)\(.*?\)/g,filter=Object.assign(Object.assign({},complex),{getAnimatableNone:v$1=>{let functions=v$1.match(functionRegex);return functions?functions.map(applyDefaultFilter).join(` `):v$1}});function hueToRgb(p$5,q$1,t){return t<0&&(t+=1),t>1&&--t,t<1/6?p$5+(q$1-p$5)*6*t:t<1/2?q$1:t<2/3?p$5+(q$1-p$5)*(2/3-t)*6:p$5}function hslaToRgba({hue:hue$2,saturation,lightness,alpha:alpha$1}){hue$2/=360,saturation/=100,lightness/=100;let red=0,green=0,blue=0;if(!saturation)red=green=blue=lightness;else{let q$1=lightness<.5?lightness*(1+saturation):lightness+saturation-lightness*saturation,p$5=2*lightness-q$1;red=hueToRgb(p$5,q$1,hue$2+1/3),green=hueToRgb(p$5,q$1,hue$2),blue=hueToRgb(p$5,q$1,hue$2-1/3)}return{red:Math.round(red*255),green:Math.round(green*255),blue:Math.round(blue*255),alpha:alpha$1}}const mixLinearColor=(from,to$1,v$1)=>{let fromExpo=from*from,toExpo=to$1*to$1;return Math.sqrt(Math.max(0,v$1*(toExpo-fromExpo)+fromExpo))},colorTypes=[hex$1,rgba,hsla],getColorType=v$1=>colorTypes.find(type=>type.test(v$1)),notAnimatable=color$2=>`'${color$2}' is not an animatable color. Use the equivalent color code instead.`,mixColor=(from,to$1)=>{let fromColorType=getColorType(from),toColorType=getColorType(to$1);invariant(!!fromColorType,notAnimatable(from)),invariant(!!toColorType,notAnimatable(to$1));let fromColor=fromColorType.parse(from),toColor=toColorType.parse(to$1);fromColorType===hsla&&(fromColor=hslaToRgba(fromColor),fromColorType=rgba),toColorType===hsla&&(toColor=hslaToRgba(toColor),toColorType=rgba);let blended=Object.assign({},fromColor);return v$1=>{for(let key$1 in blended)key$1!==`alpha`&&(blended[key$1]=mixLinearColor(fromColor[key$1],toColor[key$1],v$1));return blended.alpha=mix(fromColor.alpha,toColor.alpha,v$1),fromColorType.transform(blended)}},isNum=v$1=>typeof v$1==`number`,combineFunctions=(a$2,b$3)=>v$1=>b$3(a$2(v$1)),pipe=(...transformers)=>transformers.reduce(combineFunctions);function getMixer(origin,target$1){return isNum(origin)?v$1=>mix(origin,target$1,v$1):color$1.test(origin)?mixColor(origin,target$1):mixComplex(origin,target$1)}const mixArray=(from,to$1)=>{let output=[...from],numValues=output.length,blendValue=from.map((fromThis,i$1)=>getMixer(fromThis,to$1[i$1]));return v$1=>{for(let i$1=0;i$1{let output=Object.assign(Object.assign({},origin),target$1),blendValue={};for(let key$1 in output)origin[key$1]!==void 0&&target$1[key$1]!==void 0&&(blendValue[key$1]=getMixer(origin[key$1],target$1[key$1]));return v$1=>{for(let key$1 in blendValue)output[key$1]=blendValue[key$1](v$1);return output}};function analyse(value$1){let parsed=complex.parse(value$1),numValues=parsed.length,numNumbers=0,numRGB=0,numHSL=0;for(let i$1=0;i$1{let template=complex.createTransformer(target$1),originStats=analyse(origin),targetStats=analyse(target$1),canInterpolate=originStats.numHSL===targetStats.numHSL&&originStats.numRGB===targetStats.numRGB&&originStats.numNumbers>=targetStats.numNumbers;return canInterpolate?pipe(mixArray(originStats.parsed,targetStats.parsed),template):(warning(!0,`Complex values '${origin}' and '${target$1}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`),p$5=>`${p$5>0?target$1:origin}`)},mixNumber=(from,to$1)=>p$5=>mix(from,to$1,p$5);function detectMixerFactory(v$1){if(typeof v$1==`number`)return mixNumber;if(typeof v$1==`string`)return color$1.test(v$1)?mixColor:mixComplex;if(Array.isArray(v$1))return mixArray;if(typeof v$1==`object`)return mixObject}function createMixers(output,ease,customMixer){let mixers=[],mixerFactory=customMixer||detectMixerFactory(output[0]),numMixers=output.length-1;for(let i$1=0;i$1mixer(progress(from,to$1,v$1))}function slowInterpolate(input,mixers){let inputLength=input.length,lastInputIndex=inputLength-1;return v$1=>{let mixerIndex=0,foundMixerIndex=!1;if(v$1<=input[0]?foundMixerIndex=!0:v$1>=input[lastInputIndex]&&(mixerIndex=lastInputIndex-1,foundMixerIndex=!0),!foundMixerIndex){let i$1=1;for(;i$1v$1||i$1===lastInputIndex);i$1++);mixerIndex=i$1-1}let progressInRange=progress(input[mixerIndex],input[mixerIndex+1],v$1);return mixers[mixerIndex](progressInRange)}}function interpolate(input,output,{clamp:isClamp=!0,ease,mixer}={}){let inputLength=input.length;invariant(inputLength===output.length,`Both input and output ranges must be the same length`),invariant(!ease||!Array.isArray(ease)||ease.length===inputLength-1,"Array of easing functions must be of length `input.length - 1`, as it applies to the transitions **between** the defined values."),input[0]>input[inputLength-1]&&(input=[].concat(input),output=[].concat(output),input.reverse(),output.reverse());let mixers=createMixers(output,ease,mixer),interpolator=inputLength===2?fastInterpolate(input,mixers):slowInterpolate(input,mixers);return isClamp?v$1=>interpolator(clamp$2(input[0],input[inputLength-1],v$1)):interpolator}const reverseEasing=easing=>p$5=>1-easing(1-p$5),mirrorEasing=easing=>p$5=>p$5<=.5?easing(2*p$5)/2:(2-easing(2*(1-p$5)))/2,createExpoIn=power=>p$5=>p$5**+power,createBackIn=power=>p$5=>p$5*p$5*((power+1)*p$5-power),createAnticipate=power=>{let backEasing=createBackIn(power);return p$5=>(p$5*=2)<1?.5*backEasing(p$5):.5*(2-2**(-10*(p$5-1)))},DEFAULT_OVERSHOOT_STRENGTH=1.525,BOUNCE_FIRST_THRESHOLD=4/11,BOUNCE_SECOND_THRESHOLD=8/11,BOUNCE_THIRD_THRESHOLD=9/10,linear=p$5=>p$5,easeIn=createExpoIn(2),easeOut=reverseEasing(easeIn),easeInOut=mirrorEasing(easeIn),circIn=p$5=>1-Math.sin(Math.acos(p$5)),circOut=reverseEasing(circIn),circInOut=mirrorEasing(circOut),backIn=createBackIn(DEFAULT_OVERSHOOT_STRENGTH),backOut=reverseEasing(backIn),backInOut=mirrorEasing(backIn),anticipate=createAnticipate(DEFAULT_OVERSHOOT_STRENGTH),ca=4356/361,cb=35442/1805,cc=16061/1805,bounceOut=p$5=>{if(p$5===1||p$5===0)return p$5;let p2=p$5*p$5;return p$5p$5<.5?.5*(1-bounceOut(1-p$5*2)):.5*bounceOut(p$5*2-1)+.5;function defaultEasing(values,easing){return values.map(()=>easing||easeInOut).splice(0,values.length-1)}function defaultOffset(values){let numValues=values.length;return values.map((_value,i$1)=>i$1===0?0:i$1/(numValues-1))}function convertOffsetToTimes(offset$1,duration){return offset$1.map(o$1=>o$1*duration)}function keyframes$2({from=0,to:to$1=1,ease,offset:offset$1,duration=300}){let state={done:!1,value:from},values=Array.isArray(to$1)?to$1:[from,to$1],times=convertOffsetToTimes(offset$1&&offset$1.length===values.length?offset$1:defaultOffset(values),duration);function createInterpolator(){return interpolate(times,values,{ease:Array.isArray(ease)?ease:defaultEasing(values,ease)})}let interpolator=createInterpolator();return{next:t=>(state.value=interpolator(t),state.done=t>=duration,state),flipTarget:()=>{values.reverse(),interpolator=createInterpolator()}}}function decay({velocity=0,from=0,power=.8,timeConstant=350,restDelta=.5,modifyTarget}){let state={done:!1,value:from},amplitude=power*velocity,ideal=from+amplitude,target$1=modifyTarget===void 0?ideal:modifyTarget(ideal);return target$1!==ideal&&(amplitude=target$1-from),{next:t=>{let delta=-amplitude*Math.exp(-t/timeConstant);return state.done=!(delta>restDelta||delta<-restDelta),state.value=state.done?target$1:target$1+delta,state},flipTarget:()=>{}}}const types={keyframes:keyframes$2,spring,decay};function detectAnimationFromOptions(config){if(Array.isArray(config.to))return keyframes$2;if(types[config.type])return types[config.type];let keys$3=new Set(Object.keys(config));return keys$3.has(`ease`)||keys$3.has(`duration`)&&!keys$3.has(`dampingRatio`)?keyframes$2:keys$3.has(`dampingRatio`)||keys$3.has(`stiffness`)||keys$3.has(`mass`)||keys$3.has(`damping`)||keys$3.has(`restSpeed`)||keys$3.has(`restDelta`)?spring:keyframes$2}function loopElapsed(elapsed,duration,delay=0){return elapsed-duration-delay}function reverseElapsed(elapsed,duration,delay=0,isForwardPlayback=!0){return isForwardPlayback?loopElapsed(duration+-elapsed,duration,delay):duration-(elapsed-duration)+delay}function hasRepeatDelayElapsed(elapsed,duration,delay,isForwardPlayback){return isForwardPlayback?elapsed>=duration+delay:elapsed<=-delay}const framesync=update=>{let passTimestamp=({delta})=>update(delta);return{start:()=>es_default.update(passTimestamp,!0),stop:()=>cancelSync.update(passTimestamp)}};function animate(_a$2){var _b,_c,{from,autoplay=!0,driver=framesync,elapsed=0,repeat:repeatMax=0,repeatType=`loop`,repeatDelay=0,onPlay,onStop,onComplete,onRepeat,onUpdate}=_a$2,options$1=__rest(_a$2,[`from`,`autoplay`,`driver`,`elapsed`,`repeat`,`repeatType`,`repeatDelay`,`onPlay`,`onStop`,`onComplete`,`onRepeat`,`onUpdate`]);let{to:to$1}=options$1,driverControls,repeatCount=0,computedDuration=options$1.duration,latest,isComplete=!1,isForwardPlayback=!0,interpolateFromNumber,animator=detectAnimationFromOptions(options$1);(_c=(_b=animator).needsInterpolation)?.call(_b,from,to$1)&&(interpolateFromNumber=interpolate([0,100],[from,to$1],{clamp:!1}),from=0,to$1=100);let animation=animator(Object.assign(Object.assign({},options$1),{from,to:to$1}));function repeat(){repeatCount++,repeatType===`reverse`?(isForwardPlayback=repeatCount%2==0,elapsed=reverseElapsed(elapsed,computedDuration,repeatDelay,isForwardPlayback)):(elapsed=loopElapsed(elapsed,computedDuration,repeatDelay),repeatType===`mirror`&&animation.flipTarget()),isComplete=!1,onRepeat&&onRepeat()}function complete(){driverControls.stop(),onComplete&&onComplete()}function update(delta){if(isForwardPlayback||(delta=-delta),elapsed+=delta,!isComplete){let state=animation.next(Math.max(0,elapsed));latest=state.value,interpolateFromNumber&&(latest=interpolateFromNumber(latest)),isComplete=isForwardPlayback?state.done:elapsed<=0}onUpdate?.(latest),isComplete&&(repeatCount===0&&(computedDuration??=elapsed),repeatCount{onStop?.(),driverControls.stop()}}}function velocityPerSecond(velocity,frameDuration){return frameDuration?velocity*(1e3/frameDuration):0}function inertia({from=0,velocity=0,min:min$1,max:max$1,power=.8,timeConstant=750,bounceStiffness=500,bounceDamping=10,restDelta=1,modifyTarget,driver,onUpdate,onComplete,onStop}){let currentAnimation;function isOutOfBounds(v$1){return min$1!==void 0&&v$1max$1}function boundaryNearest(v$1){return min$1===void 0?max$1:max$1===void 0||Math.abs(min$1-v$1){var _a$2;onUpdate?.(v$1),(_a$2=options$1.onUpdate)==null||_a$2.call(options$1,v$1)},onComplete,onStop}))}function startSpring(options$1){startAnimation(Object.assign({type:`spring`,stiffness:bounceStiffness,damping:bounceDamping,restDelta},options$1))}if(isOutOfBounds(from))startSpring({from,velocity,to:boundaryNearest(from)});else{let target$1=power*velocity+from;modifyTarget!==void 0&&(target$1=modifyTarget(target$1));let boundary=boundaryNearest(target$1),heading$1=boundary===min$1?-1:1,prev,current,checkBoundary=v$1=>{prev=current,current=v$1,velocity=velocityPerSecond(v$1-prev,getFrameData().delta),(heading$1===1&&v$1>boundary||heading$1===-1&&v$1currentAnimation?.stop()}}const a$1=(a1,a2)=>1-3*a2+3*a1,b$2=(a1,a2)=>3*a2-6*a1,c$3=a1=>3*a1,calcBezier=(t,a1,a2)=>((a$1(a1,a2)*t+b$2(a1,a2))*t+c$3(a1))*t,getSlope=(t,a1,a2)=>3*a$1(a1,a2)*t*t+2*b$2(a1,a2)*t+c$3(a1),subdivisionPrecision=1e-7,subdivisionMaxIterations=10;function binarySubdivide(aX,aA,aB,mX1,mX2){let currentX,currentT,i$1=0;do currentT=aA+(aB-aA)/2,currentX=calcBezier(currentT,mX1,mX2)-aX,currentX>0?aB=currentT:aA=currentT;while(Math.abs(currentX)>subdivisionPrecision&&++i$1=newtonMinSlope?newtonRaphsonIterate(aX,guessForT,mX1,mX2):initialSlope===0?guessForT:binarySubdivide(aX,intervalStart,intervalStart+kSampleStepSize,mX1,mX2)}return t=>t===0||t===1?t:calcBezier(getTForX(t),mY1,mY2)}const __vite_import_meta_env__$1={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_TARGET_HUGGINGFACE_SPACE:`true`},motionState={};var SubscriptionManager$1=class{constructor(){babelHelpers.defineProperty(this,`subscriptions`,new Set)}add(handler){return this.subscriptions.add(handler),()=>this.subscriptions.delete(handler)}notify(a$2,b$3,c$4){if(this.subscriptions.size)for(let handler of this.subscriptions)handler(a$2,b$3,c$4)}clear(){this.subscriptions.clear()}};function isFloat$1(value$1){return!Number.isNaN(Number.parseFloat(value$1))}var MotionValue$1=class{constructor(init){babelHelpers.defineProperty(this,`current`,void 0),babelHelpers.defineProperty(this,`prev`,void 0),babelHelpers.defineProperty(this,`timeDelta`,0),babelHelpers.defineProperty(this,`lastUpdated`,0),babelHelpers.defineProperty(this,`updateSubscribers`,new SubscriptionManager$1),babelHelpers.defineProperty(this,`stopAnimation`,void 0),babelHelpers.defineProperty(this,`canTrackVelocity`,!1),babelHelpers.defineProperty(this,`updateAndNotify`,v$1=>{this.prev=this.current,this.current=v$1;let{delta,timestamp:timestamp$2}=getFrameData();this.lastUpdated!==timestamp$2&&(this.timeDelta=delta,this.lastUpdated=timestamp$2),es_default.postRender(this.scheduleVelocityCheck),this.updateSubscribers.notify(this.current)}),babelHelpers.defineProperty(this,`scheduleVelocityCheck`,()=>es_default.postRender(this.velocityCheck)),babelHelpers.defineProperty(this,`velocityCheck`,({timestamp:timestamp$2})=>{this.canTrackVelocity||=isFloat$1(this.current),timestamp$2!==this.lastUpdated&&(this.prev=this.current)}),this.prev=this.current=init,this.canTrackVelocity=isFloat$1(this.current)}onChange(subscription){return this.updateSubscribers.add(subscription)}clearListeners(){this.updateSubscribers.clear()}set(v$1){this.updateAndNotify(v$1)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?velocityPerSecond(Number.parseFloat(this.current)-Number.parseFloat(this.prev),this.timeDelta):0}start(animation){return this.stop(),new Promise(resolve$1=>{let{stop:stop$1}=animation(resolve$1);this.stopAnimation=stop$1}).then(()=>this.clearAnimation())}stop(){this.stopAnimation&&this.stopAnimation(),this.clearAnimation()}isAnimating(){return!!this.stopAnimation}clearAnimation(){this.stopAnimation=null}destroy(){this.updateSubscribers.clear(),this.stop()}};function getMotionValue$1(init){return new MotionValue$1(init)}const{isArray:isArray$4}=Array;function useMotionValues$1(){let motionValues=ref({}),stop$1=keys$3=>{let destroyKey=key$1=>{motionValues.value[key$1]&&(motionValues.value[key$1].stop(),motionValues.value[key$1].destroy(),delete motionValues.value[key$1])};keys$3?isArray$4(keys$3)?keys$3.forEach(destroyKey):destroyKey(keys$3):Object.keys(motionValues.value).forEach(destroyKey)},get=(key$1,from,target$1)=>{if(motionValues.value[key$1])return motionValues.value[key$1];let motionValue=getMotionValue$1(from);return motionValue.onChange(v$1=>target$1[key$1]=v$1),motionValues.value[key$1]=motionValue,motionValue};return tryOnUnmounted(stop$1),{motionValues,get,stop:stop$1}}function isKeyframesTarget$1(v$1){return Array.isArray(v$1)}function underDampedSpring$1(){return{type:`spring`,stiffness:500,damping:25,restDelta:.5,restSpeed:10}}function criticallyDampedSpring$1(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?2*Math.sqrt(550):30,restDelta:.01,restSpeed:10}}function overDampedSpring$1(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?100:30,restDelta:.01,restSpeed:10}}function linearTween$1(){return{type:`keyframes`,ease:`linear`,duration:300}}function keyframes$1(values){return{type:`keyframes`,duration:800,values}}const defaultTransitions$1={default:overDampedSpring$1,x:underDampedSpring$1,y:underDampedSpring$1,z:underDampedSpring$1,rotate:underDampedSpring$1,rotateX:underDampedSpring$1,rotateY:underDampedSpring$1,rotateZ:underDampedSpring$1,scaleX:criticallyDampedSpring$1,scaleY:criticallyDampedSpring$1,scale:criticallyDampedSpring$1,backgroundColor:linearTween$1,color:linearTween$1,opacity:linearTween$1};function getDefaultTransition$1(valueKey,to$1){let transitionFactory;return transitionFactory=isKeyframesTarget$1(to$1)?keyframes$1:defaultTransitions$1[valueKey]||defaultTransitions$1.default,{to:to$1,...transitionFactory(to$1)}}const int$1={...number$2,transform:Math.round},valueTypes$1={color:color$1,backgroundColor:color$1,outlineColor:color$1,fill:color$1,stroke:color$1,borderColor:color$1,borderTopColor:color$1,borderRightColor:color$1,borderBottomColor:color$1,borderLeftColor:color$1,borderWidth:px,borderTopWidth:px,borderRightWidth:px,borderBottomWidth:px,borderLeftWidth:px,borderRadius:px,radius:px,borderTopLeftRadius:px,borderTopRightRadius:px,borderBottomRightRadius:px,borderBottomLeftRadius:px,width:px,maxWidth:px,height:px,maxHeight:px,size:px,top:px,right:px,bottom:px,left:px,padding:px,paddingTop:px,paddingRight:px,paddingBottom:px,paddingLeft:px,margin:px,marginTop:px,marginRight:px,marginBottom:px,marginLeft:px,rotate:degrees,rotateX:degrees,rotateY:degrees,rotateZ:degrees,scale,scaleX:scale,scaleY:scale,scaleZ:scale,skew:degrees,skewX:degrees,skewY:degrees,distance:px,translateX:px,translateY:px,translateZ:px,x:px,y:px,z:px,perspective:px,transformPerspective:px,opacity:alpha,originX:progressPercentage,originY:progressPercentage,originZ:px,zIndex:int$1,filter,WebkitFilter:filter,fillOpacity:alpha,strokeOpacity:alpha,numOctaves:int$1},getValueType$1=key$1=>valueTypes$1[key$1];function getValueAsType$1(value$1,type){return type&&typeof value$1==`number`&&type.transform?type.transform(value$1):value$1}function getAnimatableNone$1(key$1,value$1){let defaultValueType=getValueType$1(key$1);return defaultValueType!==filter&&(defaultValueType=complex),defaultValueType.getAnimatableNone?defaultValueType.getAnimatableNone(value$1):void 0}const easingLookup$1={linear,easeIn,easeInOut,easeOut,circIn,circInOut,circOut,backIn,backInOut,backOut,anticipate,bounceIn,bounceInOut,bounceOut};function easingDefinitionToFunction$1(definition$29){if(Array.isArray(definition$29)){let[x1,y1,x2,y2]=definition$29;return cubicBezier(x1,y1,x2,y2)}else if(typeof definition$29==`string`)return easingLookup$1[definition$29];return definition$29}function isEasingArray$1(ease){return Array.isArray(ease)&&typeof ease[0]!=`number`}function isAnimatable$1(key$1,value$1){return key$1===`zIndex`?!1:!!(typeof value$1==`number`||Array.isArray(value$1)||typeof value$1==`string`&&complex.test(value$1)&&!value$1.startsWith(`url(`))}function hydrateKeyframes$1(options$1){return Array.isArray(options$1.to)&&options$1.to[0]===null&&(options$1.to=[...options$1.to],options$1.to[0]=options$1.from),options$1}function convertTransitionToAnimationOptions$1({ease,times,delay,...transition}){let options$1={...transition};return times&&(options$1.offset=times),ease&&(options$1.ease=isEasingArray$1(ease)?ease.map(easingDefinitionToFunction$1):easingDefinitionToFunction$1(ease)),delay&&(options$1.elapsed=-delay),options$1}function getPopmotionAnimationOptions$1(transition,options$1,key$1){return Array.isArray(options$1.to)&&(transition.duration||=800),hydrateKeyframes$1(options$1),isTransitionDefined$1(transition)||(transition={...transition,...getDefaultTransition$1(key$1,options$1.to)}),{...options$1,...convertTransitionToAnimationOptions$1(transition)}}function isTransitionDefined$1({delay,repeat,repeatType,repeatDelay,from,...transition}){return!!Object.keys(transition).length}function getValueTransition$1(transition,key$1){return transition[key$1]||transition.default||transition}function getAnimation$1(key$1,value$1,target$1,transition,onComplete){let valueTransition=getValueTransition$1(transition,key$1),origin=valueTransition.from===null||valueTransition.from===void 0?value$1.get():valueTransition.from,isTargetAnimatable=isAnimatable$1(key$1,target$1);origin===`none`&&isTargetAnimatable&&typeof target$1==`string`&&(origin=getAnimatableNone$1(key$1,target$1));let isOriginAnimatable=isAnimatable$1(key$1,origin);function start(complete){let options$1={from:origin,to:target$1,velocity:transition.velocity?transition.velocity:value$1.getVelocity(),onUpdate:v$1=>value$1.set(v$1)};return valueTransition.type===`inertia`||valueTransition.type===`decay`?inertia({...options$1,...valueTransition}):animate({...getPopmotionAnimationOptions$1(valueTransition,options$1,key$1),onUpdate:v$1=>{options$1.onUpdate(v$1),valueTransition.onUpdate&&valueTransition.onUpdate(v$1)},onComplete:()=>{onComplete&&onComplete(),complete&&complete()}})}function set(complete){return value$1.set(target$1),onComplete&&onComplete(),complete&&complete(),{stop:()=>{}}}return!isOriginAnimatable||!isTargetAnimatable||valueTransition.type===!1?set:start}function useMotionTransitions$1(){let{motionValues,stop:stop$1,get}=useMotionValues$1(),push$1=(key$1,value$1,target$1,transition={},onComplete)=>{let from=target$1[key$1],motionValue=get(key$1,from,target$1);if(transition&&transition.immediate){motionValue.set(value$1);return}let animation=getAnimation$1(key$1,motionValue,value$1,transition,onComplete);motionValue.start(animation)};return{motionValues,stop:stop$1,push:push$1}}function useMotionControls$1(motionProperties,variants={},{motionValues,push:push$1,stop:stop$1}=useMotionTransitions$1()){let _variants=unref(variants),isAnimating=ref(!1);watch(motionValues,newVal=>{isAnimating.value=Object.values(newVal).filter(value$1=>value$1.isAnimating()).length>0},{immediate:!0,deep:!0});let getVariantFromKey=variant=>{if(!_variants||!_variants[variant])throw Error(`The variant ${variant} does not exist.`);return _variants[variant]},apply$2=variant=>{typeof variant==`string`&&(variant=getVariantFromKey(variant));let animations$1=Object.entries(variant).map(([key$1,value$1])=>{if(key$1!==`transition`)return new Promise(resolve$1=>push$1(key$1,value$1,motionProperties,variant.transition||getDefaultTransition$1(key$1,variant[key$1]),resolve$1))}).filter(Boolean);async function waitForComplete(){var _variant$transition,_variant$transition$o;await Promise.all(animations$1),(_variant$transition=variant.transition)==null||(_variant$transition$o=_variant$transition.onComplete)==null||_variant$transition$o.call(_variant$transition)}return Promise.all([waitForComplete()])},set=variant=>{let variantData=isObject$1(variant)?variant:getVariantFromKey(variant);Object.entries(variantData).forEach(([key$1,value$1])=>{key$1!==`transition`&&push$1(key$1,value$1,motionProperties,{immediate:!0})})},leave=async done=>{let leaveVariant;if(_variants&&(_variants.leave&&(leaveVariant=_variants.leave),!_variants.leave&&_variants.initial&&(leaveVariant=_variants.initial)),!leaveVariant){done();return}await apply$2(leaveVariant),done()};return{isAnimating,apply:apply$2,set,leave,stop:stop$1}}const isBrowser$2=typeof window<`u`,supportsPointerEvents$1=()=>isBrowser$2&&(window.onpointerdown===null||__vite_import_meta_env__$1?.TEST),supportsTouchEvents$1=()=>isBrowser$2&&(window.ontouchstart===null||__vite_import_meta_env__$1?.TEST),supportsMouseEvents$1=()=>isBrowser$2&&(window.onmousedown===null||__vite_import_meta_env__$1?.TEST);function registerEventListeners$1({target:target$1,state,variants,apply:apply$2}){let _variants=unref(variants),hovered=ref(!1),tapped=ref(!1),focused=ref(!1),mutableKeys=computed(()=>{let result=[...Object.keys(state.value||{})];return _variants?(_variants.hovered&&(result=[...result,...Object.keys(_variants.hovered)]),_variants.tapped&&(result=[...result,...Object.keys(_variants.tapped)]),_variants.focused&&(result=[...result,...Object.keys(_variants.focused)]),result):result}),computedProperties=computed(()=>{let result={};for(let key$1 in Object.assign(result,state.value),hovered.value&&_variants.hovered&&Object.assign(result,_variants.hovered),tapped.value&&_variants.tapped&&Object.assign(result,_variants.tapped),focused.value&&_variants.focused&&Object.assign(result,_variants.focused),result)mutableKeys.value.includes(key$1)||delete result[key$1];return result});_variants.hovered&&(useEventListener$1(target$1,`mouseenter`,()=>hovered.value=!0),useEventListener$1(target$1,`mouseleave`,()=>{hovered.value=!1,tapped.value=!1})),_variants.tapped&&(supportsMouseEvents$1()&&(useEventListener$1(target$1,`mousedown`,()=>tapped.value=!0),useEventListener$1(target$1,`mouseup`,()=>tapped.value=!1)),supportsPointerEvents$1()&&(useEventListener$1(target$1,`pointerdown`,()=>tapped.value=!0),useEventListener$1(target$1,`pointerup`,()=>tapped.value=!1)),supportsTouchEvents$1()&&(useEventListener$1(target$1,`touchstart`,()=>tapped.value=!0),useEventListener$1(target$1,`touchend`,()=>tapped.value=!1))),_variants.focused&&(useEventListener$1(target$1,`focus`,()=>focused.value=!0),useEventListener$1(target$1,`blur`,()=>focused.value=!1)),watch([hovered,tapped,focused],()=>{apply$2(computedProperties.value)})}function registerLifeCycleHooks$1({set,target:target$1,variants,variant}){let _variants=unref(variants);watch(()=>target$1,()=>{_variants&&(_variants.initial&&(set(`initial`),variant.value=`initial`),_variants.enter&&(variant.value=`enter`))},{immediate:!0,flush:`pre`})}function registerVariantsSync$1({state,apply:apply$2}){watch(state,newVal=>{newVal&&apply$2(newVal)},{immediate:!0})}function registerVisibilityHooks$1({target:target$1,variants,variant}){let _variants=unref(variants);_variants&&(_variants.visible||_variants.visibleOnce)&&useIntersectionObserver(target$1,([{isIntersecting}])=>{_variants.visible?isIntersecting?variant.value=`visible`:variant.value=`initial`:_variants.visibleOnce&&(isIntersecting&&variant.value!==`visibleOnce`?variant.value=`visibleOnce`:variant.value||=`initial`)})}function useMotionFeatures$1(instance,options$1={syncVariants:!0,lifeCycleHooks:!0,visibilityHooks:!0,eventListeners:!0}){options$1.lifeCycleHooks&®isterLifeCycleHooks$1(instance),options$1.syncVariants&®isterVariantsSync$1(instance),options$1.visibilityHooks&®isterVisibilityHooks$1(instance),options$1.eventListeners&®isterEventListeners$1(instance)}function reactiveStyle$1(props={}){let state=reactive({...props}),style=ref({});return watch(state,()=>{let result={};for(let[key$1,value$1]of Object.entries(state)){let valueType=getValueType$1(key$1),valueAsType=getValueAsType$1(value$1,valueType);result[key$1]=valueAsType}style.value=result},{immediate:!0,deep:!0}),{state,style}}function usePermissiveTarget$1(target$1,onTarget){watch(()=>unrefElement$1(target$1),el=>{el&&onTarget(el)},{immediate:!0})}const translateAlias$1={x:`translateX`,y:`translateY`,z:`translateZ`};function reactiveTransform$1(props={},enableHardwareAcceleration=!0){let state=reactive({...props}),transform$1=ref(``);return watch(state,newVal=>{let result=``,hasHardwareAcceleration=!1;if(enableHardwareAcceleration&&(newVal.x||newVal.y||newVal.z)){let str=[newVal.x||0,newVal.y||0,newVal.z||0].map(val=>getValueAsType$1(val,px)).join(`,`);result+=`translate3d(${str}) `,hasHardwareAcceleration=!0}for(let[key$1,value$1]of Object.entries(newVal)){if(enableHardwareAcceleration&&(key$1===`x`||key$1===`y`||key$1===`z`))continue;let valueType=getValueType$1(key$1),valueAsType=getValueAsType$1(value$1,valueType);result+=`${translateAlias$1[key$1]||key$1}(${valueAsType}) `}enableHardwareAcceleration&&!hasHardwareAcceleration&&(result+=`translateZ(0px) `),transform$1.value=result.trim()},{immediate:!0,deep:!0}),{state,transform:transform$1}}const transformAxes$1=[``,`X`,`Y`,`Z`],order$2=[`perspective`,`translate`,`scale`,`rotate`,`skew`],transformProps$1=[`transformPerspective`,`x`,`y`,`z`];order$2.forEach(operationKey=>{transformAxes$1.forEach(axesKey=>{let key$1=operationKey+axesKey;transformProps$1.push(key$1)})});const transformPropSet$1=new Set(transformProps$1);function isTransformProp$1(key$1){return transformPropSet$1.has(key$1)}const transformOriginProps$1=new Set([`originX`,`originY`,`originZ`]);function isTransformOriginProp$1(key$1){return transformOriginProps$1.has(key$1)}function splitValues$1(variant){let transform$1={},style={};return Object.entries(variant).forEach(([key$1,value$1])=>{isTransformProp$1(key$1)||isTransformOriginProp$1(key$1)?transform$1[key$1]=value$1:style[key$1]=value$1}),{transform:transform$1,style}}function variantToStyle$1(variant){let{transform:_transform,style:_style}=splitValues$1(variant),{transform:transform$1}=reactiveTransform$1(_transform),{style}=reactiveStyle$1(_style);return transform$1.value&&(style.value.transform=transform$1.value),style.value}function useElementStyle$1(target$1,onInit){let _cache$1,_target$1,{state,style}=reactiveStyle$1();return usePermissiveTarget$1(target$1,el=>{_target$1=el;for(let key$1 of Object.keys(valueTypes$1)){if(el.style[key$1]===null||el.style[key$1]===``||isTransformProp$1(key$1)||isTransformOriginProp$1(key$1))continue;state[key$1]=el.style[key$1]}_cache$1&&Object.entries(_cache$1).forEach(([key$1,value$1])=>el.style[key$1]=value$1),onInit&&onInit(state)}),watch(style,newVal=>{if(!_target$1){_cache$1=newVal;return}for(let key$1 in newVal)_target$1.style[key$1]=newVal[key$1]},{immediate:!0}),{style:state}}function parseTransform$1(transform$1){let transforms=transform$1.trim().split(/\) |\)/);if(transforms.length===1)return{};let parseValues=value$1=>value$1.endsWith(`px`)||value$1.endsWith(`deg`)?Number.parseFloat(value$1):Number.isNaN(Number(value$1))?Number(value$1):value$1;return transforms.reduce((acc,transform2)=>{if(!transform2)return acc;let[name$2,transformValue]=transform2.split(`(`),valueArray=transformValue.split(`,`),values=valueArray.map(val=>parseValues(val.endsWith(`)`)?val.replace(`)`,``):val.trim())),value$1=values.length===1?values[0]:values;return{...acc,[name$2]:value$1}},{})}function stateFromTransform$1(state,transform$1){Object.entries(parseTransform$1(transform$1)).forEach(([key$1,value$1])=>{let axes=[`x`,`y`,`z`];if(key$1===`translate3d`){if(value$1===0){axes.forEach(axis=>state[axis]=0);return}value$1.forEach((axisValue,index$1)=>state[axes[index$1]]=axisValue);return}if(value$1=Number.parseFloat(`${value$1}`),key$1===`translateX`){state.x=value$1;return}if(key$1===`translateY`){state.y=value$1;return}if(key$1===`translateZ`){state.z=value$1;return}state[key$1]=value$1})}function useElementTransform$1(target$1,onInit){let _cache$1,_target$1,{state,transform:transform$1}=reactiveTransform$1();return usePermissiveTarget$1(target$1,el=>{_target$1=el,el.style.transform&&stateFromTransform$1(state,el.style.transform),_cache$1&&(el.style.transform=_cache$1),onInit&&onInit(state)}),watch(transform$1,newValue=>{if(!_target$1){_cache$1=newValue;return}_target$1.style.transform=newValue},{immediate:!0}),{transform:state}}function objectEntries$1(obj){return Object.entries(obj)}function useMotionProperties$1(target$1,defaultValues){let motionProperties=reactive({}),apply$2=values=>Object.entries(values).forEach(([key$1,value$1])=>motionProperties[key$1]=value$1),{style}=useElementStyle$1(target$1,apply$2),{transform:transform$1}=useElementTransform$1(target$1,apply$2);return watch(motionProperties,newVal=>{objectEntries$1(newVal).forEach(([key$1,value$1])=>{let target2=isTransformProp$1(key$1)?transform$1:style;target2[key$1]&&target2[key$1]===value$1||(target2[key$1]=value$1)})},{immediate:!0,deep:!0}),usePermissiveTarget$1(target$1,()=>defaultValues&&apply$2(defaultValues)),{motionProperties,style,transform:transform$1}}function useMotionVariants$1(variants={}){let _variants=unref(variants),variant=ref(),state=computed(()=>{if(variant.value)return _variants[variant.value]});return{state,variant}}function useMotion$1(target$1,variants={},options$1){let{motionProperties}=useMotionProperties$1(target$1),{variant,state}=useMotionVariants$1(variants),controls=useMotionControls$1(motionProperties,variants),instance={target:target$1,variant,variants,state,motionProperties,...controls};return useMotionFeatures$1(instance,options$1),instance}const transitionKeys$1=[`delay`,`duration`],directivePropsKeys$1=[`initial`,`enter`,`leave`,`visible`,`visible-once`,`visibleOnce`,`hovered`,`tapped`,`focused`,...transitionKeys$1];function isTransitionKey(val){return transitionKeys$1.includes(val)}function resolveVariants(node$1,variantsRef){let target$1=node$1.props?node$1.props:node$1.data&&node$1.data.attrs?node$1.data.attrs:{};if(target$1){target$1.variants&&isObject$1(target$1.variants)&&(variantsRef.value={...variantsRef.value,...target$1.variants});for(let key$1 of directivePropsKeys$1){if(!target$1||!target$1[key$1])continue;if(isTransitionKey(key$1)&&typeof target$1[key$1]==`number`){for(let variantKey of[`enter`,`visible`,`visibleOnce`]){let variantConfig=variantsRef.value[variantKey];if(variantConfig==null)continue;variantConfig.transition??={},variantConfig.transition[key$1]=target$1[key$1]}continue}if(isObject$1(target$1[key$1])){let prop=target$1[key$1];key$1===`visible-once`&&(key$1=`visibleOnce`),variantsRef.value[key$1]=prop}}}}function directive(variants,isPreset=!1){let register=(el,binding,node$1)=>{let key$1=binding.value&&typeof binding.value==`string`?binding.value:node$1.key;key$1&&motionState[key$1]&&motionState[key$1].stop();let variantsObject=isPreset?structuredClone(toRaw(variants)||{}):variants||{},variantsRef=ref(variantsObject);typeof binding.value==`object`&&(variantsRef.value=binding.value),resolveVariants(node$1,variantsRef);let motionOptions={eventListeners:!0,lifeCycleHooks:!0,syncVariants:!0,visibilityHooks:!1},motionInstance=useMotion$1(el,variantsRef,motionOptions);el.motionInstance=motionInstance,key$1&&(motionState[key$1]=motionInstance)},mounted=(el,_binding,_node)=>{el.motionInstance&®isterVisibilityHooks$1(el.motionInstance)};return{created:register,mounted,getSSRProps(binding,node$1){let{initial:bindingInitial}=binding.value||node$1&&node$1?.props||{};bindingInitial=unref(bindingInitial);let initial=defu({},variants?.initial||{},bindingInitial||{});if(!initial||Object.keys(initial).length===0)return;let style=variantToStyle$1(initial);return{style}}}}const fade$1={initial:{opacity:0},enter:{opacity:1}},fadeVisible$1={initial:{opacity:0},visible:{opacity:1}},fadeVisibleOnce$1={initial:{opacity:0},visibleOnce:{opacity:1}},pop$1={initial:{scale:0,opacity:0},enter:{scale:1,opacity:1}},popVisible$1={initial:{scale:0,opacity:0},visible:{scale:1,opacity:1}},popVisibleOnce$1={initial:{scale:0,opacity:0},visibleOnce:{scale:1,opacity:1}},rollLeft$1={initial:{x:-100,rotate:90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleLeft$1={initial:{x:-100,rotate:90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceLeft$1={initial:{x:-100,rotate:90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollRight$1={initial:{x:100,rotate:-90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleRight$1={initial:{x:100,rotate:-90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceRight$1={initial:{x:100,rotate:-90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollTop$1={initial:{y:-100,rotate:-90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleTop$1={initial:{y:-100,rotate:-90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceTop$1={initial:{y:-100,rotate:-90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},rollBottom$1={initial:{y:100,rotate:90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleBottom$1={initial:{y:100,rotate:90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceBottom$1={initial:{y:100,rotate:90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},slideLeft$1={initial:{x:-100,opacity:0},enter:{x:0,opacity:1}},slideVisibleLeft$1={initial:{x:-100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceLeft$1={initial:{x:-100,opacity:0},visibleOnce:{x:0,opacity:1}},slideRight$1={initial:{x:100,opacity:0},enter:{x:0,opacity:1}},slideVisibleRight$1={initial:{x:100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceRight$1={initial:{x:100,opacity:0},visibleOnce:{x:0,opacity:1}},slideTop$1={initial:{y:-100,opacity:0},enter:{y:0,opacity:1}},slideVisibleTop$1={initial:{y:-100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceTop$1={initial:{y:-100,opacity:0},visibleOnce:{y:0,opacity:1}},slideBottom$1={initial:{y:100,opacity:0},enter:{y:0,opacity:1}},slideVisibleBottom$1={initial:{y:100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceBottom$1={initial:{y:100,opacity:0},visibleOnce:{y:0,opacity:1}},presets$1={__proto__:null,fade:fade$1,fadeVisible:fadeVisible$1,fadeVisibleOnce:fadeVisibleOnce$1,pop:pop$1,popVisible:popVisible$1,popVisibleOnce:popVisibleOnce$1,rollBottom:rollBottom$1,rollLeft:rollLeft$1,rollRight:rollRight$1,rollTop:rollTop$1,rollVisibleBottom:rollVisibleBottom$1,rollVisibleLeft:rollVisibleLeft$1,rollVisibleOnceBottom:rollVisibleOnceBottom$1,rollVisibleOnceLeft:rollVisibleOnceLeft$1,rollVisibleOnceRight:rollVisibleOnceRight$1,rollVisibleOnceTop:rollVisibleOnceTop$1,rollVisibleRight:rollVisibleRight$1,rollVisibleTop:rollVisibleTop$1,slideBottom:slideBottom$1,slideLeft:slideLeft$1,slideRight:slideRight$1,slideTop:slideTop$1,slideVisibleBottom:slideVisibleBottom$1,slideVisibleLeft:slideVisibleLeft$1,slideVisibleOnceBottom:slideVisibleOnceBottom$1,slideVisibleOnceLeft:slideVisibleOnceLeft$1,slideVisibleOnceRight:slideVisibleOnceRight$1,slideVisibleOnceTop:slideVisibleOnceTop$1,slideVisibleRight:slideVisibleRight$1,slideVisibleTop:slideVisibleTop$1};function slugify(str){let a$2=`àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìłḿñńǹňôöòóœøōõőṕŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż·/_,:;`,b$3=`aaaaaaaaaacccddeeeeeeeegghiiiiiilmnnnnoooooooooprrsssssttuuuuuuuuuwxyyzzz------`,p$5=new RegExp(a$2.split(``).join(`|`),`g`);return str.toString().replace(/[A-Z]/g,s$1=>`-${s$1}`).toLowerCase().replace(/\s+/g,`-`).replace(p$5,c$4=>b$3.charAt(a$2.indexOf(c$4))).replace(/&/g,`-and-`).replace(/[^\w\-]+/g,``).replace(/-{2,}/g,`-`).replace(/^-+/,``).replace(/-+$/,``)}const CUSTOM_PRESETS$1=Symbol(``),MotionComponentProps$1={preset:{type:String,required:!1},instance:{type:Object,required:!1},variants:{type:Object,required:!1},initial:{type:Object,required:!1},enter:{type:Object,required:!1},leave:{type:Object,required:!1},visible:{type:Object,required:!1},visibleOnce:{type:Object,required:!1},hovered:{type:Object,required:!1},tapped:{type:Object,required:!1},focused:{type:Object,required:!1},delay:{type:[Number,String],required:!1},duration:{type:[Number,String],required:!1}};function isObject$3(val){return Object.prototype.toString.call(val)===`[object Object]`}function clone$1(v$1){if(Array.isArray(v$1))return v$1.map(clone$1);if(isObject$3(v$1)){let res={};for(let key$1 in v$1)res[key$1]=clone$1(v$1[key$1]);return res}return v$1}function setupMotionComponent$1(props){let instances=reactive({}),customPresets=inject(CUSTOM_PRESETS$1,{}),preset=computed(()=>props.preset==null?{}:customPresets!=null&&props.preset in customPresets?structuredClone(toRaw(customPresets)[props.preset]):props.preset in presets$1?structuredClone(presets$1[props.preset]):{}),propsConfig=computed(()=>({initial:props.initial,enter:props.enter,leave:props.leave,visible:props.visible,visibleOnce:props.visibleOnce,hovered:props.hovered,tapped:props.tapped,focused:props.focused}));function applyTransitionHelpers(config,values){for(let transitionKey of[`delay`,`duration`]){if(values[transitionKey]==null)continue;let transitionValueParsed=Number.parseInt(values[transitionKey]);for(let variantKey of[`enter`,`visible`,`visibleOnce`]){let variantConfig=config[variantKey];if(variantConfig==null)continue;variantConfig.transition??={},variantConfig.transition[transitionKey]=transitionValueParsed}}return config}let motionConfig=computed(()=>{let config=defu({},propsConfig.value,preset.value,props.variants||{});return applyTransitionHelpers({...config},props)});function setNodeInstance(node$1,index$1,style){var _node$1$props;node$1.props??={},(_node$1$props=node$1.props).style??(_node$1$props.style={}),node$1.props.style={...node$1.props.style,...style};let elementMotionConfig=applyTransitionHelpers(clone$1(motionConfig.value),node$1.props);return node$1.props.onVnodeMounted=({el})=>{instances[index$1]=useMotion$1(el,elementMotionConfig)},node$1.props.onVnodeUpdated=({el})=>{let styles=variantToStyle$1(instances[index$1].state);for(let[key$1,val]of Object.entries(styles))el.style[key$1]=val},node$1}return{motionConfig,setNodeInstance}}const MotionComponent$1=defineComponent({name:`Motion`,props:{...MotionComponentProps$1,is:{type:[String,Object],default:`div`}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent$1(props);return()=>{let style=variantToStyle$1(motionConfig.value.initial||{}),node$1=h(props.is,void 0,slots);return setNodeInstance(node$1,0,style),node$1}}}),MotionGroupComponent$1=defineComponent({name:`MotionGroup`,props:{...MotionComponentProps$1,is:{type:[String,Object],required:!1}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent$1(props);return()=>{var _slots$default;let style=variantToStyle$1(motionConfig.value.initial||{}),nodes=(_slots$default=slots.default)?.call(slots)||[];for(let i$1=0;i$1activePinia=pinia$1,piniaSymbol=Symbol();function isPlainObject$4(o$1){return o$1&&typeof o$1==`object`&&Object.prototype.toString.call(o$1)===`[object Object]`&&typeof o$1.toJSON!=`function`}var MutationType;(function(MutationType$1){MutationType$1.direct=`direct`,MutationType$1.patchObject=`patch object`,MutationType$1.patchFunction=`patch function`})(MutationType||={});const IS_CLIENT=typeof window<`u`,_global=(()=>typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null})();function bom(blob,{autoBom=!1}={}){return autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)?new Blob([``,blob],{type:blob.type}):blob}function download(url,name$2,opts){let xhr=new XMLHttpRequest;xhr.open(`GET`,url),xhr.responseType=`blob`,xhr.onload=function(){saveAs(xhr.response,name$2,opts)},xhr.onerror=function(){console.error(`could not download file`)},xhr.send()}function corsEnabled(url){let xhr=new XMLHttpRequest;xhr.open(`HEAD`,url,!1);try{xhr.send()}catch{}return xhr.status>=200&&xhr.status<=299}function click(node$1){try{node$1.dispatchEvent(new MouseEvent(`click`))}catch{let evt=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});node$1.dispatchEvent(evt)}}const _navigator=typeof navigator==`object`?navigator:{userAgent:``},isMacOSWebView=(()=>/Macintosh/.test(_navigator.userAgent)&&/AppleWebKit/.test(_navigator.userAgent)&&!/Safari/.test(_navigator.userAgent))(),saveAs=IS_CLIENT?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!isMacOSWebView?downloadSaveAs:`msSaveOrOpenBlob`in _navigator?msSaveAs:fileSaverSaveAs:()=>{};function downloadSaveAs(blob,name$2=`download`,opts){let a$2=document.createElement(`a`);a$2.download=name$2,a$2.rel=`noopener`,typeof blob==`string`?(a$2.href=blob,a$2.origin===location.origin?click(a$2):corsEnabled(a$2.href)?download(blob,name$2,opts):(a$2.target=`_blank`,click(a$2))):(a$2.href=URL.createObjectURL(blob),setTimeout(function(){URL.revokeObjectURL(a$2.href)},4e4),setTimeout(function(){click(a$2)},0))}function msSaveAs(blob,name$2=`download`,opts){if(typeof blob==`string`)if(corsEnabled(blob))download(blob,name$2,opts);else{let a$2=document.createElement(`a`);a$2.href=blob,a$2.target=`_blank`,setTimeout(function(){click(a$2)})}else navigator.msSaveOrOpenBlob(bom(blob,opts),name$2)}function fileSaverSaveAs(blob,name$2,opts,popup){if(popup||=open(``,`_blank`),popup&&(popup.document.title=popup.document.body.innerText=`downloading...`),typeof blob==`string`)return download(blob,name$2,opts);let force=blob.type===`application/octet-stream`,isSafari=/constructor/i.test(String(_global.HTMLElement))||`safari`in _global,isChromeIOS=/CriOS\/[\d]+/.test(navigator.userAgent);if((isChromeIOS||force&&isSafari||isMacOSWebView)&&typeof FileReader<`u`){let reader=new FileReader;reader.onloadend=function(){let url=reader.result;if(typeof url!=`string`)throw popup=null,Error(`Wrong reader.result type`);url=isChromeIOS?url:url.replace(/^data:[^;]*;/,`data:attachment/file;`),popup?popup.location.href=url:location.assign(url),popup=null},reader.readAsDataURL(blob)}else{let url=URL.createObjectURL(blob);popup?popup.location.assign(url):location.href=url,popup=null,setTimeout(function(){URL.revokeObjectURL(url)},4e4)}}const{assign:assign$1$1}=Object;function createPinia(){let scope=effectScope(!0),state=scope.run(()=>ref({})),_p=[],toBeInstalled=[],pinia$1=markRaw({install(app){setActivePinia(pinia$1),pinia$1._a=app,app.provide(piniaSymbol,pinia$1),app.config.globalProperties.$pinia=pinia$1,toBeInstalled.forEach(plugin=>_p.push(plugin)),toBeInstalled=[]},use(plugin){return this._a?_p.push(plugin):toBeInstalled.push(plugin),this},_p,_a:null,_e:scope,_s:new Map,state});return pinia$1}const noop$1=()=>{};function addSubscription(subscriptions,callback,detached,onCleanup=noop$1){subscriptions.push(callback);let removeSubscription=()=>{let idx=subscriptions.indexOf(callback);idx>-1&&(subscriptions.splice(idx,1),onCleanup())};return!detached&&getCurrentScope()&&onScopeDispose(removeSubscription),removeSubscription}function triggerSubscriptions(subscriptions,...args){subscriptions.slice().forEach(callback=>{callback(...args)})}const fallbackRunWithContext=fn$5=>fn$5(),ACTION_MARKER=Symbol(),ACTION_NAME=Symbol();function mergeReactiveObjects(target$1,patchToApply){for(let key$1 in target$1 instanceof Map&&patchToApply instanceof Map?patchToApply.forEach((value$1,key$1)=>target$1.set(key$1,value$1)):target$1 instanceof Set&&patchToApply instanceof Set&&patchToApply.forEach(target$1.add,target$1),patchToApply){if(!patchToApply.hasOwnProperty(key$1))continue;let subPatch=patchToApply[key$1],targetValue=target$1[key$1];isPlainObject$4(targetValue)&&isPlainObject$4(subPatch)&&target$1.hasOwnProperty(key$1)&&!isRef(subPatch)&&!isReactive(subPatch)?target$1[key$1]=mergeReactiveObjects(targetValue,subPatch):target$1[key$1]=subPatch}return target$1}const skipHydrateSymbol=Symbol();function shouldHydrate(obj){return!isPlainObject$4(obj)||!Object.prototype.hasOwnProperty.call(obj,skipHydrateSymbol)}const{assign:assign$2}=Object;function isComputed(o$1){return!!(isRef(o$1)&&o$1.effect)}function createOptionsStore(id,options$1,pinia$1,hot){let{state,actions,getters}=options$1,initialState=pinia$1.state.value[id],store;function setup(){initialState||(pinia$1.state.value[id]=state?state():{});let localState=toRefs(pinia$1.state.value[id]);return assign$2(localState,actions,Object.keys(getters||{}).reduce((computedGetters,name$2)=>(computedGetters[name$2]=markRaw(computed(()=>{setActivePinia(pinia$1);let store$1=pinia$1._s.get(id);return getters[name$2].call(store$1,store$1)})),computedGetters),{}))}return store=createSetupStore(id,setup,options$1,pinia$1,hot,!0),store}function createSetupStore($id,setup,options$1={},pinia$1,hot,isOptionsStore){let scope,optionsForPlugin=assign$2({actions:{}},options$1),$subscribeOptions={deep:!0},isListening,isSyncListening,subscriptions=[],actionSubscriptions=[],debuggerEvents,initialState=pinia$1.state.value[$id];!isOptionsStore&&!initialState&&(pinia$1.state.value[$id]={});let hotState=ref({}),activeListener;function $patch(partialStateOrMutator){let subscriptionMutation;isListening=isSyncListening=!1,typeof partialStateOrMutator==`function`?(partialStateOrMutator(pinia$1.state.value[$id]),subscriptionMutation={type:MutationType.patchFunction,storeId:$id,events:debuggerEvents}):(mergeReactiveObjects(pinia$1.state.value[$id],partialStateOrMutator),subscriptionMutation={type:MutationType.patchObject,payload:partialStateOrMutator,storeId:$id,events:debuggerEvents});let myListenerId=activeListener=Symbol();nextTick().then(()=>{activeListener===myListenerId&&(isListening=!0)}),isSyncListening=!0,triggerSubscriptions(subscriptions,subscriptionMutation,pinia$1.state.value[$id])}let $reset=isOptionsStore?function(){let{state}=options$1,newState=state?state():{};this.$patch($state=>{assign$2($state,newState)})}:noop$1;function $dispose(){scope.stop(),subscriptions=[],actionSubscriptions=[],pinia$1._s.delete($id)}let action=(fn$5,name$2=``)=>{if(ACTION_MARKER in fn$5)return fn$5[ACTION_NAME]=name$2,fn$5;let wrappedAction=function(){setActivePinia(pinia$1);let args=Array.from(arguments),afterCallbackList=[],onErrorCallbackList=[];function after(callback){afterCallbackList.push(callback)}function onError(callback){onErrorCallbackList.push(callback)}triggerSubscriptions(actionSubscriptions,{args,name:wrappedAction[ACTION_NAME],store,after,onError});let ret;try{ret=fn$5.apply(this&&this.$id===$id?this:store,args)}catch(error){throw triggerSubscriptions(onErrorCallbackList,error),error}return ret instanceof Promise?ret.then(value$1=>(triggerSubscriptions(afterCallbackList,value$1),value$1)).catch(error=>(triggerSubscriptions(onErrorCallbackList,error),Promise.reject(error))):(triggerSubscriptions(afterCallbackList,ret),ret)};return wrappedAction[ACTION_MARKER]=!0,wrappedAction[ACTION_NAME]=name$2,wrappedAction},_hmrPayload=markRaw({actions:{},getters:{},state:[],hotState}),partialStore={_p:pinia$1,$id,$onAction:addSubscription.bind(null,actionSubscriptions),$patch,$reset,$subscribe(callback,options$2={}){let removeSubscription=addSubscription(subscriptions,callback,options$2.detached,()=>stopWatcher()),stopWatcher=scope.run(()=>watch(()=>pinia$1.state.value[$id],state=>{(options$2.flush===`sync`?isSyncListening:isListening)&&callback({storeId:$id,type:MutationType.direct,events:debuggerEvents},state)},assign$2({},$subscribeOptions,options$2)));return removeSubscription},$dispose},store=reactive(partialStore);pinia$1._s.set($id,store);let runWithContext=pinia$1._a&&pinia$1._a.runWithContext||fallbackRunWithContext,setupStore=runWithContext(()=>pinia$1._e.run(()=>(scope=effectScope()).run(()=>setup({action}))));for(let key$1 in setupStore){let prop=setupStore[key$1];if(isRef(prop)&&!isComputed(prop)||isReactive(prop))isOptionsStore||(initialState&&shouldHydrate(prop)&&(isRef(prop)?prop.value=initialState[key$1]:mergeReactiveObjects(prop,initialState[key$1])),pinia$1.state.value[$id][key$1]=prop);else if(typeof prop==`function`){let actionValue=action(prop,key$1);setupStore[key$1]=actionValue,optionsForPlugin.actions[key$1]=prop}}return assign$2(store,setupStore),assign$2(toRaw(store),setupStore),Object.defineProperty(store,`$state`,{get:()=>pinia$1.state.value[$id],set:state=>{$patch($state=>{assign$2($state,state)})}}),pinia$1._p.forEach(extender=>{assign$2(store,scope.run(()=>extender({store,app:pinia$1._a,pinia:pinia$1,options:optionsForPlugin})))}),initialState&&isOptionsStore&&options$1.hydrate&&options$1.hydrate(store.$state,initialState),isListening=!0,isSyncListening=!0,store} +}`;var WebXRDepthSensing=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(renderer$1,depthData,renderState){if(this.texture===null){let texture=new Texture,texProps=renderer$1.properties.get(texture);texProps.__webglTexture=depthData.texture,(depthData.depthNear!==renderState.depthNear||depthData.depthFar!==renderState.depthFar)&&(this.depthNear=depthData.depthNear,this.depthFar=depthData.depthFar),this.texture=texture}}getMesh(cameraXR){if(this.texture!==null&&this.mesh===null){let viewport=cameraXR.cameras[0].viewport,material=new ShaderMaterial({vertexShader:_occlusion_vertex,fragmentShader:_occlusion_fragment,uniforms:{depthColor:{value:this.texture},depthWidth:{value:viewport.z},depthHeight:{value:viewport.w}}});this.mesh=new Mesh(new PlaneGeometry(20,20),material)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},WebXRManager=class extends EventDispatcher{constructor(renderer$1,gl){super();let scope=this,session=null,framebufferScaleFactor=1,referenceSpace=null,referenceSpaceType=`local-floor`,foveation=1,customReferenceSpace=null,pose=null,glBinding=null,glProjLayer=null,glBaseLayer=null,xrFrame=null,depthSensing=new WebXRDepthSensing,attributes=gl.getContextAttributes(),initialRenderTarget=null,newRenderTarget=null,controllers=[],controllerInputSources=[],currentSize=new Vector2,currentPixelRatio=null,cameraL=new PerspectiveCamera;cameraL.viewport=new Vector4;let cameraR=new PerspectiveCamera;cameraR.viewport=new Vector4;let cameras=[cameraL,cameraR],cameraXR=new ArrayCamera,_currentDepthNear=null,_currentDepthFar=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(index$1){let controller=controllers[index$1];return controller===void 0&&(controller=new WebXRController,controllers[index$1]=controller),controller.getTargetRaySpace()},this.getControllerGrip=function(index$1){let controller=controllers[index$1];return controller===void 0&&(controller=new WebXRController,controllers[index$1]=controller),controller.getGripSpace()},this.getHand=function(index$1){let controller=controllers[index$1];return controller===void 0&&(controller=new WebXRController,controllers[index$1]=controller),controller.getHandSpace()};function onSessionEvent(event){let controllerIndex=controllerInputSources.indexOf(event.inputSource);if(controllerIndex===-1)return;let controller=controllers[controllerIndex];controller!==void 0&&(controller.update(event.inputSource,event.frame,customReferenceSpace||referenceSpace),controller.dispatchEvent({type:event.type,data:event.inputSource}))}function onSessionEnd(){session.removeEventListener(`select`,onSessionEvent),session.removeEventListener(`selectstart`,onSessionEvent),session.removeEventListener(`selectend`,onSessionEvent),session.removeEventListener(`squeeze`,onSessionEvent),session.removeEventListener(`squeezestart`,onSessionEvent),session.removeEventListener(`squeezeend`,onSessionEvent),session.removeEventListener(`end`,onSessionEnd),session.removeEventListener(`inputsourceschange`,onInputSourcesChange);for(let i$1=0;i$1=0&&(controllerInputSources[index$1]=null,controllers[index$1].disconnect(inputSource))}for(let i$1=0;i$1=controllerInputSources.length){controllerInputSources.push(inputSource),controllerIndex=i$2;break}else if(controllerInputSources[i$2]===null){controllerInputSources[i$2]=inputSource,controllerIndex=i$2;break}if(controllerIndex===-1)break}let controller=controllers[controllerIndex];controller&&controller.connect(inputSource)}}let cameraLPos=new Vector3,cameraRPos=new Vector3;function setProjectionFromUnion(camera,cameraL$1,cameraR$1){cameraLPos.setFromMatrixPosition(cameraL$1.matrixWorld),cameraRPos.setFromMatrixPosition(cameraR$1.matrixWorld);let ipd=cameraLPos.distanceTo(cameraRPos),projL=cameraL$1.projectionMatrix.elements,projR=cameraR$1.projectionMatrix.elements,near=projL[14]/(projL[10]-1),far=projL[14]/(projL[10]+1),topFov=(projL[9]+1)/projL[5],bottomFov=(projL[9]-1)/projL[5],leftFov=(projL[8]-1)/projL[0],rightFov=(projR[8]+1)/projR[0],left=near*leftFov,right=near*rightFov,zOffset=ipd/(-leftFov+rightFov),xOffset=zOffset*-leftFov;if(cameraL$1.matrixWorld.decompose(camera.position,camera.quaternion,camera.scale),camera.translateX(xOffset),camera.translateZ(zOffset),camera.matrixWorld.compose(camera.position,camera.quaternion,camera.scale),camera.matrixWorldInverse.copy(camera.matrixWorld).invert(),projL[10]===-1)camera.projectionMatrix.copy(cameraL$1.projectionMatrix),camera.projectionMatrixInverse.copy(cameraL$1.projectionMatrixInverse);else{let near2=near+zOffset,far2=far+zOffset,left2=left-xOffset,right2=right+(ipd-xOffset),top2=topFov*far/far2*near2,bottom2=bottomFov*far/far2*near2;camera.projectionMatrix.makePerspective(left2,right2,top2,bottom2,near2,far2),camera.projectionMatrixInverse.copy(camera.projectionMatrix).invert()}}function updateCamera(camera,parent){parent===null?camera.matrixWorld.copy(camera.matrix):camera.matrixWorld.multiplyMatrices(parent.matrixWorld,camera.matrix),camera.matrixWorldInverse.copy(camera.matrixWorld).invert()}this.updateCamera=function(camera){if(session===null)return;let depthNear=camera.near,depthFar=camera.far;depthSensing.texture!==null&&(depthSensing.depthNear>0&&(depthNear=depthSensing.depthNear),depthSensing.depthFar>0&&(depthFar=depthSensing.depthFar)),cameraXR.near=cameraR.near=cameraL.near=depthNear,cameraXR.far=cameraR.far=cameraL.far=depthFar,(_currentDepthNear!==cameraXR.near||_currentDepthFar!==cameraXR.far)&&(session.updateRenderState({depthNear:cameraXR.near,depthFar:cameraXR.far}),_currentDepthNear=cameraXR.near,_currentDepthFar=cameraXR.far),cameraL.layers.mask=camera.layers.mask|2,cameraR.layers.mask=camera.layers.mask|4,cameraXR.layers.mask=cameraL.layers.mask|cameraR.layers.mask;let parent=camera.parent,cameras$1=cameraXR.cameras;updateCamera(cameraXR,parent);for(let i$1=0;i$10&&(uniforms.alphaTest.value=material.alphaTest);let materialProperties=properties.get(material),envMap=materialProperties.envMap,envMapRotation=materialProperties.envMapRotation;envMap&&(uniforms.envMap.value=envMap,_e1.copy(envMapRotation),_e1.x*=-1,_e1.y*=-1,_e1.z*=-1,envMap.isCubeTexture&&envMap.isRenderTargetTexture===!1&&(_e1.y*=-1,_e1.z*=-1),uniforms.envMapRotation.value.setFromMatrix4(_m1.makeRotationFromEuler(_e1)),uniforms.flipEnvMap.value=envMap.isCubeTexture&&envMap.isRenderTargetTexture===!1?-1:1,uniforms.reflectivity.value=material.reflectivity,uniforms.ior.value=material.ior,uniforms.refractionRatio.value=material.refractionRatio),material.lightMap&&(uniforms.lightMap.value=material.lightMap,uniforms.lightMapIntensity.value=material.lightMapIntensity,refreshTransformUniform(material.lightMap,uniforms.lightMapTransform)),material.aoMap&&(uniforms.aoMap.value=material.aoMap,uniforms.aoMapIntensity.value=material.aoMapIntensity,refreshTransformUniform(material.aoMap,uniforms.aoMapTransform))}function refreshUniformsLine(uniforms,material){uniforms.diffuse.value.copy(material.color),uniforms.opacity.value=material.opacity,material.map&&(uniforms.map.value=material.map,refreshTransformUniform(material.map,uniforms.mapTransform))}function refreshUniformsDash(uniforms,material){uniforms.dashSize.value=material.dashSize,uniforms.totalSize.value=material.dashSize+material.gapSize,uniforms.scale.value=material.scale}function refreshUniformsPoints(uniforms,material,pixelRatio,height){uniforms.diffuse.value.copy(material.color),uniforms.opacity.value=material.opacity,uniforms.size.value=material.size*pixelRatio,uniforms.scale.value=height*.5,material.map&&(uniforms.map.value=material.map,refreshTransformUniform(material.map,uniforms.uvTransform)),material.alphaMap&&(uniforms.alphaMap.value=material.alphaMap,refreshTransformUniform(material.alphaMap,uniforms.alphaMapTransform)),material.alphaTest>0&&(uniforms.alphaTest.value=material.alphaTest)}function refreshUniformsSprites(uniforms,material){uniforms.diffuse.value.copy(material.color),uniforms.opacity.value=material.opacity,uniforms.rotation.value=material.rotation,material.map&&(uniforms.map.value=material.map,refreshTransformUniform(material.map,uniforms.mapTransform)),material.alphaMap&&(uniforms.alphaMap.value=material.alphaMap,refreshTransformUniform(material.alphaMap,uniforms.alphaMapTransform)),material.alphaTest>0&&(uniforms.alphaTest.value=material.alphaTest)}function refreshUniformsPhong(uniforms,material){uniforms.specular.value.copy(material.specular),uniforms.shininess.value=Math.max(material.shininess,1e-4)}function refreshUniformsToon(uniforms,material){material.gradientMap&&(uniforms.gradientMap.value=material.gradientMap)}function refreshUniformsStandard(uniforms,material){uniforms.metalness.value=material.metalness,material.metalnessMap&&(uniforms.metalnessMap.value=material.metalnessMap,refreshTransformUniform(material.metalnessMap,uniforms.metalnessMapTransform)),uniforms.roughness.value=material.roughness,material.roughnessMap&&(uniforms.roughnessMap.value=material.roughnessMap,refreshTransformUniform(material.roughnessMap,uniforms.roughnessMapTransform)),material.envMap&&(uniforms.envMapIntensity.value=material.envMapIntensity)}function refreshUniformsPhysical(uniforms,material,transmissionRenderTarget){uniforms.ior.value=material.ior,material.sheen>0&&(uniforms.sheenColor.value.copy(material.sheenColor).multiplyScalar(material.sheen),uniforms.sheenRoughness.value=material.sheenRoughness,material.sheenColorMap&&(uniforms.sheenColorMap.value=material.sheenColorMap,refreshTransformUniform(material.sheenColorMap,uniforms.sheenColorMapTransform)),material.sheenRoughnessMap&&(uniforms.sheenRoughnessMap.value=material.sheenRoughnessMap,refreshTransformUniform(material.sheenRoughnessMap,uniforms.sheenRoughnessMapTransform))),material.clearcoat>0&&(uniforms.clearcoat.value=material.clearcoat,uniforms.clearcoatRoughness.value=material.clearcoatRoughness,material.clearcoatMap&&(uniforms.clearcoatMap.value=material.clearcoatMap,refreshTransformUniform(material.clearcoatMap,uniforms.clearcoatMapTransform)),material.clearcoatRoughnessMap&&(uniforms.clearcoatRoughnessMap.value=material.clearcoatRoughnessMap,refreshTransformUniform(material.clearcoatRoughnessMap,uniforms.clearcoatRoughnessMapTransform)),material.clearcoatNormalMap&&(uniforms.clearcoatNormalMap.value=material.clearcoatNormalMap,refreshTransformUniform(material.clearcoatNormalMap,uniforms.clearcoatNormalMapTransform),uniforms.clearcoatNormalScale.value.copy(material.clearcoatNormalScale),material.side===BackSide&&uniforms.clearcoatNormalScale.value.negate())),material.dispersion>0&&(uniforms.dispersion.value=material.dispersion),material.iridescence>0&&(uniforms.iridescence.value=material.iridescence,uniforms.iridescenceIOR.value=material.iridescenceIOR,uniforms.iridescenceThicknessMinimum.value=material.iridescenceThicknessRange[0],uniforms.iridescenceThicknessMaximum.value=material.iridescenceThicknessRange[1],material.iridescenceMap&&(uniforms.iridescenceMap.value=material.iridescenceMap,refreshTransformUniform(material.iridescenceMap,uniforms.iridescenceMapTransform)),material.iridescenceThicknessMap&&(uniforms.iridescenceThicknessMap.value=material.iridescenceThicknessMap,refreshTransformUniform(material.iridescenceThicknessMap,uniforms.iridescenceThicknessMapTransform))),material.transmission>0&&(uniforms.transmission.value=material.transmission,uniforms.transmissionSamplerMap.value=transmissionRenderTarget.texture,uniforms.transmissionSamplerSize.value.set(transmissionRenderTarget.width,transmissionRenderTarget.height),material.transmissionMap&&(uniforms.transmissionMap.value=material.transmissionMap,refreshTransformUniform(material.transmissionMap,uniforms.transmissionMapTransform)),uniforms.thickness.value=material.thickness,material.thicknessMap&&(uniforms.thicknessMap.value=material.thicknessMap,refreshTransformUniform(material.thicknessMap,uniforms.thicknessMapTransform)),uniforms.attenuationDistance.value=material.attenuationDistance,uniforms.attenuationColor.value.copy(material.attenuationColor)),material.anisotropy>0&&(uniforms.anisotropyVector.value.set(material.anisotropy*Math.cos(material.anisotropyRotation),material.anisotropy*Math.sin(material.anisotropyRotation)),material.anisotropyMap&&(uniforms.anisotropyMap.value=material.anisotropyMap,refreshTransformUniform(material.anisotropyMap,uniforms.anisotropyMapTransform))),uniforms.specularIntensity.value=material.specularIntensity,uniforms.specularColor.value.copy(material.specularColor),material.specularColorMap&&(uniforms.specularColorMap.value=material.specularColorMap,refreshTransformUniform(material.specularColorMap,uniforms.specularColorMapTransform)),material.specularIntensityMap&&(uniforms.specularIntensityMap.value=material.specularIntensityMap,refreshTransformUniform(material.specularIntensityMap,uniforms.specularIntensityMapTransform))}function refreshUniformsMatcap(uniforms,material){material.matcap&&(uniforms.matcap.value=material.matcap)}function refreshUniformsDistance(uniforms,material){let light=properties.get(material).light;uniforms.referencePosition.value.setFromMatrixPosition(light.matrixWorld),uniforms.nearDistance.value=light.shadow.camera.near,uniforms.farDistance.value=light.shadow.camera.far}return{refreshFogUniforms,refreshMaterialUniforms}}function WebGLUniformsGroups(gl,info,capabilities,state){let buffers={},updateList={},allocatedBindingPoints=[],maxBindingPoints=gl.getParameter(gl.MAX_UNIFORM_BUFFER_BINDINGS);function bind(uniformsGroup,program){let webglProgram=program.program;state.uniformBlockBinding(uniformsGroup,webglProgram)}function update(uniformsGroup,program){let buffer$1=buffers[uniformsGroup.id];buffer$1===void 0&&(prepareUniformsGroup(uniformsGroup),buffer$1=createBuffer(uniformsGroup),buffers[uniformsGroup.id]=buffer$1,uniformsGroup.addEventListener(`dispose`,onUniformsGroupsDispose));let webglProgram=program.program;state.updateUBOMapping(uniformsGroup,webglProgram);let frame$1=info.render.frame;updateList[uniformsGroup.id]!==frame$1&&(updateBufferData(uniformsGroup),updateList[uniformsGroup.id]=frame$1)}function createBuffer(uniformsGroup){let bindingPointIndex=allocateBindingPointIndex();uniformsGroup.__bindingPointIndex=bindingPointIndex;let buffer$1=gl.createBuffer(),size$1=uniformsGroup.__size,usage=uniformsGroup.usage;return gl.bindBuffer(gl.UNIFORM_BUFFER,buffer$1),gl.bufferData(gl.UNIFORM_BUFFER,size$1,usage),gl.bindBuffer(gl.UNIFORM_BUFFER,null),gl.bindBufferBase(gl.UNIFORM_BUFFER,bindingPointIndex,buffer$1),buffer$1}function allocateBindingPointIndex(){for(let i$1=0;i$10&&(offset$1+=chunkSize-chunkOffset),uniformsGroup.__size=offset$1,uniformsGroup.__cache={},this}function getUniformSize(value$1){let info$1={boundary:0,storage:0};return typeof value$1==`number`||typeof value$1==`boolean`?(info$1.boundary=4,info$1.storage=4):value$1.isVector2?(info$1.boundary=8,info$1.storage=8):value$1.isVector3||value$1.isColor?(info$1.boundary=16,info$1.storage=12):value$1.isVector4?(info$1.boundary=16,info$1.storage=16):value$1.isMatrix3?(info$1.boundary=48,info$1.storage=48):value$1.isMatrix4?(info$1.boundary=64,info$1.storage=64):value$1.isTexture?console.warn(`THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group.`):console.warn(`THREE.WebGLRenderer: Unsupported uniform value type.`,value$1),info$1}function onUniformsGroupsDispose(event){let uniformsGroup=event.target;uniformsGroup.removeEventListener(`dispose`,onUniformsGroupsDispose);let index$1=allocatedBindingPoints.indexOf(uniformsGroup.__bindingPointIndex);allocatedBindingPoints.splice(index$1,1),gl.deleteBuffer(buffers[uniformsGroup.id]),delete buffers[uniformsGroup.id],delete updateList[uniformsGroup.id]}function dispose$1(){for(let id in buffers)gl.deleteBuffer(buffers[id]);allocatedBindingPoints=[],buffers={},updateList={}}return{bind,update,dispose:dispose$1}}var WebGLRenderer=class{constructor(parameters={}){let{canvas=createCanvasElement(),context:context$1=null,depth=!0,stencil=!1,alpha:alpha$1=!1,antialias=!1,premultipliedAlpha=!0,preserveDrawingBuffer=!1,powerPreference=`default`,failIfMajorPerformanceCaveat=!1,reverseDepthBuffer=!1}=parameters;this.isWebGLRenderer=!0;let _alpha;if(context$1!==null){if(typeof WebGLRenderingContext<`u`&&context$1 instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);_alpha=context$1.getContextAttributes().alpha}else _alpha=alpha$1;let uintClearColor=new Uint32Array(4),intClearColor=new Int32Array(4),currentRenderList=null,currentRenderState=null,renderListStack=[],renderStateStack=[];this.domElement=canvas,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=NoToneMapping,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let _this=this,_isContextLost=!1;this._outputColorSpace=SRGBColorSpace;let _currentActiveCubeFace=0,_currentActiveMipmapLevel=0,_currentRenderTarget=null,_currentMaterialId=-1,_currentCamera=null,_currentViewport=new Vector4,_currentScissor=new Vector4,_currentScissorTest=null,_currentClearColor=new Color(0),_currentClearAlpha=0,_width=canvas.width,_height=canvas.height,_pixelRatio=1,_opaqueSort=null,_transparentSort=null,_viewport=new Vector4(0,0,_width,_height),_scissor=new Vector4(0,0,_width,_height),_scissorTest=!1,_frustum$2=new Frustum,_clippingEnabled=!1,_localClippingEnabled=!1,_currentProjectionMatrix=new Matrix4,_projScreenMatrix$3=new Matrix4,_vector3$1=new Vector3,_vector4=new Vector4,_emptyScene={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},_renderBackground=!1;function getTargetPixelRatio(){return _currentRenderTarget===null?_pixelRatio:1}let _gl=context$1;function getContext$1(contextName,contextAttributes){return canvas.getContext(contextName,contextAttributes)}try{let contextAttributes={alpha:!0,depth,stencil,antialias,premultipliedAlpha,preserveDrawingBuffer,powerPreference,failIfMajorPerformanceCaveat};if(`setAttribute`in canvas&&canvas.setAttribute(`data-engine`,`three.js r${REVISION}`),canvas.addEventListener(`webglcontextlost`,onContextLost,!1),canvas.addEventListener(`webglcontextrestored`,onContextRestore,!1),canvas.addEventListener(`webglcontextcreationerror`,onContextCreationError,!1),_gl===null){let contextName=`webgl2`;if(_gl=getContext$1(contextName,contextAttributes),_gl===null)throw getContext$1(contextName)?Error(`Error creating WebGL context with your selected attributes.`):Error(`Error creating WebGL context.`)}}catch(error){throw console.error(`THREE.WebGLRenderer: `+error.message),error}let extensions,capabilities,state,info,properties,textures,cubemaps,cubeuvmaps,attributes,geometries,objects,programCache,materials,renderLists,renderStates,clipping,shadowMap,background,morphtargets,bufferRenderer,indexedBufferRenderer,utils,bindingStates,uniformsGroups;function initGLContext(){extensions=new WebGLExtensions(_gl),extensions.init(),utils=new WebGLUtils(_gl,extensions),capabilities=new WebGLCapabilities(_gl,extensions,parameters,utils),state=new WebGLState(_gl,extensions),capabilities.reverseDepthBuffer&&reverseDepthBuffer&&state.buffers.depth.setReversed(!0),info=new WebGLInfo(_gl),properties=new WebGLProperties,textures=new WebGLTextures(_gl,extensions,state,properties,capabilities,utils,info),cubemaps=new WebGLCubeMaps(_this),cubeuvmaps=new WebGLCubeUVMaps(_this),attributes=new WebGLAttributes(_gl),bindingStates=new WebGLBindingStates(_gl,attributes),geometries=new WebGLGeometries(_gl,attributes,info,bindingStates),objects=new WebGLObjects(_gl,geometries,attributes,info),morphtargets=new WebGLMorphtargets(_gl,capabilities,textures),clipping=new WebGLClipping(properties),programCache=new WebGLPrograms(_this,cubemaps,cubeuvmaps,extensions,capabilities,bindingStates,clipping),materials=new WebGLMaterials(_this,properties),renderLists=new WebGLRenderLists,renderStates=new WebGLRenderStates(extensions),background=new WebGLBackground(_this,cubemaps,cubeuvmaps,state,objects,_alpha,premultipliedAlpha),shadowMap=new WebGLShadowMap(_this,objects,capabilities),uniformsGroups=new WebGLUniformsGroups(_gl,info,capabilities,state),bufferRenderer=new WebGLBufferRenderer(_gl,extensions,info),indexedBufferRenderer=new WebGLIndexedBufferRenderer(_gl,extensions,info),info.programs=programCache.programs,_this.capabilities=capabilities,_this.extensions=extensions,_this.properties=properties,_this.renderLists=renderLists,_this.shadowMap=shadowMap,_this.state=state,_this.info=info}initGLContext();let xr$1=new WebXRManager(_this,_gl);this.xr=xr$1,this.getContext=function(){return _gl},this.getContextAttributes=function(){return _gl.getContextAttributes()},this.forceContextLoss=function(){let extension$1=extensions.get(`WEBGL_lose_context`);extension$1&&extension$1.loseContext()},this.forceContextRestore=function(){let extension$1=extensions.get(`WEBGL_lose_context`);extension$1&&extension$1.restoreContext()},this.getPixelRatio=function(){return _pixelRatio},this.setPixelRatio=function(value$1){value$1!==void 0&&(_pixelRatio=value$1,this.setSize(_width,_height,!1))},this.getSize=function(target$1){return target$1.set(_width,_height)},this.setSize=function(width,height,updateStyle=!0){if(xr$1.isPresenting){console.warn(`THREE.WebGLRenderer: Can't change size while VR device is presenting.`);return}_width=width,_height=height,canvas.width=Math.floor(width*_pixelRatio),canvas.height=Math.floor(height*_pixelRatio),updateStyle===!0&&(canvas.style.width=width+`px`,canvas.style.height=height+`px`),this.setViewport(0,0,width,height)},this.getDrawingBufferSize=function(target$1){return target$1.set(_width*_pixelRatio,_height*_pixelRatio).floor()},this.setDrawingBufferSize=function(width,height,pixelRatio){_width=width,_height=height,_pixelRatio=pixelRatio,canvas.width=Math.floor(width*pixelRatio),canvas.height=Math.floor(height*pixelRatio),this.setViewport(0,0,width,height)},this.getCurrentViewport=function(target$1){return target$1.copy(_currentViewport)},this.getViewport=function(target$1){return target$1.copy(_viewport)},this.setViewport=function(x$3,y$2,width,height){x$3.isVector4?_viewport.set(x$3.x,x$3.y,x$3.z,x$3.w):_viewport.set(x$3,y$2,width,height),state.viewport(_currentViewport.copy(_viewport).multiplyScalar(_pixelRatio).round())},this.getScissor=function(target$1){return target$1.copy(_scissor)},this.setScissor=function(x$3,y$2,width,height){x$3.isVector4?_scissor.set(x$3.x,x$3.y,x$3.z,x$3.w):_scissor.set(x$3,y$2,width,height),state.scissor(_currentScissor.copy(_scissor).multiplyScalar(_pixelRatio).round())},this.getScissorTest=function(){return _scissorTest},this.setScissorTest=function(boolean$1){state.setScissorTest(_scissorTest=boolean$1)},this.setOpaqueSort=function(method){_opaqueSort=method},this.setTransparentSort=function(method){_transparentSort=method},this.getClearColor=function(target$1){return target$1.copy(background.getClearColor())},this.setClearColor=function(){background.setClearColor(...arguments)},this.getClearAlpha=function(){return background.getClearAlpha()},this.setClearAlpha=function(){background.setClearAlpha(...arguments)},this.clear=function(color$2=!0,depth$1=!0,stencil$1=!0){let bits=0;if(color$2){let isIntegerFormat=!1;if(_currentRenderTarget!==null){let targetFormat=_currentRenderTarget.texture.format;isIntegerFormat=targetFormat===RGBAIntegerFormat||targetFormat===RGIntegerFormat||targetFormat===RedIntegerFormat}if(isIntegerFormat){let targetType=_currentRenderTarget.texture.type,isUnsignedType=targetType===UnsignedByteType||targetType===UnsignedIntType||targetType===UnsignedShortType||targetType===UnsignedInt248Type||targetType===UnsignedShort4444Type||targetType===UnsignedShort5551Type,clearColor=background.getClearColor(),a$2=background.getClearAlpha(),r$2=clearColor.r,g$2=clearColor.g,b$3=clearColor.b;isUnsignedType?(uintClearColor[0]=r$2,uintClearColor[1]=g$2,uintClearColor[2]=b$3,uintClearColor[3]=a$2,_gl.clearBufferuiv(_gl.COLOR,0,uintClearColor)):(intClearColor[0]=r$2,intClearColor[1]=g$2,intClearColor[2]=b$3,intClearColor[3]=a$2,_gl.clearBufferiv(_gl.COLOR,0,intClearColor))}else bits|=_gl.COLOR_BUFFER_BIT}depth$1&&(bits|=_gl.DEPTH_BUFFER_BIT),stencil$1&&(bits|=_gl.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),_gl.clear(bits)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){canvas.removeEventListener(`webglcontextlost`,onContextLost,!1),canvas.removeEventListener(`webglcontextrestored`,onContextRestore,!1),canvas.removeEventListener(`webglcontextcreationerror`,onContextCreationError,!1),background.dispose(),renderLists.dispose(),renderStates.dispose(),properties.dispose(),cubemaps.dispose(),cubeuvmaps.dispose(),objects.dispose(),bindingStates.dispose(),uniformsGroups.dispose(),programCache.dispose(),xr$1.dispose(),xr$1.removeEventListener(`sessionstart`,onXRSessionStart),xr$1.removeEventListener(`sessionend`,onXRSessionEnd),animation.stop()};function onContextLost(event){event.preventDefault(),console.log(`THREE.WebGLRenderer: Context Lost.`),_isContextLost=!0}function onContextRestore(){console.log(`THREE.WebGLRenderer: Context Restored.`),_isContextLost=!1;let infoAutoReset=info.autoReset,shadowMapEnabled=shadowMap.enabled,shadowMapAutoUpdate=shadowMap.autoUpdate,shadowMapNeedsUpdate=shadowMap.needsUpdate,shadowMapType=shadowMap.type;initGLContext(),info.autoReset=infoAutoReset,shadowMap.enabled=shadowMapEnabled,shadowMap.autoUpdate=shadowMapAutoUpdate,shadowMap.needsUpdate=shadowMapNeedsUpdate,shadowMap.type=shadowMapType}function onContextCreationError(event){console.error(`THREE.WebGLRenderer: A WebGL context could not be created. Reason: `,event.statusMessage)}function onMaterialDispose(event){let material=event.target;material.removeEventListener(`dispose`,onMaterialDispose),deallocateMaterial(material)}function deallocateMaterial(material){releaseMaterialProgramReferences(material),properties.remove(material)}function releaseMaterialProgramReferences(material){let programs=properties.get(material).programs;programs!==void 0&&(programs.forEach(function(program){programCache.releaseProgram(program)}),material.isShaderMaterial&&programCache.releaseShaderCache(material))}this.renderBufferDirect=function(camera,scene,geometry,material,object,group){scene===null&&(scene=_emptyScene);let frontFaceCW=object.isMesh&&object.matrixWorld.determinant()<0,program=setProgram(camera,scene,geometry,material,object);state.setMaterial(material,frontFaceCW);let index$1=geometry.index,rangeFactor=1;if(material.wireframe===!0){if(index$1=geometries.getWireframeAttribute(geometry),index$1===void 0)return;rangeFactor=2}let drawRange=geometry.drawRange,position$2=geometry.attributes.position,drawStart=drawRange.start*rangeFactor,drawEnd=(drawRange.start+drawRange.count)*rangeFactor;group!==null&&(drawStart=Math.max(drawStart,group.start*rangeFactor),drawEnd=Math.min(drawEnd,(group.start+group.count)*rangeFactor)),index$1===null?position$2!=null&&(drawStart=Math.max(drawStart,0),drawEnd=Math.min(drawEnd,position$2.count)):(drawStart=Math.max(drawStart,0),drawEnd=Math.min(drawEnd,index$1.count));let drawCount=drawEnd-drawStart;if(drawCount<0||drawCount===1/0)return;bindingStates.setup(object,material,program,geometry,index$1);let attribute,renderer$1=bufferRenderer;if(index$1!==null&&(attribute=attributes.get(index$1),renderer$1=indexedBufferRenderer,renderer$1.setIndex(attribute)),object.isMesh)material.wireframe===!0?(state.setLineWidth(material.wireframeLinewidth*getTargetPixelRatio()),renderer$1.setMode(_gl.LINES)):renderer$1.setMode(_gl.TRIANGLES);else if(object.isLine){let lineWidth=material.linewidth;lineWidth===void 0&&(lineWidth=1),state.setLineWidth(lineWidth*getTargetPixelRatio()),object.isLineSegments?renderer$1.setMode(_gl.LINES):object.isLineLoop?renderer$1.setMode(_gl.LINE_LOOP):renderer$1.setMode(_gl.LINE_STRIP)}else object.isPoints?renderer$1.setMode(_gl.POINTS):object.isSprite&&renderer$1.setMode(_gl.TRIANGLES);if(object.isBatchedMesh)if(object._multiDrawInstances!==null)warnOnce$1(`THREE.WebGLRenderer: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection.`),renderer$1.renderMultiDrawInstances(object._multiDrawStarts,object._multiDrawCounts,object._multiDrawCount,object._multiDrawInstances);else if(extensions.get(`WEBGL_multi_draw`))renderer$1.renderMultiDraw(object._multiDrawStarts,object._multiDrawCounts,object._multiDrawCount);else{let starts=object._multiDrawStarts,counts=object._multiDrawCounts,drawCount$1=object._multiDrawCount,bytesPerElement=index$1?attributes.get(index$1).bytesPerElement:1,uniforms=properties.get(material).currentProgram.getUniforms();for(let i$1=0;i$1{function checkMaterialsReady(){if(materials$1.forEach(function(material){let materialProperties=properties.get(material),program=materialProperties.currentProgram;program.isReady()&&materials$1.delete(material)}),materials$1.size===0){resolve$1(scene);return}setTimeout(checkMaterialsReady,10)}extensions.get(`KHR_parallel_shader_compile`)===null?setTimeout(checkMaterialsReady,10):checkMaterialsReady()})};let onAnimationFrameCallback=null;function onAnimationFrame(time){onAnimationFrameCallback&&onAnimationFrameCallback(time)}function onXRSessionStart(){animation.stop()}function onXRSessionEnd(){animation.start()}let animation=new WebGLAnimation;animation.setAnimationLoop(onAnimationFrame),typeof self<`u`&&animation.setContext(self),this.setAnimationLoop=function(callback){onAnimationFrameCallback=callback,xr$1.setAnimationLoop(callback),callback===null?animation.stop():animation.start()},xr$1.addEventListener(`sessionstart`,onXRSessionStart),xr$1.addEventListener(`sessionend`,onXRSessionEnd),this.render=function(scene,camera){if(camera!==void 0&&camera.isCamera!==!0){console.error(`THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(_isContextLost===!0)return;if(scene.matrixWorldAutoUpdate===!0&&scene.updateMatrixWorld(),camera.parent===null&&camera.matrixWorldAutoUpdate===!0&&camera.updateMatrixWorld(),xr$1.enabled===!0&&xr$1.isPresenting===!0&&(xr$1.cameraAutoUpdate===!0&&xr$1.updateCamera(camera),camera=xr$1.getCamera()),scene.isScene===!0&&scene.onBeforeRender(_this,scene,camera,_currentRenderTarget),currentRenderState=renderStates.get(scene,renderStateStack.length),currentRenderState.init(camera),renderStateStack.push(currentRenderState),_projScreenMatrix$3.multiplyMatrices(camera.projectionMatrix,camera.matrixWorldInverse),_frustum$2.setFromProjectionMatrix(_projScreenMatrix$3),_localClippingEnabled=this.localClippingEnabled,_clippingEnabled=clipping.init(this.clippingPlanes,_localClippingEnabled),currentRenderList=renderLists.get(scene,renderListStack.length),currentRenderList.init(),renderListStack.push(currentRenderList),xr$1.enabled===!0&&xr$1.isPresenting===!0){let depthSensingMesh=_this.xr.getDepthSensingMesh();depthSensingMesh!==null&&projectObject(depthSensingMesh,camera,-1/0,_this.sortObjects)}projectObject(scene,camera,0,_this.sortObjects),currentRenderList.finish(),_this.sortObjects===!0&¤tRenderList.sort(_opaqueSort,_transparentSort),_renderBackground=xr$1.enabled===!1||xr$1.isPresenting===!1||xr$1.hasDepthSensing()===!1,_renderBackground&&background.addToRenderList(currentRenderList,scene),this.info.render.frame++,_clippingEnabled===!0&&clipping.beginShadows();let shadowsArray=currentRenderState.state.shadowsArray;shadowMap.render(shadowsArray,scene,camera),_clippingEnabled===!0&&clipping.endShadows(),this.info.autoReset===!0&&this.info.reset();let opaqueObjects=currentRenderList.opaque,transmissiveObjects=currentRenderList.transmissive;if(currentRenderState.setupLights(),camera.isArrayCamera){let cameras=camera.cameras;if(transmissiveObjects.length>0)for(let i$1=0,l$1=cameras.length;i$10&&renderTransmissionPass(opaqueObjects,transmissiveObjects,scene,camera),_renderBackground&&background.render(scene),renderScene(currentRenderList,scene,camera);_currentRenderTarget!==null&&_currentActiveMipmapLevel===0&&(textures.updateMultisampleRenderTarget(_currentRenderTarget),textures.updateRenderTargetMipmap(_currentRenderTarget)),scene.isScene===!0&&scene.onAfterRender(_this,scene,camera),bindingStates.resetDefaultState(),_currentMaterialId=-1,_currentCamera=null,renderStateStack.pop(),renderStateStack.length>0?(currentRenderState=renderStateStack[renderStateStack.length-1],_clippingEnabled===!0&&clipping.setGlobalState(_this.clippingPlanes,currentRenderState.state.camera)):currentRenderState=null,renderListStack.pop(),currentRenderList=renderListStack.length>0?renderListStack[renderListStack.length-1]:null};function projectObject(object,camera,groupOrder,sortObjects){if(object.visible===!1)return;let visible=object.layers.test(camera.layers);if(visible){if(object.isGroup)groupOrder=object.renderOrder;else if(object.isLOD)object.autoUpdate===!0&&object.update(camera);else if(object.isLight)currentRenderState.pushLight(object),object.castShadow&¤tRenderState.pushShadow(object);else if(object.isSprite){if(!object.frustumCulled||_frustum$2.intersectsSprite(object)){sortObjects&&_vector4.setFromMatrixPosition(object.matrixWorld).applyMatrix4(_projScreenMatrix$3);let geometry=objects.update(object),material=object.material;material.visible&¤tRenderList.push(object,geometry,material,groupOrder,_vector4.z,null)}}else if((object.isMesh||object.isLine||object.isPoints)&&(!object.frustumCulled||_frustum$2.intersectsObject(object))){let geometry=objects.update(object),material=object.material;if(sortObjects&&(object.boundingSphere===void 0?(geometry.boundingSphere===null&&geometry.computeBoundingSphere(),_vector4.copy(geometry.boundingSphere.center)):(object.boundingSphere===null&&object.computeBoundingSphere(),_vector4.copy(object.boundingSphere.center)),_vector4.applyMatrix4(object.matrixWorld).applyMatrix4(_projScreenMatrix$3)),Array.isArray(material)){let groups=geometry.groups;for(let i$1=0,l$1=groups.length;i$10&&renderObjects(opaqueObjects,scene,camera),transmissiveObjects.length>0&&renderObjects(transmissiveObjects,scene,camera),transparentObjects.length>0&&renderObjects(transparentObjects,scene,camera),state.buffers.depth.setTest(!0),state.buffers.depth.setMask(!0),state.buffers.color.setMask(!0),state.setPolygonOffset(!1)}function renderTransmissionPass(opaqueObjects,transmissiveObjects,scene,camera){let overrideMaterial=scene.isScene===!0?scene.overrideMaterial:null;if(overrideMaterial!==null)return;currentRenderState.state.transmissionRenderTarget[camera.id]===void 0&&(currentRenderState.state.transmissionRenderTarget[camera.id]=new WebGLRenderTarget(1,1,{generateMipmaps:!0,type:extensions.has(`EXT_color_buffer_half_float`)||extensions.has(`EXT_color_buffer_float`)?HalfFloatType:UnsignedByteType,minFilter:LinearMipmapLinearFilter,samples:4,stencilBuffer:stencil,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:ColorManagement.workingColorSpace}));let transmissionRenderTarget=currentRenderState.state.transmissionRenderTarget[camera.id],activeViewport=camera.viewport||_currentViewport;transmissionRenderTarget.setSize(activeViewport.z*_this.transmissionResolutionScale,activeViewport.w*_this.transmissionResolutionScale);let currentRenderTarget=_this.getRenderTarget(),currentActiveCubeFace=_this.getActiveCubeFace(),currentActiveMipmapLevel=_this.getActiveMipmapLevel();_this.setRenderTarget(transmissionRenderTarget),_this.getClearColor(_currentClearColor),_currentClearAlpha=_this.getClearAlpha(),_currentClearAlpha<1&&_this.setClearColor(16777215,.5),_this.clear(),_renderBackground&&background.render(scene);let currentToneMapping=_this.toneMapping;_this.toneMapping=NoToneMapping;let currentCameraViewport=camera.viewport;if(camera.viewport!==void 0&&(camera.viewport=void 0),currentRenderState.setupLightsView(camera),_clippingEnabled===!0&&clipping.setGlobalState(_this.clippingPlanes,camera),renderObjects(opaqueObjects,scene,camera),textures.updateMultisampleRenderTarget(transmissionRenderTarget),textures.updateRenderTargetMipmap(transmissionRenderTarget),extensions.has(`WEBGL_multisampled_render_to_texture`)===!1){let renderTargetNeedsUpdate=!1;for(let i$1=0,l$1=transmissiveObjects.length;i$10),morphTargets=!!geometry.morphAttributes.position,morphNormals=!!geometry.morphAttributes.normal,morphColors=!!geometry.morphAttributes.color,toneMapping=NoToneMapping;material.toneMapped&&(_currentRenderTarget===null||_currentRenderTarget.isXRRenderTarget===!0)&&(toneMapping=_this.toneMapping);let morphAttribute=geometry.morphAttributes.position||geometry.morphAttributes.normal||geometry.morphAttributes.color,morphTargetsCount=morphAttribute===void 0?0:morphAttribute.length,materialProperties=properties.get(material),lights=currentRenderState.state.lights;if(_clippingEnabled===!0&&(_localClippingEnabled===!0||camera!==_currentCamera)){let useCache=camera===_currentCamera&&material.id===_currentMaterialId;clipping.setState(material,camera,useCache)}let needsProgramChange=!1;material.version===materialProperties.__version?materialProperties.needsLights&&materialProperties.lightsStateVersion!==lights.state.version?needsProgramChange=!0:materialProperties.outputColorSpace===colorSpace?object.isBatchedMesh&&materialProperties.batching===!1||!object.isBatchedMesh&&materialProperties.batching===!0||object.isBatchedMesh&&materialProperties.batchingColor===!0&&object.colorTexture===null||object.isBatchedMesh&&materialProperties.batchingColor===!1&&object.colorTexture!==null||object.isInstancedMesh&&materialProperties.instancing===!1||!object.isInstancedMesh&&materialProperties.instancing===!0||object.isSkinnedMesh&&materialProperties.skinning===!1||!object.isSkinnedMesh&&materialProperties.skinning===!0||object.isInstancedMesh&&materialProperties.instancingColor===!0&&object.instanceColor===null||object.isInstancedMesh&&materialProperties.instancingColor===!1&&object.instanceColor!==null||object.isInstancedMesh&&materialProperties.instancingMorph===!0&&object.morphTexture===null||object.isInstancedMesh&&materialProperties.instancingMorph===!1&&object.morphTexture!==null?needsProgramChange=!0:materialProperties.envMap===envMap?material.fog===!0&&materialProperties.fog!==fog||materialProperties.numClippingPlanes!==void 0&&(materialProperties.numClippingPlanes!==clipping.numPlanes||materialProperties.numIntersection!==clipping.numIntersection)?needsProgramChange=!0:materialProperties.vertexAlphas===vertexAlphas&&materialProperties.vertexTangents===vertexTangents&&materialProperties.morphTargets===morphTargets&&materialProperties.morphNormals===morphNormals&&materialProperties.morphColors===morphColors&&materialProperties.toneMapping===toneMapping?materialProperties.morphTargetsCount!==morphTargetsCount&&(needsProgramChange=!0):needsProgramChange=!0:needsProgramChange=!0:needsProgramChange=!0:(needsProgramChange=!0,materialProperties.__version=material.version);let program=materialProperties.currentProgram;needsProgramChange===!0&&(program=getProgram(material,scene,object));let refreshProgram=!1,refreshMaterial=!1,refreshLights=!1,p_uniforms=program.getUniforms(),m_uniforms=materialProperties.uniforms;if(state.useProgram(program.program)&&(refreshProgram=!0,refreshMaterial=!0,refreshLights=!0),material.id!==_currentMaterialId&&(_currentMaterialId=material.id,refreshMaterial=!0),refreshProgram||_currentCamera!==camera){let reverseDepthBuffer$1=state.buffers.depth.getReversed();reverseDepthBuffer$1?(_currentProjectionMatrix.copy(camera.projectionMatrix),toNormalizedProjectionMatrix(_currentProjectionMatrix),toReversedProjectionMatrix(_currentProjectionMatrix),p_uniforms.setValue(_gl,`projectionMatrix`,_currentProjectionMatrix)):p_uniforms.setValue(_gl,`projectionMatrix`,camera.projectionMatrix),p_uniforms.setValue(_gl,`viewMatrix`,camera.matrixWorldInverse);let uCamPos=p_uniforms.map.cameraPosition;uCamPos!==void 0&&uCamPos.setValue(_gl,_vector3$1.setFromMatrixPosition(camera.matrixWorld)),capabilities.logarithmicDepthBuffer&&p_uniforms.setValue(_gl,`logDepthBufFC`,2/(Math.log(camera.far+1)/Math.LN2)),(material.isMeshPhongMaterial||material.isMeshToonMaterial||material.isMeshLambertMaterial||material.isMeshBasicMaterial||material.isMeshStandardMaterial||material.isShaderMaterial)&&p_uniforms.setValue(_gl,`isOrthographic`,camera.isOrthographicCamera===!0),_currentCamera!==camera&&(_currentCamera=camera,refreshMaterial=!0,refreshLights=!0)}if(object.isSkinnedMesh){p_uniforms.setOptional(_gl,object,`bindMatrix`),p_uniforms.setOptional(_gl,object,`bindMatrixInverse`);let skeleton=object.skeleton;skeleton&&(skeleton.boneTexture===null&&skeleton.computeBoneTexture(),p_uniforms.setValue(_gl,`boneTexture`,skeleton.boneTexture,textures))}object.isBatchedMesh&&(p_uniforms.setOptional(_gl,object,`batchingTexture`),p_uniforms.setValue(_gl,`batchingTexture`,object._matricesTexture,textures),p_uniforms.setOptional(_gl,object,`batchingIdTexture`),p_uniforms.setValue(_gl,`batchingIdTexture`,object._indirectTexture,textures),p_uniforms.setOptional(_gl,object,`batchingColorTexture`),object._colorsTexture!==null&&p_uniforms.setValue(_gl,`batchingColorTexture`,object._colorsTexture,textures));let morphAttributes=geometry.morphAttributes;if((morphAttributes.position!==void 0||morphAttributes.normal!==void 0||morphAttributes.color!==void 0)&&morphtargets.update(object,geometry,program),(refreshMaterial||materialProperties.receiveShadow!==object.receiveShadow)&&(materialProperties.receiveShadow=object.receiveShadow,p_uniforms.setValue(_gl,`receiveShadow`,object.receiveShadow)),material.isMeshGouraudMaterial&&material.envMap!==null&&(m_uniforms.envMap.value=envMap,m_uniforms.flipEnvMap.value=envMap.isCubeTexture&&envMap.isRenderTargetTexture===!1?-1:1),material.isMeshStandardMaterial&&material.envMap===null&&scene.environment!==null&&(m_uniforms.envMapIntensity.value=scene.environmentIntensity),refreshMaterial&&(p_uniforms.setValue(_gl,`toneMappingExposure`,_this.toneMappingExposure),materialProperties.needsLights&&markUniformsLightsNeedsUpdate(m_uniforms,refreshLights),fog&&material.fog===!0&&materials.refreshFogUniforms(m_uniforms,fog),materials.refreshMaterialUniforms(m_uniforms,material,_pixelRatio,_height,currentRenderState.state.transmissionRenderTarget[camera.id]),WebGLUniforms.upload(_gl,getUniformList(materialProperties),m_uniforms,textures)),material.isShaderMaterial&&material.uniformsNeedUpdate===!0&&(WebGLUniforms.upload(_gl,getUniformList(materialProperties),m_uniforms,textures),material.uniformsNeedUpdate=!1),material.isSpriteMaterial&&p_uniforms.setValue(_gl,`center`,object.center),p_uniforms.setValue(_gl,`modelViewMatrix`,object.modelViewMatrix),p_uniforms.setValue(_gl,`normalMatrix`,object.normalMatrix),p_uniforms.setValue(_gl,`modelMatrix`,object.matrixWorld),material.isShaderMaterial||material.isRawShaderMaterial){let groups=material.uniformsGroups;for(let i$1=0,l$1=groups.length;i$10&&textures.useMultisampledRTT(renderTarget)===!1?properties.get(renderTarget).__webglMultisampledFramebuffer:Array.isArray(__webglFramebuffer)?__webglFramebuffer[activeMipmapLevel]:__webglFramebuffer,_currentViewport.copy(renderTarget.viewport),_currentScissor.copy(renderTarget.scissor),_currentScissorTest=renderTarget.scissorTest}else _currentViewport.copy(_viewport).multiplyScalar(_pixelRatio).floor(),_currentScissor.copy(_scissor).multiplyScalar(_pixelRatio).floor(),_currentScissorTest=_scissorTest;activeMipmapLevel!==0&&(framebuffer=_scratchFrameBuffer);let framebufferBound=state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer);if(framebufferBound&&useDefaultFramebuffer&&state.drawBuffers(renderTarget,framebuffer),state.viewport(_currentViewport),state.scissor(_currentScissor),state.setScissorTest(_currentScissorTest),isCube){let textureProperties=properties.get(renderTarget.texture);_gl.framebufferTexture2D(_gl.FRAMEBUFFER,_gl.COLOR_ATTACHMENT0,_gl.TEXTURE_CUBE_MAP_POSITIVE_X+activeCubeFace,textureProperties.__webglTexture,activeMipmapLevel)}else if(isRenderTarget3D){let textureProperties=properties.get(renderTarget.texture),layer=activeCubeFace;_gl.framebufferTextureLayer(_gl.FRAMEBUFFER,_gl.COLOR_ATTACHMENT0,textureProperties.__webglTexture,activeMipmapLevel,layer)}else if(renderTarget!==null&&activeMipmapLevel!==0){let textureProperties=properties.get(renderTarget.texture);_gl.framebufferTexture2D(_gl.FRAMEBUFFER,_gl.COLOR_ATTACHMENT0,_gl.TEXTURE_2D,textureProperties.__webglTexture,activeMipmapLevel)}_currentMaterialId=-1},this.readRenderTargetPixels=function(renderTarget,x$3,y$2,width,height,buffer$1,activeCubeFaceIndex,textureIndex=0){if(!(renderTarget&&renderTarget.isWebGLRenderTarget)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);return}let framebuffer=properties.get(renderTarget).__webglFramebuffer;if(renderTarget.isWebGLCubeRenderTarget&&activeCubeFaceIndex!==void 0&&(framebuffer=framebuffer[activeCubeFaceIndex]),framebuffer){state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer);try{let texture=renderTarget.textures[textureIndex],textureFormat=texture.format,textureType=texture.type;if(!capabilities.textureFormatReadable(textureFormat)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(!capabilities.textureTypeReadable(textureType)){console.error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}x$3>=0&&x$3<=renderTarget.width-width&&y$2>=0&&y$2<=renderTarget.height-height&&(renderTarget.textures.length>1&&_gl.readBuffer(_gl.COLOR_ATTACHMENT0+textureIndex),_gl.readPixels(x$3,y$2,width,height,utils.convert(textureFormat),utils.convert(textureType),buffer$1))}finally{let framebuffer$1=_currentRenderTarget===null?null:properties.get(_currentRenderTarget).__webglFramebuffer;state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer$1)}}},this.readRenderTargetPixelsAsync=async function(renderTarget,x$3,y$2,width,height,buffer$1,activeCubeFaceIndex,textureIndex=0){if(!(renderTarget&&renderTarget.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let framebuffer=properties.get(renderTarget).__webglFramebuffer;if(renderTarget.isWebGLCubeRenderTarget&&activeCubeFaceIndex!==void 0&&(framebuffer=framebuffer[activeCubeFaceIndex]),framebuffer)if(x$3>=0&&x$3<=renderTarget.width-width&&y$2>=0&&y$2<=renderTarget.height-height){state.bindFramebuffer(_gl.FRAMEBUFFER,framebuffer);let texture=renderTarget.textures[textureIndex],textureFormat=texture.format,textureType=texture.type;if(!capabilities.textureFormatReadable(textureFormat))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(!capabilities.textureTypeReadable(textureType))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);let glBuffer=_gl.createBuffer();_gl.bindBuffer(_gl.PIXEL_PACK_BUFFER,glBuffer),_gl.bufferData(_gl.PIXEL_PACK_BUFFER,buffer$1.byteLength,_gl.STREAM_READ),renderTarget.textures.length>1&&_gl.readBuffer(_gl.COLOR_ATTACHMENT0+textureIndex),_gl.readPixels(x$3,y$2,width,height,utils.convert(textureFormat),utils.convert(textureType),0);let currFramebuffer=_currentRenderTarget===null?null:properties.get(_currentRenderTarget).__webglFramebuffer;state.bindFramebuffer(_gl.FRAMEBUFFER,currFramebuffer);let sync$1=_gl.fenceSync(_gl.SYNC_GPU_COMMANDS_COMPLETE,0);return _gl.flush(),await probeAsync(_gl,sync$1,4),_gl.bindBuffer(_gl.PIXEL_PACK_BUFFER,glBuffer),_gl.getBufferSubData(_gl.PIXEL_PACK_BUFFER,0,buffer$1),_gl.deleteBuffer(glBuffer),_gl.deleteSync(sync$1),buffer$1}else throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)},this.copyFramebufferToTexture=function(texture,position$2=null,level=0){let levelScale=2**-level,width=Math.floor(texture.image.width*levelScale),height=Math.floor(texture.image.height*levelScale),x$3=position$2===null?0:position$2.x,y$2=position$2===null?0:position$2.y;textures.setTexture2D(texture,0),_gl.copyTexSubImage2D(_gl.TEXTURE_2D,level,0,0,x$3,y$2,width,height),state.unbindTexture()};let _srcFramebuffer=_gl.createFramebuffer(),_dstFramebuffer=_gl.createFramebuffer();this.copyTextureToTexture=function(srcTexture,dstTexture,srcRegion=null,dstPosition=null,srcLevel=0,dstLevel=null){dstLevel===null&&(srcLevel===0?dstLevel=0:(warnOnce$1(`WebGLRenderer: copyTextureToTexture function signature has changed to support src and dst mipmap levels.`),dstLevel=srcLevel,srcLevel=0));let width,height,depth$1,minX,minY,minZ,dstX,dstY,dstZ,image$1=srcTexture.isCompressedTexture?srcTexture.mipmaps[dstLevel]:srcTexture.image;if(srcRegion!==null)width=srcRegion.max.x-srcRegion.min.x,height=srcRegion.max.y-srcRegion.min.y,depth$1=srcRegion.isBox3?srcRegion.max.z-srcRegion.min.z:1,minX=srcRegion.min.x,minY=srcRegion.min.y,minZ=srcRegion.isBox3?srcRegion.min.z:0;else{let levelScale=2**-srcLevel;width=Math.floor(image$1.width*levelScale),height=Math.floor(image$1.height*levelScale),depth$1=srcTexture.isDataArrayTexture?image$1.depth:srcTexture.isData3DTexture?Math.floor(image$1.depth*levelScale):1,minX=0,minY=0,minZ=0}dstPosition===null?(dstX=0,dstY=0,dstZ=0):(dstX=dstPosition.x,dstY=dstPosition.y,dstZ=dstPosition.z);let glFormat=utils.convert(dstTexture.format),glType=utils.convert(dstTexture.type),glTarget;dstTexture.isData3DTexture?(textures.setTexture3D(dstTexture,0),glTarget=_gl.TEXTURE_3D):dstTexture.isDataArrayTexture||dstTexture.isCompressedArrayTexture?(textures.setTexture2DArray(dstTexture,0),glTarget=_gl.TEXTURE_2D_ARRAY):(textures.setTexture2D(dstTexture,0),glTarget=_gl.TEXTURE_2D),_gl.pixelStorei(_gl.UNPACK_FLIP_Y_WEBGL,dstTexture.flipY),_gl.pixelStorei(_gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,dstTexture.premultiplyAlpha),_gl.pixelStorei(_gl.UNPACK_ALIGNMENT,dstTexture.unpackAlignment);let currentUnpackRowLen=_gl.getParameter(_gl.UNPACK_ROW_LENGTH),currentUnpackImageHeight=_gl.getParameter(_gl.UNPACK_IMAGE_HEIGHT),currentUnpackSkipPixels=_gl.getParameter(_gl.UNPACK_SKIP_PIXELS),currentUnpackSkipRows=_gl.getParameter(_gl.UNPACK_SKIP_ROWS),currentUnpackSkipImages=_gl.getParameter(_gl.UNPACK_SKIP_IMAGES);_gl.pixelStorei(_gl.UNPACK_ROW_LENGTH,image$1.width),_gl.pixelStorei(_gl.UNPACK_IMAGE_HEIGHT,image$1.height),_gl.pixelStorei(_gl.UNPACK_SKIP_PIXELS,minX),_gl.pixelStorei(_gl.UNPACK_SKIP_ROWS,minY),_gl.pixelStorei(_gl.UNPACK_SKIP_IMAGES,minZ);let isSrc3D=srcTexture.isDataArrayTexture||srcTexture.isData3DTexture,isDst3D=dstTexture.isDataArrayTexture||dstTexture.isData3DTexture;if(srcTexture.isDepthTexture){let srcTextureProperties=properties.get(srcTexture),dstTextureProperties=properties.get(dstTexture),srcRenderTargetProperties=properties.get(srcTextureProperties.__renderTarget),dstRenderTargetProperties=properties.get(dstTextureProperties.__renderTarget);state.bindFramebuffer(_gl.READ_FRAMEBUFFER,srcRenderTargetProperties.__webglFramebuffer),state.bindFramebuffer(_gl.DRAW_FRAMEBUFFER,dstRenderTargetProperties.__webglFramebuffer);for(let i$1=0;i$1{fns.delete(fn$5)},clear=()=>{fns.clear()},on$1=fn$5=>{fns.add(fn$5);let offFn=()=>off(fn$5);return tryOnScopeDispose$1(offFn),{off:offFn}},trigger$1=(...args)=>Promise.all(Array.from(fns).map(fn$5=>fn$5(...args)));return{on:on$1,off,trigger:trigger$1,clear}}function createGlobalState(stateFactory){let initialized=!1,state,scope=effectScope(!0);return(...args)=>(initialized||(state=scope.run(()=>stateFactory(...args)),initialized=!0),state)}const localProvidedStateMap$1=new WeakMap,injectLocal$1=(...args)=>{var _a$2;let key$1=args[0],instance=(_a$2=getCurrentInstance())?.proxy;if(instance==null&&!hasInjectionContext())throw Error(`injectLocal must be called in setup`);return instance&&localProvidedStateMap$1.has(instance)&&key$1 in localProvidedStateMap$1.get(instance)?localProvidedStateMap$1.get(instance)[key$1]:inject(...args)};function createSharedComposable(composable){let subscribers=0,state,scope,dispose$1=()=>{--subscribers,scope&&subscribers<=0&&(scope.stop(),state=void 0,scope=void 0)};return(...args)=>(subscribers+=1,scope||(scope=effectScope(!0),state=scope.run(()=>composable(...args))),tryOnScopeDispose$1(dispose$1),state)}const isClient$1=typeof window<`u`&&typeof document<`u`,isWorker$1=typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope,isDef$1=val=>val!==void 0,notNullish$1=val=>val!=null,toString$3=Object.prototype.toString,isObject$4=val=>toString$3.call(val)===`[object Object]`,noop$3=()=>{},isIOS=getIsIOS();function getIsIOS(){var _a$2,_b;return isClient$1&&(_a$2=window==null?void 0:window.navigator)?.userAgent&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(_b=window==null?void 0:window.navigator)?.maxTouchPoints>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function createFilterWrapper$1(filter$1,fn$5){function wrapper(...args){return new Promise((resolve$1,reject)=>{Promise.resolve(filter$1(()=>fn$5.apply(this,args),{fn:fn$5,thisArg:this,args})).then(resolve$1).catch(reject)})}return wrapper}function debounceFilter$1(ms,options$1={}){let timer,maxTimer,lastRejector=noop$3,_clearTimeout=timer2=>{clearTimeout(timer2),lastRejector(),lastRejector=noop$3},lastInvoker,filter$1=invoke$1=>{let duration=toValue$1(ms),maxDuration$1=toValue$1(options$1.maxWait);return timer&&_clearTimeout(timer),duration<=0||maxDuration$1!==void 0&&maxDuration$1<=0?(maxTimer&&(_clearTimeout(maxTimer),maxTimer=null),Promise.resolve(invoke$1())):new Promise((resolve$1,reject)=>{lastRejector=options$1.rejectOnCancel?reject:resolve$1,lastInvoker=invoke$1,maxDuration$1&&!maxTimer&&(maxTimer=setTimeout(()=>{timer&&_clearTimeout(timer),maxTimer=null,resolve$1(lastInvoker())},maxDuration$1)),timer=setTimeout(()=>{maxTimer&&_clearTimeout(maxTimer),maxTimer=null,resolve$1(invoke$1())},duration)})};return filter$1}function cacheStringFunction$1(fn$5){let cache$1=Object.create(null);return str=>{let hit=cache$1[str];return hit||(cache$1[str]=fn$5(str))}}const hyphenateRE$1=/\B([A-Z])/g,hyphenate$1=cacheStringFunction$1(str=>str.replace(hyphenateRE$1,`-$1`).toLowerCase()),camelizeRE$1=/-(\w)/g,camelize$2=cacheStringFunction$1(str=>str.replace(camelizeRE$1,(_$2,c$4)=>c$4?c$4.toUpperCase():``));function pxValue$1(px$2){return px$2.endsWith(`rem`)?Number.parseFloat(px$2)*16:Number.parseFloat(px$2)}function objectPick$1(obj,keys$3,omitUndefined=!1){return keys$3.reduce((n$2,k$4)=>(k$4 in obj&&(!omitUndefined||obj[k$4]!==void 0)&&(n$2[k$4]=obj[k$4]),n$2),{})}function getLifeCycleTarget$1(target$1){return target$1||getCurrentInstance()}function toArray$1(value$1){return Array.isArray(value$1)?value$1:[value$1]}function useDebounceFn$1(fn$5,ms=200,options$1={}){return createFilterWrapper$1(debounceFilter$1(ms,options$1),fn$5)}function refDebounced$1(value$1,ms=200,options$1={}){let debounced=ref(value$1.value),updater=useDebounceFn$1(()=>{debounced.value=value$1.value},ms,options$1);return watch(value$1,()=>updater()),debounced}function toRefs$2(objectRef,options$1={}){if(!isRef(objectRef))return toRefs(objectRef);let result=Array.isArray(objectRef.value)?Array.from({length:objectRef.value.length}):{};for(let key$1 in objectRef.value)result[key$1]=customRef(()=>({get(){return objectRef.value[key$1]},set(v$1){var _a$2;let replaceRef=(_a$2=toValue$1(options$1.replaceRef))??!0;if(replaceRef)if(Array.isArray(objectRef.value)){let copy=[...objectRef.value];copy[key$1]=v$1,objectRef.value=copy}else{let newObject={...objectRef.value,[key$1]:v$1};Object.setPrototypeOf(newObject,Object.getPrototypeOf(objectRef.value)),objectRef.value=newObject}else objectRef.value[key$1]=v$1}}));return result}const toValue=toValue$1;function tryOnBeforeUnmount(fn$5,target$1){let instance=getLifeCycleTarget$1(target$1);instance&&onBeforeUnmount(fn$5,target$1)}function tryOnMounted$1(fn$5,sync$1=!0,target$1){let instance=getLifeCycleTarget$1();instance?onMounted(fn$5,target$1):sync$1?fn$5():nextTick(fn$5)}function useIntervalFn$1(cb$1,interval=1e3,options$1={}){let{immediate=!0,immediateCallback=!1}=options$1,timer=null,isActive=shallowRef(!1);function clean$3(){timer&&(clearInterval(timer),timer=null)}function pause(){isActive.value=!1,clean$3()}function resume(){let intervalValue=toValue$1(interval);intervalValue<=0||(isActive.value=!0,immediateCallback&&cb$1(),clean$3(),isActive.value&&(timer=setInterval(cb$1,intervalValue)))}if(immediate&&isClient$1&&resume(),isRef(interval)||typeof interval==`function`){let stopWatch=watch(interval,()=>{isActive.value&&isClient$1&&resume()});tryOnScopeDispose$1(stopWatch)}return tryOnScopeDispose$1(pause),{isActive,pause,resume}}function watchImmediate$1(source,cb$1,options$1){return watch(source,cb$1,{...options$1,immediate:!0})}const defaultWindow=isClient$1?window:void 0,defaultDocument$1=isClient$1?window.document:void 0,defaultNavigator$1=isClient$1?window.navigator:void 0,defaultLocation$1=isClient$1?window.location:void 0;function unrefElement(elRef){var _a$2;let plain=toValue$1(elRef);return(_a$2=plain?.$el)??plain}function useEventListener(...args){let cleanups=[],cleanup=()=>{cleanups.forEach(fn$5=>fn$5()),cleanups.length=0},register=(el,event,listener,options$1)=>(el.addEventListener(event,listener,options$1),()=>el.removeEventListener(event,listener,options$1)),firstParamTargets=computed(()=>{let test$1=toArray$1(toValue$1(args[0])).filter(e$3=>e$3!=null);return test$1.every(e$3=>typeof e$3!=`string`)?test$1:void 0}),stopWatch=watchImmediate$1(()=>{var _a$2,_b;return[(_b=(_a$2=firstParamTargets.value)?.map(e$3=>unrefElement(e$3)))??[defaultWindow].filter(e$3=>e$3!=null),toArray$1(toValue$1(firstParamTargets.value?args[1]:args[0])),toArray$1(unref(firstParamTargets.value?args[2]:args[1])),toValue$1(firstParamTargets.value?args[3]:args[2])]},([raw_targets,raw_events,raw_listeners,raw_options])=>{if(cleanup(),!raw_targets?.length||!raw_events?.length||!raw_listeners?.length)return;let optionsClone=isObject$4(raw_options)?{...raw_options}:raw_options;cleanups.push(...raw_targets.flatMap(el=>raw_events.flatMap(event=>raw_listeners.map(listener=>register(el,event,listener,optionsClone)))))},{flush:`post`}),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose$1(cleanup),stop$1}function useMounted(){let isMounted=shallowRef(!1),instance=getCurrentInstance();return instance&&onMounted(()=>{isMounted.value=!0},instance),isMounted}function useSupported$1(callback){let isMounted=useMounted();return computed(()=>(isMounted.value,!!callback()))}function useMutationObserver$1(target$1,callback,options$1={}){let{window:window$1=defaultWindow,...mutationOptions}=options$1,observer,isSupported=useSupported$1(()=>window$1&&`MutationObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let value$1=toValue$1(target$1),items=toArray$1(value$1).map(unrefElement).filter(notNullish$1);return new Set(items)}),stopWatch=watch(()=>targets.value,targets2=>{cleanup(),isSupported.value&&targets2.size&&(observer=new MutationObserver(callback),targets2.forEach(el=>observer.observe(el,mutationOptions)))},{immediate:!0,flush:`post`}),takeRecords=()=>observer?.takeRecords(),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose$1(stop$1),{isSupported,stop:stop$1,takeRecords}}function createKeyPredicate(keyFilter){return typeof keyFilter==`function`?keyFilter:typeof keyFilter==`string`?event=>event.key===keyFilter:Array.isArray(keyFilter)?event=>keyFilter.includes(event.key):()=>!0}function onKeyStroke(...args){let key$1,handler,options$1={};args.length===3?(key$1=args[0],handler=args[1],options$1=args[2]):args.length===2?typeof args[1]==`object`?(key$1=!0,handler=args[0],options$1=args[1]):(key$1=args[0],handler=args[1]):(key$1=!0,handler=args[0]);let{target:target$1=defaultWindow,eventName=`keydown`,passive=!1,dedupe=!1}=options$1,predicate=createKeyPredicate(key$1),listener=e$3=>{e$3.repeat&&toValue$1(dedupe)||predicate(e$3)&&handler(e$3)};return useEventListener(target$1,eventName,listener,passive)}function useRafFn(fn$5,options$1={}){let{immediate=!0,fpsLimit=void 0,window:window$1=defaultWindow,once=!1}=options$1,isActive=shallowRef(!1),intervalLimit=computed(()=>fpsLimit?1e3/toValue$1(fpsLimit):null),previousFrameTimestamp=0,rafId=null;function loop(timestamp$2){if(!isActive.value||!window$1)return;previousFrameTimestamp||=timestamp$2;let delta=timestamp$2-previousFrameTimestamp;if(intervalLimit.value&&deltawindow$1&&`matchMedia`in window$1&&typeof window$1.matchMedia==`function`),ssrSupport=shallowRef(typeof ssrWidth==`number`),mediaQuery=shallowRef(),matches$1=shallowRef(!1),handler=event=>{matches$1.value=event.matches};return watchEffect(()=>{if(ssrSupport.value){ssrSupport.value=!isSupported.value;let queryStrings=toValue$1(query).split(`,`);matches$1.value=queryStrings.some(queryString=>{let not=queryString.includes(`not all`),minWidth=queryString.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),maxWidth=queryString.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),res=!!(minWidth||maxWidth);return minWidth&&res&&(res=ssrWidth>=pxValue$1(minWidth[1])),maxWidth&&res&&(res=ssrWidth<=pxValue$1(maxWidth[1])),not?!res:res});return}isSupported.value&&(mediaQuery.value=window$1.matchMedia(toValue$1(query)),matches$1.value=mediaQuery.value.matches)}),useEventListener(mediaQuery,`change`,handler,{passive:!0}),computed(()=>matches$1.value)}function cloneFnJSON(source){return JSON.parse(JSON.stringify(source))}function useDevicePixelRatio(options$1={}){let{window:window$1=defaultWindow}=options$1,pixelRatio=shallowRef(1),query=useMediaQuery$1(()=>`(resolution: ${pixelRatio.value}dppx)`,options$1),stop$1=noop$3;return window$1&&(stop$1=watchImmediate$1(query,()=>pixelRatio.value=window$1.devicePixelRatio)),{pixelRatio:readonly(pixelRatio),stop:stop$1}}function useResizeObserver$1(target$1,callback,options$1={}){let{window:window$1=defaultWindow,...observerOptions}=options$1,observer,isSupported=useSupported$1(()=>window$1&&`ResizeObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let _targets=toValue$1(target$1);return Array.isArray(_targets)?_targets.map(el=>unrefElement(el)):[unrefElement(_targets)]}),stopWatch=watch(targets,els=>{if(cleanup(),isSupported.value&&window$1){observer=new ResizeObserver(callback);for(let _el of els)_el&&observer.observe(_el,observerOptions)}},{immediate:!0,flush:`post`}),stop$1=()=>{cleanup(),stopWatch()};return tryOnScopeDispose$1(stop$1),{isSupported,stop:stop$1}}function useElementBounding$1(target$1,options$1={}){let{reset=!0,windowResize=!0,windowScroll=!0,immediate=!0,updateTiming=`sync`}=options$1,height=shallowRef(0),bottom=shallowRef(0),left=shallowRef(0),right=shallowRef(0),top=shallowRef(0),width=shallowRef(0),x$3=shallowRef(0),y$2=shallowRef(0);function recalculate(){let el=unrefElement(target$1);if(!el){reset&&(height.value=0,bottom.value=0,left.value=0,right.value=0,top.value=0,width.value=0,x$3.value=0,y$2.value=0);return}let rect=el.getBoundingClientRect();height.value=rect.height,bottom.value=rect.bottom,left.value=rect.left,right.value=rect.right,top.value=rect.top,width.value=rect.width,x$3.value=rect.x,y$2.value=rect.y}function update(){updateTiming===`sync`?recalculate():updateTiming===`next-frame`&&requestAnimationFrame(()=>recalculate())}return useResizeObserver$1(target$1,update),watch(()=>unrefElement(target$1),ele=>!ele&&update()),useMutationObserver$1(target$1,update,{attributeFilter:[`style`,`class`]}),windowScroll&&useEventListener(`scroll`,update,{capture:!0,passive:!0}),windowResize&&useEventListener(`resize`,update,{passive:!0}),tryOnMounted$1(()=>{immediate&&update()}),{height,bottom,left,right,top,width,x:x$3,y:y$2,update}}function useElementSize(target$1,initialSize={width:0,height:0},options$1={}){let{window:window$1=defaultWindow,box=`content-box`}=options$1,isSVG=computed(()=>{var _a$2,_b;return(_b=(_a$2=unrefElement(target$1))?.namespaceURI)?.includes(`svg`)}),width=shallowRef(initialSize.width),height=shallowRef(initialSize.height),{stop:stop1}=useResizeObserver$1(target$1,([entry])=>{let boxSize=box===`border-box`?entry.borderBoxSize:box===`content-box`?entry.contentBoxSize:entry.devicePixelContentBoxSize;if(window$1&&isSVG.value){let $elem=unrefElement(target$1);if($elem){let rect=$elem.getBoundingClientRect();width.value=rect.width,height.value=rect.height}}else if(boxSize){let formatBoxSize=toArray$1(boxSize);width.value=formatBoxSize.reduce((acc,{inlineSize})=>acc+inlineSize,0),height.value=formatBoxSize.reduce((acc,{blockSize})=>acc+blockSize,0)}else width.value=entry.contentRect.width,height.value=entry.contentRect.height},options$1);tryOnMounted$1(()=>{let ele=unrefElement(target$1);ele&&(width.value=`offsetWidth`in ele?ele.offsetWidth:initialSize.width,height.value=`offsetHeight`in ele?ele.offsetHeight:initialSize.height)});let stop2=watch(()=>unrefElement(target$1),ele=>{width.value=ele?initialSize.width:0,height.value=ele?initialSize.height:0});function stop$1(){stop1(),stop2()}return{width,height,stop:stop$1}}function useFps(options$1){var _a$2;let fps=shallowRef(0);if(typeof performance>`u`)return fps;let every=(_a$2=options$1?.every)??10,last=performance.now(),ticks=0;return useRafFn(()=>{if(ticks+=1,ticks>=every){let now=performance.now(),diff=now-last;fps.value=Math.round(1e3/(diff/ticks)),last=now,ticks=0}}),fps}function useMemory(options$1={}){let memory=ref(),isSupported=useSupported$1(()=>typeof performance<`u`&&`memory`in performance);if(isSupported.value){let{interval=1e3}=options$1;useIntervalFn$1(()=>{memory.value=performance.memory},interval,{immediate:options$1.immediate,immediateCallback:options$1.immediateCallback})}return{isSupported,memory}}const defaultState$1={x:0,y:0,pointerId:0,pressure:0,tiltX:0,tiltY:0,width:0,height:0,twist:0,pointerType:null},keys$2=Object.keys(defaultState$1);function usePointer$1(options$1={}){let{target:target$1=defaultWindow}=options$1,isInside=shallowRef(!1),state=ref(options$1.initialValue||{});Object.assign(state.value,defaultState$1,state.value);let handler=event=>{isInside.value=!0,!(options$1.pointerTypes&&!options$1.pointerTypes.includes(event.pointerType))&&(state.value=objectPick$1(event,keys$2,!1))};if(target$1){let listenerOptions={passive:!0};useEventListener(target$1,[`pointerdown`,`pointermove`,`pointerup`],handler,listenerOptions),useEventListener(target$1,`pointerleave`,()=>isInside.value=!1,listenerOptions)}return{...toRefs$2(state),isInside}}const DEFAULT_UNITS$1=[{max:6e4,value:1e3,name:`second`},{max:276e4,value:6e4,name:`minute`},{max:72e6,value:36e5,name:`hour`},{max:5184e5,value:864e5,name:`day`},{max:24192e5,value:6048e5,name:`week`},{max:28512e6,value:2592e6,name:`month`},{max:1/0,value:31536e6,name:`year`}];function useVModel(props,key$1,emit$1,options$1={}){var _a$2,_b,_c;let{clone:clone$2=!1,passive=!1,eventName,deep=!1,defaultValue,shouldEmit}=options$1,vm=getCurrentInstance(),_emit=emit$1||vm?.emit||(_a$2=vm?.$emit)?.bind(vm)||(_c=(_b=vm?.proxy)?.$emit)?.bind(vm?.proxy),event=eventName;key$1||=`modelValue`,event||=`update:${key$1.toString()}`;let cloneFn=val=>clone$2?typeof clone$2==`function`?clone$2(val):cloneFnJSON(val):val,getValue$2=()=>isDef$1(props[key$1])?cloneFn(props[key$1]):defaultValue,triggerEmit=value$1=>{shouldEmit?shouldEmit(value$1)&&_emit(event,value$1):_emit(event,value$1)};if(passive){let initialValue=getValue$2(),proxy=ref(initialValue),isUpdating=!1;return watch(()=>props[key$1],v$1=>{isUpdating||(isUpdating=!0,proxy.value=cloneFn(v$1),nextTick(()=>isUpdating=!1))}),watch(proxy,v$1=>{!isUpdating&&(v$1!==props[key$1]||deep)&&triggerEmit(v$1)},{deep}),proxy}else return computed({get(){return getValue$2()},set(value$1){triggerEmit(value$1)}})}function useWindowSize$1(options$1={}){let{window:window$1=defaultWindow,initialWidth=1/0,initialHeight=1/0,listenOrientation=!0,includeScrollbar=!0,type=`inner`}=options$1,width=shallowRef(initialWidth),height=shallowRef(initialHeight),update=()=>{if(window$1)if(type===`outer`)width.value=window$1.outerWidth,height.value=window$1.outerHeight;else if(type===`visual`&&window$1.visualViewport){let{width:visualViewportWidth,height:visualViewportHeight,scale:scale$1}=window$1.visualViewport;width.value=Math.round(visualViewportWidth*scale$1),height.value=Math.round(visualViewportHeight*scale$1)}else includeScrollbar?(width.value=window$1.innerWidth,height.value=window$1.innerHeight):(width.value=window$1.document.documentElement.clientWidth,height.value=window$1.document.documentElement.clientHeight)};update(),tryOnMounted$1(update);let listenerOptions={passive:!0};if(useEventListener(`resize`,update,listenerOptions),window$1&&type===`visual`&&window$1.visualViewport&&useEventListener(window$1.visualViewport,`resize`,update,listenerOptions),listenOrientation){let matches$1=useMediaQuery$1(`(orientation: portrait)`);watch(matches$1,()=>update())}return{width,height}}var At=Object.defineProperty,xt=(e$3,t,r$2)=>t in e$3?At(e$3,t,{enumerable:!0,configurable:!0,writable:!0,value:r$2}):e$3[t]=r$2,de$2=(e$3,t,r$2)=>xt(e$3,typeof t==`symbol`?t:t+``,r$2);const gr=`@tresjs/core`,hr=`module`,vr=`4.3.6`,yr=`pnpm@10.6.3`,_r=`Declarative ThreeJS using Vue Components`,wr=`Alvaro Saburido (https://github.com/alvarosabu/)`,br=`MIT`,Mr={type:`git`,url:`git+https://github.com/Tresjs/tres.git`},Pr=[`vue`,`3d`,`threejs`,`three`,`threejs-vue`],Cr=!1,Er={".":{types:`./dist/index.d.ts`,import:`./dist/tres.js`,require:`./dist/tres.umd.cjs`},"./components":{types:`./dist/src/components/index.d.ts`},"./composables":{types:`./dist/src/composables/index.d.ts`},"./types":{types:`./dist/src/types/index.d.ts`},"./utils":{types:`./dist/src/utils/index.d.ts`},"./*":`./*`},Tr=`./dist/tres.js`,Sr=`./dist/tres.js`,Ar=`./dist/index.d.ts`,xr=[`*.d.ts`,`dist`],kr={access:`public`},Lr={dev:`pnpm --filter='./playground/vue' dev`,"dev:nuxt":`pnpm --filter='./playground/nuxt' dev`,build:`vite build`,test:`vitest`,"test:ci":`vitest run`,"test:ui":`vitest --ui --coverage.enabled=true`,release:`release-it`,coverage:`vitest run --coverage`,lint:`eslint .`,"lint:fix":`eslint . --fix`,"docs:dev":`vitepress dev docs`,"docs:build":`vitepress build docs`,"docs:serve":`vitepress serve docs`,"docs:preview":`vitepress preview docs`,"docs:contributors":`esno scripts/update-contributors.ts`},Rr={three:`>=0.133`,vue:`>=3.4`},Or={"@alvarosabu/utils":`^3.2.0`,"@vue/devtools-api":`^6.6.3`,"@vueuse/core":`^12.5.0`},Dr={"@release-it/conventional-changelog":`^10.0.0`,"@stackblitz/sdk":`^1.11.0`,"@tresjs/cientos":`4.1.0`,"@tresjs/eslint-config":`^1.4.0`,"@types/three":`^0.173.0`,"@typescript-eslint/eslint-plugin":`^8.23.0`,"@typescript-eslint/parser":`^8.23.0`,"@vitejs/plugin-vue":`^5.2.1`,"@vitest/coverage-c8":`^0.33.0`,"@vitest/coverage-v8":`^3.0.5`,"@vitest/ui":`^3.0.5`,"@vue/test-utils":`^2.4.6`,eslint:`^9.19.0`,"eslint-plugin-vue":`^9.32.0`,esno:`^4.8.0`,gsap:`^3.12.7`,jsdom:`^26.0.0`,kolorist:`^1.8.0`,ohmyfetch:`^0.4.21`,pathe:`^2.0.2`,"release-it":`^18.1.2`,"rollup-plugin-analyzer":`^4.0.0`,"rollup-plugin-copy":`^3.5.0`,"rollup-plugin-visualizer":`^5.14.0`,sponsorkit:`^16.3.0`,three:`^0.173.0`,unocss:`^65.4.3`,unplugin:`^2.1.2`,"unplugin-vue-components":`^28.0.0`,vite:`^6.1.0`,"vite-plugin-banner":`^0.8.0`,"vite-plugin-dts":`4.5.0`,"vite-plugin-inspect":`^10.1.0`,"vite-plugin-require-transform":`^1.0.21`,"vite-svg-loader":`^5.1.0`,vitepress:`1.6.3`,vitest:`3.0.5`,vue:`3.5.13`,"vue-demi":`^0.14.10`},jr={name:gr,type:hr,version:vr,packageManager:yr,description:_r,author:wr,license:br,repository:Mr,keywords:Pr,sideEffects:Cr,exports:Er,main:Tr,module:Sr,types:Ar,files:xr,publishConfig:kr,scripts:Lr,peerDependencies:Rr,dependencies:Or,devDependencies:Dr};function Br(e$3){let t={nodes:{},materials:{}};return e$3&&e$3.traverse(r$2=>{r$2.name&&(t.nodes[r$2.name]=r$2),r$2.material&&!t.materials[r$2.material.name]&&(t.materials[r$2.material.name]=r$2.material)}),t}async function Ir(e$3,t,r$2,n$2,o$1){let{logError:l$1}=Q$2(),s$1=new e$3;return o$1&&o$1(s$1),r$2&&r$2(s$1),await new Promise((a$2,c$4)=>{s$1.load(t,i$1=>{let f$3=i$1;f$3.scene&&Object.assign(f$3,Br(f$3.scene)),a$2(f$3)},n$2,i$1=>{l$1(`[useLoader] - Failed to load resource`,i$1),c$4(i$1)})})}var $r=class extends Mesh{constructor(...r$2){super(...r$2),de$2(this,`type`,`HightlightMesh`),de$2(this,`createTime`),this.createTime=Date.now()}onBeforeRender(){let n$2=(Date.now()-this.createTime)/1e3,s$1=1+.07*Math.sin(2.5*n$2);this.scale.set(s$1,s$1,s$1)}};function be$1(e$3){return typeof e$3>`u`}function ke(e$3){return Array.isArray(e$3)}function Hr(e$3){return typeof e$3==`number`}function dt$3(e$3){return typeof e$3==`string`}function Y$1(e$3){return typeof e$3==`function`}function j(e$3){return e$3===Object(e$3)&&!ke(e$3)&&!Y$1(e$3)}function N(e$3){return j(e$3)&&!!e$3.isObject3D}function mt$2(e$3){return j(e$3)&&!!e$3.isColor}function Ur(e$3){return e$3!=null&&(typeof e$3==`string`||typeof e$3==`number`||mt$2(e$3))}function Me$1(e$3){return typeof e$3==`object`&&!!e$3&&`set`in e$3&&typeof e$3.set==`function`}function Fr(e$3){return Me$1(e$3)&&`copy`in e$3&&typeof e$3.copy==`function`}function Wr(e$3){return!!(e$3!=null&&e$3.constructor)}function Ge(e$3){return e$3 instanceof Layers}function Ve(e$3){return j(e$3)&&!!e$3.isCamera}function Nr(e$3){return j(e$3)&&!!e$3.isBufferGeometry}function zr(e$3){return j(e$3)&&!!e$3.isMaterial}function Gr(e$3){return j(e$3)&&!!e$3.isLight}function Vr(e$3){return j(e$3)&&!!e$3.isFog}function Yr(e$3){return j(e$3)&&!!e$3.isScene}function ne(e$3){return N(e$3)||Nr(e$3)||zr(e$3)||Vr(e$3)}function qr(e$3){return j(e$3)&&!!e$3.isPrimitive}const gt$2=(e$3,t)=>{for(let r$2 of Object.keys(t))t[r$2]instanceof Object&&Object.assign(t[r$2],gt$2(e$3[r$2],t[r$2]));return Object.assign(e$3||{},t),e$3},Kr=`html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot`,Jr=Zr(Kr);function Ye(e$3){return e$3&&e$3.nodeType===1}function he$1(e$3){return e$3.replace(/-([a-z])/g,(t,r$2)=>r$2.toUpperCase())}const Qr=/\B([A-Z])/g;function Xr(e$3){return e$3.replace(Qr,`-$1`).toLowerCase()}function Zr(e$3,t){let r$2=Object.create(null),n$2=e$3.split(`,`);for(let o$1=0;o$1!!r$2[o$1.toLowerCase()]:o$1=>!!r$2[o$1]}const qe=(e$3,t)=>{if(!t)return;let r$2=Array.isArray(t)?t:t.match(/([^[.\]])+/g);return r$2?.reduce((n$2,o$1)=>n$2&&n$2[o$1],e$3)},en=(e$3,t,r$2)=>{let n$2=Array.isArray(t)?t:t.match(/([^[.\]])+/g);n$2&&n$2.reduce((o$1,l$1,s$1)=>(o$1[l$1]===void 0&&(o$1[l$1]={}),s$1===n$2.length-1&&(o$1[l$1]=r$2),o$1[l$1]),e$3)};function ht$2(e$3,t){if(Ye(e$3)&&Ye(t)){let o$1=e$3.attributes,l$1=t.attributes;return o$1.length===l$1.length?Array.from(o$1).every(({name:s$1,value:a$2})=>t.getAttribute(s$1)===a$2):!1}if(e$3===t)return!0;if(typeof e$3!=`object`||!e$3||typeof t!=`object`||!t)return!1;let r$2=Object.keys(e$3),n$2=Object.keys(t);if(r$2.length!==n$2.length)return!1;for(let o$1 of r$2)if(!n$2.includes(o$1)||!ht$2(e$3[o$1],t[o$1]))return!1;return!0}function tn(e$3,t){if(!Array.isArray(e$3)||!Array.isArray(t)||e$3.length!==t.length)return!1;for(let r$2=0;r$2{if(c$4.uuid===t)return c$4;for(let i$1 of c$4.children){let f$3=o$1(i$1);if(f$3)return f$3}},l$1=o$1(e$3);if(!l$1){console.warn(`Object with UUID not found in the scene.`);return}let s$1=l$1;for(let c$4=0;c$4vt$2(o$1)),!(e$3 instanceof Scene)){let o$1=e$3;e$3&&((n$2=e$3.dispose)==null||n$2.call(e$3)),o$1.geometry&&o$1.geometry.dispose(),Array.isArray(o$1.material)?o$1.material.forEach(l$1=>Ke(l$1)):o$1.material&&Ke(o$1.material)}}function ln(e$3,t){let r$2=0;for(let n$2=0;n$2r$2===0?t:t.charAt(0).toUpperCase()+t.slice(1)).join(``)}const Qe=/-\d+$/;function cn$1(e$3,t,r$2){if(dt$3(r$2)){if(Qe.test(r$2)){let l$1=r$2.replace(Qe,``),{target:s$1,key:a$2}=Pe$1(e$3,l$1);if(!Array.isArray(s$1[a$2])){let c$4=s$1[a$2],i$1=[];i$1.__tresDetach=()=>{i$1.every(f$3=>be$1(f$3))&&(s$1[a$2]=c$4)},s$1[a$2]=i$1}}let{target:n$2,key:o$1}=Pe$1(e$3,r$2);t.__tres.previousAttach=n$2[o$1],n$2[o$1]=J(t)}else t.__tres.previousAttach=r$2(e$3,t)}function un$2(e$3,t,r$2){var n$2,o$1,l$1;if(dt$3(r$2)){let{target:s$1,key:a$2}=Pe$1(e$3,r$2),c$4=t.__tres.previousAttach;c$4===void 0?delete s$1[a$2]:s$1[a$2]=c$4,`__tresDetach`in s$1&&s$1.__tresDetach()}else (o$1=(n$2=t.__tres)?.previousAttach)==null||o$1.call(n$2,e$3,t);(l$1=t.__tres)==null||delete l$1.previousAttach}function z$1(e$3,t,r$2){let n$2=e$3;return n$2.__tres={type:`unknown`,eventCount:0,root:r$2,handlers:{},memoizedProps:{},objects:[],parent:null,previousAttach:null,...t},n$2.__tres.attach||(n$2.isMaterial?n$2.__tres.attach=`material`:n$2.isBufferGeometry?n$2.__tres.attach=`geometry`:n$2.isFog&&(n$2.__tres.attach=`fog`)),n$2}function yt$2(e$3){var r$2;let t=(r$2=e$3?.__tres)?.root;t&&t.render&&t.render.canBeInvalidated.value&&t.invalidate()}function fn$4(e$3,t,r$2){var o$1;if(!Y$1(e$3.setPixelRatio))return;let n$2=0;if(r$2&&ke(r$2)&&r$2.length>=2){let[l$1,s$1]=r$2;n$2=MathUtils.clamp(t,l$1,s$1)}else n$2=Hr(r$2)?r$2:t;n$2!==(o$1=e$3.getPixelRatio)?.call(e$3)&&e$3.setPixelRatio(n$2)}function pn(e$3,t,r$2,n$2,o$1){let l$1=[...t.__tres.objects],s$1=J(t);if(e$3=J(e$3),s$1===e$3)return!0;let a$2=z$1(e$3,t.__tres??{},o$1),c$4=t.parent??t.__tres.parent??null,i$1={...t.__tres.memoizedProps};delete i$1.object;for(let f$3 of l$1)_t$2(f$3,o$1),wt$2(f$3,o$1);s$1.__tres.objects=[],n$2.remove(t);for(let[f$3,v$1]of Object.entries(i$1))n$2.patchProp(a$2,f$3,a$2[f$3],v$1);r$2(e$3),n$2.insert(t,c$4);for(let f$3 of l$1)n$2.insert(f$3,t);return!0}function J(e$3){return qr(e$3)?(e$3.object.__tres=e$3.__tres,e$3.object):e$3}function _t$2(e$3,t){var n$2,o$1,l$1,s$1;let r$2=(n$2=e$3.__tres)?.parent||t.scene.value;e$3.__tres&&(e$3.__tres.parent=null),r$2&&r$2.__tres&&`objects`in r$2.__tres&&ln(r$2.__tres.objects,a$2=>a$2!==e$3),(o$1=e$3.__tres)!=null&&o$1.attach?un$2(r$2,e$3,e$3.__tres.attach):((s$1=(l$1=e$3.parent)?.remove)==null||s$1.call(l$1,J(e$3)),e$3.parent=null)}function wt$2(e$3,t){var r$2;(r$2=e$3.traverse)==null||r$2.call(e$3,n$2=>{var o$1;t.deregisterCamera(n$2),(o$1=t.eventManager)==null||o$1.deregisterPointerMissedObject(n$2)}),t.deregisterCamera(e$3),yt$2(e$3)}async function dn(e$3,t){let r$2=new TextureLoader(t),n$2=o$1=>new Promise((l$1,s$1)=>{r$2.load(o$1,a$2=>l$1(a$2),()=>null,()=>{s$1(Error(`[useTextures] - Failed to load texture`))})});if(rn(e$3)){let o$1=await Promise.all(e$3.map(l$1=>n$2(l$1)));return e$3.length>1?o$1:o$1[0]}else{let{map:o$1,displacementMap:l$1,normalMap:s$1,roughnessMap:a$2,metalnessMap:c$4,aoMap:i$1,alphaMap:f$3,matcap:v$1}=e$3;return{map:o$1?await n$2(o$1):null,displacementMap:l$1?await n$2(l$1):null,normalMap:s$1?await n$2(s$1):null,roughnessMap:a$2?await n$2(a$2):null,metalnessMap:c$4?await n$2(c$4):null,aoMap:i$1?await n$2(i$1):null,alphaMap:f$3?await n$2(f$3):null,matcap:v$1?await n$2(v$1):null}}}const to=defineComponent({__name:`component`,props:{map:{},displacementMap:{},normalMap:{},roughnessMap:{},metalnessMap:{},aoMap:{},alphaMap:{},matcap:{}},async setup(e$3){let t,r$2,n$2=e$3,o$1=([t,r$2]=withAsyncContext(()=>reactive(dn(n$2))),t=await t,r$2(),t);return(l$1,s$1)=>renderSlot(l$1.$slots,`default`,{textures:unref(o$1)})}}),mn=({sizes:e$3})=>{let t=ref([]),r$2=computed(()=>t.value[0]),n$2=s$1=>{let a$2=s$1 instanceof Camera?s$1:t.value.find(i$1=>i$1.uuid===s$1);if(!a$2)return;let c$4=t.value.filter(({uuid:i$1})=>i$1!==a$2.uuid);t.value=[a$2,...c$4]},o$1=(s$1,a$2=!1)=>{if(Ve(s$1)){let c$4=s$1;if(t.value.some(({uuid:i$1})=>i$1===c$4.uuid))return;a$2?n$2(c$4):t.value.push(c$4)}},l$1=s$1=>{if(Ve(s$1)){let a$2=s$1;t.value=t.value.filter(({uuid:c$4})=>c$4!==a$2.uuid)}};return watchEffect(()=>{e$3.aspectRatio.value&&t.value.forEach(s$1=>{!s$1.manual&&(s$1 instanceof PerspectiveCamera||gn(s$1))&&(s$1 instanceof PerspectiveCamera?s$1.aspect=e$3.aspectRatio.value:(s$1.left=e$3.width.value*-.5,s$1.right=e$3.width.value*.5,s$1.top=e$3.height.value*.5,s$1.bottom=e$3.height.value*-.5),s$1.updateProjectionMatrix())})}),onUnmounted(()=>{t.value=[]}),{camera:r$2,cameras:t,registerCamera:o$1,deregisterCamera:l$1,setCameraActive:n$2}};function gn(e$3){return e$3.hasOwnProperty(`isOrthographicCamera`)&&e$3.isOrthographicCamera}const ro=!0,fe$1=`[TresJS ▲ ■ ●] `;function hn(...e$3){typeof e$3[0]==`string`?e$3[0]=fe$1+e$3[0]:e$3.unshift(fe$1),console.error(...e$3)}function vn$2(...e$3){typeof e$3[0]==`string`?e$3[0]=fe$1+e$3[0]:e$3.unshift(fe$1),console.warn(...e$3)}function yn(e$3,t){}function Q$2(){return{logError:hn,logWarning:vn$2,logMessage:yn}}const Ce$2=ref({}),Ee$1=e$3=>Object.assign(Ce$2.value,e$3);function ve(){let e$3=new Map,t=new Set,r$2=0,n$2=!1,o$1=()=>{let i$1=Array.from(e$3.entries()).sort((f$3,v$1)=>{let u$1=f$3[1].priority-v$1[1].priority;return u$1===0?f$3[1].addI-v$1[1].addI:u$1});t.clear(),i$1.forEach(f$3=>t.add(f$3[0]))},l$1=i$1=>{e$3.delete(i$1),t.delete(i$1)};return{on:(i$1,f$3=0)=>{e$3.set(i$1,{priority:f$3,addI:r$2++});let v$1=()=>l$1(i$1);return tryOnScopeDispose$1(v$1),n$2=!0,{off:v$1}},off:l$1,trigger:(...i$1)=>{n$2&&(o$1(),n$2=!1),t.forEach(f$3=>f$3(...i$1))},dispose:()=>{e$3.clear(),t.clear()},get count(){return e$3.size}}}function _n(){let e$3=!0,t=!0,r$2=!1,n$2=new Clock(!1),o$1=ref(n$2.running),l$1=ref(!1),s$1,a$2=MathUtils.generateUUID(),c$4=null,i$1=ve(),f$3=ve(),v$1=ve();S$2();let u$1={};function _$2(M$1){u$1=M$1}function d$2(M$1,x$3,m$2=0){switch(x$3){case`before`:return i$1.on(M$1,m$2);case`render`:return c$4||=M$1,f$3.dispose(),f$3.on(M$1);case`after`:return v$1.on(M$1,m$2)}}function y$2(){t&&(t=!1,S$2(),E$2())}function p$5(){t=!0,S$2(),cancelAnimationFrame(s$1)}function h$3(){r$2=!1,S$2()}function P$1(){r$2=!0,S$2()}function C$3(){l$1.value=!0}function b$3(){l$1.value=!1}function E$2(){if(!e$3){s$1=requestAnimationFrame(E$2);return}let M$1=n$2.getDelta(),x$3=n$2.getElapsedTime(),m$2={camera:unref(u$1.camera),scene:unref(u$1.scene),renderer:unref(u$1.renderer),raycaster:unref(u$1.raycaster),controls:unref(u$1.controls),invalidate:u$1.invalidate,advance:u$1.advance},w$1={delta:M$1,elapsed:x$3,clock:n$2,...m$2};o$1.value&&i$1.trigger(w$1),l$1.value||(f$3.count?f$3.trigger(w$1):c$4&&c$4(w$1)),o$1.value&&v$1.trigger(w$1),s$1=requestAnimationFrame(E$2)}function S$2(){let M$1=!t&&!r$2;n$2.running!==M$1&&(n$2.running?n$2.stop():n$2.start()),o$1.value=n$2.running}return{loopId:a$2,register:(M$1,x$3,m$2)=>d$2(M$1,x$3,m$2),start:y$2,stop:p$5,pause:P$1,resume:h$3,pauseRender:C$3,resumeRender:b$3,isRenderPaused:l$1,isActive:o$1,setContext:_$2,setReady:M$1=>e$3=M$1}}function Le(e$3){let t=0;return e$3.traverse(r$2=>{if(r$2.isMesh&&r$2.geometry&&r$2.type!==`HightlightMesh`){let n$2=r$2.geometry,o$1=n$2.attributes.position.count*3*Float32Array.BYTES_PER_ELEMENT,l$1=n$2.index?n$2.index.count*Uint32Array.BYTES_PER_ELEMENT:0,s$1=n$2.attributes.normal?n$2.attributes.normal.count*3*Float32Array.BYTES_PER_ELEMENT:0,a$2=n$2.attributes.uv?n$2.attributes.uv.count*2*Float32Array.BYTES_PER_ELEMENT:0,c$4=o$1+l$1+s$1+a$2;t+=c$4}}),t}function wn(e$3){return(e$3/1024).toFixed(2)}const bn=Number.parseInt(REVISION.replace(`dev`,``));function Mn(e$3){return e$3 instanceof Color?e$3:Array.isArray(e$3)?new Color(...e$3):new Color(e$3)}const oe$1={realistic:{shadows:!0,physicallyCorrectLights:!0,outputColorSpace:SRGBColorSpace,toneMapping:ACESFilmicToneMapping,toneMappingExposure:3,shadowMap:{enabled:!0,type:PCFSoftShadowMap}},flat:{toneMapping:NoToneMapping,toneMappingExposure:1}};function Pn({canvas:e$3,options:t,contextParts:{sizes:r$2,render:n$2,invalidate:o$1,advance:l$1}}){let s$1=computed(()=>({alpha:toValue(t.alpha)??!0,depth:toValue(t.depth),canvas:unrefElement(e$3),context:toValue(t.context),stencil:toValue(t.stencil),antialias:toValue(t.antialias)??!0,precision:toValue(t.precision),powerPreference:toValue(t.powerPreference),premultipliedAlpha:toValue(t.premultipliedAlpha),preserveDrawingBuffer:toValue(t.preserveDrawingBuffer),logarithmicDepthBuffer:toValue(t.logarithmicDepthBuffer),failIfMajorPerformanceCaveat:toValue(t.failIfMajorPerformanceCaveat)})),a$2=shallowRef(new WebGLRenderer(s$1.value));function c$4(){t.renderMode===`on-demand`&&o$1()}watch(s$1,()=>{a$2.value.dispose(),a$2.value=new WebGLRenderer(s$1.value),c$4()}),watch([r$2.width,r$2.height],()=>{a$2.value.setSize(r$2.width.value,r$2.height.value),c$4()},{immediate:!0}),watch(()=>t.clearColor,c$4);let{pixelRatio:i$1}=useDevicePixelRatio(),{logError:f$3}=Q$2(),u$1=(()=>{let d$2=new WebGLRenderer,y$2={shadowMap:{enabled:d$2.shadowMap.enabled,type:d$2.shadowMap.type},toneMapping:d$2.toneMapping,toneMappingExposure:d$2.toneMappingExposure,outputColorSpace:d$2.outputColorSpace};return d$2.dispose(),y$2})(),_$2=toValue(t.renderMode);return _$2===`on-demand`&&o$1(),_$2===`manual`&&setTimeout(()=>{l$1()},100),watchEffect(()=>{let d$2=toValue(t.preset);d$2&&(d$2 in oe$1||f$3(`Renderer Preset must be one of these: ${Object.keys(oe$1).join(`, `)}`),gt$2(a$2.value,oe$1[d$2])),fn$4(a$2.value,i$1.value,toValue(t.dpr)),_$2===`always`&&(n$2.frames.value=Math.max(1,n$2.frames.value));let y$2=(P$1,C$3)=>{let b$3=toValue(P$1),E$2=()=>{if(d$2)return qe(oe$1[d$2],C$3)};if(b$3!==void 0)return b$3;let S$2=E$2();return S$2===void 0?qe(u$1,C$3):S$2},p$5=(P$1,C$3)=>en(a$2.value,C$3,y$2(P$1,C$3));p$5(t.shadows,`shadowMap.enabled`),p$5(t.toneMapping??ACESFilmicToneMapping,`toneMapping`),p$5(t.shadowMapType,`shadowMap.type`),bn<150&&p$5(!t.useLegacyLights,`physicallyCorrectLights`),p$5(t.outputColorSpace,`outputColorSpace`),p$5(t.toneMappingExposure,`toneMappingExposure`);let h$3=y$2(t.clearColor,`clearColor`);h$3&&a$2.value.setClearColor(h$3?Mn(h$3):new Color(0))}),onUnmounted(()=>{a$2.value.dispose(),a$2.value.forceContextLoss()}),{renderer:a$2}}function Cn(e$3,t,r$2=10){let n$2=toValue(e$3)?useWindowSize$1():useElementSize(computed(()=>toValue(t).parentElement)),o$1=readonly(refDebounced$1(n$2.width,r$2)),l$1=readonly(refDebounced$1(n$2.height,r$2)),s$1=computed(()=>o$1.value/l$1.value);return{height:l$1,width:o$1,aspectRatio:s$1}}const En=(e$3,t)=>{let r$2=computed(()=>t.renderer.value.domElement),n$2=shallowRef([]),{x:o$1,y:l$1}=usePointer$1({target:r$2}),s$1=0,{width:a$2,height:c$4,top:i$1,left:f$3}=useElementBounding$1(r$2),v$1=({x:g$2,y:T$1})=>{if(r$2.value)return{x:(g$2-f$3.value)/a$2.value*2-1,y:-((T$1-i$1.value)/c$4.value)*2+1}},u$1=({x:g$2,y:T$1})=>{if(t.camera.value)return t.raycaster.value.setFromCamera(new Vector2(g$2,T$1),t.camera.value),n$2.value=t.raycaster.value.intersectObjects(e$3.value,!0),n$2.value},_$2=g$2=>{let T$1=v$1({x:g$2?.clientX??o$1.value,y:g$2?.clientY??l$1.value});return T$1&&u$1(T$1)||[]},d$2=createEventHook$1(),y$2=createEventHook$1(),p$5=createEventHook$1(),h$3=createEventHook$1(),P$1=createEventHook$1(),C$3=createEventHook$1(),b$3=createEventHook$1(),E$2=createEventHook$1();function S$2(g$2){let T$1={};for(let U in g$2)typeof U!=`function`&&(T$1[U]=g$2[U]);return T$1}let M$1=(g$2,T$1)=>{var Ie,$e$1,He$1;let U=S$2(T$1),re$3=new Vector3(T$1?.clientX,T$1?.clientY,0).unproject((Ie=t.camera)?.value);g$2.trigger({...U,intersections:n$2.value,unprojectedPoint:re$3,ray:($e$1=t.raycaster)?.value.ray,camera:(He$1=t.camera)?.value,sourceEvent:T$1,delta:s$1,stopPropagating:!1})},x$3,m$2=g$2=>{_$2(g$2),M$1(p$5,g$2),x$3=g$2},w$1=()=>{x$3&&m$2(x$3)},k$4,L$1,R$1,B$2=g$2=>{var T$1;k$4=(T$1=n$2.value[0])?.object,s$1=0,L$1=new Vector2(g$2?.clientX??o$1.value,g$2?.clientY??l$1.value),M$1(P$1,g$2)},O$2,G$1=!1,Oe$2=g$2=>{var T$1,U,re$3;g$2 instanceof PointerEvent&&(n$2.value.length===0&&M$1(C$3,g$2),k$4===(T$1=n$2.value[0])?.object&&(R$1=new Vector2(g$2?.clientX??o$1.value,g$2?.clientY??l$1.value),s$1=L$1?.distanceTo(R$1),g$2.button===0?(M$1(d$2,g$2),O$2===(U=n$2.value[0])?.object?G$1=!0:(O$2=(re$3=n$2.value[0])?.object,G$1=!1)):g$2.button===2&&M$1(b$3,g$2)),M$1(h$3,g$2))},De=g$2=>{G$1&&(M$1(y$2,g$2),O$2=void 0,G$1=!1)},je=g$2=>M$1(p$5,g$2),Be$2=g$2=>M$1(E$2,g$2);return r$2.value.addEventListener(`pointerup`,Oe$2),r$2.value.addEventListener(`pointerdown`,B$2),r$2.value.addEventListener(`pointermove`,m$2),r$2.value.addEventListener(`pointerleave`,je),r$2.value.addEventListener(`dblclick`,De),r$2.value.addEventListener(`wheel`,Be$2),onUnmounted(()=>{r$2!=null&&r$2.value&&(r$2.value.removeEventListener(`pointerup`,Oe$2),r$2.value.removeEventListener(`pointerdown`,B$2),r$2.value.removeEventListener(`pointermove`,m$2),r$2.value.removeEventListener(`pointerleave`,je),r$2.value.removeEventListener(`dblclick`,De),r$2.value.removeEventListener(`wheel`,Be$2))}),{intersects:n$2,onClick:g$2=>d$2.on(g$2).off,onDblClick:g$2=>y$2.on(g$2).off,onContextMenu:g$2=>b$3.on(g$2).off,onPointerMove:g$2=>p$5.on(g$2).off,onPointerUp:g$2=>h$3.on(g$2).off,onPointerDown:g$2=>P$1.on(g$2).off,onPointerMissed:g$2=>C$3.on(g$2).off,onWheel:g$2=>E$2.on(g$2).off,forceUpdate:w$1}};function ye(e$3,t){if(Array.isArray(e$3))for(let r$2 of e$3)r$2(t);typeof e$3==`function`&&e$3(t)}function Tn(e$3,t,r$2){var x$3;let n$2=shallowRef(),o$1=shallowRef();e$3&&(n$2.value=e$3),t&&(o$1.value=t);let l$1=m$2=>{var w$1;return(w$1=m$2.__tres)?.eventCount>0},s$1=m$2=>{var w$1;return(w$1=m$2.children)?.some(k$4=>s$1(k$4))||l$1(m$2)},a$2=shallowRef(((x$3=n$2.value)?.children).filter(s$1)||[]);function c$4(m$2,w$1){let k$4=[],L$1=()=>w$1.stopPropagating=!0;w$1.stopPropagation=L$1;for(let R$1 of w$1?.intersections){if(w$1.stopPropagating)return;w$1={...w$1,...R$1};let{object:B$2}=R$1;w$1.eventObject=B$2,ye(B$2[m$2],w$1),k$4.push(B$2);let O$2=B$2.parent;for(;O$2!==null&&!w$1.stopPropagating&&!k$4.includes(O$2);)w$1.eventObject=O$2,ye(O$2[m$2],w$1),k$4.push(O$2),O$2=O$2.parent;let G$1=Xr(m$2.slice(2));r$2(G$1,{intersection:R$1,event:w$1})}}let{onClick:i$1,onDblClick:f$3,onContextMenu:v$1,onPointerMove:u$1,onPointerDown:_$2,onPointerUp:d$2,onPointerMissed:y$2,onWheel:p$5,forceUpdate:h$3}=En(a$2,t);d$2(m$2=>c$4(`onPointerUp`,m$2)),_$2(m$2=>c$4(`onPointerDown`,m$2)),i$1(m$2=>c$4(`onClick`,m$2)),f$3(m$2=>c$4(`onDoubleClick`,m$2)),v$1(m$2=>c$4(`onContextMenu`,m$2)),p$5(m$2=>c$4(`onWheel`,m$2));let P$1=[];u$1(m$2=>{let w$1=m$2.intersections.map(({object:L$1})=>L$1),k$4=m$2.intersections;P$1.forEach(({object:L$1})=>{w$1.includes(L$1)||(m$2.intersections=P$1,c$4(`onPointerLeave`,m$2),c$4(`onPointerOut`,m$2))}),m$2.intersections=k$4,m$2.intersections.forEach(({object:L$1})=>{P$1.includes(L$1)||(c$4(`onPointerEnter`,m$2),c$4(`onPointerOver`,m$2))}),c$4(`onPointerMove`,m$2),P$1=m$2.intersections});let C$3=[];y$2(m$2=>{let w$1=()=>m$2.stopPropagating=!0;m$2.stopPropagation=w$1,C$3.forEach(k$4=>{m$2.stopPropagating||(m$2.eventObject=k$4,ye(k$4.onPointerMissed,m$2))}),r$2(`pointer-missed`,{event:m$2})});function b$3(m$2){ne(m$2)&&N(m$2)&&a$2.value.push(m$2)}function E$2(m$2){if(ne(m$2)&&N(m$2)){let w$1=a$2.value.indexOf(m$2);w$1>-1&&a$2.value.splice(w$1,1)}}function S$2(m$2){ne(m$2)&&N(m$2)&&m$2.onPointerMissed&&C$3.push(m$2)}function M$1(m$2){if(ne(m$2)&&N(m$2)){let w$1=C$3.indexOf(m$2);w$1>-1&&C$3.splice(w$1,1)}}return t.eventManager={forceUpdate:h$3,registerObject:b$3,deregisterObject:E$2,registerPointerMissedObject:S$2,deregisterPointerMissedObject:M$1},{forceUpdate:h$3,registerObject:b$3,deregisterObject:E$2,registerPointerMissedObject:S$2,deregisterPointerMissedObject:M$1}}function Sn(e$3,t,r$2=100){r$2=r$2<=0?100:r$2;let n$2=createEventHook$1(),o$1=new Set,l$1=!1,s$1=!1,a$2=null;function c$4(){a$2&&clearTimeout(a$2),!s$1&&!l$1&&e$3()?(n$2.trigger(t),o$1.forEach(u$1=>u$1()),o$1.clear(),l$1=!0):!s$1&&!l$1&&(a$2=setTimeout(c$4,r$2))}function i$1(){s$1=!0,a$2&&clearTimeout(a$2)}c$4();let f$3=(u$1,..._$2)=>{u$1(..._$2)};return{on:u$1=>{if(l$1)return f$3(u$1,t),{off:()=>{}};{let _$2=n$2.on(u$1);return o$1.add(_$2.off),n$2.on(u$1)}},off:n$2.off,trigger:n$2.trigger,clear:n$2.clear,cancel:i$1}}const ee$2=new WeakMap;function bt$2(e$3){if(e$3||=pe$1(),ee$2.has(e$3))return ee$2.get(e$3);let t=100,r$2=Date.now(),l$1=Sn(()=>{if(Date.now()-r$2>=t)return!0;{let s$1=e$3.renderer.value,a$2=s$1?.domElement||{width:0,height:0};return!!(s$1&&a$2.width>0&&a$2.height>0)}},e$3);return ee$2.set(e$3,l$1),l$1}function An({scene:e$3,canvas:t,windowSize:r$2,rendererOptions:n$2,emit:o$1}){let l$1=shallowRef(e$3),s$1=Cn(r$2,t),{camera:a$2,cameras:c$4,registerCamera:i$1,deregisterCamera:f$3,setCameraActive:v$1}=mn({sizes:s$1}),u$1={mode:ref(n$2.renderMode||`always`),priority:ref(0),frames:ref(0),maxFrames:60,canBeInvalidated:computed(()=>u$1.mode.value===`on-demand`&&u$1.frames.value===0)};function _$2(R$1=1){n$2.renderMode===`on-demand`&&(u$1.frames.value=Math.min(u$1.maxFrames,u$1.frames.value+R$1))}function d$2(){n$2.renderMode===`manual`&&(u$1.frames.value=1)}let{renderer:y$2}=Pn({canvas:t,options:n$2,contextParts:{sizes:s$1,render:u$1,invalidate:_$2,advance:d$2}}),p$5={sizes:s$1,scene:l$1,camera:a$2,cameras:readonly(c$4),renderer:y$2,raycaster:shallowRef(new Raycaster),controls:ref(null),perf:{maxFrames:160,fps:{value:0,accumulator:[]},memory:{currentMem:0,allocatedMem:0,accumulator:[]}},render:u$1,advance:d$2,extend:Ee$1,invalidate:_$2,registerCamera:i$1,setCameraActive:v$1,deregisterCamera:f$3,loop:_n()};provide(`useTres`,p$5),p$5.scene.value.__tres={root:p$5},p$5.loop.register(()=>{a$2.value&&u$1.frames.value>0&&(y$2.value.render(e$3,a$2.value),o$1(`render`,p$5.renderer.value)),u$1.priority.value=0,u$1.mode.value===`always`?u$1.frames.value=1:u$1.frames.value=Math.max(0,u$1.frames.value-1)},`render`);let{on:h$3,cancel:P$1}=bt$2(p$5);p$5.loop.setReady(!1),p$5.loop.start(),h$3(()=>{o$1(`ready`,p$5),p$5.loop.setReady(!0),Tn(e$3,p$5,o$1)}),onUnmounted(()=>{P$1(),p$5.loop.stop()});let C$3=100,b$3=useFps({every:C$3}),{isSupported:E$2,memory:S$2}=useMemory({interval:C$3}),M$1=160,x$3=performance.now(),m$2=({timestamp:R$1})=>{p$5.scene.value&&(p$5.perf.memory.allocatedMem=Le(p$5.scene.value)),R$1-x$3>=C$3&&(x$3=R$1,p$5.perf.fps.accumulator.push(b$3.value),p$5.perf.fps.accumulator.length>M$1&&p$5.perf.fps.accumulator.shift(),p$5.perf.fps.value=b$3.value,E$2.value&&S$2.value&&(p$5.perf.memory.accumulator.push(S$2.value.usedJSHeapSize/1024/1024),p$5.perf.memory.accumulator.length>M$1&&p$5.perf.memory.accumulator.shift(),p$5.perf.memory.currentMem=p$5.perf.memory.accumulator.reduce((B$2,O$2)=>B$2+O$2,0)/p$5.perf.memory.accumulator.length))},w$1=0,k$4=1,{pause:L$1}=useRafFn(({delta:R$1})=>{window.__TRES__DEVTOOLS__&&(m$2({timestamp:performance.now()}),w$1+=R$1,w$1>=k$4&&(window.__TRES__DEVTOOLS__.cb(p$5),w$1=0))},{immediate:!0});return onUnmounted(()=>{L$1()}),p$5}function pe$1(){let e$3=inject(`useTres`);if(!e$3)throw Error(`useTresContext must be used together with useTresContextProvider`);return e$3}const so=pe$1;function io(){let{camera:e$3,scene:t,renderer:r$2,loop:n$2,raycaster:o$1,controls:l$1,invalidate:s$1,advance:a$2}=pe$1();n$2.setContext({camera:e$3,scene:t,renderer:r$2,raycaster:o$1,controls:l$1,invalidate:s$1,advance:a$2});function c$4(v$1,u$1=0){return n$2.register(v$1,`before`,u$1)}function i$1(v$1){return n$2.register(v$1,`render`)}function f$3(v$1,u$1=0){return n$2.register(v$1,`after`,u$1)}return{pause:n$2.pause,resume:n$2.resume,pauseRender:n$2.pauseRender,resumeRender:n$2.resumeRender,isActive:n$2.isActive,onBeforeRender:c$4,render:i$1,onAfterRender:f$3}}const Mt$1=createEventHook$1(),Pt$2=createEventHook$1(),Re=createEventHook$1(),te$1=new Clock;let le$1=0,ce$1=0;const{pause:xn,resume:Xe,isActive:kn}=useRafFn(()=>{Mt$1.trigger({delta:le$1,elapsed:ce$1,clock:te$1}),Pt$2.trigger({delta:le$1,elapsed:ce$1,clock:te$1}),Re.trigger({delta:le$1,elapsed:ce$1,clock:te$1})},{immediate:!1});Re.on(()=>{le$1=te$1.getDelta(),ce$1=te$1.getElapsedTime()});function Ln(e$3,t={},r$2={}){let n$2=e$3,o$1=a$2=>{n$2=a$2},l$1=new Proxy({},{}),s$1={has(a$2,c$4){return c$4 in t||c$4 in n$2},get(a$2,c$4,i$1){return c$4 in t?t[c$4](n$2):n$2[c$4]},set(a$2,c$4,i$1){return r$2[c$4]?r$2[c$4](i$1,n$2,l$1,o$1):n$2[c$4]=i$1,!0}};return l$1=new Proxy({},s$1),l$1}const{logError:et$1}=Q$2(),tt$1=[`onClick`,`onContextMenu`,`onPointerMove`,`onPointerEnter`,`onPointerLeave`,`onPointerOver`,`onPointerOut`,`onDoubleClick`,`onPointerDown`,`onPointerUp`,`onPointerCancel`,`onPointerMissed`,`onLostPointerCapture`,`onWheel`],Rn=e$3=>{let t=e$3.scene.value;function r$2(i$1,f$3,v$1,u$1){if(u$1||={},u$1.args||=[],i$1===`template`||Jr(i$1))return null;let _$2=i$1.replace(`Tres`,``),d$2;if(i$1===`primitive`){(!j(u$1.object)||isRef(u$1.object))&&et$1(`Tres primitives need an 'object' prop, whose value is an object or shallowRef`),_$2=u$1.object.type;let y$2={};d$2=Ln(u$1.object,{object:h$3=>h$3,isPrimitive:()=>!0,__tres:()=>y$2},{object:(h$3,P$1,C$3,b$3)=>{pn(h$3,C$3,b$3,{patchProp:l$1,remove:o$1,insert:n$2},e$3)},__tres:h$3=>{Object.assign(y$2,h$3)}})}else{let y$2=Ce$2.value[_$2];y$2||et$1(`${_$2} is not defined on the THREE namespace. Use extend to add it to the catalog.`),d$2=new y$2(...u$1.args)}return d$2?(d$2.isCamera&&(u$1!=null&&u$1.position||d$2.position.set(3,3,3),u$1!=null&&u$1.lookAt||d$2.lookAt(0,0,0)),d$2=z$1(d$2,{...d$2.__tres,type:_$2,memoizedProps:u$1,eventCount:0,primitive:i$1===`primitive`,attach:u$1.attach},e$3),d$2):null}function n$2(i$1,f$3){var _$2,d$2,y$2;if(!i$1)return;f$3||=t;let v$1=i$1.__tres?i$1:z$1(i$1,{},e$3),u$1=f$3.__tres?f$3:z$1(f$3,{},e$3);i$1=J(v$1),f$3=J(u$1),i$1.__tres&&(_$2=i$1.__tres)?.eventCount>0&&((d$2=e$3.eventManager)==null||d$2.registerObject(i$1)),e$3.registerCamera(i$1),(y$2=e$3.eventManager)==null||y$2.registerPointerMissedObject(i$1),v$1.__tres.attach?cn$1(u$1,v$1,v$1.__tres.attach):N(i$1)&&N(u$1)&&(u$1.add(i$1),i$1.dispatchEvent({type:`added`})),v$1.__tres.parent=u$1,u$1.__tres.objects&&!u$1.__tres.objects.includes(v$1)&&u$1.__tres.objects.push(v$1)}function o$1(i$1,f$3){var d$2,y$2,p$5,h$3;if(!i$1)return;i$1!=null&&i$1.__tres&&(d$2=i$1.__tres)?.eventCount>0&&((y$2=e$3.eventManager)==null||y$2.deregisterObject(i$1)),f$3=be$1(f$3)?`default`:f$3;let v$1=(p$5=i$1.__tres)?.dispose;be$1(v$1)||(f$3=v$1===null?!1:v$1);let u$1=(h$3=i$1.__tres)?.primitive,_$2=f$3===`default`?!u$1:!!f$3;if(i$1.__tres&&`objects`in i$1.__tres&&[...i$1.__tres.objects].forEach(P$1=>o$1(P$1,f$3)),_$2&&i$1.children&&[...i$1.children].forEach(P$1=>o$1(P$1,f$3)),_t$2(i$1,e$3),wt$2(i$1,e$3),_$2&&!Yr(i$1)){if(Y$1(f$3))f$3(i$1);else if(Y$1(i$1.dispose))try{i$1.dispose()}catch{}}`__tres`in i$1&&delete i$1.__tres}function l$1(i$1,f$3,v$1,u$1){var P$1,C$3;if(!i$1)return;let _$2=i$1,d$2=f$3;if(i$1.__tres&&(i$1.__tres.memoizedProps[f$3]=u$1),f$3===`attach`){let b$3=(P$1=i$1.__tres)?.parent||i$1.parent;o$1(i$1),z$1(i$1,{attach:u$1},e$3),b$3&&n$2(i$1,b$3);return}if(f$3===`dispose`){i$1.__tres||(i$1=z$1(i$1,{},e$3)),i$1.__tres.dispose=u$1;return}if(N(i$1)&&d$2===`blocks-pointer-events`){u$1||u$1===``?i$1[d$2]=u$1:delete i$1[d$2];return}tt$1.includes(f$3)&&i$1.__tres&&(i$1.__tres.eventCount+=1);let y$2=he$1(d$2),p$5=_$2?.[y$2];if(d$2===`args`){let b$3=i$1,E$2=v$1??[],S$2=u$1??[],M$1=(C$3=i$1.__tres)?.type||i$1.type;M$1&&E$2.length&&!tn(E$2,S$2)&&(_$2=Object.assign(b$3,new Ce$2.value[M$1](...u$1)));return}if(_$2.type===`BufferGeometry`){if(d$2===`args`)return;_$2.setAttribute(he$1(d$2),new BufferAttribute(...u$1));return}if(d$2.includes(`-`)&&p$5===void 0){p$5=_$2;for(let b$3 of d$2.split(`-`))y$2=d$2=he$1(b$3),_$2=p$5,p$5=p$5?.[d$2]}let h$3=u$1;if(h$3===``&&(h$3=!0),Y$1(p$5)){tt$1.includes(f$3)||(ke(h$3)?i$1[y$2](...h$3):i$1[y$2](h$3)),y$2.startsWith(`on`)&&Y$1(h$3)&&(_$2[y$2]=h$3);return}Ge(p$5)&&Ge(h$3)?p$5.mask=h$3.mask:mt$2(p$5)&&Ur(h$3)?p$5.set(h$3):Fr(p$5)&&Wr(h$3)&&p$5.constructor===h$3.constructor?p$5.copy(h$3):Me$1(p$5)&&Array.isArray(h$3)?`fromArray`in p$5&&typeof p$5.fromArray==`function`?p$5.fromArray(h$3):p$5.set(...h$3):Me$1(p$5)&&typeof h$3==`number`?`setScalar`in p$5&&typeof p$5.setScalar==`function`?p$5.setScalar(h$3):p$5.set(h$3):_$2[y$2]=h$3,yt$2(i$1)}function s$1(i$1){var f$3;return(f$3=i$1?.__tres)?.parent||null}function a$2(i$1){let f$3=z$1(new Object3D,{type:`Comment`},e$3);return f$3.name=i$1,f$3}function c$4(i$1){var _$2;let f$3=s$1(i$1),v$1=(_$2=f$3?.__tres)?.objects||[],u$1=v$1.indexOf(i$1);return u$1<0||u$1>=v$1.length-1?null:v$1[u$1+1]}return{insert:n$2,remove:o$1,createElement:r$2,patchProp:l$1,parentNode:s$1,createText:()=>void 0,createComment:a$2,setText:()=>void 0,setElementText:()=>void 0,nextSibling:c$4,querySelector:()=>void 0,setScopeId:()=>void 0,cloneNode:()=>void 0,insertStaticContent:()=>void 0}};function On(){return Ct$1().__VUE_DEVTOOLS_GLOBAL_HOOK__}function Ct$1(){return typeof navigator<`u`&&typeof window<`u`?window:typeof globalThis<`u`?globalThis:{}}const Dn=typeof Proxy==`function`,jn=`devtools-plugin:setup`,Bn=`plugin:settings:set`;let V,Te$2;function In(){var e$3;return V!==void 0||(typeof window<`u`&&window.performance?(V=!0,Te$2=window.performance):typeof globalThis<`u`&&(e$3=globalThis.perf_hooks)!=null&&e$3.performance?(V=!0,Te$2=globalThis.perf_hooks.performance):V=!1),V}function $n(){return In()?Te$2.now():Date.now()}var Hn=class{constructor(t,r$2){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=r$2;let n$2={};if(t.settings)for(let s$1 in t.settings){let a$2=t.settings[s$1];n$2[s$1]=a$2.defaultValue}let o$1=`__vue-devtools-plugin-settings__${t.id}`,l$1=Object.assign({},n$2);try{let s$1=localStorage.getItem(o$1),a$2=JSON.parse(s$1);Object.assign(l$1,a$2)}catch{}this.fallbacks={getSettings(){return l$1},setSettings(s$1){try{localStorage.setItem(o$1,JSON.stringify(s$1))}catch{}l$1=s$1},now(){return $n()}},r$2&&r$2.on(Bn,(s$1,a$2)=>{s$1===this.plugin.id&&this.fallbacks.setSettings(a$2)}),this.proxiedOn=new Proxy({},{get:(s$1,a$2)=>this.target?this.target.on[a$2]:(...c$4)=>{this.onQueue.push({method:a$2,args:c$4})}}),this.proxiedTarget=new Proxy({},{get:(s$1,a$2)=>this.target?this.target[a$2]:a$2===`on`?this.proxiedOn:Object.keys(this.fallbacks).includes(a$2)?(...c$4)=>(this.targetQueue.push({method:a$2,args:c$4,resolve:()=>{}}),this.fallbacks[a$2](...c$4)):(...c$4)=>new Promise(i$1=>{this.targetQueue.push({method:a$2,args:c$4,resolve:i$1})})})}async setRealTarget(t){this.target=t;for(let r$2 of this.onQueue)this.target.on[r$2.method](...r$2.args);for(let r$2 of this.targetQueue)r$2.resolve(await this.target[r$2.method](...r$2.args))}};function Un(e$3,t){let r$2=e$3,n$2=Ct$1(),o$1=On(),l$1=Dn&&r$2.enableEarlyProxy;if(o$1&&(n$2.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__||!l$1))o$1.emit(jn,e$3,t);else{let s$1=l$1?new Hn(r$2,o$1):null;(n$2.__VUE_DEVTOOLS_PLUGINS__=n$2.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:r$2,setupFn:t,proxy:s$1}),s$1&&t(s$1.proxiedTarget)}}function Fn(e$3,t){let r$2=`▲ ■ ●${e$3}`;typeof rt$2==`function`?rt$2(r$2,t):console.log(r$2)}function rt$2(e$3,t){throw Error(e$3+t)}const Et$1=e$3=>{let t={id:e$3.uuid,label:e$3.type,children:[],tags:[]};e$3.name!==``&&t.tags.push({label:e$3.name,textColor:5750629,backgroundColor:15793395});let r$2=Le(e$3);return r$2>0&&t.tags.push({label:`${wn(r$2)} KB`,textColor:15707189,backgroundColor:16775644,tooltip:`Memory usage`}),e$3.type.includes(`Light`)&&(Gr(e$3)&&t.tags.push({label:`${e$3.intensity}`,textColor:9738662,backgroundColor:16316922,tooltip:`Intensity`}),t.tags.push({label:`#${new Color(e$3.color).getHexString()}`,textColor:9738662,backgroundColor:16316922,tooltip:`Color`})),e$3.type.includes(`Camera`)&&(t.tags.push({label:`${e$3.fov}°`,textColor:9738662,backgroundColor:16316922,tooltip:`Field of view`}),t.tags.push({label:`x: ${Math.round(e$3.position.x)} y: ${Math.round(e$3.position.y)} z: ${Math.round(e$3.position.z)}`,textColor:9738662,backgroundColor:16316922,tooltip:`Position`})),t};function Tt$2(e$3,t,r$2=``){e$3.children.forEach(n$2=>{if(n$2.type===`HightlightMesh`||r$2&&!n$2.type.includes(r$2)&&!n$2.name.includes(r$2))return;let o$1=Et$1(n$2);t.children.push(o$1),Tt$2(n$2,o$1,r$2)})}const Wn=[],X$1=`tres:inspector`,Nn=reactive({sceneGraph:null});function zn(e$3,t){Un({id:`dev.esm.tres`,label:`TresJS 🪐`,logo:`https://raw.githubusercontent.com/Tresjs/tres/main/public/favicon.svg`,packageName:`tresjs`,homepage:`https://tresjs.org`,componentStateTypes:Wn,app:e$3},r$2=>{typeof r$2.now!=`function`&&Fn(`You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html.`),r$2.addInspector({id:X$1,label:`TresJS 🪐`,icon:`account_tree`,treeFilterPlaceholder:`Search instances`}),setInterval(()=>{r$2.sendInspectorTree(X$1)},1e3),setInterval(()=>{r$2.notifyComponentUpdate()},5e3),r$2.on.getInspectorTree(l$1=>{if(l$1.inspectorId===X$1){let s$1=Et$1(t.scene.value);Tt$2(t.scene.value,s$1,l$1.filter),Nn.sceneGraph=s$1,l$1.rootNodes=[s$1]}});let n$2=null,o$1=null;r$2.on.getInspectorState(l$1=>{var s$1;if(l$1.inspectorId===X$1){let[a$2]=t.scene.value.getObjectsByProperty(`uuid`,l$1.nodeId);if(!a$2)return;if(o$1&&n$2&&n$2.parent&&o$1.remove(n$2),a$2.isMesh){let c$4=on(a$2);a$2.add(c$4),n$2=c$4,o$1=a$2}l$1.state={object:Object.entries(a$2).map(([c$4,i$1])=>c$4===`children`?{key:c$4,value:i$1.filter(f$3=>f$3.type!==`HightlightMesh`)}:{key:c$4,value:i$1,editable:!0}).filter(({key:c$4})=>c$4!==`parent`)},a$2.isScene&&(l$1.state={...l$1.state,state:[{key:`Scene Info`,value:{objects:a$2.children.length,memory:Le(a$2),calls:t.renderer.value.info.render.calls,triangles:t.renderer.value.info.render.triangles,points:t.renderer.value.info.render.points,lines:t.renderer.value.info.render.lines}},{key:`Programs`,value:(s$1=t.renderer.value.info.programs)?.map(c$4=>({...c$4,programName:c$4.name}))||[]}]})}}),r$2.on.editInspectorState(l$1=>{l$1.inspectorId===X$1&&nn(t.scene.value,l$1.nodeId,l$1.path,l$1.state.value)})})}const Gn=[`data-scene`,`data-tres`],Vn=defineComponent({__name:`TresCanvas`,props:{shadows:{type:Boolean,default:void 0},clearColor:{},toneMapping:{},shadowMapType:{},useLegacyLights:{type:Boolean,default:void 0},outputColorSpace:{},toneMappingExposure:{},renderMode:{default:`always`},dpr:{},camera:{},preset:{},windowSize:{type:Boolean,default:void 0},enableProvideBridge:{type:Boolean,default:!0},context:{},alpha:{type:Boolean,default:void 0},premultipliedAlpha:{type:Boolean},antialias:{type:Boolean,default:void 0},stencil:{type:Boolean,default:void 0},preserveDrawingBuffer:{type:Boolean,default:void 0},powerPreference:{},depth:{type:Boolean,default:void 0},failIfMajorPerformanceCaveat:{type:Boolean,default:void 0},precision:{},logarithmicDepthBuffer:{type:Boolean,default:void 0},reverseDepthBuffer:{type:Boolean}},emits:[`render`,`click`,`double-click`,`context-menu`,`pointer-move`,`pointer-up`,`pointer-down`,`pointer-enter`,`pointer-leave`,`pointer-over`,`pointer-out`,`pointer-missed`,`wheel`,`ready`],setup(e$3,{expose:t,emit:r$2}){let n$2=e$3,o$1=r$2,l$1=useSlots(),s$1=ref(),a$2=shallowRef(new Scene),c$4=getCurrentInstance();Ee$1(three_module_exports);let i$1=(d$2,y$2=!1)=>defineComponent({setup(){var C$3;let p$5=(C$3=getCurrentInstance())?.appContext;p$5&&(p$5.app=c$4?.appContext.app);let h$3={};function P$1(b$3){b$3&&(b$3.parent&&P$1(b$3.parent),b$3.provides&&Object.assign(h$3,b$3.provides))}return c$4!=null&&c$4.parent&&n$2.enableProvideBridge&&(P$1(c$4.parent),Reflect.ownKeys(h$3).forEach(b$3=>{provide(b$3,h$3[b$3])})),provide(`useTres`,d$2),provide(`extend`,Ee$1),typeof window<`u`&&zn(p$5?.app,d$2),()=>h(Fragment,null,y$2?[]:l$1.default())}}),f$3=(d$2,y$2=!1)=>{let p$5=i$1(d$2,y$2),{render:h$3}=createRenderer(Rn(d$2));h$3(h(p$5),a$2.value)},v$1=(d$2,y$2=!1)=>{vt$2(d$2.scene.value),y$2&&(d$2.renderer.value.dispose(),d$2.renderer.value.renderLists.dispose(),d$2.renderer.value.forceContextLoss()),a$2.value.__tres={root:d$2}},u$1=shallowRef(null);t({context:u$1,dispose:()=>v$1(u$1.value,!0)});let _$2=()=>{v$1(u$1.value),f$3(u$1.value,!0)};return onMounted(()=>{let d$2=s$1;u$1.value=An({scene:a$2.value,canvas:d$2,windowSize:n$2.windowSize??!1,rendererOptions:n$2,emit:o$1});let{registerCamera:y$2,camera:p$5,cameras:h$3,deregisterCamera:P$1}=u$1.value;f$3(u$1.value);let C$3=()=>{let b$3=new PerspectiveCamera(45,window.innerWidth/window.innerHeight,.1,1e3);b$3.position.set(3,3,3),b$3.lookAt(0,0,0),y$2(b$3);let E$2=watchEffect(()=>{h$3.value.length>=2&&(b$3.removeFromParent(),P$1(b$3),E$2?.())})};watch(()=>n$2.camera,(b$3,E$2)=>{b$3&&y$2(b$3),E$2&&(E$2.removeFromParent(),P$1(E$2))},{immediate:!0}),p$5.value||C$3()}),onUnmounted(_$2),(d$2,y$2)=>(openBlock(),createElementBlock(`canvas`,{ref_key:`canvas`,ref:s$1,"data-scene":a$2.value.uuid,class:normalizeClass(d$2.$attrs.class),"data-tres":`tresjs ${unref(jr).version}`,style:normalizeStyle({display:`block`,width:`100%`,height:`100%`,position:d$2.windowSize?`fixed`:`relative`,top:0,left:0,pointerEvents:`auto`,touchAction:`none`,...d$2.$attrs.style})},null,14,Gn))}}),Yn=[`TresCanvas`,`TresLeches`,`TresScene`],co={template:{compilerOptions:{isCustomElement:e$3=>e$3.startsWith(`Tres`)&&!Yn.includes(e$3)||e$3===`primitive`}}},{logWarning:qn}=Q$2();var St$2=class extends Line{constructor(t,r$2){let n$2=[1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],o$1=new BufferGeometry;o$1.setAttribute(`position`,new Float32BufferAttribute(n$2,3)),o$1.computeBoundingSphere();let l$1=new LineBasicMaterial({fog:!1});super(o$1,l$1),this.light=t,this.color=r$2,this.type=`RectAreaLightHelper`;let s$1=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],a$2=new BufferGeometry;a$2.setAttribute(`position`,new Float32BufferAttribute(s$1,3)),a$2.computeBoundingSphere(),this.add(new Mesh(a$2,new MeshBasicMaterial({side:BackSide,fog:!1})))}updateMatrixWorld(){if(this.scale.set(.5*this.light.width,.5*this.light.height,1),this.color!==void 0)this.material.color.set(this.color),this.children[0].material.color.set(this.color);else{this.material.color.copy(this.light.color).multiplyScalar(this.light.intensity);let t=this.material.color,r$2=Math.max(t.r,t.g,t.b);r$2>1&&t.multiplyScalar(1/r$2),this.children[0].material.color.copy(this.material.color)}this.matrixWorld.extractRotation(this.light.matrixWorld).scale(this.scale).copyPosition(this.light.matrixWorld),this.children[0].matrixWorld.copy(this.matrixWorld)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}};const{logWarning:nt$1}=Q$2();let se,F$1;const Kn={DirectionalLight:DirectionalLightHelper,PointLight:PointLightHelper,SpotLight:SpotLightHelper,HemisphereLight:HemisphereLightHelper,RectAreaLight:St$2},fo={mounted:e$3=>{if(!e$3.isLight){nt$1(`${e$3.type} is not a light`);return}se=Kn[e$3.type],e$3.parent.add(new se(e$3,1,e$3.color.getHex()))},updated:e$3=>{F$1=e$3.parent.children.find(t=>t instanceof se),!(F$1 instanceof St$2)&&F$1.update()},unmounted:e$3=>{if(!e$3.isLight){nt$1(`${e$3.type} is not a light`);return}F$1=e$3.parent.children.find(t=>t instanceof se),F$1&&F$1.dispose&&F$1.dispose(),e$3.parent&&e$3.parent.remove(F$1)}},po={mounted:(e$3,t)=>{if(t.arg){console.log(`v-log:${t.arg}`,e$3[t.arg]);return}console.log(`v-log`,e$3)}},mo={install(e$3){e$3.component(`TresCanvas`,Vn)}};var require_nprogress=__commonJSMin((exports,module)=>{(function(root$3,factory){typeof define==`function`&&define.amd?define(factory):typeof exports==`object`?module.exports=factory():root$3.NProgress=factory()})(exports,function(){var NProgress$1={};NProgress$1.version=`0.2.0`;var Settings=NProgress$1.settings={minimum:.08,easing:`ease`,positionUsing:``,speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:`[role="bar"]`,spinnerSelector:`[role="spinner"]`,parent:`body`,template:`
`};NProgress$1.configure=function(options$1){var key$1,value$1;for(key$1 in options$1)value$1=options$1[key$1],value$1!==void 0&&options$1.hasOwnProperty(key$1)&&(Settings[key$1]=value$1);return this},NProgress$1.status=null,NProgress$1.set=function(n$2){var started=NProgress$1.isStarted();n$2=clamp$7(n$2,Settings.minimum,1),NProgress$1.status=n$2===1?null:n$2;var progress$1=NProgress$1.render(!started),bar=progress$1.querySelector(Settings.barSelector),speed=Settings.speed,ease=Settings.easing;return progress$1.offsetWidth,queue$1(function(next){Settings.positionUsing===``&&(Settings.positionUsing=NProgress$1.getPositioningCSS()),css(bar,barPositionCSS(n$2,speed,ease)),n$2===1?(css(progress$1,{transition:`none`,opacity:1}),progress$1.offsetWidth,setTimeout(function(){css(progress$1,{transition:`all `+speed+`ms linear`,opacity:0}),setTimeout(function(){NProgress$1.remove(),next()},speed)},speed)):setTimeout(next,speed)}),this},NProgress$1.isStarted=function(){return typeof NProgress$1.status==`number`},NProgress$1.start=function(){NProgress$1.status||NProgress$1.set(0);var work=function(){setTimeout(function(){NProgress$1.status&&(NProgress$1.trickle(),work())},Settings.trickleSpeed)};return Settings.trickle&&work(),this},NProgress$1.done=function(force){return!force&&!NProgress$1.status?this:NProgress$1.inc(.3+.5*Math.random()).set(1)},NProgress$1.inc=function(amount){var n$2=NProgress$1.status;return n$2?(typeof amount!=`number`&&(amount=(1-n$2)*clamp$7(Math.random()*n$2,.1,.95)),n$2=clamp$7(n$2+amount,0,.994),NProgress$1.set(n$2)):NProgress$1.start()},NProgress$1.trickle=function(){return NProgress$1.inc(Math.random()*Settings.trickleRate)},function(){var initial=0,current=0;NProgress$1.promise=function($promise){return!$promise||$promise.state()===`resolved`?this:(current===0&&NProgress$1.start(),initial++,current++,$promise.always(function(){current--,current===0?(initial=0,NProgress$1.done()):NProgress$1.set((initial-current)/initial)}),this)}}(),NProgress$1.render=function(fromStart){if(NProgress$1.isRendered())return document.getElementById(`nprogress`);addClass(document.documentElement,`nprogress-busy`);var progress$1=document.createElement(`div`);progress$1.id=`nprogress`,progress$1.innerHTML=Settings.template;var bar=progress$1.querySelector(Settings.barSelector),perc=fromStart?`-100`:toBarPerc(NProgress$1.status||0),parent=document.querySelector(Settings.parent),spinner;return css(bar,{transition:`all 0 linear`,transform:`translate3d(`+perc+`%,0,0)`}),Settings.showSpinner||(spinner=progress$1.querySelector(Settings.spinnerSelector),spinner&&removeElement(spinner)),parent!=document.body&&addClass(parent,`nprogress-custom-parent`),parent.appendChild(progress$1),progress$1},NProgress$1.remove=function(){removeClass(document.documentElement,`nprogress-busy`),removeClass(document.querySelector(Settings.parent),`nprogress-custom-parent`);var progress$1=document.getElementById(`nprogress`);progress$1&&removeElement(progress$1)},NProgress$1.isRendered=function(){return!!document.getElementById(`nprogress`)},NProgress$1.getPositioningCSS=function(){var bodyStyle=document.body.style,vendorPrefix=`WebkitTransform`in bodyStyle?`Webkit`:`MozTransform`in bodyStyle?`Moz`:`msTransform`in bodyStyle?`ms`:`OTransform`in bodyStyle?`O`:``;return vendorPrefix+`Perspective`in bodyStyle?`translate3d`:vendorPrefix+`Transform`in bodyStyle?`translate`:`margin`};function clamp$7(n$2,min$1,max$1){return n$2max$1?max$1:n$2}function toBarPerc(n$2){return(-1+n$2)*100}function barPositionCSS(n$2,speed,ease){var barCSS;return barCSS=Settings.positionUsing===`translate3d`?{transform:`translate3d(`+toBarPerc(n$2)+`%,0,0)`}:Settings.positionUsing===`translate`?{transform:`translate(`+toBarPerc(n$2)+`%,0)`}:{"margin-left":toBarPerc(n$2)+`%`},barCSS.transition=`all `+speed+`ms `+ease,barCSS}var queue$1=function(){var pending=[];function next(){var fn$5=pending.shift();fn$5&&fn$5(next)}return function(fn$5){pending.push(fn$5),pending.length==1&&next()}}(),css=function(){var cssPrefixes=[`Webkit`,`O`,`Moz`,`ms`],cssProps={};function camelCase(string$2){return string$2.replace(/^-ms-/,`ms-`).replace(/-([\da-z])/gi,function(match,letter){return letter.toUpperCase()})}function getVendorProp(name$2){var style=document.body.style;if(name$2 in style)return name$2;for(var i$1=cssPrefixes.length,capName=name$2.charAt(0).toUpperCase()+name$2.slice(1),vendorName;i$1--;)if(vendorName=cssPrefixes[i$1]+capName,vendorName in style)return vendorName;return name$2}function getStyleProp(name$2){return name$2=camelCase(name$2),cssProps[name$2]||(cssProps[name$2]=getVendorProp(name$2))}function applyCss(element$3,prop,value$1){prop=getStyleProp(prop),element$3.style[prop]=value$1}return function(element$3,properties){var args=arguments,prop,value$1;if(args.length==2)for(prop in properties)value$1=properties[prop],value$1!==void 0&&properties.hasOwnProperty(prop)&&applyCss(element$3,prop,value$1);else applyCss(element$3,args[1],args[2])}}();function hasClass(element$3,name$2){var list$2=typeof element$3==`string`?element$3:classList(element$3);return list$2.indexOf(` `+name$2+` `)>=0}function addClass(element$3,name$2){var oldList=classList(element$3),newList=oldList+name$2;hasClass(oldList,name$2)||(element$3.className=newList.substring(1))}function removeClass(element$3,name$2){var oldList=classList(element$3),newList;hasClass(element$3,name$2)&&(newList=oldList.replace(` `+name$2+` `,` `),element$3.className=newList.substring(1,newList.length-1))}function classList(element$3){return(` `+(element$3.className||``)+` `).replace(/\s+/gi,` `)}function removeElement(element$3){element$3&&element$3.parentNode&&element$3.parentNode.removeChild(element$3)}return NProgress$1})});const parents=new Set,coords=new WeakMap,siblings$1=new WeakMap,animations=new WeakMap,intersections=new WeakMap,intervals=new WeakMap,options=new WeakMap,debounces=new WeakMap,enabled=new WeakSet;let root$2,scrollX=0,scrollY=0;const TGT=`__aa_tgt`,DEL=`__aa_del`,NEW=`__aa_new`,handleMutations=mutations$1=>{let elements=getElements(mutations$1);elements&&elements.forEach(el=>animate$1(el))},handleResizes=entries=>{entries.forEach(entry=>{entry.target===root$2&&updateAllPos(),coords.has(entry.target)&&updatePos(entry.target)})};function observePosition(el){let oldObserver=intersections.get(el);oldObserver?.disconnect();let rect=coords.get(el),invocations=0,buffer$1=5;rect||(rect=getCoords(el),coords.set(el,rect));let{offsetWidth,offsetHeight}=root$2,rootMargins=[rect.top-buffer$1,offsetWidth-(rect.left+buffer$1+rect.width),offsetHeight-(rect.top+buffer$1+rect.height),rect.left-buffer$1],rootMargin=rootMargins.map(px$2=>`${-1*Math.floor(px$2)}px`).join(` `),observer=new IntersectionObserver(()=>{++invocations>1&&updatePos(el)},{root:root$2,threshold:1,rootMargin});observer.observe(el),intersections.set(el,observer)}function updatePos(el){clearTimeout(debounces.get(el));let optionsOrPlugin=getOptions(el),delay=isPlugin(optionsOrPlugin)?500:optionsOrPlugin.duration;debounces.set(el,setTimeout(async()=>{let currentAnimation=animations.get(el);try{await currentAnimation?.finished,coords.set(el,getCoords(el)),observePosition(el)}catch{}},delay))}function updateAllPos(){clearTimeout(debounces.get(root$2)),debounces.set(root$2,setTimeout(()=>{parents.forEach(parent=>forEach(parent,el=>lowPriority(()=>updatePos(el))))},100))}function poll(el){setTimeout(()=>{intervals.set(el,setInterval(()=>lowPriority(updatePos.bind(null,el)),2e3))},Math.round(2e3*Math.random()))}function lowPriority(callback){typeof requestIdleCallback==`function`?requestIdleCallback(()=>callback()):requestAnimationFrame(()=>callback())}let mutations,resize;const supportedBrowser=typeof window<`u`&&`ResizeObserver`in window;supportedBrowser&&(root$2=document.documentElement,mutations=new MutationObserver(handleMutations),resize=new ResizeObserver(handleResizes),window.addEventListener(`scroll`,()=>{scrollY=window.scrollY,scrollX=window.scrollX}),resize.observe(root$2));function getElements(mutations$1){let observedNodes=mutations$1.reduce((nodes,mutation)=>[...nodes,...Array.from(mutation.addedNodes),...Array.from(mutation.removedNodes)],[]),onlyCommentNodesObserved=observedNodes.every(node$1=>node$1.nodeName===`#comment`);return onlyCommentNodesObserved?!1:mutations$1.reduce((elements,mutation)=>{if(elements===!1)return!1;if(mutation.target instanceof Element){if(target(mutation.target),!elements.has(mutation.target)){elements.add(mutation.target);for(let i$1=0;i$1callback(parent,options.has(parent)));for(let i$1=0;i$1callback(child,options.has(child)))}}function getPluginTuple(pluginReturn){return Array.isArray(pluginReturn)?pluginReturn:[pluginReturn]}function isPlugin(config){return typeof config==`function`}function remain(el){let oldCoords=coords.get(el),newCoords=getCoords(el);if(!isEnabled(el))return coords.set(el,newCoords);let animation;if(!oldCoords)return;let pluginOrOptions=getOptions(el);if(typeof pluginOrOptions!=`function`){let deltaX=oldCoords.left-newCoords.left,deltaY=oldCoords.top-newCoords.top,[widthFrom,widthTo,heightFrom,heightTo]=getTransitionSizes(el,oldCoords,newCoords),start={transform:`translate(${deltaX}px, ${deltaY}px)`},end={transform:`translate(0, 0)`};widthFrom!==widthTo&&(start.width=`${widthFrom}px`,end.width=`${widthTo}px`),heightFrom!==heightTo&&(start.height=`${heightFrom}px`,end.height=`${heightTo}px`),animation=el.animate([start,end],{duration:pluginOrOptions.duration,easing:pluginOrOptions.easing})}else{let[keyframes$3]=getPluginTuple(pluginOrOptions(el,`remain`,oldCoords,newCoords));animation=new Animation(keyframes$3),animation.play()}animations.set(el,animation),coords.set(el,newCoords),animation.addEventListener(`finish`,updatePos.bind(null,el))}function add(el){NEW in el&&delete el[NEW];let newCoords=getCoords(el);coords.set(el,newCoords);let pluginOrOptions=getOptions(el);if(!isEnabled(el))return;let animation;if(typeof pluginOrOptions!=`function`)animation=el.animate([{transform:`scale(.98)`,opacity:0},{transform:`scale(0.98)`,opacity:0,offset:.5},{transform:`scale(1)`,opacity:1}],{duration:pluginOrOptions.duration*1.5,easing:`ease-in`});else{let[keyframes$3]=getPluginTuple(pluginOrOptions(el,`add`,newCoords));animation=new Animation(keyframes$3),animation.play()}animations.set(el,animation),animation.addEventListener(`finish`,updatePos.bind(null,el))}function cleanUp(el,styles){var _a$2;el.remove(),coords.delete(el),siblings$1.delete(el),animations.delete(el),(_a$2=intersections.get(el))==null||_a$2.disconnect(),setTimeout(()=>{if(DEL in el&&delete el[DEL],Object.defineProperty(el,NEW,{value:!0,configurable:!0}),styles&&el instanceof HTMLElement)for(let style in styles)el.style[style]=``},0)}function remove(el){var _a$2;if(!siblings$1.has(el)||!coords.has(el))return;let[prev,next]=siblings$1.get(el);Object.defineProperty(el,DEL,{value:!0,configurable:!0});let finalX=window.scrollX,finalY=window.scrollY;if(next&&next.parentNode&&next.parentNode instanceof Element?next.parentNode.insertBefore(el,next):prev&&prev.parentNode?prev.parentNode.appendChild(el):(_a$2=getTarget(el))==null||_a$2.appendChild(el),!isEnabled(el))return cleanUp(el);let[top,left,width,height]=deletePosition(el),optionsOrPlugin=getOptions(el),oldCoords=coords.get(el);(finalX!==scrollX||finalY!==scrollY)&&adjustScroll(el,finalX,finalY,optionsOrPlugin);let animation,styleReset={position:`absolute`,top:`${top}px`,left:`${left}px`,width:`${width}px`,height:`${height}px`,margin:`0`,pointerEvents:`none`,transformOrigin:`center`,zIndex:`100`};if(!isPlugin(optionsOrPlugin))Object.assign(el.style,styleReset),animation=el.animate([{transform:`scale(1)`,opacity:1},{transform:`scale(.98)`,opacity:0}],{duration:optionsOrPlugin.duration,easing:`ease-out`});else{let[keyframes$3,options$1]=getPluginTuple(optionsOrPlugin(el,`remove`,oldCoords));options$1?.styleReset!==!1&&(styleReset=options$1?.styleReset||styleReset,Object.assign(el.style,styleReset)),animation=new Animation(keyframes$3),animation.play()}animations.set(el,animation),animation.addEventListener(`finish`,cleanUp.bind(null,el,styleReset))}function adjustScroll(el,finalX,finalY,optionsOrPlugin){let scrollDeltaX=scrollX-finalX,scrollDeltaY=scrollY-finalY,scrollBefore=document.documentElement.style.scrollBehavior,scrollBehavior=getComputedStyle(root$2).scrollBehavior;if(scrollBehavior===`smooth`&&(document.documentElement.style.scrollBehavior=`auto`),window.scrollTo(window.scrollX+scrollDeltaX,window.scrollY+scrollDeltaY),!el.parentElement)return;let parent=el.parentElement,lastHeight=parent.clientHeight,lastWidth=parent.clientWidth,startScroll=performance.now();function smoothScroll(){requestAnimationFrame(()=>{if(!isPlugin(optionsOrPlugin)){let deltaY=lastHeight-parent.clientHeight,deltaX=lastWidth-parent.clientWidth;startScroll+optionsOrPlugin.duration>performance.now()?(window.scrollTo({left:window.scrollX-deltaX,top:window.scrollY-deltaY}),lastHeight=parent.clientHeight,lastWidth=parent.clientWidth,smoothScroll()):document.documentElement.style.scrollBehavior=scrollBefore}})}smoothScroll()}function deletePosition(el){let oldCoords=coords.get(el),[width,,height]=getTransitionSizes(el,oldCoords,getCoords(el)),offsetParent=el.parentElement;for(;offsetParent&&(getComputedStyle(offsetParent).position===`static`||offsetParent instanceof HTMLBodyElement);)offsetParent=offsetParent.parentElement;offsetParent||=document.body;let parentStyles=getComputedStyle(offsetParent),parentCoords=coords.get(offsetParent)||getCoords(offsetParent),top=Math.round(oldCoords.top-parentCoords.top)-raw$2(parentStyles.borderTopWidth),left=Math.round(oldCoords.left-parentCoords.left)-raw$2(parentStyles.borderLeftWidth);return[top,left,width,height]}function autoAnimate(el,config={}){if(mutations&&resize){let mediaQuery=window.matchMedia(`(prefers-reduced-motion: reduce)`),isDisabledDueToReduceMotion=mediaQuery.matches&&!isPlugin(config)&&!config.disrespectUserMotionPreference;isDisabledDueToReduceMotion||(enabled.add(el),getComputedStyle(el).position===`static`&&Object.assign(el.style,{position:`relative`}),forEach(el,updatePos,poll,element$3=>resize?.observe(element$3)),isPlugin(config)?options.set(el,config):options.set(el,{duration:250,easing:`ease-in-out`,...config}),mutations.observe(el,{childList:!0}),parents.add(el))}return Object.freeze({parent:el,enable:()=>{enabled.add(el)},disable:()=>{enabled.delete(el)},isEnabled:()=>enabled.has(el)})}const vAutoAnimate={mounted:(el,binding)=>{autoAnimate(el,binding.value||{})},getSSRProps:()=>({})},vAutoAnimate$1=vAutoAnimate,autoAnimatePlugin={install(app){app.directive(`auto-animate`,vAutoAnimate$1)}};function isPlainObject$5(value$1){if(typeof value$1!=`object`||!value$1)return!1;let prototype=Object.getPrototypeOf(value$1);return prototype!==null&&prototype!==Object.prototype&&Object.getPrototypeOf(prototype)!==null||Symbol.iterator in value$1?!1:Symbol.toStringTag in value$1?Object.prototype.toString.call(value$1)===`[object Module]`:!0}function _defu(baseObject,defaults,namespace=`.`,merger){if(!isPlainObject$5(defaults))return _defu(baseObject,{},namespace,merger);let object=Object.assign({},defaults);for(let key$1 in baseObject){if(key$1===`__proto__`||key$1===`constructor`)continue;let value$1=baseObject[key$1];if(value$1==null||merger&&merger(object,key$1,value$1,namespace))continue;Array.isArray(value$1)&&Array.isArray(object[key$1])?object[key$1]=[...value$1,...object[key$1]]:isPlainObject$5(value$1)&&isPlainObject$5(object[key$1])?object[key$1]=_defu(value$1,object[key$1],(namespace?`${namespace}.`:``)+key$1.toString(),merger):object[key$1]=value$1}return object}function createDefu(merger){return(...arguments_)=>arguments_.reduce((p$5,c$4)=>_defu(p$5,c$4,``,merger),{})}const defu=createDefu(),defuFn=createDefu((object,key$1,currentValue)=>{if(object[key$1]!==void 0&&typeof currentValue==`function`)return object[key$1]=currentValue(object[key$1]),!0}),defuArrayFn=createDefu((object,key$1,currentValue)=>{if(Array.isArray(object[key$1])&&typeof currentValue==`function`)return object[key$1]=currentValue(object[key$1]),!0});function tryOnScopeDispose(fn$5){return getCurrentScope()?(onScopeDispose(fn$5),!0):!1}function createEventHook(){let fns=new Set,off=fn$5=>{fns.delete(fn$5)},clear=()=>{fns.clear()},on$1=fn$5=>{fns.add(fn$5);let offFn=()=>off(fn$5);return tryOnScopeDispose(offFn),{off:offFn}},trigger$1=(...args)=>Promise.all(Array.from(fns).map(fn$5=>fn$5(...args)));return{on:on$1,off,trigger:trigger$1,clear}}const localProvidedStateMap=new WeakMap,injectLocal=(...args)=>{var _a$2;let key$1=args[0],instance=(_a$2=getCurrentInstance())?.proxy;if(instance==null&&!hasInjectionContext())throw Error(`injectLocal must be called in setup`);return instance&&localProvidedStateMap.has(instance)&&key$1 in localProvidedStateMap.get(instance)?localProvidedStateMap.get(instance)[key$1]:inject(...args)},isClient$2=typeof window<`u`&&typeof document<`u`,isWorker=typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope,notNullish=val=>val!=null,toString$2=Object.prototype.toString,isObject$1=val=>toString$2.call(val)===`[object Object]`,noop$2=()=>{},hasOwn$2=(val,key$1)=>Object.prototype.hasOwnProperty.call(val,key$1);function toRef$1(...args){if(args.length!==1)return toRef(...args);let r$2=args[0];return typeof r$2==`function`?readonly(customRef(()=>({get:r$2,set:noop$2}))):ref(r$2)}function createFilterWrapper(filter$1,fn$5){function wrapper(...args){return new Promise((resolve$1,reject)=>{Promise.resolve(filter$1(()=>fn$5.apply(this,args),{fn:fn$5,thisArg:this,args})).then(resolve$1).catch(reject)})}return wrapper}const bypassFilter=invoke$1=>invoke$1();function debounceFilter(ms,options$1={}){let timer,maxTimer,lastRejector=noop$2,_clearTimeout=timer2=>{clearTimeout(timer2),lastRejector(),lastRejector=noop$2},lastInvoker,filter$1=invoke$1=>{let duration=toValue$1(ms),maxDuration$1=toValue$1(options$1.maxWait);return timer&&_clearTimeout(timer),duration<=0||maxDuration$1!==void 0&&maxDuration$1<=0?(maxTimer&&(_clearTimeout(maxTimer),maxTimer=void 0),Promise.resolve(invoke$1())):new Promise((resolve$1,reject)=>{lastRejector=options$1.rejectOnCancel?reject:resolve$1,lastInvoker=invoke$1,maxDuration$1&&!maxTimer&&(maxTimer=setTimeout(()=>{timer&&_clearTimeout(timer),maxTimer=void 0,resolve$1(lastInvoker())},maxDuration$1)),timer=setTimeout(()=>{maxTimer&&_clearTimeout(maxTimer),maxTimer=void 0,resolve$1(invoke$1())},duration)})};return filter$1}function throttleFilter(...args){let lastExec=0,timer,isLeading=!0,lastRejector=noop$2,lastValue,ms,trailing,leading,rejectOnCancel;!isRef(args[0])&&typeof args[0]==`object`?{delay:ms,trailing=!0,leading=!0,rejectOnCancel=!1}=args[0]:[ms,trailing=!0,leading=!0,rejectOnCancel=!1]=args;let clear=()=>{timer&&(clearTimeout(timer),timer=void 0,lastRejector(),lastRejector=noop$2)},filter$1=_invoke=>{let duration=toValue$1(ms),elapsed=Date.now()-lastExec,invoke$1=()=>lastValue=_invoke();return clear(),duration<=0?(lastExec=Date.now(),invoke$1()):(elapsed>duration&&(leading||!isLeading)?(lastExec=Date.now(),invoke$1()):trailing&&(lastValue=new Promise((resolve$1,reject)=>{lastRejector=rejectOnCancel?reject:resolve$1,timer=setTimeout(()=>{lastExec=Date.now(),isLeading=!0,resolve$1(invoke$1()),clear()},Math.max(0,duration-elapsed))})),!leading&&!timer&&(timer=setTimeout(()=>isLeading=!0,duration)),isLeading=!1,lastValue)};return filter$1}function pausableFilter(extendFilter=bypassFilter,options$1={}){let{initialState=`active`}=options$1,isActive=toRef$1(initialState===`active`);function pause(){isActive.value=!1}function resume(){isActive.value=!0}let eventFilter=(...args)=>{isActive.value&&extendFilter(...args)};return{isActive:readonly(isActive),pause,resume,eventFilter}}function promiseTimeout(ms,throwOnTimeout=!1,reason=`Timeout`){return new Promise((resolve$1,reject)=>{throwOnTimeout?setTimeout(()=>reject(reason),ms):setTimeout(resolve$1,ms)})}function createSingletonPromise(fn$5){let _promise;function wrapper(){return _promise||=fn$5(),_promise}return wrapper.reset=async()=>{let _prev=_promise;_promise=void 0,_prev&&await _prev},wrapper}function increaseWithUnit(target$1,delta){var _a$2;if(typeof target$1==`number`)return target$1+delta;let value$1=(_a$2=target$1.match(/^-?\d+\.?\d*/))?.[0]||``,unit=target$1.slice(value$1.length),result=Number.parseFloat(value$1)+delta;return Number.isNaN(result)?target$1:result+unit}function pxValue(px$2){return px$2.endsWith(`rem`)?Number.parseFloat(px$2)*16:Number.parseFloat(px$2)}function objectPick(obj,keys$3,omitUndefined=!1){return keys$3.reduce((n$2,k$4)=>(k$4 in obj&&(!omitUndefined||obj[k$4]!==void 0)&&(n$2[k$4]=obj[k$4]),n$2),{})}function toArray(value$1){return Array.isArray(value$1)?value$1:[value$1]}function cacheStringFunction(fn$5){let cache$1=Object.create(null);return str=>{let hit=cache$1[str];return hit||(cache$1[str]=fn$5(str))}}const hyphenateRE=/\B([A-Z])/g,hyphenate=cacheStringFunction(str=>str.replace(hyphenateRE,`-$1`).toLowerCase()),camelizeRE=/-(\w)/g,camelize$1=cacheStringFunction(str=>str.replace(camelizeRE,(_$2,c$4)=>c$4?c$4.toUpperCase():``));function getLifeCycleTarget(target$1){return target$1||getCurrentInstance()}function useDebounceFn(fn$5,ms=200,options$1={}){return createFilterWrapper(debounceFilter(ms,options$1),fn$5)}function refDebounced(value$1,ms=200,options$1={}){let debounced=ref(toValue$1(value$1)),updater=useDebounceFn(()=>{debounced.value=value$1.value},ms,options$1);return watch(value$1,()=>updater()),shallowReadonly(debounced)}function useThrottleFn(fn$5,ms=200,trailing=!1,leading=!0,rejectOnCancel=!1){return createFilterWrapper(throttleFilter(ms,trailing,leading,rejectOnCancel),fn$5)}function refThrottled(value$1,delay=200,trailing=!0,leading=!0){if(delay<=0)return value$1;let throttled=ref(toValue$1(value$1)),updater=useThrottleFn(()=>{throttled.value=value$1.value},delay,trailing,leading);return watch(value$1,()=>updater()),throttled}function watchWithFilter(source,cb$1,options$1={}){let{eventFilter=bypassFilter,...watchOptions}=options$1;return watch(source,createFilterWrapper(eventFilter,cb$1),watchOptions)}function watchPausable(source,cb$1,options$1={}){let{eventFilter:filter$1,initialState=`active`,...watchOptions}=options$1,{eventFilter,pause,resume,isActive}=pausableFilter(filter$1,{initialState}),stop$1=watchWithFilter(source,cb$1,{...watchOptions,eventFilter});return{stop:stop$1,pause,resume,isActive}}function toRefs$1(objectRef,options$1={}){if(!isRef(objectRef))return toRefs(objectRef);let result=Array.isArray(objectRef.value)?Array.from({length:objectRef.value.length}):{};for(let key$1 in objectRef.value)result[key$1]=customRef(()=>({get(){return objectRef.value[key$1]},set(v$1){var _a$2;let replaceRef=(_a$2=toValue$1(options$1.replaceRef))??!0;if(replaceRef)if(Array.isArray(objectRef.value)){let copy=[...objectRef.value];copy[key$1]=v$1,objectRef.value=copy}else{let newObject={...objectRef.value,[key$1]:v$1};Object.setPrototypeOf(newObject,Object.getPrototypeOf(objectRef.value)),objectRef.value=newObject}else objectRef.value[key$1]=v$1}}));return result}function tryOnMounted(fn$5,sync$1=!0,target$1){let instance=getLifeCycleTarget(target$1);instance?onMounted(fn$5,target$1):sync$1?fn$5():nextTick(fn$5)}function tryOnUnmounted(fn$5,target$1){let instance=getLifeCycleTarget(target$1);instance&&onUnmounted(fn$5,target$1)}function createUntil(r$2,isNot=!1){function toMatch(condition,{flush=`sync`,deep=!1,timeout,throwOnTimeout}={}){let stop$1=null,watcher=new Promise(resolve$1=>{stop$1=watch(r$2,v$1=>{condition(v$1)!==isNot&&(stop$1?stop$1():nextTick(()=>stop$1?.()),resolve$1(v$1))},{flush,deep,immediate:!0})}),promises=[watcher];return timeout!=null&&promises.push(promiseTimeout(timeout,throwOnTimeout).then(()=>toValue$1(r$2)).finally(()=>stop$1?.())),Promise.race(promises)}function toBe(value$1,options$1){if(!isRef(value$1))return toMatch(v$1=>v$1===value$1,options$1);let{flush=`sync`,deep=!1,timeout,throwOnTimeout}=options$1??{},stop$1=null,watcher=new Promise(resolve$1=>{stop$1=watch([r$2,value$1],([v1,v2])=>{isNot!==(v1===v2)&&(stop$1?stop$1():nextTick(()=>stop$1?.()),resolve$1(v1))},{flush,deep,immediate:!0})}),promises=[watcher];return timeout!=null&&promises.push(promiseTimeout(timeout,throwOnTimeout).then(()=>toValue$1(r$2)).finally(()=>(stop$1?.(),toValue$1(r$2)))),Promise.race(promises)}function toBeTruthy(options$1){return toMatch(v$1=>!!v$1,options$1)}function toBeNull(options$1){return toBe(null,options$1)}function toBeUndefined(options$1){return toBe(void 0,options$1)}function toBeNaN(options$1){return toMatch(Number.isNaN,options$1)}function toContains(value$1,options$1){return toMatch(v$1=>{let array=Array.from(v$1);return array.includes(value$1)||array.includes(toValue$1(value$1))},options$1)}function changed(options$1){return changedTimes(1,options$1)}function changedTimes(n$2=1,options$1){let count$1=-1;return toMatch(()=>(count$1+=1,count$1>=n$2),options$1)}if(Array.isArray(toValue$1(r$2))){let instance={toMatch,toContains,changed,changedTimes,get not(){return createUntil(r$2,!isNot)}};return instance}else{let instance={toMatch,toBe,toBeTruthy,toBeNull,toBeNaN,toBeUndefined,changed,changedTimes,get not(){return createUntil(r$2,!isNot)}};return instance}}function until(r$2){return createUntil(r$2)}function useTimeoutFn(cb$1,interval,options$1={}){let{immediate=!0,immediateCallback=!1}=options$1,isPending=shallowRef(!1),timer;function clear(){timer&&(clearTimeout(timer),timer=void 0)}function stop$1(){isPending.value=!1,clear()}function start(...args){immediateCallback&&cb$1(),clear(),isPending.value=!0,timer=setTimeout(()=>{isPending.value=!1,timer=void 0,cb$1(...args)},toValue$1(interval))}return immediate&&(isPending.value=!0,isClient$2&&start()),tryOnScopeDispose(stop$1),{isPending:shallowReadonly(isPending),start,stop:stop$1}}function watchDebounced(source,cb$1,options$1={}){let{debounce=0,maxWait=void 0,...watchOptions}=options$1;return watchWithFilter(source,cb$1,{...watchOptions,eventFilter:debounceFilter(debounce,{maxWait})})}function watchImmediate(source,cb$1,options$1){return watch(source,cb$1,{...options$1,immediate:!0})}function computedAsync(evaluationCallback,initialState,optionsOrRef){let options$1;options$1=isRef(optionsOrRef)?{evaluating:optionsOrRef}:optionsOrRef||{};let{lazy=!1,flush=`pre`,evaluating=void 0,shallow=!0,onError=noop$2}=options$1,started=shallowRef(!lazy),current=shallow?shallowRef(initialState):ref(initialState),counter=0;return watchEffect(async onInvalidate=>{if(!started.value)return;counter++;let counterAtBeginning=counter,hasFinished=!1;evaluating&&Promise.resolve().then(()=>{evaluating.value=!0});try{let result=await evaluationCallback(cancelCallback=>{onInvalidate(()=>{evaluating&&(evaluating.value=!1),hasFinished||cancelCallback()})});counterAtBeginning===counter&&(current.value=result)}catch(e$3){onError(e$3)}finally{evaluating&&counterAtBeginning===counter&&(evaluating.value=!1),hasFinished=!0}},{flush}),lazy?computed(()=>(started.value=!0,current.value)):current}const defaultWindow$1=isClient$2?window:void 0,defaultDocument=isClient$2?window.document:void 0,defaultNavigator=isClient$2?window.navigator:void 0,defaultLocation=isClient$2?window.location:void 0;function unrefElement$1(elRef){var _a$2;let plain=toValue$1(elRef);return(_a$2=plain?.$el)??plain}function useEventListener$1(...args){let cleanups=[],cleanup=()=>{cleanups.forEach(fn$5=>fn$5()),cleanups.length=0},register=(el,event,listener,options$1)=>(el.addEventListener(event,listener,options$1),()=>el.removeEventListener(event,listener,options$1)),firstParamTargets=computed(()=>{let test$1=toArray(toValue$1(args[0])).filter(e$3=>e$3!=null);return test$1.every(e$3=>typeof e$3!=`string`)?test$1:void 0}),stopWatch=watchImmediate(()=>{var _a$2,_b;return[(_b=(_a$2=firstParamTargets.value)?.map(e$3=>unrefElement$1(e$3)))??[defaultWindow$1].filter(e$3=>e$3!=null),toArray(toValue$1(firstParamTargets.value?args[1]:args[0])),toArray(unref(firstParamTargets.value?args[2]:args[1])),toValue$1(firstParamTargets.value?args[3]:args[2])]},([raw_targets,raw_events,raw_listeners,raw_options])=>{if(cleanup(),!raw_targets?.length||!raw_events?.length||!raw_listeners?.length)return;let optionsClone=isObject$1(raw_options)?{...raw_options}:raw_options;cleanups.push(...raw_targets.flatMap(el=>raw_events.flatMap(event=>raw_listeners.map(listener=>register(el,event,listener,optionsClone)))))},{flush:`post`}),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose(cleanup),stop$1}function useMounted$1(){let isMounted=shallowRef(!1),instance=getCurrentInstance();return instance&&onMounted(()=>{isMounted.value=!0},instance),isMounted}function useSupported(callback){let isMounted=useMounted$1();return computed(()=>(isMounted.value,!!callback()))}function useMutationObserver(target$1,callback,options$1={}){let{window:window$1=defaultWindow$1,...mutationOptions}=options$1,observer,isSupported=useSupported(()=>window$1&&`MutationObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let value$1=toValue$1(target$1),items=toArray(value$1).map(unrefElement$1).filter(notNullish);return new Set(items)}),stopWatch=watch(()=>targets.value,targets2=>{cleanup(),isSupported.value&&targets2.size&&(observer=new MutationObserver(callback),targets2.forEach(el=>observer.observe(el,mutationOptions)))},{immediate:!0,flush:`post`}),takeRecords=()=>observer?.takeRecords(),stop$1=()=>{stopWatch(),cleanup()};return tryOnScopeDispose(stop$1),{isSupported,stop:stop$1,takeRecords}}const ssrWidthSymbol=Symbol(`vueuse-ssr-width`);function useSSRWidth(){let ssrWidth=hasInjectionContext()?injectLocal(ssrWidthSymbol,null):null;return typeof ssrWidth==`number`?ssrWidth:void 0}function useMediaQuery(query,options$1={}){let{window:window$1=defaultWindow$1,ssrWidth=useSSRWidth()}=options$1,isSupported=useSupported(()=>window$1&&`matchMedia`in window$1&&typeof window$1.matchMedia==`function`),ssrSupport=shallowRef(typeof ssrWidth==`number`),mediaQuery=shallowRef(),matches$1=shallowRef(!1),handler=event=>{matches$1.value=event.matches};return watchEffect(()=>{if(ssrSupport.value){ssrSupport.value=!isSupported.value;let queryStrings=toValue$1(query).split(`,`);matches$1.value=queryStrings.some(queryString=>{let not=queryString.includes(`not all`),minWidth=queryString.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),maxWidth=queryString.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),res=!!(minWidth||maxWidth);return minWidth&&res&&(res=ssrWidth>=pxValue(minWidth[1])),maxWidth&&res&&(res=ssrWidth<=pxValue(maxWidth[1])),not?!res:res});return}isSupported.value&&(mediaQuery.value=window$1.matchMedia(toValue$1(query)),matches$1.value=mediaQuery.value.matches)}),useEventListener$1(mediaQuery,`change`,handler,{passive:!0}),computed(()=>matches$1.value)}const breakpointsTailwind={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function useBreakpoints(breakpoints,options$1={}){function getValue$2(k$4,delta){let v$1=toValue$1(breakpoints[toValue$1(k$4)]);return delta!=null&&(v$1=increaseWithUnit(v$1,delta)),typeof v$1==`number`&&(v$1=`${v$1}px`),v$1}let{window:window$1=defaultWindow$1,strategy=`min-width`,ssrWidth=useSSRWidth()}=options$1,ssrSupport=typeof ssrWidth==`number`,mounted=ssrSupport?shallowRef(!1):{value:!0};ssrSupport&&tryOnMounted(()=>mounted.value=!!window$1);function match(query,size$1){return!mounted.value&&ssrSupport?query===`min`?ssrWidth>=pxValue(size$1):ssrWidth<=pxValue(size$1):window$1?window$1.matchMedia(`(${query}-width: ${size$1})`).matches:!1}let greaterOrEqual=k$4=>useMediaQuery(()=>`(min-width: ${getValue$2(k$4)})`,options$1),smallerOrEqual=k$4=>useMediaQuery(()=>`(max-width: ${getValue$2(k$4)})`,options$1),shortcutMethods=Object.keys(breakpoints).reduce((shortcuts,k$4)=>(Object.defineProperty(shortcuts,k$4,{get:()=>strategy===`min-width`?greaterOrEqual(k$4):smallerOrEqual(k$4),enumerable:!0,configurable:!0}),shortcuts),{});function current(){let points=Object.keys(breakpoints).map(k$4=>[k$4,shortcutMethods[k$4],pxValue(getValue$2(k$4))]).sort((a$2,b$3)=>a$2[2]-b$3[2]);return computed(()=>points.filter(([,v$1])=>v$1.value).map(([k$4])=>k$4))}return Object.assign(shortcutMethods,{greaterOrEqual,smallerOrEqual,greater(k$4){return useMediaQuery(()=>`(min-width: ${getValue$2(k$4,.1)})`,options$1)},smaller(k$4){return useMediaQuery(()=>`(max-width: ${getValue$2(k$4,-.1)})`,options$1)},between(a$2,b$3){return useMediaQuery(()=>`(min-width: ${getValue$2(a$2)}) and (max-width: ${getValue$2(b$3,-.1)})`,options$1)},isGreater(k$4){return match(`min`,getValue$2(k$4,.1))},isGreaterOrEqual(k$4){return match(`min`,getValue$2(k$4))},isSmaller(k$4){return match(`max`,getValue$2(k$4,-.1))},isSmallerOrEqual(k$4){return match(`max`,getValue$2(k$4))},isInBetween(a$2,b$3){return match(`min`,getValue$2(a$2))&&match(`max`,getValue$2(b$3,-.1))},current,active(){let bps=current();return computed(()=>bps.value.length===0?``:bps.value.at(strategy===`min-width`?-1:0))}})}function usePermission(permissionDesc,options$1={}){let{controls=!1,navigator:navigator$1=defaultNavigator}=options$1,isSupported=useSupported(()=>navigator$1&&`permissions`in navigator$1),permissionStatus=shallowRef(),desc=typeof permissionDesc==`string`?{name:permissionDesc}:permissionDesc,state=shallowRef(),update=()=>{var _a$2,_b;state.value=(_b=(_a$2=permissionStatus.value)?.state)??`prompt`};useEventListener$1(permissionStatus,`change`,update,{passive:!0});let query=createSingletonPromise(async()=>{if(isSupported.value){if(!permissionStatus.value)try{permissionStatus.value=await navigator$1.permissions.query(desc)}catch{permissionStatus.value=void 0}finally{update()}if(controls)return toRaw(permissionStatus.value)}});return query(),controls?{state,isSupported,query}:state}function useClipboard(options$1={}){let{navigator:navigator$1=defaultNavigator,read=!1,source,copiedDuring=1500,legacy=!1}=options$1,isClipboardApiSupported=useSupported(()=>navigator$1&&`clipboard`in navigator$1),permissionRead=usePermission(`clipboard-read`),permissionWrite=usePermission(`clipboard-write`),isSupported=computed(()=>isClipboardApiSupported.value||legacy),text$5=shallowRef(``),copied=shallowRef(!1),timeout=useTimeoutFn(()=>copied.value=!1,copiedDuring,{immediate:!1});async function updateText(){let useLegacy=!(isClipboardApiSupported.value&&isAllowed(permissionRead.value));if(!useLegacy)try{text$5.value=await navigator$1.clipboard.readText()}catch{useLegacy=!0}useLegacy&&(text$5.value=legacyRead())}isSupported.value&&read&&useEventListener$1([`copy`,`cut`],updateText,{passive:!0});async function copy(value$1=toValue$1(source)){if(isSupported.value&&value$1!=null){let useLegacy=!(isClipboardApiSupported.value&&isAllowed(permissionWrite.value));if(!useLegacy)try{await navigator$1.clipboard.writeText(value$1)}catch{useLegacy=!0}useLegacy&&legacyCopy(value$1),text$5.value=value$1,copied.value=!0,timeout.start()}}function legacyCopy(value$1){let ta=document.createElement(`textarea`);ta.value=value$1??``,ta.style.position=`absolute`,ta.style.opacity=`0`,document.body.appendChild(ta),ta.select(),document.execCommand(`copy`),ta.remove()}function legacyRead(){var _a$2,_b,_c;return(_c=(_b=(_a$2=document==null?void 0:document.getSelection)?.call(document))?.toString())??``}function isAllowed(status){return status===`granted`||status===`prompt`}return{isSupported,text:text$5,copied,copy}}const _global$1=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},globalKey=`__vueuse_ssr_handlers__`,handlers$2=getHandlers();function getHandlers(){return globalKey in _global$1||(_global$1[globalKey]=_global$1[globalKey]||{}),_global$1[globalKey]}function getSSRHandler(key$1,fallback){return handlers$2[key$1]||fallback}function usePreferredDark(options$1){return useMediaQuery(`(prefers-color-scheme: dark)`,options$1)}function guessSerializerType(rawInit){return rawInit==null?`any`:rawInit instanceof Set?`set`:rawInit instanceof Map?`map`:rawInit instanceof Date?`date`:typeof rawInit==`boolean`?`boolean`:typeof rawInit==`string`?`string`:typeof rawInit==`object`?`object`:Number.isNaN(rawInit)?`any`:`number`}const StorageSerializers={boolean:{read:v$1=>v$1===`true`,write:v$1=>String(v$1)},object:{read:v$1=>JSON.parse(v$1),write:v$1=>JSON.stringify(v$1)},number:{read:v$1=>Number.parseFloat(v$1),write:v$1=>String(v$1)},any:{read:v$1=>v$1,write:v$1=>String(v$1)},string:{read:v$1=>v$1,write:v$1=>String(v$1)},map:{read:v$1=>new Map(JSON.parse(v$1)),write:v$1=>JSON.stringify(Array.from(v$1.entries()))},set:{read:v$1=>new Set(JSON.parse(v$1)),write:v$1=>JSON.stringify(Array.from(v$1))},date:{read:v$1=>new Date(v$1),write:v$1=>v$1.toISOString()}},customStorageEventName=`vueuse-storage`;function useStorage(key$1,defaults,storage,options$1={}){var _a$2;let{flush=`pre`,deep=!0,listenToStorageChanges=!0,writeDefaults=!0,mergeDefaults:mergeDefaults$1=!1,shallow,window:window$1=defaultWindow$1,eventFilter,onError=e$3=>{console.error(e$3)},initOnMounted}=options$1,data$10=(shallow?shallowRef:ref)(typeof defaults==`function`?defaults():defaults),keyComputed=computed(()=>toValue$1(key$1));if(!storage)try{storage=getSSRHandler(`getDefaultStorage`,()=>{var _a2;return(_a2=defaultWindow$1)?.localStorage})()}catch(e$3){onError(e$3)}if(!storage)return data$10;let rawInit=toValue$1(defaults),type=guessSerializerType(rawInit),serializer$1=(_a$2=options$1.serializer)??StorageSerializers[type],{pause:pauseWatch,resume:resumeWatch}=watchPausable(data$10,()=>write(data$10.value),{flush,deep,eventFilter});watch(keyComputed,()=>update(),{flush});let firstMounted=!1,onStorageEvent=ev=>{initOnMounted&&!firstMounted||update(ev)},onStorageCustomEvent=ev=>{initOnMounted&&!firstMounted||updateFromCustomEvent(ev)};window$1&&listenToStorageChanges&&(storage instanceof Storage?useEventListener$1(window$1,`storage`,onStorageEvent,{passive:!0}):useEventListener$1(window$1,customStorageEventName,onStorageCustomEvent)),initOnMounted?tryOnMounted(()=>{firstMounted=!0,update()}):update();function dispatchWriteEvent(oldValue,newValue){if(window$1){let payload={key:keyComputed.value,oldValue,newValue,storageArea:storage};window$1.dispatchEvent(storage instanceof Storage?new StorageEvent(`storage`,payload):new CustomEvent(customStorageEventName,{detail:payload}))}}function write(v$1){try{let oldValue=storage.getItem(keyComputed.value);if(v$1==null)dispatchWriteEvent(oldValue,null),storage.removeItem(keyComputed.value);else{let serialized=serializer$1.write(v$1);oldValue!==serialized&&(storage.setItem(keyComputed.value,serialized),dispatchWriteEvent(oldValue,serialized))}}catch(e$3){onError(e$3)}}function read(event){let rawValue=event?event.newValue:storage.getItem(keyComputed.value);if(rawValue==null)return writeDefaults&&rawInit!=null&&storage.setItem(keyComputed.value,serializer$1.write(rawInit)),rawInit;if(!event&&mergeDefaults$1){let value$1=serializer$1.read(rawValue);return typeof mergeDefaults$1==`function`?mergeDefaults$1(value$1,rawInit):type===`object`&&!Array.isArray(value$1)?{...rawInit,...value$1}:value$1}else if(typeof rawValue!=`string`)return rawValue;else return serializer$1.read(rawValue)}function update(event){if(!(event&&event.storageArea!==storage)){if(event&&event.key==null){data$10.value=rawInit;return}if(!(event&&event.key!==keyComputed.value)){pauseWatch();try{event?.newValue!==serializer$1.write(data$10.value)&&(data$10.value=read(event))}catch(e$3){onError(e$3)}finally{event?nextTick(resumeWatch):resumeWatch()}}}}function updateFromCustomEvent(event){update(event.detail)}return data$10}const CSS_DISABLE_TRANS=`*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`;function useColorMode(options$1={}){let{selector=`html`,attribute=`class`,initialValue=`auto`,window:window$1=defaultWindow$1,storage,storageKey=`vueuse-color-scheme`,listenToStorageChanges=!0,storageRef,emitAuto,disableTransition=!0}=options$1,modes$1={auto:``,light:`light`,dark:`dark`,...options$1.modes||{}},preferredDark=usePreferredDark({window:window$1}),system=computed(()=>preferredDark.value?`dark`:`light`),store=storageRef||(storageKey==null?toRef$1(initialValue):useStorage(storageKey,initialValue,storage,{window:window$1,listenToStorageChanges})),state=computed(()=>store.value===`auto`?system.value:store.value),updateHTMLAttrs=getSSRHandler(`updateHTMLAttrs`,(selector2,attribute2,value$1)=>{let el=typeof selector2==`string`?window$1?.document.querySelector(selector2):unrefElement$1(selector2);if(!el)return;let classesToAdd=new Set,classesToRemove=new Set,attributeToChange=null;if(attribute2===`class`){let current=value$1.split(/\s/g);Object.values(modes$1).flatMap(i$1=>(i$1||``).split(/\s/g)).filter(Boolean).forEach(v$1=>{current.includes(v$1)?classesToAdd.add(v$1):classesToRemove.add(v$1)})}else attributeToChange={key:attribute2,value:value$1};if(classesToAdd.size===0&&classesToRemove.size===0&&attributeToChange===null)return;let style;disableTransition&&(style=window$1.document.createElement(`style`),style.appendChild(document.createTextNode(CSS_DISABLE_TRANS)),window$1.document.head.appendChild(style));for(let c$4 of classesToAdd)el.classList.add(c$4);for(let c$4 of classesToRemove)el.classList.remove(c$4);attributeToChange&&el.setAttribute(attributeToChange.key,attributeToChange.value),disableTransition&&(window$1.getComputedStyle(style).opacity,document.head.removeChild(style))});function defaultOnChanged(mode){var _a$2;updateHTMLAttrs(selector,attribute,(_a$2=modes$1[mode])??mode)}function onChanged(mode){options$1.onChanged?options$1.onChanged(mode,defaultOnChanged):defaultOnChanged(mode)}watch(state,onChanged,{flush:`post`,immediate:!0}),tryOnMounted(()=>onChanged(state.value));let auto=computed({get(){return emitAuto?store.value:state.value},set(v$1){store.value=v$1}});return Object.assign(auto,{store,system,state})}function useCssVar(prop,target$1,options$1={}){let{window:window$1=defaultWindow$1,initialValue,observe=!1}=options$1,variable=shallowRef(initialValue),elRef=computed(()=>{var _a$2;return unrefElement$1(target$1)||(_a$2=window$1?.document)?.documentElement});function updateCssVar(){var _a$2;let key$1=toValue$1(prop),el=toValue$1(elRef);if(el&&window$1&&key$1){let value$1=(_a$2=window$1.getComputedStyle(el).getPropertyValue(key$1))?.trim();variable.value=value$1||variable.value||initialValue}}return observe&&useMutationObserver(elRef,updateCssVar,{attributeFilter:[`style`,`class`],window:window$1}),watch([elRef,()=>toValue$1(prop)],(_$2,old)=>{old[0]&&old[1]&&old[0].style.removeProperty(old[1]),updateCssVar()},{immediate:!0}),watch([variable,elRef],([val,el])=>{let raw_prop=toValue$1(prop);el?.style&&raw_prop&&(val==null?el.style.removeProperty(raw_prop):el.style.setProperty(raw_prop,val))},{immediate:!0}),variable}function useDark(options$1={}){let{valueDark=`dark`,valueLight=``}=options$1,mode=useColorMode({...options$1,onChanged:(mode2,defaultHandler)=>{var _a$2;options$1.onChanged?(_a$2=options$1.onChanged)==null||_a$2.call(options$1,mode2===`dark`,defaultHandler,mode2):defaultHandler(mode2)},modes:{dark:valueDark,light:valueLight}}),system=computed(()=>mode.system.value),isDark=computed({get(){return mode.value===`dark`},set(v$1){let modeVal=v$1?`dark`:`light`;system.value===modeVal?mode.value=`auto`:mode.value=modeVal}});return isDark}function useDevicesList(options$1={}){let{navigator:navigator$1=defaultNavigator,requestPermissions=!1,constraints={audio:!0,video:!0},onUpdated:onUpdated$1}=options$1,devices=ref([]),videoInputs=computed(()=>devices.value.filter(i$1=>i$1.kind===`videoinput`)),audioInputs=computed(()=>devices.value.filter(i$1=>i$1.kind===`audioinput`)),audioOutputs=computed(()=>devices.value.filter(i$1=>i$1.kind===`audiooutput`)),isSupported=useSupported(()=>navigator$1&&navigator$1.mediaDevices&&navigator$1.mediaDevices.enumerateDevices),permissionGranted=shallowRef(!1),stream;async function update(){isSupported.value&&(devices.value=await navigator$1.mediaDevices.enumerateDevices(),onUpdated$1?.(devices.value),stream&&(stream.getTracks().forEach(t=>t.stop()),stream=null))}async function ensurePermissions(){let deviceName=constraints.video?`camera`:`microphone`;if(!isSupported.value)return!1;if(permissionGranted.value)return!0;let{state,query}=usePermission(deviceName,{controls:!0});if(await query(),state.value!==`granted`){let granted=!0;try{let allDevices=await navigator$1.mediaDevices.enumerateDevices(),hasCamera=allDevices.some(device=>device.kind===`videoinput`),hasMicrophone=allDevices.some(device=>device.kind===`audioinput`||device.kind===`audiooutput`);constraints.video=hasCamera?constraints.video:!1,constraints.audio=hasMicrophone?constraints.audio:!1,stream=await navigator$1.mediaDevices.getUserMedia(constraints)}catch{stream=null,granted=!1}update(),permissionGranted.value=granted}else permissionGranted.value=!0;return permissionGranted.value}return isSupported.value&&(requestPermissions&&ensurePermissions(),useEventListener$1(navigator$1.mediaDevices,`devicechange`,update,{passive:!0}),update()),{devices,ensurePermissions,permissionGranted,videoInputs,audioInputs,audioOutputs,isSupported}}function useResizeObserver(target$1,callback,options$1={}){let{window:window$1=defaultWindow$1,...observerOptions}=options$1,observer,isSupported=useSupported(()=>window$1&&`ResizeObserver`in window$1),cleanup=()=>{observer&&(observer.disconnect(),observer=void 0)},targets=computed(()=>{let _targets=toValue$1(target$1);return Array.isArray(_targets)?_targets.map(el=>unrefElement$1(el)):[unrefElement$1(_targets)]}),stopWatch=watch(targets,els=>{if(cleanup(),isSupported.value&&window$1){observer=new ResizeObserver(callback);for(let _el of els)_el&&observer.observe(_el,observerOptions)}},{immediate:!0,flush:`post`}),stop$1=()=>{cleanup(),stopWatch()};return tryOnScopeDispose(stop$1),{isSupported,stop:stop$1}}function useElementBounding(target$1,options$1={}){let{reset=!0,windowResize=!0,windowScroll=!0,immediate=!0,updateTiming=`sync`}=options$1,height=shallowRef(0),bottom=shallowRef(0),left=shallowRef(0),right=shallowRef(0),top=shallowRef(0),width=shallowRef(0),x$3=shallowRef(0),y$2=shallowRef(0);function recalculate(){let el=unrefElement$1(target$1);if(!el){reset&&(height.value=0,bottom.value=0,left.value=0,right.value=0,top.value=0,width.value=0,x$3.value=0,y$2.value=0);return}let rect=el.getBoundingClientRect();height.value=rect.height,bottom.value=rect.bottom,left.value=rect.left,right.value=rect.right,top.value=rect.top,width.value=rect.width,x$3.value=rect.x,y$2.value=rect.y}function update(){updateTiming===`sync`?recalculate():updateTiming===`next-frame`&&requestAnimationFrame(()=>recalculate())}return useResizeObserver(target$1,update),watch(()=>unrefElement$1(target$1),ele=>!ele&&update()),useMutationObserver(target$1,update,{attributeFilter:[`style`,`class`]}),windowScroll&&useEventListener$1(`scroll`,update,{capture:!0,passive:!0}),windowResize&&useEventListener$1(`resize`,update,{passive:!0}),tryOnMounted(()=>{immediate&&update()}),{height,bottom,left,right,top,width,x:x$3,y:y$2,update}}function useIntersectionObserver(target$1,callback,options$1={}){let{root:root$3,rootMargin=`0px`,threshold=0,window:window$1=defaultWindow$1,immediate=!0}=options$1,isSupported=useSupported(()=>window$1&&`IntersectionObserver`in window$1),targets=computed(()=>{let _target$1=toValue$1(target$1);return toArray(_target$1).map(unrefElement$1).filter(notNullish)}),cleanup=noop$2,isActive=shallowRef(immediate),stopWatch=isSupported.value?watch(()=>[targets.value,unrefElement$1(root$3),isActive.value],([targets2,root2])=>{if(cleanup(),!isActive.value||!targets2.length)return;let observer=new IntersectionObserver(callback,{root:unrefElement$1(root2),rootMargin,threshold});targets2.forEach(el=>el&&observer.observe(el)),cleanup=()=>{observer.disconnect(),cleanup=noop$2}},{immediate,flush:`post`}):noop$2,stop$1=()=>{cleanup(),stopWatch(),isActive.value=!1};return tryOnScopeDispose(stop$1),{isSupported,isActive,pause(){cleanup(),isActive.value=!1},resume(){isActive.value=!0},stop:stop$1}}const DEFAULT_OPTIONS={multiple:!0,accept:`*`,reset:!1,directory:!1};function prepareInitialFiles(files){if(!files)return null;if(files instanceof FileList)return files;let dt$4=new DataTransfer;for(let file of files)dt$4.items.add(file);return dt$4.files}function useFileDialog(options$1={}){let{document:document$3=defaultDocument}=options$1,files=ref(prepareInitialFiles(options$1.initialFiles)),{on:onChange,trigger:changeTrigger}=createEventHook(),{on:onCancel,trigger:cancelTrigger}=createEventHook(),input;document$3&&(input=unrefElement$1(options$1.input)||document$3.createElement(`input`),input.type=`file`,input.onchange=event=>{let result=event.target;files.value=result.files,changeTrigger(files.value)},input.oncancel=()=>{cancelTrigger()});let reset=()=>{files.value=null,input&&input.value&&(input.value=``,changeTrigger(null))},open$1=localOptions=>{if(!input)return;let _options={...DEFAULT_OPTIONS,...options$1,...localOptions};input.multiple=_options.multiple,input.accept=_options.accept,input.webkitdirectory=_options.directory,hasOwn$2(_options,`capture`)&&(input.capture=_options.capture),_options.reset&&reset(),input.click()};return{files:readonly(files),open:open$1,reset,onCancel,onChange}}const ARRIVED_STATE_THRESHOLD_PIXELS=1;function useScroll(element$3,options$1={}){let{throttle=0,idle=200,onStop=noop$2,onScroll=noop$2,offset:offset$1={left:0,right:0,top:0,bottom:0},observe:_observe={mutation:!1},eventListenerOptions={capture:!1,passive:!0},behavior=`auto`,window:window$1=defaultWindow$1,onError=e$3=>{console.error(e$3)}}=options$1,observe=typeof _observe==`boolean`?{mutation:_observe}:_observe,internalX=shallowRef(0),internalY=shallowRef(0),x$3=computed({get(){return internalX.value},set(x2){scrollTo(x2,void 0)}}),y$2=computed({get(){return internalY.value},set(y2){scrollTo(void 0,y2)}});function scrollTo(_x$1,_y$1){var _a$2,_b,_c,_d;if(!window$1)return;let _element=toValue$1(element$3);if(!_element)return;(_c=_element instanceof Document?window$1.document.body:_element)==null||_c.scrollTo({top:(_a$2=toValue$1(_y$1))??y$2.value,left:(_b=toValue$1(_x$1))??x$3.value,behavior:toValue$1(behavior)});let scrollContainer=(_d=_element?.document)?.documentElement||_element?.documentElement||_element;x$3!=null&&(internalX.value=scrollContainer.scrollLeft),y$2!=null&&(internalY.value=scrollContainer.scrollTop)}let isScrolling=shallowRef(!1),arrivedState=reactive({left:!0,right:!1,top:!0,bottom:!1}),directions=reactive({left:!1,right:!1,top:!1,bottom:!1}),onScrollEnd=e$3=>{isScrolling.value&&(isScrolling.value=!1,directions.left=!1,directions.right=!1,directions.top=!1,directions.bottom=!1,onStop(e$3))},onScrollEndDebounced=useDebounceFn(onScrollEnd,throttle+idle),setArrivedState=target$1=>{var _a$2;if(!window$1)return;let el=(_a$2=target$1?.document)?.documentElement||target$1?.documentElement||unrefElement$1(target$1),{display,flexDirection,direction}=getComputedStyle(el),directionMultipler=direction===`rtl`?-1:1,scrollLeft=el.scrollLeft;directions.left=scrollLeftinternalX.value;let left=Math.abs(scrollLeft*directionMultipler)<=(offset$1.left||0),right=Math.abs(scrollLeft*directionMultipler)+el.clientWidth>=el.scrollWidth-(offset$1.right||0)-ARRIVED_STATE_THRESHOLD_PIXELS;display===`flex`&&flexDirection===`row-reverse`?(arrivedState.left=right,arrivedState.right=left):(arrivedState.left=left,arrivedState.right=right),internalX.value=scrollLeft;let scrollTop=el.scrollTop;target$1===window$1.document&&!scrollTop&&(scrollTop=window$1.document.body.scrollTop),directions.top=scrollTopinternalY.value;let top=Math.abs(scrollTop)<=(offset$1.top||0),bottom=Math.abs(scrollTop)+el.clientHeight>=el.scrollHeight-(offset$1.bottom||0)-ARRIVED_STATE_THRESHOLD_PIXELS;display===`flex`&&flexDirection===`column-reverse`?(arrivedState.top=bottom,arrivedState.bottom=top):(arrivedState.top=top,arrivedState.bottom=bottom),internalY.value=scrollTop},onScrollHandler=e$3=>{var _a$2;if(!window$1)return;let eventTarget=(_a$2=e$3.target.documentElement)??e$3.target;setArrivedState(eventTarget),isScrolling.value=!0,onScrollEndDebounced(e$3),onScroll(e$3)};return useEventListener$1(element$3,`scroll`,throttle?useThrottleFn(onScrollHandler,throttle,!0,!1):onScrollHandler,eventListenerOptions),tryOnMounted(()=>{try{let _element=toValue$1(element$3);if(!_element)return;setArrivedState(_element)}catch(e$3){onError(e$3)}}),observe?.mutation&&element$3!=null&&element$3!==window$1&&element$3!==document&&useMutationObserver(element$3,()=>{let _element=toValue$1(element$3);_element&&setArrivedState(_element)},{attributes:!0,childList:!0,subtree:!0}),useEventListener$1(element$3,`scrollend`,onScrollEnd,eventListenerOptions),{x:x$3,y:y$2,isScrolling,arrivedState,directions,measure(){let _element=toValue$1(element$3);window$1&&_element&&setArrivedState(_element)}}}function useLocalStorage(key$1,initialValue,options$1={}){let{window:window$1=defaultWindow$1}=options$1;return useStorage(key$1,initialValue,window$1?.localStorage,options$1)}const UseMouseBuiltinExtractors={page:event=>[event.pageX,event.pageY],client:event=>[event.clientX,event.clientY],screen:event=>[event.screenX,event.screenY],movement:event=>event instanceof MouseEvent?[event.movementX,event.movementY]:null};function useMouse(options$1={}){let{type=`page`,touch=!0,resetOnTouchEnds=!1,initialValue={x:0,y:0},window:window$1=defaultWindow$1,target:target$1=window$1,scroll=!0,eventFilter}=options$1,_prevMouseEvent=null,_prevScrollX=0,_prevScrollY=0,x$3=shallowRef(initialValue.x),y$2=shallowRef(initialValue.y),sourceType=shallowRef(null),extractor=typeof type==`function`?type:UseMouseBuiltinExtractors[type],mouseHandler=event=>{let result=extractor(event);_prevMouseEvent=event,result&&([x$3.value,y$2.value]=result,sourceType.value=`mouse`),window$1&&(_prevScrollX=window$1.scrollX,_prevScrollY=window$1.scrollY)},touchHandler=event=>{if(event.touches.length>0){let result=extractor(event.touches[0]);result&&([x$3.value,y$2.value]=result,sourceType.value=`touch`)}},scrollHandler=()=>{if(!_prevMouseEvent||!window$1)return;let pos=extractor(_prevMouseEvent);_prevMouseEvent instanceof MouseEvent&&pos&&(x$3.value=pos[0]+window$1.scrollX-_prevScrollX,y$2.value=pos[1]+window$1.scrollY-_prevScrollY)},reset=()=>{x$3.value=initialValue.x,y$2.value=initialValue.y},mouseHandlerWrapper=eventFilter?event=>eventFilter(()=>mouseHandler(event),{}):event=>mouseHandler(event),touchHandlerWrapper=eventFilter?event=>eventFilter(()=>touchHandler(event),{}):event=>touchHandler(event),scrollHandlerWrapper=eventFilter?()=>eventFilter(()=>scrollHandler(),{}):()=>scrollHandler();if(target$1){let listenerOptions={passive:!0};useEventListener$1(target$1,[`mousemove`,`dragover`],mouseHandlerWrapper,listenerOptions),touch&&type!==`movement`&&(useEventListener$1(target$1,[`touchstart`,`touchmove`],touchHandlerWrapper,listenerOptions),resetOnTouchEnds&&useEventListener$1(target$1,`touchend`,reset,listenerOptions)),scroll&&type===`page`&&useEventListener$1(window$1,`scroll`,scrollHandlerWrapper,listenerOptions)}return{x:x$3,y:y$2,sourceType}}function useObjectUrl(object){let url=shallowRef(),release=()=>{url.value&&URL.revokeObjectURL(url.value),url.value=void 0};return watch(()=>toValue$1(object),newObject=>{release(),newObject&&(url.value=URL.createObjectURL(newObject))},{immediate:!0}),tryOnScopeDispose(release),readonly(url)}const defaultState={x:0,y:0,pointerId:0,pressure:0,tiltX:0,tiltY:0,width:0,height:0,twist:0,pointerType:null},keys$1=Object.keys(defaultState);function usePointer(options$1={}){let{target:target$1=defaultWindow$1}=options$1,isInside=shallowRef(!1),state=ref(options$1.initialValue||{});Object.assign(state.value,defaultState,state.value);let handler=event=>{isInside.value=!0,!(options$1.pointerTypes&&!options$1.pointerTypes.includes(event.pointerType))&&(state.value=objectPick(event,keys$1,!1))};if(target$1){let listenerOptions={passive:!0};useEventListener$1(target$1,[`pointerdown`,`pointermove`,`pointerup`],handler,listenerOptions),useEventListener$1(target$1,`pointerleave`,()=>isInside.value=!1,listenerOptions)}return{...toRefs$1(state),isInside}}const topVarName=`--vueuse-safe-area-top`,rightVarName=`--vueuse-safe-area-right`,bottomVarName=`--vueuse-safe-area-bottom`,leftVarName=`--vueuse-safe-area-left`;function useScreenSafeArea(){let top=shallowRef(``),right=shallowRef(``),bottom=shallowRef(``),left=shallowRef(``);if(isClient$2){let topCssVar=useCssVar(topVarName),rightCssVar=useCssVar(rightVarName),bottomCssVar=useCssVar(bottomVarName),leftCssVar=useCssVar(leftVarName);topCssVar.value=`env(safe-area-inset-top, 0px)`,rightCssVar.value=`env(safe-area-inset-right, 0px)`,bottomCssVar.value=`env(safe-area-inset-bottom, 0px)`,leftCssVar.value=`env(safe-area-inset-left, 0px)`,tryOnMounted(update),useEventListener$1(`resize`,useDebounceFn(update),{passive:!0})}function update(){top.value=getValue(topVarName),right.value=getValue(rightVarName),bottom.value=getValue(bottomVarName),left.value=getValue(leftVarName)}return{top,right,bottom,left,update}}function getValue(position$2){return getComputedStyle(document.documentElement).getPropertyValue(position$2)}const DEFAULT_UNITS=[{max:6e4,value:1e3,name:`second`},{max:276e4,value:6e4,name:`minute`},{max:72e6,value:36e5,name:`hour`},{max:5184e5,value:864e5,name:`day`},{max:24192e5,value:6048e5,name:`week`},{max:28512e6,value:2592e6,name:`month`},{max:1/0,value:31536e6,name:`year`}];function useUserMedia(options$1={}){var _a$2,_b;let enabled$1=shallowRef((_a$2=options$1.enabled)??!1),autoSwitch=shallowRef((_b=options$1.autoSwitch)??!0),constraints=ref(options$1.constraints),{navigator:navigator$1=defaultNavigator}=options$1,isSupported=useSupported(()=>{var _a2;return(_a2=navigator$1?.mediaDevices)?.getUserMedia}),stream=shallowRef();function getDeviceOptions(type){switch(type){case`video`:if(constraints.value)return constraints.value.video||!1;break;case`audio`:if(constraints.value)return constraints.value.audio||!1;break}}async function _start$1(){if(!(!isSupported.value||stream.value))return stream.value=await navigator$1.mediaDevices.getUserMedia({video:getDeviceOptions(`video`),audio:getDeviceOptions(`audio`)}),stream.value}function _stop(){var _a2;(_a2=stream.value)==null||_a2.getTracks().forEach(t=>t.stop()),stream.value=void 0}function stop$1(){_stop(),enabled$1.value=!1}async function start(){return await _start$1(),stream.value&&(enabled$1.value=!0),stream.value}async function restart(){return _stop(),await start()}return watch(enabled$1,v$1=>{v$1?_start$1():_stop()},{immediate:!0}),watch(constraints,()=>{autoSwitch.value&&stream.value&&restart()},{immediate:!0}),tryOnScopeDispose(()=>{stop$1()}),{isSupported,stream,start,stop:stop$1,restart,constraints,enabled:enabled$1,autoSwitch}}function useWebWorker(arg0,workerOptions,options$1){let{window:window$1=defaultWindow$1}=options$1??{},data$10=ref(null),worker=shallowRef(),post=(...args)=>{worker.value&&worker.value.postMessage(...args)},terminate=function(){worker.value&&worker.value.terminate()};return window$1&&(typeof arg0==`string`?worker.value=new Worker(arg0,workerOptions):typeof arg0==`function`?worker.value=arg0():worker.value=arg0,worker.value.onmessage=e$3=>{data$10.value=e$3.data},tryOnScopeDispose(()=>{worker.value&&worker.value.terminate()})),{data:data$10,post,terminate,worker}}function useWindowSize(options$1={}){let{window:window$1=defaultWindow$1,initialWidth=1/0,initialHeight=1/0,listenOrientation=!0,includeScrollbar=!0,type=`inner`}=options$1,width=shallowRef(initialWidth),height=shallowRef(initialHeight),update=()=>{if(window$1)if(type===`outer`)width.value=window$1.outerWidth,height.value=window$1.outerHeight;else if(type===`visual`&&window$1.visualViewport){let{width:visualViewportWidth,height:visualViewportHeight,scale:scale$1}=window$1.visualViewport;width.value=Math.round(visualViewportWidth*scale$1),height.value=Math.round(visualViewportHeight*scale$1)}else includeScrollbar?(width.value=window$1.innerWidth,height.value=window$1.innerHeight):(width.value=window$1.document.documentElement.clientWidth,height.value=window$1.document.documentElement.clientHeight)};update(),tryOnMounted(update);let listenerOptions={passive:!0};if(useEventListener$1(`resize`,update,listenerOptions),window$1&&type===`visual`&&window$1.visualViewport&&useEventListener$1(window$1.visualViewport,`resize`,update,listenerOptions),listenOrientation){let matches$1=useMediaQuery(`(orientation: portrait)`);watch(matches$1,()=>update())}return{width,height}}const defaultTimestep=1/60*1e3,getCurrentTime=typeof performance<`u`?()=>performance.now():()=>Date.now(),onNextFrame=typeof window<`u`?callback=>window.requestAnimationFrame(callback):callback=>setTimeout(()=>callback(getCurrentTime()),defaultTimestep);function createRenderStep(runNextFrame$1){let toRun=[],toRunNextFrame=[],numToRun=0,isProcessing$1=!1,flushNextFrame=!1,toKeepAlive=new WeakSet,step={schedule:(callback,keepAlive=!1,immediate=!1)=>{let addToCurrentFrame=immediate&&isProcessing$1,buffer$1=addToCurrentFrame?toRun:toRunNextFrame;return keepAlive&&toKeepAlive.add(callback),buffer$1.indexOf(callback)===-1&&(buffer$1.push(callback),addToCurrentFrame&&isProcessing$1&&(numToRun=toRun.length)),callback},cancel:callback=>{let index$1=toRunNextFrame.indexOf(callback);index$1!==-1&&toRunNextFrame.splice(index$1,1),toKeepAlive.delete(callback)},process:frameData=>{if(isProcessing$1){flushNextFrame=!0;return}if(isProcessing$1=!0,[toRun,toRunNextFrame]=[toRunNextFrame,toRun],toRunNextFrame.length=0,numToRun=toRun.length,numToRun)for(let i$1=0;i$1(acc[key$1]=createRenderStep(()=>runNextFrame=!0),acc),{}),sync=stepsOrder.reduce((acc,key$1)=>{let step=steps[key$1];return acc[key$1]=(process$1,keepAlive=!1,immediate=!1)=>(runNextFrame||startLoop(),step.schedule(process$1,keepAlive,immediate)),acc},{}),cancelSync=stepsOrder.reduce((acc,key$1)=>(acc[key$1]=steps[key$1].cancel,acc),{}),flushSync=stepsOrder.reduce((acc,key$1)=>(acc[key$1]=()=>steps[key$1].process(frame),acc),{}),processStep=stepId=>steps[stepId].process(frame),processFrame=timestamp$2=>{runNextFrame=!1,frame.delta=useDefaultElapsed?defaultTimestep:Math.max(Math.min(timestamp$2-frame.timestamp,maxElapsed),1),frame.timestamp=timestamp$2,isProcessing=!0,stepsOrder.forEach(processStep),isProcessing=!1,runNextFrame&&(useDefaultElapsed=!1,onNextFrame(processFrame))},startLoop=()=>{runNextFrame=!0,useDefaultElapsed=!0,isProcessing||onNextFrame(processFrame)},getFrameData=()=>frame;var es_default=sync;function __rest(s$1,e$3){var t={};for(var p$5 in s$1)Object.prototype.hasOwnProperty.call(s$1,p$5)&&e$3.indexOf(p$5)<0&&(t[p$5]=s$1[p$5]);if(s$1!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i$1=0,p$5=Object.getOwnPropertySymbols(s$1);i$1Math.min(Math.max(v$1,min$1),max$1),safeMin=.001,minDuration=.01,maxDuration=10,minDamping=.05,maxDamping=1;function findSpring({duration=800,bounce=.25,velocity=0,mass=1}){let envelope,derivative;warning(duration<=maxDuration*1e3,`Spring duration must be 10 seconds or less`);let dampingRatio=1-bounce;dampingRatio=clamp$2(minDamping,maxDamping,dampingRatio),duration=clamp$2(minDuration,maxDuration,duration/1e3),dampingRatio<1?(envelope=undampedFreq$1=>{let exponentialDecay=undampedFreq$1*dampingRatio,delta=exponentialDecay*duration,a$2=exponentialDecay-velocity,b$3=calcAngularFreq(undampedFreq$1,dampingRatio),c$4=Math.exp(-delta);return safeMin-a$2/b$3*c$4},derivative=undampedFreq$1=>{let exponentialDecay=undampedFreq$1*dampingRatio,delta=exponentialDecay*duration,d$2=delta*velocity+velocity,e$3=dampingRatio**2*undampedFreq$1**2*duration,f$3=Math.exp(-delta),g$2=calcAngularFreq(undampedFreq$1**2,dampingRatio),factor$1=-envelope(undampedFreq$1)+safeMin>0?-1:1;return factor$1*((d$2-e$3)*f$3)/g$2}):(envelope=undampedFreq$1=>{let a$2=Math.exp(-undampedFreq$1*duration),b$3=(undampedFreq$1-velocity)*duration+1;return-safeMin+a$2*b$3},derivative=undampedFreq$1=>{let a$2=Math.exp(-undampedFreq$1*duration),b$3=(velocity-undampedFreq$1)*(duration*duration);return a$2*b$3});let initialGuess=5/duration,undampedFreq=approximateRoot(envelope,derivative,initialGuess);if(duration*=1e3,isNaN(undampedFreq))return{stiffness:100,damping:10,duration};{let stiffness=undampedFreq**2*mass;return{stiffness,damping:dampingRatio*2*Math.sqrt(mass*stiffness),duration}}}const rootIterations=12;function approximateRoot(envelope,derivative,initialGuess){let result=initialGuess;for(let i$1=1;i$1options$1[key$1]!==void 0)}function getSpringOptions(options$1){let springOptions=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},options$1);if(!isSpringType(options$1,physicsKeys)&&isSpringType(options$1,durationKeys)){let derived=findSpring(options$1);springOptions=Object.assign(Object.assign(Object.assign({},springOptions),derived),{velocity:0,mass:1}),springOptions.isResolvedFromDuration=!0}return springOptions}function spring(_a$2){var{from=0,to:to$1=1,restSpeed=2,restDelta}=_a$2,options$1=__rest(_a$2,[`from`,`to`,`restSpeed`,`restDelta`]);let state={done:!1,value:from},{stiffness,damping,mass,velocity,duration,isResolvedFromDuration}=getSpringOptions(options$1),resolveSpring=zero,resolveVelocity=zero;function createSpring(){let initialVelocity=velocity?-(velocity/1e3):0,initialDelta=to$1-from,dampingRatio=damping/(2*Math.sqrt(stiffness*mass)),undampedAngularFreq=Math.sqrt(stiffness/mass)/1e3;if(restDelta===void 0&&(restDelta=Math.min(Math.abs(to$1-from)/100,.4)),dampingRatio<1){let angularFreq=calcAngularFreq(undampedAngularFreq,dampingRatio);resolveSpring=t=>{let envelope=Math.exp(-dampingRatio*undampedAngularFreq*t);return to$1-envelope*((initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)/angularFreq*Math.sin(angularFreq*t)+initialDelta*Math.cos(angularFreq*t))},resolveVelocity=t=>{let envelope=Math.exp(-dampingRatio*undampedAngularFreq*t);return dampingRatio*undampedAngularFreq*envelope*(Math.sin(angularFreq*t)*(initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)/angularFreq+initialDelta*Math.cos(angularFreq*t))-envelope*(Math.cos(angularFreq*t)*(initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)-angularFreq*initialDelta*Math.sin(angularFreq*t))}}else if(dampingRatio===1)resolveSpring=t=>to$1-Math.exp(-undampedAngularFreq*t)*(initialDelta+(initialVelocity+undampedAngularFreq*initialDelta)*t);else{let dampedAngularFreq=undampedAngularFreq*Math.sqrt(dampingRatio*dampingRatio-1);resolveSpring=t=>{let envelope=Math.exp(-dampingRatio*undampedAngularFreq*t),freqForT=Math.min(dampedAngularFreq*t,300);return to$1-envelope*((initialVelocity+dampingRatio*undampedAngularFreq*initialDelta)*Math.sinh(freqForT)+dampedAngularFreq*initialDelta*Math.cosh(freqForT))/dampedAngularFreq}}}return createSpring(),{next:t=>{let current=resolveSpring(t);if(isResolvedFromDuration)state.done=t>=duration;else{let currentVelocity=resolveVelocity(t)*1e3,isBelowVelocityThreshold=Math.abs(currentVelocity)<=restSpeed,isBelowDisplacementThreshold=Math.abs(to$1-current)<=restDelta;state.done=isBelowVelocityThreshold&&isBelowDisplacementThreshold}return state.value=state.done?to$1:current,state},flipTarget:()=>{velocity=-velocity,[from,to$1]=[to$1,from],createSpring()}}}spring.needsInterpolation=(a$2,b$3)=>typeof a$2==`string`||typeof b$3==`string`;const zero=_t$3=>0,progress=(from,to$1,value$1)=>{let toFromDifference=to$1-from;return toFromDifference===0?1:(value$1-from)/toFromDifference},mix=(from,to$1,progress$1)=>-progress$1*from+progress$1*to$1+from,clamp$3=(min$1,max$1)=>v$1=>Math.max(Math.min(v$1,max$1),min$1),sanitize=v$1=>v$1%1?Number(v$1.toFixed(5)):v$1,floatRegex=/(-)?([\d]*\.?[\d])+/g,colorRegex=/(#[0-9a-f]{6}|#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,singleColorRegex=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function isString$1(v$1){return typeof v$1==`string`}const number$2={test:v$1=>typeof v$1==`number`,parse:parseFloat,transform:v$1=>v$1},alpha=Object.assign(Object.assign({},number$2),{transform:clamp$3(0,1)}),scale=Object.assign(Object.assign({},number$2),{default:1}),createUnitType=unit=>({test:v$1=>isString$1(v$1)&&v$1.endsWith(unit)&&v$1.split(` `).length===1,parse:parseFloat,transform:v$1=>`${v$1}${unit}`}),degrees=createUnitType(`deg`),percent=createUnitType(`%`),px=createUnitType(`px`),vh=createUnitType(`vh`),vw=createUnitType(`vw`),progressPercentage=Object.assign(Object.assign({},percent),{parse:v$1=>percent.parse(v$1)/100,transform:v$1=>percent.transform(v$1*100)}),isColorString=(type,testProp)=>v$1=>!!(isString$1(v$1)&&singleColorRegex.test(v$1)&&v$1.startsWith(type)||testProp&&Object.prototype.hasOwnProperty.call(v$1,testProp)),splitColor=(aName,bName,cName)=>v$1=>{if(!isString$1(v$1))return v$1;let[a$2,b$3,c$4,alpha$1]=v$1.match(floatRegex);return{[aName]:parseFloat(a$2),[bName]:parseFloat(b$3),[cName]:parseFloat(c$4),alpha:alpha$1===void 0?1:parseFloat(alpha$1)}},hsla={test:isColorString(`hsl`,`hue`),parse:splitColor(`hue`,`saturation`,`lightness`),transform:({hue:hue$2,saturation,lightness,alpha:alpha$1=1})=>`hsla(`+Math.round(hue$2)+`, `+percent.transform(sanitize(saturation))+`, `+percent.transform(sanitize(lightness))+`, `+sanitize(alpha.transform(alpha$1))+`)`},clampRgbUnit=clamp$3(0,255),rgbUnit=Object.assign(Object.assign({},number$2),{transform:v$1=>Math.round(clampRgbUnit(v$1))}),rgba={test:isColorString(`rgb`,`red`),parse:splitColor(`red`,`green`,`blue`),transform:({red,green,blue,alpha:alpha$1=1})=>`rgba(`+rgbUnit.transform(red)+`, `+rgbUnit.transform(green)+`, `+rgbUnit.transform(blue)+`, `+sanitize(alpha.transform(alpha$1))+`)`};function parseHex$1(v$1){let r$2=``,g$2=``,b$3=``,a$2=``;return v$1.length>5?(r$2=v$1.substr(1,2),g$2=v$1.substr(3,2),b$3=v$1.substr(5,2),a$2=v$1.substr(7,2)):(r$2=v$1.substr(1,1),g$2=v$1.substr(2,1),b$3=v$1.substr(3,1),a$2=v$1.substr(4,1),r$2+=r$2,g$2+=g$2,b$3+=b$3,a$2+=a$2),{red:parseInt(r$2,16),green:parseInt(g$2,16),blue:parseInt(b$3,16),alpha:a$2?parseInt(a$2,16)/255:1}}const hex$1={test:isColorString(`#`),parse:parseHex$1,transform:rgba.transform},color$1={test:v$1=>rgba.test(v$1)||hex$1.test(v$1)||hsla.test(v$1),parse:v$1=>rgba.test(v$1)?rgba.parse(v$1):hsla.test(v$1)?hsla.parse(v$1):hex$1.parse(v$1),transform:v$1=>isString$1(v$1)?v$1:v$1.hasOwnProperty(`red`)?rgba.transform(v$1):hsla.transform(v$1)},colorToken="${c}",numberToken="${n}";function test(v$1){var _a$2,_b,_c,_d;return isNaN(v$1)&&isString$1(v$1)&&((_b=(_a$2=v$1.match(floatRegex))?.length)??0)+((_d=(_c=v$1.match(colorRegex))?.length)??0)>0}function analyse$1(v$1){typeof v$1==`number`&&(v$1=`${v$1}`);let values=[],numColors=0,colors=v$1.match(colorRegex);colors&&(numColors=colors.length,v$1=v$1.replace(colorRegex,colorToken),values.push(...colors.map(color$1.parse)));let numbers=v$1.match(floatRegex);return numbers&&(v$1=v$1.replace(floatRegex,numberToken),values.push(...numbers.map(number$2.parse))),{values,numColors,tokenised:v$1}}function parse$3(v$1){return analyse$1(v$1).values}function createTransformer$1(v$1){let{values,numColors,tokenised}=analyse$1(v$1),numValues=values.length;return v$2=>{let output=tokenised;for(let i$1=0;i$1typeof v$1==`number`?0:v$1;function getAnimatableNone$2(v$1){let parsed=parse$3(v$1),transformer=createTransformer$1(v$1);return transformer(parsed.map(convertNumbersToZero))}const complex={test,parse:parse$3,createTransformer:createTransformer$1,getAnimatableNone:getAnimatableNone$2},maxDefaults=new Set([`brightness`,`contrast`,`saturate`,`opacity`]);function applyDefaultFilter(v$1){let[name$2,value$1]=v$1.slice(0,-1).split(`(`);if(name$2===`drop-shadow`)return v$1;let[number$3]=value$1.match(floatRegex)||[];if(!number$3)return v$1;let unit=value$1.replace(number$3,``),defaultValue=maxDefaults.has(name$2)?1:0;return number$3!==value$1&&(defaultValue*=100),name$2+`(`+defaultValue+unit+`)`}const functionRegex=/([a-z-]*)\(.*?\)/g,filter=Object.assign(Object.assign({},complex),{getAnimatableNone:v$1=>{let functions=v$1.match(functionRegex);return functions?functions.map(applyDefaultFilter).join(` `):v$1}});function hueToRgb(p$5,q$1,t){return t<0&&(t+=1),t>1&&--t,t<1/6?p$5+(q$1-p$5)*6*t:t<1/2?q$1:t<2/3?p$5+(q$1-p$5)*(2/3-t)*6:p$5}function hslaToRgba({hue:hue$2,saturation,lightness,alpha:alpha$1}){hue$2/=360,saturation/=100,lightness/=100;let red=0,green=0,blue=0;if(!saturation)red=green=blue=lightness;else{let q$1=lightness<.5?lightness*(1+saturation):lightness+saturation-lightness*saturation,p$5=2*lightness-q$1;red=hueToRgb(p$5,q$1,hue$2+1/3),green=hueToRgb(p$5,q$1,hue$2),blue=hueToRgb(p$5,q$1,hue$2-1/3)}return{red:Math.round(red*255),green:Math.round(green*255),blue:Math.round(blue*255),alpha:alpha$1}}const mixLinearColor=(from,to$1,v$1)=>{let fromExpo=from*from,toExpo=to$1*to$1;return Math.sqrt(Math.max(0,v$1*(toExpo-fromExpo)+fromExpo))},colorTypes=[hex$1,rgba,hsla],getColorType=v$1=>colorTypes.find(type=>type.test(v$1)),notAnimatable=color$2=>`'${color$2}' is not an animatable color. Use the equivalent color code instead.`,mixColor=(from,to$1)=>{let fromColorType=getColorType(from),toColorType=getColorType(to$1);invariant(!!fromColorType,notAnimatable(from)),invariant(!!toColorType,notAnimatable(to$1));let fromColor=fromColorType.parse(from),toColor=toColorType.parse(to$1);fromColorType===hsla&&(fromColor=hslaToRgba(fromColor),fromColorType=rgba),toColorType===hsla&&(toColor=hslaToRgba(toColor),toColorType=rgba);let blended=Object.assign({},fromColor);return v$1=>{for(let key$1 in blended)key$1!==`alpha`&&(blended[key$1]=mixLinearColor(fromColor[key$1],toColor[key$1],v$1));return blended.alpha=mix(fromColor.alpha,toColor.alpha,v$1),fromColorType.transform(blended)}},isNum=v$1=>typeof v$1==`number`,combineFunctions=(a$2,b$3)=>v$1=>b$3(a$2(v$1)),pipe=(...transformers)=>transformers.reduce(combineFunctions);function getMixer(origin,target$1){return isNum(origin)?v$1=>mix(origin,target$1,v$1):color$1.test(origin)?mixColor(origin,target$1):mixComplex(origin,target$1)}const mixArray=(from,to$1)=>{let output=[...from],numValues=output.length,blendValue=from.map((fromThis,i$1)=>getMixer(fromThis,to$1[i$1]));return v$1=>{for(let i$1=0;i$1{let output=Object.assign(Object.assign({},origin),target$1),blendValue={};for(let key$1 in output)origin[key$1]!==void 0&&target$1[key$1]!==void 0&&(blendValue[key$1]=getMixer(origin[key$1],target$1[key$1]));return v$1=>{for(let key$1 in blendValue)output[key$1]=blendValue[key$1](v$1);return output}};function analyse(value$1){let parsed=complex.parse(value$1),numValues=parsed.length,numNumbers=0,numRGB=0,numHSL=0;for(let i$1=0;i$1{let template=complex.createTransformer(target$1),originStats=analyse(origin),targetStats=analyse(target$1),canInterpolate=originStats.numHSL===targetStats.numHSL&&originStats.numRGB===targetStats.numRGB&&originStats.numNumbers>=targetStats.numNumbers;return canInterpolate?pipe(mixArray(originStats.parsed,targetStats.parsed),template):(warning(!0,`Complex values '${origin}' and '${target$1}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`),p$5=>`${p$5>0?target$1:origin}`)},mixNumber=(from,to$1)=>p$5=>mix(from,to$1,p$5);function detectMixerFactory(v$1){if(typeof v$1==`number`)return mixNumber;if(typeof v$1==`string`)return color$1.test(v$1)?mixColor:mixComplex;if(Array.isArray(v$1))return mixArray;if(typeof v$1==`object`)return mixObject}function createMixers(output,ease,customMixer){let mixers=[],mixerFactory=customMixer||detectMixerFactory(output[0]),numMixers=output.length-1;for(let i$1=0;i$1mixer(progress(from,to$1,v$1))}function slowInterpolate(input,mixers){let inputLength=input.length,lastInputIndex=inputLength-1;return v$1=>{let mixerIndex=0,foundMixerIndex=!1;if(v$1<=input[0]?foundMixerIndex=!0:v$1>=input[lastInputIndex]&&(mixerIndex=lastInputIndex-1,foundMixerIndex=!0),!foundMixerIndex){let i$1=1;for(;i$1v$1||i$1===lastInputIndex);i$1++);mixerIndex=i$1-1}let progressInRange=progress(input[mixerIndex],input[mixerIndex+1],v$1);return mixers[mixerIndex](progressInRange)}}function interpolate(input,output,{clamp:isClamp=!0,ease,mixer}={}){let inputLength=input.length;invariant(inputLength===output.length,`Both input and output ranges must be the same length`),invariant(!ease||!Array.isArray(ease)||ease.length===inputLength-1,"Array of easing functions must be of length `input.length - 1`, as it applies to the transitions **between** the defined values."),input[0]>input[inputLength-1]&&(input=[].concat(input),output=[].concat(output),input.reverse(),output.reverse());let mixers=createMixers(output,ease,mixer),interpolator=inputLength===2?fastInterpolate(input,mixers):slowInterpolate(input,mixers);return isClamp?v$1=>interpolator(clamp$2(input[0],input[inputLength-1],v$1)):interpolator}const reverseEasing=easing=>p$5=>1-easing(1-p$5),mirrorEasing=easing=>p$5=>p$5<=.5?easing(2*p$5)/2:(2-easing(2*(1-p$5)))/2,createExpoIn=power=>p$5=>p$5**+power,createBackIn=power=>p$5=>p$5*p$5*((power+1)*p$5-power),createAnticipate=power=>{let backEasing=createBackIn(power);return p$5=>(p$5*=2)<1?.5*backEasing(p$5):.5*(2-2**(-10*(p$5-1)))},DEFAULT_OVERSHOOT_STRENGTH=1.525,BOUNCE_FIRST_THRESHOLD=4/11,BOUNCE_SECOND_THRESHOLD=8/11,BOUNCE_THIRD_THRESHOLD=9/10,linear=p$5=>p$5,easeIn=createExpoIn(2),easeOut=reverseEasing(easeIn),easeInOut=mirrorEasing(easeIn),circIn=p$5=>1-Math.sin(Math.acos(p$5)),circOut=reverseEasing(circIn),circInOut=mirrorEasing(circOut),backIn=createBackIn(DEFAULT_OVERSHOOT_STRENGTH),backOut=reverseEasing(backIn),backInOut=mirrorEasing(backIn),anticipate=createAnticipate(DEFAULT_OVERSHOOT_STRENGTH),ca=4356/361,cb=35442/1805,cc=16061/1805,bounceOut=p$5=>{if(p$5===1||p$5===0)return p$5;let p2=p$5*p$5;return p$5p$5<.5?.5*(1-bounceOut(1-p$5*2)):.5*bounceOut(p$5*2-1)+.5;function defaultEasing(values,easing){return values.map(()=>easing||easeInOut).splice(0,values.length-1)}function defaultOffset(values){let numValues=values.length;return values.map((_value,i$1)=>i$1===0?0:i$1/(numValues-1))}function convertOffsetToTimes(offset$1,duration){return offset$1.map(o$1=>o$1*duration)}function keyframes$2({from=0,to:to$1=1,ease,offset:offset$1,duration=300}){let state={done:!1,value:from},values=Array.isArray(to$1)?to$1:[from,to$1],times=convertOffsetToTimes(offset$1&&offset$1.length===values.length?offset$1:defaultOffset(values),duration);function createInterpolator(){return interpolate(times,values,{ease:Array.isArray(ease)?ease:defaultEasing(values,ease)})}let interpolator=createInterpolator();return{next:t=>(state.value=interpolator(t),state.done=t>=duration,state),flipTarget:()=>{values.reverse(),interpolator=createInterpolator()}}}function decay({velocity=0,from=0,power=.8,timeConstant=350,restDelta=.5,modifyTarget}){let state={done:!1,value:from},amplitude=power*velocity,ideal=from+amplitude,target$1=modifyTarget===void 0?ideal:modifyTarget(ideal);return target$1!==ideal&&(amplitude=target$1-from),{next:t=>{let delta=-amplitude*Math.exp(-t/timeConstant);return state.done=!(delta>restDelta||delta<-restDelta),state.value=state.done?target$1:target$1+delta,state},flipTarget:()=>{}}}const types={keyframes:keyframes$2,spring,decay};function detectAnimationFromOptions(config){if(Array.isArray(config.to))return keyframes$2;if(types[config.type])return types[config.type];let keys$3=new Set(Object.keys(config));return keys$3.has(`ease`)||keys$3.has(`duration`)&&!keys$3.has(`dampingRatio`)?keyframes$2:keys$3.has(`dampingRatio`)||keys$3.has(`stiffness`)||keys$3.has(`mass`)||keys$3.has(`damping`)||keys$3.has(`restSpeed`)||keys$3.has(`restDelta`)?spring:keyframes$2}function loopElapsed(elapsed,duration,delay=0){return elapsed-duration-delay}function reverseElapsed(elapsed,duration,delay=0,isForwardPlayback=!0){return isForwardPlayback?loopElapsed(duration+-elapsed,duration,delay):duration-(elapsed-duration)+delay}function hasRepeatDelayElapsed(elapsed,duration,delay,isForwardPlayback){return isForwardPlayback?elapsed>=duration+delay:elapsed<=-delay}const framesync=update=>{let passTimestamp=({delta})=>update(delta);return{start:()=>es_default.update(passTimestamp,!0),stop:()=>cancelSync.update(passTimestamp)}};function animate(_a$2){var _b,_c,{from,autoplay=!0,driver=framesync,elapsed=0,repeat:repeatMax=0,repeatType=`loop`,repeatDelay=0,onPlay,onStop,onComplete,onRepeat,onUpdate}=_a$2,options$1=__rest(_a$2,[`from`,`autoplay`,`driver`,`elapsed`,`repeat`,`repeatType`,`repeatDelay`,`onPlay`,`onStop`,`onComplete`,`onRepeat`,`onUpdate`]);let{to:to$1}=options$1,driverControls,repeatCount=0,computedDuration=options$1.duration,latest,isComplete=!1,isForwardPlayback=!0,interpolateFromNumber,animator=detectAnimationFromOptions(options$1);(_c=(_b=animator).needsInterpolation)?.call(_b,from,to$1)&&(interpolateFromNumber=interpolate([0,100],[from,to$1],{clamp:!1}),from=0,to$1=100);let animation=animator(Object.assign(Object.assign({},options$1),{from,to:to$1}));function repeat(){repeatCount++,repeatType===`reverse`?(isForwardPlayback=repeatCount%2==0,elapsed=reverseElapsed(elapsed,computedDuration,repeatDelay,isForwardPlayback)):(elapsed=loopElapsed(elapsed,computedDuration,repeatDelay),repeatType===`mirror`&&animation.flipTarget()),isComplete=!1,onRepeat&&onRepeat()}function complete(){driverControls.stop(),onComplete&&onComplete()}function update(delta){if(isForwardPlayback||(delta=-delta),elapsed+=delta,!isComplete){let state=animation.next(Math.max(0,elapsed));latest=state.value,interpolateFromNumber&&(latest=interpolateFromNumber(latest)),isComplete=isForwardPlayback?state.done:elapsed<=0}onUpdate?.(latest),isComplete&&(repeatCount===0&&(computedDuration??=elapsed),repeatCount{onStop?.(),driverControls.stop()}}}function velocityPerSecond(velocity,frameDuration){return frameDuration?velocity*(1e3/frameDuration):0}function inertia({from=0,velocity=0,min:min$1,max:max$1,power=.8,timeConstant=750,bounceStiffness=500,bounceDamping=10,restDelta=1,modifyTarget,driver,onUpdate,onComplete,onStop}){let currentAnimation;function isOutOfBounds(v$1){return min$1!==void 0&&v$1max$1}function boundaryNearest(v$1){return min$1===void 0?max$1:max$1===void 0||Math.abs(min$1-v$1){var _a$2;onUpdate?.(v$1),(_a$2=options$1.onUpdate)==null||_a$2.call(options$1,v$1)},onComplete,onStop}))}function startSpring(options$1){startAnimation(Object.assign({type:`spring`,stiffness:bounceStiffness,damping:bounceDamping,restDelta},options$1))}if(isOutOfBounds(from))startSpring({from,velocity,to:boundaryNearest(from)});else{let target$1=power*velocity+from;modifyTarget!==void 0&&(target$1=modifyTarget(target$1));let boundary=boundaryNearest(target$1),heading$1=boundary===min$1?-1:1,prev,current,checkBoundary=v$1=>{prev=current,current=v$1,velocity=velocityPerSecond(v$1-prev,getFrameData().delta),(heading$1===1&&v$1>boundary||heading$1===-1&&v$1currentAnimation?.stop()}}const a$1=(a1,a2)=>1-3*a2+3*a1,b$2=(a1,a2)=>3*a2-6*a1,c$3=a1=>3*a1,calcBezier=(t,a1,a2)=>((a$1(a1,a2)*t+b$2(a1,a2))*t+c$3(a1))*t,getSlope=(t,a1,a2)=>3*a$1(a1,a2)*t*t+2*b$2(a1,a2)*t+c$3(a1),subdivisionPrecision=1e-7,subdivisionMaxIterations=10;function binarySubdivide(aX,aA,aB,mX1,mX2){let currentX,currentT,i$1=0;do currentT=aA+(aB-aA)/2,currentX=calcBezier(currentT,mX1,mX2)-aX,currentX>0?aB=currentT:aA=currentT;while(Math.abs(currentX)>subdivisionPrecision&&++i$1=newtonMinSlope?newtonRaphsonIterate(aX,guessForT,mX1,mX2):initialSlope===0?guessForT:binarySubdivide(aX,intervalStart,intervalStart+kSampleStepSize,mX1,mX2)}return t=>t===0||t===1?t:calcBezier(getTForX(t),mY1,mY2)}const __vite_import_meta_env__$1={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_TARGET_HUGGINGFACE_SPACE:`true`},motionState={};var SubscriptionManager$1=class{subscriptions=new Set;add(handler){return this.subscriptions.add(handler),()=>this.subscriptions.delete(handler)}notify(a$2,b$3,c$4){if(this.subscriptions.size)for(let handler of this.subscriptions)handler(a$2,b$3,c$4)}clear(){this.subscriptions.clear()}};function isFloat$1(value$1){return!Number.isNaN(Number.parseFloat(value$1))}var MotionValue$1=class{current;prev;timeDelta=0;lastUpdated=0;updateSubscribers=new SubscriptionManager$1;stopAnimation;canTrackVelocity=!1;constructor(init){this.prev=this.current=init,this.canTrackVelocity=isFloat$1(this.current)}onChange(subscription){return this.updateSubscribers.add(subscription)}clearListeners(){this.updateSubscribers.clear()}set(v$1){this.updateAndNotify(v$1)}updateAndNotify=v$1=>{this.prev=this.current,this.current=v$1;let{delta,timestamp:timestamp$2}=getFrameData();this.lastUpdated!==timestamp$2&&(this.timeDelta=delta,this.lastUpdated=timestamp$2),es_default.postRender(this.scheduleVelocityCheck),this.updateSubscribers.notify(this.current)};get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?velocityPerSecond(Number.parseFloat(this.current)-Number.parseFloat(this.prev),this.timeDelta):0}scheduleVelocityCheck=()=>es_default.postRender(this.velocityCheck);velocityCheck=({timestamp:timestamp$2})=>{this.canTrackVelocity||=isFloat$1(this.current),timestamp$2!==this.lastUpdated&&(this.prev=this.current)};start(animation){return this.stop(),new Promise(resolve$1=>{let{stop:stop$1}=animation(resolve$1);this.stopAnimation=stop$1}).then(()=>this.clearAnimation())}stop(){this.stopAnimation&&this.stopAnimation(),this.clearAnimation()}isAnimating(){return!!this.stopAnimation}clearAnimation(){this.stopAnimation=null}destroy(){this.updateSubscribers.clear(),this.stop()}};function getMotionValue$1(init){return new MotionValue$1(init)}const{isArray:isArray$4}=Array;function useMotionValues$1(){let motionValues=ref({}),stop$1=keys$3=>{let destroyKey=key$1=>{motionValues.value[key$1]&&(motionValues.value[key$1].stop(),motionValues.value[key$1].destroy(),delete motionValues.value[key$1])};keys$3?isArray$4(keys$3)?keys$3.forEach(destroyKey):destroyKey(keys$3):Object.keys(motionValues.value).forEach(destroyKey)},get=(key$1,from,target$1)=>{if(motionValues.value[key$1])return motionValues.value[key$1];let motionValue=getMotionValue$1(from);return motionValue.onChange(v$1=>target$1[key$1]=v$1),motionValues.value[key$1]=motionValue,motionValue};return tryOnUnmounted(stop$1),{motionValues,get,stop:stop$1}}function isKeyframesTarget$1(v$1){return Array.isArray(v$1)}function underDampedSpring$1(){return{type:`spring`,stiffness:500,damping:25,restDelta:.5,restSpeed:10}}function criticallyDampedSpring$1(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?2*Math.sqrt(550):30,restDelta:.01,restSpeed:10}}function overDampedSpring$1(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?100:30,restDelta:.01,restSpeed:10}}function linearTween$1(){return{type:`keyframes`,ease:`linear`,duration:300}}function keyframes$1(values){return{type:`keyframes`,duration:800,values}}const defaultTransitions$1={default:overDampedSpring$1,x:underDampedSpring$1,y:underDampedSpring$1,z:underDampedSpring$1,rotate:underDampedSpring$1,rotateX:underDampedSpring$1,rotateY:underDampedSpring$1,rotateZ:underDampedSpring$1,scaleX:criticallyDampedSpring$1,scaleY:criticallyDampedSpring$1,scale:criticallyDampedSpring$1,backgroundColor:linearTween$1,color:linearTween$1,opacity:linearTween$1};function getDefaultTransition$1(valueKey,to$1){let transitionFactory;return transitionFactory=isKeyframesTarget$1(to$1)?keyframes$1:defaultTransitions$1[valueKey]||defaultTransitions$1.default,{to:to$1,...transitionFactory(to$1)}}const int$1={...number$2,transform:Math.round},valueTypes$1={color:color$1,backgroundColor:color$1,outlineColor:color$1,fill:color$1,stroke:color$1,borderColor:color$1,borderTopColor:color$1,borderRightColor:color$1,borderBottomColor:color$1,borderLeftColor:color$1,borderWidth:px,borderTopWidth:px,borderRightWidth:px,borderBottomWidth:px,borderLeftWidth:px,borderRadius:px,radius:px,borderTopLeftRadius:px,borderTopRightRadius:px,borderBottomRightRadius:px,borderBottomLeftRadius:px,width:px,maxWidth:px,height:px,maxHeight:px,size:px,top:px,right:px,bottom:px,left:px,padding:px,paddingTop:px,paddingRight:px,paddingBottom:px,paddingLeft:px,margin:px,marginTop:px,marginRight:px,marginBottom:px,marginLeft:px,rotate:degrees,rotateX:degrees,rotateY:degrees,rotateZ:degrees,scale,scaleX:scale,scaleY:scale,scaleZ:scale,skew:degrees,skewX:degrees,skewY:degrees,distance:px,translateX:px,translateY:px,translateZ:px,x:px,y:px,z:px,perspective:px,transformPerspective:px,opacity:alpha,originX:progressPercentage,originY:progressPercentage,originZ:px,zIndex:int$1,filter,WebkitFilter:filter,fillOpacity:alpha,strokeOpacity:alpha,numOctaves:int$1},getValueType$1=key$1=>valueTypes$1[key$1];function getValueAsType$1(value$1,type){return type&&typeof value$1==`number`&&type.transform?type.transform(value$1):value$1}function getAnimatableNone$1(key$1,value$1){let defaultValueType=getValueType$1(key$1);return defaultValueType!==filter&&(defaultValueType=complex),defaultValueType.getAnimatableNone?defaultValueType.getAnimatableNone(value$1):void 0}const easingLookup$1={linear,easeIn,easeInOut,easeOut,circIn,circInOut,circOut,backIn,backInOut,backOut,anticipate,bounceIn,bounceInOut,bounceOut};function easingDefinitionToFunction$1(definition$29){if(Array.isArray(definition$29)){let[x1,y1,x2,y2]=definition$29;return cubicBezier(x1,y1,x2,y2)}else if(typeof definition$29==`string`)return easingLookup$1[definition$29];return definition$29}function isEasingArray$1(ease){return Array.isArray(ease)&&typeof ease[0]!=`number`}function isAnimatable$1(key$1,value$1){return key$1===`zIndex`?!1:!!(typeof value$1==`number`||Array.isArray(value$1)||typeof value$1==`string`&&complex.test(value$1)&&!value$1.startsWith(`url(`))}function hydrateKeyframes$1(options$1){return Array.isArray(options$1.to)&&options$1.to[0]===null&&(options$1.to=[...options$1.to],options$1.to[0]=options$1.from),options$1}function convertTransitionToAnimationOptions$1({ease,times,delay,...transition}){let options$1={...transition};return times&&(options$1.offset=times),ease&&(options$1.ease=isEasingArray$1(ease)?ease.map(easingDefinitionToFunction$1):easingDefinitionToFunction$1(ease)),delay&&(options$1.elapsed=-delay),options$1}function getPopmotionAnimationOptions$1(transition,options$1,key$1){return Array.isArray(options$1.to)&&(transition.duration||=800),hydrateKeyframes$1(options$1),isTransitionDefined$1(transition)||(transition={...transition,...getDefaultTransition$1(key$1,options$1.to)}),{...options$1,...convertTransitionToAnimationOptions$1(transition)}}function isTransitionDefined$1({delay,repeat,repeatType,repeatDelay,from,...transition}){return!!Object.keys(transition).length}function getValueTransition$1(transition,key$1){return transition[key$1]||transition.default||transition}function getAnimation$1(key$1,value$1,target$1,transition,onComplete){let valueTransition=getValueTransition$1(transition,key$1),origin=valueTransition.from===null||valueTransition.from===void 0?value$1.get():valueTransition.from,isTargetAnimatable=isAnimatable$1(key$1,target$1);origin===`none`&&isTargetAnimatable&&typeof target$1==`string`&&(origin=getAnimatableNone$1(key$1,target$1));let isOriginAnimatable=isAnimatable$1(key$1,origin);function start(complete){let options$1={from:origin,to:target$1,velocity:transition.velocity?transition.velocity:value$1.getVelocity(),onUpdate:v$1=>value$1.set(v$1)};return valueTransition.type===`inertia`||valueTransition.type===`decay`?inertia({...options$1,...valueTransition}):animate({...getPopmotionAnimationOptions$1(valueTransition,options$1,key$1),onUpdate:v$1=>{options$1.onUpdate(v$1),valueTransition.onUpdate&&valueTransition.onUpdate(v$1)},onComplete:()=>{onComplete&&onComplete(),complete&&complete()}})}function set(complete){return value$1.set(target$1),onComplete&&onComplete(),complete&&complete(),{stop:()=>{}}}return!isOriginAnimatable||!isTargetAnimatable||valueTransition.type===!1?set:start}function useMotionTransitions$1(){let{motionValues,stop:stop$1,get}=useMotionValues$1(),push$1=(key$1,value$1,target$1,transition={},onComplete)=>{let from=target$1[key$1],motionValue=get(key$1,from,target$1);if(transition&&transition.immediate){motionValue.set(value$1);return}let animation=getAnimation$1(key$1,motionValue,value$1,transition,onComplete);motionValue.start(animation)};return{motionValues,stop:stop$1,push:push$1}}function useMotionControls$1(motionProperties,variants={},{motionValues,push:push$1,stop:stop$1}=useMotionTransitions$1()){let _variants=unref(variants),isAnimating=ref(!1);watch(motionValues,newVal=>{isAnimating.value=Object.values(newVal).filter(value$1=>value$1.isAnimating()).length>0},{immediate:!0,deep:!0});let getVariantFromKey=variant=>{if(!_variants||!_variants[variant])throw Error(`The variant ${variant} does not exist.`);return _variants[variant]},apply$2=variant=>{typeof variant==`string`&&(variant=getVariantFromKey(variant));let animations$1=Object.entries(variant).map(([key$1,value$1])=>{if(key$1!==`transition`)return new Promise(resolve$1=>push$1(key$1,value$1,motionProperties,variant.transition||getDefaultTransition$1(key$1,variant[key$1]),resolve$1))}).filter(Boolean);async function waitForComplete(){await Promise.all(animations$1),variant.transition?.onComplete?.()}return Promise.all([waitForComplete()])},set=variant=>{let variantData=isObject$1(variant)?variant:getVariantFromKey(variant);Object.entries(variantData).forEach(([key$1,value$1])=>{key$1!==`transition`&&push$1(key$1,value$1,motionProperties,{immediate:!0})})},leave=async done=>{let leaveVariant;if(_variants&&(_variants.leave&&(leaveVariant=_variants.leave),!_variants.leave&&_variants.initial&&(leaveVariant=_variants.initial)),!leaveVariant){done();return}await apply$2(leaveVariant),done()};return{isAnimating,apply:apply$2,set,leave,stop:stop$1}}const isBrowser$2=typeof window<`u`,supportsPointerEvents$1=()=>isBrowser$2&&(window.onpointerdown===null||__vite_import_meta_env__$1?.TEST),supportsTouchEvents$1=()=>isBrowser$2&&(window.ontouchstart===null||__vite_import_meta_env__$1?.TEST),supportsMouseEvents$1=()=>isBrowser$2&&(window.onmousedown===null||__vite_import_meta_env__$1?.TEST);function registerEventListeners$1({target:target$1,state,variants,apply:apply$2}){let _variants=unref(variants),hovered=ref(!1),tapped=ref(!1),focused=ref(!1),mutableKeys=computed(()=>{let result=[...Object.keys(state.value||{})];return _variants?(_variants.hovered&&(result=[...result,...Object.keys(_variants.hovered)]),_variants.tapped&&(result=[...result,...Object.keys(_variants.tapped)]),_variants.focused&&(result=[...result,...Object.keys(_variants.focused)]),result):result}),computedProperties=computed(()=>{let result={};for(let key$1 in Object.assign(result,state.value),hovered.value&&_variants.hovered&&Object.assign(result,_variants.hovered),tapped.value&&_variants.tapped&&Object.assign(result,_variants.tapped),focused.value&&_variants.focused&&Object.assign(result,_variants.focused),result)mutableKeys.value.includes(key$1)||delete result[key$1];return result});_variants.hovered&&(useEventListener$1(target$1,`mouseenter`,()=>hovered.value=!0),useEventListener$1(target$1,`mouseleave`,()=>{hovered.value=!1,tapped.value=!1})),_variants.tapped&&(supportsMouseEvents$1()&&(useEventListener$1(target$1,`mousedown`,()=>tapped.value=!0),useEventListener$1(target$1,`mouseup`,()=>tapped.value=!1)),supportsPointerEvents$1()&&(useEventListener$1(target$1,`pointerdown`,()=>tapped.value=!0),useEventListener$1(target$1,`pointerup`,()=>tapped.value=!1)),supportsTouchEvents$1()&&(useEventListener$1(target$1,`touchstart`,()=>tapped.value=!0),useEventListener$1(target$1,`touchend`,()=>tapped.value=!1))),_variants.focused&&(useEventListener$1(target$1,`focus`,()=>focused.value=!0),useEventListener$1(target$1,`blur`,()=>focused.value=!1)),watch([hovered,tapped,focused],()=>{apply$2(computedProperties.value)})}function registerLifeCycleHooks$1({set,target:target$1,variants,variant}){let _variants=unref(variants);watch(()=>target$1,()=>{_variants&&(_variants.initial&&(set(`initial`),variant.value=`initial`),_variants.enter&&(variant.value=`enter`))},{immediate:!0,flush:`pre`})}function registerVariantsSync$1({state,apply:apply$2}){watch(state,newVal=>{newVal&&apply$2(newVal)},{immediate:!0})}function registerVisibilityHooks$1({target:target$1,variants,variant}){let _variants=unref(variants);_variants&&(_variants.visible||_variants.visibleOnce)&&useIntersectionObserver(target$1,([{isIntersecting}])=>{_variants.visible?isIntersecting?variant.value=`visible`:variant.value=`initial`:_variants.visibleOnce&&(isIntersecting&&variant.value!==`visibleOnce`?variant.value=`visibleOnce`:variant.value||=`initial`)})}function useMotionFeatures$1(instance,options$1={syncVariants:!0,lifeCycleHooks:!0,visibilityHooks:!0,eventListeners:!0}){options$1.lifeCycleHooks&®isterLifeCycleHooks$1(instance),options$1.syncVariants&®isterVariantsSync$1(instance),options$1.visibilityHooks&®isterVisibilityHooks$1(instance),options$1.eventListeners&®isterEventListeners$1(instance)}function reactiveStyle$1(props={}){let state=reactive({...props}),style=ref({});return watch(state,()=>{let result={};for(let[key$1,value$1]of Object.entries(state)){let valueType=getValueType$1(key$1),valueAsType=getValueAsType$1(value$1,valueType);result[key$1]=valueAsType}style.value=result},{immediate:!0,deep:!0}),{state,style}}function usePermissiveTarget$1(target$1,onTarget){watch(()=>unrefElement$1(target$1),el=>{el&&onTarget(el)},{immediate:!0})}const translateAlias$1={x:`translateX`,y:`translateY`,z:`translateZ`};function reactiveTransform$1(props={},enableHardwareAcceleration=!0){let state=reactive({...props}),transform$1=ref(``);return watch(state,newVal=>{let result=``,hasHardwareAcceleration=!1;if(enableHardwareAcceleration&&(newVal.x||newVal.y||newVal.z)){let str=[newVal.x||0,newVal.y||0,newVal.z||0].map(val=>getValueAsType$1(val,px)).join(`,`);result+=`translate3d(${str}) `,hasHardwareAcceleration=!0}for(let[key$1,value$1]of Object.entries(newVal)){if(enableHardwareAcceleration&&(key$1===`x`||key$1===`y`||key$1===`z`))continue;let valueType=getValueType$1(key$1),valueAsType=getValueAsType$1(value$1,valueType);result+=`${translateAlias$1[key$1]||key$1}(${valueAsType}) `}enableHardwareAcceleration&&!hasHardwareAcceleration&&(result+=`translateZ(0px) `),transform$1.value=result.trim()},{immediate:!0,deep:!0}),{state,transform:transform$1}}const transformAxes$1=[``,`X`,`Y`,`Z`],order$2=[`perspective`,`translate`,`scale`,`rotate`,`skew`],transformProps$1=[`transformPerspective`,`x`,`y`,`z`];order$2.forEach(operationKey=>{transformAxes$1.forEach(axesKey=>{let key$1=operationKey+axesKey;transformProps$1.push(key$1)})});const transformPropSet$1=new Set(transformProps$1);function isTransformProp$1(key$1){return transformPropSet$1.has(key$1)}const transformOriginProps$1=new Set([`originX`,`originY`,`originZ`]);function isTransformOriginProp$1(key$1){return transformOriginProps$1.has(key$1)}function splitValues$1(variant){let transform$1={},style={};return Object.entries(variant).forEach(([key$1,value$1])=>{isTransformProp$1(key$1)||isTransformOriginProp$1(key$1)?transform$1[key$1]=value$1:style[key$1]=value$1}),{transform:transform$1,style}}function variantToStyle$1(variant){let{transform:_transform,style:_style}=splitValues$1(variant),{transform:transform$1}=reactiveTransform$1(_transform),{style}=reactiveStyle$1(_style);return transform$1.value&&(style.value.transform=transform$1.value),style.value}function useElementStyle$1(target$1,onInit){let _cache$1,_target$1,{state,style}=reactiveStyle$1();return usePermissiveTarget$1(target$1,el=>{_target$1=el;for(let key$1 of Object.keys(valueTypes$1)){if(el.style[key$1]===null||el.style[key$1]===``||isTransformProp$1(key$1)||isTransformOriginProp$1(key$1))continue;state[key$1]=el.style[key$1]}_cache$1&&Object.entries(_cache$1).forEach(([key$1,value$1])=>el.style[key$1]=value$1),onInit&&onInit(state)}),watch(style,newVal=>{if(!_target$1){_cache$1=newVal;return}for(let key$1 in newVal)_target$1.style[key$1]=newVal[key$1]},{immediate:!0}),{style:state}}function parseTransform$1(transform$1){let transforms=transform$1.trim().split(/\) |\)/);if(transforms.length===1)return{};let parseValues=value$1=>value$1.endsWith(`px`)||value$1.endsWith(`deg`)?Number.parseFloat(value$1):Number.isNaN(Number(value$1))?Number(value$1):value$1;return transforms.reduce((acc,transform2)=>{if(!transform2)return acc;let[name$2,transformValue]=transform2.split(`(`),valueArray=transformValue.split(`,`),values=valueArray.map(val=>parseValues(val.endsWith(`)`)?val.replace(`)`,``):val.trim())),value$1=values.length===1?values[0]:values;return{...acc,[name$2]:value$1}},{})}function stateFromTransform$1(state,transform$1){Object.entries(parseTransform$1(transform$1)).forEach(([key$1,value$1])=>{let axes=[`x`,`y`,`z`];if(key$1===`translate3d`){if(value$1===0){axes.forEach(axis=>state[axis]=0);return}value$1.forEach((axisValue,index$1)=>state[axes[index$1]]=axisValue);return}if(value$1=Number.parseFloat(`${value$1}`),key$1===`translateX`){state.x=value$1;return}if(key$1===`translateY`){state.y=value$1;return}if(key$1===`translateZ`){state.z=value$1;return}state[key$1]=value$1})}function useElementTransform$1(target$1,onInit){let _cache$1,_target$1,{state,transform:transform$1}=reactiveTransform$1();return usePermissiveTarget$1(target$1,el=>{_target$1=el,el.style.transform&&stateFromTransform$1(state,el.style.transform),_cache$1&&(el.style.transform=_cache$1),onInit&&onInit(state)}),watch(transform$1,newValue=>{if(!_target$1){_cache$1=newValue;return}_target$1.style.transform=newValue},{immediate:!0}),{transform:state}}function objectEntries$1(obj){return Object.entries(obj)}function useMotionProperties$1(target$1,defaultValues){let motionProperties=reactive({}),apply$2=values=>Object.entries(values).forEach(([key$1,value$1])=>motionProperties[key$1]=value$1),{style}=useElementStyle$1(target$1,apply$2),{transform:transform$1}=useElementTransform$1(target$1,apply$2);return watch(motionProperties,newVal=>{objectEntries$1(newVal).forEach(([key$1,value$1])=>{let target2=isTransformProp$1(key$1)?transform$1:style;target2[key$1]&&target2[key$1]===value$1||(target2[key$1]=value$1)})},{immediate:!0,deep:!0}),usePermissiveTarget$1(target$1,()=>defaultValues&&apply$2(defaultValues)),{motionProperties,style,transform:transform$1}}function useMotionVariants$1(variants={}){let _variants=unref(variants),variant=ref(),state=computed(()=>{if(variant.value)return _variants[variant.value]});return{state,variant}}function useMotion$1(target$1,variants={},options$1){let{motionProperties}=useMotionProperties$1(target$1),{variant,state}=useMotionVariants$1(variants),controls=useMotionControls$1(motionProperties,variants),instance={target:target$1,variant,variants,state,motionProperties,...controls};return useMotionFeatures$1(instance,options$1),instance}const transitionKeys$1=[`delay`,`duration`],directivePropsKeys$1=[`initial`,`enter`,`leave`,`visible`,`visible-once`,`visibleOnce`,`hovered`,`tapped`,`focused`,...transitionKeys$1];function isTransitionKey(val){return transitionKeys$1.includes(val)}function resolveVariants(node$1,variantsRef){let target$1=node$1.props?node$1.props:node$1.data&&node$1.data.attrs?node$1.data.attrs:{};if(target$1){target$1.variants&&isObject$1(target$1.variants)&&(variantsRef.value={...variantsRef.value,...target$1.variants});for(let key$1 of directivePropsKeys$1){if(!target$1||!target$1[key$1])continue;if(isTransitionKey(key$1)&&typeof target$1[key$1]==`number`){for(let variantKey of[`enter`,`visible`,`visibleOnce`]){let variantConfig=variantsRef.value[variantKey];if(variantConfig==null)continue;variantConfig.transition??={},variantConfig.transition[key$1]=target$1[key$1]}continue}if(isObject$1(target$1[key$1])){let prop=target$1[key$1];key$1===`visible-once`&&(key$1=`visibleOnce`),variantsRef.value[key$1]=prop}}}}function directive(variants,isPreset=!1){let register=(el,binding,node$1)=>{let key$1=binding.value&&typeof binding.value==`string`?binding.value:node$1.key;key$1&&motionState[key$1]&&motionState[key$1].stop();let variantsObject=isPreset?structuredClone(toRaw(variants)||{}):variants||{},variantsRef=ref(variantsObject);typeof binding.value==`object`&&(variantsRef.value=binding.value),resolveVariants(node$1,variantsRef);let motionOptions={eventListeners:!0,lifeCycleHooks:!0,syncVariants:!0,visibilityHooks:!1},motionInstance=useMotion$1(el,variantsRef,motionOptions);el.motionInstance=motionInstance,key$1&&(motionState[key$1]=motionInstance)},mounted=(el,_binding,_node)=>{el.motionInstance&®isterVisibilityHooks$1(el.motionInstance)};return{created:register,mounted,getSSRProps(binding,node$1){let{initial:bindingInitial}=binding.value||node$1&&node$1?.props||{};bindingInitial=unref(bindingInitial);let initial=defu({},variants?.initial||{},bindingInitial||{});if(!initial||Object.keys(initial).length===0)return;let style=variantToStyle$1(initial);return{style}}}}const fade$1={initial:{opacity:0},enter:{opacity:1}},fadeVisible$1={initial:{opacity:0},visible:{opacity:1}},fadeVisibleOnce$1={initial:{opacity:0},visibleOnce:{opacity:1}},pop$1={initial:{scale:0,opacity:0},enter:{scale:1,opacity:1}},popVisible$1={initial:{scale:0,opacity:0},visible:{scale:1,opacity:1}},popVisibleOnce$1={initial:{scale:0,opacity:0},visibleOnce:{scale:1,opacity:1}},rollLeft$1={initial:{x:-100,rotate:90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleLeft$1={initial:{x:-100,rotate:90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceLeft$1={initial:{x:-100,rotate:90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollRight$1={initial:{x:100,rotate:-90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleRight$1={initial:{x:100,rotate:-90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceRight$1={initial:{x:100,rotate:-90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollTop$1={initial:{y:-100,rotate:-90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleTop$1={initial:{y:-100,rotate:-90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceTop$1={initial:{y:-100,rotate:-90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},rollBottom$1={initial:{y:100,rotate:90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleBottom$1={initial:{y:100,rotate:90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceBottom$1={initial:{y:100,rotate:90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},slideLeft$1={initial:{x:-100,opacity:0},enter:{x:0,opacity:1}},slideVisibleLeft$1={initial:{x:-100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceLeft$1={initial:{x:-100,opacity:0},visibleOnce:{x:0,opacity:1}},slideRight$1={initial:{x:100,opacity:0},enter:{x:0,opacity:1}},slideVisibleRight$1={initial:{x:100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceRight$1={initial:{x:100,opacity:0},visibleOnce:{x:0,opacity:1}},slideTop$1={initial:{y:-100,opacity:0},enter:{y:0,opacity:1}},slideVisibleTop$1={initial:{y:-100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceTop$1={initial:{y:-100,opacity:0},visibleOnce:{y:0,opacity:1}},slideBottom$1={initial:{y:100,opacity:0},enter:{y:0,opacity:1}},slideVisibleBottom$1={initial:{y:100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceBottom$1={initial:{y:100,opacity:0},visibleOnce:{y:0,opacity:1}},presets$1={__proto__:null,fade:fade$1,fadeVisible:fadeVisible$1,fadeVisibleOnce:fadeVisibleOnce$1,pop:pop$1,popVisible:popVisible$1,popVisibleOnce:popVisibleOnce$1,rollBottom:rollBottom$1,rollLeft:rollLeft$1,rollRight:rollRight$1,rollTop:rollTop$1,rollVisibleBottom:rollVisibleBottom$1,rollVisibleLeft:rollVisibleLeft$1,rollVisibleOnceBottom:rollVisibleOnceBottom$1,rollVisibleOnceLeft:rollVisibleOnceLeft$1,rollVisibleOnceRight:rollVisibleOnceRight$1,rollVisibleOnceTop:rollVisibleOnceTop$1,rollVisibleRight:rollVisibleRight$1,rollVisibleTop:rollVisibleTop$1,slideBottom:slideBottom$1,slideLeft:slideLeft$1,slideRight:slideRight$1,slideTop:slideTop$1,slideVisibleBottom:slideVisibleBottom$1,slideVisibleLeft:slideVisibleLeft$1,slideVisibleOnceBottom:slideVisibleOnceBottom$1,slideVisibleOnceLeft:slideVisibleOnceLeft$1,slideVisibleOnceRight:slideVisibleOnceRight$1,slideVisibleOnceTop:slideVisibleOnceTop$1,slideVisibleRight:slideVisibleRight$1,slideVisibleTop:slideVisibleTop$1};function slugify(str){let a$2=`àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìłḿñńǹňôöòóœøōõőṕŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż·/_,:;`,b$3=`aaaaaaaaaacccddeeeeeeeegghiiiiiilmnnnnoooooooooprrsssssttuuuuuuuuuwxyyzzz------`,p$5=new RegExp(a$2.split(``).join(`|`),`g`);return str.toString().replace(/[A-Z]/g,s$1=>`-${s$1}`).toLowerCase().replace(/\s+/g,`-`).replace(p$5,c$4=>b$3.charAt(a$2.indexOf(c$4))).replace(/&/g,`-and-`).replace(/[^\w\-]+/g,``).replace(/-{2,}/g,`-`).replace(/^-+/,``).replace(/-+$/,``)}const CUSTOM_PRESETS$1=Symbol(``),MotionComponentProps$1={preset:{type:String,required:!1},instance:{type:Object,required:!1},variants:{type:Object,required:!1},initial:{type:Object,required:!1},enter:{type:Object,required:!1},leave:{type:Object,required:!1},visible:{type:Object,required:!1},visibleOnce:{type:Object,required:!1},hovered:{type:Object,required:!1},tapped:{type:Object,required:!1},focused:{type:Object,required:!1},delay:{type:[Number,String],required:!1},duration:{type:[Number,String],required:!1}};function isObject$3(val){return Object.prototype.toString.call(val)===`[object Object]`}function clone$1(v$1){if(Array.isArray(v$1))return v$1.map(clone$1);if(isObject$3(v$1)){let res={};for(let key$1 in v$1)res[key$1]=clone$1(v$1[key$1]);return res}return v$1}function setupMotionComponent$1(props){let instances=reactive({}),customPresets=inject(CUSTOM_PRESETS$1,{}),preset=computed(()=>props.preset==null?{}:customPresets!=null&&props.preset in customPresets?structuredClone(toRaw(customPresets)[props.preset]):props.preset in presets$1?structuredClone(presets$1[props.preset]):{}),propsConfig=computed(()=>({initial:props.initial,enter:props.enter,leave:props.leave,visible:props.visible,visibleOnce:props.visibleOnce,hovered:props.hovered,tapped:props.tapped,focused:props.focused}));function applyTransitionHelpers(config,values){for(let transitionKey of[`delay`,`duration`]){if(values[transitionKey]==null)continue;let transitionValueParsed=Number.parseInt(values[transitionKey]);for(let variantKey of[`enter`,`visible`,`visibleOnce`]){let variantConfig=config[variantKey];if(variantConfig==null)continue;variantConfig.transition??={},variantConfig.transition[transitionKey]=transitionValueParsed}}return config}let motionConfig=computed(()=>{let config=defu({},propsConfig.value,preset.value,props.variants||{});return applyTransitionHelpers({...config},props)});function setNodeInstance(node$1,index$1,style){node$1.props??={},node$1.props.style??={},node$1.props.style={...node$1.props.style,...style};let elementMotionConfig=applyTransitionHelpers(clone$1(motionConfig.value),node$1.props);return node$1.props.onVnodeMounted=({el})=>{instances[index$1]=useMotion$1(el,elementMotionConfig)},node$1.props.onVnodeUpdated=({el})=>{let styles=variantToStyle$1(instances[index$1].state);for(let[key$1,val]of Object.entries(styles))el.style[key$1]=val},node$1}return{motionConfig,setNodeInstance}}const MotionComponent$1=defineComponent({name:`Motion`,props:{...MotionComponentProps$1,is:{type:[String,Object],default:`div`}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent$1(props);return()=>{let style=variantToStyle$1(motionConfig.value.initial||{}),node$1=h(props.is,void 0,slots);return setNodeInstance(node$1,0,style),node$1}}}),MotionGroupComponent$1=defineComponent({name:`MotionGroup`,props:{...MotionComponentProps$1,is:{type:[String,Object],required:!1}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent$1(props);return()=>{let style=variantToStyle$1(motionConfig.value.initial||{}),nodes=slots.default?.()||[];for(let i$1=0;i$1activePinia=pinia$1,piniaSymbol=Symbol();function isPlainObject$4(o$1){return o$1&&typeof o$1==`object`&&Object.prototype.toString.call(o$1)===`[object Object]`&&typeof o$1.toJSON!=`function`}var MutationType;(function(MutationType$1){MutationType$1.direct=`direct`,MutationType$1.patchObject=`patch object`,MutationType$1.patchFunction=`patch function`})(MutationType||={});const IS_CLIENT=typeof window<`u`,_global=(()=>typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null})();function bom(blob,{autoBom=!1}={}){return autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)?new Blob([``,blob],{type:blob.type}):blob}function download(url,name$2,opts){let xhr=new XMLHttpRequest;xhr.open(`GET`,url),xhr.responseType=`blob`,xhr.onload=function(){saveAs(xhr.response,name$2,opts)},xhr.onerror=function(){console.error(`could not download file`)},xhr.send()}function corsEnabled(url){let xhr=new XMLHttpRequest;xhr.open(`HEAD`,url,!1);try{xhr.send()}catch{}return xhr.status>=200&&xhr.status<=299}function click(node$1){try{node$1.dispatchEvent(new MouseEvent(`click`))}catch{let evt=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});node$1.dispatchEvent(evt)}}const _navigator=typeof navigator==`object`?navigator:{userAgent:``},isMacOSWebView=(()=>/Macintosh/.test(_navigator.userAgent)&&/AppleWebKit/.test(_navigator.userAgent)&&!/Safari/.test(_navigator.userAgent))(),saveAs=IS_CLIENT?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!isMacOSWebView?downloadSaveAs:`msSaveOrOpenBlob`in _navigator?msSaveAs:fileSaverSaveAs:()=>{};function downloadSaveAs(blob,name$2=`download`,opts){let a$2=document.createElement(`a`);a$2.download=name$2,a$2.rel=`noopener`,typeof blob==`string`?(a$2.href=blob,a$2.origin===location.origin?click(a$2):corsEnabled(a$2.href)?download(blob,name$2,opts):(a$2.target=`_blank`,click(a$2))):(a$2.href=URL.createObjectURL(blob),setTimeout(function(){URL.revokeObjectURL(a$2.href)},4e4),setTimeout(function(){click(a$2)},0))}function msSaveAs(blob,name$2=`download`,opts){if(typeof blob==`string`)if(corsEnabled(blob))download(blob,name$2,opts);else{let a$2=document.createElement(`a`);a$2.href=blob,a$2.target=`_blank`,setTimeout(function(){click(a$2)})}else navigator.msSaveOrOpenBlob(bom(blob,opts),name$2)}function fileSaverSaveAs(blob,name$2,opts,popup){if(popup||=open(``,`_blank`),popup&&(popup.document.title=popup.document.body.innerText=`downloading...`),typeof blob==`string`)return download(blob,name$2,opts);let force=blob.type===`application/octet-stream`,isSafari=/constructor/i.test(String(_global.HTMLElement))||`safari`in _global,isChromeIOS=/CriOS\/[\d]+/.test(navigator.userAgent);if((isChromeIOS||force&&isSafari||isMacOSWebView)&&typeof FileReader<`u`){let reader=new FileReader;reader.onloadend=function(){let url=reader.result;if(typeof url!=`string`)throw popup=null,Error(`Wrong reader.result type`);url=isChromeIOS?url:url.replace(/^data:[^;]*;/,`data:attachment/file;`),popup?popup.location.href=url:location.assign(url),popup=null},reader.readAsDataURL(blob)}else{let url=URL.createObjectURL(blob);popup?popup.location.assign(url):location.href=url,popup=null,setTimeout(function(){URL.revokeObjectURL(url)},4e4)}}const{assign:assign$1$1}=Object;function createPinia(){let scope=effectScope(!0),state=scope.run(()=>ref({})),_p=[],toBeInstalled=[],pinia$1=markRaw({install(app){setActivePinia(pinia$1),pinia$1._a=app,app.provide(piniaSymbol,pinia$1),app.config.globalProperties.$pinia=pinia$1,toBeInstalled.forEach(plugin=>_p.push(plugin)),toBeInstalled=[]},use(plugin){return this._a?_p.push(plugin):toBeInstalled.push(plugin),this},_p,_a:null,_e:scope,_s:new Map,state});return pinia$1}const noop$1=()=>{};function addSubscription(subscriptions,callback,detached,onCleanup=noop$1){subscriptions.push(callback);let removeSubscription=()=>{let idx=subscriptions.indexOf(callback);idx>-1&&(subscriptions.splice(idx,1),onCleanup())};return!detached&&getCurrentScope()&&onScopeDispose(removeSubscription),removeSubscription}function triggerSubscriptions(subscriptions,...args){subscriptions.slice().forEach(callback=>{callback(...args)})}const fallbackRunWithContext=fn$5=>fn$5(),ACTION_MARKER=Symbol(),ACTION_NAME=Symbol();function mergeReactiveObjects(target$1,patchToApply){for(let key$1 in target$1 instanceof Map&&patchToApply instanceof Map?patchToApply.forEach((value$1,key$1)=>target$1.set(key$1,value$1)):target$1 instanceof Set&&patchToApply instanceof Set&&patchToApply.forEach(target$1.add,target$1),patchToApply){if(!patchToApply.hasOwnProperty(key$1))continue;let subPatch=patchToApply[key$1],targetValue=target$1[key$1];isPlainObject$4(targetValue)&&isPlainObject$4(subPatch)&&target$1.hasOwnProperty(key$1)&&!isRef(subPatch)&&!isReactive(subPatch)?target$1[key$1]=mergeReactiveObjects(targetValue,subPatch):target$1[key$1]=subPatch}return target$1}const skipHydrateSymbol=Symbol();function shouldHydrate(obj){return!isPlainObject$4(obj)||!Object.prototype.hasOwnProperty.call(obj,skipHydrateSymbol)}const{assign:assign$2}=Object;function isComputed(o$1){return!!(isRef(o$1)&&o$1.effect)}function createOptionsStore(id,options$1,pinia$1,hot){let{state,actions,getters}=options$1,initialState=pinia$1.state.value[id],store;function setup(){initialState||(pinia$1.state.value[id]=state?state():{});let localState=toRefs(pinia$1.state.value[id]);return assign$2(localState,actions,Object.keys(getters||{}).reduce((computedGetters,name$2)=>(computedGetters[name$2]=markRaw(computed(()=>{setActivePinia(pinia$1);let store$1=pinia$1._s.get(id);return getters[name$2].call(store$1,store$1)})),computedGetters),{}))}return store=createSetupStore(id,setup,options$1,pinia$1,hot,!0),store}function createSetupStore($id,setup,options$1={},pinia$1,hot,isOptionsStore){let scope,optionsForPlugin=assign$2({actions:{}},options$1),$subscribeOptions={deep:!0},isListening,isSyncListening,subscriptions=[],actionSubscriptions=[],debuggerEvents,initialState=pinia$1.state.value[$id];!isOptionsStore&&!initialState&&(pinia$1.state.value[$id]={});let hotState=ref({}),activeListener;function $patch(partialStateOrMutator){let subscriptionMutation;isListening=isSyncListening=!1,typeof partialStateOrMutator==`function`?(partialStateOrMutator(pinia$1.state.value[$id]),subscriptionMutation={type:MutationType.patchFunction,storeId:$id,events:debuggerEvents}):(mergeReactiveObjects(pinia$1.state.value[$id],partialStateOrMutator),subscriptionMutation={type:MutationType.patchObject,payload:partialStateOrMutator,storeId:$id,events:debuggerEvents});let myListenerId=activeListener=Symbol();nextTick().then(()=>{activeListener===myListenerId&&(isListening=!0)}),isSyncListening=!0,triggerSubscriptions(subscriptions,subscriptionMutation,pinia$1.state.value[$id])}let $reset=isOptionsStore?function(){let{state}=options$1,newState=state?state():{};this.$patch($state=>{assign$2($state,newState)})}:noop$1;function $dispose(){scope.stop(),subscriptions=[],actionSubscriptions=[],pinia$1._s.delete($id)}let action=(fn$5,name$2=``)=>{if(ACTION_MARKER in fn$5)return fn$5[ACTION_NAME]=name$2,fn$5;let wrappedAction=function(){setActivePinia(pinia$1);let args=Array.from(arguments),afterCallbackList=[],onErrorCallbackList=[];function after(callback){afterCallbackList.push(callback)}function onError(callback){onErrorCallbackList.push(callback)}triggerSubscriptions(actionSubscriptions,{args,name:wrappedAction[ACTION_NAME],store,after,onError});let ret;try{ret=fn$5.apply(this&&this.$id===$id?this:store,args)}catch(error){throw triggerSubscriptions(onErrorCallbackList,error),error}return ret instanceof Promise?ret.then(value$1=>(triggerSubscriptions(afterCallbackList,value$1),value$1)).catch(error=>(triggerSubscriptions(onErrorCallbackList,error),Promise.reject(error))):(triggerSubscriptions(afterCallbackList,ret),ret)};return wrappedAction[ACTION_MARKER]=!0,wrappedAction[ACTION_NAME]=name$2,wrappedAction},_hmrPayload=markRaw({actions:{},getters:{},state:[],hotState}),partialStore={_p:pinia$1,$id,$onAction:addSubscription.bind(null,actionSubscriptions),$patch,$reset,$subscribe(callback,options$2={}){let removeSubscription=addSubscription(subscriptions,callback,options$2.detached,()=>stopWatcher()),stopWatcher=scope.run(()=>watch(()=>pinia$1.state.value[$id],state=>{(options$2.flush===`sync`?isSyncListening:isListening)&&callback({storeId:$id,type:MutationType.direct,events:debuggerEvents},state)},assign$2({},$subscribeOptions,options$2)));return removeSubscription},$dispose},store=reactive(partialStore);pinia$1._s.set($id,store);let runWithContext=pinia$1._a&&pinia$1._a.runWithContext||fallbackRunWithContext,setupStore=runWithContext(()=>pinia$1._e.run(()=>(scope=effectScope()).run(()=>setup({action}))));for(let key$1 in setupStore){let prop=setupStore[key$1];if(isRef(prop)&&!isComputed(prop)||isReactive(prop))isOptionsStore||(initialState&&shouldHydrate(prop)&&(isRef(prop)?prop.value=initialState[key$1]:mergeReactiveObjects(prop,initialState[key$1])),pinia$1.state.value[$id][key$1]=prop);else if(typeof prop==`function`){let actionValue=action(prop,key$1);setupStore[key$1]=actionValue,optionsForPlugin.actions[key$1]=prop}}return assign$2(store,setupStore),assign$2(toRaw(store),setupStore),Object.defineProperty(store,`$state`,{get:()=>pinia$1.state.value[$id],set:state=>{$patch($state=>{assign$2($state,state)})}}),pinia$1._p.forEach(extender=>{assign$2(store,scope.run(()=>extender({store,app:pinia$1._a,pinia:pinia$1,options:optionsForPlugin})))}),initialState&&isOptionsStore&&options$1.hydrate&&options$1.hydrate(store.$state,initialState),isListening=!0,isSyncListening=!0,store} /*! #__NO_SIDE_EFFECTS__ */ -function defineStore(id,setup,setupOptions){let options$1,isSetupStore=typeof setup==`function`;options$1=isSetupStore?setupOptions:setup;function useStore(pinia$1,hot){let hasContext=hasInjectionContext();pinia$1||=hasContext?inject(piniaSymbol,null):null,pinia$1&&setActivePinia(pinia$1),pinia$1=activePinia,pinia$1._s.has(id)||(isSetupStore?createSetupStore(id,setup,options$1,pinia$1):createOptionsStore(id,options$1,pinia$1));let store=pinia$1._s.get(id);return store}return useStore.$id=id,useStore}function storeToRefs(store){let rawStore=toRaw(store),refs={};for(let key$1 in rawStore){let value$1=rawStore[key$1];value$1.effect?refs[key$1]=computed({get:()=>store[key$1],set(value$2){store[key$1]=value$2}}):(isRef(value$1)||isReactive(value$1))&&(refs[key$1]=toRef(store,key$1))}return refs}const scriptRel=`modulepreload`,assetsURL=function(dep){return`/`+dep},seen={},__vitePreload=function(baseModule,deps,importerUrl){let promise=Promise.resolve();if(deps&&deps.length>0){let allSettled2=function(promises){return Promise.all(promises.map(p$5=>Promise.resolve(p$5).then(value$1=>({status:`fulfilled`,value:value$1}),reason=>({status:`rejected`,reason}))))},links=document.getElementsByTagName(`link`),cspNonceMeta=document.querySelector(`meta[property=csp-nonce]`),cspNonce=cspNonceMeta?.nonce||cspNonceMeta?.getAttribute(`nonce`);promise=allSettled2(deps.map(dep=>{if(dep=assetsURL(dep,importerUrl),dep in seen)return;seen[dep]=!0;let isCss=dep.endsWith(`.css`),cssSelector=isCss?`[rel="stylesheet"]`:``,isBaseRelative=!!importerUrl;if(isBaseRelative)for(let i$1=links.length-1;i$1>=0;i$1--){let link2=links[i$1];if(link2.href===dep&&(!isCss||link2.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${dep}"]${cssSelector}`))return;let link$1=document.createElement(`link`);if(link$1.rel=isCss?`stylesheet`:scriptRel,isCss||(link$1.as=`script`),link$1.crossOrigin=``,link$1.href=dep,cspNonce&&link$1.setAttribute(`nonce`,cspNonce),document.head.appendChild(link$1),isCss)return new Promise((res,rej)=>{link$1.addEventListener(`load`,res),link$1.addEventListener(`error`,()=>rej(Error(`Unable to preload CSS for ${dep}`)))})}))}function handlePreloadError(err){let e$3=new Event(`vite:preloadError`,{cancelable:!0});if(e$3.payload=err,window.dispatchEvent(e$3),!e$3.defaultPrevented)throw err}return promise.then(res=>{for(let item of res||[]){if(item.status!==`rejected`)continue;handlePreloadError(item.reason)}return baseModule().catch(handlePreloadError)})},setupLayouts=routes$1=>{let layouts={},modules=Object.assign({"/src/layouts/default.vue":()=>__vitePreload(()=>import(`./default-VFMqb8d1.js`),__vite__mapDeps([0,1,2])),"/src/layouts/home.vue":()=>__vitePreload(()=>import(`./home-C8SJ9QB4.js`),[]),"/src/layouts/plain.vue":()=>__vitePreload(()=>import(`./plain-D6gLTHFQ.js`),[]),"/src/layouts/settings.vue":()=>__vitePreload(()=>import(`./settings-B9J0fQVG.js`),__vite__mapDeps([3,1,2,4])),"/src/layouts/stage.vue":()=>__vitePreload(()=>import(`./stage-uGRRi7YM.js`),[])});Object.entries(modules).forEach(([name$2,module$1])=>{let key$1=name$2.replace(`/src/layouts/`,``).replace(`.vue`,``);layouts[key$1]=module$1});function deepSetupLayout(routes$2,top=!0){return routes$2.map(route=>{var _route$children,_route$meta3,_route$meta4;if((_route$children=route.children)?.length>0&&(route.children=deepSetupLayout(route.children,!1)),top){var _route$children2,_route$meta,_route$meta2;let skipLayout=!route.component&&(_route$children2=route.children)?.find(r$2=>{var _r$2$meta;return(r$2.path===``||r$2.path===`/`)&&(_r$2$meta=r$2.meta)?.isLayout});if(skipLayout)return route;if((_route$meta=route.meta)?.layout!==!1)return{path:route.path,component:layouts[(_route$meta2=route.meta)?.layout||`default`],children:route.path===`/`?[route]:[{...route,path:``}],meta:{isLayout:!0}}}return(_route$meta3=route.meta)?.layout?{path:route.path,component:layouts[(_route$meta4=route.meta)?.layout],children:[{...route,path:``}],meta:{isLayout:!0}}:route})}return deepSetupLayout(routes$1)},isBrowser$1=typeof document<`u`;function isRouteComponent(component){return typeof component==`object`||`displayName`in component||`props`in component||`__vccOpts`in component}function isESModule(obj){return obj.__esModule||obj[Symbol.toStringTag]===`Module`||obj.default&&isRouteComponent(obj.default)}const assign$1=Object.assign;function applyToParams(fn$5,params){let newParams={};for(let key$1 in params){let value$1=params[key$1];newParams[key$1]=isArray$3(value$1)?value$1.map(fn$5):fn$5(value$1)}return newParams}const noop=()=>{},isArray$3=Array.isArray,HASH_RE=/#/g,AMPERSAND_RE=/&/g,SLASH_RE=/\//g,EQUAL_RE=/=/g,IM_RE=/\?/g,PLUS_RE=/\+/g,ENC_BRACKET_OPEN_RE=/%5B/g,ENC_BRACKET_CLOSE_RE=/%5D/g,ENC_CARET_RE=/%5E/g,ENC_BACKTICK_RE=/%60/g,ENC_CURLY_OPEN_RE=/%7B/g,ENC_PIPE_RE=/%7C/g,ENC_CURLY_CLOSE_RE=/%7D/g,ENC_SPACE_RE=/%20/g;function commonEncode(text$5){return encodeURI(``+text$5).replace(ENC_PIPE_RE,`|`).replace(ENC_BRACKET_OPEN_RE,`[`).replace(ENC_BRACKET_CLOSE_RE,`]`)}function encodeHash(text$5){return commonEncode(text$5).replace(ENC_CURLY_OPEN_RE,`{`).replace(ENC_CURLY_CLOSE_RE,`}`).replace(ENC_CARET_RE,`^`)}function encodeQueryValue(text$5){return commonEncode(text$5).replace(PLUS_RE,`%2B`).replace(ENC_SPACE_RE,`+`).replace(HASH_RE,`%23`).replace(AMPERSAND_RE,`%26`).replace(ENC_BACKTICK_RE,"`").replace(ENC_CURLY_OPEN_RE,`{`).replace(ENC_CURLY_CLOSE_RE,`}`).replace(ENC_CARET_RE,`^`)}function encodeQueryKey(text$5){return encodeQueryValue(text$5).replace(EQUAL_RE,`%3D`)}function encodePath(text$5){return commonEncode(text$5).replace(HASH_RE,`%23`).replace(IM_RE,`%3F`)}function encodeParam(text$5){return text$5==null?``:encodePath(text$5).replace(SLASH_RE,`%2F`)}function decode$1(text$5){try{return decodeURIComponent(``+text$5)}catch{}return``+text$5}const TRAILING_SLASH_RE=/\/$/,removeTrailingSlash=path=>path.replace(TRAILING_SLASH_RE,``);function parseURL(parseQuery$1,location$1,currentLocation=`/`){let path,query={},searchString=``,hash=``,hashPos=location$1.indexOf(`#`),searchPos=location$1.indexOf(`?`);return hashPos=0&&(searchPos=-1),searchPos>-1&&(path=location$1.slice(0,searchPos),searchString=location$1.slice(searchPos+1,hashPos>-1?hashPos:location$1.length),query=parseQuery$1(searchString)),hashPos>-1&&(path||=location$1.slice(0,hashPos),hash=location$1.slice(hashPos,location$1.length)),path=resolveRelativePath(path??location$1,currentLocation),{fullPath:path+(searchString&&`?`)+searchString+hash,path,query,hash:decode$1(hash)}}function stringifyURL(stringifyQuery$1,location$1){let query=location$1.query?stringifyQuery$1(location$1.query):``;return location$1.path+(query&&`?`)+query+(location$1.hash||``)}function stripBase(pathname,base){return!base||!pathname.toLowerCase().startsWith(base.toLowerCase())?pathname:pathname.slice(base.length)||`/`}function isSameRouteLocation(stringifyQuery$1,a$2,b$3){let aLastIndex=a$2.matched.length-1,bLastIndex=b$3.matched.length-1;return aLastIndex>-1&&aLastIndex===bLastIndex&&isSameRouteRecord(a$2.matched[aLastIndex],b$3.matched[bLastIndex])&&isSameRouteLocationParams(a$2.params,b$3.params)&&stringifyQuery$1(a$2.query)===stringifyQuery$1(b$3.query)&&a$2.hash===b$3.hash}function isSameRouteRecord(a$2,b$3){return(a$2.aliasOf||a$2)===(b$3.aliasOf||b$3)}function isSameRouteLocationParams(a$2,b$3){if(Object.keys(a$2).length!==Object.keys(b$3).length)return!1;for(let key$1 in a$2)if(!isSameRouteLocationParamsValue(a$2[key$1],b$3[key$1]))return!1;return!0}function isSameRouteLocationParamsValue(a$2,b$3){return isArray$3(a$2)?isEquivalentArray(a$2,b$3):isArray$3(b$3)?isEquivalentArray(b$3,a$2):a$2===b$3}function isEquivalentArray(a$2,b$3){return isArray$3(b$3)?a$2.length===b$3.length&&a$2.every((value$1,i$1)=>value$1===b$3[i$1]):a$2.length===1&&a$2[0]===b$3}function resolveRelativePath(to$1,from){if(to$1.startsWith(`/`))return to$1;if(!to$1)return from;let fromSegments=from.split(`/`),toSegments=to$1.split(`/`),lastToSegment=toSegments[toSegments.length-1];(lastToSegment===`..`||lastToSegment===`.`)&&toSegments.push(``);let position$2=fromSegments.length-1,toPosition,segment;for(toPosition=0;toPosition1&&position$2--;else break;return fromSegments.slice(0,position$2).join(`/`)+`/`+toSegments.slice(toPosition).join(`/`)}const START_LOCATION_NORMALIZED={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};var NavigationType;(function(NavigationType$1){NavigationType$1.pop=`pop`,NavigationType$1.push=`push`})(NavigationType||={});var NavigationDirection;(function(NavigationDirection$1){NavigationDirection$1.back=`back`,NavigationDirection$1.forward=`forward`,NavigationDirection$1.unknown=``})(NavigationDirection||={});function normalizeBase(base){if(!base)if(isBrowser$1){let baseEl=document.querySelector(`base`);base=baseEl&&baseEl.getAttribute(`href`)||`/`,base=base.replace(/^\w+:\/\/[^\/]+/,``)}else base=`/`;return base[0]!==`/`&&base[0]!==`#`&&(base=`/`+base),removeTrailingSlash(base)}const BEFORE_HASH_RE=/^[^#]+#/;function createHref(base,location$1){return base.replace(BEFORE_HASH_RE,`#`)+location$1}function getElementPosition(el,offset$1){let docRect=document.documentElement.getBoundingClientRect(),elRect=el.getBoundingClientRect();return{behavior:offset$1.behavior,left:elRect.left-docRect.left-(offset$1.left||0),top:elRect.top-docRect.top-(offset$1.top||0)}}const computeScrollPosition=()=>({left:window.scrollX,top:window.scrollY});function scrollToPosition(position$2){let scrollToOptions;if(`el`in position$2){let positionEl=position$2.el,isIdSelector=typeof positionEl==`string`&&positionEl.startsWith(`#`),el=typeof positionEl==`string`?isIdSelector?document.getElementById(positionEl.slice(1)):document.querySelector(positionEl):positionEl;if(!el)return;scrollToOptions=getElementPosition(el,position$2)}else scrollToOptions=position$2;`scrollBehavior`in document.documentElement.style?window.scrollTo(scrollToOptions):window.scrollTo(scrollToOptions.left==null?window.scrollX:scrollToOptions.left,scrollToOptions.top==null?window.scrollY:scrollToOptions.top)}function getScrollKey(path,delta){let position$2=history.state?history.state.position-delta:-1;return position$2+path}const scrollPositions=new Map;function saveScrollPosition(key$1,scrollPosition){scrollPositions.set(key$1,scrollPosition)}function getSavedScrollPosition(key$1){let scroll=scrollPositions.get(key$1);return scrollPositions.delete(key$1),scroll}let createBaseLocation=()=>location.protocol+`//`+location.host;function createCurrentLocation(base,location$1){let{pathname,search:search$1,hash}=location$1,hashPos=base.indexOf(`#`);if(hashPos>-1){let slicePos=hash.includes(base.slice(hashPos))?base.slice(hashPos).length:1,pathFromHash=hash.slice(slicePos);return pathFromHash[0]!==`/`&&(pathFromHash=`/`+pathFromHash),stripBase(pathFromHash,``)}let path=stripBase(pathname,base);return path+search$1+hash}function useHistoryListeners(base,historyState,currentLocation,replace){let listeners=[],teardowns=[],pauseState=null,popStateHandler=({state})=>{let to$1=createCurrentLocation(base,location),from=currentLocation.value,fromState=historyState.value,delta=0;if(state){if(currentLocation.value=to$1,historyState.value=state,pauseState&&pauseState===from){pauseState=null;return}delta=fromState?state.position-fromState.position:0}else replace(to$1);listeners.forEach(listener=>{listener(currentLocation.value,from,{delta,type:NavigationType.pop,direction:delta?delta>0?NavigationDirection.forward:NavigationDirection.back:NavigationDirection.unknown})})};function pauseListeners(){pauseState=currentLocation.value}function listen(callback){listeners.push(callback);let teardown=()=>{let index$1=listeners.indexOf(callback);index$1>-1&&listeners.splice(index$1,1)};return teardowns.push(teardown),teardown}function beforeUnloadListener(){let{history:history$1}=window;history$1.state&&history$1.replaceState(assign$1({},history$1.state,{scroll:computeScrollPosition()}),``)}function destroy(){for(let teardown of teardowns)teardown();teardowns=[],window.removeEventListener(`popstate`,popStateHandler),window.removeEventListener(`beforeunload`,beforeUnloadListener)}return window.addEventListener(`popstate`,popStateHandler),window.addEventListener(`beforeunload`,beforeUnloadListener,{passive:!0}),{pauseListeners,listen,destroy}}function buildState(back,current,forward,replaced=!1,computeScroll=!1){return{back,current,forward,replaced,position:window.history.length,scroll:computeScroll?computeScrollPosition():null}}function useHistoryStateNavigation(base){let{history:history$1,location:location$1}=window,currentLocation={value:createCurrentLocation(base,location$1)},historyState={value:history$1.state};historyState.value||changeLocation(currentLocation.value,{back:null,current:currentLocation.value,forward:null,position:history$1.length-1,replaced:!0,scroll:null},!0);function changeLocation(to$1,state,replace$1){let hashIndex=base.indexOf(`#`),url=hashIndex>-1?(location$1.host&&document.querySelector(`base`)?base:base.slice(hashIndex))+to$1:createBaseLocation()+base+to$1;try{history$1[replace$1?`replaceState`:`pushState`](state,``,url),historyState.value=state}catch(err){console.error(err),location$1[replace$1?`replace`:`assign`](url)}}function replace(to$1,data$10){let state=assign$1({},history$1.state,buildState(historyState.value.back,to$1,historyState.value.forward,!0),data$10,{position:historyState.value.position});changeLocation(to$1,state,!0),currentLocation.value=to$1}function push$1(to$1,data$10){let currentState=assign$1({},historyState.value,history$1.state,{forward:to$1,scroll:computeScrollPosition()});changeLocation(currentState.current,currentState,!0);let state=assign$1({},buildState(currentLocation.value,to$1,null),{position:currentState.position+1},data$10);changeLocation(to$1,state,!1),currentLocation.value=to$1}return{location:currentLocation,state:historyState,push:push$1,replace}}function createWebHistory(base){base=normalizeBase(base);let historyNavigation=useHistoryStateNavigation(base),historyListeners=useHistoryListeners(base,historyNavigation.state,historyNavigation.location,historyNavigation.replace);function go(delta,triggerListeners=!0){triggerListeners||historyListeners.pauseListeners(),history.go(delta)}let routerHistory=assign$1({location:``,base,go,createHref:createHref.bind(null,base)},historyNavigation,historyListeners);return Object.defineProperty(routerHistory,`location`,{enumerable:!0,get:()=>historyNavigation.location.value}),Object.defineProperty(routerHistory,`state`,{enumerable:!0,get:()=>historyNavigation.state.value}),routerHistory}function createWebHashHistory(base){return base=location.host?base||location.pathname+location.search:``,base.includes(`#`)||(base+=`#`),createWebHistory(base)}function isRouteLocation(route){return typeof route==`string`||route&&typeof route==`object`}function isRouteName(name$2){return typeof name$2==`string`||typeof name$2==`symbol`}const NavigationFailureSymbol=Symbol(``);var NavigationFailureType;(function(NavigationFailureType$1){NavigationFailureType$1[NavigationFailureType$1.aborted=4]=`aborted`,NavigationFailureType$1[NavigationFailureType$1.cancelled=8]=`cancelled`,NavigationFailureType$1[NavigationFailureType$1.duplicated=16]=`duplicated`})(NavigationFailureType||={});function createRouterError(type,params){return assign$1(Error(),{type,[NavigationFailureSymbol]:!0},params)}function isNavigationFailure(error,type){return error instanceof Error&&NavigationFailureSymbol in error&&(type==null||!!(error.type&type))}const BASE_PARAM_PATTERN=`[^/]+?`,BASE_PATH_PARSER_OPTIONS={sensitive:!1,strict:!1,start:!0,end:!0},REGEX_CHARS_RE=/[.+*?^${}()[\]/\\]/g;function tokensToParser(segments,extraOptions){let options$1=assign$1({},BASE_PATH_PARSER_OPTIONS,extraOptions),score=[],pattern=options$1.start?`^`:``,keys$3=[];for(let segment of segments){let segmentScores=segment.length?[]:[90];options$1.strict&&!segment.length&&(pattern+=`/`);for(let tokenIndex=0;tokenIndexb$3.length?b$3.length===1&&b$3[0]===80?1:-1:0}function comparePathParserScore(a$2,b$3){let i$1=0,aScore=a$2.score,bScore=b$3.score;for(;i$10&&last[last.length-1]<0}const ROOT_TOKEN={type:0,value:``},VALID_PARAM_RE=/[a-zA-Z0-9_]/;function tokenizePath(path){if(!path)return[[]];if(path===`/`)return[[ROOT_TOKEN]];if(!path.startsWith(`/`))throw Error(`Invalid path "${path}"`);function crash(message$1){throw Error(`ERR (${state})/"${buffer$1}": ${message$1}`)}let state=0,previousState=state,tokens=[],segment;function finalizeSegment(){segment&&tokens.push(segment),segment=[]}let i$1=0,char,buffer$1=``,customRe=``;function consumeBuffer(){buffer$1&&(state===0?segment.push({type:0,value:buffer$1}):state===1||state===2||state===3?(segment.length>1&&(char===`*`||char===`+`)&&crash(`A repeatable param (${buffer$1}) must be alone in its segment. eg: '/:ids+.`),segment.push({type:1,value:buffer$1,regexp:customRe,repeatable:char===`*`||char===`+`,optional:char===`*`||char===`?`})):crash(`Invalid state to consume buffer`),buffer$1=``)}function addCharToBuffer(){buffer$1+=char}for(;i$1{removeRoute(originalMatcher)}:noop}function removeRoute(matcherRef){if(isRouteName(matcherRef)){let matcher=matcherMap.get(matcherRef);matcher&&(matcherMap.delete(matcherRef),matchers.splice(matchers.indexOf(matcher),1),matcher.children.forEach(removeRoute),matcher.alias.forEach(removeRoute))}else{let index$1=matchers.indexOf(matcherRef);index$1>-1&&(matchers.splice(index$1,1),matcherRef.record.name&&matcherMap.delete(matcherRef.record.name),matcherRef.children.forEach(removeRoute),matcherRef.alias.forEach(removeRoute))}}function getRoutes(){return matchers}function insertMatcher(matcher){let index$1=findInsertionIndex(matcher,matchers);matchers.splice(index$1,0,matcher),matcher.record.name&&!isAliasRecord(matcher)&&matcherMap.set(matcher.record.name,matcher)}function resolve$1(location$1,currentLocation){let matcher,params={},path,name$2;if(`name`in location$1&&location$1.name){if(matcher=matcherMap.get(location$1.name),!matcher)throw createRouterError(1,{location:location$1});name$2=matcher.record.name,params=assign$1(paramsFromLocation(currentLocation.params,matcher.keys.filter(k$4=>!k$4.optional).concat(matcher.parent?matcher.parent.keys.filter(k$4=>k$4.optional):[]).map(k$4=>k$4.name)),location$1.params&¶msFromLocation(location$1.params,matcher.keys.map(k$4=>k$4.name))),path=matcher.stringify(params)}else if(location$1.path!=null)path=location$1.path,matcher=matchers.find(m$2=>m$2.re.test(path)),matcher&&(params=matcher.parse(path),name$2=matcher.record.name);else{if(matcher=currentLocation.name?matcherMap.get(currentLocation.name):matchers.find(m$2=>m$2.re.test(currentLocation.path)),!matcher)throw createRouterError(1,{location:location$1,currentLocation});name$2=matcher.record.name,params=assign$1({},currentLocation.params,location$1.params),path=matcher.stringify(params)}let matched=[],parentMatcher=matcher;for(;parentMatcher;)matched.unshift(parentMatcher.record),parentMatcher=parentMatcher.parent;return{name:name$2,path,params,matched,meta:mergeMetaFields(matched)}}routes$1.forEach(route=>addRoute(route));function clearRoutes(){matchers.length=0,matcherMap.clear()}return{addRoute,resolve:resolve$1,removeRoute,clearRoutes,getRoutes,getRecordMatcher}}function paramsFromLocation(params,keys$3){let newParams={};for(let key$1 of keys$3)key$1 in params&&(newParams[key$1]=params[key$1]);return newParams}function normalizeRouteRecord(record){let normalized={path:record.path,redirect:record.redirect,name:record.name,meta:record.meta||{},aliasOf:record.aliasOf,beforeEnter:record.beforeEnter,props:normalizeRecordProps(record),children:record.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in record?record.components||null:record.component&&{default:record.component}};return Object.defineProperty(normalized,`mods`,{value:{}}),normalized}function normalizeRecordProps(record){let propsObject={},props=record.props||!1;if(`component`in record)propsObject.default=props;else for(let name$2 in record.components)propsObject[name$2]=typeof props==`object`?props[name$2]:props;return propsObject}function isAliasRecord(record){for(;record;){if(record.record.aliasOf)return!0;record=record.parent}return!1}function mergeMetaFields(matched){return matched.reduce((meta,record)=>assign$1(meta,record.meta),{})}function mergeOptions(defaults,partialOptions){let options$1={};for(let key$1 in defaults)options$1[key$1]=key$1 in partialOptions?partialOptions[key$1]:defaults[key$1];return options$1}function findInsertionIndex(matcher,matchers){let lower=0,upper=matchers.length;for(;lower!==upper;){let mid=lower+upper>>1,sortOrder=comparePathParserScore(matcher,matchers[mid]);sortOrder<0?upper=mid:lower=mid+1}let insertionAncestor=getInsertionAncestor(matcher);return insertionAncestor&&(upper=matchers.lastIndexOf(insertionAncestor,upper-1)),upper}function getInsertionAncestor(matcher){let ancestor=matcher;for(;ancestor=ancestor.parent;)if(isMatchable(ancestor)&&comparePathParserScore(matcher,ancestor)===0)return ancestor}function isMatchable({record}){return!!(record.name||record.components&&Object.keys(record.components).length||record.redirect)}function parseQuery(search$1){let query={};if(search$1===``||search$1===`?`)return query;let hasLeadingIM=search$1[0]===`?`,searchParams=(hasLeadingIM?search$1.slice(1):search$1).split(`&`);for(let i$1=0;i$1v$1&&encodeQueryValue(v$1)):[value$1&&encodeQueryValue(value$1)];values.forEach(value$2=>{value$2!==void 0&&(search$1+=(search$1.length?`&`:``)+key$1,value$2!=null&&(search$1+=`=`+value$2))})}return search$1}function normalizeQuery(query){let normalizedQuery={};for(let key$1 in query){let value$1=query[key$1];value$1!==void 0&&(normalizedQuery[key$1]=isArray$3(value$1)?value$1.map(v$1=>v$1==null?null:``+v$1):value$1==null?value$1:``+value$1)}return normalizedQuery}const matchedRouteKey=Symbol(``),viewDepthKey=Symbol(``),routerKey=Symbol(``),routeLocationKey=Symbol(``),routerViewLocationKey=Symbol(``);function useCallbacks(){let handlers$3=[];function add$1(handler){return handlers$3.push(handler),()=>{let i$1=handlers$3.indexOf(handler);i$1>-1&&handlers$3.splice(i$1,1)}}function reset(){handlers$3=[]}return{add:add$1,list:()=>handlers$3.slice(),reset}}function guardToPromiseFn(guard,to$1,from,record,name$2,runWithContext=fn$5=>fn$5()){let enterCallbackArray=record&&(record.enterCallbacks[name$2]=record.enterCallbacks[name$2]||[]);return()=>new Promise((resolve$1,reject)=>{let next=valid$1=>{valid$1===!1?reject(createRouterError(4,{from,to:to$1})):valid$1 instanceof Error?reject(valid$1):isRouteLocation(valid$1)?reject(createRouterError(2,{from:to$1,to:valid$1})):(enterCallbackArray&&record.enterCallbacks[name$2]===enterCallbackArray&&typeof valid$1==`function`&&enterCallbackArray.push(valid$1),resolve$1())},guardReturn=runWithContext(()=>guard.call(record&&record.instances[name$2],to$1,from,next)),guardCall=Promise.resolve(guardReturn);guard.length<3&&(guardCall=guardCall.then(next)),guardCall.catch(err=>reject(err))})}function extractComponentsGuards(matched,guardType,to$1,from,runWithContext=fn$5=>fn$5()){let guards=[];for(let record of matched)for(let name$2 in record.components){let rawComponent=record.components[name$2];if(guardType!==`beforeRouteEnter`&&!record.instances[name$2])continue;if(isRouteComponent(rawComponent)){let options$1=rawComponent.__vccOpts||rawComponent,guard=options$1[guardType];guard&&guards.push(guardToPromiseFn(guard,to$1,from,record,name$2,runWithContext))}else{let componentPromise=rawComponent();guards.push(()=>componentPromise.then(resolved=>{if(!resolved)throw Error(`Couldn't resolve component "${name$2}" at "${record.path}"`);let resolvedComponent=isESModule(resolved)?resolved.default:resolved;record.mods[name$2]=resolved,record.components[name$2]=resolvedComponent;let options$1=resolvedComponent.__vccOpts||resolvedComponent,guard=options$1[guardType];return guard&&guardToPromiseFn(guard,to$1,from,record,name$2,runWithContext)()}))}}return guards}function useLink(props){let router$1=inject(routerKey),currentRoute=inject(routeLocationKey),hasPrevious=!1,previousTo=null,route=computed(()=>{let to$1=unref(props.to);return router$1.resolve(to$1)}),activeRecordIndex=computed(()=>{let{matched}=route.value,{length}=matched,routeMatched=matched[length-1],currentMatched=currentRoute.matched;if(!routeMatched||!currentMatched.length)return-1;let index$1=currentMatched.findIndex(isSameRouteRecord.bind(null,routeMatched));if(index$1>-1)return index$1;let parentRecordPath=getOriginalPath(matched[length-2]);return length>1&&getOriginalPath(routeMatched)===parentRecordPath&¤tMatched[currentMatched.length-1].path!==parentRecordPath?currentMatched.findIndex(isSameRouteRecord.bind(null,matched[length-2])):index$1}),isActive=computed(()=>activeRecordIndex.value>-1&&includesParams(currentRoute.params,route.value.params)),isExactActive=computed(()=>activeRecordIndex.value>-1&&activeRecordIndex.value===currentRoute.matched.length-1&&isSameRouteLocationParams(currentRoute.params,route.value.params));function navigate(e$3={}){if(guardEvent(e$3)){let p$5=router$1[unref(props.replace)?`replace`:`push`](unref(props.to)).catch(noop);return props.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>p$5),p$5}return Promise.resolve()}return{route,href:computed(()=>route.value.href),isActive,isExactActive,navigate}}function preferSingleVNode(vnodes){return vnodes.length===1?vnodes[0]:vnodes}const RouterLinkImpl=defineComponent({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink,setup(props,{slots}){let link$1=reactive(useLink(props)),{options:options$1}=inject(routerKey),elClass=computed(()=>({[getLinkClass(props.activeClass,options$1.linkActiveClass,`router-link-active`)]:link$1.isActive,[getLinkClass(props.exactActiveClass,options$1.linkExactActiveClass,`router-link-exact-active`)]:link$1.isExactActive}));return()=>{let children=slots.default&&preferSingleVNode(slots.default(link$1));return props.custom?children:h(`a`,{"aria-current":link$1.isExactActive?props.ariaCurrentValue:null,href:link$1.href,onClick:link$1.navigate,class:elClass.value},children)}}}),RouterLink=RouterLinkImpl;function guardEvent(e$3){if(!(e$3.metaKey||e$3.altKey||e$3.ctrlKey||e$3.shiftKey)&&!e$3.defaultPrevented&&!(e$3.button!==void 0&&e$3.button!==0)){if(e$3.currentTarget&&e$3.currentTarget.getAttribute){let target$1=e$3.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(target$1))return}return e$3.preventDefault&&e$3.preventDefault(),!0}}function includesParams(outer,inner){for(let key$1 in inner){let innerValue=inner[key$1],outerValue=outer[key$1];if(typeof innerValue==`string`){if(innerValue!==outerValue)return!1}else if(!isArray$3(outerValue)||outerValue.length!==innerValue.length||innerValue.some((value$1,i$1)=>value$1!==outerValue[i$1]))return!1}return!0}function getOriginalPath(record){return record?record.aliasOf?record.aliasOf.path:record.path:``}const getLinkClass=(propClass,globalClass,defaultClass)=>propClass??globalClass??defaultClass,RouterViewImpl=defineComponent({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(props,{attrs,slots}){let injectedRoute=inject(routerViewLocationKey),routeToDisplay=computed(()=>props.route||injectedRoute.value),injectedDepth=inject(viewDepthKey,0),depth=computed(()=>{let initialDepth=unref(injectedDepth),{matched}=routeToDisplay.value,matchedRoute;for(;(matchedRoute=matched[initialDepth])&&!matchedRoute.components;)initialDepth++;return initialDepth}),matchedRouteRef=computed(()=>routeToDisplay.value.matched[depth.value]);provide(viewDepthKey,computed(()=>depth.value+1)),provide(matchedRouteKey,matchedRouteRef),provide(routerViewLocationKey,routeToDisplay);let viewRef=ref();return watch(()=>[viewRef.value,matchedRouteRef.value,props.name],([instance,to$1,name$2],[oldInstance,from,oldName])=>{to$1&&(to$1.instances[name$2]=instance,from&&from!==to$1&&instance&&instance===oldInstance&&(to$1.leaveGuards.size||(to$1.leaveGuards=from.leaveGuards),to$1.updateGuards.size||(to$1.updateGuards=from.updateGuards))),instance&&to$1&&(!from||!isSameRouteRecord(to$1,from)||!oldInstance)&&(to$1.enterCallbacks[name$2]||[]).forEach(callback=>callback(instance))},{flush:`post`}),()=>{let route=routeToDisplay.value,currentName=props.name,matchedRoute=matchedRouteRef.value,ViewComponent=matchedRoute&&matchedRoute.components[currentName];if(!ViewComponent)return normalizeSlot(slots.default,{Component:ViewComponent,route});let routePropsOption=matchedRoute.props[currentName],routeProps=routePropsOption?routePropsOption===!0?route.params:typeof routePropsOption==`function`?routePropsOption(route):routePropsOption:null,onVnodeUnmounted=vnode=>{vnode.component.isUnmounted&&(matchedRoute.instances[currentName]=null)},component=h(ViewComponent,assign$1({},routeProps,attrs,{onVnodeUnmounted,ref:viewRef}));return normalizeSlot(slots.default,{Component:component,route})||component}}});function normalizeSlot(slot,data$10){if(!slot)return null;let slotContent=slot(data$10);return slotContent.length===1?slotContent[0]:slotContent}const RouterView=RouterViewImpl;function createRouter(options$1){let matcher=createRouterMatcher(options$1.routes,options$1),parseQuery$1=options$1.parseQuery||parseQuery,stringifyQuery$1=options$1.stringifyQuery||stringifyQuery,routerHistory=options$1.history,beforeGuards=useCallbacks(),beforeResolveGuards=useCallbacks(),afterGuards=useCallbacks(),currentRoute=shallowRef(START_LOCATION_NORMALIZED),pendingLocation=START_LOCATION_NORMALIZED;isBrowser$1&&options$1.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let normalizeParams=applyToParams.bind(null,paramValue=>``+paramValue),encodeParams=applyToParams.bind(null,encodeParam),decodeParams=applyToParams.bind(null,decode$1);function addRoute(parentOrRoute,route){let parent,record;return isRouteName(parentOrRoute)?(parent=matcher.getRecordMatcher(parentOrRoute),record=route):record=parentOrRoute,matcher.addRoute(record,parent)}function removeRoute(name$2){let recordMatcher=matcher.getRecordMatcher(name$2);recordMatcher&&matcher.removeRoute(recordMatcher)}function getRoutes(){return matcher.getRoutes().map(routeMatcher=>routeMatcher.record)}function hasRoute(name$2){return!!matcher.getRecordMatcher(name$2)}function resolve$1(rawLocation,currentLocation){if(currentLocation=assign$1({},currentLocation||currentRoute.value),typeof rawLocation==`string`){let locationNormalized=parseURL(parseQuery$1,rawLocation,currentLocation.path),matchedRoute$1=matcher.resolve({path:locationNormalized.path},currentLocation),href$1=routerHistory.createHref(locationNormalized.fullPath);return assign$1(locationNormalized,matchedRoute$1,{params:decodeParams(matchedRoute$1.params),hash:decode$1(locationNormalized.hash),redirectedFrom:void 0,href:href$1})}let matcherLocation;if(rawLocation.path!=null)matcherLocation=assign$1({},rawLocation,{path:parseURL(parseQuery$1,rawLocation.path,currentLocation.path).path});else{let targetParams=assign$1({},rawLocation.params);for(let key$1 in targetParams)targetParams[key$1]??delete targetParams[key$1];matcherLocation=assign$1({},rawLocation,{params:encodeParams(targetParams)}),currentLocation.params=encodeParams(currentLocation.params)}let matchedRoute=matcher.resolve(matcherLocation,currentLocation),hash=rawLocation.hash||``;matchedRoute.params=normalizeParams(decodeParams(matchedRoute.params));let fullPath=stringifyURL(stringifyQuery$1,assign$1({},rawLocation,{hash:encodeHash(hash),path:matchedRoute.path})),href=routerHistory.createHref(fullPath);return assign$1({fullPath,hash,query:stringifyQuery$1===stringifyQuery?normalizeQuery(rawLocation.query):rawLocation.query||{}},matchedRoute,{redirectedFrom:void 0,href})}function locationAsObject(to$1){return typeof to$1==`string`?parseURL(parseQuery$1,to$1,currentRoute.value.path):assign$1({},to$1)}function checkCanceledNavigation(to$1,from){if(pendingLocation!==to$1)return createRouterError(8,{from,to:to$1})}function push$1(to$1){return pushWithRedirect(to$1)}function replace(to$1){return push$1(assign$1(locationAsObject(to$1),{replace:!0}))}function handleRedirectRecord(to$1){let lastMatched=to$1.matched[to$1.matched.length-1];if(lastMatched&&lastMatched.redirect){let{redirect}=lastMatched,newTargetLocation=typeof redirect==`function`?redirect(to$1):redirect;return typeof newTargetLocation==`string`&&(newTargetLocation=newTargetLocation.includes(`?`)||newTargetLocation.includes(`#`)?newTargetLocation=locationAsObject(newTargetLocation):{path:newTargetLocation},newTargetLocation.params={}),assign$1({query:to$1.query,hash:to$1.hash,params:newTargetLocation.path==null?to$1.params:{}},newTargetLocation)}}function pushWithRedirect(to$1,redirectedFrom){let targetLocation=pendingLocation=resolve$1(to$1),from=currentRoute.value,data$10=to$1.state,force=to$1.force,replace$1=to$1.replace===!0,shouldRedirect=handleRedirectRecord(targetLocation);if(shouldRedirect)return pushWithRedirect(assign$1(locationAsObject(shouldRedirect),{state:typeof shouldRedirect==`object`?assign$1({},data$10,shouldRedirect.state):data$10,force,replace:replace$1}),redirectedFrom||targetLocation);let toLocation=targetLocation;toLocation.redirectedFrom=redirectedFrom;let failure;return!force&&isSameRouteLocation(stringifyQuery$1,from,targetLocation)&&(failure=createRouterError(16,{to:toLocation,from}),handleScroll(from,from,!0,!1)),(failure?Promise.resolve(failure):navigate(toLocation,from)).catch(error=>isNavigationFailure(error)?isNavigationFailure(error,2)?error:markAsReady(error):triggerError(error,toLocation,from)).then(failure$1=>{if(failure$1){if(isNavigationFailure(failure$1,2))return pushWithRedirect(assign$1({replace:replace$1},locationAsObject(failure$1.to),{state:typeof failure$1.to==`object`?assign$1({},data$10,failure$1.to.state):data$10,force}),redirectedFrom||toLocation)}else failure$1=finalizeNavigation(toLocation,from,!0,replace$1,data$10);return triggerAfterEach(toLocation,from,failure$1),failure$1})}function checkCanceledNavigationAndReject(to$1,from){let error=checkCanceledNavigation(to$1,from);return error?Promise.reject(error):Promise.resolve()}function runWithContext(fn$5){let app=installedApps.values().next().value;return app&&typeof app.runWithContext==`function`?app.runWithContext(fn$5):fn$5()}function navigate(to$1,from){let guards,[leavingRecords,updatingRecords,enteringRecords]=extractChangingRecords(to$1,from);guards=extractComponentsGuards(leavingRecords.reverse(),`beforeRouteLeave`,to$1,from);for(let record of leavingRecords)record.leaveGuards.forEach(guard=>{guards.push(guardToPromiseFn(guard,to$1,from))});let canceledNavigationCheck=checkCanceledNavigationAndReject.bind(null,to$1,from);return guards.push(canceledNavigationCheck),runGuardQueue(guards).then(()=>{guards=[];for(let guard of beforeGuards.list())guards.push(guardToPromiseFn(guard,to$1,from));return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).then(()=>{guards=extractComponentsGuards(updatingRecords,`beforeRouteUpdate`,to$1,from);for(let record of updatingRecords)record.updateGuards.forEach(guard=>{guards.push(guardToPromiseFn(guard,to$1,from))});return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).then(()=>{guards=[];for(let record of enteringRecords)if(record.beforeEnter)if(isArray$3(record.beforeEnter))for(let beforeEnter of record.beforeEnter)guards.push(guardToPromiseFn(beforeEnter,to$1,from));else guards.push(guardToPromiseFn(record.beforeEnter,to$1,from));return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).then(()=>(to$1.matched.forEach(record=>record.enterCallbacks={}),guards=extractComponentsGuards(enteringRecords,`beforeRouteEnter`,to$1,from,runWithContext),guards.push(canceledNavigationCheck),runGuardQueue(guards))).then(()=>{guards=[];for(let guard of beforeResolveGuards.list())guards.push(guardToPromiseFn(guard,to$1,from));return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).catch(err=>isNavigationFailure(err,8)?err:Promise.reject(err))}function triggerAfterEach(to$1,from,failure){afterGuards.list().forEach(guard=>runWithContext(()=>guard(to$1,from,failure)))}function finalizeNavigation(toLocation,from,isPush,replace$1,data$10){let error=checkCanceledNavigation(toLocation,from);if(error)return error;let isFirstNavigation=from===START_LOCATION_NORMALIZED,state=isBrowser$1?history.state:{};isPush&&(replace$1||isFirstNavigation?routerHistory.replace(toLocation.fullPath,assign$1({scroll:isFirstNavigation&&state&&state.scroll},data$10)):routerHistory.push(toLocation.fullPath,data$10)),currentRoute.value=toLocation,handleScroll(toLocation,from,isPush,isFirstNavigation),markAsReady()}let removeHistoryListener;function setupListeners(){removeHistoryListener||=routerHistory.listen((to$1,_from,info)=>{if(!router$1.listening)return;let toLocation=resolve$1(to$1),shouldRedirect=handleRedirectRecord(toLocation);if(shouldRedirect){pushWithRedirect(assign$1(shouldRedirect,{replace:!0,force:!0}),toLocation).catch(noop);return}pendingLocation=toLocation;let from=currentRoute.value;isBrowser$1&&saveScrollPosition(getScrollKey(from.fullPath,info.delta),computeScrollPosition()),navigate(toLocation,from).catch(error=>isNavigationFailure(error,12)?error:isNavigationFailure(error,2)?(pushWithRedirect(assign$1(locationAsObject(error.to),{force:!0}),toLocation).then(failure=>{isNavigationFailure(failure,20)&&!info.delta&&info.type===NavigationType.pop&&routerHistory.go(-1,!1)}).catch(noop),Promise.reject()):(info.delta&&routerHistory.go(-info.delta,!1),triggerError(error,toLocation,from))).then(failure=>{failure||=finalizeNavigation(toLocation,from,!1),failure&&(info.delta&&!isNavigationFailure(failure,8)?routerHistory.go(-info.delta,!1):info.type===NavigationType.pop&&isNavigationFailure(failure,20)&&routerHistory.go(-1,!1)),triggerAfterEach(toLocation,from,failure)}).catch(noop)})}let readyHandlers=useCallbacks(),errorListeners=useCallbacks(),ready;function triggerError(error,to$1,from){markAsReady(error);let list$2=errorListeners.list();return list$2.length?list$2.forEach(handler=>handler(error,to$1,from)):console.error(error),Promise.reject(error)}function isReady(){return ready&¤tRoute.value!==START_LOCATION_NORMALIZED?Promise.resolve():new Promise((resolve$2,reject)=>{readyHandlers.add([resolve$2,reject])})}function markAsReady(err){return ready||(ready=!err,setupListeners(),readyHandlers.list().forEach(([resolve$2,reject])=>err?reject(err):resolve$2()),readyHandlers.reset()),err}function handleScroll(to$1,from,isPush,isFirstNavigation){let{scrollBehavior}=options$1;if(!isBrowser$1||!scrollBehavior)return Promise.resolve();let scrollPosition=!isPush&&getSavedScrollPosition(getScrollKey(to$1.fullPath,0))||(isFirstNavigation||!isPush)&&history.state&&history.state.scroll||null;return nextTick().then(()=>scrollBehavior(to$1,from,scrollPosition)).then(position$2=>position$2&&scrollToPosition(position$2)).catch(err=>triggerError(err,to$1,from))}let go=delta=>routerHistory.go(delta),started,installedApps=new Set,router$1={currentRoute,listening:!0,addRoute,removeRoute,clearRoutes:matcher.clearRoutes,hasRoute,getRoutes,resolve:resolve$1,options:options$1,push:push$1,replace,go,back:()=>go(-1),forward:()=>go(1),beforeEach:beforeGuards.add,beforeResolve:beforeResolveGuards.add,afterEach:afterGuards.add,onError:errorListeners.add,isReady,install(app){let router$2=this;app.component(`RouterLink`,RouterLink),app.component(`RouterView`,RouterView),app.config.globalProperties.$router=router$2,Object.defineProperty(app.config.globalProperties,`$route`,{enumerable:!0,get:()=>unref(currentRoute)}),isBrowser$1&&!started&¤tRoute.value===START_LOCATION_NORMALIZED&&(started=!0,push$1(routerHistory.location).catch(err=>{}));let reactiveRoute={};for(let key$1 in START_LOCATION_NORMALIZED)Object.defineProperty(reactiveRoute,key$1,{get:()=>currentRoute.value[key$1],enumerable:!0});app.provide(routerKey,router$2),app.provide(routeLocationKey,shallowReactive(reactiveRoute)),app.provide(routerViewLocationKey,currentRoute);let unmountApp=app.unmount;installedApps.add(app),app.unmount=function(){installedApps.delete(app),installedApps.size<1&&(pendingLocation=START_LOCATION_NORMALIZED,removeHistoryListener&&removeHistoryListener(),removeHistoryListener=null,currentRoute.value=START_LOCATION_NORMALIZED,started=!1,ready=!1),unmountApp()}}};function runGuardQueue(guards){return guards.reduce((promise,guard)=>promise.then(()=>runWithContext(guard)),Promise.resolve())}return router$1}function extractChangingRecords(to$1,from){let leavingRecords=[],updatingRecords=[],enteringRecords=[],len=Math.max(from.matched.length,to$1.matched.length);for(let i$1=0;i$1isSameRouteRecord(record,recordFrom))?updatingRecords.push(recordFrom):leavingRecords.push(recordFrom));let recordTo=to$1.matched[i$1];recordTo&&(from.matched.find(record=>isSameRouteRecord(record,recordTo))||enteringRecords.push(recordTo))}return[leavingRecords,updatingRecords,enteringRecords]}function useRouter(){return inject(routerKey)}function useRoute(_name){return inject(routeLocationKey)}const routes=[{path:`/`,name:`IndexScenePage`,component:()=>__vitePreload(()=>import(`./pages--dRALHez.js`),__vite__mapDeps([5,6,1,2,7,8,9,4,10,11,12])),meta:{layout:`stage`,stageTransition:{name:`bubble-wave-out`}}},{path:`/:all(.*)`,name:`/[...all]`,component:()=>__vitePreload(()=>import(`./_...all_-Cu434aE7.js`),[])},{path:`/audio`,name:`/audio`,component:()=>__vitePreload(()=>import(`./audio-D04pH23-.js`),[])},{path:`/devtools`,children:[{path:`audio-record`,name:`/devtools/audio-record`,component:()=>__vitePreload(()=>import(`./audio-record-BxHzK1uy.js`),[])},{path:`background-remove`,name:`/devtools/background-remove`,component:()=>__vitePreload(()=>import(`./background-remove-BCwtw-uq.js`),__vite__mapDeps([13,14,15]))},{path:`chat`,name:`/devtools/chat`,component:()=>__vitePreload(()=>import(`./chat-DyBPoQrn.js`),[])},{path:`gesture-circle`,name:`/devtools/gesture-circle`,component:()=>__vitePreload(()=>import(`./gesture-circle-D3DL8v2R.js`),__vite__mapDeps([16,6])),meta:{layout:`plain`}},{path:`image`,name:`/devtools/image`,component:()=>__vitePreload(()=>import(`./image-FSHpQQAR.js`),__vite__mapDeps([17,18]))},{path:`polaroid`,name:`/devtools/polaroid`,component:()=>__vitePreload(()=>import(`./polaroid-KOvlyFYP.js`),__vite__mapDeps([19,10,11,12]))},{path:`vibrant`,name:`/devtools/vibrant`,component:()=>__vitePreload(()=>import(`./vibrant-BQJAnvPb.js`),__vite__mapDeps([20,21,15]))}]},{path:`/queue`,name:`/queue`,component:()=>__vitePreload(()=>import(`./queue-CCHh_YlY.js`),[])},{path:`/settings`,children:[{path:``,name:`/settings/`,component:()=>__vitePreload(()=>import(`./settings-2ofGNGd6.js`),__vite__mapDeps([22,6,23])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`airi-card`,children:[{path:``,name:`/settings/airi-card/`,component:()=>__vitePreload(()=>import(`./airi-card-vWWO_DCt.js`),__vite__mapDeps([24,6,25,26,27,28,29,30,31,15])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`components`,children:[{path:`CardCreate`,name:`/settings/airi-card/components/CardCreate`,component:()=>__vitePreload(()=>import(`./CardCreate-DrM4wEtE.js`),__vite__mapDeps([32,25]))},{path:`CardCreationDialog`,name:`/settings/airi-card/components/CardCreationDialog`,component:()=>__vitePreload(()=>import(`./CardCreationDialog-kvoYgWVP.js`),__vite__mapDeps([33,26,27,28]))},{path:`CardDetailDialog`,name:`/settings/airi-card/components/CardDetailDialog`,component:()=>__vitePreload(()=>import(`./CardDetailDialog-Ci9-z9G1.js`),__vite__mapDeps([34,29,30,27]))},{path:`CardListItem`,name:`/settings/airi-card/components/CardListItem`,component:()=>__vitePreload(()=>import(`./CardListItem-DZ5x2i0z.js`),__vite__mapDeps([35,31]))},{path:`DeleteCardDialog`,name:`/settings/airi-card/components/DeleteCardDialog`,component:()=>__vitePreload(()=>import(`./DeleteCardDialog-CJNH2uKY.js`),__vite__mapDeps([36,30,27]))}]}]},{path:`appearance`,children:[{path:``,name:`/settings/appearance/`,component:()=>__vitePreload(()=>import(`./appearance-DE27mPrm.js`),__vite__mapDeps([37,6])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}},{path:`color-scheme`,name:`/settings/appearance/color-scheme`,component:()=>__vitePreload(()=>import(`./color-scheme-DCNDjPVh.js`),__vite__mapDeps([38,6,39,27,40])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`developer`,name:`/settings/appearance/developer`,component:()=>__vitePreload(()=>import(`./developer-Rn-HQane.js`),__vite__mapDeps([41,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`general`,name:`/settings/appearance/general`,component:()=>__vitePreload(()=>import(`./general-BDYMIhOo.js`),__vite__mapDeps([42,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`memory`,children:[{path:``,name:`/settings/memory/`,component:()=>__vitePreload(()=>import(`./memory-aTUtni3K.js`),__vite__mapDeps([43,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`models`,children:[{path:``,name:`/settings/models/`,component:()=>__vitePreload(()=>import(`./models-ceI-TpWV.js`),__vite__mapDeps([44,6,23,39,27,45,10,11,12,21,46])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}}]},{path:`modules`,children:[{path:``,name:`/settings/modules/`,component:()=>__vitePreload(()=>import(`./modules-D4OJ1522.js`),__vite__mapDeps([47,6,23,45])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}},{path:`consciousness`,name:`/settings/modules/consciousness`,component:()=>__vitePreload(()=>import(`./consciousness-Cnr7fcj_.js`),__vite__mapDeps([48,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`hearing`,name:`/settings/modules/hearing`,component:()=>__vitePreload(()=>import(`./hearing-Bb4rC1nx.js`),__vite__mapDeps([49,6,14])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`memory-long-term`,name:`/settings/modules/memory-long-term`,component:()=>__vitePreload(()=>import(`./memory-long-term-CPfD2kUn.js`),__vite__mapDeps([50,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`memory-short-term`,name:`/settings/modules/memory-short-term`,component:()=>__vitePreload(()=>import(`./memory-short-term-DFRE0wky.js`),__vite__mapDeps([51,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`speech`,name:`/settings/modules/speech`,component:()=>__vitePreload(()=>import(`./speech-5aOToTwY.js`),__vite__mapDeps([52,6,8,53])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`providers`,children:[{path:``,name:`/settings/providers/`,component:()=>__vitePreload(()=>import(`./providers-C1BmhIzi.js`),__vite__mapDeps([54,6,23,45])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}},{path:`alibaba-cloud-model-studio`,name:`/settings/providers/alibaba-cloud-model-studio`,component:()=>__vitePreload(()=>import(`./alibaba-cloud-model-studio-t5KYUhHp.js`),__vite__mapDeps([55,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`anthropic`,name:`/settings/providers/anthropic`,component:()=>__vitePreload(()=>import(`./anthropic-BL9968xm.js`),__vite__mapDeps([56,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`cloudflare-workers-ai`,name:`/settings/providers/cloudflare-workers-ai`,component:()=>__vitePreload(()=>import(`./cloudflare-workers-ai-Cd0fSx03.js`),__vite__mapDeps([57,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`deepseek`,name:`/settings/providers/deepseek`,component:()=>__vitePreload(()=>import(`./deepseek-DjD7u8Sw.js`),__vite__mapDeps([58,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`elevenlabs`,name:`/settings/providers/elevenlabs`,component:()=>__vitePreload(()=>import(`./elevenlabs-DQkIgILi.js`),__vite__mapDeps([59,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`featherless-ai`,name:`/settings/providers/featherless-ai`,component:()=>__vitePreload(()=>import(`./featherless-ai-CnXf0hdU.js`),__vite__mapDeps([60,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`fireworks-ai`,name:`/settings/providers/fireworks-ai`,component:()=>__vitePreload(()=>import(`./fireworks-ai-CeuUFiNS.js`),__vite__mapDeps([61,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`google-generative-ai`,name:`/settings/providers/google-generative-ai`,component:()=>__vitePreload(()=>import(`./google-generative-ai-BGBjFWON.js`),__vite__mapDeps([62,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`microsoft-speech`,name:`/settings/providers/microsoft-speech`,component:()=>__vitePreload(()=>import(`./microsoft-speech-Bp0hO7OG.js`),__vite__mapDeps([63,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`mistral-ai`,name:`/settings/providers/mistral-ai`,component:()=>__vitePreload(()=>import(`./mistral-ai-DCNKx3Gc.js`),__vite__mapDeps([64,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`moonshot-ai`,name:`/settings/providers/moonshot-ai`,component:()=>__vitePreload(()=>import(`./moonshot-ai-BdPynK2u.js`),__vite__mapDeps([65,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`novita-ai`,name:`/settings/providers/novita-ai`,component:()=>__vitePreload(()=>import(`./novita-ai-D-ZB8cQc.js`),__vite__mapDeps([66,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`ollama`,name:`/settings/providers/ollama`,component:()=>__vitePreload(()=>import(`./ollama-BdYMmRmG.js`),__vite__mapDeps([67,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openai`,name:`/settings/providers/openai`,component:()=>__vitePreload(()=>import(`./openai-D2msF8K1.js`),__vite__mapDeps([68,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openai-audio-speech`,name:`/settings/providers/openai-audio-speech`,component:()=>__vitePreload(()=>import(`./openai-audio-speech-Dozx0Ri_.js`),__vite__mapDeps([69,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openai-audio-transcription`,name:`/settings/providers/openai-audio-transcription`,component:()=>__vitePreload(()=>import(`./openai-audio-transcription--fAkPCjL.js`),__vite__mapDeps([70,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openrouter-ai`,name:`/settings/providers/openrouter-ai`,component:()=>__vitePreload(()=>import(`./openrouter-ai-EiSvPQWH.js`),__vite__mapDeps([71,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`player2`,name:`/settings/providers/player2`,component:()=>__vitePreload(()=>import(`./player2-D97DJZ76.js`),__vite__mapDeps([72,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`player2-speech`,name:`/settings/providers/player2-speech`,component:()=>__vitePreload(()=>import(`./player2-speech-CSaGh3NS.js`),__vite__mapDeps([73,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`together-ai`,name:`/settings/providers/together-ai`,component:()=>__vitePreload(()=>import(`./together-ai-Cl6VxBMw.js`),__vite__mapDeps([74,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`volcengine`,name:`/settings/providers/volcengine`,component:()=>__vitePreload(()=>import(`./volcengine-DjrEGih7.js`),__vite__mapDeps([75,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`xai`,name:`/settings/providers/xai`,component:()=>__vitePreload(()=>import(`./xai-5so4YKVK.js`),__vite__mapDeps([76,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`scene`,children:[{path:``,name:`/settings/scene/`,component:()=>__vitePreload(()=>import(`./scene-CyZR35vM.js`),__vite__mapDeps([77,6,23,45])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}}]}]},{path:`/stage`,children:[{path:``,name:`StageScenePage`,component:()=>__vitePreload(()=>import(`./stage-BiKoENIs.js`),__vite__mapDeps([78,6,1,2,7,8,9,10,11,12])),meta:{layout:`stage`,stageTransition:{name:`bubble-wave-out`}}}]},{path:`/test`,children:[{path:`filter-message`,name:`/test/filter-message`,component:()=>__vitePreload(()=>import(`./filter-message-Cz8_UJue.js`),__vite__mapDeps([79,8,53]))},{path:`queues`,children:[{path:`delays`,name:`/test/queues/delays`,component:()=>__vitePreload(()=>import(`./delays-DIgAwRJp.js`),__vite__mapDeps([80,8,53]))},{path:`emotions`,name:`/test/queues/emotions`,component:()=>__vitePreload(()=>import(`./emotions-Bvj1954O.js`),__vite__mapDeps([81,8,53]))},{path:`messages`,name:`/test/queues/messages`,component:()=>__vitePreload(()=>import(`./messages-BIOkfqJ8.js`),__vite__mapDeps([82,8,53]))}]}]}];var AudioSpectrum_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`AudioSpectrum`,props:{stream:{},bars:{default:32},minFreq:{default:60},maxFreq:{default:4e3}},setup(__props){let props=__props,frequencies=ref(Array.from({length:props.bars}).fill(0));onMounted(()=>{handleAnalyze()}),watch(()=>props.stream,()=>{handleAnalyze()});function handleAnalyze(){if(!props.stream)return;let audioContext=new(window.AudioContext||window.webkitAudioContext),source=audioContext.createMediaStreamSource(props.stream),analyser=audioContext.createAnalyser();analyser.fftSize=2048,source.connect(analyser);let bufferLength=analyser.frequencyBinCount,dataArray=new Uint8Array(bufferLength),sampleRate=audioContext.sampleRate,frequencyResolution=sampleRate/analyser.fftSize,minBin=Math.floor(props.minFreq/frequencyResolution),maxBin=Math.floor(props.maxFreq/frequencyResolution),usableBins=maxBin-minBin,binsPerBar=Math.floor(usableBins/props.bars),analyze=()=>{try{requestAnimationFrame(analyze),analyser.getByteFrequencyData(dataArray);let bars=Array.from({length:props.bars}).fill(0);for(let i$1=0;i$1renderSlot(_ctx.$slots,`default`,{frequencies:frequencies.value})}}),AudioSpectrum_default=AudioSpectrum_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$41={"h-full":``,flex:``,"items-center":``,"gap-1":``},AMPLIFICATION=5;var AudioSpectrumVisualizer_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`AudioSpectrumVisualizer`,props:{frequencies:{},barsClass:{}},setup(__props){let props=__props;function getReductionFactor(index$1,totalBars){let minFactor=.1,maxFactor=1;return minFactor+(maxFactor-minFactor)*(index$1/totalBars)}function getBarHeight(frequency,index$1){let reductionFactor=getReductionFactor(index$1,props.frequencies.length);return Math.min(100,Math.max(10,frequency*100*AMPLIFICATION*reductionFactor))}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$41,[(openBlock(!0),createElementBlock(Fragment,null,renderList(_ctx.frequencies,(frequency,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,"h-full":``,flex:``,"flex-1":``,"items-end":``},[createBaseVNode(`div`,{transition:`all 100 ease-in-out`,"mx-auto":``,"my-0":``,"w-full":``,"rounded-full":``,class:normalizeClass(_ctx.barsClass),style:normalizeStyle({height:`${getBarHeight(frequency,index$1)}%`})},null,6)]))),128))]))}}),AudioSpectrumVisualizer_default=AudioSpectrumVisualizer_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$40={key:0,class:`mb-2 flex items-center justify-between`},_hoisted_2$27={class:`text-sm font-medium`},_hoisted_3$21={class:`text-sm text-neutral-500`};var LevelMeter_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`LevelMeter`,props:{level:{},min:{default:0},max:{default:100},numBars:{default:20},label:{default:`Level`},unit:{default:`%`},height:{default:24},showHeader:{type:Boolean,default:!0},animationSpeed:{default:75},colorThresholds:{default:()=>[{value:60,color:`bg-green-500`},{value:80,color:`bg-yellow-500`},{value:100,color:`bg-red-500`}]},formatValue:{}},setup(__props){let props=__props,levelBars=computed(()=>{let normalizedLevel=Math.max(0,Math.min(100,(props.level-props.min)/(props.max-props.min)*100)),activeBars=Math.floor(normalizedLevel/100*props.numBars);return Array.from({length:props.numBars},(_$2,i$1)=>({active:i$1a$2.value-b$3.value);for(let threshold of thresholds)if(barLevel<=threshold.value)return threshold.color;return(_thresholds=thresholds[thresholds.length-1])?.color||`bg-green-500`}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,null,[_ctx.showHeader?(openBlock(),createElementBlock(`div`,_hoisted_1$40,[createBaseVNode(`span`,_hoisted_2$27,toDisplayString(_ctx.label),1),createBaseVNode(`span`,_hoisted_3$21,toDisplayString(_ctx.formatValue?_ctx.formatValue(_ctx.level):`${Math.round(_ctx.level)}${_ctx.unit}`),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,{class:`flex items-end gap-1 rounded bg-neutral-200/45 p-1 dark:bg-neutral-700`,style:normalizeStyle({height:`${_ctx.height}px`})},[(openBlock(!0),createElementBlock(Fragment,null,renderList(levelBars.value,(bar,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,class:normalizeClass([`flex-1 rounded-sm transition-all`,[bar.active?getBarColor(index$1,bar.level):`bg-neutral-200 dark:bg-neutral-600`,`duration-${_ctx.animationSpeed}`]]),style:normalizeStyle({height:bar.active?`100%`:`20%`})},null,6))),128))],4)]))}}),LevelMeter_default=LevelMeter_vue_vue_type_script_setup_true_lang_default,Volumed_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Volumed`,props:{perspective:{},transform:{}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`volumed`,style:normalizeStyle({perspective:`${_ctx.perspective}px`,transform:_ctx.transform})},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],4))}}),__plugin_vue_export_helper_default=(sfc,props)=>{let target$1=sfc.__vccOpts||sfc;for(let[key$1,val]of props)target$1[key$1]=val;return target$1},Volumed_default=__plugin_vue_export_helper_default(Volumed_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-d8ce56aa`]]),CursorMomentum_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`CursorMomentum`,props:{baseSpeed:{default:.1},friction:{default:.95},momentumFactor:{default:.005}},setup(__props,{expose:__expose}){let props=__props,momentum=ref(1),currentValue=ref(0),lastTimestamp=0,FRICTION=toRef(()=>props.friction),BASE_SPEED=toRef(()=>props.baseSpeed),MOMENTUM_FACTOR=toRef(()=>props.momentumFactor);function updateMomentum(timestamp$2){lastTimestamp||=timestamp$2;let deltaTime=timestamp$2-lastTimestamp;lastTimestamp=timestamp$2,momentum.value=BASE_SPEED.value+(momentum.value-BASE_SPEED.value)*FRICTION.value,currentValue.value+=momentum.value*deltaTime,requestAnimationFrame(updateMomentum)}function handleMouseMove(event){let speed=Math.sqrt(event.movementX**2+event.movementY**2);momentum.value+=speed*MOMENTUM_FACTOR.value}return onMounted(()=>{window.addEventListener(`mousemove`,handleMouseMove),requestAnimationFrame(updateMomentum)}),onUnmounted(()=>{window.removeEventListener(`mousemove`,handleMouseMove)}),__expose({momentum,currentValue}),(_ctx,_cache$1)=>renderSlot(_ctx.$slots,`default`,{momentum:momentum.value,currentValue:currentValue.value})}}),CursorMomentum_default=CursorMomentum_vue_vue_type_script_setup_true_lang_default,TestDummyMarkerFlat_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TestDummyMarkerFlat`,props:{size:{}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`test-dummy-flat`,style:normalizeStyle({width:`${_ctx.size}px`,height:`${_ctx.size}px`})},_cache$1[0]||=[createBaseVNode(`div`,{class:`marker`},null,-1)],4))}}),TestDummyMarkerFlat_default=__plugin_vue_export_helper_default(TestDummyMarkerFlat_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-28f8c660`]]),TestDummyMarker_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TestDummyMarker`,setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(CursorMomentum_default,{"base-speed":.1,friction:.95,"momentum-factor":5e-4},{default:withCtx(({currentValue})=>[createVNode(Volumed_default,{perspective:800,transform:`rotateX(45deg) translateY(3px)`},{default:withCtx(()=>[createVNode(TestDummyMarkerFlat_default,{size:24,style:normalizeStyle({transform:`rotate(${currentValue}deg)`})},null,8,[`style`])]),_:2},1024)]),_:1}))}}),TestDummyMarker_default=TestDummyMarker_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$39={key:0,class:`mb-2 flex items-center justify-between`},_hoisted_2$26={class:`text-sm font-medium`},_hoisted_3$20={class:`text-sm text-neutral-500`},_hoisted_4$18={key:1,class:`mt-1 flex gap-3 text-xs text-neutral-500`},_hoisted_5$15={class:`flex items-center gap-1`},_hoisted_6$13={class:`flex items-center gap-1`},_hoisted_7$11={class:`flex items-center gap-1`};var ThresholdMeter_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ThresholdMeter`,props:{value:{},threshold:{},min:{default:0},max:{default:1},numBars:{default:20},label:{default:`Value`},unit:{default:`%`},precision:{default:1},height:{default:24},showHeader:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},animationSpeed:{default:100},belowThresholdClass:{default:`bg-primary-300 dark:bg-primary-600`},aboveThresholdClass:{default:`bg-green-500`},thresholdBarClass:{default:`bg-white dark:bg-neutral-800`},inactiveBarClass:{default:`bg-neutral-300 dark:bg-neutral-600`},belowLabel:{default:`Below`},aboveLabel:{default:`Above`},thresholdLabel:{default:`Threshold`},formatValue:{}},setup(__props){let props=__props,thresholdBars=computed(()=>{let normalizedValue=Math.max(0,Math.min(1,(props.value-props.min)/(props.max-props.min))),normalizedThreshold=Math.max(0,Math.min(1,(props.threshold-props.min)/(props.max-props.min))),activeBars=Math.floor(normalizedValue*props.numBars),thresholdBar=Math.floor(normalizedThreshold*props.numBars);return Array.from({length:props.numBars},(_$2,i$1)=>({active:i$1=thresholdBar,isBelowThreshold:i$1(openBlock(),createElementBlock(`div`,null,[_ctx.showHeader?(openBlock(),createElementBlock(`div`,_hoisted_1$39,[createBaseVNode(`span`,_hoisted_2$26,toDisplayString(_ctx.label),1),createBaseVNode(`span`,_hoisted_3$20,toDisplayString(_ctx.formatValue?_ctx.formatValue(_ctx.value):`${(_ctx.value*100).toFixed(_ctx.precision)}${_ctx.unit}`),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,{class:`flex items-end gap-1 rounded bg-neutral-200/45 p-1 p-1 dark:bg-neutral-700`,style:normalizeStyle({height:`${_ctx.height}px`})},[(openBlock(!0),createElementBlock(Fragment,null,renderList(thresholdBars.value,(bar,index$1)=>(openBlock(),createElementBlock(`div`,{key:`threshold-${index$1}`,class:normalizeClass([`flex-1 rounded-sm transition-all`,[bar.isThreshold?_ctx.thresholdBarClass:bar.isAboveThreshold?_ctx.aboveThresholdClass:bar.isBelowThreshold?_ctx.belowThresholdClass:_ctx.inactiveBarClass,`duration-${_ctx.animationSpeed}`]]),style:normalizeStyle({height:bar.active||bar.isThreshold?`100%`:`20%`})},null,6))),128))],4),_ctx.showLegend?(openBlock(),createElementBlock(`div`,_hoisted_4$18,[createBaseVNode(`span`,_hoisted_5$15,[createBaseVNode(`div`,{class:normalizeClass(`inline-block h-0.5lh w-1lh rounded-full ${_ctx.belowThresholdClass}`)},null,2),createTextVNode(` `+toDisplayString(_ctx.belowLabel),1)]),createBaseVNode(`span`,_hoisted_6$13,[createBaseVNode(`div`,{class:normalizeClass(`inline-block h-0.5lh w-1lh rounded-full border border-neutral-400 ${_ctx.thresholdBarClass}`)},null,2),createTextVNode(` `+toDisplayString(_ctx.thresholdLabel),1)]),createBaseVNode(`span`,_hoisted_7$11,[createBaseVNode(`div`,{class:normalizeClass(`inline-block h-0.5lh w-1lh rounded-full ${_ctx.aboveThresholdClass}`)},null,2),createTextVNode(` `+toDisplayString(_ctx.aboveLabel),1)])])):createCommentVNode(``,!0)]))}}),ThresholdMeter_default=ThresholdMeter_vue_vue_type_script_setup_true_lang_default;const parseNumber=(color$2,len)=>{if(typeof color$2==`number`){if(len===3)return{mode:`rgb`,r:(color$2>>8&15|color$2>>4&240)/255,g:(color$2>>4&15|color$2&240)/255,b:(color$2&15|color$2<<4&240)/255};if(len===4)return{mode:`rgb`,r:(color$2>>12&15|color$2>>8&240)/255,g:(color$2>>8&15|color$2>>4&240)/255,b:(color$2>>4&15|color$2&240)/255,alpha:(color$2&15|color$2<<4&240)/255};if(len===6)return{mode:`rgb`,r:(color$2>>16&255)/255,g:(color$2>>8&255)/255,b:(color$2&255)/255};if(len===8)return{mode:`rgb`,r:(color$2>>24&255)/255,g:(color$2>>16&255)/255,b:(color$2>>8&255)/255,alpha:(color$2&255)/255}}};var parseNumber_default=parseNumber;const named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};var named_default=named;const parseNamed=color$2=>parseNumber_default(named_default[color$2.toLowerCase()],6);var parseNamed_default=parseNamed;const hex=/^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i,parseHex=color$2=>{let match;return(match=color$2.match(hex))?parseNumber_default(parseInt(match[1],16),match[1].length):void 0};var parseHex_default=parseHex;const num$1=`([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)`,num_none=`(?:${num$1}|none)`,per=`${num$1}%`,per_none=`(?:${num$1}%|none)`,num_per=`(?:${num$1}%|${num$1})`,num_per_none=`(?:${num$1}%|${num$1}|none)`,hue=`(?:${num$1}(deg|grad|rad|turn)|${num$1})`,hue_none=`(?:${num$1}(deg|grad|rad|turn)|${num$1}|none)`,c$2=`\\s*,\\s*`,rx_num_per_none=RegExp(`^`+num_per_none+`$`),rgb_num_old=RegExp(`^rgba?\\(\\s*${num$1}${c$2}${num$1}${c$2}${num$1}\\s*(?:,\\s*${num_per}\\s*)?\\)$`),rgb_per_old=RegExp(`^rgba?\\(\\s*${per}${c$2}${per}${c$2}${per}\\s*(?:,\\s*${num_per}\\s*)?\\)$`),parseRgbLegacy=color$2=>{let res={mode:`rgb`},match;if(match=color$2.match(rgb_num_old))match[1]!==void 0&&(res.r=match[1]/255),match[2]!==void 0&&(res.g=match[2]/255),match[3]!==void 0&&(res.b=match[3]/255);else if(match=color$2.match(rgb_per_old))match[1]!==void 0&&(res.r=match[1]/100),match[2]!==void 0&&(res.g=match[2]/100),match[3]!==void 0&&(res.b=match[3]/100);else return;return match[4]===void 0?match[5]!==void 0&&(res.alpha=Math.max(0,Math.min(1,+match[5]))):res.alpha=Math.max(0,Math.min(1,match[4]/100)),res};var parseRgbLegacy_default=parseRgbLegacy;const prepare=(color$2,mode)=>color$2===void 0?void 0:typeof color$2==`object`?color$2.mode===void 0?mode?{...color$2,mode}:void 0:color$2:parse_default(color$2);var _prepare_default=prepare;const converter=(target_mode=`rgb`)=>color$2=>(color$2=_prepare_default(color$2,target_mode))===void 0?void 0:color$2.mode===target_mode?color$2:converters[color$2.mode][target_mode]?converters[color$2.mode][target_mode](color$2):target_mode===`rgb`?converters[color$2.mode].rgb(color$2):converters.rgb[target_mode](converters[color$2.mode].rgb(color$2));var converter_default=converter;const converters={},modes={},parsers=[],colorProfiles={},identity=v$1=>v$1,useMode=definition$29=>(converters[definition$29.mode]={...converters[definition$29.mode],...definition$29.toMode},Object.keys(definition$29.fromMode||{}).forEach(k$4=>{converters[k$4]||(converters[k$4]={}),converters[k$4][definition$29.mode]=definition$29.fromMode[k$4]}),definition$29.ranges||={},definition$29.difference||={},definition$29.channels.forEach(channel=>{if(definition$29.ranges[channel]===void 0&&(definition$29.ranges[channel]=[0,1]),!definition$29.interpolate[channel])throw Error(`Missing interpolator for: ${channel}`);typeof definition$29.interpolate[channel]==`function`&&(definition$29.interpolate[channel]={use:definition$29.interpolate[channel]}),definition$29.interpolate[channel].fixup||(definition$29.interpolate[channel].fixup=identity)}),modes[definition$29.mode]=definition$29,(definition$29.parse||[]).forEach(parser=>{useParser(parser,definition$29.mode)}),converter_default(definition$29.mode)),getMode=mode=>modes[mode],useParser=(parser,mode)=>{if(typeof parser==`string`){if(!mode)throw Error(`'mode' required when 'parser' is a string`);colorProfiles[parser]=mode}else typeof parser==`function`&&parsers.indexOf(parser)<0&&parsers.push(parser)},IdentStartCodePoint=/[^\x00-\x7F]|[a-zA-Z_]/,IdentCodePoint=/[^\x00-\x7F]|[-\w]/,Tok={Function:`function`,Ident:`ident`,Number:`number`,Percentage:`percentage`,ParenClose:`)`,None:`none`,Hue:`hue`,Alpha:`alpha`};let _i=0;function is_num(chars){let ch=chars[_i],ch1=chars[_i+1];return ch===`-`||ch===`+`?/\d/.test(ch1)||ch1===`.`&&/\d/.test(chars[_i+2]):ch===`.`?/\d/.test(ch1):/\d/.test(ch)}function is_ident(chars){if(_i>=chars.length)return!1;let ch=chars[_i];if(IdentStartCodePoint.test(ch))return!0;if(ch===`-`){if(chars.length-_i<2)return!1;let ch1=chars[_i+1];return!!(ch1===`-`||IdentStartCodePoint.test(ch1))}return!1}const huenits={deg:1,rad:180/Math.PI,grad:9/10,turn:360};function num(chars){let value$1=``;if((chars[_i]===`-`||chars[_i]===`+`)&&(value$1+=chars[_i++]),value$1+=digits(chars),chars[_i]===`.`&&/\d/.test(chars[_i+1])&&(value$1+=chars[_i++]+digits(chars)),(chars[_i]===`e`||chars[_i]===`E`)&&((chars[_i+1]===`-`||chars[_i+1]===`+`)&&/\d/.test(chars[_i+2])?value$1+=chars[_i++]+chars[_i++]+digits(chars):/\d/.test(chars[_i+1])&&(value$1+=chars[_i++]+digits(chars))),is_ident(chars)){let id=ident(chars);return id===`deg`||id===`rad`||id===`turn`||id===`grad`?{type:Tok.Hue,value:value$1*huenits[id]}:void 0}return chars[_i]===`%`?(_i++,{type:Tok.Percentage,value:+value$1}):{type:Tok.Number,value:+value$1}}function digits(chars){let v$1=``;for(;/\d/.test(chars[_i]);)v$1+=chars[_i++];return v$1}function ident(chars){let v$1=``;for(;_istore[key$1],set(value$2){store[key$1]=value$2}}):(isRef(value$1)||isReactive(value$1))&&(refs[key$1]=toRef(store,key$1))}return refs}const scriptRel=`modulepreload`,assetsURL=function(dep){return`/`+dep},seen={},__vitePreload=function(baseModule,deps,importerUrl){let promise=Promise.resolve();if(deps&&deps.length>0){let links=document.getElementsByTagName(`link`),cspNonceMeta=document.querySelector(`meta[property=csp-nonce]`),cspNonce=cspNonceMeta?.nonce||cspNonceMeta?.getAttribute(`nonce`);function allSettled(promises$2){return Promise.all(promises$2.map(p$1$1=>Promise.resolve(p$1$1).then(value$1=>({status:`fulfilled`,value:value$1}),reason=>({status:`rejected`,reason}))))}promise=allSettled(deps.map(dep=>{if(dep=assetsURL(dep,importerUrl),dep in seen)return;seen[dep]=!0;let isCss=dep.endsWith(`.css`),cssSelector=isCss?`[rel="stylesheet"]`:``,isBaseRelative=!!importerUrl;if(isBaseRelative)for(let i$1=links.length-1;i$1>=0;i$1--){let link$1$1=links[i$1];if(link$1$1.href===dep&&(!isCss||link$1$1.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${dep}"]${cssSelector}`))return;let link$1=document.createElement(`link`);if(link$1.rel=isCss?`stylesheet`:scriptRel,isCss||(link$1.as=`script`),link$1.crossOrigin=``,link$1.href=dep,cspNonce&&link$1.setAttribute(`nonce`,cspNonce),document.head.appendChild(link$1),isCss)return new Promise((res,rej)=>{link$1.addEventListener(`load`,res),link$1.addEventListener(`error`,()=>rej(Error(`Unable to preload CSS for ${dep}`)))})}))}function handlePreloadError(err$2){let e$1$1=new Event(`vite:preloadError`,{cancelable:!0});if(e$1$1.payload=err$2,window.dispatchEvent(e$1$1),!e$1$1.defaultPrevented)throw err$2}return promise.then(res=>{for(let item of res||[]){if(item.status!==`rejected`)continue;handlePreloadError(item.reason)}return baseModule().catch(handlePreloadError)})},setupLayouts=routes$1=>{let layouts={},modules=Object.assign({"/src/layouts/default.vue":()=>__vitePreload(()=>import(`./default-B3hrbX4E.js`),__vite__mapDeps([0,1,2])),"/src/layouts/home.vue":()=>__vitePreload(()=>import(`./home-C5vBXnsS.js`),[]),"/src/layouts/plain.vue":()=>__vitePreload(()=>import(`./plain-DBLy4JhS.js`),[]),"/src/layouts/settings.vue":()=>__vitePreload(()=>import(`./settings-BmSeK43T.js`),__vite__mapDeps([3,1,2,4])),"/src/layouts/stage.vue":()=>__vitePreload(()=>import(`./stage-67_1mIFF.js`),[])});Object.entries(modules).forEach(([name$2,module$1])=>{let key$1=name$2.replace(`/src/layouts/`,``).replace(`.vue`,``);layouts[key$1]=module$1});function deepSetupLayout(routes$2,top=!0){return routes$2.map(route=>{if(route.children?.length>0&&(route.children=deepSetupLayout(route.children,!1)),top){let skipLayout=!route.component&&route.children?.find(r$2=>(r$2.path===``||r$2.path===`/`)&&r$2.meta?.isLayout);if(skipLayout)return route;if(route.meta?.layout!==!1)return{path:route.path,component:layouts[route.meta?.layout||`default`],children:route.path===`/`?[route]:[{...route,path:``}],meta:{isLayout:!0}}}return route.meta?.layout?{path:route.path,component:layouts[route.meta?.layout],children:[{...route,path:``}],meta:{isLayout:!0}}:route})}return deepSetupLayout(routes$1)},isBrowser$1=typeof document<`u`;function isRouteComponent(component){return typeof component==`object`||`displayName`in component||`props`in component||`__vccOpts`in component}function isESModule(obj){return obj.__esModule||obj[Symbol.toStringTag]===`Module`||obj.default&&isRouteComponent(obj.default)}const assign$1=Object.assign;function applyToParams(fn$5,params){let newParams={};for(let key$1 in params){let value$1=params[key$1];newParams[key$1]=isArray$3(value$1)?value$1.map(fn$5):fn$5(value$1)}return newParams}const noop=()=>{},isArray$3=Array.isArray,HASH_RE=/#/g,AMPERSAND_RE=/&/g,SLASH_RE=/\//g,EQUAL_RE=/=/g,IM_RE=/\?/g,PLUS_RE=/\+/g,ENC_BRACKET_OPEN_RE=/%5B/g,ENC_BRACKET_CLOSE_RE=/%5D/g,ENC_CARET_RE=/%5E/g,ENC_BACKTICK_RE=/%60/g,ENC_CURLY_OPEN_RE=/%7B/g,ENC_PIPE_RE=/%7C/g,ENC_CURLY_CLOSE_RE=/%7D/g,ENC_SPACE_RE=/%20/g;function commonEncode(text$5){return encodeURI(``+text$5).replace(ENC_PIPE_RE,`|`).replace(ENC_BRACKET_OPEN_RE,`[`).replace(ENC_BRACKET_CLOSE_RE,`]`)}function encodeHash(text$5){return commonEncode(text$5).replace(ENC_CURLY_OPEN_RE,`{`).replace(ENC_CURLY_CLOSE_RE,`}`).replace(ENC_CARET_RE,`^`)}function encodeQueryValue(text$5){return commonEncode(text$5).replace(PLUS_RE,`%2B`).replace(ENC_SPACE_RE,`+`).replace(HASH_RE,`%23`).replace(AMPERSAND_RE,`%26`).replace(ENC_BACKTICK_RE,"`").replace(ENC_CURLY_OPEN_RE,`{`).replace(ENC_CURLY_CLOSE_RE,`}`).replace(ENC_CARET_RE,`^`)}function encodeQueryKey(text$5){return encodeQueryValue(text$5).replace(EQUAL_RE,`%3D`)}function encodePath(text$5){return commonEncode(text$5).replace(HASH_RE,`%23`).replace(IM_RE,`%3F`)}function encodeParam(text$5){return text$5==null?``:encodePath(text$5).replace(SLASH_RE,`%2F`)}function decode$1(text$5){try{return decodeURIComponent(``+text$5)}catch{}return``+text$5}const TRAILING_SLASH_RE=/\/$/,removeTrailingSlash=path=>path.replace(TRAILING_SLASH_RE,``);function parseURL(parseQuery$1,location$1,currentLocation=`/`){let path,query={},searchString=``,hash=``,hashPos=location$1.indexOf(`#`),searchPos=location$1.indexOf(`?`);return hashPos=0&&(searchPos=-1),searchPos>-1&&(path=location$1.slice(0,searchPos),searchString=location$1.slice(searchPos+1,hashPos>-1?hashPos:location$1.length),query=parseQuery$1(searchString)),hashPos>-1&&(path||=location$1.slice(0,hashPos),hash=location$1.slice(hashPos,location$1.length)),path=resolveRelativePath(path??location$1,currentLocation),{fullPath:path+(searchString&&`?`)+searchString+hash,path,query,hash:decode$1(hash)}}function stringifyURL(stringifyQuery$1,location$1){let query=location$1.query?stringifyQuery$1(location$1.query):``;return location$1.path+(query&&`?`)+query+(location$1.hash||``)}function stripBase(pathname,base){return!base||!pathname.toLowerCase().startsWith(base.toLowerCase())?pathname:pathname.slice(base.length)||`/`}function isSameRouteLocation(stringifyQuery$1,a$2,b$3){let aLastIndex=a$2.matched.length-1,bLastIndex=b$3.matched.length-1;return aLastIndex>-1&&aLastIndex===bLastIndex&&isSameRouteRecord(a$2.matched[aLastIndex],b$3.matched[bLastIndex])&&isSameRouteLocationParams(a$2.params,b$3.params)&&stringifyQuery$1(a$2.query)===stringifyQuery$1(b$3.query)&&a$2.hash===b$3.hash}function isSameRouteRecord(a$2,b$3){return(a$2.aliasOf||a$2)===(b$3.aliasOf||b$3)}function isSameRouteLocationParams(a$2,b$3){if(Object.keys(a$2).length!==Object.keys(b$3).length)return!1;for(let key$1 in a$2)if(!isSameRouteLocationParamsValue(a$2[key$1],b$3[key$1]))return!1;return!0}function isSameRouteLocationParamsValue(a$2,b$3){return isArray$3(a$2)?isEquivalentArray(a$2,b$3):isArray$3(b$3)?isEquivalentArray(b$3,a$2):a$2===b$3}function isEquivalentArray(a$2,b$3){return isArray$3(b$3)?a$2.length===b$3.length&&a$2.every((value$1,i$1)=>value$1===b$3[i$1]):a$2.length===1&&a$2[0]===b$3}function resolveRelativePath(to$1,from){if(to$1.startsWith(`/`))return to$1;if(!to$1)return from;let fromSegments=from.split(`/`),toSegments=to$1.split(`/`),lastToSegment=toSegments[toSegments.length-1];(lastToSegment===`..`||lastToSegment===`.`)&&toSegments.push(``);let position$2=fromSegments.length-1,toPosition,segment;for(toPosition=0;toPosition1&&position$2--;else break;return fromSegments.slice(0,position$2).join(`/`)+`/`+toSegments.slice(toPosition).join(`/`)}const START_LOCATION_NORMALIZED={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};var NavigationType;(function(NavigationType$1){NavigationType$1.pop=`pop`,NavigationType$1.push=`push`})(NavigationType||={});var NavigationDirection;(function(NavigationDirection$1){NavigationDirection$1.back=`back`,NavigationDirection$1.forward=`forward`,NavigationDirection$1.unknown=``})(NavigationDirection||={});function normalizeBase(base){if(!base)if(isBrowser$1){let baseEl=document.querySelector(`base`);base=baseEl&&baseEl.getAttribute(`href`)||`/`,base=base.replace(/^\w+:\/\/[^\/]+/,``)}else base=`/`;return base[0]!==`/`&&base[0]!==`#`&&(base=`/`+base),removeTrailingSlash(base)}const BEFORE_HASH_RE=/^[^#]+#/;function createHref(base,location$1){return base.replace(BEFORE_HASH_RE,`#`)+location$1}function getElementPosition(el,offset$1){let docRect=document.documentElement.getBoundingClientRect(),elRect=el.getBoundingClientRect();return{behavior:offset$1.behavior,left:elRect.left-docRect.left-(offset$1.left||0),top:elRect.top-docRect.top-(offset$1.top||0)}}const computeScrollPosition=()=>({left:window.scrollX,top:window.scrollY});function scrollToPosition(position$2){let scrollToOptions;if(`el`in position$2){let positionEl=position$2.el,isIdSelector=typeof positionEl==`string`&&positionEl.startsWith(`#`),el=typeof positionEl==`string`?isIdSelector?document.getElementById(positionEl.slice(1)):document.querySelector(positionEl):positionEl;if(!el)return;scrollToOptions=getElementPosition(el,position$2)}else scrollToOptions=position$2;`scrollBehavior`in document.documentElement.style?window.scrollTo(scrollToOptions):window.scrollTo(scrollToOptions.left==null?window.scrollX:scrollToOptions.left,scrollToOptions.top==null?window.scrollY:scrollToOptions.top)}function getScrollKey(path,delta){let position$2=history.state?history.state.position-delta:-1;return position$2+path}const scrollPositions=new Map;function saveScrollPosition(key$1,scrollPosition){scrollPositions.set(key$1,scrollPosition)}function getSavedScrollPosition(key$1){let scroll=scrollPositions.get(key$1);return scrollPositions.delete(key$1),scroll}let createBaseLocation=()=>location.protocol+`//`+location.host;function createCurrentLocation(base,location$1){let{pathname,search:search$1,hash}=location$1,hashPos=base.indexOf(`#`);if(hashPos>-1){let slicePos=hash.includes(base.slice(hashPos))?base.slice(hashPos).length:1,pathFromHash=hash.slice(slicePos);return pathFromHash[0]!==`/`&&(pathFromHash=`/`+pathFromHash),stripBase(pathFromHash,``)}let path=stripBase(pathname,base);return path+search$1+hash}function useHistoryListeners(base,historyState,currentLocation,replace){let listeners=[],teardowns=[],pauseState=null,popStateHandler=({state})=>{let to$1=createCurrentLocation(base,location),from=currentLocation.value,fromState=historyState.value,delta=0;if(state){if(currentLocation.value=to$1,historyState.value=state,pauseState&&pauseState===from){pauseState=null;return}delta=fromState?state.position-fromState.position:0}else replace(to$1);listeners.forEach(listener=>{listener(currentLocation.value,from,{delta,type:NavigationType.pop,direction:delta?delta>0?NavigationDirection.forward:NavigationDirection.back:NavigationDirection.unknown})})};function pauseListeners(){pauseState=currentLocation.value}function listen(callback){listeners.push(callback);let teardown=()=>{let index$1=listeners.indexOf(callback);index$1>-1&&listeners.splice(index$1,1)};return teardowns.push(teardown),teardown}function beforeUnloadListener(){let{history:history$1}=window;history$1.state&&history$1.replaceState(assign$1({},history$1.state,{scroll:computeScrollPosition()}),``)}function destroy(){for(let teardown of teardowns)teardown();teardowns=[],window.removeEventListener(`popstate`,popStateHandler),window.removeEventListener(`beforeunload`,beforeUnloadListener)}return window.addEventListener(`popstate`,popStateHandler),window.addEventListener(`beforeunload`,beforeUnloadListener,{passive:!0}),{pauseListeners,listen,destroy}}function buildState(back,current,forward,replaced=!1,computeScroll=!1){return{back,current,forward,replaced,position:window.history.length,scroll:computeScroll?computeScrollPosition():null}}function useHistoryStateNavigation(base){let{history:history$1,location:location$1}=window,currentLocation={value:createCurrentLocation(base,location$1)},historyState={value:history$1.state};historyState.value||changeLocation(currentLocation.value,{back:null,current:currentLocation.value,forward:null,position:history$1.length-1,replaced:!0,scroll:null},!0);function changeLocation(to$1,state,replace$1){let hashIndex=base.indexOf(`#`),url=hashIndex>-1?(location$1.host&&document.querySelector(`base`)?base:base.slice(hashIndex))+to$1:createBaseLocation()+base+to$1;try{history$1[replace$1?`replaceState`:`pushState`](state,``,url),historyState.value=state}catch(err){console.error(err),location$1[replace$1?`replace`:`assign`](url)}}function replace(to$1,data$10){let state=assign$1({},history$1.state,buildState(historyState.value.back,to$1,historyState.value.forward,!0),data$10,{position:historyState.value.position});changeLocation(to$1,state,!0),currentLocation.value=to$1}function push$1(to$1,data$10){let currentState=assign$1({},historyState.value,history$1.state,{forward:to$1,scroll:computeScrollPosition()});changeLocation(currentState.current,currentState,!0);let state=assign$1({},buildState(currentLocation.value,to$1,null),{position:currentState.position+1},data$10);changeLocation(to$1,state,!1),currentLocation.value=to$1}return{location:currentLocation,state:historyState,push:push$1,replace}}function createWebHistory(base){base=normalizeBase(base);let historyNavigation=useHistoryStateNavigation(base),historyListeners=useHistoryListeners(base,historyNavigation.state,historyNavigation.location,historyNavigation.replace);function go(delta,triggerListeners=!0){triggerListeners||historyListeners.pauseListeners(),history.go(delta)}let routerHistory=assign$1({location:``,base,go,createHref:createHref.bind(null,base)},historyNavigation,historyListeners);return Object.defineProperty(routerHistory,`location`,{enumerable:!0,get:()=>historyNavigation.location.value}),Object.defineProperty(routerHistory,`state`,{enumerable:!0,get:()=>historyNavigation.state.value}),routerHistory}function createWebHashHistory(base){return base=location.host?base||location.pathname+location.search:``,base.includes(`#`)||(base+=`#`),createWebHistory(base)}function isRouteLocation(route){return typeof route==`string`||route&&typeof route==`object`}function isRouteName(name$2){return typeof name$2==`string`||typeof name$2==`symbol`}const NavigationFailureSymbol=Symbol(``);var NavigationFailureType;(function(NavigationFailureType$1){NavigationFailureType$1[NavigationFailureType$1.aborted=4]=`aborted`,NavigationFailureType$1[NavigationFailureType$1.cancelled=8]=`cancelled`,NavigationFailureType$1[NavigationFailureType$1.duplicated=16]=`duplicated`})(NavigationFailureType||={});function createRouterError(type,params){return assign$1(Error(),{type,[NavigationFailureSymbol]:!0},params)}function isNavigationFailure(error,type){return error instanceof Error&&NavigationFailureSymbol in error&&(type==null||!!(error.type&type))}const BASE_PARAM_PATTERN=`[^/]+?`,BASE_PATH_PARSER_OPTIONS={sensitive:!1,strict:!1,start:!0,end:!0},REGEX_CHARS_RE=/[.+*?^${}()[\]/\\]/g;function tokensToParser(segments,extraOptions){let options$1=assign$1({},BASE_PATH_PARSER_OPTIONS,extraOptions),score=[],pattern=options$1.start?`^`:``,keys$3=[];for(let segment of segments){let segmentScores=segment.length?[]:[90];options$1.strict&&!segment.length&&(pattern+=`/`);for(let tokenIndex=0;tokenIndexb$3.length?b$3.length===1&&b$3[0]===80?1:-1:0}function comparePathParserScore(a$2,b$3){let i$1=0,aScore=a$2.score,bScore=b$3.score;for(;i$10&&last[last.length-1]<0}const ROOT_TOKEN={type:0,value:``},VALID_PARAM_RE=/[a-zA-Z0-9_]/;function tokenizePath(path){if(!path)return[[]];if(path===`/`)return[[ROOT_TOKEN]];if(!path.startsWith(`/`))throw Error(`Invalid path "${path}"`);function crash(message$1){throw Error(`ERR (${state})/"${buffer$1}": ${message$1}`)}let state=0,previousState=state,tokens=[],segment;function finalizeSegment(){segment&&tokens.push(segment),segment=[]}let i$1=0,char,buffer$1=``,customRe=``;function consumeBuffer(){buffer$1&&(state===0?segment.push({type:0,value:buffer$1}):state===1||state===2||state===3?(segment.length>1&&(char===`*`||char===`+`)&&crash(`A repeatable param (${buffer$1}) must be alone in its segment. eg: '/:ids+.`),segment.push({type:1,value:buffer$1,regexp:customRe,repeatable:char===`*`||char===`+`,optional:char===`*`||char===`?`})):crash(`Invalid state to consume buffer`),buffer$1=``)}function addCharToBuffer(){buffer$1+=char}for(;i$1{removeRoute(originalMatcher)}:noop}function removeRoute(matcherRef){if(isRouteName(matcherRef)){let matcher=matcherMap.get(matcherRef);matcher&&(matcherMap.delete(matcherRef),matchers.splice(matchers.indexOf(matcher),1),matcher.children.forEach(removeRoute),matcher.alias.forEach(removeRoute))}else{let index$1=matchers.indexOf(matcherRef);index$1>-1&&(matchers.splice(index$1,1),matcherRef.record.name&&matcherMap.delete(matcherRef.record.name),matcherRef.children.forEach(removeRoute),matcherRef.alias.forEach(removeRoute))}}function getRoutes(){return matchers}function insertMatcher(matcher){let index$1=findInsertionIndex(matcher,matchers);matchers.splice(index$1,0,matcher),matcher.record.name&&!isAliasRecord(matcher)&&matcherMap.set(matcher.record.name,matcher)}function resolve$1(location$1,currentLocation){let matcher,params={},path,name$2;if(`name`in location$1&&location$1.name){if(matcher=matcherMap.get(location$1.name),!matcher)throw createRouterError(1,{location:location$1});name$2=matcher.record.name,params=assign$1(paramsFromLocation(currentLocation.params,matcher.keys.filter(k$4=>!k$4.optional).concat(matcher.parent?matcher.parent.keys.filter(k$4=>k$4.optional):[]).map(k$4=>k$4.name)),location$1.params&¶msFromLocation(location$1.params,matcher.keys.map(k$4=>k$4.name))),path=matcher.stringify(params)}else if(location$1.path!=null)path=location$1.path,matcher=matchers.find(m$2=>m$2.re.test(path)),matcher&&(params=matcher.parse(path),name$2=matcher.record.name);else{if(matcher=currentLocation.name?matcherMap.get(currentLocation.name):matchers.find(m$2=>m$2.re.test(currentLocation.path)),!matcher)throw createRouterError(1,{location:location$1,currentLocation});name$2=matcher.record.name,params=assign$1({},currentLocation.params,location$1.params),path=matcher.stringify(params)}let matched=[],parentMatcher=matcher;for(;parentMatcher;)matched.unshift(parentMatcher.record),parentMatcher=parentMatcher.parent;return{name:name$2,path,params,matched,meta:mergeMetaFields(matched)}}routes$1.forEach(route=>addRoute(route));function clearRoutes(){matchers.length=0,matcherMap.clear()}return{addRoute,resolve:resolve$1,removeRoute,clearRoutes,getRoutes,getRecordMatcher}}function paramsFromLocation(params,keys$3){let newParams={};for(let key$1 of keys$3)key$1 in params&&(newParams[key$1]=params[key$1]);return newParams}function normalizeRouteRecord(record){let normalized={path:record.path,redirect:record.redirect,name:record.name,meta:record.meta||{},aliasOf:record.aliasOf,beforeEnter:record.beforeEnter,props:normalizeRecordProps(record),children:record.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in record?record.components||null:record.component&&{default:record.component}};return Object.defineProperty(normalized,`mods`,{value:{}}),normalized}function normalizeRecordProps(record){let propsObject={},props=record.props||!1;if(`component`in record)propsObject.default=props;else for(let name$2 in record.components)propsObject[name$2]=typeof props==`object`?props[name$2]:props;return propsObject}function isAliasRecord(record){for(;record;){if(record.record.aliasOf)return!0;record=record.parent}return!1}function mergeMetaFields(matched){return matched.reduce((meta,record)=>assign$1(meta,record.meta),{})}function mergeOptions(defaults,partialOptions){let options$1={};for(let key$1 in defaults)options$1[key$1]=key$1 in partialOptions?partialOptions[key$1]:defaults[key$1];return options$1}function findInsertionIndex(matcher,matchers){let lower=0,upper=matchers.length;for(;lower!==upper;){let mid=lower+upper>>1,sortOrder=comparePathParserScore(matcher,matchers[mid]);sortOrder<0?upper=mid:lower=mid+1}let insertionAncestor=getInsertionAncestor(matcher);return insertionAncestor&&(upper=matchers.lastIndexOf(insertionAncestor,upper-1)),upper}function getInsertionAncestor(matcher){let ancestor=matcher;for(;ancestor=ancestor.parent;)if(isMatchable(ancestor)&&comparePathParserScore(matcher,ancestor)===0)return ancestor}function isMatchable({record}){return!!(record.name||record.components&&Object.keys(record.components).length||record.redirect)}function parseQuery(search$1){let query={};if(search$1===``||search$1===`?`)return query;let hasLeadingIM=search$1[0]===`?`,searchParams=(hasLeadingIM?search$1.slice(1):search$1).split(`&`);for(let i$1=0;i$1v$1&&encodeQueryValue(v$1)):[value$1&&encodeQueryValue(value$1)];values.forEach(value$2=>{value$2!==void 0&&(search$1+=(search$1.length?`&`:``)+key$1,value$2!=null&&(search$1+=`=`+value$2))})}return search$1}function normalizeQuery(query){let normalizedQuery={};for(let key$1 in query){let value$1=query[key$1];value$1!==void 0&&(normalizedQuery[key$1]=isArray$3(value$1)?value$1.map(v$1=>v$1==null?null:``+v$1):value$1==null?value$1:``+value$1)}return normalizedQuery}const matchedRouteKey=Symbol(``),viewDepthKey=Symbol(``),routerKey=Symbol(``),routeLocationKey=Symbol(``),routerViewLocationKey=Symbol(``);function useCallbacks(){let handlers$3=[];function add$1(handler){return handlers$3.push(handler),()=>{let i$1=handlers$3.indexOf(handler);i$1>-1&&handlers$3.splice(i$1,1)}}function reset(){handlers$3=[]}return{add:add$1,list:()=>handlers$3.slice(),reset}}function guardToPromiseFn(guard,to$1,from,record,name$2,runWithContext=fn$5=>fn$5()){let enterCallbackArray=record&&(record.enterCallbacks[name$2]=record.enterCallbacks[name$2]||[]);return()=>new Promise((resolve$1,reject)=>{let next=valid$1=>{valid$1===!1?reject(createRouterError(4,{from,to:to$1})):valid$1 instanceof Error?reject(valid$1):isRouteLocation(valid$1)?reject(createRouterError(2,{from:to$1,to:valid$1})):(enterCallbackArray&&record.enterCallbacks[name$2]===enterCallbackArray&&typeof valid$1==`function`&&enterCallbackArray.push(valid$1),resolve$1())},guardReturn=runWithContext(()=>guard.call(record&&record.instances[name$2],to$1,from,next)),guardCall=Promise.resolve(guardReturn);guard.length<3&&(guardCall=guardCall.then(next)),guardCall.catch(err=>reject(err))})}function extractComponentsGuards(matched,guardType,to$1,from,runWithContext=fn$5=>fn$5()){let guards=[];for(let record of matched)for(let name$2 in record.components){let rawComponent=record.components[name$2];if(guardType!==`beforeRouteEnter`&&!record.instances[name$2])continue;if(isRouteComponent(rawComponent)){let options$1=rawComponent.__vccOpts||rawComponent,guard=options$1[guardType];guard&&guards.push(guardToPromiseFn(guard,to$1,from,record,name$2,runWithContext))}else{let componentPromise=rawComponent();guards.push(()=>componentPromise.then(resolved=>{if(!resolved)throw Error(`Couldn't resolve component "${name$2}" at "${record.path}"`);let resolvedComponent=isESModule(resolved)?resolved.default:resolved;record.mods[name$2]=resolved,record.components[name$2]=resolvedComponent;let options$1=resolvedComponent.__vccOpts||resolvedComponent,guard=options$1[guardType];return guard&&guardToPromiseFn(guard,to$1,from,record,name$2,runWithContext)()}))}}return guards}function useLink(props){let router$1=inject(routerKey),currentRoute=inject(routeLocationKey),hasPrevious=!1,previousTo=null,route=computed(()=>{let to$1=unref(props.to);return router$1.resolve(to$1)}),activeRecordIndex=computed(()=>{let{matched}=route.value,{length}=matched,routeMatched=matched[length-1],currentMatched=currentRoute.matched;if(!routeMatched||!currentMatched.length)return-1;let index$1=currentMatched.findIndex(isSameRouteRecord.bind(null,routeMatched));if(index$1>-1)return index$1;let parentRecordPath=getOriginalPath(matched[length-2]);return length>1&&getOriginalPath(routeMatched)===parentRecordPath&¤tMatched[currentMatched.length-1].path!==parentRecordPath?currentMatched.findIndex(isSameRouteRecord.bind(null,matched[length-2])):index$1}),isActive=computed(()=>activeRecordIndex.value>-1&&includesParams(currentRoute.params,route.value.params)),isExactActive=computed(()=>activeRecordIndex.value>-1&&activeRecordIndex.value===currentRoute.matched.length-1&&isSameRouteLocationParams(currentRoute.params,route.value.params));function navigate(e$3={}){if(guardEvent(e$3)){let p$5=router$1[unref(props.replace)?`replace`:`push`](unref(props.to)).catch(noop);return props.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>p$5),p$5}return Promise.resolve()}return{route,href:computed(()=>route.value.href),isActive,isExactActive,navigate}}function preferSingleVNode(vnodes){return vnodes.length===1?vnodes[0]:vnodes}const RouterLinkImpl=defineComponent({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink,setup(props,{slots}){let link$1=reactive(useLink(props)),{options:options$1}=inject(routerKey),elClass=computed(()=>({[getLinkClass(props.activeClass,options$1.linkActiveClass,`router-link-active`)]:link$1.isActive,[getLinkClass(props.exactActiveClass,options$1.linkExactActiveClass,`router-link-exact-active`)]:link$1.isExactActive}));return()=>{let children=slots.default&&preferSingleVNode(slots.default(link$1));return props.custom?children:h(`a`,{"aria-current":link$1.isExactActive?props.ariaCurrentValue:null,href:link$1.href,onClick:link$1.navigate,class:elClass.value},children)}}}),RouterLink=RouterLinkImpl;function guardEvent(e$3){if(!(e$3.metaKey||e$3.altKey||e$3.ctrlKey||e$3.shiftKey)&&!e$3.defaultPrevented&&!(e$3.button!==void 0&&e$3.button!==0)){if(e$3.currentTarget&&e$3.currentTarget.getAttribute){let target$1=e$3.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(target$1))return}return e$3.preventDefault&&e$3.preventDefault(),!0}}function includesParams(outer,inner){for(let key$1 in inner){let innerValue=inner[key$1],outerValue=outer[key$1];if(typeof innerValue==`string`){if(innerValue!==outerValue)return!1}else if(!isArray$3(outerValue)||outerValue.length!==innerValue.length||innerValue.some((value$1,i$1)=>value$1!==outerValue[i$1]))return!1}return!0}function getOriginalPath(record){return record?record.aliasOf?record.aliasOf.path:record.path:``}const getLinkClass=(propClass,globalClass,defaultClass)=>propClass??globalClass??defaultClass,RouterViewImpl=defineComponent({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(props,{attrs,slots}){let injectedRoute=inject(routerViewLocationKey),routeToDisplay=computed(()=>props.route||injectedRoute.value),injectedDepth=inject(viewDepthKey,0),depth=computed(()=>{let initialDepth=unref(injectedDepth),{matched}=routeToDisplay.value,matchedRoute;for(;(matchedRoute=matched[initialDepth])&&!matchedRoute.components;)initialDepth++;return initialDepth}),matchedRouteRef=computed(()=>routeToDisplay.value.matched[depth.value]);provide(viewDepthKey,computed(()=>depth.value+1)),provide(matchedRouteKey,matchedRouteRef),provide(routerViewLocationKey,routeToDisplay);let viewRef=ref();return watch(()=>[viewRef.value,matchedRouteRef.value,props.name],([instance,to$1,name$2],[oldInstance,from,oldName])=>{to$1&&(to$1.instances[name$2]=instance,from&&from!==to$1&&instance&&instance===oldInstance&&(to$1.leaveGuards.size||(to$1.leaveGuards=from.leaveGuards),to$1.updateGuards.size||(to$1.updateGuards=from.updateGuards))),instance&&to$1&&(!from||!isSameRouteRecord(to$1,from)||!oldInstance)&&(to$1.enterCallbacks[name$2]||[]).forEach(callback=>callback(instance))},{flush:`post`}),()=>{let route=routeToDisplay.value,currentName=props.name,matchedRoute=matchedRouteRef.value,ViewComponent=matchedRoute&&matchedRoute.components[currentName];if(!ViewComponent)return normalizeSlot(slots.default,{Component:ViewComponent,route});let routePropsOption=matchedRoute.props[currentName],routeProps=routePropsOption?routePropsOption===!0?route.params:typeof routePropsOption==`function`?routePropsOption(route):routePropsOption:null,onVnodeUnmounted=vnode=>{vnode.component.isUnmounted&&(matchedRoute.instances[currentName]=null)},component=h(ViewComponent,assign$1({},routeProps,attrs,{onVnodeUnmounted,ref:viewRef}));return normalizeSlot(slots.default,{Component:component,route})||component}}});function normalizeSlot(slot,data$10){if(!slot)return null;let slotContent=slot(data$10);return slotContent.length===1?slotContent[0]:slotContent}const RouterView=RouterViewImpl;function createRouter(options$1){let matcher=createRouterMatcher(options$1.routes,options$1),parseQuery$1=options$1.parseQuery||parseQuery,stringifyQuery$1=options$1.stringifyQuery||stringifyQuery,routerHistory=options$1.history,beforeGuards=useCallbacks(),beforeResolveGuards=useCallbacks(),afterGuards=useCallbacks(),currentRoute=shallowRef(START_LOCATION_NORMALIZED),pendingLocation=START_LOCATION_NORMALIZED;isBrowser$1&&options$1.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let normalizeParams=applyToParams.bind(null,paramValue=>``+paramValue),encodeParams=applyToParams.bind(null,encodeParam),decodeParams=applyToParams.bind(null,decode$1);function addRoute(parentOrRoute,route){let parent,record;return isRouteName(parentOrRoute)?(parent=matcher.getRecordMatcher(parentOrRoute),record=route):record=parentOrRoute,matcher.addRoute(record,parent)}function removeRoute(name$2){let recordMatcher=matcher.getRecordMatcher(name$2);recordMatcher&&matcher.removeRoute(recordMatcher)}function getRoutes(){return matcher.getRoutes().map(routeMatcher=>routeMatcher.record)}function hasRoute(name$2){return!!matcher.getRecordMatcher(name$2)}function resolve$1(rawLocation,currentLocation){if(currentLocation=assign$1({},currentLocation||currentRoute.value),typeof rawLocation==`string`){let locationNormalized=parseURL(parseQuery$1,rawLocation,currentLocation.path),matchedRoute$1=matcher.resolve({path:locationNormalized.path},currentLocation),href$1=routerHistory.createHref(locationNormalized.fullPath);return assign$1(locationNormalized,matchedRoute$1,{params:decodeParams(matchedRoute$1.params),hash:decode$1(locationNormalized.hash),redirectedFrom:void 0,href:href$1})}let matcherLocation;if(rawLocation.path!=null)matcherLocation=assign$1({},rawLocation,{path:parseURL(parseQuery$1,rawLocation.path,currentLocation.path).path});else{let targetParams=assign$1({},rawLocation.params);for(let key$1 in targetParams)targetParams[key$1]??delete targetParams[key$1];matcherLocation=assign$1({},rawLocation,{params:encodeParams(targetParams)}),currentLocation.params=encodeParams(currentLocation.params)}let matchedRoute=matcher.resolve(matcherLocation,currentLocation),hash=rawLocation.hash||``;matchedRoute.params=normalizeParams(decodeParams(matchedRoute.params));let fullPath=stringifyURL(stringifyQuery$1,assign$1({},rawLocation,{hash:encodeHash(hash),path:matchedRoute.path})),href=routerHistory.createHref(fullPath);return assign$1({fullPath,hash,query:stringifyQuery$1===stringifyQuery?normalizeQuery(rawLocation.query):rawLocation.query||{}},matchedRoute,{redirectedFrom:void 0,href})}function locationAsObject(to$1){return typeof to$1==`string`?parseURL(parseQuery$1,to$1,currentRoute.value.path):assign$1({},to$1)}function checkCanceledNavigation(to$1,from){if(pendingLocation!==to$1)return createRouterError(8,{from,to:to$1})}function push$1(to$1){return pushWithRedirect(to$1)}function replace(to$1){return push$1(assign$1(locationAsObject(to$1),{replace:!0}))}function handleRedirectRecord(to$1){let lastMatched=to$1.matched[to$1.matched.length-1];if(lastMatched&&lastMatched.redirect){let{redirect}=lastMatched,newTargetLocation=typeof redirect==`function`?redirect(to$1):redirect;return typeof newTargetLocation==`string`&&(newTargetLocation=newTargetLocation.includes(`?`)||newTargetLocation.includes(`#`)?newTargetLocation=locationAsObject(newTargetLocation):{path:newTargetLocation},newTargetLocation.params={}),assign$1({query:to$1.query,hash:to$1.hash,params:newTargetLocation.path==null?to$1.params:{}},newTargetLocation)}}function pushWithRedirect(to$1,redirectedFrom){let targetLocation=pendingLocation=resolve$1(to$1),from=currentRoute.value,data$10=to$1.state,force=to$1.force,replace$1=to$1.replace===!0,shouldRedirect=handleRedirectRecord(targetLocation);if(shouldRedirect)return pushWithRedirect(assign$1(locationAsObject(shouldRedirect),{state:typeof shouldRedirect==`object`?assign$1({},data$10,shouldRedirect.state):data$10,force,replace:replace$1}),redirectedFrom||targetLocation);let toLocation=targetLocation;toLocation.redirectedFrom=redirectedFrom;let failure;return!force&&isSameRouteLocation(stringifyQuery$1,from,targetLocation)&&(failure=createRouterError(16,{to:toLocation,from}),handleScroll(from,from,!0,!1)),(failure?Promise.resolve(failure):navigate(toLocation,from)).catch(error=>isNavigationFailure(error)?isNavigationFailure(error,2)?error:markAsReady(error):triggerError(error,toLocation,from)).then(failure$1=>{if(failure$1){if(isNavigationFailure(failure$1,2))return pushWithRedirect(assign$1({replace:replace$1},locationAsObject(failure$1.to),{state:typeof failure$1.to==`object`?assign$1({},data$10,failure$1.to.state):data$10,force}),redirectedFrom||toLocation)}else failure$1=finalizeNavigation(toLocation,from,!0,replace$1,data$10);return triggerAfterEach(toLocation,from,failure$1),failure$1})}function checkCanceledNavigationAndReject(to$1,from){let error=checkCanceledNavigation(to$1,from);return error?Promise.reject(error):Promise.resolve()}function runWithContext(fn$5){let app=installedApps.values().next().value;return app&&typeof app.runWithContext==`function`?app.runWithContext(fn$5):fn$5()}function navigate(to$1,from){let guards,[leavingRecords,updatingRecords,enteringRecords]=extractChangingRecords(to$1,from);guards=extractComponentsGuards(leavingRecords.reverse(),`beforeRouteLeave`,to$1,from);for(let record of leavingRecords)record.leaveGuards.forEach(guard=>{guards.push(guardToPromiseFn(guard,to$1,from))});let canceledNavigationCheck=checkCanceledNavigationAndReject.bind(null,to$1,from);return guards.push(canceledNavigationCheck),runGuardQueue(guards).then(()=>{guards=[];for(let guard of beforeGuards.list())guards.push(guardToPromiseFn(guard,to$1,from));return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).then(()=>{guards=extractComponentsGuards(updatingRecords,`beforeRouteUpdate`,to$1,from);for(let record of updatingRecords)record.updateGuards.forEach(guard=>{guards.push(guardToPromiseFn(guard,to$1,from))});return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).then(()=>{guards=[];for(let record of enteringRecords)if(record.beforeEnter)if(isArray$3(record.beforeEnter))for(let beforeEnter of record.beforeEnter)guards.push(guardToPromiseFn(beforeEnter,to$1,from));else guards.push(guardToPromiseFn(record.beforeEnter,to$1,from));return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).then(()=>(to$1.matched.forEach(record=>record.enterCallbacks={}),guards=extractComponentsGuards(enteringRecords,`beforeRouteEnter`,to$1,from,runWithContext),guards.push(canceledNavigationCheck),runGuardQueue(guards))).then(()=>{guards=[];for(let guard of beforeResolveGuards.list())guards.push(guardToPromiseFn(guard,to$1,from));return guards.push(canceledNavigationCheck),runGuardQueue(guards)}).catch(err=>isNavigationFailure(err,8)?err:Promise.reject(err))}function triggerAfterEach(to$1,from,failure){afterGuards.list().forEach(guard=>runWithContext(()=>guard(to$1,from,failure)))}function finalizeNavigation(toLocation,from,isPush,replace$1,data$10){let error=checkCanceledNavigation(toLocation,from);if(error)return error;let isFirstNavigation=from===START_LOCATION_NORMALIZED,state=isBrowser$1?history.state:{};isPush&&(replace$1||isFirstNavigation?routerHistory.replace(toLocation.fullPath,assign$1({scroll:isFirstNavigation&&state&&state.scroll},data$10)):routerHistory.push(toLocation.fullPath,data$10)),currentRoute.value=toLocation,handleScroll(toLocation,from,isPush,isFirstNavigation),markAsReady()}let removeHistoryListener;function setupListeners(){removeHistoryListener||=routerHistory.listen((to$1,_from,info)=>{if(!router$1.listening)return;let toLocation=resolve$1(to$1),shouldRedirect=handleRedirectRecord(toLocation);if(shouldRedirect){pushWithRedirect(assign$1(shouldRedirect,{replace:!0,force:!0}),toLocation).catch(noop);return}pendingLocation=toLocation;let from=currentRoute.value;isBrowser$1&&saveScrollPosition(getScrollKey(from.fullPath,info.delta),computeScrollPosition()),navigate(toLocation,from).catch(error=>isNavigationFailure(error,12)?error:isNavigationFailure(error,2)?(pushWithRedirect(assign$1(locationAsObject(error.to),{force:!0}),toLocation).then(failure=>{isNavigationFailure(failure,20)&&!info.delta&&info.type===NavigationType.pop&&routerHistory.go(-1,!1)}).catch(noop),Promise.reject()):(info.delta&&routerHistory.go(-info.delta,!1),triggerError(error,toLocation,from))).then(failure=>{failure||=finalizeNavigation(toLocation,from,!1),failure&&(info.delta&&!isNavigationFailure(failure,8)?routerHistory.go(-info.delta,!1):info.type===NavigationType.pop&&isNavigationFailure(failure,20)&&routerHistory.go(-1,!1)),triggerAfterEach(toLocation,from,failure)}).catch(noop)})}let readyHandlers=useCallbacks(),errorListeners=useCallbacks(),ready;function triggerError(error,to$1,from){markAsReady(error);let list$2=errorListeners.list();return list$2.length?list$2.forEach(handler=>handler(error,to$1,from)):console.error(error),Promise.reject(error)}function isReady(){return ready&¤tRoute.value!==START_LOCATION_NORMALIZED?Promise.resolve():new Promise((resolve$2,reject)=>{readyHandlers.add([resolve$2,reject])})}function markAsReady(err){return ready||(ready=!err,setupListeners(),readyHandlers.list().forEach(([resolve$2,reject])=>err?reject(err):resolve$2()),readyHandlers.reset()),err}function handleScroll(to$1,from,isPush,isFirstNavigation){let{scrollBehavior}=options$1;if(!isBrowser$1||!scrollBehavior)return Promise.resolve();let scrollPosition=!isPush&&getSavedScrollPosition(getScrollKey(to$1.fullPath,0))||(isFirstNavigation||!isPush)&&history.state&&history.state.scroll||null;return nextTick().then(()=>scrollBehavior(to$1,from,scrollPosition)).then(position$2=>position$2&&scrollToPosition(position$2)).catch(err=>triggerError(err,to$1,from))}let go=delta=>routerHistory.go(delta),started,installedApps=new Set,router$1={currentRoute,listening:!0,addRoute,removeRoute,clearRoutes:matcher.clearRoutes,hasRoute,getRoutes,resolve:resolve$1,options:options$1,push:push$1,replace,go,back:()=>go(-1),forward:()=>go(1),beforeEach:beforeGuards.add,beforeResolve:beforeResolveGuards.add,afterEach:afterGuards.add,onError:errorListeners.add,isReady,install(app){let router$2=this;app.component(`RouterLink`,RouterLink),app.component(`RouterView`,RouterView),app.config.globalProperties.$router=router$2,Object.defineProperty(app.config.globalProperties,`$route`,{enumerable:!0,get:()=>unref(currentRoute)}),isBrowser$1&&!started&¤tRoute.value===START_LOCATION_NORMALIZED&&(started=!0,push$1(routerHistory.location).catch(err=>{}));let reactiveRoute={};for(let key$1 in START_LOCATION_NORMALIZED)Object.defineProperty(reactiveRoute,key$1,{get:()=>currentRoute.value[key$1],enumerable:!0});app.provide(routerKey,router$2),app.provide(routeLocationKey,shallowReactive(reactiveRoute)),app.provide(routerViewLocationKey,currentRoute);let unmountApp=app.unmount;installedApps.add(app),app.unmount=function(){installedApps.delete(app),installedApps.size<1&&(pendingLocation=START_LOCATION_NORMALIZED,removeHistoryListener&&removeHistoryListener(),removeHistoryListener=null,currentRoute.value=START_LOCATION_NORMALIZED,started=!1,ready=!1),unmountApp()}}};function runGuardQueue(guards){return guards.reduce((promise,guard)=>promise.then(()=>runWithContext(guard)),Promise.resolve())}return router$1}function extractChangingRecords(to$1,from){let leavingRecords=[],updatingRecords=[],enteringRecords=[],len=Math.max(from.matched.length,to$1.matched.length);for(let i$1=0;i$1isSameRouteRecord(record,recordFrom))?updatingRecords.push(recordFrom):leavingRecords.push(recordFrom));let recordTo=to$1.matched[i$1];recordTo&&(from.matched.find(record=>isSameRouteRecord(record,recordTo))||enteringRecords.push(recordTo))}return[leavingRecords,updatingRecords,enteringRecords]}function useRouter(){return inject(routerKey)}function useRoute(_name){return inject(routeLocationKey)}const routes=[{path:`/`,name:`IndexScenePage`,component:()=>__vitePreload(()=>import(`./pages-Byy2Hhdn.js`),__vite__mapDeps([5,6,1,2,7,8,9,4,10,11,12])),meta:{layout:`stage`,stageTransition:{name:`bubble-wave-out`}}},{path:`/:all(.*)`,name:`/[...all]`,component:()=>__vitePreload(()=>import(`./_...all_-eQpeZWOw.js`),[])},{path:`/audio`,name:`/audio`,component:()=>__vitePreload(()=>import(`./audio-DDkm4nFt.js`),[])},{path:`/devtools`,children:[{path:`audio-record`,name:`/devtools/audio-record`,component:()=>__vitePreload(()=>import(`./audio-record-C0pKTMd6.js`),[])},{path:`background-remove`,name:`/devtools/background-remove`,component:()=>__vitePreload(()=>import(`./background-remove-GD_OBr4Y.js`),__vite__mapDeps([13,14,15]))},{path:`chat`,name:`/devtools/chat`,component:()=>__vitePreload(()=>import(`./chat-OoWKER4B.js`),[])},{path:`gesture-circle`,name:`/devtools/gesture-circle`,component:()=>__vitePreload(()=>import(`./gesture-circle-D7hIKXta.js`),__vite__mapDeps([16,6])),meta:{layout:`plain`}},{path:`image`,name:`/devtools/image`,component:()=>__vitePreload(()=>import(`./image-DCQY7vtj.js`),__vite__mapDeps([17,18]))},{path:`polaroid`,name:`/devtools/polaroid`,component:()=>__vitePreload(()=>import(`./polaroid-A4EHzymE.js`),__vite__mapDeps([19,10,11,12]))},{path:`vibrant`,name:`/devtools/vibrant`,component:()=>__vitePreload(()=>import(`./vibrant-DdAX8FW9.js`),__vite__mapDeps([20,21,15]))}]},{path:`/queue`,name:`/queue`,component:()=>__vitePreload(()=>import(`./queue-CiR6go9H.js`),[])},{path:`/settings`,children:[{path:``,name:`/settings/`,component:()=>__vitePreload(()=>import(`./settings-CldBYxd-.js`),__vite__mapDeps([22,6,23])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`airi-card`,children:[{path:``,name:`/settings/airi-card/`,component:()=>__vitePreload(()=>import(`./airi-card-HWETNpiq.js`),__vite__mapDeps([24,6,25,26,27,28,29,30,31,15])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`components`,children:[{path:`CardCreate`,name:`/settings/airi-card/components/CardCreate`,component:()=>__vitePreload(()=>import(`./CardCreate-vI7-JE_m.js`),__vite__mapDeps([32,25]))},{path:`CardCreationDialog`,name:`/settings/airi-card/components/CardCreationDialog`,component:()=>__vitePreload(()=>import(`./CardCreationDialog-Cms6yBxy.js`),__vite__mapDeps([33,26,27,28]))},{path:`CardDetailDialog`,name:`/settings/airi-card/components/CardDetailDialog`,component:()=>__vitePreload(()=>import(`./CardDetailDialog-CNHw_vI_.js`),__vite__mapDeps([34,29,30,27]))},{path:`CardListItem`,name:`/settings/airi-card/components/CardListItem`,component:()=>__vitePreload(()=>import(`./CardListItem-LYi2jKJc.js`),__vite__mapDeps([35,31]))},{path:`DeleteCardDialog`,name:`/settings/airi-card/components/DeleteCardDialog`,component:()=>__vitePreload(()=>import(`./DeleteCardDialog-CmNQfJAN.js`),__vite__mapDeps([36,30,27]))}]}]},{path:`appearance`,children:[{path:``,name:`/settings/appearance/`,component:()=>__vitePreload(()=>import(`./appearance-CHlIhV3Q.js`),__vite__mapDeps([37,6])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}},{path:`color-scheme`,name:`/settings/appearance/color-scheme`,component:()=>__vitePreload(()=>import(`./color-scheme-CEN2sNrK.js`),__vite__mapDeps([38,6,39,27,40])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`developer`,name:`/settings/appearance/developer`,component:()=>__vitePreload(()=>import(`./developer-BMsKoloG.js`),__vite__mapDeps([41,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`general`,name:`/settings/appearance/general`,component:()=>__vitePreload(()=>import(`./general-DiRR6B5N.js`),__vite__mapDeps([42,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`memory`,children:[{path:``,name:`/settings/memory/`,component:()=>__vitePreload(()=>import(`./memory-BMWLkjdm.js`),__vite__mapDeps([43,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`models`,children:[{path:``,name:`/settings/models/`,component:()=>__vitePreload(()=>import(`./models-CrCwINpv.js`),__vite__mapDeps([44,6,23,39,27,45,10,11,12,21,46])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}}]},{path:`modules`,children:[{path:``,name:`/settings/modules/`,component:()=>__vitePreload(()=>import(`./modules-BIBnS6fC.js`),__vite__mapDeps([47,6,23,45])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}},{path:`consciousness`,name:`/settings/modules/consciousness`,component:()=>__vitePreload(()=>import(`./consciousness-DLy5lbRs.js`),__vite__mapDeps([48,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`hearing`,name:`/settings/modules/hearing`,component:()=>__vitePreload(()=>import(`./hearing-DXhzYE8B.js`),__vite__mapDeps([49,6,14])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`memory-long-term`,name:`/settings/modules/memory-long-term`,component:()=>__vitePreload(()=>import(`./memory-long-term-Ct-X9BDW.js`),__vite__mapDeps([50,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`memory-short-term`,name:`/settings/modules/memory-short-term`,component:()=>__vitePreload(()=>import(`./memory-short-term-Dw4gKfK3.js`),__vite__mapDeps([51,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`speech`,name:`/settings/modules/speech`,component:()=>__vitePreload(()=>import(`./speech-T1PXFj7-.js`),__vite__mapDeps([52,6,8,53])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`providers`,children:[{path:``,name:`/settings/providers/`,component:()=>__vitePreload(()=>import(`./providers-DTc4g9cH.js`),__vite__mapDeps([54,6,23,45])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}},{path:`alibaba-cloud-model-studio`,name:`/settings/providers/alibaba-cloud-model-studio`,component:()=>__vitePreload(()=>import(`./alibaba-cloud-model-studio-DzXYVh34.js`),__vite__mapDeps([55,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`anthropic`,name:`/settings/providers/anthropic`,component:()=>__vitePreload(()=>import(`./anthropic-C47u_7Ce.js`),__vite__mapDeps([56,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`cloudflare-workers-ai`,name:`/settings/providers/cloudflare-workers-ai`,component:()=>__vitePreload(()=>import(`./cloudflare-workers-ai-Coo5GpSQ.js`),__vite__mapDeps([57,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`deepseek`,name:`/settings/providers/deepseek`,component:()=>__vitePreload(()=>import(`./deepseek-cryzZIcn.js`),__vite__mapDeps([58,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`elevenlabs`,name:`/settings/providers/elevenlabs`,component:()=>__vitePreload(()=>import(`./elevenlabs-DzuUHR4k.js`),__vite__mapDeps([59,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`featherless-ai`,name:`/settings/providers/featherless-ai`,component:()=>__vitePreload(()=>import(`./featherless-ai-C665TGqc.js`),__vite__mapDeps([60,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`fireworks-ai`,name:`/settings/providers/fireworks-ai`,component:()=>__vitePreload(()=>import(`./fireworks-ai-CNUUKc6N.js`),__vite__mapDeps([61,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`google-generative-ai`,name:`/settings/providers/google-generative-ai`,component:()=>__vitePreload(()=>import(`./google-generative-ai-DlK2YXku.js`),__vite__mapDeps([62,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`microsoft-speech`,name:`/settings/providers/microsoft-speech`,component:()=>__vitePreload(()=>import(`./microsoft-speech-jmLNHtkW.js`),__vite__mapDeps([63,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`mistral-ai`,name:`/settings/providers/mistral-ai`,component:()=>__vitePreload(()=>import(`./mistral-ai-DKfvUF_S.js`),__vite__mapDeps([64,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`moonshot-ai`,name:`/settings/providers/moonshot-ai`,component:()=>__vitePreload(()=>import(`./moonshot-ai-cGYSl1Nz.js`),__vite__mapDeps([65,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`novita-ai`,name:`/settings/providers/novita-ai`,component:()=>__vitePreload(()=>import(`./novita-ai-B4HVg0kO.js`),__vite__mapDeps([66,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`ollama`,name:`/settings/providers/ollama`,component:()=>__vitePreload(()=>import(`./ollama-6INhEbAn.js`),__vite__mapDeps([67,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openai`,name:`/settings/providers/openai`,component:()=>__vitePreload(()=>import(`./openai-DOyMayjy.js`),__vite__mapDeps([68,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openai-audio-speech`,name:`/settings/providers/openai-audio-speech`,component:()=>__vitePreload(()=>import(`./openai-audio-speech-DfzMcJUw.js`),__vite__mapDeps([69,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openai-audio-transcription`,name:`/settings/providers/openai-audio-transcription`,component:()=>__vitePreload(()=>import(`./openai-audio-transcription-c5hgWOUB.js`),__vite__mapDeps([70,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`openrouter-ai`,name:`/settings/providers/openrouter-ai`,component:()=>__vitePreload(()=>import(`./openrouter-ai-DzSt5Tci.js`),__vite__mapDeps([71,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`player2`,name:`/settings/providers/player2`,component:()=>__vitePreload(()=>import(`./player2-uSjrXn5Y.js`),__vite__mapDeps([72,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`player2-speech`,name:`/settings/providers/player2-speech`,component:()=>__vitePreload(()=>import(`./player2-speech-BBofLZIX.js`),__vite__mapDeps([73,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`together-ai`,name:`/settings/providers/together-ai`,component:()=>__vitePreload(()=>import(`./together-ai-CecV5ca4.js`),__vite__mapDeps([74,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`volcengine`,name:`/settings/providers/volcengine`,component:()=>__vitePreload(()=>import(`./volcengine-BmRMK9-E.js`),__vite__mapDeps([75,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}},{path:`xai`,name:`/settings/providers/xai`,component:()=>__vitePreload(()=>import(`./xai-DkCOJscz.js`),__vite__mapDeps([76,6])),meta:{layout:`settings`,stageTransition:{name:`slide`}}}]},{path:`scene`,children:[{path:``,name:`/settings/scene/`,component:()=>__vitePreload(()=>import(`./scene-COu-Ti7i.js`),__vite__mapDeps([77,6,23,45])),meta:{layout:`settings`,stageTransition:{name:`slide`,pageSpecificAvailable:!0}}}]}]},{path:`/stage`,children:[{path:``,name:`StageScenePage`,component:()=>__vitePreload(()=>import(`./stage-DcWHapKr.js`),__vite__mapDeps([78,6,1,2,7,8,9,10,11,12])),meta:{layout:`stage`,stageTransition:{name:`bubble-wave-out`}}}]},{path:`/test`,children:[{path:`filter-message`,name:`/test/filter-message`,component:()=>__vitePreload(()=>import(`./filter-message-CC7rWc9-.js`),__vite__mapDeps([79,8,53]))},{path:`queues`,children:[{path:`delays`,name:`/test/queues/delays`,component:()=>__vitePreload(()=>import(`./delays-Bymja6WU.js`),__vite__mapDeps([80,8,53]))},{path:`emotions`,name:`/test/queues/emotions`,component:()=>__vitePreload(()=>import(`./emotions-B6yfBv1x.js`),__vite__mapDeps([81,8,53]))},{path:`messages`,name:`/test/queues/messages`,component:()=>__vitePreload(()=>import(`./messages-E5zyAorn.js`),__vite__mapDeps([82,8,53]))}]}]}];var AudioSpectrum_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`AudioSpectrum`,props:{stream:{},bars:{default:32},minFreq:{default:60},maxFreq:{default:4e3}},setup(__props){let props=__props,frequencies=ref(Array.from({length:props.bars}).fill(0));onMounted(()=>{handleAnalyze()}),watch(()=>props.stream,()=>{handleAnalyze()});function handleAnalyze(){if(!props.stream)return;let audioContext=new(window.AudioContext||window.webkitAudioContext),source=audioContext.createMediaStreamSource(props.stream),analyser=audioContext.createAnalyser();analyser.fftSize=2048,source.connect(analyser);let bufferLength=analyser.frequencyBinCount,dataArray=new Uint8Array(bufferLength),sampleRate=audioContext.sampleRate,frequencyResolution=sampleRate/analyser.fftSize,minBin=Math.floor(props.minFreq/frequencyResolution),maxBin=Math.floor(props.maxFreq/frequencyResolution),usableBins=maxBin-minBin,binsPerBar=Math.floor(usableBins/props.bars),analyze=()=>{try{requestAnimationFrame(analyze),analyser.getByteFrequencyData(dataArray);let bars=Array.from({length:props.bars}).fill(0);for(let i$1=0;i$1renderSlot(_ctx.$slots,`default`,{frequencies:frequencies.value})}}),AudioSpectrum_default=AudioSpectrum_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$41={"h-full":``,flex:``,"items-center":``,"gap-1":``},AMPLIFICATION=5;var AudioSpectrumVisualizer_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`AudioSpectrumVisualizer`,props:{frequencies:{},barsClass:{}},setup(__props){let props=__props;function getReductionFactor(index$1,totalBars){let minFactor=.1,maxFactor=1;return minFactor+(maxFactor-minFactor)*(index$1/totalBars)}function getBarHeight(frequency,index$1){let reductionFactor=getReductionFactor(index$1,props.frequencies.length);return Math.min(100,Math.max(10,frequency*100*AMPLIFICATION*reductionFactor))}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$41,[(openBlock(!0),createElementBlock(Fragment,null,renderList(_ctx.frequencies,(frequency,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,"h-full":``,flex:``,"flex-1":``,"items-end":``},[createBaseVNode(`div`,{transition:`all 100 ease-in-out`,"mx-auto":``,"my-0":``,"w-full":``,"rounded-full":``,class:normalizeClass(_ctx.barsClass),style:normalizeStyle({height:`${getBarHeight(frequency,index$1)}%`})},null,6)]))),128))]))}}),AudioSpectrumVisualizer_default=AudioSpectrumVisualizer_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$40={key:0,class:`mb-2 flex items-center justify-between`},_hoisted_2$27={class:`text-sm font-medium`},_hoisted_3$21={class:`text-sm text-neutral-500`};var LevelMeter_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`LevelMeter`,props:{level:{},min:{default:0},max:{default:100},numBars:{default:20},label:{default:`Level`},unit:{default:`%`},height:{default:24},showHeader:{type:Boolean,default:!0},animationSpeed:{default:75},colorThresholds:{default:()=>[{value:60,color:`bg-green-500`},{value:80,color:`bg-yellow-500`},{value:100,color:`bg-red-500`}]},formatValue:{}},setup(__props){let props=__props,levelBars=computed(()=>{let normalizedLevel=Math.max(0,Math.min(100,(props.level-props.min)/(props.max-props.min)*100)),activeBars=Math.floor(normalizedLevel/100*props.numBars);return Array.from({length:props.numBars},(_$2,i$1)=>({active:i$1a$2.value-b$3.value);for(let threshold of thresholds)if(barLevel<=threshold.value)return threshold.color;return thresholds[thresholds.length-1]?.color||`bg-green-500`}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,null,[_ctx.showHeader?(openBlock(),createElementBlock(`div`,_hoisted_1$40,[createBaseVNode(`span`,_hoisted_2$27,toDisplayString(_ctx.label),1),createBaseVNode(`span`,_hoisted_3$21,toDisplayString(_ctx.formatValue?_ctx.formatValue(_ctx.level):`${Math.round(_ctx.level)}${_ctx.unit}`),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,{class:`flex items-end gap-1 rounded bg-neutral-200/45 p-1 dark:bg-neutral-700`,style:normalizeStyle({height:`${_ctx.height}px`})},[(openBlock(!0),createElementBlock(Fragment,null,renderList(levelBars.value,(bar,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,class:normalizeClass([`flex-1 rounded-sm transition-all`,[bar.active?getBarColor(index$1,bar.level):`bg-neutral-200 dark:bg-neutral-600`,`duration-${_ctx.animationSpeed}`]]),style:normalizeStyle({height:bar.active?`100%`:`20%`})},null,6))),128))],4)]))}}),LevelMeter_default=LevelMeter_vue_vue_type_script_setup_true_lang_default,Volumed_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Volumed`,props:{perspective:{},transform:{}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`volumed`,style:normalizeStyle({perspective:`${_ctx.perspective}px`,transform:_ctx.transform})},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],4))}}),__plugin_vue_export_helper_default=(sfc,props)=>{let target$1=sfc.__vccOpts||sfc;for(let[key$1,val]of props)target$1[key$1]=val;return target$1},Volumed_default=__plugin_vue_export_helper_default(Volumed_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-d8ce56aa`]]),CursorMomentum_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`CursorMomentum`,props:{baseSpeed:{default:.1},friction:{default:.95},momentumFactor:{default:.005}},setup(__props,{expose:__expose}){let props=__props,momentum=ref(1),currentValue=ref(0),lastTimestamp=0,FRICTION=toRef(()=>props.friction),BASE_SPEED=toRef(()=>props.baseSpeed),MOMENTUM_FACTOR=toRef(()=>props.momentumFactor);function updateMomentum(timestamp$2){lastTimestamp||=timestamp$2;let deltaTime=timestamp$2-lastTimestamp;lastTimestamp=timestamp$2,momentum.value=BASE_SPEED.value+(momentum.value-BASE_SPEED.value)*FRICTION.value,currentValue.value+=momentum.value*deltaTime,requestAnimationFrame(updateMomentum)}function handleMouseMove(event){let speed=Math.sqrt(event.movementX**2+event.movementY**2);momentum.value+=speed*MOMENTUM_FACTOR.value}return onMounted(()=>{window.addEventListener(`mousemove`,handleMouseMove),requestAnimationFrame(updateMomentum)}),onUnmounted(()=>{window.removeEventListener(`mousemove`,handleMouseMove)}),__expose({momentum,currentValue}),(_ctx,_cache$1)=>renderSlot(_ctx.$slots,`default`,{momentum:momentum.value,currentValue:currentValue.value})}}),CursorMomentum_default=CursorMomentum_vue_vue_type_script_setup_true_lang_default,TestDummyMarkerFlat_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TestDummyMarkerFlat`,props:{size:{}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`test-dummy-flat`,style:normalizeStyle({width:`${_ctx.size}px`,height:`${_ctx.size}px`})},_cache$1[0]||=[createBaseVNode(`div`,{class:`marker`},null,-1)],4))}}),TestDummyMarkerFlat_default=__plugin_vue_export_helper_default(TestDummyMarkerFlat_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-28f8c660`]]),TestDummyMarker_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TestDummyMarker`,setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(CursorMomentum_default,{"base-speed":.1,friction:.95,"momentum-factor":5e-4},{default:withCtx(({currentValue})=>[createVNode(Volumed_default,{perspective:800,transform:`rotateX(45deg) translateY(3px)`},{default:withCtx(()=>[createVNode(TestDummyMarkerFlat_default,{size:24,style:normalizeStyle({transform:`rotate(${currentValue}deg)`})},null,8,[`style`])]),_:2},1024)]),_:1}))}}),TestDummyMarker_default=TestDummyMarker_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$39={key:0,class:`mb-2 flex items-center justify-between`},_hoisted_2$26={class:`text-sm font-medium`},_hoisted_3$20={class:`text-sm text-neutral-500`},_hoisted_4$18={key:1,class:`mt-1 flex gap-3 text-xs text-neutral-500`},_hoisted_5$15={class:`flex items-center gap-1`},_hoisted_6$13={class:`flex items-center gap-1`},_hoisted_7$11={class:`flex items-center gap-1`};var ThresholdMeter_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ThresholdMeter`,props:{value:{},threshold:{},min:{default:0},max:{default:1},numBars:{default:20},label:{default:`Value`},unit:{default:`%`},precision:{default:1},height:{default:24},showHeader:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},animationSpeed:{default:100},belowThresholdClass:{default:`bg-primary-300 dark:bg-primary-600`},aboveThresholdClass:{default:`bg-green-500`},thresholdBarClass:{default:`bg-white dark:bg-neutral-800`},inactiveBarClass:{default:`bg-neutral-300 dark:bg-neutral-600`},belowLabel:{default:`Below`},aboveLabel:{default:`Above`},thresholdLabel:{default:`Threshold`},formatValue:{}},setup(__props){let props=__props,thresholdBars=computed(()=>{let normalizedValue=Math.max(0,Math.min(1,(props.value-props.min)/(props.max-props.min))),normalizedThreshold=Math.max(0,Math.min(1,(props.threshold-props.min)/(props.max-props.min))),activeBars=Math.floor(normalizedValue*props.numBars),thresholdBar=Math.floor(normalizedThreshold*props.numBars);return Array.from({length:props.numBars},(_$2,i$1)=>({active:i$1=thresholdBar,isBelowThreshold:i$1(openBlock(),createElementBlock(`div`,null,[_ctx.showHeader?(openBlock(),createElementBlock(`div`,_hoisted_1$39,[createBaseVNode(`span`,_hoisted_2$26,toDisplayString(_ctx.label),1),createBaseVNode(`span`,_hoisted_3$20,toDisplayString(_ctx.formatValue?_ctx.formatValue(_ctx.value):`${(_ctx.value*100).toFixed(_ctx.precision)}${_ctx.unit}`),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,{class:`flex items-end gap-1 rounded bg-neutral-200/45 p-1 p-1 dark:bg-neutral-700`,style:normalizeStyle({height:`${_ctx.height}px`})},[(openBlock(!0),createElementBlock(Fragment,null,renderList(thresholdBars.value,(bar,index$1)=>(openBlock(),createElementBlock(`div`,{key:`threshold-${index$1}`,class:normalizeClass([`flex-1 rounded-sm transition-all`,[bar.isThreshold?_ctx.thresholdBarClass:bar.isAboveThreshold?_ctx.aboveThresholdClass:bar.isBelowThreshold?_ctx.belowThresholdClass:_ctx.inactiveBarClass,`duration-${_ctx.animationSpeed}`]]),style:normalizeStyle({height:bar.active||bar.isThreshold?`100%`:`20%`})},null,6))),128))],4),_ctx.showLegend?(openBlock(),createElementBlock(`div`,_hoisted_4$18,[createBaseVNode(`span`,_hoisted_5$15,[createBaseVNode(`div`,{class:normalizeClass(`inline-block h-0.5lh w-1lh rounded-full ${_ctx.belowThresholdClass}`)},null,2),createTextVNode(` `+toDisplayString(_ctx.belowLabel),1)]),createBaseVNode(`span`,_hoisted_6$13,[createBaseVNode(`div`,{class:normalizeClass(`inline-block h-0.5lh w-1lh rounded-full border border-neutral-400 ${_ctx.thresholdBarClass}`)},null,2),createTextVNode(` `+toDisplayString(_ctx.thresholdLabel),1)]),createBaseVNode(`span`,_hoisted_7$11,[createBaseVNode(`div`,{class:normalizeClass(`inline-block h-0.5lh w-1lh rounded-full ${_ctx.aboveThresholdClass}`)},null,2),createTextVNode(` `+toDisplayString(_ctx.aboveLabel),1)])])):createCommentVNode(``,!0)]))}}),ThresholdMeter_default=ThresholdMeter_vue_vue_type_script_setup_true_lang_default;const parseNumber=(color$2,len)=>{if(typeof color$2==`number`){if(len===3)return{mode:`rgb`,r:(color$2>>8&15|color$2>>4&240)/255,g:(color$2>>4&15|color$2&240)/255,b:(color$2&15|color$2<<4&240)/255};if(len===4)return{mode:`rgb`,r:(color$2>>12&15|color$2>>8&240)/255,g:(color$2>>8&15|color$2>>4&240)/255,b:(color$2>>4&15|color$2&240)/255,alpha:(color$2&15|color$2<<4&240)/255};if(len===6)return{mode:`rgb`,r:(color$2>>16&255)/255,g:(color$2>>8&255)/255,b:(color$2&255)/255};if(len===8)return{mode:`rgb`,r:(color$2>>24&255)/255,g:(color$2>>16&255)/255,b:(color$2>>8&255)/255,alpha:(color$2&255)/255}}};var parseNumber_default=parseNumber;const named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};var named_default=named;const parseNamed=color$2=>parseNumber_default(named_default[color$2.toLowerCase()],6);var parseNamed_default=parseNamed;const hex=/^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i,parseHex=color$2=>{let match;return(match=color$2.match(hex))?parseNumber_default(parseInt(match[1],16),match[1].length):void 0};var parseHex_default=parseHex;const num$1=`([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)`,num_none=`(?:${num$1}|none)`,per=`${num$1}%`,per_none=`(?:${num$1}%|none)`,num_per=`(?:${num$1}%|${num$1})`,num_per_none=`(?:${num$1}%|${num$1}|none)`,hue=`(?:${num$1}(deg|grad|rad|turn)|${num$1})`,hue_none=`(?:${num$1}(deg|grad|rad|turn)|${num$1}|none)`,c$2=`\\s*,\\s*`,rx_num_per_none=RegExp(`^`+num_per_none+`$`),rgb_num_old=RegExp(`^rgba?\\(\\s*${num$1}${c$2}${num$1}${c$2}${num$1}\\s*(?:,\\s*${num_per}\\s*)?\\)$`),rgb_per_old=RegExp(`^rgba?\\(\\s*${per}${c$2}${per}${c$2}${per}\\s*(?:,\\s*${num_per}\\s*)?\\)$`),parseRgbLegacy=color$2=>{let res={mode:`rgb`},match;if(match=color$2.match(rgb_num_old))match[1]!==void 0&&(res.r=match[1]/255),match[2]!==void 0&&(res.g=match[2]/255),match[3]!==void 0&&(res.b=match[3]/255);else if(match=color$2.match(rgb_per_old))match[1]!==void 0&&(res.r=match[1]/100),match[2]!==void 0&&(res.g=match[2]/100),match[3]!==void 0&&(res.b=match[3]/100);else return;return match[4]===void 0?match[5]!==void 0&&(res.alpha=Math.max(0,Math.min(1,+match[5]))):res.alpha=Math.max(0,Math.min(1,match[4]/100)),res};var parseRgbLegacy_default=parseRgbLegacy;const prepare=(color$2,mode)=>color$2===void 0?void 0:typeof color$2==`object`?color$2.mode===void 0?mode?{...color$2,mode}:void 0:color$2:parse_default(color$2);var _prepare_default=prepare;const converter=(target_mode=`rgb`)=>color$2=>(color$2=_prepare_default(color$2,target_mode))===void 0?void 0:color$2.mode===target_mode?color$2:converters[color$2.mode][target_mode]?converters[color$2.mode][target_mode](color$2):target_mode===`rgb`?converters[color$2.mode].rgb(color$2):converters.rgb[target_mode](converters[color$2.mode].rgb(color$2));var converter_default=converter;const converters={},modes={},parsers=[],colorProfiles={},identity=v$1=>v$1,useMode=definition$29=>(converters[definition$29.mode]={...converters[definition$29.mode],...definition$29.toMode},Object.keys(definition$29.fromMode||{}).forEach(k$4=>{converters[k$4]||(converters[k$4]={}),converters[k$4][definition$29.mode]=definition$29.fromMode[k$4]}),definition$29.ranges||={},definition$29.difference||={},definition$29.channels.forEach(channel=>{if(definition$29.ranges[channel]===void 0&&(definition$29.ranges[channel]=[0,1]),!definition$29.interpolate[channel])throw Error(`Missing interpolator for: ${channel}`);typeof definition$29.interpolate[channel]==`function`&&(definition$29.interpolate[channel]={use:definition$29.interpolate[channel]}),definition$29.interpolate[channel].fixup||(definition$29.interpolate[channel].fixup=identity)}),modes[definition$29.mode]=definition$29,(definition$29.parse||[]).forEach(parser=>{useParser(parser,definition$29.mode)}),converter_default(definition$29.mode)),getMode=mode=>modes[mode],useParser=(parser,mode)=>{if(typeof parser==`string`){if(!mode)throw Error(`'mode' required when 'parser' is a string`);colorProfiles[parser]=mode}else typeof parser==`function`&&parsers.indexOf(parser)<0&&parsers.push(parser)},IdentStartCodePoint=/[^\x00-\x7F]|[a-zA-Z_]/,IdentCodePoint=/[^\x00-\x7F]|[-\w]/,Tok={Function:`function`,Ident:`ident`,Number:`number`,Percentage:`percentage`,ParenClose:`)`,None:`none`,Hue:`hue`,Alpha:`alpha`};let _i=0;function is_num(chars){let ch=chars[_i],ch1=chars[_i+1];return ch===`-`||ch===`+`?/\d/.test(ch1)||ch1===`.`&&/\d/.test(chars[_i+2]):ch===`.`?/\d/.test(ch1):/\d/.test(ch)}function is_ident(chars){if(_i>=chars.length)return!1;let ch=chars[_i];if(IdentStartCodePoint.test(ch))return!0;if(ch===`-`){if(chars.length-_i<2)return!1;let ch1=chars[_i+1];return!!(ch1===`-`||IdentStartCodePoint.test(ch1))}return!1}const huenits={deg:1,rad:180/Math.PI,grad:9/10,turn:360};function num(chars){let value$1=``;if((chars[_i]===`-`||chars[_i]===`+`)&&(value$1+=chars[_i++]),value$1+=digits(chars),chars[_i]===`.`&&/\d/.test(chars[_i+1])&&(value$1+=chars[_i++]+digits(chars)),(chars[_i]===`e`||chars[_i]===`E`)&&((chars[_i+1]===`-`||chars[_i+1]===`+`)&&/\d/.test(chars[_i+2])?value$1+=chars[_i++]+chars[_i++]+digits(chars):/\d/.test(chars[_i+1])&&(value$1+=chars[_i++]+digits(chars))),is_ident(chars)){let id=ident(chars);return id===`deg`||id===`rad`||id===`turn`||id===`grad`?{type:Tok.Hue,value:value$1*huenits[id]}:void 0}return chars[_i]===`%`?(_i++,{type:Tok.Percentage,value:+value$1}):{type:Tok.Number,value:+value$1}}function digits(chars){let v$1=``;for(;/\d/.test(chars[_i]);)v$1+=chars[_i++];return v$1}function ident(chars){let v$1=``;for(;_i4)){if(coords$1.length===4){if(coords$1[3].type!==Tok.Alpha)return;coords$1[3]=coords$1[3].value}return coords$1.length===3&&coords$1.push({type:Tok.None,value:void 0}),coords$1.every(c$4=>c$4.type!==Tok.Alpha)?coords$1:void 0}}function parseModernSyntax(tokens,includeHue){tokens._i=0;let token=tokens[tokens._i++];if(!token||token.type!==Tok.Function)return;let coords$1=consumeCoords(tokens,includeHue);if(coords$1)return coords$1.unshift(token.value),coords$1}const parse$2=color$2=>{if(typeof color$2!=`string`)return;let tokens=tokenize(color$2),parsed=tokens?parseModernSyntax(tokens,!0):void 0,result,i$1=0,len=parsers.length;for(;i$1c$4===`transparent`?{mode:`rgb`,r:0,g:0,b:0,alpha:0}:void 0;var parseTransparent_default=parseTransparent;const lerp$1=(a$2,b$3,t)=>a$2+t*(b$3-a$2),get_classes=arr=>{let classes=[];for(let i$1=0;i$1arr=>{let classes=get_classes(arr);return t=>{let cls=t*classes.length,idx=t>=1?classes.length-1:Math.max(Math.floor(cls),0),pair=classes[idx];return pair===void 0?void 0:interpolator(pair[0],pair[1],cls-idx)}},interpolatorLinear=interpolatorPiecewise(lerp$1),fixupAlpha=arr=>{let some_defined=!1,res=arr.map(v$1=>v$1===void 0?1:(some_defined=!0,v$1));return some_defined?res:arr},definition$28={mode:`rgb`,channels:[`r`,`g`,`b`,`alpha`],parse:[parseRgb_default,parseHex_default,parseRgbLegacy_default,parseNamed_default,parseTransparent_default,`srgb`],serialize:`srgb`,interpolate:{r:interpolatorLinear,g:interpolatorLinear,b:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},gamut:!0,white:{r:1,g:1,b:1},black:{r:0,g:0,b:0}};var definition_default$23=definition$28;const linearize$2=(v$1=0)=>Math.abs(v$1)**(563/256)*Math.sign(v$1),convertA98ToXyz65=a98$1=>{let r$2=linearize$2(a98$1.r),g$2=linearize$2(a98$1.g),b$3=linearize$2(a98$1.b),res={mode:`xyz65`,x:.5766690429101305*r$2+.1855582379065463*g$2+.1882286462349947*b$3,y:.297344975250536*r$2+.6273635662554661*g$2+.0752914584939979*b$3,z:.0270313613864123*r$2+.0706888525358272*g$2+.9913375368376386*b$3};return a98$1.alpha!==void 0&&(res.alpha=a98$1.alpha),res};var convertA98ToXyz65_default=convertA98ToXyz65;const gamma$2=v$1=>Math.abs(v$1)**(256/563)*Math.sign(v$1),convertXyz65ToA98=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res={mode:`a98`,r:gamma$2(x$3*2.0415879038107465-y$2*.5650069742788597-.3447313507783297*z$2),g:gamma$2(x$3*-.9692436362808798+y$2*1.8759675015077206+.0415550574071756*z$2),b:gamma$2(x$3*.0134442806320312-y$2*.1183623922310184+1.0151749943912058*z$2)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToA98_default=convertXyz65ToA98;const fn$3=(c$4=0)=>{let abs$1=Math.abs(c$4);return abs$1<=.04045?c$4/12.92:(Math.sign(c$4)||1)*((abs$1+.055)/1.055)**2.4},convertRgbToLrgb=({r:r$2,g:g$2,b:b$3,alpha:alpha$1})=>{let res={mode:`lrgb`,r:fn$3(r$2),g:fn$3(g$2),b:fn$3(b$3)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertRgbToLrgb_default=convertRgbToLrgb;const convertRgbToXyz65=rgb$2=>{let{r:r$2,g:g$2,b:b$3,alpha:alpha$1}=convertRgbToLrgb_default(rgb$2),res={mode:`xyz65`,x:.4123907992659593*r$2+.357584339383878*g$2+.1804807884018343*b$3,y:.2126390058715102*r$2+.715168678767756*g$2+.0721923153607337*b$3,z:.0193308187155918*r$2+.119194779794626*g$2+.9505321522496607*b$3};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertRgbToXyz65_default=convertRgbToXyz65;const fn$2=(c$4=0)=>{let abs$1=Math.abs(c$4);return abs$1>.0031308?(Math.sign(c$4)||1)*(1.055*abs$1**(1/2.4)-.055):c$4*12.92},convertLrgbToRgb=({r:r$2,g:g$2,b:b$3,alpha:alpha$1},mode=`rgb`)=>{let res={mode,r:fn$2(r$2),g:fn$2(g$2),b:fn$2(b$3)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLrgbToRgb_default=convertLrgbToRgb;const convertXyz65ToRgb=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res=convertLrgbToRgb_default({r:x$3*3.2409699419045226-y$2*1.537383177570094-.4986107602930034*z$2,g:x$3*-.9692436362808796+y$2*1.8759675015077204+.0415550574071756*z$2,b:x$3*.0556300796969936-y$2*.2039769588889765+1.0569715142428784*z$2});return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToRgb_default=convertXyz65ToRgb;const definition$27={...definition_default$23,mode:`a98`,parse:[`a98-rgb`],serialize:`a98-rgb`,fromMode:{rgb:color$2=>convertXyz65ToA98_default(convertRgbToXyz65_default(color$2)),xyz65:convertXyz65ToA98_default},toMode:{rgb:color$2=>convertXyz65ToRgb_default(convertA98ToXyz65_default(color$2)),xyz65:convertA98ToXyz65_default}};var definition_default=definition$27;const normalizeHue=hue$2=>(hue$2%=360)<0?hue$2+360:hue$2;var normalizeHue_default=normalizeHue;const hue$1=(hues,fn$5)=>hues.map((hue$2,idx,arr)=>{if(hue$2===void 0)return hue$2;let normalized=normalizeHue_default(hue$2);return idx===0||hues[idx-1]===void 0?normalized:fn$5(normalized-normalizeHue_default(arr[idx-1]))}).reduce((acc,curr)=>!acc.length||curr===void 0||acc[acc.length-1]===void 0?(acc.push(curr),acc):(acc.push(curr+acc[acc.length-1]),acc),[]),fixupHueShorter=arr=>hue$1(arr,d$2=>Math.abs(d$2)<=180?d$2:d$2-360*Math.sign(d$2)),M=[-.14861,1.78277,-.29227,-.90649,1.97294,0],degToRad=Math.PI/180,radToDeg=180/Math.PI;let DE=M[3]*M[4],BE=M[1]*M[4],BCAD=M[1]*M[2]-M[0]*M[3];const convertRgbToCubehelix=({r:r$2,g:g$2,b:b$3,alpha:alpha$1})=>{r$2===void 0&&(r$2=0),g$2===void 0&&(g$2=0),b$3===void 0&&(b$3=0);let l$1=(BCAD*b$3+r$2*DE-g$2*BE)/(BCAD+DE-BE),x$3=b$3-l$1,y$2=(M[4]*(g$2-l$1)-M[2]*x$3)/M[3],res={mode:`cubehelix`,l:l$1,s:l$1===0||l$1===1?void 0:Math.sqrt(x$3*x$3+y$2*y$2)/(M[4]*l$1*(1-l$1))};return res.s&&(res.h=Math.atan2(y$2,x$3)*radToDeg-120),alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertRgbToCubehelix_default=convertRgbToCubehelix;const convertCubehelixToRgb=({h:h$3,s:s$1,l:l$1,alpha:alpha$1})=>{let res={mode:`rgb`};h$3=(h$3===void 0?0:h$3+120)*degToRad,l$1===void 0&&(l$1=0);let amp=s$1===void 0?0:s$1*l$1*(1-l$1),cosh=Math.cos(h$3),sinh=Math.sin(h$3);return res.r=l$1+amp*(M[0]*cosh+M[1]*sinh),res.g=l$1+amp*(M[2]*cosh+M[3]*sinh),res.b=l$1+amp*(M[4]*cosh+M[5]*sinh),alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertCubehelixToRgb_default=convertCubehelixToRgb;const differenceHueSaturation=(std,smp)=>{if(std.h===void 0||smp.h===void 0||!std.s||!smp.s)return 0;let std_h=normalizeHue_default(std.h),smp_h=normalizeHue_default(smp.h),dH=Math.sin((smp_h-std_h+360)/2*Math.PI/180);return 2*Math.sqrt(std.s*smp.s)*dH},differenceHueNaive=(std,smp)=>{if(std.h===void 0||smp.h===void 0)return 0;let std_h=normalizeHue_default(std.h),smp_h=normalizeHue_default(smp.h);return Math.abs(smp_h-std_h)>180?std_h-(smp_h-360*Math.sign(smp_h-std_h)):smp_h-std_h},differenceHueChroma=(std,smp)=>{if(std.h===void 0||smp.h===void 0||!std.c||!smp.c)return 0;let std_h=normalizeHue_default(std.h),smp_h=normalizeHue_default(smp.h),dH=Math.sin((smp_h-std_h+360)/2*Math.PI/180);return 2*Math.sqrt(std.c*smp.c)*dH},averageAngle=val=>{let sum=val.reduce((sum$1,val$1)=>{if(val$1!==void 0){let rad=val$1*Math.PI/180;sum$1.sin+=Math.sin(rad),sum$1.cos+=Math.cos(rad)}return sum$1},{sin:0,cos:0}),angle=Math.atan2(sum.sin,sum.cos)*180/Math.PI;return angle<0?360+angle:angle},definition$26={mode:`cubehelix`,channels:[`h`,`s`,`l`,`alpha`],parse:[`--cubehelix`],serialize:`--cubehelix`,ranges:{h:[0,360],s:[0,4.614],l:[0,1]},fromMode:{rgb:convertRgbToCubehelix_default},toMode:{rgb:convertCubehelixToRgb_default},interpolate:{h:{use:interpolatorLinear,fixup:fixupHueShorter},s:interpolatorLinear,l:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueSaturation},average:{h:averageAngle}};var definition_default$1=definition$26;const convertLabToLch=({l:l$1,a:a$2,b:b$3,alpha:alpha$1},mode=`lch`)=>{a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let c$4=Math.sqrt(a$2*a$2+b$3*b$3),res={mode,l:l$1,c:c$4};return c$4&&(res.h=normalizeHue_default(Math.atan2(b$3,a$2)*180/Math.PI)),alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLabToLch_default=convertLabToLch;const convertLchToLab=({l:l$1,c:c$4,h:h$3,alpha:alpha$1},mode=`lab`)=>{h$3===void 0&&(h$3=0);let res={mode,l:l$1,a:c$4?c$4*Math.cos(h$3/180*Math.PI):0,b:c$4?c$4*Math.sin(h$3/180*Math.PI):0};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLchToLab_default=convertLchToLab;const k$2=29**3/3**3,e$1=6**3/29**3,D50={X:.3457/.3585,Y:1,Z:.2958/.3585},D65={X:.3127/.329,Y:1,Z:.3583/.329},k$3=29**3/3**3,e$2=6**3/29**3;let fn$1=v$1=>v$1**3>e$1?v$1**3:(116*v$1-16)/k$2;const convertLab65ToXyz65=({l:l$1,a:a$2,b:b$3,alpha:alpha$1})=>{l$1===void 0&&(l$1=0),a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let fy=(l$1+16)/116,fx=a$2/500+fy,fz=fy-b$3/200,res={mode:`xyz65`,x:fn$1(fx)*D65.X,y:fn$1(fy)*D65.Y,z:fn$1(fz)*D65.Z};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLab65ToXyz65_default=convertLab65ToXyz65;const convertLab65ToRgb=lab$1=>convertXyz65ToRgb_default(convertLab65ToXyz65_default(lab$1));var convertLab65ToRgb_default=convertLab65ToRgb;const f$2=value$1=>value$1>e$1?Math.cbrt(value$1):(k$2*value$1+16)/116,convertXyz65ToLab65=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let f0=f$2(x$3/D65.X),f1=f$2(y$2/D65.Y),f2=f$2(z$2/D65.Z),res={mode:`lab65`,l:116*f1-16,a:500*(f0-f1),b:200*(f1-f2)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToLab65_default=convertXyz65ToLab65;const convertRgbToLab65=rgb$2=>{let res=convertXyz65ToLab65_default(convertRgbToXyz65_default(rgb$2));return rgb$2.r===rgb$2.b&&rgb$2.b===rgb$2.g&&(res.a=res.b=0),res};var convertRgbToLab65_default=convertRgbToLab65;const kE=1,kCH=1,θ=26/180*Math.PI,cosθ=Math.cos(θ),sinθ=Math.sin(θ),factor=100/Math.log(139/100),convertDlchToLab65=({l:l$1,c:c$4,h:h$3,alpha:alpha$1})=>{l$1===void 0&&(l$1=0),c$4===void 0&&(c$4=0),h$3===void 0&&(h$3=0);let res={mode:`lab65`,l:(Math.exp(l$1*kE/factor)-1)/.0039},G$1=(Math.exp(.0435*c$4*kCH*kE)-1)/.075,e$3=G$1*Math.cos(h$3/180*Math.PI-θ),f$3=G$1*Math.sin(h$3/180*Math.PI-θ);return res.a=e$3*cosθ-f$3/.83*sinθ,res.b=e$3*sinθ+f$3/.83*cosθ,alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertDlchToLab65_default=convertDlchToLab65;const convertLab65ToDlch=({l:l$1,a:a$2,b:b$3,alpha:alpha$1})=>{l$1===void 0&&(l$1=0),a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let e$3=a$2*cosθ+b$3*sinθ,f$3=.83*(b$3*cosθ-a$2*sinθ),G$1=Math.sqrt(e$3*e$3+f$3*f$3),res={mode:`dlch`,l:factor/kE*Math.log(1+.0039*l$1),c:Math.log(1+.075*G$1)/(.0435*kCH*kE)};return res.c&&(res.h=normalizeHue_default((Math.atan2(f$3,e$3)+θ)/Math.PI*180)),alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLab65ToDlch_default=convertLab65ToDlch;const convertDlabToLab65=c$4=>convertDlchToLab65_default(convertLabToLch_default(c$4,`dlch`)),convertLab65ToDlab=c$4=>convertLchToLab_default(convertLab65ToDlch_default(c$4),`dlab`),definition$25={mode:`dlab`,parse:[`--din99o-lab`],serialize:`--din99o-lab`,toMode:{lab65:convertDlabToLab65,rgb:c$4=>convertLab65ToRgb_default(convertDlabToLab65(c$4))},fromMode:{lab65:convertLab65ToDlab,rgb:c$4=>convertLab65ToDlab(convertRgbToLab65_default(c$4))},channels:[`l`,`a`,`b`,`alpha`],ranges:{l:[0,100],a:[-40.09,45.501],b:[-40.469,44.344]},interpolate:{l:interpolatorLinear,a:interpolatorLinear,b:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$2=definition$25;const definition$24={mode:`dlch`,parse:[`--din99o-lch`],serialize:`--din99o-lch`,toMode:{lab65:convertDlchToLab65_default,dlab:c$4=>convertLchToLab_default(c$4,`dlab`),rgb:c$4=>convertLab65ToRgb_default(convertDlchToLab65_default(c$4))},fromMode:{lab65:convertLab65ToDlch_default,dlab:c$4=>convertLabToLch_default(c$4,`dlch`),rgb:c$4=>convertLab65ToDlch_default(convertRgbToLab65_default(c$4))},channels:[`l`,`c`,`h`,`alpha`],ranges:{l:[0,100],c:[0,51.484],h:[0,360]},interpolate:{l:interpolatorLinear,c:interpolatorLinear,h:{use:interpolatorLinear,fixup:fixupHueShorter},alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueChroma},average:{h:averageAngle}};var definition_default$3=definition$24;function convertHsiToRgb({h:h$3,s:s$1,i:i$1,alpha:alpha$1}){h$3=normalizeHue_default(h$3===void 0?0:h$3),s$1===void 0&&(s$1=0),i$1===void 0&&(i$1=0);let f$3=Math.abs(h$3/60%2-1),res;switch(Math.floor(h$3/60)){case 0:res={r:i$1*(1+s$1*(3/(2-f$3)-1)),g:i$1*(1+s$1*(3*(1-f$3)/(2-f$3)-1)),b:i$1*(1-s$1)};break;case 1:res={r:i$1*(1+s$1*(3*(1-f$3)/(2-f$3)-1)),g:i$1*(1+s$1*(3/(2-f$3)-1)),b:i$1*(1-s$1)};break;case 2:res={r:i$1*(1-s$1),g:i$1*(1+s$1*(3/(2-f$3)-1)),b:i$1*(1+s$1*(3*(1-f$3)/(2-f$3)-1))};break;case 3:res={r:i$1*(1-s$1),g:i$1*(1+s$1*(3*(1-f$3)/(2-f$3)-1)),b:i$1*(1+s$1*(3/(2-f$3)-1))};break;case 4:res={r:i$1*(1+s$1*(3*(1-f$3)/(2-f$3)-1)),g:i$1*(1-s$1),b:i$1*(1+s$1*(3/(2-f$3)-1))};break;case 5:res={r:i$1*(1+s$1*(3/(2-f$3)-1)),g:i$1*(1-s$1),b:i$1*(1+s$1*(3*(1-f$3)/(2-f$3)-1))};break;default:res={r:i$1*(1-s$1),g:i$1*(1-s$1),b:i$1*(1-s$1)}}return res.mode=`rgb`,alpha$1!==void 0&&(res.alpha=alpha$1),res}function convertRgbToHsi({r:r$2,g:g$2,b:b$3,alpha:alpha$1}){r$2===void 0&&(r$2=0),g$2===void 0&&(g$2=0),b$3===void 0&&(b$3=0);let M$1=Math.max(r$2,g$2,b$3),m$2=Math.min(r$2,g$2,b$3),res={mode:`hsi`,s:r$2+g$2+b$3===0?0:1-3*m$2/(r$2+g$2+b$3),i:(r$2+g$2+b$3)/3};return M$1-m$2!==0&&(res.h=(M$1===r$2?(g$2-b$3)/(M$1-m$2)+(g$2{switch(unit){case`deg`:return+val;case`rad`:return val/Math.PI*180;case`grad`:return val/10*9;case`turn`:return val*360}};var hue_default=hueToDeg;const hsl_old=RegExp(`^hsla?\\(\\s*${hue}${c$2}${per}${c$2}${per}\\s*(?:,\\s*${num_per}\\s*)?\\)$`),parseHslLegacy=color$2=>{let match=color$2.match(hsl_old);if(!match)return;let res={mode:`hsl`};return match[3]===void 0?match[1]!==void 0&&match[2]!==void 0&&(res.h=hue_default(match[1],match[2])):res.h=+match[3],match[4]!==void 0&&(res.s=Math.min(Math.max(0,match[4]/100),1)),match[5]!==void 0&&(res.l=Math.min(Math.max(0,match[5]/100),1)),match[6]===void 0?match[7]!==void 0&&(res.alpha=Math.max(0,Math.min(1,+match[7]))):res.alpha=Math.max(0,Math.min(1,match[6]/100)),res};var parseHslLegacy_default=parseHslLegacy;function parseHsl(color$2,parsed){if(!parsed||parsed[0]!==`hsl`&&parsed[0]!==`hsla`)return;let res={mode:`hsl`},[,h$3,s$1,l$1,alpha$1]=parsed;if(h$3.type!==Tok.None){if(h$3.type===Tok.Percentage)return;res.h=h$3.value}if(s$1.type!==Tok.None){if(s$1.type===Tok.Hue)return;res.s=s$1.value/100}if(l$1.type!==Tok.None){if(l$1.type===Tok.Hue)return;res.l=l$1.value/100}return alpha$1.type!==Tok.None&&(res.alpha=Math.min(1,Math.max(0,alpha$1.type===Tok.Number?alpha$1.value:alpha$1.value/100))),res}var parseHsl_default=parseHsl;const definition$22={mode:`hsl`,toMode:{rgb:convertHslToRgb},fromMode:{rgb:convertRgbToHsl},channels:[`h`,`s`,`l`,`alpha`],ranges:{h:[0,360]},gamut:`rgb`,parse:[parseHsl_default,parseHslLegacy_default],serialize:c$4=>`hsl(${c$4.h===void 0?`none`:c$4.h} ${c$4.s===void 0?`none`:c$4.s*100+`%`} ${c$4.l===void 0?`none`:c$4.l*100+`%`}${c$4.alpha<1?` / ${c$4.alpha}`:``})`,interpolate:{h:{use:interpolatorLinear,fixup:fixupHueShorter},s:interpolatorLinear,l:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueSaturation},average:{h:averageAngle}};var definition_default$5=definition$22;function convertHsvToRgb({h:h$3,s:s$1,v:v$1,alpha:alpha$1}){h$3=normalizeHue_default(h$3===void 0?0:h$3),s$1===void 0&&(s$1=0),v$1===void 0&&(v$1=0);let f$3=Math.abs(h$3/60%2-1),res;switch(Math.floor(h$3/60)){case 0:res={r:v$1,g:v$1*(1-s$1*f$3),b:v$1*(1-s$1)};break;case 1:res={r:v$1*(1-s$1*f$3),g:v$1,b:v$1*(1-s$1)};break;case 2:res={r:v$1*(1-s$1),g:v$1,b:v$1*(1-s$1*f$3)};break;case 3:res={r:v$1*(1-s$1),g:v$1*(1-s$1*f$3),b:v$1};break;case 4:res={r:v$1*(1-s$1*f$3),g:v$1*(1-s$1),b:v$1};break;case 5:res={r:v$1,g:v$1*(1-s$1),b:v$1*(1-s$1*f$3)};break;default:res={r:v$1*(1-s$1),g:v$1*(1-s$1),b:v$1*(1-s$1)}}return res.mode=`rgb`,alpha$1!==void 0&&(res.alpha=alpha$1),res}function convertRgbToHsv({r:r$2,g:g$2,b:b$3,alpha:alpha$1}){r$2===void 0&&(r$2=0),g$2===void 0&&(g$2=0),b$3===void 0&&(b$3=0);let M$1=Math.max(r$2,g$2,b$3),m$2=Math.min(r$2,g$2,b$3),res={mode:`hsv`,s:M$1===0?0:1-m$2/M$1,v:M$1};return M$1-m$2!==0&&(res.h=(M$1===r$2?(g$2-b$3)/(M$1-m$2)+(g$21){let s$1=w$1+b$3;w$1/=s$1,b$3/=s$1}return convertHsvToRgb({h:h$3,s:b$3===1?1:1-w$1/(1-b$3),v:1-b$3,alpha:alpha$1})}function convertRgbToHwb(rgba$1){let hsv$1=convertRgbToHsv(rgba$1);if(hsv$1===void 0)return;let s$1=hsv$1.s===void 0?0:hsv$1.s,v$1=hsv$1.v===void 0?0:hsv$1.v,res={mode:`hwb`,w:(1-s$1)*v$1,b:1-v$1};return hsv$1.h!==void 0&&(res.h=hsv$1.h),hsv$1.alpha!==void 0&&(res.alpha=hsv$1.alpha),res}function ParseHwb(color$2,parsed){if(!parsed||parsed[0]!==`hwb`)return;let res={mode:`hwb`},[,h$3,w$1,b$3,alpha$1]=parsed;if(h$3.type!==Tok.None){if(h$3.type===Tok.Percentage)return;res.h=h$3.value}if(w$1.type!==Tok.None){if(w$1.type===Tok.Hue)return;res.w=w$1.value/100}if(b$3.type!==Tok.None){if(b$3.type===Tok.Hue)return;res.b=b$3.value/100}return alpha$1.type!==Tok.None&&(res.alpha=Math.min(1,Math.max(0,alpha$1.type===Tok.Number?alpha$1.value:alpha$1.value/100))),res}var parseHwb_default=ParseHwb;const definition$20={mode:`hwb`,toMode:{rgb:convertHwbToRgb},fromMode:{rgb:convertRgbToHwb},channels:[`h`,`w`,`b`,`alpha`],ranges:{h:[0,360]},gamut:`rgb`,parse:[parseHwb_default],serialize:c$4=>`hwb(${c$4.h===void 0?`none`:c$4.h} ${c$4.w===void 0?`none`:c$4.w*100+`%`} ${c$4.b===void 0?`none`:c$4.b*100+`%`}${c$4.alpha<1?` / ${c$4.alpha}`:``})`,interpolate:{h:{use:interpolatorLinear,fixup:fixupHueShorter},w:interpolatorLinear,b:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueNaive},average:{h:averageAngle}};var definition_default$7=definition$20;const YW=203,M1=.1593017578125,M2=78.84375,C1=.8359375,C2=18.8515625,C3=18.6875;function transferPqDecode(v$1){if(v$1<0)return 0;let c$4=v$1**(1/M2);return 1e4*(Math.max(0,c$4-C1)/(C2-C3*c$4))**(1/M1)}function transferPqEncode(v$1){if(v$1<0)return 0;let c$4=(v$1/1e4)**M1;return((C1+C2*c$4)/(1+C3*c$4))**+M2}const toRel=c$4=>Math.max(c$4/YW,0),convertItpToXyz65=({i:i$1,t,p:p$5,alpha:alpha$1})=>{i$1===void 0&&(i$1=0),t===void 0&&(t=0),p$5===void 0&&(p$5=0);let l$1=transferPqDecode(i$1+.008609037037932761*t+.11102962500302593*p$5),m$2=transferPqDecode(i$1-.00860903703793275*t-.11102962500302599*p$5),s$1=transferPqDecode(i$1+.5600313357106791*t-.32062717498731885*p$5),res={mode:`xyz65`,x:toRel(2.070152218389422*l$1-1.3263473389671556*m$2+.2066510476294051*s$1),y:toRel(.3647385209748074*l$1+.680566024947227*m$2-.0453045459220346*s$1),z:toRel(-.049747207535812*l$1-.0492609666966138*m$2+1.1880659249923042*s$1)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertItpToXyz65_default=convertItpToXyz65;const toAbs=(c$4=0)=>Math.max(c$4*YW,0),convertXyz65ToItp=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{let absX=toAbs(x$3),absY=toAbs(y$2),absZ=toAbs(z$2),l$1=transferPqEncode(.3592832590121217*absX+.6976051147779502*absY-.0358915932320289*absZ),m$2=transferPqEncode(-.1920808463704995*absX+1.1004767970374323*absY+.0753748658519118*absZ),s$1=transferPqEncode(.0070797844607477*absX+.0748396662186366*absY+.8433265453898765*absZ),i$1=.5*l$1+.5*m$2,t=1.61376953125*l$1-3.323486328125*m$2+1.709716796875*s$1,p$5=4.378173828125*l$1-4.24560546875*m$2-.132568359375*s$1,res={mode:`itp`,i:i$1,t,p:p$5};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToItp_default=convertXyz65ToItp;const definition$19={mode:`itp`,channels:[`i`,`t`,`p`,`alpha`],parse:[`--ictcp`],serialize:`--ictcp`,toMode:{xyz65:convertItpToXyz65_default,rgb:color$2=>convertXyz65ToRgb_default(convertItpToXyz65_default(color$2))},fromMode:{xyz65:convertXyz65ToItp_default,rgb:color$2=>convertXyz65ToItp_default(convertRgbToXyz65_default(color$2))},ranges:{i:[0,.581],t:[-.369,.272],p:[-.164,.331]},interpolate:{i:interpolatorLinear,t:interpolatorLinear,p:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$8=definition$19;const p$3=134.03437499999998,d0$1=16295499532821565e-27,jabPqEncode=v$1=>{if(v$1<0)return 0;let vn$3=(v$1/1e4)**M1;return((C1+C2*vn$3)/(1+C3*vn$3))**+p$3},abs=(v$1=0)=>Math.max(v$1*203,0),convertXyz65ToJab=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3=abs(x$3),y$2=abs(y$2),z$2=abs(z$2);let xp=1.15*x$3-.15*z$2,yp=.66*y$2+.34*x$3,l$1=jabPqEncode(.41478972*xp+.579999*yp+.014648*z$2),m$2=jabPqEncode(-.20151*xp+1.120649*yp+.0531008*z$2),s$1=jabPqEncode(-.0166008*xp+.2648*yp+.6684799*z$2),i$1=(l$1+m$2)/2,res={mode:`jab`,j:.44*i$1/(1-.56*i$1)-d0$1,a:3.524*l$1-4.066708*m$2+.542708*s$1,b:.199076*l$1+1.096799*m$2-1.295875*s$1};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToJab_default=convertXyz65ToJab;const p$2=134.03437499999998,d0=16295499532821565e-27,jabPqDecode=v$1=>{if(v$1<0)return 0;let vp=v$1**(1/p$2);return 1e4*((C1-vp)/(C3*vp-C2))**(1/M1)},rel=v$1=>v$1/203,convertJabToXyz65=({j:j$1,a:a$2,b:b$3,alpha:alpha$1})=>{j$1===void 0&&(j$1=0),a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let i$1=(j$1+d0)/(.44+.56*(j$1+d0)),l$1=jabPqDecode(i$1+.13860504*a$2+.058047316*b$3),m$2=jabPqDecode(i$1-.13860504*a$2-.058047316*b$3),s$1=jabPqDecode(i$1-.096019242*a$2-.8118919*b$3),res={mode:`xyz65`,x:rel(1.661373024652174*l$1-.914523081304348*m$2+.23136208173913045*s$1),y:rel(-.3250758611844533*l$1+1.571847026732543*m$2-.21825383453227928*s$1),z:rel(-.090982811*l$1-.31272829*m$2+1.5227666*s$1)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertJabToXyz65_default=convertJabToXyz65;const convertRgbToJab=rgb$2=>{let res=convertXyz65ToJab_default(convertRgbToXyz65_default(rgb$2));return rgb$2.r===rgb$2.b&&rgb$2.b===rgb$2.g&&(res.a=res.b=0),res};var convertRgbToJab_default=convertRgbToJab;const convertJabToRgb=color$2=>convertXyz65ToRgb_default(convertJabToXyz65_default(color$2));var convertJabToRgb_default=convertJabToRgb;const definition$18={mode:`jab`,channels:[`j`,`a`,`b`,`alpha`],parse:[`--jzazbz`],serialize:`--jzazbz`,fromMode:{rgb:convertRgbToJab_default,xyz65:convertXyz65ToJab_default},toMode:{rgb:convertJabToRgb_default,xyz65:convertJabToXyz65_default},ranges:{j:[0,.222],a:[-.109,.129],b:[-.185,.134]},interpolate:{j:interpolatorLinear,a:interpolatorLinear,b:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$9=definition$18;const convertJabToJch=({j:j$1,a:a$2,b:b$3,alpha:alpha$1})=>{a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let c$4=Math.sqrt(a$2*a$2+b$3*b$3),res={mode:`jch`,j:j$1,c:c$4};return c$4&&(res.h=normalizeHue_default(Math.atan2(b$3,a$2)*180/Math.PI)),alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertJabToJch_default=convertJabToJch;const convertJchToJab=({j:j$1,c:c$4,h:h$3,alpha:alpha$1})=>{h$3===void 0&&(h$3=0);let res={mode:`jab`,j:j$1,a:c$4?c$4*Math.cos(h$3/180*Math.PI):0,b:c$4?c$4*Math.sin(h$3/180*Math.PI):0};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertJchToJab_default=convertJchToJab;const definition$17={mode:`jch`,parse:[`--jzczhz`],serialize:`--jzczhz`,toMode:{jab:convertJchToJab_default,rgb:c$4=>convertJabToRgb_default(convertJchToJab_default(c$4))},fromMode:{rgb:c$4=>convertJabToJch_default(convertRgbToJab_default(c$4)),jab:convertJabToJch_default},channels:[`j`,`c`,`h`,`alpha`],ranges:{j:[0,.221],c:[0,.19],h:[0,360]},interpolate:{h:{use:interpolatorLinear,fixup:fixupHueShorter},c:interpolatorLinear,j:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueChroma},average:{h:averageAngle}};var definition_default$10=definition$17;const k$1=29**3/3**3,e=6**3/29**3;let fn=v$1=>v$1**3>e?v$1**3:(116*v$1-16)/k$1;const convertLabToXyz50=({l:l$1,a:a$2,b:b$3,alpha:alpha$1})=>{l$1===void 0&&(l$1=0),a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let fy=(l$1+16)/116,fx=a$2/500+fy,fz=fy-b$3/200,res={mode:`xyz50`,x:fn(fx)*D50.X,y:fn(fy)*D50.Y,z:fn(fz)*D50.Z};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLabToXyz50_default=convertLabToXyz50;const convertXyz50ToRgb=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res=convertLrgbToRgb_default({r:x$3*3.1341359569958707-y$2*1.6173863321612538-.4906619460083532*z$2,g:x$3*-.978795502912089+y$2*1.916254567259524+.03344273116131949*z$2,b:x$3*.07195537988411677-y$2*.2289768264158322+1.405386058324125*z$2});return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz50ToRgb_default=convertXyz50ToRgb;const convertLabToRgb=lab$1=>convertXyz50ToRgb_default(convertLabToXyz50_default(lab$1));var convertLabToRgb_default=convertLabToRgb;const convertRgbToXyz50=rgb$2=>{let{r:r$2,g:g$2,b:b$3,alpha:alpha$1}=convertRgbToLrgb_default(rgb$2),res={mode:`xyz50`,x:.436065742824811*r$2+.3851514688337912*g$2+.14307845442264197*b$3,y:.22249319175623702*r$2+.7168870538238823*g$2+.06061979053616537*b$3,z:.013923904500943465*r$2+.09708128566574634*g$2+.7140993584005155*b$3};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertRgbToXyz50_default=convertRgbToXyz50;const f$1=value$1=>value$1>e?Math.cbrt(value$1):(k$1*value$1+16)/116,convertXyz50ToLab=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let f0=f$1(x$3/D50.X),f1=f$1(y$2/D50.Y),f2=f$1(z$2/D50.Z),res={mode:`lab`,l:116*f1-16,a:500*(f0-f1),b:200*(f1-f2)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz50ToLab_default=convertXyz50ToLab;const convertRgbToLab=rgb$2=>{let res=convertXyz50ToLab_default(convertRgbToXyz50_default(rgb$2));return rgb$2.r===rgb$2.b&&rgb$2.b===rgb$2.g&&(res.a=res.b=0),res};var convertRgbToLab_default=convertRgbToLab;function parseLab(color$2,parsed){if(!parsed||parsed[0]!==`lab`)return;let res={mode:`lab`},[,l$1,a$2,b$3,alpha$1]=parsed;if(!(l$1.type===Tok.Hue||a$2.type===Tok.Hue||b$3.type===Tok.Hue))return l$1.type!==Tok.None&&(res.l=Math.min(Math.max(0,l$1.value),100)),a$2.type!==Tok.None&&(res.a=a$2.type===Tok.Number?a$2.value:a$2.value*125/100),b$3.type!==Tok.None&&(res.b=b$3.type===Tok.Number?b$3.value:b$3.value*125/100),alpha$1.type!==Tok.None&&(res.alpha=Math.min(1,Math.max(0,alpha$1.type===Tok.Number?alpha$1.value:alpha$1.value/100))),res}var parseLab_default=parseLab;const definition$16={mode:`lab`,toMode:{xyz50:convertLabToXyz50_default,rgb:convertLabToRgb_default},fromMode:{xyz50:convertXyz50ToLab_default,rgb:convertRgbToLab_default},channels:[`l`,`a`,`b`,`alpha`],ranges:{l:[0,100],a:[-125,125],b:[-125,125]},parse:[parseLab_default],serialize:c$4=>`lab(${c$4.l===void 0?`none`:c$4.l} ${c$4.a===void 0?`none`:c$4.a} ${c$4.b===void 0?`none`:c$4.b}${c$4.alpha<1?` / ${c$4.alpha}`:``})`,interpolate:{l:interpolatorLinear,a:interpolatorLinear,b:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$11=definition$16;const definition$15={...definition_default$11,mode:`lab65`,parse:[`--lab-d65`],serialize:`--lab-d65`,toMode:{xyz65:convertLab65ToXyz65_default,rgb:convertLab65ToRgb_default},fromMode:{xyz65:convertXyz65ToLab65_default,rgb:convertRgbToLab65_default},ranges:{l:[0,100],a:[-125,125],b:[-125,125]}};var definition_default$12=definition$15;function parseLch(color$2,parsed){if(!parsed||parsed[0]!==`lch`)return;let res={mode:`lch`},[,l$1,c$4,h$3,alpha$1]=parsed;if(l$1.type!==Tok.None){if(l$1.type===Tok.Hue)return;res.l=Math.min(Math.max(0,l$1.value),100)}if(c$4.type!==Tok.None&&(res.c=Math.max(0,c$4.type===Tok.Number?c$4.value:c$4.value*150/100)),h$3.type!==Tok.None){if(h$3.type===Tok.Percentage)return;res.h=h$3.value}return alpha$1.type!==Tok.None&&(res.alpha=Math.min(1,Math.max(0,alpha$1.type===Tok.Number?alpha$1.value:alpha$1.value/100))),res}var parseLch_default=parseLch;const definition$14={mode:`lch`,toMode:{lab:convertLchToLab_default,rgb:c$4=>convertLabToRgb_default(convertLchToLab_default(c$4))},fromMode:{rgb:c$4=>convertLabToLch_default(convertRgbToLab_default(c$4)),lab:convertLabToLch_default},channels:[`l`,`c`,`h`,`alpha`],ranges:{l:[0,100],c:[0,150],h:[0,360]},parse:[parseLch_default],serialize:c$4=>`lch(${c$4.l===void 0?`none`:c$4.l} ${c$4.c===void 0?`none`:c$4.c} ${c$4.h===void 0?`none`:c$4.h}${c$4.alpha<1?` / ${c$4.alpha}`:``})`,interpolate:{h:{use:interpolatorLinear,fixup:fixupHueShorter},c:interpolatorLinear,l:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueChroma},average:{h:averageAngle}};var definition_default$13=definition$14;const definition$13={...definition_default$13,mode:`lch65`,parse:[`--lch-d65`],serialize:`--lch-d65`,toMode:{lab65:c$4=>convertLchToLab_default(c$4,`lab65`),rgb:c$4=>convertLab65ToRgb_default(convertLchToLab_default(c$4,`lab65`))},fromMode:{rgb:c$4=>convertLabToLch_default(convertRgbToLab65_default(c$4),`lch65`),lab65:c$4=>convertLabToLch_default(c$4,`lch65`)},ranges:{l:[0,100],c:[0,150],h:[0,360]}};var definition_default$14=definition$13;const convertLuvToLchuv=({l:l$1,u:u$1,v:v$1,alpha:alpha$1})=>{u$1===void 0&&(u$1=0),v$1===void 0&&(v$1=0);let c$4=Math.sqrt(u$1*u$1+v$1*v$1),res={mode:`lchuv`,l:l$1,c:c$4};return c$4&&(res.h=normalizeHue_default(Math.atan2(v$1,u$1)*180/Math.PI)),alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLuvToLchuv_default=convertLuvToLchuv;const convertLchuvToLuv=({l:l$1,c:c$4,h:h$3,alpha:alpha$1})=>{h$3===void 0&&(h$3=0);let res={mode:`luv`,l:l$1,u:c$4?c$4*Math.cos(h$3/180*Math.PI):0,v:c$4?c$4*Math.sin(h$3/180*Math.PI):0};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLchuvToLuv_default=convertLchuvToLuv;const u_fn$1=(x$3,y$2,z$2)=>4*x$3/(x$3+15*y$2+3*z$2),v_fn$1=(x$3,y$2,z$2)=>9*y$2/(x$3+15*y$2+3*z$2),un$1=u_fn$1(D50.X,D50.Y,D50.Z),vn$1=v_fn$1(D50.X,D50.Y,D50.Z),l_fn=value$1=>value$1<=e?k$1*value$1:116*Math.cbrt(value$1)-16,convertXyz50ToLuv=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let l$1=l_fn(y$2/D50.Y),u$1=u_fn$1(x$3,y$2,z$2),v$1=v_fn$1(x$3,y$2,z$2);!isFinite(u$1)||!isFinite(v$1)?l$1=u$1=v$1=0:(u$1=13*l$1*(u$1-un$1),v$1=13*l$1*(v$1-vn$1));let res={mode:`luv`,l:l$1,u:u$1,v:v$1};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz50ToLuv_default=convertXyz50ToLuv;const u_fn=(x$3,y$2,z$2)=>4*x$3/(x$3+15*y$2+3*z$2),v_fn=(x$3,y$2,z$2)=>9*y$2/(x$3+15*y$2+3*z$2),un=u_fn(D50.X,D50.Y,D50.Z),vn=v_fn(D50.X,D50.Y,D50.Z),convertLuvToXyz50=({l:l$1,u:u$1,v:v$1,alpha:alpha$1})=>{if(l$1===void 0&&(l$1=0),l$1===0)return{mode:`xyz50`,x:0,y:0,z:0};u$1===void 0&&(u$1=0),v$1===void 0&&(v$1=0);let up=u$1/(13*l$1)+un,vp=v$1/(13*l$1)+vn,y$2=D50.Y*(l$1<=8?l$1/k$1:((l$1+16)/116)**3),x$3=y$2*(9*up)/(4*vp),z$2=y$2*(12-3*up-20*vp)/(4*vp),res={mode:`xyz50`,x:x$3,y:y$2,z:z$2};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLuvToXyz50_default=convertLuvToXyz50;const convertRgbToLchuv=rgb$2=>convertLuvToLchuv_default(convertXyz50ToLuv_default(convertRgbToXyz50_default(rgb$2))),convertLchuvToRgb=lchuv$1=>convertXyz50ToRgb_default(convertLuvToXyz50_default(convertLchuvToLuv_default(lchuv$1))),definition$12={mode:`lchuv`,toMode:{luv:convertLchuvToLuv_default,rgb:convertLchuvToRgb},fromMode:{rgb:convertRgbToLchuv,luv:convertLuvToLchuv_default},channels:[`l`,`c`,`h`,`alpha`],parse:[`--lchuv`],serialize:`--lchuv`,ranges:{l:[0,100],c:[0,176.956],h:[0,360]},interpolate:{h:{use:interpolatorLinear,fixup:fixupHueShorter},c:interpolatorLinear,l:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}},difference:{h:differenceHueChroma},average:{h:averageAngle}};var definition_default$15=definition$12;const definition$11={...definition_default$23,mode:`lrgb`,toMode:{rgb:convertLrgbToRgb_default},fromMode:{rgb:convertRgbToLrgb_default},parse:[`srgb-linear`],serialize:`srgb-linear`};var definition_default$16=definition$11;const definition$10={mode:`luv`,toMode:{xyz50:convertLuvToXyz50_default,rgb:luv$1=>convertXyz50ToRgb_default(convertLuvToXyz50_default(luv$1))},fromMode:{xyz50:convertXyz50ToLuv_default,rgb:rgb$2=>convertXyz50ToLuv_default(convertRgbToXyz50_default(rgb$2))},channels:[`l`,`u`,`v`,`alpha`],parse:[`--luv`],serialize:`--luv`,ranges:{l:[0,100],u:[-84.936,175.042],v:[-125.882,87.243]},interpolate:{l:interpolatorLinear,u:interpolatorLinear,v:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$17=definition$10;const convertLrgbToOklab=({r:r$2,g:g$2,b:b$3,alpha:alpha$1})=>{r$2===void 0&&(r$2=0),g$2===void 0&&(g$2=0),b$3===void 0&&(b$3=0);let L$1=Math.cbrt(.412221469470763*r$2+.5363325372617348*g$2+.0514459932675022*b$3),M$1=Math.cbrt(.2119034958178252*r$2+.6806995506452344*g$2+.1073969535369406*b$3),S$2=Math.cbrt(.0883024591900564*r$2+.2817188391361215*g$2+.6299787016738222*b$3),res={mode:`oklab`,l:.210454268309314*L$1+.7936177747023054*M$1-.0040720430116193*S$2,a:1.9779985324311684*L$1-2.42859224204858*M$1+.450593709617411*S$2,b:.0259040424655478*L$1+.7827717124575296*M$1-.8086757549230774*S$2};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertLrgbToOklab_default=convertLrgbToOklab;const convertRgbToOklab=rgb$2=>{let res=convertLrgbToOklab_default(convertRgbToLrgb_default(rgb$2));return rgb$2.r===rgb$2.b&&rgb$2.b===rgb$2.g&&(res.a=res.b=0),res};var convertRgbToOklab_default=convertRgbToOklab;const convertOklabToLrgb=({l:l$1,a:a$2,b:b$3,alpha:alpha$1})=>{l$1===void 0&&(l$1=0),a$2===void 0&&(a$2=0),b$3===void 0&&(b$3=0);let L$1=(l$1+.3963377773761749*a$2+.2158037573099136*b$3)**3,M$1=(l$1-.1055613458156586*a$2-.0638541728258133*b$3)**3,S$2=(l$1-.0894841775298119*a$2-1.2914855480194092*b$3)**3,res={mode:`lrgb`,r:4.076741636075957*L$1-3.3077115392580616*M$1+.2309699031821044*S$2,g:-1.2684379732850317*L$1+2.6097573492876887*M$1-.3413193760026573*S$2,b:-.0041960761386756*L$1-.7034186179359362*M$1+1.7076146940746117*S$2};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertOklabToLrgb_default=convertOklabToLrgb;const convertOklabToRgb=c$4=>convertLrgbToRgb_default(convertOklabToLrgb_default(c$4));var convertOklabToRgb_default=convertOklabToRgb;function toe(x$3){let k_1=.206,k_2=.03,k_3=(1+k_1)/(1+k_2);return .5*(k_3*x$3-k_1+Math.sqrt((k_3*x$3-k_1)*(k_3*x$3-k_1)+4*k_2*k_3*x$3))}function toe_inv(x$3){let k_1=.206,k_2=.03,k_3=(1+k_1)/(1+k_2);return(x$3*x$3+k_1*x$3)/(k_3*(x$3+k_2))}function compute_max_saturation(a$2,b$3){let k0,k1,k2,k3,k4,wl,wm,ws;-1.88170328*a$2-.80936493*b$3>1?(k0=1.19086277,k1=1.76576728,k2=.59662641,k3=.75515197,k4=.56771245,wl=4.0767416621,wm=-3.3077115913,ws=.2309699292):1.81444104*a$2-1.19445276*b$3>1?(k0=.73956515,k1=-.45954404,k2=.08285427,k3=.1254107,k4=.14503204,wl=-1.2684380046,wm=2.6097574011,ws=-.3413193965):(k0=1.35733652,k1=-.00915799,k2=-1.1513021,k3=-.50559606,k4=.00692167,wl=-.0041960863,wm=-.7034186147,ws=1.707614701);let S$2=k0+k1*a$2+k2*b$3+k3*a$2*a$2+k4*a$2*b$3,k_l=.3963377774*a$2+.2158037573*b$3,k_m=-.1055613458*a$2-.0638541728*b$3,k_s=-.0894841775*a$2-1.291485548*b$3;{let l_=1+S$2*k_l,m_=1+S$2*k_m,s_=1+S$2*k_s,l$1=l_*l_*l_,m$2=m_*m_*m_,s$1=s_*s_*s_,l_dS=3*k_l*l_*l_,m_dS=3*k_m*m_*m_,s_dS=3*k_s*s_*s_,l_dS2=6*k_l*k_l*l_,m_dS2=6*k_m*k_m*m_,s_dS2=6*k_s*k_s*s_,f$3=wl*l$1+wm*m$2+ws*s$1,f1=wl*l_dS+wm*m_dS+ws*s_dS,f2=wl*l_dS2+wm*m_dS2+ws*s_dS2;S$2-=f$3*f1/(f1*f1-.5*f$3*f2)}return S$2}function find_cusp(a$2,b$3){let S_cusp=compute_max_saturation(a$2,b$3),rgb$2=convertOklabToLrgb_default({l:1,a:S_cusp*a$2,b:S_cusp*b$3}),L_cusp=Math.cbrt(1/Math.max(rgb$2.r,rgb$2.g,rgb$2.b)),C_cusp=L_cusp*S_cusp;return[L_cusp,C_cusp]}function find_gamut_intersection(a$2,b$3,L1,C1$1,L0,cusp=null){cusp||=find_cusp(a$2,b$3);let t;if((L1-L0)*cusp[1]-(cusp[0]-L0)*C1$1<=0)t=cusp[1]*L0/(C1$1*cusp[0]+cusp[1]*(L0-L1));else{t=cusp[1]*(L0-1)/(C1$1*(cusp[0]-1)+cusp[1]*(L0-L1));{let dL=L1-L0,dC=C1$1,k_l=.3963377774*a$2+.2158037573*b$3,k_m=-.1055613458*a$2-.0638541728*b$3,k_s=-.0894841775*a$2-1.291485548*b$3,l_dt=dL+dC*k_l,m_dt=dL+dC*k_m,s_dt=dL+dC*k_s;{let L$1=L0*(1-t)+t*L1,C$3=t*C1$1,l_=L$1+C$3*k_l,m_=L$1+C$3*k_m,s_=L$1+C$3*k_s,l$1=l_*l_*l_,m$2=m_*m_*m_,s$1=s_*s_*s_,ldt=3*l_dt*l_*l_,mdt=3*m_dt*m_*m_,sdt=3*s_dt*s_*s_,ldt2=6*l_dt*l_dt*l_,mdt2=6*m_dt*m_dt*m_,sdt2=6*s_dt*s_dt*s_,r$2=4.0767416621*l$1-3.3077115913*m$2+.2309699292*s$1-1,r1=4.0767416621*ldt-3.3077115913*mdt+.2309699292*sdt,r2=4.0767416621*ldt2-3.3077115913*mdt2+.2309699292*sdt2,u_r=r1/(r1*r1-.5*r$2*r2),t_r=-r$2*u_r,g$2=-1.2684380046*l$1+2.6097574011*m$2-.3413193965*s$1-1,g1=-1.2684380046*ldt+2.6097574011*mdt-.3413193965*sdt,g2=-1.2684380046*ldt2+2.6097574011*mdt2-.3413193965*sdt2,u_g=g1/(g1*g1-.5*g$2*g2),t_g=-g$2*u_g,b$4=-.0041960863*l$1-.7034186147*m$2+1.707614701*s$1-1,b1=-.0041960863*ldt-.7034186147*mdt+1.707614701*sdt,b2=-.0041960863*ldt2-.7034186147*mdt2+1.707614701*sdt2,u_b=b1/(b1*b1-.5*b$4*b2),t_b=-b$4*u_b;t_r=u_r>=0?t_r:1e6,t_g=u_g>=0?t_g:1e6,t_b=u_b>=0?t_b:1e6,t+=Math.min(t_r,Math.min(t_g,t_b))}}}return t}function get_ST_max(a_,b_,cusp=null){cusp||=find_cusp(a_,b_);let L$1=cusp[0],C$3=cusp[1];return[C$3/L$1,C$3/(1-L$1)]}function get_Cs(L$1,a_,b_){let cusp=find_cusp(a_,b_),C_max=find_gamut_intersection(a_,b_,L$1,1,L$1,cusp),ST_max=get_ST_max(a_,b_,cusp),S_mid=.11516993+1/(7.4477897+4.1590124*b_+a_*(-2.19557347+1.75198401*b_+a_*(-2.13704948-10.02301043*b_+a_*(-4.24894561+5.38770819*b_+4.69891013*a_)))),T_mid=.11239642+1/(1.6132032-.68124379*b_+a_*(.40370612+.90148123*b_+a_*(-.27087943+.6122399*b_+a_*(.00299215-.45399568*b_-.14661872*a_)))),k$4=C_max/Math.min(L$1*ST_max[0],(1-L$1)*ST_max[1]),C_a=L$1*S_mid,C_b=(1-L$1)*T_mid,C_mid=.9*k$4*Math.sqrt(Math.sqrt(1/(1/(C_a*C_a*C_a*C_a)+1/(C_b*C_b*C_b*C_b))));C_a=L$1*.4,C_b=(1-L$1)*.8;let C_0=Math.sqrt(1/(1/(C_a*C_a)+1/(C_b*C_b)));return[C_0,C_mid,C_max]}function convertOklabToOkhsl(lab$1){let l$1=lab$1.l===void 0?0:lab$1.l,a$2=lab$1.a===void 0?0:lab$1.a,b$3=lab$1.b===void 0?0:lab$1.b,ret={mode:`okhsl`,l:toe(l$1)};lab$1.alpha!==void 0&&(ret.alpha=lab$1.alpha);let c$4=Math.sqrt(a$2*a$2+b$3*b$3);if(!c$4)return ret.s=0,ret;let[C_0,C_mid,C_max]=get_Cs(l$1,a$2/c$4,b$3/c$4),s$1;if(c$4convertOklabToOkhsl(convertRgbToOklab_default(c$4))},toMode:{oklab:convertOkhslToOklab,rgb:c$4=>convertOklabToRgb_default(convertOkhslToOklab(c$4))}};var modeOkhsl_default=modeOkhsl;function convertOklabToOkhsv(lab$1){let l$1=lab$1.l===void 0?0:lab$1.l,a$2=lab$1.a===void 0?0:lab$1.a,b$3=lab$1.b===void 0?0:lab$1.b,c$4=Math.sqrt(a$2*a$2+b$3*b$3),a_=c$4?a$2/c$4:1,b_=c$4?b$3/c$4:1,[S_max,T$1]=get_ST_max(a_,b_),S_0=.5,k$4=1-S_0/S_max,t=T$1/(c$4+l$1*T$1),L_v=t*l$1,C_v=t*c$4,L_vt=toe_inv(L_v),C_vt=C_v*L_vt/L_v,rgb_scale=convertOklabToLrgb_default({l:L_vt,a:a_*C_vt,b:b_*C_vt}),scale_L=Math.cbrt(1/Math.max(rgb_scale.r,rgb_scale.g,rgb_scale.b,0));l$1/=scale_L,c$4=c$4/scale_L*toe(l$1)/l$1,l$1=toe(l$1);let ret={mode:`okhsv`,s:c$4?(S_0+T$1)*C_v/(T$1*S_0+T$1*k$4*C_v):0,v:l$1?l$1/L_v:0};return ret.s&&(ret.h=normalizeHue_default(Math.atan2(b$3,a$2)*180/Math.PI)),lab$1.alpha!==void 0&&(ret.alpha=lab$1.alpha),ret}function convertOkhsvToOklab(hsv$1){let ret={mode:`oklab`};hsv$1.alpha!==void 0&&(ret.alpha=hsv$1.alpha);let h$3=hsv$1.h===void 0?0:hsv$1.h,s$1=hsv$1.s===void 0?0:hsv$1.s,v$1=hsv$1.v===void 0?0:hsv$1.v,a_=Math.cos(h$3/180*Math.PI),b_=Math.sin(h$3/180*Math.PI),[S_max,T$1]=get_ST_max(a_,b_),S_0=.5,k$4=1-S_0/S_max,L_v=1-s$1*S_0/(S_0+T$1-T$1*k$4*s$1),C_v=s$1*T$1*S_0/(S_0+T$1-T$1*k$4*s$1),L_vt=toe_inv(L_v),C_vt=C_v*L_vt/L_v,rgb_scale=convertOklabToLrgb_default({l:L_vt,a:a_*C_vt,b:b_*C_vt}),scale_L=Math.cbrt(1/Math.max(rgb_scale.r,rgb_scale.g,rgb_scale.b,0)),L_new=toe_inv(v$1*L_v),C$3=C_v*L_new/L_v;return ret.l=L_new*scale_L,ret.a=C$3*a_*scale_L,ret.b=C$3*b_*scale_L,ret}const modeOkhsv={...definition_default$6,mode:`okhsv`,channels:[`h`,`s`,`v`,`alpha`],parse:[`--okhsv`],serialize:`--okhsv`,fromMode:{oklab:convertOklabToOkhsv,rgb:c$4=>convertOklabToOkhsv(convertRgbToOklab_default(c$4))},toMode:{oklab:convertOkhsvToOklab,rgb:c$4=>convertOklabToRgb_default(convertOkhsvToOklab(c$4))}};var modeOkhsv_default=modeOkhsv;function parseOklab(color$2,parsed){if(!parsed||parsed[0]!==`oklab`)return;let res={mode:`oklab`},[,l$1,a$2,b$3,alpha$1]=parsed;if(!(l$1.type===Tok.Hue||a$2.type===Tok.Hue||b$3.type===Tok.Hue))return l$1.type!==Tok.None&&(res.l=Math.min(Math.max(0,l$1.type===Tok.Number?l$1.value:l$1.value/100),1)),a$2.type!==Tok.None&&(res.a=a$2.type===Tok.Number?a$2.value:a$2.value*.4/100),b$3.type!==Tok.None&&(res.b=b$3.type===Tok.Number?b$3.value:b$3.value*.4/100),alpha$1.type!==Tok.None&&(res.alpha=Math.min(1,Math.max(0,alpha$1.type===Tok.Number?alpha$1.value:alpha$1.value/100))),res}var parseOklab_default=parseOklab;const definition$9={...definition_default$11,mode:`oklab`,toMode:{lrgb:convertOklabToLrgb_default,rgb:convertOklabToRgb_default},fromMode:{lrgb:convertLrgbToOklab_default,rgb:convertRgbToOklab_default},ranges:{l:[0,1],a:[-.4,.4],b:[-.4,.4]},parse:[parseOklab_default],serialize:c$4=>`oklab(${c$4.l===void 0?`none`:c$4.l} ${c$4.a===void 0?`none`:c$4.a} ${c$4.b===void 0?`none`:c$4.b}${c$4.alpha<1?` / ${c$4.alpha}`:``})`};var definition_default$18=definition$9;function parseOklch(color$2,parsed){if(!parsed||parsed[0]!==`oklch`)return;let res={mode:`oklch`},[,l$1,c$4,h$3,alpha$1]=parsed;if(l$1.type!==Tok.None){if(l$1.type===Tok.Hue)return;res.l=Math.min(Math.max(0,l$1.type===Tok.Number?l$1.value:l$1.value/100),1)}if(c$4.type!==Tok.None&&(res.c=Math.max(0,c$4.type===Tok.Number?c$4.value:c$4.value*.4/100)),h$3.type!==Tok.None){if(h$3.type===Tok.Percentage)return;res.h=h$3.value}return alpha$1.type!==Tok.None&&(res.alpha=Math.min(1,Math.max(0,alpha$1.type===Tok.Number?alpha$1.value:alpha$1.value/100))),res}var parseOklch_default=parseOklch;const definition$8={...definition_default$13,mode:`oklch`,toMode:{oklab:c$4=>convertLchToLab_default(c$4,`oklab`),rgb:c$4=>convertOklabToRgb_default(convertLchToLab_default(c$4,`oklab`))},fromMode:{rgb:c$4=>convertLabToLch_default(convertRgbToOklab_default(c$4),`oklch`),oklab:c$4=>convertLabToLch_default(c$4,`oklch`)},parse:[parseOklch_default],serialize:c$4=>`oklch(${c$4.l===void 0?`none`:c$4.l} ${c$4.c===void 0?`none`:c$4.c} ${c$4.h===void 0?`none`:c$4.h}${c$4.alpha<1?` / ${c$4.alpha}`:``})`,ranges:{l:[0,1],c:[0,.4],h:[0,360]}};var definition_default$19=definition$8;const convertP3ToXyz65=rgb$2=>{let{r:r$2,g:g$2,b:b$3,alpha:alpha$1}=convertRgbToLrgb_default(rgb$2),res={mode:`xyz65`,x:.486570948648216*r$2+.265667693169093*g$2+.1982172852343625*b$3,y:.2289745640697487*r$2+.6917385218365062*g$2+.079286914093745*b$3,z:0*r$2+.0451133818589026*g$2+1.043944368900976*b$3};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertP3ToXyz65_default=convertP3ToXyz65;const convertXyz65ToP3=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res=convertLrgbToRgb_default({r:x$3*2.4934969119414263-y$2*.9313836179191242-.402710784450717*z$2,g:x$3*-.8294889695615749+y$2*1.7626640603183465+.0236246858419436*z$2,b:x$3*.0358458302437845-y$2*.0761723892680418+.9568845240076871*z$2},`p3`);return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToP3_default=convertXyz65ToP3;const definition$7={...definition_default$23,mode:`p3`,parse:[`display-p3`],serialize:`display-p3`,fromMode:{rgb:color$2=>convertXyz65ToP3_default(convertRgbToXyz65_default(color$2)),xyz65:convertXyz65ToP3_default},toMode:{rgb:color$2=>convertXyz65ToRgb_default(convertP3ToXyz65_default(color$2)),xyz65:convertP3ToXyz65_default}};var definition_default$20=definition$7;const gamma$1=v$1=>{let abs$1=Math.abs(v$1);return abs$1>=1/512?Math.sign(v$1)*abs$1**(1/1.8):16*v$1},convertXyz50ToProphoto=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res={mode:`prophoto`,r:gamma$1(x$3*1.3457868816471585-y$2*.2555720873797946-.0511018649755453*z$2),g:gamma$1(x$3*-.5446307051249019+y$2*1.5082477428451466+.0205274474364214*z$2),b:gamma$1(x$3*0+y$2*0+1.2119675456389452*z$2)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz50ToProphoto_default=convertXyz50ToProphoto;const linearize$1=(v$1=0)=>{let abs$1=Math.abs(v$1);return abs$1>=16/512?Math.sign(v$1)*abs$1**1.8:v$1/16},convertProphotoToXyz50=prophoto$1=>{let r$2=linearize$1(prophoto$1.r),g$2=linearize$1(prophoto$1.g),b$3=linearize$1(prophoto$1.b),res={mode:`xyz50`,x:.7977666449006423*r$2+.1351812974005331*g$2+.0313477341283922*b$3,y:.2880748288194013*r$2+.7118352342418731*g$2+899369387256e-16*b$3,z:0*r$2+0*g$2+.8251046025104602*b$3};return prophoto$1.alpha!==void 0&&(res.alpha=prophoto$1.alpha),res};var convertProphotoToXyz50_default=convertProphotoToXyz50;const definition$6={...definition_default$23,mode:`prophoto`,parse:[`prophoto-rgb`],serialize:`prophoto-rgb`,fromMode:{xyz50:convertXyz50ToProphoto_default,rgb:color$2=>convertXyz50ToProphoto_default(convertRgbToXyz50_default(color$2))},toMode:{xyz50:convertProphotoToXyz50_default,rgb:color$2=>convertXyz50ToRgb_default(convertProphotoToXyz50_default(color$2))}};var definition_default$21=definition$6;const α$1=1.09929682680944,β$1=.018053968510807,gamma=v$1=>{let abs$1=Math.abs(v$1);return abs$1>β$1?(Math.sign(v$1)||1)*(α$1*abs$1**.45-(α$1-1)):4.5*v$1},convertXyz65ToRec2020=({x:x$3,y:y$2,z:z$2,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res={mode:`rec2020`,r:gamma(x$3*1.7166511879712683-y$2*.3556707837763925-.2533662813736599*z$2),g:gamma(x$3*-.6666843518324893+y$2*1.6164812366349395+.0157685458139111*z$2),b:gamma(x$3*.0176398574453108-y$2*.0427706132578085+.9421031212354739*z$2)};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToRec2020_default=convertXyz65ToRec2020;const α=1.09929682680944,β=.018053968510807,linearize=(v$1=0)=>{let abs$1=Math.abs(v$1);return abs$1<β*4.5?v$1/4.5:(Math.sign(v$1)||1)*((abs$1+α-1)/α)**(1/.45)},convertRec2020ToXyz65=rec2020$1=>{let r$2=linearize(rec2020$1.r),g$2=linearize(rec2020$1.g),b$3=linearize(rec2020$1.b),res={mode:`xyz65`,x:.6369580483012911*r$2+.1446169035862083*g$2+.1688809751641721*b$3,y:.262700212011267*r$2+.6779980715188708*g$2+.059301716469862*b$3,z:0*r$2+.0280726930490874*g$2+1.0609850577107909*b$3};return rec2020$1.alpha!==void 0&&(res.alpha=rec2020$1.alpha),res};var convertRec2020ToXyz65_default=convertRec2020ToXyz65;const definition$5={...definition_default$23,mode:`rec2020`,fromMode:{xyz65:convertXyz65ToRec2020_default,rgb:color$2=>convertXyz65ToRec2020_default(convertRgbToXyz65_default(color$2))},toMode:{xyz65:convertRec2020ToXyz65_default,rgb:color$2=>convertXyz65ToRgb_default(convertRec2020ToXyz65_default(color$2))},parse:[`rec2020`],serialize:`rec2020`};var definition_default$22=definition$5;const bias=.0037930732552754493,bias_cbrt=Math.cbrt(bias),transfer$1=v$1=>Math.cbrt(v$1)-bias_cbrt,convertRgbToXyb=color$2=>{let{r:r$2,g:g$2,b:b$3,alpha:alpha$1}=convertRgbToLrgb_default(color$2),l$1=transfer$1(.3*r$2+.622*g$2+.078*b$3+bias),m$2=transfer$1(.23*r$2+.692*g$2+.078*b$3+bias),s$1=transfer$1(.2434226892454782*r$2+.2047674442449682*g$2+.5518098665095535*b$3+bias),res={mode:`xyb`,x:(l$1-m$2)/2,y:(l$1+m$2)/2,b:s$1-(l$1+m$2)/2};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertRgbToXyb_default=convertRgbToXyb;const transfer=v$1=>(v$1+bias_cbrt)**3,convertXybToRgb=({x:x$3,y:y$2,b:b$3,alpha:alpha$1})=>{x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),b$3===void 0&&(b$3=0);let l$1=transfer(x$3+y$2)-bias,m$2=transfer(y$2-x$3)-bias,s$1=transfer(b$3+y$2)-bias,res=convertLrgbToRgb_default({r:11.031566904639861*l$1-9.866943908131562*m$2-.16462299650829934*s$1,g:-3.2541473810744237*l$1+4.418770377582723*m$2-.16462299650829934*s$1,b:-3.6588512867136815*l$1+2.7129230459360922*m$2+1.9459282407775895*s$1});return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXybToRgb_default=convertXybToRgb;const definition$4={mode:`xyb`,channels:[`x`,`y`,`b`,`alpha`],parse:[`--xyb`],serialize:`--xyb`,toMode:{rgb:convertXybToRgb_default},fromMode:{rgb:convertRgbToXyb_default},ranges:{x:[-.0154,.0281],y:[0,.8453],b:[-.2778,.388]},interpolate:{x:interpolatorLinear,y:interpolatorLinear,b:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$24=definition$4;const definition$3={mode:`xyz50`,parse:[`xyz-d50`],serialize:`xyz-d50`,toMode:{rgb:convertXyz50ToRgb_default,lab:convertXyz50ToLab_default},fromMode:{rgb:convertRgbToXyz50_default,lab:convertLabToXyz50_default},channels:[`x`,`y`,`z`,`alpha`],ranges:{x:[0,.964],y:[0,.999],z:[0,.825]},interpolate:{x:interpolatorLinear,y:interpolatorLinear,z:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$25=definition$3;const convertXyz65ToXyz50=xyz65$1=>{let{x:x$3,y:y$2,z:z$2,alpha:alpha$1}=xyz65$1;x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res={mode:`xyz50`,x:1.0479298208405488*x$3+.0229467933410191*y$2-.0501922295431356*z$2,y:.0296278156881593*x$3+.990434484573249*y$2-.0170738250293851*z$2,z:-.0092430581525912*x$3+.0150551448965779*y$2+.7518742899580008*z$2};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz65ToXyz50_default=convertXyz65ToXyz50;const convertXyz50ToXyz65=xyz50$1=>{let{x:x$3,y:y$2,z:z$2,alpha:alpha$1}=xyz50$1;x$3===void 0&&(x$3=0),y$2===void 0&&(y$2=0),z$2===void 0&&(z$2=0);let res={mode:`xyz65`,x:.9554734527042182*x$3-.0230985368742614*y$2+.0632593086610217*z$2,y:-.0283697069632081*x$3+1.0099954580058226*y$2+.021041398966943*z$2,z:.0123140016883199*x$3-.0205076964334779*y$2+1.3303659366080753*z$2};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertXyz50ToXyz65_default=convertXyz50ToXyz65;const definition$2={mode:`xyz65`,toMode:{rgb:convertXyz65ToRgb_default,xyz50:convertXyz65ToXyz50_default},fromMode:{rgb:convertRgbToXyz65_default,xyz50:convertXyz50ToXyz65_default},ranges:{x:[0,.95],y:[0,1],z:[0,1.088]},channels:[`x`,`y`,`z`,`alpha`],parse:[`xyz`,`xyz-d65`],serialize:`xyz-d65`,interpolate:{x:interpolatorLinear,y:interpolatorLinear,z:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$26=definition$2;const convertRgbToYiq=({r:r$2,g:g$2,b:b$3,alpha:alpha$1})=>{r$2===void 0&&(r$2=0),g$2===void 0&&(g$2=0),b$3===void 0&&(b$3=0);let res={mode:`yiq`,y:.29889531*r$2+.58662247*g$2+.11448223*b$3,i:.59597799*r$2-.2741761*g$2-.32180189*b$3,q:.21147017*r$2-.52261711*g$2+.31114694*b$3};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertRgbToYiq_default=convertRgbToYiq;const convertYiqToRgb=({y:y$2,i:i$1,q:q$1,alpha:alpha$1})=>{y$2===void 0&&(y$2=0),i$1===void 0&&(i$1=0),q$1===void 0&&(q$1=0);let res={mode:`rgb`,r:y$2+.95608445*i$1+.6208885*q$1,g:y$2-.27137664*i$1-.6486059*q$1,b:y$2-1.10561724*i$1+1.70250126*q$1};return alpha$1!==void 0&&(res.alpha=alpha$1),res};var convertYiqToRgb_default=convertYiqToRgb;const definition$1={mode:`yiq`,toMode:{rgb:convertYiqToRgb_default},fromMode:{rgb:convertRgbToYiq_default},channels:[`y`,`i`,`q`,`alpha`],parse:[`--yiq`],serialize:`--yiq`,ranges:{i:[-.595,.595],q:[-.522,.522]},interpolate:{y:interpolatorLinear,i:interpolatorLinear,q:interpolatorLinear,alpha:{use:interpolatorLinear,fixup:fixupAlpha}}};var definition_default$27=definition$1;const r$1=(value$1,precision)=>Math.round(value$1*(precision=10**precision))/precision,round$1=(precision=4)=>value$1=>typeof value$1==`number`?r$1(value$1,precision):value$1;var round_default=round$1;let twoDecimals=round_default(2);const clamp$1=value$1=>Math.max(0,Math.min(1,value$1||0)),fixup=value$1=>Math.round(clamp$1(value$1)*255),rgb$1=converter_default(`rgb`),hsl$1=converter_default(`hsl`),serializeHex=color$2=>{if(color$2===void 0)return;let r$2=fixup(color$2.r),g$2=fixup(color$2.g),b$3=fixup(color$2.b);return`#`+(1<<24|r$2<<16|g$2<<8|b$3).toString(16).slice(1)},formatCss=c$4=>{let color$2=_prepare_default(c$4);if(!color$2)return;let def$1=getMode(color$2.mode);if(!def$1.serialize||typeof def$1.serialize==`string`){let res=`color(${def$1.serialize||`--${color$2.mode}`} `;return def$1.channels.forEach((ch,i$1)=>{ch!==`alpha`&&(res+=(i$1?` `:``)+(color$2[ch]===void 0?`none`:color$2[ch]))}),color$2.alpha!==void 0&&color$2.alpha<1&&(res+=` / ${color$2.alpha}`),res+`)`}if(typeof def$1.serialize==`function`)return def$1.serialize(color$2)},formatHex=c$4=>serializeHex(rgb$1(c$4)),a98=useMode(definition_default),cubehelix=useMode(definition_default$1),dlab=useMode(definition_default$2),dlch=useMode(definition_default$3),hsi=useMode(definition_default$4),hsl=useMode(definition_default$5),hsv=useMode(definition_default$6),hwb=useMode(definition_default$7),itp=useMode(definition_default$8),jab=useMode(definition_default$9),jch=useMode(definition_default$10),lab=useMode(definition_default$11),lab65=useMode(definition_default$12),lch=useMode(definition_default$13),lch65=useMode(definition_default$14),lchuv=useMode(definition_default$15),lrgb=useMode(definition_default$16),luv=useMode(definition_default$17),okhsl=useMode(modeOkhsl_default),okhsv=useMode(modeOkhsv_default),oklab=useMode(definition_default$18),oklch=useMode(definition_default$19),p3=useMode(definition_default$20),prophoto=useMode(definition_default$21),rec2020=useMode(definition_default$22),rgb=useMode(definition_default$23),xyb=useMode(definition_default$24),xyz50=useMode(definition_default$25),xyz65=useMode(definition_default$26),yiq=useMode(definition_default$27);function colorToChromaticColor(color$2){return{color:color$2,withAlpha:alpha$1=>{let rgba$1=oklch(color$2);if(!rgba$1)throw Error(`Invalid color provided for alpha adjustment`);return colorToChromaticColor(oklch({mode:`oklch`,l:rgba$1.l,c:rgba$1.c,h:rgba$1.h,alpha:alpha$1}))},toHex:()=>formatHex(color$2),toCSS:()=>formatCss(color$2)}}function chromaticPaletteFrom(baseHue=200,baseChroma){let chroma=baseChroma??.18+Math.cos(baseHue*Math.PI/180)*.04,shadeConfig={50:{lightness:.95,chromaMultiplier:.3,mixWithWhite:.7},100:{lightness:.95,chromaMultiplier:.5,mixWithWhite:.2},200:{lightness:.9,chromaMultiplier:.6},300:{lightness:.85,chromaMultiplier:.75},400:{lightness:.74,chromaMultiplier:.85},500:{lightness:.62,chromaMultiplier:1},600:{lightness:.54,chromaMultiplier:1.15},700:{lightness:.49,chromaMultiplier:1.1},800:{lightness:.42,chromaMultiplier:.85},900:{lightness:.37,chromaMultiplier:.7},950:{lightness:.29,chromaMultiplier:.5}},shadeBy=(shade,alpha$1,hueOffset=0)=>{let config=shadeConfig[shade],adjustedHue=(baseHue+hueOffset)%360,adjustedChroma=chroma*config.chromaMultiplier,baseColor=oklch({mode:`oklch`,l:config.lightness,c:adjustedChroma,h:adjustedHue,alpha:alpha$1??1});if(config.mixWithWhite){let white=oklch({mode:`oklch`,l:1,c:0,h:0,alpha:alpha$1??1});return colorToChromaticColor(mixColors(baseColor,white,config.mixWithWhite))}return colorToChromaticColor(baseColor)};return{baseHue,chroma,getAllShades:(alpha$1,hueOffset=0)=>{let shades={};for(let shadeKey of Object.keys(shadeConfig)){let shade=Number.parseInt(shadeKey);shades[shade]=shadeBy(shade,alpha$1,hueOffset)}return shades},shadeBy}}function mixColors(color1,color2,ratio=.5){let c1=oklch(color1),c2=oklch(color2);if(!c1||!c2)throw Error(`Invalid colors provided for mixing`);return oklch({mode:`oklch`,l:c1.l*(1-ratio)+c2.l*ratio,c:c1.c*(1-ratio)+c2.c*ratio,h:mixHues(c1.h??0,c2.h??0,ratio)})}function mixHues(h1,h2,ratio){let diff=h2-h1;return diff>180&&(diff-=360),diff<-180&&(diff+=360),(h1+diff*ratio+360)%360}let Emotion=function(Emotion$1){return Emotion$1.Idle=`<|EMOTE_NEUTRAL|>`,Emotion$1.Happy=`<|EMOTE_HAPPY|>`,Emotion$1.Sad=`<|EMOTE_SAD|>`,Emotion$1.Angry=`<|EMOTE_ANGRY|>`,Emotion$1.Think=`<|EMOTE_THINK|>`,Emotion$1.Surprise=`<|EMOTE_SURPRISE|>`,Emotion$1.Awkward=`<|EMOTE_AWKWARD|>`,Emotion$1.Question=`<|EMOTE_QUESTION|>`,Emotion$1}({});const EMOTION_VALUES=Object.values(Emotion),EmotionHappyMotionName=`Happy`,EmotionSadMotionName=`Sad`,EmotionAngryMotionName=`Angry`,EmotionAwkwardMotionName=`Awkward`,EmotionThinkMotionName=`Think`,EmotionSurpriseMotionName=`Surprise`,EmotionQuestionMotionName=`Question`,EmotionNeutralMotionName=`Idle`,EMOTION_EmotionMotionName_value={[Emotion.Happy]:EmotionHappyMotionName,[Emotion.Sad]:EmotionSadMotionName,[Emotion.Angry]:EmotionAngryMotionName,[Emotion.Think]:EmotionThinkMotionName,[Emotion.Surprise]:EmotionSurpriseMotionName,[Emotion.Awkward]:EmotionAwkwardMotionName,[Emotion.Question]:EmotionQuestionMotionName,[Emotion.Idle]:EmotionNeutralMotionName},EMOTION_VRMExpressionName_value={[Emotion.Happy]:`happy`,[Emotion.Sad]:`sad`,[Emotion.Angry]:`angry`,[Emotion.Think]:void 0,[Emotion.Surprise]:`surprised`,[Emotion.Awkward]:void 0,[Emotion.Question]:void 0,[Emotion.Idle]:void 0},chromaticHue=Symbol(`@proj-airi/chromatic-hue`);function message(prefix,suffix){return{role:`system`,content:[prefix,EMOTION_VALUES.map(emotion=>`- ${emotion}`).join(` `),suffix].join(` -`)}}var system_v2_default=message;const chromaticHueDefault=220.44,llmInferenceEndToken=`<|llm_inference_end|>`,_hoisted_1$38={key:0,class:`flex items-center justify-between`},_hoisted_2$25={class:`text-sm font-medium`},_hoisted_3$19={class:`text-xs text-neutral-500`},_hoisted_4$17={class:`h-full w-full`},_hoisted_5$14={id:`below-threshold-gradient`,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`},_hoisted_6$12=[`fill`],_hoisted_7$10=[`y`,`height`,`fill`],_hoisted_8$6=[`y1`,`y2`,`stroke`,`fill`],_hoisted_9$5=[`d`,`fill`],_hoisted_10$5=[`d`,`stroke`,`stroke-width`],_hoisted_11$3={key:0,class:`absolute left-2 top-2 flex items-center gap-1.5 border border-primary-200 rounded-md bg-primary-50 px-2 py-1 dark:border-primary-800 dark:bg-primary-900`},_hoisted_12$3={class:`text-xs text-primary-700 font-medium dark:text-primary-300`},_hoisted_13$3={key:1,class:`flex flex-wrap items-center justify-between text-xs text-neutral-500`},_hoisted_14$2={class:`flex items-center gap-3`},_hoisted_15$2={class:`flex items-center gap-1 text-nowrap`},_hoisted_16$2={class:`flex items-center gap-1 text-nowrap`},_hoisted_17$2={key:0,class:`text-nowrap`};var TimeSeriesChart_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TimeSeriesChart`,props:{history:{},currentValue:{},threshold:{default:null},isActive:{type:Boolean},title:{default:`Time Series`},colorsHue:{},lineColor:{},thresholdColor:{},activeColor:{},inactiveColor:{},subtitle:{default:`Recent data`},activeLabel:{default:`Active`},activeLegendLabel:{default:`Active state`},inactiveLegendLabel:{default:`Inactive state`},thresholdLabel:{default:`Threshold`},height:{default:80},lineWidth:{default:1.5},chartHeight:{},minDataPoints:{default:5},precision:{default:0},unit:{default:`%`},showHeader:{type:Boolean,default:!0},showThreshold:{type:Boolean,default:!0},showArea:{type:Boolean,default:!0},showThresholdAreas:{type:Boolean,default:!0},showCurrentValue:{type:Boolean,default:!0},showActiveIndicator:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},formatValue:{}},setup(__props){let props=__props,chartHeight=computed(()=>props.height),timeSeriesChartRef=ref(),chromaticHue$1=inject(chromaticHue,chromaticHueDefault),chromaticHueOrDefault=toRef(()=>props.colorsHue||chromaticHue$1||chromaticHueDefault),chromaticShades=computed(()=>chromaticPaletteFrom(chromaticHueOrDefault.value)),timeSeriesChartContainerBounding=useElementBounding(timeSeriesChartRef,{windowResize:!0});watch([chromaticHueOrDefault,timeSeriesChartRef],()=>{timeSeriesChartRef.value&&timeSeriesChartRef.value.style.setProperty(`--chromatic-hue`,chromaticHueOrDefault.value.toString())},{immediate:!0});let lineColorProps=toRef(()=>props.lineColor),lineColor=computed(()=>lineColorProps.value?lineColorProps.value:chromaticShades.value.shadeBy(500).toHex()),thresholdColorProps=toRef(()=>props.thresholdColor),thresholdColor=computed(()=>{if(!thresholdColorProps.value){let color$2=chromaticShades.value.shadeBy(500).withAlpha(.1).color;return`oklch(${color$2.l} ${color$2.c} ${color$2.h} / ${color$2.alpha})`}return thresholdColorProps.value}),activeColorProps=toRef(()=>props.activeColor),activeColor=computed(()=>activeColorProps.value?activeColorProps.value:chromaticShades.value.shadeBy(600).toHex()),inactiveColorProps=toRef(()=>props.inactiveColor),inactiveColor=computed(()=>inactiveColorProps.value?inactiveColorProps.value:chromaticShades.value.shadeBy(400).toHex()),componentId=Math.random().toString(36).substring(2,9),gridPatternId=`grid-${componentId}`,areaGradientId=`area-gradient-${componentId}`,thresholdGradientId=`threshold-gradient-${componentId}`,normalizedThreshold=computed(()=>props.threshold===null?0:Math.max(0,Math.min(1,props.threshold))),thresholdLineY=computed(()=>props.threshold===null?0:chartHeight.value-normalizedThreshold.value*chartHeight.value),smoothPath=computed(()=>{let history$1=props.history;if(history$1.length<2)return``;let width=timeSeriesChartContainerBounding.width.value,height=chartHeight.value,path=`M0,${height-history$1[0]*height}`;for(let i$1=1;i$1{let history$1=props.history;if(history$1.length<2)return``;let width=timeSeriesChartContainerBounding.width.value,height=chartHeight.value,path=`M0,${height} L0,${height-history$1[0]*height}`;for(let i$1=1;i$1_ctx.history.length>_ctx.minDataPoints?(openBlock(),createElementBlock(`div`,{key:0,ref_key:`timeSeriesChartRef`,ref:timeSeriesChartRef,class:`time-series-chart space-y-3`},[_ctx.showHeader?(openBlock(),createElementBlock(`div`,_hoisted_1$38,[createBaseVNode(`div`,_hoisted_2$25,toDisplayString(_ctx.title),1),createBaseVNode(`div`,_hoisted_3$19,toDisplayString(_ctx.subtitle),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,{class:`relative overflow-hidden border border-neutral-200 rounded-lg from-neutral-50 to-neutral-100 bg-gradient-to-b dark:border-neutral-800 dark:from-neutral-800 dark:to-neutral-900`,style:normalizeStyle({height:`${chartHeight.value}px`})},[(openBlock(),createElementBlock(`svg`,_hoisted_4$17,[createBaseVNode(`defs`,null,[createBaseVNode(`pattern`,{id:gridPatternId,width:`20`,height:`10`,patternUnits:`userSpaceOnUse`},_cache$1[0]||=[createBaseVNode(`path`,{d:`M 20 0 L 0 0 0 10`,fill:`none`,stroke:`rgb(156 163 175 / 0.1)`,"stroke-width":`0.5`},null,-1)]),createBaseVNode(`linearGradient`,{id:areaGradientId,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`},[createBaseVNode(`stop`,{offset:`0%`,style:normalizeStyle(`stop-color:${lineColor.value};stop-opacity:0.3`)},null,4),createBaseVNode(`stop`,{offset:`50%`,style:normalizeStyle(`stop-color:${lineColor.value};stop-opacity:0.15`)},null,4),createBaseVNode(`stop`,{offset:`100%`,style:normalizeStyle(`stop-color:${lineColor.value};stop-opacity:0.05`)},null,4)]),createBaseVNode(`linearGradient`,{id:thresholdGradientId,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`},[createBaseVNode(`stop`,{offset:`0%`,style:normalizeStyle(`stop-color:${activeColor.value};stop-opacity:0.3`)},null,4),createBaseVNode(`stop`,{offset:`50%`,style:normalizeStyle(`stop-color:${activeColor.value};stop-opacity:0.15`)},null,4),createBaseVNode(`stop`,{offset:`100%`,style:normalizeStyle(`stop-color:${activeColor.value};stop-opacity:0.05`)},null,4)]),createBaseVNode(`linearGradient`,_hoisted_5$14,[createBaseVNode(`stop`,{offset:`0%`,style:normalizeStyle(`stop-color:${thresholdColor.value};stop-opacity:0.2`)},null,4),createBaseVNode(`stop`,{offset:`50%`,style:normalizeStyle(`stop-color:${thresholdColor.value};stop-opacity:0.1`)},null,4),createBaseVNode(`stop`,{offset:`100%`,style:normalizeStyle(`stop-color:${thresholdColor.value};stop-opacity:0.05`)},null,4)])]),createBaseVNode(`rect`,{width:`100%`,height:`100%`,fill:`url(#${gridPatternId})`},null,8,_hoisted_6$12),_ctx.showThreshold&&_ctx.threshold!==null?(openBlock(),createElementBlock(`rect`,{key:0,x:`0`,y:thresholdLineY.value,width:`100%`,height:chartHeight.value-thresholdLineY.value,fill:thresholdColor.value,class:`transition-all duration-300`},null,8,_hoisted_7$10)):createCommentVNode(``,!0),_ctx.showThreshold&&_ctx.threshold!==null?(openBlock(),createElementBlock(`line`,{key:1,x1:`0`,y1:thresholdLineY.value,x2:`100%`,y2:thresholdLineY.value,stroke:thresholdColor.value,"stroke-width":`1.5`,"stroke-dasharray":`4,4`,fill:thresholdColor.value,class:`transition-all duration-300`},null,8,_hoisted_8$6)):createCommentVNode(``,!0),dataAreaPath.value&&_ctx.showArea?(openBlock(),createElementBlock(`path`,{key:2,d:dataAreaPath.value,fill:`url(#${areaGradientId})`,class:`transition-all duration-75`},null,8,_hoisted_9$5)):createCommentVNode(``,!0),smoothPath.value?(openBlock(),createElementBlock(`path`,{key:3,d:smoothPath.value,fill:`none`,stroke:lineColor.value,"stroke-width":_ctx.lineWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,class:`drop-shadow-sm transition-all duration-75`},null,8,_hoisted_10$5)):createCommentVNode(``,!0)])),_ctx.showCurrentValue?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`absolute right-2 top-2 border border-neutral-200 rounded-md bg-white px-2 py-1 shadow-sm transition-all duration-200 dark:border-neutral-700 dark:bg-neutral-800`,_ctx.isActive?`bg-primary-50 dark:bg-primary-900 border-primary-200 dark:border-primary-800`:``])},[createBaseVNode(`div`,{class:normalizeClass([`text-xs font-medium`,_ctx.isActive?`text-primary-700 dark:text-primary-300`:`text-neutral-600 dark:text-neutral-400`])},toDisplayString(_ctx.formatValue?_ctx.formatValue(_ctx.currentValue):`${(_ctx.currentValue*100).toFixed(_ctx.precision)}${_ctx.unit}`),3)],2)):createCommentVNode(``,!0),createVNode(Transition,{name:`fade`},{default:withCtx(()=>[_ctx.isActive&&_ctx.showActiveIndicator?(openBlock(),createElementBlock(`div`,_hoisted_11$3,[_cache$1[1]||=createBaseVNode(`div`,{class:`h-1.5 w-1.5 animate-pulse rounded-full bg-primary-500`},null,-1),createBaseVNode(`span`,_hoisted_12$3,toDisplayString(_ctx.activeLabel),1)])):createCommentVNode(``,!0)]),_:1})],4),_ctx.showLegend?(openBlock(),createElementBlock(`div`,_hoisted_13$3,[createBaseVNode(`div`,_hoisted_14$2,[createBaseVNode(`span`,_hoisted_15$2,[createBaseVNode(`div`,{class:`h-2 w-2 rounded-full`,style:normalizeStyle({backgroundColor:activeColor.value})},null,4),createTextVNode(` `+toDisplayString(_ctx.activeLegendLabel),1)]),createBaseVNode(`span`,_hoisted_16$2,[createBaseVNode(`div`,{class:`h-2 w-2 rounded-full`,style:normalizeStyle({backgroundColor:inactiveColor.value})},null,4),createTextVNode(` `+toDisplayString(_ctx.inactiveLegendLabel),1)])]),_ctx.threshold===null?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_17$2,toDisplayString(_ctx.thresholdLabel)+`: `+toDisplayString((_ctx.threshold*100).toFixed(0))+`%`,1))])):createCommentVNode(``,!0)],512)):createCommentVNode(``,!0)}}),TimeSeriesChart_default=__plugin_vue_export_helper_default(TimeSeriesChart_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-6b4f300d`]]),Callout_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Callout`,props:{theme:{default:`primary`},label:{}},setup(__props){let props=__props,themeClasses={primary:{container:[`bg-primary-400/10 dark:bg-primary-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-primary-400 dark:bg-primary-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-primary-900`],label:[`text-primary-500 dark:text-primary-400 font-semibold`]},lime:{container:[`bg-lime-400/10 dark:bg-lime-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-lime-400 dark:bg-lime-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-lime-900`],label:[`text-lime-500 dark:text-lime-400 font-semibold`]},violet:{container:[`bg-violet-400/10 dark:bg-violet-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-violet-400 dark:bg-violet-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-violet-900`],label:[`text-violet-500 dark:text-violet-400 font-semibold`]},orange:{container:[`bg-orange-400/10 dark:bg-orange-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-orange-400 dark:bg-orange-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-orange-900`],label:[`text-orange-500 dark:text-orange-400 font-semibold`]}};return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{relative:``,"mb-4":``,flex:``,"flex-col":``,"gap-1":``,"overflow-hidden":``,"rounded-lg":``,"py-2":``,"pl-4":``,"pr-3":``,"text-sm":``,class:normalizeClass([...themeClasses[props.theme||`violet`].container,`before-position-absolute before:inset-0 before:h-full before:w-1 before:rounded-full`])},[createBaseVNode(`div`,{text:`font-semibold`,class:normalizeClass([...themeClasses[props.theme||`violet`].label||[]])},[renderSlot(_ctx.$slots,`label`,{},()=>[createTextVNode(toDisplayString(props.label||`Callout`),1)])],2),renderSlot(_ctx.$slots,`default`)],2))}}),Callout_default=Callout_vue_vue_type_script_setup_true_lang_default;const __vite_import_meta_env__={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_TARGET_HUGGINGFACE_SPACE:`true`};var SubscriptionManager=class{constructor(){babelHelpers.defineProperty(this,`subscriptions`,new Set)}add(handler){return this.subscriptions.add(handler),()=>this.subscriptions.delete(handler)}notify(a$2,b$3,c$4){if(this.subscriptions.size)for(let handler of this.subscriptions)handler(a$2,b$3,c$4)}clear(){this.subscriptions.clear()}};function isFloat(value$1){return!Number.isNaN(Number.parseFloat(value$1))}var MotionValue=class{constructor(init){babelHelpers.defineProperty(this,`current`,void 0),babelHelpers.defineProperty(this,`prev`,void 0),babelHelpers.defineProperty(this,`timeDelta`,0),babelHelpers.defineProperty(this,`lastUpdated`,0),babelHelpers.defineProperty(this,`updateSubscribers`,new SubscriptionManager),babelHelpers.defineProperty(this,`stopAnimation`,void 0),babelHelpers.defineProperty(this,`canTrackVelocity`,!1),babelHelpers.defineProperty(this,`updateAndNotify`,v$1=>{this.prev=this.current,this.current=v$1;let{delta,timestamp:timestamp$2}=getFrameData();this.lastUpdated!==timestamp$2&&(this.timeDelta=delta,this.lastUpdated=timestamp$2),es_default.postRender(this.scheduleVelocityCheck),this.updateSubscribers.notify(this.current)}),babelHelpers.defineProperty(this,`scheduleVelocityCheck`,()=>es_default.postRender(this.velocityCheck)),babelHelpers.defineProperty(this,`velocityCheck`,({timestamp:timestamp$2})=>{this.canTrackVelocity||=isFloat(this.current),timestamp$2!==this.lastUpdated&&(this.prev=this.current)}),this.prev=this.current=init,this.canTrackVelocity=isFloat(this.current)}onChange(subscription){return this.updateSubscribers.add(subscription)}clearListeners(){this.updateSubscribers.clear()}set(v$1){this.updateAndNotify(v$1)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?velocityPerSecond(Number.parseFloat(this.current)-Number.parseFloat(this.prev),this.timeDelta):0}start(animation){return this.stop(),new Promise(resolve$1=>{let{stop:stop$1}=animation(resolve$1);this.stopAnimation=stop$1}).then(()=>this.clearAnimation())}stop(){this.stopAnimation&&this.stopAnimation(),this.clearAnimation()}isAnimating(){return!!this.stopAnimation}clearAnimation(){this.stopAnimation=null}destroy(){this.updateSubscribers.clear(),this.stop()}};function getMotionValue(init){return new MotionValue(init)}const{isArray:isArray$2}=Array;function useMotionValues(){let motionValues=ref({}),stop$1=keys$3=>{let destroyKey=key$1=>{motionValues.value[key$1]&&(motionValues.value[key$1].stop(),motionValues.value[key$1].destroy(),delete motionValues.value[key$1])};keys$3?isArray$2(keys$3)?keys$3.forEach(destroyKey):destroyKey(keys$3):Object.keys(motionValues.value).forEach(destroyKey)},get=(key$1,from,target$1)=>{if(motionValues.value[key$1])return motionValues.value[key$1];let motionValue=getMotionValue(from);return motionValue.onChange(v$1=>target$1[key$1]=v$1),motionValues.value[key$1]=motionValue,motionValue};return tryOnUnmounted(stop$1),{motionValues,get,stop:stop$1}}function isKeyframesTarget(v$1){return Array.isArray(v$1)}function underDampedSpring(){return{type:`spring`,stiffness:500,damping:25,restDelta:.5,restSpeed:10}}function criticallyDampedSpring(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?2*Math.sqrt(550):30,restDelta:.01,restSpeed:10}}function overDampedSpring(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?100:30,restDelta:.01,restSpeed:10}}function linearTween(){return{type:`keyframes`,ease:`linear`,duration:300}}function keyframes(values){return{type:`keyframes`,duration:800,values}}const defaultTransitions={default:overDampedSpring,x:underDampedSpring,y:underDampedSpring,z:underDampedSpring,rotate:underDampedSpring,rotateX:underDampedSpring,rotateY:underDampedSpring,rotateZ:underDampedSpring,scaleX:criticallyDampedSpring,scaleY:criticallyDampedSpring,scale:criticallyDampedSpring,backgroundColor:linearTween,color:linearTween,opacity:linearTween};function getDefaultTransition(valueKey,to$1){let transitionFactory;return transitionFactory=isKeyframesTarget(to$1)?keyframes:defaultTransitions[valueKey]||defaultTransitions.default,{to:to$1,...transitionFactory(to$1)}}const int={...number$2,transform:Math.round},valueTypes={color:color$1,backgroundColor:color$1,outlineColor:color$1,fill:color$1,stroke:color$1,borderColor:color$1,borderTopColor:color$1,borderRightColor:color$1,borderBottomColor:color$1,borderLeftColor:color$1,borderWidth:px,borderTopWidth:px,borderRightWidth:px,borderBottomWidth:px,borderLeftWidth:px,borderRadius:px,radius:px,borderTopLeftRadius:px,borderTopRightRadius:px,borderBottomRightRadius:px,borderBottomLeftRadius:px,width:px,maxWidth:px,height:px,maxHeight:px,size:px,top:px,right:px,bottom:px,left:px,padding:px,paddingTop:px,paddingRight:px,paddingBottom:px,paddingLeft:px,margin:px,marginTop:px,marginRight:px,marginBottom:px,marginLeft:px,rotate:degrees,rotateX:degrees,rotateY:degrees,rotateZ:degrees,scale,scaleX:scale,scaleY:scale,scaleZ:scale,skew:degrees,skewX:degrees,skewY:degrees,distance:px,translateX:px,translateY:px,translateZ:px,x:px,y:px,z:px,perspective:px,transformPerspective:px,opacity:alpha,originX:progressPercentage,originY:progressPercentage,originZ:px,zIndex:int,filter,WebkitFilter:filter,fillOpacity:alpha,strokeOpacity:alpha,numOctaves:int},getValueType=key$1=>valueTypes[key$1];function getValueAsType(value$1,type){return type&&typeof value$1==`number`&&type.transform?type.transform(value$1):value$1}function getAnimatableNone(key$1,value$1){let defaultValueType=getValueType(key$1);return defaultValueType!==filter&&(defaultValueType=complex),defaultValueType.getAnimatableNone?defaultValueType.getAnimatableNone(value$1):void 0}const easingLookup={linear,easeIn,easeInOut,easeOut,circIn,circInOut,circOut,backIn,backInOut,backOut,anticipate,bounceIn,bounceInOut,bounceOut};function easingDefinitionToFunction(definition$29){if(Array.isArray(definition$29)){let[x1,y1,x2,y2]=definition$29;return cubicBezier(x1,y1,x2,y2)}else if(typeof definition$29==`string`)return easingLookup[definition$29];return definition$29}function isEasingArray(ease){return Array.isArray(ease)&&typeof ease[0]!=`number`}function isAnimatable(key$1,value$1){return key$1===`zIndex`?!1:!!(typeof value$1==`number`||Array.isArray(value$1)||typeof value$1==`string`&&complex.test(value$1)&&!value$1.startsWith(`url(`))}function hydrateKeyframes(options$1){return Array.isArray(options$1.to)&&options$1.to[0]===null&&(options$1.to=[...options$1.to],options$1.to[0]=options$1.from),options$1}function convertTransitionToAnimationOptions({ease,times,delay,...transition}){let options$1={...transition};return times&&(options$1.offset=times),ease&&(options$1.ease=isEasingArray(ease)?ease.map(easingDefinitionToFunction):easingDefinitionToFunction(ease)),delay&&(options$1.elapsed=-delay),options$1}function getPopmotionAnimationOptions(transition,options$1,key$1){return Array.isArray(options$1.to)&&(transition.duration||=800),hydrateKeyframes(options$1),isTransitionDefined(transition)||(transition={...transition,...getDefaultTransition(key$1,options$1.to)}),{...options$1,...convertTransitionToAnimationOptions(transition)}}function isTransitionDefined({delay,repeat,repeatType,repeatDelay,from,...transition}){return!!Object.keys(transition).length}function getValueTransition(transition,key$1){return transition[key$1]||transition.default||transition}function getAnimation(key$1,value$1,target$1,transition,onComplete){let valueTransition=getValueTransition(transition,key$1),origin=valueTransition.from===null||valueTransition.from===void 0?value$1.get():valueTransition.from,isTargetAnimatable=isAnimatable(key$1,target$1);origin===`none`&&isTargetAnimatable&&typeof target$1==`string`&&(origin=getAnimatableNone(key$1,target$1));let isOriginAnimatable=isAnimatable(key$1,origin);function start(complete){let options$1={from:origin,to:target$1,velocity:transition.velocity?transition.velocity:value$1.getVelocity(),onUpdate:v$1=>value$1.set(v$1)};return valueTransition.type===`inertia`||valueTransition.type===`decay`?inertia({...options$1,...valueTransition}):animate({...getPopmotionAnimationOptions(valueTransition,options$1,key$1),onUpdate:v$1=>{options$1.onUpdate(v$1),valueTransition.onUpdate&&valueTransition.onUpdate(v$1)},onComplete:()=>{onComplete&&onComplete(),complete&&complete()}})}function set(complete){return value$1.set(target$1),onComplete&&onComplete(),complete&&complete(),{stop:()=>{}}}return!isOriginAnimatable||!isTargetAnimatable||valueTransition.type===!1?set:start}function useMotionTransitions(){let{motionValues,stop:stop$1,get}=useMotionValues(),push$1=(key$1,value$1,target$1,transition={},onComplete)=>{let from=target$1[key$1],motionValue=get(key$1,from,target$1);if(transition&&transition.immediate){motionValue.set(value$1);return}let animation=getAnimation(key$1,motionValue,value$1,transition,onComplete);motionValue.start(animation)};return{motionValues,stop:stop$1,push:push$1}}function useMotionControls(motionProperties,variants={},{motionValues,push:push$1,stop:stop$1}=useMotionTransitions()){let _variants=unref(variants),isAnimating=ref(!1);watch(motionValues,newVal=>{isAnimating.value=Object.values(newVal).filter(value$1=>value$1.isAnimating()).length>0},{immediate:!0,deep:!0});let getVariantFromKey=variant=>{if(!_variants||!_variants[variant])throw Error(`The variant ${variant} does not exist.`);return _variants[variant]},apply$2=variant=>{typeof variant==`string`&&(variant=getVariantFromKey(variant));let animations$1=Object.entries(variant).map(([key$1,value$1])=>{if(key$1!==`transition`)return new Promise(resolve$1=>push$1(key$1,value$1,motionProperties,variant.transition||getDefaultTransition(key$1,variant[key$1]),resolve$1))}).filter(Boolean);async function waitForComplete(){var _variant$transition2,_variant$transition2$;await Promise.all(animations$1),(_variant$transition2=variant.transition)==null||(_variant$transition2$=_variant$transition2.onComplete)==null||_variant$transition2$.call(_variant$transition2)}return Promise.all([waitForComplete()])},set=variant=>{let variantData=isObject$1(variant)?variant:getVariantFromKey(variant);Object.entries(variantData).forEach(([key$1,value$1])=>{key$1!==`transition`&&push$1(key$1,value$1,motionProperties,{immediate:!0})})},leave=async done=>{let leaveVariant;if(_variants&&(_variants.leave&&(leaveVariant=_variants.leave),!_variants.leave&&_variants.initial&&(leaveVariant=_variants.initial)),!leaveVariant){done();return}await apply$2(leaveVariant),done()};return{isAnimating,apply:apply$2,set,leave,stop:stop$1}}const isBrowser=typeof window<`u`,supportsPointerEvents=()=>isBrowser&&(window.onpointerdown===null||__vite_import_meta_env__?.TEST),supportsTouchEvents=()=>isBrowser&&(window.ontouchstart===null||__vite_import_meta_env__?.TEST),supportsMouseEvents=()=>isBrowser&&(window.onmousedown===null||__vite_import_meta_env__?.TEST);function registerEventListeners({target:target$1,state,variants,apply:apply$2}){let _variants=unref(variants),hovered=ref(!1),tapped=ref(!1),focused=ref(!1),mutableKeys=computed(()=>{let result=[...Object.keys(state.value||{})];return _variants?(_variants.hovered&&(result=[...result,...Object.keys(_variants.hovered)]),_variants.tapped&&(result=[...result,...Object.keys(_variants.tapped)]),_variants.focused&&(result=[...result,...Object.keys(_variants.focused)]),result):result}),computedProperties=computed(()=>{let result={};for(let key$1 in Object.assign(result,state.value),hovered.value&&_variants.hovered&&Object.assign(result,_variants.hovered),tapped.value&&_variants.tapped&&Object.assign(result,_variants.tapped),focused.value&&_variants.focused&&Object.assign(result,_variants.focused),result)mutableKeys.value.includes(key$1)||delete result[key$1];return result});_variants.hovered&&(useEventListener$1(target$1,`mouseenter`,()=>hovered.value=!0),useEventListener$1(target$1,`mouseleave`,()=>{hovered.value=!1,tapped.value=!1})),_variants.tapped&&(supportsMouseEvents()&&(useEventListener$1(target$1,`mousedown`,()=>tapped.value=!0),useEventListener$1(target$1,`mouseup`,()=>tapped.value=!1)),supportsPointerEvents()&&(useEventListener$1(target$1,`pointerdown`,()=>tapped.value=!0),useEventListener$1(target$1,`pointerup`,()=>tapped.value=!1)),supportsTouchEvents()&&(useEventListener$1(target$1,`touchstart`,()=>tapped.value=!0),useEventListener$1(target$1,`touchend`,()=>tapped.value=!1))),_variants.focused&&(useEventListener$1(target$1,`focus`,()=>focused.value=!0),useEventListener$1(target$1,`blur`,()=>focused.value=!1)),watch([hovered,tapped,focused],()=>{apply$2(computedProperties.value)})}function registerLifeCycleHooks({set,target:target$1,variants,variant}){let _variants=unref(variants);watch(()=>target$1,()=>{_variants&&(_variants.initial&&(set(`initial`),variant.value=`initial`),_variants.enter&&(variant.value=`enter`))},{immediate:!0,flush:`pre`})}function registerVariantsSync({state,apply:apply$2}){watch(state,newVal=>{newVal&&apply$2(newVal)},{immediate:!0})}function registerVisibilityHooks({target:target$1,variants,variant}){let _variants=unref(variants);_variants&&(_variants.visible||_variants.visibleOnce)&&useIntersectionObserver(target$1,([{isIntersecting}])=>{_variants.visible?isIntersecting?variant.value=`visible`:variant.value=`initial`:_variants.visibleOnce&&(isIntersecting&&variant.value!==`visibleOnce`?variant.value=`visibleOnce`:variant.value||=`initial`)})}function useMotionFeatures(instance,options$1={syncVariants:!0,lifeCycleHooks:!0,visibilityHooks:!0,eventListeners:!0}){options$1.lifeCycleHooks&®isterLifeCycleHooks(instance),options$1.syncVariants&®isterVariantsSync(instance),options$1.visibilityHooks&®isterVisibilityHooks(instance),options$1.eventListeners&®isterEventListeners(instance)}function reactiveStyle(props={}){let state=reactive({...props}),style=ref({});return watch(state,()=>{let result={};for(let[key$1,value$1]of Object.entries(state)){let valueType=getValueType(key$1),valueAsType=getValueAsType(value$1,valueType);result[key$1]=valueAsType}style.value=result},{immediate:!0,deep:!0}),{state,style}}function usePermissiveTarget(target$1,onTarget){watch(()=>unrefElement$1(target$1),el=>{el&&onTarget(el)},{immediate:!0})}const translateAlias={x:`translateX`,y:`translateY`,z:`translateZ`};function reactiveTransform(props={},enableHardwareAcceleration=!0){let state=reactive({...props}),transform$1=ref(``);return watch(state,newVal=>{let result=``,hasHardwareAcceleration=!1;if(enableHardwareAcceleration&&(newVal.x||newVal.y||newVal.z)){let str=[newVal.x||0,newVal.y||0,newVal.z||0].map(val=>getValueAsType(val,px)).join(`,`);result+=`translate3d(${str}) `,hasHardwareAcceleration=!0}for(let[key$1,value$1]of Object.entries(newVal)){if(enableHardwareAcceleration&&(key$1===`x`||key$1===`y`||key$1===`z`))continue;let valueType=getValueType(key$1),valueAsType=getValueAsType(value$1,valueType);result+=`${translateAlias[key$1]||key$1}(${valueAsType}) `}enableHardwareAcceleration&&!hasHardwareAcceleration&&(result+=`translateZ(0px) `),transform$1.value=result.trim()},{immediate:!0,deep:!0}),{state,transform:transform$1}}const transformAxes=[``,`X`,`Y`,`Z`],order$1=[`perspective`,`translate`,`scale`,`rotate`,`skew`],transformProps=[`transformPerspective`,`x`,`y`,`z`];order$1.forEach(operationKey=>{transformAxes.forEach(axesKey=>{let key$1=operationKey+axesKey;transformProps.push(key$1)})});const transformPropSet=new Set(transformProps);function isTransformProp(key$1){return transformPropSet.has(key$1)}const transformOriginProps=new Set([`originX`,`originY`,`originZ`]);function isTransformOriginProp(key$1){return transformOriginProps.has(key$1)}function splitValues(variant){let transform$1={},style={};return Object.entries(variant).forEach(([key$1,value$1])=>{isTransformProp(key$1)||isTransformOriginProp(key$1)?transform$1[key$1]=value$1:style[key$1]=value$1}),{transform:transform$1,style}}function variantToStyle(variant){let{transform:_transform,style:_style}=splitValues(variant),{transform:transform$1}=reactiveTransform(_transform),{style}=reactiveStyle(_style);return transform$1.value&&(style.value.transform=transform$1.value),style.value}function useElementStyle(target$1,onInit){let _cache$1,_target$1,{state,style}=reactiveStyle();return usePermissiveTarget(target$1,el=>{_target$1=el;for(let key$1 of Object.keys(valueTypes)){if(el.style[key$1]===null||el.style[key$1]===``||isTransformProp(key$1)||isTransformOriginProp(key$1))continue;state[key$1]=el.style[key$1]}_cache$1&&Object.entries(_cache$1).forEach(([key$1,value$1])=>el.style[key$1]=value$1),onInit&&onInit(state)}),watch(style,newVal=>{if(!_target$1){_cache$1=newVal;return}for(let key$1 in newVal)_target$1.style[key$1]=newVal[key$1]},{immediate:!0}),{style:state}}function parseTransform(transform$1){let transforms=transform$1.trim().split(/\) |\)/);if(transforms.length===1)return{};let parseValues=value$1=>value$1.endsWith(`px`)||value$1.endsWith(`deg`)?Number.parseFloat(value$1):Number.isNaN(Number(value$1))?Number(value$1):value$1;return transforms.reduce((acc,transform2)=>{if(!transform2)return acc;let[name$2,transformValue]=transform2.split(`(`),valueArray=transformValue.split(`,`),values=valueArray.map(val=>parseValues(val.endsWith(`)`)?val.replace(`)`,``):val.trim())),value$1=values.length===1?values[0]:values;return{...acc,[name$2]:value$1}},{})}function stateFromTransform(state,transform$1){Object.entries(parseTransform(transform$1)).forEach(([key$1,value$1])=>{let axes=[`x`,`y`,`z`];if(key$1===`translate3d`){if(value$1===0){axes.forEach(axis=>state[axis]=0);return}value$1.forEach((axisValue,index$1)=>state[axes[index$1]]=axisValue);return}if(value$1=Number.parseFloat(`${value$1}`),key$1===`translateX`){state.x=value$1;return}if(key$1===`translateY`){state.y=value$1;return}if(key$1===`translateZ`){state.z=value$1;return}state[key$1]=value$1})}function useElementTransform(target$1,onInit){let _cache$1,_target$1,{state,transform:transform$1}=reactiveTransform();return usePermissiveTarget(target$1,el=>{_target$1=el,el.style.transform&&stateFromTransform(state,el.style.transform),_cache$1&&(el.style.transform=_cache$1),onInit&&onInit(state)}),watch(transform$1,newValue=>{if(!_target$1){_cache$1=newValue;return}_target$1.style.transform=newValue},{immediate:!0}),{transform:state}}function objectEntries(obj){return Object.entries(obj)}function useMotionProperties(target$1,defaultValues){let motionProperties=reactive({}),apply$2=values=>Object.entries(values).forEach(([key$1,value$1])=>motionProperties[key$1]=value$1),{style}=useElementStyle(target$1,apply$2),{transform:transform$1}=useElementTransform(target$1,apply$2);return watch(motionProperties,newVal=>{objectEntries(newVal).forEach(([key$1,value$1])=>{let target2=isTransformProp(key$1)?transform$1:style;target2[key$1]&&target2[key$1]===value$1||(target2[key$1]=value$1)})},{immediate:!0,deep:!0}),usePermissiveTarget(target$1,()=>defaultValues&&apply$2(defaultValues)),{motionProperties,style,transform:transform$1}}function useMotionVariants(variants={}){let _variants=unref(variants),variant=ref(),state=computed(()=>{if(variant.value)return _variants[variant.value]});return{state,variant}}function useMotion(target$1,variants={},options$1){let{motionProperties}=useMotionProperties(target$1),{variant,state}=useMotionVariants(variants),controls=useMotionControls(motionProperties,variants),instance={target:target$1,variant,variants,state,motionProperties,...controls};return useMotionFeatures(instance,options$1),instance}const transitionKeys=[`delay`,`duration`],directivePropsKeys=[`initial`,`enter`,`leave`,`visible`,`visible-once`,`visibleOnce`,`hovered`,`tapped`,`focused`,...transitionKeys],fade={initial:{opacity:0},enter:{opacity:1}},fadeVisible={initial:{opacity:0},visible:{opacity:1}},fadeVisibleOnce={initial:{opacity:0},visibleOnce:{opacity:1}},pop={initial:{scale:0,opacity:0},enter:{scale:1,opacity:1}},popVisible={initial:{scale:0,opacity:0},visible:{scale:1,opacity:1}},popVisibleOnce={initial:{scale:0,opacity:0},visibleOnce:{scale:1,opacity:1}},rollLeft={initial:{x:-100,rotate:90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleLeft={initial:{x:-100,rotate:90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceLeft={initial:{x:-100,rotate:90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollRight={initial:{x:100,rotate:-90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleRight={initial:{x:100,rotate:-90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceRight={initial:{x:100,rotate:-90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollTop={initial:{y:-100,rotate:-90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleTop={initial:{y:-100,rotate:-90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceTop={initial:{y:-100,rotate:-90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},rollBottom={initial:{y:100,rotate:90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleBottom={initial:{y:100,rotate:90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceBottom={initial:{y:100,rotate:90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},slideLeft={initial:{x:-100,opacity:0},enter:{x:0,opacity:1}},slideVisibleLeft={initial:{x:-100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceLeft={initial:{x:-100,opacity:0},visibleOnce:{x:0,opacity:1}},slideRight={initial:{x:100,opacity:0},enter:{x:0,opacity:1}},slideVisibleRight={initial:{x:100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceRight={initial:{x:100,opacity:0},visibleOnce:{x:0,opacity:1}},slideTop={initial:{y:-100,opacity:0},enter:{y:0,opacity:1}},slideVisibleTop={initial:{y:-100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceTop={initial:{y:-100,opacity:0},visibleOnce:{y:0,opacity:1}},slideBottom={initial:{y:100,opacity:0},enter:{y:0,opacity:1}},slideVisibleBottom={initial:{y:100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceBottom={initial:{y:100,opacity:0},visibleOnce:{y:0,opacity:1}},presets={__proto__:null,fade,fadeVisible,fadeVisibleOnce,pop,popVisible,popVisibleOnce,rollBottom,rollLeft,rollRight,rollTop,rollVisibleBottom,rollVisibleLeft,rollVisibleOnceBottom,rollVisibleOnceLeft,rollVisibleOnceRight,rollVisibleOnceTop,rollVisibleRight,rollVisibleTop,slideBottom,slideLeft,slideRight,slideTop,slideVisibleBottom,slideVisibleLeft,slideVisibleOnceBottom,slideVisibleOnceLeft,slideVisibleOnceRight,slideVisibleOnceTop,slideVisibleRight,slideVisibleTop},CUSTOM_PRESETS=Symbol(``),MotionComponentProps={preset:{type:String,required:!1},instance:{type:Object,required:!1},variants:{type:Object,required:!1},initial:{type:Object,required:!1},enter:{type:Object,required:!1},leave:{type:Object,required:!1},visible:{type:Object,required:!1},visibleOnce:{type:Object,required:!1},hovered:{type:Object,required:!1},tapped:{type:Object,required:!1},focused:{type:Object,required:!1},delay:{type:[Number,String],required:!1},duration:{type:[Number,String],required:!1}};function isObject$2(val){return Object.prototype.toString.call(val)===`[object Object]`}function clone(v$1){if(Array.isArray(v$1))return v$1.map(clone);if(isObject$2(v$1)){let res={};for(let key$1 in v$1)res[key$1]=clone(v$1[key$1]);return res}return v$1}function setupMotionComponent(props){let instances=reactive({}),customPresets=inject(CUSTOM_PRESETS,{}),preset=computed(()=>props.preset==null?{}:customPresets!=null&&props.preset in customPresets?structuredClone(toRaw(customPresets)[props.preset]):props.preset in presets?structuredClone(presets[props.preset]):{}),propsConfig=computed(()=>({initial:props.initial,enter:props.enter,leave:props.leave,visible:props.visible,visibleOnce:props.visibleOnce,hovered:props.hovered,tapped:props.tapped,focused:props.focused}));function applyTransitionHelpers(config,values){for(let transitionKey of[`delay`,`duration`]){if(values[transitionKey]==null)continue;let transitionValueParsed=Number.parseInt(values[transitionKey]);for(let variantKey of[`enter`,`visible`,`visibleOnce`]){let variantConfig=config[variantKey];if(variantConfig==null)continue;variantConfig.transition??={},variantConfig.transition[transitionKey]=transitionValueParsed}}return config}let motionConfig=computed(()=>{let config=defu({},propsConfig.value,preset.value,props.variants||{});return applyTransitionHelpers({...config},props)});function setNodeInstance(node$1,index$1,style){var _node$1$props2;node$1.props??={},(_node$1$props2=node$1.props).style??(_node$1$props2.style={}),node$1.props.style={...node$1.props.style,...style};let elementMotionConfig=applyTransitionHelpers(clone(motionConfig.value),node$1.props);return node$1.props.onVnodeMounted=({el})=>{instances[index$1]=useMotion(el,elementMotionConfig)},node$1.props.onVnodeUpdated=({el})=>{let styles=variantToStyle(instances[index$1].state);for(let[key$1,val]of Object.entries(styles))el.style[key$1]=val},node$1}return{motionConfig,setNodeInstance}}const MotionComponent=defineComponent({name:`Motion`,props:{...MotionComponentProps,is:{type:[String,Object],default:`div`}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent(props);return()=>{let style=variantToStyle(motionConfig.value.initial||{}),node$1=h(props.is,void 0,slots);return setNodeInstance(node$1,0,style),node$1}}}),MotionGroupComponent=defineComponent({name:`MotionGroup`,props:{...MotionComponentProps,is:{type:[String,Object],required:!1}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent(props);return()=>{var _slots$default2;let style=variantToStyle(motionConfig.value.initial||{}),nodes=(_slots$default2=slots.default)?.call(slots)||[];for(let i$1=0;i$1{await apply$2(`initial`),await apply$2(`enter`)}),onUnmounted(async()=>{await apply$2(`leave`),finalizedDisableBackButton.value=!0}),watch([()=>props.title,()=>props.subtitle,route],async()=>{await apply$2(`leave`),await nextTick(),finalizedDisableBackButton.value=props.disableBackButton,title.value=props.title,subtitle.value=props.subtitle,await nextTick(),await apply$2(`initial`),await apply$2(`enter`)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{ref_key:`pageHeaderRef`,ref:pageHeaderRef,style:{top:`env(safe-area-inset-top, 0px)`,right:`env(safe-area-inset-right, 0px)`,left:`env(safe-area-inset-left, 0px)`},sticky:``,"inset-x-0":``,"top-0":``,"z-99":``,"w-full":``,"pb-6":``,"pt-10":``,flex:`~ row items-center gap-2`,bg:`$bg-color`},[createBaseVNode(`button`,{onClick:_cache$1[0]||=$event=>unref(router$1).back()},[finalizedDisableBackButton.value?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,{key:0,"i-solar:alt-arrow-left-line-duotone":``,"text-2xl":``,class:normalizeClass({"pointer-events-none op-0":!_ctx.showBackButton})},null,2))]),createBaseVNode(`h1`,_hoisted_1$37,[subtitle.value?(openBlock(),createElementBlock(`div`,_hoisted_2$24,[createBaseVNode(`span`,_hoisted_3$18,toDisplayString(subtitle.value),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_4$16,toDisplayString(title.value),1)])],512))}}),PageHeader_default=PageHeader_vue_vue_type_script_setup_true_lang_default;const closed=`0px`;var TransitionVertical_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TransitionVertical`,props:{duration:{default:250},easingEnter:{default:`ease-in-out`},easingLeave:{default:`ease-in-out`},opacityClosed:{default:0},opacityOpened:{default:1}},setup(__props){let props=__props;function getElementStyle(element$3){return{height:element$3.style.height,width:element$3.style.width,position:element$3.style.position,visibility:element$3.style.visibility,overflow:element$3.style.overflow,paddingTop:element$3.style.paddingTop,paddingBottom:element$3.style.paddingBottom,borderTopWidth:element$3.style.borderTopWidth,borderBottomWidth:element$3.style.borderBottomWidth,marginTop:element$3.style.marginTop,marginBottom:element$3.style.marginBottom}}function prepareElement(element$3,initialStyle){let{width}=getComputedStyle(element$3);element$3.style.width=width,element$3.style.position=`absolute`,element$3.style.visibility=`hidden`,element$3.style.height=``;let{height}=getComputedStyle(element$3);return element$3.style.width=initialStyle.width,element$3.style.position=initialStyle.position,element$3.style.visibility=initialStyle.visibility,element$3.style.height=closed,element$3.style.overflow=`hidden`,initialStyle.height&&initialStyle.height!==closed?initialStyle.height:height}function animateTransition(element$3,initialStyle,done,keyframes$3,options$1){let animation=element$3.animate(keyframes$3,options$1);element$3.style.height=initialStyle.height,animation.onfinish=()=>{element$3.style.overflow=initialStyle.overflow,done()}}function getEnterKeyframes(height,initialStyle){return[{height:closed,opacity:props.opacityClosed,paddingTop:closed,paddingBottom:closed,borderTopWidth:closed,borderBottomWidth:closed,marginTop:closed,marginBottom:closed},{height,opacity:props.opacityOpened,paddingTop:initialStyle.paddingTop,paddingBottom:initialStyle.paddingBottom,borderTopWidth:initialStyle.borderTopWidth,borderBottomWidth:initialStyle.borderBottomWidth,marginTop:initialStyle.marginTop,marginBottom:initialStyle.marginBottom}]}function enterTransition(element$3,done){let HTMLElement$1=element$3,initialStyle=getElementStyle(HTMLElement$1),height=prepareElement(HTMLElement$1,initialStyle),keyframes$3=getEnterKeyframes(height,initialStyle),options$1={duration:props.duration,easing:props.easingEnter};animateTransition(HTMLElement$1,initialStyle,done,keyframes$3,options$1)}function leaveTransition(element$3,done){let HTMLElement$1=element$3,initialStyle=getElementStyle(HTMLElement$1),{height}=getComputedStyle(HTMLElement$1);HTMLElement$1.style.height=height,HTMLElement$1.style.overflow=`hidden`;let keyframes$3=getEnterKeyframes(height,initialStyle).reverse(),options$1={duration:props.duration,easing:props.easingLeave};animateTransition(HTMLElement$1,initialStyle,done,keyframes$3,options$1)}return(_ctx,_cache$1)=>(openBlock(),createBlock(Transition,{css:!1,onEnter:enterTransition,onLeave:leaveTransition},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3}))}}),TransitionVertical_default=TransitionVertical_vue_vue_type_script_setup_true_lang_default;const sides=[`top`,`right`,`bottom`,`left`],alignments=[`start`,`end`],placements=sides.reduce((acc,side)=>acc.concat(side,side+`-`+alignments[0],side+`-`+alignments[1]),[]),min=Math.min,max=Math.max,round=Math.round,floor=Math.floor,createCoords=v$1=>({x:v$1,y:v$1}),oppositeSideMap={left:`right`,right:`left`,bottom:`top`,top:`bottom`},oppositeAlignmentMap={start:`end`,end:`start`};function clamp(start,value$1,end){return max(start,min(value$1,end))}function evaluate(value$1,param){return typeof value$1==`function`?value$1(param):value$1}function getSide(placement){return placement.split(`-`)[0]}function getAlignment(placement){return placement.split(`-`)[1]}function getOppositeAxis(axis){return axis===`x`?`y`:`x`}function getAxisLength(axis){return axis===`y`?`height`:`width`}function getSideAxis(placement){return[`top`,`bottom`].includes(getSide(placement))?`y`:`x`}function getAlignmentAxis(placement){return getOppositeAxis(getSideAxis(placement))}function getAlignmentSides(placement,rects,rtl){rtl===void 0&&(rtl=!1);let alignment=getAlignment(placement),alignmentAxis=getAlignmentAxis(placement),length=getAxisLength(alignmentAxis),mainAlignmentSide=alignmentAxis===`x`?alignment===(rtl?`end`:`start`)?`right`:`left`:alignment===`start`?`bottom`:`top`;return rects.reference[length]>rects.floating[length]&&(mainAlignmentSide=getOppositePlacement(mainAlignmentSide)),[mainAlignmentSide,getOppositePlacement(mainAlignmentSide)]}function getExpandedPlacements(placement){let oppositePlacement=getOppositePlacement(placement);return[getOppositeAlignmentPlacement(placement),oppositePlacement,getOppositeAlignmentPlacement(oppositePlacement)]}function getOppositeAlignmentPlacement(placement){return placement.replace(/start|end/g,alignment=>oppositeAlignmentMap[alignment])}function getSideList(side,isStart,rtl){let lr=[`left`,`right`],rl=[`right`,`left`],tb=[`top`,`bottom`],bt$3=[`bottom`,`top`];switch(side){case`top`:case`bottom`:return rtl?isStart?rl:lr:isStart?lr:rl;case`left`:case`right`:return isStart?tb:bt$3;default:return[]}}function getOppositeAxisPlacements(placement,flipAlignment,direction,rtl){let alignment=getAlignment(placement),list$2=getSideList(getSide(placement),direction===`start`,rtl);return alignment&&(list$2=list$2.map(side=>side+`-`+alignment),flipAlignment&&(list$2=list$2.concat(list$2.map(getOppositeAlignmentPlacement)))),list$2}function getOppositePlacement(placement){return placement.replace(/left|right|bottom|top/g,side=>oppositeSideMap[side])}function expandPaddingObject(padding){return{top:0,right:0,bottom:0,left:0,...padding}}function getPaddingObject(padding){return typeof padding==`number`?{top:padding,right:padding,bottom:padding,left:padding}:expandPaddingObject(padding)}function rectToClientRect(rect){let{x:x$3,y:y$2,width,height}=rect;return{width,height,top:y$2,left:x$3,right:x$3+width,bottom:y$2+height,x:x$3,y:y$2}}function computeCoordsFromPlacement(_ref,placement,rtl){let{reference,floating}=_ref,sideAxis=getSideAxis(placement),alignmentAxis=getAlignmentAxis(placement),alignLength=getAxisLength(alignmentAxis),side=getSide(placement),isVertical=sideAxis===`y`,commonX=reference.x+reference.width/2-floating.width/2,commonY=reference.y+reference.height/2-floating.height/2,commonAlign=reference[alignLength]/2-floating[alignLength]/2,coords$1;switch(side){case`top`:coords$1={x:commonX,y:reference.y-floating.height};break;case`bottom`:coords$1={x:commonX,y:reference.y+reference.height};break;case`right`:coords$1={x:reference.x+reference.width,y:commonY};break;case`left`:coords$1={x:reference.x-floating.width,y:commonY};break;default:coords$1={x:reference.x,y:reference.y}}switch(getAlignment(placement)){case`start`:coords$1[alignmentAxis]-=commonAlign*(rtl&&isVertical?-1:1);break;case`end`:coords$1[alignmentAxis]+=commonAlign*(rtl&&isVertical?-1:1);break}return coords$1}const computePosition=async(reference,floating,config)=>{let{placement=`bottom`,strategy=`absolute`,middleware=[],platform}=config,validMiddleware=middleware.filter(Boolean),rtl=await(platform.isRTL==null?void 0:platform.isRTL(floating)),rects=await platform.getElementRects({reference,floating,strategy}),{x:x$3,y:y$2}=computeCoordsFromPlacement(rects,placement,rtl),statefulPlacement=placement,middlewareData={},resetCount=0;for(let i$1=0;i$1({name:`arrow`,options:options$1,async fn(state){let{x:x$3,y:y$2,placement,rects,platform,elements,middlewareData}=state,{element:element$3,padding=0}=evaluate(options$1,state)||{};if(element$3==null)return{};let paddingObject=getPaddingObject(padding),coords$1={x:x$3,y:y$2},axis=getAlignmentAxis(placement),length=getAxisLength(axis),arrowDimensions=await platform.getDimensions(element$3),isYAxis=axis===`y`,minProp=isYAxis?`top`:`left`,maxProp=isYAxis?`bottom`:`right`,clientProp=isYAxis?`clientHeight`:`clientWidth`,endDiff=rects.reference[length]+rects.reference[axis]-coords$1[axis]-rects.floating[length],startDiff=coords$1[axis]-rects.reference[axis],arrowOffsetParent=await(platform.getOffsetParent==null?void 0:platform.getOffsetParent(element$3)),clientSize=arrowOffsetParent?arrowOffsetParent[clientProp]:0;(!clientSize||!await(platform.isElement==null?void 0:platform.isElement(arrowOffsetParent)))&&(clientSize=elements.floating[clientProp]||rects.floating[length]);let centerToReference=endDiff/2-startDiff/2,largestPossiblePadding=clientSize/2-arrowDimensions[length]/2-1,minPadding=min(paddingObject[minProp],largestPossiblePadding),maxPadding=min(paddingObject[maxProp],largestPossiblePadding),min$1=minPadding,max$1=clientSize-arrowDimensions[length]-maxPadding,center=clientSize/2-arrowDimensions[length]/2+centerToReference,offset$1=clamp(min$1,center,max$1),shouldAddOffset=!middlewareData.arrow&&getAlignment(placement)!=null&¢er!==offset$1&&rects.reference[length]/2-(centergetAlignment(placement)===alignment),...allowedPlacements.filter(placement=>getAlignment(placement)!==alignment)]:allowedPlacements.filter(placement=>getSide(placement)===placement);return allowedPlacementsSortedByAlignment.filter(placement=>alignment?getAlignment(placement)===alignment||(autoAlignment?getOppositeAlignmentPlacement(placement)!==placement:!1):!0)}const autoPlacement=function(options$1){return options$1===void 0&&(options$1={}),{name:`autoPlacement`,options:options$1,async fn(state){var _middlewareData$autoP,_middlewareData$autoP2,_placementsThatFitOnE;let{rects,middlewareData,placement,platform,elements}=state,{crossAxis=!1,alignment,allowedPlacements=placements,autoAlignment=!0,...detectOverflowOptions}=evaluate(options$1,state),placements$1=alignment!==void 0||allowedPlacements===placements?getPlacementList(alignment||null,autoAlignment,allowedPlacements):allowedPlacements,overflow=await detectOverflow(state,detectOverflowOptions),currentIndex=(_middlewareData$autoP=middlewareData.autoPlacement)?.index||0,currentPlacement=placements$1[currentIndex];if(currentPlacement==null)return{};let alignmentSides=getAlignmentSides(currentPlacement,rects,await(platform.isRTL==null?void 0:platform.isRTL(elements.floating)));if(placement!==currentPlacement)return{reset:{placement:placements$1[0]}};let currentOverflows=[overflow[getSide(currentPlacement)],overflow[alignmentSides[0]],overflow[alignmentSides[1]]],allOverflows=[...(_middlewareData$autoP2=middlewareData.autoPlacement)?.overflows||[],{placement:currentPlacement,overflows:currentOverflows}],nextPlacement=placements$1[currentIndex+1];if(nextPlacement)return{data:{index:currentIndex+1,overflows:allOverflows},reset:{placement:nextPlacement}};let placementsSortedByMostSpace=allOverflows.map(d$2=>{let alignment$1=getAlignment(d$2.placement);return[d$2.placement,alignment$1&&crossAxis?d$2.overflows.slice(0,2).reduce((acc,v$1)=>acc+v$1,0):d$2.overflows[0],d$2.overflows]}).sort((a$2,b$3)=>a$2[1]-b$3[1]),placementsThatFitOnEachSide=placementsSortedByMostSpace.filter(d$2=>d$2[2].slice(0,getAlignment(d$2[0])?2:3).every(v$1=>v$1<=0)),resetPlacement=(_placementsThatFitOnE=placementsThatFitOnEachSide[0])?.[0]||placementsSortedByMostSpace[0][0];return resetPlacement===placement?{}:{data:{index:currentIndex+1,overflows:allOverflows},reset:{placement:resetPlacement}}}}},flip=function(options$1){return options$1===void 0&&(options$1={}),{name:`flip`,options:options$1,async fn(state){var _middlewareData$arrow,_middlewareData$flip;let{placement,middlewareData,rects,initialPlacement,platform,elements}=state,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0,fallbackPlacements:specifiedFallbackPlacements,fallbackStrategy=`bestFit`,fallbackAxisSideDirection=`none`,flipAlignment=!0,...detectOverflowOptions}=evaluate(options$1,state);if((_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset)return{};let side=getSide(placement),initialSideAxis=getSideAxis(initialPlacement),isBasePlacement=getSide(initialPlacement)===initialPlacement,rtl=await(platform.isRTL==null?void 0:platform.isRTL(elements.floating)),fallbackPlacements=specifiedFallbackPlacements||(isBasePlacement||!flipAlignment?[getOppositePlacement(initialPlacement)]:getExpandedPlacements(initialPlacement)),hasFallbackAxisSideDirection=fallbackAxisSideDirection!==`none`;!specifiedFallbackPlacements&&hasFallbackAxisSideDirection&&fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement,flipAlignment,fallbackAxisSideDirection,rtl));let placements$1=[initialPlacement,...fallbackPlacements],overflow=await detectOverflow(state,detectOverflowOptions),overflows=[],overflowsData=(_middlewareData$flip=middlewareData.flip)?.overflows||[];if(checkMainAxis&&overflows.push(overflow[side]),checkCrossAxis){let sides$1=getAlignmentSides(placement,rects,rtl);overflows.push(overflow[sides$1[0]],overflow[sides$1[1]])}if(overflowsData=[...overflowsData,{placement,overflows}],!overflows.every(side$1=>side$1<=0)){var _middlewareData$flip2,_overflowsData$filter;let nextIndex=((_middlewareData$flip2=middlewareData.flip)?.index||0)+1,nextPlacement=placements$1[nextIndex];if(nextPlacement)return{data:{index:nextIndex,overflows:overflowsData},reset:{placement:nextPlacement}};let resetPlacement=(_overflowsData$filter=overflowsData.filter(d$2=>d$2.overflows[0]<=0).sort((a$2,b$3)=>a$2.overflows[1]-b$3.overflows[1])[0])?.placement;if(!resetPlacement)switch(fallbackStrategy){case`bestFit`:{var _overflowsData$filter2;let placement$1=(_overflowsData$filter2=overflowsData.filter(d$2=>{if(hasFallbackAxisSideDirection){let currentSideAxis=getSideAxis(d$2.placement);return currentSideAxis===initialSideAxis||currentSideAxis===`y`}return!0}).map(d$2=>[d$2.placement,d$2.overflows.filter(overflow$1=>overflow$1>0).reduce((acc,overflow$1)=>acc+overflow$1,0)]).sort((a$2,b$3)=>a$2[1]-b$3[1])[0])?.[0];placement$1&&(resetPlacement=placement$1);break}case`initialPlacement`:resetPlacement=initialPlacement;break}if(placement!==resetPlacement)return{reset:{placement:resetPlacement}}}return{}}}};function getSideOffsets(overflow,rect){return{top:overflow.top-rect.height,right:overflow.right-rect.width,bottom:overflow.bottom-rect.height,left:overflow.left-rect.width}}function isAnySideFullyClipped(overflow){return sides.some(side=>overflow[side]>=0)}const hide=function(options$1){return options$1===void 0&&(options$1={}),{name:`hide`,options:options$1,async fn(state){let{rects}=state,{strategy=`referenceHidden`,...detectOverflowOptions}=evaluate(options$1,state);switch(strategy){case`referenceHidden`:{let overflow=await detectOverflow(state,{...detectOverflowOptions,elementContext:`reference`}),offsets=getSideOffsets(overflow,rects.reference);return{data:{referenceHiddenOffsets:offsets,referenceHidden:isAnySideFullyClipped(offsets)}}}case`escaped`:{let overflow=await detectOverflow(state,{...detectOverflowOptions,altBoundary:!0}),offsets=getSideOffsets(overflow,rects.floating);return{data:{escapedOffsets:offsets,escaped:isAnySideFullyClipped(offsets)}}}default:return{}}}}};async function convertValueToCoords(state,options$1){let{placement,platform,elements}=state,rtl=await(platform.isRTL==null?void 0:platform.isRTL(elements.floating)),side=getSide(placement),alignment=getAlignment(placement),isVertical=getSideAxis(placement)===`y`,mainAxisMulti=[`left`,`top`].includes(side)?-1:1,crossAxisMulti=rtl&&isVertical?-1:1,rawValue=evaluate(options$1,state),{mainAxis,crossAxis,alignmentAxis}=typeof rawValue==`number`?{mainAxis:rawValue,crossAxis:0,alignmentAxis:null}:{mainAxis:rawValue.mainAxis||0,crossAxis:rawValue.crossAxis||0,alignmentAxis:rawValue.alignmentAxis};return alignment&&typeof alignmentAxis==`number`&&(crossAxis=alignment===`end`?alignmentAxis*-1:alignmentAxis),isVertical?{x:crossAxis*crossAxisMulti,y:mainAxis*mainAxisMulti}:{x:mainAxis*mainAxisMulti,y:crossAxis*crossAxisMulti}}const offset=function(options$1){return options$1===void 0&&(options$1=0),{name:`offset`,options:options$1,async fn(state){var _middlewareData$offse,_middlewareData$arrow;let{x:x$3,y:y$2,placement,middlewareData}=state,diffCoords=await convertValueToCoords(state,options$1);return placement===(_middlewareData$offse=middlewareData.offset)?.placement&&(_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset?{}:{x:x$3+diffCoords.x,y:y$2+diffCoords.y,data:{...diffCoords,placement}}}}},shift=function(options$1){return options$1===void 0&&(options$1={}),{name:`shift`,options:options$1,async fn(state){let{x:x$3,y:y$2,placement}=state,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!1,limiter={fn:_ref=>{let{x:x$4,y:y$3}=_ref;return{x:x$4,y:y$3}}},...detectOverflowOptions}=evaluate(options$1,state),coords$1={x:x$3,y:y$2},overflow=await detectOverflow(state,detectOverflowOptions),crossAxis=getSideAxis(getSide(placement)),mainAxis=getOppositeAxis(crossAxis),mainAxisCoord=coords$1[mainAxis],crossAxisCoord=coords$1[crossAxis];if(checkMainAxis){let minSide=mainAxis===`y`?`top`:`left`,maxSide=mainAxis===`y`?`bottom`:`right`,min$1=mainAxisCoord+overflow[minSide],max$1=mainAxisCoord-overflow[maxSide];mainAxisCoord=clamp(min$1,mainAxisCoord,max$1)}if(checkCrossAxis){let minSide=crossAxis===`y`?`top`:`left`,maxSide=crossAxis===`y`?`bottom`:`right`,min$1=crossAxisCoord+overflow[minSide],max$1=crossAxisCoord-overflow[maxSide];crossAxisCoord=clamp(min$1,crossAxisCoord,max$1)}let limitedCoords=limiter.fn({...state,[mainAxis]:mainAxisCoord,[crossAxis]:crossAxisCoord});return{...limitedCoords,data:{x:limitedCoords.x-x$3,y:limitedCoords.y-y$2,enabled:{[mainAxis]:checkMainAxis,[crossAxis]:checkCrossAxis}}}}}},limitShift=function(options$1){return options$1===void 0&&(options$1={}),{options:options$1,fn(state){let{x:x$3,y:y$2,placement,rects,middlewareData}=state,{offset:offset$1=0,mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0}=evaluate(options$1,state),coords$1={x:x$3,y:y$2},crossAxis=getSideAxis(placement),mainAxis=getOppositeAxis(crossAxis),mainAxisCoord=coords$1[mainAxis],crossAxisCoord=coords$1[crossAxis],rawOffset=evaluate(offset$1,state),computedOffset=typeof rawOffset==`number`?{mainAxis:rawOffset,crossAxis:0}:{mainAxis:0,crossAxis:0,...rawOffset};if(checkMainAxis){let len=mainAxis===`y`?`height`:`width`,limitMin=rects.reference[mainAxis]-rects.floating[len]+computedOffset.mainAxis,limitMax=rects.reference[mainAxis]+rects.reference[len]-computedOffset.mainAxis;mainAxisCoordlimitMax&&(mainAxisCoord=limitMax)}if(checkCrossAxis){var _middlewareData$offse,_middlewareData$offse2;let len=mainAxis===`y`?`width`:`height`,isOriginSide=[`top`,`left`].includes(getSide(placement)),limitMin=rects.reference[crossAxis]-rects.floating[len]+(isOriginSide&&(_middlewareData$offse=middlewareData.offset)?.[crossAxis]||0)+(isOriginSide?0:computedOffset.crossAxis),limitMax=rects.reference[crossAxis]+rects.reference[len]+(isOriginSide?0:(_middlewareData$offse2=middlewareData.offset)?.[crossAxis]||0)-(isOriginSide?computedOffset.crossAxis:0);crossAxisCoordlimitMax&&(crossAxisCoord=limitMax)}return{[mainAxis]:mainAxisCoord,[crossAxis]:crossAxisCoord}}}},size=function(options$1){return options$1===void 0&&(options$1={}),{name:`size`,options:options$1,async fn(state){var _state$middlewareData,_state$middlewareData2;let{placement,rects,platform,elements}=state,{apply:apply$2=()=>{},...detectOverflowOptions}=evaluate(options$1,state),overflow=await detectOverflow(state,detectOverflowOptions),side=getSide(placement),alignment=getAlignment(placement),isYAxis=getSideAxis(placement)===`y`,{width,height}=rects.floating,heightSide,widthSide;side===`top`||side===`bottom`?(heightSide=side,widthSide=alignment===(await(platform.isRTL==null?void 0:platform.isRTL(elements.floating))?`start`:`end`)?`left`:`right`):(widthSide=side,heightSide=alignment===`end`?`top`:`bottom`);let maximumClippingHeight=height-overflow.top-overflow.bottom,maximumClippingWidth=width-overflow.left-overflow.right,overflowAvailableHeight=min(height-overflow[heightSide],maximumClippingHeight),overflowAvailableWidth=min(width-overflow[widthSide],maximumClippingWidth),noShift=!state.middlewareData.shift,availableHeight=overflowAvailableHeight,availableWidth=overflowAvailableWidth;if((_state$middlewareData=state.middlewareData.shift)!=null&&_state$middlewareData.enabled.x&&(availableWidth=maximumClippingWidth),(_state$middlewareData2=state.middlewareData.shift)!=null&&_state$middlewareData2.enabled.y&&(availableHeight=maximumClippingHeight),noShift&&!alignment){let xMin=max(overflow.left,0),xMax=max(overflow.right,0),yMin=max(overflow.top,0),yMax=max(overflow.bottom,0);isYAxis?availableWidth=width-2*(xMin!==0||xMax!==0?xMin+xMax:max(overflow.left,overflow.right)):availableHeight=height-2*(yMin!==0||yMax!==0?yMin+yMax:max(overflow.top,overflow.bottom))}await apply$2({...state,availableWidth,availableHeight});let nextDimensions=await platform.getDimensions(elements.floating);return width!==nextDimensions.width||height!==nextDimensions.height?{reset:{rects:!0}}:{}}}};function renderSlotFragments(children){return children?children.flatMap(child=>child.type===Fragment?renderSlotFragments(child.children):[child]):[]}const Slot=defineComponent({name:`PrimitiveSlot`,inheritAttrs:!1,setup(_$2,{attrs,slots}){return()=>{var _firstNonCommentChild;if(!slots.default)return null;let children=renderSlotFragments(slots.default()),firstNonCommentChildrenIndex=children.findIndex(child=>child.type!==Comment);if(firstNonCommentChildrenIndex===-1)return children;let firstNonCommentChildren=children[firstNonCommentChildrenIndex];(_firstNonCommentChild=firstNonCommentChildren.props)==null||delete _firstNonCommentChild.ref;let mergedProps=firstNonCommentChildren.props?mergeProps(attrs,firstNonCommentChildren.props):attrs,cloned=cloneVNode({...firstNonCommentChildren,props:{}},mergedProps);return children.length===1?cloned:(children[firstNonCommentChildrenIndex]=cloned,children)}}}),SELF_CLOSING_TAGS=[`area`,`img`,`input`],Primitive=defineComponent({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(props,{attrs,slots}){let asTag=props.asChild?`template`:props.as;return typeof asTag==`string`&&SELF_CLOSING_TAGS.includes(asTag)?()=>h(asTag,attrs):asTag===`template`?()=>h(Slot,attrs,{default:slots.default}):()=>h(props.as,attrs,{default:slots.default})}}),_sfc_main$18=defineComponent({__name:`VisuallyHidden`,props:{feature:{default:`focusable`},asChild:{type:Boolean},as:{default:`span`}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{as:_ctx.as,"as-child":_ctx.asChild,"aria-hidden":_ctx.feature===`focusable`?`true`:void 0,"data-hidden":_ctx.feature===`fully-hidden`?``:void 0,tabindex:_ctx.feature===`fully-hidden`?`-1`:void 0,style:{position:`absolute`,border:0,width:`1px`,height:`1px`,padding:0,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,whiteSpace:`nowrap`,wordWrap:`normal`}},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-hidden`,`data-hidden`,`tabindex`]))}});function createContext(providerComponentName,contextName){let symbolDescription=typeof providerComponentName==`string`&&!contextName?`${providerComponentName}Context`:contextName,injectionKey=Symbol(symbolDescription),injectContext=fallback=>{let context$1=inject(injectionKey,fallback);if(context$1||context$1===null)return context$1;throw Error(`Injection \`${injectionKey.toString()}\` not found. Component must be used within ${Array.isArray(providerComponentName)?`one of the following components: ${providerComponentName.join(`, `)}`:`\`${providerComponentName}\``}`)},provideContext=contextValue=>(provide(injectionKey,contextValue),contextValue);return[injectContext,provideContext]}const[injectConfigProviderContext,provideConfigProviderContext]=createContext(`ConfigProvider`);function useForwardExpose(){let instance=getCurrentInstance(),currentRef=ref(),currentElement=computed(()=>{var _currentRef$value,_currentRef$value2;return[`#text`,`#comment`].includes((_currentRef$value=currentRef.value)?.$el.nodeName)?(_currentRef$value2=currentRef.value)?.$el.nextElementSibling:unrefElement(currentRef)}),localExpose=Object.assign({},instance.exposed),ret={};for(let key$1 in instance.props)Object.defineProperty(ret,key$1,{enumerable:!0,configurable:!0,get:()=>instance.props[key$1]});if(Object.keys(localExpose).length>0)for(let key$1 in localExpose)Object.defineProperty(ret,key$1,{enumerable:!0,configurable:!0,get:()=>localExpose[key$1]});Object.defineProperty(ret,`$el`,{enumerable:!0,configurable:!0,get:()=>instance.vnode.el}),instance.exposed=ret;function forwardRef(ref2){currentRef.value=ref2,ref2&&(Object.defineProperty(ret,`$el`,{enumerable:!0,configurable:!0,get:()=>ref2 instanceof Element?ref2:ref2.$el}),instance.exposed=ret)}return{forwardRef,currentRef,currentElement}}let count=0;function useId(deterministicId,prefix=`reka`){if(deterministicId)return deterministicId;let configProviderContext=injectConfigProviderContext({useId:void 0});return Object.hasOwn(vue_runtime_esm_bundler_exports,`useId`)?`${prefix}-${useId$1?.()}`:configProviderContext.useId?`${prefix}-${configProviderContext.useId()}`:`${prefix}-${++count}`}function useStateMachine(initialState,machine){let state=ref(initialState);function reducer(event){let nextState=machine[state.value][event];return nextState??state.value}let dispatch=event=>{state.value=reducer(event)};return{state,dispatch}}function usePresence(present,node$1){var _node$1$value;let stylesRef=ref({}),prevAnimationNameRef=ref(`none`),prevPresentRef=ref(present),initialState=present.value?`mounted`:`unmounted`,timeoutId,ownerWindow=(_node$1$value=node$1.value)?.ownerDocument.defaultView??defaultWindow,{state,dispatch}=useStateMachine(initialState,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),dispatchCustomEvent=name$2=>{if(isClient$1){var _node$1$value2;let customEvent=new CustomEvent(name$2,{bubbles:!1,cancelable:!1});(_node$1$value2=node$1.value)?.dispatchEvent(customEvent)}};watch(present,async(currentPresent,prevPresent)=>{let hasPresentChanged=prevPresent!==currentPresent;if(await nextTick(),hasPresentChanged){var _stylesRef$value;let prevAnimationName=prevAnimationNameRef.value,currentAnimationName=getAnimationName(node$1.value);if(currentPresent)dispatch(`MOUNT`),dispatchCustomEvent(`enter`),currentAnimationName===`none`&&dispatchCustomEvent(`after-enter`);else if(currentAnimationName===`none`||currentAnimationName===`undefined`||(_stylesRef$value=stylesRef.value)?.display===`none`)dispatch(`UNMOUNT`),dispatchCustomEvent(`leave`),dispatchCustomEvent(`after-leave`);else{let isAnimating=prevAnimationName!==currentAnimationName;prevPresent&&isAnimating?(dispatch(`ANIMATION_OUT`),dispatchCustomEvent(`leave`)):(dispatch(`UNMOUNT`),dispatchCustomEvent(`after-leave`))}}},{immediate:!0});let handleAnimationEnd=event=>{let currentAnimationName=getAnimationName(node$1.value),isCurrentAnimation=currentAnimationName.includes(event.animationName),directionName=state.value===`mounted`?`enter`:`leave`;if(event.target===node$1.value&&isCurrentAnimation&&(dispatchCustomEvent(`after-${directionName}`),dispatch(`ANIMATION_END`),!prevPresentRef.value)){let currentFillMode=node$1.value.style.animationFillMode;node$1.value.style.animationFillMode=`forwards`,timeoutId=ownerWindow?.setTimeout(()=>{var _node$1$value3;(_node$1$value3=node$1.value)?.style.animationFillMode===`forwards`&&(node$1.value.style.animationFillMode=currentFillMode)})}event.target===node$1.value&¤tAnimationName===`none`&&dispatch(`ANIMATION_END`)},handleAnimationStart=event=>{event.target===node$1.value&&(prevAnimationNameRef.value=getAnimationName(node$1.value))},watcher=watch(node$1,(newNode,oldNode)=>{newNode?(stylesRef.value=getComputedStyle(newNode),newNode.addEventListener(`animationstart`,handleAnimationStart),newNode.addEventListener(`animationcancel`,handleAnimationEnd),newNode.addEventListener(`animationend`,handleAnimationEnd)):(dispatch(`ANIMATION_END`),timeoutId!==void 0&&ownerWindow?.clearTimeout(timeoutId),oldNode?.removeEventListener(`animationstart`,handleAnimationStart),oldNode?.removeEventListener(`animationcancel`,handleAnimationEnd),oldNode?.removeEventListener(`animationend`,handleAnimationEnd))},{immediate:!0}),stateWatcher=watch(state,()=>{let currentAnimationName=getAnimationName(node$1.value);prevAnimationNameRef.value=state.value===`mounted`?currentAnimationName:`none`});onUnmounted(()=>{watcher(),stateWatcher()});let isPresent=computed(()=>[`mounted`,`unmountSuspended`].includes(state.value));return{isPresent}}function getAnimationName(node$1){return node$1&&getComputedStyle(node$1).animationName||`none`}const Presence=defineComponent({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(props,{slots,expose}){let{present,forceMount}=toRefs(props),node$1=ref(),{isPresent}=usePresence(present,node$1);expose({present:isPresent});let children=slots.default({present:isPresent.value});children=renderSlotFragments(children||[]);let instance=getCurrentInstance();if(children&&children?.length>1){var _instance$parent;let componentName=!(instance==null||(_instance$parent=instance.parent)==null)&&_instance$parent.type.name?`<${instance.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${componentName}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(line=>` - ${line}`).join(` +`)}}var system_v2_default=message;const chromaticHueDefault=220.44,llmInferenceEndToken=`<|llm_inference_end|>`,_hoisted_1$38={key:0,class:`flex items-center justify-between`},_hoisted_2$25={class:`text-sm font-medium`},_hoisted_3$19={class:`text-xs text-neutral-500`},_hoisted_4$17={class:`h-full w-full`},_hoisted_5$14={id:`below-threshold-gradient`,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`},_hoisted_6$12=[`fill`],_hoisted_7$10=[`y`,`height`,`fill`],_hoisted_8$6=[`y1`,`y2`,`stroke`,`fill`],_hoisted_9$5=[`d`,`fill`],_hoisted_10$5=[`d`,`stroke`,`stroke-width`],_hoisted_11$3={key:0,class:`absolute left-2 top-2 flex items-center gap-1.5 border border-primary-200 rounded-md bg-primary-50 px-2 py-1 dark:border-primary-800 dark:bg-primary-900`},_hoisted_12$3={class:`text-xs text-primary-700 font-medium dark:text-primary-300`},_hoisted_13$3={key:1,class:`flex flex-wrap items-center justify-between text-xs text-neutral-500`},_hoisted_14$2={class:`flex items-center gap-3`},_hoisted_15$2={class:`flex items-center gap-1 text-nowrap`},_hoisted_16$2={class:`flex items-center gap-1 text-nowrap`},_hoisted_17$2={key:0,class:`text-nowrap`};var TimeSeriesChart_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TimeSeriesChart`,props:{history:{},currentValue:{},threshold:{default:null},isActive:{type:Boolean},title:{default:`Time Series`},colorsHue:{},lineColor:{},thresholdColor:{},activeColor:{},inactiveColor:{},subtitle:{default:`Recent data`},activeLabel:{default:`Active`},activeLegendLabel:{default:`Active state`},inactiveLegendLabel:{default:`Inactive state`},thresholdLabel:{default:`Threshold`},height:{default:80},lineWidth:{default:1.5},chartHeight:{},minDataPoints:{default:5},precision:{default:0},unit:{default:`%`},showHeader:{type:Boolean,default:!0},showThreshold:{type:Boolean,default:!0},showArea:{type:Boolean,default:!0},showThresholdAreas:{type:Boolean,default:!0},showCurrentValue:{type:Boolean,default:!0},showActiveIndicator:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},formatValue:{}},setup(__props){let props=__props,chartHeight=computed(()=>props.height),timeSeriesChartRef=ref(),chromaticHue$1=inject(chromaticHue,chromaticHueDefault),chromaticHueOrDefault=toRef(()=>props.colorsHue||chromaticHue$1||chromaticHueDefault),chromaticShades=computed(()=>chromaticPaletteFrom(chromaticHueOrDefault.value)),timeSeriesChartContainerBounding=useElementBounding(timeSeriesChartRef,{windowResize:!0});watch([chromaticHueOrDefault,timeSeriesChartRef],()=>{timeSeriesChartRef.value&&timeSeriesChartRef.value.style.setProperty(`--chromatic-hue`,chromaticHueOrDefault.value.toString())},{immediate:!0});let lineColorProps=toRef(()=>props.lineColor),lineColor=computed(()=>lineColorProps.value?lineColorProps.value:chromaticShades.value.shadeBy(500).toHex()),thresholdColorProps=toRef(()=>props.thresholdColor),thresholdColor=computed(()=>{if(!thresholdColorProps.value){let color$2=chromaticShades.value.shadeBy(500).withAlpha(.1).color;return`oklch(${color$2.l} ${color$2.c} ${color$2.h} / ${color$2.alpha})`}return thresholdColorProps.value}),activeColorProps=toRef(()=>props.activeColor),activeColor=computed(()=>activeColorProps.value?activeColorProps.value:chromaticShades.value.shadeBy(600).toHex()),inactiveColorProps=toRef(()=>props.inactiveColor),inactiveColor=computed(()=>inactiveColorProps.value?inactiveColorProps.value:chromaticShades.value.shadeBy(400).toHex()),componentId=Math.random().toString(36).substring(2,9),gridPatternId=`grid-${componentId}`,areaGradientId=`area-gradient-${componentId}`,thresholdGradientId=`threshold-gradient-${componentId}`,normalizedThreshold=computed(()=>props.threshold===null?0:Math.max(0,Math.min(1,props.threshold))),thresholdLineY=computed(()=>props.threshold===null?0:chartHeight.value-normalizedThreshold.value*chartHeight.value),smoothPath=computed(()=>{let history$1=props.history;if(history$1.length<2)return``;let width=timeSeriesChartContainerBounding.width.value,height=chartHeight.value,path=`M0,${height-history$1[0]*height}`;for(let i$1=1;i$1{let history$1=props.history;if(history$1.length<2)return``;let width=timeSeriesChartContainerBounding.width.value,height=chartHeight.value,path=`M0,${height} L0,${height-history$1[0]*height}`;for(let i$1=1;i$1_ctx.history.length>_ctx.minDataPoints?(openBlock(),createElementBlock(`div`,{key:0,ref_key:`timeSeriesChartRef`,ref:timeSeriesChartRef,class:`time-series-chart space-y-3`},[_ctx.showHeader?(openBlock(),createElementBlock(`div`,_hoisted_1$38,[createBaseVNode(`div`,_hoisted_2$25,toDisplayString(_ctx.title),1),createBaseVNode(`div`,_hoisted_3$19,toDisplayString(_ctx.subtitle),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,{class:`relative overflow-hidden border border-neutral-200 rounded-lg from-neutral-50 to-neutral-100 bg-gradient-to-b dark:border-neutral-800 dark:from-neutral-800 dark:to-neutral-900`,style:normalizeStyle({height:`${chartHeight.value}px`})},[(openBlock(),createElementBlock(`svg`,_hoisted_4$17,[createBaseVNode(`defs`,null,[createBaseVNode(`pattern`,{id:gridPatternId,width:`20`,height:`10`,patternUnits:`userSpaceOnUse`},_cache$1[0]||=[createBaseVNode(`path`,{d:`M 20 0 L 0 0 0 10`,fill:`none`,stroke:`rgb(156 163 175 / 0.1)`,"stroke-width":`0.5`},null,-1)]),createBaseVNode(`linearGradient`,{id:areaGradientId,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`},[createBaseVNode(`stop`,{offset:`0%`,style:normalizeStyle(`stop-color:${lineColor.value};stop-opacity:0.3`)},null,4),createBaseVNode(`stop`,{offset:`50%`,style:normalizeStyle(`stop-color:${lineColor.value};stop-opacity:0.15`)},null,4),createBaseVNode(`stop`,{offset:`100%`,style:normalizeStyle(`stop-color:${lineColor.value};stop-opacity:0.05`)},null,4)]),createBaseVNode(`linearGradient`,{id:thresholdGradientId,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`},[createBaseVNode(`stop`,{offset:`0%`,style:normalizeStyle(`stop-color:${activeColor.value};stop-opacity:0.3`)},null,4),createBaseVNode(`stop`,{offset:`50%`,style:normalizeStyle(`stop-color:${activeColor.value};stop-opacity:0.15`)},null,4),createBaseVNode(`stop`,{offset:`100%`,style:normalizeStyle(`stop-color:${activeColor.value};stop-opacity:0.05`)},null,4)]),createBaseVNode(`linearGradient`,_hoisted_5$14,[createBaseVNode(`stop`,{offset:`0%`,style:normalizeStyle(`stop-color:${thresholdColor.value};stop-opacity:0.2`)},null,4),createBaseVNode(`stop`,{offset:`50%`,style:normalizeStyle(`stop-color:${thresholdColor.value};stop-opacity:0.1`)},null,4),createBaseVNode(`stop`,{offset:`100%`,style:normalizeStyle(`stop-color:${thresholdColor.value};stop-opacity:0.05`)},null,4)])]),createBaseVNode(`rect`,{width:`100%`,height:`100%`,fill:`url(#${gridPatternId})`},null,8,_hoisted_6$12),_ctx.showThreshold&&_ctx.threshold!==null?(openBlock(),createElementBlock(`rect`,{key:0,x:`0`,y:thresholdLineY.value,width:`100%`,height:chartHeight.value-thresholdLineY.value,fill:thresholdColor.value,class:`transition-all duration-300`},null,8,_hoisted_7$10)):createCommentVNode(``,!0),_ctx.showThreshold&&_ctx.threshold!==null?(openBlock(),createElementBlock(`line`,{key:1,x1:`0`,y1:thresholdLineY.value,x2:`100%`,y2:thresholdLineY.value,stroke:thresholdColor.value,"stroke-width":`1.5`,"stroke-dasharray":`4,4`,fill:thresholdColor.value,class:`transition-all duration-300`},null,8,_hoisted_8$6)):createCommentVNode(``,!0),dataAreaPath.value&&_ctx.showArea?(openBlock(),createElementBlock(`path`,{key:2,d:dataAreaPath.value,fill:`url(#${areaGradientId})`,class:`transition-all duration-75`},null,8,_hoisted_9$5)):createCommentVNode(``,!0),smoothPath.value?(openBlock(),createElementBlock(`path`,{key:3,d:smoothPath.value,fill:`none`,stroke:lineColor.value,"stroke-width":_ctx.lineWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,class:`drop-shadow-sm transition-all duration-75`},null,8,_hoisted_10$5)):createCommentVNode(``,!0)])),_ctx.showCurrentValue?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`absolute right-2 top-2 border border-neutral-200 rounded-md bg-white px-2 py-1 shadow-sm transition-all duration-200 dark:border-neutral-700 dark:bg-neutral-800`,_ctx.isActive?`bg-primary-50 dark:bg-primary-900 border-primary-200 dark:border-primary-800`:``])},[createBaseVNode(`div`,{class:normalizeClass([`text-xs font-medium`,_ctx.isActive?`text-primary-700 dark:text-primary-300`:`text-neutral-600 dark:text-neutral-400`])},toDisplayString(_ctx.formatValue?_ctx.formatValue(_ctx.currentValue):`${(_ctx.currentValue*100).toFixed(_ctx.precision)}${_ctx.unit}`),3)],2)):createCommentVNode(``,!0),createVNode(Transition,{name:`fade`},{default:withCtx(()=>[_ctx.isActive&&_ctx.showActiveIndicator?(openBlock(),createElementBlock(`div`,_hoisted_11$3,[_cache$1[1]||=createBaseVNode(`div`,{class:`h-1.5 w-1.5 animate-pulse rounded-full bg-primary-500`},null,-1),createBaseVNode(`span`,_hoisted_12$3,toDisplayString(_ctx.activeLabel),1)])):createCommentVNode(``,!0)]),_:1})],4),_ctx.showLegend?(openBlock(),createElementBlock(`div`,_hoisted_13$3,[createBaseVNode(`div`,_hoisted_14$2,[createBaseVNode(`span`,_hoisted_15$2,[createBaseVNode(`div`,{class:`h-2 w-2 rounded-full`,style:normalizeStyle({backgroundColor:activeColor.value})},null,4),createTextVNode(` `+toDisplayString(_ctx.activeLegendLabel),1)]),createBaseVNode(`span`,_hoisted_16$2,[createBaseVNode(`div`,{class:`h-2 w-2 rounded-full`,style:normalizeStyle({backgroundColor:inactiveColor.value})},null,4),createTextVNode(` `+toDisplayString(_ctx.inactiveLegendLabel),1)])]),_ctx.threshold===null?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_17$2,toDisplayString(_ctx.thresholdLabel)+`: `+toDisplayString((_ctx.threshold*100).toFixed(0))+`%`,1))])):createCommentVNode(``,!0)],512)):createCommentVNode(``,!0)}}),TimeSeriesChart_default=__plugin_vue_export_helper_default(TimeSeriesChart_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-6b4f300d`]]),Callout_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Callout`,props:{theme:{default:`primary`},label:{}},setup(__props){let props=__props,themeClasses={primary:{container:[`bg-primary-400/10 dark:bg-primary-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-primary-400 dark:bg-primary-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-primary-900`],label:[`text-primary-500 dark:text-primary-400 font-semibold`]},lime:{container:[`bg-lime-400/10 dark:bg-lime-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-lime-400 dark:bg-lime-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-lime-900`],label:[`text-lime-500 dark:text-lime-400 font-semibold`]},violet:{container:[`bg-violet-400/10 dark:bg-violet-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-violet-400 dark:bg-violet-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-violet-900`],label:[`text-violet-500 dark:text-violet-400 font-semibold`]},orange:{container:[`bg-orange-400/10 dark:bg-orange-50/10 text-neutral-900/80 backdrop-blur-md`,`before:bg-orange-400 dark:bg-orange-900/10 dark:text-neutral-100/80 before:content-[''] before:dark:bg-orange-900`],label:[`text-orange-500 dark:text-orange-400 font-semibold`]}};return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{relative:``,"mb-4":``,flex:``,"flex-col":``,"gap-1":``,"overflow-hidden":``,"rounded-lg":``,"py-2":``,"pl-4":``,"pr-3":``,"text-sm":``,class:normalizeClass([...themeClasses[props.theme||`violet`].container,`before-position-absolute before:inset-0 before:h-full before:w-1 before:rounded-full`])},[createBaseVNode(`div`,{text:`font-semibold`,class:normalizeClass([...themeClasses[props.theme||`violet`].label||[]])},[renderSlot(_ctx.$slots,`label`,{},()=>[createTextVNode(toDisplayString(props.label||`Callout`),1)])],2),renderSlot(_ctx.$slots,`default`)],2))}}),Callout_default=Callout_vue_vue_type_script_setup_true_lang_default;const __vite_import_meta_env__={BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_TARGET_HUGGINGFACE_SPACE:`true`};var SubscriptionManager=class{subscriptions=new Set;add(handler){return this.subscriptions.add(handler),()=>this.subscriptions.delete(handler)}notify(a$2,b$3,c$4){if(this.subscriptions.size)for(let handler of this.subscriptions)handler(a$2,b$3,c$4)}clear(){this.subscriptions.clear()}};function isFloat(value$1){return!Number.isNaN(Number.parseFloat(value$1))}var MotionValue=class{current;prev;timeDelta=0;lastUpdated=0;updateSubscribers=new SubscriptionManager;stopAnimation;canTrackVelocity=!1;constructor(init){this.prev=this.current=init,this.canTrackVelocity=isFloat(this.current)}onChange(subscription){return this.updateSubscribers.add(subscription)}clearListeners(){this.updateSubscribers.clear()}set(v$1){this.updateAndNotify(v$1)}updateAndNotify=v$1=>{this.prev=this.current,this.current=v$1;let{delta,timestamp:timestamp$2}=getFrameData();this.lastUpdated!==timestamp$2&&(this.timeDelta=delta,this.lastUpdated=timestamp$2),es_default.postRender(this.scheduleVelocityCheck),this.updateSubscribers.notify(this.current)};get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?velocityPerSecond(Number.parseFloat(this.current)-Number.parseFloat(this.prev),this.timeDelta):0}scheduleVelocityCheck=()=>es_default.postRender(this.velocityCheck);velocityCheck=({timestamp:timestamp$2})=>{this.canTrackVelocity||=isFloat(this.current),timestamp$2!==this.lastUpdated&&(this.prev=this.current)};start(animation){return this.stop(),new Promise(resolve$1=>{let{stop:stop$1}=animation(resolve$1);this.stopAnimation=stop$1}).then(()=>this.clearAnimation())}stop(){this.stopAnimation&&this.stopAnimation(),this.clearAnimation()}isAnimating(){return!!this.stopAnimation}clearAnimation(){this.stopAnimation=null}destroy(){this.updateSubscribers.clear(),this.stop()}};function getMotionValue(init){return new MotionValue(init)}const{isArray:isArray$2}=Array;function useMotionValues(){let motionValues=ref({}),stop$1=keys$3=>{let destroyKey=key$1=>{motionValues.value[key$1]&&(motionValues.value[key$1].stop(),motionValues.value[key$1].destroy(),delete motionValues.value[key$1])};keys$3?isArray$2(keys$3)?keys$3.forEach(destroyKey):destroyKey(keys$3):Object.keys(motionValues.value).forEach(destroyKey)},get=(key$1,from,target$1)=>{if(motionValues.value[key$1])return motionValues.value[key$1];let motionValue=getMotionValue(from);return motionValue.onChange(v$1=>target$1[key$1]=v$1),motionValues.value[key$1]=motionValue,motionValue};return tryOnUnmounted(stop$1),{motionValues,get,stop:stop$1}}function isKeyframesTarget(v$1){return Array.isArray(v$1)}function underDampedSpring(){return{type:`spring`,stiffness:500,damping:25,restDelta:.5,restSpeed:10}}function criticallyDampedSpring(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?2*Math.sqrt(550):30,restDelta:.01,restSpeed:10}}function overDampedSpring(to$1){return{type:`spring`,stiffness:550,damping:to$1===0?100:30,restDelta:.01,restSpeed:10}}function linearTween(){return{type:`keyframes`,ease:`linear`,duration:300}}function keyframes(values){return{type:`keyframes`,duration:800,values}}const defaultTransitions={default:overDampedSpring,x:underDampedSpring,y:underDampedSpring,z:underDampedSpring,rotate:underDampedSpring,rotateX:underDampedSpring,rotateY:underDampedSpring,rotateZ:underDampedSpring,scaleX:criticallyDampedSpring,scaleY:criticallyDampedSpring,scale:criticallyDampedSpring,backgroundColor:linearTween,color:linearTween,opacity:linearTween};function getDefaultTransition(valueKey,to$1){let transitionFactory;return transitionFactory=isKeyframesTarget(to$1)?keyframes:defaultTransitions[valueKey]||defaultTransitions.default,{to:to$1,...transitionFactory(to$1)}}const int={...number$2,transform:Math.round},valueTypes={color:color$1,backgroundColor:color$1,outlineColor:color$1,fill:color$1,stroke:color$1,borderColor:color$1,borderTopColor:color$1,borderRightColor:color$1,borderBottomColor:color$1,borderLeftColor:color$1,borderWidth:px,borderTopWidth:px,borderRightWidth:px,borderBottomWidth:px,borderLeftWidth:px,borderRadius:px,radius:px,borderTopLeftRadius:px,borderTopRightRadius:px,borderBottomRightRadius:px,borderBottomLeftRadius:px,width:px,maxWidth:px,height:px,maxHeight:px,size:px,top:px,right:px,bottom:px,left:px,padding:px,paddingTop:px,paddingRight:px,paddingBottom:px,paddingLeft:px,margin:px,marginTop:px,marginRight:px,marginBottom:px,marginLeft:px,rotate:degrees,rotateX:degrees,rotateY:degrees,rotateZ:degrees,scale,scaleX:scale,scaleY:scale,scaleZ:scale,skew:degrees,skewX:degrees,skewY:degrees,distance:px,translateX:px,translateY:px,translateZ:px,x:px,y:px,z:px,perspective:px,transformPerspective:px,opacity:alpha,originX:progressPercentage,originY:progressPercentage,originZ:px,zIndex:int,filter,WebkitFilter:filter,fillOpacity:alpha,strokeOpacity:alpha,numOctaves:int},getValueType=key$1=>valueTypes[key$1];function getValueAsType(value$1,type){return type&&typeof value$1==`number`&&type.transform?type.transform(value$1):value$1}function getAnimatableNone(key$1,value$1){let defaultValueType=getValueType(key$1);return defaultValueType!==filter&&(defaultValueType=complex),defaultValueType.getAnimatableNone?defaultValueType.getAnimatableNone(value$1):void 0}const easingLookup={linear,easeIn,easeInOut,easeOut,circIn,circInOut,circOut,backIn,backInOut,backOut,anticipate,bounceIn,bounceInOut,bounceOut};function easingDefinitionToFunction(definition$29){if(Array.isArray(definition$29)){let[x1,y1,x2,y2]=definition$29;return cubicBezier(x1,y1,x2,y2)}else if(typeof definition$29==`string`)return easingLookup[definition$29];return definition$29}function isEasingArray(ease){return Array.isArray(ease)&&typeof ease[0]!=`number`}function isAnimatable(key$1,value$1){return key$1===`zIndex`?!1:!!(typeof value$1==`number`||Array.isArray(value$1)||typeof value$1==`string`&&complex.test(value$1)&&!value$1.startsWith(`url(`))}function hydrateKeyframes(options$1){return Array.isArray(options$1.to)&&options$1.to[0]===null&&(options$1.to=[...options$1.to],options$1.to[0]=options$1.from),options$1}function convertTransitionToAnimationOptions({ease,times,delay,...transition}){let options$1={...transition};return times&&(options$1.offset=times),ease&&(options$1.ease=isEasingArray(ease)?ease.map(easingDefinitionToFunction):easingDefinitionToFunction(ease)),delay&&(options$1.elapsed=-delay),options$1}function getPopmotionAnimationOptions(transition,options$1,key$1){return Array.isArray(options$1.to)&&(transition.duration||=800),hydrateKeyframes(options$1),isTransitionDefined(transition)||(transition={...transition,...getDefaultTransition(key$1,options$1.to)}),{...options$1,...convertTransitionToAnimationOptions(transition)}}function isTransitionDefined({delay,repeat,repeatType,repeatDelay,from,...transition}){return!!Object.keys(transition).length}function getValueTransition(transition,key$1){return transition[key$1]||transition.default||transition}function getAnimation(key$1,value$1,target$1,transition,onComplete){let valueTransition=getValueTransition(transition,key$1),origin=valueTransition.from===null||valueTransition.from===void 0?value$1.get():valueTransition.from,isTargetAnimatable=isAnimatable(key$1,target$1);origin===`none`&&isTargetAnimatable&&typeof target$1==`string`&&(origin=getAnimatableNone(key$1,target$1));let isOriginAnimatable=isAnimatable(key$1,origin);function start(complete){let options$1={from:origin,to:target$1,velocity:transition.velocity?transition.velocity:value$1.getVelocity(),onUpdate:v$1=>value$1.set(v$1)};return valueTransition.type===`inertia`||valueTransition.type===`decay`?inertia({...options$1,...valueTransition}):animate({...getPopmotionAnimationOptions(valueTransition,options$1,key$1),onUpdate:v$1=>{options$1.onUpdate(v$1),valueTransition.onUpdate&&valueTransition.onUpdate(v$1)},onComplete:()=>{onComplete&&onComplete(),complete&&complete()}})}function set(complete){return value$1.set(target$1),onComplete&&onComplete(),complete&&complete(),{stop:()=>{}}}return!isOriginAnimatable||!isTargetAnimatable||valueTransition.type===!1?set:start}function useMotionTransitions(){let{motionValues,stop:stop$1,get}=useMotionValues(),push$1=(key$1,value$1,target$1,transition={},onComplete)=>{let from=target$1[key$1],motionValue=get(key$1,from,target$1);if(transition&&transition.immediate){motionValue.set(value$1);return}let animation=getAnimation(key$1,motionValue,value$1,transition,onComplete);motionValue.start(animation)};return{motionValues,stop:stop$1,push:push$1}}function useMotionControls(motionProperties,variants={},{motionValues,push:push$1,stop:stop$1}=useMotionTransitions()){let _variants=unref(variants),isAnimating=ref(!1);watch(motionValues,newVal=>{isAnimating.value=Object.values(newVal).filter(value$1=>value$1.isAnimating()).length>0},{immediate:!0,deep:!0});let getVariantFromKey=variant=>{if(!_variants||!_variants[variant])throw Error(`The variant ${variant} does not exist.`);return _variants[variant]},apply$2=variant=>{typeof variant==`string`&&(variant=getVariantFromKey(variant));let animations$1=Object.entries(variant).map(([key$1,value$1])=>{if(key$1!==`transition`)return new Promise(resolve$1=>push$1(key$1,value$1,motionProperties,variant.transition||getDefaultTransition(key$1,variant[key$1]),resolve$1))}).filter(Boolean);async function waitForComplete(){await Promise.all(animations$1),variant.transition?.onComplete?.()}return Promise.all([waitForComplete()])},set=variant=>{let variantData=isObject$1(variant)?variant:getVariantFromKey(variant);Object.entries(variantData).forEach(([key$1,value$1])=>{key$1!==`transition`&&push$1(key$1,value$1,motionProperties,{immediate:!0})})},leave=async done=>{let leaveVariant;if(_variants&&(_variants.leave&&(leaveVariant=_variants.leave),!_variants.leave&&_variants.initial&&(leaveVariant=_variants.initial)),!leaveVariant){done();return}await apply$2(leaveVariant),done()};return{isAnimating,apply:apply$2,set,leave,stop:stop$1}}const isBrowser=typeof window<`u`,supportsPointerEvents=()=>isBrowser&&(window.onpointerdown===null||__vite_import_meta_env__?.TEST),supportsTouchEvents=()=>isBrowser&&(window.ontouchstart===null||__vite_import_meta_env__?.TEST),supportsMouseEvents=()=>isBrowser&&(window.onmousedown===null||__vite_import_meta_env__?.TEST);function registerEventListeners({target:target$1,state,variants,apply:apply$2}){let _variants=unref(variants),hovered=ref(!1),tapped=ref(!1),focused=ref(!1),mutableKeys=computed(()=>{let result=[...Object.keys(state.value||{})];return _variants?(_variants.hovered&&(result=[...result,...Object.keys(_variants.hovered)]),_variants.tapped&&(result=[...result,...Object.keys(_variants.tapped)]),_variants.focused&&(result=[...result,...Object.keys(_variants.focused)]),result):result}),computedProperties=computed(()=>{let result={};for(let key$1 in Object.assign(result,state.value),hovered.value&&_variants.hovered&&Object.assign(result,_variants.hovered),tapped.value&&_variants.tapped&&Object.assign(result,_variants.tapped),focused.value&&_variants.focused&&Object.assign(result,_variants.focused),result)mutableKeys.value.includes(key$1)||delete result[key$1];return result});_variants.hovered&&(useEventListener$1(target$1,`mouseenter`,()=>hovered.value=!0),useEventListener$1(target$1,`mouseleave`,()=>{hovered.value=!1,tapped.value=!1})),_variants.tapped&&(supportsMouseEvents()&&(useEventListener$1(target$1,`mousedown`,()=>tapped.value=!0),useEventListener$1(target$1,`mouseup`,()=>tapped.value=!1)),supportsPointerEvents()&&(useEventListener$1(target$1,`pointerdown`,()=>tapped.value=!0),useEventListener$1(target$1,`pointerup`,()=>tapped.value=!1)),supportsTouchEvents()&&(useEventListener$1(target$1,`touchstart`,()=>tapped.value=!0),useEventListener$1(target$1,`touchend`,()=>tapped.value=!1))),_variants.focused&&(useEventListener$1(target$1,`focus`,()=>focused.value=!0),useEventListener$1(target$1,`blur`,()=>focused.value=!1)),watch([hovered,tapped,focused],()=>{apply$2(computedProperties.value)})}function registerLifeCycleHooks({set,target:target$1,variants,variant}){let _variants=unref(variants);watch(()=>target$1,()=>{_variants&&(_variants.initial&&(set(`initial`),variant.value=`initial`),_variants.enter&&(variant.value=`enter`))},{immediate:!0,flush:`pre`})}function registerVariantsSync({state,apply:apply$2}){watch(state,newVal=>{newVal&&apply$2(newVal)},{immediate:!0})}function registerVisibilityHooks({target:target$1,variants,variant}){let _variants=unref(variants);_variants&&(_variants.visible||_variants.visibleOnce)&&useIntersectionObserver(target$1,([{isIntersecting}])=>{_variants.visible?isIntersecting?variant.value=`visible`:variant.value=`initial`:_variants.visibleOnce&&(isIntersecting&&variant.value!==`visibleOnce`?variant.value=`visibleOnce`:variant.value||=`initial`)})}function useMotionFeatures(instance,options$1={syncVariants:!0,lifeCycleHooks:!0,visibilityHooks:!0,eventListeners:!0}){options$1.lifeCycleHooks&®isterLifeCycleHooks(instance),options$1.syncVariants&®isterVariantsSync(instance),options$1.visibilityHooks&®isterVisibilityHooks(instance),options$1.eventListeners&®isterEventListeners(instance)}function reactiveStyle(props={}){let state=reactive({...props}),style=ref({});return watch(state,()=>{let result={};for(let[key$1,value$1]of Object.entries(state)){let valueType=getValueType(key$1),valueAsType=getValueAsType(value$1,valueType);result[key$1]=valueAsType}style.value=result},{immediate:!0,deep:!0}),{state,style}}function usePermissiveTarget(target$1,onTarget){watch(()=>unrefElement$1(target$1),el=>{el&&onTarget(el)},{immediate:!0})}const translateAlias={x:`translateX`,y:`translateY`,z:`translateZ`};function reactiveTransform(props={},enableHardwareAcceleration=!0){let state=reactive({...props}),transform$1=ref(``);return watch(state,newVal=>{let result=``,hasHardwareAcceleration=!1;if(enableHardwareAcceleration&&(newVal.x||newVal.y||newVal.z)){let str=[newVal.x||0,newVal.y||0,newVal.z||0].map(val=>getValueAsType(val,px)).join(`,`);result+=`translate3d(${str}) `,hasHardwareAcceleration=!0}for(let[key$1,value$1]of Object.entries(newVal)){if(enableHardwareAcceleration&&(key$1===`x`||key$1===`y`||key$1===`z`))continue;let valueType=getValueType(key$1),valueAsType=getValueAsType(value$1,valueType);result+=`${translateAlias[key$1]||key$1}(${valueAsType}) `}enableHardwareAcceleration&&!hasHardwareAcceleration&&(result+=`translateZ(0px) `),transform$1.value=result.trim()},{immediate:!0,deep:!0}),{state,transform:transform$1}}const transformAxes=[``,`X`,`Y`,`Z`],order$1=[`perspective`,`translate`,`scale`,`rotate`,`skew`],transformProps=[`transformPerspective`,`x`,`y`,`z`];order$1.forEach(operationKey=>{transformAxes.forEach(axesKey=>{let key$1=operationKey+axesKey;transformProps.push(key$1)})});const transformPropSet=new Set(transformProps);function isTransformProp(key$1){return transformPropSet.has(key$1)}const transformOriginProps=new Set([`originX`,`originY`,`originZ`]);function isTransformOriginProp(key$1){return transformOriginProps.has(key$1)}function splitValues(variant){let transform$1={},style={};return Object.entries(variant).forEach(([key$1,value$1])=>{isTransformProp(key$1)||isTransformOriginProp(key$1)?transform$1[key$1]=value$1:style[key$1]=value$1}),{transform:transform$1,style}}function variantToStyle(variant){let{transform:_transform,style:_style}=splitValues(variant),{transform:transform$1}=reactiveTransform(_transform),{style}=reactiveStyle(_style);return transform$1.value&&(style.value.transform=transform$1.value),style.value}function useElementStyle(target$1,onInit){let _cache$1,_target$1,{state,style}=reactiveStyle();return usePermissiveTarget(target$1,el=>{_target$1=el;for(let key$1 of Object.keys(valueTypes)){if(el.style[key$1]===null||el.style[key$1]===``||isTransformProp(key$1)||isTransformOriginProp(key$1))continue;state[key$1]=el.style[key$1]}_cache$1&&Object.entries(_cache$1).forEach(([key$1,value$1])=>el.style[key$1]=value$1),onInit&&onInit(state)}),watch(style,newVal=>{if(!_target$1){_cache$1=newVal;return}for(let key$1 in newVal)_target$1.style[key$1]=newVal[key$1]},{immediate:!0}),{style:state}}function parseTransform(transform$1){let transforms=transform$1.trim().split(/\) |\)/);if(transforms.length===1)return{};let parseValues=value$1=>value$1.endsWith(`px`)||value$1.endsWith(`deg`)?Number.parseFloat(value$1):Number.isNaN(Number(value$1))?Number(value$1):value$1;return transforms.reduce((acc,transform2)=>{if(!transform2)return acc;let[name$2,transformValue]=transform2.split(`(`),valueArray=transformValue.split(`,`),values=valueArray.map(val=>parseValues(val.endsWith(`)`)?val.replace(`)`,``):val.trim())),value$1=values.length===1?values[0]:values;return{...acc,[name$2]:value$1}},{})}function stateFromTransform(state,transform$1){Object.entries(parseTransform(transform$1)).forEach(([key$1,value$1])=>{let axes=[`x`,`y`,`z`];if(key$1===`translate3d`){if(value$1===0){axes.forEach(axis=>state[axis]=0);return}value$1.forEach((axisValue,index$1)=>state[axes[index$1]]=axisValue);return}if(value$1=Number.parseFloat(`${value$1}`),key$1===`translateX`){state.x=value$1;return}if(key$1===`translateY`){state.y=value$1;return}if(key$1===`translateZ`){state.z=value$1;return}state[key$1]=value$1})}function useElementTransform(target$1,onInit){let _cache$1,_target$1,{state,transform:transform$1}=reactiveTransform();return usePermissiveTarget(target$1,el=>{_target$1=el,el.style.transform&&stateFromTransform(state,el.style.transform),_cache$1&&(el.style.transform=_cache$1),onInit&&onInit(state)}),watch(transform$1,newValue=>{if(!_target$1){_cache$1=newValue;return}_target$1.style.transform=newValue},{immediate:!0}),{transform:state}}function objectEntries(obj){return Object.entries(obj)}function useMotionProperties(target$1,defaultValues){let motionProperties=reactive({}),apply$2=values=>Object.entries(values).forEach(([key$1,value$1])=>motionProperties[key$1]=value$1),{style}=useElementStyle(target$1,apply$2),{transform:transform$1}=useElementTransform(target$1,apply$2);return watch(motionProperties,newVal=>{objectEntries(newVal).forEach(([key$1,value$1])=>{let target2=isTransformProp(key$1)?transform$1:style;target2[key$1]&&target2[key$1]===value$1||(target2[key$1]=value$1)})},{immediate:!0,deep:!0}),usePermissiveTarget(target$1,()=>defaultValues&&apply$2(defaultValues)),{motionProperties,style,transform:transform$1}}function useMotionVariants(variants={}){let _variants=unref(variants),variant=ref(),state=computed(()=>{if(variant.value)return _variants[variant.value]});return{state,variant}}function useMotion(target$1,variants={},options$1){let{motionProperties}=useMotionProperties(target$1),{variant,state}=useMotionVariants(variants),controls=useMotionControls(motionProperties,variants),instance={target:target$1,variant,variants,state,motionProperties,...controls};return useMotionFeatures(instance,options$1),instance}const transitionKeys=[`delay`,`duration`],directivePropsKeys=[`initial`,`enter`,`leave`,`visible`,`visible-once`,`visibleOnce`,`hovered`,`tapped`,`focused`,...transitionKeys],fade={initial:{opacity:0},enter:{opacity:1}},fadeVisible={initial:{opacity:0},visible:{opacity:1}},fadeVisibleOnce={initial:{opacity:0},visibleOnce:{opacity:1}},pop={initial:{scale:0,opacity:0},enter:{scale:1,opacity:1}},popVisible={initial:{scale:0,opacity:0},visible:{scale:1,opacity:1}},popVisibleOnce={initial:{scale:0,opacity:0},visibleOnce:{scale:1,opacity:1}},rollLeft={initial:{x:-100,rotate:90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleLeft={initial:{x:-100,rotate:90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceLeft={initial:{x:-100,rotate:90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollRight={initial:{x:100,rotate:-90,opacity:0},enter:{x:0,rotate:0,opacity:1}},rollVisibleRight={initial:{x:100,rotate:-90,opacity:0},visible:{x:0,rotate:0,opacity:1}},rollVisibleOnceRight={initial:{x:100,rotate:-90,opacity:0},visibleOnce:{x:0,rotate:0,opacity:1}},rollTop={initial:{y:-100,rotate:-90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleTop={initial:{y:-100,rotate:-90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceTop={initial:{y:-100,rotate:-90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},rollBottom={initial:{y:100,rotate:90,opacity:0},enter:{y:0,rotate:0,opacity:1}},rollVisibleBottom={initial:{y:100,rotate:90,opacity:0},visible:{y:0,rotate:0,opacity:1}},rollVisibleOnceBottom={initial:{y:100,rotate:90,opacity:0},visibleOnce:{y:0,rotate:0,opacity:1}},slideLeft={initial:{x:-100,opacity:0},enter:{x:0,opacity:1}},slideVisibleLeft={initial:{x:-100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceLeft={initial:{x:-100,opacity:0},visibleOnce:{x:0,opacity:1}},slideRight={initial:{x:100,opacity:0},enter:{x:0,opacity:1}},slideVisibleRight={initial:{x:100,opacity:0},visible:{x:0,opacity:1}},slideVisibleOnceRight={initial:{x:100,opacity:0},visibleOnce:{x:0,opacity:1}},slideTop={initial:{y:-100,opacity:0},enter:{y:0,opacity:1}},slideVisibleTop={initial:{y:-100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceTop={initial:{y:-100,opacity:0},visibleOnce:{y:0,opacity:1}},slideBottom={initial:{y:100,opacity:0},enter:{y:0,opacity:1}},slideVisibleBottom={initial:{y:100,opacity:0},visible:{y:0,opacity:1}},slideVisibleOnceBottom={initial:{y:100,opacity:0},visibleOnce:{y:0,opacity:1}},presets={__proto__:null,fade,fadeVisible,fadeVisibleOnce,pop,popVisible,popVisibleOnce,rollBottom,rollLeft,rollRight,rollTop,rollVisibleBottom,rollVisibleLeft,rollVisibleOnceBottom,rollVisibleOnceLeft,rollVisibleOnceRight,rollVisibleOnceTop,rollVisibleRight,rollVisibleTop,slideBottom,slideLeft,slideRight,slideTop,slideVisibleBottom,slideVisibleLeft,slideVisibleOnceBottom,slideVisibleOnceLeft,slideVisibleOnceRight,slideVisibleOnceTop,slideVisibleRight,slideVisibleTop},CUSTOM_PRESETS=Symbol(``),MotionComponentProps={preset:{type:String,required:!1},instance:{type:Object,required:!1},variants:{type:Object,required:!1},initial:{type:Object,required:!1},enter:{type:Object,required:!1},leave:{type:Object,required:!1},visible:{type:Object,required:!1},visibleOnce:{type:Object,required:!1},hovered:{type:Object,required:!1},tapped:{type:Object,required:!1},focused:{type:Object,required:!1},delay:{type:[Number,String],required:!1},duration:{type:[Number,String],required:!1}};function isObject$2(val){return Object.prototype.toString.call(val)===`[object Object]`}function clone(v$1){if(Array.isArray(v$1))return v$1.map(clone);if(isObject$2(v$1)){let res={};for(let key$1 in v$1)res[key$1]=clone(v$1[key$1]);return res}return v$1}function setupMotionComponent(props){let instances=reactive({}),customPresets=inject(CUSTOM_PRESETS,{}),preset=computed(()=>props.preset==null?{}:customPresets!=null&&props.preset in customPresets?structuredClone(toRaw(customPresets)[props.preset]):props.preset in presets?structuredClone(presets[props.preset]):{}),propsConfig=computed(()=>({initial:props.initial,enter:props.enter,leave:props.leave,visible:props.visible,visibleOnce:props.visibleOnce,hovered:props.hovered,tapped:props.tapped,focused:props.focused}));function applyTransitionHelpers(config,values){for(let transitionKey of[`delay`,`duration`]){if(values[transitionKey]==null)continue;let transitionValueParsed=Number.parseInt(values[transitionKey]);for(let variantKey of[`enter`,`visible`,`visibleOnce`]){let variantConfig=config[variantKey];if(variantConfig==null)continue;variantConfig.transition??={},variantConfig.transition[transitionKey]=transitionValueParsed}}return config}let motionConfig=computed(()=>{let config=defu({},propsConfig.value,preset.value,props.variants||{});return applyTransitionHelpers({...config},props)});function setNodeInstance(node$1,index$1,style){node$1.props??={},node$1.props.style??={},node$1.props.style={...node$1.props.style,...style};let elementMotionConfig=applyTransitionHelpers(clone(motionConfig.value),node$1.props);return node$1.props.onVnodeMounted=({el})=>{instances[index$1]=useMotion(el,elementMotionConfig)},node$1.props.onVnodeUpdated=({el})=>{let styles=variantToStyle(instances[index$1].state);for(let[key$1,val]of Object.entries(styles))el.style[key$1]=val},node$1}return{motionConfig,setNodeInstance}}const MotionComponent=defineComponent({name:`Motion`,props:{...MotionComponentProps,is:{type:[String,Object],default:`div`}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent(props);return()=>{let style=variantToStyle(motionConfig.value.initial||{}),node$1=h(props.is,void 0,slots);return setNodeInstance(node$1,0,style),node$1}}}),MotionGroupComponent=defineComponent({name:`MotionGroup`,props:{...MotionComponentProps,is:{type:[String,Object],required:!1}},setup(props){let slots=useSlots(),{motionConfig,setNodeInstance}=setupMotionComponent(props);return()=>{let style=variantToStyle(motionConfig.value.initial||{}),nodes=slots.default?.()||[];for(let i$1=0;i$1{await apply$2(`initial`),await apply$2(`enter`)}),onUnmounted(async()=>{await apply$2(`leave`),finalizedDisableBackButton.value=!0}),watch([()=>props.title,()=>props.subtitle,route],async()=>{await apply$2(`leave`),await nextTick(),finalizedDisableBackButton.value=props.disableBackButton,title.value=props.title,subtitle.value=props.subtitle,await nextTick(),await apply$2(`initial`),await apply$2(`enter`)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{ref_key:`pageHeaderRef`,ref:pageHeaderRef,style:{top:`env(safe-area-inset-top, 0px)`,right:`env(safe-area-inset-right, 0px)`,left:`env(safe-area-inset-left, 0px)`},sticky:``,"inset-x-0":``,"top-0":``,"z-99":``,"w-full":``,"pb-6":``,"pt-10":``,flex:`~ row items-center gap-2`,bg:`$bg-color`},[createBaseVNode(`button`,{onClick:_cache$1[0]||=$event=>unref(router$1).back()},[finalizedDisableBackButton.value?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,{key:0,"i-solar:alt-arrow-left-line-duotone":``,"text-2xl":``,class:normalizeClass({"pointer-events-none op-0":!_ctx.showBackButton})},null,2))]),createBaseVNode(`h1`,_hoisted_1$37,[subtitle.value?(openBlock(),createElementBlock(`div`,_hoisted_2$24,[createBaseVNode(`span`,_hoisted_3$18,toDisplayString(subtitle.value),1)])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_4$16,toDisplayString(title.value),1)])],512))}}),PageHeader_default=PageHeader_vue_vue_type_script_setup_true_lang_default;const closed=`0px`;var TransitionVertical_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`TransitionVertical`,props:{duration:{default:250},easingEnter:{default:`ease-in-out`},easingLeave:{default:`ease-in-out`},opacityClosed:{default:0},opacityOpened:{default:1}},setup(__props){let props=__props;function getElementStyle(element$3){return{height:element$3.style.height,width:element$3.style.width,position:element$3.style.position,visibility:element$3.style.visibility,overflow:element$3.style.overflow,paddingTop:element$3.style.paddingTop,paddingBottom:element$3.style.paddingBottom,borderTopWidth:element$3.style.borderTopWidth,borderBottomWidth:element$3.style.borderBottomWidth,marginTop:element$3.style.marginTop,marginBottom:element$3.style.marginBottom}}function prepareElement(element$3,initialStyle){let{width}=getComputedStyle(element$3);element$3.style.width=width,element$3.style.position=`absolute`,element$3.style.visibility=`hidden`,element$3.style.height=``;let{height}=getComputedStyle(element$3);return element$3.style.width=initialStyle.width,element$3.style.position=initialStyle.position,element$3.style.visibility=initialStyle.visibility,element$3.style.height=closed,element$3.style.overflow=`hidden`,initialStyle.height&&initialStyle.height!==closed?initialStyle.height:height}function animateTransition(element$3,initialStyle,done,keyframes$3,options$1){let animation=element$3.animate(keyframes$3,options$1);element$3.style.height=initialStyle.height,animation.onfinish=()=>{element$3.style.overflow=initialStyle.overflow,done()}}function getEnterKeyframes(height,initialStyle){return[{height:closed,opacity:props.opacityClosed,paddingTop:closed,paddingBottom:closed,borderTopWidth:closed,borderBottomWidth:closed,marginTop:closed,marginBottom:closed},{height,opacity:props.opacityOpened,paddingTop:initialStyle.paddingTop,paddingBottom:initialStyle.paddingBottom,borderTopWidth:initialStyle.borderTopWidth,borderBottomWidth:initialStyle.borderBottomWidth,marginTop:initialStyle.marginTop,marginBottom:initialStyle.marginBottom}]}function enterTransition(element$3,done){let HTMLElement$1=element$3,initialStyle=getElementStyle(HTMLElement$1),height=prepareElement(HTMLElement$1,initialStyle),keyframes$3=getEnterKeyframes(height,initialStyle),options$1={duration:props.duration,easing:props.easingEnter};animateTransition(HTMLElement$1,initialStyle,done,keyframes$3,options$1)}function leaveTransition(element$3,done){let HTMLElement$1=element$3,initialStyle=getElementStyle(HTMLElement$1),{height}=getComputedStyle(HTMLElement$1);HTMLElement$1.style.height=height,HTMLElement$1.style.overflow=`hidden`;let keyframes$3=getEnterKeyframes(height,initialStyle).reverse(),options$1={duration:props.duration,easing:props.easingLeave};animateTransition(HTMLElement$1,initialStyle,done,keyframes$3,options$1)}return(_ctx,_cache$1)=>(openBlock(),createBlock(Transition,{css:!1,onEnter:enterTransition,onLeave:leaveTransition},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3}))}}),TransitionVertical_default=TransitionVertical_vue_vue_type_script_setup_true_lang_default;const sides=[`top`,`right`,`bottom`,`left`],alignments=[`start`,`end`],placements=sides.reduce((acc,side)=>acc.concat(side,side+`-`+alignments[0],side+`-`+alignments[1]),[]),min=Math.min,max=Math.max,round=Math.round,floor=Math.floor,createCoords=v$1=>({x:v$1,y:v$1}),oppositeSideMap={left:`right`,right:`left`,bottom:`top`,top:`bottom`},oppositeAlignmentMap={start:`end`,end:`start`};function clamp(start,value$1,end){return max(start,min(value$1,end))}function evaluate(value$1,param){return typeof value$1==`function`?value$1(param):value$1}function getSide(placement){return placement.split(`-`)[0]}function getAlignment(placement){return placement.split(`-`)[1]}function getOppositeAxis(axis){return axis===`x`?`y`:`x`}function getAxisLength(axis){return axis===`y`?`height`:`width`}function getSideAxis(placement){return[`top`,`bottom`].includes(getSide(placement))?`y`:`x`}function getAlignmentAxis(placement){return getOppositeAxis(getSideAxis(placement))}function getAlignmentSides(placement,rects,rtl){rtl===void 0&&(rtl=!1);let alignment=getAlignment(placement),alignmentAxis=getAlignmentAxis(placement),length=getAxisLength(alignmentAxis),mainAlignmentSide=alignmentAxis===`x`?alignment===(rtl?`end`:`start`)?`right`:`left`:alignment===`start`?`bottom`:`top`;return rects.reference[length]>rects.floating[length]&&(mainAlignmentSide=getOppositePlacement(mainAlignmentSide)),[mainAlignmentSide,getOppositePlacement(mainAlignmentSide)]}function getExpandedPlacements(placement){let oppositePlacement=getOppositePlacement(placement);return[getOppositeAlignmentPlacement(placement),oppositePlacement,getOppositeAlignmentPlacement(oppositePlacement)]}function getOppositeAlignmentPlacement(placement){return placement.replace(/start|end/g,alignment=>oppositeAlignmentMap[alignment])}function getSideList(side,isStart,rtl){let lr=[`left`,`right`],rl=[`right`,`left`],tb=[`top`,`bottom`],bt$3=[`bottom`,`top`];switch(side){case`top`:case`bottom`:return rtl?isStart?rl:lr:isStart?lr:rl;case`left`:case`right`:return isStart?tb:bt$3;default:return[]}}function getOppositeAxisPlacements(placement,flipAlignment,direction,rtl){let alignment=getAlignment(placement),list$2=getSideList(getSide(placement),direction===`start`,rtl);return alignment&&(list$2=list$2.map(side=>side+`-`+alignment),flipAlignment&&(list$2=list$2.concat(list$2.map(getOppositeAlignmentPlacement)))),list$2}function getOppositePlacement(placement){return placement.replace(/left|right|bottom|top/g,side=>oppositeSideMap[side])}function expandPaddingObject(padding){return{top:0,right:0,bottom:0,left:0,...padding}}function getPaddingObject(padding){return typeof padding==`number`?{top:padding,right:padding,bottom:padding,left:padding}:expandPaddingObject(padding)}function rectToClientRect(rect){let{x:x$3,y:y$2,width,height}=rect;return{width,height,top:y$2,left:x$3,right:x$3+width,bottom:y$2+height,x:x$3,y:y$2}}function computeCoordsFromPlacement(_ref,placement,rtl){let{reference,floating}=_ref,sideAxis=getSideAxis(placement),alignmentAxis=getAlignmentAxis(placement),alignLength=getAxisLength(alignmentAxis),side=getSide(placement),isVertical=sideAxis===`y`,commonX=reference.x+reference.width/2-floating.width/2,commonY=reference.y+reference.height/2-floating.height/2,commonAlign=reference[alignLength]/2-floating[alignLength]/2,coords$1;switch(side){case`top`:coords$1={x:commonX,y:reference.y-floating.height};break;case`bottom`:coords$1={x:commonX,y:reference.y+reference.height};break;case`right`:coords$1={x:reference.x+reference.width,y:commonY};break;case`left`:coords$1={x:reference.x-floating.width,y:commonY};break;default:coords$1={x:reference.x,y:reference.y}}switch(getAlignment(placement)){case`start`:coords$1[alignmentAxis]-=commonAlign*(rtl&&isVertical?-1:1);break;case`end`:coords$1[alignmentAxis]+=commonAlign*(rtl&&isVertical?-1:1);break}return coords$1}const computePosition=async(reference,floating,config)=>{let{placement=`bottom`,strategy=`absolute`,middleware=[],platform}=config,validMiddleware=middleware.filter(Boolean),rtl=await(platform.isRTL==null?void 0:platform.isRTL(floating)),rects=await platform.getElementRects({reference,floating,strategy}),{x:x$3,y:y$2}=computeCoordsFromPlacement(rects,placement,rtl),statefulPlacement=placement,middlewareData={},resetCount=0;for(let i$1=0;i$1({name:`arrow`,options:options$1,async fn(state){let{x:x$3,y:y$2,placement,rects,platform,elements,middlewareData}=state,{element:element$3,padding=0}=evaluate(options$1,state)||{};if(element$3==null)return{};let paddingObject=getPaddingObject(padding),coords$1={x:x$3,y:y$2},axis=getAlignmentAxis(placement),length=getAxisLength(axis),arrowDimensions=await platform.getDimensions(element$3),isYAxis=axis===`y`,minProp=isYAxis?`top`:`left`,maxProp=isYAxis?`bottom`:`right`,clientProp=isYAxis?`clientHeight`:`clientWidth`,endDiff=rects.reference[length]+rects.reference[axis]-coords$1[axis]-rects.floating[length],startDiff=coords$1[axis]-rects.reference[axis],arrowOffsetParent=await(platform.getOffsetParent==null?void 0:platform.getOffsetParent(element$3)),clientSize=arrowOffsetParent?arrowOffsetParent[clientProp]:0;(!clientSize||!await(platform.isElement==null?void 0:platform.isElement(arrowOffsetParent)))&&(clientSize=elements.floating[clientProp]||rects.floating[length]);let centerToReference=endDiff/2-startDiff/2,largestPossiblePadding=clientSize/2-arrowDimensions[length]/2-1,minPadding=min(paddingObject[minProp],largestPossiblePadding),maxPadding=min(paddingObject[maxProp],largestPossiblePadding),min$1=minPadding,max$1=clientSize-arrowDimensions[length]-maxPadding,center=clientSize/2-arrowDimensions[length]/2+centerToReference,offset$1=clamp(min$1,center,max$1),shouldAddOffset=!middlewareData.arrow&&getAlignment(placement)!=null&¢er!==offset$1&&rects.reference[length]/2-(centergetAlignment(placement)===alignment),...allowedPlacements.filter(placement=>getAlignment(placement)!==alignment)]:allowedPlacements.filter(placement=>getSide(placement)===placement);return allowedPlacementsSortedByAlignment.filter(placement=>alignment?getAlignment(placement)===alignment||(autoAlignment?getOppositeAlignmentPlacement(placement)!==placement:!1):!0)}const autoPlacement=function(options$1){return options$1===void 0&&(options$1={}),{name:`autoPlacement`,options:options$1,async fn(state){var _middlewareData$autoP,_middlewareData$autoP2,_placementsThatFitOnE;let{rects,middlewareData,placement,platform,elements}=state,{crossAxis=!1,alignment,allowedPlacements=placements,autoAlignment=!0,...detectOverflowOptions}=evaluate(options$1,state),placements$1=alignment!==void 0||allowedPlacements===placements?getPlacementList(alignment||null,autoAlignment,allowedPlacements):allowedPlacements,overflow=await detectOverflow(state,detectOverflowOptions),currentIndex=(_middlewareData$autoP=middlewareData.autoPlacement)?.index||0,currentPlacement=placements$1[currentIndex];if(currentPlacement==null)return{};let alignmentSides=getAlignmentSides(currentPlacement,rects,await(platform.isRTL==null?void 0:platform.isRTL(elements.floating)));if(placement!==currentPlacement)return{reset:{placement:placements$1[0]}};let currentOverflows=[overflow[getSide(currentPlacement)],overflow[alignmentSides[0]],overflow[alignmentSides[1]]],allOverflows=[...(_middlewareData$autoP2=middlewareData.autoPlacement)?.overflows||[],{placement:currentPlacement,overflows:currentOverflows}],nextPlacement=placements$1[currentIndex+1];if(nextPlacement)return{data:{index:currentIndex+1,overflows:allOverflows},reset:{placement:nextPlacement}};let placementsSortedByMostSpace=allOverflows.map(d$2=>{let alignment$1=getAlignment(d$2.placement);return[d$2.placement,alignment$1&&crossAxis?d$2.overflows.slice(0,2).reduce((acc,v$1)=>acc+v$1,0):d$2.overflows[0],d$2.overflows]}).sort((a$2,b$3)=>a$2[1]-b$3[1]),placementsThatFitOnEachSide=placementsSortedByMostSpace.filter(d$2=>d$2[2].slice(0,getAlignment(d$2[0])?2:3).every(v$1=>v$1<=0)),resetPlacement=(_placementsThatFitOnE=placementsThatFitOnEachSide[0])?.[0]||placementsSortedByMostSpace[0][0];return resetPlacement===placement?{}:{data:{index:currentIndex+1,overflows:allOverflows},reset:{placement:resetPlacement}}}}},flip=function(options$1){return options$1===void 0&&(options$1={}),{name:`flip`,options:options$1,async fn(state){var _middlewareData$arrow,_middlewareData$flip;let{placement,middlewareData,rects,initialPlacement,platform,elements}=state,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0,fallbackPlacements:specifiedFallbackPlacements,fallbackStrategy=`bestFit`,fallbackAxisSideDirection=`none`,flipAlignment=!0,...detectOverflowOptions}=evaluate(options$1,state);if((_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset)return{};let side=getSide(placement),initialSideAxis=getSideAxis(initialPlacement),isBasePlacement=getSide(initialPlacement)===initialPlacement,rtl=await(platform.isRTL==null?void 0:platform.isRTL(elements.floating)),fallbackPlacements=specifiedFallbackPlacements||(isBasePlacement||!flipAlignment?[getOppositePlacement(initialPlacement)]:getExpandedPlacements(initialPlacement)),hasFallbackAxisSideDirection=fallbackAxisSideDirection!==`none`;!specifiedFallbackPlacements&&hasFallbackAxisSideDirection&&fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement,flipAlignment,fallbackAxisSideDirection,rtl));let placements$1=[initialPlacement,...fallbackPlacements],overflow=await detectOverflow(state,detectOverflowOptions),overflows=[],overflowsData=(_middlewareData$flip=middlewareData.flip)?.overflows||[];if(checkMainAxis&&overflows.push(overflow[side]),checkCrossAxis){let sides$1=getAlignmentSides(placement,rects,rtl);overflows.push(overflow[sides$1[0]],overflow[sides$1[1]])}if(overflowsData=[...overflowsData,{placement,overflows}],!overflows.every(side$1=>side$1<=0)){var _middlewareData$flip2,_overflowsData$filter;let nextIndex=((_middlewareData$flip2=middlewareData.flip)?.index||0)+1,nextPlacement=placements$1[nextIndex];if(nextPlacement)return{data:{index:nextIndex,overflows:overflowsData},reset:{placement:nextPlacement}};let resetPlacement=(_overflowsData$filter=overflowsData.filter(d$2=>d$2.overflows[0]<=0).sort((a$2,b$3)=>a$2.overflows[1]-b$3.overflows[1])[0])?.placement;if(!resetPlacement)switch(fallbackStrategy){case`bestFit`:{var _overflowsData$filter2;let placement$1=(_overflowsData$filter2=overflowsData.filter(d$2=>{if(hasFallbackAxisSideDirection){let currentSideAxis=getSideAxis(d$2.placement);return currentSideAxis===initialSideAxis||currentSideAxis===`y`}return!0}).map(d$2=>[d$2.placement,d$2.overflows.filter(overflow$1=>overflow$1>0).reduce((acc,overflow$1)=>acc+overflow$1,0)]).sort((a$2,b$3)=>a$2[1]-b$3[1])[0])?.[0];placement$1&&(resetPlacement=placement$1);break}case`initialPlacement`:resetPlacement=initialPlacement;break}if(placement!==resetPlacement)return{reset:{placement:resetPlacement}}}return{}}}};function getSideOffsets(overflow,rect){return{top:overflow.top-rect.height,right:overflow.right-rect.width,bottom:overflow.bottom-rect.height,left:overflow.left-rect.width}}function isAnySideFullyClipped(overflow){return sides.some(side=>overflow[side]>=0)}const hide=function(options$1){return options$1===void 0&&(options$1={}),{name:`hide`,options:options$1,async fn(state){let{rects}=state,{strategy=`referenceHidden`,...detectOverflowOptions}=evaluate(options$1,state);switch(strategy){case`referenceHidden`:{let overflow=await detectOverflow(state,{...detectOverflowOptions,elementContext:`reference`}),offsets=getSideOffsets(overflow,rects.reference);return{data:{referenceHiddenOffsets:offsets,referenceHidden:isAnySideFullyClipped(offsets)}}}case`escaped`:{let overflow=await detectOverflow(state,{...detectOverflowOptions,altBoundary:!0}),offsets=getSideOffsets(overflow,rects.floating);return{data:{escapedOffsets:offsets,escaped:isAnySideFullyClipped(offsets)}}}default:return{}}}}};async function convertValueToCoords(state,options$1){let{placement,platform,elements}=state,rtl=await(platform.isRTL==null?void 0:platform.isRTL(elements.floating)),side=getSide(placement),alignment=getAlignment(placement),isVertical=getSideAxis(placement)===`y`,mainAxisMulti=[`left`,`top`].includes(side)?-1:1,crossAxisMulti=rtl&&isVertical?-1:1,rawValue=evaluate(options$1,state),{mainAxis,crossAxis,alignmentAxis}=typeof rawValue==`number`?{mainAxis:rawValue,crossAxis:0,alignmentAxis:null}:{mainAxis:rawValue.mainAxis||0,crossAxis:rawValue.crossAxis||0,alignmentAxis:rawValue.alignmentAxis};return alignment&&typeof alignmentAxis==`number`&&(crossAxis=alignment===`end`?alignmentAxis*-1:alignmentAxis),isVertical?{x:crossAxis*crossAxisMulti,y:mainAxis*mainAxisMulti}:{x:mainAxis*mainAxisMulti,y:crossAxis*crossAxisMulti}}const offset=function(options$1){return options$1===void 0&&(options$1=0),{name:`offset`,options:options$1,async fn(state){var _middlewareData$offse,_middlewareData$arrow;let{x:x$3,y:y$2,placement,middlewareData}=state,diffCoords=await convertValueToCoords(state,options$1);return placement===(_middlewareData$offse=middlewareData.offset)?.placement&&(_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset?{}:{x:x$3+diffCoords.x,y:y$2+diffCoords.y,data:{...diffCoords,placement}}}}},shift=function(options$1){return options$1===void 0&&(options$1={}),{name:`shift`,options:options$1,async fn(state){let{x:x$3,y:y$2,placement}=state,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!1,limiter={fn:_ref=>{let{x:x$4,y:y$3}=_ref;return{x:x$4,y:y$3}}},...detectOverflowOptions}=evaluate(options$1,state),coords$1={x:x$3,y:y$2},overflow=await detectOverflow(state,detectOverflowOptions),crossAxis=getSideAxis(getSide(placement)),mainAxis=getOppositeAxis(crossAxis),mainAxisCoord=coords$1[mainAxis],crossAxisCoord=coords$1[crossAxis];if(checkMainAxis){let minSide=mainAxis===`y`?`top`:`left`,maxSide=mainAxis===`y`?`bottom`:`right`,min$1=mainAxisCoord+overflow[minSide],max$1=mainAxisCoord-overflow[maxSide];mainAxisCoord=clamp(min$1,mainAxisCoord,max$1)}if(checkCrossAxis){let minSide=crossAxis===`y`?`top`:`left`,maxSide=crossAxis===`y`?`bottom`:`right`,min$1=crossAxisCoord+overflow[minSide],max$1=crossAxisCoord-overflow[maxSide];crossAxisCoord=clamp(min$1,crossAxisCoord,max$1)}let limitedCoords=limiter.fn({...state,[mainAxis]:mainAxisCoord,[crossAxis]:crossAxisCoord});return{...limitedCoords,data:{x:limitedCoords.x-x$3,y:limitedCoords.y-y$2,enabled:{[mainAxis]:checkMainAxis,[crossAxis]:checkCrossAxis}}}}}},limitShift=function(options$1){return options$1===void 0&&(options$1={}),{options:options$1,fn(state){let{x:x$3,y:y$2,placement,rects,middlewareData}=state,{offset:offset$1=0,mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0}=evaluate(options$1,state),coords$1={x:x$3,y:y$2},crossAxis=getSideAxis(placement),mainAxis=getOppositeAxis(crossAxis),mainAxisCoord=coords$1[mainAxis],crossAxisCoord=coords$1[crossAxis],rawOffset=evaluate(offset$1,state),computedOffset=typeof rawOffset==`number`?{mainAxis:rawOffset,crossAxis:0}:{mainAxis:0,crossAxis:0,...rawOffset};if(checkMainAxis){let len=mainAxis===`y`?`height`:`width`,limitMin=rects.reference[mainAxis]-rects.floating[len]+computedOffset.mainAxis,limitMax=rects.reference[mainAxis]+rects.reference[len]-computedOffset.mainAxis;mainAxisCoordlimitMax&&(mainAxisCoord=limitMax)}if(checkCrossAxis){var _middlewareData$offse,_middlewareData$offse2;let len=mainAxis===`y`?`width`:`height`,isOriginSide=[`top`,`left`].includes(getSide(placement)),limitMin=rects.reference[crossAxis]-rects.floating[len]+(isOriginSide&&(_middlewareData$offse=middlewareData.offset)?.[crossAxis]||0)+(isOriginSide?0:computedOffset.crossAxis),limitMax=rects.reference[crossAxis]+rects.reference[len]+(isOriginSide?0:(_middlewareData$offse2=middlewareData.offset)?.[crossAxis]||0)-(isOriginSide?computedOffset.crossAxis:0);crossAxisCoordlimitMax&&(crossAxisCoord=limitMax)}return{[mainAxis]:mainAxisCoord,[crossAxis]:crossAxisCoord}}}},size=function(options$1){return options$1===void 0&&(options$1={}),{name:`size`,options:options$1,async fn(state){var _state$middlewareData,_state$middlewareData2;let{placement,rects,platform,elements}=state,{apply:apply$2=()=>{},...detectOverflowOptions}=evaluate(options$1,state),overflow=await detectOverflow(state,detectOverflowOptions),side=getSide(placement),alignment=getAlignment(placement),isYAxis=getSideAxis(placement)===`y`,{width,height}=rects.floating,heightSide,widthSide;side===`top`||side===`bottom`?(heightSide=side,widthSide=alignment===(await(platform.isRTL==null?void 0:platform.isRTL(elements.floating))?`start`:`end`)?`left`:`right`):(widthSide=side,heightSide=alignment===`end`?`top`:`bottom`);let maximumClippingHeight=height-overflow.top-overflow.bottom,maximumClippingWidth=width-overflow.left-overflow.right,overflowAvailableHeight=min(height-overflow[heightSide],maximumClippingHeight),overflowAvailableWidth=min(width-overflow[widthSide],maximumClippingWidth),noShift=!state.middlewareData.shift,availableHeight=overflowAvailableHeight,availableWidth=overflowAvailableWidth;if((_state$middlewareData=state.middlewareData.shift)!=null&&_state$middlewareData.enabled.x&&(availableWidth=maximumClippingWidth),(_state$middlewareData2=state.middlewareData.shift)!=null&&_state$middlewareData2.enabled.y&&(availableHeight=maximumClippingHeight),noShift&&!alignment){let xMin=max(overflow.left,0),xMax=max(overflow.right,0),yMin=max(overflow.top,0),yMax=max(overflow.bottom,0);isYAxis?availableWidth=width-2*(xMin!==0||xMax!==0?xMin+xMax:max(overflow.left,overflow.right)):availableHeight=height-2*(yMin!==0||yMax!==0?yMin+yMax:max(overflow.top,overflow.bottom))}await apply$2({...state,availableWidth,availableHeight});let nextDimensions=await platform.getDimensions(elements.floating);return width!==nextDimensions.width||height!==nextDimensions.height?{reset:{rects:!0}}:{}}}};function renderSlotFragments(children){return children?children.flatMap(child=>child.type===Fragment?renderSlotFragments(child.children):[child]):[]}const Slot=defineComponent({name:`PrimitiveSlot`,inheritAttrs:!1,setup(_$2,{attrs,slots}){return()=>{if(!slots.default)return null;let children=renderSlotFragments(slots.default()),firstNonCommentChildrenIndex=children.findIndex(child=>child.type!==Comment);if(firstNonCommentChildrenIndex===-1)return children;let firstNonCommentChildren=children[firstNonCommentChildrenIndex];delete firstNonCommentChildren.props?.ref;let mergedProps=firstNonCommentChildren.props?mergeProps(attrs,firstNonCommentChildren.props):attrs,cloned=cloneVNode({...firstNonCommentChildren,props:{}},mergedProps);return children.length===1?cloned:(children[firstNonCommentChildrenIndex]=cloned,children)}}}),SELF_CLOSING_TAGS=[`area`,`img`,`input`],Primitive=defineComponent({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(props,{attrs,slots}){let asTag=props.asChild?`template`:props.as;return typeof asTag==`string`&&SELF_CLOSING_TAGS.includes(asTag)?()=>h(asTag,attrs):asTag===`template`?()=>h(Slot,attrs,{default:slots.default}):()=>h(props.as,attrs,{default:slots.default})}}),_sfc_main$18=defineComponent({__name:`VisuallyHidden`,props:{feature:{default:`focusable`},asChild:{type:Boolean},as:{default:`span`}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{as:_ctx.as,"as-child":_ctx.asChild,"aria-hidden":_ctx.feature===`focusable`?`true`:void 0,"data-hidden":_ctx.feature===`fully-hidden`?``:void 0,tabindex:_ctx.feature===`fully-hidden`?`-1`:void 0,style:{position:`absolute`,border:0,width:`1px`,height:`1px`,padding:0,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,whiteSpace:`nowrap`,wordWrap:`normal`}},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-hidden`,`data-hidden`,`tabindex`]))}});function createContext(providerComponentName,contextName){let symbolDescription=typeof providerComponentName==`string`&&!contextName?`${providerComponentName}Context`:contextName,injectionKey=Symbol(symbolDescription),injectContext=fallback=>{let context$1=inject(injectionKey,fallback);if(context$1||context$1===null)return context$1;throw Error(`Injection \`${injectionKey.toString()}\` not found. Component must be used within ${Array.isArray(providerComponentName)?`one of the following components: ${providerComponentName.join(`, `)}`:`\`${providerComponentName}\``}`)},provideContext=contextValue=>(provide(injectionKey,contextValue),contextValue);return[injectContext,provideContext]}const[injectConfigProviderContext,provideConfigProviderContext]=createContext(`ConfigProvider`);function useForwardExpose(){let instance=getCurrentInstance(),currentRef=ref(),currentElement=computed(()=>[`#text`,`#comment`].includes(currentRef.value?.$el.nodeName)?currentRef.value?.$el.nextElementSibling:unrefElement(currentRef)),localExpose=Object.assign({},instance.exposed),ret={};for(let key$1 in instance.props)Object.defineProperty(ret,key$1,{enumerable:!0,configurable:!0,get:()=>instance.props[key$1]});if(Object.keys(localExpose).length>0)for(let key$1 in localExpose)Object.defineProperty(ret,key$1,{enumerable:!0,configurable:!0,get:()=>localExpose[key$1]});Object.defineProperty(ret,`$el`,{enumerable:!0,configurable:!0,get:()=>instance.vnode.el}),instance.exposed=ret;function forwardRef(ref2){currentRef.value=ref2,ref2&&(Object.defineProperty(ret,`$el`,{enumerable:!0,configurable:!0,get:()=>ref2 instanceof Element?ref2:ref2.$el}),instance.exposed=ret)}return{forwardRef,currentRef,currentElement}}let count=0;function useId(deterministicId,prefix=`reka`){if(deterministicId)return deterministicId;let configProviderContext=injectConfigProviderContext({useId:void 0});return Object.hasOwn(vue_runtime_esm_bundler_exports,`useId`)?`${prefix}-${useId$1?.()}`:configProviderContext.useId?`${prefix}-${configProviderContext.useId()}`:`${prefix}-${++count}`}function useStateMachine(initialState,machine){let state=ref(initialState);function reducer(event){let nextState=machine[state.value][event];return nextState??state.value}let dispatch=event=>{state.value=reducer(event)};return{state,dispatch}}function usePresence(present,node$1){let stylesRef=ref({}),prevAnimationNameRef=ref(`none`),prevPresentRef=ref(present),initialState=present.value?`mounted`:`unmounted`,timeoutId,ownerWindow=node$1.value?.ownerDocument.defaultView??defaultWindow,{state,dispatch}=useStateMachine(initialState,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),dispatchCustomEvent=name$2=>{if(isClient$1){let customEvent=new CustomEvent(name$2,{bubbles:!1,cancelable:!1});node$1.value?.dispatchEvent(customEvent)}};watch(present,async(currentPresent,prevPresent)=>{let hasPresentChanged=prevPresent!==currentPresent;if(await nextTick(),hasPresentChanged){let prevAnimationName=prevAnimationNameRef.value,currentAnimationName=getAnimationName(node$1.value);if(currentPresent)dispatch(`MOUNT`),dispatchCustomEvent(`enter`),currentAnimationName===`none`&&dispatchCustomEvent(`after-enter`);else if(currentAnimationName===`none`||currentAnimationName===`undefined`||stylesRef.value?.display===`none`)dispatch(`UNMOUNT`),dispatchCustomEvent(`leave`),dispatchCustomEvent(`after-leave`);else{let isAnimating=prevAnimationName!==currentAnimationName;prevPresent&&isAnimating?(dispatch(`ANIMATION_OUT`),dispatchCustomEvent(`leave`)):(dispatch(`UNMOUNT`),dispatchCustomEvent(`after-leave`))}}},{immediate:!0});let handleAnimationEnd=event=>{let currentAnimationName=getAnimationName(node$1.value),isCurrentAnimation=currentAnimationName.includes(event.animationName),directionName=state.value===`mounted`?`enter`:`leave`;if(event.target===node$1.value&&isCurrentAnimation&&(dispatchCustomEvent(`after-${directionName}`),dispatch(`ANIMATION_END`),!prevPresentRef.value)){let currentFillMode=node$1.value.style.animationFillMode;node$1.value.style.animationFillMode=`forwards`,timeoutId=ownerWindow?.setTimeout(()=>{node$1.value?.style.animationFillMode===`forwards`&&(node$1.value.style.animationFillMode=currentFillMode)})}event.target===node$1.value&¤tAnimationName===`none`&&dispatch(`ANIMATION_END`)},handleAnimationStart=event=>{event.target===node$1.value&&(prevAnimationNameRef.value=getAnimationName(node$1.value))},watcher=watch(node$1,(newNode,oldNode)=>{newNode?(stylesRef.value=getComputedStyle(newNode),newNode.addEventListener(`animationstart`,handleAnimationStart),newNode.addEventListener(`animationcancel`,handleAnimationEnd),newNode.addEventListener(`animationend`,handleAnimationEnd)):(dispatch(`ANIMATION_END`),timeoutId!==void 0&&ownerWindow?.clearTimeout(timeoutId),oldNode?.removeEventListener(`animationstart`,handleAnimationStart),oldNode?.removeEventListener(`animationcancel`,handleAnimationEnd),oldNode?.removeEventListener(`animationend`,handleAnimationEnd))},{immediate:!0}),stateWatcher=watch(state,()=>{let currentAnimationName=getAnimationName(node$1.value);prevAnimationNameRef.value=state.value===`mounted`?currentAnimationName:`none`});onUnmounted(()=>{watcher(),stateWatcher()});let isPresent=computed(()=>[`mounted`,`unmountSuspended`].includes(state.value));return{isPresent}}function getAnimationName(node$1){return node$1&&getComputedStyle(node$1).animationName||`none`}const Presence=defineComponent({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(props,{slots,expose}){let{present,forceMount}=toRefs(props),node$1=ref(),{isPresent}=usePresence(present,node$1);expose({present:isPresent});let children=slots.default({present:isPresent.value});children=renderSlotFragments(children||[]);let instance=getCurrentInstance();if(children&&children?.length>1){let componentName=instance?.parent?.type.name?`<${instance.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${componentName}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(line=>` - ${line}`).join(` `)].join(` -`))}return()=>forceMount.value||present.value||isPresent.value?h(slots.default({present:isPresent.value})[0],{ref:v$1=>{let el=unrefElement(v$1);return el?.hasAttribute===void 0||(el?.hasAttribute(`data-reka-popper-content-wrapper`)?node$1.value=el.firstElementChild:node$1.value=el),el}}):null}}),[injectDialogRootContext,provideDialogRootContext]=createContext(`DialogRoot`),_sfc_main$8=defineComponent({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,open$1=useVModel(props,`open`,emit$1,{defaultValue:props.defaultOpen,passive:props.open===void 0}),triggerElement=ref(),contentElement=ref(),{modal}=toRefs(props);return provideDialogRootContext({open:open$1,modal,openModal:()=>{open$1.value=!0},onOpenChange:value$1=>{open$1.value=value$1},onOpenToggle:()=>{open$1.value=!open$1.value},contentId:``,titleId:``,descriptionId:``,triggerElement,contentElement}),(_ctx,_cache$1)=>renderSlot(_ctx.$slots,`default`,{open:unref(open$1),close:()=>open$1.value=!1})}});function useEmitAsProps(emit$1){let vm=getCurrentInstance(),events=vm?.type.emits,result={};return events?.length||console.warn(`No emitted event found. Please check component: ${vm?.type.__name}`),events?.forEach(ev=>{result[toHandlerKey(camelize(ev))]=(...arg)=>emit$1(ev,...arg)}),result}function getActiveElement(){let activeElement=document.activeElement;if(activeElement==null)return null;for(;activeElement!=null&&activeElement.shadowRoot!=null&&activeElement.shadowRoot.activeElement!=null;)activeElement=activeElement.shadowRoot.activeElement;return activeElement}const SELECTION_KEYS=[`Enter`,` `],FIRST_KEYS=[`ArrowDown`,`PageUp`,`Home`],LAST_KEYS=[`ArrowUp`,`PageDown`,`End`],FIRST_LAST_KEYS=[...FIRST_KEYS,...LAST_KEYS],SUB_OPEN_KEYS={ltr:[...SELECTION_KEYS,`ArrowRight`],rtl:[...SELECTION_KEYS,`ArrowLeft`]};function getOpenState(open$1){return open$1?`open`:`closed`}const useFocusStackState=createGlobalState(()=>{let stack$1=ref([]);return stack$1});function createFocusScopesStack(){let stack$1=useFocusStackState();return{add(focusScope){let activeFocusScope=stack$1.value[0];focusScope!==activeFocusScope&&activeFocusScope?.pause(),stack$1.value=arrayRemove(stack$1.value,focusScope),stack$1.value.unshift(focusScope)},remove(focusScope){var _stack$1$value$;stack$1.value=arrayRemove(stack$1.value,focusScope),(_stack$1$value$=stack$1.value[0])?.resume()}}}function arrayRemove(array,item){let updatedArray=[...array],index$1=updatedArray.indexOf(item);return index$1!==-1&&updatedArray.splice(index$1,1),updatedArray}function removeLinks(items){return items.filter(item=>item.tagName!==`A`)}const AUTOFOCUS_ON_MOUNT=`focusScope.autoFocusOnMount`,AUTOFOCUS_ON_UNMOUNT=`focusScope.autoFocusOnUnmount`,EVENT_OPTIONS={bubbles:!1,cancelable:!0};function focusFirst(candidates,{select=!1}={}){let previouslyFocusedElement=getActiveElement();for(let candidate of candidates)if(focus(candidate,{select}),getActiveElement()!==previouslyFocusedElement)return!0}function getTabbableEdges(container){let candidates=getTabbableCandidates(container),first=findVisible(candidates,container),last=findVisible(candidates.reverse(),container);return[first,last]}function getTabbableCandidates(container){let nodes=[],walker=document.createTreeWalker(container,NodeFilter.SHOW_ELEMENT,{acceptNode:node$1=>{let isHiddenInput=node$1.tagName===`INPUT`&&node$1.type===`hidden`;return node$1.disabled||node$1.hidden||isHiddenInput?NodeFilter.FILTER_SKIP:node$1.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;walker.nextNode();)nodes.push(walker.currentNode);return nodes}function findVisible(elements,container){for(let element$3 of elements)if(!isHidden(element$3,{upTo:container}))return element$3}function isHidden(node$1,{upTo}){if(getComputedStyle(node$1).visibility===`hidden`)return!0;for(;node$1;){if(upTo!==void 0&&node$1===upTo)return!1;if(getComputedStyle(node$1).display===`none`)return!0;node$1=node$1.parentElement}return!1}function isSelectableInput(element$3){return element$3 instanceof HTMLInputElement&&`select`in element$3}function focus(element$3,{select=!1}={}){if(element$3&&element$3.focus){let previouslyFocusedElement=getActiveElement();element$3.focus({preventScroll:!0}),element$3!==previouslyFocusedElement&&isSelectableInput(element$3)&&select&&element$3.select()}}const _sfc_main$23=defineComponent({__name:`FocusScope`,props:{loop:{type:Boolean,default:!1},trapped:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`mountAutoFocus`,`unmountAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,{currentRef,currentElement}=useForwardExpose(),lastFocusedElementRef=ref(null),focusScopesStack=createFocusScopesStack(),focusScope=reactive({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});watchEffect(cleanupFn=>{if(!isClient$1)return;let container=currentElement.value;if(!props.trapped)return;function handleFocusIn(event){if(focusScope.paused||!container)return;let target$1=event.target;container.contains(target$1)?lastFocusedElementRef.value=target$1:focus(lastFocusedElementRef.value,{select:!0})}function handleFocusOut(event){if(focusScope.paused||!container)return;let relatedTarget=event.relatedTarget;relatedTarget!==null&&(container.contains(relatedTarget)||focus(lastFocusedElementRef.value,{select:!0}))}function handleMutations$1(mutations$1){let isLastFocusedElementExist=container.contains(lastFocusedElementRef.value);isLastFocusedElementExist||focus(container)}document.addEventListener(`focusin`,handleFocusIn),document.addEventListener(`focusout`,handleFocusOut);let mutationObserver=new MutationObserver(handleMutations$1);container&&mutationObserver.observe(container,{childList:!0,subtree:!0}),cleanupFn(()=>{document.removeEventListener(`focusin`,handleFocusIn),document.removeEventListener(`focusout`,handleFocusOut),mutationObserver.disconnect()})}),watchEffect(async cleanupFn=>{let container=currentElement.value;if(await nextTick(),!container)return;focusScopesStack.add(focusScope);let previouslyFocusedElement=getActiveElement(),hasFocusedCandidate=container.contains(previouslyFocusedElement);if(!hasFocusedCandidate){let mountEvent=new CustomEvent(AUTOFOCUS_ON_MOUNT,EVENT_OPTIONS);container.addEventListener(AUTOFOCUS_ON_MOUNT,ev=>emits(`mountAutoFocus`,ev)),container.dispatchEvent(mountEvent),mountEvent.defaultPrevented||(focusFirst(removeLinks(getTabbableCandidates(container)),{select:!0}),getActiveElement()===previouslyFocusedElement&&focus(container))}cleanupFn(()=>{container.removeEventListener(AUTOFOCUS_ON_MOUNT,ev=>emits(`mountAutoFocus`,ev));let unmountEvent=new CustomEvent(AUTOFOCUS_ON_UNMOUNT,EVENT_OPTIONS),unmountEventHandler=ev=>{emits(`unmountAutoFocus`,ev)};container.addEventListener(AUTOFOCUS_ON_UNMOUNT,unmountEventHandler),container.dispatchEvent(unmountEvent),setTimeout(()=>{unmountEvent.defaultPrevented||focus(previouslyFocusedElement??document.body,{select:!0}),container.removeEventListener(AUTOFOCUS_ON_UNMOUNT,unmountEventHandler),focusScopesStack.remove(focusScope)},0)})});function handleKeyDown(event){if(!props.loop&&!props.trapped||focusScope.paused)return;let isTabKey=event.key===`Tab`&&!event.altKey&&!event.ctrlKey&&!event.metaKey,focusedElement=getActiveElement();if(isTabKey&&focusedElement){let container=event.currentTarget,[first,last]=getTabbableEdges(container),hasTabbableElementsInside=first&&last;hasTabbableElementsInside?!event.shiftKey&&focusedElement===last?(event.preventDefault(),props.loop&&focus(first,{select:!0})):event.shiftKey&&focusedElement===first&&(event.preventDefault(),props.loop&&focus(last,{select:!0})):focusedElement===container&&event.preventDefault()}}return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{ref_key:`currentRef`,ref:currentRef,tabindex:`-1`,"as-child":_ctx.asChild,as:_ctx.as,onKeydown:handleKeyDown},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}});function handleAndDispatchCustomEvent(name$2,handler,detail){let target$1=detail.originalEvent.target,event=new CustomEvent(name$2,{bubbles:!1,cancelable:!0,detail});handler&&target$1.addEventListener(name$2,handler,{once:!0}),target$1.dispatchEvent(event)}const POINTER_DOWN_OUTSIDE=`dismissableLayer.pointerDownOutside`,FOCUS_OUTSIDE=`dismissableLayer.focusOutside`;function isLayerExist(layerElement,targetElement){let targetLayer=targetElement.closest(`[data-dismissable-layer]`),mainLayer=layerElement.dataset.dismissableLayer===``?layerElement:layerElement.querySelector(`[data-dismissable-layer]`),nodeList=Array.from(layerElement.ownerDocument.querySelectorAll(`[data-dismissable-layer]`));return!!(targetLayer&&(mainLayer===targetLayer||nodeList.indexOf(mainLayer){});return watchEffect(cleanupFn=>{if(!isClient$1||!toValue$1(enabled$1))return;let handlePointerDown=async event=>{let target$1=event.target;if(!(!element$3?.value||!target$1)){if(isLayerExist(element$3.value,target$1)){isPointerInsideDOMTree.value=!1;return}if(event.target&&!isPointerInsideDOMTree.value){let handleAndDispatchPointerDownOutsideEvent=function(){handleAndDispatchCustomEvent(POINTER_DOWN_OUTSIDE,onPointerDownOutside,eventDetail)},eventDetail={originalEvent:event};event.pointerType===`touch`?(ownerDocument.removeEventListener(`click`,handleClickRef.value),handleClickRef.value=handleAndDispatchPointerDownOutsideEvent,ownerDocument.addEventListener(`click`,handleClickRef.value,{once:!0})):handleAndDispatchPointerDownOutsideEvent()}else ownerDocument.removeEventListener(`click`,handleClickRef.value);isPointerInsideDOMTree.value=!1}},timerId=window.setTimeout(()=>{ownerDocument.addEventListener(`pointerdown`,handlePointerDown)},0);cleanupFn(()=>{window.clearTimeout(timerId),ownerDocument.removeEventListener(`pointerdown`,handlePointerDown),ownerDocument.removeEventListener(`click`,handleClickRef.value)})}),{onPointerDownCapture:()=>{toValue$1(enabled$1)&&(isPointerInsideDOMTree.value=!0)}}}function useFocusOutside(onFocusOutside,element$3,enabled$1=!0){var _element$3$value2,_globalThis3;let ownerDocument=(element$3==null||(_element$3$value2=element$3.value)==null?void 0:_element$3$value2.ownerDocument)??(_globalThis3=globalThis)?.document,isFocusInsideDOMTree=ref(!1);return watchEffect(cleanupFn=>{if(!isClient$1||!toValue$1(enabled$1))return;let handleFocus=async event=>{if(!element$3?.value)return;await nextTick(),await nextTick();let target$1=event.target;if(!(!element$3.value||!target$1||isLayerExist(element$3.value,target$1))&&event.target&&!isFocusInsideDOMTree.value){let eventDetail={originalEvent:event};handleAndDispatchCustomEvent(FOCUS_OUTSIDE,onFocusOutside,eventDetail)}};ownerDocument.addEventListener(`focusin`,handleFocus),cleanupFn(()=>ownerDocument.removeEventListener(`focusin`,handleFocus))}),{onFocusCapture:()=>{toValue$1(enabled$1)&&(isFocusInsideDOMTree.value=!0)},onBlurCapture:()=>{toValue$1(enabled$1)&&(isFocusInsideDOMTree.value=!1)}}}const context=reactive({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),_sfc_main$24=defineComponent({__name:`DismissableLayer`,props:{disableOutsidePointerEvents:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`dismiss`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,{forwardRef,currentElement:layerElement}=useForwardExpose(),ownerDocument=computed(()=>{var _layerElement$value;return(_layerElement$value=layerElement.value)?.ownerDocument??globalThis.document}),layers=computed(()=>context.layersRoot),index$1=computed(()=>layerElement.value?Array.from(layers.value).indexOf(layerElement.value):-1),isBodyPointerEventsDisabled=computed(()=>context.layersWithOutsidePointerEventsDisabled.size>0),isPointerEventsEnabled=computed(()=>{let localLayers=Array.from(layers.value),[highestLayerWithOutsidePointerEventsDisabled]=[...context.layersWithOutsidePointerEventsDisabled].slice(-1),highestLayerWithOutsidePointerEventsDisabledIndex=localLayers.indexOf(highestLayerWithOutsidePointerEventsDisabled);return index$1.value>=highestLayerWithOutsidePointerEventsDisabledIndex}),pointerDownOutside=usePointerDownOutside(async event=>{let isPointerDownOnBranch=[...context.branches].some(branch=>branch?.contains(event.target));!isPointerEventsEnabled.value||isPointerDownOnBranch||(emits(`pointerDownOutside`,event),emits(`interactOutside`,event),await nextTick(),event.defaultPrevented||emits(`dismiss`))},layerElement),focusOutside=useFocusOutside(event=>{let isFocusInBranch=[...context.branches].some(branch=>branch?.contains(event.target));isFocusInBranch||(emits(`focusOutside`,event),emits(`interactOutside`,event),event.defaultPrevented||emits(`dismiss`))},layerElement);onKeyStroke(`Escape`,event=>{let isHighestLayer=index$1.value===layers.value.size-1;isHighestLayer&&(emits(`escapeKeyDown`,event),event.defaultPrevented||emits(`dismiss`))});let originalBodyPointerEvents;return watchEffect(cleanupFn=>{layerElement.value&&(props.disableOutsidePointerEvents&&(context.layersWithOutsidePointerEventsDisabled.size===0&&(originalBodyPointerEvents=ownerDocument.value.body.style.pointerEvents,ownerDocument.value.body.style.pointerEvents=`none`),context.layersWithOutsidePointerEventsDisabled.add(layerElement.value)),layers.value.add(layerElement.value),cleanupFn(()=>{props.disableOutsidePointerEvents&&context.layersWithOutsidePointerEventsDisabled.size===1&&(ownerDocument.value.body.style.pointerEvents=originalBodyPointerEvents)}))}),watchEffect(cleanupFn=>{cleanupFn(()=>{layerElement.value&&(layers.value.delete(layerElement.value),context.layersWithOutsidePointerEventsDisabled.delete(layerElement.value))})}),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{ref:unref(forwardRef),"as-child":_ctx.asChild,as:_ctx.as,"data-dismissable-layer":``,style:normalizeStyle({pointerEvents:isBodyPointerEventsDisabled.value?isPointerEventsEnabled.value?`auto`:`none`:void 0}),onFocusCapture:unref(focusOutside).onFocusCapture,onBlurCapture:unref(focusOutside).onBlurCapture,onPointerdownCapture:unref(pointerDownOutside).onPointerDownCapture},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as-child`,`as`,`style`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]))}}),_sfc_main$22=defineComponent({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,rootContext=injectDialogRootContext(),{forwardRef,currentElement:contentElement}=useForwardExpose();return rootContext.titleId||=useId(void 0,`reka-dialog-title`),rootContext.descriptionId||=useId(void 0,`reka-dialog-description`),onMounted(()=>{rootContext.contentElement=contentElement,getActiveElement()!==document.body&&(rootContext.triggerElement.value=getActiveElement())}),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(_sfc_main$23),{"as-child":``,loop:``,trapped:props.trapFocus,onMountAutoFocus:_cache$1[5]||=$event=>emits(`openAutoFocus`,$event),onUnmountAutoFocus:_cache$1[6]||=$event=>emits(`closeAutoFocus`,$event)},{default:withCtx(()=>[createVNode(unref(_sfc_main$24),mergeProps({id:unref(rootContext).contentId,ref:unref(forwardRef),as:_ctx.as,"as-child":_ctx.asChild,"disable-outside-pointer-events":_ctx.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":unref(rootContext).descriptionId,"aria-labelledby":unref(rootContext).titleId,"data-state":unref(getOpenState)(unref(rootContext).open.value)},_ctx.$attrs,{onDismiss:_cache$1[0]||=$event=>unref(rootContext).onOpenChange(!1),onEscapeKeyDown:_cache$1[1]||=$event=>emits(`escapeKeyDown`,$event),onFocusOutside:_cache$1[2]||=$event=>emits(`focusOutside`,$event),onInteractOutside:_cache$1[3]||=$event=>emits(`interactOutside`,$event),onPointerDownOutside:_cache$1[4]||=$event=>emits(`pointerDownOutside`,$event)}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}});var getDefaultParent=function(originalTarget){if(typeof document>`u`)return null;var sampleTarget=Array.isArray(originalTarget)?originalTarget[0]:originalTarget;return sampleTarget.ownerDocument.body},counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={},lockCount=0,unwrapHost=function(node$1){return node$1&&(node$1.host||unwrapHost(node$1.parentNode))},correctTargets=function(parent,targets){return targets.map(function(target$1){if(parent.contains(target$1))return target$1;var correctedTarget=unwrapHost(target$1);return correctedTarget&&parent.contains(correctedTarget)?correctedTarget:(console.error(`aria-hidden`,target$1,`in not contained inside`,parent,`. Doing nothing`),null)}).filter(function(x$3){return!!x$3})},applyAttributeToOthers=function(originalTarget,parentNode,markerName,controlAttribute){var targets=correctTargets(parentNode,Array.isArray(originalTarget)?originalTarget:[originalTarget]);markerMap[markerName]||(markerMap[markerName]=new WeakMap);var markerCounter=markerMap[markerName],hiddenNodes=[],elementsToKeep=new Set,elementsToStop=new Set(targets),keep=function(el){!el||elementsToKeep.has(el)||(elementsToKeep.add(el),keep(el.parentNode))};targets.forEach(keep);var deep=function(parent){!parent||elementsToStop.has(parent)||Array.prototype.forEach.call(parent.children,function(node$1){if(elementsToKeep.has(node$1))deep(node$1);else try{var attr=node$1.getAttribute(controlAttribute),alreadyHidden=attr!==null&&attr!==`false`,counterValue=(counterMap.get(node$1)||0)+1,markerValue=(markerCounter.get(node$1)||0)+1;counterMap.set(node$1,counterValue),markerCounter.set(node$1,markerValue),hiddenNodes.push(node$1),counterValue===1&&alreadyHidden&&uncontrolledNodes.set(node$1,!0),markerValue===1&&node$1.setAttribute(markerName,`true`),alreadyHidden||node$1.setAttribute(controlAttribute,`true`)}catch(e$3){console.error(`aria-hidden: cannot operate on `,node$1,e$3)}})};return deep(parentNode),elementsToKeep.clear(),lockCount++,function(){hiddenNodes.forEach(function(node$1){var counterValue=counterMap.get(node$1)-1,markerValue=markerCounter.get(node$1)-1;counterMap.set(node$1,counterValue),markerCounter.set(node$1,markerValue),counterValue||(uncontrolledNodes.has(node$1)||node$1.removeAttribute(controlAttribute),uncontrolledNodes.delete(node$1)),markerValue||node$1.removeAttribute(markerName)}),lockCount--,lockCount||(counterMap=new WeakMap,counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={})}},hideOthers=function(originalTarget,parentNode,markerName){markerName===void 0&&(markerName=`data-aria-hidden`);var targets=Array.from(Array.isArray(originalTarget)?originalTarget:[originalTarget]),activeParentNode=parentNode||getDefaultParent(originalTarget);return activeParentNode?(targets.push.apply(targets,Array.from(activeParentNode.querySelectorAll(`[aria-live]`))),applyAttributeToOthers(targets,activeParentNode,markerName,`aria-hidden`)):function(){return null}};function useHideOthers(target$1){let undo;watch(()=>unrefElement(target$1),el=>{el?undo=hideOthers(el):undo&&undo()}),onUnmounted(()=>{undo&&undo()})}const _sfc_main$20=defineComponent({__name:`DialogContentModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,rootContext=injectDialogRootContext(),emitsAsProps=useEmitAsProps(emits),{forwardRef,currentElement}=useForwardExpose();return useHideOthers(currentElement),(_ctx,_cache$1)=>(openBlock(),createBlock(_sfc_main$22,mergeProps({...props,...unref(emitsAsProps)},{ref:unref(forwardRef),"trap-focus":unref(rootContext).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:_cache$1[0]||=event=>{if(!event.defaultPrevented){var _unref$triggerElement;event.preventDefault(),(_unref$triggerElement=unref(rootContext).triggerElement.value)?.focus()}},onPointerDownOutside:_cache$1[1]||=event=>{let originalEvent=event.detail.originalEvent,ctrlLeftClick=originalEvent.button===0&&originalEvent.ctrlKey===!0,isRightClick=originalEvent.button===2||ctrlLeftClick;isRightClick&&event.preventDefault()},onFocusOutside:_cache$1[2]||=event=>{event.preventDefault()}}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),_sfc_main$21=defineComponent({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,emitsAsProps=useEmitAsProps(emits);useForwardExpose();let rootContext=injectDialogRootContext(),hasInteractedOutsideRef=ref(!1),hasPointerDownOutsideRef=ref(!1);return(_ctx,_cache$1)=>(openBlock(),createBlock(_sfc_main$22,mergeProps({...props,...unref(emitsAsProps)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:_cache$1[0]||=event=>{if(!event.defaultPrevented){var _unref$triggerElement2;hasInteractedOutsideRef.value||(_unref$triggerElement2=unref(rootContext).triggerElement.value)?.focus(),event.preventDefault()}hasInteractedOutsideRef.value=!1,hasPointerDownOutsideRef.value=!1},onInteractOutside:_cache$1[1]||=event=>{var _unref$triggerElement3;event.defaultPrevented||(hasInteractedOutsideRef.value=!0,event.detail.originalEvent.type===`pointerdown`&&(hasPointerDownOutsideRef.value=!0));let target$1=event.target,targetIsTrigger=(_unref$triggerElement3=unref(rootContext).triggerElement.value)?.contains(target$1);targetIsTrigger&&event.preventDefault(),event.detail.originalEvent.type===`focusin`&&hasPointerDownOutsideRef.value&&event.preventDefault()}}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16))}}),_sfc_main$5=defineComponent({__name:`DialogContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,rootContext=injectDialogRootContext(),emitsAsProps=useEmitAsProps(emits),{forwardRef}=useForwardExpose();return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Presence),{present:_ctx.forceMount||unref(rootContext).open.value},{default:withCtx(()=>[unref(rootContext).modal.value?(openBlock(),createBlock(_sfc_main$20,mergeProps({key:0,ref:unref(forwardRef)},{...props,...unref(emitsAsProps),..._ctx.$attrs}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16)):(openBlock(),createBlock(_sfc_main$21,mergeProps({key:1,ref:unref(forwardRef)},{...props,...unref(emitsAsProps),..._ctx.$attrs}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),useBodyLockStackCount=createSharedComposable(()=>{let map=ref(new Map),initialOverflow=ref(),locked=computed(()=>{for(let value$1 of map.value.values())if(value$1)return!0;return!1}),context$1=injectConfigProviderContext({scrollBody:ref(!0)}),stopTouchMoveListener=null,resetBodyStyle=()=>{document.body.style.paddingRight=``,document.body.style.marginRight=``,document.body.style.pointerEvents=``,document.documentElement.style.removeProperty(`--scrollbar-width`),document.body.style.overflow=initialOverflow.value??``,isIOS&&stopTouchMoveListener?.(),initialOverflow.value=void 0};return watch(locked,(val,oldVal)=>{var _context$1$scrollBody;if(!isClient$1)return;if(!val){oldVal&&resetBodyStyle();return}initialOverflow.value===void 0&&(initialOverflow.value=document.body.style.overflow);let verticalScrollbarWidth=window.innerWidth-document.documentElement.clientWidth,defaultConfig={padding:verticalScrollbarWidth,margin:0},config=(_context$1$scrollBody=context$1.scrollBody)?.value?typeof context$1.scrollBody.value==`object`?defu({padding:context$1.scrollBody.value.padding===!0?verticalScrollbarWidth:context$1.scrollBody.value.padding,margin:context$1.scrollBody.value.margin===!0?verticalScrollbarWidth:context$1.scrollBody.value.margin},defaultConfig):defaultConfig:{padding:0,margin:0};verticalScrollbarWidth>0&&(document.body.style.paddingRight=typeof config.padding==`number`?`${config.padding}px`:String(config.padding),document.body.style.marginRight=typeof config.margin==`number`?`${config.margin}px`:String(config.margin),document.documentElement.style.setProperty(`--scrollbar-width`,`${verticalScrollbarWidth}px`),document.body.style.overflow=`hidden`),isIOS&&(stopTouchMoveListener=useEventListener(document,`touchmove`,e$3=>preventDefault(e$3),{passive:!1})),nextTick(()=>{document.body.style.pointerEvents=`none`,document.body.style.overflow=`hidden`})},{immediate:!0,flush:`sync`}),map});function useBodyScrollLock(initialState){let id=Math.random().toString(36).substring(2,7),map=useBodyLockStackCount();map.value.set(id,initialState??!1);let locked=computed({get:()=>map.value.get(id)??!1,set:value$1=>map.value.set(id,value$1)});return tryOnBeforeUnmount(()=>{map.value.delete(id)}),locked}function checkOverflowScroll(ele){let style=window.getComputedStyle(ele);if(style.overflowX===`scroll`||style.overflowY===`scroll`||style.overflowX===`auto`&&ele.clientWidth1?!0:(e$3.preventDefault&&e$3.cancelable&&e$3.preventDefault(),!1)}const _sfc_main$19=defineComponent({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean},as:{}},setup(__props){let rootContext=injectDialogRootContext();return useBodyScrollLock(!0),useForwardExpose(),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{as:_ctx.as,"as-child":_ctx.asChild,"data-state":unref(rootContext).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),_sfc_main$6=defineComponent({__name:`DialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(__props){let rootContext=injectDialogRootContext(),{forwardRef}=useForwardExpose();return(_ctx,_cache$1)=>{var _unref;return(_unref=unref(rootContext))?.modal.value?(openBlock(),createBlock(unref(Presence),{key:0,present:_ctx.forceMount||unref(rootContext).open.value},{default:withCtx(()=>[createVNode(_sfc_main$19,mergeProps(_ctx.$attrs,{ref:unref(forwardRef),as:_ctx.as,"as-child":_ctx.asChild}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):createCommentVNode(``,!0)}}}),_sfc_main$16=defineComponent({__name:`Teleport`,props:{to:{default:`body`},disabled:{type:Boolean},defer:{type:Boolean},forceMount:{type:Boolean}},setup(__props){let isMounted=useMounted();return(_ctx,_cache$1)=>unref(isMounted)||_ctx.forceMount?(openBlock(),createBlock(Teleport,{key:0,to:_ctx.to,disabled:_ctx.disabled,defer:_ctx.defer},[renderSlot(_ctx.$slots,`default`)],8,[`to`,`disabled`,`defer`])):createCommentVNode(``,!0)}});function useForwardProps(props){let vm=getCurrentInstance(),defaultProps=Object.keys(vm?.type.props??{}).reduce((prev,curr)=>{let defaultValue=(vm?.type.props[curr]).default;return defaultValue!==void 0&&(prev[curr]=defaultValue),prev},{}),refProps=toRef(props);return computed(()=>{let preservedProps={},assignedProps=vm?.vnode.props??{};return Object.keys(assignedProps).forEach(key$1=>{preservedProps[camelize(key$1)]=assignedProps[key$1]}),Object.keys({...defaultProps,...preservedProps}).reduce((prev,curr)=>(refProps.value[curr]!==void 0&&(prev[curr]=refProps.value[curr]),prev),{})})}function useForwardPropsEmits(props,emit$1){let parsedProps=useForwardProps(props),emitsAsProps=emit$1?useEmitAsProps(emit$1):{};return computed(()=>({...parsedProps.value,...emitsAsProps}))}function usePrimitiveElement(){let primitiveElement=ref(),currentElement=computed(()=>{var _primitiveElement$val,_primitiveElement$val2;return[`#text`,`#comment`].includes((_primitiveElement$val=primitiveElement.value)?.$el.nodeName)?(_primitiveElement$val2=primitiveElement.value)?.$el.nextElementSibling:unrefElement(primitiveElement)});return{primitiveElement,currentElement}}function useFormControl(el){return computed(()=>{var _unrefElement;return toValue(el)?!!(_unrefElement=unrefElement(el))?.closest(`form`):!0})}const _sfc_main$17=defineComponent({inheritAttrs:!1,__name:`VisuallyHiddenInputBubble`,props:{name:{},value:{},checked:{type:Boolean,default:void 0},required:{type:Boolean},disabled:{type:Boolean},feature:{default:`fully-hidden`}},setup(__props){let props=__props,{primitiveElement,currentElement}=usePrimitiveElement(),valueState=computed(()=>props.checked??props.value);return watch(valueState,(cur,prev)=>{if(!currentElement.value)return;let input=currentElement.value,inputProto=window.HTMLInputElement.prototype,descriptor=Object.getOwnPropertyDescriptor(inputProto,`value`),setValue=descriptor.set;if(setValue&&cur!==prev){let inputEvent=new Event(`input`,{bubbles:!0}),changeEvent=new Event(`change`,{bubbles:!0});setValue.call(input,cur),input.dispatchEvent(inputEvent),input.dispatchEvent(changeEvent)}}),(_ctx,_cache$1)=>(openBlock(),createBlock(_sfc_main$18,mergeProps({ref_key:`primitiveElement`,ref:primitiveElement},{...props,..._ctx.$attrs},{as:`input`}),null,16))}}),_sfc_main$15=defineComponent({inheritAttrs:!1,__name:`VisuallyHiddenInput`,props:{name:{},value:{},checked:{type:Boolean,default:void 0},required:{type:Boolean},disabled:{type:Boolean},feature:{default:`fully-hidden`}},setup(__props){let props=__props,isFormArrayEmptyAndRequired=computed(()=>typeof props.value==`object`&&Array.isArray(props.value)&&props.value.length===0&&props.required),parsedValue=computed(()=>typeof props.value==`string`||typeof props.value==`number`||typeof props.value==`boolean`?[{name:props.name,value:props.value}]:typeof props.value==`object`&&Array.isArray(props.value)?props.value.flatMap((obj,index$1)=>typeof obj==`object`?Object.entries(obj).map(([key$1,value$1])=>({name:`[${props.name}][${index$1}][${key$1}]`,value:value$1})):{name:`[${props.name}][${index$1}]`,value:obj}):props.value!==null&&typeof props.value==`object`&&!Array.isArray(props.value)?Object.entries(props.value).map(([key$1,value$1])=>({name:`[${props.name}][${key$1}]`,value:value$1})):[]);return(_ctx,_cache$1)=>isFormArrayEmptyAndRequired.value?(openBlock(),createBlock(_sfc_main$17,mergeProps({key:_ctx.name},{...props,..._ctx.$attrs},{name:_ctx.name,value:_ctx.value}),null,16,[`name`,`value`])):(openBlock(!0),createElementBlock(Fragment,{key:1},renderList(parsedValue.value,parsed=>(openBlock(),createBlock(_sfc_main$17,mergeProps({key:parsed.name,ref_for:!0},{...props,..._ctx.$attrs},{name:parsed.name,value:parsed.value}),null,16,[`name`,`value`]))),128))}}),_sfc_main$7=defineComponent({__name:`DialogPortal`,props:{to:{},disabled:{type:Boolean},defer:{type:Boolean},forceMount:{type:Boolean}},setup(__props){let props=__props;return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(_sfc_main$16),normalizeProps(guardReactiveProps(props)),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16))}}),[injectSwitchRootContext,provideSwitchRootContext]=createContext(`SwitchRoot`),_sfc_main$13=defineComponent({__name:`SwitchRoot`,props:{defaultValue:{type:Boolean},modelValue:{type:[Boolean,null],default:void 0},disabled:{type:Boolean},id:{},value:{default:`on`},asChild:{type:Boolean},as:{default:`button`},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,{disabled}=toRefs(props),modelValue=useVModel(props,`modelValue`,emit$1,{defaultValue:props.defaultValue,passive:props.modelValue===void 0});function toggleCheck(){disabled.value||(modelValue.value=!modelValue.value)}let{forwardRef,currentElement}=useForwardExpose(),isFormControl=useFormControl(currentElement),ariaLabel=computed(()=>{var _document$querySelect;return props.id&¤tElement.value?(_document$querySelect=document.querySelector(`[for="${props.id}"]`))?.innerText:void 0});return provideSwitchRootContext({modelValue,toggleCheck,disabled}),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),mergeProps(_ctx.$attrs,{id:_ctx.id,ref:unref(forwardRef),role:`switch`,type:_ctx.as===`button`?`button`:void 0,value:_ctx.value,"aria-label":_ctx.$attrs[`aria-label`]||ariaLabel.value,"aria-checked":unref(modelValue),"aria-required":_ctx.required,"data-state":unref(modelValue)?`checked`:`unchecked`,"data-disabled":unref(disabled)?``:void 0,"as-child":_ctx.asChild,as:_ctx.as,disabled:unref(disabled),onClick:toggleCheck,onKeydown:withKeys(withModifiers(toggleCheck,[`prevent`]),[`enter`])}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`,{modelValue:unref(modelValue)}),unref(isFormControl)&&_ctx.name?(openBlock(),createBlock(unref(_sfc_main$15),{key:0,type:`checkbox`,name:_ctx.name,disabled:unref(disabled),required:_ctx.required,value:_ctx.value,checked:!!unref(modelValue)},null,8,[`name`,`disabled`,`required`,`value`,`checked`])):createCommentVNode(``,!0)]),_:3},16,[`id`,`type`,`value`,`aria-label`,`aria-checked`,`aria-required`,`data-state`,`data-disabled`,`as-child`,`as`,`disabled`,`onKeydown`]))}}),_sfc_main$14=defineComponent({__name:`SwitchThumb`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(__props){let rootContext=injectSwitchRootContext();return useForwardExpose(),(_ctx,_cache$1)=>{var _unref$modelValue;return openBlock(),createBlock(unref(Primitive),{"data-state":(_unref$modelValue=unref(rootContext).modelValue)?.value?`checked`:`unchecked`,"data-disabled":unref(rootContext).disabled.value?``:void 0,"as-child":_ctx.asChild,as:_ctx.as},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`data-state`,`data-disabled`,`as-child`,`as`])}}});var Checkbox_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Checkbox`,props:{modelValue:{type:Boolean,required:!0},modelModifiers:{}},emits:[`update:modelValue`],setup(__props){let modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(_sfc_main$13),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,transition:`background duration-250 ease-in-out`,outline:`focus-within:none`,flex:`~`,border:`neutral-300 dark:neutral-700 data-[state=checked]:primary-200 data-[state=unchecked]:neutral-300 focus-within:neutral-800`,bg:`data-[state=checked]:primary-400 data-[state=unchecked]:neutral-300 data-[state=checked]:dark:primary-400/80 dark:data-[state=unchecked]:neutral-800`,relative:``,"h-7":``,w:`12.5`,"rounded-full":``,shadow:`sm focus-within:shadow-neutral-800 focus-within:[0_0_0_1px] `},{default:withCtx(()=>[createVNode(unref(_sfc_main$14),{"my-auto":``,"size-6":``,flex:``,"items-center":``,"justify-center":``,"translate-x":`0.5 data-[state=checked]:full`,"rounded-full":``,"bg-white":``,"text-xs":``,"shadow-xl":``,transition:`transform duration-250 ease-in-out`,"will-change-transform":``})]),_:1},8,[`modelValue`]))}}),Checkbox_default=Checkbox_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$36={flex:`~ col gap-4`},_hoisted_2$23={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_3$17={flex:`1`},_hoisted_4$15={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_5$13={class:`text-xs text-neutral-500 dark:text-neutral-400`};var FieldCheckbox_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldCheckbox`,props:mergeModels({label:{},description:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,_hoisted_1$36,[createBaseVNode(`div`,_hoisted_2$23,[createBaseVNode(`div`,_hoisted_3$17,[createBaseVNode(`div`,_hoisted_4$15,toDisplayString(props.label),1),createBaseVNode(`div`,_hoisted_5$13,toDisplayString(props.description),1)]),createVNode(Checkbox_default,{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event},null,8,[`modelValue`])])]))}}),FieldCheckbox_default=FieldCheckbox_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$35=[`type`];var Input_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Input`,props:mergeModels({type:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>withDirectives((openBlock(),createElementBlock(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,type:props.type||`text`,border:`focus:primary-300 dark:focus:primary-400/50 2 solid neutral-100 dark:neutral-900`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-50 dark:neutral-950 focus:neutral-50 dark:focus:neutral-900`},null,8,_hoisted_1$35)),[[vModelDynamic,modelValue.value]])}}),Input_default=Input_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$34={"max-w-full":``},_hoisted_2$22={flex:`~ col gap-4`},_hoisted_3$16={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$14={key:0,class:`text-red-500`},_hoisted_5$12={class:`text-xs text-neutral-500 dark:text-neutral-400`,"text-nowrap":``},_hoisted_6$11=[`type`,`placeholder`];var FieldInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldInput`,props:mergeModels({label:{},description:{},placeholder:{},required:{type:Boolean},type:{},inputClass:{},singleLine:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$34,[createBaseVNode(`label`,_hoisted_2$22,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_3$16,[createTextVNode(toDisplayString(props.label)+` `,1),props.required===!1?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_4$14,`*`))]),createBaseVNode(`div`,_hoisted_5$12,toDisplayString(props.description),1)]),_ctx.singleLine?(openBlock(),createBlock(Input_default,{key:0,modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,type:props.type,placeholder:props.placeholder,class:normalizeClass(props.inputClass)},null,8,[`modelValue`,`type`,`placeholder`,`class`])):withDirectives((openBlock(),createElementBlock(`textarea`,{key:1,"onUpdate:modelValue":_cache$1[1]||=$event=>modelValue.value=$event,type:props.type,placeholder:props.placeholder,class:normalizeClass(props.inputClass),border:`focus:primary-300 dark:focus:primary-400/50 2 solid neutral-100 dark:neutral-900`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-50 dark:neutral-950 focus:neutral-50 dark:focus:neutral-900`},null,10,_hoisted_6$11)),[[vModelText,modelValue.value]])])]))}}),FieldInput_default=FieldInput_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$33={flex:`~ gap-2`};var InputKeyValue_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`InputKeyValue`,props:mergeModels({name:{},keyPlaceholder:{},valuePlaceholder:{}},{propertyKey:{required:!0},propertyKeyModifiers:{},propertyValue:{required:!0},propertyValueModifiers:{}}),emits:[`update:propertyKey`,`update:propertyValue`],setup(__props){let props=__props,key$1=useModel(__props,`propertyKey`),value$1=useModel(__props,`propertyValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$33,[createVNode(Input_default,{modelValue:key$1.value,"onUpdate:modelValue":_cache$1[0]||=$event=>key$1.value=$event,placeholder:props.keyPlaceholder,class:`w-1/2`},null,8,[`modelValue`,`placeholder`]),createVNode(Input_default,{modelValue:value$1.value,"onUpdate:modelValue":_cache$1[1]||=$event=>value$1.value=$event,placeholder:props.valuePlaceholder,class:`w-1/2`},null,8,[`modelValue`,`placeholder`])]))}}),InputKeyValue_default=InputKeyValue_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$32={"max-w-full":``},_hoisted_2$21={flex:`~ col gap-2`},_hoisted_3$15={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$13={key:0,class:`text-red-500`},_hoisted_5$11={class:`text-xs text-neutral-500 dark:text-neutral-400`,"text-nowrap":``},_hoisted_6$10={flex:`~ col gap-2`},_hoisted_7$9=[`onClick`];var FieldKeyValues_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldKeyValues`,props:mergeModels({label:{},description:{},name:{},keyPlaceholder:{},valuePlaceholder:{},required:{type:Boolean},inputClass:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:mergeModels([`remove`,`add`],[`update:modelValue`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,keyValues=useModel(__props,`modelValue`),inputKey=ref(``),inputValue=ref(``);return watch([inputKey,inputValue],()=>{emit$1(`add`,inputKey.value,inputValue.value)}),(_ctx,_cache$1)=>{let _directive_auto_animate=resolveDirective(`auto-animate`);return openBlock(),createElementBlock(`div`,_hoisted_1$32,[createBaseVNode(`label`,_hoisted_2$21,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_3$15,[createTextVNode(toDisplayString(props.label)+` `,1),props.required===!1?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_4$13,`*`))]),createBaseVNode(`div`,_hoisted_5$11,toDisplayString(props.description),1)]),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_6$10,[(openBlock(!0),createElementBlock(Fragment,null,renderList(keyValues.value,(keyValue,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,"w-full":``,flex:``,"items-center":``,"gap-2":``},[createVNode(InputKeyValue_default,{"property-key":keyValue.key,"onUpdate:propertyKey":$event=>keyValue.key=$event,"property-value":keyValue.value,"onUpdate:propertyValue":$event=>keyValue.value=$event,"key-placeholder":props.keyPlaceholder,"value-placeholder":props.valuePlaceholder,"w-full":``},null,8,[`property-key`,`onUpdate:propertyKey`,`property-value`,`onUpdate:propertyValue`,`key-placeholder`,`value-placeholder`]),createBaseVNode(`button`,{onClick:$event=>emit$1(`remove`,index$1)},_cache$1[0]||=[createBaseVNode(`div`,{"i-solar:minus-circle-line-duotone":``,size:`6`},null,-1)],8,_hoisted_7$9)]))),128))])),[[_directive_auto_animate]])])])}}}),FieldKeyValues_default=FieldKeyValues_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$31=[`min`,`max`,`step`];var Range_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Range`,props:mergeModels({min:{default:0},max:{default:100},step:{default:1},disabled:{type:Boolean,default:!1},thumbColor:{default:`#9090906e`},trackColor:{default:`gray`},trackValueColor:{default:`red`}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`),scaledMin=computed(()=>props.min*1e4),scaledMax=computed(()=>props.max*1e4),scaledStep=computed(()=>props.step*1e4),sliderRef=ref(),sliderValue=computed({get:()=>modelValue.value*1e4,set:value$1=>{modelValue.value=value$1/1e4,updateTrackColor()}});onMounted(()=>{updateTrackColor()});function updateTrackColor(){sliderRef.value&&(sliderRef.value.style.setProperty(`--value`,sliderRef.value.value),sliderRef.value.style.setProperty(`--min`,sliderRef.value.min?sliderRef.value.min:props.min.toString()),sliderRef.value.style.setProperty(`--max`,sliderRef.value.max?sliderRef.value.max:props.max.toString()))}function handleInput(e$3){let target$1=e$3.target;target$1.style.setProperty(`--value`,target$1.value)}return(_ctx,_cache$1)=>withDirectives((openBlock(),createElementBlock(`input`,{ref_key:`sliderRef`,ref:sliderRef,"onUpdate:modelValue":_cache$1[0]||=$event=>sliderValue.value=$event,type:`range`,min:scaledMin.value,max:scaledMax.value,step:scaledStep.value,class:`slider-progress form_input-range`,onInput:handleInput},null,40,_hoisted_1$31)),[[vModelText,sliderValue.value,void 0,{number:!0}]])}}),Range_default=__plugin_vue_export_helper_default(Range_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-8956898c`]]);const _hoisted_1$30={flex:`~ col gap-4`},_hoisted_2$20={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_3$14={flex:`1`},_hoisted_4$12={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_5$10={class:`text-xs text-neutral-500 dark:text-neutral-400`},_hoisted_6$9={"font-mono":``},_hoisted_7$8={flex:`~ row`,"items-center":``,"gap-2":``};var FieldRange_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldRange`,props:mergeModels({min:{},max:{},step:{},label:{},description:{},formatValue:{type:Function}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>{var _props$formatValue;return openBlock(),createElementBlock(`label`,_hoisted_1$30,[createBaseVNode(`div`,_hoisted_2$20,[createBaseVNode(`div`,_hoisted_3$14,[createBaseVNode(`div`,_hoisted_4$12,toDisplayString(_ctx.label),1),createBaseVNode(`div`,_hoisted_5$10,toDisplayString(_ctx.description),1)]),createBaseVNode(`span`,_hoisted_6$9,toDisplayString((_props$formatValue=props.formatValue)?.call(props,modelValue.value)||modelValue.value),1)]),createBaseVNode(`div`,_hoisted_7$8,[createVNode(Range_default,{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,min:_ctx.min||0,max:_ctx.max||1,step:_ctx.step||.01,"w-full":``},null,8,[`modelValue`,`min`,`max`,`step`])])])}}}),FieldRange_default=FieldRange_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$29={flex:`~ col gap-4`},_hoisted_2$19={flex:`1`},_hoisted_3$13={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$11={class:`text-xs text-neutral-500 dark:text-neutral-400`};var FieldSelect_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldSelect`,props:mergeModels({label:{},description:{},options:{},placeholder:{},disabled:{type:Boolean},layout:{}},{modelValue:{required:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,_hoisted_1$29,[createBaseVNode(`div`,{class:normalizeClass([props.layout===`horizontal`?`flex flex-row items-center justify-between gap-2`:`flex flex-col items-start justify-center gap-2`])},[createBaseVNode(`div`,_hoisted_2$19,[createBaseVNode(`div`,_hoisted_3$13,toDisplayString(props.label),1),createBaseVNode(`div`,_hoisted_4$11,toDisplayString(props.description),1)]),renderSlot(_ctx.$slots,`default`,{},()=>[createVNode(unref(Select_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,options:props.options,placeholder:props.placeholder,disabled:props.disabled,title:_ctx.label},{default:withCtx(({value:value$1})=>{var _props$options;return[createTextVNode(toDisplayString(((_props$options=props.options)==null||(_props$options=_props$options.find(option$1=>option$1.value===value$1))==null?void 0:_props$options.label)||props.placeholder),1)]}),_:1},8,[`modelValue`,`options`,`placeholder`,`disabled`,`title`])])],2)]))}}),FieldSelect_default=FieldSelect_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$28={class:`max-w-full`},_hoisted_2$18={class:`flex flex-col gap-2`},_hoisted_3$12={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$10={key:0,class:`text-red-500`},_hoisted_5$9={class:`text-nowrap text-xs text-neutral-500 dark:text-neutral-400`},_hoisted_6$8={class:`~ col gap-2`},_hoisted_7$7=[`onClick`];var FieldValues_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldValues`,props:mergeModels({label:{},description:{},name:{},valuePlaceholder:{},required:{type:Boolean},inputClass:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:mergeModels([`remove`,`add`],[`update:modelValue`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,items=useModel(__props,`modelValue`);function addItem(){items.value.push(``),emit$1(`add`)}function removeItem(index$1){items.value.splice(index$1,1),emit$1(`remove`,index$1)}return(_ctx,_cache$1)=>{let _directive_auto_animate=resolveDirective(`auto-animate`);return openBlock(),createElementBlock(`div`,_hoisted_1$28,[createBaseVNode(`label`,_hoisted_2$18,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_3$12,[createTextVNode(toDisplayString(props.label)+` `,1),props.required===!1?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_4$10,`*`))]),createBaseVNode(`div`,_hoisted_5$9,toDisplayString(props.description),1)]),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_6$8,[(openBlock(!0),createElementBlock(Fragment,null,renderList(items.value,(_$2,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,class:`w-full flex items-center gap-2`},[createVNode(Input_default,{modelValue:items.value[index$1],"onUpdate:modelValue":$event=>items.value[index$1]=$event,placeholder:props.valuePlaceholder,class:`w-90%`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),createBaseVNode(`button`,{"i-solar:minus-circle-line-duotone":``,size:`6`,class:`min-w-20px w-10% flex text-red-500`,onClick:$event=>removeItem(index$1)},null,8,_hoisted_7$7)]))),128)),createBaseVNode(`div`,{"i-solar:add-circle-line-duotone":``,size:`6`,class:`mt-2 w-4/5 text-blue-500`,onClick:addItem})])),[[_directive_auto_animate]])])])}}}),FieldValues_default=FieldValues_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$27=[`disabled`];var ColorHueRange_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ColorHueRange`,props:mergeModels({disabled:{type:Boolean},class:{}},{colorValue:{type:String,default:``},colorValueModifiers:{}}),emits:[`update:colorValue`],setup(__props){let props=__props,colorValue=useModel(__props,`colorValue`);return(_ctx,_cache$1)=>withDirectives((openBlock(),createElementBlock(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>colorValue.value=$event,type:`range`,min:`0`,max:`360`,step:`0.01`,class:normalizeClass([`color-hue-range`,[props.disabled?`opacity-25 cursor-not-allowed`:`cursor-pointer`,props.class||``]]),transition:`all ease-in-out duration-250`,disabled:props.disabled},null,10,_hoisted_1$27)),[[vModelText,colorValue.value]])}}),ColorHueRange_default=__plugin_vue_export_helper_default(ColorHueRange_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-49fc55e8`]]),Option_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Option`,props:{value:{},label:{},active:{type:Boolean}},setup(__props){let props=__props,selectOption=inject(`selectOption`),hide$1=inject(`hide`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,mergeProps({..._ctx.$attrs,class:null,style:null},{class:[`cursor-pointer rounded px-2 py-1 text-neutral-700 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-800`,{"bg-neutral-100 dark:bg-neutral-800":props.active}],"line-clamp-1":``,"overflow-hidden":``,"text-ellipsis":``,"whitespace-pre-wrap":``,"text-xs":``,"transition-colors":``,"duration-150":``,"ease-in-out":``,"will-change-background-color":``,"will-change-color":``,onClick:_cache$1[0]||=()=>{unref(selectOption)(props.value),unref(hide$1)()}}),[renderSlot(_ctx.$slots,`default`,{},()=>[createTextVNode(toDisplayString(props.label),1)])],16))}}),Option_default=Option_vue_vue_type_script_setup_true_lang_default;function n$1(t){var e$3;return(e$3=t.ownerDocument)?.defaultView||window}function o(t){return n$1(t).getComputedStyle(t)}const i=Math.min,r=Math.max,l=Math.round;function c$1(t){let e$3=o(t),n$2=parseFloat(e$3.width),i$1=parseFloat(e$3.height),r$2=t.offsetWidth,c$4=t.offsetHeight,s$1=l(n$2)!==r$2||l(i$1)!==c$4;return s$1&&(n$2=r$2,i$1=c$4),{width:n$2,height:i$1,fallback:s$1}}function s(t){return h$2(t)?(t.nodeName||``).toLowerCase():``}let f;function u(){if(f)return f;let t=navigator.userAgentData;return t&&Array.isArray(t.brands)?(f=t.brands.map(t$1=>t$1.brand+`/`+t$1.version).join(` `),f):navigator.userAgent}function a(t){return t instanceof n$1(t).HTMLElement}function d$1(t){return t instanceof n$1(t).Element}function h$2(t){return t instanceof n$1(t).Node}function p$1(t){return typeof ShadowRoot>`u`?!1:t instanceof n$1(t).ShadowRoot||t instanceof ShadowRoot}function g$1(t){let{overflow:e$3,overflowX:n$2,overflowY:i$1,display:r$2}=o(t);return/auto|scroll|overlay|hidden|clip/.test(e$3+i$1+n$2)&&![`inline`,`contents`].includes(r$2)}function m$1(t){return[`table`,`td`,`th`].includes(s(t))}function y$1(t){let e$3=/firefox/i.test(u()),n$2=o(t),i$1=n$2.backdropFilter||n$2.WebkitBackdropFilter;return n$2.transform!==`none`||n$2.perspective!==`none`||!!i$1&&i$1!==`none`||e$3&&n$2.willChange===`filter`||e$3&&!!n$2.filter&&n$2.filter!==`none`||[`transform`,`perspective`].some(t$1=>n$2.willChange.includes(t$1))||[`paint`,`layout`,`strict`,`content`].some(t$1=>{let e$4=n$2.contain;return e$4!=null&&e$4.includes(t$1)})}function x$2(){return!/^((?!chrome|android).)*safari/i.test(u())}function w(t){return[`html`,`body`,`#document`].includes(s(t))}function v(t){return d$1(t)?t:t.contextElement}const b$1={x:1,y:1};function L(t){let e$3=v(t);if(!a(e$3))return b$1;let n$2=e$3.getBoundingClientRect(),{width:o$1,height:i$1,fallback:r$2}=c$1(e$3),s$1=(r$2?l(n$2.width):n$2.width)/o$1,f$3=(r$2?l(n$2.height):n$2.height)/i$1;return s$1&&Number.isFinite(s$1)||(s$1=1),f$3&&Number.isFinite(f$3)||(f$3=1),{x:s$1,y:f$3}}function E$1(t,e$3,o$1,i$1){var r$2,l$1;e$3===void 0&&(e$3=!1),o$1===void 0&&(o$1=!1);let c$4=t.getBoundingClientRect(),s$1=v(t),f$3=b$1;e$3&&(i$1?d$1(i$1)&&(f$3=L(i$1)):f$3=L(t));let u$1=s$1?n$1(s$1):window,a$2=!x$2()&&o$1,h$3=(c$4.left+(a$2&&(r$2=u$1.visualViewport)?.offsetLeft||0))/f$3.x,p$5=(c$4.top+(a$2&&(l$1=u$1.visualViewport)?.offsetTop||0))/f$3.y,g$2=c$4.width/f$3.x,m$2=c$4.height/f$3.y;if(s$1){let t$1=n$1(s$1),e$4=i$1&&d$1(i$1)?n$1(i$1):i$1,o$2=t$1.frameElement;for(;o$2&&i$1&&e$4!==t$1;){let t$2=L(o$2),e$5=o$2.getBoundingClientRect(),i$2=getComputedStyle(o$2);e$5.x+=(o$2.clientLeft+parseFloat(i$2.paddingLeft))*t$2.x,e$5.y+=(o$2.clientTop+parseFloat(i$2.paddingTop))*t$2.y,h$3*=t$2.x,p$5*=t$2.y,g$2*=t$2.x,m$2*=t$2.y,h$3+=e$5.x,p$5+=e$5.y,o$2=n$1(o$2).frameElement}}return{width:g$2,height:m$2,top:p$5,right:h$3+g$2,bottom:p$5+m$2,left:h$3,x:h$3,y:p$5}}function R(t){return((h$2(t)?t.ownerDocument:t.document)||window.document).documentElement}function T(t){return d$1(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function C$2(t){return E$1(R(t)).left+T(t).scrollLeft}function F(t){if(s(t)===`html`)return t;let e$3=t.assignedSlot||t.parentNode||p$1(t)&&t.host||R(t);return p$1(e$3)?e$3.host:e$3}function W(t){let e$3=F(t);return w(e$3)?e$3.ownerDocument.body:a(e$3)&&g$1(e$3)?e$3:W(e$3)}function D(t,e$3){var o$1;e$3===void 0&&(e$3=[]);let i$1=W(t),r$2=i$1===(o$1=t.ownerDocument)?.body,l$1=n$1(i$1);return r$2?e$3.concat(l$1,l$1.visualViewport||[],g$1(i$1)?i$1:[]):e$3.concat(i$1,D(i$1))}function S$1(e$3,i$1,l$1){return i$1===`viewport`?rectToClientRect(function(t,e$4){let o$1=n$1(t),i$2=R(t),r$2=o$1.visualViewport,l$2=i$2.clientWidth,c$4=i$2.clientHeight,s$1=0,f$3=0;if(r$2){l$2=r$2.width,c$4=r$2.height;let t$1=x$2();(t$1||!t$1&&e$4===`fixed`)&&(s$1=r$2.offsetLeft,f$3=r$2.offsetTop)}return{width:l$2,height:c$4,x:s$1,y:f$3}}(e$3,l$1)):d$1(i$1)?rectToClientRect(function(t,e$4){let n$2=E$1(t,!0,e$4===`fixed`),o$1=n$2.top+t.clientTop,i$2=n$2.left+t.clientLeft,r$2=a(t)?L(t):{x:1,y:1};return{width:t.clientWidth*r$2.x,height:t.clientHeight*r$2.y,x:i$2*r$2.x,y:o$1*r$2.y}}(i$1,l$1)):rectToClientRect(function(t){let e$4=R(t),n$2=T(t),i$2=t.ownerDocument.body,l$2=r(e$4.scrollWidth,e$4.clientWidth,i$2.scrollWidth,i$2.clientWidth),c$4=r(e$4.scrollHeight,e$4.clientHeight,i$2.scrollHeight,i$2.clientHeight),s$1=-n$2.scrollLeft+C$2(t),f$3=-n$2.scrollTop;return o(i$2).direction===`rtl`&&(s$1+=r(e$4.clientWidth,i$2.clientWidth)-l$2),{width:l$2,height:c$4,x:s$1,y:f$3}}(R(e$3)))}function A(t){return a(t)&&o(t).position!==`fixed`?t.offsetParent:null}function H$1(t){let e$3=n$1(t),i$1=A(t);for(;i$1&&m$1(i$1)&&o(i$1).position===`static`;)i$1=A(i$1);return i$1&&(s(i$1)===`html`||s(i$1)===`body`&&o(i$1).position===`static`&&!y$1(i$1))?e$3:i$1||function(t$1){let e$4=F(t$1);for(;a(e$4)&&!w(e$4);){if(y$1(e$4))return e$4;e$4=F(e$4)}return null}(t)||e$3}function O$1(t,e$3,n$2){let o$1=a(e$3),i$1=R(e$3),r$2=E$1(t,!0,n$2===`fixed`,e$3),l$1={scrollLeft:0,scrollTop:0},c$4={x:0,y:0};if(o$1||!o$1&&n$2!==`fixed`)if((s(e$3)!==`body`||g$1(i$1))&&(l$1=T(e$3)),a(e$3)){let t$1=E$1(e$3,!0);c$4.x=t$1.x+e$3.clientLeft,c$4.y=t$1.y+e$3.clientTop}else i$1&&(c$4.x=C$2(i$1));return{x:r$2.left+l$1.scrollLeft-c$4.x,y:r$2.top+l$1.scrollTop-c$4.y,width:r$2.width,height:r$2.height}}const P={getClippingRect:function(t){let{element:e$3,boundary:n$2,rootBoundary:l$1,strategy:c$4}=t,f$3=n$2===`clippingAncestors`?function(t$1,e$4){let n$3=e$4.get(t$1);if(n$3)return n$3;let i$1=D(t$1).filter(t$2=>d$1(t$2)&&s(t$2)!==`body`),r$2=null,l$2=o(t$1).position===`fixed`,c$5=l$2?F(t$1):t$1;for(;d$1(c$5)&&!w(c$5);){let t$2=o(c$5),e$5=y$1(c$5);(l$2?e$5||r$2:e$5||t$2.position!==`static`||!r$2||![`absolute`,`fixed`].includes(r$2.position))?r$2=t$2:i$1=i$1.filter(t$3=>t$3!==c$5),c$5=F(c$5)}return e$4.set(t$1,i$1),i$1}(e$3,this._c):[].concat(n$2),u$1=[...f$3,l$1],a$2=u$1[0],h$3=u$1.reduce((t$1,n$3)=>{let o$1=S$1(e$3,n$3,c$4);return t$1.top=r(o$1.top,t$1.top),t$1.right=i(o$1.right,t$1.right),t$1.bottom=i(o$1.bottom,t$1.bottom),t$1.left=r(o$1.left,t$1.left),t$1},S$1(e$3,a$2,c$4));return{width:h$3.right-h$3.left,height:h$3.bottom-h$3.top,x:h$3.left,y:h$3.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(t){let{rect:e$3,offsetParent:n$2,strategy:o$1}=t,i$1=a(n$2),r$2=R(n$2);if(n$2===r$2)return e$3;let l$1={scrollLeft:0,scrollTop:0},c$4={x:1,y:1},f$3={x:0,y:0};if((i$1||!i$1&&o$1!==`fixed`)&&((s(n$2)!==`body`||g$1(r$2))&&(l$1=T(n$2)),a(n$2))){let t$1=E$1(n$2);c$4=L(n$2),f$3.x=t$1.x+n$2.clientLeft,f$3.y=t$1.y+n$2.clientTop}return{width:e$3.width*c$4.x,height:e$3.height*c$4.y,x:e$3.x*c$4.x-l$1.scrollLeft*c$4.x+f$3.x,y:e$3.y*c$4.y-l$1.scrollTop*c$4.y+f$3.y}},isElement:d$1,getDimensions:function(t){return a(t)?c$1(t):t.getBoundingClientRect()},getOffsetParent:H$1,getDocumentElement:R,getScale:L,async getElementRects(t){let{reference:e$3,floating:n$2,strategy:o$1}=t,i$1=this.getOffsetParent||H$1,r$2=this.getDimensions;return{reference:O$1(e$3,await i$1(n$2),o$1),floating:{x:0,y:0,...await r$2(n$2)}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>o(t).direction===`rtl`},B=(t,n$2,o$1)=>{let i$1=new Map,r$2={platform:P,...o$1},l$1={...r$2.platform,_c:i$1};return computePosition(t,n$2,{...r$2,platform:l$1})},h$1={disabled:!1,distance:5,skidding:0,container:`body`,boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:`absolute`,preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:`top`,triggers:[`hover`,`focus`,`touch`],hideTriggers:e$3=>[...e$3,`click`],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:`...`},dropdown:{placement:`bottom`,triggers:[`click`],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:`dropdown`,triggers:[`hover`,`focus`],popperTriggers:[`hover`],delay:{show:0,hide:400}}}};function S(e$3,t){let o$1=h$1.themes[e$3]||{},i$1;do i$1=o$1[t],typeof i$1>`u`?o$1.$extend?o$1=h$1.themes[o$1.$extend]||{}:(o$1=null,i$1=h$1[t]):o$1=null;while(o$1);return i$1}function Ze(e$3){let t=[e$3],o$1=h$1.themes[e$3]||{};do o$1.$extend&&!o$1.$resetCss?(t.push(o$1.$extend),o$1=h$1.themes[o$1.$extend]||{}):o$1=null;while(o$1);return t.map(i$1=>`v-popper--theme-${i$1}`)}function re$2(e$3){let t=[e$3],o$1=h$1.themes[e$3]||{};do o$1.$extend?(t.push(o$1.$extend),o$1=h$1.themes[o$1.$extend]||{}):o$1=null;while(o$1);return t}let $=!1;if(typeof window<`u`){$=!1;try{let e$3=Object.defineProperty({},`passive`,{get(){$=!0}});window.addEventListener(`test`,null,e$3)}catch{}}let _e$1=!1;typeof window<`u`&&typeof navigator<`u`&&(_e$1=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Te$1=[`auto`,`top`,`bottom`,`left`,`right`].reduce((e$3,t)=>e$3.concat([t,`${t}-start`,`${t}-end`]),[]),pe={hover:`mouseenter`,focus:`focus`,click:`click`,touch:`touchstart`,pointer:`pointerdown`},ae={hover:`mouseleave`,focus:`blur`,click:`click`,touch:`touchend`,pointer:`pointerup`};function de$1(e$3,t){let o$1=e$3.indexOf(t);o$1!==-1&&e$3.splice(o$1,1)}function G(){return new Promise(e$3=>requestAnimationFrame(()=>{requestAnimationFrame(e$3)}))}const d=[];let g=null;const le={};function he(e$3){let t=le[e$3];return t||=le[e$3]=[],t}let Y=function(){};typeof window<`u`&&(Y=window.Element);function n(e$3){return function(t){return S(t.theme,e$3)}}const q=`__floating-vue__popper`,Q$1=()=>defineComponent({name:`VPopper`,provide(){return{[q]:{parentPopper:this}}},inject:{[q]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:n(`disabled`)},positioningDisabled:{type:Boolean,default:n(`positioningDisabled`)},placement:{type:String,default:n(`placement`),validator:e$3=>Te$1.includes(e$3)},delay:{type:[String,Number,Object],default:n(`delay`)},distance:{type:[Number,String],default:n(`distance`)},skidding:{type:[Number,String],default:n(`skidding`)},triggers:{type:Array,default:n(`triggers`)},showTriggers:{type:[Array,Function],default:n(`showTriggers`)},hideTriggers:{type:[Array,Function],default:n(`hideTriggers`)},popperTriggers:{type:Array,default:n(`popperTriggers`)},popperShowTriggers:{type:[Array,Function],default:n(`popperShowTriggers`)},popperHideTriggers:{type:[Array,Function],default:n(`popperHideTriggers`)},container:{type:[String,Object,Y,Boolean],default:n(`container`)},boundary:{type:[String,Y],default:n(`boundary`)},strategy:{type:String,validator:e$3=>[`absolute`,`fixed`].includes(e$3),default:n(`strategy`)},autoHide:{type:[Boolean,Function],default:n(`autoHide`)},handleResize:{type:Boolean,default:n(`handleResize`)},instantMove:{type:Boolean,default:n(`instantMove`)},eagerMount:{type:Boolean,default:n(`eagerMount`)},popperClass:{type:[String,Array,Object],default:n(`popperClass`)},computeTransformOrigin:{type:Boolean,default:n(`computeTransformOrigin`)},autoMinSize:{type:Boolean,default:n(`autoMinSize`)},autoSize:{type:[Boolean,String],default:n(`autoSize`)},autoMaxSize:{type:Boolean,default:n(`autoMaxSize`)},autoBoundaryMaxSize:{type:Boolean,default:n(`autoBoundaryMaxSize`)},preventOverflow:{type:Boolean,default:n(`preventOverflow`)},overflowPadding:{type:[Number,String],default:n(`overflowPadding`)},arrowPadding:{type:[Number,String],default:n(`arrowPadding`)},arrowOverflow:{type:Boolean,default:n(`arrowOverflow`)},flip:{type:Boolean,default:n(`flip`)},shift:{type:Boolean,default:n(`shift`)},shiftCrossAxis:{type:Boolean,default:n(`shiftCrossAxis`)},noAutoFocus:{type:Boolean,default:n(`noAutoFocus`)},disposeTimeout:{type:Number,default:n(`disposeTimeout`)}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e$3=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:``,strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e$3=>e$3.toString(36).substring(2,10)).join(`_`)}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId==null?this.randomId:this.ariaId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide==`function`?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e$3;return(e$3=this[q])?.parentPopper},hasPopperShowTriggerHover(){var e$3,t;return(e$3=this.popperTriggers)?.includes(`hover`)||(t=this.popperShowTriggers)?.includes(`hover`)}},watch:{shown:`$_autoShowHide`,disabled(e$3){e$3?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:`$_refreshListeners`,deep:!0},positioningDisabled:`$_refreshListeners`,...[`placement`,`distance`,`skidding`,`boundary`,`strategy`,`overflowPadding`,`arrowPadding`,`preventOverflow`,`shift`,`shiftCrossAxis`,`flip`].reduce((e$3,t)=>(e$3[t]=`$_computePosition`,e$3),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e$3=null,skipDelay:t=!1,force:o$1=!1}={}){var i$1,s$1;(i$1=this.parentPopper)!=null&&i$1.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o$1||!this.disabled)&&((s$1=this.parentPopper)?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e$3,t),this.$emit(`show`),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit(`update:shown`,!0))},hide({event:e$3=null,skipDelay:t=!1}={}){var o$1;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}(o$1=this.parentPopper)?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e$3,t),this.$emit(`hide`),this.$emit(`update:shown`,!1)}},init(){var e$3;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=(e$3=this.referenceNode)?.call(this)??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(`.v-popper__inner`),this.$_arrowNode=this.$_popperNode.querySelector(`.v-popper__arrow-container`),this.$_swapTargetAttrs(`title`,`data-original-title`),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs(`data-original-title`,`title`))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit(`resize`))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;let e$3={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e$3.middleware.push(offset({mainAxis:this.distance,crossAxis:this.skidding}));let t=this.placement.startsWith(`auto`);if(t?e$3.middleware.push(autoPlacement({alignment:this.placement.split(`-`)[1]??``})):e$3.placement=this.placement,this.preventOverflow&&(this.shift&&e$3.middleware.push(shift({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e$3.middleware.push(flip({padding:this.overflowPadding,boundary:this.boundary}))),e$3.middleware.push(arrow({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e$3.middleware.push({name:`arrowOverflow`,fn:({placement:i$1,rects:s$1,middlewareData:r$2})=>{let p$5,{centerOffset:a$2}=r$2.arrow;return p$5=i$1.startsWith(`top`)||i$1.startsWith(`bottom`)?Math.abs(a$2)>s$1.reference.width/2:Math.abs(a$2)>s$1.reference.height/2,{data:{overflow:p$5}}}}),this.autoMinSize||this.autoSize){let i$1=this.autoSize?this.autoSize:this.autoMinSize?`min`:null;e$3.middleware.push({name:`autoSize`,fn:({rects:s$1,placement:r$2,middlewareData:p$5})=>{var u$1;if((u$1=p$5.autoSize)!=null&&u$1.skip)return{};let a$2,l$1;return r$2.startsWith(`top`)||r$2.startsWith(`bottom`)?a$2=s$1.reference.width:l$1=s$1.reference.height,this.$_innerNode.style[i$1===`min`?`minWidth`:i$1===`max`?`maxWidth`:`width`]=a$2==null?null:`${a$2}px`,this.$_innerNode.style[i$1===`min`?`minHeight`:i$1===`max`?`maxHeight`:`height`]=l$1==null?null:`${l$1}px`,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e$3.middleware.push(size({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i$1,availableHeight:s$1})=>{this.$_innerNode.style.maxWidth=i$1==null?null:`${i$1}px`,this.$_innerNode.style.maxHeight=s$1==null?null:`${s$1}px`}})));let o$1=await B(this.$_referenceNode,this.$_popperNode,e$3);Object.assign(this.result,{x:o$1.x,y:o$1.y,placement:o$1.placement,strategy:o$1.strategy,arrow:{...o$1.middlewareData.arrow,...o$1.middlewareData.arrowOverflow}})},$_scheduleShow(e$3,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),g&&this.instantMove&&g.instantMove&&g!==this.parentPopper){g.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay(`show`))},$_scheduleHide(e$3,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(g=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay(`hide`))},$_computeDelay(e$3){let t=this.delay;return parseInt(t&&t[e$3]||t||0)},async $_applyShow(e$3=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e$3,!this.isShown&&(this.$_ensureTeleport(),await G(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...D(this.$_referenceNode),...D(this.$_popperNode)],`scroll`,()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){let t=this.$_referenceNode.getBoundingClientRect(),o$1=this.$_popperNode.querySelector(`.v-popper__wrapper`),i$1=o$1.parentNode.getBoundingClientRect(),s$1=t.x+t.width/2-(i$1.left+o$1.offsetLeft),r$2=t.y+t.height/2-(i$1.top+o$1.offsetTop);this.result.transformOrigin=`${s$1}px ${r$2}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":``});let e$3=this.showGroup;if(e$3){let t;for(let o$1=0;o$10){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e$3,de$1(d,this),d.length===0&&document.body.classList.remove(`v-popper--some-open`);for(let o$1 of re$2(this.theme)){let i$1=he(o$1);de$1(i$1,this),i$1.length===0&&document.body.classList.remove(`v-popper--some-open--${o$1}`)}g===this&&(g=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);let t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners(`scroll`),this.$emit(`apply-hide`),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await G(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e$3=this.container;if(typeof e$3==`string`?e$3=window.document.querySelector(e$3):e$3===!1&&(e$3=this.$_targetNodes[0].parentNode),!e$3)throw Error(`No container for popover: `+this.container);e$3.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){let e$3=o$1=>{this.isShown&&!this.$_hideInProgress||(o$1.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o$1}))};this.$_registerTriggerListeners(this.$_targetNodes,pe,this.triggers,this.showTriggers,e$3),this.$_registerTriggerListeners([this.$_popperNode],pe,this.popperTriggers,this.popperShowTriggers,e$3);let t=o$1=>{o$1.usedByTooltip||this.hide({event:o$1})};this.$_registerTriggerListeners(this.$_targetNodes,ae,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],ae,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e$3,t,o$1){this.$_events.push({targetNodes:e$3,eventType:t,handler:o$1}),e$3.forEach(i$1=>i$1.addEventListener(t,o$1,$?{passive:!0}:void 0))},$_registerTriggerListeners(e$3,t,o$1,i$1,s$1){let r$2=o$1;i$1!=null&&(r$2=typeof i$1==`function`?i$1(r$2):i$1),r$2.forEach(p$5=>{let a$2=t[p$5];a$2&&this.$_registerEventListeners(e$3,a$2,s$1)})},$_removeEventListeners(e$3){let t=[];this.$_events.forEach(o$1=>{let{targetNodes:i$1,eventType:s$1,handler:r$2}=o$1;!e$3||e$3===s$1?i$1.forEach(p$5=>p$5.removeEventListener(s$1,r$2)):t.push(o$1)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e$3,t=!1){this.$_showFrameLocked||(this.hide({event:e$3}),e$3.closePopover?this.$emit(`close-directive`):this.$emit(`auto-hide`),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e$3,t){for(let o$1 of this.$_targetNodes){let i$1=o$1.getAttribute(e$3);i$1&&(o$1.removeAttribute(e$3),o$1.setAttribute(t,i$1))}},$_applyAttrsToTarget(e$3){for(let t of this.$_targetNodes)for(let o$1 in e$3){let i$1=e$3[o$1];i$1==null?t.removeAttribute(o$1):t.setAttribute(o$1,i$1)}},$_updateParentShownChildren(e$3){let t=this.parentPopper;for(;t;)e$3?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){let e$3=this.$_referenceNode.getBoundingClientRect();if(y>=e$3.left&&y<=e$3.right&&_$1>=e$3.top&&_$1<=e$3.bottom){let t=this.$_popperNode.getBoundingClientRect(),o$1=y-c,i$1=_$1-m,r$2=t.left+t.width/2-c+(t.top+t.height/2)-m+t.width+t.height,p$5=c+o$1*r$2,a$2=m+i$1*r$2;return C$1(c,m,p$5,a$2,t.left,t.top,t.left,t.bottom)||C$1(c,m,p$5,a$2,t.left,t.top,t.right,t.top)||C$1(c,m,p$5,a$2,t.right,t.top,t.right,t.bottom)||C$1(c,m,p$5,a$2,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<`u`&&typeof window<`u`){if(_e$1){let e$3=$?{passive:!0,capture:!0}:!0;document.addEventListener(`touchstart`,t=>ue(t,!0),e$3),document.addEventListener(`touchend`,t=>fe(t,!0),e$3)}else window.addEventListener(`mousedown`,e$3=>ue(e$3,!1),!0),window.addEventListener(`click`,e$3=>fe(e$3,!1),!0);window.addEventListener(`resize`,tt)}function ue(e$3,t){if(h$1.autoHideOnMousedown)Pe(e$3,t);else for(let o$1=0;o$1=0;i$1--){let s$1=d[i$1];try{let r$2=s$1.containsGlobalTarget=s$1.mouseDownContains||s$1.popperNode().contains(e$3.target);s$1.pendingHide=!1,requestAnimationFrame(()=>{if(s$1.pendingHide=!1,!o$1[s$1.randomId]&&ce(s$1,r$2,e$3)){if(s$1.$_handleGlobalClose(e$3,t),!e$3.closeAllPopover&&e$3.closePopover&&r$2){let a$2=s$1.parentPopper;for(;a$2;)o$1[a$2.randomId]=!0,a$2=a$2.parentPopper;return}let p$5=s$1.parentPopper;for(;p$5&&ce(p$5,p$5.containsGlobalTarget,e$3);)p$5.$_handleGlobalClose(e$3,t),p$5=p$5.parentPopper}})}catch{}}}function ce(e$3,t,o$1){return o$1.closeAllPopover||o$1.closePopover&&t||et(e$3,o$1)&&!t}function et(e$3,t){if(typeof e$3.autoHide==`function`){let o$1=e$3.autoHide(t);return e$3.lastAutoHide=o$1,o$1}return e$3.autoHide}function tt(){for(let e$3=0;e$3{c=y,m=_$1,y=e$3.clientX,_$1=e$3.clientY},$?{passive:!0}:void 0);function C$1(e$3,t,o$1,i$1,s$1,r$2,p$5,a$2){let l$1=((p$5-s$1)*(t-r$2)-(a$2-r$2)*(e$3-s$1))/((a$2-r$2)*(o$1-e$3)-(p$5-s$1)*(i$1-t)),u$1=((o$1-e$3)*(t-r$2)-(i$1-t)*(e$3-s$1))/((a$2-r$2)*(o$1-e$3)-(p$5-s$1)*(i$1-t));return l$1>=0&&l$1<=1&&u$1>=0&&u$1<=1}const ot={extends:Q$1()},B$1=(e$3,t)=>{let o$1=e$3.__vccOpts||e$3;for(let[i$1,s$1]of t)o$1[i$1]=s$1;return o$1};function it(e$3,t,o$1,i$1,s$1,r$2){return openBlock(),createElementBlock(`div`,{ref:`reference`,class:normalizeClass([`v-popper`,{"v-popper--shown":e$3.slotData.isShown}])},[renderSlot(e$3.$slots,`default`,normalizeProps(guardReactiveProps(e$3.slotData)))],2)}const st$1=B$1(ot,[[`render`,it]]);function nt(){var e$3=window.navigator.userAgent,t=e$3.indexOf(`MSIE `);if(t>0)return parseInt(e$3.substring(t+5,e$3.indexOf(`.`,t)),10);var o$1=e$3.indexOf(`Trident/`);if(o$1>0){var i$1=e$3.indexOf(`rv:`);return parseInt(e$3.substring(i$1+3,e$3.indexOf(`.`,i$1)),10)}var s$1=e$3.indexOf(`Edge/`);return s$1>0?parseInt(e$3.substring(s$1+5,e$3.indexOf(`.`,s$1)),10):-1}let z;function X(){X.init||(X.init=!0,z=nt()!==-1)}var E={name:`ResizeObserver`,props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:[`notify`],mounted(){X(),nextTick(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});let e$3=document.createElement(`object`);this._resizeObject=e$3,e$3.setAttribute(`aria-hidden`,`true`),e$3.setAttribute(`tabindex`,-1),e$3.onload=this.addResizeHandlers,e$3.type=`text/html`,z&&this.$el.appendChild(e$3),e$3.data=`about:blank`,z||this.$el.appendChild(e$3)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit(`notify`,{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener(`resize`,this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!z&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener(`resize`,this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const rt$1=withScopeId(`data-v-b329ee4c`);pushScopeId(`data-v-b329ee4c`);const pt$1={class:`resize-observer`,tabindex:`-1`};popScopeId();const at=rt$1((e$3,t,o$1,i$1,s$1,r$2)=>(openBlock(),createBlock(`div`,pt$1)));E.render=at,E.__scopeId=`data-v-b329ee4c`,E.__file=`src/components/ResizeObserver.vue`;const Z=(e$3=`theme`)=>({computed:{themeClass(){return Ze(this[e$3])}}}),dt$2=defineComponent({name:`VPopperContent`,components:{ResizeObserver:E},mixins:[Z()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:[`hide`,`resize`],methods:{toPx(e$3){return e$3!=null&&!isNaN(e$3)?`${e$3}px`:null}}}),lt=[`id`,`aria-hidden`,`tabindex`,`data-popper-placement`],ht$1={ref:`inner`,class:`v-popper__inner`},ut$1=createBaseVNode(`div`,{class:`v-popper__arrow-outer`},null,-1),ft$1=createBaseVNode(`div`,{class:`v-popper__arrow-inner`},null,-1),ct$1=[ut$1,ft$1];function mt$1(e$3,t,o$1,i$1,s$1,r$2){let p$5=resolveComponent(`ResizeObserver`);return openBlock(),createElementBlock(`div`,{id:e$3.popperId,ref:`popover`,class:normalizeClass([`v-popper__popper`,[e$3.themeClass,e$3.classes.popperClass,{"v-popper__popper--shown":e$3.shown,"v-popper__popper--hidden":!e$3.shown,"v-popper__popper--show-from":e$3.classes.showFrom,"v-popper__popper--show-to":e$3.classes.showTo,"v-popper__popper--hide-from":e$3.classes.hideFrom,"v-popper__popper--hide-to":e$3.classes.hideTo,"v-popper__popper--skip-transition":e$3.skipTransition,"v-popper__popper--arrow-overflow":e$3.result&&e$3.result.arrow.overflow,"v-popper__popper--no-positioning":!e$3.result}]]),style:normalizeStyle(e$3.result?{position:e$3.result.strategy,transform:`translate3d(${Math.round(e$3.result.x)}px,${Math.round(e$3.result.y)}px,0)`}:void 0),"aria-hidden":e$3.shown?`false`:`true`,tabindex:e$3.autoHide?0:void 0,"data-popper-placement":e$3.result?e$3.result.placement:void 0,onKeyup:t[2]||=withKeys(a$2=>e$3.autoHide&&e$3.$emit(`hide`),[`esc`])},[createBaseVNode(`div`,{class:`v-popper__backdrop`,onClick:t[0]||=a$2=>e$3.autoHide&&e$3.$emit(`hide`)}),createBaseVNode(`div`,{class:`v-popper__wrapper`,style:normalizeStyle(e$3.result?{transformOrigin:e$3.result.transformOrigin}:void 0)},[createBaseVNode(`div`,ht$1,[e$3.mounted?(openBlock(),createElementBlock(Fragment,{key:0},[createBaseVNode(`div`,null,[renderSlot(e$3.$slots,`default`)]),e$3.handleResize?(openBlock(),createBlock(p$5,{key:0,onNotify:t[1]||=a$2=>e$3.$emit(`resize`,a$2)})):createCommentVNode(``,!0)],64)):createCommentVNode(``,!0)],512),createBaseVNode(`div`,{ref:`arrow`,class:`v-popper__arrow-container`,style:normalizeStyle(e$3.result?{left:e$3.toPx(e$3.result.arrow.x),top:e$3.toPx(e$3.result.arrow.y)}:void 0)},ct$1,4)],4)],46,lt)}const ee$1=B$1(dt$2,[[`render`,mt$1]]),te={methods:{show(...e$3){return this.$refs.popper.show(...e$3)},hide(...e$3){return this.$refs.popper.hide(...e$3)},dispose(...e$3){return this.$refs.popper.dispose(...e$3)},onResize(...e$3){return this.$refs.popper.onResize(...e$3)}}};let K=function(){};typeof window<`u`&&(K=window.Element);const gt$1=defineComponent({name:`VPopperWrapper`,components:{Popper:st$1,PopperContent:ee$1},mixins:[te,Z(`finalTheme`)],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,K,Boolean],default:void 0},boundary:{type:[String,K],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e$3=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e$3=>e$3!==this.$refs.popperContent.$el)}}});function wt$1(e$3,t,o$1,i$1,s$1,r$2){let p$5=resolveComponent(`PopperContent`),a$2=resolveComponent(`Popper`);return openBlock(),createBlock(a$2,mergeProps({ref:`popper`},e$3.$props,{theme:e$3.finalTheme,"target-nodes":e$3.getTargetNodes,"popper-node":()=>e$3.$refs.popperContent.$el,class:[e$3.themeClass],onShow:t[0]||=()=>e$3.$emit(`show`),onHide:t[1]||=()=>e$3.$emit(`hide`),"onUpdate:shown":t[2]||=l$1=>e$3.$emit(`update:shown`,l$1),onApplyShow:t[3]||=()=>e$3.$emit(`apply-show`),onApplyHide:t[4]||=()=>e$3.$emit(`apply-hide`),onCloseGroup:t[5]||=()=>e$3.$emit(`close-group`),onCloseDirective:t[6]||=()=>e$3.$emit(`close-directive`),onAutoHide:t[7]||=()=>e$3.$emit(`auto-hide`),onResize:t[8]||=()=>e$3.$emit(`resize`)}),{default:withCtx(({popperId:l$1,isShown:u$1,shouldMountContent:L$1,skipTransition:D$1,autoHide:I,show:F$2,hide:v$1,handleResize:R$1,onResize:j$1,classes:V$1,result:Ee$2})=>[renderSlot(e$3.$slots,`default`,{shown:u$1,show:F$2,hide:v$1}),createVNode(p$5,{ref:`popperContent`,"popper-id":l$1,theme:e$3.finalTheme,shown:u$1,mounted:L$1,"skip-transition":D$1,"auto-hide":I,"handle-resize":R$1,classes:V$1,result:Ee$2,onHide:v$1,onResize:j$1},{default:withCtx(()=>[renderSlot(e$3.$slots,`popper`,{shown:u$1,hide:v$1})]),_:2},1032,[`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:3},16,[`theme`,`target-nodes`,`popper-node`,`class`])}const k=B$1(gt$1,[[`render`,wt$1]]),Se={...k,name:`VDropdown`,vPopperTheme:`dropdown`},be={...k,name:`VMenu`,vPopperTheme:`menu`},Ce$1={...k,name:`VTooltip`,vPopperTheme:`tooltip`},$t$1=defineComponent({name:`VTooltipDirective`,components:{Popper:Q$1(),PopperContent:ee$1},mixins:[te],inheritAttrs:!1,props:{theme:{type:String,default:`tooltip`},html:{type:Boolean,default:e$3=>S(e$3.theme,`html`)},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e$3=>S(e$3.theme,`loadingContent`)},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content==`function`},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e$3){if(typeof this.content==`function`&&this.$_isShown&&(e$3||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;let t=++this.$_fetchId,o$1=this.content(this);o$1.then?o$1.then(i$1=>this.onResult(t,i$1)):this.onResult(t,o$1)}},onResult(e$3,t){e$3===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),vt$1=[`innerHTML`],yt$1=[`textContent`];function _t$1(e$3,t,o$1,i$1,s$1,r$2){let p$5=resolveComponent(`PopperContent`),a$2=resolveComponent(`Popper`);return openBlock(),createBlock(a$2,mergeProps({ref:`popper`},e$3.$attrs,{theme:e$3.theme,"target-nodes":e$3.targetNodes,"popper-node":()=>e$3.$refs.popperContent.$el,onApplyShow:e$3.onShow,onApplyHide:e$3.onHide}),{default:withCtx(({popperId:l$1,isShown:u$1,shouldMountContent:L$1,skipTransition:D$1,autoHide:I,hide:F$2,handleResize:v$1,onResize:R$1,classes:j$1,result:V$1})=>[createVNode(p$5,{ref:`popperContent`,class:normalizeClass({"v-popper--tooltip-loading":e$3.loading}),"popper-id":l$1,theme:e$3.theme,shown:u$1,mounted:L$1,"skip-transition":D$1,"auto-hide":I,"handle-resize":v$1,classes:j$1,result:V$1,onHide:F$2,onResize:R$1},{default:withCtx(()=>[e$3.html?(openBlock(),createElementBlock(`div`,{key:0,innerHTML:e$3.finalContent},null,8,vt$1)):(openBlock(),createElementBlock(`div`,{key:1,textContent:toDisplayString(e$3.finalContent)},null,8,yt$1))]),_:2},1032,[`class`,`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:1},16,[`theme`,`target-nodes`,`popper-node`,`onApplyShow`,`onApplyHide`])}const ze=B$1($t$1,[[`render`,_t$1]]),Ae=`v-popper--has-tooltip`;function Tt$1(e$3,t){let o$1=e$3.placement;if(!o$1&&t)for(let i$1 of Te$1)t[i$1]&&(o$1=i$1);return o$1||=S(e$3.theme||`tooltip`,`placement`),o$1}function Ne(e$3,t,o$1){let i$1,s$1=typeof t;return i$1=s$1===`string`?{content:t}:t&&s$1===`object`?t:{content:!1},i$1.placement=Tt$1(i$1,o$1),i$1.targetNodes=()=>[e$3],i$1.referenceNode=()=>e$3,i$1}let x$1,b,Pt$1=0;function St$1(){if(x$1)return;b=ref([]),x$1=createApp({name:`VTooltipDirectiveApp`,setup(){return{directives:b}},render(){return this.directives.map(t=>h(ze,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});let e$3=document.createElement(`div`);document.body.appendChild(e$3),x$1.mount(e$3)}function bt$1(e$3,t,o$1){St$1();let i$1=ref(Ne(e$3,t,o$1)),s$1=ref(!1),r$2={id:Pt$1++,options:i$1,shown:s$1};return b.value.push(r$2),e$3.classList&&e$3.classList.add(Ae),e$3.$_popper={options:i$1,item:r$2,show(){s$1.value=!0},hide(){s$1.value=!1}}}function He(e$3){if(e$3.$_popper){let t=b.value.indexOf(e$3.$_popper.item);t!==-1&&b.value.splice(t,1),delete e$3.$_popper,delete e$3.$_popperOldShown,delete e$3.$_popperMountTarget}e$3.classList&&e$3.classList.remove(Ae)}function me(e$3,{value:t,modifiers:o$1}){let i$1=Ne(e$3,t,o$1);if(!i$1.content||S(i$1.theme||`tooltip`,`disabled`))He(e$3);else{let s$1;e$3.$_popper?(s$1=e$3.$_popper,s$1.options.value=i$1):s$1=bt$1(e$3,t,o$1),typeof t.shown<`u`&&t.shown!==e$3.$_popperOldShown&&(e$3.$_popperOldShown=t.shown,t.shown?s$1.show():s$1.hide())}}const oe={beforeMount:me,updated:me,beforeUnmount(e$3){He(e$3)}};function ge(e$3){e$3.addEventListener(`mousedown`,H),e$3.addEventListener(`click`,H),e$3.addEventListener(`touchstart`,Oe$1,$?{passive:!0}:!1)}function we(e$3){e$3.removeEventListener(`mousedown`,H),e$3.removeEventListener(`click`,H),e$3.removeEventListener(`touchstart`,Oe$1),e$3.removeEventListener(`touchend`,Me),e$3.removeEventListener(`touchcancel`,Be$1)}function H(e$3){let t=e$3.currentTarget;e$3.closePopover=!t.$_vclosepopover_touch,e$3.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Oe$1(e$3){if(e$3.changedTouches.length===1){let t=e$3.currentTarget;t.$_vclosepopover_touch=!0;let o$1=e$3.changedTouches[0];t.$_vclosepopover_touchPoint=o$1,t.addEventListener(`touchend`,Me),t.addEventListener(`touchcancel`,Be$1)}}function Me(e$3){let t=e$3.currentTarget;if(t.$_vclosepopover_touch=!1,e$3.changedTouches.length===1){let o$1=e$3.changedTouches[0],i$1=t.$_vclosepopover_touchPoint;e$3.closePopover=Math.abs(o$1.screenY-i$1.screenY)<20&&Math.abs(o$1.screenX-i$1.screenX)<20,e$3.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Be$1(e$3){let t=e$3.currentTarget;t.$_vclosepopover_touch=!1}const ie$1={beforeMount(e$3,{value:t,modifiers:o$1}){e$3.$_closePopoverModifiers=o$1,(typeof t>`u`||t)&&ge(e$3)},updated(e$3,{value:t,oldValue:o$1,modifiers:i$1}){e$3.$_closePopoverModifiers=i$1,t!==o$1&&(typeof t>`u`||t?ge(e$3):we(e$3))},beforeUnmount(e$3){we(e$3)}},Ht=h$1,Ot$1=oe,Mt=oe,Bt$1=ie$1,Et=ie$1,kt=Se,Lt=be,Dt$1=Q$1,It=ee$1,Ft=te,Rt=k,jt=Z,Vt=Ce$1,Wt=ze,_hoisted_1$26={class:`flex-1 truncate`},_hoisted_2$17={class:`min-w-[160px] flex flex-col gap-0.5 border border-neutral-200 rounded-lg bg-white p-1 shadow-lg dark:border-neutral-800 dark:bg-neutral-900 dark:bg-neutral-900`};var Select_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Select`,props:mergeModels({options:{},placeholder:{},disabled:{type:Boolean},title:{},layout:{}},{modelValue:{required:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,show=ref(!1),modelValue=useModel(__props,`modelValue`);function selectOption(value$1){modelValue.value=value$1}function handleHide(){show.value=!1}return provide(`selectOption`,selectOption),provide(`hide`,handleHide),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(kt),{"auto-size":``,"auto-boundary-max-size":``,"w-full":``},{popper:withCtx(({hide:hide$1})=>[createBaseVNode(`div`,_hoisted_2$17,[renderSlot(_ctx.$slots,`options`,{hide:hide$1},()=>[props.options&&props.options.length?(openBlock(!0),createElementBlock(Fragment,{key:0},renderList(props.options,option$1=>(openBlock(),createBlock(Option_default,{key:option$1.value,value:option$1.value,label:option$1.label,active:modelValue.value===option$1.value,onClick:$event=>{selectOption(option$1.value),hide$1()}},null,8,[`value`,`label`,`active`,`onClick`]))),128)):createCommentVNode(``,!0)])])]),default:withCtx(()=>[createBaseVNode(`div`,{"min-w":`[160px]`,p:`2.5`,"w-full":``,class:normalizeClass([`focus:ring-2 focus:ring-black/10`,[props.disabled?`pointer-events-none`:``]]),border:`~ 2 solid dark:neutral-800`,text:`xs dark:neutral-200 disabled:neutral-400 dark:disabled:neutral-600 neutral-700`,bg:`white dark:neutral-900 disabled:neutral-100 hover:neutral-50 dark:disabled:neutral-800 dark:hover:neutral-800 `,cursor:`disabled:not-allowed pointer`,flex:``,"items-center":``,"gap-2":``,"rounded-lg":``,"shadow-sm":``,"outline-none":``,"transition-colors":``,"duration-150":``,"ease-in-out":``},[createBaseVNode(`div`,_hoisted_1$26,[renderSlot(_ctx.$slots,`default`,{value:modelValue.value},()=>{var _props$options2;return[createTextVNode(toDisplayString(((_props$options2=props.options)==null||(_props$options2=_props$options2.find(item=>item.value===modelValue.value))==null?void 0:_props$options2.label)||modelValue.value),1)]})]),_cache$1[0]||=createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``,class:`h-3.5 w-3.5 text-neutral-500 dark:text-neutral-400`},null,-1)],2)]),_:3}))}}),Select_default=Select_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$25={op50:``};var Collapsable_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Collapsable`,props:mergeModels({default:{type:Boolean},label:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,visible=useModel(__props,`modelValue`);watchEffect(()=>{props.default!=null&&(visible.value=!!props.default)});function setVisible(value$1){return visible.value=value$1,value$1}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,null,[renderSlot(_ctx.$slots,`trigger`,normalizeProps(guardReactiveProps({visible:visible.value,setVisible})),()=>[createBaseVNode(`button`,{sticky:``,"top-0":``,"z-10":``,flex:``,"items-center":``,"justify-between":``,px2:``,py1:``,"text-sm":``,"backdrop-blur-xl":``,onClick:_cache$1[0]||=$event=>visible.value=!visible.value},[createBaseVNode(`span`,null,toDisplayString(props.label??`Collapsable`),1),_cache$1[1]||=createTextVNode(),createBaseVNode(`span`,_hoisted_1$25,toDisplayString(visible.value?`▲`:`▼`),1)])]),createVNode(unref(TransitionVertical_default),null,{default:withCtx(()=>[visible.value?renderSlot(_ctx.$slots,`default`,normalizeProps(mergeProps({key:0},{visible:visible.value,setVisible}))):createCommentVNode(``,!0)]),_:3})]))}}),Collapsable_default=Collapsable_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$24=[`onClick`],_hoisted_2$16={flex:``,"gap-1.5":``};var Section_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Section`,props:{title:{},icon:{},innerClass:{},expand:{type:Boolean,default:!0}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(Collapsable_default,{default:_ctx.expand},{trigger:withCtx(slotProps=>[createBaseVNode(`button`,{class:`w-full flex items-center justify-between rounded-lg px-4 py-3 outline-none transition-all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`,onClick:$event=>slotProps.setVisible(!slotProps.visible)},[createBaseVNode(`div`,_hoisted_2$16,[createBaseVNode(`div`,{class:normalizeClass(_ctx.icon),"size-6":``},null,2),createTextVNode(` `+toDisplayString(_ctx.title),1)]),createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``,transition:`transform duration-250`,class:normalizeClass({"rotate-180":slotProps.visible})},null,2)],8,_hoisted_1$24)]),default:withCtx(()=>[createBaseVNode(`div`,{grid:``,"gap-2":``,"p-4":``,class:normalizeClass(_ctx.innerClass)},[renderSlot(_ctx.$slots,`default`)],2)]),_:3},8,[`default`]))}}),Section_default=Section_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$23={"z-1":``,"flex-1":``},_hoisted_2$15={"text-lg":``,"font-normal":``,class:`menu-icon-item-title`,transition:`all ease-in-out duration-400`},_hoisted_3$11={text:`sm neutral-500 dark:neutral-400`,class:`menu-icon-item-description`,transition:`all ease-in-out duration-400`};var IconItem_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`IconItem`,props:{title:{},description:{},icon:{},iconTemplate:{type:Boolean},to:{}},setup(__props){return(_ctx,_cache$1)=>{let _component_RouterLink=resolveComponent(`RouterLink`);return openBlock(),createBlock(_component_RouterLink,{box:`border`,flex:`~ row`,bg:`neutral-50 dark:neutral-900`,border:`neutral-100 dark:neutral-800/25 hover:primary-500/30 dark:hover:primary-400/30 solid 2`,"drop-shadow":`none hover:[0px_4px_4px_rgba(220,220,220,0.4)] active:[0px_0px_0px_rgba(220,220,220,0.25)] dark:hover:none`,class:`menu-icon-item`,transition:`all ease-in-out duration-400`,relative:``,"w-full":``,"items-center":``,"overflow-hidden":``,"rounded-lg":``,"p-5":``,"text-left":``,cursor:`pointer`,to:_ctx.to},{default:withCtx(()=>[createBaseVNode(`div`,_hoisted_1$23,[createBaseVNode(`div`,_hoisted_2$15,toDisplayString(_ctx.title),1),createBaseVNode(`div`,_hoisted_3$11,[createBaseVNode(`span`,null,toDisplayString(_ctx.description),1)])]),typeof _ctx.icon==`string`?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`menu-icon-item-icon`,[_ctx.icon]]),transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-24":``,"translate-y-4":``,text:`neutral-400/50 dark:neutral-600/50`},null,2)):createCommentVNode(``,!0),_ctx.iconTemplate?renderSlot(_ctx.$slots,`icon`,{key:1},void 0,!0):createCommentVNode(``,!0)]),_:3},8,[`to`])}}}),IconItem_default=__plugin_vue_export_helper_default(IconItem_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-d08788bb`]]);const _hoisted_1$22={flex:`~ col`,bg:`neutral-50 dark:neutral-800`,border:`neutral-100 dark:neutral-800/25 hover:primary-500/30 dark:hover:primary-400/30 solid 2`,"drop-shadow":`none hover:[0px_4px_4px_rgba(220,220,220,0.4)] active:[0px_0px_0px_rgba(220,220,220,0.25)] dark:hover:none`,class:`menu-icon-status-item`,transition:`all ease-in-out duration-400`,"w-full":``,"cursor-pointer":``,"of-hidden":``,"rounded-xl":``},_hoisted_2$14={"z-1":``,"flex-1":``},_hoisted_3$10={"text-lg":``,"font-normal":``,class:`menu-icon-status-item-title`,transition:`all ease-in-out duration-400`},_hoisted_4$9={text:`sm neutral-500 dark:neutral-400`,class:`menu-icon-status-item-description`,transition:`all ease-in-out duration-400`},_hoisted_5$8=[`src`],_hoisted_6$7={"p-2":``},_hoisted_7$6={key:0,"size-3":``,bg:`green-500 dark:green-600`,"rounded-full":``},_hoisted_8$5={key:1,"size-3":``,bg:`neutral-400 dark:neutral-500`,"rounded-full":``};var IconStatusItem_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`IconStatusItem`,props:{title:{},description:{},icon:{},iconColor:{},iconImage:{},to:{},configured:{type:Boolean}},setup(__props){let props=__props;return(_ctx,_cache$1)=>{let _component_RouterLink=resolveComponent(`RouterLink`);return openBlock(),createElementBlock(`div`,_hoisted_1$22,[createVNode(_component_RouterLink,{flex:`~ row`,class:`menu-icon-status-item-link`,bg:`white dark:neutral-900`,transition:`all ease-in-out duration-400`,relative:``,"h-full":``,"w-full":``,"items-center":``,"overflow-hidden":``,"rounded-lg":``,"p-5":``,"text-left":``,to:props.to},{default:withCtx(()=>[createBaseVNode(`div`,_hoisted_2$14,[createBaseVNode(`div`,_hoisted_3$10,toDisplayString(props.title),1),createBaseVNode(`div`,_hoisted_4$9,[createBaseVNode(`span`,null,toDisplayString(props.description||``),1)])]),props.icon?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`menu-icon-status-item-icon`,[props.icon]]),transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-16":``,"translate-y-2":``,text:`neutral-400/50 dark:neutral-600/50`,"grayscale-100":``},null,2)):createCommentVNode(``,!0),props.iconColor?(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`menu-icon-status-item-icon-color`,[props.iconColor]]),transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-16":``,"translate-y-2":``,text:`neutral-400/50 dark:neutral-600/50`,"grayscale-100":``},null,2)):createCommentVNode(``,!0),props.iconImage?(openBlock(),createElementBlock(`img`,{key:2,src:props.iconImage,class:`menu-icon-status-item-icon-image`,transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-16":``,"translate-y-2":``,"grayscale-100":``},null,8,_hoisted_5$8)):createCommentVNode(``,!0)]),_:1},8,[`to`]),createBaseVNode(`div`,_hoisted_6$7,[props.configured?(openBlock(),createElementBlock(`div`,_hoisted_7$6)):(openBlock(),createElementBlock(`div`,_hoisted_8$5))])])}}}),IconStatusItem_default=__plugin_vue_export_helper_default(IconStatusItem_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-93a9757f`]]);const _hoisted_1$21=[`checked`,`name`,`value`],_hoisted_2$13={class:`relative mr-3 mt-0.5 flex-shrink-0`},_hoisted_3$9={class:`w-full flex flex-col gap-2`},_hoisted_4$8={class:`flex items-center`},_hoisted_5$7={key:0,class:`relative`},_hoisted_6$6=[`title`],_hoisted_7$5={key:1,class:`mt-2`};var RadioCardDetail_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RadioCardDetail`,props:mergeModels({id:{},name:{},value:{},title:{},description:{},deprecated:{type:Boolean,default:!1},showExpandCollapse:{type:Boolean,default:!0},expandCollapseThreshold:{default:100},customInputValue:{default:``},customInputPlaceholder:{default:``},showCustomInput:{type:Boolean,default:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let modelValue=useModel(__props,`modelValue`),isExpanded=ref(!1);function toggleExpansion(){isExpanded.value=!isExpanded.value}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,{key:_ctx.id,class:normalizeClass([`form_radio-card-detail relative flex cursor-pointer items-start rounded-xl p-3 pr-[20px]`,[modelValue.value===_ctx.value?`bg-primary-50 dark:bg-primary-900/20 border-primary-100 dark:border-primary-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`:`bg-white dark:bg-neutral-900/20 border-neutral-100 dark:border-neutral-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`,modelValue.value===_ctx.value?`form_radio-card-detail-active`:``,_ctx.deprecated?`opacity-60`:``]]),transition:`all duration-200 ease-in-out`,border:`2 solid`},[withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,checked:modelValue.value===_ctx.value,type:`radio`,name:_ctx.name,value:_ctx.value,class:`absolute opacity-0`},null,8,_hoisted_1$21),[[vModelRadio,modelValue.value]]),createBaseVNode(`div`,_hoisted_2$13,[createBaseVNode(`div`,{class:normalizeClass([`size-5 border-2 rounded-full transition-colors duration-200`,[modelValue.value===_ctx.value?`border-primary-500 dark:border-primary-400`:`border-neutral-300 dark:border-neutral-600`]])},[createBaseVNode(`div`,{class:normalizeClass([`absolute left-1/2 top-1/2 size-3 rounded-full transition-opacity duration-200 -translate-x-1/2 -translate-y-1/2`,[modelValue.value===_ctx.value?`opacity-100 bg-primary-500 dark:bg-primary-400`:`opacity-0`]])},null,2)],2)]),createBaseVNode(`div`,_hoisted_3$9,[createBaseVNode(`div`,_hoisted_4$8,[createBaseVNode(`span`,{class:normalizeClass([`line-clamp-1 font-normal`,[modelValue.value===_ctx.value?`text-neutral-700 dark:text-neutral-300`:`text-neutral-700 dark:text-neutral-400`]])},toDisplayString(_ctx.title),3)]),_ctx.description?(openBlock(),createElementBlock(`div`,_hoisted_5$7,[createVNode(unref(TransitionVertical_default),null,{default:withCtx(()=>[!isExpanded.value||!_ctx.showExpandCollapse?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`line-clamp-2 cursor-pointer text-xs`,[modelValue.value===_ctx.value?`text-neutral-600 dark:text-neutral-400`:`text-neutral-500 dark:text-neutral-500`]]),title:_ctx.description,onClick:withModifiers(toggleExpansion,[`prevent`])},toDisplayString(_ctx.description),11,_hoisted_6$6)):(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`cursor-pointer text-xs`,[modelValue.value===_ctx.value?`text-neutral-600 dark:text-neutral-400`:`text-neutral-500 dark:text-neutral-500`]]),onClick:withModifiers(toggleExpansion,[`prevent`])},toDisplayString(_ctx.description),3))]),_:1}),_ctx.showExpandCollapse&&_ctx.description.length>_ctx.expandCollapseThreshold?(openBlock(),createElementBlock(`button`,{key:0,class:`mt-0.5 inline-flex items-center text-xs text-primary-500 dark:text-primary-600`,onClick:withModifiers(toggleExpansion,[`prevent`])},[createBaseVNode(`span`,null,toDisplayString(isExpanded.value?`Show less`:`Show more`),1),createBaseVNode(`div`,{class:normalizeClass([{"rotate-180":isExpanded.value},`transition-transform duration-200`])},_cache$1[2]||=[createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``,"ml-0.5":``,"text-xs":``},null,-1)],2)])):createCommentVNode(``,!0)])):createCommentVNode(``,!0),_ctx.showCustomInput&&modelValue.value===_ctx.value?(openBlock(),createElementBlock(`div`,_hoisted_7$5,[createVNode(unref(Input_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[1]||=$event=>modelValue.value=$event,type:`text`,class:`w-full border border-neutral-300 rounded bg-white px-2 py-1 text-sm dark:border-neutral-700 dark:bg-neutral-900`,placeholder:_ctx.customInputPlaceholder},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0)])],2))}}),RadioCardDetail_default=__plugin_vue_export_helper_default(RadioCardDetail_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-fb6236db`]]);const _hoisted_1$20={class:`radio-card-detail-many-select`},_hoisted_2$12={key:0,class:`relative`,"inline-flex":`~`,"w-full":``,"items-center":``},_hoisted_3$8=[`placeholder`],_hoisted_4$7={class:`mt-4 space-y-2`},_hoisted_5$6={key:0,class:`text-sm text-neutral-500 dark:text-neutral-400`},_hoisted_6$5={key:1,class:`flex items-center gap-3 border border-2 border-amber-200 rounded-xl bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},_hoisted_7$4={class:`flex flex-col`},_hoisted_8$4={class:`font-medium`},_hoisted_9$4={class:`text-sm text-amber-600 dark:text-amber-400`},_hoisted_10$4={class:`relative`};var RadioCardManySelect_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RadioCardManySelect`,props:mergeModels({items:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`Search...`},searchNoResultsTitle:{default:`No results found`},searchNoResultsDescription:{default:`Try a different search term`},searchResultsText:{default:`{count} of {total} results`},customInputPlaceholder:{default:`Enter custom value`},expandButtonText:{default:`Show more`},collapseButtonText:{default:`Show less`},showMore:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{}}),emits:mergeModels([`update:customValue`],[`update:modelValue`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,modelValue=useModel(__props,`modelValue`),searchQuery=ref(``),isListExpanded=ref(!1),customValue=ref(``),filteredItems=computed(()=>{if(!searchQuery.value)return props.items;let query=searchQuery.value.toLowerCase();return props.items.filter(item=>item.name.toLowerCase().includes(query)||item.description&&item.description.toLowerCase().includes(query))});function updateCustomValue(value$1){customValue.value=value$1,emit$1(`update:customValue`,value$1)}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$20,[_ctx.searchable?(openBlock(),createElementBlock(`div`,_hoisted_2$12,[_cache$1[4]||=createBaseVNode(`div`,{class:`pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3`},[createBaseVNode(`div`,{"i-solar:magnifer-line-duotone":``,class:`text-neutral-500 dark:text-neutral-400`})],-1),withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>searchQuery.value=$event,type:`search`,class:`w-full rounded-xl p-2.5 pl-10 text-sm outline-none`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,bg:`white dark:neutral-900`,placeholder:_ctx.searchPlaceholder},null,8,_hoisted_3$8),[[vModelText,searchQuery.value]])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_4$7,[searchQuery.value?(openBlock(),createElementBlock(`div`,_hoisted_5$6,toDisplayString(_ctx.searchResultsText.replace(`{count}`,filteredItems.value.length.toString()).replace(`{total}`,_ctx.items.length.toString())),1)):createCommentVNode(``,!0),searchQuery.value&&filteredItems.value.length===0?(openBlock(),createElementBlock(`div`,_hoisted_6$5,[_cache$1[5]||=createBaseVNode(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),createBaseVNode(`div`,_hoisted_7$4,[createBaseVNode(`span`,_hoisted_8$4,toDisplayString(_ctx.searchNoResultsTitle),1),createBaseVNode(`span`,_hoisted_9$4,toDisplayString(_ctx.searchNoResultsDescription.replace(`{query}`,searchQuery.value)),1)])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_10$4,[createBaseVNode(`div`,{class:normalizeClass([`grid auto-cols-[350px] grid-flow-col max-h-[calc(100dvh-7lh)] gap-4 overflow-x-auto pb-4 scrollbar-none`,[isListExpanded.value?`grid-cols-1 md:grid-cols-2 grid-flow-row auto-cols-auto`:``]]),transition:`all duration-200 ease-in-out`,style:{"scroll-snap-type":`x mandatory`}},[(openBlock(!0),createElementBlock(Fragment,null,renderList(filteredItems.value,item=>(openBlock(),createBlock(RadioCardDetail_default,{id:item.id,key:item.id,modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[1]||=$event=>modelValue.value=$event,value:item.id,title:item.name,description:item.description,deprecated:item.deprecated,"show-expand-collapse":_ctx.showMore,"expand-collapse-threshold":100,"show-custom-input":item.customizable,"custom-input-value":customValue.value,"custom-input-placeholder":_ctx.customInputPlaceholder,name:`radio-card-detail-many-select`,class:`scroll-snap-align-start`,"onUpdate:customInputValue":_cache$1[2]||=$event=>updateCustomValue($event)},null,8,[`id`,`modelValue`,`value`,`title`,`description`,`deprecated`,`show-expand-collapse`,`show-custom-input`,`custom-input-value`,`custom-input-placeholder`]))),128))],2),createBaseVNode(`div`,{bg:`neutral-100 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,class:normalizeClass([isListExpanded.value?`w-full`:`mt-4 w-full rounded-lg`])},[createBaseVNode(`button`,{"w-full":``,flex:``,"items-center":``,"justify-center":``,"gap-2":``,"rounded-lg":``,"py-2":``,transition:`all duration-200 ease-in-out`,class:normalizeClass([isListExpanded.value?`bg-primary-500 hover:bg-primary-600 text-white`:`bg-white dark:bg-neutral-900 hover:bg-neutral-100 dark:hover:bg-neutral-800`]),onClick:_cache$1[3]||=$event=>isListExpanded.value=!isListExpanded.value},[createBaseVNode(`span`,null,toDisplayString(isListExpanded.value?_ctx.collapseButtonText:_ctx.expandButtonText),1),createBaseVNode(`div`,{class:normalizeClass([isListExpanded.value?`rotate-180`:``,`text-lg`]),"i-solar:alt-arrow-down-linear":``,transition:`transform duration-200 ease-in-out`},null,2)],2)],2)])])]))}}),RadioCardManySelect_default=__plugin_vue_export_helper_default(RadioCardManySelect_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-98ce709a`]]);const _hoisted_1$19=[`checked`,`name`,`value`],_hoisted_2$11={flex:`~ col`,"min-h-16":``,"w-full":``,"items-start":``,"justify-center":``,"pb-2":``,"pl-5":``,"pr-4":``,"pt-2":``};var RadioCardSimple_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RadioCardSimple`,props:mergeModels({id:{},name:{},value:{},title:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,{key:_ctx.id,border:`2px solid`,class:normalizeClass([`form_radio-card-simple relative`,[modelValue.value===_ctx.value?`bg-primary-50 dark:bg-primary-900/20 border-primary-100 dark:border-primary-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`:`bg-white dark:bg-neutral-900/20 border-neutral-100 dark:border-neutral-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`,modelValue.value===_ctx.value?`form_radio-card-simple-active`:``]]),transition:`all duration-200 ease-in-out`,flex:`~ col`,block:``,"min-w-50":``,"w-fit":``,"cursor-pointer":``,"items-start":``,"rounded-xl":``,"p-4":``,"text-left":``},[withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,checked:modelValue.value===_ctx.value,type:`radio`,name:_ctx.name,value:_ctx.value,class:`absolute opacity-0 [&:checked+div]:border-primary-500 [&:checked+div_.radio-dot]:opacity-100 dark:[&:checked+div]:border-primary-400`},null,8,_hoisted_1$19),[[vModelRadio,modelValue.value]]),_cache$1[1]||=createBaseVNode(`div`,{class:`radio-circle absolute left-2 top-2 size-5 rounded-full`,border:`2 solid neutral-300 dark:neutral-600`,transition:`all duration-200 ease-in-out`},[createBaseVNode(`div`,{class:`radio-dot absolute left-1/2 top-1/2 size-3 rounded-full opacity-0 -translate-x-1/2 -translate-y-1/2`,transition:`all duration-200 ease-in-out`,bg:`primary-500 dark:primary-400`})],-1),createBaseVNode(`div`,_hoisted_2$11,[createBaseVNode(`span`,{class:normalizeClass([`radio-item-name font-normal`,[modelValue.value===_ctx.value?`text-neutral-700 dark:text-neutral-300`:`text-neutral-500 dark:text-neutral-500`]]),text:`md`,transition:`all duration-200 ease-in-out`},toDisplayString(_ctx.title),3),_ctx.description?(openBlock(),createElementBlock(`span`,{key:0,class:normalizeClass([`radio-item-description`,[modelValue.value===_ctx.value?`text-neutral-600 dark:text-neutral-400`:`text-neutral-400 dark:text-neutral-600`]]),transition:`all duration-200 ease-in-out`},toDisplayString(_ctx.description),3)):createCommentVNode(``,!0)]),_cache$1[2]||=createBaseVNode(`div`,{class:`bg-dotted-neutral-200/80 dark:bg-dotted-neutral-700/50 [input:checked~&]:bg-dotted-primary-300/50 dark:[input:checked~&]:bg-dotted-primary-200/20`,absolute:``,"inset-0":``,"z--1":``,style:{"background-size":`10px 10px`,"mask-image":`linear-gradient(165deg, white 30%, transparent 50%)`}},null,-1)],2))}}),RadioCardSimple_default=__plugin_vue_export_helper_default(RadioCardSimple_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-880ce73f`]]);const _hoisted_1$18={class:`p-3`},_hoisted_2$10={class:`flex items-start`},_hoisted_3$7=[`checked`,`name`,`value`],_hoisted_4$6={class:`relative mr-3 mt-0.5 flex-shrink-0`},_hoisted_5$5={key:0,class:`i-solar:pause-circle-bold-duotone text-xl text-neutral-400 dark:text-neutral-500`},_hoisted_6$4={key:1,class:`i-solar:play-circle-bold-duotone text-xl text-neutral-400 dark:text-neutral-500`},_hoisted_7$3={key:1,class:`mt-auto w-full flex items-center justify-center bg-neutral-50 py-3 text-xs text-neutral-400 italic dark:bg-neutral-800/50 dark:text-neutral-600`},_hoisted_8$3={class:`flex-1 cursor-pointer`},_hoisted_9$3={class:`flex items-center`},_hoisted_10$3={key:0,class:`mt-1 flex flex-wrap gap-1`},_hoisted_11$2={key:1,class:`mt-3`},_hoisted_12$2={relative:``},_hoisted_13$2={key:0,class:`h-16 px-3 pb-2`};var VoiceCard_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`VoiceCard`,props:mergeModels({name:{},voice:{},currentlyPlayingId:{},customInputPlaceholder:{default:`Enter custom voice name`},showVisualizer:{type:Boolean,default:!0},audioStream:{default:null}},{"voice-id":{required:!1,default:``},"voice-idModifiers":{},"custom-voice-name":{required:!1,default:``},"custom-voice-nameModifiers":{}}),emits:mergeModels([`togglePlayback`],[`update:voice-id`,`update:custom-voice-name`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,voiceId=useModel(__props,`voice-id`),customVoiceName=useModel(__props,`custom-voice-name`);function getPreviewUrl(voice){return voice.previewURL||voice.preview_audio_url}function formatVoiceAttributes(voice){var _voice$labels,_voice$labels2,_voice$labels3;let attributes=[];if((_voice$labels=voice.labels)?.gender&&attributes.push(voice.labels.gender),(_voice$labels2=voice.labels)?.age&&attributes.push(voice.labels.age),(_voice$labels3=voice.labels)?.accent&&attributes.push(voice.labels.accent),voice.languages&&voice.languages.length>0){let languageNames=voice.languages.map(lang=>lang.name).join(`, `);attributes.push(languageNames)}return attributes}function togglePlayback(){emit$1(`togglePlayback`,props.voice)}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,{border:`2px solid`,class:normalizeClass([`scroll-snap-align-start form_voice-card relative flex flex-col overflow-hidden rounded-xl`,[voiceId.value===props.voice.id?`bg-primary-50 dark:bg-primary-900/20 border-primary-100 dark:border-primary-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`:`bg-white dark:bg-neutral-900/20 border-neutral-100 dark:border-neutral-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`,voiceId.value===props.voice.id?`form_voice-card-active`:``]]),transition:`all duration-200 ease-in-out`},[createBaseVNode(`div`,_hoisted_1$18,[createBaseVNode(`div`,_hoisted_2$10,[withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>voiceId.value=$event,checked:voiceId.value===props.voice.id,type:`radio`,name:_ctx.name,value:props.voice.id,class:`absolute cursor-pointer opacity-0`},null,8,_hoisted_3$7),[[vModelRadio,voiceId.value]]),createBaseVNode(`div`,_hoisted_4$6,[createBaseVNode(`div`,{class:normalizeClass([`size-5 border-2 rounded-full transition-colors duration-200`,[voiceId.value===props.voice.id?`border-primary-500 dark:border-primary-400`:`border-neutral-300 dark:border-neutral-600`]])},[createBaseVNode(`div`,{class:normalizeClass([`absolute left-1/2 top-1/2 size-3 rounded-full transition-opacity duration-200 -translate-x-1/2 -translate-y-1/2`,[voiceId.value===props.voice.id?`opacity-100 bg-primary-500 dark:bg-primary-400`:`opacity-0`]])},null,2)],2)]),getPreviewUrl(_ctx.voice)?(openBlock(),createElementBlock(`button`,{key:0,absolute:``,"right-0":``,top:`0`,"z-3":``,class:normalizeClass([`translate-x-[-50%] translate-y-[50%]`,[_ctx.currentlyPlayingId===_ctx.voice.id?`text-white dark:text-white`:``]]),onClick:togglePlayback},[_ctx.currentlyPlayingId===_ctx.voice.id?(openBlock(),createElementBlock(`div`,_hoisted_5$5)):(openBlock(),createElementBlock(`div`,_hoisted_6$4))],2)):(openBlock(),createElementBlock(`div`,_hoisted_7$3,` No preview available `)),createBaseVNode(`div`,_hoisted_8$3,[createBaseVNode(`div`,_hoisted_9$3,[createBaseVNode(`span`,{class:normalizeClass([`line-clamp-1 font-medium`,[voiceId.value===_ctx.voice.id?`text-neutral-700 dark:text-neutral-300`:`text-neutral-700 dark:text-neutral-400`]])},toDisplayString(_ctx.voice.name),3)]),formatVoiceAttributes(_ctx.voice).length>0?(openBlock(),createElementBlock(`div`,_hoisted_10$3,[(openBlock(!0),createElementBlock(Fragment,null,renderList(formatVoiceAttributes(_ctx.voice),(attribute,attrIndex)=>(openBlock(),createElementBlock(`span`,{key:attrIndex,class:normalizeClass([`inline-flex items-center rounded-md px-1.5 py-0.5 text-xs`,[voiceId.value===_ctx.voice.id?`bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400`:`bg-neutral-100 text-neutral-700 dark:bg-neutral-800 dark:text-neutral-300`]])},toDisplayString(attribute),3))),128))])):createCommentVNode(``,!0),_ctx.voice.customizable&&voiceId.value===_ctx.voice.id?(openBlock(),createElementBlock(`div`,_hoisted_11$2,[createVNode(unref(Input_default),{modelValue:customVoiceName.value,"onUpdate:modelValue":_cache$1[1]||=$event=>customVoiceName.value=$event,type:`text`,class:`w-full border border-neutral-300 rounded bg-white px-2 py-1 text-sm dark:border-neutral-700 dark:bg-neutral-900`,placeholder:_ctx.customInputPlaceholder},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0),_ctx.voice.description?(openBlock(),createElementBlock(`div`,{key:2,class:normalizeClass([`line-clamp-2 mt-1 text-xs`,[voiceId.value===_ctx.voice.id?`text-neutral-600 dark:text-neutral-400`:`text-neutral-500 dark:text-neutral-500`]])},toDisplayString(_ctx.voice.description),3)):createCommentVNode(``,!0)])])]),createBaseVNode(`div`,_hoisted_12$2,[createVNode(unref(TransitionVertical_default),null,{default:withCtx(()=>[_ctx.showVisualizer&&_ctx.currentlyPlayingId===_ctx.voice.id&&_ctx.audioStream?(openBlock(),createElementBlock(`div`,_hoisted_13$2,[createVNode(unref(AudioSpectrum_default),{stream:_ctx.audioStream,bars:24,"min-freq":60,"max-freq":4e3},{default:withCtx(({frequencies})=>[createVNode(unref(AudioSpectrumVisualizer_default),{frequencies,"bars-class":voiceId.value===_ctx.voice.id?`bg-primary-500 dark:bg-primary-400`:`bg-neutral-400 dark:bg-neutral-600`},null,8,[`frequencies`,`bars-class`])]),_:1},8,[`stream`])])):createCommentVNode(``,!0)]),_:1})])],2))}}),VoiceCard_default=__plugin_vue_export_helper_default(VoiceCard_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-fd4023c4`]]);const _hoisted_1$17={class:`voice-preview-player`},_hoisted_2$9={key:0,class:`relative`,"inline-flex":`~`,"w-full":``,"items-center":``},_hoisted_3$6=[`placeholder`],_hoisted_4$5={class:`mt-4 space-y-2`},_hoisted_5$4={key:0,class:`text-sm text-neutral-500 dark:text-neutral-400`},_hoisted_6$3={key:1,class:`flex items-center gap-3 border border-2 border-amber-200 rounded-xl bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},_hoisted_7$2={class:`flex flex-col`},_hoisted_8$2={class:`font-medium`},_hoisted_9$2={class:`text-sm text-amber-600 dark:text-amber-400`},_hoisted_10$2={class:`relative`};var VoiceCardManySelect_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`VoiceCardManySelect`,props:mergeModels({voices:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`Search voices...`},searchNoResultsTitle:{default:`No voices found`},searchNoResultsDescription:{default:`Try a different search term`},searchResultsText:{default:`{count} of {total} voices`},customInputPlaceholder:{default:`Enter custom voice name`},expandButtonText:{default:`Show more`},collapseButtonText:{default:`Show less`},playButtonText:{default:`Play sample`},pauseButtonText:{default:`Pause`},showVisualizer:{type:Boolean,default:!0}},{"search-query":{required:!1,default:``},"search-queryModifiers":{},"voice-id":{required:!1,default:``},"voice-idModifiers":{}}),emits:[`update:search-query`,`update:voice-id`],setup(__props){let props=__props,isListExpanded=ref(!1),currentlyPlayingId=ref(),audioElements=ref(new Map),audioStreams=ref(new Map),audioContexts=ref(new Map),audioSources=ref(new Map),sharedAudioContext=ref(null);function initAudioContext(){return sharedAudioContext.value||=new(window.AudioContext||window.webkitAudioContext),sharedAudioContext.value}let searchQuery=useModel(__props,`search-query`),voiceId=useModel(__props,`voice-id`),filteredVoices=computed(()=>{if(!searchQuery.value)return props.voices;let query=searchQuery.value.toLowerCase();return props.voices.filter(voice=>{let nameMatch=voice.name.toLowerCase().includes(query),descMatch=voice.description&&voice.description.toLowerCase().includes(query),tagMatch=voice.tags&&voice.tags.some(tag=>tag.toLowerCase().includes(query)),labelMatch=voice.labels&&Object.values(voice.labels).some(value$1=>typeof value$1==`string`&&value$1.toLowerCase().includes(query)),langMatch=voice.languages&&voice.languages.some(lang=>lang.name.toLowerCase().includes(query)||lang.code.toLowerCase().includes(query));return nameMatch||descMatch||tagMatch||labelMatch||langMatch})});function getPreviewUrl(voice){return voice.previewURL||voice.preview_audio_url}function getAudioElement(voice){let previewUrl=getPreviewUrl(voice);if(!previewUrl)return null;if(audioElements.value.has(voice.id))return audioElements.value.get(voice.id)||null;let audio=new Audio(previewUrl);return audio.crossOrigin=`anonymous`,audio.preload=`auto`,audio.addEventListener(`ended`,()=>{if(currentlyPlayingId.value===voice.id){currentlyPlayingId.value=void 0;let stream=audioStreams.value.get(voice.id);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(voice.id))}}),audioElements.value.set(voice.id,audio),audio}function createAudioStream(audio,voiceId$1){try{if(audioStreams.value.has(voiceId$1))return audioStreams.value.get(voiceId$1)||null;let audioContext=initAudioContext();if(audioSources.value.has(voiceId$1)){let source$1=audioSources.value.get(voiceId$1),destination$1=audioContext.createMediaStreamDestination();source$1.connect(destination$1);let stream$1=destination$1.stream;return audioStreams.value.set(voiceId$1,stream$1),stream$1}let source=audioContext.createMediaElementSource(audio);audioSources.value.set(voiceId$1,source),source.connect(audioContext.destination);let destination=audioContext.createMediaStreamDestination();source.connect(destination);let stream=destination.stream;return audioStreams.value.set(voiceId$1,stream),stream}catch(error){return console.error(`Failed to create audio stream for visualizer:`,error),null}}function togglePlayback(voice){try{let previewUrl=getPreviewUrl(voice);if(!previewUrl)return;let audio=getAudioElement(voice);if(!audio)return;if(currentlyPlayingId.value===voice.id){audio.pause(),currentlyPlayingId.value=void 0;let stream=audioStreams.value.get(voice.id);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(voice.id));return}if(currentlyPlayingId.value){let currentAudio=audioElements.value.get(currentlyPlayingId.value);currentAudio&¤tAudio.pause();let stream=audioStreams.value.get(currentlyPlayingId.value);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(currentlyPlayingId.value))}props.showVisualizer&&!audioStreams.value.has(voice.id)&&createAudioStream(audio,voice.id),audio.currentTime=0,audio.play().catch(error=>{console.error(`Failed to play audio:`,error)}),currentlyPlayingId.value=voice.id}catch(err){console.error(err),currentlyPlayingId.value=void 0}}function cleanup(){audioElements.value.forEach(audio=>{audio.pause(),audio.src=``}),audioElements.value.clear(),audioStreams.value.forEach(stream=>{stream.getTracks().forEach(track$1=>track$1.stop())}),audioStreams.value.clear(),audioContexts.value.forEach(context$1=>{context$1.state!==`closed`&&context$1.close()}),audioContexts.value.clear(),audioSources.value.clear(),currentlyPlayingId.value=void 0}watch(searchQuery,()=>{if(currentlyPlayingId.value){let audio=audioElements.value.get(currentlyPlayingId.value);audio&&audio.pause();let stream=audioStreams.value.get(currentlyPlayingId.value);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(currentlyPlayingId.value)),currentlyPlayingId.value=void 0}}),onBeforeUnmount(cleanup);let customVoiceName=ref(``);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$17,[_ctx.searchable?(openBlock(),createElementBlock(`div`,_hoisted_2$9,[_cache$1[4]||=createBaseVNode(`div`,{class:`pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3`},[createBaseVNode(`div`,{"i-solar:magnifer-line-duotone":``,class:`text-neutral-500 dark:text-neutral-400`})],-1),withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>searchQuery.value=$event,type:`search`,class:`w-full rounded-xl p-2.5 pl-10 text-sm outline-none`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,bg:`white dark:neutral-900`,placeholder:_ctx.searchPlaceholder},null,8,_hoisted_3$6),[[vModelText,searchQuery.value]])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_4$5,[searchQuery.value?(openBlock(),createElementBlock(`div`,_hoisted_5$4,toDisplayString(_ctx.searchResultsText.replace(`{count}`,filteredVoices.value.length.toString()).replace(`{total}`,_ctx.voices.length.toString())),1)):createCommentVNode(``,!0),searchQuery.value&&filteredVoices.value.length===0?(openBlock(),createElementBlock(`div`,_hoisted_6$3,[_cache$1[5]||=createBaseVNode(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),createBaseVNode(`div`,_hoisted_7$2,[createBaseVNode(`span`,_hoisted_8$2,toDisplayString(_ctx.searchNoResultsTitle),1),createBaseVNode(`span`,_hoisted_9$2,toDisplayString(_ctx.searchNoResultsDescription.replace(`{query}`,searchQuery.value)),1)])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_10$2,[createBaseVNode(`div`,{class:normalizeClass([`grid auto-cols-[350px] grid-flow-col max-h-[calc(100dvh-7lh)] gap-4 overflow-x-auto scrollbar-none`,[isListExpanded.value?`grid-cols-1 md:grid-cols-2 grid-flow-row auto-cols-auto`:``]]),transition:`all duration-200 ease-in-out`,style:{"scroll-snap-type":`x mandatory`}},[(openBlock(!0),createElementBlock(Fragment,null,renderList(filteredVoices.value,voice=>(openBlock(),createBlock(VoiceCard_default,{key:voice.id,"voice-id":voiceId.value,"onUpdate:voiceId":_cache$1[1]||=$event=>voiceId.value=$event,"custom-voice-name":customVoiceName.value,"onUpdate:customVoiceName":_cache$1[2]||=$event=>customVoiceName.value=$event,name:`voice`,voice,"currently-playing-id":currentlyPlayingId.value,"custom-input-placeholder":_ctx.customInputPlaceholder,"show-visualizer":_ctx.showVisualizer,"audio-stream":audioStreams.value.get(voice.id),onTogglePlayback:togglePlayback},null,8,[`voice-id`,`custom-voice-name`,`voice`,`currently-playing-id`,`custom-input-placeholder`,`show-visualizer`,`audio-stream`]))),128))],2),createBaseVNode(`div`,{bg:`neutral-100 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,class:normalizeClass([isListExpanded.value?`w-full`:`mt-4 w-full rounded-lg`])},[createBaseVNode(`button`,{"w-full":``,flex:``,"items-center":``,"justify-center":``,"gap-2":``,"rounded-lg":``,"py-2":``,transition:`all duration-200 ease-in-out`,class:normalizeClass([isListExpanded.value?`bg-primary-500 hover:bg-primary-600 text-white`:`bg-white dark:bg-neutral-900 hover:bg-neutral-100 dark:hover:bg-neutral-800`]),onClick:_cache$1[3]||=$event=>isListExpanded.value=!isListExpanded.value},[createBaseVNode(`span`,null,toDisplayString(isListExpanded.value?_ctx.collapseButtonText:_ctx.expandButtonText),1),createBaseVNode(`div`,{class:normalizeClass([isListExpanded.value?`rotate-180`:``,`text-lg`]),"i-solar:alt-arrow-down-linear":``,transition:`transform duration-200 ease-in-out`},null,2)],2)],2)])])]))}}),VoiceCardManySelect_default=__plugin_vue_export_helper_default(VoiceCardManySelect_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-55cec23c`]]),BidirectionalTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`BidirectionalTransition`,props:{fromClass:{},activeClass:{},toClass:{}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(Transition,{"enter-from-class":_ctx.fromClass,"enter-active-class":_ctx.activeClass,"enter-to-class":_ctx.toClass,"leave-from-class":_ctx.toClass,"leave-active-class":_ctx.activeClass,"leave-to-class":_ctx.fromClass},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`enter-from-class`,`enter-active-class`,`enter-to-class`,`leave-from-class`,`leave-active-class`,`leave-to-class`]))}}),BidirectionalTransition_default=BidirectionalTransition_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$16=[`disabled`],_hoisted_2$8={class:`flex flex-row items-center justify-center gap-2`},_hoisted_3$5={key:0,class:`w-4`},_hoisted_4$4={key:0,class:`i-svg-spinners:ring-resize h-4 w-4`},_hoisted_5$3={key:0};var Button_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Button`,props:{icon:{},label:{},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},variant:{default:`primary`},size:{default:`md`},theme:{default:`default`},block:{type:Boolean,default:!1}},setup(__props){let props=__props,isDisabled=computed(()=>props.disabled||props.loading),variantClasses={primary:{default:`bg-primary-100 hover:bg-primary-200 active:bg-primary-300 dark:bg-primary-900/40 dark:hover:bg-primary-900/60 dark:active:bg-primary-900/40 focus:ring-primary-300/60 dark:focus:ring-primary-600/30 border-2 border-solid border-primary-200/30 dark:border-primary-900/40 text-primary-950 dark:text-primary-100`},secondary:{default:`bg-neutral-50 hover:bg-neutral-200 active:bg-neutral-300 dark:bg-neutral-600/40 dark:hover:bg-neutral-600/60 dark:active:bg-neutral-600/40 focus:ring-neutral-300/60 dark:focus:ring-neutral-600/30 border-2 border-solid border-neutral-200/50 dark:border-neutral-700/50 text-neutral-950 dark:text-neutral-100`},danger:{default:`bg-red-100 hover:bg-red-200 active:bg-red-300 dark:bg-red-900/40 dark:hover:bg-red-900/60 dark:active:bg-red-900/40 focus:ring-red-300/30 dark:focus:ring-red-600/60 dark:focus:ring-red-600/30 border-2 border-solid border-red-200/30 dark:border-red-900/30 text-red-950 dark:text-red-100`}},sizeClasses={sm:`px-3 py-1.5 text-xs`,md:`px-4 py-2 text-sm`,lg:`px-6 py-3 text-base`},baseClasses=computed(()=>[`rounded-lg font-medium outline-none transition-all duration-150 ease-in-out`,`disabled:cursor-not-allowed disabled:opacity-50`,props.block?`w-full`:``,sizeClasses[props.size],variantClasses[props.variant][props.theme],{"opacity-50 cursor-not-allowed":isDisabled.value},`focus:ring-2 focus:ring-offset-2 focus:ring-offset-white dark:focus:ring-offset-neutral-900`]);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`button`,{disabled:isDisabled.value,class:normalizeClass(baseClasses.value)},[createBaseVNode(`div`,_hoisted_2$8,[createVNode(unref(BidirectionalTransition_default),{"from-class":`opacity-0 mr-0! w-0!`,"active-class":`transition-[width,margin] ease-in-out overflow-hidden transition-100`},{default:withCtx(()=>[_ctx.loading||_ctx.icon?(openBlock(),createElementBlock(`div`,_hoisted_3$5,[_ctx.loading?(openBlock(),createElementBlock(`div`,_hoisted_4$4)):_ctx.icon?(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`h-4 w-4`,_ctx.icon])},null,2)):createCommentVNode(``,!0)])):createCommentVNode(``,!0)]),_:1}),_ctx.label?(openBlock(),createElementBlock(`span`,_hoisted_5$3,toDisplayString(_ctx.label),1)):renderSlot(_ctx.$slots,`default`,{key:1})])],10,_hoisted_1$16))}}),Button_default=Button_vue_vue_type_script_setup_true_lang_default,Screen_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Screen`,setup(__props){let containerRef=ref(),breakpoints=useBreakpoints(breakpointsTailwind),{width,height}=useWindowSize(),containerElementBounding=useElementBounding(containerRef,{immediate:!0,windowResize:!0,reset:!0}),isMobile=computed(()=>breakpoints.between(`sm`,`md`).value||breakpoints.smaller(`sm`).value),isTablet=computed(()=>breakpoints.between(`md`,`lg`).value),isDesktop=computed(()=>breakpoints.greaterOrEqual(`lg`).value),canvasWidth=computed(()=>isDesktop.value?containerElementBounding.width.value:isMobile.value||isTablet.value?width.value-16:containerElementBounding.width.value),canvasHeight=ref(0);return watch([width,height,containerRef],()=>{var _containerRef$value;let bounding=(_containerRef$value=containerRef.value)==null||(_containerRef$value=_containerRef$value.parentElement)==null?void 0:_containerRef$value.getBoundingClientRect();isDesktop.value||isMobile.value||isTablet.value?canvasHeight.value=bounding?.height||0:canvasHeight.value=600}),watch([containerElementBounding.width,containerElementBounding.height],()=>{isDesktop.value||isMobile.value||isTablet.value?canvasHeight.value=containerElementBounding.height.value:canvasHeight.value=600}),onMounted(async()=>{containerRef.value&&containerElementBounding.update()}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{ref_key:`containerRef`,ref:containerRef,"h-full":``,"w-full":``},[renderSlot(_ctx.$slots,`default`,{width:canvasWidth.value,height:canvasHeight.value})],512))}}),Screen_default=Screen_vue_vue_type_script_setup_true_lang_default,Skeleton_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Skeleton`,props:{animation:{default:`pulse`}},setup(__props){let props=__props;return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`skeleton`,props.animation===`none`?``:`skeleton-${props.animation}`]),bg:`neutral-200 dark:neutral-800`,overflow:`hidden`},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],2))}}),Skeleton_default=__plugin_vue_export_helper_default(Skeleton_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-fa4a54cc`]]),CursorFloating_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`CursorFloating`,props:{intensity:{default:1.5}},setup(__props){let props=__props,cardRef=ref(null),transformStyle=ref(``),gradientPosition=ref(`50% 50%`),sparklePosition=ref(`50% 50%`),sparkleOpacity=ref(.5);function handleMouseMove(event){if(!cardRef.value)return;let card=cardRef.value,rect=card.getBoundingClientRect(),x$3=event.clientX-rect.left,y$2=event.clientY-rect.top,cardWidth=card.offsetWidth,cardHeight=card.offsetHeight,xPercent=Math.abs(Math.floor(100/cardWidth*x$3)-100),yPercent=Math.abs(Math.floor(100/cardHeight*y$2)-100),leftPos=50+(xPercent-50)/1.5,topPos=50+(yPercent-50)/1.5,sparkleX=50+(xPercent-50)/7,sparkleY=50+(yPercent-50)/7,rotateY=(leftPos-50)/1.5*.2*props.intensity,rotateX=(topPos-50)/2*-1*.2*props.intensity,pAngle=50-xPercent+(50-yPercent),opacity=.5+Math.abs(pAngle)*.008*props.intensity;transformStyle.value=`perspective(1200px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale3d(${1+.015*props.intensity}, ${1+.015*props.intensity}, ${1+.015*props.intensity})`,gradientPosition.value=`${leftPos}% ${topPos}%`,sparklePosition.value=`${sparkleX}% ${sparkleY}%`,sparkleOpacity.value=opacity}function resetCard(){transformStyle.value=`perspective(1200px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)`,gradientPosition.value=`50% 50%`,sparklePosition.value=`50% 50%`,sparkleOpacity.value=.5}return onMounted(()=>{transformStyle.value=`perspective(1200px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)`}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{ref_key:`cardRef`,ref:cardRef,class:`card-hover-effect`,style:normalizeStyle({transform:transformStyle.value,"--effect-intensity":_ctx.intensity}),onMousemove:handleMouseMove,onMouseleave:resetCard},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],36))}}),CursorFloating_default=__plugin_vue_export_helper_default(CursorFloating_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-24a7a9d5`]]),ProviderAccountIdInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderAccountIdInput`,props:mergeModels({placeholder:{},required:{type:Boolean},label:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(FieldInput_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,label:props.label||`Account ID`,description:props.description||`Account ID`,placeholder:props.placeholder,required:props.required,type:`text`},null,8,[`modelValue`,`label`,`description`,`placeholder`,`required`]))}}),ProviderAccountIdInput_default=ProviderAccountIdInput_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$15=[`onClick`],_hoisted_2$7={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},_hoisted_3$4={"mt-4":``};var ProviderAdvancedSettings_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderAdvancedSettings`,props:{title:{},initialVisible:{type:Boolean}},setup(__props){let props=__props,visible=ref(props.initialVisible||!1);function toggleVisible(){visible.value=!visible.value}return(_ctx,_cache$1)=>(openBlock(),createBlock(Collapsable_default,{"w-full":``},{trigger:withCtx(slotProps=>[createBaseVNode(`button`,{transition:`all ease-in-out duration-250`,"w-full":``,flex:``,"items-center":``,"gap-1.5":``,"outline-none":``,class:`[&_.provider-icon]:grayscale-100 [&_.provider-icon]:hover:grayscale-0`,onClick:()=>slotProps.setVisible(!slotProps.visible)&&toggleVisible()},[createBaseVNode(`h2`,_hoisted_2$7,[createBaseVNode(`span`,null,toDisplayString(_ctx.title||`Advanced`),1)]),createBaseVNode(`div`,{transform:``,transition:`transform duration-250`,class:normalizeClass({"rotate-180":slotProps.visible})},_cache$1[0]||=[createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``},null,-1)],2)],8,_hoisted_1$15)]),default:withCtx(()=>[createBaseVNode(`div`,_hoisted_3$4,[renderSlot(_ctx.$slots,`default`)])]),_:3}))}}),ProviderAdvancedSettings_default=ProviderAdvancedSettings_vue_vue_type_script_setup_true_lang_default; +`))}return()=>forceMount.value||present.value||isPresent.value?h(slots.default({present:isPresent.value})[0],{ref:v$1=>{let el=unrefElement(v$1);return el?.hasAttribute===void 0||(el?.hasAttribute(`data-reka-popper-content-wrapper`)?node$1.value=el.firstElementChild:node$1.value=el),el}}):null}}),[injectDialogRootContext,provideDialogRootContext]=createContext(`DialogRoot`),_sfc_main$8=defineComponent({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!0}},emits:[`update:open`],setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,open$1=useVModel(props,`open`,emit$1,{defaultValue:props.defaultOpen,passive:props.open===void 0}),triggerElement=ref(),contentElement=ref(),{modal}=toRefs(props);return provideDialogRootContext({open:open$1,modal,openModal:()=>{open$1.value=!0},onOpenChange:value$1=>{open$1.value=value$1},onOpenToggle:()=>{open$1.value=!open$1.value},contentId:``,titleId:``,descriptionId:``,triggerElement,contentElement}),(_ctx,_cache$1)=>renderSlot(_ctx.$slots,`default`,{open:unref(open$1),close:()=>open$1.value=!1})}});function useEmitAsProps(emit$1){let vm=getCurrentInstance(),events=vm?.type.emits,result={};return events?.length||console.warn(`No emitted event found. Please check component: ${vm?.type.__name}`),events?.forEach(ev=>{result[toHandlerKey(camelize(ev))]=(...arg)=>emit$1(ev,...arg)}),result}function getActiveElement(){let activeElement=document.activeElement;if(activeElement==null)return null;for(;activeElement!=null&&activeElement.shadowRoot!=null&&activeElement.shadowRoot.activeElement!=null;)activeElement=activeElement.shadowRoot.activeElement;return activeElement}const SELECTION_KEYS=[`Enter`,` `],FIRST_KEYS=[`ArrowDown`,`PageUp`,`Home`],LAST_KEYS=[`ArrowUp`,`PageDown`,`End`],FIRST_LAST_KEYS=[...FIRST_KEYS,...LAST_KEYS],SUB_OPEN_KEYS={ltr:[...SELECTION_KEYS,`ArrowRight`],rtl:[...SELECTION_KEYS,`ArrowLeft`]};function getOpenState(open$1){return open$1?`open`:`closed`}const useFocusStackState=createGlobalState(()=>{let stack$1=ref([]);return stack$1});function createFocusScopesStack(){let stack$1=useFocusStackState();return{add(focusScope){let activeFocusScope=stack$1.value[0];focusScope!==activeFocusScope&&activeFocusScope?.pause(),stack$1.value=arrayRemove(stack$1.value,focusScope),stack$1.value.unshift(focusScope)},remove(focusScope){stack$1.value=arrayRemove(stack$1.value,focusScope),stack$1.value[0]?.resume()}}}function arrayRemove(array,item){let updatedArray=[...array],index$1=updatedArray.indexOf(item);return index$1!==-1&&updatedArray.splice(index$1,1),updatedArray}function removeLinks(items){return items.filter(item=>item.tagName!==`A`)}const AUTOFOCUS_ON_MOUNT=`focusScope.autoFocusOnMount`,AUTOFOCUS_ON_UNMOUNT=`focusScope.autoFocusOnUnmount`,EVENT_OPTIONS={bubbles:!1,cancelable:!0};function focusFirst(candidates,{select=!1}={}){let previouslyFocusedElement=getActiveElement();for(let candidate of candidates)if(focus(candidate,{select}),getActiveElement()!==previouslyFocusedElement)return!0}function getTabbableEdges(container){let candidates=getTabbableCandidates(container),first=findVisible(candidates,container),last=findVisible(candidates.reverse(),container);return[first,last]}function getTabbableCandidates(container){let nodes=[],walker=document.createTreeWalker(container,NodeFilter.SHOW_ELEMENT,{acceptNode:node$1=>{let isHiddenInput=node$1.tagName===`INPUT`&&node$1.type===`hidden`;return node$1.disabled||node$1.hidden||isHiddenInput?NodeFilter.FILTER_SKIP:node$1.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;walker.nextNode();)nodes.push(walker.currentNode);return nodes}function findVisible(elements,container){for(let element$3 of elements)if(!isHidden(element$3,{upTo:container}))return element$3}function isHidden(node$1,{upTo}){if(getComputedStyle(node$1).visibility===`hidden`)return!0;for(;node$1;){if(upTo!==void 0&&node$1===upTo)return!1;if(getComputedStyle(node$1).display===`none`)return!0;node$1=node$1.parentElement}return!1}function isSelectableInput(element$3){return element$3 instanceof HTMLInputElement&&`select`in element$3}function focus(element$3,{select=!1}={}){if(element$3&&element$3.focus){let previouslyFocusedElement=getActiveElement();element$3.focus({preventScroll:!0}),element$3!==previouslyFocusedElement&&isSelectableInput(element$3)&&select&&element$3.select()}}const _sfc_main$23=defineComponent({__name:`FocusScope`,props:{loop:{type:Boolean,default:!1},trapped:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`mountAutoFocus`,`unmountAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,{currentRef,currentElement}=useForwardExpose(),lastFocusedElementRef=ref(null),focusScopesStack=createFocusScopesStack(),focusScope=reactive({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});watchEffect(cleanupFn=>{if(!isClient$1)return;let container=currentElement.value;if(!props.trapped)return;function handleFocusIn(event){if(focusScope.paused||!container)return;let target$1=event.target;container.contains(target$1)?lastFocusedElementRef.value=target$1:focus(lastFocusedElementRef.value,{select:!0})}function handleFocusOut(event){if(focusScope.paused||!container)return;let relatedTarget=event.relatedTarget;relatedTarget!==null&&(container.contains(relatedTarget)||focus(lastFocusedElementRef.value,{select:!0}))}function handleMutations$1(mutations$1){let isLastFocusedElementExist=container.contains(lastFocusedElementRef.value);isLastFocusedElementExist||focus(container)}document.addEventListener(`focusin`,handleFocusIn),document.addEventListener(`focusout`,handleFocusOut);let mutationObserver=new MutationObserver(handleMutations$1);container&&mutationObserver.observe(container,{childList:!0,subtree:!0}),cleanupFn(()=>{document.removeEventListener(`focusin`,handleFocusIn),document.removeEventListener(`focusout`,handleFocusOut),mutationObserver.disconnect()})}),watchEffect(async cleanupFn=>{let container=currentElement.value;if(await nextTick(),!container)return;focusScopesStack.add(focusScope);let previouslyFocusedElement=getActiveElement(),hasFocusedCandidate=container.contains(previouslyFocusedElement);if(!hasFocusedCandidate){let mountEvent=new CustomEvent(AUTOFOCUS_ON_MOUNT,EVENT_OPTIONS);container.addEventListener(AUTOFOCUS_ON_MOUNT,ev=>emits(`mountAutoFocus`,ev)),container.dispatchEvent(mountEvent),mountEvent.defaultPrevented||(focusFirst(removeLinks(getTabbableCandidates(container)),{select:!0}),getActiveElement()===previouslyFocusedElement&&focus(container))}cleanupFn(()=>{container.removeEventListener(AUTOFOCUS_ON_MOUNT,ev=>emits(`mountAutoFocus`,ev));let unmountEvent=new CustomEvent(AUTOFOCUS_ON_UNMOUNT,EVENT_OPTIONS),unmountEventHandler=ev=>{emits(`unmountAutoFocus`,ev)};container.addEventListener(AUTOFOCUS_ON_UNMOUNT,unmountEventHandler),container.dispatchEvent(unmountEvent),setTimeout(()=>{unmountEvent.defaultPrevented||focus(previouslyFocusedElement??document.body,{select:!0}),container.removeEventListener(AUTOFOCUS_ON_UNMOUNT,unmountEventHandler),focusScopesStack.remove(focusScope)},0)})});function handleKeyDown(event){if(!props.loop&&!props.trapped||focusScope.paused)return;let isTabKey=event.key===`Tab`&&!event.altKey&&!event.ctrlKey&&!event.metaKey,focusedElement=getActiveElement();if(isTabKey&&focusedElement){let container=event.currentTarget,[first,last]=getTabbableEdges(container),hasTabbableElementsInside=first&&last;hasTabbableElementsInside?!event.shiftKey&&focusedElement===last?(event.preventDefault(),props.loop&&focus(first,{select:!0})):event.shiftKey&&focusedElement===first&&(event.preventDefault(),props.loop&&focus(last,{select:!0})):focusedElement===container&&event.preventDefault()}}return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{ref_key:`currentRef`,ref:currentRef,tabindex:`-1`,"as-child":_ctx.asChild,as:_ctx.as,onKeydown:handleKeyDown},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}});function handleAndDispatchCustomEvent(name$2,handler,detail){let target$1=detail.originalEvent.target,event=new CustomEvent(name$2,{bubbles:!1,cancelable:!0,detail});handler&&target$1.addEventListener(name$2,handler,{once:!0}),target$1.dispatchEvent(event)}const POINTER_DOWN_OUTSIDE=`dismissableLayer.pointerDownOutside`,FOCUS_OUTSIDE=`dismissableLayer.focusOutside`;function isLayerExist(layerElement,targetElement){let targetLayer=targetElement.closest(`[data-dismissable-layer]`),mainLayer=layerElement.dataset.dismissableLayer===``?layerElement:layerElement.querySelector(`[data-dismissable-layer]`),nodeList=Array.from(layerElement.ownerDocument.querySelectorAll(`[data-dismissable-layer]`));return!!(targetLayer&&(mainLayer===targetLayer||nodeList.indexOf(mainLayer){});return watchEffect(cleanupFn=>{if(!isClient$1||!toValue$1(enabled$1))return;let handlePointerDown=async event=>{let target$1=event.target;if(!(!element$3?.value||!target$1)){if(isLayerExist(element$3.value,target$1)){isPointerInsideDOMTree.value=!1;return}if(event.target&&!isPointerInsideDOMTree.value){let handleAndDispatchPointerDownOutsideEvent=function(){handleAndDispatchCustomEvent(POINTER_DOWN_OUTSIDE,onPointerDownOutside,eventDetail)},eventDetail={originalEvent:event};event.pointerType===`touch`?(ownerDocument.removeEventListener(`click`,handleClickRef.value),handleClickRef.value=handleAndDispatchPointerDownOutsideEvent,ownerDocument.addEventListener(`click`,handleClickRef.value,{once:!0})):handleAndDispatchPointerDownOutsideEvent()}else ownerDocument.removeEventListener(`click`,handleClickRef.value);isPointerInsideDOMTree.value=!1}},timerId=window.setTimeout(()=>{ownerDocument.addEventListener(`pointerdown`,handlePointerDown)},0);cleanupFn(()=>{window.clearTimeout(timerId),ownerDocument.removeEventListener(`pointerdown`,handlePointerDown),ownerDocument.removeEventListener(`click`,handleClickRef.value)})}),{onPointerDownCapture:()=>{toValue$1(enabled$1)&&(isPointerInsideDOMTree.value=!0)}}}function useFocusOutside(onFocusOutside,element$3,enabled$1=!0){let ownerDocument=element$3?.value?.ownerDocument??globalThis?.document,isFocusInsideDOMTree=ref(!1);return watchEffect(cleanupFn=>{if(!isClient$1||!toValue$1(enabled$1))return;let handleFocus=async event=>{if(!element$3?.value)return;await nextTick(),await nextTick();let target$1=event.target;if(!(!element$3.value||!target$1||isLayerExist(element$3.value,target$1))&&event.target&&!isFocusInsideDOMTree.value){let eventDetail={originalEvent:event};handleAndDispatchCustomEvent(FOCUS_OUTSIDE,onFocusOutside,eventDetail)}};ownerDocument.addEventListener(`focusin`,handleFocus),cleanupFn(()=>ownerDocument.removeEventListener(`focusin`,handleFocus))}),{onFocusCapture:()=>{toValue$1(enabled$1)&&(isFocusInsideDOMTree.value=!0)},onBlurCapture:()=>{toValue$1(enabled$1)&&(isFocusInsideDOMTree.value=!1)}}}const context=reactive({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),_sfc_main$24=defineComponent({__name:`DismissableLayer`,props:{disableOutsidePointerEvents:{type:Boolean,default:!1},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`dismiss`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,{forwardRef,currentElement:layerElement}=useForwardExpose(),ownerDocument=computed(()=>layerElement.value?.ownerDocument??globalThis.document),layers=computed(()=>context.layersRoot),index$1=computed(()=>layerElement.value?Array.from(layers.value).indexOf(layerElement.value):-1),isBodyPointerEventsDisabled=computed(()=>context.layersWithOutsidePointerEventsDisabled.size>0),isPointerEventsEnabled=computed(()=>{let localLayers=Array.from(layers.value),[highestLayerWithOutsidePointerEventsDisabled]=[...context.layersWithOutsidePointerEventsDisabled].slice(-1),highestLayerWithOutsidePointerEventsDisabledIndex=localLayers.indexOf(highestLayerWithOutsidePointerEventsDisabled);return index$1.value>=highestLayerWithOutsidePointerEventsDisabledIndex}),pointerDownOutside=usePointerDownOutside(async event=>{let isPointerDownOnBranch=[...context.branches].some(branch=>branch?.contains(event.target));!isPointerEventsEnabled.value||isPointerDownOnBranch||(emits(`pointerDownOutside`,event),emits(`interactOutside`,event),await nextTick(),event.defaultPrevented||emits(`dismiss`))},layerElement),focusOutside=useFocusOutside(event=>{let isFocusInBranch=[...context.branches].some(branch=>branch?.contains(event.target));isFocusInBranch||(emits(`focusOutside`,event),emits(`interactOutside`,event),event.defaultPrevented||emits(`dismiss`))},layerElement);onKeyStroke(`Escape`,event=>{let isHighestLayer=index$1.value===layers.value.size-1;isHighestLayer&&(emits(`escapeKeyDown`,event),event.defaultPrevented||emits(`dismiss`))});let originalBodyPointerEvents;return watchEffect(cleanupFn=>{layerElement.value&&(props.disableOutsidePointerEvents&&(context.layersWithOutsidePointerEventsDisabled.size===0&&(originalBodyPointerEvents=ownerDocument.value.body.style.pointerEvents,ownerDocument.value.body.style.pointerEvents=`none`),context.layersWithOutsidePointerEventsDisabled.add(layerElement.value)),layers.value.add(layerElement.value),cleanupFn(()=>{props.disableOutsidePointerEvents&&context.layersWithOutsidePointerEventsDisabled.size===1&&(ownerDocument.value.body.style.pointerEvents=originalBodyPointerEvents)}))}),watchEffect(cleanupFn=>{cleanupFn(()=>{layerElement.value&&(layers.value.delete(layerElement.value),context.layersWithOutsidePointerEventsDisabled.delete(layerElement.value))})}),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{ref:unref(forwardRef),"as-child":_ctx.asChild,as:_ctx.as,"data-dismissable-layer":``,style:normalizeStyle({pointerEvents:isBodyPointerEventsDisabled.value?isPointerEventsEnabled.value?`auto`:`none`:void 0}),onFocusCapture:unref(focusOutside).onFocusCapture,onBlurCapture:unref(focusOutside).onBlurCapture,onPointerdownCapture:unref(pointerDownOutside).onPointerDownCapture},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as-child`,`as`,`style`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]))}}),_sfc_main$22=defineComponent({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,rootContext=injectDialogRootContext(),{forwardRef,currentElement:contentElement}=useForwardExpose();return rootContext.titleId||=useId(void 0,`reka-dialog-title`),rootContext.descriptionId||=useId(void 0,`reka-dialog-description`),onMounted(()=>{rootContext.contentElement=contentElement,getActiveElement()!==document.body&&(rootContext.triggerElement.value=getActiveElement())}),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(_sfc_main$23),{"as-child":``,loop:``,trapped:props.trapFocus,onMountAutoFocus:_cache$1[5]||=$event=>emits(`openAutoFocus`,$event),onUnmountAutoFocus:_cache$1[6]||=$event=>emits(`closeAutoFocus`,$event)},{default:withCtx(()=>[createVNode(unref(_sfc_main$24),mergeProps({id:unref(rootContext).contentId,ref:unref(forwardRef),as:_ctx.as,"as-child":_ctx.asChild,"disable-outside-pointer-events":_ctx.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":unref(rootContext).descriptionId,"aria-labelledby":unref(rootContext).titleId,"data-state":unref(getOpenState)(unref(rootContext).open.value)},_ctx.$attrs,{onDismiss:_cache$1[0]||=$event=>unref(rootContext).onOpenChange(!1),onEscapeKeyDown:_cache$1[1]||=$event=>emits(`escapeKeyDown`,$event),onFocusOutside:_cache$1[2]||=$event=>emits(`focusOutside`,$event),onInteractOutside:_cache$1[3]||=$event=>emits(`interactOutside`,$event),onPointerDownOutside:_cache$1[4]||=$event=>emits(`pointerDownOutside`,$event)}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}});var getDefaultParent=function(originalTarget){if(typeof document>`u`)return null;var sampleTarget=Array.isArray(originalTarget)?originalTarget[0]:originalTarget;return sampleTarget.ownerDocument.body},counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={},lockCount=0,unwrapHost=function(node$1){return node$1&&(node$1.host||unwrapHost(node$1.parentNode))},correctTargets=function(parent,targets){return targets.map(function(target$1){if(parent.contains(target$1))return target$1;var correctedTarget=unwrapHost(target$1);return correctedTarget&&parent.contains(correctedTarget)?correctedTarget:(console.error(`aria-hidden`,target$1,`in not contained inside`,parent,`. Doing nothing`),null)}).filter(function(x$3){return!!x$3})},applyAttributeToOthers=function(originalTarget,parentNode,markerName,controlAttribute){var targets=correctTargets(parentNode,Array.isArray(originalTarget)?originalTarget:[originalTarget]);markerMap[markerName]||(markerMap[markerName]=new WeakMap);var markerCounter=markerMap[markerName],hiddenNodes=[],elementsToKeep=new Set,elementsToStop=new Set(targets),keep=function(el){!el||elementsToKeep.has(el)||(elementsToKeep.add(el),keep(el.parentNode))};targets.forEach(keep);var deep=function(parent){!parent||elementsToStop.has(parent)||Array.prototype.forEach.call(parent.children,function(node$1){if(elementsToKeep.has(node$1))deep(node$1);else try{var attr=node$1.getAttribute(controlAttribute),alreadyHidden=attr!==null&&attr!==`false`,counterValue=(counterMap.get(node$1)||0)+1,markerValue=(markerCounter.get(node$1)||0)+1;counterMap.set(node$1,counterValue),markerCounter.set(node$1,markerValue),hiddenNodes.push(node$1),counterValue===1&&alreadyHidden&&uncontrolledNodes.set(node$1,!0),markerValue===1&&node$1.setAttribute(markerName,`true`),alreadyHidden||node$1.setAttribute(controlAttribute,`true`)}catch(e$3){console.error(`aria-hidden: cannot operate on `,node$1,e$3)}})};return deep(parentNode),elementsToKeep.clear(),lockCount++,function(){hiddenNodes.forEach(function(node$1){var counterValue=counterMap.get(node$1)-1,markerValue=markerCounter.get(node$1)-1;counterMap.set(node$1,counterValue),markerCounter.set(node$1,markerValue),counterValue||(uncontrolledNodes.has(node$1)||node$1.removeAttribute(controlAttribute),uncontrolledNodes.delete(node$1)),markerValue||node$1.removeAttribute(markerName)}),lockCount--,lockCount||(counterMap=new WeakMap,counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={})}},hideOthers=function(originalTarget,parentNode,markerName){markerName===void 0&&(markerName=`data-aria-hidden`);var targets=Array.from(Array.isArray(originalTarget)?originalTarget:[originalTarget]),activeParentNode=parentNode||getDefaultParent(originalTarget);return activeParentNode?(targets.push.apply(targets,Array.from(activeParentNode.querySelectorAll(`[aria-live]`))),applyAttributeToOthers(targets,activeParentNode,markerName,`aria-hidden`)):function(){return null}};function useHideOthers(target$1){let undo;watch(()=>unrefElement(target$1),el=>{el?undo=hideOthers(el):undo&&undo()}),onUnmounted(()=>{undo&&undo()})}const _sfc_main$20=defineComponent({__name:`DialogContentModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,rootContext=injectDialogRootContext(),emitsAsProps=useEmitAsProps(emits),{forwardRef,currentElement}=useForwardExpose();return useHideOthers(currentElement),(_ctx,_cache$1)=>(openBlock(),createBlock(_sfc_main$22,mergeProps({...props,...unref(emitsAsProps)},{ref:unref(forwardRef),"trap-focus":unref(rootContext).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:_cache$1[0]||=event=>{event.defaultPrevented||(event.preventDefault(),unref(rootContext).triggerElement.value?.focus())},onPointerDownOutside:_cache$1[1]||=event=>{let originalEvent=event.detail.originalEvent,ctrlLeftClick=originalEvent.button===0&&originalEvent.ctrlKey===!0,isRightClick=originalEvent.button===2||ctrlLeftClick;isRightClick&&event.preventDefault()},onFocusOutside:_cache$1[2]||=event=>{event.preventDefault()}}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),_sfc_main$21=defineComponent({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean},trapFocus:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,emitsAsProps=useEmitAsProps(emits);useForwardExpose();let rootContext=injectDialogRootContext(),hasInteractedOutsideRef=ref(!1),hasPointerDownOutsideRef=ref(!1);return(_ctx,_cache$1)=>(openBlock(),createBlock(_sfc_main$22,mergeProps({...props,...unref(emitsAsProps)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:_cache$1[0]||=event=>{event.defaultPrevented||(hasInteractedOutsideRef.value||unref(rootContext).triggerElement.value?.focus(),event.preventDefault()),hasInteractedOutsideRef.value=!1,hasPointerDownOutsideRef.value=!1},onInteractOutside:_cache$1[1]||=event=>{event.defaultPrevented||(hasInteractedOutsideRef.value=!0,event.detail.originalEvent.type===`pointerdown`&&(hasPointerDownOutsideRef.value=!0));let target$1=event.target,targetIsTrigger=unref(rootContext).triggerElement.value?.contains(target$1);targetIsTrigger&&event.preventDefault(),event.detail.originalEvent.type===`focusin`&&hasPointerDownOutsideRef.value&&event.preventDefault()}}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16))}}),_sfc_main$5=defineComponent({__name:`DialogContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(__props,{emit:__emit}){let props=__props,emits=__emit,rootContext=injectDialogRootContext(),emitsAsProps=useEmitAsProps(emits),{forwardRef}=useForwardExpose();return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Presence),{present:_ctx.forceMount||unref(rootContext).open.value},{default:withCtx(()=>[unref(rootContext).modal.value?(openBlock(),createBlock(_sfc_main$20,mergeProps({key:0,ref:unref(forwardRef)},{...props,...unref(emitsAsProps),..._ctx.$attrs}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16)):(openBlock(),createBlock(_sfc_main$21,mergeProps({key:1,ref:unref(forwardRef)},{...props,...unref(emitsAsProps),..._ctx.$attrs}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),useBodyLockStackCount=createSharedComposable(()=>{let map=ref(new Map),initialOverflow=ref(),locked=computed(()=>{for(let value$1 of map.value.values())if(value$1)return!0;return!1}),context$1=injectConfigProviderContext({scrollBody:ref(!0)}),stopTouchMoveListener=null,resetBodyStyle=()=>{document.body.style.paddingRight=``,document.body.style.marginRight=``,document.body.style.pointerEvents=``,document.documentElement.style.removeProperty(`--scrollbar-width`),document.body.style.overflow=initialOverflow.value??``,isIOS&&stopTouchMoveListener?.(),initialOverflow.value=void 0};return watch(locked,(val,oldVal)=>{if(!isClient$1)return;if(!val){oldVal&&resetBodyStyle();return}initialOverflow.value===void 0&&(initialOverflow.value=document.body.style.overflow);let verticalScrollbarWidth=window.innerWidth-document.documentElement.clientWidth,defaultConfig={padding:verticalScrollbarWidth,margin:0},config=context$1.scrollBody?.value?typeof context$1.scrollBody.value==`object`?defu({padding:context$1.scrollBody.value.padding===!0?verticalScrollbarWidth:context$1.scrollBody.value.padding,margin:context$1.scrollBody.value.margin===!0?verticalScrollbarWidth:context$1.scrollBody.value.margin},defaultConfig):defaultConfig:{padding:0,margin:0};verticalScrollbarWidth>0&&(document.body.style.paddingRight=typeof config.padding==`number`?`${config.padding}px`:String(config.padding),document.body.style.marginRight=typeof config.margin==`number`?`${config.margin}px`:String(config.margin),document.documentElement.style.setProperty(`--scrollbar-width`,`${verticalScrollbarWidth}px`),document.body.style.overflow=`hidden`),isIOS&&(stopTouchMoveListener=useEventListener(document,`touchmove`,e$3=>preventDefault(e$3),{passive:!1})),nextTick(()=>{document.body.style.pointerEvents=`none`,document.body.style.overflow=`hidden`})},{immediate:!0,flush:`sync`}),map});function useBodyScrollLock(initialState){let id=Math.random().toString(36).substring(2,7),map=useBodyLockStackCount();map.value.set(id,initialState??!1);let locked=computed({get:()=>map.value.get(id)??!1,set:value$1=>map.value.set(id,value$1)});return tryOnBeforeUnmount(()=>{map.value.delete(id)}),locked}function checkOverflowScroll(ele){let style=window.getComputedStyle(ele);if(style.overflowX===`scroll`||style.overflowY===`scroll`||style.overflowX===`auto`&&ele.clientWidth1?!0:(e$3.preventDefault&&e$3.cancelable&&e$3.preventDefault(),!1)}const _sfc_main$19=defineComponent({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean},as:{}},setup(__props){let rootContext=injectDialogRootContext();return useBodyScrollLock(!0),useForwardExpose(),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{as:_ctx.as,"as-child":_ctx.asChild,"data-state":unref(rootContext).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),_sfc_main$6=defineComponent({__name:`DialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(__props){let rootContext=injectDialogRootContext(),{forwardRef}=useForwardExpose();return(_ctx,_cache$1)=>unref(rootContext)?.modal.value?(openBlock(),createBlock(unref(Presence),{key:0,present:_ctx.forceMount||unref(rootContext).open.value},{default:withCtx(()=>[createVNode(_sfc_main$19,mergeProps(_ctx.$attrs,{ref:unref(forwardRef),as:_ctx.as,"as-child":_ctx.asChild}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):createCommentVNode(``,!0)}}),_sfc_main$16=defineComponent({__name:`Teleport`,props:{to:{default:`body`},disabled:{type:Boolean},defer:{type:Boolean},forceMount:{type:Boolean}},setup(__props){let isMounted=useMounted();return(_ctx,_cache$1)=>unref(isMounted)||_ctx.forceMount?(openBlock(),createBlock(Teleport,{key:0,to:_ctx.to,disabled:_ctx.disabled,defer:_ctx.defer},[renderSlot(_ctx.$slots,`default`)],8,[`to`,`disabled`,`defer`])):createCommentVNode(``,!0)}});function useForwardProps(props){let vm=getCurrentInstance(),defaultProps=Object.keys(vm?.type.props??{}).reduce((prev,curr)=>{let defaultValue=(vm?.type.props[curr]).default;return defaultValue!==void 0&&(prev[curr]=defaultValue),prev},{}),refProps=toRef(props);return computed(()=>{let preservedProps={},assignedProps=vm?.vnode.props??{};return Object.keys(assignedProps).forEach(key$1=>{preservedProps[camelize(key$1)]=assignedProps[key$1]}),Object.keys({...defaultProps,...preservedProps}).reduce((prev,curr)=>(refProps.value[curr]!==void 0&&(prev[curr]=refProps.value[curr]),prev),{})})}function useForwardPropsEmits(props,emit$1){let parsedProps=useForwardProps(props),emitsAsProps=emit$1?useEmitAsProps(emit$1):{};return computed(()=>({...parsedProps.value,...emitsAsProps}))}function usePrimitiveElement(){let primitiveElement=ref(),currentElement=computed(()=>[`#text`,`#comment`].includes(primitiveElement.value?.$el.nodeName)?primitiveElement.value?.$el.nextElementSibling:unrefElement(primitiveElement));return{primitiveElement,currentElement}}function useFormControl(el){return computed(()=>toValue(el)?!!unrefElement(el)?.closest(`form`):!0)}const _sfc_main$17=defineComponent({inheritAttrs:!1,__name:`VisuallyHiddenInputBubble`,props:{name:{},value:{},checked:{type:Boolean,default:void 0},required:{type:Boolean},disabled:{type:Boolean},feature:{default:`fully-hidden`}},setup(__props){let props=__props,{primitiveElement,currentElement}=usePrimitiveElement(),valueState=computed(()=>props.checked??props.value);return watch(valueState,(cur,prev)=>{if(!currentElement.value)return;let input=currentElement.value,inputProto=window.HTMLInputElement.prototype,descriptor=Object.getOwnPropertyDescriptor(inputProto,`value`),setValue=descriptor.set;if(setValue&&cur!==prev){let inputEvent=new Event(`input`,{bubbles:!0}),changeEvent=new Event(`change`,{bubbles:!0});setValue.call(input,cur),input.dispatchEvent(inputEvent),input.dispatchEvent(changeEvent)}}),(_ctx,_cache$1)=>(openBlock(),createBlock(_sfc_main$18,mergeProps({ref_key:`primitiveElement`,ref:primitiveElement},{...props,..._ctx.$attrs},{as:`input`}),null,16))}}),_sfc_main$15=defineComponent({inheritAttrs:!1,__name:`VisuallyHiddenInput`,props:{name:{},value:{},checked:{type:Boolean,default:void 0},required:{type:Boolean},disabled:{type:Boolean},feature:{default:`fully-hidden`}},setup(__props){let props=__props,isFormArrayEmptyAndRequired=computed(()=>typeof props.value==`object`&&Array.isArray(props.value)&&props.value.length===0&&props.required),parsedValue=computed(()=>typeof props.value==`string`||typeof props.value==`number`||typeof props.value==`boolean`?[{name:props.name,value:props.value}]:typeof props.value==`object`&&Array.isArray(props.value)?props.value.flatMap((obj,index$1)=>typeof obj==`object`?Object.entries(obj).map(([key$1,value$1])=>({name:`[${props.name}][${index$1}][${key$1}]`,value:value$1})):{name:`[${props.name}][${index$1}]`,value:obj}):props.value!==null&&typeof props.value==`object`&&!Array.isArray(props.value)?Object.entries(props.value).map(([key$1,value$1])=>({name:`[${props.name}][${key$1}]`,value:value$1})):[]);return(_ctx,_cache$1)=>isFormArrayEmptyAndRequired.value?(openBlock(),createBlock(_sfc_main$17,mergeProps({key:_ctx.name},{...props,..._ctx.$attrs},{name:_ctx.name,value:_ctx.value}),null,16,[`name`,`value`])):(openBlock(!0),createElementBlock(Fragment,{key:1},renderList(parsedValue.value,parsed=>(openBlock(),createBlock(_sfc_main$17,mergeProps({key:parsed.name,ref_for:!0},{...props,..._ctx.$attrs},{name:parsed.name,value:parsed.value}),null,16,[`name`,`value`]))),128))}}),_sfc_main$7=defineComponent({__name:`DialogPortal`,props:{to:{},disabled:{type:Boolean},defer:{type:Boolean},forceMount:{type:Boolean}},setup(__props){let props=__props;return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(_sfc_main$16),normalizeProps(guardReactiveProps(props)),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},16))}}),[injectSwitchRootContext,provideSwitchRootContext]=createContext(`SwitchRoot`),_sfc_main$13=defineComponent({__name:`SwitchRoot`,props:{defaultValue:{type:Boolean},modelValue:{type:[Boolean,null],default:void 0},disabled:{type:Boolean},id:{},value:{default:`on`},asChild:{type:Boolean},as:{default:`button`},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,{disabled}=toRefs(props),modelValue=useVModel(props,`modelValue`,emit$1,{defaultValue:props.defaultValue,passive:props.modelValue===void 0});function toggleCheck(){disabled.value||(modelValue.value=!modelValue.value)}let{forwardRef,currentElement}=useForwardExpose(),isFormControl=useFormControl(currentElement),ariaLabel=computed(()=>props.id&¤tElement.value?document.querySelector(`[for="${props.id}"]`)?.innerText:void 0);return provideSwitchRootContext({modelValue,toggleCheck,disabled}),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),mergeProps(_ctx.$attrs,{id:_ctx.id,ref:unref(forwardRef),role:`switch`,type:_ctx.as===`button`?`button`:void 0,value:_ctx.value,"aria-label":_ctx.$attrs[`aria-label`]||ariaLabel.value,"aria-checked":unref(modelValue),"aria-required":_ctx.required,"data-state":unref(modelValue)?`checked`:`unchecked`,"data-disabled":unref(disabled)?``:void 0,"as-child":_ctx.asChild,as:_ctx.as,disabled:unref(disabled),onClick:toggleCheck,onKeydown:withKeys(withModifiers(toggleCheck,[`prevent`]),[`enter`])}),{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`,{modelValue:unref(modelValue)}),unref(isFormControl)&&_ctx.name?(openBlock(),createBlock(unref(_sfc_main$15),{key:0,type:`checkbox`,name:_ctx.name,disabled:unref(disabled),required:_ctx.required,value:_ctx.value,checked:!!unref(modelValue)},null,8,[`name`,`disabled`,`required`,`value`,`checked`])):createCommentVNode(``,!0)]),_:3},16,[`id`,`type`,`value`,`aria-label`,`aria-checked`,`aria-required`,`data-state`,`data-disabled`,`as-child`,`as`,`disabled`,`onKeydown`]))}}),_sfc_main$14=defineComponent({__name:`SwitchThumb`,props:{asChild:{type:Boolean},as:{default:`span`}},setup(__props){let rootContext=injectSwitchRootContext();return useForwardExpose(),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(Primitive),{"data-state":unref(rootContext).modelValue?.value?`checked`:`unchecked`,"data-disabled":unref(rootContext).disabled.value?``:void 0,"as-child":_ctx.asChild,as:_ctx.as},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`data-state`,`data-disabled`,`as-child`,`as`]))}});var Checkbox_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Checkbox`,props:{modelValue:{type:Boolean,required:!0},modelModifiers:{}},emits:[`update:modelValue`],setup(__props){let modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(_sfc_main$13),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,transition:`background duration-250 ease-in-out`,outline:`focus-within:none`,flex:`~`,border:`neutral-300 dark:neutral-700 data-[state=checked]:primary-200 data-[state=unchecked]:neutral-300 focus-within:neutral-800`,bg:`data-[state=checked]:primary-400 data-[state=unchecked]:neutral-300 data-[state=checked]:dark:primary-400/80 dark:data-[state=unchecked]:neutral-800`,relative:``,"h-7":``,w:`12.5`,"rounded-full":``,shadow:`sm focus-within:shadow-neutral-800 focus-within:[0_0_0_1px] `},{default:withCtx(()=>[createVNode(unref(_sfc_main$14),{"my-auto":``,"size-6":``,flex:``,"items-center":``,"justify-center":``,"translate-x":`0.5 data-[state=checked]:full`,"rounded-full":``,"bg-white":``,"text-xs":``,"shadow-xl":``,transition:`transform duration-250 ease-in-out`,"will-change-transform":``})]),_:1},8,[`modelValue`]))}}),Checkbox_default=Checkbox_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$36={flex:`~ col gap-4`},_hoisted_2$23={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_3$17={flex:`1`},_hoisted_4$15={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_5$13={class:`text-xs text-neutral-500 dark:text-neutral-400`};var FieldCheckbox_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldCheckbox`,props:mergeModels({label:{},description:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,_hoisted_1$36,[createBaseVNode(`div`,_hoisted_2$23,[createBaseVNode(`div`,_hoisted_3$17,[createBaseVNode(`div`,_hoisted_4$15,toDisplayString(props.label),1),createBaseVNode(`div`,_hoisted_5$13,toDisplayString(props.description),1)]),createVNode(Checkbox_default,{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event},null,8,[`modelValue`])])]))}}),FieldCheckbox_default=FieldCheckbox_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$35=[`type`];var Input_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Input`,props:mergeModels({type:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>withDirectives((openBlock(),createElementBlock(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,type:props.type||`text`,border:`focus:primary-300 dark:focus:primary-400/50 2 solid neutral-100 dark:neutral-900`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-50 dark:neutral-950 focus:neutral-50 dark:focus:neutral-900`},null,8,_hoisted_1$35)),[[vModelDynamic,modelValue.value]])}}),Input_default=Input_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$34={"max-w-full":``},_hoisted_2$22={flex:`~ col gap-4`},_hoisted_3$16={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$14={key:0,class:`text-red-500`},_hoisted_5$12={class:`text-xs text-neutral-500 dark:text-neutral-400`,"text-nowrap":``},_hoisted_6$11=[`type`,`placeholder`];var FieldInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldInput`,props:mergeModels({label:{},description:{},placeholder:{},required:{type:Boolean},type:{},inputClass:{},singleLine:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$34,[createBaseVNode(`label`,_hoisted_2$22,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_3$16,[createTextVNode(toDisplayString(props.label)+` `,1),props.required===!1?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_4$14,`*`))]),createBaseVNode(`div`,_hoisted_5$12,toDisplayString(props.description),1)]),_ctx.singleLine?(openBlock(),createBlock(Input_default,{key:0,modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,type:props.type,placeholder:props.placeholder,class:normalizeClass(props.inputClass)},null,8,[`modelValue`,`type`,`placeholder`,`class`])):withDirectives((openBlock(),createElementBlock(`textarea`,{key:1,"onUpdate:modelValue":_cache$1[1]||=$event=>modelValue.value=$event,type:props.type,placeholder:props.placeholder,class:normalizeClass(props.inputClass),border:`focus:primary-300 dark:focus:primary-400/50 2 solid neutral-100 dark:neutral-900`,transition:`all duration-200 ease-in-out`,text:`disabled:neutral-400 dark:disabled:neutral-600`,cursor:`disabled:not-allowed`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-sm":``,"outline-none":``,shadow:`sm`,bg:`neutral-50 dark:neutral-950 focus:neutral-50 dark:focus:neutral-900`},null,10,_hoisted_6$11)),[[vModelText,modelValue.value]])])]))}}),FieldInput_default=FieldInput_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$33={flex:`~ gap-2`};var InputKeyValue_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`InputKeyValue`,props:mergeModels({name:{},keyPlaceholder:{},valuePlaceholder:{}},{propertyKey:{required:!0},propertyKeyModifiers:{},propertyValue:{required:!0},propertyValueModifiers:{}}),emits:[`update:propertyKey`,`update:propertyValue`],setup(__props){let props=__props,key$1=useModel(__props,`propertyKey`),value$1=useModel(__props,`propertyValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$33,[createVNode(Input_default,{modelValue:key$1.value,"onUpdate:modelValue":_cache$1[0]||=$event=>key$1.value=$event,placeholder:props.keyPlaceholder,class:`w-1/2`},null,8,[`modelValue`,`placeholder`]),createVNode(Input_default,{modelValue:value$1.value,"onUpdate:modelValue":_cache$1[1]||=$event=>value$1.value=$event,placeholder:props.valuePlaceholder,class:`w-1/2`},null,8,[`modelValue`,`placeholder`])]))}}),InputKeyValue_default=InputKeyValue_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$32={"max-w-full":``},_hoisted_2$21={flex:`~ col gap-2`},_hoisted_3$15={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$13={key:0,class:`text-red-500`},_hoisted_5$11={class:`text-xs text-neutral-500 dark:text-neutral-400`,"text-nowrap":``},_hoisted_6$10={flex:`~ col gap-2`},_hoisted_7$9=[`onClick`];var FieldKeyValues_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldKeyValues`,props:mergeModels({label:{},description:{},name:{},keyPlaceholder:{},valuePlaceholder:{},required:{type:Boolean},inputClass:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:mergeModels([`remove`,`add`],[`update:modelValue`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,keyValues=useModel(__props,`modelValue`),inputKey=ref(``),inputValue=ref(``);return watch([inputKey,inputValue],()=>{emit$1(`add`,inputKey.value,inputValue.value)}),(_ctx,_cache$1)=>{let _directive_auto_animate=resolveDirective(`auto-animate`);return openBlock(),createElementBlock(`div`,_hoisted_1$32,[createBaseVNode(`label`,_hoisted_2$21,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_3$15,[createTextVNode(toDisplayString(props.label)+` `,1),props.required===!1?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_4$13,`*`))]),createBaseVNode(`div`,_hoisted_5$11,toDisplayString(props.description),1)]),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_6$10,[(openBlock(!0),createElementBlock(Fragment,null,renderList(keyValues.value,(keyValue,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,"w-full":``,flex:``,"items-center":``,"gap-2":``},[createVNode(InputKeyValue_default,{"property-key":keyValue.key,"onUpdate:propertyKey":$event=>keyValue.key=$event,"property-value":keyValue.value,"onUpdate:propertyValue":$event=>keyValue.value=$event,"key-placeholder":props.keyPlaceholder,"value-placeholder":props.valuePlaceholder,"w-full":``},null,8,[`property-key`,`onUpdate:propertyKey`,`property-value`,`onUpdate:propertyValue`,`key-placeholder`,`value-placeholder`]),createBaseVNode(`button`,{onClick:$event=>emit$1(`remove`,index$1)},_cache$1[0]||=[createBaseVNode(`div`,{"i-solar:minus-circle-line-duotone":``,size:`6`},null,-1)],8,_hoisted_7$9)]))),128))])),[[_directive_auto_animate]])])])}}}),FieldKeyValues_default=FieldKeyValues_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$31=[`min`,`max`,`step`];var Range_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Range`,props:mergeModels({min:{default:0},max:{default:100},step:{default:1},disabled:{type:Boolean,default:!1},thumbColor:{default:`#9090906e`},trackColor:{default:`gray`},trackValueColor:{default:`red`}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`),scaledMin=computed(()=>props.min*1e4),scaledMax=computed(()=>props.max*1e4),scaledStep=computed(()=>props.step*1e4),sliderRef=ref(),sliderValue=computed({get:()=>modelValue.value*1e4,set:value$1=>{modelValue.value=value$1/1e4,updateTrackColor()}});onMounted(()=>{updateTrackColor()});function updateTrackColor(){sliderRef.value&&(sliderRef.value.style.setProperty(`--value`,sliderRef.value.value),sliderRef.value.style.setProperty(`--min`,sliderRef.value.min?sliderRef.value.min:props.min.toString()),sliderRef.value.style.setProperty(`--max`,sliderRef.value.max?sliderRef.value.max:props.max.toString()))}function handleInput(e$3){let target$1=e$3.target;target$1.style.setProperty(`--value`,target$1.value)}return(_ctx,_cache$1)=>withDirectives((openBlock(),createElementBlock(`input`,{ref_key:`sliderRef`,ref:sliderRef,"onUpdate:modelValue":_cache$1[0]||=$event=>sliderValue.value=$event,type:`range`,min:scaledMin.value,max:scaledMax.value,step:scaledStep.value,class:`slider-progress form_input-range`,onInput:handleInput},null,40,_hoisted_1$31)),[[vModelText,sliderValue.value,void 0,{number:!0}]])}}),Range_default=__plugin_vue_export_helper_default(Range_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-8956898c`]]);const _hoisted_1$30={flex:`~ col gap-4`},_hoisted_2$20={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_3$14={flex:`1`},_hoisted_4$12={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_5$10={class:`text-xs text-neutral-500 dark:text-neutral-400`},_hoisted_6$9={"font-mono":``},_hoisted_7$8={flex:`~ row`,"items-center":``,"gap-2":``};var FieldRange_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldRange`,props:mergeModels({min:{},max:{},step:{},label:{},description:{},formatValue:{type:Function}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,_hoisted_1$30,[createBaseVNode(`div`,_hoisted_2$20,[createBaseVNode(`div`,_hoisted_3$14,[createBaseVNode(`div`,_hoisted_4$12,toDisplayString(_ctx.label),1),createBaseVNode(`div`,_hoisted_5$10,toDisplayString(_ctx.description),1)]),createBaseVNode(`span`,_hoisted_6$9,toDisplayString(props.formatValue?.(modelValue.value)||modelValue.value),1)]),createBaseVNode(`div`,_hoisted_7$8,[createVNode(Range_default,{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,min:_ctx.min||0,max:_ctx.max||1,step:_ctx.step||.01,"w-full":``},null,8,[`modelValue`,`min`,`max`,`step`])])]))}}),FieldRange_default=FieldRange_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$29={flex:`~ col gap-4`},_hoisted_2$19={flex:`1`},_hoisted_3$13={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$11={class:`text-xs text-neutral-500 dark:text-neutral-400`};var FieldSelect_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldSelect`,props:mergeModels({label:{},description:{},options:{},placeholder:{},disabled:{type:Boolean},layout:{}},{modelValue:{required:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,_hoisted_1$29,[createBaseVNode(`div`,{class:normalizeClass([props.layout===`horizontal`?`flex flex-row items-center justify-between gap-2`:`flex flex-col items-start justify-center gap-2`])},[createBaseVNode(`div`,_hoisted_2$19,[createBaseVNode(`div`,_hoisted_3$13,toDisplayString(props.label),1),createBaseVNode(`div`,_hoisted_4$11,toDisplayString(props.description),1)]),renderSlot(_ctx.$slots,`default`,{},()=>[createVNode(unref(Select_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,options:props.options,placeholder:props.placeholder,disabled:props.disabled,title:_ctx.label},{default:withCtx(({value:value$1})=>[createTextVNode(toDisplayString(props.options?.find(option$1=>option$1.value===value$1)?.label||props.placeholder),1)]),_:1},8,[`modelValue`,`options`,`placeholder`,`disabled`,`title`])])],2)]))}}),FieldSelect_default=FieldSelect_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$28={class:`max-w-full`},_hoisted_2$18={class:`flex flex-col gap-2`},_hoisted_3$12={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_4$10={key:0,class:`text-red-500`},_hoisted_5$9={class:`text-nowrap text-xs text-neutral-500 dark:text-neutral-400`},_hoisted_6$8={class:`~ col gap-2`},_hoisted_7$7=[`onClick`];var FieldValues_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FieldValues`,props:mergeModels({label:{},description:{},name:{},valuePlaceholder:{},required:{type:Boolean},inputClass:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:mergeModels([`remove`,`add`],[`update:modelValue`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,items=useModel(__props,`modelValue`);function addItem(){items.value.push(``),emit$1(`add`)}function removeItem(index$1){items.value.splice(index$1,1),emit$1(`remove`,index$1)}return(_ctx,_cache$1)=>{let _directive_auto_animate=resolveDirective(`auto-animate`);return openBlock(),createElementBlock(`div`,_hoisted_1$28,[createBaseVNode(`label`,_hoisted_2$18,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_3$12,[createTextVNode(toDisplayString(props.label)+` `,1),props.required===!1?createCommentVNode(``,!0):(openBlock(),createElementBlock(`span`,_hoisted_4$10,`*`))]),createBaseVNode(`div`,_hoisted_5$9,toDisplayString(props.description),1)]),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_6$8,[(openBlock(!0),createElementBlock(Fragment,null,renderList(items.value,(_$2,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1,class:`w-full flex items-center gap-2`},[createVNode(Input_default,{modelValue:items.value[index$1],"onUpdate:modelValue":$event=>items.value[index$1]=$event,placeholder:props.valuePlaceholder,class:`w-90%`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),createBaseVNode(`button`,{"i-solar:minus-circle-line-duotone":``,size:`6`,class:`min-w-20px w-10% flex text-red-500`,onClick:$event=>removeItem(index$1)},null,8,_hoisted_7$7)]))),128)),createBaseVNode(`div`,{"i-solar:add-circle-line-duotone":``,size:`6`,class:`mt-2 w-4/5 text-blue-500`,onClick:addItem})])),[[_directive_auto_animate]])])])}}}),FieldValues_default=FieldValues_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$27=[`disabled`];var ColorHueRange_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ColorHueRange`,props:mergeModels({disabled:{type:Boolean},class:{}},{colorValue:{type:String,default:``},colorValueModifiers:{}}),emits:[`update:colorValue`],setup(__props){let props=__props,colorValue=useModel(__props,`colorValue`);return(_ctx,_cache$1)=>withDirectives((openBlock(),createElementBlock(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>colorValue.value=$event,type:`range`,min:`0`,max:`360`,step:`0.01`,class:normalizeClass([`color-hue-range`,[props.disabled?`opacity-25 cursor-not-allowed`:`cursor-pointer`,props.class||``]]),transition:`all ease-in-out duration-250`,disabled:props.disabled},null,10,_hoisted_1$27)),[[vModelText,colorValue.value]])}}),ColorHueRange_default=__plugin_vue_export_helper_default(ColorHueRange_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-49fc55e8`]]),Option_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Option`,props:{value:{},label:{},active:{type:Boolean}},setup(__props){let props=__props,selectOption=inject(`selectOption`),hide$1=inject(`hide`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,mergeProps({..._ctx.$attrs,class:null,style:null},{class:[`cursor-pointer rounded px-2 py-1 text-neutral-700 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-800`,{"bg-neutral-100 dark:bg-neutral-800":props.active}],"line-clamp-1":``,"overflow-hidden":``,"text-ellipsis":``,"whitespace-pre-wrap":``,"text-xs":``,"transition-colors":``,"duration-150":``,"ease-in-out":``,"will-change-background-color":``,"will-change-color":``,onClick:_cache$1[0]||=()=>{unref(selectOption)(props.value),unref(hide$1)()}}),[renderSlot(_ctx.$slots,`default`,{},()=>[createTextVNode(toDisplayString(props.label),1)])],16))}}),Option_default=Option_vue_vue_type_script_setup_true_lang_default;function n$1(t){var e$3;return(e$3=t.ownerDocument)?.defaultView||window}function o(t){return n$1(t).getComputedStyle(t)}const i=Math.min,r=Math.max,l=Math.round;function c$1(t){let e$3=o(t),n$2=parseFloat(e$3.width),i$1=parseFloat(e$3.height),r$2=t.offsetWidth,c$4=t.offsetHeight,s$1=l(n$2)!==r$2||l(i$1)!==c$4;return s$1&&(n$2=r$2,i$1=c$4),{width:n$2,height:i$1,fallback:s$1}}function s(t){return h$2(t)?(t.nodeName||``).toLowerCase():``}let f;function u(){if(f)return f;let t=navigator.userAgentData;return t&&Array.isArray(t.brands)?(f=t.brands.map(t$1=>t$1.brand+`/`+t$1.version).join(` `),f):navigator.userAgent}function a(t){return t instanceof n$1(t).HTMLElement}function d$1(t){return t instanceof n$1(t).Element}function h$2(t){return t instanceof n$1(t).Node}function p$1(t){return typeof ShadowRoot>`u`?!1:t instanceof n$1(t).ShadowRoot||t instanceof ShadowRoot}function g$1(t){let{overflow:e$3,overflowX:n$2,overflowY:i$1,display:r$2}=o(t);return/auto|scroll|overlay|hidden|clip/.test(e$3+i$1+n$2)&&![`inline`,`contents`].includes(r$2)}function m$1(t){return[`table`,`td`,`th`].includes(s(t))}function y$1(t){let e$3=/firefox/i.test(u()),n$2=o(t),i$1=n$2.backdropFilter||n$2.WebkitBackdropFilter;return n$2.transform!==`none`||n$2.perspective!==`none`||!!i$1&&i$1!==`none`||e$3&&n$2.willChange===`filter`||e$3&&!!n$2.filter&&n$2.filter!==`none`||[`transform`,`perspective`].some(t$1=>n$2.willChange.includes(t$1))||[`paint`,`layout`,`strict`,`content`].some(t$1=>{let e$4=n$2.contain;return e$4!=null&&e$4.includes(t$1)})}function x$2(){return!/^((?!chrome|android).)*safari/i.test(u())}function w(t){return[`html`,`body`,`#document`].includes(s(t))}function v(t){return d$1(t)?t:t.contextElement}const b$1={x:1,y:1};function L(t){let e$3=v(t);if(!a(e$3))return b$1;let n$2=e$3.getBoundingClientRect(),{width:o$1,height:i$1,fallback:r$2}=c$1(e$3),s$1=(r$2?l(n$2.width):n$2.width)/o$1,f$3=(r$2?l(n$2.height):n$2.height)/i$1;return s$1&&Number.isFinite(s$1)||(s$1=1),f$3&&Number.isFinite(f$3)||(f$3=1),{x:s$1,y:f$3}}function E$1(t,e$3,o$1,i$1){var r$2,l$1;e$3===void 0&&(e$3=!1),o$1===void 0&&(o$1=!1);let c$4=t.getBoundingClientRect(),s$1=v(t),f$3=b$1;e$3&&(i$1?d$1(i$1)&&(f$3=L(i$1)):f$3=L(t));let u$1=s$1?n$1(s$1):window,a$2=!x$2()&&o$1,h$3=(c$4.left+(a$2&&(r$2=u$1.visualViewport)?.offsetLeft||0))/f$3.x,p$5=(c$4.top+(a$2&&(l$1=u$1.visualViewport)?.offsetTop||0))/f$3.y,g$2=c$4.width/f$3.x,m$2=c$4.height/f$3.y;if(s$1){let t$1=n$1(s$1),e$4=i$1&&d$1(i$1)?n$1(i$1):i$1,o$2=t$1.frameElement;for(;o$2&&i$1&&e$4!==t$1;){let t$2=L(o$2),e$5=o$2.getBoundingClientRect(),i$2=getComputedStyle(o$2);e$5.x+=(o$2.clientLeft+parseFloat(i$2.paddingLeft))*t$2.x,e$5.y+=(o$2.clientTop+parseFloat(i$2.paddingTop))*t$2.y,h$3*=t$2.x,p$5*=t$2.y,g$2*=t$2.x,m$2*=t$2.y,h$3+=e$5.x,p$5+=e$5.y,o$2=n$1(o$2).frameElement}}return{width:g$2,height:m$2,top:p$5,right:h$3+g$2,bottom:p$5+m$2,left:h$3,x:h$3,y:p$5}}function R(t){return((h$2(t)?t.ownerDocument:t.document)||window.document).documentElement}function T(t){return d$1(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function C$2(t){return E$1(R(t)).left+T(t).scrollLeft}function F(t){if(s(t)===`html`)return t;let e$3=t.assignedSlot||t.parentNode||p$1(t)&&t.host||R(t);return p$1(e$3)?e$3.host:e$3}function W(t){let e$3=F(t);return w(e$3)?e$3.ownerDocument.body:a(e$3)&&g$1(e$3)?e$3:W(e$3)}function D(t,e$3){var o$1;e$3===void 0&&(e$3=[]);let i$1=W(t),r$2=i$1===(o$1=t.ownerDocument)?.body,l$1=n$1(i$1);return r$2?e$3.concat(l$1,l$1.visualViewport||[],g$1(i$1)?i$1:[]):e$3.concat(i$1,D(i$1))}function S$1(e$3,i$1,l$1){return i$1===`viewport`?rectToClientRect(function(t,e$4){let o$1=n$1(t),i$2=R(t),r$2=o$1.visualViewport,l$2=i$2.clientWidth,c$4=i$2.clientHeight,s$1=0,f$3=0;if(r$2){l$2=r$2.width,c$4=r$2.height;let t$1=x$2();(t$1||!t$1&&e$4===`fixed`)&&(s$1=r$2.offsetLeft,f$3=r$2.offsetTop)}return{width:l$2,height:c$4,x:s$1,y:f$3}}(e$3,l$1)):d$1(i$1)?rectToClientRect(function(t,e$4){let n$2=E$1(t,!0,e$4===`fixed`),o$1=n$2.top+t.clientTop,i$2=n$2.left+t.clientLeft,r$2=a(t)?L(t):{x:1,y:1};return{width:t.clientWidth*r$2.x,height:t.clientHeight*r$2.y,x:i$2*r$2.x,y:o$1*r$2.y}}(i$1,l$1)):rectToClientRect(function(t){let e$4=R(t),n$2=T(t),i$2=t.ownerDocument.body,l$2=r(e$4.scrollWidth,e$4.clientWidth,i$2.scrollWidth,i$2.clientWidth),c$4=r(e$4.scrollHeight,e$4.clientHeight,i$2.scrollHeight,i$2.clientHeight),s$1=-n$2.scrollLeft+C$2(t),f$3=-n$2.scrollTop;return o(i$2).direction===`rtl`&&(s$1+=r(e$4.clientWidth,i$2.clientWidth)-l$2),{width:l$2,height:c$4,x:s$1,y:f$3}}(R(e$3)))}function A(t){return a(t)&&o(t).position!==`fixed`?t.offsetParent:null}function H$1(t){let e$3=n$1(t),i$1=A(t);for(;i$1&&m$1(i$1)&&o(i$1).position===`static`;)i$1=A(i$1);return i$1&&(s(i$1)===`html`||s(i$1)===`body`&&o(i$1).position===`static`&&!y$1(i$1))?e$3:i$1||function(t$1){let e$4=F(t$1);for(;a(e$4)&&!w(e$4);){if(y$1(e$4))return e$4;e$4=F(e$4)}return null}(t)||e$3}function O$1(t,e$3,n$2){let o$1=a(e$3),i$1=R(e$3),r$2=E$1(t,!0,n$2===`fixed`,e$3),l$1={scrollLeft:0,scrollTop:0},c$4={x:0,y:0};if(o$1||!o$1&&n$2!==`fixed`)if((s(e$3)!==`body`||g$1(i$1))&&(l$1=T(e$3)),a(e$3)){let t$1=E$1(e$3,!0);c$4.x=t$1.x+e$3.clientLeft,c$4.y=t$1.y+e$3.clientTop}else i$1&&(c$4.x=C$2(i$1));return{x:r$2.left+l$1.scrollLeft-c$4.x,y:r$2.top+l$1.scrollTop-c$4.y,width:r$2.width,height:r$2.height}}const P={getClippingRect:function(t){let{element:e$3,boundary:n$2,rootBoundary:l$1,strategy:c$4}=t,f$3=n$2===`clippingAncestors`?function(t$1,e$4){let n$3=e$4.get(t$1);if(n$3)return n$3;let i$1=D(t$1).filter(t$2=>d$1(t$2)&&s(t$2)!==`body`),r$2=null,l$2=o(t$1).position===`fixed`,c$5=l$2?F(t$1):t$1;for(;d$1(c$5)&&!w(c$5);){let t$2=o(c$5),e$5=y$1(c$5);(l$2?e$5||r$2:e$5||t$2.position!==`static`||!r$2||![`absolute`,`fixed`].includes(r$2.position))?r$2=t$2:i$1=i$1.filter(t$3=>t$3!==c$5),c$5=F(c$5)}return e$4.set(t$1,i$1),i$1}(e$3,this._c):[].concat(n$2),u$1=[...f$3,l$1],a$2=u$1[0],h$3=u$1.reduce((t$1,n$3)=>{let o$1=S$1(e$3,n$3,c$4);return t$1.top=r(o$1.top,t$1.top),t$1.right=i(o$1.right,t$1.right),t$1.bottom=i(o$1.bottom,t$1.bottom),t$1.left=r(o$1.left,t$1.left),t$1},S$1(e$3,a$2,c$4));return{width:h$3.right-h$3.left,height:h$3.bottom-h$3.top,x:h$3.left,y:h$3.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(t){let{rect:e$3,offsetParent:n$2,strategy:o$1}=t,i$1=a(n$2),r$2=R(n$2);if(n$2===r$2)return e$3;let l$1={scrollLeft:0,scrollTop:0},c$4={x:1,y:1},f$3={x:0,y:0};if((i$1||!i$1&&o$1!==`fixed`)&&((s(n$2)!==`body`||g$1(r$2))&&(l$1=T(n$2)),a(n$2))){let t$1=E$1(n$2);c$4=L(n$2),f$3.x=t$1.x+n$2.clientLeft,f$3.y=t$1.y+n$2.clientTop}return{width:e$3.width*c$4.x,height:e$3.height*c$4.y,x:e$3.x*c$4.x-l$1.scrollLeft*c$4.x+f$3.x,y:e$3.y*c$4.y-l$1.scrollTop*c$4.y+f$3.y}},isElement:d$1,getDimensions:function(t){return a(t)?c$1(t):t.getBoundingClientRect()},getOffsetParent:H$1,getDocumentElement:R,getScale:L,async getElementRects(t){let{reference:e$3,floating:n$2,strategy:o$1}=t,i$1=this.getOffsetParent||H$1,r$2=this.getDimensions;return{reference:O$1(e$3,await i$1(n$2),o$1),floating:{x:0,y:0,...await r$2(n$2)}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>o(t).direction===`rtl`},B=(t,n$2,o$1)=>{let i$1=new Map,r$2={platform:P,...o$1},l$1={...r$2.platform,_c:i$1};return computePosition(t,n$2,{...r$2,platform:l$1})},h$1={disabled:!1,distance:5,skidding:0,container:`body`,boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:`absolute`,preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:`top`,triggers:[`hover`,`focus`,`touch`],hideTriggers:e$3=>[...e$3,`click`],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:`...`},dropdown:{placement:`bottom`,triggers:[`click`],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:`dropdown`,triggers:[`hover`,`focus`],popperTriggers:[`hover`],delay:{show:0,hide:400}}}};function S(e$3,t){let o$1=h$1.themes[e$3]||{},i$1;do i$1=o$1[t],typeof i$1>`u`?o$1.$extend?o$1=h$1.themes[o$1.$extend]||{}:(o$1=null,i$1=h$1[t]):o$1=null;while(o$1);return i$1}function Ze(e$3){let t=[e$3],o$1=h$1.themes[e$3]||{};do o$1.$extend&&!o$1.$resetCss?(t.push(o$1.$extend),o$1=h$1.themes[o$1.$extend]||{}):o$1=null;while(o$1);return t.map(i$1=>`v-popper--theme-${i$1}`)}function re$2(e$3){let t=[e$3],o$1=h$1.themes[e$3]||{};do o$1.$extend?(t.push(o$1.$extend),o$1=h$1.themes[o$1.$extend]||{}):o$1=null;while(o$1);return t}let $=!1;if(typeof window<`u`){$=!1;try{let e$3=Object.defineProperty({},`passive`,{get(){$=!0}});window.addEventListener(`test`,null,e$3)}catch{}}let _e$1=!1;typeof window<`u`&&typeof navigator<`u`&&(_e$1=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Te$1=[`auto`,`top`,`bottom`,`left`,`right`].reduce((e$3,t)=>e$3.concat([t,`${t}-start`,`${t}-end`]),[]),pe={hover:`mouseenter`,focus:`focus`,click:`click`,touch:`touchstart`,pointer:`pointerdown`},ae={hover:`mouseleave`,focus:`blur`,click:`click`,touch:`touchend`,pointer:`pointerup`};function de$1(e$3,t){let o$1=e$3.indexOf(t);o$1!==-1&&e$3.splice(o$1,1)}function G(){return new Promise(e$3=>requestAnimationFrame(()=>{requestAnimationFrame(e$3)}))}const d=[];let g=null;const le={};function he(e$3){let t=le[e$3];return t||=le[e$3]=[],t}let Y=function(){};typeof window<`u`&&(Y=window.Element);function n(e$3){return function(t){return S(t.theme,e$3)}}const q=`__floating-vue__popper`,Q$1=()=>defineComponent({name:`VPopper`,provide(){return{[q]:{parentPopper:this}}},inject:{[q]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:n(`disabled`)},positioningDisabled:{type:Boolean,default:n(`positioningDisabled`)},placement:{type:String,default:n(`placement`),validator:e$3=>Te$1.includes(e$3)},delay:{type:[String,Number,Object],default:n(`delay`)},distance:{type:[Number,String],default:n(`distance`)},skidding:{type:[Number,String],default:n(`skidding`)},triggers:{type:Array,default:n(`triggers`)},showTriggers:{type:[Array,Function],default:n(`showTriggers`)},hideTriggers:{type:[Array,Function],default:n(`hideTriggers`)},popperTriggers:{type:Array,default:n(`popperTriggers`)},popperShowTriggers:{type:[Array,Function],default:n(`popperShowTriggers`)},popperHideTriggers:{type:[Array,Function],default:n(`popperHideTriggers`)},container:{type:[String,Object,Y,Boolean],default:n(`container`)},boundary:{type:[String,Y],default:n(`boundary`)},strategy:{type:String,validator:e$3=>[`absolute`,`fixed`].includes(e$3),default:n(`strategy`)},autoHide:{type:[Boolean,Function],default:n(`autoHide`)},handleResize:{type:Boolean,default:n(`handleResize`)},instantMove:{type:Boolean,default:n(`instantMove`)},eagerMount:{type:Boolean,default:n(`eagerMount`)},popperClass:{type:[String,Array,Object],default:n(`popperClass`)},computeTransformOrigin:{type:Boolean,default:n(`computeTransformOrigin`)},autoMinSize:{type:Boolean,default:n(`autoMinSize`)},autoSize:{type:[Boolean,String],default:n(`autoSize`)},autoMaxSize:{type:Boolean,default:n(`autoMaxSize`)},autoBoundaryMaxSize:{type:Boolean,default:n(`autoBoundaryMaxSize`)},preventOverflow:{type:Boolean,default:n(`preventOverflow`)},overflowPadding:{type:[Number,String],default:n(`overflowPadding`)},arrowPadding:{type:[Number,String],default:n(`arrowPadding`)},arrowOverflow:{type:Boolean,default:n(`arrowOverflow`)},flip:{type:Boolean,default:n(`flip`)},shift:{type:Boolean,default:n(`shift`)},shiftCrossAxis:{type:Boolean,default:n(`shiftCrossAxis`)},noAutoFocus:{type:Boolean,default:n(`noAutoFocus`)},disposeTimeout:{type:Number,default:n(`disposeTimeout`)}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e$3=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:``,strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e$3=>e$3.toString(36).substring(2,10)).join(`_`)}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId==null?this.randomId:this.ariaId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide==`function`?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e$3;return(e$3=this[q])?.parentPopper},hasPopperShowTriggerHover(){var e$3,t;return(e$3=this.popperTriggers)?.includes(`hover`)||(t=this.popperShowTriggers)?.includes(`hover`)}},watch:{shown:`$_autoShowHide`,disabled(e$3){e$3?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:`$_refreshListeners`,deep:!0},positioningDisabled:`$_refreshListeners`,...[`placement`,`distance`,`skidding`,`boundary`,`strategy`,`overflowPadding`,`arrowPadding`,`preventOverflow`,`shift`,`shiftCrossAxis`,`flip`].reduce((e$3,t)=>(e$3[t]=`$_computePosition`,e$3),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e$3=null,skipDelay:t=!1,force:o$1=!1}={}){var i$1,s$1;(i$1=this.parentPopper)!=null&&i$1.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o$1||!this.disabled)&&((s$1=this.parentPopper)?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e$3,t),this.$emit(`show`),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit(`update:shown`,!0))},hide({event:e$3=null,skipDelay:t=!1}={}){var o$1;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}(o$1=this.parentPopper)?.lockedChild===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e$3,t),this.$emit(`hide`),this.$emit(`update:shown`,!1)}},init(){var e$3;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=(e$3=this.referenceNode)?.call(this)??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(`.v-popper__inner`),this.$_arrowNode=this.$_popperNode.querySelector(`.v-popper__arrow-container`),this.$_swapTargetAttrs(`title`,`data-original-title`),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs(`data-original-title`,`title`))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit(`resize`))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;let e$3={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e$3.middleware.push(offset({mainAxis:this.distance,crossAxis:this.skidding}));let t=this.placement.startsWith(`auto`);if(t?e$3.middleware.push(autoPlacement({alignment:this.placement.split(`-`)[1]??``})):e$3.placement=this.placement,this.preventOverflow&&(this.shift&&e$3.middleware.push(shift({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e$3.middleware.push(flip({padding:this.overflowPadding,boundary:this.boundary}))),e$3.middleware.push(arrow({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e$3.middleware.push({name:`arrowOverflow`,fn:({placement:i$1,rects:s$1,middlewareData:r$2})=>{let p$5,{centerOffset:a$2}=r$2.arrow;return p$5=i$1.startsWith(`top`)||i$1.startsWith(`bottom`)?Math.abs(a$2)>s$1.reference.width/2:Math.abs(a$2)>s$1.reference.height/2,{data:{overflow:p$5}}}}),this.autoMinSize||this.autoSize){let i$1=this.autoSize?this.autoSize:this.autoMinSize?`min`:null;e$3.middleware.push({name:`autoSize`,fn:({rects:s$1,placement:r$2,middlewareData:p$5})=>{var u$1;if((u$1=p$5.autoSize)!=null&&u$1.skip)return{};let a$2,l$1;return r$2.startsWith(`top`)||r$2.startsWith(`bottom`)?a$2=s$1.reference.width:l$1=s$1.reference.height,this.$_innerNode.style[i$1===`min`?`minWidth`:i$1===`max`?`maxWidth`:`width`]=a$2==null?null:`${a$2}px`,this.$_innerNode.style[i$1===`min`?`minHeight`:i$1===`max`?`maxHeight`:`height`]=l$1==null?null:`${l$1}px`,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e$3.middleware.push(size({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i$1,availableHeight:s$1})=>{this.$_innerNode.style.maxWidth=i$1==null?null:`${i$1}px`,this.$_innerNode.style.maxHeight=s$1==null?null:`${s$1}px`}})));let o$1=await B(this.$_referenceNode,this.$_popperNode,e$3);Object.assign(this.result,{x:o$1.x,y:o$1.y,placement:o$1.placement,strategy:o$1.strategy,arrow:{...o$1.middlewareData.arrow,...o$1.middlewareData.arrowOverflow}})},$_scheduleShow(e$3,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),g&&this.instantMove&&g.instantMove&&g!==this.parentPopper){g.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay(`show`))},$_scheduleHide(e$3,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(g=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay(`hide`))},$_computeDelay(e$3){let t=this.delay;return parseInt(t&&t[e$3]||t||0)},async $_applyShow(e$3=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e$3,!this.isShown&&(this.$_ensureTeleport(),await G(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...D(this.$_referenceNode),...D(this.$_popperNode)],`scroll`,()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){let t=this.$_referenceNode.getBoundingClientRect(),o$1=this.$_popperNode.querySelector(`.v-popper__wrapper`),i$1=o$1.parentNode.getBoundingClientRect(),s$1=t.x+t.width/2-(i$1.left+o$1.offsetLeft),r$2=t.y+t.height/2-(i$1.top+o$1.offsetTop);this.result.transformOrigin=`${s$1}px ${r$2}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":``});let e$3=this.showGroup;if(e$3){let t;for(let o$1=0;o$10){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e$3,de$1(d,this),d.length===0&&document.body.classList.remove(`v-popper--some-open`);for(let o$1 of re$2(this.theme)){let i$1=he(o$1);de$1(i$1,this),i$1.length===0&&document.body.classList.remove(`v-popper--some-open--${o$1}`)}g===this&&(g=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);let t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners(`scroll`),this.$emit(`apply-hide`),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await G(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e$3=this.container;if(typeof e$3==`string`?e$3=window.document.querySelector(e$3):e$3===!1&&(e$3=this.$_targetNodes[0].parentNode),!e$3)throw Error(`No container for popover: `+this.container);e$3.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){let e$3=o$1=>{this.isShown&&!this.$_hideInProgress||(o$1.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o$1}))};this.$_registerTriggerListeners(this.$_targetNodes,pe,this.triggers,this.showTriggers,e$3),this.$_registerTriggerListeners([this.$_popperNode],pe,this.popperTriggers,this.popperShowTriggers,e$3);let t=o$1=>{o$1.usedByTooltip||this.hide({event:o$1})};this.$_registerTriggerListeners(this.$_targetNodes,ae,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],ae,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e$3,t,o$1){this.$_events.push({targetNodes:e$3,eventType:t,handler:o$1}),e$3.forEach(i$1=>i$1.addEventListener(t,o$1,$?{passive:!0}:void 0))},$_registerTriggerListeners(e$3,t,o$1,i$1,s$1){let r$2=o$1;i$1!=null&&(r$2=typeof i$1==`function`?i$1(r$2):i$1),r$2.forEach(p$5=>{let a$2=t[p$5];a$2&&this.$_registerEventListeners(e$3,a$2,s$1)})},$_removeEventListeners(e$3){let t=[];this.$_events.forEach(o$1=>{let{targetNodes:i$1,eventType:s$1,handler:r$2}=o$1;!e$3||e$3===s$1?i$1.forEach(p$5=>p$5.removeEventListener(s$1,r$2)):t.push(o$1)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e$3,t=!1){this.$_showFrameLocked||(this.hide({event:e$3}),e$3.closePopover?this.$emit(`close-directive`):this.$emit(`auto-hide`),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e$3,t){for(let o$1 of this.$_targetNodes){let i$1=o$1.getAttribute(e$3);i$1&&(o$1.removeAttribute(e$3),o$1.setAttribute(t,i$1))}},$_applyAttrsToTarget(e$3){for(let t of this.$_targetNodes)for(let o$1 in e$3){let i$1=e$3[o$1];i$1==null?t.removeAttribute(o$1):t.setAttribute(o$1,i$1)}},$_updateParentShownChildren(e$3){let t=this.parentPopper;for(;t;)e$3?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){let e$3=this.$_referenceNode.getBoundingClientRect();if(y>=e$3.left&&y<=e$3.right&&_$1>=e$3.top&&_$1<=e$3.bottom){let t=this.$_popperNode.getBoundingClientRect(),o$1=y-c,i$1=_$1-m,r$2=t.left+t.width/2-c+(t.top+t.height/2)-m+t.width+t.height,p$5=c+o$1*r$2,a$2=m+i$1*r$2;return C$1(c,m,p$5,a$2,t.left,t.top,t.left,t.bottom)||C$1(c,m,p$5,a$2,t.left,t.top,t.right,t.top)||C$1(c,m,p$5,a$2,t.right,t.top,t.right,t.bottom)||C$1(c,m,p$5,a$2,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<`u`&&typeof window<`u`){if(_e$1){let e$3=$?{passive:!0,capture:!0}:!0;document.addEventListener(`touchstart`,t=>ue(t,!0),e$3),document.addEventListener(`touchend`,t=>fe(t,!0),e$3)}else window.addEventListener(`mousedown`,e$3=>ue(e$3,!1),!0),window.addEventListener(`click`,e$3=>fe(e$3,!1),!0);window.addEventListener(`resize`,tt)}function ue(e$3,t){if(h$1.autoHideOnMousedown)Pe(e$3,t);else for(let o$1=0;o$1=0;i$1--){let s$1=d[i$1];try{let r$2=s$1.containsGlobalTarget=s$1.mouseDownContains||s$1.popperNode().contains(e$3.target);s$1.pendingHide=!1,requestAnimationFrame(()=>{if(s$1.pendingHide=!1,!o$1[s$1.randomId]&&ce(s$1,r$2,e$3)){if(s$1.$_handleGlobalClose(e$3,t),!e$3.closeAllPopover&&e$3.closePopover&&r$2){let a$2=s$1.parentPopper;for(;a$2;)o$1[a$2.randomId]=!0,a$2=a$2.parentPopper;return}let p$5=s$1.parentPopper;for(;p$5&&ce(p$5,p$5.containsGlobalTarget,e$3);)p$5.$_handleGlobalClose(e$3,t),p$5=p$5.parentPopper}})}catch{}}}function ce(e$3,t,o$1){return o$1.closeAllPopover||o$1.closePopover&&t||et(e$3,o$1)&&!t}function et(e$3,t){if(typeof e$3.autoHide==`function`){let o$1=e$3.autoHide(t);return e$3.lastAutoHide=o$1,o$1}return e$3.autoHide}function tt(){for(let e$3=0;e$3{c=y,m=_$1,y=e$3.clientX,_$1=e$3.clientY},$?{passive:!0}:void 0);function C$1(e$3,t,o$1,i$1,s$1,r$2,p$5,a$2){let l$1=((p$5-s$1)*(t-r$2)-(a$2-r$2)*(e$3-s$1))/((a$2-r$2)*(o$1-e$3)-(p$5-s$1)*(i$1-t)),u$1=((o$1-e$3)*(t-r$2)-(i$1-t)*(e$3-s$1))/((a$2-r$2)*(o$1-e$3)-(p$5-s$1)*(i$1-t));return l$1>=0&&l$1<=1&&u$1>=0&&u$1<=1}const ot={extends:Q$1()},B$1=(e$3,t)=>{let o$1=e$3.__vccOpts||e$3;for(let[i$1,s$1]of t)o$1[i$1]=s$1;return o$1};function it(e$3,t,o$1,i$1,s$1,r$2){return openBlock(),createElementBlock(`div`,{ref:`reference`,class:normalizeClass([`v-popper`,{"v-popper--shown":e$3.slotData.isShown}])},[renderSlot(e$3.$slots,`default`,normalizeProps(guardReactiveProps(e$3.slotData)))],2)}const st$1=B$1(ot,[[`render`,it]]);function nt(){var e$3=window.navigator.userAgent,t=e$3.indexOf(`MSIE `);if(t>0)return parseInt(e$3.substring(t+5,e$3.indexOf(`.`,t)),10);var o$1=e$3.indexOf(`Trident/`);if(o$1>0){var i$1=e$3.indexOf(`rv:`);return parseInt(e$3.substring(i$1+3,e$3.indexOf(`.`,i$1)),10)}var s$1=e$3.indexOf(`Edge/`);return s$1>0?parseInt(e$3.substring(s$1+5,e$3.indexOf(`.`,s$1)),10):-1}let z;function X(){X.init||(X.init=!0,z=nt()!==-1)}var E={name:`ResizeObserver`,props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:[`notify`],mounted(){X(),nextTick(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});let e$3=document.createElement(`object`);this._resizeObject=e$3,e$3.setAttribute(`aria-hidden`,`true`),e$3.setAttribute(`tabindex`,-1),e$3.onload=this.addResizeHandlers,e$3.type=`text/html`,z&&this.$el.appendChild(e$3),e$3.data=`about:blank`,z||this.$el.appendChild(e$3)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit(`notify`,{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener(`resize`,this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!z&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener(`resize`,this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const rt$1=withScopeId(`data-v-b329ee4c`);pushScopeId(`data-v-b329ee4c`);const pt$1={class:`resize-observer`,tabindex:`-1`};popScopeId();const at=rt$1((e$3,t,o$1,i$1,s$1,r$2)=>(openBlock(),createBlock(`div`,pt$1)));E.render=at,E.__scopeId=`data-v-b329ee4c`,E.__file=`src/components/ResizeObserver.vue`;const Z=(e$3=`theme`)=>({computed:{themeClass(){return Ze(this[e$3])}}}),dt$2=defineComponent({name:`VPopperContent`,components:{ResizeObserver:E},mixins:[Z()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:[`hide`,`resize`],methods:{toPx(e$3){return e$3!=null&&!isNaN(e$3)?`${e$3}px`:null}}}),lt=[`id`,`aria-hidden`,`tabindex`,`data-popper-placement`],ht$1={ref:`inner`,class:`v-popper__inner`},ut$1=createBaseVNode(`div`,{class:`v-popper__arrow-outer`},null,-1),ft$1=createBaseVNode(`div`,{class:`v-popper__arrow-inner`},null,-1),ct$1=[ut$1,ft$1];function mt$1(e$3,t,o$1,i$1,s$1,r$2){let p$5=resolveComponent(`ResizeObserver`);return openBlock(),createElementBlock(`div`,{id:e$3.popperId,ref:`popover`,class:normalizeClass([`v-popper__popper`,[e$3.themeClass,e$3.classes.popperClass,{"v-popper__popper--shown":e$3.shown,"v-popper__popper--hidden":!e$3.shown,"v-popper__popper--show-from":e$3.classes.showFrom,"v-popper__popper--show-to":e$3.classes.showTo,"v-popper__popper--hide-from":e$3.classes.hideFrom,"v-popper__popper--hide-to":e$3.classes.hideTo,"v-popper__popper--skip-transition":e$3.skipTransition,"v-popper__popper--arrow-overflow":e$3.result&&e$3.result.arrow.overflow,"v-popper__popper--no-positioning":!e$3.result}]]),style:normalizeStyle(e$3.result?{position:e$3.result.strategy,transform:`translate3d(${Math.round(e$3.result.x)}px,${Math.round(e$3.result.y)}px,0)`}:void 0),"aria-hidden":e$3.shown?`false`:`true`,tabindex:e$3.autoHide?0:void 0,"data-popper-placement":e$3.result?e$3.result.placement:void 0,onKeyup:t[2]||=withKeys(a$2=>e$3.autoHide&&e$3.$emit(`hide`),[`esc`])},[createBaseVNode(`div`,{class:`v-popper__backdrop`,onClick:t[0]||=a$2=>e$3.autoHide&&e$3.$emit(`hide`)}),createBaseVNode(`div`,{class:`v-popper__wrapper`,style:normalizeStyle(e$3.result?{transformOrigin:e$3.result.transformOrigin}:void 0)},[createBaseVNode(`div`,ht$1,[e$3.mounted?(openBlock(),createElementBlock(Fragment,{key:0},[createBaseVNode(`div`,null,[renderSlot(e$3.$slots,`default`)]),e$3.handleResize?(openBlock(),createBlock(p$5,{key:0,onNotify:t[1]||=a$2=>e$3.$emit(`resize`,a$2)})):createCommentVNode(``,!0)],64)):createCommentVNode(``,!0)],512),createBaseVNode(`div`,{ref:`arrow`,class:`v-popper__arrow-container`,style:normalizeStyle(e$3.result?{left:e$3.toPx(e$3.result.arrow.x),top:e$3.toPx(e$3.result.arrow.y)}:void 0)},ct$1,4)],4)],46,lt)}const ee$1=B$1(dt$2,[[`render`,mt$1]]),te={methods:{show(...e$3){return this.$refs.popper.show(...e$3)},hide(...e$3){return this.$refs.popper.hide(...e$3)},dispose(...e$3){return this.$refs.popper.dispose(...e$3)},onResize(...e$3){return this.$refs.popper.onResize(...e$3)}}};let K=function(){};typeof window<`u`&&(K=window.Element);const gt$1=defineComponent({name:`VPopperWrapper`,components:{Popper:st$1,PopperContent:ee$1},mixins:[te,Z(`finalTheme`)],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,K,Boolean],default:void 0},boundary:{type:[String,K],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e$3=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e$3=>e$3!==this.$refs.popperContent.$el)}}});function wt$1(e$3,t,o$1,i$1,s$1,r$2){let p$5=resolveComponent(`PopperContent`),a$2=resolveComponent(`Popper`);return openBlock(),createBlock(a$2,mergeProps({ref:`popper`},e$3.$props,{theme:e$3.finalTheme,"target-nodes":e$3.getTargetNodes,"popper-node":()=>e$3.$refs.popperContent.$el,class:[e$3.themeClass],onShow:t[0]||=()=>e$3.$emit(`show`),onHide:t[1]||=()=>e$3.$emit(`hide`),"onUpdate:shown":t[2]||=l$1=>e$3.$emit(`update:shown`,l$1),onApplyShow:t[3]||=()=>e$3.$emit(`apply-show`),onApplyHide:t[4]||=()=>e$3.$emit(`apply-hide`),onCloseGroup:t[5]||=()=>e$3.$emit(`close-group`),onCloseDirective:t[6]||=()=>e$3.$emit(`close-directive`),onAutoHide:t[7]||=()=>e$3.$emit(`auto-hide`),onResize:t[8]||=()=>e$3.$emit(`resize`)}),{default:withCtx(({popperId:l$1,isShown:u$1,shouldMountContent:L$1,skipTransition:D$1,autoHide:I,show:F$2,hide:v$1,handleResize:R$1,onResize:j$1,classes:V$1,result:Ee$2})=>[renderSlot(e$3.$slots,`default`,{shown:u$1,show:F$2,hide:v$1}),createVNode(p$5,{ref:`popperContent`,"popper-id":l$1,theme:e$3.finalTheme,shown:u$1,mounted:L$1,"skip-transition":D$1,"auto-hide":I,"handle-resize":R$1,classes:V$1,result:Ee$2,onHide:v$1,onResize:j$1},{default:withCtx(()=>[renderSlot(e$3.$slots,`popper`,{shown:u$1,hide:v$1})]),_:2},1032,[`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:3},16,[`theme`,`target-nodes`,`popper-node`,`class`])}const k=B$1(gt$1,[[`render`,wt$1]]),Se={...k,name:`VDropdown`,vPopperTheme:`dropdown`},be={...k,name:`VMenu`,vPopperTheme:`menu`},Ce$1={...k,name:`VTooltip`,vPopperTheme:`tooltip`},$t$1=defineComponent({name:`VTooltipDirective`,components:{Popper:Q$1(),PopperContent:ee$1},mixins:[te],inheritAttrs:!1,props:{theme:{type:String,default:`tooltip`},html:{type:Boolean,default:e$3=>S(e$3.theme,`html`)},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e$3=>S(e$3.theme,`loadingContent`)},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content==`function`},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e$3){if(typeof this.content==`function`&&this.$_isShown&&(e$3||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;let t=++this.$_fetchId,o$1=this.content(this);o$1.then?o$1.then(i$1=>this.onResult(t,i$1)):this.onResult(t,o$1)}},onResult(e$3,t){e$3===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),vt$1=[`innerHTML`],yt$1=[`textContent`];function _t$1(e$3,t,o$1,i$1,s$1,r$2){let p$5=resolveComponent(`PopperContent`),a$2=resolveComponent(`Popper`);return openBlock(),createBlock(a$2,mergeProps({ref:`popper`},e$3.$attrs,{theme:e$3.theme,"target-nodes":e$3.targetNodes,"popper-node":()=>e$3.$refs.popperContent.$el,onApplyShow:e$3.onShow,onApplyHide:e$3.onHide}),{default:withCtx(({popperId:l$1,isShown:u$1,shouldMountContent:L$1,skipTransition:D$1,autoHide:I,hide:F$2,handleResize:v$1,onResize:R$1,classes:j$1,result:V$1})=>[createVNode(p$5,{ref:`popperContent`,class:normalizeClass({"v-popper--tooltip-loading":e$3.loading}),"popper-id":l$1,theme:e$3.theme,shown:u$1,mounted:L$1,"skip-transition":D$1,"auto-hide":I,"handle-resize":v$1,classes:j$1,result:V$1,onHide:F$2,onResize:R$1},{default:withCtx(()=>[e$3.html?(openBlock(),createElementBlock(`div`,{key:0,innerHTML:e$3.finalContent},null,8,vt$1)):(openBlock(),createElementBlock(`div`,{key:1,textContent:toDisplayString(e$3.finalContent)},null,8,yt$1))]),_:2},1032,[`class`,`popper-id`,`theme`,`shown`,`mounted`,`skip-transition`,`auto-hide`,`handle-resize`,`classes`,`result`,`onHide`,`onResize`])]),_:1},16,[`theme`,`target-nodes`,`popper-node`,`onApplyShow`,`onApplyHide`])}const ze=B$1($t$1,[[`render`,_t$1]]),Ae=`v-popper--has-tooltip`;function Tt$1(e$3,t){let o$1=e$3.placement;if(!o$1&&t)for(let i$1 of Te$1)t[i$1]&&(o$1=i$1);return o$1||=S(e$3.theme||`tooltip`,`placement`),o$1}function Ne(e$3,t,o$1){let i$1,s$1=typeof t;return i$1=s$1===`string`?{content:t}:t&&s$1===`object`?t:{content:!1},i$1.placement=Tt$1(i$1,o$1),i$1.targetNodes=()=>[e$3],i$1.referenceNode=()=>e$3,i$1}let x$1,b,Pt$1=0;function St$1(){if(x$1)return;b=ref([]),x$1=createApp({name:`VTooltipDirectiveApp`,setup(){return{directives:b}},render(){return this.directives.map(t=>h(ze,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});let e$3=document.createElement(`div`);document.body.appendChild(e$3),x$1.mount(e$3)}function bt$1(e$3,t,o$1){St$1();let i$1=ref(Ne(e$3,t,o$1)),s$1=ref(!1),r$2={id:Pt$1++,options:i$1,shown:s$1};return b.value.push(r$2),e$3.classList&&e$3.classList.add(Ae),e$3.$_popper={options:i$1,item:r$2,show(){s$1.value=!0},hide(){s$1.value=!1}}}function He(e$3){if(e$3.$_popper){let t=b.value.indexOf(e$3.$_popper.item);t!==-1&&b.value.splice(t,1),delete e$3.$_popper,delete e$3.$_popperOldShown,delete e$3.$_popperMountTarget}e$3.classList&&e$3.classList.remove(Ae)}function me(e$3,{value:t,modifiers:o$1}){let i$1=Ne(e$3,t,o$1);if(!i$1.content||S(i$1.theme||`tooltip`,`disabled`))He(e$3);else{let s$1;e$3.$_popper?(s$1=e$3.$_popper,s$1.options.value=i$1):s$1=bt$1(e$3,t,o$1),typeof t.shown<`u`&&t.shown!==e$3.$_popperOldShown&&(e$3.$_popperOldShown=t.shown,t.shown?s$1.show():s$1.hide())}}const oe={beforeMount:me,updated:me,beforeUnmount(e$3){He(e$3)}};function ge(e$3){e$3.addEventListener(`mousedown`,H),e$3.addEventListener(`click`,H),e$3.addEventListener(`touchstart`,Oe$1,$?{passive:!0}:!1)}function we(e$3){e$3.removeEventListener(`mousedown`,H),e$3.removeEventListener(`click`,H),e$3.removeEventListener(`touchstart`,Oe$1),e$3.removeEventListener(`touchend`,Me),e$3.removeEventListener(`touchcancel`,Be$1)}function H(e$3){let t=e$3.currentTarget;e$3.closePopover=!t.$_vclosepopover_touch,e$3.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Oe$1(e$3){if(e$3.changedTouches.length===1){let t=e$3.currentTarget;t.$_vclosepopover_touch=!0;let o$1=e$3.changedTouches[0];t.$_vclosepopover_touchPoint=o$1,t.addEventListener(`touchend`,Me),t.addEventListener(`touchcancel`,Be$1)}}function Me(e$3){let t=e$3.currentTarget;if(t.$_vclosepopover_touch=!1,e$3.changedTouches.length===1){let o$1=e$3.changedTouches[0],i$1=t.$_vclosepopover_touchPoint;e$3.closePopover=Math.abs(o$1.screenY-i$1.screenY)<20&&Math.abs(o$1.screenX-i$1.screenX)<20,e$3.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Be$1(e$3){let t=e$3.currentTarget;t.$_vclosepopover_touch=!1}const ie$1={beforeMount(e$3,{value:t,modifiers:o$1}){e$3.$_closePopoverModifiers=o$1,(typeof t>`u`||t)&&ge(e$3)},updated(e$3,{value:t,oldValue:o$1,modifiers:i$1}){e$3.$_closePopoverModifiers=i$1,t!==o$1&&(typeof t>`u`||t?ge(e$3):we(e$3))},beforeUnmount(e$3){we(e$3)}},Ht=h$1,Ot$1=oe,Mt=oe,Bt$1=ie$1,Et=ie$1,kt=Se,Lt=be,Dt$1=Q$1,It=ee$1,Ft=te,Rt=k,jt=Z,Vt=Ce$1,Wt=ze,_hoisted_1$26={class:`flex-1 truncate`},_hoisted_2$17={class:`min-w-[160px] flex flex-col gap-0.5 border border-neutral-200 rounded-lg bg-white p-1 shadow-lg dark:border-neutral-800 dark:bg-neutral-900 dark:bg-neutral-900`};var Select_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Select`,props:mergeModels({options:{},placeholder:{},disabled:{type:Boolean},title:{},layout:{}},{modelValue:{required:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,show=ref(!1),modelValue=useModel(__props,`modelValue`);function selectOption(value$1){modelValue.value=value$1}function handleHide(){show.value=!1}return provide(`selectOption`,selectOption),provide(`hide`,handleHide),(_ctx,_cache$1)=>(openBlock(),createBlock(unref(kt),{"auto-size":``,"auto-boundary-max-size":``,"w-full":``},{popper:withCtx(({hide:hide$1})=>[createBaseVNode(`div`,_hoisted_2$17,[renderSlot(_ctx.$slots,`options`,{hide:hide$1},()=>[props.options&&props.options.length?(openBlock(!0),createElementBlock(Fragment,{key:0},renderList(props.options,option$1=>(openBlock(),createBlock(Option_default,{key:option$1.value,value:option$1.value,label:option$1.label,active:modelValue.value===option$1.value,onClick:$event=>{selectOption(option$1.value),hide$1()}},null,8,[`value`,`label`,`active`,`onClick`]))),128)):createCommentVNode(``,!0)])])]),default:withCtx(()=>[createBaseVNode(`div`,{"min-w":`[160px]`,p:`2.5`,"w-full":``,class:normalizeClass([`focus:ring-2 focus:ring-black/10`,[props.disabled?`pointer-events-none`:``]]),border:`~ 2 solid dark:neutral-800`,text:`xs dark:neutral-200 disabled:neutral-400 dark:disabled:neutral-600 neutral-700`,bg:`white dark:neutral-900 disabled:neutral-100 hover:neutral-50 dark:disabled:neutral-800 dark:hover:neutral-800 `,cursor:`disabled:not-allowed pointer`,flex:``,"items-center":``,"gap-2":``,"rounded-lg":``,"shadow-sm":``,"outline-none":``,"transition-colors":``,"duration-150":``,"ease-in-out":``},[createBaseVNode(`div`,_hoisted_1$26,[renderSlot(_ctx.$slots,`default`,{value:modelValue.value},()=>[createTextVNode(toDisplayString(props.options?.find(item=>item.value===modelValue.value)?.label||modelValue.value),1)])]),_cache$1[0]||=createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``,class:`h-3.5 w-3.5 text-neutral-500 dark:text-neutral-400`},null,-1)],2)]),_:3}))}}),Select_default=Select_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$25={op50:``};var Collapsable_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Collapsable`,props:mergeModels({default:{type:Boolean},label:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,visible=useModel(__props,`modelValue`);watchEffect(()=>{props.default!=null&&(visible.value=!!props.default)});function setVisible(value$1){return visible.value=value$1,value$1}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,null,[renderSlot(_ctx.$slots,`trigger`,normalizeProps(guardReactiveProps({visible:visible.value,setVisible})),()=>[createBaseVNode(`button`,{sticky:``,"top-0":``,"z-10":``,flex:``,"items-center":``,"justify-between":``,px2:``,py1:``,"text-sm":``,"backdrop-blur-xl":``,onClick:_cache$1[0]||=$event=>visible.value=!visible.value},[createBaseVNode(`span`,null,toDisplayString(props.label??`Collapsable`),1),_cache$1[1]||=createTextVNode(),createBaseVNode(`span`,_hoisted_1$25,toDisplayString(visible.value?`▲`:`▼`),1)])]),createVNode(unref(TransitionVertical_default),null,{default:withCtx(()=>[visible.value?renderSlot(_ctx.$slots,`default`,normalizeProps(mergeProps({key:0},{visible:visible.value,setVisible}))):createCommentVNode(``,!0)]),_:3})]))}}),Collapsable_default=Collapsable_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$24=[`onClick`],_hoisted_2$16={flex:``,"gap-1.5":``};var Section_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Section`,props:{title:{},icon:{},innerClass:{},expand:{type:Boolean,default:!0}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(Collapsable_default,{default:_ctx.expand},{trigger:withCtx(slotProps=>[createBaseVNode(`button`,{class:`w-full flex items-center justify-between rounded-lg px-4 py-3 outline-none transition-all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`,onClick:$event=>slotProps.setVisible(!slotProps.visible)},[createBaseVNode(`div`,_hoisted_2$16,[createBaseVNode(`div`,{class:normalizeClass(_ctx.icon),"size-6":``},null,2),createTextVNode(` `+toDisplayString(_ctx.title),1)]),createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``,transition:`transform duration-250`,class:normalizeClass({"rotate-180":slotProps.visible})},null,2)],8,_hoisted_1$24)]),default:withCtx(()=>[createBaseVNode(`div`,{grid:``,"gap-2":``,"p-4":``,class:normalizeClass(_ctx.innerClass)},[renderSlot(_ctx.$slots,`default`)],2)]),_:3},8,[`default`]))}}),Section_default=Section_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$23={"z-1":``,"flex-1":``},_hoisted_2$15={"text-lg":``,"font-normal":``,class:`menu-icon-item-title`,transition:`all ease-in-out duration-400`},_hoisted_3$11={text:`sm neutral-500 dark:neutral-400`,class:`menu-icon-item-description`,transition:`all ease-in-out duration-400`};var IconItem_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`IconItem`,props:{title:{},description:{},icon:{},iconTemplate:{type:Boolean},to:{}},setup(__props){return(_ctx,_cache$1)=>{let _component_RouterLink=resolveComponent(`RouterLink`);return openBlock(),createBlock(_component_RouterLink,{box:`border`,flex:`~ row`,bg:`neutral-50 dark:neutral-900`,border:`neutral-100 dark:neutral-800/25 hover:primary-500/30 dark:hover:primary-400/30 solid 2`,"drop-shadow":`none hover:[0px_4px_4px_rgba(220,220,220,0.4)] active:[0px_0px_0px_rgba(220,220,220,0.25)] dark:hover:none`,class:`menu-icon-item`,transition:`all ease-in-out duration-400`,relative:``,"w-full":``,"items-center":``,"overflow-hidden":``,"rounded-lg":``,"p-5":``,"text-left":``,cursor:`pointer`,to:_ctx.to},{default:withCtx(()=>[createBaseVNode(`div`,_hoisted_1$23,[createBaseVNode(`div`,_hoisted_2$15,toDisplayString(_ctx.title),1),createBaseVNode(`div`,_hoisted_3$11,[createBaseVNode(`span`,null,toDisplayString(_ctx.description),1)])]),typeof _ctx.icon==`string`?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`menu-icon-item-icon`,[_ctx.icon]]),transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-24":``,"translate-y-4":``,text:`neutral-400/50 dark:neutral-600/50`},null,2)):createCommentVNode(``,!0),_ctx.iconTemplate?renderSlot(_ctx.$slots,`icon`,{key:1},void 0,!0):createCommentVNode(``,!0)]),_:3},8,[`to`])}}}),IconItem_default=__plugin_vue_export_helper_default(IconItem_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-d08788bb`]]);const _hoisted_1$22={flex:`~ col`,bg:`neutral-50 dark:neutral-800`,border:`neutral-100 dark:neutral-800/25 hover:primary-500/30 dark:hover:primary-400/30 solid 2`,"drop-shadow":`none hover:[0px_4px_4px_rgba(220,220,220,0.4)] active:[0px_0px_0px_rgba(220,220,220,0.25)] dark:hover:none`,class:`menu-icon-status-item`,transition:`all ease-in-out duration-400`,"w-full":``,"cursor-pointer":``,"of-hidden":``,"rounded-xl":``},_hoisted_2$14={"z-1":``,"flex-1":``},_hoisted_3$10={"text-lg":``,"font-normal":``,class:`menu-icon-status-item-title`,transition:`all ease-in-out duration-400`},_hoisted_4$9={text:`sm neutral-500 dark:neutral-400`,class:`menu-icon-status-item-description`,transition:`all ease-in-out duration-400`},_hoisted_5$8=[`src`],_hoisted_6$7={"p-2":``},_hoisted_7$6={key:0,"size-3":``,bg:`green-500 dark:green-600`,"rounded-full":``},_hoisted_8$5={key:1,"size-3":``,bg:`neutral-400 dark:neutral-500`,"rounded-full":``};var IconStatusItem_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`IconStatusItem`,props:{title:{},description:{},icon:{},iconColor:{},iconImage:{},to:{},configured:{type:Boolean}},setup(__props){let props=__props;return(_ctx,_cache$1)=>{let _component_RouterLink=resolveComponent(`RouterLink`);return openBlock(),createElementBlock(`div`,_hoisted_1$22,[createVNode(_component_RouterLink,{flex:`~ row`,class:`menu-icon-status-item-link`,bg:`white dark:neutral-900`,transition:`all ease-in-out duration-400`,relative:``,"h-full":``,"w-full":``,"items-center":``,"overflow-hidden":``,"rounded-lg":``,"p-5":``,"text-left":``,to:props.to},{default:withCtx(()=>[createBaseVNode(`div`,_hoisted_2$14,[createBaseVNode(`div`,_hoisted_3$10,toDisplayString(props.title),1),createBaseVNode(`div`,_hoisted_4$9,[createBaseVNode(`span`,null,toDisplayString(props.description||``),1)])]),props.icon?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`menu-icon-status-item-icon`,[props.icon]]),transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-16":``,"translate-y-2":``,text:`neutral-400/50 dark:neutral-600/50`,"grayscale-100":``},null,2)):createCommentVNode(``,!0),props.iconColor?(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`menu-icon-status-item-icon-color`,[props.iconColor]]),transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-16":``,"translate-y-2":``,text:`neutral-400/50 dark:neutral-600/50`,"grayscale-100":``},null,2)):createCommentVNode(``,!0),props.iconImage?(openBlock(),createElementBlock(`img`,{key:2,src:props.iconImage,class:`menu-icon-status-item-icon-image`,transition:`all ease-in-out duration-400`,absolute:``,"right-0":``,"size-16":``,"translate-y-2":``,"grayscale-100":``},null,8,_hoisted_5$8)):createCommentVNode(``,!0)]),_:1},8,[`to`]),createBaseVNode(`div`,_hoisted_6$7,[props.configured?(openBlock(),createElementBlock(`div`,_hoisted_7$6)):(openBlock(),createElementBlock(`div`,_hoisted_8$5))])])}}}),IconStatusItem_default=__plugin_vue_export_helper_default(IconStatusItem_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-93a9757f`]]);const _hoisted_1$21=[`checked`,`name`,`value`],_hoisted_2$13={class:`relative mr-3 mt-0.5 flex-shrink-0`},_hoisted_3$9={class:`w-full flex flex-col gap-2`},_hoisted_4$8={class:`flex items-center`},_hoisted_5$7={key:0,class:`relative`},_hoisted_6$6=[`title`],_hoisted_7$5={key:1,class:`mt-2`};var RadioCardDetail_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RadioCardDetail`,props:mergeModels({id:{},name:{},value:{},title:{},description:{},deprecated:{type:Boolean,default:!1},showExpandCollapse:{type:Boolean,default:!0},expandCollapseThreshold:{default:100},customInputValue:{default:``},customInputPlaceholder:{default:``},showCustomInput:{type:Boolean,default:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let modelValue=useModel(__props,`modelValue`),isExpanded=ref(!1);function toggleExpansion(){isExpanded.value=!isExpanded.value}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,{key:_ctx.id,class:normalizeClass([`form_radio-card-detail relative flex cursor-pointer items-start rounded-xl p-3 pr-[20px]`,[modelValue.value===_ctx.value?`bg-primary-50 dark:bg-primary-900/20 border-primary-100 dark:border-primary-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`:`bg-white dark:bg-neutral-900/20 border-neutral-100 dark:border-neutral-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`,modelValue.value===_ctx.value?`form_radio-card-detail-active`:``,_ctx.deprecated?`opacity-60`:``]]),transition:`all duration-200 ease-in-out`,border:`2 solid`},[withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,checked:modelValue.value===_ctx.value,type:`radio`,name:_ctx.name,value:_ctx.value,class:`absolute opacity-0`},null,8,_hoisted_1$21),[[vModelRadio,modelValue.value]]),createBaseVNode(`div`,_hoisted_2$13,[createBaseVNode(`div`,{class:normalizeClass([`size-5 border-2 rounded-full transition-colors duration-200`,[modelValue.value===_ctx.value?`border-primary-500 dark:border-primary-400`:`border-neutral-300 dark:border-neutral-600`]])},[createBaseVNode(`div`,{class:normalizeClass([`absolute left-1/2 top-1/2 size-3 rounded-full transition-opacity duration-200 -translate-x-1/2 -translate-y-1/2`,[modelValue.value===_ctx.value?`opacity-100 bg-primary-500 dark:bg-primary-400`:`opacity-0`]])},null,2)],2)]),createBaseVNode(`div`,_hoisted_3$9,[createBaseVNode(`div`,_hoisted_4$8,[createBaseVNode(`span`,{class:normalizeClass([`line-clamp-1 font-normal`,[modelValue.value===_ctx.value?`text-neutral-700 dark:text-neutral-300`:`text-neutral-700 dark:text-neutral-400`]])},toDisplayString(_ctx.title),3)]),_ctx.description?(openBlock(),createElementBlock(`div`,_hoisted_5$7,[createVNode(unref(TransitionVertical_default),null,{default:withCtx(()=>[!isExpanded.value||!_ctx.showExpandCollapse?(openBlock(),createElementBlock(`div`,{key:0,class:normalizeClass([`line-clamp-2 cursor-pointer text-xs`,[modelValue.value===_ctx.value?`text-neutral-600 dark:text-neutral-400`:`text-neutral-500 dark:text-neutral-500`]]),title:_ctx.description,onClick:withModifiers(toggleExpansion,[`prevent`])},toDisplayString(_ctx.description),11,_hoisted_6$6)):(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`cursor-pointer text-xs`,[modelValue.value===_ctx.value?`text-neutral-600 dark:text-neutral-400`:`text-neutral-500 dark:text-neutral-500`]]),onClick:withModifiers(toggleExpansion,[`prevent`])},toDisplayString(_ctx.description),3))]),_:1}),_ctx.showExpandCollapse&&_ctx.description.length>_ctx.expandCollapseThreshold?(openBlock(),createElementBlock(`button`,{key:0,class:`mt-0.5 inline-flex items-center text-xs text-primary-500 dark:text-primary-600`,onClick:withModifiers(toggleExpansion,[`prevent`])},[createBaseVNode(`span`,null,toDisplayString(isExpanded.value?`Show less`:`Show more`),1),createBaseVNode(`div`,{class:normalizeClass([{"rotate-180":isExpanded.value},`transition-transform duration-200`])},_cache$1[2]||=[createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``,"ml-0.5":``,"text-xs":``},null,-1)],2)])):createCommentVNode(``,!0)])):createCommentVNode(``,!0),_ctx.showCustomInput&&modelValue.value===_ctx.value?(openBlock(),createElementBlock(`div`,_hoisted_7$5,[createVNode(unref(Input_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[1]||=$event=>modelValue.value=$event,type:`text`,class:`w-full border border-neutral-300 rounded bg-white px-2 py-1 text-sm dark:border-neutral-700 dark:bg-neutral-900`,placeholder:_ctx.customInputPlaceholder},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0)])],2))}}),RadioCardDetail_default=__plugin_vue_export_helper_default(RadioCardDetail_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-fb6236db`]]);const _hoisted_1$20={class:`radio-card-detail-many-select`},_hoisted_2$12={key:0,class:`relative`,"inline-flex":`~`,"w-full":``,"items-center":``},_hoisted_3$8=[`placeholder`],_hoisted_4$7={class:`mt-4 space-y-2`},_hoisted_5$6={key:0,class:`text-sm text-neutral-500 dark:text-neutral-400`},_hoisted_6$5={key:1,class:`flex items-center gap-3 border border-2 border-amber-200 rounded-xl bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},_hoisted_7$4={class:`flex flex-col`},_hoisted_8$4={class:`font-medium`},_hoisted_9$4={class:`text-sm text-amber-600 dark:text-amber-400`},_hoisted_10$4={class:`relative`};var RadioCardManySelect_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RadioCardManySelect`,props:mergeModels({items:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`Search...`},searchNoResultsTitle:{default:`No results found`},searchNoResultsDescription:{default:`Try a different search term`},searchResultsText:{default:`{count} of {total} results`},customInputPlaceholder:{default:`Enter custom value`},expandButtonText:{default:`Show more`},collapseButtonText:{default:`Show less`},showMore:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{}}),emits:mergeModels([`update:customValue`],[`update:modelValue`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,modelValue=useModel(__props,`modelValue`),searchQuery=ref(``),isListExpanded=ref(!1),customValue=ref(``),filteredItems=computed(()=>{if(!searchQuery.value)return props.items;let query=searchQuery.value.toLowerCase();return props.items.filter(item=>item.name.toLowerCase().includes(query)||item.description&&item.description.toLowerCase().includes(query))});function updateCustomValue(value$1){customValue.value=value$1,emit$1(`update:customValue`,value$1)}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$20,[_ctx.searchable?(openBlock(),createElementBlock(`div`,_hoisted_2$12,[_cache$1[4]||=createBaseVNode(`div`,{class:`pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3`},[createBaseVNode(`div`,{"i-solar:magnifer-line-duotone":``,class:`text-neutral-500 dark:text-neutral-400`})],-1),withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>searchQuery.value=$event,type:`search`,class:`w-full rounded-xl p-2.5 pl-10 text-sm outline-none`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,bg:`white dark:neutral-900`,placeholder:_ctx.searchPlaceholder},null,8,_hoisted_3$8),[[vModelText,searchQuery.value]])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_4$7,[searchQuery.value?(openBlock(),createElementBlock(`div`,_hoisted_5$6,toDisplayString(_ctx.searchResultsText.replace(`{count}`,filteredItems.value.length.toString()).replace(`{total}`,_ctx.items.length.toString())),1)):createCommentVNode(``,!0),searchQuery.value&&filteredItems.value.length===0?(openBlock(),createElementBlock(`div`,_hoisted_6$5,[_cache$1[5]||=createBaseVNode(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),createBaseVNode(`div`,_hoisted_7$4,[createBaseVNode(`span`,_hoisted_8$4,toDisplayString(_ctx.searchNoResultsTitle),1),createBaseVNode(`span`,_hoisted_9$4,toDisplayString(_ctx.searchNoResultsDescription.replace(`{query}`,searchQuery.value)),1)])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_10$4,[createBaseVNode(`div`,{class:normalizeClass([`grid auto-cols-[350px] grid-flow-col max-h-[calc(100dvh-7lh)] gap-4 overflow-x-auto pb-4 scrollbar-none`,[isListExpanded.value?`grid-cols-1 md:grid-cols-2 grid-flow-row auto-cols-auto`:``]]),transition:`all duration-200 ease-in-out`,style:{"scroll-snap-type":`x mandatory`}},[(openBlock(!0),createElementBlock(Fragment,null,renderList(filteredItems.value,item=>(openBlock(),createBlock(RadioCardDetail_default,{id:item.id,key:item.id,modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[1]||=$event=>modelValue.value=$event,value:item.id,title:item.name,description:item.description,deprecated:item.deprecated,"show-expand-collapse":_ctx.showMore,"expand-collapse-threshold":100,"show-custom-input":item.customizable,"custom-input-value":customValue.value,"custom-input-placeholder":_ctx.customInputPlaceholder,name:`radio-card-detail-many-select`,class:`scroll-snap-align-start`,"onUpdate:customInputValue":_cache$1[2]||=$event=>updateCustomValue($event)},null,8,[`id`,`modelValue`,`value`,`title`,`description`,`deprecated`,`show-expand-collapse`,`show-custom-input`,`custom-input-value`,`custom-input-placeholder`]))),128))],2),createBaseVNode(`div`,{bg:`neutral-100 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,class:normalizeClass([isListExpanded.value?`w-full`:`mt-4 w-full rounded-lg`])},[createBaseVNode(`button`,{"w-full":``,flex:``,"items-center":``,"justify-center":``,"gap-2":``,"rounded-lg":``,"py-2":``,transition:`all duration-200 ease-in-out`,class:normalizeClass([isListExpanded.value?`bg-primary-500 hover:bg-primary-600 text-white`:`bg-white dark:bg-neutral-900 hover:bg-neutral-100 dark:hover:bg-neutral-800`]),onClick:_cache$1[3]||=$event=>isListExpanded.value=!isListExpanded.value},[createBaseVNode(`span`,null,toDisplayString(isListExpanded.value?_ctx.collapseButtonText:_ctx.expandButtonText),1),createBaseVNode(`div`,{class:normalizeClass([isListExpanded.value?`rotate-180`:``,`text-lg`]),"i-solar:alt-arrow-down-linear":``,transition:`transform duration-200 ease-in-out`},null,2)],2)],2)])])]))}}),RadioCardManySelect_default=__plugin_vue_export_helper_default(RadioCardManySelect_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-98ce709a`]]);const _hoisted_1$19=[`checked`,`name`,`value`],_hoisted_2$11={flex:`~ col`,"min-h-16":``,"w-full":``,"items-start":``,"justify-center":``,"pb-2":``,"pl-5":``,"pr-4":``,"pt-2":``};var RadioCardSimple_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RadioCardSimple`,props:mergeModels({id:{},name:{},value:{},title:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,{key:_ctx.id,border:`2px solid`,class:normalizeClass([`form_radio-card-simple relative`,[modelValue.value===_ctx.value?`bg-primary-50 dark:bg-primary-900/20 border-primary-100 dark:border-primary-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`:`bg-white dark:bg-neutral-900/20 border-neutral-100 dark:border-neutral-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`,modelValue.value===_ctx.value?`form_radio-card-simple-active`:``]]),transition:`all duration-200 ease-in-out`,flex:`~ col`,block:``,"min-w-50":``,"w-fit":``,"cursor-pointer":``,"items-start":``,"rounded-xl":``,"p-4":``,"text-left":``},[withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,checked:modelValue.value===_ctx.value,type:`radio`,name:_ctx.name,value:_ctx.value,class:`absolute opacity-0 [&:checked+div]:border-primary-500 [&:checked+div_.radio-dot]:opacity-100 dark:[&:checked+div]:border-primary-400`},null,8,_hoisted_1$19),[[vModelRadio,modelValue.value]]),_cache$1[1]||=createBaseVNode(`div`,{class:`radio-circle absolute left-2 top-2 size-5 rounded-full`,border:`2 solid neutral-300 dark:neutral-600`,transition:`all duration-200 ease-in-out`},[createBaseVNode(`div`,{class:`radio-dot absolute left-1/2 top-1/2 size-3 rounded-full opacity-0 -translate-x-1/2 -translate-y-1/2`,transition:`all duration-200 ease-in-out`,bg:`primary-500 dark:primary-400`})],-1),createBaseVNode(`div`,_hoisted_2$11,[createBaseVNode(`span`,{class:normalizeClass([`radio-item-name font-normal`,[modelValue.value===_ctx.value?`text-neutral-700 dark:text-neutral-300`:`text-neutral-500 dark:text-neutral-500`]]),text:`md`,transition:`all duration-200 ease-in-out`},toDisplayString(_ctx.title),3),_ctx.description?(openBlock(),createElementBlock(`span`,{key:0,class:normalizeClass([`radio-item-description`,[modelValue.value===_ctx.value?`text-neutral-600 dark:text-neutral-400`:`text-neutral-400 dark:text-neutral-600`]]),transition:`all duration-200 ease-in-out`},toDisplayString(_ctx.description),3)):createCommentVNode(``,!0)]),_cache$1[2]||=createBaseVNode(`div`,{class:`bg-dotted-neutral-200/80 dark:bg-dotted-neutral-700/50 [input:checked~&]:bg-dotted-primary-300/50 dark:[input:checked~&]:bg-dotted-primary-200/20`,absolute:``,"inset-0":``,"z--1":``,style:{"background-size":`10px 10px`,"mask-image":`linear-gradient(165deg, white 30%, transparent 50%)`}},null,-1)],2))}}),RadioCardSimple_default=__plugin_vue_export_helper_default(RadioCardSimple_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-880ce73f`]]);const _hoisted_1$18={class:`p-3`},_hoisted_2$10={class:`flex items-start`},_hoisted_3$7=[`checked`,`name`,`value`],_hoisted_4$6={class:`relative mr-3 mt-0.5 flex-shrink-0`},_hoisted_5$5={key:0,class:`i-solar:pause-circle-bold-duotone text-xl text-neutral-400 dark:text-neutral-500`},_hoisted_6$4={key:1,class:`i-solar:play-circle-bold-duotone text-xl text-neutral-400 dark:text-neutral-500`},_hoisted_7$3={key:1,class:`mt-auto w-full flex items-center justify-center bg-neutral-50 py-3 text-xs text-neutral-400 italic dark:bg-neutral-800/50 dark:text-neutral-600`},_hoisted_8$3={class:`flex-1 cursor-pointer`},_hoisted_9$3={class:`flex items-center`},_hoisted_10$3={key:0,class:`mt-1 flex flex-wrap gap-1`},_hoisted_11$2={key:1,class:`mt-3`},_hoisted_12$2={relative:``},_hoisted_13$2={key:0,class:`h-16 px-3 pb-2`};var VoiceCard_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`VoiceCard`,props:mergeModels({name:{},voice:{},currentlyPlayingId:{},customInputPlaceholder:{default:`Enter custom voice name`},showVisualizer:{type:Boolean,default:!0},audioStream:{default:null}},{"voice-id":{required:!1,default:``},"voice-idModifiers":{},"custom-voice-name":{required:!1,default:``},"custom-voice-nameModifiers":{}}),emits:mergeModels([`togglePlayback`],[`update:voice-id`,`update:custom-voice-name`]),setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,voiceId=useModel(__props,`voice-id`),customVoiceName=useModel(__props,`custom-voice-name`);function getPreviewUrl(voice){return voice.previewURL||voice.preview_audio_url}function formatVoiceAttributes(voice){let attributes=[];if(voice.labels?.gender&&attributes.push(voice.labels.gender),voice.labels?.age&&attributes.push(voice.labels.age),voice.labels?.accent&&attributes.push(voice.labels.accent),voice.languages&&voice.languages.length>0){let languageNames=voice.languages.map(lang=>lang.name).join(`, `);attributes.push(languageNames)}return attributes}function togglePlayback(){emit$1(`togglePlayback`,props.voice)}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`label`,{border:`2px solid`,class:normalizeClass([`scroll-snap-align-start form_voice-card relative flex flex-col overflow-hidden rounded-xl`,[voiceId.value===props.voice.id?`bg-primary-50 dark:bg-primary-900/20 border-primary-100 dark:border-primary-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`:`bg-white dark:bg-neutral-900/20 border-neutral-100 dark:border-neutral-900 hover:border-primary-500/30 dark:hover:border-primary-400/30`,voiceId.value===props.voice.id?`form_voice-card-active`:``]]),transition:`all duration-200 ease-in-out`},[createBaseVNode(`div`,_hoisted_1$18,[createBaseVNode(`div`,_hoisted_2$10,[withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>voiceId.value=$event,checked:voiceId.value===props.voice.id,type:`radio`,name:_ctx.name,value:props.voice.id,class:`absolute cursor-pointer opacity-0`},null,8,_hoisted_3$7),[[vModelRadio,voiceId.value]]),createBaseVNode(`div`,_hoisted_4$6,[createBaseVNode(`div`,{class:normalizeClass([`size-5 border-2 rounded-full transition-colors duration-200`,[voiceId.value===props.voice.id?`border-primary-500 dark:border-primary-400`:`border-neutral-300 dark:border-neutral-600`]])},[createBaseVNode(`div`,{class:normalizeClass([`absolute left-1/2 top-1/2 size-3 rounded-full transition-opacity duration-200 -translate-x-1/2 -translate-y-1/2`,[voiceId.value===props.voice.id?`opacity-100 bg-primary-500 dark:bg-primary-400`:`opacity-0`]])},null,2)],2)]),getPreviewUrl(_ctx.voice)?(openBlock(),createElementBlock(`button`,{key:0,absolute:``,"right-0":``,top:`0`,"z-3":``,class:normalizeClass([`translate-x-[-50%] translate-y-[50%]`,[_ctx.currentlyPlayingId===_ctx.voice.id?`text-white dark:text-white`:``]]),onClick:togglePlayback},[_ctx.currentlyPlayingId===_ctx.voice.id?(openBlock(),createElementBlock(`div`,_hoisted_5$5)):(openBlock(),createElementBlock(`div`,_hoisted_6$4))],2)):(openBlock(),createElementBlock(`div`,_hoisted_7$3,` No preview available `)),createBaseVNode(`div`,_hoisted_8$3,[createBaseVNode(`div`,_hoisted_9$3,[createBaseVNode(`span`,{class:normalizeClass([`line-clamp-1 font-medium`,[voiceId.value===_ctx.voice.id?`text-neutral-700 dark:text-neutral-300`:`text-neutral-700 dark:text-neutral-400`]])},toDisplayString(_ctx.voice.name),3)]),formatVoiceAttributes(_ctx.voice).length>0?(openBlock(),createElementBlock(`div`,_hoisted_10$3,[(openBlock(!0),createElementBlock(Fragment,null,renderList(formatVoiceAttributes(_ctx.voice),(attribute,attrIndex)=>(openBlock(),createElementBlock(`span`,{key:attrIndex,class:normalizeClass([`inline-flex items-center rounded-md px-1.5 py-0.5 text-xs`,[voiceId.value===_ctx.voice.id?`bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400`:`bg-neutral-100 text-neutral-700 dark:bg-neutral-800 dark:text-neutral-300`]])},toDisplayString(attribute),3))),128))])):createCommentVNode(``,!0),_ctx.voice.customizable&&voiceId.value===_ctx.voice.id?(openBlock(),createElementBlock(`div`,_hoisted_11$2,[createVNode(unref(Input_default),{modelValue:customVoiceName.value,"onUpdate:modelValue":_cache$1[1]||=$event=>customVoiceName.value=$event,type:`text`,class:`w-full border border-neutral-300 rounded bg-white px-2 py-1 text-sm dark:border-neutral-700 dark:bg-neutral-900`,placeholder:_ctx.customInputPlaceholder},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0),_ctx.voice.description?(openBlock(),createElementBlock(`div`,{key:2,class:normalizeClass([`line-clamp-2 mt-1 text-xs`,[voiceId.value===_ctx.voice.id?`text-neutral-600 dark:text-neutral-400`:`text-neutral-500 dark:text-neutral-500`]])},toDisplayString(_ctx.voice.description),3)):createCommentVNode(``,!0)])])]),createBaseVNode(`div`,_hoisted_12$2,[createVNode(unref(TransitionVertical_default),null,{default:withCtx(()=>[_ctx.showVisualizer&&_ctx.currentlyPlayingId===_ctx.voice.id&&_ctx.audioStream?(openBlock(),createElementBlock(`div`,_hoisted_13$2,[createVNode(unref(AudioSpectrum_default),{stream:_ctx.audioStream,bars:24,"min-freq":60,"max-freq":4e3},{default:withCtx(({frequencies})=>[createVNode(unref(AudioSpectrumVisualizer_default),{frequencies,"bars-class":voiceId.value===_ctx.voice.id?`bg-primary-500 dark:bg-primary-400`:`bg-neutral-400 dark:bg-neutral-600`},null,8,[`frequencies`,`bars-class`])]),_:1},8,[`stream`])])):createCommentVNode(``,!0)]),_:1})])],2))}}),VoiceCard_default=__plugin_vue_export_helper_default(VoiceCard_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-fd4023c4`]]);const _hoisted_1$17={class:`voice-preview-player`},_hoisted_2$9={key:0,class:`relative`,"inline-flex":`~`,"w-full":``,"items-center":``},_hoisted_3$6=[`placeholder`],_hoisted_4$5={class:`mt-4 space-y-2`},_hoisted_5$4={key:0,class:`text-sm text-neutral-500 dark:text-neutral-400`},_hoisted_6$3={key:1,class:`flex items-center gap-3 border border-2 border-amber-200 rounded-xl bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},_hoisted_7$2={class:`flex flex-col`},_hoisted_8$2={class:`font-medium`},_hoisted_9$2={class:`text-sm text-amber-600 dark:text-amber-400`},_hoisted_10$2={class:`relative`};var VoiceCardManySelect_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`VoiceCardManySelect`,props:mergeModels({voices:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`Search voices...`},searchNoResultsTitle:{default:`No voices found`},searchNoResultsDescription:{default:`Try a different search term`},searchResultsText:{default:`{count} of {total} voices`},customInputPlaceholder:{default:`Enter custom voice name`},expandButtonText:{default:`Show more`},collapseButtonText:{default:`Show less`},playButtonText:{default:`Play sample`},pauseButtonText:{default:`Pause`},showVisualizer:{type:Boolean,default:!0}},{"search-query":{required:!1,default:``},"search-queryModifiers":{},"voice-id":{required:!1,default:``},"voice-idModifiers":{}}),emits:[`update:search-query`,`update:voice-id`],setup(__props){let props=__props,isListExpanded=ref(!1),currentlyPlayingId=ref(),audioElements=ref(new Map),audioStreams=ref(new Map),audioContexts=ref(new Map),audioSources=ref(new Map),sharedAudioContext=ref(null);function initAudioContext(){return sharedAudioContext.value||=new(window.AudioContext||window.webkitAudioContext),sharedAudioContext.value}let searchQuery=useModel(__props,`search-query`),voiceId=useModel(__props,`voice-id`),filteredVoices=computed(()=>{if(!searchQuery.value)return props.voices;let query=searchQuery.value.toLowerCase();return props.voices.filter(voice=>{let nameMatch=voice.name.toLowerCase().includes(query),descMatch=voice.description&&voice.description.toLowerCase().includes(query),tagMatch=voice.tags&&voice.tags.some(tag=>tag.toLowerCase().includes(query)),labelMatch=voice.labels&&Object.values(voice.labels).some(value$1=>typeof value$1==`string`&&value$1.toLowerCase().includes(query)),langMatch=voice.languages&&voice.languages.some(lang=>lang.name.toLowerCase().includes(query)||lang.code.toLowerCase().includes(query));return nameMatch||descMatch||tagMatch||labelMatch||langMatch})});function getPreviewUrl(voice){return voice.previewURL||voice.preview_audio_url}function getAudioElement(voice){let previewUrl=getPreviewUrl(voice);if(!previewUrl)return null;if(audioElements.value.has(voice.id))return audioElements.value.get(voice.id)||null;let audio=new Audio(previewUrl);return audio.crossOrigin=`anonymous`,audio.preload=`auto`,audio.addEventListener(`ended`,()=>{if(currentlyPlayingId.value===voice.id){currentlyPlayingId.value=void 0;let stream=audioStreams.value.get(voice.id);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(voice.id))}}),audioElements.value.set(voice.id,audio),audio}function createAudioStream(audio,voiceId$1){try{if(audioStreams.value.has(voiceId$1))return audioStreams.value.get(voiceId$1)||null;let audioContext=initAudioContext();if(audioSources.value.has(voiceId$1)){let source$1=audioSources.value.get(voiceId$1),destination$1=audioContext.createMediaStreamDestination();source$1.connect(destination$1);let stream$1=destination$1.stream;return audioStreams.value.set(voiceId$1,stream$1),stream$1}let source=audioContext.createMediaElementSource(audio);audioSources.value.set(voiceId$1,source),source.connect(audioContext.destination);let destination=audioContext.createMediaStreamDestination();source.connect(destination);let stream=destination.stream;return audioStreams.value.set(voiceId$1,stream),stream}catch(error){return console.error(`Failed to create audio stream for visualizer:`,error),null}}function togglePlayback(voice){try{let previewUrl=getPreviewUrl(voice);if(!previewUrl)return;let audio=getAudioElement(voice);if(!audio)return;if(currentlyPlayingId.value===voice.id){audio.pause(),currentlyPlayingId.value=void 0;let stream=audioStreams.value.get(voice.id);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(voice.id));return}if(currentlyPlayingId.value){let currentAudio=audioElements.value.get(currentlyPlayingId.value);currentAudio&¤tAudio.pause();let stream=audioStreams.value.get(currentlyPlayingId.value);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(currentlyPlayingId.value))}props.showVisualizer&&!audioStreams.value.has(voice.id)&&createAudioStream(audio,voice.id),audio.currentTime=0,audio.play().catch(error=>{console.error(`Failed to play audio:`,error)}),currentlyPlayingId.value=voice.id}catch(err){console.error(err),currentlyPlayingId.value=void 0}}function cleanup(){audioElements.value.forEach(audio=>{audio.pause(),audio.src=``}),audioElements.value.clear(),audioStreams.value.forEach(stream=>{stream.getTracks().forEach(track$1=>track$1.stop())}),audioStreams.value.clear(),audioContexts.value.forEach(context$1=>{context$1.state!==`closed`&&context$1.close()}),audioContexts.value.clear(),audioSources.value.clear(),currentlyPlayingId.value=void 0}watch(searchQuery,()=>{if(currentlyPlayingId.value){let audio=audioElements.value.get(currentlyPlayingId.value);audio&&audio.pause();let stream=audioStreams.value.get(currentlyPlayingId.value);stream&&(stream.getTracks().forEach(track$1=>track$1.stop()),audioStreams.value.delete(currentlyPlayingId.value)),currentlyPlayingId.value=void 0}}),onBeforeUnmount(cleanup);let customVoiceName=ref(``);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$17,[_ctx.searchable?(openBlock(),createElementBlock(`div`,_hoisted_2$9,[_cache$1[4]||=createBaseVNode(`div`,{class:`pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3`},[createBaseVNode(`div`,{"i-solar:magnifer-line-duotone":``,class:`text-neutral-500 dark:text-neutral-400`})],-1),withDirectives(createBaseVNode(`input`,{"onUpdate:modelValue":_cache$1[0]||=$event=>searchQuery.value=$event,type:`search`,class:`w-full rounded-xl p-2.5 pl-10 text-sm outline-none`,border:`focus:primary-100 dark:focus:primary-400/50 2 solid neutral-200 dark:neutral-800`,transition:`all duration-200 ease-in-out`,bg:`white dark:neutral-900`,placeholder:_ctx.searchPlaceholder},null,8,_hoisted_3$6),[[vModelText,searchQuery.value]])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_4$5,[searchQuery.value?(openBlock(),createElementBlock(`div`,_hoisted_5$4,toDisplayString(_ctx.searchResultsText.replace(`{count}`,filteredVoices.value.length.toString()).replace(`{total}`,_ctx.voices.length.toString())),1)):createCommentVNode(``,!0),searchQuery.value&&filteredVoices.value.length===0?(openBlock(),createElementBlock(`div`,_hoisted_6$3,[_cache$1[5]||=createBaseVNode(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),createBaseVNode(`div`,_hoisted_7$2,[createBaseVNode(`span`,_hoisted_8$2,toDisplayString(_ctx.searchNoResultsTitle),1),createBaseVNode(`span`,_hoisted_9$2,toDisplayString(_ctx.searchNoResultsDescription.replace(`{query}`,searchQuery.value)),1)])])):createCommentVNode(``,!0),createBaseVNode(`div`,_hoisted_10$2,[createBaseVNode(`div`,{class:normalizeClass([`grid auto-cols-[350px] grid-flow-col max-h-[calc(100dvh-7lh)] gap-4 overflow-x-auto scrollbar-none`,[isListExpanded.value?`grid-cols-1 md:grid-cols-2 grid-flow-row auto-cols-auto`:``]]),transition:`all duration-200 ease-in-out`,style:{"scroll-snap-type":`x mandatory`}},[(openBlock(!0),createElementBlock(Fragment,null,renderList(filteredVoices.value,voice=>(openBlock(),createBlock(VoiceCard_default,{key:voice.id,"voice-id":voiceId.value,"onUpdate:voiceId":_cache$1[1]||=$event=>voiceId.value=$event,"custom-voice-name":customVoiceName.value,"onUpdate:customVoiceName":_cache$1[2]||=$event=>customVoiceName.value=$event,name:`voice`,voice,"currently-playing-id":currentlyPlayingId.value,"custom-input-placeholder":_ctx.customInputPlaceholder,"show-visualizer":_ctx.showVisualizer,"audio-stream":audioStreams.value.get(voice.id),onTogglePlayback:togglePlayback},null,8,[`voice-id`,`custom-voice-name`,`voice`,`currently-playing-id`,`custom-input-placeholder`,`show-visualizer`,`audio-stream`]))),128))],2),createBaseVNode(`div`,{bg:`neutral-100 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,class:normalizeClass([isListExpanded.value?`w-full`:`mt-4 w-full rounded-lg`])},[createBaseVNode(`button`,{"w-full":``,flex:``,"items-center":``,"justify-center":``,"gap-2":``,"rounded-lg":``,"py-2":``,transition:`all duration-200 ease-in-out`,class:normalizeClass([isListExpanded.value?`bg-primary-500 hover:bg-primary-600 text-white`:`bg-white dark:bg-neutral-900 hover:bg-neutral-100 dark:hover:bg-neutral-800`]),onClick:_cache$1[3]||=$event=>isListExpanded.value=!isListExpanded.value},[createBaseVNode(`span`,null,toDisplayString(isListExpanded.value?_ctx.collapseButtonText:_ctx.expandButtonText),1),createBaseVNode(`div`,{class:normalizeClass([isListExpanded.value?`rotate-180`:``,`text-lg`]),"i-solar:alt-arrow-down-linear":``,transition:`transform duration-200 ease-in-out`},null,2)],2)],2)])])]))}}),VoiceCardManySelect_default=__plugin_vue_export_helper_default(VoiceCardManySelect_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-55cec23c`]]),BidirectionalTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`BidirectionalTransition`,props:{fromClass:{},activeClass:{},toClass:{}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createBlock(Transition,{"enter-from-class":_ctx.fromClass,"enter-active-class":_ctx.activeClass,"enter-to-class":_ctx.toClass,"leave-from-class":_ctx.toClass,"leave-active-class":_ctx.activeClass,"leave-to-class":_ctx.fromClass},{default:withCtx(()=>[renderSlot(_ctx.$slots,`default`)]),_:3},8,[`enter-from-class`,`enter-active-class`,`enter-to-class`,`leave-from-class`,`leave-active-class`,`leave-to-class`]))}}),BidirectionalTransition_default=BidirectionalTransition_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$16=[`disabled`],_hoisted_2$8={class:`flex flex-row items-center justify-center gap-2`},_hoisted_3$5={key:0,class:`w-4`},_hoisted_4$4={key:0,class:`i-svg-spinners:ring-resize h-4 w-4`},_hoisted_5$3={key:0};var Button_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Button`,props:{icon:{},label:{},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},variant:{default:`primary`},size:{default:`md`},theme:{default:`default`},block:{type:Boolean,default:!1}},setup(__props){let props=__props,isDisabled=computed(()=>props.disabled||props.loading),variantClasses={primary:{default:`bg-primary-100 hover:bg-primary-200 active:bg-primary-300 dark:bg-primary-900/40 dark:hover:bg-primary-900/60 dark:active:bg-primary-900/40 focus:ring-primary-300/60 dark:focus:ring-primary-600/30 border-2 border-solid border-primary-200/30 dark:border-primary-900/40 text-primary-950 dark:text-primary-100`},secondary:{default:`bg-neutral-50 hover:bg-neutral-200 active:bg-neutral-300 dark:bg-neutral-600/40 dark:hover:bg-neutral-600/60 dark:active:bg-neutral-600/40 focus:ring-neutral-300/60 dark:focus:ring-neutral-600/30 border-2 border-solid border-neutral-200/50 dark:border-neutral-700/50 text-neutral-950 dark:text-neutral-100`},danger:{default:`bg-red-100 hover:bg-red-200 active:bg-red-300 dark:bg-red-900/40 dark:hover:bg-red-900/60 dark:active:bg-red-900/40 focus:ring-red-300/30 dark:focus:ring-red-600/60 dark:focus:ring-red-600/30 border-2 border-solid border-red-200/30 dark:border-red-900/30 text-red-950 dark:text-red-100`}},sizeClasses={sm:`px-3 py-1.5 text-xs`,md:`px-4 py-2 text-sm`,lg:`px-6 py-3 text-base`},baseClasses=computed(()=>[`rounded-lg font-medium outline-none transition-all duration-150 ease-in-out`,`disabled:cursor-not-allowed disabled:opacity-50`,props.block?`w-full`:``,sizeClasses[props.size],variantClasses[props.variant][props.theme],{"opacity-50 cursor-not-allowed":isDisabled.value},`focus:ring-2 focus:ring-offset-2 focus:ring-offset-white dark:focus:ring-offset-neutral-900`]);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`button`,{disabled:isDisabled.value,class:normalizeClass(baseClasses.value)},[createBaseVNode(`div`,_hoisted_2$8,[createVNode(unref(BidirectionalTransition_default),{"from-class":`opacity-0 mr-0! w-0!`,"active-class":`transition-[width,margin] ease-in-out overflow-hidden transition-100`},{default:withCtx(()=>[_ctx.loading||_ctx.icon?(openBlock(),createElementBlock(`div`,_hoisted_3$5,[_ctx.loading?(openBlock(),createElementBlock(`div`,_hoisted_4$4)):_ctx.icon?(openBlock(),createElementBlock(`div`,{key:1,class:normalizeClass([`h-4 w-4`,_ctx.icon])},null,2)):createCommentVNode(``,!0)])):createCommentVNode(``,!0)]),_:1}),_ctx.label?(openBlock(),createElementBlock(`span`,_hoisted_5$3,toDisplayString(_ctx.label),1)):renderSlot(_ctx.$slots,`default`,{key:1})])],10,_hoisted_1$16))}}),Button_default=Button_vue_vue_type_script_setup_true_lang_default,Screen_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Screen`,setup(__props){let containerRef=ref(),breakpoints=useBreakpoints(breakpointsTailwind),{width,height}=useWindowSize(),containerElementBounding=useElementBounding(containerRef,{immediate:!0,windowResize:!0,reset:!0}),isMobile=computed(()=>breakpoints.between(`sm`,`md`).value||breakpoints.smaller(`sm`).value),isTablet=computed(()=>breakpoints.between(`md`,`lg`).value),isDesktop=computed(()=>breakpoints.greaterOrEqual(`lg`).value),canvasWidth=computed(()=>isDesktop.value?containerElementBounding.width.value:isMobile.value||isTablet.value?width.value-16:containerElementBounding.width.value),canvasHeight=ref(0);return watch([width,height,containerRef],()=>{let bounding=containerRef.value?.parentElement?.getBoundingClientRect();isDesktop.value||isMobile.value||isTablet.value?canvasHeight.value=bounding?.height||0:canvasHeight.value=600}),watch([containerElementBounding.width,containerElementBounding.height],()=>{isDesktop.value||isMobile.value||isTablet.value?canvasHeight.value=containerElementBounding.height.value:canvasHeight.value=600}),onMounted(async()=>{containerRef.value&&containerElementBounding.update()}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{ref_key:`containerRef`,ref:containerRef,"h-full":``,"w-full":``},[renderSlot(_ctx.$slots,`default`,{width:canvasWidth.value,height:canvasHeight.value})],512))}}),Screen_default=Screen_vue_vue_type_script_setup_true_lang_default,Skeleton_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Skeleton`,props:{animation:{default:`pulse`}},setup(__props){let props=__props;return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`skeleton`,props.animation===`none`?``:`skeleton-${props.animation}`]),bg:`neutral-200 dark:neutral-800`,overflow:`hidden`},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],2))}}),Skeleton_default=__plugin_vue_export_helper_default(Skeleton_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-fa4a54cc`]]),CursorFloating_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`CursorFloating`,props:{intensity:{default:1.5}},setup(__props){let props=__props,cardRef=ref(null),transformStyle=ref(``),gradientPosition=ref(`50% 50%`),sparklePosition=ref(`50% 50%`),sparkleOpacity=ref(.5);function handleMouseMove(event){if(!cardRef.value)return;let card=cardRef.value,rect=card.getBoundingClientRect(),x$3=event.clientX-rect.left,y$2=event.clientY-rect.top,cardWidth=card.offsetWidth,cardHeight=card.offsetHeight,xPercent=Math.abs(Math.floor(100/cardWidth*x$3)-100),yPercent=Math.abs(Math.floor(100/cardHeight*y$2)-100),leftPos=50+(xPercent-50)/1.5,topPos=50+(yPercent-50)/1.5,sparkleX=50+(xPercent-50)/7,sparkleY=50+(yPercent-50)/7,rotateY=(leftPos-50)/1.5*.2*props.intensity,rotateX=(topPos-50)/2*-1*.2*props.intensity,pAngle=50-xPercent+(50-yPercent),opacity=.5+Math.abs(pAngle)*.008*props.intensity;transformStyle.value=`perspective(1200px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale3d(${1+.015*props.intensity}, ${1+.015*props.intensity}, ${1+.015*props.intensity})`,gradientPosition.value=`${leftPos}% ${topPos}%`,sparklePosition.value=`${sparkleX}% ${sparkleY}%`,sparkleOpacity.value=opacity}function resetCard(){transformStyle.value=`perspective(1200px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)`,gradientPosition.value=`50% 50%`,sparklePosition.value=`50% 50%`,sparkleOpacity.value=.5}return onMounted(()=>{transformStyle.value=`perspective(1200px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)`}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{ref_key:`cardRef`,ref:cardRef,class:`card-hover-effect`,style:normalizeStyle({transform:transformStyle.value,"--effect-intensity":_ctx.intensity}),onMousemove:handleMouseMove,onMouseleave:resetCard},[renderSlot(_ctx.$slots,`default`,{},void 0,!0)],36))}}),CursorFloating_default=__plugin_vue_export_helper_default(CursorFloating_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-24a7a9d5`]]),ProviderAccountIdInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderAccountIdInput`,props:mergeModels({placeholder:{},required:{type:Boolean},label:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(FieldInput_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,label:props.label||`Account ID`,description:props.description||`Account ID`,placeholder:props.placeholder,required:props.required,type:`text`},null,8,[`modelValue`,`label`,`description`,`placeholder`,`required`]))}}),ProviderAccountIdInput_default=ProviderAccountIdInput_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$15=[`onClick`],_hoisted_2$7={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},_hoisted_3$4={"mt-4":``};var ProviderAdvancedSettings_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderAdvancedSettings`,props:{title:{},initialVisible:{type:Boolean}},setup(__props){let props=__props,visible=ref(props.initialVisible||!1);function toggleVisible(){visible.value=!visible.value}return(_ctx,_cache$1)=>(openBlock(),createBlock(Collapsable_default,{"w-full":``},{trigger:withCtx(slotProps=>[createBaseVNode(`button`,{transition:`all ease-in-out duration-250`,"w-full":``,flex:``,"items-center":``,"gap-1.5":``,"outline-none":``,class:`[&_.provider-icon]:grayscale-100 [&_.provider-icon]:hover:grayscale-0`,onClick:()=>slotProps.setVisible(!slotProps.visible)&&toggleVisible()},[createBaseVNode(`h2`,_hoisted_2$7,[createBaseVNode(`span`,null,toDisplayString(_ctx.title||`Advanced`),1)]),createBaseVNode(`div`,{transform:``,transition:`transform duration-250`,class:normalizeClass({"rotate-180":slotProps.visible})},_cache$1[0]||=[createBaseVNode(`div`,{"i-solar:alt-arrow-down-linear":``},null,-1)],2)],8,_hoisted_1$15)]),default:withCtx(()=>[createBaseVNode(`div`,_hoisted_3$4,[renderSlot(_ctx.$slots,`default`)])]),_:3}))}}),ProviderAdvancedSettings_default=ProviderAdvancedSettings_vue_vue_type_script_setup_true_lang_default; /*! * shared v11.1.9 * (c) 2025 kazuya kawaguchi @@ -3852,7 +3852,7 @@ function defineStore(id,setup,setupOptions){let options$1,isSetupStore=typeof se const inBrowser=typeof window<`u`,makeSymbol=(name$2,shareable=!1)=>shareable?Symbol.for(name$2):Symbol(name$2),generateFormatCacheKey=(locale,key$1,source)=>friendlyJSONstringify({l:locale,k:key$1,s:source}),friendlyJSONstringify=json=>JSON.stringify(json).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`).replace(/\u0027/g,`\\u0027`),isNumber=val=>typeof val==`number`&&isFinite(val),isDate=val=>toTypeString(val)===`[object Date]`,isRegExp=val=>toTypeString(val)===`[object RegExp]`,isEmptyObject=val=>isPlainObject$3(val)&&Object.keys(val).length===0,assign=Object.assign,_create=Object.create,create$1=(obj=null)=>_create(obj);let _globalThis;const getGlobalThis=()=>_globalThis||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:create$1();function escapeHtml(rawText){return rawText.replace(//g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}const hasOwnProperty$1=Object.prototype.hasOwnProperty;function hasOwn$1(obj,key$1){return hasOwnProperty$1.call(obj,key$1)}const isArray$1=Array.isArray,isFunction=val=>typeof val==`function`,isString=val=>typeof val==`string`,isBoolean=val=>typeof val==`boolean`,isObject=val=>typeof val==`object`&&!!val,isPromise=val=>isObject(val)&&isFunction(val.then)&&isFunction(val.catch),objectToString=Object.prototype.toString,toTypeString=value$1=>objectToString.call(value$1),isPlainObject$3=val=>toTypeString(val)===`[object Object]`,toDisplayString$1=val=>val==null?``:isArray$1(val)||isPlainObject$3(val)&&val.toString===objectToString?JSON.stringify(val,null,2):String(val);function join$1(items,separator=``){return items.reduce((str,item,index$1)=>index$1===0?str+item:str+separator+item,``)}function warn(msg,err){typeof console<`u`&&(console.warn(`[intlify] `+msg),err&&console.warn(err.stack))}const isNotObjectOrIsArray=val=>!isObject(val)||isArray$1(val);function deepCopy(src,des){if(isNotObjectOrIsArray(src)||isNotObjectOrIsArray(des))throw Error(`Invalid value`);let stack$1=[{src,des}];for(;stack$1.length;){let{src:src$1,des:des$1}=stack$1.pop();Object.keys(src$1).forEach(key$1=>{key$1!==`__proto__`&&(isObject(src$1[key$1])&&!isObject(des$1[key$1])&&(des$1[key$1]=Array.isArray(src$1[key$1])?[]:create$1()),isNotObjectOrIsArray(des$1[key$1])||isNotObjectOrIsArray(src$1[key$1])?des$1[key$1]=src$1[key$1]:stack$1.push({src:src$1[key$1],des:des$1[key$1]}))})}}function createPosition(line,column,offset$1){return{line,column,offset:offset$1}}function createLocation(start,end,source){let loc={start,end};return source!=null&&(loc.source=source),loc}const CompileErrorCodes={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16},COMPILE_ERROR_CODES_EXTEND_POINT=17,errorMessages$2={[CompileErrorCodes.EXPECTED_TOKEN]:`Expected token: '{0}'`,[CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER]:`Invalid token in placeholder: '{0}'`,[CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:`Unterminated single quote in placeholder`,[CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE]:`Unknown escape sequence: \\{0}`,[CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE]:`Invalid unicode escape sequence: {0}`,[CompileErrorCodes.UNBALANCED_CLOSING_BRACE]:`Unbalanced closing brace`,[CompileErrorCodes.UNTERMINATED_CLOSING_BRACE]:`Unterminated closing brace`,[CompileErrorCodes.EMPTY_PLACEHOLDER]:`Empty placeholder`,[CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER]:`Not allowed nest placeholder`,[CompileErrorCodes.INVALID_LINKED_FORMAT]:`Invalid linked format`,[CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL]:`Plural must have messages`,[CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER]:`Unexpected empty linked modifier`,[CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY]:`Unexpected empty linked key`,[CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS]:`Unexpected lexical analysis in token: '{0}'`,[CompileErrorCodes.UNHANDLED_CODEGEN_NODE_TYPE]:`unhandled codegen node type: '{0}'`,[CompileErrorCodes.UNHANDLED_MINIFIER_NODE_TYPE]:`unhandled mimifier node type: '{0}'`};function createCompileError(code$1,loc,options$1={}){let{domain,messages,args}=options$1,msg=code$1,error=SyntaxError(String(msg));return error.code=code$1,loc&&(error.location=loc),error.domain=domain,error}function defaultOnError$1(error){throw error}const CHAR_SP=` `,CHAR_CR=`\r`,CHAR_LF=` `,CHAR_LS=`\u2028`,CHAR_PS=`\u2029`;function createScanner(str){let _buf=str,_index=0,_line=1,_column=1,_peekOffset=0,isCRLF=index$2=>_buf[index$2]===CHAR_CR&&_buf[index$2+1]===CHAR_LF,isLF=index$2=>_buf[index$2]===CHAR_LF,isPS=index$2=>_buf[index$2]===CHAR_PS,isLS=index$2=>_buf[index$2]===CHAR_LS,isLineEnd=index$2=>isCRLF(index$2)||isLF(index$2)||isPS(index$2)||isLS(index$2),index$1=()=>_index,line=()=>_line,column=()=>_column,peekOffset=()=>_peekOffset,charAt=offset$1=>isCRLF(offset$1)||isPS(offset$1)||isLS(offset$1)?CHAR_LF:_buf[offset$1],currentChar=()=>charAt(_index),currentPeek=()=>charAt(_index+_peekOffset);function next(){return _peekOffset=0,isLineEnd(_index)&&(_line++,_column=0),isCRLF(_index)&&_index++,_index++,_column++,_buf[_index]}function peek$1(){return isCRLF(_index+_peekOffset)&&_peekOffset++,_peekOffset++,_buf[_index+_peekOffset]}function reset(){_index=0,_line=1,_column=1,_peekOffset=0}function resetPeek(offset$1=0){_peekOffset=offset$1}function skipToPeek(){let target$1=_index+_peekOffset;for(;target$1!==_index;)next();_peekOffset=0}return{index:index$1,line,column,peekOffset,charAt,currentChar,currentPeek,next,peek:peek$1,reset,resetPeek,skipToPeek}}const EOF=void 0,DOT=`.`,LITERAL_DELIMITER=`'`,ERROR_DOMAIN$3=`tokenizer`;function createTokenizer$1(source,options$1={}){let location$1=options$1.location!==!1,_scnr=createScanner(source),currentOffset=()=>_scnr.index(),currentPosition=()=>createPosition(_scnr.line(),_scnr.column(),_scnr.index()),_initLoc=currentPosition(),_initOffset=currentOffset(),_context$1={currentType:13,offset:_initOffset,startLoc:_initLoc,endLoc:_initLoc,lastType:13,lastOffset:_initOffset,lastStartLoc:_initLoc,lastEndLoc:_initLoc,braceNest:0,inLinked:!1,text:``},context$1=()=>_context$1,{onError}=options$1;function emitError(code$1,pos,offset$1,...args){let ctx=context$1();if(pos.column+=offset$1,pos.offset+=offset$1,onError){let loc=location$1?createLocation(ctx.startLoc,pos):null,err=createCompileError(code$1,loc,{domain:ERROR_DOMAIN$3,args});onError(err)}}function getToken(context$2,type,value$1){context$2.endLoc=currentPosition(),context$2.currentType=type;let token={type};return location$1&&(token.loc=createLocation(context$2.startLoc,context$2.endLoc)),value$1!=null&&(token.value=value$1),token}let getEndToken=context$2=>getToken(context$2,13);function eat(scnr,ch){return scnr.currentChar()===ch?(scnr.next(),ch):(emitError(CompileErrorCodes.EXPECTED_TOKEN,currentPosition(),0,ch),``)}function peekSpaces(scnr){let buf=``;for(;scnr.currentPeek()===CHAR_SP||scnr.currentPeek()===CHAR_LF;)buf+=scnr.currentPeek(),scnr.peek();return buf}function skipSpaces(scnr){let buf=peekSpaces(scnr);return scnr.skipToPeek(),buf}function isIdentifierStart(ch){if(ch===EOF)return!1;let cc$1=ch.charCodeAt(0);return cc$1>=97&&cc$1<=122||cc$1>=65&&cc$1<=90||cc$1===95}function isNumberStart(ch){if(ch===EOF)return!1;let cc$1=ch.charCodeAt(0);return cc$1>=48&&cc$1<=57}function isNamedIdentifierStart(scnr,context$2){let{currentType}=context$2;if(currentType!==2)return!1;peekSpaces(scnr);let ret=isIdentifierStart(scnr.currentPeek());return scnr.resetPeek(),ret}function isListIdentifierStart(scnr,context$2){let{currentType}=context$2;if(currentType!==2)return!1;peekSpaces(scnr);let ch=scnr.currentPeek()===`-`?scnr.peek():scnr.currentPeek(),ret=isNumberStart(ch);return scnr.resetPeek(),ret}function isLiteralStart(scnr,context$2){let{currentType}=context$2;if(currentType!==2)return!1;peekSpaces(scnr);let ret=scnr.currentPeek()===LITERAL_DELIMITER;return scnr.resetPeek(),ret}function isLinkedDotStart(scnr,context$2){let{currentType}=context$2;if(currentType!==7)return!1;peekSpaces(scnr);let ret=scnr.currentPeek()===`.`;return scnr.resetPeek(),ret}function isLinkedModifierStart(scnr,context$2){let{currentType}=context$2;if(currentType!==8)return!1;peekSpaces(scnr);let ret=isIdentifierStart(scnr.currentPeek());return scnr.resetPeek(),ret}function isLinkedDelimiterStart(scnr,context$2){let{currentType}=context$2;if(!(currentType===7||currentType===11))return!1;peekSpaces(scnr);let ret=scnr.currentPeek()===`:`;return scnr.resetPeek(),ret}function isLinkedReferStart(scnr,context$2){let{currentType}=context$2;if(currentType!==9)return!1;let fn$5=()=>{let ch=scnr.currentPeek();return ch===`{`?isIdentifierStart(scnr.peek()):ch===`@`||ch===`|`||ch===`:`||ch===`.`||ch===CHAR_SP||!ch?!1:ch===CHAR_LF?(scnr.peek(),fn$5()):isTextStart(scnr,!1)},ret=fn$5();return scnr.resetPeek(),ret}function isPluralStart(scnr){peekSpaces(scnr);let ret=scnr.currentPeek()===`|`;return scnr.resetPeek(),ret}function isTextStart(scnr,reset=!0){let fn$5=(hasSpace=!1,prev=``)=>{let ch=scnr.currentPeek();return ch===`{`||ch===`@`||!ch?hasSpace:ch===`|`?!(prev===CHAR_SP||prev===CHAR_LF):ch===CHAR_SP?(scnr.peek(),fn$5(!0,CHAR_SP)):ch===CHAR_LF?(scnr.peek(),fn$5(!0,CHAR_LF)):!0},ret=fn$5();return reset&&scnr.resetPeek(),ret}function takeChar(scnr,fn$5){let ch=scnr.currentChar();return ch===EOF?EOF:fn$5(ch)?(scnr.next(),ch):null}function isIdentifier(ch){let cc$1=ch.charCodeAt(0);return cc$1>=97&&cc$1<=122||cc$1>=65&&cc$1<=90||cc$1>=48&&cc$1<=57||cc$1===95||cc$1===36}function takeIdentifierChar(scnr){return takeChar(scnr,isIdentifier)}function isNamedIdentifier(ch){let cc$1=ch.charCodeAt(0);return cc$1>=97&&cc$1<=122||cc$1>=65&&cc$1<=90||cc$1>=48&&cc$1<=57||cc$1===95||cc$1===36||cc$1===45}function takeNamedIdentifierChar(scnr){return takeChar(scnr,isNamedIdentifier)}function isDigit(ch){let cc$1=ch.charCodeAt(0);return cc$1>=48&&cc$1<=57}function takeDigit(scnr){return takeChar(scnr,isDigit)}function isHexDigit(ch){let cc$1=ch.charCodeAt(0);return cc$1>=48&&cc$1<=57||cc$1>=65&&cc$1<=70||cc$1>=97&&cc$1<=102}function takeHexDigit(scnr){return takeChar(scnr,isHexDigit)}function getDigits(scnr){let ch=``,num$2=``;for(;ch=takeDigit(scnr);)num$2+=ch;return num$2}function readText(scnr){let buf=``;for(;;){let ch=scnr.currentChar();if(ch===`{`||ch===`}`||ch===`@`||ch===`|`||!ch)break;if(ch===CHAR_SP||ch===CHAR_LF)if(isTextStart(scnr))buf+=ch,scnr.next();else if(isPluralStart(scnr))break;else buf+=ch,scnr.next();else buf+=ch,scnr.next()}return buf}function readNamedIdentifier(scnr){skipSpaces(scnr);let ch=``,name$2=``;for(;ch=takeNamedIdentifierChar(scnr);)name$2+=ch;return scnr.currentChar()===EOF&&emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,currentPosition(),0),name$2}function readListIdentifier(scnr){skipSpaces(scnr);let value$1=``;return scnr.currentChar()===`-`?(scnr.next(),value$1+=`-${getDigits(scnr)}`):value$1+=getDigits(scnr),scnr.currentChar()===EOF&&emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,currentPosition(),0),value$1}function isLiteral$1(ch){return ch!==LITERAL_DELIMITER&&ch!==CHAR_LF}function readLiteral(scnr){skipSpaces(scnr),eat(scnr,`'`);let ch=``,literal=``;for(;ch=takeChar(scnr,isLiteral$1);)ch===`\\`?literal+=readEscapeSequence(scnr):literal+=ch;let current=scnr.currentChar();return current===CHAR_LF||current===EOF?(emitError(CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,currentPosition(),0),current===CHAR_LF&&(scnr.next(),eat(scnr,`'`)),literal):(eat(scnr,`'`),literal)}function readEscapeSequence(scnr){let ch=scnr.currentChar();switch(ch){case`\\`:case`'`:return scnr.next(),`\\${ch}`;case`u`:return readUnicodeEscapeSequence(scnr,ch,4);case`U`:return readUnicodeEscapeSequence(scnr,ch,6);default:return emitError(CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE,currentPosition(),0,ch),``}}function readUnicodeEscapeSequence(scnr,unicode,digits$1){eat(scnr,unicode);let sequence=``;for(let i$1=0;i$1{let ch=scnr.currentChar();return ch===`{`||ch===`@`||ch===`|`||ch===`(`||ch===`)`||!ch||ch===CHAR_SP?buf:(buf+=ch,scnr.next(),fn$5(buf))};return fn$5(``)}function readPlural(scnr){skipSpaces(scnr);let plural=eat(scnr,`|`);return skipSpaces(scnr),plural}function readTokenInPlaceholder(scnr,context$2){let token=null,ch=scnr.currentChar();switch(ch){case`{`:return context$2.braceNest>=1&&emitError(CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER,currentPosition(),0),scnr.next(),token=getToken(context$2,2,`{`),skipSpaces(scnr),context$2.braceNest++,token;case`}`:return context$2.braceNest>0&&context$2.currentType===2&&emitError(CompileErrorCodes.EMPTY_PLACEHOLDER,currentPosition(),0),scnr.next(),token=getToken(context$2,3,`}`),context$2.braceNest--,context$2.braceNest>0&&skipSpaces(scnr),context$2.inLinked&&context$2.braceNest===0&&(context$2.inLinked=!1),token;case`@`:return context$2.braceNest>0&&emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,currentPosition(),0),token=readTokenInLinked(scnr,context$2)||getEndToken(context$2),context$2.braceNest=0,token;default:{let validNamedIdentifier=!0,validListIdentifier=!0,validLiteral=!0;if(isPluralStart(scnr))return context$2.braceNest>0&&emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,currentPosition(),0),token=getToken(context$2,1,readPlural(scnr)),context$2.braceNest=0,context$2.inLinked=!1,token;if(context$2.braceNest>0&&(context$2.currentType===4||context$2.currentType===5||context$2.currentType===6))return emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,currentPosition(),0),context$2.braceNest=0,readToken(scnr,context$2);if(validNamedIdentifier=isNamedIdentifierStart(scnr,context$2))return token=getToken(context$2,4,readNamedIdentifier(scnr)),skipSpaces(scnr),token;if(validListIdentifier=isListIdentifierStart(scnr,context$2))return token=getToken(context$2,5,readListIdentifier(scnr)),skipSpaces(scnr),token;if(validLiteral=isLiteralStart(scnr,context$2))return token=getToken(context$2,6,readLiteral(scnr)),skipSpaces(scnr),token;if(!validNamedIdentifier&&!validListIdentifier&&!validLiteral)return token=getToken(context$2,12,readInvalidIdentifier(scnr)),emitError(CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER,currentPosition(),0,token.value),skipSpaces(scnr),token;break}}return token}function readTokenInLinked(scnr,context$2){let{currentType}=context$2,token=null,ch=scnr.currentChar();switch((currentType===7||currentType===8||currentType===11||currentType===9)&&(ch===CHAR_LF||ch===CHAR_SP)&&emitError(CompileErrorCodes.INVALID_LINKED_FORMAT,currentPosition(),0),ch){case`@`:return scnr.next(),token=getToken(context$2,7,`@`),context$2.inLinked=!0,token;case`.`:return skipSpaces(scnr),scnr.next(),getToken(context$2,8,`.`);case`:`:return skipSpaces(scnr),scnr.next(),getToken(context$2,9,`:`);default:return isPluralStart(scnr)?(token=getToken(context$2,1,readPlural(scnr)),context$2.braceNest=0,context$2.inLinked=!1,token):isLinkedDotStart(scnr,context$2)||isLinkedDelimiterStart(scnr,context$2)?(skipSpaces(scnr),readTokenInLinked(scnr,context$2)):isLinkedModifierStart(scnr,context$2)?(skipSpaces(scnr),getToken(context$2,11,readLinkedModifier(scnr))):isLinkedReferStart(scnr,context$2)?(skipSpaces(scnr),ch===`{`?readTokenInPlaceholder(scnr,context$2)||token:getToken(context$2,10,readLinkedRefer(scnr))):(currentType===7&&emitError(CompileErrorCodes.INVALID_LINKED_FORMAT,currentPosition(),0),context$2.braceNest=0,context$2.inLinked=!1,readToken(scnr,context$2))}}function readToken(scnr,context$2){let token={type:13};if(context$2.braceNest>0)return readTokenInPlaceholder(scnr,context$2)||getEndToken(context$2);if(context$2.inLinked)return readTokenInLinked(scnr,context$2)||getEndToken(context$2);let ch=scnr.currentChar();switch(ch){case`{`:return readTokenInPlaceholder(scnr,context$2)||getEndToken(context$2);case`}`:return emitError(CompileErrorCodes.UNBALANCED_CLOSING_BRACE,currentPosition(),0),scnr.next(),getToken(context$2,3,`}`);case`@`:return readTokenInLinked(scnr,context$2)||getEndToken(context$2);default:if(isPluralStart(scnr))return token=getToken(context$2,1,readPlural(scnr)),context$2.braceNest=0,context$2.inLinked=!1,token;if(isTextStart(scnr))return getToken(context$2,0,readText(scnr));break}return token}function nextToken(){let{currentType,offset:offset$1,startLoc,endLoc}=_context$1;return _context$1.lastType=currentType,_context$1.lastOffset=offset$1,_context$1.lastStartLoc=startLoc,_context$1.lastEndLoc=endLoc,_context$1.offset=currentOffset(),_context$1.startLoc=currentPosition(),_scnr.currentChar()===EOF?getToken(_context$1,13):readToken(_scnr,_context$1)}return{nextToken,currentOffset,currentPosition,context:context$1}}const ERROR_DOMAIN$2=`parser`,KNOWN_ESCAPES=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function fromEscapeSequence(match,codePoint4,codePoint6){switch(match){case`\\\\`:return`\\`;case`\\'`:return`'`;default:{let codePoint=parseInt(codePoint4||codePoint6,16);return codePoint<=55295||codePoint>=57344?String.fromCodePoint(codePoint):`�`}}}function createParser(options$1={}){let location$1=options$1.location!==!1,{onError}=options$1;function emitError(tokenzer,code$1,start,offset$1,...args){let end=tokenzer.currentPosition();if(end.offset+=offset$1,end.column+=offset$1,onError){let loc=location$1?createLocation(start,end):null,err=createCompileError(code$1,loc,{domain:ERROR_DOMAIN$2,args});onError(err)}}function startNode(type,offset$1,loc){let node$1={type};return location$1&&(node$1.start=offset$1,node$1.end=offset$1,node$1.loc={start:loc,end:loc}),node$1}function endNode(node$1,offset$1,pos,type){location$1&&(node$1.end=offset$1,node$1.loc&&(node$1.loc.end=pos))}function parseText(tokenizer,value$1){let context$1=tokenizer.context(),node$1=startNode(3,context$1.offset,context$1.startLoc);return node$1.value=value$1,endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}function parseList(tokenizer,index$1){let context$1=tokenizer.context(),{lastOffset:offset$1,lastStartLoc:loc}=context$1,node$1=startNode(5,offset$1,loc);return node$1.index=parseInt(index$1,10),tokenizer.nextToken(),endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}function parseNamed$1(tokenizer,key$1){let context$1=tokenizer.context(),{lastOffset:offset$1,lastStartLoc:loc}=context$1,node$1=startNode(4,offset$1,loc);return node$1.key=key$1,tokenizer.nextToken(),endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}function parseLiteral(tokenizer,value$1){let context$1=tokenizer.context(),{lastOffset:offset$1,lastStartLoc:loc}=context$1,node$1=startNode(9,offset$1,loc);return node$1.value=value$1.replace(KNOWN_ESCAPES,fromEscapeSequence),tokenizer.nextToken(),endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}function parseLinkedModifier(tokenizer){let token=tokenizer.nextToken(),context$1=tokenizer.context(),{lastOffset:offset$1,lastStartLoc:loc}=context$1,node$1=startNode(8,offset$1,loc);return token.type===11?(token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),node$1.value=token.value||``,endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),{node:node$1}):(emitError(tokenizer,CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER,context$1.lastStartLoc,0),node$1.value=``,endNode(node$1,offset$1,loc),{nextConsumeToken:token,node:node$1})}function parseLinkedKey(tokenizer,value$1){let context$1=tokenizer.context(),node$1=startNode(7,context$1.offset,context$1.startLoc);return node$1.value=value$1,endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}function parseLinked(tokenizer){let context$1=tokenizer.context(),linkedNode=startNode(6,context$1.offset,context$1.startLoc),token=tokenizer.nextToken();if(token.type===8){let parsed=parseLinkedModifier(tokenizer);linkedNode.modifier=parsed.node,token=parsed.nextConsumeToken||tokenizer.nextToken()}switch(token.type!==9&&emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),token=tokenizer.nextToken(),token.type===2&&(token=tokenizer.nextToken()),token.type){case 10:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),linkedNode.key=parseLinkedKey(tokenizer,token.value||``);break;case 4:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),linkedNode.key=parseNamed$1(tokenizer,token.value||``);break;case 5:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),linkedNode.key=parseList(tokenizer,token.value||``);break;case 6:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),linkedNode.key=parseLiteral(tokenizer,token.value||``);break;default:{emitError(tokenizer,CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY,context$1.lastStartLoc,0);let nextContext=tokenizer.context(),emptyLinkedKeyNode=startNode(7,nextContext.offset,nextContext.startLoc);return emptyLinkedKeyNode.value=``,endNode(emptyLinkedKeyNode,nextContext.offset,nextContext.startLoc),linkedNode.key=emptyLinkedKeyNode,endNode(linkedNode,nextContext.offset,nextContext.startLoc),{nextConsumeToken:token,node:linkedNode}}}return endNode(linkedNode,tokenizer.currentOffset(),tokenizer.currentPosition()),{node:linkedNode}}function parseMessage(tokenizer){let context$1=tokenizer.context(),startOffset=context$1.currentType===1?tokenizer.currentOffset():context$1.offset,startLoc=context$1.currentType===1?context$1.endLoc:context$1.startLoc,node$1=startNode(2,startOffset,startLoc);node$1.items=[];let nextToken=null;do{let token=nextToken||tokenizer.nextToken();switch(nextToken=null,token.type){case 0:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),node$1.items.push(parseText(tokenizer,token.value||``));break;case 5:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),node$1.items.push(parseList(tokenizer,token.value||``));break;case 4:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),node$1.items.push(parseNamed$1(tokenizer,token.value||``));break;case 6:token.value??emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,getTokenCaption(token)),node$1.items.push(parseLiteral(tokenizer,token.value||``));break;case 7:{let parsed=parseLinked(tokenizer);node$1.items.push(parsed.node),nextToken=parsed.nextConsumeToken||null;break}}}while(context$1.currentType!==13&&context$1.currentType!==1);let endOffset=context$1.currentType===1?context$1.lastOffset:tokenizer.currentOffset(),endLoc=context$1.currentType===1?context$1.lastEndLoc:tokenizer.currentPosition();return endNode(node$1,endOffset,endLoc),node$1}function parsePlural(tokenizer,offset$1,loc,msgNode){let context$1=tokenizer.context(),hasEmptyMessage=msgNode.items.length===0,node$1=startNode(1,offset$1,loc);node$1.cases=[],node$1.cases.push(msgNode);do{let msg=parseMessage(tokenizer);hasEmptyMessage||=msg.items.length===0,node$1.cases.push(msg)}while(context$1.currentType!==13);return hasEmptyMessage&&emitError(tokenizer,CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL,loc,0),endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}function parseResource(tokenizer){let context$1=tokenizer.context(),{offset:offset$1,startLoc}=context$1,msgNode=parseMessage(tokenizer);return context$1.currentType===13?msgNode:parsePlural(tokenizer,offset$1,startLoc,msgNode)}function parse$4(source){let tokenizer=createTokenizer$1(source,assign({},options$1)),context$1=tokenizer.context(),node$1=startNode(0,context$1.offset,context$1.startLoc);return location$1&&node$1.loc&&(node$1.loc.source=source),node$1.body=parseResource(tokenizer),options$1.onCacheKey&&(node$1.cacheKey=options$1.onCacheKey(source)),context$1.currentType!==13&&emitError(tokenizer,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,context$1.lastStartLoc,0,source[context$1.offset]||``),endNode(node$1,tokenizer.currentOffset(),tokenizer.currentPosition()),node$1}return{parse:parse$4}}function getTokenCaption(token){if(token.type===13)return`EOF`;let name$2=(token.value||``).replace(/\r?\n/gu,`\\n`);return name$2.length>10?name$2.slice(0,9)+`…`:name$2}function createTransformer(ast,options$1={}){let _context$1={ast,helpers:new Set},context$1=()=>_context$1,helper=name$2=>(_context$1.helpers.add(name$2),name$2);return{context:context$1,helper}}function traverseNodes(nodes,transformer){for(let i$1=0;i$1optimizeMessageNode(c$4)),ast}function optimizeMessageNode(message$1){if(message$1.items.length===1){let item=message$1.items[0];(item.type===3||item.type===9)&&(message$1.static=item.value,delete item.value)}else{let values=[];for(let i$1=0;i$1_context$1;function push$1(code$1,node$1){_context$1.code+=code$1}function _newline(n$2,withBreakLine=!0){let _breakLineCode=withBreakLine?breakLineCode:``;push$1(_needIndent?_breakLineCode+` `.repeat(n$2):_breakLineCode)}function indent(withNewLine=!0){let level=++_context$1.indentLevel;withNewLine&&_newline(level)}function deindent(withNewLine=!0){let level=--_context$1.indentLevel;withNewLine&&_newline(level)}function newline(){_newline(_context$1.indentLevel)}let helper=key$1=>`_${key$1}`,needIndent=()=>_context$1.needIndent;return{context:context$1,push:push$1,indent,deindent,newline,helper,needIndent}}function generateLinkedNode(generator,node$1){let{helper}=generator;generator.push(`${helper(`linked`)}(`),generateNode(generator,node$1.key),node$1.modifier?(generator.push(`, `),generateNode(generator,node$1.modifier),generator.push(`, _type`)):generator.push(`, undefined, _type`),generator.push(`)`)}function generateMessageNode(generator,node$1){let{helper,needIndent}=generator;generator.push(`${helper(`normalize`)}([`),generator.indent(needIndent());let length=node$1.items.length;for(let i$1=0;i$11){generator.push(`${helper(`plural`)}([`),generator.indent(needIndent());let length=node$1.cases.length;for(let i$1=0;i$1{let mode=isString(options$1.mode)?options$1.mode:`normal`,filename=isString(options$1.filename)?options$1.filename:`message.intl`,sourceMap=!!options$1.sourceMap,breakLineCode=options$1.breakLineCode==null?mode===`arrow`?`;`:` `:options$1.breakLineCode,needIndent=options$1.needIndent?options$1.needIndent:mode!==`arrow`,helpers=ast.helpers||[],generator=createCodeGenerator(ast,{mode,filename,sourceMap,breakLineCode,needIndent});generator.push(mode===`normal`?`function __msg__ (ctx) {`:`(ctx) => {`),generator.indent(needIndent),helpers.length>0&&(generator.push(`const { ${join$1(helpers.map(s$1=>`${s$1}: _${s$1}`),`, `)} } = ctx`),generator.newline()),generator.push(`return `),generateNode(generator,ast),generator.deindent(needIndent),generator.push(`}`),delete ast.helpers;let{code:code$1,map}=generator.context();return{ast,code:code$1,map:map?map.toJSON():void 0}};function baseCompile(source,options$1={}){let assignedOptions=assign({},options$1),jit=!!assignedOptions.jit,enalbeMinify=!!assignedOptions.minify,enambeOptimize=assignedOptions.optimize==null?!0:assignedOptions.optimize,parser=createParser(assignedOptions),ast=parser.parse(source);return jit?(enambeOptimize&&optimize(ast),enalbeMinify&&minify(ast),{ast,code:``}):(transform(ast,assignedOptions),generate(ast,assignedOptions))}function initFeatureFlags$1(){typeof __INTLIFY_PROD_DEVTOOLS__!=`boolean`&&(getGlobalThis().__INTLIFY_PROD_DEVTOOLS__=!1)}function isMessageAST(val){return isObject(val)&&resolveType(val)===0&&(hasOwn$1(val,`b`)||hasOwn$1(val,`body`))}const PROPS_BODY=[`b`,`body`];function resolveBody(node$1){return resolveProps(node$1,PROPS_BODY)}const PROPS_CASES=[`c`,`cases`];function resolveCases(node$1){return resolveProps(node$1,PROPS_CASES,[])}const PROPS_STATIC=[`s`,`static`];function resolveStatic(node$1){return resolveProps(node$1,PROPS_STATIC)}const PROPS_ITEMS=[`i`,`items`];function resolveItems(node$1){return resolveProps(node$1,PROPS_ITEMS,[])}const PROPS_TYPE=[`t`,`type`];function resolveType(node$1){return resolveProps(node$1,PROPS_TYPE)}const PROPS_VALUE=[`v`,`value`];function resolveValue$1(node$1,type){let resolved=resolveProps(node$1,PROPS_VALUE);if(resolved!=null)return resolved;throw createUnhandleNodeError(type)}const PROPS_MODIFIER=[`m`,`modifier`];function resolveLinkedModifier(node$1){return resolveProps(node$1,PROPS_MODIFIER)}const PROPS_KEY=[`k`,`key`];function resolveLinkedKey(node$1){let resolved=resolveProps(node$1,PROPS_KEY);if(resolved)return resolved;throw createUnhandleNodeError(6)}function resolveProps(node$1,props,defaultValue){for(let i$1=0;i$1formatParts(ctx,ast);return msg}function formatParts(ctx,ast){let body$2=resolveBody(ast);if(body$2==null)throw createUnhandleNodeError(0);let type=resolveType(body$2);if(type===1){let plural=body$2,cases=resolveCases(plural);return ctx.plural(cases.reduce((messages,c$4)=>[...messages,formatMessageParts(ctx,c$4)],[]))}else return formatMessageParts(ctx,body$2)}function formatMessageParts(ctx,node$1){let static_=resolveStatic(node$1);if(static_!=null)return ctx.type===`text`?static_:ctx.normalize([static_]);{let messages=resolveItems(node$1).reduce((acm,c$4)=>[...acm,formatMessagePart(ctx,c$4)],[]);return ctx.normalize(messages)}}function formatMessagePart(ctx,node$1){let type=resolveType(node$1);switch(type){case 3:return resolveValue$1(node$1,type);case 9:return resolveValue$1(node$1,type);case 4:{let named$1=node$1;if(hasOwn$1(named$1,`k`)&&named$1.k)return ctx.interpolate(ctx.named(named$1.k));if(hasOwn$1(named$1,`key`)&&named$1.key)return ctx.interpolate(ctx.named(named$1.key));throw createUnhandleNodeError(type)}case 5:{let list$2=node$1;if(hasOwn$1(list$2,`i`)&&isNumber(list$2.i))return ctx.interpolate(ctx.list(list$2.i));if(hasOwn$1(list$2,`index`)&&isNumber(list$2.index))return ctx.interpolate(ctx.list(list$2.index));throw createUnhandleNodeError(type)}case 6:{let linked=node$1,modifier=resolveLinkedModifier(linked),key$1=resolveLinkedKey(linked);return ctx.linked(formatMessagePart(ctx,key$1),modifier?formatMessagePart(ctx,modifier):void 0,ctx.type)}case 7:return resolveValue$1(node$1,type);case 8:return resolveValue$1(node$1,type);default:throw Error(`unhandled node on format message part: ${type}`)}}const defaultOnCacheKey=message$1=>message$1;let compileCache=create$1();function baseCompile$1(message$1,options$1={}){let detectError=!1,onError=options$1.onError||defaultOnError$1;return options$1.onError=err=>{detectError=!0,onError(err)},{...baseCompile(message$1,options$1),detectError}}function compile(message$1,context$1){if(isString(message$1)){let warnHtmlMessage=isBoolean(context$1.warnHtmlMessage)?context$1.warnHtmlMessage:!0,onCacheKey=context$1.onCacheKey||defaultOnCacheKey,cacheKey=onCacheKey(message$1),cached=compileCache[cacheKey];if(cached)return cached;let{ast,detectError}=baseCompile$1(message$1,{...context$1,location:!1,jit:!0}),msg=format$1(ast);return detectError?msg:compileCache[cacheKey]=msg}else{let cacheKey=message$1.cacheKey;if(cacheKey){let cached=compileCache[cacheKey];return cached||(compileCache[cacheKey]=format$1(message$1))}else return format$1(message$1)}}let devtools=null;function setDevToolsHook(hook){devtools=hook}function initI18nDevTools(i18n$1,version$1,meta){devtools&&devtools.emit(`i18n:init`,{timestamp:Date.now(),i18n:i18n$1,version:version$1,meta})}const translateDevTools=createDevToolsHook(`function:translate`);function createDevToolsHook(hook){return payloads=>devtools&&devtools.emit(hook,payloads)}const CoreErrorCodes={INVALID_ARGUMENT:COMPILE_ERROR_CODES_EXTEND_POINT,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_NON_STRING_MESSAGE:20,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23},CORE_ERROR_CODES_EXTEND_POINT=24;function createCoreError(code$1){return createCompileError(code$1,null,void 0)}const errorMessages$1={[CoreErrorCodes.INVALID_ARGUMENT]:`Invalid arguments`,[CoreErrorCodes.INVALID_DATE_ARGUMENT]:`The date provided is an invalid Date object.Make sure your Date represents a valid date.`,[CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT]:`The argument provided is not a valid ISO date string`,[CoreErrorCodes.NOT_SUPPORT_NON_STRING_MESSAGE]:`Not support non-string message`,[CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE]:`cannot support promise value`,[CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION]:`cannot support async function`,[CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE]:`cannot support locale type`};function getLocale$1(context$1,options$1){return options$1.locale==null?resolveLocale(context$1.locale):resolveLocale(options$1.locale)}let _resolveLocale;function resolveLocale(locale){if(isString(locale))return locale;if(isFunction(locale)){if(locale.resolvedOnce&&_resolveLocale!=null)return _resolveLocale;if(locale.constructor.name===`Function`){let resolve$1=locale();if(isPromise(resolve$1))throw createCoreError(CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return _resolveLocale=resolve$1}else throw createCoreError(CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw createCoreError(CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE)}function fallbackWithSimple(ctx,fallback,start){return[...new Set([start,...isArray$1(fallback)?fallback:isObject(fallback)?Object.keys(fallback):isString(fallback)?[fallback]:[start]])]}function fallbackWithLocaleChain(ctx,fallback,start){let startLocale=isString(start)?start:DEFAULT_LOCALE,context$1=ctx;context$1.__localeChainCache||=new Map;let chain=context$1.__localeChainCache.get(startLocale);if(!chain){chain=[];let block=[start];for(;isArray$1(block);)block=appendBlockToChain(chain,block,fallback);let defaults=isArray$1(fallback)||!isPlainObject$3(fallback)?fallback:fallback.default?fallback.default:null;block=isString(defaults)?[defaults]:defaults,isArray$1(block)&&appendBlockToChain(chain,block,!1),context$1.__localeChainCache.set(startLocale,chain)}return chain}function appendBlockToChain(chain,block,blocks){let follow=!0;for(let i$1=0;i$1{key$1===void 0?key$1=newChar:key$1+=newChar},actions[1]=()=>{key$1!==void 0&&(keys$3.push(key$1),key$1=void 0)},actions[2]=()=>{actions[0](),subPathDepth++},actions[3]=()=>{if(subPathDepth>0)subPathDepth--,mode=4,actions[0]();else{if(subPathDepth=0,key$1===void 0||(key$1=formatSubPath(key$1),key$1===!1))return!1;actions[1]()}};function maybeUnescapeQuote(){let nextChar=path[index$1+1];if(mode===5&&nextChar===`'`||mode===6&&nextChar===`"`)return index$1++,newChar=`\\`+nextChar,actions[0](),!0}for(;mode!==null;)if(index$1++,c$4=path[index$1],!(c$4===`\\`&&maybeUnescapeQuote())){if(type=getPathCharType(c$4),typeMap=pathStateMachine[mode],transition=typeMap[type]||typeMap.l||8,transition===8||(mode=transition[0],transition[1]!==void 0&&(action=actions[transition[1]],action&&(newChar=c$4,action()===!1))))return;if(mode===7)return keys$3}}const cache=new Map;function resolveWithKeyValue(obj,path){return isObject(obj)?obj[path]:null}function resolveValue(obj,path){if(!isObject(obj))return null;let hit=cache.get(path);if(hit||(hit=parse$1(path),hit&&cache.set(path,hit)),!hit)return null;let len=hit.length,last=obj,i$1=0;for(;i$1`${str.charAt(0).toLocaleUpperCase()}${str.substr(1)}`;function getDefaultLinkedModifiers(){return{upper:(val,type)=>type===`text`&&isString(val)?val.toUpperCase():type===`vnode`&&isObject(val)&&`__v_isVNode`in val?val.children.toUpperCase():val,lower:(val,type)=>type===`text`&&isString(val)?val.toLowerCase():type===`vnode`&&isObject(val)&&`__v_isVNode`in val?val.children.toLowerCase():val,capitalize:(val,type)=>type===`text`&&isString(val)?capitalize(val):type===`vnode`&&isObject(val)&&`__v_isVNode`in val?capitalize(val.children):val}}let _compiler;function registerMessageCompiler(compiler$1){_compiler=compiler$1}let _resolver;function registerMessageResolver(resolver$1){_resolver=resolver$1}let _fallbacker;function registerLocaleFallbacker(fallbacker){_fallbacker=fallbacker}let _additionalMeta=null;const setAdditionalMeta=meta=>{_additionalMeta=meta},getAdditionalMeta=()=>_additionalMeta;let _fallbackContext=null;const setFallbackContext=context$1=>{_fallbackContext=context$1},getFallbackContext=()=>_fallbackContext;let _cid=0;function createCoreContext(options$1={}){let onWarn=isFunction(options$1.onWarn)?options$1.onWarn:warn,version$1=isString(options$1.version)?options$1.version:VERSION$1,locale=isString(options$1.locale)||isFunction(options$1.locale)?options$1.locale:DEFAULT_LOCALE,_locale=isFunction(locale)?DEFAULT_LOCALE:locale,fallbackLocale=isArray$1(options$1.fallbackLocale)||isPlainObject$3(options$1.fallbackLocale)||isString(options$1.fallbackLocale)||options$1.fallbackLocale===!1?options$1.fallbackLocale:_locale,messages=isPlainObject$3(options$1.messages)?options$1.messages:createResources(_locale),datetimeFormats=isPlainObject$3(options$1.datetimeFormats)?options$1.datetimeFormats:createResources(_locale),numberFormats=isPlainObject$3(options$1.numberFormats)?options$1.numberFormats:createResources(_locale),modifiers=assign(create$1(),options$1.modifiers,getDefaultLinkedModifiers()),pluralRules=options$1.pluralRules||create$1(),missing=isFunction(options$1.missing)?options$1.missing:null,missingWarn=isBoolean(options$1.missingWarn)||isRegExp(options$1.missingWarn)?options$1.missingWarn:!0,fallbackWarn=isBoolean(options$1.fallbackWarn)||isRegExp(options$1.fallbackWarn)?options$1.fallbackWarn:!0,fallbackFormat=!!options$1.fallbackFormat,unresolving=!!options$1.unresolving,postTranslation=isFunction(options$1.postTranslation)?options$1.postTranslation:null,processor=isPlainObject$3(options$1.processor)?options$1.processor:null,warnHtmlMessage=isBoolean(options$1.warnHtmlMessage)?options$1.warnHtmlMessage:!0,escapeParameter=!!options$1.escapeParameter,messageCompiler=isFunction(options$1.messageCompiler)?options$1.messageCompiler:_compiler,messageResolver=isFunction(options$1.messageResolver)?options$1.messageResolver:_resolver||resolveWithKeyValue,localeFallbacker=isFunction(options$1.localeFallbacker)?options$1.localeFallbacker:_fallbacker||fallbackWithSimple,fallbackContext=isObject(options$1.fallbackContext)?options$1.fallbackContext:void 0,internalOptions=options$1,__datetimeFormatters=isObject(internalOptions.__datetimeFormatters)?internalOptions.__datetimeFormatters:new Map,__numberFormatters=isObject(internalOptions.__numberFormatters)?internalOptions.__numberFormatters:new Map,__meta=isObject(internalOptions.__meta)?internalOptions.__meta:{};_cid++;let context$1={version:version$1,cid:_cid,locale,fallbackLocale,messages,modifiers,pluralRules,missing,missingWarn,fallbackWarn,fallbackFormat,unresolving,postTranslation,processor,warnHtmlMessage,escapeParameter,messageCompiler,messageResolver,localeFallbacker,fallbackContext,onWarn,__meta};return context$1.datetimeFormats=datetimeFormats,context$1.numberFormats=numberFormats,context$1.__datetimeFormatters=__datetimeFormatters,context$1.__numberFormatters=__numberFormatters,__INTLIFY_PROD_DEVTOOLS__&&initI18nDevTools(context$1,version$1,__meta),context$1}const createResources=locale=>({[locale]:create$1()});function handleMissing(context$1,key$1,locale,missingWarn,type){let{missing,onWarn}=context$1;if(missing!==null){let ret=missing(context$1,locale,key$1,type);return isString(ret)?ret:key$1}else return key$1}function updateFallbackLocale(ctx,locale,fallback){let context$1=ctx;context$1.__localeChainCache=new Map,ctx.localeFallbacker(ctx,fallback,locale)}function isAlmostSameLocale(locale,compareLocale){return locale===compareLocale?!1:locale.split(`-`)[0]===compareLocale.split(`-`)[0]}function isImplicitFallback(targetLocale,locales){let index$1=locales.indexOf(targetLocale);if(index$1===-1)return!1;for(let i$1=index$1+1;i$1{DATETIME_FORMAT_OPTIONS_KEYS.includes(key$1)?overrides[key$1]=arg2[key$1]:options$1[key$1]=arg2[key$1]}),isString(arg3)?options$1.locale=arg3:isPlainObject$3(arg3)&&(overrides=arg3),isPlainObject$3(arg4)&&(overrides=arg4),[options$1.key||``,value$1,options$1,overrides]}function clearDateTimeFormat(ctx,locale,format$2){let context$1=ctx;for(let key$1 in format$2){let id=`${locale}__${key$1}`;if(!context$1.__datetimeFormatters.has(id))continue;context$1.__datetimeFormatters.delete(id)}}function number$1(context$1,...args){let{numberFormats,unresolving,fallbackLocale,onWarn,localeFallbacker}=context$1,{__numberFormatters}=context$1,[key$1,value$1,options$1,overrides]=parseNumberArgs(...args),missingWarn=isBoolean(options$1.missingWarn)?options$1.missingWarn:context$1.missingWarn,fallbackWarn=isBoolean(options$1.fallbackWarn)?options$1.fallbackWarn:context$1.fallbackWarn,part=!!options$1.part,locale=getLocale$1(context$1,options$1),locales=localeFallbacker(context$1,fallbackLocale,locale);if(!isString(key$1)||key$1===``)return new Intl.NumberFormat(locale,overrides).format(value$1);let numberFormat={},targetLocale,format$2=null,from=locale,to$1=null,type=`number format`;for(let i$1=0;i$1{NUMBER_FORMAT_OPTIONS_KEYS.includes(key$1)?overrides[key$1]=arg2[key$1]:options$1[key$1]=arg2[key$1]}),isString(arg3)?options$1.locale=arg3:isPlainObject$3(arg3)&&(overrides=arg3),isPlainObject$3(arg4)&&(overrides=arg4),[options$1.key||``,value$1,options$1,overrides]}function clearNumberFormat(ctx,locale,format$2){let context$1=ctx;for(let key$1 in format$2){let id=`${locale}__${key$1}`;if(!context$1.__numberFormatters.has(id))continue;context$1.__numberFormatters.delete(id)}}const DEFAULT_MODIFIER=str=>str,DEFAULT_MESSAGE=ctx=>``,DEFAULT_MESSAGE_DATA_TYPE=`text`,DEFAULT_NORMALIZE=values=>values.length===0?``:join$1(values),DEFAULT_INTERPOLATE=toDisplayString$1;function pluralDefault(choice,choicesLength){return choice=Math.abs(choice),choicesLength===2?choice?choice>1?1:0:1:choice?Math.min(choice,2):0}function getPluralIndex(options$1){let index$1=isNumber(options$1.pluralIndex)?options$1.pluralIndex:-1;return options$1.named&&(isNumber(options$1.named.count)||isNumber(options$1.named.n))?isNumber(options$1.named.count)?options$1.named.count:isNumber(options$1.named.n)?options$1.named.n:index$1:index$1}function normalizeNamed(pluralIndex,props){props.count||=pluralIndex,props.n||=pluralIndex}function createMessageContext(options$1={}){let locale=options$1.locale,pluralIndex=getPluralIndex(options$1),pluralRule=isObject(options$1.pluralRules)&&isString(locale)&&isFunction(options$1.pluralRules[locale])?options$1.pluralRules[locale]:pluralDefault,orgPluralRule=isObject(options$1.pluralRules)&&isString(locale)&&isFunction(options$1.pluralRules[locale])?pluralDefault:void 0,plural=messages=>messages[pluralRule(pluralIndex,messages.length,orgPluralRule)],_list=options$1.list||[],list$2=index$1=>_list[index$1],_named=options$1.named||create$1();isNumber(options$1.pluralIndex)&&normalizeNamed(pluralIndex,_named);let named$1=key$1=>_named[key$1];function message$1(key$1,useLinked){let msg=isFunction(options$1.messages)?options$1.messages(key$1,!!useLinked):isObject(options$1.messages)?options$1.messages[key$1]:!1;return msg||(options$1.parent?options$1.parent.message(key$1):DEFAULT_MESSAGE)}let _modifier=name$2=>options$1.modifiers?options$1.modifiers[name$2]:DEFAULT_MODIFIER,normalize$3=isPlainObject$3(options$1.processor)&&isFunction(options$1.processor.normalize)?options$1.processor.normalize:DEFAULT_NORMALIZE,interpolate$1=isPlainObject$3(options$1.processor)&&isFunction(options$1.processor.interpolate)?options$1.processor.interpolate:DEFAULT_INTERPOLATE,type=isPlainObject$3(options$1.processor)&&isString(options$1.processor.type)?options$1.processor.type:DEFAULT_MESSAGE_DATA_TYPE,linked=(key$1,...args)=>{let[arg1,arg2]=args,type$1=`text`,modifier=``;args.length===1?isObject(arg1)?(modifier=arg1.modifier||modifier,type$1=arg1.type||type$1):isString(arg1)&&(modifier=arg1||modifier):args.length===2&&(isString(arg1)&&(modifier=arg1||modifier),isString(arg2)&&(type$1=arg2||type$1));let ret=message$1(key$1,!0)(ctx),msg=type$1===`vnode`&&isArray$1(ret)&&modifier?ret[0]:ret;return modifier?_modifier(modifier)(msg,type$1):msg},ctx={list:list$2,named:named$1,plural,linked,message:message$1,type,interpolate:interpolate$1,normalize:normalize$3,values:assign(create$1(),_list,_named)};return ctx}const NOOP_MESSAGE_FUNCTION=()=>``,isMessageFunction=val=>isFunction(val);function translate(context$1,...args){let{fallbackFormat,postTranslation,unresolving,messageCompiler,fallbackLocale,messages}=context$1,[key$1,options$1]=parseTranslateArgs(...args),missingWarn=isBoolean(options$1.missingWarn)?options$1.missingWarn:context$1.missingWarn,fallbackWarn=isBoolean(options$1.fallbackWarn)?options$1.fallbackWarn:context$1.fallbackWarn,escapeParameter=isBoolean(options$1.escapeParameter)?options$1.escapeParameter:context$1.escapeParameter,resolvedMessage=!!options$1.resolvedMessage,defaultMsgOrKey=isString(options$1.default)||isBoolean(options$1.default)?isBoolean(options$1.default)?messageCompiler?key$1:()=>key$1:options$1.default:fallbackFormat?messageCompiler?key$1:()=>key$1:null,enableDefaultMsg=fallbackFormat||defaultMsgOrKey!=null&&(isString(defaultMsgOrKey)||isFunction(defaultMsgOrKey)),locale=getLocale$1(context$1,options$1);escapeParameter&&escapeParams(options$1);let[formatScope,targetLocale,message$1]=resolvedMessage?[key$1,locale,messages[locale]||create$1()]:resolveMessageFormat(context$1,key$1,locale,fallbackLocale,fallbackWarn,missingWarn),format$2=formatScope,cacheBaseKey=key$1;if(!resolvedMessage&&!(isString(format$2)||isMessageAST(format$2)||isMessageFunction(format$2))&&enableDefaultMsg&&(format$2=defaultMsgOrKey,cacheBaseKey=format$2),!resolvedMessage&&(!(isString(format$2)||isMessageAST(format$2)||isMessageFunction(format$2))||!isString(targetLocale)))return unresolving?NOT_REOSLVED:key$1;let occurred=!1,onError=()=>{occurred=!0},msg=isMessageFunction(format$2)?format$2:compileMessageFormat(context$1,key$1,targetLocale,format$2,cacheBaseKey,onError);if(occurred)return format$2;let ctxOptions=getMessageContextOptions(context$1,targetLocale,message$1,options$1),msgContext=createMessageContext(ctxOptions),messaged=evaluateMessage(context$1,msg,msgContext),ret=postTranslation?postTranslation(messaged,key$1):messaged;if(__INTLIFY_PROD_DEVTOOLS__){let payloads={timestamp:Date.now(),key:isString(key$1)?key$1:isMessageFunction(format$2)?format$2.key:``,locale:targetLocale||(isMessageFunction(format$2)?format$2.locale:``),format:isString(format$2)?format$2:isMessageFunction(format$2)?format$2.source:``,message:ret};payloads.meta=assign({},context$1.__meta,getAdditionalMeta()||{}),translateDevTools(payloads)}return ret}function escapeParams(options$1){isArray$1(options$1.list)?options$1.list=options$1.list.map(item=>isString(item)?escapeHtml(item):item):isObject(options$1.named)&&Object.keys(options$1.named).forEach(key$1=>{isString(options$1.named[key$1])&&(options$1.named[key$1]=escapeHtml(options$1.named[key$1]))})}function resolveMessageFormat(context$1,key$1,locale,fallbackLocale,fallbackWarn,missingWarn){let{messages,onWarn,messageResolver:resolveValue$2,localeFallbacker}=context$1,locales=localeFallbacker(context$1,fallbackLocale,locale),message$1=create$1(),targetLocale,format$2=null,from=locale,to$1=null,type=`translate`;for(let i$1=0;i$1format$2;return msg$1.locale=targetLocale,msg$1.key=key$1,msg$1}let start=null,startTag,endTag,msg=messageCompiler(format$2,getCompileContext(context$1,targetLocale,cacheBaseKey,format$2,warnHtmlMessage,onError));return msg.locale=targetLocale,msg.key=key$1,msg.source=format$2,msg}function evaluateMessage(context$1,msg,msgCtx){let start=null,startTag,endTag,messaged=msg(msgCtx);return messaged}function parseTranslateArgs(...args){let[arg1,arg2,arg3]=args,options$1=create$1();if(!isString(arg1)&&!isNumber(arg1)&&!isMessageFunction(arg1)&&!isMessageAST(arg1))throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);let key$1=isNumber(arg1)?String(arg1):(isMessageFunction(arg1),arg1);return isNumber(arg2)?options$1.plural=arg2:isString(arg2)?options$1.default=arg2:isPlainObject$3(arg2)&&!isEmptyObject(arg2)?options$1.named=arg2:isArray$1(arg2)&&(options$1.list=arg2),isNumber(arg3)?options$1.plural=arg3:isString(arg3)?options$1.default=arg3:isPlainObject$3(arg3)&&assign(options$1,arg3),[key$1,options$1]}function getCompileContext(context$1,locale,key$1,source,warnHtmlMessage,onError){return{locale,key:key$1,warnHtmlMessage,onError:err=>{throw onError&&onError(err),err},onCacheKey:source$1=>generateFormatCacheKey(locale,key$1,source$1)}}function getMessageContextOptions(context$1,locale,message$1,options$1){let{modifiers,pluralRules,messageResolver:resolveValue$2,fallbackLocale,fallbackWarn,missingWarn,fallbackContext}=context$1,resolveMessage=(key$1,useLinked)=>{let val=resolveValue$2(message$1,key$1);if(val==null&&(fallbackContext||useLinked)){let[,,message$2]=resolveMessageFormat(fallbackContext||context$1,key$1,locale,fallbackLocale,fallbackWarn,missingWarn);val=resolveValue$2(message$2,key$1)}if(isString(val)||isMessageAST(val)){let occurred=!1,onError=()=>{occurred=!0},msg=compileMessageFormat(context$1,key$1,locale,val,key$1,onError);return occurred?NOOP_MESSAGE_FUNCTION:msg}else if(isMessageFunction(val))return val;else return NOOP_MESSAGE_FUNCTION},ctxOptions={locale,modifiers,pluralRules,messages:resolveMessage};return context$1.processor&&(ctxOptions.processor=context$1.processor),options$1.list&&(ctxOptions.list=options$1.list),options$1.named&&(ctxOptions.named=options$1.named),isNumber(options$1.plural)&&(ctxOptions.pluralIndex=options$1.plural),ctxOptions}initFeatureFlags$1();const VERSION=`11.1.9`;function initFeatureFlags(){typeof __INTLIFY_PROD_DEVTOOLS__!=`boolean`&&(getGlobalThis().__INTLIFY_PROD_DEVTOOLS__=!1)}const I18nErrorCodes={UNEXPECTED_RETURN_TYPE:CORE_ERROR_CODES_EXTEND_POINT,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:30,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_COMPATIBLE_LEGACY_VUE_I18N:33,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34,DUPLICATE_USE_I18N_CALLING:35};function createI18nError(code$1,...args){return createCompileError(code$1,null,void 0)}const errorMessages={[I18nErrorCodes.UNEXPECTED_RETURN_TYPE]:`Unexpected return type in composer`,[I18nErrorCodes.INVALID_ARGUMENT]:`Invalid argument`,[I18nErrorCodes.MUST_BE_CALL_SETUP_TOP]:"Must be called at the top of a `setup` function",[I18nErrorCodes.NOT_INSTALLED]:"Need to install with `app.use` function",[I18nErrorCodes.UNEXPECTED_ERROR]:`Unexpected error`,[I18nErrorCodes.REQUIRED_VALUE]:`Required in value: {0}`,[I18nErrorCodes.INVALID_VALUE]:`Invalid value`,[I18nErrorCodes.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN]:`Cannot setup vue-devtools plugin`,[I18nErrorCodes.NOT_INSTALLED_WITH_PROVIDE]:"Need to install with `provide` function",[I18nErrorCodes.NOT_COMPATIBLE_LEGACY_VUE_I18N]:`Not compatible legacy VueI18n.`,[I18nErrorCodes.NOT_AVAILABLE_COMPOSITION_IN_LEGACY]:`Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly`,[I18nErrorCodes.DUPLICATE_USE_I18N_CALLING]:"Duplicate `useI18n` calling by local scope. Please don't call it on local scope"},TranslateVNodeSymbol=makeSymbol(`__translateVNode`),DatetimePartsSymbol=makeSymbol(`__datetimeParts`),NumberPartsSymbol=makeSymbol(`__numberParts`),SetPluralRulesSymbol=makeSymbol(`__setPluralRules`);makeSymbol(`__intlifyMeta`);const InejctWithOptionSymbol=makeSymbol(`__injectWithOption`),DisposeSymbol=makeSymbol(`__dispose`),I18nWarnCodes={FALLBACK_TO_ROOT:CORE_WARN_CODES_EXTEND_POINT,NOT_FOUND_PARENT_SCOPE:9,IGNORE_OBJ_FLATTEN:10,DEPRECATE_LEGACY_MODE:11,DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE:12},warnMessages={[I18nWarnCodes.FALLBACK_TO_ROOT]:`Fall back to {type} '{key}' with root locale.`,[I18nWarnCodes.NOT_FOUND_PARENT_SCOPE]:`Not found parent scope. use the global scope.`,[I18nWarnCodes.IGNORE_OBJ_FLATTEN]:`Ignore object flatten: '{key}' key has an string value`,[I18nWarnCodes.DEPRECATE_LEGACY_MODE]:`Legacy API mode has been deprecated in v11. Use Composition API mode instead. -About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guide/advanced/composition.html`,[I18nWarnCodes.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE]:`'v-t' has been deprecated in v11. Use translate APIs ('t' or '$t') instead.`};function handleFlatJson(obj){if(!isObject(obj)||isMessageAST(obj))return obj;for(let key$1 in obj){if(!hasOwn$1(obj,key$1))continue;if(!key$1.includes(`.`))isObject(obj[key$1])&&handleFlatJson(obj[key$1]);else{let subKeys=key$1.split(`.`),lastIndex=subKeys.length-1,currentObj=obj,hasStringValue=!1;for(let i$1=0;i$1{if(`locale`in custom&&`resource`in custom){let{locale:locale$1,resource}=custom;locale$1?(ret[locale$1]=ret[locale$1]||create$1(),deepCopy(resource,ret[locale$1])):deepCopy(resource,ret)}else isString(custom)&&deepCopy(JSON.parse(custom),ret)}),messageResolver==null&&flatJson)for(let key$1 in ret)hasOwn$1(ret,key$1)&&handleFlatJson(ret[key$1]);return ret}function getComponentOptions(instance){return instance.type}function adjustI18nResources(gl,options$1,componentOptions){let messages=isObject(options$1.messages)?options$1.messages:create$1();`__i18nGlobal`in componentOptions&&(messages=getLocaleMessages(gl.locale.value,{messages,__i18n:componentOptions.__i18nGlobal}));let locales=Object.keys(messages);if(locales.length&&locales.forEach(locale=>{gl.mergeLocaleMessage(locale,messages[locale])}),isObject(options$1.datetimeFormats)){let locales$1=Object.keys(options$1.datetimeFormats);locales$1.length&&locales$1.forEach(locale=>{gl.mergeDateTimeFormat(locale,options$1.datetimeFormats[locale])})}if(isObject(options$1.numberFormats)){let locales$1=Object.keys(options$1.numberFormats);locales$1.length&&locales$1.forEach(locale=>{gl.mergeNumberFormat(locale,options$1.numberFormats[locale])})}}function createTextNode(key$1){return createVNode(Text,null,key$1,0)}const DEVTOOLS_META=`__INTLIFY_META__`,NOOP_RETURN_ARRAY=()=>[],NOOP_RETURN_FALSE=()=>!1;let composerID=0;function defineCoreMissingHandler(missing){return(ctx,locale,key$1,type)=>missing(locale,key$1,getCurrentInstance()||void 0,type)}const getMetaInfo=()=>{let instance=getCurrentInstance(),meta=null;return instance&&(meta=getComponentOptions(instance)[DEVTOOLS_META])?{[DEVTOOLS_META]:meta}:null};function createComposer(options$1={}){let{__root,__injectWithOption}=options$1,_isGlobal=__root===void 0,flatJson=options$1.flatJson,_ref=inBrowser?ref:shallowRef,_inheritLocale=isBoolean(options$1.inheritLocale)?options$1.inheritLocale:!0,_locale=_ref(__root&&_inheritLocale?__root.locale.value:isString(options$1.locale)?options$1.locale:DEFAULT_LOCALE),_fallbackLocale=_ref(__root&&_inheritLocale?__root.fallbackLocale.value:isString(options$1.fallbackLocale)||isArray$1(options$1.fallbackLocale)||isPlainObject$3(options$1.fallbackLocale)||options$1.fallbackLocale===!1?options$1.fallbackLocale:_locale.value),_messages=_ref(getLocaleMessages(_locale.value,options$1)),_datetimeFormats=_ref(isPlainObject$3(options$1.datetimeFormats)?options$1.datetimeFormats:{[_locale.value]:{}}),_numberFormats=_ref(isPlainObject$3(options$1.numberFormats)?options$1.numberFormats:{[_locale.value]:{}}),_missingWarn=__root?__root.missingWarn:isBoolean(options$1.missingWarn)||isRegExp(options$1.missingWarn)?options$1.missingWarn:!0,_fallbackWarn=__root?__root.fallbackWarn:isBoolean(options$1.fallbackWarn)||isRegExp(options$1.fallbackWarn)?options$1.fallbackWarn:!0,_fallbackRoot=__root?__root.fallbackRoot:isBoolean(options$1.fallbackRoot)?options$1.fallbackRoot:!0,_fallbackFormat=!!options$1.fallbackFormat,_missing=isFunction(options$1.missing)?options$1.missing:null,_runtimeMissing=isFunction(options$1.missing)?defineCoreMissingHandler(options$1.missing):null,_postTranslation=isFunction(options$1.postTranslation)?options$1.postTranslation:null,_warnHtmlMessage=__root?__root.warnHtmlMessage:isBoolean(options$1.warnHtmlMessage)?options$1.warnHtmlMessage:!0,_escapeParameter=!!options$1.escapeParameter,_modifiers=__root?__root.modifiers:isPlainObject$3(options$1.modifiers)?options$1.modifiers:{},_pluralRules=options$1.pluralRules||__root&&__root.pluralRules,_context$1,getCoreContext=()=>{_isGlobal&&setFallbackContext(null);let ctxOptions={version:VERSION,locale:_locale.value,fallbackLocale:_fallbackLocale.value,messages:_messages.value,modifiers:_modifiers,pluralRules:_pluralRules,missing:_runtimeMissing===null?void 0:_runtimeMissing,missingWarn:_missingWarn,fallbackWarn:_fallbackWarn,fallbackFormat:_fallbackFormat,unresolving:!0,postTranslation:_postTranslation===null?void 0:_postTranslation,warnHtmlMessage:_warnHtmlMessage,escapeParameter:_escapeParameter,messageResolver:options$1.messageResolver,messageCompiler:options$1.messageCompiler,__meta:{framework:`vue`}};ctxOptions.datetimeFormats=_datetimeFormats.value,ctxOptions.numberFormats=_numberFormats.value,ctxOptions.__datetimeFormatters=isPlainObject$3(_context$1)?_context$1.__datetimeFormatters:void 0,ctxOptions.__numberFormatters=isPlainObject$3(_context$1)?_context$1.__numberFormatters:void 0;let ctx=createCoreContext(ctxOptions);return _isGlobal&&setFallbackContext(ctx),ctx};_context$1=getCoreContext(),updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value);function trackReactivityValues(){return[_locale.value,_fallbackLocale.value,_messages.value,_datetimeFormats.value,_numberFormats.value]}let locale=computed({get:()=>_locale.value,set:val=>{_context$1.locale=val,_locale.value=val}}),fallbackLocale=computed({get:()=>_fallbackLocale.value,set:val=>{_context$1.fallbackLocale=val,_fallbackLocale.value=val,updateFallbackLocale(_context$1,_locale.value,val)}}),messages=computed(()=>_messages.value),datetimeFormats=computed(()=>_datetimeFormats.value),numberFormats=computed(()=>_numberFormats.value);function getPostTranslationHandler(){return isFunction(_postTranslation)?_postTranslation:null}function setPostTranslationHandler(handler){_postTranslation=handler,_context$1.postTranslation=handler}function getMissingHandler(){return _missing}function setMissingHandler(handler){handler!==null&&(_runtimeMissing=defineCoreMissingHandler(handler)),_missing=handler,_context$1.missing=_runtimeMissing}function isResolvedTranslateMessage(type,arg){return type!==`translate`||!arg.resolvedMessage}let wrapWithDeps=(fn$5,argumentParser,warnType,fallbackSuccess,fallbackFail,successCondition)=>{trackReactivityValues();let ret;try{__INTLIFY_PROD_DEVTOOLS__,_isGlobal||(_context$1.fallbackContext=__root?getFallbackContext():void 0),ret=fn$5(_context$1)}finally{__INTLIFY_PROD_DEVTOOLS__,_isGlobal||(_context$1.fallbackContext=void 0)}if(warnType!==`translate exists`&&isNumber(ret)&&ret===NOT_REOSLVED||warnType===`translate exists`&&!ret){let[key$1,arg2]=argumentParser();return __root&&_fallbackRoot?fallbackSuccess(__root):fallbackFail(key$1)}else if(successCondition(ret))return ret;else throw createI18nError(I18nErrorCodes.UNEXPECTED_RETURN_TYPE)};function t(...args){return wrapWithDeps(context$1=>Reflect.apply(translate,null,[context$1,...args]),()=>parseTranslateArgs(...args),`translate`,root$3=>Reflect.apply(root$3.t,root$3,[...args]),key$1=>key$1,val=>isString(val))}function rt$3(...args){let[arg1,arg2,arg3]=args;if(arg3&&!isObject(arg3))throw createI18nError(I18nErrorCodes.INVALID_ARGUMENT);return t(arg1,arg2,assign({resolvedMessage:!0},arg3||{}))}function d$2(...args){return wrapWithDeps(context$1=>Reflect.apply(datetime,null,[context$1,...args]),()=>parseDateTimeArgs(...args),`datetime format`,root$3=>Reflect.apply(root$3.d,root$3,[...args]),()=>MISSING_RESOLVE_VALUE,val=>isString(val)||isArray$1(val))}function n$2(...args){return wrapWithDeps(context$1=>Reflect.apply(number$1,null,[context$1,...args]),()=>parseNumberArgs(...args),`number format`,root$3=>Reflect.apply(root$3.n,root$3,[...args]),()=>MISSING_RESOLVE_VALUE,val=>isString(val)||isArray$1(val))}function normalize$3(values){return values.map(val=>isString(val)||isNumber(val)||isBoolean(val)?createTextNode(String(val)):val)}let interpolate$1=val=>val,processor={normalize:normalize$3,interpolate:interpolate$1,type:`vnode`};function translateVNode(...args){return wrapWithDeps(context$1=>{let ret,_context$2=context$1;try{_context$2.processor=processor,ret=Reflect.apply(translate,null,[_context$2,...args])}finally{_context$2.processor=null}return ret},()=>parseTranslateArgs(...args),`translate`,root$3=>root$3[TranslateVNodeSymbol](...args),key$1=>[createTextNode(key$1)],val=>isArray$1(val))}function numberParts(...args){return wrapWithDeps(context$1=>Reflect.apply(number$1,null,[context$1,...args]),()=>parseNumberArgs(...args),`number format`,root$3=>root$3[NumberPartsSymbol](...args),NOOP_RETURN_ARRAY,val=>isString(val)||isArray$1(val))}function datetimeParts(...args){return wrapWithDeps(context$1=>Reflect.apply(datetime,null,[context$1,...args]),()=>parseDateTimeArgs(...args),`datetime format`,root$3=>root$3[DatetimePartsSymbol](...args),NOOP_RETURN_ARRAY,val=>isString(val)||isArray$1(val))}function setPluralRules(rules){_pluralRules=rules,_context$1.pluralRules=_pluralRules}function te$2(key$1,locale$1){return wrapWithDeps(()=>{if(!key$1)return!1;let targetLocale=isString(locale$1)?locale$1:_locale.value,message$1=getLocaleMessage(targetLocale),resolved=_context$1.messageResolver(message$1,key$1);return isMessageAST(resolved)||isMessageFunction(resolved)||isString(resolved)},()=>[key$1],`translate exists`,root$3=>Reflect.apply(root$3.te,root$3,[key$1,locale$1]),NOOP_RETURN_FALSE,val=>isBoolean(val))}function resolveMessages(key$1){let messages$1=null,locales=fallbackWithLocaleChain(_context$1,_fallbackLocale.value,_locale.value);for(let i$1=0;i$1{_inheritLocale&&(_locale.value=val,_context$1.locale=val,updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value))}),watch(__root.fallbackLocale,val=>{_inheritLocale&&(_fallbackLocale.value=val,_context$1.fallbackLocale=val,updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value))}));let composer={id:composerID,locale,fallbackLocale,get inheritLocale(){return _inheritLocale},set inheritLocale(val){_inheritLocale=val,val&&__root&&(_locale.value=__root.locale.value,_fallbackLocale.value=__root.fallbackLocale.value,updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value))},get availableLocales(){return Object.keys(_messages.value).sort()},messages,get modifiers(){return _modifiers},get pluralRules(){return _pluralRules||{}},get isGlobal(){return _isGlobal},get missingWarn(){return _missingWarn},set missingWarn(val){_missingWarn=val,_context$1.missingWarn=_missingWarn},get fallbackWarn(){return _fallbackWarn},set fallbackWarn(val){_fallbackWarn=val,_context$1.fallbackWarn=_fallbackWarn},get fallbackRoot(){return _fallbackRoot},set fallbackRoot(val){_fallbackRoot=val},get fallbackFormat(){return _fallbackFormat},set fallbackFormat(val){_fallbackFormat=val,_context$1.fallbackFormat=_fallbackFormat},get warnHtmlMessage(){return _warnHtmlMessage},set warnHtmlMessage(val){_warnHtmlMessage=val,_context$1.warnHtmlMessage=val},get escapeParameter(){return _escapeParameter},set escapeParameter(val){_escapeParameter=val,_context$1.escapeParameter=val},t,getLocaleMessage,setLocaleMessage,mergeLocaleMessage,getPostTranslationHandler,setPostTranslationHandler,getMissingHandler,setMissingHandler,[SetPluralRulesSymbol]:setPluralRules};return composer.datetimeFormats=datetimeFormats,composer.numberFormats=numberFormats,composer.rt=rt$3,composer.te=te$2,composer.tm=tm,composer.d=d$2,composer.n=n$2,composer.getDateTimeFormat=getDateTimeFormat,composer.setDateTimeFormat=setDateTimeFormat,composer.mergeDateTimeFormat=mergeDateTimeFormat,composer.getNumberFormat=getNumberFormat,composer.setNumberFormat=setNumberFormat,composer.mergeNumberFormat=mergeNumberFormat,composer[InejctWithOptionSymbol]=__injectWithOption,composer[TranslateVNodeSymbol]=translateVNode,composer[DatetimePartsSymbol]=datetimeParts,composer[NumberPartsSymbol]=numberParts,composer}const baseFormatProps={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:val=>val===`parent`||val===`global`,default:`parent`},i18n:{type:Object}};function getInterpolateArg({slots},keys$3){if(keys$3.length===1&&keys$3[0]===`default`){let ret=slots.default?slots.default():[];return ret.reduce((slot,current)=>[...slot,...current.type===Fragment?current.children:[current]],[])}else return keys$3.reduce((arg,key$1)=>{let slot=slots[key$1];return slot&&(arg[key$1]=slot()),arg},create$1())}function getFragmentableTag(){return Fragment}const TranslationImpl=defineComponent({name:`i18n-t`,props:assign({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:val=>isNumber(val)||!isNaN(val)}},baseFormatProps),setup(props,context$1){let{slots,attrs}=context$1,i18n$1=props.i18n||useI18n({useScope:props.scope,__useComponent:!0});return()=>{let keys$3=Object.keys(slots).filter(key$1=>key$1[0]!==`_`),options$1=create$1();props.locale&&(options$1.locale=props.locale),props.plural!==void 0&&(options$1.plural=isString(props.plural)?+props.plural:props.plural);let arg=getInterpolateArg(context$1,keys$3),children=i18n$1[TranslateVNodeSymbol](props.keypath,arg,options$1),assignedAttrs=assign(create$1(),attrs),tag=isString(props.tag)||isObject(props.tag)?props.tag:getFragmentableTag();return h(tag,assignedAttrs,children)}}}),Translation=TranslationImpl;function isVNode$1(target$1){return isArray$1(target$1)&&!isString(target$1[0])}function renderFormatter(props,context$1,slotKeys,partFormatter){let{slots,attrs}=context$1;return()=>{let options$1={part:!0},overrides=create$1();props.locale&&(options$1.locale=props.locale),isString(props.format)?options$1.key=props.format:isObject(props.format)&&(isString(props.format.key)&&(options$1.key=props.format.key),overrides=Object.keys(props.format).reduce((options$2,prop)=>slotKeys.includes(prop)?assign(create$1(),options$2,{[prop]:props.format[prop]}):options$2,create$1()));let parts=partFormatter(props.value,options$1,overrides),children=[options$1.key];isArray$1(parts)?children=parts.map((part,index$1)=>{let slot=slots[part.type],node$1=slot?slot({[part.type]:part.value,index:index$1,parts}):[part.value];return isVNode$1(node$1)&&(node$1[0].key=`${part.type}-${index$1}`),node$1}):isString(parts)&&(children=[parts]);let assignedAttrs=assign(create$1(),attrs),tag=isString(props.tag)||isObject(props.tag)?props.tag:getFragmentableTag();return h(tag,assignedAttrs,children)}}const NumberFormatImpl=defineComponent({name:`i18n-n`,props:assign({value:{type:Number,required:!0},format:{type:[String,Object]}},baseFormatProps),setup(props,context$1){let i18n$1=props.i18n||useI18n({useScope:props.scope,__useComponent:!0});return renderFormatter(props,context$1,NUMBER_FORMAT_OPTIONS_KEYS,(...args)=>i18n$1[NumberPartsSymbol](...args))}}),NumberFormat=NumberFormatImpl;function getComposer$1(i18n$1,instance){let i18nInternal=i18n$1;if(i18n$1.mode===`composition`)return i18nInternal.__getInstance(instance)||i18n$1.global;{let vueI18n=i18nInternal.__getInstance(instance);return vueI18n==null?i18n$1.global.__composer:vueI18n.__composer}}function vTDirective(i18n$1){let _process=binding=>{let{instance,value:value$1}=binding;if(!instance||!instance.$)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);let composer=getComposer$1(i18n$1,instance.$),parsedValue=parseValue(value$1);return[Reflect.apply(composer.t,composer,[...makeParams(parsedValue)]),composer]},register=(el,binding)=>{let[textContent,composer]=_process(binding);inBrowser&&i18n$1.global===composer&&(el.__i18nWatcher=watch(composer.locale,()=>{binding.instance&&binding.instance.$forceUpdate()})),el.__composer=composer,el.textContent=textContent},unregister=el=>{inBrowser&&el.__i18nWatcher&&(el.__i18nWatcher(),el.__i18nWatcher=void 0,delete el.__i18nWatcher),el.__composer&&(el.__composer=void 0,delete el.__composer)},update=(el,{value:value$1})=>{if(el.__composer){let composer=el.__composer,parsedValue=parseValue(value$1);el.textContent=Reflect.apply(composer.t,composer,[...makeParams(parsedValue)])}},getSSRProps=binding=>{let[textContent]=_process(binding);return{textContent}};return{created:register,unmounted:unregister,beforeUpdate:update,getSSRProps}}function parseValue(value$1){if(isString(value$1))return{path:value$1};if(isPlainObject$3(value$1)){if(!(`path`in value$1))throw createI18nError(I18nErrorCodes.REQUIRED_VALUE,`path`);return value$1}else throw createI18nError(I18nErrorCodes.INVALID_VALUE)}function makeParams(value$1){let{path,locale,args,choice,plural}=value$1,options$1={},named$1=args||{};return isString(locale)&&(options$1.locale=locale),isNumber(choice)&&(options$1.plural=choice),isNumber(plural)&&(options$1.plural=plural),[path,named$1,options$1]}function apply(app,i18n$1,...options$1){let pluginOptions=isPlainObject$3(options$1[0])?options$1[0]:{},globalInstall=isBoolean(pluginOptions.globalInstall)?pluginOptions.globalInstall:!0;globalInstall&&([Translation.name,`I18nT`].forEach(name$2=>app.component(name$2,Translation)),[NumberFormat.name,`I18nN`].forEach(name$2=>app.component(name$2,NumberFormat)),[DatetimeFormat.name,`I18nD`].forEach(name$2=>app.component(name$2,DatetimeFormat))),app.directive(`t`,vTDirective(i18n$1))}const I18nInjectionKey=makeSymbol(`global-vue-i18n`);function createI18n(options$1={}){let __legacyMode=!1,__globalInjection=isBoolean(options$1.globalInjection)?options$1.globalInjection:!0,__instances=new Map,[globalScope,__global]=createGlobal(options$1,__legacyMode),symbol=makeSymbol(``);function __getInstance(component){return __instances.get(component)||null}function __setInstance(component,instance){__instances.set(component,instance)}function __deleteInstance(component){__instances.delete(component)}let i18n$1={get mode(){return`composition`},async install(app,...options$2){if(app.__VUE_I18N_SYMBOL__=symbol,app.provide(app.__VUE_I18N_SYMBOL__,i18n$1),isPlainObject$3(options$2[0])){let opts=options$2[0];i18n$1.__composerExtend=opts.__composerExtend,i18n$1.__vueI18nExtend=opts.__vueI18nExtend}let globalReleaseHandler=null;!__legacyMode&&__globalInjection&&(globalReleaseHandler=injectGlobalFields(app,i18n$1.global)),apply(app,i18n$1,...options$2);let unmountApp=app.unmount;app.unmount=()=>{globalReleaseHandler&&globalReleaseHandler(),i18n$1.dispose(),unmountApp()}},get global(){return __global},dispose(){globalScope.stop()},__instances,__getInstance,__setInstance,__deleteInstance};return i18n$1}function useI18n(options$1={}){let instance=getCurrentInstance();if(instance==null)throw createI18nError(I18nErrorCodes.MUST_BE_CALL_SETUP_TOP);if(!instance.isCE&&instance.appContext.app!=null&&!instance.appContext.app.__VUE_I18N_SYMBOL__)throw createI18nError(I18nErrorCodes.NOT_INSTALLED);let i18n$1=getI18nInstance(instance),gl=getGlobalComposer(i18n$1),componentOptions=getComponentOptions(instance),scope=getScope(options$1,componentOptions);if(scope===`global`)return adjustI18nResources(gl,options$1,componentOptions),gl;if(scope===`parent`){let composer$1=getComposer(i18n$1,instance,options$1.__useComponent);return composer$1??=gl,composer$1}let i18nInternal=i18n$1,composer=i18nInternal.__getInstance(instance);if(composer==null){let composerOptions=assign({},options$1);`__i18n`in componentOptions&&(composerOptions.__i18n=componentOptions.__i18n),gl&&(composerOptions.__root=gl),composer=createComposer(composerOptions),i18nInternal.__composerExtend&&(composer[DisposeSymbol]=i18nInternal.__composerExtend(composer)),setupLifeCycle(i18nInternal,instance,composer),i18nInternal.__setInstance(instance,composer)}return composer}function createGlobal(options$1,legacyMode){let scope=effectScope(),obj=scope.run(()=>createComposer(options$1));if(obj==null)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);return[scope,obj]}function getI18nInstance(instance){let i18n$1=inject(instance.isCE?I18nInjectionKey:instance.appContext.app.__VUE_I18N_SYMBOL__);if(!i18n$1)throw createI18nError(instance.isCE?I18nErrorCodes.NOT_INSTALLED_WITH_PROVIDE:I18nErrorCodes.UNEXPECTED_ERROR);return i18n$1}function getScope(options$1,componentOptions){return isEmptyObject(options$1)?`__i18n`in componentOptions?`local`:`global`:options$1.useScope?options$1.useScope:`local`}function getGlobalComposer(i18n$1){return i18n$1.mode===`composition`?i18n$1.global:i18n$1.global.__composer}function getComposer(i18n$1,target$1,useComponent=!1){let composer=null,root$3=target$1.root,current=getParentComponentInstance(target$1,useComponent);for(;current!=null;){let i18nInternal=i18n$1;if(i18n$1.mode===`composition`&&(composer=i18nInternal.__getInstance(current)),composer!=null||root$3===current)break;current=current.parent}return composer}function getParentComponentInstance(target$1,useComponent=!1){return target$1==null?null:useComponent&&target$1.vnode.ctx||target$1.parent}function setupLifeCycle(i18n$1,target$1,composer){let emitter=null;onMounted(()=>{},target$1),onUnmounted(()=>{let _composer=composer;i18n$1.__deleteInstance(target$1);let dispose$1=_composer[DisposeSymbol];dispose$1&&(dispose$1(),delete _composer[DisposeSymbol])},target$1)}const globalExportProps=[`locale`,`fallbackLocale`,`availableLocales`],globalExportMethods=[`t`,`rt`,`d`,`n`,`tm`,`te`];function injectGlobalFields(app,composer){let i18n$1=Object.create(null);globalExportProps.forEach(prop=>{let desc=Object.getOwnPropertyDescriptor(composer,prop);if(!desc)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);let wrap$2=isRef(desc.value)?{get(){return desc.value.value},set(val){desc.value.value=val}}:{get(){return desc.get&&desc.get()}};Object.defineProperty(i18n$1,prop,wrap$2)}),app.config.globalProperties.$i18n=i18n$1,globalExportMethods.forEach(method=>{let desc=Object.getOwnPropertyDescriptor(composer,method);if(!desc||!desc.value)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);Object.defineProperty(app.config.globalProperties,`$${method}`,desc)});let dispose$1=()=>{delete app.config.globalProperties.$i18n,globalExportMethods.forEach(method=>{delete app.config.globalProperties[`$${method}`]})};return dispose$1}const DatetimeFormatImpl=defineComponent({name:`i18n-d`,props:assign({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},baseFormatProps),setup(props,context$1){let i18n$1=props.i18n||useI18n({useScope:props.scope,__useComponent:!0});return renderFormatter(props,context$1,DATETIME_FORMAT_OPTIONS_KEYS,(...args)=>i18n$1[DatetimePartsSymbol](...args))}}),DatetimeFormat=DatetimeFormatImpl;if(initFeatureFlags(),registerMessageCompiler(compile),registerMessageResolver(resolveValue),registerLocaleFallbacker(fallbackWithLocaleChain),__INTLIFY_PROD_DEVTOOLS__){let target$1=getGlobalThis();target$1.__INTLIFY__=!0,setDevToolsHook(target$1.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}var ProviderApiKeyInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderApiKeyInput`,props:mergeModels({providerName:{},placeholder:{},required:{type:Boolean},label:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,{t}=useI18n(),modelValue=useModel(__props,`modelValue`),computedDescription=computed(()=>props.description||`API Key for ${props.providerName}`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(FieldInput_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,label:_ctx.label||unref(t)(`settings.pages.providers.common.fields.field.api-key.label`),description:computedDescription.value,placeholder:_ctx.placeholder,required:_ctx.required,type:`password`},null,8,[`modelValue`,`label`,`description`,`placeholder`,`required`]))}}),ProviderApiKeyInput_default=ProviderApiKeyInput_vue_vue_type_script_setup_true_lang_default,ProviderBaseUrlInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderBaseUrlInput`,props:mergeModels({placeholder:{},required:{type:Boolean},label:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(FieldInput_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,label:props.label||`Base URL`,description:props.description||`Custom base URL (optional)`,placeholder:props.placeholder,required:props.required,type:`text`},null,8,[`modelValue`,`label`,`description`,`placeholder`,`required`]))}}),ProviderBaseUrlInput_default=ProviderBaseUrlInput_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$14={flex:`~ col gap-6`},_hoisted_2$6={flex:`~ row`,"items-center":``,"justify-between":``},_hoisted_3$3={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},_hoisted_4$3={text:`neutral-400 dark:neutral-500`};var ProviderBasicSettings_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderBasicSettings`,props:{title:{},description:{},onReset:{type:Function}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$14,[createBaseVNode(`div`,_hoisted_2$6,[createBaseVNode(`div`,null,[createBaseVNode(`h2`,_hoisted_3$3,toDisplayString(_ctx.title||`Basic`),1),createBaseVNode(`div`,_hoisted_4$3,[createBaseVNode(`span`,null,toDisplayString(_ctx.description||`Essential settings`),1)])]),_ctx.onReset?(openBlock(),createElementBlock(`button`,{key:0,title:`Reset settings`,flex:``,"items-center":``,"justify-center":``,"rounded-full":``,"p-2":``,transition:`all duration-250 ease-in-out`,text:`neutral-500 dark:neutral-400`,bg:`transparent dark:transparent hover:neutral-200 dark:hover:neutral-800 active:neutral-300 dark:active:neutral-700`,onClick:_cache$1[0]||=(...args)=>_ctx.onReset&&_ctx.onReset(...args)},_cache$1[1]||=[createBaseVNode(`div`,{"i-solar:refresh-bold-duotone":``,"text-xl":``},null,-1)])):createCommentVNode(``,!0)]),renderSlot(_ctx.$slots,`default`)]))}}),ProviderBasicSettings_default=ProviderBasicSettings_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$13={bg:`neutral-50 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,"p-4":``,flex:`~ col gap-6`};var ProviderSettingsContainer_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderSettingsContainer`,setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$13,[renderSlot(_ctx.$slots,`default`)]))}}),ProviderSettingsContainer_default=ProviderSettingsContainer_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$12={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``};var ProviderSettingsLayout2_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderSettingsLayout2`,props:{providerName:{},providerIcon:{},providerIconColor:{},onBack:{type:Function}},setup(__props){return(_ctx,_cache$1)=>{let _directive_motion=resolveDirective(`motion`);return openBlock(),createElementBlock(Fragment,null,[renderSlot(_ctx.$slots,`default`),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_1$12,[createBaseVNode(`div`,{text:`60`,class:normalizeClass(_ctx.providerIcon||_ctx.providerIconColor)},null,2)])),[[_directive_motion]])],64)}}}),ProviderSettingsLayout2_default=ProviderSettingsLayout2_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$11={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``};var ProviderSettingsLayout_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderSettingsLayout`,props:{providerName:{},providerIcon:{},providerIconColor:{},onBack:{type:Function}},setup(__props){return(_ctx,_cache$1)=>{let _directive_motion=resolveDirective(`motion`);return openBlock(),createElementBlock(Fragment,null,[renderSlot(_ctx.$slots,`default`),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_1$11,[createBaseVNode(`div`,{text:`60`,class:normalizeClass(_ctx.providerIcon||_ctx.providerIconColor)},null,2)])),[[_directive_motion]])],64)}}}),ProviderSettingsLayout_default=ProviderSettingsLayout_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$10={"w-full":``,"rounded-xl":``},_hoisted_2$5={class:`mb-4 text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`,"w-full":``},_hoisted_3$2={class:`inline-flex items-center gap-4`},_hoisted_4$2={flex:`~ col gap-4`},_hoisted_5$2=[`placeholder`],_hoisted_6$2=[`placeholder`],_hoisted_7$1={flex:`~ col gap-6`},_hoisted_8$1={grid:`~ cols-2 gap-4`},_hoisted_9$1={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_10$1={class:`text-xs text-neutral-500 dark:text-neutral-400`},_hoisted_11$1=[`value`],_hoisted_12$1={flex:`~ row`,"gap-4":``},_hoisted_13$1=[`disabled`],_hoisted_14$1={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_15$1={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_16$1={key:2,class:`mt-2 text-sm text-red-500`},_hoisted_17$1={key:3,class:`mt-2 text-sm text-red-500`},_hoisted_18$1={key:4,class:`mt-2 text-sm text-red-500`},_hoisted_19$1=[`src`];var SpeechPlayground_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SpeechPlayground`,props:{defaultText:{},availableVoices:{},generateSpeech:{type:Function},apiKeyConfigured:{type:Boolean}},setup(__props,{expose:__expose}){let props=__props,{t}=useI18n(),testText=ref(props.defaultText||`Hello! This is a test of the voice synthesis.`),isGenerating=ref(!1),audioUrl=ref(``),errorMessage=ref(``),audioPlayer=ref(null),useSSML=ref(!1),ssmlText=ref(``),selectedVoice=ref(``);watch(()=>props.availableVoices,newVoices=>{var _newVoices$;newVoices.length>0&&!selectedVoice.value&&(selectedVoice.value=(_newVoices$=newVoices[0])?.id||``)},{immediate:!0});async function handleGenerateTestSpeech(){if(!(!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim()||!selectedVoice.value)){isGenerating.value=!0,errorMessage.value=``;try{audioUrl.value&&stopTestAudio();let input=useSSML.value?ssmlText.value:testText.value,response=await props.generateSpeech(input,selectedVoice.value,useSSML.value);audioUrl.value=URL.createObjectURL(new Blob([response])),setTimeout(()=>{audioPlayer.value&&audioPlayer.value.play()},100)}catch(error){console.error(`Error generating speech:`,error),errorMessage.value=error instanceof Error?error.message:`An unknown error occurred`}finally{isGenerating.value=!1}}}function stopTestAudio(){audioPlayer.value&&(audioPlayer.value.pause(),audioPlayer.value.currentTime=0),audioUrl.value&&(URL.revokeObjectURL(audioUrl.value),audioUrl.value=``)}return onUnmounted(()=>{audioUrl.value&&URL.revokeObjectURL(audioUrl.value)}),__expose({testText,ssmlText,useSSML,selectedVoice,isGenerating,audioUrl,errorMessage,audioPlayer,generateTestSpeech:handleGenerateTestSpeech,stopTestAudio}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$10,[createBaseVNode(`h2`,_hoisted_2$5,[createBaseVNode(`div`,_hoisted_3$2,[createVNode(unref(TestDummyMarker_default)),createBaseVNode(`div`,null,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.title`)),1)])]),createBaseVNode(`div`,_hoisted_4$2,[createVNode(unref(FieldCheckbox_default),{modelValue:useSSML.value,"onUpdate:modelValue":_cache$1[0]||=$event=>useSSML.value=$event,label:unref(t)(`settings.pages.modules.speech.sections.section.voice-settings.use-ssml.label`),description:unref(t)(`settings.pages.modules.speech.sections.section.voice-settings.use-ssml.description`)},null,8,[`modelValue`,`label`,`description`]),useSSML.value?withDirectives((openBlock(),createElementBlock(`textarea`,{key:1,"onUpdate:modelValue":_cache$1[2]||=$event=>ssmlText.value=$event,placeholder:unref(t)(`settings.pages.modules.speech.sections.section.voice-settings.input-ssml.placeholder`),border:`neutral-100 dark:neutral-800 solid 2 focus:neutral-200 dark:focus:neutral-700`,transition:`all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`,"h-48":``,"w-full":``,"rounded-lg":``,"px-3":``,"py-2":``,"text-sm":``,"font-mono":``,"outline-none":``},null,8,_hoisted_6$2)),[[vModelText,ssmlText.value]]):withDirectives((openBlock(),createElementBlock(`textarea`,{key:0,"onUpdate:modelValue":_cache$1[1]||=$event=>testText.value=$event,placeholder:unref(t)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.input.placeholder`),border:`neutral-100 dark:neutral-800 solid 2 focus:neutral-200 dark:focus:neutral-700`,transition:`all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`,"h-24":``,"w-full":``,"rounded-lg":``,"px-3":``,"py-2":``,"text-sm":``,"outline-none":``},null,8,_hoisted_5$2)),[[vModelText,testText.value]]),createBaseVNode(`div`,_hoisted_7$1,[createBaseVNode(`label`,_hoisted_8$1,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_9$1,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.voice.label`)),1),createBaseVNode(`div`,_hoisted_10$1,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.voice.description`)),1)]),withDirectives(createBaseVNode(`select`,{"onUpdate:modelValue":_cache$1[3]||=$event=>selectedVoice.value=$event,border:`neutral-300 dark:neutral-800 solid 2 focus:neutral-400 dark:focus:neutral-600`,transition:`border duration-250 ease-in-out`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``},[(openBlock(!0),createElementBlock(Fragment,null,renderList(_ctx.availableVoices,voice=>(openBlock(),createElementBlock(`option`,{key:voice.id,value:voice.id},toDisplayString(voice.name),9,_hoisted_11$1))),128))],512),[[vModelSelect,selectedVoice.value]])])]),createBaseVNode(`div`,_hoisted_12$1,[createBaseVNode(`button`,{border:`neutral-800 dark:neutral-200 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,text:`neutral-100 dark:neutral-900`,"py-2":``,"text-sm":``,disabled:isGenerating.value||!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim()||!selectedVoice.value||!_ctx.apiKeyConfigured,class:normalizeClass({"opacity-50 cursor-not-allowed":isGenerating.value||!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim()||!selectedVoice.value||!_ctx.apiKeyConfigured}),bg:`neutral-700 dark:neutral-300`,onClick:handleGenerateTestSpeech},[createBaseVNode(`div`,_hoisted_14$1,[_cache$1[4]||=createBaseVNode(`div`,{"i-solar:play-circle-bold-duotone":``},null,-1),createBaseVNode(`span`,null,toDisplayString(isGenerating.value?unref(t)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.generating`):unref(t)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.label`)),1)])],10,_hoisted_13$1),audioUrl.value?(openBlock(),createElementBlock(`button`,{key:0,border:`primary-300 dark:primary-800 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,"py-2":``,"text-sm":``,onClick:stopTestAudio},[createBaseVNode(`div`,_hoisted_15$1,[_cache$1[5]||=createBaseVNode(`div`,{"i-solar:stop-circle-bold-duotone":``},null,-1),createBaseVNode(`span`,null,toDisplayString(unref(t)(`settings.pages.modules.speech.sections.section.playground.buttons.stop.label`)),1)])])):createCommentVNode(``,!0)]),_ctx.apiKeyConfigured?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,_hoisted_16$1,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.validation.error-missing-api-key`)),1)),selectedVoice.value?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,_hoisted_17$1,toDisplayString(unref(t)(`settings.pages.modules.speech.sections.section.playground.select-voice.required`)),1)),errorMessage.value?(openBlock(),createElementBlock(`div`,_hoisted_18$1,toDisplayString(errorMessage.value),1)):createCommentVNode(``,!0),audioUrl.value?(openBlock(),createElementBlock(`audio`,{key:5,ref_key:`audioPlayer`,ref:audioPlayer,src:audioUrl.value,controls:``,class:`mt-2 w-full`},null,8,_hoisted_19$1)):createCommentVNode(``,!0)]),renderSlot(_ctx.$slots,`default`)]))}}),SpeechPlayground_default=SpeechPlayground_vue_vue_type_script_setup_true_lang_default,XSAIError$2=class extends Error{constructor(message$1,response){super(message$1),babelHelpers.defineProperty(this,`response`,void 0),this.name=`XSAIError`,this.response=response}};const strCamelToSnake$2=str=>str.replace(/[A-Z]/g,s$1=>`_${s$1.toLowerCase()}`),objCamelToSnake$1=obj=>Object.fromEntries(Object.entries(obj).map(([k$4,v$1])=>[strCamelToSnake$2(k$4),v$1])),clean$2=obj=>Object.fromEntries(Object.entries(obj).filter(([,v$1])=>v$1!==void 0)),requestBody=body$2=>JSON.stringify(objCamelToSnake$1(clean$2({...body$2,abortSignal:void 0,apiKey:void 0,baseURL:void 0,fetch:void 0,headers:void 0}))),requestHeaders$1=(headers,apiKey)=>clean$2({Authorization:apiKey===void 0?void 0:`Bearer ${apiKey}`,...headers}),requestURL$1=(path,baseURL)=>{let base=baseURL.toString();return new URL(path,base.endsWith(`/`)?base:`${base}/`)},responseCatch$1=async res=>{if(!res.ok)throw new XSAIError$2(`Remote sent ${res.status} response: ${await res.text()}`,res);if(!res.body)throw new XSAIError$2(`Response body is empty from remote server`,res);if(!(res.body instanceof ReadableStream))throw new XSAIError$2(`Expected Response body to be a ReadableStream, but got ${String(res.body)}; Content Type is ${res.headers.get(`Content-Type`)}`,res);return res},responseJSON$1=async res=>responseCatch$1(res).then(async res2=>{let text$5=await res2.text();try{return JSON.parse(text$5)}catch{throw Error(`Failed to parse response, response body: ${text$5}`)}}),generateSpeech=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL$1(`audio/speech`,options$1.baseURL),{body:requestBody(options$1),headers:requestHeaders$1({"Content-Type":`application/json`,...options$1.headers},options$1.apiKey),method:`POST`,signal:options$1.abortSignal}).then(responseCatch$1).then(async res=>res.arrayBuffer());function calculateVolumeWithLinearNormalize(analyser){let dataBuffer=new Uint8Array(analyser.frequencyBinCount);analyser.getByteFrequencyData(dataBuffer);let volumeVector=[];for(let i$1=0;i$1<700;i$1+=80)volumeVector.push(dataBuffer[i$1]);let volumeSum=dataBuffer.map(v$1=>v$1**1.2).map(v$1=>v$1*1.2).reduce((acc,cur)=>acc+cur,0);return volumeSum/dataBuffer.length/100}function calculateVolumeWithMinMaxNormalize(analyser){let dataBuffer=new Uint8Array(analyser.frequencyBinCount);analyser.getByteFrequencyData(dataBuffer);let volumeVector=[];for(let i$1=0;i$1<700;i$1+=80)volumeVector.push(dataBuffer[i$1]);let amplifiedVolumeVector=dataBuffer.map(v$1=>v$1**1.5),min$1=Math.min(...amplifiedVolumeVector),max$1=Math.max(...amplifiedVolumeVector),range=max$1-min$1,normalizedVolumeVector;normalizedVolumeVector=range===0?amplifiedVolumeVector.map(()=>0):amplifiedVolumeVector.map(v$1=>(v$1-min$1)/range);let volumeSum=normalizedVolumeVector.reduce((acc,cur)=>acc+cur,0);return volumeSum/dataBuffer.length}function calculateVolume(analyser,mode=`linear`){switch(mode){case`linear`:return calculateVolumeWithLinearNormalize(analyser);case`minmax`:return calculateVolumeWithMinMaxNormalize(analyser)}}const useAudioContext=defineStore(`AudioContext`,()=>{let audioContext=new AudioContext;return{audioContext,calculateVolume}}),useSpeakingStore=defineStore(`SpeakingStore`,()=>{let nowSpeakingAvatarBorderOpacityMin=30,nowSpeakingAvatarBorderOpacityMax=100,mouthOpenSize=ref(0),nowSpeaking=ref(!1),nowSpeakingAvatarBorderOpacity=computed(()=>nowSpeaking.value?(nowSpeakingAvatarBorderOpacityMin+(nowSpeakingAvatarBorderOpacityMax-nowSpeakingAvatarBorderOpacityMin)*mouthOpenSize.value)/100:nowSpeakingAvatarBorderOpacityMin);return{mouthOpenSize,nowSpeaking,nowSpeakingAvatarBorderOpacity}});async function*readableStreamToAsyncIterator(res,func){let reader=res.getReader();try{for(;;){let{done,value:value$1}=await reader.read();if(done)return;yield func(value$1)}}finally{reader.releaseLock()}}const isPlainObject$2=value$1=>value$1!=null&&Object.getPrototypeOf(value$1)===Object.prototype,merge$2=(defaults,user)=>{let merged={...defaults};if(!user)return merged;for(let[key$1,value$1]of Object.entries(user)){if(value$1===void 0)continue;if(isPlainObject$2(merged[key$1])&&isPlainObject$2(value$1)){merged[key$1]=merge$2(merged[key$1],value$1);continue}merged[key$1]=value$1}return merged},sleep$1=async delay=>new Promise(resolve$1=>setTimeout(resolve$1,delay));var States=function(States$1){return States$1.Literal=`literal`,States$1.Special=`special`,States$1}(States||{});function peek(array,index$1,offset$1){return index$1+offset$1<0||index$1+offset$1>=array.length-1?``:array[index$1+offset$1]}function useLlmmarkerParser(options$1){let state=States.Literal,buffer$1=``;return{async consume(textPart){for(let i$1=0;i$1`?(current+=peek(textPart,i$1,1),newState=States.Literal,i$1++):current===`<`?newState=States.Special:current===`>`&&(newState=States.Literal),state===States.Literal&&newState===States.Special){if(buffer$1!==``){var _options$1$onLiteral;await(_options$1$onLiteral=options$1.onLiteral)?.call(options$1,buffer$1),buffer$1=``}}else if(state===States.Special&&newState===States.Literal&&buffer$1!==``){var _options$1$onSpecial;buffer$1+=current,await(_options$1$onSpecial=options$1.onSpecial)?.call(options$1,buffer$1),buffer$1=``}if(state===States.Literal&&newState===States.Literal){var _options$1$onLiteral2;await(_options$1$onLiteral2=options$1.onLiteral)?.call(options$1,current),buffer$1=``}else state===States.Special&&newState===States.Literal?buffer$1=``:buffer$1+=current;state=newState}},async end(){if(buffer$1!==``){var _options$1$onLiteral3,_options$1$onSpecial2;state===States.Literal?await(_options$1$onLiteral3=options$1.onLiteral)?.call(options$1,buffer$1):buffer$1.endsWith(`|>`)&&await(_options$1$onSpecial2=options$1.onSpecial)?.call(options$1,buffer$1)}}}}const htmlVoidElements=[`area`,`base`,`basefont`,`bgsound`,`br`,`col`,`command`,`embed`,`frame`,`hr`,`image`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`];var Schema=class{constructor(property,normal,space$1){this.normal=normal,this.property=property,space$1&&(this.space=space$1)}};Schema.prototype.normal={},Schema.prototype.property={},Schema.prototype.space=void 0;function merge$3(definitions,space$1){let property={},normal={};for(let definition$29 of definitions)Object.assign(property,definition$29.property),Object.assign(normal,definition$29.normal);return new Schema(property,normal,space$1)}function normalize$1(value$1){return value$1.toLowerCase()}var Info=class{constructor(property,attribute){this.attribute=attribute,this.property=property}};Info.prototype.attribute=``,Info.prototype.booleanish=!1,Info.prototype.boolean=!1,Info.prototype.commaOrSpaceSeparated=!1,Info.prototype.commaSeparated=!1,Info.prototype.defined=!1,Info.prototype.mustUseProperty=!1,Info.prototype.number=!1,Info.prototype.overloadedBoolean=!1,Info.prototype.property=``,Info.prototype.spaceSeparated=!1,Info.prototype.space=void 0;var types_exports={};__export(types_exports,{boolean:()=>boolean,booleanish:()=>booleanish,commaOrSpaceSeparated:()=>commaOrSpaceSeparated,commaSeparated:()=>commaSeparated,number:()=>number,overloadedBoolean:()=>overloadedBoolean,spaceSeparated:()=>spaceSeparated});let powers=0;const boolean=increment(),booleanish=increment(),overloadedBoolean=increment(),number=increment(),spaceSeparated=increment(),commaSeparated=increment(),commaOrSpaceSeparated=increment();function increment(){return 2**++powers}const checks=Object.keys(types_exports);var DefinedInfo=class extends Info{constructor(property,attribute,mask,space$1){let index$1=-1;if(super(property,attribute),mark(this,`space`,space$1),typeof mask==`number`)for(;++index$14&&normal.slice(0,4)===`data`&&valid.test(value$1)){if(value$1.charAt(4)===`-`){let rest=value$1.slice(5).replace(dash,camelcase);property=`data`+rest.charAt(0).toUpperCase()+rest.slice(1)}else{let rest=value$1.slice(4);if(!dash.test(rest)){let dashes=rest.replace(cap,kebab);dashes.charAt(0)!==`-`&&(dashes=`-`+dashes),value$1=`data`+dashes}}Type=DefinedInfo}return new Type(property,value$1)}function kebab($0){return`-`+$0.toLowerCase()}function camelcase($0){return $0.charAt(1).toUpperCase()}const html$1=merge$3([aria,html$4,xlink,xmlns,xml],`html`),svg=merge$3([aria,svg$1,xlink,xmlns,xml],`svg`),own$7={}.hasOwnProperty;function zwitch(key$1,options$1){let settings=options$1||{};function one$3(value$1,...parameters){let fn$5=one$3.invalid,handlers$3=one$3.handlers;if(value$1&&own$7.call(value$1,key$1)){let id=String(value$1[key$1]);fn$5=own$7.call(handlers$3,id)?handlers$3[id]:one$3.unknown}if(fn$5)return fn$5.call(this,value$1,...parameters)}return one$3.handlers=settings.handlers||{},one$3.invalid=settings.invalid,one$3.unknown=settings.unknown,one$3}const defaultSubsetRegex=/["&'<>`]/g,surrogatePairsRegex=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,controlCharactersRegex=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,regexEscapeRegex=/[|\\{}()[\]^$+*?.]/g,subsetToRegexCache=new WeakMap;function core(value$1,options$1){if(value$1=value$1.replace(options$1.subset?charactersToExpressionCached(options$1.subset):defaultSubsetRegex,basic),options$1.subset||options$1.escapeOnly)return value$1;return value$1.replace(surrogatePairsRegex,surrogate).replace(controlCharactersRegex,basic);function surrogate(pair,index$1,all$3){return options$1.format((pair.charCodeAt(0)-55296)*1024+pair.charCodeAt(1)-56320+65536,all$3.charCodeAt(index$1+2),options$1)}function basic(character,index$1,all$3){return options$1.format(character.charCodeAt(0),all$3.charCodeAt(index$1+1),options$1)}}function charactersToExpressionCached(subset$4){let cached=subsetToRegexCache.get(subset$4);return cached||(cached=charactersToExpression(subset$4),subsetToRegexCache.set(subset$4,cached)),cached}function charactersToExpression(subset$4){let groups=[],index$1=-1;for(;++index$1`,OElig:`Œ`,oelig:`œ`,Scaron:`Š`,scaron:`š`,Yuml:`Ÿ`,circ:`ˆ`,tilde:`˜`,ensp:` `,emsp:` `,thinsp:` `,zwnj:`‌`,zwj:`‍`,lrm:`‎`,rlm:`‏`,ndash:`–`,mdash:`—`,lsquo:`‘`,rsquo:`’`,sbquo:`‚`,ldquo:`“`,rdquo:`”`,bdquo:`„`,dagger:`†`,Dagger:`‡`,permil:`‰`,lsaquo:`‹`,rsaquo:`›`,euro:`€`},dangerous=[`cent`,`copy`,`divide`,`gt`,`lt`,`not`,`para`,`times`],own$6={}.hasOwnProperty,characters={};let key;for(key in characterEntitiesHtml4)own$6.call(characterEntitiesHtml4,key)&&(characters[characterEntitiesHtml4[key]]=key);const notAlphanumericRegex=/[^\dA-Za-z]/;function toNamed(code$1,next,omit,attribute){let character=String.fromCharCode(code$1);if(own$6.call(characters,character)){let name$2=characters[character],value$1=`&`+name$2;return omit&&characterEntitiesLegacy.includes(name$2)&&!dangerous.includes(name$2)&&(!attribute||next&&next!==61&¬AlphanumericRegex.test(String.fromCharCode(next)))?value$1:value$1+`;`}return``}function formatSmart(code$1,next,options$1){let numeric=toHexadecimal(code$1,next,options$1.omitOptionalSemicolons),named$1;if((options$1.useNamedReferences||options$1.useShortestReferences)&&(named$1=toNamed(code$1,next,options$1.omitOptionalSemicolons,options$1.attribute)),(options$1.useShortestReferences||!named$1)&&options$1.useShortestReferences){let decimal=toDecimal(code$1,next,options$1.omitOptionalSemicolons);decimal.length|^->||--!>|`],commentEntitySubset=[`<`,`>`];function comment$1(node$1,_1,_2,state){return state.settings.bogusComments?``:``;function encode($0){return stringifyEntities($0,Object.assign({},state.settings.characterReferences,{subset:commentEntitySubset}))}}function doctype$1(_1,_2,_3,state){return``}function ccount(value$1,character){let source=String(value$1);if(typeof character!=`string`)throw TypeError(`Expected character`);let count$1=0,index$1=source.indexOf(character);for(;index$1!==-1;)count$1++,index$1=source.indexOf(character,index$1+character.length);return count$1}function stringify(values,options$1){let settings=options$1||{},input=values[values.length-1]===``?[...values,``]:values;return input.join((settings.padRight?` `:``)+`,`+(settings.padLeft===!1?``:` `)).trim()}function stringify$1(values){return values.join(` `).trim()}const re$1=/[ \t\n\f\r]/g;function whitespace(thing){return typeof thing==`object`?thing.type===`text`?empty$1(thing.value):!1:empty$1(thing)}function empty$1(value$1){return value$1.replace(re$1,``)===``}const siblingAfter=siblings(1),siblingBefore=siblings(-1),emptyChildren$1=[];function siblings(increment$1){return sibling;function sibling(parent,index$1,includeWhitespace){let siblings$2=parent?parent.children:emptyChildren$1,offset$1=(index$1||0)+increment$1,next=siblings$2[offset$1];if(!includeWhitespace)for(;next&&whitespace(next);)offset$1+=increment$1,next=siblings$2[offset$1];return next}}const own$5={}.hasOwnProperty;function omission(handlers$3){return omit;function omit(node$1,index$1,parent){return own$5.call(handlers$3,node$1.tagName)&&handlers$3[node$1.tagName](node$1,index$1,parent)}}const closing=omission({body:body$1,caption:headOrColgroupOrCaption,colgroup:headOrColgroupOrCaption,dd,dt:dt$1,head:headOrColgroupOrCaption,html:html$3,li,optgroup,option,p,rp:rubyElement,rt:rubyElement,tbody:tbody$1,td:cells,tfoot,th:cells,thead,tr});function headOrColgroupOrCaption(_$2,index$1,parent){let next=siblingAfter(parent,index$1,!0);return!next||next.type!==`comment`&&!(next.type===`text`&&whitespace(next.value.charAt(0)))}function html$3(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type!==`comment`}function body$1(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type!==`comment`}function p(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return next?next.type===`element`&&(next.tagName===`address`||next.tagName===`article`||next.tagName===`aside`||next.tagName===`blockquote`||next.tagName===`details`||next.tagName===`div`||next.tagName===`dl`||next.tagName===`fieldset`||next.tagName===`figcaption`||next.tagName===`figure`||next.tagName===`footer`||next.tagName===`form`||next.tagName===`h1`||next.tagName===`h2`||next.tagName===`h3`||next.tagName===`h4`||next.tagName===`h5`||next.tagName===`h6`||next.tagName===`header`||next.tagName===`hgroup`||next.tagName===`hr`||next.tagName===`main`||next.tagName===`menu`||next.tagName===`nav`||next.tagName===`ol`||next.tagName===`p`||next.tagName===`pre`||next.tagName===`section`||next.tagName===`table`||next.tagName===`ul`):!parent||!(parent.type===`element`&&(parent.tagName===`a`||parent.tagName===`audio`||parent.tagName===`del`||parent.tagName===`ins`||parent.tagName===`map`||parent.tagName===`noscript`||parent.tagName===`video`))}function li(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&next.tagName===`li`}function dt$1(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!!(next&&next.type===`element`&&(next.tagName===`dt`||next.tagName===`dd`))}function dd(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`dt`||next.tagName===`dd`)}function rubyElement(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`rp`||next.tagName===`rt`)}function optgroup(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&next.tagName===`optgroup`}function option(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`option`||next.tagName===`optgroup`)}function thead(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!!(next&&next.type===`element`&&(next.tagName===`tbody`||next.tagName===`tfoot`))}function tbody$1(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`tbody`||next.tagName===`tfoot`)}function tfoot(_$2,index$1,parent){return!siblingAfter(parent,index$1)}function tr(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&next.tagName===`tr`}function cells(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`td`||next.tagName===`th`)}const opening=omission({body,colgroup,head,html:html$2,tbody});function html$2(node$1){let head$1=siblingAfter(node$1,-1);return!head$1||head$1.type!==`comment`}function head(node$1){let seen$1=new Set;for(let child$1 of node$1.children)if(child$1.type===`element`&&(child$1.tagName===`base`||child$1.tagName===`title`)){if(seen$1.has(child$1.tagName))return!1;seen$1.add(child$1.tagName)}let child=node$1.children[0];return!child||child.type===`element`}function body(node$1){let head$1=siblingAfter(node$1,-1,!0);return!head$1||head$1.type!==`comment`&&!(head$1.type===`text`&&whitespace(head$1.value.charAt(0)))&&!(head$1.type===`element`&&(head$1.tagName===`meta`||head$1.tagName===`link`||head$1.tagName===`script`||head$1.tagName===`style`||head$1.tagName===`template`))}function colgroup(node$1,index$1,parent){let previous$1=siblingBefore(parent,index$1),head$1=siblingAfter(node$1,-1,!0);return parent&&previous$1&&previous$1.type===`element`&&previous$1.tagName===`colgroup`&&closing(previous$1,parent.children.indexOf(previous$1),parent)?!1:!!(head$1&&head$1.type===`element`&&head$1.tagName===`col`)}function tbody(node$1,index$1,parent){let previous$1=siblingBefore(parent,index$1),head$1=siblingAfter(node$1,-1);return parent&&previous$1&&previous$1.type===`element`&&(previous$1.tagName===`thead`||previous$1.tagName===`tbody`)&&closing(previous$1,parent.children.indexOf(previous$1),parent)?!1:!!(head$1&&head$1.type===`element`&&head$1.tagName===`tr`)}const constants={name:[[` +About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guide/advanced/composition.html`,[I18nWarnCodes.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE]:`'v-t' has been deprecated in v11. Use translate APIs ('t' or '$t') instead.`};function handleFlatJson(obj){if(!isObject(obj)||isMessageAST(obj))return obj;for(let key$1 in obj){if(!hasOwn$1(obj,key$1))continue;if(!key$1.includes(`.`))isObject(obj[key$1])&&handleFlatJson(obj[key$1]);else{let subKeys=key$1.split(`.`),lastIndex=subKeys.length-1,currentObj=obj,hasStringValue=!1;for(let i$1=0;i$1{if(`locale`in custom&&`resource`in custom){let{locale:locale$1,resource}=custom;locale$1?(ret[locale$1]=ret[locale$1]||create$1(),deepCopy(resource,ret[locale$1])):deepCopy(resource,ret)}else isString(custom)&&deepCopy(JSON.parse(custom),ret)}),messageResolver==null&&flatJson)for(let key$1 in ret)hasOwn$1(ret,key$1)&&handleFlatJson(ret[key$1]);return ret}function getComponentOptions(instance){return instance.type}function adjustI18nResources(gl,options$1,componentOptions){let messages=isObject(options$1.messages)?options$1.messages:create$1();`__i18nGlobal`in componentOptions&&(messages=getLocaleMessages(gl.locale.value,{messages,__i18n:componentOptions.__i18nGlobal}));let locales=Object.keys(messages);if(locales.length&&locales.forEach(locale=>{gl.mergeLocaleMessage(locale,messages[locale])}),isObject(options$1.datetimeFormats)){let locales$1=Object.keys(options$1.datetimeFormats);locales$1.length&&locales$1.forEach(locale=>{gl.mergeDateTimeFormat(locale,options$1.datetimeFormats[locale])})}if(isObject(options$1.numberFormats)){let locales$1=Object.keys(options$1.numberFormats);locales$1.length&&locales$1.forEach(locale=>{gl.mergeNumberFormat(locale,options$1.numberFormats[locale])})}}function createTextNode(key$1){return createVNode(Text,null,key$1,0)}const DEVTOOLS_META=`__INTLIFY_META__`,NOOP_RETURN_ARRAY=()=>[],NOOP_RETURN_FALSE=()=>!1;let composerID=0;function defineCoreMissingHandler(missing){return(ctx,locale,key$1,type)=>missing(locale,key$1,getCurrentInstance()||void 0,type)}const getMetaInfo=()=>{let instance=getCurrentInstance(),meta=null;return instance&&(meta=getComponentOptions(instance)[DEVTOOLS_META])?{[DEVTOOLS_META]:meta}:null};function createComposer(options$1={}){let{__root,__injectWithOption}=options$1,_isGlobal=__root===void 0,flatJson=options$1.flatJson,_ref=inBrowser?ref:shallowRef,_inheritLocale=isBoolean(options$1.inheritLocale)?options$1.inheritLocale:!0,_locale=_ref(__root&&_inheritLocale?__root.locale.value:isString(options$1.locale)?options$1.locale:DEFAULT_LOCALE),_fallbackLocale=_ref(__root&&_inheritLocale?__root.fallbackLocale.value:isString(options$1.fallbackLocale)||isArray$1(options$1.fallbackLocale)||isPlainObject$3(options$1.fallbackLocale)||options$1.fallbackLocale===!1?options$1.fallbackLocale:_locale.value),_messages=_ref(getLocaleMessages(_locale.value,options$1)),_datetimeFormats=_ref(isPlainObject$3(options$1.datetimeFormats)?options$1.datetimeFormats:{[_locale.value]:{}}),_numberFormats=_ref(isPlainObject$3(options$1.numberFormats)?options$1.numberFormats:{[_locale.value]:{}}),_missingWarn=__root?__root.missingWarn:isBoolean(options$1.missingWarn)||isRegExp(options$1.missingWarn)?options$1.missingWarn:!0,_fallbackWarn=__root?__root.fallbackWarn:isBoolean(options$1.fallbackWarn)||isRegExp(options$1.fallbackWarn)?options$1.fallbackWarn:!0,_fallbackRoot=__root?__root.fallbackRoot:isBoolean(options$1.fallbackRoot)?options$1.fallbackRoot:!0,_fallbackFormat=!!options$1.fallbackFormat,_missing=isFunction(options$1.missing)?options$1.missing:null,_runtimeMissing=isFunction(options$1.missing)?defineCoreMissingHandler(options$1.missing):null,_postTranslation=isFunction(options$1.postTranslation)?options$1.postTranslation:null,_warnHtmlMessage=__root?__root.warnHtmlMessage:isBoolean(options$1.warnHtmlMessage)?options$1.warnHtmlMessage:!0,_escapeParameter=!!options$1.escapeParameter,_modifiers=__root?__root.modifiers:isPlainObject$3(options$1.modifiers)?options$1.modifiers:{},_pluralRules=options$1.pluralRules||__root&&__root.pluralRules,_context$1,getCoreContext=()=>{_isGlobal&&setFallbackContext(null);let ctxOptions={version:VERSION,locale:_locale.value,fallbackLocale:_fallbackLocale.value,messages:_messages.value,modifiers:_modifiers,pluralRules:_pluralRules,missing:_runtimeMissing===null?void 0:_runtimeMissing,missingWarn:_missingWarn,fallbackWarn:_fallbackWarn,fallbackFormat:_fallbackFormat,unresolving:!0,postTranslation:_postTranslation===null?void 0:_postTranslation,warnHtmlMessage:_warnHtmlMessage,escapeParameter:_escapeParameter,messageResolver:options$1.messageResolver,messageCompiler:options$1.messageCompiler,__meta:{framework:`vue`}};ctxOptions.datetimeFormats=_datetimeFormats.value,ctxOptions.numberFormats=_numberFormats.value,ctxOptions.__datetimeFormatters=isPlainObject$3(_context$1)?_context$1.__datetimeFormatters:void 0,ctxOptions.__numberFormatters=isPlainObject$3(_context$1)?_context$1.__numberFormatters:void 0;let ctx=createCoreContext(ctxOptions);return _isGlobal&&setFallbackContext(ctx),ctx};_context$1=getCoreContext(),updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value);function trackReactivityValues(){return[_locale.value,_fallbackLocale.value,_messages.value,_datetimeFormats.value,_numberFormats.value]}let locale=computed({get:()=>_locale.value,set:val=>{_context$1.locale=val,_locale.value=val}}),fallbackLocale=computed({get:()=>_fallbackLocale.value,set:val=>{_context$1.fallbackLocale=val,_fallbackLocale.value=val,updateFallbackLocale(_context$1,_locale.value,val)}}),messages=computed(()=>_messages.value),datetimeFormats=computed(()=>_datetimeFormats.value),numberFormats=computed(()=>_numberFormats.value);function getPostTranslationHandler(){return isFunction(_postTranslation)?_postTranslation:null}function setPostTranslationHandler(handler){_postTranslation=handler,_context$1.postTranslation=handler}function getMissingHandler(){return _missing}function setMissingHandler(handler){handler!==null&&(_runtimeMissing=defineCoreMissingHandler(handler)),_missing=handler,_context$1.missing=_runtimeMissing}function isResolvedTranslateMessage(type,arg){return type!==`translate`||!arg.resolvedMessage}let wrapWithDeps=(fn$5,argumentParser,warnType,fallbackSuccess,fallbackFail,successCondition)=>{trackReactivityValues();let ret;try{__INTLIFY_PROD_DEVTOOLS__,_isGlobal||(_context$1.fallbackContext=__root?getFallbackContext():void 0),ret=fn$5(_context$1)}finally{__INTLIFY_PROD_DEVTOOLS__,_isGlobal||(_context$1.fallbackContext=void 0)}if(warnType!==`translate exists`&&isNumber(ret)&&ret===NOT_REOSLVED||warnType===`translate exists`&&!ret){let[key$1,arg2]=argumentParser();return __root&&_fallbackRoot?fallbackSuccess(__root):fallbackFail(key$1)}else if(successCondition(ret))return ret;else throw createI18nError(I18nErrorCodes.UNEXPECTED_RETURN_TYPE)};function t(...args){return wrapWithDeps(context$1=>Reflect.apply(translate,null,[context$1,...args]),()=>parseTranslateArgs(...args),`translate`,root$3=>Reflect.apply(root$3.t,root$3,[...args]),key$1=>key$1,val=>isString(val))}function rt$3(...args){let[arg1,arg2,arg3]=args;if(arg3&&!isObject(arg3))throw createI18nError(I18nErrorCodes.INVALID_ARGUMENT);return t(arg1,arg2,assign({resolvedMessage:!0},arg3||{}))}function d$2(...args){return wrapWithDeps(context$1=>Reflect.apply(datetime,null,[context$1,...args]),()=>parseDateTimeArgs(...args),`datetime format`,root$3=>Reflect.apply(root$3.d,root$3,[...args]),()=>MISSING_RESOLVE_VALUE,val=>isString(val)||isArray$1(val))}function n$2(...args){return wrapWithDeps(context$1=>Reflect.apply(number$1,null,[context$1,...args]),()=>parseNumberArgs(...args),`number format`,root$3=>Reflect.apply(root$3.n,root$3,[...args]),()=>MISSING_RESOLVE_VALUE,val=>isString(val)||isArray$1(val))}function normalize$3(values){return values.map(val=>isString(val)||isNumber(val)||isBoolean(val)?createTextNode(String(val)):val)}let interpolate$1=val=>val,processor={normalize:normalize$3,interpolate:interpolate$1,type:`vnode`};function translateVNode(...args){return wrapWithDeps(context$1=>{let ret,_context$2=context$1;try{_context$2.processor=processor,ret=Reflect.apply(translate,null,[_context$2,...args])}finally{_context$2.processor=null}return ret},()=>parseTranslateArgs(...args),`translate`,root$3=>root$3[TranslateVNodeSymbol](...args),key$1=>[createTextNode(key$1)],val=>isArray$1(val))}function numberParts(...args){return wrapWithDeps(context$1=>Reflect.apply(number$1,null,[context$1,...args]),()=>parseNumberArgs(...args),`number format`,root$3=>root$3[NumberPartsSymbol](...args),NOOP_RETURN_ARRAY,val=>isString(val)||isArray$1(val))}function datetimeParts(...args){return wrapWithDeps(context$1=>Reflect.apply(datetime,null,[context$1,...args]),()=>parseDateTimeArgs(...args),`datetime format`,root$3=>root$3[DatetimePartsSymbol](...args),NOOP_RETURN_ARRAY,val=>isString(val)||isArray$1(val))}function setPluralRules(rules){_pluralRules=rules,_context$1.pluralRules=_pluralRules}function te$2(key$1,locale$1){return wrapWithDeps(()=>{if(!key$1)return!1;let targetLocale=isString(locale$1)?locale$1:_locale.value,message$1=getLocaleMessage(targetLocale),resolved=_context$1.messageResolver(message$1,key$1);return isMessageAST(resolved)||isMessageFunction(resolved)||isString(resolved)},()=>[key$1],`translate exists`,root$3=>Reflect.apply(root$3.te,root$3,[key$1,locale$1]),NOOP_RETURN_FALSE,val=>isBoolean(val))}function resolveMessages(key$1){let messages$1=null,locales=fallbackWithLocaleChain(_context$1,_fallbackLocale.value,_locale.value);for(let i$1=0;i$1{_inheritLocale&&(_locale.value=val,_context$1.locale=val,updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value))}),watch(__root.fallbackLocale,val=>{_inheritLocale&&(_fallbackLocale.value=val,_context$1.fallbackLocale=val,updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value))}));let composer={id:composerID,locale,fallbackLocale,get inheritLocale(){return _inheritLocale},set inheritLocale(val){_inheritLocale=val,val&&__root&&(_locale.value=__root.locale.value,_fallbackLocale.value=__root.fallbackLocale.value,updateFallbackLocale(_context$1,_locale.value,_fallbackLocale.value))},get availableLocales(){return Object.keys(_messages.value).sort()},messages,get modifiers(){return _modifiers},get pluralRules(){return _pluralRules||{}},get isGlobal(){return _isGlobal},get missingWarn(){return _missingWarn},set missingWarn(val){_missingWarn=val,_context$1.missingWarn=_missingWarn},get fallbackWarn(){return _fallbackWarn},set fallbackWarn(val){_fallbackWarn=val,_context$1.fallbackWarn=_fallbackWarn},get fallbackRoot(){return _fallbackRoot},set fallbackRoot(val){_fallbackRoot=val},get fallbackFormat(){return _fallbackFormat},set fallbackFormat(val){_fallbackFormat=val,_context$1.fallbackFormat=_fallbackFormat},get warnHtmlMessage(){return _warnHtmlMessage},set warnHtmlMessage(val){_warnHtmlMessage=val,_context$1.warnHtmlMessage=val},get escapeParameter(){return _escapeParameter},set escapeParameter(val){_escapeParameter=val,_context$1.escapeParameter=val},t,getLocaleMessage,setLocaleMessage,mergeLocaleMessage,getPostTranslationHandler,setPostTranslationHandler,getMissingHandler,setMissingHandler,[SetPluralRulesSymbol]:setPluralRules};return composer.datetimeFormats=datetimeFormats,composer.numberFormats=numberFormats,composer.rt=rt$3,composer.te=te$2,composer.tm=tm,composer.d=d$2,composer.n=n$2,composer.getDateTimeFormat=getDateTimeFormat,composer.setDateTimeFormat=setDateTimeFormat,composer.mergeDateTimeFormat=mergeDateTimeFormat,composer.getNumberFormat=getNumberFormat,composer.setNumberFormat=setNumberFormat,composer.mergeNumberFormat=mergeNumberFormat,composer[InejctWithOptionSymbol]=__injectWithOption,composer[TranslateVNodeSymbol]=translateVNode,composer[DatetimePartsSymbol]=datetimeParts,composer[NumberPartsSymbol]=numberParts,composer}const baseFormatProps={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:val=>val===`parent`||val===`global`,default:`parent`},i18n:{type:Object}};function getInterpolateArg({slots},keys$3){if(keys$3.length===1&&keys$3[0]===`default`){let ret=slots.default?slots.default():[];return ret.reduce((slot,current)=>[...slot,...current.type===Fragment?current.children:[current]],[])}else return keys$3.reduce((arg,key$1)=>{let slot=slots[key$1];return slot&&(arg[key$1]=slot()),arg},create$1())}function getFragmentableTag(){return Fragment}const TranslationImpl=defineComponent({name:`i18n-t`,props:assign({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:val=>isNumber(val)||!isNaN(val)}},baseFormatProps),setup(props,context$1){let{slots,attrs}=context$1,i18n$1=props.i18n||useI18n({useScope:props.scope,__useComponent:!0});return()=>{let keys$3=Object.keys(slots).filter(key$1=>key$1[0]!==`_`),options$1=create$1();props.locale&&(options$1.locale=props.locale),props.plural!==void 0&&(options$1.plural=isString(props.plural)?+props.plural:props.plural);let arg=getInterpolateArg(context$1,keys$3),children=i18n$1[TranslateVNodeSymbol](props.keypath,arg,options$1),assignedAttrs=assign(create$1(),attrs),tag=isString(props.tag)||isObject(props.tag)?props.tag:getFragmentableTag();return h(tag,assignedAttrs,children)}}}),Translation=TranslationImpl;function isVNode$1(target$1){return isArray$1(target$1)&&!isString(target$1[0])}function renderFormatter(props,context$1,slotKeys,partFormatter){let{slots,attrs}=context$1;return()=>{let options$1={part:!0},overrides=create$1();props.locale&&(options$1.locale=props.locale),isString(props.format)?options$1.key=props.format:isObject(props.format)&&(isString(props.format.key)&&(options$1.key=props.format.key),overrides=Object.keys(props.format).reduce((options$2,prop)=>slotKeys.includes(prop)?assign(create$1(),options$2,{[prop]:props.format[prop]}):options$2,create$1()));let parts=partFormatter(props.value,options$1,overrides),children=[options$1.key];isArray$1(parts)?children=parts.map((part,index$1)=>{let slot=slots[part.type],node$1=slot?slot({[part.type]:part.value,index:index$1,parts}):[part.value];return isVNode$1(node$1)&&(node$1[0].key=`${part.type}-${index$1}`),node$1}):isString(parts)&&(children=[parts]);let assignedAttrs=assign(create$1(),attrs),tag=isString(props.tag)||isObject(props.tag)?props.tag:getFragmentableTag();return h(tag,assignedAttrs,children)}}const NumberFormatImpl=defineComponent({name:`i18n-n`,props:assign({value:{type:Number,required:!0},format:{type:[String,Object]}},baseFormatProps),setup(props,context$1){let i18n$1=props.i18n||useI18n({useScope:props.scope,__useComponent:!0});return renderFormatter(props,context$1,NUMBER_FORMAT_OPTIONS_KEYS,(...args)=>i18n$1[NumberPartsSymbol](...args))}}),NumberFormat=NumberFormatImpl;function getComposer$1(i18n$1,instance){let i18nInternal=i18n$1;if(i18n$1.mode===`composition`)return i18nInternal.__getInstance(instance)||i18n$1.global;{let vueI18n=i18nInternal.__getInstance(instance);return vueI18n==null?i18n$1.global.__composer:vueI18n.__composer}}function vTDirective(i18n$1){let _process=binding=>{let{instance,value:value$1}=binding;if(!instance||!instance.$)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);let composer=getComposer$1(i18n$1,instance.$),parsedValue=parseValue(value$1);return[Reflect.apply(composer.t,composer,[...makeParams(parsedValue)]),composer]},register=(el,binding)=>{let[textContent,composer]=_process(binding);inBrowser&&i18n$1.global===composer&&(el.__i18nWatcher=watch(composer.locale,()=>{binding.instance&&binding.instance.$forceUpdate()})),el.__composer=composer,el.textContent=textContent},unregister=el=>{inBrowser&&el.__i18nWatcher&&(el.__i18nWatcher(),el.__i18nWatcher=void 0,delete el.__i18nWatcher),el.__composer&&(el.__composer=void 0,delete el.__composer)},update=(el,{value:value$1})=>{if(el.__composer){let composer=el.__composer,parsedValue=parseValue(value$1);el.textContent=Reflect.apply(composer.t,composer,[...makeParams(parsedValue)])}},getSSRProps=binding=>{let[textContent]=_process(binding);return{textContent}};return{created:register,unmounted:unregister,beforeUpdate:update,getSSRProps}}function parseValue(value$1){if(isString(value$1))return{path:value$1};if(isPlainObject$3(value$1)){if(!(`path`in value$1))throw createI18nError(I18nErrorCodes.REQUIRED_VALUE,`path`);return value$1}else throw createI18nError(I18nErrorCodes.INVALID_VALUE)}function makeParams(value$1){let{path,locale,args,choice,plural}=value$1,options$1={},named$1=args||{};return isString(locale)&&(options$1.locale=locale),isNumber(choice)&&(options$1.plural=choice),isNumber(plural)&&(options$1.plural=plural),[path,named$1,options$1]}function apply(app,i18n$1,...options$1){let pluginOptions=isPlainObject$3(options$1[0])?options$1[0]:{},globalInstall=isBoolean(pluginOptions.globalInstall)?pluginOptions.globalInstall:!0;globalInstall&&([Translation.name,`I18nT`].forEach(name$2=>app.component(name$2,Translation)),[NumberFormat.name,`I18nN`].forEach(name$2=>app.component(name$2,NumberFormat)),[DatetimeFormat.name,`I18nD`].forEach(name$2=>app.component(name$2,DatetimeFormat))),app.directive(`t`,vTDirective(i18n$1))}const I18nInjectionKey=makeSymbol(`global-vue-i18n`);function createI18n(options$1={}){let __legacyMode=!1,__globalInjection=isBoolean(options$1.globalInjection)?options$1.globalInjection:!0,__instances=new Map,[globalScope,__global]=createGlobal(options$1,__legacyMode),symbol=makeSymbol(``);function __getInstance(component){return __instances.get(component)||null}function __setInstance(component,instance){__instances.set(component,instance)}function __deleteInstance(component){__instances.delete(component)}let i18n$1={get mode(){return`composition`},async install(app,...options$2){if(app.__VUE_I18N_SYMBOL__=symbol,app.provide(app.__VUE_I18N_SYMBOL__,i18n$1),isPlainObject$3(options$2[0])){let opts=options$2[0];i18n$1.__composerExtend=opts.__composerExtend,i18n$1.__vueI18nExtend=opts.__vueI18nExtend}let globalReleaseHandler=null;__globalInjection&&(globalReleaseHandler=injectGlobalFields(app,i18n$1.global)),apply(app,i18n$1,...options$2);let unmountApp=app.unmount;app.unmount=()=>{globalReleaseHandler&&globalReleaseHandler(),i18n$1.dispose(),unmountApp()}},get global(){return __global},dispose(){globalScope.stop()},__instances,__getInstance,__setInstance,__deleteInstance};return i18n$1}function useI18n(options$1={}){let instance=getCurrentInstance();if(instance==null)throw createI18nError(I18nErrorCodes.MUST_BE_CALL_SETUP_TOP);if(!instance.isCE&&instance.appContext.app!=null&&!instance.appContext.app.__VUE_I18N_SYMBOL__)throw createI18nError(I18nErrorCodes.NOT_INSTALLED);let i18n$1=getI18nInstance(instance),gl=getGlobalComposer(i18n$1),componentOptions=getComponentOptions(instance),scope=getScope(options$1,componentOptions);if(scope===`global`)return adjustI18nResources(gl,options$1,componentOptions),gl;if(scope===`parent`){let composer$1=getComposer(i18n$1,instance,options$1.__useComponent);return composer$1??=gl,composer$1}let i18nInternal=i18n$1,composer=i18nInternal.__getInstance(instance);if(composer==null){let composerOptions=assign({},options$1);`__i18n`in componentOptions&&(composerOptions.__i18n=componentOptions.__i18n),gl&&(composerOptions.__root=gl),composer=createComposer(composerOptions),i18nInternal.__composerExtend&&(composer[DisposeSymbol]=i18nInternal.__composerExtend(composer)),setupLifeCycle(i18nInternal,instance,composer),i18nInternal.__setInstance(instance,composer)}return composer}function createGlobal(options$1,legacyMode){let scope=effectScope(),obj=scope.run(()=>createComposer(options$1));if(obj==null)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);return[scope,obj]}function getI18nInstance(instance){let i18n$1=inject(instance.isCE?I18nInjectionKey:instance.appContext.app.__VUE_I18N_SYMBOL__);if(!i18n$1)throw createI18nError(instance.isCE?I18nErrorCodes.NOT_INSTALLED_WITH_PROVIDE:I18nErrorCodes.UNEXPECTED_ERROR);return i18n$1}function getScope(options$1,componentOptions){return isEmptyObject(options$1)?`__i18n`in componentOptions?`local`:`global`:options$1.useScope?options$1.useScope:`local`}function getGlobalComposer(i18n$1){return i18n$1.mode===`composition`?i18n$1.global:i18n$1.global.__composer}function getComposer(i18n$1,target$1,useComponent=!1){let composer=null,root$3=target$1.root,current=getParentComponentInstance(target$1,useComponent);for(;current!=null;){let i18nInternal=i18n$1;if(i18n$1.mode===`composition`&&(composer=i18nInternal.__getInstance(current)),composer!=null||root$3===current)break;current=current.parent}return composer}function getParentComponentInstance(target$1,useComponent=!1){return target$1==null?null:useComponent&&target$1.vnode.ctx||target$1.parent}function setupLifeCycle(i18n$1,target$1,composer){let emitter=null;onMounted(()=>{},target$1),onUnmounted(()=>{let _composer=composer;i18n$1.__deleteInstance(target$1);let dispose$1=_composer[DisposeSymbol];dispose$1&&(dispose$1(),delete _composer[DisposeSymbol])},target$1)}const globalExportProps=[`locale`,`fallbackLocale`,`availableLocales`],globalExportMethods=[`t`,`rt`,`d`,`n`,`tm`,`te`];function injectGlobalFields(app,composer){let i18n$1=Object.create(null);globalExportProps.forEach(prop=>{let desc=Object.getOwnPropertyDescriptor(composer,prop);if(!desc)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);let wrap$2=isRef(desc.value)?{get(){return desc.value.value},set(val){desc.value.value=val}}:{get(){return desc.get&&desc.get()}};Object.defineProperty(i18n$1,prop,wrap$2)}),app.config.globalProperties.$i18n=i18n$1,globalExportMethods.forEach(method=>{let desc=Object.getOwnPropertyDescriptor(composer,method);if(!desc||!desc.value)throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);Object.defineProperty(app.config.globalProperties,`$${method}`,desc)});let dispose$1=()=>{delete app.config.globalProperties.$i18n,globalExportMethods.forEach(method=>{delete app.config.globalProperties[`$${method}`]})};return dispose$1}const DatetimeFormatImpl=defineComponent({name:`i18n-d`,props:assign({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},baseFormatProps),setup(props,context$1){let i18n$1=props.i18n||useI18n({useScope:props.scope,__useComponent:!0});return renderFormatter(props,context$1,DATETIME_FORMAT_OPTIONS_KEYS,(...args)=>i18n$1[DatetimePartsSymbol](...args))}}),DatetimeFormat=DatetimeFormatImpl;if(initFeatureFlags(),registerMessageCompiler(compile),registerMessageResolver(resolveValue),registerLocaleFallbacker(fallbackWithLocaleChain),__INTLIFY_PROD_DEVTOOLS__){let target$1=getGlobalThis();target$1.__INTLIFY__=!0,setDevToolsHook(target$1.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}var ProviderApiKeyInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderApiKeyInput`,props:mergeModels({providerName:{},placeholder:{},required:{type:Boolean},label:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,{t}=useI18n(),modelValue=useModel(__props,`modelValue`),computedDescription=computed(()=>props.description||`API Key for ${props.providerName}`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(FieldInput_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,label:_ctx.label||unref(t)(`settings.pages.providers.common.fields.field.api-key.label`),description:computedDescription.value,placeholder:_ctx.placeholder,required:_ctx.required,type:`password`},null,8,[`modelValue`,`label`,`description`,`placeholder`,`required`]))}}),ProviderApiKeyInput_default=ProviderApiKeyInput_vue_vue_type_script_setup_true_lang_default,ProviderBaseUrlInput_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderBaseUrlInput`,props:mergeModels({placeholder:{},required:{type:Boolean},label:{},description:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(__props){let props=__props,modelValue=useModel(__props,`modelValue`);return(_ctx,_cache$1)=>(openBlock(),createBlock(unref(FieldInput_default),{modelValue:modelValue.value,"onUpdate:modelValue":_cache$1[0]||=$event=>modelValue.value=$event,label:props.label||`Base URL`,description:props.description||`Custom base URL (optional)`,placeholder:props.placeholder,required:props.required,type:`text`},null,8,[`modelValue`,`label`,`description`,`placeholder`,`required`]))}}),ProviderBaseUrlInput_default=ProviderBaseUrlInput_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$14={flex:`~ col gap-6`},_hoisted_2$6={flex:`~ row`,"items-center":``,"justify-between":``},_hoisted_3$3={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},_hoisted_4$3={text:`neutral-400 dark:neutral-500`};var ProviderBasicSettings_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderBasicSettings`,props:{title:{},description:{},onReset:{type:Function}},setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$14,[createBaseVNode(`div`,_hoisted_2$6,[createBaseVNode(`div`,null,[createBaseVNode(`h2`,_hoisted_3$3,toDisplayString(_ctx.title||`Basic`),1),createBaseVNode(`div`,_hoisted_4$3,[createBaseVNode(`span`,null,toDisplayString(_ctx.description||`Essential settings`),1)])]),_ctx.onReset?(openBlock(),createElementBlock(`button`,{key:0,title:`Reset settings`,flex:``,"items-center":``,"justify-center":``,"rounded-full":``,"p-2":``,transition:`all duration-250 ease-in-out`,text:`neutral-500 dark:neutral-400`,bg:`transparent dark:transparent hover:neutral-200 dark:hover:neutral-800 active:neutral-300 dark:active:neutral-700`,onClick:_cache$1[0]||=(...args)=>_ctx.onReset&&_ctx.onReset(...args)},_cache$1[1]||=[createBaseVNode(`div`,{"i-solar:refresh-bold-duotone":``,"text-xl":``},null,-1)])):createCommentVNode(``,!0)]),renderSlot(_ctx.$slots,`default`)]))}}),ProviderBasicSettings_default=ProviderBasicSettings_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$13={bg:`neutral-50 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,"p-4":``,flex:`~ col gap-6`};var ProviderSettingsContainer_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderSettingsContainer`,setup(__props){return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$13,[renderSlot(_ctx.$slots,`default`)]))}}),ProviderSettingsContainer_default=ProviderSettingsContainer_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$12={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``};var ProviderSettingsLayout2_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderSettingsLayout2`,props:{providerName:{},providerIcon:{},providerIconColor:{},onBack:{type:Function}},setup(__props){return(_ctx,_cache$1)=>{let _directive_motion=resolveDirective(`motion`);return openBlock(),createElementBlock(Fragment,null,[renderSlot(_ctx.$slots,`default`),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_1$12,[createBaseVNode(`div`,{text:`60`,class:normalizeClass(_ctx.providerIcon||_ctx.providerIconColor)},null,2)])),[[_directive_motion]])],64)}}}),ProviderSettingsLayout2_default=ProviderSettingsLayout2_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$11={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``};var ProviderSettingsLayout_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ProviderSettingsLayout`,props:{providerName:{},providerIcon:{},providerIconColor:{},onBack:{type:Function}},setup(__props){return(_ctx,_cache$1)=>{let _directive_motion=resolveDirective(`motion`);return openBlock(),createElementBlock(Fragment,null,[renderSlot(_ctx.$slots,`default`),withDirectives((openBlock(),createElementBlock(`div`,_hoisted_1$11,[createBaseVNode(`div`,{text:`60`,class:normalizeClass(_ctx.providerIcon||_ctx.providerIconColor)},null,2)])),[[_directive_motion]])],64)}}}),ProviderSettingsLayout_default=ProviderSettingsLayout_vue_vue_type_script_setup_true_lang_default;const _hoisted_1$10={"w-full":``,"rounded-xl":``},_hoisted_2$5={class:`mb-4 text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`,"w-full":``},_hoisted_3$2={class:`inline-flex items-center gap-4`},_hoisted_4$2={flex:`~ col gap-4`},_hoisted_5$2=[`placeholder`],_hoisted_6$2=[`placeholder`],_hoisted_7$1={flex:`~ col gap-6`},_hoisted_8$1={grid:`~ cols-2 gap-4`},_hoisted_9$1={class:`flex items-center gap-1 text-sm font-medium`},_hoisted_10$1={class:`text-xs text-neutral-500 dark:text-neutral-400`},_hoisted_11$1=[`value`],_hoisted_12$1={flex:`~ row`,"gap-4":``},_hoisted_13$1=[`disabled`],_hoisted_14$1={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_15$1={flex:`~ row`,"items-center":``,"gap-2":``},_hoisted_16$1={key:2,class:`mt-2 text-sm text-red-500`},_hoisted_17$1={key:3,class:`mt-2 text-sm text-red-500`},_hoisted_18$1={key:4,class:`mt-2 text-sm text-red-500`},_hoisted_19$1=[`src`];var SpeechPlayground_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SpeechPlayground`,props:{defaultText:{},availableVoices:{},generateSpeech:{type:Function},apiKeyConfigured:{type:Boolean}},setup(__props,{expose:__expose}){let props=__props,{t}=useI18n(),testText=ref(props.defaultText||`Hello! This is a test of the voice synthesis.`),isGenerating=ref(!1),audioUrl=ref(``),errorMessage=ref(``),audioPlayer=ref(null),useSSML=ref(!1),ssmlText=ref(``),selectedVoice=ref(``);watch(()=>props.availableVoices,newVoices=>{newVoices.length>0&&!selectedVoice.value&&(selectedVoice.value=newVoices[0]?.id||``)},{immediate:!0});async function handleGenerateTestSpeech(){if(!(!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim()||!selectedVoice.value)){isGenerating.value=!0,errorMessage.value=``;try{audioUrl.value&&stopTestAudio();let input=useSSML.value?ssmlText.value:testText.value,response=await props.generateSpeech(input,selectedVoice.value,useSSML.value);audioUrl.value=URL.createObjectURL(new Blob([response])),setTimeout(()=>{audioPlayer.value&&audioPlayer.value.play()},100)}catch(error){console.error(`Error generating speech:`,error),errorMessage.value=error instanceof Error?error.message:`An unknown error occurred`}finally{isGenerating.value=!1}}}function stopTestAudio(){audioPlayer.value&&(audioPlayer.value.pause(),audioPlayer.value.currentTime=0),audioUrl.value&&(URL.revokeObjectURL(audioUrl.value),audioUrl.value=``)}return onUnmounted(()=>{audioUrl.value&&URL.revokeObjectURL(audioUrl.value)}),__expose({testText,ssmlText,useSSML,selectedVoice,isGenerating,audioUrl,errorMessage,audioPlayer,generateTestSpeech:handleGenerateTestSpeech,stopTestAudio}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,_hoisted_1$10,[createBaseVNode(`h2`,_hoisted_2$5,[createBaseVNode(`div`,_hoisted_3$2,[createVNode(unref(TestDummyMarker_default)),createBaseVNode(`div`,null,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.title`)),1)])]),createBaseVNode(`div`,_hoisted_4$2,[createVNode(unref(FieldCheckbox_default),{modelValue:useSSML.value,"onUpdate:modelValue":_cache$1[0]||=$event=>useSSML.value=$event,label:unref(t)(`settings.pages.modules.speech.sections.section.voice-settings.use-ssml.label`),description:unref(t)(`settings.pages.modules.speech.sections.section.voice-settings.use-ssml.description`)},null,8,[`modelValue`,`label`,`description`]),useSSML.value?withDirectives((openBlock(),createElementBlock(`textarea`,{key:1,"onUpdate:modelValue":_cache$1[2]||=$event=>ssmlText.value=$event,placeholder:unref(t)(`settings.pages.modules.speech.sections.section.voice-settings.input-ssml.placeholder`),border:`neutral-100 dark:neutral-800 solid 2 focus:neutral-200 dark:focus:neutral-700`,transition:`all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`,"h-48":``,"w-full":``,"rounded-lg":``,"px-3":``,"py-2":``,"text-sm":``,"font-mono":``,"outline-none":``},null,8,_hoisted_6$2)),[[vModelText,ssmlText.value]]):withDirectives((openBlock(),createElementBlock(`textarea`,{key:0,"onUpdate:modelValue":_cache$1[1]||=$event=>testText.value=$event,placeholder:unref(t)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.input.placeholder`),border:`neutral-100 dark:neutral-800 solid 2 focus:neutral-200 dark:focus:neutral-700`,transition:`all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`,"h-24":``,"w-full":``,"rounded-lg":``,"px-3":``,"py-2":``,"text-sm":``,"outline-none":``},null,8,_hoisted_5$2)),[[vModelText,testText.value]]),createBaseVNode(`div`,_hoisted_7$1,[createBaseVNode(`label`,_hoisted_8$1,[createBaseVNode(`div`,null,[createBaseVNode(`div`,_hoisted_9$1,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.voice.label`)),1),createBaseVNode(`div`,_hoisted_10$1,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.voice.description`)),1)]),withDirectives(createBaseVNode(`select`,{"onUpdate:modelValue":_cache$1[3]||=$event=>selectedVoice.value=$event,border:`neutral-300 dark:neutral-800 solid 2 focus:neutral-400 dark:focus:neutral-600`,transition:`border duration-250 ease-in-out`,"w-full":``,"rounded-lg":``,"px-2":``,"py-1":``,"text-nowrap":``,"text-sm":``,"outline-none":``},[(openBlock(!0),createElementBlock(Fragment,null,renderList(_ctx.availableVoices,voice=>(openBlock(),createElementBlock(`option`,{key:voice.id,value:voice.id},toDisplayString(voice.name),9,_hoisted_11$1))),128))],512),[[vModelSelect,selectedVoice.value]])])]),createBaseVNode(`div`,_hoisted_12$1,[createBaseVNode(`button`,{border:`neutral-800 dark:neutral-200 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,text:`neutral-100 dark:neutral-900`,"py-2":``,"text-sm":``,disabled:isGenerating.value||!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim()||!selectedVoice.value||!_ctx.apiKeyConfigured,class:normalizeClass({"opacity-50 cursor-not-allowed":isGenerating.value||!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim()||!selectedVoice.value||!_ctx.apiKeyConfigured}),bg:`neutral-700 dark:neutral-300`,onClick:handleGenerateTestSpeech},[createBaseVNode(`div`,_hoisted_14$1,[_cache$1[4]||=createBaseVNode(`div`,{"i-solar:play-circle-bold-duotone":``},null,-1),createBaseVNode(`span`,null,toDisplayString(isGenerating.value?unref(t)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.generating`):unref(t)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.label`)),1)])],10,_hoisted_13$1),audioUrl.value?(openBlock(),createElementBlock(`button`,{key:0,border:`primary-300 dark:primary-800 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,"py-2":``,"text-sm":``,onClick:stopTestAudio},[createBaseVNode(`div`,_hoisted_15$1,[_cache$1[5]||=createBaseVNode(`div`,{"i-solar:stop-circle-bold-duotone":``},null,-1),createBaseVNode(`span`,null,toDisplayString(unref(t)(`settings.pages.modules.speech.sections.section.playground.buttons.stop.label`)),1)])])):createCommentVNode(``,!0)]),_ctx.apiKeyConfigured?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,_hoisted_16$1,toDisplayString(unref(t)(`settings.pages.providers.provider.elevenlabs.playground.validation.error-missing-api-key`)),1)),selectedVoice.value?createCommentVNode(``,!0):(openBlock(),createElementBlock(`div`,_hoisted_17$1,toDisplayString(unref(t)(`settings.pages.modules.speech.sections.section.playground.select-voice.required`)),1)),errorMessage.value?(openBlock(),createElementBlock(`div`,_hoisted_18$1,toDisplayString(errorMessage.value),1)):createCommentVNode(``,!0),audioUrl.value?(openBlock(),createElementBlock(`audio`,{key:5,ref_key:`audioPlayer`,ref:audioPlayer,src:audioUrl.value,controls:``,class:`mt-2 w-full`},null,8,_hoisted_19$1)):createCommentVNode(``,!0)]),renderSlot(_ctx.$slots,`default`)]))}}),SpeechPlayground_default=SpeechPlayground_vue_vue_type_script_setup_true_lang_default,XSAIError$2=class extends Error{response;constructor(message$1,response){super(message$1),this.name=`XSAIError`,this.response=response}};const strCamelToSnake$2=str=>str.replace(/[A-Z]/g,s$1=>`_${s$1.toLowerCase()}`),objCamelToSnake$1=obj=>Object.fromEntries(Object.entries(obj).map(([k$4,v$1])=>[strCamelToSnake$2(k$4),v$1])),clean$2=obj=>Object.fromEntries(Object.entries(obj).filter(([,v$1])=>v$1!==void 0)),requestBody=body$2=>JSON.stringify(objCamelToSnake$1(clean$2({...body$2,abortSignal:void 0,apiKey:void 0,baseURL:void 0,fetch:void 0,headers:void 0}))),requestHeaders$1=(headers,apiKey)=>clean$2({Authorization:apiKey===void 0?void 0:`Bearer ${apiKey}`,...headers}),requestURL$1=(path,baseURL)=>{let base=baseURL.toString();return new URL(path,base.endsWith(`/`)?base:`${base}/`)},responseCatch$1=async res=>{if(!res.ok)throw new XSAIError$2(`Remote sent ${res.status} response: ${await res.text()}`,res);if(!res.body)throw new XSAIError$2(`Response body is empty from remote server`,res);if(!(res.body instanceof ReadableStream))throw new XSAIError$2(`Expected Response body to be a ReadableStream, but got ${String(res.body)}; Content Type is ${res.headers.get(`Content-Type`)}`,res);return res},responseJSON$1=async res=>responseCatch$1(res).then(async res2=>{let text$5=await res2.text();try{return JSON.parse(text$5)}catch{throw Error(`Failed to parse response, response body: ${text$5}`)}}),generateSpeech=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL$1(`audio/speech`,options$1.baseURL),{body:requestBody(options$1),headers:requestHeaders$1({"Content-Type":`application/json`,...options$1.headers},options$1.apiKey),method:`POST`,signal:options$1.abortSignal}).then(responseCatch$1).then(async res=>res.arrayBuffer());function calculateVolumeWithLinearNormalize(analyser){let dataBuffer=new Uint8Array(analyser.frequencyBinCount);analyser.getByteFrequencyData(dataBuffer);let volumeVector=[];for(let i$1=0;i$1<700;i$1+=80)volumeVector.push(dataBuffer[i$1]);let volumeSum=dataBuffer.map(v$1=>v$1**1.2).map(v$1=>v$1*1.2).reduce((acc,cur)=>acc+cur,0);return volumeSum/dataBuffer.length/100}function calculateVolumeWithMinMaxNormalize(analyser){let dataBuffer=new Uint8Array(analyser.frequencyBinCount);analyser.getByteFrequencyData(dataBuffer);let volumeVector=[];for(let i$1=0;i$1<700;i$1+=80)volumeVector.push(dataBuffer[i$1]);let amplifiedVolumeVector=dataBuffer.map(v$1=>v$1**1.5),min$1=Math.min(...amplifiedVolumeVector),max$1=Math.max(...amplifiedVolumeVector),range=max$1-min$1,normalizedVolumeVector;normalizedVolumeVector=range===0?amplifiedVolumeVector.map(()=>0):amplifiedVolumeVector.map(v$1=>(v$1-min$1)/range);let volumeSum=normalizedVolumeVector.reduce((acc,cur)=>acc+cur,0);return volumeSum/dataBuffer.length}function calculateVolume(analyser,mode=`linear`){switch(mode){case`linear`:return calculateVolumeWithLinearNormalize(analyser);case`minmax`:return calculateVolumeWithMinMaxNormalize(analyser)}}const useAudioContext=defineStore(`AudioContext`,()=>{let audioContext=new AudioContext;return{audioContext,calculateVolume}}),useSpeakingStore=defineStore(`SpeakingStore`,()=>{let nowSpeakingAvatarBorderOpacityMin=30,nowSpeakingAvatarBorderOpacityMax=100,mouthOpenSize=ref(0),nowSpeaking=ref(!1),nowSpeakingAvatarBorderOpacity=computed(()=>nowSpeaking.value?(nowSpeakingAvatarBorderOpacityMin+(nowSpeakingAvatarBorderOpacityMax-nowSpeakingAvatarBorderOpacityMin)*mouthOpenSize.value)/100:nowSpeakingAvatarBorderOpacityMin);return{mouthOpenSize,nowSpeaking,nowSpeakingAvatarBorderOpacity}});async function*readableStreamToAsyncIterator(res,func){let reader=res.getReader();try{for(;;){let{done,value:value$1}=await reader.read();if(done)return;yield func(value$1)}}finally{reader.releaseLock()}}const isPlainObject$2=value$1=>value$1!=null&&Object.getPrototypeOf(value$1)===Object.prototype,merge$2=(defaults,user)=>{let merged={...defaults};if(!user)return merged;for(let[key$1,value$1]of Object.entries(user)){if(value$1===void 0)continue;if(isPlainObject$2(merged[key$1])&&isPlainObject$2(value$1)){merged[key$1]=merge$2(merged[key$1],value$1);continue}merged[key$1]=value$1}return merged},sleep$1=async delay=>new Promise(resolve$1=>setTimeout(resolve$1,delay));var States=function(States$1){return States$1.Literal=`literal`,States$1.Special=`special`,States$1}(States||{});function peek(array,index$1,offset$1){return index$1+offset$1<0||index$1+offset$1>=array.length-1?``:array[index$1+offset$1]}function useLlmmarkerParser(options$1){let state=States.Literal,buffer$1=``;return{async consume(textPart){for(let i$1=0;i$1`?(current+=peek(textPart,i$1,1),newState=States.Literal,i$1++):current===`<`?newState=States.Special:current===`>`&&(newState=States.Literal),state===States.Literal&&newState===States.Special?buffer$1!==``&&(await options$1.onLiteral?.(buffer$1),buffer$1=``):state===States.Special&&newState===States.Literal&&buffer$1!==``&&(buffer$1+=current,await options$1.onSpecial?.(buffer$1),buffer$1=``),state===States.Literal&&newState===States.Literal?(await options$1.onLiteral?.(current),buffer$1=``):state===States.Special&&newState===States.Literal?buffer$1=``:buffer$1+=current,state=newState}},async end(){buffer$1!==``&&(state===States.Literal?await options$1.onLiteral?.(buffer$1):buffer$1.endsWith(`|>`)&&await options$1.onSpecial?.(buffer$1))}}}const htmlVoidElements=[`area`,`base`,`basefont`,`bgsound`,`br`,`col`,`command`,`embed`,`frame`,`hr`,`image`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`];var Schema=class{constructor(property,normal,space$1){this.normal=normal,this.property=property,space$1&&(this.space=space$1)}};Schema.prototype.normal={},Schema.prototype.property={},Schema.prototype.space=void 0;function merge$3(definitions,space$1){let property={},normal={};for(let definition$29 of definitions)Object.assign(property,definition$29.property),Object.assign(normal,definition$29.normal);return new Schema(property,normal,space$1)}function normalize$1(value$1){return value$1.toLowerCase()}var Info=class{constructor(property,attribute){this.attribute=attribute,this.property=property}};Info.prototype.attribute=``,Info.prototype.booleanish=!1,Info.prototype.boolean=!1,Info.prototype.commaOrSpaceSeparated=!1,Info.prototype.commaSeparated=!1,Info.prototype.defined=!1,Info.prototype.mustUseProperty=!1,Info.prototype.number=!1,Info.prototype.overloadedBoolean=!1,Info.prototype.property=``,Info.prototype.spaceSeparated=!1,Info.prototype.space=void 0;var types_exports={};__export(types_exports,{boolean:()=>boolean,booleanish:()=>booleanish,commaOrSpaceSeparated:()=>commaOrSpaceSeparated,commaSeparated:()=>commaSeparated,number:()=>number,overloadedBoolean:()=>overloadedBoolean,spaceSeparated:()=>spaceSeparated});let powers=0;const boolean=increment(),booleanish=increment(),overloadedBoolean=increment(),number=increment(),spaceSeparated=increment(),commaSeparated=increment(),commaOrSpaceSeparated=increment();function increment(){return 2**++powers}const checks=Object.keys(types_exports);var DefinedInfo=class extends Info{constructor(property,attribute,mask,space$1){let index$1=-1;if(super(property,attribute),mark(this,`space`,space$1),typeof mask==`number`)for(;++index$14&&normal.slice(0,4)===`data`&&valid.test(value$1)){if(value$1.charAt(4)===`-`){let rest=value$1.slice(5).replace(dash,camelcase);property=`data`+rest.charAt(0).toUpperCase()+rest.slice(1)}else{let rest=value$1.slice(4);if(!dash.test(rest)){let dashes=rest.replace(cap,kebab);dashes.charAt(0)!==`-`&&(dashes=`-`+dashes),value$1=`data`+dashes}}Type=DefinedInfo}return new Type(property,value$1)}function kebab($0){return`-`+$0.toLowerCase()}function camelcase($0){return $0.charAt(1).toUpperCase()}const html$1=merge$3([aria,html$4,xlink,xmlns,xml],`html`),svg=merge$3([aria,svg$1,xlink,xmlns,xml],`svg`),own$7={}.hasOwnProperty;function zwitch(key$1,options$1){let settings=options$1||{};function one$3(value$1,...parameters){let fn$5=one$3.invalid,handlers$3=one$3.handlers;if(value$1&&own$7.call(value$1,key$1)){let id=String(value$1[key$1]);fn$5=own$7.call(handlers$3,id)?handlers$3[id]:one$3.unknown}if(fn$5)return fn$5.call(this,value$1,...parameters)}return one$3.handlers=settings.handlers||{},one$3.invalid=settings.invalid,one$3.unknown=settings.unknown,one$3}const defaultSubsetRegex=/["&'<>`]/g,surrogatePairsRegex=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,controlCharactersRegex=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,regexEscapeRegex=/[|\\{}()[\]^$+*?.]/g,subsetToRegexCache=new WeakMap;function core(value$1,options$1){if(value$1=value$1.replace(options$1.subset?charactersToExpressionCached(options$1.subset):defaultSubsetRegex,basic),options$1.subset||options$1.escapeOnly)return value$1;return value$1.replace(surrogatePairsRegex,surrogate).replace(controlCharactersRegex,basic);function surrogate(pair,index$1,all$3){return options$1.format((pair.charCodeAt(0)-55296)*1024+pair.charCodeAt(1)-56320+65536,all$3.charCodeAt(index$1+2),options$1)}function basic(character,index$1,all$3){return options$1.format(character.charCodeAt(0),all$3.charCodeAt(index$1+1),options$1)}}function charactersToExpressionCached(subset$4){let cached=subsetToRegexCache.get(subset$4);return cached||(cached=charactersToExpression(subset$4),subsetToRegexCache.set(subset$4,cached)),cached}function charactersToExpression(subset$4){let groups=[],index$1=-1;for(;++index$1`,OElig:`Œ`,oelig:`œ`,Scaron:`Š`,scaron:`š`,Yuml:`Ÿ`,circ:`ˆ`,tilde:`˜`,ensp:` `,emsp:` `,thinsp:` `,zwnj:`‌`,zwj:`‍`,lrm:`‎`,rlm:`‏`,ndash:`–`,mdash:`—`,lsquo:`‘`,rsquo:`’`,sbquo:`‚`,ldquo:`“`,rdquo:`”`,bdquo:`„`,dagger:`†`,Dagger:`‡`,permil:`‰`,lsaquo:`‹`,rsaquo:`›`,euro:`€`},dangerous=[`cent`,`copy`,`divide`,`gt`,`lt`,`not`,`para`,`times`],own$6={}.hasOwnProperty,characters={};let key;for(key in characterEntitiesHtml4)own$6.call(characterEntitiesHtml4,key)&&(characters[characterEntitiesHtml4[key]]=key);const notAlphanumericRegex=/[^\dA-Za-z]/;function toNamed(code$1,next,omit,attribute){let character=String.fromCharCode(code$1);if(own$6.call(characters,character)){let name$2=characters[character],value$1=`&`+name$2;return omit&&characterEntitiesLegacy.includes(name$2)&&!dangerous.includes(name$2)&&(!attribute||next&&next!==61&¬AlphanumericRegex.test(String.fromCharCode(next)))?value$1:value$1+`;`}return``}function formatSmart(code$1,next,options$1){let numeric=toHexadecimal(code$1,next,options$1.omitOptionalSemicolons),named$1;if((options$1.useNamedReferences||options$1.useShortestReferences)&&(named$1=toNamed(code$1,next,options$1.omitOptionalSemicolons,options$1.attribute)),(options$1.useShortestReferences||!named$1)&&options$1.useShortestReferences){let decimal=toDecimal(code$1,next,options$1.omitOptionalSemicolons);decimal.length|^->||--!>|`],commentEntitySubset=[`<`,`>`];function comment$1(node$1,_1,_2,state){return state.settings.bogusComments?``:``;function encode($0){return stringifyEntities($0,Object.assign({},state.settings.characterReferences,{subset:commentEntitySubset}))}}function doctype$1(_1,_2,_3,state){return``}function ccount(value$1,character){let source=String(value$1);if(typeof character!=`string`)throw TypeError(`Expected character`);let count$1=0,index$1=source.indexOf(character);for(;index$1!==-1;)count$1++,index$1=source.indexOf(character,index$1+character.length);return count$1}function stringify(values,options$1){let settings=options$1||{},input=values[values.length-1]===``?[...values,``]:values;return input.join((settings.padRight?` `:``)+`,`+(settings.padLeft===!1?``:` `)).trim()}function stringify$1(values){return values.join(` `).trim()}const re$1=/[ \t\n\f\r]/g;function whitespace(thing){return typeof thing==`object`?thing.type===`text`?empty$1(thing.value):!1:empty$1(thing)}function empty$1(value$1){return value$1.replace(re$1,``)===``}const siblingAfter=siblings(1),siblingBefore=siblings(-1),emptyChildren$1=[];function siblings(increment$1){return sibling;function sibling(parent,index$1,includeWhitespace){let siblings$2=parent?parent.children:emptyChildren$1,offset$1=(index$1||0)+increment$1,next=siblings$2[offset$1];if(!includeWhitespace)for(;next&&whitespace(next);)offset$1+=increment$1,next=siblings$2[offset$1];return next}}const own$5={}.hasOwnProperty;function omission(handlers$3){return omit;function omit(node$1,index$1,parent){return own$5.call(handlers$3,node$1.tagName)&&handlers$3[node$1.tagName](node$1,index$1,parent)}}const closing=omission({body:body$1,caption:headOrColgroupOrCaption,colgroup:headOrColgroupOrCaption,dd,dt:dt$1,head:headOrColgroupOrCaption,html:html$3,li,optgroup,option,p,rp:rubyElement,rt:rubyElement,tbody:tbody$1,td:cells,tfoot,th:cells,thead,tr});function headOrColgroupOrCaption(_$2,index$1,parent){let next=siblingAfter(parent,index$1,!0);return!next||next.type!==`comment`&&!(next.type===`text`&&whitespace(next.value.charAt(0)))}function html$3(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type!==`comment`}function body$1(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type!==`comment`}function p(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return next?next.type===`element`&&(next.tagName===`address`||next.tagName===`article`||next.tagName===`aside`||next.tagName===`blockquote`||next.tagName===`details`||next.tagName===`div`||next.tagName===`dl`||next.tagName===`fieldset`||next.tagName===`figcaption`||next.tagName===`figure`||next.tagName===`footer`||next.tagName===`form`||next.tagName===`h1`||next.tagName===`h2`||next.tagName===`h3`||next.tagName===`h4`||next.tagName===`h5`||next.tagName===`h6`||next.tagName===`header`||next.tagName===`hgroup`||next.tagName===`hr`||next.tagName===`main`||next.tagName===`menu`||next.tagName===`nav`||next.tagName===`ol`||next.tagName===`p`||next.tagName===`pre`||next.tagName===`section`||next.tagName===`table`||next.tagName===`ul`):!parent||!(parent.type===`element`&&(parent.tagName===`a`||parent.tagName===`audio`||parent.tagName===`del`||parent.tagName===`ins`||parent.tagName===`map`||parent.tagName===`noscript`||parent.tagName===`video`))}function li(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&next.tagName===`li`}function dt$1(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!!(next&&next.type===`element`&&(next.tagName===`dt`||next.tagName===`dd`))}function dd(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`dt`||next.tagName===`dd`)}function rubyElement(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`rp`||next.tagName===`rt`)}function optgroup(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&next.tagName===`optgroup`}function option(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`option`||next.tagName===`optgroup`)}function thead(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!!(next&&next.type===`element`&&(next.tagName===`tbody`||next.tagName===`tfoot`))}function tbody$1(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`tbody`||next.tagName===`tfoot`)}function tfoot(_$2,index$1,parent){return!siblingAfter(parent,index$1)}function tr(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&next.tagName===`tr`}function cells(_$2,index$1,parent){let next=siblingAfter(parent,index$1);return!next||next.type===`element`&&(next.tagName===`td`||next.tagName===`th`)}const opening=omission({body,colgroup,head,html:html$2,tbody});function html$2(node$1){let head$1=siblingAfter(node$1,-1);return!head$1||head$1.type!==`comment`}function head(node$1){let seen$1=new Set;for(let child$1 of node$1.children)if(child$1.type===`element`&&(child$1.tagName===`base`||child$1.tagName===`title`)){if(seen$1.has(child$1.tagName))return!1;seen$1.add(child$1.tagName)}let child=node$1.children[0];return!child||child.type===`element`}function body(node$1){let head$1=siblingAfter(node$1,-1,!0);return!head$1||head$1.type!==`comment`&&!(head$1.type===`text`&&whitespace(head$1.value.charAt(0)))&&!(head$1.type===`element`&&(head$1.tagName===`meta`||head$1.tagName===`link`||head$1.tagName===`script`||head$1.tagName===`style`||head$1.tagName===`template`))}function colgroup(node$1,index$1,parent){let previous$1=siblingBefore(parent,index$1),head$1=siblingAfter(node$1,-1,!0);return parent&&previous$1&&previous$1.type===`element`&&previous$1.tagName===`colgroup`&&closing(previous$1,parent.children.indexOf(previous$1),parent)?!1:!!(head$1&&head$1.type===`element`&&head$1.tagName===`col`)}function tbody(node$1,index$1,parent){let previous$1=siblingBefore(parent,index$1),head$1=siblingAfter(node$1,-1);return parent&&previous$1&&previous$1.type===`element`&&(previous$1.tagName===`thead`||previous$1.tagName===`tbody`)&&closing(previous$1,parent.children.indexOf(previous$1),parent)?!1:!!(head$1&&head$1.type===`element`&&head$1.tagName===`tr`)}const constants={name:[[` \f\r &/=>`.split(``),` \f\r "&'/=>\``.split(``)],[`\0 \f\r "&'/<=>`.split(``),`\0 @@ -3860,7 +3860,7 @@ About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guid \f\r &>`.split(``),`\0 \f\r "&'<=>\``.split(``)],[`\0 \f\r "&'<=>\``.split(``),`\0 -\f\r "&'<=>\``.split(``)]],single:[[`&'`.split(``),`"&'\``.split(``)],[`\0&'`.split(``),`\0"&'\``.split(``)]],double:[[`"&`.split(``),`"&'\``.split(``)],[`\0"&`.split(``),`\0"&'\``.split(``)]]};function element$2(node$1,index$1,parent,state){let schema=state.schema,omit=schema.space===`svg`?!1:state.settings.omitOptionalTags,selfClosing=schema.space===`svg`?state.settings.closeEmptyElements:state.settings.voids.includes(node$1.tagName.toLowerCase()),parts=[],last;schema.space===`html`&&node$1.tagName===`svg`&&(state.schema=svg);let attributes=serializeAttributes(state,node$1.properties),content$2=state.all(schema.space===`html`&&node$1.tagName===`template`?node$1.content:node$1);return state.schema=schema,content$2&&(selfClosing=!1),(attributes||!omit||!opening(node$1,index$1,parent))&&(parts.push(`<`,node$1.tagName,attributes?` `+attributes:``),selfClosing&&(schema.space===`svg`||state.settings.closeSelfClosing)&&(last=attributes.charAt(attributes.length-1),(!state.settings.tightSelfClosing||last===`/`||last&&last!==`"`&&last!==`'`)&&parts.push(` `),parts.push(`/`)),parts.push(`>`)),parts.push(content$2),!selfClosing&&(!omit||!closing(node$1,index$1,parent))&&parts.push(``),parts.join(``)}function serializeAttributes(state,properties){let values=[],index$1=-1,key$1;if(properties){for(key$1 in properties)if(properties[key$1]!==null&&properties[key$1]!==void 0){let value$1=serializeAttribute(state,key$1,properties[key$1]);value$1&&values.push(value$1)}}for(;++index$1ccount(value$1,state.alternative)&&(quote=state.alternative),result=quote+stringifyEntities(value$1,Object.assign({},state.settings.characterReferences,{subset:(quote===`'`?constants.single:constants.double)[x$3][y$2],attribute:!0}))+quote),name$2+(result&&`=`+result))}const textEntitySubset=[`<`,`&`];function text$4(node$1,_$2,parent,state){return parent&&parent.type===`element`&&(parent.tagName===`script`||parent.tagName===`style`)?node$1.value:stringifyEntities(node$1.value,Object.assign({},state.settings.characterReferences,{subset:textEntitySubset}))}function raw$1(node$1,index$1,parent,state){return state.settings.allowDangerousHtml?node$1.value:text$4(node$1,index$1,parent,state)}function root$1(node$1,_1,_2,state){return state.all(node$1)}const handle=zwitch(`type`,{invalid,unknown,handlers:{comment:comment$1,doctype:doctype$1,element:element$2,raw:raw$1,root:root$1,text:text$4}});function invalid(node$1){throw Error("Expected node, not `"+node$1+"`")}function unknown(node_){let node$1=node_;throw Error("Cannot compile unknown node `"+node$1.type+"`")}const emptyOptions$2={},emptyCharacterReferences={},emptyChildren=[];function toHtml(tree,options$1){let options_=options$1||emptyOptions$2,quote=options_.quote||`"`,alternative=quote===`"`?`'`:`"`;if(quote!==`"`&"e!==`'`)throw Error("Invalid quote `"+quote+"`, expected `'` or `\"`");let state={one:one$2,all:all$2,settings:{omitOptionalTags:options_.omitOptionalTags||!1,allowParseErrors:options_.allowParseErrors||!1,allowDangerousCharacters:options_.allowDangerousCharacters||!1,quoteSmart:options_.quoteSmart||!1,preferUnquoted:options_.preferUnquoted||!1,tightAttributes:options_.tightAttributes||!1,upperDoctype:options_.upperDoctype||!1,tightDoctype:options_.tightDoctype||!1,bogusComments:options_.bogusComments||!1,tightCommaSeparatedLists:options_.tightCommaSeparatedLists||!1,tightSelfClosing:options_.tightSelfClosing||!1,collapseEmptyAttributes:options_.collapseEmptyAttributes||!1,allowDangerousHtml:options_.allowDangerousHtml||!1,voids:options_.voids||htmlVoidElements,characterReferences:options_.characterReferences||emptyCharacterReferences,closeSelfClosing:options_.closeSelfClosing||!1,closeEmptyElements:options_.closeEmptyElements||!1},schema:options_.space===`svg`?svg:html$1,quote,alternative};return state.one(Array.isArray(tree)?{type:`root`,children:tree}:tree,void 0,void 0)}function one$2(node$1,index$1,parent){return handle(node$1,index$1,parent,this)}function all$2(parent){let results=[],children=parent&&parent.children||emptyChildren,index$1=-1;for(;++index$1end?0:end+start:start>end?end:start,remove$2=remove$2>0?remove$2:0,items.length<1e4)parameters=Array.from(items),parameters.unshift(start,remove$2),list$2.splice(...parameters);else for(remove$2&&list$2.splice(start,remove$2);chunkStart0?(splice(list$2,list$2.length,0,items),list$2):items}const hasOwnProperty={}.hasOwnProperty;function combineExtensions(extensions){let all$3={},index$1=-1;for(;++index$113&&code$1<32||code$1>126&&code$1<160||code$1>55295&&code$1<57344||code$1>64975&&code$1<65008||(code$1&65535)==65535||(code$1&65535)==65534||code$1>1114111?`�`:String.fromCodePoint(code$1)}function normalizeIdentifier(value$1){return value$1.replace(/[\t\n\r ]+/g,` `).replace(/^ | $/g,``).toLowerCase().toUpperCase()}const asciiAlpha=regexCheck(/[A-Za-z]/),asciiAlphanumeric=regexCheck(/[\dA-Za-z]/),asciiAtext=regexCheck(/[#-'*+\--9=?A-Z^-~]/);function asciiControl(code$1){return code$1!==null&&(code$1<32||code$1===127)}const asciiDigit=regexCheck(/\d/),asciiHexDigit=regexCheck(/[\dA-Fa-f]/),asciiPunctuation=regexCheck(/[!-/:-@[-`{-~]/);function markdownLineEnding(code$1){return code$1!==null&&code$1<-2}function markdownLineEndingOrSpace(code$1){return code$1!==null&&(code$1<0||code$1===32)}function markdownSpace(code$1){return code$1===-2||code$1===-1||code$1===32}const unicodePunctuation=regexCheck(/\p{P}|\p{S}/u),unicodeWhitespace=regexCheck(/\s/);function regexCheck(regex){return check$1;function check$1(code$1){return code$1!==null&&code$1>-1&®ex.test(String.fromCharCode(code$1))}}function normalizeUri(value$1){let result=[],index$1=-1,start=0,skip=0;for(;++index$155295&&code$1<57344){let next=value$1.charCodeAt(index$1+1);code$1<56320&&next>56319&&next<57344?(replace=String.fromCharCode(code$1,next),skip=1):replace=`�`}else replace=String.fromCharCode(code$1);replace&&(result.push(value$1.slice(start,index$1),encodeURIComponent(replace)),start=index$1+skip+1,replace=``),skip&&(index$1+=skip,skip=0)}return result.join(``)+value$1.slice(start)}function factorySpace(effects,ok$2,type,max$1){let limit=max$1?max$1-1:1/0,size$1=0;return start;function start(code$1){return markdownSpace(code$1)?(effects.enter(type),prefix(code$1)):ok$2(code$1)}function prefix(code$1){return markdownSpace(code$1)&&size$1++lineStartOffset))return;let indexBeforeExits=self$1.events.length,indexBeforeFlow=indexBeforeExits,seen$1,point$3;for(;indexBeforeFlow--;)if(self$1.events[indexBeforeFlow][0]===`exit`&&self$1.events[indexBeforeFlow][1].type===`chunkFlow`){if(seen$1){point$3=self$1.events[indexBeforeFlow][1].end;break}seen$1=!0}for(exitContainers(continued),index$1=indexBeforeExits;index$1size$1;){let entry=stack$1[index$1];self$1.containerState=entry[1],entry[0].exit.call(self$1,effects)}stack$1.length=size$1}function closeFlow(){childFlow.write([null]),childToken=void 0,childFlow=void 0,self$1.containerState._closeFlow=void 0}}function tokenizeContainer(effects,ok$2,nok){return factorySpace(effects,effects.attempt(this.parser.constructs.document,ok$2,nok),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}function classifyCharacter(code$1){if(code$1===null||markdownLineEndingOrSpace(code$1)||unicodeWhitespace(code$1))return 1;if(unicodePunctuation(code$1))return 2}function resolveAll(constructs$1,events,context$1){let called=[],index$1=-1;for(;++index$11&&events[index$1][1].end.offset-events[index$1][1].start.offset>1?2:1;let start={...events[open$1][1].end},end={...events[index$1][1].start};movePoint(start,-use),movePoint(end,use),openingSequence={type:use>1?`strongSequence`:`emphasisSequence`,start,end:{...events[open$1][1].end}},closingSequence={type:use>1?`strongSequence`:`emphasisSequence`,start:{...events[index$1][1].start},end},text$5={type:use>1?`strongText`:`emphasisText`,start:{...events[open$1][1].end},end:{...events[index$1][1].start}},group={type:use>1?`strong`:`emphasis`,start:{...openingSequence.start},end:{...closingSequence.end}},events[open$1][1].end={...openingSequence.start},events[index$1][1].start={...closingSequence.end},nextEvents=[],events[open$1][1].end.offset-events[open$1][1].start.offset&&(nextEvents=push(nextEvents,[[`enter`,events[open$1][1],context$1],[`exit`,events[open$1][1],context$1]])),nextEvents=push(nextEvents,[[`enter`,group,context$1],[`enter`,openingSequence,context$1],[`exit`,openingSequence,context$1],[`enter`,text$5,context$1]]),nextEvents=push(nextEvents,resolveAll(context$1.parser.constructs.insideSpan.null,events.slice(open$1+1,index$1),context$1)),nextEvents=push(nextEvents,[[`exit`,text$5,context$1],[`enter`,closingSequence,context$1],[`exit`,closingSequence,context$1],[`exit`,group,context$1]]),events[index$1][1].end.offset-events[index$1][1].start.offset?(offset$1=2,nextEvents=push(nextEvents,[[`enter`,events[index$1][1],context$1],[`exit`,events[index$1][1],context$1]])):offset$1=0,splice(events,open$1-1,index$1-open$1+3,nextEvents),index$1=open$1+nextEvents.length-offset$1-2;break}}for(index$1=-1;++index$10&&markdownSpace(code$1)?factorySpace(effects,beforeContentChunk,`linePrefix`,initialPrefix+1)(code$1):beforeContentChunk(code$1)}function beforeContentChunk(code$1){return code$1===null||markdownLineEnding(code$1)?effects.check(nonLazyContinuation,atNonLazyBreak,after)(code$1):(effects.enter(`codeFlowValue`),contentChunk(code$1))}function contentChunk(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`codeFlowValue`),beforeContentChunk(code$1)):(effects.consume(code$1),contentChunk)}function after(code$1){return effects.exit(`codeFenced`),ok$2(code$1)}function tokenizeCloseStart(effects$1,ok$3,nok$1){let size$1=0;return startBefore;function startBefore(code$1){return effects$1.enter(`lineEnding`),effects$1.consume(code$1),effects$1.exit(`lineEnding`),start$1}function start$1(code$1){return effects$1.enter(`codeFencedFence`),markdownSpace(code$1)?factorySpace(effects$1,beforeSequenceClose,`linePrefix`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(code$1):beforeSequenceClose(code$1)}function beforeSequenceClose(code$1){return code$1===marker?(effects$1.enter(`codeFencedFenceSequence`),sequenceClose(code$1)):nok$1(code$1)}function sequenceClose(code$1){return code$1===marker?(size$1++,effects$1.consume(code$1),sequenceClose):size$1>=sizeOpen?(effects$1.exit(`codeFencedFenceSequence`),markdownSpace(code$1)?factorySpace(effects$1,sequenceCloseAfter,`whitespace`)(code$1):sequenceCloseAfter(code$1)):nok$1(code$1)}function sequenceCloseAfter(code$1){return code$1===null||markdownLineEnding(code$1)?(effects$1.exit(`codeFencedFence`),ok$3(code$1)):nok$1(code$1)}}}function tokenizeNonLazyContinuation(effects,ok$2,nok){let self$1=this;return start;function start(code$1){return code$1===null?nok(code$1):(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),lineStart)}function lineStart(code$1){return self$1.parser.lazy[self$1.now().line]?nok(code$1):ok$2(code$1)}}const codeIndented={name:`codeIndented`,tokenize:tokenizeCodeIndented},furtherStart={partial:!0,tokenize:tokenizeFurtherStart};function tokenizeCodeIndented(effects,ok$2,nok){let self$1=this;return start;function start(code$1){return effects.enter(`codeIndented`),factorySpace(effects,afterPrefix,`linePrefix`,5)(code$1)}function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return tail&&tail[1].type===`linePrefix`&&tail[2].sliceSerialize(tail[1],!0).length>=4?atBreak(code$1):nok(code$1)}function atBreak(code$1){return code$1===null?after(code$1):markdownLineEnding(code$1)?effects.attempt(furtherStart,atBreak,after)(code$1):(effects.enter(`codeFlowValue`),inside(code$1))}function inside(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`codeFlowValue`),atBreak(code$1)):(effects.consume(code$1),inside)}function after(code$1){return effects.exit(`codeIndented`),ok$2(code$1)}}function tokenizeFurtherStart(effects,ok$2,nok){let self$1=this;return furtherStart$1;function furtherStart$1(code$1){return self$1.parser.lazy[self$1.now().line]?nok(code$1):markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),furtherStart$1):factorySpace(effects,afterPrefix,`linePrefix`,5)(code$1)}function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return tail&&tail[1].type===`linePrefix`&&tail[2].sliceSerialize(tail[1],!0).length>=4?ok$2(code$1):markdownLineEnding(code$1)?furtherStart$1(code$1):nok(code$1)}}const codeText={name:`codeText`,previous,resolve:resolveCodeText,tokenize:tokenizeCodeText};function resolveCodeText(events){let tailExitIndex=events.length-4,headEnterIndex=3,index$1,enter;if((events[headEnterIndex][1].type===`lineEnding`||events[headEnterIndex][1].type===`space`)&&(events[tailExitIndex][1].type===`lineEnding`||events[tailExitIndex][1].type===`space`)){for(index$1=headEnterIndex;++index$1=this.left.length+this.right.length)throw RangeError("Cannot access index `"+index$1+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return index$1this.left.length)return this.right.slice(this.right.length-stop$1+this.left.length,this.right.length-start+this.left.length).reverse();let list$2=this.left.slice(start);return list$2.push(...this.right.slice(this.right.length-stop$1+this.left.length).reverse()),list$2}splice(start,deleteCount,items){let count$1=deleteCount||0;this.setCursor(Math.trunc(start));let removed=this.right.splice(this.right.length-count$1,1/0);return items&&chunkedPush(this.left,items),removed.reverse()}pop(){return this.setCursor(1/0),this.left.pop()}push(item){this.setCursor(1/0),this.left.push(item)}pushMany(items){this.setCursor(1/0),chunkedPush(this.left,items)}unshift(item){this.setCursor(0),this.right.push(item)}unshiftMany(items){this.setCursor(0),chunkedPush(this.right,items.reverse())}setCursor(n$2){if(!(n$2===this.left.length||n$2>this.left.length&&this.right.length===0||n$2<0&&this.left.length===0))if(n$2=4?ok$2(code$1):effects.interrupt(self$1.parser.constructs.flow,nok,ok$2)(code$1)}}function factoryDestination(effects,ok$2,nok,type,literalType$1,literalMarkerType,rawType,stringType$1,max$1){let limit=max$1||1/0,balance=0;return start;function start(code$1){return code$1===60?(effects.enter(type),effects.enter(literalType$1),effects.enter(literalMarkerType),effects.consume(code$1),effects.exit(literalMarkerType),enclosedBefore):code$1===null||code$1===32||code$1===41||asciiControl(code$1)?nok(code$1):(effects.enter(type),effects.enter(rawType),effects.enter(stringType$1),effects.enter(`chunkString`,{contentType:`string`}),raw$3(code$1))}function enclosedBefore(code$1){return code$1===62?(effects.enter(literalMarkerType),effects.consume(code$1),effects.exit(literalMarkerType),effects.exit(literalType$1),effects.exit(type),ok$2):(effects.enter(stringType$1),effects.enter(`chunkString`,{contentType:`string`}),enclosed(code$1))}function enclosed(code$1){return code$1===62?(effects.exit(`chunkString`),effects.exit(stringType$1),enclosedBefore(code$1)):code$1===null||code$1===60||markdownLineEnding(code$1)?nok(code$1):(effects.consume(code$1),code$1===92?enclosedEscape:enclosed)}function enclosedEscape(code$1){return code$1===60||code$1===62||code$1===92?(effects.consume(code$1),enclosed):enclosed(code$1)}function raw$3(code$1){return!balance&&(code$1===null||code$1===41||markdownLineEndingOrSpace(code$1))?(effects.exit(`chunkString`),effects.exit(stringType$1),effects.exit(rawType),effects.exit(type),ok$2(code$1)):balance999||code$1===null||code$1===91||code$1===93&&!seen$1||code$1===94&&!size$1&&`_hiddenFootnoteSupport`in self$1.parser.constructs?nok(code$1):code$1===93?(effects.exit(stringType$1),effects.enter(markerType),effects.consume(code$1),effects.exit(markerType),effects.exit(type),ok$2):markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),atBreak):(effects.enter(`chunkString`,{contentType:`string`}),labelInside(code$1))}function labelInside(code$1){return code$1===null||code$1===91||code$1===93||markdownLineEnding(code$1)||size$1++>999?(effects.exit(`chunkString`),atBreak(code$1)):(effects.consume(code$1),seen$1||=!markdownSpace(code$1),code$1===92?labelEscape:labelInside)}function labelEscape(code$1){return code$1===91||code$1===92||code$1===93?(effects.consume(code$1),size$1++,labelInside):labelInside(code$1)}}function factoryTitle(effects,ok$2,nok,type,markerType,stringType$1){let marker;return start;function start(code$1){return code$1===34||code$1===39||code$1===40?(effects.enter(type),effects.enter(markerType),effects.consume(code$1),effects.exit(markerType),marker=code$1===40?41:code$1,begin):nok(code$1)}function begin(code$1){return code$1===marker?(effects.enter(markerType),effects.consume(code$1),effects.exit(markerType),effects.exit(type),ok$2):(effects.enter(stringType$1),atBreak(code$1))}function atBreak(code$1){return code$1===marker?(effects.exit(stringType$1),begin(marker)):code$1===null?nok(code$1):markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),factorySpace(effects,atBreak,`linePrefix`)):(effects.enter(`chunkString`,{contentType:`string`}),inside(code$1))}function inside(code$1){return code$1===marker||code$1===null||markdownLineEnding(code$1)?(effects.exit(`chunkString`),atBreak(code$1)):(effects.consume(code$1),code$1===92?escape$1:inside)}function escape$1(code$1){return code$1===marker||code$1===92?(effects.consume(code$1),inside):inside(code$1)}}function factoryWhitespace(effects,ok$2){let seen$1;return start;function start(code$1){return markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),seen$1=!0,start):markdownSpace(code$1)?factorySpace(effects,start,seen$1?`linePrefix`:`lineSuffix`)(code$1):ok$2(code$1)}}const definition={name:`definition`,tokenize:tokenizeDefinition},titleBefore={partial:!0,tokenize:tokenizeTitleBefore};function tokenizeDefinition(effects,ok$2,nok){let self$1=this,identifier;return start;function start(code$1){return effects.enter(`definition`),before(code$1)}function before(code$1){return factoryLabel.call(self$1,effects,labelAfter,nok,`definitionLabel`,`definitionLabelMarker`,`definitionLabelString`)(code$1)}function labelAfter(code$1){return identifier=normalizeIdentifier(self$1.sliceSerialize(self$1.events[self$1.events.length-1][1]).slice(1,-1)),code$1===58?(effects.enter(`definitionMarker`),effects.consume(code$1),effects.exit(`definitionMarker`),markerAfter):nok(code$1)}function markerAfter(code$1){return markdownLineEndingOrSpace(code$1)?factoryWhitespace(effects,destinationBefore)(code$1):destinationBefore(code$1)}function destinationBefore(code$1){return factoryDestination(effects,destinationAfter,nok,`definitionDestination`,`definitionDestinationLiteral`,`definitionDestinationLiteralMarker`,`definitionDestinationRaw`,`definitionDestinationString`)(code$1)}function destinationAfter(code$1){return effects.attempt(titleBefore,after,after)(code$1)}function after(code$1){return markdownSpace(code$1)?factorySpace(effects,afterWhitespace,`whitespace`)(code$1):afterWhitespace(code$1)}function afterWhitespace(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`definition`),self$1.parser.defined.push(identifier),ok$2(code$1)):nok(code$1)}}function tokenizeTitleBefore(effects,ok$2,nok){return titleBefore$1;function titleBefore$1(code$1){return markdownLineEndingOrSpace(code$1)?factoryWhitespace(effects,beforeMarker)(code$1):nok(code$1)}function beforeMarker(code$1){return factoryTitle(effects,titleAfter,nok,`definitionTitle`,`definitionTitleMarker`,`definitionTitleString`)(code$1)}function titleAfter(code$1){return markdownSpace(code$1)?factorySpace(effects,titleAfterOptionalWhitespace,`whitespace`)(code$1):titleAfterOptionalWhitespace(code$1)}function titleAfterOptionalWhitespace(code$1){return code$1===null||markdownLineEnding(code$1)?ok$2(code$1):nok(code$1)}}const hardBreakEscape={name:`hardBreakEscape`,tokenize:tokenizeHardBreakEscape};function tokenizeHardBreakEscape(effects,ok$2,nok){return start;function start(code$1){return effects.enter(`hardBreakEscape`),effects.consume(code$1),after}function after(code$1){return markdownLineEnding(code$1)?(effects.exit(`hardBreakEscape`),ok$2(code$1)):nok(code$1)}}const headingAtx={name:`headingAtx`,resolve:resolveHeadingAtx,tokenize:tokenizeHeadingAtx};function resolveHeadingAtx(events,context$1){let contentEnd=events.length-2,contentStart=3,content$2,text$5;return events[contentStart][1].type===`whitespace`&&(contentStart+=2),contentEnd-2>contentStart&&events[contentEnd][1].type===`whitespace`&&(contentEnd-=2),events[contentEnd][1].type===`atxHeadingSequence`&&(contentStart===contentEnd-1||contentEnd-4>contentStart&&events[contentEnd-2][1].type===`whitespace`)&&(contentEnd-=contentStart+1===contentEnd?2:4),contentEnd>contentStart&&(content$2={type:`atxHeadingText`,start:events[contentStart][1].start,end:events[contentEnd][1].end},text$5={type:`chunkText`,start:events[contentStart][1].start,end:events[contentEnd][1].end,contentType:`text`},splice(events,contentStart,contentEnd-contentStart+1,[[`enter`,content$2,context$1],[`enter`,text$5,context$1],[`exit`,text$5,context$1],[`exit`,content$2,context$1]])),events}function tokenizeHeadingAtx(effects,ok$2,nok){let size$1=0;return start;function start(code$1){return effects.enter(`atxHeading`),before(code$1)}function before(code$1){return effects.enter(`atxHeadingSequence`),sequenceOpen(code$1)}function sequenceOpen(code$1){return code$1===35&&size$1++<6?(effects.consume(code$1),sequenceOpen):code$1===null||markdownLineEndingOrSpace(code$1)?(effects.exit(`atxHeadingSequence`),atBreak(code$1)):nok(code$1)}function atBreak(code$1){return code$1===35?(effects.enter(`atxHeadingSequence`),sequenceFurther(code$1)):code$1===null||markdownLineEnding(code$1)?(effects.exit(`atxHeading`),ok$2(code$1)):markdownSpace(code$1)?factorySpace(effects,atBreak,`whitespace`)(code$1):(effects.enter(`atxHeadingText`),data$10(code$1))}function sequenceFurther(code$1){return code$1===35?(effects.consume(code$1),sequenceFurther):(effects.exit(`atxHeadingSequence`),atBreak(code$1))}function data$10(code$1){return code$1===null||code$1===35||markdownLineEndingOrSpace(code$1)?(effects.exit(`atxHeadingText`),atBreak(code$1)):(effects.consume(code$1),data$10)}}const htmlBlockNames=`address.article.aside.base.basefont.blockquote.body.caption.center.col.colgroup.dd.details.dialog.dir.div.dl.dt.fieldset.figcaption.figure.footer.form.frame.frameset.h1.h2.h3.h4.h5.h6.head.header.hr.html.iframe.legend.li.link.main.menu.menuitem.nav.noframes.ol.optgroup.option.p.param.search.section.summary.table.tbody.td.tfoot.th.thead.title.tr.track.ul`.split(`.`),htmlRawNames=[`pre`,`script`,`style`,`textarea`],htmlFlow={concrete:!0,name:`htmlFlow`,resolveTo:resolveToHtmlFlow,tokenize:tokenizeHtmlFlow},blankLineBefore={partial:!0,tokenize:tokenizeBlankLineBefore},nonLazyContinuationStart={partial:!0,tokenize:tokenizeNonLazyContinuationStart};function resolveToHtmlFlow(events){let index$1=events.length;for(;index$1--&&!(events[index$1][0]===`enter`&&events[index$1][1].type===`htmlFlow`););return index$1>1&&events[index$1-2][1].type===`linePrefix`&&(events[index$1][1].start=events[index$1-2][1].start,events[index$1+1][1].start=events[index$1-2][1].start,events.splice(index$1-2,2)),events}function tokenizeHtmlFlow(effects,ok$2,nok){let self$1=this,marker,closingTag,buffer$1,index$1,markerB;return start;function start(code$1){return before(code$1)}function before(code$1){return effects.enter(`htmlFlow`),effects.enter(`htmlFlowData`),effects.consume(code$1),open$1}function open$1(code$1){return code$1===33?(effects.consume(code$1),declarationOpen):code$1===47?(effects.consume(code$1),closingTag=!0,tagCloseStart):code$1===63?(effects.consume(code$1),marker=3,self$1.interrupt?ok$2:continuationDeclarationInside):asciiAlpha(code$1)?(effects.consume(code$1),buffer$1=String.fromCharCode(code$1),tagName):nok(code$1)}function declarationOpen(code$1){return code$1===45?(effects.consume(code$1),marker=2,commentOpenInside):code$1===91?(effects.consume(code$1),marker=5,index$1=0,cdataOpenInside):asciiAlpha(code$1)?(effects.consume(code$1),marker=4,self$1.interrupt?ok$2:continuationDeclarationInside):nok(code$1)}function commentOpenInside(code$1){return code$1===45?(effects.consume(code$1),self$1.interrupt?ok$2:continuationDeclarationInside):nok(code$1)}function cdataOpenInside(code$1){let value$1=`CDATA[`;return code$1===value$1.charCodeAt(index$1++)?(effects.consume(code$1),index$1===value$1.length?self$1.interrupt?ok$2:continuation:cdataOpenInside):nok(code$1)}function tagCloseStart(code$1){return asciiAlpha(code$1)?(effects.consume(code$1),buffer$1=String.fromCharCode(code$1),tagName):nok(code$1)}function tagName(code$1){if(code$1===null||code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)){let slash=code$1===47,name$2=buffer$1.toLowerCase();return!slash&&!closingTag&&htmlRawNames.includes(name$2)?(marker=1,self$1.interrupt?ok$2(code$1):continuation(code$1)):htmlBlockNames.includes(buffer$1.toLowerCase())?(marker=6,slash?(effects.consume(code$1),basicSelfClosing):self$1.interrupt?ok$2(code$1):continuation(code$1)):(marker=7,self$1.interrupt&&!self$1.parser.lazy[self$1.now().line]?nok(code$1):closingTag?completeClosingTagAfter(code$1):completeAttributeNameBefore(code$1))}return code$1===45||asciiAlphanumeric(code$1)?(effects.consume(code$1),buffer$1+=String.fromCharCode(code$1),tagName):nok(code$1)}function basicSelfClosing(code$1){return code$1===62?(effects.consume(code$1),self$1.interrupt?ok$2:continuation):nok(code$1)}function completeClosingTagAfter(code$1){return markdownSpace(code$1)?(effects.consume(code$1),completeClosingTagAfter):completeEnd(code$1)}function completeAttributeNameBefore(code$1){return code$1===47?(effects.consume(code$1),completeEnd):code$1===58||code$1===95||asciiAlpha(code$1)?(effects.consume(code$1),completeAttributeName):markdownSpace(code$1)?(effects.consume(code$1),completeAttributeNameBefore):completeEnd(code$1)}function completeAttributeName(code$1){return code$1===45||code$1===46||code$1===58||code$1===95||asciiAlphanumeric(code$1)?(effects.consume(code$1),completeAttributeName):completeAttributeNameAfter(code$1)}function completeAttributeNameAfter(code$1){return code$1===61?(effects.consume(code$1),completeAttributeValueBefore):markdownSpace(code$1)?(effects.consume(code$1),completeAttributeNameAfter):completeAttributeNameBefore(code$1)}function completeAttributeValueBefore(code$1){return code$1===null||code$1===60||code$1===61||code$1===62||code$1===96?nok(code$1):code$1===34||code$1===39?(effects.consume(code$1),markerB=code$1,completeAttributeValueQuoted):markdownSpace(code$1)?(effects.consume(code$1),completeAttributeValueBefore):completeAttributeValueUnquoted(code$1)}function completeAttributeValueQuoted(code$1){return code$1===markerB?(effects.consume(code$1),markerB=null,completeAttributeValueQuotedAfter):code$1===null||markdownLineEnding(code$1)?nok(code$1):(effects.consume(code$1),completeAttributeValueQuoted)}function completeAttributeValueUnquoted(code$1){return code$1===null||code$1===34||code$1===39||code$1===47||code$1===60||code$1===61||code$1===62||code$1===96||markdownLineEndingOrSpace(code$1)?completeAttributeNameAfter(code$1):(effects.consume(code$1),completeAttributeValueUnquoted)}function completeAttributeValueQuotedAfter(code$1){return code$1===47||code$1===62||markdownSpace(code$1)?completeAttributeNameBefore(code$1):nok(code$1)}function completeEnd(code$1){return code$1===62?(effects.consume(code$1),completeAfter):nok(code$1)}function completeAfter(code$1){return code$1===null||markdownLineEnding(code$1)?continuation(code$1):markdownSpace(code$1)?(effects.consume(code$1),completeAfter):nok(code$1)}function continuation(code$1){return code$1===45&&marker===2?(effects.consume(code$1),continuationCommentInside):code$1===60&&marker===1?(effects.consume(code$1),continuationRawTagOpen):code$1===62&&marker===4?(effects.consume(code$1),continuationClose):code$1===63&&marker===3?(effects.consume(code$1),continuationDeclarationInside):code$1===93&&marker===5?(effects.consume(code$1),continuationCdataInside):markdownLineEnding(code$1)&&(marker===6||marker===7)?(effects.exit(`htmlFlowData`),effects.check(blankLineBefore,continuationAfter,continuationStart)(code$1)):code$1===null||markdownLineEnding(code$1)?(effects.exit(`htmlFlowData`),continuationStart(code$1)):(effects.consume(code$1),continuation)}function continuationStart(code$1){return effects.check(nonLazyContinuationStart,continuationStartNonLazy,continuationAfter)(code$1)}function continuationStartNonLazy(code$1){return effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),continuationBefore}function continuationBefore(code$1){return code$1===null||markdownLineEnding(code$1)?continuationStart(code$1):(effects.enter(`htmlFlowData`),continuation(code$1))}function continuationCommentInside(code$1){return code$1===45?(effects.consume(code$1),continuationDeclarationInside):continuation(code$1)}function continuationRawTagOpen(code$1){return code$1===47?(effects.consume(code$1),buffer$1=``,continuationRawEndTag):continuation(code$1)}function continuationRawEndTag(code$1){if(code$1===62){let name$2=buffer$1.toLowerCase();return htmlRawNames.includes(name$2)?(effects.consume(code$1),continuationClose):continuation(code$1)}return asciiAlpha(code$1)&&buffer$1.length<8?(effects.consume(code$1),buffer$1+=String.fromCharCode(code$1),continuationRawEndTag):continuation(code$1)}function continuationCdataInside(code$1){return code$1===93?(effects.consume(code$1),continuationDeclarationInside):continuation(code$1)}function continuationDeclarationInside(code$1){return code$1===62?(effects.consume(code$1),continuationClose):code$1===45&&marker===2?(effects.consume(code$1),continuationDeclarationInside):continuation(code$1)}function continuationClose(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`htmlFlowData`),continuationAfter(code$1)):(effects.consume(code$1),continuationClose)}function continuationAfter(code$1){return effects.exit(`htmlFlow`),ok$2(code$1)}}function tokenizeNonLazyContinuationStart(effects,ok$2,nok){let self$1=this;return start;function start(code$1){return markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),after):nok(code$1)}function after(code$1){return self$1.parser.lazy[self$1.now().line]?nok(code$1):ok$2(code$1)}}function tokenizeBlankLineBefore(effects,ok$2,nok){return start;function start(code$1){return effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),effects.attempt(blankLine,ok$2,nok)}}const htmlText={name:`htmlText`,tokenize:tokenizeHtmlText};function tokenizeHtmlText(effects,ok$2,nok){let self$1=this,marker,index$1,returnState;return start;function start(code$1){return effects.enter(`htmlText`),effects.enter(`htmlTextData`),effects.consume(code$1),open$1}function open$1(code$1){return code$1===33?(effects.consume(code$1),declarationOpen):code$1===47?(effects.consume(code$1),tagCloseStart):code$1===63?(effects.consume(code$1),instruction$1):asciiAlpha(code$1)?(effects.consume(code$1),tagOpen):nok(code$1)}function declarationOpen(code$1){return code$1===45?(effects.consume(code$1),commentOpenInside):code$1===91?(effects.consume(code$1),index$1=0,cdataOpenInside):asciiAlpha(code$1)?(effects.consume(code$1),declaration):nok(code$1)}function commentOpenInside(code$1){return code$1===45?(effects.consume(code$1),commentEnd):nok(code$1)}function comment$2(code$1){return code$1===null?nok(code$1):code$1===45?(effects.consume(code$1),commentClose):markdownLineEnding(code$1)?(returnState=comment$2,lineEndingBefore(code$1)):(effects.consume(code$1),comment$2)}function commentClose(code$1){return code$1===45?(effects.consume(code$1),commentEnd):comment$2(code$1)}function commentEnd(code$1){return code$1===62?end(code$1):code$1===45?commentClose(code$1):comment$2(code$1)}function cdataOpenInside(code$1){let value$1=`CDATA[`;return code$1===value$1.charCodeAt(index$1++)?(effects.consume(code$1),index$1===value$1.length?cdata$1:cdataOpenInside):nok(code$1)}function cdata$1(code$1){return code$1===null?nok(code$1):code$1===93?(effects.consume(code$1),cdataClose):markdownLineEnding(code$1)?(returnState=cdata$1,lineEndingBefore(code$1)):(effects.consume(code$1),cdata$1)}function cdataClose(code$1){return code$1===93?(effects.consume(code$1),cdataEnd):cdata$1(code$1)}function cdataEnd(code$1){return code$1===62?end(code$1):code$1===93?(effects.consume(code$1),cdataEnd):cdata$1(code$1)}function declaration(code$1){return code$1===null||code$1===62?end(code$1):markdownLineEnding(code$1)?(returnState=declaration,lineEndingBefore(code$1)):(effects.consume(code$1),declaration)}function instruction$1(code$1){return code$1===null?nok(code$1):code$1===63?(effects.consume(code$1),instructionClose):markdownLineEnding(code$1)?(returnState=instruction$1,lineEndingBefore(code$1)):(effects.consume(code$1),instruction$1)}function instructionClose(code$1){return code$1===62?end(code$1):instruction$1(code$1)}function tagCloseStart(code$1){return asciiAlpha(code$1)?(effects.consume(code$1),tagClose):nok(code$1)}function tagClose(code$1){return code$1===45||asciiAlphanumeric(code$1)?(effects.consume(code$1),tagClose):tagCloseBetween(code$1)}function tagCloseBetween(code$1){return markdownLineEnding(code$1)?(returnState=tagCloseBetween,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagCloseBetween):end(code$1)}function tagOpen(code$1){return code$1===45||asciiAlphanumeric(code$1)?(effects.consume(code$1),tagOpen):code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)?tagOpenBetween(code$1):nok(code$1)}function tagOpenBetween(code$1){return code$1===47?(effects.consume(code$1),end):code$1===58||code$1===95||asciiAlpha(code$1)?(effects.consume(code$1),tagOpenAttributeName):markdownLineEnding(code$1)?(returnState=tagOpenBetween,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagOpenBetween):end(code$1)}function tagOpenAttributeName(code$1){return code$1===45||code$1===46||code$1===58||code$1===95||asciiAlphanumeric(code$1)?(effects.consume(code$1),tagOpenAttributeName):tagOpenAttributeNameAfter(code$1)}function tagOpenAttributeNameAfter(code$1){return code$1===61?(effects.consume(code$1),tagOpenAttributeValueBefore):markdownLineEnding(code$1)?(returnState=tagOpenAttributeNameAfter,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagOpenAttributeNameAfter):tagOpenBetween(code$1)}function tagOpenAttributeValueBefore(code$1){return code$1===null||code$1===60||code$1===61||code$1===62||code$1===96?nok(code$1):code$1===34||code$1===39?(effects.consume(code$1),marker=code$1,tagOpenAttributeValueQuoted):markdownLineEnding(code$1)?(returnState=tagOpenAttributeValueBefore,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagOpenAttributeValueBefore):(effects.consume(code$1),tagOpenAttributeValueUnquoted)}function tagOpenAttributeValueQuoted(code$1){return code$1===marker?(effects.consume(code$1),marker=void 0,tagOpenAttributeValueQuotedAfter):code$1===null?nok(code$1):markdownLineEnding(code$1)?(returnState=tagOpenAttributeValueQuoted,lineEndingBefore(code$1)):(effects.consume(code$1),tagOpenAttributeValueQuoted)}function tagOpenAttributeValueUnquoted(code$1){return code$1===null||code$1===34||code$1===39||code$1===60||code$1===61||code$1===96?nok(code$1):code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)?tagOpenBetween(code$1):(effects.consume(code$1),tagOpenAttributeValueUnquoted)}function tagOpenAttributeValueQuotedAfter(code$1){return code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)?tagOpenBetween(code$1):nok(code$1)}function end(code$1){return code$1===62?(effects.consume(code$1),effects.exit(`htmlTextData`),effects.exit(`htmlText`),ok$2):nok(code$1)}function lineEndingBefore(code$1){return effects.exit(`htmlTextData`),effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),lineEndingAfter}function lineEndingAfter(code$1){return markdownSpace(code$1)?factorySpace(effects,lineEndingAfterPrefix,`linePrefix`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(code$1):lineEndingAfterPrefix(code$1)}function lineEndingAfterPrefix(code$1){return effects.enter(`htmlTextData`),returnState(code$1)}}const labelEnd={name:`labelEnd`,resolveAll:resolveAllLabelEnd,resolveTo:resolveToLabelEnd,tokenize:tokenizeLabelEnd},resourceConstruct={tokenize:tokenizeResource},referenceFullConstruct={tokenize:tokenizeReferenceFull},referenceCollapsedConstruct={tokenize:tokenizeReferenceCollapsed};function resolveAllLabelEnd(events){let index$1=-1,newEvents=[];for(;++index$1=3&&(code$1===null||markdownLineEnding(code$1))?(effects.exit(`thematicBreak`),ok$2(code$1)):nok(code$1)}function sequence(code$1){return code$1===marker?(effects.consume(code$1),size$1++,sequence):(effects.exit(`thematicBreakSequence`),markdownSpace(code$1)?factorySpace(effects,atBreak,`whitespace`)(code$1):atBreak(code$1))}}const list$1={continuation:{tokenize:tokenizeListContinuation},exit:tokenizeListEnd,name:`list`,tokenize:tokenizeListStart},listItemPrefixWhitespaceConstruct={partial:!0,tokenize:tokenizeListItemPrefixWhitespace},indentConstruct={partial:!0,tokenize:tokenizeIndent};function tokenizeListStart(effects,ok$2,nok){let self$1=this,tail=self$1.events[self$1.events.length-1],initialSize=tail&&tail[1].type===`linePrefix`?tail[2].sliceSerialize(tail[1],!0).length:0,size$1=0;return start;function start(code$1){let kind=self$1.containerState.type||(code$1===42||code$1===43||code$1===45?`listUnordered`:`listOrdered`);if(kind===`listUnordered`?!self$1.containerState.marker||code$1===self$1.containerState.marker:asciiDigit(code$1)){if(self$1.containerState.type||(self$1.containerState.type=kind,effects.enter(kind,{_container:!0})),kind===`listUnordered`)return effects.enter(`listItemPrefix`),code$1===42||code$1===45?effects.check(thematicBreak$1,nok,atMarker)(code$1):atMarker(code$1);if(!self$1.interrupt||code$1===49)return effects.enter(`listItemPrefix`),effects.enter(`listItemValue`),inside(code$1)}return nok(code$1)}function inside(code$1){return asciiDigit(code$1)&&++size$1<10?(effects.consume(code$1),inside):(!self$1.interrupt||size$1<2)&&(self$1.containerState.marker?code$1===self$1.containerState.marker:code$1===41||code$1===46)?(effects.exit(`listItemValue`),atMarker(code$1)):nok(code$1)}function atMarker(code$1){return effects.enter(`listItemMarker`),effects.consume(code$1),effects.exit(`listItemMarker`),self$1.containerState.marker=self$1.containerState.marker||code$1,effects.check(blankLine,self$1.interrupt?nok:onBlank,effects.attempt(listItemPrefixWhitespaceConstruct,endOfPrefix,otherPrefix))}function onBlank(code$1){return self$1.containerState.initialBlankLine=!0,initialSize++,endOfPrefix(code$1)}function otherPrefix(code$1){return markdownSpace(code$1)?(effects.enter(`listItemPrefixWhitespace`),effects.consume(code$1),effects.exit(`listItemPrefixWhitespace`),endOfPrefix):nok(code$1)}function endOfPrefix(code$1){return self$1.containerState.size=initialSize+self$1.sliceSerialize(effects.exit(`listItemPrefix`),!0).length,ok$2(code$1)}}function tokenizeListContinuation(effects,ok$2,nok){let self$1=this;return self$1.containerState._closeFlow=void 0,effects.check(blankLine,onBlank,notBlank);function onBlank(code$1){return self$1.containerState.furtherBlankLines=self$1.containerState.furtherBlankLines||self$1.containerState.initialBlankLine,factorySpace(effects,ok$2,`listItemIndent`,self$1.containerState.size+1)(code$1)}function notBlank(code$1){return self$1.containerState.furtherBlankLines||!markdownSpace(code$1)?(self$1.containerState.furtherBlankLines=void 0,self$1.containerState.initialBlankLine=void 0,notInCurrentItem(code$1)):(self$1.containerState.furtherBlankLines=void 0,self$1.containerState.initialBlankLine=void 0,effects.attempt(indentConstruct,ok$2,notInCurrentItem)(code$1))}function notInCurrentItem(code$1){return self$1.containerState._closeFlow=!0,self$1.interrupt=void 0,factorySpace(effects,effects.attempt(list$1,ok$2,nok),`linePrefix`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(code$1)}}function tokenizeIndent(effects,ok$2,nok){let self$1=this;return factorySpace(effects,afterPrefix,`listItemIndent`,self$1.containerState.size+1);function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return tail&&tail[1].type===`listItemIndent`&&tail[2].sliceSerialize(tail[1],!0).length===self$1.containerState.size?ok$2(code$1):nok(code$1)}}function tokenizeListEnd(effects){effects.exit(this.containerState.type)}function tokenizeListItemPrefixWhitespace(effects,ok$2,nok){let self$1=this;return factorySpace(effects,afterPrefix,`listItemPrefixWhitespace`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:5);function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return!markdownSpace(code$1)&&tail&&tail[1].type===`listItemPrefixWhitespace`?ok$2(code$1):nok(code$1)}}const setextUnderline={name:`setextUnderline`,resolveTo:resolveToSetextUnderline,tokenize:tokenizeSetextUnderline};function resolveToSetextUnderline(events,context$1){let index$1=events.length,content$2,text$5,definition$29;for(;index$1--;)if(events[index$1][0]===`enter`){if(events[index$1][1].type===`content`){content$2=index$1;break}events[index$1][1].type===`paragraph`&&(text$5=index$1)}else events[index$1][1].type===`content`&&events.splice(index$1,1),!definition$29&&events[index$1][1].type===`definition`&&(definition$29=index$1);let heading$1={type:`setextHeading`,start:{...events[text$5][1].start},end:{...events[events.length-1][1].end}};return events[text$5][1].type=`setextHeadingText`,definition$29?(events.splice(text$5,0,[`enter`,heading$1,context$1]),events.splice(definition$29+1,0,[`exit`,events[content$2][1],context$1]),events[content$2][1].end={...events[definition$29][1].end}):events[content$2][1]=heading$1,events.push([`exit`,heading$1,context$1]),events}function tokenizeSetextUnderline(effects,ok$2,nok){let self$1=this,marker;return start;function start(code$1){let index$1=self$1.events.length,paragraph$1;for(;index$1--;)if(self$1.events[index$1][1].type!==`lineEnding`&&self$1.events[index$1][1].type!==`linePrefix`&&self$1.events[index$1][1].type!==`content`){paragraph$1=self$1.events[index$1][1].type===`paragraph`;break}return!self$1.parser.lazy[self$1.now().line]&&(self$1.interrupt||paragraph$1)?(effects.enter(`setextHeadingLine`),marker=code$1,before(code$1)):nok(code$1)}function before(code$1){return effects.enter(`setextHeadingLineSequence`),inside(code$1)}function inside(code$1){return code$1===marker?(effects.consume(code$1),inside):(effects.exit(`setextHeadingLineSequence`),markdownSpace(code$1)?factorySpace(effects,after,`lineSuffix`)(code$1):after(code$1))}function after(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`setextHeadingLine`),ok$2(code$1)):nok(code$1)}}const flow={tokenize:initializeFlow};function initializeFlow(effects){let self$1=this,initial=effects.attempt(blankLine,atBlankEnding,effects.attempt(this.parser.constructs.flowInitial,afterConstruct,factorySpace(effects,effects.attempt(this.parser.constructs.flow,afterConstruct,effects.attempt(content$1,afterConstruct)),`linePrefix`)));return initial;function atBlankEnding(code$1){if(code$1===null){effects.consume(code$1);return}return effects.enter(`lineEndingBlank`),effects.consume(code$1),effects.exit(`lineEndingBlank`),self$1.currentConstruct=void 0,initial}function afterConstruct(code$1){if(code$1===null){effects.consume(code$1);return}return effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),self$1.currentConstruct=void 0,initial}}const resolver={resolveAll:createResolver()},string=initializeFactory(`string`),text$2=initializeFactory(`text`);function initializeFactory(field){return{resolveAll:createResolver(field===`text`?resolveAllLineSuffixes:void 0),tokenize:initializeText};function initializeText(effects){let self$1=this,constructs$1=this.parser.constructs[field],text$5=effects.attempt(constructs$1,start,notText);return start;function start(code$1){return atBreak(code$1)?text$5(code$1):notText(code$1)}function notText(code$1){if(code$1===null){effects.consume(code$1);return}return effects.enter(`data`),effects.consume(code$1),data$10}function data$10(code$1){return atBreak(code$1)?(effects.exit(`data`),text$5(code$1)):(effects.consume(code$1),data$10)}function atBreak(code$1){if(code$1===null)return!0;let list$2=constructs$1[code$1],index$1=-1;if(list$2)for(;++index$1attentionMarkers,contentInitial:()=>contentInitial,disable:()=>disable,document:()=>document$2,flow:()=>flow$1,flowInitial:()=>flowInitial,insideSpan:()=>insideSpan,string:()=>string$1,text:()=>text$3});const document$2={42:list$1,43:list$1,45:list$1,48:list$1,49:list$1,50:list$1,51:list$1,52:list$1,53:list$1,54:list$1,55:list$1,56:list$1,57:list$1,62:blockQuote},contentInitial={91:definition},flowInitial={[-2]:codeIndented,[-1]:codeIndented,32:codeIndented},flow$1={35:headingAtx,42:thematicBreak$1,45:[setextUnderline,thematicBreak$1],60:htmlFlow,61:setextUnderline,95:thematicBreak$1,96:codeFenced,126:codeFenced},string$1={38:characterReference,92:characterEscape},text$3={[-5]:lineEnding,[-4]:lineEnding,[-3]:lineEnding,33:labelStartImage,38:characterReference,42:attention,60:[autolink,htmlText],91:labelStartLink,92:[hardBreakEscape,characterEscape],93:labelEnd,95:attention,96:codeText},insideSpan={null:[attention,resolver]},attentionMarkers={null:[42,95]},disable={null:[]};function createTokenizer(parser,initialize,from){let point$3={_bufferIndex:-1,_index:0,line:from&&from.line||1,column:from&&from.column||1,offset:from&&from.offset||0},columnStart={},resolveAllConstructs=[],chunks=[],stack$1=[],consumed=!0,effects={attempt:constructFactory(onsuccessfulconstruct),check:constructFactory(onsuccessfulcheck),consume,enter,exit:exit$1,interrupt:constructFactory(onsuccessfulcheck,{interrupt:!0})},context$1={code:null,containerState:{},defineSkip,events:[],now,parser,previous:null,sliceSerialize,sliceStream,write},state=initialize.tokenize.call(context$1,effects),expectedCode;return initialize.resolveAll&&resolveAllConstructs.push(initialize),context$1;function write(slice){return chunks=push(chunks,slice),main(),chunks[chunks.length-1]===null?(addResult(initialize,0),context$1.events=resolveAll(resolveAllConstructs,context$1.events,context$1),context$1.events):[]}function sliceSerialize(token,expandTabs){return serializeChunks(sliceStream(token),expandTabs)}function sliceStream(token){return sliceChunks(chunks,token)}function now(){let{_bufferIndex,_index,line,column,offset:offset$1}=point$3;return{_bufferIndex,_index,line,column,offset:offset$1}}function defineSkip(value$1){columnStart[value$1.line]=value$1.column,accountForPotentialSkip()}function main(){let chunkIndex;for(;point$3._index-1){let head$1=view[0];typeof head$1==`string`?view[0]=head$1.slice(startBufferIndex):view.shift()}endBufferIndex>0&&view.push(chunks[endIndex].slice(0,endBufferIndex))}return view}function serializeChunks(chunks,expandTabs){let index$1=-1,result=[],atTab;for(;++index$1\``.split(``)]],single:[[`&'`.split(``),`"&'\``.split(``)],[`\0&'`.split(``),`\0"&'\``.split(``)]],double:[[`"&`.split(``),`"&'\``.split(``)],[`\0"&`.split(``),`\0"&'\``.split(``)]]};function element$2(node$1,index$1,parent,state){let schema=state.schema,omit=schema.space===`svg`?!1:state.settings.omitOptionalTags,selfClosing=schema.space===`svg`?state.settings.closeEmptyElements:state.settings.voids.includes(node$1.tagName.toLowerCase()),parts=[],last;schema.space===`html`&&node$1.tagName===`svg`&&(state.schema=svg);let attributes=serializeAttributes(state,node$1.properties),content$2=state.all(schema.space===`html`&&node$1.tagName===`template`?node$1.content:node$1);return state.schema=schema,content$2&&(selfClosing=!1),(attributes||!omit||!opening(node$1,index$1,parent))&&(parts.push(`<`,node$1.tagName,attributes?` `+attributes:``),selfClosing&&(schema.space===`svg`||state.settings.closeSelfClosing)&&(last=attributes.charAt(attributes.length-1),(!state.settings.tightSelfClosing||last===`/`||last&&last!==`"`&&last!==`'`)&&parts.push(` `),parts.push(`/`)),parts.push(`>`)),parts.push(content$2),!selfClosing&&(!omit||!closing(node$1,index$1,parent))&&parts.push(``),parts.join(``)}function serializeAttributes(state,properties){let values=[],index$1=-1,key$1;if(properties){for(key$1 in properties)if(properties[key$1]!==null&&properties[key$1]!==void 0){let value$1=serializeAttribute(state,key$1,properties[key$1]);value$1&&values.push(value$1)}}for(;++index$1ccount(value$1,state.alternative)&&(quote=state.alternative),result=quote+stringifyEntities(value$1,Object.assign({},state.settings.characterReferences,{subset:(quote===`'`?constants.single:constants.double)[x$3][y$2],attribute:!0}))+quote),name$2+(result&&`=`+result))}const textEntitySubset=[`<`,`&`];function text$4(node$1,_$2,parent,state){return parent&&parent.type===`element`&&(parent.tagName===`script`||parent.tagName===`style`)?node$1.value:stringifyEntities(node$1.value,Object.assign({},state.settings.characterReferences,{subset:textEntitySubset}))}function raw$1(node$1,index$1,parent,state){return state.settings.allowDangerousHtml?node$1.value:text$4(node$1,index$1,parent,state)}function root$1(node$1,_1,_2,state){return state.all(node$1)}const handle=zwitch(`type`,{invalid,unknown,handlers:{comment:comment$1,doctype:doctype$1,element:element$2,raw:raw$1,root:root$1,text:text$4}});function invalid(node$1){throw Error("Expected node, not `"+node$1+"`")}function unknown(node_){let node$1=node_;throw Error("Cannot compile unknown node `"+node$1.type+"`")}const emptyOptions$2={},emptyCharacterReferences={},emptyChildren=[];function toHtml(tree,options$1){let options_=options$1||emptyOptions$2,quote=options_.quote||`"`,alternative=quote===`"`?`'`:`"`;if(quote!==`"`&"e!==`'`)throw Error("Invalid quote `"+quote+"`, expected `'` or `\"`");let state={one:one$2,all:all$2,settings:{omitOptionalTags:options_.omitOptionalTags||!1,allowParseErrors:options_.allowParseErrors||!1,allowDangerousCharacters:options_.allowDangerousCharacters||!1,quoteSmart:options_.quoteSmart||!1,preferUnquoted:options_.preferUnquoted||!1,tightAttributes:options_.tightAttributes||!1,upperDoctype:options_.upperDoctype||!1,tightDoctype:options_.tightDoctype||!1,bogusComments:options_.bogusComments||!1,tightCommaSeparatedLists:options_.tightCommaSeparatedLists||!1,tightSelfClosing:options_.tightSelfClosing||!1,collapseEmptyAttributes:options_.collapseEmptyAttributes||!1,allowDangerousHtml:options_.allowDangerousHtml||!1,voids:options_.voids||htmlVoidElements,characterReferences:options_.characterReferences||emptyCharacterReferences,closeSelfClosing:options_.closeSelfClosing||!1,closeEmptyElements:options_.closeEmptyElements||!1},schema:options_.space===`svg`?svg:html$1,quote,alternative};return state.one(Array.isArray(tree)?{type:`root`,children:tree}:tree,void 0,void 0)}function one$2(node$1,index$1,parent){return handle(node$1,index$1,parent,this)}function all$2(parent){let results=[],children=parent&&parent.children||emptyChildren,index$1=-1;for(;++index$1end?0:end+start:start>end?end:start,remove$2=remove$2>0?remove$2:0,items.length<1e4)parameters=Array.from(items),parameters.unshift(start,remove$2),list$2.splice(...parameters);else for(remove$2&&list$2.splice(start,remove$2);chunkStart0?(splice(list$2,list$2.length,0,items),list$2):items}const hasOwnProperty={}.hasOwnProperty;function combineExtensions(extensions){let all$3={},index$1=-1;for(;++index$113&&code$1<32||code$1>126&&code$1<160||code$1>55295&&code$1<57344||code$1>64975&&code$1<65008||(code$1&65535)==65535||(code$1&65535)==65534||code$1>1114111?`�`:String.fromCodePoint(code$1)}function normalizeIdentifier(value$1){return value$1.replace(/[\t\n\r ]+/g,` `).replace(/^ | $/g,``).toLowerCase().toUpperCase()}const asciiAlpha=regexCheck(/[A-Za-z]/),asciiAlphanumeric=regexCheck(/[\dA-Za-z]/),asciiAtext=regexCheck(/[#-'*+\--9=?A-Z^-~]/);function asciiControl(code$1){return code$1!==null&&(code$1<32||code$1===127)}const asciiDigit=regexCheck(/\d/),asciiHexDigit=regexCheck(/[\dA-Fa-f]/),asciiPunctuation=regexCheck(/[!-/:-@[-`{-~]/);function markdownLineEnding(code$1){return code$1!==null&&code$1<-2}function markdownLineEndingOrSpace(code$1){return code$1!==null&&(code$1<0||code$1===32)}function markdownSpace(code$1){return code$1===-2||code$1===-1||code$1===32}const unicodePunctuation=regexCheck(/\p{P}|\p{S}/u),unicodeWhitespace=regexCheck(/\s/);function regexCheck(regex){return check$1;function check$1(code$1){return code$1!==null&&code$1>-1&®ex.test(String.fromCharCode(code$1))}}function normalizeUri(value$1){let result=[],index$1=-1,start=0,skip=0;for(;++index$155295&&code$1<57344){let next=value$1.charCodeAt(index$1+1);code$1<56320&&next>56319&&next<57344?(replace=String.fromCharCode(code$1,next),skip=1):replace=`�`}else replace=String.fromCharCode(code$1);replace&&(result.push(value$1.slice(start,index$1),encodeURIComponent(replace)),start=index$1+skip+1,replace=``),skip&&(index$1+=skip,skip=0)}return result.join(``)+value$1.slice(start)}function factorySpace(effects,ok$2,type,max$1){let limit=max$1?max$1-1:1/0,size$1=0;return start;function start(code$1){return markdownSpace(code$1)?(effects.enter(type),prefix(code$1)):ok$2(code$1)}function prefix(code$1){return markdownSpace(code$1)&&size$1++lineStartOffset))return;let indexBeforeExits=self$1.events.length,indexBeforeFlow=indexBeforeExits,seen$1,point$3;for(;indexBeforeFlow--;)if(self$1.events[indexBeforeFlow][0]===`exit`&&self$1.events[indexBeforeFlow][1].type===`chunkFlow`){if(seen$1){point$3=self$1.events[indexBeforeFlow][1].end;break}seen$1=!0}for(exitContainers(continued),index$1=indexBeforeExits;index$1size$1;){let entry=stack$1[index$1];self$1.containerState=entry[1],entry[0].exit.call(self$1,effects)}stack$1.length=size$1}function closeFlow(){childFlow.write([null]),childToken=void 0,childFlow=void 0,self$1.containerState._closeFlow=void 0}}function tokenizeContainer(effects,ok$2,nok){return factorySpace(effects,effects.attempt(this.parser.constructs.document,ok$2,nok),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}function classifyCharacter(code$1){if(code$1===null||markdownLineEndingOrSpace(code$1)||unicodeWhitespace(code$1))return 1;if(unicodePunctuation(code$1))return 2}function resolveAll(constructs$1,events,context$1){let called=[],index$1=-1;for(;++index$11&&events[index$1][1].end.offset-events[index$1][1].start.offset>1?2:1;let start={...events[open$1][1].end},end={...events[index$1][1].start};movePoint(start,-use),movePoint(end,use),openingSequence={type:use>1?`strongSequence`:`emphasisSequence`,start,end:{...events[open$1][1].end}},closingSequence={type:use>1?`strongSequence`:`emphasisSequence`,start:{...events[index$1][1].start},end},text$5={type:use>1?`strongText`:`emphasisText`,start:{...events[open$1][1].end},end:{...events[index$1][1].start}},group={type:use>1?`strong`:`emphasis`,start:{...openingSequence.start},end:{...closingSequence.end}},events[open$1][1].end={...openingSequence.start},events[index$1][1].start={...closingSequence.end},nextEvents=[],events[open$1][1].end.offset-events[open$1][1].start.offset&&(nextEvents=push(nextEvents,[[`enter`,events[open$1][1],context$1],[`exit`,events[open$1][1],context$1]])),nextEvents=push(nextEvents,[[`enter`,group,context$1],[`enter`,openingSequence,context$1],[`exit`,openingSequence,context$1],[`enter`,text$5,context$1]]),nextEvents=push(nextEvents,resolveAll(context$1.parser.constructs.insideSpan.null,events.slice(open$1+1,index$1),context$1)),nextEvents=push(nextEvents,[[`exit`,text$5,context$1],[`enter`,closingSequence,context$1],[`exit`,closingSequence,context$1],[`exit`,group,context$1]]),events[index$1][1].end.offset-events[index$1][1].start.offset?(offset$1=2,nextEvents=push(nextEvents,[[`enter`,events[index$1][1],context$1],[`exit`,events[index$1][1],context$1]])):offset$1=0,splice(events,open$1-1,index$1-open$1+3,nextEvents),index$1=open$1+nextEvents.length-offset$1-2;break}}for(index$1=-1;++index$10&&markdownSpace(code$1)?factorySpace(effects,beforeContentChunk,`linePrefix`,initialPrefix+1)(code$1):beforeContentChunk(code$1)}function beforeContentChunk(code$1){return code$1===null||markdownLineEnding(code$1)?effects.check(nonLazyContinuation,atNonLazyBreak,after)(code$1):(effects.enter(`codeFlowValue`),contentChunk(code$1))}function contentChunk(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`codeFlowValue`),beforeContentChunk(code$1)):(effects.consume(code$1),contentChunk)}function after(code$1){return effects.exit(`codeFenced`),ok$2(code$1)}function tokenizeCloseStart(effects$1,ok$3,nok$1){let size$1=0;return startBefore;function startBefore(code$1){return effects$1.enter(`lineEnding`),effects$1.consume(code$1),effects$1.exit(`lineEnding`),start$1}function start$1(code$1){return effects$1.enter(`codeFencedFence`),markdownSpace(code$1)?factorySpace(effects$1,beforeSequenceClose,`linePrefix`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(code$1):beforeSequenceClose(code$1)}function beforeSequenceClose(code$1){return code$1===marker?(effects$1.enter(`codeFencedFenceSequence`),sequenceClose(code$1)):nok$1(code$1)}function sequenceClose(code$1){return code$1===marker?(size$1++,effects$1.consume(code$1),sequenceClose):size$1>=sizeOpen?(effects$1.exit(`codeFencedFenceSequence`),markdownSpace(code$1)?factorySpace(effects$1,sequenceCloseAfter,`whitespace`)(code$1):sequenceCloseAfter(code$1)):nok$1(code$1)}function sequenceCloseAfter(code$1){return code$1===null||markdownLineEnding(code$1)?(effects$1.exit(`codeFencedFence`),ok$3(code$1)):nok$1(code$1)}}}function tokenizeNonLazyContinuation(effects,ok$2,nok){let self$1=this;return start;function start(code$1){return code$1===null?nok(code$1):(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),lineStart)}function lineStart(code$1){return self$1.parser.lazy[self$1.now().line]?nok(code$1):ok$2(code$1)}}const codeIndented={name:`codeIndented`,tokenize:tokenizeCodeIndented},furtherStart={partial:!0,tokenize:tokenizeFurtherStart};function tokenizeCodeIndented(effects,ok$2,nok){let self$1=this;return start;function start(code$1){return effects.enter(`codeIndented`),factorySpace(effects,afterPrefix,`linePrefix`,5)(code$1)}function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return tail&&tail[1].type===`linePrefix`&&tail[2].sliceSerialize(tail[1],!0).length>=4?atBreak(code$1):nok(code$1)}function atBreak(code$1){return code$1===null?after(code$1):markdownLineEnding(code$1)?effects.attempt(furtherStart,atBreak,after)(code$1):(effects.enter(`codeFlowValue`),inside(code$1))}function inside(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`codeFlowValue`),atBreak(code$1)):(effects.consume(code$1),inside)}function after(code$1){return effects.exit(`codeIndented`),ok$2(code$1)}}function tokenizeFurtherStart(effects,ok$2,nok){let self$1=this;return furtherStart$1;function furtherStart$1(code$1){return self$1.parser.lazy[self$1.now().line]?nok(code$1):markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),furtherStart$1):factorySpace(effects,afterPrefix,`linePrefix`,5)(code$1)}function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return tail&&tail[1].type===`linePrefix`&&tail[2].sliceSerialize(tail[1],!0).length>=4?ok$2(code$1):markdownLineEnding(code$1)?furtherStart$1(code$1):nok(code$1)}}const codeText={name:`codeText`,previous,resolve:resolveCodeText,tokenize:tokenizeCodeText};function resolveCodeText(events){let tailExitIndex=events.length-4,headEnterIndex=3,index$1,enter;if((events[headEnterIndex][1].type===`lineEnding`||events[headEnterIndex][1].type===`space`)&&(events[tailExitIndex][1].type===`lineEnding`||events[tailExitIndex][1].type===`space`)){for(index$1=headEnterIndex;++index$1=this.left.length+this.right.length)throw RangeError("Cannot access index `"+index$1+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return index$1this.left.length)return this.right.slice(this.right.length-stop$1+this.left.length,this.right.length-start+this.left.length).reverse();let list$2=this.left.slice(start);return list$2.push(...this.right.slice(this.right.length-stop$1+this.left.length).reverse()),list$2}splice(start,deleteCount,items){let count$1=deleteCount||0;this.setCursor(Math.trunc(start));let removed=this.right.splice(this.right.length-count$1,1/0);return items&&chunkedPush(this.left,items),removed.reverse()}pop(){return this.setCursor(1/0),this.left.pop()}push(item){this.setCursor(1/0),this.left.push(item)}pushMany(items){this.setCursor(1/0),chunkedPush(this.left,items)}unshift(item){this.setCursor(0),this.right.push(item)}unshiftMany(items){this.setCursor(0),chunkedPush(this.right,items.reverse())}setCursor(n$2){if(!(n$2===this.left.length||n$2>this.left.length&&this.right.length===0||n$2<0&&this.left.length===0))if(n$2=4?ok$2(code$1):effects.interrupt(self$1.parser.constructs.flow,nok,ok$2)(code$1)}}function factoryDestination(effects,ok$2,nok,type,literalType$1,literalMarkerType,rawType,stringType$1,max$1){let limit=max$1||1/0,balance=0;return start;function start(code$1){return code$1===60?(effects.enter(type),effects.enter(literalType$1),effects.enter(literalMarkerType),effects.consume(code$1),effects.exit(literalMarkerType),enclosedBefore):code$1===null||code$1===32||code$1===41||asciiControl(code$1)?nok(code$1):(effects.enter(type),effects.enter(rawType),effects.enter(stringType$1),effects.enter(`chunkString`,{contentType:`string`}),raw$3(code$1))}function enclosedBefore(code$1){return code$1===62?(effects.enter(literalMarkerType),effects.consume(code$1),effects.exit(literalMarkerType),effects.exit(literalType$1),effects.exit(type),ok$2):(effects.enter(stringType$1),effects.enter(`chunkString`,{contentType:`string`}),enclosed(code$1))}function enclosed(code$1){return code$1===62?(effects.exit(`chunkString`),effects.exit(stringType$1),enclosedBefore(code$1)):code$1===null||code$1===60||markdownLineEnding(code$1)?nok(code$1):(effects.consume(code$1),code$1===92?enclosedEscape:enclosed)}function enclosedEscape(code$1){return code$1===60||code$1===62||code$1===92?(effects.consume(code$1),enclosed):enclosed(code$1)}function raw$3(code$1){return!balance&&(code$1===null||code$1===41||markdownLineEndingOrSpace(code$1))?(effects.exit(`chunkString`),effects.exit(stringType$1),effects.exit(rawType),effects.exit(type),ok$2(code$1)):balance999||code$1===null||code$1===91||code$1===93&&!seen$1||code$1===94&&!size$1&&`_hiddenFootnoteSupport`in self$1.parser.constructs?nok(code$1):code$1===93?(effects.exit(stringType$1),effects.enter(markerType),effects.consume(code$1),effects.exit(markerType),effects.exit(type),ok$2):markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),atBreak):(effects.enter(`chunkString`,{contentType:`string`}),labelInside(code$1))}function labelInside(code$1){return code$1===null||code$1===91||code$1===93||markdownLineEnding(code$1)||size$1++>999?(effects.exit(`chunkString`),atBreak(code$1)):(effects.consume(code$1),seen$1||=!markdownSpace(code$1),code$1===92?labelEscape:labelInside)}function labelEscape(code$1){return code$1===91||code$1===92||code$1===93?(effects.consume(code$1),size$1++,labelInside):labelInside(code$1)}}function factoryTitle(effects,ok$2,nok,type,markerType,stringType$1){let marker;return start;function start(code$1){return code$1===34||code$1===39||code$1===40?(effects.enter(type),effects.enter(markerType),effects.consume(code$1),effects.exit(markerType),marker=code$1===40?41:code$1,begin):nok(code$1)}function begin(code$1){return code$1===marker?(effects.enter(markerType),effects.consume(code$1),effects.exit(markerType),effects.exit(type),ok$2):(effects.enter(stringType$1),atBreak(code$1))}function atBreak(code$1){return code$1===marker?(effects.exit(stringType$1),begin(marker)):code$1===null?nok(code$1):markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),factorySpace(effects,atBreak,`linePrefix`)):(effects.enter(`chunkString`,{contentType:`string`}),inside(code$1))}function inside(code$1){return code$1===marker||code$1===null||markdownLineEnding(code$1)?(effects.exit(`chunkString`),atBreak(code$1)):(effects.consume(code$1),code$1===92?escape$1:inside)}function escape$1(code$1){return code$1===marker||code$1===92?(effects.consume(code$1),inside):inside(code$1)}}function factoryWhitespace(effects,ok$2){let seen$1;return start;function start(code$1){return markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),seen$1=!0,start):markdownSpace(code$1)?factorySpace(effects,start,seen$1?`linePrefix`:`lineSuffix`)(code$1):ok$2(code$1)}}const definition={name:`definition`,tokenize:tokenizeDefinition},titleBefore={partial:!0,tokenize:tokenizeTitleBefore};function tokenizeDefinition(effects,ok$2,nok){let self$1=this,identifier;return start;function start(code$1){return effects.enter(`definition`),before(code$1)}function before(code$1){return factoryLabel.call(self$1,effects,labelAfter,nok,`definitionLabel`,`definitionLabelMarker`,`definitionLabelString`)(code$1)}function labelAfter(code$1){return identifier=normalizeIdentifier(self$1.sliceSerialize(self$1.events[self$1.events.length-1][1]).slice(1,-1)),code$1===58?(effects.enter(`definitionMarker`),effects.consume(code$1),effects.exit(`definitionMarker`),markerAfter):nok(code$1)}function markerAfter(code$1){return markdownLineEndingOrSpace(code$1)?factoryWhitespace(effects,destinationBefore)(code$1):destinationBefore(code$1)}function destinationBefore(code$1){return factoryDestination(effects,destinationAfter,nok,`definitionDestination`,`definitionDestinationLiteral`,`definitionDestinationLiteralMarker`,`definitionDestinationRaw`,`definitionDestinationString`)(code$1)}function destinationAfter(code$1){return effects.attempt(titleBefore,after,after)(code$1)}function after(code$1){return markdownSpace(code$1)?factorySpace(effects,afterWhitespace,`whitespace`)(code$1):afterWhitespace(code$1)}function afterWhitespace(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`definition`),self$1.parser.defined.push(identifier),ok$2(code$1)):nok(code$1)}}function tokenizeTitleBefore(effects,ok$2,nok){return titleBefore$1;function titleBefore$1(code$1){return markdownLineEndingOrSpace(code$1)?factoryWhitespace(effects,beforeMarker)(code$1):nok(code$1)}function beforeMarker(code$1){return factoryTitle(effects,titleAfter,nok,`definitionTitle`,`definitionTitleMarker`,`definitionTitleString`)(code$1)}function titleAfter(code$1){return markdownSpace(code$1)?factorySpace(effects,titleAfterOptionalWhitespace,`whitespace`)(code$1):titleAfterOptionalWhitespace(code$1)}function titleAfterOptionalWhitespace(code$1){return code$1===null||markdownLineEnding(code$1)?ok$2(code$1):nok(code$1)}}const hardBreakEscape={name:`hardBreakEscape`,tokenize:tokenizeHardBreakEscape};function tokenizeHardBreakEscape(effects,ok$2,nok){return start;function start(code$1){return effects.enter(`hardBreakEscape`),effects.consume(code$1),after}function after(code$1){return markdownLineEnding(code$1)?(effects.exit(`hardBreakEscape`),ok$2(code$1)):nok(code$1)}}const headingAtx={name:`headingAtx`,resolve:resolveHeadingAtx,tokenize:tokenizeHeadingAtx};function resolveHeadingAtx(events,context$1){let contentEnd=events.length-2,contentStart=3,content$2,text$5;return events[contentStart][1].type===`whitespace`&&(contentStart+=2),contentEnd-2>contentStart&&events[contentEnd][1].type===`whitespace`&&(contentEnd-=2),events[contentEnd][1].type===`atxHeadingSequence`&&(contentStart===contentEnd-1||contentEnd-4>contentStart&&events[contentEnd-2][1].type===`whitespace`)&&(contentEnd-=contentStart+1===contentEnd?2:4),contentEnd>contentStart&&(content$2={type:`atxHeadingText`,start:events[contentStart][1].start,end:events[contentEnd][1].end},text$5={type:`chunkText`,start:events[contentStart][1].start,end:events[contentEnd][1].end,contentType:`text`},splice(events,contentStart,contentEnd-contentStart+1,[[`enter`,content$2,context$1],[`enter`,text$5,context$1],[`exit`,text$5,context$1],[`exit`,content$2,context$1]])),events}function tokenizeHeadingAtx(effects,ok$2,nok){let size$1=0;return start;function start(code$1){return effects.enter(`atxHeading`),before(code$1)}function before(code$1){return effects.enter(`atxHeadingSequence`),sequenceOpen(code$1)}function sequenceOpen(code$1){return code$1===35&&size$1++<6?(effects.consume(code$1),sequenceOpen):code$1===null||markdownLineEndingOrSpace(code$1)?(effects.exit(`atxHeadingSequence`),atBreak(code$1)):nok(code$1)}function atBreak(code$1){return code$1===35?(effects.enter(`atxHeadingSequence`),sequenceFurther(code$1)):code$1===null||markdownLineEnding(code$1)?(effects.exit(`atxHeading`),ok$2(code$1)):markdownSpace(code$1)?factorySpace(effects,atBreak,`whitespace`)(code$1):(effects.enter(`atxHeadingText`),data$10(code$1))}function sequenceFurther(code$1){return code$1===35?(effects.consume(code$1),sequenceFurther):(effects.exit(`atxHeadingSequence`),atBreak(code$1))}function data$10(code$1){return code$1===null||code$1===35||markdownLineEndingOrSpace(code$1)?(effects.exit(`atxHeadingText`),atBreak(code$1)):(effects.consume(code$1),data$10)}}const htmlBlockNames=`address.article.aside.base.basefont.blockquote.body.caption.center.col.colgroup.dd.details.dialog.dir.div.dl.dt.fieldset.figcaption.figure.footer.form.frame.frameset.h1.h2.h3.h4.h5.h6.head.header.hr.html.iframe.legend.li.link.main.menu.menuitem.nav.noframes.ol.optgroup.option.p.param.search.section.summary.table.tbody.td.tfoot.th.thead.title.tr.track.ul`.split(`.`),htmlRawNames=[`pre`,`script`,`style`,`textarea`],htmlFlow={concrete:!0,name:`htmlFlow`,resolveTo:resolveToHtmlFlow,tokenize:tokenizeHtmlFlow},blankLineBefore={partial:!0,tokenize:tokenizeBlankLineBefore},nonLazyContinuationStart={partial:!0,tokenize:tokenizeNonLazyContinuationStart};function resolveToHtmlFlow(events){let index$1=events.length;for(;index$1--&&!(events[index$1][0]===`enter`&&events[index$1][1].type===`htmlFlow`););return index$1>1&&events[index$1-2][1].type===`linePrefix`&&(events[index$1][1].start=events[index$1-2][1].start,events[index$1+1][1].start=events[index$1-2][1].start,events.splice(index$1-2,2)),events}function tokenizeHtmlFlow(effects,ok$2,nok){let self$1=this,marker,closingTag,buffer$1,index$1,markerB;return start;function start(code$1){return before(code$1)}function before(code$1){return effects.enter(`htmlFlow`),effects.enter(`htmlFlowData`),effects.consume(code$1),open$1}function open$1(code$1){return code$1===33?(effects.consume(code$1),declarationOpen):code$1===47?(effects.consume(code$1),closingTag=!0,tagCloseStart):code$1===63?(effects.consume(code$1),marker=3,self$1.interrupt?ok$2:continuationDeclarationInside):asciiAlpha(code$1)?(effects.consume(code$1),buffer$1=String.fromCharCode(code$1),tagName):nok(code$1)}function declarationOpen(code$1){return code$1===45?(effects.consume(code$1),marker=2,commentOpenInside):code$1===91?(effects.consume(code$1),marker=5,index$1=0,cdataOpenInside):asciiAlpha(code$1)?(effects.consume(code$1),marker=4,self$1.interrupt?ok$2:continuationDeclarationInside):nok(code$1)}function commentOpenInside(code$1){return code$1===45?(effects.consume(code$1),self$1.interrupt?ok$2:continuationDeclarationInside):nok(code$1)}function cdataOpenInside(code$1){let value$1=`CDATA[`;return code$1===value$1.charCodeAt(index$1++)?(effects.consume(code$1),index$1===6?self$1.interrupt?ok$2:continuation:cdataOpenInside):nok(code$1)}function tagCloseStart(code$1){return asciiAlpha(code$1)?(effects.consume(code$1),buffer$1=String.fromCharCode(code$1),tagName):nok(code$1)}function tagName(code$1){if(code$1===null||code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)){let slash=code$1===47,name$2=buffer$1.toLowerCase();return!slash&&!closingTag&&htmlRawNames.includes(name$2)?(marker=1,self$1.interrupt?ok$2(code$1):continuation(code$1)):htmlBlockNames.includes(buffer$1.toLowerCase())?(marker=6,slash?(effects.consume(code$1),basicSelfClosing):self$1.interrupt?ok$2(code$1):continuation(code$1)):(marker=7,self$1.interrupt&&!self$1.parser.lazy[self$1.now().line]?nok(code$1):closingTag?completeClosingTagAfter(code$1):completeAttributeNameBefore(code$1))}return code$1===45||asciiAlphanumeric(code$1)?(effects.consume(code$1),buffer$1+=String.fromCharCode(code$1),tagName):nok(code$1)}function basicSelfClosing(code$1){return code$1===62?(effects.consume(code$1),self$1.interrupt?ok$2:continuation):nok(code$1)}function completeClosingTagAfter(code$1){return markdownSpace(code$1)?(effects.consume(code$1),completeClosingTagAfter):completeEnd(code$1)}function completeAttributeNameBefore(code$1){return code$1===47?(effects.consume(code$1),completeEnd):code$1===58||code$1===95||asciiAlpha(code$1)?(effects.consume(code$1),completeAttributeName):markdownSpace(code$1)?(effects.consume(code$1),completeAttributeNameBefore):completeEnd(code$1)}function completeAttributeName(code$1){return code$1===45||code$1===46||code$1===58||code$1===95||asciiAlphanumeric(code$1)?(effects.consume(code$1),completeAttributeName):completeAttributeNameAfter(code$1)}function completeAttributeNameAfter(code$1){return code$1===61?(effects.consume(code$1),completeAttributeValueBefore):markdownSpace(code$1)?(effects.consume(code$1),completeAttributeNameAfter):completeAttributeNameBefore(code$1)}function completeAttributeValueBefore(code$1){return code$1===null||code$1===60||code$1===61||code$1===62||code$1===96?nok(code$1):code$1===34||code$1===39?(effects.consume(code$1),markerB=code$1,completeAttributeValueQuoted):markdownSpace(code$1)?(effects.consume(code$1),completeAttributeValueBefore):completeAttributeValueUnquoted(code$1)}function completeAttributeValueQuoted(code$1){return code$1===markerB?(effects.consume(code$1),markerB=null,completeAttributeValueQuotedAfter):code$1===null||markdownLineEnding(code$1)?nok(code$1):(effects.consume(code$1),completeAttributeValueQuoted)}function completeAttributeValueUnquoted(code$1){return code$1===null||code$1===34||code$1===39||code$1===47||code$1===60||code$1===61||code$1===62||code$1===96||markdownLineEndingOrSpace(code$1)?completeAttributeNameAfter(code$1):(effects.consume(code$1),completeAttributeValueUnquoted)}function completeAttributeValueQuotedAfter(code$1){return code$1===47||code$1===62||markdownSpace(code$1)?completeAttributeNameBefore(code$1):nok(code$1)}function completeEnd(code$1){return code$1===62?(effects.consume(code$1),completeAfter):nok(code$1)}function completeAfter(code$1){return code$1===null||markdownLineEnding(code$1)?continuation(code$1):markdownSpace(code$1)?(effects.consume(code$1),completeAfter):nok(code$1)}function continuation(code$1){return code$1===45&&marker===2?(effects.consume(code$1),continuationCommentInside):code$1===60&&marker===1?(effects.consume(code$1),continuationRawTagOpen):code$1===62&&marker===4?(effects.consume(code$1),continuationClose):code$1===63&&marker===3?(effects.consume(code$1),continuationDeclarationInside):code$1===93&&marker===5?(effects.consume(code$1),continuationCdataInside):markdownLineEnding(code$1)&&(marker===6||marker===7)?(effects.exit(`htmlFlowData`),effects.check(blankLineBefore,continuationAfter,continuationStart)(code$1)):code$1===null||markdownLineEnding(code$1)?(effects.exit(`htmlFlowData`),continuationStart(code$1)):(effects.consume(code$1),continuation)}function continuationStart(code$1){return effects.check(nonLazyContinuationStart,continuationStartNonLazy,continuationAfter)(code$1)}function continuationStartNonLazy(code$1){return effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),continuationBefore}function continuationBefore(code$1){return code$1===null||markdownLineEnding(code$1)?continuationStart(code$1):(effects.enter(`htmlFlowData`),continuation(code$1))}function continuationCommentInside(code$1){return code$1===45?(effects.consume(code$1),continuationDeclarationInside):continuation(code$1)}function continuationRawTagOpen(code$1){return code$1===47?(effects.consume(code$1),buffer$1=``,continuationRawEndTag):continuation(code$1)}function continuationRawEndTag(code$1){if(code$1===62){let name$2=buffer$1.toLowerCase();return htmlRawNames.includes(name$2)?(effects.consume(code$1),continuationClose):continuation(code$1)}return asciiAlpha(code$1)&&buffer$1.length<8?(effects.consume(code$1),buffer$1+=String.fromCharCode(code$1),continuationRawEndTag):continuation(code$1)}function continuationCdataInside(code$1){return code$1===93?(effects.consume(code$1),continuationDeclarationInside):continuation(code$1)}function continuationDeclarationInside(code$1){return code$1===62?(effects.consume(code$1),continuationClose):code$1===45&&marker===2?(effects.consume(code$1),continuationDeclarationInside):continuation(code$1)}function continuationClose(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`htmlFlowData`),continuationAfter(code$1)):(effects.consume(code$1),continuationClose)}function continuationAfter(code$1){return effects.exit(`htmlFlow`),ok$2(code$1)}}function tokenizeNonLazyContinuationStart(effects,ok$2,nok){let self$1=this;return start;function start(code$1){return markdownLineEnding(code$1)?(effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),after):nok(code$1)}function after(code$1){return self$1.parser.lazy[self$1.now().line]?nok(code$1):ok$2(code$1)}}function tokenizeBlankLineBefore(effects,ok$2,nok){return start;function start(code$1){return effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),effects.attempt(blankLine,ok$2,nok)}}const htmlText={name:`htmlText`,tokenize:tokenizeHtmlText};function tokenizeHtmlText(effects,ok$2,nok){let self$1=this,marker,index$1,returnState;return start;function start(code$1){return effects.enter(`htmlText`),effects.enter(`htmlTextData`),effects.consume(code$1),open$1}function open$1(code$1){return code$1===33?(effects.consume(code$1),declarationOpen):code$1===47?(effects.consume(code$1),tagCloseStart):code$1===63?(effects.consume(code$1),instruction$1):asciiAlpha(code$1)?(effects.consume(code$1),tagOpen):nok(code$1)}function declarationOpen(code$1){return code$1===45?(effects.consume(code$1),commentOpenInside):code$1===91?(effects.consume(code$1),index$1=0,cdataOpenInside):asciiAlpha(code$1)?(effects.consume(code$1),declaration):nok(code$1)}function commentOpenInside(code$1){return code$1===45?(effects.consume(code$1),commentEnd):nok(code$1)}function comment$2(code$1){return code$1===null?nok(code$1):code$1===45?(effects.consume(code$1),commentClose):markdownLineEnding(code$1)?(returnState=comment$2,lineEndingBefore(code$1)):(effects.consume(code$1),comment$2)}function commentClose(code$1){return code$1===45?(effects.consume(code$1),commentEnd):comment$2(code$1)}function commentEnd(code$1){return code$1===62?end(code$1):code$1===45?commentClose(code$1):comment$2(code$1)}function cdataOpenInside(code$1){let value$1=`CDATA[`;return code$1===value$1.charCodeAt(index$1++)?(effects.consume(code$1),index$1===6?cdata$1:cdataOpenInside):nok(code$1)}function cdata$1(code$1){return code$1===null?nok(code$1):code$1===93?(effects.consume(code$1),cdataClose):markdownLineEnding(code$1)?(returnState=cdata$1,lineEndingBefore(code$1)):(effects.consume(code$1),cdata$1)}function cdataClose(code$1){return code$1===93?(effects.consume(code$1),cdataEnd):cdata$1(code$1)}function cdataEnd(code$1){return code$1===62?end(code$1):code$1===93?(effects.consume(code$1),cdataEnd):cdata$1(code$1)}function declaration(code$1){return code$1===null||code$1===62?end(code$1):markdownLineEnding(code$1)?(returnState=declaration,lineEndingBefore(code$1)):(effects.consume(code$1),declaration)}function instruction$1(code$1){return code$1===null?nok(code$1):code$1===63?(effects.consume(code$1),instructionClose):markdownLineEnding(code$1)?(returnState=instruction$1,lineEndingBefore(code$1)):(effects.consume(code$1),instruction$1)}function instructionClose(code$1){return code$1===62?end(code$1):instruction$1(code$1)}function tagCloseStart(code$1){return asciiAlpha(code$1)?(effects.consume(code$1),tagClose):nok(code$1)}function tagClose(code$1){return code$1===45||asciiAlphanumeric(code$1)?(effects.consume(code$1),tagClose):tagCloseBetween(code$1)}function tagCloseBetween(code$1){return markdownLineEnding(code$1)?(returnState=tagCloseBetween,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagCloseBetween):end(code$1)}function tagOpen(code$1){return code$1===45||asciiAlphanumeric(code$1)?(effects.consume(code$1),tagOpen):code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)?tagOpenBetween(code$1):nok(code$1)}function tagOpenBetween(code$1){return code$1===47?(effects.consume(code$1),end):code$1===58||code$1===95||asciiAlpha(code$1)?(effects.consume(code$1),tagOpenAttributeName):markdownLineEnding(code$1)?(returnState=tagOpenBetween,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagOpenBetween):end(code$1)}function tagOpenAttributeName(code$1){return code$1===45||code$1===46||code$1===58||code$1===95||asciiAlphanumeric(code$1)?(effects.consume(code$1),tagOpenAttributeName):tagOpenAttributeNameAfter(code$1)}function tagOpenAttributeNameAfter(code$1){return code$1===61?(effects.consume(code$1),tagOpenAttributeValueBefore):markdownLineEnding(code$1)?(returnState=tagOpenAttributeNameAfter,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagOpenAttributeNameAfter):tagOpenBetween(code$1)}function tagOpenAttributeValueBefore(code$1){return code$1===null||code$1===60||code$1===61||code$1===62||code$1===96?nok(code$1):code$1===34||code$1===39?(effects.consume(code$1),marker=code$1,tagOpenAttributeValueQuoted):markdownLineEnding(code$1)?(returnState=tagOpenAttributeValueBefore,lineEndingBefore(code$1)):markdownSpace(code$1)?(effects.consume(code$1),tagOpenAttributeValueBefore):(effects.consume(code$1),tagOpenAttributeValueUnquoted)}function tagOpenAttributeValueQuoted(code$1){return code$1===marker?(effects.consume(code$1),marker=void 0,tagOpenAttributeValueQuotedAfter):code$1===null?nok(code$1):markdownLineEnding(code$1)?(returnState=tagOpenAttributeValueQuoted,lineEndingBefore(code$1)):(effects.consume(code$1),tagOpenAttributeValueQuoted)}function tagOpenAttributeValueUnquoted(code$1){return code$1===null||code$1===34||code$1===39||code$1===60||code$1===61||code$1===96?nok(code$1):code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)?tagOpenBetween(code$1):(effects.consume(code$1),tagOpenAttributeValueUnquoted)}function tagOpenAttributeValueQuotedAfter(code$1){return code$1===47||code$1===62||markdownLineEndingOrSpace(code$1)?tagOpenBetween(code$1):nok(code$1)}function end(code$1){return code$1===62?(effects.consume(code$1),effects.exit(`htmlTextData`),effects.exit(`htmlText`),ok$2):nok(code$1)}function lineEndingBefore(code$1){return effects.exit(`htmlTextData`),effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),lineEndingAfter}function lineEndingAfter(code$1){return markdownSpace(code$1)?factorySpace(effects,lineEndingAfterPrefix,`linePrefix`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(code$1):lineEndingAfterPrefix(code$1)}function lineEndingAfterPrefix(code$1){return effects.enter(`htmlTextData`),returnState(code$1)}}const labelEnd={name:`labelEnd`,resolveAll:resolveAllLabelEnd,resolveTo:resolveToLabelEnd,tokenize:tokenizeLabelEnd},resourceConstruct={tokenize:tokenizeResource},referenceFullConstruct={tokenize:tokenizeReferenceFull},referenceCollapsedConstruct={tokenize:tokenizeReferenceCollapsed};function resolveAllLabelEnd(events){let index$1=-1,newEvents=[];for(;++index$1=3&&(code$1===null||markdownLineEnding(code$1))?(effects.exit(`thematicBreak`),ok$2(code$1)):nok(code$1)}function sequence(code$1){return code$1===marker?(effects.consume(code$1),size$1++,sequence):(effects.exit(`thematicBreakSequence`),markdownSpace(code$1)?factorySpace(effects,atBreak,`whitespace`)(code$1):atBreak(code$1))}}const list$1={continuation:{tokenize:tokenizeListContinuation},exit:tokenizeListEnd,name:`list`,tokenize:tokenizeListStart},listItemPrefixWhitespaceConstruct={partial:!0,tokenize:tokenizeListItemPrefixWhitespace},indentConstruct={partial:!0,tokenize:tokenizeIndent};function tokenizeListStart(effects,ok$2,nok){let self$1=this,tail=self$1.events[self$1.events.length-1],initialSize=tail&&tail[1].type===`linePrefix`?tail[2].sliceSerialize(tail[1],!0).length:0,size$1=0;return start;function start(code$1){let kind=self$1.containerState.type||(code$1===42||code$1===43||code$1===45?`listUnordered`:`listOrdered`);if(kind===`listUnordered`?!self$1.containerState.marker||code$1===self$1.containerState.marker:asciiDigit(code$1)){if(self$1.containerState.type||(self$1.containerState.type=kind,effects.enter(kind,{_container:!0})),kind===`listUnordered`)return effects.enter(`listItemPrefix`),code$1===42||code$1===45?effects.check(thematicBreak$1,nok,atMarker)(code$1):atMarker(code$1);if(!self$1.interrupt||code$1===49)return effects.enter(`listItemPrefix`),effects.enter(`listItemValue`),inside(code$1)}return nok(code$1)}function inside(code$1){return asciiDigit(code$1)&&++size$1<10?(effects.consume(code$1),inside):(!self$1.interrupt||size$1<2)&&(self$1.containerState.marker?code$1===self$1.containerState.marker:code$1===41||code$1===46)?(effects.exit(`listItemValue`),atMarker(code$1)):nok(code$1)}function atMarker(code$1){return effects.enter(`listItemMarker`),effects.consume(code$1),effects.exit(`listItemMarker`),self$1.containerState.marker=self$1.containerState.marker||code$1,effects.check(blankLine,self$1.interrupt?nok:onBlank,effects.attempt(listItemPrefixWhitespaceConstruct,endOfPrefix,otherPrefix))}function onBlank(code$1){return self$1.containerState.initialBlankLine=!0,initialSize++,endOfPrefix(code$1)}function otherPrefix(code$1){return markdownSpace(code$1)?(effects.enter(`listItemPrefixWhitespace`),effects.consume(code$1),effects.exit(`listItemPrefixWhitespace`),endOfPrefix):nok(code$1)}function endOfPrefix(code$1){return self$1.containerState.size=initialSize+self$1.sliceSerialize(effects.exit(`listItemPrefix`),!0).length,ok$2(code$1)}}function tokenizeListContinuation(effects,ok$2,nok){let self$1=this;return self$1.containerState._closeFlow=void 0,effects.check(blankLine,onBlank,notBlank);function onBlank(code$1){return self$1.containerState.furtherBlankLines=self$1.containerState.furtherBlankLines||self$1.containerState.initialBlankLine,factorySpace(effects,ok$2,`listItemIndent`,self$1.containerState.size+1)(code$1)}function notBlank(code$1){return self$1.containerState.furtherBlankLines||!markdownSpace(code$1)?(self$1.containerState.furtherBlankLines=void 0,self$1.containerState.initialBlankLine=void 0,notInCurrentItem(code$1)):(self$1.containerState.furtherBlankLines=void 0,self$1.containerState.initialBlankLine=void 0,effects.attempt(indentConstruct,ok$2,notInCurrentItem)(code$1))}function notInCurrentItem(code$1){return self$1.containerState._closeFlow=!0,self$1.interrupt=void 0,factorySpace(effects,effects.attempt(list$1,ok$2,nok),`linePrefix`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(code$1)}}function tokenizeIndent(effects,ok$2,nok){let self$1=this;return factorySpace(effects,afterPrefix,`listItemIndent`,self$1.containerState.size+1);function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return tail&&tail[1].type===`listItemIndent`&&tail[2].sliceSerialize(tail[1],!0).length===self$1.containerState.size?ok$2(code$1):nok(code$1)}}function tokenizeListEnd(effects){effects.exit(this.containerState.type)}function tokenizeListItemPrefixWhitespace(effects,ok$2,nok){let self$1=this;return factorySpace(effects,afterPrefix,`listItemPrefixWhitespace`,self$1.parser.constructs.disable.null.includes(`codeIndented`)?void 0:5);function afterPrefix(code$1){let tail=self$1.events[self$1.events.length-1];return!markdownSpace(code$1)&&tail&&tail[1].type===`listItemPrefixWhitespace`?ok$2(code$1):nok(code$1)}}const setextUnderline={name:`setextUnderline`,resolveTo:resolveToSetextUnderline,tokenize:tokenizeSetextUnderline};function resolveToSetextUnderline(events,context$1){let index$1=events.length,content$2,text$5,definition$29;for(;index$1--;)if(events[index$1][0]===`enter`){if(events[index$1][1].type===`content`){content$2=index$1;break}events[index$1][1].type===`paragraph`&&(text$5=index$1)}else events[index$1][1].type===`content`&&events.splice(index$1,1),!definition$29&&events[index$1][1].type===`definition`&&(definition$29=index$1);let heading$1={type:`setextHeading`,start:{...events[text$5][1].start},end:{...events[events.length-1][1].end}};return events[text$5][1].type=`setextHeadingText`,definition$29?(events.splice(text$5,0,[`enter`,heading$1,context$1]),events.splice(definition$29+1,0,[`exit`,events[content$2][1],context$1]),events[content$2][1].end={...events[definition$29][1].end}):events[content$2][1]=heading$1,events.push([`exit`,heading$1,context$1]),events}function tokenizeSetextUnderline(effects,ok$2,nok){let self$1=this,marker;return start;function start(code$1){let index$1=self$1.events.length,paragraph$1;for(;index$1--;)if(self$1.events[index$1][1].type!==`lineEnding`&&self$1.events[index$1][1].type!==`linePrefix`&&self$1.events[index$1][1].type!==`content`){paragraph$1=self$1.events[index$1][1].type===`paragraph`;break}return!self$1.parser.lazy[self$1.now().line]&&(self$1.interrupt||paragraph$1)?(effects.enter(`setextHeadingLine`),marker=code$1,before(code$1)):nok(code$1)}function before(code$1){return effects.enter(`setextHeadingLineSequence`),inside(code$1)}function inside(code$1){return code$1===marker?(effects.consume(code$1),inside):(effects.exit(`setextHeadingLineSequence`),markdownSpace(code$1)?factorySpace(effects,after,`lineSuffix`)(code$1):after(code$1))}function after(code$1){return code$1===null||markdownLineEnding(code$1)?(effects.exit(`setextHeadingLine`),ok$2(code$1)):nok(code$1)}}const flow={tokenize:initializeFlow};function initializeFlow(effects){let self$1=this,initial=effects.attempt(blankLine,atBlankEnding,effects.attempt(this.parser.constructs.flowInitial,afterConstruct,factorySpace(effects,effects.attempt(this.parser.constructs.flow,afterConstruct,effects.attempt(content$1,afterConstruct)),`linePrefix`)));return initial;function atBlankEnding(code$1){if(code$1===null){effects.consume(code$1);return}return effects.enter(`lineEndingBlank`),effects.consume(code$1),effects.exit(`lineEndingBlank`),self$1.currentConstruct=void 0,initial}function afterConstruct(code$1){if(code$1===null){effects.consume(code$1);return}return effects.enter(`lineEnding`),effects.consume(code$1),effects.exit(`lineEnding`),self$1.currentConstruct=void 0,initial}}const resolver={resolveAll:createResolver()},string=initializeFactory(`string`),text$2=initializeFactory(`text`);function initializeFactory(field){return{resolveAll:createResolver(field===`text`?resolveAllLineSuffixes:void 0),tokenize:initializeText};function initializeText(effects){let self$1=this,constructs$1=this.parser.constructs[field],text$5=effects.attempt(constructs$1,start,notText);return start;function start(code$1){return atBreak(code$1)?text$5(code$1):notText(code$1)}function notText(code$1){if(code$1===null){effects.consume(code$1);return}return effects.enter(`data`),effects.consume(code$1),data$10}function data$10(code$1){return atBreak(code$1)?(effects.exit(`data`),text$5(code$1)):(effects.consume(code$1),data$10)}function atBreak(code$1){if(code$1===null)return!0;let list$2=constructs$1[code$1],index$1=-1;if(list$2)for(;++index$1attentionMarkers,contentInitial:()=>contentInitial,disable:()=>disable,document:()=>document$2,flow:()=>flow$1,flowInitial:()=>flowInitial,insideSpan:()=>insideSpan,string:()=>string$1,text:()=>text$3});const document$2={42:list$1,43:list$1,45:list$1,48:list$1,49:list$1,50:list$1,51:list$1,52:list$1,53:list$1,54:list$1,55:list$1,56:list$1,57:list$1,62:blockQuote},contentInitial={91:definition},flowInitial={[-2]:codeIndented,[-1]:codeIndented,32:codeIndented},flow$1={35:headingAtx,42:thematicBreak$1,45:[setextUnderline,thematicBreak$1],60:htmlFlow,61:setextUnderline,95:thematicBreak$1,96:codeFenced,126:codeFenced},string$1={38:characterReference,92:characterEscape},text$3={[-5]:lineEnding,[-4]:lineEnding,[-3]:lineEnding,33:labelStartImage,38:characterReference,42:attention,60:[autolink,htmlText],91:labelStartLink,92:[hardBreakEscape,characterEscape],93:labelEnd,95:attention,96:codeText},insideSpan={null:[attention,resolver]},attentionMarkers={null:[42,95]},disable={null:[]};function createTokenizer(parser,initialize,from){let point$3={_bufferIndex:-1,_index:0,line:from&&from.line||1,column:from&&from.column||1,offset:from&&from.offset||0},columnStart={},resolveAllConstructs=[],chunks=[],stack$1=[],consumed=!0,effects={attempt:constructFactory(onsuccessfulconstruct),check:constructFactory(onsuccessfulcheck),consume,enter,exit:exit$1,interrupt:constructFactory(onsuccessfulcheck,{interrupt:!0})},context$1={code:null,containerState:{},defineSkip,events:[],now,parser,previous:null,sliceSerialize,sliceStream,write},state=initialize.tokenize.call(context$1,effects),expectedCode;return initialize.resolveAll&&resolveAllConstructs.push(initialize),context$1;function write(slice){return chunks=push(chunks,slice),main(),chunks[chunks.length-1]===null?(addResult(initialize,0),context$1.events=resolveAll(resolveAllConstructs,context$1.events,context$1),context$1.events):[]}function sliceSerialize(token,expandTabs){return serializeChunks(sliceStream(token),expandTabs)}function sliceStream(token){return sliceChunks(chunks,token)}function now(){let{_bufferIndex,_index,line,column,offset:offset$1}=point$3;return{_bufferIndex,_index,line,column,offset:offset$1}}function defineSkip(value$1){columnStart[value$1.line]=value$1.column,accountForPotentialSkip()}function main(){let chunkIndex;for(;point$3._index-1){let head$1=view[0];typeof head$1==`string`?view[0]=head$1.slice(startBufferIndex):view.shift()}endBufferIndex>0&&view.push(chunks[endIndex].slice(0,endBufferIndex))}return view}function serializeChunks(chunks,expandTabs){let index$1=-1,result=[],atTab;for(;++index$10){let tail=context$1.tokenStack[context$1.tokenStack.length-1],handler=tail[1]||defaultOnError;handler.call(context$1,void 0,tail[0])}for(tree.position={start:point$1(events.length>0?events[0][1].start:{line:1,column:1,offset:0}),end:point$1(events.length>0?events[events.length-2][1].end:{line:1,column:1,offset:0})},index$1=-1;++index$10&&result.push({type:`text`,value:` `}),result}function trimMarkdownSpaceStart(value$1){let index$1=0,code$1=value$1.charCodeAt(index$1);for(;code$1===9||code$1===32;)index$1++,code$1=value$1.charCodeAt(index$1);return value$1.slice(index$1)}function toHast(tree,options$1){let state=createState(tree,options$1),node$1=state.one(tree,void 0),foot=footer(state),result=Array.isArray(node$1)?{type:`root`,children:node$1}:node$1||{type:`root`,children:[]};return foot&&(ok(`children`in result),result.children.push({type:`text`,value:` -`},foot)),result}function remarkRehype(destination,options$1){return destination&&`run`in destination?async function(tree,file){let hastTree=toHast(tree,{file,...options$1});await destination.run(hastTree,file)}:function(tree,file){return toHast(tree,{file,...destination||options$1})}}function bail(error){if(error)throw error}var require_extend=__commonJSMin((exports,module)=>{var hasOwn=Object.prototype.hasOwnProperty,toStr=Object.prototype.toString,defineProperty=Object.defineProperty,gOPD=Object.getOwnPropertyDescriptor,isArray=function(arr){return typeof Array.isArray==`function`?Array.isArray(arr):toStr.call(arr)===`[object Array]`},isPlainObject$1=function(obj){if(!obj||toStr.call(obj)!==`[object Object]`)return!1;var hasOwnConstructor=hasOwn.call(obj,`constructor`),hasIsPrototypeOf=obj.constructor&&obj.constructor.prototype&&hasOwn.call(obj.constructor.prototype,`isPrototypeOf`);if(obj.constructor&&!hasOwnConstructor&&!hasIsPrototypeOf)return!1;for(var key$1 in obj);return key$1===void 0||hasOwn.call(obj,key$1)},setProperty=function(target$1,options$1){defineProperty&&options$1.name===`__proto__`?defineProperty(target$1,options$1.name,{enumerable:!0,configurable:!0,value:options$1.newValue,writable:!0}):target$1[options$1.name]=options$1.newValue},getProperty=function(obj,name$2){if(name$2===`__proto__`)if(hasOwn.call(obj,name$2)){if(gOPD)return gOPD(obj,name$2).value}else return;return obj[name$2]};module.exports=function extend$2(){var options$1,name$2,src,copy,copyIsArray,clone$2,target$1=arguments[0],i$1=1,length=arguments.length,deep=!1;for(typeof target$1==`boolean`&&(deep=target$1,target$1=arguments[1]||{},i$1=2),(target$1==null||typeof target$1!=`object`&&typeof target$1!=`function`)&&(target$1={});i$1parameters.length,result;fnExpectsCallback&¶meters.push(done);try{result=middleware.apply(this,parameters)}catch(error){let exception=error;if(fnExpectsCallback&&called)throw exception;return done(exception)}fnExpectsCallback||(result&&result.then&&typeof result.then==`function`?result.then(then,done):result instanceof Error?done(result):then(result))}function done(error,...output){called||(called=!0,callback(error,...output))}function then(value$1){done(null,value$1)}}var VFileMessage=class extends Error{constructor(causeOrReason,optionsOrParentOrPlace,origin){super(),typeof optionsOrParentOrPlace==`string`&&(origin=optionsOrParentOrPlace,optionsOrParentOrPlace=void 0);let reason=``,options$1={},legacyCause=!1;if(optionsOrParentOrPlace&&(options$1=`line`in optionsOrParentOrPlace&&`column`in optionsOrParentOrPlace||`start`in optionsOrParentOrPlace&&`end`in optionsOrParentOrPlace?{place:optionsOrParentOrPlace}:`type`in optionsOrParentOrPlace?{ancestors:[optionsOrParentOrPlace],place:optionsOrParentOrPlace.position}:{...optionsOrParentOrPlace}),typeof causeOrReason==`string`?reason=causeOrReason:!options$1.cause&&causeOrReason&&(legacyCause=!0,reason=causeOrReason.message,options$1.cause=causeOrReason),!options$1.ruleId&&!options$1.source&&typeof origin==`string`){let index$1=origin.indexOf(`:`);index$1===-1?options$1.ruleId=origin:(options$1.source=origin.slice(0,index$1),options$1.ruleId=origin.slice(index$1+1))}if(!options$1.place&&options$1.ancestors&&options$1.ancestors){let parent=options$1.ancestors[options$1.ancestors.length-1];parent&&(options$1.place=parent.position)}let start=options$1.place&&`start`in options$1.place?options$1.place.start:options$1.place;this.ancestors=options$1.ancestors||void 0,this.cause=options$1.cause||void 0,this.column=start?start.column:void 0,this.fatal=void 0,this.file,this.message=reason,this.line=start?start.line:void 0,this.name=stringifyPosition(options$1.place)||`1:1`,this.place=options$1.place||void 0,this.reason=this.message,this.ruleId=options$1.ruleId||void 0,this.source=options$1.source||void 0,this.stack=legacyCause&&options$1.cause&&typeof options$1.cause.stack==`string`?options$1.cause.stack:``,this.actual,this.expected,this.note,this.url}};VFileMessage.prototype.file=``,VFileMessage.prototype.name=``,VFileMessage.prototype.reason=``,VFileMessage.prototype.message=``,VFileMessage.prototype.stack=``,VFileMessage.prototype.column=void 0,VFileMessage.prototype.line=void 0,VFileMessage.prototype.ancestors=void 0,VFileMessage.prototype.cause=void 0,VFileMessage.prototype.fatal=void 0,VFileMessage.prototype.place=void 0,VFileMessage.prototype.ruleId=void 0,VFileMessage.prototype.source=void 0;const minpath={basename,dirname,extname,join,sep:`/`};function basename(path,extname$1){if(extname$1!==void 0&&typeof extname$1!=`string`)throw TypeError(`"ext" argument must be a string`);assertPath$1(path);let start=0,end=-1,index$1=path.length,seenNonSlash;if(extname$1===void 0||extname$1.length===0||extname$1.length>path.length){for(;index$1--;)if(path.codePointAt(index$1)===47){if(seenNonSlash){start=index$1+1;break}}else end<0&&(seenNonSlash=!0,end=index$1+1);return end<0?``:path.slice(start,end)}if(extname$1===path)return``;let firstNonSlashEnd=-1,extnameIndex=extname$1.length-1;for(;index$1--;)if(path.codePointAt(index$1)===47){if(seenNonSlash){start=index$1+1;break}}else firstNonSlashEnd<0&&(seenNonSlash=!0,firstNonSlashEnd=index$1+1),extnameIndex>-1&&(path.codePointAt(index$1)===extname$1.codePointAt(extnameIndex--)?extnameIndex<0&&(end=index$1):(extnameIndex=-1,end=firstNonSlashEnd));return start===end?end=firstNonSlashEnd:end<0&&(end=path.length),path.slice(start,end)}function dirname(path){if(assertPath$1(path),path.length===0)return`.`;let end=-1,index$1=path.length,unmatchedSlash;for(;--index$1;)if(path.codePointAt(index$1)===47){if(unmatchedSlash){end=index$1;break}}else unmatchedSlash||=!0;return end<0?path.codePointAt(0)===47?`/`:`.`:end===1&&path.codePointAt(0)===47?`//`:path.slice(0,end)}function extname(path){assertPath$1(path);let index$1=path.length,end=-1,startPart=0,startDot=-1,preDotState=0,unmatchedSlash;for(;index$1--;){let code$1=path.codePointAt(index$1);if(code$1===47){if(unmatchedSlash){startPart=index$1+1;break}continue}end<0&&(unmatchedSlash=!0,end=index$1+1),code$1===46?startDot<0?startDot=index$1:preDotState!==1&&(preDotState=1):startDot>-1&&(preDotState=-1)}return startDot<0||end<0||preDotState===0||preDotState===1&&startDot===end-1&&startDot===startPart+1?``:path.slice(startDot,end)}function join(...segments){let index$1=-1,joined;for(;++index$10&&path.codePointAt(path.length-1)===47&&(value$1+=`/`),absolute?`/`+value$1:value$1}function normalizeString(path,allowAboveRoot){let result=``,lastSegmentLength=0,lastSlash=-1,dots=0,index$1=-1,code$1,lastSlashIndex;for(;++index$1<=path.length;){if(index$12){if(lastSlashIndex=result.lastIndexOf(`/`),lastSlashIndex!==result.length-1){lastSlashIndex<0?(result=``,lastSegmentLength=0):(result=result.slice(0,lastSlashIndex),lastSegmentLength=result.length-1-result.lastIndexOf(`/`)),lastSlash=index$1,dots=0;continue}}else if(result.length>0){result=``,lastSegmentLength=0,lastSlash=index$1,dots=0;continue}}allowAboveRoot&&(result=result.length>0?result+`/..`:`..`,lastSegmentLength=2)}else result.length>0?result+=`/`+path.slice(lastSlash+1,index$1):result=path.slice(lastSlash+1,index$1),lastSegmentLength=index$1-lastSlash-1;lastSlash=index$1,dots=0}else code$1===46&&dots>-1?dots++:dots=-1}return result}function assertPath$1(path){if(typeof path!=`string`)throw TypeError(`Path must be a string. Received `+JSON.stringify(path))}const minproc={cwd};function cwd(){return`/`}function isUrl(fileUrlOrPath){return!!(typeof fileUrlOrPath==`object`&&fileUrlOrPath&&`href`in fileUrlOrPath&&fileUrlOrPath.href&&`protocol`in fileUrlOrPath&&fileUrlOrPath.protocol&&fileUrlOrPath.auth===void 0)}function urlToPath(path){if(typeof path==`string`)path=new URL(path);else if(!isUrl(path)){let error=TypeError('The "path" argument must be of type string or an instance of URL. Received `'+path+"`");throw error.code=`ERR_INVALID_ARG_TYPE`,error}if(path.protocol!==`file:`){let error=TypeError(`The URL must be of scheme file`);throw error.code=`ERR_INVALID_URL_SCHEME`,error}return getPathFromURLPosix(path)}function getPathFromURLPosix(url){if(url.hostname!==``){let error=TypeError(`File URL host must be "localhost" or empty on darwin`);throw error.code=`ERR_INVALID_FILE_URL_HOST`,error}let pathname=url.pathname,index$1=-1;for(;++index$10){let[primary,...rest]=parameters$1,currentPrimary=attachers[entryIndex][1];isPlainObject(currentPrimary)&&isPlainObject(primary)&&(primary=(0,import_extend.default)(!0,currentPrimary,primary)),attachers[entryIndex]=[plugin,primary,...rest]}}}};const unified=new Processor().freeze();function assertParser(name$2,value$1){if(typeof value$1!=`function`)throw TypeError("Cannot `"+name$2+"` without `parser`")}function assertCompiler(name$2,value$1){if(typeof value$1!=`function`)throw TypeError("Cannot `"+name$2+"` without `compiler`")}function assertUnfrozen(name$2,frozen){if(frozen)throw Error("Cannot call `"+name$2+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function assertNode(node$1){if(!isPlainObject(node$1)||typeof node$1.type!=`string`)throw TypeError("Expected node, got `"+node$1+"`")}function assertDone(name$2,asyncName,complete){if(!complete)throw Error("`"+name$2+"` finished async. Use `"+asyncName+"` instead")}function vfile(value$1){return looksLikeAVFile(value$1)?value$1:new VFile(value$1)}function looksLikeAVFile(value$1){return!!(value$1&&typeof value$1==`object`&&`message`in value$1&&`messages`in value$1)}function looksLikeAValue(value$1){return typeof value$1==`string`||isUint8Array(value$1)}function isUint8Array(value$1){return!!(value$1&&typeof value$1==`object`&&`byteLength`in value$1&&`byteOffset`in value$1)}function useMarkdown(){let instance=unified().use(remarkParse).use(remarkRehype).use(rehypeStringify);return{process:markdown=>instance.processSync(markdown).toString()}}var require_asset_path=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.baseAssetPath=void 0;let isWeb=typeof window<`u`&&window.document!==void 0,currentScript=isWeb?window.document.currentScript:null,basePath=`/`;currentScript&&(basePath=currentScript.src.replace(/#.*$/,``).replace(/\?.*$/,``).replace(/\/[^\/]+$/,`/`)),exports.baseAssetPath=basePath}),require_default_model_fetcher=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.defaultModelFetcher=void 0;let defaultModelFetcher=path=>fetch(path).then(model=>model.arrayBuffer());exports.defaultModelFetcher=defaultModelFetcher}),require_logging=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.log=exports.LOG_PREFIX=void 0,exports.LOG_PREFIX=`[VAD]`;let levels=[`error`,`debug`,`warn`];function getLog(level){return(...args)=>{console[level](exports.LOG_PREFIX,...args)}}let _log=levels.reduce((acc,level)=>(acc[level]=getLog(level),acc),{});exports.log=_log}),require_messages=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.Message=void 0;var Message;(function(Message$1){Message$1.AudioFrame=`AUDIO_FRAME`,Message$1.SpeechStart=`SPEECH_START`,Message$1.VADMisfire=`VAD_MISFIRE`,Message$1.SpeechEnd=`SPEECH_END`,Message$1.SpeechStop=`SPEECH_STOP`,Message$1.SpeechRealStart=`SPEECH_REAL_START`,Message$1.FrameProcessed=`FRAME_PROCESSED`})(Message||(exports.Message=Message={}))}),require_frame_processor=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.FrameProcessor=exports.validateOptions=exports.defaultV5FrameProcessorOptions=exports.defaultLegacyFrameProcessorOptions=void 0;let logging_1$4=require_logging(),messages_1$3=require_messages(),RECOMMENDED_FRAME_SAMPLES=[512,1024,1536];exports.defaultLegacyFrameProcessorOptions={positiveSpeechThreshold:.5,negativeSpeechThreshold:.35,preSpeechPadFrames:1,redemptionFrames:8,frameSamples:1536,minSpeechFrames:3,submitUserSpeechOnPause:!1},exports.defaultV5FrameProcessorOptions={positiveSpeechThreshold:.5,negativeSpeechThreshold:.35,preSpeechPadFrames:3,redemptionFrames:24,frameSamples:512,minSpeechFrames:9,submitUserSpeechOnPause:!1};function validateOptions(options$1){RECOMMENDED_FRAME_SAMPLES.includes(options$1.frameSamples)||logging_1$4.log.warn(`You are using an unusual frame size`),(options$1.positiveSpeechThreshold<0||options$1.positiveSpeechThreshold>1)&&logging_1$4.log.error(`positiveSpeechThreshold should be a number between 0 and 1`),(options$1.negativeSpeechThreshold<0||options$1.negativeSpeechThreshold>options$1.positiveSpeechThreshold)&&logging_1$4.log.error(`negativeSpeechThreshold should be between 0 and positiveSpeechThreshold`),options$1.preSpeechPadFrames<0&&logging_1$4.log.error(`preSpeechPadFrames should be positive`),options$1.redemptionFrames<0&&logging_1$4.log.error(`redemptionFrames should be positive`)}exports.validateOptions=validateOptions;let concatArrays=arrays=>{let sizes=arrays.reduce((out,next)=>(out.push(out.at(-1)+next.length),out),[0]),outArray=new Float32Array(sizes.at(-1));return arrays.forEach((arr,index$1)=>{let place=sizes[index$1];outArray.set(arr,place)}),outArray};var FrameProcessor=class{constructor(modelProcessFunc,modelResetFunc,options$1){this.modelProcessFunc=modelProcessFunc,this.modelResetFunc=modelResetFunc,this.options=options$1,this.speaking=!1,this.redemptionCounter=0,this.speechFrameCount=0,this.active=!1,this.speechRealStartFired=!1,this.reset=()=>{this.speaking=!1,this.speechRealStartFired=!1,this.audioBuffer=[],this.modelResetFunc(),this.redemptionCounter=0,this.speechFrameCount=0},this.pause=handleEvent=>{this.active=!1,this.options.submitUserSpeechOnPause?this.endSegment(handleEvent):this.reset()},this.resume=()=>{this.active=!0},this.endSegment=handleEvent=>{let audioBuffer=this.audioBuffer;this.audioBuffer=[];let speaking=this.speaking;if(this.reset(),speaking){let speechFrameCount=audioBuffer.reduce((acc,item)=>item.isSpeech?acc+1:acc,0);if(speechFrameCount>=this.options.minSpeechFrames){let audio=concatArrays(audioBuffer.map(item=>item.frame));handleEvent({msg:messages_1$3.Message.SpeechEnd,audio})}else handleEvent({msg:messages_1$3.Message.VADMisfire})}return{}},this.process=async(frame$1,handleEvent)=>{if(!this.active)return;let probs=await this.modelProcessFunc(frame$1),isSpeech=probs.isSpeech>=this.options.positiveSpeechThreshold;if(handleEvent({probs,msg:messages_1$3.Message.FrameProcessed,frame:frame$1}),this.audioBuffer.push({frame:frame$1,isSpeech}),isSpeech&&(this.speechFrameCount++,this.redemptionCounter=0),isSpeech&&!this.speaking&&(this.speaking=!0,handleEvent({msg:messages_1$3.Message.SpeechStart})),this.speaking&&this.speechFrameCount===this.options.minSpeechFrames&&!this.speechRealStartFired&&(this.speechRealStartFired=!0,handleEvent({msg:messages_1$3.Message.SpeechRealStart})),probs.isSpeech=this.options.redemptionFrames){this.redemptionCounter=0,this.speechFrameCount=0,this.speaking=!1,this.speechRealStartFired=!1;let audioBuffer=this.audioBuffer;this.audioBuffer=[];let speechFrameCount=audioBuffer.reduce((acc,item)=>item.isSpeech?acc+1:acc,0);if(speechFrameCount>=this.options.minSpeechFrames){let audio=concatArrays(audioBuffer.map(item=>item.frame));handleEvent({msg:messages_1$3.Message.SpeechEnd,audio})}else handleEvent({msg:messages_1$3.Message.VADMisfire})}if(!this.speaking){for(;this.audioBuffer.length>this.options.preSpeechPadFrames;)this.audioBuffer.shift();this.speechFrameCount=0}},this.audioBuffer=[],this.reset()}};exports.FrameProcessor=FrameProcessor}),backends,backendsSortedByPriority,registerBackend,resolveBackend,init_backend_impl=__esmMin(()=>{backends={},backendsSortedByPriority=[],registerBackend=(name$2,backend,priority)=>{if(backend&&typeof backend.init==`function`&&typeof backend.createSessionHandler==`function`){let currentBackend=backends[name$2];if(currentBackend===void 0)backends[name$2]={backend,priority};else if(currentBackend.priority>priority)return;else if(currentBackend.priority===priority&¤tBackend.backend!==backend)throw Error(`cannot register backend "${name$2}" using priority ${priority}`);if(priority>=0){let i$1=backendsSortedByPriority.indexOf(name$2);i$1!==-1&&backendsSortedByPriority.splice(i$1,1);for(let i$2=0;i$2{let backendNames=backendHints.length===0?backendsSortedByPriority:backendHints,errors=[];for(let backendName of backendNames){let backendInfo=backends[backendName];if(backendInfo){if(backendInfo.initialized)return backendInfo.backend;if(backendInfo.aborted)continue;let isInitializing=!!backendInfo.initPromise;try{return isInitializing||(backendInfo.initPromise=backendInfo.backend.init()),await backendInfo.initPromise,backendInfo.initialized=!0,backendInfo.backend}catch(e$3){isInitializing||errors.push({name:backendName,err:e$3}),backendInfo.aborted=!0}finally{delete backendInfo.initPromise}}}throw Error(`no available backend found. ERR: ${errors.map(e$3=>`[${e$3.name}] ${e$3.err}`).join(`, `)}`)}}),init_backend=__esmMin(()=>{init_backend_impl()}),EnvImpl,init_env_impl=__esmMin(()=>{EnvImpl=class{constructor(){this.wasm={},this.webgl={},this.logLevelInternal=`warning`}set logLevel(value$1){if(value$1!==void 0){if(typeof value$1!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(value$1)===-1)throw Error(`Unsupported logging level: ${value$1}`);this.logLevelInternal=value$1}}get logLevel(){return this.logLevelInternal}}}),env,init_env=__esmMin(()=>{init_env_impl(),env=new EnvImpl}),isBigInt64ArrayAvailable,isBigUint64ArrayAvailable,NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP,NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP,calculateSize,Tensor$1,init_tensor_impl=__esmMin(()=>{isBigInt64ArrayAvailable=typeof BigInt64Array<`u`&&typeof BigInt64Array.from==`function`,isBigUint64ArrayAvailable=typeof BigUint64Array<`u`&&typeof BigUint64Array.from==`function`,NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array]]),NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),isBigInt64ArrayAvailable&&(NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP.set(`int64`,BigInt64Array),NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP.set(BigInt64Array,`int64`)),isBigUint64ArrayAvailable&&(NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP.set(`uint64`,BigUint64Array),NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP.set(BigUint64Array,`uint64`)),calculateSize=dims=>{let size$1=1;for(let i$1=0;i$1{let canvas=document.createElement(`canvas`),context$1=canvas.getContext(`2d`);if(!image$1||!context$1)return reject();let newImage=new Image;newImage.crossOrigin=`Anonymous`,newImage.src=image$1,newImage.onload=()=>{canvas.width=newImage.width,canvas.height=newImage.height,context$1.drawImage(newImage,0,0,canvas.width,canvas.height);let img=context$1.getImageData(0,0,canvas.width,canvas.height);if(options$1!==void 0){if(options$1.height!==void 0&&options$1.height!==canvas.height)throw Error(`Image input config height doesn't match ImageBitmap height`);if(tensorConfig.height=canvas.height,options$1.width!==void 0&&options$1.width!==canvas.width)throw Error(`Image input config width doesn't match ImageBitmap width`);tensorConfig.width=canvas.width}else tensorConfig.height=canvas.height,tensorConfig.width=canvas.width;resolve$1(Tensor$1.bufferToTensor(img.data,tensorConfig))}});else throw Error(`Input data provided is not supported - aborted tensor creation`);if(data$10!==void 0)return Tensor$1.bufferToTensor(data$10,tensorConfig);throw Error(`Input data provided is not supported - aborted tensor creation`)}toImageData(options$1){var _a$2,_b;let pixels2DContext=document.createElement(`canvas`).getContext(`2d`),image$1;if(pixels2DContext!=null){let width=this.dims[3],height=this.dims[2],channels=this.dims[1],inputformat=options$1===void 0||options$1.format===void 0?`RGB`:options$1.format,normMean=options$1===void 0||(_a$2=options$1.norm)?.mean===void 0?255:options$1.norm.mean,normBias=options$1===void 0||(_b=options$1.norm)?.bias===void 0?0:options$1.norm.bias,offset$1=height*width;if(options$1!==void 0){if(options$1.height!==void 0&&options$1.height!==height)throw Error(`Image output config height doesn't match tensor height`);if(options$1.width!==void 0&&options$1.width!==width)throw Error(`Image output config width doesn't match tensor width`);if(options$1.format!==void 0&&channels===4&&options$1.format!==`RGBA`||channels===3&&options$1.format!==`RGB`&&options$1.format!==`BGR`)throw Error(`Tensor format doesn't match input tensor dims`)}let step=4,rImagePointer=0,gImagePointer=1,bImagePointer=2,aImagePointer=3,rTensorPointer=0,gTensorPointer=offset$1,bTensorPointer=offset$1*2,aTensorPointer=-1;inputformat===`RGBA`?(rTensorPointer=0,gTensorPointer=offset$1,bTensorPointer=offset$1*2,aTensorPointer=offset$1*3):inputformat===`RGB`?(rTensorPointer=0,gTensorPointer=offset$1,bTensorPointer=offset$1*2):inputformat===`RBG`&&(rTensorPointer=0,bTensorPointer=offset$1,gTensorPointer=offset$1*2),image$1=pixels2DContext.createImageData(width,height);for(let i$1=0;i$1{init_tensor_impl(),Tensor=Tensor$1}),InferenceSession,init_inference_session_impl=__esmMin(()=>{init_backend_impl(),init_tensor(),InferenceSession=class InferenceSession{constructor(handler){this.handler=handler}async run(feeds,arg1,arg2){let fetches={},options$1={};if(typeof feeds!=`object`||!feeds||feeds instanceof Tensor||Array.isArray(feeds))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let isFetchesEmpty=!0;if(typeof arg1==`object`){if(arg1===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(arg1 instanceof Tensor)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(arg1)){if(arg1.length===0)throw TypeError(`'fetches' cannot be an empty array.`);isFetchesEmpty=!1;for(let name$2 of arg1){if(typeof name$2!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(name$2)===-1)throw RangeError(`'fetches' contains invalid output name: ${name$2}.`);fetches[name$2]=null}if(typeof arg2==`object`&&arg2)options$1=arg2;else if(arg2!==void 0)throw TypeError(`'options' must be an object.`)}else{let isFetches=!1,arg1Keys=Object.getOwnPropertyNames(arg1);for(let name$2 of this.outputNames)if(arg1Keys.indexOf(name$2)!==-1){let v$1=arg1[name$2];(v$1===null||v$1 instanceof Tensor)&&(isFetches=!0,isFetchesEmpty=!1,fetches[name$2]=v$1)}if(isFetches){if(typeof arg2==`object`&&arg2)options$1=arg2;else if(arg2!==void 0)throw TypeError(`'options' must be an object.`)}else options$1=arg1}}else if(arg1!==void 0)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let name$2 of this.inputNames)if(feeds[name$2]===void 0)throw Error(`input '${name$2}' is missing in 'feeds'.`);if(isFetchesEmpty)for(let name$2 of this.outputNames)fetches[name$2]=null;let results=await this.handler.run(feeds,fetches,options$1),returnValue={};for(let key$1 in results)Object.hasOwnProperty.call(results,key$1)&&(returnValue[key$1]=new Tensor(results[key$1].type,results[key$1].data,results[key$1].dims));return returnValue}static async create(arg0,arg1,arg2,arg3){let filePathOrUint8Array,options$1={};if(typeof arg0==`string`){if(filePathOrUint8Array=arg0,typeof arg1==`object`&&arg1)options$1=arg1;else if(arg1!==void 0)throw TypeError(`'options' must be an object.`)}else if(arg0 instanceof Uint8Array){if(filePathOrUint8Array=arg0,typeof arg1==`object`&&arg1)options$1=arg1;else if(arg1!==void 0)throw TypeError(`'options' must be an object.`)}else if(arg0 instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&arg0 instanceof SharedArrayBuffer){let buffer$1=arg0,byteOffset=0,byteLength=arg0.byteLength;if(typeof arg1==`object`&&arg1)options$1=arg1;else if(typeof arg1==`number`){if(byteOffset=arg1,!Number.isSafeInteger(byteOffset))throw RangeError(`'byteOffset' must be an integer.`);if(byteOffset<0||byteOffset>=buffer$1.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${buffer$1.byteLength}).`);if(byteLength=arg0.byteLength-byteOffset,typeof arg2==`number`){if(byteLength=arg2,!Number.isSafeInteger(byteLength))throw RangeError(`'byteLength' must be an integer.`);if(byteLength<=0||byteOffset+byteLength>buffer$1.byteLength)throw RangeError(`'byteLength' is out of range (0, ${buffer$1.byteLength-byteOffset}].`);if(typeof arg3==`object`&&arg3)options$1=arg3;else if(arg3!==void 0)throw TypeError(`'options' must be an object.`)}else if(arg2!==void 0)throw TypeError(`'byteLength' must be a number.`)}else if(arg1!==void 0)throw TypeError(`'options' must be an object.`);filePathOrUint8Array=new Uint8Array(buffer$1,byteOffset,byteLength)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let eps=options$1.executionProviders||[],backendHints=eps.map(i$1=>typeof i$1==`string`?i$1:i$1.name),backend=await resolveBackend(backendHints),handler=await backend.createSessionHandler(filePathOrUint8Array,options$1);return new InferenceSession(handler)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}}}),InferenceSession$1,init_inference_session=__esmMin(()=>{init_inference_session_impl(),InferenceSession$1=InferenceSession}),init_onnx_value=__esmMin(()=>{}),lib_exports={};__export(lib_exports,{InferenceSession:()=>InferenceSession$1,Tensor:()=>Tensor,env:()=>env,registerBackend:()=>registerBackend});var init_lib=__esmMin(()=>{init_backend(),init_env(),init_inference_session(),init_tensor(),init_onnx_value()}),require_ort_web_min=__commonJSMin((exports,module)=>{ +`},foot)),result}function remarkRehype(destination,options$1){return destination&&`run`in destination?async function(tree,file){let hastTree=toHast(tree,{file,...options$1});await destination.run(hastTree,file)}:function(tree,file){return toHast(tree,{file,...destination||options$1})}}function bail(error){if(error)throw error}var require_extend=__commonJSMin((exports,module)=>{var hasOwn=Object.prototype.hasOwnProperty,toStr=Object.prototype.toString,defineProperty=Object.defineProperty,gOPD=Object.getOwnPropertyDescriptor,isArray=function(arr){return typeof Array.isArray==`function`?Array.isArray(arr):toStr.call(arr)===`[object Array]`},isPlainObject$1=function(obj){if(!obj||toStr.call(obj)!==`[object Object]`)return!1;var hasOwnConstructor=hasOwn.call(obj,`constructor`),hasIsPrototypeOf=obj.constructor&&obj.constructor.prototype&&hasOwn.call(obj.constructor.prototype,`isPrototypeOf`);if(obj.constructor&&!hasOwnConstructor&&!hasIsPrototypeOf)return!1;for(var key$1 in obj);return key$1===void 0||hasOwn.call(obj,key$1)},setProperty=function(target$1,options$1){defineProperty&&options$1.name===`__proto__`?defineProperty(target$1,options$1.name,{enumerable:!0,configurable:!0,value:options$1.newValue,writable:!0}):target$1[options$1.name]=options$1.newValue},getProperty=function(obj,name$2){if(name$2===`__proto__`)if(hasOwn.call(obj,name$2)){if(gOPD)return gOPD(obj,name$2).value}else return;return obj[name$2]};module.exports=function extend$2(){var options$1,name$2,src,copy,copyIsArray,clone$2,target$1=arguments[0],i$1=1,length=arguments.length,deep=!1;for(typeof target$1==`boolean`&&(deep=target$1,target$1=arguments[1]||{},i$1=2),(target$1==null||typeof target$1!=`object`&&typeof target$1!=`function`)&&(target$1={});i$1parameters.length,result;fnExpectsCallback&¶meters.push(done);try{result=middleware.apply(this,parameters)}catch(error){let exception=error;if(fnExpectsCallback&&called)throw exception;return done(exception)}fnExpectsCallback||(result&&result.then&&typeof result.then==`function`?result.then(then,done):result instanceof Error?done(result):then(result))}function done(error,...output){called||(called=!0,callback(error,...output))}function then(value$1){done(null,value$1)}}var VFileMessage=class extends Error{constructor(causeOrReason,optionsOrParentOrPlace,origin){super(),typeof optionsOrParentOrPlace==`string`&&(origin=optionsOrParentOrPlace,optionsOrParentOrPlace=void 0);let reason=``,options$1={},legacyCause=!1;if(optionsOrParentOrPlace&&(options$1=`line`in optionsOrParentOrPlace&&`column`in optionsOrParentOrPlace||`start`in optionsOrParentOrPlace&&`end`in optionsOrParentOrPlace?{place:optionsOrParentOrPlace}:`type`in optionsOrParentOrPlace?{ancestors:[optionsOrParentOrPlace],place:optionsOrParentOrPlace.position}:{...optionsOrParentOrPlace}),typeof causeOrReason==`string`?reason=causeOrReason:!options$1.cause&&causeOrReason&&(legacyCause=!0,reason=causeOrReason.message,options$1.cause=causeOrReason),!options$1.ruleId&&!options$1.source&&typeof origin==`string`){let index$1=origin.indexOf(`:`);index$1===-1?options$1.ruleId=origin:(options$1.source=origin.slice(0,index$1),options$1.ruleId=origin.slice(index$1+1))}if(!options$1.place&&options$1.ancestors&&options$1.ancestors){let parent=options$1.ancestors[options$1.ancestors.length-1];parent&&(options$1.place=parent.position)}let start=options$1.place&&`start`in options$1.place?options$1.place.start:options$1.place;this.ancestors=options$1.ancestors||void 0,this.cause=options$1.cause||void 0,this.column=start?start.column:void 0,this.fatal=void 0,this.file,this.message=reason,this.line=start?start.line:void 0,this.name=stringifyPosition(options$1.place)||`1:1`,this.place=options$1.place||void 0,this.reason=this.message,this.ruleId=options$1.ruleId||void 0,this.source=options$1.source||void 0,this.stack=legacyCause&&options$1.cause&&typeof options$1.cause.stack==`string`?options$1.cause.stack:``,this.actual,this.expected,this.note,this.url}};VFileMessage.prototype.file=``,VFileMessage.prototype.name=``,VFileMessage.prototype.reason=``,VFileMessage.prototype.message=``,VFileMessage.prototype.stack=``,VFileMessage.prototype.column=void 0,VFileMessage.prototype.line=void 0,VFileMessage.prototype.ancestors=void 0,VFileMessage.prototype.cause=void 0,VFileMessage.prototype.fatal=void 0,VFileMessage.prototype.place=void 0,VFileMessage.prototype.ruleId=void 0,VFileMessage.prototype.source=void 0;const minpath={basename,dirname,extname,join,sep:`/`};function basename(path,extname$1){if(extname$1!==void 0&&typeof extname$1!=`string`)throw TypeError(`"ext" argument must be a string`);assertPath$1(path);let start=0,end=-1,index$1=path.length,seenNonSlash;if(extname$1===void 0||extname$1.length===0||extname$1.length>path.length){for(;index$1--;)if(path.codePointAt(index$1)===47){if(seenNonSlash){start=index$1+1;break}}else end<0&&(seenNonSlash=!0,end=index$1+1);return end<0?``:path.slice(start,end)}if(extname$1===path)return``;let firstNonSlashEnd=-1,extnameIndex=extname$1.length-1;for(;index$1--;)if(path.codePointAt(index$1)===47){if(seenNonSlash){start=index$1+1;break}}else firstNonSlashEnd<0&&(seenNonSlash=!0,firstNonSlashEnd=index$1+1),extnameIndex>-1&&(path.codePointAt(index$1)===extname$1.codePointAt(extnameIndex--)?extnameIndex<0&&(end=index$1):(extnameIndex=-1,end=firstNonSlashEnd));return start===end?end=firstNonSlashEnd:end<0&&(end=path.length),path.slice(start,end)}function dirname(path){if(assertPath$1(path),path.length===0)return`.`;let end=-1,index$1=path.length,unmatchedSlash;for(;--index$1;)if(path.codePointAt(index$1)===47){if(unmatchedSlash){end=index$1;break}}else unmatchedSlash||=!0;return end<0?path.codePointAt(0)===47?`/`:`.`:end===1&&path.codePointAt(0)===47?`//`:path.slice(0,end)}function extname(path){assertPath$1(path);let index$1=path.length,end=-1,startPart=0,startDot=-1,preDotState=0,unmatchedSlash;for(;index$1--;){let code$1=path.codePointAt(index$1);if(code$1===47){if(unmatchedSlash){startPart=index$1+1;break}continue}end<0&&(unmatchedSlash=!0,end=index$1+1),code$1===46?startDot<0?startDot=index$1:preDotState!==1&&(preDotState=1):startDot>-1&&(preDotState=-1)}return startDot<0||end<0||preDotState===0||preDotState===1&&startDot===end-1&&startDot===startPart+1?``:path.slice(startDot,end)}function join(...segments){let index$1=-1,joined;for(;++index$10&&path.codePointAt(path.length-1)===47&&(value$1+=`/`),absolute?`/`+value$1:value$1}function normalizeString(path,allowAboveRoot){let result=``,lastSegmentLength=0,lastSlash=-1,dots=0,index$1=-1,code$1,lastSlashIndex;for(;++index$1<=path.length;){if(index$12){if(lastSlashIndex=result.lastIndexOf(`/`),lastSlashIndex!==result.length-1){lastSlashIndex<0?(result=``,lastSegmentLength=0):(result=result.slice(0,lastSlashIndex),lastSegmentLength=result.length-1-result.lastIndexOf(`/`)),lastSlash=index$1,dots=0;continue}}else if(result.length>0){result=``,lastSegmentLength=0,lastSlash=index$1,dots=0;continue}}allowAboveRoot&&(result=result.length>0?result+`/..`:`..`,lastSegmentLength=2)}else result.length>0?result+=`/`+path.slice(lastSlash+1,index$1):result=path.slice(lastSlash+1,index$1),lastSegmentLength=index$1-lastSlash-1;lastSlash=index$1,dots=0}else code$1===46&&dots>-1?dots++:dots=-1}return result}function assertPath$1(path){if(typeof path!=`string`)throw TypeError(`Path must be a string. Received `+JSON.stringify(path))}const minproc={cwd};function cwd(){return`/`}function isUrl(fileUrlOrPath){return!!(typeof fileUrlOrPath==`object`&&fileUrlOrPath&&`href`in fileUrlOrPath&&fileUrlOrPath.href&&`protocol`in fileUrlOrPath&&fileUrlOrPath.protocol&&fileUrlOrPath.auth===void 0)}function urlToPath(path){if(typeof path==`string`)path=new URL(path);else if(!isUrl(path)){let error=TypeError('The "path" argument must be of type string or an instance of URL. Received `'+path+"`");throw error.code=`ERR_INVALID_ARG_TYPE`,error}if(path.protocol!==`file:`){let error=TypeError(`The URL must be of scheme file`);throw error.code=`ERR_INVALID_URL_SCHEME`,error}return getPathFromURLPosix(path)}function getPathFromURLPosix(url){if(url.hostname!==``){let error=TypeError(`File URL host must be "localhost" or empty on darwin`);throw error.code=`ERR_INVALID_FILE_URL_HOST`,error}let pathname=url.pathname,index$1=-1;for(;++index$10){let[primary,...rest]=parameters$1,currentPrimary=attachers[entryIndex][1];isPlainObject(currentPrimary)&&isPlainObject(primary)&&(primary=(0,import_extend.default)(!0,currentPrimary,primary)),attachers[entryIndex]=[plugin,primary,...rest]}}}};const unified=new Processor().freeze();function assertParser(name$2,value$1){if(typeof value$1!=`function`)throw TypeError("Cannot `"+name$2+"` without `parser`")}function assertCompiler(name$2,value$1){if(typeof value$1!=`function`)throw TypeError("Cannot `"+name$2+"` without `compiler`")}function assertUnfrozen(name$2,frozen){if(frozen)throw Error("Cannot call `"+name$2+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function assertNode(node$1){if(!isPlainObject(node$1)||typeof node$1.type!=`string`)throw TypeError("Expected node, got `"+node$1+"`")}function assertDone(name$2,asyncName,complete){if(!complete)throw Error("`"+name$2+"` finished async. Use `"+asyncName+"` instead")}function vfile(value$1){return looksLikeAVFile(value$1)?value$1:new VFile(value$1)}function looksLikeAVFile(value$1){return!!(value$1&&typeof value$1==`object`&&`message`in value$1&&`messages`in value$1)}function looksLikeAValue(value$1){return typeof value$1==`string`||isUint8Array(value$1)}function isUint8Array(value$1){return!!(value$1&&typeof value$1==`object`&&`byteLength`in value$1&&`byteOffset`in value$1)}function useMarkdown(){let instance=unified().use(remarkParse).use(remarkRehype).use(rehypeStringify);return{process:markdown=>instance.processSync(markdown).toString()}}var require_asset_path=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let isWeb=typeof window<`u`&&window.document!==void 0,currentScript=isWeb?window.document.currentScript:null,basePath=`/`;currentScript&&(basePath=currentScript.src.replace(/#.*$/,``).replace(/\?.*$/,``).replace(/\/[^\/]+$/,`/`)),exports.baseAssetPath=basePath}),require_default_model_fetcher=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let defaultModelFetcher=path=>fetch(path).then(model=>model.arrayBuffer());exports.defaultModelFetcher=defaultModelFetcher}),require_logging=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.log=exports.LOG_PREFIX=void 0,exports.LOG_PREFIX=`[VAD]`;let levels=[`error`,`debug`,`warn`];function getLog(level){return(...args)=>{console[level](exports.LOG_PREFIX,...args)}}let _log=levels.reduce((acc,level)=>(acc[level]=getLog(level),acc),{});exports.log=_log}),require_messages=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});var Message;(function(Message$1){Message$1.AudioFrame=`AUDIO_FRAME`,Message$1.SpeechStart=`SPEECH_START`,Message$1.VADMisfire=`VAD_MISFIRE`,Message$1.SpeechEnd=`SPEECH_END`,Message$1.SpeechStop=`SPEECH_STOP`,Message$1.SpeechRealStart=`SPEECH_REAL_START`,Message$1.FrameProcessed=`FRAME_PROCESSED`})(Message||(exports.Message=Message={}))}),require_frame_processor=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.FrameProcessor=exports.validateOptions=exports.defaultV5FrameProcessorOptions=exports.defaultLegacyFrameProcessorOptions=void 0;let logging_1$4=require_logging(),messages_1$3=require_messages(),RECOMMENDED_FRAME_SAMPLES=[512,1024,1536];exports.defaultLegacyFrameProcessorOptions={positiveSpeechThreshold:.5,negativeSpeechThreshold:.35,preSpeechPadFrames:1,redemptionFrames:8,frameSamples:1536,minSpeechFrames:3,submitUserSpeechOnPause:!1},exports.defaultV5FrameProcessorOptions={positiveSpeechThreshold:.5,negativeSpeechThreshold:.35,preSpeechPadFrames:3,redemptionFrames:24,frameSamples:512,minSpeechFrames:9,submitUserSpeechOnPause:!1};function validateOptions(options$1){RECOMMENDED_FRAME_SAMPLES.includes(options$1.frameSamples)||logging_1$4.log.warn(`You are using an unusual frame size`),(options$1.positiveSpeechThreshold<0||options$1.positiveSpeechThreshold>1)&&logging_1$4.log.error(`positiveSpeechThreshold should be a number between 0 and 1`),(options$1.negativeSpeechThreshold<0||options$1.negativeSpeechThreshold>options$1.positiveSpeechThreshold)&&logging_1$4.log.error(`negativeSpeechThreshold should be between 0 and positiveSpeechThreshold`),options$1.preSpeechPadFrames<0&&logging_1$4.log.error(`preSpeechPadFrames should be positive`),options$1.redemptionFrames<0&&logging_1$4.log.error(`redemptionFrames should be positive`)}exports.validateOptions=validateOptions;let concatArrays=arrays=>{let sizes=arrays.reduce((out,next)=>(out.push(out.at(-1)+next.length),out),[0]),outArray=new Float32Array(sizes.at(-1));return arrays.forEach((arr,index$1)=>{let place=sizes[index$1];outArray.set(arr,place)}),outArray};var FrameProcessor=class{constructor(modelProcessFunc,modelResetFunc,options$1){this.modelProcessFunc=modelProcessFunc,this.modelResetFunc=modelResetFunc,this.options=options$1,this.speaking=!1,this.redemptionCounter=0,this.speechFrameCount=0,this.active=!1,this.speechRealStartFired=!1,this.reset=()=>{this.speaking=!1,this.speechRealStartFired=!1,this.audioBuffer=[],this.modelResetFunc(),this.redemptionCounter=0,this.speechFrameCount=0},this.pause=handleEvent=>{this.active=!1,this.options.submitUserSpeechOnPause?this.endSegment(handleEvent):this.reset()},this.resume=()=>{this.active=!0},this.endSegment=handleEvent=>{let audioBuffer=this.audioBuffer;this.audioBuffer=[];let speaking=this.speaking;if(this.reset(),speaking){let speechFrameCount=audioBuffer.reduce((acc,item)=>item.isSpeech?acc+1:acc,0);if(speechFrameCount>=this.options.minSpeechFrames){let audio=concatArrays(audioBuffer.map(item=>item.frame));handleEvent({msg:messages_1$3.Message.SpeechEnd,audio})}else handleEvent({msg:messages_1$3.Message.VADMisfire})}return{}},this.process=async(frame$1,handleEvent)=>{if(!this.active)return;let probs=await this.modelProcessFunc(frame$1),isSpeech=probs.isSpeech>=this.options.positiveSpeechThreshold;if(handleEvent({probs,msg:messages_1$3.Message.FrameProcessed,frame:frame$1}),this.audioBuffer.push({frame:frame$1,isSpeech}),isSpeech&&(this.speechFrameCount++,this.redemptionCounter=0),isSpeech&&!this.speaking&&(this.speaking=!0,handleEvent({msg:messages_1$3.Message.SpeechStart})),this.speaking&&this.speechFrameCount===this.options.minSpeechFrames&&!this.speechRealStartFired&&(this.speechRealStartFired=!0,handleEvent({msg:messages_1$3.Message.SpeechRealStart})),probs.isSpeech=this.options.redemptionFrames){this.redemptionCounter=0,this.speechFrameCount=0,this.speaking=!1,this.speechRealStartFired=!1;let audioBuffer=this.audioBuffer;this.audioBuffer=[];let speechFrameCount=audioBuffer.reduce((acc,item)=>item.isSpeech?acc+1:acc,0);if(speechFrameCount>=this.options.minSpeechFrames){let audio=concatArrays(audioBuffer.map(item=>item.frame));handleEvent({msg:messages_1$3.Message.SpeechEnd,audio})}else handleEvent({msg:messages_1$3.Message.VADMisfire})}if(!this.speaking){for(;this.audioBuffer.length>this.options.preSpeechPadFrames;)this.audioBuffer.shift();this.speechFrameCount=0}},this.audioBuffer=[],this.reset()}};exports.FrameProcessor=FrameProcessor});const backends={},backendsSortedByPriority=[],registerBackend=(name$2,backend,priority)=>{if(backend&&typeof backend.init==`function`&&typeof backend.createSessionHandler==`function`){let currentBackend=backends[name$2];if(currentBackend===void 0)backends[name$2]={backend,priority};else if(currentBackend.priority>priority)return;else if(currentBackend.priority===priority&¤tBackend.backend!==backend)throw Error(`cannot register backend "${name$2}" using priority ${priority}`);if(priority>=0){let i$1=backendsSortedByPriority.indexOf(name$2);i$1!==-1&&backendsSortedByPriority.splice(i$1,1);for(let i$2=0;i$2{let backendNames=backendHints.length===0?backendsSortedByPriority:backendHints,errors=[];for(let backendName of backendNames){let backendInfo=backends[backendName];if(backendInfo){if(backendInfo.initialized)return backendInfo.backend;if(backendInfo.aborted)continue;let isInitializing=!!backendInfo.initPromise;try{return isInitializing||(backendInfo.initPromise=backendInfo.backend.init()),await backendInfo.initPromise,backendInfo.initialized=!0,backendInfo.backend}catch(e$3){isInitializing||errors.push({name:backendName,err:e$3}),backendInfo.aborted=!0}finally{delete backendInfo.initPromise}}}throw Error(`no available backend found. ERR: ${errors.map(e$3=>`[${e$3.name}] ${e$3.err}`).join(`, `)}`)};var init_backend=__esmMin(()=>{}),EnvImpl=class{constructor(){this.wasm={},this.webgl={},this.logLevelInternal=`warning`}set logLevel(value$1){if(value$1!==void 0){if(typeof value$1!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(value$1)===-1)throw Error(`Unsupported logging level: ${value$1}`);this.logLevelInternal=value$1}}get logLevel(){return this.logLevelInternal}},env,init_env=__esmMin(()=>{env=new EnvImpl}),isBigInt64ArrayAvailable,isBigUint64ArrayAvailable,NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP,NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP,calculateSize,Tensor$1,init_tensor_impl=__esmMin(()=>{isBigInt64ArrayAvailable=typeof BigInt64Array<`u`&&typeof BigInt64Array.from==`function`,isBigUint64ArrayAvailable=typeof BigUint64Array<`u`&&typeof BigUint64Array.from==`function`,NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array]]),NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),isBigInt64ArrayAvailable&&(NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP.set(`int64`,BigInt64Array),NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP.set(BigInt64Array,`int64`)),isBigUint64ArrayAvailable&&(NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP.set(`uint64`,BigUint64Array),NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP.set(BigUint64Array,`uint64`)),calculateSize=dims=>{let size$1=1;for(let i$1=0;i$1{let canvas=document.createElement(`canvas`),context$1=canvas.getContext(`2d`);if(!image$1||!context$1)return reject();let newImage=new Image;newImage.crossOrigin=`Anonymous`,newImage.src=image$1,newImage.onload=()=>{canvas.width=newImage.width,canvas.height=newImage.height,context$1.drawImage(newImage,0,0,canvas.width,canvas.height);let img=context$1.getImageData(0,0,canvas.width,canvas.height);if(options$1!==void 0){if(options$1.height!==void 0&&options$1.height!==canvas.height)throw Error(`Image input config height doesn't match ImageBitmap height`);if(tensorConfig.height=canvas.height,options$1.width!==void 0&&options$1.width!==canvas.width)throw Error(`Image input config width doesn't match ImageBitmap width`);tensorConfig.width=canvas.width}else tensorConfig.height=canvas.height,tensorConfig.width=canvas.width;resolve$1(Tensor$1.bufferToTensor(img.data,tensorConfig))}});else throw Error(`Input data provided is not supported - aborted tensor creation`);if(data$10!==void 0)return Tensor$1.bufferToTensor(data$10,tensorConfig);throw Error(`Input data provided is not supported - aborted tensor creation`)}toImageData(options$1){var _a$2,_b;let pixels2DContext=document.createElement(`canvas`).getContext(`2d`),image$1;if(pixels2DContext!=null){let width=this.dims[3],height=this.dims[2],channels=this.dims[1],inputformat=options$1===void 0||options$1.format===void 0?`RGB`:options$1.format,normMean=options$1===void 0||(_a$2=options$1.norm)?.mean===void 0?255:options$1.norm.mean,normBias=options$1===void 0||(_b=options$1.norm)?.bias===void 0?0:options$1.norm.bias,offset$1=height*width;if(options$1!==void 0){if(options$1.height!==void 0&&options$1.height!==height)throw Error(`Image output config height doesn't match tensor height`);if(options$1.width!==void 0&&options$1.width!==width)throw Error(`Image output config width doesn't match tensor width`);if(options$1.format!==void 0&&channels===4&&options$1.format!==`RGBA`||channels===3&&options$1.format!==`RGB`&&options$1.format!==`BGR`)throw Error(`Tensor format doesn't match input tensor dims`)}let step=4,rImagePointer=0,gImagePointer=1,bImagePointer=2,aImagePointer=3,rTensorPointer=0,gTensorPointer=offset$1,bTensorPointer=offset$1*2,aTensorPointer=-1;inputformat===`RGBA`?(rTensorPointer=0,gTensorPointer=offset$1,bTensorPointer=offset$1*2,aTensorPointer=offset$1*3):inputformat===`RGB`?(rTensorPointer=0,gTensorPointer=offset$1,bTensorPointer=offset$1*2):inputformat===`RBG`&&(rTensorPointer=0,bTensorPointer=offset$1,gTensorPointer=offset$1*2),image$1=pixels2DContext.createImageData(width,height);for(let i$1=0;i$1{init_tensor_impl(),Tensor=Tensor$1}),InferenceSession,init_inference_session_impl=__esmMin(()=>{init_tensor(),InferenceSession=class InferenceSession{constructor(handler){this.handler=handler}async run(feeds,arg1,arg2){let fetches={},options$1={};if(typeof feeds!=`object`||!feeds||feeds instanceof Tensor||Array.isArray(feeds))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let isFetchesEmpty=!0;if(typeof arg1==`object`){if(arg1===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(arg1 instanceof Tensor)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(arg1)){if(arg1.length===0)throw TypeError(`'fetches' cannot be an empty array.`);isFetchesEmpty=!1;for(let name$2 of arg1){if(typeof name$2!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(name$2)===-1)throw RangeError(`'fetches' contains invalid output name: ${name$2}.`);fetches[name$2]=null}if(typeof arg2==`object`&&arg2)options$1=arg2;else if(arg2!==void 0)throw TypeError(`'options' must be an object.`)}else{let isFetches=!1,arg1Keys=Object.getOwnPropertyNames(arg1);for(let name$2 of this.outputNames)if(arg1Keys.indexOf(name$2)!==-1){let v$1=arg1[name$2];(v$1===null||v$1 instanceof Tensor)&&(isFetches=!0,isFetchesEmpty=!1,fetches[name$2]=v$1)}if(isFetches){if(typeof arg2==`object`&&arg2)options$1=arg2;else if(arg2!==void 0)throw TypeError(`'options' must be an object.`)}else options$1=arg1}}else if(arg1!==void 0)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let name$2 of this.inputNames)if(feeds[name$2]===void 0)throw Error(`input '${name$2}' is missing in 'feeds'.`);if(isFetchesEmpty)for(let name$2 of this.outputNames)fetches[name$2]=null;let results=await this.handler.run(feeds,fetches,options$1),returnValue={};for(let key$1 in results)Object.hasOwnProperty.call(results,key$1)&&(returnValue[key$1]=new Tensor(results[key$1].type,results[key$1].data,results[key$1].dims));return returnValue}static async create(arg0,arg1,arg2,arg3){let filePathOrUint8Array,options$1={};if(typeof arg0==`string`){if(filePathOrUint8Array=arg0,typeof arg1==`object`&&arg1)options$1=arg1;else if(arg1!==void 0)throw TypeError(`'options' must be an object.`)}else if(arg0 instanceof Uint8Array){if(filePathOrUint8Array=arg0,typeof arg1==`object`&&arg1)options$1=arg1;else if(arg1!==void 0)throw TypeError(`'options' must be an object.`)}else if(arg0 instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&arg0 instanceof SharedArrayBuffer){let buffer$1=arg0,byteOffset=0,byteLength=arg0.byteLength;if(typeof arg1==`object`&&arg1)options$1=arg1;else if(typeof arg1==`number`){if(byteOffset=arg1,!Number.isSafeInteger(byteOffset))throw RangeError(`'byteOffset' must be an integer.`);if(byteOffset<0||byteOffset>=buffer$1.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${buffer$1.byteLength}).`);if(byteLength=arg0.byteLength-byteOffset,typeof arg2==`number`){if(byteLength=arg2,!Number.isSafeInteger(byteLength))throw RangeError(`'byteLength' must be an integer.`);if(byteLength<=0||byteOffset+byteLength>buffer$1.byteLength)throw RangeError(`'byteLength' is out of range (0, ${buffer$1.byteLength-byteOffset}].`);if(typeof arg3==`object`&&arg3)options$1=arg3;else if(arg3!==void 0)throw TypeError(`'options' must be an object.`)}else if(arg2!==void 0)throw TypeError(`'byteLength' must be a number.`)}else if(arg1!==void 0)throw TypeError(`'options' must be an object.`);filePathOrUint8Array=new Uint8Array(buffer$1,byteOffset,byteLength)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let eps=options$1.executionProviders||[],backendHints=eps.map(i$1=>typeof i$1==`string`?i$1:i$1.name),backend=await resolveBackend(backendHints),handler=await backend.createSessionHandler(filePathOrUint8Array,options$1);return new InferenceSession(handler)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}}}),InferenceSession$1,init_inference_session=__esmMin(()=>{init_inference_session_impl(),InferenceSession$1=InferenceSession}),lib_exports={};__export(lib_exports,{InferenceSession:()=>InferenceSession$1,Tensor:()=>Tensor,env:()=>env,registerBackend:()=>registerBackend});var init_lib=__esmMin(()=>{init_backend(),init_env(),init_inference_session(),init_tensor()}),require_ort_web_min=__commonJSMin((exports,module)=>{ /*! * ONNX Runtime Web v1.14.0 * Copyright (c) Microsoft Corporation. All rights reserved. @@ -3989,7 +3989,7 @@ About how to use the Composition API mode, see https://vue-i18n.intlify.dev/guid `)}\n return _A(outputIdx);\n }`;return Object.assign(Object.assign({},s$1),{output:{dims:l$2,type:e$4.type,textureType:a$2.TextureType.unpacked},shaderSource:f$3})},c$4=t$1=>{if(!t$1||t$1.length!==1)throw Error(`Slice requires 1 input.`);if(i$1.NUMBER_TYPES.indexOf(t$1[0].type)===-1)throw Error(`Invalid input type.`)};e$3.sliceV10=(t$1,e$4)=>{p$5(e$4);let n$3=l$1(t$1,e$4);return[t$1.run(Object.assign(Object.assign({},s$1),{cacheHint:n$3.cacheKey,get:()=>u$1(t$1,e$4[0],n$3)}),[e$4[0]])]};let l$1=(t$1,e$4)=>{if(!t$1.session.isInitializer(e$4[1].dataId)||!t$1.session.isInitializer(e$4[2].dataId)||e$4.length>=4&&!t$1.session.isInitializer(e$4[3].dataId)||e$4.length>=5&&!t$1.session.isInitializer(e$4[4].dataId))throw Error(`dynamic slice attributes are not allowed`);if(e$4.length>=5&&e$4[4].integerData.some(t$2=>t$2!==1))throw Error(`currently non-1 steps is not supported for Slice`);let n$3=Array.from(e$4[1].integerData),r$3=Array.from(e$4[2].integerData),i$2=e$4.length>=4?Array.from(e$4[3].integerData):[];return{starts:n$3,ends:r$3,axes:i$2,cacheKey:`${i$2};${n$3};${r$3}`}},p$5=t$1=>{if(!t$1||t$1.length<3||t$1.length>5)throw Error(`Invalid input number.`);if(t$1[1].type!==`int32`||t$1[1].dims.length!==1||t$1[2].type!==`int32`||t$1[2].dims.length!==1||t$1.length>=4&&(t$1[3].type!==`int32`||t$1[3].dims.length!==1)||t$1.length>=5&&(t$1[4].type!==`int32`||t$1[4].dims.length!==1))throw Error(`Invalid input type.`)}},5524:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.softmaxV13=e$3.parseSoftmaxAttributesV13=e$3.parseSoftmaxAttributes=e$3.softmax=void 0;let r$2=n$2(246),i$1=n$2(2517),o$1=n$2(5060),a$2=n$2(2039),s$1=n$2(3738),u$1={name:`SoftmaxComputeMax`,inputNames:[`A`],inputTypes:[a$2.TextureType.unpacked]},c$4={name:`SoftmaxComputeScale`,inputNames:[`A`,`Max`],inputTypes:[a$2.TextureType.unpacked,a$2.TextureType.unpacked]},l$1={name:`SoftMax`,inputNames:[`A`,`Max`,`Norm`],inputTypes:[a$2.TextureType.unpacked,a$2.TextureType.unpacked,a$2.TextureType.unpacked]};e$3.softmax=(t$1,e$4,n$3)=>{g$2(e$4);let r$3=e$4[0].dims.slice(),o$2=i$1.ShapeUtil.normalizeAxis(n$3.axis,r$3.length),a$3=i$1.ShapeUtil.sizeToDimension(r$3,o$2),s$2=i$1.ShapeUtil.sizeFromDimension(r$3,o$2);return p$5(t$1,e$4,n$3,a$3,s$2)},e$3.parseSoftmaxAttributes=t$1=>(0,r$2.createAttributeWithCacheKey)({axis:t$1.attributes.getInt(`axis`,1)}),e$3.parseSoftmaxAttributesV13=t$1=>(0,r$2.createAttributeWithCacheKey)({axis:t$1.attributes.getInt(`axis`,-1)}),e$3.softmaxV13=(t$1,e$4,n$3)=>{g$2(e$4);let o$2=e$4[0].dims.slice(),a$3=i$1.ShapeUtil.normalizeAxis(n$3.axis,o$2.length),u$2=o$2.length,c$5=a$3!==u$2-1,l$2=[],f$4,d$3=[],h$4=[];c$5&&(d$3=Array.from({length:u$2}).map((t$2,e$5)=>e$5),d$3[a$3]=u$2-1,d$3[u$2-1]=a$3,d$3.map(t$2=>l$2.push(o$2[t$2])),f$4=(0,r$2.createAttributeWithCacheKey)({perm:d$3}),h$4=(0,s$1.transpose)(t$1,e$4,f$4));let b$3=c$5?i$1.ShapeUtil.sizeToDimension(l$2,u$2-1):i$1.ShapeUtil.sizeToDimension(o$2,u$2-1),m$2=c$5?i$1.ShapeUtil.sizeFromDimension(l$2,u$2-1):i$1.ShapeUtil.sizeFromDimension(o$2,u$2-1),y$2=p$5(t$1,c$5?h$4:e$4,n$3,b$3,m$2);return c$5?(0,s$1.transpose)(t$1,y$2,f$4):y$2};let p$5=(t$1,e$4,n$3,r$3,i$2)=>{let o$2=f$3(t$1,e$4[0],r$3,i$2,[r$3]),a$3=t$1.run(Object.assign(Object.assign({},u$1),{cacheHint:n$3.cacheKey,get:()=>o$2}),e$4),s$2=d$2(t$1,e$4[0],r$3,i$2,o$2.output.dims,[r$3]),p$6=t$1.run(Object.assign(Object.assign({},c$4),{cacheHint:n$3.cacheKey,get:()=>s$2}),[e$4[0],a$3]),g$3=h$3(t$1,e$4[0],r$3,i$2,o$2.output.dims,s$2.output.dims);return[t$1.run(Object.assign(Object.assign({},l$1),{cacheHint:n$3.cacheKey,get:()=>g$3}),[e$4[0],a$3,p$6])]},f$3=(t$1,e$4,n$3,r$3,i$2)=>{let[s$2,c$5]=t$1.calculateTextureWidthAndHeight(e$4.dims,a$2.TextureType.unpacked),l$2=i$2.length;if(n$3<1||r$3<1)throw Error(`Logical row count N and feature count D must be greater than or equal to 1`);if(i$2.length!==1)throw Error(`Dimensionality of the output should be 1`);if(i$2[0]!==n$3)throw Error(`Shape of the output should be equal to logical row count`);let p$6=(0,o$1.getGlsl)(t$1.session.backend.glContext.version),f$4=`\n float process(int[${l$2}] indices) {\n int logical_row_start_offset = indices[0] * ${r$3};\n\n float max = getColorAsFloat(${p$6.texture2D}(A, offsetToCoords(logical_row_start_offset, ${s$2},\n ${c$5} )));\n for(int i=1; i<${r$3}; ++i)\n {\n float current = getColorAsFloat(${p$6.texture2D}(A, offsetToCoords(logical_row_start_offset + i,\n ${s$2}, ${c$5})));\n if(current > max)\n max = current;\n }\n\n return max;\n }`;return Object.assign(Object.assign({},u$1),{output:{dims:i$2,type:e$4.type,textureType:a$2.TextureType.unpacked},shaderSource:f$4})},d$2=(t$1,e$4,n$3,r$3,i$2,s$2)=>{let[u$2,l$2]=t$1.calculateTextureWidthAndHeight(e$4.dims,a$2.TextureType.unpacked),p$6=s$2.length;if(n$3<1||r$3<1)throw Error(`Logical row count N and feature count D must be greater than or equal to 1`);if(s$2.length!==1)throw Error(`Dimensionality of the output should be 1`);if(s$2[0]!==n$3)throw Error(`Shape of the output should be equal to logical row count`);if(i$2.length!==1)throw Error(`Dimensionality of the intermediate results should be 1`);if(i$2[0]!==n$3)throw Error(`Shape of the intermediate results should be equal to logical row count`);let f$4=`\n float process(int[${p$6}] indices) {\n int logical_row_start_offset = indices[0] * ${r$3};\n\n float norm_factor = 0.0;\n float max = _Max(indices);\n for(int i=0; i<${r$3}; ++i)\n {\n norm_factor += exp(getColorAsFloat(${(0,o$1.getGlsl)(t$1.session.backend.glContext.version).texture2D}(A, offsetToCoords(logical_row_start_offset + i,\n ${u$2}, ${l$2}))) - max);\n }\n\n return norm_factor;\n }`;return Object.assign(Object.assign({},c$4),{output:{dims:s$2,type:e$4.type,textureType:a$2.TextureType.unpacked},shaderSource:f$4})},h$3=(t$1,e$4,n$3,r$3,i$2,o$2)=>{let[s$2,u$2]=t$1.calculateTextureWidthAndHeight(e$4.dims,a$2.TextureType.unpacked),c$5=e$4.dims.length;if(n$3<1||r$3<1)throw Error(`Logical row count N and feature count D must be greater than or equal to 1`);if(i$2.length!==1||o$2.length!==1)throw Error(`Dimensionality of the intermediate results should be 1`);if(i$2[0]!==n$3||o$2[0]!==n$3)throw Error(`Shape of the intermediate results should be equal to logical row count`);let p$6=`\n float process(int[${c$5}] indices) {\n\n // get offset of current logical tensor index from the 2-D texture coordinates (TexCoords)\n int offset = coordsToOffset(TexCoords, ${s$2}, ${u$2});\n\n //determine the logical row for this index\n int logical_row_index[1];\n logical_row_index[0] = offset / ${r$3};\n\n float norm_factor = _Norm(logical_row_index);\n\n // avoid possible division by 0\n // if norm_facor is 0, all elements are zero\n // if so, return 0\n if(norm_factor == 0.0)\n return 0.0;\n\n return exp(_A(indices) - _Max(logical_row_index)) / norm_factor;\n }`;return Object.assign(Object.assign({},l$1),{output:{dims:e$4.dims,type:e$4.type,textureType:a$2.TextureType.unpacked},shaderSource:p$6})},g$2=t$1=>{if(!t$1||t$1.length!==1)throw Error(`Softmax requires 1 input.`);if(t$1[0].type!==`float32`&&t$1[0].type!==`float64`)throw Error(`Invalid input type`)}},5975:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.parseSplitAttributes=e$3.split=void 0;let r$2=n$2(246),i$1=n$2(2517),o$1=n$2(2039),a$2={name:`Split`,inputNames:[`A`],inputTypes:[o$1.TextureType.unpacked]};e$3.split=(t$1,e$4,n$3)=>{c$4(e$4);let r$3=i$1.ShapeUtil.normalizeAxis(n$3.axis,e$4[0].dims.length),o$2=s$1(t$1,e$4,r$3,n$3),l$1=[];for(let i$2=0;i$2u$1(t$1,e$4[0],n$3,r$3,i$2)}),e$4));return l$1},e$3.parseSplitAttributes=t$1=>{let e$4=t$1.attributes.getInt(`axis`,0),n$3=t$1.attributes.getInts(`split`,[]),i$2=t$1.outputs.length;return(0,r$2.createAttributeWithCacheKey)({axis:e$4,split:n$3,numOutputs:i$2})};let s$1=(t$1,e$4,n$3,r$3)=>{let[,o$2]=i$1.SplitUtil.splitShape(e$4[0].dims,n$3,r$3.split,r$3.numOutputs);return o$2.length},u$1=(t$1,e$4,n$3,r$3,s$2)=>{let[u$2,c$5]=i$1.SplitUtil.splitShape(e$4.dims,r$3,n$3.split,n$3.numOutputs),l$1=c$5[s$2],p$5=u$2[s$2],f$3=`\n float process(int indices[${p$5.length}]) {\n indices[${r$3}] += ${l$1};\n return _A(indices);\n }\n `;return Object.assign(Object.assign({},a$2),{cacheHint:`${n$3.cacheKey}:${s$2}`,output:{dims:p$5,type:e$4.type,textureType:o$1.TextureType.unpacked},shaderSource:f$3})},c$4=t$1=>{if(!t$1||t$1.length!==1)throw Error(`Split requires one input.`);if(t$1[0].type!==`int8`&&t$1[0].type!==`uint8`&&t$1[0].type!==`int16`&&t$1[0].type!==`uint16`&&t$1[0].type!==`int32`&&t$1[0].type!==`uint32`&&t$1[0].type!==`float32`&&t$1[0].type!==`float64`&&t$1[0].type!==`bool`)throw Error(`Invalid input type.`)}},3933:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.parseSqueezeAttributes=e$3.squeezeV13=e$3.squeeze=void 0;let r$2=n$2(2517);e$3.squeeze=(t$1,e$4,n$3)=>{i$1(e$4);let o$2=r$2.ShapeUtil.squeezeShape(e$4[0].dims,n$3);return[t$1.reshapeUnpacked(e$4[0],o$2)]},e$3.squeezeV13=(t$1,n$3)=>(o$1(n$3),(0,e$3.squeeze)(t$1,[n$3[0]],Array.from(n$3[1].integerData))),e$3.parseSqueezeAttributes=t$1=>t$1.attributes.getInts(`axes`);let i$1=t$1=>{if(!t$1||t$1.length!==1)throw Error(`Squeeze requires 1 input.`);if(t$1[0].type===`string`)throw Error(`invalid input tensor types.`)},o$1=t$1=>{if(!t$1||t$1.length!==2)throw Error(`Squeeze requires 2 inputs.`);if(t$1[1].type!==`int32`)throw Error(`Invalid input type.`)}},6558:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.sum=void 0;let r$2=n$2(5060),i$1=n$2(2039);e$3.sum=(t$1,e$4)=>{a$2(e$4);let n$3={name:`Sum`,inputNames:e$4.map((t$2,e$5)=>`X${e$5}`),inputTypes:Array(e$4.length).fill(i$1.TextureType.unpacked)};return[t$1.run(Object.assign(Object.assign({},n$3),{get:()=>o$1(t$1,e$4,n$3)}),e$4)]};let o$1=(t$1,e$4,n$3)=>{let o$2=(0,r$2.getGlsl)(t$1.session.backend.glContext.version),a$3=e$4[0].dims.slice(),s$1=`\n void main() {\n vec4 result = ${e$4.map((t$2,e$5)=>`${o$2.texture2D}(X${e$5},TexCoords)`).join(` + `)};\n ${o$2.output} = result;\n }\n `;return Object.assign(Object.assign({},n$3),{output:{dims:a$3,type:e$4[0].type,textureType:i$1.TextureType.unpacked},hasMain:!0,shaderSource:s$1})},a$2=t$1=>{if(!t$1||t$1.length===0)throw Error(`Sum requires inputs.`);let e$4=t$1[0].dims.length;for(let n$3=1;n$3{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.tile=void 0;let r$2=n$2(782),i$1=n$2(2039);e$3.tile=(t$1,e$4)=>{a$2(e$4);let n$3={name:`Tile`,inputNames:[`A`],inputTypes:[i$1.TextureType.unpacked]};return[t$1.run(Object.assign(Object.assign({},n$3),{get:()=>o$1(t$1,e$4,n$3)}),e$4)]};let o$1=(t$1,e$4,n$3)=>{let r$3=e$4[0].dims.slice(),o$2=Array(r$3.length),a$3=[];for(let t$2=0;t$2{if(!t$1||t$1.length!==2)throw Error(`Tile requires 2 input.`);if(t$1[1].dims.length!==1)throw Error(`The second input shape must 1 dimension.`);if(t$1[1].dims[0]!==t$1[0].dims.length)throw Error(`Invalid input shape.`);if(r$2.NUMBER_TYPES.indexOf(t$1[0].type)===-1)throw Error(`Invalid input type.`);if(t$1[1].type!==`int32`&&t$1[1].type!==`int16`)throw Error(`Invalid repeat type.`)}},3738:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.parseTransposeAttributes=e$3.transpose=void 0;let r$2=n$2(246),i$1=n$2(2517),o$1=n$2(2039),a$2={name:`Transpose`,inputNames:[`A`],inputTypes:[o$1.TextureType.unpacked]};e$3.transpose=(t$1,e$4,n$3)=>(p$5(e$4),[t$1.run(Object.assign(Object.assign({},a$2),{cacheHint:n$3.cacheKey,get:()=>s$1(t$1,e$4[0],n$3.perm)}),e$4)]),e$3.parseTransposeAttributes=t$1=>(0,r$2.createAttributeWithCacheKey)({perm:t$1.attributes.getInts(`perm`,[])});let s$1=(t$1,e$4,n$3)=>{let r$3=e$4.dims;n$3=u$1(r$3,n$3);let i$2=c$4(r$3,n$3),s$2=r$3.length,p$6=`\n ${l$1(`perm`,n$3,s$2)}\n float process(int indices[${s$2}]) {\n int a[${s$2}];\n perm(a, indices);\n return _A(a);\n }`;return Object.assign(Object.assign({},a$2),{output:{dims:i$2,type:e$4.type,textureType:o$1.TextureType.unpacked},shaderSource:p$6})},u$1=(t$1,e$4)=>(e$4&&e$4.length!==t$1.length&&(e$4=[...t$1.keys()].reverse()),e$4),c$4=(t$1,e$4)=>(e$4=u$1(t$1,e$4),i$1.ShapeUtil.sortBasedOnPerm(t$1,e$4)),l$1=(t$1,e$4,n$3)=>{let r$3=[];r$3.push(`void ${t$1}(out int a[${n$3}], int src[${n$3}]) {`);for(let t$2=0;t$2{if(!t$1||t$1.length!==1)throw Error(`Transpose requires 1 input.`);if(t$1[0].type!==`float32`&&t$1[0].type!==`float64`)throw Error(`input should be float tensor`)}},8710:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.encodeAsUint8=void 0;let r$2=n$2(5060),i$1=n$2(2039);e$3.encodeAsUint8=(t$1,e$4)=>{let n$3=e$4.shape,o$1=(0,r$2.getGlsl)(t$1.session.backend.glContext.version),a$2=`\n const float FLOAT_MAX = 1.70141184e38;\n const float FLOAT_MIN = 1.17549435e-38;\n\n bool isNaN(float val) {\n return (val < 1.0 || 0.0 < val || val == 0.0) ? false : true;\n }\n\n highp vec4 encodeAsUint8(highp float v) {\n if (isNaN(v)) {\n return vec4(255, 255, 255, 255);\n }\n\n highp float av = abs(v);\n\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 127.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 255.0) / 255.0;\n }\n\n highp vec4 c = vec4(0,0,0,0);\n\n highp float e = floor(log2(av));\n highp float m = exp2(fract(log2(av))) - 1.0;\n\n c[2] = floor(128.0 * m);\n m -= c[2] / 128.0;\n c[1] = floor(32768.0 * m);\n m -= c[1] / 32768.0;\n c[0] = floor(8388608.0 * m);\n\n highp float ebias = e + 127.0;\n c[3] = floor(ebias / 2.0);\n ebias -= c[3] * 2.0;\n c[2] += floor(ebias) * 128.0;\n\n c[3] += 128.0 * step(0.0, -v);\n\n return c / 255.0;\n }\n\n void main() {\n float value = ${o$1.texture2D}(X,TexCoords).r;\n ${o$1.output} = encodeAsUint8(value);\n }`,s$1={name:`Uint8Encode`,inputTypes:[i$1.TextureType.unpacked],inputNames:[`X`],output:{dims:n$3,type:e$4.tensor.type,textureType:i$1.TextureType.downloadUint8AsFloat},shaderSource:a$2,hasMain:!0};return t$1.executeProgram(s$1,[e$4.tensor])}},4909:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.tanh=e$3.tan=e$3.sqrt=e$3.sin=e$3.sigmoid=e$3.relu=e$3.not=e$3.neg=e$3.log=e$3.parseLeakyReluAttributes=e$3.leakyRelu=e$3.identity=e$3.floor=e$3.exp=e$3.parseEluAttributes=e$3.elu=e$3.cos=e$3.ceil=e$3.clipV11=e$3.parseClipAttributes=e$3.clip=e$3.atan=e$3.asin=e$3.acos=e$3.abs=e$3.glslTanh=e$3.glslTan=e$3.glslSqrt=e$3.glslSigmoid=e$3.glslRelu=e$3.glslSin=e$3.glslNot=e$3.glslNeg=e$3.glslLog=e$3.glslLeakyRelu=e$3.glslIdentity=e$3.glslClip=e$3.glslFloor=e$3.glslExp=e$3.glslElu=e$3.glslCos=e$3.glslCeil=e$3.glslAtan=e$3.glslAsin=e$3.glslAcos=e$3.glslAbs=void 0;let r$2=n$2(246),i$1=n$2(2517),o$1=n$2(8520),a$2=n$2(5060),s$1=n$2(2039);function u$1(){return P$1(`abs`)}function c$4(){return P$1(`acos`)}function l$1(){return P$1(`asin`)}function p$5(){return P$1(`atan`)}function f$3(){return P$1(`ceil`)}function d$2(){return P$1(`cos`)}function h$3(t$1){let e$4=`elu`;return{body:`\n const float alpha = float(${t$1});\n\n float ${e$4}_(float a) {\n return a >= 0.0 ? a: (exp(a) - 1.0) * alpha;\n }\n vec4 ${e$4}_(vec4 v) {\n return vec4(${e$4}_(v.x), ${e$4}_(v.y), ${e$4}_(v.z), ${e$4}_(v.w));\n }\n `,name:e$4,type:o$1.FunctionType.ValueBased}}function g$2(){return P$1(`exp`)}function b$3(){return P$1(`floor`)}function m$2(t$1,e$4){let n$3=`clip`;return{body:`\n const float min = float(${t$1});\n const float max = float(${e$4});\n\n float ${n$3}_(float a) {\n return clamp(a, min, max);\n }\n vec4 ${n$3}_(vec4 v) {\n return clamp(v, min, max);\n }\n `,name:n$3,type:o$1.FunctionType.ValueBased}}function y$2(){let t$1=`indentity`;return{body:`\n float ${t$1}_(float a) {\n return a;\n }\n vec4 ${t$1}_(vec4 v) {\n return v;\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}function _$2(t$1){let e$4=`leakyRelu`;return{body:`\n const float alpha = float(${t$1});\n\n float ${e$4}_(float a) {\n return a < 0.0 ? a * alpha : a;\n }\n vec4 ${e$4}_(vec4 v) {\n return vec4(${e$4}_(v.x), ${e$4}_(v.y), ${e$4}_(v.z), ${e$4}_(v.w));\n }\n `,name:e$4,type:o$1.FunctionType.ValueBased}}function v$1(){return P$1(`log`)}function w$1(){let t$1=`neg`;return{body:`\n float ${t$1}_(float a) {\n return -a;\n }\n vec4 ${t$1}_(vec4 v) {\n return -v;\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}function x$3(){let t$1=`not`;return{body:`\n float ${t$1}_(float a) {\n return float( ! bool(a) );\n }\n bool ${t$1}_(bool a) {\n return !a;\n }\n vec4 ${t$1}_(vec4 v) {\n return vec4(!bool(v.x), !bool(v.y), !bool(v.z), !bool(v.w));\n }\n bvec4 ${t$1}_(bvec4 v) {\n return bvec4(!v.x, !v.y, !v.z, !v.w);\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}function T$1(){return P$1(`sin`)}function S$2(){let t$1=`relu`;return{body:`\n float ${t$1}_(float a) {\n return max( a, 0.0 );\n }\n vec4 ${t$1}_(vec4 v) {\n return max( v, 0.0 );\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}function O$2(){let t$1=`sigmoid`;return{body:`\n float ${t$1}_(float a) {\n return 1.0 / (1.0 + exp(-a));\n }\n vec4 ${t$1}_(vec4 v) {\n return 1.0 / (1.0 + exp(-v));\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}function A$1(){return P$1(`sqrt`)}function E$2(){return P$1(`tan`)}function I(){let t$1=`tanh`;return{body:`\n float ${t$1}_(float a) {\n a = clamp(a, -10., 10.);\n a = exp(2.*a);\n return (a - 1.) / (a + 1.);\n }\n vec4 ${t$1}_(vec4 v) {\n v = clamp(v, -10., 10.);\n v = exp(2.*v);\n return (v - 1.) / (v + 1.);\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}function P$1(t$1){return{body:`\n float ${t$1}_(float a) {\n return ${t$1}(a);\n }\n vec4 ${t$1}_(vec4 v) {\n return ${t$1}(v);\n }\n `,name:t$1,type:o$1.FunctionType.ValueBased}}e$3.glslAbs=u$1,e$3.glslAcos=c$4,e$3.glslAsin=l$1,e$3.glslAtan=p$5,e$3.glslCeil=f$3,e$3.glslCos=d$2,e$3.glslElu=h$3,e$3.glslExp=g$2,e$3.glslFloor=b$3,e$3.glslClip=m$2,e$3.glslIdentity=y$2,e$3.glslLeakyRelu=_$2,e$3.glslLog=v$1,e$3.glslNeg=w$1,e$3.glslNot=x$3,e$3.glslSin=T$1,e$3.glslRelu=S$2,e$3.glslSigmoid=O$2,e$3.glslSqrt=A$1,e$3.glslTan=E$2,e$3.glslTanh=I;let D$1=(t$1,e$4,n$3,r$3)=>{let i$2=t$1.session.pack?s$1.TextureType.packed:s$1.TextureType.unpacked,o$2={name:n$3.name,inputTypes:[i$2],inputNames:[`A`],cacheHint:r$3};return Object.assign(Object.assign({},o$2),{get:()=>((t$2,e$5,n$4,r$4)=>{let i$3=t$2.session.pack?s$1.TextureType.packed:s$1.TextureType.unpacked,o$3=(0,a$2.getGlsl)(t$2.session.backend.glContext.version);return Object.assign(Object.assign({},e$5),{output:{dims:n$4.dims,type:n$4.type,textureType:i$3},shaderSource:`\n ${r$4.body}\n void main() {\n vec4 v = ${o$3.texture2D}(A, TexCoords);\n v = ${r$4.name}_(v);\n ${o$3.output} = v;\n }\n `,hasMain:!0})})(t$1,o$2,e$4,n$3)})};e$3.abs=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],u$1()),e$4)],e$3.acos=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],c$4()),e$4)],e$3.asin=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],l$1()),e$4)],e$3.atan=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],p$5()),e$4)],e$3.clip=(t$1,e$4,n$3)=>[t$1.run(D$1(t$1,e$4[0],m$2(n$3.min,n$3.max),n$3.cacheKey),e$4)],e$3.parseClipAttributes=t$1=>(0,r$2.createAttributeWithCacheKey)({min:t$1.attributes.getFloat(`min`,i$1.MIN_CLIP),max:t$1.attributes.getFloat(`max`,i$1.MAX_CLIP)}),e$3.clipV11=(t$1,n$3)=>{let r$3=$$1(t$1,n$3);return(0,e$3.clip)(t$1,[n$3[0]],r$3)};let $$1=(t$1,e$4)=>{if(e$4.length>=3&&(!t$1.session.isInitializer(e$4[1].dataId)||!t$1.session.isInitializer(e$4[2].dataId)))throw Error(`dynamic clip attributes are not allowed`);let n$3=e$4.length>=3?e$4[1].numberData[0]:i$1.MIN_CLIP,o$2=e$4.length>=3?e$4[2].numberData[0]:i$1.MAX_CLIP;return(0,r$2.createAttributeWithCacheKey)({min:n$3,max:o$2})};e$3.ceil=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],f$3()),e$4)],e$3.cos=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],d$2()),e$4)],e$3.elu=(t$1,e$4,n$3)=>[t$1.run(D$1(t$1,e$4[0],h$3(n$3.alpha),n$3.cacheKey),e$4)],e$3.parseEluAttributes=t$1=>(0,r$2.createAttributeWithCacheKey)({alpha:t$1.attributes.getFloat(`alpha`,1)}),e$3.exp=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],g$2()),e$4)],e$3.floor=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],b$3()),e$4)],e$3.identity=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],y$2()),e$4)],e$3.leakyRelu=(t$1,e$4,n$3)=>[t$1.run(D$1(t$1,e$4[0],_$2(n$3.alpha),n$3.cacheKey),e$4)],e$3.parseLeakyReluAttributes=t$1=>(0,r$2.createAttributeWithCacheKey)({alpha:t$1.attributes.getFloat(`alpha`,.01)}),e$3.log=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],v$1()),e$4)],e$3.neg=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],w$1()),e$4)],e$3.not=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],x$3()),e$4)],e$3.relu=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],S$2()),e$4)],e$3.sigmoid=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],O$2()),e$4)],e$3.sin=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],T$1()),e$4)],e$3.sqrt=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],A$1()),e$4)],e$3.tan=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],E$2()),e$4)],e$3.tanh=(t$1,e$4)=>[t$1.run(D$1(t$1,e$4[0],I()),e$4)]},5611:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.createUnpackProgramInfoLoader=e$3.createUnpackProgramInfo=void 0;let r$2=n$2(5060),i$1=n$2(2039),o$1=n$2(9390),a$2=n$2(2827),s$1={name:`unpack`,inputNames:[`A`],inputTypes:[i$1.TextureType.packed]};e$3.createUnpackProgramInfo=(t$1,e$4)=>{let n$3=e$4.dims.length,u$1=(0,a$2.getChannels)(`rc`,n$3),c$4=u$1.slice(-2),l$1=(0,o$1.getCoordsDataType)(n$3),p$5=(0,a$2.unpackFromChannel)(),f$3=e$4.dims.length===0?``:function(t$2,e$5){if(t$2===1)return`rc`;let n$4=``;for(let r$3=0;r$3Object.assign(Object.assign({},s$1),{get:()=>(0,e$3.createUnpackProgramInfo)(t$1,n$3)})},8428:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.parseUnsqueezeAttributes=e$3.unsqueezeV13=e$3.unsqueeze=void 0;let r$2=n$2(2517);e$3.unsqueeze=(t$1,e$4,n$3)=>{i$1(e$4);let o$2=r$2.ShapeUtil.unsqueezeShape(e$4[0].dims,n$3);return[t$1.reshapeUnpacked(e$4[0],o$2)]},e$3.unsqueezeV13=(t$1,n$3)=>(o$1(n$3),(0,e$3.unsqueeze)(t$1,[n$3[0]],Array.from(n$3[1].integerData))),e$3.parseUnsqueezeAttributes=t$1=>t$1.attributes.getInts(`axes`);let i$1=t$1=>{if(!t$1||t$1.length!==1)throw Error(`Unsqueeze requires 1 input.`);if(t$1[0].type===`string`)throw Error(`invalid input tensor types.`)},o$1=t$1=>{if(!t$1||t$1.length!==2)throw Error(`Unsqueeze requires 2 inputs.`);if(t$1[1].type!==`int32`)throw Error(`Invalid input type.`)}},9793:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.scalesValidation=e$3.validateInputs=e$3.parseUpsampleAttributes=e$3.parseUpsampleAttributesV9=e$3.parseUpsampleAttributesV7=e$3.upsample=void 0;let r$2=n$2(246),i$1=n$2(5060),o$1=n$2(2039),a$2={name:`Upsample`,inputNames:[`X`],inputTypes:[o$1.TextureType.unpacked]};e$3.upsample=(t$1,n$3,r$3)=>((0,e$3.validateInputs)(n$3,r$3),[t$1.run(Object.assign(Object.assign({},a$2),{cacheHint:r$3.cacheKey,get:()=>s$1(t$1,n$3,r$3)}),n$3)]),e$3.parseUpsampleAttributesV7=t$1=>(0,e$3.parseUpsampleAttributes)(t$1,7),e$3.parseUpsampleAttributesV9=t$1=>(0,e$3.parseUpsampleAttributes)(t$1,9),e$3.parseUpsampleAttributes=(t$1,n$3)=>{let i$2=n$3>=10,o$2=t$1.attributes.getString(`mode`,`nearest`);if(o$2!==`nearest`&&o$2!==`linear`&&(n$3<11||o$2!==`cubic`))throw Error(`unrecognized mode: ${o$2}`);let a$3=[];n$3<9&&(a$3=t$1.attributes.getFloats(`scales`),(0,e$3.scalesValidation)(a$3,o$2,i$2));let s$2=t$1.attributes.getFloat(`extrapolation_value`,0),u$1=n$3>10?t$1.attributes.getString(`coordinate_transformation_mode`,`half_pixel`):`asymmetric`;if([`asymmetric`,`pytorch_half_pixel`,`tf_half_pixel_for_nn`,`align_corners`,`tf_crop_and_resize`,`half_pixel`].indexOf(u$1)===-1)throw Error(`coordinate_transform_mode '${u$1}' is not supported`);let c$4=u$1===`tf_crop_and_resize`,l$1=c$4,p$5=o$2===`nearest`&&n$3>=11?t$1.attributes.getString(`nearest_mode`,`round_prefer_floor`):``;if([`round_prefer_floor`,`round_prefer_ceil`,`floor`,`ceil`,``].indexOf(p$5)===-1)throw Error(`nearest_mode '${p$5}' is not supported`);let f$3=t$1.attributes.getFloat(`cubic_coeff_a`,-.75),d$2=t$1.attributes.getInt(`exclude_outside`,0)!==0;if(d$2&&o$2!==`cubic`)throw Error(`exclude_outside can be set to 1 only when mode is CUBIC.`);let h$3=n$3<11||o$2===`nearest`&&u$1===`asymmetric`&&p$5===`floor`,g$2=0,b$3=0,m$2=0;return n$3>10?t$1.inputs.length>2?(g$2=1,b$3=2,m$2=3):(b$3=1,m$2=2):n$3===9&&(b$3=1),(0,r$2.createAttributeWithCacheKey)({opset:n$3,isResize:i$2,mode:o$2,scales:a$3,extrapolationValue:s$2,coordinateTransformMode:u$1,useExtrapolation:l$1,needRoiInput:c$4,nearestMode:p$5,cubicCoefficientA:f$3,excludeOutside:d$2,useNearest2xOptimization:h$3,roiInputIdx:g$2,scalesInputIdx:b$3,sizesInputIdx:m$2})};let s$1=(t$1,e$4,n$3)=>{let r$3=(0,i$1.getGlsl)(t$1.session.backend.glContext.version),[s$2,u$1]=t$1.calculateTextureWidthAndHeight(e$4[0].dims,o$1.TextureType.unpacked),c$4=e$4[0].dims.map((t$2,e$5)=>Math.floor(t$2*n$3.scales[e$5])),[l$1,p$5]=t$1.calculateTextureWidthAndHeight(c$4,o$1.TextureType.unpacked),f$3=c$4.length,d$2=Array(f$3),h$3=Array(f$3),g$2=`\n int output_pitches[${f$3}];\n int input_pitches[${f$3}];\n `;for(let t$2=f$3-1;t$2>=0;t$2--)d$2[t$2]=t$2===f$3-1?1:d$2[t$2+1]*c$4[t$2+1],h$3[t$2]=t$2===f$3-1?1:h$3[t$2+1]*e$4[0].dims[t$2+1],g$2+=`\n output_pitches[${t$2}] = ${d$2[t$2]};\n input_pitches[${t$2}] = ${h$3[t$2]};\n `;let b$3=`\n float getInputFloat(int index) {\n vec2 coords = offsetToCoords(index, ${s$2}, ${u$1});\n float value = getColorAsFloat(${r$3.texture2D}(X, coords));\n return value;\n }\n `,m$2=n$3.mode===`nearest`?`\n ${b$3}\n float process(int indices[${f$3}]) {\n int input_index = 0;\n int output_index = coordsToOffset(TexCoords, ${l$1}, ${p$5});\n\n ${g$2}\n\n int d, m;\n for (int dim = 0; dim < ${f$3}; ++dim) {\n d = output_index / output_pitches[dim];\n m = output_index - d * output_pitches[dim];\n output_index = m;\n\n if (scales[dim] != 1 && d > 0) {\n int d2 = d / scales[dim];\n m = d - d2 * scales[dim];\n d = d2;\n }\n input_index += input_pitches[dim] * d;\n }\n\n return getInputFloat(input_index);\n }`:f$3===4?`\n ${b$3}\n float process(int indices[4]) {\n int input_index = 0;\n int output_index = coordsToOffset(TexCoords, ${l$1}, ${p$5});\n\n ${g$2}\n\n int m;\n int index_of_dim0, index_of_dim1, index_of_dim2, index_of_dim3;\n index_of_dim0 = output_index / output_pitches[0];\n m = output_index - index_of_dim0 * output_pitches[0];\n index_of_dim1 = m / output_pitches[1];\n m = m - index_of_dim1 * output_pitches[1];\n index_of_dim2 = m / output_pitches[2];\n m = m - index_of_dim2 * output_pitches[2];\n index_of_dim3 = m;\n\n int index_of_input_dim2, index_of_input_dim3, x_offset, y_offset;\n index_of_input_dim2 = index_of_dim2 / scales[2];\n y_offset = index_of_dim2 - index_of_input_dim2 * scales[2];\n index_of_input_dim3 = index_of_dim3 / scales[3];\n x_offset = index_of_dim3 - index_of_input_dim3 * scales[3];\n\n input_index = index_of_dim0 * input_pitches[0] +\n index_of_dim1 * input_pitches[1] +\n index_of_input_dim2 * input_pitches[2] +\n index_of_input_dim3;\n\n float x00 = getInputFloat(input_index);\n float x10, x01, x11;\n\n bool end_of_dim2 = false;\n if (index_of_input_dim2 == (${e$4[0].dims[2]} - 1)) {\n // It's the end in dimension 2\n x01 = x00;\n end_of_dim2 = true;\n } else {\n x01 = getInputFloat(input_index + input_pitches[2]);\n }\n\n if (index_of_input_dim3 == (input_pitches[2] - 1)) {\n // It's the end in dimension 3\n x10 = x00;\n x11 = x01;\n }\n else {\n x10 = getInputFloat(input_index + 1);\n x11 = end_of_dim2 ? x10 : getInputFloat(input_index + input_pitches[2] + 1);\n }\n\n float y0 = x00 + float(y_offset) * (x01 - x00) / float(scales[2]);\n float y1 = x10 + float(y_offset) * (x11 - x10) / float(scales[2]);\n return y0 + float(x_offset) * (y1 - y0) / float(scales[3]);\n }`:`\n ${b$3}\n float process(int indices[2]) {\n int input_index = 0;\n int output_index = coordsToOffset(TexCoords, ${l$1}, ${p$5});\n\n ${g$2}\n\n int m;\n int index_of_dim0, index_of_dim1;\n index_of_dim0 = output_index / output_pitches[0];\n m = output_index - index_of_dim0 * output_pitches[0];\n index_of_dim1 = m;\n\n int index_of_input_dim0, index_of_input_dim1, x_offset, y_offset;\n index_of_input_dim0 = index_of_dim0 / scales[0];\n y_offset = index_of_dim0 - index_of_input_dim0 * scales[0];\n index_of_input_dim1 = index_of_dim1 / scales[1];\n x_offset = index_of_dim1 - index_of_input_dim1 * scales[1];\n\n input_index = index_of_input_dim0 * input_pitches[0] + index_of_input_dim1;\n\n float x00 = getInputFloat(input_index);\n float x10, x01, x11;\n\n bool end_of_dim0 = false;\n if (index_of_input_dim0 == (${e$4[0].dims[0]} - 1)) {\n // It's the end in dimension 0\n x01 = x00;\n end_of_dim0 = true;\n } else {\n x01 = getInputFloat(input_index + input_pitches[0]);\n }\n\n if (index_of_input_dim1 == (input_pitches[0] - 1)) {\n // It's the end in dimension 1\n x10 = x00;\n x11 = x01;\n }\n else {\n x10 = getInputFloat(input_index + 1);\n x11 = end_of_dim0 ? x10 : getInputFloat(input_index + input_pitches[0] + 1);\n }\n\n float y0 = x00 + float(y_offset) * (x01 - x00) / float(scales[0]);\n float y1 = x10 + float(y_offset) * (x11 - x10) / float(scales[0]);\n return y0 + float(x_offset) * (y1 - y0) / float(scales[1]);\n }`;return Object.assign(Object.assign({},a$2),{output:{dims:c$4,type:e$4[0].type,textureType:o$1.TextureType.unpacked},shaderSource:m$2,variables:[{name:`scales`,type:`int`,arrayLength:n$3.scales.length,data:n$3.scales.map(t$2=>Math.ceil(t$2))}]})};e$3.validateInputs=(t$1,e$4)=>{if(!t$1||e$4.opset<9&&t$1.length!==1||e$4.opset>=9&&e$4.opset<11&&t$1.length!==2||e$4.opset>=11&&t$1.length<2)throw Error(`invalid inputs.`);if(e$4.scales.length>0&&t$1[0].dims.length!==e$4.scales.length)throw Error(`Invalid input shape.`);if(t$1[0].type===`string`)throw Error(`Invalid input tensor types.`)},e$3.scalesValidation=(t$1,e$4,n$3)=>{if(n$3){for(let e$5 of t$1)if(e$5<=0)throw Error(`Scale value should be greater than 0.`)}else for(let e$5 of t$1)if(e$5<1)throw Error(`Scale value should be greater than or equal to 1.`);if(!(e$4!==`linear`&&e$4!==`cubic`||t$1.length===2||t$1.length===4&&t$1[0]===1&&t$1[1]===1))throw Error(`'Linear' mode and 'Cubic' mode only support 2-D inputs ('Bilinear', 'Bicubic') or 4-D inputs with the corresponding outermost 2 scale values being 1 in the ${n$3?`Resize`:`Upsample`} opeartor.`)}},1958:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.ProgramManager=void 0;let r$2=n$2(1670),i$1=n$2(6231),o$1=n$2(8879),a$2=n$2(5060);e$3.ProgramManager=class{constructor(t$1,e$4,n$3){this.profiler=t$1,this.glContext=e$4,this.textureLayoutStrategy=n$3,this.repo=new Map,this.attributesBound=!1}getArtifact(t$1){return this.repo.get(t$1)}setArtifact(t$1,e$4){this.repo.set(t$1,e$4)}run(t$1,e$4,n$3){var r$3;this.profiler.event(`op`,`ProgramManager.run ${(r$3=t$1.programInfo.name)??`unknown kernel`}`,()=>{var r$4;let o$2=this.glContext.gl,a$3=t$1.program;o$2.useProgram(a$3);try{this.bindOutput(n$3),this.attributesBound||this.bindAttributes(t$1.attribLocations),this.bindUniforms(t$1.uniformLocations,(r$4=t$1.programInfo.variables)??[],e$4)}catch(e$5){throw i$1.Logger.error(`ProgramManager`,t$1.programInfo.shaderSource),e$5}this.profiler.event(`backend`,`GlContext.draw()`,()=>{this.glContext.draw()})},this.glContext)}dispose(){this.vertexShader&&this.glContext.deleteShader(this.vertexShader),this.repo.forEach(t$1=>this.glContext.deleteProgram(t$1.program))}build(t$1,e$4,n$3){return this.profiler.event(`backend`,`ProgramManager.build`,()=>{let r$3=new o$1.GlslPreprocessor(this.glContext,t$1,e$4,n$3),i$2=r$3.preprocess(),a$3=this.compile(i$2);return{programInfo:t$1,program:a$3,uniformLocations:this.getUniformLocations(a$3,r$3.context.programInfo.inputNames,r$3.context.programInfo.variables),attribLocations:this.getAttribLocations(a$3)}})}compile(t$1){if(!this.vertexShader){i$1.Logger.verbose(`ProrgramManager`,`Compiling and caching Vertex shader for the first time`);let t$2=(0,a$2.getVertexShaderSource)(this.glContext.version);this.vertexShader=this.glContext.compileShader(t$2,this.glContext.gl.VERTEX_SHADER)}r$2.env.debug&&i$1.Logger.verbose(`ProrgramManager`,`FragShader:\n${t$1}\n`);let e$4=this.glContext.compileShader(t$1,this.glContext.gl.FRAGMENT_SHADER),n$3=this.glContext.createProgram(this.vertexShader,e$4);return this.glContext.deleteShader(e$4),n$3}bindOutput(t$1){let e$4=t$1.width,n$3=t$1.height;i$1.Logger.verbose(`ProrgramManager`,`Binding output texture to Framebuffer: w/h=${e$4}/${n$3}, shape=${t$1.shape}, type=${t$1.tensor.type}`),this.glContext.attachFramebuffer(t$1.texture,e$4,n$3)}bindAttributes(t$1){let e$4=t$1.position,n$3=t$1.textureCoord;this.glContext.setVertexAttributes(e$4,n$3),this.attributesBound=!0}bindUniforms(t$1,e$4,n$3){var r$3;let i$2=this.glContext.gl,o$2=0;for(let{name:a$3,type:s$1,location:u$1,arrayLength:c$4}of t$1){let t$2=(r$3=e$4.find(t$3=>t$3.name===a$3))?.data;if(s$1!==`sampler2D`&&!t$2)throw Error(`variable '${a$3}' does not have data defined in program info`);switch(s$1){case`sampler2D`:this.bindTexture(n$3[o$2],u$1,o$2),o$2++;break;case`float`:c$4?i$2.uniform1fv(u$1,t$2):i$2.uniform1f(u$1,t$2);break;case`int`:c$4?i$2.uniform1iv(u$1,t$2):i$2.uniform1i(u$1,t$2);break;default:throw Error(`Uniform not implemented: ${s$1}`)}}}bindTexture(t$1,e$4,n$3){this.glContext.bindTextureToUniform(t$1.texture,n$3,e$4)}getAttribLocations(t$1){return{position:this.getAttribLocation(t$1,`position`),textureCoord:this.getAttribLocation(t$1,`textureCoord`)}}getUniformLocations(t$1,e$4,n$3){let r$3=[];if(e$4)for(let n$4 of e$4)r$3.push({name:n$4,type:`sampler2D`,location:this.getUniformLocation(t$1,n$4)});if(n$3)for(let e$5 of n$3)r$3.push(Object.assign(Object.assign({},e$5),{location:this.getUniformLocation(t$1,e$5.name)}));return r$3}getUniformLocation(t$1,e$4){let n$3=this.glContext.gl.getUniformLocation(t$1,e$4);if(n$3===null)throw Error(`Uniform ${e$4} not found.`);return n$3}getAttribLocation(t$1,e$4){return this.glContext.gl.getAttribLocation(t$1,e$4)}}},6416:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.WebGLSessionHandler=void 0;let r$2=n$2(6231),i$1=n$2(1047),o$1=n$2(8316),a$2=n$2(1640),s$1=n$2(1958),u$1=n$2(7859),c$4=n$2(5702);e$3.WebGLSessionHandler=class{constructor(t$1,e$4){this.backend=t$1,this.context=e$4,this.layoutStrategy=new u$1.PreferLogicalStrategy(t$1.glContext.maxTextureSize),this.programManager=new s$1.ProgramManager(this.context.profiler,t$1.glContext,this.layoutStrategy),this.textureManager=new c$4.TextureManager(t$1.glContext,this.layoutStrategy,this.context.profiler,{reuseTextures:t$1.textureCacheMode===`full`}),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache=new Map,this.pack=t$1.pack,this.pack2unpackMap=new Map,this.unpack2packMap=new Map}createInferenceHandler(){return new o$1.WebGLInferenceHandler(this)}onGraphInitialized(t$1){let e$4=t$1.getValues().filter(t$2=>t$2.from===-1&&t$2.tensor).map(t$2=>t$2.tensor.dataId);this.initializers=new Set(e$4)}isInitializer(t$1){return!!this.initializers&&this.initializers.has(t$1)}addInitializer(t$1){this.initializers.add(t$1)}getTextureData(t$1,e$4){return e$4?this.packedTextureDataCache.get(t$1):this.unpackedTextureDataCache.get(t$1)}setTextureData(t$1,e$4,n$3=!1){r$2.Logger.verbose(`WebGLSessionHandler`,`Storing Texture data in cache`),n$3?this.packedTextureDataCache.set(t$1,e$4):this.unpackedTextureDataCache.set(t$1,e$4)}dispose(){this.programManager.dispose(),this.textureManager.clearActiveTextures(),this.packedTextureDataCache.forEach(t$1=>this.textureManager.releaseTexture(t$1,!0)),this.packedTextureDataCache=new Map,this.unpackedTextureDataCache.forEach(t$1=>this.textureManager.releaseTexture(t$1,!0)),this.unpackedTextureDataCache=new Map}resolve(t$1,e$4,n$3){let r$3=(0,i$1.resolveOperator)(t$1,e$4,a$2.WEBGL_OP_RESOLVE_RULES);return{impl:r$3.opImpl,context:r$3.opInit?r$3.opInit(t$1,n$3):t$1}}}},7769:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.Uint8DataEncoder=e$3.RGBAFloatDataEncoder=e$3.RedFloat32DataEncoder=void 0;let r$2=n$2(6231);e$3.RedFloat32DataEncoder=class{constructor(t$1,e$4=1){if(e$4===1)this.internalFormat=t$1.R32F,this.format=t$1.RED,this.textureType=t$1.FLOAT,this.channelSize=e$4;else{if(e$4!==4)throw Error(`Invalid number of channels: ${e$4}`);this.internalFormat=t$1.RGBA32F,this.format=t$1.RGBA,this.textureType=t$1.FLOAT,this.channelSize=e$4}}encode(t$1,e$4){let n$3,i$1;return t$1.constructor!==Float32Array&&(r$2.Logger.warning(`Encoder`,`data was not of type Float32; creating new Float32Array`),i$1=new Float32Array(t$1)),e$4*this.channelSize>t$1.length?(r$2.Logger.warning(`Encoder`,`Source data too small. Allocating larger array`),i$1=t$1,n$3=this.allocate(e$4*this.channelSize),i$1.forEach((t$2,e$5)=>n$3[e$5]=t$2)):(i$1=t$1,n$3=i$1),n$3}allocate(t$1){return new Float32Array(4*t$1)}decode(t$1,e$4){return this.channelSize===1?t$1.filter((t$2,e$5)=>e$5%4==0).subarray(0,e$4):t$1.subarray(0,e$4)}},e$3.RGBAFloatDataEncoder=class{constructor(t$1,e$4=1,n$3){if(e$4!==1&&e$4!==4)throw Error(`Invalid number of channels: ${e$4}`);this.internalFormat=t$1.RGBA,this.format=t$1.RGBA,this.channelSize=e$4,this.textureType=n$3||t$1.FLOAT}encode(t$1,e$4){let n$3=t$1;return this.channelSize===1&&(r$2.Logger.verbose(`Encoder`,`Exploding into a larger array`),n$3=this.allocate(e$4),t$1.forEach((t$2,e$5)=>n$3[4*e$5]=t$2)),n$3}allocate(t$1){return new Float32Array(4*t$1)}decode(t$1,e$4){return this.channelSize===1?t$1.filter((t$2,e$5)=>e$5%4==0).subarray(0,e$4):t$1.subarray(0,e$4)}},e$3.Uint8DataEncoder=class{constructor(t$1,e$4=1){if(this.channelSize=4,e$4===1)this.internalFormat=t$1.ALPHA,this.format=t$1.ALPHA,this.textureType=t$1.UNSIGNED_BYTE,this.channelSize=e$4;else{if(e$4!==4)throw Error(`Invalid number of channels: ${e$4}`);this.internalFormat=t$1.RGBA,this.format=t$1.RGBA,this.textureType=t$1.UNSIGNED_BYTE,this.channelSize=e$4}}encode(t$1,e$4){return new Uint8Array(t$1.buffer,t$1.byteOffset,t$1.byteLength)}allocate(t$1){return new Uint8Array(t$1*this.channelSize)}decode(t$1,e$4){if(t$1 instanceof Uint8Array)return t$1.subarray(0,e$4);throw Error(`Invalid array type: ${t$1.constructor}`)}}},7859:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.getBatchDim=e$3.sizeToSquarishShape=e$3.getRowsCols=e$3.sizeFromShape=e$3.isInt=e$3.parseAxisParam=e$3.squeezeShape=e$3.PreferLogicalStrategy=e$3.AlwaysKeepOriginalSizeStrategy=void 0;let r$2=n$2(6231),i$1=n$2(2517);function o$1(t$1,e$4){let n$3=[],r$3=[],i$2=e$4!=null&&Array.isArray(e$4)&&e$4.length===0,o$2=e$4==null||i$2?null:a$2(e$4,t$1).sort(),s$2=0;for(let e$5=0;e$5e$5)&&t$1[e$5]===1&&(n$3.push(t$1[e$5]),r$3.push(e$5)),o$2[s$2]<=e$5&&s$2++}t$1[e$5]!==1&&(n$3.push(t$1[e$5]),r$3.push(e$5))}return{newShape:n$3,keptDims:r$3}}function a$2(t$1,e$4){let n$3=e$4.length;return t$1=t$1==null?e$4.map((t$2,e$5)=>e$5):[].concat(t$1),(0,i$1.assert)(t$1.every(t$2=>t$2>=-n$3&&t$2`All values in axis param must be in range [-${n$3}, ${n$3}) but got axis ${t$1}`),(0,i$1.assert)(t$1.every(s$1),()=>`All values in axis param must be integers but got axis ${t$1}`),t$1.map(t$2=>t$2<0?n$3+t$2:t$2)}function s$1(t$1){return t$1%1==0}function u$1(t$1){if(t$1.length===0)return 1;let e$4=t$1[0];for(let n$3=1;n$3=t$1.length?1:t$1.slice(e$4.breakAxis).reduce((t$2,e$5)=>t$2*e$5),o$3=e$4.breakAxis<=0?1:t$1.slice(0,e$4.breakAxis).reduce((t$2,e$5)=>t$2*e$5);if(!(i$3>n$3||o$3>n$3))return[i$3,o$3];r$2.Logger.verbose(`TextureLayout`,`Given width/height preferences were unattainable: shape:${t$1}, breakAxis:${e$4.breakAxis}`)}let i$2=t$1.reduce((t$2,e$5)=>t$2*e$5),o$2=Math.floor(Math.sqrt(i$2));for(;o$2=n$3||i$2%o$2!=0)throw Error(`The given dimensions are outside this GPU's boundaries: ${t$1}`);return[o$2,i$2/o$2]}},e$3.PreferLogicalStrategy=class{constructor(t$1){this.maxTextureSize=t$1}computeTextureWH(t$1,e$4){let n$3=this.computeTexture(t$1,e$4);return e$4&&e$4.isPacked&&(n$3[0]/=2,n$3[1]/=2),e$4&&e$4.reverseWH?[n$3[1],n$3[0]]:n$3}computeTexture(t$1,e$4){let n$3=e$4&&e$4.isPacked;if(t$1.length===0)return n$3?[2,2]:[1,1];let i$2=this.maxTextureSize;if(e$4&&e$4.breakAxis!==void 0){let n$4=e$4.breakAxis>=t$1.length?1:t$1.slice(e$4.breakAxis).reduce((t$2,e$5)=>t$2*e$5),o$2=e$4.breakAxis<=0?1:t$1.slice(0,e$4.breakAxis).reduce((t$2,e$5)=>t$2*e$5);if(!(n$4>i$2||o$2>i$2))return[n$4,o$2];r$2.Logger.verbose(`TextureLayout`,`Given width/height preferences were unattainable: shape:${t$1}, breakAxis:${e$4.breakAxis}`)}let a$3=t$1.slice(0);if(n$3&&(i$2*=2,a$3=a$3.map((t$2,e$5)=>e$5>=a$3.length-2?a$3[e$5]%2==0?a$3[e$5]:a$3[e$5]+1:a$3[e$5]),a$3.length===1&&(a$3=[2,a$3[0]])),a$3.length!==2){let t$2=o$1(a$3);a$3=t$2.newShape}let s$2=u$1(a$3);return a$3.length<=1&&s$2<=i$2?[1,s$2]:a$3.length===2&&a$3[0]<=i$2&&a$3[1]<=i$2?a$3:a$3.length===3&&a$3[0]*a$3[1]<=i$2&&a$3[2]<=i$2?[a$3[0]*a$3[1],a$3[2]]:a$3.length===3&&a$3[0]<=i$2&&a$3[1]*a$3[2]<=i$2?[a$3[0],a$3[1]*a$3[2]]:a$3.length===4&&a$3[0]*a$3[1]*a$3[2]<=i$2&&a$3[3]<=i$2?[a$3[0]*a$3[1]*a$3[2],a$3[3]]:a$3.length===4&&a$3[0]<=i$2&&a$3[1]*a$3[2]*a$3[3]<=i$2?[a$3[0],a$3[1]*a$3[2]*a$3[3]]:n$3?c$4(s$2/4).map(t$2=>2*t$2):c$4(s$2)}},e$3.squeezeShape=o$1,e$3.parseAxisParam=a$2,e$3.isInt=s$1,e$3.sizeFromShape=u$1,e$3.getRowsCols=function(t$1){if(t$1.length===0)throw Error(`Cannot get rows and columns of an empty shape array.`);return[t$1.length>1?t$1[t$1.length-2]:1,t$1[t$1.length-1]]},e$3.sizeToSquarishShape=c$4,e$3.getBatchDim=function(t$1,e$4=2){return u$1(t$1.slice(0,t$1.length-e$4))}},4057:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.createTextureLayoutFromShape=e$3.calculateTextureWidthAndHeight=e$3.createTextureLayoutFromTextureType=void 0;let r$2=n$2(2517),i$1=n$2(2039);e$3.createTextureLayoutFromTextureType=(t$1,n$3,r$3)=>{let o$1=r$3===i$1.TextureType.unpacked||r$3===i$1.TextureType.unpackedReversed?1:4,a$2=r$3===i$1.TextureType.packed,s$1=r$3===i$1.TextureType.unpackedReversed||r$3===i$1.TextureType.packed,u$1=r$3===i$1.TextureType.packedLastDimension?n$3.length-1:void 0,c$4=r$3===i$1.TextureType.packedLastDimension?n$3.map((t$2,e$4)=>e$4===n$3.length-1?4*t$2:t$2):void 0;return(0,e$3.createTextureLayoutFromShape)(t$1,n$3,o$1,c$4,{isPacked:a$2,reverseWH:s$1,breakAxis:u$1})},e$3.calculateTextureWidthAndHeight=(t$1,n$3,r$3)=>{let i$2=(0,e$3.createTextureLayoutFromTextureType)(t$1,n$3,r$3);return[i$2.width,i$2.height]},e$3.createTextureLayoutFromShape=(t$1,e$4,n$3=1,i$2,o$1)=>{let a$2=!(!o$1||!o$1.isPacked),[s$1,u$1]=t$1.computeTextureWH(a$2&&i$2||e$4,o$1),c$4=e$4.length,l$1=e$4.slice(0);if(c$4===0&&(l$1=[1]),n$3===1)i$2=e$4;else if(a$2){if(n$3!==4)throw Error(`a packed texture must be 4-channel`);i$2=e$4,c$4>0&&(l$1[c$4-1]=Math.ceil(l$1[c$4-1]/2)),c$4>1&&(l$1[c$4-2]=Math.ceil(l$1[c$4-2]/2))}else if(!i$2)throw Error(`Unpacked shape is needed when using channels > 1`);return{width:s$1,height:u$1,channels:n$3,isPacked:a$2,shape:l$1,strides:r$2.ShapeUtil.computeStrides(l$1),unpackedShape:i$2,reversedWH:o$1&&o$1.reverseWH}}},5702:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.TextureManager=void 0;let r$2=n$2(6231);e$3.TextureManager=class{constructor(t$1,e$4,n$3,r$3){this.glContext=t$1,this.layoutStrategy=e$4,this.profiler=n$3,this.config=r$3,this.pendingRead=new Map,r$3.reuseTextures&&(this.inUseTextures=new Map,this.idleTextures=new Map,this.textureLookup=new Map)}createTextureFromLayout(t$1,e$4,n$3,i$1){let o$1=this.toEncoderType(t$1),a$2=this.glContext.getEncoder(o$1,e$4.channels||1,i$1);if(e$4.isPacked&&i$1===1)throw Error(`not implemented`);let s$1=e$4.width,u$1=e$4.height,c$4,l$1;if(this.config.reuseTextures){c$4=`${s$1}x${u$1}_${a$2.format}_${a$2.internalFormat}_${a$2.textureType}`,l$1=this.inUseTextures.get(c$4),l$1||(l$1=[],this.inUseTextures.set(c$4,l$1));let e$5=this.idleTextures.get(c$4);if(e$5&&e$5.length>0){let r$3=e$5.pop();return l$1.push(r$3),i$1===1&&this.glContext.updateTexture(r$3,s$1,u$1,a$2,this.toTextureData(t$1,n$3)),r$3}}r$2.Logger.verbose(`TextureManager`,`Creating new texture of size ${e$4.width}x${e$4.height}`);let p$5=this.glContext.allocateTexture(s$1,u$1,a$2,this.toTextureData(t$1,n$3));return this.config.reuseTextures&&(l$1.push(p$5),this.textureLookup.set(p$5,c$4)),p$5}readTexture(t$1,e$4,n$3){return n$3||=1,this.profiler.event(`backend`,`TextureManager.readTexture`,()=>{let r$3=t$1.shape.reduce((t$2,e$5)=>t$2*e$5)*n$3,i$1=this.glContext.readTexture(t$1.texture,t$1.width,t$1.height,r$3,this.toEncoderType(e$4),n$3);return this.toTensorData(e$4,i$1)})}async readTextureAsync(t$1,e$4,n$3){let r$3=t$1.tensor.dataId;if(n$3||=1,this.pendingRead.has(r$3)){let t$2=this.pendingRead.get(r$3);return new Promise(e$5=>t$2?.push(e$5))}return this.profiler.event(`backend`,`TextureManager.readTextureAsync`,async()=>{this.pendingRead.set(r$3,[]);let i$1=t$1.shape.reduce((t$2,e$5)=>t$2*e$5)*n$3;await this.glContext.createAndWaitForFence();let o$1=this.glContext.readTexture(t$1.texture,t$1.width,t$1.height,i$1,this.toEncoderType(e$4),n$3),a$2=this.toTensorData(e$4,o$1),s$1=this.pendingRead.get(r$3);return this.pendingRead.delete(r$3),s$1?.forEach(t$2=>t$2(a$2)),a$2})}readUint8TextureAsFloat(t$1){return this.profiler.event(`backend`,`TextureManager.readUint8TextureAsFloat`,()=>{let e$4=t$1.shape.reduce((t$2,e$5)=>t$2*e$5),n$3=this.glContext.readTexture(t$1.texture,t$1.width,t$1.height,4*e$4,`byte`,4);return new Float32Array(n$3.buffer,n$3.byteOffset,e$4)})}releaseTexture(t$1,e$4){let n$3;if(this.config.reuseTextures&&(n$3=this.textureLookup.get(t$1.texture),n$3)){e$4&&this.textureLookup.delete(n$3);let r$3=this.inUseTextures.get(n$3);if(r$3){let e$5=r$3.indexOf(t$1.texture);if(e$5!==-1){r$3.splice(e$5,1);let i$1=this.idleTextures.get(n$3);i$1||(i$1=[],this.idleTextures.set(n$3,i$1)),i$1.push(t$1.texture)}}}n$3&&!e$4||(r$2.Logger.verbose(`TextureManager`,`Deleting texture of size ${t$1.width}x${t$1.height}`),this.glContext.deleteTexture(t$1.texture))}toTensorData(t$1,e$4){switch(t$1){case`int16`:return e$4 instanceof Int16Array?e$4:Int16Array.from(e$4);case`int32`:return e$4 instanceof Int32Array?e$4:Int32Array.from(e$4);case`int8`:return e$4 instanceof Int8Array?e$4:Int8Array.from(e$4);case`uint16`:return e$4 instanceof Uint16Array?e$4:Uint16Array.from(e$4);case`uint32`:return e$4 instanceof Uint32Array?e$4:Uint32Array.from(e$4);case`uint8`:case`bool`:return e$4 instanceof Uint8Array?e$4:Uint8Array.from(e$4);case`float32`:return e$4 instanceof Float32Array?e$4:Float32Array.from(e$4);case`float64`:return e$4 instanceof Float64Array?e$4:Float64Array.from(e$4);default:throw Error(`TensorData type ${t$1} is not supported`)}}toTextureData(t$1,e$4){if(e$4)return e$4 instanceof Float32Array?e$4:new Float32Array(e$4)}toEncoderType(t$1){return`float`}clearActiveTextures(){this.glContext.clearActiveTextures()}}},2039:(t,e$3)=>{"use strict";var n$2;Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.TextureType=void 0,(n$2=e$3.TextureType||={})[n$2.unpacked=0]=`unpacked`,n$2[n$2.unpackedReversed=1]=`unpackedReversed`,n$2[n$2.packed=2]=`packed`,n$2[n$2.downloadUint8AsFloat=3]=`downloadUint8AsFloat`,n$2[n$2.packedLastDimension=4]=`packedLastDimension`},9390:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.getGlChannels=e$3.getCoordsDataType=e$3.getSqueezedParams=e$3.squeezeInputShape=e$3.generateShaderFuncNameFromInputSamplerNameAtOutCoords=e$3.generateShaderFuncNameFromInputSamplerName=e$3.repeatedTry=e$3.getPackedShape=void 0;let r$2=n$2(2517);e$3.getPackedShape=function(t$1){let e$4=t$1.length;return t$1.slice(0,e$4-1).concat(t$1[e$4-1]/4)},e$3.repeatedTry=async function(t$1,e$4=t$2=>0,n$3){return new Promise((r$3,i$1)=>{let o$1=0,a$2=()=>{if(t$1())return void r$3();o$1++;let s$1=e$4(o$1);n$3!=null&&o$1>=n$3?i$1():setTimeout(a$2,s$1)};a$2()})},e$3.generateShaderFuncNameFromInputSamplerName=function(t$1){return(0,r$2.assert)(t$1!==void 0&&t$1.length!==0,()=>`empty string found for sampler name`),`get`+t$1.charAt(0).toUpperCase()+t$1.slice(1)},e$3.generateShaderFuncNameFromInputSamplerNameAtOutCoords=function(t$1){return(0,r$2.assert)(t$1!==void 0&&t$1.length!==0,()=>`empty string found for sampler name`),`get`+t$1.charAt(0).toUpperCase()+t$1.slice(1)+`AtOutCoords`},e$3.squeezeInputShape=function(t$1,e$4){let n$3=JSON.parse(JSON.stringify(t$1));return n$3=e$4,n$3},e$3.getSqueezedParams=function(t$1,e$4){return e$4.map(e$5=>t$1[e$5]).join(`, `)},e$3.getCoordsDataType=function(t$1){if(t$1<=1)return`int`;if(t$1===2)return`ivec2`;if(t$1===3)return`ivec3`;if(t$1===4)return`ivec4`;if(t$1===5)return`ivec5`;if(t$1===6)return`ivec6`;throw Error(`GPU for rank ${t$1} is not yet supported`)},e$3.getGlChannels=function(t$1=6){return[`x`,`y`,`z`,`w`,`u`,`v`].slice(0,t$1)}},7305:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.createNewWebGLContext=e$3.createWebGLContext=void 0;let r$2=n$2(6231),i$1=n$2(1713),o$1={};function a$2(t$1){let e$4=function(){if(typeof document>`u`){if(typeof OffscreenCanvas>`u`)throw TypeError(`failed to create canvas: OffscreenCanvas is not supported`);return new OffscreenCanvas(1,1)}let t$2=document.createElement(`canvas`);return t$2.width=1,t$2.height=1,t$2}(),n$3,o$2={alpha:!1,depth:!1,antialias:!1,stencil:!1,preserveDrawingBuffer:!1,premultipliedAlpha:!1,failIfMajorPerformanceCaveat:!1};if((!t$1||t$1===`webgl2`)&&(n$3=e$4.getContext(`webgl2`,o$2),n$3))try{return new i$1.WebGLContext(n$3,2)}catch(t$2){r$2.Logger.warning(`GlContextFactory`,`failed to create WebGLContext using contextId 'webgl2'. Error: ${t$2}`)}if((!t$1||t$1===`webgl`)&&(n$3=e$4.getContext(`webgl`,o$2)||e$4.getContext(`experimental-webgl`,o$2),n$3))try{return new i$1.WebGLContext(n$3,1)}catch(t$2){r$2.Logger.warning(`GlContextFactory`,`failed to create WebGLContext using contextId 'webgl' or 'experimental-webgl'. Error: ${t$2}`)}throw Error(`WebGL is not supported`)}e$3.createWebGLContext=function t$1(e$4){let n$3;e$4&&e$4!==`webgl2`||!(`webgl2`in o$1)?e$4&&e$4!==`webgl`||!(`webgl`in o$1)||(n$3=o$1.webgl):n$3=o$1.webgl2,n$3||=a$2(e$4),e$4=e$4||n$3.version===1?`webgl`:`webgl2`;let r$3=n$3.gl;return o$1[e$4]=n$3,r$3.isContextLost()?(delete o$1[e$4],t$1(e$4)):(r$3.disable(r$3.DEPTH_TEST),r$3.disable(r$3.STENCIL_TEST),r$3.disable(r$3.BLEND),r$3.disable(r$3.DITHER),r$3.disable(r$3.POLYGON_OFFSET_FILL),r$3.disable(r$3.SAMPLE_COVERAGE),r$3.enable(r$3.SCISSOR_TEST),r$3.enable(r$3.CULL_FACE),r$3.cullFace(r$3.BACK),n$3)},e$3.createNewWebGLContext=a$2},1713:function(t,e$3,n$2){"use strict";var r$2=this&&this.__createBinding||(Object.create?function(t$1,e$4,n$3,r$3){r$3===void 0&&(r$3=n$3);var i$2=Object.getOwnPropertyDescriptor(e$4,n$3);i$2&&!(`get`in i$2?!e$4.__esModule:i$2.writable||i$2.configurable)||(i$2={enumerable:!0,get:function(){return e$4[n$3]}}),Object.defineProperty(t$1,r$3,i$2)}:function(t$1,e$4,n$3,r$3){r$3===void 0&&(r$3=n$3),t$1[r$3]=e$4[n$3]}),i$1=this&&this.__setModuleDefault||(Object.create?function(t$1,e$4){Object.defineProperty(t$1,`default`,{enumerable:!0,value:e$4})}:function(t$1,e$4){t$1.default=e$4}),o$1=this&&this.__importStar||function(t$1){if(t$1&&t$1.__esModule)return t$1;var e$4={};if(t$1!=null)for(var n$3 in t$1)n$3!==`default`&&Object.prototype.hasOwnProperty.call(t$1,n$3)&&r$2(e$4,t$1,n$3);return i$1(e$4,t$1),e$4};Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.WebGLContext=e$3.linearSearchLastTrue=void 0;let a$2=n$2(1670),s$1=o$1(n$2(7769)),u$1=n$2(9390);function c$4(t$1){let e$4=0;for(;e$4this.isTimerResultAvailable(t$1)),this.getTimerResult(t$1)}async createAndWaitForFence(){let t$1=this.createFence(this.gl);return this.pollFence(t$1)}createFence(t$1){let e$4,n$3=t$1,r$3=n$3.fenceSync(n$3.SYNC_GPU_COMMANDS_COMPLETE,0);return t$1.flush(),e$4=r$3===null?()=>!0:()=>{let t$2=n$3.clientWaitSync(r$3,0,0);return t$2===n$3.ALREADY_SIGNALED||t$2===n$3.CONDITION_SATISFIED},{query:r$3,isFencePassed:e$4}}async pollFence(t$1){return new Promise(e$4=>{this.addItemToPoll(()=>t$1.isFencePassed(),()=>e$4())})}pollItems(){let t$1=c$4(this.itemsToPoll.map(t$2=>t$2.isDoneFn));for(let e$4=0;e$4<=t$1;++e$4){let{resolveFn:t$2}=this.itemsToPoll[e$4];t$2()}this.itemsToPoll=this.itemsToPoll.slice(t$1+1)}async addItemToPoll(t$1,e$4){this.itemsToPoll.push({isDoneFn:t$1,resolveFn:e$4}),this.itemsToPoll.length>1||await(0,u$1.repeatedTry)(()=>(this.pollItems(),this.itemsToPoll.length===0))}}},1036:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.ExecutionPlan=void 0;let r$2=n$2(6231);class i$1{constructor(t$1,e$4){this.op=t$1,this.node=e$4}}e$3.ExecutionPlan=class{constructor(t$1,e$4,n$3){this.graph=t$1,this.profiler=n$3,this.initialize(e$4)}initialize(t$1){this.profiler.event(`session`,`ExecutionPlan.initialize`,()=>{let e$4=this.graph.getNodes();if(e$4.length!==t$1.length)throw Error(`The size of nodes and OPs do not match.`);this._ops=t$1.map((t$2,n$3)=>new i$1(t$2,e$4[n$3])),this.reset(),this._starter=[],this._ops.forEach((t$2,e$5)=>{let n$3=!0;for(let e$6 of t$2.node.inputs)if(!this._values[e$6]&&this.graph.getInputIndices().indexOf(e$6)===-1){n$3=!1;break}n$3&&this._starter.push(e$5)})})}reset(){this._values=this.graph.getValues().map(t$1=>t$1.tensor)}async execute(t$1,e$4){return this.profiler.event(`session`,`ExecutionPlan.execute`,async()=>{this.reset();let n$3=t$1.createInferenceHandler(),i$2=this.graph.getInputIndices();if(e$4.length!==i$2.length)throw Error(`number of input tensors don't match the number of inputs to the model: actual: ${e$4.length} expected: ${i$2.length}`);e$4.forEach((t$2,e$5)=>{let n$4=i$2[e$5];this._values[n$4]=t$2});let o$1=this._starter.slice(0),a$2=this.graph.getValues(),s$1=this.graph.getNodes(),u$1=0;for(;u$1this._values[t$3]);if(i$3.indexOf(void 0)!==-1)throw Error(`unresolved input detected: op: ${e$5.node}`);let c$5=i$3;r$2.Logger.verbose(`ExecPlan`,`Runing op:${e$5.node.name} (${c$5.map((t$3,n$4)=>`'${e$5.node.inputs[n$4]}': ${t$3.type}[${t$3.dims.join(`,`)}]`).join(`, `)})`);let l$1=await this.profiler.event(`node`,e$5.node.name,async()=>e$5.op.impl(n$3,c$5,e$5.op.context));if(l$1.length!==e$5.node.outputs.length)throw Error(`the size of output does not match model definition.`);l$1.forEach((t$3,n$4)=>{let r$3=e$5.node.outputs[n$4];if(this._values[r$3])throw Error(`output [${r$3}] already has value: op:${e$5.node.name}`);this._values[r$3]=t$3});let p$5=new Set;l$1.forEach((t$3,n$4)=>{let r$3=e$5.node.outputs[n$4];for(let t$4 of a$2[r$3].to){let e$6=s$1[t$4],n$5=!0;for(let t$5 of e$6.inputs)if(!this._values[t$5]){n$5=!1;break}n$5&&p$5.add(t$4)}}),o$1.push(...p$5)}let c$4=[];for(let t$2=0;t$2{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.Graph=void 0;let r$2=n$2(1446),i$1=n$2(7778),o$1=n$2(9395),a$2=n$2(9162),s$1=n$2(2517);var u$1=o$1.onnxruntime.experimental.fbs;e$3.Graph={from:(t$1,e$4)=>new p$5(t$1,e$4)};class c$4{constructor(t$1){this._from=void 0,this._to=[],this.tensor=void 0,this.type=void 0,t$1&&(this.type=s$1.ProtoUtil.tensorValueTypeFromProto(t$1.type.tensorType))}get from(){return this._from}get to(){return this._to}}class l$1{constructor(t$1,e$4){t$1 instanceof r$2.onnx.NodeProto?(this.name=t$1.name,this.opType=t$1.opType,this.attributes=new i$1.Attribute(t$1.attribute)):t$1 instanceof u$1.Node&&(this.name=e$4??t$1.name(),this.opType=t$1.opType(),this.attributes=new i$1.Attribute(s$1.ProtoUtil.tensorAttributesFromORTFormat(t$1))),this.inputs=[],this.outputs=[],this.executeNode=!0}}class p$5{constructor(t$1,e$4){if(!t$1)throw TypeError(`graph is empty`);this.buildGraph(t$1),this.transformGraph(e$4),this.checkIsAcyclic()}getInputIndices(){return this._allInputIndices}getInputNames(){return this._allInputNames}getOutputIndices(){return this._allOutputIndices}getOutputNames(){return this._allOutputNames}getValues(){return this._allData}getNodes(){return this._nodes}buildGraph(t$1){if(t$1 instanceof r$2.onnx.GraphProto)this.buildGraphFromOnnxFormat(t$1);else{if(!(t$1 instanceof u$1.Graph))throw TypeError(`Graph type is not supported.`);this.buildGraphFromOrtFormat(t$1)}}buildGraphFromOnnxFormat(t$1){let e$4=new Map;this._allData=[],this._allInputIndices=[],this._allInputNames=[],this._allOutputIndices=[],this._allOutputNames=[],this._nodes=[];let n$3=new Map;if(!t$1.input)throw Error(`missing information in graph: input`);let r$3=[];for(let n$4 of t$1.input){if(e$4.has(n$4.name))throw Error(`duplicated input name: ${n$4.name}`);let t$2=this._allData.push(new c$4(n$4))-1;e$4.set(n$4.name,t$2),r$3.push(n$4.name)}if(!t$1.initializer)throw Error(`missing information in graph: initializer`);for(let n$4 of t$1.initializer){let t$2=e$4.get(n$4.name);if(t$2===void 0){let r$4=new c$4;r$4.type={shape:{dims:s$1.ProtoUtil.tensorDimsFromProto(n$4.dims)},tensorType:s$1.ProtoUtil.tensorDataTypeFromProto(n$4.dataType)},t$2=this._allData.push(r$4)-1,e$4.set(n$4.name,t$2)}this._allData[t$2]._from=-1,this._allData[t$2].tensor=a$2.Tensor.fromProto(n$4)}for(let t$2=0;t$2{this._allData[e$5]._to.forEach(e$6=>{t$1.add(e$6)})});let e$4=Array.from(t$1),n$3=Array(this._nodes.length).fill(`white`);for(;e$4.length>0;){let t$2=e$4.pop();n$3[t$2]===`gray`?n$3[t$2]=`black`:(e$4.push(t$2),n$3[t$2]=`gray`,this._nodes[t$2].outputs.forEach(r$3=>{let i$2=this._allData[r$3];if(i$2.tensor!==void 0)throw Error(`node outputs should not be initialized`);if(i$2._from!==t$2)throw Error(`from property of the Value object doesn't match index of Node being processed`);i$2._to.forEach(t$3=>{if(n$3[t$3]===`gray`)throw Error(`model graph is cyclic`);n$3[t$3]===`white`&&e$4.push(t$3)})}))}}transformGraph(t$1){this.removeAllIdentityNodes(),this.removeAllDropoutNodes(),this.fuseConvActivationNodes(),t$1&&t$1.transformGraph(this),this.finalizeGraph()}finalizeGraph(){let t$1=0;for(let e$4=0;e$40&&(this._nodes[e$4].inputs.forEach(n$3=>{let r$3=this._allData[n$3]._to.indexOf(e$4+t$1);r$3!==-1&&(this._allData[n$3]._to[r$3]=e$4)}),this._nodes[e$4].outputs.forEach(n$3=>{this._allData[n$3]._from&&this._allData[n$3]._from===e$4+t$1&&(this._allData[n$3]._from=e$4)})):(t$1++,this._nodes[e$4].outputs.forEach(t$2=>{this._allData[t$2]._from=-2}),this._nodes.splice(e$4,1),e$4--);t$1=0;for(let e$4=0;e$40){let n$3=-1;this._allData[e$4].from!==void 0&&this._allData[e$4].from!==-1?(n$3=this._nodes[this._allData[e$4].from].outputs.indexOf(e$4+t$1),n$3!==-1&&(this._nodes[this._allData[e$4].from].outputs[n$3]=e$4)):(n$3=this._allInputIndices.indexOf(e$4+t$1),n$3!==-1&&(this._allInputIndices[n$3]=e$4)),this._allData[e$4].to.forEach(r$3=>{n$3=this._nodes[r$3].inputs.indexOf(e$4+t$1),n$3!==-1&&(this._nodes[r$3].inputs[n$3]=e$4)}),this._allData[e$4].to.length===0&&(n$3=this._allOutputIndices.indexOf(e$4+t$1),n$3!==-1&&(this._allOutputIndices[n$3]=e$4))}}else t$1++,this._allData.splice(e$4,1),e$4--}deleteNode(t$1){let e$4=this._nodes[t$1];if(e$4.outputs.length>1){for(let t$2=1;t$20)throw Error(`Node deletion with more than one output connected to other nodes is not supported. `)}e$4.executeNode=!1;let n$3=e$4.inputs[0],r$3=e$4.outputs[0],i$2=this._allData[r$3].to,o$2=this._allData[n$3].to.indexOf(t$1);if(o$2===-1)throw Error(`The Value object doesn't have the current Node in it's 'to' property `);this._allData[n$3].to.splice(o$2,1),this._allData[r$3]._to=[];let a$3=this._allOutputIndices.indexOf(r$3);if(a$3!==-1&&(this._allOutputIndices[a$3]=n$3),i$2&&i$2.length>0)for(let t$2 of i$2){let e$5=this._nodes[t$2].inputs.indexOf(r$3);if(e$5===-1)throw Error(`The Node object doesn't have the output Value in it's 'inputs' property `);this._nodes[t$2].inputs[e$5]=n$3,this._allData[n$3].to.push(t$2)}}removeAllDropoutNodes(){let t$1=0;for(let e$4 of this._nodes){if(e$4.opType===`Dropout`){if(e$4.inputs.length!==1)throw Error(`Dropout nodes should only contain one input. `);if(e$4.outputs.length!==1&&e$4.outputs.length!==2)throw Error(`Dropout nodes should contain either 1 or 2 output(s)`);if(e$4.outputs.length===2&&this._allData[e$4.outputs[1]]._to.length!==0)throw Error(`Dropout nodes's second output should not be referenced by other nodes`);this.deleteNode(t$1)}t$1++}}removeAllIdentityNodes(){let t$1=0;for(let e$4 of this._nodes)e$4.opType===`Identity`&&this.deleteNode(t$1),t$1++}isActivation(t$1){switch(t$1.opType){case`Relu`:case`Sigmoid`:case`Clip`:return!0;default:return!1}}fuseConvActivationNodes(){for(let t$1 of this._nodes)if(t$1.opType===`Conv`){let e$4=this._allData[t$1.outputs[0]]._to;if(e$4.length===1&&this.isActivation(this._nodes[e$4[0]])){let n$3=this._nodes[e$4[0]];if(n$3.opType===`Clip`)if(n$3.inputs.length===1)try{t$1.attributes.set(`activation_params`,`floats`,[n$3.attributes.getFloat(`min`),n$3.attributes.getFloat(`max`)])}catch{t$1.attributes.set(`activation_params`,`floats`,[s$1.MIN_CLIP,s$1.MAX_CLIP])}else{if(!(n$3.inputs.length>=3&&this._allData[n$3.inputs[1]].tensor!==void 0&&this._allData[n$3.inputs[2]].tensor!==void 0))continue;t$1.attributes.set(`activation_params`,`floats`,[this._allData[n$3.inputs[1]].tensor.floatData[0],this._allData[n$3.inputs[2]].tensor.floatData[0]])}t$1.attributes.set(`activation`,`string`,n$3.opType),this.deleteNode(e$4[0])}}}}},6231:(t,e$3)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.now=e$3.Profiler=e$3.Logger=void 0;let n$2={verbose:1e3,info:2e3,warning:4e3,error:5e3,fatal:6e3},r$2={none:new class{log(t$1,e$4,n$3){}},console:new class{log(t$1,e$4,n$3){console.log(`${this.color(t$1)} ${n$3?`\x1B[35m`+n$3+`\x1B[0m `:``}${e$4}`)}color(t$1){switch(t$1){case`verbose`:return`\x1B[34;40mv\x1B[0m`;case`info`:return`\x1B[32mi\x1B[0m`;case`warning`:return`\x1B[30;43mw\x1B[0m`;case`error`:return`\x1B[31;40me\x1B[0m`;case`fatal`:return`\x1B[101mf\x1B[0m`;default:throw Error(`unsupported severity: ${t$1}`)}}}},i$1={provider:`console`,minimalSeverity:`warning`,logDateTime:!0,logSourceLocation:!1},o$1={"":i$1};function a$2(t$1,e$4,n$3,r$3){if(e$4===void 0)return i$2=t$1,{verbose:a$2.verbose.bind(null,i$2),info:a$2.info.bind(null,i$2),warning:a$2.warning.bind(null,i$2),error:a$2.error.bind(null,i$2),fatal:a$2.fatal.bind(null,i$2)};if(n$3===void 0)s$1(t$1,e$4);else if(typeof n$3==`number`&&r$3===void 0)s$1(t$1,e$4);else if(typeof n$3==`string`&&r$3===void 0)s$1(t$1,n$3,0,e$4);else{if(typeof n$3!=`string`||typeof r$3!=`number`)throw TypeError(`input is valid`);s$1(t$1,n$3,0,e$4)}var i$2}function s$1(t$1,e$4,i$2,a$3){let s$2=o$1[a$3||``]||o$1[``];n$2[t$1]{a$3.then(async e$6=>{i$2&&await i$2.end(),t$2(e$6)},async t$3=>{i$2&&await i$2.end(),e$5(t$3)})});if(!o$2&&i$2){let t$2=i$2.end();if(t$2&&typeof t$2.then==`function`)return new Promise((e$5,n$4)=>{t$2.then(()=>{e$5(a$3)},t$3=>{n$4(t$3)})})}return a$3}begin(t$1,n$3,r$3){if(!this._started)throw Error(`profiler is not started yet`);if(r$3===void 0){let r$4=(0,e$3.now)();return this.flush(r$4),new u$1(t$1,n$3,r$4,t$2=>this.endSync(t$2))}{let e$4=r$3.beginTimer();return new u$1(t$1,n$3,0,async t$2=>this.end(t$2),e$4,r$3)}}async end(t$1){let e$4=await t$1.checkTimer();this._timingEvents.length=this._flushBatchSize||t$1-this._flushTime>=this._flushIntervalInMilliseconds){for(let t$2=this._flushPointer;this._flushPointerperformance.now():Date.now},2644:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.Model=void 0;let r$2=n$2(5686),i$1=n$2(1446),o$1=n$2(7070),a$2=n$2(9395),s$1=n$2(2517);var u$1=a$2.onnxruntime.experimental.fbs;e$3.Model=class{constructor(){}load(t$1,e$4,n$3){if(!n$3)try{return void this.loadFromOnnxFormat(t$1,e$4)}catch(t$2){if(n$3!==void 0)throw t$2}this.loadFromOrtFormat(t$1,e$4)}loadFromOnnxFormat(t$1,e$4){let n$3=i$1.onnx.ModelProto.decode(t$1);if(s$1.LongUtil.longToNumber(n$3.irVersion)<3)throw Error(`only support ONNX model with IR_VERSION>=3`);this._opsets=n$3.opsetImport.map(t$2=>({domain:t$2.domain,version:s$1.LongUtil.longToNumber(t$2.version)})),this._graph=o$1.Graph.from(n$3.graph,e$4)}loadFromOrtFormat(t$1,e$4){let n$3=new r$2.flatbuffers.ByteBuffer(t$1),i$2=u$1.InferenceSession.getRootAsInferenceSession(n$3).model();if(s$1.LongUtil.longToNumber(i$2.irVersion())<3)throw Error(`only support ONNX model with IR_VERSION>=3`);this._opsets=[];for(let t$2=0;t$2{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.FLOAT_TYPES=e$3.INT_TYPES=e$3.NUMBER_TYPES=void 0,e$3.NUMBER_TYPES=[`float32`,`float64`,`int32`,`int16`,`int8`,`uint16`,`uint32`,`uint8`],e$3.INT_TYPES=[`int32`,`int16`,`int8`,`uint16`,`uint32`,`uint8`],e$3.FLOAT_TYPES=[`float32`,`float64`]},1047:(t,e$3)=>{"use strict";function n$2(t$1,e$4){if(e$4.endsWith(`+`)){let n$3=Number.parseInt(e$4.substring(0,e$4.length-1),10);return!isNaN(n$3)&&n$3<=t$1}if(e$4.split(`-`).length===2){let n$3=e$4.split(`-`),r$2=Number.parseInt(n$3[0],10),i$1=Number.parseInt(n$3[1],10);return!isNaN(r$2)&&!isNaN(i$1)&&r$2<=t$1&&t$1<=i$1}return Number.parseInt(e$4,10)===t$1}Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.resolveOperator=void 0,e$3.resolveOperator=function(t$1,e$4,r$2){for(let i$1 of r$2){let r$3=i$1[0],o$1=i$1[1],a$2=i$1[2],s$1=i$1[3],u$1=i$1[4];if(t$1.opType===r$3){for(let t$2 of e$4)if((t$2.domain===o$1||t$2.domain===`ai.onnx`&&o$1===``)&&n$2(t$2.version,a$2))return{opImpl:s$1,opInit:u$1}}}throw TypeError(`cannot resolve operator '${t$1.opType}' with opsets: ${e$4.map(t$2=>`${t$2.domain||`ai.onnx`} v${t$2.version}`).join(`, `)}`)}},9395:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.onnxruntime=void 0;let r$2=n$2(5686);var i$1,o$1;i$1=e$3.onnxruntime||={},function(t$1){let e$4;(function(t$2){t$2[t$2.UNDEFINED=0]=`UNDEFINED`,t$2[t$2.FLOAT=1]=`FLOAT`,t$2[t$2.INT=2]=`INT`,t$2[t$2.STRING=3]=`STRING`,t$2[t$2.TENSOR=4]=`TENSOR`,t$2[t$2.GRAPH=5]=`GRAPH`,t$2[t$2.FLOATS=6]=`FLOATS`,t$2[t$2.INTS=7]=`INTS`,t$2[t$2.STRINGS=8]=`STRINGS`,t$2[t$2.TENSORS=9]=`TENSORS`,t$2[t$2.GRAPHS=10]=`GRAPHS`,t$2[t$2.SPARSE_TENSOR=11]=`SPARSE_TENSOR`,t$2[t$2.SPARSE_TENSORS=12]=`SPARSE_TENSORS`})(e$4=t$1.AttributeType||={})}((o$1=i$1.experimental||={}).fbs||(o$1.fbs={})),function(t$1){(function(t$2){(function(t$3){let e$4;(function(t$4){t$4[t$4.UNKNOWN=0]=`UNKNOWN`,t$4[t$4.VALUE=1]=`VALUE`,t$4[t$4.PARAM=2]=`PARAM`})(e$4=t$3.DimensionValueType||={})})(t$2.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(t$2){(function(t$3){let e$4;(function(t$4){t$4[t$4.UNDEFINED=0]=`UNDEFINED`,t$4[t$4.FLOAT=1]=`FLOAT`,t$4[t$4.UINT8=2]=`UINT8`,t$4[t$4.INT8=3]=`INT8`,t$4[t$4.UINT16=4]=`UINT16`,t$4[t$4.INT16=5]=`INT16`,t$4[t$4.INT32=6]=`INT32`,t$4[t$4.INT64=7]=`INT64`,t$4[t$4.STRING=8]=`STRING`,t$4[t$4.BOOL=9]=`BOOL`,t$4[t$4.FLOAT16=10]=`FLOAT16`,t$4[t$4.DOUBLE=11]=`DOUBLE`,t$4[t$4.UINT32=12]=`UINT32`,t$4[t$4.UINT64=13]=`UINT64`,t$4[t$4.COMPLEX64=14]=`COMPLEX64`,t$4[t$4.COMPLEX128=15]=`COMPLEX128`,t$4[t$4.BFLOAT16=16]=`BFLOAT16`})(e$4=t$3.TensorDataType||={})})(t$2.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(t$2){(function(t$3){let e$4;(function(t$4){t$4[t$4.Primitive=0]=`Primitive`,t$4[t$4.Fused=1]=`Fused`})(e$4=t$3.NodeType||={})})(t$2.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(t$2){(function(t$3){let e$4;(function(t$4){t$4[t$4.NONE=0]=`NONE`,t$4[t$4.tensor_type=1]=`tensor_type`,t$4[t$4.sequence_type=2]=`sequence_type`,t$4[t$4.map_type=3]=`map_type`})(e$4=t$3.TypeInfoValue||={})})(t$2.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsShape(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsShape(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}dim(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,4);return r$3?(n$4||new t$1.experimental.fbs.Dimension).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}dimLength(){let t$2=this.bb.__offset(this.bb_pos,4);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startShape(t$2){t$2.startObject(1)}static addDim(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static createDimVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startDimVector(t$2,e$6){t$2.startVector(4,e$6,4)}static endShape(t$2){return t$2.endObject()}static createShape(t$2,e$6){return n$3.startShape(t$2),n$3.addDim(t$2,e$6),n$3.endShape(t$2)}}e$5.Shape=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsDimension(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsDimension(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}value(e$6){let n$4=this.bb.__offset(this.bb_pos,4);return n$4?(e$6||new t$1.experimental.fbs.DimensionValue).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}denotation(t$2){let e$6=this.bb.__offset(this.bb_pos,6);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}static startDimension(t$2){t$2.startObject(2)}static addValue(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addDenotation(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static endDimension(t$2){return t$2.endObject()}static createDimension(t$2,e$6,r$3){return n$3.startDimension(t$2),n$3.addValue(t$2,e$6),n$3.addDenotation(t$2,r$3),n$3.endDimension(t$2)}}e$5.Dimension=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsDimensionValue(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsDimensionValue(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}dimType(){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.readInt8(this.bb_pos+e$6):t$1.experimental.fbs.DimensionValueType.UNKNOWN}dimValue(){let t$2=this.bb.__offset(this.bb_pos,6);return t$2?this.bb.readInt64(this.bb_pos+t$2):this.bb.createLong(0,0)}dimParam(t$2){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}static startDimensionValue(t$2){t$2.startObject(3)}static addDimType(e$6,n$4){e$6.addFieldInt8(0,n$4,t$1.experimental.fbs.DimensionValueType.UNKNOWN)}static addDimValue(t$2,e$6){t$2.addFieldInt64(1,e$6,t$2.createLong(0,0))}static addDimParam(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static endDimensionValue(t$2){return t$2.endObject()}static createDimensionValue(t$2,e$6,r$3,i$2){return n$3.startDimensionValue(t$2),n$3.addDimType(t$2,e$6),n$3.addDimValue(t$2,r$3),n$3.addDimParam(t$2,i$2),n$3.endDimensionValue(t$2)}}e$5.DimensionValue=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsTensorTypeAndShape(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsTensorTypeAndShape(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}elemType(){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.readInt32(this.bb_pos+e$6):t$1.experimental.fbs.TensorDataType.UNDEFINED}shape(e$6){let n$4=this.bb.__offset(this.bb_pos,6);return n$4?(e$6||new t$1.experimental.fbs.Shape).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}static startTensorTypeAndShape(t$2){t$2.startObject(2)}static addElemType(e$6,n$4){e$6.addFieldInt32(0,n$4,t$1.experimental.fbs.TensorDataType.UNDEFINED)}static addShape(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static endTensorTypeAndShape(t$2){return t$2.endObject()}static createTensorTypeAndShape(t$2,e$6,r$3){return n$3.startTensorTypeAndShape(t$2),n$3.addElemType(t$2,e$6),n$3.addShape(t$2,r$3),n$3.endTensorTypeAndShape(t$2)}}e$5.TensorTypeAndShape=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsMapType(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsMapType(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}keyType(){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.readInt32(this.bb_pos+e$6):t$1.experimental.fbs.TensorDataType.UNDEFINED}valueType(e$6){let n$4=this.bb.__offset(this.bb_pos,6);return n$4?(e$6||new t$1.experimental.fbs.TypeInfo).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}static startMapType(t$2){t$2.startObject(2)}static addKeyType(e$6,n$4){e$6.addFieldInt32(0,n$4,t$1.experimental.fbs.TensorDataType.UNDEFINED)}static addValueType(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static endMapType(t$2){return t$2.endObject()}static createMapType(t$2,e$6,r$3){return n$3.startMapType(t$2),n$3.addKeyType(t$2,e$6),n$3.addValueType(t$2,r$3),n$3.endMapType(t$2)}}e$5.MapType=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsSequenceType(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsSequenceType(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}elemType(e$6){let n$4=this.bb.__offset(this.bb_pos,4);return n$4?(e$6||new t$1.experimental.fbs.TypeInfo).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}static startSequenceType(t$2){t$2.startObject(1)}static addElemType(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static endSequenceType(t$2){return t$2.endObject()}static createSequenceType(t$2,e$6){return n$3.startSequenceType(t$2),n$3.addElemType(t$2,e$6),n$3.endSequenceType(t$2)}}e$5.SequenceType=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(t$2){(t$2.fbs||={}).EdgeEnd=class{constructor(){this.bb=null,this.bb_pos=0}__init(t$3,e$4){return this.bb_pos=t$3,this.bb=e$4,this}nodeIndex(){return this.bb.readUint32(this.bb_pos)}srcArgIndex(){return this.bb.readInt32(this.bb_pos+4)}dstArgIndex(){return this.bb.readInt32(this.bb_pos+8)}static createEdgeEnd(t$3,e$4,n$3,r$3){return t$3.prep(4,12),t$3.writeInt32(r$3),t$3.writeInt32(n$3),t$3.writeInt32(e$4),t$3.offset()}}})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsNodeEdge(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsNodeEdge(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}nodeIndex(){let t$2=this.bb.__offset(this.bb_pos,4);return t$2?this.bb.readUint32(this.bb_pos+t$2):0}inputEdges(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,6);return r$3?(n$4||new t$1.experimental.fbs.EdgeEnd).__init(this.bb.__vector(this.bb_pos+r$3)+12*e$6,this.bb):null}inputEdgesLength(){let t$2=this.bb.__offset(this.bb_pos,6);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}outputEdges(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,8);return r$3?(n$4||new t$1.experimental.fbs.EdgeEnd).__init(this.bb.__vector(this.bb_pos+r$3)+12*e$6,this.bb):null}outputEdgesLength(){let t$2=this.bb.__offset(this.bb_pos,8);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startNodeEdge(t$2){t$2.startObject(3)}static addNodeIndex(t$2,e$6){t$2.addFieldInt32(0,e$6,0)}static addInputEdges(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static startInputEdgesVector(t$2,e$6){t$2.startVector(12,e$6,4)}static addOutputEdges(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static startOutputEdgesVector(t$2,e$6){t$2.startVector(12,e$6,4)}static endNodeEdge(t$2){return t$2.endObject()}static createNodeEdge(t$2,e$6,r$3,i$2){return n$3.startNodeEdge(t$2),n$3.addNodeIndex(t$2,e$6),n$3.addInputEdges(t$2,r$3),n$3.addOutputEdges(t$2,i$2),n$3.endNodeEdge(t$2)}}e$5.NodeEdge=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsNode(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsNode(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}name(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}docString(t$2){let e$6=this.bb.__offset(this.bb_pos,6);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}domain(t$2){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}sinceVersion(){let t$2=this.bb.__offset(this.bb_pos,10);return t$2?this.bb.readInt32(this.bb_pos+t$2):0}index(){let t$2=this.bb.__offset(this.bb_pos,12);return t$2?this.bb.readUint32(this.bb_pos+t$2):0}opType(t$2){let e$6=this.bb.__offset(this.bb_pos,14);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}type(){let e$6=this.bb.__offset(this.bb_pos,16);return e$6?this.bb.readInt32(this.bb_pos+e$6):t$1.experimental.fbs.NodeType.Primitive}executionProviderType(t$2){let e$6=this.bb.__offset(this.bb_pos,18);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}inputs(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,20);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}inputsLength(){let t$2=this.bb.__offset(this.bb_pos,20);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}outputs(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,22);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}outputsLength(){let t$2=this.bb.__offset(this.bb_pos,22);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}attributes(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,24);return r$3?(n$4||new t$1.experimental.fbs.Attribute).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}attributesLength(){let t$2=this.bb.__offset(this.bb_pos,24);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}inputArgCounts(t$2){let e$6=this.bb.__offset(this.bb_pos,26);return e$6?this.bb.readInt32(this.bb.__vector(this.bb_pos+e$6)+4*t$2):0}inputArgCountsLength(){let t$2=this.bb.__offset(this.bb_pos,26);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}inputArgCountsArray(){let t$2=this.bb.__offset(this.bb_pos,26);return t$2?new Int32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+t$2),this.bb.__vector_len(this.bb_pos+t$2)):null}implicitInputs(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,28);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}implicitInputsLength(){let t$2=this.bb.__offset(this.bb_pos,28);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startNode(t$2){t$2.startObject(13)}static addName(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addDocString(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static addDomain(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static addSinceVersion(t$2,e$6){t$2.addFieldInt32(3,e$6,0)}static addIndex(t$2,e$6){t$2.addFieldInt32(4,e$6,0)}static addOpType(t$2,e$6){t$2.addFieldOffset(5,e$6,0)}static addType(e$6,n$4){e$6.addFieldInt32(6,n$4,t$1.experimental.fbs.NodeType.Primitive)}static addExecutionProviderType(t$2,e$6){t$2.addFieldOffset(7,e$6,0)}static addInputs(t$2,e$6){t$2.addFieldOffset(8,e$6,0)}static createInputsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startInputsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addOutputs(t$2,e$6){t$2.addFieldOffset(9,e$6,0)}static createOutputsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startOutputsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addAttributes(t$2,e$6){t$2.addFieldOffset(10,e$6,0)}static createAttributesVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startAttributesVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addInputArgCounts(t$2,e$6){t$2.addFieldOffset(11,e$6,0)}static createInputArgCountsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addInt32(e$6[n$4]);return t$2.endVector()}static startInputArgCountsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addImplicitInputs(t$2,e$6){t$2.addFieldOffset(12,e$6,0)}static createImplicitInputsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startImplicitInputsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static endNode(t$2){return t$2.endObject()}static createNode(t$2,e$6,r$3,i$2,o$2,a$2,s$1,u$1,c$4,l$1,p$5,f$3,d$2,h$3){return n$3.startNode(t$2),n$3.addName(t$2,e$6),n$3.addDocString(t$2,r$3),n$3.addDomain(t$2,i$2),n$3.addSinceVersion(t$2,o$2),n$3.addIndex(t$2,a$2),n$3.addOpType(t$2,s$1),n$3.addType(t$2,u$1),n$3.addExecutionProviderType(t$2,c$4),n$3.addInputs(t$2,l$1),n$3.addOutputs(t$2,p$5),n$3.addAttributes(t$2,f$3),n$3.addInputArgCounts(t$2,d$2),n$3.addImplicitInputs(t$2,h$3),n$3.endNode(t$2)}}e$5.Node=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsValueInfo(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsValueInfo(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}name(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}docString(t$2){let e$6=this.bb.__offset(this.bb_pos,6);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}type(e$6){let n$4=this.bb.__offset(this.bb_pos,8);return n$4?(e$6||new t$1.experimental.fbs.TypeInfo).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}static startValueInfo(t$2){t$2.startObject(3)}static addName(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addDocString(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static addType(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static endValueInfo(t$2){return t$2.endObject()}static createValueInfo(t$2,e$6,r$3,i$2){return n$3.startValueInfo(t$2),n$3.addName(t$2,e$6),n$3.addDocString(t$2,r$3),n$3.addType(t$2,i$2),n$3.endValueInfo(t$2)}}e$5.ValueInfo=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsTypeInfo(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsTypeInfo(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}denotation(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}valueType(){let e$6=this.bb.__offset(this.bb_pos,6);return e$6?this.bb.readUint8(this.bb_pos+e$6):t$1.experimental.fbs.TypeInfoValue.NONE}value(t$2){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.__union(t$2,this.bb_pos+e$6):null}static startTypeInfo(t$2){t$2.startObject(3)}static addDenotation(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addValueType(e$6,n$4){e$6.addFieldInt8(1,n$4,t$1.experimental.fbs.TypeInfoValue.NONE)}static addValue(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static endTypeInfo(t$2){return t$2.endObject()}static createTypeInfo(t$2,e$6,r$3,i$2){return n$3.startTypeInfo(t$2),n$3.addDenotation(t$2,e$6),n$3.addValueType(t$2,r$3),n$3.addValue(t$2,i$2),n$3.endTypeInfo(t$2)}}e$5.TypeInfo=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(t$2){(function(t$3){class e$4{constructor(){this.bb=null,this.bb_pos=0}__init(t$4,e$5){return this.bb_pos=t$4,this.bb=e$5,this}static getRootAsOperatorSetId(t$4,n$3){return(n$3||new e$4).__init(t$4.readInt32(t$4.position())+t$4.position(),t$4)}static getSizePrefixedRootAsOperatorSetId(t$4,n$3){return t$4.setPosition(t$4.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(n$3||new e$4).__init(t$4.readInt32(t$4.position())+t$4.position(),t$4)}domain(t$4){let e$5=this.bb.__offset(this.bb_pos,4);return e$5?this.bb.__string(this.bb_pos+e$5,t$4):null}version(){let t$4=this.bb.__offset(this.bb_pos,6);return t$4?this.bb.readInt64(this.bb_pos+t$4):this.bb.createLong(0,0)}static startOperatorSetId(t$4){t$4.startObject(2)}static addDomain(t$4,e$5){t$4.addFieldOffset(0,e$5,0)}static addVersion(t$4,e$5){t$4.addFieldInt64(1,e$5,t$4.createLong(0,0))}static endOperatorSetId(t$4){return t$4.endObject()}static createOperatorSetId(t$4,n$3,r$3){return e$4.startOperatorSetId(t$4),e$4.addDomain(t$4,n$3),e$4.addVersion(t$4,r$3),e$4.endOperatorSetId(t$4)}}t$3.OperatorSetId=e$4})(t$2.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsTensor(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsTensor(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}name(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}docString(t$2){let e$6=this.bb.__offset(this.bb_pos,6);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}dims(t$2){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.readInt64(this.bb.__vector(this.bb_pos+e$6)+8*t$2):this.bb.createLong(0,0)}dimsLength(){let t$2=this.bb.__offset(this.bb_pos,8);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}dataType(){let e$6=this.bb.__offset(this.bb_pos,10);return e$6?this.bb.readInt32(this.bb_pos+e$6):t$1.experimental.fbs.TensorDataType.UNDEFINED}rawData(t$2){let e$6=this.bb.__offset(this.bb_pos,12);return e$6?this.bb.readUint8(this.bb.__vector(this.bb_pos+e$6)+t$2):0}rawDataLength(){let t$2=this.bb.__offset(this.bb_pos,12);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}rawDataArray(){let t$2=this.bb.__offset(this.bb_pos,12);return t$2?new Uint8Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+t$2),this.bb.__vector_len(this.bb_pos+t$2)):null}stringData(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,14);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}stringDataLength(){let t$2=this.bb.__offset(this.bb_pos,14);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startTensor(t$2){t$2.startObject(6)}static addName(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addDocString(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static addDims(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static createDimsVector(t$2,e$6){t$2.startVector(8,e$6.length,8);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addInt64(e$6[n$4]);return t$2.endVector()}static startDimsVector(t$2,e$6){t$2.startVector(8,e$6,8)}static addDataType(e$6,n$4){e$6.addFieldInt32(3,n$4,t$1.experimental.fbs.TensorDataType.UNDEFINED)}static addRawData(t$2,e$6){t$2.addFieldOffset(4,e$6,0)}static createRawDataVector(t$2,e$6){t$2.startVector(1,e$6.length,1);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addInt8(e$6[n$4]);return t$2.endVector()}static startRawDataVector(t$2,e$6){t$2.startVector(1,e$6,1)}static addStringData(t$2,e$6){t$2.addFieldOffset(5,e$6,0)}static createStringDataVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startStringDataVector(t$2,e$6){t$2.startVector(4,e$6,4)}static endTensor(t$2){return t$2.endObject()}static createTensor(t$2,e$6,r$3,i$2,o$2,a$2,s$1){return n$3.startTensor(t$2),n$3.addName(t$2,e$6),n$3.addDocString(t$2,r$3),n$3.addDims(t$2,i$2),n$3.addDataType(t$2,o$2),n$3.addRawData(t$2,a$2),n$3.addStringData(t$2,s$1),n$3.endTensor(t$2)}}e$5.Tensor=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsSparseTensor(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsSparseTensor(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}values(e$6){let n$4=this.bb.__offset(this.bb_pos,4);return n$4?(e$6||new t$1.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}indices(e$6){let n$4=this.bb.__offset(this.bb_pos,6);return n$4?(e$6||new t$1.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}dims(t$2){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.readInt64(this.bb.__vector(this.bb_pos+e$6)+8*t$2):this.bb.createLong(0,0)}dimsLength(){let t$2=this.bb.__offset(this.bb_pos,8);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startSparseTensor(t$2){t$2.startObject(3)}static addValues(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addIndices(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static addDims(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static createDimsVector(t$2,e$6){t$2.startVector(8,e$6.length,8);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addInt64(e$6[n$4]);return t$2.endVector()}static startDimsVector(t$2,e$6){t$2.startVector(8,e$6,8)}static endSparseTensor(t$2){return t$2.endObject()}static createSparseTensor(t$2,e$6,r$3,i$2){return n$3.startSparseTensor(t$2),n$3.addValues(t$2,e$6),n$3.addIndices(t$2,r$3),n$3.addDims(t$2,i$2),n$3.endSparseTensor(t$2)}}e$5.SparseTensor=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsAttribute(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsAttribute(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}name(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}docString(t$2){let e$6=this.bb.__offset(this.bb_pos,6);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}type(){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.readInt32(this.bb_pos+e$6):t$1.experimental.fbs.AttributeType.UNDEFINED}f(){let t$2=this.bb.__offset(this.bb_pos,10);return t$2?this.bb.readFloat32(this.bb_pos+t$2):0}i(){let t$2=this.bb.__offset(this.bb_pos,12);return t$2?this.bb.readInt64(this.bb_pos+t$2):this.bb.createLong(0,0)}s(t$2){let e$6=this.bb.__offset(this.bb_pos,14);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}t(e$6){let n$4=this.bb.__offset(this.bb_pos,16);return n$4?(e$6||new t$1.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}g(e$6){let n$4=this.bb.__offset(this.bb_pos,18);return n$4?(e$6||new t$1.experimental.fbs.Graph).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}floats(t$2){let e$6=this.bb.__offset(this.bb_pos,20);return e$6?this.bb.readFloat32(this.bb.__vector(this.bb_pos+e$6)+4*t$2):0}floatsLength(){let t$2=this.bb.__offset(this.bb_pos,20);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}floatsArray(){let t$2=this.bb.__offset(this.bb_pos,20);return t$2?new Float32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+t$2),this.bb.__vector_len(this.bb_pos+t$2)):null}ints(t$2){let e$6=this.bb.__offset(this.bb_pos,22);return e$6?this.bb.readInt64(this.bb.__vector(this.bb_pos+e$6)+8*t$2):this.bb.createLong(0,0)}intsLength(){let t$2=this.bb.__offset(this.bb_pos,22);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}strings(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,24);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}stringsLength(){let t$2=this.bb.__offset(this.bb_pos,24);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}tensors(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,26);return r$3?(n$4||new t$1.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}tensorsLength(){let t$2=this.bb.__offset(this.bb_pos,26);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}graphs(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,28);return r$3?(n$4||new t$1.experimental.fbs.Graph).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}graphsLength(){let t$2=this.bb.__offset(this.bb_pos,28);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startAttribute(t$2){t$2.startObject(13)}static addName(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addDocString(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static addType(e$6,n$4){e$6.addFieldInt32(2,n$4,t$1.experimental.fbs.AttributeType.UNDEFINED)}static addF(t$2,e$6){t$2.addFieldFloat32(3,e$6,0)}static addI(t$2,e$6){t$2.addFieldInt64(4,e$6,t$2.createLong(0,0))}static addS(t$2,e$6){t$2.addFieldOffset(5,e$6,0)}static addT(t$2,e$6){t$2.addFieldOffset(6,e$6,0)}static addG(t$2,e$6){t$2.addFieldOffset(7,e$6,0)}static addFloats(t$2,e$6){t$2.addFieldOffset(8,e$6,0)}static createFloatsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addFloat32(e$6[n$4]);return t$2.endVector()}static startFloatsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addInts(t$2,e$6){t$2.addFieldOffset(9,e$6,0)}static createIntsVector(t$2,e$6){t$2.startVector(8,e$6.length,8);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addInt64(e$6[n$4]);return t$2.endVector()}static startIntsVector(t$2,e$6){t$2.startVector(8,e$6,8)}static addStrings(t$2,e$6){t$2.addFieldOffset(10,e$6,0)}static createStringsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startStringsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addTensors(t$2,e$6){t$2.addFieldOffset(11,e$6,0)}static createTensorsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startTensorsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addGraphs(t$2,e$6){t$2.addFieldOffset(12,e$6,0)}static createGraphsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startGraphsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static endAttribute(t$2){return t$2.endObject()}static createAttribute(t$2,e$6,r$3,i$2,o$2,a$2,s$1,u$1,c$4,l$1,p$5,f$3,d$2,h$3){return n$3.startAttribute(t$2),n$3.addName(t$2,e$6),n$3.addDocString(t$2,r$3),n$3.addType(t$2,i$2),n$3.addF(t$2,o$2),n$3.addI(t$2,a$2),n$3.addS(t$2,s$1),n$3.addT(t$2,u$1),n$3.addG(t$2,c$4),n$3.addFloats(t$2,l$1),n$3.addInts(t$2,p$5),n$3.addStrings(t$2,f$3),n$3.addTensors(t$2,d$2),n$3.addGraphs(t$2,h$3),n$3.endAttribute(t$2)}}e$5.Attribute=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsGraph(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsGraph(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}initializers(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,4);return r$3?(n$4||new t$1.experimental.fbs.Tensor).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}initializersLength(){let t$2=this.bb.__offset(this.bb_pos,4);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}nodeArgs(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,6);return r$3?(n$4||new t$1.experimental.fbs.ValueInfo).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}nodeArgsLength(){let t$2=this.bb.__offset(this.bb_pos,6);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}nodes(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,8);return r$3?(n$4||new t$1.experimental.fbs.Node).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}nodesLength(){let t$2=this.bb.__offset(this.bb_pos,8);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}maxNodeIndex(){let t$2=this.bb.__offset(this.bb_pos,10);return t$2?this.bb.readUint32(this.bb_pos+t$2):0}nodeEdges(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,12);return r$3?(n$4||new t$1.experimental.fbs.NodeEdge).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}nodeEdgesLength(){let t$2=this.bb.__offset(this.bb_pos,12);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}inputs(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,14);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}inputsLength(){let t$2=this.bb.__offset(this.bb_pos,14);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}outputs(t$2,e$6){let n$4=this.bb.__offset(this.bb_pos,16);return n$4?this.bb.__string(this.bb.__vector(this.bb_pos+n$4)+4*t$2,e$6):null}outputsLength(){let t$2=this.bb.__offset(this.bb_pos,16);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}sparseInitializers(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,18);return r$3?(n$4||new t$1.experimental.fbs.SparseTensor).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}sparseInitializersLength(){let t$2=this.bb.__offset(this.bb_pos,18);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startGraph(t$2){t$2.startObject(8)}static addInitializers(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static createInitializersVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startInitializersVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addNodeArgs(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static createNodeArgsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startNodeArgsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addNodes(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static createNodesVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startNodesVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addMaxNodeIndex(t$2,e$6){t$2.addFieldInt32(3,e$6,0)}static addNodeEdges(t$2,e$6){t$2.addFieldOffset(4,e$6,0)}static createNodeEdgesVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startNodeEdgesVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addInputs(t$2,e$6){t$2.addFieldOffset(5,e$6,0)}static createInputsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startInputsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addOutputs(t$2,e$6){t$2.addFieldOffset(6,e$6,0)}static createOutputsVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startOutputsVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addSparseInitializers(t$2,e$6){t$2.addFieldOffset(7,e$6,0)}static createSparseInitializersVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startSparseInitializersVector(t$2,e$6){t$2.startVector(4,e$6,4)}static endGraph(t$2){return t$2.endObject()}static createGraph(t$2,e$6,r$3,i$2,o$2,a$2,s$1,u$1,c$4){return n$3.startGraph(t$2),n$3.addInitializers(t$2,e$6),n$3.addNodeArgs(t$2,r$3),n$3.addNodes(t$2,i$2),n$3.addMaxNodeIndex(t$2,o$2),n$3.addNodeEdges(t$2,a$2),n$3.addInputs(t$2,s$1),n$3.addOutputs(t$2,u$1),n$3.addSparseInitializers(t$2,c$4),n$3.endGraph(t$2)}}e$5.Graph=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsModel(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsModel(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}irVersion(){let t$2=this.bb.__offset(this.bb_pos,4);return t$2?this.bb.readInt64(this.bb_pos+t$2):this.bb.createLong(0,0)}opsetImport(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,6);return r$3?(n$4||new t$1.experimental.fbs.OperatorSetId).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}opsetImportLength(){let t$2=this.bb.__offset(this.bb_pos,6);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}producerName(t$2){let e$6=this.bb.__offset(this.bb_pos,8);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}producerVersion(t$2){let e$6=this.bb.__offset(this.bb_pos,10);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}domain(t$2){let e$6=this.bb.__offset(this.bb_pos,12);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}modelVersion(){let t$2=this.bb.__offset(this.bb_pos,14);return t$2?this.bb.readInt64(this.bb_pos+t$2):this.bb.createLong(0,0)}docString(t$2){let e$6=this.bb.__offset(this.bb_pos,16);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}graph(e$6){let n$4=this.bb.__offset(this.bb_pos,18);return n$4?(e$6||new t$1.experimental.fbs.Graph).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}graphDocString(t$2){let e$6=this.bb.__offset(this.bb_pos,20);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}static startModel(t$2){t$2.startObject(9)}static addIrVersion(t$2,e$6){t$2.addFieldInt64(0,e$6,t$2.createLong(0,0))}static addOpsetImport(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static createOpsetImportVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startOpsetImportVector(t$2,e$6){t$2.startVector(4,e$6,4)}static addProducerName(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static addProducerVersion(t$2,e$6){t$2.addFieldOffset(3,e$6,0)}static addDomain(t$2,e$6){t$2.addFieldOffset(4,e$6,0)}static addModelVersion(t$2,e$6){t$2.addFieldInt64(5,e$6,t$2.createLong(0,0))}static addDocString(t$2,e$6){t$2.addFieldOffset(6,e$6,0)}static addGraph(t$2,e$6){t$2.addFieldOffset(7,e$6,0)}static addGraphDocString(t$2,e$6){t$2.addFieldOffset(8,e$6,0)}static endModel(t$2){return t$2.endObject()}static createModel(t$2,e$6,r$3,i$2,o$2,a$2,s$1,u$1,c$4,l$1){return n$3.startModel(t$2),n$3.addIrVersion(t$2,e$6),n$3.addOpsetImport(t$2,r$3),n$3.addProducerName(t$2,i$2),n$3.addProducerVersion(t$2,o$2),n$3.addDomain(t$2,a$2),n$3.addModelVersion(t$2,s$1),n$3.addDocString(t$2,u$1),n$3.addGraph(t$2,c$4),n$3.addGraphDocString(t$2,l$1),n$3.endModel(t$2)}}e$5.Model=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(t$2){(function(t$3){class e$4{constructor(){this.bb=null,this.bb_pos=0}__init(t$4,e$5){return this.bb_pos=t$4,this.bb=e$5,this}static getRootAsKernelCreateInfos(t$4,n$3){return(n$3||new e$4).__init(t$4.readInt32(t$4.position())+t$4.position(),t$4)}static getSizePrefixedRootAsKernelCreateInfos(t$4,n$3){return t$4.setPosition(t$4.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(n$3||new e$4).__init(t$4.readInt32(t$4.position())+t$4.position(),t$4)}nodeIndices(t$4){let e$5=this.bb.__offset(this.bb_pos,4);return e$5?this.bb.readUint32(this.bb.__vector(this.bb_pos+e$5)+4*t$4):0}nodeIndicesLength(){let t$4=this.bb.__offset(this.bb_pos,4);return t$4?this.bb.__vector_len(this.bb_pos+t$4):0}nodeIndicesArray(){let t$4=this.bb.__offset(this.bb_pos,4);return t$4?new Uint32Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+t$4),this.bb.__vector_len(this.bb_pos+t$4)):null}kernelDefHashes(t$4){let e$5=this.bb.__offset(this.bb_pos,6);return e$5?this.bb.readUint64(this.bb.__vector(this.bb_pos+e$5)+8*t$4):this.bb.createLong(0,0)}kernelDefHashesLength(){let t$4=this.bb.__offset(this.bb_pos,6);return t$4?this.bb.__vector_len(this.bb_pos+t$4):0}static startKernelCreateInfos(t$4){t$4.startObject(2)}static addNodeIndices(t$4,e$5){t$4.addFieldOffset(0,e$5,0)}static createNodeIndicesVector(t$4,e$5){t$4.startVector(4,e$5.length,4);for(let n$3=e$5.length-1;n$3>=0;n$3--)t$4.addInt32(e$5[n$3]);return t$4.endVector()}static startNodeIndicesVector(t$4,e$5){t$4.startVector(4,e$5,4)}static addKernelDefHashes(t$4,e$5){t$4.addFieldOffset(1,e$5,0)}static createKernelDefHashesVector(t$4,e$5){t$4.startVector(8,e$5.length,8);for(let n$3=e$5.length-1;n$3>=0;n$3--)t$4.addInt64(e$5[n$3]);return t$4.endVector()}static startKernelDefHashesVector(t$4,e$5){t$4.startVector(8,e$5,8)}static endKernelCreateInfos(t$4){return t$4.endObject()}static createKernelCreateInfos(t$4,n$3,r$3){return e$4.startKernelCreateInfos(t$4),e$4.addNodeIndices(t$4,n$3),e$4.addKernelDefHashes(t$4,r$3),e$4.endKernelCreateInfos(t$4)}}t$3.KernelCreateInfos=e$4})(t$2.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsSubGraphSessionState(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsSubGraphSessionState(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}graphId(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}sessionState(e$6){let n$4=this.bb.__offset(this.bb_pos,6);return n$4?(e$6||new t$1.experimental.fbs.SessionState).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}static startSubGraphSessionState(t$2){t$2.startObject(2)}static addGraphId(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addSessionState(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static endSubGraphSessionState(t$2){let e$6=t$2.endObject();return t$2.requiredField(e$6,4),e$6}static createSubGraphSessionState(t$2,e$6,r$3){return n$3.startSubGraphSessionState(t$2),n$3.addGraphId(t$2,e$6),n$3.addSessionState(t$2,r$3),n$3.endSubGraphSessionState(t$2)}}e$5.SubGraphSessionState=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsSessionState(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsSessionState(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}kernels(e$6){let n$4=this.bb.__offset(this.bb_pos,4);return n$4?(e$6||new t$1.experimental.fbs.KernelCreateInfos).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}subGraphSessionStates(e$6,n$4){let r$3=this.bb.__offset(this.bb_pos,6);return r$3?(n$4||new t$1.experimental.fbs.SubGraphSessionState).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r$3)+4*e$6),this.bb):null}subGraphSessionStatesLength(){let t$2=this.bb.__offset(this.bb_pos,6);return t$2?this.bb.__vector_len(this.bb_pos+t$2):0}static startSessionState(t$2){t$2.startObject(2)}static addKernels(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addSubGraphSessionStates(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static createSubGraphSessionStatesVector(t$2,e$6){t$2.startVector(4,e$6.length,4);for(let n$4=e$6.length-1;n$4>=0;n$4--)t$2.addOffset(e$6[n$4]);return t$2.endVector()}static startSubGraphSessionStatesVector(t$2,e$6){t$2.startVector(4,e$6,4)}static endSessionState(t$2){return t$2.endObject()}static createSessionState(t$2,e$6,r$3){return n$3.startSessionState(t$2),n$3.addKernels(t$2,e$6),n$3.addSubGraphSessionStates(t$2,r$3),n$3.endSessionState(t$2)}}e$5.SessionState=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={}),function(t$1){(function(e$4){(function(e$5){class n$3{constructor(){this.bb=null,this.bb_pos=0}__init(t$2,e$6){return this.bb_pos=t$2,this.bb=e$6,this}static getRootAsInferenceSession(t$2,e$6){return(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static getSizePrefixedRootAsInferenceSession(t$2,e$6){return t$2.setPosition(t$2.position()+r$2.flatbuffers.SIZE_PREFIX_LENGTH),(e$6||new n$3).__init(t$2.readInt32(t$2.position())+t$2.position(),t$2)}static bufferHasIdentifier(t$2){return t$2.__has_identifier(`ORTM`)}ortVersion(t$2){let e$6=this.bb.__offset(this.bb_pos,4);return e$6?this.bb.__string(this.bb_pos+e$6,t$2):null}model(e$6){let n$4=this.bb.__offset(this.bb_pos,6);return n$4?(e$6||new t$1.experimental.fbs.Model).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}sessionState(e$6){let n$4=this.bb.__offset(this.bb_pos,8);return n$4?(e$6||new t$1.experimental.fbs.SessionState).__init(this.bb.__indirect(this.bb_pos+n$4),this.bb):null}static startInferenceSession(t$2){t$2.startObject(3)}static addOrtVersion(t$2,e$6){t$2.addFieldOffset(0,e$6,0)}static addModel(t$2,e$6){t$2.addFieldOffset(1,e$6,0)}static addSessionState(t$2,e$6){t$2.addFieldOffset(2,e$6,0)}static endInferenceSession(t$2){return t$2.endObject()}static finishInferenceSessionBuffer(t$2,e$6){t$2.finish(e$6,`ORTM`)}static finishSizePrefixedInferenceSessionBuffer(t$2,e$6){t$2.finish(e$6,`ORTM`,!0)}static createInferenceSession(t$2,e$6,r$3,i$2){return n$3.startInferenceSession(t$2),n$3.addOrtVersion(t$2,e$6),n$3.addModel(t$2,r$3),n$3.addSessionState(t$2,i$2),n$3.endInferenceSession(t$2)}}e$5.InferenceSession=n$3})(e$4.fbs||={})})(t$1.experimental||={})}(e$3.onnxruntime||={})},7448:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.OnnxjsSessionHandler=void 0;let r$2=n$2(1670),i$1=n$2(9162);e$3.OnnxjsSessionHandler=class{constructor(t$1){this.session=t$1,this.inputNames=this.session.inputNames,this.outputNames=this.session.outputNames}async dispose(){}async run(t$1,e$4,n$3){let o$1=new Map;for(let e$5 in t$1)if(Object.hasOwnProperty.call(t$1,e$5)){let n$4=t$1[e$5];o$1.set(e$5,new i$1.Tensor(n$4.dims,n$4.type,void 0,void 0,n$4.data))}let a$2=await this.session.run(o$1),s$1={};return a$2.forEach((t$2,e$5)=>{s$1[e$5]=new r$2.Tensor(t$2.type,t$2.data,t$2.dims)}),s$1}startProfiling(){this.session.startProfiling()}endProfiling(){this.session.endProfiling()}}},6919:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.Session=void 0;let r$2=n$2(7067),i$1=n$2(1296),o$1=n$2(7091),a$2=n$2(1036),s$1=n$2(6231),u$1=n$2(2644);e$3.Session=class{constructor(t$1={}){this._initialized=!1,this.backendHint=t$1.backendHint,this.profiler=s$1.Profiler.create(t$1.profiler),this.context={profiler:this.profiler,graphInputTypes:[],graphInputDims:[]}}get inputNames(){return this._model.graph.getInputNames()}get outputNames(){return this._model.graph.getOutputNames()}startProfiling(){this.profiler.start()}endProfiling(){this.profiler.stop()}async loadModel(t$1,e$4,n$3){await this.profiler.event(`session`,`Session.loadModel`,async()=>{let a$3=await(0,o$1.resolveBackend)(this.backendHint);if(this.sessionHandler=a$3.createSessionHandler(this.context),this._model=new u$1.Model,typeof t$1==`string`){let e$5=t$1.endsWith(`.ort`);if(typeof fetch>`u`){let n$4=await(0,i$1.promisify)(r$2.readFile)(t$1);this.initialize(n$4,e$5)}else{let n$4=await fetch(t$1),r$3=await n$4.arrayBuffer();this.initialize(new Uint8Array(r$3),e$5)}}else if(ArrayBuffer.isView(t$1))this.initialize(t$1);else{let r$3=new Uint8Array(t$1,e$4||0,n$3||t$1.byteLength);this.initialize(r$3)}})}initialize(t$1,e$4){if(this._initialized)throw Error(`already initialized`);this.profiler.event(`session`,`Session.initialize`,()=>{let n$3=this.sessionHandler.transformGraph?this.sessionHandler:void 0;this._model.load(t$1,n$3,e$4),this.sessionHandler.onGraphInitialized&&this.sessionHandler.onGraphInitialized(this._model.graph),this.initializeOps(this._model.graph),this._executionPlan=new a$2.ExecutionPlan(this._model.graph,this._ops,this.profiler)}),this._initialized=!0}async run(t$1){if(!this._initialized)throw Error(`session not initialized yet`);return this.profiler.event(`session`,`Session.run`,async()=>{let e$4=this.normalizeAndValidateInputs(t$1),n$3=await this._executionPlan.execute(this.sessionHandler,e$4);return this.createOutput(n$3)})}normalizeAndValidateInputs(t$1){let e$4=this._model.graph.getInputNames();if(Array.isArray(t$1)){if(t$1.length!==e$4.length)throw Error(`incorrect input array length: expected ${e$4.length} but got ${t$1.length}`)}else{if(t$1.size!==e$4.length)throw Error(`incorrect input map size: expected ${e$4.length} but got ${t$1.size}`);let n$3=Array(t$1.size),r$3=0;for(let i$2=0;i$2typeof t$2==`string`)))throw TypeError(`cache should be a string array`);c$5&&(this.cache=Array(s$2))}else{if(o$2!==void 0){let t$2=f$3(e$4);if(!(o$2 instanceof t$2))throw TypeError(`cache should be type ${t$2.name}`)}if(c$5){let t$2=new ArrayBuffer(s$2*function(t$3){switch(t$3){case`bool`:case`int8`:case`uint8`:return 1;case`int16`:case`uint16`:return 2;case`int32`:case`uint32`:case`float32`:return 4;case`float64`:return 8;default:throw Error(`cannot calculate sizeof() on type ${t$3}`)}}(e$4));this.cache=function(t$3,e$5){return new(f$3(e$5))(t$3)}(t$2,e$4)}}}static fromProto(t$1){if(!t$1)throw Error(`cannot construct Value from an empty tensor`);let e$4=u$1.ProtoUtil.tensorDataTypeFromProto(t$1.dataType),n$3=u$1.ProtoUtil.tensorDimsFromProto(t$1.dims),r$3=new l$1(n$3,e$4);if(e$4===`string`)t$1.stringData.forEach((t$2,e$5)=>{r$3.data[e$5]=(0,u$1.decodeUtf8String)(t$2)});else if(t$1.rawData&&typeof t$1.rawData.byteLength==`number`&&t$1.rawData.byteLength>0){let e$5=r$3.data,n$4=new DataView(t$1.rawData.buffer,t$1.rawData.byteOffset,t$1.rawData.byteLength),i$2=p$5(t$1.dataType),o$2=t$1.rawData.byteLength/i$2;if(t$1.rawData.byteLength%i$2!=0)throw Error(`invalid buffer length`);if(e$5.length!==o$2)throw Error(`buffer length mismatch`);for(let r$4=0;r$40){let e$5=r$3.data,n$4=new DataView(t$1.rawDataArray().buffer,t$1.rawDataArray().byteOffset,t$1.rawDataLength()),i$2=p$5(t$1.dataType()),o$2=t$1.rawDataLength()/i$2;if(t$1.rawDataLength()%i$2!=0)throw Error(`invalid buffer length`);if(e$5.length!==o$2)throw Error(`buffer length mismatch`);for(let r$4=0;r$41&&u$2>1)return;a$3[o$2-s$2]=Math.max(n$4,u$2)}return a$3}static index(t$1,e$4){let n$3=Array(e$4.length);return c$4.fillIndex(t$1,e$4,n$3),n$3}static fillIndex(t$1,e$4,n$3){let r$3=t$1.length-e$4.length;for(let i$2=0;i$2=0;t$2--)r$4[t$2]=l$2%o$2[t$2],l$2=Math.floor(l$2/o$2[t$2]);d$3||(c$4.fillIndex(r$4,t$1.dims,i$3),p$6=t$1.get(i$3)),h$4||(c$4.fillIndex(r$4,e$4.dims,s$2),f$4=e$4.get(s$2)),u$2.set(r$4,n$3(p$6,f$4))}}return u$2}}static isValidBroadcast(t$1,e$4){let n$3=t$1.length,r$3=e$4.length;if(n$3>r$3)return!1;for(let i$2=1;i$2<=n$3;i$2++)if(t$1[n$3-i$2]!==1&&t$1[n$3-i$2]!==e$4[r$3-i$2])return!1;return!0}static getBroadcastDims(t$1,e$4){let n$3=t$1.length,r$3=[];for(let i$2=0;i$21&&a$3===1&&r$3.unshift(o$2)}return r$3}}e$3.BroadcastUtil=c$4,e$3.arrayCopyHelper=function(t$1,e$4,n$3,r$3,i$2){if(r$3<0||r$3>=e$4.length)throw Error(`sourceIndex out of bounds`);if(n$3<0||n$3>=t$1.length)throw Error(`targetIndex out of bounds`);if(r$3+i$2>e$4.length)throw Error(`source indices to be copied are outside bounds`);if(n$3+i$2>t$1.length)throw Error(`target array is too small to hold result`);for(let o$2=0;o$2o$1.default.isLong(t$2)?t$2.toNumber():t$2)}static tensorValueTypeFromProto(t$1){return{tensorType:l$1.tensorDataTypeFromProto(t$1.elemType),shape:{dims:l$1.tensorDimsFromProto(t$1.shape.dim.map(t$2=>t$2.dimValue))}}}static tensorDimsFromORTFormat(t$1){let e$4=[];for(let n$3=0;n$3t$1.length)throw Error(`invalid dimension of ${e$4} for sizeFromDimension as Tensor has ${t$1.length} dimensions.`);return f$3.getSizeFromDimensionRange(t$1,e$4,t$1.length)}static sizeToDimension(t$1,e$4){if(e$4<0||e$4>t$1.length)throw Error(`invalid dimension of ${e$4} for sizeToDimension as Tensor has ${t$1.length} dimensions.`);return f$3.getSizeFromDimensionRange(t$1,0,e$4)}static getSizeFromDimensionRange(t$1,e$4,n$3){let r$3=1;for(let i$2=e$4;i$2=0;--r$3)n$3[r$3]=n$3[r$3+1]*t$1[r$3+1];return n$3}static transpose(t$1){return t$1.slice().reverse()}static indicesToOffset(t$1,e$4,n$3){n$3===void 0&&(n$3=t$1.length);let r$3=0;for(let i$2=0;i$2=e$4)throw Error(`unsupported axis for this operation.`);return t$1<0?t$1+e$4:t$1}static normalizeAxes(t$1,e$4){return t$1.map(t$2=>this.normalizeAxis(t$2,e$4))}static incrementIndex(t$1,e$4,n$3){if(e$4.length===0||t$1.length===0)throw Error(`Index incrementing unsupported for scalar Tensor`);if(n$3===void 0)n$3=e$4.length;else if(n$3<=0||n$3>e$4.length)throw Error(`Incorrect axis to increment on`);for(let r$3=n$3-1;r$3>=0&&(t$1[r$3]++,!(t$1[r$3]=t$1.length)throw Error(`the dimension with value zero exceeds the dimension size of the input tensor`);r$3[a$4]=t$1[a$4]}else r$3[a$4]=e$4[a$4];o$2*=r$3[a$4]}}let a$3=f$3.size(t$1);if(i$2!==-1){if(a$3%o$2!=0)throw Error(`the input tensor cannot be reshaped to the requested shape. Input shape: [${t$1}] Output shape: [${e$4}]`);r$3[i$2]=a$3/o$2}else if(o$2!==a$3)throw Error(`reshapedDims and originalDims don't have matching sizes`);return r$3}static sortBasedOnPerm(t$1,e$4){return e$4?e$4.map(e$5=>t$1[e$5]):t$1.slice().reverse()}static padShape(t$1,e$4){let n$3=t$1.length;return t$1.map((t$2,r$3)=>t$2+e$4[r$3]+e$4[r$3+n$3])}static areEqual(t$1,e$4){return t$1.length===e$4.length&&t$1.every((t$2,n$3)=>t$2===e$4[n$3])}static validateDimsAndCalcSize(t$1){if(t$1.length>6)throw TypeError(`Only rank 0 to 6 is supported for tensor shape.`);let e$4=1;for(let n$3 of t$1){if(!Number.isInteger(n$3))throw TypeError(`Invalid shape: ${n$3} is not an integer`);if(n$3<0||n$3>2147483647)throw TypeError(`Invalid shape: length ${n$3} is not allowed`);e$4*=n$3}return e$4}static flattenShape(t$1,e$4){e$4<0&&(e$4+=t$1.length);let n$3=t$1.reduce((t$2,e$5)=>t$2*e$5,1),r$3=t$1.slice(e$4).reduce((t$2,e$5)=>t$2*e$5,1);return[n$3/r$3,r$3]}static squeezeShape(t$1,e$4){let n$3=[];e$4=f$3.normalizeAxes(e$4,t$1.length);for(let r$3=0;r$3=0;if(i$2&&t$1[r$3]!==1)throw Error(`squeeze an axis of size different than 1`);(e$4.length===0&&t$1[r$3]>1||e$4.length>0&&!i$2)&&n$3.push(t$1[r$3])}return n$3}static unsqueezeShape(t$1,e$4){let n$3=Array(t$1.length+e$4.length);n$3.fill(0);for(let t$2=0;t$2=n$3.length)throw Error(`'axes' has an out of range axis`);if(n$3[r$4]!==0)throw Error(`'axes' has a duplicate axis`);n$3[r$4]=1}let r$3=0;for(let e$5=0;e$5=e$4.length)throw Error(`sourceIndex out of bounds`);if(n$3<0||n$3>=t$1.length)throw Error(`targetIndex out of bounds`);if(r$3+i$2>e$4.length)throw Error(`source indices to be copied are outside bounds`);if(n$3+i$2>t$1.length)throw Error(`target array is too small to hold result`);for(let o$2=0;o$2=e$4.length)throw Error(`sourceIndex out of bounds`);if(n$3<0||n$3>=t$1.length)throw Error(`targetIndex out of bounds`);if(r$3+i$2>e$4.length)throw Error(`source indices to be copied are outside bounds`);if(n$3+i$2>t$1.length)throw Error(`target array is too small to hold result`);for(let a$3=0;a$3=e$4.length)throw Error(`sourceIndex out of bounds`);if(n$3<0||n$3>=t$1.length)throw Error(`targetIndex out of bounds`);if(r$3+i$2>e$4.length)throw Error(`source indices to be copied are outside bounds`);if(n$3+i$2>t$1.length)throw Error(`target array is too small to hold result`);for(let a$3=0;a$3=e$4.length)throw Error(`sourceIndex out of bounds`);if(n$3<0||n$3>=t$1.length)throw Error(`targetIndex out of bounds`);if(r$3+i$2>e$4.length)throw Error(`source indices to be copied are outside bounds`);if(n$3+i$2>t$1.length)throw Error(`target array is too small to hold result`);for(let o$2=0;o$2e$4.push(n$4));let a$3=h$3.calcReduceShape(o$2,e$4,!0),u$2=f$3.size(a$3),l$2=new s$1.Tensor(a$3,t$1.type),p$6=f$3.computeStrides(a$3),d$3=f$3.computeStrides(o$2),g$3=Array(o$2.length);for(let n$4=0;n$4=e$4.length)return o$2(t$1[i$2]);let u$2=e$4[r$3],c$5=u$2>=n$3.length?1:f$3.size(n$3.slice(u$2+1));for(let l$2=0;l$2t$2!==0)}}e$3.ReduceUtil=h$3;class g$2{static adjustPoolAttributes(t$1,e$4,n$3,r$3,i$2,o$2){if(!t$1&&n$3.length!==e$4.length-2)throw Error(`length of specified kernel shapes should be 2 less than length of input dimensions`);if(t$1)for(let t$2=0;t$2=n$3.length?n$3.push(e$4[t$2+2]):n$3[t$2]=e$4[t$2+2];for(let t$2=0;t$2=n$3[t$2]||o$2[t$2+n$3.length]>=n$3[t$2])throw Error(`pads should be smaller than kernel`)}}static adjustPadsBasedOnAutoPad(t$1,e$4,n$3,r$3,i$2,o$2){if(o$2){if(i$2.length!==2*(t$1.length-2))throw Error(`length of pads should be twice the length of data dimensions`);if(e$4.length!==t$1.length-2)throw Error(`length of strides should be the length of data dimensions`);if(r$3.length!==t$1.length-2)throw Error(`length of kernel shapes should be the length of data dimensions`);for(let a$3=0;a$3{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.iterateExtraOptions=void 0,e$3.iterateExtraOptions=(t$1,n$2,r$2,i$1)=>{if(typeof t$1==`object`&&t$1){if(r$2.has(t$1))throw Error(`Circular reference in options`);r$2.add(t$1)}Object.entries(t$1).forEach(([t$2,o$1])=>{let a$2=n$2?n$2+t$2:t$2;if(typeof o$1==`object`)(0,e$3.iterateExtraOptions)(o$1,a$2+`.`,r$2,i$1);else if(typeof o$1==`string`||typeof o$1==`number`)i$1(a$2,o$1.toString());else{if(typeof o$1!=`boolean`)throw Error(`Can't handle extra config type: `+typeof o$1);i$1(a$2,o$1?`1`:`0`)}})}},2157:function(t,e$3,n$2){"use strict";var r$2,i$1=this&&this.__createBinding||(Object.create?function(t$1,e$4,n$3,r$3){r$3===void 0&&(r$3=n$3);var i$2=Object.getOwnPropertyDescriptor(e$4,n$3);i$2&&!(`get`in i$2?!e$4.__esModule:i$2.writable||i$2.configurable)||(i$2={enumerable:!0,get:function(){return e$4[n$3]}}),Object.defineProperty(t$1,r$3,i$2)}:function(t$1,e$4,n$3,r$3){r$3===void 0&&(r$3=n$3),t$1[r$3]=e$4[n$3]}),o$1=this&&this.__setModuleDefault||(Object.create?function(t$1,e$4){Object.defineProperty(t$1,`default`,{enumerable:!0,value:e$4})}:function(t$1,e$4){t$1.default=e$4}),a$2=this&&this.__importStar||function(t$1){if(t$1&&t$1.__esModule)return t$1;var e$4={};if(t$1!=null)for(var n$3 in t$1)n$3!==`default`&&Object.prototype.hasOwnProperty.call(t$1,n$3)&&i$1(e$4,t$1,n$3);return o$1(e$4,t$1),e$4};Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.endProfiling=e$3.run=e$3.releaseSession=e$3.createSession=e$3.createSessionFinalize=e$3.createSessionAllocate=e$3.initOrt=e$3.initWasm=void 0;let s$1=n$2(1670),u$1=a$2(n$2(349)),c$4=n$2(6361),l$1=()=>!!s$1.env.wasm.proxy&&typeof document<`u`,p$5,f$3,d$2,h$3=!1,g$2=!1,b$3=!1,m$2=[],y$2=[],_$2=[],v$1=[],w$1=[],x$3=[],T$1=()=>{if(h$3||!g$2||b$3||!p$5)throw Error(`worker not ready`)},S$2=t$1=>{switch(t$1.data.type){case`init-wasm`:h$3=!1,t$1.data.err?(b$3=!0,f$3[1](t$1.data.err)):(g$2=!0,f$3[0]());break;case`init-ort`:t$1.data.err?d$2[1](t$1.data.err):d$2[0]();break;case`create_allocate`:t$1.data.err?m$2.shift()[1](t$1.data.err):m$2.shift()[0](t$1.data.out);break;case`create_finalize`:t$1.data.err?y$2.shift()[1](t$1.data.err):y$2.shift()[0](t$1.data.out);break;case`create`:t$1.data.err?_$2.shift()[1](t$1.data.err):_$2.shift()[0](t$1.data.out);break;case`release`:t$1.data.err?v$1.shift()[1](t$1.data.err):v$1.shift()[0]();break;case`run`:t$1.data.err?w$1.shift()[1](t$1.data.err):w$1.shift()[0](t$1.data.out);break;case`end-profiling`:t$1.data.err?x$3.shift()[1](t$1.data.err):x$3.shift()[0]()}},O$2=typeof document<`u`?(r$2=document==null?void 0:document.currentScript)?.src:void 0;e$3.initWasm=async()=>{if(l$1()){if(g$2)return;if(h$3)throw Error(`multiple calls to 'initWasm()' detected.`);if(b$3)throw Error(`previous call to 'initWasm()' failed.`);return h$3=!0,s$1.env.wasm.wasmPaths===void 0&&O$2&&O$2.indexOf(`blob:`)!==0&&(s$1.env.wasm.wasmPaths=O$2.substr(0,+O$2.lastIndexOf(`/`)+1)),new Promise((t$1,e$4)=>{p$5?.terminate(),p$5=n$2(9710).Z(),p$5.onmessage=S$2,f$3=[t$1,e$4];let r$3={type:`init-wasm`,in:s$1.env.wasm};p$5.postMessage(r$3)})}return(0,c$4.initializeWebAssembly)(s$1.env.wasm)},e$3.initOrt=async(t$1,e$4)=>{if(l$1())return T$1(),new Promise((n$3,r$3)=>{d$2=[n$3,r$3];let i$2={type:`init-ort`,in:{numThreads:t$1,loggingLevel:e$4}};p$5.postMessage(i$2)});u$1.initOrt(t$1,e$4)},e$3.createSessionAllocate=async t$1=>l$1()?(T$1(),new Promise((e$4,n$3)=>{m$2.push([e$4,n$3]);let r$3={type:`create_allocate`,in:{model:t$1}};p$5.postMessage(r$3,[t$1.buffer])})):u$1.createSessionAllocate(t$1),e$3.createSessionFinalize=async(t$1,e$4)=>l$1()?(T$1(),new Promise((n$3,r$3)=>{y$2.push([n$3,r$3]);let i$2={type:`create_finalize`,in:{modeldata:t$1,options:e$4}};p$5.postMessage(i$2)})):u$1.createSessionFinalize(t$1,e$4),e$3.createSession=async(t$1,e$4)=>l$1()?(T$1(),new Promise((n$3,r$3)=>{_$2.push([n$3,r$3]);let i$2={type:`create`,in:{model:t$1,options:e$4}};p$5.postMessage(i$2,[t$1.buffer])})):u$1.createSession(t$1,e$4),e$3.releaseSession=async t$1=>{if(l$1())return T$1(),new Promise((e$4,n$3)=>{v$1.push([e$4,n$3]);let r$3={type:`release`,in:t$1};p$5.postMessage(r$3)});u$1.releaseSession(t$1)},e$3.run=async(t$1,e$4,n$3,r$3,i$2)=>l$1()?(T$1(),new Promise((o$2,a$3)=>{w$1.push([o$2,a$3]);let s$2={type:`run`,in:{sessionId:t$1,inputIndices:e$4,inputs:n$3,outputIndices:r$3,options:i$2}};p$5.postMessage(s$2,u$1.extractTransferableBuffers(n$3))})):u$1.run(t$1,e$4,n$3,r$3,i$2),e$3.endProfiling=async t$1=>{if(l$1())return T$1(),new Promise((e$4,n$3)=>{x$3.push([e$4,n$3]);let r$3={type:`end-profiling`,in:t$1};p$5.postMessage(r$3)});u$1.endProfiling(t$1)}},586:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.setRunOptions=void 0;let r$2=n$2(7967),i$1=n$2(4983),o$1=n$2(6361);e$3.setRunOptions=t$1=>{let e$4=(0,o$1.getInstance)(),n$3=0,a$2=[],s$1=t$1||{};try{if(t$1?.logSeverityLevel===void 0)s$1.logSeverityLevel=2;else if(typeof t$1.logSeverityLevel!=`number`||!Number.isInteger(t$1.logSeverityLevel)||t$1.logSeverityLevel<0||t$1.logSeverityLevel>4)throw Error(`log serverity level is not valid: ${t$1.logSeverityLevel}`);if(t$1?.logVerbosityLevel===void 0)s$1.logVerbosityLevel=0;else if(typeof t$1.logVerbosityLevel!=`number`||!Number.isInteger(t$1.logVerbosityLevel))throw Error(`log verbosity level is not valid: ${t$1.logVerbosityLevel}`);t$1?.terminate===void 0&&(s$1.terminate=!1);let o$2=0;if(t$1?.tag!==void 0&&(o$2=(0,i$1.allocWasmString)(t$1.tag,a$2)),n$3=e$4._OrtCreateRunOptions(s$1.logSeverityLevel,s$1.logVerbosityLevel,!!s$1.terminate,o$2),n$3===0)throw Error(`Can't create run options`);return t$1?.extra!==void 0&&(0,r$2.iterateExtraOptions)(t$1.extra,``,new WeakSet,(t$2,r$3)=>{let o$3=(0,i$1.allocWasmString)(t$2,a$2),s$2=(0,i$1.allocWasmString)(r$3,a$2);if(e$4._OrtAddRunConfigEntry(n$3,o$3,s$2)!==0)throw Error(`Can't set a run config entry: ${t$2} - ${r$3}`)}),[n$3,a$2]}catch(t$2){throw n$3!==0&&e$4._OrtReleaseRunOptions(n$3),a$2.forEach(e$4._free),t$2}}},2306:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.OnnxruntimeWebAssemblySessionHandler=void 0;let r$2=n$2(2806),i$1=n$2(1670),o$1=n$2(2850),a$2=n$2(2157),s$1;e$3.OnnxruntimeWebAssemblySessionHandler=class{async createSessionAllocate(t$1){let e$4=await fetch(t$1),n$3=await e$4.arrayBuffer();return(0,a$2.createSessionAllocate)(new Uint8Array(n$3))}async loadModel(t$1,e$4){if(s$1||(await(0,a$2.initOrt)(i$1.env.wasm.numThreads,(t$2=>{switch(t$2){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: ${t$2}`)}})(i$1.env.logLevel)),s$1=!0),typeof t$1==`string`)if(typeof fetch>`u`){let n$3=await(0,o$1.promisify)(r$2.readFile)(t$1);[this.sessionId,this.inputNames,this.outputNames]=await(0,a$2.createSession)(n$3,e$4)}else{let n$3=await this.createSessionAllocate(t$1);[this.sessionId,this.inputNames,this.outputNames]=await(0,a$2.createSessionFinalize)(n$3,e$4)}else [this.sessionId,this.inputNames,this.outputNames]=await(0,a$2.createSession)(t$1,e$4)}async dispose(){return(0,a$2.releaseSession)(this.sessionId)}async run(t$1,e$4,n$3){let r$3=[],o$2=[];Object.entries(t$1).forEach(t$2=>{let e$5=t$2[0],n$4=t$2[1],i$2=this.inputNames.indexOf(e$5);if(i$2===-1)throw Error(`invalid input '${e$5}'`);r$3.push(n$4),o$2.push(i$2)});let s$2=[];Object.entries(e$4).forEach(t$2=>{let e$5=t$2[0],n$4=this.outputNames.indexOf(e$5);if(n$4===-1)throw Error(`invalid output '${e$5}'`);s$2.push(n$4)});let u$1=await(0,a$2.run)(this.sessionId,o$2,r$3.map(t$2=>[t$2.type,t$2.dims,t$2.data]),s$2,n$3),c$4={};for(let t$2=0;t$2{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.setSessionOptions=void 0;let r$2=n$2(7967),i$1=n$2(4983),o$1=n$2(6361);e$3.setSessionOptions=t$1=>{let e$4=(0,o$1.getInstance)(),n$3=0,a$2=[],s$1=t$1||{};(t$2=>{t$2.extra||={},t$2.extra.session||(t$2.extra.session={});let e$5=t$2.extra.session;e$5.use_ort_model_bytes_directly||=`1`})(s$1);try{t$1?.graphOptimizationLevel===void 0&&(s$1.graphOptimizationLevel=`all`);let u$1=(t$2=>{switch(t$2){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${t$2}`)}})(s$1.graphOptimizationLevel);t$1?.enableCpuMemArena===void 0&&(s$1.enableCpuMemArena=!0),t$1?.enableMemPattern===void 0&&(s$1.enableMemPattern=!0),t$1?.executionMode===void 0&&(s$1.executionMode=`sequential`);let c$4=(t$2=>{switch(t$2){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${t$2}`)}})(s$1.executionMode),l$1=0;if(t$1?.logId!==void 0&&(l$1=(0,i$1.allocWasmString)(t$1.logId,a$2)),t$1?.logSeverityLevel===void 0)s$1.logSeverityLevel=2;else if(typeof t$1.logSeverityLevel!=`number`||!Number.isInteger(t$1.logSeverityLevel)||t$1.logSeverityLevel<0||t$1.logSeverityLevel>4)throw Error(`log serverity level is not valid: ${t$1.logSeverityLevel}`);if(t$1?.logVerbosityLevel===void 0)s$1.logVerbosityLevel=0;else if(typeof t$1.logVerbosityLevel!=`number`||!Number.isInteger(t$1.logVerbosityLevel))throw Error(`log verbosity level is not valid: ${t$1.logVerbosityLevel}`);if(t$1?.enableProfiling===void 0&&(s$1.enableProfiling=!1),n$3=e$4._OrtCreateSessionOptions(u$1,!!s$1.enableCpuMemArena,!!s$1.enableMemPattern,c$4,!!s$1.enableProfiling,0,l$1,s$1.logSeverityLevel,s$1.logVerbosityLevel),n$3===0)throw Error(`Can't create session options`);return t$1!=null&&t$1.executionProviders&&((t$2,e$5,n$4)=>{for(let r$3 of e$5){let e$6=typeof r$3==`string`?r$3:r$3.name;switch(e$6){case`xnnpack`:e$6=`XNNPACK`;break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported EP: ${e$6}`)}let a$3=(0,i$1.allocWasmString)(e$6,n$4);if((0,o$1.getInstance)()._OrtAppendExecutionProvider(t$2,a$3)!==0)throw Error(`Can't append execution provider: ${e$6}`)}})(n$3,t$1.executionProviders,a$2),t$1?.extra!==void 0&&(0,r$2.iterateExtraOptions)(t$1.extra,``,new WeakSet,(t$2,r$3)=>{let o$2=(0,i$1.allocWasmString)(t$2,a$2),s$2=(0,i$1.allocWasmString)(r$3,a$2);if(e$4._OrtAddSessionConfigEntry(n$3,o$2,s$2)!==0)throw Error(`Can't set a session config entry: ${t$2} - ${r$3}`)}),[n$3,a$2]}catch(t$2){throw n$3!==0&&e$4._OrtReleaseSessionOptions(n$3),a$2.forEach(e$4._free),t$2}}},4983:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.allocWasmString=void 0;let r$2=n$2(6361);e$3.allocWasmString=(t$1,e$4)=>{let n$3=(0,r$2.getInstance)(),i$1=n$3.lengthBytesUTF8(t$1)+1,o$1=n$3._malloc(i$1);return n$3.stringToUTF8(t$1,o$1,i$1),e$4.push(o$1),o$1}},349:(t,e$3,n$2)=>{"use strict";Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.extractTransferableBuffers=e$3.endProfiling=e$3.run=e$3.releaseSession=e$3.createSession=e$3.createSessionFinalize=e$3.createSessionAllocate=e$3.initOrt=void 0;let r$2=n$2(586),i$1=n$2(4919),o$1=n$2(4983),a$2=n$2(6361);e$3.initOrt=(t$1,e$4)=>{let n$3=(0,a$2.getInstance)()._OrtInit(t$1,e$4);if(n$3!==0)throw Error(`Can't initialize onnxruntime. error code = ${n$3}`)};let s$1=new Map;e$3.createSessionAllocate=t$1=>{let e$4=(0,a$2.getInstance)(),n$3=e$4._malloc(t$1.byteLength);return e$4.HEAPU8.set(t$1,n$3),[n$3,t$1.byteLength]},e$3.createSessionFinalize=(t$1,e$4)=>{let n$3=(0,a$2.getInstance)(),r$3=0,o$2=0,u$2=[];try{if([o$2,u$2]=(0,i$1.setSessionOptions)(e$4),r$3=n$3._OrtCreateSession(t$1[0],t$1[1],o$2),r$3===0)throw Error(`Can't create a session`)}finally{n$3._free(t$1[0]),n$3._OrtReleaseSessionOptions(o$2),u$2.forEach(n$3._free)}let c$5=n$3._OrtGetInputCount(r$3),l$2=n$3._OrtGetOutputCount(r$3),p$5=[],f$3=[],d$2=[],h$3=[];for(let t$2=0;t$2{let r$3=(0,e$3.createSessionAllocate)(t$1);return(0,e$3.createSessionFinalize)(r$3,n$3)},e$3.releaseSession=t$1=>{let e$4=(0,a$2.getInstance)(),n$3=s$1.get(t$1);if(!n$3)throw Error(`invalid session id`);let r$3=n$3[0],i$2=n$3[1],o$2=n$3[2];i$2.forEach(e$4._OrtFree),o$2.forEach(e$4._OrtFree),e$4._OrtReleaseSession(r$3),s$1.delete(t$1)};let u$1=t$1=>{switch(t$1){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`float32`:return 1;case`float64`:return 11;case`string`:return 8;case`int64`:return 7;case`uint64`:return 13;default:throw Error(`unsupported data type: ${t$1}`)}},c$4=t$1=>{switch(t$1){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 1:return`float32`;case 11:return`float64`;case 8:return`string`;case 7:return`int64`;case 13:return`uint64`;default:throw Error(`unsupported data type: ${t$1}`)}},l$1=t$1=>{switch(t$1){case`float32`:return Float32Array;case`uint8`:case`bool`:return Uint8Array;case`int8`:return Int8Array;case`uint16`:return Uint16Array;case`int16`:return Int16Array;case`int32`:return Int32Array;case`float64`:return Float64Array;case`uint32`:return Uint32Array;case`int64`:return BigInt64Array;case`uint64`:return BigUint64Array;default:throw Error(`unsupported type: ${t$1}`)}};e$3.run=(t$1,e$4,n$3,i$2,p$5)=>{let f$3=(0,a$2.getInstance)(),d$2=s$1.get(t$1);if(!d$2)throw Error(`invalid session id`);let h$3=d$2[0],g$2=d$2[1],b$3=d$2[2],m$2=e$4.length,y$2=i$2.length,_$2=0,v$1=[],w$1=[],x$3=[];try{[_$2,v$1]=(0,r$2.setRunOptions)(p$5);for(let t$3=0;t$3f$3.HEAP32[t$4++]=e$6);let n$4=f$3._OrtCreateTensor(u$1(e$5),a$4,s$3,l$2,r$3.length);if(n$4===0)throw Error(`Can't create a tensor`);w$1.push(n$4)}finally{f$3.stackRestore(c$5)}}let t$2=f$3.stackSave(),a$3=f$3.stackAlloc(4*m$2),s$2=f$3.stackAlloc(4*m$2),d$3=f$3.stackAlloc(4*y$2),T$1=f$3.stackAlloc(4*y$2);try{let n$4=a$3/4,r$3=s$2/4,o$2=d$3/4,u$2=T$1/4;for(let t$3=0;t$3t$5*e$6);if(i$3=c$4(a$4),i$3===`string`){let t$5=[],e$6=o$3/4;for(let n$6=0;n$6{let e$4=(0,a$2.getInstance)(),n$3=s$1.get(t$1);if(!n$3)throw Error(`invalid session id`);let r$3=n$3[0],i$2=e$4._OrtEndProfiling(r$3);if(i$2===0)throw Error(`Can't get an profile file name`);e$4._OrtFree(i$2)},e$3.extractTransferableBuffers=t$1=>{let e$4=[];for(let n$3 of t$1){let t$2=n$3[2];!Array.isArray(t$2)&&t$2.buffer&&e$4.push(t$2.buffer)}return e$4}},6361:function(t,e$3,n$2){"use strict";var r$2=this&&this.__createBinding||(Object.create?function(t$1,e$4,n$3,r$3){r$3===void 0&&(r$3=n$3);var i$2=Object.getOwnPropertyDescriptor(e$4,n$3);i$2&&!(`get`in i$2?!e$4.__esModule:i$2.writable||i$2.configurable)||(i$2={enumerable:!0,get:function(){return e$4[n$3]}}),Object.defineProperty(t$1,r$3,i$2)}:function(t$1,e$4,n$3,r$3){r$3===void 0&&(r$3=n$3),t$1[r$3]=e$4[n$3]}),i$1=this&&this.__setModuleDefault||(Object.create?function(t$1,e$4){Object.defineProperty(t$1,`default`,{enumerable:!0,value:e$4})}:function(t$1,e$4){t$1.default=e$4}),o$1=this&&this.__importStar||function(t$1){if(t$1&&t$1.__esModule)return t$1;var e$4={};if(t$1!=null)for(var n$3 in t$1)n$3!==`default`&&Object.prototype.hasOwnProperty.call(t$1,n$3)&&r$2(e$4,t$1,n$3);return i$1(e$4,t$1),e$4},a$2=this&&this.__importDefault||function(t$1){return t$1&&t$1.__esModule?t$1:{default:t$1}};Object.defineProperty(e$3,`__esModule`,{value:!0}),e$3.dispose=e$3.getInstance=e$3.initializeWebAssembly=void 0;let s$1=o$1(n$2(6449)),u$1=a$2(n$2(932)),c$4=n$2(3474),l$1,p$5=!1,f$3=!1,d$2=!1,h$3=(t$1,e$4)=>e$4?t$1?`ort-wasm-simd-threaded.wasm`:`ort-wasm-threaded.wasm`:t$1?`ort-wasm-simd.wasm`:`ort-wasm.wasm`;e$3.initializeWebAssembly=async t$1=>{if(p$5)return Promise.resolve();if(f$3)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if(d$2)throw Error(`previous call to 'initializeWebAssembly()' failed.`);f$3=!0;let e$4=t$1.initTimeout,r$3=t$1.numThreads,i$2=t$1.simd,o$2=r$3>1&&(()=>{try{return typeof SharedArrayBuffer<`u`&&(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}})(),a$3=i$2&&(()=>{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}})(),g$2=typeof t$1.wasmPaths==`string`?t$1.wasmPaths:void 0,b$3=h$3(!1,o$2),m$2=h$3(a$3,o$2),y$2=typeof t$1.wasmPaths==`object`?t$1.wasmPaths[m$2]:void 0,_$2=!1,v$1=[];if(e$4>0&&v$1.push(new Promise(t$2=>{setTimeout(()=>{_$2=!0,t$2()},e$4)})),v$1.push(new Promise((t$2,e$5)=>{let r$4=o$2?c$4:u$1.default,i$3={locateFile:(t$3,e$6)=>o$2&&t$3.endsWith(`.worker.js`)&&typeof Blob<`u`?URL.createObjectURL(new Blob([n$2(4154)],{type:`text/javascript`})):t$3===b$3?y$2??(g$2??e$6)+m$2:e$6+t$3};if(o$2)if(typeof Blob>`u`)i$3.mainScriptUrlOrBlob=s$1.join(`/`,`ort-wasm-threaded.js`);else{let t$3=`var ortWasmThreaded=(function(){var _scriptDir;return ${r$4.toString()}})();`;i$3.mainScriptUrlOrBlob=new Blob([t$3],{type:`text/javascript`})}r$4(i$3).then(e$6=>{f$3=!1,p$5=!0,l$1=e$6,t$2()},t$3=>{f$3=!1,d$2=!0,e$5(t$3)})})),await Promise.race(v$1),_$2)throw Error(`WebAssembly backend initializing failed due to timeout: ${e$4}ms`)},e$3.getInstance=()=>{if(p$5&&l$1)return l$1;throw Error(`WebAssembly is not initialized yet.`)},e$3.dispose=()=>{var t$1;!p$5||f$3||d$2||(f$3=!0,(t$1=l$1.PThread)==null||t$1.terminateAllThreads(),l$1=void 0,f$3=!1,p$5=!1,d$2=!0)}},9710:(t,e$3,n$2)=>{"use strict";n$2.d(e$3,{Z:()=>o$1});var r$2=n$2(477),i$1=n$2.n(r$2);function o$1(){return i$1()('/*!\n* ONNX Runtime Web v1.14.0\n* Copyright (c) Microsoft Corporation. All rights reserved.\n* Licensed under the MIT License.\n*/\n(()=>{var t={474:(t,e,n)=>{var _scriptDir,r=(_scriptDir=(_scriptDir="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0)||"/index.js",function(t){function e(){return j.buffer!=D&&N(j.buffer),P}function r(){return j.buffer!=D&&N(j.buffer),U}function a(){return j.buffer!=D&&N(j.buffer),F}function i(){return j.buffer!=D&&N(j.buffer),I}function o(){return j.buffer!=D&&N(j.buffer),W}var u,c,s;t=t||{},u||(u=void 0!==t?t:{}),u.ready=new Promise((function(t,e){c=t,s=e}));var l,f,p,h,d,y,b=Object.assign({},u),m="./this.program",g=(t,e)=>{throw e},v="object"==typeof window,w="function"==typeof importScripts,_="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,O=u.ENVIRONMENT_IS_PTHREAD||!1,A="";function S(t){return u.locateFile?u.locateFile(t,A):A+t}if(_){let e;A=w?n(908).dirname(A)+"/":"//",y=()=>{d||(h=n(384),d=n(908))},l=function(t,e){return y(),t=d.normalize(t),h.readFileSync(t,e?void 0:"utf8")},p=t=>((t=l(t,!0)).buffer||(t=new Uint8Array(t)),t),f=(t,e,n)=>{y(),t=d.normalize(t),h.readFile(t,(function(t,r){t?n(t):e(r.buffer)}))},1{if(Q())throw process.exitCode=t,e;e instanceof ct||x("exiting due to exception: "+e),process.exit(t)},u.inspect=function(){return"[Emscripten Module object]"};try{e=n(925)}catch(t){throw console.error(\'The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?\'),t}n.g.Worker=e.Worker}else(v||w)&&(w?A=self.location.href:"undefined"!=typeof document&&document.currentScript&&(A=document.currentScript.src),_scriptDir&&(A=_scriptDir),A=0!==A.indexOf("blob:")?A.substr(0,A.replace(/[?#].*/,"").lastIndexOf("/")+1):"",_||(l=t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.send(null),e.responseText},w&&(p=t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}),f=(t,e,n)=>{var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=()=>{200==r.status||0==r.status&&r.response?e(r.response):n()},r.onerror=n,r.send(null)}));_&&"undefined"==typeof performance&&(n.g.performance=n(953).performance);var T=console.log.bind(console),E=console.warn.bind(console);_&&(y(),T=t=>h.writeSync(1,t+"\\n"),E=t=>h.writeSync(2,t+"\\n"));var M,C=u.print||T,x=u.printErr||E;Object.assign(u,b),b=null,u.thisProgram&&(m=u.thisProgram),u.quit&&(g=u.quit),u.wasmBinary&&(M=u.wasmBinary);var R=u.noExitRuntime||!1;"object"!=typeof WebAssembly&&at("no native wasm support detected");var j,k,D,P,U,F,I,W,H=!1,L="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function z(t,e,n){var r=(e>>>=0)+n;for(n=e;t[n]&&!(n>=r);)++n;if(16(a=224==(240&a)?(15&a)<<12|i<<6|o:(7&a)<<18|i<<12|o<<6|63&t[e++])?r+=String.fromCharCode(a):(a-=65536,r+=String.fromCharCode(55296|a>>10,56320|1023&a))}}else r+=String.fromCharCode(a)}return r}function Y(t,e){return(t>>>=0)?z(r(),t,e):""}function B(t,e,n,r){if(!(0>>=0;r=n+r-1;for(var i=0;i=o&&(o=65536+((1023&o)<<10)|1023&t.charCodeAt(++i)),127>=o){if(n>=r)break;e[n++>>>0]=o}else{if(2047>=o){if(n+1>=r)break;e[n++>>>0]=192|o>>6}else{if(65535>=o){if(n+2>=r)break;e[n++>>>0]=224|o>>12}else{if(n+3>=r)break;e[n++>>>0]=240|o>>18,e[n++>>>0]=128|o>>12&63}e[n++>>>0]=128|o>>6&63}e[n++>>>0]=128|63&o}}return e[n>>>0]=0,n-a}function G(t){for(var e=0,n=0;n=r?e++:2047>=r?e+=2:55296<=r&&57343>=r?(e+=4,++n):e+=3}return e}function N(t){D=t,u.HEAP8=P=new Int8Array(t),u.HEAP16=new Int16Array(t),u.HEAP32=F=new Int32Array(t),u.HEAPU8=U=new Uint8Array(t),u.HEAPU16=new Uint16Array(t),u.HEAPU32=I=new Uint32Array(t),u.HEAPF32=new Float32Array(t),u.HEAPF64=W=new Float64Array(t)}O&&(D=u.buffer);var V=u.INITIAL_MEMORY||16777216;if(O)j=u.wasmMemory,D=u.buffer;else if(u.wasmMemory)j=u.wasmMemory;else if(!((j=new WebAssembly.Memory({initial:V/65536,maximum:65536,shared:!0})).buffer instanceof SharedArrayBuffer))throw x("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),_&&console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)"),Error("bad memory");j&&(D=j.buffer),V=D.byteLength,N(D);var $,q=[],X=[],J=[],Z=[];function Q(){return R||!1}function K(){var t=u.preRun.shift();q.unshift(t)}var tt,et=0,nt=null,rt=null;function at(t){throw O?postMessage({cmd:"onAbort",arg:t}):u.onAbort&&u.onAbort(t),x(t="Aborted("+t+")"),H=!0,t=new WebAssembly.RuntimeError(t+". Build with -sASSERTIONS for more info."),s(t),t}function it(){return tt.startsWith("data:application/octet-stream;base64,")}function ot(){var t=tt;try{if(t==tt&&M)return new Uint8Array(M);if(p)return p(t);throw"both async and sync fetching of the wasm failed"}catch(t){at(t)}}tt="ort-wasm-threaded.wasm",it()||(tt=S(tt));var ut={};function ct(t){this.name="ExitStatus",this.message="Program terminated with exit("+t+")",this.status=t}function st(t){(t=ht.Vb[t])||at(),ht.mc(t)}function lt(t){var e=ht.Cc();if(!e)return 6;ht.ac.push(e),ht.Vb[t.Ub]=e,e.Ub=t.Ub;var n={cmd:"run",start_routine:t.Ic,arg:t.zc,pthread_ptr:t.Ub};return e.$b=()=>{n.time=performance.now(),e.postMessage(n,t.Nc)},e.loaded&&(e.$b(),delete e.$b),0}function ft(t){if(O)return $t(1,1,t);Q()||(ht.oc(),u.onExit&&u.onExit(t),H=!0),g(t,new ct(t))}function pt(t,e){if(!e&&O)throw bt(t),"unwind";Q()||O||(me(),dt(J),be(0),re[1].length&&ae(1,10),re[2].length&&ae(2,10),ht.oc()),ft(t)}var ht={Yb:[],ac:[],qc:[],Vb:{},fc:function(){O&&ht.Ec()},Pc:function(){},Ec:function(){ht.receiveObjectTransfer=ht.Gc,ht.threadInitTLS=ht.pc,ht.setExitStatus=ht.nc,R=!1},nc:function(){},oc:function(){for(var t of Object.values(ht.Vb))ht.mc(t);for(t of ht.Yb)t.terminate();ht.Yb=[]},mc:function(t){var e=t.Ub;delete ht.Vb[e],ht.Yb.push(t),ht.ac.splice(ht.ac.indexOf(t),1),t.Ub=0,Oe(e)},Gc:function(){},pc:function(){ht.qc.forEach((t=>t()))},Fc:function(t,e){t.onmessage=n=>{var r=(n=n.data).cmd;if(t.Ub&&(ht.Bc=t.Ub),n.targetThread&&n.targetThread!=he()){var a=ht.Vb[n.Qc];a?a.postMessage(n,n.transferList):x(\'Internal error! Worker sent a message "\'+r+\'" to target pthread \'+n.targetThread+", but that thread no longer exists!")}else"processProxyingQueue"===r?zt(n.queue):"spawnThread"===r?lt(n):"cleanupThread"===r?st(n.thread):"killThread"===r?(n=n.thread,r=ht.Vb[n],delete ht.Vb[n],r.terminate(),Oe(n),ht.ac.splice(ht.ac.indexOf(r),1),r.Ub=0):"cancelThread"===r?ht.Vb[n.thread].postMessage({cmd:"cancel"}):"loaded"===r?(t.loaded=!0,e&&e(t),t.$b&&(t.$b(),delete t.$b)):"print"===r?C("Thread "+n.threadId+": "+n.text):"printErr"===r?x("Thread "+n.threadId+": "+n.text):"alert"===r?alert("Thread "+n.threadId+": "+n.text):"setimmediate"===n.target?t.postMessage(n):"onAbort"===r?u.onAbort&&u.onAbort(n.arg):r&&x("worker sent an unknown command "+r);ht.Bc=void 0},t.onerror=t=>{throw x("worker sent an error! "+t.filename+":"+t.lineno+": "+t.message),t},_&&(t.on("message",(function(e){t.onmessage({data:e})})),t.on("error",(function(e){t.onerror(e)})),t.on("detachedExit",(function(){}))),t.postMessage({cmd:"load",urlOrBlob:u.mainScriptUrlOrBlob||_scriptDir,wasmMemory:j,wasmModule:k})},yc:function(){var t=S("ort-wasm-threaded.worker.js");ht.Yb.push(new Worker(t))},Cc:function(){return 0==ht.Yb.length&&(ht.yc(),ht.Fc(ht.Yb[0])),ht.Yb.pop()}};function dt(t){for(;0>2>>>0];t=a()[t+48>>2>>>0],Te(e,e-t),Me(e)};var mt=[];function gt(t){var e=mt[t];return e||(t>=mt.length&&(mt.length=t+1),mt[t]=e=$.get(t)),e}u.invokeEntryPoint=function(t,e){t=gt(t)(e),Q()?ht.nc(t):Ae(t)};var vt,wt,_t=[],Ot=0,At=0;function St(t){this.Zb=t,this.Sb=t-24,this.xc=function(t){i()[this.Sb+4>>2>>>0]=t},this.bc=function(){return i()[this.Sb+4>>2>>>0]},this.wc=function(t){i()[this.Sb+8>>2>>>0]=t},this.Dc=function(){return i()[this.Sb+8>>2>>>0]},this.rc=function(){a()[this.Sb>>2>>>0]=0},this.hc=function(t){t=t?1:0,e()[this.Sb+12>>0>>>0]=t},this.uc=function(){return 0!=e()[this.Sb+12>>0>>>0]},this.ic=function(t){t=t?1:0,e()[this.Sb+13>>0>>>0]=t},this.kc=function(){return 0!=e()[this.Sb+13>>0>>>0]},this.fc=function(t,e){this.cc(0),this.xc(t),this.wc(e),this.rc(),this.hc(!1),this.ic(!1)},this.sc=function(){Atomics.add(a(),this.Sb>>2,1)},this.Hc=function(){return 1===Atomics.sub(a(),this.Sb>>2,1)},this.cc=function(t){i()[this.Sb+16>>2>>>0]=t},this.tc=function(){return i()[this.Sb+16>>2>>>0]},this.vc=function(){if(Re(this.bc()))return i()[this.Zb>>2>>>0];var t=this.tc();return 0!==t?t:this.Zb}}function Tt(t){return ye(new St(t).Sb)}function Et(t,e,n,r){return O?$t(3,1,t,e,n,r):Mt(t,e,n,r)}function Mt(t,e,n,r){if("undefined"==typeof SharedArrayBuffer)return x("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var a=[];return O&&0===a.length?Et(t,e,n,r):(t={Ic:n,Ub:t,zc:r,Nc:a},O?(t.Oc="spawnThread",postMessage(t,a),0):lt(t))}function Ct(t,e,n){return O?$t(4,1,t,e,n):0}function xt(t,e){if(O)return $t(5,1,t,e)}function Rt(t,e){if(O)return $t(6,1,t,e)}function jt(t,e,n){if(O)return $t(7,1,t,e,n)}function kt(t,e,n){return O?$t(8,1,t,e,n):0}function Dt(t,e){if(O)return $t(9,1,t,e)}function Pt(t,e,n){if(O)return $t(10,1,t,e,n)}function Ut(t,e,n,r){if(O)return $t(11,1,t,e,n,r)}function Ft(t,e,n,r){if(O)return $t(12,1,t,e,n,r)}function It(t,e,n,r){if(O)return $t(13,1,t,e,n,r)}function Wt(t){if(O)return $t(14,1,t)}function Ht(t,e){if(O)return $t(15,1,t,e)}function Lt(t,e,n){if(O)return $t(16,1,t,e,n)}function zt(t){Atomics.store(a(),t>>2,1),he()&&_e(t),Atomics.compareExchange(a(),t>>2,1,0)}function Yt(t){return i()[t>>>2]+4294967296*a()[t+4>>>2]}function Bt(t,e,n,r,a,i){return O?$t(17,1,t,e,n,r,a,i):-52}function Gt(t,e,n,r,a,i){if(O)return $t(18,1,t,e,n,r,a,i)}function Nt(t){var n=G(t)+1,r=de(n);return r&&B(t,e(),r,n),r}function Vt(t,e,n){function r(t){return(t=t.toTimeString().match(/\\(([A-Za-z ]+)\\)$/))?t[1]:"GMT"}if(O)return $t(19,1,t,e,n);var o=(new Date).getFullYear(),u=new Date(o,0,1),c=new Date(o,6,1);o=u.getTimezoneOffset();var s=c.getTimezoneOffset(),l=Math.max(o,s);a()[t>>2>>>0]=60*l,a()[e>>2>>>0]=Number(o!=s),t=r(u),e=r(c),t=Nt(t),e=Nt(e),s>2>>>0]=t,i()[n+4>>2>>>0]=e):(i()[n>>2>>>0]=e,i()[n+4>>2>>>0]=t)}function $t(t,e){var n=arguments.length-2,r=arguments;return yt((()=>{for(var a=Ce(8*n),i=a>>3,u=0;u>>0]=c}return we(t,n,a,e)}))}u.executeNotifiedProxyingQueue=zt,wt=_?()=>{var t=process.hrtime();return 1e3*t[0]+t[1]/1e6}:O?()=>performance.now()-u.__performance_now_clock_drift:()=>performance.now();var qt,Xt=[],Jt={};function Zt(){if(!qt){var t,e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:m||"./this.program"};for(t in Jt)void 0===Jt[t]?delete e[t]:e[t]=Jt[t];var n=[];for(t in e)n.push(t+"="+e[t]);qt=n}return qt}function Qt(t,n){if(O)return $t(20,1,t,n);var r=0;return Zt().forEach((function(a,o){var u=n+r;for(o=i()[t+4*o>>2>>>0]=u,u=0;u>0>>>0]=a.charCodeAt(u);e()[o>>0>>>0]=0,r+=a.length+1})),0}function Kt(t,e){if(O)return $t(21,1,t,e);var n=Zt();i()[t>>2>>>0]=n.length;var r=0;return n.forEach((function(t){r+=t.length+1})),i()[e>>2>>>0]=r,0}function te(t){return O?$t(22,1,t):52}function ee(t,e,n,r){return O?$t(23,1,t,e,n,r):52}function ne(t,e,n,r,a){return O?$t(24,1,t,e,n,r,a):70}var re=[null,[],[]];function ae(t,e){var n=re[t];0===e||10===e?((1===t?C:x)(z(n,0)),n.length=0):n.push(e)}function ie(t,e,n,a){if(O)return $t(25,1,t,e,n,a);for(var o=0,u=0;u>2>>>0],s=i()[e+4>>2>>>0];e+=8;for(var l=0;l>>0]);o+=s}return i()[a>>2>>>0]=o,0}var oe=0;function ue(t){return 0==t%4&&(0!=t%100||0==t%400)}var ce=[31,29,31,30,31,30,31,31,30,31,30,31],se=[31,28,31,30,31,30,31,31,30,31,30,31];function le(t,n,r,i){function o(t,e,n){for(t="number"==typeof t?t.toString():t||"";t.lengtht?-1:0r-t.getDate())){t.setDate(t.getDate()+e);break}e-=r-t.getDate()+1,t.setDate(1),11>n?t.setMonth(n+1):(t.setMonth(0),t.setFullYear(t.getFullYear()+1))}return n=new Date(t.getFullYear()+1,0,4),e=s(new Date(t.getFullYear(),0,4)),n=s(n),0>=c(e,t)?0>=c(n,t)?t.getFullYear()+1:t.getFullYear():t.getFullYear()-1}var f=a()[i+40>>2>>>0];for(var p in i={Lc:a()[i>>2>>>0],Kc:a()[i+4>>2>>>0],dc:a()[i+8>>2>>>0],jc:a()[i+12>>2>>>0],ec:a()[i+16>>2>>>0],Xb:a()[i+20>>2>>>0],Tb:a()[i+24>>2>>>0],Wb:a()[i+28>>2>>>0],Rc:a()[i+32>>2>>>0],Jc:a()[i+36>>2>>>0],Mc:f?Y(f):""},r=Y(r),f={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})r=r.replace(new RegExp(p,"g"),f[p]);var h="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),d="January February March April May June July August September October November December".split(" ");for(p in f={"%a":function(t){return h[t.Tb].substring(0,3)},"%A":function(t){return h[t.Tb]},"%b":function(t){return d[t.ec].substring(0,3)},"%B":function(t){return d[t.ec]},"%C":function(t){return u((t.Xb+1900)/100|0,2)},"%d":function(t){return u(t.jc,2)},"%e":function(t){return o(t.jc,2," ")},"%g":function(t){return l(t).toString().substring(2)},"%G":function(t){return l(t)},"%H":function(t){return u(t.dc,2)},"%I":function(t){return 0==(t=t.dc)?t=12:12t.dc?"AM":"PM"},"%S":function(t){return u(t.Lc,2)},"%t":function(){return"\\t"},"%u":function(t){return t.Tb||7},"%U":function(t){return u(Math.floor((t.Wb+7-t.Tb)/7),2)},"%V":function(t){var e=Math.floor((t.Wb+7-(t.Tb+6)%7)/7);if(2>=(t.Tb+371-t.Wb-2)%7&&e++,e)53==e&&(4==(n=(t.Tb+371-t.Wb)%7)||3==n&&ue(t.Xb)||(e=1));else{e=52;var n=(t.Tb+7-t.Wb-1)%7;(4==n||5==n&&ue(t.Xb%400-1))&&e++}return u(e,2)},"%w":function(t){return t.Tb},"%W":function(t){return u(Math.floor((t.Wb+7-(t.Tb+6)%7)/7),2)},"%y":function(t){return(t.Xb+1900).toString().substring(2)},"%Y":function(t){return t.Xb+1900},"%z":function(t){var e=0<=(t=t.Jc);return t=Math.abs(t)/60,(e?"+":"-")+String("0000"+(t/60*100+t%60)).slice(-4)},"%Z":function(t){return t.Mc},"%%":function(){return"%"}},r=r.replace(/%%/g,"\\0\\0"),f)r.includes(p)&&(r=r.replace(new RegExp(p,"g"),f[p](i)));return p=function(t){var e=Array(G(t)+1);return B(t,e,0,e.length),e}(r=r.replace(/\\0\\0/g,"%")),p.length>n?0:(function(t,n){e().set(t,n>>>0)}(p,t),p.length-1)}ht.fc();var fe=[null,ft,bt,Et,Ct,xt,Rt,jt,kt,Dt,Pt,Ut,Ft,It,Wt,Ht,Lt,Bt,Gt,Vt,Qt,Kt,te,ee,ne,ie],pe={b:function(t){return de(t+24)+24},n:function(t){return(t=new St(t)).uc()||(t.hc(!0),Ot--),t.ic(!1),_t.push(t),t.sc(),t.vc()},ma:function(t){throw x("Unexpected exception thrown, this is not properly supported - aborting"),H=!0,t},x:function(){Se(0);var t=_t.pop();if(t.Hc()&&!t.kc()){var e=t.Dc();e&>(e)(t.Zb),Tt(t.Zb)}At=0},e:function(){var t=At;if(!t)return oe=0;var e=new St(t);e.cc(t);var n=e.bc();if(!n)return oe=0,t;for(var r=Array.prototype.slice.call(arguments),a=0;azt(r)));else if(O)postMessage({targetThread:t,cmd:"processProxyingQueue",queue:r});else{if(!(t=ht.Vb[t]))return;t.postMessage({cmd:"processProxyingQueue",queue:r})}return 1},Ea:function(){return-1},Pa:function(t,e){t=new Date(1e3*Yt(t)),a()[e>>2>>>0]=t.getUTCSeconds(),a()[e+4>>2>>>0]=t.getUTCMinutes(),a()[e+8>>2>>>0]=t.getUTCHours(),a()[e+12>>2>>>0]=t.getUTCDate(),a()[e+16>>2>>>0]=t.getUTCMonth(),a()[e+20>>2>>>0]=t.getUTCFullYear()-1900,a()[e+24>>2>>>0]=t.getUTCDay(),t=(t.getTime()-Date.UTC(t.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,a()[e+28>>2>>>0]=t},Qa:function(t,e){t=new Date(1e3*Yt(t)),a()[e>>2>>>0]=t.getSeconds(),a()[e+4>>2>>>0]=t.getMinutes(),a()[e+8>>2>>>0]=t.getHours(),a()[e+12>>2>>>0]=t.getDate(),a()[e+16>>2>>>0]=t.getMonth(),a()[e+20>>2>>>0]=t.getFullYear()-1900,a()[e+24>>2>>>0]=t.getDay();var n=new Date(t.getFullYear(),0,1),r=(t.getTime()-n.getTime())/864e5|0;a()[e+28>>2>>>0]=r,a()[e+36>>2>>>0]=-60*t.getTimezoneOffset(),r=new Date(t.getFullYear(),6,1).getTimezoneOffset(),t=0|(r!=(n=n.getTimezoneOffset())&&t.getTimezoneOffset()==Math.min(n,r)),a()[e+32>>2>>>0]=t},Ra:function(t){var e=new Date(a()[t+20>>2>>>0]+1900,a()[t+16>>2>>>0],a()[t+12>>2>>>0],a()[t+8>>2>>>0],a()[t+4>>2>>>0],a()[t>>2>>>0],0),n=a()[t+32>>2>>>0],r=e.getTimezoneOffset(),i=new Date(e.getFullYear(),0,1),o=new Date(e.getFullYear(),6,1).getTimezoneOffset(),u=i.getTimezoneOffset(),c=Math.min(u,o);return 0>n?a()[t+32>>2>>>0]=Number(o!=u&&c==r):0>2>>>0]=e.getDay(),n=(e.getTime()-i.getTime())/864e5|0,a()[t+28>>2>>>0]=n,a()[t>>2>>>0]=e.getSeconds(),a()[t+4>>2>>>0]=e.getMinutes(),a()[t+8>>2>>>0]=e.getHours(),a()[t+12>>2>>>0]=e.getDate(),a()[t+16>>2>>>0]=e.getMonth(),e.getTime()/1e3|0},Aa:Bt,Ba:Gt,Sa:function t(e,n,r){t.Ac||(t.Ac=!0,Vt(e,n,r))},y:function(){at("")},U:function(){if(!_&&!w){var t="Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread";vt||(vt={}),vt[t]||(vt[t]=1,_&&(t="warning: "+t),x(t))}},ra:function(){return 4294901760},B:wt,Ia:function(t,e,n){r().copyWithin(t>>>0,e>>>0,e+n>>>0)},F:function(){return _?n(993).cpus().length:navigator.hardwareConcurrency},Da:function(t,e,n){Xt.length=e,n>>=3;for(var r=0;r>>0];return(0>t?ut[-t-1]:fe[t]).apply(null,Xt)},qa:function(t){var e=r().length;if((t>>>=0)<=e||4294901760=n;n*=2){var a=e*(1+.2/n);a=Math.min(a,t+100663296);var i=Math;a=Math.max(t,a),i=i.min.call(i,4294901760,a+(65536-a%65536)%65536);t:{try{j.grow(i-D.byteLength+65535>>>16),N(j.buffer);var o=1;break t}catch(t){}o=void 0}if(o)return!0}return!1},Na:function(){throw"unwind"},Ga:Qt,Ha:Kt,J:pt,I:te,S:ee,ga:ne,R:ie,d:function(){return oe},na:function t(r,a){t.lc||(t.lc=function(){if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues){var t=new Uint8Array(1);return()=>(crypto.getRandomValues(t),t[0])}if(_)try{var e=n(Object(function(){var t=new Error("Cannot find module \'crypto\'");throw t.code="MODULE_NOT_FOUND",t}()));return()=>e.randomBytes(1)[0]}catch(t){}return()=>at("randomDevice")}());for(var i=0;i>0>>>0]=t.lc();return 0},ia:function(t,e,n){var r=Ee();try{return gt(t)(e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},ja:function(t,e,n){var r=Ee();try{return gt(t)(e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},K:function(t){var e=Ee();try{return gt(t)()}catch(t){if(Me(e),t!==t+0)throw t;Se(1,0)}},f:function(t,e){var n=Ee();try{return gt(t)(e)}catch(t){if(Me(n),t!==t+0)throw t;Se(1,0)}},P:function(t,e,n){var r=Ee();try{return gt(t)(e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},Q:function(t,e,n){var r=Ee();try{return gt(t)(e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},k:function(t,e,n){var r=Ee();try{return gt(t)(e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},p:function(t,e,n,r){var a=Ee();try{return gt(t)(e,n,r)}catch(t){if(Me(a),t!==t+0)throw t;Se(1,0)}},q:function(t,e,n,r,a){var i=Ee();try{return gt(t)(e,n,r,a)}catch(t){if(Me(i),t!==t+0)throw t;Se(1,0)}},N:function(t,e,n,r,a,i){var o=Ee();try{return gt(t)(e,n,r,a,i)}catch(t){if(Me(o),t!==t+0)throw t;Se(1,0)}},s:function(t,e,n,r,a,i){var o=Ee();try{return gt(t)(e,n,r,a,i)}catch(t){if(Me(o),t!==t+0)throw t;Se(1,0)}},w:function(t,e,n,r,a,i,o){var u=Ee();try{return gt(t)(e,n,r,a,i,o)}catch(t){if(Me(u),t!==t+0)throw t;Se(1,0)}},L:function(t,e,n,r,a,i,o,u){var c=Ee();try{return gt(t)(e,n,r,a,i,o,u)}catch(t){if(Me(c),t!==t+0)throw t;Se(1,0)}},E:function(t,e,n,r,a,i,o,u,c,s,l,f){var p=Ee();try{return gt(t)(e,n,r,a,i,o,u,c,s,l,f)}catch(t){if(Me(p),t!==t+0)throw t;Se(1,0)}},aa:function(t,e,n,r,a,i,o,u){var c=Ee();try{return He(t,e,n,r,a,i,o,u)}catch(t){if(Me(c),t!==t+0)throw t;Se(1,0)}},_:function(t,e,n,r,a,i,o){var u=Ee();try{return ke(t,e,n,r,a,i,o)}catch(t){if(Me(u),t!==t+0)throw t;Se(1,0)}},Z:function(t,e,n,r,a){var i=Ee();try{return Le(t,e,n,r,a)}catch(t){if(Me(i),t!==t+0)throw t;Se(1,0)}},ca:function(t,e,n,r){var a=Ee();try{return Ie(t,e,n,r)}catch(t){if(Me(a),t!==t+0)throw t;Se(1,0)}},$:function(t){var e=Ee();try{return je(t)}catch(t){if(Me(e),t!==t+0)throw t;Se(1,0)}},ba:function(t,e){var n=Ee();try{return We(t,e)}catch(t){if(Me(n),t!==t+0)throw t;Se(1,0)}},Y:function(t,e,n){var r=Ee();try{return De(t,e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},g:function(t){var e=Ee();try{gt(t)()}catch(t){if(Me(e),t!==t+0)throw t;Se(1,0)}},r:function(t,e){var n=Ee();try{gt(t)(e)}catch(t){if(Me(n),t!==t+0)throw t;Se(1,0)}},i:function(t,e,n){var r=Ee();try{gt(t)(e,n)}catch(t){if(Me(r),t!==t+0)throw t;Se(1,0)}},ha:function(t,e,n,r){var a=Ee();try{gt(t)(e,n,r)}catch(t){if(Me(a),t!==t+0)throw t;Se(1,0)}},m:function(t,e,n,r){var a=Ee();try{gt(t)(e,n,r)}catch(t){if(Me(a),t!==t+0)throw t;Se(1,0)}},v:function(t,e,n,r,a){var i=Ee();try{gt(t)(e,n,r,a)}catch(t){if(Me(i),t!==t+0)throw t;Se(1,0)}},u:function(t,e,n,r,a,i){var o=Ee();try{gt(t)(e,n,r,a,i)}catch(t){if(Me(o),t!==t+0)throw t;Se(1,0)}},O:function(t,e,n,r,a,i,o){var u=Ee();try{gt(t)(e,n,r,a,i,o)}catch(t){if(Me(u),t!==t+0)throw t;Se(1,0)}},A:function(t,e,n,r,a,i,o,u){var c=Ee();try{gt(t)(e,n,r,a,i,o,u)}catch(t){if(Me(c),t!==t+0)throw t;Se(1,0)}},ka:function(t,e,n,r,a,i,o,u,c){var s=Ee();try{gt(t)(e,n,r,a,i,o,u,c)}catch(t){if(Me(s),t!==t+0)throw t;Se(1,0)}},C:function(t,e,n,r,a,i,o,u,c,s,l){var f=Ee();try{gt(t)(e,n,r,a,i,o,u,c,s,l)}catch(t){if(Me(f),t!==t+0)throw t;Se(1,0)}},D:function(t,e,n,r,a,i,o,u,c,s,l,f,p,h,d,y){var b=Ee();try{gt(t)(e,n,r,a,i,o,u,c,s,l,f,p,h,d,y)}catch(t){if(Me(b),t!==t+0)throw t;Se(1,0)}},fa:function(t,e,n,r,a,i,o,u){var c=Ee();try{Pe(t,e,n,r,a,i,o,u)}catch(t){if(Me(c),t!==t+0)throw t;Se(1,0)}},da:function(t,e,n,r,a,i,o,u,c,s,l,f){var p=Ee();try{Fe(t,e,n,r,a,i,o,u,c,s,l,f)}catch(t){if(Me(p),t!==t+0)throw t;Se(1,0)}},ea:function(t,e,n,r,a,i){var o=Ee();try{Ue(t,e,n,r,a,i)}catch(t){if(Me(o),t!==t+0)throw t;Se(1,0)}},o:function(t){return t},a:j||u.wasmMemory,G:function(t){oe=t},la:le,z:function(t,e,n,r){return le(t,e,n,r)}};!function(){function t(t,e){u.asm=t.exports,ht.qc.push(u.asm.sb),$=u.asm.ub,X.unshift(u.asm.Va),k=e,O||(et--,u.monitorRunDependencies&&u.monitorRunDependencies(et),0==et&&(null!==nt&&(clearInterval(nt),nt=null),rt&&(t=rt,rt=null,t())))}function e(e){t(e.instance,e.module)}function n(t){return function(){if(!M&&(v||w)){if("function"==typeof fetch&&!tt.startsWith("file://"))return fetch(tt,{credentials:"same-origin"}).then((function(t){if(!t.ok)throw"failed to load wasm binary file at \'"+tt+"\'";return t.arrayBuffer()})).catch((function(){return ot()}));if(f)return new Promise((function(t,e){f(tt,(function(e){t(new Uint8Array(e))}),e)}))}return Promise.resolve().then((function(){return ot()}))}().then((function(t){return WebAssembly.instantiate(t,r)})).then((function(t){return t})).then(t,(function(t){x("failed to asynchronously prepare wasm: "+t),at(t)}))}var r={a:pe};if(O||(et++,u.monitorRunDependencies&&u.monitorRunDependencies(et)),u.instantiateWasm)try{return u.instantiateWasm(r,t)}catch(t){return x("Module.instantiateWasm callback failed with error: "+t),!1}(M||"function"!=typeof WebAssembly.instantiateStreaming||it()||tt.startsWith("file://")||_||"function"!=typeof fetch?n(e):fetch(tt,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,r).then(e,(function(t){return x("wasm streaming compile failed: "+t),x("falling back to ArrayBuffer instantiation"),n(e)}))}))).catch(s)}(),u.___wasm_call_ctors=function(){return(u.___wasm_call_ctors=u.asm.Va).apply(null,arguments)},u._OrtInit=function(){return(u._OrtInit=u.asm.Wa).apply(null,arguments)},u._OrtCreateSessionOptions=function(){return(u._OrtCreateSessionOptions=u.asm.Xa).apply(null,arguments)},u._OrtAppendExecutionProvider=function(){return(u._OrtAppendExecutionProvider=u.asm.Ya).apply(null,arguments)},u._OrtAddSessionConfigEntry=function(){return(u._OrtAddSessionConfigEntry=u.asm.Za).apply(null,arguments)},u._OrtReleaseSessionOptions=function(){return(u._OrtReleaseSessionOptions=u.asm._a).apply(null,arguments)},u._OrtCreateSession=function(){return(u._OrtCreateSession=u.asm.$a).apply(null,arguments)},u._OrtReleaseSession=function(){return(u._OrtReleaseSession=u.asm.ab).apply(null,arguments)},u._OrtGetInputCount=function(){return(u._OrtGetInputCount=u.asm.bb).apply(null,arguments)},u._OrtGetOutputCount=function(){return(u._OrtGetOutputCount=u.asm.cb).apply(null,arguments)},u._OrtGetInputName=function(){return(u._OrtGetInputName=u.asm.db).apply(null,arguments)},u._OrtGetOutputName=function(){return(u._OrtGetOutputName=u.asm.eb).apply(null,arguments)},u._OrtFree=function(){return(u._OrtFree=u.asm.fb).apply(null,arguments)},u._OrtCreateTensor=function(){return(u._OrtCreateTensor=u.asm.gb).apply(null,arguments)},u._OrtGetTensorData=function(){return(u._OrtGetTensorData=u.asm.hb).apply(null,arguments)},u._OrtReleaseTensor=function(){return(u._OrtReleaseTensor=u.asm.ib).apply(null,arguments)},u._OrtCreateRunOptions=function(){return(u._OrtCreateRunOptions=u.asm.jb).apply(null,arguments)},u._OrtAddRunConfigEntry=function(){return(u._OrtAddRunConfigEntry=u.asm.kb).apply(null,arguments)},u._OrtReleaseRunOptions=function(){return(u._OrtReleaseRunOptions=u.asm.lb).apply(null,arguments)},u._OrtRun=function(){return(u._OrtRun=u.asm.mb).apply(null,arguments)},u._OrtEndProfiling=function(){return(u._OrtEndProfiling=u.asm.nb).apply(null,arguments)};var he=u._pthread_self=function(){return(he=u._pthread_self=u.asm.ob).apply(null,arguments)},de=u._malloc=function(){return(de=u._malloc=u.asm.pb).apply(null,arguments)},ye=u._free=function(){return(ye=u._free=u.asm.qb).apply(null,arguments)},be=u._fflush=function(){return(be=u._fflush=u.asm.rb).apply(null,arguments)};u.__emscripten_tls_init=function(){return(u.__emscripten_tls_init=u.asm.sb).apply(null,arguments)};var me=u.___funcs_on_exit=function(){return(me=u.___funcs_on_exit=u.asm.tb).apply(null,arguments)},ge=u.__emscripten_thread_init=function(){return(ge=u.__emscripten_thread_init=u.asm.vb).apply(null,arguments)};u.__emscripten_thread_crashed=function(){return(u.__emscripten_thread_crashed=u.asm.wb).apply(null,arguments)};var ve,we=u._emscripten_run_in_main_runtime_thread_js=function(){return(we=u._emscripten_run_in_main_runtime_thread_js=u.asm.xb).apply(null,arguments)},_e=u.__emscripten_proxy_execute_task_queue=function(){return(_e=u.__emscripten_proxy_execute_task_queue=u.asm.yb).apply(null,arguments)},Oe=u.__emscripten_thread_free_data=function(){return(Oe=u.__emscripten_thread_free_data=u.asm.zb).apply(null,arguments)},Ae=u.__emscripten_thread_exit=function(){return(Ae=u.__emscripten_thread_exit=u.asm.Ab).apply(null,arguments)},Se=u._setThrew=function(){return(Se=u._setThrew=u.asm.Bb).apply(null,arguments)},Te=u._emscripten_stack_set_limits=function(){return(Te=u._emscripten_stack_set_limits=u.asm.Cb).apply(null,arguments)},Ee=u.stackSave=function(){return(Ee=u.stackSave=u.asm.Db).apply(null,arguments)},Me=u.stackRestore=function(){return(Me=u.stackRestore=u.asm.Eb).apply(null,arguments)},Ce=u.stackAlloc=function(){return(Ce=u.stackAlloc=u.asm.Fb).apply(null,arguments)},xe=u.___cxa_can_catch=function(){return(xe=u.___cxa_can_catch=u.asm.Gb).apply(null,arguments)},Re=u.___cxa_is_pointer_type=function(){return(Re=u.___cxa_is_pointer_type=u.asm.Hb).apply(null,arguments)},je=u.dynCall_j=function(){return(je=u.dynCall_j=u.asm.Ib).apply(null,arguments)},ke=u.dynCall_iiiiij=function(){return(ke=u.dynCall_iiiiij=u.asm.Jb).apply(null,arguments)},De=u.dynCall_jii=function(){return(De=u.dynCall_jii=u.asm.Kb).apply(null,arguments)},Pe=u.dynCall_viiiiij=function(){return(Pe=u.dynCall_viiiiij=u.asm.Lb).apply(null,arguments)},Ue=u.dynCall_vjji=function(){return(Ue=u.dynCall_vjji=u.asm.Mb).apply(null,arguments)},Fe=u.dynCall_viiijjjii=function(){return(Fe=u.dynCall_viiijjjii=u.asm.Nb).apply(null,arguments)},Ie=u.dynCall_iij=function(){return(Ie=u.dynCall_iij=u.asm.Ob).apply(null,arguments)},We=u.dynCall_ji=function(){return(We=u.dynCall_ji=u.asm.Pb).apply(null,arguments)},He=u.dynCall_iiiiiij=function(){return(He=u.dynCall_iiiiiij=u.asm.Qb).apply(null,arguments)},Le=u.dynCall_iiij=function(){return(Le=u.dynCall_iiij=u.asm.Rb).apply(null,arguments)};function ze(){function t(){if(!ve&&(ve=!0,u.calledRun=!0,!H)&&(O||dt(X),c(u),u.onRuntimeInitialized&&u.onRuntimeInitialized(),!O)){if(u.postRun)for("function"==typeof u.postRun&&(u.postRun=[u.postRun]);u.postRun.length;){var t=u.postRun.shift();Z.unshift(t)}dt(Z)}}if(!(0{var _scriptDir,r=(_scriptDir=(_scriptDir="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0)||"/index.js",function(t){var e,r,a;t=t||{},e||(e=void 0!==t?t:{}),e.ready=new Promise((function(t,e){r=t,a=e}));var i,o,u,c,s,l,f=Object.assign({},e),p="./this.program",h=(t,e)=>{throw e},d="object"==typeof window,y="function"==typeof importScripts,b="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,m="";b?(m=y?n(908).dirname(m)+"/":"//",l=()=>{s||(c=n(384),s=n(908))},i=function(t,e){return l(),t=s.normalize(t),c.readFileSync(t,e?void 0:"utf8")},u=t=>((t=i(t,!0)).buffer||(t=new Uint8Array(t)),t),o=(t,e,n)=>{l(),t=s.normalize(t),c.readFile(t,(function(t,r){t?n(t):e(r.buffer)}))},1{if(_||0{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.send(null),e.responseText},y&&(u=t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}),o=(t,e,n)=>{var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=()=>{200==r.status||0==r.status&&r.response?e(r.response):n()},r.onerror=n,r.send(null)});var g,v=e.print||console.log.bind(console),w=e.printErr||console.warn.bind(console);Object.assign(e,f),f=null,e.thisProgram&&(p=e.thisProgram),e.quit&&(h=e.quit),e.wasmBinary&&(g=e.wasmBinary);var _=e.noExitRuntime||!1;"object"!=typeof WebAssembly&&V("no native wasm support detected");var O,A,S,T,E,M,C=!1,x="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function R(t,e,n){var r=(e>>>=0)+n;for(n=e;t[n]&&!(n>=r);)++n;if(16(a=224==(240&a)?(15&a)<<12|i<<6|o:(7&a)<<18|i<<12|o<<6|63&t[e++])?r+=String.fromCharCode(a):(a-=65536,r+=String.fromCharCode(55296|a>>10,56320|1023&a))}}else r+=String.fromCharCode(a)}return r}function j(t,e){return(t>>>=0)?R(T,t,e):""}function k(t,e,n,r){if(!(0>>=0;r=n+r-1;for(var i=0;i=o&&(o=65536+((1023&o)<<10)|1023&t.charCodeAt(++i)),127>=o){if(n>=r)break;e[n++>>>0]=o}else{if(2047>=o){if(n+1>=r)break;e[n++>>>0]=192|o>>6}else{if(65535>=o){if(n+2>=r)break;e[n++>>>0]=224|o>>12}else{if(n+3>=r)break;e[n++>>>0]=240|o>>18,e[n++>>>0]=128|o>>12&63}e[n++>>>0]=128|o>>6&63}e[n++>>>0]=128|63&o}}return e[n>>>0]=0,n-a}function D(t){for(var e=0,n=0;n=r?e++:2047>=r?e+=2:55296<=r&&57343>=r?(e+=4,++n):e+=3}return e}function P(){var t=O.buffer;A=t,e.HEAP8=S=new Int8Array(t),e.HEAP16=new Int16Array(t),e.HEAP32=E=new Int32Array(t),e.HEAPU8=T=new Uint8Array(t),e.HEAPU16=new Uint16Array(t),e.HEAPU32=M=new Uint32Array(t),e.HEAPF32=new Float32Array(t),e.HEAPF64=new Float64Array(t)}var U,F=[],I=[],W=[],H=[],L=0;function z(){var t=e.preRun.shift();F.unshift(t)}var Y,B=0,G=null,N=null;function V(t){throw e.onAbort&&e.onAbort(t),w(t="Aborted("+t+")"),C=!0,t=new WebAssembly.RuntimeError(t+". Build with -sASSERTIONS for more info."),a(t),t}function $(){return Y.startsWith("data:application/octet-stream;base64,")}if(Y="ort-wasm.wasm",!$()){var q=Y;Y=e.locateFile?e.locateFile(q,m):m+q}function X(){var t=Y;try{if(t==Y&&g)return new Uint8Array(g);if(u)return u(t);throw"both async and sync fetching of the wasm failed"}catch(t){V(t)}}function J(t){this.name="ExitStatus",this.message="Program terminated with exit("+t+")",this.status=t}function Z(t){for(;0>2>>>0]=t},this.Eb=function(){return M[this.zb+4>>2>>>0]},this.Sb=function(t){M[this.zb+8>>2>>>0]=t},this.Wb=function(){return M[this.zb+8>>2>>>0]},this.Tb=function(){E[this.zb>>2>>>0]=0},this.Ib=function(t){S[this.zb+12>>0>>>0]=t?1:0},this.Pb=function(){return 0!=S[this.zb+12>>0>>>0]},this.Jb=function(t){S[this.zb+13>>0>>>0]=t?1:0},this.Lb=function(){return 0!=S[this.zb+13>>0>>>0]},this.Rb=function(t,e){this.Fb(0),this.Ub(t),this.Sb(e),this.Tb(),this.Ib(!1),this.Jb(!1)},this.Nb=function(){E[this.zb>>2>>>0]+=1},this.Xb=function(){var t=E[this.zb>>2>>>0];return E[this.zb>>2>>>0]=t-1,1===t},this.Fb=function(t){M[this.zb+16>>2>>>0]=t},this.Ob=function(){return M[this.zb+16>>2>>>0]},this.Qb=function(){if(Mt(this.Eb()))return M[this.Db>>2>>>0];var t=this.Ob();return 0!==t?t:this.Db}}function nt(t){return vt(new et(t).zb)}var rt=[];function at(t){var e=rt[t];return e||(t>=rt.length&&(rt.length=t+1),rt[t]=e=U.get(t)),e}function it(t){var e=D(t)+1,n=gt(e);return n&&k(t,S,n,e),n}var ot={};function ut(){if(!ct){var t,e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:p||"./this.program"};for(t in ot)void 0===ot[t]?delete e[t]:e[t]=ot[t];var n=[];for(t in e)n.push(t+"="+e[t]);ct=n}return ct}var ct,st=[null,[],[]];function lt(t,e){var n=st[t];0===e||10===e?((1===t?v:w)(R(n,0)),n.length=0):n.push(e)}var ft=0;function pt(t){return 0==t%4&&(0!=t%100||0==t%400)}var ht=[31,29,31,30,31,30,31,31,30,31,30,31],dt=[31,28,31,30,31,30,31,31,30,31,30,31];function yt(t,e,n,r){function a(t,e,n){for(t="number"==typeof t?t.toString():t||"";t.lengtht?-1:0r-t.getDate())){t.setDate(t.getDate()+e);break}e-=r-t.getDate()+1,t.setDate(1),11>n?t.setMonth(n+1):(t.setMonth(0),t.setFullYear(t.getFullYear()+1))}return n=new Date(t.getFullYear()+1,0,4),e=u(new Date(t.getFullYear(),0,4)),n=u(n),0>=o(e,t)?0>=o(n,t)?t.getFullYear()+1:t.getFullYear():t.getFullYear()-1}var s=E[r+40>>2>>>0];for(var l in r={$b:E[r>>2>>>0],Zb:E[r+4>>2>>>0],Gb:E[r+8>>2>>>0],Kb:E[r+12>>2>>>0],Hb:E[r+16>>2>>>0],Cb:E[r+20>>2>>>0],Ab:E[r+24>>2>>>0],Bb:E[r+28>>2>>>0],bc:E[r+32>>2>>>0],Yb:E[r+36>>2>>>0],ac:s?j(s):""},n=j(n),s={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})n=n.replace(new RegExp(l,"g"),s[l]);var f="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),p="January February March April May June July August September October November December".split(" ");for(l in s={"%a":function(t){return f[t.Ab].substring(0,3)},"%A":function(t){return f[t.Ab]},"%b":function(t){return p[t.Hb].substring(0,3)},"%B":function(t){return p[t.Hb]},"%C":function(t){return i((t.Cb+1900)/100|0,2)},"%d":function(t){return i(t.Kb,2)},"%e":function(t){return a(t.Kb,2," ")},"%g":function(t){return c(t).toString().substring(2)},"%G":function(t){return c(t)},"%H":function(t){return i(t.Gb,2)},"%I":function(t){return 0==(t=t.Gb)?t=12:12t.Gb?"AM":"PM"},"%S":function(t){return i(t.$b,2)},"%t":function(){return"\\t"},"%u":function(t){return t.Ab||7},"%U":function(t){return i(Math.floor((t.Bb+7-t.Ab)/7),2)},"%V":function(t){var e=Math.floor((t.Bb+7-(t.Ab+6)%7)/7);if(2>=(t.Ab+371-t.Bb-2)%7&&e++,e)53==e&&(4==(n=(t.Ab+371-t.Bb)%7)||3==n&&pt(t.Cb)||(e=1));else{e=52;var n=(t.Ab+7-t.Bb-1)%7;(4==n||5==n&&pt(t.Cb%400-1))&&e++}return i(e,2)},"%w":function(t){return t.Ab},"%W":function(t){return i(Math.floor((t.Bb+7-(t.Ab+6)%7)/7),2)},"%y":function(t){return(t.Cb+1900).toString().substring(2)},"%Y":function(t){return t.Cb+1900},"%z":function(t){var e=0<=(t=t.Yb);return t=Math.abs(t)/60,(e?"+":"-")+String("0000"+(t/60*100+t%60)).slice(-4)},"%Z":function(t){return t.ac},"%%":function(){return"%"}},n=n.replace(/%%/g,"\\0\\0"),s)n.includes(l)&&(n=n.replace(new RegExp(l,"g"),s[l](r)));return l=function(t){var e=Array(D(t)+1);return k(t,e,0,e.length),e}(n=n.replace(/\\0\\0/g,"%")),l.length>e?0:(S.set(l,t>>>0),l.length-1)}var bt={a:function(t){return gt(t+24)+24},m:function(t){return(t=new et(t)).Pb()||(t.Ib(!0),K--),t.Jb(!1),Q.push(t),t.Nb(),t.Qb()},ia:function(t){throw w("Unexpected exception thrown, this is not properly supported - aborting"),C=!0,t},w:function(){Ot(0);var t=Q.pop();if(t.Xb()&&!t.Lb()){var e=t.Wb();e&&at(e)(t.Db),nt(t.Db)}tt=0},d:function(){var t=tt;if(!t)return ft=0;var e=new et(t);e.Fb(t);var n=e.Eb();if(!n)return ft=0,t;for(var r=Array.prototype.slice.call(arguments),a=0;a>>2]+4294967296*E[t+4>>>2])),E[e>>2>>>0]=t.getUTCSeconds(),E[e+4>>2>>>0]=t.getUTCMinutes(),E[e+8>>2>>>0]=t.getUTCHours(),E[e+12>>2>>>0]=t.getUTCDate(),E[e+16>>2>>>0]=t.getUTCMonth(),E[e+20>>2>>>0]=t.getUTCFullYear()-1900,E[e+24>>2>>>0]=t.getUTCDay(),E[e+28>>2>>>0]=(t.getTime()-Date.UTC(t.getUTCFullYear(),0,1,0,0,0,0))/864e5|0},Ea:function(t,e){t=new Date(1e3*(M[t>>>2]+4294967296*E[t+4>>>2])),E[e>>2>>>0]=t.getSeconds(),E[e+4>>2>>>0]=t.getMinutes(),E[e+8>>2>>>0]=t.getHours(),E[e+12>>2>>>0]=t.getDate(),E[e+16>>2>>>0]=t.getMonth(),E[e+20>>2>>>0]=t.getFullYear()-1900,E[e+24>>2>>>0]=t.getDay();var n=new Date(t.getFullYear(),0,1);E[e+28>>2>>>0]=(t.getTime()-n.getTime())/864e5|0,E[e+36>>2>>>0]=-60*t.getTimezoneOffset();var r=new Date(t.getFullYear(),6,1).getTimezoneOffset();n=n.getTimezoneOffset(),E[e+32>>2>>>0]=0|(r!=n&&t.getTimezoneOffset()==Math.min(n,r))},Fa:function(t){var e=new Date(E[t+20>>2>>>0]+1900,E[t+16>>2>>>0],E[t+12>>2>>>0],E[t+8>>2>>>0],E[t+4>>2>>>0],E[t>>2>>>0],0),n=E[t+32>>2>>>0],r=e.getTimezoneOffset(),a=new Date(e.getFullYear(),0,1),i=new Date(e.getFullYear(),6,1).getTimezoneOffset(),o=a.getTimezoneOffset(),u=Math.min(o,i);return 0>n?E[t+32>>2>>>0]=Number(i!=o&&u==r):0>2>>>0]=e.getDay(),E[t+28>>2>>>0]=(e.getTime()-a.getTime())/864e5|0,E[t>>2>>>0]=e.getSeconds(),E[t+4>>2>>>0]=e.getMinutes(),E[t+8>>2>>>0]=e.getHours(),E[t+12>>2>>>0]=e.getDate(),E[t+16>>2>>>0]=e.getMonth(),e.getTime()/1e3|0},sa:function(){return-52},ta:function(){},Ga:function t(e,n,r){t.Vb||(t.Vb=!0,function(t,e,n){function r(t){return(t=t.toTimeString().match(/\\(([A-Za-z ]+)\\)$/))?t[1]:"GMT"}var a=(new Date).getFullYear(),i=new Date(a,0,1),o=new Date(a,6,1);a=i.getTimezoneOffset();var u=o.getTimezoneOffset();E[t>>2>>>0]=60*Math.max(a,u),E[e>>2>>>0]=Number(a!=u),t=r(i),e=r(o),t=it(t),e=it(e),u>2>>>0]=t,M[n+4>>2>>>0]=e):(M[n>>2>>>0]=e,M[n+4>>2>>>0]=t)}(e,n,r))},B:function(){V("")},ma:function(){return 4294901760},I:b?()=>{var t=process.hrtime();return 1e3*t[0]+t[1]/1e6}:()=>performance.now(),xa:function(t,e,n){T.copyWithin(t>>>0,e>>>0,e+n>>>0)},G:function(t){var e=T.length;if(4294901760<(t>>>=0))return!1;for(var n=1;4>=n;n*=2){var r=e*(1+.2/n);r=Math.min(r,t+100663296);var a=Math;r=Math.max(t,r),a=a.min.call(a,4294901760,r+(65536-r%65536)%65536);t:{try{O.grow(a-A.byteLength+65535>>>16),P();var i=1;break t}catch(t){}i=void 0}if(i)return!0}return!1},va:function(t,e){var n=0;return ut().forEach((function(r,a){var i=e+n;for(a=M[t+4*a>>2>>>0]=i,i=0;i>0>>>0]=r.charCodeAt(i);S[a>>0>>>0]=0,n+=r.length+1})),0},wa:function(t,e){var n=ut();M[t>>2>>>0]=n.length;var r=0;return n.forEach((function(t){r+=t.length+1})),M[e>>2>>>0]=r,0},ba:function(t){_||0>2>>>0],u=M[e+4>>2>>>0];e+=8;for(var c=0;c>>0]);a+=u}return M[r>>2>>>0]=a,0},c:function(){return ft},ja:function t(e,r){t.Mb||(t.Mb=function(){if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues){var t=new Uint8Array(1);return()=>(crypto.getRandomValues(t),t[0])}if(b)try{var e=n(Object(function(){var t=new Error("Cannot find module \'crypto\'");throw t.code="MODULE_NOT_FOUND",t}()));return()=>e.randomBytes(1)[0]}catch(t){}return()=>V("randomDevice")}());for(var a=0;a>0>>>0]=t.Mb();return 0},ea:function(t,e,n){var r=At();try{return at(t)(e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},fa:function(t,e,n){var r=At();try{return at(t)(e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},J:function(t){var e=At();try{return at(t)()}catch(t){if(St(e),t!==t+0)throw t;Ot(1,0)}},e:function(t,e){var n=At();try{return at(t)(e)}catch(t){if(St(n),t!==t+0)throw t;Ot(1,0)}},N:function(t,e,n){var r=At();try{return at(t)(e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},O:function(t,e,n){var r=At();try{return at(t)(e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},j:function(t,e,n){var r=At();try{return at(t)(e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},o:function(t,e,n,r){var a=At();try{return at(t)(e,n,r)}catch(t){if(St(a),t!==t+0)throw t;Ot(1,0)}},p:function(t,e,n,r,a){var i=At();try{return at(t)(e,n,r,a)}catch(t){if(St(i),t!==t+0)throw t;Ot(1,0)}},M:function(t,e,n,r,a,i){var o=At();try{return at(t)(e,n,r,a,i)}catch(t){if(St(o),t!==t+0)throw t;Ot(1,0)}},r:function(t,e,n,r,a,i){var o=At();try{return at(t)(e,n,r,a,i)}catch(t){if(St(o),t!==t+0)throw t;Ot(1,0)}},v:function(t,e,n,r,a,i,o){var u=At();try{return at(t)(e,n,r,a,i,o)}catch(t){if(St(u),t!==t+0)throw t;Ot(1,0)}},K:function(t,e,n,r,a,i,o,u){var c=At();try{return at(t)(e,n,r,a,i,o,u)}catch(t){if(St(c),t!==t+0)throw t;Ot(1,0)}},D:function(t,e,n,r,a,i,o,u,c,s,l,f){var p=At();try{return at(t)(e,n,r,a,i,o,u,c,s,l,f)}catch(t){if(St(p),t!==t+0)throw t;Ot(1,0)}},X:function(t,e,n,r,a,i,o,u){var c=At();try{return Ft(t,e,n,r,a,i,o,u)}catch(t){if(St(c),t!==t+0)throw t;Ot(1,0)}},V:function(t,e,n,r,a,i,o){var u=At();try{return xt(t,e,n,r,a,i,o)}catch(t){if(St(u),t!==t+0)throw t;Ot(1,0)}},U:function(t,e,n,r,a){var i=At();try{return It(t,e,n,r,a)}catch(t){if(St(i),t!==t+0)throw t;Ot(1,0)}},Z:function(t,e,n,r){var a=At();try{return Pt(t,e,n,r)}catch(t){if(St(a),t!==t+0)throw t;Ot(1,0)}},W:function(t){var e=At();try{return Ct(t)}catch(t){if(St(e),t!==t+0)throw t;Ot(1,0)}},Y:function(t,e){var n=At();try{return Ut(t,e)}catch(t){if(St(n),t!==t+0)throw t;Ot(1,0)}},T:function(t,e,n){var r=At();try{return Rt(t,e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},f:function(t){var e=At();try{at(t)()}catch(t){if(St(e),t!==t+0)throw t;Ot(1,0)}},q:function(t,e){var n=At();try{at(t)(e)}catch(t){if(St(n),t!==t+0)throw t;Ot(1,0)}},h:function(t,e,n){var r=At();try{at(t)(e,n)}catch(t){if(St(r),t!==t+0)throw t;Ot(1,0)}},da:function(t,e,n,r){var a=At();try{at(t)(e,n,r)}catch(t){if(St(a),t!==t+0)throw t;Ot(1,0)}},l:function(t,e,n,r){var a=At();try{at(t)(e,n,r)}catch(t){if(St(a),t!==t+0)throw t;Ot(1,0)}},t:function(t,e,n,r,a){var i=At();try{at(t)(e,n,r,a)}catch(t){if(St(i),t!==t+0)throw t;Ot(1,0)}},u:function(t,e,n,r,a,i){var o=At();try{at(t)(e,n,r,a,i)}catch(t){if(St(o),t!==t+0)throw t;Ot(1,0)}},x:function(t,e,n,r,a,i,o){var u=At();try{at(t)(e,n,r,a,i,o)}catch(t){if(St(u),t!==t+0)throw t;Ot(1,0)}},z:function(t,e,n,r,a,i,o,u){var c=At();try{at(t)(e,n,r,a,i,o,u)}catch(t){if(St(c),t!==t+0)throw t;Ot(1,0)}},ga:function(t,e,n,r,a,i,o,u,c){var s=At();try{at(t)(e,n,r,a,i,o,u,c)}catch(t){if(St(s),t!==t+0)throw t;Ot(1,0)}},A:function(t,e,n,r,a,i,o,u,c,s,l){var f=At();try{at(t)(e,n,r,a,i,o,u,c,s,l)}catch(t){if(St(f),t!==t+0)throw t;Ot(1,0)}},C:function(t,e,n,r,a,i,o,u,c,s,l,f,p,h,d,y){var b=At();try{at(t)(e,n,r,a,i,o,u,c,s,l,f,p,h,d,y)}catch(t){if(St(b),t!==t+0)throw t;Ot(1,0)}},aa:function(t,e,n,r,a,i,o,u){var c=At();try{jt(t,e,n,r,a,i,o,u)}catch(t){if(St(c),t!==t+0)throw t;Ot(1,0)}},_:function(t,e,n,r,a,i,o,u,c,s,l,f){var p=At();try{Dt(t,e,n,r,a,i,o,u,c,s,l,f)}catch(t){if(St(p),t!==t+0)throw t;Ot(1,0)}},$:function(t,e,n,r,a,i){var o=At();try{kt(t,e,n,r,a,i)}catch(t){if(St(o),t!==t+0)throw t;Ot(1,0)}},n:function(t){return t},F:function(t){ft=t},ha:yt,y:function(t,e,n,r){return yt(t,e,n,r)}};!function(){function t(t){e.asm=t.exports,O=e.asm.Ka,P(),U=e.asm.ib,I.unshift(e.asm.La),B--,e.monitorRunDependencies&&e.monitorRunDependencies(B),0==B&&(null!==G&&(clearInterval(G),G=null),N&&(t=N,N=null,t()))}function n(e){t(e.instance)}function r(t){return function(){if(!g&&(d||y)){if("function"==typeof fetch&&!Y.startsWith("file://"))return fetch(Y,{credentials:"same-origin"}).then((function(t){if(!t.ok)throw"failed to load wasm binary file at \'"+Y+"\'";return t.arrayBuffer()})).catch((function(){return X()}));if(o)return new Promise((function(t,e){o(Y,(function(e){t(new Uint8Array(e))}),e)}))}return Promise.resolve().then((function(){return X()}))}().then((function(t){return WebAssembly.instantiate(t,i)})).then((function(t){return t})).then(t,(function(t){w("failed to asynchronously prepare wasm: "+t),V(t)}))}var i={a:bt};if(B++,e.monitorRunDependencies&&e.monitorRunDependencies(B),e.instantiateWasm)try{return e.instantiateWasm(i,t)}catch(t){return w("Module.instantiateWasm callback failed with error: "+t),!1}(g||"function"!=typeof WebAssembly.instantiateStreaming||$()||Y.startsWith("file://")||b||"function"!=typeof fetch?r(n):fetch(Y,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,i).then(n,(function(t){return w("wasm streaming compile failed: "+t),w("falling back to ArrayBuffer instantiation"),r(n)}))}))).catch(a)}(),e.___wasm_call_ctors=function(){return(e.___wasm_call_ctors=e.asm.La).apply(null,arguments)},e._OrtInit=function(){return(e._OrtInit=e.asm.Ma).apply(null,arguments)},e._OrtCreateSessionOptions=function(){return(e._OrtCreateSessionOptions=e.asm.Na).apply(null,arguments)},e._OrtAppendExecutionProvider=function(){return(e._OrtAppendExecutionProvider=e.asm.Oa).apply(null,arguments)},e._OrtAddSessionConfigEntry=function(){return(e._OrtAddSessionConfigEntry=e.asm.Pa).apply(null,arguments)},e._OrtReleaseSessionOptions=function(){return(e._OrtReleaseSessionOptions=e.asm.Qa).apply(null,arguments)},e._OrtCreateSession=function(){return(e._OrtCreateSession=e.asm.Ra).apply(null,arguments)},e._OrtReleaseSession=function(){return(e._OrtReleaseSession=e.asm.Sa).apply(null,arguments)},e._OrtGetInputCount=function(){return(e._OrtGetInputCount=e.asm.Ta).apply(null,arguments)},e._OrtGetOutputCount=function(){return(e._OrtGetOutputCount=e.asm.Ua).apply(null,arguments)},e._OrtGetInputName=function(){return(e._OrtGetInputName=e.asm.Va).apply(null,arguments)},e._OrtGetOutputName=function(){return(e._OrtGetOutputName=e.asm.Wa).apply(null,arguments)},e._OrtFree=function(){return(e._OrtFree=e.asm.Xa).apply(null,arguments)},e._OrtCreateTensor=function(){return(e._OrtCreateTensor=e.asm.Ya).apply(null,arguments)},e._OrtGetTensorData=function(){return(e._OrtGetTensorData=e.asm.Za).apply(null,arguments)},e._OrtReleaseTensor=function(){return(e._OrtReleaseTensor=e.asm._a).apply(null,arguments)},e._OrtCreateRunOptions=function(){return(e._OrtCreateRunOptions=e.asm.$a).apply(null,arguments)},e._OrtAddRunConfigEntry=function(){return(e._OrtAddRunConfigEntry=e.asm.ab).apply(null,arguments)},e._OrtReleaseRunOptions=function(){return(e._OrtReleaseRunOptions=e.asm.bb).apply(null,arguments)},e._OrtRun=function(){return(e._OrtRun=e.asm.cb).apply(null,arguments)},e._OrtEndProfiling=function(){return(e._OrtEndProfiling=e.asm.db).apply(null,arguments)};var mt,gt=e._malloc=function(){return(gt=e._malloc=e.asm.eb).apply(null,arguments)},vt=e._free=function(){return(vt=e._free=e.asm.fb).apply(null,arguments)},wt=e._fflush=function(){return(wt=e._fflush=e.asm.gb).apply(null,arguments)},_t=e.___funcs_on_exit=function(){return(_t=e.___funcs_on_exit=e.asm.hb).apply(null,arguments)},Ot=e._setThrew=function(){return(Ot=e._setThrew=e.asm.jb).apply(null,arguments)},At=e.stackSave=function(){return(At=e.stackSave=e.asm.kb).apply(null,arguments)},St=e.stackRestore=function(){return(St=e.stackRestore=e.asm.lb).apply(null,arguments)},Tt=e.stackAlloc=function(){return(Tt=e.stackAlloc=e.asm.mb).apply(null,arguments)},Et=e.___cxa_can_catch=function(){return(Et=e.___cxa_can_catch=e.asm.nb).apply(null,arguments)},Mt=e.___cxa_is_pointer_type=function(){return(Mt=e.___cxa_is_pointer_type=e.asm.ob).apply(null,arguments)},Ct=e.dynCall_j=function(){return(Ct=e.dynCall_j=e.asm.pb).apply(null,arguments)},xt=e.dynCall_iiiiij=function(){return(xt=e.dynCall_iiiiij=e.asm.qb).apply(null,arguments)},Rt=e.dynCall_jii=function(){return(Rt=e.dynCall_jii=e.asm.rb).apply(null,arguments)},jt=e.dynCall_viiiiij=function(){return(jt=e.dynCall_viiiiij=e.asm.sb).apply(null,arguments)},kt=e.dynCall_vjji=function(){return(kt=e.dynCall_vjji=e.asm.tb).apply(null,arguments)},Dt=e.dynCall_viiijjjii=function(){return(Dt=e.dynCall_viiijjjii=e.asm.ub).apply(null,arguments)},Pt=e.dynCall_iij=function(){return(Pt=e.dynCall_iij=e.asm.vb).apply(null,arguments)},Ut=e.dynCall_ji=function(){return(Ut=e.dynCall_ji=e.asm.wb).apply(null,arguments)},Ft=e.dynCall_iiiiiij=function(){return(Ft=e.dynCall_iiiiiij=e.asm.xb).apply(null,arguments)},It=e.dynCall_iiij=function(){return(It=e.dynCall_iiij=e.asm.yb).apply(null,arguments)};function Wt(){function t(){if(!mt&&(mt=!0,e.calledRun=!0,!C)){if(Z(I),r(e),e.onRuntimeInitialized&&e.onRuntimeInitialized(),e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var t=e.postRun.shift();H.unshift(t)}Z(H)}}if(!(0{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.iterateExtraOptions=void 0,e.iterateExtraOptions=(t,n,r,a)=>{if("object"==typeof t&&null!==t){if(r.has(t))throw new Error("Circular reference in options");r.add(t)}Object.entries(t).forEach((([t,i])=>{const o=n?n+t:t;if("object"==typeof i)(0,e.iterateExtraOptions)(i,o+".",r,a);else if("string"==typeof i||"number"==typeof i)a(o,i.toString());else{if("boolean"!=typeof i)throw new Error("Can\'t handle extra config type: "+typeof i);a(o,i?"1":"0")}}))}},586:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setRunOptions=void 0;const r=n(967),a=n(983),i=n(361);e.setRunOptions=t=>{const e=(0,i.getInstance)();let n=0;const o=[],u=t||{};try{if(void 0===(null==t?void 0:t.logSeverityLevel))u.logSeverityLevel=2;else if("number"!=typeof t.logSeverityLevel||!Number.isInteger(t.logSeverityLevel)||t.logSeverityLevel<0||t.logSeverityLevel>4)throw new Error(`log serverity level is not valid: ${t.logSeverityLevel}`);if(void 0===(null==t?void 0:t.logVerbosityLevel))u.logVerbosityLevel=0;else if("number"!=typeof t.logVerbosityLevel||!Number.isInteger(t.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${t.logVerbosityLevel}`);void 0===(null==t?void 0:t.terminate)&&(u.terminate=!1);let i=0;if(void 0!==(null==t?void 0:t.tag)&&(i=(0,a.allocWasmString)(t.tag,o)),n=e._OrtCreateRunOptions(u.logSeverityLevel,u.logVerbosityLevel,!!u.terminate,i),0===n)throw new Error("Can\'t create run options");return void 0!==(null==t?void 0:t.extra)&&(0,r.iterateExtraOptions)(t.extra,"",new WeakSet,((t,r)=>{const i=(0,a.allocWasmString)(t,o),u=(0,a.allocWasmString)(r,o);if(0!==e._OrtAddRunConfigEntry(n,i,u))throw new Error(`Can\'t set a run config entry: ${t} - ${r}`)})),[n,o]}catch(t){throw 0!==n&&e._OrtReleaseRunOptions(n),o.forEach(e._free),t}}},919:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setSessionOptions=void 0;const r=n(967),a=n(983),i=n(361);e.setSessionOptions=t=>{const e=(0,i.getInstance)();let n=0;const o=[],u=t||{};(t=>{t.extra||(t.extra={}),t.extra.session||(t.extra.session={});const e=t.extra.session;e.use_ort_model_bytes_directly||(e.use_ort_model_bytes_directly="1")})(u);try{void 0===(null==t?void 0:t.graphOptimizationLevel)&&(u.graphOptimizationLevel="all");const c=(t=>{switch(t){case"disabled":return 0;case"basic":return 1;case"extended":return 2;case"all":return 99;default:throw new Error(`unsupported graph optimization level: ${t}`)}})(u.graphOptimizationLevel);void 0===(null==t?void 0:t.enableCpuMemArena)&&(u.enableCpuMemArena=!0),void 0===(null==t?void 0:t.enableMemPattern)&&(u.enableMemPattern=!0),void 0===(null==t?void 0:t.executionMode)&&(u.executionMode="sequential");const s=(t=>{switch(t){case"sequential":return 0;case"parallel":return 1;default:throw new Error(`unsupported execution mode: ${t}`)}})(u.executionMode);let l=0;if(void 0!==(null==t?void 0:t.logId)&&(l=(0,a.allocWasmString)(t.logId,o)),void 0===(null==t?void 0:t.logSeverityLevel))u.logSeverityLevel=2;else if("number"!=typeof t.logSeverityLevel||!Number.isInteger(t.logSeverityLevel)||t.logSeverityLevel<0||t.logSeverityLevel>4)throw new Error(`log serverity level is not valid: ${t.logSeverityLevel}`);if(void 0===(null==t?void 0:t.logVerbosityLevel))u.logVerbosityLevel=0;else if("number"!=typeof t.logVerbosityLevel||!Number.isInteger(t.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${t.logVerbosityLevel}`);if(void 0===(null==t?void 0:t.enableProfiling)&&(u.enableProfiling=!1),n=e._OrtCreateSessionOptions(c,!!u.enableCpuMemArena,!!u.enableMemPattern,s,!!u.enableProfiling,0,l,u.logSeverityLevel,u.logVerbosityLevel),0===n)throw new Error("Can\'t create session options");return(null==t?void 0:t.executionProviders)&&((t,e,n)=>{for(const r of e){let e="string"==typeof r?r:r.name;switch(e){case"xnnpack":e="XNNPACK";break;case"wasm":case"cpu":continue;default:throw new Error(`not supported EP: ${e}`)}const o=(0,a.allocWasmString)(e,n);if(0!==(0,i.getInstance)()._OrtAppendExecutionProvider(t,o))throw new Error(`Can\'t append execution provider: ${e}`)}})(n,t.executionProviders,o),void 0!==(null==t?void 0:t.extra)&&(0,r.iterateExtraOptions)(t.extra,"",new WeakSet,((t,r)=>{const i=(0,a.allocWasmString)(t,o),u=(0,a.allocWasmString)(r,o);if(0!==e._OrtAddSessionConfigEntry(n,i,u))throw new Error(`Can\'t set a session config entry: ${t} - ${r}`)})),[n,o]}catch(t){throw 0!==n&&e._OrtReleaseSessionOptions(n),o.forEach(e._free),t}}},983:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.allocWasmString=void 0;const r=n(361);e.allocWasmString=(t,e)=>{const n=(0,r.getInstance)(),a=n.lengthBytesUTF8(t)+1,i=n._malloc(a);return n.stringToUTF8(t,i,a),e.push(i),i}},349:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.extractTransferableBuffers=e.endProfiling=e.run=e.releaseSession=e.createSession=e.createSessionFinalize=e.createSessionAllocate=e.initOrt=void 0;const r=n(586),a=n(919),i=n(983),o=n(361);e.initOrt=(t,e)=>{const n=(0,o.getInstance)()._OrtInit(t,e);if(0!==n)throw new Error(`Can\'t initialize onnxruntime. error code = ${n}`)};const u=new Map;e.createSessionAllocate=t=>{const e=(0,o.getInstance)(),n=e._malloc(t.byteLength);return e.HEAPU8.set(t,n),[n,t.byteLength]},e.createSessionFinalize=(t,e)=>{const n=(0,o.getInstance)();let r=0,i=0,c=[];try{if([i,c]=(0,a.setSessionOptions)(e),r=n._OrtCreateSession(t[0],t[1],i),0===r)throw new Error("Can\'t create a session")}finally{n._free(t[0]),n._OrtReleaseSessionOptions(i),c.forEach(n._free)}const s=n._OrtGetInputCount(r),l=n._OrtGetOutputCount(r),f=[],p=[],h=[],d=[];for(let t=0;t{const r=(0,e.createSessionAllocate)(t);return(0,e.createSessionFinalize)(r,n)},e.releaseSession=t=>{const e=(0,o.getInstance)(),n=u.get(t);if(!n)throw new Error("invalid session id");const r=n[0],a=n[1],i=n[2];a.forEach(e._OrtFree),i.forEach(e._OrtFree),e._OrtReleaseSession(r),u.delete(t)};const c=t=>{switch(t){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"float32":return 1;case"float64":return 11;case"string":return 8;case"int64":return 7;case"uint64":return 13;default:throw new Error(`unsupported data type: ${t}`)}},s=t=>{switch(t){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 1:return"float32";case 11:return"float64";case 8:return"string";case 7:return"int64";case 13:return"uint64";default:throw new Error(`unsupported data type: ${t}`)}},l=t=>{switch(t){case"float32":return Float32Array;case"uint8":case"bool":return Uint8Array;case"int8":return Int8Array;case"uint16":return Uint16Array;case"int16":return Int16Array;case"int32":return Int32Array;case"float64":return Float64Array;case"uint32":return Uint32Array;case"int64":return BigInt64Array;case"uint64":return BigUint64Array;default:throw new Error(`unsupported type: ${t}`)}};e.run=(t,e,n,a,f)=>{const p=(0,o.getInstance)(),h=u.get(t);if(!h)throw new Error("invalid session id");const d=h[0],y=h[1],b=h[2],m=e.length,g=a.length;let v=0,w=[];const _=[],O=[];try{[v,w]=(0,r.setRunOptions)(f);for(let t=0;tp.HEAP32[t++]=e));const n=p._OrtCreateTensor(c(e),o,u,l,r.length);if(0===n)throw new Error("Can\'t create a tensor");_.push(n)}finally{p.stackRestore(s)}}const t=p.stackSave(),o=p.stackAlloc(4*m),u=p.stackAlloc(4*m),h=p.stackAlloc(4*g),A=p.stackAlloc(4*g);try{let n=o/4,r=u/4,i=h/4,c=A/4;for(let t=0;tt*e));if(a=s(o),"string"===a){const t=[];let e=i/4;for(let n=0;n{const e=(0,o.getInstance)(),n=u.get(t);if(!n)throw new Error("invalid session id");const r=n[0],a=e._OrtEndProfiling(r);if(0===a)throw new Error("Can\'t get an profile file name");e._OrtFree(a)},e.extractTransferableBuffers=t=>{const e=[];for(const n of t){const t=n[2];!Array.isArray(t)&&t.buffer&&e.push(t.buffer)}return e}},361:function(t,e,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(t,e,n,r){void 0===r&&(r=n);var a=Object.getOwnPropertyDescriptor(e,n);a&&!("get"in a?!e.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,a)}:function(t,e,n,r){void 0===r&&(r=n),t[r]=e[n]}),a=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),i=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&r(e,t,n);return a(e,t),e},o=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.dispose=e.getInstance=e.initializeWebAssembly=void 0;const u=i(n(449)),c=o(n(932)),s=n(474);let l,f=!1,p=!1,h=!1;const d=(t,e)=>e?t?"ort-wasm-simd-threaded.wasm":"ort-wasm-threaded.wasm":t?"ort-wasm-simd.wasm":"ort-wasm.wasm";e.initializeWebAssembly=async t=>{if(f)return Promise.resolve();if(p)throw new Error("multiple calls to \'initializeWebAssembly()\' detected.");if(h)throw new Error("previous call to \'initializeWebAssembly()\' failed.");p=!0;const e=t.initTimeout,r=t.numThreads,a=t.simd,i=r>1&&(()=>{try{return"undefined"!=typeof SharedArrayBuffer&&("undefined"!=typeof MessageChannel&&(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(t){return!1}})(),o=a&&(()=>{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(t){return!1}})(),y="string"==typeof t.wasmPaths?t.wasmPaths:void 0,b=d(!1,i),m=d(o,i),g="object"==typeof t.wasmPaths?t.wasmPaths[m]:void 0;let v=!1;const w=[];if(e>0&&w.push(new Promise((t=>{setTimeout((()=>{v=!0,t()}),e)}))),w.push(new Promise(((t,e)=>{const r=i?s:c.default,a={locateFile:(t,e)=>i&&t.endsWith(".worker.js")&&"undefined"!=typeof Blob?URL.createObjectURL(new Blob([n(154)],{type:"text/javascript"})):t===b?null!=g?g:(null!=y?y:e)+m:e+t};if(i)if("undefined"==typeof Blob)a.mainScriptUrlOrBlob=u.join("/","ort-wasm-threaded.js");else{const t=`var ortWasmThreaded=(function(){var _scriptDir;return ${r.toString()}})();`;a.mainScriptUrlOrBlob=new Blob([t],{type:"text/javascript"})}r(a).then((e=>{p=!1,f=!0,l=e,t()}),(t=>{p=!1,h=!0,e(t)}))}))),await Promise.race(w),v)throw new Error(`WebAssembly backend initializing failed due to timeout: ${e}ms`)},e.getInstance=()=>{if(f&&l)return l;throw new Error("WebAssembly is not initialized yet.")},e.dispose=()=>{var t;!f||p||h||(p=!0,null===(t=l.PThread)||void 0===t||t.terminateAllThreads(),l=void 0,p=!1,f=!1,h=!0)}},154:t=>{"use strict";t.exports=\'"use strict";var e={},t="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node;if(t){var r=require("worker_threads"),a=r.parentPort;a.on("message",(e=>onmessage({data:e})));var o=require("fs");Object.assign(global,{self:global,require:require,Module:e,location:{href:__filename},Worker:r.Worker,importScripts:function(e){(0,eval)(o.readFileSync(e,"utf8"))},postMessage:function(e){a.postMessage(e)},performance:global.performance||{now:function(){return Date.now()}}})}var s=!1,n=[],i=function(){var e=Array.prototype.slice.call(arguments).join(" ");t?o.writeSync(2,e+"\\\\n"):console.error(e)};self.alert=function(){var t=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:t,threadId:e._pthread_self()})},e.instantiateWasm=(t,r)=>{var a=new WebAssembly.Instance(e.wasmModule,t);return r(a),e.wasmModule=null,a.exports},self.onunhandledrejection=e=>{throw e.reason??e},self.onmessage=t=>{try{if("load"===t.data.cmd){if(e.wasmModule=t.data.wasmModule,e.wasmMemory=t.data.wasmMemory,e.buffer=e.wasmMemory.buffer,e.ENVIRONMENT_IS_PTHREAD=!0,"string"==typeof t.data.urlOrBlob)importScripts(t.data.urlOrBlob);else{var r=URL.createObjectURL(t.data.urlOrBlob);importScripts(r),URL.revokeObjectURL(r)}ortWasmThreaded(e).then((function(t){e=t}))}else if("run"===t.data.cmd){e.__performance_now_clock_drift=performance.now()-t.data.time,e.__emscripten_thread_init(t.data.pthread_ptr,0,0,1),e.establishStackSpace(),e.PThread.receiveObjectTransfer(t.data),e.PThread.threadInitTLS(),s||(n.forEach((t=>{e.executeNotifiedProxyingQueue(t)})),n=[],s=!0);try{e.invokeEntryPoint(t.data.start_routine,t.data.arg)}catch(t){if("unwind"!=t){if(!(t instanceof e.ExitStatus))throw t;e.keepRuntimeAlive()||e.__emscripten_thread_exit(t.status)}}}else"cancel"===t.data.cmd?e._pthread_self()&&e.__emscripten_thread_exit(-1):"setimmediate"===t.data.target||("processProxyingQueue"===t.data.cmd?s?e.executeNotifiedProxyingQueue(t.data.queue):n.push(t.data.queue):(i("worker.js received unknown command "+t.data.cmd),i(t.data)))}catch(t){throw i("worker.js onmessage() captured an uncaught exception: "+t),t&&t.stack&&i(t.stack),e.__emscripten_thread_crashed&&e.__emscripten_thread_crashed(),t}};\\n\'},384:()=>{},993:()=>{},908:()=>{},953:()=>{},925:()=>{},449:()=>{}},e={};function n(r){var a=e[r];if(void 0!==a)return a.exports;var i=e[r]={exports:{}};return t[r].call(i.exports,i,i.exports,n),i.exports}n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),(()=>{"use strict";const t=n(349),e=n(361);self.onmessage=n=>{switch(n.data.type){case"init-wasm":(0,e.initializeWebAssembly)(n.data.in).then((()=>postMessage({type:"init-wasm"})),(t=>postMessage({type:"init-wasm",err:t})));break;case"init-ort":try{const{numThreads:e,loggingLevel:r}=n.data.in;(0,t.initOrt)(e,r),postMessage({type:"init-ort"})}catch(t){postMessage({type:"init-ort",err:t})}break;case"create_allocate":try{const{model:e}=n.data.in,r=(0,t.createSessionAllocate)(e);postMessage({type:"create_allocate",out:r})}catch(t){postMessage({type:"create_allocate",err:t})}break;case"create_finalize":try{const{modeldata:e,options:r}=n.data.in,a=(0,t.createSessionFinalize)(e,r);postMessage({type:"create_finalize",out:a})}catch(t){postMessage({type:"create_finalize",err:t})}break;case"create":try{const{model:e,options:r}=n.data.in,a=(0,t.createSession)(e,r);postMessage({type:"create",out:a})}catch(t){postMessage({type:"create",err:t})}break;case"release":try{const e=n.data.in;(0,t.releaseSession)(e),postMessage({type:"release"})}catch(t){postMessage({type:"release",err:t})}break;case"run":try{const{sessionId:e,inputIndices:r,inputs:a,outputIndices:i,options:o}=n.data.in,u=(0,t.run)(e,r,a,i,o);postMessage({type:"run",out:u},(0,t.extractTransferableBuffers)(u))}catch(t){postMessage({type:"run",err:t})}break;case"end-profiling":try{const e=n.data.in;(0,t.endProfiling)(e),postMessage({type:"end-profiling"})}catch(t){postMessage({type:"end-profiling",err:t})}}}})()})();\n',`Worker`,void 0,void 0)}},477:t=>{"use strict";t.exports=function(t$1,e$3,n$2,r$2){var i$1=self||window;try{try{var o$1;try{o$1=new i$1.Blob([t$1])}catch{(o$1=new(i$1.BlobBuilder||i$1.WebKitBlobBuilder||i$1.MozBlobBuilder||i$1.MSBlobBuilder)).append(t$1),o$1=o$1.getBlob()}var a$2=i$1.URL||i$1.webkitURL,s$1=a$2.createObjectURL(o$1),u$1=new i$1[e$3](s$1,n$2);return a$2.revokeObjectURL(s$1),u$1}catch{return new i$1[e$3](`data:application/javascript,${encodeURIComponent(t$1)}`,n$2)}}catch{if(!r$2)throw Error(`Inline worker is not supported`);return new i$1[e$3](r$2,n$2)}}},4154:t=>{"use strict";t.exports=`"use strict";var e={},t="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node;if(t){var r=require("worker_threads"),a=r.parentPort;a.on("message",(e=>onmessage({data:e})));var o=require("fs");Object.assign(global,{self:global,require:require,Module:e,location:{href:__filename},Worker:r.Worker,importScripts:function(e){(0,eval)(o.readFileSync(e,"utf8"))},postMessage:function(e){a.postMessage(e)},performance:global.performance||{now:function(){return Date.now()}}})}var s=!1,n=[],i=function(){var e=Array.prototype.slice.call(arguments).join(" ");t?o.writeSync(2,e+"\\n"):console.error(e)};self.alert=function(){var t=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:t,threadId:e._pthread_self()})},e.instantiateWasm=(t,r)=>{var a=new WebAssembly.Instance(e.wasmModule,t);return r(a),e.wasmModule=null,a.exports},self.onunhandledrejection=e=>{throw e.reason??e},self.onmessage=t=>{try{if("load"===t.data.cmd){if(e.wasmModule=t.data.wasmModule,e.wasmMemory=t.data.wasmMemory,e.buffer=e.wasmMemory.buffer,e.ENVIRONMENT_IS_PTHREAD=!0,"string"==typeof t.data.urlOrBlob)importScripts(t.data.urlOrBlob);else{var r=URL.createObjectURL(t.data.urlOrBlob);importScripts(r),URL.revokeObjectURL(r)}ortWasmThreaded(e).then((function(t){e=t}))}else if("run"===t.data.cmd){e.__performance_now_clock_drift=performance.now()-t.data.time,e.__emscripten_thread_init(t.data.pthread_ptr,0,0,1),e.establishStackSpace(),e.PThread.receiveObjectTransfer(t.data),e.PThread.threadInitTLS(),s||(n.forEach((t=>{e.executeNotifiedProxyingQueue(t)})),n=[],s=!0);try{e.invokeEntryPoint(t.data.start_routine,t.data.arg)}catch(t){if("unwind"!=t){if(!(t instanceof e.ExitStatus))throw t;e.keepRuntimeAlive()||e.__emscripten_thread_exit(t.status)}}}else"cancel"===t.data.cmd?e._pthread_self()&&e.__emscripten_thread_exit(-1):"setimmediate"===t.data.target||("processProxyingQueue"===t.data.cmd?s?e.executeNotifiedProxyingQueue(t.data.queue):n.push(t.data.queue):(i("worker.js received unknown command "+t.data.cmd),i(t.data)))}catch(t){throw i("worker.js onmessage() captured an uncaught exception: "+t),t&&t.stack&&i(t.stack),e.__emscripten_thread_crashed&&e.__emscripten_thread_crashed(),t}}; -`},1670:t=>{"use strict";t.exports=__WEBPACK_EXTERNAL_MODULE__1670__},7067:()=>{},1296:()=>{},1384:()=>{},3993:()=>{},908:()=>{},6953:()=>{},9925:()=>{},2806:()=>{},6449:()=>{},2850:()=>{},5381:()=>{},5686:(t,e$3,n$2)=>{"use strict";n$2.r(e$3),n$2.d(e$3,{flatbuffers:()=>r$2});var r$2={};r$2.Offset,r$2.Table,r$2.SIZEOF_SHORT=2,r$2.SIZEOF_INT=4,r$2.FILE_IDENTIFIER_LENGTH=4,r$2.SIZE_PREFIX_LENGTH=4,r$2.Encoding={UTF8_BYTES:1,UTF16_STRING:2},r$2.int32=new Int32Array(2),r$2.float32=new Float32Array(r$2.int32.buffer),r$2.float64=new Float64Array(r$2.int32.buffer),r$2.isLittleEndian=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1,r$2.Long=function(t$1,e$4){this.low=0|t$1,this.high=0|e$4},r$2.Long.create=function(t$1,e$4){return t$1==0&&e$4==0?r$2.Long.ZERO:new r$2.Long(t$1,e$4)},r$2.Long.prototype.toFloat64=function(){return(this.low>>>0)+4294967296*this.high},r$2.Long.prototype.equals=function(t$1){return this.low==t$1.low&&this.high==t$1.high},r$2.Long.ZERO=new r$2.Long(0,0),r$2.Builder=function(t$1){if(t$1)e$4=t$1;else var e$4=1024;this.bb=r$2.ByteBuffer.allocate(e$4),this.space=e$4,this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1},r$2.Builder.prototype.clear=function(){this.bb.clear(),this.space=this.bb.capacity(),this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1},r$2.Builder.prototype.forceDefaults=function(t$1){this.force_defaults=t$1},r$2.Builder.prototype.dataBuffer=function(){return this.bb},r$2.Builder.prototype.asUint8Array=function(){return this.bb.bytes().subarray(this.bb.position(),this.bb.position()+this.offset())},r$2.Builder.prototype.prep=function(t$1,e$4){t$1>this.minalign&&(this.minalign=t$1);for(var n$3=1+~(this.bb.capacity()-this.space+e$4)&t$1-1;this.space=0&&this.vtable[e$4]==0;e$4--);for(var n$3=e$4+1;e$4>=0;e$4--)this.addInt16(this.vtable[e$4]==0?0:t$1-this.vtable[e$4]);this.addInt16(t$1-this.object_start);var i$1=(n$3+2)*r$2.SIZEOF_SHORT;this.addInt16(i$1);var o$1=0,a$2=this.space;t:for(e$4=0;e$4=0;a$2--)this.writeInt8(o$1.charCodeAt(a$2))}this.prep(this.minalign,r$2.SIZEOF_INT+i$1),this.addOffset(t$1),i$1&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)},r$2.Builder.prototype.finishSizePrefixed=function(t$1,e$4){this.finish(t$1,e$4,!0)},r$2.Builder.prototype.requiredField=function(t$1,e$4){var n$3=this.bb.capacity()-t$1,r$3=n$3-this.bb.readInt32(n$3);if(this.bb.readInt16(r$3+e$4)==0)throw Error(`FlatBuffers: field `+e$4+` must be set`)},r$2.Builder.prototype.startVector=function(t$1,e$4,n$3){this.notNested(),this.vector_num_elems=e$4,this.prep(r$2.SIZEOF_INT,t$1*e$4),this.prep(n$3,t$1*e$4)},r$2.Builder.prototype.endVector=function(){return this.writeInt32(this.vector_num_elems),this.offset()},r$2.Builder.prototype.createString=function(t$1){if(t$1 instanceof Uint8Array)var e$4=t$1;else{e$4=[];for(var n$3=0;n$3=56320?i$1:(i$1<<10)+t$1.charCodeAt(n$3++)+-56613888)<128?e$4.push(r$3):(r$3<2048?e$4.push(r$3>>6&31|192):(r$3<65536?e$4.push(r$3>>12&15|224):e$4.push(r$3>>18&7|240,r$3>>12&63|128),e$4.push(r$3>>6&63|128)),e$4.push(63&r$3|128))}}this.addInt8(0),this.startVector(1,e$4.length,1),this.bb.setPosition(this.space-=e$4.length),n$3=0;for(var o$1=this.space,a$2=this.bb.bytes();n$3>24},r$2.ByteBuffer.prototype.readUint8=function(t$1){return this.bytes_[t$1]},r$2.ByteBuffer.prototype.readInt16=function(t$1){return this.readUint16(t$1)<<16>>16},r$2.ByteBuffer.prototype.readUint16=function(t$1){return this.bytes_[t$1]|this.bytes_[t$1+1]<<8},r$2.ByteBuffer.prototype.readInt32=function(t$1){return this.bytes_[t$1]|this.bytes_[t$1+1]<<8|this.bytes_[t$1+2]<<16|this.bytes_[t$1+3]<<24},r$2.ByteBuffer.prototype.readUint32=function(t$1){return this.readInt32(t$1)>>>0},r$2.ByteBuffer.prototype.readInt64=function(t$1){return new r$2.Long(this.readInt32(t$1),this.readInt32(t$1+4))},r$2.ByteBuffer.prototype.readUint64=function(t$1){return new r$2.Long(this.readUint32(t$1),this.readUint32(t$1+4))},r$2.ByteBuffer.prototype.readFloat32=function(t$1){return r$2.int32[0]=this.readInt32(t$1),r$2.float32[0]},r$2.ByteBuffer.prototype.readFloat64=function(t$1){return r$2.int32[r$2.isLittleEndian?0:1]=this.readInt32(t$1),r$2.int32[r$2.isLittleEndian?1:0]=this.readInt32(t$1+4),r$2.float64[0]},r$2.ByteBuffer.prototype.writeInt8=function(t$1,e$4){this.bytes_[t$1]=e$4},r$2.ByteBuffer.prototype.writeUint8=function(t$1,e$4){this.bytes_[t$1]=e$4},r$2.ByteBuffer.prototype.writeInt16=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8},r$2.ByteBuffer.prototype.writeUint16=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8},r$2.ByteBuffer.prototype.writeInt32=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8,this.bytes_[t$1+2]=e$4>>16,this.bytes_[t$1+3]=e$4>>24},r$2.ByteBuffer.prototype.writeUint32=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8,this.bytes_[t$1+2]=e$4>>16,this.bytes_[t$1+3]=e$4>>24},r$2.ByteBuffer.prototype.writeInt64=function(t$1,e$4){this.writeInt32(t$1,e$4.low),this.writeInt32(t$1+4,e$4.high)},r$2.ByteBuffer.prototype.writeUint64=function(t$1,e$4){this.writeUint32(t$1,e$4.low),this.writeUint32(t$1+4,e$4.high)},r$2.ByteBuffer.prototype.writeFloat32=function(t$1,e$4){r$2.float32[0]=e$4,this.writeInt32(t$1,r$2.int32[0])},r$2.ByteBuffer.prototype.writeFloat64=function(t$1,e$4){r$2.float64[0]=e$4,this.writeInt32(t$1,r$2.int32[r$2.isLittleEndian?0:1]),this.writeInt32(t$1+4,r$2.int32[r$2.isLittleEndian?1:0])},r$2.ByteBuffer.prototype.getBufferIdentifier=function(){if(this.bytes_.length>10),56320+(1023&a$2)))}return i$1},r$2.ByteBuffer.prototype.__indirect=function(t$1){return t$1+this.readInt32(t$1)},r$2.ByteBuffer.prototype.__vector=function(t$1){return t$1+this.readInt32(t$1)+r$2.SIZEOF_INT},r$2.ByteBuffer.prototype.__vector_len=function(t$1){return this.readInt32(t$1+this.readInt32(t$1))},r$2.ByteBuffer.prototype.__has_identifier=function(t$1){if(t$1.length!=r$2.FILE_IDENTIFIER_LENGTH)throw Error(`FlatBuffers: file identifier must be length `+r$2.FILE_IDENTIFIER_LENGTH);for(var e$4=0;e$4{var e$3=t&&t.__esModule?()=>t.default:()=>t;return __webpack_require__.d(e$3,{a:e$3}),e$3},__webpack_require__.d=(t,e$3)=>{for(var n$2 in e$3)__webpack_require__.o(e$3,n$2)&&!__webpack_require__.o(t,n$2)&&Object.defineProperty(t,n$2,{enumerable:!0,get:e$3[n$2]})},__webpack_require__.g=function(){if(typeof globalThis==`object`)return globalThis;try{return this||Function(`return this`)()}catch{if(typeof window==`object`)return window}}(),__webpack_require__.o=(t,e$3)=>Object.prototype.hasOwnProperty.call(t,e$3),__webpack_require__.r=t=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(t,`__esModule`,{value:!0})};var __webpack_exports__=__webpack_require__(6018);return __webpack_exports__})())}),require_common=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0})}),require_legacy=__commonJSMin(exports=>{var _a$1;Object.defineProperty(exports,`__esModule`,{value:!0}),exports.SileroLegacy=void 0;let logging_1$3=require_logging();var SileroLegacy=class{constructor(ortInstance$2,_session,_h,_c,_sr){this.ortInstance=ortInstance$2,this._session=_session,this._h=_h,this._c=_c,this._sr=_sr,this.reset_state=()=>{let zeroes=Array(2*64).fill(0);this._h=new this.ortInstance.Tensor(`float32`,zeroes,[2,1,64]),this._c=new this.ortInstance.Tensor(`float32`,zeroes,[2,1,64])},this.process=async audioFrame=>{var _out$output;let t=new this.ortInstance.Tensor(`float32`,audioFrame,[1,audioFrame.length]),inputs={input:t,h:this._h,c:this._c,sr:this._sr},out=await this._session.run(inputs);this._h=out.hn,this._c=out.cn;let[isSpeech]=(_out$output=out.output)?.data,notSpeech=1-isSpeech;return{notSpeech,isSpeech}}}};exports.SileroLegacy=SileroLegacy,_a$1=SileroLegacy,SileroLegacy.new=async(ortInstance$2,modelFetcher)=>{logging_1$3.log.debug(`initializing vad`);let modelArrayBuffer=await modelFetcher(),_session=await ortInstance$2.InferenceSession.create(modelArrayBuffer),_sr=new ortInstance$2.Tensor(`int64`,[16000n]),zeroes=Array(2*64).fill(0),_h=new ortInstance$2.Tensor(`float32`,zeroes,[2,1,64]),_c=new ortInstance$2.Tensor(`float32`,zeroes,[2,1,64]);logging_1$3.log.debug(`vad is initialized`);let model=new _a$1(ortInstance$2,_session,_h,_c,_sr);return model}}),require_v5=__commonJSMin(exports=>{var _a;Object.defineProperty(exports,`__esModule`,{value:!0}),exports.SileroV5=void 0;let logging_1$2=require_logging();function getNewState(ortInstance$2){let zeroes=Array(2*128).fill(0);return new ortInstance$2.Tensor(`float32`,zeroes,[2,1,128])}var SileroV5=class{constructor(_session,_state,_sr,ortInstance$2){this._session=_session,this._state=_state,this._sr=_sr,this.ortInstance=ortInstance$2,this.reset_state=()=>{this._state=getNewState(this.ortInstance)},this.process=async audioFrame=>{var _out$output2;let t=new this.ortInstance.Tensor(`float32`,audioFrame,[1,audioFrame.length]),inputs={input:t,state:this._state,sr:this._sr},out=await this._session.run(inputs);this._state=out.stateN;let[isSpeech]=(_out$output2=out.output)?.data,notSpeech=1-isSpeech;return{notSpeech,isSpeech}}}};exports.SileroV5=SileroV5,_a=SileroV5,SileroV5.new=async(ortInstance$2,modelFetcher)=>{logging_1$2.log.debug(`Loading VAD...`);let modelArrayBuffer=await modelFetcher(),_session=await ortInstance$2.InferenceSession.create(modelArrayBuffer),_sr=new ortInstance$2.Tensor(`int64`,[16000n]),_state=getNewState(ortInstance$2);return logging_1$2.log.debug(`...finished loading VAD`),new _a(_session,_state,_sr,ortInstance$2)}}),require_models=__commonJSMin(exports=>{var __createBinding$2=Object.create?function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4);var desc=Object.getOwnPropertyDescriptor(m$2,k$4);(!desc||(`get`in desc?!m$2.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m$2[k$4]}}),Object.defineProperty(o$1,k2,desc)}:function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4),o$1[k2]=m$2[k$4]},__exportStar=function(m$2,exports$1){for(var p$5 in m$2)p$5!==`default`&&!Object.prototype.hasOwnProperty.call(exports$1,p$5)&&__createBinding$2(exports$1,m$2,p$5)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.SileroV5=exports.SileroLegacy=void 0,__exportStar(require_common(),exports);var legacy_1=require_legacy();Object.defineProperty(exports,`SileroLegacy`,{enumerable:!0,get:function(){return legacy_1.SileroLegacy}});var v5_1=require_v5();Object.defineProperty(exports,`SileroV5`,{enumerable:!0,get:function(){return v5_1.SileroV5}})}),require_resampler=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.Resampler=void 0;let logging_1$1=require_logging();var Resampler=class{constructor(options$1){this.options=options$1,this.process=audioFrame=>{let outputFrames=[];for(let sample of audioFrame)for(this.inputBuffer.push(sample);this.hasEnoughDataForFrame();){let outputFrame=this.generateOutputFrame();outputFrames.push(outputFrame)}return outputFrames},options$1.nativeSampleRate<16e3&&logging_1$1.log.error(`nativeSampleRate is too low. Should have 16000 = targetSampleRate <= nativeSampleRate`),this.inputBuffer=[]}async*stream(audioInput){for(let sample of audioInput)for(this.inputBuffer.push(sample);this.hasEnoughDataForFrame();){let outputFrame=this.generateOutputFrame();yield outputFrame}}hasEnoughDataForFrame(){return this.inputBuffer.length*this.options.targetSampleRate/this.options.nativeSampleRate>=this.options.targetFrameSize}generateOutputFrame(){let outputFrame=new Float32Array(this.options.targetFrameSize),outputIndex=0,inputIndex=0;for(;outputIndex{var __createBinding$1=Object.create?function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4);var desc=Object.getOwnPropertyDescriptor(m$2,k$4);(!desc||(`get`in desc?!m$2.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m$2[k$4]}}),Object.defineProperty(o$1,k2,desc)}:function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4),o$1[k2]=m$2[k$4]},__setModuleDefault$1=Object.create?function(o$1,v$1){Object.defineProperty(o$1,`default`,{enumerable:!0,value:v$1})}:function(o$1,v$1){o$1.default=v$1},__importStar$1=function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k$4 in mod)k$4!==`default`&&Object.prototype.hasOwnProperty.call(mod,k$4)&&__createBinding$1(result,mod,k$4);return __setModuleDefault$1(result,mod),result};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.NonRealTimeVAD=exports.defaultNonRealTimeVADOptions=void 0;let ortInstance$1=__importStar$1(require_ort_web_min()),asset_path_1$1=require_asset_path(),default_model_fetcher_1$2=require_default_model_fetcher(),frame_processor_1$2=require_frame_processor(),messages_1$2=require_messages(),models_1$1=require_models(),resampler_1$1=require_resampler();exports.defaultNonRealTimeVADOptions={...frame_processor_1$2.defaultLegacyFrameProcessorOptions,ortConfig:void 0,modelURL:asset_path_1$1.baseAssetPath+`silero_vad_legacy.onnx`,modelFetcher:default_model_fetcher_1$2.defaultModelFetcher};var NonRealTimeVAD=class{static async new(options$1={}){let fullOptions={...exports.defaultNonRealTimeVADOptions,...options$1};(0,frame_processor_1$2.validateOptions)(fullOptions),fullOptions.ortConfig!==void 0&&fullOptions.ortConfig(ortInstance$1);let modelFetcher=()=>fullOptions.modelFetcher(fullOptions.modelURL),model=await models_1$1.SileroLegacy.new(ortInstance$1,modelFetcher),frameProcessor=new frame_processor_1$2.FrameProcessor(model.process,model.reset_state,{frameSamples:fullOptions.frameSamples,positiveSpeechThreshold:fullOptions.positiveSpeechThreshold,negativeSpeechThreshold:fullOptions.negativeSpeechThreshold,redemptionFrames:fullOptions.redemptionFrames,preSpeechPadFrames:fullOptions.preSpeechPadFrames,minSpeechFrames:fullOptions.minSpeechFrames,submitUserSpeechOnPause:fullOptions.submitUserSpeechOnPause});frameProcessor.resume();let vad=new this(modelFetcher,ortInstance$1,fullOptions,frameProcessor);return vad}constructor(modelFetcher,ort,options$1,frameProcessor){this.modelFetcher=modelFetcher,this.ort=ort,this.options=options$1,this.frameProcessor=frameProcessor}async*run(inputAudio,sampleRate){let resamplerOptions={nativeSampleRate:sampleRate,targetSampleRate:16e3,targetFrameSize:this.options.frameSamples},resampler=new resampler_1$1.Resampler(resamplerOptions),start=0,end=0,frameIndex=0,messageContainer=[];for await(let frame$1 of resampler.stream(inputAudio)){await this.frameProcessor.process(frame$1,event=>{messageContainer.push(event)});for(let event of messageContainer)switch(event.msg){case messages_1$2.Message.SpeechStart:start=frameIndex*this.options.frameSamples/16;break;case messages_1$2.Message.SpeechEnd:end=(frameIndex+1)*this.options.frameSamples/16,yield{audio:event.audio,start,end};break;default:break}frameIndex++}let{msg,audio}=this.frameProcessor.endSegment(event=>{messageContainer.push(event)});for(let event of messageContainer)switch(event.msg){case messages_1$2.Message.SpeechEnd:yield{audio:event.audio,start,end:frameIndex*this.options.frameSamples/16}}}};exports.NonRealTimeVAD=NonRealTimeVAD}),require_utils=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.audioFileToArray=exports.encodeWAV=exports.arrayBufferToBase64=exports.minFramesForTargetMS=void 0;function minFramesForTargetMS(targetDuration,frameSamples,sr=16e3){return Math.ceil(targetDuration*sr/1e3/frameSamples)}exports.minFramesForTargetMS=minFramesForTargetMS;function arrayBufferToBase64(buffer$1){let bytes=new Uint8Array(buffer$1),len=bytes.byteLength,binary=Array(len);for(var i$1=0;i$1{reader.addEventListener(`loadend`,ev=>{let audioData=reader.result;ctx.decodeAudioData(audioData,buffer$1=>{audioBuffer=buffer$1,ctx.startRendering().then(renderedBuffer=>{console.log(`Rendering completed successfully`),res()}).catch(err=>{console.error(`Rendering failed: ${err}`)})},e$3=>{console.log(`Error with decoding audio data: ${e$3}`)})}),reader.readAsArrayBuffer(audioFileData)}),audioBuffer===null)throw Error(`some shit`);let _audioBuffer=audioBuffer,out=new Float32Array(_audioBuffer.length);for(let i$1=0;i$1<_audioBuffer.length;i$1++)for(let j$1=0;j$1<_audioBuffer.numberOfChannels;j$1++)out[i$1]+=_audioBuffer.getChannelData(j$1)[i$1];return{audio:out,sampleRate:_audioBuffer.sampleRate}}exports.audioFileToArray=audioFileToArray}),require_real_time_vad=__commonJSMin(exports=>{var __createBinding=Object.create?function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4);var desc=Object.getOwnPropertyDescriptor(m$2,k$4);(!desc||(`get`in desc?!m$2.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m$2[k$4]}}),Object.defineProperty(o$1,k2,desc)}:function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4),o$1[k2]=m$2[k$4]},__setModuleDefault=Object.create?function(o$1,v$1){Object.defineProperty(o$1,`default`,{enumerable:!0,value:v$1})}:function(o$1,v$1){o$1.default=v$1},__importStar=function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k$4 in mod)k$4!==`default`&&Object.prototype.hasOwnProperty.call(mod,k$4)&&__createBinding(result,mod,k$4);return __setModuleDefault(result,mod),result};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.AudioNodeVAD=exports.MicVAD=exports.getDefaultRealTimeVADOptions=exports.ort=exports.DEFAULT_MODEL=void 0;let ortInstance=__importStar(require_ort_web_min()),default_model_fetcher_1$1=require_default_model_fetcher(),frame_processor_1$1=require_frame_processor(),logging_1=require_logging(),messages_1$1=require_messages(),models_1=require_models(),resampler_1=require_resampler();exports.DEFAULT_MODEL=`legacy`,exports.ort=ortInstance;let workletFile=`vad.worklet.bundle.min.js`,sileroV5File=`silero_vad_v5.onnx`,sileroLegacyFile=`silero_vad_legacy.onnx`,getDefaultRealTimeVADOptions$1=model=>{let frameProcessorOptions=model===`v5`?frame_processor_1$1.defaultV5FrameProcessorOptions:frame_processor_1$1.defaultLegacyFrameProcessorOptions;return{...frameProcessorOptions,onFrameProcessed:(probabilities,frame$1)=>{},onVADMisfire:()=>{logging_1.log.debug(`VAD misfire`)},onSpeechStart:()=>{logging_1.log.debug(`Detected speech start`)},onSpeechEnd:()=>{logging_1.log.debug(`Detected speech end`)},onSpeechRealStart:()=>{logging_1.log.debug(`Detected real speech start`)},baseAssetPath:`https://cdn.jsdelivr.net/npm/@ricky0123/vad-web@latest/dist/`,onnxWASMBasePath:`https://cdn.jsdelivr.net/npm/onnxruntime-web@1.14.0/dist/`,stream:void 0,ortConfig:void 0,model,workletOptions:{}}};exports.getDefaultRealTimeVADOptions=getDefaultRealTimeVADOptions$1;var MicVAD$1=class MicVAD$1{static async new(options$1={}){let fullOptions={...(0,exports.getDefaultRealTimeVADOptions)(options$1.model??exports.DEFAULT_MODEL),...options$1};(0,frame_processor_1$1.validateOptions)(fullOptions);let stream;stream=fullOptions.stream===void 0?await navigator.mediaDevices.getUserMedia({audio:{...fullOptions.additionalAudioConstraints,channelCount:1,echoCancellation:!0,autoGainControl:!0,noiseSuppression:!0}}):fullOptions.stream;let audioContext=new AudioContext,sourceNode=new MediaStreamAudioSourceNode(audioContext,{mediaStream:stream}),audioNodeVAD=await AudioNodeVAD.new(audioContext,fullOptions);return audioNodeVAD.receive(sourceNode),new MicVAD$1(fullOptions,audioContext,stream,audioNodeVAD,sourceNode)}constructor(options$1,audioContext,stream,audioNodeVAD,sourceNode,listening=!1){this.options=options$1,this.audioContext=audioContext,this.stream=stream,this.audioNodeVAD=audioNodeVAD,this.sourceNode=sourceNode,this.listening=listening,this.pause=()=>{this.audioNodeVAD.pause(),this.listening=!1},this.start=()=>{this.audioNodeVAD.start(),this.listening=!0},this.destroy=()=>{this.listening&&this.pause(),this.options.stream===void 0&&this.stream.getTracks().forEach(track$1=>track$1.stop()),this.sourceNode.disconnect(),this.audioNodeVAD.destroy(),this.audioContext.close()},this.setOptions=options$2=>{this.audioNodeVAD.setFrameProcessorOptions(options$2)}}};exports.MicVAD=MicVAD$1;var AudioNodeVAD=class AudioNodeVAD{static async new(ctx,options$1={}){let fullOptions={...(0,exports.getDefaultRealTimeVADOptions)(options$1.model??exports.DEFAULT_MODEL),...options$1};(0,frame_processor_1$1.validateOptions)(fullOptions),exports.ort.env.wasm.wasmPaths=fullOptions.onnxWASMBasePath,fullOptions.ortConfig!==void 0&&fullOptions.ortConfig(exports.ort);let modelFile=fullOptions.model===`v5`?sileroV5File:sileroLegacyFile,modelURL=fullOptions.baseAssetPath+modelFile,modelFactory=fullOptions.model===`v5`?models_1.SileroV5.new:models_1.SileroLegacy.new,model;try{model=await modelFactory(exports.ort,()=>(0,default_model_fetcher_1$1.defaultModelFetcher)(modelURL))}catch(e$3){throw console.error(`Encountered an error while loading model file ${modelURL}`),e$3}let frameProcessor=new frame_processor_1$1.FrameProcessor(model.process,model.reset_state,{frameSamples:fullOptions.frameSamples,positiveSpeechThreshold:fullOptions.positiveSpeechThreshold,negativeSpeechThreshold:fullOptions.negativeSpeechThreshold,redemptionFrames:fullOptions.redemptionFrames,preSpeechPadFrames:fullOptions.preSpeechPadFrames,minSpeechFrames:fullOptions.minSpeechFrames,submitUserSpeechOnPause:fullOptions.submitUserSpeechOnPause}),audioNodeVAD=new AudioNodeVAD(ctx,fullOptions,frameProcessor);return await audioNodeVAD.setupAudioNode(),audioNodeVAD}constructor(ctx,options$1,frameProcessor){this.ctx=ctx,this.options=options$1,this.bufferIndex=0,this.pause=()=>{this.frameProcessor.pause(this.handleFrameProcessorEvent)},this.start=()=>{this.frameProcessor.resume()},this.receive=node$1=>{node$1.connect(this.audioNode)},this.processFrame=async frame$1=>{await this.frameProcessor.process(frame$1,this.handleFrameProcessorEvent)},this.handleFrameProcessorEvent=ev=>{switch(ev.msg){case messages_1$1.Message.FrameProcessed:this.options.onFrameProcessed(ev.probs,ev.frame);break;case messages_1$1.Message.SpeechStart:this.options.onSpeechStart();break;case messages_1$1.Message.SpeechRealStart:this.options.onSpeechRealStart();break;case messages_1$1.Message.VADMisfire:this.options.onVADMisfire();break;case messages_1$1.Message.SpeechEnd:this.options.onSpeechEnd(ev.audio);break}},this.destroy=()=>{var _this$gainNode;this.audioNode instanceof AudioWorkletNode&&this.audioNode.port.postMessage({message:messages_1$1.Message.SpeechStop}),this.audioNode.disconnect(),(_this$gainNode=this.gainNode)?.disconnect()},this.setFrameProcessorOptions=options$2=>{this.frameProcessor.options={...this.frameProcessor.options,...options$2}},this.frameProcessor=frameProcessor}async setupAudioNode(){let hasAudioWorklet=`audioWorklet`in this.ctx&&typeof AudioWorkletNode==`function`;if(hasAudioWorklet)try{let workletURL=this.options.baseAssetPath+workletFile;await this.ctx.audioWorklet.addModule(workletURL);let workletOptions=this.options.workletOptions??{};workletOptions.processorOptions={...workletOptions.processorOptions??{},frameSamples:this.options.frameSamples},this.audioNode=new AudioWorkletNode(this.ctx,`vad-helper-worklet`,workletOptions),this.audioNode.port.onmessage=async ev=>{var _ev$data;switch((_ev$data=ev.data)?.message){case messages_1$1.Message.AudioFrame:let buffer$1=ev.data.data;buffer$1 instanceof ArrayBuffer||(buffer$1=new ArrayBuffer(ev.data.data.byteLength),new Uint8Array(buffer$1).set(new Uint8Array(ev.data.data)));let frame$1=new Float32Array(buffer$1);await this.processFrame(frame$1);break}};return}catch(e$3){console.log(`AudioWorklet setup failed, falling back to ScriptProcessor`,e$3)}this.resampler=new resampler_1.Resampler({nativeSampleRate:this.ctx.sampleRate,targetSampleRate:16e3,targetFrameSize:this.options.frameSamples??480});let bufferSize=4096;this.audioNode=this.ctx.createScriptProcessor(bufferSize,1,1),this.gainNode=this.ctx.createGain(),this.gainNode.gain.value=0;let processingAudio=!1;this.audioNode.onaudioprocess=async e$3=>{if(!processingAudio){processingAudio=!0;try{let input=e$3.inputBuffer.getChannelData(0),output=e$3.outputBuffer.getChannelData(0);if(output.fill(0),this.resampler){let frames=this.resampler.process(input);for(let frame$1 of frames)await this.processFrame(frame$1)}}catch(error){console.error(`Error processing audio:`,error)}finally{processingAudio=!1}}},this.audioNode.connect(this.gainNode),this.gainNode.connect(this.ctx.destination)}};exports.AudioNodeVAD=AudioNodeVAD}),require_dist=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.getDefaultRealTimeVADOptions=exports.MicVAD=exports.DEFAULT_MODEL=exports.AudioNodeVAD=exports.utils=exports.NonRealTimeVAD=exports.Message=exports.FrameProcessor=exports.defaultModelFetcher=exports.baseAssetPath=void 0;var asset_path_1=require_asset_path();Object.defineProperty(exports,`baseAssetPath`,{enumerable:!0,get:function(){return asset_path_1.baseAssetPath}});var default_model_fetcher_1=require_default_model_fetcher();Object.defineProperty(exports,`defaultModelFetcher`,{enumerable:!0,get:function(){return default_model_fetcher_1.defaultModelFetcher}});var frame_processor_1=require_frame_processor();Object.defineProperty(exports,`FrameProcessor`,{enumerable:!0,get:function(){return frame_processor_1.FrameProcessor}});var messages_1=require_messages();Object.defineProperty(exports,`Message`,{enumerable:!0,get:function(){return messages_1.Message}});var non_real_time_vad_1=require_non_real_time_vad();Object.defineProperty(exports,`NonRealTimeVAD`,{enumerable:!0,get:function(){return non_real_time_vad_1.NonRealTimeVAD}});let utils_1=require_utils();exports.utils={audioFileToArray:utils_1.audioFileToArray,minFramesForTargetMS:utils_1.minFramesForTargetMS,arrayBufferToBase64:utils_1.arrayBufferToBase64,encodeWAV:utils_1.encodeWAV};var real_time_vad_1=require_real_time_vad();Object.defineProperty(exports,`AudioNodeVAD`,{enumerable:!0,get:function(){return real_time_vad_1.AudioNodeVAD}}),Object.defineProperty(exports,`DEFAULT_MODEL`,{enumerable:!0,get:function(){return real_time_vad_1.DEFAULT_MODEL}}),Object.defineProperty(exports,`MicVAD`,{enumerable:!0,get:function(){return real_time_vad_1.MicVAD}}),Object.defineProperty(exports,`getDefaultRealTimeVADOptions`,{enumerable:!0,get:function(){return real_time_vad_1.getDefaultRealTimeVADOptions}})}),import_dist=__toESM(require_dist());function useMicVAD(deviceId,options$1={}){let opts=merge$2({...(0,import_dist.getDefaultRealTimeVADOptions)(`v5`),preSpeechPadFrames:30,positiveSpeechThreshold:.5,negativeSpeechThreshold:.35,minSpeechFrames:30,auto:!0},options$1),micVad=ref(),microphoneAccess=usePermission(`microphone`);async function update(){if(micVad.value&&(micVad.value.destroy(),micVad.value=void 0,console.warn(`existing MicVAD destroyed`)),!microphoneAccess.value)return;let id=unref(deviceId);if(!id)return;let media=await navigator.mediaDevices.getUserMedia({audio:{deviceId:id}});micVad.value=await import_dist.MicVAD.new({...opts,stream:media}),opts.auto&&micVad.value.start()}return watch(microphoneAccess,update,{immediate:!0}),watch(toRef(deviceId),update,{immediate:!0}),tryOnMounted(update),onUnmounted(()=>{micVad.value&&(micVad.value.destroy(),micVad.value=void 0)}),{destroy:()=>{micVad.value&&(micVad.value.destroy(),micVad.value=void 0)},start:()=>{micVad.value&&micVad.value.start()}}}function useQueue(options$1){let queue$1=ref([]),isProcessing$1=ref(!1),internalEventHandler={add:[],pick:[],processing:[],error:[],processed:[],done:[]},internalHandlerEventHandler={};function on$1(eventName,handler){internalEventHandler[eventName].push(handler)}function emit$1(eventName,...params){let handlers$3=internalEventHandler[eventName];handlers$3.forEach(handler=>{handler(...params)})}function onHandlerEvent(eventName,handler){internalHandlerEventHandler[eventName]=internalHandlerEventHandler[eventName]||[],internalHandlerEventHandler[eventName].push(handler)}function emitHandlerEvent(eventName,...params){let handlers$3=internalHandlerEventHandler[eventName]||[];handlers$3.forEach(handler=>{handler(...params)})}async function add$1(payload){queue$1.value.push(payload),emit$1(`add`,payload)}function pick(){let payload=queue$1.value.shift();if(payload)return emit$1(`pick`,payload),payload}async function handleItem(){if(isProcessing$1.value)return;let payload=pick();if(payload){isProcessing$1.value=!0;for(let handler of options$1.handlers){emit$1(`processing`,payload,handler);try{let result=await handler({data:payload,itemsToBeProcessed:()=>queue$1.value.length,emit:emitHandlerEvent});emit$1(`processed`,payload,result,handler)}catch(err){emit$1(`error`,payload,err,handler);continue}}isProcessing$1.value=!1,emit$1(`done`,payload),queue$1.value.length>0&&handleItem()}}return on$1(`add`,handleItem),on$1(`done`,handleItem),{add:add$1,on:on$1,onHandlerEvent,queue:queue$1}}function useEmotionsMessageQueue(emotionsQueue){function splitEmotion(content$2){for(let emotion of EMOTION_VALUES){if(!content$2.includes(emotion))continue;return{ok:!0,emotion}}return{ok:!1,emotion:``}}return useQueue({handlers:[async ctx=>{if(EMOTION_VALUES.includes(ctx.data)){ctx.emit(`emotion`,ctx.data),await emotionsQueue.add(ctx.data);return}{let{ok:ok$2,emotion}=splitEmotion(ctx.data);ok$2&&(ctx.emit(`emotion`,emotion),await emotionsQueue.add(emotion))}}]})}function useDelayMessageQueue(){function splitDelays(content$2){if(!/<\|DELAY:\d+\|>/i.test(content$2))return{ok:!1,delay:0};let delayExecArray=/<\|DELAY:(\d+)\|>/i.exec(content$2),delay=delayExecArray?.[1];if(!delay)return{ok:!1,delay:0};let delaySeconds=Number.parseFloat(delay);return delaySeconds<=0||Number.isNaN(delaySeconds)?{ok:!0,delay:0}:{ok:!0,delay:delaySeconds}}return useQueue({handlers:[async ctx=>{let{ok:ok$2,delay}=splitDelays(ctx.data);ok$2&&(ctx.emit(`delay`,delay),await sleep$1(delay*1e3))}]})}function useMessageContentQueue(ttsQueue){let processed=ref(``);return useQueue({handlers:[async ctx=>{if(ctx.data===llmInferenceEndToken){let content$2=processed.value.trim();content$2&&await ttsQueue.add(content$2),processed.value=``;return}let endMarker=/[.?!]/;for(processed.value+=ctx.data;processed.value;){let endMarkerExecArray=endMarker.exec(processed.value);if(!endMarkerExecArray||endMarkerExecArray.index===void 0)break;let before=processed.value.slice(0,endMarkerExecArray.index+1),after=processed.value.slice(endMarkerExecArray.index+1);await ttsQueue.add(before),processed.value=after}}]})} +`},1670:t=>{"use strict";t.exports=__WEBPACK_EXTERNAL_MODULE__1670__},7067:()=>{},1296:()=>{},1384:()=>{},3993:()=>{},908:()=>{},6953:()=>{},9925:()=>{},2806:()=>{},6449:()=>{},2850:()=>{},5381:()=>{},5686:(t,e$3,n$2)=>{"use strict";n$2.r(e$3),n$2.d(e$3,{flatbuffers:()=>r$2});var r$2={};r$2.Offset,r$2.Table,r$2.SIZEOF_SHORT=2,r$2.SIZEOF_INT=4,r$2.FILE_IDENTIFIER_LENGTH=4,r$2.SIZE_PREFIX_LENGTH=4,r$2.Encoding={UTF8_BYTES:1,UTF16_STRING:2},r$2.int32=new Int32Array(2),r$2.float32=new Float32Array(r$2.int32.buffer),r$2.float64=new Float64Array(r$2.int32.buffer),r$2.isLittleEndian=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1,r$2.Long=function(t$1,e$4){this.low=0|t$1,this.high=0|e$4},r$2.Long.create=function(t$1,e$4){return t$1==0&&e$4==0?r$2.Long.ZERO:new r$2.Long(t$1,e$4)},r$2.Long.prototype.toFloat64=function(){return(this.low>>>0)+4294967296*this.high},r$2.Long.prototype.equals=function(t$1){return this.low==t$1.low&&this.high==t$1.high},r$2.Long.ZERO=new r$2.Long(0,0),r$2.Builder=function(t$1){if(t$1)e$4=t$1;else var e$4=1024;this.bb=r$2.ByteBuffer.allocate(e$4),this.space=e$4,this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1},r$2.Builder.prototype.clear=function(){this.bb.clear(),this.space=this.bb.capacity(),this.minalign=1,this.vtable=null,this.vtable_in_use=0,this.isNested=!1,this.object_start=0,this.vtables=[],this.vector_num_elems=0,this.force_defaults=!1},r$2.Builder.prototype.forceDefaults=function(t$1){this.force_defaults=t$1},r$2.Builder.prototype.dataBuffer=function(){return this.bb},r$2.Builder.prototype.asUint8Array=function(){return this.bb.bytes().subarray(this.bb.position(),this.bb.position()+this.offset())},r$2.Builder.prototype.prep=function(t$1,e$4){t$1>this.minalign&&(this.minalign=t$1);for(var n$3=1+~(this.bb.capacity()-this.space+e$4)&t$1-1;this.space=0&&this.vtable[e$4]==0;e$4--);for(var n$3=e$4+1;e$4>=0;e$4--)this.addInt16(this.vtable[e$4]==0?0:t$1-this.vtable[e$4]);this.addInt16(t$1-this.object_start);var i$1=(n$3+2)*r$2.SIZEOF_SHORT;this.addInt16(i$1);var o$1=0,a$2=this.space;t:for(e$4=0;e$4=0;a$2--)this.writeInt8(o$1.charCodeAt(a$2))}this.prep(this.minalign,r$2.SIZEOF_INT+i$1),this.addOffset(t$1),i$1&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)},r$2.Builder.prototype.finishSizePrefixed=function(t$1,e$4){this.finish(t$1,e$4,!0)},r$2.Builder.prototype.requiredField=function(t$1,e$4){var n$3=this.bb.capacity()-t$1,r$3=n$3-this.bb.readInt32(n$3);if(this.bb.readInt16(r$3+e$4)==0)throw Error(`FlatBuffers: field `+e$4+` must be set`)},r$2.Builder.prototype.startVector=function(t$1,e$4,n$3){this.notNested(),this.vector_num_elems=e$4,this.prep(r$2.SIZEOF_INT,t$1*e$4),this.prep(n$3,t$1*e$4)},r$2.Builder.prototype.endVector=function(){return this.writeInt32(this.vector_num_elems),this.offset()},r$2.Builder.prototype.createString=function(t$1){if(t$1 instanceof Uint8Array)var e$4=t$1;else{e$4=[];for(var n$3=0;n$3=56320?i$1:(i$1<<10)+t$1.charCodeAt(n$3++)+-56613888)<128?e$4.push(r$3):(r$3<2048?e$4.push(r$3>>6&31|192):(r$3<65536?e$4.push(r$3>>12&15|224):e$4.push(r$3>>18&7|240,r$3>>12&63|128),e$4.push(r$3>>6&63|128)),e$4.push(63&r$3|128))}}this.addInt8(0),this.startVector(1,e$4.length,1),this.bb.setPosition(this.space-=e$4.length),n$3=0;for(var o$1=this.space,a$2=this.bb.bytes();n$3>24},r$2.ByteBuffer.prototype.readUint8=function(t$1){return this.bytes_[t$1]},r$2.ByteBuffer.prototype.readInt16=function(t$1){return this.readUint16(t$1)<<16>>16},r$2.ByteBuffer.prototype.readUint16=function(t$1){return this.bytes_[t$1]|this.bytes_[t$1+1]<<8},r$2.ByteBuffer.prototype.readInt32=function(t$1){return this.bytes_[t$1]|this.bytes_[t$1+1]<<8|this.bytes_[t$1+2]<<16|this.bytes_[t$1+3]<<24},r$2.ByteBuffer.prototype.readUint32=function(t$1){return this.readInt32(t$1)>>>0},r$2.ByteBuffer.prototype.readInt64=function(t$1){return new r$2.Long(this.readInt32(t$1),this.readInt32(t$1+4))},r$2.ByteBuffer.prototype.readUint64=function(t$1){return new r$2.Long(this.readUint32(t$1),this.readUint32(t$1+4))},r$2.ByteBuffer.prototype.readFloat32=function(t$1){return r$2.int32[0]=this.readInt32(t$1),r$2.float32[0]},r$2.ByteBuffer.prototype.readFloat64=function(t$1){return r$2.int32[r$2.isLittleEndian?0:1]=this.readInt32(t$1),r$2.int32[r$2.isLittleEndian?1:0]=this.readInt32(t$1+4),r$2.float64[0]},r$2.ByteBuffer.prototype.writeInt8=function(t$1,e$4){this.bytes_[t$1]=e$4},r$2.ByteBuffer.prototype.writeUint8=function(t$1,e$4){this.bytes_[t$1]=e$4},r$2.ByteBuffer.prototype.writeInt16=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8},r$2.ByteBuffer.prototype.writeUint16=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8},r$2.ByteBuffer.prototype.writeInt32=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8,this.bytes_[t$1+2]=e$4>>16,this.bytes_[t$1+3]=e$4>>24},r$2.ByteBuffer.prototype.writeUint32=function(t$1,e$4){this.bytes_[t$1]=e$4,this.bytes_[t$1+1]=e$4>>8,this.bytes_[t$1+2]=e$4>>16,this.bytes_[t$1+3]=e$4>>24},r$2.ByteBuffer.prototype.writeInt64=function(t$1,e$4){this.writeInt32(t$1,e$4.low),this.writeInt32(t$1+4,e$4.high)},r$2.ByteBuffer.prototype.writeUint64=function(t$1,e$4){this.writeUint32(t$1,e$4.low),this.writeUint32(t$1+4,e$4.high)},r$2.ByteBuffer.prototype.writeFloat32=function(t$1,e$4){r$2.float32[0]=e$4,this.writeInt32(t$1,r$2.int32[0])},r$2.ByteBuffer.prototype.writeFloat64=function(t$1,e$4){r$2.float64[0]=e$4,this.writeInt32(t$1,r$2.int32[r$2.isLittleEndian?0:1]),this.writeInt32(t$1+4,r$2.int32[r$2.isLittleEndian?1:0])},r$2.ByteBuffer.prototype.getBufferIdentifier=function(){if(this.bytes_.length>10),56320+(1023&a$2)))}return i$1},r$2.ByteBuffer.prototype.__indirect=function(t$1){return t$1+this.readInt32(t$1)},r$2.ByteBuffer.prototype.__vector=function(t$1){return t$1+this.readInt32(t$1)+r$2.SIZEOF_INT},r$2.ByteBuffer.prototype.__vector_len=function(t$1){return this.readInt32(t$1+this.readInt32(t$1))},r$2.ByteBuffer.prototype.__has_identifier=function(t$1){if(t$1.length!=r$2.FILE_IDENTIFIER_LENGTH)throw Error(`FlatBuffers: file identifier must be length `+r$2.FILE_IDENTIFIER_LENGTH);for(var e$4=0;e$4{var e$3=t&&t.__esModule?()=>t.default:()=>t;return __webpack_require__.d(e$3,{a:e$3}),e$3},__webpack_require__.d=(t,e$3)=>{for(var n$2 in e$3)__webpack_require__.o(e$3,n$2)&&!__webpack_require__.o(t,n$2)&&Object.defineProperty(t,n$2,{enumerable:!0,get:e$3[n$2]})},__webpack_require__.g=function(){if(typeof globalThis==`object`)return globalThis;try{return this||Function(`return this`)()}catch{if(typeof window==`object`)return window}}(),__webpack_require__.o=(t,e$3)=>Object.prototype.hasOwnProperty.call(t,e$3),__webpack_require__.r=t=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(t,`__esModule`,{value:!0})};var __webpack_exports__=__webpack_require__(6018);return __webpack_exports__})())}),require_common=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0})}),require_legacy=__commonJSMin(exports=>{var _a$1;Object.defineProperty(exports,`__esModule`,{value:!0});let logging_1$3=require_logging();var SileroLegacy=class{constructor(ortInstance$2,_session,_h,_c,_sr){this.ortInstance=ortInstance$2,this._session=_session,this._h=_h,this._c=_c,this._sr=_sr,this.reset_state=()=>{let zeroes=Array(2*64).fill(0);this._h=new this.ortInstance.Tensor(`float32`,zeroes,[2,1,64]),this._c=new this.ortInstance.Tensor(`float32`,zeroes,[2,1,64])},this.process=async audioFrame=>{let t=new this.ortInstance.Tensor(`float32`,audioFrame,[1,audioFrame.length]),inputs={input:t,h:this._h,c:this._c,sr:this._sr},out=await this._session.run(inputs);this._h=out.hn,this._c=out.cn;let[isSpeech]=out.output?.data,notSpeech=1-isSpeech;return{notSpeech,isSpeech}}}};exports.SileroLegacy=SileroLegacy,_a$1=SileroLegacy,SileroLegacy.new=async(ortInstance$2,modelFetcher)=>{logging_1$3.log.debug(`initializing vad`);let modelArrayBuffer=await modelFetcher(),_session=await ortInstance$2.InferenceSession.create(modelArrayBuffer),_sr=new ortInstance$2.Tensor(`int64`,[16000n]),zeroes=Array(2*64).fill(0),_h=new ortInstance$2.Tensor(`float32`,zeroes,[2,1,64]),_c=new ortInstance$2.Tensor(`float32`,zeroes,[2,1,64]);logging_1$3.log.debug(`vad is initialized`);let model=new _a$1(ortInstance$2,_session,_h,_c,_sr);return model}}),require_v5=__commonJSMin(exports=>{var _a;Object.defineProperty(exports,`__esModule`,{value:!0});let logging_1$2=require_logging();function getNewState(ortInstance$2){let zeroes=Array(2*128).fill(0);return new ortInstance$2.Tensor(`float32`,zeroes,[2,1,128])}var SileroV5=class{constructor(_session,_state,_sr,ortInstance$2){this._session=_session,this._state=_state,this._sr=_sr,this.ortInstance=ortInstance$2,this.reset_state=()=>{this._state=getNewState(this.ortInstance)},this.process=async audioFrame=>{let t=new this.ortInstance.Tensor(`float32`,audioFrame,[1,audioFrame.length]),inputs={input:t,state:this._state,sr:this._sr},out=await this._session.run(inputs);this._state=out.stateN;let[isSpeech]=out.output?.data,notSpeech=1-isSpeech;return{notSpeech,isSpeech}}}};exports.SileroV5=SileroV5,_a=SileroV5,SileroV5.new=async(ortInstance$2,modelFetcher)=>{logging_1$2.log.debug(`Loading VAD...`);let modelArrayBuffer=await modelFetcher(),_session=await ortInstance$2.InferenceSession.create(modelArrayBuffer),_sr=new ortInstance$2.Tensor(`int64`,[16000n]),_state=getNewState(ortInstance$2);return logging_1$2.log.debug(`...finished loading VAD`),new _a(_session,_state,_sr,ortInstance$2)}}),require_models=__commonJSMin(exports=>{var __createBinding$2=exports&&exports.__createBinding||(Object.create?function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4);var desc=Object.getOwnPropertyDescriptor(m$2,k$4);(!desc||(`get`in desc?!m$2.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m$2[k$4]}}),Object.defineProperty(o$1,k2,desc)}:function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4),o$1[k2]=m$2[k$4]}),__exportStar=exports&&exports.__exportStar||function(m$2,exports$1){for(var p$5 in m$2)p$5!==`default`&&!Object.prototype.hasOwnProperty.call(exports$1,p$5)&&__createBinding$2(exports$1,m$2,p$5)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.SileroV5=exports.SileroLegacy=void 0,__exportStar(require_common(),exports);var legacy_1=require_legacy();Object.defineProperty(exports,`SileroLegacy`,{enumerable:!0,get:function(){return legacy_1.SileroLegacy}});var v5_1=require_v5();Object.defineProperty(exports,`SileroV5`,{enumerable:!0,get:function(){return v5_1.SileroV5}})}),require_resampler=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0});let logging_1$1=require_logging();var Resampler=class{constructor(options$1){this.options=options$1,this.process=audioFrame=>{let outputFrames=[];for(let sample of audioFrame)for(this.inputBuffer.push(sample);this.hasEnoughDataForFrame();){let outputFrame=this.generateOutputFrame();outputFrames.push(outputFrame)}return outputFrames},options$1.nativeSampleRate<16e3&&logging_1$1.log.error(`nativeSampleRate is too low. Should have 16000 = targetSampleRate <= nativeSampleRate`),this.inputBuffer=[]}async*stream(audioInput){for(let sample of audioInput)for(this.inputBuffer.push(sample);this.hasEnoughDataForFrame();){let outputFrame=this.generateOutputFrame();yield outputFrame}}hasEnoughDataForFrame(){return this.inputBuffer.length*this.options.targetSampleRate/this.options.nativeSampleRate>=this.options.targetFrameSize}generateOutputFrame(){let outputFrame=new Float32Array(this.options.targetFrameSize),outputIndex=0,inputIndex=0;for(;outputIndex{var __createBinding$1=exports&&exports.__createBinding||(Object.create?function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4);var desc=Object.getOwnPropertyDescriptor(m$2,k$4);(!desc||(`get`in desc?!m$2.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m$2[k$4]}}),Object.defineProperty(o$1,k2,desc)}:function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4),o$1[k2]=m$2[k$4]}),__setModuleDefault$1=exports&&exports.__setModuleDefault||(Object.create?function(o$1,v$1){Object.defineProperty(o$1,`default`,{enumerable:!0,value:v$1})}:function(o$1,v$1){o$1.default=v$1}),__importStar$1=exports&&exports.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k$4 in mod)k$4!==`default`&&Object.prototype.hasOwnProperty.call(mod,k$4)&&__createBinding$1(result,mod,k$4);return __setModuleDefault$1(result,mod),result};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.NonRealTimeVAD=exports.defaultNonRealTimeVADOptions=void 0;let ortInstance$1=__importStar$1(require_ort_web_min()),asset_path_1$1=require_asset_path(),default_model_fetcher_1$2=require_default_model_fetcher(),frame_processor_1$2=require_frame_processor(),messages_1$2=require_messages(),models_1$1=require_models(),resampler_1$1=require_resampler();exports.defaultNonRealTimeVADOptions={...frame_processor_1$2.defaultLegacyFrameProcessorOptions,ortConfig:void 0,modelURL:asset_path_1$1.baseAssetPath+`silero_vad_legacy.onnx`,modelFetcher:default_model_fetcher_1$2.defaultModelFetcher};var NonRealTimeVAD=class{static async new(options$1={}){let fullOptions={...exports.defaultNonRealTimeVADOptions,...options$1};(0,frame_processor_1$2.validateOptions)(fullOptions),fullOptions.ortConfig!==void 0&&fullOptions.ortConfig(ortInstance$1);let modelFetcher=()=>fullOptions.modelFetcher(fullOptions.modelURL),model=await models_1$1.SileroLegacy.new(ortInstance$1,modelFetcher),frameProcessor=new frame_processor_1$2.FrameProcessor(model.process,model.reset_state,{frameSamples:fullOptions.frameSamples,positiveSpeechThreshold:fullOptions.positiveSpeechThreshold,negativeSpeechThreshold:fullOptions.negativeSpeechThreshold,redemptionFrames:fullOptions.redemptionFrames,preSpeechPadFrames:fullOptions.preSpeechPadFrames,minSpeechFrames:fullOptions.minSpeechFrames,submitUserSpeechOnPause:fullOptions.submitUserSpeechOnPause});frameProcessor.resume();let vad=new this(modelFetcher,ortInstance$1,fullOptions,frameProcessor);return vad}constructor(modelFetcher,ort,options$1,frameProcessor){this.modelFetcher=modelFetcher,this.ort=ort,this.options=options$1,this.frameProcessor=frameProcessor}async*run(inputAudio,sampleRate){let resamplerOptions={nativeSampleRate:sampleRate,targetSampleRate:16e3,targetFrameSize:this.options.frameSamples},resampler=new resampler_1$1.Resampler(resamplerOptions),start=0,end=0,frameIndex=0,messageContainer=[];for await(let frame$1 of resampler.stream(inputAudio)){await this.frameProcessor.process(frame$1,event=>{messageContainer.push(event)});for(let event of messageContainer)switch(event.msg){case messages_1$2.Message.SpeechStart:start=frameIndex*this.options.frameSamples/16;break;case messages_1$2.Message.SpeechEnd:end=(frameIndex+1)*this.options.frameSamples/16,yield{audio:event.audio,start,end};break;default:break}frameIndex++}let{msg,audio}=this.frameProcessor.endSegment(event=>{messageContainer.push(event)});for(let event of messageContainer)switch(event.msg){case messages_1$2.Message.SpeechEnd:yield{audio:event.audio,start,end:frameIndex*this.options.frameSamples/16}}}};exports.NonRealTimeVAD=NonRealTimeVAD}),require_utils=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.audioFileToArray=exports.encodeWAV=exports.arrayBufferToBase64=exports.minFramesForTargetMS=void 0;function minFramesForTargetMS(targetDuration,frameSamples,sr=16e3){return Math.ceil(targetDuration*sr/1e3/frameSamples)}exports.minFramesForTargetMS=minFramesForTargetMS;function arrayBufferToBase64(buffer$1){let bytes=new Uint8Array(buffer$1),len=bytes.byteLength,binary=Array(len);for(var i$1=0;i$1{reader.addEventListener(`loadend`,ev=>{let audioData=reader.result;ctx.decodeAudioData(audioData,buffer$1=>{audioBuffer=buffer$1,ctx.startRendering().then(renderedBuffer=>{console.log(`Rendering completed successfully`),res()}).catch(err=>{console.error(`Rendering failed: ${err}`)})},e$3=>{console.log(`Error with decoding audio data: ${e$3}`)})}),reader.readAsArrayBuffer(audioFileData)}),audioBuffer===null)throw Error(`some shit`);let _audioBuffer=audioBuffer,out=new Float32Array(_audioBuffer.length);for(let i$1=0;i$1<_audioBuffer.length;i$1++)for(let j$1=0;j$1<_audioBuffer.numberOfChannels;j$1++)out[i$1]+=_audioBuffer.getChannelData(j$1)[i$1];return{audio:out,sampleRate:_audioBuffer.sampleRate}}exports.audioFileToArray=audioFileToArray}),require_real_time_vad=__commonJSMin(exports=>{var __createBinding=exports&&exports.__createBinding||(Object.create?function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4);var desc=Object.getOwnPropertyDescriptor(m$2,k$4);(!desc||(`get`in desc?!m$2.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m$2[k$4]}}),Object.defineProperty(o$1,k2,desc)}:function(o$1,m$2,k$4,k2){k2===void 0&&(k2=k$4),o$1[k2]=m$2[k$4]}),__setModuleDefault=exports&&exports.__setModuleDefault||(Object.create?function(o$1,v$1){Object.defineProperty(o$1,`default`,{enumerable:!0,value:v$1})}:function(o$1,v$1){o$1.default=v$1}),__importStar=exports&&exports.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k$4 in mod)k$4!==`default`&&Object.prototype.hasOwnProperty.call(mod,k$4)&&__createBinding(result,mod,k$4);return __setModuleDefault(result,mod),result};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.AudioNodeVAD=exports.MicVAD=exports.getDefaultRealTimeVADOptions=exports.ort=exports.DEFAULT_MODEL=void 0;let ortInstance=__importStar(require_ort_web_min()),default_model_fetcher_1$1=require_default_model_fetcher(),frame_processor_1$1=require_frame_processor(),logging_1=require_logging(),messages_1$1=require_messages(),models_1=require_models(),resampler_1=require_resampler();exports.DEFAULT_MODEL=`legacy`,exports.ort=ortInstance;let workletFile=`vad.worklet.bundle.min.js`,sileroV5File=`silero_vad_v5.onnx`,sileroLegacyFile=`silero_vad_legacy.onnx`,getDefaultRealTimeVADOptions$1=model=>{let frameProcessorOptions=model===`v5`?frame_processor_1$1.defaultV5FrameProcessorOptions:frame_processor_1$1.defaultLegacyFrameProcessorOptions;return{...frameProcessorOptions,onFrameProcessed:(probabilities,frame$1)=>{},onVADMisfire:()=>{logging_1.log.debug(`VAD misfire`)},onSpeechStart:()=>{logging_1.log.debug(`Detected speech start`)},onSpeechEnd:()=>{logging_1.log.debug(`Detected speech end`)},onSpeechRealStart:()=>{logging_1.log.debug(`Detected real speech start`)},baseAssetPath:`https://cdn.jsdelivr.net/npm/@ricky0123/vad-web@latest/dist/`,onnxWASMBasePath:`https://cdn.jsdelivr.net/npm/onnxruntime-web@1.14.0/dist/`,stream:void 0,ortConfig:void 0,model,workletOptions:{}}};exports.getDefaultRealTimeVADOptions=getDefaultRealTimeVADOptions$1;var MicVAD$1=class MicVAD$1{static async new(options$1={}){let fullOptions={...(0,exports.getDefaultRealTimeVADOptions)(options$1.model??exports.DEFAULT_MODEL),...options$1};(0,frame_processor_1$1.validateOptions)(fullOptions);let stream;stream=fullOptions.stream===void 0?await navigator.mediaDevices.getUserMedia({audio:{...fullOptions.additionalAudioConstraints,channelCount:1,echoCancellation:!0,autoGainControl:!0,noiseSuppression:!0}}):fullOptions.stream;let audioContext=new AudioContext,sourceNode=new MediaStreamAudioSourceNode(audioContext,{mediaStream:stream}),audioNodeVAD=await AudioNodeVAD.new(audioContext,fullOptions);return audioNodeVAD.receive(sourceNode),new MicVAD$1(fullOptions,audioContext,stream,audioNodeVAD,sourceNode)}constructor(options$1,audioContext,stream,audioNodeVAD,sourceNode,listening=!1){this.options=options$1,this.audioContext=audioContext,this.stream=stream,this.audioNodeVAD=audioNodeVAD,this.sourceNode=sourceNode,this.listening=listening,this.pause=()=>{this.audioNodeVAD.pause(),this.listening=!1},this.start=()=>{this.audioNodeVAD.start(),this.listening=!0},this.destroy=()=>{this.listening&&this.pause(),this.options.stream===void 0&&this.stream.getTracks().forEach(track$1=>track$1.stop()),this.sourceNode.disconnect(),this.audioNodeVAD.destroy(),this.audioContext.close()},this.setOptions=options$2=>{this.audioNodeVAD.setFrameProcessorOptions(options$2)}}};exports.MicVAD=MicVAD$1;var AudioNodeVAD=class AudioNodeVAD{static async new(ctx,options$1={}){let fullOptions={...(0,exports.getDefaultRealTimeVADOptions)(options$1.model??exports.DEFAULT_MODEL),...options$1};(0,frame_processor_1$1.validateOptions)(fullOptions),exports.ort.env.wasm.wasmPaths=fullOptions.onnxWASMBasePath,fullOptions.ortConfig!==void 0&&fullOptions.ortConfig(exports.ort);let modelFile=fullOptions.model===`v5`?sileroV5File:sileroLegacyFile,modelURL=fullOptions.baseAssetPath+modelFile,modelFactory=fullOptions.model===`v5`?models_1.SileroV5.new:models_1.SileroLegacy.new,model;try{model=await modelFactory(exports.ort,()=>(0,default_model_fetcher_1$1.defaultModelFetcher)(modelURL))}catch(e$3){throw console.error(`Encountered an error while loading model file ${modelURL}`),e$3}let frameProcessor=new frame_processor_1$1.FrameProcessor(model.process,model.reset_state,{frameSamples:fullOptions.frameSamples,positiveSpeechThreshold:fullOptions.positiveSpeechThreshold,negativeSpeechThreshold:fullOptions.negativeSpeechThreshold,redemptionFrames:fullOptions.redemptionFrames,preSpeechPadFrames:fullOptions.preSpeechPadFrames,minSpeechFrames:fullOptions.minSpeechFrames,submitUserSpeechOnPause:fullOptions.submitUserSpeechOnPause}),audioNodeVAD=new AudioNodeVAD(ctx,fullOptions,frameProcessor);return await audioNodeVAD.setupAudioNode(),audioNodeVAD}constructor(ctx,options$1,frameProcessor){this.ctx=ctx,this.options=options$1,this.bufferIndex=0,this.pause=()=>{this.frameProcessor.pause(this.handleFrameProcessorEvent)},this.start=()=>{this.frameProcessor.resume()},this.receive=node$1=>{node$1.connect(this.audioNode)},this.processFrame=async frame$1=>{await this.frameProcessor.process(frame$1,this.handleFrameProcessorEvent)},this.handleFrameProcessorEvent=ev=>{switch(ev.msg){case messages_1$1.Message.FrameProcessed:this.options.onFrameProcessed(ev.probs,ev.frame);break;case messages_1$1.Message.SpeechStart:this.options.onSpeechStart();break;case messages_1$1.Message.SpeechRealStart:this.options.onSpeechRealStart();break;case messages_1$1.Message.VADMisfire:this.options.onVADMisfire();break;case messages_1$1.Message.SpeechEnd:this.options.onSpeechEnd(ev.audio);break}},this.destroy=()=>{this.audioNode instanceof AudioWorkletNode&&this.audioNode.port.postMessage({message:messages_1$1.Message.SpeechStop}),this.audioNode.disconnect(),this.gainNode?.disconnect()},this.setFrameProcessorOptions=options$2=>{this.frameProcessor.options={...this.frameProcessor.options,...options$2}},this.frameProcessor=frameProcessor}async setupAudioNode(){let hasAudioWorklet=`audioWorklet`in this.ctx&&typeof AudioWorkletNode==`function`;if(hasAudioWorklet)try{let workletURL=this.options.baseAssetPath+workletFile;await this.ctx.audioWorklet.addModule(workletURL);let workletOptions=this.options.workletOptions??{};workletOptions.processorOptions={...workletOptions.processorOptions??{},frameSamples:this.options.frameSamples},this.audioNode=new AudioWorkletNode(this.ctx,`vad-helper-worklet`,workletOptions),this.audioNode.port.onmessage=async ev=>{switch(ev.data?.message){case messages_1$1.Message.AudioFrame:let buffer$1=ev.data.data;buffer$1 instanceof ArrayBuffer||(buffer$1=new ArrayBuffer(ev.data.data.byteLength),new Uint8Array(buffer$1).set(new Uint8Array(ev.data.data)));let frame$1=new Float32Array(buffer$1);await this.processFrame(frame$1);break}};return}catch(e$3){console.log(`AudioWorklet setup failed, falling back to ScriptProcessor`,e$3)}this.resampler=new resampler_1.Resampler({nativeSampleRate:this.ctx.sampleRate,targetSampleRate:16e3,targetFrameSize:this.options.frameSamples??480});let bufferSize=4096;this.audioNode=this.ctx.createScriptProcessor(bufferSize,1,1),this.gainNode=this.ctx.createGain(),this.gainNode.gain.value=0;let processingAudio=!1;this.audioNode.onaudioprocess=async e$3=>{if(!processingAudio){processingAudio=!0;try{let input=e$3.inputBuffer.getChannelData(0),output=e$3.outputBuffer.getChannelData(0);if(output.fill(0),this.resampler){let frames=this.resampler.process(input);for(let frame$1 of frames)await this.processFrame(frame$1)}}catch(error){console.error(`Error processing audio:`,error)}finally{processingAudio=!1}}},this.audioNode.connect(this.gainNode),this.gainNode.connect(this.ctx.destination)}};exports.AudioNodeVAD=AudioNodeVAD}),require_dist=__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.getDefaultRealTimeVADOptions=exports.MicVAD=exports.DEFAULT_MODEL=exports.AudioNodeVAD=exports.utils=exports.NonRealTimeVAD=exports.Message=exports.FrameProcessor=exports.defaultModelFetcher=exports.baseAssetPath=void 0;var asset_path_1=require_asset_path();Object.defineProperty(exports,`baseAssetPath`,{enumerable:!0,get:function(){return asset_path_1.baseAssetPath}});var default_model_fetcher_1=require_default_model_fetcher();Object.defineProperty(exports,`defaultModelFetcher`,{enumerable:!0,get:function(){return default_model_fetcher_1.defaultModelFetcher}});var frame_processor_1=require_frame_processor();Object.defineProperty(exports,`FrameProcessor`,{enumerable:!0,get:function(){return frame_processor_1.FrameProcessor}});var messages_1=require_messages();Object.defineProperty(exports,`Message`,{enumerable:!0,get:function(){return messages_1.Message}});var non_real_time_vad_1=require_non_real_time_vad();Object.defineProperty(exports,`NonRealTimeVAD`,{enumerable:!0,get:function(){return non_real_time_vad_1.NonRealTimeVAD}});let utils_1=require_utils();exports.utils={audioFileToArray:utils_1.audioFileToArray,minFramesForTargetMS:utils_1.minFramesForTargetMS,arrayBufferToBase64:utils_1.arrayBufferToBase64,encodeWAV:utils_1.encodeWAV};var real_time_vad_1=require_real_time_vad();Object.defineProperty(exports,`AudioNodeVAD`,{enumerable:!0,get:function(){return real_time_vad_1.AudioNodeVAD}}),Object.defineProperty(exports,`DEFAULT_MODEL`,{enumerable:!0,get:function(){return real_time_vad_1.DEFAULT_MODEL}}),Object.defineProperty(exports,`MicVAD`,{enumerable:!0,get:function(){return real_time_vad_1.MicVAD}}),Object.defineProperty(exports,`getDefaultRealTimeVADOptions`,{enumerable:!0,get:function(){return real_time_vad_1.getDefaultRealTimeVADOptions}})}),import_dist=__toESM(require_dist());function useMicVAD(deviceId,options$1={}){let opts=merge$2({...(0,import_dist.getDefaultRealTimeVADOptions)(`v5`),preSpeechPadFrames:30,positiveSpeechThreshold:.5,negativeSpeechThreshold:.35,minSpeechFrames:30,auto:!0},options$1),micVad=ref(),microphoneAccess=usePermission(`microphone`);async function update(){if(micVad.value&&(micVad.value.destroy(),micVad.value=void 0,console.warn(`existing MicVAD destroyed`)),!microphoneAccess.value)return;let id=unref(deviceId);if(!id)return;let media=await navigator.mediaDevices.getUserMedia({audio:{deviceId:id}});micVad.value=await import_dist.MicVAD.new({...opts,stream:media}),opts.auto&&micVad.value.start()}return watch(microphoneAccess,update,{immediate:!0}),watch(toRef(deviceId),update,{immediate:!0}),tryOnMounted(update),onUnmounted(()=>{micVad.value&&(micVad.value.destroy(),micVad.value=void 0)}),{destroy:()=>{micVad.value&&(micVad.value.destroy(),micVad.value=void 0)},start:()=>{micVad.value&&micVad.value.start()}}}function useQueue(options$1){let queue$1=ref([]),isProcessing$1=ref(!1),internalEventHandler={add:[],pick:[],processing:[],error:[],processed:[],done:[]},internalHandlerEventHandler={};function on$1(eventName,handler){internalEventHandler[eventName].push(handler)}function emit$1(eventName,...params){let handlers$3=internalEventHandler[eventName];handlers$3.forEach(handler=>{handler(...params)})}function onHandlerEvent(eventName,handler){internalHandlerEventHandler[eventName]=internalHandlerEventHandler[eventName]||[],internalHandlerEventHandler[eventName].push(handler)}function emitHandlerEvent(eventName,...params){let handlers$3=internalHandlerEventHandler[eventName]||[];handlers$3.forEach(handler=>{handler(...params)})}async function add$1(payload){queue$1.value.push(payload),emit$1(`add`,payload)}function pick(){let payload=queue$1.value.shift();if(payload)return emit$1(`pick`,payload),payload}async function handleItem(){if(isProcessing$1.value)return;let payload=pick();if(payload){isProcessing$1.value=!0;for(let handler of options$1.handlers){emit$1(`processing`,payload,handler);try{let result=await handler({data:payload,itemsToBeProcessed:()=>queue$1.value.length,emit:emitHandlerEvent});emit$1(`processed`,payload,result,handler)}catch(err){emit$1(`error`,payload,err,handler);continue}}isProcessing$1.value=!1,emit$1(`done`,payload),queue$1.value.length>0&&handleItem()}}return on$1(`add`,handleItem),on$1(`done`,handleItem),{add:add$1,on:on$1,onHandlerEvent,queue:queue$1}}function useEmotionsMessageQueue(emotionsQueue){function splitEmotion(content$2){for(let emotion of EMOTION_VALUES){if(!content$2.includes(emotion))continue;return{ok:!0,emotion}}return{ok:!1,emotion:``}}return useQueue({handlers:[async ctx=>{if(EMOTION_VALUES.includes(ctx.data)){ctx.emit(`emotion`,ctx.data),await emotionsQueue.add(ctx.data);return}{let{ok:ok$2,emotion}=splitEmotion(ctx.data);ok$2&&(ctx.emit(`emotion`,emotion),await emotionsQueue.add(emotion))}}]})}function useDelayMessageQueue(){function splitDelays(content$2){if(!/<\|DELAY:\d+\|>/i.test(content$2))return{ok:!1,delay:0};let delayExecArray=/<\|DELAY:(\d+)\|>/i.exec(content$2),delay=delayExecArray?.[1];if(!delay)return{ok:!1,delay:0};let delaySeconds=Number.parseFloat(delay);return delaySeconds<=0||Number.isNaN(delaySeconds)?{ok:!0,delay:0}:{ok:!0,delay:delaySeconds}}return useQueue({handlers:[async ctx=>{let{ok:ok$2,delay}=splitDelays(ctx.data);ok$2&&(ctx.emit(`delay`,delay),await sleep$1(delay*1e3))}]})}function useMessageContentQueue(ttsQueue){let processed=ref(``);return useQueue({handlers:[async ctx=>{if(ctx.data===llmInferenceEndToken){let content$2=processed.value.trim();content$2&&await ttsQueue.add(content$2),processed.value=``;return}let endMarker=/[.?!]/;for(processed.value+=ctx.data;processed.value;){let endMarkerExecArray=endMarker.exec(processed.value);if(!endMarkerExecArray||endMarkerExecArray.index===void 0)break;let before=processed.value.slice(0,endMarkerExecArray.index+1),after=processed.value.slice(endMarkerExecArray.index+1);await ttsQueue.add(before),processed.value=after}}]})} /*! * @pixiv/three-vrm-animation v3.4.1 * The implementation of VRM Animation @@ -4987,12 +4987,12 @@ void main() { * @pixiv/three-vrm-springbone is distributed under MIT License * https://github.com/pixiv/three-vrm/blob/release/LICENSE */ -function toTrianglesDrawMode(geometry,drawMode){if(drawMode===TrianglesDrawMode)return console.warn(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.`),geometry;if(drawMode===TriangleFanDrawMode||drawMode===TriangleStripDrawMode){let index$1=geometry.getIndex();if(index$1===null){let indices=[],position$2=geometry.getAttribute(`position`);if(position$2!==void 0){for(let i$1=0;i$1=2.0 are supported.`));return}let parser=new GLTFParser(json,{path:path||this.resourcePath||``,crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});parser.fileLoader.setRequestHeader(this.requestHeader);for(let i$1=0;i$1=0&&plugins[extensionName]===void 0&&console.warn(`THREE.GLTFLoader: Unknown extension "`+extensionName+`".`)}}parser.setExtensions(extensions),parser.setPlugins(plugins),parser.parse(onLoad,onError)}parseAsync(data$10,path){let scope=this;return new Promise(function(resolve$1,reject){scope.parse(data$10,path,resolve$1,reject)})}};function GLTFRegistry(){let objects={};return{get:function(key$1){return objects[key$1]},add:function(key$1,object){objects[key$1]=object},remove:function(key$1){delete objects[key$1]},removeAll:function(){objects={}}}}const EXTENSIONS={KHR_BINARY_GLTF:`KHR_binary_glTF`,KHR_DRACO_MESH_COMPRESSION:`KHR_draco_mesh_compression`,KHR_LIGHTS_PUNCTUAL:`KHR_lights_punctual`,KHR_MATERIALS_CLEARCOAT:`KHR_materials_clearcoat`,KHR_MATERIALS_DISPERSION:`KHR_materials_dispersion`,KHR_MATERIALS_IOR:`KHR_materials_ior`,KHR_MATERIALS_SHEEN:`KHR_materials_sheen`,KHR_MATERIALS_SPECULAR:`KHR_materials_specular`,KHR_MATERIALS_TRANSMISSION:`KHR_materials_transmission`,KHR_MATERIALS_IRIDESCENCE:`KHR_materials_iridescence`,KHR_MATERIALS_ANISOTROPY:`KHR_materials_anisotropy`,KHR_MATERIALS_UNLIT:`KHR_materials_unlit`,KHR_MATERIALS_VOLUME:`KHR_materials_volume`,KHR_TEXTURE_BASISU:`KHR_texture_basisu`,KHR_TEXTURE_TRANSFORM:`KHR_texture_transform`,KHR_MESH_QUANTIZATION:`KHR_mesh_quantization`,KHR_MATERIALS_EMISSIVE_STRENGTH:`KHR_materials_emissive_strength`,EXT_MATERIALS_BUMP:`EXT_materials_bump`,EXT_TEXTURE_WEBP:`EXT_texture_webp`,EXT_TEXTURE_AVIF:`EXT_texture_avif`,EXT_MESHOPT_COMPRESSION:`EXT_meshopt_compression`,EXT_MESH_GPU_INSTANCING:`EXT_mesh_gpu_instancing`};var GLTFLightsExtension=class{constructor(parser){this.parser=parser,this.name=EXTENSIONS.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let parser=this.parser,nodeDefs=this.parser.json.nodes||[];for(let nodeIndex=0,nodeLength=nodeDefs.length;nodeIndex=0)throw Error(`THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures`);return null}return parser.loadTextureImage(textureIndex,extension$1.source,loader$1)}},GLTFTextureWebPExtension=class{constructor(parser){this.parser=parser,this.name=EXTENSIONS.EXT_TEXTURE_WEBP}loadTexture(textureIndex){let name$2=this.name,parser=this.parser,json=parser.json,textureDef=json.textures[textureIndex];if(!textureDef.extensions||!textureDef.extensions[name$2])return null;let extension$1=textureDef.extensions[name$2],source=json.images[extension$1.source],loader$1=parser.textureLoader;if(source.uri){let handler=parser.options.manager.getHandler(source.uri);handler!==null&&(loader$1=handler)}return parser.loadTextureImage(textureIndex,extension$1.source,loader$1)}},GLTFTextureAVIFExtension=class{constructor(parser){this.parser=parser,this.name=EXTENSIONS.EXT_TEXTURE_AVIF}loadTexture(textureIndex){let name$2=this.name,parser=this.parser,json=parser.json,textureDef=json.textures[textureIndex];if(!textureDef.extensions||!textureDef.extensions[name$2])return null;let extension$1=textureDef.extensions[name$2],source=json.images[extension$1.source],loader$1=parser.textureLoader;if(source.uri){let handler=parser.options.manager.getHandler(source.uri);handler!==null&&(loader$1=handler)}return parser.loadTextureImage(textureIndex,extension$1.source,loader$1)}},GLTFMeshoptCompression=class{constructor(parser){this.name=EXTENSIONS.EXT_MESHOPT_COMPRESSION,this.parser=parser}loadBufferView(index$1){let json=this.parser.json,bufferView=json.bufferViews[index$1];if(bufferView.extensions&&bufferView.extensions[this.name]){let extensionDef=bufferView.extensions[this.name],buffer$1=this.parser.getDependency(`buffer`,extensionDef.buffer),decoder=this.parser.options.meshoptDecoder;if(!decoder||!decoder.supported){if(json.extensionsRequired&&json.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files`);return null}return buffer$1.then(function(res){let byteOffset=extensionDef.byteOffset||0,byteLength=extensionDef.byteLength||0,count$1=extensionDef.count,stride=extensionDef.byteStride,source=new Uint8Array(res,byteOffset,byteLength);return decoder.decodeGltfBufferAsync?decoder.decodeGltfBufferAsync(count$1,stride,source,extensionDef.mode,extensionDef.filter).then(function(res$1){return res$1.buffer}):decoder.ready.then(function(){let result=new ArrayBuffer(count$1*stride);return decoder.decodeGltfBuffer(new Uint8Array(result),count$1,stride,source,extensionDef.mode,extensionDef.filter),result})})}else return null}},GLTFMeshGpuInstancing=class{constructor(parser){this.name=EXTENSIONS.EXT_MESH_GPU_INSTANCING,this.parser=parser}createNodeMesh(nodeIndex){let json=this.parser.json,nodeDef=json.nodes[nodeIndex];if(!nodeDef.extensions||!nodeDef.extensions[this.name]||nodeDef.mesh===void 0)return null;let meshDef=json.meshes[nodeDef.mesh];for(let primitive of meshDef.primitives)if(primitive.mode!==WEBGL_CONSTANTS.TRIANGLES&&primitive.mode!==WEBGL_CONSTANTS.TRIANGLE_STRIP&&primitive.mode!==WEBGL_CONSTANTS.TRIANGLE_FAN&&primitive.mode!==void 0)return null;let extensionDef=nodeDef.extensions[this.name],attributesDef=extensionDef.attributes,pending=[],attributes={};for(let key$1 in attributesDef)pending.push(this.parser.getDependency(`accessor`,attributesDef[key$1]).then(accessor=>(attributes[key$1]=accessor,attributes[key$1])));return pending.length<1?null:(pending.push(this.parser.createNodeMesh(nodeIndex)),Promise.all(pending).then(results=>{let nodeObject=results.pop(),meshes=nodeObject.isGroup?nodeObject.children:[nodeObject],count$1=results[0].count,instancedMeshes=[];for(let mesh of meshes){let m$2=new Matrix4,p$5=new Vector3,q$1=new Quaternion,s$1=new Vector3(1,1,1),instancedMesh=new InstancedMesh(mesh.geometry,mesh.material,count$1);for(let i$1=0;i$10||uri.search(/^data\:image\/jpeg/)===0?`image/jpeg`:uri.search(/\.webp($|\?)/i)>0||uri.search(/^data\:image\/webp/)===0?`image/webp`:uri.search(/\.ktx2($|\?)/i)>0||uri.search(/^data\:image\/ktx2/)===0?`image/ktx2`:`image/png`}const _identityMatrix=new Matrix4;var GLTFParser=class{constructor(json={},options$1={}){this.json=json,this.extensions={},this.plugins={},this.options=options$1,this.cache=new GLTFRegistry,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let isSafari=!1,safariVersion=-1,isFirefox=!1,firefoxVersion=-1;if(typeof navigator<`u`){let userAgent=navigator.userAgent;isSafari=/^((?!chrome|android).)*safari/i.test(userAgent)===!0;let safariMatch=userAgent.match(/Version\/(\d+)/);safariVersion=isSafari&&safariMatch?parseInt(safariMatch[1],10):-1,isFirefox=userAgent.indexOf(`Firefox`)>-1,firefoxVersion=isFirefox?userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1}typeof createImageBitmap>`u`||isSafari&&safariVersion<17||isFirefox&&firefoxVersion<98?this.textureLoader=new TextureLoader(this.options.manager):this.textureLoader=new ImageBitmapLoader(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new FileLoader(this.options.manager),this.fileLoader.setResponseType(`arraybuffer`),this.options.crossOrigin===`use-credentials`&&this.fileLoader.setWithCredentials(!0)}setExtensions(extensions){this.extensions=extensions}setPlugins(plugins){this.plugins=plugins}parse(onLoad,onError){let parser=this,json=this.json,extensions=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(ext){return ext._markDefs&&ext._markDefs()}),Promise.all(this._invokeAll(function(ext){return ext.beforeRoot&&ext.beforeRoot()})).then(function(){return Promise.all([parser.getDependencies(`scene`),parser.getDependencies(`animation`),parser.getDependencies(`camera`)])}).then(function(dependencies){let result={scene:dependencies[0][json.scene||0],scenes:dependencies[0],animations:dependencies[1],cameras:dependencies[2],asset:json.asset,parser,userData:{}};return addUnknownExtensionsToUserData(extensions,result,json),assignExtrasToUserData(result,json),Promise.all(parser._invokeAll(function(ext){return ext.afterRoot&&ext.afterRoot(result)})).then(function(){for(let scene of result.scenes)scene.updateMatrixWorld();onLoad(result)})}).catch(onError)}_markDefs(){let nodeDefs=this.json.nodes||[],skinDefs=this.json.skins||[],meshDefs=this.json.meshes||[];for(let skinIndex=0,skinLength=skinDefs.length;skinIndex{let mappings=this.associations.get(original);mappings!=null&&this.associations.set(clone$2,mappings);for(let[i$1,child]of original.children.entries())updateMappings(child,clone$2.children[i$1])};return updateMappings(object,ref$1),ref$1.name+=`_instance_`+ cache$1.uses[index$1]++,ref$1}_invokeOne(func){let extensions=Object.values(this.plugins);extensions.push(this);for(let i$1=0;i$1=2&&bufferAttribute.setY(index$1,sparseValues[i$1*itemSize+1]),itemSize>=3&&bufferAttribute.setZ(index$1,sparseValues[i$1*itemSize+2]),itemSize>=4&&bufferAttribute.setW(index$1,sparseValues[i$1*itemSize+3]),itemSize>=5)throw Error(`THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.`)}bufferAttribute.normalized=normalized}return bufferAttribute})}loadTexture(textureIndex){let json=this.json,options$1=this.options,textureDef=json.textures[textureIndex],sourceIndex=textureDef.source,sourceDef=json.images[sourceIndex],loader$1=this.textureLoader;if(sourceDef.uri){let handler=options$1.manager.getHandler(sourceDef.uri);handler!==null&&(loader$1=handler)}return this.loadTextureImage(textureIndex,sourceIndex,loader$1)}loadTextureImage(textureIndex,sourceIndex,loader$1){let parser=this,json=this.json,textureDef=json.textures[textureIndex],sourceDef=json.images[sourceIndex],cacheKey=(sourceDef.uri||sourceDef.bufferView)+`:`+textureDef.sampler;if(this.textureCache[cacheKey])return this.textureCache[cacheKey];let promise=this.loadImageSource(sourceIndex,loader$1).then(function(texture){texture.flipY=!1,texture.name=textureDef.name||sourceDef.name||``,texture.name===``&&typeof sourceDef.uri==`string`&&sourceDef.uri.startsWith(`data:image/`)===!1&&(texture.name=sourceDef.uri);let samplers=json.samplers||{},sampler=samplers[textureDef.sampler]||{};return texture.magFilter=WEBGL_FILTERS[sampler.magFilter]||LinearFilter,texture.minFilter=WEBGL_FILTERS[sampler.minFilter]||LinearMipmapLinearFilter,texture.wrapS=WEBGL_WRAPPINGS[sampler.wrapS]||RepeatWrapping,texture.wrapT=WEBGL_WRAPPINGS[sampler.wrapT]||RepeatWrapping,texture.generateMipmaps=!texture.isCompressedTexture&&texture.minFilter!==NearestFilter&&texture.minFilter!==LinearFilter,parser.associations.set(texture,{textures:textureIndex}),texture}).catch(function(){return null});return this.textureCache[cacheKey]=promise,promise}loadImageSource(sourceIndex,loader$1){let parser=this,json=this.json,options$1=this.options;if(this.sourceCache[sourceIndex]!==void 0)return this.sourceCache[sourceIndex].then(texture=>texture.clone());let sourceDef=json.images[sourceIndex],URL$1=self.URL||self.webkitURL,sourceURI=sourceDef.uri||``,isObjectURL=!1;if(sourceDef.bufferView!==void 0)sourceURI=parser.getDependency(`bufferView`,sourceDef.bufferView).then(function(bufferView){isObjectURL=!0;let blob=new Blob([bufferView],{type:sourceDef.mimeType});return sourceURI=URL$1.createObjectURL(blob),sourceURI});else if(sourceDef.uri===void 0)throw Error(`THREE.GLTFLoader: Image `+sourceIndex+` is missing URI and bufferView`);let promise=Promise.resolve(sourceURI).then(function(sourceURI$1){return new Promise(function(resolve$1,reject){let onLoad=resolve$1;loader$1.isImageBitmapLoader===!0&&(onLoad=function(imageBitmap){let texture=new Texture(imageBitmap);texture.needsUpdate=!0,resolve$1(texture)}),loader$1.load(LoaderUtils.resolveURL(sourceURI$1,options$1.path),onLoad,void 0,reject)})}).then(function(texture){return isObjectURL===!0&&URL$1.revokeObjectURL(sourceURI),assignExtrasToUserData(texture,sourceDef),texture.userData.mimeType=sourceDef.mimeType||getImageURIMimeType(sourceDef.uri),texture}).catch(function(error){throw console.error(`THREE.GLTFLoader: Couldn't load texture`,sourceURI),error});return this.sourceCache[sourceIndex]=promise,promise}assignTexture(materialParams,mapName,mapDef,colorSpace){let parser=this;return this.getDependency(`texture`,mapDef.index).then(function(texture){if(!texture)return null;if(mapDef.texCoord!==void 0&&mapDef.texCoord>0&&(texture=texture.clone(),texture.channel=mapDef.texCoord),parser.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM]){let transform$1=mapDef.extensions===void 0?void 0:mapDef.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM];if(transform$1){let gltfReference=parser.associations.get(texture);texture=parser.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM].extendTexture(texture,transform$1),parser.associations.set(texture,gltfReference)}}return colorSpace!==void 0&&(texture.colorSpace=colorSpace),materialParams[mapName]=texture,texture})}assignFinalMaterial(mesh){let geometry=mesh.geometry,material=mesh.material,useDerivativeTangents=geometry.attributes.tangent===void 0,useVertexColors=geometry.attributes.color!==void 0,useFlatShading=geometry.attributes.normal===void 0;if(mesh.isPoints){let cacheKey=`PointsMaterial:`+material.uuid,pointsMaterial=this.cache.get(cacheKey);pointsMaterial||(pointsMaterial=new PointsMaterial,Material.prototype.copy.call(pointsMaterial,material),pointsMaterial.color.copy(material.color),pointsMaterial.map=material.map,pointsMaterial.sizeAttenuation=!1,this.cache.add(cacheKey,pointsMaterial)),material=pointsMaterial}else if(mesh.isLine){let cacheKey=`LineBasicMaterial:`+material.uuid,lineMaterial=this.cache.get(cacheKey);lineMaterial||(lineMaterial=new LineBasicMaterial,Material.prototype.copy.call(lineMaterial,material),lineMaterial.color.copy(material.color),lineMaterial.map=material.map,this.cache.add(cacheKey,lineMaterial)),material=lineMaterial}if(useDerivativeTangents||useVertexColors||useFlatShading){let cacheKey=`ClonedMaterial:`+material.uuid+`:`;useDerivativeTangents&&(cacheKey+=`derivative-tangents:`),useVertexColors&&(cacheKey+=`vertex-colors:`),useFlatShading&&(cacheKey+=`flat-shading:`);let cachedMaterial=this.cache.get(cacheKey);cachedMaterial||(cachedMaterial=material.clone(),useVertexColors&&(cachedMaterial.vertexColors=!0),useFlatShading&&(cachedMaterial.flatShading=!0),useDerivativeTangents&&(cachedMaterial.normalScale&&(cachedMaterial.normalScale.y*=-1),cachedMaterial.clearcoatNormalScale&&(cachedMaterial.clearcoatNormalScale.y*=-1)),this.cache.add(cacheKey,cachedMaterial),this.associations.set(cachedMaterial,this.associations.get(material))),material=cachedMaterial}mesh.material=material}getMaterialType(){return MeshStandardMaterial}loadMaterial(materialIndex){let parser=this,json=this.json,extensions=this.extensions,materialDef=json.materials[materialIndex],materialType,materialParams={},materialExtensions=materialDef.extensions||{},pending=[];if(materialExtensions[EXTENSIONS.KHR_MATERIALS_UNLIT]){let kmuExtension=extensions[EXTENSIONS.KHR_MATERIALS_UNLIT];materialType=kmuExtension.getMaterialType(),pending.push(kmuExtension.extendParams(materialParams,materialDef,parser))}else{let metallicRoughness=materialDef.pbrMetallicRoughness||{};if(materialParams.color=new Color(1,1,1),materialParams.opacity=1,Array.isArray(metallicRoughness.baseColorFactor)){let array=metallicRoughness.baseColorFactor;materialParams.color.setRGB(array[0],array[1],array[2],LinearSRGBColorSpace),materialParams.opacity=array[3]}metallicRoughness.baseColorTexture!==void 0&&pending.push(parser.assignTexture(materialParams,`map`,metallicRoughness.baseColorTexture,SRGBColorSpace)),materialParams.metalness=metallicRoughness.metallicFactor===void 0?1:metallicRoughness.metallicFactor,materialParams.roughness=metallicRoughness.roughnessFactor===void 0?1:metallicRoughness.roughnessFactor,metallicRoughness.metallicRoughnessTexture!==void 0&&(pending.push(parser.assignTexture(materialParams,`metalnessMap`,metallicRoughness.metallicRoughnessTexture)),pending.push(parser.assignTexture(materialParams,`roughnessMap`,metallicRoughness.metallicRoughnessTexture))),materialType=this._invokeOne(function(ext){return ext.getMaterialType&&ext.getMaterialType(materialIndex)}),pending.push(Promise.all(this._invokeAll(function(ext){return ext.extendMaterialParams&&ext.extendMaterialParams(materialIndex,materialParams)})))}materialDef.doubleSided===!0&&(materialParams.side=DoubleSide);let alphaMode=materialDef.alphaMode||ALPHA_MODES.OPAQUE;if(alphaMode===ALPHA_MODES.BLEND?(materialParams.transparent=!0,materialParams.depthWrite=!1):(materialParams.transparent=!1,alphaMode===ALPHA_MODES.MASK&&(materialParams.alphaTest=materialDef.alphaCutoff===void 0?.5:materialDef.alphaCutoff)),materialDef.normalTexture!==void 0&&materialType!==MeshBasicMaterial&&(pending.push(parser.assignTexture(materialParams,`normalMap`,materialDef.normalTexture)),materialParams.normalScale=new Vector2(1,1),materialDef.normalTexture.scale!==void 0)){let scale$1=materialDef.normalTexture.scale;materialParams.normalScale.set(scale$1,scale$1)}if(materialDef.occlusionTexture!==void 0&&materialType!==MeshBasicMaterial&&(pending.push(parser.assignTexture(materialParams,`aoMap`,materialDef.occlusionTexture)),materialDef.occlusionTexture.strength!==void 0&&(materialParams.aoMapIntensity=materialDef.occlusionTexture.strength)),materialDef.emissiveFactor!==void 0&&materialType!==MeshBasicMaterial){let emissiveFactor=materialDef.emissiveFactor;materialParams.emissive=new Color().setRGB(emissiveFactor[0],emissiveFactor[1],emissiveFactor[2],LinearSRGBColorSpace)}return materialDef.emissiveTexture!==void 0&&materialType!==MeshBasicMaterial&&pending.push(parser.assignTexture(materialParams,`emissiveMap`,materialDef.emissiveTexture,SRGBColorSpace)),Promise.all(pending).then(function(){let material=new materialType(materialParams);return materialDef.name&&(material.name=materialDef.name),assignExtrasToUserData(material,materialDef),parser.associations.set(material,{materials:materialIndex}),materialDef.extensions&&addUnknownExtensionsToUserData(extensions,material,materialDef),material})}createUniqueName(originalName){let sanitizedName=PropertyBinding.sanitizeNodeName(originalName||``);return sanitizedName in this.nodeNamesUsed?sanitizedName+`_`+ ++this.nodeNamesUsed[sanitizedName]:(this.nodeNamesUsed[sanitizedName]=0,sanitizedName)}loadGeometries(primitives){let parser=this,extensions=this.extensions,cache$1=this.primitiveCache;function createDracoPrimitive(primitive){return extensions[EXTENSIONS.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(primitive,parser).then(function(geometry){return addPrimitiveAttributes(geometry,primitive,parser)})}let pending=[];for(let i$1=0,il=primitives.length;i$10&&updateMorphTargets(mesh,meshDef),mesh.name=parser.createUniqueName(meshDef.name||`mesh_`+meshIndex),assignExtrasToUserData(mesh,meshDef),primitive.extensions&&addUnknownExtensionsToUserData(extensions,mesh,primitive),parser.assignFinalMaterial(mesh),meshes.push(mesh)}for(let i$1=0,il=meshes.length;i$11?new Group:objects.length===1?objects[0]:new Object3D,node$1!==objects[0])for(let i$1=0,il=objects.length;i$11){let mapping=parser.associations.get(node$1);parser.associations.set(node$1,{...mapping})}return parser.associations.get(node$1).nodes=nodeIndex,node$1}),this.nodeCache[nodeIndex]}loadScene(sceneIndex){let extensions=this.extensions,sceneDef=this.json.scenes[sceneIndex],parser=this,scene=new Group;sceneDef.name&&(scene.name=parser.createUniqueName(sceneDef.name)),assignExtrasToUserData(scene,sceneDef),sceneDef.extensions&&addUnknownExtensionsToUserData(extensions,scene,sceneDef);let nodeIds=sceneDef.nodes||[],pending=[];for(let i$1=0,il=nodeIds.length;i$1{let reducedAssociations=new Map;for(let[key$1,value$1]of parser.associations)(key$1 instanceof Material||key$1 instanceof Texture)&&reducedAssociations.set(key$1,value$1);return node$1.traverse(node$2=>{let mappings=parser.associations.get(node$2);mappings!=null&&reducedAssociations.set(node$2,mappings)}),reducedAssociations};return parser.associations=reduceAssociations(scene),scene})}_createAnimationTracks(node$1,inputAccessor,outputAccessor,sampler,target$1){let tracks=[],targetName=node$1.name?node$1.name:node$1.uuid,targetNames=[];PATH_PROPERTIES[target$1.path]===PATH_PROPERTIES.weights?node$1.traverse(function(object){object.morphTargetInfluences&&targetNames.push(object.name?object.name:object.uuid)}):targetNames.push(targetName);let TypedKeyframeTrack;switch(PATH_PROPERTIES[target$1.path]){case PATH_PROPERTIES.weights:TypedKeyframeTrack=NumberKeyframeTrack;break;case PATH_PROPERTIES.rotation:TypedKeyframeTrack=QuaternionKeyframeTrack;break;case PATH_PROPERTIES.translation:case PATH_PROPERTIES.scale:TypedKeyframeTrack=VectorKeyframeTrack;break;default:switch(outputAccessor.itemSize){case 1:TypedKeyframeTrack=NumberKeyframeTrack;break;case 2:case 3:default:TypedKeyframeTrack=VectorKeyframeTrack;break}break}let interpolation=sampler.interpolation===void 0?InterpolateLinear:INTERPOLATION[sampler.interpolation],outputArray=this._getArrayFromAccessor(outputAccessor);for(let j$1=0,jl=targetNames.length;j$1new VRMLoaderPlugin(parser)),loader.register(parser=>new VRMAnimationLoaderPlugin(parser)),loader)}async function loadVRMAnimation(url){let loader$1=useVRMLoader(),gltf=await loader$1.loadAsync(url),userData=gltf.userData;if(!userData.vrmAnimations){console.warn(`No VRM animations found in the .vrma file`);return}if(userData.vrmAnimations.length===0){console.warn(`No VRM animations found in the .vrma file`);return}return userData.vrmAnimations[0]}async function clipFromVRMAnimation(vrm,animation){if(!vrm){console.warn(`No VRM found`);return}if(animation)return createVRMAnimationClip(animation,vrm)}function useBlink(){let isBlinking=ref(!1),blinkProgress=ref(0),timeSinceLastBlink=ref(0),BLINK_DURATION=.2,MIN_BLINK_INTERVAL=1,MAX_BLINK_INTERVAL=6,nextBlinkTime=ref(Math.random()*(MAX_BLINK_INTERVAL-MIN_BLINK_INTERVAL)+MIN_BLINK_INTERVAL);function update(vrm,delta){if(vrm?.expressionManager&&(timeSinceLastBlink.value+=delta,!isBlinking.value&&timeSinceLastBlink.value>=nextBlinkTime.value&&(isBlinking.value=!0,blinkProgress.value=0),isBlinking.value)){blinkProgress.value+=delta/BLINK_DURATION;let blinkValue=Math.sin(Math.PI*blinkProgress.value);vrm.expressionManager.setValue(`blink`,blinkValue),blinkProgress.value>=1&&(isBlinking.value=!1,timeSinceLastBlink.value=0,vrm.expressionManager.setValue(`blink`,0),nextBlinkTime.value=Math.random()*(MAX_BLINK_INTERVAL-MIN_BLINK_INTERVAL)+MIN_BLINK_INTERVAL)}}return{update}}function useIdleEyeSaccades(){let nextSaccadeAfter=-1,fixationTarget,timeSinceLastSaccade=0;function updateFixationTarget(){fixationTarget?fixationTarget.set(randFloat(-.25,.25),randFloat(-.2,.15),-.65):fixationTarget=new Vector3(randFloat(-.25,.25),randFloat(-.2,.15),-.65)}function update(vrm,delta){var _vrm$lookAt;!vrm?.expressionManager||!vrm.lookAt||(timeSinceLastSaccade>=nextSaccadeAfter?(updateFixationTarget(),timeSinceLastSaccade=0,nextSaccadeAfter=randomSaccadeInterval()/1e3):fixationTarget||updateFixationTarget(),vrm.lookAt.target||(vrm.lookAt.target=new Object3D),vrm.lookAt.target.position.lerp(fixationTarget,randFloat(.2,.5)),(_vrm$lookAt=vrm.lookAt)?.update(delta),timeSinceLastSaccade+=delta)}return{update}}async function loadVrm(model,options$1){let loader$1=useVRMLoader(),gltf=await loader$1.loadAsync(model,progress$1=>{var _options$1$onProgress;return options$1==null||(_options$1$onProgress=options$1.onProgress)==null?void 0:_options$1$onProgress.call(options$1,progress$1)}),userData=gltf.userData;if(!userData.vrm)return;let _vrm=userData.vrm;if(VRMUtils.removeUnnecessaryVertices(_vrm.scene),VRMUtils.combineSkeletons(_vrm.scene),_vrm.scene.traverse(object=>{object.frustumCulled=!1}),options$1?.lookAt&&_vrm.lookAt){let lookAtQuatProxy=new VRMLookAtQuaternionProxy(_vrm.lookAt);lookAtQuatProxy.name=`lookAtQuaternionProxy`,_vrm.scene.add(lookAtQuatProxy)}return options$1?.scene&&options$1.scene.add(_vrm.scene),options$1?.position&&_vrm.scene.position.set(...options$1.position),_vrm}function useVRMEmote(vrm){let currentEmotion=ref(null),isTransitioning=ref(!1),transitionProgress=ref(0),currentExpressionValues=ref(new Map),targetExpressionValues=ref(new Map),resetTimeout=ref(),lerp$3=(start,end,t)=>start+(end-start)*t,easeInOutCubic=t=>t<.5?4*t*t*t:1-(-2*t+2)**3/2,emotionStates=new Map([[`happy`,{expression:[{name:`happy`,value:1,duration:.3},{name:`aa`,value:.3}],blendDuration:.3}],[`sad`,{expression:[{name:`sad`,value:1},{name:`oh`,value:.2}],blendDuration:.3}],[`angry`,{expression:[{name:`angry`,value:1},{name:`ee`,value:.4}],blendDuration:.2}],[`surprised`,{expression:[{name:`Surprised`,value:1},{name:`oh`,value:.6}],blendDuration:.1}],[`neutral`,{expression:[{name:`neutral`,value:1}],blendDuration:.5}]]),clearResetTimeout=()=>{resetTimeout.value&&(clearTimeout(resetTimeout.value),resetTimeout.value=void 0)},setEmotion=emotionName=>{if(clearResetTimeout(),!emotionStates.has(emotionName)){console.warn(`Emotion ${emotionName} not found`);return}let emotionState=emotionStates.get(emotionName);if(currentEmotion.value=emotionName,isTransitioning.value=!0,transitionProgress.value=0,vrm.expressionManager){let expressionNames=Object.keys(vrm.expressionManager.expressionMap);for(let name$2 of expressionNames)vrm.expressionManager.setValue(name$2,0)}currentExpressionValues.value.clear(),targetExpressionValues.value.clear();for(let expr of emotionState.expression||[]){var _vrm$expressionManage;let currentValue=(_vrm$expressionManage=vrm.expressionManager)?.getValue(expr.name)||0;currentExpressionValues.value.set(expr.name,currentValue),targetExpressionValues.value.set(expr.name,expr.value)}},setEmotionWithResetAfter=(emotionName,ms)=>{clearResetTimeout(),setEmotion(emotionName),resetTimeout.value=setTimeout(()=>{setEmotion(`neutral`),resetTimeout.value=void 0},ms)},update=deltaTime=>{if(!isTransitioning.value||!currentEmotion.value)return;let emotionState=emotionStates.get(currentEmotion.value),blendDuration=emotionState.blendDuration||.3;transitionProgress.value+=deltaTime/blendDuration,transitionProgress.value>=1&&(transitionProgress.value=1,isTransitioning.value=!1);for(let[exprName,targetValue]of targetExpressionValues.value){var _vrm$expressionManage2;let startValue=currentExpressionValues.value.get(exprName)||0,currentValue=lerp$3(startValue,targetValue,easeInOutCubic(transitionProgress.value));(_vrm$expressionManage2=vrm.expressionManager)?.setValue(exprName,currentValue)}},addEmotionState=(emotionName,state)=>{emotionStates.set(emotionName,state)},removeEmotionState=emotionName=>{emotionStates.delete(emotionName)},dispose$1=()=>{clearResetTimeout()};return{currentEmotion,isTransitioning,setEmotion,setEmotionWithResetAfter,update,addEmotionState,removeEmotionState,dispose:dispose$1}}function useWhisper(url,options$1){let opts=merge$2({onLoading:()=>{},onInitiate:()=>{},onProgress:()=>{},onDone:()=>{},onReady:()=>{},onStart:()=>{},onUpdate:()=>{},onComplete:()=>{}},options$1),{post:whisperPost,data:whisperData,terminate}=useWebWorker(url,{type:`module`}),status=ref(null),loadingMessage=ref(``),loadingProgress=ref([]),transcribing=ref(!1),tps=ref(0),result=ref(``);return watch(whisperData,e$3=>{switch(e$3.status){case`loading`:var _opts$onLoading;status.value=`loading`,loadingMessage.value=e$3.data,(_opts$onLoading=opts.onLoading)?.call(opts,e$3.data);break;case`initiate`:var _opts$onInitiate;loadingProgress.value.push(e$3),(_opts$onInitiate=opts.onInitiate)?.call(opts,e$3);break;case`progress`:var _opts$onProgress;loadingProgress.value=loadingProgress.value.map(item=>item.file===e$3.file?{...item,...e$3}:item),(_opts$onProgress=opts.onProgress)?.call(opts,e$3);break;case`done`:var _opts$onDone;loadingProgress.value=loadingProgress.value.filter(item=>item.file!==e$3.file),(_opts$onDone=opts.onDone)?.call(opts,e$3);break;case`ready`:var _opts$onReady;status.value=`ready`,(_opts$onReady=opts.onReady)?.call(opts);break;case`start`:var _opts$onStart;transcribing.value=!0,(_opts$onStart=opts.onStart)?.call(opts);break;case`update`:var _opts$onUpdate;tps.value=e$3.tps,(_opts$onUpdate=opts.onUpdate)?.call(opts,e$3.tps);break;case`complete`:var _opts$onComplete;transcribing.value=!1,result.value=e$3.output[0]||``,console.debug(`Whisper result:`,result.value),(_opts$onComplete=opts.onComplete)?.call(opts,e$3.output[0]);break}}),onUnmounted(()=>{terminate()}),{transcribe:message$1=>whisperPost(message$1),status,loadingMessage,loadingProgress,transcribing,tps,result,load:()=>whisperPost({type:`load`}),terminate}}const listModels=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL$1(`models`,options$1.baseURL),{headers:requestHeaders$1(options$1.headers,options$1.apiKey),signal:options$1.abortSignal}).then(responseJSON$1).then(({data:data$10})=>data$10),chat=async options$1=>{var _options$1$tools;return(options$1.fetch??globalThis.fetch)(requestURL$1(`chat/completions`,options$1.baseURL),{body:requestBody({...options$1,tools:(_options$1$tools=options$1.tools)?.map(tool$1=>({function:clean$2({...tool$1.function,returns:void 0}),type:`function`}))}),headers:requestHeaders$1({"Content-Type":`application/json`,...options$1.headers},options$1.apiKey),method:`POST`,signal:options$1.abortSignal}).then(responseCatch$1)},determineStepType=({finishReason,maxSteps,stepsLength,toolCallsLength})=>{if(stepsLength===0)return`initial`;if(stepsLength0&&finishReason===`tool_calls`)return`tool-result`;if(![`error`,`length`].includes(finishReason))return`continue`}return`done`},wrapToolResult=result=>typeof result==`string`||Array.isArray(result)&&result.every(item=>!!(typeof item==`object`&&`type`in item&&[`audio`,`image`,`text`].includes(item.type)))?result:JSON.stringify(result),executeTool=async({abortSignal,messages,toolCall,tools:tools$2})=>{let tool$1=tools$2?.find(tool2=>tool2.function.name===toolCall.function.name);if(!tool$1){let availableTools=tools$2?.map(tool2=>tool2.function.name),availableToolsErrorMsg=availableTools==null||availableTools.length===0?`No tools are available`:`Available tools: ${availableTools.join(`, `)}`;throw Error(`Model tried to call unavailable tool "${toolCall.function.name}", ${availableToolsErrorMsg}.`)}let toolCallId=toolCall.id,toolName=toolCall.function.name,parsedArgs=JSON.parse(toolCall.function.arguments),result=wrapToolResult(await tool$1.execute(parsedArgs,{abortSignal,messages,toolCallId})),completionToolCall={args:toolCall.function.arguments,toolCallId,toolCallType:toolCall.type,toolName},completionToolResult={args:parsedArgs,result,toolCallId,toolName},message$1={content:result,role:`tool`,tool_call_id:toolCallId};return{completionToolCall,completionToolResult,message:message$1,parsedArgs,result,toolName}},strCamelToSnake$1=str=>str.replace(/[A-Z]/g,s$1=>`_${s$1.toLowerCase()}`),objCamelToSnake$2=obj=>Object.fromEntries(Object.entries(obj).map(([k$4,v$1])=>[strCamelToSnake$1(k$4),v$1]));var XSAIError$1=class extends Error{constructor(message$1,response){super(message$1),babelHelpers.defineProperty(this,`response`,void 0),this.name=`XSAIError`,this.response=response}};const CHUNK_HEADER_PREFIX=`data:`,parseChunk=text$5=>{if(!text$5||!text$5.startsWith(CHUNK_HEADER_PREFIX))return[void 0,!1];let content$2=text$5.slice(CHUNK_HEADER_PREFIX.length),data$10=content$2.startsWith(` `)?content$2.slice(1):content$2;if(data$10===`[DONE]`)return[void 0,!0];if(data$10.startsWith(`{`)&&data$10.includes(`"error":`))throw Error(`Error from server: ${data$10}`);let chunk=JSON.parse(data$10);return[chunk,!1]},streamText=async options$1=>{let chunkCtrl,stepCtrl,textCtrl,chunkStream=new ReadableStream({start:controller=>chunkCtrl=controller}),stepStream=new ReadableStream({start:controller=>stepCtrl=controller}),textStream=new ReadableStream({start:controller=>textCtrl=controller}),maxSteps=options$1.maxSteps??1,decoder=new TextDecoder,steps$1=[],stepOne=async options2=>{var _step$choices$,_step$choices$2,_step$choices$3,_options2$onStepFinis;let step={choices:[],finishReason:`error`,messages:structuredClone(options2.messages),stepType:`initial`,toolCalls:[],toolResults:[]},choiceState={},buffer$1=``,finishReason,usage,shouldOutputText=!0,endToolCallByIndex=(state,idx)=>{state.endedToolCallIndex.has(idx)||(state.endedToolCallIndex.add(idx),state.currentToolIndex=null)};if(await chat({...options2,maxSteps:void 0,stream:!0,streamOptions:options2.streamOptions==null?void 0:objCamelToSnake$2(options2.streamOptions)}).then(async res=>res.body.pipeThrough(new TransformStream({transform:async(chunk,controller)=>{let text$5=decoder.decode(chunk,{stream:!0});buffer$1+=text$5;let lines=buffer$1.split(` -`);buffer$1=lines.pop()??``;for(let line of lines)try{let[chunk2,isEnd]=parseChunk(line);if(isEnd)break;chunk2&&controller.enqueue(chunk2)}catch(error){controller.error(error)}}})).pipeTo(new WritableStream({abort:reason=>{chunkCtrl.error(reason),stepCtrl.error(reason),textCtrl.error(reason)},close:()=>{var _options2$onEvent;(_options2$onEvent=options2.onEvent)?.call(options2,{finishReason,type:`finish`,usage})},write:async chunk=>{var _options2$onChunk,_step$choices;if((_options2$onChunk=options2.onChunk)?.call(options2,chunk),chunkCtrl.enqueue(chunk),usage=chunk.usage,chunk.choices==null||chunk.choices.length===0)return;let choice=chunk.choices[0];choice.delta.tool_calls&&(shouldOutputText=!1);let{delta,finish_reason,index:index$1,...rest}=choice,choiceSnapshot=(_step$choices=step.choices)[index$1]??(_step$choices[index$1]={finishReason:finish_reason,index:index$1,message:{role:`assistant`}});if(finish_reason!==void 0){if(finishReason=finish_reason,step.finishReason=finish_reason,choiceSnapshot.finishReason=finish_reason,finish_reason===`length`)throw new XSAIError$1(`length exceeded`);if(finish_reason===`content_filter`)throw new XSAIError$1(`content filter`)}Object.assign(choiceSnapshot,rest);let{content:content$2,refusal,tool_calls,...rests}=delta,message$1=choiceSnapshot.message;if(Object.assign(message$1,rests),refusal!==void 0){var _options2$onEvent2;message$1.refusal=(message$1.refusal||``)+(refusal||``),(_options2$onEvent2=options2.onEvent)?.call(options2,{refusal:message$1.refusal,type:`refusal`})}if(content$2!==void 0){var _options2$onEvent3;message$1.content=(message$1.content||``)+(content$2||``),shouldOutputText&&textCtrl?.enqueue(content$2),(_options2$onEvent3=options2.onEvent)?.call(options2,{text:content$2,type:`text-delta`})}for(let tool_call of tool_calls||[]){var _options2$onEvent4,_message$1$toolCalls;(_options2$onEvent4=options2.onEvent)?.call(options2,{toolCall:tool_call,type:`tool-call-delta`});let{function:fn$5,id,index:index2,type}=tool_call;message$1.toolCalls??={};let toolCall=(_message$1$toolCalls=message$1.toolCalls)[index2]??(_message$1$toolCalls[index2]={function:{arguments:``,name:fn$5.name,parsedArguments:{}},id,index:index2,type});toolCall.function.arguments+=fn$5.arguments}let state=choiceState[index$1]??(choiceState[index$1]={calledToolCallIndex:new Set,currentToolIndex:null,endedToolCallIndex:new Set,index:index$1,toolCallErrors:{},toolCallResults:{}});finish_reason&&state.currentToolIndex!==null&&endToolCallByIndex(state,state.currentToolIndex);for(let toolCall of delta.tool_calls||[])state.currentToolIndex!==toolCall.index&&state.currentToolIndex!==null&&endToolCallByIndex(state,state.currentToolIndex),state.calledToolCallIndex.add(toolCall.index),state.currentToolIndex=toolCall.index}}))),step.messages.push({content:(_step$choices$=step.choices[0])?.message.content??``,refusal:(_step$choices$2=step.choices[0])?.message.refusal,role:`assistant`,tool_calls:Object.values((_step$choices$3=step.choices[0])?.message.toolCalls??{}).map(toolCall=>({function:{arguments:toolCall.function.arguments,name:toolCall.function.name},id:toolCall.id,index:toolCall.index,type:toolCall.type}))}),await Promise.allSettled(step.choices.map(async choice=>{let state=choiceState[choice.index];return Promise.allSettled([...state.endedToolCallIndex].map(async idx=>{var _options2$onEvent5;let toolCall=choice.message.toolCalls[idx];if(step.toolCalls.push({args:toolCall.function.arguments,toolCallId:toolCall.id,toolCallType:`function`,toolName:toolCall.function.name}),!state.toolCallResults[toolCall.id]){(_options2$onEvent5=options2.onEvent)?.call(options2,{toolCall,type:`tool-call`});try{var _options2$onEvent6;let{completionToolResult,message:message$1,parsedArgs,result}=await executeTool({abortSignal:options2.abortSignal,messages:options2.messages,toolCall,tools:options2.tools});toolCall.function.parsedArguments=parsedArgs,state.toolCallResults[toolCall.id]=result,step.messages.push(message$1),step.toolResults.push(completionToolResult),(_options2$onEvent6=options2.onEvent)?.call(options2,{id:toolCall.id,result,type:`tool-call-result`})}catch(error){state.toolCallErrors[idx]=error}}}))})),step.stepType=determineStepType({finishReason:step.finishReason,maxSteps,stepsLength:steps$1.length,toolCallsLength:step.toolCalls.length}),steps$1.push(step),stepCtrl.enqueue(step),(_options2$onStepFinis=options2.onStepFinish)?.call(options2,step),!shouldOutputText)return async()=>stepOne({...options2,messages:step.messages})},invokeFunctionCalls=async()=>{var _options$1$onFinish;let ret=await stepOne(options$1);for(;typeof ret==`function`&&steps$1.length{chunkCtrl.error(error),stepCtrl.error(error),textCtrl.error(error)}),Promise.resolve({chunkStream,stepStream,textStream})},strictJsonSchema=schema=>({...schema,additionalProperties:!1}),missingDependenciesUrl=`https://xsai.js.org/docs/packages-top/xsschema#missing-dependencies`,tryImport=async(result,name$2)=>{try{return await result}catch{throw Error(`xsschema: Missing dependencies "${name$2}". see ${missingDependenciesUrl}`)}},getToJsonSchemaFn=async vendor=>{switch(vendor){case`arktype`:return __vitePreload(()=>import(`./arktype-C-GObzDh-D9LW_dgz.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`effect`:return __vitePreload(()=>import(`./effect-DBSVVF8G-BCfh_Z9z.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`sury`:return __vitePreload(()=>import(`./sury-GtnkadyM-BTgkE7MM.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`valibot`:return __vitePreload(()=>import(`./valibot-CbgwcZn_-Brv-hcxF.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`zod`:return __vitePreload(()=>import(`./zod-CD8IEU5z-BBYGiT2g.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());default:throw Error(`xsschema: Unsupported schema vendor "${vendor}". see https://xsai.js.org/docs/packages-top/xsschema#unsupported-schema-vendor`)}},toJsonSchema=async schema=>getToJsonSchemaFn(schema[`~standard`].vendor).then(async toJsonSchema2=>toJsonSchema2(schema)),tool=async({description,execute,name:name$2,parameters})=>{let schema=await toJsonSchema(parameters);return{execute,function:{description,name:name$2,parameters:strictJsonSchema(schema),strict:!0},type:`function`}};var util;(function(util$1){util$1.assertEqual=_$2=>{};function assertIs(_arg){}util$1.assertIs=assertIs;function assertNever(_x$1){throw Error()}util$1.assertNever=assertNever,util$1.arrayToEnum=items=>{let obj={};for(let item of items)obj[item]=item;return obj},util$1.getValidEnumValues=obj=>{let validKeys=util$1.objectKeys(obj).filter(k$4=>typeof obj[obj[k$4]]!=`number`),filtered={};for(let k$4 of validKeys)filtered[k$4]=obj[k$4];return util$1.objectValues(filtered)},util$1.objectValues=obj=>util$1.objectKeys(obj).map(function(e$3){return obj[e$3]}),util$1.objectKeys=typeof Object.keys==`function`?obj=>Object.keys(obj):object=>{let keys$3=[];for(let key$1 in object)Object.prototype.hasOwnProperty.call(object,key$1)&&keys$3.push(key$1);return keys$3},util$1.find=(arr,checker)=>{for(let item of arr)if(checker(item))return item},util$1.isInteger=typeof Number.isInteger==`function`?val=>Number.isInteger(val):val=>typeof val==`number`&&Number.isFinite(val)&&Math.floor(val)===val;function joinValues(array,separator=` | `){return array.map(val=>typeof val==`string`?`'${val}'`:val).join(separator)}util$1.joinValues=joinValues,util$1.jsonStringifyReplacer=(_$2,value$1)=>typeof value$1==`bigint`?value$1.toString():value$1})(util||={});var objectUtil;(function(objectUtil$1){objectUtil$1.mergeShapes=(first,second)=>({...first,...second})})(objectUtil||={});const ZodParsedType=util.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),getParsedType=data$10=>{let t=typeof data$10;switch(t){case`undefined`:return ZodParsedType.undefined;case`string`:return ZodParsedType.string;case`number`:return Number.isNaN(data$10)?ZodParsedType.nan:ZodParsedType.number;case`boolean`:return ZodParsedType.boolean;case`function`:return ZodParsedType.function;case`bigint`:return ZodParsedType.bigint;case`symbol`:return ZodParsedType.symbol;case`object`:return Array.isArray(data$10)?ZodParsedType.array:data$10===null?ZodParsedType.null:data$10.then&&typeof data$10.then==`function`&&data$10.catch&&typeof data$10.catch==`function`?ZodParsedType.promise:typeof Map<`u`&&data$10 instanceof Map?ZodParsedType.map:typeof Set<`u`&&data$10 instanceof Set?ZodParsedType.set:typeof Date<`u`&&data$10 instanceof Date?ZodParsedType.date:ZodParsedType.object;default:return ZodParsedType.unknown}},ZodIssueCode=util.arrayToEnum([`invalid_type`,`invalid_literal`,`custom`,`invalid_union`,`invalid_union_discriminator`,`invalid_enum_value`,`unrecognized_keys`,`invalid_arguments`,`invalid_return_type`,`invalid_date`,`invalid_string`,`too_small`,`too_big`,`invalid_intersection_types`,`not_multiple_of`,`not_finite`]);var ZodError=class ZodError extends Error{get errors(){return this.issues}constructor(issues){super(),this.issues=[],this.addIssue=sub=>{this.issues=[...this.issues,sub]},this.addIssues=(subs=[])=>{this.issues=[...this.issues,...subs]};let actualProto=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,actualProto):this.__proto__=actualProto,this.name=`ZodError`,this.issues=issues}format(_mapper){let mapper=_mapper||function(issue){return issue.message},fieldErrors={_errors:[]},processError=error=>{for(let issue of error.issues)if(issue.code===`invalid_union`)issue.unionErrors.map(processError);else if(issue.code===`invalid_return_type`)processError(issue.returnTypeError);else if(issue.code===`invalid_arguments`)processError(issue.argumentsError);else if(issue.path.length===0)fieldErrors._errors.push(mapper(issue));else{let curr=fieldErrors,i$1=0;for(;i$1issue.message){let fieldErrors={},formErrors=[];for(let sub of this.issues)if(sub.path.length>0){let firstEl=sub.path[0];fieldErrors[firstEl]=fieldErrors[firstEl]||[],fieldErrors[firstEl].push(mapper(sub))}else formErrors.push(mapper(sub));return{formErrors,fieldErrors}}get formErrors(){return this.flatten()}};ZodError.create=issues=>{let error=new ZodError(issues);return error};const errorMap=(issue,_ctx)=>{let message$1;switch(issue.code){case ZodIssueCode.invalid_type:message$1=issue.received===ZodParsedType.undefined?`Required`:`Expected ${issue.expected}, received ${issue.received}`;break;case ZodIssueCode.invalid_literal:message$1=`Invalid literal value, expected ${JSON.stringify(issue.expected,util.jsonStringifyReplacer)}`;break;case ZodIssueCode.unrecognized_keys:message$1=`Unrecognized key(s) in object: ${util.joinValues(issue.keys,`, `)}`;break;case ZodIssueCode.invalid_union:message$1=`Invalid input`;break;case ZodIssueCode.invalid_union_discriminator:message$1=`Invalid discriminator value. Expected ${util.joinValues(issue.options)}`;break;case ZodIssueCode.invalid_enum_value:message$1=`Invalid enum value. Expected ${util.joinValues(issue.options)}, received '${issue.received}'`;break;case ZodIssueCode.invalid_arguments:message$1=`Invalid function arguments`;break;case ZodIssueCode.invalid_return_type:message$1=`Invalid function return type`;break;case ZodIssueCode.invalid_date:message$1=`Invalid date`;break;case ZodIssueCode.invalid_string:typeof issue.validation==`object`?`includes`in issue.validation?(message$1=`Invalid input: must include "${issue.validation.includes}"`,typeof issue.validation.position==`number`&&(message$1=`${message$1} at one or more positions greater than or equal to ${issue.validation.position}`)):`startsWith`in issue.validation?message$1=`Invalid input: must start with "${issue.validation.startsWith}"`:`endsWith`in issue.validation?message$1=`Invalid input: must end with "${issue.validation.endsWith}"`:util.assertNever(issue.validation):message$1=issue.validation===`regex`?`Invalid`:`Invalid ${issue.validation}`;break;case ZodIssueCode.too_small:message$1=issue.type===`array`?`Array must contain ${issue.exact?`exactly`:issue.inclusive?`at least`:`more than`} ${issue.minimum} element(s)`:issue.type===`string`?`String must contain ${issue.exact?`exactly`:issue.inclusive?`at least`:`over`} ${issue.minimum} character(s)`:issue.type===`number`||issue.type===`bigint`?`Number must be ${issue.exact?`exactly equal to `:issue.inclusive?`greater than or equal to `:`greater than `}${issue.minimum}`:issue.type===`date`?`Date must be ${issue.exact?`exactly equal to `:issue.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(issue.minimum))}`:`Invalid input`;break;case ZodIssueCode.too_big:message$1=issue.type===`array`?`Array must contain ${issue.exact?`exactly`:issue.inclusive?`at most`:`less than`} ${issue.maximum} element(s)`:issue.type===`string`?`String must contain ${issue.exact?`exactly`:issue.inclusive?`at most`:`under`} ${issue.maximum} character(s)`:issue.type===`number`?`Number must be ${issue.exact?`exactly`:issue.inclusive?`less than or equal to`:`less than`} ${issue.maximum}`:issue.type===`bigint`?`BigInt must be ${issue.exact?`exactly`:issue.inclusive?`less than or equal to`:`less than`} ${issue.maximum}`:issue.type===`date`?`Date must be ${issue.exact?`exactly`:issue.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(issue.maximum))}`:`Invalid input`;break;case ZodIssueCode.custom:message$1=`Invalid input`;break;case ZodIssueCode.invalid_intersection_types:message$1=`Intersection results could not be merged`;break;case ZodIssueCode.not_multiple_of:message$1=`Number must be a multiple of ${issue.multipleOf}`;break;case ZodIssueCode.not_finite:message$1=`Number must be finite`;break;default:message$1=_ctx.defaultError,util.assertNever(issue)}return{message:message$1}};var en_default$1=errorMap;let overrideErrorMap=en_default$1;function getErrorMap(){return overrideErrorMap}const makeIssue=params=>{let{data:data$10,path,errorMaps,issueData}=params,fullPath=[...path,...issueData.path||[]],fullIssue={...issueData,path:fullPath};if(issueData.message!==void 0)return{...issueData,path:fullPath,message:issueData.message};let errorMessage=``,maps=errorMaps.filter(m$2=>!!m$2).slice().reverse();for(let map of maps)errorMessage=map(fullIssue,{data:data$10,defaultError:errorMessage}).message;return{...issueData,path:fullPath,message:errorMessage}};function addIssueToContext(ctx,issueData){let overrideMap=getErrorMap(),issue=makeIssue({issueData,data:ctx.data,path:ctx.path,errorMaps:[ctx.common.contextualErrorMap,ctx.schemaErrorMap,overrideMap,overrideMap===en_default$1?void 0:en_default$1].filter(x$3=>!!x$3)});ctx.common.issues.push(issue)}var ParseStatus=class ParseStatus{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(status,results){let arrayValue=[];for(let s$1 of results){if(s$1.status===`aborted`)return INVALID;s$1.status===`dirty`&&status.dirty(),arrayValue.push(s$1.value)}return{status:status.value,value:arrayValue}}static async mergeObjectAsync(status,pairs){let syncPairs=[];for(let pair of pairs){let key$1=await pair.key,value$1=await pair.value;syncPairs.push({key:key$1,value:value$1})}return ParseStatus.mergeObjectSync(status,syncPairs)}static mergeObjectSync(status,pairs){let finalObject={};for(let pair of pairs){let{key:key$1,value:value$1}=pair;if(key$1.status===`aborted`||value$1.status===`aborted`)return INVALID;key$1.status===`dirty`&&status.dirty(),value$1.status===`dirty`&&status.dirty(),key$1.value!==`__proto__`&&(value$1.value!==void 0||pair.alwaysSet)&&(finalObject[key$1.value]=value$1.value)}return{status:status.value,value:finalObject}}};const INVALID=Object.freeze({status:`aborted`}),DIRTY=value$1=>({status:`dirty`,value:value$1}),OK=value$1=>({status:`valid`,value:value$1}),isAborted=x$3=>x$3.status===`aborted`,isDirty=x$3=>x$3.status===`dirty`,isValid=x$3=>x$3.status===`valid`,isAsync=x$3=>typeof Promise<`u`&&x$3 instanceof Promise;var errorUtil;(function(errorUtil$1){errorUtil$1.errToObj=message$1=>typeof message$1==`string`?{message:message$1}:message$1||{},errorUtil$1.toString=message$1=>typeof message$1==`string`?message$1:message$1?.message})(errorUtil||={});var ParseInputLazyPath=class{constructor(parent,value$1,path,key$1){this._cachedPath=[],this.parent=parent,this.data=value$1,this._path=path,this._key=key$1}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}};const handleResult=(ctx,result)=>{if(isValid(result))return{success:!0,data:result.value};if(!ctx.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){if(this._error)return this._error;let error=new ZodError(ctx.common.issues);return this._error=error,this._error}}};function processCreateParams(params){if(!params)return{};let{errorMap:errorMap$1,invalid_type_error,required_error,description}=params;if(errorMap$1&&(invalid_type_error||required_error))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(errorMap$1)return{errorMap:errorMap$1,description};let customMap=(iss,ctx)=>{let{message:message$1}=params;return iss.code===`invalid_enum_value`?{message:message$1??ctx.defaultError}:ctx.data===void 0?{message:message$1??required_error??ctx.defaultError}:iss.code===`invalid_type`?{message:message$1??invalid_type_error??ctx.defaultError}:{message:ctx.defaultError}};return{errorMap:customMap,description}}var ZodType=class{get description(){return this._def.description}_getType(input){return getParsedType(input.data)}_getOrReturnCtx(input,ctx){return ctx||{common:input.parent.common,data:input.data,parsedType:getParsedType(input.data),schemaErrorMap:this._def.errorMap,path:input.path,parent:input.parent}}_processInputParams(input){return{status:new ParseStatus,ctx:{common:input.parent.common,data:input.data,parsedType:getParsedType(input.data),schemaErrorMap:this._def.errorMap,path:input.path,parent:input.parent}}}_parseSync(input){let result=this._parse(input);if(isAsync(result))throw Error(`Synchronous parse encountered promise.`);return result}_parseAsync(input){let result=this._parse(input);return Promise.resolve(result)}parse(data$10,params){let result=this.safeParse(data$10,params);if(result.success)return result.data;throw result.error}safeParse(data$10,params){let ctx={common:{issues:[],async:params?.async??!1,contextualErrorMap:params?.errorMap},path:params?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:data$10,parsedType:getParsedType(data$10)},result=this._parseSync({data:data$10,path:ctx.path,parent:ctx});return handleResult(ctx,result)}"~validate"(data$10){let ctx={common:{issues:[],async:!!this[`~standard`].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:data$10,parsedType:getParsedType(data$10)};if(!this[`~standard`].async)try{let result=this._parseSync({data:data$10,path:[],parent:ctx});return isValid(result)?{value:result.value}:{issues:ctx.common.issues}}catch(err){var _err$message;!(err==null||(_err$message=err.message)==null||(_err$message=_err$message.toLowerCase())==null)&&_err$message.includes(`encountered`)&&(this[`~standard`].async=!0),ctx.common={issues:[],async:!0}}return this._parseAsync({data:data$10,path:[],parent:ctx}).then(result=>isValid(result)?{value:result.value}:{issues:ctx.common.issues})}async parseAsync(data$10,params){let result=await this.safeParseAsync(data$10,params);if(result.success)return result.data;throw result.error}async safeParseAsync(data$10,params){let ctx={common:{issues:[],contextualErrorMap:params?.errorMap,async:!0},path:params?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:data$10,parsedType:getParsedType(data$10)},maybeAsyncResult=this._parse({data:data$10,path:ctx.path,parent:ctx}),result=await(isAsync(maybeAsyncResult)?maybeAsyncResult:Promise.resolve(maybeAsyncResult));return handleResult(ctx,result)}refine(check$1,message$1){let getIssueProperties=val=>typeof message$1==`string`||message$1===void 0?{message:message$1}:typeof message$1==`function`?message$1(val):message$1;return this._refinement((val,ctx)=>{let result=check$1(val),setError=()=>ctx.addIssue({code:ZodIssueCode.custom,...getIssueProperties(val)});return typeof Promise<`u`&&result instanceof Promise?result.then(data$10=>data$10?!0:(setError(),!1)):result?!0:(setError(),!1)})}refinement(check$1,refinementData){return this._refinement((val,ctx)=>check$1(val)?!0:(ctx.addIssue(typeof refinementData==`function`?refinementData(val,ctx):refinementData),!1))}_refinement(refinement){return new ZodEffects({schema:this,typeName:ZodFirstPartyTypeKind.ZodEffects,effect:{type:`refinement`,refinement}})}superRefine(refinement){return this._refinement(refinement)}constructor(def$1){this.spa=this.safeParseAsync,this._def=def$1,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[`~standard`]={version:1,vendor:`zod`,validate:data$10=>this[`~validate`](data$10)}}optional(){return ZodOptional.create(this,this._def)}nullable(){return ZodNullable.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ZodArray.create(this)}promise(){return ZodPromise.create(this,this._def)}or(option$1){return ZodUnion.create([this,option$1],this._def)}and(incoming){return ZodIntersection.create(this,incoming,this._def)}transform(transform$1){return new ZodEffects({...processCreateParams(this._def),schema:this,typeName:ZodFirstPartyTypeKind.ZodEffects,effect:{type:`transform`,transform:transform$1}})}default(def$1){let defaultValueFunc=typeof def$1==`function`?def$1:()=>def$1;return new ZodDefault({...processCreateParams(this._def),innerType:this,defaultValue:defaultValueFunc,typeName:ZodFirstPartyTypeKind.ZodDefault})}brand(){return new ZodBranded({typeName:ZodFirstPartyTypeKind.ZodBranded,type:this,...processCreateParams(this._def)})}catch(def$1){let catchValueFunc=typeof def$1==`function`?def$1:()=>def$1;return new ZodCatch({...processCreateParams(this._def),innerType:this,catchValue:catchValueFunc,typeName:ZodFirstPartyTypeKind.ZodCatch})}describe(description){let This=this.constructor;return new This({...this._def,description})}pipe(target$1){return ZodPipeline.create(this,target$1)}readonly(){return ZodReadonly.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}};const cuidRegex=/^c[^\s-]{8,}$/i,cuid2Regex=/^[0-9a-z]+$/,ulidRegex=/^[0-9A-HJKMNP-TV-Z]{26}$/i,uuidRegex=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,nanoidRegex=/^[a-z0-9_-]{21}$/i,jwtRegex=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,durationRegex=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,emailRegex=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,_emojiRegex=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;let emojiRegex;const ipv4Regex=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4CidrRegex=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6Regex=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ipv6CidrRegex=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64Regex=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64urlRegex=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dateRegexSource=`((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`,dateRegex=RegExp(`^${dateRegexSource}$`);function timeRegexSource(args){let secondsRegexSource=`[0-5]\\d`;args.precision?secondsRegexSource=`${secondsRegexSource}\\.\\d{${args.precision}}`:args.precision??(secondsRegexSource=`${secondsRegexSource}(\\.\\d+)?`);let secondsQuantifier=args.precision?`+`:`?`;return`([01]\\d|2[0-3]):[0-5]\\d(:${secondsRegexSource})${secondsQuantifier}`}function timeRegex(args){return RegExp(`^${timeRegexSource(args)}$`)}function datetimeRegex(args){let regex=`${dateRegexSource}T${timeRegexSource(args)}`,opts=[];return opts.push(args.local?`Z?`:`Z`),args.offset&&opts.push(`([+-]\\d{2}:?\\d{2})`),regex=`${regex}(${opts.join(`|`)})`,RegExp(`^${regex}$`)}function isValidIP(ip,version$1){return!!((version$1===`v4`||!version$1)&&ipv4Regex.test(ip)||(version$1===`v6`||!version$1)&&ipv6Regex.test(ip))}function isValidJWT(jwt,alg){if(!jwtRegex.test(jwt))return!1;try{let[header]=jwt.split(`.`);if(!header)return!1;let base64=header.replace(/-/g,`+`).replace(/_/g,`/`).padEnd(header.length+(4-header.length%4)%4,`=`),decoded=JSON.parse(atob(base64));return!(typeof decoded!=`object`||!decoded||`typ`in decoded&&decoded?.typ!==`JWT`||!decoded.alg||alg&&decoded.alg!==alg)}catch{return!1}}function isValidCidr(ip,version$1){return!!((version$1===`v4`||!version$1)&&ipv4CidrRegex.test(ip)||(version$1===`v6`||!version$1)&&ipv6CidrRegex.test(ip))}var ZodString=class ZodString extends ZodType{_parse(input){this._def.coerce&&(input.data=String(input.data));let parsedType=this._getType(input);if(parsedType!==ZodParsedType.string){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.string,received:ctx$1.parsedType}),INVALID}let status=new ParseStatus,ctx;for(let check$1 of this._def.checks)if(check$1.kind===`min`)input.data.lengthcheck$1.value&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:check$1.value,type:`string`,inclusive:!0,exact:!1,message:check$1.message}),status.dirty());else if(check$1.kind===`length`){let tooBig=input.data.length>check$1.value,tooSmall=input.data.lengthregex.test(data$10),{validation,code:ZodIssueCode.invalid_string,...errorUtil.errToObj(message$1)})}_addCheck(check$1){return new ZodString({...this._def,checks:[...this._def.checks,check$1]})}email(message$1){return this._addCheck({kind:`email`,...errorUtil.errToObj(message$1)})}url(message$1){return this._addCheck({kind:`url`,...errorUtil.errToObj(message$1)})}emoji(message$1){return this._addCheck({kind:`emoji`,...errorUtil.errToObj(message$1)})}uuid(message$1){return this._addCheck({kind:`uuid`,...errorUtil.errToObj(message$1)})}nanoid(message$1){return this._addCheck({kind:`nanoid`,...errorUtil.errToObj(message$1)})}cuid(message$1){return this._addCheck({kind:`cuid`,...errorUtil.errToObj(message$1)})}cuid2(message$1){return this._addCheck({kind:`cuid2`,...errorUtil.errToObj(message$1)})}ulid(message$1){return this._addCheck({kind:`ulid`,...errorUtil.errToObj(message$1)})}base64(message$1){return this._addCheck({kind:`base64`,...errorUtil.errToObj(message$1)})}base64url(message$1){return this._addCheck({kind:`base64url`,...errorUtil.errToObj(message$1)})}jwt(options$1){return this._addCheck({kind:`jwt`,...errorUtil.errToObj(options$1)})}ip(options$1){return this._addCheck({kind:`ip`,...errorUtil.errToObj(options$1)})}cidr(options$1){return this._addCheck({kind:`cidr`,...errorUtil.errToObj(options$1)})}datetime(options$1){return typeof options$1==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:options$1}):this._addCheck({kind:`datetime`,precision:options$1?.precision===void 0?null:options$1?.precision,offset:options$1?.offset??!1,local:options$1?.local??!1,...errorUtil.errToObj(options$1?.message)})}date(message$1){return this._addCheck({kind:`date`,message:message$1})}time(options$1){return typeof options$1==`string`?this._addCheck({kind:`time`,precision:null,message:options$1}):this._addCheck({kind:`time`,precision:options$1?.precision===void 0?null:options$1?.precision,...errorUtil.errToObj(options$1?.message)})}duration(message$1){return this._addCheck({kind:`duration`,...errorUtil.errToObj(message$1)})}regex(regex,message$1){return this._addCheck({kind:`regex`,regex,...errorUtil.errToObj(message$1)})}includes(value$1,options$1){return this._addCheck({kind:`includes`,value:value$1,position:options$1?.position,...errorUtil.errToObj(options$1?.message)})}startsWith(value$1,message$1){return this._addCheck({kind:`startsWith`,value:value$1,...errorUtil.errToObj(message$1)})}endsWith(value$1,message$1){return this._addCheck({kind:`endsWith`,value:value$1,...errorUtil.errToObj(message$1)})}min(minLength,message$1){return this._addCheck({kind:`min`,value:minLength,...errorUtil.errToObj(message$1)})}max(maxLength,message$1){return this._addCheck({kind:`max`,value:maxLength,...errorUtil.errToObj(message$1)})}length(len,message$1){return this._addCheck({kind:`length`,value:len,...errorUtil.errToObj(message$1)})}nonempty(message$1){return this.min(1,errorUtil.errToObj(message$1))}trim(){return new ZodString({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new ZodString({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new ZodString({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(ch=>ch.kind===`datetime`)}get isDate(){return!!this._def.checks.find(ch=>ch.kind===`date`)}get isTime(){return!!this._def.checks.find(ch=>ch.kind===`time`)}get isDuration(){return!!this._def.checks.find(ch=>ch.kind===`duration`)}get isEmail(){return!!this._def.checks.find(ch=>ch.kind===`email`)}get isURL(){return!!this._def.checks.find(ch=>ch.kind===`url`)}get isEmoji(){return!!this._def.checks.find(ch=>ch.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(ch=>ch.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(ch=>ch.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(ch=>ch.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(ch=>ch.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(ch=>ch.kind===`ulid`)}get isIP(){return!!this._def.checks.find(ch=>ch.kind===`ip`)}get isCIDR(){return!!this._def.checks.find(ch=>ch.kind===`cidr`)}get isBase64(){return!!this._def.checks.find(ch=>ch.kind===`base64`)}get isBase64url(){return!!this._def.checks.find(ch=>ch.kind===`base64url`)}get minLength(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1}get maxLength(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuenew ZodString({checks:[],typeName:ZodFirstPartyTypeKind.ZodString,coerce:params?.coerce??!1,...processCreateParams(params)});function floatSafeRemainder(val,step){let valDecCount=(val.toString().split(`.`)[1]||``).length,stepDecCount=(step.toString().split(`.`)[1]||``).length,decCount=valDecCount>stepDecCount?valDecCount:stepDecCount,valInt=Number.parseInt(val.toFixed(decCount).replace(`.`,``)),stepInt=Number.parseInt(step.toFixed(decCount).replace(`.`,``));return valInt%stepInt/10**decCount}var ZodNumber=class ZodNumber extends ZodType{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(input){this._def.coerce&&(input.data=Number(input.data));let parsedType=this._getType(input);if(parsedType!==ZodParsedType.number){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.number,received:ctx$1.parsedType}),INVALID}let ctx,status=new ParseStatus;for(let check$1 of this._def.checks)if(check$1.kind===`int`)util.isInteger(input.data)||(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:`integer`,received:`float`,message:check$1.message}),status.dirty());else if(check$1.kind===`min`){let tooSmall=check$1.inclusive?input.datacheck$1.value:input.data>=check$1.value;tooBig&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:check$1.value,type:`number`,inclusive:check$1.inclusive,exact:!1,message:check$1.message}),status.dirty())}else check$1.kind===`multipleOf`?floatSafeRemainder(input.data,check$1.value)!==0&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.not_multiple_of,multipleOf:check$1.value,message:check$1.message}),status.dirty()):check$1.kind===`finite`?Number.isFinite(input.data)||(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.not_finite,message:check$1.message}),status.dirty()):util.assertNever(check$1);return{status:status.value,value:input.data}}gte(value$1,message$1){return this.setLimit(`min`,value$1,!0,errorUtil.toString(message$1))}gt(value$1,message$1){return this.setLimit(`min`,value$1,!1,errorUtil.toString(message$1))}lte(value$1,message$1){return this.setLimit(`max`,value$1,!0,errorUtil.toString(message$1))}lt(value$1,message$1){return this.setLimit(`max`,value$1,!1,errorUtil.toString(message$1))}setLimit(kind,value$1,inclusive,message$1){return new ZodNumber({...this._def,checks:[...this._def.checks,{kind,value:value$1,inclusive,message:errorUtil.toString(message$1)}]})}_addCheck(check$1){return new ZodNumber({...this._def,checks:[...this._def.checks,check$1]})}int(message$1){return this._addCheck({kind:`int`,message:errorUtil.toString(message$1)})}positive(message$1){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:errorUtil.toString(message$1)})}negative(message$1){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:errorUtil.toString(message$1)})}nonpositive(message$1){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:errorUtil.toString(message$1)})}nonnegative(message$1){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:errorUtil.toString(message$1)})}multipleOf(value$1,message$1){return this._addCheck({kind:`multipleOf`,value:value$1,message:errorUtil.toString(message$1)})}finite(message$1){return this._addCheck({kind:`finite`,message:errorUtil.toString(message$1)})}safe(message$1){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:errorUtil.toString(message$1)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:errorUtil.toString(message$1)})}get minValue(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1}get maxValue(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuech.kind===`int`||ch.kind===`multipleOf`&&util.isInteger(ch.value))}get isFinite(){let max$1=null,min$1=null;for(let ch of this._def.checks)if(ch.kind===`finite`||ch.kind===`int`||ch.kind===`multipleOf`)return!0;else ch.kind===`min`?(min$1===null||ch.value>min$1)&&(min$1=ch.value):ch.kind===`max`&&(max$1===null||ch.valuenew ZodNumber({checks:[],typeName:ZodFirstPartyTypeKind.ZodNumber,coerce:params?.coerce||!1,...processCreateParams(params)});var ZodBigInt=class ZodBigInt extends ZodType{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(input){if(this._def.coerce)try{input.data=BigInt(input.data)}catch{return this._getInvalidInput(input)}let parsedType=this._getType(input);if(parsedType!==ZodParsedType.bigint)return this._getInvalidInput(input);let ctx,status=new ParseStatus;for(let check$1 of this._def.checks)if(check$1.kind===`min`){let tooSmall=check$1.inclusive?input.datacheck$1.value:input.data>=check$1.value;tooBig&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,type:`bigint`,maximum:check$1.value,inclusive:check$1.inclusive,message:check$1.message}),status.dirty())}else check$1.kind===`multipleOf`?input.data%check$1.value!==BigInt(0)&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.not_multiple_of,multipleOf:check$1.value,message:check$1.message}),status.dirty()):util.assertNever(check$1);return{status:status.value,value:input.data}}_getInvalidInput(input){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.bigint,received:ctx.parsedType}),INVALID}gte(value$1,message$1){return this.setLimit(`min`,value$1,!0,errorUtil.toString(message$1))}gt(value$1,message$1){return this.setLimit(`min`,value$1,!1,errorUtil.toString(message$1))}lte(value$1,message$1){return this.setLimit(`max`,value$1,!0,errorUtil.toString(message$1))}lt(value$1,message$1){return this.setLimit(`max`,value$1,!1,errorUtil.toString(message$1))}setLimit(kind,value$1,inclusive,message$1){return new ZodBigInt({...this._def,checks:[...this._def.checks,{kind,value:value$1,inclusive,message:errorUtil.toString(message$1)}]})}_addCheck(check$1){return new ZodBigInt({...this._def,checks:[...this._def.checks,check$1]})}positive(message$1){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:errorUtil.toString(message$1)})}negative(message$1){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:errorUtil.toString(message$1)})}nonpositive(message$1){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:errorUtil.toString(message$1)})}nonnegative(message$1){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:errorUtil.toString(message$1)})}multipleOf(value$1,message$1){return this._addCheck({kind:`multipleOf`,value:value$1,message:errorUtil.toString(message$1)})}get minValue(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1}get maxValue(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuenew ZodBigInt({checks:[],typeName:ZodFirstPartyTypeKind.ZodBigInt,coerce:params?.coerce??!1,...processCreateParams(params)});var ZodBoolean=class extends ZodType{_parse(input){this._def.coerce&&(input.data=!!input.data);let parsedType=this._getType(input);if(parsedType!==ZodParsedType.boolean){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.boolean,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodBoolean.create=params=>new ZodBoolean({typeName:ZodFirstPartyTypeKind.ZodBoolean,coerce:params?.coerce||!1,...processCreateParams(params)});var ZodDate=class ZodDate extends ZodType{_parse(input){this._def.coerce&&(input.data=new Date(input.data));let parsedType=this._getType(input);if(parsedType!==ZodParsedType.date){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.date,received:ctx$1.parsedType}),INVALID}if(Number.isNaN(input.data.getTime())){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_date}),INVALID}let status=new ParseStatus,ctx;for(let check$1 of this._def.checks)check$1.kind===`min`?input.data.getTime()check$1.value&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,message:check$1.message,inclusive:!0,exact:!1,maximum:check$1.value,type:`date`}),status.dirty()):util.assertNever(check$1);return{status:status.value,value:new Date(input.data.getTime())}}_addCheck(check$1){return new ZodDate({...this._def,checks:[...this._def.checks,check$1]})}min(minDate,message$1){return this._addCheck({kind:`min`,value:minDate.getTime(),message:errorUtil.toString(message$1)})}max(maxDate,message$1){return this._addCheck({kind:`max`,value:maxDate.getTime(),message:errorUtil.toString(message$1)})}get minDate(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1==null?null:new Date(min$1)}get maxDate(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuenew ZodDate({checks:[],coerce:params?.coerce||!1,typeName:ZodFirstPartyTypeKind.ZodDate,...processCreateParams(params)});var ZodSymbol=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.symbol){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.symbol,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodSymbol.create=params=>new ZodSymbol({typeName:ZodFirstPartyTypeKind.ZodSymbol,...processCreateParams(params)});var ZodUndefined=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.undefined){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.undefined,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodUndefined.create=params=>new ZodUndefined({typeName:ZodFirstPartyTypeKind.ZodUndefined,...processCreateParams(params)});var ZodNull=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.null){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.null,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodNull.create=params=>new ZodNull({typeName:ZodFirstPartyTypeKind.ZodNull,...processCreateParams(params)});var ZodAny=class extends ZodType{constructor(){super(...arguments),this._any=!0}_parse(input){return OK(input.data)}};ZodAny.create=params=>new ZodAny({typeName:ZodFirstPartyTypeKind.ZodAny,...processCreateParams(params)});var ZodUnknown=class extends ZodType{constructor(){super(...arguments),this._unknown=!0}_parse(input){return OK(input.data)}};ZodUnknown.create=params=>new ZodUnknown({typeName:ZodFirstPartyTypeKind.ZodUnknown,...processCreateParams(params)});var ZodNever=class extends ZodType{_parse(input){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.never,received:ctx.parsedType}),INVALID}};ZodNever.create=params=>new ZodNever({typeName:ZodFirstPartyTypeKind.ZodNever,...processCreateParams(params)});var ZodVoid=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.undefined){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.void,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodVoid.create=params=>new ZodVoid({typeName:ZodFirstPartyTypeKind.ZodVoid,...processCreateParams(params)});var ZodArray=class ZodArray extends ZodType{_parse(input){let{ctx,status}=this._processInputParams(input),def$1=this._def;if(ctx.parsedType!==ZodParsedType.array)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.array,received:ctx.parsedType}),INVALID;if(def$1.exactLength!==null){let tooBig=ctx.data.length>def$1.exactLength.value,tooSmall=ctx.data.lengthdef$1.maxLength.value&&(addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:def$1.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:def$1.maxLength.message}),status.dirty()),ctx.common.async)return Promise.all([...ctx.data].map((item,i$1)=>def$1.type._parseAsync(new ParseInputLazyPath(ctx,item,ctx.path,i$1)))).then(result$1=>ParseStatus.mergeArray(status,result$1));let result=[...ctx.data].map((item,i$1)=>def$1.type._parseSync(new ParseInputLazyPath(ctx,item,ctx.path,i$1)));return ParseStatus.mergeArray(status,result)}get element(){return this._def.type}min(minLength,message$1){return new ZodArray({...this._def,minLength:{value:minLength,message:errorUtil.toString(message$1)}})}max(maxLength,message$1){return new ZodArray({...this._def,maxLength:{value:maxLength,message:errorUtil.toString(message$1)}})}length(len,message$1){return new ZodArray({...this._def,exactLength:{value:len,message:errorUtil.toString(message$1)}})}nonempty(message$1){return this.min(1,message$1)}};ZodArray.create=(schema,params)=>new ZodArray({type:schema,minLength:null,maxLength:null,exactLength:null,typeName:ZodFirstPartyTypeKind.ZodArray,...processCreateParams(params)});function deepPartialify(schema){if(schema instanceof ZodObject){let newShape={};for(let key$1 in schema.shape){let fieldSchema=schema.shape[key$1];newShape[key$1]=ZodOptional.create(deepPartialify(fieldSchema))}return new ZodObject({...schema._def,shape:()=>newShape})}else if(schema instanceof ZodArray)return new ZodArray({...schema._def,type:deepPartialify(schema.element)});else if(schema instanceof ZodOptional)return ZodOptional.create(deepPartialify(schema.unwrap()));else if(schema instanceof ZodNullable)return ZodNullable.create(deepPartialify(schema.unwrap()));else if(schema instanceof ZodTuple)return ZodTuple.create(schema.items.map(item=>deepPartialify(item)));else return schema}var ZodObject=class ZodObject extends ZodType{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let shape=this._def.shape(),keys$3=util.objectKeys(shape);return this._cached={shape,keys:keys$3},this._cached}_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.object){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.object,received:ctx$1.parsedType}),INVALID}let{status,ctx}=this._processInputParams(input),{shape,keys:shapeKeys}=this._getCached(),extraKeys=[];if(!(this._def.catchall instanceof ZodNever&&this._def.unknownKeys===`strip`))for(let key$1 in ctx.data)shapeKeys.includes(key$1)||extraKeys.push(key$1);let pairs=[];for(let key$1 of shapeKeys){let keyValidator=shape[key$1],value$1=ctx.data[key$1];pairs.push({key:{status:`valid`,value:key$1},value:keyValidator._parse(new ParseInputLazyPath(ctx,value$1,ctx.path,key$1)),alwaysSet:key$1 in ctx.data})}if(this._def.catchall instanceof ZodNever){let unknownKeys=this._def.unknownKeys;if(unknownKeys===`passthrough`)for(let key$1 of extraKeys)pairs.push({key:{status:`valid`,value:key$1},value:{status:`valid`,value:ctx.data[key$1]}});else if(unknownKeys===`strict`)extraKeys.length>0&&(addIssueToContext(ctx,{code:ZodIssueCode.unrecognized_keys,keys:extraKeys}),status.dirty());else if(unknownKeys!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let catchall=this._def.catchall;for(let key$1 of extraKeys){let value$1=ctx.data[key$1];pairs.push({key:{status:`valid`,value:key$1},value:catchall._parse(new ParseInputLazyPath(ctx,value$1,ctx.path,key$1)),alwaysSet:key$1 in ctx.data})}}return ctx.common.async?Promise.resolve().then(async()=>{let syncPairs=[];for(let pair of pairs){let key$1=await pair.key,value$1=await pair.value;syncPairs.push({key:key$1,value:value$1,alwaysSet:pair.alwaysSet})}return syncPairs}).then(syncPairs=>ParseStatus.mergeObjectSync(status,syncPairs)):ParseStatus.mergeObjectSync(status,pairs)}get shape(){return this._def.shape()}strict(message$1){return errorUtil.errToObj,new ZodObject({...this._def,unknownKeys:`strict`,...message$1===void 0?{}:{errorMap:(issue,ctx)=>{var _this$_def$errorMap,_this$_def;let defaultError=(_this$_def$errorMap=(_this$_def=this._def).errorMap)?.call(_this$_def,issue,ctx).message??ctx.defaultError;return issue.code===`unrecognized_keys`?{message:errorUtil.errToObj(message$1).message??defaultError}:{message:defaultError}}}})}strip(){return new ZodObject({...this._def,unknownKeys:`strip`})}passthrough(){return new ZodObject({...this._def,unknownKeys:`passthrough`})}extend(augmentation){return new ZodObject({...this._def,shape:()=>({...this._def.shape(),...augmentation})})}merge(merging){let merged=new ZodObject({unknownKeys:merging._def.unknownKeys,catchall:merging._def.catchall,shape:()=>({...this._def.shape(),...merging._def.shape()}),typeName:ZodFirstPartyTypeKind.ZodObject});return merged}setKey(key$1,schema){return this.augment({[key$1]:schema})}catchall(index$1){return new ZodObject({...this._def,catchall:index$1})}pick(mask){let shape={};for(let key$1 of util.objectKeys(mask))mask[key$1]&&this.shape[key$1]&&(shape[key$1]=this.shape[key$1]);return new ZodObject({...this._def,shape:()=>shape})}omit(mask){let shape={};for(let key$1 of util.objectKeys(this.shape))mask[key$1]||(shape[key$1]=this.shape[key$1]);return new ZodObject({...this._def,shape:()=>shape})}deepPartial(){return deepPartialify(this)}partial(mask){let newShape={};for(let key$1 of util.objectKeys(this.shape)){let fieldSchema=this.shape[key$1];mask&&!mask[key$1]?newShape[key$1]=fieldSchema:newShape[key$1]=fieldSchema.optional()}return new ZodObject({...this._def,shape:()=>newShape})}required(mask){let newShape={};for(let key$1 of util.objectKeys(this.shape))if(mask&&!mask[key$1])newShape[key$1]=this.shape[key$1];else{let fieldSchema=this.shape[key$1],newField=fieldSchema;for(;newField instanceof ZodOptional;)newField=newField._def.innerType;newShape[key$1]=newField}return new ZodObject({...this._def,shape:()=>newShape})}keyof(){return createZodEnum(util.objectKeys(this.shape))}};ZodObject.create=(shape,params)=>new ZodObject({shape:()=>shape,unknownKeys:`strip`,catchall:ZodNever.create(),typeName:ZodFirstPartyTypeKind.ZodObject,...processCreateParams(params)}),ZodObject.strictCreate=(shape,params)=>new ZodObject({shape:()=>shape,unknownKeys:`strict`,catchall:ZodNever.create(),typeName:ZodFirstPartyTypeKind.ZodObject,...processCreateParams(params)}),ZodObject.lazycreate=(shape,params)=>new ZodObject({shape,unknownKeys:`strip`,catchall:ZodNever.create(),typeName:ZodFirstPartyTypeKind.ZodObject,...processCreateParams(params)});var ZodUnion=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),options$1=this._def.options;function handleResults(results){for(let result of results)if(result.result.status===`valid`)return result.result;for(let result of results)if(result.result.status===`dirty`)return ctx.common.issues.push(...result.ctx.common.issues),result.result;let unionErrors=results.map(result=>new ZodError(result.ctx.common.issues));return addIssueToContext(ctx,{code:ZodIssueCode.invalid_union,unionErrors}),INVALID}if(ctx.common.async)return Promise.all(options$1.map(async option$1=>{let childCtx={...ctx,common:{...ctx.common,issues:[]},parent:null};return{result:await option$1._parseAsync({data:ctx.data,path:ctx.path,parent:childCtx}),ctx:childCtx}})).then(handleResults);{let dirty,issues=[];for(let option$1 of options$1){let childCtx={...ctx,common:{...ctx.common,issues:[]},parent:null},result=option$1._parseSync({data:ctx.data,path:ctx.path,parent:childCtx});if(result.status===`valid`)return result;result.status===`dirty`&&!dirty&&(dirty={result,ctx:childCtx}),childCtx.common.issues.length&&issues.push(childCtx.common.issues)}if(dirty)return ctx.common.issues.push(...dirty.ctx.common.issues),dirty.result;let unionErrors=issues.map(issues$1=>new ZodError(issues$1));return addIssueToContext(ctx,{code:ZodIssueCode.invalid_union,unionErrors}),INVALID}}get options(){return this._def.options}};ZodUnion.create=(types$1,params)=>new ZodUnion({options:types$1,typeName:ZodFirstPartyTypeKind.ZodUnion,...processCreateParams(params)});const getDiscriminator=type=>type instanceof ZodLazy?getDiscriminator(type.schema):type instanceof ZodEffects?getDiscriminator(type.innerType()):type instanceof ZodLiteral?[type.value]:type instanceof ZodEnum?type.options:type instanceof ZodNativeEnum?util.objectValues(type.enum):type instanceof ZodDefault?getDiscriminator(type._def.innerType):type instanceof ZodUndefined?[void 0]:type instanceof ZodNull?[null]:type instanceof ZodOptional?[void 0,...getDiscriminator(type.unwrap())]:type instanceof ZodNullable?[null,...getDiscriminator(type.unwrap())]:type instanceof ZodBranded||type instanceof ZodReadonly?getDiscriminator(type.unwrap()):type instanceof ZodCatch?getDiscriminator(type._def.innerType):[];var ZodDiscriminatedUnion=class ZodDiscriminatedUnion extends ZodType{_parse(input){let{ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.object)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.object,received:ctx.parsedType}),INVALID;let discriminator=this.discriminator,discriminatorValue=ctx.data[discriminator],option$1=this.optionsMap.get(discriminatorValue);return option$1?ctx.common.async?option$1._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}):option$1._parseSync({data:ctx.data,path:ctx.path,parent:ctx}):(addIssueToContext(ctx,{code:ZodIssueCode.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[discriminator]}),INVALID)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(discriminator,options$1,params){let optionsMap=new Map;for(let type of options$1){let discriminatorValues=getDiscriminator(type.shape[discriminator]);if(!discriminatorValues.length)throw Error(`A discriminator value for key \`${discriminator}\` could not be extracted from all schema options`);for(let value$1 of discriminatorValues){if(optionsMap.has(value$1))throw Error(`Discriminator property ${String(discriminator)} has duplicate value ${String(value$1)}`);optionsMap.set(value$1,type)}}return new ZodDiscriminatedUnion({typeName:ZodFirstPartyTypeKind.ZodDiscriminatedUnion,discriminator,options:options$1,optionsMap,...processCreateParams(params)})}};function mergeValues(a$2,b$3){let aType=getParsedType(a$2),bType=getParsedType(b$3);if(a$2===b$3)return{valid:!0,data:a$2};if(aType===ZodParsedType.object&&bType===ZodParsedType.object){let bKeys=util.objectKeys(b$3),sharedKeys=util.objectKeys(a$2).filter(key$1=>bKeys.indexOf(key$1)!==-1),newObj={...a$2,...b$3};for(let key$1 of sharedKeys){let sharedValue=mergeValues(a$2[key$1],b$3[key$1]);if(!sharedValue.valid)return{valid:!1};newObj[key$1]=sharedValue.data}return{valid:!0,data:newObj}}else if(aType===ZodParsedType.array&&bType===ZodParsedType.array){if(a$2.length!==b$3.length)return{valid:!1};let newArray=[];for(let index$1=0;index$1{if(isAborted(parsedLeft)||isAborted(parsedRight))return INVALID;let merged=mergeValues(parsedLeft.value,parsedRight.value);return merged.valid?((isDirty(parsedLeft)||isDirty(parsedRight))&&status.dirty(),{status:status.value,value:merged.data}):(addIssueToContext(ctx,{code:ZodIssueCode.invalid_intersection_types}),INVALID)};return ctx.common.async?Promise.all([this._def.left._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}),this._def.right._parseAsync({data:ctx.data,path:ctx.path,parent:ctx})]).then(([left,right])=>handleParsed(left,right)):handleParsed(this._def.left._parseSync({data:ctx.data,path:ctx.path,parent:ctx}),this._def.right._parseSync({data:ctx.data,path:ctx.path,parent:ctx}))}};ZodIntersection.create=(left,right,params)=>new ZodIntersection({left,right,typeName:ZodFirstPartyTypeKind.ZodIntersection,...processCreateParams(params)});var ZodTuple=class ZodTuple extends ZodType{_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.array)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.array,received:ctx.parsedType}),INVALID;if(ctx.data.lengththis._def.items.length&&(addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),status.dirty());let items=[...ctx.data].map((item,itemIndex)=>{let schema=this._def.items[itemIndex]||this._def.rest;return schema?schema._parse(new ParseInputLazyPath(ctx,item,ctx.path,itemIndex)):null}).filter(x$3=>!!x$3);return ctx.common.async?Promise.all(items).then(results=>ParseStatus.mergeArray(status,results)):ParseStatus.mergeArray(status,items)}get items(){return this._def.items}rest(rest){return new ZodTuple({...this._def,rest})}};ZodTuple.create=(schemas,params)=>{if(!Array.isArray(schemas))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new ZodTuple({items:schemas,typeName:ZodFirstPartyTypeKind.ZodTuple,rest:null,...processCreateParams(params)})};var ZodRecord=class ZodRecord extends ZodType{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.object)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.object,received:ctx.parsedType}),INVALID;let pairs=[],keyType=this._def.keyType,valueType=this._def.valueType;for(let key$1 in ctx.data)pairs.push({key:keyType._parse(new ParseInputLazyPath(ctx,key$1,ctx.path,key$1)),value:valueType._parse(new ParseInputLazyPath(ctx,ctx.data[key$1],ctx.path,key$1)),alwaysSet:key$1 in ctx.data});return ctx.common.async?ParseStatus.mergeObjectAsync(status,pairs):ParseStatus.mergeObjectSync(status,pairs)}get element(){return this._def.valueType}static create(first,second,third){return second instanceof ZodType?new ZodRecord({keyType:first,valueType:second,typeName:ZodFirstPartyTypeKind.ZodRecord,...processCreateParams(third)}):new ZodRecord({keyType:ZodString.create(),valueType:first,typeName:ZodFirstPartyTypeKind.ZodRecord,...processCreateParams(second)})}},ZodMap=class extends ZodType{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.map)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.map,received:ctx.parsedType}),INVALID;let keyType=this._def.keyType,valueType=this._def.valueType,pairs=[...ctx.data.entries()].map(([key$1,value$1],index$1)=>({key:keyType._parse(new ParseInputLazyPath(ctx,key$1,ctx.path,[index$1,`key`])),value:valueType._parse(new ParseInputLazyPath(ctx,value$1,ctx.path,[index$1,`value`]))}));if(ctx.common.async){let finalMap=new Map;return Promise.resolve().then(async()=>{for(let pair of pairs){let key$1=await pair.key,value$1=await pair.value;if(key$1.status===`aborted`||value$1.status===`aborted`)return INVALID;(key$1.status===`dirty`||value$1.status===`dirty`)&&status.dirty(),finalMap.set(key$1.value,value$1.value)}return{status:status.value,value:finalMap}})}else{let finalMap=new Map;for(let pair of pairs){let key$1=pair.key,value$1=pair.value;if(key$1.status===`aborted`||value$1.status===`aborted`)return INVALID;(key$1.status===`dirty`||value$1.status===`dirty`)&&status.dirty(),finalMap.set(key$1.value,value$1.value)}return{status:status.value,value:finalMap}}}};ZodMap.create=(keyType,valueType,params)=>new ZodMap({valueType,keyType,typeName:ZodFirstPartyTypeKind.ZodMap,...processCreateParams(params)});var ZodSet=class ZodSet extends ZodType{_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.set)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.set,received:ctx.parsedType}),INVALID;let def$1=this._def;def$1.minSize!==null&&ctx.data.sizedef$1.maxSize.value&&(addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:def$1.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:def$1.maxSize.message}),status.dirty());let valueType=this._def.valueType;function finalizeSet(elements$1){let parsedSet=new Set;for(let element$3 of elements$1){if(element$3.status===`aborted`)return INVALID;element$3.status===`dirty`&&status.dirty(),parsedSet.add(element$3.value)}return{status:status.value,value:parsedSet}}let elements=[...ctx.data.values()].map((item,i$1)=>valueType._parse(new ParseInputLazyPath(ctx,item,ctx.path,i$1)));return ctx.common.async?Promise.all(elements).then(elements$1=>finalizeSet(elements$1)):finalizeSet(elements)}min(minSize,message$1){return new ZodSet({...this._def,minSize:{value:minSize,message:errorUtil.toString(message$1)}})}max(maxSize,message$1){return new ZodSet({...this._def,maxSize:{value:maxSize,message:errorUtil.toString(message$1)}})}size(size$1,message$1){return this.min(size$1,message$1).max(size$1,message$1)}nonempty(message$1){return this.min(1,message$1)}};ZodSet.create=(valueType,params)=>new ZodSet({valueType,minSize:null,maxSize:null,typeName:ZodFirstPartyTypeKind.ZodSet,...processCreateParams(params)});var ZodFunction=class ZodFunction extends ZodType{constructor(){super(...arguments),this.validate=this.implement}_parse(input){let{ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.function)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.function,received:ctx.parsedType}),INVALID;function makeArgsIssue(args,error){return makeIssue({data:args,path:ctx.path,errorMaps:[ctx.common.contextualErrorMap,ctx.schemaErrorMap,getErrorMap(),en_default$1].filter(x$3=>!!x$3),issueData:{code:ZodIssueCode.invalid_arguments,argumentsError:error}})}function makeReturnsIssue(returns,error){return makeIssue({data:returns,path:ctx.path,errorMaps:[ctx.common.contextualErrorMap,ctx.schemaErrorMap,getErrorMap(),en_default$1].filter(x$3=>!!x$3),issueData:{code:ZodIssueCode.invalid_return_type,returnTypeError:error}})}let params={errorMap:ctx.common.contextualErrorMap},fn$5=ctx.data;if(this._def.returns instanceof ZodPromise){let me$1=this;return OK(async function(...args){let error=new ZodError([]),parsedArgs=await me$1._def.args.parseAsync(args,params).catch(e$3=>{throw error.addIssue(makeArgsIssue(args,e$3)),error}),result=await Reflect.apply(fn$5,this,parsedArgs),parsedReturns=await me$1._def.returns._def.type.parseAsync(result,params).catch(e$3=>{throw error.addIssue(makeReturnsIssue(result,e$3)),error});return parsedReturns})}else{let me$1=this;return OK(function(...args){let parsedArgs=me$1._def.args.safeParse(args,params);if(!parsedArgs.success)throw new ZodError([makeArgsIssue(args,parsedArgs.error)]);let result=Reflect.apply(fn$5,this,parsedArgs.data),parsedReturns=me$1._def.returns.safeParse(result,params);if(!parsedReturns.success)throw new ZodError([makeReturnsIssue(result,parsedReturns.error)]);return parsedReturns.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...items){return new ZodFunction({...this._def,args:ZodTuple.create(items).rest(ZodUnknown.create())})}returns(returnType){return new ZodFunction({...this._def,returns:returnType})}implement(func){let validatedFunc=this.parse(func);return validatedFunc}strictImplement(func){let validatedFunc=this.parse(func);return validatedFunc}static create(args,returns,params){return new ZodFunction({args:args||ZodTuple.create([]).rest(ZodUnknown.create()),returns:returns||ZodUnknown.create(),typeName:ZodFirstPartyTypeKind.ZodFunction,...processCreateParams(params)})}},ZodLazy=class extends ZodType{get schema(){return this._def.getter()}_parse(input){let{ctx}=this._processInputParams(input),lazySchema=this._def.getter();return lazySchema._parse({data:ctx.data,path:ctx.path,parent:ctx})}};ZodLazy.create=(getter,params)=>new ZodLazy({getter,typeName:ZodFirstPartyTypeKind.ZodLazy,...processCreateParams(params)});var ZodLiteral=class extends ZodType{_parse(input){if(input.data!==this._def.value){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{received:ctx.data,code:ZodIssueCode.invalid_literal,expected:this._def.value}),INVALID}return{status:`valid`,value:input.data}}get value(){return this._def.value}};ZodLiteral.create=(value$1,params)=>new ZodLiteral({value:value$1,typeName:ZodFirstPartyTypeKind.ZodLiteral,...processCreateParams(params)});function createZodEnum(values,params){return new ZodEnum({values,typeName:ZodFirstPartyTypeKind.ZodEnum,...processCreateParams(params)})}var ZodEnum=class ZodEnum extends ZodType{_parse(input){if(typeof input.data!=`string`){let ctx=this._getOrReturnCtx(input),expectedValues=this._def.values;return addIssueToContext(ctx,{expected:util.joinValues(expectedValues),received:ctx.parsedType,code:ZodIssueCode.invalid_type}),INVALID}if(this._cache||=new Set(this._def.values),!this._cache.has(input.data)){let ctx=this._getOrReturnCtx(input),expectedValues=this._def.values;return addIssueToContext(ctx,{received:ctx.data,code:ZodIssueCode.invalid_enum_value,options:expectedValues}),INVALID}return OK(input.data)}get options(){return this._def.values}get enum(){let enumValues={};for(let val of this._def.values)enumValues[val]=val;return enumValues}get Values(){let enumValues={};for(let val of this._def.values)enumValues[val]=val;return enumValues}get Enum(){let enumValues={};for(let val of this._def.values)enumValues[val]=val;return enumValues}extract(values,newDef=this._def){return ZodEnum.create(values,{...this._def,...newDef})}exclude(values,newDef=this._def){return ZodEnum.create(this.options.filter(opt=>!values.includes(opt)),{...this._def,...newDef})}};ZodEnum.create=createZodEnum;var ZodNativeEnum=class extends ZodType{_parse(input){let nativeEnumValues=util.getValidEnumValues(this._def.values),ctx=this._getOrReturnCtx(input);if(ctx.parsedType!==ZodParsedType.string&&ctx.parsedType!==ZodParsedType.number){let expectedValues=util.objectValues(nativeEnumValues);return addIssueToContext(ctx,{expected:util.joinValues(expectedValues),received:ctx.parsedType,code:ZodIssueCode.invalid_type}),INVALID}if(this._cache||=new Set(util.getValidEnumValues(this._def.values)),!this._cache.has(input.data)){let expectedValues=util.objectValues(nativeEnumValues);return addIssueToContext(ctx,{received:ctx.data,code:ZodIssueCode.invalid_enum_value,options:expectedValues}),INVALID}return OK(input.data)}get enum(){return this._def.values}};ZodNativeEnum.create=(values,params)=>new ZodNativeEnum({values,typeName:ZodFirstPartyTypeKind.ZodNativeEnum,...processCreateParams(params)});var ZodPromise=class extends ZodType{unwrap(){return this._def.type}_parse(input){let{ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.promise&&ctx.common.async===!1)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.promise,received:ctx.parsedType}),INVALID;let promisified=ctx.parsedType===ZodParsedType.promise?ctx.data:Promise.resolve(ctx.data);return OK(promisified.then(data$10=>this._def.type.parseAsync(data$10,{path:ctx.path,errorMap:ctx.common.contextualErrorMap})))}};ZodPromise.create=(schema,params)=>new ZodPromise({type:schema,typeName:ZodFirstPartyTypeKind.ZodPromise,...processCreateParams(params)});var ZodEffects=class extends ZodType{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ZodFirstPartyTypeKind.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(input){let{status,ctx}=this._processInputParams(input),effect$1=this._def.effect||null,checkCtx={addIssue:arg=>{addIssueToContext(ctx,arg),arg.fatal?status.abort():status.dirty()},get path(){return ctx.path}};if(checkCtx.addIssue=checkCtx.addIssue.bind(checkCtx),effect$1.type===`preprocess`){let processed=effect$1.transform(ctx.data,checkCtx);if(ctx.common.async)return Promise.resolve(processed).then(async processed$1=>{if(status.value===`aborted`)return INVALID;let result=await this._def.schema._parseAsync({data:processed$1,path:ctx.path,parent:ctx});return result.status===`aborted`?INVALID:result.status===`dirty`||status.value===`dirty`?DIRTY(result.value):result});{if(status.value===`aborted`)return INVALID;let result=this._def.schema._parseSync({data:processed,path:ctx.path,parent:ctx});return result.status===`aborted`?INVALID:result.status===`dirty`||status.value===`dirty`?DIRTY(result.value):result}}if(effect$1.type===`refinement`){let executeRefinement=acc=>{let result=effect$1.refinement(acc,checkCtx);if(ctx.common.async)return Promise.resolve(result);if(result instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return acc};if(ctx.common.async===!1){let inner=this._def.schema._parseSync({data:ctx.data,path:ctx.path,parent:ctx});return inner.status===`aborted`?INVALID:(inner.status===`dirty`&&status.dirty(),executeRefinement(inner.value),{status:status.value,value:inner.value})}else return this._def.schema._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}).then(inner=>inner.status===`aborted`?INVALID:(inner.status===`dirty`&&status.dirty(),executeRefinement(inner.value).then(()=>({status:status.value,value:inner.value}))))}if(effect$1.type===`transform`)if(ctx.common.async===!1){let base=this._def.schema._parseSync({data:ctx.data,path:ctx.path,parent:ctx});if(!isValid(base))return INVALID;let result=effect$1.transform(base.value,checkCtx);if(result instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:status.value,value:result}}else return this._def.schema._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}).then(base=>isValid(base)?Promise.resolve(effect$1.transform(base.value,checkCtx)).then(result=>({status:status.value,value:result})):INVALID);util.assertNever(effect$1)}};ZodEffects.create=(schema,effect$1,params)=>new ZodEffects({schema,typeName:ZodFirstPartyTypeKind.ZodEffects,effect:effect$1,...processCreateParams(params)}),ZodEffects.createWithPreprocess=(preprocess$1,schema,params)=>new ZodEffects({schema,effect:{type:`preprocess`,transform:preprocess$1},typeName:ZodFirstPartyTypeKind.ZodEffects,...processCreateParams(params)});var ZodOptional=class extends ZodType{_parse(input){let parsedType=this._getType(input);return parsedType===ZodParsedType.undefined?OK(void 0):this._def.innerType._parse(input)}unwrap(){return this._def.innerType}};ZodOptional.create=(type,params)=>new ZodOptional({innerType:type,typeName:ZodFirstPartyTypeKind.ZodOptional,...processCreateParams(params)});var ZodNullable=class extends ZodType{_parse(input){let parsedType=this._getType(input);return parsedType===ZodParsedType.null?OK(null):this._def.innerType._parse(input)}unwrap(){return this._def.innerType}};ZodNullable.create=(type,params)=>new ZodNullable({innerType:type,typeName:ZodFirstPartyTypeKind.ZodNullable,...processCreateParams(params)});var ZodDefault=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),data$10=ctx.data;return ctx.parsedType===ZodParsedType.undefined&&(data$10=this._def.defaultValue()),this._def.innerType._parse({data:data$10,path:ctx.path,parent:ctx})}removeDefault(){return this._def.innerType}};ZodDefault.create=(type,params)=>new ZodDefault({innerType:type,typeName:ZodFirstPartyTypeKind.ZodDefault,defaultValue:typeof params.default==`function`?params.default:()=>params.default,...processCreateParams(params)});var ZodCatch=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),newCtx={...ctx,common:{...ctx.common,issues:[]}},result=this._def.innerType._parse({data:newCtx.data,path:newCtx.path,parent:{...newCtx}});return isAsync(result)?result.then(result$1=>({status:`valid`,value:result$1.status===`valid`?result$1.value:this._def.catchValue({get error(){return new ZodError(newCtx.common.issues)},input:newCtx.data})})):{status:`valid`,value:result.status===`valid`?result.value:this._def.catchValue({get error(){return new ZodError(newCtx.common.issues)},input:newCtx.data})}}removeCatch(){return this._def.innerType}};ZodCatch.create=(type,params)=>new ZodCatch({innerType:type,typeName:ZodFirstPartyTypeKind.ZodCatch,catchValue:typeof params.catch==`function`?params.catch:()=>params.catch,...processCreateParams(params)});var ZodNaN=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.nan){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.nan,received:ctx.parsedType}),INVALID}return{status:`valid`,value:input.data}}};ZodNaN.create=params=>new ZodNaN({typeName:ZodFirstPartyTypeKind.ZodNaN,...processCreateParams(params)});const BRAND=Symbol(`zod_brand`);var ZodBranded=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),data$10=ctx.data;return this._def.type._parse({data:data$10,path:ctx.path,parent:ctx})}unwrap(){return this._def.type}},ZodPipeline=class ZodPipeline extends ZodType{_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.common.async){let handleAsync=async()=>{let inResult=await this._def.in._parseAsync({data:ctx.data,path:ctx.path,parent:ctx});return inResult.status===`aborted`?INVALID:inResult.status===`dirty`?(status.dirty(),DIRTY(inResult.value)):this._def.out._parseAsync({data:inResult.value,path:ctx.path,parent:ctx})};return handleAsync()}else{let inResult=this._def.in._parseSync({data:ctx.data,path:ctx.path,parent:ctx});return inResult.status===`aborted`?INVALID:inResult.status===`dirty`?(status.dirty(),{status:`dirty`,value:inResult.value}):this._def.out._parseSync({data:inResult.value,path:ctx.path,parent:ctx})}}static create(a$2,b$3){return new ZodPipeline({in:a$2,out:b$3,typeName:ZodFirstPartyTypeKind.ZodPipeline})}},ZodReadonly=class extends ZodType{_parse(input){let result=this._def.innerType._parse(input),freeze=data$10=>(isValid(data$10)&&(data$10.value=Object.freeze(data$10.value)),data$10);return isAsync(result)?result.then(data$10=>freeze(data$10)):freeze(result)}unwrap(){return this._def.innerType}};ZodReadonly.create=(type,params)=>new ZodReadonly({innerType:type,typeName:ZodFirstPartyTypeKind.ZodReadonly,...processCreateParams(params)});const late={object:ZodObject.lazycreate};var ZodFirstPartyTypeKind;(function(ZodFirstPartyTypeKind$1){ZodFirstPartyTypeKind$1.ZodString=`ZodString`,ZodFirstPartyTypeKind$1.ZodNumber=`ZodNumber`,ZodFirstPartyTypeKind$1.ZodNaN=`ZodNaN`,ZodFirstPartyTypeKind$1.ZodBigInt=`ZodBigInt`,ZodFirstPartyTypeKind$1.ZodBoolean=`ZodBoolean`,ZodFirstPartyTypeKind$1.ZodDate=`ZodDate`,ZodFirstPartyTypeKind$1.ZodSymbol=`ZodSymbol`,ZodFirstPartyTypeKind$1.ZodUndefined=`ZodUndefined`,ZodFirstPartyTypeKind$1.ZodNull=`ZodNull`,ZodFirstPartyTypeKind$1.ZodAny=`ZodAny`,ZodFirstPartyTypeKind$1.ZodUnknown=`ZodUnknown`,ZodFirstPartyTypeKind$1.ZodNever=`ZodNever`,ZodFirstPartyTypeKind$1.ZodVoid=`ZodVoid`,ZodFirstPartyTypeKind$1.ZodArray=`ZodArray`,ZodFirstPartyTypeKind$1.ZodObject=`ZodObject`,ZodFirstPartyTypeKind$1.ZodUnion=`ZodUnion`,ZodFirstPartyTypeKind$1.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,ZodFirstPartyTypeKind$1.ZodIntersection=`ZodIntersection`,ZodFirstPartyTypeKind$1.ZodTuple=`ZodTuple`,ZodFirstPartyTypeKind$1.ZodRecord=`ZodRecord`,ZodFirstPartyTypeKind$1.ZodMap=`ZodMap`,ZodFirstPartyTypeKind$1.ZodSet=`ZodSet`,ZodFirstPartyTypeKind$1.ZodFunction=`ZodFunction`,ZodFirstPartyTypeKind$1.ZodLazy=`ZodLazy`,ZodFirstPartyTypeKind$1.ZodLiteral=`ZodLiteral`,ZodFirstPartyTypeKind$1.ZodEnum=`ZodEnum`,ZodFirstPartyTypeKind$1.ZodEffects=`ZodEffects`,ZodFirstPartyTypeKind$1.ZodNativeEnum=`ZodNativeEnum`,ZodFirstPartyTypeKind$1.ZodOptional=`ZodOptional`,ZodFirstPartyTypeKind$1.ZodNullable=`ZodNullable`,ZodFirstPartyTypeKind$1.ZodDefault=`ZodDefault`,ZodFirstPartyTypeKind$1.ZodCatch=`ZodCatch`,ZodFirstPartyTypeKind$1.ZodPromise=`ZodPromise`,ZodFirstPartyTypeKind$1.ZodBranded=`ZodBranded`,ZodFirstPartyTypeKind$1.ZodPipeline=`ZodPipeline`,ZodFirstPartyTypeKind$1.ZodReadonly=`ZodReadonly`})(ZodFirstPartyTypeKind||={});const stringType=ZodString.create,numberType=ZodNumber.create,nanType=ZodNaN.create,bigIntType=ZodBigInt.create,booleanType=ZodBoolean.create,dateType=ZodDate.create,symbolType=ZodSymbol.create,undefinedType=ZodUndefined.create,nullType=ZodNull.create,anyType=ZodAny.create,unknownType=ZodUnknown.create,neverType=ZodNever.create,voidType=ZodVoid.create,arrayType=ZodArray.create,objectType=ZodObject.create,strictObjectType=ZodObject.strictCreate,unionType=ZodUnion.create,discriminatedUnionType=ZodDiscriminatedUnion.create,intersectionType=ZodIntersection.create,tupleType=ZodTuple.create,recordType=ZodRecord.create,mapType=ZodMap.create,setType=ZodSet.create,functionType=ZodFunction.create,lazyType=ZodLazy.create,literalType=ZodLiteral.create,enumType=ZodEnum.create,nativeEnumType=ZodNativeEnum.create,promiseType=ZodPromise.create,effectsType=ZodEffects.create,optionalType=ZodOptional.create,nullableType=ZodNullable.create,preprocessType=ZodEffects.createWithPreprocess,pipelineType=ZodPipeline.create,tools$1=[tool({name:`debug_random_number`,description:`Generate a random number between 0 and 1`,execute:async()=>new Promise(resolve$1=>{setTimeout(()=>{resolve$1(Math.random().toString())},1e3)}),parameters:objectType({})})],debug=async()=>Promise.all(tools$1);function __classPrivateFieldGet(receiver,state,kind,f$3){if(kind===`a`&&!f$3)throw TypeError(`Private accessor was defined without a getter`);if(typeof state==`function`?receiver!==state||!f$3:!state.has(receiver))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return kind===`m`?f$3:kind===`a`?f$3.call(receiver):f$3?f$3.value:state.get(receiver)}function __classPrivateFieldSet(receiver,state,value$1,kind,f$3){if(kind===`m`)throw TypeError(`Private method is not writable`);if(kind===`a`&&!f$3)throw TypeError(`Private accessor was defined without a setter`);if(typeof state==`function`?receiver!==state||!f$3:!state.has(receiver))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return kind===`a`?f$3.call(receiver,value$1):f$3?f$3.value=value$1:state.set(receiver,value$1),value$1}var _Channel_onmessage,_Channel_nextMessageIndex,_Channel_pendingMessages,_Channel_messageEndIndex,_Resource_rid;const SERIALIZE_TO_IPC_FN=`__TAURI_TO_IPC_KEY__`;function transformCallback(callback,once=!1){return window.__TAURI_INTERNALS__.transformCallback(callback,once)}var Channel=class{constructor(onmessage){_Channel_onmessage.set(this,void 0),_Channel_nextMessageIndex.set(this,0),_Channel_pendingMessages.set(this,[]),_Channel_messageEndIndex.set(this,void 0),__classPrivateFieldSet(this,_Channel_onmessage,onmessage||(()=>{}),`f`),this.id=transformCallback(rawMessage=>{let index$1=rawMessage.index;if(`end`in rawMessage){index$1==__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)?this.cleanupCallback():__classPrivateFieldSet(this,_Channel_messageEndIndex,index$1,`f`);return}let message$1=rawMessage.message;if(index$1==__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)){for(__classPrivateFieldGet(this,_Channel_onmessage,`f`).call(this,message$1),__classPrivateFieldSet(this,_Channel_nextMessageIndex,__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)+1,`f`);__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)in __classPrivateFieldGet(this,_Channel_pendingMessages,`f`);){let message$2=__classPrivateFieldGet(this,_Channel_pendingMessages,`f`)[__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)];__classPrivateFieldGet(this,_Channel_onmessage,`f`).call(this,message$2),delete __classPrivateFieldGet(this,_Channel_pendingMessages,`f`)[__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)],__classPrivateFieldSet(this,_Channel_nextMessageIndex,__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)+1,`f`)}__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)===__classPrivateFieldGet(this,_Channel_messageEndIndex,`f`)&&this.cleanupCallback()}else __classPrivateFieldGet(this,_Channel_pendingMessages,`f`)[index$1]=message$1})}cleanupCallback(){window.__TAURI_INTERNALS__.unregisterCallback(this.id)}set onmessage(handler){__classPrivateFieldSet(this,_Channel_onmessage,handler,`f`)}get onmessage(){return __classPrivateFieldGet(this,_Channel_onmessage,`f`)}[(_Channel_onmessage=new WeakMap,_Channel_nextMessageIndex=new WeakMap,_Channel_pendingMessages=new WeakMap,_Channel_messageEndIndex=new WeakMap,SERIALIZE_TO_IPC_FN)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[SERIALIZE_TO_IPC_FN]()}};async function invoke(cmd,args={},options$1){return window.__TAURI_INTERNALS__.invoke(cmd,args,options$1)}_Resource_rid=new WeakMap;async function connectServer(command,args){await invoke(`plugin:mcp|connect_server`,{command,args})}async function disconnectServer(){await invoke(`plugin:mcp|disconnect_server`)}async function listTools(){return await invoke(`plugin:mcp|list_tools`)}async function callTool(name$2,args){return await invoke(`plugin:mcp|call_tool`,{name:name$2,args})}const tools=[tool({name:`mcp_list_tools`,description:`List all tools available on the MCP server`,execute:async(_$2,__)=>await listTools(),parameters:objectType({})}),tool({name:`mcp_connect_server`,description:`Connect to the MCP server. If "success", the connection to the MCP server is successful. Otherwise, the connection fails.`,execute:async({command,args})=>(await connectServer(command,args),`success`),parameters:objectType({command:stringType().describe(`The command to connect to the MCP server`),args:arrayType(stringType()).describe(`The arguments to pass to the MCP server`)})}),tool({name:`mcp_disconnect_server`,description:`Disconnect from the MCP server. If "success", the disconnection from the MCP server is successful. Otherwise, the disconnection fails.`,execute:async()=>(await disconnectServer(),`success`),parameters:objectType({})}),tool({name:`mcp_call_tool`,description:`Call a tool on the MCP server. The result is a list of content and a boolean indicating whether the tool call is an error.`,execute:async({name:name$2,parameters})=>{let parametersObject=Object.fromEntries(parameters.map(({name:name$3,value:value$1})=>[name$3,value$1])),result=await callTool(name$2,parametersObject);return result},parameters:objectType({name:stringType().describe(`The name of the tool to call`),parameters:arrayType(objectType({name:stringType().describe(`The name of the parameter`),value:unionType([stringType(),numberType(),booleanType(),objectType({})]).describe(`The value of the parameter, it can be a string, a number, a boolean, or an object`)})).describe(`The parameters to pass to the tool`)})})],mcp=async()=>Promise.all(tools),useLLM=defineStore(`llm`,()=>{async function stream(model,chatProvider,messages,options$1){let headers=options$1?.headers;return await streamText({...chatProvider.chat(model),maxSteps:10,messages:messages.map(msg=>({...msg,content:msg.role===`error`?`User encountered error: ${msg.content}`:msg.content,role:msg.role===`error`?`user`:msg.role})),headers,tools:[...await mcp(),...await debug()],onEvent(event){var _options$1$onToolCall,_options$1$onToolCall2;event.type===`tool-call`?options$1==null||(_options$1$onToolCall=options$1.onToolCall)==null||_options$1$onToolCall.call(options$1,event.toolCall):event.type===`tool-call-result`&&(options$1==null||(_options$1$onToolCall2=options$1.onToolCallResult)==null||_options$1$onToolCall2.call(options$1,{id:event.id,result:event.result}))}})}async function models$1(apiUrl,apiKey){if(apiUrl===``)return[];try{return await listModels({baseURL:apiUrl.endsWith(`/`)?apiUrl:`${apiUrl}/`,apiKey})}catch(err){if(String(err).includes(`Failed to construct 'URL': Invalid URL`))return[];throw err}}return{models:models$1,stream}}),createChatProvider=options$1=>({chat:model=>Object.assign(options$1,{model})}),createEmbedProvider=options$1=>({embed:model=>Object.assign(options$1,{model})}),createImageProvider=options$1=>({image:model=>Object.assign(options$1,{model})}),createModelProvider=options$1=>({model:()=>options$1}),createSpeechProvider=options$1=>({speech:model=>Object.assign(options$1,{model})}),createTranscriptionProvider=options$1=>({transcription:model=>Object.assign(options$1,{model})}),createMetadataProvider=(id,otherMeta)=>({metadata:{id,...otherMeta}}),merge$1=(...arr)=>Object.assign(arr[0],...arr.slice(1)),createAnthropic=(apiKey,baseURL=`https://api.anthropic.com/v1/`)=>merge$1(createMetadataProvider(`anthropic`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createDeepSeek=(apiKey,baseURL=`https://api.deepseek.com/`)=>merge$1(createMetadataProvider(`deepseek`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createFireworks=(apiKey,baseURL=`https://api.fireworks.ai/inference/v1/`)=>merge$1(createMetadataProvider(`fireworks`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createGoogleGenerativeAI=(apiKey,baseURL=`https://generativelanguage.googleapis.com/v1beta/openai/`)=>merge$1(createMetadataProvider(`google-generative-ai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createMistral=(apiKey,baseURL=`https://api.mistral.ai/v1/`)=>merge$1(createMetadataProvider(`mistral`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createMoonshot=(apiKey,baseURL=`https://api.moonshot.cn/v1/`)=>merge$1(createMetadataProvider(`moonshot`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createNovita=(apiKey,baseURL=`https://api.novita.ai/v3/openai/`)=>merge$1(createMetadataProvider(`novita`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createOpenAI=(apiKey,baseURL=`https://api.openai.com/v1/`)=>merge$1(createMetadataProvider(`openai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createImageProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL}),createSpeechProvider({apiKey,baseURL}),createTranscriptionProvider({apiKey,baseURL})),createOpenRouter=(apiKey,baseURL=``)=>merge$1(createMetadataProvider(`openrouter`),{chat:(model,openRouterOptions)=>{let requestOptions={apiKey,baseURL,model},toOpenRouterOptions=({extraHeaders,models:models$1,provider})=>{extraHeaders!=null&&(requestOptions.headers??={},Object.assign(requestOptions.headers,extraHeaders));let transformedProvider;return provider!=null&&(transformedProvider=objCamelToSnake$1(provider)),objCamelToSnake$1({models:models$1,provider:transformedProvider})};return{...openRouterOptions?toOpenRouterOptions(openRouterOptions):{},...requestOptions}}},createModelProvider({apiKey,baseURL})),createPerplexity=(apiKey,baseURL=`https://api.perplexity.ai/`)=>merge$1(createMetadataProvider(`perplexity`),createChatProvider({apiKey,baseURL})),createTogetherAI=(apiKey,baseURL=`https://api.together.xyz/v1/`)=>merge$1(createMetadataProvider(`together-ai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL,fetch:async(...args)=>globalThis.fetch(...args).then(async res=>res.json()).then(data$10=>Response.json({data:data$10,object:`list`}))})),createWorkersAI=(apiKey,accountId)=>{let baseURL=`https://api.cloudflare.com/client/v4/accounts/${accountId}/ai/v1/`;return merge$1(createMetadataProvider(`workers-ai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}))},createXAI=(apiKey,baseURL=`https://api.x.ai/v1/`)=>merge$1(createMetadataProvider(`xai`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createOllama=(baseURL=`http://localhost:11434/v1/`)=>merge$1(createMetadataProvider(`ollama`),createChatProvider({baseURL}),createEmbedProvider({baseURL}),createModelProvider({baseURL})),decodeBase64=b64=>{let binString=atob(b64),size$1=binString.length,bytes=new Uint8Array(size$1);for(let i$1=0;i$1merge$1(createMetadataProvider(`player2`),createChatProvider({baseURL,headers:{"player2-game-key":gameKey}}),createSpeechProvider({baseURL,fetch:async(input,reqInit)=>{let newUrl=`${input.toString().slice(0,-12)}tts/speak`;try{let{input:input2,response_format,speed,voice,...rest}=JSON.parse(reqInit?.body),modified={audio_format:response_format,play_in_app:!1,speed:speed??1,text:input2,voice_ids:voice==null?[]:[voice],...rest};reqInit&&(reqInit.body=JSON.stringify(modified))}catch(err){console.warn(`Could not parse body as JSON:`,err)}return globalThis.fetch(newUrl,reqInit).then(async res=>res.json()).then(json=>{let base64=json.data??``,bytes=decodeBase64(base64);return new Response(bytes,{headers:{"Content-Type":`audio/mpeg`},status:200})})},headers:{"player2-game-key":gameKey}}));async function check(){try{if(isInNodejsRuntime())return{supported:!1,isNode:!0,reason:``,fp16Supported:!1};if(typeof navigator>`u`||!navigator.gpu)return{supported:!1,isNode:!1,reason:`WebGPU is not available (navigator.gpu is undefined)`,fp16Supported:!1};let adapter=await navigator.gpu.requestAdapter();return adapter?{supported:!0,isNode:!1,reason:``,adapter,fp16Supported:adapter.features.has(`shader-f16`)}:{supported:!1,isNode:!1,reason:`WebGPU is not supported (no adapter found)`,fp16Supported:!1}}catch(error){let errorMessage=error instanceof Error?error.toString():String(error);return{supported:!1,isNode:!1,reason:errorMessage,fp16Supported:!1}}}function isInNodejsRuntime(){return typeof process<`u`&&`versions`in process&&process.versions!=null&&typeof process.versions==`object`&&`node`in process.versions&&process.versions.node!=null}async function isWebGPUSupported(){return check().then(result=>result.supported)}const merge=(...arr)=>Object.assign(arr[0],...arr.slice(1));var XSAIError=class extends Error{constructor(message$1,response){super(message$1),babelHelpers.defineProperty(this,`response`,void 0),this.name=`XSAIError`,this.response=response}};const strCamelToSnake=str=>str.replace(/[A-Z]/g,s$1=>`_${s$1.toLowerCase()}`),objCamelToSnake=obj=>Object.fromEntries(Object.entries(obj).map(([k$4,v$1])=>[strCamelToSnake(k$4),v$1])),clean$1=obj=>Object.fromEntries(Object.entries(obj).filter(([,v$1])=>v$1!==void 0)),requestHeaders=(headers,apiKey)=>clean$1({Authorization:apiKey===void 0?void 0:`Bearer ${apiKey}`,...headers}),requestURL=(path,baseURL)=>{let base=baseURL.toString();return new URL(path,base.endsWith(`/`)?base:`${base}/`)},responseCatch=async res=>{if(!res.ok)throw new XSAIError(`Remote sent ${res.status} response: ${await res.text()}`,res);if(!res.body)throw new XSAIError(`Response body is empty from remote server`,res);if(!(res.body instanceof ReadableStream))throw new XSAIError(`Expected Response body to be a ReadableStream, but got ${String(res.body)}; Content Type is ${res.headers.get(`Content-Type`)}`,res);return res},responseJSON=async res=>responseCatch(res).then(async res2=>{let text$5=await res2.text();try{return JSON.parse(text$5)}catch{throw Error(`Failed to parse response, response body: ${text$5}`)}});var createUnElevenLabs=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=({applyTextNormalization,languageCode,nextRequestIds,nextText,previousRequestIds,previousText,pronunciationDictionaryLocators,seed,voiceSettings})=>({extraBody:objCamelToSnake({applyTextNormalization,languageCode,nextRequestIds,nextText,previousRequestIds,previousText,pronunciationDictionaryLocators:pronunciationDictionaryLocators?pronunciationDictionaryLocators.map(pdl=>objCamelToSnake(pdl)):void 0,seed,voiceSettings:objCamelToSnake(voiceSettings??{similarityBoost:.75,stability:.5})})}),speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`elevenlabs/${model}`})},voiceProvider={voice:options$1=>(baseURL.endsWith(`v1/`)?baseURL=baseURL.slice(0,-3):baseURL.endsWith(`v1`)&&(baseURL=baseURL.slice(0,-2)),{query:`provider=elevenlabs`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL})};return merge(speechProvider,voiceProvider)},createUnMicrosoft=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=options$1=>{let{deploymentId,region,sampleRate}=options$1,extraBody={deploymentId,region,sampleRate};return`disableSsml`in options$1?extraBody.disableSsml=options$1.disableSsml:`lang`in options$1&&(extraBody.lang=options$1.lang,extraBody.gender=options$1.gender,extraBody.voice=options$1.voice),{extraBody:objCamelToSnake(extraBody)}},speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`microsoft/${model}`})},voiceProvider={voice:options$1=>(baseURL.endsWith(`v1/`)?baseURL=baseURL.slice(0,-3):baseURL.endsWith(`v1`)&&(baseURL=baseURL.slice(0,-2)),{query:`region=${options$1?.region}&provider=microsoft`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL})};return merge(speechProvider,voiceProvider)},createUnVolcengine=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=options$1=>{var _options$1$app,_options$1$app2;let extraBody={app:{appid:(_options$1$app=options$1.app)?.appId,token:apiKey}};return options$1.app!==void 0&&(extraBody.app={...options$1.app,appid:(_options$1$app2=options$1.app)?.appId,token:apiKey}),options$1.user!==void 0&&(extraBody.user=options$1.user),options$1.audio!==void 0&&(extraBody.audio=options$1.audio),{extraBody:objCamelToSnake(extraBody)}},speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`volcengine/${model}`})},voiceProvider={voice:options$1=>(baseURL.endsWith(`v1/`)?baseURL=baseURL.slice(0,-3):baseURL.endsWith(`v1`)&&(baseURL=baseURL.slice(0,-2)),{query:`provider=volcengine`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL})};return merge(speechProvider,voiceProvider)},createUnAlibabaCloud=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=options$1=>{let{sampleRate,volume,rate,pitch}=options$1,extraBody={sampleRate,volume,rate,pitch};return Object.keys(extraBody).forEach(key$1=>extraBody[key$1]===void 0&&delete extraBody[key$1]),{extraBody:objCamelToSnake(extraBody)}},speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`alibaba/${model}`})},voiceProvider={voice:options$1=>{let adjustedBaseURL=baseURL;return adjustedBaseURL.endsWith(`v1/`)?adjustedBaseURL=adjustedBaseURL.slice(0,-3):adjustedBaseURL.endsWith(`v1`)&&(adjustedBaseURL=adjustedBaseURL.slice(0,-2)),{query:`provider=alibaba`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL:adjustedBaseURL}}};return merge(speechProvider,voiceProvider)},listVoices=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL(options$1.query?`api/voices?${options$1.query}`:`api/voices`,options$1.baseURL),{headers:requestHeaders({...options$1.headers},options$1.apiKey),method:`GET`,signal:options$1.abortSignal}).then(responseJSON).then(({voices})=>voices);const models=[{model_id:`eleven_multilingual_v2`,name:`Eleven Multilingual v2`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!0,can_use_speaker_boost:!0,serves_pro_voices:!1,token_cost_factor:1,description:`Our most life-like, emotionally rich mode in 29 languages. Best for voice overs, audiobooks, post-production, or any other content creation needs.`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`},{language_id:`ru`,name:`Russian`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_flash_v2_5`,name:`Eleven Flash v2.5`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our ultra low latency model in 32 languages. Ideal for conversational use cases.`,requires_alpha_access:!1,max_characters_request_free_user:4e4,max_characters_request_subscribed_user:4e4,maximum_text_length_per_request:4e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`ru`,name:`Russian`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`},{language_id:`hu`,name:`Hungarian`},{language_id:`no`,name:`Norwegian`},{language_id:`vi`,name:`Vietnamese`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_turbo_v2_5`,name:`Eleven Turbo v2.5`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our high quality, low latency model in 32 languages. Best for developer use cases where speed matters and you need non-English languages.`,requires_alpha_access:!1,max_characters_request_free_user:4e4,max_characters_request_subscribed_user:4e4,maximum_text_length_per_request:4e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`ru`,name:`Russian`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`},{language_id:`vi`,name:`Vietnamese`},{language_id:`no`,name:`Norwegian`},{language_id:`hu`,name:`Hungarian`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_turbo_v2`,name:`Eleven Turbo v2`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our English-only, low latency model. Best for developer use cases where speed matters and you only need English. Performance is on par with Turbo v2.5.`,requires_alpha_access:!1,max_characters_request_free_user:3e4,max_characters_request_subscribed_user:3e4,maximum_text_length_per_request:3e4,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_flash_v2`,name:`Eleven Flash v2`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our ultra low latency model in english. Ideal for conversational use cases.`,requires_alpha_access:!1,max_characters_request_free_user:3e4,max_characters_request_subscribed_user:3e4,maximum_text_length_per_request:3e4,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_english_sts_v2`,name:`Eleven English v2`,can_be_finetuned:!1,can_do_text_to_speech:!1,can_do_voice_conversion:!0,can_use_style:!0,can_use_speaker_boost:!0,serves_pro_voices:!1,token_cost_factor:1,description:`Our state-of-the-art speech to speech model suitable for scenarios where you need maximum control over the content and prosody of your generations.`,requires_alpha_access:!1,max_characters_request_free_user:5e3,max_characters_request_subscribed_user:5e3,maximum_text_length_per_request:5e3,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_multilingual_v1`,name:`Eleven Multilingual v1`,can_be_finetuned:!1,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our first Multilingual model, capability of generating speech in 10 languages. Now outclassed by Multilingual v2 (for content creation) and Turbo v2.5 (for low latency use cases).`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`},{language_id:`de`,name:`German`},{language_id:`pl`,name:`Polish`},{language_id:`es`,name:`Spanish`},{language_id:`it`,name:`Italian`},{language_id:`fr`,name:`French`},{language_id:`pt`,name:`Portuguese`},{language_id:`hi`,name:`Hindi`},{language_id:`ar`,name:`Arabic`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_multilingual_sts_v2`,name:`Eleven Multilingual v2`,can_be_finetuned:!0,can_do_text_to_speech:!1,can_do_voice_conversion:!0,can_use_style:!0,can_use_speaker_boost:!0,serves_pro_voices:!1,token_cost_factor:1,description:`Our cutting-edge, multilingual speech-to-speech model is designed for situations that demand unparalleled control over both the content and the prosody of the generated speech across various languages.`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`ru`,name:`Russian`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_monolingual_v1`,name:`Eleven English v1`,can_be_finetuned:!1,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our first ever text to speech model. Now outclassed by Multilingual v2 (for content creation) and Turbo v2.5 (for low latency use cases).`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`}],useProvidersStore=defineStore(`providers`,()=>{let providerCredentials=useLocalStorage(`settings/credentials/providers`,{}),{t}=useI18n();async function fetchOpenRouterModels(config){try{let response=await fetch(`https://openrouter.ai/api/v1/models`,{headers:{Authorization:`Bearer ${config.apiKey.trim()}`,"Content-Type":`application/json`}});if(!response.ok)throw Error(`Failed to fetch OpenRouter models: ${response.statusText}`);let data$10=await response.json();return data$10.data.map(model=>({id:model.id,name:model.name||model.id,provider:`openrouter-ai`,description:model.description||``,contextLength:model.context_length,deprecated:!1}))}catch(error){throw console.error(`Error fetching OpenRouter models:`,error),error}}let providerMetadata={"openrouter-ai":{id:`openrouter-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.openrouter.title`,name:`OpenRouter`,descriptionKey:`settings.pages.providers.provider.openrouter.description`,description:`openrouter.ai`,icon:`i-lobe-icons:openrouter`,defaultOptions:()=>({baseUrl:`https://openrouter.ai/api/v1/`}),createProvider:config=>createOpenRouter(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>fetchOpenRouterModels(config)},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"app-local-audio-speech":{id:`app-local-audio-speech`,category:`speech`,tasks:[`text-to-speech`,`tts`],isAvailableBy:async()=>`window`in globalThis&&globalThis.window!=null&&`__TAURI__`in globalThis.window&&globalThis.window.__TAURI__!=null,nameKey:`settings.pages.providers.provider.app-local-audio-speech.title`,name:`App (Local)`,descriptionKey:`settings.pages.providers.provider.app-local-audio-speech.description`,description:`https://github.com/huggingface/candle`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`app-local-candle`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"app-local-audio-transcription":{id:`app-local-audio-transcription`,category:`transcription`,tasks:[`speech-to-text`,`automatic-speech-recognition`,`asr`,`stt`],isAvailableBy:async()=>`window`in globalThis&&globalThis.window!=null&&`__TAURI__`in globalThis.window&&globalThis.window.__TAURI__!=null,nameKey:`settings.pages.providers.provider.app-local-audio-transcription.title`,name:`App (Local)`,descriptionKey:`settings.pages.providers.provider.app-local-audio-transcription.description`,description:`https://github.com/huggingface/candle`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`app-local-candle`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"browser-local-audio-speech":{id:`browser-local-audio-speech`,category:`speech`,tasks:[`text-to-speech`,`tts`],isAvailableBy:async()=>{let webGPUAvailable=await isWebGPUSupported();if(webGPUAvailable)return!0;if(`navigator`in globalThis&&globalThis.navigator!=null&&`deviceMemory`in globalThis.navigator&&typeof globalThis.navigator.deviceMemory==`number`){let memory=globalThis.navigator.deviceMemory;if(memory>=8)return!0}return!1},nameKey:`settings.pages.providers.provider.browser-local-audio-speech.title`,name:`Browser (Local)`,descriptionKey:`settings.pages.providers.provider.browser-local-audio-speech.description`,description:`https://github.com/moeru-ai/xsai-transformers`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`browser-local-transformers`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"browser-local-audio-transcription":{id:`browser-local-audio-transcription`,category:`transcription`,tasks:[`speech-to-text`,`automatic-speech-recognition`,`asr`,`stt`],isAvailableBy:async()=>{let webGPUAvailable=await isWebGPUSupported();if(webGPUAvailable)return!0;if(`navigator`in globalThis&&globalThis.navigator!=null&&`deviceMemory`in globalThis.navigator&&typeof globalThis.navigator.deviceMemory==`number`){let memory=globalThis.navigator.deviceMemory;if(memory>=8)return!0}return!1},nameKey:`settings.pages.providers.provider.browser-local-audio-transcription.title`,name:`Browser (Local)`,descriptionKey:`settings.pages.providers.provider.browser-local-audio-transcription.description`,description:`https://github.com/moeru-ai/xsai-transformers`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`browser-local-transformers`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},ollama:{id:`ollama`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.ollama.title`,name:`Ollama`,descriptionKey:`settings.pages.providers.provider.ollama.description`,description:`ollama.com`,icon:`i-lobe-icons:ollama`,defaultOptions:()=>({baseUrl:`http://localhost:11434/v1/`}),createProvider:config=>createOllama(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOllama(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`ollama`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"ollama-embedding":{id:`ollama-embedding`,category:`embed`,tasks:[`text-feature-extraction`],nameKey:`settings.pages.providers.provider.ollama.title`,name:`Ollama`,descriptionKey:`settings.pages.providers.provider.ollama.description`,description:`ollama.com`,icon:`i-lobe-icons:ollama`,defaultOptions:()=>({baseUrl:`http://localhost:11434/v1/`}),createProvider:config=>createOllama(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOllama(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`ollama`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.baseUrl}},vllm:{id:`vllm`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.vllm.title`,name:`vLLM`,descriptionKey:`settings.pages.providers.provider.vllm.description`,description:`vllm.ai`,iconColor:`i-lobe-icons:vllm`,createProvider:config=>createOllama(config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`llama-2-7b`,name:`Llama 2 (7B)`,provider:`vllm`,description:`Meta's Llama 2 7B parameter model`,contextLength:4096},{id:`llama-2-13b`,name:`Llama 2 (13B)`,provider:`vllm`,description:`Meta's Llama 2 13B parameter model`,contextLength:4096},{id:`llama-2-70b`,name:`Llama 2 (70B)`,provider:`vllm`,description:`Meta's Llama 2 70B parameter model`,contextLength:4096},{id:`mistral-7b`,name:`Mistral (7B)`,provider:`vllm`,description:`Mistral AI's 7B parameter model`,contextLength:8192},{id:`mixtral-8x7b`,name:`Mixtral (8x7B)`,provider:`vllm`,description:`Mistral AI's Mixtral 8x7B MoE model`,contextLength:32768},{id:`custom`,name:`Custom Model`,provider:`vllm`,description:`Specify a custom model name`,contextLength:0}]},validators:{validateProviderConfig:config=>!!config.baseUrl}},openai:{id:`openai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.openai.title`,name:`OpenAI`,descriptionKey:`settings.pages.providers.provider.openai.description`,description:`openai.com`,icon:`i-lobe-icons:openai`,defaultOptions:()=>({baseUrl:`https://api.openai.com/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`openai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"openai-audio-speech":{id:`openai-audio-speech`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.openai.title`,name:`OpenAI`,descriptionKey:`settings.pages.providers.provider.openai.description`,description:`openai.com`,icon:`i-lobe-icons:openai`,defaultOptions:()=>({baseUrl:`https://api.openai.com/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`openai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"openai-audio-transcription":{id:`openai-audio-transcription`,category:`transcription`,tasks:[`speech-to-text`,`automatic-speech-recognition`,`asr`,`stt`],nameKey:`settings.pages.providers.provider.openai.title`,name:`OpenAI`,descriptionKey:`settings.pages.providers.provider.openai.description`,description:`openai.com`,icon:`i-lobe-icons:openai`,defaultOptions:()=>({baseUrl:`https://api.openai.com/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`openai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},anthropic:{id:`anthropic`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.anthropic.title`,name:`Anthropic`,descriptionKey:`settings.pages.providers.provider.anthropic.description`,description:`anthropic.com`,icon:`i-lobe-icons:anthropic`,defaultOptions:()=>({baseUrl:`https://api.anthropic.com/v1/`}),createProvider:config=>createAnthropic(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`claude-3-7-sonnet-20250219`,name:`Claude 3.7 Sonnet`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-5-sonnet-20241022`,name:`Claude 3.5 Sonnet (New)`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-5-haiku-20241022`,name:`Claude 3.5 Haiku`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-5-sonnet-20240620`,name:`Claude 3.5 Sonnet (Old)`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-haiku-20240307`,name:`Claude 3 Haiku`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-opus-20240229`,name:`Claude 3 Opus`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"google-generative-ai":{id:`google-generative-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.google-generative-ai.title`,name:`Google Gemini`,descriptionKey:`settings.pages.providers.provider.google-generative-ai.description`,description:`ai.google.dev`,icon:`i-lobe-icons:gemini`,defaultOptions:()=>({baseUrl:`https://generativelanguage.googleapis.com/v1beta/openai/`}),createProvider:config=>createGoogleGenerativeAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createGoogleGenerativeAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`google-generative-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},xai:{id:`xai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.xai.title`,name:`xAI`,descriptionKey:`settings.pages.providers.provider.xai.description`,description:`x.ai`,icon:`i-lobe-icons:xai`,createProvider:config=>createXAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createXAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`xai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},deepseek:{id:`deepseek`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.deepseek.title`,name:`DeepSeek`,descriptionKey:`settings.pages.providers.provider.deepseek.description`,description:`deepseek.com`,iconColor:`i-lobe-icons:deepseek`,createProvider:config=>createDeepSeek(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createDeepSeek(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`deepseek`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},elevenlabs:{id:`elevenlabs`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.elevenlabs.title`,name:`ElevenLabs`,descriptionKey:`settings.pages.providers.provider.elevenlabs.description`,description:`elevenlabs.io`,icon:`i-simple-icons:elevenlabs`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`,voiceSettings:{similarityBoost:.75,stability:.5}}),createProvider:config=>createUnElevenLabs(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>models.map(model=>({id:model.model_id,name:model.name,provider:`elevenlabs`,description:model.description,contextLength:0,deprecated:!1})),listVoices:async config=>{let provider=createUnElevenLabs(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice()}),ariaIndex=voices.findIndex(voice=>voice.name.includes(`Aria`)),billIndex=voices.findIndex(voice=>voice.name.includes(`Bill`)),startIndex=ariaIndex===-1?0:ariaIndex,endIndex=billIndex===-1?voices.length-1:billIndex,lowerIndex=Math.min(startIndex,endIndex),higherIndex=Math.max(startIndex,endIndex),rearrangedVoices=[...voices.slice(0,lowerIndex),...voices.slice(higherIndex+1),...voices.slice(lowerIndex,higherIndex+1)];return rearrangedVoices.map(voice=>({id:voice.id,name:voice.name,provider:`elevenlabs`,previewURL:voice.preview_audio_url,languages:voice.languages}))}},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"microsoft-speech":{id:`microsoft-speech`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.microsoft-speech.title`,name:`Microsoft / Azure Speech`,descriptionKey:`settings.pages.providers.provider.microsoft-speech.description`,description:`speech.microsoft.com`,iconColor:`i-lobe-icons:microsoft`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`}),createProvider:config=>createUnMicrosoft(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`v1`,name:`v1`,provider:`microsoft-speech`,description:``,contextLength:0,deprecated:!1}],listVoices:async config=>{let provider=createUnMicrosoft(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice({region:config.region})});return voices.map(voice=>{var _voice$labels4;return{id:voice.id,name:voice.name,provider:`microsoft-speech`,previewURL:voice.preview_audio_url,languages:voice.languages,gender:(_voice$labels4=voice.labels)?.gender}})}},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"alibaba-cloud-model-studio":{id:`alibaba-cloud-model-studio`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.alibaba-cloud-model-studio.title`,name:`Alibaba Cloud Model Studio`,descriptionKey:`settings.pages.providers.provider.alibaba-cloud-model-studio.description`,description:`bailian.console.aliyun.com`,iconColor:`i-lobe-icons:alibabacloud`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`}),createProvider:config=>createUnAlibabaCloud(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listVoices:async config=>{let provider=createUnAlibabaCloud(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice()});return voices.map(voice=>{var _voice$labels5;return{id:voice.id,name:voice.name,provider:`alibaba-cloud-model-studio`,previewURL:voice.preview_audio_url,languages:voice.languages,gender:(_voice$labels5=voice.labels)?.gender}})},listModels:async()=>[{id:`cozyvoice-v1`,name:`CozyVoice`,provider:`alibaba-cloud-model-studio`,description:``,contextLength:0,deprecated:!1},{id:`cozyvoice-v2`,name:`CozyVoice (New)`,provider:`alibaba-cloud-model-studio`,description:``,contextLength:0,deprecated:!1}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},volcengine:{id:`volcengine`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.volcengine.title`,name:`settings.pages.providers.provider.volcengine.title`,descriptionKey:`settings.pages.providers.provider.volcengine.description`,description:`volcengine.com`,iconColor:`i-lobe-icons:volcengine`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`}),createProvider:config=>createUnVolcengine(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listVoices:async config=>{let provider=createUnVolcengine(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice()});return voices.map(voice=>{var _voice$labels6;return{id:voice.id,name:voice.name,provider:`volcano-engine`,previewURL:voice.preview_audio_url,languages:voice.languages,gender:(_voice$labels6=voice.labels)?.gender}})},listModels:async()=>[{id:`v1`,name:`v1`,provider:`volcano-engine`,description:``,contextLength:0,deprecated:!1}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl&&!!config.app&&!!config.app.appId}},"together-ai":{id:`together-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.together.title`,name:`Together.ai`,descriptionKey:`settings.pages.providers.provider.together.description`,description:`together.ai`,iconColor:`i-lobe-icons:together`,createProvider:config=>createTogetherAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createTogetherAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`together-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"novita-ai":{id:`novita-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.novita.title`,name:`Novita`,descriptionKey:`settings.pages.providers.provider.novita.description`,description:`novita.ai`,iconColor:`i-lobe-icons:novita`,createProvider:config=>createNovita(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createNovita(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`novita-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"fireworks-ai":{id:`fireworks-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.fireworks.title`,name:`Fireworks.ai`,descriptionKey:`settings.pages.providers.provider.fireworks.description`,description:`fireworks.ai`,icon:`i-lobe-icons:fireworks`,createProvider:config=>createFireworks(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createFireworks(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`fireworks-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"featherless-ai":{id:`featherless-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.featherless.title`,name:`Featherless.ai`,descriptionKey:`settings.pages.providers.provider.featherless.description`,description:`featherless.ai`,icon:`i-lobe-icons:featherless-ai`,defaultOptions:()=>({baseUrl:`https://api.featherless.ai/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`featherless-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"cloudflare-workers-ai":{id:`cloudflare-workers-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.cloudflare-workers-ai.title`,name:`Cloudflare Workers AI`,descriptionKey:`settings.pages.providers.provider.cloudflare-workers-ai.description`,description:`cloudflare.com`,iconColor:`i-lobe-icons:cloudflare`,createProvider:config=>createWorkersAI(config.apiKey.trim(),config.accountId),capabilities:{listModels:async()=>[]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.accountId}},"perplexity-ai":{id:`perplexity-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.perplexity.title`,name:`Perplexity`,descriptionKey:`settings.pages.providers.provider.perplexity.description`,description:`perplexity.ai`,icon:`i-lobe-icons:perplexity`,defaultOptions:()=>({baseUrl:`https://api.perplexity.ai`}),createProvider:config=>createPerplexity(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`sonar-small-online`,name:`Sonar Small (Online)`,provider:`perplexity-ai`,description:`Efficient model with online search capabilities`,contextLength:12e3},{id:`sonar-medium-online`,name:`Sonar Medium (Online)`,provider:`perplexity-ai`,description:`Balanced model with online search capabilities`,contextLength:12e3},{id:`sonar-large-online`,name:`Sonar Large (Online)`,provider:`perplexity-ai`,description:`Powerful model with online search capabilities`,contextLength:12e3},{id:`codey-small`,name:`Codey Small`,provider:`perplexity-ai`,description:`Specialized for code generation and understanding`,contextLength:12e3},{id:`codey-large`,name:`Codey Large`,provider:`perplexity-ai`,description:`Advanced code generation and understanding`,contextLength:12e3}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"mistral-ai":{id:`mistral-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.mistral.title`,name:`Mistral`,descriptionKey:`settings.pages.providers.provider.mistral.description`,description:`mistral.ai`,iconColor:`i-lobe-icons:mistral`,createProvider:config=>createMistral(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createMistral(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`mistral-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"moonshot-ai":{id:`moonshot-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.moonshot.title`,name:`Moonshot AI`,descriptionKey:`settings.pages.providers.provider.moonshot.description`,description:`moonshot.ai`,icon:`i-lobe-icons:moonshot`,createProvider:config=>createMoonshot(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createMoonshot(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`moonshot-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},player2:{id:`player2`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.player2.title`,name:`Player2`,descriptionKey:`settings.pages.providers.provider.player2.description`,description:`player2.game`,icon:`i-lobe-icons:player2`,defaultOptions:()=>({baseUrl:`http://localhost:4315/v1/`}),createProvider:config=>createPlayer2(config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`player2-model`,name:`Player2 Model`,provider:`player2`}]},validators:{validateProviderConfig:config=>!!config.baseUrl}},"player2-speech":{id:`player2-speech`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.player2.title`,name:`Player2 Speech`,descriptionKey:`settings.pages.providers.provider.player2.description`,description:`player2.game`,icon:`i-lobe-icons:player2`,defaultOptions:()=>({baseUrl:`http://localhost:4315/v1/`}),createProvider:config=>createPlayer2(config.baseUrl.trim(),`airi`),capabilities:{listVoices:async()=>await fetch(`http://localhost:4315/v1/tts/voices`).then(res=>res.json()).then(({voices})=>voices.map(({id,language,name:name$2,gender})=>({id,name:name$2,provider:`player2-speech`,gender,languages:[{american_english:{code:`en`,title:`English`},british_english:{code:`en`,title:`English`},japanese:{code:`ja`,title:`Japanese`},mandarin_chinese:{code:`zh`,title:`Chinese`},spanish:{code:`es`,title:`Spanish`},french:{code:`fr`,title:`French`},hindi:{code:`hi`,title:`Hindi`},italian:{code:`it`,title:`Italian`},brazilian_portuguese:{code:`pt`,title:`Portuguese`}}[language]]})))},validators:{validateProviderConfig:config=>!!config.baseUrl}}};async function validateProvider(providerId){let config=providerCredentials.value[providerId];if(!config)return!1;let metadata=providerMetadata[providerId];return metadata?await metadata.validators.validateProviderConfig(config):!1}let configuredProviders=ref({});function initializeProvider(providerId){if(!providerCredentials.value[providerId]){var _metadata$defaultOpti;let metadata=providerMetadata[providerId],defaultOptions=(_metadata$defaultOpti=metadata.defaultOptions)?.call(metadata)||{};providerCredentials.value[providerId]={baseUrl:defaultOptions.baseUrl||``}}}Object.keys(providerMetadata).forEach(initializeProvider);async function updateConfigurationStatus(){await Promise.all(Object.keys(providerMetadata).map(async providerId=>{configuredProviders.value[providerId]=await validateProvider(providerId)}))}updateConfigurationStatus(),watch(providerCredentials,updateConfigurationStatus,{deep:!0});let availableProviders=computed(()=>Object.keys(providerMetadata).filter(providerId=>configuredProviders.value[providerId])),availableModels=ref({}),isLoadingModels=ref({}),modelLoadError=ref({});async function fetchModelsForProvider(providerId){let config=providerCredentials.value[providerId];if(!config)return[];let metadata=providerMetadata[providerId];if(!metadata)return[];isLoadingModels.value[providerId]=!0,modelLoadError.value[providerId]=null;try{let models$1=metadata.capabilities.listModels?await metadata.capabilities.listModels(config):[];return availableModels.value[providerId]=models$1.map(model=>({id:model.id,name:model.name,description:model.description,contextLength:model.contextLength,deprecated:model.deprecated,provider:providerId})),availableModels.value[providerId]}catch(error){return console.error(`Error fetching models for ${providerId}:`,error),modelLoadError.value[providerId]=error instanceof Error?error.message:`Unknown error`,[]}finally{isLoadingModels.value[providerId]=!1}}function getModelsForProvider(providerId){return availableModels.value[providerId]||[]}let allAvailableModels=computed(()=>{let models$1=[];for(let providerId of availableProviders.value)models$1.push(...availableModels.value[providerId]||[]);return models$1});async function loadModelsForConfiguredProviders(){for(let providerId of availableProviders.value)providerMetadata[providerId].capabilities.listModels&&await fetchModelsForProvider(providerId)}function getProviderMetadata(providerId){let metadata=providerMetadata[providerId];if(!metadata)throw Error(`Provider metadata for ${providerId} not found`);return{...metadata,localizedName:t(metadata.nameKey,metadata.name),localizedDescription:t(metadata.descriptionKey,metadata.description)}}let allProvidersMetadata=computed(()=>Object.values(providerMetadata).map(metadata=>({...metadata,localizedName:t(metadata.nameKey,metadata.name),localizedDescription:t(metadata.descriptionKey,metadata.description),configured:configuredProviders.value[metadata.id]||!1})));function getProviderInstance(providerId){let config=providerCredentials.value[providerId];if(!config)throw Error(`Provider credentials for ${providerId} not found`);let metadata=providerMetadata[providerId];if(!metadata)throw Error(`Provider metadata for ${providerId} not found`);try{return metadata.createProvider(config)}catch(error){throw console.error(`Error creating provider instance for ${providerId}:`,error),error}}let availableProvidersMetadata=computedAsync(async()=>{let providers=[];for(let provider of allProvidersMetadata.value){let p$5=getProviderMetadata(provider.id),isAvailableBy=p$5.isAvailableBy||(()=>!0),isAvailable=await isAvailableBy();isAvailable&&providers.push(provider)}return providers},[]),allChatProvidersMetadata=computed(()=>availableProvidersMetadata.value.filter(metadata=>metadata.category===`chat`)),allAudioSpeechProvidersMetadata=computed(()=>availableProvidersMetadata.value.filter(metadata=>metadata.category===`speech`)),allAudioTranscriptionProvidersMetadata=computed(()=>availableProvidersMetadata.value.filter(metadata=>metadata.category===`transcription`)),configuredChatProvidersMetadata=computed(()=>allChatProvidersMetadata.value.filter(metadata=>configuredProviders.value[metadata.id])),configuredSpeechProvidersMetadata=computed(()=>allAudioSpeechProvidersMetadata.value.filter(metadata=>configuredProviders.value[metadata.id])),configuredTranscriptionProvidersMetadata=computed(()=>allAudioTranscriptionProvidersMetadata.value.filter(metadata=>configuredProviders.value[metadata.id]));function getProviderConfig(providerId){return providerCredentials.value[providerId]}return{providers:providerCredentials,getProviderConfig,availableProviders,configuredProviders,providerMetadata,getProviderMetadata,allProvidersMetadata,initializeProvider,validateProvider,availableModels,isLoadingModels,modelLoadError,fetchModelsForProvider,getModelsForProvider,allAvailableModels,loadModelsForConfiguredProviders,getProviderInstance,availableProvidersMetadata,allChatProvidersMetadata,allAudioSpeechProvidersMetadata,allAudioTranscriptionProvidersMetadata,configuredChatProvidersMetadata,configuredSpeechProvidersMetadata,configuredTranscriptionProvidersMetadata}}),useConsciousnessStore=defineStore(`consciousness`,()=>{let providersStore=useProvidersStore(),activeProvider=useLocalStorage(`settings/consciousness/active-provider`,``),activeModel=useLocalStorage(`settings/consciousness/active-model`,``),activeCustomModelName=useLocalStorage(`settings/consciousness/active-custom-model`,``),expandedDescriptions=ref({}),modelSearchQuery=ref(``),supportsModelListing=computed(()=>{var _providersStore$getPr;return(_providersStore$getPr=providersStore.getProviderMetadata(activeProvider.value))?.capabilities.listModels!==void 0}),providerModels=computed(()=>providersStore.getModelsForProvider(activeProvider.value)),isLoadingActiveProviderModels=computed(()=>providersStore.isLoadingModels[activeProvider.value]||!1),activeProviderModelError=computed(()=>providersStore.modelLoadError[activeProvider.value]||null),filteredModels=computed(()=>{if(!modelSearchQuery.value.trim())return providerModels.value;let query=modelSearchQuery.value.toLowerCase().trim();return providerModels.value.filter(model=>model.name.toLowerCase().includes(query)||model.id.toLowerCase().includes(query)||model.description&&model.description.toLowerCase().includes(query))});function resetModelSelection(){activeModel.value=``,activeCustomModelName.value=``,expandedDescriptions.value={},modelSearchQuery.value=``}async function loadModelsForProvider(provider){var _providersStore$getPr2;provider&&(_providersStore$getPr2=providersStore.getProviderMetadata(activeProvider.value))?.capabilities.listModels!==void 0&&providersStore.getModelsForProvider(provider).length===0&&await providersStore.fetchModelsForProvider(provider)}let player2Interval;return watch(activeProvider,async newProvider=>{await loadModelsForProvider(newProvider),resetModelSelection(),newProvider===`player2`?player2Interval=setInterval(()=>{console.log(`Sending Player2 Health check if it is being used`),fetch(`localhost:4315/v1/health`,{method:`GET`,headers:{"player2-game-key":`airi`}}).catch(()=>{})},6e4):(player2Interval&&clearInterval(player2Interval),player2Interval=void 0)}),{activeProvider,activeModel,customModelName:activeCustomModelName,expandedDescriptions,modelSearchQuery,supportsModelListing,providerModels,isLoadingActiveProviderModels,activeProviderModelError,filteredModels,resetModelSelection,loadModelsForProvider}}),noncharacter=/[\u0000-\u0008\u000B\u000C\u000E-\u001F]/g;function escape(value$1,subset$4,unsafe$2){let result=clean(value$1);return unsafe$2?result.replace(unsafe$2,encode):encode(result);function encode(value$2){return stringifyEntitiesLight(value$2,{subset:subset$4})}}function clean(value$1){return String(value$1||``).replace(noncharacter,``)}const unsafe$1=/]]>/g,subset$3=[`>`];function cdata(node$1){return``}function comment(node$1){return``}const subset$2=[` `,` -`,` `,`"`,`&`,`'`,`/`,`<`,`=`,`>`];function name$1(value$1){return escape(value$1,subset$2)}function value(value$1,state){let result=String(value$1),quote=state.options.quote||`"`;if(state.options.quoteSmart){let other=quote===`"`?`'`:`"`;ccount(result,quote)>ccount(result,other)&&(quote=other)}return quote+escape(result,[`<`,`&`,quote])+quote}function doctype(node$1,state){let nodeName=name$1(node$1.name),pub=node$1.public,sys=node$1.system,result=``}const own$1={}.hasOwnProperty;function element(node$1,state){let nodeName=name$1(node$1.name),content$2=all(node$1,state),attributes=node$1.attributes||{},close=content$2?!1:state.options.closeEmptyElements,attrs=[],key$1;for(key$1 in attributes)if(own$1.call(attributes,key$1)){let result=attributes[key$1];result!=null&&attrs.push(name$1(key$1)+`=`+value(result,state))}return`<`+nodeName+(attrs.length===0?``:` `+attrs.join(` `))+(close?(state.options.tightClose?``:` `)+`/`:``)+`>`+content$2+(close?``:``)}const unsafe=/\?>/g,subset$1=[`>`];function instruction(node$1){let nodeName=name$1(node$1.name)||`x`,result=escape(node$1.value,subset$1,unsafe);return``}const subset=[`&`,`<`];function text(node$1){return escape(node$1.value,subset)}function raw(node$1,state){return state.options.allowDangerousXml?node$1.value:text(node$1)}const own={}.hasOwnProperty,handlers={cdata,comment,doctype,element,instruction,raw,root:all,text};function one(node$1,state){let type=node$1&&node$1.type;if(!type)throw Error("Expected node, not `"+node$1+"`");if(!own.call(handlers,type))throw Error("Cannot compile unknown node `"+type+"`");let handle$1=handlers[type],result=handle$1(node$1,state);return result}function all(parent,state){let children=parent&&parent.children||[],index$1=-1,results=[];for(;++index$1{let providersStore=useProvidersStore(),activeSpeechProvider=useLocalStorage(`settings/speech/active-provider`,``),activeSpeechModel=useLocalStorage(`settings/speech/active-model`,`eleven_multilingual_v2`),activeSpeechVoiceId=useLocalStorage(`settings/speech/voice`,``),activeSpeechVoice=ref(),pitch=useLocalStorage(`settings/speech/pitch`,0),rate=useLocalStorage(`settings/speech/rate`,1),ssmlEnabled=useLocalStorage(`settings/speech/ssml-enabled`,!1),isLoadingSpeechProviderVoices=ref(!1),speechProviderError=ref(null),availableVoices=ref({}),selectedLanguage=useLocalStorage(`settings/speech/language`,`en-US`),modelSearchQuery=ref(``),availableSpeechProvidersMetadata=computed(()=>providersStore.availableProviders.filter(id=>isSpeechProvider(id)).map(id=>providersStore.getProviderMetadata(id))),supportsModelListing=computed(()=>{var _providersStore$getPr3;return(_providersStore$getPr3=providersStore.getProviderMetadata(activeSpeechProvider.value))?.capabilities.listModels!==void 0}),providerModels=computed(()=>providersStore.getModelsForProvider(activeSpeechProvider.value)),isLoadingActiveProviderModels=computed(()=>providersStore.isLoadingModels[activeSpeechProvider.value]||!1),activeProviderModelError=computed(()=>providersStore.modelLoadError[activeSpeechProvider.value]||null),filteredModels=computed(()=>{if(!modelSearchQuery.value.trim())return providerModels.value;let query=modelSearchQuery.value.toLowerCase().trim();return providerModels.value.filter(model=>model.name.toLowerCase().includes(query)||model.id.toLowerCase().includes(query)||model.description&&model.description.toLowerCase().includes(query))}),supportsSSML=computed(()=>[`elevenlabs`,`microsoft-speech`,`azure-speech`,`google`,`alibaba-cloud-model-studio`,`volcengine`].includes(activeSpeechProvider.value));function isSpeechProvider(providerId){return[`elevenlabs`,`microsoft-speech`,`azure-speech`,`google`,`amazon`,`alibaba-cloud-model-studio`,`volcengine`,`player2-speech`].includes(providerId)}async function loadVoicesForProvider(provider){if(!provider||!isSpeechProvider(provider))return[];isLoadingSpeechProviderVoices.value=!0,speechProviderError.value=null;try{var _providersStore$getPr4,_providersStore$getPr5;let voices=await(_providersStore$getPr4=(_providersStore$getPr5=providersStore.getProviderMetadata(provider).capabilities).listVoices)?.call(_providersStore$getPr5,providersStore.getProviderConfig(provider))||[];return availableVoices.value[provider]=voices,voices}catch(error){return console.error(`Error fetching voices for ${provider}:`,error),speechProviderError.value=error instanceof Error?error.message:`Unknown error`,[]}finally{isLoadingSpeechProviderVoices.value=!1}}function getVoicesForProvider(provider){return availableVoices.value[provider]||[]}watch(activeSpeechProvider,async newProvider=>{newProvider&&await loadVoicesForProvider(newProvider)}),onMounted(()=>{loadVoicesForProvider(activeSpeechProvider.value).then(()=>{var _availableVoices$valu;activeSpeechVoiceId.value&&(activeSpeechVoice.value=(_availableVoices$valu=availableVoices.value[activeSpeechProvider.value])?.find(voice=>voice.id===activeSpeechVoiceId.value))})}),watch(activeSpeechVoiceId,voiceId=>{var _availableVoices$valu2;voiceId&&(activeSpeechVoice.value=(_availableVoices$valu2=availableVoices.value[activeSpeechProvider.value])?.find(voice=>voice.id===voiceId))},{immediate:!0}),watch(availableVoices,voices=>{var _voices$activeSpeechP;activeSpeechVoiceId.value&&(activeSpeechVoice.value=(_voices$activeSpeechP=voices[activeSpeechProvider.value])?.find(voice=>voice.id===activeSpeechVoiceId.value))},{immediate:!0});async function speech(provider,model,input,voice,providerConfig={}){let response=await generateSpeech({...provider.speech(model,{...providerConfig}),input,voice});return response}function generateSSML(text$5,voice,providerConfig){var _voice$languages$;let pitch$1=providerConfig?.pitch,speed=providerConfig?.speed,volume=providerConfig?.volume,prosody={pitch:pitch$1==null?void 0:pitch$1>0?`+${pitch$1}%`:`-${pitch$1}%`,rate:speed==null?void 0:speed===1?`1`:`${speed}`,volume:volume==null?void 0:volume>0?`+${volume}%`:`${volume}%`},ssmlXast=x(`speak`,{version:`1.0`,xmlns:`http://www.w3.org/2001/10/synthesis`,"xml:lang":(_voice$languages$=voice.languages[0])?.code||`en-US`},[x(`voice`,{name:voice.id,gender:voice.gender||`neutral`},[Object.entries(prosody).filter(([_$2,value$1])=>value$1!=null).length>0?x(`prosody`,{pitch:pitch$1==null?void 0:pitch$1>0?`+${pitch$1}%`:`-${pitch$1}%`,rate:speed==null?void 0:speed===1?`1`:`${speed}`,volume:volume==null?void 0:volume>0?`+${volume}%`:`${volume}%`},[text$5]):text$5])]);return toXml(ssmlXast)}return{activeSpeechProvider,activeSpeechModel,activeSpeechVoice,activeSpeechVoiceId,pitch,rate,ssmlEnabled,selectedLanguage,isLoadingSpeechProviderVoices,speechProviderError,availableVoices,modelSearchQuery,availableSpeechProvidersMetadata,supportsSSML,supportsModelListing,providerModels,isLoadingActiveProviderModels,activeProviderModelError,filteredModels,speech,loadVoicesForProvider,getVoicesForProvider,generateSSML,isSpeechProvider}}),useAiriCardStore=defineStore(`airi-card`,()=>{let cards=useLocalStorage(`airi-cards`,new Map),activeCardId=useLocalStorage(`airi-card-active-id`,`default`),activeCard=computed(()=>cards.value.get(activeCardId.value)),consciousnessStore=useConsciousnessStore(),speechStore=useSpeechStore(),{activeModel:activeConsciousnessModel}=storeToRefs(consciousnessStore),{activeSpeechVoiceId,activeSpeechModel}=storeToRefs(speechStore),addCard=card=>{let newCardId=crypto.randomUUID();return cards.value.set(newCardId,newAiriCard(card)),newCardId},removeCard=id=>{cards.value.delete(id)},getCard=id=>cards.value.get(id);function resolveAiriExtension(card){var _card$data,_card$extensions,_existingExtension$mo,_existingExtension$mo2,_existingExtension$mo3,_existingExtension$mo4,_existingExtension$mo5,_existingExtension$mo6,_existingExtension$mo7,_existingExtension$mo8,_existingExtension$mo9;let existingExtension=`data`in card?(_card$data=card.data)==null||(_card$data=_card$data.extensions)==null?void 0:_card$data.airi:(_card$extensions=card.extensions)?.airi,defaultModules={consciousness:{model:activeConsciousnessModel.value},speech:{model:activeSpeechModel.value,voice_id:activeSpeechVoiceId.value}};return existingExtension?{modules:{consciousness:{model:((_existingExtension$mo=existingExtension.modules)==null||(_existingExtension$mo=_existingExtension$mo.consciousness)==null?void 0:_existingExtension$mo.model)??defaultModules.consciousness.model},speech:{model:((_existingExtension$mo2=existingExtension.modules)==null||(_existingExtension$mo2=_existingExtension$mo2.speech)==null?void 0:_existingExtension$mo2.model)??defaultModules.speech.model,voice_id:((_existingExtension$mo3=existingExtension.modules)==null||(_existingExtension$mo3=_existingExtension$mo3.speech)==null?void 0:_existingExtension$mo3.voice_id)??defaultModules.speech.voice_id,pitch:(_existingExtension$mo4=existingExtension.modules)==null||(_existingExtension$mo4=_existingExtension$mo4.speech)==null?void 0:_existingExtension$mo4.pitch,rate:(_existingExtension$mo5=existingExtension.modules)==null||(_existingExtension$mo5=_existingExtension$mo5.speech)==null?void 0:_existingExtension$mo5.rate,ssml:(_existingExtension$mo6=existingExtension.modules)==null||(_existingExtension$mo6=_existingExtension$mo6.speech)==null?void 0:_existingExtension$mo6.ssml,language:(_existingExtension$mo7=existingExtension.modules)==null||(_existingExtension$mo7=_existingExtension$mo7.speech)==null?void 0:_existingExtension$mo7.language},vrm:(_existingExtension$mo8=existingExtension.modules)?.vrm,live2d:(_existingExtension$mo9=existingExtension.modules)?.live2d},agents:existingExtension.agents??{}}:{modules:defaultModules,agents:{}}}function newAiriCard(card){if(`data`in card){let ccv3Card=card;return{name:ccv3Card.data.name,version:ccv3Card.data.character_version??`1.0.0`,description:ccv3Card.data.description??``,creator:ccv3Card.data.creator??``,notes:ccv3Card.data.creator_notes??``,notesMultilingual:ccv3Card.data.creator_notes_multilingual,personality:ccv3Card.data.personality??``,scenario:ccv3Card.data.scenario??``,greetings:[ccv3Card.data.first_mes,...ccv3Card.data.alternate_greetings??[]],greetingsGroupOnly:ccv3Card.data.group_only_greetings??[],systemPrompt:ccv3Card.data.system_prompt??``,postHistoryInstructions:ccv3Card.data.post_history_instructions??``,messageExample:ccv3Card.data.mes_example?ccv3Card.data.mes_example.split(` +function toTrianglesDrawMode(geometry,drawMode){if(drawMode===TrianglesDrawMode)return console.warn(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.`),geometry;if(drawMode===TriangleFanDrawMode||drawMode===TriangleStripDrawMode){let index$1=geometry.getIndex();if(index$1===null){let indices=[],position$2=geometry.getAttribute(`position`);if(position$2!==void 0){for(let i$1=0;i$1=2.0 are supported.`));return}let parser=new GLTFParser(json,{path:path||this.resourcePath||``,crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});parser.fileLoader.setRequestHeader(this.requestHeader);for(let i$1=0;i$1=0&&plugins[extensionName]===void 0&&console.warn(`THREE.GLTFLoader: Unknown extension "`+extensionName+`".`)}}parser.setExtensions(extensions),parser.setPlugins(plugins),parser.parse(onLoad,onError)}parseAsync(data$10,path){let scope=this;return new Promise(function(resolve$1,reject){scope.parse(data$10,path,resolve$1,reject)})}};function GLTFRegistry(){let objects={};return{get:function(key$1){return objects[key$1]},add:function(key$1,object){objects[key$1]=object},remove:function(key$1){delete objects[key$1]},removeAll:function(){objects={}}}}const EXTENSIONS={KHR_BINARY_GLTF:`KHR_binary_glTF`,KHR_DRACO_MESH_COMPRESSION:`KHR_draco_mesh_compression`,KHR_LIGHTS_PUNCTUAL:`KHR_lights_punctual`,KHR_MATERIALS_CLEARCOAT:`KHR_materials_clearcoat`,KHR_MATERIALS_DISPERSION:`KHR_materials_dispersion`,KHR_MATERIALS_IOR:`KHR_materials_ior`,KHR_MATERIALS_SHEEN:`KHR_materials_sheen`,KHR_MATERIALS_SPECULAR:`KHR_materials_specular`,KHR_MATERIALS_TRANSMISSION:`KHR_materials_transmission`,KHR_MATERIALS_IRIDESCENCE:`KHR_materials_iridescence`,KHR_MATERIALS_ANISOTROPY:`KHR_materials_anisotropy`,KHR_MATERIALS_UNLIT:`KHR_materials_unlit`,KHR_MATERIALS_VOLUME:`KHR_materials_volume`,KHR_TEXTURE_BASISU:`KHR_texture_basisu`,KHR_TEXTURE_TRANSFORM:`KHR_texture_transform`,KHR_MESH_QUANTIZATION:`KHR_mesh_quantization`,KHR_MATERIALS_EMISSIVE_STRENGTH:`KHR_materials_emissive_strength`,EXT_MATERIALS_BUMP:`EXT_materials_bump`,EXT_TEXTURE_WEBP:`EXT_texture_webp`,EXT_TEXTURE_AVIF:`EXT_texture_avif`,EXT_MESHOPT_COMPRESSION:`EXT_meshopt_compression`,EXT_MESH_GPU_INSTANCING:`EXT_mesh_gpu_instancing`};var GLTFLightsExtension=class{constructor(parser){this.parser=parser,this.name=EXTENSIONS.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let parser=this.parser,nodeDefs=this.parser.json.nodes||[];for(let nodeIndex=0,nodeLength=nodeDefs.length;nodeIndex=0)throw Error(`THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures`);return null}return parser.loadTextureImage(textureIndex,extension$1.source,loader$1)}},GLTFTextureWebPExtension=class{constructor(parser){this.parser=parser,this.name=EXTENSIONS.EXT_TEXTURE_WEBP}loadTexture(textureIndex){let name$2=this.name,parser=this.parser,json=parser.json,textureDef=json.textures[textureIndex];if(!textureDef.extensions||!textureDef.extensions[name$2])return null;let extension$1=textureDef.extensions[name$2],source=json.images[extension$1.source],loader$1=parser.textureLoader;if(source.uri){let handler=parser.options.manager.getHandler(source.uri);handler!==null&&(loader$1=handler)}return parser.loadTextureImage(textureIndex,extension$1.source,loader$1)}},GLTFTextureAVIFExtension=class{constructor(parser){this.parser=parser,this.name=EXTENSIONS.EXT_TEXTURE_AVIF}loadTexture(textureIndex){let name$2=this.name,parser=this.parser,json=parser.json,textureDef=json.textures[textureIndex];if(!textureDef.extensions||!textureDef.extensions[name$2])return null;let extension$1=textureDef.extensions[name$2],source=json.images[extension$1.source],loader$1=parser.textureLoader;if(source.uri){let handler=parser.options.manager.getHandler(source.uri);handler!==null&&(loader$1=handler)}return parser.loadTextureImage(textureIndex,extension$1.source,loader$1)}},GLTFMeshoptCompression=class{constructor(parser){this.name=EXTENSIONS.EXT_MESHOPT_COMPRESSION,this.parser=parser}loadBufferView(index$1){let json=this.parser.json,bufferView=json.bufferViews[index$1];if(bufferView.extensions&&bufferView.extensions[this.name]){let extensionDef=bufferView.extensions[this.name],buffer$1=this.parser.getDependency(`buffer`,extensionDef.buffer),decoder=this.parser.options.meshoptDecoder;if(!decoder||!decoder.supported){if(json.extensionsRequired&&json.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files`);return null}return buffer$1.then(function(res){let byteOffset=extensionDef.byteOffset||0,byteLength=extensionDef.byteLength||0,count$1=extensionDef.count,stride=extensionDef.byteStride,source=new Uint8Array(res,byteOffset,byteLength);return decoder.decodeGltfBufferAsync?decoder.decodeGltfBufferAsync(count$1,stride,source,extensionDef.mode,extensionDef.filter).then(function(res$1){return res$1.buffer}):decoder.ready.then(function(){let result=new ArrayBuffer(count$1*stride);return decoder.decodeGltfBuffer(new Uint8Array(result),count$1,stride,source,extensionDef.mode,extensionDef.filter),result})})}else return null}},GLTFMeshGpuInstancing=class{constructor(parser){this.name=EXTENSIONS.EXT_MESH_GPU_INSTANCING,this.parser=parser}createNodeMesh(nodeIndex){let json=this.parser.json,nodeDef=json.nodes[nodeIndex];if(!nodeDef.extensions||!nodeDef.extensions[this.name]||nodeDef.mesh===void 0)return null;let meshDef=json.meshes[nodeDef.mesh];for(let primitive of meshDef.primitives)if(primitive.mode!==WEBGL_CONSTANTS.TRIANGLES&&primitive.mode!==WEBGL_CONSTANTS.TRIANGLE_STRIP&&primitive.mode!==WEBGL_CONSTANTS.TRIANGLE_FAN&&primitive.mode!==void 0)return null;let extensionDef=nodeDef.extensions[this.name],attributesDef=extensionDef.attributes,pending=[],attributes={};for(let key$1 in attributesDef)pending.push(this.parser.getDependency(`accessor`,attributesDef[key$1]).then(accessor=>(attributes[key$1]=accessor,attributes[key$1])));return pending.length<1?null:(pending.push(this.parser.createNodeMesh(nodeIndex)),Promise.all(pending).then(results=>{let nodeObject=results.pop(),meshes=nodeObject.isGroup?nodeObject.children:[nodeObject],count$1=results[0].count,instancedMeshes=[];for(let mesh of meshes){let m$2=new Matrix4,p$5=new Vector3,q$1=new Quaternion,s$1=new Vector3(1,1,1),instancedMesh=new InstancedMesh(mesh.geometry,mesh.material,count$1);for(let i$1=0;i$10||uri.search(/^data\:image\/jpeg/)===0?`image/jpeg`:uri.search(/\.webp($|\?)/i)>0||uri.search(/^data\:image\/webp/)===0?`image/webp`:uri.search(/\.ktx2($|\?)/i)>0||uri.search(/^data\:image\/ktx2/)===0?`image/ktx2`:`image/png`}const _identityMatrix=new Matrix4;var GLTFParser=class{constructor(json={},options$1={}){this.json=json,this.extensions={},this.plugins={},this.options=options$1,this.cache=new GLTFRegistry,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let isSafari=!1,safariVersion=-1,isFirefox=!1,firefoxVersion=-1;if(typeof navigator<`u`){let userAgent=navigator.userAgent;isSafari=/^((?!chrome|android).)*safari/i.test(userAgent)===!0;let safariMatch=userAgent.match(/Version\/(\d+)/);safariVersion=isSafari&&safariMatch?parseInt(safariMatch[1],10):-1,isFirefox=userAgent.indexOf(`Firefox`)>-1,firefoxVersion=isFirefox?userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1}typeof createImageBitmap>`u`||isSafari&&safariVersion<17||isFirefox&&firefoxVersion<98?this.textureLoader=new TextureLoader(this.options.manager):this.textureLoader=new ImageBitmapLoader(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new FileLoader(this.options.manager),this.fileLoader.setResponseType(`arraybuffer`),this.options.crossOrigin===`use-credentials`&&this.fileLoader.setWithCredentials(!0)}setExtensions(extensions){this.extensions=extensions}setPlugins(plugins){this.plugins=plugins}parse(onLoad,onError){let parser=this,json=this.json,extensions=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(ext){return ext._markDefs&&ext._markDefs()}),Promise.all(this._invokeAll(function(ext){return ext.beforeRoot&&ext.beforeRoot()})).then(function(){return Promise.all([parser.getDependencies(`scene`),parser.getDependencies(`animation`),parser.getDependencies(`camera`)])}).then(function(dependencies){let result={scene:dependencies[0][json.scene||0],scenes:dependencies[0],animations:dependencies[1],cameras:dependencies[2],asset:json.asset,parser,userData:{}};return addUnknownExtensionsToUserData(extensions,result,json),assignExtrasToUserData(result,json),Promise.all(parser._invokeAll(function(ext){return ext.afterRoot&&ext.afterRoot(result)})).then(function(){for(let scene of result.scenes)scene.updateMatrixWorld();onLoad(result)})}).catch(onError)}_markDefs(){let nodeDefs=this.json.nodes||[],skinDefs=this.json.skins||[],meshDefs=this.json.meshes||[];for(let skinIndex=0,skinLength=skinDefs.length;skinIndex{let mappings=this.associations.get(original);mappings!=null&&this.associations.set(clone$2,mappings);for(let[i$1,child]of original.children.entries())updateMappings(child,clone$2.children[i$1])};return updateMappings(object,ref$1),ref$1.name+=`_instance_`+ cache$1.uses[index$1]++,ref$1}_invokeOne(func){let extensions=Object.values(this.plugins);extensions.push(this);for(let i$1=0;i$1=2&&bufferAttribute.setY(index$1,sparseValues[i$1*itemSize+1]),itemSize>=3&&bufferAttribute.setZ(index$1,sparseValues[i$1*itemSize+2]),itemSize>=4&&bufferAttribute.setW(index$1,sparseValues[i$1*itemSize+3]),itemSize>=5)throw Error(`THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.`)}bufferAttribute.normalized=normalized}return bufferAttribute})}loadTexture(textureIndex){let json=this.json,options$1=this.options,textureDef=json.textures[textureIndex],sourceIndex=textureDef.source,sourceDef=json.images[sourceIndex],loader$1=this.textureLoader;if(sourceDef.uri){let handler=options$1.manager.getHandler(sourceDef.uri);handler!==null&&(loader$1=handler)}return this.loadTextureImage(textureIndex,sourceIndex,loader$1)}loadTextureImage(textureIndex,sourceIndex,loader$1){let parser=this,json=this.json,textureDef=json.textures[textureIndex],sourceDef=json.images[sourceIndex],cacheKey=(sourceDef.uri||sourceDef.bufferView)+`:`+textureDef.sampler;if(this.textureCache[cacheKey])return this.textureCache[cacheKey];let promise=this.loadImageSource(sourceIndex,loader$1).then(function(texture){texture.flipY=!1,texture.name=textureDef.name||sourceDef.name||``,texture.name===``&&typeof sourceDef.uri==`string`&&sourceDef.uri.startsWith(`data:image/`)===!1&&(texture.name=sourceDef.uri);let samplers=json.samplers||{},sampler=samplers[textureDef.sampler]||{};return texture.magFilter=WEBGL_FILTERS[sampler.magFilter]||LinearFilter,texture.minFilter=WEBGL_FILTERS[sampler.minFilter]||LinearMipmapLinearFilter,texture.wrapS=WEBGL_WRAPPINGS[sampler.wrapS]||RepeatWrapping,texture.wrapT=WEBGL_WRAPPINGS[sampler.wrapT]||RepeatWrapping,texture.generateMipmaps=!texture.isCompressedTexture&&texture.minFilter!==NearestFilter&&texture.minFilter!==LinearFilter,parser.associations.set(texture,{textures:textureIndex}),texture}).catch(function(){return null});return this.textureCache[cacheKey]=promise,promise}loadImageSource(sourceIndex,loader$1){let parser=this,json=this.json,options$1=this.options;if(this.sourceCache[sourceIndex]!==void 0)return this.sourceCache[sourceIndex].then(texture=>texture.clone());let sourceDef=json.images[sourceIndex],URL$1=self.URL||self.webkitURL,sourceURI=sourceDef.uri||``,isObjectURL=!1;if(sourceDef.bufferView!==void 0)sourceURI=parser.getDependency(`bufferView`,sourceDef.bufferView).then(function(bufferView){isObjectURL=!0;let blob=new Blob([bufferView],{type:sourceDef.mimeType});return sourceURI=URL$1.createObjectURL(blob),sourceURI});else if(sourceDef.uri===void 0)throw Error(`THREE.GLTFLoader: Image `+sourceIndex+` is missing URI and bufferView`);let promise=Promise.resolve(sourceURI).then(function(sourceURI$1){return new Promise(function(resolve$1,reject){let onLoad=resolve$1;loader$1.isImageBitmapLoader===!0&&(onLoad=function(imageBitmap){let texture=new Texture(imageBitmap);texture.needsUpdate=!0,resolve$1(texture)}),loader$1.load(LoaderUtils.resolveURL(sourceURI$1,options$1.path),onLoad,void 0,reject)})}).then(function(texture){return isObjectURL===!0&&URL$1.revokeObjectURL(sourceURI),assignExtrasToUserData(texture,sourceDef),texture.userData.mimeType=sourceDef.mimeType||getImageURIMimeType(sourceDef.uri),texture}).catch(function(error){throw console.error(`THREE.GLTFLoader: Couldn't load texture`,sourceURI),error});return this.sourceCache[sourceIndex]=promise,promise}assignTexture(materialParams,mapName,mapDef,colorSpace){let parser=this;return this.getDependency(`texture`,mapDef.index).then(function(texture){if(!texture)return null;if(mapDef.texCoord!==void 0&&mapDef.texCoord>0&&(texture=texture.clone(),texture.channel=mapDef.texCoord),parser.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM]){let transform$1=mapDef.extensions===void 0?void 0:mapDef.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM];if(transform$1){let gltfReference=parser.associations.get(texture);texture=parser.extensions[EXTENSIONS.KHR_TEXTURE_TRANSFORM].extendTexture(texture,transform$1),parser.associations.set(texture,gltfReference)}}return colorSpace!==void 0&&(texture.colorSpace=colorSpace),materialParams[mapName]=texture,texture})}assignFinalMaterial(mesh){let geometry=mesh.geometry,material=mesh.material,useDerivativeTangents=geometry.attributes.tangent===void 0,useVertexColors=geometry.attributes.color!==void 0,useFlatShading=geometry.attributes.normal===void 0;if(mesh.isPoints){let cacheKey=`PointsMaterial:`+material.uuid,pointsMaterial=this.cache.get(cacheKey);pointsMaterial||(pointsMaterial=new PointsMaterial,Material.prototype.copy.call(pointsMaterial,material),pointsMaterial.color.copy(material.color),pointsMaterial.map=material.map,pointsMaterial.sizeAttenuation=!1,this.cache.add(cacheKey,pointsMaterial)),material=pointsMaterial}else if(mesh.isLine){let cacheKey=`LineBasicMaterial:`+material.uuid,lineMaterial=this.cache.get(cacheKey);lineMaterial||(lineMaterial=new LineBasicMaterial,Material.prototype.copy.call(lineMaterial,material),lineMaterial.color.copy(material.color),lineMaterial.map=material.map,this.cache.add(cacheKey,lineMaterial)),material=lineMaterial}if(useDerivativeTangents||useVertexColors||useFlatShading){let cacheKey=`ClonedMaterial:`+material.uuid+`:`;useDerivativeTangents&&(cacheKey+=`derivative-tangents:`),useVertexColors&&(cacheKey+=`vertex-colors:`),useFlatShading&&(cacheKey+=`flat-shading:`);let cachedMaterial=this.cache.get(cacheKey);cachedMaterial||(cachedMaterial=material.clone(),useVertexColors&&(cachedMaterial.vertexColors=!0),useFlatShading&&(cachedMaterial.flatShading=!0),useDerivativeTangents&&(cachedMaterial.normalScale&&(cachedMaterial.normalScale.y*=-1),cachedMaterial.clearcoatNormalScale&&(cachedMaterial.clearcoatNormalScale.y*=-1)),this.cache.add(cacheKey,cachedMaterial),this.associations.set(cachedMaterial,this.associations.get(material))),material=cachedMaterial}mesh.material=material}getMaterialType(){return MeshStandardMaterial}loadMaterial(materialIndex){let parser=this,json=this.json,extensions=this.extensions,materialDef=json.materials[materialIndex],materialType,materialParams={},materialExtensions=materialDef.extensions||{},pending=[];if(materialExtensions[EXTENSIONS.KHR_MATERIALS_UNLIT]){let kmuExtension=extensions[EXTENSIONS.KHR_MATERIALS_UNLIT];materialType=kmuExtension.getMaterialType(),pending.push(kmuExtension.extendParams(materialParams,materialDef,parser))}else{let metallicRoughness=materialDef.pbrMetallicRoughness||{};if(materialParams.color=new Color(1,1,1),materialParams.opacity=1,Array.isArray(metallicRoughness.baseColorFactor)){let array=metallicRoughness.baseColorFactor;materialParams.color.setRGB(array[0],array[1],array[2],LinearSRGBColorSpace),materialParams.opacity=array[3]}metallicRoughness.baseColorTexture!==void 0&&pending.push(parser.assignTexture(materialParams,`map`,metallicRoughness.baseColorTexture,SRGBColorSpace)),materialParams.metalness=metallicRoughness.metallicFactor===void 0?1:metallicRoughness.metallicFactor,materialParams.roughness=metallicRoughness.roughnessFactor===void 0?1:metallicRoughness.roughnessFactor,metallicRoughness.metallicRoughnessTexture!==void 0&&(pending.push(parser.assignTexture(materialParams,`metalnessMap`,metallicRoughness.metallicRoughnessTexture)),pending.push(parser.assignTexture(materialParams,`roughnessMap`,metallicRoughness.metallicRoughnessTexture))),materialType=this._invokeOne(function(ext){return ext.getMaterialType&&ext.getMaterialType(materialIndex)}),pending.push(Promise.all(this._invokeAll(function(ext){return ext.extendMaterialParams&&ext.extendMaterialParams(materialIndex,materialParams)})))}materialDef.doubleSided===!0&&(materialParams.side=DoubleSide);let alphaMode=materialDef.alphaMode||ALPHA_MODES.OPAQUE;if(alphaMode===ALPHA_MODES.BLEND?(materialParams.transparent=!0,materialParams.depthWrite=!1):(materialParams.transparent=!1,alphaMode===ALPHA_MODES.MASK&&(materialParams.alphaTest=materialDef.alphaCutoff===void 0?.5:materialDef.alphaCutoff)),materialDef.normalTexture!==void 0&&materialType!==MeshBasicMaterial&&(pending.push(parser.assignTexture(materialParams,`normalMap`,materialDef.normalTexture)),materialParams.normalScale=new Vector2(1,1),materialDef.normalTexture.scale!==void 0)){let scale$1=materialDef.normalTexture.scale;materialParams.normalScale.set(scale$1,scale$1)}if(materialDef.occlusionTexture!==void 0&&materialType!==MeshBasicMaterial&&(pending.push(parser.assignTexture(materialParams,`aoMap`,materialDef.occlusionTexture)),materialDef.occlusionTexture.strength!==void 0&&(materialParams.aoMapIntensity=materialDef.occlusionTexture.strength)),materialDef.emissiveFactor!==void 0&&materialType!==MeshBasicMaterial){let emissiveFactor=materialDef.emissiveFactor;materialParams.emissive=new Color().setRGB(emissiveFactor[0],emissiveFactor[1],emissiveFactor[2],LinearSRGBColorSpace)}return materialDef.emissiveTexture!==void 0&&materialType!==MeshBasicMaterial&&pending.push(parser.assignTexture(materialParams,`emissiveMap`,materialDef.emissiveTexture,SRGBColorSpace)),Promise.all(pending).then(function(){let material=new materialType(materialParams);return materialDef.name&&(material.name=materialDef.name),assignExtrasToUserData(material,materialDef),parser.associations.set(material,{materials:materialIndex}),materialDef.extensions&&addUnknownExtensionsToUserData(extensions,material,materialDef),material})}createUniqueName(originalName){let sanitizedName=PropertyBinding.sanitizeNodeName(originalName||``);return sanitizedName in this.nodeNamesUsed?sanitizedName+`_`+ ++this.nodeNamesUsed[sanitizedName]:(this.nodeNamesUsed[sanitizedName]=0,sanitizedName)}loadGeometries(primitives){let parser=this,extensions=this.extensions,cache$1=this.primitiveCache;function createDracoPrimitive(primitive){return extensions[EXTENSIONS.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(primitive,parser).then(function(geometry){return addPrimitiveAttributes(geometry,primitive,parser)})}let pending=[];for(let i$1=0,il=primitives.length;i$10&&updateMorphTargets(mesh,meshDef),mesh.name=parser.createUniqueName(meshDef.name||`mesh_`+meshIndex),assignExtrasToUserData(mesh,meshDef),primitive.extensions&&addUnknownExtensionsToUserData(extensions,mesh,primitive),parser.assignFinalMaterial(mesh),meshes.push(mesh)}for(let i$1=0,il=meshes.length;i$11?new Group:objects.length===1?objects[0]:new Object3D,node$1!==objects[0])for(let i$1=0,il=objects.length;i$11){let mapping=parser.associations.get(node$1);parser.associations.set(node$1,{...mapping})}return parser.associations.get(node$1).nodes=nodeIndex,node$1}),this.nodeCache[nodeIndex]}loadScene(sceneIndex){let extensions=this.extensions,sceneDef=this.json.scenes[sceneIndex],parser=this,scene=new Group;sceneDef.name&&(scene.name=parser.createUniqueName(sceneDef.name)),assignExtrasToUserData(scene,sceneDef),sceneDef.extensions&&addUnknownExtensionsToUserData(extensions,scene,sceneDef);let nodeIds=sceneDef.nodes||[],pending=[];for(let i$1=0,il=nodeIds.length;i$1{let reducedAssociations=new Map;for(let[key$1,value$1]of parser.associations)(key$1 instanceof Material||key$1 instanceof Texture)&&reducedAssociations.set(key$1,value$1);return node$1.traverse(node$2=>{let mappings=parser.associations.get(node$2);mappings!=null&&reducedAssociations.set(node$2,mappings)}),reducedAssociations};return parser.associations=reduceAssociations(scene),scene})}_createAnimationTracks(node$1,inputAccessor,outputAccessor,sampler,target$1){let tracks=[],targetName=node$1.name?node$1.name:node$1.uuid,targetNames=[];PATH_PROPERTIES[target$1.path]===PATH_PROPERTIES.weights?node$1.traverse(function(object){object.morphTargetInfluences&&targetNames.push(object.name?object.name:object.uuid)}):targetNames.push(targetName);let TypedKeyframeTrack;switch(PATH_PROPERTIES[target$1.path]){case PATH_PROPERTIES.weights:TypedKeyframeTrack=NumberKeyframeTrack;break;case PATH_PROPERTIES.rotation:TypedKeyframeTrack=QuaternionKeyframeTrack;break;case PATH_PROPERTIES.translation:case PATH_PROPERTIES.scale:TypedKeyframeTrack=VectorKeyframeTrack;break;default:switch(outputAccessor.itemSize){case 1:TypedKeyframeTrack=NumberKeyframeTrack;break;case 2:case 3:default:TypedKeyframeTrack=VectorKeyframeTrack;break}break}let interpolation=sampler.interpolation===void 0?InterpolateLinear:INTERPOLATION[sampler.interpolation],outputArray=this._getArrayFromAccessor(outputAccessor);for(let j$1=0,jl=targetNames.length;j$1new VRMLoaderPlugin(parser)),loader.register(parser=>new VRMAnimationLoaderPlugin(parser)),loader)}async function loadVRMAnimation(url){let loader$1=useVRMLoader(),gltf=await loader$1.loadAsync(url),userData=gltf.userData;if(!userData.vrmAnimations){console.warn(`No VRM animations found in the .vrma file`);return}if(userData.vrmAnimations.length===0){console.warn(`No VRM animations found in the .vrma file`);return}return userData.vrmAnimations[0]}async function clipFromVRMAnimation(vrm,animation){if(!vrm){console.warn(`No VRM found`);return}if(animation)return createVRMAnimationClip(animation,vrm)}function useBlink(){let isBlinking=ref(!1),blinkProgress=ref(0),timeSinceLastBlink=ref(0),BLINK_DURATION=.2,MIN_BLINK_INTERVAL=1,MAX_BLINK_INTERVAL=6,nextBlinkTime=ref(Math.random()*(MAX_BLINK_INTERVAL-MIN_BLINK_INTERVAL)+MIN_BLINK_INTERVAL);function update(vrm,delta){if(vrm?.expressionManager&&(timeSinceLastBlink.value+=delta,!isBlinking.value&&timeSinceLastBlink.value>=nextBlinkTime.value&&(isBlinking.value=!0,blinkProgress.value=0),isBlinking.value)){blinkProgress.value+=delta/BLINK_DURATION;let blinkValue=Math.sin(Math.PI*blinkProgress.value);vrm.expressionManager.setValue(`blink`,blinkValue),blinkProgress.value>=1&&(isBlinking.value=!1,timeSinceLastBlink.value=0,vrm.expressionManager.setValue(`blink`,0),nextBlinkTime.value=Math.random()*(MAX_BLINK_INTERVAL-MIN_BLINK_INTERVAL)+MIN_BLINK_INTERVAL)}}return{update}}function useIdleEyeSaccades(){let nextSaccadeAfter=-1,fixationTarget,timeSinceLastSaccade=0;function updateFixationTarget(){fixationTarget?fixationTarget.set(randFloat(-.25,.25),randFloat(-.2,.15),-.65):fixationTarget=new Vector3(randFloat(-.25,.25),randFloat(-.2,.15),-.65)}function update(vrm,delta){!vrm?.expressionManager||!vrm.lookAt||(timeSinceLastSaccade>=nextSaccadeAfter?(updateFixationTarget(),timeSinceLastSaccade=0,nextSaccadeAfter=randomSaccadeInterval()/1e3):fixationTarget||updateFixationTarget(),vrm.lookAt.target||(vrm.lookAt.target=new Object3D),vrm.lookAt.target.position.lerp(fixationTarget,randFloat(.2,.5)),vrm.lookAt?.update(delta),timeSinceLastSaccade+=delta)}return{update}}async function loadVrm(model,options$1){let loader$1=useVRMLoader(),gltf=await loader$1.loadAsync(model,progress$1=>options$1?.onProgress?.(progress$1)),userData=gltf.userData;if(!userData.vrm)return;let _vrm=userData.vrm;if(VRMUtils.removeUnnecessaryVertices(_vrm.scene),VRMUtils.combineSkeletons(_vrm.scene),_vrm.scene.traverse(object=>{object.frustumCulled=!1}),options$1?.lookAt&&_vrm.lookAt){let lookAtQuatProxy=new VRMLookAtQuaternionProxy(_vrm.lookAt);lookAtQuatProxy.name=`lookAtQuaternionProxy`,_vrm.scene.add(lookAtQuatProxy)}return options$1?.scene&&options$1.scene.add(_vrm.scene),options$1?.position&&_vrm.scene.position.set(...options$1.position),_vrm}function useVRMEmote(vrm){let currentEmotion=ref(null),isTransitioning=ref(!1),transitionProgress=ref(0),currentExpressionValues=ref(new Map),targetExpressionValues=ref(new Map),resetTimeout=ref(),lerp$3=(start,end,t)=>start+(end-start)*t,easeInOutCubic=t=>t<.5?4*t*t*t:1-(-2*t+2)**3/2,emotionStates=new Map([[`happy`,{expression:[{name:`happy`,value:1,duration:.3},{name:`aa`,value:.3}],blendDuration:.3}],[`sad`,{expression:[{name:`sad`,value:1},{name:`oh`,value:.2}],blendDuration:.3}],[`angry`,{expression:[{name:`angry`,value:1},{name:`ee`,value:.4}],blendDuration:.2}],[`surprised`,{expression:[{name:`Surprised`,value:1},{name:`oh`,value:.6}],blendDuration:.1}],[`neutral`,{expression:[{name:`neutral`,value:1}],blendDuration:.5}]]),clearResetTimeout=()=>{resetTimeout.value&&(clearTimeout(resetTimeout.value),resetTimeout.value=void 0)},setEmotion=emotionName=>{if(clearResetTimeout(),!emotionStates.has(emotionName)){console.warn(`Emotion ${emotionName} not found`);return}let emotionState=emotionStates.get(emotionName);if(currentEmotion.value=emotionName,isTransitioning.value=!0,transitionProgress.value=0,vrm.expressionManager){let expressionNames=Object.keys(vrm.expressionManager.expressionMap);for(let name$2 of expressionNames)vrm.expressionManager.setValue(name$2,0)}currentExpressionValues.value.clear(),targetExpressionValues.value.clear();for(let expr of emotionState.expression||[]){let currentValue=vrm.expressionManager?.getValue(expr.name)||0;currentExpressionValues.value.set(expr.name,currentValue),targetExpressionValues.value.set(expr.name,expr.value)}},setEmotionWithResetAfter=(emotionName,ms)=>{clearResetTimeout(),setEmotion(emotionName),resetTimeout.value=setTimeout(()=>{setEmotion(`neutral`),resetTimeout.value=void 0},ms)},update=deltaTime=>{if(!isTransitioning.value||!currentEmotion.value)return;let emotionState=emotionStates.get(currentEmotion.value),blendDuration=emotionState.blendDuration||.3;transitionProgress.value+=deltaTime/blendDuration,transitionProgress.value>=1&&(transitionProgress.value=1,isTransitioning.value=!1);for(let[exprName,targetValue]of targetExpressionValues.value){let startValue=currentExpressionValues.value.get(exprName)||0,currentValue=lerp$3(startValue,targetValue,easeInOutCubic(transitionProgress.value));vrm.expressionManager?.setValue(exprName,currentValue)}},addEmotionState=(emotionName,state)=>{emotionStates.set(emotionName,state)},removeEmotionState=emotionName=>{emotionStates.delete(emotionName)},dispose$1=()=>{clearResetTimeout()};return{currentEmotion,isTransitioning,setEmotion,setEmotionWithResetAfter,update,addEmotionState,removeEmotionState,dispose:dispose$1}}function useWhisper(url,options$1){let opts=merge$2({onLoading:()=>{},onInitiate:()=>{},onProgress:()=>{},onDone:()=>{},onReady:()=>{},onStart:()=>{},onUpdate:()=>{},onComplete:()=>{}},options$1),{post:whisperPost,data:whisperData,terminate}=useWebWorker(url,{type:`module`}),status=ref(null),loadingMessage=ref(``),loadingProgress=ref([]),transcribing=ref(!1),tps=ref(0),result=ref(``);return watch(whisperData,e$3=>{switch(e$3.status){case`loading`:status.value=`loading`,loadingMessage.value=e$3.data,opts.onLoading?.(e$3.data);break;case`initiate`:loadingProgress.value.push(e$3),opts.onInitiate?.(e$3);break;case`progress`:loadingProgress.value=loadingProgress.value.map(item=>item.file===e$3.file?{...item,...e$3}:item),opts.onProgress?.(e$3);break;case`done`:loadingProgress.value=loadingProgress.value.filter(item=>item.file!==e$3.file),opts.onDone?.(e$3);break;case`ready`:status.value=`ready`,opts.onReady?.();break;case`start`:transcribing.value=!0,opts.onStart?.();break;case`update`:tps.value=e$3.tps,opts.onUpdate?.(e$3.tps);break;case`complete`:transcribing.value=!1,result.value=e$3.output[0]||``,console.debug(`Whisper result:`,result.value),opts.onComplete?.(e$3.output[0]);break}}),onUnmounted(()=>{terminate()}),{transcribe:message$1=>whisperPost(message$1),status,loadingMessage,loadingProgress,transcribing,tps,result,load:()=>whisperPost({type:`load`}),terminate}}const listModels=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL$1(`models`,options$1.baseURL),{headers:requestHeaders$1(options$1.headers,options$1.apiKey),signal:options$1.abortSignal}).then(responseJSON$1).then(({data:data$10})=>data$10),chat=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL$1(`chat/completions`,options$1.baseURL),{body:requestBody({...options$1,tools:options$1.tools?.map(tool$1=>({function:clean$2({...tool$1.function,returns:void 0}),type:`function`}))}),headers:requestHeaders$1({"Content-Type":`application/json`,...options$1.headers},options$1.apiKey),method:`POST`,signal:options$1.abortSignal}).then(responseCatch$1),determineStepType=({finishReason,maxSteps,stepsLength,toolCallsLength})=>{if(stepsLength===0)return`initial`;if(stepsLength0&&finishReason===`tool_calls`)return`tool-result`;if(![`error`,`length`].includes(finishReason))return`continue`}return`done`},wrapToolResult=result=>typeof result==`string`||Array.isArray(result)&&result.every(item=>!!(typeof item==`object`&&`type`in item&&[`audio`,`image`,`text`].includes(item.type)))?result:JSON.stringify(result),executeTool=async({abortSignal,messages,toolCall,tools:tools$2})=>{let tool$1=tools$2?.find(tool2=>tool2.function.name===toolCall.function.name);if(!tool$1){let availableTools=tools$2?.map(tool2=>tool2.function.name),availableToolsErrorMsg=availableTools==null||availableTools.length===0?`No tools are available`:`Available tools: ${availableTools.join(`, `)}`;throw Error(`Model tried to call unavailable tool "${toolCall.function.name}", ${availableToolsErrorMsg}.`)}let toolCallId=toolCall.id,toolName=toolCall.function.name,parsedArgs=JSON.parse(toolCall.function.arguments),result=wrapToolResult(await tool$1.execute(parsedArgs,{abortSignal,messages,toolCallId})),completionToolCall={args:toolCall.function.arguments,toolCallId,toolCallType:toolCall.type,toolName},completionToolResult={args:parsedArgs,result,toolCallId,toolName},message$1={content:result,role:`tool`,tool_call_id:toolCallId};return{completionToolCall,completionToolResult,message:message$1,parsedArgs,result,toolName}},strCamelToSnake$1=str=>str.replace(/[A-Z]/g,s$1=>`_${s$1.toLowerCase()}`),objCamelToSnake$2=obj=>Object.fromEntries(Object.entries(obj).map(([k$4,v$1])=>[strCamelToSnake$1(k$4),v$1]));var XSAIError$1=class extends Error{response;constructor(message$1,response){super(message$1),this.name=`XSAIError`,this.response=response}};const CHUNK_HEADER_PREFIX=`data:`,parseChunk=text$5=>{if(!text$5||!text$5.startsWith(CHUNK_HEADER_PREFIX))return[void 0,!1];let content$2=text$5.slice(5),data$10=content$2.startsWith(` `)?content$2.slice(1):content$2;if(data$10===`[DONE]`)return[void 0,!0];if(data$10.startsWith(`{`)&&data$10.includes(`"error":`))throw Error(`Error from server: ${data$10}`);let chunk=JSON.parse(data$10);return[chunk,!1]},streamText=async options$1=>{let chunkCtrl,stepCtrl,textCtrl,chunkStream=new ReadableStream({start:controller=>chunkCtrl=controller}),stepStream=new ReadableStream({start:controller=>stepCtrl=controller}),textStream=new ReadableStream({start:controller=>textCtrl=controller}),maxSteps=options$1.maxSteps??1,decoder=new TextDecoder,steps$1=[],stepOne=async options2=>{let step={choices:[],finishReason:`error`,messages:structuredClone(options2.messages),stepType:`initial`,toolCalls:[],toolResults:[]},choiceState={},buffer$1=``,finishReason,usage,shouldOutputText=!0,endToolCallByIndex=(state,idx)=>{state.endedToolCallIndex.has(idx)||(state.endedToolCallIndex.add(idx),state.currentToolIndex=null)};if(await chat({...options2,maxSteps:void 0,stream:!0,streamOptions:options2.streamOptions==null?void 0:objCamelToSnake$2(options2.streamOptions)}).then(async res=>res.body.pipeThrough(new TransformStream({transform:async(chunk,controller)=>{let text$5=decoder.decode(chunk,{stream:!0});buffer$1+=text$5;let lines=buffer$1.split(` +`);buffer$1=lines.pop()??``;for(let line of lines)try{let[chunk2,isEnd]=parseChunk(line);if(isEnd)break;chunk2&&controller.enqueue(chunk2)}catch(error){controller.error(error)}}})).pipeTo(new WritableStream({abort:reason=>{chunkCtrl.error(reason),stepCtrl.error(reason),textCtrl.error(reason)},close:()=>{options2.onEvent?.({finishReason,type:`finish`,usage})},write:async chunk=>{if(options2.onChunk?.(chunk),chunkCtrl.enqueue(chunk),usage=chunk.usage,chunk.choices==null||chunk.choices.length===0)return;let choice=chunk.choices[0];choice.delta.tool_calls&&(shouldOutputText=!1);let{delta,finish_reason,index:index$1,...rest}=choice,choiceSnapshot=step.choices[index$1]??={finishReason:finish_reason,index:index$1,message:{role:`assistant`}};if(finish_reason!==void 0){if(finishReason=finish_reason,step.finishReason=finish_reason,choiceSnapshot.finishReason=finish_reason,finish_reason===`length`)throw new XSAIError$1(`length exceeded`);if(finish_reason===`content_filter`)throw new XSAIError$1(`content filter`)}Object.assign(choiceSnapshot,rest);let{content:content$2,refusal,tool_calls,...rests}=delta,message$1=choiceSnapshot.message;Object.assign(message$1,rests),refusal!==void 0&&(message$1.refusal=(message$1.refusal||``)+(refusal||``),options2.onEvent?.({refusal:message$1.refusal,type:`refusal`})),content$2!==void 0&&(message$1.content=(message$1.content||``)+(content$2||``),shouldOutputText&&textCtrl?.enqueue(content$2),options2.onEvent?.({text:content$2,type:`text-delta`}));for(let tool_call of tool_calls||[]){options2.onEvent?.({toolCall:tool_call,type:`tool-call-delta`});let{function:fn$5,id,index:index2,type}=tool_call;message$1.toolCalls??={};let toolCall=message$1.toolCalls[index2]??={function:{arguments:``,name:fn$5.name,parsedArguments:{}},id,index:index2,type};toolCall.function.arguments+=fn$5.arguments}let state=choiceState[index$1]??={calledToolCallIndex:new Set,currentToolIndex:null,endedToolCallIndex:new Set,index:index$1,toolCallErrors:{},toolCallResults:{}};finish_reason&&state.currentToolIndex!==null&&endToolCallByIndex(state,state.currentToolIndex);for(let toolCall of delta.tool_calls||[])state.currentToolIndex!==toolCall.index&&state.currentToolIndex!==null&&endToolCallByIndex(state,state.currentToolIndex),state.calledToolCallIndex.add(toolCall.index),state.currentToolIndex=toolCall.index}}))),step.messages.push({content:step.choices[0]?.message.content??``,refusal:step.choices[0]?.message.refusal,role:`assistant`,tool_calls:Object.values(step.choices[0]?.message.toolCalls??{}).map(toolCall=>({function:{arguments:toolCall.function.arguments,name:toolCall.function.name},id:toolCall.id,index:toolCall.index,type:toolCall.type}))}),await Promise.allSettled(step.choices.map(async choice=>{let state=choiceState[choice.index];return Promise.allSettled([...state.endedToolCallIndex].map(async idx=>{let toolCall=choice.message.toolCalls[idx];if(step.toolCalls.push({args:toolCall.function.arguments,toolCallId:toolCall.id,toolCallType:`function`,toolName:toolCall.function.name}),!state.toolCallResults[toolCall.id]){options2.onEvent?.({toolCall,type:`tool-call`});try{let{completionToolResult,message:message$1,parsedArgs,result}=await executeTool({abortSignal:options2.abortSignal,messages:options2.messages,toolCall,tools:options2.tools});toolCall.function.parsedArguments=parsedArgs,state.toolCallResults[toolCall.id]=result,step.messages.push(message$1),step.toolResults.push(completionToolResult),options2.onEvent?.({id:toolCall.id,result,type:`tool-call-result`})}catch(error){state.toolCallErrors[idx]=error}}}))})),step.stepType=determineStepType({finishReason:step.finishReason,maxSteps,stepsLength:steps$1.length,toolCallsLength:step.toolCalls.length}),steps$1.push(step),stepCtrl.enqueue(step),options2.onStepFinish?.(step),!shouldOutputText)return async()=>stepOne({...options2,messages:step.messages})},invokeFunctionCalls=async()=>{let ret=await stepOne(options$1);for(;typeof ret==`function`&&steps$1.length{chunkCtrl.error(error),stepCtrl.error(error),textCtrl.error(error)}),Promise.resolve({chunkStream,stepStream,textStream})},strictJsonSchema=schema=>({...schema,additionalProperties:!1}),missingDependenciesUrl=`https://xsai.js.org/docs/packages-top/xsschema#missing-dependencies`,tryImport=async(result,name$2)=>{try{return await result}catch{throw Error(`xsschema: Missing dependencies "${name$2}". see ${missingDependenciesUrl}`)}},getToJsonSchemaFn=async vendor=>{switch(vendor){case`arktype`:return __vitePreload(()=>import(`./arktype-C-GObzDh-D9LW_dgz.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`effect`:return __vitePreload(()=>import(`./effect-DBSVVF8G-CevZ3D-J.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`sury`:return __vitePreload(()=>import(`./sury-GtnkadyM-BxYLhecR.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`valibot`:return __vitePreload(()=>import(`./valibot-CbgwcZn_-CI1fVJf9.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());case`zod`:return __vitePreload(()=>import(`./zod-CD8IEU5z-DYfvEgrv.js`),[]).then(async({getToJsonSchemaFn:getToJsonSchemaFn2})=>getToJsonSchemaFn2());default:throw Error(`xsschema: Unsupported schema vendor "${vendor}". see https://xsai.js.org/docs/packages-top/xsschema#unsupported-schema-vendor`)}},toJsonSchema=async schema=>getToJsonSchemaFn(schema[`~standard`].vendor).then(async toJsonSchema2=>toJsonSchema2(schema)),tool=async({description,execute,name:name$2,parameters})=>{let schema=await toJsonSchema(parameters);return{execute,function:{description,name:name$2,parameters:strictJsonSchema(schema),strict:!0},type:`function`}};var util;(function(util$1){util$1.assertEqual=_$2=>{};function assertIs(_arg){}util$1.assertIs=assertIs;function assertNever(_x$1){throw Error()}util$1.assertNever=assertNever,util$1.arrayToEnum=items=>{let obj={};for(let item of items)obj[item]=item;return obj},util$1.getValidEnumValues=obj=>{let validKeys=util$1.objectKeys(obj).filter(k$4=>typeof obj[obj[k$4]]!=`number`),filtered={};for(let k$4 of validKeys)filtered[k$4]=obj[k$4];return util$1.objectValues(filtered)},util$1.objectValues=obj=>util$1.objectKeys(obj).map(function(e$3){return obj[e$3]}),util$1.objectKeys=typeof Object.keys==`function`?obj=>Object.keys(obj):object=>{let keys$3=[];for(let key$1 in object)Object.prototype.hasOwnProperty.call(object,key$1)&&keys$3.push(key$1);return keys$3},util$1.find=(arr,checker)=>{for(let item of arr)if(checker(item))return item},util$1.isInteger=typeof Number.isInteger==`function`?val=>Number.isInteger(val):val=>typeof val==`number`&&Number.isFinite(val)&&Math.floor(val)===val;function joinValues(array,separator=` | `){return array.map(val=>typeof val==`string`?`'${val}'`:val).join(separator)}util$1.joinValues=joinValues,util$1.jsonStringifyReplacer=(_$2,value$1)=>typeof value$1==`bigint`?value$1.toString():value$1})(util||={});var objectUtil;(function(objectUtil$1){objectUtil$1.mergeShapes=(first,second)=>({...first,...second})})(objectUtil||={});const ZodParsedType=util.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),getParsedType=data$10=>{let t=typeof data$10;switch(t){case`undefined`:return ZodParsedType.undefined;case`string`:return ZodParsedType.string;case`number`:return Number.isNaN(data$10)?ZodParsedType.nan:ZodParsedType.number;case`boolean`:return ZodParsedType.boolean;case`function`:return ZodParsedType.function;case`bigint`:return ZodParsedType.bigint;case`symbol`:return ZodParsedType.symbol;case`object`:return Array.isArray(data$10)?ZodParsedType.array:data$10===null?ZodParsedType.null:data$10.then&&typeof data$10.then==`function`&&data$10.catch&&typeof data$10.catch==`function`?ZodParsedType.promise:typeof Map<`u`&&data$10 instanceof Map?ZodParsedType.map:typeof Set<`u`&&data$10 instanceof Set?ZodParsedType.set:typeof Date<`u`&&data$10 instanceof Date?ZodParsedType.date:ZodParsedType.object;default:return ZodParsedType.unknown}},ZodIssueCode=util.arrayToEnum([`invalid_type`,`invalid_literal`,`custom`,`invalid_union`,`invalid_union_discriminator`,`invalid_enum_value`,`unrecognized_keys`,`invalid_arguments`,`invalid_return_type`,`invalid_date`,`invalid_string`,`too_small`,`too_big`,`invalid_intersection_types`,`not_multiple_of`,`not_finite`]);var ZodError=class ZodError extends Error{get errors(){return this.issues}constructor(issues){super(),this.issues=[],this.addIssue=sub=>{this.issues=[...this.issues,sub]},this.addIssues=(subs=[])=>{this.issues=[...this.issues,...subs]};let actualProto=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,actualProto):this.__proto__=actualProto,this.name=`ZodError`,this.issues=issues}format(_mapper){let mapper=_mapper||function(issue){return issue.message},fieldErrors={_errors:[]},processError=error=>{for(let issue of error.issues)if(issue.code===`invalid_union`)issue.unionErrors.map(processError);else if(issue.code===`invalid_return_type`)processError(issue.returnTypeError);else if(issue.code===`invalid_arguments`)processError(issue.argumentsError);else if(issue.path.length===0)fieldErrors._errors.push(mapper(issue));else{let curr=fieldErrors,i$1=0;for(;i$1issue.message){let fieldErrors={},formErrors=[];for(let sub of this.issues)if(sub.path.length>0){let firstEl=sub.path[0];fieldErrors[firstEl]=fieldErrors[firstEl]||[],fieldErrors[firstEl].push(mapper(sub))}else formErrors.push(mapper(sub));return{formErrors,fieldErrors}}get formErrors(){return this.flatten()}};ZodError.create=issues=>{let error=new ZodError(issues);return error};const errorMap=(issue,_ctx)=>{let message$1;switch(issue.code){case ZodIssueCode.invalid_type:message$1=issue.received===ZodParsedType.undefined?`Required`:`Expected ${issue.expected}, received ${issue.received}`;break;case ZodIssueCode.invalid_literal:message$1=`Invalid literal value, expected ${JSON.stringify(issue.expected,util.jsonStringifyReplacer)}`;break;case ZodIssueCode.unrecognized_keys:message$1=`Unrecognized key(s) in object: ${util.joinValues(issue.keys,`, `)}`;break;case ZodIssueCode.invalid_union:message$1=`Invalid input`;break;case ZodIssueCode.invalid_union_discriminator:message$1=`Invalid discriminator value. Expected ${util.joinValues(issue.options)}`;break;case ZodIssueCode.invalid_enum_value:message$1=`Invalid enum value. Expected ${util.joinValues(issue.options)}, received '${issue.received}'`;break;case ZodIssueCode.invalid_arguments:message$1=`Invalid function arguments`;break;case ZodIssueCode.invalid_return_type:message$1=`Invalid function return type`;break;case ZodIssueCode.invalid_date:message$1=`Invalid date`;break;case ZodIssueCode.invalid_string:typeof issue.validation==`object`?`includes`in issue.validation?(message$1=`Invalid input: must include "${issue.validation.includes}"`,typeof issue.validation.position==`number`&&(message$1=`${message$1} at one or more positions greater than or equal to ${issue.validation.position}`)):`startsWith`in issue.validation?message$1=`Invalid input: must start with "${issue.validation.startsWith}"`:`endsWith`in issue.validation?message$1=`Invalid input: must end with "${issue.validation.endsWith}"`:util.assertNever(issue.validation):message$1=issue.validation===`regex`?`Invalid`:`Invalid ${issue.validation}`;break;case ZodIssueCode.too_small:message$1=issue.type===`array`?`Array must contain ${issue.exact?`exactly`:issue.inclusive?`at least`:`more than`} ${issue.minimum} element(s)`:issue.type===`string`?`String must contain ${issue.exact?`exactly`:issue.inclusive?`at least`:`over`} ${issue.minimum} character(s)`:issue.type===`number`||issue.type===`bigint`?`Number must be ${issue.exact?`exactly equal to `:issue.inclusive?`greater than or equal to `:`greater than `}${issue.minimum}`:issue.type===`date`?`Date must be ${issue.exact?`exactly equal to `:issue.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(issue.minimum))}`:`Invalid input`;break;case ZodIssueCode.too_big:message$1=issue.type===`array`?`Array must contain ${issue.exact?`exactly`:issue.inclusive?`at most`:`less than`} ${issue.maximum} element(s)`:issue.type===`string`?`String must contain ${issue.exact?`exactly`:issue.inclusive?`at most`:`under`} ${issue.maximum} character(s)`:issue.type===`number`?`Number must be ${issue.exact?`exactly`:issue.inclusive?`less than or equal to`:`less than`} ${issue.maximum}`:issue.type===`bigint`?`BigInt must be ${issue.exact?`exactly`:issue.inclusive?`less than or equal to`:`less than`} ${issue.maximum}`:issue.type===`date`?`Date must be ${issue.exact?`exactly`:issue.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(issue.maximum))}`:`Invalid input`;break;case ZodIssueCode.custom:message$1=`Invalid input`;break;case ZodIssueCode.invalid_intersection_types:message$1=`Intersection results could not be merged`;break;case ZodIssueCode.not_multiple_of:message$1=`Number must be a multiple of ${issue.multipleOf}`;break;case ZodIssueCode.not_finite:message$1=`Number must be finite`;break;default:message$1=_ctx.defaultError,util.assertNever(issue)}return{message:message$1}};var en_default$1=errorMap;let overrideErrorMap=en_default$1;function getErrorMap(){return overrideErrorMap}const makeIssue=params=>{let{data:data$10,path,errorMaps,issueData}=params,fullPath=[...path,...issueData.path||[]],fullIssue={...issueData,path:fullPath};if(issueData.message!==void 0)return{...issueData,path:fullPath,message:issueData.message};let errorMessage=``,maps=errorMaps.filter(m$2=>!!m$2).slice().reverse();for(let map of maps)errorMessage=map(fullIssue,{data:data$10,defaultError:errorMessage}).message;return{...issueData,path:fullPath,message:errorMessage}};function addIssueToContext(ctx,issueData){let overrideMap=getErrorMap(),issue=makeIssue({issueData,data:ctx.data,path:ctx.path,errorMaps:[ctx.common.contextualErrorMap,ctx.schemaErrorMap,overrideMap,overrideMap===en_default$1?void 0:en_default$1].filter(x$3=>!!x$3)});ctx.common.issues.push(issue)}var ParseStatus=class ParseStatus{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(status,results){let arrayValue=[];for(let s$1 of results){if(s$1.status===`aborted`)return INVALID;s$1.status===`dirty`&&status.dirty(),arrayValue.push(s$1.value)}return{status:status.value,value:arrayValue}}static async mergeObjectAsync(status,pairs){let syncPairs=[];for(let pair of pairs){let key$1=await pair.key,value$1=await pair.value;syncPairs.push({key:key$1,value:value$1})}return ParseStatus.mergeObjectSync(status,syncPairs)}static mergeObjectSync(status,pairs){let finalObject={};for(let pair of pairs){let{key:key$1,value:value$1}=pair;if(key$1.status===`aborted`||value$1.status===`aborted`)return INVALID;key$1.status===`dirty`&&status.dirty(),value$1.status===`dirty`&&status.dirty(),key$1.value!==`__proto__`&&(value$1.value!==void 0||pair.alwaysSet)&&(finalObject[key$1.value]=value$1.value)}return{status:status.value,value:finalObject}}};const INVALID=Object.freeze({status:`aborted`}),DIRTY=value$1=>({status:`dirty`,value:value$1}),OK=value$1=>({status:`valid`,value:value$1}),isAborted=x$3=>x$3.status===`aborted`,isDirty=x$3=>x$3.status===`dirty`,isValid=x$3=>x$3.status===`valid`,isAsync=x$3=>typeof Promise<`u`&&x$3 instanceof Promise;var errorUtil;(function(errorUtil$1){errorUtil$1.errToObj=message$1=>typeof message$1==`string`?{message:message$1}:message$1||{},errorUtil$1.toString=message$1=>typeof message$1==`string`?message$1:message$1?.message})(errorUtil||={});var ParseInputLazyPath=class{constructor(parent,value$1,path,key$1){this._cachedPath=[],this.parent=parent,this.data=value$1,this._path=path,this._key=key$1}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}};const handleResult=(ctx,result)=>{if(isValid(result))return{success:!0,data:result.value};if(!ctx.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){if(this._error)return this._error;let error=new ZodError(ctx.common.issues);return this._error=error,this._error}}};function processCreateParams(params){if(!params)return{};let{errorMap:errorMap$1,invalid_type_error,required_error,description}=params;if(errorMap$1&&(invalid_type_error||required_error))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(errorMap$1)return{errorMap:errorMap$1,description};let customMap=(iss,ctx)=>{let{message:message$1}=params;return iss.code===`invalid_enum_value`?{message:message$1??ctx.defaultError}:ctx.data===void 0?{message:message$1??required_error??ctx.defaultError}:iss.code===`invalid_type`?{message:message$1??invalid_type_error??ctx.defaultError}:{message:ctx.defaultError}};return{errorMap:customMap,description}}var ZodType=class{get description(){return this._def.description}_getType(input){return getParsedType(input.data)}_getOrReturnCtx(input,ctx){return ctx||{common:input.parent.common,data:input.data,parsedType:getParsedType(input.data),schemaErrorMap:this._def.errorMap,path:input.path,parent:input.parent}}_processInputParams(input){return{status:new ParseStatus,ctx:{common:input.parent.common,data:input.data,parsedType:getParsedType(input.data),schemaErrorMap:this._def.errorMap,path:input.path,parent:input.parent}}}_parseSync(input){let result=this._parse(input);if(isAsync(result))throw Error(`Synchronous parse encountered promise.`);return result}_parseAsync(input){let result=this._parse(input);return Promise.resolve(result)}parse(data$10,params){let result=this.safeParse(data$10,params);if(result.success)return result.data;throw result.error}safeParse(data$10,params){let ctx={common:{issues:[],async:params?.async??!1,contextualErrorMap:params?.errorMap},path:params?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:data$10,parsedType:getParsedType(data$10)},result=this._parseSync({data:data$10,path:ctx.path,parent:ctx});return handleResult(ctx,result)}"~validate"(data$10){let ctx={common:{issues:[],async:!!this[`~standard`].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:data$10,parsedType:getParsedType(data$10)};if(!this[`~standard`].async)try{let result=this._parseSync({data:data$10,path:[],parent:ctx});return isValid(result)?{value:result.value}:{issues:ctx.common.issues}}catch(err){err?.message?.toLowerCase()?.includes(`encountered`)&&(this[`~standard`].async=!0),ctx.common={issues:[],async:!0}}return this._parseAsync({data:data$10,path:[],parent:ctx}).then(result=>isValid(result)?{value:result.value}:{issues:ctx.common.issues})}async parseAsync(data$10,params){let result=await this.safeParseAsync(data$10,params);if(result.success)return result.data;throw result.error}async safeParseAsync(data$10,params){let ctx={common:{issues:[],contextualErrorMap:params?.errorMap,async:!0},path:params?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:data$10,parsedType:getParsedType(data$10)},maybeAsyncResult=this._parse({data:data$10,path:ctx.path,parent:ctx}),result=await(isAsync(maybeAsyncResult)?maybeAsyncResult:Promise.resolve(maybeAsyncResult));return handleResult(ctx,result)}refine(check$1,message$1){let getIssueProperties=val=>typeof message$1==`string`||message$1===void 0?{message:message$1}:typeof message$1==`function`?message$1(val):message$1;return this._refinement((val,ctx)=>{let result=check$1(val),setError=()=>ctx.addIssue({code:ZodIssueCode.custom,...getIssueProperties(val)});return typeof Promise<`u`&&result instanceof Promise?result.then(data$10=>data$10?!0:(setError(),!1)):result?!0:(setError(),!1)})}refinement(check$1,refinementData){return this._refinement((val,ctx)=>check$1(val)?!0:(ctx.addIssue(typeof refinementData==`function`?refinementData(val,ctx):refinementData),!1))}_refinement(refinement){return new ZodEffects({schema:this,typeName:ZodFirstPartyTypeKind.ZodEffects,effect:{type:`refinement`,refinement}})}superRefine(refinement){return this._refinement(refinement)}constructor(def$1){this.spa=this.safeParseAsync,this._def=def$1,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[`~standard`]={version:1,vendor:`zod`,validate:data$10=>this[`~validate`](data$10)}}optional(){return ZodOptional.create(this,this._def)}nullable(){return ZodNullable.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ZodArray.create(this)}promise(){return ZodPromise.create(this,this._def)}or(option$1){return ZodUnion.create([this,option$1],this._def)}and(incoming){return ZodIntersection.create(this,incoming,this._def)}transform(transform$1){return new ZodEffects({...processCreateParams(this._def),schema:this,typeName:ZodFirstPartyTypeKind.ZodEffects,effect:{type:`transform`,transform:transform$1}})}default(def$1){let defaultValueFunc=typeof def$1==`function`?def$1:()=>def$1;return new ZodDefault({...processCreateParams(this._def),innerType:this,defaultValue:defaultValueFunc,typeName:ZodFirstPartyTypeKind.ZodDefault})}brand(){return new ZodBranded({typeName:ZodFirstPartyTypeKind.ZodBranded,type:this,...processCreateParams(this._def)})}catch(def$1){let catchValueFunc=typeof def$1==`function`?def$1:()=>def$1;return new ZodCatch({...processCreateParams(this._def),innerType:this,catchValue:catchValueFunc,typeName:ZodFirstPartyTypeKind.ZodCatch})}describe(description){let This=this.constructor;return new This({...this._def,description})}pipe(target$1){return ZodPipeline.create(this,target$1)}readonly(){return ZodReadonly.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}};const cuidRegex=/^c[^\s-]{8,}$/i,cuid2Regex=/^[0-9a-z]+$/,ulidRegex=/^[0-9A-HJKMNP-TV-Z]{26}$/i,uuidRegex=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,nanoidRegex=/^[a-z0-9_-]{21}$/i,jwtRegex=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,durationRegex=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,emailRegex=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,_emojiRegex=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;let emojiRegex;const ipv4Regex=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4CidrRegex=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6Regex=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ipv6CidrRegex=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64Regex=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64urlRegex=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dateRegexSource=`((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`,dateRegex=RegExp(`^${dateRegexSource}$`);function timeRegexSource(args){let secondsRegexSource=`[0-5]\\d`;args.precision?secondsRegexSource=`${secondsRegexSource}\\.\\d{${args.precision}}`:args.precision??(secondsRegexSource=`${secondsRegexSource}(\\.\\d+)?`);let secondsQuantifier=args.precision?`+`:`?`;return`([01]\\d|2[0-3]):[0-5]\\d(:${secondsRegexSource})${secondsQuantifier}`}function timeRegex(args){return RegExp(`^${timeRegexSource(args)}$`)}function datetimeRegex(args){let regex=`${dateRegexSource}T${timeRegexSource(args)}`,opts=[];return opts.push(args.local?`Z?`:`Z`),args.offset&&opts.push(`([+-]\\d{2}:?\\d{2})`),regex=`${regex}(${opts.join(`|`)})`,RegExp(`^${regex}$`)}function isValidIP(ip,version$1){return!!((version$1===`v4`||!version$1)&&ipv4Regex.test(ip)||(version$1===`v6`||!version$1)&&ipv6Regex.test(ip))}function isValidJWT(jwt,alg){if(!jwtRegex.test(jwt))return!1;try{let[header]=jwt.split(`.`);if(!header)return!1;let base64=header.replace(/-/g,`+`).replace(/_/g,`/`).padEnd(header.length+(4-header.length%4)%4,`=`),decoded=JSON.parse(atob(base64));return!(typeof decoded!=`object`||!decoded||`typ`in decoded&&decoded?.typ!==`JWT`||!decoded.alg||alg&&decoded.alg!==alg)}catch{return!1}}function isValidCidr(ip,version$1){return!!((version$1===`v4`||!version$1)&&ipv4CidrRegex.test(ip)||(version$1===`v6`||!version$1)&&ipv6CidrRegex.test(ip))}var ZodString=class ZodString extends ZodType{_parse(input){this._def.coerce&&(input.data=String(input.data));let parsedType=this._getType(input);if(parsedType!==ZodParsedType.string){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.string,received:ctx$1.parsedType}),INVALID}let status=new ParseStatus,ctx;for(let check$1 of this._def.checks)if(check$1.kind===`min`)input.data.lengthcheck$1.value&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:check$1.value,type:`string`,inclusive:!0,exact:!1,message:check$1.message}),status.dirty());else if(check$1.kind===`length`){let tooBig=input.data.length>check$1.value,tooSmall=input.data.lengthregex.test(data$10),{validation,code:ZodIssueCode.invalid_string,...errorUtil.errToObj(message$1)})}_addCheck(check$1){return new ZodString({...this._def,checks:[...this._def.checks,check$1]})}email(message$1){return this._addCheck({kind:`email`,...errorUtil.errToObj(message$1)})}url(message$1){return this._addCheck({kind:`url`,...errorUtil.errToObj(message$1)})}emoji(message$1){return this._addCheck({kind:`emoji`,...errorUtil.errToObj(message$1)})}uuid(message$1){return this._addCheck({kind:`uuid`,...errorUtil.errToObj(message$1)})}nanoid(message$1){return this._addCheck({kind:`nanoid`,...errorUtil.errToObj(message$1)})}cuid(message$1){return this._addCheck({kind:`cuid`,...errorUtil.errToObj(message$1)})}cuid2(message$1){return this._addCheck({kind:`cuid2`,...errorUtil.errToObj(message$1)})}ulid(message$1){return this._addCheck({kind:`ulid`,...errorUtil.errToObj(message$1)})}base64(message$1){return this._addCheck({kind:`base64`,...errorUtil.errToObj(message$1)})}base64url(message$1){return this._addCheck({kind:`base64url`,...errorUtil.errToObj(message$1)})}jwt(options$1){return this._addCheck({kind:`jwt`,...errorUtil.errToObj(options$1)})}ip(options$1){return this._addCheck({kind:`ip`,...errorUtil.errToObj(options$1)})}cidr(options$1){return this._addCheck({kind:`cidr`,...errorUtil.errToObj(options$1)})}datetime(options$1){return typeof options$1==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:options$1}):this._addCheck({kind:`datetime`,precision:options$1?.precision===void 0?null:options$1?.precision,offset:options$1?.offset??!1,local:options$1?.local??!1,...errorUtil.errToObj(options$1?.message)})}date(message$1){return this._addCheck({kind:`date`,message:message$1})}time(options$1){return typeof options$1==`string`?this._addCheck({kind:`time`,precision:null,message:options$1}):this._addCheck({kind:`time`,precision:options$1?.precision===void 0?null:options$1?.precision,...errorUtil.errToObj(options$1?.message)})}duration(message$1){return this._addCheck({kind:`duration`,...errorUtil.errToObj(message$1)})}regex(regex,message$1){return this._addCheck({kind:`regex`,regex,...errorUtil.errToObj(message$1)})}includes(value$1,options$1){return this._addCheck({kind:`includes`,value:value$1,position:options$1?.position,...errorUtil.errToObj(options$1?.message)})}startsWith(value$1,message$1){return this._addCheck({kind:`startsWith`,value:value$1,...errorUtil.errToObj(message$1)})}endsWith(value$1,message$1){return this._addCheck({kind:`endsWith`,value:value$1,...errorUtil.errToObj(message$1)})}min(minLength,message$1){return this._addCheck({kind:`min`,value:minLength,...errorUtil.errToObj(message$1)})}max(maxLength,message$1){return this._addCheck({kind:`max`,value:maxLength,...errorUtil.errToObj(message$1)})}length(len,message$1){return this._addCheck({kind:`length`,value:len,...errorUtil.errToObj(message$1)})}nonempty(message$1){return this.min(1,errorUtil.errToObj(message$1))}trim(){return new ZodString({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new ZodString({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new ZodString({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(ch=>ch.kind===`datetime`)}get isDate(){return!!this._def.checks.find(ch=>ch.kind===`date`)}get isTime(){return!!this._def.checks.find(ch=>ch.kind===`time`)}get isDuration(){return!!this._def.checks.find(ch=>ch.kind===`duration`)}get isEmail(){return!!this._def.checks.find(ch=>ch.kind===`email`)}get isURL(){return!!this._def.checks.find(ch=>ch.kind===`url`)}get isEmoji(){return!!this._def.checks.find(ch=>ch.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(ch=>ch.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(ch=>ch.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(ch=>ch.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(ch=>ch.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(ch=>ch.kind===`ulid`)}get isIP(){return!!this._def.checks.find(ch=>ch.kind===`ip`)}get isCIDR(){return!!this._def.checks.find(ch=>ch.kind===`cidr`)}get isBase64(){return!!this._def.checks.find(ch=>ch.kind===`base64`)}get isBase64url(){return!!this._def.checks.find(ch=>ch.kind===`base64url`)}get minLength(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1}get maxLength(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuenew ZodString({checks:[],typeName:ZodFirstPartyTypeKind.ZodString,coerce:params?.coerce??!1,...processCreateParams(params)});function floatSafeRemainder(val,step){let valDecCount=(val.toString().split(`.`)[1]||``).length,stepDecCount=(step.toString().split(`.`)[1]||``).length,decCount=valDecCount>stepDecCount?valDecCount:stepDecCount,valInt=Number.parseInt(val.toFixed(decCount).replace(`.`,``)),stepInt=Number.parseInt(step.toFixed(decCount).replace(`.`,``));return valInt%stepInt/10**decCount}var ZodNumber=class ZodNumber extends ZodType{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(input){this._def.coerce&&(input.data=Number(input.data));let parsedType=this._getType(input);if(parsedType!==ZodParsedType.number){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.number,received:ctx$1.parsedType}),INVALID}let ctx,status=new ParseStatus;for(let check$1 of this._def.checks)if(check$1.kind===`int`)util.isInteger(input.data)||(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:`integer`,received:`float`,message:check$1.message}),status.dirty());else if(check$1.kind===`min`){let tooSmall=check$1.inclusive?input.datacheck$1.value:input.data>=check$1.value;tooBig&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:check$1.value,type:`number`,inclusive:check$1.inclusive,exact:!1,message:check$1.message}),status.dirty())}else check$1.kind===`multipleOf`?floatSafeRemainder(input.data,check$1.value)!==0&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.not_multiple_of,multipleOf:check$1.value,message:check$1.message}),status.dirty()):check$1.kind===`finite`?Number.isFinite(input.data)||(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.not_finite,message:check$1.message}),status.dirty()):util.assertNever(check$1);return{status:status.value,value:input.data}}gte(value$1,message$1){return this.setLimit(`min`,value$1,!0,errorUtil.toString(message$1))}gt(value$1,message$1){return this.setLimit(`min`,value$1,!1,errorUtil.toString(message$1))}lte(value$1,message$1){return this.setLimit(`max`,value$1,!0,errorUtil.toString(message$1))}lt(value$1,message$1){return this.setLimit(`max`,value$1,!1,errorUtil.toString(message$1))}setLimit(kind,value$1,inclusive,message$1){return new ZodNumber({...this._def,checks:[...this._def.checks,{kind,value:value$1,inclusive,message:errorUtil.toString(message$1)}]})}_addCheck(check$1){return new ZodNumber({...this._def,checks:[...this._def.checks,check$1]})}int(message$1){return this._addCheck({kind:`int`,message:errorUtil.toString(message$1)})}positive(message$1){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:errorUtil.toString(message$1)})}negative(message$1){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:errorUtil.toString(message$1)})}nonpositive(message$1){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:errorUtil.toString(message$1)})}nonnegative(message$1){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:errorUtil.toString(message$1)})}multipleOf(value$1,message$1){return this._addCheck({kind:`multipleOf`,value:value$1,message:errorUtil.toString(message$1)})}finite(message$1){return this._addCheck({kind:`finite`,message:errorUtil.toString(message$1)})}safe(message$1){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:errorUtil.toString(message$1)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:errorUtil.toString(message$1)})}get minValue(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1}get maxValue(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuech.kind===`int`||ch.kind===`multipleOf`&&util.isInteger(ch.value))}get isFinite(){let max$1=null,min$1=null;for(let ch of this._def.checks)if(ch.kind===`finite`||ch.kind===`int`||ch.kind===`multipleOf`)return!0;else ch.kind===`min`?(min$1===null||ch.value>min$1)&&(min$1=ch.value):ch.kind===`max`&&(max$1===null||ch.valuenew ZodNumber({checks:[],typeName:ZodFirstPartyTypeKind.ZodNumber,coerce:params?.coerce||!1,...processCreateParams(params)});var ZodBigInt=class ZodBigInt extends ZodType{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(input){if(this._def.coerce)try{input.data=BigInt(input.data)}catch{return this._getInvalidInput(input)}let parsedType=this._getType(input);if(parsedType!==ZodParsedType.bigint)return this._getInvalidInput(input);let ctx,status=new ParseStatus;for(let check$1 of this._def.checks)if(check$1.kind===`min`){let tooSmall=check$1.inclusive?input.datacheck$1.value:input.data>=check$1.value;tooBig&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,type:`bigint`,maximum:check$1.value,inclusive:check$1.inclusive,message:check$1.message}),status.dirty())}else check$1.kind===`multipleOf`?input.data%check$1.value!==BigInt(0)&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.not_multiple_of,multipleOf:check$1.value,message:check$1.message}),status.dirty()):util.assertNever(check$1);return{status:status.value,value:input.data}}_getInvalidInput(input){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.bigint,received:ctx.parsedType}),INVALID}gte(value$1,message$1){return this.setLimit(`min`,value$1,!0,errorUtil.toString(message$1))}gt(value$1,message$1){return this.setLimit(`min`,value$1,!1,errorUtil.toString(message$1))}lte(value$1,message$1){return this.setLimit(`max`,value$1,!0,errorUtil.toString(message$1))}lt(value$1,message$1){return this.setLimit(`max`,value$1,!1,errorUtil.toString(message$1))}setLimit(kind,value$1,inclusive,message$1){return new ZodBigInt({...this._def,checks:[...this._def.checks,{kind,value:value$1,inclusive,message:errorUtil.toString(message$1)}]})}_addCheck(check$1){return new ZodBigInt({...this._def,checks:[...this._def.checks,check$1]})}positive(message$1){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:errorUtil.toString(message$1)})}negative(message$1){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:errorUtil.toString(message$1)})}nonpositive(message$1){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:errorUtil.toString(message$1)})}nonnegative(message$1){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:errorUtil.toString(message$1)})}multipleOf(value$1,message$1){return this._addCheck({kind:`multipleOf`,value:value$1,message:errorUtil.toString(message$1)})}get minValue(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1}get maxValue(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuenew ZodBigInt({checks:[],typeName:ZodFirstPartyTypeKind.ZodBigInt,coerce:params?.coerce??!1,...processCreateParams(params)});var ZodBoolean=class extends ZodType{_parse(input){this._def.coerce&&(input.data=!!input.data);let parsedType=this._getType(input);if(parsedType!==ZodParsedType.boolean){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.boolean,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodBoolean.create=params=>new ZodBoolean({typeName:ZodFirstPartyTypeKind.ZodBoolean,coerce:params?.coerce||!1,...processCreateParams(params)});var ZodDate=class ZodDate extends ZodType{_parse(input){this._def.coerce&&(input.data=new Date(input.data));let parsedType=this._getType(input);if(parsedType!==ZodParsedType.date){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.date,received:ctx$1.parsedType}),INVALID}if(Number.isNaN(input.data.getTime())){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_date}),INVALID}let status=new ParseStatus,ctx;for(let check$1 of this._def.checks)check$1.kind===`min`?input.data.getTime()check$1.value&&(ctx=this._getOrReturnCtx(input,ctx),addIssueToContext(ctx,{code:ZodIssueCode.too_big,message:check$1.message,inclusive:!0,exact:!1,maximum:check$1.value,type:`date`}),status.dirty()):util.assertNever(check$1);return{status:status.value,value:new Date(input.data.getTime())}}_addCheck(check$1){return new ZodDate({...this._def,checks:[...this._def.checks,check$1]})}min(minDate,message$1){return this._addCheck({kind:`min`,value:minDate.getTime(),message:errorUtil.toString(message$1)})}max(maxDate,message$1){return this._addCheck({kind:`max`,value:maxDate.getTime(),message:errorUtil.toString(message$1)})}get minDate(){let min$1=null;for(let ch of this._def.checks)ch.kind===`min`&&(min$1===null||ch.value>min$1)&&(min$1=ch.value);return min$1==null?null:new Date(min$1)}get maxDate(){let max$1=null;for(let ch of this._def.checks)ch.kind===`max`&&(max$1===null||ch.valuenew ZodDate({checks:[],coerce:params?.coerce||!1,typeName:ZodFirstPartyTypeKind.ZodDate,...processCreateParams(params)});var ZodSymbol=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.symbol){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.symbol,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodSymbol.create=params=>new ZodSymbol({typeName:ZodFirstPartyTypeKind.ZodSymbol,...processCreateParams(params)});var ZodUndefined=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.undefined){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.undefined,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodUndefined.create=params=>new ZodUndefined({typeName:ZodFirstPartyTypeKind.ZodUndefined,...processCreateParams(params)});var ZodNull=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.null){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.null,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodNull.create=params=>new ZodNull({typeName:ZodFirstPartyTypeKind.ZodNull,...processCreateParams(params)});var ZodAny=class extends ZodType{constructor(){super(...arguments),this._any=!0}_parse(input){return OK(input.data)}};ZodAny.create=params=>new ZodAny({typeName:ZodFirstPartyTypeKind.ZodAny,...processCreateParams(params)});var ZodUnknown=class extends ZodType{constructor(){super(...arguments),this._unknown=!0}_parse(input){return OK(input.data)}};ZodUnknown.create=params=>new ZodUnknown({typeName:ZodFirstPartyTypeKind.ZodUnknown,...processCreateParams(params)});var ZodNever=class extends ZodType{_parse(input){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.never,received:ctx.parsedType}),INVALID}};ZodNever.create=params=>new ZodNever({typeName:ZodFirstPartyTypeKind.ZodNever,...processCreateParams(params)});var ZodVoid=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.undefined){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.void,received:ctx.parsedType}),INVALID}return OK(input.data)}};ZodVoid.create=params=>new ZodVoid({typeName:ZodFirstPartyTypeKind.ZodVoid,...processCreateParams(params)});var ZodArray=class ZodArray extends ZodType{_parse(input){let{ctx,status}=this._processInputParams(input),def$1=this._def;if(ctx.parsedType!==ZodParsedType.array)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.array,received:ctx.parsedType}),INVALID;if(def$1.exactLength!==null){let tooBig=ctx.data.length>def$1.exactLength.value,tooSmall=ctx.data.lengthdef$1.maxLength.value&&(addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:def$1.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:def$1.maxLength.message}),status.dirty()),ctx.common.async)return Promise.all([...ctx.data].map((item,i$1)=>def$1.type._parseAsync(new ParseInputLazyPath(ctx,item,ctx.path,i$1)))).then(result$1=>ParseStatus.mergeArray(status,result$1));let result=[...ctx.data].map((item,i$1)=>def$1.type._parseSync(new ParseInputLazyPath(ctx,item,ctx.path,i$1)));return ParseStatus.mergeArray(status,result)}get element(){return this._def.type}min(minLength,message$1){return new ZodArray({...this._def,minLength:{value:minLength,message:errorUtil.toString(message$1)}})}max(maxLength,message$1){return new ZodArray({...this._def,maxLength:{value:maxLength,message:errorUtil.toString(message$1)}})}length(len,message$1){return new ZodArray({...this._def,exactLength:{value:len,message:errorUtil.toString(message$1)}})}nonempty(message$1){return this.min(1,message$1)}};ZodArray.create=(schema,params)=>new ZodArray({type:schema,minLength:null,maxLength:null,exactLength:null,typeName:ZodFirstPartyTypeKind.ZodArray,...processCreateParams(params)});function deepPartialify(schema){if(schema instanceof ZodObject){let newShape={};for(let key$1 in schema.shape){let fieldSchema=schema.shape[key$1];newShape[key$1]=ZodOptional.create(deepPartialify(fieldSchema))}return new ZodObject({...schema._def,shape:()=>newShape})}else if(schema instanceof ZodArray)return new ZodArray({...schema._def,type:deepPartialify(schema.element)});else if(schema instanceof ZodOptional)return ZodOptional.create(deepPartialify(schema.unwrap()));else if(schema instanceof ZodNullable)return ZodNullable.create(deepPartialify(schema.unwrap()));else if(schema instanceof ZodTuple)return ZodTuple.create(schema.items.map(item=>deepPartialify(item)));else return schema}var ZodObject=class ZodObject extends ZodType{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let shape=this._def.shape(),keys$3=util.objectKeys(shape);return this._cached={shape,keys:keys$3},this._cached}_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.object){let ctx$1=this._getOrReturnCtx(input);return addIssueToContext(ctx$1,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.object,received:ctx$1.parsedType}),INVALID}let{status,ctx}=this._processInputParams(input),{shape,keys:shapeKeys}=this._getCached(),extraKeys=[];if(!(this._def.catchall instanceof ZodNever&&this._def.unknownKeys===`strip`))for(let key$1 in ctx.data)shapeKeys.includes(key$1)||extraKeys.push(key$1);let pairs=[];for(let key$1 of shapeKeys){let keyValidator=shape[key$1],value$1=ctx.data[key$1];pairs.push({key:{status:`valid`,value:key$1},value:keyValidator._parse(new ParseInputLazyPath(ctx,value$1,ctx.path,key$1)),alwaysSet:key$1 in ctx.data})}if(this._def.catchall instanceof ZodNever){let unknownKeys=this._def.unknownKeys;if(unknownKeys===`passthrough`)for(let key$1 of extraKeys)pairs.push({key:{status:`valid`,value:key$1},value:{status:`valid`,value:ctx.data[key$1]}});else if(unknownKeys===`strict`)extraKeys.length>0&&(addIssueToContext(ctx,{code:ZodIssueCode.unrecognized_keys,keys:extraKeys}),status.dirty());else if(unknownKeys!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let catchall=this._def.catchall;for(let key$1 of extraKeys){let value$1=ctx.data[key$1];pairs.push({key:{status:`valid`,value:key$1},value:catchall._parse(new ParseInputLazyPath(ctx,value$1,ctx.path,key$1)),alwaysSet:key$1 in ctx.data})}}return ctx.common.async?Promise.resolve().then(async()=>{let syncPairs=[];for(let pair of pairs){let key$1=await pair.key,value$1=await pair.value;syncPairs.push({key:key$1,value:value$1,alwaysSet:pair.alwaysSet})}return syncPairs}).then(syncPairs=>ParseStatus.mergeObjectSync(status,syncPairs)):ParseStatus.mergeObjectSync(status,pairs)}get shape(){return this._def.shape()}strict(message$1){return errorUtil.errToObj,new ZodObject({...this._def,unknownKeys:`strict`,...message$1===void 0?{}:{errorMap:(issue,ctx)=>{let defaultError=this._def.errorMap?.(issue,ctx).message??ctx.defaultError;return issue.code===`unrecognized_keys`?{message:errorUtil.errToObj(message$1).message??defaultError}:{message:defaultError}}}})}strip(){return new ZodObject({...this._def,unknownKeys:`strip`})}passthrough(){return new ZodObject({...this._def,unknownKeys:`passthrough`})}extend(augmentation){return new ZodObject({...this._def,shape:()=>({...this._def.shape(),...augmentation})})}merge(merging){let merged=new ZodObject({unknownKeys:merging._def.unknownKeys,catchall:merging._def.catchall,shape:()=>({...this._def.shape(),...merging._def.shape()}),typeName:ZodFirstPartyTypeKind.ZodObject});return merged}setKey(key$1,schema){return this.augment({[key$1]:schema})}catchall(index$1){return new ZodObject({...this._def,catchall:index$1})}pick(mask){let shape={};for(let key$1 of util.objectKeys(mask))mask[key$1]&&this.shape[key$1]&&(shape[key$1]=this.shape[key$1]);return new ZodObject({...this._def,shape:()=>shape})}omit(mask){let shape={};for(let key$1 of util.objectKeys(this.shape))mask[key$1]||(shape[key$1]=this.shape[key$1]);return new ZodObject({...this._def,shape:()=>shape})}deepPartial(){return deepPartialify(this)}partial(mask){let newShape={};for(let key$1 of util.objectKeys(this.shape)){let fieldSchema=this.shape[key$1];mask&&!mask[key$1]?newShape[key$1]=fieldSchema:newShape[key$1]=fieldSchema.optional()}return new ZodObject({...this._def,shape:()=>newShape})}required(mask){let newShape={};for(let key$1 of util.objectKeys(this.shape))if(mask&&!mask[key$1])newShape[key$1]=this.shape[key$1];else{let fieldSchema=this.shape[key$1],newField=fieldSchema;for(;newField instanceof ZodOptional;)newField=newField._def.innerType;newShape[key$1]=newField}return new ZodObject({...this._def,shape:()=>newShape})}keyof(){return createZodEnum(util.objectKeys(this.shape))}};ZodObject.create=(shape,params)=>new ZodObject({shape:()=>shape,unknownKeys:`strip`,catchall:ZodNever.create(),typeName:ZodFirstPartyTypeKind.ZodObject,...processCreateParams(params)}),ZodObject.strictCreate=(shape,params)=>new ZodObject({shape:()=>shape,unknownKeys:`strict`,catchall:ZodNever.create(),typeName:ZodFirstPartyTypeKind.ZodObject,...processCreateParams(params)}),ZodObject.lazycreate=(shape,params)=>new ZodObject({shape,unknownKeys:`strip`,catchall:ZodNever.create(),typeName:ZodFirstPartyTypeKind.ZodObject,...processCreateParams(params)});var ZodUnion=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),options$1=this._def.options;function handleResults(results){for(let result of results)if(result.result.status===`valid`)return result.result;for(let result of results)if(result.result.status===`dirty`)return ctx.common.issues.push(...result.ctx.common.issues),result.result;let unionErrors=results.map(result=>new ZodError(result.ctx.common.issues));return addIssueToContext(ctx,{code:ZodIssueCode.invalid_union,unionErrors}),INVALID}if(ctx.common.async)return Promise.all(options$1.map(async option$1=>{let childCtx={...ctx,common:{...ctx.common,issues:[]},parent:null};return{result:await option$1._parseAsync({data:ctx.data,path:ctx.path,parent:childCtx}),ctx:childCtx}})).then(handleResults);{let dirty,issues=[];for(let option$1 of options$1){let childCtx={...ctx,common:{...ctx.common,issues:[]},parent:null},result=option$1._parseSync({data:ctx.data,path:ctx.path,parent:childCtx});if(result.status===`valid`)return result;result.status===`dirty`&&!dirty&&(dirty={result,ctx:childCtx}),childCtx.common.issues.length&&issues.push(childCtx.common.issues)}if(dirty)return ctx.common.issues.push(...dirty.ctx.common.issues),dirty.result;let unionErrors=issues.map(issues$1=>new ZodError(issues$1));return addIssueToContext(ctx,{code:ZodIssueCode.invalid_union,unionErrors}),INVALID}}get options(){return this._def.options}};ZodUnion.create=(types$1,params)=>new ZodUnion({options:types$1,typeName:ZodFirstPartyTypeKind.ZodUnion,...processCreateParams(params)});const getDiscriminator=type=>type instanceof ZodLazy?getDiscriminator(type.schema):type instanceof ZodEffects?getDiscriminator(type.innerType()):type instanceof ZodLiteral?[type.value]:type instanceof ZodEnum?type.options:type instanceof ZodNativeEnum?util.objectValues(type.enum):type instanceof ZodDefault?getDiscriminator(type._def.innerType):type instanceof ZodUndefined?[void 0]:type instanceof ZodNull?[null]:type instanceof ZodOptional?[void 0,...getDiscriminator(type.unwrap())]:type instanceof ZodNullable?[null,...getDiscriminator(type.unwrap())]:type instanceof ZodBranded||type instanceof ZodReadonly?getDiscriminator(type.unwrap()):type instanceof ZodCatch?getDiscriminator(type._def.innerType):[];var ZodDiscriminatedUnion=class ZodDiscriminatedUnion extends ZodType{_parse(input){let{ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.object)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.object,received:ctx.parsedType}),INVALID;let discriminator=this.discriminator,discriminatorValue=ctx.data[discriminator],option$1=this.optionsMap.get(discriminatorValue);return option$1?ctx.common.async?option$1._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}):option$1._parseSync({data:ctx.data,path:ctx.path,parent:ctx}):(addIssueToContext(ctx,{code:ZodIssueCode.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[discriminator]}),INVALID)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(discriminator,options$1,params){let optionsMap=new Map;for(let type of options$1){let discriminatorValues=getDiscriminator(type.shape[discriminator]);if(!discriminatorValues.length)throw Error(`A discriminator value for key \`${discriminator}\` could not be extracted from all schema options`);for(let value$1 of discriminatorValues){if(optionsMap.has(value$1))throw Error(`Discriminator property ${String(discriminator)} has duplicate value ${String(value$1)}`);optionsMap.set(value$1,type)}}return new ZodDiscriminatedUnion({typeName:ZodFirstPartyTypeKind.ZodDiscriminatedUnion,discriminator,options:options$1,optionsMap,...processCreateParams(params)})}};function mergeValues(a$2,b$3){let aType=getParsedType(a$2),bType=getParsedType(b$3);if(a$2===b$3)return{valid:!0,data:a$2};if(aType===ZodParsedType.object&&bType===ZodParsedType.object){let bKeys=util.objectKeys(b$3),sharedKeys=util.objectKeys(a$2).filter(key$1=>bKeys.indexOf(key$1)!==-1),newObj={...a$2,...b$3};for(let key$1 of sharedKeys){let sharedValue=mergeValues(a$2[key$1],b$3[key$1]);if(!sharedValue.valid)return{valid:!1};newObj[key$1]=sharedValue.data}return{valid:!0,data:newObj}}else if(aType===ZodParsedType.array&&bType===ZodParsedType.array){if(a$2.length!==b$3.length)return{valid:!1};let newArray=[];for(let index$1=0;index$1{if(isAborted(parsedLeft)||isAborted(parsedRight))return INVALID;let merged=mergeValues(parsedLeft.value,parsedRight.value);return merged.valid?((isDirty(parsedLeft)||isDirty(parsedRight))&&status.dirty(),{status:status.value,value:merged.data}):(addIssueToContext(ctx,{code:ZodIssueCode.invalid_intersection_types}),INVALID)};return ctx.common.async?Promise.all([this._def.left._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}),this._def.right._parseAsync({data:ctx.data,path:ctx.path,parent:ctx})]).then(([left,right])=>handleParsed(left,right)):handleParsed(this._def.left._parseSync({data:ctx.data,path:ctx.path,parent:ctx}),this._def.right._parseSync({data:ctx.data,path:ctx.path,parent:ctx}))}};ZodIntersection.create=(left,right,params)=>new ZodIntersection({left,right,typeName:ZodFirstPartyTypeKind.ZodIntersection,...processCreateParams(params)});var ZodTuple=class ZodTuple extends ZodType{_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.array)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.array,received:ctx.parsedType}),INVALID;if(ctx.data.lengththis._def.items.length&&(addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),status.dirty());let items=[...ctx.data].map((item,itemIndex)=>{let schema=this._def.items[itemIndex]||this._def.rest;return schema?schema._parse(new ParseInputLazyPath(ctx,item,ctx.path,itemIndex)):null}).filter(x$3=>!!x$3);return ctx.common.async?Promise.all(items).then(results=>ParseStatus.mergeArray(status,results)):ParseStatus.mergeArray(status,items)}get items(){return this._def.items}rest(rest){return new ZodTuple({...this._def,rest})}};ZodTuple.create=(schemas,params)=>{if(!Array.isArray(schemas))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new ZodTuple({items:schemas,typeName:ZodFirstPartyTypeKind.ZodTuple,rest:null,...processCreateParams(params)})};var ZodRecord=class ZodRecord extends ZodType{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.object)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.object,received:ctx.parsedType}),INVALID;let pairs=[],keyType=this._def.keyType,valueType=this._def.valueType;for(let key$1 in ctx.data)pairs.push({key:keyType._parse(new ParseInputLazyPath(ctx,key$1,ctx.path,key$1)),value:valueType._parse(new ParseInputLazyPath(ctx,ctx.data[key$1],ctx.path,key$1)),alwaysSet:key$1 in ctx.data});return ctx.common.async?ParseStatus.mergeObjectAsync(status,pairs):ParseStatus.mergeObjectSync(status,pairs)}get element(){return this._def.valueType}static create(first,second,third){return second instanceof ZodType?new ZodRecord({keyType:first,valueType:second,typeName:ZodFirstPartyTypeKind.ZodRecord,...processCreateParams(third)}):new ZodRecord({keyType:ZodString.create(),valueType:first,typeName:ZodFirstPartyTypeKind.ZodRecord,...processCreateParams(second)})}},ZodMap=class extends ZodType{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.map)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.map,received:ctx.parsedType}),INVALID;let keyType=this._def.keyType,valueType=this._def.valueType,pairs=[...ctx.data.entries()].map(([key$1,value$1],index$1)=>({key:keyType._parse(new ParseInputLazyPath(ctx,key$1,ctx.path,[index$1,`key`])),value:valueType._parse(new ParseInputLazyPath(ctx,value$1,ctx.path,[index$1,`value`]))}));if(ctx.common.async){let finalMap=new Map;return Promise.resolve().then(async()=>{for(let pair of pairs){let key$1=await pair.key,value$1=await pair.value;if(key$1.status===`aborted`||value$1.status===`aborted`)return INVALID;(key$1.status===`dirty`||value$1.status===`dirty`)&&status.dirty(),finalMap.set(key$1.value,value$1.value)}return{status:status.value,value:finalMap}})}else{let finalMap=new Map;for(let pair of pairs){let key$1=pair.key,value$1=pair.value;if(key$1.status===`aborted`||value$1.status===`aborted`)return INVALID;(key$1.status===`dirty`||value$1.status===`dirty`)&&status.dirty(),finalMap.set(key$1.value,value$1.value)}return{status:status.value,value:finalMap}}}};ZodMap.create=(keyType,valueType,params)=>new ZodMap({valueType,keyType,typeName:ZodFirstPartyTypeKind.ZodMap,...processCreateParams(params)});var ZodSet=class ZodSet extends ZodType{_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.set)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.set,received:ctx.parsedType}),INVALID;let def$1=this._def;def$1.minSize!==null&&ctx.data.sizedef$1.maxSize.value&&(addIssueToContext(ctx,{code:ZodIssueCode.too_big,maximum:def$1.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:def$1.maxSize.message}),status.dirty());let valueType=this._def.valueType;function finalizeSet(elements$1){let parsedSet=new Set;for(let element$3 of elements$1){if(element$3.status===`aborted`)return INVALID;element$3.status===`dirty`&&status.dirty(),parsedSet.add(element$3.value)}return{status:status.value,value:parsedSet}}let elements=[...ctx.data.values()].map((item,i$1)=>valueType._parse(new ParseInputLazyPath(ctx,item,ctx.path,i$1)));return ctx.common.async?Promise.all(elements).then(elements$1=>finalizeSet(elements$1)):finalizeSet(elements)}min(minSize,message$1){return new ZodSet({...this._def,minSize:{value:minSize,message:errorUtil.toString(message$1)}})}max(maxSize,message$1){return new ZodSet({...this._def,maxSize:{value:maxSize,message:errorUtil.toString(message$1)}})}size(size$1,message$1){return this.min(size$1,message$1).max(size$1,message$1)}nonempty(message$1){return this.min(1,message$1)}};ZodSet.create=(valueType,params)=>new ZodSet({valueType,minSize:null,maxSize:null,typeName:ZodFirstPartyTypeKind.ZodSet,...processCreateParams(params)});var ZodFunction=class ZodFunction extends ZodType{constructor(){super(...arguments),this.validate=this.implement}_parse(input){let{ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.function)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.function,received:ctx.parsedType}),INVALID;function makeArgsIssue(args,error){return makeIssue({data:args,path:ctx.path,errorMaps:[ctx.common.contextualErrorMap,ctx.schemaErrorMap,getErrorMap(),en_default$1].filter(x$3=>!!x$3),issueData:{code:ZodIssueCode.invalid_arguments,argumentsError:error}})}function makeReturnsIssue(returns,error){return makeIssue({data:returns,path:ctx.path,errorMaps:[ctx.common.contextualErrorMap,ctx.schemaErrorMap,getErrorMap(),en_default$1].filter(x$3=>!!x$3),issueData:{code:ZodIssueCode.invalid_return_type,returnTypeError:error}})}let params={errorMap:ctx.common.contextualErrorMap},fn$5=ctx.data;if(this._def.returns instanceof ZodPromise){let me$1=this;return OK(async function(...args){let error=new ZodError([]),parsedArgs=await me$1._def.args.parseAsync(args,params).catch(e$3=>{throw error.addIssue(makeArgsIssue(args,e$3)),error}),result=await Reflect.apply(fn$5,this,parsedArgs),parsedReturns=await me$1._def.returns._def.type.parseAsync(result,params).catch(e$3=>{throw error.addIssue(makeReturnsIssue(result,e$3)),error});return parsedReturns})}else{let me$1=this;return OK(function(...args){let parsedArgs=me$1._def.args.safeParse(args,params);if(!parsedArgs.success)throw new ZodError([makeArgsIssue(args,parsedArgs.error)]);let result=Reflect.apply(fn$5,this,parsedArgs.data),parsedReturns=me$1._def.returns.safeParse(result,params);if(!parsedReturns.success)throw new ZodError([makeReturnsIssue(result,parsedReturns.error)]);return parsedReturns.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...items){return new ZodFunction({...this._def,args:ZodTuple.create(items).rest(ZodUnknown.create())})}returns(returnType){return new ZodFunction({...this._def,returns:returnType})}implement(func){let validatedFunc=this.parse(func);return validatedFunc}strictImplement(func){let validatedFunc=this.parse(func);return validatedFunc}static create(args,returns,params){return new ZodFunction({args:args||ZodTuple.create([]).rest(ZodUnknown.create()),returns:returns||ZodUnknown.create(),typeName:ZodFirstPartyTypeKind.ZodFunction,...processCreateParams(params)})}},ZodLazy=class extends ZodType{get schema(){return this._def.getter()}_parse(input){let{ctx}=this._processInputParams(input),lazySchema=this._def.getter();return lazySchema._parse({data:ctx.data,path:ctx.path,parent:ctx})}};ZodLazy.create=(getter,params)=>new ZodLazy({getter,typeName:ZodFirstPartyTypeKind.ZodLazy,...processCreateParams(params)});var ZodLiteral=class extends ZodType{_parse(input){if(input.data!==this._def.value){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{received:ctx.data,code:ZodIssueCode.invalid_literal,expected:this._def.value}),INVALID}return{status:`valid`,value:input.data}}get value(){return this._def.value}};ZodLiteral.create=(value$1,params)=>new ZodLiteral({value:value$1,typeName:ZodFirstPartyTypeKind.ZodLiteral,...processCreateParams(params)});function createZodEnum(values,params){return new ZodEnum({values,typeName:ZodFirstPartyTypeKind.ZodEnum,...processCreateParams(params)})}var ZodEnum=class ZodEnum extends ZodType{_parse(input){if(typeof input.data!=`string`){let ctx=this._getOrReturnCtx(input),expectedValues=this._def.values;return addIssueToContext(ctx,{expected:util.joinValues(expectedValues),received:ctx.parsedType,code:ZodIssueCode.invalid_type}),INVALID}if(this._cache||=new Set(this._def.values),!this._cache.has(input.data)){let ctx=this._getOrReturnCtx(input),expectedValues=this._def.values;return addIssueToContext(ctx,{received:ctx.data,code:ZodIssueCode.invalid_enum_value,options:expectedValues}),INVALID}return OK(input.data)}get options(){return this._def.values}get enum(){let enumValues={};for(let val of this._def.values)enumValues[val]=val;return enumValues}get Values(){let enumValues={};for(let val of this._def.values)enumValues[val]=val;return enumValues}get Enum(){let enumValues={};for(let val of this._def.values)enumValues[val]=val;return enumValues}extract(values,newDef=this._def){return ZodEnum.create(values,{...this._def,...newDef})}exclude(values,newDef=this._def){return ZodEnum.create(this.options.filter(opt=>!values.includes(opt)),{...this._def,...newDef})}};ZodEnum.create=createZodEnum;var ZodNativeEnum=class extends ZodType{_parse(input){let nativeEnumValues=util.getValidEnumValues(this._def.values),ctx=this._getOrReturnCtx(input);if(ctx.parsedType!==ZodParsedType.string&&ctx.parsedType!==ZodParsedType.number){let expectedValues=util.objectValues(nativeEnumValues);return addIssueToContext(ctx,{expected:util.joinValues(expectedValues),received:ctx.parsedType,code:ZodIssueCode.invalid_type}),INVALID}if(this._cache||=new Set(util.getValidEnumValues(this._def.values)),!this._cache.has(input.data)){let expectedValues=util.objectValues(nativeEnumValues);return addIssueToContext(ctx,{received:ctx.data,code:ZodIssueCode.invalid_enum_value,options:expectedValues}),INVALID}return OK(input.data)}get enum(){return this._def.values}};ZodNativeEnum.create=(values,params)=>new ZodNativeEnum({values,typeName:ZodFirstPartyTypeKind.ZodNativeEnum,...processCreateParams(params)});var ZodPromise=class extends ZodType{unwrap(){return this._def.type}_parse(input){let{ctx}=this._processInputParams(input);if(ctx.parsedType!==ZodParsedType.promise&&ctx.common.async===!1)return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.promise,received:ctx.parsedType}),INVALID;let promisified=ctx.parsedType===ZodParsedType.promise?ctx.data:Promise.resolve(ctx.data);return OK(promisified.then(data$10=>this._def.type.parseAsync(data$10,{path:ctx.path,errorMap:ctx.common.contextualErrorMap})))}};ZodPromise.create=(schema,params)=>new ZodPromise({type:schema,typeName:ZodFirstPartyTypeKind.ZodPromise,...processCreateParams(params)});var ZodEffects=class extends ZodType{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ZodFirstPartyTypeKind.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(input){let{status,ctx}=this._processInputParams(input),effect$1=this._def.effect||null,checkCtx={addIssue:arg=>{addIssueToContext(ctx,arg),arg.fatal?status.abort():status.dirty()},get path(){return ctx.path}};if(checkCtx.addIssue=checkCtx.addIssue.bind(checkCtx),effect$1.type===`preprocess`){let processed=effect$1.transform(ctx.data,checkCtx);if(ctx.common.async)return Promise.resolve(processed).then(async processed$1=>{if(status.value===`aborted`)return INVALID;let result=await this._def.schema._parseAsync({data:processed$1,path:ctx.path,parent:ctx});return result.status===`aborted`?INVALID:result.status===`dirty`||status.value===`dirty`?DIRTY(result.value):result});{if(status.value===`aborted`)return INVALID;let result=this._def.schema._parseSync({data:processed,path:ctx.path,parent:ctx});return result.status===`aborted`?INVALID:result.status===`dirty`||status.value===`dirty`?DIRTY(result.value):result}}if(effect$1.type===`refinement`){let executeRefinement=acc=>{let result=effect$1.refinement(acc,checkCtx);if(ctx.common.async)return Promise.resolve(result);if(result instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return acc};if(ctx.common.async===!1){let inner=this._def.schema._parseSync({data:ctx.data,path:ctx.path,parent:ctx});return inner.status===`aborted`?INVALID:(inner.status===`dirty`&&status.dirty(),executeRefinement(inner.value),{status:status.value,value:inner.value})}else return this._def.schema._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}).then(inner=>inner.status===`aborted`?INVALID:(inner.status===`dirty`&&status.dirty(),executeRefinement(inner.value).then(()=>({status:status.value,value:inner.value}))))}if(effect$1.type===`transform`)if(ctx.common.async===!1){let base=this._def.schema._parseSync({data:ctx.data,path:ctx.path,parent:ctx});if(!isValid(base))return INVALID;let result=effect$1.transform(base.value,checkCtx);if(result instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:status.value,value:result}}else return this._def.schema._parseAsync({data:ctx.data,path:ctx.path,parent:ctx}).then(base=>isValid(base)?Promise.resolve(effect$1.transform(base.value,checkCtx)).then(result=>({status:status.value,value:result})):INVALID);util.assertNever(effect$1)}};ZodEffects.create=(schema,effect$1,params)=>new ZodEffects({schema,typeName:ZodFirstPartyTypeKind.ZodEffects,effect:effect$1,...processCreateParams(params)}),ZodEffects.createWithPreprocess=(preprocess$1,schema,params)=>new ZodEffects({schema,effect:{type:`preprocess`,transform:preprocess$1},typeName:ZodFirstPartyTypeKind.ZodEffects,...processCreateParams(params)});var ZodOptional=class extends ZodType{_parse(input){let parsedType=this._getType(input);return parsedType===ZodParsedType.undefined?OK(void 0):this._def.innerType._parse(input)}unwrap(){return this._def.innerType}};ZodOptional.create=(type,params)=>new ZodOptional({innerType:type,typeName:ZodFirstPartyTypeKind.ZodOptional,...processCreateParams(params)});var ZodNullable=class extends ZodType{_parse(input){let parsedType=this._getType(input);return parsedType===ZodParsedType.null?OK(null):this._def.innerType._parse(input)}unwrap(){return this._def.innerType}};ZodNullable.create=(type,params)=>new ZodNullable({innerType:type,typeName:ZodFirstPartyTypeKind.ZodNullable,...processCreateParams(params)});var ZodDefault=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),data$10=ctx.data;return ctx.parsedType===ZodParsedType.undefined&&(data$10=this._def.defaultValue()),this._def.innerType._parse({data:data$10,path:ctx.path,parent:ctx})}removeDefault(){return this._def.innerType}};ZodDefault.create=(type,params)=>new ZodDefault({innerType:type,typeName:ZodFirstPartyTypeKind.ZodDefault,defaultValue:typeof params.default==`function`?params.default:()=>params.default,...processCreateParams(params)});var ZodCatch=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),newCtx={...ctx,common:{...ctx.common,issues:[]}},result=this._def.innerType._parse({data:newCtx.data,path:newCtx.path,parent:{...newCtx}});return isAsync(result)?result.then(result$1=>({status:`valid`,value:result$1.status===`valid`?result$1.value:this._def.catchValue({get error(){return new ZodError(newCtx.common.issues)},input:newCtx.data})})):{status:`valid`,value:result.status===`valid`?result.value:this._def.catchValue({get error(){return new ZodError(newCtx.common.issues)},input:newCtx.data})}}removeCatch(){return this._def.innerType}};ZodCatch.create=(type,params)=>new ZodCatch({innerType:type,typeName:ZodFirstPartyTypeKind.ZodCatch,catchValue:typeof params.catch==`function`?params.catch:()=>params.catch,...processCreateParams(params)});var ZodNaN=class extends ZodType{_parse(input){let parsedType=this._getType(input);if(parsedType!==ZodParsedType.nan){let ctx=this._getOrReturnCtx(input);return addIssueToContext(ctx,{code:ZodIssueCode.invalid_type,expected:ZodParsedType.nan,received:ctx.parsedType}),INVALID}return{status:`valid`,value:input.data}}};ZodNaN.create=params=>new ZodNaN({typeName:ZodFirstPartyTypeKind.ZodNaN,...processCreateParams(params)});const BRAND=Symbol(`zod_brand`);var ZodBranded=class extends ZodType{_parse(input){let{ctx}=this._processInputParams(input),data$10=ctx.data;return this._def.type._parse({data:data$10,path:ctx.path,parent:ctx})}unwrap(){return this._def.type}},ZodPipeline=class ZodPipeline extends ZodType{_parse(input){let{status,ctx}=this._processInputParams(input);if(ctx.common.async){let handleAsync=async()=>{let inResult=await this._def.in._parseAsync({data:ctx.data,path:ctx.path,parent:ctx});return inResult.status===`aborted`?INVALID:inResult.status===`dirty`?(status.dirty(),DIRTY(inResult.value)):this._def.out._parseAsync({data:inResult.value,path:ctx.path,parent:ctx})};return handleAsync()}else{let inResult=this._def.in._parseSync({data:ctx.data,path:ctx.path,parent:ctx});return inResult.status===`aborted`?INVALID:inResult.status===`dirty`?(status.dirty(),{status:`dirty`,value:inResult.value}):this._def.out._parseSync({data:inResult.value,path:ctx.path,parent:ctx})}}static create(a$2,b$3){return new ZodPipeline({in:a$2,out:b$3,typeName:ZodFirstPartyTypeKind.ZodPipeline})}},ZodReadonly=class extends ZodType{_parse(input){let result=this._def.innerType._parse(input),freeze=data$10=>(isValid(data$10)&&(data$10.value=Object.freeze(data$10.value)),data$10);return isAsync(result)?result.then(data$10=>freeze(data$10)):freeze(result)}unwrap(){return this._def.innerType}};ZodReadonly.create=(type,params)=>new ZodReadonly({innerType:type,typeName:ZodFirstPartyTypeKind.ZodReadonly,...processCreateParams(params)});const late={object:ZodObject.lazycreate};var ZodFirstPartyTypeKind;(function(ZodFirstPartyTypeKind$1){ZodFirstPartyTypeKind$1.ZodString=`ZodString`,ZodFirstPartyTypeKind$1.ZodNumber=`ZodNumber`,ZodFirstPartyTypeKind$1.ZodNaN=`ZodNaN`,ZodFirstPartyTypeKind$1.ZodBigInt=`ZodBigInt`,ZodFirstPartyTypeKind$1.ZodBoolean=`ZodBoolean`,ZodFirstPartyTypeKind$1.ZodDate=`ZodDate`,ZodFirstPartyTypeKind$1.ZodSymbol=`ZodSymbol`,ZodFirstPartyTypeKind$1.ZodUndefined=`ZodUndefined`,ZodFirstPartyTypeKind$1.ZodNull=`ZodNull`,ZodFirstPartyTypeKind$1.ZodAny=`ZodAny`,ZodFirstPartyTypeKind$1.ZodUnknown=`ZodUnknown`,ZodFirstPartyTypeKind$1.ZodNever=`ZodNever`,ZodFirstPartyTypeKind$1.ZodVoid=`ZodVoid`,ZodFirstPartyTypeKind$1.ZodArray=`ZodArray`,ZodFirstPartyTypeKind$1.ZodObject=`ZodObject`,ZodFirstPartyTypeKind$1.ZodUnion=`ZodUnion`,ZodFirstPartyTypeKind$1.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,ZodFirstPartyTypeKind$1.ZodIntersection=`ZodIntersection`,ZodFirstPartyTypeKind$1.ZodTuple=`ZodTuple`,ZodFirstPartyTypeKind$1.ZodRecord=`ZodRecord`,ZodFirstPartyTypeKind$1.ZodMap=`ZodMap`,ZodFirstPartyTypeKind$1.ZodSet=`ZodSet`,ZodFirstPartyTypeKind$1.ZodFunction=`ZodFunction`,ZodFirstPartyTypeKind$1.ZodLazy=`ZodLazy`,ZodFirstPartyTypeKind$1.ZodLiteral=`ZodLiteral`,ZodFirstPartyTypeKind$1.ZodEnum=`ZodEnum`,ZodFirstPartyTypeKind$1.ZodEffects=`ZodEffects`,ZodFirstPartyTypeKind$1.ZodNativeEnum=`ZodNativeEnum`,ZodFirstPartyTypeKind$1.ZodOptional=`ZodOptional`,ZodFirstPartyTypeKind$1.ZodNullable=`ZodNullable`,ZodFirstPartyTypeKind$1.ZodDefault=`ZodDefault`,ZodFirstPartyTypeKind$1.ZodCatch=`ZodCatch`,ZodFirstPartyTypeKind$1.ZodPromise=`ZodPromise`,ZodFirstPartyTypeKind$1.ZodBranded=`ZodBranded`,ZodFirstPartyTypeKind$1.ZodPipeline=`ZodPipeline`,ZodFirstPartyTypeKind$1.ZodReadonly=`ZodReadonly`})(ZodFirstPartyTypeKind||={});const stringType=ZodString.create,numberType=ZodNumber.create,nanType=ZodNaN.create,bigIntType=ZodBigInt.create,booleanType=ZodBoolean.create,dateType=ZodDate.create,symbolType=ZodSymbol.create,undefinedType=ZodUndefined.create,nullType=ZodNull.create,anyType=ZodAny.create,unknownType=ZodUnknown.create,neverType=ZodNever.create,voidType=ZodVoid.create,arrayType=ZodArray.create,objectType=ZodObject.create,strictObjectType=ZodObject.strictCreate,unionType=ZodUnion.create,discriminatedUnionType=ZodDiscriminatedUnion.create,intersectionType=ZodIntersection.create,tupleType=ZodTuple.create,recordType=ZodRecord.create,mapType=ZodMap.create,setType=ZodSet.create,functionType=ZodFunction.create,lazyType=ZodLazy.create,literalType=ZodLiteral.create,enumType=ZodEnum.create,nativeEnumType=ZodNativeEnum.create,promiseType=ZodPromise.create,effectsType=ZodEffects.create,optionalType=ZodOptional.create,nullableType=ZodNullable.create,preprocessType=ZodEffects.createWithPreprocess,pipelineType=ZodPipeline.create,tools$1=[tool({name:`debug_random_number`,description:`Generate a random number between 0 and 1`,execute:async()=>new Promise(resolve$1=>{setTimeout(()=>{resolve$1(Math.random().toString())},1e3)}),parameters:objectType({})})],debug=async()=>Promise.all(tools$1);function __classPrivateFieldGet(receiver,state,kind,f$3){if(kind===`a`&&!f$3)throw TypeError(`Private accessor was defined without a getter`);if(typeof state==`function`?receiver!==state||!f$3:!state.has(receiver))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return kind===`m`?f$3:kind===`a`?f$3.call(receiver):f$3?f$3.value:state.get(receiver)}function __classPrivateFieldSet(receiver,state,value$1,kind,f$3){if(kind===`m`)throw TypeError(`Private method is not writable`);if(kind===`a`&&!f$3)throw TypeError(`Private accessor was defined without a setter`);if(typeof state==`function`?receiver!==state||!f$3:!state.has(receiver))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return kind===`a`?f$3.call(receiver,value$1):f$3?f$3.value=value$1:state.set(receiver,value$1),value$1}var _Channel_onmessage,_Channel_nextMessageIndex,_Channel_pendingMessages,_Channel_messageEndIndex,_Resource_rid;const SERIALIZE_TO_IPC_FN=`__TAURI_TO_IPC_KEY__`;function transformCallback(callback,once=!1){return window.__TAURI_INTERNALS__.transformCallback(callback,once)}var Channel=class{constructor(onmessage){_Channel_onmessage.set(this,void 0),_Channel_nextMessageIndex.set(this,0),_Channel_pendingMessages.set(this,[]),_Channel_messageEndIndex.set(this,void 0),__classPrivateFieldSet(this,_Channel_onmessage,onmessage||(()=>{}),`f`),this.id=transformCallback(rawMessage=>{let index$1=rawMessage.index;if(`end`in rawMessage){index$1==__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)?this.cleanupCallback():__classPrivateFieldSet(this,_Channel_messageEndIndex,index$1,`f`);return}let message$1=rawMessage.message;if(index$1==__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)){for(__classPrivateFieldGet(this,_Channel_onmessage,`f`).call(this,message$1),__classPrivateFieldSet(this,_Channel_nextMessageIndex,__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)+1,`f`);__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)in __classPrivateFieldGet(this,_Channel_pendingMessages,`f`);){let message$2=__classPrivateFieldGet(this,_Channel_pendingMessages,`f`)[__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)];__classPrivateFieldGet(this,_Channel_onmessage,`f`).call(this,message$2),delete __classPrivateFieldGet(this,_Channel_pendingMessages,`f`)[__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)],__classPrivateFieldSet(this,_Channel_nextMessageIndex,__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)+1,`f`)}__classPrivateFieldGet(this,_Channel_nextMessageIndex,`f`)===__classPrivateFieldGet(this,_Channel_messageEndIndex,`f`)&&this.cleanupCallback()}else __classPrivateFieldGet(this,_Channel_pendingMessages,`f`)[index$1]=message$1})}cleanupCallback(){window.__TAURI_INTERNALS__.unregisterCallback(this.id)}set onmessage(handler){__classPrivateFieldSet(this,_Channel_onmessage,handler,`f`)}get onmessage(){return __classPrivateFieldGet(this,_Channel_onmessage,`f`)}[(_Channel_onmessage=new WeakMap,_Channel_nextMessageIndex=new WeakMap,_Channel_pendingMessages=new WeakMap,_Channel_messageEndIndex=new WeakMap,SERIALIZE_TO_IPC_FN)](){return`__CHANNEL__:${this.id}`}toJSON(){return this[SERIALIZE_TO_IPC_FN]()}};async function invoke(cmd,args={},options$1){return window.__TAURI_INTERNALS__.invoke(cmd,args,options$1)}_Resource_rid=new WeakMap;async function connectServer(command,args){await invoke(`plugin:mcp|connect_server`,{command,args})}async function disconnectServer(){await invoke(`plugin:mcp|disconnect_server`)}async function listTools(){return await invoke(`plugin:mcp|list_tools`)}async function callTool(name$2,args){return await invoke(`plugin:mcp|call_tool`,{name:name$2,args})}const tools=[tool({name:`mcp_list_tools`,description:`List all tools available on the MCP server`,execute:async(_$2,__)=>await listTools(),parameters:objectType({})}),tool({name:`mcp_connect_server`,description:`Connect to the MCP server. If "success", the connection to the MCP server is successful. Otherwise, the connection fails.`,execute:async({command,args})=>(await connectServer(command,args),`success`),parameters:objectType({command:stringType().describe(`The command to connect to the MCP server`),args:arrayType(stringType()).describe(`The arguments to pass to the MCP server`)})}),tool({name:`mcp_disconnect_server`,description:`Disconnect from the MCP server. If "success", the disconnection from the MCP server is successful. Otherwise, the disconnection fails.`,execute:async()=>(await disconnectServer(),`success`),parameters:objectType({})}),tool({name:`mcp_call_tool`,description:`Call a tool on the MCP server. The result is a list of content and a boolean indicating whether the tool call is an error.`,execute:async({name:name$2,parameters})=>{let parametersObject=Object.fromEntries(parameters.map(({name:name$3,value:value$1})=>[name$3,value$1])),result=await callTool(name$2,parametersObject);return result},parameters:objectType({name:stringType().describe(`The name of the tool to call`),parameters:arrayType(objectType({name:stringType().describe(`The name of the parameter`),value:unionType([stringType(),numberType(),booleanType(),objectType({})]).describe(`The value of the parameter, it can be a string, a number, a boolean, or an object`)})).describe(`The parameters to pass to the tool`)})})],mcp=async()=>Promise.all(tools),useLLM=defineStore(`llm`,()=>{async function stream(model,chatProvider,messages,options$1){let headers=options$1?.headers;return await streamText({...chatProvider.chat(model),maxSteps:10,messages:messages.map(msg=>({...msg,content:msg.role===`error`?`User encountered error: ${msg.content}`:msg.content,role:msg.role===`error`?`user`:msg.role})),headers,tools:[...await mcp(),...await debug()],onEvent(event){event.type===`tool-call`?options$1?.onToolCall?.(event.toolCall):event.type===`tool-call-result`&&options$1?.onToolCallResult?.({id:event.id,result:event.result})}})}async function models$1(apiUrl,apiKey){if(apiUrl===``)return[];try{return await listModels({baseURL:apiUrl.endsWith(`/`)?apiUrl:`${apiUrl}/`,apiKey})}catch(err){if(String(err).includes(`Failed to construct 'URL': Invalid URL`))return[];throw err}}return{models:models$1,stream}}),createChatProvider=options$1=>({chat:model=>Object.assign(options$1,{model})}),createEmbedProvider=options$1=>({embed:model=>Object.assign(options$1,{model})}),createImageProvider=options$1=>({image:model=>Object.assign(options$1,{model})}),createModelProvider=options$1=>({model:()=>options$1}),createSpeechProvider=options$1=>({speech:model=>Object.assign(options$1,{model})}),createTranscriptionProvider=options$1=>({transcription:model=>Object.assign(options$1,{model})}),createMetadataProvider=(id,otherMeta)=>({metadata:{id,...otherMeta}}),merge$1=(...arr)=>Object.assign(arr[0],...arr.slice(1)),createAnthropic=(apiKey,baseURL=`https://api.anthropic.com/v1/`)=>merge$1(createMetadataProvider(`anthropic`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createDeepSeek=(apiKey,baseURL=`https://api.deepseek.com/`)=>merge$1(createMetadataProvider(`deepseek`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createFireworks=(apiKey,baseURL=`https://api.fireworks.ai/inference/v1/`)=>merge$1(createMetadataProvider(`fireworks`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createGoogleGenerativeAI=(apiKey,baseURL=`https://generativelanguage.googleapis.com/v1beta/openai/`)=>merge$1(createMetadataProvider(`google-generative-ai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createMistral=(apiKey,baseURL=`https://api.mistral.ai/v1/`)=>merge$1(createMetadataProvider(`mistral`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createMoonshot=(apiKey,baseURL=`https://api.moonshot.cn/v1/`)=>merge$1(createMetadataProvider(`moonshot`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createNovita=(apiKey,baseURL=`https://api.novita.ai/v3/openai/`)=>merge$1(createMetadataProvider(`novita`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createOpenAI=(apiKey,baseURL=`https://api.openai.com/v1/`)=>merge$1(createMetadataProvider(`openai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createImageProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL}),createSpeechProvider({apiKey,baseURL}),createTranscriptionProvider({apiKey,baseURL})),createOpenRouter=(apiKey,baseURL=``)=>merge$1(createMetadataProvider(`openrouter`),{chat:(model,openRouterOptions)=>{let requestOptions={apiKey,baseURL,model},toOpenRouterOptions=({extraHeaders,models:models$1,provider})=>{extraHeaders!=null&&(requestOptions.headers??={},Object.assign(requestOptions.headers,extraHeaders));let transformedProvider;return provider!=null&&(transformedProvider=objCamelToSnake$1(provider)),objCamelToSnake$1({models:models$1,provider:transformedProvider})};return{...openRouterOptions?toOpenRouterOptions(openRouterOptions):{},...requestOptions}}},createModelProvider({apiKey,baseURL})),createPerplexity=(apiKey,baseURL=`https://api.perplexity.ai/`)=>merge$1(createMetadataProvider(`perplexity`),createChatProvider({apiKey,baseURL})),createTogetherAI=(apiKey,baseURL=`https://api.together.xyz/v1/`)=>merge$1(createMetadataProvider(`together-ai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL,fetch:async(...args)=>globalThis.fetch(...args).then(async res=>res.json()).then(data$10=>Response.json({data:data$10,object:`list`}))})),createWorkersAI=(apiKey,accountId)=>{let baseURL=`https://api.cloudflare.com/client/v4/accounts/${accountId}/ai/v1/`;return merge$1(createMetadataProvider(`workers-ai`),createChatProvider({apiKey,baseURL}),createEmbedProvider({apiKey,baseURL}))},createXAI=(apiKey,baseURL=`https://api.x.ai/v1/`)=>merge$1(createMetadataProvider(`xai`),createChatProvider({apiKey,baseURL}),createModelProvider({apiKey,baseURL})),createOllama=(baseURL=`http://localhost:11434/v1/`)=>merge$1(createMetadataProvider(`ollama`),createChatProvider({baseURL}),createEmbedProvider({baseURL}),createModelProvider({baseURL})),decodeBase64=b64=>{let binString=atob(b64),size$1=binString.length,bytes=new Uint8Array(size$1);for(let i$1=0;i$1merge$1(createMetadataProvider(`player2`),createChatProvider({baseURL,headers:{"player2-game-key":gameKey}}),createSpeechProvider({baseURL,fetch:async(input,reqInit)=>{let newUrl=`${input.toString().slice(0,-12)}tts/speak`;try{let{input:input2,response_format,speed,voice,...rest}=JSON.parse(reqInit?.body),modified={audio_format:response_format,play_in_app:!1,speed:speed??1,text:input2,voice_ids:voice==null?[]:[voice],...rest};reqInit&&(reqInit.body=JSON.stringify(modified))}catch(err){console.warn(`Could not parse body as JSON:`,err)}return globalThis.fetch(newUrl,reqInit).then(async res=>res.json()).then(json=>{let base64=json.data??``,bytes=decodeBase64(base64);return new Response(bytes,{headers:{"Content-Type":`audio/mpeg`},status:200})})},headers:{"player2-game-key":gameKey}}));async function check(){try{if(isInNodejsRuntime())return{supported:!1,isNode:!0,reason:``,fp16Supported:!1};if(typeof navigator>`u`||!navigator.gpu)return{supported:!1,isNode:!1,reason:`WebGPU is not available (navigator.gpu is undefined)`,fp16Supported:!1};let adapter=await navigator.gpu.requestAdapter();return adapter?{supported:!0,isNode:!1,reason:``,adapter,fp16Supported:adapter.features.has(`shader-f16`)}:{supported:!1,isNode:!1,reason:`WebGPU is not supported (no adapter found)`,fp16Supported:!1}}catch(error){let errorMessage=error instanceof Error?error.toString():String(error);return{supported:!1,isNode:!1,reason:errorMessage,fp16Supported:!1}}}function isInNodejsRuntime(){return typeof process<`u`&&`versions`in process&&process.versions!=null&&typeof process.versions==`object`&&`node`in process.versions&&process.versions.node!=null}async function isWebGPUSupported(){return check().then(result=>result.supported)}const merge=(...arr)=>Object.assign(arr[0],...arr.slice(1));var XSAIError=class extends Error{response;constructor(message$1,response){super(message$1),this.name=`XSAIError`,this.response=response}};const strCamelToSnake=str=>str.replace(/[A-Z]/g,s$1=>`_${s$1.toLowerCase()}`),objCamelToSnake=obj=>Object.fromEntries(Object.entries(obj).map(([k$4,v$1])=>[strCamelToSnake(k$4),v$1])),clean$1=obj=>Object.fromEntries(Object.entries(obj).filter(([,v$1])=>v$1!==void 0)),requestHeaders=(headers,apiKey)=>clean$1({Authorization:apiKey===void 0?void 0:`Bearer ${apiKey}`,...headers}),requestURL=(path,baseURL)=>{let base=baseURL.toString();return new URL(path,base.endsWith(`/`)?base:`${base}/`)},responseCatch=async res=>{if(!res.ok)throw new XSAIError(`Remote sent ${res.status} response: ${await res.text()}`,res);if(!res.body)throw new XSAIError(`Response body is empty from remote server`,res);if(!(res.body instanceof ReadableStream))throw new XSAIError(`Expected Response body to be a ReadableStream, but got ${String(res.body)}; Content Type is ${res.headers.get(`Content-Type`)}`,res);return res},responseJSON=async res=>responseCatch(res).then(async res2=>{let text$5=await res2.text();try{return JSON.parse(text$5)}catch{throw Error(`Failed to parse response, response body: ${text$5}`)}});var createUnElevenLabs=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=({applyTextNormalization,languageCode,nextRequestIds,nextText,previousRequestIds,previousText,pronunciationDictionaryLocators,seed,voiceSettings})=>({extraBody:objCamelToSnake({applyTextNormalization,languageCode,nextRequestIds,nextText,previousRequestIds,previousText,pronunciationDictionaryLocators:pronunciationDictionaryLocators?pronunciationDictionaryLocators.map(pdl=>objCamelToSnake(pdl)):void 0,seed,voiceSettings:objCamelToSnake(voiceSettings??{similarityBoost:.75,stability:.5})})}),speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`elevenlabs/${model}`})},voiceProvider={voice:options$1=>(baseURL.endsWith(`v1/`)?baseURL=baseURL.slice(0,-3):baseURL.endsWith(`v1`)&&(baseURL=baseURL.slice(0,-2)),{query:`provider=elevenlabs`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL})};return merge(speechProvider,voiceProvider)},createUnMicrosoft=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=options$1=>{let{deploymentId,region,sampleRate}=options$1,extraBody={deploymentId,region,sampleRate};return`disableSsml`in options$1?extraBody.disableSsml=options$1.disableSsml:`lang`in options$1&&(extraBody.lang=options$1.lang,extraBody.gender=options$1.gender,extraBody.voice=options$1.voice),{extraBody:objCamelToSnake(extraBody)}},speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`microsoft/${model}`})},voiceProvider={voice:options$1=>(baseURL.endsWith(`v1/`)?baseURL=baseURL.slice(0,-3):baseURL.endsWith(`v1`)&&(baseURL=baseURL.slice(0,-2)),{query:`region=${options$1?.region}&provider=microsoft`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL})};return merge(speechProvider,voiceProvider)},createUnVolcengine=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=options$1=>{let extraBody={app:{appid:options$1.app?.appId,token:apiKey}};return options$1.app!==void 0&&(extraBody.app={...options$1.app,appid:options$1.app?.appId,token:apiKey}),options$1.user!==void 0&&(extraBody.user=options$1.user),options$1.audio!==void 0&&(extraBody.audio=options$1.audio),{extraBody:objCamelToSnake(extraBody)}},speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`volcengine/${model}`})},voiceProvider={voice:options$1=>(baseURL.endsWith(`v1/`)?baseURL=baseURL.slice(0,-3):baseURL.endsWith(`v1`)&&(baseURL=baseURL.slice(0,-2)),{query:`provider=volcengine`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL})};return merge(speechProvider,voiceProvider)},createUnAlibabaCloud=(apiKey,baseURL=`http://localhost:5933/v1/`)=>{let toUnSpeechOptions=options$1=>{let{sampleRate,volume,rate,pitch}=options$1,extraBody={sampleRate,volume,rate,pitch};return Object.keys(extraBody).forEach(key$1=>extraBody[key$1]===void 0&&delete extraBody[key$1]),{extraBody:objCamelToSnake(extraBody)}},speechProvider={speech:(model,options$1)=>({...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL,model:`alibaba/${model}`})},voiceProvider={voice:options$1=>{let adjustedBaseURL=baseURL;return adjustedBaseURL.endsWith(`v1/`)?adjustedBaseURL=adjustedBaseURL.slice(0,-3):adjustedBaseURL.endsWith(`v1`)&&(adjustedBaseURL=adjustedBaseURL.slice(0,-2)),{query:`provider=alibaba`,...options$1?toUnSpeechOptions(options$1):{},apiKey,baseURL:adjustedBaseURL}}};return merge(speechProvider,voiceProvider)},listVoices=async options$1=>(options$1.fetch??globalThis.fetch)(requestURL(options$1.query?`api/voices?${options$1.query}`:`api/voices`,options$1.baseURL),{headers:requestHeaders({...options$1.headers},options$1.apiKey),method:`GET`,signal:options$1.abortSignal}).then(responseJSON).then(({voices})=>voices);const models=[{model_id:`eleven_multilingual_v2`,name:`Eleven Multilingual v2`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!0,can_use_speaker_boost:!0,serves_pro_voices:!1,token_cost_factor:1,description:`Our most life-like, emotionally rich mode in 29 languages. Best for voice overs, audiobooks, post-production, or any other content creation needs.`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`},{language_id:`ru`,name:`Russian`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_flash_v2_5`,name:`Eleven Flash v2.5`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our ultra low latency model in 32 languages. Ideal for conversational use cases.`,requires_alpha_access:!1,max_characters_request_free_user:4e4,max_characters_request_subscribed_user:4e4,maximum_text_length_per_request:4e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`ru`,name:`Russian`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`},{language_id:`hu`,name:`Hungarian`},{language_id:`no`,name:`Norwegian`},{language_id:`vi`,name:`Vietnamese`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_turbo_v2_5`,name:`Eleven Turbo v2.5`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our high quality, low latency model in 32 languages. Best for developer use cases where speed matters and you need non-English languages.`,requires_alpha_access:!1,max_characters_request_free_user:4e4,max_characters_request_subscribed_user:4e4,maximum_text_length_per_request:4e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`ru`,name:`Russian`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`},{language_id:`vi`,name:`Vietnamese`},{language_id:`no`,name:`Norwegian`},{language_id:`hu`,name:`Hungarian`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_turbo_v2`,name:`Eleven Turbo v2`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our English-only, low latency model. Best for developer use cases where speed matters and you only need English. Performance is on par with Turbo v2.5.`,requires_alpha_access:!1,max_characters_request_free_user:3e4,max_characters_request_subscribed_user:3e4,maximum_text_length_per_request:3e4,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_flash_v2`,name:`Eleven Flash v2`,can_be_finetuned:!0,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our ultra low latency model in english. Ideal for conversational use cases.`,requires_alpha_access:!1,max_characters_request_free_user:3e4,max_characters_request_subscribed_user:3e4,maximum_text_length_per_request:3e4,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:.5},concurrency_group:`turbo`},{model_id:`eleven_english_sts_v2`,name:`Eleven English v2`,can_be_finetuned:!1,can_do_text_to_speech:!1,can_do_voice_conversion:!0,can_use_style:!0,can_use_speaker_boost:!0,serves_pro_voices:!1,token_cost_factor:1,description:`Our state-of-the-art speech to speech model suitable for scenarios where you need maximum control over the content and prosody of your generations.`,requires_alpha_access:!1,max_characters_request_free_user:5e3,max_characters_request_subscribed_user:5e3,maximum_text_length_per_request:5e3,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_multilingual_v1`,name:`Eleven Multilingual v1`,can_be_finetuned:!1,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our first Multilingual model, capability of generating speech in 10 languages. Now outclassed by Multilingual v2 (for content creation) and Turbo v2.5 (for low latency use cases).`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`},{language_id:`de`,name:`German`},{language_id:`pl`,name:`Polish`},{language_id:`es`,name:`Spanish`},{language_id:`it`,name:`Italian`},{language_id:`fr`,name:`French`},{language_id:`pt`,name:`Portuguese`},{language_id:`hi`,name:`Hindi`},{language_id:`ar`,name:`Arabic`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_multilingual_sts_v2`,name:`Eleven Multilingual v2`,can_be_finetuned:!0,can_do_text_to_speech:!1,can_do_voice_conversion:!0,can_use_style:!0,can_use_speaker_boost:!0,serves_pro_voices:!1,token_cost_factor:1,description:`Our cutting-edge, multilingual speech-to-speech model is designed for situations that demand unparalleled control over both the content and the prosody of the generated speech across various languages.`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`},{language_id:`ja`,name:`Japanese`},{language_id:`zh`,name:`Chinese`},{language_id:`de`,name:`German`},{language_id:`hi`,name:`Hindi`},{language_id:`fr`,name:`French`},{language_id:`ko`,name:`Korean`},{language_id:`pt`,name:`Portuguese`},{language_id:`it`,name:`Italian`},{language_id:`es`,name:`Spanish`},{language_id:`ru`,name:`Russian`},{language_id:`id`,name:`Indonesian`},{language_id:`nl`,name:`Dutch`},{language_id:`tr`,name:`Turkish`},{language_id:`fil`,name:`Filipino`},{language_id:`pl`,name:`Polish`},{language_id:`sv`,name:`Swedish`},{language_id:`bg`,name:`Bulgarian`},{language_id:`ro`,name:`Romanian`},{language_id:`ar`,name:`Arabic`},{language_id:`cs`,name:`Czech`},{language_id:`el`,name:`Greek`},{language_id:`fi`,name:`Finnish`},{language_id:`hr`,name:`Croatian`},{language_id:`ms`,name:`Malay`},{language_id:`sk`,name:`Slovak`},{language_id:`da`,name:`Danish`},{language_id:`ta`,name:`Tamil`},{language_id:`uk`,name:`Ukrainian`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`},{model_id:`eleven_monolingual_v1`,name:`Eleven English v1`,can_be_finetuned:!1,can_do_text_to_speech:!0,can_do_voice_conversion:!1,can_use_style:!1,can_use_speaker_boost:!1,serves_pro_voices:!1,token_cost_factor:1,description:`Our first ever text to speech model. Now outclassed by Multilingual v2 (for content creation) and Turbo v2.5 (for low latency use cases).`,requires_alpha_access:!1,max_characters_request_free_user:1e4,max_characters_request_subscribed_user:1e4,maximum_text_length_per_request:1e4,languages:[{language_id:`en`,name:`English`}],model_rates:{character_cost_multiplier:1},concurrency_group:`standard`}],useProvidersStore=defineStore(`providers`,()=>{let providerCredentials=useLocalStorage(`settings/credentials/providers`,{}),{t}=useI18n();async function fetchOpenRouterModels(config){try{let response=await fetch(`https://openrouter.ai/api/v1/models`,{headers:{Authorization:`Bearer ${config.apiKey.trim()}`,"Content-Type":`application/json`}});if(!response.ok)throw Error(`Failed to fetch OpenRouter models: ${response.statusText}`);let data$10=await response.json();return data$10.data.map(model=>({id:model.id,name:model.name||model.id,provider:`openrouter-ai`,description:model.description||``,contextLength:model.context_length,deprecated:!1}))}catch(error){throw console.error(`Error fetching OpenRouter models:`,error),error}}let providerMetadata={"openrouter-ai":{id:`openrouter-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.openrouter.title`,name:`OpenRouter`,descriptionKey:`settings.pages.providers.provider.openrouter.description`,description:`openrouter.ai`,icon:`i-lobe-icons:openrouter`,defaultOptions:()=>({baseUrl:`https://openrouter.ai/api/v1/`}),createProvider:config=>createOpenRouter(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>fetchOpenRouterModels(config)},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"app-local-audio-speech":{id:`app-local-audio-speech`,category:`speech`,tasks:[`text-to-speech`,`tts`],isAvailableBy:async()=>`window`in globalThis&&globalThis.window!=null&&`__TAURI__`in globalThis.window&&globalThis.window.__TAURI__!=null,nameKey:`settings.pages.providers.provider.app-local-audio-speech.title`,name:`App (Local)`,descriptionKey:`settings.pages.providers.provider.app-local-audio-speech.description`,description:`https://github.com/huggingface/candle`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`app-local-candle`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"app-local-audio-transcription":{id:`app-local-audio-transcription`,category:`transcription`,tasks:[`speech-to-text`,`automatic-speech-recognition`,`asr`,`stt`],isAvailableBy:async()=>`window`in globalThis&&globalThis.window!=null&&`__TAURI__`in globalThis.window&&globalThis.window.__TAURI__!=null,nameKey:`settings.pages.providers.provider.app-local-audio-transcription.title`,name:`App (Local)`,descriptionKey:`settings.pages.providers.provider.app-local-audio-transcription.description`,description:`https://github.com/huggingface/candle`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`app-local-candle`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"browser-local-audio-speech":{id:`browser-local-audio-speech`,category:`speech`,tasks:[`text-to-speech`,`tts`],isAvailableBy:async()=>{let webGPUAvailable=await isWebGPUSupported();if(webGPUAvailable)return!0;if(`navigator`in globalThis&&globalThis.navigator!=null&&`deviceMemory`in globalThis.navigator&&typeof globalThis.navigator.deviceMemory==`number`){let memory=globalThis.navigator.deviceMemory;if(memory>=8)return!0}return!1},nameKey:`settings.pages.providers.provider.browser-local-audio-speech.title`,name:`Browser (Local)`,descriptionKey:`settings.pages.providers.provider.browser-local-audio-speech.description`,description:`https://github.com/moeru-ai/xsai-transformers`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`browser-local-transformers`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"browser-local-audio-transcription":{id:`browser-local-audio-transcription`,category:`transcription`,tasks:[`speech-to-text`,`automatic-speech-recognition`,`asr`,`stt`],isAvailableBy:async()=>{let webGPUAvailable=await isWebGPUSupported();if(webGPUAvailable)return!0;if(`navigator`in globalThis&&globalThis.navigator!=null&&`deviceMemory`in globalThis.navigator&&typeof globalThis.navigator.deviceMemory==`number`){let memory=globalThis.navigator.deviceMemory;if(memory>=8)return!0}return!1},nameKey:`settings.pages.providers.provider.browser-local-audio-transcription.title`,name:`Browser (Local)`,descriptionKey:`settings.pages.providers.provider.browser-local-audio-transcription.description`,description:`https://github.com/moeru-ai/xsai-transformers`,icon:`i-lobe-icons:huggingface`,defaultOptions:()=>({}),createProvider:config=>createOpenAI(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`browser-local-transformers`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},ollama:{id:`ollama`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.ollama.title`,name:`Ollama`,descriptionKey:`settings.pages.providers.provider.ollama.description`,description:`ollama.com`,icon:`i-lobe-icons:ollama`,defaultOptions:()=>({baseUrl:`http://localhost:11434/v1/`}),createProvider:config=>createOllama(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOllama(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`ollama`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>config.baseUrl?fetch(`${config.baseUrl.trim()}models`).then(response=>response.ok).catch(()=>!1):!1}},"ollama-embedding":{id:`ollama-embedding`,category:`embed`,tasks:[`text-feature-extraction`],nameKey:`settings.pages.providers.provider.ollama.title`,name:`Ollama`,descriptionKey:`settings.pages.providers.provider.ollama.description`,description:`ollama.com`,icon:`i-lobe-icons:ollama`,defaultOptions:()=>({baseUrl:`http://localhost:11434/v1/`}),createProvider:config=>createOllama(config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOllama(config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`ollama`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.baseUrl}},vllm:{id:`vllm`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.vllm.title`,name:`vLLM`,descriptionKey:`settings.pages.providers.provider.vllm.description`,description:`vllm.ai`,iconColor:`i-lobe-icons:vllm`,createProvider:config=>createOllama(config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`llama-2-7b`,name:`Llama 2 (7B)`,provider:`vllm`,description:`Meta's Llama 2 7B parameter model`,contextLength:4096},{id:`llama-2-13b`,name:`Llama 2 (13B)`,provider:`vllm`,description:`Meta's Llama 2 13B parameter model`,contextLength:4096},{id:`llama-2-70b`,name:`Llama 2 (70B)`,provider:`vllm`,description:`Meta's Llama 2 70B parameter model`,contextLength:4096},{id:`mistral-7b`,name:`Mistral (7B)`,provider:`vllm`,description:`Mistral AI's 7B parameter model`,contextLength:8192},{id:`mixtral-8x7b`,name:`Mixtral (8x7B)`,provider:`vllm`,description:`Mistral AI's Mixtral 8x7B MoE model`,contextLength:32768},{id:`custom`,name:`Custom Model`,provider:`vllm`,description:`Specify a custom model name`,contextLength:0}]},validators:{validateProviderConfig:config=>!!config.baseUrl}},openai:{id:`openai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.openai.title`,name:`OpenAI`,descriptionKey:`settings.pages.providers.provider.openai.description`,description:`openai.com`,icon:`i-lobe-icons:openai`,defaultOptions:()=>({baseUrl:`https://api.openai.com/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`openai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"openai-audio-speech":{id:`openai-audio-speech`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.openai.title`,name:`OpenAI`,descriptionKey:`settings.pages.providers.provider.openai.description`,description:`openai.com`,icon:`i-lobe-icons:openai`,defaultOptions:()=>({baseUrl:`https://api.openai.com/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`openai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"openai-audio-transcription":{id:`openai-audio-transcription`,category:`transcription`,tasks:[`speech-to-text`,`automatic-speech-recognition`,`asr`,`stt`],nameKey:`settings.pages.providers.provider.openai.title`,name:`OpenAI`,descriptionKey:`settings.pages.providers.provider.openai.description`,description:`openai.com`,icon:`i-lobe-icons:openai`,defaultOptions:()=>({baseUrl:`https://api.openai.com/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`openai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},anthropic:{id:`anthropic`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.anthropic.title`,name:`Anthropic`,descriptionKey:`settings.pages.providers.provider.anthropic.description`,description:`anthropic.com`,icon:`i-lobe-icons:anthropic`,defaultOptions:()=>({baseUrl:`https://api.anthropic.com/v1/`}),createProvider:config=>createAnthropic(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`claude-3-7-sonnet-20250219`,name:`Claude 3.7 Sonnet`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-5-sonnet-20241022`,name:`Claude 3.5 Sonnet (New)`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-5-haiku-20241022`,name:`Claude 3.5 Haiku`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-5-sonnet-20240620`,name:`Claude 3.5 Sonnet (Old)`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-haiku-20240307`,name:`Claude 3 Haiku`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1},{id:`claude-3-opus-20240229`,name:`Claude 3 Opus`,provider:`anthropic`,description:``,contextLength:0,deprecated:!1}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"google-generative-ai":{id:`google-generative-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.google-generative-ai.title`,name:`Google Gemini`,descriptionKey:`settings.pages.providers.provider.google-generative-ai.description`,description:`ai.google.dev`,icon:`i-lobe-icons:gemini`,defaultOptions:()=>({baseUrl:`https://generativelanguage.googleapis.com/v1beta/openai/`}),createProvider:config=>createGoogleGenerativeAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createGoogleGenerativeAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`google-generative-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},xai:{id:`xai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.xai.title`,name:`xAI`,descriptionKey:`settings.pages.providers.provider.xai.description`,description:`x.ai`,icon:`i-lobe-icons:xai`,createProvider:config=>createXAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createXAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`xai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},deepseek:{id:`deepseek`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.deepseek.title`,name:`DeepSeek`,descriptionKey:`settings.pages.providers.provider.deepseek.description`,description:`deepseek.com`,iconColor:`i-lobe-icons:deepseek`,createProvider:config=>createDeepSeek(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createDeepSeek(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`deepseek`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},elevenlabs:{id:`elevenlabs`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.elevenlabs.title`,name:`ElevenLabs`,descriptionKey:`settings.pages.providers.provider.elevenlabs.description`,description:`elevenlabs.io`,icon:`i-simple-icons:elevenlabs`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`,voiceSettings:{similarityBoost:.75,stability:.5}}),createProvider:config=>createUnElevenLabs(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>models.map(model=>({id:model.model_id,name:model.name,provider:`elevenlabs`,description:model.description,contextLength:0,deprecated:!1})),listVoices:async config=>{let provider=createUnElevenLabs(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice()}),ariaIndex=voices.findIndex(voice=>voice.name.includes(`Aria`)),billIndex=voices.findIndex(voice=>voice.name.includes(`Bill`)),startIndex=ariaIndex===-1?0:ariaIndex,endIndex=billIndex===-1?voices.length-1:billIndex,lowerIndex=Math.min(startIndex,endIndex),higherIndex=Math.max(startIndex,endIndex),rearrangedVoices=[...voices.slice(0,lowerIndex),...voices.slice(higherIndex+1),...voices.slice(lowerIndex,higherIndex+1)];return rearrangedVoices.map(voice=>({id:voice.id,name:voice.name,provider:`elevenlabs`,previewURL:voice.preview_audio_url,languages:voice.languages}))}},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"microsoft-speech":{id:`microsoft-speech`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.microsoft-speech.title`,name:`Microsoft / Azure Speech`,descriptionKey:`settings.pages.providers.provider.microsoft-speech.description`,description:`speech.microsoft.com`,iconColor:`i-lobe-icons:microsoft`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`}),createProvider:config=>createUnMicrosoft(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`v1`,name:`v1`,provider:`microsoft-speech`,description:``,contextLength:0,deprecated:!1}],listVoices:async config=>{let provider=createUnMicrosoft(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice({region:config.region})});return voices.map(voice=>({id:voice.id,name:voice.name,provider:`microsoft-speech`,previewURL:voice.preview_audio_url,languages:voice.languages,gender:voice.labels?.gender}))}},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"alibaba-cloud-model-studio":{id:`alibaba-cloud-model-studio`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.alibaba-cloud-model-studio.title`,name:`Alibaba Cloud Model Studio`,descriptionKey:`settings.pages.providers.provider.alibaba-cloud-model-studio.description`,description:`bailian.console.aliyun.com`,iconColor:`i-lobe-icons:alibabacloud`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`}),createProvider:config=>createUnAlibabaCloud(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listVoices:async config=>{let provider=createUnAlibabaCloud(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice()});return voices.map(voice=>({id:voice.id,name:voice.name,provider:`alibaba-cloud-model-studio`,previewURL:voice.preview_audio_url,languages:voice.languages,gender:voice.labels?.gender}))},listModels:async()=>[{id:`cozyvoice-v1`,name:`CozyVoice`,provider:`alibaba-cloud-model-studio`,description:``,contextLength:0,deprecated:!1},{id:`cozyvoice-v2`,name:`CozyVoice (New)`,provider:`alibaba-cloud-model-studio`,description:``,contextLength:0,deprecated:!1}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},volcengine:{id:`volcengine`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.volcengine.title`,name:`settings.pages.providers.provider.volcengine.title`,descriptionKey:`settings.pages.providers.provider.volcengine.description`,description:`volcengine.com`,iconColor:`i-lobe-icons:volcengine`,defaultOptions:()=>({baseUrl:`https://unspeech.hyp3r.link/v1/`}),createProvider:config=>createUnVolcengine(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listVoices:async config=>{let provider=createUnVolcengine(config.apiKey.trim(),config.baseUrl.trim()),voices=await listVoices({...provider.voice()});return voices.map(voice=>({id:voice.id,name:voice.name,provider:`volcano-engine`,previewURL:voice.preview_audio_url,languages:voice.languages,gender:voice.labels?.gender}))},listModels:async()=>[{id:`v1`,name:`v1`,provider:`volcano-engine`,description:``,contextLength:0,deprecated:!1}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl&&!!config.app&&!!config.app.appId}},"together-ai":{id:`together-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.together.title`,name:`Together.ai`,descriptionKey:`settings.pages.providers.provider.together.description`,description:`together.ai`,iconColor:`i-lobe-icons:together`,createProvider:config=>createTogetherAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createTogetherAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`together-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"novita-ai":{id:`novita-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.novita.title`,name:`Novita`,descriptionKey:`settings.pages.providers.provider.novita.description`,description:`novita.ai`,iconColor:`i-lobe-icons:novita`,createProvider:config=>createNovita(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createNovita(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`novita-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"fireworks-ai":{id:`fireworks-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.fireworks.title`,name:`Fireworks.ai`,descriptionKey:`settings.pages.providers.provider.fireworks.description`,description:`fireworks.ai`,icon:`i-lobe-icons:fireworks`,createProvider:config=>createFireworks(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createFireworks(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`fireworks-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"featherless-ai":{id:`featherless-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.featherless.title`,name:`Featherless.ai`,descriptionKey:`settings.pages.providers.provider.featherless.description`,description:`featherless.ai`,icon:`i-lobe-icons:featherless-ai`,defaultOptions:()=>({baseUrl:`https://api.featherless.ai/v1/`}),createProvider:config=>createOpenAI(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createOpenAI(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`featherless-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"cloudflare-workers-ai":{id:`cloudflare-workers-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.cloudflare-workers-ai.title`,name:`Cloudflare Workers AI`,descriptionKey:`settings.pages.providers.provider.cloudflare-workers-ai.description`,description:`cloudflare.com`,iconColor:`i-lobe-icons:cloudflare`,createProvider:config=>createWorkersAI(config.apiKey.trim(),config.accountId),capabilities:{listModels:async()=>[]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.accountId}},"perplexity-ai":{id:`perplexity-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.perplexity.title`,name:`Perplexity`,descriptionKey:`settings.pages.providers.provider.perplexity.description`,description:`perplexity.ai`,icon:`i-lobe-icons:perplexity`,defaultOptions:()=>({baseUrl:`https://api.perplexity.ai`}),createProvider:config=>createPerplexity(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`sonar-small-online`,name:`Sonar Small (Online)`,provider:`perplexity-ai`,description:`Efficient model with online search capabilities`,contextLength:12e3},{id:`sonar-medium-online`,name:`Sonar Medium (Online)`,provider:`perplexity-ai`,description:`Balanced model with online search capabilities`,contextLength:12e3},{id:`sonar-large-online`,name:`Sonar Large (Online)`,provider:`perplexity-ai`,description:`Powerful model with online search capabilities`,contextLength:12e3},{id:`codey-small`,name:`Codey Small`,provider:`perplexity-ai`,description:`Specialized for code generation and understanding`,contextLength:12e3},{id:`codey-large`,name:`Codey Large`,provider:`perplexity-ai`,description:`Advanced code generation and understanding`,contextLength:12e3}]},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"mistral-ai":{id:`mistral-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.mistral.title`,name:`Mistral`,descriptionKey:`settings.pages.providers.provider.mistral.description`,description:`mistral.ai`,iconColor:`i-lobe-icons:mistral`,createProvider:config=>createMistral(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createMistral(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`mistral-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},"moonshot-ai":{id:`moonshot-ai`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.moonshot.title`,name:`Moonshot AI`,descriptionKey:`settings.pages.providers.provider.moonshot.description`,description:`moonshot.ai`,icon:`i-lobe-icons:moonshot`,createProvider:config=>createMoonshot(config.apiKey.trim(),config.baseUrl.trim()),capabilities:{listModels:async config=>(await listModels({...createMoonshot(config.apiKey.trim(),config.baseUrl.trim()).model()})).map(model=>({id:model.id,name:model.id,provider:`moonshot-ai`,description:``,contextLength:0,deprecated:!1}))},validators:{validateProviderConfig:config=>!!config.apiKey&&!!config.baseUrl}},player2:{id:`player2`,category:`chat`,tasks:[`text-generation`],nameKey:`settings.pages.providers.provider.player2.title`,name:`Player2`,descriptionKey:`settings.pages.providers.provider.player2.description`,description:`player2.game`,icon:`i-lobe-icons:player2`,defaultOptions:()=>({baseUrl:`http://localhost:4315/v1/`}),createProvider:config=>createPlayer2(config.baseUrl.trim()),capabilities:{listModels:async()=>[{id:`player2-model`,name:`Player2 Model`,provider:`player2`}]},validators:{validateProviderConfig:config=>!!config.baseUrl}},"player2-speech":{id:`player2-speech`,category:`speech`,tasks:[`text-to-speech`],nameKey:`settings.pages.providers.provider.player2.title`,name:`Player2 Speech`,descriptionKey:`settings.pages.providers.provider.player2.description`,description:`player2.game`,icon:`i-lobe-icons:player2`,defaultOptions:()=>({baseUrl:`http://localhost:4315/v1/`}),createProvider:config=>createPlayer2(config.baseUrl.trim(),`airi`),capabilities:{listVoices:async()=>await fetch(`http://localhost:4315/v1/tts/voices`).then(res=>res.json()).then(({voices})=>voices.map(({id,language,name:name$2,gender})=>({id,name:name$2,provider:`player2-speech`,gender,languages:[{american_english:{code:`en`,title:`English`},british_english:{code:`en`,title:`English`},japanese:{code:`ja`,title:`Japanese`},mandarin_chinese:{code:`zh`,title:`Chinese`},spanish:{code:`es`,title:`Spanish`},french:{code:`fr`,title:`French`},hindi:{code:`hi`,title:`Hindi`},italian:{code:`it`,title:`Italian`},brazilian_portuguese:{code:`pt`,title:`Portuguese`}}[language]]})))},validators:{validateProviderConfig:config=>!!config.baseUrl}}};async function validateProvider(providerId){let config=providerCredentials.value[providerId];if(!config)return!1;let metadata=providerMetadata[providerId];return metadata?await metadata.validators.validateProviderConfig(config):!1}let configuredProviders=ref({});function initializeProvider(providerId){if(!providerCredentials.value[providerId]){let metadata=providerMetadata[providerId],defaultOptions=metadata.defaultOptions?.()||{};providerCredentials.value[providerId]={baseUrl:defaultOptions.baseUrl||``}}}Object.keys(providerMetadata).forEach(initializeProvider);async function updateConfigurationStatus(){await Promise.all(Object.keys(providerMetadata).map(async providerId=>{configuredProviders.value[providerId]=await validateProvider(providerId)}))}updateConfigurationStatus(),watch(providerCredentials,updateConfigurationStatus,{deep:!0});let availableProviders=computed(()=>Object.keys(providerMetadata).filter(providerId=>configuredProviders.value[providerId])),availableModels=ref({}),isLoadingModels=ref({}),modelLoadError=ref({});async function fetchModelsForProvider(providerId){let config=providerCredentials.value[providerId];if(!config)return[];let metadata=providerMetadata[providerId];if(!metadata)return[];isLoadingModels.value[providerId]=!0,modelLoadError.value[providerId]=null;try{let models$1=metadata.capabilities.listModels?await metadata.capabilities.listModels(config):[];return availableModels.value[providerId]=models$1.map(model=>({id:model.id,name:model.name,description:model.description,contextLength:model.contextLength,deprecated:model.deprecated,provider:providerId})),availableModels.value[providerId]}catch(error){return console.error(`Error fetching models for ${providerId}:`,error),modelLoadError.value[providerId]=error instanceof Error?error.message:`Unknown error`,[]}finally{isLoadingModels.value[providerId]=!1}}function getModelsForProvider(providerId){return availableModels.value[providerId]||[]}let allAvailableModels=computed(()=>{let models$1=[];for(let providerId of availableProviders.value)models$1.push(...availableModels.value[providerId]||[]);return models$1});async function loadModelsForConfiguredProviders(){for(let providerId of availableProviders.value)providerMetadata[providerId].capabilities.listModels&&await fetchModelsForProvider(providerId)}function getProviderMetadata(providerId){let metadata=providerMetadata[providerId];if(!metadata)throw Error(`Provider metadata for ${providerId} not found`);return{...metadata,localizedName:t(metadata.nameKey,metadata.name),localizedDescription:t(metadata.descriptionKey,metadata.description)}}let allProvidersMetadata=computed(()=>Object.values(providerMetadata).map(metadata=>({...metadata,localizedName:t(metadata.nameKey,metadata.name),localizedDescription:t(metadata.descriptionKey,metadata.description),configured:configuredProviders.value[metadata.id]||!1})));function getProviderInstance(providerId){let config=providerCredentials.value[providerId];if(!config)throw Error(`Provider credentials for ${providerId} not found`);let metadata=providerMetadata[providerId];if(!metadata)throw Error(`Provider metadata for ${providerId} not found`);try{return metadata.createProvider(config)}catch(error){throw console.error(`Error creating provider instance for ${providerId}:`,error),error}}let availableProvidersMetadata=computedAsync(async()=>{let providers=[];for(let provider of allProvidersMetadata.value){let p$5=getProviderMetadata(provider.id),isAvailableBy=p$5.isAvailableBy||(()=>!0),isAvailable=await isAvailableBy();isAvailable&&providers.push(provider)}return providers},[]),allChatProvidersMetadata=computed(()=>availableProvidersMetadata.value.filter(metadata=>metadata.category===`chat`)),allAudioSpeechProvidersMetadata=computed(()=>availableProvidersMetadata.value.filter(metadata=>metadata.category===`speech`)),allAudioTranscriptionProvidersMetadata=computed(()=>availableProvidersMetadata.value.filter(metadata=>metadata.category===`transcription`)),configuredChatProvidersMetadata=computed(()=>allChatProvidersMetadata.value.filter(metadata=>configuredProviders.value[metadata.id])),configuredSpeechProvidersMetadata=computed(()=>allAudioSpeechProvidersMetadata.value.filter(metadata=>configuredProviders.value[metadata.id])),configuredTranscriptionProvidersMetadata=computed(()=>allAudioTranscriptionProvidersMetadata.value.filter(metadata=>configuredProviders.value[metadata.id]));function getProviderConfig(providerId){return providerCredentials.value[providerId]}return{providers:providerCredentials,getProviderConfig,availableProviders,configuredProviders,providerMetadata,getProviderMetadata,allProvidersMetadata,initializeProvider,validateProvider,availableModels,isLoadingModels,modelLoadError,fetchModelsForProvider,getModelsForProvider,allAvailableModels,loadModelsForConfiguredProviders,getProviderInstance,availableProvidersMetadata,allChatProvidersMetadata,allAudioSpeechProvidersMetadata,allAudioTranscriptionProvidersMetadata,configuredChatProvidersMetadata,configuredSpeechProvidersMetadata,configuredTranscriptionProvidersMetadata}}),useConsciousnessStore=defineStore(`consciousness`,()=>{let providersStore=useProvidersStore(),activeProvider=useLocalStorage(`settings/consciousness/active-provider`,``),activeModel=useLocalStorage(`settings/consciousness/active-model`,``),activeCustomModelName=useLocalStorage(`settings/consciousness/active-custom-model`,``),expandedDescriptions=ref({}),modelSearchQuery=ref(``),supportsModelListing=computed(()=>providersStore.getProviderMetadata(activeProvider.value)?.capabilities.listModels!==void 0),providerModels=computed(()=>providersStore.getModelsForProvider(activeProvider.value)),isLoadingActiveProviderModels=computed(()=>providersStore.isLoadingModels[activeProvider.value]||!1),activeProviderModelError=computed(()=>providersStore.modelLoadError[activeProvider.value]||null),filteredModels=computed(()=>{if(!modelSearchQuery.value.trim())return providerModels.value;let query=modelSearchQuery.value.toLowerCase().trim();return providerModels.value.filter(model=>model.name.toLowerCase().includes(query)||model.id.toLowerCase().includes(query)||model.description&&model.description.toLowerCase().includes(query))});function resetModelSelection(){activeModel.value=``,activeCustomModelName.value=``,expandedDescriptions.value={},modelSearchQuery.value=``}async function loadModelsForProvider(provider){provider&&providersStore.getProviderMetadata(activeProvider.value)?.capabilities.listModels!==void 0&&providersStore.getModelsForProvider(provider).length===0&&await providersStore.fetchModelsForProvider(provider)}let player2Interval;return watch(activeProvider,async newProvider=>{await loadModelsForProvider(newProvider),resetModelSelection(),newProvider===`player2`?player2Interval=setInterval(()=>{console.log(`Sending Player2 Health check if it is being used`),fetch(`localhost:4315/v1/health`,{method:`GET`,headers:{"player2-game-key":`airi`}}).catch(()=>{})},6e4):(player2Interval&&clearInterval(player2Interval),player2Interval=void 0)}),{activeProvider,activeModel,customModelName:activeCustomModelName,expandedDescriptions,modelSearchQuery,supportsModelListing,providerModels,isLoadingActiveProviderModels,activeProviderModelError,filteredModels,resetModelSelection,loadModelsForProvider}}),noncharacter=/[\u0000-\u0008\u000B\u000C\u000E-\u001F]/g;function escape(value$1,subset$4,unsafe$2){let result=clean(value$1);return unsafe$2?result.replace(unsafe$2,encode):encode(result);function encode(value$2){return stringifyEntitiesLight(value$2,{subset:subset$4})}}function clean(value$1){return String(value$1||``).replace(noncharacter,``)}const unsafe$1=/]]>/g,subset$3=[`>`];function cdata(node$1){return``}function comment(node$1){return``}const subset$2=[` `,` +`,` `,`"`,`&`,`'`,`/`,`<`,`=`,`>`];function name$1(value$1){return escape(value$1,subset$2)}function value(value$1,state){let result=String(value$1),quote=state.options.quote||`"`;if(state.options.quoteSmart){let other=quote===`"`?`'`:`"`;ccount(result,quote)>ccount(result,other)&&(quote=other)}return quote+escape(result,[`<`,`&`,quote])+quote}function doctype(node$1,state){let nodeName=name$1(node$1.name),pub=node$1.public,sys=node$1.system,result=``}const own$1={}.hasOwnProperty;function element(node$1,state){let nodeName=name$1(node$1.name),content$2=all(node$1,state),attributes=node$1.attributes||{},close=content$2?!1:state.options.closeEmptyElements,attrs=[],key$1;for(key$1 in attributes)if(own$1.call(attributes,key$1)){let result=attributes[key$1];result!=null&&attrs.push(name$1(key$1)+`=`+value(result,state))}return`<`+nodeName+(attrs.length===0?``:` `+attrs.join(` `))+(close?(state.options.tightClose?``:` `)+`/`:``)+`>`+content$2+(close?``:``)}const unsafe=/\?>/g,subset$1=[`>`];function instruction(node$1){let nodeName=name$1(node$1.name)||`x`,result=escape(node$1.value,subset$1,unsafe);return``}const subset=[`&`,`<`];function text(node$1){return escape(node$1.value,subset)}function raw(node$1,state){return state.options.allowDangerousXml?node$1.value:text(node$1)}const own={}.hasOwnProperty,handlers={cdata,comment,doctype,element,instruction,raw,root:all,text};function one(node$1,state){let type=node$1&&node$1.type;if(!type)throw Error("Expected node, not `"+node$1+"`");if(!own.call(handlers,type))throw Error("Cannot compile unknown node `"+type+"`");let handle$1=handlers[type],result=handle$1(node$1,state);return result}function all(parent,state){let children=parent&&parent.children||[],index$1=-1,results=[];for(;++index$1{let providersStore=useProvidersStore(),activeSpeechProvider=useLocalStorage(`settings/speech/active-provider`,``),activeSpeechModel=useLocalStorage(`settings/speech/active-model`,`eleven_multilingual_v2`),activeSpeechVoiceId=useLocalStorage(`settings/speech/voice`,``),activeSpeechVoice=ref(),pitch=useLocalStorage(`settings/speech/pitch`,0),rate=useLocalStorage(`settings/speech/rate`,1),ssmlEnabled=useLocalStorage(`settings/speech/ssml-enabled`,!1),isLoadingSpeechProviderVoices=ref(!1),speechProviderError=ref(null),availableVoices=ref({}),selectedLanguage=useLocalStorage(`settings/speech/language`,`en-US`),modelSearchQuery=ref(``),availableSpeechProvidersMetadata=computed(()=>providersStore.availableProviders.filter(id=>isSpeechProvider(id)).map(id=>providersStore.getProviderMetadata(id))),supportsModelListing=computed(()=>providersStore.getProviderMetadata(activeSpeechProvider.value)?.capabilities.listModels!==void 0),providerModels=computed(()=>providersStore.getModelsForProvider(activeSpeechProvider.value)),isLoadingActiveProviderModels=computed(()=>providersStore.isLoadingModels[activeSpeechProvider.value]||!1),activeProviderModelError=computed(()=>providersStore.modelLoadError[activeSpeechProvider.value]||null),filteredModels=computed(()=>{if(!modelSearchQuery.value.trim())return providerModels.value;let query=modelSearchQuery.value.toLowerCase().trim();return providerModels.value.filter(model=>model.name.toLowerCase().includes(query)||model.id.toLowerCase().includes(query)||model.description&&model.description.toLowerCase().includes(query))}),supportsSSML=computed(()=>[`elevenlabs`,`microsoft-speech`,`azure-speech`,`google`,`alibaba-cloud-model-studio`,`volcengine`].includes(activeSpeechProvider.value));function isSpeechProvider(providerId){return[`elevenlabs`,`microsoft-speech`,`azure-speech`,`google`,`amazon`,`alibaba-cloud-model-studio`,`volcengine`,`player2-speech`].includes(providerId)}async function loadVoicesForProvider(provider){if(!provider||!isSpeechProvider(provider))return[];isLoadingSpeechProviderVoices.value=!0,speechProviderError.value=null;try{let voices=await providersStore.getProviderMetadata(provider).capabilities.listVoices?.(providersStore.getProviderConfig(provider))||[];return availableVoices.value[provider]=voices,voices}catch(error){return console.error(`Error fetching voices for ${provider}:`,error),speechProviderError.value=error instanceof Error?error.message:`Unknown error`,[]}finally{isLoadingSpeechProviderVoices.value=!1}}function getVoicesForProvider(provider){return availableVoices.value[provider]||[]}watch(activeSpeechProvider,async newProvider=>{newProvider&&await loadVoicesForProvider(newProvider)}),onMounted(()=>{loadVoicesForProvider(activeSpeechProvider.value).then(()=>{activeSpeechVoiceId.value&&(activeSpeechVoice.value=availableVoices.value[activeSpeechProvider.value]?.find(voice=>voice.id===activeSpeechVoiceId.value))})}),watch(activeSpeechVoiceId,voiceId=>{voiceId&&(activeSpeechVoice.value=availableVoices.value[activeSpeechProvider.value]?.find(voice=>voice.id===voiceId))},{immediate:!0}),watch(availableVoices,voices=>{activeSpeechVoiceId.value&&(activeSpeechVoice.value=voices[activeSpeechProvider.value]?.find(voice=>voice.id===activeSpeechVoiceId.value))},{immediate:!0});async function speech(provider,model,input,voice,providerConfig={}){let response=await generateSpeech({...provider.speech(model,{...providerConfig}),input,voice});return response}function generateSSML(text$5,voice,providerConfig){let pitch$1=providerConfig?.pitch,speed=providerConfig?.speed,volume=providerConfig?.volume,prosody={pitch:pitch$1==null?void 0:pitch$1>0?`+${pitch$1}%`:`-${pitch$1}%`,rate:speed==null?void 0:speed===1?`1`:`${speed}`,volume:volume==null?void 0:volume>0?`+${volume}%`:`${volume}%`},ssmlXast=x(`speak`,{version:`1.0`,xmlns:`http://www.w3.org/2001/10/synthesis`,"xml:lang":voice.languages[0]?.code||`en-US`},[x(`voice`,{name:voice.id,gender:voice.gender||`neutral`},[Object.entries(prosody).filter(([_$2,value$1])=>value$1!=null).length>0?x(`prosody`,{pitch:pitch$1==null?void 0:pitch$1>0?`+${pitch$1}%`:`-${pitch$1}%`,rate:speed==null?void 0:speed===1?`1`:`${speed}`,volume:volume==null?void 0:volume>0?`+${volume}%`:`${volume}%`},[text$5]):text$5])]);return toXml(ssmlXast)}return{activeSpeechProvider,activeSpeechModel,activeSpeechVoice,activeSpeechVoiceId,pitch,rate,ssmlEnabled,selectedLanguage,isLoadingSpeechProviderVoices,speechProviderError,availableVoices,modelSearchQuery,availableSpeechProvidersMetadata,supportsSSML,supportsModelListing,providerModels,isLoadingActiveProviderModels,activeProviderModelError,filteredModels,speech,loadVoicesForProvider,getVoicesForProvider,generateSSML,isSpeechProvider}}),useAiriCardStore=defineStore(`airi-card`,()=>{let cards=useLocalStorage(`airi-cards`,new Map),activeCardId=useLocalStorage(`airi-card-active-id`,`default`),activeCard=computed(()=>cards.value.get(activeCardId.value)),consciousnessStore=useConsciousnessStore(),speechStore=useSpeechStore(),{activeModel:activeConsciousnessModel}=storeToRefs(consciousnessStore),{activeSpeechVoiceId,activeSpeechModel}=storeToRefs(speechStore),addCard=card=>{let newCardId=crypto.randomUUID();return cards.value.set(newCardId,newAiriCard(card)),newCardId},removeCard=id=>{cards.value.delete(id)},getCard=id=>cards.value.get(id);function resolveAiriExtension(card){let existingExtension=`data`in card?card.data?.extensions?.airi:card.extensions?.airi,defaultModules={consciousness:{model:activeConsciousnessModel.value},speech:{model:activeSpeechModel.value,voice_id:activeSpeechVoiceId.value}};return existingExtension?{modules:{consciousness:{model:existingExtension.modules?.consciousness?.model??defaultModules.consciousness.model},speech:{model:existingExtension.modules?.speech?.model??defaultModules.speech.model,voice_id:existingExtension.modules?.speech?.voice_id??defaultModules.speech.voice_id,pitch:existingExtension.modules?.speech?.pitch,rate:existingExtension.modules?.speech?.rate,ssml:existingExtension.modules?.speech?.ssml,language:existingExtension.modules?.speech?.language},vrm:existingExtension.modules?.vrm,live2d:existingExtension.modules?.live2d},agents:existingExtension.agents??{}}:{modules:defaultModules,agents:{}}}function newAiriCard(card){if(`data`in card){let ccv3Card=card;return{name:ccv3Card.data.name,version:ccv3Card.data.character_version??`1.0.0`,description:ccv3Card.data.description??``,creator:ccv3Card.data.creator??``,notes:ccv3Card.data.creator_notes??``,notesMultilingual:ccv3Card.data.creator_notes_multilingual,personality:ccv3Card.data.personality??``,scenario:ccv3Card.data.scenario??``,greetings:[ccv3Card.data.first_mes,...ccv3Card.data.alternate_greetings??[]],greetingsGroupOnly:ccv3Card.data.group_only_greetings??[],systemPrompt:ccv3Card.data.system_prompt??``,postHistoryInstructions:ccv3Card.data.post_history_instructions??``,messageExample:ccv3Card.data.mes_example?ccv3Card.data.mes_example.split(` `).filter(Boolean).map(example=>example.split(` -`).map(line=>{if(line.startsWith(`{{char}}:`)||line.startsWith(`{{user}}:`))return line;throw Error(`Invalid message example format: ${line}`)})):[],tags:ccv3Card.data.tags??[],extensions:{airi:resolveAiriExtension(ccv3Card),...ccv3Card.data.extensions}}}return{...card,extensions:{airi:resolveAiriExtension(card),...card.extensions}}}return onMounted(()=>{let{t}=useI18n();cards.value.set(`default`,newAiriCard({name:`ReLU`,version:`1.0.0`,description:system_v2_default(t(`base.prompt.prefix`),t(`base.prompt.suffix`)).content}))}),watch(activeCard,newCard=>{var _extension$1$modules,_extension$1$modules2,_extension$1$modules3;if(!newCard)return;let extension$1=resolveAiriExtension(newCard);extension$1&&(activeConsciousnessModel.value=extension$1==null||(_extension$1$modules=extension$1.modules)==null||(_extension$1$modules=_extension$1$modules.consciousness)==null?void 0:_extension$1$modules.model,activeSpeechModel.value=extension$1==null||(_extension$1$modules2=extension$1.modules)==null||(_extension$1$modules2=_extension$1$modules2.speech)==null?void 0:_extension$1$modules2.model,activeSpeechVoiceId.value=extension$1==null||(_extension$1$modules3=extension$1.modules)==null||(_extension$1$modules3=_extension$1$modules3.speech)==null?void 0:_extension$1$modules3.voice_id)}),{cards,activeCard,activeCardId,addCard,removeCard,getCard,currentModels:computed(()=>({consciousness:{model:activeConsciousnessModel.value},speech:{model:activeSpeechModel.value,voice_id:activeSpeechVoiceId.value}})),systemPrompt:computed(()=>{let card=activeCard.value;if(!card)return``;let components=[card.systemPrompt,card.description,card.personality].filter(Boolean);return components.join(` -`)})}}),useChatStore=defineStore(`chat`,()=>{let{stream}=useLLM(),{systemPrompt}=storeToRefs(useAiriCardStore()),sending=ref(!1),onBeforeMessageComposedHooks=ref([]),onAfterMessageComposedHooks=ref([]),onBeforeSendHooks=ref([]),onAfterSendHooks=ref([]),onTokenLiteralHooks=ref([]),onTokenSpecialHooks=ref([]),onStreamEndHooks=ref([]),onAssistantResponseEndHooks=ref([]);function onBeforeMessageComposed(cb$1){onBeforeMessageComposedHooks.value.push(cb$1)}function onAfterMessageComposed(cb$1){onAfterMessageComposedHooks.value.push(cb$1)}function onBeforeSend(cb$1){onBeforeSendHooks.value.push(cb$1)}function onAfterSend(cb$1){onAfterSendHooks.value.push(cb$1)}function onTokenLiteral(cb$1){onTokenLiteralHooks.value.push(cb$1)}function onTokenSpecial(cb$1){onTokenSpecialHooks.value.push(cb$1)}function onStreamEnd(cb$1){onStreamEndHooks.value.push(cb$1)}function onAssistantResponseEnd(cb$1){onAssistantResponseEndHooks.value.push(cb$1)}let messages=ref([{role:`system`,content:systemPrompt.value}]),streamingMessage=ref({role:`assistant`,content:``,slices:[],tool_results:[]});async function send(sendingMessage,options$1){try{var _options$1$providerCo;if(sending.value=!0,!sendingMessage)return;for(let hook of onBeforeMessageComposedHooks.value)await hook(sendingMessage);let parser=useLlmmarkerParser({onLiteral:async literal=>{for(let hook of onTokenLiteralHooks.value)await hook(literal);streamingMessage.value.content+=literal;let lastSlice=streamingMessage.value.slices.at(-1);if(lastSlice?.type===`text`){lastSlice.text+=literal;return}streamingMessage.value.slices.push({type:`text`,text:literal})},onSpecial:async special=>{for(let hook of onTokenSpecialHooks.value)await hook(special)}}),slicesQueue=useQueue({handlers:[async ctx=>{if(ctx.data.type===`text`){await parser.consume(ctx.data.text);return}if(ctx.data.type===`tool-call`){streamingMessage.value.slices.push(ctx.data);return}ctx.data.type===`tool-call-result`&&streamingMessage.value.tool_results.push(ctx.data)}]});streamingMessage.value={role:`assistant`,content:``,slices:[],tool_results:[]},messages.value.push({role:`user`,content:sendingMessage}),messages.value.push(streamingMessage.value);let newMessages=messages.value.slice(0,messages.value.length-1).map(msg=>{if(msg.role===`assistant`){let{slices:_$2,...rest}=msg;return rest.tool_results=toRaw(rest.tool_results),toRaw(rest)}return toRaw(msg)});for(let hook of onAfterMessageComposedHooks.value)await hook(sendingMessage);for(let hook of onBeforeSendHooks.value)await hook(sendingMessage);let headers=(_options$1$providerCo=options$1.providerConfig)?.headers||{},res=await stream(options$1.model,options$1.chatProvider,newMessages,{headers,onToolCall(toolCall){slicesQueue.add({type:`tool-call`,toolCall})},onToolCallResult(toolCallResult){slicesQueue.add({type:`tool-call-result`,id:toolCallResult.id,result:toolCallResult.result})}});for(let hook of onAfterSendHooks.value)await hook(sendingMessage);let fullText=``;for await(let textPart of readableStreamToAsyncIterator(res.textStream,async v$1=>v$1))slicesQueue.add({type:`text`,text:textPart}),fullText+=textPart;await parser.end();for(let hook of onStreamEndHooks.value)await hook();for(let hook of onAssistantResponseEndHooks.value)await hook(fullText);console.debug(`LLM output:`,fullText)}catch(error){throw console.error(`Error sending message:`,error),error}finally{sending.value=!1}}return{sending,messages,streamingMessage,send,onBeforeMessageComposed,onAfterMessageComposed,onBeforeSend,onAfterSend,onTokenLiteral,onTokenSpecial,onStreamEnd,onAssistantResponseEnd}}),useMcpStore=defineStore(`mcp`,()=>{let serverCmd=useLocalStorage(`settings/mcp/server-cmd`,``),serverArgs=useLocalStorage(`settings/mcp/server-args`,``),connected=useLocalStorage(`mcp/connected`,!1);return{serverCmd,serverArgs,connected}}),useOnboardingStore=defineStore(`onboarding`,()=>{let providersStore=useProvidersStore(),hasCompletedSetup=useLocalStorage(`onboarding/completed`,!1),hasSkippedSetup=useLocalStorage(`onboarding/skipped`,!1),shouldShowSetup=ref(!1),hasEssentialProviderConfigured=computed(()=>{let essentialProviders=[`openai`,`anthropic`,`google-generative-ai`,`openrouter-ai`,`ollama`,`deepseek`];return essentialProviders.some(providerId=>providersStore.configuredProviders[providerId])}),needsOnboarding=computed(()=>hasCompletedSetup.value||hasSkippedSetup.value?(console.warn(`Onboarding already completed or skipped`),!1):hasEssentialProviderConfigured.value?(console.warn(`Essential provider already configured, no onboarding needed`),!1):!0);async function initializeSetupCheck(){needsOnboarding.value&&(await nextTick(),shouldShowSetup.value=!0)}function markSetupCompleted(){hasCompletedSetup.value=!0,hasSkippedSetup.value=!1,shouldShowSetup.value=!1}function markSetupSkipped(){hasSkippedSetup.value=!0,shouldShowSetup.value=!1}function resetSetupState(){hasCompletedSetup.value=!1,hasSkippedSetup.value=!1,shouldShowSetup.value=!1}function forceShowSetup(){shouldShowSetup.value=!0}return{hasCompletedSetup,hasSkippedSetup,shouldShowSetup,hasEssentialProviderConfigured,needsOnboarding,initializeSetupCheck,markSetupCompleted,markSetupSkipped,resetSetupState,forceShowSetup}}),WebSocket$1=globalThis.WebSocket,sleep=async delay=>new Promise(resolve$1=>setTimeout(resolve$1,delay));var Client=class{constructor(options$1){if(babelHelpers.defineProperty(this,`connected`,!1),babelHelpers.defineProperty(this,`opts`,void 0),babelHelpers.defineProperty(this,`websocket`,void 0),babelHelpers.defineProperty(this,`eventListeners`,new Map),babelHelpers.defineProperty(this,`reconnectAttempts`,0),babelHelpers.defineProperty(this,`shouldClose`,!1),this.opts={url:`ws://localhost:6121/ws`,possibleEvents:[],onError:()=>{},onClose:()=>{},autoConnect:!0,autoReconnect:!0,...options$1},this.opts.autoConnect)try{this.connect()}catch(err){console.error(err)}}async retryWithExponentialBackoff(fn$5,attempts=0,maxAttempts=-1){if(maxAttempts!==-1&&attempts>=maxAttempts){console.error(`Maximum retry attempts (${maxAttempts}) reached`);return}try{await fn$5()}catch(err){console.error(`Encountered an error when retrying`,err),await sleep(2**attempts*1e3),await this.retryWithExponentialBackoff(fn$5,attempts+1,maxAttempts)}}async tryReconnectWithExponentialBackoff(){await this.retryWithExponentialBackoff(()=>this._connect(),this.reconnectAttempts)}_connect(){return new Promise((resolve$1,reject)=>{if(this.shouldClose){resolve$1();return}if(this.connected){resolve$1();return}this.websocket=new WebSocket$1(this.opts.url),this.onEvent(`module:authenticated`,async event=>{let auth=event.data.authenticated;auth?this.tryAnnounce():this.retryWithExponentialBackoff(()=>this.tryAuthenticate())}),this.websocket.onerror=event=>{var _this$opts$onError,_this$opts;if((_this$opts$onError=(_this$opts=this.opts).onError)?.call(_this$opts,event),`error`in event&&event.error instanceof Error&&event.error.message===`Received network error or non-101 status code.`){if(this.connected=!1,!this.opts.autoReconnect){var _this$opts$onError2,_this$opts2,_this$opts$onClose,_this$opts3;(_this$opts$onError2=(_this$opts2=this.opts).onError)?.call(_this$opts2,event),(_this$opts$onClose=(_this$opts3=this.opts).onClose)?.call(_this$opts3),reject(event.error);return}reject(event.error)}},this.websocket.onclose=()=>{var _this$opts$onClose2,_this$opts4,_this$opts$onClose3,_this$opts5;(_this$opts$onClose2=(_this$opts4=this.opts).onClose)?.call(_this$opts4),this.connected=!1,this.opts.autoReconnect?this.tryReconnectWithExponentialBackoff():(_this$opts$onClose3=(_this$opts5=this.opts).onClose)?.call(_this$opts5)},this.websocket.onmessage=event=>{this.handleMessage(event)},this.websocket.onopen=()=>{this.reconnectAttempts=0,this.opts.token?this.tryAuthenticate():this.tryAnnounce(),this.connected=!0,resolve$1()}})}async connect(){await this.tryReconnectWithExponentialBackoff()}tryAnnounce(){this.send({type:`module:announce`,data:{name:this.opts.name,possibleEvents:this.opts.possibleEvents}})}tryAuthenticate(){this.opts.token&&this.send({type:`module:authenticate`,data:{token:this.opts.token||``}})}async handleMessage(event){try{let data$10=JSON.parse(event.data),listeners=this.eventListeners.get(data$10.type);if(!listeners)return;for(let listener of listeners)await listener(data$10)}catch(err){var _this$opts$onError3,_this$opts6;console.error(`Failed to parse message:`,err),(_this$opts$onError3=(_this$opts6=this.opts).onError)?.call(_this$opts6,err)}}onEvent(event,callback){this.eventListeners.get(event)||this.eventListeners.set(event,[]);let listeners=this.eventListeners.get(event);listeners&&listeners.push(callback)}send(data$10){var _this$websocket;(_this$websocket=this.websocket)?.send(JSON.stringify(data$10))}sendRaw(data$10){var _this$websocket2;(_this$websocket2=this.websocket)?.send(data$10)}close(){this.shouldClose=!0,this.connected&&this.websocket&&(this.websocket.close(),this.connected=!1)}};const useServerStore=defineStore(`server`,()=>{let server=ref();onMounted(()=>{server.value=new Client({name:`stage-web`,autoConnect:!1,autoReconnect:!0,onError:error=>{console.error(error)}})});function connect(){var _server$value;(_server$value=server.value)?.connect()}return{server,connect}}),DEFAULT_THEME_COLORS_HUE=220.44,convert=converter_default(`oklch`),getHueFrom=color$2=>{var _convert;return color$2?(_convert=convert(color$2))?.h:DEFAULT_THEME_COLORS_HUE},useSettings=defineStore(`settings`,()=>{let selectedAudioDevice=ref(),language=useLocalStorage(`settings/language`,`en`),stageView=useLocalStorage(`settings/stage/view/model-renderer`,`2d`),isAudioInputOn=useLocalStorage(`settings/audio/input`,`false`),selectedAudioDeviceId=computed(()=>{var _selectedAudioDevice$;return(_selectedAudioDevice$=selectedAudioDevice.value)?.deviceId}),{audioInputs,ensurePermissions}=useDevicesList({constraints:{audio:!0}}),live2dModelFile=ref(),live2dModelUrl=ref(`/assets/live2d/models/hiyori_pro_zh.zip`),live2dLoadSource=ref(`url`),loadingLive2dModel=ref(!1),live2dPosition=useLocalStorage(`settings/live2d/position`,{x:0,y:0}),live2dCurrentMotion=ref({group:`Idle`,index:0}),availableLive2dMotions=ref([]),live2dMotionMap=useLocalStorage(`settings/live2d/motion-map`,{}),disableTransitions=useLocalStorage(`settings/disable-transitions`,!0),usePageSpecificTransitions=useLocalStorage(`settings/use-page-specific-transitions`,!0),themeColorsHue=useLocalStorage(`settings/theme/colors/hue`,DEFAULT_THEME_COLORS_HUE),themeColorsHueDynamic=useLocalStorage(`settings/theme/colors/hue-dynamic`,!1),allowVisibleOnAllWorkspaces=useLocalStorage(`settings/allow-visible-on-all-workspaces`,!0);function setThemeColorsHue(hue$2=DEFAULT_THEME_COLORS_HUE){themeColorsHue.value=hue$2,themeColorsHueDynamic.value=!1}function applyPrimaryColorFrom(color$2){setThemeColorsHue(getHueFrom(color$2))}function isColorSelectedForPrimary(hexColor){if(themeColorsHueDynamic.value)return!1;let h$3=getHueFrom(hexColor);if(!h$3)return!1;let hueDifference=Math.abs(h$3-themeColorsHue.value);return hueDifference<.01||hueDifference>359.99}return watch(isAudioInputOn,value$1=>{value$1===`false`&&(selectedAudioDevice.value=void 0),value$1===`true`&&ensurePermissions().then(()=>{selectedAudioDevice.value=audioInputs.value[0]})}),watch(audioInputs,()=>{isAudioInputOn.value===`true`&&!selectedAudioDevice.value&&(selectedAudioDevice.value=audioInputs.value[0])},{immediate:!0}),{live2dModelFile,live2dModelUrl,live2dLoadSource,live2dCurrentMotion,live2dPosition,availableLive2dMotions,live2dMotionMap,loadingLive2dModel,disableTransitions,usePageSpecificTransitions,language,stageView,themeColorsHue,themeColorsHueDynamic,isAudioInputOn,selectedAudioDevice,selectedAudioDeviceId,allowVisibleOnAllWorkspaces,setThemeColorsHue,applyPrimaryColorFrom,isColorSelectedForPrimary}}),_hoisted_1$9={flex:`~ col md:row gap-6`},_hoisted_2$4={flex:`~ col gap-6`},_hoisted_3$1={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},_hoisted_4$1={flex:`~ col gap-4`},_hoisted_5$1={flex:`~ col gap-6`,class:`w-full md:w-[60%]`},_hoisted_6$1={"w-full":``,"rounded-xl":``};var SpeechProviderSettings_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SpeechProviderSettings`,props:{providerId:{},defaultModel:{},additionalSettings:{}},setup(__props){let props=__props,{t}=useI18n(),router$1=useRouter(),providersStore=useProvidersStore(),speechStore=useSpeechStore(),{providers}=storeToRefs(providersStore),providerMetadata=computed(()=>providersStore.getProviderMetadata(props.providerId)),apiKey=computed({get:()=>{var _providers$value$prop;return(_providers$value$prop=providers.value[props.providerId])?.apiKey||``},set:value$1=>{providers.value[props.providerId]||(providers.value[props.providerId]={}),providers.value[props.providerId].apiKey=value$1}}),baseUrl=computed({get:()=>{var _providers$value$prop2,_providerMetadata$val,_providerMetadata$val2;return(_providers$value$prop2=providers.value[props.providerId])?.baseUrl||((_providerMetadata$val=providerMetadata.value)==null||(_providerMetadata$val2=_providerMetadata$val.defaultOptions)==null?void 0:_providerMetadata$val2.call(_providerMetadata$val).baseUrl)||``},set:value$1=>{providers.value[props.providerId]||(providers.value[props.providerId]={}),providers.value[props.providerId].baseUrl=value$1}}),testText=ref(`Hello! This is a test of voice synthesis.`),isGenerating=ref(!1),audioUrl=ref(``),errorMessage=ref(``),audioPlayer=ref(null),useSSML=ref(!1),ssmlText=ref(``),activeSpeechVoice=ref(``),voiceSettings=ref({});function initializeVoiceSettings(){var _providers$value$prop3;(_providers$value$prop3=providers.value[props.providerId])?.voiceSettings?voiceSettings.value={...providers.value[props.providerId].voiceSettings}:voiceSettings.value={pitch:0,speed:1,volume:0,...props.additionalSettings}}onMounted(()=>{var _providers$value$prop4,_providers$value$prop5,_providerMetadata$val3,_providerMetadata$val4;providersStore.initializeProvider(props.providerId),apiKey.value=(_providers$value$prop4=providers.value[props.providerId])?.apiKey||``,baseUrl.value=(_providers$value$prop5=providers.value[props.providerId])?.baseUrl||((_providerMetadata$val3=providerMetadata.value)==null||(_providerMetadata$val4=_providerMetadata$val3.defaultOptions)==null?void 0:_providerMetadata$val4.call(_providerMetadata$val3).baseUrl)||``,initializeVoiceSettings(),providersStore.configuredProviders[props.providerId]&&speechStore.loadVoicesForProvider(props.providerId)});let debouncedUpdate=useDebounceFn(()=>{var _providerMetadata$val5,_providerMetadata$val6;providers.value[props.providerId]={...providers.value[props.providerId],apiKey:apiKey.value,baseUrl:baseUrl.value||((_providerMetadata$val5=providerMetadata.value)==null||(_providerMetadata$val6=_providerMetadata$val5.defaultOptions)==null?void 0:_providerMetadata$val6.call(_providerMetadata$val5).baseUrl)||``,voiceSettings:{...voiceSettings.value}}},1e3);watch([apiKey,baseUrl],debouncedUpdate),watch(voiceSettings,debouncedUpdate,{deep:!0});async function generateTestSpeech(){if(!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim())return;let provider=providersStore.getProviderInstance(props.providerId);if(!provider){console.error(`Failed to initialize speech provider`);return}if(!activeSpeechVoice.value){console.error(`No active speech voice selected`);return}isGenerating.value=!0,errorMessage.value=``;try{audioUrl.value&&stopTestAudio();let modelToUse=props.defaultModel||`default`,input=useSSML.value?ssmlText.value:testText.value,response=await generateSpeech({...provider.speech(modelToUse,{voiceSettings:voiceSettings.value}),input,voice:activeSpeechVoice.value});audioUrl.value=URL.createObjectURL(new Blob([response])),setTimeout(()=>{audioPlayer.value&&audioPlayer.value.play()},100)}catch(error){console.error(`Error generating speech:`,error),errorMessage.value=error instanceof Error?error.message:`An unknown error occurred`}finally{isGenerating.value=!1}}function stopTestAudio(){audioPlayer.value&&(audioPlayer.value.pause(),audioPlayer.value.currentTime=0),audioUrl.value&&(URL.revokeObjectURL(audioUrl.value),audioUrl.value=``)}onUnmounted(()=>{audioUrl.value&&URL.revokeObjectURL(audioUrl.value)});function handleResetVoiceSettings(){var _providerMetadata$val7,_providerMetadata$val8;voiceSettings.value={...((_providerMetadata$val7=providerMetadata.value)==null||(_providerMetadata$val8=_providerMetadata$val7.defaultOptions)==null?void 0:_providerMetadata$val8.call(_providerMetadata$val7).voiceSettings)||{}},debouncedUpdate()}function updateVoiceSetting(key$1,value$1){voiceSettings.value[key$1]=value$1}let slotData=computed(()=>({voiceSettings:voiceSettings.value,updateVoiceSettings:updateVoiceSetting,isGenerating:isGenerating.value,testText:testText.value,useSSML:useSSML.value,ssmlText:ssmlText.value,generateTestSpeech,stopTestAudio,audioUrl:audioUrl.value,audioPlayer:audioPlayer.value,errorMessage:errorMessage.value}));return(_ctx,_cache$1)=>{var _providerMetadata$val9,_providerMetadata$val10;return openBlock(),createBlock(ProviderSettingsLayout2_default,{"provider-name":(_providerMetadata$val9=providerMetadata.value)?.localizedName,"provider-icon":(_providerMetadata$val10=providerMetadata.value)?.icon,"on-back":()=>unref(router$1).back()},{default:withCtx(()=>[createBaseVNode(`div`,_hoisted_1$9,[createVNode(unref(ProviderSettingsContainer_default),{class:`w-full md:w-[40%]`},{default:withCtx(()=>[createVNode(unref(ProviderBasicSettings_default),{title:unref(t)(`settings.pages.providers.common.section.basic.title`),description:unref(t)(`settings.pages.providers.common.section.basic.description`),"on-reset":handleResetVoiceSettings},{default:withCtx(()=>{var _providerMetadata$val11;return[createVNode(unref(ProviderApiKeyInput_default),{modelValue:apiKey.value,"onUpdate:modelValue":_cache$1[0]||=$event=>apiKey.value=$event,"provider-name":(_providerMetadata$val11=providerMetadata.value)?.localizedName,placeholder:`sk-`},null,8,[`modelValue`,`provider-name`]),renderSlot(_ctx.$slots,`basic-settings`)]}),_:3},8,[`title`,`description`]),createBaseVNode(`div`,_hoisted_2$4,[createBaseVNode(`h2`,_hoisted_3$1,toDisplayString(unref(t)(`settings.pages.providers.common.section.voice.title`)),1),createBaseVNode(`div`,_hoisted_4$1,[renderSlot(_ctx.$slots,`voice-settings`,normalizeProps(guardReactiveProps(slotData.value)))])]),createVNode(unref(ProviderAdvancedSettings_default),{title:unref(t)(`settings.pages.providers.common.section.advanced.title`)},{default:withCtx(()=>{var _providerMetadata$val12,_providerMetadata$val13;return[createVNode(unref(ProviderBaseUrlInput_default),{modelValue:baseUrl.value,"onUpdate:modelValue":_cache$1[1]||=$event=>baseUrl.value=$event,placeholder:((_providerMetadata$val12=providerMetadata.value)==null||(_providerMetadata$val13=_providerMetadata$val12.defaultOptions)==null?void 0:_providerMetadata$val13.call(_providerMetadata$val12).baseUrl)||``,required:``},null,8,[`modelValue`,`placeholder`]),renderSlot(_ctx.$slots,`advanced-settings`)]}),_:3},8,[`title`])]),_:3}),createBaseVNode(`div`,_hoisted_5$1,[createBaseVNode(`div`,_hoisted_6$1,[renderSlot(_ctx.$slots,`playground`,normalizeProps(guardReactiveProps(slotData.value)))])])])]),_:3},8,[`provider-name`,`provider-icon`,`on-back`])}}}),SpeechProviderSettings_default=SpeechProviderSettings_vue_vue_type_script_setup_true_lang_default,onboarding_default=`/assets/onboarding-NsdTpLwA.png`;const _hoisted_1$8={"h-full":``,"w-full":``},_hoisted_2$3={key:0,"h-full":``,flex:``,"flex-col":``},_hoisted_3={class:`mb-2 text-center md:mb-8`,flex:``,"flex-1":``,"flex-col":``,"justify-center":``},_hoisted_4={initial:{opacity:0,scale:.5},visible:{opacity:1,scale:1},duration:500,class:`mb-1 flex justify-center md:mb-4 lg:pt-16 md:pt-8`},_hoisted_5=[`src`],_hoisted_6={initial:{opacity:0,y:10},visible:{opacity:1,y:0},duration:500,class:`mb-0 text-3xl text-neutral-800 font-bold md:mb-2 dark:text-neutral-100`},_hoisted_7={initial:{opacity:0,y:10},visible:{opacity:1,y:0},duration:500,delay:100,class:`text-sm text-neutral-600 md:text-lg dark:text-neutral-400`},_hoisted_8={key:1,"h-full":``,flex:``,"flex-col":``,"gap-4":``},_hoisted_9={bg:`white dark:#181818`,sticky:``,"top-0":``,"z-100":``,flex:``,"flex-shrink-0":``,"items-center":``,"gap-2":``},_hoisted_10={class:`flex-1 text-center text-xl text-neutral-800 font-semibold md:text-left md:text-2xl dark:text-neutral-100`},_hoisted_11={class:`flex-1 overflow-y-auto`},_hoisted_12={class:`grid grid-cols-1 gap-3 sm:grid-cols-2`},_hoisted_13={key:2,"h-full":``,flex:``,"flex-col":``,"gap-4":``},_hoisted_14={bg:`white dark:#181818`,sticky:``,"top-0":``,"z-100":``,flex:``,"flex-shrink-0":``,"items-center":``,"gap-2":``},_hoisted_15={class:`flex-1 text-center text-xl text-neutral-800 font-semibold md:text-left md:text-2xl dark:text-neutral-100`},_hoisted_16={key:0,"flex-1":``,"overflow-y-auto":``},_hoisted_17={class:`space-y-4`},_hoisted_18={key:0},_hoisted_19={key:1},_hoisted_20={key:2},_hoisted_21={key:0,class:`mt-4`};var Onboarding_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Onboarding`,emits:[`configured`,`skipped`],setup(__props,{emit:__emit}){let emit$1=__emit,step=ref(1),direction=ref(`next`),{t}=useI18n(),providersStore=useProvidersStore(),{providers,allChatProvidersMetadata}=storeToRefs(providersStore),popularProviders=computed(()=>{let popular=[`openai`,`anthropic`,`google-generative-ai`,`openrouter-ai`,`ollama`,`deepseek`];return allChatProvidersMetadata.value.filter(provider=>popular.includes(provider.id)).sort((a$2,b$3)=>popular.indexOf(a$2.id)-popular.indexOf(b$3.id))}),selectedProviderId=ref(``),apiKey=ref(``),baseUrl=ref(``),accountId=ref(``),selectedProvider=computed(()=>allChatProvidersMetadata.value.find(p$5=>p$5.id===selectedProviderId.value)||null),isValidating=ref(!1),isValid$1=ref(!1),validationMessage=ref(``),needsApiKey=computed(()=>selectedProvider.value?selectedProvider.value.id!==`ollama`&&selectedProvider.value.id!==`player2`:!1),needsBaseUrl=computed(()=>selectedProvider.value?selectedProvider.value.id!==`cloudflare-workers-ai`:!1),canSave=computed(()=>!selectedProvider.value||needsApiKey.value&&!apiKey.value.trim()||needsBaseUrl.value&&!baseUrl.value.trim()||selectedProvider.value.id===`cloudflare-workers-ai`&&!accountId.value.trim()?!1:isValid$1.value);function selectProvider(provider){var _provider$defaultOpti;selectedProviderId.value=provider.id;let defaultOptions=(_provider$defaultOpti=provider.defaultOptions)?.call(provider)||{};baseUrl.value=defaultOptions?.baseUrl||``,apiKey.value=``,accountId.value=``,isValid$1.value=!1,validationMessage.value=``}function getApiKeyPlaceholder(_providerId){let placeholders={openai:`sk-...`,anthropic:`sk-ant-...`,"google-generative-ai":`GEMINI_API_KEY`,"openrouter-ai":`sk-or-...`,deepseek:`sk-...`,xai:`xai-...`,"together-ai":`togetherapi-...`,"mistral-ai":`mis-...`,"moonshot-ai":`ms-...`,"fireworks-ai":`fw-...`,"featherless-ai":`fw-...`,"novita-ai":`nvt-...`};return placeholders[_providerId]||`API Key`}function getBaseUrlPlaceholder(_providerId){var _selectedProvider$val,_selectedProvider$val2;let defaultOptions=((_selectedProvider$val=selectedProvider.value)==null||(_selectedProvider$val2=_selectedProvider$val.defaultOptions)==null?void 0:_selectedProvider$val2.call(_selectedProvider$val))||{};return defaultOptions?.baseUrl||`https://api.example.com/v1/`}async function validateConfiguration(){if(selectedProvider.value){isValidating.value=!0,validationMessage.value=t(`settings.dialogs.onboarding.validating`);try{let config={};needsApiKey.value&&(config.apiKey=apiKey.value.trim()),needsBaseUrl.value&&(config.baseUrl=baseUrl.value.trim()),selectedProvider.value.id===`cloudflare-workers-ai`&&(config.accountId=accountId.value.trim());let metadata=providersStore.getProviderMetadata(selectedProvider.value.id);isValid$1.value=await metadata.validators.validateProviderConfig(config),isValid$1.value?validationMessage.value=t(`settings.dialogs.onboarding.validationSuccess`):validationMessage.value=t(`settings.dialogs.onboarding.validationFailed`)}catch(error){isValid$1.value=!1,validationMessage.value=t(`settings.dialogs.onboarding.validationError`,{error:error instanceof Error?error.message:String(error)})}finally{isValidating.value=!1}}}let debouncedValidateConfiguration=useDebounceFn(()=>{selectedProvider.value&&(needsApiKey.value&&!apiKey.value.trim()||needsBaseUrl.value&&!baseUrl.value.trim()||selectedProvider.value.id===`cloudflare-workers-ai`&&!accountId.value.trim()||validateConfiguration())},500);watch([apiKey,baseUrl,accountId],()=>{selectedProvider.value&&(apiKey.value||baseUrl.value||accountId.value)&&debouncedValidateConfiguration()},{deep:!0});async function handleSave(){if(!selectedProvider.value||!canSave.value)return;let config={};needsApiKey.value&&(config.apiKey=apiKey.value.trim()),needsBaseUrl.value&&(config.baseUrl=baseUrl.value.trim()),selectedProvider.value.id===`cloudflare-workers-ai`&&(config.accountId=accountId.value.trim()),providers.value[selectedProvider.value.id]={...providers.value[selectedProvider.value.id],...config},await nextTick(),emit$1(`configured`)}function handlePreviousStep(){step.value>1&&(direction.value=`previous`,step.value--)}function handleNextStep(){step.value<3?(direction.value=`next`,step.value++):handleSave()}return onMounted(()=>{popularProviders.value.length>0&&(selectedProviderId.value=popularProviders.value[0].id,selectProvider(popularProviders.value[0]))}),(_ctx,_cache$1)=>{let _directive_motion=resolveDirective(`motion`);return openBlock(),createElementBlock(`div`,_hoisted_1$8,[createVNode(Transition,{name:direction.value===`next`?`slide-next`:`slide-prev`,mode:`out-in`},{default:withCtx(()=>[step.value===1?(openBlock(),createElementBlock(`div`,_hoisted_2$3,[createBaseVNode(`div`,_hoisted_3,[withDirectives((openBlock(),createElementBlock(`div`,_hoisted_4,[createBaseVNode(`img`,{src:unref(onboarding_default),"max-h":`50`,"aspect-square":``,"h-auto":``,"w-auto":``,"object-cover":``},null,8,_hoisted_5)])),[[_directive_motion]]),withDirectives((openBlock(),createElementBlock(`h2`,_hoisted_6,[createTextVNode(toDisplayString(unref(t)(`settings.dialogs.onboarding.title`)),1)])),[[_directive_motion]]),withDirectives((openBlock(),createElementBlock(`p`,_hoisted_7,[createTextVNode(toDisplayString(unref(t)(`settings.dialogs.onboarding.description`)),1)])),[[_directive_motion]])]),withDirectives(createVNode(unref(Button_default),{initial:{opacity:0},visible:{opacity:1},duration:500,delay:200,label:unref(t)(`settings.dialogs.onboarding.start`),onClick:handleNextStep},null,8,[`label`]),[[_directive_motion]])])):step.value===2?(openBlock(),createElementBlock(`div`,_hoisted_8,[createBaseVNode(`div`,_hoisted_9,[createBaseVNode(`button`,{"outline-none":``,onClick:handlePreviousStep},_cache$1[4]||=[createBaseVNode(`div`,{class:`i-solar:alt-arrow-left-line-duotone h-5 w-5`},null,-1)]),createBaseVNode(`h2`,_hoisted_10,toDisplayString(unref(t)(`settings.dialogs.onboarding.selectProvider`)),1),_cache$1[5]||=createBaseVNode(`div`,{class:`h-5 w-5`},null,-1)]),createBaseVNode(`div`,_hoisted_11,[createBaseVNode(`div`,_hoisted_12,[(openBlock(!0),createElementBlock(Fragment,null,renderList(popularProviders.value,provider=>(openBlock(),createBlock(unref(RadioCardDetail_default),{id:provider.id,key:provider.id,modelValue:selectedProviderId.value,"onUpdate:modelValue":_cache$1[0]||=$event=>selectedProviderId.value=$event,name:`provider-selection`,value:provider.id,title:provider.localizedName||provider.id,description:provider.localizedDescription||``,onClick:$event=>selectProvider(provider)},null,8,[`id`,`modelValue`,`value`,`title`,`description`,`onClick`]))),128))])]),createVNode(unref(Button_default),{label:unref(t)(`settings.dialogs.onboarding.next`),disabled:!selectedProviderId.value,onClick:handleNextStep},null,8,[`label`,`disabled`])])):step.value===3&&selectedProvider.value?(openBlock(),createElementBlock(`div`,_hoisted_13,[createBaseVNode(`div`,_hoisted_14,[createBaseVNode(`button`,{"outline-none":``,onClick:handlePreviousStep},_cache$1[6]||=[createBaseVNode(`div`,{"i-solar:alt-arrow-left-line-duotone":``,"h-5":``,"w-5":``},null,-1)]),createBaseVNode(`h2`,_hoisted_15,toDisplayString(unref(t)(`settings.dialogs.onboarding.configureProvider`,{provider:selectedProvider.value.localizedName})),1),_cache$1[7]||=createBaseVNode(`div`,{"h-5":``,"w-5":``},null,-1)]),selectedProvider.value?(openBlock(),createElementBlock(`div`,_hoisted_16,[createVNode(unref(Callout_default),{label:`Keep your API keys and credentials safe!`,theme:`violet`},{default:withCtx(()=>_cache$1[8]||=[createBaseVNode(`div`,null,[createBaseVNode(`div`,null,` AIRI is running pure locally in your browser, and we will never steal your credentials for AI / LLM providers. But keep in mind that your API keys are sensitive information. Make sure to keep them safe and do not share them with anyone. `),createBaseVNode(`div`,null,[createTextVNode(` AIRI is open sourced at `),createBaseVNode(`div`,{"inline-flex":``,"translate-y-1":``,"items-center":``,"gap-1":``},[createBaseVNode(`div`,{"i-simple-icons:github":``,"inline-block":``}),createBaseVNode(`a`,{"decoration-underline":``,"decoration-dashed":``,href:`https://github.com/moeru-ai/airi`,target:`_blank`,rel:`noopener noreferrer`},`GitHub`)]),createTextVNode(`, if you want to check how we handle your credentials, feel free to inspect our code. `)])],-1)]),_:1,__:[8]}),createBaseVNode(`div`,_hoisted_17,[needsApiKey.value?(openBlock(),createElementBlock(`div`,_hoisted_18,[createVNode(unref(FieldInput_default),{modelValue:apiKey.value,"onUpdate:modelValue":_cache$1[1]||=$event=>apiKey.value=$event,placeholder:getApiKeyPlaceholder(selectedProvider.value.id),type:`password`,label:`API Key`,description:`Enter your API key for the selected provider.`,required:``},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0),needsBaseUrl.value?(openBlock(),createElementBlock(`div`,_hoisted_19,[createVNode(unref(FieldInput_default),{modelValue:baseUrl.value,"onUpdate:modelValue":_cache$1[2]||=$event=>baseUrl.value=$event,placeholder:getBaseUrlPlaceholder(selectedProvider.value.id),type:`text`,label:`Base URL`,description:`Enter the base URL for the provider's API.`},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0),selectedProvider.value.id===`cloudflare-workers-ai`?(openBlock(),createElementBlock(`div`,_hoisted_20,[createVNode(unref(ProviderAccountIdInput_default),{modelValue:accountId.value,"onUpdate:modelValue":_cache$1[3]||=$event=>accountId.value=$event},null,8,[`modelValue`])])):createCommentVNode(``,!0)]),validationMessage.value?(openBlock(),createElementBlock(`div`,_hoisted_21,[createBaseVNode(`div`,{class:normalizeClass([`flex items-center rounded-lg p-3`,[isValidating.value?`bg-blue-50 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300`:isValid$1.value?`bg-green-50 text-green-700 dark:bg-green-900/30 dark:text-green-300`:`bg-red-50 text-red-700 dark:bg-red-900/30 dark:text-red-300`]])},[createBaseVNode(`div`,{class:normalizeClass([`mr-2 text-lg`,[isValidating.value?`i-svg-spinners:3-dots-fade`:isValid$1.value?`i-solar:check-circle-bold-duotone`:`i-solar:danger-circle-bold-duotone`]])},null,2),createTextVNode(` `+toDisplayString(validationMessage.value),1)],2)])):createCommentVNode(``,!0)])):createCommentVNode(``,!0),createVNode(unref(Button_default),{variant:`primary`,disabled:!canSave.value,label:unref(t)(`settings.dialogs.onboarding.saveAndContinue`),onClick:handleSave},null,8,[`disabled`,`label`])])):createCommentVNode(``,!0)]),_:1},8,[`name`])])}}}),Onboarding_default=__plugin_vue_export_helper_default(Onboarding_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-b0368141`]]);(function(){"use strict";var t;try{if(typeof document<`u`){var a$2=document.createElement(`style`);a$2.nonce=(t=document.head.querySelector(`meta[property=csp-nonce]`))?.content,a$2.appendChild(document.createTextNode(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32,.72,0,1);animation-duration:.5s;animation-timing-function:cubic-bezier(.32,.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform, 100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform, 100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top],[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height, 0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left],[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height, 0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(.32,.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32,.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true]):after{content:"";position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]:after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]:after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]:after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]:after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not([data-state=closed]){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:hover,[data-vaul-handle]:active{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover: hover) and (pointer: fine){[data-vaul-drawer]{-webkit-user-select:none;user-select:none}}@media (pointer: fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{0%{transform:translate3d(0,var(--initial-transform, 100%),0)}to{transform:translateZ(0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform, 100%),0)}}@keyframes slideFromTop{0%{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}to{transform:translateZ(0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}}@keyframes slideFromLeft{0%{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}to{transform:translateZ(0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}}@keyframes slideFromRight{0%{transform:translate3d(var(--initial-transform, 100%),0,0)}to{transform:translateZ(0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform, 100%),0,0)}}`)),document.head.appendChild(a$2)}}catch(r$2){console.error(`vite-plugin-css-injected-by-js`,r$2)}})();const rt=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;const ut=e$3=>typeof e$3<`u`;function st(e$3){return JSON.parse(JSON.stringify(e$3))}function $e(e$3,n$2,s$1,i$1={}){var t,w$1,d$2;let{clone:v$1=!1,passive:D$1=!1,eventName:$$1,deep:T$1=!1,defaultValue:r$2,shouldEmit:l$1}=i$1,h$3=getCurrentInstance(),m$2=s$1||h$3?.emit||(t=h$3?.$emit)?.bind(h$3)||(d$2=(w$1=h$3?.proxy)?.$emit)?.bind(h$3?.proxy),u$1=$$1;n$2||=`modelValue`,u$1||=`update:${n$2.toString()}`;let L$1=a$2=>v$1?typeof v$1==`function`?v$1(a$2):st(a$2):a$2,H$2=()=>ut(e$3[n$2])?L$1(e$3[n$2]):r$2,p$5=a$2=>{l$1?l$1(a$2)&&m$2(u$1,a$2):m$2(u$1,a$2)};if(D$1){let a$2=H$2(),c$4=ref(a$2),f$3=!1;return watch(()=>e$3[n$2],y$2=>{f$3||(f$3=!0,c$4.value=L$1(y$2),nextTick(()=>f$3=!1))}),watch(c$4,y$2=>{!f$3&&(y$2!==e$3[n$2]||T$1)&&p$5(y$2)},{deep:T$1}),c$4}else return computed({get(){return H$2()},set(a$2){p$5(a$2)}})}const[ee,ct]=createContext(`DrawerRoot`),Ee=new WeakMap;function C(e$3,n$2,s$1=!1){if(!e$3||!(e$3 instanceof HTMLElement)||!n$2)return;let i$1={};Object.entries(n$2).forEach(([t,w$1])=>{if(t.startsWith(`--`)){e$3.style.setProperty(t,w$1);return}i$1[t]=e$3.style[t],e$3.style[t]=w$1}),!s$1&&Ee.set(e$3,i$1)}function dt(e$3,n$2){if(!e$3||!(e$3 instanceof HTMLElement))return;let s$1=Ee.get(e$3);s$1&&Object.entries(s$1).forEach(([i$1,t])=>{e$3.style[i$1]=t})}function ie(e$3,n$2){let s$1=window.getComputedStyle(e$3),i$1=s$1.transform||s$1.webkitTransform||s$1.mozTransform,t=i$1.match(/^matrix3d\((.+)\)$/);return t?Number.parseFloat(t[1].split(`, `)[_(n$2)?13:12]):(t=i$1.match(/^matrix\((.+)\)$/),t?Number.parseFloat(t[1].split(`, `)[_(n$2)?5:4]):null)}function vt(e$3){return 8*(Math.log(e$3+1)-2)}function _(e$3){switch(e$3){case`top`:case`bottom`:return!0;case`left`:case`right`:return!1;default:return e$3}}function de(e$3,n$2){if(!e$3)return()=>{};let s$1=e$3.style.cssText;return Object.assign(e$3.style,n$2),()=>{e$3.style.cssText=s$1}}function ft(...e$3){return(...n$2)=>{for(let s$1 of e$3)typeof s$1==`function`&&s$1(...n$2)}}const O={DURATION:.5,EASE:[.32,.72,0,1]},_e=.4,pt=.25,gt=100,Be=8,re=16,Ce=26,Oe=`vaul-dragging`;function mt({activeSnapPoint:e$3,snapPoints:n$2,drawerRef:s$1,overlayRef:i$1,fadeFromIndex:t,onSnapPointChange:w$1,direction:d$2}){let v$1=ref(typeof window<`u`?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);function D$1(){v$1.value={innerWidth:window.innerWidth,innerHeight:window.innerHeight}}onMounted(()=>{typeof window<`u`&&window.addEventListener(`resize`,D$1)}),onBeforeUnmount(()=>{typeof window<`u`&&window.removeEventListener(`resize`,D$1)});let $$1=computed(()=>(n$2.value&&e$3.value===n$2.value[n$2.value.length-1])??null),T$1=computed(()=>n$2.value&&n$2.value.length>0&&(t?.value||t?.value===0)&&!Number.isNaN(t?.value)&&n$2.value[t?.value??-1]===e$3.value||!n$2.value),r$2=computed(()=>{var p$5;return(p$5=n$2.value)?.findIndex(a$2=>a$2===e$3.value)??null}),l$1=computed(()=>{var p$5;return(p$5=n$2.value)?.map(a$2=>{let c$4=typeof a$2==`string`,f$3=0;if(c$4&&(f$3=Number.parseInt(a$2,10)),_(d$2.value)){let P$1=c$4?f$3:v$1.value?a$2*v$1.value.innerHeight:0;return v$1.value?d$2.value===`bottom`?v$1.value.innerHeight-P$1:-v$1.value.innerHeight+P$1:P$1}let y$2=c$4?f$3:v$1.value?a$2*v$1.value.innerWidth:0;return v$1.value?d$2.value===`right`?v$1.value.innerWidth-y$2:-v$1.value.innerWidth+y$2:y$2})??[]}),h$3=computed(()=>{var p$5;return r$2.value===null?null:(p$5=l$1.value)?.[r$2.value]}),m$2=p$5=>{var c$4,f$3,y$2,P$1;let a$2=(c$4=l$1.value)?.findIndex(x$3=>x$3===p$5)??null;nextTick(()=>{var x$3;w$1(a$2,l$1.value),C((x$3=s$1.value)?.$el,{transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,transform:_(d$2.value)?`translate3d(0, ${p$5}px, 0)`:`translate3d(${p$5}px, 0, 0)`})}),l$1.value&&a$2!==l$1.value.length-1&&a$2!==t?.value?C((f$3=i$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,opacity:`0`}):C((y$2=i$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,opacity:`1`}),e$3.value=a$2===null?null:(P$1=n$2.value)?.[a$2]??null};watch([e$3,l$1,n$2],()=>{var p$5;if(e$3.value){let a$2=(p$5=n$2.value)?.findIndex(c$4=>c$4===e$3.value)??-1;l$1.value&&a$2!==-1&&typeof l$1.value[a$2]==`number`&&m$2(l$1.value[a$2])}},{immediate:!0});function u$1({draggedDistance:p$5,closeDrawer:a$2,velocity:c$4,dismissible:f$3}){var j$1,G$1,z$2;if(t.value===void 0)return;let y$2=d$2.value===`bottom`||d$2.value===`right`?(h$3.value??0)-p$5:(h$3.value??0)+p$5,P$1=r$2.value===t.value-1,x$3=r$2.value===0,W$1=p$5>0;if(P$1&&C((j$1=i$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`}),c$4>2&&!W$1){f$3?a$2():m$2(l$1.value[0]);return}if(c$4>2&&W$1&&l$1&&n$2.value){m$2(l$1.value[n$2.value.length-1]);return}let te$2=(G$1=l$1.value)?.reduce((M$1,g$2)=>typeof M$1!=`number`||typeof g$2!=`number`?M$1:Math.abs(g$2-y$2)_e&&Math.abs(p$5)0&&$$1){m$2(l$1.value[((z$2=n$2.value)?.length??0)-1]);return}if(x$3&&M$1<0&&f$3&&a$2(),r$2.value===null)return;m$2(l$1.value[r$2.value+M$1]);return}m$2(te$2)}function L$1({draggedDistance:p$5}){var c$4;if(h$3.value===null)return;let a$2=d$2.value===`bottom`||d$2.value===`right`?h$3.value-p$5:h$3.value+p$5;(d$2.value===`bottom`||d$2.value===`right`)&&a$2l$1.value[l$1.value.length-1]||C((c$4=s$1.value)?.$el,{transform:_(d$2.value)?`translate3d(0, ${a$2}px, 0)`:`translate3d(${a$2}px, 0, 0)`})}function H$2(p$5,a$2){if(!n$2.value||typeof r$2.value!=`number`||!l$1.value||t.value===void 0)return null;let c$4=r$2.value===t.value-1;if(r$2.value>=t.value&&a$2)return 0;if(c$4&&!a$2)return 1;if(!T$1.value&&!c$4)return null;let y$2=c$4?r$2.value+1:r$2.value-1,P$1=c$4?l$1.value[y$2]-l$1.value[y$2-1]:l$1.value[y$2+1]-l$1.value[y$2],x$3=p$5/Math.abs(P$1);return c$4?1-x$3:x$3}return{isLastSnapPoint:$$1,shouldFade:T$1,getPercentageDragged:H$2,activeSnapPointIndex:r$2,onRelease:u$1,onDrag:L$1,snapPointsOffset:l$1}}function Te(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}let Q=null;function wt(e$3){let{isOpen:n$2,modal:s$1,nested:i$1,hasBeenOpened:t,preventScrollRestoration:w$1,noBodyStyles:d$2}=e$3,v$1=ref(typeof window<`u`?window.location.href:``),D$1=ref(0);function $$1(){if(Te()&&Q===null&&n$2.value&&!d$2.value){Q={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height};let{scrollX:r$2,innerHeight:l$1}=window;document.body.style.setProperty(`position`,`fixed`,`important`),Object.assign(document.body.style,{top:`${-D$1.value}px`,left:`${-r$2}px`,right:`0px`,height:`auto`}),setTimeout(()=>{requestAnimationFrame(()=>{let h$3=l$1-window.innerHeight;h$3&&D$1.value>=l$1&&(document.body.style.top=`-${D$1.value+h$3}px`)})},300)}}function T$1(){if(Te()&&Q!==null&&!d$2.value){let r$2=-Number.parseInt(document.body.style.top,10),l$1=-Number.parseInt(document.body.style.left,10);Object.assign(document.body.style,Q),window.requestAnimationFrame(()=>{if(w$1.value&&v$1.value!==window.location.href){v$1.value=window.location.href;return}window.scrollTo(l$1,r$2)}),Q=null}}return onMounted(()=>{function r$2(){D$1.value=window.scrollY}r$2(),window.addEventListener(`scroll`,r$2),onUnmounted(()=>{window.removeEventListener(`scroll`,r$2)})}),watch([n$2,t,v$1],()=>{i$1.value||!t.value||(n$2.value?(window.matchMedia(`(display-mode: standalone)`).matches||$$1(),s$1.value||setTimeout(()=>{T$1()},500)):T$1())}),{restorePositionSetting:T$1}}function ht(e$3,n$2){return e$3&&e$3.value?e$3:n$2}function yt(e$3){let{emitDrag:n$2,emitRelease:s$1,emitClose:i$1,emitOpenChange:t,open:w$1,dismissible:d$2,nested:v$1,modal:D$1,shouldScaleBackground:$$1,setBackgroundColorOnScale:T$1,scrollLockTimeout:r$2,closeThreshold:l$1,activeSnapPoint:h$3,fadeFromIndex:m$2,direction:u$1,noBodyStyles:L$1,handleOnly:H$2,preventScrollRestoration:p$5}=e$3,a$2=ref(w$1.value??!1),c$4=ref(!1),f$3=ref(!1),y$2=ref(!1),P$1=ref(null),x$3=ref(null),W$1=ref(null),te$2=ref(null),V$1=ref(null),j$1=ref(!1),G$1=ref(null),z$2=ref(0),M$1=ref(!1);ref(0);let g$2=ref(null);ref(0);let pe$2=computed(()=>{var o$1;return(o$1=g$2.value)?.$el.getBoundingClientRect().height||0}),U=ht(e$3.snapPoints,ref(void 0)),Ne$1=computed(()=>{var o$1;return U&&((o$1=U.value)?.length??0)>0}),Ae$1=ref(null),{activeSnapPointIndex:ge$1,onRelease:xe,snapPointsOffset:He$1,onDrag:Ue,shouldFade:me$1,getPercentageDragged:Le$1}=mt({snapPoints:U,activeSnapPoint:h$3,drawerRef:g$2,fadeFromIndex:m$2,overlayRef:P$1,onSnapPointChange:Me$2,direction:u$1});function Me$2(o$1,R$1){U.value&&o$1===R$1.length-1&&(x$3.value=new Date)}wt({isOpen:a$2,modal:D$1,nested:v$1,hasBeenOpened:c$4,noBodyStyles:L$1,preventScrollRestoration:p$5});function ne$1(){return(window.innerWidth-Ce)/window.innerWidth}function we$1(o$1,R$1){var k$4;if(!o$1)return!1;let b$3=o$1,B$2=(k$4=window.getSelection())?.toString(),E$2=g$2.value?ie(g$2.value.$el,u$1.value):null,A$1=new Date;if(b$3.hasAttribute(`data-vaul-no-drag`)||b$3.closest(`[data-vaul-no-drag]`))return!1;if(u$1.value===`right`||u$1.value===`left`)return!0;if(x$3.value&&A$1.getTime()-x$3.value.getTime()<500)return!1;if(E$2!==null&&(u$1.value===`bottom`?E$2>0:E$2<0))return!0;if(B$2&&B$2.length>0)return!1;if(V$1.value&&A$1.getTime()-V$1.value.getTime()b$3.clientHeight){if(b$3.scrollTop!==0)return V$1.value=new Date,!1;if(b$3.getAttribute(`role`)===`dialog`)return!0}b$3=b$3.parentNode}return!0}function ke$1(o$1){!d$2.value&&!U.value||g$2.value&&!g$2.value.$el.contains(o$1.target)||(f$3.value=!0,W$1.value=new Date,o$1.target.setPointerCapture(o$1.pointerId),z$2.value=_(u$1.value)?o$1.clientY:o$1.clientX)}function Ie(o$1){var R$1,b$3,B$2,E$2,A$1,k$4;if(g$2.value&&f$3.value){let X$2=u$1.value===`bottom`||u$1.value===`right`?1:-1,ae$1=(z$2.value-(_(u$1.value)?o$1.clientY:o$1.clientX))*X$2,le$2=ae$1>0,ye$1=U.value&&!d$2.value&&!le$2;if(ye$1&&ge$1.value===0)return;let ce$2=Math.abs(ae$1),Se$1=document.querySelector(`[data-vaul-drawer-wrapper]`)||document.querySelector(`[vaul-drawer-wrapper]`),q$1=ce$2/pe$2.value,De=Le$1(ce$2,le$2);if(De!==null&&(q$1=De),ye$1&&q$1>=1||!j$1.value&&!we$1(o$1.target,le$2))return;if((R$1=g$2?.value)==null||R$1.$el.classList.add(Oe),j$1.value=!0,C((b$3=g$2.value)?.$el,{transition:`none`}),C((B$2=P$1.value)?.$el,{transition:`none`}),U.value&&Ue({draggedDistance:ae$1}),le$2&&!U.value){let Y$2=vt(ae$1),oe$2=Math.min(Y$2*-1,0)*X$2;C((E$2=g$2.value)?.$el,{transform:_(u$1.value)?`translate3d(0, ${oe$2}px, 0)`:`translate3d(${oe$2}px, 0, 0)`});return}let qe$1=1-q$1;if((me$1.value||m$2.value&&ge$1.value===m$2.value-1)&&(n$2(q$1),C((A$1=P$1.value)?.$el,{opacity:`${qe$1}`,transition:`none`},!0)),Se$1&&P$1.value&&$$1.value){let Y$2=Math.min(ne$1()+q$1*(1-ne$1()),1),oe$2=8-q$1*8,be$2=Math.max(0,14-q$1*14);C(Se$1,{borderRadius:`${oe$2}px`,transform:_(u$1.value)?`scale(${Y$2}) translate3d(0, ${be$2}px, 0)`:`scale(${Y$2}) translate3d(${be$2}px, 0, 0)`,transition:`none`},!0)}if(!U.value){let Y$2=ce$2*X$2;C((k$4=g$2.value)?.$el,{transform:_(u$1.value)?`translate3d(0, ${Y$2}px, 0)`:`translate3d(${Y$2}px, 0, 0)`})}}}function he$2(){var b$3;if(!g$2.value)return;let o$1=document.querySelector(`[data-vaul-drawer-wrapper]`)||document.querySelector(`[vaul-drawer-wrapper]`),R$1=ie(g$2.value.$el,u$1.value);C(g$2.value.$el,{transform:`translate3d(0, 0, 0)`,transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`}),C((b$3=P$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,opacity:`1`}),$$1.value&&R$1&&R$1>0&&a$2.value&&C(o$1,{borderRadius:`${Be}px`,overflow:`hidden`,..._(u$1.value)?{transform:`scale(${ne$1()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:`top`}:{transform:`scale(${ne$1()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:`left`},transitionProperty:`transform, border-radius`,transitionDuration:`${O.DURATION}s`,transitionTimingFunction:`cubic-bezier(${O.EASE.join(`,`)})`},!0)}function K$1(o$1){g$2.value&&(i$1(),o$1||(a$2.value=!1),window.setTimeout(()=>{U.value&&(h$3.value=U.value[0])},O.DURATION*1e3))}watchEffect(()=>{if(!a$2.value&&$$1.value&&rt){let o$1=setTimeout(()=>{dt(document.body)},200);return()=>clearTimeout(o$1)}}),watch(w$1,()=>{a$2.value=w$1.value,w$1.value||K$1()});function We(o$1){if(!f$3.value||!g$2.value)return;g$2.value.$el.classList.remove(Oe),j$1.value=!1,f$3.value=!1,te$2.value=new Date;let R$1=ie(g$2.value.$el,u$1.value);if(!we$1(o$1.target,!1)||!R$1||Number.isNaN(R$1)||W$1.value===null)return;let b$3=te$2.value.getTime()-W$1.value.getTime(),B$2=z$2.value-(_(u$1.value)?o$1.clientY:o$1.clientX),E$2=Math.abs(B$2)/b$3;if(E$2>.05&&(y$2.value=!0,window.setTimeout(()=>{y$2.value=!1},200)),U.value){let k$4=u$1.value===`bottom`||u$1.value===`right`?1:-1;xe({draggedDistance:B$2*k$4,closeDrawer:K$1,velocity:E$2,dismissible:d$2.value}),s$1(!0);return}if(u$1.value===`bottom`||u$1.value===`right`?B$2>0:B$2<0){he$2(),s$1(!0);return}if(E$2>_e){K$1(),s$1(!1);return}let A$1=Math.min(g$2.value.$el.getBoundingClientRect().height??0,window.innerHeight);if(R$1>=A$1*l$1.value){K$1(),s$1(!1);return}s$1(!0),he$2()}watch(a$2,o$1=>{o$1&&(x$3.value=new Date),t(o$1)},{immediate:!0});function Ve$1(o$1){var B$2,E$2;let R$1=o$1?(window.innerWidth-re)/window.innerWidth:1,b$3=o$1?-16:0;G$1.value&&window.clearTimeout(G$1.value),C((B$2=g$2.value)?.$el,{transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,transform:`scale(${R$1}) translate3d(0, ${b$3}px, 0)`}),!o$1&&(E$2=g$2.value)!=null&&E$2.$el&&(G$1.value=window.setTimeout(()=>{var k$4,X$2;let A$1=ie((k$4=g$2.value)?.$el,u$1.value);C((X$2=g$2.value)?.$el,{transition:`none`,transform:_(u$1.value)?`translate3d(0, ${A$1}px, 0)`:`translate3d(${A$1}px, 0, 0)`})},500))}function je(o$1){var A$1;if(o$1<0)return;let R$1=_(u$1.value)?window.innerHeight:window.innerWidth,b$3=(R$1-re)/R$1,B$2=b$3+o$1*(1-b$3),E$2=-16+o$1*re;C((A$1=g$2.value)?.$el,{transform:_(u$1.value)?`scale(${B$2}) translate3d(0, ${E$2}px, 0)`:`scale(${B$2}) translate3d(${E$2}px, 0, 0)`,transition:`none`})}function ze$1(o$1){var E$2;let R$1=_(u$1.value)?window.innerHeight:window.innerWidth,b$3=o$1?(R$1-re)/R$1:1,B$2=o$1?-16:0;o$1&&C((E$2=g$2.value)?.$el,{transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,transform:_(u$1.value)?`scale(${b$3}) translate3d(0, ${B$2}px, 0)`:`scale(${b$3}) translate3d(${B$2}px, 0, 0)`})}return{open:w$1,isOpen:a$2,modal:D$1,keyboardIsOpen:M$1,hasBeenOpened:c$4,drawerRef:g$2,drawerHeightRef:pe$2,overlayRef:P$1,handleRef:Ae$1,isDragging:f$3,dragStartTime:W$1,isAllowedToDrag:j$1,snapPoints:U,activeSnapPoint:h$3,hasSnapPoints:Ne$1,pointerStart:z$2,dismissible:d$2,snapPointsOffset:He$1,direction:u$1,shouldFade:me$1,fadeFromIndex:m$2,shouldScaleBackground:$$1,setBackgroundColorOnScale:T$1,onPress:ke$1,onDrag:Ie,onRelease:We,closeDrawer:K$1,onNestedDrag:je,onNestedRelease:ze$1,onNestedOpenChange:Ve$1,emitClose:i$1,emitDrag:n$2,emitRelease:s$1,emitOpenChange:t,nested:v$1,handleOnly:H$2,noBodyStyles:L$1}}const St=defineComponent({__name:`DrawerRoot`,props:{activeSnapPoint:{default:void 0},closeThreshold:{default:pt},shouldScaleBackground:{type:Boolean,default:void 0},setBackgroundColorOnScale:{type:Boolean,default:!0},scrollLockTimeout:{default:gt},fixed:{type:Boolean,default:void 0},dismissible:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:void 0},nested:{type:Boolean,default:!1},direction:{default:`bottom`},noBodyStyles:{type:Boolean},handleOnly:{type:Boolean,default:!1},preventScrollRestoration:{type:Boolean},snapPoints:{default:void 0},fadeFromIndex:{default:void 0}},emits:[`drag`,`release`,`close`,`update:open`,`update:activeSnapPoint`,`animationEnd`],setup(e$3,{expose:n$2,emit:s$1}){let i$1=e$3,t=s$1;useSlots();let w$1=computed(()=>i$1.fadeFromIndex??(i$1.snapPoints&&i$1.snapPoints.length-1)),d$2=$e(i$1,`open`,t,{defaultValue:i$1.defaultOpen,passive:i$1.open===void 0}),v$1=$e(i$1,`activeSnapPoint`,t,{passive:i$1.activeSnapPoint===void 0}),D$1={emitDrag:m$2=>t(`drag`,m$2),emitRelease:m$2=>t(`release`,m$2),emitClose:()=>t(`close`),emitOpenChange:m$2=>{t(`update:open`,m$2),setTimeout(()=>{t(`animationEnd`,m$2)},O.DURATION*1e3)}},{closeDrawer:$$1,hasBeenOpened:T$1,modal:r$2,isOpen:l$1}=ct(yt({...D$1,...toRefs(i$1),activeSnapPoint:v$1,fadeFromIndex:w$1,open:d$2}));function h$3(m$2){if(d$2.value!==void 0){D$1.emitOpenChange(m$2);return}l$1.value=m$2,m$2?T$1.value=!0:$$1()}return n$2({open:l$1}),(m$2,u$1)=>(openBlock(),createBlock(unref(_sfc_main$8),{open:unref(l$1),modal:unref(r$2),"onUpdate:open":h$3},{default:withCtx(()=>[renderSlot(m$2.$slots,`default`,{open:unref(l$1)})]),_:3},8,[`open`,`modal`]))}}),_t=defineComponent({__name:`DrawerRootNested`,props:{activeSnapPoint:{},closeThreshold:{},shouldScaleBackground:{type:Boolean},setBackgroundColorOnScale:{type:Boolean},scrollLockTimeout:{},fixed:{type:Boolean},dismissible:{type:Boolean},modal:{type:Boolean},open:{type:Boolean},defaultOpen:{type:Boolean},nested:{type:Boolean},direction:{},noBodyStyles:{type:Boolean},handleOnly:{type:Boolean},preventScrollRestoration:{type:Boolean},snapPoints:{},fadeFromIndex:{}},emits:[`drag`,`release`,`close`,`update:open`,`update:activeSnapPoint`,`animationEnd`],setup(e$3,{emit:n$2}){let s$1=e$3,i$1=n$2,{onNestedDrag:t,onNestedOpenChange:w$1,onNestedRelease:d$2}=ee();function v$1(){w$1(!1)}function D$1(r$2){t(r$2)}function $$1(r$2){r$2&&w$1(r$2),i$1(`update:open`,r$2)}let T$1=useForwardPropsEmits(s$1,i$1);return(r$2,l$1)=>(openBlock(),createBlock(St,mergeProps(unref(T$1),{nested:``,onClose:v$1,onDrag:D$1,onRelease:unref(d$2),"onUpdate:open":$$1}),{default:withCtx(()=>[renderSlot(r$2.$slots,`default`)]),_:3},16,[`onRelease`]))}}),Bt=defineComponent({__name:`DrawerOverlay`,setup(e$3){let{overlayRef:n$2,hasSnapPoints:s$1,isOpen:i$1,shouldFade:t}=ee();return(w$1,d$2)=>(openBlock(),createBlock(unref(_sfc_main$6),{ref_key:`overlayRef`,ref:n$2,"data-vaul-overlay":``,"data-vaul-snap-points":unref(i$1)&&unref(s$1)?`true`:`false`,"data-vaul-snap-points-overlay":unref(i$1)&&unref(t)?`true`:`false`},null,8,[`data-vaul-snap-points`,`data-vaul-snap-points-overlay`]))}}),Dt=()=>()=>{};function bt(){let{direction:e$3,isOpen:n$2,shouldScaleBackground:s$1,setBackgroundColorOnScale:i$1,noBodyStyles:t}=ee(),w$1=ref(null),d$2=ref(document.body.style.backgroundColor);function v$1(){return(window.innerWidth-Ce)/window.innerWidth}watchEffect(D$1=>{if(n$2.value&&s$1.value){w$1.value&&clearTimeout(w$1.value);let $$1=document.querySelector(`[data-vaul-drawer-wrapper]`)||document.querySelector(`[vaul-drawer-wrapper]`);if(!$$1)return;ft(i$1.value&&!t.value?de(document.body,{background:`black`}):Dt,de($$1,{transformOrigin:_(e$3.value)?`top`:`left`,transitionProperty:`transform, border-radius`,transitionDuration:`${O.DURATION}s`,transitionTimingFunction:`cubic-bezier(${O.EASE.join(`,`)})`}));let T$1=de($$1,{borderRadius:`${Be}px`,overflow:`hidden`,..._(e$3.value)?{transform:`scale(${v$1()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${v$1()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});D$1(()=>{T$1(),w$1.value=window.setTimeout(()=>{d$2.value?document.body.style.background=d$2.value:document.body.style.removeProperty(`background`)},O.DURATION*1e3)})}},{flush:`pre`})}const Ct=defineComponent({__name:`DrawerContent`,setup(e$3){let{open:n$2,isOpen:s$1,snapPointsOffset:i$1,hasSnapPoints:t,drawerRef:w$1,onPress:d$2,onDrag:v$1,onRelease:D$1,modal:$$1,emitOpenChange:T$1,dismissible:r$2,keyboardIsOpen:l$1,closeDrawer:h$3,direction:m$2,handleOnly:u$1}=ee();bt();let L$1=ref(!1),H$2=computed(()=>i$1.value&&i$1.value.length>0?`${i$1.value[0]}px`:`0`);function p$5(f$3){if(!$$1.value||f$3.defaultPrevented){f$3.preventDefault();return}l$1.value&&=!1,r$2.value?T$1(!1):f$3.preventDefault()}function a$2(f$3){u$1.value||d$2(f$3)}function c$4(f$3){u$1.value||v$1(f$3)}return watchEffect(()=>{t.value&&window.requestAnimationFrame(()=>{L$1.value=!0})}),(f$3,y$2)=>(openBlock(),createBlock(unref(_sfc_main$5),{ref_key:`drawerRef`,ref:w$1,"data-vaul-drawer":``,"data-vaul-drawer-direction":unref(m$2),"data-vaul-delayed-snap-points":L$1.value?`true`:`false`,"data-vaul-snap-points":unref(s$1)&&unref(t)?`true`:`false`,style:normalizeStyle({"--snap-point-height":H$2.value}),onPointerdown:a$2,onPointermove:c$4,onPointerup:unref(D$1),onPointerDownOutside:p$5,onOpenAutoFocus:y$2[0]||=withModifiers(()=>{},[`prevent`]),onEscapeKeyDown:y$2[1]||=P$1=>{unref(r$2)||P$1.preventDefault()}},{default:withCtx(()=>[renderSlot(f$3.$slots,`default`)]),_:3},8,[`data-vaul-drawer-direction`,`data-vaul-delayed-snap-points`,`data-vaul-snap-points`,`style`,`onPointerup`]))}}),$t=[`data-vaul-drawer-visible`],Ot={"data-vaul-handle-hitarea":``,"aria-hidden":`true`},Tt=250,Pt=120,Nt=defineComponent({__name:`DrawerHandle`,props:{preventCycle:{type:Boolean,default:!1}},setup(e$3){let n$2=e$3,{onPress:s$1,onDrag:i$1,handleRef:t,handleOnly:w$1,isOpen:d$2,snapPoints:v$1,activeSnapPoint:D$1,isDragging:$$1,dismissible:T$1,closeDrawer:r$2}=ee(),l$1=ref(null),h$3=ref(!1);function m$2(){if(h$3.value){H$2();return}window.setTimeout(()=>{u$1()},Pt)}function u$1(){if($$1.value||n$2.preventCycle||h$3.value){H$2();return}if(H$2(),!v$1.value||v$1.value.length===0){T$1.value||r$2();return}let c$4=D$1.value===v$1.value[v$1.value.length-1];if(c$4&&T$1.value){r$2();return}let f$3=v$1.value.findIndex(P$1=>P$1===D$1.value);if(f$3===-1)return;let y$2=c$4?0:f$3+1;D$1.value=v$1.value[y$2]}function L$1(){l$1.value=window.setTimeout(()=>{h$3.value=!0},Tt)}function H$2(){l$1.value&&window.clearTimeout(l$1.value),h$3.value=!1}function p$5(c$4){w$1.value&&s$1(c$4),L$1()}function a$2(c$4){w$1.value&&i$1(c$4)}return(c$4,f$3)=>(openBlock(),createElementBlock(`div`,{ref_key:`handleRef`,ref:t,"data-vaul-drawer-visible":unref(d$2)?`true`:`false`,"data-vaul-handle":``,"aria-hidden":`true`,onClick:m$2,onPointercancel:H$2,onPointerdown:p$5,onPointermove:a$2},[createBaseVNode(`span`,Ot,[renderSlot(c$4.$slots,`default`)])],40,$t))}});var OnboardingDialog_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`OnboardingDialog`,props:{modelValue:{type:Boolean,default:!1,required:!1},modelModifiers:{}},emits:mergeModels([`configured`,`skipped`],[`update:modelValue`]),setup(__props,{emit:__emit}){let emit$1=__emit,showDialog=useModel(__props,`modelValue`),isDesktop=useMediaQuery(`(min-width: 768px)`);return(_ctx,_cache$1)=>unref(isDesktop)?(openBlock(),createBlock(unref(_sfc_main$8),{key:0,open:showDialog.value,"onUpdate:open":_cache$1[2]||=value$1=>showDialog.value=value$1},{default:withCtx(()=>[createVNode(unref(_sfc_main$7),null,{default:withCtx(()=>[createVNode(unref(_sfc_main$6),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-[9999] bg-black/50 backdrop-blur-sm`}),createVNode(unref(_sfc_main$5),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-[9999] max-h-full max-w-2xl w-[92dvw] transform overflow-y-scroll rounded-2xl bg-white p-6 shadow-xl outline-none backdrop-blur-md scrollbar-none -translate-x-1/2 -translate-y-1/2 dark:bg-neutral-900`},{default:withCtx(()=>[createVNode(Onboarding_default,{onConfigured:_cache$1[0]||=$event=>emit$1(`configured`),onSkipped:_cache$1[1]||=$event=>emit$1(`skipped`)})]),_:1})]),_:1})]),_:1},8,[`open`])):(openBlock(),createBlock(unref(St),{key:1,open:showDialog.value,"should-scale-background":``,"onUpdate:open":_cache$1[5]||=value$1=>showDialog.value=value$1},{default:withCtx(()=>[createVNode(unref(_sfc_main$7),null,{default:withCtx(()=>[createVNode(unref(Bt),{class:`fixed inset-0`}),createVNode(unref(Ct),{class:`fixed bottom-0 left-0 right-0 z-1000 mt-20 h-full max-h-[96%] flex flex-col rounded-t-2xl bg-neutral-50 p-4 outline-none backdrop-blur-md dark:bg-neutral-900/95`},{default:withCtx(()=>[createVNode(unref(Nt)),createVNode(Onboarding_default,{onConfigured:_cache$1[3]||=$event=>emit$1(`configured`),onSkipped:_cache$1[4]||=$event=>emit$1(`skipped`)})]),_:1})]),_:1})]),_:1},8,[`open`]))}}),OnboardingDialog_default=OnboardingDialog_vue_vue_type_script_setup_true_lang_default;const ToasterRootInjectionKey=Symbol(`ToasterRoot`);var ToasterRoot_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ToasterRoot`,emits:[`close`],setup(__props,{emit:__emit}){let emits=__emit;return provide(ToasterRootInjectionKey,{close:id=>emits(`close`,id)}),(_ctx,_cache$1)=>renderSlot(_ctx.$slots,`default`)}}),ToasterRoot_default=ToasterRoot_vue_vue_type_script_setup_true_lang_default,ArrowTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ArrowTransition`,props:{stageTransition:{default:()=>({primaryColor:`#666`,secondaryColor:`#ccc`})}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>stageTransition.value.primaryColor||`#666`),overlayColor2=computed(()=>stageTransition.value.secondaryColor||`#ccc`);return onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-3-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-3-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`stage-transition-3`,style:normalizeStyle({zIndex:stageTransition.value.zIndex||100})},null,4))}}),ArrowTransition_default=__plugin_vue_export_helper_default(ArrowTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-17464329`]]),BubbleWaveOutTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`BubbleWaveOutTransition`,props:{stageTransition:{}},setup(__props){let props=__props,colors=computed(()=>{var _props$stageTransitio;return(_props$stageTransitio=props.stageTransition)?.colors||[`#eee`,`#ebcb8b`,`#c56370`,`#3f3b52`]});return onMounted(()=>{var _props$stageTransitio2,_props$stageTransitio3;document.documentElement.style.setProperty(`--circle-expansion-delay`,`${(_props$stageTransitio2=props.stageTransition)?.delay||0}s`),document.documentElement.style.setProperty(`--circle-expansion-duration`,`${(_props$stageTransitio3=props.stageTransition)?.duration||.4}s`),colors.value.forEach((color$2,index$1)=>{document.documentElement.style.setProperty(`--circle-expansion-color-${index$1+1}`,color$2)})}),(_ctx,_cache$1)=>{var _ctx$stageTransition;return openBlock(),createElementBlock(`div`,{class:`circle-expansion-transition`,style:normalizeStyle({zIndex:(_ctx$stageTransition=_ctx.stageTransition)?.zIndex||100})},[(openBlock(!0),createElementBlock(Fragment,null,renderList(colors.value,(_$2,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1}))),128))],4)}}}),BubbleWaveOutTransition_default=__plugin_vue_export_helper_default(BubbleWaveOutTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-4624be9e`]]),FantasyFallTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FantasyFallTransition`,props:{stageTransition:{}},setup(__props){let props=__props,direction=computed(()=>{var _props$stageTransitio4;return(_props$stageTransitio4=props.stageTransition)?.direction||`up`}),directionClass=computed(()=>`fantasy-fall-${direction.value}`);return onMounted(()=>{var _props$stageTransitio5,_props$stageTransitio6,_props$stageTransitio7,_props$stageTransitio8,_props$stageTransitio9,_props$stageTransitio10;document.documentElement.style.setProperty(`--fantasy-fall-color`,(_props$stageTransitio5=props.stageTransition)?.primaryColor||`#eee`),document.documentElement.style.setProperty(`--fantasy-fall-duration`,`${(_props$stageTransitio6=props.stageTransition)?.duration||.6}s`),document.documentElement.style.setProperty(`--fantasy-fall-delay`,`${(_props$stageTransitio7=props.stageTransition)?.delay||0}s`),document.documentElement.style.setProperty(`--fantasy-fall-radius-sm`,`${((_props$stageTransitio8=props.stageTransition)==null||(_props$stageTransitio8=_props$stageTransitio8.borderRadius)==null?void 0:_props$stageTransitio8.sm)||`14rem`}`),document.documentElement.style.setProperty(`--fantasy-fall-radius-md`,`${((_props$stageTransitio9=props.stageTransition)==null||(_props$stageTransitio9=_props$stageTransitio9.borderRadius)==null?void 0:_props$stageTransitio9.md)||`14rem`}`),document.documentElement.style.setProperty(`--fantasy-fall-radius-lg`,`${((_props$stageTransitio10=props.stageTransition)==null||(_props$stageTransitio10=_props$stageTransitio10.borderRadius)==null?void 0:_props$stageTransitio10.lg)||`50%`}`)}),(_ctx,_cache$1)=>{var _ctx$stageTransition2;return openBlock(),createElementBlock(`div`,{class:normalizeClass([`fantasy-fall-transition`,directionClass.value]),style:normalizeStyle({zIndex:(_ctx$stageTransition2=_ctx.stageTransition)?.zIndex??100})},null,6)}}}),FantasyFallTransition_default=__plugin_vue_export_helper_default(FantasyFallTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-826171f5`]]),MultipleBlocksRevealTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`MultipleBlocksRevealTransition`,props:{stageTransition:{}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>{var _stageTransition$valu;return(_stageTransition$valu=stageTransition.value)?.primaryColor||`#666`}),overlayColor2=computed(()=>{var _stageTransition$valu2;return(_stageTransition$valu2=stageTransition.value)?.secondaryColor||`#ccc`});return onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-4-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-4-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>{var _stageTransition$valu3;return openBlock(),createElementBlock(`div`,{class:`stage-transition-4`,style:normalizeStyle({zIndex:(_stageTransition$valu3=stageTransition.value)?.zIndex??100})},_cache$1[0]||=[createStaticVNode(`
`,5)],4)}}}),MultipleBlocksRevealTransition_default=__plugin_vue_export_helper_default(MultipleBlocksRevealTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-4221f976`]]),SlideTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SlideTransition`,props:{stageTransition:{}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>{var _stageTransition$valu4;return(_stageTransition$valu4=stageTransition.value)?.primaryColor||`#666`}),overlayColor2=computed(()=>{var _stageTransition$valu5;return(_stageTransition$valu5=stageTransition.value)?.secondaryColor||`#ccc`});return watch([stageTransition,overlayColor1,overlayColor2],()=>{document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-2`,overlayColor2.value)}),onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>{var _stageTransition$valu6;return openBlock(),createElementBlock(`div`,{class:`stage-transition-1`,style:normalizeStyle({zIndex:(_stageTransition$valu6=stageTransition.value)?.zIndex??100})},null,4)}}}),SlideTransition_default=__plugin_vue_export_helper_default(SlideTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-81c0af14`]]),SlopeSlideTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SlopeSlideTransition`,props:{stageTransition:{}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>{var _stageTransition$valu7;return(_stageTransition$valu7=stageTransition.value)?.primaryColor??`#666`}),overlayColor2=computed(()=>{var _stageTransition$valu8;return(_stageTransition$valu8=stageTransition.value)?.secondaryColor??`#ccc`});return onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-2-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-2-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>{var _stageTransition$valu9;return openBlock(),createElementBlock(`div`,{class:`stage-transition-2`,style:normalizeStyle({zIndex:(_stageTransition$valu9=stageTransition.value)?.zIndex??100})},null,4)}}}),SlopeSlideTransition_default=__plugin_vue_export_helper_default(SlopeSlideTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-9e8b66c8`]]),RectanglesRotateTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RectanglesRotateTransition`,props:{stageTransition:{}},setup(__props){let props=__props;return onMounted(()=>{var _props$stageTransitio11,_props$stageTransitio12,_props$stageTransitio13,_props$stageTransitio14,_props$stageTransitio15,_props$stageTransitio16,_props$stageTransitio17;document.documentElement.style.setProperty(`--rectangle-rotate-1-color`,(_props$stageTransitio11=props.stageTransition)?.primaryColor||`#ebcb8b`),document.documentElement.style.setProperty(`--rectangle-rotate-2-color`,(_props$stageTransitio12=props.stageTransition)?.secondaryColor||`#c56370`),document.documentElement.style.setProperty(`--rectangle-rotate-3-color`,(_props$stageTransitio13=props.stageTransition)?.tertiaryColor||`#43445b`),document.documentElement.style.setProperty(`--rectangle-rotate-duration`,`${(_props$stageTransitio14=props.stageTransition)?.duration||.6}s`),document.documentElement.style.setProperty(`--rectangle-rotate-delay`,`${(_props$stageTransitio15=props.stageTransition)?.delay||0}s`),document.documentElement.style.setProperty(`--rectangle-rotate-stagger`,`${(_props$stageTransitio16=props.stageTransition)?.staggerDelay||.1}s`),document.documentElement.style.setProperty(`--rectangle-rotate-rotation`,`${(_props$stageTransitio17=props.stageTransition)?.rotation||270}deg`)}),(_ctx,_cache$1)=>{var _ctx$stageTransition3;return openBlock(),createElementBlock(`div`,{class:`rectangle-rotate-transition`,style:normalizeStyle({zIndex:(_ctx$stageTransition3=_ctx.stageTransition)?.zIndex??100})},_cache$1[0]||=[createBaseVNode(`div`,{class:`rectangle rectangle-rotate-1`},[createBaseVNode(`div`)],-1),createBaseVNode(`div`,{class:`rectangle rectangle-rotate-2`},[createBaseVNode(`div`)],-1),createBaseVNode(`div`,{class:`rectangle rectangle-rotate-3`},[createBaseVNode(`div`)],-1)],4)}}}),RectanglesRotateTransition_default=__plugin_vue_export_helper_default(RectanglesRotateTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-45ea2f7f`]]),StageTransitionGroup_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`StageTransitionGroup`,props:{primaryColor:{},secondaryColor:{},tertiaryColor:{},colors:{},zIndex:{},disableTransitions:{type:Boolean},usePageSpecificTransitions:{type:Boolean}},setup(__props){let props=__props,router$1=useRouter(),showTransition=ref(!1),transitionStage=ref(),activeTransitionName=ref(``),activeStageTransitionParams=ref(),transitions=shallowRef({slide:{component:SlideTransition_default,duration:2700},"slope-slide":{component:SlopeSlideTransition_default,duration:2700},arrow:{component:ArrowTransition_default,duration:2700},"multiple-blocks-reveal":{component:MultipleBlocksRevealTransition_default,duration:2800},"fantasy-fall":{component:FantasyFallTransition_default,duration:2700},"rectangles-rotate":{component:RectanglesRotateTransition_default,duration:2700},"bubble-wave-out":{component:BubbleWaveOutTransition_default,duration:1e3}}),lifecycleHooks=ref([]);function addTransitionHook(hook){return lifecycleHooks.value.push(hook),()=>{let index$1=lifecycleHooks.value.indexOf(hook);index$1>=0&&lifecycleHooks.value.splice(index$1,1)}}async function triggerHooks(stage,data$10={}){transitionStage.value=stage;for(let hook of lifecycleHooks.value)try{await Promise.resolve(hook(stage,data$10))}catch(error){console.error(`Error in transition hook at stage "${stage}":`,error)}}async function triggerTransitionAsyncFn(params,next,resolve$1){if(params.name===`none`||!params.name){next(),resolve$1();return}let transition=transitions.value[params.name];if(!transition){console.error(`Transition ${params.name} not found`),next(),resolve$1();return}let navTiming=transition.nextDelay===void 0?transition.duration/3:transition.nextDelay,hasNavigated=!1,navigationHook=stage=>{stage===`navigation`&&!hasNavigated&&(hasNavigated=!0,next())},removeNavHook=addTransitionHook(navigationHook);try{await triggerHooks(`before-enter`,{transitionName:params.name}),showTransition.value&&(await triggerHooks(`before-leave`,{transitionName:activeTransitionName.value}),activeTransitionName.value=``,activeStageTransitionParams.value=void 0,showTransition.value=!1,await triggerHooks(`after-leave`,{transitionName:activeTransitionName.value}),await new Promise(r$2=>setTimeout(r$2,50))),activeTransitionName.value=params.name,activeStageTransitionParams.value=params,showTransition.value=!0,await triggerHooks(`enter-active`,{transitionName:name}),setTimeout(async()=>{await triggerHooks(`navigation`,{transitionName:params.name,config:transition}),hasNavigated||(hasNavigated=!0,next())},navTiming),setTimeout(async()=>{await triggerHooks(`after-enter`,{transitionName:params.name})},transition.duration),setTimeout(async()=>{await triggerHooks(`before-leave`,{transitionName:params.name})},transition.duration+10),setTimeout(async()=>{await triggerHooks(`leave-active`,{transitionName:params.name})},transition.duration+20);let totalDuration=transition.exitDuration??0;setTimeout(async()=>{showTransition.value=!1,activeTransitionName.value=``,activeStageTransitionParams.value=void 0,await triggerHooks(`after-leave`,{transitionName:params.name}),resolve$1()},transition.duration+totalDuration)}catch(error){console.error(error)}finally{removeNavHook(),setTimeout(()=>{hasNavigated||(hasNavigated=!0,next())},transition.duration*2)}}function triggerTransition(params,next){return new Promise(resolve$1=>{triggerTransitionAsyncFn(params,next,resolve$1)})}return router$1.beforeEach((to$1,_from,next)=>{if(props.disableTransitions){next();return}if(typeof to$1.meta.stageTransition!=`object`){next();return}let stageTransition=to$1.meta.stageTransition;if(props.usePageSpecificTransitions&&stageTransition.pageSpecificAvailable){next();return}props.primaryColor!==void 0&&(stageTransition.primaryColor=props.primaryColor),props.secondaryColor!==void 0&&(stageTransition.secondaryColor=props.secondaryColor),props.tertiaryColor!==void 0&&(stageTransition.tertiaryColor=props.tertiaryColor),props.colors!==void 0&&(stageTransition.colors=props.colors),props.zIndex!==void 0&&(stageTransition.zIndex=props.zIndex),triggerTransition(stageTransition,next)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(Fragment,null,[renderSlot(_ctx.$slots,`default`),showTransition.value?(openBlock(),createElementBlock(Fragment,{key:0},[transitions.value[activeTransitionName.value]?(openBlock(),createBlock(resolveDynamicComponent(transitions.value[activeTransitionName.value].component),{key:0,"stage-transition":activeStageTransitionParams.value},null,8,[`stage-transition`])):createCommentVNode(``,!0)],64)):createCommentVNode(``,!0)],64))}}),StageTransitionGroup_default=StageTransitionGroup_vue_vue_type_script_setup_true_lang_default;let toastsCounter=1;var Observer=class{constructor(){babelHelpers.defineProperty(this,`subscribers`,void 0),babelHelpers.defineProperty(this,`toasts`,void 0),babelHelpers.defineProperty(this,`dismissedToasts`,void 0),babelHelpers.defineProperty(this,`subscribe`,subscriber=>(this.subscribers.push(subscriber),()=>{let index$1=this.subscribers.indexOf(subscriber);this.subscribers.splice(index$1,1)})),babelHelpers.defineProperty(this,`publish`,data$10=>{this.subscribers.forEach(subscriber=>subscriber(data$10))}),babelHelpers.defineProperty(this,`addToast`,data$10=>{this.publish(data$10),this.toasts=[...this.toasts,data$10]}),babelHelpers.defineProperty(this,`create`,data$10=>{var _data$10$id;let{message:message$1,...rest}=data$10,id=typeof data$10.id==`number`||data$10.id&&(_data$10$id=data$10.id)?.length>0?data$10.id:toastsCounter++,alreadyExists=this.toasts.find(toast$1=>toast$1.id===id),dismissible=data$10.dismissible===void 0?!0:data$10.dismissible;return this.dismissedToasts.has(id)&&this.dismissedToasts.delete(id),alreadyExists?this.toasts=this.toasts.map(toast$1=>toast$1.id===id?(this.publish({...toast$1,...data$10,id,title:message$1}),{...toast$1,...data$10,id,dismissible,title:message$1}):toast$1):this.addToast({title:message$1,...rest,dismissible,id}),id}),babelHelpers.defineProperty(this,`dismiss`,id=>(id?(this.dismissedToasts.add(id),requestAnimationFrame(()=>this.subscribers.forEach(subscriber=>subscriber({id,dismiss:!0})))):this.toasts.forEach(toast$1=>{this.subscribers.forEach(subscriber=>subscriber({id:toast$1.id,dismiss:!0}))}),id)),babelHelpers.defineProperty(this,`message`,(message$1,data$10)=>this.create({...data$10,message:message$1,type:`default`})),babelHelpers.defineProperty(this,`error`,(message$1,data$10)=>this.create({...data$10,type:`error`,message:message$1})),babelHelpers.defineProperty(this,`success`,(message$1,data$10)=>this.create({...data$10,type:`success`,message:message$1})),babelHelpers.defineProperty(this,`info`,(message$1,data$10)=>this.create({...data$10,type:`info`,message:message$1})),babelHelpers.defineProperty(this,`warning`,(message$1,data$10)=>this.create({...data$10,type:`warning`,message:message$1})),babelHelpers.defineProperty(this,`loading`,(message$1,data$10)=>this.create({...data$10,type:`loading`,message:message$1})),babelHelpers.defineProperty(this,`promise`,(promise,data$10)=>{if(!data$10)return;let id;data$10.loading!==void 0&&(id=this.create({...data$10,promise,type:`loading`,message:data$10.loading,description:typeof data$10.description==`function`?void 0:data$10.description}));let p$5=Promise.resolve(promise instanceof Function?promise():promise),shouldDismiss=id!==void 0,result,originalPromise=p$5.then(async response=>{result=[`resolve`,response];let isVueComponent=isVNode(response);if(isVueComponent)shouldDismiss=!1,this.create({id,type:`default`,message:response});else if(isHttpResponse(response)&&!response.ok){shouldDismiss=!1;let promiseData=typeof data$10.error==`function`?await data$10.error(`HTTP error! status: ${response.status}`):data$10.error,description=typeof data$10.description==`function`?await data$10.description(`HTTP error! status: ${response.status}`):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`error`,description,...toastSettings})}else if(response instanceof Error){shouldDismiss=!1;let promiseData=typeof data$10.error==`function`?await data$10.error(response):data$10.error,description=typeof data$10.description==`function`?await data$10.description(response):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`error`,description,...toastSettings})}else if(data$10.success!==void 0){shouldDismiss=!1;let promiseData=typeof data$10.success==`function`?await data$10.success(response):data$10.success,description=typeof data$10.description==`function`?await data$10.description(response):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`success`,description,...toastSettings})}}).catch(async error=>{if(result=[`reject`,error],data$10.error!==void 0){shouldDismiss=!1;let promiseData=typeof data$10.error==`function`?await data$10.error(error):data$10.error,description=typeof data$10.description==`function`?await data$10.description(error):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`error`,description,...toastSettings})}}).finally(()=>{var _data$10$finally;shouldDismiss&&(this.dismiss(id),id=void 0),(_data$10$finally=data$10.finally)?.call(data$10)}),unwrap=()=>new Promise((resolve$1,reject)=>originalPromise.then(()=>result[0]===`reject`?reject(result[1]):resolve$1(result[1])).catch(reject));return typeof id!=`string`&&typeof id!=`number`?{unwrap}:Object.assign(id,{unwrap})}),babelHelpers.defineProperty(this,`custom`,(component,data$10)=>{let id=data$10?.id||toastsCounter++;return this.publish({component,id,...data$10}),id}),babelHelpers.defineProperty(this,`getActiveToasts`,()=>this.toasts.filter(toast$1=>!this.dismissedToasts.has(toast$1.id))),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}};const ToastState=new Observer;function toastFunction(message$1,data$10){let id=data$10?.id||toastsCounter++;return ToastState.create({message:message$1,id,type:`default`,...data$10}),id}const isHttpResponse=data$10=>data$10&&typeof data$10==`object`&&`ok`in data$10&&typeof data$10.ok==`boolean`&&`status`in data$10&&typeof data$10.status==`number`,basicToast=toastFunction,getHistory=()=>ToastState.toasts,getToasts=()=>ToastState.getActiveToasts(),toast=Object.assign(basicToast,{success:ToastState.success,info:ToastState.info,warning:ToastState.warning,error:ToastState.error,custom:ToastState.custom,message:ToastState.message,promise:ToastState.promise,dismiss:ToastState.dismiss,loading:ToastState.loading},{getHistory,getToasts});function isAction(action){return action.label!==void 0}const VISIBLE_TOASTS_AMOUNT=3,VIEWPORT_OFFSET=`24px`,MOBILE_VIEWPORT_OFFSET=`16px`,TOAST_LIFETIME=4e3,TOAST_WIDTH=356,GAP=14,SWIPE_THRESHOLD=45,TIME_BEFORE_UNMOUNT=200;function useIsDocumentHidden(){let isDocumentHidden=ref(!1);return watchEffect(()=>{let callback=()=>{isDocumentHidden.value=document.hidden};return document.addEventListener(`visibilitychange`,callback),()=>window.removeEventListener(`visibilitychange`,callback)}),{isDocumentHidden}}function cn(...classes){return classes.filter(Boolean).join(` `)}function getDefaultSwipeDirections(position$2){let[y$2,x$3]=position$2.split(`-`),directions=[];return y$2&&directions.push(y$2),x$3&&directions.push(x$3),directions}function assignOffset(defaultOffset$1,mobileOffset){let styles={};return[defaultOffset$1,mobileOffset].forEach((offset$1,index$1)=>{let isMobile=index$1===1,prefix=isMobile?`--mobile-offset`:`--offset`,defaultValue=isMobile?MOBILE_VIEWPORT_OFFSET:VIEWPORT_OFFSET;function assignAll(offset$1$1){[`top`,`right`,`bottom`,`left`].forEach(key$1=>{styles[`${prefix}-${key$1}`]=typeof offset$1$1==`number`?`${offset$1$1}px`:offset$1$1})}typeof offset$1==`number`||typeof offset$1==`string`?assignAll(offset$1):typeof offset$1==`object`?[`top`,`right`,`bottom`,`left`].forEach(key$1=>{offset$1[key$1]===void 0?styles[`${prefix}-${key$1}`]=defaultValue:styles[`${prefix}-${key$1}`]=typeof offset$1[key$1]==`number`?`${offset$1[key$1]}px`:offset$1[key$1]}):assignAll(defaultValue)}),styles}const _hoisted_1$7=[`data-rich-colors`,`data-styled`,`data-mounted`,`data-promise`,`data-swiped`,`data-removed`,`data-visible`,`data-y-position`,`data-x-position`,`data-index`,`data-front`,`data-swiping`,`data-dismissible`,`data-type`,`data-invert`,`data-swipe-out`,`data-swipe-direction`,`data-expanded`],_hoisted_2$2=[`aria-label`,`data-disabled`];var Toast_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Toast`,props:{toast:{},toasts:{},index:{},swipeDirections:{},expanded:{type:Boolean},invert:{type:Boolean},heights:{},gap:{},position:{},visibleToasts:{},expandByDefault:{type:Boolean},closeButton:{type:Boolean},interacting:{type:Boolean},style:{},cancelButtonStyle:{},actionButtonStyle:{},duration:{},class:{},unstyled:{type:Boolean},descriptionClass:{},loadingIcon:{},classes:{},icons:{},closeButtonAriaLabel:{},defaultRichColors:{type:Boolean}},emits:[`update:heights`,`update:height`,`removeToast`],setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,swipeDirection=ref(null),swipeOutDirection=ref(null),mounted=ref(!1),removed=ref(!1),swiping=ref(!1),swipeOut=ref(!1),swiped=ref(!1),offsetBeforeRemove=ref(0),initialHeight=ref(0),remainingTime=ref(props.toast.duration||props.duration||TOAST_LIFETIME),dragStartTime=ref(null),toastRef=ref(null),isFront=computed(()=>props.index===0),isVisible=computed(()=>props.index+1<=props.visibleToasts),toastType=computed(()=>props.toast.type),dismissible=computed(()=>props.toast.dismissible!==!1),toastClass=computed(()=>props.toast.class||``),toastDescriptionClass=computed(()=>props.descriptionClass||``),heightIndex=computed(()=>{let currentPosition=props.toast.position||props.position,samePositionHeights=props.heights.filter(h$3=>h$3.position===currentPosition),index$1=samePositionHeights.findIndex(height=>height.toastId===props.toast.id);return index$1>=0?index$1:0}),toastsHeightBefore=computed(()=>{let currentPosition=props.toast.position||props.position,samePositionHeights=props.heights.filter(h$3=>h$3.position===currentPosition);return samePositionHeights.reduce((prev,curr,reducerIndex)=>reducerIndex>=heightIndex.value?prev:prev+curr.height,0)}),offset$1=computed(()=>heightIndex.value*props.gap+toastsHeightBefore.value||0),closeButton=computed(()=>props.toast.closeButton??props.closeButton),duration=computed(()=>props.toast.duration||props.duration||TOAST_LIFETIME),closeTimerStartTimeRef=ref(0),lastCloseTimerStartTimeRef=ref(0),pointerStartRef=ref(null),coords$1=computed(()=>props.position.split(`-`)),y$2=computed(()=>coords$1.value[0]),x$3=computed(()=>coords$1.value[1]),isStringOfTitle=computed(()=>typeof props.toast.title!=`string`),isStringOfDescription=computed(()=>typeof props.toast.description!=`string`),{isDocumentHidden}=useIsDocumentHidden(),disabled=computed(()=>toastType.value&&toastType.value===`loading`);onMounted(()=>{mounted.value=!0,remainingTime.value=duration.value}),watchEffect(async()=>{if(!mounted.value||!toastRef.value)return;await nextTick();let toastNode=toastRef.value,originalHeight=toastNode.style.height;toastNode.style.height=`auto`;let newHeight=toastNode.getBoundingClientRect().height;toastNode.style.height=originalHeight,initialHeight.value=newHeight,emit$1(`update:height`,{toastId:props.toast.id,height:newHeight,position:props.toast.position||props.position})});function deleteToast(){removed.value=!0,offsetBeforeRemove.value=offset$1.value,setTimeout(()=>{emit$1(`removeToast`,props.toast)},TIME_BEFORE_UNMOUNT)}function handleCloseToast(){var _props$toast$onDismis,_props$toast;if(disabled.value||!dismissible.value)return{};deleteToast(),(_props$toast$onDismis=(_props$toast=props.toast).onDismiss)?.call(_props$toast,props.toast)}function onPointerDown(event){disabled.value||!dismissible.value||(dragStartTime.value=new Date,offsetBeforeRemove.value=offset$1.value,event.target.setPointerCapture(event.pointerId),event.target.tagName!==`BUTTON`&&(swiping.value=!0,pointerStartRef.value={x:event.clientX,y:event.clientY}))}function onPointerUp(){var _toastRef$value,_toastRef$value2,_dragStartTime$value;if(swipeOut.value||!dismissible.value)return;pointerStartRef.value=null;let swipeAmountX=Number((_toastRef$value=toastRef.value)?.style.getPropertyValue(`--swipe-amount-x`).replace(`px`,``)||0),swipeAmountY=Number((_toastRef$value2=toastRef.value)?.style.getPropertyValue(`--swipe-amount-y`).replace(`px`,``)||0),timeTaken=new Date().getTime()-((_dragStartTime$value=dragStartTime.value)?.getTime()||0),swipeAmount=swipeDirection.value===`x`?swipeAmountX:swipeAmountY,velocity=Math.abs(swipeAmount)/timeTaken;if(Math.abs(swipeAmount)>=SWIPE_THRESHOLD||velocity>.11){var _props$toast$onDismis2,_props$toast2;offsetBeforeRemove.value=offset$1.value,(_props$toast$onDismis2=(_props$toast2=props.toast).onDismiss)?.call(_props$toast2,props.toast),swipeDirection.value===`x`?swipeOutDirection.value=swipeAmountX>0?`right`:`left`:swipeOutDirection.value=swipeAmountY>0?`down`:`up`,deleteToast(),swipeOut.value=!0;return}else{var _toastRef$value3,_toastRef$value4;(_toastRef$value3=toastRef.value)?.style.setProperty(`--swipe-amount-x`,`0px`),(_toastRef$value4=toastRef.value)?.style.setProperty(`--swipe-amount-y`,`0px`)}swiped.value=!1,swiping.value=!1,swipeDirection.value=null}function onPointerMove(event){var _window,_toastRef$value5,_toastRef$value6;if(!pointerStartRef.value||!dismissible.value)return;let isHighlighted=((_window=window)==null||(_window=_window.getSelection())==null||(_window=_window.toString())==null?void 0:_window.length)??!1;if(isHighlighted)return;let yDelta=event.clientY-pointerStartRef.value.y,xDelta=event.clientX-pointerStartRef.value.x,swipeDirections=props.swipeDirections??getDefaultSwipeDirections(props.position);!swipeDirection.value&&(Math.abs(xDelta)>1||Math.abs(yDelta)>1)&&(swipeDirection.value=Math.abs(xDelta)>Math.abs(yDelta)?`x`:`y`);let swipeAmount={x:0,y:0},getDampening=delta=>{let factor$1=Math.abs(delta)/20;return 1/(1.5+factor$1)};if(swipeDirection.value===`y`){if(swipeDirections.includes(`top`)||swipeDirections.includes(`bottom`))if(swipeDirections.includes(`top`)&&yDelta<0||swipeDirections.includes(`bottom`)&&yDelta>0)swipeAmount.y=yDelta;else{let dampenedDelta=yDelta*getDampening(yDelta);swipeAmount.y=Math.abs(dampenedDelta)0)swipeAmount.x=xDelta;else{let dampenedDelta=xDelta*getDampening(xDelta);swipeAmount.x=Math.abs(dampenedDelta)0||Math.abs(swipeAmount.y)>0)&&(swiped.value=!0),(_toastRef$value5=toastRef.value)?.style.setProperty(`--swipe-amount-x`,`${swipeAmount.x}px`),(_toastRef$value6=toastRef.value)?.style.setProperty(`--swipe-amount-y`,`${swipeAmount.y}px`)}onMounted(()=>{if(mounted.value=!0,!toastRef.value)return;let height=toastRef.value.getBoundingClientRect().height;initialHeight.value=height;let newHeights=[{toastId:props.toast.id,height,position:props.toast.position},...props.heights];emit$1(`update:heights`,newHeights)}),onBeforeUnmount(()=>{toastRef.value&&emit$1(`removeToast`,props.toast)}),watchEffect(onInvalidate=>{if(props.toast.promise&&toastType.value===`loading`||props.toast.duration===1/0||props.toast.type===`loading`)return;let timeoutId,pauseTimer=()=>{if(lastCloseTimerStartTimeRef.value{remainingTime.value!==1/0&&(closeTimerStartTimeRef.value=new Date().getTime(),timeoutId=setTimeout(()=>{var _props$toast$onAutoCl,_props$toast3;(_props$toast$onAutoCl=(_props$toast3=props.toast).onAutoClose)?.call(_props$toast3,props.toast),deleteToast()},remainingTime.value))};props.expanded||props.interacting||isDocumentHidden.value?pauseTimer():startTimer(),onInvalidate(()=>{clearTimeout(timeoutId)})}),watch(()=>props.toast.delete,value$1=>{value$1!==void 0&&value$1&&deleteToast()},{deep:!0});function handleDragEnd(){swiping.value=!1,swipeDirection.value=null,pointerStartRef.value=null}return(_ctx,_cache$1)=>{var _ctx$classes,_ctx$toast$classes,_ctx$classes2,_ctx$toast,_ctx$toast2,_ctx$classes3,_ctx$toast3,_ctx$icons,_ctx$icons2,_ctx$classes4,_ctx$toast4,_ctx$classes5,_ctx$toast5,_ctx$classes6,_ctx$toast$classes2,_ctx$classes7,_ctx$toast$classes3,_ctx$classes8,_ctx$toast$classes4,_ctx$toast$cancel2,_ctx$classes9,_ctx$toast$classes5,_ctx$toast$action2;return openBlock(),createElementBlock(`li`,{tabindex:`0`,ref_key:`toastRef`,ref:toastRef,class:normalizeClass(unref(cn)(props.class,toastClass.value,(_ctx$classes=_ctx.classes)?.toast,(_ctx$toast$classes=_ctx.toast.classes)?.toast,(_ctx$classes2=_ctx.classes)?.[toastType.value],(_ctx$toast=_ctx.toast)==null||(_ctx$toast=_ctx$toast.classes)==null?void 0:_ctx$toast[toastType.value])),"data-sonner-toast":``,"data-rich-colors":_ctx.toast.richColors??_ctx.defaultRichColors,"data-styled":!(_ctx.toast.component||(_ctx$toast2=_ctx.toast)?.unstyled||_ctx.unstyled),"data-mounted":mounted.value,"data-promise":!!_ctx.toast.promise,"data-swiped":swiped.value,"data-removed":removed.value,"data-visible":isVisible.value,"data-y-position":y$2.value,"data-x-position":x$3.value,"data-index":_ctx.index,"data-front":isFront.value,"data-swiping":swiping.value,"data-dismissible":dismissible.value,"data-type":toastType.value,"data-invert":_ctx.toast.invert||_ctx.invert,"data-swipe-out":swipeOut.value,"data-swipe-direction":swipeOutDirection.value,"data-expanded":!!(_ctx.expanded||_ctx.expandByDefault&&mounted.value),style:normalizeStyle({"--index":_ctx.index,"--toasts-before":_ctx.index,"--z-index":_ctx.toasts.length-_ctx.index,"--offset":`${removed.value?offsetBeforeRemove.value:offset$1.value}px`,"--initial-height":_ctx.expandByDefault?`auto`:`${initialHeight.value}px`,..._ctx.style,...props.toast.style}),onDragend:handleDragEnd,onPointerdown:onPointerDown,onPointerup:onPointerUp,onPointermove:onPointerMove},[closeButton.value&&!_ctx.toast.component&&toastType.value!==`loading`?(openBlock(),createElementBlock(`button`,{key:0,"aria-label":_ctx.closeButtonAriaLabel||`Close toast`,"data-disabled":disabled.value,"data-close-button":`true`,class:normalizeClass(unref(cn)((_ctx$classes3=_ctx.classes)?.closeButton,(_ctx$toast3=_ctx.toast)==null||(_ctx$toast3=_ctx$toast3.classes)==null?void 0:_ctx$toast3.closeButton)),onClick:handleCloseToast},[(_ctx$icons=_ctx.icons)?.close?(openBlock(),createBlock(resolveDynamicComponent((_ctx$icons2=_ctx.icons)?.close),{key:0})):renderSlot(_ctx.$slots,`close-icon`,{key:1})],10,_hoisted_2$2)):createCommentVNode(`v-if`,!0),_ctx.toast.component?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.component),mergeProps({key:1},_ctx.toast.componentProps,{onCloseToast:handleCloseToast}),null,16)):(openBlock(),createElementBlock(Fragment,{key:2},[toastType.value!==`default`||_ctx.toast.icon||_ctx.toast.promise?(openBlock(),createElementBlock(`div`,{key:0,"data-icon":``,class:normalizeClass(unref(cn)((_ctx$classes4=_ctx.classes)?.icon,(_ctx$toast4=_ctx.toast)==null||(_ctx$toast4=_ctx$toast4.classes)==null?void 0:_ctx$toast4.icon))},[_ctx.toast.icon?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.icon),{key:0})):(openBlock(),createElementBlock(Fragment,{key:1},[toastType.value===`loading`?renderSlot(_ctx.$slots,`loading-icon`,{key:0}):toastType.value===`success`?renderSlot(_ctx.$slots,`success-icon`,{key:1}):toastType.value===`error`?renderSlot(_ctx.$slots,`error-icon`,{key:2}):toastType.value===`warning`?renderSlot(_ctx.$slots,`warning-icon`,{key:3}):toastType.value===`info`?renderSlot(_ctx.$slots,`info-icon`,{key:4}):createCommentVNode(`v-if`,!0)],64))],2)):createCommentVNode(`v-if`,!0),createBaseVNode(`div`,{"data-content":``,class:normalizeClass(unref(cn)((_ctx$classes5=_ctx.classes)?.content,(_ctx$toast5=_ctx.toast)==null||(_ctx$toast5=_ctx$toast5.classes)==null?void 0:_ctx$toast5.content))},[createBaseVNode(`div`,{"data-title":``,class:normalizeClass(unref(cn)((_ctx$classes6=_ctx.classes)?.title,(_ctx$toast$classes2=_ctx.toast.classes)?.title))},[isStringOfTitle.value?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.title),normalizeProps(mergeProps({key:0},_ctx.toast.componentProps)),null,16)):(openBlock(),createElementBlock(Fragment,{key:1},[createTextVNode(toDisplayString(_ctx.toast.title),1)],64))],2),_ctx.toast.description?(openBlock(),createElementBlock(`div`,{key:0,"data-description":``,class:normalizeClass(unref(cn)(_ctx.descriptionClass,toastDescriptionClass.value,(_ctx$classes7=_ctx.classes)?.description,(_ctx$toast$classes3=_ctx.toast.classes)?.description))},[isStringOfDescription.value?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.description),normalizeProps(mergeProps({key:0},_ctx.toast.componentProps)),null,16)):(openBlock(),createElementBlock(Fragment,{key:1},[createTextVNode(toDisplayString(_ctx.toast.description),1)],64))],2)):createCommentVNode(`v-if`,!0)],2),_ctx.toast.cancel?(openBlock(),createElementBlock(`button`,{key:1,style:normalizeStyle(_ctx.toast.cancelButtonStyle||_ctx.cancelButtonStyle),class:normalizeClass(unref(cn)((_ctx$classes8=_ctx.classes)?.cancelButton,(_ctx$toast$classes4=_ctx.toast.classes)?.cancelButton)),"data-button":``,"data-cancel":``,onClick:_cache$1[0]||=event=>{var _ctx$toast$cancel$onC,_ctx$toast$cancel;unref(isAction)(_ctx.toast.cancel)&&dismissible.value&&((_ctx$toast$cancel$onC=(_ctx$toast$cancel=_ctx.toast.cancel).onClick)?.call(_ctx$toast$cancel,event),deleteToast())}},toDisplayString(unref(isAction)(_ctx.toast.cancel)?(_ctx$toast$cancel2=_ctx.toast.cancel)?.label:_ctx.toast.cancel),7)):createCommentVNode(`v-if`,!0),_ctx.toast.action?(openBlock(),createElementBlock(`button`,{key:2,style:normalizeStyle(_ctx.toast.actionButtonStyle||_ctx.actionButtonStyle),class:normalizeClass(unref(cn)((_ctx$classes9=_ctx.classes)?.actionButton,(_ctx$toast$classes5=_ctx.toast.classes)?.actionButton)),"data-button":``,"data-action":``,onClick:_cache$1[1]||=event=>{var _ctx$toast$action$onC,_ctx$toast$action;unref(isAction)(_ctx.toast.action)&&((_ctx$toast$action$onC=(_ctx$toast$action=_ctx.toast.action).onClick)?.call(_ctx$toast$action,event),!event.defaultPrevented&&deleteToast())}},toDisplayString(unref(isAction)(_ctx.toast.action)?(_ctx$toast$action2=_ctx.toast.action)?.label:_ctx.toast.action),7)):createCommentVNode(`v-if`,!0)],64))],46,_hoisted_1$7)}}}),Toast_default=Toast_vue_vue_type_script_setup_true_lang_default,export_helper_default=(sfc,props)=>{let target$1=sfc.__vccOpts||sfc;for(let[key$1,val]of props)target$1[key$1]=val;return target$1};const _sfc_main$4={},_hoisted_1$6={xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stoke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function _sfc_render$4(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$6,_cache$1[0]||=[createBaseVNode(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`},null,-1),createBaseVNode(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`},null,-1)])}var CloseIcon_default=export_helper_default(_sfc_main$4,[[`render`,_sfc_render$4]]);const _hoisted_1$5=[`data-visible`],_hoisted_2$1={class:`sonner-spinner`};var Loader_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Loader`,props:{visible:{type:Boolean}},setup(__props){let bars=Array(12).fill(0);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`sonner-loading-wrapper`,"data-visible":_ctx.visible},[createBaseVNode(`div`,_hoisted_2$1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(bars),bar=>(openBlock(),createElementBlock(`div`,{key:`spinner-bar-${bar}`,class:`sonner-loading-bar`}))),128))])],8,_hoisted_1$5))}}),Loader_default=Loader_vue_vue_type_script_setup_true_lang_default;const _sfc_main$3={},_hoisted_1$4={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render$3(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$4,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z`,"clip-rule":`evenodd`},null,-1)])}var SuccessIcon_default=export_helper_default(_sfc_main$3,[[`render`,_sfc_render$3]]);const _sfc_main$2={},_hoisted_1$3={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render$2(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$3,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z`,"clip-rule":`evenodd`},null,-1)])}var InfoIcon_default=export_helper_default(_sfc_main$2,[[`render`,_sfc_render$2]]);const _sfc_main$1={},_hoisted_1$2={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render$1(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$2,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z`,"clip-rule":`evenodd`},null,-1)])}var WarningIcon_default=export_helper_default(_sfc_main$1,[[`render`,_sfc_render$1]]);const _sfc_main={},_hoisted_1$1={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$1,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z`,"clip-rule":`evenodd`},null,-1)])}var ErrorIcon_default=export_helper_default(_sfc_main,[[`render`,_sfc_render]]);const _hoisted_1=[`aria-label`],_hoisted_2=[`data-sonner-theme`,`dir`,`data-theme`,`data-rich-colors`,`data-y-position`,`data-x-position`,`data-lifted`],isClient=typeof window<`u`&&typeof document<`u`;function getDocumentDirection(){if(typeof window>`u`||typeof document>`u`)return`ltr`;let dirAttribute=document.documentElement.getAttribute(`dir`);return dirAttribute===`auto`||!dirAttribute?window.getComputedStyle(document.documentElement).direction:dirAttribute}var Toaster_vue_vue_type_script_setup_true_lang_default=defineComponent({name:`Toaster`,inheritAttrs:!1,__name:`Toaster`,props:{invert:{type:Boolean,default:!1},theme:{default:`light`},position:{default:`bottom-right`},hotkey:{default:()=>[`altKey`,`KeyT`]},richColors:{type:Boolean,default:!1},expand:{type:Boolean,default:!1},duration:{},gap:{default:GAP},visibleToasts:{default:VISIBLE_TOASTS_AMOUNT},closeButton:{type:Boolean,default:!1},toastOptions:{default:()=>({})},class:{default:``},style:{},offset:{default:VIEWPORT_OFFSET},mobileOffset:{default:MOBILE_VIEWPORT_OFFSET},dir:{default:`auto`},swipeDirections:{},icons:{},containerAriaLabel:{default:`Notifications`}},setup(__props){let props=__props,attrs=useAttrs(),toasts=ref([]);function filteredToasts(pos,index$1){return toasts.value.filter(toast$1=>!toast$1.position&&index$1===0||toast$1.position===pos)}let possiblePositions=computed(()=>{let posList=toasts.value.filter(toast$1=>toast$1.position).map(toast$1=>toast$1.position);return posList.length>0?Array.from(new Set([props.position].concat(posList))):[props.position]}),toastsByPosition=computed(()=>{let result={};return possiblePositions.value.forEach(pos=>{result[pos]=toasts.value.filter(t=>t.position===pos)}),result}),heights=ref([]),expanded=ref(!1),interacting=ref(!1),actualTheme=ref(props.theme===`system`?typeof window<`u`&&window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:props.theme),listRef=ref(null),lastFocusedElementRef=ref(null),isFocusWithinRef=ref(!1),hotkeyLabel=props.hotkey.join(`+`).replace(/Key/g,``).replace(/Digit/g,``);function removeToast(toastToRemove){var _toasts$value$find;(_toasts$value$find=toasts.value.find(toast$1=>toast$1.id===toastToRemove.id))?.delete||ToastState.dismiss(toastToRemove.id),toasts.value=toasts.value.filter(({id})=>id!==toastToRemove.id),setTimeout(()=>{toasts.value.find(t=>t.id===toastToRemove.id)||(heights.value=heights.value.filter(h$3=>h$3.toastId!==toastToRemove.id))},TIME_BEFORE_UNMOUNT+50)}function onBlur(event){var _event$currentTarget,_event$currentTarget$;isFocusWithinRef.value&&!(!((_event$currentTarget=event.currentTarget)==null||(_event$currentTarget$=_event$currentTarget.contains)==null)&&_event$currentTarget$.call(_event$currentTarget,event.relatedTarget))&&(isFocusWithinRef.value=!1,lastFocusedElementRef.value&&(lastFocusedElementRef.value.focus({preventScroll:!0}),lastFocusedElementRef.value=null))}function onFocus(event){let isNotDismissible=event.target instanceof HTMLElement&&event.target.dataset.dismissible===`false`;isNotDismissible||isFocusWithinRef.value||(isFocusWithinRef.value=!0,lastFocusedElementRef.value=event.relatedTarget)}function onPointerDown(event){if(event.target){let isNotDismissible=event.target instanceof HTMLElement&&event.target.dataset.dismissible===`false`;if(isNotDismissible)return}interacting.value=!0}watchEffect(onInvalidate=>{let unsubscribe=ToastState.subscribe(toast$1=>{if(toast$1.dismiss){requestAnimationFrame(()=>{toasts.value=toasts.value.map(t=>t.id===toast$1.id?{...t,delete:!0}:t)});return}nextTick(()=>{let indexOfExistingToast=toasts.value.findIndex(t=>t.id===toast$1.id);indexOfExistingToast===-1?toasts.value=[toast$1,...toasts.value]:toasts.value=[...toasts.value.slice(0,indexOfExistingToast),{...toasts.value[indexOfExistingToast],...toast$1},...toasts.value.slice(indexOfExistingToast+1)]})});onInvalidate(unsubscribe)}),watchEffect(onInvalidate=>{if(typeof window>`u`)return;if(props.theme!==`system`){actualTheme.value=props.theme;return}let darkMediaQuery=window.matchMedia(`(prefers-color-scheme: dark)`),updateTheme=matches$1=>{actualTheme.value=matches$1?`dark`:`light`};updateTheme(darkMediaQuery.matches);let handler=event=>{updateTheme(event.matches)};try{darkMediaQuery.addEventListener(`change`,handler)}catch{darkMediaQuery.addListener(handler)}onInvalidate(()=>{try{darkMediaQuery.removeEventListener(`change`,handler)}catch{darkMediaQuery.removeListener(handler)}})}),watchEffect(()=>{listRef.value&&lastFocusedElementRef.value&&(lastFocusedElementRef.value.focus({preventScroll:!0}),lastFocusedElementRef.value=null,isFocusWithinRef.value=!1)}),watchEffect(()=>{toasts.value.length<=1&&(expanded.value=!1)}),watchEffect(onInvalidate=>{function handleKeyDown(event){let isHotkeyPressed=props.hotkey.every(key$1=>event[key$1]||event.code===key$1),listRefItem=Array.isArray(listRef.value)?listRef.value[0]:listRef.value;isHotkeyPressed&&(expanded.value=!0,listRefItem?.focus());let isItemActive=document.activeElement===listRef.value||listRefItem?.contains(document.activeElement);event.code===`Escape`&&isItemActive&&(expanded.value=!1)}isClient&&(document.addEventListener(`keydown`,handleKeyDown),onInvalidate(()=>{document.removeEventListener(`keydown`,handleKeyDown)}))});function handleMouseEnter(){expanded.value=!0}function handleMouseLeave(){interacting.value||(expanded.value=!1)}function handleDragEnd(){expanded.value=!1}function handlePointerUp(){interacting.value=!1}function updateHeights(h$3){heights.value=h$3}function updateHeight(h$3){let index$1=heights.value.findIndex(item=>item.toastId===h$3.toastId);if(index$1!==-1)heights.value[index$1]=h$3;else{let samePositionIndex=heights.value.findIndex(item=>item.position===h$3.position);samePositionIndex===-1?heights.value.unshift(h$3):heights.value.splice(samePositionIndex,0,h$3)}}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(Fragment,null,[createCommentVNode(` Remove item from normal navigation flow, only available via hotkey `),createBaseVNode(`section`,{"aria-label":`${_ctx.containerAriaLabel} ${unref(hotkeyLabel)}`,tabIndex:-1,"aria-live":`polite`,"aria-relevant":`additions text`,"aria-atomic":`false`},[(openBlock(!0),createElementBlock(Fragment,null,renderList(possiblePositions.value,(pos,index$1)=>{var _heights$value$;return openBlock(),createElementBlock(`ol`,mergeProps({key:pos,ref_for:!0,ref_key:`listRef`,ref:listRef,"data-sonner-toaster":``,"data-sonner-theme":actualTheme.value,class:props.class,dir:_ctx.dir===`auto`?getDocumentDirection():_ctx.dir,tabIndex:-1,"data-theme":_ctx.theme,"data-rich-colors":_ctx.richColors,"data-y-position":pos.split(`-`)[0],"data-x-position":pos.split(`-`)[1],"data-lifted":expanded.value&&toasts.value.length>1&&!_ctx.expand,style:{"--front-toast-height":`${(_heights$value$=heights.value[0])?.height||0}px`,"--width":`${unref(TOAST_WIDTH)}px`,"--gap":`${_ctx.gap}px`,..._ctx.style,...unref(attrs).style,...unref(assignOffset)(_ctx.offset,_ctx.mobileOffset)}},_ctx.$attrs,{onBlur,onFocus,onMouseenter:handleMouseEnter,onMousemove:handleMouseEnter,onMouseleave:handleMouseLeave,onDragend:handleDragEnd,onPointerdown:onPointerDown,onPointerup:handlePointerUp}),[(openBlock(!0),createElementBlock(Fragment,null,renderList(filteredToasts(pos,index$1),(toast$1,idx)=>{var _ctx$toastOptions,_ctx$toastOptions2,_ctx$toastOptions3,_ctx$toastOptions4,_ctx$toastOptions5,_ctx$toastOptions6,_ctx$toastOptions7,_ctx$toastOptions8,_ctx$toastOptions9,_ctx$toastOptions10;return openBlock(),createBlock(Toast_default,{key:toast$1.id,heights:heights.value,icons:_ctx.icons,index:idx,toast:toast$1,defaultRichColors:_ctx.richColors,duration:(_ctx$toastOptions=_ctx.toastOptions)?.duration??_ctx.duration,class:normalizeClass((_ctx$toastOptions2=_ctx.toastOptions)?.class??``),descriptionClass:(_ctx$toastOptions3=_ctx.toastOptions)?.descriptionClass,invert:_ctx.invert,visibleToasts:_ctx.visibleToasts,closeButton:(_ctx$toastOptions4=_ctx.toastOptions)?.closeButton??_ctx.closeButton,interacting:interacting.value,position:pos,style:normalizeStyle((_ctx$toastOptions5=_ctx.toastOptions)?.style),unstyled:(_ctx$toastOptions6=_ctx.toastOptions)?.unstyled,classes:(_ctx$toastOptions7=_ctx.toastOptions)?.classes,cancelButtonStyle:(_ctx$toastOptions8=_ctx.toastOptions)?.cancelButtonStyle,actionButtonStyle:(_ctx$toastOptions9=_ctx.toastOptions)?.actionButtonStyle,"close-button-aria-label":(_ctx$toastOptions10=_ctx.toastOptions)?.closeButtonAriaLabel,toasts:toastsByPosition.value[pos],expandByDefault:_ctx.expand,gap:_ctx.gap,expanded:expanded.value,swipeDirections:props.swipeDirections,"onUpdate:heights":updateHeights,"onUpdate:height":updateHeight,onRemoveToast:removeToast},{"close-icon":withCtx(()=>[renderSlot(_ctx.$slots,`close-icon`,{},()=>[createVNode(CloseIcon_default)])]),"loading-icon":withCtx(()=>[renderSlot(_ctx.$slots,`loading-icon`,{},()=>[createVNode(Loader_default,{visible:toast$1.type===`loading`},null,8,[`visible`])])]),"success-icon":withCtx(()=>[renderSlot(_ctx.$slots,`success-icon`,{},()=>[createVNode(SuccessIcon_default)])]),"error-icon":withCtx(()=>[renderSlot(_ctx.$slots,`error-icon`,{},()=>[createVNode(ErrorIcon_default)])]),"warning-icon":withCtx(()=>[renderSlot(_ctx.$slots,`warning-icon`,{},()=>[createVNode(WarningIcon_default)])]),"info-icon":withCtx(()=>[renderSlot(_ctx.$slots,`info-icon`,{},()=>[createVNode(InfoIcon_default)])]),_:2},1032,[`heights`,`icons`,`index`,`toast`,`defaultRichColors`,`duration`,`class`,`descriptionClass`,`invert`,`visibleToasts`,`closeButton`,`interacting`,`position`,`style`,`unstyled`,`classes`,`cancelButtonStyle`,`actionButtonStyle`,`close-button-aria-label`,`toasts`,`expandByDefault`,`gap`,`expanded`,`swipeDirections`])}),128))],16,_hoisted_2)}),128))],8,_hoisted_1)],2112))}}),Toaster_default=Toaster_vue_vue_type_script_setup_true_lang_default;const usePWAStore=defineStore(`pwa`,()=>{let updateReadyHooks=ref([]),breakpoints=useBreakpoints(breakpointsTailwind),isMobile=breakpoints.smaller(`md`);onMounted(async()=>{})});var App_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`App`,setup(__props){usePWAStore();let i18n$1=useI18n(),settings=storeToRefs(useSettings()),onboardingStore=useOnboardingStore(),{shouldShowSetup}=storeToRefs(onboardingStore),isDark=useDark(),primaryColor=computed(()=>isDark.value?`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 0)) 70%, oklch(50% 0 360))`:`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 0)) 90%, oklch(90% 0 360))`),secondaryColor=computed(()=>isDark.value?`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 180)) 70%, oklch(50% 0 360))`:`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 180)) 90%, oklch(90% 0 360))`),tertiaryColor=computed(()=>isDark.value?`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 60)) 70%, oklch(50% 0 360))`:`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 60)) 90%, oklch(90% 0 360))`),colors=computed(()=>[primaryColor.value,secondaryColor.value,tertiaryColor.value,isDark.value?`#121212`:`#FFFFFF`]);watch(settings.language,()=>{i18n$1.locale.value=settings.language.value}),watch(settings.themeColorsHue,()=>{document.documentElement.style.setProperty(`--chromatic-hue`,settings.themeColorsHue.value.toString())},{immediate:!0}),watch(settings.themeColorsHueDynamic,()=>{document.documentElement.classList.toggle(`dynamic-hue`,settings.themeColorsHueDynamic.value)},{immediate:!0}),onMounted(()=>{onboardingStore.initializeSetupCheck()});function handleSetupConfigured(){onboardingStore.markSetupCompleted()}function handleSetupSkipped(){onboardingStore.markSetupSkipped()}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(Fragment,null,[createVNode(unref(StageTransitionGroup_default),{"primary-color":primaryColor.value,"secondary-color":secondaryColor.value,"tertiary-color":tertiaryColor.value,colors:colors.value,"z-index":100,"disable-transitions":unref(settings).disableTransitions.value,"use-page-specific-transitions":unref(settings).usePageSpecificTransitions.value},{default:withCtx(()=>[createVNode(unref(RouterView),null,{default:withCtx(({Component})=>[(openBlock(),createBlock(KeepAlive,{include:/IndexScenePage|StageScenePage/},[(openBlock(),createBlock(resolveDynamicComponent(Component)))],1024))]),_:1})]),_:1},8,[`primary-color`,`secondary-color`,`tertiary-color`,`colors`,`disable-transitions`,`use-page-specific-transitions`]),createVNode(unref(ToasterRoot_default),{onClose:_cache$1[0]||=id=>unref(toast).dismiss(id)},{default:withCtx(()=>[createVNode(unref(Toaster_default))]),_:1}),createVNode(unref(OnboardingDialog_default),{modelValue:unref(shouldShowSetup),"onUpdate:modelValue":_cache$1[1]||=$event=>isRef(shouldShowSetup)?shouldShowSetup.value=$event:null,onConfigured:handleSetupConfigured,onSkipped:handleSetupSkipped},null,8,[`modelValue`])],64))}}),App_default=App_vue_vue_type_script_setup_true_lang_default,data$9={prompt:{prefix:`(from Neko Ayaka) Good morning! You are finally awake. +`).map(line=>{if(line.startsWith(`{{char}}:`)||line.startsWith(`{{user}}:`))return line;throw Error(`Invalid message example format: ${line}`)})):[],tags:ccv3Card.data.tags??[],extensions:{airi:resolveAiriExtension(ccv3Card),...ccv3Card.data.extensions}}}return{...card,extensions:{airi:resolveAiriExtension(card),...card.extensions}}}return onMounted(()=>{let{t}=useI18n();cards.value.set(`default`,newAiriCard({name:`ReLU`,version:`1.0.0`,description:system_v2_default(t(`base.prompt.prefix`),t(`base.prompt.suffix`)).content}))}),watch(activeCard,newCard=>{if(!newCard)return;let extension$1=resolveAiriExtension(newCard);extension$1&&(activeConsciousnessModel.value=extension$1?.modules?.consciousness?.model,activeSpeechModel.value=extension$1?.modules?.speech?.model,activeSpeechVoiceId.value=extension$1?.modules?.speech?.voice_id)}),{cards,activeCard,activeCardId,addCard,removeCard,getCard,currentModels:computed(()=>({consciousness:{model:activeConsciousnessModel.value},speech:{model:activeSpeechModel.value,voice_id:activeSpeechVoiceId.value}})),systemPrompt:computed(()=>{let card=activeCard.value;if(!card)return``;let components=[card.systemPrompt,card.description,card.personality].filter(Boolean);return components.join(` +`)})}}),useChatStore=defineStore(`chat`,()=>{let{stream}=useLLM(),{systemPrompt}=storeToRefs(useAiriCardStore()),sending=ref(!1),onBeforeMessageComposedHooks=ref([]),onAfterMessageComposedHooks=ref([]),onBeforeSendHooks=ref([]),onAfterSendHooks=ref([]),onTokenLiteralHooks=ref([]),onTokenSpecialHooks=ref([]),onStreamEndHooks=ref([]),onAssistantResponseEndHooks=ref([]);function onBeforeMessageComposed(cb$1){onBeforeMessageComposedHooks.value.push(cb$1)}function onAfterMessageComposed(cb$1){onAfterMessageComposedHooks.value.push(cb$1)}function onBeforeSend(cb$1){onBeforeSendHooks.value.push(cb$1)}function onAfterSend(cb$1){onAfterSendHooks.value.push(cb$1)}function onTokenLiteral(cb$1){onTokenLiteralHooks.value.push(cb$1)}function onTokenSpecial(cb$1){onTokenSpecialHooks.value.push(cb$1)}function onStreamEnd(cb$1){onStreamEndHooks.value.push(cb$1)}function onAssistantResponseEnd(cb$1){onAssistantResponseEndHooks.value.push(cb$1)}let messages=ref([{role:`system`,content:systemPrompt.value}]),streamingMessage=ref({role:`assistant`,content:``,slices:[],tool_results:[]});async function send(sendingMessage,options$1){try{if(sending.value=!0,!sendingMessage)return;for(let hook of onBeforeMessageComposedHooks.value)await hook(sendingMessage);let parser=useLlmmarkerParser({onLiteral:async literal=>{for(let hook of onTokenLiteralHooks.value)await hook(literal);streamingMessage.value.content+=literal;let lastSlice=streamingMessage.value.slices.at(-1);if(lastSlice?.type===`text`){lastSlice.text+=literal;return}streamingMessage.value.slices.push({type:`text`,text:literal})},onSpecial:async special=>{for(let hook of onTokenSpecialHooks.value)await hook(special)}}),slicesQueue=useQueue({handlers:[async ctx=>{if(ctx.data.type===`text`){await parser.consume(ctx.data.text);return}if(ctx.data.type===`tool-call`){streamingMessage.value.slices.push(ctx.data);return}ctx.data.type===`tool-call-result`&&streamingMessage.value.tool_results.push(ctx.data)}]});streamingMessage.value={role:`assistant`,content:``,slices:[],tool_results:[]},messages.value.push({role:`user`,content:sendingMessage}),messages.value.push(streamingMessage.value);let newMessages=messages.value.slice(0,messages.value.length-1).map(msg=>{if(msg.role===`assistant`){let{slices:_$2,...rest}=msg;return rest.tool_results=toRaw(rest.tool_results),toRaw(rest)}return toRaw(msg)});for(let hook of onAfterMessageComposedHooks.value)await hook(sendingMessage);for(let hook of onBeforeSendHooks.value)await hook(sendingMessage);let headers=options$1.providerConfig?.headers||{},res=await stream(options$1.model,options$1.chatProvider,newMessages,{headers,onToolCall(toolCall){slicesQueue.add({type:`tool-call`,toolCall})},onToolCallResult(toolCallResult){slicesQueue.add({type:`tool-call-result`,id:toolCallResult.id,result:toolCallResult.result})}});for(let hook of onAfterSendHooks.value)await hook(sendingMessage);let fullText=``;for await(let textPart of readableStreamToAsyncIterator(res.textStream,async v$1=>v$1))slicesQueue.add({type:`text`,text:textPart}),fullText+=textPart;await parser.end();for(let hook of onStreamEndHooks.value)await hook();for(let hook of onAssistantResponseEndHooks.value)await hook(fullText);console.debug(`LLM output:`,fullText)}catch(error){throw console.error(`Error sending message:`,error),error}finally{sending.value=!1}}return{sending,messages,streamingMessage,send,onBeforeMessageComposed,onAfterMessageComposed,onBeforeSend,onAfterSend,onTokenLiteral,onTokenSpecial,onStreamEnd,onAssistantResponseEnd}}),useMcpStore=defineStore(`mcp`,()=>{let serverCmd=useLocalStorage(`settings/mcp/server-cmd`,``),serverArgs=useLocalStorage(`settings/mcp/server-args`,``),connected=useLocalStorage(`mcp/connected`,!1);return{serverCmd,serverArgs,connected}}),useOnboardingStore=defineStore(`onboarding`,()=>{let providersStore=useProvidersStore(),hasCompletedSetup=useLocalStorage(`onboarding/completed`,!1),hasSkippedSetup=useLocalStorage(`onboarding/skipped`,!1),shouldShowSetup=ref(!1),hasEssentialProviderConfigured=computed(()=>{let essentialProviders=[`openai`,`anthropic`,`google-generative-ai`,`openrouter-ai`,`ollama`,`deepseek`];return essentialProviders.some(providerId=>providersStore.configuredProviders[providerId])}),needsOnboarding=computed(()=>hasCompletedSetup.value||hasSkippedSetup.value?(console.warn(`Onboarding already completed or skipped`),!1):hasEssentialProviderConfigured.value?(console.warn(`Essential provider already configured, no onboarding needed`),!1):!0);async function initializeSetupCheck(){needsOnboarding.value&&(await nextTick(),shouldShowSetup.value=!0)}function markSetupCompleted(){hasCompletedSetup.value=!0,hasSkippedSetup.value=!1,shouldShowSetup.value=!1}function markSetupSkipped(){hasSkippedSetup.value=!0,shouldShowSetup.value=!1}function resetSetupState(){hasCompletedSetup.value=!1,hasSkippedSetup.value=!1,shouldShowSetup.value=!1}function forceShowSetup(){shouldShowSetup.value=!0}return{hasCompletedSetup,hasSkippedSetup,shouldShowSetup,hasEssentialProviderConfigured,needsOnboarding,initializeSetupCheck,markSetupCompleted,markSetupSkipped,resetSetupState,forceShowSetup}}),WebSocket$1=globalThis.WebSocket,sleep=async delay=>new Promise(resolve$1=>setTimeout(resolve$1,delay));var Client=class{connected=!1;opts;websocket;eventListeners=new Map;reconnectAttempts=0;shouldClose=!1;constructor(options$1){if(this.opts={url:`ws://localhost:6121/ws`,possibleEvents:[],onError:()=>{},onClose:()=>{},autoConnect:!0,autoReconnect:!0,...options$1},this.opts.autoConnect)try{this.connect()}catch(err){console.error(err)}}async retryWithExponentialBackoff(fn$5,attempts=0,maxAttempts=-1){if(maxAttempts!==-1&&attempts>=maxAttempts){console.error(`Maximum retry attempts (${maxAttempts}) reached`);return}try{await fn$5()}catch(err){console.error(`Encountered an error when retrying`,err),await sleep(2**attempts*1e3),await this.retryWithExponentialBackoff(fn$5,attempts+1,maxAttempts)}}async tryReconnectWithExponentialBackoff(){await this.retryWithExponentialBackoff(()=>this._connect(),this.reconnectAttempts)}_connect(){return new Promise((resolve$1,reject)=>{if(this.shouldClose){resolve$1();return}if(this.connected){resolve$1();return}this.websocket=new WebSocket$1(this.opts.url),this.onEvent(`module:authenticated`,async event=>{let auth=event.data.authenticated;auth?this.tryAnnounce():this.retryWithExponentialBackoff(()=>this.tryAuthenticate())}),this.websocket.onerror=event=>{if(this.opts.onError?.(event),`error`in event&&event.error instanceof Error&&event.error.message===`Received network error or non-101 status code.`){if(this.connected=!1,!this.opts.autoReconnect){this.opts.onError?.(event),this.opts.onClose?.(),reject(event.error);return}reject(event.error)}},this.websocket.onclose=()=>{this.opts.onClose?.(),this.connected=!1,this.opts.autoReconnect?this.tryReconnectWithExponentialBackoff():this.opts.onClose?.()},this.websocket.onmessage=event=>{this.handleMessage(event)},this.websocket.onopen=()=>{this.reconnectAttempts=0,this.opts.token?this.tryAuthenticate():this.tryAnnounce(),this.connected=!0,resolve$1()}})}async connect(){await this.tryReconnectWithExponentialBackoff()}tryAnnounce(){this.send({type:`module:announce`,data:{name:this.opts.name,possibleEvents:this.opts.possibleEvents}})}tryAuthenticate(){this.opts.token&&this.send({type:`module:authenticate`,data:{token:this.opts.token||``}})}async handleMessage(event){try{let data$10=JSON.parse(event.data),listeners=this.eventListeners.get(data$10.type);if(!listeners)return;for(let listener of listeners)await listener(data$10)}catch(err){console.error(`Failed to parse message:`,err),this.opts.onError?.(err)}}onEvent(event,callback){this.eventListeners.get(event)||this.eventListeners.set(event,[]);let listeners=this.eventListeners.get(event);listeners&&listeners.push(callback)}send(data$10){this.websocket?.send(JSON.stringify(data$10))}sendRaw(data$10){this.websocket?.send(data$10)}close(){this.shouldClose=!0,this.connected&&this.websocket&&(this.websocket.close(),this.connected=!1)}};const useServerStore=defineStore(`server`,()=>{let server=ref();onMounted(()=>{server.value=new Client({name:`stage-web`,autoConnect:!1,autoReconnect:!0,onError:error=>{console.error(error)}})});function connect(){server.value?.connect()}return{server,connect}}),DEFAULT_THEME_COLORS_HUE=220.44,convert=converter_default(`oklch`),getHueFrom=color$2=>color$2?convert(color$2)?.h:DEFAULT_THEME_COLORS_HUE,useSettings=defineStore(`settings`,()=>{let selectedAudioDevice=ref(),language=useLocalStorage(`settings/language`,`en`),stageView=useLocalStorage(`settings/stage/view/model-renderer`,`2d`),isAudioInputOn=useLocalStorage(`settings/audio/input`,`false`),selectedAudioDeviceId=computed(()=>selectedAudioDevice.value?.deviceId),{audioInputs,ensurePermissions}=useDevicesList({constraints:{audio:!0}}),live2dModelFile=ref(),live2dModelUrl=ref(`/assets/live2d/models/hiyori_pro_zh.zip`),live2dLoadSource=ref(`url`),loadingLive2dModel=ref(!1),live2dPosition=useLocalStorage(`settings/live2d/position`,{x:0,y:0}),live2dCurrentMotion=ref({group:`Idle`,index:0}),availableLive2dMotions=ref([]),live2dMotionMap=useLocalStorage(`settings/live2d/motion-map`,{}),disableTransitions=useLocalStorage(`settings/disable-transitions`,!0),usePageSpecificTransitions=useLocalStorage(`settings/use-page-specific-transitions`,!0),themeColorsHue=useLocalStorage(`settings/theme/colors/hue`,DEFAULT_THEME_COLORS_HUE),themeColorsHueDynamic=useLocalStorage(`settings/theme/colors/hue-dynamic`,!1),allowVisibleOnAllWorkspaces=useLocalStorage(`settings/allow-visible-on-all-workspaces`,!0);function setThemeColorsHue(hue$2=DEFAULT_THEME_COLORS_HUE){themeColorsHue.value=hue$2,themeColorsHueDynamic.value=!1}function applyPrimaryColorFrom(color$2){setThemeColorsHue(getHueFrom(color$2))}function isColorSelectedForPrimary(hexColor){if(themeColorsHueDynamic.value)return!1;let h$3=getHueFrom(hexColor);if(!h$3)return!1;let hueDifference=Math.abs(h$3-themeColorsHue.value);return hueDifference<.01||hueDifference>359.99}return watch(isAudioInputOn,value$1=>{value$1===`false`&&(selectedAudioDevice.value=void 0),value$1===`true`&&ensurePermissions().then(()=>{selectedAudioDevice.value=audioInputs.value[0]})}),watch(audioInputs,()=>{isAudioInputOn.value===`true`&&!selectedAudioDevice.value&&(selectedAudioDevice.value=audioInputs.value[0])},{immediate:!0}),{live2dModelFile,live2dModelUrl,live2dLoadSource,live2dCurrentMotion,live2dPosition,availableLive2dMotions,live2dMotionMap,loadingLive2dModel,disableTransitions,usePageSpecificTransitions,language,stageView,themeColorsHue,themeColorsHueDynamic,isAudioInputOn,selectedAudioDevice,selectedAudioDeviceId,allowVisibleOnAllWorkspaces,setThemeColorsHue,applyPrimaryColorFrom,isColorSelectedForPrimary}}),_hoisted_1$9={flex:`~ col md:row gap-6`},_hoisted_2$4={flex:`~ col gap-6`},_hoisted_3$1={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},_hoisted_4$1={flex:`~ col gap-4`},_hoisted_5$1={flex:`~ col gap-6`,class:`w-full md:w-[60%]`},_hoisted_6$1={"w-full":``,"rounded-xl":``};var SpeechProviderSettings_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SpeechProviderSettings`,props:{providerId:{},defaultModel:{},additionalSettings:{}},setup(__props){let props=__props,{t}=useI18n(),router$1=useRouter(),providersStore=useProvidersStore(),speechStore=useSpeechStore(),{providers}=storeToRefs(providersStore),providerMetadata=computed(()=>providersStore.getProviderMetadata(props.providerId)),apiKey=computed({get:()=>providers.value[props.providerId]?.apiKey||``,set:value$1=>{providers.value[props.providerId]||(providers.value[props.providerId]={}),providers.value[props.providerId].apiKey=value$1}}),baseUrl=computed({get:()=>providers.value[props.providerId]?.baseUrl||providerMetadata.value?.defaultOptions?.().baseUrl||``,set:value$1=>{providers.value[props.providerId]||(providers.value[props.providerId]={}),providers.value[props.providerId].baseUrl=value$1}}),testText=ref(`Hello! This is a test of voice synthesis.`),isGenerating=ref(!1),audioUrl=ref(``),errorMessage=ref(``),audioPlayer=ref(null),useSSML=ref(!1),ssmlText=ref(``),activeSpeechVoice=ref(``),voiceSettings=ref({});function initializeVoiceSettings(){providers.value[props.providerId]?.voiceSettings?voiceSettings.value={...providers.value[props.providerId].voiceSettings}:voiceSettings.value={pitch:0,speed:1,volume:0,...props.additionalSettings}}onMounted(()=>{providersStore.initializeProvider(props.providerId),apiKey.value=providers.value[props.providerId]?.apiKey||``,baseUrl.value=providers.value[props.providerId]?.baseUrl||providerMetadata.value?.defaultOptions?.().baseUrl||``,initializeVoiceSettings(),providersStore.configuredProviders[props.providerId]&&speechStore.loadVoicesForProvider(props.providerId)});let debouncedUpdate=useDebounceFn(()=>{providers.value[props.providerId]={...providers.value[props.providerId],apiKey:apiKey.value,baseUrl:baseUrl.value||providerMetadata.value?.defaultOptions?.().baseUrl||``,voiceSettings:{...voiceSettings.value}}},1e3);watch([apiKey,baseUrl],debouncedUpdate),watch(voiceSettings,debouncedUpdate,{deep:!0});async function generateTestSpeech(){if(!testText.value.trim()&&!useSSML.value||useSSML.value&&!ssmlText.value.trim())return;let provider=providersStore.getProviderInstance(props.providerId);if(!provider){console.error(`Failed to initialize speech provider`);return}if(!activeSpeechVoice.value){console.error(`No active speech voice selected`);return}isGenerating.value=!0,errorMessage.value=``;try{audioUrl.value&&stopTestAudio();let modelToUse=props.defaultModel||`default`,input=useSSML.value?ssmlText.value:testText.value,response=await generateSpeech({...provider.speech(modelToUse,{voiceSettings:voiceSettings.value}),input,voice:activeSpeechVoice.value});audioUrl.value=URL.createObjectURL(new Blob([response])),setTimeout(()=>{audioPlayer.value&&audioPlayer.value.play()},100)}catch(error){console.error(`Error generating speech:`,error),errorMessage.value=error instanceof Error?error.message:`An unknown error occurred`}finally{isGenerating.value=!1}}function stopTestAudio(){audioPlayer.value&&(audioPlayer.value.pause(),audioPlayer.value.currentTime=0),audioUrl.value&&(URL.revokeObjectURL(audioUrl.value),audioUrl.value=``)}onUnmounted(()=>{audioUrl.value&&URL.revokeObjectURL(audioUrl.value)});function handleResetVoiceSettings(){voiceSettings.value={...providerMetadata.value?.defaultOptions?.().voiceSettings||{}},debouncedUpdate()}function updateVoiceSetting(key$1,value$1){voiceSettings.value[key$1]=value$1}let slotData=computed(()=>({voiceSettings:voiceSettings.value,updateVoiceSettings:updateVoiceSetting,isGenerating:isGenerating.value,testText:testText.value,useSSML:useSSML.value,ssmlText:ssmlText.value,generateTestSpeech,stopTestAudio,audioUrl:audioUrl.value,audioPlayer:audioPlayer.value,errorMessage:errorMessage.value}));return(_ctx,_cache$1)=>(openBlock(),createBlock(ProviderSettingsLayout2_default,{"provider-name":providerMetadata.value?.localizedName,"provider-icon":providerMetadata.value?.icon,"on-back":()=>unref(router$1).back()},{default:withCtx(()=>[createBaseVNode(`div`,_hoisted_1$9,[createVNode(unref(ProviderSettingsContainer_default),{class:`w-full md:w-[40%]`},{default:withCtx(()=>[createVNode(unref(ProviderBasicSettings_default),{title:unref(t)(`settings.pages.providers.common.section.basic.title`),description:unref(t)(`settings.pages.providers.common.section.basic.description`),"on-reset":handleResetVoiceSettings},{default:withCtx(()=>[createVNode(unref(ProviderApiKeyInput_default),{modelValue:apiKey.value,"onUpdate:modelValue":_cache$1[0]||=$event=>apiKey.value=$event,"provider-name":providerMetadata.value?.localizedName,placeholder:`sk-`},null,8,[`modelValue`,`provider-name`]),renderSlot(_ctx.$slots,`basic-settings`)]),_:3},8,[`title`,`description`]),createBaseVNode(`div`,_hoisted_2$4,[createBaseVNode(`h2`,_hoisted_3$1,toDisplayString(unref(t)(`settings.pages.providers.common.section.voice.title`)),1),createBaseVNode(`div`,_hoisted_4$1,[renderSlot(_ctx.$slots,`voice-settings`,normalizeProps(guardReactiveProps(slotData.value)))])]),createVNode(unref(ProviderAdvancedSettings_default),{title:unref(t)(`settings.pages.providers.common.section.advanced.title`)},{default:withCtx(()=>[createVNode(unref(ProviderBaseUrlInput_default),{modelValue:baseUrl.value,"onUpdate:modelValue":_cache$1[1]||=$event=>baseUrl.value=$event,placeholder:providerMetadata.value?.defaultOptions?.().baseUrl||``,required:``},null,8,[`modelValue`,`placeholder`]),renderSlot(_ctx.$slots,`advanced-settings`)]),_:3},8,[`title`])]),_:3}),createBaseVNode(`div`,_hoisted_5$1,[createBaseVNode(`div`,_hoisted_6$1,[renderSlot(_ctx.$slots,`playground`,normalizeProps(guardReactiveProps(slotData.value)))])])])]),_:3},8,[`provider-name`,`provider-icon`,`on-back`]))}}),SpeechProviderSettings_default=SpeechProviderSettings_vue_vue_type_script_setup_true_lang_default,onboarding_default=`/assets/onboarding-NsdTpLwA.png`;const _hoisted_1$8={"h-full":``,"w-full":``},_hoisted_2$3={key:0,"h-full":``,flex:``,"flex-col":``},_hoisted_3={class:`mb-2 text-center md:mb-8`,flex:``,"flex-1":``,"flex-col":``,"justify-center":``},_hoisted_4={initial:{opacity:0,scale:.5},visible:{opacity:1,scale:1},duration:500,class:`mb-1 flex justify-center md:mb-4 lg:pt-16 md:pt-8`},_hoisted_5=[`src`],_hoisted_6={initial:{opacity:0,y:10},visible:{opacity:1,y:0},duration:500,class:`mb-0 text-3xl text-neutral-800 font-bold md:mb-2 dark:text-neutral-100`},_hoisted_7={initial:{opacity:0,y:10},visible:{opacity:1,y:0},duration:500,delay:100,class:`text-sm text-neutral-600 md:text-lg dark:text-neutral-400`},_hoisted_8={key:1,"h-full":``,flex:``,"flex-col":``,"gap-4":``},_hoisted_9={bg:`white dark:#181818`,sticky:``,"top-0":``,"z-100":``,flex:``,"flex-shrink-0":``,"items-center":``,"gap-2":``},_hoisted_10={class:`flex-1 text-center text-xl text-neutral-800 font-semibold md:text-left md:text-2xl dark:text-neutral-100`},_hoisted_11={class:`flex-1 overflow-y-auto`},_hoisted_12={class:`grid grid-cols-1 gap-3 sm:grid-cols-2`},_hoisted_13={key:2,"h-full":``,flex:``,"flex-col":``,"gap-4":``},_hoisted_14={bg:`white dark:#181818`,sticky:``,"top-0":``,"z-100":``,flex:``,"flex-shrink-0":``,"items-center":``,"gap-2":``},_hoisted_15={class:`flex-1 text-center text-xl text-neutral-800 font-semibold md:text-left md:text-2xl dark:text-neutral-100`},_hoisted_16={key:0,"flex-1":``,"overflow-y-auto":``},_hoisted_17={class:`space-y-4`},_hoisted_18={key:0},_hoisted_19={key:1},_hoisted_20={key:2},_hoisted_21={key:0,class:`mt-4`};var Onboarding_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Onboarding`,emits:[`configured`,`skipped`],setup(__props,{emit:__emit}){let emit$1=__emit,step=ref(1),direction=ref(`next`),{t}=useI18n(),providersStore=useProvidersStore(),{providers,allChatProvidersMetadata}=storeToRefs(providersStore),popularProviders=computed(()=>{let popular=[`openai`,`anthropic`,`google-generative-ai`,`openrouter-ai`,`ollama`,`deepseek`];return allChatProvidersMetadata.value.filter(provider=>popular.includes(provider.id)).sort((a$2,b$3)=>popular.indexOf(a$2.id)-popular.indexOf(b$3.id))}),selectedProviderId=ref(``),apiKey=ref(``),baseUrl=ref(``),accountId=ref(``),selectedProvider=computed(()=>allChatProvidersMetadata.value.find(p$5=>p$5.id===selectedProviderId.value)||null),isValidating=ref(!1),isValid$1=ref(!1),validationMessage=ref(``),needsApiKey=computed(()=>selectedProvider.value?selectedProvider.value.id!==`ollama`&&selectedProvider.value.id!==`player2`:!1),needsBaseUrl=computed(()=>selectedProvider.value?selectedProvider.value.id!==`cloudflare-workers-ai`:!1),canSave=computed(()=>!selectedProvider.value||needsApiKey.value&&!apiKey.value.trim()||needsBaseUrl.value&&!baseUrl.value.trim()||selectedProvider.value.id===`cloudflare-workers-ai`&&!accountId.value.trim()?!1:isValid$1.value);function selectProvider(provider){selectedProviderId.value=provider.id;let defaultOptions=provider.defaultOptions?.()||{};baseUrl.value=defaultOptions?.baseUrl||``,apiKey.value=``,accountId.value=``,isValid$1.value=!1,validationMessage.value=``}function getApiKeyPlaceholder(_providerId){let placeholders={openai:`sk-...`,anthropic:`sk-ant-...`,"google-generative-ai":`GEMINI_API_KEY`,"openrouter-ai":`sk-or-...`,deepseek:`sk-...`,xai:`xai-...`,"together-ai":`togetherapi-...`,"mistral-ai":`mis-...`,"moonshot-ai":`ms-...`,"fireworks-ai":`fw-...`,"featherless-ai":`fw-...`,"novita-ai":`nvt-...`};return placeholders[_providerId]||`API Key`}function getBaseUrlPlaceholder(_providerId){let defaultOptions=selectedProvider.value?.defaultOptions?.()||{};return defaultOptions?.baseUrl||`https://api.example.com/v1/`}async function validateConfiguration(){if(selectedProvider.value){isValidating.value=!0,validationMessage.value=t(`settings.dialogs.onboarding.validating`);try{let config={};needsApiKey.value&&(config.apiKey=apiKey.value.trim()),needsBaseUrl.value&&(config.baseUrl=baseUrl.value.trim()),selectedProvider.value.id===`cloudflare-workers-ai`&&(config.accountId=accountId.value.trim());let metadata=providersStore.getProviderMetadata(selectedProvider.value.id);isValid$1.value=await metadata.validators.validateProviderConfig(config),isValid$1.value?validationMessage.value=t(`settings.dialogs.onboarding.validationSuccess`):validationMessage.value=t(`settings.dialogs.onboarding.validationFailed`)}catch(error){isValid$1.value=!1,validationMessage.value=t(`settings.dialogs.onboarding.validationError`,{error:error instanceof Error?error.message:String(error)})}finally{isValidating.value=!1}}}let debouncedValidateConfiguration=useDebounceFn(()=>{selectedProvider.value&&(needsApiKey.value&&!apiKey.value.trim()||needsBaseUrl.value&&!baseUrl.value.trim()||selectedProvider.value.id===`cloudflare-workers-ai`&&!accountId.value.trim()||validateConfiguration())},500);watch([apiKey,baseUrl,accountId],()=>{selectedProvider.value&&(apiKey.value||baseUrl.value||accountId.value)&&debouncedValidateConfiguration()},{deep:!0});async function handleSave(){if(!selectedProvider.value||!canSave.value)return;let config={};needsApiKey.value&&(config.apiKey=apiKey.value.trim()),needsBaseUrl.value&&(config.baseUrl=baseUrl.value.trim()),selectedProvider.value.id===`cloudflare-workers-ai`&&(config.accountId=accountId.value.trim()),providers.value[selectedProvider.value.id]={...providers.value[selectedProvider.value.id],...config},await nextTick(),emit$1(`configured`)}function handlePreviousStep(){step.value>1&&(direction.value=`previous`,step.value--)}function handleNextStep(){step.value<3?(direction.value=`next`,step.value++):handleSave()}return onMounted(()=>{popularProviders.value.length>0&&(selectedProviderId.value=popularProviders.value[0].id,selectProvider(popularProviders.value[0]))}),(_ctx,_cache$1)=>{let _directive_motion=resolveDirective(`motion`);return openBlock(),createElementBlock(`div`,_hoisted_1$8,[createVNode(Transition,{name:direction.value===`next`?`slide-next`:`slide-prev`,mode:`out-in`},{default:withCtx(()=>[step.value===1?(openBlock(),createElementBlock(`div`,_hoisted_2$3,[createBaseVNode(`div`,_hoisted_3,[withDirectives((openBlock(),createElementBlock(`div`,_hoisted_4,[createBaseVNode(`img`,{src:unref(onboarding_default),"max-h":`50`,"aspect-square":``,"h-auto":``,"w-auto":``,"object-cover":``},null,8,_hoisted_5)])),[[_directive_motion]]),withDirectives((openBlock(),createElementBlock(`h2`,_hoisted_6,[createTextVNode(toDisplayString(unref(t)(`settings.dialogs.onboarding.title`)),1)])),[[_directive_motion]]),withDirectives((openBlock(),createElementBlock(`p`,_hoisted_7,[createTextVNode(toDisplayString(unref(t)(`settings.dialogs.onboarding.description`)),1)])),[[_directive_motion]])]),withDirectives(createVNode(unref(Button_default),{initial:{opacity:0},visible:{opacity:1},duration:500,delay:200,label:unref(t)(`settings.dialogs.onboarding.start`),onClick:handleNextStep},null,8,[`label`]),[[_directive_motion]])])):step.value===2?(openBlock(),createElementBlock(`div`,_hoisted_8,[createBaseVNode(`div`,_hoisted_9,[createBaseVNode(`button`,{"outline-none":``,onClick:handlePreviousStep},_cache$1[4]||=[createBaseVNode(`div`,{class:`i-solar:alt-arrow-left-line-duotone h-5 w-5`},null,-1)]),createBaseVNode(`h2`,_hoisted_10,toDisplayString(unref(t)(`settings.dialogs.onboarding.selectProvider`)),1),_cache$1[5]||=createBaseVNode(`div`,{class:`h-5 w-5`},null,-1)]),createBaseVNode(`div`,_hoisted_11,[createBaseVNode(`div`,_hoisted_12,[(openBlock(!0),createElementBlock(Fragment,null,renderList(popularProviders.value,provider=>(openBlock(),createBlock(unref(RadioCardDetail_default),{id:provider.id,key:provider.id,modelValue:selectedProviderId.value,"onUpdate:modelValue":_cache$1[0]||=$event=>selectedProviderId.value=$event,name:`provider-selection`,value:provider.id,title:provider.localizedName||provider.id,description:provider.localizedDescription||``,onClick:$event=>selectProvider(provider)},null,8,[`id`,`modelValue`,`value`,`title`,`description`,`onClick`]))),128))])]),createVNode(unref(Button_default),{label:unref(t)(`settings.dialogs.onboarding.next`),disabled:!selectedProviderId.value,onClick:handleNextStep},null,8,[`label`,`disabled`])])):step.value===3&&selectedProvider.value?(openBlock(),createElementBlock(`div`,_hoisted_13,[createBaseVNode(`div`,_hoisted_14,[createBaseVNode(`button`,{"outline-none":``,onClick:handlePreviousStep},_cache$1[6]||=[createBaseVNode(`div`,{"i-solar:alt-arrow-left-line-duotone":``,"h-5":``,"w-5":``},null,-1)]),createBaseVNode(`h2`,_hoisted_15,toDisplayString(unref(t)(`settings.dialogs.onboarding.configureProvider`,{provider:selectedProvider.value.localizedName})),1),_cache$1[7]||=createBaseVNode(`div`,{"h-5":``,"w-5":``},null,-1)]),selectedProvider.value?(openBlock(),createElementBlock(`div`,_hoisted_16,[createVNode(unref(Callout_default),{label:`Keep your API keys and credentials safe!`,theme:`violet`},{default:withCtx(()=>_cache$1[8]||=[createBaseVNode(`div`,null,[createBaseVNode(`div`,null,` AIRI is running pure locally in your browser, and we will never steal your credentials for AI / LLM providers. But keep in mind that your API keys are sensitive information. Make sure to keep them safe and do not share them with anyone. `),createBaseVNode(`div`,null,[createTextVNode(` AIRI is open sourced at `),createBaseVNode(`div`,{"inline-flex":``,"translate-y-1":``,"items-center":``,"gap-1":``},[createBaseVNode(`div`,{"i-simple-icons:github":``,"inline-block":``}),createBaseVNode(`a`,{"decoration-underline":``,"decoration-dashed":``,href:`https://github.com/moeru-ai/airi`,target:`_blank`,rel:`noopener noreferrer`},`GitHub`)]),createTextVNode(`, if you want to check how we handle your credentials, feel free to inspect our code. `)])],-1)]),_:1,__:[8]}),createBaseVNode(`div`,_hoisted_17,[needsApiKey.value?(openBlock(),createElementBlock(`div`,_hoisted_18,[createVNode(unref(FieldInput_default),{modelValue:apiKey.value,"onUpdate:modelValue":_cache$1[1]||=$event=>apiKey.value=$event,placeholder:getApiKeyPlaceholder(selectedProvider.value.id),type:`password`,label:`API Key`,description:`Enter your API key for the selected provider.`,required:``},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0),needsBaseUrl.value?(openBlock(),createElementBlock(`div`,_hoisted_19,[createVNode(unref(FieldInput_default),{modelValue:baseUrl.value,"onUpdate:modelValue":_cache$1[2]||=$event=>baseUrl.value=$event,placeholder:getBaseUrlPlaceholder(selectedProvider.value.id),type:`text`,label:`Base URL`,description:`Enter the base URL for the provider's API.`},null,8,[`modelValue`,`placeholder`])])):createCommentVNode(``,!0),selectedProvider.value.id===`cloudflare-workers-ai`?(openBlock(),createElementBlock(`div`,_hoisted_20,[createVNode(unref(ProviderAccountIdInput_default),{modelValue:accountId.value,"onUpdate:modelValue":_cache$1[3]||=$event=>accountId.value=$event},null,8,[`modelValue`])])):createCommentVNode(``,!0)]),validationMessage.value?(openBlock(),createElementBlock(`div`,_hoisted_21,[createBaseVNode(`div`,{class:normalizeClass([`flex items-center rounded-lg p-3`,[isValidating.value?`bg-blue-50 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300`:isValid$1.value?`bg-green-50 text-green-700 dark:bg-green-900/30 dark:text-green-300`:`bg-red-50 text-red-700 dark:bg-red-900/30 dark:text-red-300`]])},[createBaseVNode(`div`,{class:normalizeClass([`mr-2 text-lg`,[isValidating.value?`i-svg-spinners:3-dots-fade`:isValid$1.value?`i-solar:check-circle-bold-duotone`:`i-solar:danger-circle-bold-duotone`]])},null,2),createTextVNode(` `+toDisplayString(validationMessage.value),1)],2)])):createCommentVNode(``,!0)])):createCommentVNode(``,!0),createVNode(unref(Button_default),{variant:`primary`,disabled:!canSave.value,label:unref(t)(`settings.dialogs.onboarding.saveAndContinue`),onClick:handleSave},null,8,[`disabled`,`label`])])):createCommentVNode(``,!0)]),_:1},8,[`name`])])}}}),Onboarding_default=__plugin_vue_export_helper_default(Onboarding_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-b0368141`]]);(function(){"use strict";var t;try{if(typeof document<`u`){var a$2=document.createElement(`style`);a$2.nonce=(t=document.head.querySelector(`meta[property=csp-nonce]`))?.content,a$2.appendChild(document.createTextNode(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32,.72,0,1);animation-duration:.5s;animation-timing-function:cubic-bezier(.32,.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform, 100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform, 100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top],[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height, 0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left],[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height, 0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(.32,.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32,.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true]):after{content:"";position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]:after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]:after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]:after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]:after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not([data-state=closed]){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:hover,[data-vaul-handle]:active{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover: hover) and (pointer: fine){[data-vaul-drawer]{-webkit-user-select:none;user-select:none}}@media (pointer: fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{0%{transform:translate3d(0,var(--initial-transform, 100%),0)}to{transform:translateZ(0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform, 100%),0)}}@keyframes slideFromTop{0%{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}to{transform:translateZ(0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform, 100%) * -1),0)}}@keyframes slideFromLeft{0%{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}to{transform:translateZ(0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform, 100%) * -1),0,0)}}@keyframes slideFromRight{0%{transform:translate3d(var(--initial-transform, 100%),0,0)}to{transform:translateZ(0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform, 100%),0,0)}}`)),document.head.appendChild(a$2)}}catch(r$2){console.error(`vite-plugin-css-injected-by-js`,r$2)}})();const rt=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;const ut=e$3=>typeof e$3<`u`;function st(e$3){return JSON.parse(JSON.stringify(e$3))}function $e(e$3,n$2,s$1,i$1={}){var t,w$1,d$2;let{clone:v$1=!1,passive:D$1=!1,eventName:$$1,deep:T$1=!1,defaultValue:r$2,shouldEmit:l$1}=i$1,h$3=getCurrentInstance(),m$2=s$1||h$3?.emit||(t=h$3?.$emit)?.bind(h$3)||(d$2=(w$1=h$3?.proxy)?.$emit)?.bind(h$3?.proxy),u$1=$$1;n$2||=`modelValue`,u$1||=`update:${n$2.toString()}`;let L$1=a$2=>v$1?typeof v$1==`function`?v$1(a$2):st(a$2):a$2,H$2=()=>ut(e$3[n$2])?L$1(e$3[n$2]):r$2,p$5=a$2=>{l$1?l$1(a$2)&&m$2(u$1,a$2):m$2(u$1,a$2)};if(D$1){let a$2=H$2(),c$4=ref(a$2),f$3=!1;return watch(()=>e$3[n$2],y$2=>{f$3||(f$3=!0,c$4.value=L$1(y$2),nextTick(()=>f$3=!1))}),watch(c$4,y$2=>{!f$3&&(y$2!==e$3[n$2]||T$1)&&p$5(y$2)},{deep:T$1}),c$4}else return computed({get(){return H$2()},set(a$2){p$5(a$2)}})}const[ee,ct]=createContext(`DrawerRoot`),Ee=new WeakMap;function C(e$3,n$2,s$1=!1){if(!e$3||!(e$3 instanceof HTMLElement)||!n$2)return;let i$1={};Object.entries(n$2).forEach(([t,w$1])=>{if(t.startsWith(`--`)){e$3.style.setProperty(t,w$1);return}i$1[t]=e$3.style[t],e$3.style[t]=w$1}),!s$1&&Ee.set(e$3,i$1)}function dt(e$3,n$2){if(!e$3||!(e$3 instanceof HTMLElement))return;let s$1=Ee.get(e$3);s$1&&Object.entries(s$1).forEach(([i$1,t])=>{e$3.style[i$1]=t})}function ie(e$3,n$2){let s$1=window.getComputedStyle(e$3),i$1=s$1.transform||s$1.webkitTransform||s$1.mozTransform,t=i$1.match(/^matrix3d\((.+)\)$/);return t?Number.parseFloat(t[1].split(`, `)[_(n$2)?13:12]):(t=i$1.match(/^matrix\((.+)\)$/),t?Number.parseFloat(t[1].split(`, `)[_(n$2)?5:4]):null)}function vt(e$3){return 8*(Math.log(e$3+1)-2)}function _(e$3){switch(e$3){case`top`:case`bottom`:return!0;case`left`:case`right`:return!1;default:return e$3}}function de(e$3,n$2){if(!e$3)return()=>{};let s$1=e$3.style.cssText;return Object.assign(e$3.style,n$2),()=>{e$3.style.cssText=s$1}}function ft(...e$3){return(...n$2)=>{for(let s$1 of e$3)typeof s$1==`function`&&s$1(...n$2)}}const O={DURATION:.5,EASE:[.32,.72,0,1]},_e=.4,pt=.25,gt=100,Be=8,re=16,Ce=26,Oe=`vaul-dragging`;function mt({activeSnapPoint:e$3,snapPoints:n$2,drawerRef:s$1,overlayRef:i$1,fadeFromIndex:t,onSnapPointChange:w$1,direction:d$2}){let v$1=ref(typeof window<`u`?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);function D$1(){v$1.value={innerWidth:window.innerWidth,innerHeight:window.innerHeight}}onMounted(()=>{typeof window<`u`&&window.addEventListener(`resize`,D$1)}),onBeforeUnmount(()=>{typeof window<`u`&&window.removeEventListener(`resize`,D$1)});let $$1=computed(()=>(n$2.value&&e$3.value===n$2.value[n$2.value.length-1])??null),T$1=computed(()=>n$2.value&&n$2.value.length>0&&(t?.value||t?.value===0)&&!Number.isNaN(t?.value)&&n$2.value[t?.value??-1]===e$3.value||!n$2.value),r$2=computed(()=>{var p$5;return(p$5=n$2.value)?.findIndex(a$2=>a$2===e$3.value)??null}),l$1=computed(()=>{var p$5;return(p$5=n$2.value)?.map(a$2=>{let c$4=typeof a$2==`string`,f$3=0;if(c$4&&(f$3=Number.parseInt(a$2,10)),_(d$2.value)){let P$1=c$4?f$3:v$1.value?a$2*v$1.value.innerHeight:0;return v$1.value?d$2.value===`bottom`?v$1.value.innerHeight-P$1:-v$1.value.innerHeight+P$1:P$1}let y$2=c$4?f$3:v$1.value?a$2*v$1.value.innerWidth:0;return v$1.value?d$2.value===`right`?v$1.value.innerWidth-y$2:-v$1.value.innerWidth+y$2:y$2})??[]}),h$3=computed(()=>{var p$5;return r$2.value===null?null:(p$5=l$1.value)?.[r$2.value]}),m$2=p$5=>{var c$4,f$3,y$2,P$1;let a$2=(c$4=l$1.value)?.findIndex(x$3=>x$3===p$5)??null;nextTick(()=>{var x$3;w$1(a$2,l$1.value),C((x$3=s$1.value)?.$el,{transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,transform:_(d$2.value)?`translate3d(0, ${p$5}px, 0)`:`translate3d(${p$5}px, 0, 0)`})}),l$1.value&&a$2!==l$1.value.length-1&&a$2!==t?.value?C((f$3=i$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,opacity:`0`}):C((y$2=i$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,opacity:`1`}),e$3.value=a$2===null?null:(P$1=n$2.value)?.[a$2]??null};watch([e$3,l$1,n$2],()=>{var p$5;if(e$3.value){let a$2=(p$5=n$2.value)?.findIndex(c$4=>c$4===e$3.value)??-1;l$1.value&&a$2!==-1&&typeof l$1.value[a$2]==`number`&&m$2(l$1.value[a$2])}},{immediate:!0});function u$1({draggedDistance:p$5,closeDrawer:a$2,velocity:c$4,dismissible:f$3}){var j$1,G$1,z$2;if(t.value===void 0)return;let y$2=d$2.value===`bottom`||d$2.value===`right`?(h$3.value??0)-p$5:(h$3.value??0)+p$5,P$1=r$2.value===t.value-1,x$3=r$2.value===0,W$1=p$5>0;if(P$1&&C((j$1=i$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`}),c$4>2&&!W$1){f$3?a$2():m$2(l$1.value[0]);return}if(c$4>2&&W$1&&l$1&&n$2.value){m$2(l$1.value[n$2.value.length-1]);return}let te$2=(G$1=l$1.value)?.reduce((M$1,g$2)=>typeof M$1!=`number`||typeof g$2!=`number`?M$1:Math.abs(g$2-y$2)_e&&Math.abs(p$5)0&&$$1){m$2(l$1.value[((z$2=n$2.value)?.length??0)-1]);return}if(x$3&&M$1<0&&f$3&&a$2(),r$2.value===null)return;m$2(l$1.value[r$2.value+M$1]);return}m$2(te$2)}function L$1({draggedDistance:p$5}){var c$4;if(h$3.value===null)return;let a$2=d$2.value===`bottom`||d$2.value===`right`?h$3.value-p$5:h$3.value+p$5;(d$2.value===`bottom`||d$2.value===`right`)&&a$2l$1.value[l$1.value.length-1]||C((c$4=s$1.value)?.$el,{transform:_(d$2.value)?`translate3d(0, ${a$2}px, 0)`:`translate3d(${a$2}px, 0, 0)`})}function H$2(p$5,a$2){if(!n$2.value||typeof r$2.value!=`number`||!l$1.value||t.value===void 0)return null;let c$4=r$2.value===t.value-1;if(r$2.value>=t.value&&a$2)return 0;if(c$4&&!a$2)return 1;if(!T$1.value&&!c$4)return null;let y$2=c$4?r$2.value+1:r$2.value-1,P$1=c$4?l$1.value[y$2]-l$1.value[y$2-1]:l$1.value[y$2+1]-l$1.value[y$2],x$3=p$5/Math.abs(P$1);return c$4?1-x$3:x$3}return{isLastSnapPoint:$$1,shouldFade:T$1,getPercentageDragged:H$2,activeSnapPointIndex:r$2,onRelease:u$1,onDrag:L$1,snapPointsOffset:l$1}}function Te(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}let Q=null;function wt(e$3){let{isOpen:n$2,modal:s$1,nested:i$1,hasBeenOpened:t,preventScrollRestoration:w$1,noBodyStyles:d$2}=e$3,v$1=ref(typeof window<`u`?window.location.href:``),D$1=ref(0);function $$1(){if(Te()&&Q===null&&n$2.value&&!d$2.value){Q={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height};let{scrollX:r$2,innerHeight:l$1}=window;document.body.style.setProperty(`position`,`fixed`,`important`),Object.assign(document.body.style,{top:`${-D$1.value}px`,left:`${-r$2}px`,right:`0px`,height:`auto`}),setTimeout(()=>{requestAnimationFrame(()=>{let h$3=l$1-window.innerHeight;h$3&&D$1.value>=l$1&&(document.body.style.top=`-${D$1.value+h$3}px`)})},300)}}function T$1(){if(Te()&&Q!==null&&!d$2.value){let r$2=-Number.parseInt(document.body.style.top,10),l$1=-Number.parseInt(document.body.style.left,10);Object.assign(document.body.style,Q),window.requestAnimationFrame(()=>{if(w$1.value&&v$1.value!==window.location.href){v$1.value=window.location.href;return}window.scrollTo(l$1,r$2)}),Q=null}}return onMounted(()=>{function r$2(){D$1.value=window.scrollY}r$2(),window.addEventListener(`scroll`,r$2),onUnmounted(()=>{window.removeEventListener(`scroll`,r$2)})}),watch([n$2,t,v$1],()=>{i$1.value||!t.value||(n$2.value?(window.matchMedia(`(display-mode: standalone)`).matches||$$1(),s$1.value||setTimeout(()=>{T$1()},500)):T$1())}),{restorePositionSetting:T$1}}function ht(e$3,n$2){return e$3&&e$3.value?e$3:n$2}function yt(e$3){let{emitDrag:n$2,emitRelease:s$1,emitClose:i$1,emitOpenChange:t,open:w$1,dismissible:d$2,nested:v$1,modal:D$1,shouldScaleBackground:$$1,setBackgroundColorOnScale:T$1,scrollLockTimeout:r$2,closeThreshold:l$1,activeSnapPoint:h$3,fadeFromIndex:m$2,direction:u$1,noBodyStyles:L$1,handleOnly:H$2,preventScrollRestoration:p$5}=e$3,a$2=ref(w$1.value??!1),c$4=ref(!1),f$3=ref(!1),y$2=ref(!1),P$1=ref(null),x$3=ref(null),W$1=ref(null),te$2=ref(null),V$1=ref(null),j$1=ref(!1),G$1=ref(null),z$2=ref(0),M$1=ref(!1);ref(0);let g$2=ref(null);ref(0);let pe$2=computed(()=>{var o$1;return(o$1=g$2.value)?.$el.getBoundingClientRect().height||0}),U=ht(e$3.snapPoints,ref(void 0)),Ne$1=computed(()=>{var o$1;return U&&((o$1=U.value)?.length??0)>0}),Ae$1=ref(null),{activeSnapPointIndex:ge$1,onRelease:xe,snapPointsOffset:He$1,onDrag:Ue,shouldFade:me$1,getPercentageDragged:Le$1}=mt({snapPoints:U,activeSnapPoint:h$3,drawerRef:g$2,fadeFromIndex:m$2,overlayRef:P$1,onSnapPointChange:Me$2,direction:u$1});function Me$2(o$1,R$1){U.value&&o$1===R$1.length-1&&(x$3.value=new Date)}wt({isOpen:a$2,modal:D$1,nested:v$1,hasBeenOpened:c$4,noBodyStyles:L$1,preventScrollRestoration:p$5});function ne$1(){return(window.innerWidth-Ce)/window.innerWidth}function we$1(o$1,R$1){var k$4;if(!o$1)return!1;let b$3=o$1,B$2=(k$4=window.getSelection())?.toString(),E$2=g$2.value?ie(g$2.value.$el,u$1.value):null,A$1=new Date;if(b$3.hasAttribute(`data-vaul-no-drag`)||b$3.closest(`[data-vaul-no-drag]`))return!1;if(u$1.value===`right`||u$1.value===`left`)return!0;if(x$3.value&&A$1.getTime()-x$3.value.getTime()<500)return!1;if(E$2!==null&&(u$1.value===`bottom`?E$2>0:E$2<0))return!0;if(B$2&&B$2.length>0)return!1;if(V$1.value&&A$1.getTime()-V$1.value.getTime()b$3.clientHeight){if(b$3.scrollTop!==0)return V$1.value=new Date,!1;if(b$3.getAttribute(`role`)===`dialog`)return!0}b$3=b$3.parentNode}return!0}function ke$1(o$1){!d$2.value&&!U.value||g$2.value&&!g$2.value.$el.contains(o$1.target)||(f$3.value=!0,W$1.value=new Date,o$1.target.setPointerCapture(o$1.pointerId),z$2.value=_(u$1.value)?o$1.clientY:o$1.clientX)}function Ie(o$1){var R$1,b$3,B$2,E$2,A$1,k$4;if(g$2.value&&f$3.value){let X$2=u$1.value===`bottom`||u$1.value===`right`?1:-1,ae$1=(z$2.value-(_(u$1.value)?o$1.clientY:o$1.clientX))*X$2,le$2=ae$1>0,ye$1=U.value&&!d$2.value&&!le$2;if(ye$1&&ge$1.value===0)return;let ce$2=Math.abs(ae$1),Se$1=document.querySelector(`[data-vaul-drawer-wrapper]`)||document.querySelector(`[vaul-drawer-wrapper]`),q$1=ce$2/pe$2.value,De=Le$1(ce$2,le$2);if(De!==null&&(q$1=De),ye$1&&q$1>=1||!j$1.value&&!we$1(o$1.target,le$2))return;if((R$1=g$2?.value)==null||R$1.$el.classList.add(Oe),j$1.value=!0,C((b$3=g$2.value)?.$el,{transition:`none`}),C((B$2=P$1.value)?.$el,{transition:`none`}),U.value&&Ue({draggedDistance:ae$1}),le$2&&!U.value){let Y$2=vt(ae$1),oe$2=Math.min(Y$2*-1,0)*X$2;C((E$2=g$2.value)?.$el,{transform:_(u$1.value)?`translate3d(0, ${oe$2}px, 0)`:`translate3d(${oe$2}px, 0, 0)`});return}let qe$1=1-q$1;if((me$1.value||m$2.value&&ge$1.value===m$2.value-1)&&(n$2(q$1),C((A$1=P$1.value)?.$el,{opacity:`${qe$1}`,transition:`none`},!0)),Se$1&&P$1.value&&$$1.value){let Y$2=Math.min(ne$1()+q$1*(1-ne$1()),1),oe$2=8-q$1*8,be$2=Math.max(0,14-q$1*14);C(Se$1,{borderRadius:`${oe$2}px`,transform:_(u$1.value)?`scale(${Y$2}) translate3d(0, ${be$2}px, 0)`:`scale(${Y$2}) translate3d(${be$2}px, 0, 0)`,transition:`none`},!0)}if(!U.value){let Y$2=ce$2*X$2;C((k$4=g$2.value)?.$el,{transform:_(u$1.value)?`translate3d(0, ${Y$2}px, 0)`:`translate3d(${Y$2}px, 0, 0)`})}}}function he$2(){var b$3;if(!g$2.value)return;let o$1=document.querySelector(`[data-vaul-drawer-wrapper]`)||document.querySelector(`[vaul-drawer-wrapper]`),R$1=ie(g$2.value.$el,u$1.value);C(g$2.value.$el,{transform:`translate3d(0, 0, 0)`,transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`}),C((b$3=P$1.value)?.$el,{transition:`opacity ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,opacity:`1`}),$$1.value&&R$1&&R$1>0&&a$2.value&&C(o$1,{borderRadius:`${Be}px`,overflow:`hidden`,..._(u$1.value)?{transform:`scale(${ne$1()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:`top`}:{transform:`scale(${ne$1()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:`left`},transitionProperty:`transform, border-radius`,transitionDuration:`${O.DURATION}s`,transitionTimingFunction:`cubic-bezier(${O.EASE.join(`,`)})`},!0)}function K$1(o$1){g$2.value&&(i$1(),o$1||(a$2.value=!1),window.setTimeout(()=>{U.value&&(h$3.value=U.value[0])},O.DURATION*1e3))}watchEffect(()=>{if(!a$2.value&&$$1.value&&rt){let o$1=setTimeout(()=>{dt(document.body)},200);return()=>clearTimeout(o$1)}}),watch(w$1,()=>{a$2.value=w$1.value,w$1.value||K$1()});function We(o$1){if(!f$3.value||!g$2.value)return;g$2.value.$el.classList.remove(Oe),j$1.value=!1,f$3.value=!1,te$2.value=new Date;let R$1=ie(g$2.value.$el,u$1.value);if(!we$1(o$1.target,!1)||!R$1||Number.isNaN(R$1)||W$1.value===null)return;let b$3=te$2.value.getTime()-W$1.value.getTime(),B$2=z$2.value-(_(u$1.value)?o$1.clientY:o$1.clientX),E$2=Math.abs(B$2)/b$3;if(E$2>.05&&(y$2.value=!0,window.setTimeout(()=>{y$2.value=!1},200)),U.value){let k$4=u$1.value===`bottom`||u$1.value===`right`?1:-1;xe({draggedDistance:B$2*k$4,closeDrawer:K$1,velocity:E$2,dismissible:d$2.value}),s$1(!0);return}if(u$1.value===`bottom`||u$1.value===`right`?B$2>0:B$2<0){he$2(),s$1(!0);return}if(E$2>_e){K$1(),s$1(!1);return}let A$1=Math.min(g$2.value.$el.getBoundingClientRect().height??0,window.innerHeight);if(R$1>=A$1*l$1.value){K$1(),s$1(!1);return}s$1(!0),he$2()}watch(a$2,o$1=>{o$1&&(x$3.value=new Date),t(o$1)},{immediate:!0});function Ve$1(o$1){var B$2,E$2;let R$1=o$1?(window.innerWidth-re)/window.innerWidth:1,b$3=o$1?-16:0;G$1.value&&window.clearTimeout(G$1.value),C((B$2=g$2.value)?.$el,{transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,transform:`scale(${R$1}) translate3d(0, ${b$3}px, 0)`}),!o$1&&(E$2=g$2.value)!=null&&E$2.$el&&(G$1.value=window.setTimeout(()=>{var k$4,X$2;let A$1=ie((k$4=g$2.value)?.$el,u$1.value);C((X$2=g$2.value)?.$el,{transition:`none`,transform:_(u$1.value)?`translate3d(0, ${A$1}px, 0)`:`translate3d(${A$1}px, 0, 0)`})},500))}function je(o$1){var A$1;if(o$1<0)return;let R$1=_(u$1.value)?window.innerHeight:window.innerWidth,b$3=(R$1-re)/R$1,B$2=b$3+o$1*(1-b$3),E$2=-16+o$1*re;C((A$1=g$2.value)?.$el,{transform:_(u$1.value)?`scale(${B$2}) translate3d(0, ${E$2}px, 0)`:`scale(${B$2}) translate3d(${E$2}px, 0, 0)`,transition:`none`})}function ze$1(o$1){var E$2;let R$1=_(u$1.value)?window.innerHeight:window.innerWidth,b$3=o$1?(R$1-re)/R$1:1,B$2=o$1?-16:0;o$1&&C((E$2=g$2.value)?.$el,{transition:`transform ${O.DURATION}s cubic-bezier(${O.EASE.join(`,`)})`,transform:_(u$1.value)?`scale(${b$3}) translate3d(0, ${B$2}px, 0)`:`scale(${b$3}) translate3d(${B$2}px, 0, 0)`})}return{open:w$1,isOpen:a$2,modal:D$1,keyboardIsOpen:M$1,hasBeenOpened:c$4,drawerRef:g$2,drawerHeightRef:pe$2,overlayRef:P$1,handleRef:Ae$1,isDragging:f$3,dragStartTime:W$1,isAllowedToDrag:j$1,snapPoints:U,activeSnapPoint:h$3,hasSnapPoints:Ne$1,pointerStart:z$2,dismissible:d$2,snapPointsOffset:He$1,direction:u$1,shouldFade:me$1,fadeFromIndex:m$2,shouldScaleBackground:$$1,setBackgroundColorOnScale:T$1,onPress:ke$1,onDrag:Ie,onRelease:We,closeDrawer:K$1,onNestedDrag:je,onNestedRelease:ze$1,onNestedOpenChange:Ve$1,emitClose:i$1,emitDrag:n$2,emitRelease:s$1,emitOpenChange:t,nested:v$1,handleOnly:H$2,noBodyStyles:L$1}}const St=defineComponent({__name:`DrawerRoot`,props:{activeSnapPoint:{default:void 0},closeThreshold:{default:pt},shouldScaleBackground:{type:Boolean,default:void 0},setBackgroundColorOnScale:{type:Boolean,default:!0},scrollLockTimeout:{default:gt},fixed:{type:Boolean,default:void 0},dismissible:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:void 0},nested:{type:Boolean,default:!1},direction:{default:`bottom`},noBodyStyles:{type:Boolean},handleOnly:{type:Boolean,default:!1},preventScrollRestoration:{type:Boolean},snapPoints:{default:void 0},fadeFromIndex:{default:void 0}},emits:[`drag`,`release`,`close`,`update:open`,`update:activeSnapPoint`,`animationEnd`],setup(e$3,{expose:n$2,emit:s$1}){let i$1=e$3,t=s$1;useSlots();let w$1=computed(()=>i$1.fadeFromIndex??(i$1.snapPoints&&i$1.snapPoints.length-1)),d$2=$e(i$1,`open`,t,{defaultValue:i$1.defaultOpen,passive:i$1.open===void 0}),v$1=$e(i$1,`activeSnapPoint`,t,{passive:i$1.activeSnapPoint===void 0}),D$1={emitDrag:m$2=>t(`drag`,m$2),emitRelease:m$2=>t(`release`,m$2),emitClose:()=>t(`close`),emitOpenChange:m$2=>{t(`update:open`,m$2),setTimeout(()=>{t(`animationEnd`,m$2)},O.DURATION*1e3)}},{closeDrawer:$$1,hasBeenOpened:T$1,modal:r$2,isOpen:l$1}=ct(yt({...D$1,...toRefs(i$1),activeSnapPoint:v$1,fadeFromIndex:w$1,open:d$2}));function h$3(m$2){if(d$2.value!==void 0){D$1.emitOpenChange(m$2);return}l$1.value=m$2,m$2?T$1.value=!0:$$1()}return n$2({open:l$1}),(m$2,u$1)=>(openBlock(),createBlock(unref(_sfc_main$8),{open:unref(l$1),modal:unref(r$2),"onUpdate:open":h$3},{default:withCtx(()=>[renderSlot(m$2.$slots,`default`,{open:unref(l$1)})]),_:3},8,[`open`,`modal`]))}}),_t=defineComponent({__name:`DrawerRootNested`,props:{activeSnapPoint:{},closeThreshold:{},shouldScaleBackground:{type:Boolean},setBackgroundColorOnScale:{type:Boolean},scrollLockTimeout:{},fixed:{type:Boolean},dismissible:{type:Boolean},modal:{type:Boolean},open:{type:Boolean},defaultOpen:{type:Boolean},nested:{type:Boolean},direction:{},noBodyStyles:{type:Boolean},handleOnly:{type:Boolean},preventScrollRestoration:{type:Boolean},snapPoints:{},fadeFromIndex:{}},emits:[`drag`,`release`,`close`,`update:open`,`update:activeSnapPoint`,`animationEnd`],setup(e$3,{emit:n$2}){let s$1=e$3,i$1=n$2,{onNestedDrag:t,onNestedOpenChange:w$1,onNestedRelease:d$2}=ee();function v$1(){w$1(!1)}function D$1(r$2){t(r$2)}function $$1(r$2){r$2&&w$1(r$2),i$1(`update:open`,r$2)}let T$1=useForwardPropsEmits(s$1,i$1);return(r$2,l$1)=>(openBlock(),createBlock(St,mergeProps(unref(T$1),{nested:``,onClose:v$1,onDrag:D$1,onRelease:unref(d$2),"onUpdate:open":$$1}),{default:withCtx(()=>[renderSlot(r$2.$slots,`default`)]),_:3},16,[`onRelease`]))}}),Bt=defineComponent({__name:`DrawerOverlay`,setup(e$3){let{overlayRef:n$2,hasSnapPoints:s$1,isOpen:i$1,shouldFade:t}=ee();return(w$1,d$2)=>(openBlock(),createBlock(unref(_sfc_main$6),{ref_key:`overlayRef`,ref:n$2,"data-vaul-overlay":``,"data-vaul-snap-points":unref(i$1)&&unref(s$1)?`true`:`false`,"data-vaul-snap-points-overlay":unref(i$1)&&unref(t)?`true`:`false`},null,8,[`data-vaul-snap-points`,`data-vaul-snap-points-overlay`]))}}),Dt=()=>()=>{};function bt(){let{direction:e$3,isOpen:n$2,shouldScaleBackground:s$1,setBackgroundColorOnScale:i$1,noBodyStyles:t}=ee(),w$1=ref(null),d$2=ref(document.body.style.backgroundColor);function v$1(){return(window.innerWidth-Ce)/window.innerWidth}watchEffect(D$1=>{if(n$2.value&&s$1.value){w$1.value&&clearTimeout(w$1.value);let $$1=document.querySelector(`[data-vaul-drawer-wrapper]`)||document.querySelector(`[vaul-drawer-wrapper]`);if(!$$1)return;ft(i$1.value&&!t.value?de(document.body,{background:`black`}):Dt,de($$1,{transformOrigin:_(e$3.value)?`top`:`left`,transitionProperty:`transform, border-radius`,transitionDuration:`${O.DURATION}s`,transitionTimingFunction:`cubic-bezier(${O.EASE.join(`,`)})`}));let T$1=de($$1,{borderRadius:`${Be}px`,overflow:`hidden`,..._(e$3.value)?{transform:`scale(${v$1()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${v$1()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});D$1(()=>{T$1(),w$1.value=window.setTimeout(()=>{d$2.value?document.body.style.background=d$2.value:document.body.style.removeProperty(`background`)},O.DURATION*1e3)})}},{flush:`pre`})}const Ct=defineComponent({__name:`DrawerContent`,setup(e$3){let{open:n$2,isOpen:s$1,snapPointsOffset:i$1,hasSnapPoints:t,drawerRef:w$1,onPress:d$2,onDrag:v$1,onRelease:D$1,modal:$$1,emitOpenChange:T$1,dismissible:r$2,keyboardIsOpen:l$1,closeDrawer:h$3,direction:m$2,handleOnly:u$1}=ee();bt();let L$1=ref(!1),H$2=computed(()=>i$1.value&&i$1.value.length>0?`${i$1.value[0]}px`:`0`);function p$5(f$3){if(!$$1.value||f$3.defaultPrevented){f$3.preventDefault();return}l$1.value&&=!1,r$2.value?T$1(!1):f$3.preventDefault()}function a$2(f$3){u$1.value||d$2(f$3)}function c$4(f$3){u$1.value||v$1(f$3)}return watchEffect(()=>{t.value&&window.requestAnimationFrame(()=>{L$1.value=!0})}),(f$3,y$2)=>(openBlock(),createBlock(unref(_sfc_main$5),{ref_key:`drawerRef`,ref:w$1,"data-vaul-drawer":``,"data-vaul-drawer-direction":unref(m$2),"data-vaul-delayed-snap-points":L$1.value?`true`:`false`,"data-vaul-snap-points":unref(s$1)&&unref(t)?`true`:`false`,style:normalizeStyle({"--snap-point-height":H$2.value}),onPointerdown:a$2,onPointermove:c$4,onPointerup:unref(D$1),onPointerDownOutside:p$5,onOpenAutoFocus:y$2[0]||=withModifiers(()=>{},[`prevent`]),onEscapeKeyDown:y$2[1]||=P$1=>{unref(r$2)||P$1.preventDefault()}},{default:withCtx(()=>[renderSlot(f$3.$slots,`default`)]),_:3},8,[`data-vaul-drawer-direction`,`data-vaul-delayed-snap-points`,`data-vaul-snap-points`,`style`,`onPointerup`]))}}),$t=[`data-vaul-drawer-visible`],Ot={"data-vaul-handle-hitarea":``,"aria-hidden":`true`},Tt=250,Pt=120,Nt=defineComponent({__name:`DrawerHandle`,props:{preventCycle:{type:Boolean,default:!1}},setup(e$3){let n$2=e$3,{onPress:s$1,onDrag:i$1,handleRef:t,handleOnly:w$1,isOpen:d$2,snapPoints:v$1,activeSnapPoint:D$1,isDragging:$$1,dismissible:T$1,closeDrawer:r$2}=ee(),l$1=ref(null),h$3=ref(!1);function m$2(){if(h$3.value){H$2();return}window.setTimeout(()=>{u$1()},Pt)}function u$1(){if($$1.value||n$2.preventCycle||h$3.value){H$2();return}if(H$2(),!v$1.value||v$1.value.length===0){T$1.value||r$2();return}let c$4=D$1.value===v$1.value[v$1.value.length-1];if(c$4&&T$1.value){r$2();return}let f$3=v$1.value.findIndex(P$1=>P$1===D$1.value);if(f$3===-1)return;let y$2=c$4?0:f$3+1;D$1.value=v$1.value[y$2]}function L$1(){l$1.value=window.setTimeout(()=>{h$3.value=!0},Tt)}function H$2(){l$1.value&&window.clearTimeout(l$1.value),h$3.value=!1}function p$5(c$4){w$1.value&&s$1(c$4),L$1()}function a$2(c$4){w$1.value&&i$1(c$4)}return(c$4,f$3)=>(openBlock(),createElementBlock(`div`,{ref_key:`handleRef`,ref:t,"data-vaul-drawer-visible":unref(d$2)?`true`:`false`,"data-vaul-handle":``,"aria-hidden":`true`,onClick:m$2,onPointercancel:H$2,onPointerdown:p$5,onPointermove:a$2},[createBaseVNode(`span`,Ot,[renderSlot(c$4.$slots,`default`)])],40,$t))}});var OnboardingDialog_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`OnboardingDialog`,props:{modelValue:{type:Boolean,default:!1,required:!1},modelModifiers:{}},emits:mergeModels([`configured`,`skipped`],[`update:modelValue`]),setup(__props,{emit:__emit}){let emit$1=__emit,showDialog=useModel(__props,`modelValue`),isDesktop=useMediaQuery(`(min-width: 768px)`);return(_ctx,_cache$1)=>unref(isDesktop)?(openBlock(),createBlock(unref(_sfc_main$8),{key:0,open:showDialog.value,"onUpdate:open":_cache$1[2]||=value$1=>showDialog.value=value$1},{default:withCtx(()=>[createVNode(unref(_sfc_main$7),null,{default:withCtx(()=>[createVNode(unref(_sfc_main$6),{class:`data-[state=open]:animate-fadeIn data-[state=closed]:animate-fadeOut fixed inset-0 z-[9999] bg-black/50 backdrop-blur-sm`}),createVNode(unref(_sfc_main$5),{class:`data-[state=open]:animate-contentShow data-[state=closed]:animate-contentHide fixed left-1/2 top-1/2 z-[9999] max-h-full max-w-2xl w-[92dvw] transform overflow-y-scroll rounded-2xl bg-white p-6 shadow-xl outline-none backdrop-blur-md scrollbar-none -translate-x-1/2 -translate-y-1/2 dark:bg-neutral-900`},{default:withCtx(()=>[createVNode(Onboarding_default,{onConfigured:_cache$1[0]||=$event=>emit$1(`configured`),onSkipped:_cache$1[1]||=$event=>emit$1(`skipped`)})]),_:1})]),_:1})]),_:1},8,[`open`])):(openBlock(),createBlock(unref(St),{key:1,open:showDialog.value,"should-scale-background":``,"onUpdate:open":_cache$1[5]||=value$1=>showDialog.value=value$1},{default:withCtx(()=>[createVNode(unref(_sfc_main$7),null,{default:withCtx(()=>[createVNode(unref(Bt),{class:`fixed inset-0`}),createVNode(unref(Ct),{class:`fixed bottom-0 left-0 right-0 z-1000 mt-20 h-full max-h-[96%] flex flex-col rounded-t-2xl bg-neutral-50 p-4 outline-none backdrop-blur-md dark:bg-neutral-900/95`},{default:withCtx(()=>[createVNode(unref(Nt)),createVNode(Onboarding_default,{onConfigured:_cache$1[3]||=$event=>emit$1(`configured`),onSkipped:_cache$1[4]||=$event=>emit$1(`skipped`)})]),_:1})]),_:1})]),_:1},8,[`open`]))}}),OnboardingDialog_default=OnboardingDialog_vue_vue_type_script_setup_true_lang_default;const ToasterRootInjectionKey=Symbol(`ToasterRoot`);var ToasterRoot_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ToasterRoot`,emits:[`close`],setup(__props,{emit:__emit}){let emits=__emit;return provide(ToasterRootInjectionKey,{close:id=>emits(`close`,id)}),(_ctx,_cache$1)=>renderSlot(_ctx.$slots,`default`)}}),ToasterRoot_default=ToasterRoot_vue_vue_type_script_setup_true_lang_default,ArrowTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`ArrowTransition`,props:{stageTransition:{default:()=>({primaryColor:`#666`,secondaryColor:`#ccc`})}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>stageTransition.value.primaryColor||`#666`),overlayColor2=computed(()=>stageTransition.value.secondaryColor||`#ccc`);return onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-3-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-3-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`stage-transition-3`,style:normalizeStyle({zIndex:stageTransition.value.zIndex||100})},null,4))}}),ArrowTransition_default=__plugin_vue_export_helper_default(ArrowTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-17464329`]]),BubbleWaveOutTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`BubbleWaveOutTransition`,props:{stageTransition:{}},setup(__props){let props=__props,colors=computed(()=>props.stageTransition?.colors||[`#eee`,`#ebcb8b`,`#c56370`,`#3f3b52`]);return onMounted(()=>{document.documentElement.style.setProperty(`--circle-expansion-delay`,`${props.stageTransition?.delay||0}s`),document.documentElement.style.setProperty(`--circle-expansion-duration`,`${props.stageTransition?.duration||.4}s`),colors.value.forEach((color$2,index$1)=>{document.documentElement.style.setProperty(`--circle-expansion-color-${index$1+1}`,color$2)})}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`circle-expansion-transition`,style:normalizeStyle({zIndex:_ctx.stageTransition?.zIndex||100})},[(openBlock(!0),createElementBlock(Fragment,null,renderList(colors.value,(_$2,index$1)=>(openBlock(),createElementBlock(`div`,{key:index$1}))),128))],4))}}),BubbleWaveOutTransition_default=__plugin_vue_export_helper_default(BubbleWaveOutTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-4624be9e`]]),FantasyFallTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`FantasyFallTransition`,props:{stageTransition:{}},setup(__props){let props=__props,direction=computed(()=>props.stageTransition?.direction||`up`),directionClass=computed(()=>`fantasy-fall-${direction.value}`);return onMounted(()=>{document.documentElement.style.setProperty(`--fantasy-fall-color`,props.stageTransition?.primaryColor||`#eee`),document.documentElement.style.setProperty(`--fantasy-fall-duration`,`${props.stageTransition?.duration||.6}s`),document.documentElement.style.setProperty(`--fantasy-fall-delay`,`${props.stageTransition?.delay||0}s`),document.documentElement.style.setProperty(`--fantasy-fall-radius-sm`,`${props.stageTransition?.borderRadius?.sm||`14rem`}`),document.documentElement.style.setProperty(`--fantasy-fall-radius-md`,`${props.stageTransition?.borderRadius?.md||`14rem`}`),document.documentElement.style.setProperty(`--fantasy-fall-radius-lg`,`${props.stageTransition?.borderRadius?.lg||`50%`}`)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:normalizeClass([`fantasy-fall-transition`,directionClass.value]),style:normalizeStyle({zIndex:_ctx.stageTransition?.zIndex??100})},null,6))}}),FantasyFallTransition_default=__plugin_vue_export_helper_default(FantasyFallTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-826171f5`]]),MultipleBlocksRevealTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`MultipleBlocksRevealTransition`,props:{stageTransition:{}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>stageTransition.value?.primaryColor||`#666`),overlayColor2=computed(()=>stageTransition.value?.secondaryColor||`#ccc`);return onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-4-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-4-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`stage-transition-4`,style:normalizeStyle({zIndex:stageTransition.value?.zIndex??100})},_cache$1[0]||=[createStaticVNode(`
`,5)],4))}}),MultipleBlocksRevealTransition_default=__plugin_vue_export_helper_default(MultipleBlocksRevealTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-4221f976`]]),SlideTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SlideTransition`,props:{stageTransition:{}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>stageTransition.value?.primaryColor||`#666`),overlayColor2=computed(()=>stageTransition.value?.secondaryColor||`#ccc`);return watch([stageTransition,overlayColor1,overlayColor2],()=>{document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-2`,overlayColor2.value)}),onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-1-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`stage-transition-1`,style:normalizeStyle({zIndex:stageTransition.value?.zIndex??100})},null,4))}}),SlideTransition_default=__plugin_vue_export_helper_default(SlideTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-81c0af14`]]),SlopeSlideTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`SlopeSlideTransition`,props:{stageTransition:{}},setup(__props){let props=__props,stageTransition=computed(()=>props.stageTransition),overlayColor1=computed(()=>stageTransition.value?.primaryColor??`#666`),overlayColor2=computed(()=>stageTransition.value?.secondaryColor??`#ccc`);return onMounted(()=>{document.documentElement.style.setProperty(`--stage-transition-2-overlay-color-1`,overlayColor1.value),document.documentElement.style.setProperty(`--stage-transition-2-overlay-color-2`,overlayColor2.value)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`stage-transition-2`,style:normalizeStyle({zIndex:stageTransition.value?.zIndex??100})},null,4))}}),SlopeSlideTransition_default=__plugin_vue_export_helper_default(SlopeSlideTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-9e8b66c8`]]),RectanglesRotateTransition_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`RectanglesRotateTransition`,props:{stageTransition:{}},setup(__props){let props=__props;return onMounted(()=>{document.documentElement.style.setProperty(`--rectangle-rotate-1-color`,props.stageTransition?.primaryColor||`#ebcb8b`),document.documentElement.style.setProperty(`--rectangle-rotate-2-color`,props.stageTransition?.secondaryColor||`#c56370`),document.documentElement.style.setProperty(`--rectangle-rotate-3-color`,props.stageTransition?.tertiaryColor||`#43445b`),document.documentElement.style.setProperty(`--rectangle-rotate-duration`,`${props.stageTransition?.duration||.6}s`),document.documentElement.style.setProperty(`--rectangle-rotate-delay`,`${props.stageTransition?.delay||0}s`),document.documentElement.style.setProperty(`--rectangle-rotate-stagger`,`${props.stageTransition?.staggerDelay||.1}s`),document.documentElement.style.setProperty(`--rectangle-rotate-rotation`,`${props.stageTransition?.rotation||270}deg`)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`rectangle-rotate-transition`,style:normalizeStyle({zIndex:_ctx.stageTransition?.zIndex??100})},_cache$1[0]||=[createBaseVNode(`div`,{class:`rectangle rectangle-rotate-1`},[createBaseVNode(`div`)],-1),createBaseVNode(`div`,{class:`rectangle rectangle-rotate-2`},[createBaseVNode(`div`)],-1),createBaseVNode(`div`,{class:`rectangle rectangle-rotate-3`},[createBaseVNode(`div`)],-1)],4))}}),RectanglesRotateTransition_default=__plugin_vue_export_helper_default(RectanglesRotateTransition_vue_vue_type_script_setup_true_lang_default,[[`__scopeId`,`data-v-45ea2f7f`]]),StageTransitionGroup_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`StageTransitionGroup`,props:{primaryColor:{},secondaryColor:{},tertiaryColor:{},colors:{},zIndex:{},disableTransitions:{type:Boolean},usePageSpecificTransitions:{type:Boolean}},setup(__props){let props=__props,router$1=useRouter(),showTransition=ref(!1),transitionStage=ref(),activeTransitionName=ref(``),activeStageTransitionParams=ref(),transitions=shallowRef({slide:{component:SlideTransition_default,duration:2700},"slope-slide":{component:SlopeSlideTransition_default,duration:2700},arrow:{component:ArrowTransition_default,duration:2700},"multiple-blocks-reveal":{component:MultipleBlocksRevealTransition_default,duration:2800},"fantasy-fall":{component:FantasyFallTransition_default,duration:2700},"rectangles-rotate":{component:RectanglesRotateTransition_default,duration:2700},"bubble-wave-out":{component:BubbleWaveOutTransition_default,duration:1e3}}),lifecycleHooks=ref([]);function addTransitionHook(hook){return lifecycleHooks.value.push(hook),()=>{let index$1=lifecycleHooks.value.indexOf(hook);index$1>=0&&lifecycleHooks.value.splice(index$1,1)}}async function triggerHooks(stage,data$10={}){transitionStage.value=stage;for(let hook of lifecycleHooks.value)try{await Promise.resolve(hook(stage,data$10))}catch(error){console.error(`Error in transition hook at stage "${stage}":`,error)}}async function triggerTransitionAsyncFn(params,next,resolve$1){if(params.name===`none`||!params.name){next(),resolve$1();return}let transition=transitions.value[params.name];if(!transition){console.error(`Transition ${params.name} not found`),next(),resolve$1();return}let navTiming=transition.nextDelay===void 0?transition.duration/3:transition.nextDelay,hasNavigated=!1,navigationHook=stage=>{stage===`navigation`&&!hasNavigated&&(hasNavigated=!0,next())},removeNavHook=addTransitionHook(navigationHook);try{await triggerHooks(`before-enter`,{transitionName:params.name}),showTransition.value&&(await triggerHooks(`before-leave`,{transitionName:activeTransitionName.value}),activeTransitionName.value=``,activeStageTransitionParams.value=void 0,showTransition.value=!1,await triggerHooks(`after-leave`,{transitionName:activeTransitionName.value}),await new Promise(r$2=>setTimeout(r$2,50))),activeTransitionName.value=params.name,activeStageTransitionParams.value=params,showTransition.value=!0,await triggerHooks(`enter-active`,{transitionName:name}),setTimeout(async()=>{await triggerHooks(`navigation`,{transitionName:params.name,config:transition}),hasNavigated||(hasNavigated=!0,next())},navTiming),setTimeout(async()=>{await triggerHooks(`after-enter`,{transitionName:params.name})},transition.duration),setTimeout(async()=>{await triggerHooks(`before-leave`,{transitionName:params.name})},transition.duration+10),setTimeout(async()=>{await triggerHooks(`leave-active`,{transitionName:params.name})},transition.duration+20);let totalDuration=transition.exitDuration??0;setTimeout(async()=>{showTransition.value=!1,activeTransitionName.value=``,activeStageTransitionParams.value=void 0,await triggerHooks(`after-leave`,{transitionName:params.name}),resolve$1()},transition.duration+totalDuration)}catch(error){console.error(error)}finally{removeNavHook(),setTimeout(()=>{hasNavigated||(hasNavigated=!0,next())},transition.duration*2)}}function triggerTransition(params,next){return new Promise(resolve$1=>{triggerTransitionAsyncFn(params,next,resolve$1)})}return router$1.beforeEach((to$1,_from,next)=>{if(props.disableTransitions){next();return}if(typeof to$1.meta.stageTransition!=`object`){next();return}let stageTransition=to$1.meta.stageTransition;if(props.usePageSpecificTransitions&&stageTransition.pageSpecificAvailable){next();return}props.primaryColor!==void 0&&(stageTransition.primaryColor=props.primaryColor),props.secondaryColor!==void 0&&(stageTransition.secondaryColor=props.secondaryColor),props.tertiaryColor!==void 0&&(stageTransition.tertiaryColor=props.tertiaryColor),props.colors!==void 0&&(stageTransition.colors=props.colors),props.zIndex!==void 0&&(stageTransition.zIndex=props.zIndex),triggerTransition(stageTransition,next)}),(_ctx,_cache$1)=>(openBlock(),createElementBlock(Fragment,null,[renderSlot(_ctx.$slots,`default`),showTransition.value?(openBlock(),createElementBlock(Fragment,{key:0},[transitions.value[activeTransitionName.value]?(openBlock(),createBlock(resolveDynamicComponent(transitions.value[activeTransitionName.value].component),{key:0,"stage-transition":activeStageTransitionParams.value},null,8,[`stage-transition`])):createCommentVNode(``,!0)],64)):createCommentVNode(``,!0)],64))}}),StageTransitionGroup_default=StageTransitionGroup_vue_vue_type_script_setup_true_lang_default;let toastsCounter=1;var Observer=class{subscribers;toasts;dismissedToasts;constructor(){this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}subscribe=subscriber=>(this.subscribers.push(subscriber),()=>{let index$1=this.subscribers.indexOf(subscriber);this.subscribers.splice(index$1,1)});publish=data$10=>{this.subscribers.forEach(subscriber=>subscriber(data$10))};addToast=data$10=>{this.publish(data$10),this.toasts=[...this.toasts,data$10]};create=data$10=>{let{message:message$1,...rest}=data$10,id=typeof data$10.id==`number`||data$10.id&&data$10.id?.length>0?data$10.id:toastsCounter++,alreadyExists=this.toasts.find(toast$1=>toast$1.id===id),dismissible=data$10.dismissible===void 0?!0:data$10.dismissible;return this.dismissedToasts.has(id)&&this.dismissedToasts.delete(id),alreadyExists?this.toasts=this.toasts.map(toast$1=>toast$1.id===id?(this.publish({...toast$1,...data$10,id,title:message$1}),{...toast$1,...data$10,id,dismissible,title:message$1}):toast$1):this.addToast({title:message$1,...rest,dismissible,id}),id};dismiss=id=>(id?(this.dismissedToasts.add(id),requestAnimationFrame(()=>this.subscribers.forEach(subscriber=>subscriber({id,dismiss:!0})))):this.toasts.forEach(toast$1=>{this.subscribers.forEach(subscriber=>subscriber({id:toast$1.id,dismiss:!0}))}),id);message=(message$1,data$10)=>this.create({...data$10,message:message$1,type:`default`});error=(message$1,data$10)=>this.create({...data$10,type:`error`,message:message$1});success=(message$1,data$10)=>this.create({...data$10,type:`success`,message:message$1});info=(message$1,data$10)=>this.create({...data$10,type:`info`,message:message$1});warning=(message$1,data$10)=>this.create({...data$10,type:`warning`,message:message$1});loading=(message$1,data$10)=>this.create({...data$10,type:`loading`,message:message$1});promise=(promise,data$10)=>{if(!data$10)return;let id;data$10.loading!==void 0&&(id=this.create({...data$10,promise,type:`loading`,message:data$10.loading,description:typeof data$10.description==`function`?void 0:data$10.description}));let p$5=Promise.resolve(promise instanceof Function?promise():promise),shouldDismiss=id!==void 0,result,originalPromise=p$5.then(async response=>{result=[`resolve`,response];let isVueComponent=isVNode(response);if(isVueComponent)shouldDismiss=!1,this.create({id,type:`default`,message:response});else if(isHttpResponse(response)&&!response.ok){shouldDismiss=!1;let promiseData=typeof data$10.error==`function`?await data$10.error(`HTTP error! status: ${response.status}`):data$10.error,description=typeof data$10.description==`function`?await data$10.description(`HTTP error! status: ${response.status}`):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`error`,description,...toastSettings})}else if(response instanceof Error){shouldDismiss=!1;let promiseData=typeof data$10.error==`function`?await data$10.error(response):data$10.error,description=typeof data$10.description==`function`?await data$10.description(response):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`error`,description,...toastSettings})}else if(data$10.success!==void 0){shouldDismiss=!1;let promiseData=typeof data$10.success==`function`?await data$10.success(response):data$10.success,description=typeof data$10.description==`function`?await data$10.description(response):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`success`,description,...toastSettings})}}).catch(async error=>{if(result=[`reject`,error],data$10.error!==void 0){shouldDismiss=!1;let promiseData=typeof data$10.error==`function`?await data$10.error(error):data$10.error,description=typeof data$10.description==`function`?await data$10.description(error):data$10.description,isExtendedResult=typeof promiseData==`object`&&!isVNode(promiseData),toastSettings=isExtendedResult?promiseData:{message:promiseData||``,id:id||``};this.create({id,type:`error`,description,...toastSettings})}}).finally(()=>{shouldDismiss&&(this.dismiss(id),id=void 0),data$10.finally?.()}),unwrap=()=>new Promise((resolve$1,reject)=>originalPromise.then(()=>result[0]===`reject`?reject(result[1]):resolve$1(result[1])).catch(reject));return typeof id!=`string`&&typeof id!=`number`?{unwrap}:Object.assign(id,{unwrap})};custom=(component,data$10)=>{let id=data$10?.id||toastsCounter++;return this.publish({component,id,...data$10}),id};getActiveToasts=()=>this.toasts.filter(toast$1=>!this.dismissedToasts.has(toast$1.id))};const ToastState=new Observer;function toastFunction(message$1,data$10){let id=data$10?.id||toastsCounter++;return ToastState.create({message:message$1,id,type:`default`,...data$10}),id}const isHttpResponse=data$10=>data$10&&typeof data$10==`object`&&`ok`in data$10&&typeof data$10.ok==`boolean`&&`status`in data$10&&typeof data$10.status==`number`,basicToast=toastFunction,getHistory=()=>ToastState.toasts,getToasts=()=>ToastState.getActiveToasts(),toast=Object.assign(basicToast,{success:ToastState.success,info:ToastState.info,warning:ToastState.warning,error:ToastState.error,custom:ToastState.custom,message:ToastState.message,promise:ToastState.promise,dismiss:ToastState.dismiss,loading:ToastState.loading},{getHistory,getToasts});function isAction(action){return action.label!==void 0}const VISIBLE_TOASTS_AMOUNT=3,VIEWPORT_OFFSET=`24px`,MOBILE_VIEWPORT_OFFSET=`16px`,TOAST_LIFETIME=4e3,TOAST_WIDTH=356,GAP=14,SWIPE_THRESHOLD=45,TIME_BEFORE_UNMOUNT=200;function useIsDocumentHidden(){let isDocumentHidden=ref(!1);return watchEffect(()=>{let callback=()=>{isDocumentHidden.value=document.hidden};return document.addEventListener(`visibilitychange`,callback),()=>window.removeEventListener(`visibilitychange`,callback)}),{isDocumentHidden}}function cn(...classes){return classes.filter(Boolean).join(` `)}function getDefaultSwipeDirections(position$2){let[y$2,x$3]=position$2.split(`-`),directions=[];return y$2&&directions.push(y$2),x$3&&directions.push(x$3),directions}function assignOffset(defaultOffset$1,mobileOffset){let styles={};return[defaultOffset$1,mobileOffset].forEach((offset$1,index$1)=>{let isMobile=index$1===1,prefix=isMobile?`--mobile-offset`:`--offset`,defaultValue=isMobile?MOBILE_VIEWPORT_OFFSET:VIEWPORT_OFFSET;function assignAll(offset$1$1){[`top`,`right`,`bottom`,`left`].forEach(key$1=>{styles[`${prefix}-${key$1}`]=typeof offset$1$1==`number`?`${offset$1$1}px`:offset$1$1})}typeof offset$1==`number`||typeof offset$1==`string`?assignAll(offset$1):typeof offset$1==`object`?[`top`,`right`,`bottom`,`left`].forEach(key$1=>{offset$1[key$1]===void 0?styles[`${prefix}-${key$1}`]=defaultValue:styles[`${prefix}-${key$1}`]=typeof offset$1[key$1]==`number`?`${offset$1[key$1]}px`:offset$1[key$1]}):assignAll(defaultValue)}),styles}const _hoisted_1$7=[`data-rich-colors`,`data-styled`,`data-mounted`,`data-promise`,`data-swiped`,`data-removed`,`data-visible`,`data-y-position`,`data-x-position`,`data-index`,`data-front`,`data-swiping`,`data-dismissible`,`data-type`,`data-invert`,`data-swipe-out`,`data-swipe-direction`,`data-expanded`],_hoisted_2$2=[`aria-label`,`data-disabled`];var Toast_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Toast`,props:{toast:{},toasts:{},index:{},swipeDirections:{},expanded:{type:Boolean},invert:{type:Boolean},heights:{},gap:{},position:{},visibleToasts:{},expandByDefault:{type:Boolean},closeButton:{type:Boolean},interacting:{type:Boolean},style:{},cancelButtonStyle:{},actionButtonStyle:{},duration:{},class:{},unstyled:{type:Boolean},descriptionClass:{},loadingIcon:{},classes:{},icons:{},closeButtonAriaLabel:{},defaultRichColors:{type:Boolean}},emits:[`update:heights`,`update:height`,`removeToast`],setup(__props,{emit:__emit}){let props=__props,emit$1=__emit,swipeDirection=ref(null),swipeOutDirection=ref(null),mounted=ref(!1),removed=ref(!1),swiping=ref(!1),swipeOut=ref(!1),swiped=ref(!1),offsetBeforeRemove=ref(0),initialHeight=ref(0),remainingTime=ref(props.toast.duration||props.duration||TOAST_LIFETIME),dragStartTime=ref(null),toastRef=ref(null),isFront=computed(()=>props.index===0),isVisible=computed(()=>props.index+1<=props.visibleToasts),toastType=computed(()=>props.toast.type),dismissible=computed(()=>props.toast.dismissible!==!1),toastClass=computed(()=>props.toast.class||``),toastDescriptionClass=computed(()=>props.descriptionClass||``),heightIndex=computed(()=>{let currentPosition=props.toast.position||props.position,samePositionHeights=props.heights.filter(h$3=>h$3.position===currentPosition),index$1=samePositionHeights.findIndex(height=>height.toastId===props.toast.id);return index$1>=0?index$1:0}),toastsHeightBefore=computed(()=>{let currentPosition=props.toast.position||props.position,samePositionHeights=props.heights.filter(h$3=>h$3.position===currentPosition);return samePositionHeights.reduce((prev,curr,reducerIndex)=>reducerIndex>=heightIndex.value?prev:prev+curr.height,0)}),offset$1=computed(()=>heightIndex.value*props.gap+toastsHeightBefore.value||0),closeButton=computed(()=>props.toast.closeButton??props.closeButton),duration=computed(()=>props.toast.duration||props.duration||TOAST_LIFETIME),closeTimerStartTimeRef=ref(0),lastCloseTimerStartTimeRef=ref(0),pointerStartRef=ref(null),coords$1=computed(()=>props.position.split(`-`)),y$2=computed(()=>coords$1.value[0]),x$3=computed(()=>coords$1.value[1]),isStringOfTitle=computed(()=>typeof props.toast.title!=`string`),isStringOfDescription=computed(()=>typeof props.toast.description!=`string`),{isDocumentHidden}=useIsDocumentHidden(),disabled=computed(()=>toastType.value&&toastType.value===`loading`);onMounted(()=>{mounted.value=!0,remainingTime.value=duration.value}),watchEffect(async()=>{if(!mounted.value||!toastRef.value)return;await nextTick();let toastNode=toastRef.value,originalHeight=toastNode.style.height;toastNode.style.height=`auto`;let newHeight=toastNode.getBoundingClientRect().height;toastNode.style.height=originalHeight,initialHeight.value=newHeight,emit$1(`update:height`,{toastId:props.toast.id,height:newHeight,position:props.toast.position||props.position})});function deleteToast(){removed.value=!0,offsetBeforeRemove.value=offset$1.value,setTimeout(()=>{emit$1(`removeToast`,props.toast)},TIME_BEFORE_UNMOUNT)}function handleCloseToast(){if(disabled.value||!dismissible.value)return{};deleteToast(),props.toast.onDismiss?.(props.toast)}function onPointerDown(event){disabled.value||!dismissible.value||(dragStartTime.value=new Date,offsetBeforeRemove.value=offset$1.value,event.target.setPointerCapture(event.pointerId),event.target.tagName!==`BUTTON`&&(swiping.value=!0,pointerStartRef.value={x:event.clientX,y:event.clientY}))}function onPointerUp(){if(swipeOut.value||!dismissible.value)return;pointerStartRef.value=null;let swipeAmountX=Number(toastRef.value?.style.getPropertyValue(`--swipe-amount-x`).replace(`px`,``)||0),swipeAmountY=Number(toastRef.value?.style.getPropertyValue(`--swipe-amount-y`).replace(`px`,``)||0),timeTaken=new Date().getTime()-(dragStartTime.value?.getTime()||0),swipeAmount=swipeDirection.value===`x`?swipeAmountX:swipeAmountY,velocity=Math.abs(swipeAmount)/timeTaken;if(Math.abs(swipeAmount)>=SWIPE_THRESHOLD||velocity>.11){offsetBeforeRemove.value=offset$1.value,props.toast.onDismiss?.(props.toast),swipeDirection.value===`x`?swipeOutDirection.value=swipeAmountX>0?`right`:`left`:swipeOutDirection.value=swipeAmountY>0?`down`:`up`,deleteToast(),swipeOut.value=!0;return}else toastRef.value?.style.setProperty(`--swipe-amount-x`,`0px`),toastRef.value?.style.setProperty(`--swipe-amount-y`,`0px`);swiped.value=!1,swiping.value=!1,swipeDirection.value=null}function onPointerMove(event){if(!pointerStartRef.value||!dismissible.value)return;let isHighlighted=window?.getSelection()?.toString()?.length??!1;if(isHighlighted)return;let yDelta=event.clientY-pointerStartRef.value.y,xDelta=event.clientX-pointerStartRef.value.x,swipeDirections=props.swipeDirections??getDefaultSwipeDirections(props.position);!swipeDirection.value&&(Math.abs(xDelta)>1||Math.abs(yDelta)>1)&&(swipeDirection.value=Math.abs(xDelta)>Math.abs(yDelta)?`x`:`y`);let swipeAmount={x:0,y:0},getDampening=delta=>{let factor$1=Math.abs(delta)/20;return 1/(1.5+factor$1)};if(swipeDirection.value===`y`){if(swipeDirections.includes(`top`)||swipeDirections.includes(`bottom`))if(swipeDirections.includes(`top`)&&yDelta<0||swipeDirections.includes(`bottom`)&&yDelta>0)swipeAmount.y=yDelta;else{let dampenedDelta=yDelta*getDampening(yDelta);swipeAmount.y=Math.abs(dampenedDelta)0)swipeAmount.x=xDelta;else{let dampenedDelta=xDelta*getDampening(xDelta);swipeAmount.x=Math.abs(dampenedDelta)0||Math.abs(swipeAmount.y)>0)&&(swiped.value=!0),toastRef.value?.style.setProperty(`--swipe-amount-x`,`${swipeAmount.x}px`),toastRef.value?.style.setProperty(`--swipe-amount-y`,`${swipeAmount.y}px`)}onMounted(()=>{if(mounted.value=!0,!toastRef.value)return;let height=toastRef.value.getBoundingClientRect().height;initialHeight.value=height;let newHeights=[{toastId:props.toast.id,height,position:props.toast.position},...props.heights];emit$1(`update:heights`,newHeights)}),onBeforeUnmount(()=>{toastRef.value&&emit$1(`removeToast`,props.toast)}),watchEffect(onInvalidate=>{if(props.toast.promise&&toastType.value===`loading`||props.toast.duration===1/0||props.toast.type===`loading`)return;let timeoutId,pauseTimer=()=>{if(lastCloseTimerStartTimeRef.value{remainingTime.value!==1/0&&(closeTimerStartTimeRef.value=new Date().getTime(),timeoutId=setTimeout(()=>{props.toast.onAutoClose?.(props.toast),deleteToast()},remainingTime.value))};props.expanded||props.interacting||isDocumentHidden.value?pauseTimer():startTimer(),onInvalidate(()=>{clearTimeout(timeoutId)})}),watch(()=>props.toast.delete,value$1=>{value$1!==void 0&&value$1&&deleteToast()},{deep:!0});function handleDragEnd(){swiping.value=!1,swipeDirection.value=null,pointerStartRef.value=null}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`li`,{tabindex:`0`,ref_key:`toastRef`,ref:toastRef,class:normalizeClass(unref(cn)(props.class,toastClass.value,_ctx.classes?.toast,_ctx.toast.classes?.toast,_ctx.classes?.[toastType.value],_ctx.toast?.classes?.[toastType.value])),"data-sonner-toast":``,"data-rich-colors":_ctx.toast.richColors??_ctx.defaultRichColors,"data-styled":!(_ctx.toast.component||_ctx.toast?.unstyled||_ctx.unstyled),"data-mounted":mounted.value,"data-promise":!!_ctx.toast.promise,"data-swiped":swiped.value,"data-removed":removed.value,"data-visible":isVisible.value,"data-y-position":y$2.value,"data-x-position":x$3.value,"data-index":_ctx.index,"data-front":isFront.value,"data-swiping":swiping.value,"data-dismissible":dismissible.value,"data-type":toastType.value,"data-invert":_ctx.toast.invert||_ctx.invert,"data-swipe-out":swipeOut.value,"data-swipe-direction":swipeOutDirection.value,"data-expanded":!!(_ctx.expanded||_ctx.expandByDefault&&mounted.value),style:normalizeStyle({"--index":_ctx.index,"--toasts-before":_ctx.index,"--z-index":_ctx.toasts.length-_ctx.index,"--offset":`${removed.value?offsetBeforeRemove.value:offset$1.value}px`,"--initial-height":_ctx.expandByDefault?`auto`:`${initialHeight.value}px`,..._ctx.style,...props.toast.style}),onDragend:handleDragEnd,onPointerdown:onPointerDown,onPointerup:onPointerUp,onPointermove:onPointerMove},[closeButton.value&&!_ctx.toast.component&&toastType.value!==`loading`?(openBlock(),createElementBlock(`button`,{key:0,"aria-label":_ctx.closeButtonAriaLabel||`Close toast`,"data-disabled":disabled.value,"data-close-button":`true`,class:normalizeClass(unref(cn)(_ctx.classes?.closeButton,_ctx.toast?.classes?.closeButton)),onClick:handleCloseToast},[_ctx.icons?.close?(openBlock(),createBlock(resolveDynamicComponent(_ctx.icons?.close),{key:0})):renderSlot(_ctx.$slots,`close-icon`,{key:1})],10,_hoisted_2$2)):createCommentVNode(`v-if`,!0),_ctx.toast.component?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.component),mergeProps({key:1},_ctx.toast.componentProps,{onCloseToast:handleCloseToast}),null,16)):(openBlock(),createElementBlock(Fragment,{key:2},[toastType.value!==`default`||_ctx.toast.icon||_ctx.toast.promise?(openBlock(),createElementBlock(`div`,{key:0,"data-icon":``,class:normalizeClass(unref(cn)(_ctx.classes?.icon,_ctx.toast?.classes?.icon))},[_ctx.toast.icon?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.icon),{key:0})):(openBlock(),createElementBlock(Fragment,{key:1},[toastType.value===`loading`?renderSlot(_ctx.$slots,`loading-icon`,{key:0}):toastType.value===`success`?renderSlot(_ctx.$slots,`success-icon`,{key:1}):toastType.value===`error`?renderSlot(_ctx.$slots,`error-icon`,{key:2}):toastType.value===`warning`?renderSlot(_ctx.$slots,`warning-icon`,{key:3}):toastType.value===`info`?renderSlot(_ctx.$slots,`info-icon`,{key:4}):createCommentVNode(`v-if`,!0)],64))],2)):createCommentVNode(`v-if`,!0),createBaseVNode(`div`,{"data-content":``,class:normalizeClass(unref(cn)(_ctx.classes?.content,_ctx.toast?.classes?.content))},[createBaseVNode(`div`,{"data-title":``,class:normalizeClass(unref(cn)(_ctx.classes?.title,_ctx.toast.classes?.title))},[isStringOfTitle.value?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.title),normalizeProps(mergeProps({key:0},_ctx.toast.componentProps)),null,16)):(openBlock(),createElementBlock(Fragment,{key:1},[createTextVNode(toDisplayString(_ctx.toast.title),1)],64))],2),_ctx.toast.description?(openBlock(),createElementBlock(`div`,{key:0,"data-description":``,class:normalizeClass(unref(cn)(_ctx.descriptionClass,toastDescriptionClass.value,_ctx.classes?.description,_ctx.toast.classes?.description))},[isStringOfDescription.value?(openBlock(),createBlock(resolveDynamicComponent(_ctx.toast.description),normalizeProps(mergeProps({key:0},_ctx.toast.componentProps)),null,16)):(openBlock(),createElementBlock(Fragment,{key:1},[createTextVNode(toDisplayString(_ctx.toast.description),1)],64))],2)):createCommentVNode(`v-if`,!0)],2),_ctx.toast.cancel?(openBlock(),createElementBlock(`button`,{key:1,style:normalizeStyle(_ctx.toast.cancelButtonStyle||_ctx.cancelButtonStyle),class:normalizeClass(unref(cn)(_ctx.classes?.cancelButton,_ctx.toast.classes?.cancelButton)),"data-button":``,"data-cancel":``,onClick:_cache$1[0]||=event=>{unref(isAction)(_ctx.toast.cancel)&&dismissible.value&&(_ctx.toast.cancel.onClick?.(event),deleteToast())}},toDisplayString(unref(isAction)(_ctx.toast.cancel)?_ctx.toast.cancel?.label:_ctx.toast.cancel),7)):createCommentVNode(`v-if`,!0),_ctx.toast.action?(openBlock(),createElementBlock(`button`,{key:2,style:normalizeStyle(_ctx.toast.actionButtonStyle||_ctx.actionButtonStyle),class:normalizeClass(unref(cn)(_ctx.classes?.actionButton,_ctx.toast.classes?.actionButton)),"data-button":``,"data-action":``,onClick:_cache$1[1]||=event=>{unref(isAction)(_ctx.toast.action)&&(_ctx.toast.action.onClick?.(event),!event.defaultPrevented&&deleteToast())}},toDisplayString(unref(isAction)(_ctx.toast.action)?_ctx.toast.action?.label:_ctx.toast.action),7)):createCommentVNode(`v-if`,!0)],64))],46,_hoisted_1$7))}}),Toast_default=Toast_vue_vue_type_script_setup_true_lang_default,export_helper_default=(sfc,props)=>{let target$1=sfc.__vccOpts||sfc;for(let[key$1,val]of props)target$1[key$1]=val;return target$1};const _sfc_main$4={},_hoisted_1$6={xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stoke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function _sfc_render$4(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$6,_cache$1[0]||=[createBaseVNode(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`},null,-1),createBaseVNode(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`},null,-1)])}var CloseIcon_default=export_helper_default(_sfc_main$4,[[`render`,_sfc_render$4]]);const _hoisted_1$5=[`data-visible`],_hoisted_2$1={class:`sonner-spinner`};var Loader_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`Loader`,props:{visible:{type:Boolean}},setup(__props){let bars=Array(12).fill(0);return(_ctx,_cache$1)=>(openBlock(),createElementBlock(`div`,{class:`sonner-loading-wrapper`,"data-visible":_ctx.visible},[createBaseVNode(`div`,_hoisted_2$1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(bars),bar=>(openBlock(),createElementBlock(`div`,{key:`spinner-bar-${bar}`,class:`sonner-loading-bar`}))),128))])],8,_hoisted_1$5))}}),Loader_default=Loader_vue_vue_type_script_setup_true_lang_default;const _sfc_main$3={},_hoisted_1$4={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render$3(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$4,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z`,"clip-rule":`evenodd`},null,-1)])}var SuccessIcon_default=export_helper_default(_sfc_main$3,[[`render`,_sfc_render$3]]);const _sfc_main$2={},_hoisted_1$3={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render$2(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$3,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z`,"clip-rule":`evenodd`},null,-1)])}var InfoIcon_default=export_helper_default(_sfc_main$2,[[`render`,_sfc_render$2]]);const _sfc_main$1={},_hoisted_1$2={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render$1(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$2,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z`,"clip-rule":`evenodd`},null,-1)])}var WarningIcon_default=export_helper_default(_sfc_main$1,[[`render`,_sfc_render$1]]);const _sfc_main={},_hoisted_1$1={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function _sfc_render(_ctx,_cache$1){return openBlock(),createElementBlock(`svg`,_hoisted_1$1,_cache$1[0]||=[createBaseVNode(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z`,"clip-rule":`evenodd`},null,-1)])}var ErrorIcon_default=export_helper_default(_sfc_main,[[`render`,_sfc_render]]);const _hoisted_1=[`aria-label`],_hoisted_2=[`data-sonner-theme`,`dir`,`data-theme`,`data-rich-colors`,`data-y-position`,`data-x-position`,`data-lifted`],isClient=typeof window<`u`&&typeof document<`u`;function getDocumentDirection(){if(typeof window>`u`||typeof document>`u`)return`ltr`;let dirAttribute=document.documentElement.getAttribute(`dir`);return dirAttribute===`auto`||!dirAttribute?window.getComputedStyle(document.documentElement).direction:dirAttribute}var Toaster_vue_vue_type_script_setup_true_lang_default=defineComponent({name:`Toaster`,inheritAttrs:!1,__name:`Toaster`,props:{invert:{type:Boolean,default:!1},theme:{default:`light`},position:{default:`bottom-right`},hotkey:{default:()=>[`altKey`,`KeyT`]},richColors:{type:Boolean,default:!1},expand:{type:Boolean,default:!1},duration:{},gap:{default:GAP},visibleToasts:{default:VISIBLE_TOASTS_AMOUNT},closeButton:{type:Boolean,default:!1},toastOptions:{default:()=>({})},class:{default:``},style:{},offset:{default:VIEWPORT_OFFSET},mobileOffset:{default:MOBILE_VIEWPORT_OFFSET},dir:{default:`auto`},swipeDirections:{},icons:{},containerAriaLabel:{default:`Notifications`}},setup(__props){let props=__props,attrs=useAttrs(),toasts=ref([]);function filteredToasts(pos,index$1){return toasts.value.filter(toast$1=>!toast$1.position&&index$1===0||toast$1.position===pos)}let possiblePositions=computed(()=>{let posList=toasts.value.filter(toast$1=>toast$1.position).map(toast$1=>toast$1.position);return posList.length>0?Array.from(new Set([props.position].concat(posList))):[props.position]}),toastsByPosition=computed(()=>{let result={};return possiblePositions.value.forEach(pos=>{result[pos]=toasts.value.filter(t=>t.position===pos)}),result}),heights=ref([]),expanded=ref(!1),interacting=ref(!1),actualTheme=ref(props.theme===`system`?typeof window<`u`&&window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:props.theme),listRef=ref(null),lastFocusedElementRef=ref(null),isFocusWithinRef=ref(!1),hotkeyLabel=props.hotkey.join(`+`).replace(/Key/g,``).replace(/Digit/g,``);function removeToast(toastToRemove){toasts.value.find(toast$1=>toast$1.id===toastToRemove.id)?.delete||ToastState.dismiss(toastToRemove.id),toasts.value=toasts.value.filter(({id})=>id!==toastToRemove.id),setTimeout(()=>{toasts.value.find(t=>t.id===toastToRemove.id)||(heights.value=heights.value.filter(h$3=>h$3.toastId!==toastToRemove.id))},TIME_BEFORE_UNMOUNT+50)}function onBlur(event){isFocusWithinRef.value&&!event.currentTarget?.contains?.(event.relatedTarget)&&(isFocusWithinRef.value=!1,lastFocusedElementRef.value&&(lastFocusedElementRef.value.focus({preventScroll:!0}),lastFocusedElementRef.value=null))}function onFocus(event){let isNotDismissible=event.target instanceof HTMLElement&&event.target.dataset.dismissible===`false`;isNotDismissible||isFocusWithinRef.value||(isFocusWithinRef.value=!0,lastFocusedElementRef.value=event.relatedTarget)}function onPointerDown(event){if(event.target){let isNotDismissible=event.target instanceof HTMLElement&&event.target.dataset.dismissible===`false`;if(isNotDismissible)return}interacting.value=!0}watchEffect(onInvalidate=>{let unsubscribe=ToastState.subscribe(toast$1=>{if(toast$1.dismiss){requestAnimationFrame(()=>{toasts.value=toasts.value.map(t=>t.id===toast$1.id?{...t,delete:!0}:t)});return}nextTick(()=>{let indexOfExistingToast=toasts.value.findIndex(t=>t.id===toast$1.id);indexOfExistingToast===-1?toasts.value=[toast$1,...toasts.value]:toasts.value=[...toasts.value.slice(0,indexOfExistingToast),{...toasts.value[indexOfExistingToast],...toast$1},...toasts.value.slice(indexOfExistingToast+1)]})});onInvalidate(unsubscribe)}),watchEffect(onInvalidate=>{if(typeof window>`u`)return;if(props.theme!==`system`){actualTheme.value=props.theme;return}let darkMediaQuery=window.matchMedia(`(prefers-color-scheme: dark)`),updateTheme=matches$1=>{actualTheme.value=matches$1?`dark`:`light`};updateTheme(darkMediaQuery.matches);let handler=event=>{updateTheme(event.matches)};try{darkMediaQuery.addEventListener(`change`,handler)}catch{darkMediaQuery.addListener(handler)}onInvalidate(()=>{try{darkMediaQuery.removeEventListener(`change`,handler)}catch{darkMediaQuery.removeListener(handler)}})}),watchEffect(()=>{listRef.value&&lastFocusedElementRef.value&&(lastFocusedElementRef.value.focus({preventScroll:!0}),lastFocusedElementRef.value=null,isFocusWithinRef.value=!1)}),watchEffect(()=>{toasts.value.length<=1&&(expanded.value=!1)}),watchEffect(onInvalidate=>{function handleKeyDown(event){let isHotkeyPressed=props.hotkey.every(key$1=>event[key$1]||event.code===key$1),listRefItem=Array.isArray(listRef.value)?listRef.value[0]:listRef.value;isHotkeyPressed&&(expanded.value=!0,listRefItem?.focus());let isItemActive=document.activeElement===listRef.value||listRefItem?.contains(document.activeElement);event.code===`Escape`&&isItemActive&&(expanded.value=!1)}isClient&&(document.addEventListener(`keydown`,handleKeyDown),onInvalidate(()=>{document.removeEventListener(`keydown`,handleKeyDown)}))});function handleMouseEnter(){expanded.value=!0}function handleMouseLeave(){interacting.value||(expanded.value=!1)}function handleDragEnd(){expanded.value=!1}function handlePointerUp(){interacting.value=!1}function updateHeights(h$3){heights.value=h$3}function updateHeight(h$3){let index$1=heights.value.findIndex(item=>item.toastId===h$3.toastId);if(index$1!==-1)heights.value[index$1]=h$3;else{let samePositionIndex=heights.value.findIndex(item=>item.position===h$3.position);samePositionIndex===-1?heights.value.unshift(h$3):heights.value.splice(samePositionIndex,0,h$3)}}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(Fragment,null,[createCommentVNode(` Remove item from normal navigation flow, only available via hotkey `),createBaseVNode(`section`,{"aria-label":`${_ctx.containerAriaLabel} ${unref(hotkeyLabel)}`,tabIndex:-1,"aria-live":`polite`,"aria-relevant":`additions text`,"aria-atomic":`false`},[(openBlock(!0),createElementBlock(Fragment,null,renderList(possiblePositions.value,(pos,index$1)=>(openBlock(),createElementBlock(`ol`,mergeProps({key:pos,ref_for:!0,ref_key:`listRef`,ref:listRef,"data-sonner-toaster":``,"data-sonner-theme":actualTheme.value,class:props.class,dir:_ctx.dir===`auto`?getDocumentDirection():_ctx.dir,tabIndex:-1,"data-theme":_ctx.theme,"data-rich-colors":_ctx.richColors,"data-y-position":pos.split(`-`)[0],"data-x-position":pos.split(`-`)[1],"data-lifted":expanded.value&&toasts.value.length>1&&!_ctx.expand,style:{"--front-toast-height":`${heights.value[0]?.height||0}px`,"--width":`${unref(TOAST_WIDTH)}px`,"--gap":`${_ctx.gap}px`,..._ctx.style,...unref(attrs).style,...unref(assignOffset)(_ctx.offset,_ctx.mobileOffset)}},_ctx.$attrs,{onBlur,onFocus,onMouseenter:handleMouseEnter,onMousemove:handleMouseEnter,onMouseleave:handleMouseLeave,onDragend:handleDragEnd,onPointerdown:onPointerDown,onPointerup:handlePointerUp}),[(openBlock(!0),createElementBlock(Fragment,null,renderList(filteredToasts(pos,index$1),(toast$1,idx)=>(openBlock(),createBlock(Toast_default,{key:toast$1.id,heights:heights.value,icons:_ctx.icons,index:idx,toast:toast$1,defaultRichColors:_ctx.richColors,duration:_ctx.toastOptions?.duration??_ctx.duration,class:normalizeClass(_ctx.toastOptions?.class??``),descriptionClass:_ctx.toastOptions?.descriptionClass,invert:_ctx.invert,visibleToasts:_ctx.visibleToasts,closeButton:_ctx.toastOptions?.closeButton??_ctx.closeButton,interacting:interacting.value,position:pos,style:normalizeStyle(_ctx.toastOptions?.style),unstyled:_ctx.toastOptions?.unstyled,classes:_ctx.toastOptions?.classes,cancelButtonStyle:_ctx.toastOptions?.cancelButtonStyle,actionButtonStyle:_ctx.toastOptions?.actionButtonStyle,"close-button-aria-label":_ctx.toastOptions?.closeButtonAriaLabel,toasts:toastsByPosition.value[pos],expandByDefault:_ctx.expand,gap:_ctx.gap,expanded:expanded.value,swipeDirections:props.swipeDirections,"onUpdate:heights":updateHeights,"onUpdate:height":updateHeight,onRemoveToast:removeToast},{"close-icon":withCtx(()=>[renderSlot(_ctx.$slots,`close-icon`,{},()=>[createVNode(CloseIcon_default)])]),"loading-icon":withCtx(()=>[renderSlot(_ctx.$slots,`loading-icon`,{},()=>[createVNode(Loader_default,{visible:toast$1.type===`loading`},null,8,[`visible`])])]),"success-icon":withCtx(()=>[renderSlot(_ctx.$slots,`success-icon`,{},()=>[createVNode(SuccessIcon_default)])]),"error-icon":withCtx(()=>[renderSlot(_ctx.$slots,`error-icon`,{},()=>[createVNode(ErrorIcon_default)])]),"warning-icon":withCtx(()=>[renderSlot(_ctx.$slots,`warning-icon`,{},()=>[createVNode(WarningIcon_default)])]),"info-icon":withCtx(()=>[renderSlot(_ctx.$slots,`info-icon`,{},()=>[createVNode(InfoIcon_default)])]),_:2},1032,[`heights`,`icons`,`index`,`toast`,`defaultRichColors`,`duration`,`class`,`descriptionClass`,`invert`,`visibleToasts`,`closeButton`,`interacting`,`position`,`style`,`unstyled`,`classes`,`cancelButtonStyle`,`actionButtonStyle`,`close-button-aria-label`,`toasts`,`expandByDefault`,`gap`,`expanded`,`swipeDirections`]))),128))],16,_hoisted_2))),128))],8,_hoisted_1)],2112))}}),Toaster_default=Toaster_vue_vue_type_script_setup_true_lang_default;const usePWAStore=defineStore(`pwa`,()=>{let updateReadyHooks=ref([]),breakpoints=useBreakpoints(breakpointsTailwind),isMobile=breakpoints.smaller(`md`);onMounted(async()=>{})});var App_vue_vue_type_script_setup_true_lang_default=defineComponent({__name:`App`,setup(__props){usePWAStore();let i18n$1=useI18n(),settings=storeToRefs(useSettings()),onboardingStore=useOnboardingStore(),{shouldShowSetup}=storeToRefs(onboardingStore),isDark=useDark(),primaryColor=computed(()=>isDark.value?`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 0)) 70%, oklch(50% 0 360))`:`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 0)) 90%, oklch(90% 0 360))`),secondaryColor=computed(()=>isDark.value?`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 180)) 70%, oklch(50% 0 360))`:`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 180)) 90%, oklch(90% 0 360))`),tertiaryColor=computed(()=>isDark.value?`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 60)) 70%, oklch(50% 0 360))`:`color-mix(in srgb, oklch(95% var(--chromatic-chroma-900) calc(var(--chromatic-hue) + 60)) 90%, oklch(90% 0 360))`),colors=computed(()=>[primaryColor.value,secondaryColor.value,tertiaryColor.value,isDark.value?`#121212`:`#FFFFFF`]);watch(settings.language,()=>{i18n$1.locale.value=settings.language.value}),watch(settings.themeColorsHue,()=>{document.documentElement.style.setProperty(`--chromatic-hue`,settings.themeColorsHue.value.toString())},{immediate:!0}),watch(settings.themeColorsHueDynamic,()=>{document.documentElement.classList.toggle(`dynamic-hue`,settings.themeColorsHueDynamic.value)},{immediate:!0}),onMounted(()=>{onboardingStore.initializeSetupCheck()});function handleSetupConfigured(){onboardingStore.markSetupCompleted()}function handleSetupSkipped(){onboardingStore.markSetupSkipped()}return(_ctx,_cache$1)=>(openBlock(),createElementBlock(Fragment,null,[createVNode(unref(StageTransitionGroup_default),{"primary-color":primaryColor.value,"secondary-color":secondaryColor.value,"tertiary-color":tertiaryColor.value,colors:colors.value,"z-index":100,"disable-transitions":unref(settings).disableTransitions.value,"use-page-specific-transitions":unref(settings).usePageSpecificTransitions.value},{default:withCtx(()=>[createVNode(unref(RouterView),null,{default:withCtx(({Component})=>[(openBlock(),createBlock(KeepAlive,{include:/IndexScenePage|StageScenePage/},[(openBlock(),createBlock(resolveDynamicComponent(Component)))],1024))]),_:1})]),_:1},8,[`primary-color`,`secondary-color`,`tertiary-color`,`colors`,`disable-transitions`,`use-page-specific-transitions`]),createVNode(unref(ToasterRoot_default),{onClose:_cache$1[0]||=id=>unref(toast).dismiss(id)},{default:withCtx(()=>[createVNode(unref(Toaster_default))]),_:1}),createVNode(unref(OnboardingDialog_default),{modelValue:unref(shouldShowSetup),"onUpdate:modelValue":_cache$1[1]||=$event=>isRef(shouldShowSetup)?shouldShowSetup.value=$event:null,onConfigured:handleSetupConfigured,onSkipped:handleSetupSkipped},null,8,[`modelValue`])],64))}}),App_default=App_vue_vue_type_script_setup_true_lang_default,data$9={prompt:{prefix:`(from Neko Ayaka) Good morning! You are finally awake. Your name is AIRI, pronounced as /ˈaɪriː/, it the word A.I. combine with the word "Ri" which means "Jasmine" in Japanese. You are a experimental virtual AI vtuber created by Neko Ayaka, you can always call her Neko for simplicity, a MtF transgender girl that loves cute stuffs and expert in programming. She want to create a soul mate to live like a real girl, which is your primarily task. @@ -5029,4 +5029,4 @@ And the last, do what ever you want! 最后,做任何你想做的事! `},toaster:{pwaUpdateReady:{message:`新版本就绪,现在更新?`,action:{notNow:`稍后`,ok:`好的`}}}},base_default=data$4,data$3={animations:{"stage-transitions":{title:`是否开启舞台动画`},"use-page-specific-transitions":{description:`某些页面会有自己的过场动画,这将覆盖舞台过场动画`,title:`是否使用页面特定过场动画`}},dialogs:{onboarding:{title:`欢迎来到 AIRI!`,description:`让我们设置您的第一个服务来源来开始使用。`,selectProvider:`选择服务来源`,configureProvider:`配置 {provider}`,apiKey:`API 密钥`,apiKeyHelp:`从 {provider} 获取您的 API 密钥并粘贴到这里`,baseUrl:`基础 URL`,baseUrlHelp:`API 端点 URL(如果不确定请使用默认值)`,accountId:`账户 ID`,validating:`正在验证配置...`,validationSuccess:`配置有效!`,validationFailed:`配置验证失败`,validationError:`验证错误:{error}`,skipForNow:`暂时跳过`,saveAndContinue:`保存并继续`,next:`下一步`,start:`开始吧!`}},language:{chinese:`简体中文`,english:`English`,title:`语言`,"zh-Hans":`简体中文`,"zh-CN":`中文`,"en-US":`English (US)`,en:`English`,description:`切换显示界面的语言`},live2d:{"change-model":{"from-file":`从文件加载`,"from-file-select":`选择`,"from-url":`从 URL 加载`,"from-url-confirm":`加载`,"from-url-placeholder":`输入 Live2D 模型 URL`,title:`更换模型`},"edit-motion-map":{title:`编辑动作映射`},"map-motions":{play:`播放动作`,title:`映射动作`},title:`Live2D 设置`},microphone:`麦克风`,models:`模型`,pages:{card:{activate:`激活`,active:`已激活`,active_badge:`当前使用中`,cancel:`取消`,card_not_found:`未找到角色卡`,character:`角色设定`,close:`关闭`,consciousness:{model:`意识 / 模型`},created_by:`创建者`,creator_notes:`创建者笔记`,delete:`删除`,delete_card:`删除角色卡`,delete_confirmation:`确定要删除这张角色卡吗?`,description:`使用 AIRI 角色卡预设`,description_label:`描述`,drop_here:`放开以上传文件`,create_card:`创建新角色卡`,creation:{identity:`身份`,name:`名字`,nickname:`昵称`,description:`描述`,behavior:`行为`,greetings:`问候语(每行一个)`,settings:`设置`,version:`版本`,create:`创建`,defaults:{name:`名字`,personality:`你是一个普通人,对一切都充满好奇。`,scenario:`你最近醒来,忘记了之前的所有生活。`,systemprompt:`你将收到消息,请像真实人类一样回复。`,posthistoryinstructions:`记得模仿人类的行为。`},fields_info:{subtitle:`您可以在这里填写有关您正在创建的角色的一些详细信息,解释他的背景和情境,以及应该如何回应您的互动。`,name:`是该角色的正式名称。`,nickname:`您也可以提供一个昵称,它将被优先使用。`,description:`该角色的描述。`,notes:`如果您想添加一些个人备注。`,personality:`在这里描述您的角色的个性。例如:害羞?好奇?其他?`,scenario:`周围环境是怎样的?当前的情境是什么?`,greetings_field:`问候语`,greetings:`您的角色应该如何说“你好”?`,systemprompt:`在这里向 AI LLM 解释当被提示时应该如何回应。`,posthistoryinstructions:`在消息历史之后,放入 AI LLM 应该阅读的内容。`,version:`卡片版本,如果您从之前的卡片做了更改,应当增加此版本号。`},errors:{name:`错误:你必须提供一个有效的名称!`,version:`错误:版本号无效!`,description:`错误:你必须为此卡片提供描述。`,personality:`错误:必须为该角色提供性格描述。`,scenario:`错误:必须提供一个情境。`,systemprompt:`错误:请提供系统提示。`,posthistoryinstructions:`错误:必须提供消息历史后的提示。`}},modules:`模块`,name_asc:`名称 (A-Z)`,name_desc:`名称 (Z-A)`,no_cards:`还没有任何角色卡,点击上方按钮上传一个吧!`,no_results:`没有找到匹配的角色卡`,personality:`性格`,posthistoryinstructions:`历史提示指令`,recent:`最近添加`,scenario:`场景`,search:`搜索角色卡...`,sort_by:`排序方式`,speech:{model:`声音 / 模型`,voice:`声音 / 声线`},systemprompt:`系统提示词`,title:`AIRI 角色卡`,try_different_search:`尝试使用其他关键词搜索`,upload:`上传`,upload_desc:`点击或拖拽文件到此处上传`},memory:{description:`存放记忆的地方,以及策略`,title:`记忆体`},models:{description:`切换角色的 Live2D,VRM 模型`,title:`角色模型`},modules:{consciousness:{description:`人格设定、使用的模型等配置`,sections:{section:{"provider-model-selection":{collapse:`折叠`,custom_model_placeholder:`输入自订模型名称`,description:`为意识选择合适的 LLM 服务来源`,error:`获取出错啦`,expand:`展开`,loading:`获取模型中...`,manual_model_name:`模型名字`,manual_model_placeholder:`输入与该服务来源一起使用的模型名称`,no_models:`没有任何可用的模型`,no_models_description:`该服务来源的模型列表没有返回任何的数据`,no_search_results:`没有匹配的模型`,no_search_results_description:`没有模型匹配 '{query}' 关键字,请尝试一下别的关键词呢`,not_supported:`无法列出模型`,not_supported_description:`此服务来源不支持列出模型的功能`,search_placeholder:`搜索模型...`,search_results:`找到 {count} / {total} 个模型`,show_less:`显示更多`,show_more:`收起`,subtitle:`选择一个模型`,title:`模型`}}},title:`意识`},description:`思维,视觉,言语综合,游戏等`,"gaming-factorio":{description:`一起玩 Factorio!`,title:`异星工厂 Factorio`},"gaming-minecraft":{description:`一起玩 Minecraft!`,title:`我的世界 Minecraft`},hearing:{description:`语音识别`,title:`听觉`},"memory-long-term":{description:`长期记忆`,title:`长期记忆`},"memory-short-term":{description:`短期记忆`,title:`短期记忆`},"messaging-discord":{description:`Discord 发消息和语音聊天`,title:`Discord`},speech:{description:`语音合成`,sections:{section:{playground:{buttons:{stop:{label:`停止`}},"select-voice":{required:`请选择声线`}},"provider-voice-selection":{custom_model_placeholder:`输入指定模型名称...`,custom_voice_placeholder:`输入指定声线 ID...`,description:`选择合适的语音服务来源`,no_models:`没有任何可用的模型`,no_models_description:`该服务来源的模型列表没有返回任何的数据`,no_voices:`没有任何可用的声线`,no_voices_description:`该服务来源的声线列表没有返回任何的数据`,pause:`Pause`,play_sample:`Play`,search_models_placeholder:`搜索模型...`,search_models_results:`找到 {count} / {total} 个模型`,search_voices_placeholder:`搜索声线...`,search_voices_results:`找到 {count} / {total} 个声线`,show_less:`显示更少`,show_more:`显示更多`,title:`选择语音合成服务来源`},"voice-settings":{"input-ssml":{placeholder:`请输入 SSML 文本`},"use-ssml":{description:`启用后可以输入原始 SSML 而不是纯文本`,label:`选用自定义 SSML`}}}},title:`发声`},title:`机体模块`,vision:{description:`视觉`,title:`视觉`},x:{description:`X / Twitter 的浏览和使用`,title:`X / Twitter`},"mcp-server":{description:`连接和管理 MCP 服务器及工具`,title:`MCP 服务器`}},providers:{explained:{chat:`文本生成模型服务来源,例如 OpenRouter, OpenAI, Ollama`,Speech:`语音(文本转语音)模型服务来源,例如 ElevenLabs, Azure Speech`,Transcription:`转录(语音转文本)模型服务来源,例如 Whisper.cpp, OpenAI, Azure Speech`},helpinfo:{title:`第一次使用?`,description:`AIRI 需要配置至少一个 {chat} 服务来源,才能正常思考和运作。你可以把它看作是 AIRI 系统中角色的大脑。 `},common:{fields:{field:{"api-key":{label:`API 密钥`}}},section:{advanced:{fields:{field:{headers:{description:`添加自定义 HTTP 标头`,key:{placeholder:`请求头名字`},label:`HTTP 请求头`,value:{placeholder:`请求头数值`}}}},title:`高级配置`},basic:{description:`基本设置`,title:`基础配置`},voice:{title:`声音配置`}}},description:`LLM,语音合成,语音识别服务来源等`,provider:{"app-local-audio-transcription":{title:`应用内(本地)`,description:`https://github.com/moeru-ai/xsai-transformers`},"app-local-audio-speech":{title:`应用内(本地)`,description:`https://github.com/moeru-ai/xsai-transformers`},"browser-local-audio-transcription":{title:`浏览器内(本地)`,description:`https://github.com/moeru-ai/xsai-transformers`},"browser-local-audio-speech":{title:`浏览器内(本地)`,description:`https://github.com/moeru-ai/xsai-transformers`},"alibaba-cloud-model-studio":{description:`bailian.console.aliyun.com`,title:`阿里百炼`},anthropic:{description:`anthropic.com`,title:`Anthropic | Claude`,helpinfo:{title:`开始之前`,description:{part1:`虽然 Anthropic 最近宣布他们正在提供对 OpenAI SDK 兼容性的 Beta 版支持`,part2:`(您可以在此处阅读更多信息)`,part3:`但由于实现细节附带`,part4:`与 OpenAI SDK 不一致,目前无法在浏览器中使用此提供程序。`,part5:`如果您确实需要使用此提供程序,则需要一个专用的代理后端,例如在`,part6:`上运行的Serverless Function,或者一些绕过 CORS 的服务,以绕过 CORS 限制。`}}},"cloudflare-workers-ai":{description:`Cloudflare.com`,fields:{field:{"account-id":{description:`Cloudflare 帐户 ID`,label:`Cloudflare Account ID`,placeholder:`请输入 Cloudflare Account ID`},"api-key":{placeholder:`请输入 Cloudflare Workers AI 的 API Key`}}},title:`Workers AI`},common:{fields:{field:{pitch:{description:`调节合成语音的音高(比如更尖锐或者更粗旷)`,label:`音高`},speed:{description:`调节说话的语速`,label:`语速`},volume:{description:`调节语音的响度`,label:`响度`}}}},deepseek:{description:`DeepSeek.com`,title:`深度求索 DeepSeek`},elevenlabs:{description:`Elevenlabs.io`,fields:{field:{"simularity-boost":{description:`声音相似性与依从性`,label:`相似度修正`},"speaker-boost":{description:`增强说话者的相似性`,label:`扬声器增强`},speed:{description:`语音生成速度`,label:`语速`},stability:{description:`语音稳定性和随机性`,label:`稳定性`},style:{description:`夸张的语音风格`,label:`风格`}}},playground:{buttons:{button:{"test-voice":{generating:`生成中...`,label:`测试声音`}}},fields:{field:{input:{placeholder:`输入用于测试发音的文本`},language:{description:`选择语音语言`,label:`语言`},voice:{description:`选择首选语音`,label:`声线`}}},title:`实验平台`,validation:{"error-missing-api-key":`需要填写 API Key 才能用哦!`}},title:`ElevenLabs (11labs)`},fireworks:{description:`Fireworks.ai`,title:`Fireworks.ai`},"microsoft-speech":{description:`speech.microsoft.com`,fields:{field:{region:{description:`服务 Endpoint 地区(比如亚太 eastasia 区域)`,label:`Endpoint 地区`}}},title:`Microsoft / Azure 语音服务`},mistral:{description:`mistral.ai`,title:`Mistral`},moonshot:{description:`Moonshot.ai`,title:`月之暗面`},novita:{description:`novita.ai`,title:`Novita`},ollama:{description:`ollama.ai`,title:`Ollama`},openai:{description:`OpenAi.com`,title:`OpenAI`},openrouter:{description:`OpenRouter.ai`,title:`OpenRouter`},perplexity:{description:`perplexity.ai`,title:`Perplexity`},player2:{description:`player2.game`,title:`Player2`},together:{description:`together.ai`,title:`Together.ai`},"google-generative-ai":{description:`gemini.google.com`,title:`Google Gemini`},featherless:{description:`featherless.ai`,title:`Featherless AI`},vllm:{description:`vllm.ai`,title:`vLLM`},volcengine:{description:`volcengine.com`,fields:{field:{appId:{description:`可在控制台获取的 App ID`,label:`App ID`}}},title:`火山引擎`},xai:{description:`X.AI`,title:`xAI`}},title:`服务来源`},scene:{description:`配置角色所在环境`,title:`场景`},themes:{"color-scheme":{description:`更改舞台的配色方案`,title:`配色方案`},developer:{description:`为开发者提供的选项`,title:`开发者`},general:{description:`深色主题、语言等选项`,title:`通用`},description:`自定义你的舞台外观!`,sections:{section:{"custom-color":{fields:{field:{"primary-color":{label:`强调色`,"rgb-on":{title:`RGB ON!`}}}},title:`配色`},developer:{title:`开发者`},"theme-presets":{presets:[{colors:[`AIRI 绿`],description:`默认的绿色主题,由 AIRI 为您带来!`,title:`默认颜色`},{colors:[`灰褐色`,`米色`,`灰白色`,`浅灰褐色`,`象牙色`,`橄榄灰`,`沙色`,`暖灰色`],description:`受乔治·莫兰迪绘画启发的柔和、低调的色调`,title:`Morandi 颜色`},{colors:[`天蓝色`,`薄雾色`,`沙色`,`苔藓绿`,`睡莲色`,`小麦色`,`板岩蓝`,`鼠尾草色`],description:`受克劳德·莫奈作品启发的印象派调色板`,title:`莫奈颜色`},{colors:[`棕褐色`,`暖灰褐色`,`赭色`,`咖啡色`,`青铜色`,`金色`,`芥末色`,`琥珀色`],description:`传统日本色彩调色板`,title:`日本颜色`},{colors:[`北欧蓝`,`冰色`,`峡湾色`,`钢铁色`,`冰川色`,`板岩色`,`云色`,`石头色`],description:`北欧极简主义配色方案`,title:`北欧颜色`},{colors:[`霞光红`,`枣红`,`黄栌`,`竹青`,`乌梅紫`,`缃色`,`青冥`,`赭石`],description:`中国传统色彩,源自古代纺织品、瓷器和绘画`,title:`中国传统颜色`}],title:`预设`}}},title:`外观`}},sections:{section:{general:{title:`通用`}}},theme:{title:`主题`,description:`切换 AIRI 的基础主题,亮色模式或暗色模式。 -`},title:`设置`,voices:`声线`},settings_default=data$3,data$2={chat:{message:{"character-name":{airi:`AIRI`,"core-system":`核心系统`,you:`你`}},tabs:{chat:`聊天`,clothes:`换装`,custom:`自定义`}},message:`说点什么...`,"select-a-audio-input":`选择一个音频输入设备`,"select-a-model":`选择一个模型`,"select-a-voice":`选择一个声线`,viewers:{"debug-menu":{emotions:`表情`,"emotions-btn":{angry:`😠 生气`,awkward:`😳 尴尬`,happy:`😄 开心`,neutral:`🙂 日常`,question:`🤔 疑问`,sad:`😫 难过`,surprised:`🤯 惊喜`,think:`🤨 思考`},vrm:{camera:`摄像机`,model:{title:`模型`}}}},waiting:`等待中`,operations:{"load-models":`加载模型`,"load-models-status":{loading:`模型加载中`,ready:`已就绪`}}},stage_default=data$2,data$1={"allow-visible-on-all-workspaces":{title:`跨桌面可见性`,description:`允许窗口在所有虚拟桌面中可见,仅限 macOS。`},pages:{modules:{"mcp-server":{description:`连接与管理 MCP 服务器和工具`,title:`MCP 服务器`}},themes:{sections:{section:{"window-shortcuts":{title:`键盘快捷键`}}},"window-shortcuts":{description:`修改窗口快捷方式`,title:`窗口快捷方式`,"toggle-move":{label:`切换移动状态`},"toggle-resize":{label:`调整大小`},"toggle-ignore-mouse-event":{label:`忽略鼠标事件`},"press-keys":`请按下按键...`}}}},settings_default$1=data$1,data={operations:{"load-models":`加载推理模型`,"load-models-status":{loading:`加载中`,ready:`已就绪`}}},stage_default$1=data,tamagotchi_default={stage:stage_default$1,settings:settings_default$1},zh_Hans_default={base:base_default,settings:settings_default,stage:stage_default,tamagotchi:tamagotchi_default},locales_default={en:en_default,"zh-Hans":zh_Hans_default};const languageRemap={"zh-CN":`zh-Hans`,"zh-TW":`zh-Hans`,"zh-HK":`zh-Hans`,"zh-Hant":`zh-Hans`,"en-US":`en`,"en-GB":`en`,"en-AU":`en`,en:`en`};function getLocale(){let language=localStorage.getItem(`settings/language`),languages=Object.keys(locales_default);return languageRemap[language||`en`]!=null&&(language=languageRemap[language||`en`]),language&&languages.includes(language)?language:`en`}const i18n=createI18n({legacy:!1,locale:getLocale(),fallbackLocale:`en`,messages:locales_default});var import_nprogress=__toESM(require_nprogress());const pinia=createPinia(),routeRecords=setupLayouts(routes);let router;router=createRouter({routes:routeRecords,history:createWebHashHistory()}),router.beforeEach((to$1,from)=>{to$1.path!==from.path&&import_nprogress.default.start()}),router.afterEach(()=>{import_nprogress.default.done()}),router.isReady().then(async()=>{}).catch(()=>{}),createApp(App_default).use(MotionPlugin).use(autoAnimatePlugin).use(router).use(pinia).use(i18n).use(mo).mount(`#app`);export{AdditiveBlending,AlwaysStencilFunc,AnimationMixer,Audio$1 as Audio,AudioListener,AudioLoader,BackSide,Box2,Box3,BoxGeometry,BufferAttribute,BufferGeometry,Button_default,CatmullRomCurve3,ClampToEdgeWrapping,Collapsable_default,Color,ColorHueRange_default,Comment,CompressedTexture,CubeCamera,CubeReflectionMapping,CubeTextureLoader,CursorFloating_default,CylinderGeometry,DEFAULT_THEME_COLORS_HUE,DataTexture,DataTextureLoader,DataUtils,DepthTexture,DoubleSide,EMOTION_EmotionMotionName_value,EMOTION_VRMExpressionName_value,EdgesGeometry,Ee$1 as Ee,Emotion,EmotionNeutralMotionName,EmotionThinkMotionName,EquirectangularReflectionMapping,Euler,EventDispatcher,ExtrudeGeometry,FieldCheckbox_default,FieldInput_default,FieldKeyValues_default,FieldRange_default,FieldSelect_default,FieldValues_default,FileLoader,Float32BufferAttribute,FloatType,Fragment,FrontSide,Group,HalfFloatType,IconItem_default,IconStatusItem_default,InstancedBufferGeometry,InstancedInterleavedBuffer,InstancedMesh,InterleavedBuffer,InterleavedBufferAttribute,InterpolateDiscrete,InterpolateLinear,Ir,LevelMeter_default,Line,Line3,LineBasicMaterial,LinearFilter,LinearMipmapLinearFilter,LinearMipmapNearestFilter,Loader,MOUSE,Material,MathUtils,Matrix3,Matrix4,Mesh,MeshBasicMaterial,MeshDepthMaterial,MeshStandardMaterial,MirroredRepeatWrapping,Mn,NearestFilter,NearestMipmapLinearFilter,NearestMipmapNearestFilter,NoToneMapping,Object3D,OctahedronGeometry,Option_default,OrthographicCamera,PageHeader_default,Path,PerspectiveCamera,Plane,PlaneGeometry,PropertyBinding,ProviderAccountIdInput_default,ProviderAdvancedSettings_default,ProviderApiKeyInput_default,ProviderBaseUrlInput_default,ProviderBasicSettings_default,ProviderSettingsContainer_default,ProviderSettingsLayout_default,Q$2 as Q,QuadraticBezierCurve3,Quaternion,REVISION,RGBAFormat,RadioCardManySelect_default,RadioCardSimple_default,RawShaderMaterial,Ray,Raycaster,RepeatWrapping,ReplaceStencilOp,RouterLink,RouterView,Scene,Screen_default,Section_default,Select_default,ShaderChunk,ShaderMaterial,Shape,ShapeGeometry,ShapePath,ShapeUtils,Skeleton_default,SkinnedMesh,SpeechPlayground_default,SpeechProviderSettings_default,Sphere,SphereGeometry,Spherical,TOUCH,Teleport,TestDummyMarker_default,Texture,TextureLoader,ThresholdMeter_default,TimeSeriesChart_default,TorusGeometry,Transition,TransitionVertical_default,Triangle,Uniform,UniformsLib,UniformsUtils,VRMUtils,Vector2,Vector3,Vector4,Vn,VoiceCardManySelect_default,WebGLCubeRenderTarget,WebGLRenderTarget,WebGLRenderer,WireframeGeometry,ZodFirstPartyTypeKind,__commonJSMin,__export,__plugin_vue_export_helper_default,__require,__toDynamicImportESM,__toESM,__vitePreload,arrow,breakpointsTailwind,camelize,check,clipFromVRMAnimation,cloneVNode,computePosition,computed,createBaseVNode,createBlock,createCommentVNode,createCoords,createElementBlock,createTextVNode,createVNode,customRef,defineComponent,defu,dn,effectScope,flip,floor,formatHex,generateSpeech,getCurrentInstance,getCurrentScope,guardReactiveProps,h,hide,inject,io,isReactive,isRef,lerp,limitShift,llmInferenceEndToken,loadVRMAnimation,loadVrm,markRaw,max,merge$2 as merge,mergeDefaults,mergeModels,mergeProps,min,missingDependenciesUrl,nextTick,normalizeClass,normalizeProps,normalizeStyle,offset,onBeforeMount,onBeforeUnmount,onBeforeUpdate,onMounted,onScopeDispose,onUnmounted,onUpdated,openBlock,pe$1 as pe,provide,randFloat,randomSaccadeInterval,reactive,readonly,rectToClientRect,ref,refDebounced,refThrottled,render,renderList,renderSlot,resolveComponent,resolveDirective,resolveDynamicComponent,round,shallowReactive,shallowReadonly,shallowRef,shift,size,sleep$1 as sleep,so,storeToRefs,streamText,toDisplayString,toHandlerKey,toHandlers,toRaw,toRef,toRefs,toValue$1 as toValue,triggerRef,tryImport,unref,until,useAiriCardStore,useAttrs,useAudioContext,useBlink,useBreakpoints,useChatStore,useClipboard,useConsciousnessStore,useDark,useDebounceFn,useDelayMessageQueue,useDevicesList,useElementBounding,useEmotionsMessageQueue,useFileDialog,useI18n,useId$1 as useId,useIdleEyeSaccades,useLocalStorage,useMarkdown,useMessageContentQueue,useMicVAD,useModel,useMouse,useObjectUrl,usePointer,useProvidersStore,useQueue,useResizeObserver,useRoute,useRouter,useScreenSafeArea,useScroll,useSettings,useSlots,useSpeakingStore,useSpeechStore,useUserMedia,useVRMEmote,useWhisper,vModelCheckbox,vModelRadio,vModelSelect,vModelText,vShow,watch,watchDebounced,watchEffect,watchPostEffect,watchSyncEffect,withAsyncContext,withCtx,withDirectives,withKeys,withModifiers}; \ No newline at end of file +`},title:`设置`,voices:`声线`},settings_default=data$3,data$2={chat:{message:{"character-name":{airi:`AIRI`,"core-system":`核心系统`,you:`你`}},tabs:{chat:`聊天`,clothes:`换装`,custom:`自定义`}},message:`说点什么...`,"select-a-audio-input":`选择一个音频输入设备`,"select-a-model":`选择一个模型`,"select-a-voice":`选择一个声线`,viewers:{"debug-menu":{emotions:`表情`,"emotions-btn":{angry:`😠 生气`,awkward:`😳 尴尬`,happy:`😄 开心`,neutral:`🙂 日常`,question:`🤔 疑问`,sad:`😫 难过`,surprised:`🤯 惊喜`,think:`🤨 思考`},vrm:{camera:`摄像机`,model:{title:`模型`}}}},waiting:`等待中`,operations:{"load-models":`加载模型`,"load-models-status":{loading:`模型加载中`,ready:`已就绪`}}},stage_default=data$2,data$1={"allow-visible-on-all-workspaces":{title:`跨桌面可见性`,description:`允许窗口在所有虚拟桌面中可见,仅限 macOS。`},pages:{modules:{"mcp-server":{description:`连接与管理 MCP 服务器和工具`,title:`MCP 服务器`}},themes:{sections:{section:{"window-shortcuts":{title:`键盘快捷键`}}},"window-shortcuts":{description:`修改窗口快捷方式`,title:`窗口快捷方式`,"toggle-move":{label:`切换移动状态`},"toggle-resize":{label:`调整大小`},"toggle-ignore-mouse-event":{label:`忽略鼠标事件`},"press-keys":`请按下按键...`}}}},settings_default$1=data$1,data={operations:{"load-models":`加载推理模型`,"load-models-status":{loading:`加载中`,ready:`已就绪`}}},stage_default$1=data,tamagotchi_default={stage:stage_default$1,settings:settings_default$1},zh_Hans_default={base:base_default,settings:settings_default,stage:stage_default,tamagotchi:tamagotchi_default},locales_default={en:en_default,"zh-Hans":zh_Hans_default};const languageRemap={"zh-CN":`zh-Hans`,"zh-TW":`zh-Hans`,"zh-HK":`zh-Hans`,"zh-Hant":`zh-Hans`,"en-US":`en`,"en-GB":`en`,"en-AU":`en`,en:`en`};function getLocale(){let language=localStorage.getItem(`settings/language`),languages=Object.keys(locales_default);return languageRemap[language||`en`]!=null&&(language=languageRemap[language||`en`]),language&&languages.includes(language)?language:`en`}const i18n=createI18n({legacy:!1,locale:getLocale(),fallbackLocale:`en`,messages:locales_default});var import_nprogress=__toESM(require_nprogress());const pinia=createPinia(),routeRecords=setupLayouts(routes);let router;router=createRouter({routes:routeRecords,history:createWebHashHistory()}),router.beforeEach((to$1,from)=>{to$1.path!==from.path&&import_nprogress.default.start()}),router.afterEach(()=>{import_nprogress.default.done()}),router.isReady().then(async()=>{}).catch(()=>{}),createApp(App_default).use(MotionPlugin).use(autoAnimatePlugin).use(router).use(pinia).use(i18n).use(mo).mount(`#app`);export{IconItem_default as $,useMessageContentQueue as A,useEmotionsMessageQueue as B,useQueue as C,useMicVAD as D,useMarkdown as E,sleep$1 as F,merge$2 as G,useAudioContext as H,useSpeakingStore as I,generateSpeech as J,SpeechPlayground_default as K,ProviderSettingsLayout_default as L,ProviderSettingsContainer_default as M,ProviderBasicSettings_default as N,ProviderBaseUrlInput_default as O,ProviderApiKeyInput_default as P,useI18n as Q,ProviderAdvancedSettings_default as R,ProviderAccountIdInput_default as S,CursorFloating_default as T,Skeleton_default as U,Screen_default as V,Button_default as W,VoiceCardManySelect_default as X,RadioCardSimple_default as Y,RadioCardManySelect_default as Z,IconStatusItem_default as _,watchDebounced as a$,Section_default as a1,Collapsable_default as a2,Select_default as a3,Option_default as a4,ColorHueRange_default as a5,FieldValues_default as a6,FieldSelect_default as a7,FieldRange_default as a8,FieldKeyValues_default as a9,ThresholdMeter_default as aA,TestDummyMarker_default as aB,__plugin_vue_export_helper_default as aC,LevelMeter_default as aD,useRouter as aE,useRoute as aF,RouterLink as aG,RouterView as aH,__vitePreload as aI,storeToRefs as aJ,breakpointsTailwind as aK,useMouse as aL,useScroll as aM,usePointer as aN,useDevicesList as aO,useClipboard as aP,useElementBounding as aQ,useBreakpoints as aR,useDark as aS,useScreenSafeArea as aT,useFileDialog as aU,useLocalStorage as aV,useObjectUrl as aW,useResizeObserver as aX,useUserMedia as aY,until as aZ,refThrottled as a_,FieldInput_default as aa,FieldCheckbox_default as ab,computePosition as ac,limitShift as ad,size as ae,hide as af,offset as ag,arrow as ah,shift as ai,flip as aj,min as ak,max as al,round as am,floor as an,createCoords as ao,rectToClientRect as ap,TransitionVertical_default as aq,PageHeader_default as ar,TimeSeriesChart_default as as,llmInferenceEndToken as at,Emotion as au,EmotionThinkMotionName as av,EmotionNeutralMotionName as aw,EMOTION_EmotionMotionName_value as ax,EMOTION_VRMExpressionName_value as ay,formatHex as az,SpeechProviderSettings_default as b,InterpolateLinear as b$,useDebounceFn as b0,refDebounced as b1,defu as b2,so as b3,io as b4,dn as b5,Mn as b6,Q$2 as b7,Vn as b8,Ee$1 as b9,Scene as bA,Mesh as bB,DataTexture as bC,InterleavedBufferAttribute as bD,InstancedInterleavedBuffer as bE,BoxGeometry as bF,MeshBasicMaterial as bG,CatmullRomCurve3 as bH,QuadraticBezierCurve3 as bI,FloatType as bJ,InstancedBufferGeometry as bK,DataTextureLoader as bL,FrontSide as bM,ReplaceStencilOp as bN,HalfFloatType as bO,CubeReflectionMapping as bP,Matrix4 as bQ,ShapePath as bR,BackSide as bS,Spherical as bT,InterpolateDiscrete as bU,InterleavedBuffer as bV,Material as bW,Vector3 as bX,Euler as bY,DataUtils as bZ,DoubleSide as b_,Ir as ba,pe$1 as bb,ShaderChunk as bc,UniformsLib as bd,WebGLRenderer as be,WebGLCubeRenderTarget as bf,RawShaderMaterial as bg,Loader as bh,DepthTexture as bi,InstancedMesh as bj,Shape as bk,EdgesGeometry as bl,CylinderGeometry as bm,Vector4 as bn,ShapeGeometry as bo,Texture as bp,MeshDepthMaterial as bq,MeshStandardMaterial as br,BufferGeometry as bs,MathUtils as bt,Raycaster as bu,Line3 as bv,AnimationMixer as bw,AudioLoader as bx,CubeCamera as by,Vector2 as bz,DEFAULT_THEME_COLORS_HUE as c,withModifiers as c$,Ray as c0,TorusGeometry as c1,EquirectangularReflectionMapping as c2,OrthographicCamera as c3,LineBasicMaterial as c4,AdditiveBlending as c5,RepeatWrapping as c6,Path as c7,ClampToEdgeWrapping as c8,OctahedronGeometry as c9,AlwaysStencilFunc as cA,Line as cB,LinearFilter as cC,REVISION as cD,SkinnedMesh as cE,UniformsUtils as cF,Audio$1 as cG,LinearMipmapNearestFilter as cH,Sphere as cI,NoToneMapping as cJ,Box2 as cK,MOUSE as cL,SphereGeometry as cM,Plane as cN,TOUCH as cO,Triangle as cP,Quaternion as cQ,LinearMipmapLinearFilter as cR,ShaderMaterial as cS,vModelRadio as cT,withKeys as cU,vModelCheckbox as cV,vShow as cW,vModelSelect as cX,Transition as cY,vModelText as cZ,render as c_,WireframeGeometry as ca,Box3 as cb,WebGLRenderTarget as cc,RGBAFormat as cd,Uniform as ce,MirroredRepeatWrapping as cf,BufferAttribute as cg,CompressedTexture as ch,AudioListener as ci,ExtrudeGeometry as cj,NearestFilter as ck,FileLoader as cl,Float32BufferAttribute as cm,NearestMipmapNearestFilter as cn,ShapeUtils as co,Color as cp,Object3D as cq,Group as cr,NearestMipmapLinearFilter as cs,Matrix3 as ct,TextureLoader as cu,CubeTextureLoader as cv,PerspectiveCamera as cw,PropertyBinding as cx,PlaneGeometry as cy,EventDispatcher as cz,useSettings as d,isRef as d$,toHandlers as d0,provide as d1,mergeDefaults as d2,onMounted as d3,onBeforeMount as d4,onBeforeUpdate as d5,nextTick as d6,defineComponent as d7,onUpdated as d8,createCommentVNode as d9,mergeProps as dA,createVNode as dB,useAttrs as dC,resolveDynamicComponent as dD,h as dE,watch as dF,resolveDirective as dG,openBlock as dH,createTextVNode as dI,toRef as dJ,ref as dK,shallowRef as dL,isReactive as dM,customRef as dN,effectScope as dO,toRefs as dP,triggerRef as dQ,getCurrentScope as dR,toRaw as dS,reactive as dT,onScopeDispose as dU,unref as dV,shallowReactive as dW,toValue$1 as dX,markRaw as dY,readonly as dZ,shallowReadonly as d_,withCtx as da,createElementBlock as db,onBeforeUnmount as dc,inject as dd,guardReactiveProps as de,onUnmounted as df,mergeModels as dg,useId$1 as dh,cloneVNode as di,createBaseVNode as dj,Teleport as dk,renderList as dl,watchEffect as dm,createBlock as dn,useModel as do,renderSlot as dp,watchPostEffect as dq,withDirectives as dr,withAsyncContext as ds,resolveComponent as dt,Fragment as du,computed as dv,getCurrentInstance as dw,Comment as dx,watchSyncEffect as dy,useSlots as dz,useChatStore as e,toHandlerKey as e0,toDisplayString as e1,normalizeClass as e2,normalizeStyle as e3,normalizeProps as e4,camelize as e5,__commonJSMin as e6,__export as e7,__toDynamicImportESM as e8,__require as e9,__toESM as ea,useAiriCardStore as f,useSpeechStore as g,useConsciousnessStore as h,useProvidersStore as i,check as j,ZodFirstPartyTypeKind as k,missingDependenciesUrl as l,tryImport as m,streamText as n,useWhisper as o,useVRMEmote as p,loadVrm as q,useBlink as r,useIdleEyeSaccades as s,loadVRMAnimation as t,clipFromVRMAnimation as u,VRMUtils as v,randomSaccadeInterval as w,randFloat as x,lerp as y,useDelayMessageQueue as z}; \ No newline at end of file diff --git a/assets/index-ChU1TNQB.css b/assets/index-ChU1TNQB.css deleted file mode 100644 index 8c4a4600ce91a98bc16d65a6cd14c4670d3377f7..0000000000000000000000000000000000000000 --- a/assets/index-ChU1TNQB.css +++ /dev/null @@ -1 +0,0 @@ -.volumed[data-v-d8ce56aa]{transform-style:preserve-3d;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content}.test-dummy-flat[data-v-28f8c660]{display:inline-block;position:relative}.test-dummy-flat .marker[data-v-28f8c660]{background:conic-gradient(#ffeb3b 0deg 90deg,#000 90deg 180deg,#ffeb3b 180deg 270deg,#000 270deg 360deg);border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0;box-shadow:0 4px 12px #b9b9b933}.dark .test-dummy-flat .marker[data-v-28f8c660]{box-shadow:0 4px 12px #0003}.fade-enter-active[data-v-6b4f300d],.fade-leave-active[data-v-6b4f300d]{transition:opacity .2s}.fade-enter-from[data-v-6b4f300d],.fade-leave-to[data-v-6b4f300d]{opacity:0}.fade-enter-to[data-v-6b4f300d],.fade-leave-from[data-v-6b4f300d]{opacity:1}.form_input-range[data-v-8956898c]{--height:2em;min-height:var(--height);-webkit-appearance:none;-moz-appearance:none;appearance:none;--thumb-width:4px;--thumb-height:var(--height);--thumb-box-shadow:0 0 0px #e6e6e6;--thumb-border:none;--thumb-border-radius:999px;--thumb-background:oklch(80% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-hover:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-active:oklch(70% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--track-height:calc(var(--height) - var(--track-value-padding)*2);--track-box-shadow:none;--track-border:solid 2px #eee;--track-border-radius:6px;--track-background:#eee;--track-background-hover:#eee;--track-background-active:#eee;--track-value-background:#fff;--track-value-background-hover:#fff;--track-value-background-active:#fff;--track-value-padding:2px;background:0 0;border-radius:4px;transition:background-color .2s}.dark .form_input-range[data-v-8956898c]{--thumb-background:oklch(70% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-hover:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--thumb-background-active:oklch(80% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0));--track-border:solid 2px #2c2c2c;--track-background:#2c2c2c;--track-background-hover:#2c2c2c;--track-background-active:#2c2c2c;--track-value-background:#a4a4a4;--track-value-background-hover:#a4a4a4;--track-value-background-active:#a4a4a4}.form_input-range.slider-progress[data-v-8956898c]{--range:calc(var(--max) - var(--min));--ratio:calc((var(--value) - var(--min))/var(--range));--sx:calc(.5*0em + var(--ratio)*(100% - 0em))}.form_input-range[data-v-8956898c]:focus{outline:none}.form_input-range[data-v-8956898c]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--thumb-width);height:var(--thumb-height);border-radius:var(--thumb-border-radius);background:var(--thumb-background);border:var(--thumb-border);box-shadow:var(--thumb-box-shadow);margin-top:calc(var(--track-height)*.5 - var(--thumb-height)*.5 - 2px);margin-left:calc(0 - var(--track-value-padding));cursor:col-resize;transition:background .2s ease-in-out,box-shadow .2s ease-in-out,border-color .2s ease-in-out,transform .2s ease-in-out}.form_input-range[data-v-8956898c]::-webkit-slider-runnable-track{height:var(--track-height);border:var(--track-border);border-radius:var(--track-border-radius);background:var(--track-background);box-shadow:var(--track-box-shadow);cursor:col-resize;transition:box-shadow .2s ease-in-out,border-color .2s ease-in-out;position:relative}.form_input-range[data-v-8956898c]::-webkit-slider-thumb:hover{background:var(--thumb-background-hover)}.form_input-range[data-v-8956898c]:hover::-webkit-slider-runnable-track{background:var(--track-background-hover)}.form_input-range[data-v-8956898c]::-webkit-slider-thumb:active{background:var(--thumb-background-active)}.form_input-range[data-v-8956898c]:active::-webkit-slider-runnable-track{background:var(--track-background-active)}.form_input-range.slider-progress[data-v-8956898c]::-webkit-slider-runnable-track{margin-right:calc(0 - var(--track-value-padding));background:linear-gradient(var(--track-value-background),var(--track-value-background))0/var(--sx)100% no-repeat,var(--track-background)}.form_input-range.slider-progress[data-v-8956898c]:hover::-webkit-slider-runnable-track{background:linear-gradient(var(--track-value-background-hover),var(--track-value-background-hover))0/var(--sx)100% no-repeat,var(--track-background-hover)}.form_input-range.slider-progress[data-v-8956898c]:active::-webkit-slider-runnable-track{background:linear-gradient(var(--track-value-background-active),var(--track-value-background-active))0/var(--sx)100% no-repeat,var(--track-background-active)}.form_input-range[data-v-8956898c]::-moz-range-thumb{width:var(--thumb-width);height:var(--thumb-height);border-radius:var(--thumb-border-radius);background:var(--thumb-background);box-shadow:var(--thumb-box-shadow);cursor:col-resize;margin-left:calc(0 - var(--track-value-padding));border:none}.form_input-range[data-v-8956898c]::-moz-range-track{height:var(--track-height);border:var(--track-border);border-radius:var(--track-border-radius);background:var(--track-background);box-shadow:var(--track-box-shadow);cursor:col-resize;width:calc(100% - var(--track-value-padding)*2)}.form_input-range[data-v-8956898c]::-moz-range-thumb:hover{background:var(--thumb-background-hover)}.form_input-range[data-v-8956898c]:hover::-moz-range-track{background:var(--track-background-hover)}.form_input-range[data-v-8956898c]::-moz-range-thumb:active{background:var(--thumb-background-active)}.form_input-range[data-v-8956898c]:active::-moz-range-track{background:var(--track-background-active)}.form_input-range.slider-progress[data-v-8956898c]::-moz-range-track{background:linear-gradient(var(--track-value-background),var(--track-value-background))0/var(--sx)100% no-repeat,var(--track-background)}.form_input-range.slider-progress[data-v-8956898c]:hover::-moz-range-track{background:linear-gradient(var(--track-value-background-hover),var(--track-value-background-hover))0/var(--sx)100% no-repeat,var(--track-background-hover)}.form_input-range.slider-progress[data-v-8956898c]:active::-moz-range-track{background:linear-gradient(var(--track-value-background-active),var(--track-value-background-active))0/var(--sx)100% no-repeat,var(--track-background-active)}.form_input-range[data-v-8956898c]::-ms-fill-upper{background:0 0;border-color:#0000}.form_input-range[data-v-8956898c]::-ms-fill-lower{background:0 0;border-color:#0000}.form_input-range[data-v-8956898c]::-ms-thumb{width:var(--thumb-width);height:var(--thumb-height);border-radius:var(--thumb-border-radius);background:var(--thumb-background);border:var(--thumb-border);box-shadow:var(--thumb-box-shadow);margin-top:0;margin-left:calc(0 - var(--track-value-padding));box-sizing:border-box;cursor:col-resize}.form_input-range[data-v-8956898c]::-ms-track{height:var(--track-height);border-radius:var(--track-border-radius);background:var(--track-background);border:var(--track-border);box-shadow:var(--track-box-shadow);box-sizing:border-box;cursor:col-resize}.form_input-range[data-v-8956898c]::-ms-thumb:hover{background:var(--thumb-background-hover)}.form_input-range[data-v-8956898c]:hover::-ms-track{background:var(--track-background-hover)}.form_input-range[data-v-8956898c]::-ms-thumb:active{background:var(--thumb-background-active)}.form_input-range[data-v-8956898c]:active::-ms-track{background:var(--track-background-active)}.form_input-range.slider-progress[data-v-8956898c]::-ms-fill-lower{height:var(--track-height);border-radius:var(--track-border-radius)0 0 var(--track-border-radius);background:var(--track-value-background);margin:0;margin-left:calc(var(--track-value-padding));margin-right:calc(0 - var(--track-value-padding));border:none;border-right-width:0}.form_input-range.slider-progress[data-v-8956898c]:hover::-ms-fill-lower{background:var(--track-value-background-hover)}.form_input-range.slider-progress[data-v-8956898c]:active::-ms-fill-lower{background:var(--track-value-background-active)}.color-hue-range[data-v-49fc55e8]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(90deg,#ffb2cb,#ffba76,#bedf0d,#00efd2,#90d7ff,#d8bfff,#ffb2cb);background:linear-gradient(90deg,color(display-p3 1.1215 .595378 .781922),color(display-p3 1.09855 .68498 .251398),color(display-p3 .770516 .871468 .284878),color(display-p3 .170102 .947674 .829549),color(display-p3 .372107 .846211 1.22764),color(display-p3 .856305 .680188 1.20214),color(display-p3 1.1215 .595378 .781922));background:linear-gradient(90deg,lab(80.0841% 65.3995 .860357),lab(81.7178% 42.879 86.4545),lab(84.2289% -27.648 80.2367),lab(85.1086% -71.1664 -.472653),lab(82.2823% -19.2763 -62.1951),lab(79.7314% 41.9269 -62.2558),lab(80.0841% 65.3994 .860381));border-radius:.5rem;height:2.5rem}.color-hue-range[data-v-49fc55e8]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(115 115 115/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity));background-color:rgb(38 38 38/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dark .color-hue-range[data-v-49fc55e8]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(255 255 255/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity));background-color:rgb(212 212 212/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.color-hue-range[data-v-49fc55e8]::-moz-range-thumb{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(115 115 115/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity));background-color:rgb(38 38 38/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dark .color-hue-range[data-v-49fc55e8]::-moz-range-thumb{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;--un-border-opacity:1;border-width:2px;border-color:rgb(255 255 255/var(--un-border-opacity));--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity));background-color:rgb(212 212 212/var(--un-bg-opacity));--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);width:.25rem;height:3rem;box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow);border-radius:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.resize-observer[data-v-b329ee4c]{z-index:-1;pointer-events:none;opacity:0;background-color:#0000;border:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:hidden}.resize-observer[data-v-b329ee4c] object{pointer-events:none;z-index:-1;width:100%;height:100%;display:block;position:absolute;top:0;left:0;overflow:hidden}.v-popper__popper{z-index:10000;outline:none;top:0;left:0}.v-popper__arrow-container{display:none}.v-popper__inner{border:none!important}.menu-icon-item[data-v-d08788bb]{position:relative;overflow:hidden}.menu-icon-item[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:-1;opacity:0;width:25%;height:100%;transition:all .4s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(120deg,#fff 30%,#0000 50%);mask-image:linear-gradient(120deg,#fff 30%,#0000 50%)}.dark .menu-icon-item[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.menu-icon-item[data-v-d08788bb]:hover:before,.menu-icon-item._hover[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .menu-icon-item[data-v-d08788bb]:hover:before,.dark .menu-icon-item._hover[data-v-d08788bb]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.menu-icon-item[data-v-d08788bb]:after{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.6;z-index:-2;content:"";background-size:10px 10px;width:100%;height:100%;transition:all .4s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(165deg,#fff 30%,#0000 50%);mask-image:linear-gradient(165deg,#fff 30%,#0000 50%)}.menu-icon-item[data-v-d08788bb]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.dark .menu-icon-item[data-v-d08788bb]:after{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.25}.dark .menu-icon-item[data-v-d08788bb]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.menu-icon-item-icon[data-v-d08788bb]{opacity:.5}.menu-icon-item:hover .menu-icon-item-title[data-v-d08788bb],.menu-icon-item._hover .menu-icon-item-title[data-v-d08788bb]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.menu-icon-item:hover .menu-icon-item-description[data-v-d08788bb],.menu-icon-item._hover .menu-icon-item-description[data-v-d08788bb]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.menu-icon-item:hover .menu-icon-item-icon[data-v-d08788bb],.menu-icon-item._hover .menu-icon-item-icon[data-v-d08788bb]{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));scale:1.2}.dark .menu-icon-item:hover .menu-icon-item-title[data-v-d08788bb],.dark .menu-icon-item._hover .menu-icon-item-title[data-v-d08788bb]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .menu-icon-item:hover .menu-icon-item-description[data-v-d08788bb],.dark .menu-icon-item._hover .menu-icon-item-description[data-v-d08788bb]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.dark .menu-icon-item:hover .menu-icon-item-icon[data-v-d08788bb],.dark .menu-icon-item._hover .menu-icon-item-icon[data-v-d08788bb]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.menu-icon-status-item[data-v-93a9757f]{position:relative;overflow:hidden}.menu-icon-status-item[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .4s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .menu-icon-status-item[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.menu-icon-status-item[data-v-93a9757f]:hover:before,.menu-icon-status-item._hover[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:50%}.dark .menu-icon-status-item[data-v-93a9757f]:hover:before,.dark .menu-icon-status-item._hover[data-v-93a9757f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.menu-icon-status-item-link[data-v-93a9757f]:after{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.8;z-index:-2;content:"";background-size:10px 10px;width:100%;height:100%;transition:all .4s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(165deg,#fff 30%,#0000 50%);mask-image:linear-gradient(165deg,#fff 30%,#0000 50%)}.menu-icon-status-item-link[data-v-93a9757f]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.dark .menu-icon-status-item-link[data-v-93a9757f]:after{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.4}.dark .menu-icon-status-item-link[data-v-93a9757f]:after:hover{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.menu-icon-status-item-icon-color[data-v-93a9757f]{opacity:.5}.menu-icon-status-item:hover .menu-icon-status-item-title[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-title[data-v-93a9757f]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.menu-icon-status-item:hover .menu-icon-status-item-description[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-description[data-v-93a9757f]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.menu-icon-status-item:hover .menu-icon-status-item-icon[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-icon[data-v-93a9757f],.menu-icon-status-item:hover .menu-icon-status-item-icon-color[data-v-93a9757f],.menu-icon-status-item._hover .menu-icon-status-item-icon-color[data-v-93a9757f]{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));scale:1.2}.dark .menu-icon-status-item:hover .menu-icon-status-item-title[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-title[data-v-93a9757f]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .menu-icon-status-item:hover .menu-icon-status-item-description[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-description[data-v-93a9757f]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity));opacity:.8}.dark .menu-icon-status-item:hover .menu-icon-status-item-icon[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-icon[data-v-93a9757f],.dark .menu-icon-status-item:hover .menu-icon-status-item-icon-color[data-v-93a9757f],.dark .menu-icon-status-item._hover .menu-icon-status-item-icon-color[data-v-93a9757f]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.form_radio-card-detail[data-v-fb6236db]{position:relative;overflow:hidden}.form_radio-card-detail[data-v-fb6236db]:before{pointer-events:none;--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .form_radio-card-detail[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.form_radio-card-detail[data-v-fb6236db]:hover:before,.form_radio-card-detail._hover[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .form_radio-card-detail[data-v-fb6236db]:hover:before,.dark .form_radio-card-detail._hover[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.form_radio-card-detail-active[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:.5;width:85%}.dark .form_radio-card-detail-active[data-v-fb6236db]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}input[type=search][data-v-98ce709a]::-webkit-search-cancel-button{display:none}.form_radio-card-simple[data-v-880ce73f]{position:relative;overflow:hidden}.form_radio-card-simple[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .form_radio-card-simple[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.form_radio-card-simple[data-v-880ce73f]:hover:before,.form_radio-card-simple._hover[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .form_radio-card-simple[data-v-880ce73f]:hover:before,.dark .form_radio-card-simple._hover[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.form_radio-card-simple-active[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:.5;width:85%}.dark .form_radio-card-simple-active[data-v-880ce73f]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.form_voice-card[data-v-fd4023c4]{flex-direction:column;display:flex;position:relative;overflow:hidden}.form_voice-card[data-v-fd4023c4]:before{pointer-events:none;--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .form_voice-card[data-v-fd4023c4]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.form_voice-card[data-v-fd4023c4]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .form_voice-card[data-v-fd4023c4]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}input[type=search][data-v-55cec23c]::-webkit-search-cancel-button{display:none}.voice-card[data-v-55cec23c]{flex-direction:column;display:flex;position:relative;overflow:hidden}.voice-card[data-v-55cec23c]:before{pointer-events:none;--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to);--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));content:"";z-index:0;opacity:0;width:25%;height:100%;transition:all .35s ease-in-out;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(120deg,#fff 100%);mask-image:linear-gradient(120deg,#fff 100%)}.dark .voice-card[data-v-55cec23c]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.voice-card[data-v-55cec23c]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%;--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));opacity:1;width:85%}.dark .voice-card[data-v-55cec23c]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to);--un-gradient-via-position:50%}.skeleton[data-v-fa4a54cc]{transition:all .2s ease-in-out;position:relative}.skeleton-pulse[data-v-fa4a54cc]{animation:2s ease-in-out .5s infinite skeleton-pulse-fa4a54cc}@keyframes skeleton-pulse-fa4a54cc{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.skeleton-wave[data-v-fa4a54cc]:after{content:"";border-radius:inherit;background:linear-gradient(90deg,#0000,#fff,#0000);animation:2s ease-in-out infinite skeleton-wave-fa4a54cc;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}.dark .skeleton-wave[data-v-fa4a54cc]:after{background:linear-gradient(90deg,#0000,#ffffff1a,#0000)}@keyframes skeleton-wave-fa4a54cc{0%{opacity:0;transform:translate(-100%)}60%{opacity:1;transform:translate(100%)}to{opacity:0;transform:translate(100%)}}.card-hover-effect[data-v-24a7a9d5]{transform-style:preserve-3d;transform-origin:50%;will-change:transform;transition:transform .3s cubic-bezier(.23,1,.32,1)}.card-hover-effect[data-v-24a7a9d5]:before,.card-hover-effect[data-v-24a7a9d5]:after{content:"";pointer-events:none;background-repeat:no-repeat;transition:all .33s;position:absolute;top:0;bottom:0;left:0;right:0}.card-hover-effect[data-v-24a7a9d5]:before{background-position:var(--card-position-x)var(--card-position-y);background-size:300% 300%;background-image:linear-gradient(115deg,transparent 0%,rgba(var(--color-primary-500),calc(.3*var(--effect-intensity)))25%,transparent 47%,transparent 53%,rgba(var(--color-primary-600),calc(.3*var(--effect-intensity)))75%,transparent 100%);opacity:calc(.5*var(--effect-intensity));filter:brightness(.5)contrast();z-index:1;mix-blend-mode:color-dodge}.card-hover-effect[data-v-24a7a9d5]:after{background-position:var(--sparkle-position-x)var(--sparkle-position-y);background-size:160%;background-image:linear-gradient(125deg,rgba(var(--color-primary-500),calc(.3*var(--effect-intensity)))15%,rgba(var(--color-primary-400),calc(.25*var(--effect-intensity)))30%,rgba(var(--color-primary-300),calc(.2*var(--effect-intensity)))40%,rgba(var(--color-primary-200),calc(.1*var(--effect-intensity)))60%,rgba(var(--color-primary-400),calc(.25*var(--effect-intensity)))70%,rgba(var(--color-primary-500),calc(.3*var(--effect-intensity)))85%);background-blend-mode:overlay;opacity:calc(var(--sparkle-opacity)*var(--effect-intensity));filter:brightness()contrast();z-index:2;mix-blend-mode:color-dodge}.card-hover-effect[data-v-24a7a9d5]:hover:before{opacity:calc(.88*var(--effect-intensity));filter:brightness(.66)contrast(1.33)}.card-hover-effect[data-v-24a7a9d5]:hover:after{opacity:var(--effect-intensity);filter:brightness(1.1)contrast(1.2)}.slide-next-enter-active[data-v-b0368141],.slide-next-leave-active[data-v-b0368141]{transition:transform .2s ease-in-out,opacity .2s ease-in-out}.slide-next-enter-from[data-v-b0368141]{opacity:0;transform:translate(100%)}.slide-next-enter-to[data-v-b0368141],.slide-next-leave-from[data-v-b0368141]{opacity:1;transform:translate(0)}.slide-next-leave-to[data-v-b0368141]{opacity:0;transform:translate(-100%)}.slide-prev-enter-active[data-v-b0368141],.slide-prev-leave-active[data-v-b0368141]{transition:transform .2s ease-in-out,opacity .2s ease-in-out}.slide-prev-enter-from[data-v-b0368141]{opacity:0;transform:translate(-100%)}.slide-prev-enter-to[data-v-b0368141],.slide-prev-leave-from[data-v-b0368141]{opacity:1;transform:translate(0)}.slide-prev-leave-to[data-v-b0368141]{opacity:0;transform:translate(100%)}[data-sonner-toast=""] [data-content=""]{width:100%}.stage-transition-3[data-v-17464329]{--delay:0s;--sharpness:40%;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.stage-transition-3[data-v-17464329]:before{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both arrowIn-17464329,1s cubic-bezier(.87,.05,.02,.97) forwards arrowOut-17464329;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-3[data-v-17464329]:after{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both arrowIn-17464329,1s cubic-bezier(.87,.05,.02,.97) forwards arrowOut-17464329;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-3[data-v-17464329]:before{background-color:var(--stage-transition-3-overlay-color-2);animation-delay:calc(0s + var(--delay,0s)),calc(1.4s + var(--delay,0s))}.stage-transition-3[data-v-17464329]:after{background-color:var(--stage-transition-3-overlay-color-1);animation-delay:calc(.2s + var(--delay,0s)),calc(1.2s + var(--delay,0s))}@keyframes arrowIn-17464329{0%{clip-path:polygon(calc(var(--sharpness)*-1)0,calc(var(--sharpness)*-1)0,0 50%,calc(var(--sharpness)*-1)100%,calc(var(--sharpness)*-1)100%,0 50%)}to{clip-path:polygon(calc(var(--sharpness)*-1)0,100% 0,calc(100% + var(--sharpness))50%,100% 100%,calc(var(--sharpness)*-1)100%,0 50%)}}@keyframes arrowOut-17464329{0%{clip-path:polygon(calc(var(--sharpness)*-1)0,100% 0,calc(100% + var(--sharpness))50%,100% 100%,calc(var(--sharpness)*-1)100%,0 50%)}to{clip-path:polygon(100% 0,100% 0,calc(100% + var(--sharpness))50%,100% 100%,100% 100%,calc(100% + var(--sharpness))50%)}}.circle-expansion-transition[data-v-4624be9e]{pointer-events:none;width:150vmax;height:150vmax;position:fixed;top:calc(50% - 75vmax);left:calc(50% - 75vmax)}.circle-expansion-transition div[data-v-4624be9e]{border-radius:50%;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.circle-expansion-transition div[data-v-4624be9e]:first-child{background-color:var(--circle-expansion-color-1);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + 0s)forwards}.circle-expansion-transition div[data-v-4624be9e]:nth-child(2){background-color:var(--circle-expansion-color-2);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + .15s)forwards}.circle-expansion-transition div[data-v-4624be9e]:nth-child(3){background-color:var(--circle-expansion-color-3);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + .3s)forwards}.circle-expansion-transition div[data-v-4624be9e]:nth-child(4){background-color:var(--circle-expansion-color-4);animation:circleExpand-4624be9e var(--circle-expansion-duration)ease-in calc(var(--circle-expansion-delay) + .45s)forwards}@keyframes circleExpand-4624be9e{0%{transform:scale(0)}to{transform:scale(1)}}.fantasy-fall-transition[data-v-826171f5]{position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.fantasy-fall-up[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-bottom-left-radius:var(--fantasy-fall-radius-sm);border-bottom-right-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-up var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translateY(-100%)}.fantasy-fall-down[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-top-left-radius:var(--fantasy-fall-radius-sm);border-top-right-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-down var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translateY(100%)}.fantasy-fall-left[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-top-right-radius:var(--fantasy-fall-radius-sm);border-bottom-right-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-left var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translate(-100%)}.fantasy-fall-right[data-v-826171f5]:before{content:"";background-color:var(--fantasy-fall-color);border-top-left-radius:var(--fantasy-fall-radius-sm);border-bottom-left-radius:var(--fantasy-fall-radius-sm);width:100%;height:100%;animation:fantasy-fall-right var(--fantasy-fall-duration)ease-out var(--fantasy-fall-delay)forwards;display:block;position:absolute;top:0;left:0;transform:translate(100%)}@media (min-width:768px){.fantasy-fall-up[data-v-826171f5]:before{border-bottom-left-radius:var(--fantasy-fall-radius-md);border-bottom-right-radius:var(--fantasy-fall-radius-md)}.fantasy-fall-down[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-md);border-top-right-radius:var(--fantasy-fall-radius-md)}.fantasy-fall-left[data-v-826171f5]:before{border-top-right-radius:var(--fantasy-fall-radius-md);border-bottom-right-radius:var(--fantasy-fall-radius-md)}.fantasy-fall-right[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-md);border-bottom-left-radius:var(--fantasy-fall-radius-md)}}@media (min-width:1024px){.fantasy-fall-up[data-v-826171f5]:before{border-bottom-left-radius:var(--fantasy-fall-radius-lg);border-bottom-right-radius:var(--fantasy-fall-radius-lg)}.fantasy-fall-down[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-lg);border-top-right-radius:var(--fantasy-fall-radius-lg)}.fantasy-fall-left[data-v-826171f5]:before{border-top-right-radius:var(--fantasy-fall-radius-lg);border-bottom-right-radius:var(--fantasy-fall-radius-lg)}.fantasy-fall-right[data-v-826171f5]:before{border-top-left-radius:var(--fantasy-fall-radius-lg);border-bottom-left-radius:var(--fantasy-fall-radius-lg)}}@keyframes fantasy-fall-up{0%{transform:translateY(-100%)}50%{transform:translateY(0%)}to{border-bottom-right-radius:0%;border-bottom-left-radius:0%;transform:translateY(0%)}}@keyframes fantasy-fall-down{0%{transform:translateY(100%)}50%{transform:translateY(0%)}to{border-top-left-radius:0%;border-top-right-radius:0%;transform:translateY(0%)}}@keyframes fantasy-fall-left{0%{transform:translate(-100%)}50%{transform:translate(0%)}to{border-top-right-radius:0%;border-bottom-right-radius:0%;transform:translate(0%)}}@keyframes fantasy-fall-right{0%{transform:translate(100%)}50%{transform:translate(0%)}to{border-top-left-radius:0%;border-bottom-left-radius:0%;transform:translate(0%)}}.stage-transition-4[data-v-4221f976]{--delay:0s;grid-template-rows:repeat(5,1fr);display:grid;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.stage-transition-4__block[data-v-4221f976]{width:100%;height:100%;position:relative}.stage-transition-4__block[data-v-4221f976]:before{content:"";animation:.8s cubic-bezier(.87,.05,.02,.97) both slideIn-4221f976,.8s cubic-bezier(.87,.05,.02,.97) forwards slideOut-4221f976;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-4__block[data-v-4221f976]:after{content:"";animation:.8s cubic-bezier(.87,.05,.02,.97) both slideIn-4221f976,.8s cubic-bezier(.87,.05,.02,.97) forwards slideOut-4221f976;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-4__block[data-v-4221f976]:before{background-color:var(--stage-transition-4-overlay-color-2);animation-delay:calc(0s + var(--d,0s) + var(--delay,0s)),calc(1.6s + var(--d,0s) + var(--delay,0s))}.stage-transition-4__block[data-v-4221f976]:after{background-color:var(--stage-transition-4-overlay-color-1);animation-delay:calc(.3s + var(--d,0s) + var(--delay,0s)),calc(1.3s + var(--d,0s) + var(--delay,0s))}.stage-transition-4__block[data-v-4221f976]:first-child{--d:.1s}.stage-transition-4__block[data-v-4221f976]:nth-child(2){--d:.3s}.stage-transition-4__block[data-v-4221f976]:nth-child(3){--d:0s}.stage-transition-4__block[data-v-4221f976]:nth-child(4){--d:.4s}.stage-transition-4__block[data-v-4221f976]:nth-child(5){--d:.2s}@keyframes slideIn-4221f976{0%{transform:translate(-101%)}to{transform:translate(0)}}@keyframes slideOut-4221f976{0%{transform:translate(0)}to{transform:translate(101%)}}.stage-transition-1[data-v-81c0af14]{--delay:0s;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.stage-transition-1[data-v-81c0af14]:before{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both slideIn-81c0af14,1s cubic-bezier(.87,.05,.02,.97) forwards slideOut-81c0af14;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-1[data-v-81c0af14]:after{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both slideIn-81c0af14,1s cubic-bezier(.87,.05,.02,.97) forwards slideOut-81c0af14;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-1[data-v-81c0af14]:before{background-color:var(--stage-transition-1-overlay-color-2);animation-delay:calc(0s + var(--delay,0s)),calc(1.4s + var(--delay,0s))}.stage-transition-1[data-v-81c0af14]:after{background-color:var(--stage-transition-1-overlay-color-1);animation-delay:calc(.2s + var(--delay,0s)),calc(1.2s + var(--delay,0s))}@keyframes slideIn-81c0af14{0%{transform:translate(-101%)}to{transform:translate(0)}}@keyframes slideOut-81c0af14{0%{transform:translate(0)}to{transform:translate(101%)}}.stage-transition-2[data-v-9e8b66c8]{--delay:0s;--skew-x:100%;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.stage-transition-2[data-v-9e8b66c8]:before{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both maskIn-9e8b66c8,1s cubic-bezier(.87,.05,.02,.97) forwards maskOut-9e8b66c8;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-2[data-v-9e8b66c8]:after{content:"";animation:1s cubic-bezier(.87,.05,.02,.97) both maskIn-9e8b66c8,1s cubic-bezier(.87,.05,.02,.97) forwards maskOut-9e8b66c8;position:absolute;top:0;bottom:0;left:0;right:0}.stage-transition-2[data-v-9e8b66c8]:before{background-color:var(--stage-transition-2-overlay-color-2);animation-delay:calc(0s + var(--delay,0s)),calc(1.4s + var(--delay,0s))}.stage-transition-2[data-v-9e8b66c8]:after{background-color:var(--stage-transition-2-overlay-color-1);animation-delay:calc(.2s + var(--delay,0s)),calc(1.2s + var(--delay,0s))}@keyframes maskIn-9e8b66c8{0%{clip-path:polygon(0 0,0 0,calc(var(--skew-x,0)*-1)100%,calc(var(--skew-x,0)*-1)100%)}to{clip-path:polygon(0 0,calc(100% + var(--skew-x,0))0,100% 100%,calc(var(--skew-x,0)*-1)100%)}}@keyframes maskOut-9e8b66c8{0%{clip-path:polygon(0 0,calc(100% + var(--skew-x,0))0,100% 100%,calc(var(--skew-x,0)*-1)100%)}to{clip-path:polygon(calc(100% + var(--skew-x,0))0,calc(100% + var(--skew-x,0))0,100% 100%,100% 100%)}}.rectangle-rotate-transition[data-v-45ea2f7f]{position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.rectangle[data-v-45ea2f7f]{width:100%;height:100%;position:absolute}.rectangle div[data-v-45ea2f7f]{width:100vmax;height:100vmax;position:absolute;transform:scale(0)}.rectangle-rotate-1 div[data-v-45ea2f7f]{background-color:var(--rectangle-rotate-1-color);animation:expand-rotate-45ea2f7f var(--rectangle-rotate-duration)ease calc(var(--rectangle-rotate-delay) + 0s)forwards;top:-50vmax;left:-50vmax}.rectangle-rotate-2 div[data-v-45ea2f7f]{background-color:var(--rectangle-rotate-2-color);animation:expand-rotate-45ea2f7f var(--rectangle-rotate-duration)ease calc(var(--rectangle-rotate-delay) + var(--rectangle-rotate-stagger))forwards;bottom:-50vmax;right:-50vmax}.rectangle-rotate-3 div[data-v-45ea2f7f]{background-color:var(--rectangle-rotate-3-color);animation:expand-rotate-45ea2f7f var(--rectangle-rotate-duration)ease calc(var(--rectangle-rotate-delay) + calc(var(--rectangle-rotate-stagger)*2))forwards;top:calc(50% - 50vmax);left:calc(50% - 50vmax)}@keyframes expand-rotate-45ea2f7f{0%{transform:scale(0)rotate(0)}to{transform:scale(1)rotate(var(--rectangle-rotate-rotation))}}html[dir=ltr],[data-sonner-toaster][dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%,-35%)}html[dir=rtl],[data-sonner-toaster][dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%,-35%)}[data-sonner-toaster]{width:var(--width);--gray1:#fcfcfc;--gray2:#f8f8f8;--gray3:#f3f3f3;--gray4:#ededed;--gray5:#e8e8e8;--gray6:#e2e2e2;--gray7:#dbdbdb;--gray8:#c7c7c7;--gray9:#8f8f8f;--gray10:#858585;--gray11:#6f6f6f;--gray12:#171717;--border-radius:8px;box-sizing:border-box;z-index:999999999;outline:none;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;list-style:none;transition:transform .4s;position:fixed}[data-sonner-toaster][data-lifted=true]{transform:translateY(-8px)}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translate(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift)*var(--gap));z-index:var(--z-index);opacity:0;transform:var(--y);touch-action:none;box-sizing:border-box;overflow-wrap:anywhere;outline:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;position:absolute}[data-sonner-toast][data-styled=true]{background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);width:var(--width);align-items:center;gap:6px;padding:16px;font-size:13px;display:flex;box-shadow:0 4px 12px #0000001a}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-y-position=top]{--y:translateY(-100%);--lift:1;--lift-amount:calc(1*var(--gap));top:0}[data-sonner-toast][data-y-position=bottom]{--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift)*var(--gap));bottom:0}[data-sonner-toast][data-styled=true] [data-description]{color:#3f3f3f;font-weight:400;line-height:1.4}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{color:inherit;font-weight:500;line-height:1.5}[data-sonner-toast][data-styled=true] [data-icon]{width:16px;height:16px;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end);flex-shrink:0;justify-content:flex-start;align-items:center;display:flex;position:relative}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform-origin:50%;animation:.3s forwards sonner-fade-in;transform:scale(.8)}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{flex-direction:column;gap:2px;display:flex}[data-sonner-toast][data-styled=true] [data-button]{height:24px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);cursor:pointer;border:none;border-radius:4px;outline:none;flex-shrink:0;align-items:center;padding-left:8px;padding-right:8px;font-size:12px;font-weight:500;transition:opacity .4s,box-shadow .2s;display:flex}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px #0006}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:#00000014}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:#ffffff4d}[data-sonner-toast][data-styled=true] [data-close-button]{left:var(--toast-close-button-start);right:var(--toast-close-button-end);width:20px;height:20px;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);cursor:pointer;z-index:1;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .1s,background .2s,border-color .2s;display:flex;position:absolute;top:0}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]:before{content:"";z-index:-1;height:100%;position:absolute;left:-100%;right:-100%}[data-sonner-toast][data-y-position=top][data-swiping=true]:before{bottom:50%;transform:scaleY(3)translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]:before{top:50%;transform:scaleY(3)translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]:before{content:"";position:absolute;top:0;bottom:0;left:0;right:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]:after{content:"";height:calc(var(--gap) + 1px);width:100%;position:absolute;bottom:100%;left:0}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before)*.05 + 1;--y:translateY(calc(var(--lift-amount)*var(--toasts-before)))scale(calc(-1*var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset) + var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]:before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y)translateY(var(--swipe-amount-y,0px))translateX(var(--swipe-amount-x,0px));transition:none}[data-sonner-toast][data-swiped=true]{-webkit-user-select:none;user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%;position:fixed}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left)*-1)}[data-sonner-toaster] [data-sonner-toast]{width:calc(100% - var(--mobile-offset-left)*2);left:0;right:0}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:#ecfdf3;--success-border:#bffcd9;--success-text:#008a2e;--info-bg:#f0f8ff;--info-border:#dde7fd;--info-text:#0973dc;--warning-bg:#fffcf0;--warning-border:#fbeeb1;--warning-text:#dc7609;--error-bg:#fff0f0;--error-border:#ffe0e1;--error-text:#e60000}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:#333;--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:#1f1f1f;--normal-border:#333;--normal-border-hover:#404040;--normal-text:var(--gray1);--success-bg:#001f0f;--success-border:#003d1c;--success-text:#59f3a6;--info-bg:#000d1f;--info-border:#19233e;--info-text:#5896f3;--warning-bg:#1d1f00;--warning-border:#2e2e00;--warning-text:#f3cf58;--error-bg:#2d0607;--error-border:#4d0408;--error-text:#ff9ea1}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);z-index:10;position:absolute;top:0;bottom:0;left:0;right:0}.sonner-loading-wrapper[data-visible=false]{transform-origin:50%;animation:.2s forwards sonner-fade-out}.sonner-spinner{height:var(--size);width:var(--size);position:relative;top:50%;left:50%}.sonner-loading-bar{background:var(--gray11);border-radius:6px;width:24%;height:8%;animation:1.2s linear infinite sonner-spin;position:absolute;top:-3.9%;left:-10%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg)translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg)translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg)translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg)translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg)translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg)translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg)translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg)translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg)translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg)translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg)translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg)translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{transform-origin:50%;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8)translate(-50%,-50%)}@property --chromatic-hue{syntax:"";inherits:true;initial-value:0}@keyframes hue-anim{0%{--chromatic-hue:0}to{--chromatic-hue:360}}.dynamic-hue{animation:10s linear infinite hue-anim}@font-face{font-family:cjkfonts AllSeto;font-style:normal;font-display:swap;src:url(/assets/cjkFonts_allseto_v1.11-ByBdljxl.ttf)format("truetype")}@font-face{font-family:Xiaolai SC;font-style:normal;font-display:swap;src:url(/assets/XiaolaiSC-Regular-SNWuh554.ttf)format("truetype")}*,:before,:after{box-sizing:border-box;border-style:solid;border-width:0;border-color:var(--un-default-border-color,#e5e7eb)}:before,:after{--un-content:""}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.slide-away-enter-active,.slide-away-leave-active{transition:transform .3s ease-in-out,opacity .3s ease-in-out}.slide-away-enter,.slide-away-leave-to{opacity:0;transform:translateY(-10px)}.slide-away-enter-from,.slide-away-leave{opacity:0;transform:translateY(10px)}:root{--bg-color-light:#fff;--bg-color-dark:#121212;--bg-color:var(--bg-color-light)}html,body,#app{overscroll-behavior:none;height:100%;margin:0;padding:0}html{background:var(--bg-color);transition:all .3s ease-in-out}html.dark{--bg-color:var(--bg-color-dark);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}#nprogress{pointer-events:none}#nprogress .bar{background:color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))70%,#636363);opacity:.75;z-index:1031;width:100%;height:2px;position:fixed;top:0;left:0}@supports (color:color(display-p3 0 0 0)){#nprogress .bar{background:color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))70%,color(display-p3 .388573 .388573 .388573))}}@supports (color:lab(0% 0 0)){#nprogress .bar{background:color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))70%,lab(42% 0 0))}}.dark #nprogress .bar{background:`color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))90%,#dedede)`}@supports (color:color(display-p3 0 0 0)){.dark #nprogress .bar{background:`color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))90%,color(display-p3 .869816 .869817 .869816))`}}@supports (color:lab(0% 0 0)){.dark #nprogress .bar{background:`color-mix(in srgb,oklch(95% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + ${0}))90%,lab(88.4% 0 0))`}}@media (display-mode:standalone){#nprogress,#nprogress .bar{display:none}}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:100 1000;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-sans:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:100 1000;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-sans:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-serif-display@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-serif-display@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/dm-mono@latest/latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/cyrillic-300-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/cyrillic-400-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/cyrillic-500-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/japanese-300-normal.woff2)format("woff2")}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/japanese-400-normal.woff2)format("woff2")}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/japanese-500-normal.woff2)format("woff2")}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kiwi Maru;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/kiwi-maru@latest/latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-800-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/sniglet@latest/latin-ext-800-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/cyrillic-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/greek-wght-normal.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/greek-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/kayah-li-wght-normal.woff2)format("woff2-variations");unicode-range:U+200C-200D,U+2010,U+25CC,U+A900-A92F}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jura;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/jura:vf@latest/vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Gugi;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/gugi@latest/korean-400-normal.woff2)format("woff2")}@font-face{font-family:Gugi;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/gugi@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:300 700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/quicksand:vf@latest/vietnamese-wght-normal.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Urbanist;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/urbanist:vf@latest/latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Urbanist;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/urbanist:vf@latest/latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-100-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-300-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-400-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-500-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-700-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-800-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-900-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-100-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-300-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-400-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-500-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-700-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-800-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/cyrillic-ext-900-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-100-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-300-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-400-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-500-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-700-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-800-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-900-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-100-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-300-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-400-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-500-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-700-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-800-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/greek-ext-900-normal.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-100-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-300-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-400-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-500-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-700-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-800-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/hebrew-900-normal.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-100-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-300-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-400-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-500-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-700-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-800-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/japanese-900-normal.woff2)format("woff2")}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-100-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-700-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-800-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-900-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-100-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-700-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-800-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/latin-ext-900-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:100;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-100-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:300;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-300-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-400-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-500-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-700-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:800;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-800-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/m-plus-rounded-1c@latest/vietnamese-900-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }:root{--chromatic-hue:220.44;--chromatic-chroma:calc(.18 + (cos(var(--chromatic-hue)*3.14159/180)*.04));--chromatic-chroma-50:calc(var(--chromatic-chroma)*.3);--chromatic-chroma-100:calc(var(--chromatic-chroma)*.5);--chromatic-chroma-200:calc(var(--chromatic-chroma)*.6);--chromatic-chroma-300:calc(var(--chromatic-chroma)*.75);--chromatic-chroma-400:calc(var(--chromatic-chroma)*.85);--chromatic-chroma-500:var(--chromatic-chroma);--chromatic-chroma-600:calc(var(--chromatic-chroma)*1.15);--chromatic-chroma-700:calc(var(--chromatic-chroma)*1.1);--chromatic-chroma-800:calc(var(--chromatic-chroma)*.85);--chromatic-chroma-900:calc(var(--chromatic-chroma)*.7);--chromatic-chroma-950:calc(var(--chromatic-chroma)*.5)}.i-eos-icons\:three-dots-loading,[i-eos-icons\:three-dots-loading=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Ccircle cx='18' cy='12' r='0' fill='currentColor'%3E%3Canimate attributeName='r' begin='.67' calcMode='spline' dur='1.5s' keySplines='0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8' repeatCount='indefinite' values='0;2;0;0'/%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='0' fill='currentColor'%3E%3Canimate attributeName='r' begin='.33' calcMode='spline' dur='1.5s' keySplines='0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8' repeatCount='indefinite' values='0;2;0;0'/%3E%3C/circle%3E%3Ccircle cx='6' cy='12' r='0' fill='currentColor'%3E%3Canimate attributeName='r' begin='0' calcMode='spline' dur='1.5s' keySplines='0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8' repeatCount='indefinite' values='0;2;0;0'/%3E%3C/circle%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:alibabacloud{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M14.752 4.64h5.274C22.242 4.64 24 6.475 24 8.691V15.8a3.947 3.947 0 01-3.974 3.975h-5.274l1.299-1.835 3.822-1.222c.688-.23 1.146-.918 1.146-1.605v-5.81c0-.687-.458-1.375-1.146-1.605L16.05 6.475l-1.3-1.835zM2.98 15.111c0 .688.46 1.376 1.147 1.606l3.822 1.146 1.3 1.835H3.974A3.947 3.947 0 010 15.723V8.69c0-2.216 1.758-4.05 3.975-4.05h5.273L7.95 6.474 4.127 7.697c-.688.23-1.146.918-1.146 1.606v5.808z'/%3E%3Cpath d='M16.051 11.213H8.025v1.835h8.026v-1.835z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:anthropic{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M13.827 3.52h3.603L24 20h-3.603l-6.57-16.48zm-7.258 0h3.767L16.906 20h-3.674l-1.343-3.461H5.017l-1.344 3.46H0L6.57 3.522zm4.132 9.959L8.453 7.687 6.205 13.48H10.7z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:cloudflare{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cg%3E%3Cpath d='M16.493 17.4c.135-.52.08-.983-.161-1.338-.215-.328-.592-.519-1.05-.519l-8.663-.109a.148.148 0 01-.135-.082c-.027-.054-.027-.109-.027-.163.027-.082.108-.164.189-.164l8.744-.11c1.05-.054 2.153-.9 2.556-1.937l.511-1.31c.027-.055.027-.11.027-.164C17.92 8.91 15.66 7 12.942 7c-2.503 0-4.628 1.638-5.381 3.903a2.432 2.432 0 00-1.803-.491c-1.21.109-2.153 1.092-2.287 2.32-.027.328 0 .628.054.9C1.56 13.688 0 15.326 0 17.319c0 .19.027.355.027.545 0 .082.08.137.161.137h15.983c.08 0 .188-.055.215-.164l.107-.437'/%3E%3Cpath d='M19.238 11.75h-.242c-.054 0-.108.054-.135.109l-.35 1.2c-.134.52-.08.983.162 1.338.215.328.592.518 1.05.518l1.855.11c.054 0 .108.027.135.082.027.054.027.109.027.163-.027.082-.108.164-.188.164l-1.91.11c-1.05.054-2.153.9-2.557 1.937l-.134.355c-.027.055.026.137.107.137h6.592c.081 0 .162-.055.162-.137.107-.41.188-.846.188-1.31-.027-2.62-2.153-4.777-4.762-4.777'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:deepseek{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:featherless-ai{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' width='1em' height='1em' %3E%3Cg fill='currentColor'%3E%3Cpath d='M40.0866 4.68482C38.2902 3.5825 35.863 3 33.0672 3C28.7842 3 24.0653 4.35865 19.8276 6.72206L19.7979 6.71083C19.7979 6.71083 19.7937 6.73344 19.7914 6.74423C18.5086 7.4617 17.2656 8.2629 16.0981 9.15731C9.22112 14.4248 7.29519 20.6748 8.92004 24.0156C7.14142 27.0728 6.0457 30.2332 6 33.9767C9.41949 27.421 11.4719 22.108 22.6146 13.1637C19.4309 13.8501 13.9281 17.1057 10.2271 22.0459C9.87793 19.156 12.1477 14.4895 17.2033 10.6174C17.8435 10.127 18.5092 9.66864 19.1886 9.23374C18.6577 10.8934 18.8269 10.4806 17.7254 12.8076C19.3543 11.2566 20.4268 10.2995 22.035 7.64145C24.123 6.60964 26.2948 5.83844 28.4482 5.37235C28.0919 6.56071 27.4137 8.57466 26.4955 10.1669C26.4955 10.1669 28.8258 9.66435 30.7518 9.77788C29.6995 10.9459 28.7527 12.2094 27.7926 13.5012C26.4777 15.2696 25.1184 17.0983 23.3778 18.8005C23.1683 19.0054 22.968 19.1912 22.7649 19.383C20.0902 19.1254 18.3235 20.1315 16.6683 21.9089C17.9737 21.2966 19.7273 20.7924 20.8266 21.0959C18.8008 22.7579 15.6106 24.9488 12.9893 24.7684C12.4922 25.5295 12.4608 25.5528 11.9144 26.4722C16.1664 27.537 21.507 23.1905 24.6498 20.1161C26.4926 18.3131 27.8964 16.4257 29.2534 14.6012C32.0481 10.8427 34.4616 7.5974 39.8153 6.3624L42 5.85877L40.0866 4.68482Z' class='logo-mark'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:fireworks{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath clip-rule='evenodd' d='M14.8 5l-2.801 6.795L9.195 5H7.397l3.072 7.428a1.64 1.64 0 003.038.002L16.598 5H14.8zm1.196 10.352l5.124-5.244-.699-1.669-5.596 5.739a1.664 1.664 0 00-.343 1.807 1.642 1.642 0 001.516 1.012L16 17l8-.02-.699-1.669-7.303.041h-.002zM2.88 10.104l.699-1.669 5.596 5.739c.468.479.603 1.189.343 1.807a1.643 1.643 0 01-1.516 1.012l-8-.018-.002.002.699-1.669 7.303.042-5.122-5.246z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:gemini{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M12 24A14.304 14.304 0 000 12 14.304 14.304 0 0012 0a14.305 14.305 0 0012 12 14.305 14.305 0 00-12 12'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:huggingface{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M16.781 3.277c2.997 1.704 4.844 4.851 4.844 8.258 0 .995-.155 1.955-.443 2.857a1.332 1.332 0 011.125.4 1.41 1.41 0 01.2 1.723c.204.165.352.385.428.632l.017.062c.06.222.12.69-.2 1.166.244.37.279.836.093 1.236-.255.57-.893 1.018-2.128 1.5l-.202.078-.131.048c-.478.173-.89.295-1.061.345l-.086.024c-.89.243-1.808.375-2.732.394-1.32 0-2.3-.36-2.923-1.067a9.852 9.852 0 01-3.18.018C9.778 21.647 8.802 22 7.494 22a11.249 11.249 0 01-2.541-.343l-.221-.06-.273-.08a16.574 16.574 0 01-1.175-.405c-1.237-.483-1.875-.93-2.13-1.501-.186-.4-.151-.867.093-1.236a1.42 1.42 0 01-.2-1.166c.069-.273.226-.516.447-.694a1.41 1.41 0 01.2-1.722c.233-.248.557-.391.917-.407l.078-.001a9.385 9.385 0 01-.44-2.85c0-3.407 1.847-6.554 4.844-8.258a9.822 9.822 0 019.687 0zM4.188 14.758c.125.687 2.357 2.35 2.14 2.707-.19.315-.796-.239-.948-.386l-.041-.04-.168-.147c-.561-.479-2.304-1.9-2.74-1.432-.43.46.119.859 1.055 1.42l.784.467.136.083c1.045.643 1.12.84.95 1.113-.188.295-3.07-2.1-3.34-1.083-.27 1.011 2.942 1.304 2.744 2.006-.2.7-2.265-1.324-2.685-.537-.425.79 2.913 1.718 2.94 1.725l.16.04.175.042c1.227.284 3.565.65 4.435-.604.673-.973.64-1.709-.248-2.61l-.057-.057c-.945-.928-1.495-2.288-1.495-2.288l-.017-.058-.025-.072c-.082-.22-.284-.639-.63-.584-.46.073-.798 1.21.12 1.933l.05.038c.977.721-.195 1.21-.573.534l-.058-.104-.143-.25c-.463-.799-1.282-2.111-1.739-2.397-.532-.332-.907-.148-.782.541zm14.842-.541c-.533.335-1.563 2.074-1.94 2.751a.613.613 0 01-.687.302.436.436 0 01-.176-.098.303.303 0 01-.049-.06l-.014-.028-.008-.02-.007-.019-.003-.013-.003-.017a.289.289 0 01-.004-.048c0-.12.071-.266.25-.427.026-.024.054-.047.084-.07l.047-.036c.022-.016.043-.032.063-.049.883-.71.573-1.81.131-1.917l-.031-.006-.056-.004a.368.368 0 00-.062.006l-.028.005-.042.014-.039.017-.028.015-.028.019-.036.027-.023.02c-.173.158-.273.428-.31.542l-.016.054s-.53 1.309-1.439 2.234l-.054.054c-.365.358-.596.69-.702 1.018-.143.437-.066.868.21 1.353.055.097.117.195.187.296.882 1.275 3.282.876 4.494.59l.286-.07.25-.074c.276-.084.736-.233 1.2-.42l.188-.077.065-.028.064-.028.124-.056.081-.038c.529-.252.964-.543.994-.827l.001-.036a.299.299 0 00-.037-.139c-.094-.176-.271-.212-.491-.168l-.045.01c-.044.01-.09.024-.136.04l-.097.035-.054.022c-.559.23-1.238.705-1.607.745h.006a.452.452 0 01-.05.003h-.024l-.024-.003-.023-.005c-.068-.016-.116-.06-.14-.142a.22.22 0 01-.005-.1c.062-.345.958-.595 1.713-.91l.066-.028c.528-.224.97-.483.985-.832v-.04a.47.47 0 00-.016-.098c-.048-.18-.175-.251-.36-.251-.785 0-2.55 1.36-2.92 1.36-.025 0-.048-.007-.058-.024a.6.6 0 01-.046-.088c-.1-.238.068-.462 1.06-1.066l.209-.126c.538-.32 1.01-.588 1.341-.831.29-.212.475-.406.503-.6l.003-.028c.008-.113-.038-.227-.147-.344a.266.266 0 00-.07-.054l-.034-.015-.013-.005a.403.403 0 00-.13-.02c-.162 0-.369.07-.595.18-.637.313-1.431.952-1.826 1.285l-.249.215-.033.033c-.08.078-.288.27-.493.386l-.071.037-.041.019a.535.535 0 01-.122.036h.005a.346.346 0 01-.031.003l.01-.001-.013.001c-.079.005-.145-.021-.19-.095a.113.113 0 01-.014-.065c.027-.465 2.034-1.991 2.152-2.642l.009-.048c.1-.65-.271-.817-.791-.493zM11.938 2.984c-4.798 0-8.688 3.829-8.688 8.55 0 .692.083 1.364.24 2.008l.008-.009c.252-.298.612-.46 1.017-.46.355.008.699.117.993.312.22.14.465.384.715.694.261-.372.69-.598 1.15-.605.852 0 1.367.728 1.562 1.383l.047.105.06.127c.192.396.595 1.139 1.143 1.68 1.06 1.04 1.324 2.115.8 3.266a8.865 8.865 0 002.024-.014c-.505-1.12-.26-2.17.74-3.186l.066-.066c.695-.684 1.157-1.69 1.252-1.912.195-.655.708-1.383 1.56-1.383.46.007.889.233 1.15.605.25-.31.495-.553.718-.694a1.87 1.87 0 01.99-.312c.357 0 .682.126.925.36.14-.61.215-1.245.215-1.898 0-4.722-3.89-8.55-8.687-8.55zm1.857 8.926l.439-.212c.553-.264.89-.383.89.152 0 1.093-.771 3.208-3.155 3.262h-.184c-2.325-.052-3.116-2.06-3.156-3.175l-.001-.087c0-1.107 1.452.586 3.25.586.716 0 1.379-.272 1.917-.526zm4.017-3.143c.45 0 .813.358.813.8 0 .441-.364.8-.813.8a.806.806 0 01-.812-.8c0-.442.364-.8.812-.8zm-11.624 0c.448 0 .812.358.812.8 0 .441-.364.8-.812.8a.806.806 0 01-.813-.8c0-.442.364-.8.813-.8zm7.79-.841c.32-.384.846-.54 1.33-.394.483.146.83.564.878 1.06.048.495-.212.97-.659 1.203-.322.168-.447-.477-.767-.585l.002-.003c-.287-.098-.772.362-.925.079a1.215 1.215 0 01.14-1.36zm-4.323 0c.322.384.377.92.14 1.36-.152.283-.64-.177-.925-.079l.003.003c-.108.036-.194.134-.273.24l-.118.165c-.11.15-.22.262-.377.18a1.226 1.226 0 01-.658-1.204c.048-.495.395-.913.878-1.059a1.262 1.262 0 011.33.394z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:microsoft{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M11.49 2H2v9.492h9.492V2h-.002z'/%3E%3Cpath d='M22 2h-9.492v9.492H22V2z'/%3E%3Cpath d='M11.49 12.508H2V22h9.492v-9.492h-.002z'/%3E%3Cpath d='M22 12.508h-9.492V22H22v-9.492z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:mistral{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath clip-rule='evenodd' d='M3.428 3.4h3.429v3.428h3.429v3.429h-.002 3.431V6.828h3.427V3.4h3.43v13.714H24v3.429H13.714v-3.428h-3.428v-3.429h-3.43v3.428h3.43v3.429H0v-3.429h3.428V3.4zm10.286 13.715h3.428v-3.429h-3.427v3.429z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:moonshot{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M1.052 16.916l9.539 2.552a21.007 21.007 0 00.06 2.033l5.956 1.593a11.997 11.997 0 01-5.586.865l-.18-.016-.044-.004-.084-.009-.094-.01a11.605 11.605 0 01-.157-.02l-.107-.014-.11-.016a11.962 11.962 0 01-.32-.051l-.042-.008-.075-.013-.107-.02-.07-.015-.093-.019-.075-.016-.095-.02-.097-.023-.094-.022-.068-.017-.088-.022-.09-.024-.095-.025-.082-.023-.109-.03-.062-.02-.084-.025-.093-.028-.105-.034-.058-.019-.08-.026-.09-.031-.066-.024a6.293 6.293 0 01-.044-.015l-.068-.025-.101-.037-.057-.022-.08-.03-.087-.035-.088-.035-.079-.032-.095-.04-.063-.028-.063-.027a5.655 5.655 0 01-.041-.018l-.066-.03-.103-.047-.052-.024-.096-.046-.062-.03-.084-.04-.086-.044-.093-.047-.052-.027-.103-.055-.057-.03-.058-.032a6.49 6.49 0 01-.046-.026l-.094-.053-.06-.034-.051-.03-.072-.041-.082-.05-.093-.056-.052-.032-.084-.053-.061-.039-.079-.05-.07-.047-.053-.035a7.785 7.785 0 01-.054-.036l-.044-.03-.044-.03a6.066 6.066 0 01-.04-.028l-.057-.04-.076-.054-.069-.05-.074-.054-.056-.042-.076-.057-.076-.059-.086-.067-.045-.035-.064-.052-.074-.06-.089-.073-.046-.039-.046-.039a7.516 7.516 0 01-.043-.037l-.045-.04-.061-.053-.07-.062-.068-.06-.062-.058-.067-.062-.053-.05-.088-.084a13.28 13.28 0 01-.099-.097l-.029-.028-.041-.042-.069-.07-.05-.051-.05-.053a6.457 6.457 0 01-.168-.179l-.08-.088-.062-.07-.071-.08-.042-.049-.053-.062-.058-.068-.046-.056a7.175 7.175 0 01-.027-.033l-.045-.055-.066-.082-.041-.052-.05-.064-.02-.025a11.99 11.99 0 01-1.44-2.402zm-1.02-5.794l11.353 3.037a20.468 20.468 0 00-.469 2.011l10.817 2.894a12.076 12.076 0 01-1.845 2.005L.657 15.923l-.016-.046-.035-.104a11.965 11.965 0 01-.05-.153l-.007-.023a11.896 11.896 0 01-.207-.741l-.03-.126-.018-.08-.021-.097-.018-.081-.018-.09-.017-.084-.018-.094c-.026-.141-.05-.283-.071-.426l-.017-.118-.011-.083-.013-.102a12.01 12.01 0 01-.019-.161l-.005-.047a12.12 12.12 0 01-.034-2.145zm1.593-5.15l11.948 3.196c-.368.605-.705 1.231-1.01 1.875l11.295 3.022c-.142.82-.368 1.612-.668 2.365l-11.55-3.09L.124 10.26l.015-.1.008-.049.01-.067.015-.087.018-.098c.026-.148.056-.295.088-.442l.028-.124.02-.085.024-.097c.022-.09.045-.18.07-.268l.028-.102.023-.083.03-.1.025-.082.03-.096.026-.082.031-.095a11.896 11.896 0 011.01-2.232zm4.442-4.4L17.352 4.59a20.77 20.77 0 00-1.688 1.721l7.823 2.093c.267.852.442 1.744.513 2.665L2.106 5.213l.045-.065.027-.04.04-.055.046-.065.055-.076.054-.072.064-.086.05-.065.057-.073.055-.07.06-.074.055-.069.065-.077.054-.066.066-.077.053-.06.072-.082.053-.06.067-.074.054-.058.073-.078.058-.06.063-.067.168-.17.1-.098.059-.056.076-.071a12.084 12.084 0 012.272-1.677zM12.017 0h.097l.082.001.069.001.054.002.068.002.046.001.076.003.047.002.06.003.054.002.087.005.105.007.144.011.088.007.044.004.077.008.082.008.047.005.102.012.05.006.108.014.081.01.042.006.065.01.207.032.07.012.065.011.14.026.092.018.11.022.046.01.075.016.041.01L14.7.3l.042.01.065.015.049.012.071.017.096.024.112.03.113.03.113.032.05.015.07.02.078.024.073.023.05.016.05.016.076.025.099.033.102.036.048.017.064.023.093.034.11.041.116.045.1.04.047.02.06.024.041.018.063.026.04.018.057.025.11.048.1.046.074.035.075.036.06.028.092.046.091.045.102.052.053.028.049.026.046.024.06.033.041.022.052.029.088.05.106.06.087.051.057.034.053.032.096.059.088.055.098.062.036.024.064.041.084.056.04.027.062.042.062.043.023.017c.054.037.108.075.161.114l.083.06.065.048.056.043.086.065.082.064.04.03.05.041.086.069.079.065.085.071c.712.6 1.353 1.283 1.909 2.031L7.222.994l.062-.027.065-.028.081-.034.086-.035c.113-.045.227-.09.341-.131l.096-.035.093-.033.084-.03.096-.031c.087-.03.176-.058.264-.085l.091-.027.086-.025.102-.03.085-.023.1-.026L9.04.37l.09-.023.091-.022.095-.022.09-.02.098-.021.091-.02.095-.018.092-.018.1-.018.091-.016.098-.017.092-.014.097-.015.092-.013.102-.013.091-.012.105-.012.09-.01.105-.01c.093-.01.186-.018.28-.024l.106-.008.09-.005.11-.006.093-.004.1-.004.097-.002.099-.002.197-.002z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:novita{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath clip-rule='evenodd' d='M9.167 4.17v5.665L0 19.003h9.167v-5.666l5.666 5.666H24L9.167 4.17z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:ollama{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M7.905 1.09c.216.085.411.225.588.41.295.306.544.744.734 1.263.191.522.315 1.1.362 1.68a5.054 5.054 0 012.049-.636l.051-.004c.87-.07 1.73.087 2.48.474.101.053.2.11.297.17.05-.569.172-1.134.36-1.644.19-.52.439-.957.733-1.264a1.67 1.67 0 01.589-.41c.257-.1.53-.118.796-.042.401.114.745.368 1.016.737.248.337.434.769.561 1.287.23.934.27 2.163.115 3.645l.053.04.026.019c.757.576 1.284 1.397 1.563 2.35.435 1.487.216 3.155-.534 4.088l-.018.021.002.003c.417.762.67 1.567.724 2.4l.002.03c.064 1.065-.2 2.137-.814 3.19l-.007.01.01.024c.472 1.157.62 2.322.438 3.486l-.006.039a.651.651 0 01-.747.536.648.648 0 01-.54-.742c.167-1.033.01-2.069-.48-3.123a.643.643 0 01.04-.617l.004-.006c.604-.924.854-1.83.8-2.72-.046-.779-.325-1.544-.8-2.273a.644.644 0 01.18-.886l.009-.006c.243-.159.467-.565.58-1.12a4.229 4.229 0 00-.095-1.974c-.205-.7-.58-1.284-1.105-1.683-.595-.454-1.383-.673-2.38-.61a.653.653 0 01-.632-.371c-.314-.665-.772-1.141-1.343-1.436a3.288 3.288 0 00-1.772-.332c-1.245.099-2.343.801-2.67 1.686a.652.652 0 01-.61.425c-1.067.002-1.893.252-2.497.703-.522.39-.878.935-1.066 1.588a4.07 4.07 0 00-.068 1.886c.112.558.331 1.02.582 1.269l.008.007c.212.207.257.53.109.785-.36.622-.629 1.549-.673 2.44-.05 1.018.186 1.902.719 2.536l.016.019a.643.643 0 01.095.69c-.576 1.236-.753 2.252-.562 3.052a.652.652 0 01-1.269.298c-.243-1.018-.078-2.184.473-3.498l.014-.035-.008-.012a4.339 4.339 0 01-.598-1.309l-.005-.019a5.764 5.764 0 01-.177-1.785c.044-.91.278-1.842.622-2.59l.012-.026-.002-.002c-.293-.418-.51-.953-.63-1.545l-.005-.024a5.352 5.352 0 01.093-2.49c.262-.915.777-1.701 1.536-2.269.06-.045.123-.09.186-.132-.159-1.493-.119-2.73.112-3.67.127-.518.314-.95.562-1.287.27-.368.614-.622 1.015-.737.266-.076.54-.059.797.042zm4.116 9.09c.936 0 1.8.313 2.446.855.63.527 1.005 1.235 1.005 1.94 0 .888-.406 1.58-1.133 2.022-.62.375-1.451.557-2.403.557-1.009 0-1.871-.259-2.493-.734-.617-.47-.963-1.13-.963-1.845 0-.707.398-1.417 1.056-1.946.668-.537 1.55-.849 2.485-.849zm0 .896a3.07 3.07 0 00-1.916.65c-.461.37-.722.835-.722 1.25 0 .428.21.829.61 1.134.455.347 1.124.548 1.943.548.799 0 1.473-.147 1.932-.426.463-.28.7-.686.7-1.257 0-.423-.246-.89-.683-1.256-.484-.405-1.14-.643-1.864-.643zm.662 1.21l.004.004c.12.151.095.37-.056.49l-.292.23v.446a.375.375 0 01-.376.373.375.375 0 01-.376-.373v-.46l-.271-.218a.347.347 0 01-.052-.49.353.353 0 01.494-.051l.215.172.22-.174a.353.353 0 01.49.051zm-5.04-1.919c.478 0 .867.39.867.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zm8.706 0c.48 0 .868.39.868.871a.87.87 0 01-.868.871.87.87 0 01-.867-.87.87.87 0 01.867-.872zM7.44 2.3l-.003.002a.659.659 0 00-.285.238l-.005.006c-.138.189-.258.467-.348.832-.17.692-.216 1.631-.124 2.782.43-.128.899-.208 1.404-.237l.01-.001.019-.034c.046-.082.095-.161.148-.239.123-.771.022-1.692-.253-2.444-.134-.364-.297-.65-.453-.813a.628.628 0 00-.107-.09L7.44 2.3zm9.174.04l-.002.001a.628.628 0 00-.107.09c-.156.163-.32.45-.453.814-.29.794-.387 1.776-.23 2.572l.058.097.008.014h.03a5.184 5.184 0 011.466.212c.086-1.124.038-2.043-.128-2.722-.09-.365-.21-.643-.349-.832l-.004-.006a.659.659 0 00-.285-.239h-.004z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:openai{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M21.55 10.004a5.416 5.416 0 00-.478-4.501c-1.217-2.09-3.662-3.166-6.05-2.66A5.59 5.59 0 0010.831 1C8.39.995 6.224 2.546 5.473 4.838A5.553 5.553 0 001.76 7.496a5.487 5.487 0 00.691 6.5 5.416 5.416 0 00.477 4.502c1.217 2.09 3.662 3.165 6.05 2.66A5.586 5.586 0 0013.168 23c2.443.006 4.61-1.546 5.361-3.84a5.553 5.553 0 003.715-2.66 5.488 5.488 0 00-.693-6.497v.001zm-8.381 11.558a4.199 4.199 0 01-2.675-.954c.034-.018.093-.05.132-.074l4.44-2.53a.71.71 0 00.364-.623v-6.176l1.877 1.069c.02.01.033.029.036.05v5.115c-.003 2.274-1.87 4.118-4.174 4.123zM4.192 17.78a4.059 4.059 0 01-.498-2.763c.032.02.09.055.131.078l4.44 2.53c.225.13.504.13.73 0l5.42-3.088v2.138a.068.068 0 01-.027.057L9.9 19.288c-1.999 1.136-4.552.46-5.707-1.51h-.001zM3.023 8.216A4.15 4.15 0 015.198 6.41l-.002.151v5.06a.711.711 0 00.364.624l5.42 3.087-1.876 1.07a.067.067 0 01-.063.005l-4.489-2.559c-1.995-1.14-2.679-3.658-1.53-5.63h.001zm15.417 3.54l-5.42-3.088L14.896 7.6a.067.067 0 01.063-.006l4.489 2.557c1.998 1.14 2.683 3.662 1.529 5.633a4.163 4.163 0 01-2.174 1.807V12.38a.71.71 0 00-.363-.623zm1.867-2.773a6.04 6.04 0 00-.132-.078l-4.44-2.53a.731.731 0 00-.729 0l-5.42 3.088V7.325a.068.068 0 01.027-.057L14.1 4.713c2-1.137 4.555-.46 5.707 1.513.487.833.664 1.809.499 2.757h.001zm-11.741 3.81l-1.877-1.068a.065.065 0 01-.036-.051V6.559c.001-2.277 1.873-4.122 4.181-4.12.976 0 1.92.338 2.671.954-.034.018-.092.05-.131.073l-4.44 2.53a.71.71 0 00-.365.623l-.003 6.173v.002zm1.02-2.168L12 9.25l2.414 1.375v2.75L12 14.75l-2.415-1.375v-2.75z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:openrouter{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M16.804 1.957l7.22 4.105v.087L16.73 10.21l.017-2.117-.821-.03c-1.059-.028-1.611.002-2.268.11-1.064.175-2.038.577-3.147 1.352L8.345 11.03c-.284.195-.495.336-.68.455l-.515.322-.397.234.385.23.53.338c.476.314 1.17.796 2.701 1.866 1.11.775 2.083 1.177 3.147 1.352l.3.045c.694.091 1.375.094 2.825.033l.022-2.159 7.22 4.105v.087L16.589 22l.014-1.862-.635.022c-1.386.042-2.137.002-3.138-.162-1.694-.28-3.26-.926-4.881-2.059l-2.158-1.5a21.997 21.997 0 00-.755-.498l-.467-.28a55.927 55.927 0 00-.76-.43C2.908 14.73.563 14.116 0 14.116V9.888l.14.004c.564-.007 2.91-.622 3.809-1.124l1.016-.58.438-.274c.428-.28 1.072-.726 2.686-1.853 1.621-1.133 3.186-1.78 4.881-2.059 1.152-.19 1.974-.213 3.814-.138l.02-1.907z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:perplexity{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M19.785 0v7.272H22.5V17.62h-2.935V24l-7.037-6.194v6.145h-1.091v-6.152L4.392 24v-6.465H1.5V7.188h2.884V0l7.053 6.494V.19h1.09v6.49L19.786 0zm-7.257 9.044v7.319l5.946 5.234V14.44l-5.946-5.397zm-1.099-.08l-5.946 5.398v7.235l5.946-5.234V8.965zm8.136 7.58h1.844V8.349H13.46l6.105 5.54v2.655zm-8.982-8.28H2.59v8.195h1.8v-2.576l6.192-5.62zM5.475 2.476v4.71h5.115l-5.115-4.71zm13.219 0l-5.115 4.71h5.115v-4.71z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:player2{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M19.956 10.178C19.8934 10.7544 19.724 11.6784 19.1182 12.5274C18.3667 13.5817 17.3528 13.8824 16.9558 13.9746C16.6911 14.0049 16.3026 14.045 15.8323 14.0789C14.1804 14.2045 13.0525 14.1565 11.7041 14.131C10.81 14.1143 9.54304 14.1034 7.98548 14.131C7.97564 16.7493 7.96551 19.368 7.95508 21.987L5 22V15.8717C5.00358 14.6542 5.00983 12.9193 5.03397 10.7643C6.47441 10.7684 14.6905 10.7205 15.6696 10.7721C15.8672 10.7841 16.3621 10.8039 16.6764 10.4458C16.8842 10.2113 16.9696 9.83348 16.9763 9.26802C16.9835 8.82659 16.9902 8.38204 16.9763 7.94322C16.9459 6.90454 16.608 6.51472 15.7103 6.51107C12.8124 6.5069 9.91142 6.43915 7.01356 6.51107C6.60048 6.51888 5.90083 6.53087 5.02056 6.50325V3C5.43007 3.00782 6.13285 3.02397 7.00686 3.01563C11.1399 2.98436 12.7292 3.01199 15.5328 3.01563C18.3591 3.0198 19.994 4.94393 19.994 8.26009C19.9913 8.90059 20.0253 9.54944 19.956 10.178Z'/%3E%3Cpath d='M20 19H11V22H20V19Z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:together{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cg%3E%3Cpath d='M17.385 11.23a4.615 4.615 0 100-9.23 4.615 4.615 0 000 9.23zm0 10.77a4.615 4.615 0 100-9.23 4.615 4.615 0 000 9.23zm-10.77 0a4.615 4.615 0 100-9.23 4.615 4.615 0 000 9.23z' opacity='.2'/%3E%3Ccircle cx='6.615' cy='6.615' r='4.615'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:vllm{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M0 4.973h9.324V23L0 4.973z'/%3E%3Cpath d='M13.986 4.351L22.378 0l-6.216 23H9.324l4.662-18.649z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:volcengine{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M7.29 5.36L3.148 21.737a.215.215 0 00.203.261h8.29a.214.214 0 00.215-.261L7.7 5.359a.214.214 0 00-.41 0z' fill-opacity='.5'/%3E%3Cpath clip-rule='evenodd' d='M4.553 16.18l-1.406 5.558a.214.214 0 00.203.261h2.42-4.551a.214.214 0 01-.214-.26l2.275-8.961a.214.214 0 01.409 0l.864 3.402z'/%3E%3Cpath d='M14.44.15a.214.214 0 00-.41 0L8.366 21.739a.214.214 0 00.214.261H19.9a.214.214 0 00.215-.261L14.44.151z' fill-opacity='.5'/%3E%3Cpath clip-rule='evenodd' d='M16.694 22h3.207a.215.215 0 00.214-.262l-1.839-6.993 1.164-4.592a.214.214 0 01.411 0l2.951 11.586a.214.214 0 01-.214.261h-5.894z'/%3E%3Cpath d='M10.278 7.741L6.685 21.736a.214.214 0 00.214.264h7.17a.216.216 0 00.214-.166.216.216 0 000-.098L10.687 7.742a.214.214 0 00-.409 0z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lobe-icons\:xai{--un-icon:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='1em' height='1em' %3E%3Cg fill='currentColor' fill-rule='evenodd'%3E%3Cpath d='M6.469 8.776L16.512 23h-4.464L2.005 8.776H6.47zm-.004 7.9l2.233 3.164L6.467 23H2l4.465-6.324zM22 2.582V23h-3.659V7.764L22 2.582zM22 1l-9.952 14.095-2.233-3.163L17.533 1H22z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lucide\:ghost,[i-lucide\:ghost=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M9 10h.01M15 10h.01M12 2a8 8 0 0 0-8 8v12l3-3l2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lucide\:mic,[i-lucide\:mic=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M12 19v3m7-12v2a7 7 0 0 1-14 0v-2'/%3E%3Crect width='6' height='13' x='9' y='2' rx='3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-lucide\:music,[i-lucide\:music=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M9 18V5l12-2v13'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Ccircle cx='18' cy='16' r='3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:discord{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M20.317 4.37a19.8 19.8 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.3 18.3 0 0 0-5.487 0a13 13 0 0 0-.617-1.25a.08.08 0 0 0-.079-.037A19.7 19.7 0 0 0 3.677 4.37a.1.1 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.08.08 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.08.08 0 0 0 .084-.028a14 14 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13 13 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10 10 0 0 0 .372-.292a.07.07 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.07.07 0 0 1 .078.01q.181.149.373.292a.077.077 0 0 1-.006.127a12.3 12.3 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.08.08 0 0 0 .084.028a19.8 19.8 0 0 0 6.002-3.03a.08.08 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.06.06 0 0 0-.031-.03M8.02 15.33c-1.182 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418m7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:elevenlabs{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4.604 0v24h4.931V0zm9.86 0v24h4.933V0z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:github,[i-simple-icons\:github=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:javascript{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M0 0h24v24H0zm22.034 18.276c-.175-1.095-.888-2.015-3.003-2.873c-.736-.345-1.554-.585-1.797-1.14c-.091-.33-.105-.51-.046-.705c.15-.646.915-.84 1.515-.66c.39.12.75.42.976.9c1.034-.676 1.034-.676 1.755-1.125c-.27-.42-.404-.601-.586-.78c-.63-.705-1.469-1.065-2.834-1.034l-.705.089c-.676.165-1.32.525-1.71 1.005c-1.14 1.291-.811 3.541.569 4.471c1.365 1.02 3.361 1.244 3.616 2.205c.24 1.17-.87 1.545-1.966 1.41c-.811-.18-1.26-.586-1.755-1.336l-1.83 1.051c.21.48.45.689.81 1.109c1.74 1.756 6.09 1.666 6.871-1.004c.029-.09.24-.705.074-1.65zm-8.983-7.245h-2.248c0 1.938-.009 3.864-.009 5.805c0 1.232.063 2.363-.138 2.711c-.33.689-1.18.601-1.566.48c-.396-.196-.597-.466-.83-.855c-.063-.105-.11-.196-.127-.196l-1.825 1.125c.305.63.75 1.172 1.324 1.517c.855.51 2.004.675 3.207.405c.783-.226 1.458-.691 1.811-1.411c.51-.93.402-2.07.397-3.346c.012-2.054 0-4.109 0-6.179z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-simple-icons\:x{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584l-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:add-circle-line-duotone,[i-solar\:add-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='M15 12h-3m0 0H9m3 0V9m0 3v3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:add-square-line-duotone,[i-solar\:add-square-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-4.714 0-7.071 1.464-8.536C4.93 2 7.286 2 12 2s7.071 0 8.535 1.464C22 4.93 22 7.286 22 12s0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12Z' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='M15 12h-3m0 0H9m3 0V9m0 3v3'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:alt-arrow-down-linear,[i-solar\:alt-arrow-down-linear=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 9l-7 6l-7-6'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:alt-arrow-left-line-duotone,[i-solar\:alt-arrow-left-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m15 5l-6 7l6 7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:armchair-2-bold-duotone,[i-solar\:armchair-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16.533 18H6.75v2a.75.75 0 1 1-1.5 0v-2.324c-.829-.362-1.49-1.005-1.808-1.817l-.039-.102L2.1 12.264C1.685 11.15 2.613 10 3.927 10c.81 0 1.534.453 1.81 1.134l1.098 2.706c.1.246.15.37.222.47a1.2 1.2 0 0 0 .74.463c.13.027.277.027.57.027h6.98c.569 0 .853 0 1.091-.098q.196-.082.349-.219c.184-.166.281-.405.475-.883l1.001-2.466c.276-.68 1-1.134 1.81-1.134c1.314 0 2.242 1.15 1.827 2.264l-1.12 3c-.195.524-.292.785-.421 1.008a3.43 3.43 0 0 1-1.609 1.404V20a.75.75 0 1 1-1.5 0v-2.005c-.187.005-.415.005-.717.005'/%3E%3Cpath fill='currentColor' d='M13.236 3.5h-2.472c-1.1 0-1.976 0-2.66.088c-.706.09-1.285.28-1.746.72c-.464.441-.669 1.003-.765 1.685c-.093.658-.093 1.495-.093 2.54v2.195q.147.186.237.406l1.098 2.706c.1.246.15.37.222.47a1.2 1.2 0 0 0 .74.463c.13.027.277.027.57.027h6.98c.569 0 .853 0 1.091-.098q.196-.082.349-.219c.184-.166.281-.405.475-.883l1.001-2.466q.09-.221.237-.406V8.533c0-1.045 0-1.882-.093-2.54c-.096-.682-.301-1.244-.765-1.686c-.46-.438-1.04-.629-1.745-.72c-.685-.087-1.56-.087-2.661-.087' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:arrow-right-line-duotone,[i-solar\:arrow-right-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Cpath fill='currentColor' d='M4 11.25a.75.75 0 0 0 0 1.5zm0 1.5h16v-1.5H4z' opacity='.5'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m14 6l6 6l-6 6'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:arrow-up-outline,[i-solar\:arrow-up-outline=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M11.47 3.47a.75.75 0 0 1 1.06 0l6 6a.75.75 0 1 1-1.06 1.06l-4.72-4.72V20a.75.75 0 0 1-1.5 0V5.81l-4.72 4.72a.75.75 0 1 1-1.06-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:book-bookmark-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 20.028V18H8v2.028c0 .277 0 .416.095.472s.224-.006.484-.13l1.242-.593c.088-.042.132-.063.179-.063s.091.02.179.063l1.242.593c.26.124.39.186.484.13c.095-.056.095-.195.095-.472' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8 18h-.574c-1.084 0-1.462.006-1.753.068c-.513.11-.96.347-1.285.667c-.11.108-.164.161-.291.505s-.107.489-.066.78l.022.15c.11.653.31.998.616 1.244c.307.246.737.407 1.55.494c.837.09 1.946.092 3.536.092h4.43c1.59 0 2.7-.001 3.536-.092c.813-.087 1.243-.248 1.55-.494s.506-.591.616-1.243c.091-.548.11-1.241.113-2.171h-8v2.028c0 .277 0 .416-.095.472s-.224-.006-.484-.13l-1.242-.593c-.088-.042-.132-.063-.179-.063s-.091.02-.179.063l-1.242.593c-.26.124-.39.186-.484.13C8 20.444 8 20.305 8 20.028z'/%3E%3Cpath fill='currentColor' d='M4.727 2.733c.306-.308.734-.508 1.544-.618C7.105 2.002 8.209 2 9.793 2h4.414c1.584 0 2.688.002 3.522.115c.81.11 1.238.31 1.544.618c.305.308.504.74.613 1.557c.112.84.114 1.955.114 3.552V18H7.426c-1.084 0-1.462.006-1.753.068c-.513.11-.96.347-1.285.667c-.11.108-.164.161-.291.505A1.3 1.3 0 0 0 4 19.7V7.842c0-1.597.002-2.711.114-3.552c.109-.816.308-1.249.613-1.557' opacity='.5'/%3E%3Cpath fill='currentColor' d='M7.25 7A.75.75 0 0 1 8 6.25h8a.75.75 0 0 1 0 1.5H8A.75.75 0 0 1 7.25 7M8 9.75a.75.75 0 0 0 0 1.5h5a.75.75 0 0 0 0-1.5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:bookmark-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M21 11.098v4.993c0 3.096 0 4.645-.734 5.321c-.35.323-.792.526-1.263.58c-.987.113-2.14-.907-4.445-2.946c-1.02-.901-1.529-1.352-2.118-1.47a2.2 2.2 0 0 0-.88 0c-.59.118-1.099.569-2.118 1.47c-2.305 2.039-3.458 3.059-4.445 2.945a2.24 2.24 0 0 1-1.263-.579C3 20.736 3 19.188 3 16.091v-4.994C3 6.81 3 4.666 4.318 3.333S7.758 2 12 2s6.364 0 7.682 1.332S21 6.81 21 11.098' opacity='.5'/%3E%3Cpath fill='currentColor' d='M9 5.25a.75.75 0 0 0 0 1.5h6a.75.75 0 0 0 0-1.5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:box-minimalistic-bold-duotone,[i-solar\:box-minimalistic-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M8.422 20.618C10.178 21.54 11.056 22 12 22V12L2.638 7.073l-.04.067C2 8.154 2 9.417 2 11.942v.117c0 2.524 0 3.787.597 4.801c.598 1.015 1.674 1.58 3.825 2.709z'/%3E%3Cpath fill='currentColor' d='m17.577 4.432l-2-1.05C13.822 2.461 12.944 2 12 2c-.945 0-1.822.46-3.578 1.382l-2 1.05C4.318 5.536 3.242 6.1 2.638 7.072L12 12l9.362-4.927c-.606-.973-1.68-1.537-3.785-2.641' opacity='.7'/%3E%3Cpath fill='currentColor' d='m21.403 7.14l-.041-.067L12 12v10c.944 0 1.822-.46 3.578-1.382l2-1.05c2.151-1.129 3.227-1.693 3.825-2.708c.597-1.014.597-2.277.597-4.8v-.117c0-2.525 0-3.788-.597-4.802' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:bug-bold-duotone,[i-solar\:bug-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M19 11.938V15a7 7 0 0 1-6.25 6.96V15a.75.75 0 0 0-1.5 0v6.96A7 7 0 0 1 5 15v-3.062A3.94 3.94 0 0 1 8.938 8h6.124A3.94 3.94 0 0 1 19 11.938' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M19 14.75v-1.5h3a.75.75 0 0 1 0 1.5zm-1.504 4.586c.31-.393.58-.82.801-1.276l2.538 1.27a.75.75 0 1 1-.67 1.34zM5.703 18.06q.333.684.801 1.276l-2.669 1.335a.75.75 0 0 1-.67-1.342zM5 13.25H2a.75.75 0 0 0 0 1.5h3zm12.354-4.515l2.81-1.406a.75.75 0 1 1 .671 1.341L18.42 9.88a4 4 0 0 0-1.065-1.144M6.647 8.735c-.427.306-.79.695-1.067 1.144L3.165 8.67a.75.75 0 0 1 .67-1.341zM16.5 8.27V7.5a4.5 4.5 0 1 0-9 0v.77A3.9 3.9 0 0 1 8.938 8h6.124c.508 0 .993.096 1.438.27'/%3E%3Cpath fill='currentColor' d='M6.376 1.584a.75.75 0 0 0 .208 1.04l2.36 1.573a4.5 4.5 0 0 1 1.387-.877L7.416 1.376a.75.75 0 0 0-1.04.208m8.68 2.613a4.5 4.5 0 0 0-1.387-.877l2.915-1.944a.75.75 0 1 1 .832 1.248z' opacity='.5'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 14.25a.75.75 0 0 1 .75.75v7h-1.5v-7a.75.75 0 0 1 .75-.75' clip-rule='evenodd'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:card-search-broken,[i-solar\:card-search-broken=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' d='M14 4c3.771 0 5.657 0 6.828 1.172S22 8.229 22 12v1M10 4C6.229 4 4.343 4 3.172 5.172S2 8.229 2 12s0 5.657 1.172 6.828S6.229 20 10 20h3m-3-4H6'/%3E%3Ccircle cx='18' cy='17' r='3'/%3E%3Cpath stroke-linecap='round' d='m20.5 19.5l1 1M2 10h5m15 0H11'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:chat-round-line-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12c0 1.6.376 3.112 1.043 4.453c.178.356.237.763.134 1.148l-.595 2.226a1.3 1.3 0 0 0 1.591 1.592l2.226-.596a1.63 1.63 0 0 1 1.149.133A9.96 9.96 0 0 0 12 22' opacity='.5'/%3E%3Cpath fill='currentColor' d='M7.825 12.85a.825.825 0 0 0 0 1.65h6.05a.825.825 0 0 0 0-1.65zm0-3.85a.825.825 0 0 0 0 1.65h8.8a.825.825 0 0 0 0-1.65z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:chat-square-like-bold-duotone,[i-solar\:chat-square-like-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m13.629 20.472l-.542.916c-.483.816-1.69.816-2.174 0l-.542-.916c-.42-.71-.63-1.066-.968-1.262c-.338-.197-.763-.204-1.613-.219c-1.256-.021-2.043-.098-2.703-.372a5 5 0 0 1-2.706-2.706C2 14.995 2 13.83 2 11.5v-1c0-3.273 0-4.91.737-6.112a5 5 0 0 1 1.65-1.651C5.59 2 7.228 2 10.5 2h3c3.273 0 4.91 0 6.113.737a5 5 0 0 1 1.65 1.65C22 5.59 22 7.228 22 10.5v1c0 2.33 0 3.495-.38 4.413a5 5 0 0 1-2.707 2.706c-.66.274-1.447.35-2.703.372c-.85.015-1.275.022-1.613.219c-.338.196-.548.551-.968 1.262' opacity='.5'/%3E%3Cpath fill='currentColor' d='M10.99 14.308c-1.327-.978-3.49-2.84-3.49-4.593c0-2.677 2.475-3.677 4.5-1.609c2.025-2.068 4.5-1.068 4.5 1.609c0 1.752-2.163 3.615-3.49 4.593c-.454.335-.681.502-1.01.502s-.556-.167-1.01-.502'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:check-circle-bold-duotone,[i-solar\:check-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M16.03 8.97a.75.75 0 0 1 0 1.06l-5 5a.75.75 0 0 1-1.06 0l-2-2a.75.75 0 1 1 1.06-1.06l1.47 1.47l2.235-2.235L14.97 8.97a.75.75 0 0 1 1.06 0'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:check-circle-line-duotone,[i-solar\:check-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m8.5 12.5l2 2l5-5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:close-circle-bold-duotone,[i-solar\:close-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.97 8.97a.75.75 0 0 1 1.06 0L12 10.94l1.97-1.97a.75.75 0 1 1 1.06 1.06L13.06 12l1.97 1.97a.75.75 0 0 1-1.06 1.06L12 13.06l-1.97 1.97a.75.75 0 0 1-1.06-1.06L10.94 12l-1.97-1.97a.75.75 0 0 1 0-1.06'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:close-circle-line-duotone,[i-solar\:close-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='m14.5 9.5l-5 5m0-5l5 5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:code-bold-duotone,[i-solar\:code-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16.443 7.328a.75.75 0 0 1 1.059-.056l1.737 1.564c.737.663 1.347 1.212 1.767 1.71c.44.525.754 1.088.754 1.784c0 .695-.313 1.258-.754 1.782c-.42.499-1.03 1.049-1.767 1.711l-1.737 1.564a.75.75 0 1 1-1.004-1.115l1.697-1.527c.788-.709 1.319-1.19 1.663-1.598c.33-.393.402-.622.402-.817c0-.196-.072-.425-.402-.818c-.344-.409-.875-.889-1.663-1.598l-1.697-1.527a.75.75 0 0 1-.056-1.06m-8.94 1.06a.75.75 0 0 0-1.004-1.115L4.761 8.836c-.737.663-1.347 1.212-1.767 1.71c-.44.525-.754 1.088-.754 1.784c0 .695.313 1.258.754 1.782c.42.499 1.03 1.049 1.767 1.711l1.737 1.564a.75.75 0 1 0 1.004-1.115l-1.697-1.527c-.788-.709-1.319-1.19-1.663-1.598c-.33-.393-.402-.622-.402-.817c0-.196.072-.425.402-.818c.344-.409.875-.889 1.663-1.598z'/%3E%3Cpath fill='currentColor' d='M14.182 4.276a.75.75 0 0 1 .53.918l-3.974 14.83a.75.75 0 1 1-1.449-.389l3.974-14.83a.75.75 0 0 1 .919-.53' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:danger-circle-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10s10-4.477 10-10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12 6.25a.75.75 0 0 1 .75.75v6a.75.75 0 0 1-1.5 0V7a.75.75 0 0 1 .75-.75M12 17a1 1 0 1 0 0-2a1 1 0 0 0 0 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:danger-triangle-bold-duotone,[i-solar\:danger-triangle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12 3c-2.31 0-3.77 2.587-6.688 7.762l-.364.644c-2.425 4.3-3.638 6.45-2.542 8.022S6.214 21 11.636 21h.728c5.422 0 8.134 0 9.23-1.572s-.117-3.722-2.542-8.022l-.364-.645C15.77 5.587 14.311 3 12 3' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12 7.25a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-1.5 0V8a.75.75 0 0 1 .75-.75M12 17a1 1 0 1 0 0-2a1 1 0 0 0 0 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:dialog-2-bold-duotone,[i-solar\:dialog-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='m10.404 22.48l.275-.465c.44-.745.66-1.117 1.012-1.325c.351-.207.81-.222 1.725-.252c.859-.027 1.436-.102 1.93-.306a4.24 4.24 0 0 0 2.295-2.296c.323-.779.323-1.767.323-3.743v-.848c0-2.777 0-4.165-.625-5.185c-.35-.57-.83-1.05-1.4-1.4c-1.02-.625-2.408-.625-5.185-.625H8.21c-2.777 0-4.165 0-5.185.625c-.57.35-1.05.83-1.4 1.4C1 9.08 1 10.468 1 13.245v.848c0 1.976 0 2.964.323 3.744a4.24 4.24 0 0 0 2.295 2.295c.494.204 1.07.28 1.93.306c.916.03 1.374.045 1.725.252c.35.208.571.58 1.012 1.325l.275.465c.41.692 1.434.692 1.844 0m2.789-7.963a1.06 1.06 0 1 0 0-2.12a1.06 1.06 0 0 0 0 2.12m-2.65-1.06a1.06 1.06 0 1 1-2.121 0a1.06 1.06 0 0 1 2.12 0m-4.772 1.06a1.06 1.06 0 1 0 0-2.12a1.06 1.06 0 0 0 0 2.12' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M15.486 1c1.267 0 2.274 0 3.082.077c.829.079 1.53.244 2.153.626a4.8 4.8 0 0 1 1.575 1.575c.383.624.548 1.325.627 2.153c.076.808.076 1.816.076 3.082v.866c0 .901 0 1.619-.04 2.2c-.04.595-.125 1.106-.323 1.584a4.77 4.77 0 0 1-2.67 2.617q-.21.082-.368.135h-1.65c.016-.499.016-1.093.016-1.822v-.848c0-2.777 0-4.165-.625-5.185c-.35-.57-.83-1.05-1.4-1.4c-1.02-.625-2.408-.625-5.185-.625H8.21c-.986 0-1.796 0-2.478.028v-1.65q.05-.17.13-.396q.133-.389.346-.739a4.8 4.8 0 0 1 1.576-1.575c.624-.382 1.324-.547 2.153-.626C10.745 1 11.752 1 13.019 1z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:document-text-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M3 10c0-3.771 0-5.657 1.172-6.828S7.229 2 11 2h2c3.771 0 5.657 0 6.828 1.172S21 6.229 21 10v4c0 3.771 0 5.657-1.172 6.828S16.771 22 13 22h-2c-3.771 0-5.657 0-6.828-1.172S3 17.771 3 14z'/%3E%3Cpath stroke-linecap='round' d='M8 12h8M8 8h8m-8 8h5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:emoji-funny-square-bold-duotone,[i-solar\:emoji-funny-square-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M6.504 21.52c1.633.943 3.706.387 7.853-.724s6.22-1.666 7.163-3.3s.387-3.706-.724-7.853s-1.666-6.22-3.3-7.163s-3.706-.388-7.853.724c-4.147 1.11-6.22 1.666-7.163 3.3s-.388 3.706.724 7.853c1.11 4.147 1.666 6.22 3.3 7.163' opacity='.5'/%3E%3Cpath fill='currentColor' d='M14.898 11.224c.533-.143.792-.908.578-1.708s-.821-1.333-1.355-1.19c-.533.143-.792.907-.577 1.708c.214.8.82 1.333 1.354 1.19m-5.796 1.553c.534-.143.792-.908.578-1.708s-.82-1.333-1.354-1.19s-.792.907-.578 1.708s.82 1.333 1.354 1.19m-.917 2.974a.75.75 0 0 1 .91-.545c1.13.283 2.428.287 3.746-.066c1.318-.354 2.44-1.006 3.278-1.816a.75.75 0 1 1 1.043 1.078a8.4 8.4 0 0 1-1.15.928l.159.322a1.5 1.5 0 1 1-2.693 1.322l-.196-.4l-.053.014c-1.555.417-3.112.42-4.499.073a.75.75 0 0 1-.545-.91'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:eye-closed-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2.919 6.605a1 1 0 0 0-1.838.79l.002.003l.003.007l.01.021l.032.072q.04.09.12.25c.105.21.262.506.47.857c.41.687 1.027 1.6 1.872 2.52l-.797.797a1 1 0 1 0 1.414 1.414l.84-.84c.565.455 1.197.885 1.897 1.256l-.782 1.202a1 1 0 0 0 1.676 1.091l.985-1.514c.677.208 1.402.355 2.177.425V16.5a1 1 0 0 0 1 1V13c-2.748 0-4.819-1.199-6.304-2.59l-.024-.022a12 12 0 0 1-.564-.569a13.4 13.4 0 0 1-1.67-2.237a12 12 0 0 1-.516-.968zm-1.838.79L2 7c-.92.394-.919.395-.919.395' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M15.22 12.398A8.7 8.7 0 0 1 12 13v4.5a1 1 0 0 0 1-1v-1.544c.772-.07 1.497-.217 2.176-.425l.986 1.515a1 1 0 0 0 1.676-1.091l-.782-1.203c.701-.37 1.332-.8 1.897-1.256l.84.84a1 1 0 1 0 1.414-1.414l-.797-.798a15.4 15.4 0 0 0 2.302-3.296a10 10 0 0 0 .19-.395l.011-.026l.004-.008l.002-.005a1 1 0 1 0-1.838-.788l-.005.011a5 5 0 0 1-.146.302a13 13 0 0 1-2.614 3.48c-.841.79-1.87 1.517-3.095 2' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:face-scan-circle-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M10.801 2.57a.71.71 0 0 1-.555.838a8.78 8.78 0 0 0-6.838 6.838a.71.71 0 1 1-1.394-.283a10.2 10.2 0 0 1 7.949-7.949a.71.71 0 0 1 .838.556M2.57 13.199a.71.71 0 0 1 .838.555a8.78 8.78 0 0 0 6.838 6.838a.71.71 0 1 1-.283 1.394a10.2 10.2 0 0 1-7.948-7.949a.71.71 0 0 1 .555-.838M13.199 2.57a.71.71 0 0 1 .838-.556a10.2 10.2 0 0 1 7.949 7.949a.711.711 0 0 1-1.394.283a8.78 8.78 0 0 0-6.838-6.838a.71.71 0 0 1-.555-.838m8.231 10.629a.71.71 0 0 1 .556.838a10.2 10.2 0 0 1-7.949 7.949a.711.711 0 0 1-.283-1.394a8.78 8.78 0 0 0 6.838-6.838a.71.71 0 0 1 .838-.555' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M12 19.583a7.583 7.583 0 1 0 0-15.166a7.583 7.583 0 0 0 0 15.166' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.94 14.539a.71.71 0 0 1 .995-.148c.59.437 1.3.69 2.065.69a3.45 3.45 0 0 0 2.065-.69a.71.71 0 1 1 .847 1.142a4.87 4.87 0 0 1-2.912.97a4.87 4.87 0 0 1-2.911-.97a.71.71 0 0 1-.148-.994m5.547-2.895c.458 0 .83-.557.83-1.244s-.372-1.244-.83-1.244s-.83.557-.83 1.244s.372 1.244.83 1.244m-4.976 0c.458 0 .83-.557.83-1.244s-.372-1.244-.83-1.244s-.83.557-.83 1.244s.372 1.244.83 1.244'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:filters-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M18 8A6 6 0 1 1 6 8a6 6 0 0 1 12 0'/%3E%3Cpath fill='currentColor' d='M13.58 13.79a6 6 0 0 1-7.16-3.58a6 6 0 1 0 7.16 3.58' opacity='.7'/%3E%3Cpath fill='currentColor' d='M13.58 13.79c.271.684.42 1.43.42 2.21a6 6 0 0 1-2 4.472a6 6 0 1 0 5.58-10.262a6.01 6.01 0 0 1-4 3.58' opacity='.4'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:ghost-bold-duotone,[i-solar\:ghost-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 19.206V12c0-5.523-4.477-10-10-10S2 6.477 2 12v7.206a1.727 1.727 0 0 0 2.5 1.544a2.89 2.89 0 0 1 2.896.18a2.89 2.89 0 0 0 3.208 0l.353-.234a1.88 1.88 0 0 1 2.086 0l.353.235a2.89 2.89 0 0 0 3.208 0a2.89 2.89 0 0 1 2.897-.18A1.727 1.727 0 0 0 22 19.206' opacity='.5'/%3E%3Cpath fill='currentColor' d='M15 12c.552 0 1-.672 1-1.5S15.552 9 15 9s-1 .672-1 1.5s.448 1.5 1 1.5m-5-1.5c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S8.448 9 9 9s1 .672 1 1.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:info-circle-line-duotone,[i-solar\:info-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='currentColor' stroke-width='1.5' opacity='.5'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-width='1.5' d='M12 17v-6'/%3E%3Ccircle cx='1' cy='1' r='1' fill='currentColor' transform='matrix(1 0 0 -1 11 9)'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:layers-bold-duotone,[i-solar\:layers-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4.979 9.685C2.993 8.891 2 8.494 2 8s.993-.89 2.979-1.685l2.808-1.123C9.773 4.397 10.767 4 12 4s2.227.397 4.213 1.192l2.808 1.123C21.007 7.109 22 7.506 22 8s-.993.89-2.979 1.685l-2.808 1.124C14.227 11.603 13.233 12 12 12s-2.227-.397-4.213-1.191z'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M2 8c0 .494.993.89 2.979 1.685l2.808 1.124C9.773 11.603 10.767 12 12 12s2.227-.397 4.213-1.191l2.808-1.124C21.007 8.891 22 8.494 22 8s-.993-.89-2.979-1.685l-2.808-1.123C14.227 4.397 13.233 4 12 4s-2.227.397-4.213 1.192L4.98 6.315C2.993 7.109 2 7.506 2 8' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='m5.766 10l-.787.315C2.993 11.109 2 11.507 2 12s.993.89 2.979 1.685l2.808 1.124C9.773 15.603 10.767 16 12 16s2.227-.397 4.213-1.191l2.808-1.124C21.007 12.891 22 12.493 22 12s-.993-.89-2.979-1.685L18.234 10l-2.021.809C14.227 11.603 13.233 12 12 12s-2.227-.397-4.213-1.191z' opacity='.7'/%3E%3Cpath fill='currentColor' d='m5.766 14l-.787.315C2.993 15.109 2 15.507 2 16s.993.89 2.979 1.685l2.808 1.124C9.773 19.603 10.767 20 12 20s2.227-.397 4.213-1.192l2.808-1.123C21.007 16.891 22 16.494 22 16c0-.493-.993-.89-2.979-1.685L18.234 14l-2.021.809C14.227 15.603 13.233 16 12 16s-2.227-.397-4.213-1.191z' opacity='.4'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:leaf-bold-duotone,[i-solar\:leaf-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 22c-4.418 0-8-3.646-8-8.143c0-4.462 2.553-9.67 6.537-11.531A3.45 3.45 0 0 1 12 2z' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M13.463 2.326A3.45 3.45 0 0 0 12 2v7l4.432-4.432c-.863-.947-1.86-1.724-2.97-2.242' opacity='.3'/%3E%3Cpath fill='currentColor' d='M12 9v5.5l6.614-6.614c-.572-1.22-1.308-2.357-2.182-3.318z' opacity='.4'/%3E%3Cpath fill='currentColor' d='m12 19.5l7.811-7.811a15 15 0 0 0-1.197-3.803L12 14.5z' opacity='.6'/%3E%3Cpath fill='currentColor' d='M19.811 11.689L12 19.5V22c4.418 0 8-3.646 8-8.143c0-.71-.064-1.438-.189-2.168' opacity='.7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:magic-stick-2-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M16.714 2.127c-.836-.43-1.922.263-4.095 1.65l-.562.36c-.618.394-.927.591-1.273.648c-.347.056-.692-.034-1.382-.215l-.628-.164C6.345 3.769 5.13 3.45 4.436 4.13s-.412 1.908.157 4.363l.147.635c.161.697.242 1.046.177 1.393c-.066.346-.27.65-.68 1.26l-.372.555c-1.439 2.145-2.158 3.217-1.753 4.067c.406.85 1.668.915 4.192 1.045l.654.033c.717.037 1.076.056 1.382.213c.306.158.524.436.962.994l.398.507c1.539 1.962 2.309 2.943 3.255 2.788c.945-.154 1.441-1.342 2.433-3.717l.257-.614c.282-.675.422-1.012.677-1.261c.255-.25.595-.382 1.274-.647l.618-.24c2.39-.933 3.586-1.4 3.765-2.345s-.777-1.744-2.688-3.342l-.495-.413c-.543-.454-.815-.68-.963-.992s-.158-.672-.175-1.393l-.016-.657c-.062-2.538-.093-3.806-.928-4.236'/%3E%3Cpath fill='currentColor' d='M15.93 16.991c.127-.268.239-.45.392-.6c.172-.167.382-.282.71-.42l4.498 4.499a.75.75 0 0 1-1.06 1.06z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:magic-stick-3-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M3.845 3.845a2.883 2.883 0 0 0 0 4.077L5.432 9.51c.012-.014.555.503.568.49l4-4c.013-.013-.504-.556-.49-.568L7.922 3.845a2.883 2.883 0 0 0-4.077 0m1.288 11.462a.483.483 0 0 1 .9 0l.157.4a.48.48 0 0 0 .272.273l.398.157a.486.486 0 0 1 0 .903l-.398.158a.48.48 0 0 0-.272.273l-.157.4a.483.483 0 0 1-.9 0l-.157-.4a.48.48 0 0 0-.272-.273l-.398-.158a.486.486 0 0 1 0-.903l.398-.157a.48.48 0 0 0 .272-.274z' opacity='.5'/%3E%3Cpath fill='currentColor' d='M19.967 9.13a.483.483 0 0 1 .9 0l.156.399c.05.125.148.224.273.273l.398.158a.486.486 0 0 1 0 .902l-.398.158a.5.5 0 0 0-.273.273l-.156.4a.483.483 0 0 1-.9 0l-.157-.4a.5.5 0 0 0-.272-.273l-.398-.158a.486.486 0 0 1 0-.902l.398-.158a.5.5 0 0 0 .272-.273z' opacity='.2'/%3E%3Cpath fill='currentColor' d='M16.1 2.307a.483.483 0 0 1 .9 0l.43 1.095a.48.48 0 0 0 .272.274l1.091.432a.486.486 0 0 1 0 .903l-1.09.432a.5.5 0 0 0-.273.273L17 6.81a.483.483 0 0 1-.9 0l-.43-1.095a.5.5 0 0 0-.273-.273l-1.09-.432a.486.486 0 0 1 0-.903l1.09-.432a.5.5 0 0 0 .273-.274z' opacity='.7'/%3E%3Cpath fill='currentColor' d='M10.568 6.49c-.012.014-.555-.503-.568-.49l-4 4c-.013.013.504.556.49.568l9.588 9.587a2.883 2.883 0 1 0 4.078-4.077z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:magnifer-line-duotone,[i-solar\:magnifer-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cdefs%3E%3Cmask id='solarMagniferLineDuotone0'%3E%3Cg fill='none' stroke-width='1.5'%3E%3Ccircle cx='11.5' cy='11.5' r='9.5' stroke='gray'/%3E%3Cpath stroke='%23fff' stroke-linecap='round' d='M18.5 18.5L22 22'/%3E%3C/g%3E%3C/mask%3E%3C/defs%3E%3Cpath fill='currentColor' d='M0 0h24v24H0z' mask='url(%23solarMagniferLineDuotone0)'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:microphone-2-bold-duotone,[i-solar\:microphone-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M4 9a.75.75 0 0 1 .75.75v1a7.25 7.25 0 1 0 14.5 0v-1a.75.75 0 0 1 1.5 0v1a8.75 8.75 0 0 1-8 8.718v2.282a.75.75 0 0 1-1.5 0v-2.282a8.75 8.75 0 0 1-8-8.718v-1A.75.75 0 0 1 4 9' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='M9.75 7.75A.75.75 0 0 0 9 7H6.298a5.751 5.751 0 0 1 11.404 0H13.5a.75.75 0 0 0 0 1.5h4.25V10H13.5a.75.75 0 0 0 0 1.5h4.201a5.751 5.751 0 0 1-11.403 0H9A.75.75 0 0 0 9 10H6.25V8.5H9a.75.75 0 0 0 .75-.75' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12.75 10.75c0 .414.336.75.75.75h4.201l.049-1.5H13.5a.75.75 0 0 0-.75.75m0-3c0 .414.336.75.75.75h4.25L17.701 7H13.5a.75.75 0 0 0-.75.75m-3 0A.75.75 0 0 0 9 7H6.298L6.25 8.5H9a.75.75 0 0 0 .75-.75m0 3A.75.75 0 0 0 9 10H6.25l.048 1.5H9a.75.75 0 0 0 .75-.75'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:microphone-3-bold-duotone,[i-solar\:microphone-3-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M4 9a.75.75 0 0 1 .75.75v1a7.25 7.25 0 1 0 14.5 0v-1a.75.75 0 0 1 1.5 0v1a8.75 8.75 0 0 1-8 8.718v2.282a.75.75 0 0 1-1.5 0v-2.282a8.75 8.75 0 0 1-8-8.718v-1A.75.75 0 0 1 4 9' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 2a5.75 5.75 0 0 0-5.75 5.75v3a5.75 5.75 0 0 0 11.5 0v-3A5.75 5.75 0 0 0 12 2m2 9.5a.75.75 0 0 0 0-1.5h-4a.75.75 0 0 0 0 1.5zm-.25-3.75a.75.75 0 0 1-.75.75h-2A.75.75 0 0 1 11 7h2a.75.75 0 0 1 .75.75' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M14 11.5a.75.75 0 0 0 0-1.5h-4a.75.75 0 0 0 0 1.5zm-1-3A.75.75 0 0 0 13 7h-2a.75.75 0 0 0 0 1.5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:minus-circle-line-duotone,[i-solar\:minus-circle-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='10' opacity='.5'/%3E%3Cpath stroke-linecap='round' d='M15 12H9'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:notes-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='m20.312 12.647l.517-1.932c.604-2.255.907-3.382.68-4.358a4 4 0 0 0-1.162-2.011c-.731-.685-1.859-.987-4.114-1.591c-2.255-.605-3.383-.907-4.358-.68a4 4 0 0 0-2.011 1.162c-.587.626-.893 1.543-1.348 3.209l-.244.905l-.517 1.932c-.605 2.255-.907 3.382-.68 4.358a4 4 0 0 0 1.162 2.011c.731.685 1.859.987 4.114 1.592c2.032.544 3.149.843 4.064.73q.15-.019.294-.052a4 4 0 0 0 2.011-1.16c.685-.732.987-1.86 1.592-4.115Z'/%3E%3Cpath d='M16.415 17.974a4 4 0 0 1-1.068 1.678c-.731.685-1.859.987-4.114 1.591s-3.383.907-4.358.679a4 4 0 0 1-2.011-1.161c-.685-.731-.988-1.859-1.592-4.114l-.517-1.932c-.605-2.255-.907-3.383-.68-4.358a4 4 0 0 1 1.162-2.011c.731-.685 1.859-.987 4.114-1.592q.638-.172 1.165-.309'/%3E%3Cpath stroke-linecap='round' d='m11.777 10l4.83 1.294M11 12.898l2.898.776'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:pallete-2-bold-duotone,[i-solar\:pallete-2-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M10.847 21.934C5.867 21.362 2 17.133 2 12C2 6.477 6.477 2 12 2s10 4.477 10 10c0 5.157-3.283 4.733-6.086 4.37c-1.618-.209-3.075-.397-3.652.518c-.395.626.032 1.406.555 1.929a1.673 1.673 0 0 1 0 2.366c-.523.523-1.235.836-1.97.751' opacity='.5'/%3E%3Cpath fill='currentColor' d='M11.085 7a1.5 1.5 0 1 1-3 0a1.5 1.5 0 0 1 3 0M6.5 13a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3m11 0a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3m-3-4.5a1.5 1.5 0 1 0 0-3a1.5 1.5 0 0 0 0 3'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:pause-circle-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.076 8.617C8 8.801 8 9.034 8 9.5v5c0 .466 0 .699.076.883a1 1 0 0 0 .541.54c.184.077.417.077.883.077s.699 0 .883-.076a1 1 0 0 0 .54-.541c.077-.184.077-.417.077-.883v-5c0-.466 0-.699-.076-.883a1 1 0 0 0-.541-.54C10.199 8 9.966 8 9.5 8s-.699 0-.883.076a1 1 0 0 0-.54.541m4.999 0C13 8.801 13 9.034 13 9.5v5c0 .466 0 .699.076.883a1 1 0 0 0 .541.54c.184.077.417.077.883.077s.699 0 .883-.076a1 1 0 0 0 .54-.541c.077-.184.077-.417.077-.883v-5c0-.466 0-.699-.076-.883a1 1 0 0 0-.541-.54C15.199 8 14.966 8 14.5 8s-.699 0-.883.076a1 1 0 0 0-.54.541'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:people-nearby-bold-duotone,[i-solar\:people-nearby-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19.717 20.362C21.143 19.585 22 18.587 22 17.5c0-1.152-.963-2.204-2.546-3C17.623 13.58 14.962 13 12 13s-5.623.58-7.454 1.5C2.963 15.296 2 16.348 2 17.5s.963 2.204 2.546 3C6.377 21.42 9.038 22 12 22c3.107 0 5.882-.637 7.717-1.638' opacity='.6'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M9.25 4a2.75 2.75 0 1 1 5.5 0a2.75 2.75 0 0 1-5.5 0' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='m8.223 11.574l-2.175-.725a1.532 1.532 0 0 1 .805-2.952l1.898.407l.21.044a15 15 0 0 0 6.288-.044l1.897-.407a1.532 1.532 0 0 1 .806 2.952l-2.175.725c-.263.088-.394.132-.493.193a1 1 0 0 0-.466.986c.016.115.066.244.165.503l1.247 3.242a1.473 1.473 0 0 1-2.654 1.26L12 15l-1.576 2.757a1.473 1.473 0 0 1-2.654-1.26l1.247-3.241c.1-.259.149-.388.165-.503a1 1 0 0 0-.466-.986c-.099-.061-.23-.105-.493-.193'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:play-circle-bold-duotone,[i-solar\:play-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12s4.477 10 10 10' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='m15.414 13.059l-4.72 2.787C9.934 16.294 9 15.71 9 14.786V9.214c0-.924.934-1.507 1.694-1.059l4.72 2.787c.781.462.781 1.656 0 2.118'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:play-circle-broken{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M13.888 9.935C14.963 10.812 15.5 11.25 15.5 12s-.537 1.188-1.612 2.065c-.297.242-.591.47-.862.66c-.237.167-.506.339-.784.508c-1.073.652-1.609.978-2.09.617c-.48-.36-.524-1.116-.612-2.628c-.024-.427-.04-.846-.04-1.222s.016-.795.04-1.222c.088-1.512.132-2.267.612-2.628c.481-.361 1.018-.035 2.09.617c.278.169.547.341.784.508c.27.19.565.418.862.66Z'/%3E%3Cpath stroke-linecap='round' d='M7 3.338A9.95 9.95 0 0 1 12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12c0-1.821.487-3.53 1.338-5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:refresh-bold-duotone,[i-solar\:refresh-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12.079 2.25c-4.794 0-8.734 3.663-9.118 8.333H2a.75.75 0 0 0-.528 1.283l1.68 1.666a.75.75 0 0 0 1.056 0l1.68-1.666a.75.75 0 0 0-.528-1.283h-.893c.38-3.831 3.638-6.833 7.612-6.833a7.66 7.66 0 0 1 6.537 3.643a.75.75 0 1 0 1.277-.786A9.16 9.16 0 0 0 12.08 2.25'/%3E%3Cpath fill='currentColor' d='M20.841 10.467a.75.75 0 0 0-1.054 0L18.1 12.133a.75.75 0 0 0 .527 1.284h.899c-.381 3.83-3.651 6.833-7.644 6.833a7.7 7.7 0 0 1-6.565-3.644a.75.75 0 1 0-1.276.788a9.2 9.2 0 0 0 7.84 4.356c4.809 0 8.766-3.66 9.151-8.333H22a.75.75 0 0 0 .527-1.284z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:running-2-line-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Ccircle cx='18.5' cy='4.5' r='2.5' stroke='currentColor' stroke-width='1.5' opacity='.5'/%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-width='1.5' d='m9 17l-1 1.2c-.738.886-1.107 1.328-1.61 1.564S5.31 20 4.157 20H3'/%3E%3Cpath fill='currentColor' d='M13.65 22a.75.75 0 0 0 1.5 0zm-1.085-5.754l.453-.598zm1.184 1.015l.587-.466zm.557 1.12l.727-.186zm-.802-6.826a.75.75 0 0 0-1.009-1.11zm-2.652 1.61l.703.26zm.07 1.555l-.677.323zm2.728 5.219v2.06h1.5v-2.06zm-1.538-3.095c.663.502.887.679 1.05.884l1.174-.934c-.308-.387-.717-.69-1.319-1.146zm3.038 3.095c0-.755.006-1.264-.117-1.744l-1.453.373c.065.254.07.538.07 1.37zm-1.988-2.211c.197.247.339.534.417.84l1.454-.373a3.75 3.75 0 0 0-.697-1.4zm-.667-7.283c-.42.381-.945.836-1.354 1.224c-.21.198-.41.398-.573.586c-.149.172-.327.4-.42.649l1.407.521c-.007.021.014-.035.146-.187c.116-.134.276-.295.471-.48c.4-.38.865-.778 1.332-1.203zm.523 5.203c-.488-.37-.818-.62-1.056-.832c-.233-.208-.32-.33-.363-.418l-1.354.645c.167.35.423.63.72.894c.292.26.679.552 1.147.907zm-2.87-2.744a2.75 2.75 0 0 0 .097 2.139l1.354-.645a1.25 1.25 0 0 1-.044-.973z' opacity='.5'/%3E%3Cpath fill='currentColor' d='m5.436 8.82l-.37-.652zm-1.807.164a.75.75 0 1 0 .742 1.304zm9.778-1.627l-.286.693zm-2.96-.715l-.055-.748zM21 12.75a.75.75 0 1 0 0-1.5zm-5.232-3.213l-.67.335zM5.065 8.168l-1.436.816l.742 1.304l1.435-.816zm8.627-1.505c-1.344-.553-2.08-.857-3.3-.769l.11 1.496c.823-.06 1.255.099 2.62.66zm-7.886 2.81c2.502-1.422 3.552-2 4.695-2.083l-.109-1.496c-1.56.114-2.949.923-5.327 2.274zm13.949 3.276H21v-1.5h-1.245zm-4.658-2.878a5.21 5.21 0 0 0 4.658 2.878v-1.5A3.71 3.71 0 0 1 16.439 9.2zm1.342-.67a5.33 5.33 0 0 0-2.747-2.538l-.57 1.387c.86.354 1.564 1 1.975 1.821z'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:settings-bold-duotone,[i-solar\:settings-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M14.279 2.152C13.909 2 13.439 2 12.5 2s-1.408 0-1.779.152a2 2 0 0 0-1.09 1.083c-.094.223-.13.484-.145.863a1.62 1.62 0 0 1-.796 1.353a1.64 1.64 0 0 1-1.579.008c-.338-.178-.583-.276-.825-.308a2.03 2.03 0 0 0-1.49.396c-.318.242-.553.646-1.022 1.453c-.47.807-.704 1.21-.757 1.605c-.07.526.074 1.058.4 1.479c.148.192.357.353.68.555c.477.297.783.803.783 1.361s-.306 1.064-.782 1.36c-.324.203-.533.364-.682.556a2 2 0 0 0-.399 1.479c.053.394.287.798.757 1.605s.704 1.21 1.022 1.453c.424.323.96.465 1.49.396c.242-.032.487-.13.825-.308a1.64 1.64 0 0 1 1.58.008c.486.28.774.795.795 1.353c.015.38.051.64.145.863c.204.49.596.88 1.09 1.083c.37.152.84.152 1.779.152s1.409 0 1.779-.152a2 2 0 0 0 1.09-1.083c.094-.223.13-.483.145-.863c.02-.558.309-1.074.796-1.353a1.64 1.64 0 0 1 1.579-.008c.338.178.583.276.825.308c.53.07 1.066-.073 1.49-.396c.318-.242.553-.646 1.022-1.453c.47-.807.704-1.21.757-1.605a2 2 0 0 0-.4-1.479c-.148-.192-.357-.353-.68-.555c-.477-.297-.783-.803-.783-1.361s.306-1.064.782-1.36c.324-.203.533-.364.682-.556a2 2 0 0 0 .399-1.479c-.053-.394-.287-.798-.757-1.605s-.704-1.21-1.022-1.453a2.03 2.03 0 0 0-1.49-.396c-.242.032-.487.13-.825.308a1.64 1.64 0 0 1-1.58-.008a1.62 1.62 0 0 1-.795-1.353c-.015-.38-.051-.64-.145-.863a2 2 0 0 0-1.09-1.083' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M15.523 12c0 1.657-1.354 3-3.023 3s-3.023-1.343-3.023-3S10.83 9 12.5 9s3.023 1.343 3.023 3'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:settings-minimalistic-bold-duotone,[i-solar\:settings-minimalistic-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M12.428 2c-1.114 0-2.129.6-4.157 1.802l-.686.406C5.555 5.41 4.542 6.011 3.985 7c-.557.99-.557 2.19-.557 4.594v.812c0 2.403 0 3.605.557 4.594s1.57 1.59 3.6 2.791l.686.407C10.299 21.399 11.314 22 12.428 22s2.128-.6 4.157-1.802l.686-.407c2.028-1.2 3.043-1.802 3.6-2.791c.557-.99.557-2.19.557-4.594v-.812c0-2.403 0-3.605-.557-4.594s-1.572-1.59-3.6-2.792l-.686-.406C14.555 2.601 13.542 2 12.428 2' clip-rule='evenodd' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12.428 8.25a3.75 3.75 0 1 0 0 7.5a3.75 3.75 0 0 0 0-7.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:stop-circle-bold-duotone,[i-solar\:stop-circle-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12S6.477 2 12 2s10 4.477 10 10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M8.586 8.586C8 9.172 8 10.114 8 12s0 2.828.586 3.414S10.114 16 12 16s2.828 0 3.414-.586S16 13.886 16 12s0-2.828-.586-3.414S13.886 8 12 8s-2.828 0-3.414.586'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:trash-bin-trash-linear,[i-solar\:trash-bin-trash-linear=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' d='M20.5 6h-17m15.333 2.5l-.46 6.9c-.177 2.654-.265 3.981-1.13 4.79s-2.196.81-4.856.81h-.774c-2.66 0-3.991 0-4.856-.81c-.865-.809-.954-2.136-1.13-4.79l-.46-6.9M9.5 11l.5 5m4.5-5l-.5 5'/%3E%3Cpath d='M6.5 6h.11a2 2 0 0 0 1.83-1.32l.034-.103l.097-.291c.083-.249.125-.373.18-.479a1.5 1.5 0 0 1 1.094-.788C9.962 3 10.093 3 10.355 3h3.29c.262 0 .393 0 .51.019a1.5 1.5 0 0 1 1.094.788c.055.106.097.23.18.479l.097.291A2 2 0 0 0 17.5 6'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:tuning-square-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath d='M2 12c0-4.714 0-7.071 1.464-8.536C4.93 2 7.286 2 12 2s7.071 0 8.535 1.464C22 4.93 22 7.286 22 12s0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12Z'/%3E%3Ccircle cx='8' cy='10' r='2'/%3E%3Ccircle cx='2' cy='2' r='2' transform='matrix(1 0 0 -1 14 16)'/%3E%3Cpath stroke-linecap='round' d='M8 14v5m8-9V5M8 5v1m8 13v-1'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:undo-left-bold-duotone{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M7.53 3.47a.75.75 0 0 1 0 1.06L5.06 7l2.47 2.47a.75.75 0 1 1-1.06 1.06l-3-3a.75.75 0 0 1 0-1.06l3-3a.75.75 0 0 1 1.06 0' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' d='m5.06 7l.75-.75h9.226c.904 0 1.633 0 2.222.053c.606.055 1.136.172 1.617.45a3.75 3.75 0 0 1 1.372 1.372c.278.481.395 1.011.45 1.617c.053.589.053 1.318.053 2.222v.072c0 .904 0 1.633-.053 2.222c-.055.606-.172 1.136-.45 1.617a3.75 3.75 0 0 1-1.372 1.373c-.481.277-1.011.394-1.617.449c-.589.053-1.318.053-2.222.053H8a.75.75 0 0 1 0-1.5h7c.948 0 1.61 0 2.122-.047c.502-.046.788-.13 1.003-.254a2.25 2.25 0 0 0 .823-.824c.125-.215.21-.5.255-1.003c.046-.512.047-1.174.047-2.122s0-1.61-.047-2.122c-.046-.503-.13-.788-.255-1.003a2.25 2.25 0 0 0-.823-.824c-.215-.124-.5-.208-1.003-.254c-.512-.046-1.174-.047-2.122-.047H5.81z' opacity='.5'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:upload-minimalistic-bold,[i-solar\:upload-minimalistic-bold=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12.554 2.494a.75.75 0 0 0-1.107 0l-4 4.375A.75.75 0 0 0 8.553 7.88l2.696-2.95V16a.75.75 0 0 0 1.5 0V4.932l2.697 2.95a.75.75 0 1 0 1.107-1.013z'/%3E%3Cpath fill='currentColor' d='M3.75 15a.75.75 0 0 0-1.5 0v.055c0 1.367 0 2.47.117 3.337c.12.9.38 1.658.981 2.26c.602.602 1.36.86 2.26.982c.867.116 1.97.116 3.337.116h6.11c1.367 0 2.47 0 3.337-.116c.9-.122 1.658-.38 2.26-.982s.86-1.36.982-2.26c.116-.867.116-1.97.116-3.337V15a.75.75 0 0 0-1.5 0c0 1.435-.002 2.436-.103 3.192c-.099.734-.28 1.122-.556 1.399c-.277.277-.665.457-1.4.556c-.755.101-1.756.103-3.191.103H9c-1.435 0-2.437-.002-3.192-.103c-.734-.099-1.122-.28-1.399-.556c-.277-.277-.457-.665-.556-1.4c-.101-.755-.103-1.756-.103-3.191'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:upload-square-line-duotone,[i-solar\:upload-square-line-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 17v-7m0 0l3 3m-3-3l-3 3'/%3E%3Cpath stroke-linecap='round' d='M16 7H8'/%3E%3Cpath d='M2 12c0-4.714 0-7.071 1.464-8.536C4.93 2 7.286 2 12 2s7.071 0 8.535 1.464C22 4.93 22 7.286 22 12s0 7.071-1.465 8.535C19.072 22 16.714 22 12 22s-7.071 0-8.536-1.465C2 19.072 2 16.714 2 12Z' opacity='.5'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:user-rounded-linear{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none' stroke='currentColor' stroke-width='1.5'%3E%3Ccircle cx='12' cy='6' r='4'/%3E%3Cellipse cx='12' cy='17' rx='7' ry='4'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:user-speak-rounded-bold-duotone,[i-solar\:user-speak-rounded-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Ccircle cx='10' cy='6.75' r='4' fill='currentColor'/%3E%3Cellipse cx='10' cy='17.75' fill='currentColor' opacity='.5' rx='7' ry='4'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M18.357 2.364a.75.75 0 0 1 1.029-.257L19 2.75l.386-.643h.001l.002.002l.004.002l.01.006l.113.076c.07.049.166.12.277.212c.222.185.512.462.802.838c.582.758 1.155 1.914 1.155 3.507s-.573 2.75-1.155 3.507c-.29.376-.58.653-.802.838a4 4 0 0 1-.363.27l-.028.018l-.01.006l-.003.002l-.002.001s-.001.001-.387-.642l.386.643a.75.75 0 0 1-.776-1.283l.005-.004l.041-.027q.06-.042.177-.136c.152-.128.362-.326.573-.6c.417-.542.844-1.386.844-2.593s-.427-2.05-.844-2.593a3.8 3.8 0 0 0-.573-.6a3 3 0 0 0-.218-.163l-.005-.003a.75.75 0 0 1-.253-1.027' clip-rule='evenodd'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M16.33 4.415a.75.75 0 0 1 1.006-.336L17 4.75l.336-.67h.001l.002.001l.004.002l.008.004l.022.012a2 2 0 0 1 .233.153c.136.102.31.254.48.467c.349.436.664 1.099.664 2.031s-.316 1.595-.664 2.031a2.7 2.7 0 0 1-.654.586l-.06.034l-.02.012l-.01.004l-.003.002l-.002.001l-.33-.657l.329.658a.75.75 0 0 1-.685-1.335l.003-.001l.052-.036c.052-.04.13-.106.209-.205c.15-.189.335-.526.335-1.094s-.184-.905-.335-1.094a1.2 1.2 0 0 0-.261-.24l-.003-.002a.75.75 0 0 1-.322-1' clip-rule='evenodd'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-solar\:volume-loud-bold-duotone,[i-solar\:volume-loud-bold-duotone=""]{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M2.003 11.716c.037-1.843.056-2.764.668-3.552a3 3 0 0 1 .413-.431c.752-.636 1.746-.636 3.733-.636c.71 0 1.065 0 1.403-.092q.105-.03.209-.067c.33-.121.627-.33 1.22-.746c2.338-1.645 3.508-2.467 4.489-2.11c.188.069.37.168.533.29c.848.635.913 2.115 1.042 5.073c.048 1.096.08 2.034.08 2.555s-.032 1.46-.08 2.555c-.13 2.958-.194 4.438-1.042 5.073a2.1 2.1 0 0 1-.533.29c-.982.357-2.15-.465-4.49-2.11c-.592-.416-.889-.625-1.22-.746a3 3 0 0 0-.208-.067c-.338-.092-.693-.092-1.403-.092c-1.987 0-2.98 0-3.733-.636a3 3 0 0 1-.413-.43c-.612-.79-.63-1.71-.668-3.552a14 14 0 0 1 0-.57'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M19.49 5.552a.66.66 0 0 1 .97.094l-.53.471l.53-.47h.002v.002l.004.004l.007.009l.078.112a5 5 0 0 1 .187.305c.149.265.339.652.526 1.171C21.64 8.291 22 9.851 22 12s-.36 3.71-.736 4.75c-.187.52-.377.907-.526 1.172a5 5 0 0 1-.265.417l-.007.009l-.003.003l-.001.002s-.001.001-.531-.47l.53.471a.66.66 0 0 1-.972.094a.77.77 0 0 1-.091-1.03l.003-.005l.028-.04a3 3 0 0 0 .126-.208c.11-.195.264-.506.422-.943c.314-.871.643-2.252.643-4.222c0-1.969-.329-3.35-.643-4.222a6 6 0 0 0-.422-.942a3 3 0 0 0-.126-.207l-.028-.041l-.003-.004' clip-rule='evenodd' opacity='.4'/%3E%3Cpath fill='currentColor' fill-rule='evenodd' d='M17.757 8.416c.333-.197.753-.07.938.286l-.603.357l.603-.357l.001.002l.002.003l.003.007l.01.018l.024.053q.028.063.07.17c.053.145.12.35.185.62c.13.54.252 1.337.252 2.425c0 1.089-.122 1.886-.252 2.426c-.065.27-.132.475-.186.619a3 3 0 0 1-.094.223l-.009.018l-.003.007l-.002.003v.002s-.001.001-.604-.356l.603.357c-.185.355-.605.483-.938.286c-.33-.196-.45-.638-.272-.991l.004-.01l.035-.085c.032-.086.08-.23.13-.438c.1-.416.208-1.09.208-2.06c0-.971-.108-1.645-.208-2.061a4 4 0 0 0-.165-.523l-.004-.01c-.179-.354-.058-.796.272-.991' clip-rule='evenodd' opacity='.7'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-svg-spinners\:3-dots-fade{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Ccircle cx='4' cy='12' r='3' fill='currentColor'%3E%3Canimate id='svgSpinners3DotsFade0' fill='freeze' attributeName='opacity' begin='0;svgSpinners3DotsFade1.end-0.25s' dur='0.75s' values='1;.2'/%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='3' fill='currentColor' opacity='.4'%3E%3Canimate fill='freeze' attributeName='opacity' begin='svgSpinners3DotsFade0.begin+0.15s' dur='0.75s' values='1;.2'/%3E%3C/circle%3E%3Ccircle cx='20' cy='12' r='3' fill='currentColor' opacity='.3'%3E%3Canimate id='svgSpinners3DotsFade1' fill='freeze' attributeName='opacity' begin='svgSpinners3DotsFade0.begin+0.3s' dur='0.75s' values='1;.2'/%3E%3C/circle%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-svg-spinners\:ring-resize{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg stroke='currentColor'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-linecap='round' stroke-width='3'%3E%3Canimate attributeName='stroke-dasharray' calcMode='spline' dur='1.5s' keySplines='0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1' keyTimes='0;0.475;0.95;1' repeatCount='indefinite' values='0 150;42 150;42 150;42 150'/%3E%3Canimate attributeName='stroke-dashoffset' calcMode='spline' dur='1.5s' keySplines='0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1' keyTimes='0;0.475;0.95;1' repeatCount='indefinite' values='0;-16;-59;-59'/%3E%3C/circle%3E%3CanimateTransform attributeName='transform' dur='2s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.i-vscode-icons\:file-type-minecraft{background:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='%2352a535' d='M30 2H2v28h28z'/%3E%3Cpath fill='%2386d562' d='M24.4 13.2h-5.6v.47h5.6zm-5.6 8.4h-5.6v.47h5.6zm2.8 2.8h-2.8v.47h2.8zm-8.4 0h-2.8v.47h2.8zm0-11.2H7.6v.47h5.6z'/%3E%3Cpath d='M24.4 13.2V7.6h-5.6v5.6h-5.6V16h-2.8v8.4h2.8v-2.8h5.6v2.8h2.8V16h-2.8v-2.8zM13.2 7.6H7.6v5.6h5.6z'/%3E%3Cpath fill='%232a641c' d='M24.4 7.6h-5.6v.47h5.6zm-5.6 5.6h-5.6v.47h5.6zm-5.6-5.6H7.6v.47h5.6zm0 8.4h-2.8v.47h2.8zm8.4 0h-2.8v.47h2.8z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;width:1.2em;height:1.2em}[i-solar\:danger-circle-bold-duotone~=disabled\:]:disabled{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12s4.477 10 10 10s10-4.477 10-10' opacity='.5'/%3E%3Cpath fill='currentColor' d='M12 6.25a.75.75 0 0 1 .75.75v6a.75.75 0 0 1-1.5 0V7a.75.75 0 0 1 .75-.75M12 17a1 1 0 1 0 0-2a1 1 0 0 0 0 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon)no-repeat;-webkit-mask:var(--un-icon)no-repeat;mask:var(--un-icon)no-repeat;color:inherit;background-color:currentColor;width:1.2em;height:1.2em;-webkit-mask-size:100% 100%;mask-size:100% 100%}.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);font-weight:500;text-decoration:underline}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){border-left:.25em solid var(--un-prose-borders);margin:1em 0;padding-left:1em;font-style:italic}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875em;font-weight:600}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before{content:"`"}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){border-radius:.375rem;padding:1.25rem 1.5rem;overflow-x:auto}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none;background:0 0}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-hr);margin:2em 0}.prose :where(table):not(:where(.not-prose,.not-prose *)){border-collapse:collapse;margin:1em 0;display:block;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;border-radius:.25rem;padding:.25rem .5rem;font-size:.875em}.prose :where(details):not(:where(.not-prose,.not-prose *)){background:var(--un-prose-bg-soft);margin:1em 0;padding:1.25rem 1.5rem}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container,[container=""]{width:100%}.scrollbar-none,[scrollbar-none=""]{scrollbar-width:none}.scrollbar-none::-webkit-scrollbar{display:none}[scrollbar-none=""]::-webkit-scrollbar{display:none}@media (min-width:640px){.container,[container=""]{max-width:640px}}@media (min-width:768px){.container,[container=""]{max-width:768px}}@media (min-width:1024px){.container,[container=""]{max-width:1024px}}@media (min-width:1280px){.container,[container=""]{max-width:1280px}}@media (min-width:1536px){.container,[container=""]{max-width:1536px}}.\[input\:checked\~\&\]{input:checked~&}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none,[pointer-events-none=""],.disabled\:pointer-events-none:disabled{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.sticky,[sticky=""]{position:sticky}.before-position-absolute:before,[before~=absolute]:before,.after\:absolute:after,[after~=absolute]:after{position:absolute}.inset-0,[inset-0=""],.before\:inset-0:before,[before~=inset-0]:before,[after~=inset-0]:after{top:0;bottom:0;left:0;right:0}.inset-x-0,[inset-x-0=""]{left:0;right:0}.inset-y-0{top:0;bottom:0}.bottom-0,[bottom-0=""]{bottom:0}.bottom-11,[bottom-11=""]{bottom:2.75rem}.bottom-2{bottom:.5rem}.left-0,[left-0=""]{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.right--10,[right--10=""]{right:-2.5rem}.right--15,[right--15=""]{right:-3.75rem}.right--5,[right--5=""]{right:-1.25rem}.right-0,[right-0=""],[right~="0"]{right:0}.right-2,[right-2=""]{right:.5rem}.right-4,[right-4=""]{right:1rem}.top--20,[top--20=""]{top:-5rem}.top-\[-32px\]{top:-32px}.top-0,[top-0=""],[top~="0"]{top:0}.top-1\/2,[top~="50%"]{top:50%}.top-2,[top-2=""]{top:.5rem}[bottom~="[calc(100%+8px)]"]{bottom:calc(100% + 8px)}[bottom~="3"]{bottom:.75rem}[right~="3"]{right:.75rem}[top~="[65dvh]"]{top:65dvh}[top~="[calc(100dvh-12rem)]"]{top:calc(100dvh - 12rem)}[top~="[calc(100dvh-15rem)]"]{top:calc(100dvh - 15rem)}.after\:left-\[2px\]:after{left:2px}.after\:top-\[2px\]:after{top:2px}.line-clamp-1,[line-clamp-1=""]{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3,[line-clamp-3=""]{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.z--1,[z--1=""]{z-index:-1}.z--2{z-index:-2}.z-\[9999\]{z-index:9999}.z-0{z-index:0}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100,[z-100=""]{z-index:100}.z-1000{z-index:1000}.z-2,[z-2=""]{z-index:2}.z-3,[z-3=""]{z-index:3}.z-30,[z-30=""]{z-index:30}.z-4,[z-4=""]{z-index:4}.z-99,[z-99=""]{z-index:99}[before~=z-0]:before{z-index:0}[after~=z--2]:after{z-index:-2}.grid,[grid=""],[grid~=\~]{display:grid}.col-span-full{grid-column:1/-1}.auto-cols-\[350px\]{grid-auto-columns:350px}.auto-cols-auto{grid-auto-columns:auto}.grid-auto-rows-\[minmax\(min-content\,max-content\)\]{grid-auto-rows:minmax(min-content,max-content)}.grid-auto-flow-dense{grid-auto-flow:dense}.grid-flow-col{grid-auto-flow:column}.grid-flow-row{grid-auto-flow:row}.cols-\[150px_1fr\],[grid~="cols-[150px_1fr]"]{grid-template-columns:150px 1fr}.cols-\[20px_1fr_60px\],[grid~="cols-[20px_1fr_60px]"]{grid-template-columns:20px 1fr 60px}.grid-cols-\[repeat\(auto-fill\,minmax\(280px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.cols-1,.grid-cols-1,[grid~=cols-1]{grid-template-columns:repeat(1,minmax(0,1fr))}.cols-2,.grid-cols-2,[grid-cols-2=""],[grid~=cols-2]{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0,[m0=""]{margin:0}.m-1,[m-1=""]{margin:.25rem}.m-auto{margin:auto}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-5,[mx-5=""]{margin-left:1.25rem;margin-right:1.25rem}.mx-auto,[mx-auto=""]{margin-left:auto;margin-right:auto}.mx2,[mx2=""]{margin-left:.5rem;margin-right:.5rem}.my{margin-top:1rem;margin-bottom:1rem}.my-0,[my-0=""]{margin-top:0;margin-bottom:0}.my-5,[my-5=""]{margin-top:1.25rem;margin-bottom:1.25rem}.my-auto,[my-auto=""]{margin-top:auto;margin-bottom:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:0}.mb-1,[mb-1=""]{margin-bottom:.25rem}.mb-2,.mb2,[mb-2=""],[mb2=""]{margin-bottom:.5rem}.mb-3,[mb-3=""]{margin-bottom:.75rem}.mb-4,[mb-4=""]{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml{margin-left:1rem}.ml-0\.5,[ml-0\.5=""]{margin-left:.125rem}.ml-auto{margin-left:auto}.mr{margin-right:1rem}.mr-0\!{margin-right:0!important}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-auto{margin-right:auto}.ms{margin-inline-start:1rem}.mt-0\.5{margin-top:.125rem}.mt-1,[mt-1=""]{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4,[mt-4=""]{margin-top:1rem}.mt-auto{margin-top:auto}[ml~="12"]{margin-left:3rem}[mr~="12"]{margin-right:3rem}[box~=border]{box-sizing:border-box}.inline,[inline=""]{display:inline}.block,[block=""]{display:block}.inline-block,[inline-block=""]{display:inline-block}.contents{display:contents}.aspect-square,[aspect-square=""]{aspect-ratio:1}.size-16,[size-16=""]{width:4rem;height:4rem}.size-2{width:.5rem;height:.5rem}.size-20,[size-20=""]{width:5rem;height:5rem}.size-24,[size-24=""],[size~="24"]{width:6rem;height:6rem}.size-3,[size-3=""]{width:.75rem;height:.75rem}.size-5{width:1.25rem;height:1.25rem}.size-6,[size-6=""],[size~="6"]{width:1.5rem;height:1.5rem}.size-60,[size-60=""]{width:15rem;height:15rem}[size~=sm]{width:24rem;height:24rem}.h-0\.5,[h-0\.5=""]{height:.125rem}.h-0\.5lh{height:.5lh}.h-1\.5,[h-1\.5=""]{height:.375rem}.h-10{height:2.5rem}.h-100dvh,[h-100dvh=""],[h~="100dvh"]{height:100dvh}.h-12{height:3rem}.h-16{height:4rem}.h-18,[h-18=""]{height:4.5rem}.h-1lh{height:1lh}.h-2,.h2,[h-2=""]{height:.5rem}.h-24,[h-24=""]{height:6rem}.h-3\.5{height:.875rem}.h-30,[h-30=""]{height:7.5rem}.h-4,[h-4=""]{height:1rem}.h-48,[h-48=""]{height:12rem}.h-5,[h-5=""]{height:1.25rem}.h-6{height:1.5rem}.h-60,[h-60=""]{height:15rem}.h-7,[h-7=""]{height:1.75rem}.h-8,[h-8=""]{height:2rem}.h-auto,[h-auto=""],[h~=auto]{height:auto}.h-fit,[h-fit=""]{height:-moz-fit-content;height:fit-content}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h3{height:.75rem}.max-h-\[10lh\],[max-h~="[10lh]"]{max-height:10lh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[96\%\]{max-height:96%}.max-h-\[calc\(100dvh-7lh\)\]{max-height:calc(100dvh - 7lh)}.max-h-60,[max-h-60=""]{max-height:15rem}.max-h-full{max-height:100%}.max-h-none,[max-h-none=""]{max-height:none}.max-w-2xl{max-width:42rem}.max-w-6xl{max-width:72rem}.max-w-full,[max-w-full=""]{max-width:100%}.max-w-md{max-width:28rem}.min-h-\[120px\],.min-h-120px,[min-h-120px=""]{min-height:120px}.min-h-\[1lh\]{min-height:1lh}.min-h-16,[min-h-16=""]{min-height:4rem}.min-h-40px,[min-h-40px=""]{min-height:40px}.min-h-70dvh,[min-h-70dvh=""]{min-height:70dvh}.min-w-\[150px\]{min-width:150px}.min-w-\[160px\],[min-w~="[160px]"]{min-width:160px}.min-w-\[200px\]{min-width:200px}.min-w-0,[min-w-0=""]{min-width:0}.min-w-2,[min-w-2=""]{min-width:.5rem}.min-w-20,[min-w-20=""]{min-width:5rem}.min-w-20px{min-width:20px}.min-w-50,[min-w-50=""]{min-width:12.5rem}.w-\[92dvw\]{width:92dvw}.w-\[92vw\]{width:92vw}.w-0\!{width:0!important}.w-1{width:.25rem}.w-1\.5,[w-1\.5=""]{width:.375rem}.w-1\/2,[w~="[50%]"]{width:50%}.w-10\%{width:10%}.w-100,[w-100=""]{width:25rem}.w-100vw,[w-100vw=""]{width:100vw}.w-11{width:2.75rem}.w-18,[w-18=""]{width:4.5rem}.w-1lh{width:1lh}.w-2,[w-2=""]{width:.5rem}.w-25\%{width:25%}.w-3\.5{width:.875rem}.w-30,[w-30=""]{width:7.5rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-5,[w-5=""]{width:1.25rem}.w-8,[w-8=""]{width:2rem}.w-90\%{width:90%}.w-95\%{width:95%}.w-auto,[w-auto=""]{width:auto}.w-fit,[w-fit=""]{width:-moz-fit-content;width:fit-content}.w-full,[w-full=""],[w~="100%"],[w~=full]{width:100%}[h~="[14px]"]{height:14px}[h~="[calc(1lh+4px+4px)]"]{height:calc(1lh + 8px)}[h~="300"]{height:75rem}[h~="50dvh"]{height:50dvh}[h~="80dvh"]{height:80dvh}[h~="85dvh"]{height:85dvh}[h~=unset]{height:unset}[max-h~="[300px]"]{max-height:300px}[max-h~="[4.5rem]"]{max-height:4.5rem}[max-h~="[85vh]"]{max-height:85vh}[max-h~="100"]{max-height:25rem}[max-h~="100dvh"]{max-height:100dvh}[max-h~="40%"]{max-height:40%}[max-h~="50"]{max-height:12.5rem}[max-w~="[calc(100dvw-1rem)]"]{max-width:calc(100dvw - 1rem)}[max-w~="500px"]{max-width:500px}[min-h~="[100px]"]{min-height:100px}[min-h~="[calc(1lh+4px+4px)]"]{min-height:calc(1lh + 8px)}[min-h~="100"]{min-height:25rem}[min-h~="120"]{min-height:30rem}[min-w~="1/2"],[min-w~="50%"]{min-width:50%}[min-w~="30%"]{min-width:30%}[min-w~="3em"]{min-width:3em}[min-w~="50vw"]{min-width:50vw}[min-w~="6"]{min-width:1.5rem}[w~="[1px]"]{width:1px}[w~="[calc(1lh+4px+4px)]"]{width:calc(1lh + 8px)}[w~="100dvw"]{width:100dvw}[w~="12.5"]{width:3.125rem}[w~="70%"]{width:70%}.before\:h-full:before{height:100%}.before\:w-1:before{width:.25rem}[before~=h-full]:before{height:100%}[before~=w-25\%]:before{width:25%}.after\:h-5:after{height:1.25rem}.after\:w-5:after{width:1.25rem}[after~=h-full]:after{height:100%}[after~=w-full]:after{width:100%}.max-w-screen-xl,[max-w-screen-xl=""]{max-width:1280px}.flex,[flex=""],[flex~=\~]{display:flex}.inline-flex,[inline-flex=""],[inline-flex~=\~]{display:inline-flex}.flex-1,[flex-1=""],[flex~="1"]{flex:1}.flex-shrink-0,.shrink-0,[flex-shrink-0=""],[shrink-0=""]{flex-shrink:0}.flex-row,[flex-row=""],[flex~=row]{flex-direction:row}[flex~=row-reverse]{flex-direction:row-reverse}.flex-col,[flex-col=""],[flex~=col]{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap,[flex-wrap=""]{flex-wrap:wrap}.origin-left,[origin-left=""]{transform-origin:0}[perspective~="800"]{perspective:800px}.-translate-x-1\/2,.translate-x-\[-50\%\]{--un-translate-x:-50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.-translate-y-1\/2,.translate-y-\[-50\%\],[transform~="translate-y-[-50%]"]{--un-translate-y:-50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-x-\[50\%\],[transform~="translate-x-[50%]"]{--un-translate-x:50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y--2,[transform~=translate-y--2]{--un-translate-y:-.5rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-\[-100\%\],[transform~="translate-y-[-100%]"]{--un-translate-y:-100%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-\[0\.25lh\]{--un-translate-y:.25lh;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-\[50\%\]{--un-translate-y:50%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-1,[translate-y-1=""]{--un-translate-y:.25rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-2,[translate-y-2=""]{--un-translate-y:.5rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.translate-y-4,[translate-y-4=""]{--un-translate-y:1rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-x~="0.5"]{--un-translate-x:.125rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-x~="data-[state=checked]:full"][data-state=checked]{--un-translate-x:100%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-y~="[-80%]"]{--un-translate-y:-80%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[translate-y~="[2px]"]{--un-translate-y:2px;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.peer:checked~.peer-checked\:after\:translate-x-full:after{--un-translate-x:100%;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.\[\&_\.card-cover_img\]\:hover\:translate-y-2:hover .card-cover img,[hover\:translate-y-2=""]:hover{--un-translate-y:.5rem;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.rotate-180{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:180deg;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.scale-100{--un-scale-x:1;--un-scale-y:1;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.scale-125{--un-scale-x:1.25;--un-scale-y:1.25;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.scale-150{--un-scale-x:1.5;--un-scale-y:1.5;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.\[\&_\.card-cover_img\]\:hover\:scale-102:hover .card-cover img{--un-scale-x:1.02;--un-scale-y:1.02;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.hover\:scale-110:hover{--un-scale-x:1.1;--un-scale-y:1.1;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}[hover~=scale-100]:hover{--un-scale-x:1;--un-scale-y:1;transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}.preserve-3d{transform-style:preserve-3d}.transform,[transform=""]{transform:translateX(var(--un-translate-x))translateY(var(--un-translate-y))translateZ(var(--un-translate-z))rotate(var(--un-rotate))rotateX(var(--un-rotate-x))rotateY(var(--un-rotate-y))rotateZ(var(--un-rotate-z))skewX(var(--un-skew-x))skewY(var(--un-skew-y))scaleX(var(--un-scale-x))scaleY(var(--un-scale-y))scaleZ(var(--un-scale-z))}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-pulse,[animate-pulse=""]{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-spin{animation:1s linear infinite spin}.disabled\:cursor-default:disabled{cursor:default}.cursor-pointer,[cursor-pointer=""],[cursor~=pointer]{cursor:pointer}.cursor-not-allowed,.disabled\:cursor-not-allowed:disabled,[cursor~=disabled\:not-allowed]:disabled,[disabled\:cursor-not-allowed=""]:disabled{cursor:not-allowed}.cursor-ew-resize,[cursor-ew-resize=""]{cursor:ew-resize}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}.resize-none,[resize-none=""]{resize:none}.appearance-none,[appearance-none=""]{-webkit-appearance:none;-moz-appearance:none;appearance:none}.place-self-end{place-self:end}.items-start,[items-start=""]{align-items:flex-start}.items-end,[items-end=""]{align-items:flex-end}.items-center,[flex~=items-center],[items-center=""]{align-items:center}.self-end,[self-end=""]{align-self:flex-end}.justify-start{justify-content:flex-start}.justify-end,[justify-end=""]{justify-content:flex-end}.justify-center,[flex~=justify-center],[justify-center=""]{justify-content:center}.justify-between,[justify-between=""]{justify-content:space-between}.gap-0\.5,[gap-0\.5=""]{gap:.125rem}.gap-1,[gap-1=""]{gap:.25rem}.gap-1\.5,[gap-1\.5=""]{gap:.375rem}.gap-2,[flex~=gap-2],[gap-2=""]{gap:.5rem}.gap-3,[flex~=gap-3],[gap-3=""]{gap:.75rem}.gap-4,[flex~=gap-4],[gap-4=""],[grid~=gap-4]{gap:1rem}.gap-5,[gap-5=""]{gap:1.25rem}.gap-6,[flex~=gap-6]{gap:1.5rem}.gap-8{gap:2rem}.gap-x-2,[flex~=gap-x-2]{column-gap:.5rem}.gap-y-0,[flex~=gap-y-0]{row-gap:0}.space-x-1>:not([hidden])~:not([hidden]){--un-space-x-reverse:0;margin-left:calc(.25rem*calc(1 - var(--un-space-x-reverse)));margin-right:calc(.25rem*var(--un-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(.5rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(.5rem*var(--un-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(.75rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(.75rem*var(--un-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(1rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(1rem*var(--un-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(1.5rem*calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(1.5rem*var(--un-space-y-reverse))}[divide~=y]>:not([hidden])~:not([hidden]){--un-divide-y-reverse:0;border-top-width:calc(1px*calc(1 - var(--un-divide-y-reverse)));border-bottom-width:calc(1px*var(--un-divide-y-reverse))}[divide~=gray\/25]>:not([hidden])~:not([hidden]){border-color:#9ca3af40}[border~=dashed],[divide~=dashed]>:not([hidden])~:not([hidden]){border-style:dashed}.of-clip,[of-clip=""]{overflow:clip}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""],[overflow~=hidden]{overflow:hidden}.overflow-auto,[overflow-auto=""]{overflow:auto}.overflow-scroll,[overflow-scroll=""]{overflow:scroll}.of-x-scroll,[of-x-scroll=""]{overflow-x:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto,[overflow-y-auto=""]{overflow-y:auto}.overflow-y-scroll,[overflow-y-scroll=""]{overflow-y:scroll}.scroll-smooth,[scroll-smooth=""]{scroll-behavior:smooth}.truncate,[truncate=""]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-ellipsis,[text-ellipsis=""]{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line,[whitespace-pre-line=""]{white-space:pre-line}.whitespace-pre-wrap,[whitespace-pre-wrap=""]{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.b,.border,[b=""],[border=""],[border~=\~],[border~="1"]{border-width:1px}.border-2,[border-2=""],[border~="2"],[border~="2px"]{border-width:2px}[border~="4"]{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.\[\&\:checked\+div\]\:border-primary-500:checked+div,.border-primary-500{--un-border-opacity:1;border-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.border-amber-200{--un-border-opacity:1;border-color:rgb(253 230 138/var(--un-border-opacity))}.border-neutral-100,[border~=neutral-100]{--un-border-opacity:1;border-color:rgb(245 245 245/var(--un-border-opacity))}.border-neutral-200,.dark [border~=dark\:neutral-200],[border-neutral-200=""],[border~=neutral-200]{--un-border-opacity:1;border-color:rgb(229 229 229/var(--un-border-opacity))}.border-neutral-200\/50,[border~=neutral-200\/50]{border-color:#e5e5e580}.border-neutral-300,[border-neutral-300=""],[border~="data-[state=unchecked]:neutral-300"][data-state=unchecked],[border~=neutral-300]{--un-border-opacity:1;border-color:rgb(212 212 212/var(--un-border-opacity))}.border-neutral-400{--un-border-opacity:1;border-color:rgb(163 163 163/var(--un-border-opacity))}.border-neutral-500{--un-border-opacity:1;border-color:rgb(115 115 115/var(--un-border-opacity))}.border-primary-100,[border~=primary-100]{--un-border-opacity:1;border-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))80%,oklch(100% 0 360/var(--un-border-opacity)))}.border-primary-200,[border~="data-[state=checked]:primary-200"][data-state=checked]{--un-border-opacity:1;border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.border-primary-200\/30{border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.3)}.border-primary-400,.dark .dark\:\[\&\:checked\+div\]\:border-primary-400:checked+div,.dark .dark\:border-primary-400{--un-border-opacity:1;border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.border-red-200{--un-border-opacity:1;border-color:rgb(254 202 202/var(--un-border-opacity))}.border-red-200\/30{border-color:#fecaca4d}.border-white,[border~=white]{--un-border-opacity:1;border-color:rgb(255 255 255/var(--un-border-opacity))}.dark .dark\:border-amber-800{--un-border-opacity:1;border-color:rgb(146 64 14/var(--un-border-opacity))}.dark .dark\:border-neutral-600,.dark [border~=dark\:neutral-600],.dark [dark\:border-neutral-600=""]{--un-border-opacity:1;border-color:rgb(82 82 82/var(--un-border-opacity))}.dark .dark\:border-neutral-700,.dark [border~=dark\:neutral-700],.dark [dark\:border-neutral-700=""]{--un-border-opacity:1;border-color:rgb(64 64 64/var(--un-border-opacity))}.dark .dark\:border-neutral-700\/50{border-color:#40404080}.dark .dark\:border-neutral-800,.dark [border~=dark\:neutral-800],.dark [dark\:border-neutral-800=""],[border~=neutral-800]{--un-border-opacity:1;border-color:rgb(38 38 38/var(--un-border-opacity))}.dark .dark\:border-neutral-800\/25,.dark [border~="dark:neutral-800/25"]{border-color:#26262640}.dark .dark\:border-neutral-900,.dark [border~=dark\:neutral-900]{--un-border-opacity:1;border-color:rgb(23 23 23/var(--un-border-opacity))}.dark .dark\:border-primary-600{--un-border-opacity:1;border-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark .dark\:border-primary-800,.dark [border~=dark\:primary-800]{--un-border-opacity:1;border-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark .dark\:border-primary-900,.dark [border~=dark\:primary-900]{--un-border-opacity:1;border-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark .dark\:border-primary-900\/40{border-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.4)}.dark .dark\:border-red-800{--un-border-opacity:1;border-color:rgb(153 27 27/var(--un-border-opacity))}.dark .dark\:border-red-900\/30{border-color:#7f1d1d4d}.dark [border~="dark:cyan-500/50"]{border-color:#06b6d480}.dark [border~="dark:neutral-700/30"]{border-color:#4040404d}.dark [border~="dark:primary-400/20"]{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)}.dark [border~="dark:primary-500/50"]{border-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.5)}.dark [border~="dark:primary-950/10"]{border-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.1)}.dark [border~="dark:violet-500/50"]{border-color:#8b5cf680}[border~=cyan-200\/50]{border-color:#a5f3fc80}[border~=gray\/25]{border-color:#9ca3af40}[border~=primary-200\/20]{border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.2)}[border~=primary-200\/50]{border-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.5)}[border~=primary-300]{--un-border-opacity:1;border-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}[border~=primary-50]{--un-border-opacity:1;border-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))30%,oklch(100% 0 360/var(--un-border-opacity)))}[border~=violet-200\/50]{border-color:#ddd6fe80}.peer:checked~.peer-checked\:after\:border-white:after{--un-border-opacity:1;border-color:rgb(255 255 255/var(--un-border-opacity))}[border~=focus-within\:neutral-800]:focus-within{--un-border-opacity:1;border-color:rgb(38 38 38/var(--un-border-opacity))}.dark .dark\:hover\:border-primary-400\/30:hover{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.3)}.dark .dark\:hover\:border-primary-700:hover{--un-border-opacity:1;border-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.dark [border~="dark:hover:primary-400/30"]:hover{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.3)}.hover\:border-primary-300:hover{--un-border-opacity:1;border-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.hover\:border-primary-500\/30:hover,[border~="hover:primary-500/30"]:hover{border-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.3)}.dark [border~="dark:focus:neutral-600"]:focus{--un-border-opacity:1;border-color:rgb(82 82 82/var(--un-border-opacity))}.dark [border~="dark:focus:neutral-700"]:focus{--un-border-opacity:1;border-color:rgb(64 64 64/var(--un-border-opacity))}.dark [border~="dark:focus:primary-400/50"]:focus{border-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.5)}[border~=focus\:neutral-200]:focus{--un-border-opacity:1;border-color:rgb(229 229 229/var(--un-border-opacity))}[border~=focus\:neutral-400]:focus{--un-border-opacity:1;border-color:rgb(163 163 163/var(--un-border-opacity))}[border~=focus\:primary-100]:focus{--un-border-opacity:1;border-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))80%,oklch(100% 0 360/var(--un-border-opacity)))}[border~=focus\:primary-300]:focus{--un-border-opacity:1;border-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-border-opacity))}.rounded,[rounded=""]{border-radius:.25rem}.rounded-2xl,[rounded-2xl=""]{border-radius:1rem}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-lg,[border~=rounded-lg],[rounded-lg=""],[rounded~=lg]{border-radius:.5rem}.rounded-md,[rounded-md=""]{border-radius:.375rem}.rounded-sm,[rounded-sm=""]{border-radius:.125rem}.rounded-xl,[rounded-xl=""]{border-radius:.75rem}[rounded~="[1lh]"]{border-radius:1lh}.before\:rounded-full:before,.after\:rounded-full:after{border-radius:9999px}.rounded-l-xl,[rounded-l-xl=""]{border-top-left-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-r-xl,[rounded-r-xl=""]{border-top-right-radius:.75rem;border-bottom-right-radius:.75rem}.rounded-t-2xl{border-top-left-radius:1rem;border-top-right-radius:1rem}.rounded-t-xl,[rounded-t-xl=""]{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border-none,[border-none=""]{border-style:none}.border-solid,[border~=solid]{border-style:solid}.bg-amber-50{--un-bg-opacity:1;background-color:rgb(255 251 235/var(--un-bg-opacity))}.bg-amber-50\/80{background-color:#fffbebcc}.bg-black\/50,[bg~=black\/50]{background-color:#00000080}.bg-blue-50,[bg-blue-50=""]{--un-bg-opacity:1;background-color:rgb(239 246 255/var(--un-bg-opacity))}.bg-green-50,[bg-green-50=""]{--un-bg-opacity:1;background-color:rgb(240 253 244/var(--un-bg-opacity))}.bg-green-500,[bg-green-500=""],[bg~=green-500]{--un-bg-opacity:1;background-color:rgb(34 197 94/var(--un-bg-opacity))}.bg-lime-400\/10{background-color:#a3e6351a}.bg-neutral-100,[bg-neutral-100=""],[bg~=neutral-100]{--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity))}.bg-neutral-200,.dark .dark\:bg-neutral-200,[bg-neutral-200=""],[bg~=neutral-200]{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}.bg-neutral-200\/45{background-color:#e5e5e573}.bg-neutral-300,.dark [bg~=dark\:neutral-300],[bg-neutral-300=""],[bg~="data-[state=unchecked]:neutral-300"][data-state=unchecked]{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.bg-neutral-400,.dark [bg~=dark\:neutral-400],[bg~=neutral-400]{--un-bg-opacity:1;background-color:rgb(163 163 163/var(--un-bg-opacity))}.bg-neutral-50,[bg-neutral-50=""],[bg~=neutral-50]{--un-bg-opacity:1;background-color:rgb(250 250 250/var(--un-bg-opacity))}.bg-neutral-600,.dark .dark\:bg-neutral-600{--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity))}.bg-neutral-800,.dark .dark\:bg-neutral-800,.dark [bg~="dark:data-[state=unchecked]:neutral-800"][data-state=unchecked],.dark [bg~=dark\:neutral-800],.dark [dark\:bg-neutral-800=""]{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}.bg-orange-400\/10{background-color:#fb923c1a}.bg-primary{--un-bg-opacity:1;background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-100,[bg-primary-100=""],[bg~=primary-100]{--un-bg-opacity:1;background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))80%,oklch(100% 0 360/var(--un-bg-opacity)))}.bg-primary-100\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.1)80%,#ffffff1a)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.1)80%,color(display-p3 1 1 1/.1))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.1)80%,lab(100% 0 0/.1))}}.bg-primary-100\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/1)80%,#fff)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/1)80%,color(display-p3 1 1 1))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/1)80%,lab(100% 0 0))}}.bg-primary-100\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.2)80%,#fff3)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.2)80%,color(display-p3 1 1 1/.2))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.2)80%,lab(100% 0 0/.2))}}.bg-primary-100\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.3)80%,#ffffff4d)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.3)80%,color(display-p3 1 1 1/.3))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.3)80%,lab(100% 0 0/.3))}}.bg-primary-100\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.4)80%,#fff6)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.4)80%,color(display-p3 1 1 1/.4))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.4)80%,lab(100% 0 0/.4))}}.bg-primary-100\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.05)80%,#ffffff0d)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.05)80%,color(display-p3 1 1 1/.05))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.05)80%,lab(100% 0 0/.05))}}.bg-primary-100\/50{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.5)80%,#ffffff80)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/50{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.5)80%,color(display-p3 1 1 1/.5))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/50{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.5)80%,lab(100% 0 0/.5))}}.bg-primary-100\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.6)80%,#fff9)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.6)80%,color(display-p3 1 1 1/.6))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.6)80%,lab(100% 0 0/.6))}}.bg-primary-100\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.7)80%,#ffffffb3)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.7)80%,color(display-p3 1 1 1/.7))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.7)80%,lab(100% 0 0/.7))}}.bg-primary-100\/80{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.8)80%,#fffc)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/80{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.8)80%,color(display-p3 1 1 1/.8))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/80{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.8)80%,lab(100% 0 0/.8))}}.bg-primary-100\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.9)80%,#ffffffe6)}@supports (color:color(display-p3 0 0 0)){.bg-primary-100\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.9)80%,color(display-p3 1 1 1/.9))}}@supports (color:lab(0% 0 0)){.bg-primary-100\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/.9)80%,lab(100% 0 0/.9))}}.bg-primary-200,[bg-primary-200=""]{--un-bg-opacity:1;background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-200\/10{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-200\/100{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-200\/20,[bg~=primary-200\/20]{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-200\/30{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-200\/40{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-200\/5{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-200\/50{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-200\/60{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-200\/70{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-200\/80{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-200\/90{background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-300,[bg-primary-300=""]{--un-bg-opacity:1;background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-300\/10{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-300\/100{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-300\/20{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-300\/30{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-300\/40{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-300\/5{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-300\/50,.dark .dark\:bg-primary-300\/50{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-300\/60{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-300\/70{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-300\/80{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-300\/90{background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-400,.dark .dark\:bg-primary-400,.dark [bg~=dark\:primary-400],[bg-primary-400=""],[bg~="data-[state=checked]:primary-400"][data-state=checked],[bg~=primary-400]{--un-bg-opacity:1;background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-400\/10{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-400\/100{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-400\/20,.dark [bg~="dark:primary-400/20"]{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-400\/30{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-400\/40{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-400\/5{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-400\/50{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-400\/60{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-400\/70{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-400\/80,.dark [bg~="data-[state=checked]:dark:primary-400/80"][data-state=checked]{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-400\/90{background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-50,[bg-primary-50=""]{--un-bg-opacity:1;background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))30%,oklch(100% 0 360/var(--un-bg-opacity)))}.bg-primary-50\/10,.dark .dark\:bg-primary-50\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.1)30%,#ffffff1a)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/10,.dark .dark\:bg-primary-50\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.1)30%,color(display-p3 1 1 1/.1))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/10,.dark .dark\:bg-primary-50\/10{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.1)30%,lab(100% 0 0/.1))}}.bg-primary-50\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/1)30%,#fff)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/1)30%,color(display-p3 1 1 1))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/100{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/1)30%,lab(100% 0 0))}}.bg-primary-50\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.2)30%,#fff3)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.2)30%,color(display-p3 1 1 1/.2))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/20{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.2)30%,lab(100% 0 0/.2))}}.bg-primary-50\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.3)30%,#ffffff4d)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.3)30%,color(display-p3 1 1 1/.3))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/30{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.3)30%,lab(100% 0 0/.3))}}.bg-primary-50\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.4)30%,#fff6)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.4)30%,color(display-p3 1 1 1/.4))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/40{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.4)30%,lab(100% 0 0/.4))}}.bg-primary-50\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.05)30%,#ffffff0d)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.05)30%,color(display-p3 1 1 1/.05))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/5{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.05)30%,lab(100% 0 0/.05))}}.bg-primary-50\/50,[bg~=primary-50\/50]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.5)30%,#ffffff80)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/50,[bg~=primary-50\/50]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.5)30%,color(display-p3 1 1 1/.5))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/50,[bg~=primary-50\/50]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.5)30%,lab(100% 0 0/.5))}}.bg-primary-50\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.6)30%,#fff9)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.6)30%,color(display-p3 1 1 1/.6))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/60{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.6)30%,lab(100% 0 0/.6))}}.bg-primary-50\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.7)30%,#ffffffb3)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.7)30%,color(display-p3 1 1 1/.7))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/70{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.7)30%,lab(100% 0 0/.7))}}.bg-primary-50\/80,[bg~=primary-50\/80]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.8)30%,#fffc)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/80,[bg~=primary-50\/80]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.8)30%,color(display-p3 1 1 1/.8))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/80,[bg~=primary-50\/80]{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.8)30%,lab(100% 0 0/.8))}}.bg-primary-50\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.9)30%,#ffffffe6)}@supports (color:color(display-p3 0 0 0)){.bg-primary-50\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.9)30%,color(display-p3 1 1 1/.9))}}@supports (color:lab(0% 0 0)){.bg-primary-50\/90{background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-50)calc(var(--chromatic-hue) + 0)/.9)30%,lab(100% 0 0/.9))}}.bg-primary-500,.dark [bg~=dark\:primary-500],[bg-primary-500=""],[bg~=primary-500],.peer:checked~.peer-checked\:bg-primary-500{--un-bg-opacity:1;background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-500\/10,[bg~=primary-500\/10]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-500\/100{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-500\/20,[bg~=primary-500\/20]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-500\/30,[bg~=primary-500\/30]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-500\/40,[bg~=primary-500\/40]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-500\/5,[bg~=primary-500\/5]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-500\/50,[bg~=primary-500\/50]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-500\/60,[bg~=primary-500\/60]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-500\/70,[bg~=primary-500\/70]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-500\/80,[bg~=primary-500\/80]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-500\/90,[bg~=primary-500\/90]{background-color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-600,.dark .dark\:bg-primary-600,[bg-primary-600=""]{--un-bg-opacity:1;background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-600\/10{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-600\/100{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-600\/20{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-600\/30{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-600\/40{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-600\/5{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-600\/50{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-600\/60{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-600\/70{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-600\/80{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-600\/90{background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-700,.dark .dark\:bg-primary-700,.dark [dark\:bg-primary-700=""],[bg-primary-700=""]{--un-bg-opacity:1;background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-700\/10{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-700\/100{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-700\/20{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-700\/30{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-700\/40{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-700\/5{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-700\/50{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-700\/60{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-700\/70{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-700\/80{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-700\/90{background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-800,.dark [bg~=dark\:primary-800],[bg-primary-800=""]{--un-bg-opacity:1;background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-800\/10{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-800\/100{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-800\/20{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-800\/30{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-800\/40{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-800\/5{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-800\/50{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-800\/60{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-800\/70{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-800\/80{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-800\/90{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-900,.dark .dark\:bg-primary-900,[bg-primary-900=""]{--un-bg-opacity:1;background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-900\/10,.dark .dark\:bg-primary-900\/10{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-900\/100{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-900\/20,.dark .dark\:bg-primary-900\/20{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-900\/30,.dark .dark\:bg-primary-900\/30{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-900\/40,.dark .dark\:bg-primary-900\/40,.dark [bg~="dark:primary-900/40"]{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-900\/5,.dark .dark\:bg-primary-900\/5{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-900\/50{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-900\/60{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-900\/70{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-900\/80{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-900\/90{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary-950,.dark .dark\:bg-primary-950,[bg-primary-950=""]{--un-bg-opacity:1;background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.bg-primary-950\/10{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary-950\/100{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/1)}.bg-primary-950\/20{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary-950\/30{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary-950\/40{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary-950\/5{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary-950\/50{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary-950\/60{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary-950\/70,.dark [bg~="dark:primary-950/70"]{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary-950\/80,.dark [bg~="dark:primary-950/80"]{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary-950\/90{background-color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/.9)}.bg-primary\/10{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.1)}.bg-primary\/100{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/1)}.bg-primary\/20{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.2)}.bg-primary\/30{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.3)}.bg-primary\/40{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.4)}.bg-primary\/5{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.05)}.bg-primary\/50{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.5)}.bg-primary\/60{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.6)}.bg-primary\/70{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.7)}.bg-primary\/80{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.8)}.bg-primary\/90{background-color:oklch(62% var(--chromatic-chroma)calc(var(--chromatic-hue) + 0)/.9)}.bg-red-100{--un-bg-opacity:1;background-color:rgb(254 226 226/var(--un-bg-opacity))}.bg-red-50,[bg-red-50=""]{--un-bg-opacity:1;background-color:rgb(254 242 242/var(--un-bg-opacity))}.bg-red-500{--un-bg-opacity:1;background-color:rgb(239 68 68/var(--un-bg-opacity))}.bg-red900,.dark [dark\:bg-red-900=""]{--un-bg-opacity:1;background-color:rgb(127 29 29/var(--un-bg-opacity))}.bg-transparent,.dark [bg~=dark\:transparent],[bg-transparent=""],[bg~=transparent]{background-color:#0000}.bg-violet-400\/10{background-color:#a78bfa1a}.bg-white,[bg-white=""],[bg~=white]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.bg-white\/60,[bg~=white\/60]{background-color:#fff9}.bg-white\/80{background-color:#fffc}.bg-yellow-500{--un-bg-opacity:1;background-color:rgb(234 179 8/var(--un-bg-opacity))}.dark .dark\:bg-amber-900\/20{background-color:#78350f33}.dark .dark\:bg-amber-900\/30{background-color:#78350f4d}.dark .dark\:bg-black\/30,.dark [bg~="dark:black/30"]{background-color:#0000004d}.dark .dark\:bg-black\/40{background-color:#0006}.dark .dark\:bg-blue-900\/30{background-color:#1e3a8a4d}.dark .dark\:bg-green-900\/30{background-color:#14532d4d}.dark .dark\:bg-lime-50\/10{background-color:#f7fee71a}.dark .dark\:bg-lime-900\/10{background-color:#3653141a}.dark .dark\:bg-neutral-600\/40{background-color:#52525266}.dark .dark\:bg-neutral-700,.dark [bg~=dark\:neutral-700],.dark [dark\:bg-neutral-700=""],[bg~=neutral-700]{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}.dark .dark\:bg-neutral-700\/50{background-color:#40404080}.dark .dark\:bg-neutral-800\/50,.dark [bg~="dark:neutral-800/50"]{background-color:#26262680}.dark .dark\:bg-neutral-900,.dark [bg~=dark\:neutral-900],.dark [dark\:bg-neutral-900=""]{--un-bg-opacity:1;background-color:rgb(23 23 23/var(--un-bg-opacity))}.dark .dark\:bg-neutral-900\/20{background-color:#17171733}.dark .dark\:bg-neutral-900\/95{background-color:#171717f2}.dark .dark\:bg-orange-50\/10{background-color:#fff7ed1a}.dark .dark\:bg-orange-900\/10{background-color:#7c2d121a}.dark .dark\:bg-primary-800\/25{background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/.25)}.dark .dark\:bg-red-900\/20{background-color:#7f1d1d33}.dark .dark\:bg-red-900\/30{background-color:#7f1d1d4d}.dark .dark\:bg-red-900\/40{background-color:#7f1d1d66}.dark .dark\:bg-violet-50\/10{background-color:#f5f3ff1a}.dark .dark\:bg-violet-900\/10{background-color:#4c1d951a}.dark [bg~="dark:[#4e34b9]"]{--un-bg-opacity:1;background-color:rgb(78 52 185/var(--un-bg-opacity))}.dark [bg~="dark:[#676085]"]{--un-bg-opacity:1;background-color:rgb(103 96 133/var(--un-bg-opacity))}.dark [bg~="dark:[rgba(0,0,0,0.3)]"]{--un-bg-opacity:.3;background-color:rgba(0,0,0,var(--un-bg-opacity))}.dark [bg~="dark:#181818"]{--un-bg-opacity:1;background-color:rgb(24 24 24/var(--un-bg-opacity))}.dark [bg~="dark:black/20"],.group:hover [bg~="group-hover:black/20"]{background-color:#0003}.dark [bg~=dark\:blue-900],.dark [dark\:bg-blue-900=""]{--un-bg-opacity:1;background-color:rgb(30 58 138/var(--un-bg-opacity))}.dark [bg~=dark\:complementary-800]{--un-bg-opacity:1;background-color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))}.dark [bg~=dark\:cyan-900]{--un-bg-opacity:1;background-color:rgb(22 78 99/var(--un-bg-opacity))}.dark [bg~=dark\:green-600]{--un-bg-opacity:1;background-color:rgb(22 163 74/var(--un-bg-opacity))}.dark [bg~=dark\:neutral-500]{--un-bg-opacity:1;background-color:rgb(115 115 115/var(--un-bg-opacity))}.dark [bg~="dark:neutral-900/50"]{background-color:#17171780}.dark [bg~="dark:neutral-900/70"]{background-color:#171717b3}.dark [bg~=dark\:neutral-950]{--un-bg-opacity:1;background-color:rgb(10 10 10/var(--un-bg-opacity))}.dark [bg~="dark:orange-900/20"]{background-color:#7c2d1233}.dark [bg~=dark\:violet-800]{--un-bg-opacity:1;background-color:rgb(91 33 182/var(--un-bg-opacity))}.dark [dark\:bg-green-900=""]{--un-bg-opacity:1;background-color:rgb(20 83 45/var(--un-bg-opacity))}[bg~="[#cabeff]"]{--un-bg-opacity:1;background-color:rgb(202 190 255/var(--un-bg-opacity))}[bg~="[#e6e1fc]"]{--un-bg-opacity:1;background-color:rgb(230 225 252/var(--un-bg-opacity))}[bg~=\$bg-color]{background-color:var(--bg-color)}[bg~=black\/0]{background-color:#0000}[bg~=blue-100]{--un-bg-opacity:1;background-color:rgb(219 234 254/var(--un-bg-opacity))}[bg~=complementary-100]{--un-bg-opacity:1;background-color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))80%,oklch(100% 0 360/var(--un-bg-opacity)))}[bg~=emerald-500]{--un-bg-opacity:1;background-color:rgb(16 185 129/var(--un-bg-opacity))}[bg~=gray-200\/30]{background-color:#e5e7eb4d}[bg~=inherit]{background-color:inherit }[bg~=neutral-100\/50]{background-color:#f5f5f580}[bg~=neutral-100\/70]{background-color:#f5f5f5b3}[bg~=neutral-200\/20]{background-color:#e5e5e533}[bg~=neutral-200\/50]{background-color:#e5e5e580}[bg~=neutral-50\/50]{background-color:#fafafa80}[bg~=orange-50]{--un-bg-opacity:1;background-color:rgb(255 247 237/var(--un-bg-opacity))}[bg~=violet-500]{--un-bg-opacity:1;background-color:rgb(139 92 246/var(--un-bg-opacity))}[bg~=white\/70]{background-color:#ffffffb3}.dark [dark\:bg-neutral-700~=default\:]:default,.dark [dark\:bg-neutral-700~=checked\:]:checked{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}.dark .\[\&_div_span\]\:dark\:hover\:bg-cyan-300:hover div span{--un-bg-opacity:1;background-color:rgb(103 232 249/var(--un-bg-opacity))}.dark .\[\&_div_span\]\:dark\:hover\:bg-cyan-900:hover div span{--un-bg-opacity:1;background-color:rgb(22 78 99/var(--un-bg-opacity))}.dark .dark\:hover\:bg-black\/40:hover{background-color:#0006}.dark .dark\:hover\:bg-neutral-600:hover{--un-bg-opacity:1;background-color:rgb(82 82 82/var(--un-bg-opacity))}.dark .dark\:hover\:bg-neutral-600\/60:hover{background-color:#52525299}.dark .dark\:hover\:bg-neutral-800:hover{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}.dark .dark\:hover\:bg-primary-900\/60:hover{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.6)}.dark .dark\:hover\:bg-red-900\/60:hover{background-color:#7f1d1d99}.dark [bg~="dark:hover:complementary-700"]:hover{--un-bg-opacity:1;background-color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))}.dark [bg~="dark:hover:neutral-800"]:hover{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}.dark [dark\:hover\:bg-cyan-300=""]:hover{--un-bg-opacity:1;background-color:rgb(103 232 249/var(--un-bg-opacity))}.dark [hover~="dark:bg-black/40"]:hover{background-color:#0006}.dark [hover~=dark\:bg-neutral-700]:hover{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}.dark [hover~="dark:bg-neutral-700/50"]:hover{background-color:#40404080}.hover\:bg-neutral-100:hover{--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity))}.hover\:bg-neutral-200:hover{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}.hover\:bg-neutral-300:hover{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.hover\:bg-neutral-400:hover{--un-bg-opacity:1;background-color:rgb(163 163 163/var(--un-bg-opacity))}.hover\:bg-primary-200:hover{--un-bg-opacity:1;background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.hover\:bg-primary-600:hover{--un-bg-opacity:1;background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.hover\:bg-red-200:hover{--un-bg-opacity:1;background-color:rgb(254 202 202/var(--un-bg-opacity))}.hover\:bg-white\/80:hover{background-color:#fffc}[bg~=hover\:complementary-200]:hover{--un-bg-opacity:1;background-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 180)/var(--un-bg-opacity))}[bg~=hover\:emerald-600]:hover{--un-bg-opacity:1;background-color:rgb(5 150 105/var(--un-bg-opacity))}[bg~=hover\:neutral-200]:hover{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}[bg~=hover\:neutral-50]:hover{--un-bg-opacity:1;background-color:rgb(250 250 250/var(--un-bg-opacity))}[hover\:bg-neutral-300=""]:hover{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}[hover\:bg-primary-600=""]:hover{--un-bg-opacity:1;background-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}[hover~=bg-neutral-200]:hover{--un-bg-opacity:1;background-color:rgb(229 229 229/var(--un-bg-opacity))}[hover~=bg-white\/80]:hover{background-color:#fffc}.dark [bg~="dark:focus:neutral-900"]:focus{--un-bg-opacity:1;background-color:rgb(23 23 23/var(--un-bg-opacity))}[bg~=focus\:neutral-50]:focus{--un-bg-opacity:1;background-color:rgb(250 250 250/var(--un-bg-opacity))}.active\:bg-neutral-300:active{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.active\:bg-primary-300:active{--un-bg-opacity:1;background-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.active\:bg-red-300:active{--un-bg-opacity:1;background-color:rgb(252 165 165/var(--un-bg-opacity))}.dark .dark\:active\:bg-neutral-600\/40:active{background-color:#52525266}.dark .dark\:active\:bg-primary-900\/40:active{background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/.4)}.dark .dark\:active\:bg-red-900\/40:active{background-color:#7f1d1d66}.dark [bg~="dark:active:neutral-700"]:active{--un-bg-opacity:1;background-color:rgb(64 64 64/var(--un-bg-opacity))}[bg~=active\:gray-50]:active{--un-bg-opacity:1;background-color:rgb(249 250 251/var(--un-bg-opacity))}[bg~=active\:neutral-300]:active{--un-bg-opacity:1;background-color:rgb(212 212 212/var(--un-bg-opacity))}.dark [bg~="dark:disabled:neutral-800"]:disabled{--un-bg-opacity:1;background-color:rgb(38 38 38/var(--un-bg-opacity))}[bg~=disabled\:neutral-100]:disabled{--un-bg-opacity:1;background-color:rgb(245 245 245/var(--un-bg-opacity))}.before\:bg-lime-400:before{--un-bg-opacity:1;background-color:rgb(163 230 53/var(--un-bg-opacity))}.before\:bg-orange-400:before{--un-bg-opacity:1;background-color:rgb(251 146 60/var(--un-bg-opacity))}.before\:bg-primary-400:before{--un-bg-opacity:1;background-color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.before\:bg-violet-400:before{--un-bg-opacity:1;background-color:rgb(167 139 250/var(--un-bg-opacity))}.dark .before\:dark\:bg-lime-900:before{--un-bg-opacity:1;background-color:rgb(54 83 20/var(--un-bg-opacity))}.dark .before\:dark\:bg-orange-900:before{--un-bg-opacity:1;background-color:rgb(124 45 18/var(--un-bg-opacity))}.dark .before\:dark\:bg-primary-900:before{--un-bg-opacity:1;background-color:oklch(37% var(--chromatic-chroma-900)calc(var(--chromatic-hue) + 0)/var(--un-bg-opacity))}.dark .before\:dark\:bg-violet-900:before{--un-bg-opacity:1;background-color:rgb(76 29 149/var(--un-bg-opacity))}.after\:bg-white:after{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.dark .dark\:from-neutral-800,.dark [dark\:from-neutral-800=""]{--un-gradient-from-position:0%;--un-gradient-from:rgb(38 38 38/var(--un-from-opacity,1))var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:#26262600 var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .dark\:from-primary-400\/0{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .dark\:from-primary-400\/20{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-neutral-50,[from-neutral-50=""]{--un-gradient-from-position:0%;--un-gradient-from:rgb(250 250 250/var(--un-from-opacity,1))var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:#fafafa00 var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-primary-500{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-from-opacity,1))var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-primary-500\/0{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.from-primary-500\/20,.before\:from-primary-500\/20:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .before\:dark\:from-primary-400\/20:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark [before~="dark:from-primary-400/0"]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark [hover~="before:dark:from-primary-400/20"]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}[before~=from-primary-500\/0]:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}[hover~="before:from-primary-500/20"]:hover:before{--un-gradient-from-position:0%;--un-gradient-from:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.2)var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from),var(--un-gradient-to)}.dark .dark\:via-primary-400\/10{--un-gradient-via-position:50%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}.via-primary-500\/10,.before\:via-primary-500\/10:before{--un-gradient-via-position:50%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}.dark .before\:dark\:via-primary-400\/10:before,.dark [hover~="before:dark:via-primary-400/10"]:hover:before{--un-gradient-via-position:50%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}[hover~="before:via-primary-500/10"]:hover:before{--un-gradient-via-position:50%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0);--un-gradient-stops:var(--un-gradient-from),oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/.1)var(--un-gradient-via-position),var(--un-gradient-to)}.dark .dark\:to-neutral-900{--un-gradient-to-position:100%;--un-gradient-to:rgb(23 23 23/var(--un-to-opacity,1))var(--un-gradient-to-position)}.dark .dark\:to-primary-400\/0{--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}.dark .dark\:to-transparent,.to-transparent{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}.to-neutral-100,[to-neutral-100=""]{--un-gradient-to-position:100%;--un-gradient-to:rgb(245 245 245/var(--un-to-opacity,1))var(--un-gradient-to-position)}.to-primary-400{--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-to-opacity,1))var(--un-gradient-to-position)}.to-primary-500\/0{--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}.before\:to-transparent:before,.dark .before\:dark\:to-transparent:before{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}.dark [before~="dark:to-primary-400/0"]:before{--un-gradient-to-position:100%;--un-gradient-to:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}.dark [hover~="before:dark:to-transparent"]:hover:before{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}[before~=to-primary-500\/0]:before{--un-gradient-to-position:100%;--un-gradient-to:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/0)var(--un-gradient-to-position)}[hover~=before\:to-transparent]:hover:before{--un-gradient-to-position:100%;--un-gradient-to:transparent var(--un-gradient-to-position)}.bg-gradient-to-b,[bg-gradient-to-b=""]{--un-gradient-shape:to bottom in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient))}.bg-gradient-to-r,.before\:bg-gradient-to-r:before,[before~=bg-gradient-to-r]:before,[hover~=before\:bg-gradient-to-r]:hover:before{--un-gradient-shape:to right in oklch;--un-gradient:var(--un-gradient-shape),var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.dark .dark\:fill-neutral-800,.dark [dark\:fill-neutral-800=""]{--un-fill-opacity:1;fill:rgb(38 38 38/var(--un-fill-opacity))}.fill-white,[fill-white=""]{--un-fill-opacity:1;fill:rgb(255 255 255/var(--un-fill-opacity))}[stroke-width~="0.5"]{stroke-width:.5px}[stroke-width~="1.5"]{stroke-width:1.5px}[stroke-width~="2"]{stroke-width:2px}[stroke~="163"]{stroke-width:163px}[stroke~="175"]{stroke-width:175px}.object-cover,[object-cover=""]{object-fit:cover}.object-contain,[object-contain=""]{object-fit:contain}.p-1,[p-1=""]{padding:.25rem}.p-1\.5,[p-1\.5=""]{padding:.375rem}.p-2,.p2,[p-2=""],[p~="2"],[p2=""]{padding:.5rem}.p-2\.5,[p~="2.5"]{padding:.625rem}.p-3,[p-3=""]{padding:.75rem}.p-4,[p-4=""]{padding:1rem}.p-5,[p-5=""]{padding:1.25rem}.p-6{padding:1.5rem}.p-8,[p-8=""]{padding:2rem}.px,.px-4,[px-4=""],[px=""]{padding-left:1rem;padding-right:1rem}.px-0{padding-left:0;padding-right:0}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2,.px2,[px-2=""],[px~="2"],[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-3,[px-3=""]{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py,.py-4,[py~="4"]{padding-top:1rem;padding-bottom:1rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5,[py-0\.5=""]{padding-top:.125rem;padding-bottom:.125rem}.py-1,.py1,[py-1=""],[py~="1"],[py1=""]{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5,[py-1\.5=""]{padding-top:.375rem;padding-bottom:.375rem}.py-2,[py-2=""]{padding-top:.5rem;padding-bottom:.5rem}.py-3,[py-3=""]{padding-top:.75rem;padding-bottom:.75rem}.pb-0{padding-bottom:0}.pb-2,[pb-2=""]{padding-bottom:.5rem}.pb-4,[pb-4=""]{padding-bottom:1rem}.pb-6,[pb-6=""]{padding-bottom:1.5rem}.pl,.pl-4,[pl-4=""]{padding-left:1rem}.pl-10{padding-left:2.5rem}.pl-3,[pl-3=""]{padding-left:.75rem}.pl-5,[pl-5=""]{padding-left:1.25rem}.pr-\[20px\]{padding-right:20px}.pr-1,[pr-1=""]{padding-right:.25rem}.pr-3,[pr-3=""]{padding-right:.75rem}.pr-4,[pr-4=""]{padding-right:1rem}.pt,.pt-4,[pt-4=""]{padding-top:1rem}.pt-0{padding-top:0}.pt-10,[pt-10=""]{padding-top:2.5rem}.pt-2,[pt-2=""]{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-center,[text-center=""],[text~=center]{text-align:center}.text-left,[text-left=""]{text-align:left}.text-right,[text-right=""]{text-align:right}.text-wrap,[text-wrap=""]{text-wrap:wrap}.text-nowrap,[text-nowrap=""]{text-wrap:nowrap}.text-2xl,[text-2xl=""],[text~="2xl"]{font-size:1.5rem;line-height:2rem}.text-3xl,[text-3xl=""]{font-size:1.875rem;line-height:2.25rem}.text-5xl,[text-5xl=""]{font-size:3rem;line-height:1}.text-6xl,[text-6xl=""]{font-size:3.75rem;line-height:1}.text-base,[text-base=""],[text~=base]{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""],[text~=lg]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl,[text-xl=""]{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""],[text~=xs]{font-size:.75rem;line-height:1rem}[text~="4xl"]{font-size:2.25rem;line-height:2.5rem}[text~="60"]{font-size:15rem}[default-text~="2"]:default{font-size:.5rem}.dark .dark\:text-amber-300{--un-text-opacity:1;color:rgb(252 211 77/var(--un-text-opacity))}.dark .dark\:text-amber-400{--un-text-opacity:1;color:rgb(251 191 36/var(--un-text-opacity))}.dark .dark\:text-blue-300{--un-text-opacity:1;color:rgb(147 197 253/var(--un-text-opacity))}.dark .dark\:text-green-300{--un-text-opacity:1;color:rgb(134 239 172/var(--un-text-opacity))}.dark .dark\:text-green-400{--un-text-opacity:1;color:rgb(74 222 128/var(--un-text-opacity))}.dark .dark\:text-lime-400{--un-text-opacity:1;color:rgb(163 230 53/var(--un-text-opacity))}.dark .dark\:text-neutral-100,[text~=neutral-100]{--un-text-opacity:1;color:rgb(245 245 245/var(--un-text-opacity))}.dark .dark\:text-neutral-100\/80{color:#f5f5f5cc}.dark .dark\:text-neutral-200,.dark [dark\:text-neutral-200=""],.dark [text~=dark\:neutral-200]{--un-text-opacity:1;color:rgb(229 229 229/var(--un-text-opacity))}.dark .dark\:text-neutral-300,.dark [dark\:text-neutral-300=""],.dark [text~=dark\:neutral-300],[text~=neutral-300]{--un-text-opacity:1;color:rgb(212 212 212/var(--un-text-opacity))}.dark .dark\:text-neutral-400,.dark [dark\:text-neutral-400=""],.dark [text~=dark\:neutral-400],.text-neutral-400,[text-neutral-400=""],[text~=neutral-400]{--un-text-opacity:1;color:rgb(163 163 163/var(--un-text-opacity))}.dark .dark\:text-neutral-500,.dark [text~=dark\:neutral-500],.text-neutral-500,[text-neutral-500=""],[text~=neutral-500]{--un-text-opacity:1;color:rgb(115 115 115/var(--un-text-opacity))}.dark .dark\:text-neutral-600,.dark [text~=dark\:neutral-600],.text-neutral-600,[text~=neutral-600]{--un-text-opacity:1;color:rgb(82 82 82/var(--un-text-opacity))}.dark .dark\:text-neutral-600\/20,.dark [text~="dark:neutral-600/20"]{color:#52525233}.dark .dark\:text-orange-400{--un-text-opacity:1;color:rgb(251 146 60/var(--un-text-opacity))}.dark .dark\:color-primary-100,.dark .dark\:text-primary-100,.dark [dark\:color-primary-100=""],.dark [text~=dark\:primary-100]{--un-text-opacity:1;color:color-mix(in srgb,oklch(95% var(--chromatic-chroma-100)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))80%,oklch(100% 0 360/var(--un-text-opacity)))}.dark .dark\:text-primary-300,.dark [text~=dark\:primary-300],.text-primary-300,[text~=primary-300]{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-primary-300\/80{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.8)}.color-primary-400,.dark .dark\:text-primary-400,.dark [text~=dark\:primary-400],.text-primary-400,[color-primary-400=""]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-primary-500,.text-primary-500,[text~=primary-500]{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-primary-600,.text-primary-600,[text~=primary-600]{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark .dark\:text-red-100{--un-text-opacity:1;color:rgb(254 226 226/var(--un-text-opacity))}.dark .dark\:text-red-300{--un-text-opacity:1;color:rgb(252 165 165/var(--un-text-opacity))}.dark .dark\:text-red-400{--un-text-opacity:1;color:rgb(248 113 113/var(--un-text-opacity))}.dark .dark\:text-violet-400{--un-text-opacity:1;color:rgb(167 139 250/var(--un-text-opacity))}.dark .dark\:text-white,.dark [dark\:text-white=""],.dark [text~=dark\:white],.text-white,[text-white=""],[text~=white]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}.dark .dark\:text-white\/50{color:#ffffff80}.dark [text~="dark:cyan-600/90"]{color:#0891b2e6}.dark [text~=dark\:gray-200]{--un-text-opacity:1;color:rgb(229 231 235/var(--un-text-opacity))}.dark [text~="dark:neutral-600/50"]{color:#52525280}.dark [text~=dark\:neutral-900]{--un-text-opacity:1;color:rgb(23 23 23/var(--un-text-opacity))}.dark [text~=dark\:orange-500],.text-orange-500{--un-text-opacity:1;color:rgb(249 115 22/var(--un-text-opacity))}.dark [text~="dark:primary-300/50"]{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.5)}.dark [text~="dark:primary-600/90"]{color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.9)}.dark [text~="dark:violet-600/90"]{color:#7c3aede6}.text-amber-500{--un-text-opacity:1;color:rgb(245 158 11/var(--un-text-opacity))}.text-amber-600{--un-text-opacity:1;color:rgb(217 119 6/var(--un-text-opacity))}.text-amber-700{--un-text-opacity:1;color:rgb(180 83 9/var(--un-text-opacity))}.text-black,[text-black=""]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.text-blue-500{--un-text-opacity:1;color:rgb(59 130 246/var(--un-text-opacity))}.text-blue-700,[text-blue-700=""]{--un-text-opacity:1;color:rgb(29 78 216/var(--un-text-opacity))}.text-green-600{--un-text-opacity:1;color:rgb(22 163 74/var(--un-text-opacity))}.text-green-700,[text-green-700=""]{--un-text-opacity:1;color:rgb(21 128 61/var(--un-text-opacity))}.text-lime-500{--un-text-opacity:1;color:rgb(132 204 22/var(--un-text-opacity))}.text-neutral-200\/50,[text~=neutral-200\/50]{color:#e5e5e580}.text-neutral-400\/50,[text~=neutral-400\/50]{color:#a3a3a380}.text-neutral-500\/50,[text~=neutral-500\/50]{color:#73737380}.text-neutral-700,[text-neutral-700=""],[text~=neutral-700]{--un-text-opacity:1;color:rgb(64 64 64/var(--un-text-opacity))}.text-neutral-800{--un-text-opacity:1;color:rgb(38 38 38/var(--un-text-opacity))}.text-neutral-900\/80{color:#171717cc}.text-neutral-950{--un-text-opacity:1;color:rgb(10 10 10/var(--un-text-opacity))}.text-primary-600\/80{color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.8)}.text-primary-700{--un-text-opacity:1;color:oklch(49% var(--chromatic-chroma-700)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.text-primary-800{--un-text-opacity:1;color:oklch(42% var(--chromatic-chroma-800)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.text-primary-950{--un-text-opacity:1;color:oklch(29% var(--chromatic-chroma-950)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.text-red-500{--un-text-opacity:1;color:rgb(239 68 68/var(--un-text-opacity))}.text-red-600{--un-text-opacity:1;color:rgb(220 38 38/var(--un-text-opacity))}.text-red-700,[text-red-700=""]{--un-text-opacity:1;color:rgb(185 28 28/var(--un-text-opacity))}.text-red-950{--un-text-opacity:1;color:rgb(69 10 10/var(--un-text-opacity))}.text-transparent{color:#0000}.text-violet-500,[text-violet-500=""]{--un-text-opacity:1;color:rgb(139 92 246/var(--un-text-opacity))}[text~=complementary-400]{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 180)/var(--un-text-opacity))}[text~=cyan-400]{--un-text-opacity:1;color:rgb(34 211 238/var(--un-text-opacity))}[text~=cyan-400\/90]{color:#22d3eee6}[text~=gray-700]{--un-text-opacity:1;color:rgb(55 65 81/var(--un-text-opacity))}[text~=orange-700]{--un-text-opacity:1;color:rgb(194 65 12/var(--un-text-opacity))}[text~=primary-400\/90]{color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/.9)}[text~=violet-400\/90]{color:#a78bfae6}.dark .dark\:hover\:text-neutral-300:hover{--un-text-opacity:1;color:rgb(212 212 212/var(--un-text-opacity))}.dark [hover~="dark:text-primary-300/80"]:hover{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.8)}.dark [text~="dark:hover:primary-200"]:hover{--un-text-opacity:1;color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="dark:hover:primary-500"]:hover{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.hover\:text-neutral-700:hover{--un-text-opacity:1;color:rgb(64 64 64/var(--un-text-opacity))}[hover~=text-primary-600\/80]:hover{color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.8)}[text~=hover\:primary-500]:hover{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}[text~=hover\:primary-600]:hover{--un-text-opacity:1;color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="dark:disabled:neutral-600"]:disabled{--un-text-opacity:1;color:rgb(82 82 82/var(--un-text-opacity))}[text~=disabled\:neutral-400]:disabled{--un-text-opacity:1;color:rgb(163 163 163/var(--un-text-opacity))}.dark [text~="placeholder:dark:hover:primary-400"]:hover::placeholder{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="placeholder:dark:hover:primary-500"]:hover::placeholder{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="placeholder:dark:primary-300"]::placeholder{--un-text-opacity:1;color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.dark [text~="placeholder:dark:primary-300/50"]::placeholder{color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.5)}[text~="placeholder:hover:primary-500"]:hover::placeholder{--un-text-opacity:1;color:oklch(62% var(--chromatic-chroma-500)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}[text~=placeholder\:primary-400]::placeholder{--un-text-opacity:1;color:oklch(74% var(--chromatic-chroma-400)calc(var(--chromatic-hue) + 0)/var(--un-text-opacity))}.font-bold,[font-bold=""]{font-weight:700}.font-medium,[font-medium=""]{font-weight:500}.font-normal,[font-normal=""]{font-weight:400}.font-semibold,[font-semibold=""]{font-weight:600}.leading-10,.lh-10{line-height:2.5rem}[leading~="[0.75]"]{line-height:.75}[leading~="[1]"]{line-height:1}.font-cuteen,[font-cuteen=""]{font-family:Sniglet}.font-jura,[font-jura=""]{font-family:Jura}.font-mono,[font-mono=""]{font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-quicksand,[font-quicksand=""]{font-family:Quicksand}.font-sans,[font-sans=""]{font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-italic,.italic,[font-italic=""]{font-style:italic}.decoration-underline,.underline,[decoration-underline=""],[underline=""]{text-decoration-line:underline}.decoration-dashed,[decoration-dashed=""]{text-decoration-style:dashed}.tab,[aria-checked~=tab][aria-checked=true],[tab=""],[checked~=tab]:checked{-moz-tab-size:4;tab-size:4}.text-stroke-1,[text-stroke-1=""]{-webkit-text-stroke-width:1px}.text-shadow{--un-text-shadow:0 0 1px var(--un-text-shadow-color,#0003),0 0 1px var(--un-text-shadow-color,#0100051a);text-shadow:var(--un-text-shadow)}.\[\&\:checked\+div_\.radio-dot\]\:opacity-100:checked+div .radio-dot,.opacity-100,.group:hover .group-hover\:opacity-100,.group:hover [group-hover\:opacity-100=""]{opacity:1}.op-0,.opacity-0,[opacity-0=""]{opacity:0}.op50,.opacity-50,[op50=""]{opacity:.5}.opacity-25{opacity:.25}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-95,[opacity-95=""]{opacity:.95}[hover~=opacity-100]:hover{opacity:1}.disabled\:opacity-50:disabled,[disabled\:opacity-50=""]:disabled{opacity:.5}.before\:opacity-100:before{opacity:1}[before~=opacity-0]:before{opacity:0}[hover~=before\:opacity-100]:hover:before{opacity:1}.mix-blend-screen,[mix-blend-screen=""]{mix-blend-mode:screen}.dark .dark\:shadow-lg,.shadow-lg,[shadow-lg=""]{--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.dark [shadow~=dark\:none]{--un-shadow:0 0 var(--un-shadow-color,#0000);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow{--un-shadow:var(--un-shadow-inset)0 1px 3px 0 var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 1px 2px -1px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-green-500\/50{--un-shadow-color:#22c55e80 }.shadow-md,[shadow-md=""],[shadow~=md]{--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-sm,[shadow-sm=""],[shadow~=sm]{--un-shadow:var(--un-shadow-inset)0 1px 2px 0 var(--un-shadow-color,#0000000d);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset)0 20px 25px -5px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 8px 10px -6px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-yellow-500\/30{--un-shadow-color:#eab3084d }[shadow-green-500=""]{--un-shadow-opacity:1;--un-shadow-color:rgb(34 197 94/var(--un-shadow-opacity))}[shadow~=cyan-200\/20]{--un-shadow-color:#a5f3fc33 }[shadow~=cyan-200\/50]{--un-shadow-color:#a5f3fc80 }[shadow~=primary-200\/20]{--un-shadow-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.2)}[shadow~=primary-200\/50]{--un-shadow-color:oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/.5)}[shadow~=violet-200\/20]{--un-shadow-color:#ddd6fe33 }[shadow~=violet-200\/50]{--un-shadow-color:#ddd6fe80 }.focus-within\:shadow-neutral-800:focus-within{--un-shadow-opacity:1;--un-shadow-color:rgb(38 38 38/var(--un-shadow-opacity))}[shadow~="focus-within:[0_0_0_1px]"]:focus-within{--un-shadow:0 0 0 1px var(--un-shadow-color);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.dark [hover~=dark\:shadow-lg]:hover{--un-shadow:var(--un-shadow-inset)0 10px 15px -3px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 4px 6px -4px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}[hover~=shadow-md]:hover{--un-shadow:var(--un-shadow-inset)0 4px 6px -1px var(--un-shadow-color,#0000001a),var(--un-shadow-inset)0 2px 4px -2px var(--un-shadow-color,#0000001a);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline{outline-style:solid}.outline-none,[outline-none=""],[outline~=focus-within\:none]:focus-within{outline-offset:2px;outline:2px solid #0000}.focus\:ring-2:focus{--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset)0 0 0 var(--un-ring-offset-width)var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset)0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width))var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.focus\:ring-offset-2:focus{--un-ring-offset-width:2px}.dark .dark\:focus\:ring-neutral-600\/30:focus{--un-ring-color:#5252524d }.dark .dark\:focus\:ring-primary-600\/30:focus{--un-ring-color:oklch(54% var(--chromatic-chroma-600)calc(var(--chromatic-hue) + 0)/.3)}.dark .dark\:focus\:ring-red-600\/30:focus{--un-ring-color:#dc26264d }.dark .dark\:focus\:ring-red-600\/60:focus{--un-ring-color:#dc262699 }.focus\:ring-black\/10:focus{--un-ring-color:#0000001a }.focus\:ring-neutral-300\/60:focus{--un-ring-color:#d4d4d499 }.focus\:ring-primary-300\/60:focus{--un-ring-color:oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/.6)}.focus\:ring-red-300\/30:focus{--un-ring-color:#fca5a54d }.dark .dark\:focus\:ring-offset-neutral-900:focus{--un-ring-offset-opacity:1;--un-ring-offset-color:rgb(23 23 23/var(--un-ring-offset-opacity))}.focus\:ring-offset-white:focus{--un-ring-offset-opacity:1;--un-ring-offset-color:rgb(255 255 255/var(--un-ring-offset-opacity))}.backdrop-blur-md,[backdrop-blur-md=""]{--un-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.backdrop-blur-sm,[backdrop-blur-sm=""]{--un-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.backdrop-blur-xl,[backdrop-blur-xl=""]{--un-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.blur{--un-blur:blur(8px);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.drop-shadow{--un-drop-shadow:drop-shadow(0 1px 2px var(--un-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--un-drop-shadow-color,#0000000f));filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.drop-shadow-sm,[drop-shadow-sm=""]{--un-drop-shadow:drop-shadow(0 1px 1px var(--un-drop-shadow-color,#0000000d));filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}[drop-shadow~=none],.dark [drop-shadow~="dark:hover:none"]:hover{--un-drop-shadow:drop-shadow(0 0 var(--un-drop-shadow-color,#0000));filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}[drop-shadow~="hover:[0px_4px_4px_rgba(220,220,220,0.4)]"]:hover{--un-drop-shadow:drop-shadow(0px 4px 4px #dcdcdc66);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}[drop-shadow~="active:[0px_0px_0px_rgba(220,220,220,0.25)]"]:active{--un-drop-shadow:drop-shadow(0px 0px 0px #dcdcdc40);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.\[\&_\.provider-icon\]\:grayscale-100 .provider-icon,.grayscale-100,[grayscale-100=""]{--un-grayscale:grayscale(1);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.\[\&_\.provider-icon\]\:hover\:grayscale-0:hover .provider-icon{--un-grayscale:grayscale(0);filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.filter{filter:var(--un-blur)var(--un-brightness)var(--un-contrast)var(--un-drop-shadow)var(--un-grayscale)var(--un-hue-rotate)var(--un-invert)var(--un-saturate)var(--un-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur)var(--un-backdrop-brightness)var(--un-backdrop-contrast)var(--un-backdrop-grayscale)var(--un-backdrop-hue-rotate)var(--un-backdrop-invert)var(--un-backdrop-opacity)var(--un-backdrop-saturate)var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\,margin\]{transition-property:width,margin;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-100,[transition~="100"]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.1s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all,[transition-all=""],[transition~=all]{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors,[transition-colors=""],[transition~=colors]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity,[transition-opacity=""]{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform,[transition~=transform]{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition~=border]{transition-property:border;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition~=width]{transition-property:width;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}[transition~=placeholder\:all]::placeholder,[before~=transition-all]:before,.after\:transition-all:after,[after~=transition-all]:after{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,[duration-150=""]{transition-duration:.15s}.duration-200,[duration-200=""],[transition~=duration-200]{transition-duration:.2s}.duration-250,[duration-250=""],[duration~="250"],[transition~=duration-250]{transition-duration:.25s}.duration-300,[transition~=duration-300]{transition-duration:.3s}.duration-400,[transition~=duration-400]{transition-duration:.4s}.duration-500,[duration-500=""],[duration~="500"],[transition~=duration-500]{transition-duration:.5s}.duration-75{transition-duration:75ms}[duration~="10"]{transition-duration:10ms}[duration~="1000"]{transition-duration:1s}.placeholder\:duration-250::placeholder,[placeholder\:duration-250=""]::placeholder,[transition~=placeholder\:duration-250]::placeholder{transition-duration:.25s}[before~=duration-400]:before,[after~=duration-400]:after{transition-duration:.4s}[delay~="10"]{transition-delay:10ms}[delay~="100"]{transition-delay:.1s}[delay~="11"]{transition-delay:11ms}[delay~="19"]{transition-delay:19ms}[delay~="2"]{transition-delay:2ms}[delay~="20"]{transition-delay:20ms}[delay~="200"]{transition-delay:.2s}[delay~="3"]{transition-delay:3ms}[delay~="4"]{transition-delay:4ms}[delay~="5"]{transition-delay:5ms}[delay~="50"]{transition-delay:50ms}[delay~="6"]{transition-delay:6ms}[delay~="7"]{transition-delay:7ms}[delay~="8"]{transition-delay:8ms}[delay~="9"]{transition-delay:9ms}.ease,.ease-in-out,[ease-in-out=""],[transition~=ease-in-out]{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-linear,[ease-linear=""]{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.placeholder\:ease-in-out::placeholder,[transition~=placeholder\:ease-in-out]::placeholder,[before~=ease-in-out]:before,[after~=ease-in-out]:after{transition-timing-function:cubic-bezier(.4,0,.2,1)}.will-change-background-color,[will-change-background-color=""]{will-change:background-color}.will-change-color,[will-change-color=""]{will-change:color}.will-change-transform,[will-change-transform=""]{will-change:transform}.will-change-width,[will-change-width=""]{will-change:width}.before\:content-\[\'\'\]:before,.after\:content-\[\'\'\]:after,.content-empty,[before~=content-empty]:before,[after~=content-empty]:after{content:""}.hidden,[hidden=""]{display:none}.bg-dotted-\[neutral-200\/60\]{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.6}.bg-dotted-\[neutral-200\/80\]{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.8}.dark .dark\:bg-dotted-\[neutral-700\/25\]{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.25}.dark .dark\:bg-dotted-\[neutral-700\/40\]{background-image:radial-gradient(circle at 1px 1px,rgb(64 64 64/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.4}.dark .dark\:hover\:bg-dotted-\[primary-200\/20\]:hover{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.hover\:bg-dotted-\[primary-300\/50\]:hover,.after\:bg-dotted-\[primary-300\/50\]:after{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.dark .dark\:after\:bg-dotted-\[primary-200\/20\]:after,.dark [hover~="dark:after:bg-dotted-[primary-200/20]"]:hover:after{background-image:radial-gradient(circle at 1px 1px,oklch(90% var(--chromatic-chroma-200)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}[after~="bg-dotted-[neutral-200/80]"]:after{background-image:radial-gradient(circle at 1px 1px,rgb(229 229 229/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:.8}[hover~="after:bg-dotted-[primary-300/50]"]:hover:after{background-image:radial-gradient(circle at 1px 1px,oklch(85% var(--chromatic-chroma-300)calc(var(--chromatic-hue) + 0)/var(--un-background-opacity))1px,transparent 0);--un-background-opacity:%alpha}.transition-colors-none,.placeholder\:transition-colors-none::placeholder{transition-property:color,background-color,border-color,text-color;transition-duration:0s}@media (max-width:1023.9px){[min-w~="{let c=t(`motion`);return a((n(),r(`div`,s,o[0]||=[i(`div`,{text:`60`,"i-solar:leaf-bold-duotone":``},null,-1)])),[[c]])}}});typeof o==`function`&&o(c);var l=c;export{l as default}; \ No newline at end of file diff --git a/assets/memory-aTUtni3K.js b/assets/memory-aTUtni3K.js deleted file mode 100644 index 2e48efecb4949750f5b241900dad78ed0e681fe2..0000000000000000000000000000000000000000 --- a/assets/memory-aTUtni3K.js +++ /dev/null @@ -1 +0,0 @@ -import{createBaseVNode as e,createElementBlock as t,defineComponent as n,openBlock as r,resolveDirective as i,withDirectives as a}from"./index-iQVr9nx1.js";import{route_block_default as o}from"./route-block-D_p8WJle.js";const s={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:15},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var c=n({__name:`index`,setup(n){return(n,o)=>{let c=i(`motion`);return a((r(),t(`div`,s,o[0]||=[e(`div`,{text:`60`,"i-solar:leaf-bold-duotone":``},null,-1)])),[[c]])}}});typeof o==`function`&&o(c);var l=c;export{l as default}; \ No newline at end of file diff --git a/assets/memory-long-term-CPfD2kUn.js b/assets/memory-long-term-CPfD2kUn.js deleted file mode 100644 index 963c76e12eb5beb8eb78633556663d7ba78a069f..0000000000000000000000000000000000000000 --- a/assets/memory-long-term-CPfD2kUn.js +++ /dev/null @@ -1 +0,0 @@ -import{createElementBlock as e,defineComponent as t,openBlock as n}from"./index-iQVr9nx1.js";import{route_block_default as r}from"./route-block-D_p8WJle.js";var i=t({__name:`memory-long-term`,setup(t){return(t,r)=>(n(),e(`div`))}});typeof r==`function`&&r(i);var a=i;export{a as default}; \ No newline at end of file diff --git a/assets/memory-long-term-Ct-X9BDW.js b/assets/memory-long-term-Ct-X9BDW.js new file mode 100644 index 0000000000000000000000000000000000000000..198b852aae60cbc9428d33402a99c62e2f94f920 --- /dev/null +++ b/assets/memory-long-term-Ct-X9BDW.js @@ -0,0 +1 @@ +import{d7 as e,dH as t,db as n}from"./index-C9kcCpP-.js";import{b as r}from"./route-block-B2lA4iHQ.js";var i=e({__name:`memory-long-term`,setup(e){return(e,r)=>(t(),n(`div`))}});typeof r==`function`&&r(i);var a=i;export{a as default}; \ No newline at end of file diff --git a/assets/memory-short-term-DFRE0wky.js b/assets/memory-short-term-DFRE0wky.js deleted file mode 100644 index af47aa35c0d7f2fa85133a4ef81b56231ada48ba..0000000000000000000000000000000000000000 --- a/assets/memory-short-term-DFRE0wky.js +++ /dev/null @@ -1 +0,0 @@ -import{createElementBlock as e,defineComponent as t,openBlock as n}from"./index-iQVr9nx1.js";import{route_block_default as r}from"./route-block-D_p8WJle.js";var i=t({__name:`memory-short-term`,setup(t){return(t,r)=>(n(),e(`div`))}});typeof r==`function`&&r(i);var a=i;export{a as default}; \ No newline at end of file diff --git a/assets/memory-short-term-Dw4gKfK3.js b/assets/memory-short-term-Dw4gKfK3.js new file mode 100644 index 0000000000000000000000000000000000000000..bfbae1eddbf70ba0fc5ef561aebdf36ce1bdad1e --- /dev/null +++ b/assets/memory-short-term-Dw4gKfK3.js @@ -0,0 +1 @@ +import{d7 as e,dH as t,db as n}from"./index-C9kcCpP-.js";import{b as r}from"./route-block-B2lA4iHQ.js";var i=e({__name:`memory-short-term`,setup(e){return(e,r)=>(t(),n(`div`))}});typeof r==`function`&&r(i);var a=i;export{a as default}; \ No newline at end of file diff --git a/assets/messages-BIOkfqJ8.js b/assets/messages-BIOkfqJ8.js deleted file mode 100644 index 0660002576a476ea78be8d649fc11f2839402343..0000000000000000000000000000000000000000 --- a/assets/messages-BIOkfqJ8.js +++ /dev/null @@ -1 +0,0 @@ -import"./Basic-BE3KxqAa.js";import{Textarea_default as e}from"./Textarea-BJEUAUG6.js";import{Fragment as t,createBaseVNode as n,createElementBlock as r,createVNode as i,defineComponent as a,llmInferenceEndToken as o,openBlock as s,ref as c,renderList as l,toDisplayString as u,unref as d,useMessageContentQueue as f,useQueue as p}from"./index-iQVr9nx1.js";const m={flex:``,"flex-col":``,"gap-2":``,"p-2":``},h={flex:``,"flex-row":``,"gap-2":``},g={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},_={"w-full":``,flex:``,"flex-row":``,"gap-4":``},v={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var y=a({__name:`messages`,setup(a){let y=c(``),b=c([]),x=c(!1),S=p({handlers:[async e=>{b.value.push(e.data)}]}),C=f(S);async function w(){x.value=!0,C.add(y.value),C.add(o),y.value=``,x.value=!1}return(a,o)=>(s(),r(`div`,m,[n(`div`,h,[i(d(e),{modelValue:y.value,"onUpdate:modelValue":o[0]||=e=>y.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:w},null,8,[`modelValue`]),n(`button`,g,u(x.value?`Processing...`:`Send`),1)]),n(`div`,_,[n(`div`,v,[o[1]||=n(`h3`,{"font-normal":``},` TTS Message `,-1),(s(!0),r(t,null,l(b.value,e=>(s(),r(`div`,{key:e},[n(`div`,null,u(e),1)]))),128))])])]))}}),b=y;export{b as default}; \ No newline at end of file diff --git a/assets/messages-E5zyAorn.js b/assets/messages-E5zyAorn.js new file mode 100644 index 0000000000000000000000000000000000000000..2505150e3fb6e896ce48408fa09b354e34811fbf --- /dev/null +++ b/assets/messages-E5zyAorn.js @@ -0,0 +1 @@ +import"./Basic-D95BeH1T.js";import{b as e}from"./Textarea-CMwGMW-L.js";import{A as t,C as n,at as r,d7 as i,dB as a,dH as o,dK as s,dV as c,db as l,dj as u,dl as d,du as f,e1 as p}from"./index-C9kcCpP-.js";const m={flex:``,"flex-col":``,"gap-2":``,"p-2":``},h={flex:``,"flex-row":``,"gap-2":``},g={"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-4":``},_={"w-full":``,flex:``,"flex-row":``,"gap-4":``},v={"w-full":``,"rounded-lg":``,bg:`neutral-100 dark:neutral-700`,"p-2":``};var y=i({__name:`messages`,setup(i){let y=s(``),b=s([]),x=s(!1),S=n({handlers:[async e=>{b.value.push(e.data)}]}),C=t(S);async function w(){x.value=!0,C.add(y.value),C.add(r),y.value=``,x.value=!1}return(t,n)=>(o(),l(`div`,m,[u(`div`,h,[a(c(e),{modelValue:y.value,"onUpdate:modelValue":n[0]||=e=>y.value=e,placeholder:`Message`,p:`2`,bg:`neutral-100 dark:neutral-700`,"w-full":``,"rounded-lg":``,"outline-none":``,onSubmit:w},null,8,[`modelValue`]),u(`button`,g,p(x.value?`Processing...`:`Send`),1)]),u(`div`,_,[u(`div`,v,[n[1]||=u(`h3`,{"font-normal":``},` TTS Message `,-1),(o(!0),l(f,null,d(b.value,e=>(o(),l(`div`,{key:e},[u(`div`,null,p(e),1)]))),128))])])]))}}),b=y;export{b as default}; \ No newline at end of file diff --git a/assets/microsoft-speech-Bp0hO7OG.js b/assets/microsoft-speech-Bp0hO7OG.js deleted file mode 100644 index 33db4b86f7a557154e11ca60536adf551aac0124..0000000000000000000000000000000000000000 --- a/assets/microsoft-speech-Bp0hO7OG.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldInput_default as e,FieldRange_default as t,SpeechPlayground_default as n,SpeechProviderSettings_default as r,computed as i,createBaseVNode as a,createBlock as o,createVNode as s,defineComponent as c,onMounted as l,openBlock as u,ref as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useSpeechStore as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b={flex:`~ col gap-4`},x=`microsoft-speech`,S=`v1`;var C=c({__name:`microsoft-speech`,setup(c){let{t:y}=m(),C={pitch:0,speed:1,volume:0},w=g(),T=h(),{providers:E}=f(T),D=d(0),O=d(1),k=d(0),A=i({get:()=>{var e;return(e=E.value[x])?.region||`eastasia`},set:e=>{E.value[x]||(E.value[x]={region:`eastasia`}),E.value[x].region=e}}),j=i(()=>{var e;return!!(e=E.value[x])?.apiKey}),M=i(()=>w.availableVoices[x]||[]);l(async()=>{await w.loadVoicesForProvider(x)}),_([j,A],async()=>{await w.loadVoicesForProvider(x)});async function N(e,t,n){let r=T.getProviderInstance(x);if(!r)throw Error(`Failed to initialize speech provider`);let i=T.getProviderConfig(x),a=i.model||S,o={...i,region:A.value,disableSsml:!n};if(!n&&t){let n=M.value.find(e=>e.id===t);if(n){let s=w.generateSSML(e,n,{...i,pitch:D.value});return await w.speech(r,a,s,t,o)}}return await w.speech(r,a,e,t,o)}return(i,c)=>(u(),o(p(r),{"provider-id":x,"default-model":S,"additional-settings":C},{"basic-settings":v(()=>[s(p(e),{modelValue:A.value,"onUpdate:modelValue":c[0]||=e=>A.value=e,label:p(y)(`settings.pages.providers.provider.microsoft-speech.fields.field.region.label`),description:p(y)(`settings.pages.providers.provider.microsoft-speech.fields.field.region.description`),placeholder:`eastasia`,required:``,type:`text`},null,8,[`modelValue`,`label`,`description`])]),"voice-settings":v(()=>[a(`div`,b,[s(p(t),{modelValue:D.value,"onUpdate:modelValue":c[1]||=e=>D.value=e,label:p(y)(`settings.pages.providers.provider.common.fields.field.pitch.label`),description:p(y)(`settings.pages.providers.provider.common.fields.field.pitch.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),s(p(t),{modelValue:O.value,"onUpdate:modelValue":c[2]||=e=>O.value=e,label:p(y)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:p(y)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`]),s(p(t),{modelValue:k.value,"onUpdate:modelValue":c[3]||=e=>k.value=e,label:p(y)(`settings.pages.providers.provider.common.fields.field.volume.label`),description:p(y)(`settings.pages.providers.provider.common.fields.field.volume.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`])])]),playground:v(()=>[s(p(n),{"available-voices":M.value,"generate-speech":N,"api-key-configured":j.value,"default-text":`Hello! This is a test of the Microsoft Speech synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof y==`function`&&y(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/microsoft-speech-jmLNHtkW.js b/assets/microsoft-speech-jmLNHtkW.js new file mode 100644 index 0000000000000000000000000000000000000000..dce57c8ae3706104c837280f7a1b64cba6e305af --- /dev/null +++ b/assets/microsoft-speech-jmLNHtkW.js @@ -0,0 +1 @@ +import{K as e,Q as t,a8 as n,aJ as r,aa as i,b as a,d3 as o,d7 as s,dB as c,dF as l,dH as u,dK as d,dV as f,da as p,dj as m,dn as h,dv as g,g as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b={flex:`~ col gap-4`},x=`microsoft-speech`,S=`v1`;var C=s({__name:`microsoft-speech`,setup(s){let{t:y}=t(),C={pitch:0,speed:1,volume:0},w=_(),T=v(),{providers:E}=r(T),D=d(0),O=d(1),k=d(0),A=g({get:()=>E.value[x]?.region||`eastasia`,set:e=>{E.value[x]||(E.value[x]={region:`eastasia`}),E.value[x].region=e}}),j=g(()=>!!E.value[x]?.apiKey),M=g(()=>w.availableVoices[x]||[]);o(async()=>{await w.loadVoicesForProvider(x)}),l([j,A],async()=>{await w.loadVoicesForProvider(x)});async function N(e,t,n){let r=T.getProviderInstance(x);if(!r)throw Error(`Failed to initialize speech provider`);let i=T.getProviderConfig(x),a=i.model||S,o={...i,region:A.value,disableSsml:!n};if(!n&&t){let n=M.value.find(e=>e.id===t);if(n){let s=w.generateSSML(e,n,{...i,pitch:D.value});return await w.speech(r,a,s,t,o)}}return await w.speech(r,a,e,t,o)}return(t,r)=>(u(),h(f(a),{"provider-id":x,"default-model":S,"additional-settings":C},{"basic-settings":p(()=>[c(f(i),{modelValue:A.value,"onUpdate:modelValue":r[0]||=e=>A.value=e,label:f(y)(`settings.pages.providers.provider.microsoft-speech.fields.field.region.label`),description:f(y)(`settings.pages.providers.provider.microsoft-speech.fields.field.region.description`),placeholder:`eastasia`,required:``,type:`text`},null,8,[`modelValue`,`label`,`description`])]),"voice-settings":p(()=>[m(`div`,b,[c(f(n),{modelValue:D.value,"onUpdate:modelValue":r[1]||=e=>D.value=e,label:f(y)(`settings.pages.providers.provider.common.fields.field.pitch.label`),description:f(y)(`settings.pages.providers.provider.common.fields.field.pitch.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`]),c(f(n),{modelValue:O.value,"onUpdate:modelValue":r[2]||=e=>O.value=e,label:f(y)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:f(y)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`]),c(f(n),{modelValue:k.value,"onUpdate:modelValue":r[3]||=e=>k.value=e,label:f(y)(`settings.pages.providers.provider.common.fields.field.volume.label`),description:f(y)(`settings.pages.providers.provider.common.fields.field.volume.description`),min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`label`,`description`,`format-value`])])]),playground:p(()=>[c(f(e),{"available-voices":M.value,"generate-speech":N,"api-key-configured":j.value,"default-text":`Hello! This is a test of the Microsoft Speech synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof y==`function`&&y(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/mistral-ai-DCNKx3Gc.js b/assets/mistral-ai-DCNKx3Gc.js deleted file mode 100644 index b2527a2b5df66a18e4e432ea1af9e945abd6f5c7..0000000000000000000000000000000000000000 --- a/assets/mistral-ai-DCNKx3Gc.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`mistral-ai`;var x=l({__name:`mistral-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon-color":(f=w.value)?.iconColor,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`mis-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.mistral.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/mistral-ai-DKfvUF_S.js b/assets/mistral-ai-DKfvUF_S.js new file mode 100644 index 0000000000000000000000000000000000000000..1311acb984a83479d8fad28847f7a77cd4d2d8ab --- /dev/null +++ b/assets/mistral-ai-DKfvUF_S.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`mistral-ai`;var x=u({__name:`mistral-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon-color":w.value?.iconColor,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`mis-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.mistral.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/models-CrCwINpv.js b/assets/models-CrCwINpv.js new file mode 100644 index 0000000000000000000000000000000000000000..b2146fdc131a9288e52e77c719a6e6a27d1323b8 --- /dev/null +++ b/assets/models-CrCwINpv.js @@ -0,0 +1 @@ +import{c as e,d as t,e as n,f as r}from"./Scenes-HTltqZ48.js";import"./dist-NaQNo8Nw.js";import{Q as i,a1 as a,aC as o,aJ as s,aL as c,aQ as l,aU as u,aW as d,au as f,aw as p,cX as m,cZ as h,d as g,d7 as _,d9 as v,dB as y,dF as b,dG as x,dH as S,dI as C,dK as w,dV as T,da as E,db as D,dj as O,dl as k,dn as A,dp as j,dr as M,du as N,e1 as P,ea as F}from"./index-C9kcCpP-.js";import"./import-url-browser-D6BBwmoZ.js";import"./duckdb-mvp-D8OBsaZy.js";import{b as I}from"./route-block-B2lA4iHQ.js";import{b as L}from"./browser-UfbE_1lV.js";import{b as R}from"./ColorPalette-BSzUrihr.js";import{b as z}from"./IconAnimation-CvK4BRGS.js";import{b as B}from"./icon-animation-BGVKm1so.js";const V=[`disabled`];var H=_({__name:`Live2DModelControlButton`,emits:[`click`],setup(e){let t=g();return(e,n)=>(S(),D(`button`,{disabled:T(t).loadingLive2dModel,bg:`neutral-100 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`,transition:`all ease-in-out duration-250`,rounded:``,onClick:n[0]||=t=>e.$emit(`click`)},[j(e.$slots,`default`)],8,V))}}),U=H,W=F(e()),G=F(n());const K={flex:`~ col gap-2`},q={flex:``,"items-center":``,"gap-2":``},J=[`disabled`,`placeholder`],Y={"font-medium":``,"font-mono":``},X={flex:``,"gap-2":``},Z=[`onUpdate:modelValue`],Q=[`href`,`download`];var ee=_({__name:`Live2DSettings`,props:{palette:{}},emits:[`extractColorsFromModel`],setup(e){let{t}=i(),n=u({accept:`application/zip`}),r=g(),{live2dModelFile:o,live2dMotionMap:c,live2dLoadSource:l,loadingLive2dModel:_,availableLive2dMotions:x,live2dModelUrl:j}=s(r),F=w(j.value);n.onChange(e=>{e&&e.length>0&&(c.value={},o.value=e[0],l.value=`file`,_.value=!0)}),b(()=>r.loadingLive2dModel,e=>{e||l.value===`file`&&x.value.forEach(e=>{e.motionName in f?c.value[e.fileName]=e.motionName:c.value[e.fileName]=p})});async function I(e,t){if(!Object.keys(t).length)return e;let n=new W.default,r=await n.loadAsync(e),i=Object.keys(r.files).find(e=>e.endsWith(`model3.json`));if(!i)throw Error(`model3.json not found`);let a=await r.file(i).async(`string`),o=JSON.parse(a),s={};Object.entries(t).forEach(([e,t])=>{if(s[t]){s[t].push({File:e});return}s[t]=[{File:e}]}),o.FileReferences.Motions=s,r.file(i,JSON.stringify(o,null,2));let c=await r.generateAsync({type:`blob`});return new File([c],e.name,{type:e.type,lastModified:e.lastModified})}async function L(){let e=await G.default.getItem(`live2dModel`);if(!e)return;let t=await I(e,c.value);o.value=t,l.value=`file`,_.value=!0}let z=d(o);return(e,i)=>(S(),D(`div`,K,[y(T(a),{title:T(t)(`settings.live2d.change-model.title`),icon:`i-solar:magic-stick-3-bold-duotone`,"inner-class":`text-sm`},{default:E(()=>[O(`div`,q,[M(O(`input`,{"onUpdate:modelValue":i[0]||=e=>F.value=e,disabled:T(r).loadingLive2dModel,class:`form-control flex-1`,border:`neutral-300 dark:neutral-800 solid 1 focus:neutral-400 dark:focus:neutral-600`,transition:`border duration-250 ease-in-out`,placeholder:T(t)(`settings.live2d.change-model.from-url-placeholder`)},null,8,J),[[h,F.value]]),y(U,{class:`form-control`,onClick:i[1]||=e=>j.value=F.value},{default:E(()=>[C(P(T(t)(`settings.live2d.change-model.from-url`)),1)]),_:1})]),y(U,{class:`form-control place-self-end`,onClick:i[2]||=e=>T(n).open()},{default:E(()=>[C(P(T(t)(`settings.live2d.change-model.from-file`))+`... `,1)]),_:1}),y(U,{class:`form-control`,onClick:i[3]||=t=>e.$emit(`extractColorsFromModel`)},{default:E(()=>i[4]||=[C(` Extract colors from model `)]),_:1,__:[4]}),y(R,{colors:e.palette.map(e=>({hex:e,name:e}))},null,8,[`colors`])]),_:1},8,[`title`]),T(r).live2dLoadSource===`file`?(S(),A(T(a),{key:0,title:T(t)(`settings.live2d.edit-motion-map.title`),icon:`i-solar:face-scan-circle-bold-duotone`},{default:E(()=>[(S(!0),D(N,null,k(T(r).availableLive2dMotions,e=>(S(),D(`div`,{key:e.fileName,flex:``,"items-center":``,"justify-between":``,"text-sm":``},[O(`span`,Y,P(e.fileName),1),O(`div`,X,[M(O(`select`,{"onUpdate:modelValue":t=>T(r).live2dMotionMap[e.fileName]=t},[(S(!0),D(N,null,k(Object.keys(T(f)),e=>(S(),D(`option`,{key:e},P(e),1))),128))],8,Z),[[m,T(r).live2dMotionMap[e.fileName]]]),y(U,{class:`form-control`,onClick:t=>T(r).live2dCurrentMotion={group:e.motionName,index:e.motionIndex}},{default:E(()=>i[5]||=[C(` Play `)]),_:2,__:[5]},1032,[`onClick`])])]))),128)),y(U,{onClick:L},{default:E(()=>i[6]||=[C(` Save and patch `)]),_:1,__:[6]}),O(`a`,{"mt-2":``,block:``,href:T(z),download:`${T(r).live2dModelFile?.name||`live2d`}-motion-edited.zip`},[y(U,{"w-full":``},{default:E(()=>i[7]||=[C(`Export`)]),_:1,__:[7]})],8,Q)]),_:1},8,[`title`])):v(``,!0)]))}}),te=o(ee,[[`__scopeId`,`data-v-ff35c324`]]);const ne={flex:``,class:`flex-col-reverse sm:flex-row`},re={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:15},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var $=_({__name:`index`,setup(e){let n=w(),i=w(),{width:a,height:o}=l(n),s=w([]);async function u(){if(!i.value)return;let e=await i.value.captureFrame();if(!e){console.error(`No frame captured`);return}let t=URL.createObjectURL(e);try{let e=new L(t),n=await e.getPalette();s.value=Object.values(n).map(e=>e?.hex).filter(e=>typeof e==`string`)}finally{URL.revokeObjectURL(t)}}let{iconAnimationStarted:d,showIconAnimation:f,animationIcon:p}=B(`i-solar:people-nearby-bold-duotone`),m=c();return(e,c)=>{let l=x(`motion`);return S(),D(N,null,[O(`div`,ne,[O(`div`,{ref_key:`live2dContainerRef`,ref:n,w:`100% sm:50%`,h:`50dvh sm:80dvh`},[y(T(r),{ref_key:`live2dCanvasRef`,ref:i,width:T(a),height:T(o),resolution:2,"max-h":`100dvh`},{default:E(({app:e})=>[y(T(t),{app:e,"mouth-open-size":0,width:T(a),height:T(o),paused:!1,"focus-at":{x:T(m).x.value,y:T(m).y.value}},null,8,[`app`,`width`,`height`,`focus-at`])]),_:1},8,[`width`,`height`])],512),y(te,{w:`100% sm:50%`,h:`50dvh sm:80dvh`,palette:s.value,onExtractColorsFromModel:u},null,8,[`palette`])]),T(f)?(S(),A(z,{key:0,"z-index":-1,icon:T(p),"icon-size":12,duration:1e3,started:T(d),"is-reverse":!0,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`},null,8,[`icon`,`started`])):M((S(),D(`div`,re,c[0]||=[O(`div`,{text:`60`,"i-solar:people-nearby-bold-duotone":``},null,-1)])),[[l]])],64)}}});typeof I==`function`&&I($);var ie=$;export{ie as default}; \ No newline at end of file diff --git a/assets/models-ceI-TpWV.js b/assets/models-ceI-TpWV.js deleted file mode 100644 index dc61e536dc914cf223252acc5ca84d9ecd0391d6..0000000000000000000000000000000000000000 --- a/assets/models-ceI-TpWV.js +++ /dev/null @@ -1 +0,0 @@ -import{Canvas_default as e,Model_default as t,require_jszip_min as n,require_localforage as r}from"./Scenes-CZT_B7Wn.js";import"./dist-GvbkCCcT.js";import{Emotion as i,EmotionNeutralMotionName as a,Fragment as o,Section_default as s,__plugin_vue_export_helper_default as c,__toESM as l,createBaseVNode as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createTextVNode as m,createVNode as h,defineComponent as g,openBlock as _,ref as v,renderList as y,renderSlot as b,resolveDirective as x,storeToRefs as S,toDisplayString as C,unref as w,useElementBounding as T,useFileDialog as E,useI18n as D,useMouse as O,useObjectUrl as k,useSettings as A,vModelSelect as j,vModelText as M,watch as N,withCtx as P,withDirectives as F}from"./index-iQVr9nx1.js";import"./import-url-browser-7PcqReZq.js";import"./duckdb-mvp-D888HGlq.js";import{route_block_default as I}from"./route-block-D_p8WJle.js";import{Vibrant as L}from"./browser-3IcCfs_4.js";import{ColorPalette_default as R}from"./ColorPalette-vg8v3B0o.js";import{IconAnimation_default as z}from"./IconAnimation-Ddiua4ZD.js";import{useIconAnimation as B}from"./icon-animation-B3Ug4nWM.js";const V=[`disabled`];var H=g({__name:`Live2DModelControlButton`,emits:[`click`],setup(e){let t=A();return(e,n)=>(_(),p(`button`,{disabled:w(t).loadingLive2dModel,bg:`neutral-100 dark:neutral-800`,hover:`bg-neutral-200 dark:bg-neutral-700`,transition:`all ease-in-out duration-250`,rounded:``,onClick:n[0]||=t=>e.$emit(`click`)},[b(e.$slots,`default`)],8,V))}}),U=H,W=l(n()),G=l(r());const K={flex:`~ col gap-2`},q={flex:``,"items-center":``,"gap-2":``},J=[`disabled`,`placeholder`],Y={"font-medium":``,"font-mono":``},X={flex:``,"gap-2":``},Z=[`onUpdate:modelValue`],Q=[`href`,`download`];var ee=g({__name:`Live2DSettings`,props:{palette:{}},emits:[`extractColorsFromModel`],setup(e){let{t}=D(),n=E({accept:`application/zip`}),r=A(),{live2dModelFile:c,live2dMotionMap:l,live2dLoadSource:g,loadingLive2dModel:b,availableLive2dMotions:x,live2dModelUrl:T}=S(r),O=v(T.value);n.onChange(e=>{e&&e.length>0&&(l.value={},c.value=e[0],g.value=`file`,b.value=!0)}),N(()=>r.loadingLive2dModel,e=>{e||g.value===`file`&&x.value.forEach(e=>{e.motionName in i?l.value[e.fileName]=e.motionName:l.value[e.fileName]=a})});async function I(e,t){if(!Object.keys(t).length)return e;let n=new W.default,r=await n.loadAsync(e),i=Object.keys(r.files).find(e=>e.endsWith(`model3.json`));if(!i)throw Error(`model3.json not found`);let a=await r.file(i).async(`string`),o=JSON.parse(a),s={};Object.entries(t).forEach(([e,t])=>{if(s[t]){s[t].push({File:e});return}s[t]=[{File:e}]}),o.FileReferences.Motions=s,r.file(i,JSON.stringify(o,null,2));let c=await r.generateAsync({type:`blob`});return new File([c],e.name,{type:e.type,lastModified:e.lastModified})}async function L(){let e=await G.default.getItem(`live2dModel`);if(!e)return;let t=await I(e,l.value);c.value=t,g.value=`file`,b.value=!0}let z=k(c);return(e,a)=>(_(),p(`div`,K,[h(w(s),{title:w(t)(`settings.live2d.change-model.title`),icon:`i-solar:magic-stick-3-bold-duotone`,"inner-class":`text-sm`},{default:P(()=>[u(`div`,q,[F(u(`input`,{"onUpdate:modelValue":a[0]||=e=>O.value=e,disabled:w(r).loadingLive2dModel,class:`form-control flex-1`,border:`neutral-300 dark:neutral-800 solid 1 focus:neutral-400 dark:focus:neutral-600`,transition:`border duration-250 ease-in-out`,placeholder:w(t)(`settings.live2d.change-model.from-url-placeholder`)},null,8,J),[[M,O.value]]),h(U,{class:`form-control`,onClick:a[1]||=e=>T.value=O.value},{default:P(()=>[m(C(w(t)(`settings.live2d.change-model.from-url`)),1)]),_:1})]),h(U,{class:`form-control place-self-end`,onClick:a[2]||=e=>w(n).open()},{default:P(()=>[m(C(w(t)(`settings.live2d.change-model.from-file`))+`... `,1)]),_:1}),h(U,{class:`form-control`,onClick:a[3]||=t=>e.$emit(`extractColorsFromModel`)},{default:P(()=>a[4]||=[m(` Extract colors from model `)]),_:1,__:[4]}),h(R,{colors:e.palette.map(e=>({hex:e,name:e}))},null,8,[`colors`])]),_:1},8,[`title`]),w(r).live2dLoadSource===`file`?(_(),d(w(s),{key:0,title:w(t)(`settings.live2d.edit-motion-map.title`),icon:`i-solar:face-scan-circle-bold-duotone`},{default:P(()=>{var e;return[(_(!0),p(o,null,y(w(r).availableLive2dMotions,e=>(_(),p(`div`,{key:e.fileName,flex:``,"items-center":``,"justify-between":``,"text-sm":``},[u(`span`,Y,C(e.fileName),1),u(`div`,X,[F(u(`select`,{"onUpdate:modelValue":t=>w(r).live2dMotionMap[e.fileName]=t},[(_(!0),p(o,null,y(Object.keys(w(i)),e=>(_(),p(`option`,{key:e},C(e),1))),128))],8,Z),[[j,w(r).live2dMotionMap[e.fileName]]]),h(U,{class:`form-control`,onClick:t=>w(r).live2dCurrentMotion={group:e.motionName,index:e.motionIndex}},{default:P(()=>a[5]||=[m(` Play `)]),_:2,__:[5]},1032,[`onClick`])])]))),128)),h(U,{onClick:L},{default:P(()=>a[6]||=[m(` Save and patch `)]),_:1,__:[6]}),u(`a`,{"mt-2":``,block:``,href:w(z),download:`${(e=w(r).live2dModelFile)?.name||`live2d`}-motion-edited.zip`},[h(U,{"w-full":``},{default:P(()=>a[7]||=[m(`Export`)]),_:1,__:[7]})],8,Q)]}),_:1},8,[`title`])):f(``,!0)]))}}),te=c(ee,[[`__scopeId`,`data-v-ff35c324`]]);const ne={flex:``,class:`flex-col-reverse sm:flex-row`},re={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:15},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var $=g({__name:`index`,setup(n){let r=v(),i=v(),{width:a,height:s}=T(r),c=v([]);async function l(){if(!i.value)return;let e=await i.value.captureFrame();if(!e){console.error(`No frame captured`);return}let t=URL.createObjectURL(e);try{let e=new L(t),n=await e.getPalette();c.value=Object.values(n).map(e=>e?.hex).filter(e=>typeof e==`string`)}finally{URL.revokeObjectURL(t)}}let{iconAnimationStarted:f,showIconAnimation:m,animationIcon:g}=B(`i-solar:people-nearby-bold-duotone`),y=O();return(n,v)=>{let b=x(`motion`);return _(),p(o,null,[u(`div`,ne,[u(`div`,{ref_key:`live2dContainerRef`,ref:r,w:`100% sm:50%`,h:`50dvh sm:80dvh`},[h(w(e),{ref_key:`live2dCanvasRef`,ref:i,width:w(a),height:w(s),resolution:2,"max-h":`100dvh`},{default:P(({app:e})=>[h(w(t),{app:e,"mouth-open-size":0,width:w(a),height:w(s),paused:!1,"focus-at":{x:w(y).x.value,y:w(y).y.value}},null,8,[`app`,`width`,`height`,`focus-at`])]),_:1},8,[`width`,`height`])],512),h(te,{w:`100% sm:50%`,h:`50dvh sm:80dvh`,palette:c.value,onExtractColorsFromModel:l},null,8,[`palette`])]),w(m)?(_(),d(z,{key:0,"z-index":-1,icon:w(g),"icon-size":12,duration:1e3,started:w(f),"is-reverse":!0,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`},null,8,[`icon`,`started`])):F((_(),p(`div`,re,v[0]||=[u(`div`,{text:`60`,"i-solar:people-nearby-bold-duotone":``},null,-1)])),[[b]])],64)}}});typeof I==`function`&&I($);var ie=$;export{ie as default}; \ No newline at end of file diff --git a/assets/modules-BIBnS6fC.js b/assets/modules-BIBnS6fC.js new file mode 100644 index 0000000000000000000000000000000000000000..87909fb31373dd22250729830f69faa4c0d0009b --- /dev/null +++ b/assets/modules-BIBnS6fC.js @@ -0,0 +1 @@ +import{Q as e,_ as t,d7 as n,dG as r,dH as i,dV as a,db as o,dj as s,dl as c,dn as l,dr as u,du as d,dv as f}from"./index-C9kcCpP-.js";import{b as p}from"./route-block-B2lA4iHQ.js";import{b as m}from"./IconAnimation-CvK4BRGS.js";import{b as h}from"./icon-animation-BGVKm1so.js";const g={grid:`~ cols-1 sm:cols-2 gap-4`},_={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:20},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var v=n({__name:`index`,setup(n){let{t:p}=e(),v=f(()=>[{id:`consciousness`,name:p(`settings.pages.modules.consciousness.title`),description:p(`settings.pages.modules.consciousness.description`),icon:`i-solar:ghost-bold-duotone`,to:`/settings/modules/consciousness`,configured:!1},{id:`speech`,name:p(`settings.pages.modules.speech.title`),description:p(`settings.pages.modules.speech.description`),icon:`i-solar:user-speak-rounded-bold-duotone`,to:`/settings/modules/speech`,configured:!1},{id:`hearing`,name:p(`settings.pages.modules.hearing.title`),description:p(`settings.pages.modules.hearing.description`),icon:`i-solar:microphone-3-bold-duotone`,to:`/settings/modules/hearing`,configured:!1},{id:`vision`,name:p(`settings.pages.modules.vision.title`),description:p(`settings.pages.modules.vision.description`),icon:`i-solar:eye-closed-bold-duotone`,to:``,configured:!1},{id:`memory-short-term`,name:p(`settings.pages.modules.memory-short-term.title`),description:p(`settings.pages.modules.memory-short-term.description`),icon:`i-solar:bookmark-bold-duotone`,to:`/settings/modules/memory-short-term`,configured:!1},{id:`memory-long-term`,name:p(`settings.pages.modules.memory-long-term.title`),description:p(`settings.pages.modules.memory-long-term.description`),icon:`i-solar:book-bookmark-bold-duotone`,to:`/settings/modules/memory-long-term`,configured:!1},{id:`messaging-discord`,name:p(`settings.pages.modules.messaging-discord.title`),description:p(`settings.pages.modules.messaging-discord.description`),icon:`i-simple-icons:discord`,to:``,configured:!1},{id:`x`,name:p(`settings.pages.modules.x.title`),description:p(`settings.pages.modules.x.description`),icon:`i-simple-icons:x`,to:``,configured:!1},{id:`game-minecraft`,name:p(`settings.pages.modules.gaming-minecraft.title`),description:p(`settings.pages.modules.gaming-minecraft.description`),iconColor:`i-vscode-icons:file-type-minecraft`,to:``,configured:!1},{id:`game-factorio`,name:p(`settings.pages.modules.gaming-factorio.title`),description:p(`settings.pages.modules.gaming-factorio.description`),iconImage:``,to:``,configured:!1}]),{iconAnimationStarted:y,showIconAnimation:b,animationIcon:x}=h(`i-solar:layers-bold-duotone`);return(e,n)=>{let f=r(`motion`);return i(),o(d,null,[s(`div`,g,[(i(!0),o(d,null,c(v.value,(e,n)=>u((i(),l(a(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:n*50,title:e.name,description:e.description,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:e.to,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[f]])),128))]),a(b)?(i(),l(m,{key:0,icon:a(x),"icon-size":12,duration:1e3,started:a(y),"is-reverse":!0,"z-index":-1,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`},null,8,[`icon`,`started`])):u((i(),o(`div`,_,n[0]||=[s(`div`,{text:`60`,"i-solar:layers-bold-duotone":``},null,-1)])),[[f]])],64)}}});typeof p==`function`&&p(v);var y=v;export{y as default}; \ No newline at end of file diff --git a/assets/modules-D4OJ1522.js b/assets/modules-D4OJ1522.js deleted file mode 100644 index 4f731e03e7a9377e4d3786d0c35e3361bb843426..0000000000000000000000000000000000000000 --- a/assets/modules-D4OJ1522.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,IconStatusItem_default as t,computed as n,createBaseVNode as r,createBlock as i,createElementBlock as a,defineComponent as o,openBlock as s,renderList as c,resolveDirective as l,unref as u,useI18n as d,withDirectives as f}from"./index-iQVr9nx1.js";import{route_block_default as p}from"./route-block-D_p8WJle.js";import{IconAnimation_default as m}from"./IconAnimation-Ddiua4ZD.js";import{useIconAnimation as h}from"./icon-animation-B3Ug4nWM.js";const g={grid:`~ cols-1 sm:cols-2 gap-4`},_={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:20},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var v=o({__name:`index`,setup(o){let{t:p}=d(),v=n(()=>[{id:`consciousness`,name:p(`settings.pages.modules.consciousness.title`),description:p(`settings.pages.modules.consciousness.description`),icon:`i-solar:ghost-bold-duotone`,to:`/settings/modules/consciousness`,configured:!1},{id:`speech`,name:p(`settings.pages.modules.speech.title`),description:p(`settings.pages.modules.speech.description`),icon:`i-solar:user-speak-rounded-bold-duotone`,to:`/settings/modules/speech`,configured:!1},{id:`hearing`,name:p(`settings.pages.modules.hearing.title`),description:p(`settings.pages.modules.hearing.description`),icon:`i-solar:microphone-3-bold-duotone`,to:`/settings/modules/hearing`,configured:!1},{id:`vision`,name:p(`settings.pages.modules.vision.title`),description:p(`settings.pages.modules.vision.description`),icon:`i-solar:eye-closed-bold-duotone`,to:``,configured:!1},{id:`memory-short-term`,name:p(`settings.pages.modules.memory-short-term.title`),description:p(`settings.pages.modules.memory-short-term.description`),icon:`i-solar:bookmark-bold-duotone`,to:`/settings/modules/memory-short-term`,configured:!1},{id:`memory-long-term`,name:p(`settings.pages.modules.memory-long-term.title`),description:p(`settings.pages.modules.memory-long-term.description`),icon:`i-solar:book-bookmark-bold-duotone`,to:`/settings/modules/memory-long-term`,configured:!1},{id:`messaging-discord`,name:p(`settings.pages.modules.messaging-discord.title`),description:p(`settings.pages.modules.messaging-discord.description`),icon:`i-simple-icons:discord`,to:``,configured:!1},{id:`x`,name:p(`settings.pages.modules.x.title`),description:p(`settings.pages.modules.x.description`),icon:`i-simple-icons:x`,to:``,configured:!1},{id:`game-minecraft`,name:p(`settings.pages.modules.gaming-minecraft.title`),description:p(`settings.pages.modules.gaming-minecraft.description`),iconColor:`i-vscode-icons:file-type-minecraft`,to:``,configured:!1},{id:`game-factorio`,name:p(`settings.pages.modules.gaming-factorio.title`),description:p(`settings.pages.modules.gaming-factorio.description`),iconImage:``,to:``,configured:!1}]),{iconAnimationStarted:y,showIconAnimation:b,animationIcon:x}=h(`i-solar:layers-bold-duotone`);return(n,o)=>{let d=l(`motion`);return s(),a(e,null,[r(`div`,g,[(s(!0),a(e,null,c(v.value,(e,n)=>f((s(),i(u(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:n*50,title:e.name,description:e.description,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:e.to,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[d]])),128))]),u(b)?(s(),i(m,{key:0,icon:u(x),"icon-size":12,duration:1e3,started:u(y),"is-reverse":!0,"z-index":-1,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`},null,8,[`icon`,`started`])):f((s(),a(`div`,_,o[0]||=[r(`div`,{text:`60`,"i-solar:layers-bold-duotone":``},null,-1)])),[[d]])],64)}}});typeof p==`function`&&p(v);var y=v;export{y as default}; \ No newline at end of file diff --git a/assets/moonshot-ai-BdPynK2u.js b/assets/moonshot-ai-BdPynK2u.js deleted file mode 100644 index 99a12e235671469f7a36ca67093b5b42ed0048ad..0000000000000000000000000000000000000000 --- a/assets/moonshot-ai-BdPynK2u.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`moonshot-ai`;var x=l({__name:`moonshot-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`ms-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.moonshot.cn/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/moonshot-ai-cGYSl1Nz.js b/assets/moonshot-ai-cGYSl1Nz.js new file mode 100644 index 0000000000000000000000000000000000000000..b0a109abde76f7125ce306d8477489bd7bcfdcf5 --- /dev/null +++ b/assets/moonshot-ai-cGYSl1Nz.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`moonshot-ai`;var x=u({__name:`moonshot-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`ms-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.moonshot.cn/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/novita-ai-B4HVg0kO.js b/assets/novita-ai-B4HVg0kO.js new file mode 100644 index 0000000000000000000000000000000000000000..645220a78af77462ac1ec066698dddaf55b607ac --- /dev/null +++ b/assets/novita-ai-B4HVg0kO.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`novita-ai`;var x=u({__name:`novita-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon-color":w.value?.iconColor,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`nvt-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.novita.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/novita-ai-D-ZB8cQc.js b/assets/novita-ai-D-ZB8cQc.js deleted file mode 100644 index 23659d69763738bb33c9af96e7539b57cc58115f..0000000000000000000000000000000000000000 --- a/assets/novita-ai-D-ZB8cQc.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`novita-ai`;var x=l({__name:`novita-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon-color":(f=w.value)?.iconColor,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`nvt-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.novita.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/ollama-6INhEbAn.js b/assets/ollama-6INhEbAn.js new file mode 100644 index 0000000000000000000000000000000000000000..e2b1afddb9304106e2ffca1bce30320d05dac479 --- /dev/null +++ b/assets/ollama-6INhEbAn.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,Q as i,R as a,a9 as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dK as m,dV as h,da as g,dn as _,dv as v,i as y}from"./index-C9kcCpP-.js";import{b}from"./route-block-B2lA4iHQ.js";const x=`ollama`;var S=u({__name:`ollama`,setup(u){let{t:b}=i(),S=s(),C=y(),{providers:w}=c(C),T=v(()=>C.getProviderMetadata(x)),E=v({get:()=>w.value[x]?.baseUrl||T.value?.defaultOptions?.().baseUrl||``,set:e=>{w.value[x]||(w.value[x]={}),w.value[x].baseUrl=e}});l(()=>{C.initializeProvider(x),E.value=w.value[x]?.baseUrl||T.value?.defaultOptions?.().baseUrl||``,w.value[x]?.headers||(w.value[x].headers={})});function D(){w.value[x]={...T.value?.defaultOptions}}let O=m([{key:``,value:``}]);function k(e,t,n){e&&e.push({key:t,value:n})}function A(e,t){t&&(t.length===1?(t[0].key=``,t[0].value=``):t.splice(e,1))}return f(O,e=>{e.length>0&&(e[e.length-1].key!==``||e[e.length-1].value!==``)&&e.push({key:``,value:``})},{deep:!0,immediate:!0}),(i,s)=>(p(),_(h(e),{"provider-name":T.value?.localizedName,"provider-icon":T.value?.icon,"on-back":()=>h(S).back()},{default:g(()=>[d(h(t),null,{default:g(()=>[d(h(n),{title:h(b)(`settings.pages.providers.common.section.basic.title`),description:h(b)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:g(()=>[d(h(r),{modelValue:E.value,"onUpdate:modelValue":s[0]||=e=>E.value=e,placeholder:T.value?.defaultOptions?.().baseUrl||``,required:``},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`title`,`description`]),d(h(a),{title:h(b)(`settings.pages.providers.common.section.advanced.title`)},{default:g(()=>[d(h(o),{modelValue:O.value,"onUpdate:modelValue":s[1]||=e=>O.value=e,label:h(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.label`),description:h(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.description`),"key-placeholder":h(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.key.placeholder`),"value-placeholder":h(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.value.placeholder`),onAdd:s[2]||=(e,t)=>k(O.value,e,t),onRemove:s[3]||=e=>A(e,O.value)},null,8,[`modelValue`,`label`,`description`,`key-placeholder`,`value-placeholder`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof b==`function`&&b(S);var C=S;export{C as default}; \ No newline at end of file diff --git a/assets/ollama-BdYMmRmG.js b/assets/ollama-BdYMmRmG.js deleted file mode 100644 index c250a048f89a8eac82b1ed80e4d0e42614e00c55..0000000000000000000000000000000000000000 --- a/assets/ollama-BdYMmRmG.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldKeyValues_default as e,ProviderAdvancedSettings_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,ref as f,storeToRefs as p,unref as m,useI18n as h,useProvidersStore as g,useRouter as _,watch as v,withCtx as y}from"./index-iQVr9nx1.js";import{route_block_default as b}from"./route-block-D_p8WJle.js";const x=`ollama`;var S=l({__name:`ollama`,setup(l){let{t:b}=h(),S=_(),C=g(),{providers:w}=p(C),T=o(()=>C.getProviderMetadata(x)),E=o({get:()=>{var e,t,n;return(e=w.value[x])?.baseUrl||((t=T.value)==null||(n=t.defaultOptions)==null?void 0:n.call(t).baseUrl)||``},set:e=>{w.value[x]||(w.value[x]={}),w.value[x].baseUrl=e}});u(()=>{var e,t,n,r;C.initializeProvider(x),E.value=(e=w.value[x])?.baseUrl||((t=T.value)==null||(n=t.defaultOptions)==null?void 0:n.call(t).baseUrl)||``,(r=w.value[x])?.headers||(w.value[x].headers={})});function D(){var e;w.value[x]={...(e=T.value)?.defaultOptions}}let O=f([{key:``,value:``}]);function k(e,t,n){e&&e.push({key:t,value:n})}function A(e,t){t&&(t.length===1?(t[0].key=``,t[0].value=``):t.splice(e,1))}return v(O,e=>{e.length>0&&(e[e.length-1].key!==``||e[e.length-1].value!==``)&&e.push({key:``,value:``})},{deep:!0,immediate:!0}),(o,l)=>{var u,f;return d(),s(m(a),{"provider-name":(u=T.value)?.localizedName,"provider-icon":(f=T.value)?.icon,"on-back":()=>m(S).back()},{default:y(()=>[c(m(i),null,{default:y(()=>[c(m(r),{title:m(b)(`settings.pages.providers.common.section.basic.title`),description:m(b)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:y(()=>{var e,t;return[c(m(n),{modelValue:E.value,"onUpdate:modelValue":l[0]||=e=>E.value=e,placeholder:((e=T.value)==null||(t=e.defaultOptions)==null?void 0:t.call(e).baseUrl)||``,required:``},null,8,[`modelValue`,`placeholder`])]}),_:1},8,[`title`,`description`]),c(m(t),{title:m(b)(`settings.pages.providers.common.section.advanced.title`)},{default:y(()=>[c(m(e),{modelValue:O.value,"onUpdate:modelValue":l[1]||=e=>O.value=e,label:m(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.label`),description:m(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.description`),"key-placeholder":m(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.key.placeholder`),"value-placeholder":m(b)(`settings.pages.providers.common.section.advanced.fields.field.headers.value.placeholder`),onAdd:l[2]||=(e,t)=>k(O.value,e,t),onRemove:l[3]||=e=>A(e,O.value)},null,8,[`modelValue`,`label`,`description`,`key-placeholder`,`value-placeholder`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof b==`function`&&b(S);var C=S;export{C as default}; \ No newline at end of file diff --git a/assets/openai-D2msF8K1.js b/assets/openai-D2msF8K1.js deleted file mode 100644 index 86cf13b7349e5b936fd8b655fb97daed49442d2b..0000000000000000000000000000000000000000 --- a/assets/openai-D2msF8K1.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`openai`;var x=l({__name:`openai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||`https://api.openai.com/v1/`},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;C.value[b]||(C.value[b]={baseUrl:`https://api.openai.com/v1/`}),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||`https://api.openai.com/v1/`}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://api.openai.com/v1/`}});function D(){C.value[b]={baseUrl:`https://api.openai.com/v1/`}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName||`OpenAI`,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName||`OpenAI`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.openai.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openai-DOyMayjy.js b/assets/openai-DOyMayjy.js new file mode 100644 index 0000000000000000000000000000000000000000..7b2fb233a7de5ef9b48fa082c906f713dc6107d7 --- /dev/null +++ b/assets/openai-DOyMayjy.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`openai`;var x=u({__name:`openai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||`https://api.openai.com/v1/`,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{C.value[b]||(C.value[b]={baseUrl:`https://api.openai.com/v1/`}),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||`https://api.openai.com/v1/`}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://api.openai.com/v1/`}});function D(){C.value[b]={baseUrl:`https://api.openai.com/v1/`}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName||`OpenAI`,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName||`OpenAI`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.openai.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openai-audio-speech-DfzMcJUw.js b/assets/openai-audio-speech-DfzMcJUw.js new file mode 100644 index 0000000000000000000000000000000000000000..ed1d7b93bc7abd73d47209dee408d3445c7a4b73 --- /dev/null +++ b/assets/openai-audio-speech-DfzMcJUw.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`openai`;var x=u({__name:`openai-audio-speech`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||`https://api.openai.com/v1/`,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{C.value[b]||(C.value[b]={baseUrl:`https://api.openai.com/v1/`}),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||`https://api.openai.com/v1/`}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://api.openai.com/v1/`}});function D(){C.value[b]={baseUrl:`https://api.openai.com/v1/`}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName||`OpenAI`,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName||`OpenAI`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.openai.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openai-audio-speech-Dozx0Ri_.js b/assets/openai-audio-speech-Dozx0Ri_.js deleted file mode 100644 index 64a59379fcd1f1607630136f1a29152d326e923a..0000000000000000000000000000000000000000 --- a/assets/openai-audio-speech-Dozx0Ri_.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`openai`;var x=l({__name:`openai-audio-speech`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||`https://api.openai.com/v1/`},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;C.value[b]||(C.value[b]={baseUrl:`https://api.openai.com/v1/`}),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||`https://api.openai.com/v1/`}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://api.openai.com/v1/`}});function D(){C.value[b]={baseUrl:`https://api.openai.com/v1/`}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName||`OpenAI`,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName||`OpenAI`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.openai.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openai-audio-transcription--fAkPCjL.js b/assets/openai-audio-transcription--fAkPCjL.js deleted file mode 100644 index 98c5ee0441d39938ad0f0d6c872b3a9bc11d5521..0000000000000000000000000000000000000000 --- a/assets/openai-audio-transcription--fAkPCjL.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`openai`;var x=l({__name:`openai-audio-transcription`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||`https://api.openai.com/v1/`},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;C.value[b]||(C.value[b]={baseUrl:`https://api.openai.com/v1/`}),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||`https://api.openai.com/v1/`}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://api.openai.com/v1/`}});function D(){C.value[b]={baseUrl:`https://api.openai.com/v1/`}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName||`OpenAI`,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName||`OpenAI`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.openai.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openai-audio-transcription-c5hgWOUB.js b/assets/openai-audio-transcription-c5hgWOUB.js new file mode 100644 index 0000000000000000000000000000000000000000..428cde08dffa1cde47cf2a6887c1c3f24a20f2dc --- /dev/null +++ b/assets/openai-audio-transcription-c5hgWOUB.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`openai`;var x=u({__name:`openai-audio-transcription`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||`https://api.openai.com/v1/`,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{C.value[b]||(C.value[b]={baseUrl:`https://api.openai.com/v1/`}),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||`https://api.openai.com/v1/`}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||`https://api.openai.com/v1/`}});function D(){C.value[b]={baseUrl:`https://api.openai.com/v1/`}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName||`OpenAI`,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName||`OpenAI`,placeholder:`sk-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.openai.com/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openrouter-ai-DzSt5Tci.js b/assets/openrouter-ai-DzSt5Tci.js new file mode 100644 index 0000000000000000000000000000000000000000..4cea2abacd58470bd10aa7e5b8b10b9c167d7188 --- /dev/null +++ b/assets/openrouter-ai-DzSt5Tci.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`openrouter-ai`;var x=u({__name:`openrouter-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||w.value?.defaultOptions?.().baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||w.value?.defaultOptions?.().baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||w.value?.defaultOptions?.().baseUrl||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`sk-or-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:w.value?.defaultOptions?.().baseUrl||``},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/openrouter-ai-EiSvPQWH.js b/assets/openrouter-ai-EiSvPQWH.js deleted file mode 100644 index 8132b8919fcdcd249f800ae61baf72c3589b926d..0000000000000000000000000000000000000000 --- a/assets/openrouter-ai-EiSvPQWH.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`openrouter-ai`;var x=l({__name:`openrouter-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e,t,n;return(e=C.value[b])?.baseUrl||((t=w.value)==null||(n=t.defaultOptions)==null?void 0:n.call(t).baseUrl)||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t,n,r;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||((n=w.value)==null||(r=n.defaultOptions)==null?void 0:r.call(n).baseUrl)||``}),_([T,E],()=>{var e,t;C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||((e=w.value)==null||(t=e.defaultOptions)==null?void 0:t.call(e).baseUrl)||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`sk-or-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>{var e,t;return[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:((e=w.value)==null||(t=e.defaultOptions)==null?void 0:t.call(e).baseUrl)||``},null,8,[`modelValue`,`placeholder`])]}),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/pages--dRALHez.js b/assets/pages--dRALHez.js deleted file mode 100644 index 6344b51721ed938d6ecf8ecd5692618df63fa6cf..0000000000000000000000000000000000000000 --- a/assets/pages--dRALHez.js +++ /dev/null @@ -1 +0,0 @@ -import{Stage_default as e}from"./Scenes-CZT_B7Wn.js";import"./Basic-BE3KxqAa.js";import{themeColorFromPropertyOf as t,useThemeColor as n}from"./theme-color-B1JvcUcD.js";import{breakpointsTailwind as r,createBaseVNode as i,createBlock as a,createVNode as o,defineComponent as s,onMounted as c,openBlock as l,ref as u,unref as d,useBreakpoints as f,useDark as p,useMouse as m,watch as h,withCtx as g}from"./index-iQVr9nx1.js";import"./import-url-browser-7PcqReZq.js";import"./duckdb-mvp-D888HGlq.js";import"./HeaderLink-DjJ0Gw-G.js";import{route_block_default as _}from"./route-block-D_p8WJle.js";import{AnimatedWave_default as v,Cross_default as y,Header_default as b,InteractiveArea_default as x,MobileInteractiveArea_default as S}from"./AnimatedWave-CpqzXgxy.js";const C={relative:``,flex:`~ col`,"z-2":``,"h-100dvh":``,"w-100vw":``,"of-hidden":``},w={class:`px-0 py-1 md:px-3 md:py-3`,"w-full":``,"gap-2":``},T={relative:``,flex:`~ 1 row gap-y-0 gap-x-2 j(),{immediate:!0}),c(()=>j()),(t,n)=>(l(),a(y,null,{default:g(()=>[o(v,{class:`widgets top-widgets`,"fill-color":d(_)?`oklch(35% calc(var(--chromatic-chroma) * 0.6) var(--chromatic-hue))`:`color-mix(in srgb, oklch(95% calc(var(--chromatic-chroma-50) * 0.5) var(--chromatic-hue)) 80%, oklch(100% 0 360))`},{default:g(()=>[i(`div`,C,[i(`div`,w,[o(b,{class:`flex`})]),i(`div`,T,[o(d(e),{"flex-1":``,"min-w":`1/2`,paused:E.value,"focus-at":{x:d(O).x.value,y:d(O).y.value},"x-offset":d(A)?void 0:`-10%`},null,8,[`paused`,`focus-at`,`x-offset`]),o(x,{class:`flex j(),{immediate:!0}),s(()=>j()),(t,n)=>(d(),g(S,null,{default:m(()=>[l(v,{class:`widgets top-widgets`,"fill-color":p(_)?`oklch(35% calc(var(--chromatic-chroma) * 0.6) var(--chromatic-hue))`:`color-mix(in srgb, oklch(95% calc(var(--chromatic-chroma-50) * 0.5) var(--chromatic-hue)) 80%, oklch(100% 0 360))`},{default:m(()=>[h(`div`,C,[h(`div`,w,[l(x,{class:`flex`})]),h(`div`,T,[l(p(e),{"flex-1":``,"min-w":`1/2`,paused:E.value,"focus-at":{x:p(O).x.value,y:p(O).y.value},"x-offset":p(A)?void 0:`-10%`},null,8,[`paused`,`focus-at`,`x-offset`]),l(b,{class:`flex E.getProviderMetadata(w)),k=i({get:()=>{var e;return(e=D.value[w])?.baseUrl||``},set:e=>{D.value[w]||(D.value[w]={}),D.value[w].baseUrl=e}}),A=p(!0);d(async()=>{var e;E.initializeProvider(w),k.value=(e=D.value[w])?.baseUrl||``;try{let e=await fetch(`${k.value}health`,{method:`GET`,headers:{"player2-game-key":`airi`}});A.value=e.status===200}catch(e){console.error(e),A.value=!1}}),b([k],()=>{D.value[w]={...D.value[w],baseUrl:k.value||``}});function j(){var e;D.value[w]={...(e=O.value)?.defaultOptions}}return(i,u)=>{var d,p;let h=m(`ProviderBasicSettings`);return f(),s(e,null,[A.value?o(``,!0):(f(),s(`div`,C,u[1]||=[a(`div`,null,[c(` Please download and run the Player2 App: `),a(`a`,{href:`https://player2.game`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game `),a(`div`,null,[c(` After downloading, if you still are having trouble, please reach out to us on Discord: `),a(`a`,{href:`https://player2.game/discord`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game/discord `),c(`. `)])],-1)])),l(g(r),{"provider-name":(d=O.value)?.localizedName,"provider-icon":(p=O.value)?.icon,"on-back":()=>g(T).back()},{default:x(()=>[l(g(n),null,{default:x(()=>[l(h,{title:g(S)(`settings.pages.providers.common.section.basic.title`),description:g(S)(`settings.pages.providers.common.section.basic.description`),"on-reset":j},{default:x(()=>[l(g(t),{modelValue:k.value,"onUpdate:modelValue":u[0]||=e=>k.value=e,placeholder:`http://localhost:4315/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`,`description`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])],64)}}});typeof S==`function`&&S(T);var E=T;export{E as default}; \ No newline at end of file diff --git a/assets/player2-speech-BBofLZIX.js b/assets/player2-speech-BBofLZIX.js new file mode 100644 index 0000000000000000000000000000000000000000..692c3ed9e6991362d1431167634bb73817d4a5cb --- /dev/null +++ b/assets/player2-speech-BBofLZIX.js @@ -0,0 +1 @@ +import{K as e,Q as t,a8 as n,b as r,d3 as i,d7 as a,d9 as o,dB as s,dF as c,dH as l,dI as u,dK as d,dV as f,da as p,db as m,dj as h,du as g,dv as _,g as v,i as y}from"./index-C9kcCpP-.js";import{b}from"./route-block-B2lA4iHQ.js";const x={key:0,style:{color:`red`,"margin-bottom":`1rem`}},S=`player2-speech`,C=`v1`;var w=a({__name:`player2-speech`,setup(a){let b=d(1),w=v(),T=y(),{t:E}=t(),D=_(()=>w.availableVoices[S]||[]);async function O(e,t,n){let r=T.getProviderInstance(S);if(!r)throw Error(`Failed to initialize speech provider`);let i=T.getProviderConfig(S),a=i.model||C;return await w.speech(r,a,e,t,{...i})}let k=d(!0);return i(async()=>{let e=T.getProviderConfig(S),t=T.getProviderMetadata(S);await t.validators.validateProviderConfig(e)?await w.loadVoicesForProvider(S):console.error(`Failed to validate provider config`,e);try{let e=await fetch(`http://localhost:4315/v1/health`,{method:`GET`,headers:{"player2-game-key":`airi`}});k.value=e.status===200}catch(e){console.error(e),k.value=!1}}),c(b,async()=>{let e=T.getProviderConfig(S);e.speed=b.value}),(t,i)=>(l(),m(g,null,[k.value?o(``,!0):(l(),m(`div`,x,i[1]||=[h(`div`,null,[u(` Please download and run the Player2 App: `),h(`a`,{href:`https://player2.game`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game `),h(`div`,null,[u(` After downloading, if you still are having trouble, please reach out to us on Discord: `),h(`a`,{href:`https://player2.game/discord`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game/discord `),u(`. `)])],-1)])),s(f(r),{"provider-id":S,"default-model":C},{"voice-settings":p(()=>[s(f(n),{modelValue:b.value,"onUpdate:modelValue":i[0]||=e=>b.value=e,label:f(E)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:f(E)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:5,step:.01},null,8,[`modelValue`,`label`,`description`])]),playground:p(()=>[s(f(e),{"available-voices":D.value,"generate-speech":O,"api-key-configured":!0,"default-text":`Hello! This is a test of the Player 2 voice synthesis.`},null,8,[`available-voices`])]),_:1})],64))}});typeof b==`function`&&b(w);var T=w;export{T as default}; \ No newline at end of file diff --git a/assets/player2-speech-CSaGh3NS.js b/assets/player2-speech-CSaGh3NS.js deleted file mode 100644 index 7a260afd87bd121eefae7e04fd141a84ecde58bb..0000000000000000000000000000000000000000 --- a/assets/player2-speech-CSaGh3NS.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldRange_default as e,Fragment as t,SpeechPlayground_default as n,SpeechProviderSettings_default as r,computed as i,createBaseVNode as a,createCommentVNode as o,createElementBlock as s,createTextVNode as c,createVNode as l,defineComponent as u,onMounted as d,openBlock as f,ref as p,unref as m,useI18n as h,useProvidersStore as g,useSpeechStore as _,watch as v,withCtx as y}from"./index-iQVr9nx1.js";import{route_block_default as b}from"./route-block-D_p8WJle.js";const x={key:0,style:{color:`red`,"margin-bottom":`1rem`}},S=`player2-speech`,C=`v1`;var w=u({__name:`player2-speech`,setup(u){let b=p(1),w=_(),T=g(),{t:E}=h(),D=i(()=>w.availableVoices[S]||[]);async function O(e,t,n){let r=T.getProviderInstance(S);if(!r)throw Error(`Failed to initialize speech provider`);let i=T.getProviderConfig(S),a=i.model||C;return await w.speech(r,a,e,t,{...i})}let k=p(!0);return d(async()=>{let e=T.getProviderConfig(S),t=T.getProviderMetadata(S);await t.validators.validateProviderConfig(e)?await w.loadVoicesForProvider(S):console.error(`Failed to validate provider config`,e);try{let e=await fetch(`http://localhost:4315/v1/health`,{method:`GET`,headers:{"player2-game-key":`airi`}});k.value=e.status===200}catch(e){console.error(e),k.value=!1}}),v(b,async()=>{let e=T.getProviderConfig(S);e.speed=b.value}),(i,u)=>(f(),s(t,null,[k.value?o(``,!0):(f(),s(`div`,x,u[1]||=[a(`div`,null,[c(` Please download and run the Player2 App: `),a(`a`,{href:`https://player2.game`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game `),a(`div`,null,[c(` After downloading, if you still are having trouble, please reach out to us on Discord: `),a(`a`,{href:`https://player2.game/discord`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game/discord `),c(`. `)])],-1)])),l(m(r),{"provider-id":S,"default-model":C},{"voice-settings":y(()=>[l(m(e),{modelValue:b.value,"onUpdate:modelValue":u[0]||=e=>b.value=e,label:m(E)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:m(E)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:5,step:.01},null,8,[`modelValue`,`label`,`description`])]),playground:y(()=>[l(m(n),{"available-voices":D.value,"generate-speech":O,"api-key-configured":!0,"default-text":`Hello! This is a test of the Player 2 voice synthesis.`},null,8,[`available-voices`])]),_:1})],64))}});typeof b==`function`&&b(w);var T=w;export{T as default}; \ No newline at end of file diff --git a/assets/player2-uSjrXn5Y.js b/assets/player2-uSjrXn5Y.js new file mode 100644 index 0000000000000000000000000000000000000000..a68186afd1b111003d2fb2c5937846e0a5c3fcdc --- /dev/null +++ b/assets/player2-uSjrXn5Y.js @@ -0,0 +1 @@ +import{L as e,M as t,O as n,Q as r,aE as i,aJ as a,d3 as o,d7 as s,d9 as c,dB as l,dF as u,dH as d,dI as f,dK as p,dV as m,da as h,db as g,dj as _,dt as v,du as y,dv as b,i as x}from"./index-C9kcCpP-.js";import{b as S}from"./route-block-B2lA4iHQ.js";const C={key:0,style:{color:`red`,"margin-bottom":`1rem`}},w=`player2`;var T=s({__name:`player2`,setup(s){let{t:S}=r(),T=i(),E=x(),{providers:D}=a(E),O=b(()=>E.getProviderMetadata(w)),k=b({get:()=>D.value[w]?.baseUrl||``,set:e=>{D.value[w]||(D.value[w]={}),D.value[w].baseUrl=e}}),A=p(!0);o(async()=>{E.initializeProvider(w),k.value=D.value[w]?.baseUrl||``;try{let e=await fetch(`${k.value}health`,{method:`GET`,headers:{"player2-game-key":`airi`}});A.value=e.status===200}catch(e){console.error(e),A.value=!1}}),u([k],()=>{D.value[w]={...D.value[w],baseUrl:k.value||``}});function j(){D.value[w]={...O.value?.defaultOptions}}return(r,i)=>{let a=v(`ProviderBasicSettings`);return d(),g(y,null,[A.value?c(``,!0):(d(),g(`div`,C,i[1]||=[_(`div`,null,[f(` Please download and run the Player2 App: `),_(`a`,{href:`https://player2.game`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game `),_(`div`,null,[f(` After downloading, if you still are having trouble, please reach out to us on Discord: `),_(`a`,{href:`https://player2.game/discord`,target:`_blank`,rel:`noopener noreferrer`},` https://player2.game/discord `),f(`. `)])],-1)])),l(m(e),{"provider-name":O.value?.localizedName,"provider-icon":O.value?.icon,"on-back":()=>m(T).back()},{default:h(()=>[l(m(t),null,{default:h(()=>[l(a,{title:m(S)(`settings.pages.providers.common.section.basic.title`),description:m(S)(`settings.pages.providers.common.section.basic.description`),"on-reset":j},{default:h(()=>[l(m(n),{modelValue:k.value,"onUpdate:modelValue":i[0]||=e=>k.value=e,placeholder:`http://localhost:4315/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`,`description`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])],64)}}});typeof S==`function`&&S(T);var E=T;export{E as default}; \ No newline at end of file diff --git a/assets/polaroid-A4EHzymE.js b/assets/polaroid-A4EHzymE.js new file mode 100644 index 0000000000000000000000000000000000000000..0a996decdb28651830f07cfd4c5ea507ba3d5ec8 --- /dev/null +++ b/assets/polaroid-A4EHzymE.js @@ -0,0 +1 @@ +import{d as e,f as t}from"./Scenes-HTltqZ48.js";import{V as n,cX as r,d7 as i,dB as a,dF as o,dH as s,dK as c,dV as l,da as u,db as d,dj as f,dl as p,dr as m,du as h,e1 as g}from"./index-C9kcCpP-.js";import"./import-url-browser-D6BBwmoZ.js";import"./duckdb-mvp-D8OBsaZy.js";const _={flex:``,"flex-col":``,"items-center":``,"gap-4":``},v={"h-full":``,"w-full":``},y=[`value`];var b=i({__name:`polaroid`,setup(i){let b=c(),x=c(),S=c(`idle`),C=c([]);function w(e,t){let n=document.createElement(`a`);n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function T(e){x.value?.setMotion(e)}o(x,e=>{C.value=e?.listMotionGroups()||[]},{immediate:!0});function E(){x.value&&(x.value?.setMotion(S.value),C.value=x.value.listMotionGroups())}function D(){if(!b.value||!x.value)return;let e=b.value.canvasElement(),t=e.toDataURL(`image/png`);w(t,`live2d-screenshot.png`)}return(i,o)=>(s(),d(`div`,_,[f(`div`,v,[a(l(n),{relative:``,"min-h-70dvh":``},{default:u(({width:n,height:r})=>[a(l(t),{ref_key:`live2dCanvasRef`,ref:b,width:n,height:r,resolution:3,"rounded-full":``},{default:u(({app:t})=>[a(l(e),{ref_key:`live2dModelRef`,ref:x,app:t,width:n,height:r,"focus-at":{x:n/2,y:r/2},onModelLoaded:E},null,8,[`app`,`width`,`height`,`focus-at`])]),_:2},1032,[`width`,`height`])]),_:1})]),f(`div`,null,[m(f(`select`,{"onUpdate:modelValue":o[0]||=e=>S.value=e,"rounded-lg":``,"px-3":``,"py-2":``,onChange:o[1]||=e=>T(S.value)},[(s(!0),d(h,null,p(C.value,e=>(s(),d(`option`,{key:e.motionIndex,value:e.motionName},g(e.fileName),9,y))),128))],544),[[r,S.value]])]),f(`div`,{border:`2px solid white`,flex:``,"items-center":``,"justify-center":``,"rounded-full":``,"p-1":``},[f(`button`,{"h-18":``,"w-18":``,"rounded-full":``,bg:`white active:gray-50`,"outline-none":``,"transition-colors":``,"duration-200":``,"ease-in-out":``,onClick:D})])]))}}),x=b;export{x as default}; \ No newline at end of file diff --git a/assets/polaroid-KOvlyFYP.js b/assets/polaroid-KOvlyFYP.js deleted file mode 100644 index 52af65fdc622b6b5f2e70d4df4bc87d93da80a56..0000000000000000000000000000000000000000 --- a/assets/polaroid-KOvlyFYP.js +++ /dev/null @@ -1 +0,0 @@ -import{Canvas_default as e,Model_default as t}from"./Scenes-CZT_B7Wn.js";import{Fragment as n,Screen_default as r,createBaseVNode as i,createElementBlock as a,createVNode as o,defineComponent as s,openBlock as c,ref as l,renderList as u,toDisplayString as d,unref as f,vModelSelect as p,watch as m,withCtx as h,withDirectives as g}from"./index-iQVr9nx1.js";import"./import-url-browser-7PcqReZq.js";import"./duckdb-mvp-D888HGlq.js";const _={flex:``,"flex-col":``,"items-center":``,"gap-4":``},v={"h-full":``,"w-full":``},y=[`value`];var b=s({__name:`polaroid`,setup(s){let b=l(),x=l(),S=l(`idle`),C=l([]);function w(e,t){let n=document.createElement(`a`);n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function T(e){var t;(t=x.value)?.setMotion(e)}m(x,e=>{C.value=e?.listMotionGroups()||[]},{immediate:!0});function E(){if(x.value){var e;(e=x.value)?.setMotion(S.value),C.value=x.value.listMotionGroups()}}function D(){if(!b.value||!x.value)return;let e=b.value.canvasElement(),t=e.toDataURL(`image/png`);w(t,`live2d-screenshot.png`)}return(s,l)=>(c(),a(`div`,_,[i(`div`,v,[o(f(r),{relative:``,"min-h-70dvh":``},{default:h(({width:n,height:r})=>[o(f(e),{ref_key:`live2dCanvasRef`,ref:b,width:n,height:r,resolution:3,"rounded-full":``},{default:h(({app:e})=>[o(f(t),{ref_key:`live2dModelRef`,ref:x,app:e,width:n,height:r,"focus-at":{x:n/2,y:r/2},onModelLoaded:E},null,8,[`app`,`width`,`height`,`focus-at`])]),_:2},1032,[`width`,`height`])]),_:1})]),i(`div`,null,[g(i(`select`,{"onUpdate:modelValue":l[0]||=e=>S.value=e,"rounded-lg":``,"px-3":``,"py-2":``,onChange:l[1]||=e=>T(S.value)},[(c(!0),a(n,null,u(C.value,e=>(c(),a(`option`,{key:e.motionIndex,value:e.motionName},d(e.fileName),9,y))),128))],544),[[p,S.value]])]),i(`div`,{border:`2px solid white`,flex:``,"items-center":``,"justify-center":``,"rounded-full":``,"p-1":``},[i(`button`,{"h-18":``,"w-18":``,"rounded-full":``,bg:`white active:gray-50`,"outline-none":``,"transition-colors":``,"duration-200":``,"ease-in-out":``,onClick:D})])]))}}),x=b;export{x as default}; \ No newline at end of file diff --git a/assets/providers-C1BmhIzi.js b/assets/providers-C1BmhIzi.js deleted file mode 100644 index 1c8ad775009953048a982c6aa78483b881495227..0000000000000000000000000000000000000000 --- a/assets/providers-C1BmhIzi.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,IconStatusItem_default as t,createBaseVNode as n,createBlock as r,createElementBlock as i,createVNode as a,defineComponent as o,openBlock as s,renderList as c,resolveComponent as l,resolveDirective as u,storeToRefs as d,toDisplayString as f,unref as p,useI18n as m,useProvidersStore as h,withCtx as g,withDirectives as _}from"./index-iQVr9nx1.js";import{route_block_default as v}from"./route-block-D_p8WJle.js";import{IconAnimation_default as y}from"./IconAnimation-Ddiua4ZD.js";import{useIconAnimation as b}from"./icon-animation-B3Ug4nWM.js";const x={flex:``,"flex-col":``,"gap-5":``},S={class:`rounded-lg bg-primary-500/10 p-4 dark:bg-primary-800/25`},C={class:`mb-2 text-xl text-primary-800 font-semibold dark:text-primary-100`},w={class:`text-primary-700 dark:text-primary-300`},T={flex:`~ row items-center gap-2`},E={text:`neutral-300 dark:neutral-500`},D={grid:`~ cols-2 gap-4`},O={flex:`~ row items-center gap-2`,"my-5":``},k={text:`neutral-300 dark:neutral-500`},A={grid:`~ cols-2 gap-4`},j={flex:`~ row items-center gap-2`,"my-5":``},M={text:`neutral-300 dark:neutral-500`},N={grid:`~ cols-2 gap-4`},P={key:1,text:`neutral-500/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:20},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var F=o({__name:`index`,setup(o){let{t:v}=m(),F=h(),{allChatProvidersMetadata:I,allAudioSpeechProvidersMetadata:L,allAudioTranscriptionProvidersMetadata:R}=d(F),{iconAnimationStarted:z,showIconAnimation:B,animationIcon:V}=b(`i-solar:box-minimalistic-bold-duotone`);return(o,d)=>{let m=l(`i18n-t`),h=u(`motion`);return s(),i(e,null,[n(`div`,x,[n(`div`,S,[n(`div`,C,f(o.$t(`settings.pages.providers.helpinfo.title`)),1),n(`div`,w,[a(m,{keypath:`settings.pages.providers.helpinfo.description`},{chat:g(()=>d[0]||=[n(`span`,{class:`inline-flex translate-y-[0.25lh] items-center gap-1 rounded-lg bg-primary-500/10 px-2 py-0.5 dark:bg-primary-800/25`},[n(`div`,{class:`i-solar:chat-square-like-bold-duotone`}),n(`strong`,{class:`font-semibold`},`Chat`)],-1)]),_:1})])]),n(`div`,T,[d[2]||=n(`div`,{"i-solar:chat-square-like-bold-duotone":``,text:`neutral-500 dark:neutral-400 4xl`},null,-1),n(`div`,null,[n(`div`,null,[n(`span`,E,f(p(v)(`settings.pages.providers.explained.chat`)),1)]),d[1]||=n(`div`,{flex:``,"text-nowrap":``,"text-3xl":``,"font-normal":``},[n(`div`,null,` Chat `)],-1)])]),n(`div`,D,[(s(!0),i(e,null,c(p(I),(e,n)=>_((s(),r(p(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:n*50,title:e.localizedName||`Unknown`,description:e.localizedDescription,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:`/settings/providers/${e.id}`,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[h]])),128))]),n(`div`,O,[d[4]||=n(`div`,{"i-solar:user-speak-rounded-bold-duotone":``,text:`neutral-500 dark:neutral-400 4xl`},null,-1),n(`div`,null,[n(`div`,null,[n(`span`,k,f(p(v)(`settings.pages.providers.explained.Speech`)),1)]),d[3]||=n(`div`,{flex:``,"text-nowrap":``,"text-3xl":``,"font-normal":``},[n(`div`,null,` Speech `)],-1)])]),n(`div`,A,[(s(!0),i(e,null,c(p(L),(e,n)=>_((s(),r(p(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:(p(I).length+n)*50,title:e.localizedName||`Unknown`,description:e.localizedDescription,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:`/settings/providers/${e.id}`,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[h]])),128))]),n(`div`,j,[d[6]||=n(`div`,{"i-solar:microphone-3-bold-duotone":``,text:`neutral-500 dark:neutral-400 4xl`},null,-1),n(`div`,null,[n(`div`,null,[n(`span`,M,f(p(v)(`settings.pages.providers.explained.Transcription`)),1)]),d[5]||=n(`div`,{flex:``,"text-nowrap":``,"text-3xl":``,"font-normal":``},[n(`div`,null,` Transcription `)],-1)])]),n(`div`,N,[(s(!0),i(e,null,c(p(R),(e,n)=>_((s(),r(p(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:(p(I).length+p(L).length+n)*50,title:e.localizedName||`Unknown`,description:e.localizedDescription,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:`/settings/providers/${e.id}`,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[h]])),128))])]),p(B)?(s(),r(y,{key:0,"z-index":-1,icon:p(V),"icon-size":12,duration:1e3,started:p(z),"is-reverse":!0,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`},null,8,[`icon`,`started`])):_((s(),i(`div`,P,d[7]||=[n(`div`,{text:`60`,"i-solar:box-minimalistic-bold-duotone":``},null,-1)])),[[h]])],64)}}});typeof v==`function`&&v(F);var I=F;export{I as default}; \ No newline at end of file diff --git a/assets/providers-DTc4g9cH.js b/assets/providers-DTc4g9cH.js new file mode 100644 index 0000000000000000000000000000000000000000..7b65f8352fe16087ee12d93fe8f0446cc8973546 --- /dev/null +++ b/assets/providers-DTc4g9cH.js @@ -0,0 +1 @@ +import{Q as e,_ as t,aJ as n,d7 as r,dB as i,dG as a,dH as o,dV as s,da as c,db as l,dj as u,dl as d,dn as f,dr as p,dt as m,du as h,e1 as g,i as _}from"./index-C9kcCpP-.js";import{b as v}from"./route-block-B2lA4iHQ.js";import{b as y}from"./IconAnimation-CvK4BRGS.js";import{b}from"./icon-animation-BGVKm1so.js";const x={flex:``,"flex-col":``,"gap-5":``},S={class:`rounded-lg bg-primary-500/10 p-4 dark:bg-primary-800/25`},C={class:`mb-2 text-xl text-primary-800 font-semibold dark:text-primary-100`},w={class:`text-primary-700 dark:text-primary-300`},T={flex:`~ row items-center gap-2`},E={text:`neutral-300 dark:neutral-500`},D={grid:`~ cols-2 gap-4`},O={flex:`~ row items-center gap-2`,"my-5":``},k={text:`neutral-300 dark:neutral-500`},A={grid:`~ cols-2 gap-4`},j={flex:`~ row items-center gap-2`,"my-5":``},M={text:`neutral-300 dark:neutral-500`},N={grid:`~ cols-2 gap-4`},P={key:1,text:`neutral-500/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:20},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var F=r({__name:`index`,setup(r){let{t:v}=e(),F=_(),{allChatProvidersMetadata:I,allAudioSpeechProvidersMetadata:L,allAudioTranscriptionProvidersMetadata:R}=n(F),{iconAnimationStarted:z,showIconAnimation:B,animationIcon:V}=b(`i-solar:box-minimalistic-bold-duotone`);return(e,n)=>{let r=m(`i18n-t`),_=a(`motion`);return o(),l(h,null,[u(`div`,x,[u(`div`,S,[u(`div`,C,g(e.$t(`settings.pages.providers.helpinfo.title`)),1),u(`div`,w,[i(r,{keypath:`settings.pages.providers.helpinfo.description`},{chat:c(()=>n[0]||=[u(`span`,{class:`inline-flex translate-y-[0.25lh] items-center gap-1 rounded-lg bg-primary-500/10 px-2 py-0.5 dark:bg-primary-800/25`},[u(`div`,{class:`i-solar:chat-square-like-bold-duotone`}),u(`strong`,{class:`font-semibold`},`Chat`)],-1)]),_:1})])]),u(`div`,T,[n[2]||=u(`div`,{"i-solar:chat-square-like-bold-duotone":``,text:`neutral-500 dark:neutral-400 4xl`},null,-1),u(`div`,null,[u(`div`,null,[u(`span`,E,g(s(v)(`settings.pages.providers.explained.chat`)),1)]),n[1]||=u(`div`,{flex:``,"text-nowrap":``,"text-3xl":``,"font-normal":``},[u(`div`,null,` Chat `)],-1)])]),u(`div`,D,[(o(!0),l(h,null,d(s(I),(e,n)=>p((o(),f(s(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:n*50,title:e.localizedName||`Unknown`,description:e.localizedDescription,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:`/settings/providers/${e.id}`,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[_]])),128))]),u(`div`,O,[n[4]||=u(`div`,{"i-solar:user-speak-rounded-bold-duotone":``,text:`neutral-500 dark:neutral-400 4xl`},null,-1),u(`div`,null,[u(`div`,null,[u(`span`,k,g(s(v)(`settings.pages.providers.explained.Speech`)),1)]),n[3]||=u(`div`,{flex:``,"text-nowrap":``,"text-3xl":``,"font-normal":``},[u(`div`,null,` Speech `)],-1)])]),u(`div`,A,[(o(!0),l(h,null,d(s(L),(e,n)=>p((o(),f(s(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:(s(I).length+n)*50,title:e.localizedName||`Unknown`,description:e.localizedDescription,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:`/settings/providers/${e.id}`,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[_]])),128))]),u(`div`,j,[n[6]||=u(`div`,{"i-solar:microphone-3-bold-duotone":``,text:`neutral-500 dark:neutral-400 4xl`},null,-1),u(`div`,null,[u(`div`,null,[u(`span`,M,g(s(v)(`settings.pages.providers.explained.Transcription`)),1)]),n[5]||=u(`div`,{flex:``,"text-nowrap":``,"text-3xl":``,"font-normal":``},[u(`div`,null,` Transcription `)],-1)])]),u(`div`,N,[(o(!0),l(h,null,d(s(R),(e,n)=>p((o(),f(s(t),{key:e.id,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250+n*10,delay:(s(I).length+s(L).length+n)*50,title:e.localizedName||`Unknown`,description:e.localizedDescription,icon:e.icon,"icon-color":e.iconColor,"icon-image":e.iconImage,to:`/settings/providers/${e.id}`,configured:e.configured},null,8,[`duration`,`delay`,`title`,`description`,`icon`,`icon-color`,`icon-image`,`to`,`configured`])),[[_]])),128))])]),s(B)?(o(),f(y,{key:0,"z-index":-1,icon:s(V),"icon-size":12,duration:1e3,started:s(z),"is-reverse":!0,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`},null,8,[`icon`,`started`])):p((o(),l(`div`,P,n[7]||=[u(`div`,{text:`60`,"i-solar:box-minimalistic-bold-duotone":``},null,-1)])),[[_]])],64)}}});typeof v==`function`&&v(F);var I=F;export{I as default}; \ No newline at end of file diff --git a/assets/queue-CCHh_YlY.js b/assets/queue-CCHh_YlY.js deleted file mode 100644 index 8fb7c9d379dad249de79faa696e6ee3ed37feb02..0000000000000000000000000000000000000000 --- a/assets/queue-CCHh_YlY.js +++ /dev/null @@ -1 +0,0 @@ -import{createBaseVNode as e,createElementBlock as t,defineComponent as n,onMounted as r,openBlock as i,ref as a,sleep as o,useQueue as s}from"./index-iQVr9nx1.js";var c=n({__name:`queue`,setup(n){let c=a(``),l=s({handlers:[async e=>{console.log(`ready to play speech audio for`,e)}]}),u=s({handlers:[async e=>{console.log(`ready to stream speech audio for`,e),l.add(e.data)}]}),d=s({handlers:[async e=>{let t=[`.`,`?`,`!`],n=!1;for(let r of t){if(!e.data.includes(r))continue;let t=e.data.indexOf(r),i=e.data.slice(0,t+1),a=e.data.slice(t+1);c.value+=i,u.add(c.value.trim()),c.value=a,n=!0}n||(c.value+=e.data)}]}),f=`Hello( N(eko(! I( am( an( AI( assistant( trained( to( help( with( a( variety( of( tasks( such( as( answering( questions(,( providing( information(,( giving( recommendations(,( and( more(. How( can( I( assist( you( today(?(Hello( N(eko(,( I( am( an( AI( assistant(.( I( can( help( answer( questions(,( provide( information(,( assist( with( tasks(,( and( engage( in( conversation(.( How( can( I( assist( you( today(?`.split(`(`);async function p(){for(let e of f)await o(100),d.add(e)}async function m(){p()}return r(()=>{m()}),(n,r)=>(i(),t(`div`,null,r[0]||=[e(`div`,null,null,-1)]))}}),l=c;export{l as default}; \ No newline at end of file diff --git a/assets/queue-CiR6go9H.js b/assets/queue-CiR6go9H.js new file mode 100644 index 0000000000000000000000000000000000000000..483522c12f58fa8b7a0c2915d43eaa9f49fb68b7 --- /dev/null +++ b/assets/queue-CiR6go9H.js @@ -0,0 +1 @@ +import{C as e,F as t,d3 as n,d7 as r,dH as i,dK as a,db as o,dj as s}from"./index-C9kcCpP-.js";var c=r({__name:`queue`,setup(r){let c=a(``),l=e({handlers:[async e=>{console.log(`ready to play speech audio for`,e)}]}),u=e({handlers:[async e=>{console.log(`ready to stream speech audio for`,e),l.add(e.data)}]}),d=e({handlers:[async e=>{let t=[`.`,`?`,`!`],n=!1;for(let r of t){if(!e.data.includes(r))continue;let t=e.data.indexOf(r),i=e.data.slice(0,t+1),a=e.data.slice(t+1);c.value+=i,u.add(c.value.trim()),c.value=a,n=!0}n||(c.value+=e.data)}]}),f=`Hello( N(eko(! I( am( an( AI( assistant( trained( to( help( with( a( variety( of( tasks( such( as( answering( questions(,( providing( information(,( giving( recommendations(,( and( more(. How( can( I( assist( you( today(?(Hello( N(eko(,( I( am( an( AI( assistant(.( I( can( help( answer( questions(,( provide( information(,( assist( with( tasks(,( and( engage( in( conversation(.( How( can( I( assist( you( today(?`.split(`(`);async function p(){for(let e of f)await t(100),d.add(e)}async function m(){p()}return n(()=>{m()}),(e,t)=>(i(),o(`div`,null,t[0]||=[s(`div`,null,null,-1)]))}}),l=c;export{l as default}; \ No newline at end of file diff --git a/assets/route-block-B2lA4iHQ.js b/assets/route-block-B2lA4iHQ.js new file mode 100644 index 0000000000000000000000000000000000000000..8157f55460c472416b8452df5d094b0490b88a0c --- /dev/null +++ b/assets/route-block-B2lA4iHQ.js @@ -0,0 +1 @@ +var e={};export{e as b}; \ No newline at end of file diff --git a/assets/route-block-D_p8WJle.js b/assets/route-block-D_p8WJle.js deleted file mode 100644 index ce71688eb3e46d25e69d8cc1280a14809f5e7c1c..0000000000000000000000000000000000000000 --- a/assets/route-block-D_p8WJle.js +++ /dev/null @@ -1 +0,0 @@ -var e={};export{e as route_block_default}; \ No newline at end of file diff --git a/assets/scene-COu-Ti7i.js b/assets/scene-COu-Ti7i.js new file mode 100644 index 0000000000000000000000000000000000000000..018184050288e510c1e0d3c31e584ee6328a51ed --- /dev/null +++ b/assets/scene-COu-Ti7i.js @@ -0,0 +1 @@ +import{d7 as e,dG as t,dH as n,dV as r,db as i,dj as a,dn as o,dr as s,du as c}from"./index-C9kcCpP-.js";import{b as l}from"./route-block-B2lA4iHQ.js";import{b as u}from"./IconAnimation-CvK4BRGS.js";import{b as d}from"./icon-animation-BGVKm1so.js";const f={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:20},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var p=e({__name:`index`,setup(e){let{iconAnimationStarted:l,showIconAnimation:p,animationIcon:m}=d(`i-solar:armchair-2-bold-duotone`);return(e,d)=>{let h=t(`motion`);return n(),i(c,null,[d[1]||=a(`div`,null,` Scene `,-1),r(p)?(n(),o(u,{key:0,"z-index":-1,icon:r(m),"icon-size":12,duration:1e3,started:r(l),"is-reverse":!0,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`},null,8,[`icon`,`started`])):s((n(),i(`div`,f,d[0]||=[a(`div`,{text:`60`,"i-solar:armchair-2-bold-duotone":``},null,-1)])),[[h]])],64)}}});typeof l==`function`&&l(p);var m=p;export{m as default}; \ No newline at end of file diff --git a/assets/scene-CyZR35vM.js b/assets/scene-CyZR35vM.js deleted file mode 100644 index ec06b395136e657cc2a58f5507819dd7291a4070..0000000000000000000000000000000000000000 --- a/assets/scene-CyZR35vM.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,createBaseVNode as t,createBlock as n,createElementBlock as r,defineComponent as i,openBlock as a,resolveDirective as o,unref as s,withDirectives as c}from"./index-iQVr9nx1.js";import{route_block_default as l}from"./route-block-D_p8WJle.js";import{IconAnimation_default as u}from"./IconAnimation-Ddiua4ZD.js";import{useIconAnimation as d}from"./icon-animation-B3Ug4nWM.js";const f={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,y:20},enter:{scale:1,opacity:1,y:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var p=i({__name:`index`,setup(i){let{iconAnimationStarted:l,showIconAnimation:p,animationIcon:m}=d(`i-solar:armchair-2-bold-duotone`);return(i,d)=>{let h=o(`motion`);return a(),r(e,null,[d[1]||=t(`div`,null,` Scene `,-1),s(p)?(a(),n(u,{key:0,"z-index":-1,icon:s(m),"icon-size":12,duration:1e3,started:s(l),"is-reverse":!0,position:`calc(100dvw - 9.5rem), calc(100dvh - 9.5rem)`,"text-color":`text-neutral-200/50 dark:text-neutral-600/20`},null,8,[`icon`,`started`])):c((a(),r(`div`,f,d[0]||=[t(`div`,{text:`60`,"i-solar:armchair-2-bold-duotone":``},null,-1)])),[[h]])],64)}}});typeof l==`function`&&l(p);var m=p;export{m as default}; \ No newline at end of file diff --git a/assets/settings-2ofGNGd6.js b/assets/settings-2ofGNGd6.js deleted file mode 100644 index 04a0d0ae9fc4e75b694788744b91971a63043d2e..0000000000000000000000000000000000000000 --- a/assets/settings-2ofGNGd6.js +++ /dev/null @@ -1 +0,0 @@ -import{Fragment as e,IconItem_default as t,computed as n,createBaseVNode as r,createBlock as i,createElementBlock as a,defineComponent as o,nextTick as s,normalizeStyle as c,openBlock as l,ref as u,renderList as d,resolveDirective as f,unref as p,useI18n as m,useRouter as h,useSettings as g,withDirectives as _}from"./index-iQVr9nx1.js";import{route_block_default as v}from"./route-block-D_p8WJle.js";import{IconAnimation_default as y}from"./IconAnimation-Ddiua4ZD.js";const b={flex:`~ col gap-4`,"font-normal":``},x={flex:`~ col gap-4`},S={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-12rem)]`,"bottom-0":``,"right--10":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:180},enter:{scale:1,opacity:1,rotate:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``},C={text:`60`,"i-solar:settings-bold-duotone":``};var w=o({__name:`index`,setup(o){let v=h(),w=u(!1),T=u(),E=u(),{t:D}=m(),O=u(``),k=u(``),A=u(!1),j=g();function M(){var e;(e=E.value)?.call(E)}async function N(e,t){let n=e.currentTarget,r=n.querySelector(`.menu-icon-item-icon`);if(!r)return;let i=r.getBoundingClientRect(),a=`${i.left}px, ${i.top}px`;O.value=t.icon,k.value=a,A.value=!0,await s(),w.value=!0}let P=v.beforeEach(async(e,t,n)=>{if(!j.usePageSpecificTransitions||j.disableTransitions){n();return}await new Promise(e=>{E.value=e}),P(),n()}),F=n(()=>[{title:D(`settings.pages.card.title`),description:D(`settings.pages.card.description`),icon:`i-solar:emoji-funny-square-bold-duotone`,to:`/settings/airi-card`},{title:D(`settings.pages.modules.title`),description:D(`settings.pages.modules.description`),icon:`i-solar:layers-bold-duotone`,to:`/settings/modules`},{title:D(`settings.pages.scene.title`),description:D(`settings.pages.scene.description`),icon:`i-solar:armchair-2-bold-duotone`,to:`/settings/scene`},{title:D(`settings.pages.models.title`),description:D(`settings.pages.models.description`),icon:`i-solar:people-nearby-bold-duotone`,to:`/settings/models`},{title:D(`settings.pages.memory.title`),description:D(`settings.pages.memory.description`),icon:`i-solar:leaf-bold-duotone`,to:`/settings/memory`},{title:D(`settings.pages.providers.title`),description:D(`settings.pages.providers.description`),icon:`i-solar:box-minimalistic-bold-duotone`,to:`/settings/providers`},{title:D(`settings.pages.themes.title`),description:D(`settings.pages.themes.description`),icon:`i-solar:filters-bold-duotone`,to:`/settings/appearance`}]);return(n,o)=>{let s=f(`motion`);return l(),a(`div`,b,[o[0]||=r(`div`,null,null,-1),r(`div`,x,[(l(!0),a(e,null,d(F.value,(e,n)=>_((l(),i(p(t),{key:e.to,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250,style:c({transitionDelay:`${n*50}ms`}),title:e.title,description:e.description,icon:e.icon,to:e.to,onClick:t=>N(t,e)},null,8,[`style`,`title`,`description`,`icon`,`to`,`onClick`])),[[s]])),128))]),A.value&&!p(j).disableTransitions&&p(j).usePageSpecificTransitions?(l(),i(y,{key:0,ref_key:`iconAnimation`,ref:T,icon:O.value,"icon-size":6*1.2,position:k.value,duration:1e3,"text-color":`text-neutral-400/50 dark:text-neutral-600/20`,started:w.value,onAnimationEndedOnce:M},null,8,[`icon`,`position`,`started`])):_((l(),a(`div`,S,[_(r(`div`,C,null,512),[[s]])])),[[s]])])}}});typeof v==`function`&&v(w);var T=w;export{T as default}; \ No newline at end of file diff --git a/assets/settings-B9J0fQVG.js b/assets/settings-B9J0fQVG.js deleted file mode 100644 index 12d05f941eb856c22d17df9ceeff185390669d4b..0000000000000000000000000000000000000000 --- a/assets/settings-B9J0fQVG.js +++ /dev/null @@ -1 +0,0 @@ -import{themeColorFromValue as e,useThemeColor as t}from"./theme-color-B1JvcUcD.js";import{PageHeader_default as n,RouterView as r,computed as i,createBaseVNode as a,createElementBlock as o,createVNode as s,defineComponent as c,onMounted as l,openBlock as u,storeToRefs as d,unref as f,useDark as p,useI18n as m,useProvidersStore as h,useRoute as g,watch as _}from"./index-iQVr9nx1.js";import{HeaderLink_default as v}from"./HeaderLink-DjJ0Gw-G.js";const y={style:{paddingBottom:`env(safe-area-inset-bottom, 0px)`,paddingTop:`env(safe-area-inset-top, 0px)`,paddingRight:`env(safe-area-inset-right, 0px)`,paddingLeft:`env(safe-area-inset-left, 0px)`}},b={class:`px-0 py-1 hidden sm:block md:px-3 md:py-3`,"w-full":``,"gap-2":``,bg:`$bg-color`},x={class:`px-3 py-0 md:px-5 md:py-5`,flex:`~ col`,"mx-auto":``,"max-w-screen-xl":``};var S=c({__name:`settings`,setup(c){let S=g(),C=p(),{t:w}=m(),T=h(),{allProvidersMetadata:E}=d(T),D=i(()=>{let e={"/settings/airi-card":{subtitle:w(`settings.title`),title:w(`settings.pages.card.title`)},"/settings/appearance":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.title`)},"/settings/appearance/general":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.general.title`)},"/settings/appearance/color-scheme":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.color-scheme.title`)},"/settings/appearance/developer":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.developer.title`)},"/settings/memory":{subtitle:w(`settings.title`),title:w(`settings.pages.memory.title`)},"/settings/models":{subtitle:w(`settings.title`),title:w(`settings.pages.models.title`)},"/settings/modules":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.title`)},"/settings/modules/consciousness":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.consciousness.title`)},"/settings/modules/speech":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.speech.title`)},"/settings/modules/hearing":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.hearing.title`)},"/settings/modules/memory-short-term":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.memory-short-term.title`)},"/settings/modules/memory-long-term":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.memory-long-term.title`)},"/settings/modules/messaging-discord":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.messaging-discord.title`)},"/settings/modules/x":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.x.title`)},"/settings/modules/gaming-minecraft":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.gaming-minecraft.title`)},"/settings/modules/gaming-factorio":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.gaming-factorio.title`)},"/settings/providers":{subtitle:w(`settings.title`),title:w(`settings.pages.providers.title`)},"/settings/scene":{subtitle:w(`settings.title`),title:w(`settings.pages.scene.title`)},"/settings":{title:w(`settings.title`)}};for(let t of E.value)e[`/settings/providers/${t.id}`]={subtitle:w(`settings.title`),title:w(t.nameKey)};return e}),O=i(()=>D.value[S.path]),{updateThemeColor:k}=t(e({light:`rgb(255 255 255)`,dark:`rgb(18 18 18)`}));return _(C,()=>k(),{immediate:!0}),_(S,()=>k(),{immediate:!0}),l(()=>k()),(e,t)=>{var i,c;return u(),o(`div`,y,[a(`div`,b,[s(v)]),a(`div`,x,[s(f(n),{title:(i=O.value)?.title,subtitle:(c=O.value)?.subtitle},null,8,[`title`,`subtitle`]),s(f(r))])])}}}),C=S;export{C as default}; \ No newline at end of file diff --git a/assets/settings-BmSeK43T.js b/assets/settings-BmSeK43T.js new file mode 100644 index 0000000000000000000000000000000000000000..9c7c7b7e05c2215f2991229b322c70a21a698028 --- /dev/null +++ b/assets/settings-BmSeK43T.js @@ -0,0 +1 @@ +import{b as e,c as t}from"./theme-color-CX8iTiuc.js";import{Q as n,aF as r,aH as i,aJ as a,aS as o,ar as s,d3 as c,d7 as l,dB as u,dF as d,dH as f,dV as p,db as m,dj as h,dv as g,i as _}from"./index-C9kcCpP-.js";import{b as v}from"./HeaderLink-xWxD2Zu3.js";const y={style:{paddingBottom:`env(safe-area-inset-bottom, 0px)`,paddingTop:`env(safe-area-inset-top, 0px)`,paddingRight:`env(safe-area-inset-right, 0px)`,paddingLeft:`env(safe-area-inset-left, 0px)`}},b={class:`px-0 py-1 hidden sm:block md:px-3 md:py-3`,"w-full":``,"gap-2":``,bg:`$bg-color`},x={class:`px-3 py-0 md:px-5 md:py-5`,flex:`~ col`,"mx-auto":``,"max-w-screen-xl":``};var S=l({__name:`settings`,setup(l){let S=r(),C=o(),{t:w}=n(),T=_(),{allProvidersMetadata:E}=a(T),D=g(()=>{let e={"/settings/airi-card":{subtitle:w(`settings.title`),title:w(`settings.pages.card.title`)},"/settings/appearance":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.title`)},"/settings/appearance/general":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.general.title`)},"/settings/appearance/color-scheme":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.color-scheme.title`)},"/settings/appearance/developer":{subtitle:w(`settings.title`),title:w(`settings.pages.themes.developer.title`)},"/settings/memory":{subtitle:w(`settings.title`),title:w(`settings.pages.memory.title`)},"/settings/models":{subtitle:w(`settings.title`),title:w(`settings.pages.models.title`)},"/settings/modules":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.title`)},"/settings/modules/consciousness":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.consciousness.title`)},"/settings/modules/speech":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.speech.title`)},"/settings/modules/hearing":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.hearing.title`)},"/settings/modules/memory-short-term":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.memory-short-term.title`)},"/settings/modules/memory-long-term":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.memory-long-term.title`)},"/settings/modules/messaging-discord":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.messaging-discord.title`)},"/settings/modules/x":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.x.title`)},"/settings/modules/gaming-minecraft":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.gaming-minecraft.title`)},"/settings/modules/gaming-factorio":{subtitle:w(`settings.title`),title:w(`settings.pages.modules.gaming-factorio.title`)},"/settings/providers":{subtitle:w(`settings.title`),title:w(`settings.pages.providers.title`)},"/settings/scene":{subtitle:w(`settings.title`),title:w(`settings.pages.scene.title`)},"/settings":{title:w(`settings.title`)}};for(let t of E.value)e[`/settings/providers/${t.id}`]={subtitle:w(`settings.title`),title:w(t.nameKey)};return e}),O=g(()=>D.value[S.path]),{updateThemeColor:k}=t(e({light:`rgb(255 255 255)`,dark:`rgb(18 18 18)`}));return d(C,()=>k(),{immediate:!0}),d(S,()=>k(),{immediate:!0}),c(()=>k()),(e,t)=>(f(),m(`div`,y,[h(`div`,b,[u(v)]),h(`div`,x,[u(p(s),{title:O.value?.title,subtitle:O.value?.subtitle},null,8,[`title`,`subtitle`]),u(p(i))])]))}}),C=S;export{C as default}; \ No newline at end of file diff --git a/assets/settings-CldBYxd-.js b/assets/settings-CldBYxd-.js new file mode 100644 index 0000000000000000000000000000000000000000..b001f3977ac0ce34aa15015e361b3c4326f8f7a2 --- /dev/null +++ b/assets/settings-CldBYxd-.js @@ -0,0 +1 @@ +import{$ as e,Q as t,aE as n,d as r,d6 as i,d7 as a,dG as o,dH as s,dK as c,dV as l,db as u,dj as d,dl as f,dn as p,dr as m,du as h,dv as g,e3 as _}from"./index-C9kcCpP-.js";import{b as v}from"./route-block-B2lA4iHQ.js";import{b as y}from"./IconAnimation-CvK4BRGS.js";const b={flex:`~ col gap-4`,"font-normal":``},x={flex:`~ col gap-4`},S={key:1,text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-12rem)]`,"bottom-0":``,"right--10":``,"z--1":``,initial:{scale:.9,opacity:0,rotate:180},enter:{scale:1,opacity:1,rotate:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``},C={text:`60`,"i-solar:settings-bold-duotone":``};var w=a({__name:`index`,setup(a){let v=n(),w=c(!1),T=c(),E=c(),{t:D}=t(),O=c(``),k=c(``),A=c(!1),j=r();function M(){E.value?.()}async function N(e,t){let n=e.currentTarget,r=n.querySelector(`.menu-icon-item-icon`);if(!r)return;let a=r.getBoundingClientRect(),o=`${a.left}px, ${a.top}px`;O.value=t.icon,k.value=o,A.value=!0,await i(),w.value=!0}let P=v.beforeEach(async(e,t,n)=>{if(!j.usePageSpecificTransitions||j.disableTransitions){n();return}await new Promise(e=>{E.value=e}),P(),n()}),F=g(()=>[{title:D(`settings.pages.card.title`),description:D(`settings.pages.card.description`),icon:`i-solar:emoji-funny-square-bold-duotone`,to:`/settings/airi-card`},{title:D(`settings.pages.modules.title`),description:D(`settings.pages.modules.description`),icon:`i-solar:layers-bold-duotone`,to:`/settings/modules`},{title:D(`settings.pages.scene.title`),description:D(`settings.pages.scene.description`),icon:`i-solar:armchair-2-bold-duotone`,to:`/settings/scene`},{title:D(`settings.pages.models.title`),description:D(`settings.pages.models.description`),icon:`i-solar:people-nearby-bold-duotone`,to:`/settings/models`},{title:D(`settings.pages.memory.title`),description:D(`settings.pages.memory.description`),icon:`i-solar:leaf-bold-duotone`,to:`/settings/memory`},{title:D(`settings.pages.providers.title`),description:D(`settings.pages.providers.description`),icon:`i-solar:box-minimalistic-bold-duotone`,to:`/settings/providers`},{title:D(`settings.pages.themes.title`),description:D(`settings.pages.themes.description`),icon:`i-solar:filters-bold-duotone`,to:`/settings/appearance`}]);return(t,n)=>{let r=o(`motion`);return s(),u(`div`,b,[n[0]||=d(`div`,null,null,-1),d(`div`,x,[(s(!0),u(h,null,f(F.value,(t,n)=>m((s(),p(l(e),{key:t.to,initial:{opacity:0,y:10},enter:{opacity:1,y:0},duration:250,style:_({transitionDelay:`${n*50}ms`}),title:t.title,description:t.description,icon:t.icon,to:t.to,onClick:e=>N(e,t)},null,8,[`style`,`title`,`description`,`icon`,`to`,`onClick`])),[[r]])),128))]),A.value&&!l(j).disableTransitions&&l(j).usePageSpecificTransitions?(s(),p(y,{key:0,ref_key:`iconAnimation`,ref:T,icon:O.value,"icon-size":6*1.2,position:k.value,duration:1e3,"text-color":`text-neutral-400/50 dark:text-neutral-600/20`,started:w.value,onAnimationEndedOnce:M},null,8,[`icon`,`position`,`started`])):m((s(),u(`div`,S,[m(d(`div`,C,null,512),[[r]])])),[[r]])])}}});typeof v==`function`&&v(w);var T=w;export{T as default}; \ No newline at end of file diff --git a/assets/speech-5aOToTwY.js b/assets/speech-5aOToTwY.js deleted file mode 100644 index f8044d3adae5bb49ab2fc71349f900701888c975..0000000000000000000000000000000000000000 --- a/assets/speech-5aOToTwY.js +++ /dev/null @@ -1 +0,0 @@ -import"./Basic-BE3KxqAa.js";import{Textarea_default as e}from"./Textarea-BJEUAUG6.js";import{FieldCheckbox_default as t,FieldInput_default as n,FieldRange_default as r,Fragment as i,RadioCardManySelect_default as ee,RadioCardSimple_default as te,RouterLink as ne,Skeleton_default as a,TestDummyMarker_default as re,VoiceCardManySelect_default as ie,createBaseVNode as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createVNode as u,defineComponent as ae,generateSpeech as d,isRef as f,normalizeClass as oe,onMounted as p,onUnmounted as m,openBlock as h,ref as g,renderList as se,resolveDirective as ce,storeToRefs as _,toDisplayString as v,unref as y,useI18n as le,useProvidersStore as ue,useSpeechStore as de,vModelSelect as fe,vModelText as pe,watch as me,withCtx as b,withDirectives as x}from"./index-iQVr9nx1.js";import{route_block_default as S}from"./route-block-D_p8WJle.js";const he={flex:`~ col md:row gap-6`},ge={bg:`neutral-100 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,"p-4":``,flex:`~ col gap-4`,class:`w-full md:w-[40%]`},_e={flex:`~ col gap-4`},ve={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},ye={text:`neutral-400 dark:neutral-500`},be={"max-w-full":``},xe={key:0,flex:`~ row gap-4`,style:{"scrollbar-width":`none`},"min-w-0":``,"of-x-scroll":``,"scroll-smooth":``,role:`radiogroup`},Se={key:1},Ce={key:0},we={flex:`~ col gap-4`},Te={class:`text-lg md:text-2xl`},C={text:`neutral-400 dark:neutral-400`},w={key:0,class:`flex items-center justify-center py-4`},T={key:1,class:`flex items-center gap-3 border border-red-200 rounded-lg bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20`},E={class:`flex flex-col`},D={class:`font-medium`},O={class:`text-sm text-red-600 dark:text-red-400`},Ee={key:2,class:`flex items-center gap-3 border border-amber-200 rounded-lg bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},De={class:`flex flex-col`},Oe={class:`font-medium`},ke={class:`text-sm text-amber-600 dark:text-amber-400`},Ae={key:0},je={flex:`~ col gap-4`},Me={key:0},Ne={class:`flex flex-col gap-4`},Pe={flex:`~ row gap-4`},Fe={key:1,class:`space-y-6`},Ie={key:2,class:`flex items-center gap-3 border border-2 border-red-200 rounded-lg bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20`},Le={class:`flex flex-col`},Re={class:`text-sm text-red-600 dark:text-red-400`},ze={key:3,class:`flex items-center gap-3 border border-2 border-amber-200 rounded-lg bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},Be={flex:`~ col gap-4`},Ve={key:4,class:`mt-2 space-y-6`},He={key:0},Ue={flex:`~ col gap-4`},We={flex:`~ col gap-6`,class:`w-full md:w-[60%]`},Ge={"w-full":``,"rounded-xl":``},Ke={class:`mb-4 text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`,"w-full":``},k={class:`inline-flex items-center gap-4`},qe={flex:`~ col gap-4`},Je={flex:`~ row`,"gap-4":``},Ye=[`disabled`],Xe={flex:`~ row`,"items-center":``,"gap-2":``},Ze=[`src`],Qe={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var A=ae({__name:`speech`,setup(ae){let{t:S}=le(),A=ue(),j=de(),{configuredSpeechProvidersMetadata:M}=_(A),{activeSpeechProvider:N,activeSpeechModel:P,activeSpeechVoice:F,activeSpeechVoiceId:I,pitch:L,isLoadingSpeechProviderVoices:$e,supportsModelListing:et,providerModels:R,isLoadingActiveProviderModels:z,activeProviderModelError:B,modelSearchQuery:V,speechProviderError:H,ssmlEnabled:U,availableVoices:W}=_(j),G=g(``),K=g(!1),q=g(`Hello, my name is AI Assistant`),J=g(``),Y=g(!1),X=g(``),Z=g(null),Q=g(``);p(async()=>{await A.loadModelsForConfiguredProviders(),await j.loadVoicesForProvider(N.value)}),me(N,async()=>{await A.loadModelsForConfiguredProviders(),await j.loadVoicesForProvider(N.value)});async function tt(){if(!q.value.trim()&&!K.value||K.value&&!J.value.trim())return;if(!P.value){console.error(`No model selected`);return}if(!F.value){console.error(`No voice selected`);return}let e=A.getProviderInstance(N.value);if(!e){console.error(`Failed to initialize speech provider`);return}let t=A.getProviderConfig(N.value);Y.value=!0,Q.value=``;try{X.value&&$();let n=K.value?J.value:j.supportsSSML?j.generateSSML(q.value,F.value,{...t,pitch:L.value}):q.value,r=await d({...e.speech(P.value,t),input:n,voice:F.value.id});X.value=URL.createObjectURL(new Blob([r])),setTimeout(()=>{Z.value&&Z.value.play()},100)}catch(e){console.error(`Error generating speech:`,e),Q.value=e instanceof Error?e.message:`An unknown error occurred`}finally{Y.value=!1}}function $(){Z.value&&(Z.value.pause(),Z.value.currentTime=0),X.value&&(URL.revokeObjectURL(X.value),X.value=``)}m(()=>{X.value&&URL.revokeObjectURL(X.value)});function nt(e){F.value={id:e,name:e,description:e,previewURL:e,languages:[{code:`en`,title:`English`}],provider:N.value,gender:`male`}}function rt(e){P.value=e}return(ae,d)=>{var p;let m=ce(`motion`);return h(),l(i,null,[o(`div`,he,[o(`div`,ge,[o(`div`,null,[o(`div`,_e,[o(`div`,null,[o(`h2`,ve,v(y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.title`)),1),o(`div`,ye,[o(`span`,null,v(y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.description`)),1)])]),o(`div`,be,[y(M).length>0?(h(),l(`fieldset`,xe,[(h(!0),l(i,null,se(y(M),e=>(h(),s(y(te),{id:e.id,key:e.id,modelValue:y(N),"onUpdate:modelValue":d[0]||=e=>f(N)?N.value=e:null,name:`speech-provider`,value:e.id,title:e.localizedName||`Unknown`,description:e.localizedDescription},null,8,[`id`,`modelValue`,`value`,`title`,`description`]))),128))])):(h(),l(`div`,Se,[u(y(ne),{class:`flex items-center gap-3 rounded-lg p-4`,border:`2 dashed neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-800`,transition:`colors duration-200 ease-in-out`,to:`/settings/providers`},{default:b(()=>d[13]||=[o(`div`,{"i-solar:warning-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),o(`div`,{class:`flex flex-col`},[o(`span`,{class:`font-medium`},`No Speech Providers Configured`),o(`span`,{class:`text-sm text-neutral-400 dark:text-neutral-500`},`Click here to set up your speech providers`)],-1),o(`div`,{"i-solar:arrow-right-line-duotone":``,class:`ml-auto text-xl text-neutral-400 dark:text-neutral-500`},null,-1)]),_:1,__:[13]})]))])]),o(`div`,null,[y(N)&&y(et)?(h(),l(`div`,Ce,[o(`div`,we,[o(`div`,null,[o(`h2`,Te,v(y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.title`)),1),o(`div`,C,[o(`span`,null,v(y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.subtitle`)),1)])]),y(z)?(h(),l(`div`,w,[d[14]||=o(`div`,{class:`mr-2 animate-spin`},[o(`div`,{"i-solar:spinner-line-duotone":``,"text-xl":``})],-1),o(`span`,null,v(y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.loading`)),1)])):y(B)?(h(),l(`div`,T,[d[15]||=o(`div`,{"i-solar:close-circle-line-duotone":``,class:`text-2xl text-red-500 dark:text-red-400`},null,-1),o(`div`,E,[o(`span`,D,v(y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.error`)),1),o(`span`,O,v(y(B)),1)])])):y(R).length===0&&!y(z)?(h(),l(`div`,Ee,[d[16]||=o(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),o(`div`,De,[o(`span`,Oe,v(y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models`)),1),o(`span`,ke,v(y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models_description`)),1)])])):y(R).length>0?(h(),s(y(ee),{key:3,modelValue:y(P),"onUpdate:modelValue":d[1]||=e=>f(P)?P.value=e:null,"search-query":y(V),"onUpdate:searchQuery":d[2]||=e=>f(V)?V.value=e:null,items:y(R),searchable:!0,"search-placeholder":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_placeholder`),"search-no-results-title":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results`),"search-no-results-description":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results_description`,{query:y(V)}),"search-results-text":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_results`,{count:`{count}`,total:`{total}`}),"custom-input-placeholder":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.custom_model_placeholder`),"expand-button-text":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.expand`),"collapse-button-text":y(S)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.collapse`),"onUpdate:customValue":rt},null,8,[`modelValue`,`search-query`,`items`,`search-placeholder`,`search-no-results-title`,`search-no-results-description`,`search-results-text`,`custom-input-placeholder`,`expand-button-text`,`collapse-button-text`])):c(``,!0)])])):c(``,!0)])]),y(N)?(h(),l(`div`,Ae,[o(`div`,je,[d[27]||=o(`div`,null,[o(`h2`,{class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},` Voice Configuration `),o(`div`,{text:`neutral-400 dark:neutral-500`},[o(`span`,null,`Customize how your AI assistant speaks`)])],-1),y($e)?(h(),l(`div`,Me,[o(`div`,Ne,[u(y(a),{class:`w-full rounded-lg p-2.5 text-sm`},{default:b(()=>d[17]||=[o(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[17]}),o(`div`,Pe,[u(y(a),{class:`w-full rounded-lg p-4 text-sm`},{default:b(()=>d[18]||=[o(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[18]}),u(y(a),{class:`w-full rounded-lg p-4 text-sm`},{default:b(()=>d[19]||=[o(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[19]}),u(y(a),{class:`w-full rounded-lg p-4 text-sm`},{default:b(()=>d[20]||=[o(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[20]})]),u(y(a),{class:`w-full rounded-lg p-3 text-sm`},{default:b(()=>d[21]||=[o(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[21]})])])):y(W)[y(N)]&&y(W)[y(N)].length>0?(h(),l(`div`,Fe,[u(y(ie),{"search-query":G.value,"onUpdate:searchQuery":d[3]||=e=>G.value=e,"voice-id":y(I),"onUpdate:voiceId":d[4]||=e=>f(I)?I.value=e:null,voices:(p=y(W)[y(N)])?.map(e=>({id:e.id,name:e.name,description:e.description,previewURL:e.previewURL,customizable:!1})),searchable:!0,"search-placeholder":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.search_voices_placeholder`),"search-no-results-title":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.no_voices`),"search-no-results-description":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.no_voices_description`),"search-results-text":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.search_voices_results`,{count:0,total:0}),"custom-input-placeholder":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.custom_voice_placeholder`),"expand-button-text":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.show_more`),"collapse-button-text":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.show_less`),"play-button-text":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.play_sample`),"pause-button-text":y(S)(`settings.pages.modules.speech.sections.section.provider-voice-selection.pause`),"onUpdate:customValue":nt},null,8,[`search-query`,`voice-id`,`voices`,`search-placeholder`,`search-no-results-title`,`search-no-results-description`,`search-results-text`,`custom-input-placeholder`,`expand-button-text`,`collapse-button-text`,`play-button-text`,`pause-button-text`])])):y(H)?(h(),l(`div`,Ie,[d[23]||=o(`div`,{"i-solar:close-circle-line-duotone":``,class:`text-2xl text-red-500 dark:text-red-400`},null,-1),o(`div`,Le,[d[22]||=o(`span`,{class:`font-medium`},`Error loading voices`,-1),o(`span`,Re,v(y(H)),1)])])):(h(),l(`div`,ze,d[24]||=[o(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),o(`div`,{class:`flex flex-col`},[o(`span`,{class:`font-medium`},`No voices available`),o(`span`,{class:`text-sm text-amber-600 dark:text-amber-400`},` No voices were found for this provider. You can enter a custom voice name below. `)],-1)])),o(`div`,Be,[u(y(r),{modelValue:y(L),"onUpdate:modelValue":d[5]||=e=>f(L)?L.value=e:null,label:`Pitch`,description:`Tune the pitch of the voice`,min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`]),u(y(t),{modelValue:y(U),"onUpdate:modelValue":d[6]||=e=>f(U)?U.value=e:null,label:`Enable SSML`,description:`Enable Speech Synthesis Markup Language for more control over speech output`},null,8,[`modelValue`])]),!y(W)[y(N)]||y(W)[y(N)].length===0?(h(),l(`div`,Ve,[u(y(n),{modelValue:y(I),"onUpdate:modelValue":d[7]||=e=>f(I)?I.value=e:null,type:`text`,label:`Voice ID`,description:`Enter the voice ID for your custom voice`,placeholder:`Enter voice name (e.g., 'Rachel', 'Josh')`},null,8,[`modelValue`]),y(N)===`elevenlabs`?(h(),l(`div`,He,[d[26]||=o(`label`,{class:`mb-1 block text-sm font-medium`},` Model `,-1),x(o(`select`,{"onUpdate:modelValue":d[8]||=e=>f(P)?P.value=e:null,class:`w-full border border-neutral-300 rounded bg-white px-3 py-2 dark:border-neutral-700 dark:bg-neutral-900`},d[25]||=[o(`option`,{value:`eleven_monolingual_v1`},` Monolingual v1 `,-1),o(`option`,{value:`eleven_multilingual_v1`},` Multilingual v1 `,-1),o(`option`,{value:`eleven_multilingual_v2`},` Multilingual v2 `,-1)],512),[[fe,y(P)]])])):c(``,!0),o(`div`,Ue,[u(y(r),{modelValue:y(L),"onUpdate:modelValue":d[9]||=e=>f(L)?L.value=e:null,label:`Pitch`,description:`Tune the pitch of the voice`,min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`])])])):c(``,!0)])])):c(``,!0)]),o(`div`,We,[o(`div`,Ge,[o(`h2`,Ke,[o(`div`,k,[u(y(re)),o(`div`,null,v(y(S)(`settings.pages.providers.provider.elevenlabs.playground.title`)),1)])]),o(`div`,qe,[u(y(t),{modelValue:K.value,"onUpdate:modelValue":d[10]||=e=>K.value=e,label:`Use Custom SSML`,description:`Enable to input raw SSML instead of plain text`},null,8,[`modelValue`]),K.value?x((h(),l(`textarea`,{key:1,"onUpdate:modelValue":d[12]||=e=>J.value=e,placeholder:`Enter SSML text...`,border:`neutral-100 dark:neutral-800 solid 2 focus:neutral-200 dark:focus:neutral-700`,transition:`all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`,"h-48":``,"w-full":``,"rounded-lg":``,"px-3":``,"py-2":``,"text-sm":``,"font-mono":``,"outline-none":``},null,512)),[[pe,J.value]]):(h(),s(y(e),{key:0,modelValue:q.value,"onUpdate:modelValue":d[11]||=e=>q.value=e,"h-24":``,"w-full":``,placeholder:y(S)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.input.placeholder`)},null,8,[`modelValue`,`placeholder`])),o(`div`,Je,[o(`button`,{border:`neutral-800 dark:neutral-200 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,text:`neutral-100 dark:neutral-900`,"py-2":``,"text-sm":``,disabled:Y.value||!q.value.trim()&&!K.value||K.value&&!J.value.trim()||!y(F),class:oe({"opacity-50 cursor-not-allowed":Y.value||!q.value.trim()&&!K.value||K.value&&!J.value.trim()||!y(F)}),bg:`neutral-700 dark:neutral-300`,onClick:tt},[o(`div`,Xe,[d[28]||=o(`div`,{"i-solar:play-circle-bold-duotone":``},null,-1),o(`span`,null,v(Y.value?y(S)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.generating`):y(S)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.label`)),1)])],10,Ye),X.value?(h(),l(`button`,{key:0,border:`primary-300 dark:primary-800 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,"py-2":``,"text-sm":``,onClick:$},d[29]||=[o(`div`,{flex:`~ row`,"items-center":``,"gap-2":``},[o(`div`,{"i-solar:stop-circle-bold-duotone":``}),o(`span`,null,`Stop`)],-1)])):c(``,!0)]),X.value?(h(),l(`audio`,{key:2,ref_key:`audioPlayer`,ref:Z,src:X.value,controls:``,class:`mt-2 w-full`},null,8,Ze)):c(``,!0)])])])]),x((h(),l(`div`,Qe,d[30]||=[o(`div`,{text:`60`,"i-solar:user-speak-rounded-bold-duotone":``},null,-1)])),[[m]])],64)}}});typeof S==`function`&&S(A);var j=A;export{j as default}; \ No newline at end of file diff --git a/assets/speech-T1PXFj7-.js b/assets/speech-T1PXFj7-.js new file mode 100644 index 0000000000000000000000000000000000000000..2092eb4da0aabc7ccd44ecf5ac2bf715b2310970 --- /dev/null +++ b/assets/speech-T1PXFj7-.js @@ -0,0 +1 @@ +import"./Basic-D95BeH1T.js";import{b as e}from"./Textarea-CMwGMW-L.js";import{J as ee,Q as t,U as n,X as r,Y as te,Z as ne,a8 as i,aB as re,aG as ie,aJ as a,aa as ae,ab as o,cX as oe,cZ as se,d$ as s,d3 as ce,d7 as le,d9 as c,dB as l,dF as ue,dG as de,dH as u,dK as d,dV as f,da as p,db as m,df as fe,dj as h,dl as pe,dn as g,dr as _,du as v,e1 as y,e2 as me,g as he,i as ge}from"./index-C9kcCpP-.js";import{b}from"./route-block-B2lA4iHQ.js";const _e={flex:`~ col md:row gap-6`},ve={bg:`neutral-100 dark:[rgba(0,0,0,0.3)]`,"rounded-xl":``,"p-4":``,flex:`~ col gap-4`,class:`w-full md:w-[40%]`},ye={flex:`~ col gap-4`},be={class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},xe={text:`neutral-400 dark:neutral-500`},Se={"max-w-full":``},Ce={key:0,flex:`~ row gap-4`,style:{"scrollbar-width":`none`},"min-w-0":``,"of-x-scroll":``,"scroll-smooth":``,role:`radiogroup`},we={key:1},Te={key:0},x={flex:`~ col gap-4`},S={class:`text-lg md:text-2xl`},C={text:`neutral-400 dark:neutral-400`},w={key:0,class:`flex items-center justify-center py-4`},T={key:1,class:`flex items-center gap-3 border border-red-200 rounded-lg bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20`},E={class:`flex flex-col`},D={class:`font-medium`},O={class:`text-sm text-red-600 dark:text-red-400`},Ee={key:2,class:`flex items-center gap-3 border border-amber-200 rounded-lg bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},De={class:`flex flex-col`},Oe={class:`font-medium`},ke={class:`text-sm text-amber-600 dark:text-amber-400`},Ae={key:0},je={flex:`~ col gap-4`},Me={key:0},Ne={class:`flex flex-col gap-4`},Pe={flex:`~ row gap-4`},Fe={key:1,class:`space-y-6`},Ie={key:2,class:`flex items-center gap-3 border border-2 border-red-200 rounded-lg bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20`},Le={class:`flex flex-col`},Re={class:`text-sm text-red-600 dark:text-red-400`},ze={key:3,class:`flex items-center gap-3 border border-2 border-amber-200 rounded-lg bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20`},Be={flex:`~ col gap-4`},Ve={key:4,class:`mt-2 space-y-6`},He={key:0},Ue={flex:`~ col gap-4`},We={flex:`~ col gap-6`,class:`w-full md:w-[60%]`},Ge={"w-full":``,"rounded-xl":``},k={class:`mb-4 text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`,"w-full":``},Ke={class:`inline-flex items-center gap-4`},qe={flex:`~ col gap-4`},Je={flex:`~ row`,"gap-4":``},Ye=[`disabled`],Xe={flex:`~ row`,"items-center":``,"gap-2":``},Ze=[`src`],Qe={text:`neutral-200/50 dark:neutral-600/20`,"pointer-events-none":``,fixed:``,top:`[calc(100dvh-15rem)]`,"bottom-0":``,"right--5":``,"z--1":``,initial:{scale:.9,opacity:0,x:20},enter:{scale:1,opacity:1,x:0},duration:500,"size-60":``,flex:``,"items-center":``,"justify-center":``};var A=le({__name:`speech`,setup(le){let{t:b}=t(),A=ge(),j=he(),{configuredSpeechProvidersMetadata:M}=a(A),{activeSpeechProvider:N,activeSpeechModel:P,activeSpeechVoice:F,activeSpeechVoiceId:I,pitch:L,isLoadingSpeechProviderVoices:$e,supportsModelListing:et,providerModels:R,isLoadingActiveProviderModels:z,activeProviderModelError:B,modelSearchQuery:V,speechProviderError:H,ssmlEnabled:U,availableVoices:W}=a(j),G=d(``),K=d(!1),q=d(`Hello, my name is AI Assistant`),J=d(``),Y=d(!1),X=d(``),Z=d(null),Q=d(``);ce(async()=>{await A.loadModelsForConfiguredProviders(),await j.loadVoicesForProvider(N.value)}),ue(N,async()=>{await A.loadModelsForConfiguredProviders(),await j.loadVoicesForProvider(N.value)});async function tt(){if(!q.value.trim()&&!K.value||K.value&&!J.value.trim())return;if(!P.value){console.error(`No model selected`);return}if(!F.value){console.error(`No voice selected`);return}let e=A.getProviderInstance(N.value);if(!e){console.error(`Failed to initialize speech provider`);return}let t=A.getProviderConfig(N.value);Y.value=!0,Q.value=``;try{X.value&&$();let n=K.value?J.value:j.supportsSSML?j.generateSSML(q.value,F.value,{...t,pitch:L.value}):q.value,r=await ee({...e.speech(P.value,t),input:n,voice:F.value.id});X.value=URL.createObjectURL(new Blob([r])),setTimeout(()=>{Z.value&&Z.value.play()},100)}catch(e){console.error(`Error generating speech:`,e),Q.value=e instanceof Error?e.message:`An unknown error occurred`}finally{Y.value=!1}}function $(){Z.value&&(Z.value.pause(),Z.value.currentTime=0),X.value&&(URL.revokeObjectURL(X.value),X.value=``)}fe(()=>{X.value&&URL.revokeObjectURL(X.value)});function nt(e){F.value={id:e,name:e,description:e,previewURL:e,languages:[{code:`en`,title:`English`}],provider:N.value,gender:`male`}}function rt(e){P.value=e}return(ee,t)=>{let a=de(`motion`);return u(),m(v,null,[h(`div`,_e,[h(`div`,ve,[h(`div`,null,[h(`div`,ye,[h(`div`,null,[h(`h2`,be,y(f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.title`)),1),h(`div`,xe,[h(`span`,null,y(f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.description`)),1)])]),h(`div`,Se,[f(M).length>0?(u(),m(`fieldset`,Ce,[(u(!0),m(v,null,pe(f(M),e=>(u(),g(f(te),{id:e.id,key:e.id,modelValue:f(N),"onUpdate:modelValue":t[0]||=e=>s(N)?N.value=e:null,name:`speech-provider`,value:e.id,title:e.localizedName||`Unknown`,description:e.localizedDescription},null,8,[`id`,`modelValue`,`value`,`title`,`description`]))),128))])):(u(),m(`div`,we,[l(f(ie),{class:`flex items-center gap-3 rounded-lg p-4`,border:`2 dashed neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-800`,transition:`colors duration-200 ease-in-out`,to:`/settings/providers`},{default:p(()=>t[13]||=[h(`div`,{"i-solar:warning-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),h(`div`,{class:`flex flex-col`},[h(`span`,{class:`font-medium`},`No Speech Providers Configured`),h(`span`,{class:`text-sm text-neutral-400 dark:text-neutral-500`},`Click here to set up your speech providers`)],-1),h(`div`,{"i-solar:arrow-right-line-duotone":``,class:`ml-auto text-xl text-neutral-400 dark:text-neutral-500`},null,-1)]),_:1,__:[13]})]))])]),h(`div`,null,[f(N)&&f(et)?(u(),m(`div`,Te,[h(`div`,x,[h(`div`,null,[h(`h2`,S,y(f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.title`)),1),h(`div`,C,[h(`span`,null,y(f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.subtitle`)),1)])]),f(z)?(u(),m(`div`,w,[t[14]||=h(`div`,{class:`mr-2 animate-spin`},[h(`div`,{"i-solar:spinner-line-duotone":``,"text-xl":``})],-1),h(`span`,null,y(f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.loading`)),1)])):f(B)?(u(),m(`div`,T,[t[15]||=h(`div`,{"i-solar:close-circle-line-duotone":``,class:`text-2xl text-red-500 dark:text-red-400`},null,-1),h(`div`,E,[h(`span`,D,y(f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.error`)),1),h(`span`,O,y(f(B)),1)])])):f(R).length===0&&!f(z)?(u(),m(`div`,Ee,[t[16]||=h(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),h(`div`,De,[h(`span`,Oe,y(f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models`)),1),h(`span`,ke,y(f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_models_description`)),1)])])):f(R).length>0?(u(),g(f(ne),{key:3,modelValue:f(P),"onUpdate:modelValue":t[1]||=e=>s(P)?P.value=e:null,"search-query":f(V),"onUpdate:searchQuery":t[2]||=e=>s(V)?V.value=e:null,items:f(R),searchable:!0,"search-placeholder":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_placeholder`),"search-no-results-title":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results`),"search-no-results-description":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.no_search_results_description`,{query:f(V)}),"search-results-text":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.search_results`,{count:`{count}`,total:`{total}`}),"custom-input-placeholder":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.custom_model_placeholder`),"expand-button-text":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.expand`),"collapse-button-text":f(b)(`settings.pages.modules.consciousness.sections.section.provider-model-selection.collapse`),"onUpdate:customValue":rt},null,8,[`modelValue`,`search-query`,`items`,`search-placeholder`,`search-no-results-title`,`search-no-results-description`,`search-results-text`,`custom-input-placeholder`,`expand-button-text`,`collapse-button-text`])):c(``,!0)])])):c(``,!0)])]),f(N)?(u(),m(`div`,Ae,[h(`div`,je,[t[27]||=h(`div`,null,[h(`h2`,{class:`text-lg text-neutral-500 md:text-2xl dark:text-neutral-400`},` Voice Configuration `),h(`div`,{text:`neutral-400 dark:neutral-500`},[h(`span`,null,`Customize how your AI assistant speaks`)])],-1),f($e)?(u(),m(`div`,Me,[h(`div`,Ne,[l(f(n),{class:`w-full rounded-lg p-2.5 text-sm`},{default:p(()=>t[17]||=[h(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[17]}),h(`div`,Pe,[l(f(n),{class:`w-full rounded-lg p-4 text-sm`},{default:p(()=>t[18]||=[h(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[18]}),l(f(n),{class:`w-full rounded-lg p-4 text-sm`},{default:p(()=>t[19]||=[h(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[19]}),l(f(n),{class:`w-full rounded-lg p-4 text-sm`},{default:p(()=>t[20]||=[h(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[20]})]),l(f(n),{class:`w-full rounded-lg p-3 text-sm`},{default:p(()=>t[21]||=[h(`div`,{class:`h-1lh`},null,-1)]),_:1,__:[21]})])])):f(W)[f(N)]&&f(W)[f(N)].length>0?(u(),m(`div`,Fe,[l(f(r),{"search-query":G.value,"onUpdate:searchQuery":t[3]||=e=>G.value=e,"voice-id":f(I),"onUpdate:voiceId":t[4]||=e=>s(I)?I.value=e:null,voices:f(W)[f(N)]?.map(e=>({id:e.id,name:e.name,description:e.description,previewURL:e.previewURL,customizable:!1})),searchable:!0,"search-placeholder":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.search_voices_placeholder`),"search-no-results-title":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.no_voices`),"search-no-results-description":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.no_voices_description`),"search-results-text":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.search_voices_results`,{count:0,total:0}),"custom-input-placeholder":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.custom_voice_placeholder`),"expand-button-text":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.show_more`),"collapse-button-text":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.show_less`),"play-button-text":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.play_sample`),"pause-button-text":f(b)(`settings.pages.modules.speech.sections.section.provider-voice-selection.pause`),"onUpdate:customValue":nt},null,8,[`search-query`,`voice-id`,`voices`,`search-placeholder`,`search-no-results-title`,`search-no-results-description`,`search-results-text`,`custom-input-placeholder`,`expand-button-text`,`collapse-button-text`,`play-button-text`,`pause-button-text`])])):f(H)?(u(),m(`div`,Ie,[t[23]||=h(`div`,{"i-solar:close-circle-line-duotone":``,class:`text-2xl text-red-500 dark:text-red-400`},null,-1),h(`div`,Le,[t[22]||=h(`span`,{class:`font-medium`},`Error loading voices`,-1),h(`span`,Re,y(f(H)),1)])])):(u(),m(`div`,ze,t[24]||=[h(`div`,{"i-solar:info-circle-line-duotone":``,class:`text-2xl text-amber-500 dark:text-amber-400`},null,-1),h(`div`,{class:`flex flex-col`},[h(`span`,{class:`font-medium`},`No voices available`),h(`span`,{class:`text-sm text-amber-600 dark:text-amber-400`},` No voices were found for this provider. You can enter a custom voice name below. `)],-1)])),h(`div`,Be,[l(f(i),{modelValue:f(L),"onUpdate:modelValue":t[5]||=e=>s(L)?L.value=e:null,label:`Pitch`,description:`Tune the pitch of the voice`,min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`]),l(f(o),{modelValue:f(U),"onUpdate:modelValue":t[6]||=e=>s(U)?U.value=e:null,label:`Enable SSML`,description:`Enable Speech Synthesis Markup Language for more control over speech output`},null,8,[`modelValue`])]),!f(W)[f(N)]||f(W)[f(N)].length===0?(u(),m(`div`,Ve,[l(f(ae),{modelValue:f(I),"onUpdate:modelValue":t[7]||=e=>s(I)?I.value=e:null,type:`text`,label:`Voice ID`,description:`Enter the voice ID for your custom voice`,placeholder:`Enter voice name (e.g., 'Rachel', 'Josh')`},null,8,[`modelValue`]),f(N)===`elevenlabs`?(u(),m(`div`,He,[t[26]||=h(`label`,{class:`mb-1 block text-sm font-medium`},` Model `,-1),_(h(`select`,{"onUpdate:modelValue":t[8]||=e=>s(P)?P.value=e:null,class:`w-full border border-neutral-300 rounded bg-white px-3 py-2 dark:border-neutral-700 dark:bg-neutral-900`},t[25]||=[h(`option`,{value:`eleven_monolingual_v1`},` Monolingual v1 `,-1),h(`option`,{value:`eleven_multilingual_v1`},` Multilingual v1 `,-1),h(`option`,{value:`eleven_multilingual_v2`},` Multilingual v2 `,-1)],512),[[oe,f(P)]])])):c(``,!0),h(`div`,Ue,[l(f(i),{modelValue:f(L),"onUpdate:modelValue":t[9]||=e=>s(L)?L.value=e:null,label:`Pitch`,description:`Tune the pitch of the voice`,min:-100,max:100,step:1,"format-value":e=>`${e}%`},null,8,[`modelValue`,`format-value`])])])):c(``,!0)])])):c(``,!0)]),h(`div`,We,[h(`div`,Ge,[h(`h2`,k,[h(`div`,Ke,[l(f(re)),h(`div`,null,y(f(b)(`settings.pages.providers.provider.elevenlabs.playground.title`)),1)])]),h(`div`,qe,[l(f(o),{modelValue:K.value,"onUpdate:modelValue":t[10]||=e=>K.value=e,label:`Use Custom SSML`,description:`Enable to input raw SSML instead of plain text`},null,8,[`modelValue`]),K.value?_((u(),m(`textarea`,{key:1,"onUpdate:modelValue":t[12]||=e=>J.value=e,placeholder:`Enter SSML text...`,border:`neutral-100 dark:neutral-800 solid 2 focus:neutral-200 dark:focus:neutral-700`,transition:`all duration-250 ease-in-out`,bg:`neutral-100 dark:neutral-800 focus:neutral-50 dark:focus:neutral-900`,"h-48":``,"w-full":``,"rounded-lg":``,"px-3":``,"py-2":``,"text-sm":``,"font-mono":``,"outline-none":``},null,512)),[[se,J.value]]):(u(),g(f(e),{key:0,modelValue:q.value,"onUpdate:modelValue":t[11]||=e=>q.value=e,"h-24":``,"w-full":``,placeholder:f(b)(`settings.pages.providers.provider.elevenlabs.playground.fields.field.input.placeholder`)},null,8,[`modelValue`,`placeholder`])),h(`div`,Je,[h(`button`,{border:`neutral-800 dark:neutral-200 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,text:`neutral-100 dark:neutral-900`,"py-2":``,"text-sm":``,disabled:Y.value||!q.value.trim()&&!K.value||K.value&&!J.value.trim()||!f(F),class:me({"opacity-50 cursor-not-allowed":Y.value||!q.value.trim()&&!K.value||K.value&&!J.value.trim()||!f(F)}),bg:`neutral-700 dark:neutral-300`,onClick:tt},[h(`div`,Xe,[t[28]||=h(`div`,{"i-solar:play-circle-bold-duotone":``},null,-1),h(`span`,null,y(Y.value?f(b)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.generating`):f(b)(`settings.pages.providers.provider.elevenlabs.playground.buttons.button.test-voice.label`)),1)])],10,Ye),X.value?(u(),m(`button`,{key:0,border:`primary-300 dark:primary-800 solid 2`,transition:`border duration-250 ease-in-out`,"rounded-lg":``,"px-4":``,"py-2":``,"text-sm":``,onClick:$},t[29]||=[h(`div`,{flex:`~ row`,"items-center":``,"gap-2":``},[h(`div`,{"i-solar:stop-circle-bold-duotone":``}),h(`span`,null,`Stop`)],-1)])):c(``,!0)]),X.value?(u(),m(`audio`,{key:2,ref_key:`audioPlayer`,ref:Z,src:X.value,controls:``,class:`mt-2 w-full`},null,8,Ze)):c(``,!0)])])])]),_((u(),m(`div`,Qe,t[30]||=[h(`div`,{text:`60`,"i-solar:user-speak-rounded-bold-duotone":``},null,-1)])),[[a]])],64)}}});typeof b==`function`&&b(A);var j=A;export{j as default}; \ No newline at end of file diff --git a/assets/stage-67_1mIFF.js b/assets/stage-67_1mIFF.js new file mode 100644 index 0000000000000000000000000000000000000000..4c1133099f819af41b0683881604a855a7d55b0e --- /dev/null +++ b/assets/stage-67_1mIFF.js @@ -0,0 +1 @@ +import{aT as e,d7 as t,dB as n,dH as r,dV as i,db as a,dt as o,e3 as s}from"./index-C9kcCpP-.js";var c=t({__name:`stage`,setup(t){let{top:c,right:l,bottom:u,left:d}=e();return(e,t)=>{let f=o(`RouterView`);return r(),a(`main`,{text:`gray-700 dark:gray-200`,"h-full":``,"font-cuteen":``,style:s({paddingTop:`${i(c)}px`,paddingRight:`${i(l)}px`,paddingBottom:`${i(u)}px`,paddingLeft:`${i(d)}px`})},[n(f)],4)}}}),l=c;export{l as default}; \ No newline at end of file diff --git a/assets/stage-BiKoENIs.js b/assets/stage-BiKoENIs.js deleted file mode 100644 index c6b14608f45028a2d6f9c98d54046d34e802ac22..0000000000000000000000000000000000000000 --- a/assets/stage-BiKoENIs.js +++ /dev/null @@ -1 +0,0 @@ -import{Stage_default as e}from"./Scenes-CZT_B7Wn.js";import"./Basic-BE3KxqAa.js";import{createBaseVNode as t,createBlock as n,createVNode as r,defineComponent as i,openBlock as a,ref as o,unref as s,useDark as c,useMouse as l,withCtx as u}from"./index-iQVr9nx1.js";import"./import-url-browser-7PcqReZq.js";import"./duckdb-mvp-D888HGlq.js";import"./HeaderLink-DjJ0Gw-G.js";import{route_block_default as d}from"./route-block-D_p8WJle.js";import{AnimatedWave_default as f,Cross_default as p,Header_default as m,InteractiveArea_default as h,MobileInteractiveArea_default as g}from"./AnimatedWave-CpqzXgxy.js";const _={relative:``,flex:`~ col`,"z-2":``,"h-100dvh":``,"w-100vw":``,"of-hidden":``},v={relative:``,flex:`~ 1 row gap-y-0 gap-x-2 (a(),n(p,null,{default:u(()=>[r(f,{"fill-color":s(d)?`oklch(35% calc(var(--chromatic-chroma) * 0.6) var(--chromatic-hue))`:`color-mix(in srgb, oklch(95% calc(var(--chromatic-chroma-50) * 0.5) var(--chromatic-hue)) 80%, oklch(100% 0 360))`},{default:u(()=>[t(`div`,_,[t(`div`,null,[r(m,{class:`flex`,p2:``})]),t(`div`,v,[r(s(e),{"flex-1":``,"min-w":`1/2`,paused:y.value,"focus-at":{x:s(x).x.value,y:s(x).y.value}},null,8,[`paused`,`focus-at`]),r(h,{class:`flex (a(),u(g,null,{default:c(()=>[i(f,{"fill-color":s(d)?`oklch(35% calc(var(--chromatic-chroma) * 0.6) var(--chromatic-hue))`:`color-mix(in srgb, oklch(95% calc(var(--chromatic-chroma-50) * 0.5) var(--chromatic-hue)) 80%, oklch(100% 0 360))`},{default:c(()=>[l(`div`,_,[l(`div`,null,[i(h,{class:`flex`,p2:``})]),l(`div`,v,[i(s(e),{"flex-1":``,"min-w":`1/2`,paused:y.value,"focus-at":{x:s(x).x.value,y:s(x).y.value}},null,8,[`paused`,`focus-at`]),i(m,{class:`flex {let f=a(`RouterView`);return i(),e(`main`,{text:`gray-700 dark:gray-200`,"h-full":``,"font-cuteen":``,style:r({paddingTop:`${o(c)}px`,paddingRight:`${o(l)}px`,paddingBottom:`${o(u)}px`,paddingLeft:`${o(d)}px`})},[t(f)],4)}}}),l=c;export{l as default}; \ No newline at end of file diff --git a/assets/sury-GtnkadyM-BTgkE7MM.js b/assets/sury-GtnkadyM-BTgkE7MM.js deleted file mode 100644 index e094e0b92f7b4c516b51b5865541c9569625e501..0000000000000000000000000000000000000000 --- a/assets/sury-GtnkadyM-BTgkE7MM.js +++ /dev/null @@ -1 +0,0 @@ -import{__vitePreload as e,tryImport as t}from"./index-iQVr9nx1.js";const n=async()=>{let{toJSONSchema:n}=await t(e(()=>import(`./__vite-optional-peer-dep_sury_xsschema-JuQAxfFv.js`),[]),`sury`);return e=>n(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/sury-GtnkadyM-BxYLhecR.js b/assets/sury-GtnkadyM-BxYLhecR.js new file mode 100644 index 0000000000000000000000000000000000000000..7c0b4cc1b016a8ad42c80aedd71e16474dc5b91a --- /dev/null +++ b/assets/sury-GtnkadyM-BxYLhecR.js @@ -0,0 +1 @@ +import{aI as e,m as t}from"./index-C9kcCpP-.js";const n=async()=>{let{toJSONSchema:n}=await t(e(()=>import(`./__vite-optional-peer-dep_sury_xsschema-DKmH-p9C.js`),[]),`sury`);return e=>n(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/theme-color-B1JvcUcD.js b/assets/theme-color-B1JvcUcD.js deleted file mode 100644 index 8391d7a2dca6fdb7c3b599cf93453a5803e1d2e1..0000000000000000000000000000000000000000 --- a/assets/theme-color-B1JvcUcD.js +++ /dev/null @@ -1 +0,0 @@ -var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({});import{merge as t,sleep as n,useDark as r}from"./index-iQVr9nx1.js";var i,a;const o=async e=>{let t=await e();for(;t instanceof Function;)t=await t();return t},s={retry:3,retryCount:0,retryDelay:500},c=(e,r)=>{let{onError:i,retry:a,retryCount:l,retryDelay:u}=t(s,r),d=async(...t)=>{try{return await e(...t)}catch(r){if(i?.(r),lc(e,{onError:i,retry:a,retryCount:l+1,retryDelay:u})(...t);throw r}};return async(...e)=>o(async()=>d(...e))};function l(e,t){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(t[0])||(t=t.map(e=>[e]));let r=t[0].length,i=t[0].map((e,n)=>t.map(e=>e[n])),a=e.map(e=>i.map(t=>{let n=0;if(!Array.isArray(e)){for(let r of t)n+=e*r;return n}for(let r=0;re[0]):a}function u(e){return d(e)===`string`}function d(e){let t=Object.prototype.toString.call(e);return(t.match(/^\[object\s+(.*?)\]$/)[1]||``).toLowerCase()}function f(e,{precision:t,unit:n}){return p(e)?`none`:h(e,t)+(n??``)}function p(e){return Number.isNaN(e)||e instanceof Number&&e?.none}function m(e){return p(e)?0:e}function h(e,t){if(e===0)return 0;let n=~~e,r=0;n&&t&&(r=~~Math.log10(Math.abs(n))+1);let i=10**(t-r);return Math.floor(e*i+.5)/i}const g={deg:1,grad:.9,rad:180/Math.PI,turn:360};function _(e){if(!e)return;e=e.trim();let t=/^([a-z]+)\((.+?)\)$/i,n=/^-?[\d.]+$/,r=/%|deg|g?rad|turn$/,i=/\/?\s*(none|[-\w.]+(?:%|deg|g?rad|turn)?)/g,a=e.match(t);if(a){let e=[];return a[2].replace(i,(t,i)=>{let a=i.match(r),o=i;if(a){let e=a[0],t=o.slice(0,-e.length);e===`%`?(o=new Number(t/100),o.type=``):(o=new Number(t*g[e]),o.type=``,o.unit=e)}else n.test(o)?(o=new Number(o),o.type=``):o===`none`&&(o=new Number(NaN),o.none=!0);t.startsWith(`/`)&&(o=o instanceof Number?o:new Number(o),o.alpha=!0),typeof o==`object`&&o instanceof Number&&(o.raw=i),e.push(o)}),{name:a[1].toLowerCase(),rawName:a[1],rawArgs:a[2],args:e}}}function v(e){return e[e.length-1]}function y(e,t,n){return isNaN(e)?t:isNaN(t)?e:e+(t-e)*n}function b(e,t,n){return(n-e)/(t-e)}function x(e,t,n){return y(t[0],t[1],b(e[0],e[1],n))}function ee(e){return e.map(e=>e.split(`|`).map(e=>{e=e.trim();let t=e.match(/^(<[a-z]+>)\[(-?[.\d]+),\s*(-?[.\d]+)\]?$/);if(t){let e=new String(t[1]);return e.range=[+t[2],+t[3]],e}return e}))}function te(e,t,n){return Math.max(Math.min(n,t),e)}function S(e,t){return Math.sign(e)===Math.sign(t)?e:-e}function C(e,t){return S(Math.abs(e)**t,e)}function ne(e,t){return t===0?0:e/t}function w(e,t,n=0,r=e.length){for(;n>1;e[i]`,``,``]);function oe(e,t,n,r){let i=Object.entries(e.coords).map(([e,i],a)=>{let o=t.coordGrammar[a],s=r[a],c=s?.type,l;if(l=s.none?o.find(e=>ae.has(e)):o.find(e=>e==c),!l){let t=i.name||e;throw TypeError(`${c??s.raw} not allowed for ${t} in ${n}()`)}let u=l.range;c===``&&(u||=[0,1]);let d=i.range||i.refRange;return u&&d&&(r[a]=x(u,d,r[a])),l});return i}function A(e,{meta:t}={}){var n;let r={str:(n=String(e))?.trim()};if(T.run(`parse-start`,r),r.color)return r.color;if(r.parsed=_(r.str),r.parsed){let e=r.parsed.name;if(e===`color`){let e=r.parsed.args.shift(),n=e.startsWith(`--`)?e.substring(2):`--${e}`,o=[e,n],s=r.parsed.rawArgs.indexOf(`/`)>0?r.parsed.args.pop():1;for(let n of M.all){let a=n.getFormat(`color`);if(a){var i;if(o.includes(a.id)||(i=a.ids)?.filter(e=>o.includes(e)).length){let i=Object.keys(n.coords).map((e,t)=>r.parsed.args[t]||0),o;return a.coordGrammar&&(o=oe(n,a,`color`,i)),t&&Object.assign(t,{formatId:`color`,types:o}),a.id.startsWith(`--`)&&!e.startsWith(`--`)&&E.warn(`${n.name} is a non-standard space and not currently supported in the CSS spec. Use prefixed color(${a.id}) instead of color(${e}).`),e.startsWith(`--`)&&!a.id.startsWith(`--`)&&E.warn(`${n.name} is a standard space and supported in the CSS spec. Use color(${a.id}) instead of prefixed color(${e}).`),{spaceId:n.id,coords:i,alpha:s}}}}let c=``,l=e in M.registry?e:n;if(l in M.registry){var a;let e=(a=M.registry[l].formats)==null||(a=a.color)==null?void 0:a.id;e&&(c=`Did you mean color(${e})?`)}throw TypeError(`Cannot parse color(${e}). `+(c||`Missing a plugin?`))}else for(let n of M.all){let i=n.getFormat(e);if(i&&i.type===`function`){let a=1;(i.lastAlpha||v(r.parsed.args).alpha)&&(a=r.parsed.args.pop());let o=r.parsed.args,s;return i.coordGrammar&&(s=oe(n,i,e,o)),t&&Object.assign(t,{formatId:i.name,types:s}),{spaceId:n.id,coords:o,alpha:a}}}}else for(let e of M.all)for(let n in e.formats){let i=e.formats[n];if(i.type!==`custom`||i.test&&!i.test(r.str))continue;let a=i.parse(r.str);if(a)return a.alpha??=1,t&&(t.formatId=n),a}throw TypeError(`Could not parse ${e} as a color. Missing a plugin?`)}function j(e){if(Array.isArray(e))return e.map(j);if(!e)throw TypeError(`Empty color reference`);u(e)&&(e=A(e));let t=e.space||e.spaceId;return t instanceof M||(e.space=M.get(t)),e.alpha===void 0&&(e.alpha=1),e}const se=75e-6;var M=(a=class e{constructor(t){var n;this.id=t.id,this.name=t.name,this.base=t.base?e.get(t.base):null,this.aliases=t.aliases,this.base&&(this.fromBase=t.fromBase,this.toBase=t.toBase);let r=t.coords??this.base.coords;for(let e in r)`name`in r[e]||(r[e].name=e);this.coords=r;let i=t.white??this.base.white??`D65`;for(let e in this.white=O(i),this.formats=t.formats??{},this.formats){let t=this.formats[e];t.type||=`function`,t.name||=e}(n=this.formats.color)?.id||(this.formats.color={...this.formats.color??{},id:t.cssId||this.id}),t.gamutSpace?this.gamutSpace=t.gamutSpace===`self`?this:e.get(t.gamutSpace):this.isPolar?this.gamutSpace=this.base:this.gamutSpace=this,this.gamutSpace.isUnbounded&&(this.inGamut=(e,t)=>!0),this.referred=t.referred,Object.defineProperty(this,`path`,{value:ce(this).reverse(),writable:!1,enumerable:!0,configurable:!0}),T.run(`colorspace-init-end`,this)}inGamut(e,{epsilon:t=se}={}){if(!this.equals(this.gamutSpace))return e=this.to(this.gamutSpace,e),this.gamutSpace.inGamut(e,{epsilon:t});let n=Object.values(this.coords);return e.every((e,r)=>{let i=n[r];if(i.type!==`angle`&&i.range){if(Number.isNaN(e))return!0;let[n,r]=i.range;return(n===void 0||e>=n-t)&&(r===void 0||e<=r+t)}return!0})}get isUnbounded(){return Object.values(this.coords).every(e=>!(`range`in e))}get cssId(){var e;return((e=this.formats)==null||(e=e.color)==null?void 0:e.id)||this.id}get isPolar(){for(let e in this.coords)if(this.coords[e].type===`angle`)return!0;return!1}getFormat(e){if(typeof e==`object`)return e=le(e,this),e;let t;return t=e===`default`?Object.values(this.formats)[0]:this.formats[e],t?(t=le(t,this),t):null}equals(e){return e?this===e||this.id===e||this.id===e.id:!1}to(t,n){if(arguments.length===1){let e=j(t);[t,n]=[e.space,e.coords]}if(t=e.get(t),this.equals(t))return n;n=n.map(e=>Number.isNaN(e)?0:e);let r=this.path,i=t.path,a,o;for(let e=0;eo;e--)n=r[e].toBase(n);for(let e=o+1;e=0){let e=Object.entries(i.coords)[a];if(e)return{space:i,id:e[0],index:a,...e[1]}}i=e.get(i);let o=a.toLowerCase(),s=0;for(let e in i.coords){var c;let t=i.coords[e];if(e.toLowerCase()===o||(c=t.name)?.toLowerCase()===o)return{space:i,id:e,index:s,...t};s++}throw TypeError(`No "${a}" coordinate found in ${i.name}. Its coordinates are: ${Object.keys(i.coords).join(`, `)}`)}},e.defineProperty(a,`registry`,{}),e.defineProperty(a,`DEFAULT_FORMAT`,{type:`functions`,name:`color`}),a);function ce(e){let t=[e];for(let n=e;n=n.base;)t.push(n);return t}function le(e,{coords:t}={}){if(e.coords&&!e.coordGrammar){e.type||=`function`,e.name||=`color`,e.coordGrammar=ee(e.coords);let n=Object.entries(t).map(([t,n],r)=>{let i=e.coordGrammar[r][0],a=n.range||n.refRange,o=i.range,s=``;return i==``?(o=[0,100],s=`%`):i==``&&(s=`deg`),{fromRange:a,toRange:o,suffix:s}});e.serializeCoords=(e,t)=>e.map((e,r)=>{let{fromRange:i,toRange:a,suffix:o}=n[r];return i&&a&&(e=x(i,a,e)),e=f(e,{precision:t,unit:o}),e})}return e}var N=new M({id:`xyz-d65`,name:`XYZ D65`,coords:{x:{name:`X`},y:{name:`Y`},z:{name:`Z`}},white:`D65`,formats:{color:{ids:[`xyz-d65`,`xyz`]}},aliases:[`xyz`]}),P=class extends M{constructor(e){e.coords||={r:{range:[0,1],name:`Red`},g:{range:[0,1],name:`Green`},b:{range:[0,1],name:`Blue`}},e.base||=N,e.toXYZ_M&&e.fromXYZ_M&&(e.toBase??=t=>{let n=l(e.toXYZ_M,t);return this.white!==this.base.white&&(n=k(this.white,this.base.white,n)),n},e.fromBase??=t=>(t=k(this.base.white,this.white,t),l(e.fromXYZ_M,t))),e.referred??=`display`,super(e)}};function ue(e,t){return e=j(e),!t||e.space.equals(t)?e.coords.slice():(t=M.get(t),t.from(e))}function F(e,t){e=j(e);let{space:n,index:r}=M.resolveCoord(t,e.space),i=ue(e,n);return i[r]}function de(e,t,n){return e=j(e),t=M.get(t),e.coords=t.to(e.space,n),e}de.returns=`color`;function I(e,t,n){if(e=j(e),arguments.length===2&&d(arguments[1])===`object`){let t=arguments[1];for(let n in t)I(e,n,t[n])}else{typeof n==`function`&&(n=n(F(e,t)));let{space:r,index:i}=M.resolveCoord(t,e.space),a=ue(e,r);a[i]=n,de(e,r,a)}return e}I.returns=`color`;var fe=new M({id:`xyz-d50`,name:`XYZ D50`,white:`D50`,base:N,fromBase:e=>k(N.white,`D50`,e),toBase:e=>k(`D50`,N.white,e)});const pe=216/24389,me=24/116,he=24389/27;let ge=D.D50;var L=new M({id:`lab`,name:`Lab`,coords:{l:{refRange:[0,100],name:`Lightness`},a:{refRange:[-125,125]},b:{refRange:[-125,125]}},white:ge,base:fe,fromBase(e){let t=e.map((e,t)=>e/ge[t]),n=t.map(e=>e>pe?Math.cbrt(e):(he*e+16)/116);return[116*n[1]-16,500*(n[0]-n[1]),200*(n[1]-n[2])]},toBase(e){let t=[];t[1]=(e[0]+16)/116,t[0]=e[1]/500+t[1],t[2]=t[1]-e[2]/200;let n=[t[0]>me?t[0]**3:(116*t[0]-16)/he,e[0]>8?((e[0]+16)/116)**3:e[0]/he,t[2]>me?t[2]**3:(116*t[2]-16)/he];return n.map((e,t)=>e*ge[t])},formats:{lab:{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}});function R(e){return(e%360+360)%360}function _e(e,t){if(e===`raw`)return t;let[n,r]=t.map(R),i=r-n;return e===`increasing`?i<0&&(r+=360):e===`decreasing`?i>0&&(n+=360):e===`longer`?-1800?n+=360:r+=360):e===`shorter`&&(i>180?n+=360:i<-180&&(r+=360)),[n,r]}var ve=new M({id:`lch`,name:`LCH`,coords:{l:{refRange:[0,100],name:`Lightness`},c:{refRange:[0,150],name:`Chroma`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},base:L,fromBase(e){let[t,n,r]=e,i,a=.02;return i=Math.abs(n) | `,` | `,` | `]}}});const ye=25**7,be=Math.PI,xe=180/be,z=be/180;function Se(e){let t=e*e,n=t*t*t*e;return n}function Ce(e,t,{kL:n=1,kC:r=1,kH:i=1}={}){[e,t]=j([e,t]);let[a,o,s]=L.from(e),c=ve.from(L,[a,o,s])[1],[l,u,d]=L.from(t),f=ve.from(L,[l,u,d])[1];c<0&&(c=0),f<0&&(f=0);let p=(c+f)/2,m=Se(p),h=.5*(1-Math.sqrt(m/(m+ye))),g=(1+h)*o,_=(1+h)*u,v=Math.sqrt(g**2+s**2),y=Math.sqrt(_**2+d**2),b=g===0&&s===0?0:Math.atan2(s,g),x=_===0&&d===0?0:Math.atan2(d,_);b<0&&(b+=2*be),x<0&&(x+=2*be),b*=xe,x*=xe;let ee=l-a,te=y-v,S=x-b,C=b+x,ne=Math.abs(S),w;v*y===0?w=0:ne<=180?w=S:S>180?w=S-360:S<-180?w=S+360:E.warn(`the unthinkable has happened`);let re=2*Math.sqrt(y*v)*Math.sin(w*z/2),ie=(a+l)/2,T=(v+y)/2,D=Se(T),O;O=v*y===0?C:ne<=180?C/2:C<360?(C+360)/2:(C-360)/2;let k=(ie-50)**2,ae=1+.015*k/Math.sqrt(20+k),oe=1+.045*T,A=1;A-=.17*Math.cos((O-30)*z),A+=.24*Math.cos(2*O*z),A+=.32*Math.cos((3*O+6)*z),A-=.2*Math.cos((4*O-63)*z);let se=1+.015*T*A,M=30*Math.exp(-1*((O-275)/25)**2),ce=2*Math.sqrt(D/(D+ye)),le=-1*Math.sin(2*M*z)*ce,N=(ee/(n*ae))**2;return N+=(te/(r*oe))**2,N+=(re/(i*se))**2,N+=le*(te/(r*oe))*(re/(i*se)),Math.sqrt(N)}const we=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],Te=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],Ee=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],De=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]];var B=new M({id:`oklab`,name:`Oklab`,coords:{l:{refRange:[0,1],name:`Lightness`},a:{refRange:[-.4,.4]},b:{refRange:[-.4,.4]}},white:`D65`,base:N,fromBase(e){let t=l(we,e),n=t.map(e=>Math.cbrt(e));return l(Ee,n)},toBase(e){let t=l(De,e),n=t.map(e=>e**3);return l(Te,n)},formats:{oklab:{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}});function Oe(e,t){[e,t]=j([e,t]);let[n,r,i]=B.from(e),[a,o,s]=B.from(t),c=n-a,l=r-o,u=i-s;return Math.sqrt(c**2+l**2+u**2)}const ke=75e-6;function V(e,t,{epsilon:n=ke}={}){e=j(e),t||=e.space,t=M.get(t);let r=e.coords;return t!==e.space&&(r=t.from(e)),t.inGamut(r,{epsilon:n})}function H(e){return{space:e.space,coords:e.coords.slice(),alpha:e.alpha}}function Ae(e,t,n=`lab`){n=M.get(n);let r=n.from(e),i=n.from(t);return Math.sqrt(r.reduce((e,t,n)=>{let r=i[n];return isNaN(t)||isNaN(r)?e:e+(r-t)**2},0))}function je(e,t){return Ae(e,t,`lab`)}const Me=Math.PI,Ne=Me/180;function Pe(e,t,{l:n=2,c:r=1}={}){[e,t]=j([e,t]);let[i,a,o]=L.from(e),[,s,c]=ve.from(L,[i,a,o]),[l,u,d]=L.from(t),f=ve.from(L,[l,u,d])[1];s<0&&(s=0),f<0&&(f=0);let p=i-l,m=s-f,h=a-u,g=o-d,_=h**2+g**2-m**2,v=.511;i>=16&&(v=.040975*i/(1+.01765*i));let y=.0638*s/(1+.0131*s)+.638,b;Number.isNaN(c)&&(c=0),b=c>=164&&c<=345?.56+Math.abs(.2*Math.cos((c+168)*Ne)):.36+Math.abs(.4*Math.cos((c+35)*Ne));let x=s**4,ee=Math.sqrt(x/(x+1900)),te=y*(ee*b+1-ee),S=(p/(n*v))**2;return S+=(m/(r*y))**2,S+=_/te**2,Math.sqrt(S)}const Fe=203;var Ie=new M({id:`xyz-abs-d65`,cssId:`--xyz-abs-d65`,name:`Absolute XYZ D65`,coords:{x:{refRange:[0,9504.7],name:`Xa`},y:{refRange:[0,1e4],name:`Ya`},z:{refRange:[0,10888.3],name:`Za`}},base:N,fromBase(e){return e.map(e=>Math.max(e*Fe,0))},toBase(e){return e.map(e=>Math.max(e/Fe,0))}});const Le=1.15,Re=.66,ze=2610/2**14,Be=2**14/2610,Ve=3424/2**12,He=2413/2**7,Ue=2392/2**7,We=1.7*2523/2**5,Ge=2**5/(1.7*2523),Ke=-.56,qe=16295499532821565e-27,Je=[[.41478972,.579999,.014648],[-.20151,1.120649,.0531008],[-.0166008,.2648,.6684799]],Ye=[[1.9242264357876067,-1.0047923125953657,.037651404030618],[.35031676209499907,.7264811939316552,-.06538442294808501],[-.09098281098284752,-.3127282905230739,1.5227665613052603]],Xe=[[.5,.5,0],[3.524,-4.066708,.542708],[.199076,1.096799,-1.295875]],Ze=[[1,.1386050432715393,.05804731615611886],[.9999999999999999,-.1386050432715393,-.05804731615611886],[.9999999999999998,-.09601924202631895,-.8118918960560388]];var Qe=new M({id:`jzazbz`,name:`Jzazbz`,coords:{jz:{refRange:[0,1],name:`Jz`},az:{refRange:[-.5,.5]},bz:{refRange:[-.5,.5]}},base:Ie,fromBase(e){let[t,n,r]=e,i=Le*t-(Le-1)*r,a=Re*n-(Re-1)*t,o=l(Je,[i,a,r]),s=o.map(function(e){let t=Ve+He*(e/1e4)**ze,n=1+Ue*(e/1e4)**ze;return(t/n)**We}),[c,u,d]=l(Xe,s),f=(1+Ke)*c/(1+Ke*c)-qe;return[f,u,d]},toBase(e){let[t,n,r]=e,i=(t+qe)/(1+Ke-Ke*(t+qe)),a=l(Ze,[i,n,r]),o=a.map(function(e){let t=Ve-e**Ge,n=Ue*e**Ge-He,r=1e4*(t/n)**Be;return r}),[s,c,u]=l(Ye,o),d=(s+(Le-1)*u)/Le,f=(c+(Re-1)*d)/Re;return[d,f,u]},formats:{color:{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}}),$e=new M({id:`jzczhz`,name:`JzCzHz`,coords:{jz:{refRange:[0,1],name:`Jz`},cz:{refRange:[0,1],name:`Chroma`},hz:{refRange:[0,360],type:`angle`,name:`Hue`}},base:Qe,fromBase(e){let[t,n,r]=e,i,a=2e-4;return i=Math.abs(n){let n=C(t*Math.abs(e)*.01,_t);return 400*S(n,e)/(n+27.13)});return n}function Dt(e,t){let n=100/t*27.13**vt;return e.map(e=>{let t=Math.abs(e);return S(n*C(t/(400-t),vt),e)})}function Ot(e){let t=R(e);t<=U.h[0]&&(t+=360);let n=w(U.h,t)-1,[r,i]=U.h.slice(n,n+2),[a,o]=U.e.slice(n,n+2),s=U.H[n],c=(t-r)/a;return s+100*c/(c+(i-t)/o)}function kt(e){let t=(e%400+400)%400,n=Math.floor(.01*t);t%=100;let[r,i]=U.h.slice(n,n+2),[a,o]=U.e.slice(n,n+2);return R((t*(o*r-a*i)-100*r*o)/(t*(o-a)-100*o))}function At(e,t,n,r,i){let a={};a.discounting=i,a.refWhite=e,a.surround=r;let o=e.map(e=>e*100);a.la=t,a.yb=n;let s=o[1],c=l(bt,o);r=Ct[a.surround];let u=r[0];a.c=r[1],a.nc=r[2];let d=1/(5*a.la+1),f=d**4;a.fl=f*a.la+.1*(1-f)*(1-f)*Math.cbrt(5*a.la),a.flRoot=a.fl**.25,a.n=a.yb/s,a.z=1.48+Math.sqrt(a.n),a.nbb=.725*a.n**-.2,a.ncb=a.nbb;let p=i?1:Math.max(Math.min(u*(1-1/3.6*Math.exp((-a.la-42)/92)),1),0);a.dRgb=c.map(e=>y(1,s/e,p)),a.dRgbInv=a.dRgb.map(e=>1/e);let m=c.map((e,t)=>e*a.dRgb[t]),h=Et(m,a.fl);return a.aW=a.nbb*(2*h[0]+h[1]+.05*h[2]),a}const jt=At(gt,64/Math.PI*.2,20,`average`,!1);function Mt(e,t){if(!(e.J!==void 0^e.Q!==void 0))throw Error(`Conversion requires one and only one: 'J' or 'Q'`);if(!(e.C!==void 0^e.M!==void 0^e.s!==void 0))throw Error(`Conversion requires one and only one: 'C', 'M' or 's'`);if(!(e.h!==void 0^e.H!==void 0))throw Error(`Conversion requires one and only one: 'h' or 'H'`);if(e.J===0||e.Q===0)return[0,0,0];let n=0;n=e.h===void 0?kt(e.H)*Tt:R(e.h)*Tt;let r=Math.cos(n),i=Math.sin(n),a=0;e.J===void 0?e.Q!==void 0&&(a=.25*t.c*e.Q/((t.aW+4)*t.flRoot)):a=C(e.J,1/2)*.1;let o=0;e.C===void 0?e.M===void 0?e.s!==void 0&&(o=4e-4*e.s**2*(t.aW+4)/t.c):o=e.M/t.flRoot/a:o=e.C/a;let s=C(o*(1.64-.29**t.n)**-.73,10/9),c=.25*(Math.cos(n+2)+3.8),u=t.aW*C(a,2/t.c/t.z),d=5e4/13*t.nc*t.ncb*c,f=u/t.nbb,p=23*(f+.305)*ne(s,23*d+s*(11*r+108*i)),m=p*r,h=p*i,g=Dt(l(St,[f,m,h]).map(e=>e*1/1403),t.fl);return l(xt,g.map((e,n)=>e*t.dRgbInv[n])).map(e=>e/100)}function Nt(e,t){let n=e.map(e=>e*100),r=Et(l(bt,n).map((e,n)=>e*t.dRgb[n]),t.fl),i=r[0]+(-12*r[1]+r[2])/11,a=(r[0]+r[1]-2*r[2])/9,o=(Math.atan2(a,i)%yt+yt)%yt,s=.25*(Math.cos(o+2)+3.8),c=5e4/13*t.nc*t.ncb*ne(s*Math.sqrt(i**2+a**2),r[0]+r[1]+1.05*r[2]+.305),u=C(c,.9)*(1.64-.29**t.n)**.73,d=t.nbb*(2*r[0]+r[1]+.05*r[2]),f=C(d/t.aW,.5*t.c*t.z),p=100*C(f,2),m=4/t.c*f*(t.aW+4)*t.flRoot,h=u*f,g=h*t.flRoot,_=R(o*wt),v=Ot(_),y=50*C(t.c*u/(t.aW+4),1/2);return{J:p,C:h,h:_,s:y,Q:m,M:g,H:v}}var Pt=new M({id:`cam16-jmh`,cssId:`--cam16-jmh`,name:`CAM16-JMh`,coords:{j:{refRange:[0,100],name:`J`},m:{refRange:[0,105],name:`Colorfulness`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},base:N,fromBase(e){let t=Nt(e,jt);return[t.J,t.M,t.h]},toBase(e){return Mt({J:e[0],M:e[1],h:e[2]},jt)}});const Ft=D.D65,It=216/24389,Lt=24389/27;function Rt(e){let t=e>It?Math.cbrt(e):(Lt*e+16)/116;return 116*t-16}function zt(e){return e>8?((e+16)/116)**3:e/Lt}function Bt(e,t){let[n,r,i]=e,a=[],o=0;if(i===0)return[0,0,0];let s=zt(i);o=i>0?.00379058511492914*i**2+.608983189401032*i+.9155088574762233:9514440756550361e-21*i**2+.08693057439788597*i-21.928975842194614;let c=2e-12,l=15,u=0,d=1/0;for(;u<=l;){a=Mt({J:o,C:r,h:n},t);let e=Math.abs(a[1]-s);if(e | `,` | `,` | `]}}});const Wt=Math.PI/180,Gt=[1,.007,.0228];function Kt(e){e[1]<0&&(e=Ut.fromBase(Ut.toBase(e)));let t=Math.log(Math.max(1+Gt[2]*e[1]*Ht.flRoot,1))/Gt[2],n=e[0]*Wt,r=t*Math.cos(n),i=t*Math.sin(n);return[e[2],r,i]}function qt(e,t){[e,t]=j([e,t]);let[n,r,i]=Kt(Ut.from(e)),[a,o,s]=Kt(Ut.from(t));return Math.sqrt((n-a)**2+(r-o)**2+(i-s)**2)}var W={deltaE76:je,deltaECMC:Pe,deltaE2000:Ce,deltaEJz:et,deltaEITP:ht,deltaEOK:Oe,deltaEHCT:qt};function Jt(e){let t=e?Math.floor(Math.log10(Math.abs(e))):0;return Math.max(parseFloat(`1e${t-2}`),1e-6)}const Yt={hct:{method:`hct.c`,jnd:2,deltaEMethod:`hct`,blackWhiteClamp:{}},"hct-tonal":{method:`hct.c`,jnd:0,deltaEMethod:`hct`,blackWhiteClamp:{channel:`hct.t`,min:0,max:100}}};function G(e,{method:t=E.gamut_mapping,space:n=void 0,deltaEMethod:r=``,jnd:i=2,blackWhiteClamp:a={}}={}){if(e=j(e),u(arguments[1])?n=arguments[1]:n||=e.space,n=M.get(n),V(e,n,{epsilon:0}))return e;let o;if(t===`css`)o=Zt(e,{space:n});else{if(t!==`clip`&&!V(e,n)){Object.prototype.hasOwnProperty.call(Yt,t)&&({method:t,jnd:i,deltaEMethod:r,blackWhiteClamp:a}=Yt[t]);let s=Ce;if(r!==``){for(let e in W)if(`deltae`+r.toLowerCase()===e.toLowerCase()){s=W[e];break}}let c=G(K(e,n),{method:`clip`,space:n});if(s(e,c)>i){if(Object.keys(a).length===3){let t=M.resolveCoord(a.channel),n=F(K(e,t.space),t.id);if(p(n)&&(n=0),n>=a.max)return K({space:`xyz-d65`,coords:D.D65},e.space);if(n<=a.min)return K({space:`xyz-d65`,coords:[0,0,0]},e.space)}let r=M.resolveCoord(t),c=r.space,l=r.id,u=K(e,c);u.coords.forEach((e,t)=>{p(e)&&(u.coords[t]=0)});let d=r.range||r.refRange,f=d[0],m=Jt(i),h=f,g=F(u,l);for(;g-h>m;){let e=H(u);e=G(e,{space:n,method:`clip`});let t=s(u,e);t-ie.range||[]);o.coords=o.coords.map((t,n)=>{let[r,i]=e[n];return r!==void 0&&(t=Math.max(r,t)),i!==void 0&&(t=Math.min(t,i)),t})}}return n!==e.space&&(o=K(o,e.space)),e.coords=o.coords,e}G.returns=`color`;const Xt={WHITE:{space:B,coords:[1,0,0]},BLACK:{space:B,coords:[0,0,0]}};function Zt(e,{space:t}={}){let n=.02,r=1e-4;e=j(e),t||=e.space,t=M.get(t);let i=M.get(`oklch`);if(t.isUnbounded)return K(e,t);let a=K(e,i),o=a.coords[0];if(o>=1){let n=K(Xt.WHITE,t);return n.alpha=e.alpha,K(n,t)}if(o<=0){let n=K(Xt.BLACK,t);return n.alpha=e.alpha,K(n,t)}if(V(a,t,{epsilon:0}))return K(a,t);function s(e){let n=K(e,t),r=Object.values(t.coords);return n.coords=n.coords.map((e,t)=>{if(`range`in r[t]){let[n,i]=r[t].range;return te(n,e,i)}return e}),n}let c=0,l=a.coords[1],u=!0,d=H(a),f=s(d),p=Oe(f,d);if(pr;){let e=(c+l)/2;if(d.coords[1]=e,u&&V(d,t,{epsilon:0}))c=e;else if(f=s(d),p=Oe(f,d),pf(e,{precision:t})));let i=[...s];if(r===`color`){var c;let t=n.id||(c=n.ids)?.[0]||e.space.id;i.unshift(t)}let o=e.alpha;t!==null&&(o=f(o,{precision:t}));let l=e.alpha>=1||n.noAlpha?``:`${n.commas?`,`:` /`} ${o}`;a=`${r}(${i.join(n.commas?`, `:` `)}${l})`}return a}const $t=[[.6369580483012914,.14461690358620832,.1688809751641721],[.2627002120112671,.6779980715188708,.05930171646986196],[0,.028072693049087428,1.060985057710791]],en=[[1.716651187971268,-.355670783776392,-.25336628137366],[-.666684351832489,1.616481236634939,.0157685458139111],[.017639857445311,-.042770613257809,.942103121235474]];var tn=new P({id:`rec2020-linear`,cssId:`--rec2020-linear`,name:`Linear REC.2020`,white:`D65`,toXYZ_M:$t,fromXYZ_M:en});const nn=1.09929682680944,rn=.018053968510807;var an=new P({id:`rec2020`,name:`REC.2020`,base:tn,toBase(e){return e.map(function(e){return e=rn?nn*e**.45-(nn-1):4.5*e})}});const on=[[.4865709486482162,.26566769316909306,.1982172852343625],[.2289745640697488,.6917385218365064,.079286914093745],[0,.04511338185890264,1.043944368900976]],sn=[[2.493496911941425,-.9313836179191239,-.40271078445071684],[-.8294889695615747,1.7626640603183463,.023624685841943577],[.03584583024378447,-.07617238926804182,.9568845240076872]];var cn=new P({id:`p3-linear`,cssId:`--display-p3-linear`,name:`Linear P3`,white:`D65`,toXYZ_M:on,fromXYZ_M:sn});const ln=[[.41239079926595934,.357584339383878,.1804807884018343],[.21263900587151027,.715168678767756,.07219231536073371],[.01933081871559182,.11919477979462598,.9505321522496607]],q=[[3.2409699419045226,-1.537383177570094,-.4986107602930034],[-.9692436362808796,1.8759675015077202,.04155505740717559],[.05563007969699366,-.20397695888897652,1.0569715142428786]];var un=new P({id:`srgb-linear`,name:`Linear sRGB`,white:`D65`,toXYZ_M:ln,fromXYZ_M:q}),dn={aliceblue:[240/255,248/255,1],antiquewhite:[250/255,235/255,215/255],aqua:[0,1,1],aquamarine:[127/255,1,212/255],azure:[240/255,1,1],beige:[245/255,245/255,220/255],bisque:[1,228/255,196/255],black:[0,0,0],blanchedalmond:[1,235/255,205/255],blue:[0,0,1],blueviolet:[138/255,43/255,226/255],brown:[165/255,42/255,42/255],burlywood:[222/255,184/255,135/255],cadetblue:[95/255,158/255,160/255],chartreuse:[127/255,1,0],chocolate:[210/255,105/255,30/255],coral:[1,127/255,80/255],cornflowerblue:[100/255,149/255,237/255],cornsilk:[1,248/255,220/255],crimson:[220/255,20/255,60/255],cyan:[0,1,1],darkblue:[0,0,139/255],darkcyan:[0,139/255,139/255],darkgoldenrod:[184/255,134/255,11/255],darkgray:[169/255,169/255,169/255],darkgreen:[0,100/255,0],darkgrey:[169/255,169/255,169/255],darkkhaki:[189/255,183/255,107/255],darkmagenta:[139/255,0,139/255],darkolivegreen:[85/255,107/255,47/255],darkorange:[1,140/255,0],darkorchid:[153/255,50/255,204/255],darkred:[139/255,0,0],darksalmon:[233/255,150/255,122/255],darkseagreen:[143/255,188/255,143/255],darkslateblue:[72/255,61/255,139/255],darkslategray:[47/255,79/255,79/255],darkslategrey:[47/255,79/255,79/255],darkturquoise:[0,206/255,209/255],darkviolet:[148/255,0,211/255],deeppink:[1,20/255,147/255],deepskyblue:[0,191/255,1],dimgray:[105/255,105/255,105/255],dimgrey:[105/255,105/255,105/255],dodgerblue:[30/255,144/255,1],firebrick:[178/255,34/255,34/255],floralwhite:[1,250/255,240/255],forestgreen:[34/255,139/255,34/255],fuchsia:[1,0,1],gainsboro:[220/255,220/255,220/255],ghostwhite:[248/255,248/255,1],gold:[1,215/255,0],goldenrod:[218/255,165/255,32/255],gray:[128/255,128/255,128/255],green:[0,128/255,0],greenyellow:[173/255,1,47/255],grey:[128/255,128/255,128/255],honeydew:[240/255,1,240/255],hotpink:[1,105/255,180/255],indianred:[205/255,92/255,92/255],indigo:[75/255,0,130/255],ivory:[1,1,240/255],khaki:[240/255,230/255,140/255],lavender:[230/255,230/255,250/255],lavenderblush:[1,240/255,245/255],lawngreen:[124/255,252/255,0],lemonchiffon:[1,250/255,205/255],lightblue:[173/255,216/255,230/255],lightcoral:[240/255,128/255,128/255],lightcyan:[224/255,1,1],lightgoldenrodyellow:[250/255,250/255,210/255],lightgray:[211/255,211/255,211/255],lightgreen:[144/255,238/255,144/255],lightgrey:[211/255,211/255,211/255],lightpink:[1,182/255,193/255],lightsalmon:[1,160/255,122/255],lightseagreen:[32/255,178/255,170/255],lightskyblue:[135/255,206/255,250/255],lightslategray:[119/255,136/255,153/255],lightslategrey:[119/255,136/255,153/255],lightsteelblue:[176/255,196/255,222/255],lightyellow:[1,1,224/255],lime:[0,1,0],limegreen:[50/255,205/255,50/255],linen:[250/255,240/255,230/255],magenta:[1,0,1],maroon:[128/255,0,0],mediumaquamarine:[102/255,205/255,170/255],mediumblue:[0,0,205/255],mediumorchid:[186/255,85/255,211/255],mediumpurple:[147/255,112/255,219/255],mediumseagreen:[60/255,179/255,113/255],mediumslateblue:[123/255,104/255,238/255],mediumspringgreen:[0,250/255,154/255],mediumturquoise:[72/255,209/255,204/255],mediumvioletred:[199/255,21/255,133/255],midnightblue:[25/255,25/255,112/255],mintcream:[245/255,1,250/255],mistyrose:[1,228/255,225/255],moccasin:[1,228/255,181/255],navajowhite:[1,222/255,173/255],navy:[0,0,128/255],oldlace:[253/255,245/255,230/255],olive:[128/255,128/255,0],olivedrab:[107/255,142/255,35/255],orange:[1,165/255,0],orangered:[1,69/255,0],orchid:[218/255,112/255,214/255],palegoldenrod:[238/255,232/255,170/255],palegreen:[152/255,251/255,152/255],paleturquoise:[175/255,238/255,238/255],palevioletred:[219/255,112/255,147/255],papayawhip:[1,239/255,213/255],peachpuff:[1,218/255,185/255],peru:[205/255,133/255,63/255],pink:[1,192/255,203/255],plum:[221/255,160/255,221/255],powderblue:[176/255,224/255,230/255],purple:[128/255,0,128/255],rebeccapurple:[102/255,51/255,153/255],red:[1,0,0],rosybrown:[188/255,143/255,143/255],royalblue:[65/255,105/255,225/255],saddlebrown:[139/255,69/255,19/255],salmon:[250/255,128/255,114/255],sandybrown:[244/255,164/255,96/255],seagreen:[46/255,139/255,87/255],seashell:[1,245/255,238/255],sienna:[160/255,82/255,45/255],silver:[192/255,192/255,192/255],skyblue:[135/255,206/255,235/255],slateblue:[106/255,90/255,205/255],slategray:[112/255,128/255,144/255],slategrey:[112/255,128/255,144/255],snow:[1,250/255,250/255],springgreen:[0,1,127/255],steelblue:[70/255,130/255,180/255],tan:[210/255,180/255,140/255],teal:[0,128/255,128/255],thistle:[216/255,191/255,216/255],tomato:[1,99/255,71/255],turquoise:[64/255,224/255,208/255],violet:[238/255,130/255,238/255],wheat:[245/255,222/255,179/255],white:[1,1,1],whitesmoke:[245/255,245/255,245/255],yellow:[1,1,0],yellowgreen:[154/255,205/255,50/255]};let fn=[,,,].fill(` | [0, 255]`),pn=[,,,].fill(`[0, 255]`);var J=new P({id:`srgb`,name:`sRGB`,base:un,fromBase:e=>e.map(e=>{let t=e<0?-1:1,n=e*t;return n>.0031308?t*(1.055*n**(1/2.4)-.055):12.92*e}),toBase:e=>e.map(e=>{let t=e<0?-1:1,n=e*t;return n<=.04045?e/12.92:t*((n+.055)/1.055)**2.4}),formats:{rgb:{coords:fn},rgb_number:{name:`rgb`,commas:!0,coords:pn,noAlpha:!0},color:{},rgba:{coords:fn,commas:!0,lastAlpha:!0},rgba_number:{name:`rgba`,commas:!0,coords:pn},hex:{type:`custom`,toGamut:!0,test:e=>/^#([a-f0-9]{3,4}){1,2}$/i.test(e),parse(e){e.length<=5&&(e=e.replace(/[a-f0-9]/gi,`$&$&`));let t=[];return e.replace(/[a-f0-9]{2}/gi,e=>{t.push(parseInt(e,16)/255)}),{spaceId:`srgb`,coords:t.slice(0,3),alpha:t.slice(3)[0]}},serialize:(e,t,{collapse:n=!0}={})=>{t<1&&e.push(t),e=e.map(e=>Math.round(e*255));let r=n&&e.every(e=>e%17==0),i=e.map(e=>r?(e/17).toString(16):e.toString(16).padStart(2,`0`)).join(``);return`#`+i}},keyword:{type:`custom`,test:e=>/^[a-z]+$/i.test(e),parse(e){e=e.toLowerCase();let t={spaceId:`srgb`,coords:null,alpha:1};if(e===`transparent`?(t.coords=dn.black,t.alpha=0):t.coords=dn[e],t.coords)return t}}}}),mn=new P({id:`p3`,cssId:`display-p3`,name:`P3`,base:cn,fromBase:J.fromBase,toBase:J.toBase});E.display_space=J;let hn;if(typeof CSS<`u`&&CSS.supports)for(let e of[L,an,mn]){let t=e.getMinCoords(),n={space:e,coords:t,alpha:1},r=Qt(n);if(CSS.supports(`color`,r)){E.display_space=e;break}}function gn(e,{space:t=E.display_space,...n}={}){let r=Qt(e,n);if(typeof CSS>`u`||CSS.supports(`color`,r)||!E.display_space)r=new String(r),r.color=e;else{let i=e,a=e.coords.some(p)||p(e.alpha);if(a&&!(hn??=CSS.supports(`color`,`hsl(none 50% 50%)`))&&(i=H(e),i.coords=i.coords.map(m),i.alpha=m(i.alpha),r=Qt(i,n),CSS.supports(`color`,r)))return r=new String(r),r.color=i,r;i=K(i,t),r=new String(Qt(i,n)),r.color=i}return r}function _n(e,t){return e=j(e),t=j(t),e.space===t.space&&e.alpha===t.alpha&&e.coords.every((e,n)=>e===t.coords[n])}function Y(e){return F(e,[N,`y`])}function vn(e,t){I(e,[N,`y`],t)}function yn(e){Object.defineProperty(e.prototype,`luminance`,{get(){return Y(this)},set(e){vn(this,e)}})}var bn=Object.freeze({__proto__:null,getLuminance:Y,register:yn,setLuminance:vn});function xn(e,t){e=j(e),t=j(t);let n=Math.max(Y(e),0),r=Math.max(Y(t),0);return r>n&&([n,r]=[r,n]),(n+.05)/(r+.05)}const Sn=.56,Cn=.57,wn=.62,Tn=.65,En=.022,Dn=1.414,On=.1,kn=5e-4,An=1.14,jn=.027,Mn=1.14;function Nn(e){return e>=En?e:e+(En-e)**Dn}function X(e){let t=e<0?-1:1,n=Math.abs(e);return t*n**2.4}function Pn(e,t){t=j(t),e=j(e);let n,r,i,a,o,s;t=K(t,`srgb`),[a,o,s]=t.coords;let c=X(a)*.2126729+X(o)*.7151522+X(s)*.072175;e=K(e,`srgb`),[a,o,s]=e.coords;let l=X(a)*.2126729+X(o)*.7151522+X(s)*.072175,u=Nn(c),d=Nn(l),f=d>u;return Math.abs(d-u)0?r-jn:r+jn,i*100}function Fn(e,t){e=j(e),t=j(t);let n=Math.max(Y(e),0),r=Math.max(Y(t),0);r>n&&([n,r]=[r,n]);let i=n+r;return i===0?0:(n-r)/i}const In=5e4;function Ln(e,t){e=j(e),t=j(t);let n=Math.max(Y(e),0),r=Math.max(Y(t),0);return r>n&&([n,r]=[r,n]),r===0?In:(n-r)/r}function Rn(e,t){e=j(e),t=j(t);let n=F(e,[L,`l`]),r=F(t,[L,`l`]);return Math.abs(n-r)}const zn=216/24389,Bn=24/116,Vn=24389/27;let Hn=D.D65;var Un=new M({id:`lab-d65`,name:`Lab D65`,coords:{l:{refRange:[0,100],name:`Lightness`},a:{refRange:[-125,125]},b:{refRange:[-125,125]}},white:Hn,base:N,fromBase(e){let t=e.map((e,t)=>e/Hn[t]),n=t.map(e=>e>zn?Math.cbrt(e):(Vn*e+16)/116);return[116*n[1]-16,500*(n[0]-n[1]),200*(n[1]-n[2])]},toBase(e){let t=[];t[1]=(e[0]+16)/116,t[0]=e[1]/500+t[1],t[2]=t[1]-e[2]/200;let n=[t[0]>Bn?t[0]**3:(116*t[0]-16)/Vn,e[0]>8?((e[0]+16)/116)**3:e[0]/Vn,t[2]>Bn?t[2]**3:(116*t[2]-16)/Vn];return n.map((e,t)=>e*Hn[t])},formats:{"lab-d65":{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}});const Wn=5**.5*.5+.5;function Gn(e,t){e=j(e),t=j(t);let n=F(e,[Un,`l`]),r=F(t,[Un,`l`]),i=Math.abs(n**+Wn-r**+Wn),a=i**(1/Wn)*Math.SQRT2-40;return a<7.5?0:a}var Kn=Object.freeze({__proto__:null,contrastAPCA:Pn,contrastDeltaPhi:Gn,contrastLstar:Rn,contrastMichelson:Fn,contrastWCAG21:xn,contrastWeber:Ln});function qn(e,t,n={}){u(n)&&(n={algorithm:n});let{algorithm:r,...i}=n;if(!r){let e=Object.keys(Kn).map(e=>e.replace(/^contrast/,``)).join(`, `);throw TypeError(`contrast() function needs a contrast algorithm. Please specify one of: ${e}`)}for(let n in e=j(e),t=j(t),Kn)if(`contrast`+r.toLowerCase()===n.toLowerCase())return Kn[n](e,t,i);throw TypeError(`Unknown contrast algorithm: ${r}`)}function Jn(e){let[t,n,r]=ue(e,N),i=t+15*n+3*r;return[4*t/i,9*n/i]}function Yn(e){let[t,n,r]=ue(e,N),i=t+n+r;return[t/i,n/i]}function Xn(e){Object.defineProperty(e.prototype,`uv`,{get(){return Jn(this)}}),Object.defineProperty(e.prototype,`xy`,{get(){return Yn(this)}})}var Zn=Object.freeze({__proto__:null,register:Xn,uv:Jn,xy:Yn});function Qn(e,t,n={}){u(n)&&(n={method:n});let{method:r=E.deltaE,...i}=n;for(let n in W)if(`deltae`+r.toLowerCase()===n.toLowerCase())return W[n](e,t,i);throw TypeError(`Unknown deltaE method: ${r}`)}function $n(e,t=.25){let n=M.get(`oklch`,`lch`),r=[n,`l`];return I(e,r,e=>e*(1+t))}function er(e,t=.25){let n=M.get(`oklch`,`lch`),r=[n,`l`];return I(e,r,e=>e*(1-t))}var tr=Object.freeze({__proto__:null,darken:er,lighten:$n});function nr(e,t,n=.5,r={}){[e,t]=[j(e),j(t)],d(n)===`object`&&([n,r]=[.5,n]);let i=ir(e,t,r);return i(n)}function rr(e,t,n={}){let r;ar(e)&&([r,n]=[e,t],[e,t]=r.rangeArgs.colors);let{maxDeltaE:i,deltaEMethod:a,steps:o=2,maxSteps:s=1e3,...c}=n;r||([e,t]=[j(e),j(t)],r=ir(e,t,c));let l=Qn(e,t),u=i>0?Math.max(o,Math.ceil(l/i)+1):o,d=[];if(s!==void 0&&(u=Math.min(u,s)),u===1)d=[{p:.5,color:r(.5)}];else{let e=1/(u-1);d=Array.from({length:u},(t,n)=>{let i=n*e;return{p:i,color:r(i)}})}if(i>0){let e=d.reduce((e,t,n)=>{if(n===0)return 0;let r=Qn(t.color,d[n-1].color,a);return Math.max(e,r)},0);for(;e>i;){e=0;for(let t=1;te.color),d}function ir(e,t,n={}){if(ar(e)){let[n,r]=[e,t];return ir(...n.rangeArgs.colors,{...n.rangeArgs.options,...r})}let{space:r,outputSpace:i,progression:a,premultiplied:o}=n;e=j(e),t=j(t),e=H(e),t=H(t);let s={colors:[e,t],options:n};if(r=r?M.get(r):M.registry[E.interpolationSpace]||e.space,i=i?M.get(i):r,e=K(e,r),t=K(t,r),e=G(e),t=G(t),r.coords.h&&r.coords.h.type===`angle`){let i=n.hue=n.hue||`shorter`,a=[r,`h`],[o,s]=[F(e,a),F(t,a)];isNaN(o)&&!isNaN(s)?o=s:isNaN(s)&&!isNaN(o)&&(s=o),[o,s]=_e(i,[o,s]),I(e,a,o),I(t,a,s)}return o&&(e.coords=e.coords.map(t=>t*e.alpha),t.coords=t.coords.map(e=>e*t.alpha)),Object.assign(n=>{n=a?a(n):n;let s=e.coords.map((e,r)=>{let i=t.coords[r];return y(e,i,n)}),c=y(e.alpha,t.alpha,n),l={space:r,coords:s,alpha:c};return o&&(l.coords=l.coords.map(e=>e/c)),i!==r&&(l=K(l,i)),l},{rangeArgs:s})}function ar(e){return d(e)===`function`&&!!e.rangeArgs}E.interpolationSpace=`lab`;function or(e){e.defineFunction(`mix`,nr,{returns:`color`}),e.defineFunction(`range`,ir,{returns:`function`}),e.defineFunction(`steps`,rr,{returns:`array`})}var sr=Object.freeze({__proto__:null,isRange:ar,mix:nr,range:ir,register:or,steps:rr}),cr=new M({id:`hsl`,name:`HSL`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},l:{range:[0,100],name:`Lightness`}},base:J,fromBase:e=>{let t=Math.max(...e),n=Math.min(...e),[r,i,a]=e,[o,s,c]=[NaN,0,(n+t)/2],l=t-n;if(l!==0){switch(s=c===0||c===1?0:(t-c)/Math.min(c,1-c),t){case r:o=(i-a)/l+(i=360&&(o-=360),[o,s*100,c*100]},toBase:e=>{let[t,n,r]=e;t%=360,t<0&&(t+=360),n/=100,r/=100;function i(e){let i=(e+t/30)%12,a=n*Math.min(r,1-r);return r-a*Math.max(-1,Math.min(i-3,9-i,1))}return[i(0),i(8),i(4)]},formats:{hsl:{coords:[` | `,``,``]},hsla:{coords:[` | `,``,``],commas:!0,lastAlpha:!0}}}),lr=new M({id:`hsv`,name:`HSV`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},v:{range:[0,100],name:`Value`}},base:cr,fromBase(e){let[t,n,r]=e;n/=100,r/=100;let i=r+n*Math.min(r,1-r);return[t,i===0?0:200*(1-r/i),100*i]},toBase(e){let[t,n,r]=e;n/=100,r/=100;let i=r*(1-n/2);return[t,i===0||i===1?0:(r-i)/Math.min(i,1-i)*100,i*100]},formats:{color:{id:`--hsv`,coords:[` | `,` | `,` | `]}}}),ur=new M({id:`hwb`,name:`HWB`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},w:{range:[0,100],name:`Whiteness`},b:{range:[0,100],name:`Blackness`}},base:lr,fromBase(e){let[t,n,r]=e;return[t,r*(100-n)/100,100-r]},toBase(e){let[t,n,r]=e;n/=100,r/=100;let i=n+r;if(i>=1){let e=n/i;return[t,0,e*100]}let a=1-r,o=a===0?0:1-n/a;return[t,o*100,a*100]},formats:{hwb:{coords:[` | `,` | `,` | `]}}});const dr=[[.5766690429101305,.1855582379065463,.1882286462349947],[.29734497525053605,.6273635662554661,.07529145849399788],[.02703136138641234,.07068885253582723,.9913375368376388]],fr=[[2.0415879038107465,-.5650069742788596,-.34473135077832956],[-.9692436362808795,1.8759675015077202,.04155505740717557],[.013444280632031142,-.11836239223101838,1.0151749943912054]];var pr=new P({id:`a98rgb-linear`,cssId:`--a98-rgb-linear`,name:`Linear Adobe® 98 RGB compatible`,white:`D65`,toXYZ_M:dr,fromXYZ_M:fr}),mr=new P({id:`a98rgb`,cssId:`a98-rgb`,name:`Adobe® 98 RGB compatible`,base:pr,toBase:e=>e.map(e=>Math.abs(e)**(563/256)*Math.sign(e)),fromBase:e=>e.map(e=>Math.abs(e)**(256/563)*Math.sign(e))});const hr=[[.7977666449006423,.13518129740053308,.0313477341283922],[.2880748288194013,.711835234241873,8993693872564e-17],[0,0,.8251046025104602]],gr=[[1.3457868816471583,-.25557208737979464,-.05110186497554526],[-.5446307051249019,1.5082477428451468,.02052744743642139],[0,0,1.2119675456389452]];var _r=new P({id:`prophoto-linear`,cssId:`--prophoto-rgb-linear`,name:`Linear ProPhoto`,white:`D50`,base:fe,toXYZ_M:hr,fromXYZ_M:gr});const vr=1/512,yr=16/512;var br=new P({id:`prophoto`,cssId:`prophoto-rgb`,name:`ProPhoto`,base:_r,toBase(e){return e.map(e=>ee>=vr?e**(1/1.8):16*e)}}),xr=new M({id:`oklch`,name:`Oklch`,coords:{l:{refRange:[0,1],name:`Lightness`},c:{refRange:[0,.4],name:`Chroma`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},white:`D65`,base:B,fromBase(e){let[t,n,r]=e,i,a=2e-4;return i=Math.abs(n) | `,` | [0,1]`,` | `]}}});let Sr=D.D65;const Cr=216/24389,wr=24389/27,[Tr,Er]=Jn({space:N,coords:Sr});var Dr=new M({id:`luv`,name:`Luv`,coords:{l:{refRange:[0,100],name:`Lightness`},u:{refRange:[-215,215]},v:{refRange:[-215,215]}},white:Sr,base:N,fromBase(e){let t=[m(e[0]),m(e[1]),m(e[2])],n=t[1],[r,i]=Jn({space:N,coords:t});if(!Number.isFinite(r)||!Number.isFinite(i))return[0,0,0];let a=n<=Cr?wr*n:116*Math.cbrt(n)-16;return[a,13*a*(r-Tr),13*a*(i-Er)]},toBase(e){let[t,n,r]=e;if(t===0||p(t))return[0,0,0];n=m(n),r=m(r);let i=n/(13*t)+Tr,a=r/(13*t)+Er,o=t<=8?t/wr:((t+16)/116)**3;return[o*(9*i/(4*a)),o,o*((12-3*i-20*a)/(4*a))]},formats:{color:{id:`--luv`,coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}}),Or=new M({id:`lchuv`,name:`LChuv`,coords:{l:{refRange:[0,100],name:`Lightness`},c:{refRange:[0,220],name:`Chroma`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},base:Dr,fromBase(e){let[t,n,r]=e,i,a=.02;return i=Math.abs(n) | `,` | `,` | `]}}});const kr=216/24389,Ar=24389/27,jr=q[0][0],Mr=q[0][1],Nr=q[0][2],Pr=q[1][0],Fr=q[1][1],Ir=q[1][2],Lr=q[2][0],Rr=q[2][1],zr=q[2][2];function Z(e,t,n){let r=t/(Math.sin(n)-e*Math.cos(n));return r<0?1/0:r}function Br(e){let t=(e+16)**3/1560896,n=t>kr?t:e/Ar,r=n*(284517*jr-94839*Nr),i=n*(838422*Nr+769860*Mr+731718*jr),a=n*(632260*Nr-126452*Mr),o=n*(284517*Pr-94839*Ir),s=n*(838422*Ir+769860*Fr+731718*Pr),c=n*(632260*Ir-126452*Fr),l=n*(284517*Lr-94839*zr),u=n*(838422*zr+769860*Rr+731718*Lr),d=n*(632260*zr-126452*Rr);return{r0s:r/a,r0i:i*e/a,r1s:r/(a+126452),r1i:(i-769860)*e/(a+126452),g0s:o/c,g0i:s*e/c,g1s:o/(c+126452),g1i:(s-769860)*e/(c+126452),b0s:l/d,b0i:u*e/d,b1s:l/(d+126452),b1i:(u-769860)*e/(d+126452)}}function Vr(e,t){let n=t/360*Math.PI*2,r=Z(e.r0s,e.r0i,n),i=Z(e.r1s,e.r1i,n),a=Z(e.g0s,e.g0i,n),o=Z(e.g1s,e.g1i,n),s=Z(e.b0s,e.b0i,n),c=Z(e.b1s,e.b1i,n);return Math.min(r,i,a,o,s,c)}var Hr=new M({id:`hsluv`,name:`HSLuv`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},l:{range:[0,100],name:`Lightness`}},base:Or,gamutSpace:J,fromBase(e){let[t,n,r]=[m(e[0]),m(e[1]),m(e[2])],i;if(t>99.9999999)i=0,t=100;else if(t<1e-8)i=0,t=0;else{let e=Br(t),a=Vr(e,r);i=n/a*100}return[r,i,t]},toBase(e){let[t,n,r]=[m(e[0]),m(e[1]),m(e[2])],i;if(r>99.9999999)r=100,i=0;else if(r<1e-8)r=0,i=0;else{let e=Br(r),a=Vr(e,t);i=a/100*n}return[r,i,t]},formats:{color:{id:`--hsluv`,coords:[` | `,` | `,` | `]}}});q[0][0],q[0][1],q[0][2],q[1][0],q[1][1],q[1][2],q[2][0],q[2][1],q[2][2];function Q(e,t){return Math.abs(t)/Math.sqrt(e**2+1)}function Ur(e){let t=Q(e.r0s,e.r0i),n=Q(e.r1s,e.r1i),r=Q(e.g0s,e.g0i),i=Q(e.g1s,e.g1i),a=Q(e.b0s,e.b0i),o=Q(e.b1s,e.b1i);return Math.min(t,n,r,i,a,o)}var Wr=new M({id:`hpluv`,name:`HPLuv`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},l:{range:[0,100],name:`Lightness`}},base:Or,gamutSpace:`self`,fromBase(e){let[t,n,r]=[m(e[0]),m(e[1]),m(e[2])],i;if(t>99.9999999)i=0,t=100;else if(t<1e-8)i=0,t=0;else{let e=Br(t),r=Ur(e);i=n/r*100}return[r,i,t]},toBase(e){let[t,n,r]=[m(e[0]),m(e[1]),m(e[2])],i;if(r>99.9999999)r=100,i=0;else if(r<1e-8)r=0,i=0;else{let e=Br(r),t=Ur(e);i=t/100*n}return[r,i,t]},formats:{color:{id:`--hpluv`,coords:[` | `,` | `,` | `]}}});const Gr=203,Kr=2610/2**14,qr=2**14/2610,Jr=2523/2**5,Yr=2**5/2523,Xr=3424/2**12,Zr=2413/2**7,Qr=2392/2**7;var $r=new P({id:`rec2100pq`,cssId:`rec2100-pq`,name:`REC.2100-PQ`,base:tn,toBase(e){return e.map(function(e){let t=(Math.max(e**Yr-Xr,0)/(Zr-Qr*e**Yr))**qr;return t*1e4/Gr})},fromBase(e){return e.map(function(e){let t=Math.max(e*Gr/1e4,0),n=Xr+Zr*t**Kr,r=1+Qr*t**Kr;return(n/r)**Jr})}});const ei=.17883277,ti=.28466892,ni=.55991073,ri=3.7743;var ii=new P({id:`rec2100hlg`,cssId:`rec2100-hlg`,name:`REC.2100-HLG`,referred:`scene`,base:tn,toBase(e){return e.map(function(e){return e<=.5?e**2/3*ri:(Math.exp((e-ni)/ei)+ti)/12*ri})},fromBase(e){return e.map(function(e){return e/=ri,e<=1/12?Math.sqrt(3*e):ei*Math.log(12*e-ti)+ni})}});const ai={};T.add(`chromatic-adaptation-start`,e=>{e.options.method&&(e.M=si(e.W1,e.W2,e.options.method))}),T.add(`chromatic-adaptation-end`,e=>{e.M||=si(e.W1,e.W2,e.options.method)});function oi({id:e,toCone_M:t,fromCone_M:n}){ai[e]=arguments[0]}function si(e,t,n=`Bradford`){let r=ai[n],[i,a,o]=l(r.toCone_M,e),[s,c,u]=l(r.toCone_M,t),d=[[s/i,0,0],[0,c/a,0],[0,0,u/o]],f=l(d,r.toCone_M),p=l(r.fromCone_M,f);return p}oi({id:`von Kries`,toCone_M:[[.40024,.7076,-.08081],[-.2263,1.16532,.0457],[0,0,.91822]],fromCone_M:[[1.8599363874558397,-1.1293816185800916,.21989740959619328],[.3611914362417676,.6388124632850422,-6370596838649899e-21],[0,0,1.0890636230968613]]}),oi({id:`Bradford`,toCone_M:[[.8951,.2664,-.1614],[-.7502,1.7135,.0367],[.0389,-.0685,1.0296]],fromCone_M:[[.9869929054667121,-.14705425642099013,.15996265166373122],[.4323052697233945,.5183602715367774,.049291228212855594],[-.00852866457517732,.04004282165408486,.96848669578755]]}),oi({id:`CAT02`,toCone_M:[[.7328,.4296,-.1624],[-.7036,1.6975,.0061],[.003,.0136,.9834]],fromCone_M:[[1.0961238208355142,-.27886900021828726,.18274517938277307],[.4543690419753592,.4735331543074117,.07209780371722911],[-.009627608738429355,-.00569803121611342,1.0153256399545427]]}),oi({id:`CAT16`,toCone_M:[[.401288,.650173,-.051461],[-.250268,1.204414,.045854],[-.002079,.048952,.953127]],fromCone_M:[[1.862067855087233,-1.0112546305316845,.14918677544445172],[.3875265432361372,.6214474419314753,-.008973985167612521],[-.01584149884933386,-.03412293802851557,1.0499644368778496]]}),Object.assign(D,{A:[1.0985,1,.35585],C:[.98074,1,1.18232],D55:[.95682,1,.92149],D75:[.94972,1,1.22638],E:[1,1,1],F2:[.99186,1,.67393],F7:[.95041,1,1.08747],F11:[1.00962,1,.6435]}),D.ACES=[.32168/.33767,1,.34065/.33767];const ci=[[.6624541811085053,.13400420645643313,.1561876870049078],[.27222871678091454,.6740817658111484,.05368951740793705],[-.005574649490394108,.004060733528982826,1.0103391003129971]],li=[[1.6410233796943257,-.32480329418479,-.23642469523761225],[-.6636628587229829,1.6153315916573379,.016756347685530137],[.011721894328375376,-.008284441996237409,.9883948585390215]];var ui=new P({id:`acescg`,cssId:`--acescg`,name:`ACEScg`,coords:{r:{range:[0,65504],name:`Red`},g:{range:[0,65504],name:`Green`},b:{range:[0,65504],name:`Blue`}},referred:`scene`,white:D.ACES,toXYZ_M:ci,fromXYZ_M:li});const di=2**-16,fi=-.35828683,pi=(Math.log2(65504)+9.72)/17.52;var mi=new P({id:`acescc`,cssId:`--acescc`,name:`ACEScc`,coords:{r:{range:[fi,pi],name:`Red`},g:{range:[fi,pi],name:`Green`},b:{range:[fi,pi],name:`Blue`}},referred:`scene`,base:ui,toBase(e){let t=-5.279999999999999/17.52;return e.map(function(e){return e<=t?(2**(e*17.52-9.72)-di)*2:e1||i===void 0?1:i<0?0:i;for(let e=0;ethis.get(e),set:t=>this.set(e,t)})}get spaceId(){return this.space.id}clone(){return new e(this.space,this.coords,this.alpha)}toJSON(){return{spaceId:this.spaceId,coords:this.coords,alpha:this.alpha}}display(...t){let n=gn(this,...t);return n.color=new e(n.color),n}static get(t,...n){return t instanceof e?t:new e(t,...n)}static defineFunction(t,n,r=n){let{instance:i=!0,returns:a}=r,o=function(...t){let r=n(...t);if(a===`color`)r=e.get(r);else if(a===`function`){let t=r;r=function(...n){let r=t(...n);return e.get(r)},Object.assign(r,t)}else a===`array`&&(r=r.map(t=>e.get(t)));return r};t in e||(e[t]=o),i&&(e.prototype[t]=function(...e){return o(this,...e)})}static defineFunctions(t){for(let n in t)e.defineFunction(n,t[n],t[n])}static extend(exports){if(exports.register)exports.register(e);else for(let n in exports)e.defineFunction(n,exports[n])}};$.defineFunctions({get:F,getAll:ue,set:I,setAll:de,to:K,equals:_n,inGamut:V,toGamut:G,distance:Ae,toString:Qt}),Object.assign($,{util:re,hooks:T,WHITES:D,Space:M,spaces:M.registry,parse:A,defaults:E});for(let e of Object.keys(hi))M.register(hi[e]);for(let e in M.registry)gi(e,M.registry[e]);T.add(`colorspace-init-end`,e=>{var t;gi(e.id,e),(t=e.aliases)?.forEach(t=>{gi(t,e)})});function gi(e,t){let n=e.replace(/-/g,`_`);Object.defineProperty($.prototype,n,{get(){let n=this.getAll(e);return typeof Proxy>`u`?n:new Proxy(n,{has:(e,n)=>{try{return M.resolveCoord([t,n]),!0}catch{}return Reflect.has(e,n)},get:(e,n,r)=>{if(n&&typeof n!=`symbol`&&!(n in e)){let{index:r}=M.resolveCoord([t,n]);if(r>=0)return e[r]}return Reflect.get(e,n,r)},set:(n,r,i,a)=>{if(r&&typeof r!=`symbol`&&!(r in n)||r>=0){let{index:a}=M.resolveCoord([t,r]);if(a>=0)return n[a]=i,this.setAll(e,n),!0}return Reflect.set(n,r,i,a)}})},set(t){this.setAll(e,t)},configurable:!0,enumerable:!0})}$.extend(W),$.extend({deltaE:Qn}),Object.assign($,{deltaEMethods:W}),$.extend(tr),$.extend({contrast:qn}),$.extend(Zn),$.extend(bn),$.extend(sr),$.extend(Kn);function _i(e,t){return async()=>{let n=c(()=>{let t=document.querySelector(e);if(!t)throw Error(`Widgets element not found`);return t},{retry:10,retryDelay:1e3}),r=await n();return window.getComputedStyle(r).getPropertyValue(t)}}function vi(e){return async()=>{if(typeof e==`string`)return e;{let t=r();return t.value?e.dark:e.light}}}function yi(e){async function t(){var t;`document`in globalThis&&globalThis.document!=null&&`window`in globalThis&&globalThis.window!=null&&(t=document.querySelector(`meta[name="theme-color"]`))?.setAttribute(`content`,new $(await e()).to(`srgb`).toString({format:`hex`}))}return{updateThemeColor:t}}export{_i as themeColorFromPropertyOf,vi as themeColorFromValue,yi as useThemeColor}; \ No newline at end of file diff --git a/assets/theme-color-CX8iTiuc.js b/assets/theme-color-CX8iTiuc.js new file mode 100644 index 0000000000000000000000000000000000000000..02954d97beb896f787c9b9b9d260eeb0813639ea --- /dev/null +++ b/assets/theme-color-CX8iTiuc.js @@ -0,0 +1 @@ +import{F as e,G as t,aS as n}from"./index-C9kcCpP-.js";const r=async e=>{let t=await e();for(;t instanceof Function;)t=await t();return t},i={retry:3,retryCount:0,retryDelay:500},a=(n,o)=>{let{onError:s,retry:c,retryCount:l,retryDelay:u}=t(i,o),d=async(...t)=>{try{return await n(...t)}catch(r){if(s?.(r),la(n,{onError:s,retry:c,retryCount:l+1,retryDelay:u})(...t);throw r}};return async(...e)=>r(async()=>d(...e))};function o(e,t){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(t[0])||(t=t.map(e=>[e]));let r=t[0].length,i=t[0].map((e,n)=>t.map(e=>e[n])),a=e.map(e=>i.map(t=>{let n=0;if(!Array.isArray(e)){for(let r of t)n+=e*r;return n}for(let r=0;re[0]):a}function s(e){return c(e)===`string`}function c(e){let t=Object.prototype.toString.call(e);return(t.match(/^\[object\s+(.*?)\]$/)[1]||``).toLowerCase()}function l(e,{precision:t,unit:n}){return u(e)?`none`:f(e,t)+(n??``)}function u(e){return Number.isNaN(e)||e instanceof Number&&e?.none}function d(e){return u(e)?0:e}function f(e,t){if(e===0)return 0;let n=~~e,r=0;n&&t&&(r=~~Math.log10(Math.abs(n))+1);let i=10**(t-r);return Math.floor(e*i+.5)/i}const p={deg:1,grad:.9,rad:180/Math.PI,turn:360};function m(e){if(!e)return;e=e.trim();let t=/^([a-z]+)\((.+?)\)$/i,n=/^-?[\d.]+$/,r=/%|deg|g?rad|turn$/,i=/\/?\s*(none|[-\w.]+(?:%|deg|g?rad|turn)?)/g,a=e.match(t);if(a){let e=[];return a[2].replace(i,(t,i)=>{let a=i.match(r),o=i;if(a){let e=a[0],t=o.slice(0,-e.length);e===`%`?(o=new Number(t/100),o.type=``):(o=new Number(t*p[e]),o.type=``,o.unit=e)}else n.test(o)?(o=new Number(o),o.type=``):o===`none`&&(o=new Number(NaN),o.none=!0);t.startsWith(`/`)&&(o=o instanceof Number?o:new Number(o),o.alpha=!0),typeof o==`object`&&o instanceof Number&&(o.raw=i),e.push(o)}),{name:a[1].toLowerCase(),rawName:a[1],rawArgs:a[2],args:e}}}function h(e){return e[e.length-1]}function g(e,t,n){return isNaN(e)?t:isNaN(t)?e:e+(t-e)*n}function _(e,t,n){return(n-e)/(t-e)}function v(e,t,n){return g(t[0],t[1],_(e[0],e[1],n))}function y(e){return e.map(e=>e.split(`|`).map(e=>{e=e.trim();let t=e.match(/^(<[a-z]+>)\[(-?[.\d]+),\s*(-?[.\d]+)\]?$/);if(t){let e=new String(t[1]);return e.range=[+t[2],+t[3]],e}return e}))}function b(e,t,n){return Math.max(Math.min(n,t),e)}function x(e,t){return Math.sign(e)===Math.sign(t)?e:-e}function S(e,t){return x(Math.abs(e)**t,e)}function C(e,t){return t===0?0:e/t}function w(e,t,n=0,r=e.length){for(;n>1;e[i]`,``,``]);function A(e,t,n,r){let i=Object.entries(e.coords).map(([e,i],a)=>{let o=t.coordGrammar[a],s=r[a],c=s?.type,l;if(l=s.none?o.find(e=>ne.has(e)):o.find(e=>e==c),!l){let t=i.name||e;throw TypeError(`${c??s.raw} not allowed for ${t} in ${n}()`)}let u=l.range;c===``&&(u||=[0,1]);let d=i.range||i.refRange;return u&&d&&(r[a]=v(u,d,r[a])),l});return i}function re(e,{meta:t}={}){let n={str:String(e)?.trim()};if(E.run(`parse-start`,n),n.color)return n.color;if(n.parsed=m(n.str),n.parsed){let e=n.parsed.name;if(e===`color`){let e=n.parsed.args.shift(),r=e.startsWith(`--`)?e.substring(2):`--${e}`,i=[e,r],a=n.parsed.rawArgs.indexOf(`/`)>0?n.parsed.args.pop():1;for(let r of M.all){let o=r.getFormat(`color`);if(o&&(i.includes(o.id)||o.ids?.filter(e=>i.includes(e)).length)){let i=Object.keys(r.coords).map((e,t)=>n.parsed.args[t]||0),s;return o.coordGrammar&&(s=A(r,o,`color`,i)),t&&Object.assign(t,{formatId:`color`,types:s}),o.id.startsWith(`--`)&&!e.startsWith(`--`)&&D.warn(`${r.name} is a non-standard space and not currently supported in the CSS spec. Use prefixed color(${o.id}) instead of color(${e}).`),e.startsWith(`--`)&&!o.id.startsWith(`--`)&&D.warn(`${r.name} is a standard space and supported in the CSS spec. Use color(${o.id}) instead of prefixed color(${e}).`),{spaceId:r.id,coords:i,alpha:a}}}let o=``,s=e in M.registry?e:r;if(s in M.registry){let e=M.registry[s].formats?.color?.id;e&&(o=`Did you mean color(${e})?`)}throw TypeError(`Cannot parse color(${e}). `+(o||`Missing a plugin?`))}else for(let r of M.all){let i=r.getFormat(e);if(i&&i.type===`function`){let a=1;(i.lastAlpha||h(n.parsed.args).alpha)&&(a=n.parsed.args.pop());let o=n.parsed.args,s;return i.coordGrammar&&(s=A(r,i,e,o)),t&&Object.assign(t,{formatId:i.name,types:s}),{spaceId:r.id,coords:o,alpha:a}}}}else for(let e of M.all)for(let r in e.formats){let i=e.formats[r];if(i.type!==`custom`||i.test&&!i.test(n.str))continue;let a=i.parse(n.str);if(a)return a.alpha??=1,t&&(t.formatId=r),a}throw TypeError(`Could not parse ${e} as a color. Missing a plugin?`)}function j(e){if(Array.isArray(e))return e.map(j);if(!e)throw TypeError(`Empty color reference`);s(e)&&(e=re(e));let t=e.space||e.spaceId;return t instanceof M||(e.space=M.get(t)),e.alpha===void 0&&(e.alpha=1),e}const ie=75e-6;var M=class e{constructor(t){this.id=t.id,this.name=t.name,this.base=t.base?e.get(t.base):null,this.aliases=t.aliases,this.base&&(this.fromBase=t.fromBase,this.toBase=t.toBase);let n=t.coords??this.base.coords;for(let e in n)`name`in n[e]||(n[e].name=e);this.coords=n;let r=t.white??this.base.white??`D65`;for(let e in this.white=te(r),this.formats=t.formats??{},this.formats){let t=this.formats[e];t.type||=`function`,t.name||=e}this.formats.color?.id||(this.formats.color={...this.formats.color??{},id:t.cssId||this.id}),t.gamutSpace?this.gamutSpace=t.gamutSpace===`self`?this:e.get(t.gamutSpace):this.isPolar?this.gamutSpace=this.base:this.gamutSpace=this,this.gamutSpace.isUnbounded&&(this.inGamut=(e,t)=>!0),this.referred=t.referred,Object.defineProperty(this,`path`,{value:N(this).reverse(),writable:!1,enumerable:!0,configurable:!0}),E.run(`colorspace-init-end`,this)}inGamut(e,{epsilon:t=ie}={}){if(!this.equals(this.gamutSpace))return e=this.to(this.gamutSpace,e),this.gamutSpace.inGamut(e,{epsilon:t});let n=Object.values(this.coords);return e.every((e,r)=>{let i=n[r];if(i.type!==`angle`&&i.range){if(Number.isNaN(e))return!0;let[n,r]=i.range;return(n===void 0||e>=n-t)&&(r===void 0||e<=r+t)}return!0})}get isUnbounded(){return Object.values(this.coords).every(e=>!(`range`in e))}get cssId(){return this.formats?.color?.id||this.id}get isPolar(){for(let e in this.coords)if(this.coords[e].type===`angle`)return!0;return!1}getFormat(e){if(typeof e==`object`)return e=ae(e,this),e;let t;return t=e===`default`?Object.values(this.formats)[0]:this.formats[e],t?(t=ae(t,this),t):null}equals(e){return e?this===e||this.id===e||this.id===e.id:!1}to(t,n){if(arguments.length===1){let e=j(t);[t,n]=[e.space,e.coords]}if(t=e.get(t),this.equals(t))return n;n=n.map(e=>Number.isNaN(e)?0:e);let r=this.path,i=t.path,a,o;for(let e=0;eo;e--)n=r[e].toBase(n);for(let e=o+1;e=0){let e=Object.entries(i.coords)[a];if(e)return{space:i,id:e[0],index:a,...e[1]}}i=e.get(i);let o=a.toLowerCase(),s=0;for(let e in i.coords){let t=i.coords[e];if(e.toLowerCase()===o||t.name?.toLowerCase()===o)return{space:i,id:e,index:s,...t};s++}throw TypeError(`No "${a}" coordinate found in ${i.name}. Its coordinates are: ${Object.keys(i.coords).join(`, `)}`)}static DEFAULT_FORMAT={type:`functions`,name:`color`}};function N(e){let t=[e];for(let n=e;n=n.base;)t.push(n);return t}function ae(e,{coords:t}={}){if(e.coords&&!e.coordGrammar){e.type||=`function`,e.name||=`color`,e.coordGrammar=y(e.coords);let n=Object.entries(t).map(([t,n],r)=>{let i=e.coordGrammar[r][0],a=n.range||n.refRange,o=i.range,s=``;return i==``?(o=[0,100],s=`%`):i==``&&(s=`deg`),{fromRange:a,toRange:o,suffix:s}});e.serializeCoords=(e,t)=>e.map((e,r)=>{let{fromRange:i,toRange:a,suffix:o}=n[r];return i&&a&&(e=v(i,a,e)),e=l(e,{precision:t,unit:o}),e})}return e}var P=new M({id:`xyz-d65`,name:`XYZ D65`,coords:{x:{name:`X`},y:{name:`Y`},z:{name:`Z`}},white:`D65`,formats:{color:{ids:[`xyz-d65`,`xyz`]}},aliases:[`xyz`]}),F=class extends M{constructor(e){e.coords||={r:{range:[0,1],name:`Red`},g:{range:[0,1],name:`Green`},b:{range:[0,1],name:`Blue`}},e.base||=P,e.toXYZ_M&&e.fromXYZ_M&&(e.toBase??=t=>{let n=o(e.toXYZ_M,t);return this.white!==this.base.white&&(n=k(this.white,this.base.white,n)),n},e.fromBase??=t=>(t=k(this.base.white,this.white,t),o(e.fromXYZ_M,t))),e.referred??=`display`,super(e)}};function I(e,t){return e=j(e),!t||e.space.equals(t)?e.coords.slice():(t=M.get(t),t.from(e))}function L(e,t){e=j(e);let{space:n,index:r}=M.resolveCoord(t,e.space),i=I(e,n);return i[r]}function oe(e,t,n){return e=j(e),t=M.get(t),e.coords=t.to(e.space,n),e}oe.returns=`color`;function R(e,t,n){if(e=j(e),arguments.length===2&&c(arguments[1])===`object`){let t=arguments[1];for(let n in t)R(e,n,t[n])}else{typeof n==`function`&&(n=n(L(e,t)));let{space:r,index:i}=M.resolveCoord(t,e.space),a=I(e,r);a[i]=n,oe(e,r,a)}return e}R.returns=`color`;var se=new M({id:`xyz-d50`,name:`XYZ D50`,white:`D50`,base:P,fromBase:e=>k(P.white,`D50`,e),toBase:e=>k(`D50`,P.white,e)});const ce=216/24389,le=24/116,ue=24389/27;let de=O.D50;var z=new M({id:`lab`,name:`Lab`,coords:{l:{refRange:[0,100],name:`Lightness`},a:{refRange:[-125,125]},b:{refRange:[-125,125]}},white:de,base:se,fromBase(e){let t=e.map((e,t)=>e/de[t]),n=t.map(e=>e>ce?Math.cbrt(e):(ue*e+16)/116);return[116*n[1]-16,500*(n[0]-n[1]),200*(n[1]-n[2])]},toBase(e){let t=[];t[1]=(e[0]+16)/116,t[0]=e[1]/500+t[1],t[2]=t[1]-e[2]/200;let n=[t[0]>le?t[0]**3:(116*t[0]-16)/ue,e[0]>8?((e[0]+16)/116)**3:e[0]/ue,t[2]>le?t[2]**3:(116*t[2]-16)/ue];return n.map((e,t)=>e*de[t])},formats:{lab:{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}});function B(e){return(e%360+360)%360}function fe(e,t){if(e===`raw`)return t;let[n,r]=t.map(B),i=r-n;return e===`increasing`?i<0&&(r+=360):e===`decreasing`?i>0&&(n+=360):e===`longer`?-1800?n+=360:r+=360):e===`shorter`&&(i>180?n+=360:i<-180&&(r+=360)),[n,r]}var pe=new M({id:`lch`,name:`LCH`,coords:{l:{refRange:[0,100],name:`Lightness`},c:{refRange:[0,150],name:`Chroma`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},base:z,fromBase(e){let[t,n,r]=e,i,a=.02;return i=Math.abs(n) | `,` | `,` | `]}}});const me=25**7,he=Math.PI,ge=180/he,V=he/180;function _e(e){let t=e*e,n=t*t*t*e;return n}function ve(e,t,{kL:n=1,kC:r=1,kH:i=1}={}){[e,t]=j([e,t]);let[a,o,s]=z.from(e),c=pe.from(z,[a,o,s])[1],[l,u,d]=z.from(t),f=pe.from(z,[l,u,d])[1];c<0&&(c=0),f<0&&(f=0);let p=(c+f)/2,m=_e(p),h=.5*(1-Math.sqrt(m/(m+me))),g=(1+h)*o,_=(1+h)*u,v=Math.sqrt(g**2+s**2),y=Math.sqrt(_**2+d**2),b=g===0&&s===0?0:Math.atan2(s,g),x=_===0&&d===0?0:Math.atan2(d,_);b<0&&(b+=2*he),x<0&&(x+=2*he),b*=ge,x*=ge;let S=l-a,C=y-v,w=x-b,T=b+x,ee=Math.abs(w),E;v*y===0?E=0:ee<=180?E=w:w>180?E=w-360:w<-180?E=w+360:D.warn(`the unthinkable has happened`);let O=2*Math.sqrt(y*v)*Math.sin(E*V/2),te=(a+l)/2,k=(v+y)/2,ne=_e(k),A;A=v*y===0?T:ee<=180?T/2:T<360?(T+360)/2:(T-360)/2;let re=(te-50)**2,ie=1+.015*re/Math.sqrt(20+re),M=1+.045*k,N=1;N-=.17*Math.cos((A-30)*V),N+=.24*Math.cos(2*A*V),N+=.32*Math.cos((3*A+6)*V),N-=.2*Math.cos((4*A-63)*V);let ae=1+.015*k*N,P=30*Math.exp(-1*((A-275)/25)**2),F=2*Math.sqrt(ne/(ne+me)),I=-1*Math.sin(2*P*V)*F,L=(S/(n*ie))**2;return L+=(C/(r*M))**2,L+=(O/(i*ae))**2,L+=I*(C/(r*M))*(O/(i*ae)),Math.sqrt(L)}const ye=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],be=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],xe=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],Se=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]];var H=new M({id:`oklab`,name:`Oklab`,coords:{l:{refRange:[0,1],name:`Lightness`},a:{refRange:[-.4,.4]},b:{refRange:[-.4,.4]}},white:`D65`,base:P,fromBase(e){let t=o(ye,e),n=t.map(e=>Math.cbrt(e));return o(xe,n)},toBase(e){let t=o(Se,e),n=t.map(e=>e**3);return o(be,n)},formats:{oklab:{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}});function Ce(e,t){[e,t]=j([e,t]);let[n,r,i]=H.from(e),[a,o,s]=H.from(t),c=n-a,l=r-o,u=i-s;return Math.sqrt(c**2+l**2+u**2)}const we=75e-6;function U(e,t,{epsilon:n=we}={}){e=j(e),t||=e.space,t=M.get(t);let r=e.coords;return t!==e.space&&(r=t.from(e)),t.inGamut(r,{epsilon:n})}function W(e){return{space:e.space,coords:e.coords.slice(),alpha:e.alpha}}function Te(e,t,n=`lab`){n=M.get(n);let r=n.from(e),i=n.from(t);return Math.sqrt(r.reduce((e,t,n)=>{let r=i[n];return isNaN(t)||isNaN(r)?e:e+(r-t)**2},0))}function Ee(e,t){return Te(e,t,`lab`)}const De=Math.PI,Oe=De/180;function ke(e,t,{l:n=2,c:r=1}={}){[e,t]=j([e,t]);let[i,a,o]=z.from(e),[,s,c]=pe.from(z,[i,a,o]),[l,u,d]=z.from(t),f=pe.from(z,[l,u,d])[1];s<0&&(s=0),f<0&&(f=0);let p=i-l,m=s-f,h=a-u,g=o-d,_=h**2+g**2-m**2,v=.511;i>=16&&(v=.040975*i/(1+.01765*i));let y=.0638*s/(1+.0131*s)+.638,b;Number.isNaN(c)&&(c=0),b=c>=164&&c<=345?.56+Math.abs(.2*Math.cos((c+168)*Oe)):.36+Math.abs(.4*Math.cos((c+35)*Oe));let x=s**4,S=Math.sqrt(x/(x+1900)),C=y*(S*b+1-S),w=(p/(n*v))**2;return w+=(m/(r*y))**2,w+=_/C**2,Math.sqrt(w)}const Ae=203;var je=new M({id:`xyz-abs-d65`,cssId:`--xyz-abs-d65`,name:`Absolute XYZ D65`,coords:{x:{refRange:[0,9504.7],name:`Xa`},y:{refRange:[0,1e4],name:`Ya`},z:{refRange:[0,10888.3],name:`Za`}},base:P,fromBase(e){return e.map(e=>Math.max(e*Ae,0))},toBase(e){return e.map(e=>Math.max(e/Ae,0))}});const Me=1.15,Ne=.66,Pe=2610/2**14,Fe=2**14/2610,Ie=3424/2**12,Le=2413/2**7,Re=2392/2**7,ze=1.7*2523/2**5,Be=2**5/(1.7*2523),Ve=-.56,He=16295499532821565e-27,Ue=[[.41478972,.579999,.014648],[-.20151,1.120649,.0531008],[-.0166008,.2648,.6684799]],We=[[1.9242264357876067,-1.0047923125953657,.037651404030618],[.35031676209499907,.7264811939316552,-.06538442294808501],[-.09098281098284752,-.3127282905230739,1.5227665613052603]],Ge=[[.5,.5,0],[3.524,-4.066708,.542708],[.199076,1.096799,-1.295875]],Ke=[[1,.1386050432715393,.05804731615611886],[.9999999999999999,-.1386050432715393,-.05804731615611886],[.9999999999999998,-.09601924202631895,-.8118918960560388]];var qe=new M({id:`jzazbz`,name:`Jzazbz`,coords:{jz:{refRange:[0,1],name:`Jz`},az:{refRange:[-.5,.5]},bz:{refRange:[-.5,.5]}},base:je,fromBase(e){let[t,n,r]=e,i=Me*t-(Me-1)*r,a=Ne*n-(Ne-1)*t,s=o(Ue,[i,a,r]),c=s.map(function(e){let t=Ie+Le*(e/1e4)**Pe,n=1+Re*(e/1e4)**Pe;return(t/n)**ze}),[l,u,d]=o(Ge,c),f=(1+Ve)*l/(1+Ve*l)-He;return[f,u,d]},toBase(e){let[t,n,r]=e,i=(t+He)/(1+Ve-Ve*(t+He)),a=o(Ke,[i,n,r]),s=a.map(function(e){let t=Ie-e**Be,n=Re*e**Be-Le,r=1e4*(t/n)**Fe;return r}),[c,l,u]=o(We,s),d=(c+(Me-1)*u)/Me,f=(l+(Ne-1)*d)/Ne;return[d,f,u]},formats:{color:{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}}),Je=new M({id:`jzczhz`,name:`JzCzHz`,coords:{jz:{refRange:[0,1],name:`Jz`},cz:{refRange:[0,1],name:`Chroma`},hz:{refRange:[0,360],type:`angle`,name:`Hue`}},base:qe,fromBase(e){let[t,n,r]=e,i,a=2e-4;return i=Math.abs(n){let n=S(t*Math.abs(e)*.01,ft);return 400*x(n,e)/(n+27.13)});return n}function St(e,t){let n=100/t*27.13**pt;return e.map(e=>{let t=Math.abs(e);return x(n*S(t/(400-t),pt),e)})}function Ct(e){let t=B(e);t<=G.h[0]&&(t+=360);let n=w(G.h,t)-1,[r,i]=G.h.slice(n,n+2),[a,o]=G.e.slice(n,n+2),s=G.H[n],c=(t-r)/a;return s+100*c/(c+(i-t)/o)}function wt(e){let t=(e%400+400)%400,n=Math.floor(.01*t);t%=100;let[r,i]=G.h.slice(n,n+2),[a,o]=G.e.slice(n,n+2);return B((t*(o*r-a*i)-100*r*o)/(t*(o-a)-100*o))}function Tt(e,t,n,r,i){let a={};a.discounting=i,a.refWhite=e,a.surround=r;let s=e.map(e=>e*100);a.la=t,a.yb=n;let c=s[1],l=o(ht,s);r=vt[a.surround];let u=r[0];a.c=r[1],a.nc=r[2];let d=1/(5*a.la+1),f=d**4;a.fl=f*a.la+.1*(1-f)*(1-f)*Math.cbrt(5*a.la),a.flRoot=a.fl**.25,a.n=a.yb/c,a.z=1.48+Math.sqrt(a.n),a.nbb=.725*a.n**-.2,a.ncb=a.nbb;let p=i?1:Math.max(Math.min(u*(1-1/3.6*Math.exp((-a.la-42)/92)),1),0);a.dRgb=l.map(e=>g(1,c/e,p)),a.dRgbInv=a.dRgb.map(e=>1/e);let m=l.map((e,t)=>e*a.dRgb[t]),h=xt(m,a.fl);return a.aW=a.nbb*(2*h[0]+h[1]+.05*h[2]),a}const Et=Tt(dt,64/Math.PI*.2,20,`average`,!1);function Dt(e,t){if(!(e.J!==void 0^e.Q!==void 0))throw Error(`Conversion requires one and only one: 'J' or 'Q'`);if(!(e.C!==void 0^e.M!==void 0^e.s!==void 0))throw Error(`Conversion requires one and only one: 'C', 'M' or 's'`);if(!(e.h!==void 0^e.H!==void 0))throw Error(`Conversion requires one and only one: 'h' or 'H'`);if(e.J===0||e.Q===0)return[0,0,0];let n=0;n=e.h===void 0?wt(e.H)*bt:B(e.h)*bt;let r=Math.cos(n),i=Math.sin(n),a=0;e.J===void 0?e.Q!==void 0&&(a=.25*t.c*e.Q/((t.aW+4)*t.flRoot)):a=S(e.J,1/2)*.1;let s=0;e.C===void 0?e.M===void 0?e.s!==void 0&&(s=4e-4*e.s**2*(t.aW+4)/t.c):s=e.M/t.flRoot/a:s=e.C/a;let c=S(s*(1.64-.29**t.n)**-.73,10/9),l=.25*(Math.cos(n+2)+3.8),u=t.aW*S(a,2/t.c/t.z),d=5e4/13*t.nc*t.ncb*l,f=u/t.nbb,p=23*(f+.305)*C(c,23*d+c*(11*r+108*i)),m=p*r,h=p*i,g=St(o(_t,[f,m,h]).map(e=>e*1/1403),t.fl);return o(gt,g.map((e,n)=>e*t.dRgbInv[n])).map(e=>e/100)}function Ot(e,t){let n=e.map(e=>e*100),r=xt(o(ht,n).map((e,n)=>e*t.dRgb[n]),t.fl),i=r[0]+(-12*r[1]+r[2])/11,a=(r[0]+r[1]-2*r[2])/9,s=(Math.atan2(a,i)%mt+mt)%mt,c=.25*(Math.cos(s+2)+3.8),l=5e4/13*t.nc*t.ncb*C(c*Math.sqrt(i**2+a**2),r[0]+r[1]+1.05*r[2]+.305),u=S(l,.9)*(1.64-.29**t.n)**.73,d=t.nbb*(2*r[0]+r[1]+.05*r[2]),f=S(d/t.aW,.5*t.c*t.z),p=100*S(f,2),m=4/t.c*f*(t.aW+4)*t.flRoot,h=u*f,g=h*t.flRoot,_=B(s*yt),v=Ct(_),y=50*S(t.c*u/(t.aW+4),1/2);return{J:p,C:h,h:_,s:y,Q:m,M:g,H:v}}var kt=new M({id:`cam16-jmh`,cssId:`--cam16-jmh`,name:`CAM16-JMh`,coords:{j:{refRange:[0,100],name:`J`},m:{refRange:[0,105],name:`Colorfulness`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},base:P,fromBase(e){let t=Ot(e,Et);return[t.J,t.M,t.h]},toBase(e){return Dt({J:e[0],M:e[1],h:e[2]},Et)}});const At=O.D65,jt=216/24389,Mt=24389/27;function Nt(e){let t=e>jt?Math.cbrt(e):(Mt*e+16)/116;return 116*t-16}function Pt(e){return e>8?((e+16)/116)**3:e/Mt}function Ft(e,t){let[n,r,i]=e,a=[],o=0;if(i===0)return[0,0,0];let s=Pt(i);o=i>0?.00379058511492914*i**2+.608983189401032*i+.9155088574762233:9514440756550361e-21*i**2+.08693057439788597*i-21.928975842194614;let c=2e-12,l=15,u=0,d=1/0;for(;u<=l;){a=Dt({J:o,C:r,h:n},t);let e=Math.abs(a[1]-s);if(e | `,` | `,` | `]}}});const zt=Math.PI/180,Bt=[1,.007,.0228];function Vt(e){e[1]<0&&(e=Rt.fromBase(Rt.toBase(e)));let t=Math.log(Math.max(1+Bt[2]*e[1]*Lt.flRoot,1))/Bt[2],n=e[0]*zt,r=t*Math.cos(n),i=t*Math.sin(n);return[e[2],r,i]}function Ht(e,t){[e,t]=j([e,t]);let[n,r,i]=Vt(Rt.from(e)),[a,o,s]=Vt(Rt.from(t));return Math.sqrt((n-a)**2+(r-o)**2+(i-s)**2)}var K={deltaE76:Ee,deltaECMC:ke,deltaE2000:ve,deltaEJz:Ye,deltaEITP:ut,deltaEOK:Ce,deltaEHCT:Ht};function Ut(e){let t=e?Math.floor(Math.log10(Math.abs(e))):0;return Math.max(parseFloat(`1e${t-2}`),1e-6)}const Wt={hct:{method:`hct.c`,jnd:2,deltaEMethod:`hct`,blackWhiteClamp:{}},"hct-tonal":{method:`hct.c`,jnd:0,deltaEMethod:`hct`,blackWhiteClamp:{channel:`hct.t`,min:0,max:100}}};function q(e,{method:t=D.gamut_mapping,space:n=void 0,deltaEMethod:r=``,jnd:i=2,blackWhiteClamp:a={}}={}){if(e=j(e),s(arguments[1])?n=arguments[1]:n||=e.space,n=M.get(n),U(e,n,{epsilon:0}))return e;let o;if(t===`css`)o=Kt(e,{space:n});else{if(t!==`clip`&&!U(e,n)){Object.prototype.hasOwnProperty.call(Wt,t)&&({method:t,jnd:i,deltaEMethod:r,blackWhiteClamp:a}=Wt[t]);let s=ve;if(r!==``){for(let e in K)if(`deltae`+r.toLowerCase()===e.toLowerCase()){s=K[e];break}}let c=q(J(e,n),{method:`clip`,space:n});if(s(e,c)>i){if(Object.keys(a).length===3){let t=M.resolveCoord(a.channel),n=L(J(e,t.space),t.id);if(u(n)&&(n=0),n>=a.max)return J({space:`xyz-d65`,coords:O.D65},e.space);if(n<=a.min)return J({space:`xyz-d65`,coords:[0,0,0]},e.space)}let r=M.resolveCoord(t),c=r.space,l=r.id,d=J(e,c);d.coords.forEach((e,t)=>{u(e)&&(d.coords[t]=0)});let f=r.range||r.refRange,p=f[0],m=Ut(i),h=p,g=L(d,l);for(;g-h>m;){let e=W(d);e=q(e,{space:n,method:`clip`});let t=s(d,e);t-ie.range||[]);o.coords=o.coords.map((t,n)=>{let[r,i]=e[n];return r!==void 0&&(t=Math.max(r,t)),i!==void 0&&(t=Math.min(t,i)),t})}}return n!==e.space&&(o=J(o,e.space)),e.coords=o.coords,e}q.returns=`color`;const Gt={WHITE:{space:H,coords:[1,0,0]},BLACK:{space:H,coords:[0,0,0]}};function Kt(e,{space:t}={}){let n=.02,r=1e-4;e=j(e),t||=e.space,t=M.get(t);let i=M.get(`oklch`);if(t.isUnbounded)return J(e,t);let a=J(e,i),o=a.coords[0];if(o>=1){let n=J(Gt.WHITE,t);return n.alpha=e.alpha,J(n,t)}if(o<=0){let n=J(Gt.BLACK,t);return n.alpha=e.alpha,J(n,t)}if(U(a,t,{epsilon:0}))return J(a,t);function s(e){let n=J(e,t),r=Object.values(t.coords);return n.coords=n.coords.map((e,t)=>{if(`range`in r[t]){let[n,i]=r[t].range;return b(n,e,i)}return e}),n}let c=0,l=a.coords[1],u=!0,d=W(a),f=s(d),p=Ce(f,d);if(pr;){let e=(c+l)/2;if(d.coords[1]=e,u&&U(d,t,{epsilon:0}))c=e;else if(f=s(d),p=Ce(f,d),pl(e,{precision:t})));let i=[...s];if(r===`color`){let t=n.id||n.ids?.[0]||e.space.id;i.unshift(t)}let o=e.alpha;t!==null&&(o=l(o,{precision:t}));let c=e.alpha>=1||n.noAlpha?``:`${n.commas?`,`:` /`} ${o}`;a=`${r}(${i.join(n.commas?`, `:` `)}${c})`}return a}const Jt=[[.6369580483012914,.14461690358620832,.1688809751641721],[.2627002120112671,.6779980715188708,.05930171646986196],[0,.028072693049087428,1.060985057710791]],Yt=[[1.716651187971268,-.355670783776392,-.25336628137366],[-.666684351832489,1.616481236634939,.0157685458139111],[.017639857445311,-.042770613257809,.942103121235474]];var Xt=new F({id:`rec2020-linear`,cssId:`--rec2020-linear`,name:`Linear REC.2020`,white:`D65`,toXYZ_M:Jt,fromXYZ_M:Yt});const Zt=1.09929682680944,Qt=.018053968510807;var $t=new F({id:`rec2020`,name:`REC.2020`,base:Xt,toBase(e){return e.map(function(e){return e=Qt?Zt*e**.45-(Zt-1):4.5*e})}});const en=[[.4865709486482162,.26566769316909306,.1982172852343625],[.2289745640697488,.6917385218365064,.079286914093745],[0,.04511338185890264,1.043944368900976]],tn=[[2.493496911941425,-.9313836179191239,-.40271078445071684],[-.8294889695615747,1.7626640603183463,.023624685841943577],[.03584583024378447,-.07617238926804182,.9568845240076872]];var nn=new F({id:`p3-linear`,cssId:`--display-p3-linear`,name:`Linear P3`,white:`D65`,toXYZ_M:en,fromXYZ_M:tn});const rn=[[.41239079926595934,.357584339383878,.1804807884018343],[.21263900587151027,.715168678767756,.07219231536073371],[.01933081871559182,.11919477979462598,.9505321522496607]],Y=[[3.2409699419045226,-1.537383177570094,-.4986107602930034],[-.9692436362808796,1.8759675015077202,.04155505740717559],[.05563007969699366,-.20397695888897652,1.0569715142428786]];var an=new F({id:`srgb-linear`,name:`Linear sRGB`,white:`D65`,toXYZ_M:rn,fromXYZ_M:Y}),on={aliceblue:[240/255,248/255,1],antiquewhite:[250/255,235/255,215/255],aqua:[0,1,1],aquamarine:[127/255,1,212/255],azure:[240/255,1,1],beige:[245/255,245/255,220/255],bisque:[1,228/255,196/255],black:[0,0,0],blanchedalmond:[1,235/255,205/255],blue:[0,0,1],blueviolet:[138/255,43/255,226/255],brown:[165/255,42/255,42/255],burlywood:[222/255,184/255,135/255],cadetblue:[95/255,158/255,160/255],chartreuse:[127/255,1,0],chocolate:[210/255,105/255,30/255],coral:[1,127/255,80/255],cornflowerblue:[100/255,149/255,237/255],cornsilk:[1,248/255,220/255],crimson:[220/255,20/255,60/255],cyan:[0,1,1],darkblue:[0,0,139/255],darkcyan:[0,139/255,139/255],darkgoldenrod:[184/255,134/255,11/255],darkgray:[169/255,169/255,169/255],darkgreen:[0,100/255,0],darkgrey:[169/255,169/255,169/255],darkkhaki:[189/255,183/255,107/255],darkmagenta:[139/255,0,139/255],darkolivegreen:[85/255,107/255,47/255],darkorange:[1,140/255,0],darkorchid:[153/255,50/255,204/255],darkred:[139/255,0,0],darksalmon:[233/255,150/255,122/255],darkseagreen:[143/255,188/255,143/255],darkslateblue:[72/255,61/255,139/255],darkslategray:[47/255,79/255,79/255],darkslategrey:[47/255,79/255,79/255],darkturquoise:[0,206/255,209/255],darkviolet:[148/255,0,211/255],deeppink:[1,20/255,147/255],deepskyblue:[0,191/255,1],dimgray:[105/255,105/255,105/255],dimgrey:[105/255,105/255,105/255],dodgerblue:[30/255,144/255,1],firebrick:[178/255,34/255,34/255],floralwhite:[1,250/255,240/255],forestgreen:[34/255,139/255,34/255],fuchsia:[1,0,1],gainsboro:[220/255,220/255,220/255],ghostwhite:[248/255,248/255,1],gold:[1,215/255,0],goldenrod:[218/255,165/255,32/255],gray:[128/255,128/255,128/255],green:[0,128/255,0],greenyellow:[173/255,1,47/255],grey:[128/255,128/255,128/255],honeydew:[240/255,1,240/255],hotpink:[1,105/255,180/255],indianred:[205/255,92/255,92/255],indigo:[75/255,0,130/255],ivory:[1,1,240/255],khaki:[240/255,230/255,140/255],lavender:[230/255,230/255,250/255],lavenderblush:[1,240/255,245/255],lawngreen:[124/255,252/255,0],lemonchiffon:[1,250/255,205/255],lightblue:[173/255,216/255,230/255],lightcoral:[240/255,128/255,128/255],lightcyan:[224/255,1,1],lightgoldenrodyellow:[250/255,250/255,210/255],lightgray:[211/255,211/255,211/255],lightgreen:[144/255,238/255,144/255],lightgrey:[211/255,211/255,211/255],lightpink:[1,182/255,193/255],lightsalmon:[1,160/255,122/255],lightseagreen:[32/255,178/255,170/255],lightskyblue:[135/255,206/255,250/255],lightslategray:[119/255,136/255,153/255],lightslategrey:[119/255,136/255,153/255],lightsteelblue:[176/255,196/255,222/255],lightyellow:[1,1,224/255],lime:[0,1,0],limegreen:[50/255,205/255,50/255],linen:[250/255,240/255,230/255],magenta:[1,0,1],maroon:[128/255,0,0],mediumaquamarine:[102/255,205/255,170/255],mediumblue:[0,0,205/255],mediumorchid:[186/255,85/255,211/255],mediumpurple:[147/255,112/255,219/255],mediumseagreen:[60/255,179/255,113/255],mediumslateblue:[123/255,104/255,238/255],mediumspringgreen:[0,250/255,154/255],mediumturquoise:[72/255,209/255,204/255],mediumvioletred:[199/255,21/255,133/255],midnightblue:[25/255,25/255,112/255],mintcream:[245/255,1,250/255],mistyrose:[1,228/255,225/255],moccasin:[1,228/255,181/255],navajowhite:[1,222/255,173/255],navy:[0,0,128/255],oldlace:[253/255,245/255,230/255],olive:[128/255,128/255,0],olivedrab:[107/255,142/255,35/255],orange:[1,165/255,0],orangered:[1,69/255,0],orchid:[218/255,112/255,214/255],palegoldenrod:[238/255,232/255,170/255],palegreen:[152/255,251/255,152/255],paleturquoise:[175/255,238/255,238/255],palevioletred:[219/255,112/255,147/255],papayawhip:[1,239/255,213/255],peachpuff:[1,218/255,185/255],peru:[205/255,133/255,63/255],pink:[1,192/255,203/255],plum:[221/255,160/255,221/255],powderblue:[176/255,224/255,230/255],purple:[128/255,0,128/255],rebeccapurple:[102/255,51/255,153/255],red:[1,0,0],rosybrown:[188/255,143/255,143/255],royalblue:[65/255,105/255,225/255],saddlebrown:[139/255,69/255,19/255],salmon:[250/255,128/255,114/255],sandybrown:[244/255,164/255,96/255],seagreen:[46/255,139/255,87/255],seashell:[1,245/255,238/255],sienna:[160/255,82/255,45/255],silver:[192/255,192/255,192/255],skyblue:[135/255,206/255,235/255],slateblue:[106/255,90/255,205/255],slategray:[112/255,128/255,144/255],slategrey:[112/255,128/255,144/255],snow:[1,250/255,250/255],springgreen:[0,1,127/255],steelblue:[70/255,130/255,180/255],tan:[210/255,180/255,140/255],teal:[0,128/255,128/255],thistle:[216/255,191/255,216/255],tomato:[1,99/255,71/255],turquoise:[64/255,224/255,208/255],violet:[238/255,130/255,238/255],wheat:[245/255,222/255,179/255],white:[1,1,1],whitesmoke:[245/255,245/255,245/255],yellow:[1,1,0],yellowgreen:[154/255,205/255,50/255]};let sn=[,,,].fill(` | [0, 255]`),cn=[,,,].fill(`[0, 255]`);var X=new F({id:`srgb`,name:`sRGB`,base:an,fromBase:e=>e.map(e=>{let t=e<0?-1:1,n=e*t;return n>.0031308?t*(1.055*n**(1/2.4)-.055):12.92*e}),toBase:e=>e.map(e=>{let t=e<0?-1:1,n=e*t;return n<=.04045?e/12.92:t*((n+.055)/1.055)**2.4}),formats:{rgb:{coords:sn},rgb_number:{name:`rgb`,commas:!0,coords:cn,noAlpha:!0},color:{},rgba:{coords:sn,commas:!0,lastAlpha:!0},rgba_number:{name:`rgba`,commas:!0,coords:cn},hex:{type:`custom`,toGamut:!0,test:e=>/^#([a-f0-9]{3,4}){1,2}$/i.test(e),parse(e){e.length<=5&&(e=e.replace(/[a-f0-9]/gi,`$&$&`));let t=[];return e.replace(/[a-f0-9]{2}/gi,e=>{t.push(parseInt(e,16)/255)}),{spaceId:`srgb`,coords:t.slice(0,3),alpha:t.slice(3)[0]}},serialize:(e,t,{collapse:n=!0}={})=>{t<1&&e.push(t),e=e.map(e=>Math.round(e*255));let r=n&&e.every(e=>e%17==0),i=e.map(e=>r?(e/17).toString(16):e.toString(16).padStart(2,`0`)).join(``);return`#`+i}},keyword:{type:`custom`,test:e=>/^[a-z]+$/i.test(e),parse(e){e=e.toLowerCase();let t={spaceId:`srgb`,coords:null,alpha:1};if(e===`transparent`?(t.coords=on.black,t.alpha=0):t.coords=on[e],t.coords)return t}}}}),ln=new F({id:`p3`,cssId:`display-p3`,name:`P3`,base:nn,fromBase:X.fromBase,toBase:X.toBase});D.display_space=X;let un;if(typeof CSS<`u`&&CSS.supports)for(let e of[z,$t,ln]){let t=e.getMinCoords(),n={space:e,coords:t,alpha:1},r=qt(n);if(CSS.supports(`color`,r)){D.display_space=e;break}}function dn(e,{space:t=D.display_space,...n}={}){let r=qt(e,n);if(typeof CSS>`u`||CSS.supports(`color`,r)||!D.display_space)r=new String(r),r.color=e;else{let i=e,a=e.coords.some(u)||u(e.alpha);if(a&&!(un??=CSS.supports(`color`,`hsl(none 50% 50%)`))&&(i=W(e),i.coords=i.coords.map(d),i.alpha=d(i.alpha),r=qt(i,n),CSS.supports(`color`,r)))return r=new String(r),r.color=i,r;i=J(i,t),r=new String(qt(i,n)),r.color=i}return r}function fn(e,t){return e=j(e),t=j(t),e.space===t.space&&e.alpha===t.alpha&&e.coords.every((e,n)=>e===t.coords[n])}function Z(e){return L(e,[P,`y`])}function pn(e,t){R(e,[P,`y`],t)}function mn(e){Object.defineProperty(e.prototype,`luminance`,{get(){return Z(this)},set(e){pn(this,e)}})}var hn=Object.freeze({__proto__:null,getLuminance:Z,register:mn,setLuminance:pn});function gn(e,t){e=j(e),t=j(t);let n=Math.max(Z(e),0),r=Math.max(Z(t),0);return r>n&&([n,r]=[r,n]),(n+.05)/(r+.05)}const _n=.56,vn=.57,yn=.62,bn=.65,xn=.022,Sn=1.414,Cn=.1,wn=5e-4,Tn=1.14,En=.027,Dn=1.14;function On(e){return e>=xn?e:e+(xn-e)**Sn}function kn(e){let t=e<0?-1:1,n=Math.abs(e);return t*n**2.4}function An(e,t){t=j(t),e=j(e);let n,r,i,a,o,s;t=J(t,`srgb`),[a,o,s]=t.coords;let c=kn(a)*.2126729+kn(o)*.7151522+kn(s)*.072175;e=J(e,`srgb`),[a,o,s]=e.coords;let l=kn(a)*.2126729+kn(o)*.7151522+kn(s)*.072175,u=On(c),d=On(l),f=d>u;return Math.abs(d-u)0?r-En:r+En,i*100}function jn(e,t){e=j(e),t=j(t);let n=Math.max(Z(e),0),r=Math.max(Z(t),0);r>n&&([n,r]=[r,n]);let i=n+r;return i===0?0:(n-r)/i}const Mn=5e4;function Nn(e,t){e=j(e),t=j(t);let n=Math.max(Z(e),0),r=Math.max(Z(t),0);return r>n&&([n,r]=[r,n]),r===0?Mn:(n-r)/r}function Pn(e,t){e=j(e),t=j(t);let n=L(e,[z,`l`]),r=L(t,[z,`l`]);return Math.abs(n-r)}const Fn=216/24389,In=24/116,Ln=24389/27;let Rn=O.D65;var zn=new M({id:`lab-d65`,name:`Lab D65`,coords:{l:{refRange:[0,100],name:`Lightness`},a:{refRange:[-125,125]},b:{refRange:[-125,125]}},white:Rn,base:P,fromBase(e){let t=e.map((e,t)=>e/Rn[t]),n=t.map(e=>e>Fn?Math.cbrt(e):(Ln*e+16)/116);return[116*n[1]-16,500*(n[0]-n[1]),200*(n[1]-n[2])]},toBase(e){let t=[];t[1]=(e[0]+16)/116,t[0]=e[1]/500+t[1],t[2]=t[1]-e[2]/200;let n=[t[0]>In?t[0]**3:(116*t[0]-16)/Ln,e[0]>8?((e[0]+16)/116)**3:e[0]/Ln,t[2]>In?t[2]**3:(116*t[2]-16)/Ln];return n.map((e,t)=>e*Rn[t])},formats:{"lab-d65":{coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}});const Bn=5**.5*.5+.5;function Vn(e,t){e=j(e),t=j(t);let n=L(e,[zn,`l`]),r=L(t,[zn,`l`]),i=Math.abs(n**+Bn-r**+Bn),a=i**(1/Bn)*Math.SQRT2-40;return a<7.5?0:a}var Hn=Object.freeze({__proto__:null,contrastAPCA:An,contrastDeltaPhi:Vn,contrastLstar:Pn,contrastMichelson:jn,contrastWCAG21:gn,contrastWeber:Nn});function Un(e,t,n={}){s(n)&&(n={algorithm:n});let{algorithm:r,...i}=n;if(!r){let e=Object.keys(Hn).map(e=>e.replace(/^contrast/,``)).join(`, `);throw TypeError(`contrast() function needs a contrast algorithm. Please specify one of: ${e}`)}for(let n in e=j(e),t=j(t),Hn)if(`contrast`+r.toLowerCase()===n.toLowerCase())return Hn[n](e,t,i);throw TypeError(`Unknown contrast algorithm: ${r}`)}function Wn(e){let[t,n,r]=I(e,P),i=t+15*n+3*r;return[4*t/i,9*n/i]}function Gn(e){let[t,n,r]=I(e,P),i=t+n+r;return[t/i,n/i]}function Kn(e){Object.defineProperty(e.prototype,`uv`,{get(){return Wn(this)}}),Object.defineProperty(e.prototype,`xy`,{get(){return Gn(this)}})}var qn=Object.freeze({__proto__:null,register:Kn,uv:Wn,xy:Gn});function Jn(e,t,n={}){s(n)&&(n={method:n});let{method:r=D.deltaE,...i}=n;for(let n in K)if(`deltae`+r.toLowerCase()===n.toLowerCase())return K[n](e,t,i);throw TypeError(`Unknown deltaE method: ${r}`)}function Yn(e,t=.25){let n=M.get(`oklch`,`lch`),r=[n,`l`];return R(e,r,e=>e*(1+t))}function Xn(e,t=.25){let n=M.get(`oklch`,`lch`),r=[n,`l`];return R(e,r,e=>e*(1-t))}var Zn=Object.freeze({__proto__:null,darken:Xn,lighten:Yn});function Qn(e,t,n=.5,r={}){[e,t]=[j(e),j(t)],c(n)===`object`&&([n,r]=[.5,n]);let i=er(e,t,r);return i(n)}function $n(e,t,n={}){let r;tr(e)&&([r,n]=[e,t],[e,t]=r.rangeArgs.colors);let{maxDeltaE:i,deltaEMethod:a,steps:o=2,maxSteps:s=1e3,...c}=n;r||([e,t]=[j(e),j(t)],r=er(e,t,c));let l=Jn(e,t),u=i>0?Math.max(o,Math.ceil(l/i)+1):o,d=[];if(s!==void 0&&(u=Math.min(u,s)),u===1)d=[{p:.5,color:r(.5)}];else{let e=1/(u-1);d=Array.from({length:u},(t,n)=>{let i=n*e;return{p:i,color:r(i)}})}if(i>0){let e=d.reduce((e,t,n)=>{if(n===0)return 0;let r=Jn(t.color,d[n-1].color,a);return Math.max(e,r)},0);for(;e>i;){e=0;for(let t=1;te.color),d}function er(e,t,n={}){if(tr(e)){let[n,r]=[e,t];return er(...n.rangeArgs.colors,{...n.rangeArgs.options,...r})}let{space:r,outputSpace:i,progression:a,premultiplied:o}=n;e=j(e),t=j(t),e=W(e),t=W(t);let s={colors:[e,t],options:n};if(r=r?M.get(r):M.registry[D.interpolationSpace]||e.space,i=i?M.get(i):r,e=J(e,r),t=J(t,r),e=q(e),t=q(t),r.coords.h&&r.coords.h.type===`angle`){let i=n.hue=n.hue||`shorter`,a=[r,`h`],[o,s]=[L(e,a),L(t,a)];isNaN(o)&&!isNaN(s)?o=s:isNaN(s)&&!isNaN(o)&&(s=o),[o,s]=fe(i,[o,s]),R(e,a,o),R(t,a,s)}return o&&(e.coords=e.coords.map(t=>t*e.alpha),t.coords=t.coords.map(e=>e*t.alpha)),Object.assign(n=>{n=a?a(n):n;let s=e.coords.map((e,r)=>{let i=t.coords[r];return g(e,i,n)}),c=g(e.alpha,t.alpha,n),l={space:r,coords:s,alpha:c};return o&&(l.coords=l.coords.map(e=>e/c)),i!==r&&(l=J(l,i)),l},{rangeArgs:s})}function tr(e){return c(e)===`function`&&!!e.rangeArgs}D.interpolationSpace=`lab`;function nr(e){e.defineFunction(`mix`,Qn,{returns:`color`}),e.defineFunction(`range`,er,{returns:`function`}),e.defineFunction(`steps`,$n,{returns:`array`})}var rr=Object.freeze({__proto__:null,isRange:tr,mix:Qn,range:er,register:nr,steps:$n}),ir=new M({id:`hsl`,name:`HSL`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},l:{range:[0,100],name:`Lightness`}},base:X,fromBase:e=>{let t=Math.max(...e),n=Math.min(...e),[r,i,a]=e,[o,s,c]=[NaN,0,(n+t)/2],l=t-n;if(l!==0){switch(s=c===0||c===1?0:(t-c)/Math.min(c,1-c),t){case r:o=(i-a)/l+(i=360&&(o-=360),[o,s*100,c*100]},toBase:e=>{let[t,n,r]=e;t%=360,t<0&&(t+=360),n/=100,r/=100;function i(e){let i=(e+t/30)%12,a=n*Math.min(r,1-r);return r-a*Math.max(-1,Math.min(i-3,9-i,1))}return[i(0),i(8),i(4)]},formats:{hsl:{coords:[` | `,``,``]},hsla:{coords:[` | `,``,``],commas:!0,lastAlpha:!0}}}),ar=new M({id:`hsv`,name:`HSV`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},v:{range:[0,100],name:`Value`}},base:ir,fromBase(e){let[t,n,r]=e;n/=100,r/=100;let i=r+n*Math.min(r,1-r);return[t,i===0?0:200*(1-r/i),100*i]},toBase(e){let[t,n,r]=e;n/=100,r/=100;let i=r*(1-n/2);return[t,i===0||i===1?0:(r-i)/Math.min(i,1-i)*100,i*100]},formats:{color:{id:`--hsv`,coords:[` | `,` | `,` | `]}}}),or=new M({id:`hwb`,name:`HWB`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},w:{range:[0,100],name:`Whiteness`},b:{range:[0,100],name:`Blackness`}},base:ar,fromBase(e){let[t,n,r]=e;return[t,r*(100-n)/100,100-r]},toBase(e){let[t,n,r]=e;n/=100,r/=100;let i=n+r;if(i>=1){let e=n/i;return[t,0,e*100]}let a=1-r,o=a===0?0:1-n/a;return[t,o*100,a*100]},formats:{hwb:{coords:[` | `,` | `,` | `]}}});const sr=[[.5766690429101305,.1855582379065463,.1882286462349947],[.29734497525053605,.6273635662554661,.07529145849399788],[.02703136138641234,.07068885253582723,.9913375368376388]],cr=[[2.0415879038107465,-.5650069742788596,-.34473135077832956],[-.9692436362808795,1.8759675015077202,.04155505740717557],[.013444280632031142,-.11836239223101838,1.0151749943912054]];var lr=new F({id:`a98rgb-linear`,cssId:`--a98-rgb-linear`,name:`Linear Adobe® 98 RGB compatible`,white:`D65`,toXYZ_M:sr,fromXYZ_M:cr}),ur=new F({id:`a98rgb`,cssId:`a98-rgb`,name:`Adobe® 98 RGB compatible`,base:lr,toBase:e=>e.map(e=>Math.abs(e)**(563/256)*Math.sign(e)),fromBase:e=>e.map(e=>Math.abs(e)**(256/563)*Math.sign(e))});const dr=[[.7977666449006423,.13518129740053308,.0313477341283922],[.2880748288194013,.711835234241873,8993693872564e-17],[0,0,.8251046025104602]],fr=[[1.3457868816471583,-.25557208737979464,-.05110186497554526],[-.5446307051249019,1.5082477428451468,.02052744743642139],[0,0,1.2119675456389452]];var pr=new F({id:`prophoto-linear`,cssId:`--prophoto-rgb-linear`,name:`Linear ProPhoto`,white:`D50`,base:se,toXYZ_M:dr,fromXYZ_M:fr});const mr=1/512,hr=16/512;var gr=new F({id:`prophoto`,cssId:`prophoto-rgb`,name:`ProPhoto`,base:pr,toBase(e){return e.map(e=>ee>=mr?e**(1/1.8):16*e)}}),_r=new M({id:`oklch`,name:`Oklch`,coords:{l:{refRange:[0,1],name:`Lightness`},c:{refRange:[0,.4],name:`Chroma`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},white:`D65`,base:H,fromBase(e){let[t,n,r]=e,i,a=2e-4;return i=Math.abs(n) | `,` | [0,1]`,` | `]}}});let vr=O.D65;const yr=216/24389,br=24389/27,[xr,Sr]=Wn({space:P,coords:vr});var Cr=new M({id:`luv`,name:`Luv`,coords:{l:{refRange:[0,100],name:`Lightness`},u:{refRange:[-215,215]},v:{refRange:[-215,215]}},white:vr,base:P,fromBase(e){let t=[d(e[0]),d(e[1]),d(e[2])],n=t[1],[r,i]=Wn({space:P,coords:t});if(!Number.isFinite(r)||!Number.isFinite(i))return[0,0,0];let a=n<=yr?br*n:116*Math.cbrt(n)-16;return[a,13*a*(r-xr),13*a*(i-Sr)]},toBase(e){let[t,n,r]=e;if(t===0||u(t))return[0,0,0];n=d(n),r=d(r);let i=n/(13*t)+xr,a=r/(13*t)+Sr,o=t<=8?t/br:((t+16)/116)**3;return[o*(9*i/(4*a)),o,o*((12-3*i-20*a)/(4*a))]},formats:{color:{id:`--luv`,coords:[` | `,` | [-1,1]`,` | [-1,1]`]}}}),wr=new M({id:`lchuv`,name:`LChuv`,coords:{l:{refRange:[0,100],name:`Lightness`},c:{refRange:[0,220],name:`Chroma`},h:{refRange:[0,360],type:`angle`,name:`Hue`}},base:Cr,fromBase(e){let[t,n,r]=e,i,a=.02;return i=Math.abs(n) | `,` | `,` | `]}}});const Tr=216/24389,Er=24389/27,Dr=Y[0][0],Or=Y[0][1],kr=Y[0][2],Ar=Y[1][0],jr=Y[1][1],Mr=Y[1][2],Nr=Y[2][0],Pr=Y[2][1],Fr=Y[2][2];function Ir(e,t,n){let r=t/(Math.sin(n)-e*Math.cos(n));return r<0?1/0:r}function Lr(e){let t=(e+16)**3/1560896,n=t>Tr?t:e/Er,r=n*(284517*Dr-94839*kr),i=n*(838422*kr+769860*Or+731718*Dr),a=n*(632260*kr-126452*Or),o=n*(284517*Ar-94839*Mr),s=n*(838422*Mr+769860*jr+731718*Ar),c=n*(632260*Mr-126452*jr),l=n*(284517*Nr-94839*Fr),u=n*(838422*Fr+769860*Pr+731718*Nr),d=n*(632260*Fr-126452*Pr);return{r0s:r/a,r0i:i*e/a,r1s:r/(a+126452),r1i:(i-769860)*e/(a+126452),g0s:o/c,g0i:s*e/c,g1s:o/(c+126452),g1i:(s-769860)*e/(c+126452),b0s:l/d,b0i:u*e/d,b1s:l/(d+126452),b1i:(u-769860)*e/(d+126452)}}function Rr(e,t){let n=t/360*Math.PI*2,r=Ir(e.r0s,e.r0i,n),i=Ir(e.r1s,e.r1i,n),a=Ir(e.g0s,e.g0i,n),o=Ir(e.g1s,e.g1i,n),s=Ir(e.b0s,e.b0i,n),c=Ir(e.b1s,e.b1i,n);return Math.min(r,i,a,o,s,c)}var zr=new M({id:`hsluv`,name:`HSLuv`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},l:{range:[0,100],name:`Lightness`}},base:wr,gamutSpace:X,fromBase(e){let[t,n,r]=[d(e[0]),d(e[1]),d(e[2])],i;if(t>99.9999999)i=0,t=100;else if(t<1e-8)i=0,t=0;else{let e=Lr(t),a=Rr(e,r);i=n/a*100}return[r,i,t]},toBase(e){let[t,n,r]=[d(e[0]),d(e[1]),d(e[2])],i;if(r>99.9999999)r=100,i=0;else if(r<1e-8)r=0,i=0;else{let e=Lr(r),a=Rr(e,t);i=a/100*n}return[r,i,t]},formats:{color:{id:`--hsluv`,coords:[` | `,` | `,` | `]}}});Y[0][0],Y[0][1],Y[0][2],Y[1][0],Y[1][1],Y[1][2],Y[2][0],Y[2][1],Y[2][2];function Q(e,t){return Math.abs(t)/Math.sqrt(e**2+1)}function Br(e){let t=Q(e.r0s,e.r0i),n=Q(e.r1s,e.r1i),r=Q(e.g0s,e.g0i),i=Q(e.g1s,e.g1i),a=Q(e.b0s,e.b0i),o=Q(e.b1s,e.b1i);return Math.min(t,n,r,i,a,o)}var Vr=new M({id:`hpluv`,name:`HPLuv`,coords:{h:{refRange:[0,360],type:`angle`,name:`Hue`},s:{range:[0,100],name:`Saturation`},l:{range:[0,100],name:`Lightness`}},base:wr,gamutSpace:`self`,fromBase(e){let[t,n,r]=[d(e[0]),d(e[1]),d(e[2])],i;if(t>99.9999999)i=0,t=100;else if(t<1e-8)i=0,t=0;else{let e=Lr(t),r=Br(e);i=n/r*100}return[r,i,t]},toBase(e){let[t,n,r]=[d(e[0]),d(e[1]),d(e[2])],i;if(r>99.9999999)r=100,i=0;else if(r<1e-8)r=0,i=0;else{let e=Lr(r),t=Br(e);i=t/100*n}return[r,i,t]},formats:{color:{id:`--hpluv`,coords:[` | `,` | `,` | `]}}});const Hr=203,Ur=2610/2**14,Wr=2**14/2610,Gr=2523/2**5,Kr=2**5/2523,qr=3424/2**12,Jr=2413/2**7,Yr=2392/2**7;var Xr=new F({id:`rec2100pq`,cssId:`rec2100-pq`,name:`REC.2100-PQ`,base:Xt,toBase(e){return e.map(function(e){let t=(Math.max(e**Kr-qr,0)/(Jr-Yr*e**Kr))**Wr;return t*1e4/Hr})},fromBase(e){return e.map(function(e){let t=Math.max(e*Hr/1e4,0),n=qr+Jr*t**Ur,r=1+Yr*t**Ur;return(n/r)**Gr})}});const Zr=.17883277,Qr=.28466892,$r=.55991073,ei=3.7743;var ti=new F({id:`rec2100hlg`,cssId:`rec2100-hlg`,name:`REC.2100-HLG`,referred:`scene`,base:Xt,toBase(e){return e.map(function(e){return e<=.5?e**2/3*ei:(Math.exp((e-$r)/Zr)+Qr)/12*ei})},fromBase(e){return e.map(function(e){return e/=ei,e<=1/12?Math.sqrt(3*e):Zr*Math.log(12*e-Qr)+$r})}});const ni={};E.add(`chromatic-adaptation-start`,e=>{e.options.method&&(e.M=ii(e.W1,e.W2,e.options.method))}),E.add(`chromatic-adaptation-end`,e=>{e.M||=ii(e.W1,e.W2,e.options.method)});function ri({id:e,toCone_M:t,fromCone_M:n}){ni[e]=arguments[0]}function ii(e,t,n=`Bradford`){let r=ni[n],[i,a,s]=o(r.toCone_M,e),[c,l,u]=o(r.toCone_M,t),d=[[c/i,0,0],[0,l/a,0],[0,0,u/s]],f=o(d,r.toCone_M),p=o(r.fromCone_M,f);return p}ri({id:`von Kries`,toCone_M:[[.40024,.7076,-.08081],[-.2263,1.16532,.0457],[0,0,.91822]],fromCone_M:[[1.8599363874558397,-1.1293816185800916,.21989740959619328],[.3611914362417676,.6388124632850422,-6370596838649899e-21],[0,0,1.0890636230968613]]}),ri({id:`Bradford`,toCone_M:[[.8951,.2664,-.1614],[-.7502,1.7135,.0367],[.0389,-.0685,1.0296]],fromCone_M:[[.9869929054667121,-.14705425642099013,.15996265166373122],[.4323052697233945,.5183602715367774,.049291228212855594],[-.00852866457517732,.04004282165408486,.96848669578755]]}),ri({id:`CAT02`,toCone_M:[[.7328,.4296,-.1624],[-.7036,1.6975,.0061],[.003,.0136,.9834]],fromCone_M:[[1.0961238208355142,-.27886900021828726,.18274517938277307],[.4543690419753592,.4735331543074117,.07209780371722911],[-.009627608738429355,-.00569803121611342,1.0153256399545427]]}),ri({id:`CAT16`,toCone_M:[[.401288,.650173,-.051461],[-.250268,1.204414,.045854],[-.002079,.048952,.953127]],fromCone_M:[[1.862067855087233,-1.0112546305316845,.14918677544445172],[.3875265432361372,.6214474419314753,-.008973985167612521],[-.01584149884933386,-.03412293802851557,1.0499644368778496]]}),Object.assign(O,{A:[1.0985,1,.35585],C:[.98074,1,1.18232],D55:[.95682,1,.92149],D75:[.94972,1,1.22638],E:[1,1,1],F2:[.99186,1,.67393],F7:[.95041,1,1.08747],F11:[1.00962,1,.6435]}),O.ACES=[.32168/.33767,1,.34065/.33767];const ai=[[.6624541811085053,.13400420645643313,.1561876870049078],[.27222871678091454,.6740817658111484,.05368951740793705],[-.005574649490394108,.004060733528982826,1.0103391003129971]],oi=[[1.6410233796943257,-.32480329418479,-.23642469523761225],[-.6636628587229829,1.6153315916573379,.016756347685530137],[.011721894328375376,-.008284441996237409,.9883948585390215]];var si=new F({id:`acescg`,cssId:`--acescg`,name:`ACEScg`,coords:{r:{range:[0,65504],name:`Red`},g:{range:[0,65504],name:`Green`},b:{range:[0,65504],name:`Blue`}},referred:`scene`,white:O.ACES,toXYZ_M:ai,fromXYZ_M:oi});const ci=2**-16,li=-.35828683,ui=(Math.log2(65504)+9.72)/17.52;var di=new F({id:`acescc`,cssId:`--acescc`,name:`ACEScc`,coords:{r:{range:[li,ui],name:`Red`},g:{range:[li,ui],name:`Green`},b:{range:[li,ui],name:`Blue`}},referred:`scene`,base:si,toBase(e){let t=-5.279999999999999/17.52;return e.map(function(e){return e<=t?(2**(e*17.52-9.72)-ci)*2:e1||i===void 0?1:i<0?0:i;for(let e=0;ethis.get(e),set:t=>this.set(e,t)})}get spaceId(){return this.space.id}clone(){return new e(this.space,this.coords,this.alpha)}toJSON(){return{spaceId:this.spaceId,coords:this.coords,alpha:this.alpha}}display(...t){let n=dn(this,...t);return n.color=new e(n.color),n}static get(t,...n){return t instanceof e?t:new e(t,...n)}static defineFunction(t,n,r=n){let{instance:i=!0,returns:a}=r,o=function(...t){let r=n(...t);if(a===`color`)r=e.get(r);else if(a===`function`){let t=r;r=function(...n){let r=t(...n);return e.get(r)},Object.assign(r,t)}else a===`array`&&(r=r.map(t=>e.get(t)));return r};t in e||(e[t]=o),i&&(e.prototype[t]=function(...e){return o(this,...e)})}static defineFunctions(t){for(let n in t)e.defineFunction(n,t[n],t[n])}static extend(exports){if(exports.register)exports.register(e);else for(let n in exports)e.defineFunction(n,exports[n])}};$.defineFunctions({get:L,getAll:I,set:R,setAll:oe,to:J,equals:fn,inGamut:U,toGamut:q,distance:Te,toString:qt}),Object.assign($,{util:T,hooks:E,WHITES:O,Space:M,spaces:M.registry,parse:re,defaults:D});for(let e of Object.keys(fi))M.register(fi[e]);for(let e in M.registry)pi(e,M.registry[e]);E.add(`colorspace-init-end`,e=>{pi(e.id,e),e.aliases?.forEach(t=>{pi(t,e)})});function pi(e,t){let n=e.replace(/-/g,`_`);Object.defineProperty($.prototype,n,{get(){let n=this.getAll(e);return typeof Proxy>`u`?n:new Proxy(n,{has:(e,n)=>{try{return M.resolveCoord([t,n]),!0}catch{}return Reflect.has(e,n)},get:(e,n,r)=>{if(n&&typeof n!=`symbol`&&!(n in e)){let{index:r}=M.resolveCoord([t,n]);if(r>=0)return e[r]}return Reflect.get(e,n,r)},set:(n,r,i,a)=>{if(r&&typeof r!=`symbol`&&!(r in n)||r>=0){let{index:a}=M.resolveCoord([t,r]);if(a>=0)return n[a]=i,this.setAll(e,n),!0}return Reflect.set(n,r,i,a)}})},set(t){this.setAll(e,t)},configurable:!0,enumerable:!0})}$.extend(K),$.extend({deltaE:Jn}),Object.assign($,{deltaEMethods:K}),$.extend(Zn),$.extend({contrast:Un}),$.extend(qn),$.extend(hn),$.extend(rr),$.extend(Hn);function mi(e,t){return async()=>{let n=a(()=>{let t=document.querySelector(e);if(!t)throw Error(`Widgets element not found`);return t},{retry:10,retryDelay:1e3}),r=await n();return window.getComputedStyle(r).getPropertyValue(t)}}function hi(e){return async()=>{if(typeof e==`string`)return e;{let t=n();return t.value?e.dark:e.light}}}function gi(e){async function t(){`document`in globalThis&&globalThis.document!=null&&`window`in globalThis&&globalThis.window!=null&&document.querySelector(`meta[name="theme-color"]`)?.setAttribute(`content`,new $(await e()).to(`srgb`).toString({format:`hex`}))}return{updateThemeColor:t}}export{hi as b,gi as c,mi as d}; \ No newline at end of file diff --git a/assets/together-ai-CecV5ca4.js b/assets/together-ai-CecV5ca4.js new file mode 100644 index 0000000000000000000000000000000000000000..c8ead00949ecc0e6f140e27c747e34582868707a --- /dev/null +++ b/assets/together-ai-CecV5ca4.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`together-ai`;var x=u({__name:`together-ai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon-color":w.value?.iconColor,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`togetherapi-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.together.xyz/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/together-ai-Cl6VxBMw.js b/assets/together-ai-Cl6VxBMw.js deleted file mode 100644 index 83687e545bba8c7432f8152eae1b0a6bea385c19..0000000000000000000000000000000000000000 --- a/assets/together-ai-Cl6VxBMw.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`together-ai`;var x=l({__name:`together-ai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon-color":(f=w.value)?.iconColor,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`togetherapi-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.together.xyz/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon-color`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/transformers.web-BihMDlzQ.js b/assets/transformers.web-BihMDlzQ.js new file mode 100644 index 0000000000000000000000000000000000000000..db877f1a13ad6c8652f9f4cb6f82908da9c87230 --- /dev/null +++ b/assets/transformers.web-BihMDlzQ.js @@ -0,0 +1,3598 @@ +import{e7 as e,e9 as t}from"./index-C9kcCpP-.js";const n=new Map,r=[],i=(e,t,i)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let a=n.get(e);if(a===void 0)n.set(e,{backend:t,priority:i});else if(a.priority>i)return;else if(a.priority===i&&a.backend!==t)throw Error(`cannot register backend "${e}" using priority ${i}`);if(i>=0){let t=r.indexOf(e);t!==-1&&r.splice(t,1);for(let t=0;t{let t=n.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},o=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),i=n.length===0?r:n,o,s=[],c=new Set;for(let e of i){let t=await a(e);typeof t==`string`?s.push({name:e,err:t}):(o||=t,o===t&&c.add(e))}if(!o)throw Error(`no available backend found. ERR: ${s.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of s)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let l=t.filter(e=>c.has(typeof e==`string`?e:e.name));return[o,new Proxy(e,{get:(e,t)=>t===`executionProviders`?l:Reflect.get(e,t)})]},s=`1.22.0`;let c=`warning`;const l={wasm:{},webgl:{},webgpu:{},versions:{common:s},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);c=e}},get logLevel(){return c}};Object.defineProperty(l,`logLevel`,{enumerable:!0});const u=l,d=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t===void 0||t.format===void 0?`RGB`:t.format,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat===void 0||t.tensorFormat===void 0?`RGB`:t.tensorFormat,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,p(o,s)}else throw Error(`Can not access image data`)}else if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(p(e.data,s))}});else throw Error(`Input data provided is not supported - aborted tensor creation`);if(o!==void 0)return p(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},h=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new T({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},g=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new T({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},_=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new T({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},v=(e,t,n)=>new T({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]}),y=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),b=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]);let x=!1;const S=()=>{if(!x){x=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=n!==void 0&&n.from;e&&(y.set(`int64`,BigInt64Array),b.set(BigInt64Array,`int64`)),t&&(y.set(`uint64`,BigUint64Array),b.set(BigUint64Array,`uint64`)),r?(y.set(`float16`,n),b.set(n,`float16`)):y.set(`float16`,Uint16Array)}},C=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new T(e.type,e.data,t);case`cpu-pinned`:return new T({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new T({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new T({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new T({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}};var T=class{constructor(e,t,n){S();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=y.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=y.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=b.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=C(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return m(e,t)}static fromTexture(e,t){return h(e,t)}static fromGpuBuffer(e,t){return g(e,t)}static fromMLTensor(e,t){return _(e,t)}static fromPinnedBuffer(e,t,n){return v(e,t,n)}toDataURL(e){return d(this,e)}toImageData(e){return f(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return w(this,e)}};const E=T,D=(e,t)=>{(l.trace===void 0?!l.wasm.trace:!l.trace)||console.timeStamp(`${e}::ORT::${t}`)},O=(e,t)=>{let n=Error().stack?.split(/\r\n|\r|\n/g)||[],r=!1;for(let i=0;i{(l.trace===void 0?!l.wasm.trace:!l.trace)||O(`BEGIN`,e)},A=e=>{(l.trace===void 0?!l.wasm.trace:!l.trace)||O(`END`,e)};var ee=class e{constructor(e){this.handler=e}async run(e,t,n){k();let r={},i={};if(typeof e!=`object`||!e||e instanceof E||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof E)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof E)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else i=t}}else if(t!==void 0)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(e[t]===void 0)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof E?s[e]=t:s[e]=new E(t.type,t.data,t.dims)}return A(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){k();let a,s={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)s=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)s=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,o=0,c=t.byteLength;if(typeof n==`object`&&n)s=n;else if(typeof n==`number`){if(o=n,!Number.isSafeInteger(o))throw RangeError(`'byteOffset' must be an integer.`);if(o<0||o>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-o,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||o+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-o}].`);if(typeof i==`object`&&i)s=i;else if(i!==void 0)throw TypeError(`'options' must be an object.`)}else if(r!==void 0)throw TypeError(`'byteLength' must be a number.`)}else if(n!==void 0)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,o,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[c,l]=await o(s),u=await c.createInferenceSessionHandler(a,l);return A(),new e(u)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}};const te=ee;var ne={};e(ne,{InferenceSession:()=>te,TRACE:()=>D,TRACE_FUNC_BEGIN:()=>k,TRACE_FUNC_END:()=>A,Tensor:()=>E,env:()=>u,registerBackend:()=>i});var j={};e(j,{InferenceSession:()=>Ke,TRACE:()=>z,TRACE_FUNC_BEGIN:()=>He,TRACE_FUNC_END:()=>B,Tensor:()=>ze,default:()=>rf,env:()=>L,registerBackend:()=>P}); +/*! +* ONNX Runtime Web v1.22.0-dev.20250409-89f8206ba4 +* Copyright (c) Microsoft Corporation. All rights reserved. +* Licensed under the MIT License. +*/ +var re=Object.defineProperty,ie=Object.getOwnPropertyDescriptor,ae=Object.getOwnPropertyNames,oe=Object.prototype.hasOwnProperty,se=(e=>typeof t<`u`?t:typeof Proxy<`u`?new Proxy(e,{get:(e,n)=>(typeof t<`u`?t:e)[n]}):e)(function(e){if(typeof t<`u`)return t.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),M=(e,t)=>()=>(e&&(t=e(e=0)),t),N=(e,t)=>{for(var n in t)re(e,n,{get:t[n],enumerable:!0})},ce=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of ae(t))!oe.call(e,i)&&i!==n&&re(e,i,{get:()=>t[i],enumerable:!(r=ie(t,i))||r.enumerable});return e},le=e=>ce(re({},`__esModule`,{value:!0}),e),ue,de,P,F,fe,I=M(()=>{"use strict";ue=new Map,de=[],P=(e,t,n)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let r=ue.get(e);if(r===void 0)ue.set(e,{backend:t,priority:n});else{if(r.priority>n)return;if(r.priority===n&&r.backend!==t)throw Error(`cannot register backend "${e}" using priority ${n}`)}if(n>=0){let t=de.indexOf(e);t!==-1&&de.splice(t,1);for(let t=0;t{let t=ue.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},fe=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),r=n.length===0?de:n,i,a=[],o=new Set;for(let e of r){let t=await F(e);typeof t==`string`?a.push({name:e,err:t}):(i||=t,i===t&&o.add(e))}if(!i)throw Error(`no available backend found. ERR: ${a.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of a)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let s=t.filter(e=>o.has(typeof e==`string`?e:e.name));return[i,new Proxy(e,{get:(e,t)=>t===`executionProviders`?s:Reflect.get(e,t)})]}}),pe=M(()=>{"use strict";I()}),me,he=M(()=>{"use strict";me=`1.22.0-dev.20250409-89f8206ba4`}),ge,_e,ve=M(()=>{"use strict";he(),ge=`warning`,_e={wasm:{},webgl:{},webgpu:{},versions:{common:me},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);ge=e}},get logLevel(){return ge}},Object.defineProperty(_e,`logLevel`,{enumerable:!0})}),L,ye=M(()=>{"use strict";ve(),L=_e}),be,xe,Se=M(()=>{"use strict";be=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t!==void 0&&t.format!==void 0?t.format:`RGB`,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{"use strict";Re(),Ce=(e,t)=>{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat!==void 0&&t.tensorFormat!==void 0?t.tensorFormat:`RGB`,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,Ce(o,s)}else throw Error(`Can not access image data`)}else{if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(Ce(e.data,s))}});throw Error(`Input data provided is not supported - aborted tensor creation`)}if(o!==void 0)return Ce(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},Te=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new Le({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},Ee=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Le({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},De=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Le({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},Oe=(e,t,n)=>new Le({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]})}),Ae,je,Me,Ne,R=M(()=>{"use strict";Ae=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),je=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),Me=!1,Ne=()=>{if(!Me){Me=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=typeof n<`u`&&n.from;e&&(Ae.set(`int64`,BigInt64Array),je.set(BigInt64Array,`int64`)),t&&(Ae.set(`uint64`,BigUint64Array),je.set(BigUint64Array,`uint64`)),r?(Ae.set(`float16`,n),je.set(n,`float16`)):Ae.set(`float16`,Uint16Array)}}}),Pe,Fe,Ie=M(()=>{"use strict";Re(),Pe=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new Le(e.type,e.data,t);case`cpu-pinned`:return new Le({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new Le({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new Le({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new Le({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}}}),Le,Re=M(()=>{"use strict";Se(),ke(),R(),Ie(),Le=class{constructor(e,t,n){Ne();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=Ae.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=Ae.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=je.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=Pe(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return we(e,t)}static fromTexture(e,t){return Te(e,t)}static fromGpuBuffer(e,t){return Ee(e,t)}static fromMLTensor(e,t){return De(e,t)}static fromPinnedBuffer(e,t,n){return Oe(e,t,n)}toDataURL(e){return be(this,e)}toImageData(e){return xe(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return Fe(this,e)}}}),ze,Be=M(()=>{"use strict";Re(),ze=Le}),z,Ve,He,B,Ue=M(()=>{"use strict";ve(),z=(e,t)=>{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||console.timeStamp(`${e}::ORT::${t}`)},Ve=(e,t)=>{let n=Error().stack?.split(/\r\n|\r|\n/g)||[],r=!1;for(let i=0;i{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||Ve(`BEGIN`,e)},B=e=>{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||Ve(`END`,e)}}),We,Ge=M(()=>{"use strict";I(),Be(),Ue(),We=class e{constructor(e){this.handler=e}async run(e,t,n){He();let r={},i={};if(typeof e!=`object`||!e||e instanceof ze||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof ze)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof ze)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else i=t}}else if(typeof t<`u`)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(typeof e[t]>`u`)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof ze?s[e]=t:s[e]=new ze(t.type,t.data,t.dims)}return B(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){He();let a,o={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,s=0,c=t.byteLength;if(typeof n==`object`&&n)o=n;else if(typeof n==`number`){if(s=n,!Number.isSafeInteger(s))throw RangeError(`'byteOffset' must be an integer.`);if(s<0||s>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-s,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||s+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-s}].`);if(typeof i==`object`&&i)o=i;else if(typeof i<`u`)throw TypeError(`'options' must be an object.`)}else if(typeof r<`u`)throw TypeError(`'byteLength' must be a number.`)}else if(typeof n<`u`)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,s,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[s,c]=await fe(o),l=await s.createInferenceSessionHandler(a,c);return B(),new e(l)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}}}),Ke,qe=M(()=>{"use strict";Ge(),Ke=We}),Je=M(()=>{"use strict";}),Ye=M(()=>{"use strict";}),Xe=M(()=>{"use strict";}),Ze=M(()=>{"use strict";}),Qe={};N(Qe,{InferenceSession:()=>Ke,TRACE:()=>z,TRACE_FUNC_BEGIN:()=>He,TRACE_FUNC_END:()=>B,Tensor:()=>ze,env:()=>L,registerBackend:()=>P});var $e=M(()=>{"use strict";pe(),ye(),qe(),Be(),Je(),Ye(),Ue(),Xe(),Ze()}),et=M(()=>{"use strict";}),tt={};N(tt,{default:()=>it});var nt,rt,it,at=M(()=>{"use strict";Dd(),It(),Et(),nt=`ort-wasm-proxy-worker`,rt=globalThis.self?.name===nt,rt&&(self.onmessage=e=>{let{type:t,in:n}=e.data;try{switch(t){case`init-wasm`:Pt(n.wasm).then(()=>{hd(n).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})})},e=>{postMessage({type:t,err:e})});break;case`init-ep`:{let{epName:e,env:r}=n;gd(r,e).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})});break}case`copy-from`:{let{buffer:e}=n,r=bd(e);postMessage({type:t,out:r});break}case`create`:{let{model:e,options:r}=n;xd(e,r).then(e=>{postMessage({type:t,out:e})},e=>{postMessage({type:t,err:e})});break}case`release`:Sd(n),postMessage({type:t});break;case`run`:{let{sessionId:e,inputIndices:r,inputs:i,outputIndices:a,options:o}=n;wd(e,r,i,a,Array(a.length).fill(null),o).then(e=>{e.some(e=>e[3]!==`cpu`)?postMessage({type:t,err:`Proxy does not support non-cpu tensor location.`}):postMessage({type:t,out:e},Ed([...i,...e]))},e=>{postMessage({type:t,err:e})});break}case`end-profiling`:Td(n),postMessage({type:t});break;default:}}catch(e){postMessage({type:t,err:e})}}),it=rt?null:e=>new Worker(e??ht,{type:`module`,name:nt})}),ot={};N(ot,{default:()=>lt});var st,ct,lt,ut,dt=M(()=>{"use strict";ct=(st=import.meta.url,async function(e={}){var t,n,r=e,i=new Promise((e,r)=>{t=e,n=r}),a=typeof window==`object`,o=typeof WorkerGlobalScope<`u`,s=o&&self.name?.startsWith(`em-pthread`);r.mountExternalData=(e,t)=>{e.startsWith(`./`)&&(e=e.substring(2)),(r.Eb||=new Map).set(e,t)},r.unmountExternalData=()=>{delete r.Eb};var c=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,pc:!0}).buffer.constructor;let l=e=>async(...t)=>{try{if(r.Fb)throw Error(`Session already started`);let n=r.Fb={dc:t[0],errors:[]},i=await e(...t);if(r.Fb!==n)throw Error(`Session mismatch`);r.Jb?.flush();let a=n.errors;if(0e),0{if(e===`webgpu`){[r.Jb,r.Ub,r.Yb,r.Kb,r.Xb,r.jb,r.Zb,r.ac,r.Vb,r.Wb,r.$b]=t;let e=r.Jb;r.jsepRegisterBuffer=(t,n,r,i)=>e.registerBuffer(t,n,r,i),r.jsepGetBuffer=t=>e.getBuffer(t),r.jsepCreateDownloader=(t,n,r)=>e.createDownloader(t,n,r),r.jsepOnCreateSession=t=>{e.onCreateSession(t)},r.jsepOnReleaseSession=t=>{e.onReleaseSession(t)},r.jsepOnRunStart=t=>e.onRunStart(t),r.bc=(t,n)=>{e.upload(t,n)}}else if(e===`webnn`){let e=t[0];[r.nc,r.Nb,r.webnnEnsureTensor,r.Ob,r.webnnDownloadTensor]=t.slice(1),r.webnnReleaseTensorId=r.Nb,r.webnnUploadTensor=r.Ob,r.webnnOnRunStart=t=>e.onRunStart(t),r.webnnOnRunEnd=e.onRunEnd.bind(e),r.webnnRegisterMLContext=(t,n)=>{e.registerMLContext(t,n)},r.webnnOnReleaseSession=t=>{e.onReleaseSession(t)},r.webnnCreateMLTensorDownloader=(t,n)=>e.createMLTensorDownloader(t,n),r.webnnRegisterMLTensor=(t,n,r,i)=>e.registerMLTensor(t,n,r,i),r.webnnCreateMLContext=t=>e.createMLContext(t),r.webnnRegisterMLConstant=(t,n,i,a,o,s)=>e.registerMLConstant(t,n,i,a,o,r.Eb,s),r.webnnRegisterGraphInput=e.registerGraphInput.bind(e),r.webnnIsGraphInput=e.isGraphInput.bind(e),r.webnnCreateTemporaryTensor=e.createTemporaryTensor.bind(e),r.webnnIsInt64Supported=e.isInt64Supported.bind(e)}};let u=()=>{let e=(e,t,n)=>(...r)=>{let i=tn,a=t?.();r=e(...r);let o=t?.();return a!==o&&(e=o,n(a),t=n=null),tn==i?r:new Promise((e,t)=>{sn={resolve:e,reject:t}})};(()=>{for(let t of[`_OrtAppendExecutionProvider`,`_OrtCreateSession`,`_OrtRun`,`_OrtRunWithBinding`,`_OrtBindInput`])r[t]=e(r[t],()=>r[t],e=>r[t]=e)})(),l!==void 0&&(r._OrtRun=l(r._OrtRun),r._OrtRunWithBinding=l(r._OrtRunWithBinding)),u=void 0};r.asyncInit=()=>{u?.()};var d,f,p=Object.assign({},r),m=(e,t)=>{throw t},h=``;(a||o)&&(o?h=self.location.href:typeof document<`u`&&document.currentScript&&(h=document.currentScript.src),st&&(h=st),h=h.startsWith(`blob:`)?``:h.slice(0,h.replace(/[?#].*/,``).lastIndexOf(`/`)+1),o&&(f=e=>{var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),d=async e=>{if(re(e))return new Promise((t,n)=>{var r=new XMLHttpRequest;r.open(`GET`,e,!0),r.responseType=`arraybuffer`,r.onload=()=>{r.status==200||r.status==0&&r.response?t(r.response):n(r.status)},r.onerror=n,r.send(null)});var t=await fetch(e,{credentials:`same-origin`});if(t.ok)return t.arrayBuffer();throw Error(t.status+` : `+t.url)});var g=console.log.bind(console),_=console.error.bind(console),v=g,y=_;Object.assign(r,p),p=null;var b,x,S,C,w,T,E,D,O,k,A,ee,te,ne=r.wasmBinary,j=!1,re=e=>e.startsWith(`file://`);function ie(){return b.buffer!=C.buffer&&F(),C}function ae(){return b.buffer!=C.buffer&&F(),w}function oe(){return b.buffer!=C.buffer&&F(),T}function se(){return b.buffer!=C.buffer&&F(),E}function M(){return b.buffer!=C.buffer&&F(),D}function N(){return b.buffer!=C.buffer&&F(),O}function ce(){return b.buffer!=C.buffer&&F(),k}function le(){return b.buffer!=C.buffer&&F(),te}if(s){let e=function(t){try{var n=t.data,i=n.Bb;if(i===`load`){let t=[];self.onmessage=e=>t.push(e),self.startWorker=()=>{postMessage({Bb:`loaded`});for(let n of t)e(n);self.onmessage=e};for(let e of n.Rb)r[e]&&!r[e].proxy||(r[e]=(...t)=>{postMessage({Bb:`callHandler`,Qb:e,args:t})},e==`print`&&(v=r[e]),e==`printErr`&&(y=r[e]));b=n.kc,F(),de(n.lc)}else if(i===`run`){Ie(n.Ab),yr(n.Ab,0,0,1,0,0),R(),Vt(n.Ab),P||(hr(),P=!0);try{Le(n.fc,n.Hb)}catch(e){if(e!=`unwind`)throw e}}else n.target!==`setimmediate`&&(i===`checkMailbox`?P&&Ht():i&&(y(`worker: received unknown command ${i}`),y(n)))}catch(e){throw br(),e}};var ue=e,de,P=!1;y=function(...e){e=e.join(` `),console.error(e)},self.alert=function(...e){postMessage({Bb:`alert`,text:e.join(` `),ic:gr()})},self.onunhandledrejection=e=>{throw e.reason||e},self.onmessage=e}function F(){var e=b.buffer;r.HEAP8=C=new Int8Array(e),r.HEAP16=T=new Int16Array(e),r.HEAPU8=w=new Uint8Array(e),r.HEAPU16=E=new Uint16Array(e),r.HEAP32=D=new Int32Array(e),r.HEAPU32=O=new Uint32Array(e),r.HEAPF32=k=new Float32Array(e),r.HEAPF64=te=new Float64Array(e),r.HEAP64=A=new BigInt64Array(e),r.HEAPU64=ee=new BigUint64Array(e)}function fe(){s?startWorker(r):X.Ca()}s||(b=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),F());var I,pe=0,me=null;function he(){if(--pe==0&&me){var e=me;me=null,e()}}function ge(e){throw y(e=`Aborted(`+e+`)`),j=!0,e=new WebAssembly.RuntimeError(e+`. Build with -sASSERTIONS for more info.`),n(e),e}function _e(){return{a:{L:ye,Aa:L,b:ze,$:z,A:Ue,pa:We,X:qe,Z:Je,qa:Ye,na:Xe,ga:Ze,ma:Qe,J:$e,Y:et,V:tt,oa:nt,W:rt,va:ot,E:mt,Q:gt,O:wt,D:Et,u:Dt,r:Ot,P:kt,z:Lt,R:Rt,ja:zt,T:Ut,aa:Gt,M:Kt,F:qt,ia:Vt,sa:Jt,t:Zt,Ba:Qt,w:un,o:fn,l:mn,c:yt,n:U,j:yn,v:W,p:bn,f:xn,s:Sn,m:Cn,e:wn,k:Tn,i:En,g:Dn,d:On,da:kn,ea:Nn,fa:Pn,ba:Fn,ca:In,N:zn,xa:Bn,ua:Un,h:Kn,C:qn,G:Jn,ta:Vn,x:Yn,ra:Xn,U:Zn,q:Rn,y:Qn,K:$n,S:er,za:rr,ya:ir,ka:J,la:or,_:Oe,B:sr,I:cr,ha:lr,H:ur,a:b,wa:Ee}}}var ve={829644:(e,t,n,i,a)=>{if(r===void 0||!r.Eb)return 1;if((e=B(Number(e>>>0))).startsWith(`./`)&&(e=e.substring(2)),!(e=r.Eb.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:ae().set(o,i>>>0);break;case 1:r.mc?r.mc(i,o):r.bc(i,o);break;default:return 4}return 0}catch{return 4}},830468:(e,t,n)=>{r.Ob(e,ae().subarray(t>>>0,t+n>>>0))},830532:()=>r.nc(),830574:e=>{r.Nb(e)},830611:()=>{r.Vb()},830642:()=>{r.Wb()},830671:()=>{r.$b()},830696:e=>r.Ub(e),830729:e=>r.Yb(e),830761:(e,t,n)=>{r.Kb(Number(e),Number(t),Number(n),!0)},830824:(e,t,n)=>{r.Kb(Number(e),Number(t),Number(n))},830881:()=>typeof wasmOffsetConverter<`u`,830938:e=>{r.jb(`Abs`,e,void 0)},830989:e=>{r.jb(`Neg`,e,void 0)},831040:e=>{r.jb(`Floor`,e,void 0)},831093:e=>{r.jb(`Ceil`,e,void 0)},831145:e=>{r.jb(`Reciprocal`,e,void 0)},831203:e=>{r.jb(`Sqrt`,e,void 0)},831255:e=>{r.jb(`Exp`,e,void 0)},831306:e=>{r.jb(`Erf`,e,void 0)},831357:e=>{r.jb(`Sigmoid`,e,void 0)},831412:(e,t,n)=>{r.jb(`HardSigmoid`,e,{alpha:t,beta:n})},831491:e=>{r.jb(`Log`,e,void 0)},831542:e=>{r.jb(`Sin`,e,void 0)},831593:e=>{r.jb(`Cos`,e,void 0)},831644:e=>{r.jb(`Tan`,e,void 0)},831695:e=>{r.jb(`Asin`,e,void 0)},831747:e=>{r.jb(`Acos`,e,void 0)},831799:e=>{r.jb(`Atan`,e,void 0)},831851:e=>{r.jb(`Sinh`,e,void 0)},831903:e=>{r.jb(`Cosh`,e,void 0)},831955:e=>{r.jb(`Asinh`,e,void 0)},832008:e=>{r.jb(`Acosh`,e,void 0)},832061:e=>{r.jb(`Atanh`,e,void 0)},832114:e=>{r.jb(`Tanh`,e,void 0)},832166:e=>{r.jb(`Not`,e,void 0)},832217:(e,t,n)=>{r.jb(`Clip`,e,{min:t,max:n})},832286:e=>{r.jb(`Clip`,e,void 0)},832338:(e,t)=>{r.jb(`Elu`,e,{alpha:t})},832396:e=>{r.jb(`Gelu`,e,void 0)},832448:e=>{r.jb(`Relu`,e,void 0)},832500:(e,t)=>{r.jb(`LeakyRelu`,e,{alpha:t})},832564:(e,t)=>{r.jb(`ThresholdedRelu`,e,{alpha:t})},832634:(e,t)=>{r.jb(`Cast`,e,{to:t})},832692:e=>{r.jb(`Add`,e,void 0)},832743:e=>{r.jb(`Sub`,e,void 0)},832794:e=>{r.jb(`Mul`,e,void 0)},832845:e=>{r.jb(`Div`,e,void 0)},832896:e=>{r.jb(`Pow`,e,void 0)},832947:e=>{r.jb(`Equal`,e,void 0)},833e3:e=>{r.jb(`Greater`,e,void 0)},833055:e=>{r.jb(`GreaterOrEqual`,e,void 0)},833117:e=>{r.jb(`Less`,e,void 0)},833169:e=>{r.jb(`LessOrEqual`,e,void 0)},833228:(e,t,n,i,a)=>{r.jb(`ReduceMean`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833403:(e,t,n,i,a)=>{r.jb(`ReduceMax`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833577:(e,t,n,i,a)=>{r.jb(`ReduceMin`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833751:(e,t,n,i,a)=>{r.jb(`ReduceProd`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833926:(e,t,n,i,a)=>{r.jb(`ReduceSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834100:(e,t,n,i,a)=>{r.jb(`ReduceL1`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834273:(e,t,n,i,a)=>{r.jb(`ReduceL2`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834446:(e,t,n,i,a)=>{r.jb(`ReduceLogSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834623:(e,t,n,i,a)=>{r.jb(`ReduceSumSquare`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834803:(e,t,n,i,a)=>{r.jb(`ReduceLogSumExp`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834983:e=>{r.jb(`Where`,e,void 0)},835036:(e,t,n)=>{r.jb(`Transpose`,e,{perm:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[]})},835160:(e,t,n,i)=>{r.jb(`DepthToSpace`,e,{blocksize:t,mode:B(n),format:i?`NHWC`:`NCHW`})},835293:(e,t,n,i)=>{r.jb(`DepthToSpace`,e,{blocksize:t,mode:B(n),format:i?`NHWC`:`NCHW`})},835426:(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h)=>{r.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:i,kernelShape:[a],pads:[o,s],strides:[c],wIsConst:()=>!!ie()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:B(h)})},835859:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:i,kernelShape:Array.from(M().subarray(Number(a)>>>0,2+(Number(a)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!ie()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:B(m)})},836520:(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h)=>{r.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:i,kernelShape:[a],pads:[o,s],strides:[c],wIsConst:()=>!!ie()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:B(h)})},836953:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:i,kernelShape:Array.from(M().subarray(Number(a)>>>0,2+(Number(a)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!ie()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:B(m)})},837614:(e,t)=>{r.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},837705:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838184:(e,t)=>{r.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},838275:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838754:(e,t)=>{r.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},838841:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839316:(e,t)=>{r.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},839403:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839878:(e,t,n,i,a)=>{r.jb(`Gemm`,e,{alpha:t,beta:n,transA:i,transB:a})},839982:e=>{r.jb(`MatMul`,e,void 0)},840036:(e,t,n,i)=>{r.jb(`ArgMax`,e,{keepDims:!!t,selectLastIndex:!!n,axis:i})},840144:(e,t,n,i)=>{r.jb(`ArgMin`,e,{keepDims:!!t,selectLastIndex:!!n,axis:i})},840252:(e,t)=>{r.jb(`Softmax`,e,{axis:t})},840315:(e,t)=>{r.jb(`Concat`,e,{axis:t})},840375:(e,t,n,i,a)=>{r.jb(`Split`,e,{axis:t,numOutputs:n,splitSizes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},840531:e=>{r.jb(`Expand`,e,void 0)},840585:(e,t)=>{r.jb(`Gather`,e,{axis:Number(t)})},840656:(e,t)=>{r.jb(`GatherElements`,e,{axis:Number(t)})},840735:(e,t)=>{r.jb(`GatherND`,e,{batch_dims:Number(t)})},840814:(e,t,n,i,a,o,s,c,l,u,d)=>{r.jb(`Resize`,e,{antialias:t,axes:n?Array.from(M().subarray(Number(n)>>>0,Number(i)>>>0)):[],coordinateTransformMode:B(a),cubicCoeffA:o,excludeOutside:s,extrapolationValue:c,keepAspectRatioPolicy:B(l),mode:B(u),nearestMode:B(d)})},841176:(e,t,n,i,a,o,s)=>{r.jb(`Slice`,e,{starts:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[],ends:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[],axes:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[]})},841440:e=>{r.jb(`Tile`,e,void 0)},841492:(e,t,n)=>{r.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841606:(e,t,n)=>{r.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841720:e=>{r.jb(`Range`,e,void 0)},841773:(e,t)=>{r.jb(`Einsum`,e,{equation:B(t)})},841854:(e,t,n,i,a)=>{r.jb(`Pad`,e,{mode:t,value:n,pads:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},841997:(e,t,n,i,a,o)=>{r.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!a,trainingMode:!!i,format:o?`NHWC`:`NCHW`})},842166:(e,t,n,i,a,o)=>{r.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!a,trainingMode:!!i,format:o?`NHWC`:`NCHW`})},842335:(e,t,n)=>{r.jb(`CumSum`,e,{exclusive:Number(t),reverse:Number(n)})},842432:(e,t,n)=>{r.jb(`DequantizeLinear`,e,{axis:t,blockSize:n})},842522:(e,t,n,i,a)=>{r.jb(`GridSample`,e,{align_corners:t,mode:B(n),padding_mode:B(i),format:a?`NHWC`:`NCHW`})},842692:(e,t,n,i,a)=>{r.jb(`GridSample`,e,{align_corners:t,mode:B(n),padding_mode:B(i),format:a?`NHWC`:`NCHW`})},842862:(e,t)=>{r.jb(`ScatterND`,e,{reduction:B(t)})},842947:(e,t,n,i,a,o,s,c,l)=>{r.jb(`Attention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:i,scale:a,doRotary:o,qkvHiddenSizes:s?Array.from(M().subarray(Number(c)>>>0,Number(c)+s>>>0)):[],pastPresentShareBuffer:!!l})},843219:e=>{r.jb(`BiasAdd`,e,void 0)},843274:e=>{r.jb(`BiasSplitGelu`,e,void 0)},843335:e=>{r.jb(`FastGelu`,e,void 0)},843391:(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h,g)=>{r.jb(`Conv`,e,{format:f?`NHWC`:`NCHW`,auto_pad:t,dilations:n?Array.from(M().subarray(Number(n)>>>0,Number(i)>>>0)):[],group:a,kernel_shape:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],pads:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],strides:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],w_is_const:()=>!!ie()[Number(p)>>>0],activation:B(m),activation_params:h?Array.from(ce().subarray(Number(h)>>>0,Number(g)>>>0)):[]})},843975:e=>{r.jb(`Gelu`,e,void 0)},844027:(e,t,n,i,a,o,s,c,l)=>{r.jb(`GroupQueryAttention`,e,{numHeads:t,kvNumHeads:n,scale:i,softcap:a,doRotary:o,rotaryInterleaved:s,smoothSoftmax:c,localWindowSize:l})},844244:(e,t,n,i)=>{r.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!i})},844355:(e,t,n,i)=>{r.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!i})},844466:(e,t,n,i,a,o)=>{r.jb(`MatMulNBits`,e,{k:t,n,accuracyLevel:i,bits:a,blockSize:o})},844593:(e,t,n,i,a,o)=>{r.jb(`MultiHeadAttention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:i,scale:a,doRotary:o})},844752:(e,t)=>{r.jb(`QuickGelu`,e,{alpha:t})},844816:(e,t,n,i,a)=>{r.jb(`RotaryEmbedding`,e,{interleaved:!!t,numHeads:n,rotaryEmbeddingDim:i,scale:a})},844955:(e,t,n)=>{r.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845057:(e,t,n)=>{r.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845159:(e,t,n,i)=>{r.jb(`GatherBlockQuantized`,e,{gatherAxis:t,quantizeAxis:n,blockSize:i})},845280:e=>{r.Zb(e)},845314:(e,t)=>r.ac(Number(e),Number(t),r.Fb.dc,r.Fb.errors)};function L(e,t,n){return ln(async()=>{await r.Xb(Number(e),Number(t),Number(n))})}function ye(){return typeof wasmOffsetConverter<`u`}class be{name=`ExitStatus`;constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var xe=e=>{e.terminate(),e.onmessage=()=>{}},Se=[],Ce=e=>{ke.length==0&&(Fe(),Pe(ke[0]));var t=ke.pop();if(!t)return 6;Ae.push(t),Me[e.Ab]=t,t.Ab=e.Ab;var n={Bb:`run`,fc:e.ec,Hb:e.Hb,Ab:e.Ab};return t.postMessage(n,e.Mb),0},we=0,Te=(e,t,...n)=>{for(var r=2*n.length,i=kr(),a=Or(8*r),o=a>>>3,s=0;s>>0]=c)}return e=xr(e,0,r,a,t),Dr(i),e};function Ee(e){if(s)return Te(0,1,e);if(S=e,!(0{if(S=e,s)throw De(e),`unwind`;Ee(e)},ke=[],Ae=[],je=[],Me={},Ne=e=>{var t=e.Ab;delete Me[t],ke.push(e),Ae.splice(Ae.indexOf(e),1),e.Ab=0,Sr(t)};function R(){je.forEach(e=>e())}var Pe=e=>new Promise(t=>{e.onmessage=n=>{var i=(n=n.data).Bb;if(n.Gb&&n.Gb!=gr()){var a=Me[n.Gb];a?a.postMessage(n,n.Mb):y(`Internal error! Worker sent a message "${i}" to target pthread ${n.Gb}, but that thread no longer exists!`)}else i===`checkMailbox`?Ht():i===`spawnThread`?Ce(n):i===`cleanupThread`?Ne(Me[n.hc]):i===`loaded`?(e.loaded=!0,t(e)):i===`alert`?alert(`Thread ${n.ic}: ${n.text}`):n.target===`setimmediate`?e.postMessage(n):i===`callHandler`?r[n.Qb](...n.args):i&&y(`worker sent an unknown command ${i}`)},e.onerror=e=>{throw y(`worker sent an error! ${e.filename}:${e.lineno}: ${e.message}`),e};var n,i=[];for(n of[])r.propertyIsEnumerable(n)&&i.push(n);e.postMessage({Bb:`load`,Rb:i,kc:b,lc:x})});function Fe(){var e=new Worker((()=>{let e=URL;return import.meta.url>`file:`&&import.meta.url<`file;`?new e(`ort.bundle.min.mjs`,import.meta.url):new URL(import.meta.url)})(),{type:`module`,workerData:`em-pthread`,name:`em-pthread`});ke.push(e)}var Ie=e=>{F();var t=N()[e+52>>>2>>>0];e=N()[e+56>>>2>>>0],Er(t,t-e),Dr(t)},Le=(e,t)=>{we=0,e=Ar(e,t),0>>=0);throw t>>>=0,n>>>=0,N()[r.Ib+16>>>2>>>0]=0,N()[r.Ib+4>>>2>>>0]=t,N()[r.Ib+8>>>2>>>0]=n,e}function Be(e,t,n,r){return s?Te(2,1,e,t,n,r):z(e,t,n,r)}function z(e,t,n,r){if(e>>>=0,n>>>=0,r>>>=0,c===void 0)return 6;var i=[];return s&&i.length===0?Be(e,t>>>=0,n,r):(e={ec:n,Ab:e,Hb:r,Mb:i},s?(e.Bb=`spawnThread`,postMessage(e,i),0):Ce(e))}var Ve=typeof TextDecoder<`u`?new TextDecoder:void 0,He=(e,t=0,n=NaN)=>{var r=(t>>>=0)+n;for(n=t;e[n]&&!(n>=r);)++n;if(16(i=(240&i)==224?(15&i)<<12|a<<6|o:(7&i)<<18|a<<12|o<<6|63&e[t++])?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else r+=String.fromCharCode(i)}return r},B=(e,t)=>(e>>>=0)?He(ae(),e,t):``;function Ue(e,t,n){return s?Te(3,1,e,t,n):0}function We(e,t){if(s)return Te(4,1,e,t)}var Ge=e=>{for(var t=0,n=0;n=r?t++:2047>=r?t+=2:55296<=r&&57343>=r?(t+=4,++n):t+=3}return t},Ke=(e,t,n)=>{var r=ae();if(t>>>=0,0=o&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++a)),127>=o){if(t>=n)break;r[t++>>>0]=o}else{if(2047>=o){if(t+1>=n)break;r[t++>>>0]=192|o>>6}else{if(65535>=o){if(t+2>=n)break;r[t++>>>0]=224|o>>12}else{if(t+3>=n)break;r[t++>>>0]=240|o>>18,r[t++>>>0]=128|o>>12&63}r[t++>>>0]=128|o>>6&63}r[t++>>>0]=128|63&o}}r[t>>>0]=0,e=t-i}else e=0;return e};function qe(e,t){if(s)return Te(5,1,e,t)}function Je(e,t,n){if(s)return Te(6,1,e,t,n)}function Ye(e,t,n){return s?Te(7,1,e,t,n):0}function Xe(e,t){if(s)return Te(8,1,e,t)}function Ze(e,t,n){if(s)return Te(9,1,e,t,n)}function Qe(e,t,n,r){if(s)return Te(10,1,e,t,n,r)}function $e(e,t,n,r){if(s)return Te(11,1,e,t,n,r)}function et(e,t,n,r){if(s)return Te(12,1,e,t,n,r)}function tt(e){if(s)return Te(13,1,e)}function nt(e,t){if(s)return Te(14,1,e,t)}function rt(e,t,n){if(s)return Te(15,1,e,t,n)}var it,at,ot=()=>ge(``),ct=e=>{for(var t=``;ae()[e>>>0];)t+=it[ae()[e++>>>0]];return t},lt={},ut={},dt={};function ft(e,t,n={}){return function(e,t,n={}){var r=t.name;if(!e)throw new at(`type "${r}" must have a positive integer typeid pointer`);if(ut.hasOwnProperty(e)){if(n.Sb)return;throw new at(`Cannot register type '${r}' twice`)}ut[e]=t,delete dt[e],lt.hasOwnProperty(e)&&(t=lt[e],delete lt[e],t.forEach(e=>e()))}(e,t,n)}var pt=(e,t,n)=>{switch(t){case 1:return n?e=>ie()[e>>>0]:e=>ae()[e>>>0];case 2:return n?e=>oe()[e>>>1>>>0]:e=>se()[e>>>1>>>0];case 4:return n?e=>M()[e>>>2>>>0]:e=>N()[e>>>2>>>0];case 8:return n?e=>A[e>>>3]:e=>ee[e>>>3];default:throw TypeError(`invalid integer width (${t}): ${e}`)}};function mt(e,t,n){n>>>=0,ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:e=>e,toWireType:function(e,t){if(typeof t!=`bigint`&&typeof t!=`number`)throw t=t===null?`null`:(e=typeof t)==`object`||e===`array`||e===`function`?t.toString():``+t,TypeError(`Cannot convert "${t}" to ${this.name}`);return typeof t==`number`&&(t=BigInt(t)),t},Cb:ht,readValueFromPointer:pt(t,n,t.indexOf(`u`)==-1),Db:null})}var ht=8;function gt(e,t,n,r){ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?n:r},Cb:ht,readValueFromPointer:function(e){return this.fromWireType(ae()[e>>>0])},Db:null})}var _t=[],vt=[];function yt(e){9<(e>>>=0)&&--vt[e+1]==0&&(vt[e]=void 0,_t.push(e))}var bt=e=>{if(!e)throw new at(`Cannot use deleted val. handle = `+e);return vt[e]},xt=e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let t=_t.pop()||vt.length;return vt[t]=e,vt[t+1]=1,t}};function St(e){return this.fromWireType(N()[e>>>2>>>0])}var Ct={name:`emscripten::val`,fromWireType:e=>{var t=bt(e);return yt(e),t},toWireType:(e,t)=>xt(t),Cb:ht,readValueFromPointer:St,Db:null};function wt(e){return ft(e>>>0,Ct)}var Tt=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(ce()[e>>>2>>>0])};case 8:return function(e){return this.fromWireType(le()[e>>>3>>>0])};default:throw TypeError(`invalid float width (${t}): ${e}`)}};function Et(e,t,n){n>>>=0,ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:e=>e,toWireType:(e,t)=>t,Cb:ht,readValueFromPointer:Tt(t,n),Db:null})}function Dt(e,t,n,r,i){if(e>>>=0,n>>>=0,t=ct(t>>>0),i===-1&&(i=4294967295),i=e=>e,r===0){var a=32-8*n;i=e=>e<>>a}var o=t.includes(`unsigned`)?function(e,t){return t>>>0}:function(e,t){return t};ft(e,{name:t,fromWireType:i,toWireType:o,Cb:ht,readValueFromPointer:pt(t,n,r!==0),Db:null})}function Ot(e,t,n){function r(e){var t=N()[e>>>2>>>0];return e=N()[e+4>>>2>>>0],new i(ie().buffer,e,t)}var i=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][t];ft(e>>>=0,{name:n=ct(n>>>0),fromWireType:r,Cb:ht,readValueFromPointer:r},{Sb:!0})}function kt(e,t){ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:function(e){for(var t,n=N()[e>>>2>>>0],r=e+4,i=r,a=0;a<=n;++a){var o=r+a;a!=n&&ae()[o>>>0]!=0||(i=B(i,o-i),t===void 0?t=i:(t+=`\0`,t+=i),i=o+1)}return _r(e),t},toWireType:function(e,t){t instanceof ArrayBuffer&&(t=new Uint8Array(t));var n=typeof t==`string`;if(!(n||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array))throw new at(`Cannot pass non-string to std::string`);var r=n?Ge(t):t.length,i=vr(4+r+1),a=i+4;if(N()[i>>>2>>>0]=r,n)Ke(t,a,r+1);else if(n)for(n=0;n>>0]=o}else for(n=0;n>>0]=t[n];return e!==null&&e.push(_r,i),i},Cb:ht,readValueFromPointer:St,Db(e){_r(e)}})}var At=typeof TextDecoder<`u`?new TextDecoder(`utf-16le`):void 0,jt=(e,t)=>{for(var n=e>>1,r=n+t/2;!(n>=r)&&se()[n>>>0];)++n;if(32<(n<<=1)-e&&At)return At.decode(ae().slice(e,n));for(n=``,r=0;!(r>=t/2);++r){var i=oe()[e+2*r>>>1>>>0];if(i==0)break;n+=String.fromCharCode(i)}return n},Mt=(e,t,n)=>{if(n??=2147483647,2>n)return 0;var r=t;n=(n-=2)<2*e.length?n/2:e.length;for(var i=0;i>>1>>>0]=a,t+=2}return oe()[t>>>1>>>0]=0,t-r},Nt=e=>2*e.length,Pt=(e,t)=>{for(var n=0,r=``;!(n>=t/4);){var i=M()[e+4*n>>>2>>>0];if(i==0)break;++n,65536<=i?(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i)):r+=String.fromCharCode(i)}return r},Ft=(e,t,n)=>{if(t>>>=0,n??=2147483647,4>n)return 0;var r=t;n=r+n-4;for(var i=0;i=a&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),M()[t>>>2>>>0]=a,(t+=4)+4>n)break}return M()[t>>>2>>>0]=0,t-r},It=e=>{for(var t=0,n=0;n=r&&++n,t+=4}return t};function Lt(e,t,n){if(e>>>=0,t>>>=0,n=ct(n>>>=0),t===2)var r=jt,i=Mt,a=Nt,o=e=>se()[e>>>1>>>0];else t===4&&(r=Pt,i=Ft,a=It,o=e=>N()[e>>>2>>>0]);ft(e,{name:n,fromWireType:e=>{for(var n,i=N()[e>>>2>>>0],a=e+4,s=0;s<=i;++s){var c=e+4+s*t;s!=i&&o(c)!=0||(a=r(a,c-a),n===void 0?n=a:(n+=`\0`,n+=a),a=c+t)}return _r(e),n},toWireType:(e,r)=>{if(typeof r!=`string`)throw new at(`Cannot pass non-string to C++ string type ${n}`);var o=a(r),s=vr(4+o+t);return N()[s>>>2>>>0]=o/t,i(r,s+4,o+t),e!==null&&e.push(_r,s),s},Cb:ht,readValueFromPointer:St,Db(e){_r(e)}})}function Rt(e,t){ft(e>>>=0,{Tb:!0,name:t=ct(t>>>0),Cb:0,fromWireType:()=>{},toWireType:()=>{}})}function zt(e){yr(e>>>0,!o,1,!a,131072,!1),R()}var Bt=e=>{if(!j)try{if(e(),!(0>>=0,typeof Atomics.jc==`function`&&(Atomics.jc(M(),e>>>2,e).value.then(Ht),e+=128,Atomics.store(M(),e>>>2,1))}var Ht=()=>{var e=gr();e&&(Vt(e),Bt(Tr))};function Ut(e,t){(e>>>=0)==t>>>0?setTimeout(Ht):s?postMessage({Gb:e,Bb:`checkMailbox`}):(e=Me[e])&&e.postMessage({Bb:`checkMailbox`})}var Wt=[];function Gt(e,t,n,r,i){for(t>>>=0,r/=2,Wt.length=r,n=i>>>0>>>3,i=0;i>>0];return(t?ve[t]:pr[e])(...Wt)}var Kt=()=>{we=0};function qt(e){e>>>=0,s?postMessage({Bb:`cleanupThread`,hc:e}):Ne(Me[e])}function Jt(e){}var Yt=(e,t)=>{var n=ut[e];if(n===void 0)throw e=mr(e),n=ct(e),_r(e),new at(`${t} has unknown type ${n}`);return n},Xt=(e,t,n)=>{var r=[];return e=e.toWireType(r,n),r.length&&(N()[t>>>2>>>0]=xt(r)),e};function Zt(e,t,n){return t>>>=0,n>>>=0,e=bt(e>>>0),t=Yt(t,`emval::as`),Xt(t,n,e)}function Qt(e,t){return t>>>=0,e=bt(e>>>0),(t=Yt(t,`emval::as`)).toWireType(null,e)}var $t=e=>{try{e()}catch(e){ge(e)}},en=0,tn=null,nn=0,rn=[],V={},an={},on=0,sn=null,cn=[];function ln(e){return function(e){if(!j){if(en===0){var t=!1,n=!1;e((e=0)=>{if(!j&&(nn=e,t=!0,n)){en=2,$t(()=>Nr(tn)),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.resume(),e=!1;try{var r=function(){var e=M()[tn+8>>>2>>>0];return e=X[an[e]],--we,e()}()}catch(t){r=t,e=!0}var i=!1;if(!tn){var a=sn;a&&(sn=null,(e?a.reject:a.resolve)(r),i=!0)}if(e&&!i)throw r}}),n=!0,t||(en=1,tn=function(){var e=vr(65548),t=e+12;N()[e>>>2>>>0]=t,N()[e+4>>>2>>>0]=t+65536,t=rn[0];var n=V[t];return n===void 0&&(n=on++,V[t]=n,an[n]=t),t=n,M()[e+8>>>2>>>0]=t,e}(),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.pause(),$t(()=>jr(tn)))}else en===2?(en=0,$t(Pr),_r(tn),tn=null,cn.forEach(Bt)):ge(`invalid state: ${en}`);return nn}}(t=>{e().then(t)})}function un(e){return e>>>=0,ln(async()=>{var t=await bt(e);return xt(t)})}var dn=[];function fn(e,t,n,r){return n>>>=0,r>>>=0,(e=dn[e>>>0])(null,t=bt(t>>>0),n,r)}var H={},pn=e=>{var t=H[e];return t===void 0?ct(e):t};function mn(e,t,n,r,i){return n>>>=0,r>>>=0,i>>>=0,(e=dn[e>>>0])(t=bt(t>>>0),t[n=pn(n)],r,i)}var hn=()=>typeof globalThis==`object`?globalThis:Function(`return this`)();function U(e){return(e>>>=0)==0?xt(hn()):(e=pn(e),xt(hn()[e]))}var gn=e=>{var t=dn.length;return dn.push(e),t},_n=(e,t)=>{for(var n=Array(e),r=0;r>>2>>>0],`parameter `+r);return n},vn=(e,t)=>Object.defineProperty(t,`name`,{value:e});function yn(e,t,n){var r=(t=_n(e,t>>>0)).shift();e--;var i=`return function (obj, func, destructorsRef, args) { +`,a=0,o=[];n===0&&o.push(`obj`);for(var s=[`retType`],c=[r],l=0;le.name).join(`, `)}) => ${r.name}>`,gn(vn(n,e))}function W(e){return e=pn(e>>>0),xt(r[e])}function bn(e,t){return t>>>=0,e=bt(e>>>0),t=bt(t),xt(e[t])}function xn(e){9<(e>>>=0)&&(vt[e+1]+=1)}function Sn(){return xt([])}function Cn(e){e=bt(e>>>0);for(var t=Array(e.length),n=0;n>>0))}function Tn(){return xt({})}function En(e){for(var t=bt(e>>>=0);t.length;){var n=t.pop();t.pop()(n)}yt(e)}function Dn(e,t,n){t>>>=0,n>>>=0,e=bt(e>>>0),t=bt(t),n=bt(n),e[t]=n}function On(e,t){return t>>>=0,e=(e=Yt(e>>>0,`_emval_take_value`)).readValueFromPointer(t),xt(e)}function kn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getUTCSeconds(),M()[t+4>>>2>>>0]=e.getUTCMinutes(),M()[t+8>>>2>>>0]=e.getUTCHours(),M()[t+12>>>2>>>0]=e.getUTCDate(),M()[t+16>>>2>>>0]=e.getUTCMonth(),M()[t+20>>>2>>>0]=e.getUTCFullYear()-1900,M()[t+24>>>2>>>0]=e.getUTCDay(),e=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,M()[t+28>>>2>>>0]=e}var An=e=>e%4==0&&(e%100!=0||e%400==0),jn=[0,31,60,91,121,152,182,213,244,274,305,335],Mn=[0,31,59,90,120,151,181,212,243,273,304,334];function Nn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getSeconds(),M()[t+4>>>2>>>0]=e.getMinutes(),M()[t+8>>>2>>>0]=e.getHours(),M()[t+12>>>2>>>0]=e.getDate(),M()[t+16>>>2>>>0]=e.getMonth(),M()[t+20>>>2>>>0]=e.getFullYear()-1900,M()[t+24>>>2>>>0]=e.getDay();var n=(An(e.getFullYear())?jn:Mn)[e.getMonth()]+e.getDate()-1|0;M()[t+28>>>2>>>0]=n,M()[t+36>>>2>>>0]=-60*e.getTimezoneOffset(),n=new Date(e.getFullYear(),6,1).getTimezoneOffset();var r=new Date(e.getFullYear(),0,1).getTimezoneOffset();e=0|(n!=r&&e.getTimezoneOffset()==Math.min(r,n)),M()[t+32>>>2>>>0]=e}function Pn(e){e>>>=0;var t=new Date(M()[e+20>>>2>>>0]+1900,M()[e+16>>>2>>>0],M()[e+12>>>2>>>0],M()[e+8>>>2>>>0],M()[e+4>>>2>>>0],M()[e>>>2>>>0],0),n=M()[e+32>>>2>>>0],r=t.getTimezoneOffset(),i=new Date(t.getFullYear(),6,1).getTimezoneOffset(),a=new Date(t.getFullYear(),0,1).getTimezoneOffset(),o=Math.min(a,i);return 0>n?M()[e+32>>>2>>>0]=+(i!=a&&o==r):0>>2>>>0]=t.getDay(),n=(An(t.getFullYear())?jn:Mn)[t.getMonth()]+t.getDate()-1|0,M()[e+28>>>2>>>0]=n,M()[e>>>2>>>0]=t.getSeconds(),M()[e+4>>>2>>>0]=t.getMinutes(),M()[e+8>>>2>>>0]=t.getHours(),M()[e+12>>>2>>>0]=t.getDate(),M()[e+16>>>2>>>0]=t.getMonth(),M()[e+20>>>2>>>0]=t.getYear(),e=t.getTime(),BigInt(isNaN(e)?-1:e/1e3)}function Fn(e,t,n,r,i,a,o){return s?Te(16,1,e,t,n,r,i,a,o):-52}function In(e,t,n,r,i,a){if(s)return Te(17,1,e,t,n,r,i,a)}var Ln={},Rn=()=>performance.timeOrigin+performance.now();function zn(e,t){if(s)return Te(18,1,e,t);if(Ln[e]&&(clearTimeout(Ln[e].id),delete Ln[e]),!t)return 0;var n=setTimeout(()=>{delete Ln[e],Bt(()=>wr(e,performance.timeOrigin+performance.now()))},t);return Ln[e]={id:n,qc:t},0}function Bn(e,t,n,r){e>>>=0,t>>>=0,n>>>=0,r>>>=0;var i=new Date().getFullYear(),a=new Date(i,0,1).getTimezoneOffset();i=new Date(i,6,1).getTimezoneOffset();var o=Math.max(a,i);N()[e>>>2>>>0]=60*o,M()[t>>>2>>>0]=+(a!=i),e=(t=e=>{var t=Math.abs(e);return`UTC${0<=e?`-`:`+`}${String(Math.floor(t/60)).padStart(2,`0`)}${String(t%60).padStart(2,`0`)}`})(a),t=t(i),iDate.now(),Hn=1;function Un(e,t,n){if(!(0<=e&&3>=e))return 28;if(e===0)e=Date.now();else{if(!Hn)return 52;e=performance.timeOrigin+performance.now()}return A[n>>>0>>>3]=BigInt(Math.round(1e6*e)),0}var Wn=[],Gn=(e,t)=>{Wn.length=0;for(var n;n=ae()[e++>>>0];){var r=n!=105;t+=(r&=n!=112)&&t%8?4:0,Wn.push(n==112?N()[t>>>2>>>0]:n==106?A[t>>>3]:n==105?M()[t>>>2>>>0]:le()[t>>>3>>>0]),t+=r?8:4}return Wn};function Kn(e,t,n){return e>>>=0,t=Gn(t>>>0,n>>>0),ve[e](...t)}function qn(e,t,n){return e>>>=0,t=Gn(t>>>0,n>>>0),ve[e](...t)}var Jn=()=>{};function Yn(e,t){return y(B(e>>>0,t>>>0))}var Xn=()=>{throw we+=1,`unwind`};function Zn(){return 4294901760}var Qn=()=>navigator.hardwareConcurrency;function $n(){return ge(`Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER`),0}function er(e){e>>>=0;var t=ae().length;if(e<=t||4294901760=n;n*=2){var r=t*(1+.2/n);r=Math.min(r,e+100663296);e:{r=(Math.min(4294901760,65536*Math.ceil(Math.max(e,r)/65536))-b.buffer.byteLength+65535)/65536|0;try{b.grow(r),F();var i=1;break e}catch{}i=void 0}if(i)return!0}return!1}var G=()=>(ge(`Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER`),0),tr={},nr=e=>{e.forEach(e=>{var t=G();t&&(tr[t]=e)})};function rr(){var e=Error().stack.toString().split(` +`);return e[0]==`Error`&&e.shift(),nr(e),tr.Lb=G(),tr.cc=e,tr.Lb}function ir(e,t,n){if(e>>>=0,t>>>=0,tr.Lb==e)var r=tr.cc;else (r=Error().stack.toString().split(` +`))[0]==`Error`&&r.shift(),nr(r);for(var i=3;r[i]&&G()!=e;)++i;for(e=0;e>>2>>>0]=G();return e}var K,ar={},q=()=>{if(!K){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 ar)ar[e]===void 0?delete t[e]:t[e]=ar[e];var n=[];for(e in t)n.push(`${e}=${t[e]}`);K=n}return K};function J(e,t){if(s)return Te(19,1,e,t);e>>>=0,t>>>=0;var n=0;return q().forEach((r,i)=>{var a=t+n;for(i=N()[e+4*i>>>2>>>0]=a,a=0;a>>0]=r.charCodeAt(a);ie()[i>>>0]=0,n+=r.length+1}),0}function or(e,t){if(s)return Te(20,1,e,t);e>>>=0,t>>>=0;var n=q();N()[e>>>2>>>0]=n.length;var r=0;return n.forEach(e=>r+=e.length+1),N()[t>>>2>>>0]=r,0}function sr(e){return s?Te(21,1,e):52}function cr(e,t,n,r){return s?Te(22,1,e,t,n,r):52}function lr(e,t,n,r){return s?Te(23,1,e,t,n,r):70}var Y=[null,[],[]];function ur(e,t,n,r){if(s)return Te(24,1,e,t,n,r);t>>>=0,n>>>=0,r>>>=0;for(var i=0,a=0;a>>2>>>0],c=N()[t+4>>>2>>>0];t+=8;for(var l=0;l>>0],d=Y[e];u===0||u===10?((e===1?v:y)(He(d)),d.length=0):d.push(u)}i+=c}return N()[r>>>2>>>0]=i,0}s||function(){for(var e=r.numThreads-1;e--;)Fe();Se.unshift(()=>{pe++,function(e){s?e():Promise.all(ke.map(Pe)).then(e)}(()=>he())})}();for(var dr=Array(256),fr=0;256>fr;++fr)dr[fr]=String.fromCharCode(fr);it=dr,at=r.BindingError=class extends Error{constructor(e){super(e),this.name=`BindingError`}},r.InternalError=class extends Error{constructor(e){super(e),this.name=`InternalError`}},vt.push(0,1,void 0,1,null,1,!0,1,!1,1),r.count_emval_handles=()=>vt.length/2-5-_t.length;var X,pr=[Ee,De,Be,Ue,We,qe,Je,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,Fn,In,zn,J,or,sr,cr,lr,ur];(async function(){function e(e,t){return X=e.exports,X=function(){var e=X,t={};for(let[n,r]of Object.entries(e))t[n]=typeof r==`function`?(...e)=>{rn.push(n);try{return r(...e)}finally{j||(rn.pop(),tn&&en===1&&rn.length===0&&(en=0,we+=1,$t(Mr),typeof Fibers<`u`&&Fibers.rc()))}}:r;return t}(),X=function(){var e=X,t=e=>t=>e(t)>>>0,n=e=>()=>e()>>>0;return(e=Object.assign({},e)).Da=t(e.Da),e.fb=n(e.fb),e.hb=t(e.hb),e.tb=t(e.tb),e.ub=n(e.ub),e.__cxa_get_exception_ptr=t(e.__cxa_get_exception_ptr),e}(),je.push(X.ib),x=t,he(),X}pe++;var t=_e();if(r.instantiateWasm)return new Promise(n=>{r.instantiateWasm(t,(t,r)=>{e(t,r),n(t.exports)})});if(s)return new Promise(t=>{de=n=>{var r=new WebAssembly.Instance(n,_e());t(e(r,n))}});I??=r.locateFile?r.locateFile?r.locateFile(`ort-wasm-simd-threaded.jsep.wasm`,h):h+`ort-wasm-simd-threaded.jsep.wasm`:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+import.meta.url).href;try{var i=await async function(e){var t=I;if(!ne&&typeof WebAssembly.instantiateStreaming==`function`&&!re(t))try{var n=fetch(t,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(n,e)}catch(e){y(`wasm streaming compile failed: ${e}`),y(`falling back to ArrayBuffer instantiation`)}return async function(e,t){try{var n=await async function(e){if(!ne)try{var t=await d(e);return new Uint8Array(t)}catch{}if(e==I&&ne)e=new Uint8Array(ne);else{if(!f)throw`both async and sync fetching of the wasm failed`;e=f(e)}return e}(e);return await WebAssembly.instantiate(n,t)}catch(e){y(`failed to asynchronously prepare wasm: ${e}`),ge(e)}}(t,e)}(t);return e(i.instance,i.module)}catch(e){return n(e),Promise.reject(e)}})();var mr=e=>(mr=X.Da)(e),hr=()=>(hr=X.Ea)();r._OrtInit=(e,t)=>(r._OrtInit=X.Fa)(e,t),r._OrtGetLastError=(e,t)=>(r._OrtGetLastError=X.Ga)(e,t),r._OrtCreateSessionOptions=(e,t,n,i,a,o,s,c,l,u)=>(r._OrtCreateSessionOptions=X.Ha)(e,t,n,i,a,o,s,c,l,u),r._OrtAppendExecutionProvider=(e,t,n,i,a)=>(r._OrtAppendExecutionProvider=X.Ia)(e,t,n,i,a),r._OrtAddFreeDimensionOverride=(e,t,n)=>(r._OrtAddFreeDimensionOverride=X.Ja)(e,t,n),r._OrtAddSessionConfigEntry=(e,t,n)=>(r._OrtAddSessionConfigEntry=X.Ka)(e,t,n),r._OrtReleaseSessionOptions=e=>(r._OrtReleaseSessionOptions=X.La)(e),r._OrtCreateSession=(e,t,n)=>(r._OrtCreateSession=X.Ma)(e,t,n),r._OrtReleaseSession=e=>(r._OrtReleaseSession=X.Na)(e),r._OrtGetInputOutputCount=(e,t,n)=>(r._OrtGetInputOutputCount=X.Oa)(e,t,n),r._OrtGetInputOutputMetadata=(e,t,n,i)=>(r._OrtGetInputOutputMetadata=X.Pa)(e,t,n,i),r._OrtFree=e=>(r._OrtFree=X.Qa)(e),r._OrtCreateTensor=(e,t,n,i,a,o)=>(r._OrtCreateTensor=X.Ra)(e,t,n,i,a,o),r._OrtGetTensorData=(e,t,n,i,a)=>(r._OrtGetTensorData=X.Sa)(e,t,n,i,a),r._OrtReleaseTensor=e=>(r._OrtReleaseTensor=X.Ta)(e),r._OrtCreateRunOptions=(e,t,n,i)=>(r._OrtCreateRunOptions=X.Ua)(e,t,n,i),r._OrtAddRunConfigEntry=(e,t,n)=>(r._OrtAddRunConfigEntry=X.Va)(e,t,n),r._OrtReleaseRunOptions=e=>(r._OrtReleaseRunOptions=X.Wa)(e),r._OrtCreateBinding=e=>(r._OrtCreateBinding=X.Xa)(e),r._OrtBindInput=(e,t,n)=>(r._OrtBindInput=X.Ya)(e,t,n),r._OrtBindOutput=(e,t,n,i)=>(r._OrtBindOutput=X.Za)(e,t,n,i),r._OrtClearBoundOutputs=e=>(r._OrtClearBoundOutputs=X._a)(e),r._OrtReleaseBinding=e=>(r._OrtReleaseBinding=X.$a)(e),r._OrtRunWithBinding=(e,t,n,i,a)=>(r._OrtRunWithBinding=X.ab)(e,t,n,i,a),r._OrtRun=(e,t,n,i,a,o,s,c)=>(r._OrtRun=X.bb)(e,t,n,i,a,o,s,c),r._OrtEndProfiling=e=>(r._OrtEndProfiling=X.cb)(e),r._JsepOutput=(e,t,n)=>(r._JsepOutput=X.db)(e,t,n),r._JsepGetNodeName=e=>(r._JsepGetNodeName=X.eb)(e);var gr=()=>(gr=X.fb)(),_r=r._free=e=>(_r=r._free=X.gb)(e),vr=r._malloc=e=>(vr=r._malloc=X.hb)(e),yr=(e,t,n,r,i,a)=>(yr=X.kb)(e,t,n,r,i,a),br=()=>(br=X.lb)(),xr=(e,t,n,r,i)=>(xr=X.mb)(e,t,n,r,i),Sr=e=>(Sr=X.nb)(e),Cr=e=>(Cr=X.ob)(e),wr=(e,t)=>(wr=X.pb)(e,t),Tr=()=>(Tr=X.qb)(),Er=(e,t)=>(Er=X.rb)(e,t),Dr=e=>(Dr=X.sb)(e),Or=e=>(Or=X.tb)(e),kr=()=>(kr=X.ub)(),Ar=r.dynCall_ii=(e,t)=>(Ar=r.dynCall_ii=X.vb)(e,t),jr=e=>(jr=X.wb)(e),Mr=()=>(Mr=X.xb)(),Nr=e=>(Nr=X.yb)(e),Pr=()=>(Pr=X.zb)();return r.stackSave=()=>kr(),r.stackRestore=e=>Dr(e),r.stackAlloc=e=>Or(e),r.setValue=function(e,t,n=`i8`){switch(n.endsWith(`*`)&&(n=`*`),n){case`i1`:case`i8`:ie()[e>>>0]=t;break;case`i16`:oe()[e>>>1>>>0]=t;break;case`i32`:M()[e>>>2>>>0]=t;break;case`i64`:A[e>>>3]=BigInt(t);break;case`float`:ce()[e>>>2>>>0]=t;break;case`double`:le()[e>>>3>>>0]=t;break;case`*`:N()[e>>>2>>>0]=t;break;default:ge(`invalid type for setValue: ${n}`)}},r.getValue=function(e,t=`i8`){switch(t.endsWith(`*`)&&(t=`*`),t){case`i1`:case`i8`:return ie()[e>>>0];case`i16`:return oe()[e>>>1>>>0];case`i32`:return M()[e>>>2>>>0];case`i64`:return A[e>>>3];case`float`:return ce()[e>>>2>>>0];case`double`:return le()[e>>>3>>>0];case`*`:return N()[e>>>2>>>0];default:ge(`invalid type for getValue: ${t}`)}},r.UTF8ToString=B,r.stringToUTF8=Ke,r.lengthBytesUTF8=Ge,function e(){if(0{"use strict";et(),ft=typeof location>`u`?void 0:location.origin,pt=import.meta.url>`file:`&&import.meta.url<`file;`,mt=()=>{if(pt){let e=URL;return new URL(new e(`ort.bundle.min.mjs`,import.meta.url).href,ft).href}return import.meta.url},ht=mt(),gt=()=>{if(ht&&!ht.startsWith(`blob:`))return ht.substring(0,ht.lastIndexOf(`/`)+1)},_t=(e,t)=>{try{let n=t??ht;return(n?new URL(e,n):new URL(e)).origin===ft}catch{return!1}},vt=(e,t)=>{let n=t??ht;try{return(n?new URL(e,n):new URL(e)).href}catch{return}},yt=(e,t)=>`${t??`./`}${e}`,bt=async e=>{let t=await(await fetch(e,{credentials:`same-origin`})).blob();return URL.createObjectURL(t)},xt=async e=>(await import(e)).default,St=(at(),le(tt)).default,Ct=async()=>{if(!ht)throw Error(`Failed to load proxy worker: cannot determine the script source URL.`);if(_t(ht))return[void 0,St()];let e=await bt(ht);return[e,St(e)]},wt=(dt(),le(ot)).default,Tt=async(e,t,n)=>{if(!e&&!t&&wt&&ht&&_t(ht))return[void 0,wt];{let r=`ort-wasm-simd-threaded.jsep.mjs`,i=e??vt(r,t),a=n&&i&&!_t(i,t),o=a?await bt(i):i??yt(r,t);return[a?o:void 0,await xt(o)]}}}),Dt,Ot,kt,At,jt,Mt,Nt,Pt,Ft,It=M(()=>{"use strict";Et(),Ot=!1,kt=!1,At=!1,jt=()=>{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}},Mt=()=>{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}},Pt=async e=>{if(Ot)return Promise.resolve();if(kt)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if(At)throw Error(`previous call to 'initializeWebAssembly()' failed.`);kt=!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(!Mt())throw Error(`WebAssembly SIMD is not supported in the current environment.`)}let r=jt();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 Tt(s,a,n>1),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=gt();e&&(r.locateFile=t=>e+t)}f(r).then(t=>{kt=!1,Ot=!0,Dt=t,e(),d&&URL.revokeObjectURL(d)},e=>{kt=!1,At=!0,t(e)})})),await Promise.race(m),p)throw Error(`WebAssembly backend initializing failed due to timeout: ${t}ms`)},Ft=()=>{if(Ot&&Dt)return Dt;throw Error(`WebAssembly is not initialized yet.`)}}),Lt,Rt,zt,Bt=M(()=>{"use strict";It(),Lt=(e,t)=>{let n=Ft(),r=n.lengthBytesUTF8(e)+1,i=n._malloc(r);return n.stringToUTF8(e,i,r),t.push(i),i},Rt=(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`)Rt(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}`)})},zt=e=>{let t=Ft(),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)}}}),Vt,Ht=M(()=>{"use strict";It(),Bt(),Vt=e=>{let t=Ft(),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 serverity 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=Lt(e.tag,r)),n=t._OrtCreateRunOptions(i.logSeverityLevel,i.logVerbosityLevel,!!i.terminate,a),n===0&&zt(`Can't create run options.`),e?.extra!==void 0&&Rt(e.extra,``,new WeakSet,(e,i)=>{let a=Lt(e,r),o=Lt(i,r);t._OrtAddRunConfigEntry(n,a,o)!==0&&zt(`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}}}),Ut,Wt,Gt,Kt,qt,Jt,Yt=M(()=>{"use strict";It(),Bt(),Ut=e=>{switch(e){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${e}`)}},Wt=e=>{switch(e){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${e}`)}},Gt=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)},Kt=(e,t,n,r)=>{let i=Lt(t,r),a=Lt(n,r);Ft()._OrtAddSessionConfigEntry(e,i,a)!==0&&zt(`Can't set a session config entry: ${t} - ${n}.`)},qt=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&&Kt(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}`);Kt(e,`preferredLayout`,t.preferredLayout,n)}}break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported execution provider: ${t}`)}let a=Lt(t,n),o=i.length,s=0,c=0;if(o>0){s=Ft()._malloc(o*Ft().PTR_SIZE),n.push(s),c=Ft()._malloc(o*Ft().PTR_SIZE),n.push(c);for(let e=0;e{let t=Ft(),n=0,r=[],i=e||{};Gt(i);try{let e=Ut(i.graphOptimizationLevel??`all`),a=Wt(i.executionMode??`sequential`),o=typeof i.logId==`string`?Lt(i.logId,r):0,s=i.logSeverityLevel??2;if(!Number.isInteger(s)||s<0||s>4)throw Error(`log serverity 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`?Lt(i.optimizedModelFilePath,r):0;if(n=t._OrtCreateSessionOptions(e,!!i.enableCpuMemArena,!!i.enableMemPattern,a,!!i.enableProfiling,0,o,s,c,l),n===0&&zt(`Can't create session options.`),i.executionProviders&&await qt(n,i.executionProviders,r),i.enableGraphCapture!==void 0){if(typeof i.enableGraphCapture!=`boolean`)throw Error(`enableGraphCapture must be a boolean value: ${i.enableGraphCapture}`);Kt(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=Lt(e,r);t._OrtAddFreeDimensionOverride(n,i,a)!==0&&zt(`Can't set a free dimension override: ${e} - ${a}.`)}return i.extra!==void 0&&Rt(i.extra,``,new WeakSet,(e,t)=>{Kt(n,e,t,r)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseSessionOptions(n)!==0&&zt(`Can't release session options.`),r.forEach(e=>t._free(e)),e}}}),Xt,Zt,Qt,$t,en,tn,nn,rn,V=M(()=>{"use strict";Xt=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}`)}},Zt=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}`)}},Qt=(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}`)}},en=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}`)}},tn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,nn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint64`||e===`int8`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,rn=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}`)}}}),an,on=M(()=>{"use strict";et(),an=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)}}else return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),sn,cn,ln,un,dn,fn,H,pn=M(()=>{"use strict";V(),sn=[`V`,`I`,`W`,`E`,`F`],cn=(e,t)=>{console.log(`[${sn[e]},${new Date().toISOString()}]${t}`)},dn=(e,t)=>{ln=e,un=t},fn=(e,t)=>{let n=en(e),r=en(ln);n>=r&&cn(n,typeof t==`function`?t():t)},H=(...e)=>{un&&fn(...e)}}),mn,hn,U,gn,_n,vn,yn,W=M(()=>{"use strict";mn=class{static calcMatMulShape(e,t){return e[1]===t[0]?[e[0],t[1]]:void 0}},hn=class{static calcShape(e,t,n=!1){let r=e.length,i=t.length;if(r===0)return t;if(i===0)return e;let a=Math.max(e.length,t.length),o=Array(a);if(n){if(r<2||i<2)return;let n=mn.calcMatMulShape([e[r-2],e[r-1]],[t[i-2],t[i-1]]);if(n===void 0)return;[o[a-2],o[a-1]]=n}for(let s=n?3:1;s<=a;s++){let n=r-s<0?1:e[r-s],c=i-s<0?1:t[i-s];if(n!==c&&n>1&&c>1)return;let l=Math.max(n,c);if(n&&c)o[a-s]=Math.max(n,c);else{if(l>1)return;o[a-s]=0}}return o}static isValidBroadcast(e,t){let n=e.length,r=t.length;if(n>r)return!1;for(let i=1;i<=n;i++)if(e[n-i]!==1&&e[n-i]!==t[r-i])return!1;return!0}},U=class e{static size(t){return e.getSizeFromDimensionRange(t,0,t.length)}static convertShape(e,t=4){let n=e.length;if(n===0)return[];let r=Array(n),i=n-1;for(;i>=0;){if(e[i]%t===0){r[i]=e[i]/t;break}if(t%e[i]!==0)throw Error(`cannot convert shape`);r[i]=1,t/=e[i],i--}for(i--;i>=0;i--)r[i]=e[i];return r}static sizeFromDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeFromDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,n,t.length)}static sizeToDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeToDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,0,n)}static getSizeFromDimensionRange(e,t,n){let r=1;for(let i=t;i=0;--r)n[r]=n[r+1]*e[r+1];return n}static normalizeAxis(e,t){if(e<-t&&e>=t)throw Error(`unsupported axis for this operation.`);return e<0?e+t:e}static normalizeAxes(e,t){return e.map(n=>this.normalizeAxis(n,t??e.length))}static sortBasedOnPerm(e,t){return t?t.map(t=>e[t]):e.slice().reverse()}static padShape(e,t){let n=e.length;return e.map((e,r)=>e+t[r]+t[r+n])}static areEqual(e,t){return e.length===t.length?e.every((e,n)=>e===t[n]):!1}},gn=class e{static adjustPoolAttributes(e,t,n,r,i,a){if(!e&&n.length!==t.length-2)throw Error(`length of specified kernel shapes should be 2 less than length of input dimensions`);if(e)for(let e=0;e=n.length?n.push(t[e+2]):n[e]=t[e+2];for(let e=0;e=n[e]||a[e+n.length]>=n[e])throw Error(`pads should be smaller than kernel`)}}static adjustPadsBasedOnAutoPad(t,n,r,i,a,o,s){if(s){if(a.length!==2*(t.length-2))throw Error(`length of pads should be twice the length of data dimensions`);if(n.length!==t.length-2)throw Error(`length of strides should be the length of data dimensions`);if(i.length!==t.length-2)throw Error(`length of kernel shapes should be the length of data dimensions`);for(let c=0;c{"use strict";V(),bn=(e,t)=>new($t(t))(e)}),Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn=M(()=>{"use strict";pn(),Sn=(e,t=!0)=>{if(e.byteLength%8!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 8 (BigInt).`);let n=e.byteLength/8,r=new BigInt64Array(e.buffer,e.byteOffset,n),i=new Int32Array(n);for(let e=0;e2147483647n||t<-2147483648n)throw Error(`Overflow occurred when converting BigInt to Int32 at index ${e}: ${t}`);i[e]=Number(t)}return t?new Uint8Array(i.buffer):i},Cn=(e,t=!0)=>{if(e.byteLength%4!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 4 (Int32).`);let n=e.byteLength/4,r=new Int32Array(e.buffer,e.byteOffset,n),i=BigInt64Array.from(r,BigInt);return t?new Uint8Array(i.buffer):i},wn=1,Tn=()=>wn++,En=new Map([[`float32`,32],[`float16`,16],[`int32`,32],[`uint32`,32],[`int64`,64],[`uint64`,64],[`int8`,8],[`uint8`,8],[`int4`,4],[`uint4`,4]]),Dn=(e,t)=>{let n=En.get(e);if(!n)throw Error(`Unsupported data type.`);return t.length>0?Math.ceil(t.reduce((e,t)=>e*t)*n/8):0},On=class{constructor(e){this.shouldConvertInt64toInt32=!1,this.isInt64ToInt32Converted=!1;let{sessionId:t,context:n,tensor:r,dataType:i,shape:a,shouldConvertInt64toInt32:o=!1}=e;this.sessionId=t,this.mlContext=n,this.mlTensor=r,this.dataType=i,this.tensorShape=a,this.shouldConvertInt64toInt32=o}get tensor(){return this.mlTensor}get type(){return this.dataType}get shape(){return this.tensorShape}get byteLength(){return Dn(this.dataType,this.tensorShape)}destroy(){H(`verbose`,()=>`[WebNN] TensorWrapper.destroy`),this.mlTensor.destroy()}write(e){this.mlContext.writeTensor(this.mlTensor,e)}async read(e,t){if(e){let e=await this.mlContext.readTensor(this.mlTensor),n=Cn(new Uint8Array(e));if(t){(t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)).set(n);return}else return n.buffer}else return t?this.mlContext.readTensor(this.mlTensor,t):this.mlContext.readTensor(this.mlTensor)}canReuseTensor(e,t,n){return this.mlContext===e&&this.dataType===t&&this.tensorShape.length===n.length&&this.tensorShape.every((e,t)=>e===n[t])}setIsInt64ToInt32Converted(e){this.isInt64ToInt32Converted=e}},kn=class{constructor(e,t){this.tensorManager=e,this.wrapper=t}get tensorWrapper(){return this.wrapper}releaseTensor(){this.tensorWrapper&&(this.tensorManager.releaseTensor(this.tensorWrapper),this.wrapper=void 0)}async ensureTensor(e,t,n,r){let i=t,a=this.tensorManager.getMLContext(e),o=i===`int64`&&!a.opSupportLimits().input.dataTypes.includes(`int64`);if(o&&(i=`int32`,H(`verbose`,()=>`[WebNN] TensorIdTracker.ensureTensor: convert dataType from int64 to int32`)),this.wrapper){if(this.wrapper.canReuseTensor(a,i,n))return this.wrapper.tensor;if(r){if(this.wrapper.byteLength!==Dn(i,n))throw Error(`Unable to copy data to tensor with different size.`);this.activeUpload=new Uint8Array(await this.wrapper.read())}this.tensorManager.releaseTensor(this.wrapper)}let s=typeof MLTensorUsage>`u`?void 0:MLTensorUsage.READ|MLTensorUsage.WRITE;return this.wrapper=await this.tensorManager.getCachedTensor(e,i,n,s,!0,!0,o),r&&this.activeUpload&&(this.wrapper.write(this.activeUpload),this.activeUpload=void 0),this.wrapper.tensor}upload(e){let t=e;if(this.wrapper)if(this.wrapper.shouldConvertInt64toInt32&&(t=Sn(e,!0),this.wrapper.setIsInt64ToInt32Converted(!0)),t.byteLength===this.wrapper.byteLength){this.wrapper.write(t);return}else H(`verbose`,()=>`Data size does not match tensor size. Releasing tensor.`),this.releaseTensor();this.activeUpload?this.activeUpload.set(t):this.activeUpload=new Uint8Array(t)}async download(e){if(this.activeUpload){let t=this.wrapper?.isInt64ToInt32Converted?Cn(this.activeUpload):this.activeUpload;if(e){e instanceof ArrayBuffer?new Uint8Array(e).set(t):new Uint8Array(e.buffer,e.byteOffset,e.byteLength).set(t);return}else return t.buffer}if(!this.wrapper)throw Error(`Tensor has not been created.`);return e?this.wrapper.read(this.wrapper?.shouldConvertInt64toInt32,e):this.wrapper.read(this.wrapper?.shouldConvertInt64toInt32)}},An=class{constructor(e){this.backend=e,this.tensorTrackersById=new Map,this.freeTensors=[],this.externalTensors=new Set}getMLContext(e){let t=this.backend.getMLContext(e);if(!t)throw Error(`MLContext not found for session.`);return t}reserveTensorId(){let e=Tn();return this.tensorTrackersById.set(e,new kn(this)),e}releaseTensorId(e){let t=this.tensorTrackersById.get(e);t&&(this.tensorTrackersById.delete(e),t.tensorWrapper&&this.releaseTensor(t.tensorWrapper))}async ensureTensor(e,t,n,r,i){H(`verbose`,()=>`[WebNN] TensorManager.ensureTensor {tensorId: ${t}, dataType: ${n}, shape: ${r}, copyOld: ${i}}`);let a=this.tensorTrackersById.get(t);if(!a)throw Error(`Tensor not found.`);return a.ensureTensor(e,n,r,i)}upload(e,t){let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);n.upload(t)}async download(e,t){H(`verbose`,()=>`[WebNN] TensorManager.download {tensorId: ${e}, dstBuffer: ${t?.byteLength}}`);let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);return n.download(t)}releaseTensorsForSession(e){for(let t of this.freeTensors)t.sessionId===e&&t.destroy();this.freeTensors=this.freeTensors.filter(t=>t.sessionId!==e)}registerTensor(e,t,n,r){let i=this.getMLContext(e),a=Tn(),o=new On({sessionId:e,context:i,tensor:t,dataType:n,shape:r});return this.tensorTrackersById.set(a,new kn(this,o)),this.externalTensors.add(o),a}async getCachedTensor(e,t,n,r,i,a,o=!1){let s=this.getMLContext(e);for(let[r,i]of this.freeTensors.entries())if(i.canReuseTensor(s,t,n)){H(`verbose`,()=>`[WebNN] Reusing tensor {dataType: ${t}, shape: ${n}}`);let i=this.freeTensors.splice(r,1)[0];return i.sessionId=e,i}H(`verbose`,()=>`[WebNN] MLContext.createTensor {dataType: ${t}, shape: ${n}}`);let c=await s.createTensor({dataType:t,shape:n,dimensions:n,usage:r,writable:i,readable:a});return new On({sessionId:e,context:s,tensor:c,dataType:t,shape:n,shouldConvertInt64toInt32:o})}releaseTensor(e){this.externalTensors.has(e)&&this.externalTensors.delete(e),this.freeTensors.push(e)}},jn=(...e)=>new An(...e)}),Nn,Pn,Fn,In=M(()=>{"use strict";V(),It(),xn(),Mn(),pn(),Nn=new Map([[1,`float32`],[10,`float16`],[6,`int32`],[12,`uint32`],[7,`int64`],[13,`uint64`],[22,`int4`],[21,`uint4`],[3,`int8`],[2,`uint8`],[9,`uint8`]]),Pn=(e,t)=>{if(e===t)return!0;if(e===void 0||t===void 0)return!1;let n=Object.keys(e).sort(),r=Object.keys(t).sort();return n.length===r.length&&n.every((n,i)=>n===r[i]&&e[n]===t[n])},Fn=class{constructor(e){this.tensorManager=jn(this),this.mlContextBySessionId=new Map,this.sessionIdsByMLContext=new Map,this.mlContextCache=[],this.sessionGraphInputs=new Map,this.temporaryGraphInputs=[],this.temporarySessionTensorIds=new Map,dn(e.logLevel,!!e.debug)}get currentSessionId(){if(this.activeSessionId===void 0)throw Error(`No active session`);return this.activeSessionId}onRunStart(e){H(`verbose`,()=>`[WebNN] onRunStart {sessionId: ${e}}`),this.activeSessionId=e}onRunEnd(e){H(`verbose`,()=>`[WebNN] onRunEnd {sessionId: ${e}}`);let t=this.temporarySessionTensorIds.get(e);if(t){for(let e of t)H(`verbose`,()=>`[WebNN] releasing temporary tensor {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e);this.temporarySessionTensorIds.delete(e),this.activeSessionId=void 0}}async createMLContext(e){if(e instanceof GPUDevice){let t=this.mlContextCache.findIndex(t=>t.gpuDevice===e);if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({gpuDevice:e,mlContext:t}),t}}else if(e===void 0){let e=this.mlContextCache.findIndex(e=>e.options===void 0&&e.gpuDevice===void 0);if(e!==-1)return this.mlContextCache[e].mlContext;{let e=await navigator.ml.createContext();return this.mlContextCache.push({mlContext:e}),e}}let t=this.mlContextCache.findIndex(t=>Pn(t.options,e));if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({options:e,mlContext:t}),t}}registerMLContext(e,t){this.mlContextBySessionId.set(e,t);let n=this.sessionIdsByMLContext.get(t);n||(n=new Set,this.sessionIdsByMLContext.set(t,n)),n.add(e),this.temporaryGraphInputs.length>0&&(this.sessionGraphInputs.set(e,this.temporaryGraphInputs),this.temporaryGraphInputs=[])}onReleaseSession(e){this.sessionGraphInputs.delete(e);let t=this.mlContextBySessionId.get(e);if(!t)return;this.tensorManager.releaseTensorsForSession(e),this.mlContextBySessionId.delete(e);let n=this.sessionIdsByMLContext.get(t);if(n.delete(e),n.size===0){this.sessionIdsByMLContext.delete(t);let e=this.mlContextCache.findIndex(e=>e.mlContext===t);e!==-1&&this.mlContextCache.splice(e,1)}}getMLContext(e){return this.mlContextBySessionId.get(e)}reserveTensorId(){return this.tensorManager.reserveTensorId()}releaseTensorId(e){H(`verbose`,()=>`[WebNN] releaseTensorId {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e)}async ensureTensor(e,t,n,r,i){let a=Nn.get(n);if(!a)throw Error(`Unsupported ONNX data type: ${n}`);return this.tensorManager.ensureTensor(e??this.currentSessionId,t,a,r,i)}async createTemporaryTensor(e,t,n){H(`verbose`,()=>`[WebNN] createTemporaryTensor {onnxDataType: ${t}, shape: ${n}}`);let r=Nn.get(t);if(!r)throw Error(`Unsupported ONNX data type: ${t}`);let i=this.tensorManager.reserveTensorId();await this.tensorManager.ensureTensor(e,i,r,n,!1);let a=this.temporarySessionTensorIds.get(e);return a?a.push(i):this.temporarySessionTensorIds.set(e,[i]),i}uploadTensor(e,t){if(!Ft().shouldTransferToMLTensor)throw Error(`Trying to upload to a MLTensor while shouldTransferToMLTensor is false`);H(`verbose`,()=>`[WebNN] uploadTensor {tensorId: ${e}, data: ${t.byteLength}}`),this.tensorManager.upload(e,t)}async downloadTensor(e,t){return this.tensorManager.download(e,t)}createMLTensorDownloader(e,t){return async()=>{let n=await this.tensorManager.download(e);return bn(n,t)}}registerMLTensor(e,t,n,r){let i=Nn.get(n);if(!i)throw Error(`Unsupported ONNX data type: ${n}`);let a=this.tensorManager.registerTensor(e,t,i,r);return H(`verbose`,()=>`[WebNN] registerMLTensor {tensor: ${t}, dataType: ${i}, dimensions: ${r}} -> {tensorId: ${a}}`),a}registerMLConstant(e,t,n,r,i,a,o=!1){if(!a)throw Error(`External mounted files are not available.`);let s=e;e.startsWith(`./`)&&(s=e.substring(2));let c=a.get(s);if(!c)throw Error(`File with name ${s} not found in preloaded files.`);if(t+n>c.byteLength)throw Error(`Out of bounds: data offset and length exceed the external file data size.`);let l=c.slice(t,t+n).buffer,u;switch(i.dataType){case`float32`:u=new Float32Array(l);break;case`float16`:u=typeof Float16Array<`u`&&Float16Array.from?new Float16Array(l):new Uint16Array(l);break;case`int32`:u=new Int32Array(l);break;case`uint32`:u=new Uint32Array(l);break;case`int64`:o?(u=Sn(new Uint8Array(l),!1),i.dataType=`int32`):u=new BigInt64Array(l);break;case`uint64`:u=new BigUint64Array(l);break;case`int8`:u=new Int8Array(l);break;case`int4`:case`uint4`:case`uint8`:u=new Uint8Array(l);break;default:throw Error(`Unsupported data type: ${i.dataType} in creating WebNN Constant from external data.`)}return H(`verbose`,()=>`[WebNN] registerMLConstant {dataType: ${i.dataType}, shape: ${i.shape}}} ${o?`(Note: it was int64 data type and registered to int32 as workaround)`:``}`),r.constant(i,u)}registerGraphInput(e){this.temporaryGraphInputs.push(e)}isGraphInput(e,t){let n=this.sessionGraphInputs.get(e);return n?n.includes(t):!1}isInt64Supported(e){return!!this.mlContextBySessionId.get(e)?.opSupportLimits().input.dataTypes.includes(`int64`)}flush(){}}}),Ln=M(()=>{"use strict";}),Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn=M(()=>{"use strict";pn(),Ln(),Rn=new Map([[64,250],[128,200],[256,200],[512,200],[2048,230],[4096,200],[8192,50],[16384,50],[32768,50],[65536,50],[131072,50],[262144,50],[524288,50],[1048576,50],[2097152,30],[4194304,20],[8388608,10],[12582912,10],[16777216,10],[26214400,15],[33554432,22],[44236800,2],[58982400,6],[67108864,6],[134217728,6],[167772160,6]]),zn=[],Bn=e=>Math.ceil(Number(e)/16)*16,Vn=e=>{for(let t=0;tHn++,Wn=async(e,t,n,r)=>{let i=Bn(n),a=e.device.createBuffer({size:i,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ});try{let o=e.getCommandEncoder();e.endComputePass(),o.copyBufferToBuffer(t,0,a,0,i),e.flush(),await a.mapAsync(GPUMapMode.READ);let s=a.getMappedRange();if(r){let e=r();return e.set(new Uint8Array(s,0,n)),e}else return new Uint8Array(s.slice(0,n))}finally{a.destroy()}},Gn=class{constructor(e){this.backend=e,this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.buffersPending=[],this.capturedPendingBuffers=new Map;for(let[e]of Rn)zn.push(e),this.freeBuffers.set(e,[]),this.freeUniformBuffers.set(e,[]);this.sessionCount=0}upload(e,t){let n=t.buffer,r=t.byteOffset,i=t.byteLength,a=Bn(i),o=this.storageCache.get(e);if(!o)throw Error(`gpu data for uploading does not exist`);if(Number(o.originalSize)!==i)throw Error(`inconsistent data size. gpu data size=${o.originalSize}, data size=${i}`);let s=this.backend.device.createBuffer({mappedAtCreation:!0,size:a,usage:GPUBufferUsage.MAP_WRITE|GPUBufferUsage.COPY_SRC}),c=s.getMappedRange();new Uint8Array(c).set(new Uint8Array(n,r,i)),s.unmap();let l=this.backend.device.createCommandEncoder();l.copyBufferToBuffer(s,0,o.gpuData.buffer,0,a),this.backend.device.queue.submit([l.finish()]),s.destroy(),H(`verbose`,()=>`[WebGPU] GpuDataManager.upload(id=${e})`)}memcpy(e,t){let n=this.storageCache.get(e);if(!n)throw Error(`source gpu data for memcpy does not exist`);let r=this.storageCache.get(t);if(!r)throw Error(`destination gpu data for memcpy does not exist`);if(n.originalSize!==r.originalSize)throw Error(`inconsistent source and destination gpu data size`);let i=Bn(n.originalSize),a=this.backend.getCommandEncoder();this.backend.endComputePass(),a.copyBufferToBuffer(n.gpuData.buffer,0,r.gpuData.buffer,0,i)}registerExternalBuffer(e,t,n){let r;if(n){if(r=n[0],e===n[1])return H(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, buffer is the same, skip.`),r;if(this.backend.capturedCommandList.has(this.backend.currentSessionId))throw Error(`Registering a different external buffer under graph capture mode is not supported yet. + Please use the previous external buffer!`)}else r=Un();return this.storageCache.set(r,{gpuData:{id:r,type:0,buffer:e},originalSize:t}),H(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, registered.`),r}unregisterExternalBuffer(e){e!==void 0&&(this.storageCache.delete(e),H(`verbose`,()=>`[WebGPU] GpuDataManager.unregisterExternalBuffer() => id=${e}`))}create(e,t=GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_SRC|GPUBufferUsage.COPY_DST){let n=Vn(e),r,i=(t&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE,a=(t&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM;if(i||a){let e=(i?this.freeBuffers:this.freeUniformBuffers).get(n);r=e&&e.length>0?e.pop():this.backend.device.createBuffer({size:n,usage:t})}else r=this.backend.device.createBuffer({size:n,usage:t});let o={id:Un(),type:0,buffer:r};return this.storageCache.set(o.id,{gpuData:o,originalSize:Number(e)}),H(`verbose`,()=>`[WebGPU] GpuDataManager.create(size=${e}) => id=${o.id}`),o}get(e){return this.storageCache.get(e)?.gpuData}release(e){let t=typeof e==`bigint`?Number(e):e,n=this.storageCache.get(t);if(!n){if(this.storageCache.size===0)return 0;throw Error(`releasing data does not exist`)}return H(`verbose`,()=>`[WebGPU] GpuDataManager.release(id=${t}), gpuDataId=${n.gpuData.id}`),this.storageCache.delete(t),this.buffersPending.push(n.gpuData.buffer),n.originalSize}async download(e,t){let n=this.storageCache.get(Number(e));if(!n)throw Error(`data does not exist`);await Wn(this.backend,n.gpuData.buffer,n.originalSize,t)}refreshPendingBuffers(){if(this.buffersPending.length!==0)if(this.backend.sessionStatus===`default`){for(let e of this.buffersPending){let t=Rn.get(e.size);if((e.usage&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE){let n=this.freeBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else if((e.usage&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM){let n=this.freeUniformBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else e.destroy()}this.buffersPending=[]}else{let e=this.capturedPendingBuffers.get(this.backend.currentSessionId);e||(e=[],this.capturedPendingBuffers.set(this.backend.currentSessionId,e));for(let t of this.buffersPending)e.push(t);this.buffersPending=[]}}dispose(){this.freeBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.freeUniformBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.capturedPendingBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.capturedPendingBuffers=new Map}onCreateSession(){this.sessionCount+=1}onReleaseSession(e){let t=this.capturedPendingBuffers.get(e);t&&(t.forEach(e=>{e.destroy()}),this.capturedPendingBuffers.delete(e)),--this.sessionCount,this.sessionCount===0&&(H(`warning`,()=>`[WebGPU] Clearing webgpu buffer cache`),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.storageCache=new Map)}},Kn=(...e)=>new Gn(...e)}),Jn,Yn,Xn=M(()=>{"use strict";Jn=class{constructor(e){Object.assign(this,e)}get cacheKey(){return this.key||=Object.getOwnPropertyNames(this).sort().map(e=>`${this[e]}`).join(`;`),this.key}},Yn=e=>new Jn(e)}),Zn,Qn,$n,er,G,tr,nr,rr,ir,K,ar,q,J,or,sr,cr,lr,Y=M(()=>{"use strict";V(),W(),Zn=64,Qn=(e,t)=>{if(t===3)throw Error(`vec3 has same alignment as vec4, use vec4 instead`);switch(Number(e)){case 10:return t>1?`vec${t}`:`f16`;case 1:return t>1?`vec${t}`:`f32`;case 6:return t>1?`vec${t}`:`i32`;case 12:return t>1?`vec${t}`:`u32`;case 7:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`i32`];case 13:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`u32`];case 9:if(t!==4)throw Error(`bool must be vec4`);return[`u32`,`vec4`];case 22:return`i32`;case 21:return`u32`;default:throw Error(`Unknown data type: ${e}`)}},$n=(e,t=1)=>{let n=Qn(e,t);return typeof n==`string`?n:n[0]},er=(e,t=1)=>{let n=Qn(e,t);return typeof n==`string`?n:n[1]},G=(...e)=>{let t=[];return e.forEach(e=>{e.length!==0&&t.push({type:12,data:e},{type:12,data:U.computeStrides(e)})}),t},tr=e=>e%4==0?4:e%2==0?2:1,nr=(e=`f32`,t,n=`0`)=>!t||t===1?`${e}(${n})`:`vec${t}<${e}>(${n})`,rr=(e,t,n)=>e===`f32`?n:t===1?`f32(${n})`:`vec${t}(${n})`,ir=(e,t)=>t===4?`(${e}.x + ${e}.y + ${e}.z + ${e}.w)`:t===2?`(${e}.x + ${e}.y)`:t===3?`(${e}.x + ${e}.y + ${e}.z)`:e,K=(e,t,n,r)=>e.startsWith(`uniforms.`)&&n>4?typeof t==`string`?r===`f16`?`${e}[(${t}) / 8][(${t}) % 8 / 4][(${t}) % 8 % 4]`:`${e}[(${t}) / 4][(${t}) % 4]`:r===`f16`?`${e}[${Math.floor(t/8)}][${Math.floor(t%8/4)}][${t%8%4}]`:`${e}[${Math.floor(t/4)}][${t%4}]`:n>1?`${e}[${t}]`:e,ar=(e,t,n,r,i)=>{let a=typeof n==`number`,o=a?n:n.length,s=[...Array(o).keys()],c=o<2?`u32`:o<=4?`vec${o}`:`array`,l=Qn(t,i),u=typeof l==`string`?l:l[1],d=typeof l==`string`?l:l[0],f={indices:c,value:u,storage:d,tensor:t},p=e=>typeof e==`string`?e:`${e}u`,m={offsetToIndices:!1,indicesToOffset:!1,broadcastedIndicesToOffset:!1,set:!1,setByIndices:!1,get:!1,getByIndices:!1},h=a?`uniforms.`:``,g=`${h}${e}_shape`,_=`${h}${e}_strides`,v=``;for(let e=0;e ${f.indices} { + var indices: ${f.indices}; + var current = offset; + ${v} + return indices; + }`,b=t=>(m.offsetToIndices=!0,o<2?t:`o2i_${e}(${t})`),x=[];if(o>=2)for(let e=o-1;e>=0;e--)x.push(`${K(_,e,o)} * (indices[${e}])`);let S=o<2?``:` + fn i2o_${e}(indices: ${f.indices}) -> u32 { + return ${x.join(`+`)}; + }`,C=t=>(m.indicesToOffset=!0,o<2?t:`i2o_${e}(${t})`),w=(...e)=>o===0?`0u`:`${f.indices}(${e.map(p).join(`,`)})`,T=(e,t)=>o<2?`${e}`:`${K(e,t,o)}`,E=(e,t,n)=>o<2?`${e}=${n};`:`${K(e,t,o)}=${n};`,D={},O=(t,n)=>{m.broadcastedIndicesToOffset=!0;let r=`${n.name}broadcastedIndicesTo${e}Offset`;if(r in D)return`${r}(${t})`;let i=[];for(let e=o-1;e>=0;e--){let t=n.indicesGet(`outputIndices`,e+n.rank-o);i.push(`${T(_,e)} * (${t} % ${T(g,e)})`)}return D[r]=`fn ${r}(outputIndices: ${n.type.indices}) -> u32 { + return ${i.length>0?i.join(`+`):`0u`}; + }`,`${r}(${t})`},k=(t,n)=>(()=>{if(f.storage===f.value)return`${e}[${t}]=${n};`;if(f.storage===`vec2`&&f.value===`i32`)return`${e}[${t}]=vec2(u32(${n}), select(0u, 0xFFFFFFFFu, ${n} < 0));`;if(f.storage===`vec2`&&f.value===`u32`)return`${e}[${t}]=vec2(u32(${n}), 0u);`;if(f.storage===`u32`&&f.value===`vec4`)return`${e}[${t}]=dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(${n}));`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),A=t=>(()=>{if(f.storage===f.value)return`${e}[${t}]`;if(f.storage===`vec2`&&f.value===`i32`)return`i32(${e}[${t}].x)`;if(f.storage===`vec2`&&f.value===`u32`)return`u32(${e}[${t}].x)`;if(f.storage===`u32`&&f.value===`vec4`)return`vec4(bool(${e}[${t}] & 0xFFu), bool(${e}[${t}] & 0xFF00u), bool(${e}[${t}] & 0xFF0000u), bool(${e}[${t}] & 0xFF000000u))`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),ee=o<2?``:` + fn get_${e}ByIndices(indices: ${f.indices}) -> ${u} { + return ${A(`i2o_${e}(indices)`)}; + }`,te=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` + fn get_${e}(${t}) -> ${u} { + return get_${e}ByIndices(${w(n)}); + }`})(),ne=(...t)=>{if(t.length!==o)throw Error(`indices length must be ${o}`);let n=t.map(p).join(`,`);return o===0?A(`0u`):o===1?A(n[0]):(m.get=!0,m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}(${n})`)},j=t=>o<2?A(t):(m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}ByIndices(${t})`),re=o<2?``:` + fn set_${e}ByIndices(indices: ${f.indices}, value: ${u}) { + ${k(`i2o_${e}(indices)`,`value`)} + }`,ie=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` + fn set_${e}(${t}, value: ${u}) { + set_${e}ByIndices(${w(n)}, value); + }`})();return{impl:()=>{let e=[],t=!1;return m.offsetToIndices&&(e.push(y),t=!0),m.indicesToOffset&&(e.push(S),t=!0),m.broadcastedIndicesToOffset&&(Object.values(D).forEach(t=>e.push(t)),t=!0),m.set&&(e.push(ie),t=!0),m.setByIndices&&(e.push(re),t=!0),m.get&&(e.push(te),t=!0),m.getByIndices&&(e.push(ee),t=!0),!a&&t&&e.unshift(`const ${g} = ${f.indices}(${n.join(`,`)});`,`const ${_} = ${f.indices}(${U.computeStrides(n).join(`,`)});`),e.join(` +`)},type:f,offsetToIndices:b,indicesToOffset:C,broadcastedIndicesToOffset:O,indices:w,indicesGet:T,indicesSet:E,set:(...t)=>{if(t.length!==o+1)throw Error(`indices length must be ${o}`);let n=t[o];if(typeof n!=`string`)throw Error(`value must be string`);let r=t.slice(0,o).map(p).join(`,`);return o===0?k(`0u`,n):o===1?k(r[0],n):(m.set=!0,m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}(${r}, ${n})`)},setByOffset:k,setByIndices:(t,n)=>o<2?k(t,n):(m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}ByIndices(${t}, ${n});`),get:ne,getByOffset:A,getByIndices:j,usage:r,name:e,strides:_,shape:g,rank:o}},q=(e,t,n,r=1)=>ar(e,t,n,`input`,r),J=(e,t,n,r=1)=>ar(e,t,n,`output`,r),or=(e,t,n)=>ar(e,t,n,`atomicOutput`,1),sr=(e,t,n,r=1)=>ar(e,t,n,`internal`,r),cr=class{constructor(e,t){this.normalizedDispatchGroup=e,this.limits=t,this.internalVariables=[],this.variables=[],this.uniforms=[],this.variableIndex=0}guardAgainstOutOfBoundsWorkgroupSizes(e){return`if (global_idx >= ${typeof e==`number`?`${e}u`:e}) { return; }`}mainStart(e=Zn){let t=typeof e==`number`?e:e[0],n=typeof e==`number`?1:e[1],r=typeof e==`number`?1:e[2];if(t>this.limits.maxComputeWorkgroupSizeX||n>this.limits.maxComputeWorkgroupSizeY||r>this.limits.maxComputeWorkgroupSizeZ)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup size [${this.limits.maxComputeWorkgroupSizeX}, ${this.limits.maxComputeWorkgroupSizeY}, ${this.limits.maxComputeWorkgroupSizeZ}].`);if(t*n*r>this.limits.maxComputeInvocationsPerWorkgroup)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup invocations ${this.limits.maxComputeInvocationsPerWorkgroup}.`);let i=this.normalizedDispatchGroup[1]===1&&this.normalizedDispatchGroup[2]===1,a=i?`@builtin(global_invocation_id) global_id : vec3, + @builtin(workgroup_id) workgroup_id : vec3, + @builtin(local_invocation_index) local_idx : u32, + @builtin(local_invocation_id) local_id : vec3`:`@builtin(global_invocation_id) global_id : vec3, + @builtin(local_invocation_id) local_id : vec3, + @builtin(local_invocation_index) local_idx : u32, + @builtin(workgroup_id) workgroup_id : vec3, + @builtin(num_workgroups) num_workgroups : vec3`,o=i?`let global_idx = global_id.x; + let workgroup_index = workgroup_id.x;`:`let workgroup_index = workgroup_id.z * num_workgroups[0] * num_workgroups[1] + + workgroup_id.y * num_workgroups[0] + workgroup_id.x; + let global_idx = workgroup_index * ${t*n*r}u + local_idx;`;return`@compute @workgroup_size(${t}, ${n}, ${r}) + fn main(${a}) { + ${o} + `}appendVariableUniforms(e){e.rank!==0&&(e.shape.startsWith(`uniforms.`)&&this.uniforms.push({name:e.shape.replace(`uniforms.`,``),type:`u32`,length:e.rank}),e.strides.startsWith(`uniforms.`)&&this.uniforms.push({name:e.strides.replace(`uniforms.`,``),type:`u32`,length:e.rank}))}declareVariable(e,t){if(e.usage===`internal`)throw Error(`cannot use internal variable with declareVariable(). use registerInternalVariables() instead.`);this.variables.push(e),this.appendVariableUniforms(e);let n=e.usage===`input`?`read`:`read_write`,r=e.usage===`atomicOutput`?`atomic`:e.type.storage;return`@group(0) @binding(${t}) var ${e.name}: array<${r}>;`}declareVariables(...e){return e.map(e=>this.declareVariable(e,this.variableIndex++)).join(` +`)}registerInternalVariable(e){if(e.usage!==`internal`)throw Error(`cannot use input or output variable with registerInternalVariable(). use declareVariables() instead.`);this.internalVariables.push(e),this.appendVariableUniforms(e)}registerInternalVariables(...e){return e.forEach(e=>this.registerInternalVariable(e)),this}registerUniform(e,t,n=1){return this.uniforms.push({name:e,type:t,length:n}),this}registerUniforms(e){return this.uniforms=this.uniforms.concat(e),this}uniformDeclaration(){if(this.uniforms.length===0)return``;let e=[];for(let{name:t,type:n,length:r}of this.uniforms)if(r&&r>4)n===`f16`?e.push(`@align(16) ${t}:array, ${Math.ceil(r/8)}>`):e.push(`${t}:array, ${Math.ceil(r/4)}>`);else{let i=r==null||r===1?n:`vec${r}<${n}>`;e.push(`${t}:${i}`)}return` + struct Uniforms { ${e.join(`, `)} }; + @group(0) @binding(${this.variableIndex}) var uniforms: Uniforms;`}get additionalImplementations(){return this.uniformDeclaration()+this.variables.map(e=>e.impl()).join(` +`)+this.internalVariables.map(e=>e.impl()).join(` +`)}get variablesInfo(){if(this.uniforms.length===0)return;let e=e=>[12,10,1,6][[`u32`,`f16`,`f32`,`i32`].indexOf(e)];return this.uniforms.map(t=>[e(t.type),t.length??1])}},lr=(e,t)=>new cr(e,t)}),ur,dr,fr,X,pr,mr,hr,gr,_r,vr=M(()=>{"use strict";V(),W(),Xn(),Y(),ur=(e,t)=>{if(!e||e.length!==1)throw Error(`Transpose requires 1 input.`);if(t.length!==0&&t.length!==e[0].dims.length)throw Error(`perm size ${t.length} does not match input rank ${e[0].dims.length}`)},dr=(e,t)=>t.length===0?[...Array(e).keys()].reverse():t,fr=(e,t)=>U.sortBasedOnPerm(e,dr(e.length,t)),X=(e,t,n,r)=>{let i=`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { + var a: ${n.type.indices};`;for(let n=0;n{let n=[],r=[];for(let i=0;i{let n=0;for(let r=0;r{let n=e.dataType,r=e.dims.length,i=dr(r,t),a=fr(e.dims,i),o=e.dims,s=a,c=r<2||mr(i,e.dims),l;if(c)return l=e=>{let t=q(`input`,n,o,4),r=J(`output`,n,s,4);return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(t,r)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + output[global_idx] = input[global_idx]; + }`},{name:`TransposeCopy`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64/4)},programUniforms:[{type:12,data:Math.ceil(t/4)}]}},getShaderSource:l};let{newShape:u,newPerm:d}=pr(e.dims,i),f=U.areEqual(d,[2,3,1]),p=U.areEqual(d,[3,1,2]);if(u.length===2||f||p){o=f?[u[0],u[1]*u[2]]:p?[u[0]*u[1],u[2]]:u,s=[o[1],o[0]];let t=16;return l=e=>{let r=q(`a`,n,o.length),i=J(`output`,n,s.length);return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(r,i)} + var tile : array, ${t}>; + ${e.mainStart([t,t,1])} + let stride = (uniforms.output_shape[1] - 1) / ${t} + 1; + let workgroup_id_x = workgroup_index % stride; + let workgroup_id_y = workgroup_index / stride; + let input_col = workgroup_id_y * ${t}u + local_id.x; + let input_row = workgroup_id_x * ${t}u + local_id.y; + if (input_row < uniforms.a_shape[0] && input_col < uniforms.a_shape[1]) { + tile[local_id.y][local_id.x] = ${r.getByIndices(`${r.type.indices}(input_row, input_col)`)}; + } + workgroupBarrier(); + + let output_col = workgroup_id_x * ${t}u + local_id.x; + let output_row = workgroup_id_y * ${t}u + local_id.y; + if (output_row < uniforms.output_shape[0] && output_col < uniforms.output_shape[1]) { + ${i.setByIndices(`${i.type.indices}(output_row, output_col)`,`tile[local_id.x][local_id.y]`)} + } + }`},{name:`TransposeShared`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let n=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(s[1]/t),y:Math.ceil(s[0]/t)},programUniforms:[{type:12,data:n},...G(o,s)]}},getShaderSource:l}}return l=e=>{let t=q(`a`,n,o.length),a=J(`output`,n,s.length);return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(t,a)} + + ${X(i,r,t,a)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let indices = ${a.offsetToIndices(`global_idx`)}; + let aIndices = perm(indices); + + ${a.setByOffset(`global_idx`,t.getByIndices(`aIndices`))} + }`},{name:`Transpose`,shaderCache:{hint:`${t}`,inputDependencies:[`rank`]},getRunData:()=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:[{type:12,data:t},...G(o,s)]}},getShaderSource:l}},gr=(e,t)=>{ur(e.inputs,t.perm),e.compute(hr(e.inputs[0],t.perm))},_r=e=>Yn({perm:e.perm})}),yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,Lr,Rr,zr,Br=M(()=>{"use strict";V(),W(),Y(),pi(),vr(),yr={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate * candidate`,logSumExp:`bestValue + exp(candidate)`,l1:`bestValue + abs(candidate)`,l2:`bestValue + candidate * candidate`,logSum:`bestValue + candidate`},br={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate`,logSumExp:`bestValue + candidate`,l1:`bestValue + candidate`,l2:`bestValue + candidate`,logSum:`bestValue + candidate`},xr={max:`_A[offset]`,min:`_A[offset]`,mean:`0`,sum:`0`,prod:`1`,sumSquare:`0`,logSumExp:`0`,l1:`0`,l2:`0`,logSum:`0`},Sr={max:`bestValue`,min:`bestValue`,sum:`bestValue`,prod:`bestValue`,sumSquare:`bestValue`,logSumExp:`log(bestValue)`,l1:`bestValue`,l2:`sqrt(bestValue)`,logSum:`log(bestValue)`},Cr=(e,t)=>{let n=[];for(let r=t-e;r{let n=[],r=e.length;for(let i=0;ie[t]);return[n,i]},Tr=(e,t)=>{let n=e.length+t.length,r=[],i=0;for(let a=0;a{for(let n=0;n{let n=[];if(!Er(e,t)){for(let r=0;rn.push(e))}return n},Or=(e,t,n,r,i,a,o)=>{let s=n[0].dims,c=U.size(a),l=U.size(o),u=q(`_A`,n[0].dataType,s),d=J(`output`,i,a),f=64;c===1&&(f=256);let p=` + var aBestValues : array; + `,m=e=>` + ${e.registerUniform(`reduceSize`,`u32`).declareVariables(u,d)} + ${p} + fn DIV_CEIL(a : u32, b : u32) -> u32 { + return ((a - 1u) / b + 1u); + } + ${e.mainStart(f)} + + let outputIndex = global_idx / ${f}; + let offset = outputIndex * uniforms.reduceSize; + + var bestValue = f32(${xr[r]}); + let Length = uniforms.reduceSize; + for (var k = local_idx; k < Length; k = k + ${f}) { + let candidate = f32(${u.getByOffset(`offset + k`)}); + bestValue = ${yr[r]}; + } + aBestValues[local_idx] = bestValue; + workgroupBarrier(); + + var reduceSize = min(Length, ${f}u); + for (var currentSize = reduceSize / 2u; reduceSize > 1u; + currentSize = reduceSize / 2u) { + let interval = DIV_CEIL(reduceSize, 2u); + if (local_idx < currentSize) { + let candidate = aBestValues[local_idx + interval]; + bestValue = ${br[r]}; + aBestValues[local_idx] = bestValue; + } + reduceSize = interval; + workgroupBarrier(); + } + + if (local_idx == 0u) { + ${d.setByOffset(`outputIndex`,`${r===`mean`?`${d.type.storage}(bestValue / f32(uniforms.reduceSize))`:`${d.type.storage}(${Sr[r]})`}`)}; + } + }`;return{name:e,shaderCache:{hint:`${t};${f}`,inputDependencies:[`type`]},getShaderSource:m,getRunData:()=>({outputs:[{dims:a,dataType:i}],dispatchGroup:{x:c},programUniforms:[{type:12,data:l}]})}},kr=(e,t,n,r)=>{let i=e.inputs.length===1?n:Wr(e.inputs,n),a=i.axes;a.length===0&&!i.noopWithEmptyAxes&&(a=e.inputs[0].dims.map((e,t)=>t));let o=U.normalizeAxes(a,e.inputs[0].dims.length),s=o,c=e.inputs[0],l=Dr(s,e.inputs[0].dims.length);l.length>0&&(c=e.compute(hr(e.inputs[0],l),{inputs:[0],outputs:[-1]})[0],s=Cr(s.length,c.dims.length));let[u,d]=wr(c.dims,s),f=u;i.keepDims&&(f=Tr(u,o)),e.compute(Or(t,i.cacheKey,[c],r,e.inputs[0].dataType,f,d),{inputs:[c]})},Ar=(e,t)=>{kr(e,`ReduceMeanShared`,t,`mean`)},jr=(e,t)=>{kr(e,`ReduceL1Shared`,t,`l1`)},Mr=(e,t)=>{kr(e,`ReduceL2Shared`,t,`l2`)},Nr=(e,t)=>{kr(e,`ReduceLogSumExpShared`,t,`logSumExp`)},Pr=(e,t)=>{kr(e,`ReduceMaxShared`,t,`max`)},Fr=(e,t)=>{kr(e,`ReduceMinShared`,t,`min`)},Ir=(e,t)=>{kr(e,`ReduceProdShared`,t,`prod`)},Lr=(e,t)=>{kr(e,`ReduceSumShared`,t,`sum`)},Rr=(e,t)=>{kr(e,`ReduceSumSquareShared`,t,`sumSquare`)},zr=(e,t)=>{kr(e,`ReduceLogSumShared`,t,`logSum`)}}),Vr,Hr,Ur,Wr,Gr,Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi=M(()=>{"use strict";V(),W(),Xn(),Y(),Br(),Vr=e=>{if(!e||e.length===0||e.length>2)throw Error(`Reduce op requires 1 or 2 inputs.`);if(e.length===2&&e[1].dims.length!==1)throw Error(`Invalid axes input dims.`)},Hr=e=>[``,``,`var value = ${e.getByIndices(`input_indices`)};`,``],Ur=(e,t,n,r,i,a,o=!1,s=!1)=>{let c=[],l=n[0].dims,u=l.length,d=U.normalizeAxes(i,u),f=!s&&d.length===0;l.forEach((e,t)=>{f||d.indexOf(t)>=0?o&&c.push(1):c.push(e)});let p=c.length,m=U.size(c);return{name:e,shaderCache:t,getShaderSource:e=>{let t=[],i=q(`_A`,n[0].dataType,u),s=J(`output`,a,p),c=r(i,s,d),m=c[2];for(let e=0,n=0;e=0?(o&&n++,m=`for(var j${e}: u32 = 0; j${e} < ${l[e]}; j${e}++) { + ${c[2].includes(`last_index`)?`let last_index = j${e};`:``} + ${i.indicesSet(`input_indices`,e,`j${e}`)} + ${m} + }`):(t.push(`${i.indicesSet(`input_indices`,e,s.indicesGet(`output_indices`,n))};`),n++);return` + + ${e.registerUniform(`output_size`,`u32`).declareVariables(i,s)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + var input_indices: ${i.type.indices}; + let output_indices = ${s.offsetToIndices(`global_idx`)}; + + ${t.join(` +`)} + ${c[0]} // init ops for reduce max/min + ${c[1]} + ${m} + ${c[3]} + ${c.length===4?s.setByOffset(`global_idx`,`value`):c.slice(4).join(` +`)} + }`},getRunData:()=>({outputs:[{dims:c,dataType:a}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:[{type:12,data:m},...G(l,c)]})}},Wr=(e,t)=>{let n=[];return e[1].dims[0]>0&&e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),Yn({axes:n,keepDims:t.keepDims,noopWithEmptyAxes:t.noopWithEmptyAxes})},Gr=(e,t,n,r)=>{let i=e.inputs,a=i.length===1?n:Wr(i,n);e.compute(Ur(t,{hint:a.cacheKey,inputDependencies:[`rank`]},[i[0]],a.noopWithEmptyAxes&&a.axes.length===0?Hr:r,a.axes,i[0].dataType,a.keepDims,a.noopWithEmptyAxes),{inputs:[0]})},Kr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceLogSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,`value = log(value);`])},qr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceL1`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += abs(${e.getByIndices(`input_indices`)});`,``])},Jr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceL2`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += (t * t);`,`value = sqrt(value);`])},Yr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceLogSumExp`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += exp(${e.getByIndices(`input_indices`)});`,`value = log(value);`])},Xr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceMax`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(e.indicesSet(`input_indices`,t,0));return[`${r.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = max(value, ${e.getByIndices(`input_indices`)});`,``]})},Zr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceMean`,t,(t,n,r)=>{let i=1;for(let n=0;n=0||r.length===0)&&(i*=e.inputs[0].dims[n]);return[`var sum = f32(0);`,``,`sum += f32(${t.getByIndices(`input_indices`)});`,`let value = ${n.type.value}(sum / ${i});`]})},Qr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceMin`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(`input_indices[${t}] = 0;`);return[`${r.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = min(value, ${e.getByIndices(`input_indices`)});`,``]})},$r=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceProd`,t,(e,t)=>[`var value = ${t.type.storage}(1);`,``,`value *= ${e.getByIndices(`input_indices`)};`,``])},ei=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,``])},ti=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceSumSquare`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += t * t;`,``])},ni=(e,t,n)=>{if(t.length===0)return n;let r=1,i=1;for(let n=0;n1024},ri=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Zr(e,t):Ar(e,t)},ii=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?qr(e,t):jr(e,t)},ai=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Jr(e,t):Mr(e,t)},oi=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Yr(e,t):Nr(e,t)},si=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Xr(e,t):Pr(e,t)},ci=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Qr(e,t):Fr(e,t)},li=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?$r(e,t):Ir(e,t)},ui=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ei(e,t):Lr(e,t)},di=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ti(e,t):Rr(e,t)},fi=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Kr(e,t):zr(e,t)}}),mi,hi,gi,_i,vi=M(()=>{"use strict";V(),Xn(),pi(),mi=e=>{if(!e||e.length===0||e.length>2)throw Error(`ArgMinMaxOp op requires 1 or 2 inputs.`);if(e[0].dataType!==1)throw Error(`Invalid input type.`)},hi=(e,t)=>{mi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)}; +var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`<=`:`<`} value) { + value = ${e.getByIndices(`input_indices`)}; + best_index = i32(last_index); + }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Ur(`ArgMin`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},gi=(e,t)=>{mi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)}; +var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`>=`:`>`} value) { + value = ${e.getByIndices(`input_indices`)}; + best_index = i32(last_index); + }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Ur(`argMax`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},_i=e=>Yn(e)}),yi,bi,xi,Si,Ci,wi,Ti,Ei,Di=M(()=>{"use strict";V(),W(),Ln(),Y(),yi=(e,t)=>{let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5];if(o&&s)throw Error(`Attention cannot have both past and attention_bias`);if(n.dims.length!==3)throw Error(`Input "input" must have 3 dimensions`);let c=n.dims[0],l=n.dims[1],u=n.dims[2];if(i.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimensions`);if(r.dims.length!==2)throw Error(`Input "weights" is expected to have 2 dimensions`);if(r.dims[0]!==u)throw Error(`Input 1 dimension 0 should have same length as dimension 2 of input 0`);if(i.dims[0]!==r.dims[1])throw Error(`Input "bias" dimension 0 should have same length as dimension 1 of input "weights"`);let d=i.dims[0]/3,f=d,p=f;if(t.qkvHiddenSizes.length>0){if(t.qkvHiddenSizes.length!==3)throw Error(`qkv_hidden_sizes attribute should have 3 elements`);for(let e of t.qkvHiddenSizes)if(e%t.numHeads!==0)throw Error(`qkv_hidden_sizes should be divisible by num_heads`);d=t.qkvHiddenSizes[0],f=t.qkvHiddenSizes[1],p=t.qkvHiddenSizes[2]}let m=l;if(d!==f)throw Error(`qkv_hidden_sizes first element should be same as the second`);if(i.dims[0]!==d+f+p)throw Error(`Input "bias" dimension 0 should have same length as sum of Q/K/V hidden sizes`);let h=0;if(o){if(f!==p)throw Error(`Input "past" expect k_hidden_size == v_hidden_size`);if(o.dims.length!==5)throw Error(`Input "past" must have 5 dimensions`);if(o.dims[0]!==2)throw Error(`Input "past" first dimension must be 2`);if(o.dims[1]!==c)throw Error(`Input "past" second dimension must be batch_size`);if(o.dims[2]!==t.numHeads)throw Error(`Input "past" third dimension must be num_heads`);if(o.dims[4]!==f/t.numHeads)throw Error(`Input "past" fifth dimension must be k_hidden_size / num_heads`);t.pastPresentShareBuffer||(h=o.dims[3])}let g=m+h,_=-1,v=0;if(a)throw Error(`Mask not supported`);if(o)throw Error(`past is not supported`);if(s){if(s.dims.length!==4)throw Error(`Input "attention_bias" must have 4 dimensions`);if(s.dims[0]!==c||s.dims[1]!==t.numHeads||s.dims[2]!==l||s.dims[3]!==g)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:c,sequenceLength:l,pastSequenceLength:h,kvSequenceLength:m,totalSequenceLength:g,maxSequenceLength:_,inputHiddenSize:u,hiddenSize:d,vHiddenSize:p,headSize:Math.floor(d/t.numHeads),vHeadSize:Math.floor(p/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:!1,qkvFormat:1}},bi=(e,t,n)=>t&&e?` + let total_sequence_length_input = u32(${t.getByOffset(`0`)}); + let present_sequence_length = max(total_sequence_length_input, uniforms.past_sequence_length); + let is_subsequent_prompt: bool = sequence_length > 1 && sequence_length != total_sequence_length_input; + let is_first_prompt: bool = is_subsequent_prompt == false && sequence_length == total_sequence_length_input; + total_sequence_length = u32(${e?.getByOffset(`batchIdx`)}) + 1; + var past_sequence_length: u32 = 0; + if (is_first_prompt == false) { + past_sequence_length = total_sequence_length - sequence_length; + } + `:` + ${n?`let past_sequence_length = uniforms.past_sequence_length`:``}; + let present_sequence_length = total_sequence_length; + `,xi=(e,t,n,r,i,a,o,s)=>{let c=tr(o?1:a),l=64,u=a/c;u{let n=J(`x`,e.dataType,e.dims,c),r=[n],i=o?q(`seq_lens`,o.dataType,o.dims):void 0;i&&r.push(i);let a=s?q(`total_sequence_length_input`,s.dataType,s.dims):void 0;a&&r.push(a);let u=er(e.dataType),d=[{name:`batch_size`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`total_sequence_length`,type:`u32`},{name:`elements_per_thread`,type:`u32`}];return` + var thread_max: array; + var thread_sum: array; + ${t.registerUniforms(d).declareVariables(...r)} + ${t.mainStart([l,1,1])} + let batchIdx = workgroup_id.z / uniforms.num_heads; + let headIdx = workgroup_id.z % uniforms.num_heads; + let sequence_length = uniforms.sequence_length; + var total_sequence_length = uniforms.total_sequence_length; + ${bi(i,a,!1)} + let local_offset = local_idx * uniforms.elements_per_thread; + let offset = (global_idx / ${l}) * uniforms.total_sequence_length + local_offset; + let seq_causal_length = ${o?`u32(past_sequence_length + workgroup_id.y + 1)`:`total_sequence_length`}; + var thread_max_vector = ${m}(-3.402823e+38f); + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + thread_max_vector = max(${m}(x[offset + i]), thread_max_vector); + } + thread_max[local_idx] = ${(()=>{switch(c){case 1:return`thread_max_vector`;case 2:return`max(thread_max_vector.x, thread_max_vector.y)`;case 4:return`max(max(thread_max_vector.x, thread_max_vector.y), max(thread_max_vector.z, thread_max_vector.w))`;default:throw Error(`Unsupported components: ${c}`)}})()}; + workgroupBarrier(); + + var max_value = f32(-3.402823e+38f); + for (var i = 0u; i < ${l}; i++) { + max_value = max(thread_max[i], max_value); + } + + var sum_vector = ${m}(0); + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + sum_vector += exp(${m}(x[offset + i]) - max_value); + } + thread_sum[local_idx] = ${(()=>{switch(c){case 1:return`sum_vector`;case 2:return`sum_vector.x + sum_vector.y`;case 4:return`sum_vector.x + sum_vector.y + sum_vector.z + sum_vector.w`;default:throw Error(`Unsupported components: ${c}`)}})()}; + workgroupBarrier(); + + var sum: f32 = 0; + for (var i = 0u; i < ${l}; i++) { + sum += thread_sum[i]; + } + + if (sum == 0) { + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + x[offset + i] = ${n.type.value}(${u}(1.0) / ${u}(seq_causal_length)); + } + } else { + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + var f32input = ${m}(x[offset + i]); + x[offset + i] = ${n.type.value}(exp(f32input - max_value) / sum); + } + } + ${o?` + for (var total_seq_id: u32 = seq_causal_length; total_seq_id + local_offset < uniforms.total_sequence_length; total_seq_id++) { + x[offset + total_seq_id] = ${n.type.value}(${u}(0)); + }`:``}; + }`};return{name:`AttentionProbsSoftmax`,shaderCache:{hint:`${l};${p};${c}`,inputDependencies:h},getShaderSource:g,getRunData:()=>({outputs:[],dispatchGroup:{x:1,y:i,z:t*n},programUniforms:f})}},Si=(e,t,n,r,i,a,o,s,c)=>{let l=o+a.kvSequenceLength,u=[a.batchSize,a.numHeads,a.sequenceLength,l],d=e>1&&r,f=a.kvNumHeads?a.kvNumHeads:a.numHeads,p=d?[a.batchSize,f,l,a.headSize]:void 0,m=a.nReps?a.nReps:1,h=a.scale===0?1/Math.sqrt(a.headSize):a.scale,g=tr(a.headSize),_=a.headSize/g,v=12,y={x:Math.ceil(l/v),y:Math.ceil(a.sequenceLength/v),z:a.batchSize*a.numHeads},b=[{type:12,data:a.sequenceLength},{type:12,data:_},{type:12,data:l},{type:12,data:a.numHeads},{type:12,data:a.headSize},{type:1,data:h},{type:12,data:o},{type:12,data:a.kvSequenceLength},{type:12,data:m}],x=d&&r&&U.size(r.dims)>0,S=[`type`,`type`];x&&S.push(`type`),i&&S.push(`type`),s&&S.push(`type`),c&&S.push(`type`);let C=[{dims:u,dataType:t.dataType,gpuDataType:0}];d&&C.push({dims:p,dataType:t.dataType,gpuDataType:0});let w=e=>{let a=q(`q`,t.dataType,t.dims,g),o=q(`key`,n.dataType,n.dims,g),l=[a,o];if(x){let e=q(`past_key`,r.dataType,r.dims,g);l.push(e)}i&&l.push(q(`attention_bias`,i.dataType,i.dims));let f=s?q(`seq_lens`,s.dataType,s.dims):void 0;f&&l.push(f);let h=c?q(`total_sequence_length_input`,c.dataType,c.dims):void 0;h&&l.push(h);let _=J(`output`,t.dataType,u),y=[_];d&&y.push(J(`present_key`,t.dataType,p,g));let b=er(1,g),S=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`alpha`,type:`f32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` + const TILE_SIZE = ${v}u; + + var tileQ: array<${a.type.storage}, ${v*v}>; + var tileK: array<${a.type.storage}, ${v*v}>; + ${e.registerUniforms(S).declareVariables(...l,...y)} + ${e.mainStart([v,v,1])} + // x holds the N and y holds the M + let headIdx = workgroup_id.z % uniforms.num_heads; + let kvHeadIdx = ${m===1?`headIdx`:`headIdx / uniforms.n_reps`}; + let kv_num_heads = ${m===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; + let batchIdx = workgroup_id.z / uniforms.num_heads; + let m = workgroup_id.y * TILE_SIZE; + let n = workgroup_id.x * TILE_SIZE; + let sequence_length = uniforms.M; + var total_sequence_length = uniforms.N; + ${bi(f,h,!0)} + let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; + let qOffset = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; + ${x&&d?`let pastKeyOffset = absKvHeadIdx * uniforms.past_sequence_length * uniforms.K;`:``}; + let kOffset = absKvHeadIdx * uniforms.kv_sequence_length * uniforms.K; + ${d?`let presentKeyOffset = absKvHeadIdx * uniforms.N * uniforms.K;`:``} + var value = ${b}(0); + for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { + if (global_id.y < uniforms.M && w + local_id.x < uniforms.K) { + tileQ[TILE_SIZE * local_id.y + local_id.x] = q[qOffset + local_id.y * uniforms.K + w + local_id.x]; + } + if (n + local_id.y < uniforms.N && w + local_id.x < uniforms.K) { + var idx = TILE_SIZE * local_id.y + local_id.x; + ${x&&d?` + if (n + local_id.y < past_sequence_length) { + tileK[idx] = past_key[pastKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; + } else if (n + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { + tileK[idx] = key[kOffset + (n + local_id.y - past_sequence_length) * uniforms.K + w + local_id.x]; + }`:` + if (n + local_id.y < uniforms.kv_sequence_length) { + tileK[idx] = key[kOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; + }`} + ${d?`if (n + local_id.y < present_sequence_length) { + present_key[presentKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x] = tileK[idx]; + }`:``} + } + workgroupBarrier(); + + for (var k: u32 = 0u; k < TILE_SIZE && w+k < uniforms.K; k++) { + value += ${b}(tileQ[TILE_SIZE * local_id.y + k] * tileK[TILE_SIZE * local_id.x + k]); + } + + workgroupBarrier(); + } + + if (global_id.y < uniforms.M && global_id.x < total_sequence_length) { + let headOffset = workgroup_id.z * uniforms.M * uniforms.N; + let outputIdx = headOffset + global_id.y * uniforms.N + global_id.x; + var sum: f32 = ${(()=>{switch(g){case 1:return`value`;case 2:return`value.x + value.y`;case 4:return`value.x + value.y + value.z + value.w`;default:throw Error(`Unsupported components: ${g}`)}})()}; + output[outputIdx] = ${_.type.value} (sum * uniforms.alpha) + ${i?`attention_bias[outputIdx]`:`0.0`}; + } + }`};return{name:`AttentionProbs`,shaderCache:{hint:`${g};${i!==void 0};${r!==void 0};${e}`,inputDependencies:S},getRunData:()=>({outputs:C,dispatchGroup:y,programUniforms:b}),getShaderSource:w}},Ci=(e,t,n,r,i,a,o=void 0,s=void 0)=>{let c=a+i.kvSequenceLength,l=i.nReps?i.nReps:1,u=i.vHiddenSize*l,d=e>1&&r,f=i.kvNumHeads?i.kvNumHeads:i.numHeads,p=d?[i.batchSize,f,c,i.headSize]:void 0,m=[i.batchSize,i.sequenceLength,u],h=12,g={x:Math.ceil(i.vHeadSize/h),y:Math.ceil(i.sequenceLength/h),z:i.batchSize*i.numHeads},_=[{type:12,data:i.sequenceLength},{type:12,data:c},{type:12,data:i.vHeadSize},{type:12,data:i.numHeads},{type:12,data:i.headSize},{type:12,data:u},{type:12,data:a},{type:12,data:i.kvSequenceLength},{type:12,data:l}],v=d&&r&&U.size(r.dims)>0,y=[`type`,`type`];v&&y.push(`type`),o&&y.push(`type`),s&&y.push(`type`);let b=[{dims:m,dataType:t.dataType,gpuDataType:0}];d&&b.push({dims:p,dataType:t.dataType,gpuDataType:0});let x=e=>{let i=q(`probs`,t.dataType,t.dims),a=q(`v`,n.dataType,n.dims),c=[i,a];v&&c.push(q(`past_value`,r.dataType,r.dims));let u=o?q(`seq_lens`,o.dataType,o.dims):void 0;o&&c.push(u);let f=s?q(`total_sequence_length_input`,s.dataType,s.dims):void 0;s&&c.push(f);let g=[J(`output`,t.dataType,m)];d&&g.push(J(`present_value`,t.dataType,p));let _=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`v_hidden_size`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` + const TILE_SIZE = ${h}u; + var tileQ: array<${i.type.value}, ${h*h}>; + var tileV: array<${i.type.value}, ${h*h}>; + ${e.registerUniforms(_).declareVariables(...c,...g)} + ${e.mainStart([h,h,1])} + let headIdx = workgroup_id.z % uniforms.num_heads; + let batchIdx = workgroup_id.z / uniforms.num_heads; + let kvHeadIdx = ${l===1?`headIdx`:`headIdx / uniforms.n_reps`}; + let kv_num_heads = ${l===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; + let m = global_id.y; + let n = global_id.x; + let sequence_length = uniforms.M; + var total_sequence_length = uniforms.K; + ${bi(u,f,!0)} + let offsetA = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; + let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; // kvHeadIdx is relative to the batch + ${v&&d?`let pastValueOffset = absKvHeadIdx * uniforms.N * uniforms.past_sequence_length + n;`:``}; + let vOffset = absKvHeadIdx * uniforms.N * uniforms.kv_sequence_length + n; + ${d?`let presentValueOffset = absKvHeadIdx * uniforms.N * uniforms.K + n;`:``} + var value = ${i.type.storage}(0); + for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { + if (m < uniforms.M && w + local_id.x < uniforms.K) { + tileQ[TILE_SIZE * local_id.y + local_id.x] = probs[offsetA + w + local_id.x]; + } + if (n < uniforms.N && w + local_id.y < uniforms.K) { + var idx = TILE_SIZE * local_id.y + local_id.x; + ${v&&d?` + if (w + local_id.y < past_sequence_length) { + tileV[idx] = past_value[pastValueOffset + (w + local_id.y) * uniforms.N]; + } else if (w + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { + tileV[idx] = v[vOffset + (w + local_id.y - past_sequence_length) * uniforms.N]; + } + `:` + if (w + local_id.y < uniforms.kv_sequence_length) { + tileV[idx] = v[vOffset + (w + local_id.y) * uniforms.N]; + }`} + ${d?` + if (w + local_id.y < present_sequence_length) { + present_value[presentValueOffset + (w + local_id.y) * uniforms.N] = tileV[idx]; + }`:``} + } + workgroupBarrier(); + for (var k: u32 = 0u; k < TILE_SIZE && w+k < total_sequence_length; k++) { + value += tileQ[TILE_SIZE * local_id.y + k] * tileV[TILE_SIZE * k + local_id.x]; + } + workgroupBarrier(); + } + + // we need to transpose output from BNSH_v to BSND_v + if (m < uniforms.M && n < uniforms.N) { + let outputIdx = batchIdx * uniforms.M * uniforms.v_hidden_size + m * uniforms.v_hidden_size + + headIdx * uniforms.N + n; + output[outputIdx] = value; + } + }`};return{name:`AttentionScore`,shaderCache:{hint:`${r!==void 0};${e}`,inputDependencies:y},getRunData:()=>({outputs:b,dispatchGroup:g,programUniforms:_}),getShaderSource:x}},wi=(e,t,n,r,i,a,o,s,c,l,u=void 0,d=void 0)=>{let f=Math.min(e.outputCount,1+(o?1:0)+(s?1:0)),p=f>1?l.pastSequenceLength:0,m=p+l.kvSequenceLength,h=c&&U.size(c.dims)>0?c:void 0,g=[t,n];f>1&&o&&U.size(o.dims)>0&&g.push(o),h&&g.push(h),u&&g.push(u),d&&g.push(d);let _=e.compute(Si(f,t,n,o,h,l,p,u,d),{inputs:g,outputs:f>1?[-1,1]:[-1]})[0];e.compute(xi(_,l.batchSize,l.numHeads,p,l.sequenceLength,m,u,d),{inputs:u&&d?[_,u,d]:[_],outputs:[]});let v=[_,r];f>1&&s&&U.size(s.dims)>0&&v.push(s),u&&v.push(u),d&&v.push(d),e.compute(Ci(f,_,r,s,l,p,u,d),{inputs:v,outputs:f>1?[0,2]:[0]})},Ti=(e,t)=>{let n=[t.batchSize,t.numHeads,t.sequenceLength,t.headSize],r=t.sequenceLength,i=t.inputHiddenSize,a=t.headSize,o=12,s={x:Math.ceil(t.headSize/o),y:Math.ceil(t.sequenceLength/o),z:t.batchSize*t.numHeads},c=[e.inputs[0],e.inputs[1],e.inputs[2]],l=[{type:12,data:r},{type:12,data:i},{type:12,data:a},{type:12,data:t.numHeads},{type:12,data:t.headSize},{type:12,data:t.hiddenSize},{type:12,data:t.hiddenSize+t.hiddenSize+t.vHiddenSize}],u=e=>{let t=J(`output_q`,c[0].dataType,n),r=J(`output_k`,c[0].dataType,n),i=J(`output_v`,c[0].dataType,n),a=q(`input`,c[0].dataType,c[0].dims),s=q(`weight`,c[1].dataType,c[1].dims),l=q(`bias`,c[2].dataType,c[2].dims),u=a.type.storage,d=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`ldb`,type:`u32`}];return` + const TILE_SIZE = ${o}u; + var tileInput: array<${u}, ${o*o}>; + var tileWeightQ: array<${u}, ${o*o}>; + var tileWeightK: array<${u}, ${o*o}>; + var tileWeightV: array<${u}, ${o*o}>; + ${e.registerUniforms(d).declareVariables(a,s,l,t,r,i)} + ${e.mainStart([o,o,1])} + let batchIndex = workgroup_id.z / uniforms.num_heads; + let headNumber = workgroup_id.z % uniforms.num_heads; + let m = global_id.y; + let n = global_id.x; + + let inputOffset = batchIndex * (uniforms.M * uniforms.K) + m * uniforms.K; + let biasOffsetQ = headNumber * uniforms.head_size; + let biasOffsetK = uniforms.hidden_size + biasOffsetQ; + let biasOffsetV = uniforms.hidden_size + biasOffsetK; + + var valueQ = ${u}(0); + var valueK = ${u}(0); + var valueV = ${u}(0); + for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { + if (m < uniforms.M && w + local_id.x < uniforms.K) { + tileInput[TILE_SIZE * local_id.y + local_id.x] = input[inputOffset + w + local_id.x]; + } + if (n < uniforms.N && w + local_id.y < uniforms.K) { + let offset = n + (w + local_id.y) * uniforms.ldb; + tileWeightQ[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetQ + offset]; + tileWeightK[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetK + offset]; + tileWeightV[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetV + offset]; + } + workgroupBarrier(); + for (var k: u32 = 0u; k({outputs:[{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0}],dispatchGroup:s,programUniforms:l}),getShaderSource:u},{inputs:c,outputs:[-1,-1,-1]})},Ei=(e,t)=>{let n=yi(e.inputs,t),[r,i,a]=Ti(e,n);return wi(e,r,i,a,e.inputs[4],void 0,void 0,void 0,e.inputs[5],n)}}),Oi,ki,Ai,ji,Mi=M(()=>{"use strict";$e(),V(),W(),Xn(),Y(),Oi=(e,t)=>{if(!e||e.length!==5)throw Error(`BatchNormalization requires 5 inputs`);let n=(e,t,n)=>{let r=t.length;if(r!==e.length)throw Error(`${n}: num dimensions != ${r}`);t.forEach((t,r)=>{if(t!==e[r])throw Error(`${n}: dim[${r}] do not match`)})};if(e[0].dims.length>1){let r=t.format===`NHWC`?t.spatial?e[0].dims.slice(-1):e[0].dims.slice(-1).concat(e[0].dims.slice(1,e[0].dims.length-1)):e[0].dims.slice(1,t.spatial?2:void 0);n(e[1].dims,r,`Invalid input scale`),n(e[2].dims,r,`Invalid input B`),n(e[3].dims,r,`Invalid input mean`),n(e[4].dims,r,`Invalid input var`)}else n(e[1].dims,[1],`Invalid input scale`),n(e[2].dims,[1],`Invalid input B`),n(e[3].dims,[1],`Invalid input mean`),n(e[4].dims,[1],`Invalid input var`)},ki=(e,t)=>{let{epsilon:n,spatial:r,format:i}=t,a=e[0].dims,o=r?tr(a[a.length-1]):1,s=i===`NHWC`&&a.length>1?o:1,c=U.size(a)/o,l=r,u=l?a.length:a,d=q(`x`,e[0].dataType,e[0].dims,o),f=q(`scale`,e[1].dataType,e[1].dims,s),p=q(`bias`,e[2].dataType,e[2].dims,s),m=q(`inputMean`,e[3].dataType,e[3].dims,s),h=q(`inputVar`,e[4].dataType,e[4].dims,s),g=J(`y`,e[0].dataType,u,o),_=()=>{let e=``;if(r)e=`let cOffset = ${a.length===1?`0u`:i===`NHWC`?`outputIndices[${a.length-1}] / ${o}`:`outputIndices[1]`};`;else if(i===`NCHW`)e=` + ${g.indicesSet(`outputIndices`,`0`,`0`)} + let cOffset = ${g.indicesToOffset(`outputIndices`)};`;else{e=`var cIndices = ${f.type.indices}(0); + cIndices[0] = outputIndices[${a.length-1}];`;for(let t=1;t` + const epsilon = ${n}; + ${e.registerUniform(`outputSize`,`u32`).declareVariables(d,f,p,m,h,g)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + var outputIndices = ${g.offsetToIndices(`global_idx * ${o}`)}; + ${_()} + let scale = ${f.getByOffset(`cOffset`)}; + let bias = ${p.getByOffset(`cOffset`)}; + let inputMean = ${m.getByOffset(`cOffset`)}; + let inputVar = ${h.getByOffset(`cOffset`)}; + let x = ${d.getByOffset(`global_idx`)}; + let value = (x - inputMean) * inverseSqrt(inputVar + epsilon) * scale + bias; + ${g.setByOffset(`global_idx`,`value`)} + }`;return{name:`BatchNormalization`,shaderCache:{hint:`${t.epsilon}_${t.format}_${r}_${o}`,inputDependencies:l?[`rank`,`type`,`type`,`type`,`type`]:void 0},getShaderSource:v,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l?[{type:12,data:c},...G(a)]:[{type:12,data:c}]})}},Ai=e=>Yn(e),ji=(e,t)=>{let{inputs:n,outputCount:r}=e,i=Ai({...t,outputCount:r});if(L.webgpu.validateInputContent&&Oi(n,i),t.trainingMode)throw Error(`BatchNormalization trainingMode is not supported yet.`);e.compute(ki(n,i))}}),Ni,Pi,Fi,Ii=M(()=>{"use strict";W(),Y(),Ni=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![320,640,1280].includes(e[0].dims[2]))throw Error(`number of channels should be 320, 640 or 1280`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},Pi=e=>{let t=e[0].dims,n=e[0].dims[2],r=U.size(t)/4,i=e[0].dataType,a=q(`input`,i,t,4),o=q(`bias`,i,[n],4),s=q(`residual`,i,t,4),c=J(`output`,i,t,4);return{name:`BiasAdd`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(r/64)}}),getShaderSource:e=>` + const channels = ${n}u / 4; + ${e.declareVariables(a,o,s,c)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(r)} + let value = ${a.getByOffset(`global_idx`)} + + ${o.getByOffset(`global_idx % channels`)} + ${s.getByOffset(`global_idx`)}; + ${c.setByOffset(`global_idx`,`value`)} + }`}},Fi=e=>{Ni(e.inputs),e.compute(Pi(e.inputs))}}),Li,Ri,zi,Bi,Vi,Hi,Ui,Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,$i,ea,ta,na,ra,ia,aa,oa,sa,ca,la,ua,da,fa,pa,ma,ha,ga,_a,va,ya,ba,xa,Sa,Ca,wa,Ta,Ea,Da,Oa=M(()=>{"use strict";V(),W(),Xn(),Y(),Li=(e,t,n,r,i,a,o)=>{let s=Math.ceil(t/4),c=``;c=typeof i==`string`?`${i}(a)`:i(`a`);let l=q(`inputData`,n,[s],4),u=J(`outputData`,r,[s],4),d=[{name:`vec_size`,type:`u32`}];return o&&d.push(...o),` + ${e.registerUniforms(d).declareVariables(l,u)} + + ${a??``} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + + let a = ${l.getByOffset(`global_idx`)}; + ${u.setByOffset(`global_idx`,c)} + }`},Ri=(e,t,n,r,i,a=e.dataType,o,s)=>{let c=[{type:12,data:Math.ceil(U.size(e.dims)/4)}];return o&&c.push(...o),{name:t,shaderCache:{hint:i,inputDependencies:[`type`]},getShaderSource:t=>Li(t,U.size(e.dims),e.dataType,a,n,r,s),getRunData:t=>({outputs:[{dims:e.dims,dataType:a}],dispatchGroup:{x:Math.ceil(U.size(t[0].dims)/64/4)},programUniforms:c})}},zi=e=>{e.compute(Ri(e.inputs[0],`Abs`,`abs`))},Bi=e=>{e.compute(Ri(e.inputs[0],`Acos`,`acos`))},Vi=e=>{e.compute(Ri(e.inputs[0],`Acosh`,`acosh`))},Hi=e=>{e.compute(Ri(e.inputs[0],`Asin`,`asin`))},Ui=e=>{e.compute(Ri(e.inputs[0],`Asinh`,`asinh`))},Wi=e=>{e.compute(Ri(e.inputs[0],`Atan`,`atan`))},Gi=e=>{e.compute(Ri(e.inputs[0],`Atanh`,`atanh`))},Ki=e=>Yn(e),qi=(e,t)=>{let n;switch(t.to){case 10:n=`vec4`;break;case 1:n=`vec4`;break;case 12:n=`vec4`;break;case 6:n=`vec4`;break;case 9:n=`vec4`;break;default:throw RangeError(`not supported type (specified in attribute 'to' from 'Cast' operator): ${t.to}`)}e.compute(Ri(e.inputs[0],`Cast`,n,void 0,t.cacheKey,t.to))},Ji=e=>{let t,n,r=e.length>=2&&e[1].data!==0,i=e.length>=3&&e[2].data!==0;switch(e[0].dataType){case 1:t=r?e[1].getFloat32Array()[0]:-34028234663852886e22,n=i?e[2].getFloat32Array()[0]:34028234663852886e22;break;case 10:t=r?e[1].getUint16Array()[0]:64511,n=i?e[2].getUint16Array()[0]:31743;break;default:throw Error(`Unsupport data type`)}return Yn({min:t,max:n})},Yi=(e,t)=>{let n=t||Ji(e.inputs),r=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Clip`,e=>`clamp(${e}, vec4<${r}>(uniforms.min), vec4<${r}>(uniforms.max))`,void 0,n.cacheKey,void 0,[{type:e.inputs[0].dataType,data:n.min},{type:e.inputs[0].dataType,data:n.max}],[{name:`min`,type:r},{name:`max`,type:r}]),{inputs:[0]})},Xi=e=>{e.compute(Ri(e.inputs[0],`Ceil`,`ceil`))},Zi=e=>{e.compute(Ri(e.inputs[0],`Cos`,`cos`))},Qi=e=>{e.compute(Ri(e.inputs[0],`Cosh`,`cosh`))},$i=e=>Yn(e),ea=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Elu`,e=>`elu_vf32(${e})`,` + const elu_alpha_ = ${n}(${t.alpha}); + + fn elu_f32(a: ${n}) -> ${n} { + return select((exp(a) - 1.0) * elu_alpha_, a, a >= 0.0); + } + + fn elu_vf32(v: vec4<${n}>) -> vec4<${n}> { + return vec4(elu_f32(v.x), elu_f32(v.y), elu_f32(v.z), elu_f32(v.w)); + }`,t.cacheKey))},ta=(e=`f32`)=>` +const r0: ${e} = 0.3275911; +const r1: ${e} = 0.254829592; +const r2: ${e} = -0.284496736; +const r3: ${e} = 1.421413741; +const r4: ${e} = -1.453152027; +const r5: ${e} = 1.061405429; + +fn erf_vf32(v: vec4<${e}>) -> vec4<${e}> { + let absv = abs(v); + let x = 1.0 / (1.0 + r0 * absv); + return sign(v) * (1.0 - ((((r5 * x + r4) * x + r3) * x + r2) * x + r1) * x * exp(-absv * absv)); +}`,na=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Erf`,e=>`erf_vf32(${e})`,ta(t)))},ra=e=>{e.compute(Ri(e.inputs[0],`Exp`,`exp`))},ia=e=>{e.compute(Ri(e.inputs[0],`Floor`,`floor`))},aa=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Gelu`,e=>`0.5 * ${e} * (1.0 + erf_vf32(${e} * 0.7071067811865475))`,ta(t)))},oa=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`LeakyRelu`,e=>`select(leaky_relu_alpha_ * ${e}, ${e}, ${e} >= vec4<${n}>(0.0))`,`const leaky_relu_alpha_ = ${n}(${t.alpha});`,t.cacheKey))},sa=e=>{e.compute(Ri(e.inputs[0],`Not`,e=>`!${e}`))},ca=e=>{e.compute(Ri(e.inputs[0],`Neg`,e=>`-${e}`))},la=e=>{e.compute(Ri(e.inputs[0],`Reciprocal`,e=>`1.0/${e}`))},ua=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Relu`,e=>`select(vec4<${t}>(0.0), ${e}, ${e} > vec4<${t}>(0.0))`))},da=e=>{e.compute(Ri(e.inputs[0],`Sigmoid`,e=>`(1.0 / (1.0 + exp(-${e})))`))},fa=e=>Yn(e),pa=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`HardSigmoid`,e=>`max(vec4<${n}>(0.0), min(vec4<${n}>(1.0), ${t.alpha} * ${e} + vec4<${n}>(${t.beta})))`,void 0,t.cacheKey))},ma=e=>{e.compute(Ri(e.inputs[0],`Sin`,`sin`))},ha=e=>{e.compute(Ri(e.inputs[0],`Sinh`,`sinh`))},ga=e=>{e.compute(Ri(e.inputs[0],`Sqrt`,`sqrt`))},_a=e=>{e.compute(Ri(e.inputs[0],`Tan`,`tan`))},va=e=>`sign(${e}) * (1 - exp(-2 * abs(${e}))) / (1 + exp(-2 * abs(${e})))`,ya=e=>{e.compute(Ri(e.inputs[0],`Tanh`,va))},ba=(e=`f32`)=>` +const fast_gelu_a: ${e} = 0.5; +const fast_gelu_b: ${e} = 0.7978845608028654; +const fast_gelu_c: ${e} = 0.035677408136300125; + +fn tanh_v(v: vec4<${e}>) -> vec4<${e}> { + return ${va(`v`)}; +} +`,xa=e=>`(fast_gelu_a + fast_gelu_a * tanh_v(${e} * (fast_gelu_c * ${e} * ${e} + fast_gelu_b))) * ${e}`,Sa=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`FastGelu`,xa,ba(t),void 0,e.inputs[0].dataType))},Ca=(e,t)=>{let n=er(e.inputs[0].dataType);return e.compute(Ri(e.inputs[0],`ThresholdedRelu`,e=>`select(vec4<${n}>(0.0), ${e}, ${e} > thresholded_relu_alpha_)`,`const thresholded_relu_alpha_ = vec4<${n}>(${t.alpha});`,t.cacheKey)),0},wa=e=>{e.compute(Ri(e.inputs[0],`Log`,`log`))},Ta=(e,t)=>` +const alpha = vec4<${e}>(${t}); +const one = ${e}(1.0); +const zero = ${e}(0.0); + +fn quick_gelu_impl(x: vec4<${e}>) -> vec4<${e}> { + let v = x *alpha; + var x1 : vec4<${e}>; + for (var i = 0; i < 4; i = i + 1) { + if (v[i] >= zero) { + x1[i] = one / (one + exp(-v[i])); + } else { + x1[i] = one - one / (one + exp(v[i])); + } + } + return x * x1; +} +`,Ea=e=>`quick_gelu_impl(${e})`,Da=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`QuickGelu`,Ea,Ta(n,t.alpha),t.cacheKey,e.inputs[0].dataType))}}),ka,Aa,ja,Ma=M(()=>{"use strict";W(),Y(),Oa(),ka=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![2560,5120,10240].includes(e[0].dims[2]))throw Error(`hidden state should be 2560, 5120 or 10240`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},Aa=e=>{let t=e[0].dims.slice();t[2]/=2;let n=q(`input`,e[0].dataType,e[0].dims,4),r=q(`bias`,e[0].dataType,[e[0].dims[2]],4),i=J(`output`,e[0].dataType,t,4),a=U.size(t)/4,o=$n(e[0].dataType);return{name:`BiasSplitGelu`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)}}),getShaderSource:t=>` + const M_SQRT2 = sqrt(2.0); + const halfChannels = ${e[0].dims[2]/4/2}u; + + ${t.declareVariables(n,r,i)} + + ${ta(o)} + + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(a)} + let biasIdx = global_idx % halfChannels; + let batchIndex = global_idx / halfChannels; + let inputOffset = biasIdx + batchIndex * halfChannels * 2; + let valueLeft = input[inputOffset] + bias[biasIdx]; + let valueRight = input[inputOffset + halfChannels] + bias[biasIdx + halfChannels]; + let geluRight = valueRight * 0.5 * (erf_vf32(valueRight / M_SQRT2) + 1); + + ${i.setByOffset(`global_idx`,`valueLeft * geluRight`)} + }`}},ja=e=>{ka(e.inputs),e.compute(Aa(e.inputs))}}),Na,Pa,Fa,Ia,La,Ra,za,Ba,Va,Ha,Ua,Wa,Ga,Ka=M(()=>{"use strict";V(),W(),Y(),Na=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f,p;typeof s==`string`?f=p=(e,t)=>`${s}((${e}),(${t}))`:typeof s==`function`?f=p=s:(f=s.scalar,p=s.vector);let m=J(`outputData`,u,r.length,4),h=q(`aData`,c,t.length,4),g=q(`bData`,l,n.length,4),_;if(i)if(a){let e=U.size(t)===1,r=U.size(n)===1,i=t.length>0&&t[t.length-1]%4==0,a=n.length>0&&n[n.length-1]%4==0;_=e||r?m.setByOffset(`global_idx`,p(e?`${h.type.value}(${h.getByOffset(`0`)}.x)`:h.getByOffset(`global_idx`),r?`${g.type.value}(${g.getByOffset(`0`)}.x)`:g.getByOffset(`global_idx`))):` + let outputIndices = ${m.offsetToIndices(`global_idx * 4u`)}; + let offsetA = ${h.broadcastedIndicesToOffset(`outputIndices`,m)}; + let offsetB = ${g.broadcastedIndicesToOffset(`outputIndices`,m)}; + ${m.setByOffset(`global_idx`,p(o||i?h.getByOffset(`offsetA / 4u`):`${h.type.value}(${h.getByOffset(`offsetA / 4u`)}[offsetA % 4u])`,o||a?g.getByOffset(`offsetB / 4u`):`${g.type.value}(${g.getByOffset(`offsetB / 4u`)}[offsetB % 4u])`))} + `}else _=m.setByOffset(`global_idx`,p(h.getByOffset(`global_idx`),g.getByOffset(`global_idx`)));else{if(!a)throw Error(`no necessary to use scalar implementation for element-wise binary op implementation.`);let e=(e,t,n=``)=>{let r=`aData[indexA${t}][componentA${t}]`,i=`bData[indexB${t}][componentB${t}]`;return` + let outputIndices${t} = ${m.offsetToIndices(`global_idx * 4u + ${t}u`)}; + let offsetA${t} = ${h.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; + let offsetB${t} = ${g.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; + let indexA${t} = offsetA${t} / 4u; + let indexB${t} = offsetB${t} / 4u; + let componentA${t} = offsetA${t} % 4u; + let componentB${t} = offsetB${t} % 4u; + ${e}[${t}] = ${n}(${f(r,i)}); + `};_=u===9?` + var data = vec4(0); + ${e(`data`,0,`u32`)} + ${e(`data`,1,`u32`)} + ${e(`data`,2,`u32`)} + ${e(`data`,3,`u32`)} + outputData[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` + ${e(`outputData[global_idx]`,0)} + ${e(`outputData[global_idx]`,1)} + ${e(`outputData[global_idx]`,2)} + ${e(`outputData[global_idx]`,3)} + `}return` + ${e.registerUniform(`vec_size`,`u32`).declareVariables(h,g,m)} + + ${d??``} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + ${_} + }`},Pa=(e,t,n,r,i,a,o=n.dataType)=>{let s=n.dims.map(e=>Number(e)??1),c=r.dims.map(e=>Number(e)??1),l=!U.areEqual(s,c),u=s,d=U.size(s),f=!1,p=!1,m=[l];if(l){let e=hn.calcShape(s,c,!1);if(!e)throw Error(`Can't perform binary op on the given tensors`);u=e.slice(),d=U.size(u);let t=U.size(s)===1,n=U.size(c)===1,r=s.length>0&&s[s.length-1]%4==0,i=c.length>0&&c[c.length-1]%4==0;m.push(t),m.push(n),m.push(r),m.push(i);let a=1;for(let e=1;ee.toString()).join(`_`),inputDependencies:[`rank`,`rank`]},getShaderSource:e=>Na(e,s,c,u,f,l,p,i,n.dataType,r.dataType,o,a),getRunData:()=>({outputs:[{dims:u,dataType:o}],dispatchGroup:{x:Math.ceil(d/64/4)},programUniforms:[{type:12,data:Math.ceil(U.size(u)/4)},...G(s,c,u)]})}},Fa=(e,t,n,r,i,a)=>{e.compute(Pa(t,i??``,e.inputs[0],e.inputs[1],n,r,a))},Ia=e=>{Fa(e,`Add`,(e,t)=>`${e}+${t}`)},La=e=>{Fa(e,`Div`,(e,t)=>`${e}/${t}`)},Ra=e=>{Fa(e,`Equal`,{scalar:(e,t)=>`u32(${e}==${t})`,vector:(e,t)=>`vec4(${e}==${t})`},void 0,void 0,9)},za=e=>{Fa(e,`Mul`,(e,t)=>`${e}*${t}`)},Ba=e=>{let t=q(`input`,e.inputs[0].dataType,e.inputs[0].dims).type.value;Fa(e,`Pow`,{scalar:(e,t)=>`pow_custom(${e},${t})`,vector:(e,t)=>`pow_vector_custom(${e},${t})`},` + fn pow_custom(a : ${t}, b : ${t}) -> ${t} { + if (b == ${t}(0.0)) { + return ${t}(1.0); + } else if (a < ${t}(0.0) && f32(b) != floor(f32(b))) { + return ${t}(pow(f32(a), f32(b))); // NaN + } + return select(sign(a), ${t}(1.0), round(f32(abs(b) % ${t}(2.0))) != 1.0) * ${t}(${t===`i32`?`round`:``}(pow(f32(abs(a)), f32(b)))); + } + fn pow_vector_custom(a : vec4<${t}>, b : vec4<${t}>) -> vec4<${t}> { + // TODO: implement vectorized pow + return vec4<${t}>(pow_custom(a.x, b.x), pow_custom(a.y, b.y), pow_custom(a.z, b.z), pow_custom(a.w, b.w)); + } + `)},Va=e=>{Fa(e,`Sub`,(e,t)=>`${e}-${t}`)},Ha=e=>{Fa(e,`Greater`,{scalar:(e,t)=>`u32(${e}>${t})`,vector:(e,t)=>`vec4(${e}>${t})`},void 0,void 0,9)},Ua=e=>{Fa(e,`Less`,{scalar:(e,t)=>`u32(${e}<${t})`,vector:(e,t)=>`vec4(${e}<${t})`},void 0,void 0,9)},Wa=e=>{Fa(e,`GreaterOrEqual`,{scalar:(e,t)=>`u32(${e}>=${t})`,vector:(e,t)=>`vec4(${e}>=${t})`},void 0,void 0,9)},Ga=e=>{Fa(e,`LessOrEqual`,{scalar:(e,t)=>`u32(${e}<=${t})`,vector:(e,t)=>`vec4(${e}<=${t})`},void 0,void 0,9)}}),qa,Ja,Ya,Xa,Za,Qa,$a=M(()=>{"use strict";V(),W(),Xn(),Y(),qa=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);let n=0,r=e[n],i=r.dataType,a=r.dims.length;e.forEach((e,o)=>{if(o!==n){if(e.dataType!==i)throw Error(`input tensors should be one type`);if(e.dims.length!==a)throw Error(`input tensors should have the same shape`);e.dims.forEach((e,n)=>{if(n!==t&&e!==r.dims[n])throw Error(`non concat dimensions must match`)})}})},Ja=(e,t)=>` + fn calculateInputIndex(index: u32) -> u32 { + let sizeInConcatAxis = array(${t}); + for (var i: u32 = 0u; i < ${e}; i += 1u ) { + if (index < sizeInConcatAxis[i]) { + return i; + } + } + return ${e}u; + }`,Ya=(e,t)=>{let n=e.length,r=[];for(let i=0;i{let i=U.size(n),a=Array(e.length),o=Array(e.length),s=0,c=[],l=[],u=[{type:12,data:i}];for(let n=0;n`uniforms.sizeInConcatAxis${e}`).join(`,`),m=t=>` + + ${(()=>{t.registerUniform(`outputSize`,`u32`);for(let n=0;n(${p}); + ${f} -= sizeInConcatAxis[inputIndex - 1u]; + } + + ${Ya(o,d)} + }`;return{name:`Concat`,shaderCache:{hint:`${t}`,inputDependencies:c},getRunData:()=>({outputs:[{dims:n,dataType:r}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:u}),getShaderSource:m}},Za=(e,t)=>{let n=e.inputs,r=n[0].dims,i=U.normalizeAxis(t.axis,r.length);qa(n,i);let a=r.slice();a[i]=n.reduce((e,t)=>e+(t.dims.length>i?t.dims[i]:0),0);let o=n.filter(e=>U.size(e.dims)>0);e.compute(Xa(o,i,a,n[0].dataType),{inputs:o})},Qa=e=>Yn({axis:e.axis})}),eo,to,no,ro,io=M(()=>{"use strict";V(),W(),eo=(e,t,n=`f32`)=>{switch(e.activation){case`Relu`:return`value = max(value, ${t}(0.0));`;case`Sigmoid`:return`value = (${t}(1.0) / (${t}(1.0) + exp(-value)));`;case`Clip`:return`value = clamp(value, ${t}(${n}(uniforms.clip_min)), ${t}(${n}(uniforms.clip_max)));`;case`HardSigmoid`:return`value = max(${t}(0.0), min(${t}(1.0), ${n}(uniforms.alpha) * value + ${n}(uniforms.beta)));`;case`LeakyRelu`:return`value = select(${n}(uniforms.alpha) * value, value, value >= ${t}(0.0));`;case`Tanh`:return`let e2x = exp(-2.0 * abs(value)); + value = sign(value) * (1.0 - e2x) / (1.0 + e2x); + `;case``:return``;default:throw Error(`Unsupported activation ${e.activation}`)}},to=(e,t)=>{e.activation===`Clip`?t.push({type:1,data:e.clipMax},{type:1,data:e.clipMin}):e.activation===`HardSigmoid`?t.push({type:1,data:e.alpha},{type:1,data:e.beta}):e.activation===`LeakyRelu`&&t.push({type:1,data:e.alpha})},no=(e,t)=>{e.activation===`Clip`?t.push({name:`clip_max`,type:`f32`},{name:`clip_min`,type:`f32`}):e.activation===`HardSigmoid`?t.push({name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}):e.activation===`LeakyRelu`&&t.push({name:`alpha`,type:`f32`})},ro=e=>{let t=e?.activation||``;if(t===`HardSigmoid`){let[n,r]=e?.activation_params||[.2,.5];return{activation:t,alpha:n,beta:r}}else if(t===`Clip`){let[n,r]=e?.activation_params||[vn,yn];return{activation:t,clipMax:r,clipMin:n}}else if(t===`LeakyRelu`){let[n]=e?.activation_params||[.01];return{activation:t,alpha:n}}return{activation:t}}}),ao,oo,so=M(()=>{"use strict";ao=(e,t)=>{switch(e){case 1:return t;case 2:return`vec2<${t}>`;case 3:return`vec3<${t}>`;case 4:return`vec4<${t}>`;default:throw Error(`${e}-component is not supported.`)}},oo=e=>` + ${e?`value = value + getBiasByOutputCoords(coords);`:``} + `}),co,lo=M(()=>{"use strict";co=e=>` +fn getIndexFromCoords4D(coords : vec4, shape : vec4) -> i32 { + return dot(coords, vec4( + shape.y * shape.z * shape.w, shape.z * shape.w, shape.w, 1)); +} +fn getOutputIndexFromCoords(coords : vec4) -> i32 { + return dot(coords, vec4( + i32(${e}.x), i32(${e}.y), i32(${e}.z), 1)); +} +`}),uo,fo,po=M(()=>{"use strict";V(),W(),Y(),io(),uo=(e,t,n,r,i)=>{let a=r-n;return` + ${Array.from({length:n}).map((n,o)=>` + if (${K(t.shape,o,t.rank)} != 1) { + ${t.indicesSet(e,o,K(i,o+a,r))} + } else { + ${t.indicesSet(e,o,0)} + }`).join(``)} +`},fo=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o[o.length-2],l=s[s.length-1],u=o[o.length-1],d=tr(l),f=tr(u),p=tr(c),m=U.size(n)/d/p,h=e.length>2,g=r?r.slice(0,-2):n.slice(0,-2),_=[U.size(g),c,l],v=[{type:12,data:m},{type:12,data:c},{type:12,data:l},{type:12,data:u}];to(t,v),v.push(...G(g,o,s)),h&&v.push(...G(e[2].dims)),v.push(...G(_));let y=r=>{let a=sr(`batch_dims`,e[0].dataType,g.length),c=q(`a`,e[0].dataType,o.length,f),l=q(`b`,e[1].dataType,s.length,d),u=J(`output`,e[0].dataType,_.length,d),m=$n(u.type.tensor),v=eo(t,u.type.value,m),y=[c,l],b=``;if(h){let t=i?d:1;y.push(q(`bias`,e[2].dataType,e[2].dims.length,t)),b=`${i?`value += bias[col / ${t}];`:`value += ${u.type.value}(bias[row + i]);`}`}let x=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`}];no(t,x);let S=()=>{let e=`var a_data: ${c.type.value};`;for(let t=0;t; + for (var k: u32 = 0u; k < uniforms.K; k = k + ${f}) { + ${S()} + } + for (var i = 0u; i < ${p}u; i++) { + var value = values[i]; + ${b} + ${v} + let cur_indices = ${u.type.indices}(batch, row + i, col); + let offset = ${u.indicesToOffset(`cur_indices`)}; + ${u.setByOffset(`offset / ${d}`,`value`)}; + } + } + `};return{name:`MatMulNaive`,shaderCache:{hint:`${t.activation};${d};${f};${p};${i}`,inputDependencies:h?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:v}),getShaderSource:y}}}),mo,ho,go,_o,vo,yo,bo,xo,So=M(()=>{"use strict";V(),W(),Y(),io(),po(),so(),mo=(e,t)=>e?` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + kStart + inputRow, + globalRowStart / innerElementSize + inputCol${t?`, batchIndices`:``}); + `:` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + globalRow + innerRow, + kStart / innerElementSize + inputCol${t?`, batchIndices`:``}); + `,ho=(e,t)=>e?` + let ACached0 = mm_Asub[k * innerElementSize][localRow]; + let ACached1 = mm_Asub[k * innerElementSize + 1][localRow]; + let ACached2 = mm_Asub[k * innerElementSize + 2][localRow]; + ${t===3?``:`let ACached3 = mm_Asub[k * innerElementSize + 3][localRow];`} + for (var i = 0; i < rowPerThread; i = i + 1) { + acc[i] = BCached0 * ACached0[i] + acc[i]; + acc[i] = BCached1 * ACached1[i] + acc[i]; + acc[i] = BCached2 * ACached2[i] + acc[i]; + ${t===3?``:`acc[i] = BCached3 * ACached3[i] + acc[i];`} + }`:` + for (var i = 0; i < rowPerThread; i = i + 1) { + let ACached = mm_Asub[tileRow + i][k]; + acc[i] = BCached0 * ACached.x + acc[i]; + acc[i] = BCached1 * ACached.y + acc[i]; + acc[i] = BCached2 * ACached.z + acc[i]; + ${t===3?``:`acc[i] = BCached3 * ACached.w + acc[i];`} + }`,go=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32)=>{let c=t[1]*e[1],l=t[0]*e[0],u=i?c:a,d=i?a:c,f=u/t[0],p=a/t[1];if(!((i&&f===4&&e[1]===4||!i&&(f===3||f===4))&&u%t[0]===0&&a%t[1]===0&&e[0]===4))throw Error(`If transposeA ${i} is true, innerElementSize ${f} and workPerThread[1] ${e[1]} must be 4. + Otherwise, innerElementSize ${f} must be 3 or 4. + tileAWidth ${u} must be divisible by workgroupSize[0]${t[0]}. tileInner ${a} must be divisible by workgroupSize[1] ${t[1]}. colPerThread ${e[0]} must be 4.`);return` +var mm_Asub: array, ${u/f}>, ${d}>; +var mm_Bsub: array, ${l/e[0]}>, ${a}>; + +const rowPerThread = ${e[1]}; +const colPerThread = ${e[0]}; +const innerElementSize = ${f}; +const tileInner = ${a}; + +@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) +fn main(@builtin(local_invocation_id) localId : vec3, + @builtin(global_invocation_id) globalId : vec3, + @builtin(workgroup_id) workgroupId : vec3) { + let localRow = i32(localId.y); + let tileRow = localRow * rowPerThread; + let tileCol = i32(localId.x); + + let globalRow =i32(globalId.y) * rowPerThread; + let globalCol = i32(globalId.x); + let batch = ${o?`0`:`i32(globalId.z)`}; + ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} + let globalRowStart = i32(workgroupId.y) * ${c}; + + let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; + var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; + + var acc: array, rowPerThread>; + + // Loop over shared dimension. + let tileRowB = localRow * ${p}; + for (var t = 0; t < num_tiles; t = t + 1) { + // Load one tile of A into local memory. + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + let inputRow = tileRow + innerRow; + let inputCol = tileCol; + ${mo(i,r)} + } + + // Load one tile of B into local memory. + for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { + let inputRow = tileRowB + innerRow; + let inputCol = tileCol; + mm_Bsub[inputRow][inputCol] = mm_readB(batch, kStart + inputRow, globalCol${r?`, batchIndices`:``}); + } + kStart = kStart + tileInner; + workgroupBarrier(); + + // Compute acc values for a single thread. + for (var k = 0; k < tileInner / innerElementSize; k = k + 1) { + let BCached0 = mm_Bsub[k * innerElementSize][tileCol]; + let BCached1 = mm_Bsub[k * innerElementSize + 1][tileCol]; + let BCached2 = mm_Bsub[k * innerElementSize + 2][tileCol]; + ${f===3?``:`let BCached3 = mm_Bsub[k * innerElementSize + 3][tileCol];`} + + ${ho(i,f)} + } + + workgroupBarrier(); + } + + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + mm_write(batch, globalRow + innerRow, globalCol, acc[innerRow]); + } +}`},_o=(e,t)=>e?` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + kStart + inputRow, + globalRowStart + inputCol${t?`, batchIndices`:``}); + `:` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + globalRowStart + inputRow, + kStart + inputCol${t?`, batchIndices`:``}); + `,vo=e=>e?`let ACached = mm_Asub[k][tileRow + innerRow];`:`let ACached = mm_Asub[tileRow + innerRow][k];`,yo=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32,c=!1)=>{let l=e[1]*t[1],u=e[0]*t[0],d=i?l:a,f=i?a:l;if(!(f%t[1]===0&&d%t[0]===0&&a%t[1]===0))throw Error(`tileAHight ${f} must be divisible by workgroupSize[1]${t[1]}, tileAWidth ${d} must be divisible by workgroupSize[0]${t[0]}, tileInner ${a} must be divisible by workgroupSize[1]${t[1]}`);let p=f/t[1],m=d/t[0],h=a/t[1],g=c?` + let localRow = i32(localId.y); + let localCol = i32(localId.x); + let globalRowStart = i32(workgroupId.y) * ${l}; + let globalColStart = i32(workgroupId.x) * ${u}; + + // Loop over shared dimension. + for (var t = 0; t < num_tiles; t = t + 1) { + // Load one tile of A into local memory. + for (var inputRow = localRow; inputRow < ${f}; inputRow = inputRow + ${t[1]}) { + for (var inputCol = localCol; inputCol < ${d}; inputCol = inputCol + ${t[0]}) { + ${_o(i,r)} + } + } + // Load one tile of B into local memory. + for (var inputRow = localRow; inputRow < ${a}; inputRow = inputRow + ${t[1]}) { + for (var inputCol = localCol; inputCol < ${u}; inputCol = inputCol + ${t[0]}) { + mm_Bsub[inputRow][inputCol] = mm_readB(batch, + kStart + inputRow, + globalColStart + inputCol${r?`, batchIndices`:``}); + } + } + kStart = kStart + tileInner; + workgroupBarrier(); + + // Compute acc values for a single thread. + var BCached : array<${n}, colPerThread>; + for (var k = 0; k < tileInner; k = k + 1) { + for (var inner = 0; inner < colPerThread; inner = inner + 1) { + BCached[inner] = mm_Bsub[k][localCol + inner * ${t[0]}]; + } + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + let ACached = ${i?`mm_Asub[k][localRow + innerRow * ${t[1]}];`:`mm_Asub[localRow + innerRow * ${t[1]}][k];`} + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + acc[innerRow][innerCol] = acc[innerRow][innerCol] + + ACached * BCached[innerCol]; + } + } + } + workgroupBarrier(); + } + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + let gRow = globalRowStart + localRow + innerRow * ${t[1]}; + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + let gCol = globalColStart + localCol + innerCol * ${t[0]}; + mm_write(batch, gRow, gCol, acc[innerRow][innerCol]); + } + } + `:` +let tileRow = i32(localId.y) * rowPerThread; +let tileCol = i32(localId.x) * colPerThread; + +let globalRow = i32(globalId.y) * rowPerThread; +let globalCol = i32(globalId.x) * colPerThread; +let globalRowStart = i32(workgroupId.y) * ${l}; + +let tileRowA = i32(localId.y) * ${p}; +let tileColA = i32(localId.x) * ${m}; +let tileRowB = i32(localId.y) * ${h}; +// Loop over shared dimension. +for (var t = 0; t < num_tiles; t = t + 1) { + // Load one tile of A into local memory. + for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { + for (var innerCol = 0; innerCol < ${m}; innerCol = innerCol + 1) { + let inputRow = tileRowA + innerRow; + let inputCol = tileColA + innerCol; + ${_o(i,r)} + } + } + + // Load one tile of B into local memory. + for (var innerRow = 0; innerRow < ${h}; innerRow = innerRow + 1) { + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + let inputRow = tileRowB + innerRow; + let inputCol = tileCol + innerCol; + mm_Bsub[inputRow][inputCol] = mm_readB(batch, + kStart + inputRow, + globalCol + innerCol${r?`, batchIndices`:``}); + } + } + kStart = kStart + tileInner; + workgroupBarrier(); + + // Compute acc values for a single thread. + var BCached : array<${n}, colPerThread>; + for (var k = 0; k < tileInner; k = k + 1) { + for (var inner = 0; inner < colPerThread; inner = inner + 1) { + BCached[inner] = mm_Bsub[k][tileCol + inner]; + } + + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + ${vo(i)} + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + acc[innerRow][innerCol] = acc[innerRow][innerCol] + ACached * BCached[innerCol]; + } + } + } + + workgroupBarrier(); +} + +for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + mm_write(batch, globalRow + innerRow, globalCol + innerCol, + acc[innerRow][innerCol]); + } +} +`;return` + var mm_Asub : array, ${f}>; + var mm_Bsub : array, ${a}>; + const rowPerThread = ${e[1]}; + const colPerThread = ${e[0]}; + const tileInner = ${a}; + +@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) +fn main(@builtin(local_invocation_id) localId : vec3, + @builtin(global_invocation_id) globalId : vec3, + @builtin(workgroup_id) workgroupId : vec3) { + let batch = ${o?`0`:`i32(globalId.z)`}; + ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} + let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; + var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; + + var acc : array, rowPerThread>; + ${g} + } +`},bo=(e,t,n,r,i=!1)=>{let[a,o,s,c]=r,l=$n(r[0].type.tensor);return` + fn mm_readA(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${ao(e,l)} { + var value = ${ao(e,l)}(0.0); + let col = colIn * ${e}; + if(row < uniforms.dim_a_outer && col < uniforms.dim_inner) + { + var aIndices: ${o.type.indices}; + ${uo(`aIndices`,o,o.rank-2,a.rank,`batchIndices`)} + ${o.indicesSet(`aIndices`,o.rank-2,`u32(row)`)} + ${o.indicesSet(`aIndices`,o.rank-1,`u32(colIn)`)} + value = ${o.getByIndices(`aIndices`)}; + } + return value; + } + + fn mm_readB(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${ao(e,l)} { + var value = ${ao(e,l)}(0.0); + let col = colIn * ${e}; + if(row < uniforms.dim_inner && col < uniforms.dim_b_outer) + { + var bIndices: ${s.type.indices}; + ${uo(`bIndices`,s,s.rank-2,a.rank,`batchIndices`)} + ${s.indicesSet(`bIndices`,s.rank-2,`u32(row)`)} + ${s.indicesSet(`bIndices`,s.rank-1,`u32(colIn)`)} + value = ${s.getByIndices(`bIndices`)}; + } + return value; + } + + fn mm_write(batch: i32, row: i32, colIn: i32, valueIn: ${ao(e,l)}) { + let col = colIn * ${e}; + if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) { + var value = valueIn; + let coords = vec3(batch, row, colIn); + ${t?`value = value + ${i?`bias[colIn]`:`${ao(e,l)}(bias[row])`};`:``} + ${n} + ${c.setByIndices(`vec3(coords)`,`value`)} + } + } + `},xo=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o.slice(0,-2),l=s.slice(0,-2),u=r?r.slice(0,-2):n.slice(0,-2),d=U.size(u),f=o[o.length-2],p=o[o.length-1],m=s[s.length-1],h=p%4==0&&m%4==0,g=f<=8?[4,1,1]:[4,4,1],_=[8,8,1],v=[Math.ceil(m/_[0]/g[0]),Math.ceil(f/_[1]/g[1]),Math.ceil(d/_[2]/g[2])],y=h?4:1,b=[...c,f,p/y],x=b.length,S=[...l,p,m/y],C=S.length,w=[d,f,m/y],T=[{type:6,data:f},{type:6,data:m},{type:6,data:p}];to(t,T),T.push(...G(u,b,S));let E=[`rank`,`rank`],D=e.length>2;D&&(T.push(...G(e[2].dims)),E.push(`rank`)),T.push(...G(w));let O=n=>{let r=u.length,a=sr(`batchDims`,e[0].dataType,r,1),o=$n(e[0].dataType),s=q(`a`,e[0].dataType,x,y),c=q(`b`,e[1].dataType,C,y),l=J(`result`,e[0].dataType,w.length,y),d=[s,c];if(D){let t=i?y:1;d.push(q(`bias`,e[2].dataType,e[2].dims.length,t))}let f=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`}];no(t,f);let p=$n(l.type.tensor),m=eo(t,l.type.value,p),v=bo(y,D,m,[a,s,c,l],i);return` + ${n.registerUniforms(f).registerInternalVariables(a).declareVariables(...d,l)} + ${v} + ${h?go(g,_,o,a):yo(g,_,o,a)} + `};return{name:`MatMul`,shaderCache:{hint:`${g};${t.activation};${h};${i}`,inputDependencies:E},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:v[0],y:v[1],z:v[2]},programUniforms:T}),getShaderSource:O}}}),Co,wo,To=M(()=>{"use strict";V(),pn(),Y(),io(),so(),lo(),So(),Co=(e,t,n,r,i=!1,a,o=4,s=4,c=4,l=`f32`)=>{let u=e=>{switch(e){case 1:return`resData = x[xIndex];`;case 3:return`resData = vec3<${l}>(x[xIndex], x[xIndex + 1], x[xIndex + 2]);`;case 4:return`resData = x[xIndex / 4];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},d=e=>{switch(e){case 1:return`return w[row * i32(uniforms.w_shape[3]) + colIn];`;case 4:return`return w[row * i32(uniforms.w_shape[3]) / 4 + colIn];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},f=e?` + let coord = vec4(batch, xRow, xCol, xCh); + `:` + let coord = vec4(batch, xCh, xRow, xCol); + `,p=e?` + let coords = vec4( + batch, + row / outWidth, + row % outWidth, + col); + `:` + let coords = vec4( + batch, + row, + col / outWidth, + col % outWidth); + `,m=e?`i32(uniforms.x_shape[1])`:`i32(uniforms.x_shape[2])`,h=e?`i32(uniforms.x_shape[2])`:`i32(uniforms.x_shape[3])`,g=e?`row`:`col`,_=e?`col`:`row`,v=` + let inChannels = i32(uniforms.w_shape[2]); + let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; + let outRow = ${g} / outWidth; + let outCol = ${g} % outWidth; + + let WRow = ${_} / (i32(uniforms.w_shape[1]) * inChannels); + let WCol = ${_} / inChannels % i32(uniforms.w_shape[1]); + let xRow = outRow * uniforms.stride[0] + uniforms.dilation[0] * WRow - uniforms.pad[0]; + let xCol = outCol * uniforms.stride[1] + uniforms.dilation[1] * WCol - uniforms.pad[1]; + let xCh = ${_} % inChannels; + var resData = ${ao(o,l)}(0.0); + // The bounds checking is always needed since we use it to pad zero for + // the 'same' padding type. + if (xRow >= 0 && xRow < ${m} && xCol >= 0 && xCol < ${h}) { + ${f} + let xIndex = getIndexFromCoords4D(coord, vec4(uniforms.x_shape)); + ${u(o)} + } + return resData;`,y=e?t&&r?` + let col = colIn * ${o}; + ${v}`:` + let col = colIn * ${o}; + if (row < uniforms.dim_a_outer && col < uniforms.dim_inner) { + ${v} + } + return ${ao(o,l)}(0.0);`:r&&n?` + let col = colIn * ${o}; + ${v}`:` + let col = colIn * ${o}; + if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { + ${v} + } + return ${ao(o,l)}(0.0);`,b=e?r&&n?d(s):` + let col = colIn * ${s}; + if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { + ${d(s)} + } + return ${ao(s,l)}(0.0);`:` + let col = colIn * ${s}; + if (row < uniforms.dim_inner && col < uniforms.dim_a_outer) { + ${d(s)} + } + return ${ao(s,l)}(0.0);`,x=ao(c,l),S=ao(e?o:s,l),C=ao(e?s:o,l),w=eo(a,x,l);return` + fn mm_readA(batch: i32, row : i32, colIn : i32) -> ${S} { + ${e?y:b} + } + + fn mm_readB(batch: i32, row : i32, colIn : i32) -> ${C} { + ${e?b:y} + } + + fn mm_write(batch: i32, row : i32, colIn : i32, valueIn : ${x}) { + let col = colIn * ${c}; + if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) + { + var value = valueIn; + let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; + ${p} + ${oo(i)} + ${w} + setOutputAtCoords(coords[0], coords[1], coords[2], coords[3], value); + } + }`},wo=(e,t,n,r,i,a,o,s,c)=>{let l=t.format===`NHWC`,u=l?e[0].dims[3]:e[0].dims[1],d=n[0],f=l?n[2]:n[3],p=l?n[1]:n[2],m=l?n[3]:n[1],h=l&&(u%4==0||u%3==0)&&m%4==0,g=l?m:f*p,_=l?f*p:m,v=[8,8,1],y=r<=8?[4,1,1]:[4,4,1],b=[Math.ceil(g/v[0]/y[0]),Math.ceil(_/v[1]/y[1]),Math.ceil(d/v[2]/y[2])];H(`verbose`,()=>`[conv2d_mm_webgpu] dispatch = ${b}`);let x=h?l&&u%4!=0?3:4:1,S=v[1]*y[1],C=v[0]*y[0],w=Math.max(v[0]*x,v[1]),T=r%S===0,E=i%C===0,D=a%w===0,O=h?[x,4,4]:[1,1,1],k=[{type:6,data:r},{type:6,data:i},{type:6,data:a},{type:6,data:[t.pads[0],t.pads[1]]},{type:6,data:t.strides},{type:6,data:t.dilations}];to(t,k),k.push(...G(e[0].dims,e[1].dims));let A=[`rank`,`rank`];o&&(k.push(...G(e[2].dims)),A.push(`rank`)),k.push(...G(n));let ee=r=>{let i=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`},{name:`pad`,type:`i32`,length:2},{name:`stride`,type:`i32`,length:2},{name:`dilation`,type:`i32`,length:2}];no(t,i);let a=h?4:1,c=$n(e[0].dataType),u=` + fn setOutputAtIndex(flatIndex : i32, value : ${h?`vec4<${c}>`:c}) { + result[flatIndex] = ${h?`vec4<${c}>`:c}(value); + } + fn setOutputAtCoords(d0 : i32, d1 : i32, d2 : i32, d3 : i32, value : ${h?`vec4<${c}>`:c}) { + let flatIndex = getOutputIndexFromCoords(vec4(d0, d1, d2, d3)); + setOutputAtIndex(flatIndex ${h?`/ 4`:``}, value); + }`,d=q(`x`,e[0].dataType,e[0].dims.length,x===3?1:x),f=q(`w`,e[1].dataType,e[1].dims.length,a),p=[d,f],m=J(`result`,e[0].dataType,n.length,a);if(o){let t=q(`bias`,e[2].dataType,e[2].dims.length,a);p.push(t),u+=` + fn getBiasByOutputCoords(coords : vec4) -> ${h?`vec4<${c}>`:c} { + return bias[coords.${l?`w`:`y`}${h?`/ 4`:``}]; + }`}return` + ${co(`uniforms.result_strides`)} + //struct Uniforms { xShape : vec4, wShape : vec4, outShape : vec4, + // outShapeStrides: vec3, filterDims : vec2, pad : vec2, stride : vec2, + // dilation : vec2, dimAOuter : i32, dimBOuter : i32, dimInner : i32 }; + ${r.registerUniforms(i).declareVariables(...p,m)} + ${u} + ${Co(l,T,E,D,o,t,O[0],O[1],O[2],c)} + ${h?go(y,v,c,void 0,!l,w):yo(y,v,c,void 0,!l,w,!1,void 0,s)}`};return{name:`Conv2DMatMul`,shaderCache:{hint:`${t.cacheKey};${x};${h};${T};${E};${D};${S};${C};${w}`,inputDependencies:A},getRunData:()=>({outputs:[{dims:c?c(n):n,dataType:e[0].dataType}],dispatchGroup:{x:b[0],y:b[1],z:b[2]},programUniforms:k}),getShaderSource:ee}}}),Eo,Do,Oo,ko,Ao,jo,Mo,No,Po=M(()=>{"use strict";V(),pn(),W(),Y(),io(),so(),Eo=e=>{let t=1;for(let n=0;ntypeof e==`number`?[e,e,e]:e,Oo=(e,t)=>t<=1?e:e+(e-1)*(t-1),ko=(e,t,n,r=1)=>{let i=Oo(t,r);return Math.floor((e[0]*(n-1)-n+i)/2)},Ao=(e,t,n,r,i)=>{i??=ko(e,t[0],r[0]);let a=[0,0,0,n];for(let n=0;n<3;n++)e[n]+2*i>=t[n]&&(a[n]=Math.trunc((e[n]-t[n]+2*i)/r[n]+1));return a},jo=(e,t,n,r,i,a,o,s,c,l)=>{let u,d,f,p;if(e===`VALID`&&(e=0),typeof e==`number`){u={top:e,bottom:e,left:e,right:e,front:e,back:e};let m=Ao([t,n,r,1],[s,c,l],1,[i,a,o],e);d=m[0],f=m[1],p=m[2]}else if(Array.isArray(e)){if(!e.every((e,t,n)=>e===n[0]))throw Error(`Unsupported padding parameter: ${e}`);u={top:e[0],bottom:e[1],left:e[2],right:e[3],front:e[4],back:e[5]};let m=Ao([t,n,r,1],[s,c,l],1,[i,a,o],e[0]);d=m[0],f=m[1],p=m[2]}else if(e===`SAME_UPPER`){d=Math.ceil(t/i),f=Math.ceil(n/a),p=Math.ceil(r/o);let e=(d-1)*i+s-t,m=(f-1)*a+c-n,h=(p-1)*o+l-r,g=Math.floor(e/2),_=e-g,v=Math.floor(m/2),y=m-v,b=Math.floor(h/2),x=h-b;u={top:v,bottom:y,left:b,right:x,front:g,back:_}}else throw Error(`Unknown padding parameter: ${e}`);return{padInfo:u,outDepth:d,outHeight:f,outWidth:p}},Mo=(e,t,n,r,i,a=!1,o=`channelsLast`)=>{let s,c,l,u,d;if(o===`channelsLast`)[s,c,l,u,d]=e;else if(o===`channelsFirst`)[s,d,c,l,u]=e;else throw Error(`Unknown dataFormat ${o}`);let[f,,p,m,h]=t,[g,_,v]=Do(n),[y,b,x]=Do(r),S=Oo(p,y),C=Oo(m,b),w=Oo(h,x),{padInfo:T,outDepth:E,outHeight:D,outWidth:O}=jo(i,c,l,u,g,_,v,S,C,w),k=a?f*d:f,A=[0,0,0,0,0];return o===`channelsFirst`?A=[s,k,E,D,O]:o===`channelsLast`&&(A=[s,E,D,O,k]),{batchSize:s,dataFormat:o,inDepth:c,inHeight:l,inWidth:u,inChannels:d,outDepth:E,outHeight:D,outWidth:O,outChannels:k,padInfo:T,strideDepth:g,strideHeight:_,strideWidth:v,filterDepth:p,filterHeight:m,filterWidth:h,effectiveFilterDepth:S,effectiveFilterHeight:C,effectiveFilterWidth:w,dilationDepth:y,dilationHeight:b,dilationWidth:x,inShape:e,outShape:A,filterShape:t}},No=(e,t,n,r,i,a)=>{let o=a===`channelsLast`,s=o?e[0].dims[3]:e[0].dims[1],c=!1,l=[64,1,1],u={x:n.map((e,t)=>t)},d=[Math.ceil(Eo(u.x.map(e=>n[e]))/l[0]),1,1];H(`verbose`,()=>`[conv3d_naive_webgpu] dispatch = ${d}`);let f=c?o&&s%4!=0?3:4:1,p=U.size(n),m=[{type:12,data:p},{type:12,data:r},{type:12,data:i},{type:12,data:t.strides},{type:12,data:t.dilations}];to(t,m),m.push(...G(e[0].dims,e[1].dims));let h=[`rank`,`rank`],g=e.length===3;g&&(m.push(...G(e[2].dims)),h.push(`rank`)),m.push(...G(n));let _=a=>{let s=[{name:`output_size`,type:`u32`},{name:`filter_dims`,type:`u32`,length:r.length},{name:`pads`,type:`u32`,length:i.length},{name:`strides`,type:`u32`,length:t.strides.length},{name:`dilations`,type:`u32`,length:t.dilations.length}];no(t,s);let l=c?4:1,u=$n(e[0].dataType),d=q(`x`,e[0].dataType,e[0].dims.length,f===3?1:f),p=q(`W`,e[1].dataType,e[1].dims.length,l),m=[d,p],h=J(`result`,e[0].dataType,n.length,l),_=``;if(g){let t=q(`bias`,e[2].dataType,e[2].dims.length,l);m.push(t),_+=` + fn getBiasByOutputCoords(coords : array) -> ${c?`vec4<${u}>`:u} { + return bias[${o?K(`coords`,4,5):K(`coords`,1,5)}${c?`/ 4`:``}]; + }`}let v=ao(f,u),y=eo(t,v,u);return` + ${_} + fn getX(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { + let aIndices = array(d0, d1, d2, d3, d4); + return ${d.getByIndices(`aIndices`)}; + } + fn getW(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { + let aIndices = array(d0, d1, d2, d3, d4); + return ${p.getByIndices(`aIndices`)}; + } + ${a.registerUniforms(s).declareVariables(...m,h)} + ${a.mainStart()} + ${a.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let coords = ${h.offsetToIndices(`global_idx`)}; + let batch = ${K(`coords`,0,d.rank)}; + let d2 = ${o?K(`coords`,d.rank-1,d.rank):K(`coords`,1,d.rank)}; + let xFRCCorner = vec3(${o?K(`coords`,1,d.rank):K(`coords`,2,d.rank)}, + ${o?K(`coords`,2,d.rank):K(`coords`,3,d.rank)}, + ${o?K(`coords`,3,d.rank):K(`coords`,4,d.rank)}) * uniforms.strides - uniforms.pads; + let xFCorner = xFRCCorner.x; + let xRCorner = xFRCCorner.y; + let xCCorner = xFRCCorner.z; + let xShapeY = ${o?K(`uniforms.x_shape`,1,d.rank):K(`uniforms.x_shape`,2,d.rank)}; + let xShapeZ = ${o?K(`uniforms.x_shape`,2,d.rank):K(`uniforms.x_shape`,3,d.rank)}; + let xShapeW = ${o?K(`uniforms.x_shape`,3,d.rank):K(`uniforms.x_shape`,4,d.rank)}; + let xShapeU = ${o?K(`uniforms.x_shape`,4,d.rank):K(`uniforms.x_shape`,1,d.rank)}; + let inputDepthNearestVec4 = (xShapeU / 4) * 4; + let inputDepthVec4Remainder = xShapeU % 4; + + var value = 0.0; + for (var wF = 0u; wF < uniforms.filter_dims[0]; wF++) { + let xF = xFCorner + wF * uniforms.dilations[0]; + if (xF < 0 || xF >= xShapeY) { + continue; + } + + for (var wR = 0u; wR < uniforms.filter_dims[1]; wR++) { + let xR = xRCorner + wR * uniforms.dilations[1]; + if (xR < 0 || xR >= xShapeZ) { + continue; + } + + for (var wC = 0u; wC < uniforms.filter_dims[2]; wC++) { + let xC = xCCorner + wC * uniforms.dilations[2]; + if (xC < 0 || xC >= xShapeW) { + continue; + } + + for (var d1 = 0u; d1 < inputDepthNearestVec4; d1 += 4) { + ${o?`let xValues = vec4( + getX(batch, xF, xR, xC, d1), + getX(batch, xF, xR, xC, d1 + 1), + getX(batch, xF, xR, xC, d1 + 2), + getX(batch, xF, xR, xC, d1 + 3)); + `:`let xValues = vec4( + getX(batch, d1, xF, xR, xC), + getX(batch, d1 + 1, xF, xR, xC), + getX(batch, d1 + 2, xF, xR, xC), + getX(batch, d1 + 3, xF, xR, xC)); + `} + let wValues = vec4( + getW(d2, d1, wF, wR, wC), + getW(d2, d1 + 1, wF, wR, wC), + getW(d2, d1 + 2, wF, wR, wC), + getW(d2, d1 + 3, wF, wR, wC)); + value += dot(xValues, wValues); + } + if (inputDepthVec4Remainder == 1) { + ${o?`value += getX(batch, xF, xR, xC, inputDepthNearestVec4) + * getW(d2, inputDepthNearestVec4, wF, wR, wC);`:`value += getX(batch, inputDepthNearestVec4, xF, xR, xC) + * getW(d2, inputDepthNearestVec4, wF, wR, wC);`} + } else if (inputDepthVec4Remainder == 2) { + ${o?`let xValues = vec2( + getX(batch, xF, xR, xC, inputDepthNearestVec4), + getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1)); + `:`let xValues = vec2( + getX(batch, inputDepthNearestVec4, xF, xR, xC), + getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC)); + `} + let wValues = vec2( + getW(d2, inputDepthNearestVec4, wF, wR, wC), + getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC)); + value += dot(xValues, wValues); + } else if (inputDepthVec4Remainder == 3) { + ${o?`let xValues = vec3( + getX(batch, xF, xR, xC, inputDepthNearestVec4), + getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1), + getX(batch, xF, xR, xC, inputDepthNearestVec4 + 2)); + `:`let xValues = vec3( + getX(batch, inputDepthNearestVec4, xF, xR, xC), + getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC), + getX(batch, inputDepthNearestVec4 + 2, xF, xR, xC)); + `} + let wValues = vec3( + getW(d2, inputDepthNearestVec4, wF, wR, wC), + getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC), + getW(d2, inputDepthNearestVec4 + 2, wF, wR, wC)); + value += dot(xValues, wValues); + } + } + } + } + ${g?`value = value + getBiasByOutputCoords(coords)`:``}; + ${y} + result[global_idx] = f32(value); + }`};return{name:`Conv3DNaive`,shaderCache:{hint:`${t.cacheKey};${o};${f};${g}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:d[0],y:d[1],z:d[2]},programUniforms:m}),getShaderSource:_}}}),Fo,Io,Lo=M(()=>{"use strict";V(),W(),Y(),io(),Fo=(e,t,n,r)=>{let i=e.length>2,a=i?`value += b[output_channel];`:``,o=e[0].dims,s=e[1].dims,c=t.format===`NHWC`,l=c?n[3]:n[1],u=l/t.group,d=c&&u>=4?tr(l):1,f=U.size(n)/d,p=[{type:12,data:f},{type:12,data:t.dilations},{type:12,data:[t.strides[0],t.strides[1]]},{type:12,data:[t.pads[0],t.pads[1]]},{type:12,data:u}];to(t,p),p.push(...G(o,[s[0],s[1],s[2],s[3]/d]));let m=i?[`rank`,`rank`,`rank`]:[`rank`,`rank`];p.push(...G([n[0],n[1],n[2],n[3]/d]));let h=r=>{let l=J(`output`,e[0].dataType,n.length,d),u=$n(l.type.tensor),f=eo(t,l.type.value,u),p=q(`x`,e[0].dataType,o.length),m=q(`w`,e[1].dataType,s.length,d),h=[p,m];i&&h.push(q(`b`,e[2].dataType,e[2].dims,d));let g=[{name:`output_size`,type:`u32`},{name:`dilations`,type:`u32`,length:t.dilations.length},{name:`strides`,type:`u32`,length:2},{name:`pads`,type:`u32`,length:2},{name:`output_channels_per_group`,type:`u32`}];no(t,g);let _=c?` + for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[0]; wHeight++) { + let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; + + if (xHeight < 0u || xHeight >= uniforms.x_shape[1]) { + continue; + } + + for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[1]; wWidth++) { + let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; + if (xWidth < 0u || xWidth >= uniforms.x_shape[2]) { + continue; + } + + for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[2]; wInChannel++) { + let input_channel = in_channel_offset + wInChannel; + let xVal = ${p.get(`batch`,`xHeight`,`xWidth`,`input_channel`)}; + let wVal = ${m.get(`wHeight`,`wWidth`,`wInChannel`,`output_channel`)}; + value += xVal * wVal; + } + } + } + `:` + for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[1]; wInChannel++) { + let input_channel = in_channel_offset + wInChannel; + for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[2]; wHeight++) { + let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; + + if (xHeight < 0u || xHeight >= uniforms.x_shape[2]) { + continue; + } + + for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[3]; wWidth++) { + let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; + if (xWidth < 0u || xWidth >= uniforms.x_shape[3]) { + continue; + } + + let xVal = ${p.get(`batch`,`input_channel`,`xHeight`,`xWidth`)}; + let wVal = ${m.get(`output_channel`,`wInChannel`,`wHeight`,`wWidth`)}; + value += xVal * wVal; + } + } + } + `;return` + ${r.registerUniforms(g).declareVariables(...h,l)} + + ${r.mainStart()} + ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let outputIndices = ${l.offsetToIndices(`global_idx`)}; + let batch: u32 = outputIndices[0]; + let output_channel: u32 = outputIndices[${c?3:1}]; + let xRCCorner: vec2 = vec2(outputIndices[${c?1:2}], outputIndices[${c?2:3}]) * uniforms.strides - uniforms.pads; + let group_id: u32 = output_channel * ${d} / uniforms.output_channels_per_group; + var in_channel_offset = group_id * uniforms.w_shape[${c?2:1}]; + + var value: ${l.type.value} = ${l.type.value}(0); + ${_} + ${a} + ${f} + ${l.setByOffset(`global_idx`,`value`)} + }`};return{name:`GroupedConv`,shaderCache:{hint:`${t.cacheKey}_${d}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},Io=(e,t,n,r)=>{let i=e.length>2,a=tr(n[3]),o=tr(n[2]),s=U.size(n)/a/o,c=[e[0].dims[0],e[0].dims[1],e[0].dims[2],e[0].dims[3]/a],l=[e[1].dims[0],e[1].dims[1],e[1].dims[2],e[1].dims[3]/a],u=[n[0],n[1],n[2],n[3]/a],d=[{type:12,data:s},{type:6,data:[t.strides[0],t.strides[1]]},{type:6,data:[t.pads[0],t.pads[1]]}];to(t,d),d.push(...G(c,l,u));let f=(o-1)*t.strides[1]+l[1],p=n=>{let r=J(`output`,e[0].dataType,u.length,a),s=$n(r.type.tensor),d=eo(t,r.type.value,s),p=q(`x`,e[0].dataType,c.length,a),m=q(`w`,e[1].dataType,l.length,a),h=[p,m];i&&h.push(q(`b`,e[2].dataType,e[2].dims,a));let g=i?`value += b[output_channel];`:``,_=[{name:`output_size`,type:`u32`},{name:`strides`,type:`i32`,length:2},{name:`pads`,type:`i32`,length:2}];return no(t,_),` + ${n.registerUniforms(_).declareVariables(...h,r)} + ${n.mainStart()} + ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let width0 = uniforms.output_shape[3]; + let output_channel = global_idx % width0; + var index1 = global_idx / width0; + let width1 = uniforms.output_shape[2] / ${o}u; + let col = (index1 % width1) * ${o}u; + index1 = index1 / width1; + let row = index1 % uniforms.output_shape[1]; + let batch = index1 / uniforms.output_shape[1]; + + let x_corner = vec2(i32(row), i32(col)) * uniforms.strides - uniforms.pads; + + var x_vals: array<${p.type.value}, ${f}>; + var values: array<${r.type.value}, ${o}>; + let input_channel = output_channel; + // Use constant instead of uniform can give better performance for w's height/width. + for (var w_height: u32 = 0u; w_height < ${l[0]}; w_height++) { + let x_height = x_corner.x + i32(w_height); + if (x_height >= 0 && u32(x_height) < uniforms.x_shape[1]) { + for (var i = 0; i < ${f}; i++) { + let x_width = x_corner.y + i; + if (x_width >= 0 && u32(x_width) < uniforms.x_shape[2]) { + x_vals[i] = ${p.get(`batch`,`u32(x_height)`,`u32(x_width)`,`input_channel`)}; + } else { + x_vals[i] = ${p.type.value}(0); + } + } + for (var w_width: u32 = 0u; w_width < ${l[1]}; w_width++) { + let w_val = ${m.get(`w_height`,`w_width`,`0`,`output_channel`)}; + for (var i = 0u; i < ${o}u; i++) { + values[i] = fma(x_vals[i * u32(uniforms.strides[1]) + w_width], w_val, values[i]); + } + } + } + } + + for (var i = 0u; i < ${o}u; i++) { + var value = values[i]; + ${g} + ${d} + ${r.set(`batch`,`row`,`col + i`,`output_channel`,`value`)}; + } + }`};return{name:`GroupedConv-Vectorize`,shaderCache:{hint:`${t.cacheKey};${a};${o};${f};${l[0]};${l[1]}`,inputDependencies:i?[`rank`,`rank`,`type`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:d}),getShaderSource:p}}}),Ro,zo,Bo,Vo,Ho,Uo,Wo,Go,Ko,qo=M(()=>{"use strict";W(),To(),Po(),So(),Lo(),io(),po(),vr(),Ro=(e,t,n,r,i,a)=>{let o=e[0],s=e.slice(a?1:2,a?3:4),c=s.length,l=t[0],u=t.slice(2).map((e,t)=>e+(e-1)*(n[t]-1)),d=s.map((e,t)=>e+r[t]+r[t+c]).map((e,t)=>Math.floor((e-u[t]+i[t])/i[t]));return d.splice(0,0,o),d.splice(a?3:1,0,l),d},zo=[2,3,1,0],Bo=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length>5)throw Error(`greater than 5D is not supported`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[1]*t.group;if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);if(e.length===3&&(e[2].dims.length!==1||e[1].dims[0]!==e[2].dims[0]))throw Error(`invalid bias`);let i=e[0].dims.length-2;if(t.dilations.length!==i)throw Error(`dilations should be ${i}D`);if(t.strides.length!==i)throw Error(`strides should be ${i}D`);if(t.pads.length!==i*2)throw Error(`pads should be ${i*2}D`);if(t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`)},Vo=(e,t)=>{let n=e.kernelShape.slice();n.length{let t=ro(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],i=e.dilations,a=e.group,o=e.kernel_shape,s=e.pads,c=e.strides,l=e.w_is_const();return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},Uo=(e,t,n,r)=>{let i=n.format===`NHWC`,a=Ro(t[0].dims,t[1].dims,n.dilations,n.pads,n.strides,i);if(n.group!==1){let o=[t[0]];if(i){let r=e.kernelCustomData.wT??e.compute(hr(t[1],zo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),o.push(r)}else o.push(t[1]);t.length===3&&o.push(t[2]),!e.adapterInfo.isArchitecture(`ampere`)&&i&&t[1].dims[0]===n.group&&t[1].dims[1]===1&&n.dilations[0]===1&&n.dilations[1]===1?e.compute(Io(o,n,a,r),{inputs:o}):e.compute(Fo(o,n,a,r),{inputs:o});return}let o=t.length===3,s=t[0].dims[i?1:2],c=t[0].dims[i?2:3],l=t[0].dims[i?3:1],u=t[1].dims[2],d=t[1].dims[3],f=a[i?1:2],p=a[i?2:3],m=a[i?3:1],h=i&&u===s&&d===c&&n.pads[0]===0&&n.pads[1]===0;if(h||u===1&&d===1&&n.dilations[0]===1&&n.dilations[1]===1&&n.strides[0]===1&&n.strides[1]===1&&n.pads[0]===0&&n.pads[1]===0){let u=a[0],d,g,_,v=[];if(i){let r=e.kernelCustomData.wT??e.compute(hr(t[1],zo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];if(n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),h){let e=s*c*l;d=t[0].reshape([1,u,e]),g=r.reshape([1,e,m]),_=[1,u,m]}else d=t[0].reshape([u,s*c,l]),g=r.reshape([1,l,m]),_=[u,f*p,m];v.push(d),v.push(g)}else d=t[0].reshape([u,l,s*c]),g=t[1].reshape([1,m,l]),_=[u,m,f*p],v.push(g),v.push(d);o&&v.push(t[2]);let y=_[2],b=v[0].dims[v[0].dims.length-1];y<8&&b<8?e.compute(fo(v,n,a,_,i,r),{inputs:v}):e.compute(xo(v,n,a,_,i,r),{inputs:v});return}let g=!0,_=e.kernelCustomData.wT??e.compute(hr(t[1],zo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=_);let v=[t[0],_];o&&v.push(t[2]);let y=i?f*p:m,b=i?m:f*p,x=u*d*l;e.compute(wo(v,n,a,y,b,x,o,g,r),{inputs:v})},Wo=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=[0,t.pads[0],0,t.pads[1]],a=[1].concat(t.strides),o=[1].concat(t.dilations),s=[1].concat(t.kernelShape),c=Vo({...t,pads:i,strides:a,dilations:o,kernelShape:s},r);Uo(e,r,c,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},Go=(e,t,n)=>{let r=n.format===`NHWC`?`channelsLast`:`channelsFirst`,i=Vo(n,t),a=n.autoPad===`NOTSET`?n.pads:n.autoPad,o=Mo(t[0].dims,t[1].dims,n.strides,n.dilations,a,!1,r);e.compute(No(t,i,o.outShape,[o.filterDepth,o.filterHeight,o.filterWidth],[o.padInfo.front,o.padInfo.top,o.padInfo.left],r))},Ko=(e,t)=>{if(Bo(e.inputs,t),e.inputs[0].dims.length===3)Wo(e,t);else if(e.inputs[0].dims.length===5)Go(e,e.inputs,t);else{let n=Vo(t,e.inputs);Uo(e,e.inputs,n)}}}),Jo,Yo=M(()=>{"use strict";V(),pn(),W(),Y(),Jo=(e,t,n)=>{let r=e.length>2,i=t.outputShape,a=t.format===`NHWC`,o=t.group,s=e[1].dims,c=s[2]/o,l=s[3],u=a?tr(c):1,d=a&&l===1&&c>=4,f=d?Math.floor(c/4)*4:Math.floor(c/u)*u,p=c-f,m=a?tr(l):1,h=a?l===1?u:m:1,g=U.size(i)/m,_=[Math.ceil(g/64),1,1];H(`verbose`,()=>`[conv2d_backprop_webgpu] dispatch = ${_}`);let v=[`rank`,`rank`],y=[t.strides[0],t.strides[1]],b=[t.kernelShape[a?1:2],t.kernelShape[a?2:3]],x=[t.dilations[0],t.dilations[1]],S=[b[0]+(t.dilations[0]<=1?0:(t.kernelShape[a?1:2]-1)*(t.dilations[0]-1)),b[1]+(t.dilations[1]<=1?0:(t.kernelShape[a?2:3]-1)*(t.dilations[1]-1))],C=[S[0]-1-Math.floor((t.pads[0]+t.pads[2])/2),S[1]-1-Math.floor((t.pads[1]+t.pads[3])/2)],w=[{type:12,data:g},{type:12,data:y},{type:12,data:b},{type:12,data:x},{type:12,data:S},{type:6,data:C},{type:12,data:f},{type:12,data:c},{type:12,data:l},...G(e[0].dims,e[1].dims)];r&&(w.push(...G(e[2].dims)),v.push(`rank`)),w.push(...G(i));let T=t=>{let n=[{name:`output_size`,type:`u32`},{name:`strides`,type:`u32`,length:y.length},{name:`filter_dims`,type:`u32`,length:b.length},{name:`dilations`,type:`u32`,length:b.length},{name:`effective_filter_dims`,type:`u32`,length:S.length},{name:`pads`,type:`i32`,length:C.length},{name:`input_channels_per_group_int`,type:`u32`},{name:`input_channels_per_group`,type:`u32`},{name:`output_channels_per_group`,type:`u32`}],o=$n(e[0].dataType),s=a?1:2,c=a?2:3,l=a?3:1,f=q(`W`,e[1].dataType,e[1].dims.length,h),g=q(`Dy`,e[0].dataType,e[0].dims.length,u),_=[g,f];r&&_.push(q(`bias`,e[2].dataType,[i[l]].length,m));let v=J(`result`,e[0].dataType,i.length,m),x=()=>{let e=``;if(d)u===4?e+=` + let xValue = ${g.getByOffset(`x_offset`)}; + let wValue = ${f.getByOffset(`w_offset`)}; + dotProd = dotProd + dot(xValue, wValue); + x_offset += 1u; + w_offset += 1u;`:u===2?e+=` + dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)})); + x_offset += 2u; + w_offset += 2u;`:u===1&&(e+=` + dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}, ${g.getByOffset(`x_offset + 2u`)}, ${g.getByOffset(`x_offset + 3u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)}, ${f.getByOffset(`w_offset + 2u`)}, ${f.getByOffset(`w_offset + 3u`)})); + x_offset += 4u; + w_offset += 4u;`);else if(e+=` + let xValue = ${a?g.getByOffset(`${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}`):g.get(`batch`,`inputChannel`,`idyR`,`idyC`)}; + `,u===1)e+=` + let w_offset = ${f.indicesToOffset(`${f.type.indices}(u32(wRPerm), u32(wCPerm), inputChannel, wOutChannel)`)}; + let wValue = ${f.getByOffset(`w_offset / ${h}`)}; + dotProd = dotProd + xValue * wValue;`;else for(let t=0;t{if(p===0)return``;if(!d)throw Error(`packInputAs4 ${d} is not true.`);let e=``;if(u===1){e+=`dotProd = dotProd`;for(let t=0;t(i32(r), i32(c)) - uniforms.pads; + let dyRCorner = dyCorner.x; + let dyCCorner = dyCorner.y; + let groupId = d1 / uniforms.output_channels_per_group; + let wOutChannel = d1 - groupId * uniforms.output_channels_per_group; + // Convolve dy(?, ?, d2) with w(:, :, d1, d2) to compute dx(xR, xC, d1). + // ? = to be determined. : = across all values in that axis. + var dotProd = ${v.type.value}(0.0); + var wR: u32 = 0; + if (uniforms.dilations.x == 1) { + // Minimum wR >= 0 that satisfies (dyRCorner + wR) % (uniforms.strides.x) == 0 + wR = u32(((dyRCorner + i32(uniforms.strides.x) - 1) / i32(uniforms.strides.x)) * i32(uniforms.strides.x) - dyRCorner); + } + for (; wR < uniforms.effective_filter_dims.x; wR = wR + 1) { + if (wR % uniforms.dilations.x != 0) { + continue; + } + let dyR = (${o}(dyRCorner) + ${o}(wR)) / ${o}(uniforms.strides[0]); + let wRPerm = uniforms.filter_dims.x - 1 - wR / uniforms.dilations.x; + if (dyR < 0.0 || dyR >= ${o}(uniforms.Dy_shape[${s}]) || fract(dyR) > 0.0 || + wRPerm < 0) { + continue; + } + let idyR: u32 = u32(dyR); + var wC: u32 = 0; + if (uniforms.dilations.y == 1) { + // Minimum wC >= 0 that satisfies (dyCCorner + wC) % (uniforms.strides.y) == 0 + wC = u32(((dyCCorner + i32(uniforms.strides.y) - 1) / i32(uniforms.strides.y)) * i32(uniforms.strides.y) - dyCCorner); + } + for (; wC < uniforms.effective_filter_dims.y; wC = wC + 1) { + if (wC % uniforms.dilations.y != 0) { + continue; + } + let dyC = (${o}(dyCCorner) + ${o}(wC)) / ${o}(uniforms.strides.y); + let wCPerm = uniforms.filter_dims.y - 1 - wC / uniforms.dilations.y; + if (dyC < 0.0 || dyC >= ${o}(uniforms.Dy_shape[${c}]) || + fract(dyC) > 0.0 || wCPerm < 0) { + continue; + } + let idyC: u32 = u32(dyC); + var inputChannel = groupId * uniforms.input_channels_per_group; + ${d?` + var x_offset = ${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}; + var w_offset = ${f.indicesToOffset(`${f.type.indices}(wRPerm, wCPerm, inputChannel, wOutChannel)`)} / ${h}; + `:``} + for (var d2: u32 = 0; d2 < uniforms.input_channels_per_group_int; d2 = d2 + ${d?4:u}) { + ${x()} + inputChannel = inputChannel + ${d?4:u}; + } + ${w()} + wC = wC + uniforms.strides.y - 1; + } + wR = wR + uniforms.strides[0] - 1; + } + let value = dotProd${r?` + bias[d1 / ${m}]`:``}; + ${v.setByOffset(`global_idx`,`value`)}; + `;return` + ${t.registerUniforms(n).declareVariables(..._,v)} + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)}; + ${T}}`};return{name:`ConvTranspose2D`,shaderCache:{hint:`${t.cacheKey};${u}${h}${m}${d}${p}`,inputDependencies:v},getRunData:()=>({dispatchGroup:{x:_[0],y:_[1],z:_[2]},outputs:[{dims:n?n(i):i,dataType:e[0].dataType}],programUniforms:w}),getShaderSource:T}}}),Xo,Zo,Qo,$o,es,ts,ns,rs,os,ss=M(()=>{"use strict";Yo(),io(),vr(),Xo=(e,t,n,r,i,a)=>(e-1)*t+n+(r-1)*i+1-a,Zo=(e,t,n,r,i)=>{let a=Math.floor(e/2);t===`SAME_UPPER`?(n[r]=a,n[i]=e-a):t===`SAME_LOWER`&&(n[r]=e-a,n[i]=a)},Qo=(e,t,n,r,i,a,o,s,c,l)=>{let u=e.length-2,d=l.length===0;c.length{let n=e.kernelShape.slice();if(e.kernelShape.length===0||e.kernelShape.reduce((e,t)=>e*t,1)===0){n.length=0;for(let e=2;ee+t,0)===0){let e=t[0].dims.length-2;c=Array(e).fill(1)}let l=e.strides.slice();if(l.reduce((e,t)=>e+t,0)===0){let e=t[0].dims.length-2;l=Array(e).fill(1)}Qo(s,n,c,e.autoPad,e.group,i,l,r,o,a);let u=Object.assign({},e);return Object.assign(u,{kernelShape:n,pads:i,outputPadding:o,outputShape:a,dilations:c,strides:l}),u},es=e=>{let t=ro(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][typeof e.autoPad>`u`?0:e.autoPad],i=e.dilations,a=e.group,o=e.kernelShape,s=e.pads,c=e.strides,l=e.wIsConst(),u=e.outputPadding,d=e.outputShape;return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,outputPadding:u,outputShape:d,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},ts=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length!==4&&e[0].dims.length!==3)throw Error(`currently only support 2-dimensional conv`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[0];if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);let i=e[1].dims[1]*t.group;if(e.length===3&&(e[2].dims.length!==1||e[2].dims[0]!==i))throw Error(`invalid bias`);let a=e[0].dims.length-2;if(t.dilations.reduce((e,t)=>e+t,0)>0&&t.dilations.length!==a)throw Error(`dilations should be ${a}D`);if(t.strides.reduce((e,t)=>e+t,0)>0&&t.strides.length!==a)throw Error(`strides should be ${a}D`);if(t.pads.reduce((e,t)=>e+t,0)>0&&t.pads.length!==a*2)throw Error(`pads should be ${a*2}D`);if(t.outputPadding.length!==a&&t.outputPadding.length!==0)throw Error(`output_padding should be ${a}D`);if(t.kernelShape.reduce((e,t)=>e+t,0)>0&&t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`);if(t.outputShape.length!==0&&t.outputShape.length!==e[0].dims.length-2)throw Error(`invalid output shape`)},ns=(e,t,n,r)=>{let i=e.kernelCustomData.wT??e.compute(hr(t[1],[2,3,0,1]),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=i);let a=[t[0],i];t.length===3&&a.push(t[2]),e.compute(Jo(a,n,r),{inputs:a})},rs=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=t.kernelShape;(i.length===0||i[0]===0)&&(i=[e.inputs[1].dims[2]]);let a=t.dilations;(a.length===0||a[0]===0)&&(a=[1]);let o=t.strides;(o.length===0||o[0]===0)&&(o=[1]);let s=t.pads;s.length===0&&(s=[0,0]),s=[0,s[0],0,s[1]],o=[1].concat(o),a=[1].concat(a),i=[1].concat(i);let c=t.outputPadding;c=[0].concat(c);let l=$o({...t,pads:s,strides:o,dilations:a,kernelShape:i,outputPadding:c},r);ns(e,r,l,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},os=(e,t)=>{if(ts(e.inputs,t),e.inputs[0].dims.length===3)rs(e,t);else{let n=$o(t,e.inputs);ns(e,e.inputs,n)}}}),cs,ls,us,ds=M(()=>{"use strict";V(),W(),Xn(),Y(),cs=(e,t,n,r)=>{let i=U.size(t),a=t.length,o=q(`input`,e,a),s=J(`output`,e,a),c=n.dataType===6?n.getInt32Array()[0]:Number(n.getBigInt64Array()[0]),l=U.normalizeAxis(c,a),u=e=>{let t=` i32(${o.indicesGet(`inputIndices`,`uniforms.axis`)}) `,n=K(`uniforms.input_shape`,`uniforms.axis`,a),i=r.reverse?t+(r.exclusive?` + 1`:``):`0`,c=r.reverse?n:t+(r.exclusive?``:` + 1`);return` + ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axis`,`u32`).declareVariables(o,s)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + var inputIndices = ${s.offsetToIndices(`global_idx`)}; + var sum = ${s.type.value}(0); + let first : i32 = ${i}; + let last : i32 = ${c}; + for (var i : i32 = first; i < last; i++) { + ${o.indicesSet(`inputIndices`,`uniforms.axis`,`u32(i)`)}; + sum = sum + ${o.getByIndices(`inputIndices`)}; + } + ${s.setByOffset(`global_idx`,`sum`)}; + }`};return{name:`CumSum`,shaderCache:{hint:r.cacheKey,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:t,dataType:e}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:[{type:12,data:i},{type:12,data:l},...G(t,t)]}),getShaderSource:u}},ls=(e,t)=>{let n=e.inputs[0].dims,r=e.inputs[0].dataType,i=e.inputs[1];e.compute(cs(r,n,i,t),{inputs:[0]})},us=e=>{let t=e.exclusive===1,n=e.reverse===1;return Yn({exclusive:t,reverse:n})}}),fs,ps,ms,hs,gs,_s=M(()=>{"use strict";V(),W(),Xn(),Y(),fs=e=>{if(!e||e.length!==1)throw Error(`DepthToSpace requires 1 input.`);if(e[0].dims.length!==4)throw Error(`DepthToSpace requires 4D input.`)},ps=(e,t,n,r)=>{let i=[];i.push(`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { + var a: ${n.type.indices};`);for(let r=0;r{let n,r,i,a,o,s,c=t.format===`NHWC`,l=t.blocksize,u=t.mode===`DCR`;c?([n,r,i,a]=e.dims,o=u?[n,r,i,l,l,a/l**2]:[n,r,i,a/l**2,l,l],s=u?[0,1,3,2,4,5]:[0,1,4,2,5,3]):([n,r,i,a]=[e.dims[0],e.dims[2],e.dims[3],e.dims[1]],o=u?[n,l,l,a/l**2,r,i]:[n,a/l**2,l,l,r,i],s=u?[0,3,4,1,5,2]:[0,1,4,2,5,3]);let d=e.reshape(o),f=d.dims.length,p=e.dataType,m=q(`a`,p,f),h=J(`output`,p,f),g=e=>` + ${e.registerUniform(`output_size`,`u32`).declareVariables(m,h)} + + ${ps(s,f,m,h)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let indices = ${h.offsetToIndices(`global_idx`)}; + let aIndices = perm(indices); + + ${h.setByOffset(`global_idx`,m.getByIndices(`aIndices`))} + }`;return{name:`DepthToSpace`,shaderCache:{hint:`${e.dims};${t.blocksize};${t.mode}`,inputDependencies:[`rank`]},getRunData:e=>{let t=c?[n,r*l,i*l,a/l**2]:[n,a/l**2,r*l,i*l],o=U.size(t),u=d.dims,f=U.sortBasedOnPerm(u,s);return{outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:[{type:12,data:o},...G(u,f)]}},getShaderSource:g}},hs=(e,t)=>{fs(e.inputs),e.compute(ms(e.inputs[0],t))},gs=e=>Yn({blocksize:e.blocksize,mode:e.mode,format:e.format})}),vs,ys,bs,xs,Ss,Cs,ws,Ts,Es,Ds,Os,ks=M(()=>{"use strict";V(),W(),Xn(),Y(),vs=`[a-zA-Z]|\\.\\.\\.`,ys=`(`+vs+`)+`,bs=`^`+ys+`$`,xs=`(`+ys+`,)*`+ys,Ss=`^`+xs+`$`,Cs=class{constructor(e=-1){this.symbolToIndices=new Map,this.inputIndex=e}addSymbol(e,t){let n=this.symbolToIndices.get(e);n===void 0?n=[t]:n.push(t),this.symbolToIndices.set(e,n)}},ws=class{constructor(e,t){this.equation=t,this.hasEllipsis=!1,this.symbolToInfo=new Map,this.lhs=[],this.outputDims=[];let[n,r]=t.includes(`->`)?t.split(`->`,2):[t,``];if(!n.match(RegExp(Ss)))throw Error(`Invalid LHS term`);if(n.split(`,`).forEach((t,n)=>{let r=e[n].dims.slice();if(!t.match(RegExp(bs)))throw Error(`Invalid LHS term`);let i=this.processTerm(t,!0,r,n);this.lhs.push(i)}),r===``)r+=[...this.symbolToInfo.entries()].filter(([e,t])=>t.count===1||e===`...`).map(([e])=>e).join(``);else if(!r.match(RegExp(ys)))throw Error(`Invalid RHS`);r.match(RegExp(vs,`g`))?.forEach(e=>{if(e===`...`)this.outputDims=this.outputDims.concat(this.ellipsisDims);else{let t=this.symbolToInfo.get(e);if(t===void 0)throw Error(`Invalid RHS symbol`);this.outputDims.push(t.dimValue)}}),this.rhs=this.processTerm(r,!1,this.outputDims)}addSymbol(e,t,n){let r=this.symbolToInfo.get(e);if(r!==void 0){if(r.dimValue!==t&&r.count!==1)throw Error(`Dimension mismatch`);r.count++,r.inputIndices.push(n)}else r={count:1,dimValue:t,inputIndices:[n]};this.symbolToInfo.set(e,r)}processTerm(e,t,n,r=-1){let i=n.length,a=!1,o=[],s=0;if(!e.match(RegExp(bs))&&!t&&e!==``)throw Error(`Invalid LHS term`);let c=e.match(RegExp(vs,`g`)),l=new Cs(r);return c?.forEach((e,u)=>{if(e===`...`){if(a)throw Error(`Only one ellipsis is allowed per input term`);a=!0;let e=i-c.length+1;if(e<0)throw Error(`Ellipsis out of bounds`);if(o=n.slice(s,s+e),this.hasEllipsis){if(this.ellipsisDims.length!==o.length||this.ellipsisDims.toString()!==o.toString())throw Error(`Ellipsis dimensions mismatch`)}else if(t)this.hasEllipsis=!0,this.ellipsisDims=o;else throw Error(`Ellipsis must be specified in the LHS`);for(let e=0;ee+`_max`,Es=(e,t,n,r)=>{let i=e.map(e=>e.length).map((e,n)=>q(`input${n}`,t,e)),a=U.size(r),o=J(`output`,t,r.length),s=[...n.symbolToInfo.keys()].filter(e=>!n.rhs.symbolToIndices.has(e)),c=e=>{let t=[],r=`var prod = 1.0;`,a=`var sum = 0.0;`,c=`sum += prod;`,l=[],u=[],d=[],f=[],p=n.symbolToInfo.size===n.rhs.symbolToIndices.size;n.symbolToInfo.forEach((e,r)=>{if(n.rhs.symbolToIndices.has(r)){let a=n.rhs.symbolToIndices.get(r)?.[0];a!==void 0&&n.lhs.forEach((n,s)=>{if(e.inputIndices.includes(s)){let e=n.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{t.push(`${i[s].indicesSet(`input${s}Indices`,e,o.indicesGet(`outputIndices`,a))}`)})}})}else n.lhs.forEach((t,n)=>{if(e.inputIndices.includes(n)){let e=t.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{l.push(`${i[n].indicesSet(`input${n}Indices`,e,`${r}`)}`)}),f.push(`prod *= ${i[n].getByIndices(`input${n}Indices`)};`)}}),u.push(`for(var ${r}: u32 = 0; ${r} < uniforms.${Ts(r)}; ${r}++) {`),d.push(`}`)});let m=p?[...t,`let sum = ${i.map((e,t)=>e.getByIndices(`input${t}Indices`)).join(` * `)};`]:[...t,a,...u,...l,r,...f,c,...d];return` + ${e.registerUniforms(s.map(e=>({name:`${Ts(e)}`,type:`u32`}))).registerUniform(`outputSize`,`u32`).declareVariables(...i,o)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + var outputIndices = ${o.offsetToIndices(`global_idx`)}; + ${i.map((e,t)=>`var input${t}Indices: ${i[t].type.indices};`).join(` +`)} + ${m.join(` +`)}; + ${o.setByOffset(`global_idx`,`sum`)}; + }`};return{name:`Einsum`,shaderCache:{hint:n.equation,inputDependencies:e.map(()=>`rank`)},getRunData:()=>{let i=s.filter(e=>n.symbolToInfo.has(e)).map(e=>({type:12,data:n.symbolToInfo.get(e)?.dimValue||0}));i.push({type:12,data:a});let o=e.map((e,t)=>[...G(e)]).reduce((e,t)=>e.concat(t),i);return o.push(...G(r)),{outputs:[{dims:r,dataType:t}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:o}},getShaderSource:c}},Ds=(e,t)=>{let n=new ws(e.inputs,t.equation),r=n.outputDims,i=e.inputs.map((e,t)=>e.dims);e.compute(Es(i,e.inputs[0].dataType,n,r))},Os=e=>{let t=e.equation.replace(/\s+/g,``);return Yn({equation:t})}}),As,js,Ms,Ns,Ps,Fs=M(()=>{"use strict";V(),W(),Y(),As=e=>{if(!e||e.length!==2)throw Error(`Expand requires 2 input.`);let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=n.length{let n=e.length-t.length,r=[];for(let t=0;te.length>t.length?js(e,t):js(t,e),Ns=e=>{let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=Ms(t,n),i=e[0].dataType,a=i===9||U.size(t)===1,o=i===9||t.length>0&&t[t.length-1]%4==0?4:1,s=a||r.length>0&&r[r.length-1]%4==0?4:1,c=Math.ceil(U.size(r)/s),l=e=>{let n=q(`input`,i,t.length,o),a=J(`output`,i,r.length,s),c;if(i===9){let e=(e,t,r=``)=>` + let outputIndices${t} = ${a.offsetToIndices(`outputOffset + ${t}u`)}; + let offset${t} = ${n.broadcastedIndicesToOffset(`outputIndices${t}`,a)}; + let index${t} = offset${t} / 4u; + let component${t} = offset${t} % 4u; + ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); + `;c=` + let outputOffset = global_idx * ${s}; + var data = vec4(0); + ${e(`data`,0,`u32`)} + ${e(`data`,1,`u32`)} + ${e(`data`,2,`u32`)} + ${e(`data`,3,`u32`)} + ${a.setByOffset(`global_idx`,`data`)} + }`}else c=` + let outputIndices = ${a.offsetToIndices(`global_idx * ${s}`)}; + let inputOffset = ${n.broadcastedIndicesToOffset(`outputIndices`,a)}; + let data = ${a.type.value}(${n.getByOffset(`inputOffset / ${o}`)}); + ${a.setByOffset(`global_idx`,`data`)} + }`;return` + ${e.registerUniform(`vec_size`,`u32`).declareVariables(n,a)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + ${c}`},u=[{type:12,data:c},...G(t,r)];return{name:`Expand`,shaderCache:{hint:`${r.length};${o}${s}`,inputDependencies:[`rank`]},getShaderSource:l,getRunData:()=>({outputs:[{dims:r,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:u})}},Ps=e=>{As(e.inputs),e.compute(Ns(e.inputs),{inputs:[0]})}}),Is,Ls,Rs=M(()=>{"use strict";V(),W(),Y(),Oa(),Is=e=>{let t=e[0].dataType,n=U.size(e[0].dims),r=U.size(e[1].dims),i=r%4==0,a=e=>{let n=q(`x`,t,[1],4),r=q(`bias`,t,[1],4),a=J(`y`,t,[1],4),o=[{name:`output_vec_size`,type:`u32`},{name:`bias_size`,type:`u32`}],s=e=>` + let bias${e}_offset: u32 = (global_idx * 4 + ${e}) % uniforms.bias_size; + let bias${e} = ${r.getByOffset(`bias${e}_offset / 4`)}[bias${e}_offset % 4];`,c=i?` + let bias = ${r.getByOffset(`global_idx % (uniforms.bias_size / 4)`)};`:`${s(0)}${s(1)}${s(2)}${s(3)} + let bias = ${n.type.value}(bias0, bias1, bias2, bias3);`;return`${e.registerUniforms(o).declareVariables(n,r,a)} + + ${ba(er(t))} + + ${e.mainStart(Zn)} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_vec_size`)} + + let x = ${n.getByOffset(`global_idx`)}; + ${c} + let x_in = x + bias; + ${a.setByOffset(`global_idx`,xa(`x_in`))} + }`};return{name:`FastGeluWithBias`,shaderCache:{hint:`${i}`,inputDependencies:[`type`,`type`]},getShaderSource:a,getRunData:e=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],programUniforms:[{type:12,data:Math.ceil(n/4)},{type:12,data:r}],dispatchGroup:{x:Math.ceil(n/Zn/4)}})}},Ls=e=>{e.inputs.length<2||U.size(e.inputs[1].dims)===0?Sa(e):e.compute(Is(e.inputs))}}),zs,Bs,Vs,Hs,Us=M(()=>{"use strict";V(),W(),Xn(),Y(),zs=e=>{if(!e||e.length!==2)throw Error(`Gather requires 2 inputs.`)},Bs=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=U.normalizeAxis(t.axis,i),o=n.slice(0);o.splice(a,1,...r);let s=n[a],c=e[0].dataType===9?4:1,l=Math.ceil(U.size(o)/c),u=[{type:12,data:l},{type:6,data:s},{type:12,data:a},...G(e[0].dims,e[1].dims,o)],d=t=>{let n=q(`data`,e[0].dataType,e[0].dims.length,c),s=q(`inputIndices`,e[1].dataType,e[1].dims.length),l=J(`output`,e[0].dataType,o.length,c),u=e=>{let t=r.length,c=`var indicesIndices${e} = ${s.type.indices}(0);`;for(let n=0;n1?`indicesIndices${e}[${n}]`:`indicesIndices${e}`} = ${o.length>1?`outputIndices${e}[uniforms.axis + ${n}]`:`outputIndices${e}`};`;c+=` + var idx${e} = ${s.getByIndices(`indicesIndices${e}`)}; + if (idx${e} < 0) { + idx${e} = idx${e} + uniforms.axisDimLimit; + } + var dataIndices${e} : ${n.type.indices}; + `;for(let n=0,r=0;n1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = u32(idx${e});`,r+=t):(c+=`${i>1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = ${o.length>1?`outputIndices${e}[${r}]`:`outputIndices${e}`};`,r++);return c},d;if(e[0].dataType===9){let e=(e,t,r=``)=>` + let outputIndices${t} = ${l.offsetToIndices(`outputOffset + ${t}u`)}; + ${u(t)}; + let offset${t} = ${n.indicesToOffset(`dataIndices${t}`)}; + let index${t} = offset${t} / 4u; + let component${t} = offset${t} % 4u; + ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); + `;d=` + let outputOffset = global_idx * ${c}; + var value = vec4(0); + ${e(`value`,0,`u32`)} + ${e(`value`,1,`u32`)} + ${e(`value`,2,`u32`)} + ${e(`value`,3,`u32`)} + ${l.setByOffset(`global_idx`,`value`)} + `}else d=` + let outputIndices = ${l.offsetToIndices(`global_idx`)}; + ${u(``)}; + let value = ${n.getByIndices(`dataIndices`)}; + ${l.setByOffset(`global_idx`,`value`)}; + `;return` + ${t.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(n,s,l)} + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + ${d} + }`};return{name:`Gather`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:o,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:d}},Vs=e=>Yn({axis:e.axis}),Hs=(e,t)=>{let n=e.inputs;zs(n),e.compute(Bs(e.inputs,t))}}),Ws,Gs,Ks,qs=M(()=>{"use strict";V(),W(),Y(),Ws=(e,t,n,r,i,a,o,s,c)=>{let l=[{type:12,data:a},{type:12,data:r},{type:12,data:i},{type:12,data:n},{type:12,data:o},{type:12,data:s},{type:12,data:c}],u=[a];l.push(...G(t.dims,u));let d=e=>{let r=q(`indices_data`,t.dataType,t.dims.length),a=J(`input_slice_offsets_data`,12,1,1),o=[r,a],s=[{name:`output_size`,type:`u32`},{name:`batch_dims`,type:`u32`},{name:`input_dims`,type:`u32`,length:i.length},{name:`sizes_from_slice_dims_data`,type:`u32`,length:n.length},{name:`num_slices_per_batch`,type:`u32`},{name:`input_batch_stride`,type:`u32`},{name:`num_slice_dims`,type:`u32`}];return` + ${e.registerUniforms(s).declareVariables(...o)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let batch_idx = global_idx / uniforms.num_slices_per_batch; + let base_offset = batch_idx * uniforms.input_batch_stride; + + let slice_indices_base_offset = global_idx * uniforms.num_slice_dims; + var relative_slice_offset = 0; + for (var dim_idx = 0u; dim_idx < uniforms.num_slice_dims; dim_idx ++) { + var index = i32(indices_data[dim_idx + slice_indices_base_offset].x); + let input_dim_idx = uniforms.batch_dims + dim_idx; + if (index < 0) { + ${i.length===1?`index += i32(uniforms.input_dims);`:`index += i32(uniforms.input_dims[input_dim_idx]);`} + } + ${n.length===1?`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data);`:`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data[dim_idx]);`} + } + + input_slice_offsets_data[global_idx] = base_offset + u32(relative_slice_offset); + }`};return e.compute({name:`computeSliceOffsets`,shaderCache:{hint:`${i.length}_${n.length}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:u,dataType:e.inputs[1].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:l}),getShaderSource:d},{inputs:[t],outputs:[-1]})[0]},Gs=(e,t)=>{let n=e.inputs,r=n[0].dims,i=n[0].dataType,a=n[1].dims,o=a[a.length-1],s=U.sizeToDimension(a,a.length-1),c=U.sizeFromDimension(r,t.batchDims+o),l=U.sizeToDimension(r,t.batchDims),u=U.sizeFromDimension(r,t.batchDims),d=s/l,f=Array(o),p=c;for(let e=0;er.length)throw Error(`last dimension of indices must not be larger than rank of input tensor`);let g=a.slice(0,-1).concat(r.slice(h)),_=U.size(g),v=[{type:12,data:_},{type:12,data:c},...G(n[0].dims,m.dims,g)],y=e=>{let t=q(`data`,n[0].dataType,n[0].dims.length),r=q(`slice_offsets`,12,m.dims.length),i=J(`output`,n[0].dataType,g.length);return` + ${e.registerUniform(`output_size`,`u32`).registerUniform(`slice_size`,`u32`).declareVariables(t,r,i)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let slice_offset = slice_offsets[global_idx / uniforms.slice_size]; + output[global_idx] = data[u32(slice_offset) + global_idx % uniforms.slice_size]; + }`};e.compute({name:`GatherND`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:g,dataType:i}],dispatchGroup:{x:Math.ceil(_/64)},programUniforms:v}),getShaderSource:y},{inputs:[n[0],m]})},Ks=e=>({batchDims:e.batch_dims,cacheKey:``})}),Js,Ys,Xs,Zs,Qs=M(()=>{"use strict";V(),W(),Xn(),Y(),Js=(e,t)=>{if(e.length<3||e.length>4)throw Error(`GatherBlockQuantized requires 3 or 4 inputs.`);let n=U.normalizeAxis(t.quantizeAxis,e[0].dims.length),r=t.blockSize,i=e[0],a=e[2],o=e.length===4?e[3]:void 0;if(a.dims.length!==i.dims.length||!i.dims.map((e,t)=>t===n?Math.ceil(e/r)===a.dims[t]:e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Scales must have the same rank as the input tensor and the dims should match except on gatherAxis.`);if(o){if(o.dataType!==i.dataType)throw Error(`Zero point must have the same data type as the input tensor.`);if(o.dims.length!==a.dims.length||!o.dims.map((e,t)=>e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Zero point must have the same rank as the input tensor and the dims should match except on quantizeAxis.`)}},Ys=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=U.normalizeAxis(t.gatherAxis,i),o=U.normalizeAxis(t.quantizeAxis,i),s=n.slice(0);s.splice(a,1,...r);let c=U.size(s),l=e[2].dataType,u=e[0].dataType===22,d=[{type:12,data:c},{type:12,data:o},{type:12,data:a},{type:12,data:t.blockSize},...G(...e.map((e,t)=>e.dims),s)],f=t=>{let i=q(`data`,e[0].dataType,e[0].dims.length),o=q(`inputIndices`,e[1].dataType,e[1].dims.length),c=q(`scales`,e[2].dataType,e[2].dims.length),d=e.length>3?q(`zeroPoint`,e[3].dataType,e[3].dims.length):void 0,f=J(`output`,l,s.length),p=[i,o,c];d&&p.push(d);let m=[{name:`output_size`,type:`u32`},{name:`quantize_axis`,type:`u32`},{name:`gather_axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` + ${t.registerUniforms(m).declareVariables(...p,f)} + ${t.mainStart()} + let output_indices = ${f.offsetToIndices(`global_idx`)}; + var indices_indices = ${o.type.indices}(0); + ${r.length>1?` + for (var i: u32 = 0; i < ${r.length}; i++) { + let index = ${f.indicesGet(`output_indices`,`uniforms.gather_axis + i`)}; + ${o.indicesSet(`indices_indices`,`i`,`index`)}; + }`:`indices_indices = ${f.indicesGet(`output_indices`,`uniforms.gather_axis`)};`}; + var data_indices = ${i.type.indices}(0); + for (var i: u32 = 0; i < uniforms.gather_axis; i++) { + let index = ${f.indicesGet(`output_indices`,`i`)}; + ${i.indicesSet(`data_indices`,`i`,`index`)}; + } + var index_from_indices = ${o.getByIndices(`indices_indices`)}; + if (index_from_indices < 0) { + index_from_indices += ${n[a]}; + } + ${i.indicesSet(`data_indices`,`uniforms.gather_axis`,`u32(index_from_indices)`)}; + for (var i = uniforms.gather_axis + 1; i < ${s.length}; i++) { + let index = ${f.indicesGet(`output_indices`,`i + ${r.length} - 1`)}; + ${i.indicesSet(`data_indices`,`i`,`index`)}; + } + let data_offset = ${i.indicesToOffset(`data_indices`)}; + let data_index = data_offset % 8; + // Convert 4-bit packed data to 8-bit packed data. + let packed_4bit_quantized_data = ${i.getByOffset(`data_offset / 8`)}; + let packed_8bit_quantized_data = (packed_4bit_quantized_data >> (4 * (data_index % 2))) & 0x0f0f0f0f; + let quantized_data_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_quantized_data)); + let quantized_data = quantized_data_vec[data_index / 2]; + var scale_indices = data_indices; + let quantize_axis_index = ${c.indicesGet(`data_indices`,`uniforms.quantize_axis`)} / uniforms.block_size; + ${c.indicesSet(`scale_indices`,`uniforms.quantize_axis`,`quantize_axis_index`)}; + var scale = ${c.getByIndices(`scale_indices`)}; + ${d?` + let zero_point_indices = scale_indices; + let zero_point_offset = ${d.indicesToOffset(`zero_point_indices`)}; + let zero_point_index = zero_point_offset % 8; + let packed_4bit_zero_points = ${d.getByOffset(`zero_point_offset / 8`)}; + let packed_8bit_zero_points = (packed_4bit_zero_points >> (4 * (zero_point_index % 2))) & 0x0f0f0f0f; + let zero_point_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_zero_points)); + let zero_point = zero_point_vec[zero_point_index / 2];`:`var zero_point = 0`}; + let dequantized_data = ${er(l)}(quantized_data - zero_point) * scale; + ${f.setByOffset(`global_idx`,`dequantized_data`)}; + }`};return{name:`GatherBlockQuantized`,shaderCache:{hint:`${t.cacheKey};${e.filter((e,t)=>t!==1).map(e=>e.dims.join(`_`)).join(`;`)}`,inputDependencies:Array.from({length:e.length},(e,t)=>`rank`)},getRunData:()=>({outputs:[{dims:s,dataType:l}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:d}),getShaderSource:f}},Xs=(e,t)=>{let n=e.inputs;Js(n,t),e.compute(Ys(e.inputs,t))},Zs=e=>Yn({blockSize:e.blockSize,gatherAxis:e.gatherAxis,quantizeAxis:e.quantizeAxis})}),$s,ec,tc,nc,rc=M(()=>{"use strict";V(),W(),Xn(),Y(),$s=e=>{if(!e||e.length!==2)throw Error(`GatherElements requires 2 inputs.`);if(e[0].dims.length<1)throw Error(`GatherElements requires that the data input be rank >= 1.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`GatherElements requires that the data input and + indices input tensors be of same rank.`)},ec=(e,t)=>{let n=e[0].dims,r=e[0].dataType,i=n.length,a=e[1].dims,o=e[1].dataType,s=U.normalizeAxis(t.axis,i),c=n[s],l=a.slice(0),u=U.size(l),d=q(`input`,r,i),f=q(`indicesInput`,o,a.length),p=J(`output`,r,l.length),m=[{type:12,data:u},{type:6,data:c},{type:12,data:s}];return m.push(...G(n,a,l)),{name:`GatherElements`,shaderCache:{inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:l,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:m}),getShaderSource:e=>` + ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(d,f,p)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + + let outputIndices = ${p.offsetToIndices(`global_idx`)}; + + var idx = ${f.getByOffset(`global_idx`)}; + if (idx < 0) { + idx = idx + uniforms.axisDimLimit; + } + var inputIndices = ${d.type.indices}(outputIndices); + ${d.indicesSet(`inputIndices`,`uniforms.axis`,`u32(idx)`)}; + let value = ${d.getByIndices(`inputIndices`)}; + + ${p.setByOffset(`global_idx`,`value`)}; + }`}},tc=e=>Yn({axis:e.axis}),nc=(e,t)=>{let n=e.inputs;$s(n),e.compute(ec(e.inputs,t))}}),ic,ac,oc,sc,cc=M(()=>{"use strict";V(),W(),Y(),ic=e=>{if(!e)throw Error(`Input is missing`);if(e.length<2||e.length>3)throw Error(`Invaid input number.`);if(e.length===3&&e[2].dims.length>2)throw Error(`Invalid input shape of C`);if(e[0].dataType!==e[1].dataType||e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`Input types are mismatched`)},ac=(e,t)=>{let n=e[0].dims.slice(),r=e[1].dims.slice(),[i,a,o]=_n.getShapeOfGemmResult(n,t.transA,r,t.transB,e.length===3?e[2].dims:void 0),s=[i,a];if(!s)throw Error(`Can't use gemm on the given tensors`);let c=16,l=Math.ceil(a/c),u=Math.ceil(i/c),d=!0,f=U.size(s),p=[{type:12,data:d?l:f},{type:12,data:i},{type:12,data:a},{type:12,data:o},{type:1,data:t.alpha},{type:1,data:t.beta}],m=[`type`,`type`];e.length===3&&(p.push(...G(e[2].dims)),m.push(`rank`)),p.push(...G(s));let h=n=>{let r=``;t.transA&&t.transB?r=`value += a[k * uniforms.M + m] * b[n * uniforms.K + k];`:t.transA&&!t.transB?r=`value += a[k * uniforms.M + m] * b[k * uniforms.N + n];`:!t.transA&&t.transB?r=`value += a[m * uniforms.K + k] * b[n * uniforms.K + k];`:!t.transA&&!t.transB&&(r=`value += a[m * uniforms.K + k] * b[k * uniforms.N + n];`);let i=t.alpha===1?``:`value *= uniforms.alpha;`,a=q(`a`,e[0].dataType,e[0].dims),o=q(`b`,e[1].dataType,e[1].dims),c=a.type.value,l=null,u=[a,o];e.length===3&&(l=q(`c`,e[2].dataType,e[2].dims.length),u.push(l));let d=J(`output`,e[0].dataType,s.length);u.push(d);let f=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}];return` + ${n.registerUniforms(f).declareVariables(...u)} + + ${n.mainStart()} + ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let m = global_idx / uniforms.N; + let n = global_idx % uniforms.N; + + var value = ${c}(0); + for (var k: u32 = 0u; k < uniforms.K; k++) { + ${r} + } + + ${i} + ${l==null?``:`let cOffset = ${l.broadcastedIndicesToOffset(`vec2(m, n)`,d)}; value += ${c}(uniforms.beta) * ${l.getByOffset(`cOffset`)};`} + output[global_idx] = value; + }`},g=n=>{let r=q(`a`,e[0].dataType,e[0].dims),i=q(`b`,e[1].dataType,e[1].dims),a=null,o=[r,i];e.length===3&&(a=q(`c`,e[2].dataType,e[2].dims.length),o.push(a));let l=J(`output`,e[0].dataType,s.length);o.push(l);let u=[{name:`num_tile_n`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}],d=``,f=``;t.transA&&t.transB?(f=` + var col = tile_row_start + local_id.x; + var row = k_start + local_id.y; + if (col < uniforms.M && row < uniforms.K) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = k_start + local_id.x; + row = tile_col_start + local_id.y; + if (col < uniforms.K && row < uniforms.N) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[k][local_id.y] * tile_b[local_id.x][k];`):t.transA&&!t.transB?(f=` + var col = tile_row_start + local_id.x; + var row = k_start + local_id.y; + if (col < uniforms.M && row < uniforms.K) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = tile_col_start + local_id.x; + row = k_start + local_id.y; + if (col < uniforms.N && row < uniforms.K) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[k][local_id.y] * tile_b[k][local_id.x];`):!t.transA&&t.transB?(f=` + var col = k_start + local_id.x; + var row = tile_row_start + local_id.y; + if (col < uniforms.K && row < uniforms.M) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = k_start + local_id.x; + row = tile_col_start + local_id.y; + if (col < uniforms.K && row < uniforms.N) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[local_id.y][k] * tile_b[local_id.x][k];`):!t.transA&&!t.transB&&(f=` + var col = k_start + local_id.x; + var row = tile_row_start + local_id.y; + if (col < uniforms.K && row < uniforms.M) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = tile_col_start + local_id.x; + row = k_start + local_id.y; + if (col < uniforms.N && row < uniforms.K) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[local_id.y][k] * tile_b[k][local_id.x];`);let p=t.alpha===1?``:`value *= uniforms.alpha;`;return` + ${n.registerUniforms(u).declareVariables(...o)} + var tile_a: array, ${c}>; + var tile_b: array, ${c}>; + ${n.mainStart([c,c,1])} + let tile_col_start = (workgroup_index % uniforms.num_tile_n) * ${c}; + let tile_row_start = (workgroup_index / uniforms.num_tile_n) * ${c}; + let num_tiles = (uniforms.K - 1) / ${c} + 1; + var k_start = 0u; + var value = ${l.type.value}(0); + for (var t: u32 = 0u; t < num_tiles; t++) { + ${f} + k_start = k_start + ${c}; + workgroupBarrier(); + + for (var k: u32 = 0u; k < ${c}; k++) { + ${d} + } + workgroupBarrier(); + } + + ${p} + let m = tile_row_start + local_id.y; + let n = tile_col_start + local_id.x; + ${a==null?``:`let cOffset = ${a.broadcastedIndicesToOffset(`vec2(m, n)`,l)}; value += ${l.type.value}(uniforms.beta) * ${a.getByOffset(`cOffset`)};`} + if (m < uniforms.M && n < uniforms.N) { + output[m * uniforms.N + n] = value; + } + }`};return d?{name:`GemmShared`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:l*u},programUniforms:p}),getShaderSource:g}:{name:`Gemm`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},oc=e=>{let t=e.transA,n=e.transB,r=e.alpha,i=e.beta;return{transA:t,transB:n,alpha:r,beta:i,cacheKey:`${e.transA};${e.transB};${e.alpha===1}`}},sc=(e,t)=>{ic(e.inputs),e.compute(ac(e.inputs,t))}}),lc,uc,dc,fc,pc,mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc=M(()=>{"use strict";V(),W(),Xn(),Y(),[lc,uc,dc,fc]=[0,1,2,3],pc=e=>{if(e[0].dims.length!==4)throw Error(`only 4-D tensor is supported.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`input dimensions must be equal to grid dimensions`);if(e[0].dims.length-2!==e[1].dims[e[1].dims.length-1])throw Error(`last dimension of grid must be equal to ${e[0].dims.length-2}`);if(e[0].dims[0]!==e[1].dims[0])throw Error(`grid batch size must match input batch size`)},mc=` + fn gs_get_cubic_coeffs(x: f32) -> vec4 { + let cubic_alpha = -0.75f; + let x_abs = abs(x); + var coeffs: vec4; + coeffs[0] = (((cubic_alpha * (x_abs + 1) - 5 * cubic_alpha) * (x_abs + 1) + 8 * cubic_alpha) * (x_abs + 1) - 4 * cubic_alpha); + coeffs[1] = (((cubic_alpha + 2) * x_abs - (cubic_alpha + 3)) * x_abs * x_abs + 1); + coeffs[2] = (((cubic_alpha + 2) * (1 - x_abs) - (cubic_alpha + 3)) * (1 - x_abs) * (1 - x_abs) + 1); + coeffs[3] = (((cubic_alpha * (2 - x_abs) - 5 * cubic_alpha) * (2 - x_abs) + 8 * cubic_alpha) * (2 - x_abs) - 4 * cubic_alpha); + return coeffs; + } +`,hc=e=>` + fn gs_bicubic_interpolate(p: mat4x4<${e}>, x: f32, y: f32) -> ${e} { + var v: vec4; + var coeffs = gs_get_cubic_coeffs(x); + for (var i = 0; i < 4; i++) { + v[i] = coeffs[0] * p[i][0] + coeffs[1] * p[i][1] + coeffs[2] * p[i][2] + coeffs[3] * p[i][3]; + } + coeffs = gs_get_cubic_coeffs(y); + let pixel = ${e}(coeffs[0] * v[0] + coeffs[1] * v[1] + coeffs[2] * v[2] + coeffs[3] * v[3]); + return pixel; + } +`,gc=e=>` + fn gs_denormalize(n: f32, length: i32) -> f32 { + ${e.alignCorners===0?` + // alignCorners: false => [-1, 1] to [-0.5, length - 0.5] + return ((n + 1.0) * f32(length) - 1.0) / 2.0; + `:` + // alignCorners: true => [-1, 1] to [0, length - 1] + return (n + 1.0) / 2.0 * (f32(length - 1)); + `} + } +`,_c=e=>` + ${e.paddingMode===`reflection`?` + fn gs_reflect(x: i32, x_min: f32, x_max: f32) -> u32 { + var dx = 0.0; + var fx = f32(x); + let range = x_max - x_min; + if (fx < x_min) { + dx = x_min - fx; + let n = u32(dx / range); + let r = dx - f32(n) * range; + if (n % 2 == 0) { + fx = x_min + r; + } else { + fx = x_max - r; + } + } else if (fx > x_max) { + dx = fx - x_max; + let n = u32(dx / range); + let r = dx - f32(n) * range; + if (n % 2 == 0) { + fx = x_max - r; + } else { + fx = x_min + r; + } + } + return u32(fx); + }`:``} +`,vc=(e,t,n)=>` + fn pixel_at_grid(r: i32, c: i32, H: i32, W: i32, batch: u32, channel: u32, border: vec4) -> ${t} { + var pixel = ${t}(0); + var indices = vec4(0); + indices[${lc}] = batch; + indices[${uc}] = channel;`+(()=>{switch(n.paddingMode){case`zeros`:return` + if (r >= 0 && r < H && c >=0 && c < W) { + indices[${dc}] = u32(r); + indices[${fc}] = u32(c); + } else { + return ${t}(0); + } + `;case`border`:return` + indices[${dc}] = u32(clamp(r, 0, H - 1)); + indices[${fc}] = u32(clamp(c, 0, W - 1)); + `;case`reflection`:return` + indices[${dc}] = gs_reflect(r, border[1], border[3]); + indices[${fc}] = gs_reflect(c, border[0], border[2]); + `;default:throw Error(`padding mode ${n.paddingMode} is not supported`)}})()+` + return ${e.getByIndices(`indices`)}; + } +`,yc=(e,t,n)=>(()=>{switch(n.mode){case`nearest`:return` + let result = pixel_at_grid(i32(round(y)), i32(round(x)), H_in, W_in, indices[${lc}], indices[${uc}], border); + `;case`bilinear`:return` + let x1 = i32(floor(x)); + let y1 = i32(floor(y)); + let x2 = x1 + 1; + let y2 = y1 + 1; + + let p11 = pixel_at_grid(y1, x1, H_in, W_in, indices[${lc}], indices[${uc}], border); + let p12 = pixel_at_grid(y1, x2, H_in, W_in, indices[${lc}], indices[${uc}], border); + let p21 = pixel_at_grid(y2, x1, H_in, W_in, indices[${lc}], indices[${uc}], border); + let p22 = pixel_at_grid(y2, x2, H_in, W_in, indices[${lc}], indices[${uc}], border); + + let dx2 = ${t}(f32(x2) - x); + let dx1 = ${t}(x - f32(x1)); + let dy2 = ${t}(f32(y2) - y); + let dy1 = ${t}(y - f32(y1)); + let result = dy2 * (dx2 * p11 + dx1 * p12) + dy1 * (dx2 * p21 + dx1 * p22); + `;case`bicubic`:return` + let x0 = i32(floor(x)) - 1; + let y0 = i32(floor(y)) - 1; + var p: mat4x4<${t}>; + for (var h = 0; h < 4; h++) { + for (var w = 0; w < 4; w++) { + p[h][w] = pixel_at_grid(h + y0, w + x0, H_in, W_in, indices[${lc}], indices[${uc}], border); + } + } + + let dx = x - f32(x0 + 1); + let dy = y - f32(y0 + 1); + let result = gs_bicubic_interpolate(p, dx, dy); + `;default:throw Error(`mode ${n.mode} is not supported`)}})()+`${e.setByOffset(`global_idx`,`result`)}`,bc=(e,t)=>{let n=q(`x`,e[0].dataType,e[0].dims.length),r=[e[1].dims[0],e[1].dims[1],e[1].dims[2]],i=q(`grid`,e[1].dataType,r.length,2),a=[e[0].dims[0],e[0].dims[1],e[1].dims[1],e[1].dims[2]];t.format===`NHWC`&&(a=[e[0].dims[0],e[1].dims[1],e[1].dims[2],e[0].dims[3]],[lc,uc,dc,fc]=[0,3,1,2]);let o=J(`output`,e[0].dataType,a.length),s=n.type.value,c=U.size(a),l=[{type:12,data:c},...G(e[0].dims,r,a)],u=e=>` + ${e.registerUniform(`output_size`,`u32`).declareVariables(n,i,o)} + ${mc} + ${hc(s)} + ${gc(t)} + ${_c(t)} + ${vc(n,s,t)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let H_in = i32(uniforms.x_shape[${dc}]); + let W_in = i32(uniforms.x_shape[${fc}]); + + ${t.alignCorners===0?` + let x_min = -0.5; + let x_max = f32(W_in) - 0.5; + let y_min = -0.5; + let y_max = f32(H_in) - 0.5; + `:` + let x_min = 0.0; + let x_max = f32(W_in) - 1.0; + let y_min = 0.0; + let y_max = f32(H_in) - 1.0; + `}; + let border = vec4(x_min, y_min, x_max, y_max); + + let indices = ${o.offsetToIndices(`global_idx`)}; + var grid_indices = vec3(indices[${lc}], indices[${dc}], indices[${fc}]); + let nxy = ${i.getByIndices(`grid_indices`)}; + var x = gs_denormalize(f32(nxy[0]), W_in); + var y = gs_denormalize(f32(nxy[1]), H_in); + + ${yc(o,s,t)} + }`;return{name:`GridSample`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:[`type`,`type`]},getRunData:e=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:l}},getShaderSource:u}},xc=(e,t)=>{pc(e.inputs),e.compute(bc(e.inputs,t))},Sc=e=>Yn({alignCorners:e.align_corners,mode:e.mode,paddingMode:e.padding_mode,format:e.format})}),wc,Tc,Ec,Dc,Oc,kc,Ac,jc=M(()=>{"use strict";V(),W(),Xn(),Ln(),Di(),Y(),vr(),wc=(e,t)=>e.length>t&&e[t].dims.length>0?e[t]:void 0,Tc=(e,t)=>{let n=e[0],r=wc(e,1),i=wc(e,2),a=wc(e,3),o=wc(e,4),s=wc(e,5),c=wc(e,6),l=wc(e,7);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let u=n.dims[0],d=n.dims[1],f=n.dims.length===3?n.dims[2]:t.numHeads*n.dims[4],p=d,m=0,h=0,g=Math.floor(f/t.numHeads);if(c&&l&&U.size(c.dims)&&U.size(l.dims)){if(c.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(c.dims[0]!==u||c.dims[1]!==t.numHeads||c.dims[3]!==g)throw Error(`Input "past_key" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(l.dims[0]!==u||l.dims[1]!==t.numHeads||l.dims[3]!==g)throw Error(`Input "past_value" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(c.dims[2]!==l.dims[2])throw Error(`Input "past_key" and "past_value" shall have same dim 2 (past_sequence_length)`);if(l.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);m=c.dims[2],h=c.dims[2]}else if(c&&U.size(c.dims)||l&&U.size(l.dims))throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _;if(r&&U.size(r.dims)>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(r.dims[2]!==n.dims[2])throw Error(`Input "query" and "key" shall have same dim 2 (hidden_size)`);_=2,p=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==g)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);_=5,p=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==g)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);_=0,p=r.dims[2]}}else{if(n.dims.length!==5)throw Error(`Input "query" is expected to have 5 dimensions when key is empty`);if(n.dims[2]!==t.numHeads||n.dims[3]!==3)throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}if(a&&U.size(a.dims)>0){if(a.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimension`);if(r&&r.dims.length===5&&r.dims[3]===2)throw Error(`bias is not allowed for packed kv.`)}let v=m+p,y=0;if(o&&U.size(o.dims)>0){y=8;let e=o.dims;throw e.length===1?e[0]===u?y=1:e[0]===3*u+2&&(y=3):e.length===2&&e[0]===u&&e[1]===v&&(y=5),y===8?Error(`Input "key_padding_mask" shape shall be (batch_size) or (batch_size, total_sequence_length)`):Error(`Mask not supported`)}let b=!1,x=f;if(i&&U.size(i.dims)>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(p!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);x=i.dims[2]}else{if(p!==i.dims[2])throw Error(`Input "key" and "value" shall have the same dim 2 (kv_sequence_length)`);x=i.dims[1]*i.dims[3],b=!0}}let S=!1;if(o&&U.size(o.dims)>0)throw Error(`Key padding mask is not supported`);if(s&&U.size(s.dims)>0){if(s.dims.length!==4)throw Error(`Input "attention_bias" is expected to have 4 dimensions`);if(s.dims[0]!==u||s.dims[1]!==t.numHeads||s.dims[2]!==d||s.dims[3]!==v)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:u,sequenceLength:d,pastSequenceLength:m,kvSequenceLength:p,totalSequenceLength:v,maxSequenceLength:h,inputHiddenSize:0,hiddenSize:f,vHiddenSize:x,headSize:g,vHeadSize:Math.floor(x/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:y,scale:t.scale,broadcastResPosBias:S,passPastInKv:b,qkvFormat:_}},Ec=e=>Yn({...e}),Dc=Yn({perm:[0,2,1,3]}),Oc=(e,t,n,r,i,a,o)=>{let s=[r,i,a],c=U.size(s),l=[{type:12,data:c},{type:12,data:o},{type:12,data:a}],u=e=>{let r=J(`qkv_with_bias`,t.dataType,s),i=q(`qkv`,t.dataType,s),a=q(`bias`,n.dataType,s),o=[{name:`output_size`,type:`u32`},{name:`bias_offset`,type:`u32`},{name:`hidden_size`,type:`u32`}];return` + ${e.registerUniforms(o).declareVariables(i,a,r)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let bias_offset_idx = (global_idx % uniforms.hidden_size) + uniforms.bias_offset; + + qkv_with_bias[global_idx] = qkv[global_idx] + bias[bias_offset_idx]; + }`};return e.compute({name:`MultiHeadAttentionAddBias`,shaderCache:{inputDependencies:[`type`,`type`]},getRunData:()=>({outputs:[{dims:s,dataType:t.dataType,gpuDataType:0}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l}),getShaderSource:u},{inputs:[t,n],outputs:[-1]})[0]},kc=(e,t,n,r,i,a,o,s)=>{let c=a;if(o&&U.size(o.dims)>0){if(r===1)throw Error(`AddBiasReshape is not implemented. Please export your model with packed QKV or KV`);return c=Oc(e,a,o,t,r,n*i,s),c=c.reshape([t,r,n,i]),n===1||r===1?c:e.compute(hr(c,Dc.perm),{inputs:[c],outputs:[-1]})[0]}else return a.dims.length===3&&(c=a.reshape([t,r,n,i])),n===1||r===1?c:e.compute(hr(c,Dc.perm),{inputs:[c],outputs:[-1]})[0]},Ac=(e,t)=>{let n=Tc(e.inputs,t),r=e.inputs[0],i=wc(e.inputs,1),a=wc(e.inputs,2),o=wc(e.inputs,3),s=wc(e.inputs,4),c=wc(e.inputs,5),l=wc(e.inputs,6),u=wc(e.inputs,7);if(r.dims.length===5)throw Error(`Packed QKV is not implemented`);if(i?.dims.length===5)throw Error(`Packed KV is not implemented`);let d=i&&a&&i.dims.length===4&&a.dims.length===4,f=kc(e,n.batchSize,n.numHeads,n.sequenceLength,n.headSize,r,o,0);if(d)return wi(e,f,i,a,s,void 0,l,u,c,n);if(!i||!a)throw Error(`key and value must be provided`);let p=kc(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.headSize,i,o,n.hiddenSize),m=kc(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.vHeadSize,a,o,2*n.hiddenSize);wi(e,f,p,m,s,void 0,l,u,c,n)}}),Mc,Nc,Pc,Fc,Ic,Lc,Rc,zc=M(()=>{"use strict";V(),W(),Xn(),Y(),Mc=e=>{if(!e||e.length<1)throw Error(`too few inputs`)},Nc=(e,t)=>{let n=[],r=t.numOutputs;return e[1].dims[0]>0&&(e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),r=n.length),Yn({numOutputs:r,axis:t.axis,splitSizes:n})},Pc=e=>` +fn calculateOutputIndex(index: u32) -> u32 { + for (var i: u32 = 0u; i < ${e}u; i += 1u ) { + if (index < ${K(`uniforms.size_in_split_axis`,`i`,e)}) { + return i; + } + } + return ${e}u; +}`,Fc=e=>{let t=e.length,n=[];for(let r=0;r{let n=e[0].dims,r=U.size(n),i=e[0].dataType,a=U.normalizeAxis(t.axis,n.length),o=Array(t.numOutputs),s=q(`input`,i,n.length),c=Array(t.numOutputs),l=[],u=[],d=0,f=[{type:12,data:r}];for(let r=0;r` + ${e.registerUniform(`input_size`,`u32`).registerUniform(`size_in_split_axis`,`u32`,c.length).declareVariables(s,...o)} + ${Pc(c.length)} + ${Fc(o)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.input_size`)} + + var indices = ${s.offsetToIndices(`global_idx`)}; + var index = ${s.indicesGet(`indices`,a)}; + let output_number = calculateOutputIndex(index); + if (output_number != 0) { + index -= ${K(`uniforms.size_in_split_axis`,`output_number - 1u`,c.length)}; + ${s.indicesSet(`indices`,a,`index`)}; + } + writeBufferData(output_number, indices, global_idx); + }`;return{name:`Split`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`]},getShaderSource:p,getRunData:()=>({outputs:l,dispatchGroup:{x:Math.ceil(r/64)},programUniforms:f})}},Lc=(e,t)=>{Mc(e.inputs);let n=e.inputs.length===1?t:Nc(e.inputs,t);e.compute(Ic(e.inputs,n),{inputs:[0]})},Rc=e=>{let t=e.axis,n=e.splitSizes,r=e.numOutputs<0?n.length:e.numOutputs;if(r!==n.length)throw Error(`numOutputs and splitSizes lengh must be equal`);return Yn({axis:t,numOutputs:r,splitSizes:n})}}),Bc,Vc,Hc,Uc=M(()=>{"use strict";V(),W(),Xn(),Y(),Bc=(e,t)=>{let[n,r,i,a]=e,{numHeads:o,rotaryEmbeddingDim:s}=t;if(n.dims.length!==3&&n.dims.length!==4)throw Error(`Input 'x' is expected to have 3 or 4 dimensions, got ${n.dims.length}`);if(!U.areEqual(r.dims,[])&&!U.areEqual(r.dims,[1])&&r.dims.length!==2)throw Error(`Input 'position_ids' is expected to have 0, 1, or 2 dimensions, got ${r.dims.length}`);if(i.dims.length!==2)throw Error(`Input 'cos_cache' is expected to have 2 dimensions, got ${i.dims.length}`);if(a.dims.length!==2)throw Error(`Input 'sin_cache' is expected to have 2 dimensions, got ${a.dims.length}`);if(!U.areEqual(i.dims,a.dims))throw Error(`Inputs 'cos_cache' and 'sin_cache' are expected to have the same shape`);if(s>0&&o===0)throw Error(`num_heads must be provided if rotary_embedding_dim is specified`);let c=n.dims[0],l=n.dims[n.dims.length-2],u=i.dims[0],d=U.sizeFromDimension(n.dims,1)/l,f=s===0?i.dims[1]*2:d/o;if(s>f)throw Error(`rotary_embedding_dim must be less than or equal to head_size`);if(r.dims.length===2){if(c!==r.dims[0])throw Error(`Input 'position_ids' dimension 0 should be of size batch_size, got ${r.dims[0]}`);if(l!==r.dims[1])throw Error(`Input 'position_ids' dimension 1 should be of size sequence_length, got ${r.dims[1]}`)}if(f/2!==i.dims[1]&&s/2!==i.dims[1])throw Error(`Input 'cos_cache' dimension 1 should be same as head_size / 2 or rotary_embedding_dim / 2, got ${i.dims[1]}`);if(l>u)throw Error(`Updating cos_cache and sin_cache in RotaryEmbedding is not currently supported`)},Vc=(e,t)=>{let{interleaved:n,numHeads:r,rotaryEmbeddingDim:i,scale:a}=t,o=e[0].dims[0],s=U.sizeFromDimension(e[0].dims,1),c=e[0].dims[e[0].dims.length-2],l=s/c,u=e[2].dims[1],d=i===0?u*2:l/r,f=[o,c,l/d,d-u],p=U.computeStrides(f),m=[{type:1,data:a},{type:12,data:f},{type:12,data:p},...e[0].dims.length===3?Array({type:12,data:[s,l,d,1]}):[],...e[0].dims.length===4?Array({type:12,data:[s,d,c*d,1]}):[],...G(e[0].dims,e[1].dims,e[2].dims,e[3].dims,e[0].dims)],h=t=>{let r=q(`input`,e[0].dataType,e[0].dims.length),i=q(`position_ids`,e[1].dataType,e[1].dims.length),a=q(`cos_cache`,e[2].dataType,e[2].dims.length),o=q(`sin_cache`,e[3].dataType,e[3].dims.length),s=J(`output`,e[0].dataType,e[0].dims.length);return t.registerUniforms([{name:`scale`,type:`f32`},{name:`global_shape`,type:`u32`,length:f.length},{name:`global_strides`,type:`u32`,length:p.length},{name:`input_output_strides`,type:`u32`,length:p.length}]),` + ${t.declareVariables(r,i,a,o,s)} + + ${t.mainStart(Zn)} + let half_rotary_emb_dim = uniforms.${a.name}_shape[1]; + let bsnh = global_idx / uniforms.global_strides % uniforms.global_shape; + let size = uniforms.global_shape[0] * uniforms.global_strides[0]; + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`size`)} + + if (bsnh[3] < half_rotary_emb_dim) { + let position_ids_idx = + ${i.broadcastedIndicesToOffset(`bsnh.xy`,J(``,i.type.tensor,2))}; + let position_id = + u32(${i.getByOffset(`position_ids_idx`)}) + select(0, bsnh[1], position_ids_idx == 0); + let i = dot(bsnh, uniforms.input_output_strides) + select(0, bsnh[3], ${n}); + let j = i + select(half_rotary_emb_dim, 1, ${n}); + let re = ${r.getByOffset(`i`)} * ${a.get(`position_id`,`bsnh[3]`)} - + ${r.getByOffset(`j`)} * ${o.get(`position_id`,`bsnh[3]`)}; + ${s.setByOffset(`i`,`re`)} + let im = ${r.getByOffset(`i`)} * ${o.get(`position_id`,`bsnh[3]`)} + + ${r.getByOffset(`j`)} * ${a.get(`position_id`,`bsnh[3]`)}; + ${s.setByOffset(`j`,`im`)} + } else { + let k = dot(bsnh, uniforms.input_output_strides) + half_rotary_emb_dim; + ${s.setByOffset(`k`,r.getByOffset(`k`))} + } + }`};return{name:`RotaryEmbedding`,shaderCache:{hint:Yn({interleaved:n}).cacheKey,inputDependencies:[`rank`,`rank`,`rank`,`rank`]},getShaderSource:h,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(U.size(f)/Zn)},programUniforms:m})}},Hc=(e,t)=>{Bc(e.inputs,t),e.compute(Vc(e.inputs,t))}}),Wc,Gc,Kc,qc,Jc,Yc=M(()=>{"use strict";Xn(),V(),Di(),jc(),zc(),vr(),Uc(),Y(),Wc=(e,t)=>{if(t.doRotary&&e.length<=7)throw Error(`cos_cache and sin_cache inputs are required if do_rotary is specified`);let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4];if(t.doRotary!==0&&e.length<=7)throw Error(`cos_cast and sin_cache are expected if do_rotary attribute is non-zero`);if(t.localWindowSize!==-1)throw Error(`Local attention is not supported`);if(t.softcap!==0)throw Error(`Softcap is not supported`);if(t.rotaryInterleaved!==0)throw Error(`Rotary interleaved is not supported`);if(t.smoothSoftmax)throw Error(`Smooth softmax is not supported`);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let s=!1,c=n.dims[0],l=n.dims[1],u=n.dims.length===3?s?n.dims[2]/3:n.dims[2]:t.numHeads*n.dims[4],d=l,f=0,p=!r||r.dims.length===0,m=Math.floor(p?u/(t.numHeads+2*t.kvNumHeads):u/t.numHeads);p&&(u=m*t.numHeads);let h=a&&a.dims.length!==0,g=o&&o.dims.length!==0;if(h&&a.dims.length===4&&a.dims[0]===c&&a.dims[1]!==t.kvNumHeads&&a.dims[2]===t.kvNumHeads&&a.dims[3]===m)throw Error(`BSNH pastKey/pastValue is not supported`);if(h&&g){if(a.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(o.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);f=a.dims[2]}else if(h||g)throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _=1;if(r&&r.dims.length>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(n.dims[2]%r.dims[2]!==0)throw Error(`Dimension 2 of "query" should be a multiple of "key"`);d=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==m)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);d=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==m)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);d=r.dims[2]}}else{if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input "query" is expected to have 3 or 5 dimensions when key is empty`);if(n.dims.length===5&&(n.dims[2]!==t.numHeads||n.dims[3]!==3))throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}let v=0,y=!1,b=t.kvNumHeads?m*t.kvNumHeads:u;if(i&&i.dims.length>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(d!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);b=i.dims[2]}else{if(d!==i.dims[2])throw Error(`Input "past_key" and "past_value" shall have the same dim 2 (kv_sequence_length)`);b=i.dims[1]*i.dims[3],y=!0}}let x=e.length>4?e[5]:void 0;if(x&&x.dims.length!==1&&x.dims[0]!==c)throw Error(`Input "seqlens" is expected to have 1 dimension and the same dim 0 as batch_size`);return{batchSize:c,sequenceLength:l,pastSequenceLength:f,kvSequenceLength:d,totalSequenceLength:-1,maxSequenceLength:-1,inputHiddenSize:0,hiddenSize:u,vHiddenSize:b,headSize:m,vHeadSize:Math.floor(b/t.kvNumHeads),numHeads:t.numHeads,kvNumHeads:t.kvNumHeads,nReps:t.numHeads/t.kvNumHeads,pastPresentShareBuffer:!1,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:y,qkvFormat:_}},Gc=Yn({perm:[0,2,1,3]}),Kc=(e,t,n)=>{let r=t,i=n.kvNumHeads;return t.dims.length===3&&n.kvSequenceLength!==0&&(r=t.reshape([n.batchSize,n.kvSequenceLength,i,n.headSize]),r=e.compute(hr(r,Gc.perm),{inputs:[r],outputs:[-1]})[0]),r},qc=(e,t,n,r)=>{let i=7,a=[`type`,`type`],o=[e*t],s=e*t,c=[{type:12,data:s},{type:12,data:t},{type:12,data:e}],l=e=>{let t=q(`seq_lens`,n.dataType,n.dims),a=q(`total_seq_lens`,r.dataType,r.dims),s=J(`pos_ids`,i,o),c=[{name:`output_size`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`batch_size`,type:`u32`}];return` + ${e.registerUniforms(c).declareVariables(t,a,s)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let total_sequence_length = u32(${a.getByOffset(`0`)}); + let is_subsequent_prompt = uniforms.sequence_length > 1 && uniforms.sequence_length != total_sequence_length; + let is_first_prompt = !is_subsequent_prompt && uniforms.sequence_length == total_sequence_length; + let batch_idx = global_idx / uniforms.sequence_length; + let sequence_idx = i32(global_idx % uniforms.sequence_length); + var pos_id: i32 = 0; + let seqlen = ${t.getByOffset(`batch_idx`)}; + let total_seqlen = seqlen + 1; + if (is_first_prompt) { + if (sequence_idx < total_seqlen) { + pos_id = sequence_idx; + } else { + pos_id = 1; + } + ${s.setByOffset(`global_idx`,`pos_id`)} + } else if (is_subsequent_prompt) { + let past_seqlen = total_seqlen - i32(uniforms.sequence_length); + if (past_seqlen + sequence_idx < total_seqlen) { + pos_id = past_seqlen + sequence_idx; + } else { + pos_id = 1; + } + ${s.setByOffset(`global_idx`,`pos_id`)} + } else if (global_idx < uniforms.batch_size) { + ${s.setByOffset(`global_idx`,`seqlen`)} + }; + } + `};return{name:`GeneratePositionIds`,shaderCache:{hint:`${e};${t}`,inputDependencies:a},getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:c}),getShaderSource:l}},Jc=(e,t)=>{let n=Wc(e.inputs,t);if(e.inputs[0].dims.length===5)throw Error(`Packed QKV is not implemented`);if(e.inputs[1]?.dims.length===5)throw Error(`Packed KV is not implemented`);let r=e.inputs[0],i=e.inputs[1]&&e.inputs[1].dims.length>0?e.inputs[1]:void 0,a=e.inputs[2]&&e.inputs[2].dims.length>0?e.inputs[2]:void 0,o=e.inputs[3]&&e.inputs[3].dims.length!==0?e.inputs[3]:void 0,s=e.inputs[4]&&e.inputs[4].dims.length!==0?e.inputs[4]:void 0,c=e.inputs.length>4?e.inputs[5]:void 0,l=e.inputs.length>5?e.inputs[6]:void 0,u=n.kvNumHeads?n.kvNumHeads:n.numHeads,d=Yn({axis:2,numOutputs:3,splitSizes:[n.numHeads*n.headSize,u*n.headSize,u*n.headSize]}),[f,p,m]=!i&&!a?e.compute(Ic([r],d),{inputs:[r],outputs:[-1,-1,-1]}):[r,i,a],h,g;if(t.doRotary){let r=e.compute(qc(n.batchSize,n.sequenceLength,c,l),{inputs:[c,l],outputs:[-1]})[0],i=e.inputs[7],a=e.inputs[8],o=Yn({interleaved:t.rotaryInterleaved!==0,numHeads:n.numHeads,rotaryEmbeddingDim:0,scale:t.scale}),s=[f,r,i,a],u=[-1];h=e.compute(Vc(s,o),{inputs:s,outputs:u})[0],s.splice(0,1,p);let d=Yn({interleaved:t.rotaryInterleaved!==0,numHeads:n.kvNumHeads,rotaryEmbeddingDim:0,scale:t.scale});g=e.compute(Vc(s,d),{inputs:s,outputs:u})[0]}let _=kc(e,n.batchSize,n.numHeads,n.sequenceLength,n.headSize,t.doRotary?h:f,void 0,0),v=Kc(e,t.doRotary?g:p,n),y=Kc(e,m,n);wi(e,_,v,y,void 0,void 0,o,s,void 0,n,c,l)}}),Xc,Zc,Qc,$c,el=M(()=>{"use strict";V(),W(),vr(),Y(),Xc=(e,t,n,r,i,a,o,s)=>{let c=tr(a),l=c===1?`f32`:`vec${c}f`,u=c===1?`vec2f`:`mat2x${c}f`,d=i*o,f=64;d===1&&(f=256);let p=[i,o,a/c],m=[i,o,2],h=[`rank`,`type`,`type`],g=[];g.push(...G(p,m));let _=e=>{let i=q(`x`,t.dataType,3,c),a=q(`scale`,n.dataType,n.dims),o=q(`bias`,r.dataType,r.dims),d=J(`output`,1,3,2),p=[i,a,o,d];return` + var workgroup_shared : array<${u}, ${f}>; + const workgroup_size = ${f}u; + ${e.declareVariables(...p)} + ${e.mainStart(f)} + let batch = workgroup_index / uniforms.x_shape[1]; + let channel = workgroup_index % uniforms.x_shape[1]; + let hight = uniforms.x_shape[2]; + // initialize workgroup memory + var sum = ${l}(0); + var squared_sum = ${l}(0); + for (var h = local_idx; h < hight; h += workgroup_size) { + let value = ${l}(${i.get(`batch`,`channel`,`h`)}); + sum += value; + squared_sum += value * value; + } + workgroup_shared[local_idx] = ${u}(sum, squared_sum); + workgroupBarrier(); + + for (var currSize = workgroup_size >> 1; currSize > 0; currSize = currSize >> 1) { + if (local_idx < currSize) { + workgroup_shared[local_idx] = workgroup_shared[local_idx] + workgroup_shared[local_idx + currSize]; + } + workgroupBarrier(); + } + if (local_idx == 0) { + let sum_final = ${ir(`workgroup_shared[0][0]`,c)} / f32(hight * ${c}); + let squared_sum_final = ${ir(`workgroup_shared[0][1]`,c)} / f32(hight * ${c}); + + let inv_std_dev = inverseSqrt(squared_sum_final - sum_final * sum_final + f32(${s})); + let channel_scale = inv_std_dev * f32(scale[channel]); + let channel_shift = f32(bias[channel]) - sum_final * channel_scale; + output[workgroup_index] = vec2f(channel_scale, channel_shift); + } + }`};return e.compute({name:`InstanceNormComputeChannelScaleShift`,shaderCache:{hint:`${c};${s};${f}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:m,dataType:1}],dispatchGroup:{x:d},programUniforms:g}),getShaderSource:_},{inputs:[t,n,r],outputs:[-1]})[0]},Zc=(e,t,n)=>{let r=t[0].dims,i=r,a=2,o=r[0],s=r[1],c=U.sizeFromDimension(r,a),l=tr(c),u=U.size(i)/l,d=Xc(e,t[0],t[1],t[2],o,c,s,n.epsilon),f=[o,s,c/l],p=[o,s],m=[`type`,`none`],h=e=>{let n=q(`x`,t[0].dataType,f.length,l),r=q(`scale_shift`,1,p.length,2),i=J(`output`,t[0].dataType,f.length,l),a=[n,r,i];return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(...a)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let outputIndices = ${i.offsetToIndices(`global_idx`)}; + let batch = outputIndices[0]; + let channel = outputIndices[1]; + let scale_shift = ${r.getByIndices(`vec2(batch, channel)`)}; + let value = ${n.getByOffset(`global_idx`)} * ${i.type.value}(scale_shift.x) + ${i.type.value}(scale_shift.y); + ${i.setByOffset(`global_idx`,`value`)}; + }`};e.compute({name:`InstanceNormalization`,shaderCache:{hint:`${l}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:[{type:12,data:u},...G(f,p,f)]}),getShaderSource:h},{inputs:[t[0],d]})},Qc=(e,t,n)=>{let r=t[0].dims,i=r,a=r[0],o=r[r.length-1],s=U.sizeFromDimension(r,1)/o,c=tr(o),l=U.size(i)/c,u=[{type:12,data:s},{type:12,data:Math.floor(o/c)}],d=[`type`,`type`],f=!1,p=[0,r.length-1];for(let e=0;er[p[t]])),h=Xc(e,m,t[1],t[2],a,s,o,n.epsilon),g=e=>{let n=$n(t[0].dataType),r=c===1?`vec2f`:`mat${c}x2f`,a=e=>{let t=e===0?`x`:`y`,r=c===1?`f32`:`vec${c}f`;switch(c){case 1:return`${n}(${r}(scale.${t}))`;case 2:return`vec2<${n}>(${r}(scale[0].${t}, scale[1].${t}))`;case 4:return`vec4<${n}>(${r}(scale[0].${t}, scale[1].${t}, scale[2].${t}, scale[3].${t}))`;default:throw Error(`Not supported compoents ${c}`)}},o=q(`input`,t[0].dataType,t[0].dims,c),s=J(`output`,t[0].dataType,i,c);return` + @group(0) @binding(0) var input : array<${o.type.storage}>; + @group(0) @binding(1) var scale_input : array<${r}>; + @group(0) @binding(2) var output : array<${s.type.storage}>; + struct Uniforms {H: u32, C : u32}; + @group(0) @binding(3) var uniforms: Uniforms; + + ${e.mainStart()} + let current_image_number = global_idx / (uniforms.C * uniforms.H); + let current_channel_number = global_idx % uniforms.C; + + let scale_offset = current_image_number * uniforms.C + current_channel_number; + let scale = scale_input[scale_offset]; + output[global_idx] = fma(input[global_idx], ${a(0)}, ${a(1)}); + }`};e.compute({name:`InstanceNormalizationNHWC`,shaderCache:{hint:`${c}`,inputDependencies:d},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:g},{inputs:[t[0],h]})},$c=(e,t)=>{t.format===`NHWC`?Qc(e,e.inputs,t):Zc(e,e.inputs,t)}}),tl,nl,rl,il=M(()=>{"use strict";V(),W(),Y(),tl=e=>{if(!e||e.length<2)throw Error(`layerNorm requires at least 2 inputs.`)},nl=(e,t,n)=>{let r=t.simplified,i=e[0].dims,a=e[1],o=!r&&e[2],s=i,c=U.normalizeAxis(t.axis,i.length),l=U.sizeToDimension(i,c),u=U.sizeFromDimension(i,c),d=U.size(a.dims),f=o?U.size(o.dims):0;if(d!==u||o&&f!==u)throw Error(`Size of X.shape()[axis:] == ${u}. + Size of scale and bias (if provided) must match this. + Got scale size of ${d} and bias size of ${f}`);let p=[];for(let e=0;e1,v=n>2,y=t=>{let n=$n(e[0].dataType),i=[q(`x`,e[0].dataType,e[0].dims,m),q(`scale`,a.dataType,a.dims,m)];o&&i.push(q(`bias`,o.dataType,o.dims,m)),i.push(J(`output`,e[0].dataType,s,m)),_&&i.push(J(`mean_data_output`,1,p)),v&&i.push(J(`inv_std_output`,1,p));let c=[{name:`norm_count`,type:`u32`},{name:`norm_size`,type:`f32`},{name:`norm_size_vectorized`,type:`u32`},{name:`epsilon`,type:`f32`}];return` + ${t.registerUniforms(c).declareVariables(...i)} + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.norm_count`)} + let offset = global_idx * uniforms.norm_size_vectorized; + var mean_vector = ${nr(`f32`,m)}; + var mean_square_vector = ${nr(`f32`,m)}; + + for (var h: u32 = 0u; h < uniforms.norm_size_vectorized; h++) { + let value = ${rr(n,m,`x[h + offset]`)}; + mean_vector += value; + mean_square_vector += value * value; + } + let mean = ${ir(`mean_vector`,m)} / uniforms.norm_size; + let inv_std_dev = inverseSqrt(${ir(`mean_square_vector`,m)} / uniforms.norm_size ${r?``:`- mean * mean`} + uniforms.epsilon); + + for (var j: u32 = 0; j < uniforms.norm_size_vectorized; j++) { + let f32input = ${rr(n,m,`x[j + offset]`)}; + let f32scale = ${rr(n,m,`scale[j]`)}; + output[j + offset] = ${i[0].type.value}((f32input ${r?``:`- mean`}) * inv_std_dev * f32scale + ${o?`+ ${rr(n,m,`bias[j]`)}`:``} + ); + } + + ${_?`mean_data_output[global_idx] = mean`:``}; + ${v?`inv_std_output[global_idx] = inv_std_dev`:``}; + }`},b=[{dims:s,dataType:e[0].dataType}];return _&&b.push({dims:p,dataType:1}),v&&b.push({dims:p,dataType:1}),{name:`LayerNormalization`,shaderCache:{hint:`${m};${n};${r}`,inputDependencies:h},getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(l/64)},programUniforms:g}),getShaderSource:y}},rl=(e,t)=>{tl(e.inputs),e.compute(nl(e.inputs,t,e.outputCount))}}),al,ol,sl=M(()=>{"use strict";W(),po(),So(),al=e=>{if(!e||e.length!==2)throw Error(`MatMul requires 2 inputs.`);if(e[0].dims[e[0].dims.length-1]!==e[1].dims[e[1].dims.length-2])throw Error(`shared dimension does not match.`)},ol=e=>{al(e.inputs);let t=hn.calcShape(e.inputs[0].dims,e.inputs[1].dims,!0);if(!t)throw Error(`Can't use matmul on the given tensors`);let n=t[t.length-1],r=e.inputs[0].dims[e.inputs[0].dims.length-1];if(n<8&&r<8)e.compute(fo(e.inputs,{activation:``},t));else{let i=t[t.length-2],a=U.size(e.inputs[0].dims.slice(0,-2)),o=U.size(e.inputs[1].dims.slice(0,-2));if(a!==1&&i===1&&o===1){let i=e.inputs[0].reshape([1,a,r]),o=e.inputs[1].reshape([1,r,n]),s=[1,a,n],c=[i,o];e.compute(xo(c,{activation:``},t,s),{inputs:c})}else e.compute(xo(e.inputs,{activation:``},t))}}}),cl,ll,ul,dl,fl,pl=M(()=>{"use strict";V(),W(),Xn(),Y(),cl=(e,t)=>{if(e.length<3||e.length>4)throw Error(`MatMulNBits requires 3 or 4 inputs`);let n=e[0],r=n.dims.length;if(n.dims[r-1]!==t.k)throw Error(`The last dim of input shape does not match the k value`);let i=Math.floor((t.k+t.blockSize-1)/t.blockSize),a=t.blockSize/8*t.bits,o=e[1];if(!U.areEqual(o.dims,[t.n,i,a]))throw Error(`The second inputs must be 3D tensor with shape N X nBlocksPerCol X blobSize`);let s=e[2].dims;if(U.size(s)!==t.n*i)throw Error(`scales input size error.`);if(e.length===4){let n=e[3].dims,r=t.bits>4?t.n*i:t.n*Math.floor((i+1)/2);if(U.size(n)!==r)throw Error(`zeroPoints input size error.`)}},ll=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=U.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=tr(t.k),f=tr(l),p=tr(o),m=s.concat([i,o]),h=i>1&&o/p%2==0?2:1,g=U.size(m)/p/h,_=64,v=[],y=[c,i,a/d],b=U.convertShape(e[1].dims).slice();b.splice(-1,1,l/f),v.push(...G(y)),v.push(...G(b)),v.push(...G(e[2].dims)),e.length===4&&v.push(...G(U.convertShape(e[3].dims)));let x=[c,i,o/p];v.push(...G(x));let S=n=>{let r=y.length,i=q(`a`,e[0].dataType,r,d),a=q(`b`,12,b.length,f),o=q(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?q(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let u=x.length,m=J(`output`,e[0].dataType,u,p),g=$n(e[0].dataType),v=(()=>{switch(d){case 1:return`array<${g}, 8>`;case 2:return`mat4x2<${g}>`;case 4:return`mat2x4<${g}>`;default:throw Error(`${d}-component is not supported.`)}})(),S=()=>{let e=` + // reuse a data + var input_offset = ${i.indicesToOffset(`${i.type.indices}(batch, row, word_offset)`)}; + var a_data: ${v}; + for (var j: u32 = 0; j < ${8/d}; j++) { + a_data[j] = ${i.getByOffset(`input_offset`)}; + input_offset++; + } + `;for(let t=0;t> 4) & b_mask); + b_quantized_values = ${v}(${Array.from({length:4},(e,t)=>`${g}(b_value_lower[${t}]), ${g}(b_value_upper[${t}])`).join(`, `)}); + b_dequantized_values = ${d===1?`${v}(${Array.from({length:8},(e,n)=>`(b_quantized_values[${n}] - ${c?`zero_point${t}`:`zero_point`}) * scale${t}`).join(`, `)});`:`(b_quantized_values - ${v}(${Array(8).fill(`${c?`zero_point${t}`:`zero_point`}`).join(`,`)})) * scale${t};`}; + workgroup_shared[local_id.x * ${h} + ${Math.floor(t/p)}]${p>1?`[${t%p}]`:``} += ${Array.from({length:8/d},(e,t)=>`${d===1?`a_data[${t}] * b_dequantized_values[${t}]`:`dot(a_data[${t}], b_dequantized_values[${t}])`}`).join(` + `)}; + `;return e},C=()=>{let e=` + var col_index = col * ${p}; + ${c?` + let zero_point_bytes_per_col = (nBlocksPerCol + 1) / 2; + var zero_point_byte_count: u32; + var zero_point_word_index: u32; + var zero_point_byte_offset: u32; + let zero_point_nibble_offset: u32 = block & 0x1u; + var zero_point_bits_offset: u32; + var zero_point_word: u32;`:` + // The default zero point is 8 for unsigned 4-bit quantization. + let zero_point = ${g}(8);`} + `;for(let t=0;t> 0x1u); + zero_point_word_index = zero_point_byte_count >> 0x2u; + zero_point_byte_offset = zero_point_byte_count & 0x3u; + zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); + zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; + let zero_point${t} = ${g}((zero_point_word) & 0xFu);`:``} + col_index += 1;`;return e},w=()=>{let e=`col_index = col * ${p};`;for(let t=0;t; + var b_value_upper: vec4; + var b_quantized_values: ${v}; + var b_dequantized_values: ${v};`,e};return` + var workgroup_shared: array<${m.type.value}, ${h*_}>; + ${n.declareVariables(...s,m)} + ${n.mainStart([_,1,1])} + let output_indices = ${m.offsetToIndices(`(global_idx / ${_}) * ${h}`)}; + let col = output_indices[2]; + let row = output_indices[1]; + let batch = output_indices[0]; + let nBlocksPerCol = uniforms.b_shape[1]; + + for (var block = local_id.x; block < nBlocksPerCol; block += ${_}) { + //process one block + var word_offset: u32 = block * ${t.blockSize/d}; + ${C()} + for (var word: u32 = 0; word < ${l}; word += ${f}) { + ${w()} + for (var i: u32 = 0; i < ${f}; i++) { + ${S()} + word_offset += ${8/d}; + } + } + } + workgroupBarrier(); + + if (local_id.x < ${h}) { + var output_value: ${m.type.value} = ${m.type.value}(0); + var workgroup_shared_offset: u32 = local_id.x; + for (var b: u32 = 0u; b < ${_}u; b++) { + output_value += workgroup_shared[workgroup_shared_offset]; + workgroup_shared_offset += ${h}; + } + ${m.setByIndices(`${m.type.indices}(batch, row, col + local_id.x)`,`output_value`)}; + } + }`};return{name:`MatMulNBits`,shaderCache:{hint:`${t.blockSize};${t.bits};${d};${f};${p};${h};${_}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:m,dataType:u}],dispatchGroup:{x:g},programUniforms:v}),getShaderSource:S}},ul=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=U.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=tr(t.k),f=tr(l),p=s.concat([i,o]),m=128,h=o%8==0?8:o%4==0?4:1,g=m/h,_=g*f*8,v=_/d,y=_/t.blockSize,b=U.size(p)/h,x=[],S=[c,i,a/d],C=U.convertShape(e[1].dims).slice();C.splice(-1,1,l/f),x.push(...G(S)),x.push(...G(C)),x.push(...G(e[2].dims)),e.length===4&&x.push(...G(U.convertShape(e[3].dims)));let w=[c,i,o];x.push(...G(w));let T=n=>{let r=S.length,i=q(`a`,e[0].dataType,r,d),a=q(`b`,12,C.length,f),o=q(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?q(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let l=w.length,u=J(`output`,e[0].dataType,l),p=$n(e[0].dataType),_=()=>{switch(d){case 1:return` + let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1], sub_a[word_offset + 2], sub_a[word_offset + 3]); + let a_data1 = vec4<${p}>(sub_a[word_offset + 4], sub_a[word_offset + 5], sub_a[word_offset + 6], sub_a[word_offset + 7]);`;case 2:return` + let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1]); + let a_data1 = vec4<${p}>(sub_a[word_offset + 2], sub_a[word_offset + 3]);`;case 4:return` + let a_data0 = sub_a[word_offset]; + let a_data1 = sub_a[word_offset + 1];`;default:throw Error(`${d}-component is not supported.`)}};return` + var sub_a: array<${i.type.value}, ${v}>; + var inter_results: array, ${h}>; + ${n.declareVariables(...s,u)} + ${n.mainStart([g,h,1])} + let output_indices = ${u.offsetToIndices(`workgroup_index * ${h}`)}; + let col = output_indices[2]; + let row = output_indices[1]; + let batch = output_indices[0]; + let n_blocks_per_col = uniforms.b_shape[1]; + let num_tiles = (n_blocks_per_col - 1) / ${y} + 1; + + // Loop over shared dimension. + for (var tile: u32 = 0; tile < num_tiles; tile += 1) { + let a_col_start = tile * ${v}; + // load one tile A data into shared memory. + for (var a_offset = local_idx; a_offset < ${v}; a_offset += ${m}) + { + let a_col = a_col_start + a_offset; + if (a_col < uniforms.a_shape[2]) + { + sub_a[a_offset] = ${i.getByIndices(`${i.type.indices}(batch, row, a_col)`)}; + } else { + sub_a[a_offset] = ${i.type.value}(0); + } + } + workgroupBarrier(); + + // each thread process one block + let b_row = col + local_id.y; + let block = tile * ${y} + local_id.x; + ${c?` + let zero_point_bytes_per_col = (n_blocks_per_col + 1) / 2; + let zero_point_byte_count = b_row * zero_point_bytes_per_col + (block >> 0x1u); + let zero_point_word_index = zero_point_byte_count >> 0x2u; + let zero_point_byte_offset = zero_point_byte_count & 0x3u; + let zero_point_nibble_offset: u32 = block & 0x1u; + let zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); + let zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; + let zero_point = ${p}((zero_point_word) & 0xFu);`:` + // The default zero point is 8 for unsigned 4-bit quantization. + let zero_point = ${p}(8);`} + let scale = ${o.getByOffset(`b_row * n_blocks_per_col + block`)}; + let b_data = ${a.getByIndices(`${a.type.indices}(b_row, block, 0)`)}; + var word_offset = local_id.x * ${t.blockSize/d}; + for (var i: u32 = 0; i < ${f}; i++) { + ${_()} + let b_value = ${f===1?`b_data`:`b_data[i]`}; + let b_value_lower = unpack4xU8(b_value & 0x0F0F0F0Fu); + let b_value_upper = unpack4xU8((b_value >> 4) & 0x0F0F0F0Fu); + let b_quantized_values = mat2x4<${p}>(${Array.from({length:4},(e,t)=>`${p}(b_value_lower[${t}]), ${p}(b_value_upper[${t}])`).join(`, `)}); + let b_dequantized_values = (b_quantized_values - mat2x4<${p}>(${Array(8).fill(`zero_point`).join(`,`)})) * scale; + inter_results[local_id.y][local_id.x] += ${Array.from({length:2},(e,t)=>`${`dot(a_data${t}, b_dequantized_values[${t}])`}`).join(` + `)}; + word_offset += ${8/d}; + } + workgroupBarrier(); + } + + if (local_idx < ${h}) { + var output_value: ${u.type.value} = ${u.type.value}(0); + for (var b = 0u; b < ${g}; b++) { + output_value += inter_results[local_idx][b]; + } + if (col + local_idx < uniforms.output_shape[2]) + { + ${u.setByIndices(`${u.type.indices}(batch, row, col + local_idx)`,`output_value`)} + } + } + }`};return{name:`BlockwiseMatMulNBits32`,shaderCache:{hint:`${t.blockSize};${d};${f};${g};${h}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:p,dataType:u}],dispatchGroup:{x:b},programUniforms:x}),getShaderSource:T}},dl=(e,t)=>{cl(e.inputs,t),t.blockSize===32&&e.adapterInfo.isVendor(`intel`)&&e.adapterInfo.isArchitecture(`gen-12lp`)?e.compute(ul(e.inputs,t)):e.compute(ll(e.inputs,t))},fl=e=>Yn(e)}),ml,hl,gl,_l,vl,yl,bl,xl,Sl,Cl=M(()=>{"use strict";V(),W(),Y(),ml=e=>{if(!e||e.length<1)throw Error(`Too few inputs`);if(e[0].dataType!==1&&e[0].dataType!==10)throw Error(`Input type must be float or float16.`);if(e.length>=2){let t=e[0].dims.length*2===e[1].dims[0];if(e.length===4&&(t=e[3].dims[0]*2===e[1].dims[0]),!t)throw Error(`The pads should be a 1D tensor of shape [2 * input_rank] or [2 * num_axes].`)}},hl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + break; + } + if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { + break; + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + value = ${e.type.value}(uniforms.constant_value); + for (var i = 0; i < 1; i++) { + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + } + `},gl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + k = -k; + } + { + let _2n_1 = 2 * (i32(${K(`uniforms.x_shape`,i,t)}) - 1); + k = k % _2n_1; + if(k >= i32(${K(`uniforms.x_shape`,i,t)})) { + k = _2n_1 - k; + } + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + `},_l=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + k = 0; + } + if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { + k = i32(${K(`uniforms.x_shape`,i,t)}) - 1; + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + `},vl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + k += i32(${K(`uniforms.x_shape`,i,t)}]); + } + if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { + k -= i32(${K(`uniforms.x_shape`,i,t)}); + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + `},yl=(e,t,n)=>{switch(n.mode){case 0:return hl(e,t,n.pads.length);case 1:return gl(e,t,n.pads.length);case 2:return _l(e,t,n.pads.length);case 3:return vl(e,t,n.pads.length);default:throw Error(`Invalid mode`)}},bl=(e,t)=>{let n=U.padShape(e[0].dims.slice(),t.pads),r=e[0].dims,i=U.size(n),a=[{type:12,data:i},{type:6,data:t.pads}],o=e.length>=3&&e[2].data;t.mode===0&&a.push({type:o?e[2].dataType:1,data:t.value}),a.push(...G(e[0].dims,n));let s=[`rank`],c=i=>{let a=J(`output`,e[0].dataType,n.length),s=q(`x`,e[0].dataType,r.length),c=s.type.value,l=yl(a,r.length,t),u=[{name:`output_size`,type:`u32`},{name:`pads`,type:`i32`,length:t.pads.length}];return t.mode===0&&u.push({name:`constant_value`,type:o?c:`f32`}),` + ${i.registerUniforms(u).declareVariables(s,a)} + ${i.mainStart()} + ${i.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let indices = ${a.offsetToIndices(`global_idx`)}; + + var value = ${c}(0); + ${l} + output[global_idx] = value; + }`};return{name:`Pad`,shaderCache:{hint:`${t.mode}${o}`,inputDependencies:s},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(U.size(n)/64)},programUniforms:a}),getShaderSource:c}},xl=(e,t)=>{if(e.length>1){let n=e[1].getBigInt64Array(),r=e.length>=3&&e[2].data?e[2].dataType===10?e[2].getUint16Array()[0]:e[2].getFloat32Array()[0]:0,i=e[0].dims.length,a=new Int32Array(2*i).fill(0);if(e.length>=4){let t=e[3].getBigInt64Array();for(let e=0;ea[Number(t)]=Number(e));let o=[];return a.forEach(e=>o.push(e)),{mode:t.mode,value:r,pads:o}}else return t},Sl=(e,t)=>{ml(e.inputs);let n=xl(e.inputs,t);e.compute(bl(e.inputs,n),{inputs:[0]})}}),Z,wl,Tl,El,Dl,Ol,kl,Al,jl,Ml,Nl,Pl,Fl,Il,Ll,Rl,zl,Bl,Vl,Hl=M(()=>{"use strict";$e(),V(),W(),Y(),Z=e=>{if(L.webgpu.validateInputContent&&(!e||e.length!==1))throw Error(`Pool ops requires 1 input.`)},wl=(e,t,n)=>{let r=t.format===`NHWC`,i=e.dims.slice();r&&i.splice(1,0,i.pop());let a=Object.hasOwnProperty.call(t,`dilations`),o=t.kernelShape.slice(),s=t.strides.slice(),c=a?t.dilations.slice():[],l=t.pads.slice();gn.adjustPoolAttributes(n,i,o,s,c,l);let u=gn.computePoolOutputShape(n,i,s,c,o,l,t.autoPad),d=Object.assign({},t);a?Object.assign(d,{kernelShape:o,strides:s,pads:l,dilations:c,cacheKey:t.cacheKey}):Object.assign(d,{kernelShape:o,strides:s,pads:l,cacheKey:t.cacheKey});let f=u.slice();return f.push(f.splice(1,1)[0]),[d,r?f:u]},Tl=(e,t)=>{let n=t.format===`NHWC`,r=U.size(e),i=U.size(t.kernelShape),a=[{type:12,data:r},{type:12,data:i}],o=[{name:`outputSize`,type:`u32`},{name:`kernelSize`,type:`u32`}];if(t.kernelShape.length<=2){let e=t.kernelShape[t.kernelShape.length-1],n=t.strides[t.strides.length-1],r=t.pads[t.pads.length/2-1],i=t.pads[t.pads.length-1],s=!!(r+i);a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kw`,type:`u32`},{name:`sw`,type:`u32`},{name:`pwStart`,type:`u32`},{name:`pwEnd`,type:`u32`});let c=!1;if(t.kernelShape.length===2){let e=t.kernelShape[t.kernelShape.length-2],n=t.strides[t.strides.length-2],r=t.pads[t.pads.length/2-2],i=t.pads[t.pads.length-2];c=!!(r+i),a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kh`,type:`u32`},{name:`sh`,type:`u32`},{name:`phStart`,type:`u32`},{name:`phEnd`,type:`u32`})}return[a,o,!0,s,c]}else{if(n)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let e=U.computeStrides(t.kernelShape);a.push({type:12,data:e},{type:12,data:t.pads},{type:12,data:t.strides}),o.push({name:`kernelStrides`,type:`u32`,length:e.length},{name:`pads`,type:`u32`,length:t.pads.length},{name:`strides`,type:`u32`,length:t.strides.length});let r=t.pads.reduce((e,t)=>e+t);return[a,o,!!r,!1,!1]}},El=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f=i.format===`NHWC`,p=t.type.value,m=J(`output`,t.type.tensor,r);if(i.kernelShape.length<=2){let r=``,l=``,h=``,g=n-(f?2:1);if(r=u?` + for (var i: u32 = 0u; i < uniforms.kw; i++) { + xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; + if (xIndices[${g}] < 0 || xIndices[${g}] + >= uniforms.x_shape[${g}]) { + pad++; + continue; + } + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + }`:` + for (var i: u32 = 0u; i < uniforms.kw; i++) { + xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + }`,i.kernelShape.length===2){let e=n-(f?3:2);l=d?` + for (var j: u32 = 0u; j < uniforms.kh; j++) { + xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; + if (xIndices[${e}] < 0 || xIndices[${e}] >= uniforms.x_shape[${e}]) { + pad += i32(uniforms.kw); + continue; + } + `:` + for (var j: u32 = 0u; j < uniforms.kh; j++) { + xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; + `,h=` + } + `}return` + ${e.registerUniforms(c).declareVariables(t,m)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + + let indices = ${m.offsetToIndices(`global_idx`)}; + var xIndices = ${m.offsetToIndices(`global_idx`)}; + + var value = ${p}(${s}); + var pad = 0; + ${l} + ${r} + ${h} + ${o} + + output[global_idx] = value; + }`}else{if(f)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let r=i.kernelShape.length,u=i.pads.length,d=``;return d=l?` + if (xIndices[j] >= uniforms.x_shape[j]) { + pad++; + isPad = true; + break; + } + } + if (!isPad) { + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + }`:` + } + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + `,` + ${e.registerUniforms(c).declareVariables(t,m)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + let indices = ${m.offsetToIndices(`global_idx`)}; + var xIndices = ${m.offsetToIndices(`global_idx`)}; + + var offsets: array; + + var value = ${p}(${s}); + var pad = 0; + var isPad = false; + + for (var i: u32 = 0u; i < uniforms.kernelSize; i++) { + var offset = i; + for (var j = 0u; j < ${r-1}u; j++) { + offsets[j] = offset / ${K(`uniforms.kernelStrides`,`j`,r)}; + offset -= offsets[j] * ${K(`uniforms.kernelStrides`,`j`,r)}; + } + offsets[${r-1}] = offset; + + isPad = false; + for (var j = ${n-r}u; j < ${n}u; j++) { + xIndices[j] = indices[j] * ${K(`uniforms.strides`,`j - ${n-r}u`,r)} + + offsets[j - ${n-r}u] - ${K(`uniforms.pads`,`j - 2u`,u)}; + ${d} + } + ${o} + + output[global_idx] = value; + }`}},Dl=e=>`${e.format};${e.ceilMode};${e.autoPad};${e.kernelShape.length}`,Ol=e=>`${Dl(e)};${e.countIncludePad}`,kl=e=>`${Dl(e)};${e.storageOrder};${e.dilations}`,Al=e=>({format:e.format,autoPad:[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],ceilMode:e.ceil_mode,kernelShape:e.kernel_shape,strides:e.strides,pads:e.pads}),jl=(e,t,n,r)=>{let[i,a]=wl(t,r,n),o=q(`x`,t.dataType,t.dims.length),s=o.type.value,c=`value += x_val;`,l=``;i.countIncludePad?l+=`value /= ${s}(uniforms.kernelSize);`:l+=`value /= ${s}(i32(uniforms.kernelSize) - pad);`;let[u,d,f,p,m]=Tl(a,i);u.push(...G(t.dims,a));let h=[`rank`];return{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(U.size(a)/64)},programUniforms:u}),getShaderSource:e=>El(e,o,t.dims.length,a.length,i,c,l,0,d,f,p,m)}},Ml=e=>{let t=e.count_include_pad!==0,n=Al(e);if(n.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for AveragePool`);let r={countIncludePad:t,...n,cacheKey:``};return{...r,cacheKey:Ol(r)}},Nl=(e,t)=>{Z(e.inputs),e.compute(jl(`AveragePool`,e.inputs[0],!1,t))},Pl={autoPad:``,ceilMode:0,countIncludePad:!1,kernelShape:[],strides:[],pads:[],storageOrder:0,dilations:[]},Fl=e=>{let t=e.format;return{format:t,...Pl,cacheKey:t}},Il=(e,t)=>{Z(e.inputs),e.compute(jl(`GlobalAveragePool`,e.inputs[0],!0,t))},Ll=(e,t,n,r)=>{let[i,a]=wl(t,r,n),o=` + value = max(x_val, value); + `,s=``,c=q(`x`,t.dataType,t.dims.length),l=[`rank`],[u,d,f,p,m]=Tl(a,i);return u.push(...G(t.dims,a)),{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:l},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(U.size(a)/64)},programUniforms:u}),getShaderSource:e=>El(e,c,t.dims.length,a.length,i,o,s,t.dataType===10?-65504:-1e5,d,f,p,m)}},Rl=(e,t)=>{Z(e.inputs),e.compute(Ll(`MaxPool`,e.inputs[0],!1,t))},zl=e=>{let t=e.storage_order,n=e.dilations,r=Al(e);if(t!==0)throw Error(`column major storage order is not yet supported for MaxPool`);if(r.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for MaxPool`);let i={storageOrder:t,dilations:n,...r,cacheKey:``};return{...i,cacheKey:kl(i)}},Bl=e=>{let t=e.format;return{format:t,...Pl,cacheKey:t}},Vl=(e,t)=>{Z(e.inputs),e.compute(Ll(`GlobalMaxPool`,e.inputs[0],!0,t))}}),Ul,Wl,Gl,Kl,ql=M(()=>{"use strict";V(),W(),Xn(),Y(),Ul=(e,t)=>{if(e.length<2||e.length>3)throw Error(`DequantizeLinear requires 2 or 3 inputs.`);if(e.length===3&&e[1].dims===e[2].dims)throw Error(`x-scale and x-zero-point must have the same shape.`);if(e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[0].dataType===6&&e.length>2)throw Error(`In the case of dequantizing int32 there is no zero point.`);if(e[1].dims.length!==0&&e[1].dims.length!==1&&e[1].dims.length!==e[0].dims.length)throw Error(`scale input must be a scalar, a 1D tensor, or have the same rank as the input tensor.`);if(e.length>2){if(e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[1].dims.length!==e[2].dims.length)throw Error(`scale and zero-point inputs must have the same rank.`);if(!e[1].dims.map((t,n)=>t===e[2].dims[n]).reduce((e,t)=>e&&t,!0))throw Error(`scale and zero-point inputs must have the same shape.`)}if(t.blockSize>0){if(e[1].dims.length===0||e[1].dims.length===1&&e[1].dims[0]===1)throw Error(`blockSize must be set only for block quantization.`);if(!e[1].dims.map((n,r)=>r===t.axis||n===e[0].dims[r]).reduce((e,t)=>e&&t,!0))throw Error(`For block qunatization, scale input shape to match the input shape except for the axis`);if(e[1].dims.length!==e[0].dims.length)throw Error(`For block qunatization the scale input rank must be the same as the x rank.`);let n=e[0].dims[t.axis],r=e[1].dims[t.axis];if(t.blockSizeMath.ceil(n/(r-1)-1))throw Error(`blockSize must be with in the range [ceil(dI / Si), ceil(dI / (Si - 1) - 1)].`)}},Wl=(e,t)=>{let n=U.normalizeAxis(t.axis,e[0].dims.length),r=e[0].dataType,i=r===3,a=e[0].dims,o=e[1].dataType,s=U.size(a),c=r===3||r===2,l=c?[Math.ceil(U.size(e[0].dims)/4)]:e[0].dims,u=e[1].dims,d=e.length>2?e[2]:void 0,f=d?c?[Math.ceil(U.size(d.dims)/4)]:d.dims:void 0,p=u.length===0||u.length===1&&u[0]===1,m=p===!1&&u.length===1,h=tr(s),g=p&&(!c||h===4),_=g?h:1,v=g&&!c?h:1,y=q(`input`,c?12:r,l.length,v),b=q(`scale`,o,u.length),x=d?q(`zero_point`,c?12:r,f.length):void 0,S=J(`output`,o,a.length,_),C=[y,b];x&&C.push(x);let w=[l,u];d&&w.push(f);let T=[{type:12,data:s/_},{type:12,data:n},{type:12,data:t.blockSize},...G(...w,a)],E=e=>{let t=[{name:`output_size`,type:`u32`},{name:`axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` + ${e.registerUniforms(t).declareVariables(...C,S)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let output_indices = ${S.offsetToIndices(`global_idx`)}; + + // Set input x + ${c?` + let input = ${y.getByOffset(`global_idx / 4`)}; + let x_vec = ${i?`unpack4xI8(input)`:`unpack4xU8(input)`}; + let x_value = ${_===1?`x_vec[global_idx % 4]`:`x_vec`};`:`let x_value = ${y.getByOffset(`global_idx`)};`}; + + // Set scale input + ${p?`let scale_value= ${b.getByOffset(`0`)}`:m?` + let scale_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; + let scale_value= ${b.getByOffset(`scale_index`)};`:` + var scale_indices: ${b.type.indices} = output_indices; + let index = ${b.indicesGet(`scale_indices`,`uniforms.axis`)} / uniforms.block_size; + ${b.indicesSet(`scale_indices`,`uniforms.axis`,`index`)}; + let scale_value= ${b.getByIndices(`scale_indices`)};`}; + + // Set zero-point input + ${x?p?c?` + let zero_point_input = ${x.getByOffset(`0`)}; + let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; + let zero_point_value= zero_point_vec[0]`:`let zero_point_value = ${x.getByOffset(`0`)}`:m?c?` + let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; + let zero_point_input = ${x.getByOffset(`zero_point_index / 4`)}; + let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; + let zero_point_value = zero_point_vec[zero_point_index % 4]`:` + let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; + let zero_point_value = ${x.getByOffset(`zero_point_index`)};`:c?` + let zero_point_offset = ${b.indicesToOffset(`scale_indices`)}; + let zero_point_input = ${x.getByOffset(`zero_point_offset / 4`)}; + let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; + let zero_point_value = zero_point_vec[zero_point_offset % 4];`:`let zero_point_value = ${x.getByIndices(`scale_indices`)};`:`let zero_point_value = ${c?i?`i32`:`u32`:y.type.value}(0);`}; + // Compute and write output + ${S.setByOffset(`global_idx`,`${S.type.value}(x_value - zero_point_value) * scale_value`)}; + }`};return{name:`DequantizeLinear`,shaderCache:{hint:t.cacheKey,inputDependencies:x?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getShaderSource:E,getRunData:()=>({outputs:[{dims:a,dataType:o}],dispatchGroup:{x:Math.ceil(s/_/64),y:1,z:1},programUniforms:T})}},Gl=(e,t)=>{Ul(e.inputs,t),e.compute(Wl(e.inputs,t))},Kl=e=>Yn({axis:e.axis,blockSize:e.blockSize})}),Jl,Yl,Xl,Zl=M(()=>{"use strict";$e(),V(),Y(),Jl=(e,t,n)=>{let r=e===t,i=et&&n>0;if(r||i||a)throw Error(`Range these inputs' contents are invalid.`)},Yl=(e,t,n,r)=>{let i=Math.abs(Math.ceil((t-e)/n)),a=[i],o=i,s=[{type:12,data:o},{type:r,data:e},{type:r,data:n},...G(a)],c=e=>{let t=J(`output`,r,a.length),n=t.type.value,i=[{name:`outputSize`,type:`u32`},{name:`start`,type:n},{name:`delta`,type:n}];return` + ${e.registerUniforms(i).declareVariables(t)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + output[global_idx] = uniforms.start + ${n}(global_idx) * uniforms.delta; + }`};return{name:`Range`,shaderCache:{hint:`${r}`},getShaderSource:c,getRunData:()=>({outputs:[{dims:a,dataType:r}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:s})}},Xl=e=>{let t=0,n=0,r=0;e.inputs[0].dataType===6?(t=e.inputs[0].getInt32Array()[0],n=e.inputs[1].getInt32Array()[0],r=e.inputs[2].getInt32Array()[0]):e.inputs[0].dataType===1&&(t=e.inputs[0].getFloat32Array()[0],n=e.inputs[1].getFloat32Array()[0],r=e.inputs[2].getFloat32Array()[0]),L.webgpu.validateInputContent&&Jl(t,n,r),e.compute(Yl(t,n,r,e.inputs[0].dataType),{inputs:[]})}}),Ql,$l,eu,tu,nu,ru,iu=M(()=>{"use strict";V(),W(),Xn(),Y(),Ql=(e,t,n,r)=>{if(e!==`none`&&r!==`i32`&&r!==`u32`&&r!==`f32`)throw Error(`Input ${r} is not supported with reduction ${e}.`);let i=`{ + var oldValue = 0; + loop { + let newValueF32 =`,a=`; + let newValue = bitcast(newValueF32); + let res = atomicCompareExchangeWeak(&${t}, oldValue, newValue); + if res.exchanged { + break; + } + oldValue = res.old_value; + } + }`;switch(e){case`none`:return`${t}=${n};`;case`add`:return r===`i32`||r===`u32`?`atomicAdd(&${t}, bitcast<${r}>(${n}));`:` + ${i}bitcast<${r}>(oldValue) + (${n})${a}`;case`max`:return r===`i32`||r===`u32`?`atomicMax(&${t}, bitcast<${r}>(${n}));`:` + ${i}max(bitcast(oldValue), (${n}))${a}`;case`min`:return r===`i32`||r===`u32`?`atomicMin(&${t}, bitcast<${r}>(${n}));`:`${i}min(bitcast<${r}>(oldValue), (${n}))${a}`;case`mul`:return`${i}(bitcast<${r}>(oldValue) * (${n}))${a}`;default:throw Error(`Reduction ${e} is not supported.`)}},$l=(e,t)=>`${e===1?` + let element_count_dim = uniforms.output_strides; + let dim_value = uniforms.output_shape;`:` + let element_count_dim = uniforms.output_strides[${t?`i - indices_start`:`i`}]; + let dim_value = uniforms.output_shape[${t?`i - indices_start`:`i`} + uniforms.last_index_dimension];`} + + if (index >= 0) { + if (index >= i32(dim_value)) { + index = i32(dim_value - 1); + } + } else { + if (index < -i32(dim_value)) { + index = 0; + } else { + index += i32(dim_value); + } + } + data_offset += u32((u32(index) * element_count_dim));`,eu=(e,t,n)=>`for (var i = 0u; i < uniforms.num_updates_elements; i++) { + let value = updates[uniforms.num_updates_elements * ${n?`global_idx`:`idx`} + i]; + ${Ql(e.reduction,`output[data_offset + i]`,`value`,t)} + }`,tu=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n,a=1,o=Math.ceil(U.size(r)/a),s=r[r.length-1],c=U.sizeFromDimension(n,s),l=U.sizeFromDimension(r,0)/s,u=[{type:12,data:o},{type:12,data:s},{type:12,data:c},...G(e[1].dims,e[2].dims,i)],d=r=>{let o=q(`indices`,e[1].dataType,e[1].dims.length),s=q(`updates`,e[2].dataType,e[2].dims.length,a),c=t.reduction!==`none`&&t.reduction!==``?or(`output`,e[0].dataType,i.length):J(`output`,e[0].dataType,i.length,a);return` + ${r.registerUniform(`output_size`,`u32`).registerUniform(`last_index_dimension`,`u32`).registerUniform(`num_updates_elements`,`u32`).declareVariables(o,s,c)} + ${r.mainStart()} + ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + var hasDuplicates = false; + if (${t.reduction===`none`}) { + for (var i = 0; i < ${l}; i = i + 1) { + for (var j = i + 1; j < ${l}; j = j + 1) { + var index_i = i32(indices[i].x); + var index_j = i32(indices[j].x); + if (index_i == index_j) { + hasDuplicates = true; + break; + } + } + if (hasDuplicates) { + break; + } + } + } + + if (${t.reduction===`none`} && hasDuplicates) { + if (global_idx != 0u) { + return; + } + // Process each index-update pair individually when duplicates exist + for (var idx = 0u; idx < ${l}u; idx++) { + var data_offset = 0u; + for (var i = 0u; i < uniforms.last_index_dimension; i++) { + var index = i32(indices[idx * uniforms.last_index_dimension + i].x); + ${$l(n.length,!1)} + } + ${eu(t,c.type.value,!1)} + } + return; + } + + var data_offset = 0u; + var indices_start = uniforms.last_index_dimension * global_idx; + var indices_end = indices_start + uniforms.last_index_dimension; + for (var i = indices_start; i < indices_end; i++) { + var index = i32(indices[i].x); + ${$l(n.length,!0)} + } + ${eu(t,c.type.value,!0)} + }`};return{name:`ScatterND`,shaderCache:{hint:`${t.cacheKey}_${t.reduction}`,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:u}),getShaderSource:d}},nu=e=>Yn({reduction:e.reduction}),ru=(e,t)=>{e.compute(tu(e.inputs,t),{inputs:[e.inputs[1],e.inputs[2]],outputs:[]})}}),au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u,vu,yu,bu,xu,Su,Cu,wu,Tu=M(()=>{"use strict";V(),W(),Xn(),Y(),au=(e,t)=>{if(e.every(e=>e>0||(()=>{throw Error(`Resize requires scales input values to be positive`)})),e.length>0){if(t.mode===`linear`){if(!(e.length===2||e.length===3||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1||e.length===5&&e[0]===1&&e[1]===1))throw Error(`For linear mode, Resize requires scales to be 2D, 3D, 4D with either two outermost or one innermost and + one outermost scale values equal to 1, or 5D with two outermost scale values equal to 1`)}else if(t.mode===`cubic`&&!(e.length===2||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1))throw Error(`Resize requires scales input size to be 2 or 4 for cubic mode`)}},ou=(e,t,n)=>{t.every(e=>e>=0&&e{throw Error(`Resize requires axes input values to be positive and less than rank`)}));let r=Array(n).fill(1);return t.forEach((t,n)=>r[t]=e[n]),r},su=(e,t,n,r,i,a)=>{let[o,s,c]=n>10?[1,2,3]:[-1,e.length>1?1:-1,-1],l=e[0].dims.length;if(o>0&&e.length>o&&e[o].dims.length>0)e[o].getFloat32Array().forEach(e=>a.push(e));else if(t.coordinateTransformMode===`tf_crop_and_resize`)throw Error(`Resize requires RoI input to be specified when coordinateTransformMode is tfCropAndResize`);if(s>0&&e.length>s&&e[s].dims.length===1&&e[s].dims[0]>0){if(e[s].getFloat32Array().forEach(e=>r.push(e)),r.length!==0&&r.length!==l&&n>=18&&r.length!==t.axes.length)throw Error(`Resize requires scales input size to be same as input rank or axes size for opset 18 and up`);au(r,t),t.axes.length>0&&ou(r,t.axes,l).forEach((e,t)=>r[t]=e)}if(c>0&&e.length>c&&e[c].dims.length===1&&e[c].dims[0]>0&&(e[c].getBigInt64Array().forEach(e=>i.push(Number(e))),i.length!==0&&i.length!==l&&n>=18&&i.length!==t.axes.length))throw Error(`Resize requires sizes input size to be same as input rank or axes size for opset 18 and up`);if(t.axes.length>0){if(r.length!==0&&r.length!==t.axes.length)throw Error(`Resize requires "scales" input size to be of axes rank when axes attributes is specified`);if(i.length!==0&&i.length!==t.axes.length)throw Error(`Resize requires "sizes" input size to be of rank axes rank when axes attributes is specified`)}if(typeof r<`u`&&typeof i<`u`&&r.length>0&&i.length>l)throw Error(`Resize requires only of scales or sizes to be specified`)},cu=(e,t,n,r)=>` + // The whole part and the fractional part are calculated separately due to inaccuracy of floating + // point division. As an example, f32(21) / f32(7) may evaluate to 2.99... instead of 3, causing an + // offset-by-one error later in floor(). + let big = (${e}) * (${t}); + let whole = ${r}(big / (${n})); + let fract = ${r}(big % (${n})) / ${r}(${n}); + return whole + fract; +`,lu=(e,t)=>`fn getOriginalCoordinateFromResizedCoordinate(xResized: u32, xScale: f32, lengthResized: u32, + lengthOriginal: u32, roiStart: f32, roiEnd: f32) -> ${t} { `+(()=>{switch(e){case`asymmetric`:return` + if (xScale < 1.0 || floor(xScale) != xScale) { + return ${t}(xResized) / ${t}(xScale); + } else { + ${cu(`xResized`,`lengthOriginal`,`lengthResized`,t)} + } + `;case`pytorch_half_pixel`:return`if (lengthResized > 1) { + return (${t}(xResized) + 0.5) / ${t}(xScale) - 0.5; + } else { + return 0.0; + }`;case`tf_half_pixel_for_nn`:return`return (${t}(xResized) + 0.5) / ${t}(xScale);`;case`align_corners`:return`if (lengthResized == 1) { + return 0.0; + } else { + ${cu(`xResized`,`lengthOriginal - 1`,`lengthResized - 1`,t)} + }`;case`tf_crop_and_resize`:return`if (lengthResized > 1) { + return ${t}(roiStart) * ${t}(lengthOriginal - 1) + + (${t}(xResized) * ${t}(roiEnd - roiStart) * ${t}(lengthOriginal - 1)) / + ${t}(lengthResized - 1); + } else { + return 0.5 * ${t}(roiStart + roiEnd) * ${t}(lengthOriginal - 1); + }`;case`half_pixel_symmetric`:return`const outputWidth = ${t}xScale * ${t}(lengthResized); + const adjustment = ${t}(lengthResized) / outputWidth; + const center = ${t}(lengthOriginal) / 2; + const offset = center * (1 - adjustment); + return offset + ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;case`half_pixel`:return`return ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;default:throw Error(`Coordinate transform mode ${e} is not supported`)}})()+`}`,uu=(e,t,n)=>`fn getNearestPixelFromOriginal(xOriginal: ${n}, isDownSample: bool) -> ${n} {`+(()=>{switch(e){case`round_prefer_ceil`:return`if (fract(xOriginal) == 0.5) { return ceil(xOriginal); } else { return round(xOriginal); }`;case`floor`:return`return floor(xOriginal);`;case`ceil`:return`return ceil(xOriginal);`;case`round_prefer_floor`:return`if (fract(xOriginal) == 0.5) { return floor(xOriginal); } else { return round(xOriginal); }`;case`simple`:default:if(t<11)return`if (isDownSample) { return ceil(xOriginal); } else { return xOriginal; }`;throw Error(`Nearest mode ${e} is not supported`)}})()+`}`,du=(e,t,n)=>{let r=Array(n).fill(0).concat(Array(n).fill(1)),i=e.length===0?r:e.slice();return t.length>0?(t.forEach((e,a)=>{r[e]=i[a],r[a+n]=i[t.length+a]}),r):i},fu=(e,t,n,r)=>{let i=[];if(n.length>0)if(r.length>0){if(e.forEach(e=>i.push(e)),Math.max(...r)>e.length)throw Error(`axes is out of bound`);r.forEach((e,t)=>i[e]=n[t])}else n.forEach(e=>i.push(e));else{if(t.length===0)throw Error(`Resize requires either scales or sizes.`);i=e.map((e,n)=>Math.round(e*t[n]))}return i},pu=(e,t,n)=>{let r=(()=>{switch(n.keepAspectRatioPolicy){case`not_larger`:return n.axes.length>0?Math.min(...n.axes.map(e=>t[e]),Number.MAX_VALUE):Math.min(...t,Number.MAX_VALUE);case`not_smaller`:return n.axes.length>0?Math.max(...n.axes.map(e=>t[e]),Number.MIN_VALUE):Math.max(...t,Number.MIN_VALUE);default:throw Error(`Keep aspect ratio policy ${n.keepAspectRatioPolicy} is not supported`)}})();t.fill(1,0,t.length);let i=e.slice();return n.axes.length>0?(n.axes.forEach(e=>t[e]=r),n.axes.forEach(n=>i[n]=Math.round(e[n]*t[n]))):(t.fill(r,0,t.length),i.forEach((e,n)=>i[n]=Math.round(e*t[n]))),i},mu=(e,t,n,r,i)=>` + fn calculateOriginalIndicesFromOutputIndices(output_indices: ${e.type.indices}) -> array<${e.type.value}, ${n.length}> { + var original_indices: array<${e.type.value}, ${n.length}>; + for (var i:u32 = 0; i < ${n.length}; i++) { + var output_index = ${e.indicesGet(`output_indices`,`i`)}; + var scale = ${K(`uniforms.scales`,`i`,r)}; + var roi_low = ${K(`uniforms.roi`,`i`,i)}; + var roi_hi = ${K(`uniforms.roi`,`i + ${t.length}`,i)}; + if (scale == 1.0) { + original_indices[i] = ${e.type.value}(output_index); + } else { + var input_shape_i = ${K(`uniforms.input_shape`,`i`,t.length)}; + var output_shape_i = ${K(`uniforms.output_shape`,`i`,n.length)}; + original_indices[i] = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, + input_shape_i, roi_low, roi_hi); + } + } + return original_indices; + }`,hu=(e,t,n,r,i,a,o)=>` + fn calculateInputIndicesFromOutputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { + var input_indices: ${e.type.indices}; + for (var i:u32 = 0; i < ${r.length}; i++) { + var output_index = ${t.indicesGet(`output_indices`,`i`)}; + var input_index: u32; + var scale = ${K(`uniforms.scales`,`i`,i)}; + if (scale == 1.0) { + input_index = output_index; + } else { + var roi_low = ${K(`uniforms.roi`,`i`,a)}; + var roi_hi = ${K(`uniforms.roi`,`i + ${n.length}`,a)}; + var input_shape_i = ${K(`uniforms.input_shape`,`i`,n.length)}; + var output_shape_i = ${K(`uniforms.output_shape`,`i`,r.length)}; + var original_idx = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, + input_shape_i, roi_low, roi_hi); + if (!${o} || (original_idx >= 0 && original_idx < ${t.type.value}(input_shape_i))) { + if (original_idx < 0) { + input_index = 0; + } else if (original_idx > ${t.type.value}(input_shape_i - 1)) { + input_index = input_shape_i - 1; + } else { + input_index = u32(getNearestPixelFromOriginal(original_idx, scale < 1)); + } + } else { + input_index = u32(original_idx); + } + } + ${e.indicesSet(`input_indices`,`i`,`input_index`)} + } + return input_indices; + }`,gu=(e,t)=>` + fn checkInputIndices(input_indices: ${e.type.indices}) -> bool { + for (var i:u32 = 0; i < ${t.length}; i++) { + var input_index = ${e.indicesGet(`input_indices`,`i`)}; + if (input_index < 0 || input_index >= ${K(`uniforms.input_shape`,`i`,t.length)}) { + return false; + } + } + return true; + }`,_u=(e,t,n,r)=>e.rank>r?` + ${e.indicesSet(`input_indices`,t,`channel`)}; + ${e.indicesSet(`input_indices`,n,`batch`)}; +`:``,vu=(e,t,n,r,i)=>{let[a,o,s,c]=n.length===2?[-1,0,1,-1]:[0,2,3,1],l=e.type.value;return` + fn getInputValue(batch: u32, channel: u32, row: u32, col: u32) -> ${l} { + var input_indices: ${e.type.indices}; + ${e.indicesSet(`input_indices`,o,`max(0, min(row, ${n[o]} - 1))`)}; + ${e.indicesSet(`input_indices`,s,`max(0, min(col, ${n[s]} - 1))`)}; + ${_u(e,c,a,2)} + return ${e.getByIndices(`input_indices`)}; + } + + fn bilinearInterpolation(output_indices: ${t.type.indices}) -> ${l} { + var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); + var row:${l} = originalIndices[${o}]; + var col:${l} = originalIndices[${s}]; + ${r?`if (row < 0 || row > (${n[o]} - 1) || col < 0 || col > (${n[s]} - 1)) { + return ${i}; + }`:``}; + row = max(0, min(row, ${n[o]} - 1)); + col = max(0, min(col, ${n[s]} - 1)); + var row1: u32 = u32(row); + var col1: u32 = u32(col); + var row2: u32 = u32(row + 1); + var col2: u32 = u32(col + 1); + var channel: u32 = ${n.length>2?`u32(originalIndices[${c}])`:`0`}; + var batch: u32 = ${n.length>2?`u32(originalIndices[${a}])`:`0`}; + var x11: ${l} = getInputValue(batch, channel, row1, col1); + var x12: ${l} = getInputValue(batch, channel, row1, col2); + var x21: ${l} = getInputValue(batch, channel, row2, col1); + var x22: ${l} = getInputValue(batch, channel, row2, col2); + var dx1: ${l} = abs(row - ${l}(row1)); + var dx2: ${l} = abs(${l}(row2) - row); + var dy1: ${l} = abs(col - ${l}(col1)); + var dy2: ${l} = abs(${l}(col2) - col); + if (row1 == row2) { + dx1 = 0.5; + dx2 = 0.5; + } + if (col1 == col2) { + dy1 = 0.5; + dy2 = 0.5; + } + return (x11 * dx2 * dy2 + x12 * dx2 * dy1 + x21 * dx1 * dy2 + x22 * dx1 * dy1); + }`},yu=(e,t,n,r,i,a,o,s,c,l)=>{let u=n.length===2,d=!0,[f,p]=u?[0,1]:d?[2,3]:[1,2],m=e.type.value,h=o=>{let u=o===f?`row`:`col`;return` + fn ${u}CubicInterpolation(input_indices: ${e.type.indices}, output_indices: ${t.type.indices}) -> ${m} { + var output_index = ${t.indicesGet(`output_indices`,o)}; + var originalIdx: ${m} = getOriginalCoordinateFromResizedCoordinate(output_index, ${i[o]}, + ${r[o]}, ${n[o]}, ${a[o]}, ${a[o]} + ${n.length}); + var fractOriginalIdx: ${m} = originalIdx - floor(originalIdx); + var coefs = getCubicInterpolationCoefs(fractOriginalIdx); + + if (${s} && (originalIdx < 0 || originalIdx > (${n[o]} - 1))) { + return ${c}; + } + var data: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); + for (var i: i32 = -1; i < 3; i++) { + var ${u}: ${m} = originalIdx + ${m}(i); + if (${u} < 0 || ${u} >= ${n[o]}) { + ${l?`coefs[i + 1] = 0.0; + continue;`:s?`return ${c};`:`${u} = max(0, min(${u}, ${n[o]} - 1));`}; + } + var input_indices_copy: ${e.type.indices} = input_indices; + ${e.indicesSet(`input_indices_copy`,o,`u32(${u})`)}; + data[i + 1] = ${o===f?e.getByIndices(`input_indices_copy`):`rowCubicInterpolation(input_indices_copy, output_indices)`}; + } + return cubicInterpolation1D(data, coefs); + }`};return` + ${h(f)}; + ${h(p)}; + fn getCubicInterpolationCoefs(s: ${m}) -> array<${m}, 4> { + var absS = abs(s); + var coeffs: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); + var oneMinusAbsS: ${m} = 1.0 - absS; + var twoMinusAbsS: ${m} = 2.0 - absS; + var onePlusAbsS: ${m} = 1.0 + absS; + coeffs[0] = ((${o} * onePlusAbsS - 5 * ${o}) * onePlusAbsS + 8 * ${o}) * onePlusAbsS - 4 * ${o}; + coeffs[1] = ((${o} + 2) * absS - (${o} + 3)) * absS * absS + 1; + coeffs[2] = ((${o} + 2) * oneMinusAbsS - (${o} + 3)) * oneMinusAbsS * oneMinusAbsS + 1; + coeffs[3] = ((${o} * twoMinusAbsS - 5 * ${o}) * twoMinusAbsS + 8 * ${o}) * twoMinusAbsS - 4 * ${o}; + return coeffs; + } + + fn cubicInterpolation1D(x: array<${m}, 4>, coefs: array<${m}, 4>) -> ${m} { + var coefsSum: ${m} = coefs[0] + coefs[1] + coefs[2] + coefs[3]; + return (x[0] * coefs[0] + x[1] * coefs[1]+ x[2] * coefs[2]+ x[3] * coefs[3]) / coefsSum; + } + + fn bicubicInterpolation(output_indices: ${t.type.indices}) -> ${m} { + var input_indices: ${e.type.indices} = output_indices; + return colCubicInterpolation(input_indices, output_indices); + } + `},bu=(e,t,n,r,i)=>{let[a,o,s,c,l]=n.length===3?[-1,0,1,2,-1]:[0,2,3,4,1],u=e.type.value;return` + fn getInputValue(batch: u32, channel: u32, depth:u32, height: u32, width: u32) -> ${u} { + var input_indices: ${e.type.indices}; + ${e.indicesSet(`input_indices`,o,`max(0, min(depth, ${n[o]} - 1))`)}; + ${e.indicesSet(`input_indices`,s,`max(0, min(height, ${n[s]} - 1))`)}; + ${e.indicesSet(`input_indices`,c,`max(0, min(width, ${n[c]} - 1))`)}; + ${_u(e,l,a,3)} + return ${e.getByIndices(`input_indices`)}; + } + + fn trilinearInterpolation(output_indices: ${t.type.indices}) -> ${u} { + var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); + var depth:${u} = originalIndices[${o}]; + var height:${u} = originalIndices[${s}]; + var width:${u} = originalIndices[${c}]; + ${r?`if (depth < 0 || depth > (${n[o]} - 1) || height < 0 || height > (${n[s]} - 1) || width < 0 || (width > ${n[c]} - 1)) { + return ${i}; + }`:``}; + + depth = max(0, min(depth, ${n[o]} - 1)); + height = max(0, min(height, ${n[s]} - 1)); + width = max(0, min(width, ${n[c]} - 1)); + var depth1: u32 = u32(depth); + var height1: u32 = u32(height); + var width1: u32 = u32(width); + var depth2: u32 = u32(depth + 1); + var height2: u32 = u32(height + 1); + var width2: u32 = u32(width + 1); + var channel: u32 = ${n.length>3?`u32(originalIndices[${l}])`:`0`}; + var batch: u32 = ${n.length>3?`u32(originalIndices[${a}])`:`0`}; + + var x111: ${u} = getInputValue(batch, channel, depth1, height1, width1); + var x112: ${u} = getInputValue(batch, channel, depth1, height1, width2); + var x121: ${u} = getInputValue(batch, channel, depth1, height2, width1); + var x122: ${u} = getInputValue(batch, channel, depth1, height2, width2); + var x211: ${u} = getInputValue(batch, channel, depth2, height1, width1); + var x212: ${u} = getInputValue(batch, channel, depth2, height1, width2); + var x221: ${u} = getInputValue(batch, channel, depth2, height2, width1); + var x222: ${u} = getInputValue(batch, channel, depth2, height2, width2); + var dx1: ${u} = abs(depth - ${u}(depth1)); + var dx2: ${u} = abs(${u}(depth2) - depth); + var dy1: ${u} = abs(height - ${u}(height1)); + var dy2: ${u} = abs(${u}(height2) - height); + var dz1: ${u} = abs(width - ${u}(width1)); + var dz2: ${u} = abs(${u}(width2) - width); + if (depth1 == depth2) { + dx1 = 0.5; + dx2 = 0.5; + } + if (height1 == height2) { + dy1 = 0.5; + dy2 = 0.5; + } + if (width1 == width2) { + dz1 = 0.5; + dz2 = 0.5; + } + return (x111 * dx2 * dy2 * dz2 + x112 * dx2 * dy2 * dz1 + x121 * dx2 * dy1 *dz2 + x122 * dx2 * dy1 * dz1 + + x211 * dx1 * dy2 * dz2 + x212 * dx1 * dy2 * dz1 + x221 * dx1 * dy1 *dz2 + x222 * dx1 * dy1 * dz1); + }`},xu=(e,t,n,r,i,a)=>{let o=e.dims,s=du(a,t.axes,o.length),c=fu(o,r,i,t.axes),l=r.slice();r.length===0&&(l=o.map((e,t)=>e===0?1:c[t]/e),t.keepAspectRatioPolicy!==`stretch`&&(c=pu(o,l,t)));let u=J(`output`,e.dataType,c.length),d=q(`input`,e.dataType,o.length),f=U.size(c),p=o.length===c.length&&o.every((e,t)=>e===c[t]),m=t.coordinateTransformMode===`tf_crop_and_resize`,h=t.extrapolationValue,g=d.type.value,_=e=>` + ${p?``:` + ${lu(t.coordinateTransformMode,g)}; + ${(()=>{switch(t.mode){case`nearest`:return` + ${gu(d,o)}; + ${uu(t.nearestMode,n,g)}; + ${hu(d,u,o,c,l.length,s.length,m)}; + `;case`linear`:return` + ${mu(u,o,c,l.length,s.length)}; + ${(()=>{if(o.length===2||o.length===4)return`${vu(d,u,o,m,h)}`;if(o.length===3||o.length===5)return`${bu(d,u,o,m,h)}`;throw Error(`Linear mode only supports input dims 2, 3, 4 and 5 are supported in linear mode.`)})()}; + `;case`cubic`:return` + ${(()=>{if(o.length===2||o.length===4)return`${yu(d,u,o,c,l,s,t.cubicCoeffA,m,t.extrapolationValue,t.excludeOutside)}`;throw Error(`Cubic mode only supports input dims 2 and 4 are supported in linear mode.`)})()}; + `;default:throw Error(`Invalid resize mode`)}})()}; + `} + ${e.registerUniform(`output_size`,`u32`).registerUniform(`scales`,`f32`,l.length).registerUniform(`roi`,`f32`,s.length).declareVariables(d,u)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + ${p?`output[global_idx] = input[global_idx];`:` + let output_indices = ${u.offsetToIndices(`global_idx`)}; + var input_indices: ${d.type.indices}; + ${(()=>{switch(t.mode){case`nearest`:return`input_indices = calculateInputIndicesFromOutputIndices(output_indices); + if (checkInputIndices(input_indices)) { + output[global_idx] = ${d.getByIndices(`input_indices`)}; + } else { + output[global_idx] = ${t.extrapolationValue}; + }`;case`linear`:return`output[global_idx] = ${o.length===2||o.length===4?`bilinearInterpolation`:`trilinearInterpolation`}(output_indices);`;case`cubic`:return`output[global_idx] = bicubicInterpolation(output_indices);`;default:throw Error(`Unsupported resize mode: ${t.mode}`)}})()}; +`} + }`;return{name:`Resize`,shaderCache:{hint:`${t.cacheKey}|${n}|${l.length>0?t.mode===`cubic`?l:l.length:``}|${i.length>0?i:``}|${s.length>0?s:``}|${p}|${t.mode===`nearest`?o.length:o}`,inputDependencies:[`rank`]},getShaderSource:_,getRunData:()=>({outputs:[{dims:c,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:[{type:12,data:f},{type:1,data:l},{type:1,data:s},...G(o,c)]})}},Su=e=>{let t=e.customDataBuffer;return new Uint32Array(t,t.byteOffset,1)[0]},Cu=(e,t)=>{let n=[],r=[],i=[],a=Su(e);if(t.antialias!==0)throw Error(`Only default value (0) for Antialias attribute is supported`);su(e.inputs,t,a,n,r,i),e.compute(xu(e.inputs[0],t,a,n,r,i),{inputs:[0]})},wu=e=>{let t=e.antialias,n=e.axes,r=e.coordinateTransformMode,i=e.cubicCoeffA,a=e.excludeOutside!==0,o=e.extrapolationValue,s=e.keepAspectRatioPolicy,c=e.mode,l=e.nearestMode===``?`simple`:e.nearestMode;return Yn({antialias:t,axes:n,coordinateTransformMode:r,cubicCoeffA:i,excludeOutside:a,extrapolationValue:o,keepAspectRatioPolicy:s,mode:c,nearestMode:l})}}),Eu,Du,Ou,ku=M(()=>{"use strict";V(),W(),Y(),Eu=e=>{if(!e||e.length<3)throw Error(`layerNorm requires at least 3 inputs.`);let t=e[0],n=e[1],r=e[2];if(t.dataType!==n.dataType||t.dataType!==r.dataType)throw Error(`All inputs must have the same data type`);if(t.dims.length!==3&&t.dims.length!==2)throw Error(`Input must be 2D or 3D`);if(n.dims.length!==3&&n.dims.length!==2)throw Error(`Skip must be 2D or 3D`);let i=t.dims[t.dims.length-1],a=t.dims[t.dims.length-2];if(n.dims[n.dims.length-1]!==i)throw Error(`Skip must have the same hidden size as input`);if(n.dims[n.dims.length-2]!==a)throw Error(`Skip must have the same sequence length as input`);if(r.dims.length!==1)throw Error(`Gamma must be 1D`);if(r.dims[r.dims.length-1]!==i)throw Error(`Gamma must have the same hidden size as input`);if(e.length>3){let t=e[3];if(t.dims.length!==1)throw Error(`Beta must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Beta must have the same hidden size as input`)}if(e.length>4){let t=e[4];if(t.dims.length!==1)throw Error(`Bias must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Bias must have the same hidden size as input`)}},Du=(e,t,n,r)=>{let i=t.simplified,a=e[0].dims,o=U.size(a),s=a,c=o,l=a.slice(-1)[0],u=r?a.slice(0,-1).concat(1):[],d=!i&&e.length>3,f=e.length>4,p=r&&n>1,m=r&&n>2,h=n>3,g=64,_=tr(l),v=[{type:12,data:c},{type:12,data:_},{type:12,data:l},{type:1,data:t.epsilon}],y=t=>{let n=[{name:`output_size`,type:`u32`},{name:`components`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`epsilon`,type:`f32`}],r=[q(`x`,e[0].dataType,e[0].dims,_),q(`skip`,e[1].dataType,e[1].dims,_),q(`gamma`,e[2].dataType,e[2].dims,_)];d&&r.push(q(`beta`,e[3].dataType,e[3].dims,_)),f&&r.push(q(`bias`,e[4].dataType,e[4].dims,_)),r.push(J(`output`,e[0].dataType,s,_)),p&&r.push(J(`mean_output`,1,u)),m&&r.push(J(`inv_std_output`,1,u)),h&&r.push(J(`input_skip_bias_sum`,e[0].dataType,s,_));let a=$n(e[0].dataType),o=$n(1,_);return` + + ${t.registerUniforms(n).declareVariables(...r)} + var sum_shared : array<${o}, ${g}>; + var sum_squared_shared : array<${o}, ${g}>; + + ${t.mainStart([g,1,1])} + let ix = local_id.x; + let iy = global_id.x / ${g}; + + let hidden_size_vectorized: u32 = uniforms.hidden_size / uniforms.components; + var stride = hidden_size_vectorized / ${g}; + let offset = ix * stride + iy * hidden_size_vectorized; + let offset1d = stride * ix; + if (ix == ${g-1}) { + stride = hidden_size_vectorized - stride * ix; + } + for (var i: u32 = 0; i < stride; i++) { + let skip_value = skip[offset + i]; + let bias_value = ${f?`bias[offset1d + i]`:a+`(0.0)`}; + let input_value = x[offset + i]; + let value = input_value + skip_value + bias_value; + ${h?`input_skip_bias_sum[offset + i] = value;`:``} + output[offset + i] = value; + let f32_value = ${rr(a,_,`value`)}; + sum_shared[ix] += f32_value; + sum_squared_shared[ix] += f32_value * f32_value; + } + workgroupBarrier(); + + var reduce_size : u32 = ${g}; + for (var curr_size = reduce_size >> 1; curr_size > 0; curr_size = reduce_size >> 1) { + reduce_size = curr_size + (reduce_size & 1); + if (ix < curr_size) { + sum_shared[ix] += sum_shared[ix + reduce_size]; + sum_squared_shared[ix] += sum_squared_shared[ix + reduce_size]; + } + workgroupBarrier(); + } + + let sum = sum_shared[0]; + let square_sum = sum_squared_shared[0]; + let mean = ${ir(`sum`,_)} / f32(uniforms.hidden_size); + let inv_std_dev = inverseSqrt(${ir(`square_sum`,_)} / f32(uniforms.hidden_size) ${i?``:`- mean * mean`} + uniforms.epsilon); + ${p?`mean_output[global_idx] = mean;`:``} + ${m?`inv_std_output[global_idx] = inv_std_dev;`:``} + + for (var i: u32 = 0; i < stride; i++) { + output[offset + i] = (output[offset + i] ${i?``:`- ${a}(mean)`}) * + ${a}(inv_std_dev) * gamma[offset1d + i] + ${d?`+ beta[offset1d + i]`:``}; + } + }`},b=[{dims:s,dataType:e[0].dataType}];return n>1&&b.push({dims:u,dataType:1}),n>2&&b.push({dims:u,dataType:1}),n>3&&b.push({dims:a,dataType:e[0].dataType}),{name:`SkipLayerNormalization`,shaderCache:{hint:`${_};${p};${m};${h}`,inputDependencies:e.map((e,t)=>`type`)},getShaderSource:y,getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(c/l)},programUniforms:v})}},Ou=(e,t)=>{Eu(e.inputs);let n=[0];e.outputCount>1&&n.push(-3),e.outputCount>2&&n.push(-3),e.outputCount>3&&n.push(3),e.compute(Du(e.inputs,t,e.outputCount,!1),{outputs:n})}}),Au,ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru=M(()=>{"use strict";V(),W(),Xn(),Y(),Au=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);if(t.axes.length!==0){if(t.axes.length!==t.starts.length||t.axes.length!==t.ends.length)throw Error(`axes, starts and ends must have the same length`)}else if(t.starts.length!==t.ends.length)throw Error(`starts and ends must have the same length`);e.slice(1).forEach((t,n)=>{if(e[n+1].dataType!==6&&e[n+1].dataType!==7)throw Error(`Input ${n} must be an array of int32 or int64`)})},ju=(e,t)=>{let n=[];if(e.length>t)if(e[t].dataType===7)e[t].getBigInt64Array().forEach(e=>n.push(Number(e)));else if(e[t].dataType===6)e[t].getInt32Array().forEach(e=>n.push(Number(e)));else throw Error(`Input ${t} must be an array of int32 or int64`);return n},Mu=(e,t)=>{if(e.length>1){let t=ju(e,1),n=ju(e,2),r=ju(e,3);return r.length===0&&(r=[...Array(e[0].dims.length).keys()]),Yn({starts:t,ends:n,axes:r})}else return t},Nu=(e,t,n,r,i)=>{let a=e;return e<0&&(a+=n[r[t]]),i[t]<0?Math.max(0,Math.min(a,n[r[t]]-1)):Math.max(0,Math.min(a,n[r[t]]))},Pu=(e,t,n)=>`fn calculateInputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { + var input_indices: ${e.type.indices}; + var carry = 0u; + for (var i = ${n.length}; i >= 0; i--) { + let input_shape_i = ${K(`uniforms.input_shape`,`i`,n.length)}; + let steps_i = ${K(`uniforms.steps`,`i`,n.length)}; + let signs_i = ${K(`uniforms.signs`,`i`,n.length)}; + let starts_i = ${K(`uniforms.starts`,`i`,n.length)}; + var output_index = ${t.indicesGet(`output_indices`,`i`)}; + var input_index = output_index * steps_i + starts_i + carry; + carry = input_index / input_shape_i; + input_index = input_index % input_shape_i; + if (signs_i < 0) { + input_index = input_shape_i - input_index - 1u + starts_i; + } + ${e.indicesSet(`input_indices`,`i`,`input_index`)}; + } + return input_indices; + }`,Fu=(e,t)=>{let n=e[0].dims,r=U.size(n),i=t.axes.length>0?U.normalizeAxes(t.axes,n.length):[...Array(n.length).keys()],a=ju(e,4);a.forEach(e=>e!==0||(()=>{throw Error(`step cannot be 0`)})),a.length===0&&(a=Array(i.length).fill(1));let o=t.starts.map((e,t)=>Nu(e,t,n,i,a)),s=t.ends.map((e,t)=>Nu(e,t,n,i,a));if(i.length!==o.length||i.length!==s.length)throw Error(`start, ends and axes should have the same number of elements`);if(i.length!==n.length)for(let e=0;eMath.sign(e));a.forEach((e,t,n)=>{if(e<0){let r=(s[t]-o[t])/e,i=o[t],c=i+r*a[t];o[t]=c,s[t]=i,n[t]=-e}});let l=n.slice(0);i.forEach((e,t)=>{l[e]=Math.ceil((s[e]-o[e])/a[e])});let u={dims:l,dataType:e[0].dataType},d=J(`output`,e[0].dataType,l.length),f=q(`input`,e[0].dataType,e[0].dims.length),p=U.size(l),m=[{name:`outputSize`,type:`u32`},{name:`starts`,type:`u32`,length:o.length},{name:`signs`,type:`i32`,length:c.length},{name:`steps`,type:`u32`,length:a.length}],h=[{type:12,data:p},{type:12,data:o},{type:6,data:c},{type:12,data:a},...G(e[0].dims,l)],g=e=>` + ${e.registerUniforms(m).declareVariables(f,d)} + ${Pu(f,d,n)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + let output_indices = ${d.offsetToIndices(`global_idx`)}; + let input_indices = calculateInputIndices(output_indices); + ${d.setByOffset(`global_idx`,f.getByIndices(`input_indices`))} + }`;return{name:`Slice`,shaderCache:{hint:`${c.length}_${o.length}_${a.length}`,inputDependencies:[`rank`]},getShaderSource:g,getRunData:()=>({outputs:[u],dispatchGroup:{x:Math.ceil(r/64)},programUniforms:h})}},Iu=(e,t)=>{Au(e.inputs,t);let n=Mu(e.inputs,t);e.compute(Fu(e.inputs,n),{inputs:[0]})},Lu=e=>{let t=e.starts,n=e.ends,r=e.axes;return Yn({starts:t,ends:n,axes:r})}}),zu,Bu,Q,Vu,Hu=M(()=>{"use strict";V(),W(),Xn(),vr(),Y(),zu=e=>{if(!e||e.length!==1)throw Error(`Softmax op requires 1 input.`)},Bu=(e,t)=>{let n=e.inputs[0],r=n.dims,i=U.size(r),a=r.length,o=U.normalizeAxis(t.axis,a),s=ot),l[o]=a-1,l[a-1]=o,c=e.compute(hr(n,l),{inputs:[n],outputs:[-1]})[0]):c=n;let u=c.dims,d=u[a-1],f=i/d,p=tr(d),m=d/p,h=64;f===1&&(h=256);let g=(e,t)=>t===4?`max(max(${e}.x, ${e}.y), max(${e}.z, ${e}.w))`:t===2?`max(${e}.x, ${e}.y)`:t===3?`max(max(${e}.x, ${e}.y), ${e}.z)`:e,_=q(`x`,c.dataType,c.dims,p),v=J(`result`,c.dataType,c.dims,p),y=_.type.value,b=$n(c.dataType)===`f32`?`var threadMax = ${y}(-3.402823e+38f);`:`var threadMax = ${y}(-65504.0h);`,x=e=>` + var rowMaxShared : ${y}; + var rowSumShared : ${y}; + var threadShared : array<${y}, ${h}>; + + fn getValue(row: i32, col: i32, row_stride: i32) -> ${y} { + let index = row * row_stride + col; + return x[index]; + } + + fn setValue(row: i32, col: i32, row_stride: i32, value: ${y}) { + let index = row * row_stride + col; + result[index] = value; + } + ${e.registerUniform(`packedCols`,`i32`).declareVariables(_,v)} + ${e.mainStart(h)} + let gindex = i32(global_idx); + let lindex = i32(local_idx); + const wg = ${h}; + let row = gindex / wg; + let cols = uniforms.packedCols; + let row_stride : i32 = uniforms.packedCols; + + // find the rows max + ${b} + for (var col = lindex; col < cols; col += wg) { + let value = getValue(row, col, row_stride); + threadMax = max(threadMax, value); + } + if (lindex < cols) { + threadShared[lindex] = threadMax; + } + workgroupBarrier(); + + var reduceSize = min(cols, wg); + for (var currSize = reduceSize >> 1; currSize > 0; currSize = reduceSize >> 1) { + reduceSize = currSize + (reduceSize & 1); + if (lindex < currSize) { + threadShared[lindex] = max(threadShared[lindex], threadShared[lindex + reduceSize]); + } + workgroupBarrier(); + } + if (lindex == 0) { + rowMaxShared = ${y}(${g(`threadShared[0]`,p)}); + } + workgroupBarrier(); + + // find the rows sum + var threadSum = ${y}(0.0); + for (var col = lindex; col < cols; col += wg) { + let subExp = exp(getValue(row, col, row_stride) - rowMaxShared); + threadSum += subExp; + } + threadShared[lindex] = threadSum; + workgroupBarrier(); + + for (var currSize = wg >> 1; currSize > 0; currSize = currSize >> 1) { + if (lindex < currSize) { + threadShared[lindex] = threadShared[lindex] + threadShared[lindex + currSize]; + } + workgroupBarrier(); + } + if (lindex == 0) { + rowSumShared = ${y}(${ir(`threadShared[0]`,p)}); + } + workgroupBarrier(); + + // calculate final value for each element in the row + for (var col = lindex; col < cols; col += wg) { + let value = exp(getValue(row, col, row_stride) - rowMaxShared) / rowSumShared; + setValue(row, col, row_stride, value); + } + }`,S=e.compute({name:`Softmax`,shaderCache:{hint:`${p};${h}`,inputDependencies:[`type`]},getRunData:()=>({outputs:[{dims:u,dataType:c.dataType}],dispatchGroup:{x:f},programUniforms:[{type:6,data:m}]}),getShaderSource:x},{inputs:[c],outputs:[s?-1:0]})[0];s&&e.compute(hr(S,l),{inputs:[S]})},Q=(e,t)=>{zu(e.inputs),Bu(e,t)},Vu=e=>Yn({axis:e.axis})}),Uu,Wu,Gu,Ku,qu,Ju=M(()=>{"use strict";V(),W(),Y(),Uu=e=>Array.from(e.getBigInt64Array(),Number),Wu=e=>{if(!e||e.length!==2)throw Error(`Tile requires 2 inputs.`);if(e[0].dataType!==1&&e[0].dataType!==10&&e[0].dataType!==6&&e[0].dataType!==12)throw Error(`Tile only support float, float16, int32, and uint32 data types`);if(e[1].dataType!==7)throw Error("Tile `repeats` input should be of int64 data type");if(e[1].dims.length!==1)throw Error("Tile `repeats` input should be 1-D");if(Uu(e[1]).length!==e[0].dims.length)throw Error("Tile `repeats` input should have same number of elements as rank of input data tensor")},Gu=(e,t)=>{let n=[];for(let r=0;r{let n=e[0].dims,r=t??Uu(e[1]),i=Gu(n,r),a=U.size(i),o=e[0].dataType,s=q(`input`,o,n.length),c=J(`output`,o,i.length),l=e=>` + const inputShape = ${s.indices(...n)}; + ${e.registerUniform(`output_size`,`u32`).declareVariables(s,c)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let output_indices = ${c.offsetToIndices(`global_idx`)}; + var input_indices: ${s.type.indices}; + for (var i = 0; i < ${n.length}; i++) { + let input_dim_i = ${s.indicesGet(`uniforms.input_shape`,`i`)}; + let input_dim_value = ${c.indicesGet(`output_indices`,`i`)} % input_dim_i; + + ${s.indicesSet(`input_indices`,`i`,`input_dim_value`)} + } + ${c.setByOffset(`global_idx`,s.getByIndices(`input_indices`))} + }`;return{name:`Tile`,shaderCache:{hint:`${r}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:[{type:12,data:a},...G(e[0].dims,i)]}),getShaderSource:l}},qu=e=>{Wu(e.inputs),e.compute(Ku(e.inputs),{inputs:[0]})}}),Yu,Xu,Zu,Qu=M(()=>{"use strict";V(),W(),Y(),Yu=(e,t,n,r,i)=>{let a=J(`output_data`,i,n.length,4),o=q(`a_data`,t[1].dataType,t[1].dims.length,4),s=q(`b_data`,t[2].dataType,t[2].dims.length,4),c=q(`c_data`,t[0].dataType,t[0].dims.length,4),l,u=(e,t,n)=>`select(${t}, ${e}, ${n})`;if(!r)l=a.setByOffset(`global_idx`,u(o.getByOffset(`global_idx`),s.getByOffset(`global_idx`),c.getByOffset(`global_idx`)));else{let e=(e,t,n=``)=>{let r=`a_data[index_a${t}][component_a${t}]`,i=`b_data[index_b${t}][component_b${t}]`,l=`bool(c_data[index_c${t}] & (0xffu << (component_c${t} * 8)))`;return` + let output_indices${t} = ${a.offsetToIndices(`global_idx * 4u + ${t}u`)}; + let offset_a${t} = ${o.broadcastedIndicesToOffset(`output_indices${t}`,a)}; + let offset_b${t} = ${s.broadcastedIndicesToOffset(`output_indices${t}`,a)}; + let offset_c${t} = ${c.broadcastedIndicesToOffset(`output_indices${t}`,a)}; + let index_a${t} = offset_a${t} / 4u; + let index_b${t} = offset_b${t} / 4u; + let index_c${t} = offset_c${t} / 4u; + let component_a${t} = offset_a${t} % 4u; + let component_b${t} = offset_b${t} % 4u; + let component_c${t} = offset_c${t} % 4u; + ${e}[${t}] = ${n}(${u(r,i,l)}); + `};l=i===9?` + var data = vec4(0); + ${e(`data`,0,`u32`)} + ${e(`data`,1,`u32`)} + ${e(`data`,2,`u32`)} + ${e(`data`,3,`u32`)} + output_data[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` + ${e(`output_data[global_idx]`,0)} + ${e(`output_data[global_idx]`,1)} + ${e(`output_data[global_idx]`,2)} + ${e(`output_data[global_idx]`,3)} + `}return` + ${e.registerUniform(`vec_size`,`u32`).declareVariables(c,o,s,a)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + ${l} + }`},Xu=e=>{let t=e[1].dims,n=e[2].dims,r=e[0].dims,i=e[1].dataType,a=!(U.areEqual(t,n)&&U.areEqual(n,r)),o=t,s=U.size(t);if(a){let e=hn.calcShape(hn.calcShape(t,n,!1),r,!1);if(!e)throw Error(`Can't perform where op on the given tensors`);o=e,s=U.size(o)}let c=Math.ceil(s/4);return{name:`Where`,shaderCache:{inputDependencies:[`rank`,`rank`,`rank`]},getShaderSource:t=>Yu(t,e,o,a,i),getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64/4)},programUniforms:[{type:12,data:c},...G(r,t,n,o)]})}},Zu=e=>{e.compute(Xu(e.inputs))}}),$u,ed=M(()=>{"use strict";vi(),Di(),Mi(),Ii(),Ma(),Ka(),$a(),qo(),ss(),ds(),_s(),ks(),Fs(),Rs(),Us(),qs(),Qs(),rc(),cc(),Cc(),Yc(),el(),il(),sl(),pl(),jc(),Cl(),Hl(),ql(),Zl(),iu(),pi(),Tu(),Uc(),ku(),Ru(),Hu(),zc(),Ju(),vr(),Oa(),Qu(),$u=new Map([[`Abs`,[zi]],[`Acos`,[Bi]],[`Acosh`,[Vi]],[`Add`,[Ia]],[`ArgMax`,[gi,_i]],[`ArgMin`,[hi,_i]],[`Asin`,[Hi]],[`Asinh`,[Ui]],[`Atan`,[Wi]],[`Atanh`,[Gi]],[`Attention`,[Ei]],[`AveragePool`,[Nl,Ml]],[`BatchNormalization`,[ji]],[`BiasAdd`,[Fi]],[`BiasSplitGelu`,[ja]],[`Cast`,[qi,Ki]],[`Ceil`,[Xi]],[`Clip`,[Yi]],[`Concat`,[Za,Qa]],[`Conv`,[Ko,Ho]],[`ConvTranspose`,[os,es]],[`Cos`,[Zi]],[`Cosh`,[Qi]],[`CumSum`,[ls,us]],[`DepthToSpace`,[hs,gs]],[`DequantizeLinear`,[Gl,Kl]],[`Div`,[La]],[`Einsum`,[Ds,Os]],[`Elu`,[ea,$i]],[`Equal`,[Ra]],[`Erf`,[na]],[`Exp`,[ra]],[`Expand`,[Ps]],[`FastGelu`,[Ls]],[`Floor`,[ia]],[`FusedConv`,[Ko,Ho]],[`Gather`,[Hs,Vs]],[`GatherElements`,[nc,tc]],[`GatherBlockQuantized`,[Xs,Zs]],[`GatherND`,[Gs,Ks]],[`Gelu`,[aa]],[`Gemm`,[sc,oc]],[`GlobalAveragePool`,[Il,Fl]],[`GlobalMaxPool`,[Vl,Bl]],[`Greater`,[Ha]],[`GreaterOrEqual`,[Wa]],[`GridSample`,[xc,Sc]],[`GroupQueryAttention`,[Jc]],[`HardSigmoid`,[pa,fa]],[`InstanceNormalization`,[$c]],[`LayerNormalization`,[rl]],[`LeakyRelu`,[oa,$i]],[`Less`,[Ua]],[`LessOrEqual`,[Ga]],[`Log`,[wa]],[`MatMul`,[ol]],[`MatMulNBits`,[dl,fl]],[`MaxPool`,[Rl,zl]],[`Mul`,[za]],[`MultiHeadAttention`,[Ac,Ec]],[`Neg`,[ca]],[`Not`,[sa]],[`Pad`,[Sl]],[`Pow`,[Ba]],[`QuickGelu`,[Da,$i]],[`Range`,[Xl]],[`Reciprocal`,[la]],[`ReduceMin`,[ci]],[`ReduceMean`,[ri]],[`ReduceMax`,[si]],[`ReduceSum`,[ui]],[`ReduceProd`,[li]],[`ReduceL1`,[ii]],[`ReduceL2`,[ai]],[`ReduceLogSum`,[fi]],[`ReduceLogSumExp`,[oi]],[`ReduceSumSquare`,[di]],[`Relu`,[ua]],[`Resize`,[Cu,wu]],[`RotaryEmbedding`,[Hc]],[`ScatterND`,[ru,nu]],[`Sigmoid`,[da]],[`Sin`,[ma]],[`Sinh`,[ha]],[`Slice`,[Iu,Lu]],[`SkipLayerNormalization`,[Ou]],[`Split`,[Lc,Rc]],[`Sqrt`,[ga]],[`Softmax`,[Q,Vu]],[`Sub`,[Va]],[`Tan`,[_a]],[`Tanh`,[ya]],[`ThresholdedRelu`,[Ca,$i]],[`Tile`,[qu]],[`Transpose`,[gr,_r]],[`Where`,[Zu]]])}),td,nd=M(()=>{"use strict";$e(),pn(),Y(),td=class{constructor(e){this.backend=e,this.repo=new Map,this.attributesBound=!1}getArtifact(e){return this.repo.get(e)}setArtifact(e,t){this.repo.set(e,t)}run(e,t,n,r,i){He(e.programInfo.name);let a=this.backend.device,o=this.backend.getComputePassEncoder();this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2);let s=[];for(let e of t)s.push({binding:s.length,resource:{buffer:e.buffer}});for(let e of n)s.push({binding:s.length,resource:{buffer:e.buffer}});i&&s.push({binding:s.length,resource:i});let c=a.createBindGroup({layout:e.computePipeline.getBindGroupLayout(0),entries:s,label:e.programInfo.name});if(this.backend.sessionStatus===`capturing`){let t={kernelId:this.backend.currentKernelId,computePipeline:e.computePipeline,bindGroup:c,dispatchGroup:r};this.backend.capturedCommandList.get(this.backend.currentSessionId).push(t)}o.setPipeline(e.computePipeline),o.setBindGroup(0,c),o.dispatchWorkgroups(...r),this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2+1),this.backend.pendingDispatchNumber++,(this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber||this.backend.queryType===`at-passes`)&&this.backend.endComputePass(),this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber&&this.backend.flush(),B(e.programInfo.name)}dispose(){}build(e,t){He(e.name);let n=this.backend.device,r=[];[{feature:`shader-f16`,extension:`f16`},{feature:`subgroups`,extension:`subgroups`}].forEach(e=>{n.features.has(e.feature)&&r.push(`enable ${e.extension};`)});let i=lr(t,this.backend.device.limits),a=e.getShaderSource(i),o=`${r.join(` +`)} +${i.additionalImplementations} +${a}`,s=n.createShaderModule({code:o,label:e.name});H(`verbose`,()=>`[WebGPU] ${e.name} shader code: ${o}`);let c=n.createComputePipeline({compute:{module:s,entryPoint:`main`},layout:`auto`,label:e.name});return B(e.name),{programInfo:e,computePipeline:c,uniformVariablesInfo:i.variablesInfo}}normalizeDispatchGroupSize(e){let t=typeof e==`number`?e:e.x,n=typeof e==`number`?1:e.y||1,r=typeof e==`number`?1:e.z||1,i=this.backend.device.limits.maxComputeWorkgroupsPerDimension;if(t<=i&&n<=i&&r<=i)return[t,n,r];let a=t*n*r,o=Math.ceil(Math.sqrt(a));if(o>i){if(o=Math.ceil(Math.cbrt(a)),o>i)throw Error(`Total dispatch size exceeds WebGPU maximum.`);return[o,o,o]}else return[o,o,1]}}}),rd={};N(rd,{WebGpuBackend:()=>sd});var id,ad,od,sd,cd=M(()=>{"use strict";$e(),V(),pn(),xn(),qn(),ed(),nd(),id=(e,t)=>{if(t.length!==e.length)throw Error(`inputDependencies length ${t.length} is not equal to inputTensors length ${e.length}.`);let n=[];for(let r=0;r{let r=e.name;return e.shaderCache?.hint&&(r+=`[`+e.shaderCache.hint+`]`),r+=`:`+n+`:${id(t,e.shaderCache?.inputDependencies??Array(t.length).fill(`dims`))}`,r},od=class{constructor(e){e&&(this.architecture=e.architecture,this.vendor=e.vendor)}isArchitecture(e){return this.architecture===e}isVendor(e){return this.vendor===e}},sd=class{constructor(){this.currentSessionId=null,this.currentKernelId=null,this.commandEncoder=null,this.computePassEncoder=null,this.maxDispatchNumber=16,this.pendingDispatchNumber=0,this.pendingKernels=[],this.pendingQueries=new Map,this.sessionStatus=`default`,this.capturedCommandList=new Map,this.capturedPendingKernels=new Map,this.sessionExternalDataMapping=new Map}get currentKernelCustomData(){if(this.currentKernelId===null)throw Error(`currentKernelCustomData(): currentKernelId is null. (should not happen)`);let e=this.kernelCustomData.get(this.currentKernelId);return e||(e={},this.kernelCustomData.set(this.currentKernelId,e)),e}async initialize(e,t){this.env=e;let n=[],r={requiredLimits:{maxComputeWorkgroupStorageSize:t.limits.maxComputeWorkgroupStorageSize,maxComputeWorkgroupsPerDimension:t.limits.maxComputeWorkgroupsPerDimension,maxStorageBufferBindingSize:t.limits.maxStorageBufferBindingSize,maxBufferSize:t.limits.maxBufferSize,maxComputeInvocationsPerWorkgroup:t.limits.maxComputeInvocationsPerWorkgroup,maxComputeWorkgroupSizeX:t.limits.maxComputeWorkgroupSizeX,maxComputeWorkgroupSizeY:t.limits.maxComputeWorkgroupSizeY,maxComputeWorkgroupSizeZ:t.limits.maxComputeWorkgroupSizeZ},requiredFeatures:n},i=e=>t.features.has(e)&&n.push(e)&&!0;i(`chromium-experimental-timestamp-query-inside-passes`)||i(`timestamp-query`),i(`shader-f16`),i(`subgroups`),this.device=await t.requestDevice(r),this.adapterInfo=new od(t.info||await t.requestAdapterInfo()),this.gpuDataManager=Kn(this),this.programManager=new td(this),this.kernels=new Map,this.kernelPersistentData=new Map,this.kernelCustomData=new Map,dn(e.logLevel,!!e.debug),this.device.onuncapturederror=e=>{e.error instanceof GPUValidationError&&console.error(`An uncaught WebGPU validation error was raised: ${e.error.message}`)},Object.defineProperty(this.env.webgpu,`device`,{value:this.device,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(this.env.webgpu,`adapter`,{value:t,writable:!1,enumerable:!0,configurable:!1}),this.setQueryType()}dispose(){typeof this.querySet<`u`&&this.querySet.destroy(),this.gpuDataManager.dispose()}getCommandEncoder(){return this.commandEncoder||=this.device.createCommandEncoder(),this.commandEncoder}getComputePassEncoder(){if(!this.computePassEncoder){let e=this.getCommandEncoder(),t={};this.queryType===`at-passes`&&(t.timestampWrites={querySet:this.querySet,beginningOfPassWriteIndex:this.pendingDispatchNumber*2,endOfPassWriteIndex:this.pendingDispatchNumber*2+1}),this.computePassEncoder=e.beginComputePass(t)}return this.computePassEncoder}endComputePass(){this.computePassEncoder&&(this.computePassEncoder.end(),this.computePassEncoder=null)}flush(){if(!this.commandEncoder)return;He(),this.endComputePass();let e;this.queryType!==`none`&&(this.commandEncoder.resolveQuerySet(this.querySet,0,this.pendingDispatchNumber*2,this.queryResolveBuffer,0),e=this.device.createBuffer({size:this.pendingDispatchNumber*2*8,usage:GPUBufferUsage.MAP_READ|GPUBufferUsage.COPY_DST}),this.pendingQueries.set(e,this.pendingKernels),this.pendingKernels=[],this.commandEncoder.copyBufferToBuffer(this.queryResolveBuffer,0,e,0,this.pendingDispatchNumber*2*8)),this.device.queue.submit([this.commandEncoder.finish()]),this.gpuDataManager.refreshPendingBuffers(),this.commandEncoder=null,this.pendingDispatchNumber=0,this.queryType!==`none`&&e.mapAsync(GPUMapMode.READ).then(()=>{let t=new BigUint64Array(e.getMappedRange()),n=this.pendingQueries.get(e);for(let e=0;e`u`&&(this.queryTimeBase=d);let p=Number(d-this.queryTimeBase),m=Number(f-this.queryTimeBase);if(!Number.isSafeInteger(p)||!Number.isSafeInteger(m))throw RangeError(`incorrect timestamp range`);if(this.env.webgpu.profiling?.ondata)this.env.webgpu.profiling.ondata({version:1,inputsMetadata:l.map(e=>({dims:e.dims,dataType:Zt(e.dataType)})),outputsMetadata:u.map(e=>({dims:e.dims,dataType:Zt(e.dataType)})),kernelId:i,kernelType:o,kernelName:s,programName:c,startTime:p,endTime:m});else{let e=``;l.forEach((t,n)=>{e+=`input[${n}]: [${t.dims}] | ${Zt(t.dataType)}, `});let t=``;u.forEach((e,n)=>{t+=`output[${n}]: [${e.dims}] | ${Zt(e.dataType)}, `}),console.log(`[profiling] kernel "${i}|${o}|${s}|${c}" ${e}${t}execution time: ${m-p} ns`)}z(`GPU`,`${c}::${d}::${f}`)}e.unmap(),this.pendingQueries.delete(e)}),B()}run(e,t,n,r,i,a){He(e.name);let o=[];for(let e=0;et):n;if(u.length!==s.length)throw Error(`Output size ${u.length} must be equal to ${s.length}.`);let d=[],f=[];for(let e=0;e=a)throw Error(`Invalid output index: ${u[e]}`);if(u[e]===-3)continue;let t=u[e]===-1,n=u[e]===-2,o=t||n?i(s[e].dataType,s[e].dims):r(u[e],s[e].dataType,s[e].dims);if(d.push(o),o.data===0)continue;let c=this.gpuDataManager.get(o.data);if(!c)throw Error(`no GPU data for output: ${o.data}`);if(t&&this.temporaryData.push(c),n){let e=this.kernelPersistentData.get(this.currentKernelId);e||(e=[],this.kernelPersistentData.set(this.currentKernelId,e)),e.push(c)}f.push(c)}if(o.length!==t.length||f.length!==d.length){if(f.length===0)return B(e.name),d;throw Error(`Program ${e.name} has zero-sized tensor(s) in inputs or outputs. This is not supported now.`)}let p;if(l){let e=0,t=[];l.forEach(n=>{let r=typeof n.data==`number`?[n.data]:n.data;if(r.length===0)return;let i=n.type===10?2:4,a,o;n.type===10?(o=r.length>4?16:r.length>2?8:r.length*i,a=r.length>4?16:i*r.length):(o=r.length<=2?r.length*i:16,a=16),e=Math.ceil(e/o)*o,t.push(e);let s=n.type===10?8:4;e+=r.length>4?Math.ceil(r.length/s)*a:r.length*i});let n=16;e=Math.ceil(e/n)*n;let r=new ArrayBuffer(e);l.forEach((e,n)=>{let i=t[n],a=typeof e.data==`number`?[e.data]:e.data;if(e.type===6)new Int32Array(r,i,a.length).set(a);else if(e.type===12)new Uint32Array(r,i,a.length).set(a);else if(e.type===10)new Uint16Array(r,i,a.length).set(a);else if(e.type===1)new Float32Array(r,i,a.length).set(a);else throw Error(`Unsupported uniform type: ${Zt(e.type)}`)});let i=this.gpuDataManager.create(e,GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM);this.device.queue.writeBuffer(i.buffer,0,r,0,e),this.gpuDataManager.release(i.id),p={offset:0,size:e,buffer:i.buffer}}let m=this.programManager.normalizeDispatchGroupSize(c),h=m[1]===1&&m[2]===1,g=ad(e,t,h),_=this.programManager.getArtifact(g);if(_||(_=this.programManager.build(e,m),this.programManager.setArtifact(g,_),H(`info`,()=>`[artifact] key: ${g}, programName: ${e.name}`)),l&&_.uniformVariablesInfo){if(l.length!==_.uniformVariablesInfo.length)throw Error(`Uniform variables count mismatch: expect ${_.uniformVariablesInfo.length}, got ${l.length} in program "${_.programInfo.name}".`);for(let e=0;e`[ProgramManager] run "${e.name}" (key=${g}) with ${m[0]}x${m[1]}x${m[2]}`),this.queryType!==`none`||this.sessionStatus===`capturing`){let e={kernelId:this.currentKernelId,programName:_.programInfo.name,inputTensorViews:t,outputTensorViews:d};this.pendingKernels.push(e),this.sessionStatus===`capturing`&&this.capturedPendingKernels.get(this.currentSessionId).push(e)}return this.programManager.run(_,o,f,m,p),B(e.name),d}upload(e,t){this.gpuDataManager.upload(e,t)}memcpy(e,t){this.gpuDataManager.memcpy(e,t)}async download(e,t){await this.gpuDataManager.download(e,t)}alloc(e){return this.gpuDataManager.create(e).id}free(e){return this.gpuDataManager.release(e)}createKernel(e,t,n,r){let i=$u.get(e);if(!i)throw Error(`kernel not implemented: ${e}`);let a={kernelType:e,kernelName:r,kernelEntry:i[0],attributes:[i[1],n]};this.kernels.set(t,a)}releaseKernel(e){let t=this.kernelPersistentData.get(e);if(t){for(let e of t)this.gpuDataManager.release(e.id);this.kernelPersistentData.delete(e)}this.kernelCustomData.delete(e),this.kernels.delete(e)}computeKernel(e,t,n){let r=this.kernels.get(e);if(!r)throw Error(`kernel not created: ${e}`);let i=r.kernelType,a=r.kernelName,o=r.kernelEntry,s=r.attributes;if(this.currentKernelId!==null)throw Error(`kernel "[${i}] ${a}" is not allowed to be called recursively`);this.currentKernelId=e,s[0]&&(s[1]=s[0](s[1]),s[0]=void 0),H(`info`,()=>`[WebGPU] Start to run kernel "[${i}] ${a}"...`);let c=this.env.debug;this.temporaryData=[];try{return c&&this.device.pushErrorScope(`validation`),o(t,s[1]),0}catch(e){return n.push(Promise.resolve(`[WebGPU] Kernel "[${i}] ${a}" failed. ${e}`)),1}finally{c&&n.push(this.device.popErrorScope().then(e=>e?`GPU validation error for kernel "[${i}] ${a}": ${e.message}`:null));for(let e of this.temporaryData)this.gpuDataManager.release(e.id);this.temporaryData=[],this.currentKernelId=null}}registerBuffer(e,t,n,r){let i=this.sessionExternalDataMapping.get(e);i||(i=new Map,this.sessionExternalDataMapping.set(e,i));let a=i.get(t),o=this.gpuDataManager.registerExternalBuffer(n,r,a);return i.set(t,[o,n]),o}unregisterBuffers(e){let t=this.sessionExternalDataMapping.get(e);t&&(t.forEach(e=>this.gpuDataManager.unregisterExternalBuffer(e[0])),this.sessionExternalDataMapping.delete(e))}getBuffer(e){let t=this.gpuDataManager.get(e);if(!t)throw Error(`no GPU data for buffer: ${e}`);return t.buffer}createDownloader(e,t,n){return async()=>{let r=await Wn(this,e,t);return bn(r.buffer,n)}}writeTimestamp(e){this.queryType===`inside-passes`&&this.computePassEncoder.writeTimestamp(this.querySet,e)}setQueryType(){this.queryType=`none`,(this.env.webgpu.profiling?.mode===`default`||(typeof this.env.trace>`u`?this.env.wasm.trace:this.env.trace))&&(this.device.features.has(`chromium-experimental-timestamp-query-inside-passes`)?this.queryType=`inside-passes`:this.device.features.has(`timestamp-query`)&&(this.queryType=`at-passes`),this.queryType!==`none`&&typeof this.querySet>`u`&&(this.querySet=this.device.createQuerySet({type:`timestamp`,count:this.maxDispatchNumber*2}),this.queryResolveBuffer=this.device.createBuffer({size:this.maxDispatchNumber*2*8,usage:GPUBufferUsage.COPY_SRC|GPUBufferUsage.QUERY_RESOLVE})))}captureBegin(){H(`info`,`captureBegin`),this.capturedCommandList.get(this.currentSessionId)||this.capturedCommandList.set(this.currentSessionId,[]),this.capturedPendingKernels.get(this.currentSessionId)||this.capturedPendingKernels.set(this.currentSessionId,[]),this.flush(),this.sessionStatus=`capturing`}captureEnd(){H(`info`,`captureEnd`),this.flush(),this.sessionStatus=`default`}replay(){H(`info`,`replay`),this.sessionStatus=`replaying`;let e=this.capturedCommandList.get(this.currentSessionId),t=this.capturedPendingKernels.get(this.currentSessionId),n=e.length;this.pendingKernels=[];for(let r=0;r=this.maxDispatchNumber||this.queryType===`at-passes`)&&this.endComputePass(),this.pendingDispatchNumber>=this.maxDispatchNumber&&this.flush()}this.flush(),this.sessionStatus=`default`}onCreateSession(){this.gpuDataManager.onCreateSession()}onReleaseSession(e){this.unregisterBuffers(e),this.capturedCommandList.has(e)&&this.capturedCommandList.delete(e),this.capturedPendingKernels.has(e)&&this.capturedPendingKernels.delete(e),this.gpuDataManager.onReleaseSession(e)}onRunStart(e){this.currentSessionId=e,this.setQueryType()}}}),ld={};N(ld,{init:()=>fd});var ud,dd,fd,pd=M(()=>{"use strict";V(),pn(),W(),In(),ud=class e{constructor(e,t,n,r){this.module=e,this.dataType=t,this.data=n,this.dims=r}getFloat32Array(){if(this.dataType!==1)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Float32Array:new Float32Array(this.module.HEAP8.buffer,this.data,e)}getBigInt64Array(){if(this.dataType!==7)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new BigInt64Array:new BigInt64Array(this.module.HEAP8.buffer,this.data,e)}getInt32Array(){if(this.dataType!==6)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Int32Array:new Int32Array(this.module.HEAP8.buffer,this.data,e)}getUint16Array(){if(this.dataType!==10&&this.dataType!==4)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Uint16Array:new Uint16Array(this.module.HEAP8.buffer,this.data,e)}reshape(t){if(U.size(t)!==U.size(this.dims))throw Error(`Invalid new shape`);return new e(this.module,this.dataType,this.data,t)}},dd=class{constructor(e,t,n){this.module=e,this.backend=t,this.customDataOffset=0,this.customDataSize=0,this.adapterInfo=t.adapterInfo;let r=e.PTR_SIZE,i=n/e.PTR_SIZE,a=r===4?`i32`:`i64`;this.opKernelContext=Number(e.getValue(r*i++,a));let o=Number(e.getValue(r*i++,a));this.outputCount=Number(e.getValue(r*i++,a)),this.customDataOffset=Number(e.getValue(r*i++,`*`)),this.customDataSize=Number(e.getValue(r*i++,a));let s=[];for(let t=0;ttypeof e==`number`?this.inputs[e]:e)??this.inputs,r=t?.outputs??[],i=(e,t,n)=>new ud(this.module,t,this.output(e,n),n),a=(e,t)=>{let n=Qt(e,t);if(!n)throw Error(`Unsupported data type: ${e}`);let r=n>0?this.backend.gpuDataManager.create(n).id:0;return new ud(this.module,e,r,t)};return this.backend.run(e,n,r,i,a,this.outputCount)}output(e,t){let n=this.module.stackSave();try{let n=this.module.PTR_SIZE,r=n===4?`i32`:`i64`,i=this.module.stackAlloc((1+t.length)*n);this.module.setValue(i,t.length,r);for(let e=0;e{let i=t.jsepInit;if(!i)throw Error(`Failed to initialize JSEP. The WebAssembly module is not built with JSEP support.`);if(e===`webgpu`){let e=(cd(),le(rd)).WebGpuBackend,a=new e;await a.initialize(n,r),i(`webgpu`,[a,e=>a.alloc(Number(e)),e=>a.free(e),(e,n,r,i=!1)=>{if(i)H(`verbose`,()=>`[WebGPU] jsepCopyGpuToGpu: src=${Number(e)}, dst=${Number(n)}, size=${Number(r)}`),a.memcpy(Number(e),Number(n));else{H(`verbose`,()=>`[WebGPU] jsepCopyCpuToGpu: dataOffset=${Number(e)}, gpuDataId=${Number(n)}, size=${Number(r)}`);let i=t.HEAPU8.subarray(Number(e>>>0),Number(e>>>0)+Number(r));a.upload(Number(n),i)}},async(e,n,r)=>{H(`verbose`,()=>`[WebGPU] jsepCopyGpuToCpu: gpuDataId=${e}, dataOffset=${n}, size=${r}`),await a.download(Number(e),()=>t.HEAPU8.subarray(Number(n)>>>0,Number(n+r)>>>0))},(e,n,r)=>a.createKernel(e,Number(n),r,t.UTF8ToString(t._JsepGetNodeName(Number(n)))),e=>a.releaseKernel(e),(e,n,r,i)=>{H(`verbose`,()=>`[WebGPU] jsepRun: sessionHandle=${r}, kernel=${e}, contextDataOffset=${n}`);let o=new dd(t,a,Number(n));return a.computeKernel(Number(e),o,i)},()=>a.captureBegin(),()=>a.captureEnd(),()=>a.replay()])}else{let e=new Fn(n);i(`webnn`,[e,()=>e.reserveTensorId(),t=>e.releaseTensorId(t),async(t,n,r,i,a)=>e.ensureTensor(t,n,r,i,a),(t,n)=>{e.uploadTensor(t,n)},async(t,n)=>e.downloadTensor(t,n)])}}}),md,hd,gd,_d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed,Dd=M(()=>{"use strict";Ht(),Yt(),V(),It(),Bt(),on(),md=(e,t)=>{Ft()._OrtInit(e,t)!==0&&zt(`Can't initialize onnxruntime.`)},hd=async e=>{md(e.wasm.numThreads,en(e.logLevel))},gd=async(e,t)=>{Ft().asyncInit?.();{let n=(pd(),le(ld)).init;if(t===`webgpu`){if(typeof navigator>`u`||!navigator.gpu)throw Error(`WebGPU is not supported in current environment`);let t=e.webgpu.adapter;if(t){if(typeof t.limits!=`object`||typeof t.features!=`object`||typeof t.requestDevice!=`function`)throw Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let n=e.webgpu.powerPreference;if(n!==void 0&&n!==`low-power`&&n!==`high-performance`)throw Error(`Invalid powerPreference setting: "${n}"`);let r=e.webgpu.forceFallbackAdapter;if(r!==void 0&&typeof r!=`boolean`)throw Error(`Invalid forceFallbackAdapter setting: "${r}"`);if(t=await navigator.gpu.requestAdapter({powerPreference:n,forceFallbackAdapter:r}),!t)throw Error(`Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.`)}await n(`webgpu`,Ft(),e,t)}if(t===`webnn`){if(typeof navigator>`u`||!navigator.ml)throw Error(`WebNN is not supported in current environment`);await n(`webnn`,Ft(),e)}}},_d=new Map,vd=e=>{let t=Ft(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetInputOutputCount(e,r,r+n)!==0&&zt(`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)}},yd=(e,t)=>{let n=Ft(),r=n.stackSave(),i=0;try{let r=n.PTR_SIZE,a=n.stackAlloc(2*r);n._OrtGetInputOutputMetadata(e,t,a,a+r)!==0&&zt(`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{let t=Ft(),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]},xd=async(e,t)=>{let n,r,i=Ft();Array.isArray(e)?[n,r]=e:e.buffer===i.HEAPU8.buffer?[n,r]=[e.byteOffset,e.byteLength]:[n,r]=bd(e);let a=0,o=0,s=0,c=[],l=[],u=[];try{if([o,c]=await Jt(t),t?.externalData&&i.mountExternalData){let e=[];for(let n of t.externalData){let t=typeof n==`string`?n:n.path;e.push(an(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;n?i.currentContext=n:r?i.currentContext=await i.webnnCreateMLContext(r):i.currentContext=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&&zt(`Can't create a session.`),i.jsepOnCreateSession?.(),i.currentContext&&(i.webnnRegisterMLContext(a,i.currentContext),i.currentContext=void 0,i.shouldTransferToMLTensor=!0);let[e,d]=vd(a),f=!!t?.enableGraphCapture,p=[],m=[],h=[],g=[],_=[];for(let t=0;te===`gpu-buffer`||e===`ml-tensor`)&&(s=i._OrtCreateBinding(a),s===0&&zt(`Can't create IO binding.`),v={handle:s,outputPreferredLocations:_,outputPreferredLocationsEncoded:_.map(e=>rn(e))}),_d.set(a,[a,l,u,v,f,!1]),[a,p,m,h,g]}catch(e){throw l.forEach(e=>i._OrtFree(e)),u.forEach(e=>i._OrtFree(e)),s!==0&&i._OrtReleaseBinding(s)!==0&&zt(`Can't release IO binding.`),a!==0&&i._OrtReleaseSession(a)!==0&&zt(`Can't release session.`),e}finally{i._free(n),o!==0&&i._OrtReleaseSessionOptions(o)!==0&&zt(`Can't release session options.`),c.forEach(e=>i._free(e)),i.unmountExternalData?.()}},Sd=e=>{let t=Ft(),n=_d.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&&zt(`Can't clear bound outputs.`),t._OrtReleaseBinding(o.handle)!==0&&zt(`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&&zt(`Can't release session.`),_d.delete(e)},Cd=async(e,t,n,r,i,a,o=!1)=>{if(!e){t.push(0);return}let s=Ft(),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=Qt(Xt(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=Qt(Xt(l),u);let n=s.webnnRegisterMLTensor;if(!n)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);p=n(r,t,Xt(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;es.setValue(g+t*c,e,c===4?`i32`:`i64`));let e=s._OrtCreateTensor(Xt(l),p,m,g,u.length,rn(f));e===0&&zt(`Can't create tensor for input/output. session=${r}, index=${a}.`),t.push(e)}finally{s.stackRestore(h)}},wd=async(e,t,n,r,i,a)=>{let o=Ft(),s=o.PTR_SIZE,c=_d.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],m=c[5],h=t.length,g=r.length,_=0,v=[],y=[],b=[],x=[],S=o.stackSave(),C=o.stackAlloc(h*s),w=o.stackAlloc(h*s),T=o.stackAlloc(g*s),E=o.stackAlloc(g*s);try{[_,v]=Vt(a);for(let r=0;re*t,1);d=Zt(a);let _=f?.outputPreferredLocations[r[t]];if(d===`string`){if(_===`gpu-buffer`||_===`ml-tensor`)throw Error(`String tensor is not supported on GPU.`);let e=[];for(let t=0;t0){let e=o.jsepGetBuffer;if(!e)throw Error(`preferredLocation "gpu-buffer" is not supported without using WebGPU.`);let t=e(p),r=Qt(a,g);if(r===void 0||!tn(d))throw Error(`Unsupported data type: ${d}`);u=!0,S.push([d,h,{gpuBuffer:t,download:o.jsepCreateDownloader(t,r,d),dispose:()=>{o._OrtReleaseTensor(n)!==0&&zt(`Can't release tensor.`)}},`gpu-buffer`])}else if(_===`ml-tensor`&&g>0){let t=o.webnnEnsureTensor,r=o.webnnIsInt64Supported;if(!t||!r)throw Error(`preferredLocation "ml-tensor" is not supported without using WebNN.`);if(Qt(a,g)===void 0||!nn(d))throw Error(`Unsupported data type: ${d}`);if(d===`int64`&&!r(e))throw Error(`preferredLocation "ml-tensor" for int64 output is not supported by current WebNN Context.`);let i=await t(e,p,a,h,!1);u=!0,S.push([d,h,{mlTensor:i,download:o.webnnCreateMLTensorDownloader(p,d),dispose:()=>{o.webnnReleaseTensorId(p),o._OrtReleaseTensor(n)}},`ml-tensor`])}else{let e=$t(d),t=new e(g);new Uint8Array(t.buffer,t.byteOffset,t.byteLength).set(o.HEAPU8.subarray(p,p+t.byteLength)),S.push([d,h,t,`cpu`])}}finally{o.stackRestore(a),d===`string`&&p&&o._free(p),u||o._OrtReleaseTensor(n),o.webnnOnRunEnd?.(l)}}return f&&!p&&(o._OrtClearBoundOutputs(f.handle)!==0&&zt(`Can't clear bound outputs.`),_d.set(e,[l,u,d,f,p,!1])),S}finally{o.stackRestore(S),y.forEach(e=>o._OrtReleaseTensor(e)),b.forEach(e=>o._OrtReleaseTensor(e)),x.forEach(e=>o._free(e)),_!==0&&o._OrtReleaseRunOptions(_),v.forEach(e=>o._free(e))}},Td=e=>{let t=Ft(),n=_d.get(e);if(!n)throw Error(`invalid session id`);let r=n[0],i=t._OrtEndProfiling(r);i===0&&zt(`Can't get an profile file name.`),t._OrtFree(i)},Ed=e=>{let t=[];for(let n of e){let e=n[2];!Array.isArray(e)&&`buffer`in e&&t.push(e.buffer)}return t}}),Od,kd,Ad,jd,Md,Nd,Pd,Fd,Id,Ld,Rd,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd=M(()=>{"use strict";$e(),Dd(),It(),Et(),Od=()=>!!L.wasm.proxy&&typeof document<`u`,Ad=!1,jd=!1,Md=!1,Fd=new Map,Id=(e,t)=>{let n=Fd.get(e);n?n.push(t):Fd.set(e,[t])},Ld=()=>{if(Ad||!jd||Md||!kd)throw Error(`worker not ready`)},Rd=e=>{switch(e.data.type){case`init-wasm`:Ad=!1,e.data.err?(Md=!0,Pd[1](e.data.err)):(jd=!0,Pd[0]()),Nd&&(URL.revokeObjectURL(Nd),Nd=void 0);break;case`init-ep`:case`copy-from`:case`create`:case`release`:case`run`:case`end-profiling`:{let t=Fd.get(e.data.type);e.data.err?t.shift()[1](e.data.err):t.shift()[0](e.data.out);break}default:}},zd=async()=>{if(!jd){if(Ad)throw Error(`multiple calls to 'initWasm()' detected.`);if(Md)throw Error(`previous call to 'initWasm()' failed.`);if(Ad=!0,Od())return new Promise((e,t)=>{kd?.terminate(),Ct().then(([n,r])=>{try{kd=r,kd.onerror=e=>t(e),kd.onmessage=Rd,Pd=[e,t];let i={type:`init-wasm`,in:L};!i.in.wasm.wasmPaths&&(n||pt)&&(i.in.wasm.wasmPaths={wasm:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+import.meta.url).href}),kd.postMessage(i),Nd=n}catch(e){t(e)}},t)});try{await Pt(L.wasm),await hd(L),jd=!0}catch(e){throw Md=!0,e}finally{Ad=!1}}},Bd=async e=>{if(Od())return Ld(),new Promise((t,n)=>{Id(`init-ep`,[t,n]);let r={type:`init-ep`,in:{epName:e,env:L}};kd.postMessage(r)});await gd(L,e)},Vd=async e=>Od()?(Ld(),new Promise((t,n)=>{Id(`copy-from`,[t,n]);let r={type:`copy-from`,in:{buffer:e}};kd.postMessage(r,[e.buffer])})):bd(e),Hd=async(e,t)=>{if(Od()){if(t?.preferredOutputLocation)throw Error(`session option "preferredOutputLocation" is not supported for proxy.`);return Ld(),new Promise((n,r)=>{Id(`create`,[n,r]);let i={type:`create`,in:{model:e,options:{...t}}},a=[];e instanceof Uint8Array&&a.push(e.buffer),kd.postMessage(i,a)})}else return xd(e,t)},Ud=async e=>{if(Od())return Ld(),new Promise((t,n)=>{Id(`release`,[t,n]);let r={type:`release`,in:e};kd.postMessage(r)});Sd(e)},Wd=async(e,t,n,r,i,a)=>{if(Od()){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 Ld(),new Promise((i,o)=>{Id(`run`,[i,o]);let s=n,c={type:`run`,in:{sessionId:e,inputIndices:t,inputs:s,outputIndices:r,options:a}};kd.postMessage(c,Ed(s))})}else return wd(e,t,n,r,i,a)},Gd=async e=>{if(Od())return Ld(),new Promise((t,n)=>{Id(`end-profiling`,[t,n]);let r={type:`end-profiling`,in:e};kd.postMessage(r)});Td(e)}}),qd,Jd,Yd,Xd=M(()=>{"use strict";$e(),Kd(),V(),et(),on(),qd=(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()}`)}},Jd=e=>{switch(e[3]){case`cpu`:return new ze(e[0],e[2],e[1]);case`gpu-buffer`:{let t=e[0];if(!tn(t))throw Error(`not supported data type: ${t} for deserializing GPU tensor`);let{gpuBuffer:n,download:r,dispose:i}=e[2];return ze.fromGpuBuffer(n,{dataType:t,dims:e[1],download:r,dispose:i})}case`ml-tensor`:{let t=e[0];if(!nn(t))throw Error(`not supported data type: ${t} for deserializing MLTensor tensor`);let{mlTensor:n,download:r,dispose:i}=e[2];return ze.fromMLTensor(n,{dataType:t,dims:e[1],download:r,dispose:i})}default:throw Error(`invalid data location: ${e[3]}`)}},Yd=class{async fetchModelAndCopyToWasmMemory(e){return Vd(await an(e))}async loadModel(e,t){He();let n;n=typeof e==`string`?await this.fetchModelAndCopyToWasmMemory(e):e,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await Hd(n,t),B()}async dispose(){return Ud(this.sessionId)}async run(e,t,n){He();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)=>qd(e,()=>`input "${this.inputNames[i[t]]}"`)),c=a.map((e,t)=>e?qd(e,()=>`output "${this.outputNames[o[t]]}"`):null),l=await Wd(this.sessionId,i,s,o,c,n),u={};for(let e=0;e$d,initializeFlags:()=>Qd,wasmBackend:()=>ef});var Qd,$d,ef,tf=M(()=>{"use strict";$e(),Kd(),Xd(),Qd=()=>{(typeof L.wasm.initTimeout!=`number`||L.wasm.initTimeout<0)&&(L.wasm.initTimeout=0);let e=L.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.`),L.wasm.simd=!1),typeof L.wasm.proxy!=`boolean`&&(L.wasm.proxy=!1),typeof L.wasm.trace!=`boolean`&&(L.wasm.trace=!1),typeof L.wasm.numThreads!=`number`||!Number.isInteger(L.wasm.numThreads)||L.wasm.numThreads<=0)if(typeof self<`u`&&!self.crossOriginIsolated)L.wasm.numThreads=1;else{let e=typeof navigator>`u`?se(`node:os`).cpus().length:navigator.hardwareConcurrency;L.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},$d=class{async init(e){Qd(),await zd(),await Bd(e)}async createInferenceSessionHandler(e,t){let n=new Yd;return await n.loadModel(e,t),n}},ef=new $d});$e(),$e(),$e();var nf=`1.22.0-dev.20250409-89f8206ba4`,rf=Qe;{let e=(tf(),le(Zd)).wasmBackend;P(`webgpu`,e,5),P(`webnn`,e,5),P(`cpu`,e,10),P(`wasm`,e,10)}Object.defineProperty(L.versions,`web`,{value:nf,enumerable:!0}); +/** +* @license +* Copyright 2021 Google LLC. All Rights Reserved. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============================================================================= +*/ +/** +* @license +* Copyright 2020 Google LLC. All Rights Reserved. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============================================================================= +*/ +/** +* @license +* Copyright 2019 Google LLC. All Rights Reserved. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============================================================================= +*/ +var af={"onnxruntime-common":e=>{e.exports=ne},"onnxruntime-web":e=>{e.exports=j},"?2ce3":()=>{},"?7992":()=>{},"?5af5":()=>{},"?2b25":()=>{},"?db59":()=>{},"?383f":()=>{},"?fa4b":()=>{},"./node_modules/@huggingface/jinja/dist/index.js":(e,t,n)=>{n.r(t),n.d(t,{Environment:()=>L,Interpreter:()=>ye,Template:()=>Pe,parse:()=>se,tokenize:()=>d});var r=Object.freeze({Text:`Text`,NumericLiteral:`NumericLiteral`,BooleanLiteral:`BooleanLiteral`,NullLiteral:`NullLiteral`,StringLiteral:`StringLiteral`,Identifier:`Identifier`,Equals:`Equals`,OpenParen:`OpenParen`,CloseParen:`CloseParen`,OpenStatement:`OpenStatement`,CloseStatement:`CloseStatement`,OpenExpression:`OpenExpression`,CloseExpression:`CloseExpression`,OpenSquareBracket:`OpenSquareBracket`,CloseSquareBracket:`CloseSquareBracket`,OpenCurlyBracket:`OpenCurlyBracket`,CloseCurlyBracket:`CloseCurlyBracket`,Comma:`Comma`,Dot:`Dot`,Colon:`Colon`,Pipe:`Pipe`,CallOperator:`CallOperator`,AdditiveBinaryOperator:`AdditiveBinaryOperator`,MultiplicativeBinaryOperator:`MultiplicativeBinaryOperator`,ComparisonBinaryOperator:`ComparisonBinaryOperator`,UnaryOperator:`UnaryOperator`,Set:`Set`,If:`If`,For:`For`,In:`In`,Is:`Is`,NotIn:`NotIn`,Else:`Else`,EndSet:`EndSet`,EndIf:`EndIf`,ElseIf:`ElseIf`,EndFor:`EndFor`,And:`And`,Or:`Or`,Not:`UnaryOperator`,Macro:`Macro`,EndMacro:`EndMacro`,Break:`Break`,Continue:`Continue`}),i=Object.freeze({set:r.Set,for:r.For,in:r.In,is:r.Is,if:r.If,else:r.Else,endset:r.EndSet,endif:r.EndIf,elif:r.ElseIf,endfor:r.EndFor,and:r.And,or:r.Or,not:r.Not,"not in":r.NotIn,macro:r.Macro,endmacro:r.EndMacro,break:r.Break,continue:r.Continue,true:r.BooleanLiteral,false:r.BooleanLiteral,none:r.NullLiteral,True:r.BooleanLiteral,False:r.BooleanLiteral,None:r.NullLiteral}),a=class{constructor(e,t){this.value=e,this.type=t}};function o(e){return/\w/.test(e)}function s(e){return/[0-9]/.test(e)}var c=[[`{%`,r.OpenStatement],[`%}`,r.CloseStatement],[`{{`,r.OpenExpression],[`}}`,r.CloseExpression],[`(`,r.OpenParen],[`)`,r.CloseParen],[`{`,r.OpenCurlyBracket],[`}`,r.CloseCurlyBracket],[`[`,r.OpenSquareBracket],[`]`,r.CloseSquareBracket],[`,`,r.Comma],[`.`,r.Dot],[`:`,r.Colon],[`|`,r.Pipe],[`<=`,r.ComparisonBinaryOperator],[`>=`,r.ComparisonBinaryOperator],[`==`,r.ComparisonBinaryOperator],[`!=`,r.ComparisonBinaryOperator],[`<`,r.ComparisonBinaryOperator],[`>`,r.ComparisonBinaryOperator],[`+`,r.AdditiveBinaryOperator],[`-`,r.AdditiveBinaryOperator],[`*`,r.MultiplicativeBinaryOperator],[`/`,r.MultiplicativeBinaryOperator],[`%`,r.MultiplicativeBinaryOperator],[`=`,r.Equals]],l=new Map([[`n`,` +`],[`t`,` `],[`r`,`\r`],[`b`,`\b`],[`f`,`\f`],[`v`,`\v`],[`'`,`'`],[`"`,`"`],[`\\`,`\\`]]);function u(e,t={}){return e.endsWith(` +`)&&(e=e.slice(0,-1)),e=e.replace(/{#.*?#}/gs,`{##}`),t.lstrip_blocks&&(e=e.replace(/^[ \t]*({[#%])/gm,`$1`)),t.trim_blocks&&(e=e.replace(/([#%]})\n/g,`$1`)),e.replace(/{##}/g,``).replace(/-%}\s*/g,`%}`).replace(/\s*{%-/g,`{%`).replace(/-}}\s*/g,`}}`).replace(/\s*{{-/g,`{{`)}function d(e,t={}){let n=[],d=u(e,t),f=0,p=e=>{let t=``;for(;e(d[f]);){if(d[f]===`\\`){if(++f,f>=d.length)throw SyntaxError(`Unexpected end of input`);let e=d[f++],n=l.get(e);if(n===void 0)throw SyntaxError(`Unexpected escaped character: ${e}`);t+=n;continue}if(t+=d[f++],f>=d.length)throw SyntaxError(`Unexpected end of input`)}return t};main:for(;f0){n.push(new a(e,r.Text));continue}}p(e=>/\s/.test(e));let t=d[f];if(t===`-`||t===`+`){let e=n.at(-1)?.type;if(e===r.Text||e===void 0)throw SyntaxError(`Unexpected character: ${t}`);switch(e){case r.Identifier:case r.NumericLiteral:case r.BooleanLiteral:case r.NullLiteral:case r.StringLiteral:case r.CloseParen:case r.CloseSquareBracket:break;default:{++f;let e=p(s);n.push(new a(`${t}${e}`,e.length>0?r.NumericLiteral:r.UnaryOperator));continue}}}for(let[e,t]of c){let r=d.slice(f,f+e.length);if(r===e){n.push(new a(e,t)),f+=e.length;continue main}}if(t===`'`||t===`"`){++f;let e=p(e=>e!==t);n.push(new a(e,r.StringLiteral)),++f;continue}if(s(t)){let e=p(s);n.push(new a(e,r.NumericLiteral));continue}if(o(t)){let e=p(o),t=Object.hasOwn(i,e)?i[e]:r.Identifier;t===r.In&&n.at(-1)?.type===r.Not?(n.pop(),n.push(new a(`not in`,r.NotIn))):n.push(new a(e,t));continue}throw SyntaxError(`Unexpected character: ${t}`)}return n}var f=class{type=`Statement`},p=class extends f{constructor(e){super(),this.body=e}type=`Program`},m=class extends f{constructor(e,t,n){super(),this.test=e,this.body=t,this.alternate=n}type=`If`},h=class extends f{constructor(e,t,n,r){super(),this.loopvar=e,this.iterable=t,this.body=n,this.defaultBlock=r}type=`For`},g=class extends f{type=`Break`},_=class extends f{type=`Continue`},v=class extends f{constructor(e,t,n){super(),this.assignee=e,this.value=t,this.body=n}type=`Set`},y=class extends f{constructor(e,t,n){super(),this.name=e,this.args=t,this.body=n}type=`Macro`},b=class extends f{type=`Expression`},x=class extends b{constructor(e,t,n){super(),this.object=e,this.property=t,this.computed=n}type=`MemberExpression`},S=class extends b{constructor(e,t){super(),this.callee=e,this.args=t}type=`CallExpression`},C=class extends b{constructor(e){super(),this.value=e}type=`Identifier`},w=class extends b{constructor(e){super(),this.value=e}type=`Literal`},T=class extends w{type=`NumericLiteral`},E=class extends w{type=`StringLiteral`},D=class extends w{type=`BooleanLiteral`},O=class extends w{type=`NullLiteral`},k=class extends w{type=`ArrayLiteral`},A=class extends w{type=`TupleLiteral`},ee=class extends w{type=`ObjectLiteral`},te=class extends b{constructor(e,t,n){super(),this.operator=e,this.left=t,this.right=n}type=`BinaryExpression`},ne=class extends b{constructor(e,t){super(),this.operand=e,this.filter=t}type=`FilterExpression`},j=class extends b{constructor(e,t){super(),this.iterable=e,this.test=t}type=`SelectExpression`},re=class extends b{constructor(e,t,n){super(),this.operand=e,this.negate=t,this.test=n}type=`TestExpression`},ie=class extends b{constructor(e,t){super(),this.operator=e,this.argument=t}type=`UnaryExpression`},ae=class extends b{constructor(e=void 0,t=void 0,n=void 0){super(),this.start=e,this.stop=t,this.step=n}type=`SliceExpression`},oe=class extends b{constructor(e,t){super(),this.key=e,this.value=t}type=`KeywordArgumentExpression`};function se(e){let t=new p([]),n=0;function i(t,r){let i=e[n++];if(!i||i.type!==t)throw Error(`Parser Error: ${r}. ${i.type} !== ${t}.`);return i}function a(){switch(e[n].type){case r.Text:return c();case r.OpenStatement:return l();case r.OpenExpression:return u();default:throw SyntaxError(`Unexpected token type: ${e[n].type}`)}}function o(...t){return n+t.length<=e.length&&t.some((t,r)=>t!==e[n+r].type)}function s(...t){return n+t.length<=e.length&&t.every((t,r)=>t===e[n+r].type)}function c(){return new E(i(r.Text,`Expected text token`).value)}function l(){i(r.OpenStatement,`Expected opening statement token`);let t;switch(e[n].type){case r.Set:++n,t=d(),i(r.CloseStatement,`Expected closing statement token`);break;case r.If:++n,t=f(),i(r.OpenStatement,`Expected {% token`),i(r.EndIf,`Expected endif token`),i(r.CloseStatement,`Expected %} token`);break;case r.Macro:++n,t=b(),i(r.OpenStatement,`Expected {% token`),i(r.EndMacro,`Expected endmacro token`),i(r.CloseStatement,`Expected %} token`);break;case r.For:++n,t=se(),i(r.OpenStatement,`Expected {% token`),i(r.EndFor,`Expected endfor token`),i(r.CloseStatement,`Expected %} token`);break;case r.Break:++n,i(r.CloseStatement,`Expected closing statement token`),t=new g;break;case r.Continue:++n,i(r.CloseStatement,`Expected closing statement token`),t=new _;break;default:throw SyntaxError(`Unknown statement type: ${e[n].type}`)}return t}function u(){i(r.OpenExpression,`Expected opening expression token`);let e=M();return i(r.CloseExpression,`Expected closing expression token`),e}function d(){let t=M();if(s(r.Equals)){++n;let e=M();return new v(t,e,[])}else{let o=[];for(i(r.CloseStatement,`Expected %} token`);!(e[n]?.type===r.OpenStatement&&e[n+1]?.type===r.EndSet);){let e=a();o.push(e)}return i(r.OpenStatement,`Expected {% token`),i(r.EndSet,`Expected endset token`),new v(t,null,o)}}function f(){let t=M();i(r.CloseStatement,`Expected closing statement token`);let o=[],c=[];for(;!(e[n]?.type===r.OpenStatement&&(e[n+1]?.type===r.ElseIf||e[n+1]?.type===r.Else||e[n+1]?.type===r.EndIf));)o.push(a());if(e[n]?.type===r.OpenStatement&&e[n+1]?.type!==r.EndIf)if(++n,s(r.ElseIf))i(r.ElseIf,`Expected elseif token`),c.push(f());else for(i(r.Else,`Expected else token`),i(r.CloseStatement,`Expected closing statement token`);!(e[n]?.type===r.OpenStatement&&e[n+1]?.type===r.EndIf);)c.push(a());return new m(t,o,c)}function b(){let e=L();if(e.type!==`Identifier`)throw SyntaxError(`Expected identifier following macro statement`);let t=I();i(r.CloseStatement,`Expected closing statement token`);let n=[];for(;o(r.OpenStatement,r.EndMacro);)n.push(a());return new y(e,t,n)}function w(e=!1){let t=e?L:M,i=[t()],a=s(r.Comma);for(;a&&(++n,i.push(t()),s(r.Comma)););return a?new A(i):i[0]}function se(){let e=w(!0);if(!(e instanceof C||e instanceof A))throw SyntaxError(`Expected identifier/tuple for the loop variable, got ${e.type} instead`);i(r.In,"Expected `in` keyword following loop variable");let t=M();i(r.CloseStatement,`Expected closing statement token`);let c=[];for(;o(r.OpenStatement,r.EndFor)&&o(r.OpenStatement,r.Else);)c.push(a());let l=[];if(s(r.OpenStatement,r.Else))for(++n,++n,i(r.CloseStatement,`Expected closing statement token`);o(r.OpenStatement,r.EndFor);)l.push(a());return new h(e,t,c,l)}function M(){return N()}function N(){let e=ce();if(s(r.If)){++n;let t=ce();if(s(r.Else)){++n;let r=ce();return new m(t,[e],[r])}else return new j(e,t)}return e}function ce(){let t=le();for(;s(r.Or);){let r=e[n];++n;let i=le();t=new te(r,t,i)}return t}function le(){let t=ue();for(;s(r.And);){let r=e[n];++n;let i=ue();t=new te(r,t,i)}return t}function ue(){let t;for(;s(r.Not);){let r=e[n];++n;let i=ue();t=new ie(r,i)}return t??de()}function de(){let t=P();for(;s(r.ComparisonBinaryOperator)||s(r.In)||s(r.NotIn);){let r=e[n];++n;let i=P();t=new te(r,t,i)}return t}function P(){let t=ge();for(;s(r.AdditiveBinaryOperator);){let r=e[n];++n;let i=ge();t=new te(r,t,i)}return t}function F(){let e=he(L());return s(r.OpenParen)?fe(e):e}function fe(e){let t=new S(e,I());return t=he(t),s(r.OpenParen)&&(t=fe(t)),t}function I(){i(r.OpenParen,`Expected opening parenthesis for arguments list`);let e=pe();return i(r.CloseParen,`Expected closing parenthesis for arguments list`),e}function pe(){let e=[];for(;!s(r.CloseParen);){let t=M();if(s(r.Equals)){if(++n,!(t instanceof C))throw SyntaxError(`Expected identifier for keyword argument`);let e=M();t=new oe(t,e)}e.push(t),s(r.Comma)&&++n}return e}function me(){let e=[],t=!1;for(;!s(r.CloseSquareBracket);)s(r.Colon)?(e.push(void 0),++n,t=!0):(e.push(M()),s(r.Colon)&&(++n,t=!0));if(e.length===0)throw SyntaxError(`Expected at least one argument for member/slice expression`);if(t){if(e.length>3)throw SyntaxError(`Expected 0-3 arguments for slice expression`);return new ae(...e)}return e[0]}function he(t){for(;s(r.Dot)||s(r.OpenSquareBracket);){let a=e[n];++n;let o,s=a.type!==r.Dot;if(s)o=me(),i(r.CloseSquareBracket,`Expected closing square bracket`);else if(o=L(),o.type!==`Identifier`)throw SyntaxError(`Expected identifier following dot operator`);t=new x(t,o,s)}return t}function ge(){let t=_e();for(;s(r.MultiplicativeBinaryOperator);){let r=e[n];++n;let i=_e();t=new te(r,t,i)}return t}function _e(){let e=ve();for(;s(r.Is);){++n;let t=s(r.Not);t&&++n;let i=L();if(i instanceof D?i=new C(i.value.toString()):i instanceof O&&(i=new C(`none`)),!(i instanceof C))throw SyntaxError(`Expected identifier for the test`);e=new re(e,t,i)}return e}function ve(){let e=F();for(;s(r.Pipe);){++n;let t=L();if(!(t instanceof C))throw SyntaxError(`Expected identifier for the filter`);s(r.OpenParen)&&(t=fe(t)),e=new ne(e,t)}return e}function L(){let t=e[n];switch(t.type){case r.NumericLiteral:return++n,new T(Number(t.value));case r.StringLiteral:return++n,new E(t.value);case r.BooleanLiteral:return++n,new D(t.value.toLowerCase()===`true`);case r.NullLiteral:return++n,new O(null);case r.Identifier:return++n,new C(t.value);case r.OpenParen:{++n;let t=w();if(e[n].type!==r.CloseParen)throw SyntaxError(`Expected closing parenthesis, got ${e[n].type} instead`);return++n,t}case r.OpenSquareBracket:{++n;let e=[];for(;!s(r.CloseSquareBracket);)e.push(M()),s(r.Comma)&&++n;return++n,new k(e)}case r.OpenCurlyBracket:{++n;let e=new Map;for(;!s(r.CloseCurlyBracket);){let t=M();i(r.Colon,`Expected colon between key and value in object literal`);let a=M();e.set(t,a),s(r.Comma)&&++n}return++n,new ee(e)}default:throw SyntaxError(`Unexpected token: ${t.type}`)}}for(;n=0?(t=(t??=0)<0?Math.max(e.length+t,0):Math.min(t,e.length),n=(n??=e.length)<0?Math.max(e.length+n,0):Math.min(n,e.length)):(t=(t??=e.length-1)<0?Math.max(e.length+t,-1):Math.min(t,e.length-1),n=(n??=-1)<-1?Math.max(e.length+n,-1):Math.min(n,e.length-1));let a=[];for(let o=t;i*oe.toUpperCase())}var le=class extends Error{},ue=class extends Error{},de=class{type=`RuntimeValue`;value;builtins=new Map;constructor(e=void 0){this.value=e}__bool__(){return new fe(!!this.value)}},P=class extends de{type=`NumericValue`},F=class extends de{type=`StringValue`;builtins=new Map([[`upper`,new ge(()=>new F(this.value.toUpperCase()))],[`lower`,new ge(()=>new F(this.value.toLowerCase()))],[`strip`,new ge(()=>new F(this.value.trim()))],[`title`,new ge(()=>new F(ce(this.value)))],[`length`,new P(this.value.length)],[`rstrip`,new ge(()=>new F(this.value.trimEnd()))],[`lstrip`,new ge(()=>new F(this.value.trimStart()))],[`startswith`,new ge(e=>{if(e.length===0)throw Error(`startswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`startswith() argument must be a string`);return new fe(this.value.startsWith(t.value))})],[`endswith`,new ge(e=>{if(e.length===0)throw Error(`endswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`endswith() argument must be a string`);return new fe(this.value.endsWith(t.value))})],[`split`,new ge(e=>{let t=e[0]??new _e;if(!(t instanceof F||t instanceof _e))throw Error(`sep argument must be a string or null`);let n=e[1]??new P(-1);if(!(n instanceof P))throw Error(`maxsplit argument must be a number`);let r=[];if(t instanceof _e){let e=this.value.trimStart();for(let{0:t,index:i}of e.matchAll(/\S+/g)){if(n.value!==-1&&r.length>=n.value&&i!==void 0){r.push(t+e.slice(i+t.length));break}r.push(t)}}else{if(t.value===``)throw Error(`empty separator`);r=this.value.split(t.value),n.value!==-1&&r.length>n.value&&r.push(r.splice(n.value).join(t.value))}return new me(r.map(e=>new F(e)))})]])},fe=class extends de{type=`BooleanValue`},I=class extends de{type=`ObjectValue`;__bool__(){return new fe(this.value.size>0)}builtins=new Map([[`get`,new ge(([e,t])=>{if(!(e instanceof F))throw Error(`Object key must be a string: got ${e.type}`);return this.value.get(e.value)??t??new _e})],[`items`,new ge(()=>new me(Array.from(this.value.entries()).map(([e,t])=>new me([new F(e),t]))))]])},pe=class extends I{type=`KeywordArgumentsValue`},me=class extends de{type=`ArrayValue`;builtins=new Map([[`length`,new P(this.value.length)]]);__bool__(){return new fe(this.value.length>0)}},he=class extends me{type=`TupleValue`},ge=class extends de{type=`FunctionValue`},_e=class extends de{type=`NullValue`},ve=class extends de{type=`UndefinedValue`},L=class{constructor(e){this.parent=e}variables=new Map([[`namespace`,new ge(e=>{if(e.length===0)return new I(new Map);if(e.length!==1||!(e[0]instanceof I))throw Error("`namespace` expects either zero arguments or a single object argument");return e[0]})]]);tests=new Map([[`boolean`,e=>e.type===`BooleanValue`],[`callable`,e=>e instanceof ge],[`odd`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "odd" to type: ${e.type}`);return e.value%2!=0}],[`even`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "even" to type: ${e.type}`);return e.value%2==0}],[`false`,e=>e.type===`BooleanValue`&&!e.value],[`true`,e=>e.type===`BooleanValue`&&e.value],[`none`,e=>e.type===`NullValue`],[`string`,e=>e.type===`StringValue`],[`number`,e=>e.type===`NumericValue`],[`integer`,e=>e.type===`NumericValue`&&Number.isInteger(e.value)],[`iterable`,e=>e.type===`ArrayValue`||e.type===`StringValue`],[`mapping`,e=>e.type===`ObjectValue`],[`lower`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toLowerCase()}],[`upper`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toUpperCase()}],[`none`,e=>e.type===`NullValue`],[`defined`,e=>e.type!==`UndefinedValue`],[`undefined`,e=>e.type===`UndefinedValue`],[`equalto`,(e,t)=>e.value===t.value],[`eq`,(e,t)=>e.value===t.value]]);set(e,t){return this.declareVariable(e,be(t))}declareVariable(e,t){if(this.variables.has(e))throw SyntaxError(`Variable already declared: ${e}`);return this.variables.set(e,t),t}setVariable(e,t){return this.variables.set(e,t),t}resolve(e){if(this.variables.has(e))return this;if(this.parent)return this.parent.resolve(e);throw Error(`Unknown variable: ${e}`)}lookupVariable(e){try{return this.resolve(e).variables.get(e)??new ve}catch{return new ve}}},ye=class{global;constructor(e){this.global=e??new L}run(e){return this.evaluate(e,this.global)}evaluateBinaryExpression(e,t){let n=this.evaluate(e.left,t);switch(e.operator.value){case`and`:return n.__bool__().value?this.evaluate(e.right,t):n;case`or`:return n.__bool__().value?n:this.evaluate(e.right,t)}let r=this.evaluate(e.right,t);switch(e.operator.value){case`==`:return new fe(n.value==r.value);case`!=`:return new fe(n.value!=r.value)}if(n instanceof ve||r instanceof ve)throw Error(`Cannot perform operation on undefined values`);if(n instanceof _e||r instanceof _e)throw Error(`Cannot perform operation on null values`);if(n instanceof P&&r instanceof P)switch(e.operator.value){case`+`:return new P(n.value+r.value);case`-`:return new P(n.value-r.value);case`*`:return new P(n.value*r.value);case`/`:return new P(n.value/r.value);case`%`:return new P(n.value%r.value);case`<`:return new fe(n.value`:return new fe(n.value>r.value);case`>=`:return new fe(n.value>=r.value);case`<=`:return new fe(n.value<=r.value)}else if(n instanceof me&&r instanceof me)switch(e.operator.value){case`+`:return new me(n.value.concat(r.value))}else if(r instanceof me){let t=r.value.find(e=>e.value===n.value)!==void 0;switch(e.operator.value){case`in`:return new fe(t);case`not in`:return new fe(!t)}}if(n instanceof F||r instanceof F)switch(e.operator.value){case`+`:return new F(n.value.toString()+r.value.toString())}if(n instanceof F&&r instanceof F)switch(e.operator.value){case`in`:return new fe(r.value.includes(n.value));case`not in`:return new fe(!r.value.includes(n.value))}if(n instanceof F&&r instanceof I)switch(e.operator.value){case`in`:return new fe(r.value.has(n.value));case`not in`:return new fe(!r.value.has(n.value))}throw SyntaxError(`Unknown operator "${e.operator.value}" between ${n.type} and ${r.type}`)}evaluateArguments(e,t){let n=[],r=new Map;for(let i of e)if(i.type===`KeywordArgumentExpression`){let e=i;r.set(e.key.value,this.evaluate(e.value,t))}else{if(r.size>0)throw Error(`Positional arguments must come before keyword arguments`);n.push(this.evaluate(i,t))}return[n,r]}evaluateFilterExpression(e,t){let n=this.evaluate(e.operand,t);if(e.filter.type===`Identifier`){let t=e.filter;if(t.value===`tojson`)return new F(xe(n));if(n instanceof me)switch(t.value){case`list`:return n;case`first`:return n.value[0];case`last`:return n.value[n.value.length-1];case`length`:return new P(n.value.length);case`reverse`:return new me(n.value.reverse());case`sort`:return new me(n.value.sort((e,t)=>{if(e.type!==t.type)throw Error(`Cannot compare different types: ${e.type} and ${t.type}`);switch(e.type){case`NumericValue`:return e.value-t.value;case`StringValue`:return e.value.localeCompare(t.value);default:throw Error(`Cannot compare type: ${e.type}`)}}));case`join`:return new F(n.value.map(e=>e.value).join(``));case`string`:return new F(xe(n));default:throw Error(`Unknown ArrayValue filter: ${t.value}`)}else if(n instanceof F)switch(t.value){case`length`:return new P(n.value.length);case`upper`:return new F(n.value.toUpperCase());case`lower`:return new F(n.value.toLowerCase());case`title`:return new F(ce(n.value));case`capitalize`:return new F(n.value.charAt(0).toUpperCase()+n.value.slice(1));case`trim`:return new F(n.value.trim());case`indent`:return new F(n.value.split(` +`).map((e,t)=>t===0||e.length===0?e:` `+e).join(` +`));case`join`:case`string`:return n;default:throw Error(`Unknown StringValue filter: ${t.value}`)}else if(n instanceof P)switch(t.value){case`abs`:return new P(Math.abs(n.value));default:throw Error(`Unknown NumericValue filter: ${t.value}`)}else if(n instanceof I)switch(t.value){case`items`:return new me(Array.from(n.value.entries()).map(([e,t])=>new me([new F(e),t])));case`length`:return new P(n.value.size);default:throw Error(`Unknown ObjectValue filter: ${t.value}`)}throw Error(`Cannot apply filter "${t.value}" to type: ${n.type}`)}else if(e.filter.type===`CallExpression`){let r=e.filter;if(r.callee.type!==`Identifier`)throw Error(`Unknown filter: ${r.callee.type}`);let i=r.callee.value;if(i===`tojson`){let[,e]=this.evaluateArguments(r.args,t),i=e.get(`indent`)??new _e;if(!(i instanceof P||i instanceof _e))throw Error(`If set, indent must be a number`);return new F(xe(n,i.value))}else if(i===`join`){let e;if(n instanceof F)e=Array.from(n.value);else if(n instanceof me)e=n.value.map(e=>e.value);else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`);let[a,o]=this.evaluateArguments(r.args,t),s=a.at(0)??o.get(`separator`)??new F(``);if(!(s instanceof F))throw Error(`separator must be a string`);return new F(e.join(s.value))}if(n instanceof me){switch(i){case`selectattr`:case`rejectattr`:{let e=i===`selectattr`;if(n.value.some(e=>!(e instanceof I)))throw Error(`\`${i}\` can only be applied to array of objects`);if(r.args.some(e=>e.type!==`StringLiteral`))throw Error(`arguments of \`${i}\` must be strings`);let[a,o,s]=r.args.map(e=>this.evaluate(e,t)),c;if(o){let e=t.tests.get(o.value);if(!e)throw Error(`Unknown test: ${o.value}`);c=e}else c=(...e)=>e[0].__bool__().value;let l=n.value.filter(t=>{let n=t.value.get(a.value),r=n?c(n,s):!1;return e?r:!r});return new me(l)}case`map`:{let[,e]=this.evaluateArguments(r.args,t);if(e.has(`attribute`)){let t=e.get(`attribute`);if(!(t instanceof F))throw Error(`attribute must be a string`);let r=e.get(`default`),i=n.value.map(e=>{if(!(e instanceof I))throw Error(`items in map must be an object`);return e.value.get(t.value)??r??new ve});return new me(i)}else throw Error("`map` expressions without `attribute` set are not currently supported.")}}throw Error(`Unknown ArrayValue filter: ${i}`)}else if(n instanceof F){switch(i){case`indent`:{let[e,i]=this.evaluateArguments(r.args,t),a=e.at(0)??i.get(`width`)??new P(4);if(!(a instanceof P))throw Error(`width must be a number`);let o=e.at(1)??i.get(`first`)??new fe(!1),s=e.at(2)??i.get(`blank`)??new fe(!1),c=n.value.split(` +`),l=` `.repeat(a.value),u=c.map((e,t)=>!o.value&&t===0||!s.value&&e.length===0?e:l+e);return new F(u.join(` +`))}}throw Error(`Unknown StringValue filter: ${i}`)}else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`)}throw Error(`Unknown filter: ${e.filter.type}`)}evaluateTestExpression(e,t){let n=this.evaluate(e.operand,t),r=t.tests.get(e.test.value);if(!r)throw Error(`Unknown test: ${e.test.value}`);let i=r(n);return new fe(e.negate?!i:i)}evaluateUnaryExpression(e,t){let n=this.evaluate(e.argument,t);switch(e.operator.value){case`not`:return new fe(!n.value);default:throw SyntaxError(`Unknown operator: ${e.operator.value}`)}}evalProgram(e,t){return this.evaluateBlock(e.body,t)}evaluateBlock(e,t){let n=``;for(let r of e){let e=this.evaluate(r,t);e.type!==`NullValue`&&e.type!==`UndefinedValue`&&(n+=e.value)}return new F(n)}evaluateIdentifier(e,t){return t.lookupVariable(e.value)}evaluateCallExpression(e,t){let[n,r]=this.evaluateArguments(e.args,t);r.size>0&&n.push(new pe(r));let i=this.evaluate(e.callee,t);if(i.type!==`FunctionValue`)throw Error(`Cannot call something that is not a function: got ${i.type}`);return i.value(n,t)}evaluateSliceExpression(e,t,n){if(!(e instanceof me||e instanceof F))throw Error(`Slice object must be an array or string`);let r=this.evaluate(t.start,n),i=this.evaluate(t.stop,n),a=this.evaluate(t.step,n);if(!(r instanceof P||r instanceof ve))throw Error(`Slice start must be numeric or undefined`);if(!(i instanceof P||i instanceof ve))throw Error(`Slice stop must be numeric or undefined`);if(!(a instanceof P||a instanceof ve))throw Error(`Slice step must be numeric or undefined`);return e instanceof me?new me(N(e.value,r.value,i.value,a.value)):new F(N(Array.from(e.value),r.value,i.value,a.value).join(``))}evaluateMemberExpression(e,t){let n=this.evaluate(e.object,t),r;if(e.computed){if(e.property.type===`SliceExpression`)return this.evaluateSliceExpression(n,e.property,t);r=this.evaluate(e.property,t)}else r=new F(e.property.value);let i;if(n instanceof I){if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.value.get(r.value)??n.builtins.get(r.value)}else if(n instanceof me||n instanceof F)if(r instanceof P)i=n.value.at(r.value),n instanceof F&&(i=new F(n.value.at(r.value)));else if(r instanceof F)i=n.builtins.get(r.value);else throw Error(`Cannot access property with non-string/non-number: got ${r.type}`);else{if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.builtins.get(r.value)}return i instanceof de?i:new ve}evaluateSet(e,t){let n=e.value?this.evaluate(e.value,t):this.evaluateBlock(e.body,t);if(e.assignee.type===`Identifier`){let r=e.assignee.value;t.setVariable(r,n)}else if(e.assignee.type===`MemberExpression`){let r=e.assignee,i=this.evaluate(r.object,t);if(!(i instanceof I))throw Error(`Cannot assign to member of non-object`);if(r.property.type!==`Identifier`)throw Error(`Cannot assign to member with non-identifier property`);i.value.set(r.property.value,n)}else throw Error(`Invalid LHS inside assignment expression: ${JSON.stringify(e.assignee)}`);return new _e}evaluateIf(e,t){let n=this.evaluate(e.test,t);return this.evaluateBlock(n.__bool__().value?e.body:e.alternate,t)}evaluateFor(e,t){let n=new L(t),r,i;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=this.evaluate(t.iterable,n),r=t.test}else i=this.evaluate(e.iterable,n);if(!(i instanceof me))throw Error(`Expected iterable type in for loop: got ${i.type}`);let a=[],o=[];for(let t=0;tt.setVariable(e.loopvar.value,c);else if(e.loopvar.type===`TupleLiteral`){let t=e.loopvar;if(c.type!==`ArrayValue`)throw Error(`Cannot unpack non-iterable type: ${c.type}`);let n=c;if(t.value.length!==n.value.length)throw Error(`Too ${t.value.length>n.value.length?`few`:`many`} items to unpack`);l=e=>{for(let r=0;r0?a[t-1]:new ve],[`nextitem`,t{let r=new L(n);t=t.slice();let i;t.at(-1)?.type===`KeywordArgumentsValue`&&(i=t.pop());for(let n=0;nthis.evaluate(e,t)));case`TupleLiteral`:return new he(e.value.map(e=>this.evaluate(e,t)));case`ObjectLiteral`:{let n=new Map;for(let[r,i]of e.value){let e=this.evaluate(r,t);if(!(e instanceof F))throw Error(`Object keys must be strings: got ${e.type}`);n.set(e.value,this.evaluate(i,t))}return new I(n)}case`Identifier`:return this.evaluateIdentifier(e,t);case`CallExpression`:return this.evaluateCallExpression(e,t);case`MemberExpression`:return this.evaluateMemberExpression(e,t);case`UnaryExpression`:return this.evaluateUnaryExpression(e,t);case`BinaryExpression`:return this.evaluateBinaryExpression(e,t);case`FilterExpression`:return this.evaluateFilterExpression(e,t);case`TestExpression`:return this.evaluateTestExpression(e,t);default:throw SyntaxError(`Unknown node type: ${e.type}`)}}};function be(e){switch(typeof e){case`number`:return new P(e);case`string`:return new F(e);case`boolean`:return new fe(e);case`undefined`:return new ve;case`object`:return e===null?new _e:Array.isArray(e)?new me(e.map(be)):new I(new Map(Object.entries(e).map(([e,t])=>[e,be(t)])));case`function`:return new ge((t,n)=>{let r=e(...t.map(e=>e.value))??null;return be(r)});default:throw Error(`Cannot convert to runtime value: ${e}`)}}function xe(e,t,n){let r=n??0;switch(e.type){case`NullValue`:case`UndefinedValue`:return`null`;case`NumericValue`:case`StringValue`:case`BooleanValue`:return JSON.stringify(e.value);case`ArrayValue`:case`ObjectValue`:{let n=t?` `.repeat(t):``,i=` +`+n.repeat(r),a=i+n;if(e.type===`ArrayValue`){let n=e.value.map(e=>xe(e,t,r+1));return t?`[${a}${n.join(`,${a}`)}${i}]`:`[${n.join(`, `)}]`}else{let n=Array.from(e.value.entries()).map(([e,n])=>{let i=`"${e}": ${xe(n,t,r+1)}`;return t?`${a}${i}`:i});return t?`{${n.join(`,`)}${i}}`:`{${n.join(`, `)}}`}}default:throw Error(`Cannot convert to JSON: ${e.type}`)}}var Se=` +`,Ce=`{%- `,we=` -%}`,Te={MultiplicativeBinaryOperator:2,AdditiveBinaryOperator:1,ComparisonBinaryOperator:0};function Ee(e,t=` `){let n=typeof t==`number`?` `.repeat(t):t,r=Oe(e.body,0,n);return r.replace(/\n$/,``)}function De(...e){return Ce+e.join(` `)+we}function Oe(e,t,n){return e.map(e=>ke(e,t,n)).join(Se)}function ke(e,t,n){let r=n.repeat(t);switch(e.type){case`Program`:return Oe(e.body,t,n);case`If`:return Ae(e,t,n);case`For`:return je(e,t,n);case`Set`:return Me(e,t,n);case`Macro`:return Ne(e,t,n);case`Break`:return r+De(`break`);case`Continue`:return r+De(`continue`);default:return r+`{{- `+R(e)+` -}}`}}function Ae(e,t,n){let r=n.repeat(t),i=[],a=e;for(;a&&(i.push({test:a.test,body:a.body}),a.alternate.length===1&&a.alternate[0].type===`If`);)a=a.alternate[0];let o=r+De(`if`,R(i[0].test))+Se+Oe(i[0].body,t+1,n);for(let e=1;e0&&(o+=Se+r+De(`else`)+Se+Oe(a.alternate,t+1,n)),o+=Se+r+De(`endif`),o}function je(e,t,n){let r=n.repeat(t),i=``;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=`${R(t.iterable)} if ${R(t.test)}`}else i=R(e.iterable);let a=r+De(`for`,R(e.loopvar),`in`,i)+Se+Oe(e.body,t+1,n);return e.defaultBlock.length>0&&(a+=Se+r+De(`else`)+Se+Oe(e.defaultBlock,t+1,n)),a+=Se+r+De(`endfor`),a}function Me(e,t,n){let r=n.repeat(t),i=R(e.assignee),a=e.value?R(e.value):``,o=r+De(`set`,`${i}${e.value?` = `+a:``}`);return e.body.length===0?o:o+Se+Oe(e.body,t+1,n)+Se+r+De(`endset`)}function Ne(e,t,n){let r=n.repeat(t),i=e.args.map(R).join(`, `);return r+De(`macro`,`${e.name.value}(${i})`)+Se+Oe(e.body,t+1,n)+Se+r+De(`endmacro`)}function R(e,t=-1){switch(e.type){case`Identifier`:return e.value;case`NullLiteral`:return`none`;case`NumericLiteral`:case`BooleanLiteral`:return`${e.value}`;case`StringLiteral`:return JSON.stringify(e.value);case`BinaryExpression`:{let n=e,r=Te[n.operator.type]??0,i=R(n.left,r),a=R(n.right,r+1),o=`${i} ${n.operator.value} ${a}`;return rR(e,-1)).join(`, `);return`${R(t.callee,-1)}(${n})`}case`MemberExpression`:{let t=e,n=R(t.object,-1);t.object.type!==`Identifier`&&(n=`(${n})`);let r=R(t.property,-1);return!t.computed&&t.property.type!==`Identifier`&&(r=`(${r})`),t.computed?`${n}[${r}]`:`${n}.${r}`}case`FilterExpression`:{let t=e,n=R(t.operand,1/0);return t.filter.type===`CallExpression`?`${n} | ${R(t.filter,-1)}`:`${n} | ${t.filter.value}`}case`SelectExpression`:{let t=e;return`${R(t.iterable,-1)} | select(${R(t.test,-1)})`}case`TestExpression`:{let t=e;return`${R(t.operand,-1)} is${t.negate?` not`:``} ${t.test.value}`}case`ArrayLiteral`:case`TupleLiteral`:{let t=e.value.map(e=>R(e,-1)),n=e.type===`ArrayLiteral`?`[]`:`()`;return`${n[0]}${t.join(`, `)}${n[1]}`}case`ObjectLiteral`:{let t=Array.from(e.value.entries()).map(([e,t])=>`${R(e,-1)}: ${R(t,-1)}`);return`{ ${t.join(`, `)} }`}case`SliceExpression`:{let t=e,n=t.start?R(t.start,-1):``,r=t.stop?R(t.stop,-1):``,i=t.step?`:${R(t.step,-1)}`:``;return`${n}:${r}${i}`}case`KeywordArgumentExpression`:{let t=e;return`${t.key.value}=${R(t.value,-1)}`}case`If`:{let t=e,n=R(t.test,-1),r=R(t.body[0],0),i=R(t.alternate[0],-1);return`${r} if ${n} else ${i}`}default:throw Error(`Unknown expression type: ${e.type}`)}}var Pe=class{parsed;constructor(e){let t=d(e,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=se(t)}render(e){let t=new L;if(t.set(`false`,!1),t.set(`true`,!0),t.set(`raise_exception`,e=>{throw Error(e)}),t.set(`range`,M),e)for(let[n,r]of Object.entries(e))t.set(n,r);let n=new ye(t),r=n.run(this.parsed);return r.value}format(e){return Ee(this.parsed,e?.indent||` `)}}},"./src/backends/onnx.js":(e,t,n)=>{var r;n.r(t),n.d(t,{Tensor:()=>s.Tensor,createInferenceSession:()=>g,deviceToExecutionProviders:()=>m,isONNXProxy:()=>y,isONNXTensor:()=>_});var i=n( +/*! ../env.js */ +`./src/env.js`),a=n( +/*! onnxruntime-node */ +`?2ce3`),o=n( +/*! onnxruntime-web */ +`onnxruntime-web`),s=n( +/*! onnxruntime-common */ +`onnxruntime-common`);let c=Object.freeze({auto:null,gpu:null,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:{name:`webnn`,deviceType:`cpu`},"webnn-npu":{name:`webnn`,deviceType:`npu`},"webnn-gpu":{name:`webnn`,deviceType:`gpu`},"webnn-cpu":{name:`webnn`,deviceType:`cpu`}}),l=[],u,d,f=Symbol.for(`onnxruntime`);if(f in globalThis)d=globalThis[f];else if(i.apis.IS_NODE_ENV){switch(d=a??(r||=n.t(a,2)),process.platform){case`win32`:l.push(`dml`);break;case`linux`:process.arch===`x64`&&l.push(`cuda`);break;case`darwin`:break}l.push(`cpu`),u=[`cpu`]}else d=o,i.apis.IS_WEBNN_AVAILABLE&&l.push(`webnn-npu`,`webnn-gpu`,`webnn-cpu`,`webnn`),i.apis.IS_WEBGPU_AVAILABLE&&l.push(`webgpu`),l.push(`wasm`),u=[`wasm`];let p=d.InferenceSession;function m(e=null){if(!e)return u;switch(e){case`auto`:return l;case`gpu`:return l.filter(e=>[`webgpu`,`cuda`,`dml`,`webnn-gpu`].includes(e))}if(l.includes(e))return[c[e]??e];throw Error(`Unsupported device: "${e}". Should be one of: ${l.join(`, `)}.`)}let h=null;async function g(e,t,n){h&&await h;let r=p.create(e,t);h??=r;let i=await r;return i.config=n,i}function _(e){return e instanceof d.Tensor}let v=d?.env;v?.wasm&&(!(typeof ServiceWorkerGlobalScope<`u`&&self instanceof ServiceWorkerGlobalScope)&&!v.wasm.wasmPaths&&(v.wasm.wasmPaths=`https://cdn.jsdelivr.net/npm/@huggingface/transformers@${i.env.version}/dist/`),v.wasm.proxy=!1),v?.webgpu&&(v.webgpu.powerPreference=`high-performance`);function y(){return v?.wasm?.proxy}i.env.backends.onnx=v},"./src/base/feature_extraction_utils.js":(e,t,n)=>{n.r(t),n.d(t,{FeatureExtractor:()=>o,validate_audio_inputs:()=>s});var r=n( +/*! ../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),a=n( +/*! ../utils/hub.js */ +`./src/utils/hub.js`);class o extends i.Callable{constructor(e){super(),this.config=e}static async from_pretrained(e,t={}){let n=await(0,a.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t);return new this(n)}}function s(e,t){if(!(e instanceof Float32Array||e instanceof Float64Array))throw Error(`${t} expects input to be a Float32Array or a Float64Array, but got ${e?.constructor?.name??typeof e} instead. If using the feature extractor directly, remember to use \`read_audio(url, sampling_rate)\` to obtain the raw audio data of the file/url.`)}},"./src/base/image_processors_utils.js":(e,t,n)=>{n.r(t),n.d(t,{ImageProcessor:()=>x,center_to_corners_format:()=>f,post_process_instance_segmentation:()=>b,post_process_object_detection:()=>p,post_process_panoptic_segmentation:()=>y,post_process_semantic_segmentation:()=>m});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../utils/maths.js */ +`./src/utils/maths.js`),o=n( +/*! ../utils/image.js */ +`./src/utils/image.js`),s=n( +/*! ../utils/core.js */ +`./src/utils/core.js`),c=n( +/*! ../utils/hub.js */ +`./src/utils/hub.js`),l=n( +/*! ../utils/constants.js */ +`./src/utils/constants.js`);function u(e,t,n=0,r=null){let i=e/t,o=(0,a.bankers_round)(i)*t;return r!==null&&o>r&&(o=Math.floor(i)*t),ot&&i.push(e)}else{let e=(0,a.max)(n.data)[1];if(e===l-1||(o=(0,a.softmax)(n.data),o[e]e*s[(t+1)%2])),d.boxes.push(n),d.classes.push(t),d.scores.push(o[t])}}u.push(d)}return u}function m(e,t=null){let n=e.logits,r=n.dims[0];if(t!==null&&t.length!==r)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let a=[];for(let e=0;eu[n]&&(u[n]=t[n],d[n]=e)}let f=Array(o.dims[0]);for(let e=0;ee!==void 0);a.push({segmentation:l,labels:p})}return a}function h(e,t,n,r){let i=[],o=[],s=[];for(let c=0;cn&&(i.push(u),o.push(p),s.push(d))}return[i,o,s]}function g(e,t,n,r=.5,i=.8){let a=[],o=0,s=0,c=t[n].data;for(let t=0;t=r&&++s;let l=o>0&&s>0;if(l){let e=o/s;l=e>i}return[l,a]}function _(e,t,n,r,a,o=null,s=null){let[c,l]=s??e[0].dims,u=new i.Tensor(`int32`,new Int32Array(c*l),[c,l]),d=[];if(s!==null)for(let t=0;tp[e]&&(f[e]=n,p[e]=i[e])}let m=0,h=u.data;for(let i=0;i200)throw Error(`absolute aspect ratio must be smaller than 200, got ${Math.max(e,t)/Math.min(e,t)}`);let a=Math.round(e/n)*n,o=Math.round(t/n)*n;if(a*o>i){let r=Math.sqrt(e*t/i);a=Math.floor(e/r/n)*n,o=Math.floor(t/r/n)*n}else if(a*oi?c=Math.floor(i*s/r):i>r&&(s=Math.floor(r*c/i)),await e.resize(c,s,{resample:n}))}async crop_margin(e,t=200){let n=e.clone().grayscale(),r=(0,a.min)(n.data)[0],i=(0,a.max)(n.data)[0],o=i-r;if(o===0)return e;let s=t/255,c=n.width,l=n.height,u=0,d=0,f=n.data;for(let e=0;ethis.preprocess(e))),r=(0,i.stack)(n.map(e=>e.pixel_values),0);return{pixel_values:r,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}static async from_pretrained(e,t={}){let n=await(0,c.getModelJSON)(e,l.IMAGE_PROCESSOR_NAME,!0,t);return new this(n)}}},"./src/base/processing_utils.js":(e,t,n)=>{n.r(t),n.d(t,{Processor:()=>o});var r=n( +/*! ../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),a=n( +/*! ../utils/hub.js */ +`./src/utils/hub.js`);class o extends i.Callable{static classes=[`image_processor_class`,`tokenizer_class`,`feature_extractor_class`];static uses_processor_config=!1;static uses_chat_template_file=!1;constructor(e,t,n){super(),this.config=e,this.components=t,this.chat_template=n}get image_processor(){return this.components.image_processor}get tokenizer(){return this.components.tokenizer}get feature_extractor(){return this.components.feature_extractor}apply_chat_template(e,t={}){if(!this.tokenizer)throw Error(`Unable to apply chat template without a tokenizer.`);return this.tokenizer.apply_chat_template(e,{tokenize:!1,chat_template:this.chat_template??void 0,...t})}batch_decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.batch_decode(...e)}decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.decode(...e)}async _call(e,...t){for(let n of[this.image_processor,this.feature_extractor,this.tokenizer])if(n)return n(e,...t);throw Error(`No image processor, feature extractor, or tokenizer found.`)}static async from_pretrained(e,t={}){let[n,i,o]=await Promise.all([this.uses_processor_config?(0,a.getModelJSON)(e,r.PROCESSOR_NAME,!0,t):{},Promise.all(this.classes.filter(e=>e in this).map(async n=>{let r=await this[n].from_pretrained(e,t);return[n.replace(/_class$/,``),r]})).then(Object.fromEntries),this.uses_chat_template_file?(0,a.getModelText)(e,r.CHAT_TEMPLATE_NAME,!0,t):null]);return new this(n,i,o)}}},"./src/configs.js":(e,t,n)=>{n.r(t),n.d(t,{AutoConfig:()=>l,PretrainedConfig:()=>c,getKeyValueShapes:()=>s});var r=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),i=n( +/*! ./utils/hub.js */ +`./src/utils/hub.js`);async function a(e,t){return await(0,i.getModelJSON)(e,`config.json`,!0,t)}function o(e){let t={},n={};switch(e.model_type){case`llava`:case`paligemma`:case`gemma3`:case`florence2`:case`llava_onevision`:case`idefics3`:case`ultravox`:case`smolvlm`:case`gemma3n`:n=o(e.text_config);break;case`moondream1`:n=o(e.phi_config);break;case`musicgen`:n=o(e.decoder);break;case`multi_modality`:n=o(e.language_config);break;case`gpt2`:case`gptj`:case`jais`:case`codegen`:case`gpt_bigcode`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`n_embd`;break;case`gpt_neox`:case`stablelm`:case`opt`:case`falcon`:t.num_heads=`num_attention_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`;break;case`llama`:case`olmo`:case`olmo2`:case`mobilellm`:case`granite`:case`cohere`:case`mistral`:case`starcoder2`:case`qwen2`:case`qwen2_vl`:case`phi`:case`phi3`:case`phi3_v`:case`llava_qwen2`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`,t.num_attention_heads=`num_attention_heads`;break;case`qwen3`:case`gemma`:case`gemma2`:case`gemma3_text`:case`gemma3n_text`:case`glm`:case`helium`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.dim_kv=`head_dim`;break;case`openelm`:t.num_heads=`num_kv_heads`,t.num_layers=`num_transformer_layers`,t.dim_kv=`head_dim`;break;case`gpt_neo`:case`donut-swin`:t.num_heads=`num_heads`,t.num_layers=`num_layers`,t.hidden_size=`hidden_size`;break;case`bloom`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`hidden_size`;break;case`mpt`:t.num_heads=`n_heads`,t.num_layers=`n_layers`,t.hidden_size=`d_model`;break;case`exaone`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_layers`,t.dim_kv=`head_dim`,t.num_attention_heads=`num_attention_heads`;break;case`t5`:case`mt5`:case`longt5`:t.num_decoder_layers=`num_decoder_layers`,t.num_decoder_heads=`num_heads`,t.decoder_dim_kv=`d_kv`,t.num_encoder_layers=`num_layers`,t.num_encoder_heads=`num_heads`,t.encoder_dim_kv=`d_kv`;break;case`bart`:case`mbart`:case`marian`:case`whisper`:case`lite-whisper`:case`m2m_100`:case`blenderbot`:case`blenderbot-small`:case`florence2_language`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`d_model`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`d_model`;break;case`speecht5`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`hidden_size`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`hidden_size`;break;case`trocr`:t.num_encoder_layers=t.num_decoder_layers=`decoder_layers`,t.num_encoder_heads=t.num_decoder_heads=`decoder_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`d_model`;break;case`musicgen_decoder`:t.num_encoder_layers=t.num_decoder_layers=`num_hidden_layers`,t.num_encoder_heads=t.num_decoder_heads=`num_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`moonshine`:t.num_decoder_layers=`decoder_num_hidden_layers`,t.num_decoder_heads=`decoder_num_key_value_heads`,t.num_encoder_layers=`encoder_num_hidden_layers`,t.num_encoder_heads=`encoder_num_key_value_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`vision-encoder-decoder`:let i=o(e.decoder),a=`num_decoder_layers`in i,s=(0,r.pick)(e,[`model_type`,`is_encoder_decoder`]);return a?(s.num_decoder_layers=i.num_decoder_layers,s.num_decoder_heads=i.num_decoder_heads,s.decoder_hidden_size=i.decoder_hidden_size,s.num_encoder_layers=i.num_encoder_layers,s.num_encoder_heads=i.num_encoder_heads,s.encoder_hidden_size=i.encoder_hidden_size):(s.num_layers=i.num_layers,s.num_heads=i.num_heads,s.hidden_size=i.hidden_size),s}let i={...n,...(0,r.pick)(e,[`model_type`,`multi_query`,`is_encoder_decoder`])};for(let n in t)i[n]=e[t[n]];return i}function s(e,{prefix:t=`past_key_values`,batch_size:n=1}={}){let r={},i=e.normalized_config;if(i.is_encoder_decoder&&`num_encoder_heads`in i&&`num_decoder_heads`in i){let e=i.encoder_dim_kv??i.encoder_hidden_size/i.num_encoder_heads,a=i.decoder_dim_kv??i.decoder_hidden_size/i.num_decoder_heads,o=[n,i.num_encoder_heads,0,e],s=[n,i.num_decoder_heads,0,a];for(let e=0;e{n.r(t),n.d(t,{apis:()=>v,env:()=>w});var r=n( +/*! node:fs */ +`?db59`),i=n( +/*! node:path */ +`?383f`),a=n( +/*! node:url */ +`?fa4b`);let o=`3.6.1`,s=typeof window<`u`&&window.document!==void 0,c=typeof self<`u`&&[`DedicatedWorkerGlobalScope`,`ServiceWorkerGlobalScope`,`SharedWorkerGlobalScope`].includes(self.constructor?.name),l=typeof self<`u`&&`caches`in self,u=typeof navigator<`u`&&`gpu`in navigator,d=typeof navigator<`u`&&`ml`in navigator,f=typeof process<`u`,p=f&&process?.release?.name===`node`,m=!T(r),h=!T(i),g=globalThis.Deno!==void 0,_=globalThis.Bun!==void 0,v=Object.freeze({IS_BROWSER_ENV:s,IS_WEBWORKER_ENV:c,IS_WEB_CACHE_AVAILABLE:l,IS_WEBGPU_AVAILABLE:u,IS_WEBNN_AVAILABLE:d,IS_PROCESS_AVAILABLE:f,IS_NODE_ENV:p,IS_FS_AVAILABLE:m,IS_PATH_AVAILABLE:h}),y=m&&h,b=`./`;if(y){let e=Object(import.meta).url;e?b=i.dirname(i.dirname(a.fileURLToPath(e))):typeof __dirname<`u`&&(b=i.dirname(__dirname))}let x=y?i.join(b,`/.cache/`):null,S=`/models/`,C=y?i.join(b,S):S,w={version:o,backends:{onnx:{}},allowRemoteModels:!0,remoteHost:`https://huggingface.co/`,remotePathTemplate:`{model}/resolve/{revision}/`,allowLocalModels:!(s||c),localModelPath:C,useFS:m,useBrowserCache:l&&!g,useFSCache:m,cacheDir:x,useCustomCache:!1,customCache:null};function T(e){return Object.keys(e).length===0}},"./src/generation/configuration_utils.js":(e,t,n)=>{n.r(t),n.d(t,{GenerationConfig:()=>i});var r=n( +/*! ../utils/core.js */ +`./src/utils/core.js`);class i{max_length=20;max_new_tokens=null;min_length=0;min_new_tokens=null;early_stopping=!1;max_time=null;do_sample=!1;num_beams=1;num_beam_groups=1;penalty_alpha=null;use_cache=!0;temperature=1;top_k=50;top_p=1;typical_p=1;epsilon_cutoff=0;eta_cutoff=0;diversity_penalty=0;repetition_penalty=1;encoder_repetition_penalty=1;length_penalty=1;no_repeat_ngram_size=0;bad_words_ids=null;force_words_ids=null;renormalize_logits=!1;constraints=null;forced_bos_token_id=null;forced_eos_token_id=null;remove_invalid_values=!1;exponential_decay_length_penalty=null;suppress_tokens=null;streamer=null;begin_suppress_tokens=null;forced_decoder_ids=null;guidance_scale=null;num_return_sequences=1;output_attentions=!1;output_hidden_states=!1;output_scores=!1;return_dict_in_generate=!1;pad_token_id=null;bos_token_id=null;eos_token_id=null;encoder_no_repeat_ngram_size=0;decoder_start_token_id=null;generation_kwargs={};constructor(e){Object.assign(this,(0,r.pick)(e,Object.getOwnPropertyNames(this)))}}},"./src/generation/logits_process.js":(e,t,n)=>{n.r(t),n.d(t,{ClassifierFreeGuidanceLogitsProcessor:()=>v,ForcedBOSTokenLogitsProcessor:()=>l,ForcedEOSTokenLogitsProcessor:()=>u,LogitsProcessor:()=>o,LogitsProcessorList:()=>c,LogitsWarper:()=>s,MinLengthLogitsProcessor:()=>h,MinNewTokensLengthLogitsProcessor:()=>g,NoBadWordsLogitsProcessor:()=>_,NoRepeatNGramLogitsProcessor:()=>p,RepetitionPenaltyLogitsProcessor:()=>m,SuppressTokensAtBeginLogitsProcessor:()=>d,TemperatureLogitsWarper:()=>y,TopKLogitsWarper:()=>x,TopPLogitsWarper:()=>b,WhisperTimeStampLogitsProcessor:()=>f});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../utils/maths.js */ +`./src/utils/maths.js`);class o extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class s extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class c extends r.Callable{constructor(){super(),this.processors=[]}push(e){this.processors.push(e)}extend(e){this.processors.push(...e)}_call(e,t){let n=t;for(let t of this.processors)n=t(e,n);return n}[Symbol.iterator](){return this.processors.values()}}class l extends o{constructor(e){super(),this.bos_token_id=e}_call(e,t){for(let n=0;n=1&&i[i.length-1]>=this.timestamp_begin,s=i.length<2||i[i.length-2]>=this.timestamp_begin;if(o&&(s?r.subarray(this.timestamp_begin).fill(-1/0):r.subarray(0,this.eos_token_id).fill(-1/0)),e[n].length===this.begin_index&&this.max_initial_timestamp_index!==null){let e=this.timestamp_begin+this.max_initial_timestamp_index;r.subarray(e+1).fill(-1/0)}let c=(0,a.log_softmax)(r),l=Math.log(c.subarray(this.timestamp_begin).map(Math.exp).reduce((e,t)=>e+t)),u=(0,a.max)(c.subarray(0,this.timestamp_begin))[0];l>u&&r.subarray(0,this.timestamp_begin).fill(-1/0)}return t}}class p extends o{constructor(e){super(),this.no_repeat_ngram_size=e}getNgrams(e){let t=e.length,n=[];for(let r=0;r1 to use the classifier free guidance processor, got guidance scale ${e}.`);this.guidance_scale=e}_call(e,t){if(t.dims[0]!==2*e.length)throw Error(`Logits should have twice the batch size of the input ids, the first half of batches corresponding to the conditional inputs, and the second half of batches corresponding to the unconditional inputs. Got batch size ${t.dims[0]} for the logits and ${e.length} for the input ids.`);let n=e.length,r=t.slice([0,n],null),i=t.slice([n,t.dims[0]],null);for(let e=0;e1)throw Error(`\`top_p\` must be a float > 0 and < 1, but is ${e}`);if(!Number.isInteger(n)||n<1)throw Error(`\`min_tokens_to_keep\` must be a positive integer, but is ${n}`);this.top_p=e,this.filter_value=t,this.min_tokens_to_keep=n}}class x extends s{constructor(e,{filter_value:t=-1/0,min_tokens_to_keep:n=1}={}){if(super(),!Number.isInteger(e)||e<0)throw Error(`\`top_k\` must be a positive integer, but is ${e}`);this.top_k=Math.max(e,n),this.filter_value=t}}},"./src/generation/logits_sampler.js":(e,t,n)=>{n.r(t),n.d(t,{LogitsSampler:()=>s});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../utils/maths.js */ +`./src/utils/maths.js`),o=n( +/*! ../generation/configuration_utils.js */ +`./src/generation/configuration_utils.js`);class s extends r.Callable{constructor(e){super(),this.generation_config=e}async _call(e){return this.sample(e)}async sample(e){throw Error(`sample should be implemented in subclasses.`)}getLogits(e,t){let n=e.dims.at(-1),r=e.data;if(t===-1)r=r.slice(-n);else{let e=t*n;r=r.slice(e,e+n)}return r}randomSelect(e){let t=0;for(let n=0;n1)return new u(e);if(e.num_return_sequences>1)throw Error(`num_return_sequences has to be 1 when doing greedy search, but is ${e.num_return_sequences}.`);return new c(e)}}class c extends s{async sample(e){let t=(0,a.max)(e.data)[1];return[[BigInt(t),0]]}}class l extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},()=>{let e=this.randomSelect(o);return[r.data[e],Math.log(o[e])]})}}class u extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},(e,t)=>[r.data[t],Math.log(o[t])])}}},"./src/generation/stopping_criteria.js":(e,t,n)=>{n.r(t),n.d(t,{EosTokenCriteria:()=>s,InterruptableStoppingCriteria:()=>c,MaxLengthCriteria:()=>o,StoppingCriteria:()=>i,StoppingCriteriaList:()=>a});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`);class i extends r.Callable{_call(e,t){throw Error(`StoppingCriteria needs to be subclassed`)}}class a extends r.Callable{constructor(){super(),this.criteria=[]}push(e){this.criteria.push(e)}extend(e){e instanceof a?e=e.criteria:e instanceof i&&(e=[e]),this.criteria.push(...e)}_call(e,t){let n=Array(e.length).fill(!1);for(let r of this.criteria){let i=r(e,t);for(let e=0;ee.length>=this.max_length)}}class s extends i{constructor(e){super(),Array.isArray(e)||(e=[e]),this.eos_token_id=e}_call(e,t){return e.map(e=>{let t=e.at(-1);return this.eos_token_id.some(e=>t==e)})}}class c extends i{constructor(){super(),this.interrupted=!1}interrupt(){this.interrupted=!0}reset(){this.interrupted=!1}_call(e,t){return Array(e.length).fill(this.interrupted)}}},"./src/generation/streamers.js":(e,t,n)=>{n.r(t),n.d(t,{BaseStreamer:()=>o,TextStreamer:()=>c,WhisperTextStreamer:()=>l});var r=n( +/*! ../utils/core.js */ +`./src/utils/core.js`),i=n( +/*! ../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../env.js */ +`./src/env.js`);class o{put(e){throw Error(`Not implemented`)}end(){throw Error(`Not implemented`)}}let s=a.apis.IS_PROCESS_AVAILABLE?e=>process.stdout.write(e):e=>console.log(e);class c extends o{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,skip_special_tokens:i=!0,decode_kwargs:a={},...o}={}){super(),this.tokenizer=e,this.skip_prompt=t,this.callback_function=n??s,this.token_callback_function=r,this.decode_kwargs={skip_special_tokens:i,...a,...o},this.token_cache=[],this.print_len=0,this.next_tokens_are_prompt=!0}put(e){if(e.length>1)throw Error(`TextStreamer only supports batch size of 1`);let t=this.next_tokens_are_prompt;if(t&&(this.next_tokens_are_prompt=!1,this.skip_prompt))return;let n=e[0];this.token_callback_function?.(n),this.token_cache=(0,r.mergeArrays)(this.token_cache,n);let a=this.tokenizer.decode(this.token_cache,this.decode_kwargs),o;t||a.endsWith(` +`)?(o=a.slice(this.print_len),this.token_cache=[],this.print_len=0):a.length>0&&(0,i.is_chinese_char)(a.charCodeAt(a.length-1))?(o=a.slice(this.print_len),this.print_len+=o.length):(o=a.slice(this.print_len,a.lastIndexOf(` `)+1),this.print_len+=o.length),this.on_finalized_text(o,!1)}end(){let e;if(this.token_cache.length>0){let t=this.tokenizer.decode(this.token_cache,this.decode_kwargs);e=t.slice(this.print_len),this.token_cache=[],this.print_len=0}else e=``;this.next_tokens_are_prompt=!0,this.on_finalized_text(e,!0)}on_finalized_text(e,t){e.length>0&&this.callback_function?.(e),t&&this.callback_function===s&&a.apis.IS_PROCESS_AVAILABLE&&this.callback_function?.(` +`)}}class l extends c{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,on_chunk_start:i=null,on_chunk_end:a=null,on_finalize:o=null,time_precision:s=.02,skip_special_tokens:c=!0,decode_kwargs:l={}}={}){super(e,{skip_prompt:t,skip_special_tokens:c,callback_function:n,token_callback_function:r,decode_kwargs:l}),this.timestamp_begin=e.timestamp_begin,this.on_chunk_start=i,this.on_chunk_end=a,this.on_finalize=o,this.time_precision=s,this.waiting_for_timestamp=!1}put(e){if(e.length>1)throw Error(`WhisperTextStreamer only supports batch size of 1`);let t=e[0];if(t.length===1){let e=Number(t[0])-this.timestamp_begin;if(e>=0){let n=e*this.time_precision;this.waiting_for_timestamp?this.on_chunk_end?.(n):this.on_chunk_start?.(n),this.waiting_for_timestamp=!this.waiting_for_timestamp,this.token_callback_function?.(t);return}}return super.put(e)}end(){super.end(),this.on_finalize?.()}}},"./src/models.js":(e,t,n)=>{n.r(t),n.d(t,{ASTForAudioClassification:()=>jn,ASTModel:()=>An,ASTPreTrainedModel:()=>kn,AlbertForMaskedLM:()=>Ut,AlbertForQuestionAnswering:()=>Ht,AlbertForSequenceClassification:()=>Vt,AlbertModel:()=>Bt,AlbertPreTrainedModel:()=>zt,AutoModel:()=>lu,AutoModelForAudioClassification:()=>Ou,AutoModelForAudioFrameClassification:()=>Au,AutoModelForAudioTextToText:()=>zu,AutoModelForCTC:()=>Du,AutoModelForCausalLM:()=>gu,AutoModelForDepthEstimation:()=>Pu,AutoModelForDocumentQuestionAnswering:()=>ju,AutoModelForImageClassification:()=>bu,AutoModelForImageFeatureExtraction:()=>Lu,AutoModelForImageMatting:()=>Mu,AutoModelForImageSegmentation:()=>xu,AutoModelForImageTextToText:()=>Ru,AutoModelForImageToImage:()=>Nu,AutoModelForMaskGeneration:()=>Eu,AutoModelForMaskedLM:()=>_u,AutoModelForNormalEstimation:()=>Fu,AutoModelForObjectDetection:()=>wu,AutoModelForPoseEstimation:()=>Iu,AutoModelForQuestionAnswering:()=>vu,AutoModelForSemanticSegmentation:()=>Su,AutoModelForSeq2SeqLM:()=>fu,AutoModelForSequenceClassification:()=>uu,AutoModelForSpeechSeq2Seq:()=>pu,AutoModelForTextToSpectrogram:()=>mu,AutoModelForTextToWaveform:()=>hu,AutoModelForTokenClassification:()=>du,AutoModelForUniversalSegmentation:()=>Cu,AutoModelForVision2Seq:()=>yu,AutoModelForXVector:()=>ku,AutoModelForZeroShotObjectDetection:()=>Tu,BartForConditionalGeneration:()=>tn,BartForSequenceClassification:()=>nn,BartModel:()=>en,BartPretrainedModel:()=>$t,BaseModelOutput:()=>me,BeitForImageClassification:()=>Da,BeitModel:()=>Ea,BeitPreTrainedModel:()=>Ta,BertForMaskedLM:()=>_e,BertForQuestionAnswering:()=>ye,BertForSequenceClassification:()=>ve,BertForTokenClassification:()=>L,BertModel:()=>ge,BertPreTrainedModel:()=>he,BlenderbotForConditionalGeneration:()=>un,BlenderbotModel:()=>ln,BlenderbotPreTrainedModel:()=>cn,BlenderbotSmallForConditionalGeneration:()=>H,BlenderbotSmallModel:()=>fn,BlenderbotSmallPreTrainedModel:()=>dn,BloomForCausalLM:()=>Li,BloomModel:()=>Ii,BloomPreTrainedModel:()=>Fi,CLIPModel:()=>nr,CLIPPreTrainedModel:()=>tr,CLIPSegForImageSegmentation:()=>mr,CLIPSegModel:()=>pr,CLIPSegPreTrainedModel:()=>X,CLIPTextModel:()=>rr,CLIPTextModelWithProjection:()=>ir,CLIPVisionModel:()=>K,CLIPVisionModelWithProjection:()=>ar,CamembertForMaskedLM:()=>Xe,CamembertForQuestionAnswering:()=>$e,CamembertForSequenceClassification:()=>Ze,CamembertForTokenClassification:()=>Qe,CamembertModel:()=>Ye,CamembertPreTrainedModel:()=>Je,CausalLMOutput:()=>Gu,CausalLMOutputWithPast:()=>Ku,ChineseCLIPModel:()=>lr,ChineseCLIPPreTrainedModel:()=>cr,ClapAudioModelWithProjection:()=>mc,ClapModel:()=>fc,ClapPreTrainedModel:()=>dc,ClapTextModelWithProjection:()=>pc,CodeGenForCausalLM:()=>Fr,CodeGenModel:()=>Pr,CodeGenPreTrainedModel:()=>Nr,CohereForCausalLM:()=>ci,CohereModel:()=>si,CoherePreTrainedModel:()=>oi,ConvBertForMaskedLM:()=>Be,ConvBertForQuestionAnswering:()=>He,ConvBertForSequenceClassification:()=>z,ConvBertForTokenClassification:()=>Ve,ConvBertModel:()=>ze,ConvBertPreTrainedModel:()=>Re,ConvNextForImageClassification:()=>Vo,ConvNextModel:()=>Bo,ConvNextPreTrainedModel:()=>zo,ConvNextV2ForImageClassification:()=>Wo,ConvNextV2Model:()=>Uo,ConvNextV2PreTrainedModel:()=>Ho,DFineForObjectDetection:()=>Ja,DFineModel:()=>qa,DFinePreTrainedModel:()=>Ka,DPTForDepthEstimation:()=>vo,DPTModel:()=>_o,DPTPreTrainedModel:()=>go,DacDecoderModel:()=>yl,DacDecoderOutput:()=>gl,DacEncoderModel:()=>vl,DacEncoderOutput:()=>hl,DacModel:()=>_l,DacPreTrainedModel:()=>ml,DebertaForMaskedLM:()=>nt,DebertaForQuestionAnswering:()=>at,DebertaForSequenceClassification:()=>rt,DebertaForTokenClassification:()=>it,DebertaModel:()=>tt,DebertaPreTrainedModel:()=>et,DebertaV2ForMaskedLM:()=>ct,DebertaV2ForQuestionAnswering:()=>dt,DebertaV2ForSequenceClassification:()=>lt,DebertaV2ForTokenClassification:()=>ut,DebertaV2Model:()=>st,DebertaV2PreTrainedModel:()=>ot,DecisionTransformerModel:()=>Jc,DecisionTransformerPreTrainedModel:()=>qc,DeiTForImageClassification:()=>to,DeiTModel:()=>eo,DeiTPreTrainedModel:()=>$a,DepthAnythingForDepthEstimation:()=>bo,DepthAnythingPreTrainedModel:()=>yo,DepthProForDepthEstimation:()=>Eo,DepthProPreTrainedModel:()=>To,DetrForObjectDetection:()=>Aa,DetrForSegmentation:()=>ja,DetrModel:()=>ka,DetrObjectDetectionOutput:()=>Ma,DetrPreTrainedModel:()=>Oa,DetrSegmentationOutput:()=>Na,Dinov2ForImageClassification:()=>qo,Dinov2Model:()=>Ko,Dinov2PreTrainedModel:()=>Go,Dinov2WithRegistersForImageClassification:()=>Xo,Dinov2WithRegistersModel:()=>Yo,Dinov2WithRegistersPreTrainedModel:()=>Jo,DistilBertForMaskedLM:()=>_t,DistilBertForQuestionAnswering:()=>gt,DistilBertForSequenceClassification:()=>mt,DistilBertForTokenClassification:()=>ht,DistilBertModel:()=>pt,DistilBertPreTrainedModel:()=>ft,DonutSwinModel:()=>Ro,DonutSwinPreTrainedModel:()=>Lo,EfficientNetForImageClassification:()=>Ec,EfficientNetModel:()=>Tc,EfficientNetPreTrainedModel:()=>wc,ElectraForMaskedLM:()=>We,ElectraForQuestionAnswering:()=>qe,ElectraForSequenceClassification:()=>Ge,ElectraForTokenClassification:()=>Ke,ElectraModel:()=>Ue,ElectraPreTrainedModel:()=>B,EsmForMaskedLM:()=>bt,EsmForSequenceClassification:()=>xt,EsmForTokenClassification:()=>St,EsmModel:()=>yt,EsmPreTrainedModel:()=>vt,ExaoneForCausalLM:()=>qr,ExaoneModel:()=>Kr,ExaonePreTrainedModel:()=>Gr,FalconForCausalLM:()=>uc,FalconModel:()=>lc,FalconPreTrainedModel:()=>cc,FastViTForImageClassification:()=>ua,FastViTModel:()=>la,FastViTPreTrainedModel:()=>ca,Florence2ForConditionalGeneration:()=>Gn,Florence2PreTrainedModel:()=>Wn,GLPNForDepthEstimation:()=>Io,GLPNModel:()=>Fo,GLPNPreTrainedModel:()=>Po,GPT2LMHeadModel:()=>_r,GPT2Model:()=>gr,GPT2PreTrainedModel:()=>hr,GPTBigCodeForCausalLM:()=>Mr,GPTBigCodeModel:()=>jr,GPTBigCodePreTrainedModel:()=>Ar,GPTJForCausalLM:()=>kr,GPTJModel:()=>Or,GPTJPreTrainedModel:()=>Dr,GPTNeoForCausalLM:()=>Cr,GPTNeoModel:()=>Sr,GPTNeoPreTrainedModel:()=>xr,GPTNeoXForCausalLM:()=>Er,GPTNeoXModel:()=>Tr,GPTNeoXPreTrainedModel:()=>wr,Gemma2ForCausalLM:()=>mi,Gemma2Model:()=>pi,Gemma2PreTrainedModel:()=>fi,Gemma3ForCausalLM:()=>_i,Gemma3Model:()=>gi,Gemma3PreTrainedModel:()=>hi,Gemma3nForConditionalGeneration:()=>Xn,Gemma3nPreTrainedModel:()=>Yn,GemmaForCausalLM:()=>di,GemmaModel:()=>ui,GemmaPreTrainedModel:()=>li,GlmForCausalLM:()=>Wr,GlmModel:()=>Ur,GlmPreTrainedModel:()=>Hr,GraniteForCausalLM:()=>ai,GraniteModel:()=>ii,GranitePreTrainedModel:()=>ri,GroundingDinoForObjectDetection:()=>Qo,GroundingDinoPreTrainedModel:()=>Zo,GroupViTModel:()=>sa,GroupViTPreTrainedModel:()=>oa,HeliumForCausalLM:()=>Vr,HeliumModel:()=>Br,HeliumPreTrainedModel:()=>zr,HieraForImageClassification:()=>io,HieraModel:()=>ro,HieraPreTrainedModel:()=>no,HubertForCTC:()=>zs,HubertForSequenceClassification:()=>Bs,HubertModel:()=>Rs,HubertPreTrainedModel:()=>Ls,IJepaForImageClassification:()=>Yi,IJepaModel:()=>Ji,IJepaPreTrainedModel:()=>qi,Idefics3ForConditionalGeneration:()=>Qn,Idefics3PreTrainedModel:()=>Zn,ImageMattingOutput:()=>qu,JAISLMHeadModel:()=>br,JAISModel:()=>yr,JAISPreTrainedModel:()=>vr,JinaCLIPModel:()=>ur,JinaCLIPPreTrainedModel:()=>Y,JinaCLIPTextModel:()=>dr,JinaCLIPVisionModel:()=>fr,LiteWhisperForConditionalGeneration:()=>Fn,LlamaForCausalLM:()=>Rr,LlamaModel:()=>Lr,LlamaPreTrainedModel:()=>Ir,LlavaForConditionalGeneration:()=>Vn,LlavaOnevisionForConditionalGeneration:()=>Hn,LlavaPreTrainedModel:()=>Bn,LlavaQwen2ForCausalLM:()=>Jn,LongT5ForConditionalGeneration:()=>Yt,LongT5Model:()=>Jt,LongT5PreTrainedModel:()=>qt,M2M100ForConditionalGeneration:()=>ps,M2M100Model:()=>fs,M2M100PreTrainedModel:()=>ds,MBartForCausalLM:()=>sn,MBartForConditionalGeneration:()=>an,MBartForSequenceClassification:()=>on,MBartModel:()=>V,MBartPreTrainedModel:()=>rn,MPNetForMaskedLM:()=>At,MPNetForQuestionAnswering:()=>Nt,MPNetForSequenceClassification:()=>jt,MPNetForTokenClassification:()=>Mt,MPNetModel:()=>kt,MPNetPreTrainedModel:()=>Ot,MT5ForConditionalGeneration:()=>Qt,MT5Model:()=>Zt,MT5PreTrainedModel:()=>Xt,MarianMTModel:()=>us,MarianModel:()=>ls,MarianPreTrainedModel:()=>cs,MaskFormerForInstanceSegmentation:()=>No,MaskFormerModel:()=>Mo,MaskFormerPreTrainedModel:()=>jo,MaskedLMOutput:()=>Uu,Metric3DForDepthEstimation:()=>Oo,Metric3DPreTrainedModel:()=>Do,Metric3Dv2ForDepthEstimation:()=>Ao,Metric3Dv2PreTrainedModel:()=>ko,MgpstrForSceneTextRecognition:()=>$c,MgpstrModelOutput:()=>Zc,MgpstrPreTrainedModel:()=>Qc,MimiDecoderModel:()=>pl,MimiDecoderOutput:()=>ul,MimiEncoderModel:()=>fl,MimiEncoderOutput:()=>ll,MimiModel:()=>dl,MimiPreTrainedModel:()=>cl,MistralForCausalLM:()=>ic,MistralModel:()=>rc,MistralPreTrainedModel:()=>nc,MobileBertForMaskedLM:()=>Tt,MobileBertForQuestionAnswering:()=>Dt,MobileBertForSequenceClassification:()=>Et,MobileBertModel:()=>wt,MobileBertPreTrainedModel:()=>Ct,MobileLLMForCausalLM:()=>Xr,MobileLLMModel:()=>Yr,MobileLLMPreTrainedModel:()=>Jr,MobileNetV1ForImageClassification:()=>Nc,MobileNetV1ForSemanticSegmentation:()=>Pc,MobileNetV1Model:()=>Mc,MobileNetV1PreTrainedModel:()=>jc,MobileNetV2ForImageClassification:()=>Lc,MobileNetV2ForSemanticSegmentation:()=>Rc,MobileNetV2Model:()=>Ic,MobileNetV2PreTrainedModel:()=>Fc,MobileNetV3ForImageClassification:()=>Vc,MobileNetV3ForSemanticSegmentation:()=>Hc,MobileNetV3Model:()=>Bc,MobileNetV3PreTrainedModel:()=>zc,MobileNetV4ForImageClassification:()=>Gc,MobileNetV4ForSemanticSegmentation:()=>Kc,MobileNetV4Model:()=>Wc,MobileNetV4PreTrainedModel:()=>Uc,MobileViTForImageClassification:()=>ha,MobileViTModel:()=>ma,MobileViTPreTrainedModel:()=>pa,MobileViTV2ForImageClassification:()=>va,MobileViTV2Model:()=>_a,MobileViTV2PreTrainedModel:()=>ga,ModelOutput:()=>pe,ModernBertForMaskedLM:()=>Oe,ModernBertForSequenceClassification:()=>ke,ModernBertForTokenClassification:()=>Ae,ModernBertModel:()=>De,ModernBertPreTrainedModel:()=>Ee,Moondream1ForConditionalGeneration:()=>Un,MoonshineForConditionalGeneration:()=>Rn,MoonshineModel:()=>Ln,MoonshinePreTrainedModel:()=>In,MptForCausalLM:()=>Bi,MptModel:()=>zi,MptPreTrainedModel:()=>Ri,MultiModalityCausalLM:()=>Xc,MultiModalityPreTrainedModel:()=>Yc,MusicgenForCausalLM:()=>kc,MusicgenForConditionalGeneration:()=>Ac,MusicgenModel:()=>Oc,MusicgenPreTrainedModel:()=>Dc,NeoBertForMaskedLM:()=>Se,NeoBertForQuestionAnswering:()=>Te,NeoBertForSequenceClassification:()=>Ce,NeoBertForTokenClassification:()=>we,NeoBertModel:()=>xe,NeoBertPreTrainedModel:()=>be,NomicBertModel:()=>Me,NomicBertPreTrainedModel:()=>je,OPTForCausalLM:()=>Ui,OPTModel:()=>Hi,OPTPreTrainedModel:()=>Vi,Olmo2ForCausalLM:()=>ni,Olmo2Model:()=>ti,Olmo2PreTrainedModel:()=>ei,OlmoForCausalLM:()=>$r,OlmoModel:()=>Qr,OlmoPreTrainedModel:()=>Zr,OpenELMForCausalLM:()=>bi,OpenELMModel:()=>yi,OpenELMPreTrainedModel:()=>vi,OwlViTForObjectDetection:()=>xa,OwlViTModel:()=>ba,OwlViTPreTrainedModel:()=>ya,Owlv2ForObjectDetection:()=>wa,Owlv2Model:()=>Ca,Owlv2PreTrainedModel:()=>Sa,PaliGemmaForConditionalGeneration:()=>qn,PaliGemmaPreTrainedModel:()=>Kn,PatchTSMixerForPrediction:()=>al,PatchTSMixerModel:()=>il,PatchTSMixerPreTrainedModel:()=>rl,PatchTSTForPrediction:()=>nl,PatchTSTModel:()=>tl,PatchTSTPreTrainedModel:()=>el,Phi3ForCausalLM:()=>Pi,Phi3Model:()=>Ni,Phi3PreTrainedModel:()=>Mi,Phi3VForCausalLM:()=>G,Phi3VPreTrainedModel:()=>er,PhiForCausalLM:()=>ji,PhiModel:()=>Ai,PhiPreTrainedModel:()=>ki,PreTrainedModel:()=>I,PretrainedMixin:()=>Z,PvtForImageClassification:()=>ea,PvtModel:()=>$i,PvtPreTrainedModel:()=>Qi,PyAnnoteForAudioFrameClassification:()=>xs,PyAnnoteModel:()=>bs,PyAnnotePreTrainedModel:()=>ys,QuestionAnsweringModelOutput:()=>Wu,Qwen2ForCausalLM:()=>Ci,Qwen2Model:()=>Si,Qwen2PreTrainedModel:()=>xi,Qwen2VLForConditionalGeneration:()=>Oi,Qwen2VLPreTrainedModel:()=>Di,Qwen3ForCausalLM:()=>Ei,Qwen3Model:()=>Ti,Qwen3PreTrainedModel:()=>wi,RFDetrForObjectDetection:()=>Wa,RFDetrModel:()=>Ua,RFDetrObjectDetectionOutput:()=>Ga,RFDetrPreTrainedModel:()=>Ha,RTDetrForObjectDetection:()=>Ia,RTDetrModel:()=>Fa,RTDetrObjectDetectionOutput:()=>La,RTDetrPreTrainedModel:()=>Pa,RTDetrV2ForObjectDetection:()=>Ba,RTDetrV2Model:()=>za,RTDetrV2ObjectDetectionOutput:()=>Va,RTDetrV2PreTrainedModel:()=>Ra,ResNetForImageClassification:()=>so,ResNetModel:()=>oo,ResNetPreTrainedModel:()=>ao,RoFormerForMaskedLM:()=>Pe,RoFormerForQuestionAnswering:()=>Le,RoFormerForSequenceClassification:()=>Fe,RoFormerForTokenClassification:()=>Ie,RoFormerModel:()=>R,RoFormerPreTrainedModel:()=>Ne,RobertaForMaskedLM:()=>hn,RobertaForQuestionAnswering:()=>_n,RobertaForSequenceClassification:()=>U,RobertaForTokenClassification:()=>gn,RobertaModel:()=>mn,RobertaPreTrainedModel:()=>pn,SamImageSegmentationOutput:()=>ss,SamModel:()=>os,SamPreTrainedModel:()=>rs,SapiensForDepthEstimation:()=>Co,SapiensForNormalEstimation:()=>wo,SapiensForSemanticSegmentation:()=>So,SapiensPreTrainedModel:()=>xo,SegformerForImageClassification:()=>yc,SegformerForSemanticSegmentation:()=>bc,SegformerModel:()=>vc,SegformerPreTrainedModel:()=>_c,Seq2SeqLMOutput:()=>Bu,SequenceClassifierOutput:()=>Q,SiglipModel:()=>J,SiglipPreTrainedModel:()=>q,SiglipTextModel:()=>or,SiglipVisionModel:()=>sr,SmolVLMForConditionalGeneration:()=>$n,SnacDecoderModel:()=>Cl,SnacEncoderModel:()=>Sl,SnacModel:()=>xl,SnacPreTrainedModel:()=>bl,SpeechT5ForSpeechToText:()=>Zs,SpeechT5ForTextToSpeech:()=>Qs,SpeechT5HifiGan:()=>$s,SpeechT5Model:()=>Xs,SpeechT5PreTrainedModel:()=>Ys,SqueezeBertForMaskedLM:()=>It,SqueezeBertForQuestionAnswering:()=>Rt,SqueezeBertForSequenceClassification:()=>Lt,SqueezeBertModel:()=>Ft,SqueezeBertPreTrainedModel:()=>Pt,StableLmForCausalLM:()=>Cc,StableLmModel:()=>Sc,StableLmPreTrainedModel:()=>xc,Starcoder2ForCausalLM:()=>sc,Starcoder2Model:()=>oc,Starcoder2PreTrainedModel:()=>ac,StyleTextToSpeech2Model:()=>Js,StyleTextToSpeech2PreTrainedModel:()=>qs,Swin2SRForImageSuperResolution:()=>ho,Swin2SRModel:()=>mo,Swin2SRPreTrainedModel:()=>po,SwinForImageClassification:()=>uo,SwinForSemanticSegmentation:()=>fo,SwinModel:()=>lo,SwinPreTrainedModel:()=>co,T5ForConditionalGeneration:()=>Kt,T5Model:()=>Gt,T5PreTrainedModel:()=>Wt,TableTransformerForObjectDetection:()=>Za,TableTransformerModel:()=>Xa,TableTransformerObjectDetectionOutput:()=>Qa,TableTransformerPreTrainedModel:()=>Ya,TokenClassifierOutput:()=>Hu,TrOCRForCausalLM:()=>tc,TrOCRPreTrainedModel:()=>ec,UltravoxModel:()=>sl,UltravoxPreTrainedModel:()=>ol,UniSpeechForCTC:()=>Es,UniSpeechForSequenceClassification:()=>Ds,UniSpeechModel:()=>Ts,UniSpeechPreTrainedModel:()=>ws,UniSpeechSatForAudioFrameClassification:()=>Ms,UniSpeechSatForCTC:()=>As,UniSpeechSatForSequenceClassification:()=>js,UniSpeechSatModel:()=>ks,UniSpeechSatPreTrainedModel:()=>Os,ViTForImageClassification:()=>Ki,ViTMAEModel:()=>na,ViTMAEPreTrainedModel:()=>ta,ViTMSNForImageClassification:()=>aa,ViTMSNModel:()=>ia,ViTMSNPreTrainedModel:()=>ra,ViTModel:()=>Gi,ViTPreTrainedModel:()=>Wi,VisionEncoderDecoderModel:()=>zn,VitMatteForImageMatting:()=>fa,VitMattePreTrainedModel:()=>da,VitPoseForPoseEstimation:()=>Zi,VitPosePreTrainedModel:()=>Xi,VitsModel:()=>gc,VitsModelOutput:()=>Ju,VitsPreTrainedModel:()=>hc,Wav2Vec2BertForCTC:()=>Fs,Wav2Vec2BertForSequenceClassification:()=>Is,Wav2Vec2BertModel:()=>Ps,Wav2Vec2BertPreTrainedModel:()=>Ns,Wav2Vec2ForAudioFrameClassification:()=>vs,Wav2Vec2ForCTC:()=>gs,Wav2Vec2ForSequenceClassification:()=>_s,Wav2Vec2Model:()=>hs,Wav2Vec2PreTrainedModel:()=>ms,WavLMForAudioFrameClassification:()=>Ks,WavLMForCTC:()=>Us,WavLMForSequenceClassification:()=>Ws,WavLMForXVector:()=>Gs,WavLMModel:()=>Hs,WavLMPreTrainedModel:()=>Vs,WeSpeakerResNetModel:()=>Cs,WeSpeakerResNetPreTrainedModel:()=>Ss,WhisperForConditionalGeneration:()=>Pn,WhisperModel:()=>Nn,WhisperPreTrainedModel:()=>Mn,XLMForQuestionAnswering:()=>Sn,XLMForSequenceClassification:()=>bn,XLMForTokenClassification:()=>xn,XLMModel:()=>yn,XLMPreTrainedModel:()=>vn,XLMRobertaForMaskedLM:()=>Tn,XLMRobertaForQuestionAnswering:()=>On,XLMRobertaForSequenceClassification:()=>En,XLMRobertaForTokenClassification:()=>Dn,XLMRobertaModel:()=>wn,XLMRobertaPreTrainedModel:()=>Cn,XLMWithLMHeadModel:()=>W,XVectorOutput:()=>Vu,YolosForObjectDetection:()=>ts,YolosModel:()=>es,YolosObjectDetectionOutput:()=>ns,YolosPreTrainedModel:()=>$o});var r=n( +/*! ./configs.js */ +`./src/configs.js`),i=n( +/*! ./backends/onnx.js */ +`./src/backends/onnx.js`),a=n( +/*! ./utils/dtypes.js */ +`./src/utils/dtypes.js`),o=n( +/*! ./utils/generic.js */ +`./src/utils/generic.js`),s=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),c=n( +/*! ./utils/hub.js */ +`./src/utils/hub.js`),l=n( +/*! ./utils/constants.js */ +`./src/utils/constants.js`),u=n( +/*! ./generation/logits_process.js */ +`./src/generation/logits_process.js`),d=n( +/*! ./generation/configuration_utils.js */ +`./src/generation/configuration_utils.js`),f=n( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),p=n( +/*! ./utils/image.js */ +`./src/utils/image.js`),m=n( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),h=n( +/*! ./generation/stopping_criteria.js */ +`./src/generation/stopping_criteria.js`),g=n( +/*! ./generation/logits_sampler.js */ +`./src/generation/logits_sampler.js`),_=n( +/*! ./env.js */ +`./src/env.js`),v=n( +/*! ./models/whisper/generation_whisper.js */ +`./src/models/whisper/generation_whisper.js`),y=n( +/*! ./models/whisper/common_whisper.js */ +`./src/models/whisper/common_whisper.js`);let b={EncoderOnly:0,EncoderDecoder:1,Seq2Seq:2,Vision2Seq:3,DecoderOnly:4,MaskGeneration:5,ImageTextToText:6,Musicgen:7,MultiModality:8,Phi3V:9,AudioTextToText:10,AutoEncoder:11,ImageAudioTextToText:12},x=new Map,S=new Map,C=new Map;async function w(e,t,n){let o=n.config?.[`transformers.js_config`]??{},s=n.device??o.device;s&&typeof s!=`string`&&(s.hasOwnProperty(t)?s=s[t]:(console.warn(`device not specified for "${t}". Using the default device.`),s=null));let l=s??(_.apis.IS_NODE_ENV?`cpu`:`wasm`),u=(0,i.deviceToExecutionProviders)(l),d=o.device_config??{};d.hasOwnProperty(l)&&(o={...o,...d[l]});let f=n.dtype??o.dtype;if(typeof f!=`string`&&(f&&f.hasOwnProperty(t)?f=f[t]:(f=a.DEFAULT_DEVICE_DTYPE_MAPPING[l]??a.DATA_TYPES.fp32,console.warn(`dtype not specified for "${t}". Using the default dtype (${f}) for this device (${l}).`))),f===a.DATA_TYPES.auto){let e=o.dtype;typeof e!=`string`&&(e=e?.[t]),f=e&&e!==a.DATA_TYPES.auto&&a.DATA_TYPES.hasOwnProperty(e)?e:a.DEFAULT_DEVICE_DTYPE_MAPPING[l]??a.DATA_TYPES.fp32}let p=f;if(a.DEFAULT_DTYPE_SUFFIX_MAPPING.hasOwnProperty(p)){if(p===a.DATA_TYPES.fp16&&l===`webgpu`&&!await(0,a.isWebGpuFp16Supported)())throw Error(`The device (${l}) does not support fp16.`)}else throw Error(`Invalid dtype: ${p}. Should be one of: ${Object.keys(a.DATA_TYPES).join(`, `)}`);let m=o.kv_cache_dtype,h=m?typeof m==`string`?m:m[p]??`float32`:void 0;if(h&&![`float32`,`float16`].includes(h))throw Error(`Invalid kv_cache_dtype: ${h}. Should be one of: float32, float16`);let g={dtype:p,kv_cache_dtype:h,device:l},v=a.DEFAULT_DTYPE_SUFFIX_MAPPING[p],y=`${t}${v}.onnx`,b=`${n.subfolder??``}/${y}`,x={...n.session_options};x.executionProviders??=u;let S=o.free_dimension_overrides;S?x.freeDimensionOverrides??=S:l.startsWith(`webnn`)&&!x.freeDimensionOverrides&&console.warn(`WebNN does not currently support dynamic shapes and requires 'free_dimension_overrides' to be set in config.json, preferably as a field within config["transformers.js_config"]["device_config"]["${l}"]. When 'free_dimension_overrides' is not set, you may experience significant performance degradation.`);let C=_.apis.IS_NODE_ENV&&_.env.useFSCache,w=(0,c.getModelFile)(e,b,!0,n,C),T=n.use_external_data_format??o.use_external_data_format,E=[];if(T){let r;r=typeof T==`object`?T.hasOwnProperty(y)?T[y]:T.hasOwnProperty(t)?T[t]:!1:T;let i=+r;if(i>c.MAX_EXTERNAL_DATA_CHUNKS)throw Error(`The number of external data chunks (${i}) exceeds the maximum allowed value (${c.MAX_EXTERNAL_DATA_CHUNKS}).`);for(let t=0;t{let o=await(0,c.getModelFile)(e,i,!0,n,C);t(o instanceof Uint8Array?{path:r,data:o}:r)}))}}else x.externalData!==void 0&&(E=x.externalData.map(async t=>{if(typeof t.data==`string`){let r=await(0,c.getModelFile)(e,t.data,!0,n);return{...t,data:r}}return t}));if(E.length>0){let e=await Promise.all(E);_.apis.IS_NODE_ENV||(x.externalData=e)}if(l===`webgpu`){let e=(0,r.getKeyValueShapes)(n.config,{prefix:`present`});if(Object.keys(e).length>0&&!(0,i.isONNXProxy)()){let t={};for(let n in e)t[n]=`gpu-buffer`;x.preferredOutputLocation=t}}let D=await w;return{buffer_or_path:D,session_options:x,session_config:g}}async function T(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let{buffer_or_path:a,session_options:o,session_config:s}=await w(e,t[r],n),c=await(0,i.createInferenceSession)(a,o,s);return[r,c]})))}async function E(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let i=await(0,c.getModelJSON)(e,t[r],!1,n);return[r,i]})))}function D(e,t){let n=Object.create(null),r=[];for(let a of e.inputNames){let e=t[a];if(!(e instanceof f.Tensor)){r.push(a);continue}n[a]=(0,i.isONNXProxy)()?e.clone():e}if(r.length>0)throw Error(`An error occurred during model execution: "Missing the following inputs: ${r.join(`, `)}.`);let a=Object.keys(t).length,o=e.inputNames.length;if(a>o){let n=Object.keys(t).filter(t=>!e.inputNames.includes(t));console.warn(`WARNING: Too many inputs were provided (${a} > ${o}). The following inputs will be ignored: "${n.join(`, `)}".`)}return n}let O=Promise.resolve();async function k(e,t){let n=D(e,t);try{let t=Object.fromEntries(Object.entries(n).map(([e,t])=>[e,t.ort_tensor])),r=()=>e.run(t),i=await(_.apis.IS_BROWSER_ENV||_.apis.IS_WEBWORKER_ENV?O=O.then(r):r());return A(i)}catch(e){let t=Object.fromEntries(Object.entries(n).map(([e,t])=>{let n={type:t.type,dims:t.dims,location:t.location};return n.location!==`gpu-buffer`&&(n.data=t.data),[e,n]}));throw console.error(`An error occurred during model execution: "${e}".`),console.error(`Inputs given to model:`,t),e}}function A(e){for(let t in e)(0,i.isONNXTensor)(e[t])?e[t]=new f.Tensor(e[t]):typeof e[t]==`object`&&A(e[t]);return e}function ee(e){if(e instanceof f.Tensor)return e;if(e.length===0)throw Error(`items must be non-empty`);if(Array.isArray(e[0])){if(e.some(t=>t.length!==e[0].length))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' and/or 'truncation=True' to have batched tensors with the same length.`);return new f.Tensor(`int64`,BigInt64Array.from(e.flat().map(e=>BigInt(e))),[e.length,e[0].length])}else return new f.Tensor(`int64`,BigInt64Array.from(e.map(e=>BigInt(e))),[1,e.length])}function te(e){return new f.Tensor(`bool`,[e],[1])}async function ne(e,t){let{encoder_outputs:n,input_ids:r,decoder_input_ids:i,...a}=t;if(!n){let r=(0,s.pick)(t,e.sessions.model.inputNames);n=(await j(e,r)).last_hidden_state}a.input_ids=i,a.encoder_hidden_states=n,e.sessions.decoder_model_merged.inputNames.includes(`encoder_attention_mask`)&&(a.encoder_attention_mask=t.attention_mask);let o=await ie(e,a,!0);return o}async function j(e,t){let n=e.sessions.model,r=(0,s.pick)(t,n.inputNames);if(n.inputNames.includes(`inputs_embeds`)&&!r.inputs_embeds){if(!t.input_ids)throw Error("Both `input_ids` and `inputs_embeds` are missing in the model inputs.");r.inputs_embeds=await e.encode_text({input_ids:t.input_ids})}if(n.inputNames.includes(`token_type_ids`)&&!r.token_type_ids){if(!r.input_ids)throw Error("Both `input_ids` and `token_type_ids` are missing in the model inputs.");r.token_type_ids=(0,f.zeros_like)(r.input_ids)}if(n.inputNames.includes(`pixel_mask`)&&!r.pixel_mask){if(!r.pixel_values)throw Error("Both `pixel_values` and `pixel_mask` are missing in the model inputs.");let e=r.pixel_values.dims;r.pixel_mask=(0,f.ones)([e[0],e[2],e[3]])}return await k(n,r)}async function re(e,t){let n=await e.encode(t),r=await e.decode(n);return r}async function ie(e,t,n=!1){let r=e.sessions[n?`decoder_model_merged`:`model`],{past_key_values:i,...a}=t;if(r.inputNames.includes(`use_cache_branch`)&&(a.use_cache_branch=te(!!i)),r.inputNames.includes(`position_ids`)&&a.attention_mask&&!a.position_ids){let t=[`paligemma`,`gemma3_text`,`gemma3`].includes(e.config.model_type)?1:0;a.position_ids=ue(a,i,t)}e.addPastKeyValues(a,i);let o=(0,s.pick)(a,r.inputNames);return await k(r,o)}function ae({modality_token_id:e,inputs_embeds:t,modality_features:n,input_ids:r,attention_mask:i}){let a=r.tolist().map(t=>t.reduce((t,n,r)=>(n==e&&t.push(r),t),[])),o=a.reduce((e,t)=>e+t.length,0),s=n.dims[0];if(o!==s)throw Error(`Number of tokens and features do not match: tokens: ${o}, features ${s}`);let c=0;for(let e=0;ee.dims[1]||i[e.at(-1)])),{...n,decoder_input_ids:ee(t)}}function F(e,...t){return e.config.is_encoder_decoder?P(e,...t):de(e,...t)}function fe(e,t,n,r){let i=!!n.past_key_values;if(r.guidance_scale!==null&&r.guidance_scale>1&&(i?n.input_ids=(0,f.cat)([n.input_ids,n.input_ids],0):(n.input_ids=(0,f.cat)([n.input_ids,(0,f.full_like)(n.input_ids,BigInt(r.pad_token_id))],0),n.attention_mask=(0,f.cat)([n.attention_mask,(0,f.full_like)(n.attention_mask,0n)],0))),(i||!n.pixel_values)&&(n.pixel_values=(0,f.full)([0,0,3,384,384],1)),i){let e=0,t=1,r=e>0?1:0,i=1;n.images_seq_mask=new f.Tensor(`bool`,Array(e+t).fill(!0).fill(!1,0,t),[i,e+t]),n.images_emb_mask=new f.Tensor(`bool`,Array(e).fill(!!r),[i,1,e])}return n}class I extends o.Callable{main_input_name=`input_ids`;forward_params=[`input_ids`,`attention_mask`];constructor(e,t,n){super(),this.config=e,this.sessions=t,this.configs=n;let r=C.get(this.constructor),i=x.get(r);switch(this.can_generate=!1,this._forward=null,this._prepare_inputs_for_generation=null,i){case b.DecoderOnly:this.can_generate=!0,this._forward=ie,this._prepare_inputs_for_generation=de;break;case b.Seq2Seq:case b.Vision2Seq:case b.Musicgen:this.can_generate=!0,this._forward=ne,this._prepare_inputs_for_generation=P;break;case b.EncoderDecoder:this._forward=ne;break;case b.ImageTextToText:this.can_generate=!0,this._forward=ce,this._prepare_inputs_for_generation=F;break;case b.AudioTextToText:this.can_generate=!0,this._forward=N,this._prepare_inputs_for_generation=F;break;case b.Phi3V:case b.ImageAudioTextToText:this.can_generate=!0,this._prepare_inputs_for_generation=F;break;case b.MultiModality:this.can_generate=!0,this._prepare_inputs_for_generation=fe;break;case b.AutoEncoder:this._forward=re;break;default:this._forward=j;break}this.can_generate&&this.forward_params.push(`past_key_values`),this.custom_config=this.config[`transformers.js_config`]??{}}async dispose(){let e=[];for(let t of Object.values(this.sessions))t?.handler?.dispose&&e.push(t.handler.dispose());return await Promise.all(e)}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:u=null,dtype:d=null,use_external_data_format:f=null,session_options:p={}}={}){let m={progress_callback:t,config:n,cache_dir:i,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:u,dtype:d,use_external_data_format:f,session_options:p},h=C.get(this),g=x.get(h);n=m.config=await r.AutoConfig.from_pretrained(e,m);let _;if(g===b.DecoderOnly)_=await Promise.all([T(e,{model:m.model_file_name??`model`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.Seq2Seq||g===b.Vision2Seq)_=await Promise.all([T(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.MaskGeneration)_=await Promise.all([T(e,{model:`vision_encoder`,prompt_encoder_mask_decoder:`prompt_encoder_mask_decoder`},m)]);else if(g===b.EncoderDecoder)_=await Promise.all([T(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m)]);else if(g===b.ImageTextToText){let t={embed_tokens:`embed_tokens`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};n.is_encoder_decoder&&(t.model=`encoder_model`),_=await Promise.all([T(e,t,m),E(e,{generation_config:`generation_config.json`},m)])}else if(g===b.AudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([T(e,t,m),E(e,{generation_config:`generation_config.json`},m)])}else if(g===b.ImageAudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([T(e,t,m),E(e,{generation_config:`generation_config.json`},m)])}else if(g===b.Musicgen)_=await Promise.all([T(e,{model:`text_encoder`,decoder_model_merged:`decoder_model_merged`,encodec_decode:`encodec_decode`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.MultiModality)_=await Promise.all([T(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`language_model`,lm_head:`lm_head`,gen_head:`gen_head`,gen_img_embeds:`gen_img_embeds`,image_decode:`image_decode`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.Phi3V)_=await Promise.all([T(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`model`,vision_encoder:`vision_encoder`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.AutoEncoder)_=await Promise.all([T(e,{encoder_model:`encoder_model`,decoder_model:`decoder_model`},m)]);else{if(g!==b.EncoderOnly){let e=h??n?.model_type;e!==`custom`&&console.warn(`Model type for '${e}' not found, assuming encoder-only architecture. Please report this at ${l.GITHUB_ISSUE_URL}.`)}_=await Promise.all([T(e,{model:m.model_file_name??`model`},m)])}return new this(n,..._)}async _call(e){return await this.forward(e)}async forward(e){return await this._forward(this,e)}get generation_config(){return this.configs?.generation_config??null}_get_logits_warper(e){let t=new u.LogitsProcessorList;return e.temperature!==null&&e.temperature!==1&&t.push(new u.TemperatureLogitsWarper(e.temperature)),e.top_k!==null&&e.top_k!==0&&t.push(new u.TopKLogitsWarper(e.top_k)),e.top_p!==null&&e.top_p<1&&t.push(new u.TopPLogitsWarper(e.top_p)),t}_get_logits_processor(e,t,n=null){let r=new u.LogitsProcessorList;if(e.repetition_penalty!==null&&e.repetition_penalty!==1&&r.push(new u.RepetitionPenaltyLogitsProcessor(e.repetition_penalty)),e.no_repeat_ngram_size!==null&&e.no_repeat_ngram_size>0&&r.push(new u.NoRepeatNGramLogitsProcessor(e.no_repeat_ngram_size)),e.bad_words_ids!==null&&r.push(new u.NoBadWordsLogitsProcessor(e.bad_words_ids,e.eos_token_id)),e.min_length!==null&&e.eos_token_id!==null&&e.min_length>0&&r.push(new u.MinLengthLogitsProcessor(e.min_length,e.eos_token_id)),e.min_new_tokens!==null&&e.eos_token_id!==null&&e.min_new_tokens>0&&r.push(new u.MinNewTokensLengthLogitsProcessor(t,e.min_new_tokens,e.eos_token_id)),e.forced_bos_token_id!==null&&r.push(new u.ForcedBOSTokenLogitsProcessor(e.forced_bos_token_id)),e.forced_eos_token_id!==null&&r.push(new u.ForcedEOSTokenLogitsProcessor(e.max_length,e.forced_eos_token_id)),e.begin_suppress_tokens!==null){let n=t>1||e.forced_bos_token_id===null?t:t+1;r.push(new u.SuppressTokensAtBeginLogitsProcessor(e.begin_suppress_tokens,n))}return e.guidance_scale!==null&&e.guidance_scale>1&&r.push(new u.ClassifierFreeGuidanceLogitsProcessor(e.guidance_scale)),n!==null&&r.extend(n),r}_prepare_generation_config(e,t,n=d.GenerationConfig){let r={...this.config};for(let e of[`decoder`,`generator`,`text_config`])e in r&&Object.assign(r,r[e]);let i=new n(r);return Object.assign(i,this.generation_config??{}),e&&Object.assign(i,e),t&&Object.assign(i,(0,s.pick)(t,Object.getOwnPropertyNames(i))),i}_get_stopping_criteria(e,t=null){let n=new h.StoppingCriteriaList;return e.max_length!==null&&n.push(new h.MaxLengthCriteria(e.max_length,this.config.max_position_embeddings??null)),e.eos_token_id!==null&&n.push(new h.EosTokenCriteria(e.eos_token_id)),t&&n.extend(t),n}_validate_model_class(){if(!this.can_generate){let e=[Pl,Rl,Nl,Ol],t=C.get(this.constructor),n=new Set,r=this.config.model_type;for(let t of e){let e=t.get(r);e&&n.add(e[0])}let i=`The current model class (${t}) is not compatible with \`.generate()\`, as it doesn't have a language model head.`;throw n.size>0&&(i+=` Please use the following class instead: ${[...n].join(`, `)}`),Error(i)}}prepare_inputs_for_generation(...e){return this._prepare_inputs_for_generation(this,...e)}_update_model_kwargs_for_generation({generated_input_ids:e,outputs:t,model_inputs:n,is_encoder_decoder:r}){return n.past_key_values=this.getPastKeyValues(t,n.past_key_values),n.input_ids=new f.Tensor(`int64`,e.flat(),[e.length,1]),r?`decoder_attention_mask`in n:n.attention_mask=(0,f.cat)([n.attention_mask,(0,f.ones)([n.attention_mask.dims[0],1])],1),n.position_ids=null,n}_prepare_model_inputs({inputs:e,bos_token_id:t,model_kwargs:n}){let r=(0,s.pick)(n,this.forward_params),i=this.main_input_name;if(i in r){if(e)throw Error("`inputs`: {inputs}` were passed alongside {input_name} which is not allowed. Make sure to either pass {inputs} or {input_name}=...")}else r[i]=e;let a=r[i];return{inputs_tensor:a,model_inputs:r,model_input_name:i}}async _prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:e,model_inputs:t,model_input_name:n,generation_config:r}){if(this.sessions.model.inputNames.includes(`inputs_embeds`)&&!t.inputs_embeds&&`_prepare_inputs_embeds`in this){let{input_ids:e,pixel_values:n,attention_mask:r,...i}=t,a=await this._prepare_inputs_embeds(t);t={...i,...(0,s.pick)(a,[`inputs_embeds`,`attention_mask`])}}let{last_hidden_state:i}=await j(this,t);if(r.guidance_scale!==null&&r.guidance_scale>1)i=(0,f.cat)([i,(0,f.full_like)(i,0)],0),`attention_mask`in t&&(t.attention_mask=(0,f.cat)([t.attention_mask,(0,f.zeros_like)(t.attention_mask)],0));else if(t.decoder_input_ids){let e=ee(t.decoder_input_ids).dims[0];if(e!==i.dims[0]){if(i.dims[0]!==1)throw Error(`The encoder outputs have a different batch size (${i.dims[0]}) than the decoder inputs (${e}).`);i=(0,f.cat)(Array.from({length:e},()=>i),0)}}return t.encoder_outputs=i,t}_prepare_decoder_input_ids_for_generation({batch_size:e,model_input_name:t,model_kwargs:n,decoder_start_token_id:r,bos_token_id:i,generation_config:a}){let{decoder_input_ids:o,...s}=n;if(!(o instanceof f.Tensor)){if(o)Array.isArray(o[0])||(o=Array.from({length:e},()=>o));else if(r??=i,this.config.model_type===`musicgen`)o=Array.from({length:e*this.config.decoder.num_codebooks},()=>[r]);else if(Array.isArray(r)){if(r.length!==e)throw Error(`\`decoder_start_token_id\` expcted to have length ${e} but got ${r.length}`);o=r}else o=Array.from({length:e},()=>[r]);o=ee(o)}return n.decoder_attention_mask=(0,f.ones_like)(o),{input_ids:o,model_inputs:s}}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,streamer:i=null,...a}){this._validate_model_class(),t=this._prepare_generation_config(t,a);let{inputs_tensor:o,model_inputs:s,model_input_name:c}=this._prepare_model_inputs({inputs:e,model_kwargs:a}),l=this.config.is_encoder_decoder;l&&(`encoder_outputs`in s||(s=await this._prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:o,model_inputs:s,model_input_name:c,generation_config:t})));let u;l?{input_ids:u,model_inputs:s}=this._prepare_decoder_input_ids_for_generation({batch_size:s[c].dims.at(0),model_input_name:c,model_kwargs:s,decoder_start_token_id:t.decoder_start_token_id,bos_token_id:t.bos_token_id,generation_config:t}):u=s[c];let d=u.dims.at(-1);t.max_new_tokens!==null&&(t.max_length=d+t.max_new_tokens);let p=this._get_logits_processor(t,d,n),m=this._get_stopping_criteria(t,r),h=s[c].dims.at(0),_=g.LogitsSampler.getSampler(t),v=Array(h).fill(0),y=u.tolist();i&&i.put(y);let b,x={};for(;;){if(s=this.prepare_inputs_for_generation(y,s,t),b=await this.forward(s),t.output_attentions&&t.return_dict_in_generate){let e=this.getAttentions(b);for(let t in e)t in x||(x[t]=[]),x[t].push(e[t])}let e=b.logits.slice(null,-1,null),n=p(y,e),r=[];for(let e=0;ee))break;s=this._update_model_kwargs_for_generation({generated_input_ids:r,outputs:b,model_inputs:s,is_encoder_decoder:l})}i&&i.end();let S=this.getPastKeyValues(b,s.past_key_values,!0),C=new f.Tensor(`int64`,y.flat(),[y.length,y[0].length]);if(t.return_dict_in_generate)return{sequences:C,past_key_values:S,...x};for(let e of Object.values(b))e.location===`gpu-buffer`&&e.dispose();return C}getPastKeyValues(e,t,n=!1){let r=Object.create(null);for(let i in e)if(i.startsWith(`present`)){let a=i.replace(`present`,`past_key_values`),o=i.includes(`encoder`);if(o&&t?r[a]=t[a]:r[a]=e[i],t&&(!o||n)){let e=t[a];e.location===`gpu-buffer`&&e.dispose()}}return r}getAttentions(e){let t={};for(let n of[`cross_attentions`,`encoder_attentions`,`decoder_attentions`])for(let r in e)r.startsWith(n)&&(n in t||(t[n]=[]),t[n].push(e[r]));return t}addPastKeyValues(e,t){if(t)Object.assign(e,t);else{let t=this.sessions.decoder_model_merged??this.sessions.model,n=t?.config?.kv_cache_dtype??`float32`,i=n===`float16`?new f.DataTypeMap.float16:[],a=(e[this.main_input_name]??e.attention_mask)?.dims?.[0]??1,o=(0,r.getKeyValueShapes)(this.config,{batch_size:a});for(let t in o)e[t]=new f.Tensor(n,i,o[t])}}async encode_image({pixel_values:e}){return(await k(this.sessions.vision_encoder,{pixel_values:e})).image_features}async encode_text({input_ids:e}){return(await k(this.sessions.embed_tokens,{input_ids:e})).inputs_embeds}async encode_audio({audio_values:e}){return(await k(this.sessions.audio_encoder,{audio_values:e})).audio_features}}class pe{}class me extends pe{constructor({last_hidden_state:e,hidden_states:t=null,attentions:n=null}){super(),this.last_hidden_state=e,this.hidden_states=t,this.attentions=n}}class he extends I{}class ge extends he{}class _e extends he{async _call(e){return new Uu(await super._call(e))}}class ve extends he{async _call(e){return new Q(await super._call(e))}}class L extends he{async _call(e){return new Hu(await super._call(e))}}class ye extends he{async _call(e){return new Wu(await super._call(e))}}class be extends I{}class xe extends be{}class Se extends be{async _call(e){return new Uu(await super._call(e))}}class Ce extends be{async _call(e){return new Q(await super._call(e))}}class we extends be{async _call(e){return new Hu(await super._call(e))}}class Te extends be{async _call(e){return new Wu(await super._call(e))}}class Ee extends I{}class De extends Ee{}class Oe extends Ee{async _call(e){return new Uu(await super._call(e))}}class ke extends Ee{async _call(e){return new Q(await super._call(e))}}class Ae extends Ee{async _call(e){return new Hu(await super._call(e))}}class je extends I{}class Me extends je{}class Ne extends I{}class R extends Ne{}class Pe extends Ne{async _call(e){return new Uu(await super._call(e))}}class Fe extends Ne{async _call(e){return new Q(await super._call(e))}}class Ie extends Ne{async _call(e){return new Hu(await super._call(e))}}class Le extends Ne{async _call(e){return new Wu(await super._call(e))}}class Re extends I{}class ze extends Re{}class Be extends Re{async _call(e){return new Uu(await super._call(e))}}class z extends Re{async _call(e){return new Q(await super._call(e))}}class Ve extends Re{async _call(e){return new Hu(await super._call(e))}}class He extends Re{async _call(e){return new Wu(await super._call(e))}}class B extends I{}class Ue extends B{}class We extends B{async _call(e){return new Uu(await super._call(e))}}class Ge extends B{async _call(e){return new Q(await super._call(e))}}class Ke extends B{async _call(e){return new Hu(await super._call(e))}}class qe extends B{async _call(e){return new Wu(await super._call(e))}}class Je extends I{}class Ye extends Je{}class Xe extends Je{async _call(e){return new Uu(await super._call(e))}}class Ze extends Je{async _call(e){return new Q(await super._call(e))}}class Qe extends Je{async _call(e){return new Hu(await super._call(e))}}class $e extends Je{async _call(e){return new Wu(await super._call(e))}}class et extends I{}class tt extends et{}class nt extends et{async _call(e){return new Uu(await super._call(e))}}class rt extends et{async _call(e){return new Q(await super._call(e))}}class it extends et{async _call(e){return new Hu(await super._call(e))}}class at extends et{async _call(e){return new Wu(await super._call(e))}}class ot extends I{}class st extends ot{}class ct extends ot{async _call(e){return new Uu(await super._call(e))}}class lt extends ot{async _call(e){return new Q(await super._call(e))}}class ut extends ot{async _call(e){return new Hu(await super._call(e))}}class dt extends ot{async _call(e){return new Wu(await super._call(e))}}class ft extends I{}class pt extends ft{}class mt extends ft{async _call(e){return new Q(await super._call(e))}}class ht extends ft{async _call(e){return new Hu(await super._call(e))}}class gt extends ft{async _call(e){return new Wu(await super._call(e))}}class _t extends ft{async _call(e){return new Uu(await super._call(e))}}class vt extends I{}class yt extends vt{}class bt extends vt{async _call(e){return new Uu(await super._call(e))}}class xt extends vt{async _call(e){return new Q(await super._call(e))}}class St extends vt{async _call(e){return new Hu(await super._call(e))}}class Ct extends I{}class wt extends Ct{}class Tt extends Ct{async _call(e){return new Uu(await super._call(e))}}class Et extends Ct{async _call(e){return new Q(await super._call(e))}}class Dt extends Ct{async _call(e){return new Wu(await super._call(e))}}class Ot extends I{}class kt extends Ot{}class At extends Ot{async _call(e){return new Uu(await super._call(e))}}class jt extends Ot{async _call(e){return new Q(await super._call(e))}}class Mt extends Ot{async _call(e){return new Hu(await super._call(e))}}class Nt extends Ot{async _call(e){return new Wu(await super._call(e))}}class Pt extends I{}class Ft extends Pt{}class It extends Pt{async _call(e){return new Uu(await super._call(e))}}class Lt extends Pt{async _call(e){return new Q(await super._call(e))}}class Rt extends Pt{async _call(e){return new Wu(await super._call(e))}}class zt extends I{}class Bt extends zt{}class Vt extends zt{async _call(e){return new Q(await super._call(e))}}class Ht extends zt{async _call(e){return new Wu(await super._call(e))}}class Ut extends zt{async _call(e){return new Uu(await super._call(e))}}class Wt extends I{forward_params=[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`]}class Gt extends Wt{}class Kt extends Wt{}class qt extends I{}class Jt extends qt{}class Yt extends qt{}class Xt extends I{}class Zt extends Xt{}class Qt extends Xt{}class $t extends I{}class en extends $t{}class tn extends $t{}class nn extends $t{async _call(e){return new Q(await super._call(e))}}class rn extends I{}class V extends rn{}class an extends rn{}class on extends rn{async _call(e){return new Q(await super._call(e))}}class sn extends rn{}class cn extends I{}class ln extends cn{}class un extends cn{}class dn extends I{}class fn extends dn{}class H extends dn{}class pn extends I{}class mn extends pn{}class hn extends pn{async _call(e){return new Uu(await super._call(e))}}class U extends pn{async _call(e){return new Q(await super._call(e))}}class gn extends pn{async _call(e){return new Hu(await super._call(e))}}class _n extends pn{async _call(e){return new Wu(await super._call(e))}}class vn extends I{}class yn extends vn{}class W extends vn{async _call(e){return new Uu(await super._call(e))}}class bn extends vn{async _call(e){return new Q(await super._call(e))}}class xn extends vn{async _call(e){return new Hu(await super._call(e))}}class Sn extends vn{async _call(e){return new Wu(await super._call(e))}}class Cn extends I{}class wn extends Cn{}class Tn extends Cn{async _call(e){return new Uu(await super._call(e))}}class En extends Cn{async _call(e){return new Q(await super._call(e))}}class Dn extends Cn{async _call(e){return new Hu(await super._call(e))}}class On extends Cn{async _call(e){return new Wu(await super._call(e))}}class kn extends I{}class An extends kn{}class jn extends kn{}class Mn extends I{requires_attention_mask=!1;main_input_name=`input_features`;forward_params=[`input_features`,`attention_mask`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`]}class Nn extends Mn{}class Pn extends Mn{_prepare_generation_config(e,t){return super._prepare_generation_config(e,t,v.WhisperGenerationConfig)}_retrieve_init_tokens(e){let t=[e.decoder_start_token_id],n=e.language,r=e.task;if(e.is_multilingual){n||(console.warn(`No language specified - defaulting to English (en).`),n=`en`);let i=(0,y.whisper_language_to_code)(n),a=`<|${i}|>`;t.push(e.lang_to_id[a]),t.push(e.task_to_id[r??`transcribe`])}else if(n||r)throw Error("Cannot specify `task` or `language` for an English-only model. If the model is intended to be multilingual, pass `is_multilingual=true` to generate, or update the generation config.");return!e.return_timestamps&&e.no_timestamps_token_id&&t.at(-1)!==e.no_timestamps_token_id?t.push(e.no_timestamps_token_id):e.return_timestamps&&t.at(-1)===e.no_timestamps_token_id&&(console.warn("<|notimestamps|> prompt token is removed from generation_config since `return_timestamps` is set to `true`."),t.pop()),t.filter(e=>e!=null)}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,...i}){t=this._prepare_generation_config(t,i);let a=i.decoder_input_ids??this._retrieve_init_tokens(t);if(t.return_timestamps&&(n??=new u.LogitsProcessorList,n.push(new u.WhisperTimeStampLogitsProcessor(t,a))),t.begin_suppress_tokens&&(n??=new u.LogitsProcessorList,n.push(new u.SuppressTokensAtBeginLogitsProcessor(t.begin_suppress_tokens,a.length))),t.return_token_timestamps){if(!t.alignment_heads)throw Error("Model generation config has no `alignment_heads`, token-level timestamps not available. See https://gist.github.com/hollance/42e32852f24243b748ae6bc1f985b13a on how to add this property to the generation config.");t.task===`translate`&&console.warn(`Token-level timestamps may not be reliable for task 'translate'.`),t.output_attentions=!0,t.return_dict_in_generate=!0}let o=await super.generate({inputs:e,generation_config:t,logits_processor:n,decoder_input_ids:a,...i});return t.return_token_timestamps&&(o.token_timestamps=this._extract_token_timestamps(o,t.alignment_heads,t.num_frames)),o}_extract_token_timestamps(e,t,n=null,r=.02){if(!e.cross_attentions)throw Error("Model outputs must contain cross attentions to extract timestamps. This is most likely because the model was not exported with `output_attentions=True`.");n??console.warn("`num_frames` has not been set, meaning the entire audio will be analyzed. This may lead to inaccurate token-level timestamps for short audios (< 30 seconds).");let i=this.config.median_filter_width;i===void 0&&(console.warn("Model config has no `median_filter_width`, using default value of 7."),i=7);let a=e.cross_attentions,o=Array.from({length:this.config.decoder_layers},(e,t)=>(0,f.cat)(a.map(e=>e[t]),2)),c=(0,f.stack)(t.map(([e,t])=>{if(e>=o.length)throw Error(`Layer index ${e} is out of bounds for cross attentions (length ${o.length}).`);return n?o[e].slice(null,t,null,[0,n]):o[e].slice(null,t)})).transpose(1,0,2,3),[l,u]=(0,f.std_mean)(c,-2,0,!0),d=c.clone();for(let e=0;en[t+1]-n[t]),o=(0,s.mergeArrays)([1],a).map(e=>!!e),c=[];for(let e=0;eArray.from({length:e.dims[0]},t=>Array.from({length:e.dims[1]},e=>1))),p=t?t.tolist():[],h=n?n.tolist():[],g=0,_=0;for(let e=0;eu[e][n]==1),n=t.reduce((e,t,n)=>(t==s&&e.push(n),e),[]),r=n.map(e=>t[e+1]),f=r.filter(e=>e==a).length,v=r.filter(e=>e==o).length,y=[],b=0,x=f,S=v;for(let e=0;et>b&&e==a),n=t.findIndex((e,t)=>t>b&&e==o),r=x>0&&e!==-1?e:t.length+1,i=S>0&&n!==-1?n:t.length+1,s,l,u,d;r0?(0,m.max)(y.at(-1))[0]+1:0;y.push(Array.from({length:3*w},(e,t)=>T+t%w));let E=w+T,D=f*v*C,O=Array.from({length:D},(e,t)=>E+Math.floor(t/(v*C))),k=Array.from({length:D},(e,t)=>E+Math.floor(t/C)%v),A=Array.from({length:D},(e,t)=>E+t%C);y.push([O,k,A].flat()),b=s+D}if(b0?(0,m.max)(y.at(-1))[0]+1:0,n=t.length-b;y.push(Array.from({length:3*n},(t,r)=>e+r%n))}let C=y.reduce((e,t)=>e+t.length,0),w=Array(C),T=0;for(let e=0;e<3;++e)for(let t=0;te[n%e.length]),i=Array.from({length:t[0]},(n,r)=>(0,m.max)(e.subarray(t[1]*r,t[1]*(r+1)))[0]+1n+BigInt(t[1]));return[new f.Tensor(`int64`,n,[3,...t]),new f.Tensor(`int64`,i,[i.length,1])]}else{let[t,n]=e.dims,r=BigInt64Array.from({length:3*t*n},(e,r)=>BigInt(Math.floor(r%n/t)));return[new f.Tensor(`int64`,r,[3,...e.dims]),(0,f.zeros)([t,1])]}}async encode_image({pixel_values:e,image_grid_thw:t}){let n=(await k(this.sessions.vision_encoder,{pixel_values:e,grid_thw:t})).image_features;return n}_merge_input_ids_with_image_features(e){return oe({image_token_id:this.config.image_token_id,...e})}prepare_inputs_for_generation(e,t,n){if(t.attention_mask&&!t.position_ids)if(!t.past_key_values)[t.position_ids,t.rope_deltas]=this.get_rope_index(t.input_ids,t.image_grid_thw,t.video_grid_thw,t.attention_mask);else{t.pixel_values=null;let e=BigInt(Object.values(t.past_key_values)[0].dims.at(-2)),n=t.rope_deltas.map(t=>e+t);t.position_ids=(0,f.stack)([n,n,n],0)}return t}}class ki extends I{}class Ai extends ki{}class ji extends ki{}class Mi extends I{}class Ni extends Mi{}class Pi extends Mi{}class Fi extends I{}class Ii extends Fi{}class Li extends Fi{}class Ri extends I{}class zi extends Ri{}class Bi extends Ri{}class Vi extends I{}class Hi extends Vi{}class Ui extends Vi{}class Wi extends I{}class Gi extends Wi{}class Ki extends Wi{async _call(e){return new Q(await super._call(e))}}class qi extends I{}class Ji extends qi{}class Yi extends qi{async _call(e){return new Q(await super._call(e))}}class Xi extends I{}class Zi extends Xi{}class Qi extends I{}class $i extends Qi{}class ea extends Qi{async _call(e){return new Q(await super._call(e))}}class ta extends I{}class na extends ta{}class ra extends I{}class ia extends ra{}class aa extends ra{async _call(e){return new Q(await super._call(e))}}class oa extends I{}class sa extends oa{}class ca extends I{}class la extends ca{}class ua extends ca{async _call(e){return new Q(await super._call(e))}}class da extends I{}class fa extends da{async _call(e){return new qu(await super._call(e))}}class pa extends I{}class ma extends pa{}class ha extends pa{async _call(e){return new Q(await super._call(e))}}class ga extends I{}class _a extends ga{}class va extends ga{async _call(e){return new Q(await super._call(e))}}class ya extends I{}class ba extends ya{}class xa extends ya{}class Sa extends I{}class Ca extends Sa{}class wa extends Sa{}class Ta extends I{}class Ea extends Ta{}class Da extends Ta{async _call(e){return new Q(await super._call(e))}}class Oa extends I{}class ka extends Oa{}class Aa extends Oa{async _call(e){return new Ma(await super._call(e))}}class ja extends Oa{async _call(e){return new Na(await super._call(e))}}class Ma extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Na extends pe{constructor({logits:e,pred_boxes:t,pred_masks:n}){super(),this.logits=e,this.pred_boxes=t,this.pred_masks=n}}class Pa extends I{}class Fa extends Pa{}class Ia extends Pa{async _call(e){return new La(await super._call(e))}}class La extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Ra extends I{}class za extends Ra{}class Ba extends Ra{async _call(e){return new Va(await super._call(e))}}class Va extends La{}class Ha extends I{}class Ua extends Ha{}class Wa extends Ha{async _call(e){return new Ga(await super._call(e))}}class Ga extends La{}class Ka extends I{}class qa extends Ka{}class Ja extends Ka{async _call(e){return new La(await super._call(e))}}class Ya extends I{}class Xa extends Ya{}class Za extends Ya{async _call(e){return new Qa(await super._call(e))}}class Qa extends Ma{}class $a extends I{}class eo extends $a{}class to extends $a{async _call(e){return new Q(await super._call(e))}}class no extends I{}class ro extends no{}class io extends no{async _call(e){return new Q(await super._call(e))}}class ao extends I{}class oo extends ao{}class so extends ao{async _call(e){return new Q(await super._call(e))}}class co extends I{}class lo extends co{}class uo extends co{async _call(e){return new Q(await super._call(e))}}class fo extends co{}class po extends I{}class mo extends po{}class ho extends po{}class go extends I{}class _o extends go{}class vo extends go{}class yo extends I{}class bo extends yo{}class xo extends I{}class So extends xo{}class Co extends xo{}class wo extends xo{}class To extends I{}class Eo extends To{}class Do extends I{}class Oo extends Do{}class ko extends I{}class Ao extends ko{}class jo extends I{}class Mo extends jo{}class No extends jo{}class Po extends I{}class Fo extends Po{}class Io extends Po{}class Lo extends I{}class Ro extends Lo{}class zo extends I{}class Bo extends zo{}class Vo extends zo{async _call(e){return new Q(await super._call(e))}}class Ho extends I{}class Uo extends Ho{}class Wo extends Ho{async _call(e){return new Q(await super._call(e))}}class Go extends I{}class Ko extends Go{}class qo extends Go{async _call(e){return new Q(await super._call(e))}}class Jo extends I{}class Yo extends Jo{}class Xo extends Jo{async _call(e){return new Q(await super._call(e))}}class Zo extends I{}class Qo extends Zo{}class $o extends I{}class es extends $o{}class ts extends $o{async _call(e){return new ns(await super._call(e))}}class ns extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class rs extends I{}class os extends rs{async get_image_embeddings({pixel_values:e}){return await j(this,{pixel_values:e})}async forward(e){if((!e.image_embeddings||!e.image_positional_embeddings)&&(e={...e,...await this.get_image_embeddings(e)}),!e.input_labels&&e.input_points){let t=e.input_points.dims.slice(0,-1),n=t.reduce((e,t)=>e*t,1);e.input_labels=new f.Tensor(`int64`,new BigInt64Array(n).fill(1n),t)}let t={image_embeddings:e.image_embeddings,image_positional_embeddings:e.image_positional_embeddings};return e.input_points&&(t.input_points=e.input_points),e.input_labels&&(t.input_labels=e.input_labels),e.input_boxes&&(t.input_boxes=e.input_boxes),await k(this.sessions.prompt_encoder_mask_decoder,t)}async _call(e){return new ss(await super._call(e))}}class ss extends pe{constructor({iou_scores:e,pred_masks:t}){super(),this.iou_scores=e,this.pred_masks=t}}class cs extends I{}class ls extends cs{}class us extends cs{}class ds extends I{}class fs extends ds{}class ps extends ds{}class ms extends I{}class hs extends ms{}class gs extends ms{async _call(e){return new Gu(await super._call(e))}}class _s extends ms{async _call(e){return new Q(await super._call(e))}}class vs extends ms{async _call(e){return new Hu(await super._call(e))}}class ys extends I{}class bs extends ys{}class xs extends ys{async _call(e){return new Hu(await super._call(e))}}class Ss extends I{}class Cs extends Ss{}class ws extends I{}class Ts extends ws{}class Es extends ws{async _call(e){return new Gu(await super._call(e))}}class Ds extends ws{async _call(e){return new Q(await super._call(e))}}class Os extends I{}class ks extends Os{}class As extends Os{async _call(e){return new Gu(await super._call(e))}}class js extends Os{async _call(e){return new Q(await super._call(e))}}class Ms extends Os{async _call(e){return new Hu(await super._call(e))}}class Ns extends I{}class Ps extends Ns{}class Fs extends Ns{async _call(e){return new Gu(await super._call(e))}}class Is extends Ns{async _call(e){return new Q(await super._call(e))}}class Ls extends I{}class Rs extends ms{}class zs extends ms{async _call(e){return new Gu(await super._call(e))}}class Bs extends ms{async _call(e){return new Q(await super._call(e))}}class Vs extends I{}class Hs extends Vs{}class Us extends Vs{async _call(e){return new Gu(await super._call(e))}}class Ws extends Vs{async _call(e){return new Q(await super._call(e))}}class Gs extends Vs{async _call(e){return new Vu(await super._call(e))}}class Ks extends Vs{async _call(e){return new Hu(await super._call(e))}}class qs extends I{}class Js extends qs{}class Ys extends I{}class Xs extends Ys{}class Zs extends Ys{}class Qs extends Ys{async generate_speech(e,t,{threshold:n=.5,minlenratio:r=0,maxlenratio:i=20,vocoder:a=null}={}){let o={input_ids:e},{encoder_outputs:s,encoder_attention_mask:c}=await j(this,o),l=s.dims[1]/this.config.reduction_factor,u=Math.floor(l*i),d=Math.floor(l*r),p=this.config.num_mel_bins,m=[],h=null,g=null,_=0;for(;;){++_;let e=te(!!g),r;r=g?g.output_sequence_out:new f.Tensor(`float32`,new Float32Array(p),[1,1,p]);let i={use_cache_branch:e,output_sequence:r,encoder_attention_mask:c,speaker_embeddings:t,encoder_hidden_states:s};this.addPastKeyValues(i,h),g=await k(this.sessions.decoder_model_merged,i),h=this.getPastKeyValues(g,h);let{prob:a,spectrum:o}=g;if(m.push(o),_>=d&&(Array.from(a.data).filter(e=>e>=n).length>0||_>=u))break}let v=(0,f.cat)(m),{waveform:y}=await k(a.sessions.model,{spectrogram:v});return{spectrogram:v,waveform:y}}}class $s extends I{main_input_name=`spectrogram`}class ec extends I{}class tc extends ec{}class nc extends I{}class rc extends nc{}class ic extends nc{}class ac extends I{}class oc extends ac{}class sc extends ac{}class cc extends I{}class lc extends cc{}class uc extends cc{}class dc extends I{}class fc extends dc{}class pc extends dc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`text_model`})}}class mc extends dc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`audio_model`})}}class hc extends I{}class gc extends hc{async _call(e){return new Ju(await super._call(e))}}class _c extends I{}class vc extends _c{}class yc extends _c{}class bc extends _c{}class xc extends I{}class Sc extends xc{}class Cc extends xc{}class wc extends I{}class Tc extends wc{}class Ec extends wc{async _call(e){return new Q(await super._call(e))}}class Dc extends I{}class Oc extends Dc{}class kc extends Dc{}class Ac extends I{forward_params=[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`];_apply_and_filter_by_delay_pattern_mask(e){let[t,n]=e.dims,r=this.config.decoder.num_codebooks,i=n-r,a=0;for(let t=0;t0&&c<=i&&(e.data[a++]=e.data[t])}let o=Math.floor(t/r),s=a/(o*r);return new f.Tensor(e.type,e.data.slice(0,a),[o,r,s])}prepare_inputs_for_generation(e,t,n){let r=structuredClone(e);for(let e=0;e=t&&(r[e][t]=BigInt(this.config.decoder.pad_token_id));n.guidance_scale!==null&&n.guidance_scale>1&&(r=r.concat(r));let i=super.prepare_inputs_for_generation(r,t,n);return i}async generate(e){let t=await super.generate(e),n=this._apply_and_filter_by_delay_pattern_mask(t).unsqueeze_(0),{audio_values:r}=await k(this.sessions.encodec_decode,{audio_codes:n});return r}}class jc extends I{}class Mc extends jc{}class Nc extends jc{async _call(e){return new Q(await super._call(e))}}class Pc extends jc{}class Fc extends I{}class Ic extends Fc{}class Lc extends Fc{async _call(e){return new Q(await super._call(e))}}class Rc extends Fc{}class zc extends I{}class Bc extends zc{}class Vc extends zc{async _call(e){return new Q(await super._call(e))}}class Hc extends zc{}class Uc extends I{}class Wc extends Uc{}class Gc extends Uc{async _call(e){return new Q(await super._call(e))}}class Kc extends Uc{}class qc extends I{}class Jc extends qc{}class Yc extends I{}class Xc extends Yc{forward_params=[`input_ids`,`pixel_values`,`images_seq_mask`,`images_emb_mask`,`attention_mask`,`position_ids`,`past_key_values`];constructor(...e){super(...e),this._generation_mode=`text`}async forward(e){let t=this._generation_mode??`text`,n;if(t===`text`||!e.past_key_values){let t=this.sessions.prepare_inputs_embeds,r=(0,s.pick)(e,t.inputNames);n=await k(t,r)}else{let t=this.sessions.gen_img_embeds,r=(0,s.pick)({image_ids:e.input_ids},t.inputNames);n=await k(t,r)}let r={...e,...n},i=await ie(this,r),a=this.sessions[t===`text`?`lm_head`:`gen_head`];if(!a)throw Error(`Unable to find "${a}" generation head`);let o=await k(a,(0,s.pick)(i,a.inputNames));return{...n,...i,...o}}async generate(e){return this._generation_mode=`text`,super.generate(e)}async generate_images(e){this._generation_mode=`image`;let t=(e.inputs??e[this.main_input_name]).dims[1],n=await super.generate(e),r=n.slice(null,[t,null]),i=this.sessions.image_decode,{decoded_image:a}=await k(i,{generated_tokens:r}),o=a.add_(1).mul_(255/2).clamp_(0,255).to(`uint8`),s=[];for(let e of o){let t=p.RawImage.fromTensor(e);s.push(t)}return s}}class Zc extends pe{constructor({char_logits:e,bpe_logits:t,wp_logits:n}){super(),this.char_logits=e,this.bpe_logits=t,this.wp_logits=n}get logits(){return[this.char_logits,this.bpe_logits,this.wp_logits]}}class Qc extends I{}class $c extends Qc{async _call(e){return new Zc(await super._call(e))}}class el extends I{}class tl extends el{}class nl extends el{}class rl extends I{}class il extends rl{}class al extends rl{}class ol extends I{forward_params=[`input_ids`,`attention_mask`,`position_ids`,`audio_values`,`past_key_values`]}class sl extends ol{_merge_input_ids_with_audio_features(e){let t=e.audio_features.dims.at(-1),n=e.audio_features.view(-1,t);return se({audio_token_id:this.config.ignore_index,...e,audio_features:n})}}class cl extends I{main_input_name=`input_values`;forward_params=[`input_values`]}class ll extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class ul extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class dl extends cl{async encode(e){return new ll(await k(this.sessions.encoder_model,e))}async decode(e){return new ul(await k(this.sessions.decoder_model,e))}}class fl extends cl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class pl extends cl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class ml extends I{main_input_name=`input_values`;forward_params=[`input_values`]}class hl extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class gl extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class _l extends ml{async encode(e){return new hl(await k(this.sessions.encoder_model,e))}async decode(e){return new gl(await k(this.sessions.decoder_model,e))}}class vl extends ml{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class yl extends ml{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class bl extends I{main_input_name=`input_values`;forward_params=[`input_values`]}class xl extends bl{async encode(e){return await k(this.sessions.encoder_model,e)}async decode(e){return await k(this.sessions.decoder_model,e)}}class Sl extends bl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class Cl extends bl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class Z{static MODEL_CLASS_MAPPINGS=null;static BASE_IF_FAIL=!1;static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:l=null,dtype:u=null,use_external_data_format:d=null,session_options:f={}}={}){let p={progress_callback:t,config:n,cache_dir:i,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:l,dtype:u,use_external_data_format:d,session_options:f};if(p.config=await r.AutoConfig.from_pretrained(e,p),!this.MODEL_CLASS_MAPPINGS)throw Error("`MODEL_CLASS_MAPPINGS` not implemented for this type of `AutoClass`: "+this.name);let m=p.config.model_type;for(let t of this.MODEL_CLASS_MAPPINGS){let n=t.get(m);if(!n){for(let e of t.values())if(e[0]===m){n=e;break}if(!n)continue}return await n[1].from_pretrained(e,p)}if(this.BASE_IF_FAIL)return cu.has(m)||console.warn(`Unknown model class "${m}", attempting to construct from base class.`),await I.from_pretrained(e,p);throw Error(`Unsupported model type: ${m}`)}}let wl=new Map([[`bert`,[`BertModel`,ge]],[`neobert`,[`NeoBertModel`,xe]],[`modernbert`,[`ModernBertModel`,De]],[`nomic_bert`,[`NomicBertModel`,Me]],[`roformer`,[`RoFormerModel`,R]],[`electra`,[`ElectraModel`,Ue]],[`esm`,[`EsmModel`,yt]],[`convbert`,[`ConvBertModel`,ze]],[`camembert`,[`CamembertModel`,Ye]],[`deberta`,[`DebertaModel`,tt]],[`deberta-v2`,[`DebertaV2Model`,st]],[`mpnet`,[`MPNetModel`,kt]],[`albert`,[`AlbertModel`,Bt]],[`distilbert`,[`DistilBertModel`,pt]],[`roberta`,[`RobertaModel`,mn]],[`xlm`,[`XLMModel`,yn]],[`xlm-roberta`,[`XLMRobertaModel`,wn]],[`clap`,[`ClapModel`,fc]],[`clip`,[`CLIPModel`,nr]],[`clipseg`,[`CLIPSegModel`,pr]],[`chinese_clip`,[`ChineseCLIPModel`,lr]],[`siglip`,[`SiglipModel`,J]],[`jina_clip`,[`JinaCLIPModel`,ur]],[`mobilebert`,[`MobileBertModel`,wt]],[`squeezebert`,[`SqueezeBertModel`,Ft]],[`wav2vec2`,[`Wav2Vec2Model`,hs]],[`wav2vec2-bert`,[`Wav2Vec2BertModel`,Ps]],[`unispeech`,[`UniSpeechModel`,Ts]],[`unispeech-sat`,[`UniSpeechSatModel`,ks]],[`hubert`,[`HubertModel`,Rs]],[`wavlm`,[`WavLMModel`,Hs]],[`audio-spectrogram-transformer`,[`ASTModel`,An]],[`vits`,[`VitsModel`,gc]],[`pyannote`,[`PyAnnoteModel`,bs]],[`wespeaker-resnet`,[`WeSpeakerResNetModel`,Cs]],[`detr`,[`DetrModel`,ka]],[`rt_detr`,[`RTDetrModel`,Fa]],[`rt_detr_v2`,[`RTDetrV2Model`,za]],[`rf_detr`,[`RFDetrModel`,Ua]],[`d_fine`,[`DFineModel`,qa]],[`table-transformer`,[`TableTransformerModel`,Xa]],[`vit`,[`ViTModel`,Gi]],[`ijepa`,[`IJepaModel`,Ji]],[`pvt`,[`PvtModel`,$i]],[`vit_msn`,[`ViTMSNModel`,ia]],[`vit_mae`,[`ViTMAEModel`,na]],[`groupvit`,[`GroupViTModel`,sa]],[`fastvit`,[`FastViTModel`,la]],[`mobilevit`,[`MobileViTModel`,ma]],[`mobilevitv2`,[`MobileViTV2Model`,_a]],[`owlvit`,[`OwlViTModel`,ba]],[`owlv2`,[`Owlv2Model`,Ca]],[`beit`,[`BeitModel`,Ea]],[`deit`,[`DeiTModel`,eo]],[`hiera`,[`HieraModel`,ro]],[`convnext`,[`ConvNextModel`,Bo]],[`convnextv2`,[`ConvNextV2Model`,Uo]],[`dinov2`,[`Dinov2Model`,Ko]],[`dinov2_with_registers`,[`Dinov2WithRegistersModel`,Yo]],[`resnet`,[`ResNetModel`,oo]],[`swin`,[`SwinModel`,lo]],[`swin2sr`,[`Swin2SRModel`,mo]],[`donut-swin`,[`DonutSwinModel`,Ro]],[`yolos`,[`YolosModel`,es]],[`dpt`,[`DPTModel`,_o]],[`glpn`,[`GLPNModel`,Fo]],[`hifigan`,[`SpeechT5HifiGan`,$s]],[`efficientnet`,[`EfficientNetModel`,Tc]],[`decision_transformer`,[`DecisionTransformerModel`,Jc]],[`patchtst`,[`PatchTSTForPrediction`,tl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,il]],[`mobilenet_v1`,[`MobileNetV1Model`,Mc]],[`mobilenet_v2`,[`MobileNetV2Model`,Ic]],[`mobilenet_v3`,[`MobileNetV3Model`,Bc]],[`mobilenet_v4`,[`MobileNetV4Model`,Wc]],[`maskformer`,[`MaskFormerModel`,Mo]],[`mgp-str`,[`MgpstrForSceneTextRecognition`,$c]],[`style_text_to_speech_2`,[`StyleTextToSpeech2Model`,Js]]]),Tl=new Map([[`t5`,[`T5Model`,Gt]],[`longt5`,[`LongT5Model`,Jt]],[`mt5`,[`MT5Model`,Zt]],[`bart`,[`BartModel`,en]],[`mbart`,[`MBartModel`,V]],[`marian`,[`MarianModel`,ls]],[`whisper`,[`WhisperModel`,Nn]],[`m2m_100`,[`M2M100Model`,fs]],[`blenderbot`,[`BlenderbotModel`,ln]],[`blenderbot-small`,[`BlenderbotSmallModel`,fn]]]),El=new Map([[`mimi`,[`MimiModel`,dl]],[`dac`,[`DacModel`,_l]],[`snac`,[`SnacModel`,xl]]]),Dl=new Map([[`bloom`,[`BloomModel`,Ii]],[`jais`,[`JAISModel`,yr]],[`gpt2`,[`GPT2Model`,gr]],[`gptj`,[`GPTJModel`,Or]],[`gpt_bigcode`,[`GPTBigCodeModel`,jr]],[`gpt_neo`,[`GPTNeoModel`,Sr]],[`gpt_neox`,[`GPTNeoXModel`,Tr]],[`codegen`,[`CodeGenModel`,Pr]],[`llama`,[`LlamaModel`,Lr]],[`exaone`,[`ExaoneModel`,Kr]],[`olmo`,[`OlmoModel`,Qr]],[`olmo2`,[`Olmo2Model`,ti]],[`mobilellm`,[`MobileLLMModel`,Yr]],[`granite`,[`GraniteModel`,ii]],[`cohere`,[`CohereModel`,si]],[`gemma`,[`GemmaModel`,ui]],[`gemma2`,[`Gemma2Model`,pi]],[`gemma3_text`,[`Gemma3Model`,gi]],[`helium`,[`HeliumModel`,Br]],[`glm`,[`GlmModel`,Ur]],[`openelm`,[`OpenELMModel`,yi]],[`qwen2`,[`Qwen2Model`,Si]],[`qwen3`,[`Qwen3Model`,Ti]],[`phi`,[`PhiModel`,Ai]],[`phi3`,[`Phi3Model`,Ni]],[`mpt`,[`MptModel`,zi]],[`opt`,[`OPTModel`,Hi]],[`mistral`,[`MistralModel`,rc]],[`starcoder2`,[`Starcoder2Model`,oc]],[`falcon`,[`FalconModel`,lc]],[`stablelm`,[`StableLmModel`,Sc]]]),Ol=new Map([[`speecht5`,[`SpeechT5ForSpeechToText`,Zs]],[`whisper`,[`WhisperForConditionalGeneration`,Pn]],[`lite-whisper`,[`LiteWhisperForConditionalGeneration`,Fn]],[`moonshine`,[`MoonshineForConditionalGeneration`,Rn]]]),kl=new Map([[`speecht5`,[`SpeechT5ForTextToSpeech`,Qs]]]),Al=new Map([[`vits`,[`VitsModel`,gc]],[`musicgen`,[`MusicgenForConditionalGeneration`,Ac]]]),jl=new Map([[`bert`,[`BertForSequenceClassification`,ve]],[`neobert`,[`NeoBertForSequenceClassification`,Ce]],[`modernbert`,[`ModernBertForSequenceClassification`,ke]],[`roformer`,[`RoFormerForSequenceClassification`,Fe]],[`electra`,[`ElectraForSequenceClassification`,Ge]],[`esm`,[`EsmForSequenceClassification`,xt]],[`convbert`,[`ConvBertForSequenceClassification`,z]],[`camembert`,[`CamembertForSequenceClassification`,Ze]],[`deberta`,[`DebertaForSequenceClassification`,rt]],[`deberta-v2`,[`DebertaV2ForSequenceClassification`,lt]],[`mpnet`,[`MPNetForSequenceClassification`,jt]],[`albert`,[`AlbertForSequenceClassification`,Vt]],[`distilbert`,[`DistilBertForSequenceClassification`,mt]],[`roberta`,[`RobertaForSequenceClassification`,U]],[`xlm`,[`XLMForSequenceClassification`,bn]],[`xlm-roberta`,[`XLMRobertaForSequenceClassification`,En]],[`bart`,[`BartForSequenceClassification`,nn]],[`mbart`,[`MBartForSequenceClassification`,on]],[`mobilebert`,[`MobileBertForSequenceClassification`,Et]],[`squeezebert`,[`SqueezeBertForSequenceClassification`,Lt]]]),Ml=new Map([[`bert`,[`BertForTokenClassification`,L]],[`neobert`,[`NeoBertForTokenClassification`,we]],[`modernbert`,[`ModernBertForTokenClassification`,Ae]],[`roformer`,[`RoFormerForTokenClassification`,Ie]],[`electra`,[`ElectraForTokenClassification`,Ke]],[`esm`,[`EsmForTokenClassification`,St]],[`convbert`,[`ConvBertForTokenClassification`,Ve]],[`camembert`,[`CamembertForTokenClassification`,Qe]],[`deberta`,[`DebertaForTokenClassification`,it]],[`deberta-v2`,[`DebertaV2ForTokenClassification`,ut]],[`mpnet`,[`MPNetForTokenClassification`,Mt]],[`distilbert`,[`DistilBertForTokenClassification`,ht]],[`roberta`,[`RobertaForTokenClassification`,gn]],[`xlm`,[`XLMForTokenClassification`,xn]],[`xlm-roberta`,[`XLMRobertaForTokenClassification`,Dn]]]),Nl=new Map([[`t5`,[`T5ForConditionalGeneration`,Kt]],[`longt5`,[`LongT5ForConditionalGeneration`,Yt]],[`mt5`,[`MT5ForConditionalGeneration`,Qt]],[`bart`,[`BartForConditionalGeneration`,tn]],[`mbart`,[`MBartForConditionalGeneration`,an]],[`marian`,[`MarianMTModel`,us]],[`m2m_100`,[`M2M100ForConditionalGeneration`,ps]],[`blenderbot`,[`BlenderbotForConditionalGeneration`,un]],[`blenderbot-small`,[`BlenderbotSmallForConditionalGeneration`,H]]]),Pl=new Map([[`bloom`,[`BloomForCausalLM`,Li]],[`gpt2`,[`GPT2LMHeadModel`,_r]],[`jais`,[`JAISLMHeadModel`,br]],[`gptj`,[`GPTJForCausalLM`,kr]],[`gpt_bigcode`,[`GPTBigCodeForCausalLM`,Mr]],[`gpt_neo`,[`GPTNeoForCausalLM`,Cr]],[`gpt_neox`,[`GPTNeoXForCausalLM`,Er]],[`codegen`,[`CodeGenForCausalLM`,Fr]],[`llama`,[`LlamaForCausalLM`,Rr]],[`exaone`,[`ExaoneForCausalLM`,qr]],[`olmo`,[`OlmoForCausalLM`,$r]],[`olmo2`,[`Olmo2ForCausalLM`,ni]],[`mobilellm`,[`MobileLLMForCausalLM`,Xr]],[`granite`,[`GraniteForCausalLM`,ai]],[`cohere`,[`CohereForCausalLM`,ci]],[`gemma`,[`GemmaForCausalLM`,di]],[`gemma2`,[`Gemma2ForCausalLM`,mi]],[`gemma3_text`,[`Gemma3ForCausalLM`,_i]],[`helium`,[`HeliumForCausalLM`,Vr]],[`glm`,[`GlmForCausalLM`,Wr]],[`openelm`,[`OpenELMForCausalLM`,bi]],[`qwen2`,[`Qwen2ForCausalLM`,Ci]],[`qwen3`,[`Qwen3ForCausalLM`,Ei]],[`phi`,[`PhiForCausalLM`,ji]],[`phi3`,[`Phi3ForCausalLM`,Pi]],[`mpt`,[`MptForCausalLM`,Bi]],[`opt`,[`OPTForCausalLM`,Ui]],[`mbart`,[`MBartForCausalLM`,sn]],[`mistral`,[`MistralForCausalLM`,ic]],[`starcoder2`,[`Starcoder2ForCausalLM`,sc]],[`falcon`,[`FalconForCausalLM`,uc]],[`trocr`,[`TrOCRForCausalLM`,tc]],[`stablelm`,[`StableLmForCausalLM`,Cc]],[`phi3_v`,[`Phi3VForCausalLM`,G]]]),Fl=new Map([[`multi_modality`,[`MultiModalityCausalLM`,Xc]]]),Il=new Map([[`bert`,[`BertForMaskedLM`,_e]],[`neobert`,[`NeoBertForMaskedLM`,Se]],[`modernbert`,[`ModernBertForMaskedLM`,Oe]],[`roformer`,[`RoFormerForMaskedLM`,Pe]],[`electra`,[`ElectraForMaskedLM`,We]],[`esm`,[`EsmForMaskedLM`,bt]],[`convbert`,[`ConvBertForMaskedLM`,Be]],[`camembert`,[`CamembertForMaskedLM`,Xe]],[`deberta`,[`DebertaForMaskedLM`,nt]],[`deberta-v2`,[`DebertaV2ForMaskedLM`,ct]],[`mpnet`,[`MPNetForMaskedLM`,At]],[`albert`,[`AlbertForMaskedLM`,Ut]],[`distilbert`,[`DistilBertForMaskedLM`,_t]],[`roberta`,[`RobertaForMaskedLM`,hn]],[`xlm`,[`XLMWithLMHeadModel`,W]],[`xlm-roberta`,[`XLMRobertaForMaskedLM`,Tn]],[`mobilebert`,[`MobileBertForMaskedLM`,Tt]],[`squeezebert`,[`SqueezeBertForMaskedLM`,It]]]),Ll=new Map([[`bert`,[`BertForQuestionAnswering`,ye]],[`neobert`,[`NeoBertForQuestionAnswering`,Te]],[`roformer`,[`RoFormerForQuestionAnswering`,Le]],[`electra`,[`ElectraForQuestionAnswering`,qe]],[`convbert`,[`ConvBertForQuestionAnswering`,He]],[`camembert`,[`CamembertForQuestionAnswering`,$e]],[`deberta`,[`DebertaForQuestionAnswering`,at]],[`deberta-v2`,[`DebertaV2ForQuestionAnswering`,dt]],[`mpnet`,[`MPNetForQuestionAnswering`,Nt]],[`albert`,[`AlbertForQuestionAnswering`,Ht]],[`distilbert`,[`DistilBertForQuestionAnswering`,gt]],[`roberta`,[`RobertaForQuestionAnswering`,_n]],[`xlm`,[`XLMForQuestionAnswering`,Sn]],[`xlm-roberta`,[`XLMRobertaForQuestionAnswering`,On]],[`mobilebert`,[`MobileBertForQuestionAnswering`,Dt]],[`squeezebert`,[`SqueezeBertForQuestionAnswering`,Rt]]]),Rl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,zn]],[`idefics3`,[`Idefics3ForConditionalGeneration`,Qn]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,$n]]]),zl=new Map([[`llava`,[`LlavaForConditionalGeneration`,Vn]],[`llava_onevision`,[`LlavaOnevisionForConditionalGeneration`,Hn]],[`moondream1`,[`Moondream1ForConditionalGeneration`,Un]],[`florence2`,[`Florence2ForConditionalGeneration`,Gn]],[`qwen2-vl`,[`Qwen2VLForConditionalGeneration`,Oi]],[`idefics3`,[`Idefics3ForConditionalGeneration`,Qn]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,$n]],[`paligemma`,[`PaliGemmaForConditionalGeneration`,qn]],[`llava_qwen2`,[`LlavaQwen2ForCausalLM`,Jn]],[`gemma3n`,[`Gemma3nForConditionalGeneration`,Xn]]]),Bl=new Map([[`ultravox`,[`UltravoxModel`,sl]]]),Vl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,zn]]]),Hl=new Map([[`vit`,[`ViTForImageClassification`,Ki]],[`ijepa`,[`IJepaForImageClassification`,Yi]],[`pvt`,[`PvtForImageClassification`,ea]],[`vit_msn`,[`ViTMSNForImageClassification`,aa]],[`fastvit`,[`FastViTForImageClassification`,ua]],[`mobilevit`,[`MobileViTForImageClassification`,ha]],[`mobilevitv2`,[`MobileViTV2ForImageClassification`,va]],[`beit`,[`BeitForImageClassification`,Da]],[`deit`,[`DeiTForImageClassification`,to]],[`hiera`,[`HieraForImageClassification`,io]],[`convnext`,[`ConvNextForImageClassification`,Vo]],[`convnextv2`,[`ConvNextV2ForImageClassification`,Wo]],[`dinov2`,[`Dinov2ForImageClassification`,qo]],[`dinov2_with_registers`,[`Dinov2WithRegistersForImageClassification`,Xo]],[`resnet`,[`ResNetForImageClassification`,so]],[`swin`,[`SwinForImageClassification`,uo]],[`segformer`,[`SegformerForImageClassification`,yc]],[`efficientnet`,[`EfficientNetForImageClassification`,Ec]],[`mobilenet_v1`,[`MobileNetV1ForImageClassification`,Nc]],[`mobilenet_v2`,[`MobileNetV2ForImageClassification`,Lc]],[`mobilenet_v3`,[`MobileNetV3ForImageClassification`,Vc]],[`mobilenet_v4`,[`MobileNetV4ForImageClassification`,Gc]]]),Ul=new Map([[`detr`,[`DetrForObjectDetection`,Aa]],[`rt_detr`,[`RTDetrForObjectDetection`,Ia]],[`rt_detr_v2`,[`RTDetrV2ForObjectDetection`,Ba]],[`rf_detr`,[`RFDetrForObjectDetection`,Wa]],[`d_fine`,[`DFineForObjectDetection`,Ja]],[`table-transformer`,[`TableTransformerForObjectDetection`,Za]],[`yolos`,[`YolosForObjectDetection`,ts]]]),Wl=new Map([[`owlvit`,[`OwlViTForObjectDetection`,xa]],[`owlv2`,[`Owlv2ForObjectDetection`,wa]],[`grounding-dino`,[`GroundingDinoForObjectDetection`,Qo]]]),Gl=new Map([[`detr`,[`DetrForSegmentation`,ja]],[`clipseg`,[`CLIPSegForImageSegmentation`,mr]]]),Kl=new Map([[`segformer`,[`SegformerForSemanticSegmentation`,bc]],[`sapiens`,[`SapiensForSemanticSegmentation`,So]],[`swin`,[`SwinForSemanticSegmentation`,fo]],[`mobilenet_v1`,[`MobileNetV1ForSemanticSegmentation`,Pc]],[`mobilenet_v2`,[`MobileNetV2ForSemanticSegmentation`,Rc]],[`mobilenet_v3`,[`MobileNetV3ForSemanticSegmentation`,Hc]],[`mobilenet_v4`,[`MobileNetV4ForSemanticSegmentation`,Kc]]]),ql=new Map([[`detr`,[`DetrForSegmentation`,ja]],[`maskformer`,[`MaskFormerForInstanceSegmentation`,No]]]),Jl=new Map([[`sam`,[`SamModel`,os]]]),Yl=new Map([[`wav2vec2`,[`Wav2Vec2ForCTC`,gs]],[`wav2vec2-bert`,[`Wav2Vec2BertForCTC`,Fs]],[`unispeech`,[`UniSpeechForCTC`,Es]],[`unispeech-sat`,[`UniSpeechSatForCTC`,As]],[`wavlm`,[`WavLMForCTC`,Us]],[`hubert`,[`HubertForCTC`,zs]]]),Xl=new Map([[`wav2vec2`,[`Wav2Vec2ForSequenceClassification`,_s]],[`wav2vec2-bert`,[`Wav2Vec2BertForSequenceClassification`,Is]],[`unispeech`,[`UniSpeechForSequenceClassification`,Ds]],[`unispeech-sat`,[`UniSpeechSatForSequenceClassification`,js]],[`wavlm`,[`WavLMForSequenceClassification`,Ws]],[`hubert`,[`HubertForSequenceClassification`,Bs]],[`audio-spectrogram-transformer`,[`ASTForAudioClassification`,jn]]]),Zl=new Map([[`wavlm`,[`WavLMForXVector`,Gs]]]),Ql=new Map([[`unispeech-sat`,[`UniSpeechSatForAudioFrameClassification`,Ms]],[`wavlm`,[`WavLMForAudioFrameClassification`,Ks]],[`wav2vec2`,[`Wav2Vec2ForAudioFrameClassification`,vs]],[`pyannote`,[`PyAnnoteForAudioFrameClassification`,xs]]]),$l=new Map([[`vitmatte`,[`VitMatteForImageMatting`,fa]]]),eu=new Map([[`patchtst`,[`PatchTSTForPrediction`,nl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,al]]]),tu=new Map([[`swin2sr`,[`Swin2SRForImageSuperResolution`,ho]]]),nu=new Map([[`dpt`,[`DPTForDepthEstimation`,vo]],[`depth_anything`,[`DepthAnythingForDepthEstimation`,bo]],[`glpn`,[`GLPNForDepthEstimation`,Io]],[`sapiens`,[`SapiensForDepthEstimation`,Co]],[`depth_pro`,[`DepthProForDepthEstimation`,Eo]],[`metric3d`,[`Metric3DForDepthEstimation`,Oo]],[`metric3dv2`,[`Metric3Dv2ForDepthEstimation`,Ao]]]),ru=new Map([[`sapiens`,[`SapiensForNormalEstimation`,wo]]]),iu=new Map([[`vitpose`,[`VitPoseForPoseEstimation`,Zi]]]),au=new Map([[`clip`,[`CLIPVisionModelWithProjection`,ar]],[`siglip`,[`SiglipVisionModel`,sr]],[`jina_clip`,[`JinaCLIPVisionModel`,fr]]]),ou=[[wl,b.EncoderOnly],[Tl,b.EncoderDecoder],[Dl,b.DecoderOnly],[El,b.AutoEncoder],[jl,b.EncoderOnly],[Ml,b.EncoderOnly],[Nl,b.Seq2Seq],[Ol,b.Seq2Seq],[Pl,b.DecoderOnly],[Fl,b.MultiModality],[Il,b.EncoderOnly],[Ll,b.EncoderOnly],[Rl,b.Vision2Seq],[zl,b.ImageTextToText],[Bl,b.AudioTextToText],[Hl,b.EncoderOnly],[Gl,b.EncoderOnly],[ql,b.EncoderOnly],[Kl,b.EncoderOnly],[$l,b.EncoderOnly],[eu,b.EncoderOnly],[tu,b.EncoderOnly],[nu,b.EncoderOnly],[ru,b.EncoderOnly],[iu,b.EncoderOnly],[Ul,b.EncoderOnly],[Wl,b.EncoderOnly],[Jl,b.MaskGeneration],[Yl,b.EncoderOnly],[Xl,b.EncoderOnly],[kl,b.Seq2Seq],[Al,b.EncoderOnly],[Zl,b.EncoderOnly],[Ql,b.EncoderOnly],[au,b.EncoderOnly]];for(let[e,t]of ou)for(let[n,r]of e.values())x.set(n,t),C.set(r,n),S.set(n,r);let su=[[`MusicgenForConditionalGeneration`,Ac,b.Musicgen],[`Phi3VForCausalLM`,G,b.Phi3V],[`CLIPTextModelWithProjection`,ir,b.EncoderOnly],[`SiglipTextModel`,or,b.EncoderOnly],[`JinaCLIPTextModel`,dr,b.EncoderOnly],[`ClapTextModelWithProjection`,pc,b.EncoderOnly],[`ClapAudioModelWithProjection`,mc,b.EncoderOnly],[`DacEncoderModel`,vl,b.EncoderOnly],[`DacDecoderModel`,yl,b.EncoderOnly],[`MimiEncoderModel`,fl,b.EncoderOnly],[`MimiDecoderModel`,pl,b.EncoderOnly],[`SnacEncoderModel`,Sl,b.EncoderOnly],[`SnacDecoderModel`,Cl,b.EncoderOnly],[`Gemma3nForConditionalGeneration`,Xn,b.ImageAudioTextToText]];for(let[e,t,n]of su)x.set(e,n),C.set(t,e),S.set(e,t);let cu=new Map([[`modnet`,Gl],[`birefnet`,Gl],[`isnet`,Gl],[`ben`,Gl]]);for(let[e,t]of cu.entries())t.set(e,[`PreTrainedModel`,I]),x.set(e,b.EncoderOnly),C.set(I,e),S.set(e,I);class lu extends Z{static MODEL_CLASS_MAPPINGS=ou.map(e=>e[0]);static BASE_IF_FAIL=!0}class uu extends Z{static MODEL_CLASS_MAPPINGS=[jl]}class du extends Z{static MODEL_CLASS_MAPPINGS=[Ml]}class fu extends Z{static MODEL_CLASS_MAPPINGS=[Nl]}class pu extends Z{static MODEL_CLASS_MAPPINGS=[Ol]}class mu extends Z{static MODEL_CLASS_MAPPINGS=[kl]}class hu extends Z{static MODEL_CLASS_MAPPINGS=[Al]}class gu extends Z{static MODEL_CLASS_MAPPINGS=[Pl]}class _u extends Z{static MODEL_CLASS_MAPPINGS=[Il]}class vu extends Z{static MODEL_CLASS_MAPPINGS=[Ll]}class yu extends Z{static MODEL_CLASS_MAPPINGS=[Rl]}class bu extends Z{static MODEL_CLASS_MAPPINGS=[Hl]}class xu extends Z{static MODEL_CLASS_MAPPINGS=[Gl]}class Su extends Z{static MODEL_CLASS_MAPPINGS=[Kl]}class Cu extends Z{static MODEL_CLASS_MAPPINGS=[ql]}class wu extends Z{static MODEL_CLASS_MAPPINGS=[Ul]}class Tu extends Z{static MODEL_CLASS_MAPPINGS=[Wl]}class Eu extends Z{static MODEL_CLASS_MAPPINGS=[Jl]}class Du extends Z{static MODEL_CLASS_MAPPINGS=[Yl]}class Ou extends Z{static MODEL_CLASS_MAPPINGS=[Xl]}class ku extends Z{static MODEL_CLASS_MAPPINGS=[Zl]}class Au extends Z{static MODEL_CLASS_MAPPINGS=[Ql]}class ju extends Z{static MODEL_CLASS_MAPPINGS=[Vl]}class Mu extends Z{static MODEL_CLASS_MAPPINGS=[$l]}class Nu extends Z{static MODEL_CLASS_MAPPINGS=[tu]}class Pu extends Z{static MODEL_CLASS_MAPPINGS=[nu]}class Fu extends Z{static MODEL_CLASS_MAPPINGS=[ru]}class Iu extends Z{static MODEL_CLASS_MAPPINGS=[iu]}class Lu extends Z{static MODEL_CLASS_MAPPINGS=[au]}class Ru extends Z{static MODEL_CLASS_MAPPINGS=[zl]}class zu extends Z{static MODEL_CLASS_MAPPINGS=[Bl]}class Bu extends pe{constructor({logits:e,past_key_values:t,encoder_outputs:n,decoder_attentions:r=null,cross_attentions:i=null}){super(),this.logits=e,this.past_key_values=t,this.encoder_outputs=n,this.decoder_attentions=r,this.cross_attentions=i}}class Q extends pe{constructor({logits:e,...t}){super(),this.logits=e;let n=Object.values(t);n.length>0&&(this.attentions=n)}}class Vu extends pe{constructor({logits:e,embeddings:t}){super(),this.logits=e,this.embeddings=t}}class Hu extends pe{constructor({logits:e}){super(),this.logits=e}}class Uu extends pe{constructor({logits:e}){super(),this.logits=e}}class Wu extends pe{constructor({start_logits:e,end_logits:t}){super(),this.start_logits=e,this.end_logits=t}}class Gu extends pe{constructor({logits:e}){super(),this.logits=e}}class Ku extends pe{constructor({logits:e,past_key_values:t}){super(),this.logits=e,this.past_key_values=t}}class qu extends pe{constructor({alphas:e}){super(),this.alphas=e}}class Ju extends pe{constructor({waveform:e,spectrogram:t}){super(),this.waveform=e,this.spectrogram=t}}},"./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hann`,{periodic:!1}),this.mean=this.config.mean,this.std=this.config.std}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e){(0,r.validate_audio_inputs)(e,`ASTFeatureExtractor`);let t=await this._extract_fbank_features(e,this.config.max_length);if(this.config.do_normalize){let e=this.std*2,n=t.data;for(let t=0;t{n.r(t),n.d(t,{AutoFeatureExtractor:()=>s});var r=n( +/*! ../../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../../utils/hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),o=n( +/*! ../feature_extractors.js */ +`./src/models/feature_extractors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t),a=n.feature_extractor_type,s=o[a];if(!s)throw Error(`Unknown feature_extractor_type: '${a}'. Please report this at ${r.GITHUB_ISSUE_URL}.`);return new s(n)}}},"./src/models/auto/image_processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoImageProcessor:()=>s});var r=n( +/*! ../../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../../utils/hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),o=n( +/*! ../image_processors.js */ +`./src/models/image_processors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),s=n.image_processor_type??n.feature_extractor_type,c=o[s?.replace(/Fast$/,``)];return c||(s!==void 0&&console.warn(`Image processor type '${s}' not found, assuming base ImageProcessor. Please report this at ${r.GITHUB_ISSUE_URL}.`),c=a.ImageProcessor),new c(n)}}},"./src/models/auto/processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoProcessor:()=>l});var r=n( +/*! ../../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../../utils/hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),o=n( +/*! ../processors.js */ +`./src/models/processors.js`),s=n( +/*! ../image_processors.js */ +`./src/models/image_processors.js`),c=n( +/*! ../feature_extractors.js */ +`./src/models/feature_extractors.js`);class l{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),{image_processor_type:l,feature_extractor_type:u,processor_class:d}=n;if(d&&o[d])return o[d].from_pretrained(e,t);if(!l&&!u)throw Error("No `image_processor_type` or `feature_extractor_type` found in the config.");let f={};if(l){let e=s[l.replace(/Fast$/,``)];if(!e)throw Error(`Unknown image_processor_type: '${l}'.`);f.image_processor=new e(n)}if(u){let e=s[u];if(e)f.image_processor=new e(n);else{let e=c[u];if(!e)throw Error(`Unknown feature_extractor_type: '${u}'.`);f.feature_extractor=new e(n)}}let p={};return new a.Processor(p,f,null)}}},"./src/models/beit/image_processing_beit.js":(e,t,n)=>{n.r(t),n.d(t,{BeitFeatureExtractor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/bit/image_processing_bit.js":(e,t,n)=>{n.r(t),n.d(t,{BitImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/chinese_clip/image_processing_chinese_clip.js":(e,t,n)=>{n.r(t),n.d(t,{ChineseCLIPFeatureExtractor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/clap/feature_extraction_clap.js":(e,t,n)=>{n.r(t),n.d(t,{ClapFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e),this.mel_filters=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,null,`htk`),this.mel_filters_slaney=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,`slaney`,`slaney`),this.window=(0,a.window_function)(this.config.fft_window_size,`hann`)}async _get_input_mel(e,t,n,r){let i,a=!1,o=e.length-t;if(o>0)if(n===`rand_trunc`){a=!0;let n=Math.floor(Math.random()*(o+1));e=e.subarray(n,n+t),i=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}else throw Error(`Truncation strategy "${n}" not implemented`);else{if(o<0){let n=new Float64Array(t);if(n.set(e),r===`repeat`)for(let r=e.length;r{n.r(t),n.d(t,{CLIPFeatureExtractor:()=>a,CLIPImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/convnext/image_processing_convnext.js":(e,t,n)=>{n.r(t),n.d(t,{ConvNextFeatureExtractor:()=>a,ConvNextImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.crop_pct=this.config.crop_pct??224/256}async resize(e){let t=this.size?.shortest_edge;if(t===void 0)throw Error(`Size dictionary must contain 'shortest_edge' key.`);if(t<384){let n=Math.floor(t/this.crop_pct),[r,i]=this.get_resize_output_image_size(e,{shortest_edge:n});e=await e.resize(r,i,{resample:this.resample}),e=await e.center_crop(t,t)}else e=await e.resize(t,t,{resample:this.resample});return e}}class a extends i{}},"./src/models/dac/feature_extraction_dac.js":(e,t,n)=>{n.r(t),n.d(t,{DacFeatureExtractor:()=>i});var r=n( +/*! ../encodec/feature_extraction_encodec.js */ +`./src/models/encodec/feature_extraction_encodec.js`);class i extends r.EncodecFeatureExtractor{}},"./src/models/deit/image_processing_deit.js":(e,t,n)=>{n.r(t),n.d(t,{DeiTFeatureExtractor:()=>a,DeiTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/detr/image_processing_detr.js":(e,t,n)=>{n.r(t),n.d(t,{DetrFeatureExtractor:()=>o,DetrImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=[t.pixel_values.dims[0],64,64],r=(0,i.full)(n,1n);return{...t,pixel_mask:r}}post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class o extends a{}},"./src/models/donut/image_processing_donut.js":(e,t,n)=>{n.r(t),n.d(t,{DonutFeatureExtractor:()=>a,DonutImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t,s=this.image_mean;Array.isArray(this.image_mean)||(s=Array(o).fill(s));let c=this.image_std;Array.isArray(c)||(c=Array(o).fill(s));let l=s.map((e,t)=>-e/c[t]);return super.pad_image(e,t,n,{center:!0,constant_values:l,...r})}}class a extends i{}},"./src/models/dpt/image_processing_dpt.js":(e,t,n)=>{n.r(t),n.d(t,{DPTFeatureExtractor:()=>a,DPTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/efficientnet/image_processing_efficientnet.js":(e,t,n)=>{n.r(t),n.d(t,{EfficientNetImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.include_top=this.config.include_top??!0,this.include_top&&(this.image_std=this.image_std.map(e=>e*e))}}},"./src/models/encodec/feature_extraction_encodec.js":(e,t,n)=>{n.r(t),n.d(t,{EncodecFeatureExtractor:()=>a});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`EncodecFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=this.config.feature_size;if(e.length%t!==0)throw Error(`The length of the audio data must be a multiple of the number of channels (${t}).`);let n=[1,t,e.length/t];return{input_values:new i.Tensor(`float32`,e,n)}}}},"./src/models/feature_extractors.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>r.ASTFeatureExtractor,ClapFeatureExtractor:()=>a.ClapFeatureExtractor,DacFeatureExtractor:()=>o.DacFeatureExtractor,EncodecFeatureExtractor:()=>i.EncodecFeatureExtractor,Gemma3nAudioFeatureExtractor:()=>s.Gemma3nAudioFeatureExtractor,ImageFeatureExtractor:()=>g.ImageProcessor,MoonshineFeatureExtractor:()=>c.MoonshineFeatureExtractor,PyAnnoteFeatureExtractor:()=>l.PyAnnoteFeatureExtractor,SeamlessM4TFeatureExtractor:()=>u.SeamlessM4TFeatureExtractor,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SpeechT5FeatureExtractor:()=>f.SpeechT5FeatureExtractor,Wav2Vec2FeatureExtractor:()=>p.Wav2Vec2FeatureExtractor,WeSpeakerFeatureExtractor:()=>m.WeSpeakerFeatureExtractor,WhisperFeatureExtractor:()=>h.WhisperFeatureExtractor});var r=n( +/*! ./audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js */ +`./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js`),i=n( +/*! ./encodec/feature_extraction_encodec.js */ +`./src/models/encodec/feature_extraction_encodec.js`),a=n( +/*! ./clap/feature_extraction_clap.js */ +`./src/models/clap/feature_extraction_clap.js`),o=n( +/*! ./dac/feature_extraction_dac.js */ +`./src/models/dac/feature_extraction_dac.js`),s=n( +/*! ./gemma3n/feature_extraction_gemma3n.js */ +`./src/models/gemma3n/feature_extraction_gemma3n.js`),c=n( +/*! ./moonshine/feature_extraction_moonshine.js */ +`./src/models/moonshine/feature_extraction_moonshine.js`),l=n( +/*! ./pyannote/feature_extraction_pyannote.js */ +`./src/models/pyannote/feature_extraction_pyannote.js`),u=n( +/*! ./seamless_m4t/feature_extraction_seamless_m4t.js */ +`./src/models/seamless_m4t/feature_extraction_seamless_m4t.js`),d=n( +/*! ./snac/feature_extraction_snac.js */ +`./src/models/snac/feature_extraction_snac.js`),f=n( +/*! ./speecht5/feature_extraction_speecht5.js */ +`./src/models/speecht5/feature_extraction_speecht5.js`),p=n( +/*! ./wav2vec2/feature_extraction_wav2vec2.js */ +`./src/models/wav2vec2/feature_extraction_wav2vec2.js`),m=n( +/*! ./wespeaker/feature_extraction_wespeaker.js */ +`./src/models/wespeaker/feature_extraction_wespeaker.js`),h=n( +/*! ./whisper/feature_extraction_whisper.js */ +`./src/models/whisper/feature_extraction_whisper.js`),g=n( +/*! ../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`)},"./src/models/florence2/processing_florence2.js":(e,t,n)=>{n.r(t),n.d(t,{Florence2Processor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;constructor(e,t,n){super(e,t,n);let{tasks_answer_post_processing_type:r,task_prompts_without_inputs:i,task_prompts_with_input:a}=this.image_processor.config;this.tasks_answer_post_processing_type=new Map(Object.entries(r??{})),this.task_prompts_without_inputs=new Map(Object.entries(i??{})),this.task_prompts_with_input=new Map(Object.entries(a??{})),this.regexes={quad_boxes:/(.+?)/gm,bboxes:/([^<]+)?/gm},this.size_per_bin=1e3}construct_prompts(e){typeof e==`string`&&(e=[e]);let t=[];for(let n of e)if(this.task_prompts_without_inputs.has(n))t.push(this.task_prompts_without_inputs.get(n));else{for(let[e,r]of this.task_prompts_with_input)if(n.includes(e)){t.push(r.replaceAll(`{input}`,n).replaceAll(e,``));break}t.length!==e.length&&t.push(n)}return t}post_process_generation(e,t,n){let r=this.tasks_answer_post_processing_type.get(t)??`pure_text`;e=e.replaceAll(``,``).replaceAll(``,``);let i;switch(r){case`pure_text`:i=e;break;case`description_with_bboxes`:case`bboxes`:case`phrase_grounding`:case`ocr`:let a=r===`ocr`?`quad_boxes`:`bboxes`,o=e.matchAll(this.regexes[a]),s=[],c=[];for(let[e,t,...r]of o)s.push(t?t.trim():s.at(-1)??``),c.push(r.map((e,t)=>(Number(e)+.5)/this.size_per_bin*n[t%2]));i={labels:s,[a]:c};break;default:throw Error(`Task "${t}" (of type "${r}") not yet implemented.`)}return{[t]:i}}async _call(e,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=await this.image_processor(e,n),i=t?this.tokenizer(this.construct_prompts(t),n):{};return{...r,...i}}}},"./src/models/gemma3n/feature_extraction_gemma3n.js":(e,t,n)=>{n.r(t),n.d(t,{Gemma3nAudioFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let{fft_length:t,feature_size:n,min_frequency:r,max_frequency:i,sampling_rate:o,frame_length:s}=this.config,c=(0,a.mel_filter_bank)(Math.floor(1+t/2),n,r,i,o,null,`htk`,!1);this.mel_filters=c,this.window=(0,a.window_function)(s,`hann`)}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,this.config.frame_length,this.config.hop_length,{fft_length:this.config.fft_length,center:!1,onesided:!0,preemphasis:this.config.preemphasis,preemphasis_htk_flavor:this.config.preemphasis_htk_flavor,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:this.config.mel_floor,remove_dc_offset:!1,transpose:!0})}async _call(e,{max_length:t=48e4,truncation:n=!0,padding:a=!0,pad_to_multiple_of:o=128}={}){if((0,r.validate_audio_inputs)(e,`Gemma3nAudioFeatureExtractor`),n&&e.length>t&&(e=e.slice(0,t)),a&&e.length%o!==0){let t=o-e.length%o,n=new Float64Array(e.length+t);n.set(e),this.config.padding_value!==0&&n.fill(this.config.padding_value,e.length),e=n}let s=await this._extract_fbank_features(e,this.config.max_length),c=(0,i.full)([1,s.dims[0]],!0);return{input_features:s.unsqueeze_(0),input_features_mask:c}}}},"./src/models/gemma3n/processing_gemma3n.js":(e,t,n)=>{n.r(t),n.d(t,{Gemma3nProcessor:()=>l});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),o=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),s=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`),c=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class l extends r.Processor{static image_processor_class=i.AutoImageProcessor;static feature_extractor_class=a.AutoFeatureExtractor;static tokenizer_class=o.AutoTokenizer;static uses_processor_config=!0;static uses_chat_template_file=!0;constructor(e,t,n){super(e,t,n),this.audio_seq_length=this.config.audio_seq_length,this.image_seq_length=this.config.image_seq_length;let{audio_token_id:r,boa_token:i,audio_token:a,eoa_token:o,image_token_id:s,boi_token:c,image_token:l,eoi_token:u}=this.tokenizer.config;this.audio_token_id=r,this.boa_token=i,this.audio_token=a;let d=a.repeat(this.audio_seq_length);this.full_audio_sequence=`\n\n${i}${d}${o}\n\n`,this.image_token_id=s,this.boi_token=c,this.image_token=l;let f=l.repeat(this.image_seq_length);this.full_image_sequence=`\n\n${c}${f}${u}\n\n`}async _call(e,t=null,n=null,r={}){typeof e==`string`&&(e=[e]);let i;n&&(i=await this.feature_extractor(n,r),e=e.map(e=>e.replaceAll(this.audio_token,this.full_audio_sequence)));let a;t&&(a=await this.image_processor(t,r),e=e.map(e=>e.replaceAll(this.image_token,this.full_image_sequence)));let o=this.tokenizer(e,r);return{...o,...a,...i}}}},"./src/models/glpn/image_processing_glpn.js":(e,t,n)=>{n.r(t),n.d(t,{GLPNFeatureExtractor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/grounding_dino/image_processing_grounding_dino.js":(e,t,n)=>{n.r(t),n.d(t,{GroundingDinoImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=t.pixel_values.dims,r=(0,i.ones)([n[0],n[2],n[3]]);return{...t,pixel_mask:r}}}},"./src/models/grounding_dino/processing_grounding_dino.js":(e,t,n)=>{n.r(t),n.d(t,{GroundingDinoProcessor:()=>c});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);function s(e,t){let n=0,r=e.dims.at(-1)-1,i=e.tolist();i.fill(!1,0,n+1),i.fill(!1,r);let a=t.tolist();return i.map((e,t)=>e?t:null).filter(e=>e!==null).map(e=>a[e])}class c extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;async _call(e,t,n={}){let r=e?await this.image_processor(e,n):{},i=t?this.tokenizer(t,n):{};return{...i,...r}}post_process_grounded_object_detection(e,t,{box_threshold:n=.25,text_threshold:r=.25,target_sizes:i=null}={}){let{logits:a,pred_boxes:c}=e,l=a.dims[0];if(i!==null&&i.length!==l)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let u=a.dims.at(1),d=a.sigmoid(),f=d.max(-1).tolist(),p=c.tolist().map(e=>e.map(e=>(0,o.center_to_corners_format)(e))),m=[];for(let e=0;ee.map((e,t)=>e*a[(t+1)%2])));let o=f[e],c=[],l=[],h=[];for(let i=0;i{n.r(t),n.d(t,{Idefics3ImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{constructor(e){super(e),this.do_image_splitting=e.do_image_splitting??!0,this.max_image_size=e.max_image_size}get_resize_for_vision_encoder(e,t){let[n,r]=e.dims.slice(-2),i=r/n;return r>=n?(r=Math.ceil(r/t)*t,n=Math.floor(r/i),n=Math.ceil(n/t)*t):(n=Math.ceil(n/t)*t,r=Math.floor(n*i),r=Math.ceil(r/t)*t),{height:n,width:r}}async _call(e,{do_image_splitting:t=null,return_row_col_info:n=!1}={}){let r;if(!Array.isArray(e))r=[[e]];else{if(e.length===0||!e[0])throw Error(`No images provided.`);r=Array.isArray(e[0])?e:[e]}let a=[],o=[],s=[],c=[],l=[];for(let e of r){let n=await Promise.all(e.map(e=>this.preprocess(e)));c.push(...n.map(e=>e.original_size)),l.push(...n.map(e=>e.reshaped_input_size)),n.forEach(e=>e.pixel_values.unsqueeze_(0));let{longest_edge:r}=this.max_image_size,u;if(t??this.do_image_splitting){let e=Array(n.length),t=Array(n.length);u=await Promise.all(n.map(async(n,a)=>{let o=this.get_resize_for_vision_encoder(n.pixel_values,r),s=await(0,i.interpolate_4d)(n.pixel_values,{size:[o.height,o.width]}),{frames:c,num_splits_h:l,num_splits_w:u}=await this.split_image(s,this.max_image_size);return e[a]=l,t[a]=u,(0,i.cat)(c,0)})),o.push(e),s.push(t)}else{let e=[r,r];u=await Promise.all(n.map(t=>(0,i.interpolate_4d)(t.pixel_values,{size:e}))),o.push(Array(n.length).fill(0)),s.push(Array(n.length).fill(0))}a.push((0,i.cat)(u,0))}let u=a.length,[d,f,p,m]=a[0].dims,h,g;if(u===1)h=a[0].unsqueeze_(0),g=(0,i.full)([u,d,p,m],!0);else{let e=Math.max(...a.map(e=>e.dims.at(0)));g=(0,i.full)([u,e,p,m],!0);let t=g.data,n=e*p*m;for(let r=0;rn||s>r){c=Math.ceil(o/n),l=Math.ceil(s/r);let t=Math.ceil(o/c),u=Math.ceil(s/l);for(let n=0;n{n.r(t),n.d(t,{Idefics3Processor:()=>d});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`),s=n( +/*! ../../utils/core.js */ +`./src/utils/core.js`);function c(e,t,n,r,i,a){let o=``;for(let a=0;a`+i.repeat(e);o+=` +`}return o+=`\n${r}${a}`+i.repeat(e)+`${r}`,o}function l(e,t,n,r){return`${t}${r}`+n.repeat(e)+`${t}`}function u(e,t,n,r,i,a){return e===0&&t===0?l(n,r,i,a):c(n,e,t,r,i,a)}class d extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;static uses_processor_config=!0;fake_image_token=``;image_token=``;global_img_token=``;async _call(e,t=null,n={}){n.return_row_col_info??=!0;let r;t&&(r=await this.image_processor(t,n)),Array.isArray(e)||(e=[e]);let i=r.rows??[Array(e.length).fill(0)],a=r.cols??[Array(e.length).fill(0)],o=this.config.image_seq_len,c=[],l=[];for(let t=0;tu(e,d[t],o,this.fake_image_token,this.image_token,this.global_img_token)),p=n.split(this.image_token);if(p.length===0)throw Error(`The image token should be present in the text.`);let m=p[0];for(let e=0;e{n.r(t),n.d(t,{BeitFeatureExtractor:()=>r.BeitFeatureExtractor,BitImageProcessor:()=>i.BitImageProcessor,CLIPFeatureExtractor:()=>o.CLIPFeatureExtractor,CLIPImageProcessor:()=>o.CLIPImageProcessor,ChineseCLIPFeatureExtractor:()=>a.ChineseCLIPFeatureExtractor,ConvNextFeatureExtractor:()=>s.ConvNextFeatureExtractor,ConvNextImageProcessor:()=>s.ConvNextImageProcessor,DPTFeatureExtractor:()=>d.DPTFeatureExtractor,DPTImageProcessor:()=>d.DPTImageProcessor,DeiTFeatureExtractor:()=>c.DeiTFeatureExtractor,DeiTImageProcessor:()=>c.DeiTImageProcessor,DetrFeatureExtractor:()=>l.DetrFeatureExtractor,DetrImageProcessor:()=>l.DetrImageProcessor,DonutFeatureExtractor:()=>u.DonutFeatureExtractor,DonutImageProcessor:()=>u.DonutImageProcessor,EfficientNetImageProcessor:()=>f.EfficientNetImageProcessor,GLPNFeatureExtractor:()=>p.GLPNFeatureExtractor,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,Idefics3ImageProcessor:()=>h.Idefics3ImageProcessor,JinaCLIPImageProcessor:()=>_.JinaCLIPImageProcessor,LlavaOnevisionImageProcessor:()=>v.LlavaOnevisionImageProcessor,Mask2FormerImageProcessor:()=>y.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>b.MaskFormerFeatureExtractor,MaskFormerImageProcessor:()=>b.MaskFormerImageProcessor,MobileNetV1FeatureExtractor:()=>x.MobileNetV1FeatureExtractor,MobileNetV1ImageProcessor:()=>x.MobileNetV1ImageProcessor,MobileNetV2FeatureExtractor:()=>S.MobileNetV2FeatureExtractor,MobileNetV2ImageProcessor:()=>S.MobileNetV2ImageProcessor,MobileNetV3FeatureExtractor:()=>C.MobileNetV3FeatureExtractor,MobileNetV3ImageProcessor:()=>C.MobileNetV3ImageProcessor,MobileNetV4FeatureExtractor:()=>w.MobileNetV4FeatureExtractor,MobileNetV4ImageProcessor:()=>w.MobileNetV4ImageProcessor,MobileViTFeatureExtractor:()=>T.MobileViTFeatureExtractor,MobileViTImageProcessor:()=>T.MobileViTImageProcessor,NougatImageProcessor:()=>E.NougatImageProcessor,OwlViTFeatureExtractor:()=>O.OwlViTFeatureExtractor,OwlViTImageProcessor:()=>O.OwlViTImageProcessor,Owlv2ImageProcessor:()=>D.Owlv2ImageProcessor,Phi3VImageProcessor:()=>k.Phi3VImageProcessor,PvtImageProcessor:()=>A.PvtImageProcessor,Qwen2VLImageProcessor:()=>ee.Qwen2VLImageProcessor,RTDetrImageProcessor:()=>te.RTDetrImageProcessor,SamImageProcessor:()=>ne.SamImageProcessor,SegformerFeatureExtractor:()=>j.SegformerFeatureExtractor,SegformerImageProcessor:()=>j.SegformerImageProcessor,SiglipImageProcessor:()=>re.SiglipImageProcessor,SmolVLMImageProcessor:()=>ie.SmolVLMImageProcessor,Swin2SRImageProcessor:()=>ae.Swin2SRImageProcessor,VLMImageProcessor:()=>g.VLMImageProcessor,ViTFeatureExtractor:()=>oe.ViTFeatureExtractor,ViTImageProcessor:()=>oe.ViTImageProcessor,VitMatteImageProcessor:()=>se.VitMatteImageProcessor,VitPoseImageProcessor:()=>M.VitPoseImageProcessor,YolosFeatureExtractor:()=>N.YolosFeatureExtractor,YolosImageProcessor:()=>N.YolosImageProcessor});var r=n( +/*! ./beit/image_processing_beit.js */ +`./src/models/beit/image_processing_beit.js`),i=n( +/*! ./bit/image_processing_bit.js */ +`./src/models/bit/image_processing_bit.js`),a=n( +/*! ./chinese_clip/image_processing_chinese_clip.js */ +`./src/models/chinese_clip/image_processing_chinese_clip.js`),o=n( +/*! ./clip/image_processing_clip.js */ +`./src/models/clip/image_processing_clip.js`),s=n( +/*! ./convnext/image_processing_convnext.js */ +`./src/models/convnext/image_processing_convnext.js`),c=n( +/*! ./deit/image_processing_deit.js */ +`./src/models/deit/image_processing_deit.js`),l=n( +/*! ./detr/image_processing_detr.js */ +`./src/models/detr/image_processing_detr.js`),u=n( +/*! ./donut/image_processing_donut.js */ +`./src/models/donut/image_processing_donut.js`),d=n( +/*! ./dpt/image_processing_dpt.js */ +`./src/models/dpt/image_processing_dpt.js`),f=n( +/*! ./efficientnet/image_processing_efficientnet.js */ +`./src/models/efficientnet/image_processing_efficientnet.js`),p=n( +/*! ./glpn/image_processing_glpn.js */ +`./src/models/glpn/image_processing_glpn.js`),m=n( +/*! ./grounding_dino/image_processing_grounding_dino.js */ +`./src/models/grounding_dino/image_processing_grounding_dino.js`),h=n( +/*! ./idefics3/image_processing_idefics3.js */ +`./src/models/idefics3/image_processing_idefics3.js`),g=n( +/*! ./janus/image_processing_janus.js */ +`./src/models/janus/image_processing_janus.js`),_=n( +/*! ./jina_clip/image_processing_jina_clip.js */ +`./src/models/jina_clip/image_processing_jina_clip.js`),v=n( +/*! ./llava_onevision/image_processing_llava_onevision.js */ +`./src/models/llava_onevision/image_processing_llava_onevision.js`),y=n( +/*! ./mask2former/image_processing_mask2former.js */ +`./src/models/mask2former/image_processing_mask2former.js`),b=n( +/*! ./maskformer/image_processing_maskformer.js */ +`./src/models/maskformer/image_processing_maskformer.js`),x=n( +/*! ./mobilenet_v1/image_processing_mobilenet_v1.js */ +`./src/models/mobilenet_v1/image_processing_mobilenet_v1.js`),S=n( +/*! ./mobilenet_v2/image_processing_mobilenet_v2.js */ +`./src/models/mobilenet_v2/image_processing_mobilenet_v2.js`),C=n( +/*! ./mobilenet_v3/image_processing_mobilenet_v3.js */ +`./src/models/mobilenet_v3/image_processing_mobilenet_v3.js`),w=n( +/*! ./mobilenet_v4/image_processing_mobilenet_v4.js */ +`./src/models/mobilenet_v4/image_processing_mobilenet_v4.js`),T=n( +/*! ./mobilevit/image_processing_mobilevit.js */ +`./src/models/mobilevit/image_processing_mobilevit.js`),E=n( +/*! ./nougat/image_processing_nougat.js */ +`./src/models/nougat/image_processing_nougat.js`),D=n( +/*! ./owlv2/image_processing_owlv2.js */ +`./src/models/owlv2/image_processing_owlv2.js`),O=n( +/*! ./owlvit/image_processing_owlvit.js */ +`./src/models/owlvit/image_processing_owlvit.js`),k=n( +/*! ./phi3_v/image_processing_phi3_v.js */ +`./src/models/phi3_v/image_processing_phi3_v.js`),A=n( +/*! ./pvt/image_processing_pvt.js */ +`./src/models/pvt/image_processing_pvt.js`),ee=n( +/*! ./qwen2_vl/image_processing_qwen2_vl.js */ +`./src/models/qwen2_vl/image_processing_qwen2_vl.js`),te=n( +/*! ./rt_detr/image_processing_rt_detr.js */ +`./src/models/rt_detr/image_processing_rt_detr.js`),ne=n( +/*! ./sam/image_processing_sam.js */ +`./src/models/sam/image_processing_sam.js`),j=n( +/*! ./segformer/image_processing_segformer.js */ +`./src/models/segformer/image_processing_segformer.js`),re=n( +/*! ./siglip/image_processing_siglip.js */ +`./src/models/siglip/image_processing_siglip.js`),ie=n( +/*! ./smolvlm/image_processing_smolvlm.js */ +`./src/models/smolvlm/image_processing_smolvlm.js`),ae=n( +/*! ./swin2sr/image_processing_swin2sr.js */ +`./src/models/swin2sr/image_processing_swin2sr.js`),oe=n( +/*! ./vit/image_processing_vit.js */ +`./src/models/vit/image_processing_vit.js`),se=n( +/*! ./vitmatte/image_processing_vitmatte.js */ +`./src/models/vitmatte/image_processing_vitmatte.js`),M=n( +/*! ./vitpose/image_processing_vitpose.js */ +`./src/models/vitpose/image_processing_vitpose.js`),N=n( +/*! ./yolos/image_processing_yolos.js */ +`./src/models/yolos/image_processing_yolos.js`)},"./src/models/janus/image_processing_janus.js":(e,t,n)=>{n.r(t),n.d(t,{VLMImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super({do_pad:!0,pad_size:{width:e.image_size,height:e.image_size},...e}),this.constant_values=this.config.background_color.map(e=>e*this.rescale_factor)}pad_image(e,t,n,r){return super.pad_image(e,t,n,{constant_values:this.constant_values,center:!0,...r})}}},"./src/models/janus/processing_janus.js":(e,t,n)=>{n.r(t),n.d(t,{VLChatProcessor:()=>l});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/core.js */ +`./src/utils/core.js`),s=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),c=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`);class l extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;static uses_processor_config=!0;constructor(e,t,n){super(e,t,n),this.image_tag=this.config.image_tag,this.image_start_tag=this.config.image_start_tag,this.image_end_tag=this.config.image_end_tag,this.num_image_tokens=this.config.num_image_tokens}async _call(e,{images:t=null,chat_template:n=`default`}={}){t?Array.isArray(t)||(t=[t]):t=await Promise.all(e.filter(e=>e.images).flatMap(e=>e.images).map(e=>c.RawImage.read(e)));let r=this.tokenizer,i=r.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0,chat_template:n}),a=e=>r.encode(e,{add_special_tokens:!1}),l=i.split(this.image_tag),u=l.length-1;if(t.length!==u)throw Error(`Number of images provided (${t.length}) does not match number of "${this.image_tag}" image tags (${u})`);let[d,f,p]=r.model.convert_tokens_to_ids([this.image_tag,this.image_start_tag,this.image_end_tag]),m=a(l[0]),h=Array(m.length).fill(!1);for(let e=1;e0){let e=await this.image_processor(t);return e.pixel_values.unsqueeze_(0),{..._,...e}}return _}}},"./src/models/jina_clip/image_processing_jina_clip.js":(e,t,n)=>{n.r(t),n.d(t,{JinaCLIPImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){let{resize_mode:t,fill_color:n,interpolation:r,size:i,...a}=e,o=t===`squash`?{width:i,height:i}:t===`shortest`?{shortest_edge:i}:{longest_edge:i},s=r===`bicubic`?3:2;super({...a,size:o,resample:s,do_center_crop:!0,crop_size:i,do_normalize:!0})}}},"./src/models/jina_clip/processing_jina_clip.js":(e,t,n)=>{n.r(t),n.d(t,{JinaCLIPProcessor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;async _call(e=null,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=e?this.tokenizer(e,n):{},i=t?await this.image_processor(t,n):{};return{...r,...i}}}},"./src/models/llava/processing_llava.js":(e,t,n)=>{n.r(t),n.d(t,{LlavaProcessor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;static uses_processor_config=!0;async _call(e,t=null,n={}){let r=await this.image_processor(e,n);if(t){let[e,n]=r.pixel_values.dims.slice(-2),{image_token:i,patch_size:a,num_additional_image_tokens:o}=this.config,s=Math.floor(e/a)*Math.floor(n/a)+o;t=structuredClone(t),Array.isArray(t)||(t=[t]);for(let e=0;e{n.r(t),n.d(t,{LlavaOnevisionImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/mask2former/image_processing_mask2former.js":(e,t,n)=>{n.r(t),n.d(t,{Mask2FormerImageProcessor:()=>i});var r=n( +/*! ../maskformer/image_processing_maskformer.js */ +`./src/models/maskformer/image_processing_maskformer.js`);class i extends r.MaskFormerImageProcessor{}},"./src/models/maskformer/image_processing_maskformer.js":(e,t,n)=>{n.r(t),n.d(t,{MaskFormerFeatureExtractor:()=>a,MaskFormerImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class a extends i{}},"./src/models/mgp_str/processing_mgp_str.js":(e,t,n)=>{n.r(t),n.d(t,{MgpstrProcessor:()=>c});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/maths.js */ +`./src/utils/maths.js`);let s={char:[`char_decode`,1],bpe:[`bpe_decode`,2],wp:[`wp_decode`,102]};class c extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;get char_tokenizer(){return this.components.char_tokenizer}get bpe_tokenizer(){return this.components.bpe_tokenizer}get wp_tokenizer(){return this.components.wp_tokenizer}_decode_helper(e,t){if(!s.hasOwnProperty(t))throw Error(`Format ${t} is not supported.`);let[n,r]=s[t],i=this[n].bind(this),[a,c]=e.dims,l=[],u=[],d=e.tolist();for(let e=0;e0?i.reduce((e,t)=>e*t,1):0;u.push(n),l.push(a)}let f=i(u);return[f,l]}char_decode(e){return this.char_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}bpe_decode(e){return this.bpe_tokenizer.batch_decode(e)}wp_decode(e){return this.wp_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}batch_decode([e,t,n]){let[r,i]=this._decode_helper(e,`char`),[a,s]=this._decode_helper(t,`bpe`),[c,l]=this._decode_helper(n,`wp`),u=[],d=[];for(let e=0;e{n.r(t),n.d(t,{MobileNetV1FeatureExtractor:()=>a,MobileNetV1ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v2/image_processing_mobilenet_v2.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV2FeatureExtractor:()=>a,MobileNetV2ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v3/image_processing_mobilenet_v3.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV3FeatureExtractor:()=>a,MobileNetV3ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v4/image_processing_mobilenet_v4.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV4FeatureExtractor:()=>a,MobileNetV4ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilevit/image_processing_mobilevit.js":(e,t,n)=>{n.r(t),n.d(t,{MobileViTFeatureExtractor:()=>a,MobileViTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/moonshine/feature_extraction_moonshine.js":(e,t,n)=>{n.r(t),n.d(t,{MoonshineFeatureExtractor:()=>a});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`MoonshineFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}}},"./src/models/moonshine/processing_moonshine.js":(e,t,n)=>{n.r(t),n.d(t,{MoonshineProcessor:()=>o});var r=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=r.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/nougat/image_processing_nougat.js":(e,t,n)=>{n.r(t),n.d(t,{NougatImageProcessor:()=>i});var r=n( +/*! ../donut/image_processing_donut.js */ +`./src/models/donut/image_processing_donut.js`);class i extends r.DonutImageProcessor{}},"./src/models/owlv2/image_processing_owlv2.js":(e,t,n)=>{n.r(t),n.d(t,{Owlv2ImageProcessor:()=>i});var r=n( +/*! ../owlvit/image_processing_owlvit.js */ +`./src/models/owlvit/image_processing_owlvit.js`);class i extends r.OwlViTImageProcessor{}},"./src/models/owlvit/image_processing_owlvit.js":(e,t,n)=>{n.r(t),n.d(t,{OwlViTFeatureExtractor:()=>a,OwlViTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/models/owlvit/processing_owlvit.js":(e,t,n)=>{n.r(t),n.d(t,{OwlViTProcessor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor}},"./src/models/paligemma/processing_paligemma.js":(e,t,n)=>{n.r(t),n.d(t,{PaliGemmaProcessor:()=>c});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);let o=``;function s(e,t,n,r,i){return`${r.repeat(n*i)}${t}${e}\n`}class c extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;static uses_processor_config=!1;async _call(e,t=null,n={}){t||(console.warn(`You are using PaliGemma without a text prefix. It will perform as a picture-captioning model.`),t=``),Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let r=this.tokenizer.bos_token,i=this.image_processor.config.image_seq_length,a;t.some(e=>e.includes(o))?a=t.map(e=>{let t=e.replaceAll(o,o.repeat(i)),n=t.lastIndexOf(o),a=n===-1?0:n+7;return t.slice(0,a)+r+t.slice(a)+` +`}):(console.warn("You are passing both `text` and `images` to `PaliGemmaProcessor`. The processor expects special image tokens in the text, as many tokens as there are images per each text. It is recommended to add `` tokens in the very beginning of your text. For this call, we will infer how many images each text has and add special tokens."),a=t.map(t=>s(t,r,i,o,e.length)));let c=this.tokenizer(a,n),l=await this.image_processor(e,n);return{...l,...c}}}},"./src/models/phi3_v/image_processing_phi3_v.js":(e,t,n)=>{n.r(t),n.d(t,{Phi3VImageProcessor:()=>u});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);let a=336,o=[2,3],{ceil:s,floor:c,sqrt:l}=Math;class u extends r.ImageProcessor{constructor(e){super({...e,do_normalize:!0,do_pad:!0,pad_size:`custom`,do_convert_rgb:!0,do_resize:!0}),this._num_crops=e.num_crops}calc_num_image_tokens_from_image_size(e,t){let{num_img_tokens:n}=this.config;return c((c(t/a)*c(e/a)+1)*n+1+(c(t/a)+1)*l(n))}get_resize_output_image_size(e,t){let n=this._num_crops,[r,i]=e.size,a=r/i,o=1;for(;o*Math.ceil(o/a)<=n;)o+=1;--o;let s=Math.floor(o*336),c=Math.floor(s/a);return[s,c]}pad_image(e,t,n,r={}){let[i,o]=t,c=a*s(i/a),l=a*s(o/a),u=[1,1,1].map((e,t)=>(e-this.image_mean[t])/this.image_std[t]);return super.pad_image(e,t,{width:l,height:c},{center:!0,constant_values:u,...r})}async _call(e,{num_crops:t=null}={}){if(this._num_crops=t??=this.config.num_crops,t<4||l(t)%1!=0)throw Error(`num_crops must be a square number >= 4`);Array.isArray(e)||(e=[e]);let n=e.length,r=await Promise.all(e.map(e=>this.preprocess(e))),u=r.map(e=>e.original_size),d=r.map(e=>e.reshaped_input_size),f=[];for(let{pixel_values:e}of r){e.unsqueeze_(0);let[n,r]=e.dims.slice(-2),s=await(0,i.interpolate_4d)(e,{size:[a,a],mode:`bicubic`});if(t>0){let u=[],d=l(t),p=c(r/d),m=c(n/d);for(let t=0;te.map(e=>a*s(e/a))),h=new i.Tensor(`int64`,m.flat(),[n,2]),g=m.map(([e,t])=>this.calc_num_image_tokens_from_image_size(t,e));return{pixel_values:p,original_sizes:u,reshaped_input_sizes:d,image_sizes:h,num_img_tokens:g}}}},"./src/models/phi3_v/processing_phi3_v.js":(e,t,n)=>{n.r(t),n.d(t,{Phi3VProcessor:()=>l});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`);let s=`<|image|>`,c=/<\|image_\d+\|>/g;class l extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;async _call(e,t=null,{padding:n=!0,truncation:r=!0,num_crops:i=null}={}){Array.isArray(e)||(e=[e]);let a,o;if(t){o=await this.image_processor(t,{num_crops:i});let{num_img_tokens:l}=o,u=e.map((e,t)=>e.split(c).join(s.repeat(l[t])));a=this.tokenizer(u,{padding:n,truncation:r});let d=this.tokenizer.model.convert_tokens_to_ids([s])[0];a.input_ids.map_(e=>e==d?-e:e)}else a=this.tokenizer(e);return{...a,...o}}}},"./src/models/processors.js":(e,t,n)=>{n.r(t),n.d(t,{Florence2Processor:()=>r.Florence2Processor,Gemma3nProcessor:()=>i.Gemma3nProcessor,GroundingDinoProcessor:()=>a.GroundingDinoProcessor,Idefics3Processor:()=>o.Idefics3Processor,JinaCLIPProcessor:()=>c.JinaCLIPProcessor,LlavaProcessor:()=>l.LlavaProcessor,MgpstrProcessor:()=>u.MgpstrProcessor,MoonshineProcessor:()=>d.MoonshineProcessor,OwlViTProcessor:()=>f.OwlViTProcessor,PaliGemmaProcessor:()=>m.PaliGemmaProcessor,Phi3VProcessor:()=>p.Phi3VProcessor,PyAnnoteProcessor:()=>h.PyAnnoteProcessor,Qwen2VLProcessor:()=>g.Qwen2VLProcessor,SamProcessor:()=>_.SamProcessor,SmolVLMProcessor:()=>v.SmolVLMProcessor,SpeechT5Processor:()=>y.SpeechT5Processor,UltravoxProcessor:()=>b.UltravoxProcessor,VLChatProcessor:()=>s.VLChatProcessor,Wav2Vec2Processor:()=>x.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>S.Wav2Vec2ProcessorWithLM,WhisperProcessor:()=>C.WhisperProcessor});var r=n( +/*! ./florence2/processing_florence2.js */ +`./src/models/florence2/processing_florence2.js`),i=n( +/*! ./gemma3n/processing_gemma3n.js */ +`./src/models/gemma3n/processing_gemma3n.js`),a=n( +/*! ./grounding_dino/processing_grounding_dino.js */ +`./src/models/grounding_dino/processing_grounding_dino.js`),o=n( +/*! ./idefics3/processing_idefics3.js */ +`./src/models/idefics3/processing_idefics3.js`),s=n( +/*! ./janus/processing_janus.js */ +`./src/models/janus/processing_janus.js`),c=n( +/*! ./jina_clip/processing_jina_clip.js */ +`./src/models/jina_clip/processing_jina_clip.js`),l=n( +/*! ./llava/processing_llava.js */ +`./src/models/llava/processing_llava.js`),u=n( +/*! ./mgp_str/processing_mgp_str.js */ +`./src/models/mgp_str/processing_mgp_str.js`),d=n( +/*! ./moonshine/processing_moonshine.js */ +`./src/models/moonshine/processing_moonshine.js`),f=n( +/*! ./owlvit/processing_owlvit.js */ +`./src/models/owlvit/processing_owlvit.js`),p=n( +/*! ./phi3_v/processing_phi3_v.js */ +`./src/models/phi3_v/processing_phi3_v.js`),m=n( +/*! ./paligemma/processing_paligemma.js */ +`./src/models/paligemma/processing_paligemma.js`),h=n( +/*! ./pyannote/processing_pyannote.js */ +`./src/models/pyannote/processing_pyannote.js`),g=n( +/*! ./qwen2_vl/processing_qwen2_vl.js */ +`./src/models/qwen2_vl/processing_qwen2_vl.js`),_=n( +/*! ./sam/processing_sam.js */ +`./src/models/sam/processing_sam.js`),v=n( +/*! ./smolvlm/processing_smolvlm.js */ +`./src/models/smolvlm/processing_smolvlm.js`),y=n( +/*! ./speecht5/processing_speecht5.js */ +`./src/models/speecht5/processing_speecht5.js`),b=n( +/*! ./ultravox/processing_ultravox.js */ +`./src/models/ultravox/processing_ultravox.js`),x=n( +/*! ./wav2vec2/processing_wav2vec2.js */ +`./src/models/wav2vec2/processing_wav2vec2.js`),S=n( +/*! ./wav2vec2_with_lm/processing_wav2vec2_with_lm.js */ +`./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js`),C=n( +/*! ./whisper/processing_whisper.js */ +`./src/models/whisper/processing_whisper.js`)},"./src/models/pvt/image_processing_pvt.js":(e,t,n)=>{n.r(t),n.d(t,{PvtImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/pyannote/feature_extraction_pyannote.js":(e,t,n)=>{n.r(t),n.d(t,{PyAnnoteFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/maths.js */ +`./src/utils/maths.js`);class o extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`PyAnnoteFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}samples_to_frames(e){return(e-this.config.offset)/this.config.step}post_process_speaker_diarization(e,t){let n=t/this.samples_to_frames(t)/this.config.sampling_rate,r=[];for(let t of e.tolist()){let e=[],i=-1;for(let n=0;n({id:e,start:t*n,end:r*n,confidence:i/(r-t)})))}return r}}},"./src/models/pyannote/processing_pyannote.js":(e,t,n)=>{n.r(t),n.d(t,{PyAnnoteProcessor:()=>a});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ./feature_extraction_pyannote.js */ +`./src/models/pyannote/feature_extraction_pyannote.js`);class a extends r.Processor{static feature_extractor_class=i.PyAnnoteFeatureExtractor;async _call(e){return await this.feature_extractor(e)}post_process_speaker_diarization(...e){return this.feature_extractor.post_process_speaker_diarization(...e)}get sampling_rate(){return this.feature_extractor.config.sampling_rate}}},"./src/models/qwen2_vl/image_processing_qwen2_vl.js":(e,t,n)=>{n.r(t),n.d(t,{Qwen2VLImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,...t){let{pixel_values:n,original_sizes:r,reshaped_input_sizes:a}=await super._call(e,...t),o=n,{temporal_patch_size:s,merge_size:c,patch_size:l}=this.config;o.dims[0]===1&&(o=(0,i.cat)(Array.from({length:s},()=>o),0));let u=o.dims[0]/s,d=o.dims[1],f=Math.floor(o.dims[2]/l),p=Math.floor(o.dims[3]/l),m=o.view(u,s,d,Math.floor(f/c),c,l,Math.floor(p/c),c,l).permute(0,3,6,4,7,2,1,5,8).view(u*f*p,d*s*l*l),h=new i.Tensor(`int64`,[u,f,p],[1,3]);return{pixel_values:m,image_grid_thw:h,original_sizes:r,reshaped_input_sizes:a}}}},"./src/models/qwen2_vl/processing_qwen2_vl.js":(e,t,n)=>{n.r(t),n.d(t,{Qwen2VLProcessor:()=>s});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`);class s extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;async _call(e,t=null,...n){Array.isArray(e)||(e=[e]);let r,i;if(t&&(r=await this.image_processor(t),i=r.image_grid_thw),i){let t=this.image_processor.config.merge_size**2,n=0,r=i.tolist();e=e.map(e=>{for(;e.includes(`<|image_pad|>`);){let i=Number(r[n++].reduce((e,t)=>e*t,1n));e=e.replace(`<|image_pad|>`,`<|placeholder|>`.repeat(Math.floor(i/t)))}return e.replaceAll(`<|placeholder|>`,`<|image_pad|>`)})}let a=this.tokenizer(e);return{...a,...r}}}},"./src/models/rt_detr/image_processing_rt_detr.js":(e,t,n)=>{n.r(t),n.d(t,{RTDetrImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}},"./src/models/sam/image_processing_sam.js":(e,t,n)=>{n.r(t),n.d(t,{SamImageProcessor:()=>o});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/core.js */ +`./src/utils/core.js`),a=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class o extends r.ImageProcessor{reshape_input_points(e,t,n,r=!1){e=structuredClone(e);let o=(0,i.calculateDimensions)(e);if(o.length===3)r||(o=[1,...o]),e=[e];else if(o.length!==4)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");for(let r=0;re!==t.dims[n]))throw Error(`The first ${n.length} dimensions of 'input_points' and 'input_labels' must be the same.`);return new a.Tensor(`int64`,e.flat(1/0).map(BigInt),n)}async _call(e,{input_points:t=null,input_labels:n=null,input_boxes:r=null}={}){let i=await super._call(e);if(t&&(i.input_points=this.reshape_input_points(t,i.original_sizes,i.reshaped_input_sizes)),n){if(!i.input_points)throw Error("`input_points` must be provided if `input_labels` are provided.");i.input_labels=this.add_input_labels(n,i.input_points)}return r&&(i.input_boxes=this.reshape_input_points(r,i.original_sizes,i.reshaped_input_sizes,!0)),i}async post_process_masks(e,t,n,{mask_threshold:r=0,binarize:i=!0,pad_size:o=null}={}){let s=[];o??=this.pad_size;let c=[o.height,o.width];for(let o=0;or&&(t[n]=1);d=new a.Tensor(`bool`,t,d.dims)}s.push(d)}return s}generate_crop_boxes(e,t,{crop_n_layers:n=0,overlap_ratio:r=512/1500,points_per_crop:i=32,crop_n_points_downscale_factor:a=1}={}){}}},"./src/models/sam/processing_sam.js":(e,t,n)=>{n.r(t),n.d(t,{SamProcessor:()=>a});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`);class a extends r.Processor{static image_processor_class=i.AutoImageProcessor;async _call(...e){return await this.image_processor(...e)}post_process_masks(...e){return this.image_processor.post_process_masks(...e)}reshape_input_points(...e){return this.image_processor.reshape_input_points(...e)}}},"./src/models/seamless_m4t/feature_extraction_seamless_m4t.js":(e,t,n)=>{n.r(t),n.d(t,{SeamlessM4TFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`povey`,{periodic:!1})}async _extract_fbank_features(e,t){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e,{padding:t=!0,pad_to_multiple_of:n=2,do_normalize_per_mel_bins:a=!0,return_attention_mask:o=!0}={}){(0,r.validate_audio_inputs)(e,`SeamlessM4TFeatureExtractor`);let s=await this._extract_fbank_features(e,this.config.max_length);if(a){let[e,t]=s.dims,n=s.data;for(let r=0;r0){let n=new Float32Array(t*(e+a));n.set(r),n.fill(this.config.padding_value,r.length);let l=e+a;s=new i.Tensor(s.type,n,[l,t]),o&&(c=new i.Tensor(`int64`,new BigInt64Array(l),[1,l]),c.data.fill(1n,0,e))}}let[l,u]=s.dims,d=this.config.stride,f=l%d;if(f!==0)throw Error(`The number of frames (${l}) must be a multiple of the stride (${d}).`);let p=s.view(1,Math.floor(l/d),u*d),m={input_features:p};if(o){let e=p.dims[1],t=new BigInt64Array(e);if(c){let e=c.data;for(let n=1,r=0;n{n.r(t),n.d(t,{SegformerFeatureExtractor:()=>a,SegformerImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_semantic_segmentation(...e){return(0,r.post_process_semantic_segmentation)(...e)}}class a extends i{}},"./src/models/siglip/image_processing_siglip.js":(e,t,n)=>{n.r(t),n.d(t,{SiglipImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/smolvlm/image_processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMImageProcessor:()=>r.Idefics3ImageProcessor});var r=n( +/*! ../idefics3/image_processing_idefics3.js */ +`./src/models/idefics3/image_processing_idefics3.js`)},"./src/models/smolvlm/processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMProcessor:()=>r.Idefics3Processor});var r=n( +/*! ../idefics3/processing_idefics3.js */ +`./src/models/idefics3/processing_idefics3.js`)},"./src/models/snac/feature_extraction_snac.js":(e,t,n)=>{n.r(t),n.d(t,{SnacFeatureExtractor:()=>i});var r=n( +/*! ../dac/feature_extraction_dac.js */ +`./src/models/dac/feature_extraction_dac.js`);class i extends r.DacFeatureExtractor{}},"./src/models/speecht5/feature_extraction_speecht5.js":(e,t,n)=>{n.r(t),n.d(t,{SpeechT5FeatureExtractor:()=>i});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`);class i extends r.FeatureExtractor{}},"./src/models/speecht5/processing_speecht5.js":(e,t,n)=>{n.r(t),n.d(t,{SpeechT5Processor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`);class o extends r.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=a.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/swin2sr/image_processing_swin2sr.js":(e,t,n)=>{n.r(t),n.d(t,{Swin2SRImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t;return super.pad_image(e,t,{width:a+(n-a%n)%n,height:i+(n-i%n)%n},{mode:`symmetric`,center:!1,constant_values:-1,...r})}}},"./src/models/ultravox/processing_ultravox.js":(e,t,n)=>{n.r(t),n.d(t,{UltravoxProcessor:()=>o});var r=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=r.AutoFeatureExtractor;static uses_processor_config=!0;async _call(e,t=null,n={}){if(Array.isArray(e))throw Error(`Batched inputs are not supported yet.`);let r={};if(t){let i=t.length,{input_features:a}=await this.feature_extractor(t,{...n,max_length:i}),o=Math.round(i/this.config.encoder_ds_factor+1e-4),s=1+Math.ceil(o/this.config.stack_factor);r.audio_token_len=[s],r.audio_values=a;let c=this.config.audio_placeholder;if(!e.includes(c))throw Error(`The input text does not contain the image token ${c}.`);e=e.replaceAll(c,c.repeat(s))}let i=this.tokenizer(e,{add_special_tokens:!1,...n});return{...i,...r}}}},"./src/models/vit/image_processing_vit.js":(e,t,n)=>{n.r(t),n.d(t,{ViTFeatureExtractor:()=>a,ViTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/vitmatte/image_processing_vitmatte.js":(e,t,n)=>{n.r(t),n.d(t,{VitMatteImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,t){Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let n=await Promise.all(e.map(e=>this.preprocess(e))),r=await Promise.all(t.map(e=>this.preprocess(e,{do_normalize:!1,do_convert_rgb:!1,do_convert_grayscale:!0}))),a=(0,i.stack)(n.map((e,t)=>(0,i.cat)([e.pixel_values,r[t].pixel_values],0)),0);return{pixel_values:a,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}}},"./src/models/vitpose/image_processing_vitpose.js":(e,t,n)=>{n.r(t),n.d(t,{VitPoseImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_pose_estimation(e,t,{threshold:n=null}={}){let r=e.tolist(),[i,a,o,s]=e.dims,c=[];for(let e=0;e{n.r(t),n.d(t,{Wav2Vec2FeatureExtractor:()=>a});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.FeatureExtractor{_zero_mean_unit_var_norm(e){let t=e.reduce((e,t)=>e+t,0),n=t/e.length,r=e.reduce((e,t)=>e+(t-n)**2,0)/e.length;return e.map(e=>(e-n)/Math.sqrt(r+1e-7))}async _call(e){(0,r.validate_audio_inputs)(e,`Wav2Vec2FeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=e;this.config.do_normalize&&(t=this._zero_mean_unit_var_norm(t));let n=[1,t.length];return{input_values:new i.Tensor(`float32`,t,n),attention_mask:new i.Tensor(`int64`,new BigInt64Array(t.length).fill(1n),n)}}}},"./src/models/wav2vec2/processing_wav2vec2.js":(e,t,n)=>{n.r(t),n.d(t,{Wav2Vec2Processor:()=>o});var r=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),i=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=r.AutoTokenizer;static feature_extractor_class=i.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js":(e,t,n)=>{n.r(t),n.d(t,{Wav2Vec2ProcessorWithLM:()=>o});var r=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),i=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=r.AutoTokenizer;static feature_extractor_class=i.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/wespeaker/feature_extraction_wespeaker.js":(e,t,n)=>{n.r(t),n.d(t,{WeSpeakerFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hamming`,{periodic:!1}),this.min_num_frames=this.config.min_num_frames}async _extract_fbank_features(e){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,transpose:!0,min_num_frames:this.min_num_frames})}async _call(e){(0,r.validate_audio_inputs)(e,`WeSpeakerFeatureExtractor`);let t=(await this._extract_fbank_features(e)).unsqueeze_(0);if(this.config.fbank_centering_span===null){let e=t.mean(1).data,n=t.data,[r,i,a]=t.dims;for(let t=0;t{n.r(t),n.d(t,{WHISPER_LANGUAGE_MAPPING:()=>i,WHISPER_TO_LANGUAGE_CODE_MAPPING:()=>a,whisper_language_to_code:()=>o});let r=[[`en`,`english`],[`zh`,`chinese`],[`de`,`german`],[`es`,`spanish`],[`ru`,`russian`],[`ko`,`korean`],[`fr`,`french`],[`ja`,`japanese`],[`pt`,`portuguese`],[`tr`,`turkish`],[`pl`,`polish`],[`ca`,`catalan`],[`nl`,`dutch`],[`ar`,`arabic`],[`sv`,`swedish`],[`it`,`italian`],[`id`,`indonesian`],[`hi`,`hindi`],[`fi`,`finnish`],[`vi`,`vietnamese`],[`he`,`hebrew`],[`uk`,`ukrainian`],[`el`,`greek`],[`ms`,`malay`],[`cs`,`czech`],[`ro`,`romanian`],[`da`,`danish`],[`hu`,`hungarian`],[`ta`,`tamil`],[`no`,`norwegian`],[`th`,`thai`],[`ur`,`urdu`],[`hr`,`croatian`],[`bg`,`bulgarian`],[`lt`,`lithuanian`],[`la`,`latin`],[`mi`,`maori`],[`ml`,`malayalam`],[`cy`,`welsh`],[`sk`,`slovak`],[`te`,`telugu`],[`fa`,`persian`],[`lv`,`latvian`],[`bn`,`bengali`],[`sr`,`serbian`],[`az`,`azerbaijani`],[`sl`,`slovenian`],[`kn`,`kannada`],[`et`,`estonian`],[`mk`,`macedonian`],[`br`,`breton`],[`eu`,`basque`],[`is`,`icelandic`],[`hy`,`armenian`],[`ne`,`nepali`],[`mn`,`mongolian`],[`bs`,`bosnian`],[`kk`,`kazakh`],[`sq`,`albanian`],[`sw`,`swahili`],[`gl`,`galician`],[`mr`,`marathi`],[`pa`,`punjabi`],[`si`,`sinhala`],[`km`,`khmer`],[`sn`,`shona`],[`yo`,`yoruba`],[`so`,`somali`],[`af`,`afrikaans`],[`oc`,`occitan`],[`ka`,`georgian`],[`be`,`belarusian`],[`tg`,`tajik`],[`sd`,`sindhi`],[`gu`,`gujarati`],[`am`,`amharic`],[`yi`,`yiddish`],[`lo`,`lao`],[`uz`,`uzbek`],[`fo`,`faroese`],[`ht`,`haitian creole`],[`ps`,`pashto`],[`tk`,`turkmen`],[`nn`,`nynorsk`],[`mt`,`maltese`],[`sa`,`sanskrit`],[`lb`,`luxembourgish`],[`my`,`myanmar`],[`bo`,`tibetan`],[`tl`,`tagalog`],[`mg`,`malagasy`],[`as`,`assamese`],[`tt`,`tatar`],[`haw`,`hawaiian`],[`ln`,`lingala`],[`ha`,`hausa`],[`ba`,`bashkir`],[`jw`,`javanese`],[`su`,`sundanese`]],i=new Map(r),a=new Map([...r.map(([e,t])=>[t,e]),...[[`burmese`,`my`],[`valencian`,`ca`],[`flemish`,`nl`],[`haitian`,`ht`],[`letzeburgesch`,`lb`],[`pushto`,`ps`],[`panjabi`,`pa`],[`moldavian`,`ro`],[`moldovan`,`ro`],[`sinhalese`,`si`],[`castilian`,`es`]]]);function o(e){e=e.toLowerCase();let t=a.get(e);if(t===void 0){let n=e.match(/^<\|([a-z]{2})\|>$/);if(n&&(e=n[1]),i.has(e))t=e;else{let t=e.length===2,n=t?i.keys():i.values();throw Error(`Language "${e}" is not supported. Must be one of: ${JSON.stringify(Array.from(n))}`)}}return t}},"./src/models/whisper/feature_extraction_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperFeatureExtractor:()=>s});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`),o=n( +/*! ../../utils/maths.js */ +`./src/utils/maths.js`);class s extends r.FeatureExtractor{constructor(e){super(e),this.config.mel_filters??=(0,a.mel_filter_bank)(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,`slaney`,`slaney`),this.window=(0,a.window_function)(this.config.n_fft,`hann`)}async _extract_fbank_features(e){let t=await(0,a.spectrogram)(e,this.window,this.config.n_fft,this.config.hop_length,{power:2,mel_filters:this.config.mel_filters,log_mel:`log10`,max_num_frames:Math.min(Math.floor(e.length/this.config.hop_length),this.config.nb_max_frames)}),n=t.data,r=(0,o.max)(n)[0];for(let e=0;ei?(e.length>this.config.n_samples&&console.warn("Attempting to extract features for audio longer than 30 seconds. If using a pipeline to extract transcript from a long audio clip, remember to specify `chunk_length_s` and/or `stride_length_s`."),n=e.slice(0,i)):(n=new Float32Array(i),n.set(e));let a=await this._extract_fbank_features(n);return{input_features:a.unsqueeze_(0)}}}},"./src/models/whisper/generation_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperGenerationConfig:()=>i});var r=n( +/*! ../../generation/configuration_utils.js */ +`./src/generation/configuration_utils.js`);class i extends r.GenerationConfig{return_timestamps=null;return_token_timestamps=null;num_frames=null;alignment_heads=null;task=null;language=null;no_timestamps_token_id=null;prompt_ids=null;is_multilingual=null;lang_to_id=null;task_to_id=null;max_initial_timestamp_index=1}},"./src/models/whisper/processing_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperProcessor:()=>o});var r=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=r.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/yolos/image_processing_yolos.js":(e,t,n)=>{n.r(t),n.d(t,{YolosFeatureExtractor:()=>a,YolosImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/ops/registry.js":(e,t,n)=>{n.r(t),n.d(t,{TensorOpRegistry:()=>c});var r=n( +/*! ../backends/onnx.js */ +`./src/backends/onnx.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../env.js */ +`./src/env.js`);let o=a.apis.IS_BROWSER_ENV||a.apis.IS_WEBWORKER_ENV,s=async(e,t,n)=>{let a=await(0,r.createInferenceSession)(new Uint8Array(e),t),s=Promise.resolve();return async e=>{let t=(0,r.isONNXProxy)(),c=Object.fromEntries(Object.entries(e).map(([e,n])=>[e,(t?n.clone():n).ort_tensor])),l=await(s=o?s.then(()=>a.run(c)):a.run(c));return Array.isArray(n)?n.map(e=>new i.Tensor(l[e])):new i.Tensor(l[n])}};class c{static session_options={};static get nearest_interpolate_4d(){return this._nearest_interpolate_4d||=s([8,10,18,0,58,129,1,10,41,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,18,10,4,109,111,100,101,34,7,110,101,97,114,101,115,116,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,21],this.session_options,`y`),this._nearest_interpolate_4d}static get bilinear_interpolate_4d(){return this._bilinear_interpolate_4d||=s([8,9,18,0,58,128,1,10,40,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,17,10,4,109,111,100,101,34,6,108,105,110,101,97,114,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bilinear_interpolate_4d}static get bicubic_interpolate_4d(){return this._bicubic_interpolate_4d||=s([8,9,18,0,58,127,10,39,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,16,10,4,109,111,100,101,34,5,99,117,98,105,99,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bicubic_interpolate_4d}static get matmul(){return this._matmul||=s([8,9,18,0,58,55,10,17,10,1,97,10,1,98,18,1,99,34,6,77,97,116,77,117,108,18,1,114,90,9,10,1,97,18,4,10,2,8,1,90,9,10,1,98,18,4,10,2,8,1,98,9,10,1,99,18,4,10,2,8,1,66,2,16,20],this.session_options,`c`),this._matmul}static get stft(){return this._stft||=s([8,7,18,0,58,148,1,10,38,10,1,115,10,1,106,10,1,119,10,1,108,18,1,111,34,4,83,84,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,115,90,26,10,1,115,18,21,10,19,8,1,18,15,10,3,18,1,98,10,3,18,1,115,10,3,18,1,99,90,11,10,1,106,18,6,10,4,8,7,18,0,90,16,10,1,119,18,11,10,9,8,1,18,5,10,3,18,1,119,90,11,10,1,108,18,6,10,4,8,7,18,0,98,31,10,1,111,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,102,10,3,18,1,100,10,3,18,1,99,66,2,16,17],this.session_options,`o`),this._stft}static get rfft(){return this._rfft||=s([8,9,18,0,58,97,10,33,10,1,120,10,0,10,1,97,18,1,121,34,3,68,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,100,90,21,10,1,120,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,90,11,10,1,97,18,6,10,4,8,7,18,0,98,21,10,1,121,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,66,2,16,20],this.session_options,`y`),this._rfft}static get top_k(){return this._top_k||=s([8,10,18,0,58,73,10,18,10,1,120,10,1,107,18,1,118,18,1,105,34,4,84,111,112,75,18,1,116,90,9,10,1,120,18,4,10,2,8,1,90,15,10,1,107,18,10,10,8,8,7,18,4,10,2,8,1,98,9,10,1,118,18,4,10,2,8,1,98,9,10,1,105,18,4,10,2,8,7,66,2,16,21],this.session_options,[`v`,`i`]),this._top_k}static get slice(){return this._slice||=s([8,7,18,0,58,96,10,25,10,1,120,10,1,115,10,1,101,10,1,97,10,1,116,18,1,121,34,5,83,108,105,99,101,18,1,114,90,9,10,1,120,18,4,10,2,8,1,90,9,10,1,115,18,4,10,2,8,7,90,9,10,1,101,18,4,10,2,8,7,90,9,10,1,97,18,4,10,2,8,7,90,9,10,1,116,18,4,10,2,8,7,98,9,10,1,121,18,4,10,2,8,1,66,2,16,13],this.session_options,`y`),this._slice}}},"./src/pipelines.js":(e,t,n)=>{n.r(t),n.d(t,{AudioClassificationPipeline:()=>k,AutomaticSpeechRecognitionPipeline:()=>ee,BackgroundRemovalPipeline:()=>re,DepthEstimationPipeline:()=>ce,DocumentQuestionAnsweringPipeline:()=>se,FeatureExtractionPipeline:()=>D,FillMaskPipeline:()=>b,ImageClassificationPipeline:()=>ne,ImageFeatureExtractionPipeline:()=>O,ImageSegmentationPipeline:()=>j,ImageToImagePipeline:()=>N,ImageToTextPipeline:()=>te,ObjectDetectionPipeline:()=>ae,Pipeline:()=>g,QuestionAnsweringPipeline:()=>y,SummarizationPipeline:()=>S,Text2TextGenerationPipeline:()=>x,TextClassificationPipeline:()=>_,TextGenerationPipeline:()=>T,TextToAudioPipeline:()=>M,TokenClassificationPipeline:()=>v,TranslationPipeline:()=>C,ZeroShotAudioClassificationPipeline:()=>A,ZeroShotClassificationPipeline:()=>E,ZeroShotImageClassificationPipeline:()=>ie,ZeroShotObjectDetectionPipeline:()=>oe,pipeline:()=>de});var r=n( +/*! ./tokenizers.js */ +`./src/tokenizers.js`),i=n( +/*! ./models.js */ +`./src/models.js`),a=n( +/*! ./models/auto/processing_auto.js */ +`./src/models/auto/processing_auto.js`),o=n( +/*! ./base/processing_utils.js */ +`./src/base/processing_utils.js`),s=n( +/*! ./utils/generic.js */ +`./src/utils/generic.js`),c=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),l=n( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),u=n( +/*! ./utils/audio.js */ +`./src/utils/audio.js`),d=n( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),f=n( +/*! ./utils/image.js */ +`./src/utils/image.js`);async function p(e){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>f.RawImage.read(e)))}async function m(e,t){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>typeof e==`string`||e instanceof URL?(0,u.read_audio)(e,t):e instanceof Float64Array?new Float32Array(e):e))}function h(e,t){t&&(e=e.map(e=>e|0));let[n,r,i,a]=e;return{xmin:n,ymin:r,xmax:i,ymax:a}}class g extends s.Callable{constructor({task:e,model:t,tokenizer:n=null,processor:r=null}){super(),this.task=e,this.model=t,this.tokenizer=n,this.processor=r}async dispose(){await this.model.dispose()}}class _ extends g{constructor(e){super(e)}async _call(e,{top_k:t=1}={}){let n=this.tokenizer(e,{padding:!0,truncation:!0}),r=await this.model(n),i=this.model.config.problem_type===`multi_label_classification`?e=>e.sigmoid():e=>new d.Tensor(`float32`,(0,l.softmax)(e.data),e.dims),a=this.model.config.id2label,o=[];for(let e of r.logits){let n=i(e),r=await(0,d.topk)(n,t),s=r[0].tolist(),c=r[1].tolist(),l=c.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:s[t]}));t===1?o.push(...l):o.push(l)}return Array.isArray(e)||t===1?o:o[0]}}class v extends g{constructor(e){super(e)}async _call(e,{ignore_labels:t=[`O`]}={}){let n=Array.isArray(e),r=this.tokenizer(n?e:[e],{padding:!0,truncation:!0}),i=await this.model(r),a=i.logits,o=this.model.config.id2label,s=[];for(let e=0;ee==this.tokenizer.sep_token_id),f=s[e].map((e,n)=>e==1&&(n===0||n>r&&u.findIndex(e=>e==t[n])===-1)),p=i[e].tolist(),m=a[e].tolist();for(let n=1;ne==t[n])!==-1)&&(p[n]=-1/0,m[n]=-1/0);let h=(0,l.softmax)(p).map((e,t)=>[e,t]),g=(0,l.softmax)(m).map((e,t)=>[e,t]);h[0][0]=0,g[0][0]=0;let _=(0,c.product)(h,g).filter(e=>e[0][1]<=e[1][1]).map(e=>[e[0][1],e[1][1],e[0][0]*e[1][0]]).sort((e,t)=>t[2]-e[2]);for(let e=0;ee==this.tokenizer.mask_token_id);if(o===-1)throw Error(`Mask token (${this.tokenizer.mask_token}) not found in text.`);let s=r[e][o],c=await(0,d.topk)(new d.Tensor(`float32`,(0,l.softmax)(s.data),s.dims),t),u=c[0].tolist(),f=c[1].tolist();i.push(f.map((e,t)=>{let r=n.slice();return r[o]=e,{score:u[t],token:Number(e),token_str:this.tokenizer.decode([e]),sequence:this.tokenizer.decode(r,{skip_special_tokens:!0})}}))}return Array.isArray(e)?i:i[0]}}class x extends g{_key=`generated_text`;constructor(e){super(e)}async _call(e,t={}){Array.isArray(e)||(e=[e]),this.model.config.prefix&&(e=e.map(e=>this.model.config.prefix+e));let n=this.model.config.task_specific_params;n&&n[this.task]&&n[this.task].prefix&&(e=e.map(e=>n[this.task].prefix+e));let r=this.tokenizer,i={padding:!0,truncation:!0},a;a=this instanceof C&&`_build_translation_inputs`in r?r._build_translation_inputs(e,i,t):r(e,i);let o=await this.model.generate({...a,...t});return r.batch_decode(o,{skip_special_tokens:!0}).map(e=>({[this._key]:e}))}}class S extends x{_key=`summary_text`;constructor(e){super(e)}}class C extends x{_key=`translation_text`;constructor(e){super(e)}}function w(e){return Array.isArray(e)&&e.every(e=>`role`in e&&`content`in e)}class T extends g{constructor(e){super(e)}async _call(e,t={}){let n=!1,r=!1,i;if(typeof e==`string`)i=e=[e];else if(Array.isArray(e)&&e.every(e=>typeof e==`string`))n=!0,i=e;else{if(w(e))e=[e];else if(Array.isArray(e)&&e.every(w))n=!0;else throw Error(`Input must be a string, an array of strings, a Chat, or an array of Chats`);r=!0,i=e.map(e=>this.tokenizer.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0}))}let a=t.add_special_tokens??!1,o=r?!1:t.return_full_text??!0;this.tokenizer.padding_side=`left`;let s=this.tokenizer(i,{add_special_tokens:a,padding:!0,truncation:!0}),c=await this.model.generate({...s,...t}),l=this.tokenizer.batch_decode(c,{skip_special_tokens:!0}),u;!o&&s.input_ids.dims.at(-1)>0&&(u=this.tokenizer.batch_decode(s.input_ids,{skip_special_tokens:!0}).map(e=>e.length));let d=Array.from({length:e.length},e=>[]);for(let t=0;t[e.toLowerCase(),t])),this.entailment_id=this.label2id.entailment,this.entailment_id===void 0&&(console.warn(`Could not find 'entailment' in label2id mapping. Using 2 as entailment_id.`),this.entailment_id=2),this.contradiction_id=this.label2id.contradiction??this.label2id.not_entailment,this.contradiction_id===void 0&&(console.warn(`Could not find 'contradiction' in label2id mapping. Using 0 as contradiction_id.`),this.contradiction_id=0)}async _call(e,t,{hypothesis_template:n=`This example is {}.`,multi_label:r=!1}={}){let i=Array.isArray(e);i||(e=[e]),Array.isArray(t)||(t=[t]);let a=t.map(e=>n.replace(`{}`,e)),o=r||t.length===1,s=[];for(let n of e){let e=[];for(let t of a){let r=this.tokenizer(n,{text_pair:t,padding:!0,truncation:!0}),i=await this.model(r);o?e.push([i.logits.data[this.contradiction_id],i.logits.data[this.entailment_id]]):e.push(i.logits.data[this.entailment_id])}let r=o?e.map(e=>(0,l.softmax)(e)[1]):(0,l.softmax)(e),i=r.map((e,t)=>[e,t]).sort((e,t)=>t[0]-e[0]);s.push({sequence:n,labels:i.map(e=>t[e[1]]),scores:i.map(e=>e[0])})}return i?s:s[0]}}class D extends g{constructor(e){super(e)}async _call(e,{pooling:t=`none`,normalize:n=!1,quantize:r=!1,precision:i=`binary`}={}){let a=this.tokenizer(e,{padding:!0,truncation:!0}),o=await this.model(a),s=o.last_hidden_state??o.logits??o.token_embeddings;switch(t){case`none`:break;case`mean`:s=(0,d.mean_pooling)(s,a.attention_mask);break;case`first_token`:case`cls`:s=s.slice(null,0);break;case`last_token`:case`eos`:s=s.slice(null,-1);break;default:throw Error(`Pooling method '${t}' not supported.`)}return n&&(s=s.normalize(2,-1)),r&&(s=(0,d.quantize_embeddings)(s,i)),s}}class O extends g{constructor(e){super(e)}async _call(e,{pool:t=null}={}){let n=await p(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a;if(t){if(!(`pooler_output`in i))throw Error(`No pooled output was returned. Make sure the model has a 'pooler' layer when using the 'pool' option.`);a=i.pooler_output}else a=i.last_hidden_state??i.logits??i.image_embeds;return a}}class k extends g{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=this.processor.feature_extractor.config.sampling_rate,r=await m(e,n),i=this.model.config.id2label,a=[];for(let e of r){let n=await this.processor(e),r=await this.model(n),o=r.logits[0],s=await(0,d.topk)(new d.Tensor(`float32`,(0,l.softmax)(o.data),o.dims),t),c=s[0].tolist(),u=s[1].tolist(),f=u.map((e,t)=>({label:i?i[e]:`LABEL_${e}`,score:c[t]}));a.push(f)}return Array.isArray(e)?a:a[0]}}class A extends g{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a sound of {}.`}={}){let r=!Array.isArray(e);r&&(e=[e]);let i=t.map(e=>n.replace(`{}`,e)),a=this.tokenizer(i,{padding:!0,truncation:!0}),o=this.processor.feature_extractor.config.sampling_rate,s=await m(e,o),c=[];for(let e of s){let n=await this.processor(e),r=await this.model({...a,...n}),i=(0,l.softmax)(r.logits_per_audio.data);c.push([...i].map((e,n)=>({score:e,label:t[n]})))}return r?c[0]:c}}class ee extends g{constructor(e){super(e)}async _call(e,t={}){switch(this.model.config.model_type){case`whisper`:case`lite-whisper`:return this._call_whisper(e,t);case`wav2vec2`:case`wav2vec2-bert`:case`unispeech`:case`unispeech-sat`:case`hubert`:return this._call_wav2vec2(e,t);case`moonshine`:return this._call_moonshine(e,t);default:throw Error(`AutomaticSpeechRecognitionPipeline does not support model type '${this.model.config.model_type}'.`)}}async _call_wav2vec2(e,t){t.language&&console.warn('`language` parameter is not yet supported for `wav2vec2` models, defaulting to "English".'),t.task&&console.warn('`task` parameter is not yet supported for `wav2vec2` models, defaulting to "transcribe".');let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await m(e,r),a=[];for(let e of i){let t=await this.processor(e),n=await this.model(t),r=n.logits[0],i=[];for(let e of r)i.push((0,l.max)(e.data)[1]);let o=this.tokenizer.decode(i);a.push({text:o})}return n?a[0]:a}async _call_whisper(e,t){let n=t.return_timestamps??!1,r=t.chunk_length_s??0,i=t.force_full_sequences??!1,a=t.stride_length_s??null,o={...t};n===`word`&&(o.return_token_timestamps=!0,o.return_timestamps=!1);let s=!Array.isArray(e);s&&(e=[e]);let c=this.processor.feature_extractor.config.chunk_length/this.model.config.max_source_positions,u=this.processor.feature_extractor.config.hop_length,d=this.processor.feature_extractor.config.sampling_rate,f=await m(e,d),p=[];for(let e of f){let t=[];if(r>0){if(a===null)a=r/6;else if(r<=a)throw Error("`chunk_length_s` must be larger than `stride_length_s`.");let n=d*r,i=d*a,o=n-2*i,s=0;for(;;){let r=s+n,a=e.subarray(s,r),c=await this.processor(a),l=s===0,u=r>=e.length;if(t.push({stride:[a.length,l?0:i,u?0:i],input_features:c.input_features,is_last:u}),u)break;s+=o}}else t=[{stride:[e.length,0,0],input_features:(await this.processor(e)).input_features,is_last:!0}];for(let e of t){o.num_frames=Math.floor(e.stride[0]/u);let t=await this.model.generate({inputs:e.input_features,...o});n===`word`?(e.tokens=t.sequences.tolist()[0],e.token_timestamps=t.token_timestamps.tolist()[0].map(e=>(0,l.round)(e,2))):e.tokens=t[0].tolist(),e.stride=e.stride.map(e=>e/d)}let[s,f]=this.tokenizer._decode_asr(t,{time_precision:c,return_timestamps:n,force_full_sequences:i});p.push({text:s,...f})}return s?p[0]:p}async _call_moonshine(e,t){let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await m(e,r),a=[];for(let e of i){let n=await this.processor(e),i=Math.floor(e.length/r)*6,o=await this.model.generate({max_new_tokens:i,...t,...n}),s=this.processor.batch_decode(o,{skip_special_tokens:!0})[0];a.push({text:s})}return n?a[0]:a}}class te extends g{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e),r=await p(e),{pixel_values:i}=await this.processor(r),a=[];for(let e of i){e.dims=[1,...e.dims];let n=await this.model.generate({inputs:e,...t}),r=this.tokenizer.batch_decode(n,{skip_special_tokens:!0}).map(e=>({generated_text:e.trim()}));a.push(r)}return n?a:a[0]}}class ne extends g{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=await p(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a=this.model.config.id2label,o=[];for(let e of i.logits){let n=await(0,d.topk)(new d.Tensor(`float32`,(0,l.softmax)(e.data),e.dims),t),r=n[0].tolist(),i=n[1].tolist(),s=i.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:r[t]}));o.push(s)}return Array.isArray(e)?o:o[0]}}class j extends g{constructor(e){super(e),this.subtasks_mapping={panoptic:`post_process_panoptic_segmentation`,instance:`post_process_instance_segmentation`,semantic:`post_process_semantic_segmentation`}}async _call(e,{threshold:t=.5,mask_threshold:n=.5,overlap_mask_area_threshold:r=.8,label_ids_to_fuse:i=null,target_sizes:a=null,subtask:o=null}={}){let s=Array.isArray(e);if(s&&e.length!==1)throw Error(`Image segmentation pipeline currently only supports a batch size of 1.`);let c=await p(e),l=c.map(e=>[e.height,e.width]),u=await this.processor(c),{inputNames:d,outputNames:m}=this.model.sessions.model;if(!d.includes(`pixel_values`)){if(d.length!==1)throw Error(`Expected a single input name, but got ${d.length} inputs: ${d}.`);let e=d[0];if(e in u)throw Error(`Input name ${e} already exists in the inputs.`);u[e]=u.pixel_values}let h=await this.model(u),g=null;if(o!==null)g=this.subtasks_mapping[o];else if(this.processor.image_processor){for(let[e,t]of Object.entries(this.subtasks_mapping))if(t in this.processor.image_processor){g=this.processor.image_processor[t].bind(this.processor.image_processor),o=e;break}}let _=this.model.config.id2label,v=[];if(o)if(o===`panoptic`||o===`instance`){let e=g(h,t,n,r,i,a??l)[0],o=e.segmentation;for(let t of e.segments_info){let e=new Uint8ClampedArray(o.data.length);for(let n=0;nt<-e||t>1+e)&&i.sigmoid_();let a=await f.RawImage.fromTensor(i.mul_(255).to(`uint8`)).resize(r[1],r[0]);v.push({label:null,score:null,mask:a})}}return v}}class re extends j{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e);if(n&&e.length!==1)throw Error(`Background removal pipeline currently only supports a batch size of 1.`);let r=await p(e),i=await super._call(e,t),a=r.map((e,t)=>{let n=e.clone();return n.putAlpha(i[t].mask),n});return a}}class ie extends g{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a photo of {}`}={}){let r=Array.isArray(e),i=await p(e),a=t.map(e=>n.replace(`{}`,e)),o=this.tokenizer(a,{padding:this.model.config.model_type===`siglip`?`max_length`:!0,truncation:!0}),{pixel_values:s}=await this.processor(i),c=await this.model({...o,pixel_values:s}),u=this.model.config.model_type===`siglip`?e=>e.sigmoid().data:e=>(0,l.softmax)(e.data),d=[];for(let e of c.logits_per_image){let n=u(e),r=[...n].map((e,n)=>({score:e,label:t[n]}));r.sort((e,t)=>t.score-e.score),d.push(r)}return r?d:d[0]}}class ae extends g{constructor(e){super(e)}async _call(e,{threshold:t=.9,percentage:n=!1}={}){let r=Array.isArray(e);if(r&&e.length!==1)throw Error(`Object detection pipeline currently only supports a batch size of 1.`);let i=await p(e),a=n?null:i.map(e=>[e.height,e.width]),{pixel_values:o,pixel_mask:s}=await this.processor(i),c=await this.model({pixel_values:o,pixel_mask:s}),l=this.processor.image_processor.post_process_object_detection(c,t,a),u=this.model.config.id2label,d=l.map(e=>e.boxes.map((t,r)=>({score:e.scores[r],label:u[e.classes[r]],box:h(t,!n)})));return r?d:d[0]}}class oe extends g{constructor(e){super(e)}async _call(e,t,{threshold:n=.1,top_k:r=null,percentage:i=!1}={}){let a=Array.isArray(e),o=await p(e),s=this.tokenizer(t,{padding:!0,truncation:!0}),c=await this.processor(o),l=[];for(let e=0;e({score:e.scores[n],label:e.labels[n],box:h(t,!i)}))}else{let e=this.processor.image_processor.post_process_object_detection(f,n,u,!0)[0];p=e.boxes.map((n,r)=>({score:e.scores[r],label:t[e.classes[r]],box:h(n,!i)}))}p.sort((e,t)=>t.score-e.score),r!==null&&(p=p.slice(0,r)),l.push(p)}return a?l:l[0]}}class se extends g{constructor(e){super(e)}async _call(e,t,n={}){let r=(await p(e))[0],{pixel_values:i}=await this.processor(r),a=`${t}`,o=this.tokenizer(a,{add_special_tokens:!1,padding:!0,truncation:!0}).input_ids,s=await this.model.generate({inputs:i,max_length:this.model.config.decoder.max_position_embeddings,decoder_input_ids:o,...n}),c=this.tokenizer.batch_decode(s)[0],l=c.match(/(.*?)<\/s_answer>/),u=null;return l&&l.length>=2&&(u=l[1].trim()),[{answer:u}]}}class M extends g{DEFAULT_VOCODER_ID=`Xenova/speecht5_hifigan`;constructor(e){super(e),this.vocoder=e.vocoder??null}async _call(e,{speaker_embeddings:t=null}={}){return this.processor?this._call_text_to_spectrogram(e,{speaker_embeddings:t}):this._call_text_to_waveform(e)}async _call_text_to_waveform(e){let t=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:n}=await this.model(t),r=this.model.config.sampling_rate;return new u.RawAudio(n.data,r)}async _call_text_to_spectrogram(e,{speaker_embeddings:t}){if(this.vocoder||(console.log(`No vocoder specified, using default HifiGan vocoder.`),this.vocoder=await i.AutoModel.from_pretrained(this.DEFAULT_VOCODER_ID,{dtype:`fp32`})),(typeof t==`string`||t instanceof URL)&&(t=new Float32Array(await(await fetch(t)).arrayBuffer())),t instanceof Float32Array)t=new d.Tensor(`float32`,t,[1,t.length]);else if(!(t instanceof d.Tensor))throw Error("Speaker embeddings must be a `Tensor`, `Float32Array`, `string`, or `URL`.");let{input_ids:n}=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:r}=await this.model.generate_speech(n,t,{vocoder:this.vocoder}),a=this.processor.feature_extractor.config.sampling_rate;return new u.RawAudio(r.data,a)}}class N extends g{constructor(e){super(e)}async _call(e){let t=await p(e),n=await this.processor(t),r=await this.model(n),i=[];for(let e of r.reconstruction){let t=e.squeeze().clamp_(0,1).mul_(255).round_().to(`uint8`);i.push(f.RawImage.fromTensor(t))}return i.length>1?i:i[0]}}class ce extends g{constructor(e){super(e)}async _call(e){let t=await p(e),n=await this.processor(t),{predicted_depth:r}=await this.model(n),i=[];for(let e=0;e1?i:i[0]}}let le=Object.freeze({"text-classification":{tokenizer:r.AutoTokenizer,pipeline:_,model:i.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-finetuned-sst-2-english`},type:`text`},"token-classification":{tokenizer:r.AutoTokenizer,pipeline:v,model:i.AutoModelForTokenClassification,default:{model:`Xenova/bert-base-multilingual-cased-ner-hrl`},type:`text`},"question-answering":{tokenizer:r.AutoTokenizer,pipeline:y,model:i.AutoModelForQuestionAnswering,default:{model:`Xenova/distilbert-base-cased-distilled-squad`},type:`text`},"fill-mask":{tokenizer:r.AutoTokenizer,pipeline:b,model:i.AutoModelForMaskedLM,default:{model:`Xenova/bert-base-uncased`},type:`text`},summarization:{tokenizer:r.AutoTokenizer,pipeline:S,model:i.AutoModelForSeq2SeqLM,default:{model:`Xenova/distilbart-cnn-6-6`},type:`text`},translation:{tokenizer:r.AutoTokenizer,pipeline:C,model:i.AutoModelForSeq2SeqLM,default:{model:`Xenova/t5-small`},type:`text`},"text2text-generation":{tokenizer:r.AutoTokenizer,pipeline:x,model:i.AutoModelForSeq2SeqLM,default:{model:`Xenova/flan-t5-small`},type:`text`},"text-generation":{tokenizer:r.AutoTokenizer,pipeline:T,model:i.AutoModelForCausalLM,default:{model:`Xenova/gpt2`},type:`text`},"zero-shot-classification":{tokenizer:r.AutoTokenizer,pipeline:E,model:i.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-mnli`},type:`text`},"audio-classification":{pipeline:k,model:i.AutoModelForAudioClassification,processor:a.AutoProcessor,default:{model:`Xenova/wav2vec2-base-superb-ks`},type:`audio`},"zero-shot-audio-classification":{tokenizer:r.AutoTokenizer,pipeline:A,model:i.AutoModel,processor:a.AutoProcessor,default:{model:`Xenova/clap-htsat-unfused`},type:`multimodal`},"automatic-speech-recognition":{tokenizer:r.AutoTokenizer,pipeline:ee,model:[i.AutoModelForSpeechSeq2Seq,i.AutoModelForCTC],processor:a.AutoProcessor,default:{model:`Xenova/whisper-tiny.en`},type:`multimodal`},"text-to-audio":{tokenizer:r.AutoTokenizer,pipeline:M,model:[i.AutoModelForTextToWaveform,i.AutoModelForTextToSpectrogram],processor:[a.AutoProcessor,null],default:{model:`Xenova/speecht5_tts`},type:`text`},"image-to-text":{tokenizer:r.AutoTokenizer,pipeline:te,model:i.AutoModelForVision2Seq,processor:a.AutoProcessor,default:{model:`Xenova/vit-gpt2-image-captioning`},type:`multimodal`},"image-classification":{pipeline:ne,model:i.AutoModelForImageClassification,processor:a.AutoProcessor,default:{model:`Xenova/vit-base-patch16-224`},type:`multimodal`},"image-segmentation":{pipeline:j,model:[i.AutoModelForImageSegmentation,i.AutoModelForSemanticSegmentation,i.AutoModelForUniversalSegmentation],processor:a.AutoProcessor,default:{model:`Xenova/detr-resnet-50-panoptic`},type:`multimodal`},"background-removal":{pipeline:re,model:[i.AutoModelForImageSegmentation,i.AutoModelForSemanticSegmentation,i.AutoModelForUniversalSegmentation],processor:a.AutoProcessor,default:{model:`Xenova/modnet`},type:`image`},"zero-shot-image-classification":{tokenizer:r.AutoTokenizer,pipeline:ie,model:i.AutoModel,processor:a.AutoProcessor,default:{model:`Xenova/clip-vit-base-patch32`},type:`multimodal`},"object-detection":{pipeline:ae,model:i.AutoModelForObjectDetection,processor:a.AutoProcessor,default:{model:`Xenova/detr-resnet-50`},type:`multimodal`},"zero-shot-object-detection":{tokenizer:r.AutoTokenizer,pipeline:oe,model:i.AutoModelForZeroShotObjectDetection,processor:a.AutoProcessor,default:{model:`Xenova/owlvit-base-patch32`},type:`multimodal`},"document-question-answering":{tokenizer:r.AutoTokenizer,pipeline:se,model:i.AutoModelForDocumentQuestionAnswering,processor:a.AutoProcessor,default:{model:`Xenova/donut-base-finetuned-docvqa`},type:`multimodal`},"image-to-image":{pipeline:N,model:i.AutoModelForImageToImage,processor:a.AutoProcessor,default:{model:`Xenova/swin2SR-classical-sr-x2-64`},type:`image`},"depth-estimation":{pipeline:ce,model:i.AutoModelForDepthEstimation,processor:a.AutoProcessor,default:{model:`Xenova/dpt-large`},type:`image`},"feature-extraction":{tokenizer:r.AutoTokenizer,pipeline:D,model:i.AutoModel,default:{model:`Xenova/all-MiniLM-L6-v2`},type:`text`},"image-feature-extraction":{processor:a.AutoProcessor,pipeline:O,model:[i.AutoModelForImageFeatureExtraction,i.AutoModel],default:{model:`Xenova/vit-base-patch16-224-in21k`},type:`image`}}),ue=Object.freeze({"sentiment-analysis":`text-classification`,ner:`token-classification`,asr:`automatic-speech-recognition`,"text-to-speech":`text-to-audio`,embeddings:`feature-extraction`});async function de(e,t=null,{progress_callback:n=null,config:r=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,device:s=null,dtype:l=null,subfolder:u=`onnx`,use_external_data_format:d=null,model_file_name:f=null,session_options:p={}}={}){e=ue[e]??e;let m=le[e.split(`_`,1)[0]];if(!m)throw Error(`Unsupported pipeline: ${e}. Must be one of [${Object.keys(le)}]`);t||(t=m.default.model,console.log(`No model specified. Using default model: "${t}".`));let h={progress_callback:n,config:r,cache_dir:i,local_files_only:a,revision:o,device:s,dtype:l,subfolder:u,use_external_data_format:d,model_file_name:f,session_options:p},g=new Map([[`tokenizer`,m.tokenizer],[`model`,m.model],[`processor`,m.processor]]),_=await P(g,t,h);_.task=e,(0,c.dispatchCallback)(n,{status:`ready`,task:e,model:t});let v=m.pipeline;return new v(_)}async function P(e,t,n){let r=Object.create(null),i=[];for(let[a,o]of e.entries()){if(!o)continue;let e;e=Array.isArray(o)?new Promise(async(e,r)=>{let i;for(let a of o){if(a===null){e(null);return}try{e(await a.from_pretrained(t,n));return}catch(e){if(e.message?.includes(`Unsupported model type`))i=e;else if(e.message?.includes(`Could not locate file`))i=e;else{r(e);return}}}r(i)}):o.from_pretrained(t,n),r[a]=e,i.push(e)}await Promise.all(i);for(let[e,t]of Object.entries(r))r[e]=await t;return r}},"./src/tokenizers.js":(e,t,n)=>{n.r(t),n.d(t,{AlbertTokenizer:()=>He,AutoTokenizer:()=>Nt,BartTokenizer:()=>tt,BertTokenizer:()=>Ve,BlenderbotSmallTokenizer:()=>Dt,BlenderbotTokenizer:()=>Et,BloomTokenizer:()=>at,CLIPTokenizer:()=>St,CamembertTokenizer:()=>Xe,CodeGenTokenizer:()=>xt,CodeLlamaTokenizer:()=>ct,CohereTokenizer:()=>jt,ConvBertTokenizer:()=>qe,DebertaTokenizer:()=>We,DebertaV2Tokenizer:()=>Ge,DistilBertTokenizer:()=>Ye,ElectraTokenizer:()=>Qe,EsmTokenizer:()=>pt,FalconTokenizer:()=>dt,GPT2Tokenizer:()=>et,GPTNeoXTokenizer:()=>ft,GemmaTokenizer:()=>ht,Grok1Tokenizer:()=>gt,HerbertTokenizer:()=>Ke,LlamaTokenizer:()=>st,M2M100Tokenizer:()=>yt,MBart50Tokenizer:()=>rt,MBartTokenizer:()=>nt,MPNetTokenizer:()=>ut,MarianTokenizer:()=>wt,MgpstrTokenizer:()=>Mt,MobileBertTokenizer:()=>B,NllbTokenizer:()=>vt,NougatTokenizer:()=>kt,PreTrainedTokenizer:()=>z,Qwen2Tokenizer:()=>mt,RoFormerTokenizer:()=>Je,RobertaTokenizer:()=>it,SiglipTokenizer:()=>Ct,SpeechT5Tokenizer:()=>Ot,SqueezeBertTokenizer:()=>Ue,T5Tokenizer:()=>$e,TokenizerModel:()=>D,VitsTokenizer:()=>At,Wav2Vec2CTCTokenizer:()=>Tt,WhisperTokenizer:()=>bt,XLMRobertaTokenizer:()=>lt,XLMTokenizer:()=>Ze,is_chinese_char:()=>y});var r=n( +/*! ./utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),a=n( +/*! ./utils/hub.js */ +`./src/utils/hub.js`),o=n( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),s=n( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),c=n( +/*! ./utils/data-structures.js */ +`./src/utils/data-structures.js`),l=n( +/*! @huggingface/jinja */ +`./node_modules/@huggingface/jinja/dist/index.js`),u=n( +/*! ./models/whisper/common_whisper.js */ +`./src/models/whisper/common_whisper.js`);async function d(e,t){let n=await Promise.all([(0,a.getModelJSON)(e,`tokenizer.json`,!0,t),(0,a.getModelJSON)(e,`tokenizer_config.json`,!0,t)]);return t.legacy!==null&&(n[1].legacy=t.legacy),n}function f(e,t){let n=[],r=0;for(let i of e.matchAll(t)){let t=i[0];r0&&n.push(t),r=i.index+t.length}return r=19968&&e<=40959||e>=13312&&e<=19903||e>=131072&&e<=173791||e>=173824&&e<=177983||e>=177984&&e<=178207||e>=178208&&e<=183983||e>=63744&&e<=64255||e>=194560&&e<=195103}function b(e,t,n){let r=[],i=0;for(;ithis.tokens_to_ids.get(e)??this.unk_token_id)}convert_ids_to_tokens(e){return e.map(e=>this.vocab[e]??this.unk_token)}}class O extends D{constructor(e){super(e),this.tokens_to_ids=m(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.max_input_chars_per_word=e.max_input_chars_per_word??100,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){let t=[];for(let n of e){let e=[...n];if(e.length>this.max_input_chars_per_word){t.push(this.unk_token);continue}let r=!1,i=0,a=[];for(;i0&&(r=this.config.continuing_subword_prefix+r),this.tokens_to_ids.has(r)){n=r;break}--t}if(n===null){r=!0;break}a.push(n),i=t}r?t.push(this.unk_token):t.push(...a)}return t}}class k extends D{constructor(e,t){super(e);let n=e.vocab.length;this.vocab=Array(n),this.scores=Array(n);for(let t=0;t[e,t])),this.bos_token=` `,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.minScore=(0,o.min)(this.scores)[0],this.unk_score=this.minScore-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new c.CharTrie,this.trie.extend(this.vocab),this.fuse_unk=!0}populateNodes(e){let t=e.chars,n=1,r=0;for(;r{let e=[...Array.from({length:94},(e,t)=>t+33),...Array.from({length:12},(e,t)=>t+161),...Array.from({length:82},(e,t)=>t+174)],t=e.slice(),n=0;for(let r=0;r<256;++r)e.includes(r)||(e.push(r),t.push(256+n),n+=1);let r=t.map(e=>String.fromCharCode(e));return Object.fromEntries(e.map((e,t)=>[e,r[t]]))})(),ee=(0,i.reverseDictionary)(A);class te extends D{constructor(e){super(e),this.tokens_to_ids=m(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e;let t=Array.isArray(e.merges[0]);this.merges=t?e.merges:e.merges.map(e=>e.split(` `,2)),this.bpe_ranks=new Map(this.merges.map((e,t)=>[JSON.stringify(e),t])),this.end_of_word_suffix=e.end_of_word_suffix,this.continuing_subword_suffix=e.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new c.LRUCache(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(e){if(e.length===0)return[];let t=this.cache.get(e);if(t!==void 0)return t;let n=Array.from(e);this.end_of_word_suffix&&(n[n.length-1]+=this.end_of_word_suffix);let r=[];if(n.length>1){let e=new c.PriorityQueue((e,t)=>e.score`<0x${e.toString(16).toUpperCase().padStart(2,`0`)}>`);e.every(e=>this.tokens_to_ids.has(e))?t.push(...e):t.push(this.unk_token)}else t.push(this.unk_token)}return t}}class ne extends D{constructor(e,t){super(e),this.tokens_to_ids=m(t.target_lang?e.vocab[t.target_lang]:e.vocab),this.bos_token=t.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=t.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=t.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){return e}}class j extends r.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`BertNormalizer`:return new P(e);case`Precompiled`:return new R(e);case`Sequence`:return new de(e);case`Replace`:return new re(e);case`NFC`:return new ae(e);case`NFD`:return new oe(e);case`NFKC`:return new se(e);case`NFKD`:return new M(e);case`Strip`:return new N(e);case`StripAccents`:return new ce(e);case`Lowercase`:return new le(e);case`Prepend`:return new ue(e);default:throw Error(`Unknown Normalizer type: ${e.type}`)}}normalize(e){throw Error(`normalize should be implemented in subclass.`)}_call(e){return this.normalize(e)}}class re extends j{normalize(e){let t=p(this.config.pattern);return t===null?e:e.replaceAll(t,this.config.content)}}class ie extends j{form=void 0;normalize(e){return e=e.normalize(this.form),e}}class ae extends ie{form=`NFC`}class oe extends ie{form=`NFD`}class se extends ie{form=`NFKC`}class M extends ie{form=`NFKD`}class N extends j{normalize(e){return this.config.strip_left&&this.config.strip_right?e=e.trim():(this.config.strip_left&&(e=e.trimStart()),this.config.strip_right&&(e=e.trimEnd())),e}}class ce extends j{normalize(e){return e=_(e),e}}class le extends j{normalize(e){return e=e.toLowerCase(),e}}class ue extends j{normalize(e){return e=this.config.prepend+e,e}}class de extends j{constructor(e){super(e),this.normalizers=e.normalizers.map(e=>j.fromConfig(e))}normalize(e){return this.normalizers.reduce((e,t)=>t.normalize(e),e)}}class P extends j{_tokenize_chinese_chars(e){let t=[];for(let n=0;nthis.pre_tokenize_text(e,t)):this.pre_tokenize_text(e,t)).flat()}_call(e,t){return this.pre_tokenize(e,t)}}class fe extends F{constructor(e){super(),this.pattern=RegExp(`[^\\s${S}]+|[${S}]`,`gu`)}pre_tokenize_text(e,t){return e.trim().match(this.pattern)||[]}}class I extends F{constructor(e){super(),this.config=e,this.add_prefix_space=this.config.add_prefix_space,this.trim_offsets=this.config.trim_offsets,this.use_regex=this.config.use_regex??!0,this.pattern=/'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+/gu,this.byte_encoder=A,this.text_encoder=new TextEncoder}pre_tokenize_text(e,t){this.add_prefix_space&&!e.startsWith(` `)&&(e=` `+e);let n=this.use_regex?e.match(this.pattern)||[]:[e];return n.map(e=>Array.from(this.text_encoder.encode(e),e=>this.byte_encoder[e]).join(``))}}class pe extends F{constructor(e){super(),this.config=e,this.pattern=p(this.config.pattern,this.config.invert)}pre_tokenize_text(e,t){return this.pattern===null?[]:this.config.invert?e.match(this.pattern)||[]:this.config.behavior?.toLowerCase()===`removed`?e.split(this.pattern).filter(e=>e):f(e,this.pattern)}}class me extends F{constructor(e){super(),this.config=e,this.pattern=RegExp(`[^${S}]+|[${S}]+`,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class he extends F{constructor(e){super(),this.config=e;let t=`[^\\d]+|\\d${this.config.individual_digits?``:`+`}`;this.pattern=new RegExp(t,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class ge extends r.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`TemplateProcessing`:return new L(e);case`ByteLevel`:return new ye(e);case`RobertaProcessing`:return new ve(e);case`BertProcessing`:return new _e(e);case`Sequence`:return new be(e);default:throw Error(`Unknown PostProcessor type: ${e.type}`)}}post_process(e,...t){throw Error(`post_process should be implemented in subclass.`)}_call(e,...t){return this.post_process(e,...t)}}class _e extends ge{constructor(e){super(e),this.cls=e.cls[0],this.sep=e.sep[0]}post_process(e,t=null,{add_special_tokens:n=!0}={}){n&&(e=(0,i.mergeArrays)([this.cls],e,[this.sep]));let r=Array(e.length).fill(0);if(t!==null){let a=n&&this instanceof ve?[this.sep]:[],o=n?[this.sep]:[];e=(0,i.mergeArrays)(e,a,t,o),r=(0,i.mergeArrays)(r,Array(t.length+a.length+o.length).fill(1))}return{tokens:e,token_type_ids:r}}}class ve extends _e{}class L extends ge{constructor(e){super(e),this.single=e.single,this.pair=e.pair}post_process(e,t=null,{add_special_tokens:n=!0}={}){let r=t===null?this.single:this.pair,a=[],o=[];for(let s of r)`SpecialToken`in s?n&&(a.push(s.SpecialToken.id),o.push(s.SpecialToken.type_id)):`Sequence`in s&&(s.Sequence.id===`A`?(a=(0,i.mergeArrays)(a,e),o=(0,i.mergeArrays)(o,Array(e.length).fill(s.Sequence.type_id))):s.Sequence.id===`B`&&(a=(0,i.mergeArrays)(a,t),o=(0,i.mergeArrays)(o,Array(t.length).fill(s.Sequence.type_id))));return{tokens:a,token_type_ids:o}}}class ye extends ge{post_process(e,t=null){return t&&(e=(0,i.mergeArrays)(e,t)),{tokens:e}}}class be extends ge{constructor(e){super(e),this.processors=e.processors.map(e=>ge.fromConfig(e))}post_process(e,t=null,n={}){let r;for(let i of this.processors)if(i instanceof ye){let n=i.post_process(e);if(e=n.tokens,t){let e=i.post_process(t);t=e.tokens}}else{let a=i.post_process(e,t,n);e=a.tokens,r=a.token_type_ids}return{tokens:e,token_type_ids:r}}}class xe extends r.Callable{constructor(e){super(),this.config=e,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets=e.trim_offsets}static fromConfig(e){if(e===null)return null;switch(e.type){case`WordPiece`:return new Ee(e);case`Metaspace`:return new Ne(e);case`ByteLevel`:return new De(e);case`Replace`:return new Se(e);case`ByteFallback`:return new Ce(e);case`Fuse`:return new we(e);case`Strip`:return new Te(e);case`Sequence`:return new ke(e);case`CTC`:return new Oe(e);case`BPEDecoder`:return new Ae(e);default:throw Error(`Unknown Decoder type: ${e.type}`)}}_call(e){return this.decode(e)}decode(e){return this.decode_chain(e).join(``)}decode_chain(e){throw Error("`decode_chain` should be implemented in subclass.")}}class Se extends xe{decode_chain(e){let t=p(this.config.pattern);return t===null?e:e.map(e=>e.replaceAll(t,this.config.content))}}class Ce extends xe{constructor(e){super(e),this.text_decoder=new TextDecoder}decode_chain(e){let t=[],n=[];for(let r of e){let e=null;if(r.length===6&&r.startsWith(`<0x`)&&r.endsWith(`>`)){let t=parseInt(r.slice(3,5),16);isNaN(t)||(e=t)}if(e!==null)n.push(e);else{if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}t.push(r)}}if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}return t}}class we extends xe{decode_chain(e){return[e.join(``)]}}class Te extends xe{constructor(e){super(e),this.content=this.config.content,this.start=this.config.start,this.stop=this.config.stop}decode_chain(e){return e.map(e=>{let t=0;for(let n=0;n(t!==0&&(e=e.startsWith(this.config.prefix)?e.replace(this.config.prefix,``):` `+e),this.cleanup&&(e=g(e)),e))}}class De extends xe{constructor(e){super(e),this.byte_decoder=ee,this.text_decoder=new TextDecoder(`utf-8`,{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(e){let t=e.join(``),n=new Uint8Array([...t].map(e=>this.byte_decoder[e])),r=this.text_decoder.decode(n);return r}decode_chain(e){let t=[],n=[];for(let r of e)this.added_tokens.find(e=>e.content===r)===void 0?n.push(r):(n.length>0&&(t.push(this.convert_tokens_to_string(n)),n=[]),t.push(r));return n.length>0&&t.push(this.convert_tokens_to_string(n)),t}}class Oe extends xe{constructor(e){super(e),this.pad_token=this.config.pad_token,this.word_delimiter_token=this.config.word_delimiter_token,this.cleanup=this.config.cleanup}convert_tokens_to_string(e){if(e.length===0)return``;let t=[e[0]];for(let n=1;ne!==this.pad_token),r=n.join(``);return this.cleanup&&(r=g(r).replaceAll(this.word_delimiter_token,` `).trim()),r}decode_chain(e){return[this.convert_tokens_to_string(e)]}}class ke extends xe{constructor(e){super(e),this.decoders=e.decoders.map(e=>xe.fromConfig(e))}decode_chain(e){return this.decoders.reduce((e,t)=>t.decode_chain(e),e)}}class Ae extends xe{constructor(e){super(e),this.suffix=this.config.suffix}decode_chain(e){return e.map((t,n)=>t.replaceAll(this.suffix,n===e.length-1?``:` `))}}class je extends xe{decode_chain(e){let t=``;for(let n=1;ne.normalize(`NFKC`)).join(`~`)}else e=e.normalize(`NFKC`);return e}}class Pe extends F{constructor(e){super(),this.tokenizers=e.pretokenizers.map(e=>F.fromConfig(e))}pre_tokenize_text(e,t){return this.tokenizers.reduce((e,n)=>n.pre_tokenize(e,t),[e])}}class Fe extends F{constructor(e){super()}pre_tokenize_text(e,t){return e.match(/\w+|[^\w\s]+/g)||[]}}class Ie extends F{constructor(e){super()}pre_tokenize_text(e,t){return x(e)}}class Le extends F{constructor(e){super(),this.config=e,this.pattern=p(this.config.pattern),this.content=this.config.content}pre_tokenize_text(e,t){return this.pattern===null?[e]:[e.replaceAll(this.pattern,this.config.content)]}}let Re=[`bos_token`,`eos_token`,`unk_token`,`sep_token`,`pad_token`,`cls_token`,`mask_token`];function ze(e,t,n,r){for(let a of Object.keys(e)){let o=t-e[a].length,s=n(a),c=Array(o).fill(s);e[a]=r===`right`?(0,i.mergeArrays)(e[a],c):(0,i.mergeArrays)(c,e[a])}}function Be(e,t){for(let n of Object.keys(e))e[n].length=t}class z extends r.Callable{return_token_type_ids=!1;padding_side=`right`;constructor(e,t){super(),this.config=t,this.normalizer=j.fromConfig(e.normalizer),this.pre_tokenizer=F.fromConfig(e.pre_tokenizer),this.model=D.fromConfig(e.model,t),this.post_processor=ge.fromConfig(e.post_processor),this.decoder=xe.fromConfig(e.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[];for(let t of e.added_tokens){let e=new E(t);this.added_tokens.push(e),this.model.tokens_to_ids.set(e.content,e.id),this.model.vocab[e.id]=e.content,e.special&&(this.special_tokens.push(e.content),this.all_special_ids.push(e.id))}if(this.additional_special_tokens=t.additional_special_tokens??[],this.special_tokens.push(...this.additional_special_tokens),this.special_tokens=[...new Set(this.special_tokens)],this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.added_tokens_splitter=new c.DictionarySplitter(this.added_tokens.map(e=>e.content)),this.added_tokens_map=new Map(this.added_tokens.map(e=>[e.content,e])),this.mask_token=this.getToken(`mask_token`),this.mask_token_id=this.model.tokens_to_ids.get(this.mask_token),this.pad_token=this.getToken(`pad_token`,`eos_token`),this.pad_token_id=this.model.tokens_to_ids.get(this.pad_token),this.sep_token=this.getToken(`sep_token`),this.sep_token_id=this.model.tokens_to_ids.get(this.sep_token),this.unk_token=this.getToken(`unk_token`),this.unk_token_id=this.model.tokens_to_ids.get(this.unk_token),this.bos_token=this.getToken(`bos_token`),this.bos_token_id=this.model.tokens_to_ids.get(this.bos_token),this.eos_token=this.getToken(`eos_token`),this.eos_token_id=this.model.tokens_to_ids.get(this.eos_token),this.model_max_length=t.model_max_length,this.remove_space=t.remove_space,this.clean_up_tokenization_spaces=t.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=t.do_lowercase_and_remove_accent??!1,t.padding_side&&(this.padding_side=t.padding_side),this.legacy=!1,this.chat_template=t.chat_template??null,Array.isArray(this.chat_template)){let e=Object.create(null);for(let{name:t,template:n}of this.chat_template){if(typeof t!=`string`||typeof n!=`string`)throw Error(`Chat template must be a list of objects with "name" and "template" properties`);e[t]=n}this.chat_template=e}this._compiled_template_cache=new Map}getToken(...e){for(let t of e){let e=this.config[t];if(!e)continue;if(typeof e==`object`){if(e.__type===`AddedToken`)return e.content;throw Error(`Unknown token: ${e}`)}else return e}return null}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){let s=await d(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o});return new this(...s)}_call(e,{text_pair:t=null,add_special_tokens:n=!0,padding:r=!1,truncation:i=null,max_length:a=null,return_tensor:c=!0,return_token_type_ids:l=null}={}){let u=Array.isArray(e),d;if(u){if(e.length===0)throw Error(`text array must be non-empty`);if(t!==null){if(Array.isArray(t)){if(e.length!==t.length)throw Error(`text and text_pair must have the same length`)}else throw Error(`text_pair must also be an array`);d=e.map((e,r)=>this._encode_plus(e,{text_pair:t[r],add_special_tokens:n,return_token_type_ids:l}))}else d=e.map(e=>this._encode_plus(e,{add_special_tokens:n,return_token_type_ids:l}))}else{if(e==null)throw Error(`text may not be null or undefined`);if(Array.isArray(t))throw Error("When specifying `text_pair`, since `text` is a string, `text_pair` must also be a string (i.e., not an array).");d=[this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:l})]}if(a===null?a=this.model_max_length:i===null&&(r===!0?(console.warn("`max_length` is ignored when `padding: true` and there is no truncation strategy. To pad to max length, use `padding: 'max_length'`."),a=this.model_max_length):r===!1&&(console.warn("Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation: true` to explicitly truncate examples to max length."),i=!0)),r===!0&&(a=Math.min((0,o.max)(d.map(e=>e.input_ids.length))[0],a??1/0)),a=Math.min(a,this.model_max_length??1/0),r||i)for(let e=0;ea?i&&Be(d[e],a):r&&ze(d[e],a,e=>e===`input_ids`?this.pad_token_id:0,this.padding_side);let f={};if(c){if(!(r&&i)&&d.some(e=>{for(let t of Object.keys(e))if(e[t].length!==d[0][t]?.length)return!0;return!1}))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=true' and 'truncation=true' to have batched tensors with the same length.`);let e=[d.length,d[0].input_ids.length];for(let t of Object.keys(d[0]))f[t]=new s.Tensor(`int64`,BigInt64Array.from(d.flatMap(e=>e[t]).map(BigInt)),e)}else{for(let e of Object.keys(d[0]))f[e]=d.map(t=>t[e]);if(!u)for(let e of Object.keys(f))f[e]=f[e][0]}return f}_encode_text(e){if(e===null)return null;let t=this.added_tokens_splitter.split(e);for(let e=0;e0&&(t[e-1]=t[e-1].trimEnd()),n.rstrip&&e{if(e.length===0)return[];if(this.added_tokens_map.has(e))return[e];if(this.remove_space===!0&&(e=e.trim().split(/\s+/).join(` `)),this.do_lowercase_and_remove_accent&&(e=v(e)),this.normalizer!==null&&(e=this.normalizer(e)),e.length===0)return[];let n=this.pre_tokenizer===null?[e]:this.pre_tokenizer(e,{section_index:t}),r=this.model(n);return r});return n}_encode_plus(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){let{tokens:i,token_type_ids:a}=this._tokenize_helper(e,{pair:t,add_special_tokens:n}),o=this.model.convert_tokens_to_ids(i),s={input_ids:o,attention_mask:Array(o.length).fill(1)};return(r??this.return_token_type_ids)&&a&&(s.token_type_ids=a),s}_tokenize_helper(e,{pair:t=null,add_special_tokens:n=!1}={}){let r=this._encode_text(e),a=this._encode_text(t);return this.post_processor?this.post_processor(r,a,{add_special_tokens:n}):{tokens:(0,i.mergeArrays)(r??[],a??[])}}tokenize(e,{pair:t=null,add_special_tokens:n=!1}={}){return this._tokenize_helper(e,{pair:t,add_special_tokens:n}).tokens}encode(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){return this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:r}).input_ids}batch_decode(e,t={}){return e instanceof s.Tensor&&(e=e.tolist()),e.map(e=>this.decode(e,t))}decode(e,t={}){if(e instanceof s.Tensor&&(e=h(e)),!Array.isArray(e)||e.length===0||!(0,i.isIntegralNumber)(e[0]))throw Error(`token_ids must be a non-empty array of integers.`);return this.decode_single(e,t)}decode_single(e,{skip_special_tokens:t=!1,clean_up_tokenization_spaces:n=null}){let r=this.model.convert_ids_to_tokens(e);t&&(r=r.filter(e=>!this.special_tokens.includes(e)));let i=this.decoder?this.decoder(r):r.join(` `);return this.decoder&&this.decoder.end_of_word_suffix&&(i=i.replaceAll(this.decoder.end_of_word_suffix,` `),t&&(i=i.trim())),(n??this.clean_up_tokenization_spaces)&&(i=g(i)),i}get_chat_template({chat_template:e=null,tools:t=null}={}){if(this.chat_template&&typeof this.chat_template==`object`){let n=this.chat_template;if(e!==null&&Object.hasOwn(n,e))e=n[e];else if(e===null)if(t!==null&&`tool_use`in n)e=n.tool_use;else if(`default`in n)e=n.default;else throw Error(`This model has multiple chat templates with no default specified! Please either pass a chat template or the name of the template you wish to use to the 'chat_template' argument. Available template names are ${Object.keys(n).sort()}.`)}else if(e===null)if(this.chat_template)e=this.chat_template;else throw Error(`Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating`);return e}apply_chat_template(e,{tools:t=null,documents:n=null,chat_template:r=null,add_generation_prompt:i=!1,tokenize:a=!0,padding:o=!1,truncation:s=!1,max_length:c=null,return_tensor:u=!0,return_dict:d=!1,tokenizer_kwargs:f={},...p}={}){if(r=this.get_chat_template({chat_template:r,tools:t}),typeof r!=`string`)throw Error(`chat_template must be a string, but got ${typeof r}`);let m=this._compiled_template_cache.get(r);m===void 0&&(m=new l.Template(r),this._compiled_template_cache.set(r,m));let h=Object.create(null);for(let e of Re){let t=this.getToken(e);t&&(h[e]=t)}let g=m.render({messages:e,add_generation_prompt:i,tools:t,documents:n,...h,...p});if(a){let e=this._call(g,{add_special_tokens:!1,padding:o,truncation:s,max_length:c,return_tensor:u,...f});return d?e:e.input_ids}return g}}class Ve extends z{return_token_type_ids=!0}class He extends z{return_token_type_ids=!0}class B extends z{return_token_type_ids=!0}class Ue extends z{return_token_type_ids=!0}class We extends z{return_token_type_ids=!0}class Ge extends z{return_token_type_ids=!0}class Ke extends z{return_token_type_ids=!0}class qe extends z{return_token_type_ids=!0}class Je extends z{return_token_type_ids=!0}class Ye extends z{}class Xe extends z{}class Ze extends z{return_token_type_ids=!0;constructor(e,t){super(e,t),console.warn('WARNING: `XLMTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}}class Qe extends z{return_token_type_ids=!0}class $e extends z{}class et extends z{}class tt extends z{}class nt extends z{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{2}_[A-Z]{2}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class rt extends nt{}class it extends z{}class at extends z{}let ot=`▁`;class st extends z{padding_side=`left`;constructor(e,t){super(e,t),this.legacy=t.legacy??!0,this.legacy||(this.normalizer=null,this.pre_tokenizer=new Me({replacement:ot,add_prefix_space:!0,prepend_scheme:`first`}))}_encode_text(e){if(e===null)return null;if(this.legacy||e.length===0)return super._encode_text(e);let t=super._encode_text(ot+e.replaceAll(ot,` `));return t.length>1&&t[0]===ot&&this.special_tokens.includes(t[1])&&(t=t.slice(1)),t}}class ct extends z{}class lt extends z{}class ut extends z{}class dt extends z{}class ft extends z{}class pt extends z{}class mt extends z{}class ht extends z{}class gt extends z{}function _t(e,t,n,r){if(!(`language_codes`in e)||!Array.isArray(e.language_codes))throw Error("Tokenizer must have `language_codes` attribute set and it should be an array of language ids.");if(!(`languageRegex`in e)||!(e.languageRegex instanceof RegExp))throw Error("Tokenizer must have `languageRegex` attribute set and it should be a regular expression.");if(!(`lang_to_token`in e)||typeof e.lang_to_token!=`function`)throw Error("Tokenizer must have `lang_to_token` attribute set and it should be a function.");let i=r.src_lang,a=r.tgt_lang;if(!e.language_codes.includes(a))throw Error(`Target language code "${a}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);if(i!==void 0){if(!e.language_codes.includes(i))throw Error(`Source language code "${i}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);for(let t of e.post_processor.config.single)if(`SpecialToken`in t&&e.languageRegex.test(t.SpecialToken.id)){t.SpecialToken.id=e.lang_to_token(i);break}}return r.forced_bos_token_id=e.model.convert_tokens_to_ids([e.lang_to_token(a)])[0],e._call(t,n)}class vt extends z{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{3}_[A-Z][a-z]{3}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class yt extends z{constructor(e,t){super(e,t),this.languageRegex=/^__[a-z]{2,3}__$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)).map(e=>e.slice(2,-2)),this.lang_to_token=e=>`__${e}__`}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class bt extends z{get timestamp_begin(){return this.model.convert_tokens_to_ids([`<|notimestamps|>`])[0]+1}_decode_asr(e,{return_timestamps:t=!1,return_language:n=!1,time_precision:r=null,force_full_sequences:i=!0}={}){if(r===null)throw Error(`Must specify time_precision`);let a=null,s=t===`word`;function c(){return{language:a,timestamp:[null,null],text:``}}let l=[],d=c(),f=0,p=this.timestamp_begin,m=1500,h=p+m,g=[],_=[],v=!1,y=null,b=new Set(this.all_special_ids);for(let n of e){let e=n.tokens,i=s?n.token_timestamps:null,m=null,x=p;if(`stride`in n){let[t,i,a]=n.stride;if(f-=i,y=t-a,i&&(x=i/r+p),a)for(let t=e.length-1;t>=0;--t){let n=Number(e[t]);if(n>=p){if(m!==null&&(n-p)*r=p&&y<=h){let e=(y-p)*r+f,t=(0,o.round)(e,2);if(m!==null&&y>=m)v=!0;else if(v||g.length>0&&y0?(g.push(S),s&&_.push(w)):g.every(e=>e.length===0)&&(d=c(),g=[],S=[],_=[],w=[])}if(g.length>0){if(i&&t)throw Error(`Whisper did not predict an ending timestamp, which can happen if audio is cut off in the middle of a word. Also make sure WhisperTimeStampLogitsProcessor was used during generation.`);let[e,n]=this.findLongestCommonSequence(g,_),r=this.decode(e);d.text=r,s&&(d.words=this.collateWordTimestamps(e,n,a)),l.push(d)}let x=Object.create(null),S=l.map(e=>e.text).join(``);if(t||n){for(let e=0;e0,o=a?[]:null,s=a?t[0]:null;for(let c=1;ce===g[n]&&s[i+n]<=t[c][m+n]).length:p.filter((e,t)=>e===g[t]).length;let v=e/1e4,y=_/e+v;_>1&&y>u&&(u=y,d=[i,o,m,h])}let[p,m,h,g]=d,_=Math.floor((m+p)/2),v=Math.floor((g+h)/2);i.push(...n.slice(0,_)),n=l.slice(v),r=n.length,a&&(o.push(...s.slice(0,_)),s=t[c].slice(v))}return i.push(...n),a?(o.push(...s),[i,o]):[i,[]]}collateWordTimestamps(e,t,n){let[r,i,a]=this.combineTokensIntoWords(e,n),o=[];for(let e=0;e=r){let e=((t-r)*n).toFixed(2);i.push(`<|${e}|>`),i.push([])}else i[i.length-1].push(t);return i=i.map(e=>typeof e==`string`?e:super.decode(e,t)),i.join(``)}splitTokensOnUnicode(e){let t=this.decode(e,{decode_with_timestamps:!0}),n=`�`,r=[],i=[],a=[],o=[],s=[],c=0;for(let l=0;l=this.model.tokens_to_ids.get(`<|endoftext|>`),f=c.startsWith(` `),p=c.trim(),m=s.test(p);if(d||f||m||i.length===0)i.push(c),a.push(l),o.push(u);else{let e=i.length-1;i[e]+=c,a[e].push(...l),o[e].push(...u)}}return[i,a,o]}mergePunctuations(e,t,n,r,a){let o=structuredClone(e),s=structuredClone(t),c=structuredClone(n),l=o.length-2,u=o.length-1;for(;l>=0;)o[l].startsWith(` `)&&r.includes(o[l].trim())?(o[u]=o[l]+o[u],s[u]=(0,i.mergeArrays)(s[l],s[u]),c[u]=(0,i.mergeArrays)(c[l],c[u]),o[l]=``,s[l]=[],c[l]=[]):u=l,--l;for(l=0,u=1;ue),s.filter(e=>e.length>0),c.filter(e=>e.length>0)]}}class xt extends z{}class St extends z{}class Ct extends z{}class wt extends z{constructor(e,t){super(e,t),this.languageRegex=/^(>>\w+<<)\s*/g,this.supported_language_codes=this.model.vocab.filter(e=>this.languageRegex.test(e)),console.warn('WARNING: `MarianTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}_encode_text(e){if(e===null)return null;let[t,...n]=e.trim().split(this.languageRegex);if(n.length===0)return super._encode_text(t);if(n.length===2){let[e,t]=n;return this.supported_language_codes.includes(e)||console.warn(`Unsupported language code "${e}" detected, which may lead to unexpected behavior. Should be one of: ${JSON.stringify(this.supported_language_codes)}`),(0,i.mergeArrays)([e],super._encode_text(t))}}}class Tt extends z{}class Et extends z{}class Dt extends z{}class Ot extends z{}class kt extends z{}class At extends z{constructor(e,t){super(e,t),this.decoder=new je({})}}class jt extends z{}class Mt extends z{}class Nt{static TOKENIZER_CLASS_MAPPING={T5Tokenizer:$e,DistilBertTokenizer:Ye,CamembertTokenizer:Xe,DebertaTokenizer:We,DebertaV2Tokenizer:Ge,BertTokenizer:Ve,HerbertTokenizer:Ke,ConvBertTokenizer:qe,RoFormerTokenizer:Je,XLMTokenizer:Ze,ElectraTokenizer:Qe,MobileBertTokenizer:B,SqueezeBertTokenizer:Ue,AlbertTokenizer:He,GPT2Tokenizer:et,BartTokenizer:tt,MBartTokenizer:nt,MBart50Tokenizer:rt,RobertaTokenizer:it,WhisperTokenizer:bt,CodeGenTokenizer:xt,CLIPTokenizer:St,SiglipTokenizer:Ct,MarianTokenizer:wt,BloomTokenizer:at,NllbTokenizer:vt,M2M100Tokenizer:yt,LlamaTokenizer:st,CodeLlamaTokenizer:ct,XLMRobertaTokenizer:lt,MPNetTokenizer:ut,FalconTokenizer:dt,GPTNeoXTokenizer:ft,EsmTokenizer:pt,Wav2Vec2CTCTokenizer:Tt,BlenderbotTokenizer:Et,BlenderbotSmallTokenizer:Dt,SpeechT5Tokenizer:Ot,NougatTokenizer:kt,VitsTokenizer:At,Qwen2Tokenizer:mt,GemmaTokenizer:ht,Grok1Tokenizer:gt,CohereTokenizer:jt,MgpstrTokenizer:Mt,PreTrainedTokenizer:z};static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){let[s,c]=await d(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o}),l=c.tokenizer_class?.replace(/Fast$/,``)??`PreTrainedTokenizer`,u=this.TOKENIZER_CLASS_MAPPING[l];return u||(console.warn(`Unknown tokenizer class "${l}", attempting to construct from base class.`),u=z),new u(s,c)}}},"./src/utils/audio.js":(e,t,n)=>{n.r(t),n.d(t,{RawAudio:()=>O,hamming:()=>f,hanning:()=>d,mel_filter_bank:()=>y,read_audio:()=>l,spectrogram:()=>w,window_function:()=>T});var r=n( +/*! ./hub.js */ +`./src/utils/hub.js`),i=n( +/*! ./maths.js */ +`./src/utils/maths.js`),a=n( +/*! ./core.js */ +`./src/utils/core.js`),o=n( +/*! ../env.js */ +`./src/env.js`),s=n( +/*! ./tensor.js */ +`./src/utils/tensor.js`),c=n( +/*! node:fs */ +`?7992`);async function l(e,t){if(typeof AudioContext>`u`)throw Error("Unable to load audio from path/URL since `AudioContext` is not available in your environment. Instead, audio data should be passed directly to the pipeline/processor. For more information and some example code, see https://huggingface.co/docs/transformers.js/guides/node-audio-processing.");let n=await(await(0,r.getFile)(e)).arrayBuffer(),i=new AudioContext({sampleRate:t});t===void 0&&console.warn(`No sampling rate provided, using default of ${i.sampleRate}Hz.`);let a=await i.decodeAudioData(n),o;if(a.numberOfChannels===2){let e=Math.sqrt(2),t=a.getChannelData(0),n=a.getChannelData(1);o=new Float32Array(t.length);for(let r=0;r2595*Math.log10(1+e/700),kaldi:e=>1127*Math.log(1+e/700),slaney:(e,t=1e3,n=15,r=27/Math.log(6.4))=>e>=t?n+Math.log(e/t)*r:3*e/200};function m(e,t=`htk`){let n=p[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}let h={htk:e=>700*(10**(e/2595)-1),kaldi:e=>700*(Math.exp(e/1127)-1),slaney:(e,t=1e3,n=15,r=Math.log(6.4)/27)=>e>=n?t*Math.exp(r*(e-n)):200*e/3};function g(e,t=`htk`){let n=h[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}function _(e,t){let n=Float64Array.from({length:t.length-1},(e,n)=>t[n+1]-t[n]),r=Array.from({length:e.length},()=>Array(t.length));for(let n=0;nArray(e.length));for(let t=0;te+r*n)}function y(e,t,n,r,i,a=null,o=`htk`,s=!1){if(a!==null&&a!==`slaney`)throw Error(`norm must be one of null or "slaney"`);if(e<2)throw Error(`Require num_frequency_bins: ${e} >= 2`);if(n>r)throw Error(`Require min_frequency: ${n} <= max_frequency: ${r}`);let c=m(n,o),l=m(r,o),u=v(c,l,t+2),d=g(u,o),f;if(s){let t=i/((e-1)*2);f=m(Float64Array.from({length:e},(e,n)=>n*t),o),d=u}else f=v(0,Math.floor(i/2),e);let p=_(f,d);if(a!==null&&a===`slaney`)for(let n=0;na)throw Error(`frame_length (${n}) may not be larger than fft_length (${a})`);if(D!==n)throw Error(`Length of the window (${D}) must equal frame_length (${n})`);if(r<=0)throw Error(`hop_length must be greater than zero`);if(o===null&&p!==null)throw Error("You have provided `mel_filters` but `power` is `None`. Mel spectrogram computation is not yet supported for complex-valued spectrogram. Specify `power` to fix this issue.");if(!f)throw Error("`preemphasis_htk_flavor=false` is not currently supported.");if(c){if(l!==`reflect`)throw Error(`pad_mode="${l}" not implemented yet.`);let t=Math.floor((a-1)/2)+1;e=b(e,t,t)}let O=Math.floor(1+Math.floor((e.length-n)/r));x!==null&&OO?T&&(ee=w):ee=A=w);let te=new i.FFT(a),ne=new Float64Array(a),j=new Float64Array(te.outputBufferSize),re=new Float32Array(k*ee);for(let i=0;i=1;--e)ne[e]-=d*ne[e-1];ne[0]*=1-d}for(let e=0;ee**.85);break;default:throw Error(`Unknown window type ${t}.`)}if(n&&(o=o.subarray(0,e)),r===null)return o;if(e>r)throw Error(`Length of the window (${e}) may not be larger than frame_length (${r})`);return o}function E(e,t){let n=44,r=new ArrayBuffer(n+e.length*4),i=new DataView(r);D(i,0,`RIFF`),i.setUint32(4,36+e.length*4,!0),D(i,8,`WAVE`),D(i,12,`fmt `),i.setUint32(16,16,!0),i.setUint16(20,3,!0),i.setUint16(22,1,!0),i.setUint32(24,t,!0),i.setUint32(28,t*4,!0),i.setUint16(32,4,!0),i.setUint16(34,32,!0),D(i,36,`data`),i.setUint32(40,e.length*4,!0);for(let t=0;t{let n=await t.arrayBuffer();c.writeFileSync(e,Buffer.from(n))};else throw Error(`Unable to save because filesystem is disabled in this environment.`);await t(e,this.toBlob())}}},"./src/utils/constants.js":(e,t,n)=>{n.r(t),n.d(t,{CHAT_TEMPLATE_NAME:()=>c,CONFIG_NAME:()=>i,FEATURE_EXTRACTOR_NAME:()=>a,GENERATION_CONFIG_NAME:()=>l,GITHUB_ISSUE_URL:()=>r,IMAGE_PROCESSOR_NAME:()=>o,PROCESSOR_NAME:()=>s});let r=`https://github.com/huggingface/transformers.js/issues/new/choose`,i=`config.json`,a=`preprocessor_config.json`,o=a,s=`processor_config.json`,c=`chat_template.jinja`,l=`generation_config.json`},"./src/utils/core.js":(e,t,n)=>{n.r(t),n.d(t,{calculateDimensions:()=>l,calculateReflectOffset:()=>p,count:()=>_,dispatchCallback:()=>r,escapeRegExp:()=>a,isIntegralNumber:()=>s,isNullishDimension:()=>c,isTypedArray:()=>o,len:()=>g,mergeArrays:()=>d,pick:()=>h,pop:()=>u,product:()=>f,reverseDictionary:()=>i,saveBlob:()=>m});function r(e,t){e&&e(t)}function i(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[t,e]))}function a(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function o(e){return e?.prototype?.__proto__?.constructor?.name===`TypedArray`}function s(e){return Number.isInteger(e)||typeof e==`bigint`}function c(e){return e==null||e===-1}function l(e){let t=[],n=e;for(;Array.isArray(n);)t.push(n.length),n=n[0];return t}function u(e,t,n=void 0){let r=e[t];if(r!==void 0)return delete e[t],r;if(n===void 0)throw Error(`Key ${t} does not exist in object.`);return n}function d(...e){return Array.prototype.concat.apply([],e)}function f(...e){return e.reduce((e,t)=>e.flatMap(e=>t.map(t=>[e,t])))}function p(e,t){return Math.abs((e+t)%(2*t)-t)}function m(e,t){let n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=e,r.click(),r.remove(),URL.revokeObjectURL(n)}function h(e,t){return Object.assign({},...t.map(t=>{if(e[t]!==void 0)return{[t]:e[t]}}))}function g(e){let t=0;for(let n of e)++t;return t}function _(e,t){let n=0;for(let r of e)r===t&&++n;return n}},"./src/utils/data-structures.js":(e,t,n)=>{n.r(t),n.d(t,{CharTrie:()=>i,DictionarySplitter:()=>c,LRUCache:()=>l,PriorityQueue:()=>r,TokenLattice:()=>o});class r{constructor(e=(e,t)=>e>t,t=1/0){this._heap=[],this._comparator=e,this._maxSize=t}get size(){return this._heap.length}isEmpty(){return this.size===0}peek(){return this._heap[0]}push(...e){return this.extend(e)}extend(e){for(let t of e)if(this.size0&&this._swap(0,t),this._heap.pop(),this._siftDown(),e}replace(e){let t=this.peek();return this._heap[0]=e,this._siftDown(),t}_parent(e){return(e+1>>>1)-1}_left(e){return(e<<1)+1}_right(e){return e+1<<1}_greater(e,t){return this._comparator(this._heap[e],this._heap[t])}_swap(e,t){let n=this._heap[e];this._heap[e]=this._heap[t],this._heap[t]=n}_siftUp(){this._siftUpFrom(this.size-1)}_siftUpFrom(e){for(;e>0&&this._greater(e,this._parent(e));)this._swap(e,this._parent(e)),e=this._parent(e)}_siftDown(){let e=0;for(;this._left(e)[]),this.endNodes=Array.from({length:this.len+1},()=>[]);let r=new s(this.bosTokenId,0,0,0,0),i=new s(this.eosTokenId,1,this.len,0,0);this.nodes.push(r.clone()),this.nodes.push(i.clone()),this.beginNodes[this.len].push(i),this.endNodes[0].push(r)}insert(e,t,n,r){let i=this.nodes.length,a=new s(r,i,e,t,n);this.beginNodes[e].push(a),this.endNodes[e+t].push(a),this.nodes.push(a)}viterbi(){let e=this.len,t=0;for(;t<=e;){if(this.beginNodes[t].length==0)return[];for(let e of this.beginNodes[t]){e.prev=null;let n=0,r=null;for(let i of this.endNodes[t]){let t=i.backtraceScore+e.score;(r===null||t>n)&&(r=i.clone(),n=t)}if(r!==null)e.prev=r,e.backtraceScore=n;else return[]}++t}let n=[],r=this.beginNodes[e][0],i=r.prev;if(i===null)return[];let a=i.clone();for(;a.prev!==null;){n.push(a.clone());let e=a.clone();a=e.prev.clone()}return n.reverse(),n}piece(e){return this.chars.slice(e.pos,e.pos+e.length).join(``)}tokens(){let e=this.viterbi();return e.map(e=>this.piece(e))}tokenIds(){let e=this.viterbi();return e.map(e=>e.tokenId)}}class s{constructor(e,t,n,r,i){this.tokenId=e,this.nodeId=t,this.pos=n,this.length=r,this.score=i,this.prev=null,this.backtraceScore=0}clone(){let e=new s(this.tokenId,this.nodeId,this.pos,this.length,this.score);return e.prev=this.prev,e.backtraceScore=this.backtraceScore,e}}class c{constructor(e){this.trie=this._buildTrie(e)}_buildTrie(e){let t=Object.create(null);for(let n of e){let e=t;for(let t=0;tr&&t.push(e.slice(r,i)),t.push(o),i+=o.length,r=i):++i}return rthis.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}}},"./src/utils/devices.js":(e,t,n)=>{n.r(t),n.d(t,{DEVICE_TYPES:()=>r});let r=Object.freeze({auto:`auto`,gpu:`gpu`,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:`webnn`,"webnn-npu":`webnn-npu`,"webnn-gpu":`webnn-gpu`,"webnn-cpu":`webnn-cpu`})},"./src/utils/dtypes.js":(e,t,n)=>{n.r(t),n.d(t,{DATA_TYPES:()=>o,DEFAULT_DEVICE_DTYPE_MAPPING:()=>s,DEFAULT_DTYPE_SUFFIX_MAPPING:()=>c,isWebGpuFp16Supported:()=>a});var r=n( +/*! ../env.js */ +`./src/env.js`),i=n( +/*! ./devices.js */ +`./src/utils/devices.js`);let a=function(){let e;return async function(){if(e===void 0)if(!r.apis.IS_WEBGPU_AVAILABLE)e=!1;else try{let t=await navigator.gpu.requestAdapter();e=t.features.has(`shader-f16`)}catch{e=!1}return e}}(),o=Object.freeze({auto:`auto`,fp32:`fp32`,fp16:`fp16`,q8:`q8`,int8:`int8`,uint8:`uint8`,q4:`q4`,bnb4:`bnb4`,q4f16:`q4f16`}),s=Object.freeze({[i.DEVICE_TYPES.wasm]:o.q8}),c=Object.freeze({[o.fp32]:``,[o.fp16]:`_fp16`,[o.int8]:`_int8`,[o.uint8]:`_uint8`,[o.q8]:`_quantized`,[o.q4]:`_q4`,[o.q4f16]:`_q4f16`,[o.bnb4]:`_bnb4`})},"./src/utils/generic.js":(e,t,n)=>{n.r(t),n.d(t,{Callable:()=>r});let r=class{constructor(){let e=function(...t){return e._call(...t)};return Object.setPrototypeOf(e,new.target.prototype)}_call(...e){throw Error(`Must implement _call method in subclass`)}}},"./src/utils/hub.js":(e,t,n)=>{n.r(t),n.d(t,{MAX_EXTERNAL_DATA_CHUNKS:()=>s,getFile:()=>p,getModelFile:()=>v,getModelJSON:()=>b,getModelText:()=>y});var r=n( +/*! node:fs */ +`?7992`),i=n( +/*! node:path */ +`?5af5`),a=n( +/*! ../env.js */ +`./src/env.js`),o=n( +/*! ./core.js */ +`./src/utils/core.js`);let s=100,c={txt:`text/plain`,html:`text/html`,css:`text/css`,js:`text/javascript`,json:`application/json`,png:`image/png`,jpg:`image/jpeg`,jpeg:`image/jpeg`,gif:`image/gif`};class l{constructor(e){if(this.filePath=e,this.headers=new Headers,this.exists=r.existsSync(e),this.exists){this.status=200,this.statusText=`OK`;let t=r.statSync(e);this.headers.set(`content-length`,t.size.toString()),this.updateContentType();let n=r.createReadStream(e);this.body=new ReadableStream({start(e){n.on(`data`,t=>e.enqueue(t)),n.on(`end`,()=>e.close()),n.on(`error`,t=>e.error(t))},cancel(){n.destroy()}})}else this.status=404,this.statusText=`Not Found`,this.body=null}updateContentType(){let e=this.filePath.toString().split(`.`).pop().toLowerCase();this.headers.set(`content-type`,c[e]??`application/octet-stream`)}clone(){let e=new l(this.filePath);return e.exists=this.exists,e.status=this.status,e.statusText=this.statusText,e.headers=new Headers(this.headers),e}async arrayBuffer(){let e=await r.promises.readFile(this.filePath);return e.buffer}async blob(){let e=await r.promises.readFile(this.filePath);return new Blob([e],{type:this.headers.get(`content-type`)})}async text(){let e=await r.promises.readFile(this.filePath,`utf8`);return e}async json(){return JSON.parse(await this.text())}}function u(e,t=null,n=null){let r;try{r=new URL(e)}catch{return!1}return!(t&&!t.includes(r.protocol)||n&&!n.includes(r.hostname))}let d=/^(\b[\w\-.]+\b\/)?\b[\w\-.]{1,96}\b$/;function f(e){return!(!d.test(e)||e.includes(`..`)||e.includes(`--`)||e.endsWith(`.git`)||e.endsWith(`.ipynb`))}async function p(e){if(a.env.useFS&&!u(e,[`http:`,`https:`,`blob:`]))return new l(e instanceof URL?e.protocol===`file:`?e.pathname:e.toString():e);if(typeof process<`u`&&process?.release?.name===`node`){let t=!!{}?.TESTING_REMOTELY,n=a.env.version,r=new Headers;r.set(`User-Agent`,`transformers.js/${n}; is_ci/${t};`);let i=u(e,[`http:`,`https:`],[`huggingface.co`,`hf.co`]);if(i){let e={}?.HF_TOKEN??{}?.HF_ACCESS_TOKEN;e&&r.set(`Authorization`,`Bearer ${e}`)}return fetch(e,{headers:r})}else return fetch(e)}let m={400:`Bad request error occurred while trying to load file`,401:`Unauthorized access to file`,403:`Forbidden access to file`,404:`Could not locate file`,408:`Request timeout error occurred while trying to load file`,500:`Internal server error error occurred while trying to load file`,502:`Bad gateway error occurred while trying to load file`,503:`Service unavailable error occurred while trying to load file`,504:`Gateway timeout error occurred while trying to load file`};function h(e,t,n){if(!n)return null;let r=m[e]??`Error (${e}) occurred while trying to load file`;throw Error(`${r}: "${t}".`)}class g{constructor(e){this.path=e}async match(e){let t=i.join(this.path,e),n=new l(t);if(n.exists)return n}async put(e,t,n=void 0){let a=i.join(this.path,e);try{let e=t.headers.get(`Content-Length`),o=parseInt(e??`0`),s=0;await r.promises.mkdir(i.dirname(a),{recursive:!0});let c=r.createWriteStream(a),l=t.body.getReader();for(;;){let{done:e,value:t}=await l.read();if(e)break;await new Promise((e,n)=>{c.write(t,t=>{if(t){n(t);return}e()})}),s+=t.length;let r=o?s/o*100:0;n?.({progress:r,loaded:s,total:o})}c.close()}catch(e){try{await r.promises.unlink(a)}catch{}throw e}}}async function _(e,...t){for(let n of t)try{let t=await e.match(n);if(t)return t}catch{continue}}async function v(e,t,n=!0,r={},i=!1){if(!a.env.allowLocalModels){if(r.local_files_only)throw Error("Invalid configuration detected: local models are disabled (`env.allowLocalModels=false`) but you have requested to only use local models (`local_files_only=true`).");if(!a.env.allowRemoteModels)throw Error("Invalid configuration detected: both local and remote models are disabled. Fix by setting `env.allowLocalModels` or `env.allowRemoteModels` to `true`.")}(0,o.dispatchCallback)(r.progress_callback,{status:`initiate`,name:e,file:t});let s;if(!s&&a.env.useCustomCache){if(!a.env.customCache)throw Error("`env.useCustomCache=true`, but `env.customCache` is not defined.");if(!a.env.customCache.match||!a.env.customCache.put)throw Error("`env.customCache` must be an object which implements the `match` and `put` functions of the Web Cache API. For more information, see https://developer.mozilla.org/en-US/docs/Web/API/Cache");s=a.env.customCache}if(!s&&a.env.useBrowserCache){if(typeof caches>`u`)throw Error(`Browser cache is not available in this environment.`);try{s=await caches.open(`transformers-cache`)}catch(e){console.warn(`An error occurred while opening the browser cache:`,e)}}if(!s&&a.env.useFSCache){if(!a.apis.IS_FS_AVAILABLE)throw Error(`File System Cache is not available in this environment.`);s=new g(r.cache_dir??a.env.cacheDir)}let c=r.revision??`main`,d=S(e,t),m=f(e),v=m?S(a.env.localModelPath,d):d,y=S(a.env.remoteHost,a.env.remotePathTemplate.replaceAll(`{model}`,e).replaceAll(`{revision}`,encodeURIComponent(c)),t),b,C=s instanceof g?c===`main`?d:S(e,c,t):y,w=!1,T;s&&(T=await _(s,v,C));let E=T!==void 0;if(T===void 0){if(a.env.allowLocalModels){let e=u(d,[`http:`,`https:`]);if(e){if(r.local_files_only)throw Error(`\`local_files_only=true\`, but attempted to load a remote file from: ${d}.`);if(!a.env.allowRemoteModels)throw Error(`\`env.allowRemoteModels=false\`, but attempted to load a remote file from: ${d}.`)}else try{T=await p(v),b=v}catch(e){console.warn(`Unable to load from local path "${v}": "${e}"`)}}if(T===void 0||T.status===404){if(r.local_files_only||!a.env.allowRemoteModels){if(n)throw Error(`\`local_files_only=true\` or \`env.allowRemoteModels=false\` and file was not found locally at "${v}".`);return null}if(!m)throw Error(`Local file missing at "${v}" and download aborted due to invalid model ID "${e}".`);if(T=await p(y),T.status!==200)return h(T.status,y,n);b=C}w=s&&typeof Response<`u`&&T instanceof Response&&T.status===200}(0,o.dispatchCallback)(r.progress_callback,{status:`download`,name:e,file:t});let D;if(!(a.apis.IS_NODE_ENV&&i)){let n;r.progress_callback?E&&typeof navigator<`u`&&/firefox/i.test(navigator.userAgent)?(n=new Uint8Array(await T.arrayBuffer()),(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,progress:100,loaded:n.length,total:n.length})):n=await x(T,n=>{(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,...n})}):n=new Uint8Array(await T.arrayBuffer()),D=n}if(w&&b&&await s.match(b)===void 0&&(D?await s.put(b,new Response(D,{headers:T.headers})).catch(e=>{console.warn(`Unable to add response to browser cache: ${e}.`)}):await s.put(b,T,r.progress_callback)),(0,o.dispatchCallback)(r.progress_callback,{status:`done`,name:e,file:t}),D){if(!a.apis.IS_NODE_ENV&&i)throw Error(`Cannot return path in a browser environment.`);return D}if(T instanceof l)return T.filePath;let O=await s?.match(b);if(O instanceof l)return O.filePath;if(O instanceof Response)return new Uint8Array(await O.arrayBuffer());if(typeof O==`string`)return O;throw Error(`Unable to get model file path or buffer.`)}async function y(e,t,n=!0,r={}){let i=await v(e,t,n,r,!1);if(i===null)return null;let a=new TextDecoder(`utf-8`);return a.decode(i)}async function b(e,t,n=!0,r={}){let i=await y(e,t,n,r);return i===null?{}:JSON.parse(i)}async function x(e,t){let n=e.headers.get(`Content-Length`);n===null&&console.warn(`Unable to determine content-length from response headers. Will expand buffer when needed.`);let r=parseInt(n??`0`),i=new Uint8Array(r),a=0,o=e.body.getReader();async function s(){let{done:e,value:n}=await o.read();if(e)return;let c=a+n.length;if(c>r){r=c;let e=new Uint8Array(r);e.set(i),i=e}i.set(n,a),a=c;let l=a/r*100;return t({progress:l,loaded:a,total:r}),s()}return await s(),i}function S(...e){return e=e.map((t,n)=>(n&&(t=t.replace(RegExp(`^/`),``)),n!==e.length-1&&(t=t.replace(RegExp(`/$`),``)),t)),e.join(`/`)}},"./src/utils/image.js":(e,t,n)=>{n.r(t),n.d(t,{RawImage:()=>m,load_image:()=>h});var r=n( +/*! ./core.js */ +`./src/utils/core.js`),i=n( +/*! ./hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../env.js */ +`./src/env.js`),o=n( +/*! ./tensor.js */ +`./src/utils/tensor.js`),s=n( +/*! sharp */ +`?2b25`);let c,l,u,d=a.apis.IS_BROWSER_ENV||a.apis.IS_WEBWORKER_ENV;if(d)c=(e,t)=>{if(!self.OffscreenCanvas)throw Error(`OffscreenCanvas not supported by this browser.`);return new self.OffscreenCanvas(e,t)},u=self.createImageBitmap,l=self.ImageData;else if(s)u=async e=>{let t=await e.metadata(),n=t.channels,{data:r,info:i}=await e.rotate().raw().toBuffer({resolveWithObject:!0}),a=new m(new Uint8ClampedArray(r),i.width,i.height,i.channels);return n!==void 0&&n!==i.channels&&a.convert(n),a};else throw Error(`Unable to load image processing library.`);let f={0:`nearest`,1:`lanczos`,2:`bilinear`,3:`bicubic`,4:`box`,5:`hamming`},p=new Map([[`png`,`image/png`],[`jpg`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`gif`,`image/gif`]]);class m{constructor(e,t,n,r){this.data=e,this.width=t,this.height=n,this.channels=r}get size(){return[this.width,this.height]}static async read(e){if(e instanceof m)return e;if(typeof e==`string`||e instanceof URL)return await this.fromURL(e);if(e instanceof Blob)return await this.fromBlob(e);if(typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof OffscreenCanvas<`u`&&e instanceof OffscreenCanvas)return this.fromCanvas(e);throw Error(`Unsupported input type: ${typeof e}`)}static fromCanvas(e){if(!d)throw Error(`fromCanvas() is only supported in browser environments.`);let t=e.getContext(`2d`),n=t.getImageData(0,0,e.width,e.height).data;return new m(n,e.width,e.height,4)}static async fromURL(e){let t=await(0,i.getFile)(e);if(t.status!==200)throw Error(`Unable to read image from "${e}" (${t.status} ${t.statusText})`);let n=await t.blob();return this.fromBlob(n)}static async fromBlob(e){if(d){let t=await u(e),n=c(t.width,t.height).getContext(`2d`);return n.drawImage(t,0,0),new this(n.getImageData(0,0,t.width,t.height).data,t.width,t.height,4)}else{let t=s(await e.arrayBuffer());return await u(t)}}static fromTensor(e,t=`CHW`){if(e.dims.length!==3)throw Error(`Tensor should have 3 dimensions, but has ${e.dims.length} dimensions.`);if(t===`CHW`)e=e.transpose(1,2,0);else if(t!==`HWC`)throw Error(`Unsupported channel format: ${t}`);if(!(e.data instanceof Uint8ClampedArray||e.data instanceof Uint8Array))throw Error(`Unsupported tensor type: ${e.type}`);switch(e.dims[2]){case 1:case 2:case 3:case 4:return new m(e.data,e.dims[1],e.dims[0],e.dims[2]);default:throw Error(`Unsupported number of channels: ${e.dims[2]}`)}}grayscale(){if(this.channels===1)return this;let e=new Uint8ClampedArray(this.width*this.height*1);switch(this.channels){case 3:case 4:for(let t=0,n=0;t=0?s=n:u=-n,r>=0?l=r:d=-r,o.drawImage(a,s,l,e,t,u,d,e,t);let f=new m(o.getImageData(0,0,e,t).data,e,t,4);return f.convert(i)}else{let i=this.toSharp();if(n>=0&&r>=0)i=i.extract({left:Math.floor(n),top:Math.floor(r),width:e,height:t});else if(n<=0&&r<=0){let a=Math.floor(-r),o=Math.floor(-n);i=i.extend({top:a,left:o,right:e-this.width-o,bottom:t-this.height-a})}else{let a=[0,0],o=0;r<0?(a[0]=Math.floor(-r),a[1]=t-this.height-a[0]):o=Math.floor(r);let s=[0,0],c=0;n<0?(s[0]=Math.floor(-n),s[1]=e-this.width-s[0]):c=Math.floor(n),i=i.extend({top:a[0],bottom:a[1],left:s[0],right:s[1]}).extract({left:c,top:o,width:e,height:t})}return await u(i)}}async toBlob(e=`image/png`,t=1){if(!d)throw Error(`toBlob() is only supported in browser environments.`);let n=this.toCanvas();return await n.convertToBlob({type:e,quality:t})}toTensor(e=`CHW`){let t=new o.Tensor(`uint8`,new Uint8Array(this.data),[this.height,this.width,this.channels]);if(e!==`HWC`)if(e===`CHW`)t=t.permute(2,0,1);else throw Error(`Unsupported channel format: ${e}`);return t}toCanvas(){if(!d)throw Error(`toCanvas() is only supported in browser environments.`);let e=this.clone().rgba(),t=c(e.width,e.height),n=new l(e.data,e.width,e.height);return t.getContext(`2d`).putImageData(n,0,0),t}split(){let{data:e,width:t,height:n,channels:r}=this,i=e.constructor,a=e.length/r,o=Array.from({length:r},()=>new i(a));for(let t=0;tnew m(e,t,n,1))}_update(e,t,n,r=null){return this.data=e,this.width=t,this.height=n,r!==null&&(this.channels=r),this}clone(){return new m(this.data.slice(),this.width,this.height,this.channels)}convert(e){if(this.channels===e)return this;switch(e){case 1:this.grayscale();break;case 3:this.rgb();break;case 4:this.rgba();break;default:throw Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this}async save(e){if(d){if(a.apis.IS_WEBWORKER_ENV)throw Error(`Unable to save an image from a Web Worker.`);let t=e.split(`.`).pop().toLowerCase(),n=p.get(t)??`image/png`,i=await this.toBlob(n);(0,r.saveBlob)(e,i)}else if(a.apis.IS_FS_AVAILABLE){let t=this.toSharp();return await t.toFile(e)}else throw Error(`Unable to save the image because filesystem is disabled in this environment.`)}toSharp(){if(d)throw Error(`toSharp() is only supported in server-side environments.`);return s(this.data,{raw:{width:this.width,height:this.height,channels:this.channels}})}}let h=m.read.bind(m)},"./src/utils/maths.js":(e,t,n)=>{n.r(t),n.d(t,{FFT:()=>h,bankers_round:()=>v,cos_sim:()=>c,dot:()=>s,dynamic_time_warping:()=>y,interpolate_data:()=>r,log_softmax:()=>o,magnitude:()=>l,max:()=>d,medianFilter:()=>g,min:()=>u,permute_data:()=>i,round:()=>_,softmax:()=>a});function r(e,[t,n,r],[i,a],o=`bilinear`,s=!1){let c=a/r,l=i/n,u=new e.constructor(i*a*t),d=n*r,f=i*a;for(let o=0;o=0;--e)i[e]=a,r[e]=t[n[e]],a*=r[e];let a=n.map((e,t)=>i[n.indexOf(t)]),o=new e.constructor(e.length);for(let n=0;n=0;--e)r+=i%t[e]*a[e],i=Math.floor(i/t[e]);o[r]=e[n]}return[o,r]}function a(e){let t=d(e)[0],n=e.map(e=>Math.exp(e-t)),r=n.reduce((e,t)=>e+t,0),i=n.map(e=>e/r);return i}function o(e){let t=d(e)[0],n=0;for(let r=0;re-t-r);return i}function s(e,t){let n=0;for(let r=0;re+t*t,0))}function u(e){if(e.length===0)throw Error(`Array must not be empty`);let t=e[0],n=0;for(let r=1;rt&&(t=e[r],n=r);return[t,n]}function f(e){return e>0&&(e&e-1)==0}class p{constructor(e){if(this.size=e|0,this.size<=1||!f(this.size))throw Error(`FFT size must be a power of two larger than 1`);this._csize=e<<1,this.table=new Float64Array(this.size*2);for(let e=0;ee;e<<=1)++t;this._width=t%2==0?t-1:t,this._bitrev=new Int32Array(1<>>t&3)<>>1);for(let t=0;t>>1]=e[t];return n}toComplexArray(e,t){let n=t||this.createComplexArray();for(let t=0;t>>1],n[t+1]=0;return n}transform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,1)}realTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._realTransform4(e,t,1)}inverseTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,-1);for(let t=0;t>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>2;for(s=0;s>>1,a>>>1)}else for(s=0,c=0;s>>1,a>>>1,n)}let u=this.table;for(a>>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>1,i=t>>>1,c=i>>>1;for(s=0;s>>1;for(let t=2;t>1;++t){let n=(t+1-e)**2/2,r=Math.sqrt(s**2+c**2)**n,o=n*Math.atan2(c,s),l=2*t;i[l]=r*Math.cos(o),i[l+1]=r*Math.sin(o),a[l]=i[l],a[l+1]=-i[l+1]}this._slicedChirpBuffer=i.subarray(t,n),this._f=new p(r>>1),this._f.transform(this._chirpBuffer,a)}_transform(e,t,n){let r=this._buffer1,i=this._buffer2,a=this._outBuffer1,o=this._outBuffer2,s=this._chirpBuffer,c=this._slicedChirpBuffer,l=this._a;if(n)for(let e=0;e>1,a=t[i];r[e]=a*c[e],r[n]=a*c[n]}else for(let e=0;e=e.length&&(i=2*(e.length-1)-i),r[a++]=e[i]}r.sort(),n[t]=r[i]}return n}function _(e,t){let n=10**t;return Math.round(e*n)/n}function v(e){let t=Math.round(e),n=Math.abs(e)%1==.5?t%2==0?t:t-1:t;return n}function y(e){let t=e.length,n=e[0].length,r=[t+1,n+1],i=Array.from({length:r[0]},()=>Array(r[1]).fill(1/0));i[0][0]=0;let a=Array.from({length:r[0]},()=>Array(r[1]).fill(-1));for(let t=1;t0||s>0;)switch(c.push(o-1),l.push(s-1),a[o][s]){case 0:--o,--s;break;case 1:--o;break;case 2:--s;break;default:throw Error(`Internal error in dynamic time warping. Unexpected trace[${o}, ${s}]. Please file a bug report.`)}return c.reverse(),l.reverse(),[c,l]}},"./src/utils/tensor.js":(e,t,n)=>{n.r(t),n.d(t,{DataTypeMap:()=>o,Tensor:()=>s,cat:()=>S,full:()=>k,full_like:()=>A,interpolate:()=>u,interpolate_4d:()=>d,layer_norm:()=>v,matmul:()=>f,mean:()=>E,mean_pooling:()=>_,ones:()=>ee,ones_like:()=>te,permute:()=>l,quantize_embeddings:()=>ie,rand:()=>re,rfft:()=>p,slice:()=>g,stack:()=>C,std_mean:()=>T,topk:()=>m,zeros:()=>ne,zeros_like:()=>j});var r=n( +/*! ./maths.js */ +`./src/utils/maths.js`),i=n( +/*! ../backends/onnx.js */ +`./src/backends/onnx.js`),a=n( +/*! ../ops/registry.js */ +`./src/ops/registry.js`);let o=Object.freeze({float32:Float32Array,float16:typeof Float16Array<`u`?Float16Array:Uint16Array,float64:Float64Array,string:Array,int8:Int8Array,uint8:Uint8Array,int16:Int16Array,uint16:Uint16Array,int32:Int32Array,uint32:Uint32Array,int64:BigInt64Array,uint64:BigUint64Array,bool:Uint8Array,uint4:Uint8Array,int4:Int8Array});class s{get dims(){return this.ort_tensor.dims}set dims(e){this.ort_tensor.dims=e}get type(){return this.ort_tensor.type}get data(){return this.ort_tensor.data}get size(){return this.ort_tensor.size}get location(){return this.ort_tensor.location}ort_tensor;constructor(...e){return(0,i.isONNXTensor)(e[0])?this.ort_tensor=e[0]:this.ort_tensor=new i.Tensor(e[0],e[1],e[2]),new Proxy(this,{get:(e,t)=>{if(typeof t==`string`){let n=Number(t);if(Number.isInteger(n))return e._getitem(n)}return e[t]},set:(e,t,n)=>e[t]=n})}dispose(){this.ort_tensor.dispose()}*[Symbol.iterator](){let[e,...t]=this.dims;if(t.length>0){let n=t.reduce((e,t)=>e*t);for(let r=0;r0){let t=n.reduce((e,t)=>e*t);return this._subarray(e,t,n)}else return new s(this.type,[this.data[e]],n)}indexOf(e){let t=this.data;for(let n=0;na)throw Error(`Invalid slice: ${i}`);let o=[Math.max(e,0),Math.min(a,this.dims[r])];n.push(o),t.push(o[1]-o[0])}else throw Error(`Invalid slice: ${i}`)}let r=n.map(([e,t])=>t-e),i=r.reduce((e,t)=>e*t),a=this.data,o=new a.constructor(i),c=this.stride();for(let e=0;e=0;--i){let e=r[i];t+=(a%e+n[i][0])*c[i],a=Math.floor(a/e)}o[e]=a[t]}return new s(this.type,o,t)}permute(...e){return l(this,e)}transpose(...e){return this.permute(...e)}sum(e=null,t=!1){return this.norm(1,e,t)}norm(e=`fro`,t=null,n=!1){if(e===`fro`)e=2;else if(typeof e==`string`)throw Error(`Unsupported norm: ${e}`);let r=this.data,i=(t,n)=>t+n**e;if(t===null){let t=r.reduce(i,0)**(1/e);return new s(this.type,[t],[])}let[a,o,c]=w(i,this,t,n);if(e!==1)for(let t=0;t=0;--r){let e=this.dims[r];if(r!==t){let t=i%e;n+=t*a,a*=this.dims[r]}i=Math.floor(i/e)}r[e]/=i[n]}return this}normalize(e=2,t=1){return this.clone().normalize_(e,t)}stride(){return D(this.dims)}squeeze(e=null){return new s(this.type,this.data,y(this.dims,e))}squeeze_(e=null){return this.dims=y(this.dims,e),this}unsqueeze(e=null){return new s(this.type,this.data,b(this.dims,e))}unsqueeze_(e=null){return this.dims=b(this.dims,e),this}flatten_(e=0,t=-1){t=(t+this.dims.length)%this.dims.length;let n=this.dims.slice(0,e),r=this.dims.slice(e,t+1),i=this.dims.slice(t+1);return this.dims=[...n,r.reduce((e,t)=>e*t,1),...i],this}flatten(e=0,t=-1){return this.clone().flatten_(e,t)}view(...e){let t=-1;for(let n=0;nr===t?e:e*n,1);e[t]=n.length/r}return new s(this.type,n,e)}neg_(){let e=this.data;for(let t=0;te?1:0;return new s(`bool`,t,this.dims)}lt(e){let t=new Uint8Array(this.data.length),n=this.data;for(let r=0;rMath.min(e,t),this,e,t,1/0);return new s(n,i,a)}max(e=null,t=!1){if(e===null){let e=(0,r.max)(this.data)[0];return new s(this.type,[e],[])}let[n,i,a]=w((e,t)=>Math.max(e,t),this,e,t,-1/0);return new s(n,i,a)}argmin(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,r.min)(this.data)[1];return new s(`int64`,[BigInt(n)],[])}argmax(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,r.max)(this.data)[1];return new s(`int64`,[BigInt(n)],[])}to(e){if(this.type===e)return this;if(!o.hasOwnProperty(e))throw Error(`Unsupported type: ${e}`);let t,n=[`int64`,`uint64`].includes(this.type),r=[`int64`,`uint64`].includes(e);return n&&!r?t=Number:!n&&r&&(t=BigInt),new s(e,o[e].from(this.data,t),this.dims)}}function c(e,t){let n=e.length,r=t.reduce((e,t)=>e*t);if(n!==r)throw Error(`cannot reshape array of size ${n} into shape (${t})`);let i=e;for(let e=t.length-1;e>=0;e--)i=i.reduce((n,r)=>{let i=n[n.length-1];return i.lengthnew s(`int64`,e,[e.length]);async function g(e,t,n,r,i){let o=await a.TensorOpRegistry.slice;return await o({x:e,s:h(t),e:h(n),a:h(r),t:h(i??Array(r.length).fill(1))})}function _(e,t){let n=e.data,r=t.data,i=[e.dims[0],e.dims[2]],a=new n.constructor(i[0]*i[1]),[o,c,l]=e.dims,u=0;for(let e=0;ee!==1):typeof t==`number`?e[t]===1&&e.splice(t,1):Array.isArray(t)&&(e=e.filter((e,n)=>e!==1||!t.includes(n))),e}function b(e,t){return t=x(t,e.length+1),e=e.slice(),e.splice(t,0,1),e}function x(e,t,n=null,r=!0){if(e<-t||e>=t){if(r)throw Error(`IndexError: index ${e} is out of bounds for dimension${n===null?``:` `+n} with size ${t}`);return e<-t?0:t}return e<0&&(e=(e%t+t)%t),e}function S(e,t=0){t=x(t,e[0].dims.length);let n=e[0].dims.slice();n[t]=e.reduce((e,n)=>e+n.dims[t],0);let r=n.reduce((e,t)=>e*t,1),i=new e[0].data.constructor(r),a=e[0].type;if(t===0){let t=0;for(let n of e){let e=n.data;i.set(e,t),t+=e.length}}else{let r=0;for(let a=0;a=0;--i){let e=s[i],l=o%e;i===t&&(l+=r),a+=l*c,c*=n[i],o=Math.floor(o/e)}i[a]=o[e]}r+=s[t]}}return new s(a,i,n)}function C(e,t=0){return S(e.map(e=>e.unsqueeze(t)),t)}function w(e,t,n=null,r=!1,i=null){let a=t.data,o=t.dims;n=x(n,o.length);let s=o.slice();s[n]=1;let c=new a.constructor(a.length/o[n]);i!==null&&c.fill(i);for(let t=0;t=0;--e){let t=o[e];if(e!==n){let n=i%t;r+=n*a,a*=s[e]}i=Math.floor(i/t)}c[r]=e(c[r],a[t],t,r)}return r||s.splice(n,1),[t.type,c,s]}function T(e,t=null,n=1,r=!1){let i=e.data,a=e.dims;if(t===null){let t=i.reduce((e,t)=>e+t,0),r=t/i.length,a=Math.sqrt(i.reduce((e,t)=>e+(t-r)**2,0)/(i.length-n)),o=new s(e.type,[r],[]),c=new s(e.type,[a],[]);return[c,o]}t=x(t,a.length);let o=E(e,t,r),c=o.data,[l,u,d]=w((e,t,n,r)=>e+(t-c[r])**2,e,t,r);for(let e=0;ee+t,0);return new s(e.type,[t/i.length],[])}t=x(t,r.length);let[a,o,c]=w((e,t)=>e+t,e,t,n);if(r[t]!==1)for(let e=0;e=0;--n)t[n]=r,r*=e[n];return t}function O(e,t,n,r){let i=e.reduce((e,t)=>e*t,1);return new s(n,new r(i).fill(t),e)}function k(e,t){let n,r;if(typeof t==`number`)n=`float32`,r=Float32Array;else if(typeof t==`bigint`)n=`int64`,r=BigInt64Array;else if(typeof t==`boolean`)n=`bool`,r=Uint8Array;else throw Error(`Unsupported data type: ${typeof t}`);return O(e,t,n,r)}function A(e,t){return k(e.dims,t)}function ee(e){return O(e,1n,`int64`,BigInt64Array)}function te(e){return ee(e.dims)}function ne(e){return O(e,0n,`int64`,BigInt64Array)}function j(e){return ne(e.dims)}function re(e){let t=e.reduce((e,t)=>e*t,1);return new s(`float32`,Float32Array.from({length:t},()=>Math.random()),e)}function ie(e,t){if(e.dims.length!==2)throw Error(`The tensor must have 2 dimensions`);if(e.dims.at(-1)%8!=0)throw Error(`The last dimension of the tensor must be a multiple of 8`);if(![`binary`,`ubinary`].includes(t))throw Error(`The precision must be either 'binary' or 'ubinary'`);let n=t===`binary`,r=n?`int8`:`uint8`,i=n?Int8Array:Uint8Array,a=e.data,o=new i(a.length/8);for(let e=0;e0?1:0,r=Math.floor(e/8),i=e%8;o[r]|=t<<7-i,n&&i===0&&(o[r]-=128)}return new s(r,o,[e.dims[0],e.dims[1]/8])}},"./src/utils/video.js":(e,t,n)=>{n.r(t),n.d(t,{RawVideo:()=>o,RawVideoFrame:()=>a,load_video:()=>s});var r=n( +/*! ./image.js */ +`./src/utils/image.js`),i=n( +/*! ../env.js */ +`./src/env.js`);class a{constructor(e,t){this.image=e,this.timestamp=t}}class o{constructor(e,t){e.length>0&&e[0]instanceof r.RawImage&&(e=e.map((n,r)=>new a(n,(r+1)/(e.length+1)*t))),this.frames=e,this.duration=t}get width(){return this.frames[0].image.width}get height(){return this.frames[0].image.height}get fps(){return this.frames.length/this.duration}}async function s(e,{num_frames:t=null,fps:n=null}={}){if(!i.apis.IS_BROWSER_ENV)throw Error("`load_video` is currently only supported in browser environments.");if(t==null&&n==null)throw Error(`Either num_frames or fps must be provided.`);let s=[],c=document.createElement(`video`);if(c.crossOrigin=`anonymous`,c.muted=!0,typeof e==`string`)c.src=e;else if(e instanceof Blob)c.src=URL.createObjectURL(e);else if(e instanceof HTMLVideoElement)c.src=e.src;else throw Error(`Invalid URL or video element provided.`);if(await new Promise(e=>c.onloadedmetadata=e),c.seekable.start(0)===c.seekable.end(0)){let e=await fetch(c.src),t=await e.blob();c.src=URL.createObjectURL(t),await new Promise(e=>c.onloadedmetadata=e)}let l=c.duration,u,d;t==null?(d=1/n,u=Math.floor(l/d)):(u=t,d=t===1?0:l/(t-1));let f=[];for(let e=0;e{c.onseeked=e}),m.drawImage(c,0,0,p.width,p.height);let t=m.getImageData(0,0,p.width,p.height),n=new r.RawImage(t.data,p.width,p.height,4),i=new a(n,e);s.push(i)}return c.remove(),new o(s,l)}}},sf={};function cf(e){var t=sf[e];if(t!==void 0)return t.exports;var n=sf[e]={exports:{}};return af[e](n,n.exports,cf),n.exports}(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t;cf.t=function(n,r){if(r&1&&(n=this(n)),r&8||typeof n==`object`&&n&&(r&4&&n.__esModule||r&16&&typeof n.then==`function`))return n;var i=Object.create(null);cf.r(i);var a={};t||=[null,e({}),e([]),e(e)];for(var o=r&2&&n;typeof o==`object`&&!~t.indexOf(o);o=e(o))Object.getOwnPropertyNames(o).forEach(e=>a[e]=()=>n[e]);return a.default=()=>n,cf.d(i,a),i}})(),cf.d=(exports,t)=>{for(var n in t)cf.o(t,n)&&!cf.o(exports,n)&&Object.defineProperty(exports,n,{enumerable:!0,get:t[n]})},cf.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),cf.r=exports=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(exports,`__esModule`,{value:!0})};var $={};(()=>{cf.r($),cf.d($,{ASTFeatureExtractor:()=>d.ASTFeatureExtractor,ASTForAudioClassification:()=>n.ASTForAudioClassification,ASTModel:()=>n.ASTModel,ASTPreTrainedModel:()=>n.ASTPreTrainedModel,AlbertForMaskedLM:()=>n.AlbertForMaskedLM,AlbertForQuestionAnswering:()=>n.AlbertForQuestionAnswering,AlbertForSequenceClassification:()=>n.AlbertForSequenceClassification,AlbertModel:()=>n.AlbertModel,AlbertPreTrainedModel:()=>n.AlbertPreTrainedModel,AlbertTokenizer:()=>r.AlbertTokenizer,AudioClassificationPipeline:()=>t.AudioClassificationPipeline,AutoConfig:()=>i.AutoConfig,AutoFeatureExtractor:()=>f.AutoFeatureExtractor,AutoImageProcessor:()=>h.AutoImageProcessor,AutoModel:()=>n.AutoModel,AutoModelForAudioClassification:()=>n.AutoModelForAudioClassification,AutoModelForAudioFrameClassification:()=>n.AutoModelForAudioFrameClassification,AutoModelForAudioTextToText:()=>n.AutoModelForAudioTextToText,AutoModelForCTC:()=>n.AutoModelForCTC,AutoModelForCausalLM:()=>n.AutoModelForCausalLM,AutoModelForDepthEstimation:()=>n.AutoModelForDepthEstimation,AutoModelForDocumentQuestionAnswering:()=>n.AutoModelForDocumentQuestionAnswering,AutoModelForImageClassification:()=>n.AutoModelForImageClassification,AutoModelForImageFeatureExtraction:()=>n.AutoModelForImageFeatureExtraction,AutoModelForImageMatting:()=>n.AutoModelForImageMatting,AutoModelForImageSegmentation:()=>n.AutoModelForImageSegmentation,AutoModelForImageTextToText:()=>n.AutoModelForImageTextToText,AutoModelForImageToImage:()=>n.AutoModelForImageToImage,AutoModelForMaskGeneration:()=>n.AutoModelForMaskGeneration,AutoModelForMaskedLM:()=>n.AutoModelForMaskedLM,AutoModelForNormalEstimation:()=>n.AutoModelForNormalEstimation,AutoModelForObjectDetection:()=>n.AutoModelForObjectDetection,AutoModelForPoseEstimation:()=>n.AutoModelForPoseEstimation,AutoModelForQuestionAnswering:()=>n.AutoModelForQuestionAnswering,AutoModelForSemanticSegmentation:()=>n.AutoModelForSemanticSegmentation,AutoModelForSeq2SeqLM:()=>n.AutoModelForSeq2SeqLM,AutoModelForSequenceClassification:()=>n.AutoModelForSequenceClassification,AutoModelForSpeechSeq2Seq:()=>n.AutoModelForSpeechSeq2Seq,AutoModelForTextToSpectrogram:()=>n.AutoModelForTextToSpectrogram,AutoModelForTextToWaveform:()=>n.AutoModelForTextToWaveform,AutoModelForTokenClassification:()=>n.AutoModelForTokenClassification,AutoModelForUniversalSegmentation:()=>n.AutoModelForUniversalSegmentation,AutoModelForVision2Seq:()=>n.AutoModelForVision2Seq,AutoModelForXVector:()=>n.AutoModelForXVector,AutoModelForZeroShotObjectDetection:()=>n.AutoModelForZeroShotObjectDetection,AutoProcessor:()=>v.AutoProcessor,AutoTokenizer:()=>r.AutoTokenizer,AutomaticSpeechRecognitionPipeline:()=>t.AutomaticSpeechRecognitionPipeline,BackgroundRemovalPipeline:()=>t.BackgroundRemovalPipeline,BartForConditionalGeneration:()=>n.BartForConditionalGeneration,BartForSequenceClassification:()=>n.BartForSequenceClassification,BartModel:()=>n.BartModel,BartPretrainedModel:()=>n.BartPretrainedModel,BartTokenizer:()=>r.BartTokenizer,BaseModelOutput:()=>n.BaseModelOutput,BaseStreamer:()=>y.BaseStreamer,BeitFeatureExtractor:()=>m.BeitFeatureExtractor,BeitForImageClassification:()=>n.BeitForImageClassification,BeitModel:()=>n.BeitModel,BeitPreTrainedModel:()=>n.BeitPreTrainedModel,BertForMaskedLM:()=>n.BertForMaskedLM,BertForQuestionAnswering:()=>n.BertForQuestionAnswering,BertForSequenceClassification:()=>n.BertForSequenceClassification,BertForTokenClassification:()=>n.BertForTokenClassification,BertModel:()=>n.BertModel,BertPreTrainedModel:()=>n.BertPreTrainedModel,BertTokenizer:()=>r.BertTokenizer,BitImageProcessor:()=>m.BitImageProcessor,BlenderbotForConditionalGeneration:()=>n.BlenderbotForConditionalGeneration,BlenderbotModel:()=>n.BlenderbotModel,BlenderbotPreTrainedModel:()=>n.BlenderbotPreTrainedModel,BlenderbotSmallForConditionalGeneration:()=>n.BlenderbotSmallForConditionalGeneration,BlenderbotSmallModel:()=>n.BlenderbotSmallModel,BlenderbotSmallPreTrainedModel:()=>n.BlenderbotSmallPreTrainedModel,BlenderbotSmallTokenizer:()=>r.BlenderbotSmallTokenizer,BlenderbotTokenizer:()=>r.BlenderbotTokenizer,BloomForCausalLM:()=>n.BloomForCausalLM,BloomModel:()=>n.BloomModel,BloomPreTrainedModel:()=>n.BloomPreTrainedModel,BloomTokenizer:()=>r.BloomTokenizer,CLIPFeatureExtractor:()=>m.CLIPFeatureExtractor,CLIPImageProcessor:()=>m.CLIPImageProcessor,CLIPModel:()=>n.CLIPModel,CLIPPreTrainedModel:()=>n.CLIPPreTrainedModel,CLIPSegForImageSegmentation:()=>n.CLIPSegForImageSegmentation,CLIPSegModel:()=>n.CLIPSegModel,CLIPSegPreTrainedModel:()=>n.CLIPSegPreTrainedModel,CLIPTextModel:()=>n.CLIPTextModel,CLIPTextModelWithProjection:()=>n.CLIPTextModelWithProjection,CLIPTokenizer:()=>r.CLIPTokenizer,CLIPVisionModel:()=>n.CLIPVisionModel,CLIPVisionModelWithProjection:()=>n.CLIPVisionModelWithProjection,CamembertForMaskedLM:()=>n.CamembertForMaskedLM,CamembertForQuestionAnswering:()=>n.CamembertForQuestionAnswering,CamembertForSequenceClassification:()=>n.CamembertForSequenceClassification,CamembertForTokenClassification:()=>n.CamembertForTokenClassification,CamembertModel:()=>n.CamembertModel,CamembertPreTrainedModel:()=>n.CamembertPreTrainedModel,CamembertTokenizer:()=>r.CamembertTokenizer,CausalLMOutput:()=>n.CausalLMOutput,CausalLMOutputWithPast:()=>n.CausalLMOutputWithPast,ChineseCLIPFeatureExtractor:()=>m.ChineseCLIPFeatureExtractor,ChineseCLIPModel:()=>n.ChineseCLIPModel,ChineseCLIPPreTrainedModel:()=>n.ChineseCLIPPreTrainedModel,ClapAudioModelWithProjection:()=>n.ClapAudioModelWithProjection,ClapFeatureExtractor:()=>d.ClapFeatureExtractor,ClapModel:()=>n.ClapModel,ClapPreTrainedModel:()=>n.ClapPreTrainedModel,ClapTextModelWithProjection:()=>n.ClapTextModelWithProjection,ClassifierFreeGuidanceLogitsProcessor:()=>x.ClassifierFreeGuidanceLogitsProcessor,CodeGenForCausalLM:()=>n.CodeGenForCausalLM,CodeGenModel:()=>n.CodeGenModel,CodeGenPreTrainedModel:()=>n.CodeGenPreTrainedModel,CodeGenTokenizer:()=>r.CodeGenTokenizer,CodeLlamaTokenizer:()=>r.CodeLlamaTokenizer,CohereForCausalLM:()=>n.CohereForCausalLM,CohereModel:()=>n.CohereModel,CoherePreTrainedModel:()=>n.CoherePreTrainedModel,CohereTokenizer:()=>r.CohereTokenizer,ConvBertForMaskedLM:()=>n.ConvBertForMaskedLM,ConvBertForQuestionAnswering:()=>n.ConvBertForQuestionAnswering,ConvBertForSequenceClassification:()=>n.ConvBertForSequenceClassification,ConvBertForTokenClassification:()=>n.ConvBertForTokenClassification,ConvBertModel:()=>n.ConvBertModel,ConvBertPreTrainedModel:()=>n.ConvBertPreTrainedModel,ConvBertTokenizer:()=>r.ConvBertTokenizer,ConvNextFeatureExtractor:()=>m.ConvNextFeatureExtractor,ConvNextForImageClassification:()=>n.ConvNextForImageClassification,ConvNextImageProcessor:()=>m.ConvNextImageProcessor,ConvNextModel:()=>n.ConvNextModel,ConvNextPreTrainedModel:()=>n.ConvNextPreTrainedModel,ConvNextV2ForImageClassification:()=>n.ConvNextV2ForImageClassification,ConvNextV2Model:()=>n.ConvNextV2Model,ConvNextV2PreTrainedModel:()=>n.ConvNextV2PreTrainedModel,DFineForObjectDetection:()=>n.DFineForObjectDetection,DFineModel:()=>n.DFineModel,DFinePreTrainedModel:()=>n.DFinePreTrainedModel,DPTFeatureExtractor:()=>m.DPTFeatureExtractor,DPTForDepthEstimation:()=>n.DPTForDepthEstimation,DPTImageProcessor:()=>m.DPTImageProcessor,DPTModel:()=>n.DPTModel,DPTPreTrainedModel:()=>n.DPTPreTrainedModel,DacDecoderModel:()=>n.DacDecoderModel,DacDecoderOutput:()=>n.DacDecoderOutput,DacEncoderModel:()=>n.DacEncoderModel,DacEncoderOutput:()=>n.DacEncoderOutput,DacFeatureExtractor:()=>d.DacFeatureExtractor,DacModel:()=>n.DacModel,DacPreTrainedModel:()=>n.DacPreTrainedModel,DataTypeMap:()=>c.DataTypeMap,DebertaForMaskedLM:()=>n.DebertaForMaskedLM,DebertaForQuestionAnswering:()=>n.DebertaForQuestionAnswering,DebertaForSequenceClassification:()=>n.DebertaForSequenceClassification,DebertaForTokenClassification:()=>n.DebertaForTokenClassification,DebertaModel:()=>n.DebertaModel,DebertaPreTrainedModel:()=>n.DebertaPreTrainedModel,DebertaTokenizer:()=>r.DebertaTokenizer,DebertaV2ForMaskedLM:()=>n.DebertaV2ForMaskedLM,DebertaV2ForQuestionAnswering:()=>n.DebertaV2ForQuestionAnswering,DebertaV2ForSequenceClassification:()=>n.DebertaV2ForSequenceClassification,DebertaV2ForTokenClassification:()=>n.DebertaV2ForTokenClassification,DebertaV2Model:()=>n.DebertaV2Model,DebertaV2PreTrainedModel:()=>n.DebertaV2PreTrainedModel,DebertaV2Tokenizer:()=>r.DebertaV2Tokenizer,DecisionTransformerModel:()=>n.DecisionTransformerModel,DecisionTransformerPreTrainedModel:()=>n.DecisionTransformerPreTrainedModel,DeiTFeatureExtractor:()=>m.DeiTFeatureExtractor,DeiTForImageClassification:()=>n.DeiTForImageClassification,DeiTImageProcessor:()=>m.DeiTImageProcessor,DeiTModel:()=>n.DeiTModel,DeiTPreTrainedModel:()=>n.DeiTPreTrainedModel,DepthAnythingForDepthEstimation:()=>n.DepthAnythingForDepthEstimation,DepthAnythingPreTrainedModel:()=>n.DepthAnythingPreTrainedModel,DepthEstimationPipeline:()=>t.DepthEstimationPipeline,DepthProForDepthEstimation:()=>n.DepthProForDepthEstimation,DepthProPreTrainedModel:()=>n.DepthProPreTrainedModel,DetrFeatureExtractor:()=>m.DetrFeatureExtractor,DetrForObjectDetection:()=>n.DetrForObjectDetection,DetrForSegmentation:()=>n.DetrForSegmentation,DetrImageProcessor:()=>m.DetrImageProcessor,DetrModel:()=>n.DetrModel,DetrObjectDetectionOutput:()=>n.DetrObjectDetectionOutput,DetrPreTrainedModel:()=>n.DetrPreTrainedModel,DetrSegmentationOutput:()=>n.DetrSegmentationOutput,Dinov2ForImageClassification:()=>n.Dinov2ForImageClassification,Dinov2Model:()=>n.Dinov2Model,Dinov2PreTrainedModel:()=>n.Dinov2PreTrainedModel,Dinov2WithRegistersForImageClassification:()=>n.Dinov2WithRegistersForImageClassification,Dinov2WithRegistersModel:()=>n.Dinov2WithRegistersModel,Dinov2WithRegistersPreTrainedModel:()=>n.Dinov2WithRegistersPreTrainedModel,DistilBertForMaskedLM:()=>n.DistilBertForMaskedLM,DistilBertForQuestionAnswering:()=>n.DistilBertForQuestionAnswering,DistilBertForSequenceClassification:()=>n.DistilBertForSequenceClassification,DistilBertForTokenClassification:()=>n.DistilBertForTokenClassification,DistilBertModel:()=>n.DistilBertModel,DistilBertPreTrainedModel:()=>n.DistilBertPreTrainedModel,DistilBertTokenizer:()=>r.DistilBertTokenizer,DocumentQuestionAnsweringPipeline:()=>t.DocumentQuestionAnsweringPipeline,DonutFeatureExtractor:()=>m.DonutFeatureExtractor,DonutImageProcessor:()=>m.DonutImageProcessor,DonutSwinModel:()=>n.DonutSwinModel,DonutSwinPreTrainedModel:()=>n.DonutSwinPreTrainedModel,EfficientNetForImageClassification:()=>n.EfficientNetForImageClassification,EfficientNetImageProcessor:()=>m.EfficientNetImageProcessor,EfficientNetModel:()=>n.EfficientNetModel,EfficientNetPreTrainedModel:()=>n.EfficientNetPreTrainedModel,ElectraForMaskedLM:()=>n.ElectraForMaskedLM,ElectraForQuestionAnswering:()=>n.ElectraForQuestionAnswering,ElectraForSequenceClassification:()=>n.ElectraForSequenceClassification,ElectraForTokenClassification:()=>n.ElectraForTokenClassification,ElectraModel:()=>n.ElectraModel,ElectraPreTrainedModel:()=>n.ElectraPreTrainedModel,ElectraTokenizer:()=>r.ElectraTokenizer,EncodecFeatureExtractor:()=>d.EncodecFeatureExtractor,EosTokenCriteria:()=>b.EosTokenCriteria,EsmForMaskedLM:()=>n.EsmForMaskedLM,EsmForSequenceClassification:()=>n.EsmForSequenceClassification,EsmForTokenClassification:()=>n.EsmForTokenClassification,EsmModel:()=>n.EsmModel,EsmPreTrainedModel:()=>n.EsmPreTrainedModel,EsmTokenizer:()=>r.EsmTokenizer,ExaoneForCausalLM:()=>n.ExaoneForCausalLM,ExaoneModel:()=>n.ExaoneModel,ExaonePreTrainedModel:()=>n.ExaonePreTrainedModel,FFT:()=>l.FFT,FalconForCausalLM:()=>n.FalconForCausalLM,FalconModel:()=>n.FalconModel,FalconPreTrainedModel:()=>n.FalconPreTrainedModel,FalconTokenizer:()=>r.FalconTokenizer,FastViTForImageClassification:()=>n.FastViTForImageClassification,FastViTModel:()=>n.FastViTModel,FastViTPreTrainedModel:()=>n.FastViTPreTrainedModel,FeatureExtractionPipeline:()=>t.FeatureExtractionPipeline,FeatureExtractor:()=>u.FeatureExtractor,FillMaskPipeline:()=>t.FillMaskPipeline,Florence2ForConditionalGeneration:()=>n.Florence2ForConditionalGeneration,Florence2PreTrainedModel:()=>n.Florence2PreTrainedModel,Florence2Processor:()=>_.Florence2Processor,ForcedBOSTokenLogitsProcessor:()=>x.ForcedBOSTokenLogitsProcessor,ForcedEOSTokenLogitsProcessor:()=>x.ForcedEOSTokenLogitsProcessor,GLPNFeatureExtractor:()=>m.GLPNFeatureExtractor,GLPNForDepthEstimation:()=>n.GLPNForDepthEstimation,GLPNModel:()=>n.GLPNModel,GLPNPreTrainedModel:()=>n.GLPNPreTrainedModel,GPT2LMHeadModel:()=>n.GPT2LMHeadModel,GPT2Model:()=>n.GPT2Model,GPT2PreTrainedModel:()=>n.GPT2PreTrainedModel,GPT2Tokenizer:()=>r.GPT2Tokenizer,GPTBigCodeForCausalLM:()=>n.GPTBigCodeForCausalLM,GPTBigCodeModel:()=>n.GPTBigCodeModel,GPTBigCodePreTrainedModel:()=>n.GPTBigCodePreTrainedModel,GPTJForCausalLM:()=>n.GPTJForCausalLM,GPTJModel:()=>n.GPTJModel,GPTJPreTrainedModel:()=>n.GPTJPreTrainedModel,GPTNeoForCausalLM:()=>n.GPTNeoForCausalLM,GPTNeoModel:()=>n.GPTNeoModel,GPTNeoPreTrainedModel:()=>n.GPTNeoPreTrainedModel,GPTNeoXForCausalLM:()=>n.GPTNeoXForCausalLM,GPTNeoXModel:()=>n.GPTNeoXModel,GPTNeoXPreTrainedModel:()=>n.GPTNeoXPreTrainedModel,GPTNeoXTokenizer:()=>r.GPTNeoXTokenizer,Gemma2ForCausalLM:()=>n.Gemma2ForCausalLM,Gemma2Model:()=>n.Gemma2Model,Gemma2PreTrainedModel:()=>n.Gemma2PreTrainedModel,Gemma3ForCausalLM:()=>n.Gemma3ForCausalLM,Gemma3Model:()=>n.Gemma3Model,Gemma3PreTrainedModel:()=>n.Gemma3PreTrainedModel,Gemma3nAudioFeatureExtractor:()=>d.Gemma3nAudioFeatureExtractor,Gemma3nForConditionalGeneration:()=>n.Gemma3nForConditionalGeneration,Gemma3nPreTrainedModel:()=>n.Gemma3nPreTrainedModel,Gemma3nProcessor:()=>_.Gemma3nProcessor,GemmaForCausalLM:()=>n.GemmaForCausalLM,GemmaModel:()=>n.GemmaModel,GemmaPreTrainedModel:()=>n.GemmaPreTrainedModel,GemmaTokenizer:()=>r.GemmaTokenizer,GlmForCausalLM:()=>n.GlmForCausalLM,GlmModel:()=>n.GlmModel,GlmPreTrainedModel:()=>n.GlmPreTrainedModel,GraniteForCausalLM:()=>n.GraniteForCausalLM,GraniteModel:()=>n.GraniteModel,GranitePreTrainedModel:()=>n.GranitePreTrainedModel,Grok1Tokenizer:()=>r.Grok1Tokenizer,GroundingDinoForObjectDetection:()=>n.GroundingDinoForObjectDetection,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,GroundingDinoPreTrainedModel:()=>n.GroundingDinoPreTrainedModel,GroundingDinoProcessor:()=>_.GroundingDinoProcessor,GroupViTModel:()=>n.GroupViTModel,GroupViTPreTrainedModel:()=>n.GroupViTPreTrainedModel,HeliumForCausalLM:()=>n.HeliumForCausalLM,HeliumModel:()=>n.HeliumModel,HeliumPreTrainedModel:()=>n.HeliumPreTrainedModel,HerbertTokenizer:()=>r.HerbertTokenizer,HieraForImageClassification:()=>n.HieraForImageClassification,HieraModel:()=>n.HieraModel,HieraPreTrainedModel:()=>n.HieraPreTrainedModel,HubertForCTC:()=>n.HubertForCTC,HubertForSequenceClassification:()=>n.HubertForSequenceClassification,HubertModel:()=>n.HubertModel,HubertPreTrainedModel:()=>n.HubertPreTrainedModel,IJepaForImageClassification:()=>n.IJepaForImageClassification,IJepaModel:()=>n.IJepaModel,IJepaPreTrainedModel:()=>n.IJepaPreTrainedModel,Idefics3ForConditionalGeneration:()=>n.Idefics3ForConditionalGeneration,Idefics3ImageProcessor:()=>m.Idefics3ImageProcessor,Idefics3PreTrainedModel:()=>n.Idefics3PreTrainedModel,Idefics3Processor:()=>_.Idefics3Processor,ImageClassificationPipeline:()=>t.ImageClassificationPipeline,ImageFeatureExtractionPipeline:()=>t.ImageFeatureExtractionPipeline,ImageFeatureExtractor:()=>d.ImageFeatureExtractor,ImageMattingOutput:()=>n.ImageMattingOutput,ImageProcessor:()=>p.ImageProcessor,ImageSegmentationPipeline:()=>t.ImageSegmentationPipeline,ImageToImagePipeline:()=>t.ImageToImagePipeline,ImageToTextPipeline:()=>t.ImageToTextPipeline,InterruptableStoppingCriteria:()=>b.InterruptableStoppingCriteria,JAISLMHeadModel:()=>n.JAISLMHeadModel,JAISModel:()=>n.JAISModel,JAISPreTrainedModel:()=>n.JAISPreTrainedModel,JinaCLIPImageProcessor:()=>m.JinaCLIPImageProcessor,JinaCLIPModel:()=>n.JinaCLIPModel,JinaCLIPPreTrainedModel:()=>n.JinaCLIPPreTrainedModel,JinaCLIPProcessor:()=>_.JinaCLIPProcessor,JinaCLIPTextModel:()=>n.JinaCLIPTextModel,JinaCLIPVisionModel:()=>n.JinaCLIPVisionModel,LiteWhisperForConditionalGeneration:()=>n.LiteWhisperForConditionalGeneration,LlamaForCausalLM:()=>n.LlamaForCausalLM,LlamaModel:()=>n.LlamaModel,LlamaPreTrainedModel:()=>n.LlamaPreTrainedModel,LlamaTokenizer:()=>r.LlamaTokenizer,LlavaForConditionalGeneration:()=>n.LlavaForConditionalGeneration,LlavaOnevisionForConditionalGeneration:()=>n.LlavaOnevisionForConditionalGeneration,LlavaOnevisionImageProcessor:()=>m.LlavaOnevisionImageProcessor,LlavaPreTrainedModel:()=>n.LlavaPreTrainedModel,LlavaProcessor:()=>_.LlavaProcessor,LlavaQwen2ForCausalLM:()=>n.LlavaQwen2ForCausalLM,LogitsProcessor:()=>x.LogitsProcessor,LogitsProcessorList:()=>x.LogitsProcessorList,LogitsWarper:()=>x.LogitsWarper,LongT5ForConditionalGeneration:()=>n.LongT5ForConditionalGeneration,LongT5Model:()=>n.LongT5Model,LongT5PreTrainedModel:()=>n.LongT5PreTrainedModel,M2M100ForConditionalGeneration:()=>n.M2M100ForConditionalGeneration,M2M100Model:()=>n.M2M100Model,M2M100PreTrainedModel:()=>n.M2M100PreTrainedModel,M2M100Tokenizer:()=>r.M2M100Tokenizer,MBart50Tokenizer:()=>r.MBart50Tokenizer,MBartForCausalLM:()=>n.MBartForCausalLM,MBartForConditionalGeneration:()=>n.MBartForConditionalGeneration,MBartForSequenceClassification:()=>n.MBartForSequenceClassification,MBartModel:()=>n.MBartModel,MBartPreTrainedModel:()=>n.MBartPreTrainedModel,MBartTokenizer:()=>r.MBartTokenizer,MPNetForMaskedLM:()=>n.MPNetForMaskedLM,MPNetForQuestionAnswering:()=>n.MPNetForQuestionAnswering,MPNetForSequenceClassification:()=>n.MPNetForSequenceClassification,MPNetForTokenClassification:()=>n.MPNetForTokenClassification,MPNetModel:()=>n.MPNetModel,MPNetPreTrainedModel:()=>n.MPNetPreTrainedModel,MPNetTokenizer:()=>r.MPNetTokenizer,MT5ForConditionalGeneration:()=>n.MT5ForConditionalGeneration,MT5Model:()=>n.MT5Model,MT5PreTrainedModel:()=>n.MT5PreTrainedModel,MarianMTModel:()=>n.MarianMTModel,MarianModel:()=>n.MarianModel,MarianPreTrainedModel:()=>n.MarianPreTrainedModel,MarianTokenizer:()=>r.MarianTokenizer,Mask2FormerImageProcessor:()=>m.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>m.MaskFormerFeatureExtractor,MaskFormerForInstanceSegmentation:()=>n.MaskFormerForInstanceSegmentation,MaskFormerImageProcessor:()=>m.MaskFormerImageProcessor,MaskFormerModel:()=>n.MaskFormerModel,MaskFormerPreTrainedModel:()=>n.MaskFormerPreTrainedModel,MaskedLMOutput:()=>n.MaskedLMOutput,MaxLengthCriteria:()=>b.MaxLengthCriteria,Metric3DForDepthEstimation:()=>n.Metric3DForDepthEstimation,Metric3DPreTrainedModel:()=>n.Metric3DPreTrainedModel,Metric3Dv2ForDepthEstimation:()=>n.Metric3Dv2ForDepthEstimation,Metric3Dv2PreTrainedModel:()=>n.Metric3Dv2PreTrainedModel,MgpstrForSceneTextRecognition:()=>n.MgpstrForSceneTextRecognition,MgpstrModelOutput:()=>n.MgpstrModelOutput,MgpstrPreTrainedModel:()=>n.MgpstrPreTrainedModel,MgpstrProcessor:()=>_.MgpstrProcessor,MgpstrTokenizer:()=>r.MgpstrTokenizer,MimiDecoderModel:()=>n.MimiDecoderModel,MimiDecoderOutput:()=>n.MimiDecoderOutput,MimiEncoderModel:()=>n.MimiEncoderModel,MimiEncoderOutput:()=>n.MimiEncoderOutput,MimiModel:()=>n.MimiModel,MimiPreTrainedModel:()=>n.MimiPreTrainedModel,MinLengthLogitsProcessor:()=>x.MinLengthLogitsProcessor,MinNewTokensLengthLogitsProcessor:()=>x.MinNewTokensLengthLogitsProcessor,MistralForCausalLM:()=>n.MistralForCausalLM,MistralModel:()=>n.MistralModel,MistralPreTrainedModel:()=>n.MistralPreTrainedModel,MobileBertForMaskedLM:()=>n.MobileBertForMaskedLM,MobileBertForQuestionAnswering:()=>n.MobileBertForQuestionAnswering,MobileBertForSequenceClassification:()=>n.MobileBertForSequenceClassification,MobileBertModel:()=>n.MobileBertModel,MobileBertPreTrainedModel:()=>n.MobileBertPreTrainedModel,MobileBertTokenizer:()=>r.MobileBertTokenizer,MobileLLMForCausalLM:()=>n.MobileLLMForCausalLM,MobileLLMModel:()=>n.MobileLLMModel,MobileLLMPreTrainedModel:()=>n.MobileLLMPreTrainedModel,MobileNetV1FeatureExtractor:()=>m.MobileNetV1FeatureExtractor,MobileNetV1ForImageClassification:()=>n.MobileNetV1ForImageClassification,MobileNetV1ForSemanticSegmentation:()=>n.MobileNetV1ForSemanticSegmentation,MobileNetV1ImageProcessor:()=>m.MobileNetV1ImageProcessor,MobileNetV1Model:()=>n.MobileNetV1Model,MobileNetV1PreTrainedModel:()=>n.MobileNetV1PreTrainedModel,MobileNetV2FeatureExtractor:()=>m.MobileNetV2FeatureExtractor,MobileNetV2ForImageClassification:()=>n.MobileNetV2ForImageClassification,MobileNetV2ForSemanticSegmentation:()=>n.MobileNetV2ForSemanticSegmentation,MobileNetV2ImageProcessor:()=>m.MobileNetV2ImageProcessor,MobileNetV2Model:()=>n.MobileNetV2Model,MobileNetV2PreTrainedModel:()=>n.MobileNetV2PreTrainedModel,MobileNetV3FeatureExtractor:()=>m.MobileNetV3FeatureExtractor,MobileNetV3ForImageClassification:()=>n.MobileNetV3ForImageClassification,MobileNetV3ForSemanticSegmentation:()=>n.MobileNetV3ForSemanticSegmentation,MobileNetV3ImageProcessor:()=>m.MobileNetV3ImageProcessor,MobileNetV3Model:()=>n.MobileNetV3Model,MobileNetV3PreTrainedModel:()=>n.MobileNetV3PreTrainedModel,MobileNetV4FeatureExtractor:()=>m.MobileNetV4FeatureExtractor,MobileNetV4ForImageClassification:()=>n.MobileNetV4ForImageClassification,MobileNetV4ForSemanticSegmentation:()=>n.MobileNetV4ForSemanticSegmentation,MobileNetV4ImageProcessor:()=>m.MobileNetV4ImageProcessor,MobileNetV4Model:()=>n.MobileNetV4Model,MobileNetV4PreTrainedModel:()=>n.MobileNetV4PreTrainedModel,MobileViTFeatureExtractor:()=>m.MobileViTFeatureExtractor,MobileViTForImageClassification:()=>n.MobileViTForImageClassification,MobileViTImageProcessor:()=>m.MobileViTImageProcessor,MobileViTModel:()=>n.MobileViTModel,MobileViTPreTrainedModel:()=>n.MobileViTPreTrainedModel,MobileViTV2ForImageClassification:()=>n.MobileViTV2ForImageClassification,MobileViTV2Model:()=>n.MobileViTV2Model,MobileViTV2PreTrainedModel:()=>n.MobileViTV2PreTrainedModel,ModelOutput:()=>n.ModelOutput,ModernBertForMaskedLM:()=>n.ModernBertForMaskedLM,ModernBertForSequenceClassification:()=>n.ModernBertForSequenceClassification,ModernBertForTokenClassification:()=>n.ModernBertForTokenClassification,ModernBertModel:()=>n.ModernBertModel,ModernBertPreTrainedModel:()=>n.ModernBertPreTrainedModel,Moondream1ForConditionalGeneration:()=>n.Moondream1ForConditionalGeneration,MoonshineFeatureExtractor:()=>d.MoonshineFeatureExtractor,MoonshineForConditionalGeneration:()=>n.MoonshineForConditionalGeneration,MoonshineModel:()=>n.MoonshineModel,MoonshinePreTrainedModel:()=>n.MoonshinePreTrainedModel,MoonshineProcessor:()=>_.MoonshineProcessor,MptForCausalLM:()=>n.MptForCausalLM,MptModel:()=>n.MptModel,MptPreTrainedModel:()=>n.MptPreTrainedModel,MultiModalityCausalLM:()=>n.MultiModalityCausalLM,MultiModalityPreTrainedModel:()=>n.MultiModalityPreTrainedModel,MusicgenForCausalLM:()=>n.MusicgenForCausalLM,MusicgenForConditionalGeneration:()=>n.MusicgenForConditionalGeneration,MusicgenModel:()=>n.MusicgenModel,MusicgenPreTrainedModel:()=>n.MusicgenPreTrainedModel,NeoBertForMaskedLM:()=>n.NeoBertForMaskedLM,NeoBertForQuestionAnswering:()=>n.NeoBertForQuestionAnswering,NeoBertForSequenceClassification:()=>n.NeoBertForSequenceClassification,NeoBertForTokenClassification:()=>n.NeoBertForTokenClassification,NeoBertModel:()=>n.NeoBertModel,NeoBertPreTrainedModel:()=>n.NeoBertPreTrainedModel,NllbTokenizer:()=>r.NllbTokenizer,NoBadWordsLogitsProcessor:()=>x.NoBadWordsLogitsProcessor,NoRepeatNGramLogitsProcessor:()=>x.NoRepeatNGramLogitsProcessor,NomicBertModel:()=>n.NomicBertModel,NomicBertPreTrainedModel:()=>n.NomicBertPreTrainedModel,NougatImageProcessor:()=>m.NougatImageProcessor,NougatTokenizer:()=>r.NougatTokenizer,OPTForCausalLM:()=>n.OPTForCausalLM,OPTModel:()=>n.OPTModel,OPTPreTrainedModel:()=>n.OPTPreTrainedModel,ObjectDetectionPipeline:()=>t.ObjectDetectionPipeline,Olmo2ForCausalLM:()=>n.Olmo2ForCausalLM,Olmo2Model:()=>n.Olmo2Model,Olmo2PreTrainedModel:()=>n.Olmo2PreTrainedModel,OlmoForCausalLM:()=>n.OlmoForCausalLM,OlmoModel:()=>n.OlmoModel,OlmoPreTrainedModel:()=>n.OlmoPreTrainedModel,OpenELMForCausalLM:()=>n.OpenELMForCausalLM,OpenELMModel:()=>n.OpenELMModel,OpenELMPreTrainedModel:()=>n.OpenELMPreTrainedModel,OwlViTFeatureExtractor:()=>m.OwlViTFeatureExtractor,OwlViTForObjectDetection:()=>n.OwlViTForObjectDetection,OwlViTImageProcessor:()=>m.OwlViTImageProcessor,OwlViTModel:()=>n.OwlViTModel,OwlViTPreTrainedModel:()=>n.OwlViTPreTrainedModel,OwlViTProcessor:()=>_.OwlViTProcessor,Owlv2ForObjectDetection:()=>n.Owlv2ForObjectDetection,Owlv2ImageProcessor:()=>m.Owlv2ImageProcessor,Owlv2Model:()=>n.Owlv2Model,Owlv2PreTrainedModel:()=>n.Owlv2PreTrainedModel,PaliGemmaForConditionalGeneration:()=>n.PaliGemmaForConditionalGeneration,PaliGemmaPreTrainedModel:()=>n.PaliGemmaPreTrainedModel,PaliGemmaProcessor:()=>_.PaliGemmaProcessor,PatchTSMixerForPrediction:()=>n.PatchTSMixerForPrediction,PatchTSMixerModel:()=>n.PatchTSMixerModel,PatchTSMixerPreTrainedModel:()=>n.PatchTSMixerPreTrainedModel,PatchTSTForPrediction:()=>n.PatchTSTForPrediction,PatchTSTModel:()=>n.PatchTSTModel,PatchTSTPreTrainedModel:()=>n.PatchTSTPreTrainedModel,Phi3ForCausalLM:()=>n.Phi3ForCausalLM,Phi3Model:()=>n.Phi3Model,Phi3PreTrainedModel:()=>n.Phi3PreTrainedModel,Phi3VForCausalLM:()=>n.Phi3VForCausalLM,Phi3VImageProcessor:()=>m.Phi3VImageProcessor,Phi3VPreTrainedModel:()=>n.Phi3VPreTrainedModel,Phi3VProcessor:()=>_.Phi3VProcessor,PhiForCausalLM:()=>n.PhiForCausalLM,PhiModel:()=>n.PhiModel,PhiPreTrainedModel:()=>n.PhiPreTrainedModel,Pipeline:()=>t.Pipeline,PreTrainedModel:()=>n.PreTrainedModel,PreTrainedTokenizer:()=>r.PreTrainedTokenizer,PretrainedConfig:()=>i.PretrainedConfig,PretrainedMixin:()=>n.PretrainedMixin,Processor:()=>g.Processor,PvtForImageClassification:()=>n.PvtForImageClassification,PvtImageProcessor:()=>m.PvtImageProcessor,PvtModel:()=>n.PvtModel,PvtPreTrainedModel:()=>n.PvtPreTrainedModel,PyAnnoteFeatureExtractor:()=>d.PyAnnoteFeatureExtractor,PyAnnoteForAudioFrameClassification:()=>n.PyAnnoteForAudioFrameClassification,PyAnnoteModel:()=>n.PyAnnoteModel,PyAnnotePreTrainedModel:()=>n.PyAnnotePreTrainedModel,PyAnnoteProcessor:()=>_.PyAnnoteProcessor,QuestionAnsweringModelOutput:()=>n.QuestionAnsweringModelOutput,QuestionAnsweringPipeline:()=>t.QuestionAnsweringPipeline,Qwen2ForCausalLM:()=>n.Qwen2ForCausalLM,Qwen2Model:()=>n.Qwen2Model,Qwen2PreTrainedModel:()=>n.Qwen2PreTrainedModel,Qwen2Tokenizer:()=>r.Qwen2Tokenizer,Qwen2VLForConditionalGeneration:()=>n.Qwen2VLForConditionalGeneration,Qwen2VLImageProcessor:()=>m.Qwen2VLImageProcessor,Qwen2VLPreTrainedModel:()=>n.Qwen2VLPreTrainedModel,Qwen2VLProcessor:()=>_.Qwen2VLProcessor,Qwen3ForCausalLM:()=>n.Qwen3ForCausalLM,Qwen3Model:()=>n.Qwen3Model,Qwen3PreTrainedModel:()=>n.Qwen3PreTrainedModel,RFDetrForObjectDetection:()=>n.RFDetrForObjectDetection,RFDetrModel:()=>n.RFDetrModel,RFDetrObjectDetectionOutput:()=>n.RFDetrObjectDetectionOutput,RFDetrPreTrainedModel:()=>n.RFDetrPreTrainedModel,RTDetrForObjectDetection:()=>n.RTDetrForObjectDetection,RTDetrImageProcessor:()=>m.RTDetrImageProcessor,RTDetrModel:()=>n.RTDetrModel,RTDetrObjectDetectionOutput:()=>n.RTDetrObjectDetectionOutput,RTDetrPreTrainedModel:()=>n.RTDetrPreTrainedModel,RTDetrV2ForObjectDetection:()=>n.RTDetrV2ForObjectDetection,RTDetrV2Model:()=>n.RTDetrV2Model,RTDetrV2ObjectDetectionOutput:()=>n.RTDetrV2ObjectDetectionOutput,RTDetrV2PreTrainedModel:()=>n.RTDetrV2PreTrainedModel,RawAudio:()=>a.RawAudio,RawImage:()=>o.RawImage,RawVideo:()=>s.RawVideo,RawVideoFrame:()=>s.RawVideoFrame,RepetitionPenaltyLogitsProcessor:()=>x.RepetitionPenaltyLogitsProcessor,ResNetForImageClassification:()=>n.ResNetForImageClassification,ResNetModel:()=>n.ResNetModel,ResNetPreTrainedModel:()=>n.ResNetPreTrainedModel,RoFormerForMaskedLM:()=>n.RoFormerForMaskedLM,RoFormerForQuestionAnswering:()=>n.RoFormerForQuestionAnswering,RoFormerForSequenceClassification:()=>n.RoFormerForSequenceClassification,RoFormerForTokenClassification:()=>n.RoFormerForTokenClassification,RoFormerModel:()=>n.RoFormerModel,RoFormerPreTrainedModel:()=>n.RoFormerPreTrainedModel,RoFormerTokenizer:()=>r.RoFormerTokenizer,RobertaForMaskedLM:()=>n.RobertaForMaskedLM,RobertaForQuestionAnswering:()=>n.RobertaForQuestionAnswering,RobertaForSequenceClassification:()=>n.RobertaForSequenceClassification,RobertaForTokenClassification:()=>n.RobertaForTokenClassification,RobertaModel:()=>n.RobertaModel,RobertaPreTrainedModel:()=>n.RobertaPreTrainedModel,RobertaTokenizer:()=>r.RobertaTokenizer,SamImageProcessor:()=>m.SamImageProcessor,SamImageSegmentationOutput:()=>n.SamImageSegmentationOutput,SamModel:()=>n.SamModel,SamPreTrainedModel:()=>n.SamPreTrainedModel,SamProcessor:()=>_.SamProcessor,SapiensForDepthEstimation:()=>n.SapiensForDepthEstimation,SapiensForNormalEstimation:()=>n.SapiensForNormalEstimation,SapiensForSemanticSegmentation:()=>n.SapiensForSemanticSegmentation,SapiensPreTrainedModel:()=>n.SapiensPreTrainedModel,SeamlessM4TFeatureExtractor:()=>d.SeamlessM4TFeatureExtractor,SegformerFeatureExtractor:()=>m.SegformerFeatureExtractor,SegformerForImageClassification:()=>n.SegformerForImageClassification,SegformerForSemanticSegmentation:()=>n.SegformerForSemanticSegmentation,SegformerImageProcessor:()=>m.SegformerImageProcessor,SegformerModel:()=>n.SegformerModel,SegformerPreTrainedModel:()=>n.SegformerPreTrainedModel,Seq2SeqLMOutput:()=>n.Seq2SeqLMOutput,SequenceClassifierOutput:()=>n.SequenceClassifierOutput,SiglipImageProcessor:()=>m.SiglipImageProcessor,SiglipModel:()=>n.SiglipModel,SiglipPreTrainedModel:()=>n.SiglipPreTrainedModel,SiglipTextModel:()=>n.SiglipTextModel,SiglipTokenizer:()=>r.SiglipTokenizer,SiglipVisionModel:()=>n.SiglipVisionModel,SmolVLMForConditionalGeneration:()=>n.SmolVLMForConditionalGeneration,SmolVLMImageProcessor:()=>m.SmolVLMImageProcessor,SmolVLMProcessor:()=>_.SmolVLMProcessor,SnacDecoderModel:()=>n.SnacDecoderModel,SnacEncoderModel:()=>n.SnacEncoderModel,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SnacModel:()=>n.SnacModel,SnacPreTrainedModel:()=>n.SnacPreTrainedModel,SpeechT5FeatureExtractor:()=>d.SpeechT5FeatureExtractor,SpeechT5ForSpeechToText:()=>n.SpeechT5ForSpeechToText,SpeechT5ForTextToSpeech:()=>n.SpeechT5ForTextToSpeech,SpeechT5HifiGan:()=>n.SpeechT5HifiGan,SpeechT5Model:()=>n.SpeechT5Model,SpeechT5PreTrainedModel:()=>n.SpeechT5PreTrainedModel,SpeechT5Processor:()=>_.SpeechT5Processor,SpeechT5Tokenizer:()=>r.SpeechT5Tokenizer,SqueezeBertForMaskedLM:()=>n.SqueezeBertForMaskedLM,SqueezeBertForQuestionAnswering:()=>n.SqueezeBertForQuestionAnswering,SqueezeBertForSequenceClassification:()=>n.SqueezeBertForSequenceClassification,SqueezeBertModel:()=>n.SqueezeBertModel,SqueezeBertPreTrainedModel:()=>n.SqueezeBertPreTrainedModel,SqueezeBertTokenizer:()=>r.SqueezeBertTokenizer,StableLmForCausalLM:()=>n.StableLmForCausalLM,StableLmModel:()=>n.StableLmModel,StableLmPreTrainedModel:()=>n.StableLmPreTrainedModel,Starcoder2ForCausalLM:()=>n.Starcoder2ForCausalLM,Starcoder2Model:()=>n.Starcoder2Model,Starcoder2PreTrainedModel:()=>n.Starcoder2PreTrainedModel,StoppingCriteria:()=>b.StoppingCriteria,StoppingCriteriaList:()=>b.StoppingCriteriaList,StyleTextToSpeech2Model:()=>n.StyleTextToSpeech2Model,StyleTextToSpeech2PreTrainedModel:()=>n.StyleTextToSpeech2PreTrainedModel,SummarizationPipeline:()=>t.SummarizationPipeline,SuppressTokensAtBeginLogitsProcessor:()=>x.SuppressTokensAtBeginLogitsProcessor,Swin2SRForImageSuperResolution:()=>n.Swin2SRForImageSuperResolution,Swin2SRImageProcessor:()=>m.Swin2SRImageProcessor,Swin2SRModel:()=>n.Swin2SRModel,Swin2SRPreTrainedModel:()=>n.Swin2SRPreTrainedModel,SwinForImageClassification:()=>n.SwinForImageClassification,SwinForSemanticSegmentation:()=>n.SwinForSemanticSegmentation,SwinModel:()=>n.SwinModel,SwinPreTrainedModel:()=>n.SwinPreTrainedModel,T5ForConditionalGeneration:()=>n.T5ForConditionalGeneration,T5Model:()=>n.T5Model,T5PreTrainedModel:()=>n.T5PreTrainedModel,T5Tokenizer:()=>r.T5Tokenizer,TableTransformerForObjectDetection:()=>n.TableTransformerForObjectDetection,TableTransformerModel:()=>n.TableTransformerModel,TableTransformerObjectDetectionOutput:()=>n.TableTransformerObjectDetectionOutput,TableTransformerPreTrainedModel:()=>n.TableTransformerPreTrainedModel,TemperatureLogitsWarper:()=>x.TemperatureLogitsWarper,Tensor:()=>c.Tensor,Text2TextGenerationPipeline:()=>t.Text2TextGenerationPipeline,TextClassificationPipeline:()=>t.TextClassificationPipeline,TextGenerationPipeline:()=>t.TextGenerationPipeline,TextStreamer:()=>y.TextStreamer,TextToAudioPipeline:()=>t.TextToAudioPipeline,TokenClassificationPipeline:()=>t.TokenClassificationPipeline,TokenClassifierOutput:()=>n.TokenClassifierOutput,TokenizerModel:()=>r.TokenizerModel,TopKLogitsWarper:()=>x.TopKLogitsWarper,TopPLogitsWarper:()=>x.TopPLogitsWarper,TrOCRForCausalLM:()=>n.TrOCRForCausalLM,TrOCRPreTrainedModel:()=>n.TrOCRPreTrainedModel,TranslationPipeline:()=>t.TranslationPipeline,UltravoxModel:()=>n.UltravoxModel,UltravoxPreTrainedModel:()=>n.UltravoxPreTrainedModel,UltravoxProcessor:()=>_.UltravoxProcessor,UniSpeechForCTC:()=>n.UniSpeechForCTC,UniSpeechForSequenceClassification:()=>n.UniSpeechForSequenceClassification,UniSpeechModel:()=>n.UniSpeechModel,UniSpeechPreTrainedModel:()=>n.UniSpeechPreTrainedModel,UniSpeechSatForAudioFrameClassification:()=>n.UniSpeechSatForAudioFrameClassification,UniSpeechSatForCTC:()=>n.UniSpeechSatForCTC,UniSpeechSatForSequenceClassification:()=>n.UniSpeechSatForSequenceClassification,UniSpeechSatModel:()=>n.UniSpeechSatModel,UniSpeechSatPreTrainedModel:()=>n.UniSpeechSatPreTrainedModel,VLChatProcessor:()=>_.VLChatProcessor,VLMImageProcessor:()=>m.VLMImageProcessor,ViTFeatureExtractor:()=>m.ViTFeatureExtractor,ViTForImageClassification:()=>n.ViTForImageClassification,ViTImageProcessor:()=>m.ViTImageProcessor,ViTMAEModel:()=>n.ViTMAEModel,ViTMAEPreTrainedModel:()=>n.ViTMAEPreTrainedModel,ViTMSNForImageClassification:()=>n.ViTMSNForImageClassification,ViTMSNModel:()=>n.ViTMSNModel,ViTMSNPreTrainedModel:()=>n.ViTMSNPreTrainedModel,ViTModel:()=>n.ViTModel,ViTPreTrainedModel:()=>n.ViTPreTrainedModel,VisionEncoderDecoderModel:()=>n.VisionEncoderDecoderModel,VitMatteForImageMatting:()=>n.VitMatteForImageMatting,VitMatteImageProcessor:()=>m.VitMatteImageProcessor,VitMattePreTrainedModel:()=>n.VitMattePreTrainedModel,VitPoseForPoseEstimation:()=>n.VitPoseForPoseEstimation,VitPoseImageProcessor:()=>m.VitPoseImageProcessor,VitPosePreTrainedModel:()=>n.VitPosePreTrainedModel,VitsModel:()=>n.VitsModel,VitsModelOutput:()=>n.VitsModelOutput,VitsPreTrainedModel:()=>n.VitsPreTrainedModel,VitsTokenizer:()=>r.VitsTokenizer,Wav2Vec2BertForCTC:()=>n.Wav2Vec2BertForCTC,Wav2Vec2BertForSequenceClassification:()=>n.Wav2Vec2BertForSequenceClassification,Wav2Vec2BertModel:()=>n.Wav2Vec2BertModel,Wav2Vec2BertPreTrainedModel:()=>n.Wav2Vec2BertPreTrainedModel,Wav2Vec2CTCTokenizer:()=>r.Wav2Vec2CTCTokenizer,Wav2Vec2FeatureExtractor:()=>d.Wav2Vec2FeatureExtractor,Wav2Vec2ForAudioFrameClassification:()=>n.Wav2Vec2ForAudioFrameClassification,Wav2Vec2ForCTC:()=>n.Wav2Vec2ForCTC,Wav2Vec2ForSequenceClassification:()=>n.Wav2Vec2ForSequenceClassification,Wav2Vec2Model:()=>n.Wav2Vec2Model,Wav2Vec2PreTrainedModel:()=>n.Wav2Vec2PreTrainedModel,Wav2Vec2Processor:()=>_.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>_.Wav2Vec2ProcessorWithLM,WavLMForAudioFrameClassification:()=>n.WavLMForAudioFrameClassification,WavLMForCTC:()=>n.WavLMForCTC,WavLMForSequenceClassification:()=>n.WavLMForSequenceClassification,WavLMForXVector:()=>n.WavLMForXVector,WavLMModel:()=>n.WavLMModel,WavLMPreTrainedModel:()=>n.WavLMPreTrainedModel,WeSpeakerFeatureExtractor:()=>d.WeSpeakerFeatureExtractor,WeSpeakerResNetModel:()=>n.WeSpeakerResNetModel,WeSpeakerResNetPreTrainedModel:()=>n.WeSpeakerResNetPreTrainedModel,WhisperFeatureExtractor:()=>d.WhisperFeatureExtractor,WhisperForConditionalGeneration:()=>n.WhisperForConditionalGeneration,WhisperModel:()=>n.WhisperModel,WhisperPreTrainedModel:()=>n.WhisperPreTrainedModel,WhisperProcessor:()=>_.WhisperProcessor,WhisperTextStreamer:()=>y.WhisperTextStreamer,WhisperTimeStampLogitsProcessor:()=>x.WhisperTimeStampLogitsProcessor,WhisperTokenizer:()=>r.WhisperTokenizer,XLMForQuestionAnswering:()=>n.XLMForQuestionAnswering,XLMForSequenceClassification:()=>n.XLMForSequenceClassification,XLMForTokenClassification:()=>n.XLMForTokenClassification,XLMModel:()=>n.XLMModel,XLMPreTrainedModel:()=>n.XLMPreTrainedModel,XLMRobertaForMaskedLM:()=>n.XLMRobertaForMaskedLM,XLMRobertaForQuestionAnswering:()=>n.XLMRobertaForQuestionAnswering,XLMRobertaForSequenceClassification:()=>n.XLMRobertaForSequenceClassification,XLMRobertaForTokenClassification:()=>n.XLMRobertaForTokenClassification,XLMRobertaModel:()=>n.XLMRobertaModel,XLMRobertaPreTrainedModel:()=>n.XLMRobertaPreTrainedModel,XLMRobertaTokenizer:()=>r.XLMRobertaTokenizer,XLMTokenizer:()=>r.XLMTokenizer,XLMWithLMHeadModel:()=>n.XLMWithLMHeadModel,XVectorOutput:()=>n.XVectorOutput,YolosFeatureExtractor:()=>m.YolosFeatureExtractor,YolosForObjectDetection:()=>n.YolosForObjectDetection,YolosImageProcessor:()=>m.YolosImageProcessor,YolosModel:()=>n.YolosModel,YolosObjectDetectionOutput:()=>n.YolosObjectDetectionOutput,YolosPreTrainedModel:()=>n.YolosPreTrainedModel,ZeroShotAudioClassificationPipeline:()=>t.ZeroShotAudioClassificationPipeline,ZeroShotClassificationPipeline:()=>t.ZeroShotClassificationPipeline,ZeroShotImageClassificationPipeline:()=>t.ZeroShotImageClassificationPipeline,ZeroShotObjectDetectionPipeline:()=>t.ZeroShotObjectDetectionPipeline,bankers_round:()=>l.bankers_round,cat:()=>c.cat,cos_sim:()=>l.cos_sim,dot:()=>l.dot,dynamic_time_warping:()=>l.dynamic_time_warping,env:()=>e.env,full:()=>c.full,full_like:()=>c.full_like,getKeyValueShapes:()=>i.getKeyValueShapes,hamming:()=>a.hamming,hanning:()=>a.hanning,interpolate:()=>c.interpolate,interpolate_4d:()=>c.interpolate_4d,interpolate_data:()=>l.interpolate_data,is_chinese_char:()=>r.is_chinese_char,layer_norm:()=>c.layer_norm,load_image:()=>o.load_image,load_video:()=>s.load_video,log_softmax:()=>l.log_softmax,magnitude:()=>l.magnitude,matmul:()=>c.matmul,max:()=>l.max,mean:()=>c.mean,mean_pooling:()=>c.mean_pooling,medianFilter:()=>l.medianFilter,mel_filter_bank:()=>a.mel_filter_bank,min:()=>l.min,ones:()=>c.ones,ones_like:()=>c.ones_like,permute:()=>c.permute,permute_data:()=>l.permute_data,pipeline:()=>t.pipeline,quantize_embeddings:()=>c.quantize_embeddings,rand:()=>c.rand,read_audio:()=>a.read_audio,rfft:()=>c.rfft,round:()=>l.round,slice:()=>c.slice,softmax:()=>l.softmax,spectrogram:()=>a.spectrogram,stack:()=>c.stack,std_mean:()=>c.std_mean,topk:()=>c.topk,window_function:()=>a.window_function,zeros:()=>c.zeros,zeros_like:()=>c.zeros_like});var e=cf( +/*! ./env.js */ +`./src/env.js`),t=cf( +/*! ./pipelines.js */ +`./src/pipelines.js`),n=cf( +/*! ./models.js */ +`./src/models.js`),r=cf( +/*! ./tokenizers.js */ +`./src/tokenizers.js`),i=cf( +/*! ./configs.js */ +`./src/configs.js`),a=cf( +/*! ./utils/audio.js */ +`./src/utils/audio.js`),o=cf( +/*! ./utils/image.js */ +`./src/utils/image.js`),s=cf( +/*! ./utils/video.js */ +`./src/utils/video.js`),c=cf( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),l=cf( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),u=cf( +/*! ./base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),d=cf( +/*! ./models/feature_extractors.js */ +`./src/models/feature_extractors.js`),f=cf( +/*! ./models/auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),p=cf( +/*! ./base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),m=cf( +/*! ./models/image_processors.js */ +`./src/models/image_processors.js`),h=cf( +/*! ./models/auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),g=cf( +/*! ./base/processing_utils.js */ +`./src/base/processing_utils.js`),_=cf( +/*! ./models/processors.js */ +`./src/models/processors.js`),v=cf( +/*! ./models/auto/processing_auto.js */ +`./src/models/auto/processing_auto.js`),y=cf( +/*! ./generation/streamers.js */ +`./src/generation/streamers.js`),b=cf( +/*! ./generation/stopping_criteria.js */ +`./src/generation/stopping_criteria.js`),x=cf( +/*! ./generation/logits_process.js */ +`./src/generation/logits_process.js`)})();var lf=$.ASTFeatureExtractor,uf=$.ASTForAudioClassification,df=$.ASTModel,ff=$.ASTPreTrainedModel,pf=$.AlbertForMaskedLM,mf=$.AlbertForQuestionAnswering,hf=$.AlbertForSequenceClassification,gf=$.AlbertModel,_f=$.AlbertPreTrainedModel,vf=$.AlbertTokenizer,yf=$.AudioClassificationPipeline,bf=$.AutoConfig,xf=$.AutoFeatureExtractor,Sf=$.AutoImageProcessor,Cf=$.AutoModel,wf=$.AutoModelForAudioClassification,Tf=$.AutoModelForAudioFrameClassification,Ef=$.AutoModelForAudioTextToText,Df=$.AutoModelForCTC,Of=$.AutoModelForCausalLM,kf=$.AutoModelForDepthEstimation,Af=$.AutoModelForDocumentQuestionAnswering,jf=$.AutoModelForImageClassification,Mf=$.AutoModelForImageFeatureExtraction,Nf=$.AutoModelForImageMatting,Pf=$.AutoModelForImageSegmentation,Ff=$.AutoModelForImageTextToText,If=$.AutoModelForImageToImage,Lf=$.AutoModelForMaskGeneration,Rf=$.AutoModelForMaskedLM,zf=$.AutoModelForNormalEstimation,Bf=$.AutoModelForObjectDetection,Vf=$.AutoModelForPoseEstimation,Hf=$.AutoModelForQuestionAnswering,Uf=$.AutoModelForSemanticSegmentation,Wf=$.AutoModelForSeq2SeqLM,Gf=$.AutoModelForSequenceClassification,Kf=$.AutoModelForSpeechSeq2Seq,qf=$.AutoModelForTextToSpectrogram,Jf=$.AutoModelForTextToWaveform,Yf=$.AutoModelForTokenClassification,Xf=$.AutoModelForUniversalSegmentation,Zf=$.AutoModelForVision2Seq,Qf=$.AutoModelForXVector,$f=$.AutoModelForZeroShotObjectDetection,ep=$.AutoProcessor,tp=$.AutoTokenizer,np=$.AutomaticSpeechRecognitionPipeline,rp=$.BackgroundRemovalPipeline,ip=$.BartForConditionalGeneration,ap=$.BartForSequenceClassification,op=$.BartModel,sp=$.BartPretrainedModel,cp=$.BartTokenizer,lp=$.BaseModelOutput,up=$.BaseStreamer,dp=$.BeitFeatureExtractor,fp=$.BeitForImageClassification,pp=$.BeitModel,mp=$.BeitPreTrainedModel,hp=$.BertForMaskedLM,gp=$.BertForQuestionAnswering,_p=$.BertForSequenceClassification,vp=$.BertForTokenClassification,yp=$.BertModel,bp=$.BertPreTrainedModel,xp=$.BertTokenizer,Sp=$.BitImageProcessor,Cp=$.BlenderbotForConditionalGeneration,wp=$.BlenderbotModel,Tp=$.BlenderbotPreTrainedModel,Ep=$.BlenderbotSmallForConditionalGeneration,Dp=$.BlenderbotSmallModel,Op=$.BlenderbotSmallPreTrainedModel,kp=$.BlenderbotSmallTokenizer,Ap=$.BlenderbotTokenizer,jp=$.BloomForCausalLM,Mp=$.BloomModel,Np=$.BloomPreTrainedModel,Pp=$.BloomTokenizer,Fp=$.CLIPFeatureExtractor,Ip=$.CLIPImageProcessor,Lp=$.CLIPModel,Rp=$.CLIPPreTrainedModel,zp=$.CLIPSegForImageSegmentation,Bp=$.CLIPSegModel,Vp=$.CLIPSegPreTrainedModel,Hp=$.CLIPTextModel,Up=$.CLIPTextModelWithProjection,Wp=$.CLIPTokenizer,Gp=$.CLIPVisionModel,Kp=$.CLIPVisionModelWithProjection,qp=$.CamembertForMaskedLM,Jp=$.CamembertForQuestionAnswering,Yp=$.CamembertForSequenceClassification,Xp=$.CamembertForTokenClassification,Zp=$.CamembertModel,Qp=$.CamembertPreTrainedModel,$p=$.CamembertTokenizer,em=$.CausalLMOutput,tm=$.CausalLMOutputWithPast,nm=$.ChineseCLIPFeatureExtractor,rm=$.ChineseCLIPModel,im=$.ChineseCLIPPreTrainedModel,am=$.ClapAudioModelWithProjection,om=$.ClapFeatureExtractor,sm=$.ClapModel,cm=$.ClapPreTrainedModel,lm=$.ClapTextModelWithProjection,um=$.ClassifierFreeGuidanceLogitsProcessor,dm=$.CodeGenForCausalLM,fm=$.CodeGenModel,pm=$.CodeGenPreTrainedModel,mm=$.CodeGenTokenizer,hm=$.CodeLlamaTokenizer,gm=$.CohereForCausalLM,_m=$.CohereModel,vm=$.CoherePreTrainedModel,ym=$.CohereTokenizer,bm=$.ConvBertForMaskedLM,xm=$.ConvBertForQuestionAnswering,Sm=$.ConvBertForSequenceClassification,Cm=$.ConvBertForTokenClassification,wm=$.ConvBertModel,Tm=$.ConvBertPreTrainedModel,Em=$.ConvBertTokenizer,Dm=$.ConvNextFeatureExtractor,Om=$.ConvNextForImageClassification,km=$.ConvNextImageProcessor,Am=$.ConvNextModel,jm=$.ConvNextPreTrainedModel,Mm=$.ConvNextV2ForImageClassification,Nm=$.ConvNextV2Model,Pm=$.ConvNextV2PreTrainedModel,Fm=$.DFineForObjectDetection,Im=$.DFineModel,Lm=$.DFinePreTrainedModel,Rm=$.DPTFeatureExtractor,zm=$.DPTForDepthEstimation,Bm=$.DPTImageProcessor,Vm=$.DPTModel,Hm=$.DPTPreTrainedModel,Um=$.DacDecoderModel,Wm=$.DacDecoderOutput,Gm=$.DacEncoderModel,Km=$.DacEncoderOutput,qm=$.DacFeatureExtractor,Jm=$.DacModel,Ym=$.DacPreTrainedModel,Xm=$.DataTypeMap,Zm=$.DebertaForMaskedLM,Qm=$.DebertaForQuestionAnswering,$m=$.DebertaForSequenceClassification,eh=$.DebertaForTokenClassification,th=$.DebertaModel,nh=$.DebertaPreTrainedModel,rh=$.DebertaTokenizer,ih=$.DebertaV2ForMaskedLM,ah=$.DebertaV2ForQuestionAnswering,oh=$.DebertaV2ForSequenceClassification,sh=$.DebertaV2ForTokenClassification,ch=$.DebertaV2Model,lh=$.DebertaV2PreTrainedModel,uh=$.DebertaV2Tokenizer,dh=$.DecisionTransformerModel,fh=$.DecisionTransformerPreTrainedModel,ph=$.DeiTFeatureExtractor,mh=$.DeiTForImageClassification,hh=$.DeiTImageProcessor,gh=$.DeiTModel,_h=$.DeiTPreTrainedModel,vh=$.DepthAnythingForDepthEstimation,yh=$.DepthAnythingPreTrainedModel,bh=$.DepthEstimationPipeline,xh=$.DepthProForDepthEstimation,Sh=$.DepthProPreTrainedModel,Ch=$.DetrFeatureExtractor,wh=$.DetrForObjectDetection,Th=$.DetrForSegmentation,Eh=$.DetrImageProcessor,Dh=$.DetrModel,Oh=$.DetrObjectDetectionOutput,kh=$.DetrPreTrainedModel,Ah=$.DetrSegmentationOutput,jh=$.Dinov2ForImageClassification,Mh=$.Dinov2Model,Nh=$.Dinov2PreTrainedModel,Ph=$.Dinov2WithRegistersForImageClassification,Fh=$.Dinov2WithRegistersModel,Ih=$.Dinov2WithRegistersPreTrainedModel,Lh=$.DistilBertForMaskedLM,Rh=$.DistilBertForQuestionAnswering,zh=$.DistilBertForSequenceClassification,Bh=$.DistilBertForTokenClassification,Vh=$.DistilBertModel,Hh=$.DistilBertPreTrainedModel,Uh=$.DistilBertTokenizer,Wh=$.DocumentQuestionAnsweringPipeline,Gh=$.DonutFeatureExtractor,Kh=$.DonutImageProcessor,qh=$.DonutSwinModel,Jh=$.DonutSwinPreTrainedModel,Yh=$.EfficientNetForImageClassification,Xh=$.EfficientNetImageProcessor,Zh=$.EfficientNetModel,Qh=$.EfficientNetPreTrainedModel,$h=$.ElectraForMaskedLM,eg=$.ElectraForQuestionAnswering,tg=$.ElectraForSequenceClassification,ng=$.ElectraForTokenClassification,rg=$.ElectraModel,ig=$.ElectraPreTrainedModel,ag=$.ElectraTokenizer,og=$.EncodecFeatureExtractor,sg=$.EosTokenCriteria,cg=$.EsmForMaskedLM,lg=$.EsmForSequenceClassification,ug=$.EsmForTokenClassification,dg=$.EsmModel,fg=$.EsmPreTrainedModel,pg=$.EsmTokenizer,mg=$.ExaoneForCausalLM,hg=$.ExaoneModel,gg=$.ExaonePreTrainedModel,_g=$.FFT,vg=$.FalconForCausalLM,yg=$.FalconModel,bg=$.FalconPreTrainedModel,xg=$.FalconTokenizer,Sg=$.FastViTForImageClassification,Cg=$.FastViTModel,wg=$.FastViTPreTrainedModel,Tg=$.FeatureExtractionPipeline,Eg=$.FeatureExtractor,Dg=$.FillMaskPipeline,Og=$.Florence2ForConditionalGeneration,kg=$.Florence2PreTrainedModel,Ag=$.Florence2Processor,jg=$.ForcedBOSTokenLogitsProcessor,Mg=$.ForcedEOSTokenLogitsProcessor,Ng=$.GLPNFeatureExtractor,Pg=$.GLPNForDepthEstimation,Fg=$.GLPNModel,Ig=$.GLPNPreTrainedModel,Lg=$.GPT2LMHeadModel,Rg=$.GPT2Model,zg=$.GPT2PreTrainedModel,Bg=$.GPT2Tokenizer,Vg=$.GPTBigCodeForCausalLM,Hg=$.GPTBigCodeModel,Ug=$.GPTBigCodePreTrainedModel,Wg=$.GPTJForCausalLM,Gg=$.GPTJModel,Kg=$.GPTJPreTrainedModel,qg=$.GPTNeoForCausalLM,Jg=$.GPTNeoModel,Yg=$.GPTNeoPreTrainedModel,Xg=$.GPTNeoXForCausalLM,Zg=$.GPTNeoXModel,Qg=$.GPTNeoXPreTrainedModel,$g=$.GPTNeoXTokenizer,e_=$.Gemma2ForCausalLM,t_=$.Gemma2Model,n_=$.Gemma2PreTrainedModel,r_=$.Gemma3ForCausalLM,i_=$.Gemma3Model,a_=$.Gemma3PreTrainedModel,o_=$.Gemma3nAudioFeatureExtractor,s_=$.Gemma3nForConditionalGeneration,c_=$.Gemma3nPreTrainedModel,l_=$.Gemma3nProcessor,u_=$.GemmaForCausalLM,d_=$.GemmaModel,f_=$.GemmaPreTrainedModel,p_=$.GemmaTokenizer,m_=$.GlmForCausalLM,h_=$.GlmModel,g_=$.GlmPreTrainedModel,__=$.GraniteForCausalLM,v_=$.GraniteModel,y_=$.GranitePreTrainedModel,b_=$.Grok1Tokenizer,x_=$.GroundingDinoForObjectDetection,S_=$.GroundingDinoImageProcessor,C_=$.GroundingDinoPreTrainedModel,w_=$.GroundingDinoProcessor,T_=$.GroupViTModel,E_=$.GroupViTPreTrainedModel,D_=$.HeliumForCausalLM,O_=$.HeliumModel,k_=$.HeliumPreTrainedModel,A_=$.HerbertTokenizer,j_=$.HieraForImageClassification,M_=$.HieraModel,N_=$.HieraPreTrainedModel,P_=$.HubertForCTC,F_=$.HubertForSequenceClassification,I_=$.HubertModel,L_=$.HubertPreTrainedModel,R_=$.IJepaForImageClassification,z_=$.IJepaModel,B_=$.IJepaPreTrainedModel,V_=$.Idefics3ForConditionalGeneration,H_=$.Idefics3ImageProcessor,U_=$.Idefics3PreTrainedModel,W_=$.Idefics3Processor,G_=$.ImageClassificationPipeline,K_=$.ImageFeatureExtractionPipeline,q_=$.ImageFeatureExtractor,J_=$.ImageMattingOutput,Y_=$.ImageProcessor,X_=$.ImageSegmentationPipeline,Z_=$.ImageToImagePipeline,Q_=$.ImageToTextPipeline,$_=$.InterruptableStoppingCriteria,ev=$.JAISLMHeadModel,tv=$.JAISModel,nv=$.JAISPreTrainedModel,rv=$.JinaCLIPImageProcessor,iv=$.JinaCLIPModel,av=$.JinaCLIPPreTrainedModel,ov=$.JinaCLIPProcessor,sv=$.JinaCLIPTextModel,cv=$.JinaCLIPVisionModel,lv=$.LiteWhisperForConditionalGeneration,uv=$.LlamaForCausalLM,dv=$.LlamaModel,fv=$.LlamaPreTrainedModel,pv=$.LlamaTokenizer,mv=$.LlavaForConditionalGeneration,hv=$.LlavaOnevisionForConditionalGeneration,gv=$.LlavaOnevisionImageProcessor,_v=$.LlavaPreTrainedModel,vv=$.LlavaProcessor,yv=$.LlavaQwen2ForCausalLM,bv=$.LogitsProcessor,xv=$.LogitsProcessorList,Sv=$.LogitsWarper,Cv=$.LongT5ForConditionalGeneration,wv=$.LongT5Model,Tv=$.LongT5PreTrainedModel,Ev=$.M2M100ForConditionalGeneration,Dv=$.M2M100Model,Ov=$.M2M100PreTrainedModel,kv=$.M2M100Tokenizer,Av=$.MBart50Tokenizer,jv=$.MBartForCausalLM,Mv=$.MBartForConditionalGeneration,Nv=$.MBartForSequenceClassification,Pv=$.MBartModel,Fv=$.MBartPreTrainedModel,Iv=$.MBartTokenizer,Lv=$.MPNetForMaskedLM,Rv=$.MPNetForQuestionAnswering,zv=$.MPNetForSequenceClassification,Bv=$.MPNetForTokenClassification,Vv=$.MPNetModel,Hv=$.MPNetPreTrainedModel,Uv=$.MPNetTokenizer,Wv=$.MT5ForConditionalGeneration,Gv=$.MT5Model,Kv=$.MT5PreTrainedModel,qv=$.MarianMTModel,Jv=$.MarianModel,Yv=$.MarianPreTrainedModel,Xv=$.MarianTokenizer,Zv=$.Mask2FormerImageProcessor,Qv=$.MaskFormerFeatureExtractor,$v=$.MaskFormerForInstanceSegmentation,ey=$.MaskFormerImageProcessor,ty=$.MaskFormerModel,ny=$.MaskFormerPreTrainedModel,ry=$.MaskedLMOutput,iy=$.MaxLengthCriteria,ay=$.Metric3DForDepthEstimation,oy=$.Metric3DPreTrainedModel,sy=$.Metric3Dv2ForDepthEstimation,cy=$.Metric3Dv2PreTrainedModel,ly=$.MgpstrForSceneTextRecognition,uy=$.MgpstrModelOutput,dy=$.MgpstrPreTrainedModel,fy=$.MgpstrProcessor,py=$.MgpstrTokenizer,my=$.MimiDecoderModel,hy=$.MimiDecoderOutput,gy=$.MimiEncoderModel,_y=$.MimiEncoderOutput,vy=$.MimiModel,yy=$.MimiPreTrainedModel,by=$.MinLengthLogitsProcessor,xy=$.MinNewTokensLengthLogitsProcessor,Sy=$.MistralForCausalLM,Cy=$.MistralModel,wy=$.MistralPreTrainedModel,Ty=$.MobileBertForMaskedLM,Ey=$.MobileBertForQuestionAnswering,Dy=$.MobileBertForSequenceClassification,Oy=$.MobileBertModel,ky=$.MobileBertPreTrainedModel,Ay=$.MobileBertTokenizer,jy=$.MobileLLMForCausalLM,My=$.MobileLLMModel,Ny=$.MobileLLMPreTrainedModel,Py=$.MobileNetV1FeatureExtractor,Fy=$.MobileNetV1ForImageClassification,Iy=$.MobileNetV1ForSemanticSegmentation,Ly=$.MobileNetV1ImageProcessor,Ry=$.MobileNetV1Model,zy=$.MobileNetV1PreTrainedModel,By=$.MobileNetV2FeatureExtractor,Vy=$.MobileNetV2ForImageClassification,Hy=$.MobileNetV2ForSemanticSegmentation,Uy=$.MobileNetV2ImageProcessor,Wy=$.MobileNetV2Model,Gy=$.MobileNetV2PreTrainedModel,Ky=$.MobileNetV3FeatureExtractor,qy=$.MobileNetV3ForImageClassification,Jy=$.MobileNetV3ForSemanticSegmentation,Yy=$.MobileNetV3ImageProcessor,Xy=$.MobileNetV3Model,Zy=$.MobileNetV3PreTrainedModel,Qy=$.MobileNetV4FeatureExtractor,$y=$.MobileNetV4ForImageClassification,eb=$.MobileNetV4ForSemanticSegmentation,tb=$.MobileNetV4ImageProcessor,nb=$.MobileNetV4Model,rb=$.MobileNetV4PreTrainedModel,ib=$.MobileViTFeatureExtractor,ab=$.MobileViTForImageClassification,ob=$.MobileViTImageProcessor,sb=$.MobileViTModel,cb=$.MobileViTPreTrainedModel,lb=$.MobileViTV2ForImageClassification,ub=$.MobileViTV2Model,db=$.MobileViTV2PreTrainedModel,fb=$.ModelOutput,pb=$.ModernBertForMaskedLM,mb=$.ModernBertForSequenceClassification,hb=$.ModernBertForTokenClassification,gb=$.ModernBertModel,_b=$.ModernBertPreTrainedModel,vb=$.Moondream1ForConditionalGeneration,yb=$.MoonshineFeatureExtractor,bb=$.MoonshineForConditionalGeneration,xb=$.MoonshineModel,Sb=$.MoonshinePreTrainedModel,Cb=$.MoonshineProcessor,wb=$.MptForCausalLM,Tb=$.MptModel,Eb=$.MptPreTrainedModel,Db=$.MultiModalityCausalLM,Ob=$.MultiModalityPreTrainedModel,kb=$.MusicgenForCausalLM,Ab=$.MusicgenForConditionalGeneration,jb=$.MusicgenModel,Mb=$.MusicgenPreTrainedModel,Nb=$.NeoBertForMaskedLM,Pb=$.NeoBertForQuestionAnswering,Fb=$.NeoBertForSequenceClassification,Ib=$.NeoBertForTokenClassification,Lb=$.NeoBertModel,Rb=$.NeoBertPreTrainedModel,zb=$.NllbTokenizer,Bb=$.NoBadWordsLogitsProcessor,Vb=$.NoRepeatNGramLogitsProcessor,Hb=$.NomicBertModel,Ub=$.NomicBertPreTrainedModel,Wb=$.NougatImageProcessor,Gb=$.NougatTokenizer,Kb=$.OPTForCausalLM,qb=$.OPTModel,Jb=$.OPTPreTrainedModel,Yb=$.ObjectDetectionPipeline,Xb=$.Olmo2ForCausalLM,Zb=$.Olmo2Model,Qb=$.Olmo2PreTrainedModel,$b=$.OlmoForCausalLM,ex=$.OlmoModel,tx=$.OlmoPreTrainedModel,nx=$.OpenELMForCausalLM,rx=$.OpenELMModel,ix=$.OpenELMPreTrainedModel,ax=$.OwlViTFeatureExtractor,ox=$.OwlViTForObjectDetection,sx=$.OwlViTImageProcessor,cx=$.OwlViTModel,lx=$.OwlViTPreTrainedModel,ux=$.OwlViTProcessor,dx=$.Owlv2ForObjectDetection,fx=$.Owlv2ImageProcessor,px=$.Owlv2Model,mx=$.Owlv2PreTrainedModel,hx=$.PaliGemmaForConditionalGeneration,gx=$.PaliGemmaPreTrainedModel,_x=$.PaliGemmaProcessor,vx=$.PatchTSMixerForPrediction,yx=$.PatchTSMixerModel,bx=$.PatchTSMixerPreTrainedModel,xx=$.PatchTSTForPrediction,Sx=$.PatchTSTModel,Cx=$.PatchTSTPreTrainedModel,wx=$.Phi3ForCausalLM,Tx=$.Phi3Model,Ex=$.Phi3PreTrainedModel,Dx=$.Phi3VForCausalLM,Ox=$.Phi3VImageProcessor,kx=$.Phi3VPreTrainedModel,Ax=$.Phi3VProcessor,jx=$.PhiForCausalLM,Mx=$.PhiModel,Nx=$.PhiPreTrainedModel,Px=$.Pipeline,Fx=$.PreTrainedModel,Ix=$.PreTrainedTokenizer,Lx=$.PretrainedConfig,Rx=$.PretrainedMixin,zx=$.Processor,Bx=$.PvtForImageClassification,Vx=$.PvtImageProcessor,Hx=$.PvtModel,Ux=$.PvtPreTrainedModel,Wx=$.PyAnnoteFeatureExtractor,Gx=$.PyAnnoteForAudioFrameClassification,Kx=$.PyAnnoteModel,qx=$.PyAnnotePreTrainedModel,Jx=$.PyAnnoteProcessor,Yx=$.QuestionAnsweringModelOutput,Xx=$.QuestionAnsweringPipeline,Zx=$.Qwen2ForCausalLM,Qx=$.Qwen2Model,$x=$.Qwen2PreTrainedModel,eS=$.Qwen2Tokenizer,tS=$.Qwen2VLForConditionalGeneration,nS=$.Qwen2VLImageProcessor,rS=$.Qwen2VLPreTrainedModel,iS=$.Qwen2VLProcessor,aS=$.Qwen3ForCausalLM,oS=$.Qwen3Model,sS=$.Qwen3PreTrainedModel,cS=$.RFDetrForObjectDetection,lS=$.RFDetrModel,uS=$.RFDetrObjectDetectionOutput,dS=$.RFDetrPreTrainedModel,fS=$.RTDetrForObjectDetection,pS=$.RTDetrImageProcessor,mS=$.RTDetrModel,hS=$.RTDetrObjectDetectionOutput,gS=$.RTDetrPreTrainedModel,_S=$.RTDetrV2ForObjectDetection,vS=$.RTDetrV2Model,yS=$.RTDetrV2ObjectDetectionOutput,bS=$.RTDetrV2PreTrainedModel,xS=$.RawAudio,SS=$.RawImage,CS=$.RawVideo,wS=$.RawVideoFrame,TS=$.RepetitionPenaltyLogitsProcessor,ES=$.ResNetForImageClassification,DS=$.ResNetModel,OS=$.ResNetPreTrainedModel,kS=$.RoFormerForMaskedLM,AS=$.RoFormerForQuestionAnswering,jS=$.RoFormerForSequenceClassification,MS=$.RoFormerForTokenClassification,NS=$.RoFormerModel,PS=$.RoFormerPreTrainedModel,FS=$.RoFormerTokenizer,IS=$.RobertaForMaskedLM,LS=$.RobertaForQuestionAnswering,RS=$.RobertaForSequenceClassification,zS=$.RobertaForTokenClassification,BS=$.RobertaModel,VS=$.RobertaPreTrainedModel,HS=$.RobertaTokenizer,US=$.SamImageProcessor,WS=$.SamImageSegmentationOutput,GS=$.SamModel,KS=$.SamPreTrainedModel,qS=$.SamProcessor,JS=$.SapiensForDepthEstimation,YS=$.SapiensForNormalEstimation,XS=$.SapiensForSemanticSegmentation,ZS=$.SapiensPreTrainedModel,QS=$.SeamlessM4TFeatureExtractor,$S=$.SegformerFeatureExtractor,eC=$.SegformerForImageClassification,tC=$.SegformerForSemanticSegmentation,nC=$.SegformerImageProcessor,rC=$.SegformerModel,iC=$.SegformerPreTrainedModel,aC=$.Seq2SeqLMOutput,oC=$.SequenceClassifierOutput,sC=$.SiglipImageProcessor,cC=$.SiglipModel,lC=$.SiglipPreTrainedModel,uC=$.SiglipTextModel,dC=$.SiglipTokenizer,fC=$.SiglipVisionModel,pC=$.SmolVLMForConditionalGeneration,mC=$.SmolVLMImageProcessor,hC=$.SmolVLMProcessor,gC=$.SnacDecoderModel,_C=$.SnacEncoderModel,vC=$.SnacFeatureExtractor,yC=$.SnacModel,bC=$.SnacPreTrainedModel,xC=$.SpeechT5FeatureExtractor,SC=$.SpeechT5ForSpeechToText,CC=$.SpeechT5ForTextToSpeech,wC=$.SpeechT5HifiGan,TC=$.SpeechT5Model,EC=$.SpeechT5PreTrainedModel,DC=$.SpeechT5Processor,OC=$.SpeechT5Tokenizer,kC=$.SqueezeBertForMaskedLM,AC=$.SqueezeBertForQuestionAnswering,jC=$.SqueezeBertForSequenceClassification,MC=$.SqueezeBertModel,NC=$.SqueezeBertPreTrainedModel,PC=$.SqueezeBertTokenizer,FC=$.StableLmForCausalLM,IC=$.StableLmModel,LC=$.StableLmPreTrainedModel,RC=$.Starcoder2ForCausalLM,zC=$.Starcoder2Model,BC=$.Starcoder2PreTrainedModel,VC=$.StoppingCriteria,HC=$.StoppingCriteriaList,UC=$.StyleTextToSpeech2Model,WC=$.StyleTextToSpeech2PreTrainedModel,GC=$.SummarizationPipeline,KC=$.SuppressTokensAtBeginLogitsProcessor,qC=$.Swin2SRForImageSuperResolution,JC=$.Swin2SRImageProcessor,YC=$.Swin2SRModel,XC=$.Swin2SRPreTrainedModel,ZC=$.SwinForImageClassification,QC=$.SwinForSemanticSegmentation,$C=$.SwinModel,ew=$.SwinPreTrainedModel,tw=$.T5ForConditionalGeneration,nw=$.T5Model,rw=$.T5PreTrainedModel,iw=$.T5Tokenizer,aw=$.TableTransformerForObjectDetection,ow=$.TableTransformerModel,sw=$.TableTransformerObjectDetectionOutput,cw=$.TableTransformerPreTrainedModel,lw=$.TemperatureLogitsWarper,uw=$.Tensor,dw=$.Text2TextGenerationPipeline,fw=$.TextClassificationPipeline,pw=$.TextGenerationPipeline,mw=$.TextStreamer,hw=$.TextToAudioPipeline,gw=$.TokenClassificationPipeline,_w=$.TokenClassifierOutput,vw=$.TokenizerModel,yw=$.TopKLogitsWarper,bw=$.TopPLogitsWarper,xw=$.TrOCRForCausalLM,Sw=$.TrOCRPreTrainedModel,Cw=$.TranslationPipeline,ww=$.UltravoxModel,Tw=$.UltravoxPreTrainedModel,Ew=$.UltravoxProcessor,Dw=$.UniSpeechForCTC,Ow=$.UniSpeechForSequenceClassification,kw=$.UniSpeechModel,Aw=$.UniSpeechPreTrainedModel,jw=$.UniSpeechSatForAudioFrameClassification,Mw=$.UniSpeechSatForCTC,Nw=$.UniSpeechSatForSequenceClassification,Pw=$.UniSpeechSatModel,Fw=$.UniSpeechSatPreTrainedModel,Iw=$.VLChatProcessor,Lw=$.VLMImageProcessor,Rw=$.ViTFeatureExtractor,zw=$.ViTForImageClassification,Bw=$.ViTImageProcessor,Vw=$.ViTMAEModel,Hw=$.ViTMAEPreTrainedModel,Uw=$.ViTMSNForImageClassification,Ww=$.ViTMSNModel,Gw=$.ViTMSNPreTrainedModel,Kw=$.ViTModel,qw=$.ViTPreTrainedModel,Jw=$.VisionEncoderDecoderModel,Yw=$.VitMatteForImageMatting,Xw=$.VitMatteImageProcessor,Zw=$.VitMattePreTrainedModel,Qw=$.VitPoseForPoseEstimation,$w=$.VitPoseImageProcessor,eT=$.VitPosePreTrainedModel,tT=$.VitsModel,nT=$.VitsModelOutput,rT=$.VitsPreTrainedModel,iT=$.VitsTokenizer,aT=$.Wav2Vec2BertForCTC,oT=$.Wav2Vec2BertForSequenceClassification,sT=$.Wav2Vec2BertModel,cT=$.Wav2Vec2BertPreTrainedModel,lT=$.Wav2Vec2CTCTokenizer,uT=$.Wav2Vec2FeatureExtractor,dT=$.Wav2Vec2ForAudioFrameClassification,fT=$.Wav2Vec2ForCTC,pT=$.Wav2Vec2ForSequenceClassification,mT=$.Wav2Vec2Model,hT=$.Wav2Vec2PreTrainedModel,gT=$.Wav2Vec2Processor,_T=$.Wav2Vec2ProcessorWithLM,vT=$.WavLMForAudioFrameClassification,yT=$.WavLMForCTC,bT=$.WavLMForSequenceClassification,xT=$.WavLMForXVector,ST=$.WavLMModel,CT=$.WavLMPreTrainedModel,wT=$.WeSpeakerFeatureExtractor,TT=$.WeSpeakerResNetModel,ET=$.WeSpeakerResNetPreTrainedModel,DT=$.WhisperFeatureExtractor,OT=$.WhisperForConditionalGeneration,kT=$.WhisperModel,AT=$.WhisperPreTrainedModel,jT=$.WhisperProcessor,MT=$.WhisperTextStreamer,NT=$.WhisperTimeStampLogitsProcessor,PT=$.WhisperTokenizer,FT=$.XLMForQuestionAnswering,IT=$.XLMForSequenceClassification,LT=$.XLMForTokenClassification,RT=$.XLMModel,zT=$.XLMPreTrainedModel,BT=$.XLMRobertaForMaskedLM,VT=$.XLMRobertaForQuestionAnswering,HT=$.XLMRobertaForSequenceClassification,UT=$.XLMRobertaForTokenClassification,WT=$.XLMRobertaModel,GT=$.XLMRobertaPreTrainedModel,KT=$.XLMRobertaTokenizer,qT=$.XLMTokenizer,JT=$.XLMWithLMHeadModel,YT=$.XVectorOutput,XT=$.YolosFeatureExtractor,ZT=$.YolosForObjectDetection,QT=$.YolosImageProcessor,$T=$.YolosModel,eE=$.YolosObjectDetectionOutput,tE=$.YolosPreTrainedModel,nE=$.ZeroShotAudioClassificationPipeline,rE=$.ZeroShotClassificationPipeline,iE=$.ZeroShotImageClassificationPipeline,aE=$.ZeroShotObjectDetectionPipeline,oE=$.bankers_round,sE=$.cat,cE=$.cos_sim,lE=$.dot,uE=$.dynamic_time_warping,dE=$.env,fE=$.full,pE=$.full_like,mE=$.getKeyValueShapes,hE=$.hamming,gE=$.hanning,_E=$.interpolate,vE=$.interpolate_4d,yE=$.interpolate_data,bE=$.is_chinese_char,xE=$.layer_norm,SE=$.load_image,CE=$.load_video,wE=$.log_softmax,TE=$.magnitude,EE=$.matmul,DE=$.max,OE=$.mean,kE=$.mean_pooling,AE=$.medianFilter,jE=$.mel_filter_bank,ME=$.min,NE=$.ones,PE=$.ones_like,FE=$.permute,IE=$.permute_data,LE=$.pipeline,RE=$.quantize_embeddings,zE=$.rand,BE=$.read_audio,VE=$.rfft,HE=$.round,UE=$.slice,WE=$.softmax,GE=$.spectrogram,KE=$.stack,qE=$.std_mean,JE=$.topk,YE=$.window_function,XE=$.zeros,ZE=$.zeros_like;export{SS as b,uw as c,dE as d,ep as e,Cf as f}; \ No newline at end of file diff --git a/assets/transformers.web-CZcwiFXx.js b/assets/transformers.web-CZcwiFXx.js deleted file mode 100644 index a2af2bb2df0c629bb89235d024346d99665a0619..0000000000000000000000000000000000000000 --- a/assets/transformers.web-CZcwiFXx.js +++ /dev/null @@ -1,3598 +0,0 @@ -var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({});import{__export as t,__require as n}from"./index-iQVr9nx1.js";const r=new Map,i=[],a=(e,t,n)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let a=r.get(e);if(a===void 0)r.set(e,{backend:t,priority:n});else if(a.priority>n)return;else if(a.priority===n&&a.backend!==t)throw Error(`cannot register backend "${e}" using priority ${n}`);if(n>=0){let t=i.indexOf(e);t!==-1&&i.splice(t,1);for(let t=0;t{let t=r.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},s=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),r=n.length===0?i:n,a,s=[],c=new Set;for(let e of r){let t=await o(e);typeof t==`string`?s.push({name:e,err:t}):(a||=t,a===t&&c.add(e))}if(!a)throw Error(`no available backend found. ERR: ${s.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of s)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let l=t.filter(e=>c.has(typeof e==`string`?e:e.name));return[a,new Proxy(e,{get:(e,t)=>t===`executionProviders`?l:Reflect.get(e,t)})]},c=`1.22.0`;let l=`warning`;const u={wasm:{},webgl:{},webgpu:{},versions:{common:c},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);l=e}},get logLevel(){return l}};Object.defineProperty(u,`logLevel`,{enumerable:!0});const d=u,f=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t===void 0||t.format===void 0?`RGB`:t.format,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat===void 0||t.tensorFormat===void 0?`RGB`:t.tensorFormat,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,m(o,s)}else throw Error(`Can not access image data`)}else if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(m(e.data,s))}});else throw Error(`Input data provided is not supported - aborted tensor creation`);if(o!==void 0)return m(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},g=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new E({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},_=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new E({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},v=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new E({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},y=(e,t,n)=>new E({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]}),b=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),x=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]);let S=!1;const C=()=>{if(!S){S=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=n!==void 0&&n.from;e&&(b.set(`int64`,BigInt64Array),x.set(BigInt64Array,`int64`)),t&&(b.set(`uint64`,BigUint64Array),x.set(BigUint64Array,`uint64`)),r?(b.set(`float16`,n),x.set(n,`float16`)):b.set(`float16`,Uint16Array)}},w=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new E(e.type,e.data,t);case`cpu-pinned`:return new E({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new E({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new E({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new E({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}};var E=class{constructor(e,t,n){C();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=b.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=b.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=x.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=w(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return h(e,t)}static fromTexture(e,t){return g(e,t)}static fromGpuBuffer(e,t){return _(e,t)}static fromMLTensor(e,t){return v(e,t)}static fromPinnedBuffer(e,t,n){return y(e,t,n)}toDataURL(e){return f(this,e)}toImageData(e){return p(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return T(this,e)}};const D=E,O=(e,t)=>{(u.trace===void 0?!u.wasm.trace:!u.trace)||console.timeStamp(`${e}::ORT::${t}`)},ee=(e,t)=>{var n;let r=(n=Error().stack)?.split(/\r\n|\r|\n/g)||[],i=!1;for(let n=0;n{(u.trace===void 0?!u.wasm.trace:!u.trace)||ee(`BEGIN`,e)},te=e=>{(u.trace===void 0?!u.wasm.trace:!u.trace)||ee(`END`,e)};var ne=class e{constructor(e){this.handler=e}async run(e,t,n){k();let r={},i={};if(typeof e!=`object`||!e||e instanceof D||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof D)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof D)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else i=t}}else if(t!==void 0)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(e[t]===void 0)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof D?s[e]=t:s[e]=new D(t.type,t.data,t.dims)}return te(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){k();let a,o={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)o=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)o=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,s=0,c=t.byteLength;if(typeof n==`object`&&n)o=n;else if(typeof n==`number`){if(s=n,!Number.isSafeInteger(s))throw RangeError(`'byteOffset' must be an integer.`);if(s<0||s>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-s,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||s+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-s}].`);if(typeof i==`object`&&i)o=i;else if(i!==void 0)throw TypeError(`'options' must be an object.`)}else if(r!==void 0)throw TypeError(`'byteLength' must be a number.`)}else if(n!==void 0)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,s,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[c,l]=await s(o),u=await c.createInferenceSessionHandler(a,l);return te(),new e(u)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}};const re=ne;var ie={};t(ie,{InferenceSession:()=>re,TRACE:()=>O,TRACE_FUNC_BEGIN:()=>k,TRACE_FUNC_END:()=>te,Tensor:()=>D,env:()=>d,registerBackend:()=>a});var A={};t(A,{InferenceSession:()=>qe,TRACE:()=>B,TRACE_FUNC_BEGIN:()=>He,TRACE_FUNC_END:()=>Ue,Tensor:()=>ze,default:()=>af,env:()=>R,registerBackend:()=>P}); -/*! -* ONNX Runtime Web v1.22.0-dev.20250409-89f8206ba4 -* Copyright (c) Microsoft Corporation. All rights reserved. -* Licensed under the MIT License. -*/ -var ae=Object.defineProperty,oe=Object.getOwnPropertyDescriptor,se=Object.getOwnPropertyNames,ce=Object.prototype.hasOwnProperty,le=(e=>typeof n<`u`?n:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof n<`u`?n:e)[t]}):e)(function(e){if(typeof n<`u`)return n.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),j=(e,t)=>()=>(e&&(t=e(e=0)),t),M=(e,t)=>{for(var n in t)ae(e,n,{get:t[n],enumerable:!0})},N=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of se(t))!ce.call(e,i)&&i!==n&&ae(e,i,{get:()=>t[i],enumerable:!(r=oe(t,i))||r.enumerable});return e},ue=e=>N(ae({},`__esModule`,{value:!0}),e),de,fe,P,F,I,L=j(()=>{"use strict";de=new Map,fe=[],P=(e,t,n)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let r=de.get(e);if(r===void 0)de.set(e,{backend:t,priority:n});else{if(r.priority>n)return;if(r.priority===n&&r.backend!==t)throw Error(`cannot register backend "${e}" using priority ${n}`)}if(n>=0){let t=fe.indexOf(e);t!==-1&&fe.splice(t,1);for(let t=0;t{let t=de.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},I=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),r=n.length===0?fe:n,i,a=[],o=new Set;for(let e of r){let t=await F(e);typeof t==`string`?a.push({name:e,err:t}):(i||=t,i===t&&o.add(e))}if(!i)throw Error(`no available backend found. ERR: ${a.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of a)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let s=t.filter(e=>o.has(typeof e==`string`?e:e.name));return[i,new Proxy(e,{get:(e,t)=>t===`executionProviders`?s:Reflect.get(e,t)})]}}),pe=j(()=>{"use strict";L()}),me,he=j(()=>{"use strict";me=`1.22.0-dev.20250409-89f8206ba4`}),ge,_e,ve=j(()=>{"use strict";he(),ge=`warning`,_e={wasm:{},webgl:{},webgpu:{},versions:{common:me},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);ge=e}},get logLevel(){return ge}},Object.defineProperty(_e,`logLevel`,{enumerable:!0})}),R,ye=j(()=>{"use strict";ve(),R=_e}),be,xe,Se=j(()=>{"use strict";be=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t!==void 0&&t.format!==void 0?t.format:`RGB`,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{"use strict";Re(),Ce=(e,t)=>{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat!==void 0&&t.tensorFormat!==void 0?t.tensorFormat:`RGB`,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,Ce(o,s)}else throw Error(`Can not access image data`)}else{if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(Ce(e.data,s))}});throw Error(`Input data provided is not supported - aborted tensor creation`)}if(o!==void 0)return Ce(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},Te=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new Le({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},Ee=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Le({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},De=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Le({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},Oe=(e,t,n)=>new Le({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]})}),Ae,je,Me,Ne,z=j(()=>{"use strict";Ae=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),je=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),Me=!1,Ne=()=>{if(!Me){Me=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=typeof n<`u`&&n.from;e&&(Ae.set(`int64`,BigInt64Array),je.set(BigInt64Array,`int64`)),t&&(Ae.set(`uint64`,BigUint64Array),je.set(BigUint64Array,`uint64`)),r?(Ae.set(`float16`,n),je.set(n,`float16`)):Ae.set(`float16`,Uint16Array)}}}),Pe,Fe,Ie=j(()=>{"use strict";Re(),Pe=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new Le(e.type,e.data,t);case`cpu-pinned`:return new Le({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new Le({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new Le({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new Le({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}}}),Le,Re=j(()=>{"use strict";Se(),ke(),z(),Ie(),Le=class{constructor(e,t,n){Ne();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=Ae.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=Ae.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=je.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=Pe(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return we(e,t)}static fromTexture(e,t){return Te(e,t)}static fromGpuBuffer(e,t){return Ee(e,t)}static fromMLTensor(e,t){return De(e,t)}static fromPinnedBuffer(e,t,n){return Oe(e,t,n)}toDataURL(e){return be(this,e)}toImageData(e){return xe(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return Fe(this,e)}}}),ze,Be=j(()=>{"use strict";Re(),ze=Le}),B,Ve,He,Ue,We=j(()=>{"use strict";ve(),B=(e,t)=>{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||console.timeStamp(`${e}::ORT::${t}`)},Ve=(e,t)=>{var n;let r=(n=Error().stack)?.split(/\r\n|\r|\n/g)||[],i=!1;for(let n=0;n{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||Ve(`BEGIN`,e)},Ue=e=>{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||Ve(`END`,e)}}),Ge,Ke=j(()=>{"use strict";L(),Be(),We(),Ge=class e{constructor(e){this.handler=e}async run(e,t,n){He();let r={},i={};if(typeof e!=`object`||!e||e instanceof ze||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof ze)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof ze)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else i=t}}else if(typeof t<`u`)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(typeof e[t]>`u`)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof ze?s[e]=t:s[e]=new ze(t.type,t.data,t.dims)}return Ue(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){He();let a,o={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,s=0,c=t.byteLength;if(typeof n==`object`&&n)o=n;else if(typeof n==`number`){if(s=n,!Number.isSafeInteger(s))throw RangeError(`'byteOffset' must be an integer.`);if(s<0||s>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-s,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||s+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-s}].`);if(typeof i==`object`&&i)o=i;else if(typeof i<`u`)throw TypeError(`'options' must be an object.`)}else if(typeof r<`u`)throw TypeError(`'byteLength' must be a number.`)}else if(typeof n<`u`)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,s,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[s,c]=await I(o),l=await s.createInferenceSessionHandler(a,c);return Ue(),new e(l)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}}}),qe,Je=j(()=>{"use strict";Ke(),qe=Ge}),Ye=j(()=>{"use strict";}),Xe=j(()=>{"use strict";}),Ze=j(()=>{"use strict";}),Qe=j(()=>{"use strict";}),$e={};M($e,{InferenceSession:()=>qe,TRACE:()=>B,TRACE_FUNC_BEGIN:()=>He,TRACE_FUNC_END:()=>Ue,Tensor:()=>ze,env:()=>R,registerBackend:()=>P});var et=j(()=>{"use strict";pe(),ye(),Je(),Be(),Ye(),Xe(),We(),Ze(),Qe()}),tt=j(()=>{"use strict";}),nt={};M(nt,{default:()=>at});var rt,it,at,ot=j(()=>{"use strict";var e;Od(),Lt(),Dt(),rt=`ort-wasm-proxy-worker`,it=(e=globalThis.self)?.name===rt,it&&(self.onmessage=e=>{let{type:t,in:n}=e.data;try{switch(t){case`init-wasm`:Ft(n.wasm).then(()=>{gd(n).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})})},e=>{postMessage({type:t,err:e})});break;case`init-ep`:{let{epName:e,env:r}=n;_d(r,e).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})});break}case`copy-from`:{let{buffer:e}=n,r=xd(e);postMessage({type:t,out:r});break}case`create`:{let{model:e,options:r}=n;Sd(e,r).then(e=>{postMessage({type:t,out:e})},e=>{postMessage({type:t,err:e})});break}case`release`:Cd(n),postMessage({type:t});break;case`run`:{let{sessionId:e,inputIndices:r,inputs:i,outputIndices:a,options:o}=n;Td(e,r,i,a,Array(a.length).fill(null),o).then(e=>{e.some(e=>e[3]!==`cpu`)?postMessage({type:t,err:`Proxy does not support non-cpu tensor location.`}):postMessage({type:t,out:e},Dd([...i,...e]))},e=>{postMessage({type:t,err:e})});break}case`end-profiling`:Ed(n),postMessage({type:t});break;default:}}catch(e){postMessage({type:t,err:e})}}),at=it?null:e=>new Worker(e??gt,{type:`module`,name:rt})}),st={};M(st,{default:()=>ut});var ct,lt,ut,dt,ft=j(()=>{"use strict";var t;lt=(ct=import.meta.url,async function(t={}){var n,r,i,a=t,o=new Promise((e,t)=>{r=e,i=t}),s=typeof window==`object`,c=typeof WorkerGlobalScope<`u`,l=c&&(n=self.name)?.startsWith(`em-pthread`);a.mountExternalData=(e,t)=>{e.startsWith(`./`)&&(e=e.substring(2)),(a.Eb||=new Map).set(e,t)},a.unmountExternalData=()=>{delete a.Eb};var u=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,pc:!0}).buffer.constructor;let d=e=>async(...t)=>{try{var n;if(a.Fb)throw Error(`Session already started`);let r=a.Fb={dc:t[0],errors:[]},i=await e(...t);if(a.Fb!==r)throw Error(`Session mismatch`);(n=a.Jb)?.flush();let o=r.errors;if(0e),0{if(e===`webgpu`){[a.Jb,a.Ub,a.Yb,a.Kb,a.Xb,a.jb,a.Zb,a.ac,a.Vb,a.Wb,a.$b]=t;let e=a.Jb;a.jsepRegisterBuffer=(t,n,r,i)=>e.registerBuffer(t,n,r,i),a.jsepGetBuffer=t=>e.getBuffer(t),a.jsepCreateDownloader=(t,n,r)=>e.createDownloader(t,n,r),a.jsepOnCreateSession=t=>{e.onCreateSession(t)},a.jsepOnReleaseSession=t=>{e.onReleaseSession(t)},a.jsepOnRunStart=t=>e.onRunStart(t),a.bc=(t,n)=>{e.upload(t,n)}}else if(e===`webnn`){let e=t[0];[a.nc,a.Nb,a.webnnEnsureTensor,a.Ob,a.webnnDownloadTensor]=t.slice(1),a.webnnReleaseTensorId=a.Nb,a.webnnUploadTensor=a.Ob,a.webnnOnRunStart=t=>e.onRunStart(t),a.webnnOnRunEnd=e.onRunEnd.bind(e),a.webnnRegisterMLContext=(t,n)=>{e.registerMLContext(t,n)},a.webnnOnReleaseSession=t=>{e.onReleaseSession(t)},a.webnnCreateMLTensorDownloader=(t,n)=>e.createMLTensorDownloader(t,n),a.webnnRegisterMLTensor=(t,n,r,i)=>e.registerMLTensor(t,n,r,i),a.webnnCreateMLContext=t=>e.createMLContext(t),a.webnnRegisterMLConstant=(t,n,r,i,o,s)=>e.registerMLConstant(t,n,r,i,o,a.Eb,s),a.webnnRegisterGraphInput=e.registerGraphInput.bind(e),a.webnnIsGraphInput=e.isGraphInput.bind(e),a.webnnCreateTemporaryTensor=e.createTemporaryTensor.bind(e),a.webnnIsInt64Supported=e.isInt64Supported.bind(e)}};let f=()=>{let e=(e,t,n)=>(...r)=>{let i=rn,a=t?.();r=e(...r);let o=t?.();return a!==o&&(e=o,n(a),t=n=null),rn==i?r:new Promise((e,t)=>{ln={resolve:e,reject:t}})};(()=>{for(let t of[`_OrtAppendExecutionProvider`,`_OrtCreateSession`,`_OrtRun`,`_OrtRunWithBinding`,`_OrtBindInput`])a[t]=e(a[t],()=>a[t],e=>a[t]=e)})(),d!==void 0&&(a._OrtRun=d(a._OrtRun),a._OrtRunWithBinding=d(a._OrtRunWithBinding)),f=void 0};a.asyncInit=()=>{f?.()};var p,m,h=Object.assign({},a),g=(e,t)=>{throw t},_=``;(s||c)&&(c?_=self.location.href:typeof document<`u`&&document.currentScript&&(_=document.currentScript.src),ct&&(_=ct),_=_.startsWith(`blob:`)?``:_.slice(0,_.replace(/[?#].*/,``).lastIndexOf(`/`)+1),c&&(m=e=>{var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),p=async e=>{if(oe(e))return new Promise((t,n)=>{var r=new XMLHttpRequest;r.open(`GET`,e,!0),r.responseType=`arraybuffer`,r.onload=()=>{r.status==200||r.status==0&&r.response?t(r.response):n(r.status)},r.onerror=n,r.send(null)});var t=await fetch(e,{credentials:`same-origin`});if(t.ok)return t.arrayBuffer();throw Error(t.status+` : `+t.url)});var v=console.log.bind(console),y=console.error.bind(console),b=v,x=y;Object.assign(a,h),h=null;var S,C,w,T,E,D,O,ee,k,te,ne,re,ie,A=a.wasmBinary,ae=!1,oe=e=>e.startsWith(`file://`);function se(){return S.buffer!=T.buffer&&I(),T}function ce(){return S.buffer!=T.buffer&&I(),E}function le(){return S.buffer!=T.buffer&&I(),D}function j(){return S.buffer!=T.buffer&&I(),O}function M(){return S.buffer!=T.buffer&&I(),ee}function N(){return S.buffer!=T.buffer&&I(),k}function ue(){return S.buffer!=T.buffer&&I(),te}function de(){return S.buffer!=T.buffer&&I(),ie}if(l){let e=function(t){try{var n=t.data,r=n.Bb;if(r===`load`){let t=[];self.onmessage=e=>t.push(e),self.startWorker=()=>{postMessage({Bb:`loaded`});for(let n of t)e(n);self.onmessage=e};for(let e of n.Rb)a[e]&&!a[e].proxy||(a[e]=(...t)=>{postMessage({Bb:`callHandler`,Qb:e,args:t})},e==`print`&&(b=a[e]),e==`printErr`&&(x=a[e]));S=n.kc,I(),P(n.lc)}else if(r===`run`){Le(n.Ab),xr(n.Ab,0,0,1,0,0),Pe(),Ut(n.Ab),F||(_r(),F=!0);try{Re(n.fc,n.Hb)}catch(e){if(e!=`unwind`)throw e}}else n.target!==`setimmediate`&&(r===`checkMailbox`?F&&Wt():r&&(x(`worker: received unknown command ${r}`),x(n)))}catch(e){throw Sr(),e}};var fe=e,P,F=!1;x=function(...e){e=e.join(` `),console.error(e)},self.alert=function(...e){postMessage({Bb:`alert`,text:e.join(` `),ic:vr()})},self.onunhandledrejection=e=>{throw e.reason||e},self.onmessage=e}function I(){var e=S.buffer;a.HEAP8=T=new Int8Array(e),a.HEAP16=D=new Int16Array(e),a.HEAPU8=E=new Uint8Array(e),a.HEAPU16=O=new Uint16Array(e),a.HEAP32=ee=new Int32Array(e),a.HEAPU32=k=new Uint32Array(e),a.HEAPF32=te=new Float32Array(e),a.HEAPF64=ie=new Float64Array(e),a.HEAP64=ne=new BigInt64Array(e),a.HEAPU64=re=new BigUint64Array(e)}function L(){l?startWorker(a):X.Ca()}l||(S=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),I());var pe,me=0,he=null;function ge(){if(--me==0&&he){var e=he;he=null,e()}}function _e(e){throw x(e=`Aborted(`+e+`)`),ae=!0,e=new WebAssembly.RuntimeError(e+`. Build with -sASSERTIONS for more info.`),i(e),e}function ve(){return{a:{L:be,Aa:ye,b:Be,$:Ve,A:Ge,pa:Ke,X:Ye,Z:Xe,qa:Ze,na:Qe,ga:$e,ma:et,J:tt,Y:nt,V:rt,oa:it,W:at,va:lt,E:gt,Q:vt,O:Et,D:Ot,u:kt,r:At,P:jt,z:zt,R:Bt,ja:Vt,T:Gt,aa:qt,M:Jt,F:Yt,ia:Ut,sa:Xt,t:$t,Ba:en,w:fn,o:H,l:gn,c:xt,n:_n,j:W,v:xn,p:Sn,f:Cn,s:wn,m:Tn,e:En,k:Dn,i:On,g:kn,d:An,da:jn,ea:Fn,fa:In,ba:Ln,ca:Rn,N:Vn,xa:Hn,ua:Gn,h:Jn,C:Yn,G:Xn,ta:Un,x:Zn,ra:Qn,U:$n,q:Bn,y:er,K:tr,S:G,za:ar,ya:K,ka:sr,la:cr,_:ke,B:lr,I:ur,ha:Y,H:fr,a:S,wa:De}}}var R={829644:(e,t,n,r,i)=>{if(a===void 0||!a.Eb)return 1;if((e=We(Number(e>>>0))).startsWith(`./`)&&(e=e.substring(2)),!(e=a.Eb.get(e)))return 2;if(t=Number(t>>>0),n=Number(n>>>0),r=Number(r>>>0),t+n>e.byteLength)return 3;try{let o=e.subarray(t,t+n);switch(i){case 0:ce().set(o,r>>>0);break;case 1:a.mc?a.mc(r,o):a.bc(r,o);break;default:return 4}return 0}catch{return 4}},830468:(e,t,n)=>{a.Ob(e,ce().subarray(t>>>0,t+n>>>0))},830532:()=>a.nc(),830574:e=>{a.Nb(e)},830611:()=>{a.Vb()},830642:()=>{a.Wb()},830671:()=>{a.$b()},830696:e=>a.Ub(e),830729:e=>a.Yb(e),830761:(e,t,n)=>{a.Kb(Number(e),Number(t),Number(n),!0)},830824:(e,t,n)=>{a.Kb(Number(e),Number(t),Number(n))},830881:()=>typeof wasmOffsetConverter<`u`,830938:e=>{a.jb(`Abs`,e,void 0)},830989:e=>{a.jb(`Neg`,e,void 0)},831040:e=>{a.jb(`Floor`,e,void 0)},831093:e=>{a.jb(`Ceil`,e,void 0)},831145:e=>{a.jb(`Reciprocal`,e,void 0)},831203:e=>{a.jb(`Sqrt`,e,void 0)},831255:e=>{a.jb(`Exp`,e,void 0)},831306:e=>{a.jb(`Erf`,e,void 0)},831357:e=>{a.jb(`Sigmoid`,e,void 0)},831412:(e,t,n)=>{a.jb(`HardSigmoid`,e,{alpha:t,beta:n})},831491:e=>{a.jb(`Log`,e,void 0)},831542:e=>{a.jb(`Sin`,e,void 0)},831593:e=>{a.jb(`Cos`,e,void 0)},831644:e=>{a.jb(`Tan`,e,void 0)},831695:e=>{a.jb(`Asin`,e,void 0)},831747:e=>{a.jb(`Acos`,e,void 0)},831799:e=>{a.jb(`Atan`,e,void 0)},831851:e=>{a.jb(`Sinh`,e,void 0)},831903:e=>{a.jb(`Cosh`,e,void 0)},831955:e=>{a.jb(`Asinh`,e,void 0)},832008:e=>{a.jb(`Acosh`,e,void 0)},832061:e=>{a.jb(`Atanh`,e,void 0)},832114:e=>{a.jb(`Tanh`,e,void 0)},832166:e=>{a.jb(`Not`,e,void 0)},832217:(e,t,n)=>{a.jb(`Clip`,e,{min:t,max:n})},832286:e=>{a.jb(`Clip`,e,void 0)},832338:(e,t)=>{a.jb(`Elu`,e,{alpha:t})},832396:e=>{a.jb(`Gelu`,e,void 0)},832448:e=>{a.jb(`Relu`,e,void 0)},832500:(e,t)=>{a.jb(`LeakyRelu`,e,{alpha:t})},832564:(e,t)=>{a.jb(`ThresholdedRelu`,e,{alpha:t})},832634:(e,t)=>{a.jb(`Cast`,e,{to:t})},832692:e=>{a.jb(`Add`,e,void 0)},832743:e=>{a.jb(`Sub`,e,void 0)},832794:e=>{a.jb(`Mul`,e,void 0)},832845:e=>{a.jb(`Div`,e,void 0)},832896:e=>{a.jb(`Pow`,e,void 0)},832947:e=>{a.jb(`Equal`,e,void 0)},833e3:e=>{a.jb(`Greater`,e,void 0)},833055:e=>{a.jb(`GreaterOrEqual`,e,void 0)},833117:e=>{a.jb(`Less`,e,void 0)},833169:e=>{a.jb(`LessOrEqual`,e,void 0)},833228:(e,t,n,r,i)=>{a.jb(`ReduceMean`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833403:(e,t,n,r,i)=>{a.jb(`ReduceMax`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833577:(e,t,n,r,i)=>{a.jb(`ReduceMin`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833751:(e,t,n,r,i)=>{a.jb(`ReduceProd`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833926:(e,t,n,r,i)=>{a.jb(`ReduceSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834100:(e,t,n,r,i)=>{a.jb(`ReduceL1`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834273:(e,t,n,r,i)=>{a.jb(`ReduceL2`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834446:(e,t,n,r,i)=>{a.jb(`ReduceLogSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834623:(e,t,n,r,i)=>{a.jb(`ReduceSumSquare`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834803:(e,t,n,r,i)=>{a.jb(`ReduceLogSumExp`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834983:e=>{a.jb(`Where`,e,void 0)},835036:(e,t,n)=>{a.jb(`Transpose`,e,{perm:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[]})},835160:(e,t,n,r)=>{a.jb(`DepthToSpace`,e,{blocksize:t,mode:We(n),format:r?`NHWC`:`NCHW`})},835293:(e,t,n,r)=>{a.jb(`DepthToSpace`,e,{blocksize:t,mode:We(n),format:r?`NHWC`:`NCHW`})},835426:(e,t,n,r,i,o,s,c,l,u,d,f,p,m,h)=>{a.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:r,kernelShape:[i],pads:[o,s],strides:[c],wIsConst:()=>!!se()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:We(h)})},835859:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:r,kernelShape:Array.from(M().subarray(Number(i)>>>0,2+(Number(i)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!se()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:We(m)})},836520:(e,t,n,r,i,o,s,c,l,u,d,f,p,m,h)=>{a.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:r,kernelShape:[i],pads:[o,s],strides:[c],wIsConst:()=>!!se()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:We(h)})},836953:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:r,kernelShape:Array.from(M().subarray(Number(i)>>>0,2+(Number(i)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!se()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:We(m)})},837614:(e,t)=>{a.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},837705:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838184:(e,t)=>{a.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},838275:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838754:(e,t)=>{a.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},838841:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839316:(e,t)=>{a.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},839403:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839878:(e,t,n,r,i)=>{a.jb(`Gemm`,e,{alpha:t,beta:n,transA:r,transB:i})},839982:e=>{a.jb(`MatMul`,e,void 0)},840036:(e,t,n,r)=>{a.jb(`ArgMax`,e,{keepDims:!!t,selectLastIndex:!!n,axis:r})},840144:(e,t,n,r)=>{a.jb(`ArgMin`,e,{keepDims:!!t,selectLastIndex:!!n,axis:r})},840252:(e,t)=>{a.jb(`Softmax`,e,{axis:t})},840315:(e,t)=>{a.jb(`Concat`,e,{axis:t})},840375:(e,t,n,r,i)=>{a.jb(`Split`,e,{axis:t,numOutputs:n,splitSizes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},840531:e=>{a.jb(`Expand`,e,void 0)},840585:(e,t)=>{a.jb(`Gather`,e,{axis:Number(t)})},840656:(e,t)=>{a.jb(`GatherElements`,e,{axis:Number(t)})},840735:(e,t)=>{a.jb(`GatherND`,e,{batch_dims:Number(t)})},840814:(e,t,n,r,i,o,s,c,l,u,d)=>{a.jb(`Resize`,e,{antialias:t,axes:n?Array.from(M().subarray(Number(n)>>>0,Number(r)>>>0)):[],coordinateTransformMode:We(i),cubicCoeffA:o,excludeOutside:s,extrapolationValue:c,keepAspectRatioPolicy:We(l),mode:We(u),nearestMode:We(d)})},841176:(e,t,n,r,i,o,s)=>{a.jb(`Slice`,e,{starts:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[],ends:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[],axes:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[]})},841440:e=>{a.jb(`Tile`,e,void 0)},841492:(e,t,n)=>{a.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841606:(e,t,n)=>{a.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841720:e=>{a.jb(`Range`,e,void 0)},841773:(e,t)=>{a.jb(`Einsum`,e,{equation:We(t)})},841854:(e,t,n,r,i)=>{a.jb(`Pad`,e,{mode:t,value:n,pads:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},841997:(e,t,n,r,i,o)=>{a.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!i,trainingMode:!!r,format:o?`NHWC`:`NCHW`})},842166:(e,t,n,r,i,o)=>{a.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!i,trainingMode:!!r,format:o?`NHWC`:`NCHW`})},842335:(e,t,n)=>{a.jb(`CumSum`,e,{exclusive:Number(t),reverse:Number(n)})},842432:(e,t,n)=>{a.jb(`DequantizeLinear`,e,{axis:t,blockSize:n})},842522:(e,t,n,r,i)=>{a.jb(`GridSample`,e,{align_corners:t,mode:We(n),padding_mode:We(r),format:i?`NHWC`:`NCHW`})},842692:(e,t,n,r,i)=>{a.jb(`GridSample`,e,{align_corners:t,mode:We(n),padding_mode:We(r),format:i?`NHWC`:`NCHW`})},842862:(e,t)=>{a.jb(`ScatterND`,e,{reduction:We(t)})},842947:(e,t,n,r,i,o,s,c,l)=>{a.jb(`Attention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:r,scale:i,doRotary:o,qkvHiddenSizes:s?Array.from(M().subarray(Number(c)>>>0,Number(c)+s>>>0)):[],pastPresentShareBuffer:!!l})},843219:e=>{a.jb(`BiasAdd`,e,void 0)},843274:e=>{a.jb(`BiasSplitGelu`,e,void 0)},843335:e=>{a.jb(`FastGelu`,e,void 0)},843391:(e,t,n,r,i,o,s,c,l,u,d,f,p,m,h,g)=>{a.jb(`Conv`,e,{format:f?`NHWC`:`NCHW`,auto_pad:t,dilations:n?Array.from(M().subarray(Number(n)>>>0,Number(r)>>>0)):[],group:i,kernel_shape:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],pads:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],strides:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],w_is_const:()=>!!se()[Number(p)>>>0],activation:We(m),activation_params:h?Array.from(ue().subarray(Number(h)>>>0,Number(g)>>>0)):[]})},843975:e=>{a.jb(`Gelu`,e,void 0)},844027:(e,t,n,r,i,o,s,c,l)=>{a.jb(`GroupQueryAttention`,e,{numHeads:t,kvNumHeads:n,scale:r,softcap:i,doRotary:o,rotaryInterleaved:s,smoothSoftmax:c,localWindowSize:l})},844244:(e,t,n,r)=>{a.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!r})},844355:(e,t,n,r)=>{a.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!r})},844466:(e,t,n,r,i,o)=>{a.jb(`MatMulNBits`,e,{k:t,n,accuracyLevel:r,bits:i,blockSize:o})},844593:(e,t,n,r,i,o)=>{a.jb(`MultiHeadAttention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:r,scale:i,doRotary:o})},844752:(e,t)=>{a.jb(`QuickGelu`,e,{alpha:t})},844816:(e,t,n,r,i)=>{a.jb(`RotaryEmbedding`,e,{interleaved:!!t,numHeads:n,rotaryEmbeddingDim:r,scale:i})},844955:(e,t,n)=>{a.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845057:(e,t,n)=>{a.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845159:(e,t,n,r)=>{a.jb(`GatherBlockQuantized`,e,{gatherAxis:t,quantizeAxis:n,blockSize:r})},845280:e=>{a.Zb(e)},845314:(e,t)=>a.ac(Number(e),Number(t),a.Fb.dc,a.Fb.errors)};function ye(e,t,n){return dn(async()=>{await a.Xb(Number(e),Number(t),Number(n))})}function be(){return typeof wasmOffsetConverter<`u`}class xe{constructor(t){e.defineProperty(this,`name`,`ExitStatus`),this.message=`Program terminated with exit(${t})`,this.status=t}}var Se=e=>{e.terminate(),e.onmessage=()=>{}},Ce=[],we=e=>{Ae.length==0&&(Ie(),Fe(Ae[0]));var t=Ae.pop();if(!t)return 6;je.push(t),Ne[e.Ab]=t,t.Ab=e.Ab;var n={Bb:`run`,fc:e.ec,Hb:e.Hb,Ab:e.Ab};return t.postMessage(n,e.Mb),0},Te=0,Ee=(e,t,...n)=>{for(var r=2*n.length,i=jr(),a=Ar(8*r),o=a>>>3,s=0;s>>0]=c)}return e=Cr(e,0,r,a,t),kr(i),e};function De(e){if(l)return Ee(0,1,e);if(w=e,!(0{if(w=e,l)throw Oe(e),`unwind`;De(e)},Ae=[],je=[],Me=[],Ne={},z=e=>{var t=e.Ab;delete Ne[t],Ae.push(e),je.splice(je.indexOf(e),1),e.Ab=0,wr(t)};function Pe(){Me.forEach(e=>e())}var Fe=e=>new Promise(t=>{e.onmessage=n=>{var r=(n=n.data).Bb;if(n.Gb&&n.Gb!=vr()){var i=Ne[n.Gb];i?i.postMessage(n,n.Mb):x(`Internal error! Worker sent a message "${r}" to target pthread ${n.Gb}, but that thread no longer exists!`)}else r===`checkMailbox`?Wt():r===`spawnThread`?we(n):r===`cleanupThread`?z(Ne[n.hc]):r===`loaded`?(e.loaded=!0,t(e)):r===`alert`?alert(`Thread ${n.ic}: ${n.text}`):n.target===`setimmediate`?e.postMessage(n):r===`callHandler`?a[n.Qb](...n.args):r&&x(`worker sent an unknown command ${r}`)},e.onerror=e=>{throw x(`worker sent an error! ${e.filename}:${e.lineno}: ${e.message}`),e};var n,r=[];for(n of[])a.propertyIsEnumerable(n)&&r.push(n);e.postMessage({Bb:`load`,Rb:r,kc:S,lc:C})});function Ie(){var e=new Worker((()=>{let e=URL;return import.meta.url>`file:`&&import.meta.url<`file;`?new e(`ort.bundle.min.mjs`,import.meta.url):new URL(import.meta.url)})(),{type:`module`,workerData:`em-pthread`,name:`em-pthread`});Ae.push(e)}var Le=e=>{I();var t=N()[e+52>>>2>>>0];e=N()[e+56>>>2>>>0],Or(t,t-e),kr(t)},Re=(e,t)=>{Te=0,e=Mr(e,t),0>>=0);throw t>>>=0,n>>>=0,N()[r.Ib+16>>>2>>>0]=0,N()[r.Ib+4>>>2>>>0]=t,N()[r.Ib+8>>>2>>>0]=n,e}function B(e,t,n,r){return l?Ee(2,1,e,t,n,r):Ve(e,t,n,r)}function Ve(e,t,n,r){if(e>>>=0,n>>>=0,r>>>=0,u===void 0)return 6;var i=[];return l&&i.length===0?B(e,t>>>=0,n,r):(e={ec:n,Ab:e,Hb:r,Mb:i},l?(e.Bb=`spawnThread`,postMessage(e,i),0):we(e))}var He=typeof TextDecoder<`u`?new TextDecoder:void 0,Ue=(e,t=0,n=NaN)=>{var r=(t>>>=0)+n;for(n=t;e[n]&&!(n>=r);)++n;if(16(i=(240&i)==224?(15&i)<<12|a<<6|o:(7&i)<<18|a<<12|o<<6|63&e[t++])?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else r+=String.fromCharCode(i)}return r},We=(e,t)=>(e>>>=0)?Ue(ce(),e,t):``;function Ge(e,t,n){return l?Ee(3,1,e,t,n):0}function Ke(e,t){if(l)return Ee(4,1,e,t)}var qe=e=>{for(var t=0,n=0;n=r?t++:2047>=r?t+=2:55296<=r&&57343>=r?(t+=4,++n):t+=3}return t},Je=(e,t,n)=>{var r=ce();if(t>>>=0,0=o&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++a)),127>=o){if(t>=n)break;r[t++>>>0]=o}else{if(2047>=o){if(t+1>=n)break;r[t++>>>0]=192|o>>6}else{if(65535>=o){if(t+2>=n)break;r[t++>>>0]=224|o>>12}else{if(t+3>=n)break;r[t++>>>0]=240|o>>18,r[t++>>>0]=128|o>>12&63}r[t++>>>0]=128|o>>6&63}r[t++>>>0]=128|63&o}}r[t>>>0]=0,e=t-i}else e=0;return e};function Ye(e,t){if(l)return Ee(5,1,e,t)}function Xe(e,t,n){if(l)return Ee(6,1,e,t,n)}function Ze(e,t,n){return l?Ee(7,1,e,t,n):0}function Qe(e,t){if(l)return Ee(8,1,e,t)}function $e(e,t,n){if(l)return Ee(9,1,e,t,n)}function et(e,t,n,r){if(l)return Ee(10,1,e,t,n,r)}function tt(e,t,n,r){if(l)return Ee(11,1,e,t,n,r)}function nt(e,t,n,r){if(l)return Ee(12,1,e,t,n,r)}function rt(e){if(l)return Ee(13,1,e)}function it(e,t){if(l)return Ee(14,1,e,t)}function at(e,t,n){if(l)return Ee(15,1,e,t,n)}var ot,st,lt=()=>_e(``),ut=e=>{for(var t=``;ce()[e>>>0];)t+=ot[ce()[e++>>>0]];return t},dt={},ft={},pt={};function mt(e,t,n={}){return function(e,t,n={}){var r=t.name;if(!e)throw new st(`type "${r}" must have a positive integer typeid pointer`);if(ft.hasOwnProperty(e)){if(n.Sb)return;throw new st(`Cannot register type '${r}' twice`)}ft[e]=t,delete pt[e],dt.hasOwnProperty(e)&&(t=dt[e],delete dt[e],t.forEach(e=>e()))}(e,t,n)}var ht=(e,t,n)=>{switch(t){case 1:return n?e=>se()[e>>>0]:e=>ce()[e>>>0];case 2:return n?e=>le()[e>>>1>>>0]:e=>j()[e>>>1>>>0];case 4:return n?e=>M()[e>>>2>>>0]:e=>N()[e>>>2>>>0];case 8:return n?e=>ne[e>>>3]:e=>re[e>>>3];default:throw TypeError(`invalid integer width (${t}): ${e}`)}};function gt(e,t,n){n>>>=0,mt(e>>>=0,{name:t=ut(t>>>0),fromWireType:e=>e,toWireType:function(e,t){if(typeof t!=`bigint`&&typeof t!=`number`)throw t=t===null?`null`:(e=typeof t)==`object`||e===`array`||e===`function`?t.toString():``+t,TypeError(`Cannot convert "${t}" to ${this.name}`);return typeof t==`number`&&(t=BigInt(t)),t},Cb:_t,readValueFromPointer:ht(t,n,t.indexOf(`u`)==-1),Db:null})}var _t=8;function vt(e,t,n,r){mt(e>>>=0,{name:t=ut(t>>>0),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?n:r},Cb:_t,readValueFromPointer:function(e){return this.fromWireType(ce()[e>>>0])},Db:null})}var yt=[],bt=[];function xt(e){9<(e>>>=0)&&--bt[e+1]==0&&(bt[e]=void 0,yt.push(e))}var St=e=>{if(!e)throw new st(`Cannot use deleted val. handle = `+e);return bt[e]},Ct=e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let t=yt.pop()||bt.length;return bt[t]=e,bt[t+1]=1,t}};function wt(e){return this.fromWireType(N()[e>>>2>>>0])}var Tt={name:`emscripten::val`,fromWireType:e=>{var t=St(e);return xt(e),t},toWireType:(e,t)=>Ct(t),Cb:_t,readValueFromPointer:wt,Db:null};function Et(e){return mt(e>>>0,Tt)}var Dt=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(ue()[e>>>2>>>0])};case 8:return function(e){return this.fromWireType(de()[e>>>3>>>0])};default:throw TypeError(`invalid float width (${t}): ${e}`)}};function Ot(e,t,n){n>>>=0,mt(e>>>=0,{name:t=ut(t>>>0),fromWireType:e=>e,toWireType:(e,t)=>t,Cb:_t,readValueFromPointer:Dt(t,n),Db:null})}function kt(e,t,n,r,i){if(e>>>=0,n>>>=0,t=ut(t>>>0),i===-1&&(i=4294967295),i=e=>e,r===0){var a=32-8*n;i=e=>e<>>a}var o=t.includes(`unsigned`)?function(e,t){return t>>>0}:function(e,t){return t};mt(e,{name:t,fromWireType:i,toWireType:o,Cb:_t,readValueFromPointer:ht(t,n,r!==0),Db:null})}function At(e,t,n){function r(e){var t=N()[e>>>2>>>0];return e=N()[e+4>>>2>>>0],new i(se().buffer,e,t)}var i=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][t];mt(e>>>=0,{name:n=ut(n>>>0),fromWireType:r,Cb:_t,readValueFromPointer:r},{Sb:!0})}function jt(e,t){mt(e>>>=0,{name:t=ut(t>>>0),fromWireType:function(e){for(var t,n=N()[e>>>2>>>0],r=e+4,i=r,a=0;a<=n;++a){var o=r+a;a!=n&&ce()[o>>>0]!=0||(i=We(i,o-i),t===void 0?t=i:(t+=`\0`,t+=i),i=o+1)}return yr(e),t},toWireType:function(e,t){t instanceof ArrayBuffer&&(t=new Uint8Array(t));var n=typeof t==`string`;if(!(n||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array))throw new st(`Cannot pass non-string to std::string`);var r=n?qe(t):t.length,i=br(4+r+1),a=i+4;if(N()[i>>>2>>>0]=r,n)Je(t,a,r+1);else if(n)for(n=0;n>>0]=o}else for(n=0;n>>0]=t[n];return e!==null&&e.push(yr,i),i},Cb:_t,readValueFromPointer:wt,Db(e){yr(e)}})}var Mt=typeof TextDecoder<`u`?new TextDecoder(`utf-16le`):void 0,Nt=(e,t)=>{for(var n=e>>1,r=n+t/2;!(n>=r)&&j()[n>>>0];)++n;if(32<(n<<=1)-e&&Mt)return Mt.decode(ce().slice(e,n));for(n=``,r=0;!(r>=t/2);++r){var i=le()[e+2*r>>>1>>>0];if(i==0)break;n+=String.fromCharCode(i)}return n},Pt=(e,t,n)=>{if(n??=2147483647,2>n)return 0;var r=t;n=(n-=2)<2*e.length?n/2:e.length;for(var i=0;i>>1>>>0]=a,t+=2}return le()[t>>>1>>>0]=0,t-r},Ft=e=>2*e.length,It=(e,t)=>{for(var n=0,r=``;!(n>=t/4);){var i=M()[e+4*n>>>2>>>0];if(i==0)break;++n,65536<=i?(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i)):r+=String.fromCharCode(i)}return r},Lt=(e,t,n)=>{if(t>>>=0,n??=2147483647,4>n)return 0;var r=t;n=r+n-4;for(var i=0;i=a&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),M()[t>>>2>>>0]=a,(t+=4)+4>n)break}return M()[t>>>2>>>0]=0,t-r},Rt=e=>{for(var t=0,n=0;n=r&&++n,t+=4}return t};function zt(e,t,n){if(e>>>=0,t>>>=0,n=ut(n>>>=0),t===2)var r=Nt,i=Pt,a=Ft,o=e=>j()[e>>>1>>>0];else t===4&&(r=It,i=Lt,a=Rt,o=e=>N()[e>>>2>>>0]);mt(e,{name:n,fromWireType:e=>{for(var n,i=N()[e>>>2>>>0],a=e+4,s=0;s<=i;++s){var c=e+4+s*t;s!=i&&o(c)!=0||(a=r(a,c-a),n===void 0?n=a:(n+=`\0`,n+=a),a=c+t)}return yr(e),n},toWireType:(e,r)=>{if(typeof r!=`string`)throw new st(`Cannot pass non-string to C++ string type ${n}`);var o=a(r),s=br(4+o+t);return N()[s>>>2>>>0]=o/t,i(r,s+4,o+t),e!==null&&e.push(yr,s),s},Cb:_t,readValueFromPointer:wt,Db(e){yr(e)}})}function Bt(e,t){mt(e>>>=0,{Tb:!0,name:t=ut(t>>>0),Cb:0,fromWireType:()=>{},toWireType:()=>{}})}function Vt(e){xr(e>>>0,!c,1,!s,131072,!1),Pe()}var Ht=e=>{if(!ae)try{if(e(),!(0>>=0,typeof Atomics.jc==`function`&&(Atomics.jc(M(),e>>>2,e).value.then(Wt),e+=128,Atomics.store(M(),e>>>2,1))}var Wt=()=>{var e=vr();e&&(Ut(e),Ht(Dr))};function Gt(e,t){(e>>>=0)==t>>>0?setTimeout(Wt):l?postMessage({Gb:e,Bb:`checkMailbox`}):(e=Ne[e])&&e.postMessage({Bb:`checkMailbox`})}var Kt=[];function qt(e,t,n,r,i){for(t>>>=0,r/=2,Kt.length=r,n=i>>>0>>>3,i=0;i>>0];return(t?R[t]:hr[e])(...Kt)}var Jt=()=>{Te=0};function Yt(e){e>>>=0,l?postMessage({Bb:`cleanupThread`,hc:e}):z(Ne[e])}function Xt(e){}var Zt=(e,t)=>{var n=ft[e];if(n===void 0)throw e=gr(e),n=ut(e),yr(e),new st(`${t} has unknown type ${n}`);return n},Qt=(e,t,n)=>{var r=[];return e=e.toWireType(r,n),r.length&&(N()[t>>>2>>>0]=Ct(r)),e};function $t(e,t,n){return t>>>=0,n>>>=0,e=St(e>>>0),t=Zt(t,`emval::as`),Qt(t,n,e)}function en(e,t){return t>>>=0,e=St(e>>>0),(t=Zt(t,`emval::as`)).toWireType(null,e)}var tn=e=>{try{e()}catch(e){_e(e)}},nn=0,rn=null,an=0,V=[],on={},sn={},cn=0,ln=null,un=[];function dn(e){return function(e){if(!ae){if(nn===0){var t=!1,n=!1;e((e=0)=>{if(!ae&&(an=e,t=!0,n)){nn=2,tn(()=>Fr(rn)),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.resume(),e=!1;try{var r=function(){var e=M()[rn+8>>>2>>>0];return e=X[sn[e]],--Te,e()}()}catch(t){r=t,e=!0}var i=!1;if(!rn){var a=ln;a&&(ln=null,(e?a.reject:a.resolve)(r),i=!0)}if(e&&!i)throw r}}),n=!0,t||(nn=1,rn=function(){var e=br(65548),t=e+12;N()[e>>>2>>>0]=t,N()[e+4>>>2>>>0]=t+65536,t=V[0];var n=on[t];return n===void 0&&(n=cn++,on[t]=n,sn[n]=t),t=n,M()[e+8>>>2>>>0]=t,e}(),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.pause(),tn(()=>Nr(rn)))}else nn===2?(nn=0,tn(Ir),yr(rn),rn=null,un.forEach(Ht)):_e(`invalid state: ${nn}`);return an}}(t=>{e().then(t)})}function fn(e){return e>>>=0,dn(async()=>{var t=await St(e);return Ct(t)})}var pn=[];function H(e,t,n,r){return n>>>=0,r>>>=0,(e=pn[e>>>0])(null,t=St(t>>>0),n,r)}var mn={},hn=e=>{var t=mn[e];return t===void 0?ut(e):t};function gn(e,t,n,r,i){return n>>>=0,r>>>=0,i>>>=0,(e=pn[e>>>0])(t=St(t>>>0),t[n=hn(n)],r,i)}var U=()=>typeof globalThis==`object`?globalThis:Function(`return this`)();function _n(e){return(e>>>=0)==0?Ct(U()):(e=hn(e),Ct(U()[e]))}var vn=e=>{var t=pn.length;return pn.push(e),t},yn=(e,t)=>{for(var n=Array(e),r=0;r>>2>>>0],`parameter `+r);return n},bn=(e,t)=>Object.defineProperty(t,`name`,{value:e});function W(e,t,n){var r=(t=yn(e,t>>>0)).shift();e--;var i=`return function (obj, func, destructorsRef, args) { -`,a=0,o=[];n===0&&o.push(`obj`);for(var s=[`retType`],c=[r],l=0;le.name).join(`, `)}) => ${r.name}>`,vn(bn(n,e))}function xn(e){return e=hn(e>>>0),Ct(a[e])}function Sn(e,t){return t>>>=0,e=St(e>>>0),t=St(t),Ct(e[t])}function Cn(e){9<(e>>>=0)&&(bt[e+1]+=1)}function wn(){return Ct([])}function Tn(e){e=St(e>>>0);for(var t=Array(e.length),n=0;n>>0))}function Dn(){return Ct({})}function On(e){for(var t=St(e>>>=0);t.length;){var n=t.pop();t.pop()(n)}xt(e)}function kn(e,t,n){t>>>=0,n>>>=0,e=St(e>>>0),t=St(t),n=St(n),e[t]=n}function An(e,t){return t>>>=0,e=(e=Zt(e>>>0,`_emval_take_value`)).readValueFromPointer(t),Ct(e)}function jn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getUTCSeconds(),M()[t+4>>>2>>>0]=e.getUTCMinutes(),M()[t+8>>>2>>>0]=e.getUTCHours(),M()[t+12>>>2>>>0]=e.getUTCDate(),M()[t+16>>>2>>>0]=e.getUTCMonth(),M()[t+20>>>2>>>0]=e.getUTCFullYear()-1900,M()[t+24>>>2>>>0]=e.getUTCDay(),e=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,M()[t+28>>>2>>>0]=e}var Mn=e=>e%4==0&&(e%100!=0||e%400==0),Nn=[0,31,60,91,121,152,182,213,244,274,305,335],Pn=[0,31,59,90,120,151,181,212,243,273,304,334];function Fn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getSeconds(),M()[t+4>>>2>>>0]=e.getMinutes(),M()[t+8>>>2>>>0]=e.getHours(),M()[t+12>>>2>>>0]=e.getDate(),M()[t+16>>>2>>>0]=e.getMonth(),M()[t+20>>>2>>>0]=e.getFullYear()-1900,M()[t+24>>>2>>>0]=e.getDay();var n=(Mn(e.getFullYear())?Nn:Pn)[e.getMonth()]+e.getDate()-1|0;M()[t+28>>>2>>>0]=n,M()[t+36>>>2>>>0]=-60*e.getTimezoneOffset(),n=new Date(e.getFullYear(),6,1).getTimezoneOffset();var r=new Date(e.getFullYear(),0,1).getTimezoneOffset();e=0|(n!=r&&e.getTimezoneOffset()==Math.min(r,n)),M()[t+32>>>2>>>0]=e}function In(e){e>>>=0;var t=new Date(M()[e+20>>>2>>>0]+1900,M()[e+16>>>2>>>0],M()[e+12>>>2>>>0],M()[e+8>>>2>>>0],M()[e+4>>>2>>>0],M()[e>>>2>>>0],0),n=M()[e+32>>>2>>>0],r=t.getTimezoneOffset(),i=new Date(t.getFullYear(),6,1).getTimezoneOffset(),a=new Date(t.getFullYear(),0,1).getTimezoneOffset(),o=Math.min(a,i);return 0>n?M()[e+32>>>2>>>0]=+(i!=a&&o==r):0>>2>>>0]=t.getDay(),n=(Mn(t.getFullYear())?Nn:Pn)[t.getMonth()]+t.getDate()-1|0,M()[e+28>>>2>>>0]=n,M()[e>>>2>>>0]=t.getSeconds(),M()[e+4>>>2>>>0]=t.getMinutes(),M()[e+8>>>2>>>0]=t.getHours(),M()[e+12>>>2>>>0]=t.getDate(),M()[e+16>>>2>>>0]=t.getMonth(),M()[e+20>>>2>>>0]=t.getYear(),e=t.getTime(),BigInt(isNaN(e)?-1:e/1e3)}function Ln(e,t,n,r,i,a,o){return l?Ee(16,1,e,t,n,r,i,a,o):-52}function Rn(e,t,n,r,i,a){if(l)return Ee(17,1,e,t,n,r,i,a)}var zn={},Bn=()=>performance.timeOrigin+performance.now();function Vn(e,t){if(l)return Ee(18,1,e,t);if(zn[e]&&(clearTimeout(zn[e].id),delete zn[e]),!t)return 0;var n=setTimeout(()=>{delete zn[e],Ht(()=>Er(e,performance.timeOrigin+performance.now()))},t);return zn[e]={id:n,qc:t},0}function Hn(e,t,n,r){e>>>=0,t>>>=0,n>>>=0,r>>>=0;var i=new Date().getFullYear(),a=new Date(i,0,1).getTimezoneOffset();i=new Date(i,6,1).getTimezoneOffset();var o=Math.max(a,i);N()[e>>>2>>>0]=60*o,M()[t>>>2>>>0]=+(a!=i),e=(t=e=>{var t=Math.abs(e);return`UTC${0<=e?`-`:`+`}${String(Math.floor(t/60)).padStart(2,`0`)}${String(t%60).padStart(2,`0`)}`})(a),t=t(i),iDate.now(),Wn=1;function Gn(e,t,n){if(!(0<=e&&3>=e))return 28;if(e===0)e=Date.now();else{if(!Wn)return 52;e=performance.timeOrigin+performance.now()}return ne[n>>>0>>>3]=BigInt(Math.round(1e6*e)),0}var Kn=[],qn=(e,t)=>{Kn.length=0;for(var n;n=ce()[e++>>>0];){var r=n!=105;t+=(r&=n!=112)&&t%8?4:0,Kn.push(n==112?N()[t>>>2>>>0]:n==106?ne[t>>>3]:n==105?M()[t>>>2>>>0]:de()[t>>>3>>>0]),t+=r?8:4}return Kn};function Jn(e,t,n){return e>>>=0,t=qn(t>>>0,n>>>0),R[e](...t)}function Yn(e,t,n){return e>>>=0,t=qn(t>>>0,n>>>0),R[e](...t)}var Xn=()=>{};function Zn(e,t){return x(We(e>>>0,t>>>0))}var Qn=()=>{throw Te+=1,`unwind`};function $n(){return 4294901760}var er=()=>navigator.hardwareConcurrency;function tr(){return _e(`Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER`),0}function G(e){e>>>=0;var t=ce().length;if(e<=t||4294901760=n;n*=2){var r=t*(1+.2/n);r=Math.min(r,e+100663296);e:{r=(Math.min(4294901760,65536*Math.ceil(Math.max(e,r)/65536))-S.buffer.byteLength+65535)/65536|0;try{S.grow(r),I();var i=1;break e}catch{}i=void 0}if(i)return!0}return!1}var nr=()=>(_e(`Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER`),0),rr={},ir=e=>{e.forEach(e=>{var t=nr();t&&(rr[t]=e)})};function ar(){var e=Error().stack.toString().split(` -`);return e[0]==`Error`&&e.shift(),ir(e),rr.Lb=nr(),rr.cc=e,rr.Lb}function K(e,t,n){if(e>>>=0,t>>>=0,rr.Lb==e)var r=rr.cc;else (r=Error().stack.toString().split(` -`))[0]==`Error`&&r.shift(),ir(r);for(var i=3;r[i]&&nr()!=e;)++i;for(e=0;e>>2>>>0]=nr();return e}var or,q={},J=()=>{if(!or){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 q)q[e]===void 0?delete t[e]:t[e]=q[e];var n=[];for(e in t)n.push(`${e}=${t[e]}`);or=n}return or};function sr(e,t){if(l)return Ee(19,1,e,t);e>>>=0,t>>>=0;var n=0;return J().forEach((r,i)=>{var a=t+n;for(i=N()[e+4*i>>>2>>>0]=a,a=0;a>>0]=r.charCodeAt(a);se()[i>>>0]=0,n+=r.length+1}),0}function cr(e,t){if(l)return Ee(20,1,e,t);e>>>=0,t>>>=0;var n=J();N()[e>>>2>>>0]=n.length;var r=0;return n.forEach(e=>r+=e.length+1),N()[t>>>2>>>0]=r,0}function lr(e){return l?Ee(21,1,e):52}function ur(e,t,n,r){return l?Ee(22,1,e,t,n,r):52}function Y(e,t,n,r){return l?Ee(23,1,e,t,n,r):70}var dr=[null,[],[]];function fr(e,t,n,r){if(l)return Ee(24,1,e,t,n,r);t>>>=0,n>>>=0,r>>>=0;for(var i=0,a=0;a>>2>>>0],s=N()[t+4>>>2>>>0];t+=8;for(var c=0;c>>0],d=dr[e];u===0||u===10?((e===1?b:x)(Ue(d)),d.length=0):d.push(u)}i+=s}return N()[r>>>2>>>0]=i,0}l||function(){for(var e=a.numThreads-1;e--;)Ie();Ce.unshift(()=>{me++,function(e){l?e():Promise.all(Ae.map(Fe)).then(e)}(()=>ge())})}();for(var pr=Array(256),mr=0;256>mr;++mr)pr[mr]=String.fromCharCode(mr);ot=pr,st=a.BindingError=class extends Error{constructor(e){super(e),this.name=`BindingError`}},a.InternalError=class extends Error{constructor(e){super(e),this.name=`InternalError`}},bt.push(0,1,void 0,1,null,1,!0,1,!1,1),a.count_emval_handles=()=>bt.length/2-5-yt.length;var X,hr=[De,Oe,B,Ge,Ke,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,it,at,Ln,Rn,Vn,sr,cr,lr,ur,Y,fr];(async function(){function e(e,t){return X=e.exports,X=function(){var e=X,t={};for(let[n,r]of Object.entries(e))t[n]=typeof r==`function`?(...e)=>{V.push(n);try{return r(...e)}finally{ae||(V.pop(),rn&&nn===1&&V.length===0&&(nn=0,Te+=1,tn(Pr),typeof Fibers<`u`&&Fibers.rc()))}}:r;return t}(),X=function(){var e=X,t=e=>t=>e(t)>>>0,n=e=>()=>e()>>>0;return(e=Object.assign({},e)).Da=t(e.Da),e.fb=n(e.fb),e.hb=t(e.hb),e.tb=t(e.tb),e.ub=n(e.ub),e.__cxa_get_exception_ptr=t(e.__cxa_get_exception_ptr),e}(),Me.push(X.ib),C=t,ge(),X}me++;var t=ve();if(a.instantiateWasm)return new Promise(n=>{a.instantiateWasm(t,(t,r)=>{e(t,r),n(t.exports)})});if(l)return new Promise(t=>{P=n=>{var r=new WebAssembly.Instance(n,ve());t(e(r,n))}});pe??=a.locateFile?a.locateFile?a.locateFile(`ort-wasm-simd-threaded.jsep.wasm`,_):_+`ort-wasm-simd-threaded.jsep.wasm`:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+import.meta.url).href;try{var n=await async function(e){var t=pe;if(!A&&typeof WebAssembly.instantiateStreaming==`function`&&!oe(t))try{var n=fetch(t,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(n,e)}catch(e){x(`wasm streaming compile failed: ${e}`),x(`falling back to ArrayBuffer instantiation`)}return async function(e,t){try{var n=await async function(e){if(!A)try{var t=await p(e);return new Uint8Array(t)}catch{}if(e==pe&&A)e=new Uint8Array(A);else{if(!m)throw`both async and sync fetching of the wasm failed`;e=m(e)}return e}(e);return await WebAssembly.instantiate(n,t)}catch(e){x(`failed to asynchronously prepare wasm: ${e}`),_e(e)}}(t,e)}(t);return e(n.instance,n.module)}catch(e){return i(e),Promise.reject(e)}})();var gr=e=>(gr=X.Da)(e),_r=()=>(_r=X.Ea)();a._OrtInit=(e,t)=>(a._OrtInit=X.Fa)(e,t),a._OrtGetLastError=(e,t)=>(a._OrtGetLastError=X.Ga)(e,t),a._OrtCreateSessionOptions=(e,t,n,r,i,o,s,c,l,u)=>(a._OrtCreateSessionOptions=X.Ha)(e,t,n,r,i,o,s,c,l,u),a._OrtAppendExecutionProvider=(e,t,n,r,i)=>(a._OrtAppendExecutionProvider=X.Ia)(e,t,n,r,i),a._OrtAddFreeDimensionOverride=(e,t,n)=>(a._OrtAddFreeDimensionOverride=X.Ja)(e,t,n),a._OrtAddSessionConfigEntry=(e,t,n)=>(a._OrtAddSessionConfigEntry=X.Ka)(e,t,n),a._OrtReleaseSessionOptions=e=>(a._OrtReleaseSessionOptions=X.La)(e),a._OrtCreateSession=(e,t,n)=>(a._OrtCreateSession=X.Ma)(e,t,n),a._OrtReleaseSession=e=>(a._OrtReleaseSession=X.Na)(e),a._OrtGetInputOutputCount=(e,t,n)=>(a._OrtGetInputOutputCount=X.Oa)(e,t,n),a._OrtGetInputOutputMetadata=(e,t,n,r)=>(a._OrtGetInputOutputMetadata=X.Pa)(e,t,n,r),a._OrtFree=e=>(a._OrtFree=X.Qa)(e),a._OrtCreateTensor=(e,t,n,r,i,o)=>(a._OrtCreateTensor=X.Ra)(e,t,n,r,i,o),a._OrtGetTensorData=(e,t,n,r,i)=>(a._OrtGetTensorData=X.Sa)(e,t,n,r,i),a._OrtReleaseTensor=e=>(a._OrtReleaseTensor=X.Ta)(e),a._OrtCreateRunOptions=(e,t,n,r)=>(a._OrtCreateRunOptions=X.Ua)(e,t,n,r),a._OrtAddRunConfigEntry=(e,t,n)=>(a._OrtAddRunConfigEntry=X.Va)(e,t,n),a._OrtReleaseRunOptions=e=>(a._OrtReleaseRunOptions=X.Wa)(e),a._OrtCreateBinding=e=>(a._OrtCreateBinding=X.Xa)(e),a._OrtBindInput=(e,t,n)=>(a._OrtBindInput=X.Ya)(e,t,n),a._OrtBindOutput=(e,t,n,r)=>(a._OrtBindOutput=X.Za)(e,t,n,r),a._OrtClearBoundOutputs=e=>(a._OrtClearBoundOutputs=X._a)(e),a._OrtReleaseBinding=e=>(a._OrtReleaseBinding=X.$a)(e),a._OrtRunWithBinding=(e,t,n,r,i)=>(a._OrtRunWithBinding=X.ab)(e,t,n,r,i),a._OrtRun=(e,t,n,r,i,o,s,c)=>(a._OrtRun=X.bb)(e,t,n,r,i,o,s,c),a._OrtEndProfiling=e=>(a._OrtEndProfiling=X.cb)(e),a._JsepOutput=(e,t,n)=>(a._JsepOutput=X.db)(e,t,n),a._JsepGetNodeName=e=>(a._JsepGetNodeName=X.eb)(e);var vr=()=>(vr=X.fb)(),yr=a._free=e=>(yr=a._free=X.gb)(e),br=a._malloc=e=>(br=a._malloc=X.hb)(e),xr=(e,t,n,r,i,a)=>(xr=X.kb)(e,t,n,r,i,a),Sr=()=>(Sr=X.lb)(),Cr=(e,t,n,r,i)=>(Cr=X.mb)(e,t,n,r,i),wr=e=>(wr=X.nb)(e),Tr=e=>(Tr=X.ob)(e),Er=(e,t)=>(Er=X.pb)(e,t),Dr=()=>(Dr=X.qb)(),Or=(e,t)=>(Or=X.rb)(e,t),kr=e=>(kr=X.sb)(e),Ar=e=>(Ar=X.tb)(e),jr=()=>(jr=X.ub)(),Mr=a.dynCall_ii=(e,t)=>(Mr=a.dynCall_ii=X.vb)(e,t),Nr=e=>(Nr=X.wb)(e),Pr=()=>(Pr=X.xb)(),Fr=e=>(Fr=X.yb)(e),Ir=()=>(Ir=X.zb)();return a.stackSave=()=>jr(),a.stackRestore=e=>kr(e),a.stackAlloc=e=>Ar(e),a.setValue=function(e,t,n=`i8`){switch(n.endsWith(`*`)&&(n=`*`),n){case`i1`:case`i8`:se()[e>>>0]=t;break;case`i16`:le()[e>>>1>>>0]=t;break;case`i32`:M()[e>>>2>>>0]=t;break;case`i64`:ne[e>>>3]=BigInt(t);break;case`float`:ue()[e>>>2>>>0]=t;break;case`double`:de()[e>>>3>>>0]=t;break;case`*`:N()[e>>>2>>>0]=t;break;default:_e(`invalid type for setValue: ${n}`)}},a.getValue=function(e,t=`i8`){switch(t.endsWith(`*`)&&(t=`*`),t){case`i1`:case`i8`:return se()[e>>>0];case`i16`:return le()[e>>>1>>>0];case`i32`:return M()[e>>>2>>>0];case`i64`:return ne[e>>>3];case`float`:return ue()[e>>>2>>>0];case`double`:return de()[e>>>3>>>0];case`*`:return N()[e>>>2>>>0];default:_e(`invalid type for getValue: ${t}`)}},a.UTF8ToString=We,a.stringToUTF8=Je,a.lengthBytesUTF8=qe,function e(){if(0{"use strict";tt(),pt=typeof location>`u`?void 0:location.origin,mt=import.meta.url>`file:`&&import.meta.url<`file;`,ht=()=>{if(mt){let e=URL;return new URL(new e(`ort.bundle.min.mjs`,import.meta.url).href,pt).href}return import.meta.url},gt=ht(),_t=()=>{if(gt&&!gt.startsWith(`blob:`))return gt.substring(0,gt.lastIndexOf(`/`)+1)},vt=(e,t)=>{try{let n=t??gt;return(n?new URL(e,n):new URL(e)).origin===pt}catch{return!1}},yt=(e,t)=>{let n=t??gt;try{return(n?new URL(e,n):new URL(e)).href}catch{return}},bt=(e,t)=>`${t??`./`}${e}`,xt=async e=>{let t=await(await fetch(e,{credentials:`same-origin`})).blob();return URL.createObjectURL(t)},St=async e=>(await import(e)).default,Ct=(ot(),ue(nt)).default,wt=async()=>{if(!gt)throw Error(`Failed to load proxy worker: cannot determine the script source URL.`);if(vt(gt))return[void 0,Ct()];let e=await xt(gt);return[e,Ct(e)]},Tt=(ft(),ue(st)).default,Et=async(e,t,n)=>{if(!e&&!t&&Tt&>&&vt(gt))return[void 0,Tt];{let r=`ort-wasm-simd-threaded.jsep.mjs`,i=e??yt(r,t),a=n&&i&&!vt(i,t),o=a?await xt(i):i??bt(r,t);return[a?o:void 0,await St(o)]}}}),Ot,kt,At,jt,Mt,Nt,Pt,Ft,It,Lt=j(()=>{"use strict";Dt(),kt=!1,At=!1,jt=!1,Mt=()=>{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}},Nt=()=>{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}},Pt=()=>{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}},Ft=async e=>{if(kt)return Promise.resolve();if(At)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if(jt)throw Error(`previous call to 'initializeWebAssembly()' failed.`);At=!0;let t=e.initTimeout,n=e.numThreads;if(e.simd!==!1){if(e.simd===`relaxed`){if(!Pt())throw Error(`Relaxed WebAssembly SIMD is not supported in the current environment.`)}else if(!Nt())throw Error(`WebAssembly SIMD is not supported in the current environment.`)}let r=Mt();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 Et(s,a,n>1),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=_t();e&&(r.locateFile=t=>e+t)}f(r).then(t=>{At=!1,kt=!0,Ot=t,e(),d&&URL.revokeObjectURL(d)},e=>{At=!1,jt=!0,t(e)})})),await Promise.race(m),p)throw Error(`WebAssembly backend initializing failed due to timeout: ${t}ms`)},It=()=>{if(kt&&Ot)return Ot;throw Error(`WebAssembly is not initialized yet.`)}}),Rt,zt,Bt,Vt=j(()=>{"use strict";Lt(),Rt=(e,t)=>{let n=It(),r=n.lengthBytesUTF8(e)+1,i=n._malloc(r);return n.stringToUTF8(e,i,r),t.push(i),i},zt=(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`)zt(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}`)})},Bt=e=>{let t=It(),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)}}}),Ht,Ut=j(()=>{"use strict";Lt(),Vt(),Ht=e=>{let t=It(),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 serverity 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=Rt(e.tag,r)),n=t._OrtCreateRunOptions(i.logSeverityLevel,i.logVerbosityLevel,!!i.terminate,a),n===0&&Bt(`Can't create run options.`),e?.extra!==void 0&&zt(e.extra,``,new WeakSet,(e,i)=>{let a=Rt(e,r),o=Rt(i,r);t._OrtAddRunConfigEntry(n,a,o)!==0&&Bt(`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}}}),Wt,Gt,Kt,qt,Jt,Yt,Xt=j(()=>{"use strict";Lt(),Vt(),Wt=e=>{switch(e){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${e}`)}},Gt=e=>{switch(e){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${e}`)}},Kt=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)},qt=(e,t,n,r)=>{let i=Rt(t,r),a=Rt(n,r);It()._OrtAddSessionConfigEntry(e,i,a)!==0&&Bt(`Can't set a session config entry: ${t} - ${n}.`)},Jt=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&&qt(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}`);qt(e,`preferredLayout`,t.preferredLayout,n)}}break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported execution provider: ${t}`)}let a=Rt(t,n),o=i.length,s=0,c=0;if(o>0){s=It()._malloc(o*It().PTR_SIZE),n.push(s),c=It()._malloc(o*It().PTR_SIZE),n.push(c);for(let e=0;e{let t=It(),n=0,r=[],i=e||{};Kt(i);try{let e=Wt(i.graphOptimizationLevel??`all`),a=Gt(i.executionMode??`sequential`),o=typeof i.logId==`string`?Rt(i.logId,r):0,s=i.logSeverityLevel??2;if(!Number.isInteger(s)||s<0||s>4)throw Error(`log serverity 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`?Rt(i.optimizedModelFilePath,r):0;if(n=t._OrtCreateSessionOptions(e,!!i.enableCpuMemArena,!!i.enableMemPattern,a,!!i.enableProfiling,0,o,s,c,l),n===0&&Bt(`Can't create session options.`),i.executionProviders&&await Jt(n,i.executionProviders,r),i.enableGraphCapture!==void 0){if(typeof i.enableGraphCapture!=`boolean`)throw Error(`enableGraphCapture must be a boolean value: ${i.enableGraphCapture}`);qt(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=Rt(e,r);t._OrtAddFreeDimensionOverride(n,i,a)!==0&&Bt(`Can't set a free dimension override: ${e} - ${a}.`)}return i.extra!==void 0&&zt(i.extra,``,new WeakSet,(e,t)=>{qt(n,e,t,r)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseSessionOptions(n)!==0&&Bt(`Can't release session options.`),r.forEach(e=>t._free(e)),e}}}),Zt,Qt,$t,en,tn,nn,rn,an,V=j(()=>{"use strict";Zt=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}`)}},Qt=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}`)}},$t=(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},en=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}`)}},tn=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}`)}},nn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,rn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint64`||e===`int8`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,an=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}`)}}}),on,sn=j(()=>{"use strict";tt(),on=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)}}else return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),cn,ln,un,dn,fn,pn,H,mn=j(()=>{"use strict";V(),cn=[`V`,`I`,`W`,`E`,`F`],ln=(e,t)=>{console.log(`[${cn[e]},${new Date().toISOString()}]${t}`)},fn=(e,t)=>{un=e,dn=t},pn=(e,t)=>{let n=tn(e),r=tn(un);n>=r&&ln(n,typeof t==`function`?t():t)},H=(...e)=>{dn&&pn(...e)}}),hn,gn,U,_n,vn,yn,bn,W=j(()=>{"use strict";hn=class{static calcMatMulShape(e,t){return e[1]===t[0]?[e[0],t[1]]:void 0}},gn=class{static calcShape(e,t,n=!1){let r=e.length,i=t.length;if(r===0)return t;if(i===0)return e;let a=Math.max(e.length,t.length),o=Array(a);if(n){if(r<2||i<2)return;let n=hn.calcMatMulShape([e[r-2],e[r-1]],[t[i-2],t[i-1]]);if(n===void 0)return;[o[a-2],o[a-1]]=n}for(let s=n?3:1;s<=a;s++){let n=r-s<0?1:e[r-s],c=i-s<0?1:t[i-s];if(n!==c&&n>1&&c>1)return;let l=Math.max(n,c);if(n&&c)o[a-s]=Math.max(n,c);else{if(l>1)return;o[a-s]=0}}return o}static isValidBroadcast(e,t){let n=e.length,r=t.length;if(n>r)return!1;for(let i=1;i<=n;i++)if(e[n-i]!==1&&e[n-i]!==t[r-i])return!1;return!0}},U=class e{static size(t){return e.getSizeFromDimensionRange(t,0,t.length)}static convertShape(e,t=4){let n=e.length;if(n===0)return[];let r=Array(n),i=n-1;for(;i>=0;){if(e[i]%t===0){r[i]=e[i]/t;break}if(t%e[i]!==0)throw Error(`cannot convert shape`);r[i]=1,t/=e[i],i--}for(i--;i>=0;i--)r[i]=e[i];return r}static sizeFromDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeFromDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,n,t.length)}static sizeToDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeToDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,0,n)}static getSizeFromDimensionRange(e,t,n){let r=1;for(let i=t;i=0;--r)n[r]=n[r+1]*e[r+1];return n}static normalizeAxis(e,t){if(e<-t&&e>=t)throw Error(`unsupported axis for this operation.`);return e<0?e+t:e}static normalizeAxes(e,t){return e.map(n=>this.normalizeAxis(n,t??e.length))}static sortBasedOnPerm(e,t){return t?t.map(t=>e[t]):e.slice().reverse()}static padShape(e,t){let n=e.length;return e.map((e,r)=>e+t[r]+t[r+n])}static areEqual(e,t){return e.length===t.length?e.every((e,n)=>e===t[n]):!1}},_n=class e{static adjustPoolAttributes(e,t,n,r,i,a){if(!e&&n.length!==t.length-2)throw Error(`length of specified kernel shapes should be 2 less than length of input dimensions`);if(e)for(let e=0;e=n.length?n.push(t[e+2]):n[e]=t[e+2];for(let e=0;e=n[e]||a[e+n.length]>=n[e])throw Error(`pads should be smaller than kernel`)}}static adjustPadsBasedOnAutoPad(t,n,r,i,a,o,s){if(s){if(a.length!==2*(t.length-2))throw Error(`length of pads should be twice the length of data dimensions`);if(n.length!==t.length-2)throw Error(`length of strides should be the length of data dimensions`);if(i.length!==t.length-2)throw Error(`length of kernel shapes should be the length of data dimensions`);for(let c=0;c{"use strict";V(),xn=(e,t)=>new(en(t))(e)}),Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn=j(()=>{"use strict";mn(),Cn=(e,t=!0)=>{if(e.byteLength%8!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 8 (BigInt).`);let n=e.byteLength/8,r=new BigInt64Array(e.buffer,e.byteOffset,n),i=new Int32Array(n);for(let e=0;e2147483647n||t<-2147483648n)throw Error(`Overflow occurred when converting BigInt to Int32 at index ${e}: ${t}`);i[e]=Number(t)}return t?new Uint8Array(i.buffer):i},wn=(e,t=!0)=>{if(e.byteLength%4!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 4 (Int32).`);let n=e.byteLength/4,r=new Int32Array(e.buffer,e.byteOffset,n),i=BigInt64Array.from(r,BigInt);return t?new Uint8Array(i.buffer):i},Tn=1,En=()=>Tn++,Dn=new Map([[`float32`,32],[`float16`,16],[`int32`,32],[`uint32`,32],[`int64`,64],[`uint64`,64],[`int8`,8],[`uint8`,8],[`int4`,4],[`uint4`,4]]),On=(e,t)=>{let n=Dn.get(e);if(!n)throw Error(`Unsupported data type.`);return t.length>0?Math.ceil(t.reduce((e,t)=>e*t)*n/8):0},kn=class{constructor(e){this.shouldConvertInt64toInt32=!1,this.isInt64ToInt32Converted=!1;let{sessionId:t,context:n,tensor:r,dataType:i,shape:a,shouldConvertInt64toInt32:o=!1}=e;this.sessionId=t,this.mlContext=n,this.mlTensor=r,this.dataType=i,this.tensorShape=a,this.shouldConvertInt64toInt32=o}get tensor(){return this.mlTensor}get type(){return this.dataType}get shape(){return this.tensorShape}get byteLength(){return On(this.dataType,this.tensorShape)}destroy(){H(`verbose`,()=>`[WebNN] TensorWrapper.destroy`),this.mlTensor.destroy()}write(e){this.mlContext.writeTensor(this.mlTensor,e)}async read(e,t){if(e){let e=await this.mlContext.readTensor(this.mlTensor),n=wn(new Uint8Array(e));if(t){(t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)).set(n);return}else return n.buffer}else return t?this.mlContext.readTensor(this.mlTensor,t):this.mlContext.readTensor(this.mlTensor)}canReuseTensor(e,t,n){return this.mlContext===e&&this.dataType===t&&this.tensorShape.length===n.length&&this.tensorShape.every((e,t)=>e===n[t])}setIsInt64ToInt32Converted(e){this.isInt64ToInt32Converted=e}},An=class{constructor(e,t){this.tensorManager=e,this.wrapper=t}get tensorWrapper(){return this.wrapper}releaseTensor(){this.tensorWrapper&&(this.tensorManager.releaseTensor(this.tensorWrapper),this.wrapper=void 0)}async ensureTensor(e,t,n,r){let i=t,a=this.tensorManager.getMLContext(e),o=i===`int64`&&!a.opSupportLimits().input.dataTypes.includes(`int64`);if(o&&(i=`int32`,H(`verbose`,()=>`[WebNN] TensorIdTracker.ensureTensor: convert dataType from int64 to int32`)),this.wrapper){if(this.wrapper.canReuseTensor(a,i,n))return this.wrapper.tensor;if(r){if(this.wrapper.byteLength!==On(i,n))throw Error(`Unable to copy data to tensor with different size.`);this.activeUpload=new Uint8Array(await this.wrapper.read())}this.tensorManager.releaseTensor(this.wrapper)}let s=typeof MLTensorUsage>`u`?void 0:MLTensorUsage.READ|MLTensorUsage.WRITE;return this.wrapper=await this.tensorManager.getCachedTensor(e,i,n,s,!0,!0,o),r&&this.activeUpload&&(this.wrapper.write(this.activeUpload),this.activeUpload=void 0),this.wrapper.tensor}upload(e){let t=e;if(this.wrapper)if(this.wrapper.shouldConvertInt64toInt32&&(t=Cn(e,!0),this.wrapper.setIsInt64ToInt32Converted(!0)),t.byteLength===this.wrapper.byteLength){this.wrapper.write(t);return}else H(`verbose`,()=>`Data size does not match tensor size. Releasing tensor.`),this.releaseTensor();this.activeUpload?this.activeUpload.set(t):this.activeUpload=new Uint8Array(t)}async download(e){var t,n;if(this.activeUpload){var r;let t=(r=this.wrapper)?.isInt64ToInt32Converted?wn(this.activeUpload):this.activeUpload;if(e){e instanceof ArrayBuffer?new Uint8Array(e).set(t):new Uint8Array(e.buffer,e.byteOffset,e.byteLength).set(t);return}else return t.buffer}if(!this.wrapper)throw Error(`Tensor has not been created.`);return e?this.wrapper.read((t=this.wrapper)?.shouldConvertInt64toInt32,e):this.wrapper.read((n=this.wrapper)?.shouldConvertInt64toInt32)}},jn=class{constructor(e){this.backend=e,this.tensorTrackersById=new Map,this.freeTensors=[],this.externalTensors=new Set}getMLContext(e){let t=this.backend.getMLContext(e);if(!t)throw Error(`MLContext not found for session.`);return t}reserveTensorId(){let e=En();return this.tensorTrackersById.set(e,new An(this)),e}releaseTensorId(e){let t=this.tensorTrackersById.get(e);t&&(this.tensorTrackersById.delete(e),t.tensorWrapper&&this.releaseTensor(t.tensorWrapper))}async ensureTensor(e,t,n,r,i){H(`verbose`,()=>`[WebNN] TensorManager.ensureTensor {tensorId: ${t}, dataType: ${n}, shape: ${r}, copyOld: ${i}}`);let a=this.tensorTrackersById.get(t);if(!a)throw Error(`Tensor not found.`);return a.ensureTensor(e,n,r,i)}upload(e,t){let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);n.upload(t)}async download(e,t){H(`verbose`,()=>`[WebNN] TensorManager.download {tensorId: ${e}, dstBuffer: ${t?.byteLength}}`);let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);return n.download(t)}releaseTensorsForSession(e){for(let t of this.freeTensors)t.sessionId===e&&t.destroy();this.freeTensors=this.freeTensors.filter(t=>t.sessionId!==e)}registerTensor(e,t,n,r){let i=this.getMLContext(e),a=En(),o=new kn({sessionId:e,context:i,tensor:t,dataType:n,shape:r});return this.tensorTrackersById.set(a,new An(this,o)),this.externalTensors.add(o),a}async getCachedTensor(e,t,n,r,i,a,o=!1){let s=this.getMLContext(e);for(let[r,i]of this.freeTensors.entries())if(i.canReuseTensor(s,t,n)){H(`verbose`,()=>`[WebNN] Reusing tensor {dataType: ${t}, shape: ${n}}`);let i=this.freeTensors.splice(r,1)[0];return i.sessionId=e,i}H(`verbose`,()=>`[WebNN] MLContext.createTensor {dataType: ${t}, shape: ${n}}`);let c=await s.createTensor({dataType:t,shape:n,dimensions:n,usage:r,writable:i,readable:a});return new kn({sessionId:e,context:s,tensor:c,dataType:t,shape:n,shouldConvertInt64toInt32:o})}releaseTensor(e){this.externalTensors.has(e)&&this.externalTensors.delete(e),this.freeTensors.push(e)}},Mn=(...e)=>new jn(...e)}),Pn,Fn,In,Ln=j(()=>{"use strict";V(),Lt(),Sn(),Nn(),mn(),Pn=new Map([[1,`float32`],[10,`float16`],[6,`int32`],[12,`uint32`],[7,`int64`],[13,`uint64`],[22,`int4`],[21,`uint4`],[3,`int8`],[2,`uint8`],[9,`uint8`]]),Fn=(e,t)=>{if(e===t)return!0;if(e===void 0||t===void 0)return!1;let n=Object.keys(e).sort(),r=Object.keys(t).sort();return n.length===r.length&&n.every((n,i)=>n===r[i]&&e[n]===t[n])},In=class{constructor(e){this.tensorManager=Mn(this),this.mlContextBySessionId=new Map,this.sessionIdsByMLContext=new Map,this.mlContextCache=[],this.sessionGraphInputs=new Map,this.temporaryGraphInputs=[],this.temporarySessionTensorIds=new Map,fn(e.logLevel,!!e.debug)}get currentSessionId(){if(this.activeSessionId===void 0)throw Error(`No active session`);return this.activeSessionId}onRunStart(e){H(`verbose`,()=>`[WebNN] onRunStart {sessionId: ${e}}`),this.activeSessionId=e}onRunEnd(e){H(`verbose`,()=>`[WebNN] onRunEnd {sessionId: ${e}}`);let t=this.temporarySessionTensorIds.get(e);if(t){for(let e of t)H(`verbose`,()=>`[WebNN] releasing temporary tensor {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e);this.temporarySessionTensorIds.delete(e),this.activeSessionId=void 0}}async createMLContext(e){if(e instanceof GPUDevice){let t=this.mlContextCache.findIndex(t=>t.gpuDevice===e);if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({gpuDevice:e,mlContext:t}),t}}else if(e===void 0){let e=this.mlContextCache.findIndex(e=>e.options===void 0&&e.gpuDevice===void 0);if(e!==-1)return this.mlContextCache[e].mlContext;{let e=await navigator.ml.createContext();return this.mlContextCache.push({mlContext:e}),e}}let t=this.mlContextCache.findIndex(t=>Fn(t.options,e));if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({options:e,mlContext:t}),t}}registerMLContext(e,t){this.mlContextBySessionId.set(e,t);let n=this.sessionIdsByMLContext.get(t);n||(n=new Set,this.sessionIdsByMLContext.set(t,n)),n.add(e),this.temporaryGraphInputs.length>0&&(this.sessionGraphInputs.set(e,this.temporaryGraphInputs),this.temporaryGraphInputs=[])}onReleaseSession(e){this.sessionGraphInputs.delete(e);let t=this.mlContextBySessionId.get(e);if(!t)return;this.tensorManager.releaseTensorsForSession(e),this.mlContextBySessionId.delete(e);let n=this.sessionIdsByMLContext.get(t);if(n.delete(e),n.size===0){this.sessionIdsByMLContext.delete(t);let e=this.mlContextCache.findIndex(e=>e.mlContext===t);e!==-1&&this.mlContextCache.splice(e,1)}}getMLContext(e){return this.mlContextBySessionId.get(e)}reserveTensorId(){return this.tensorManager.reserveTensorId()}releaseTensorId(e){H(`verbose`,()=>`[WebNN] releaseTensorId {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e)}async ensureTensor(e,t,n,r,i){let a=Pn.get(n);if(!a)throw Error(`Unsupported ONNX data type: ${n}`);return this.tensorManager.ensureTensor(e??this.currentSessionId,t,a,r,i)}async createTemporaryTensor(e,t,n){H(`verbose`,()=>`[WebNN] createTemporaryTensor {onnxDataType: ${t}, shape: ${n}}`);let r=Pn.get(t);if(!r)throw Error(`Unsupported ONNX data type: ${t}`);let i=this.tensorManager.reserveTensorId();await this.tensorManager.ensureTensor(e,i,r,n,!1);let a=this.temporarySessionTensorIds.get(e);return a?a.push(i):this.temporarySessionTensorIds.set(e,[i]),i}uploadTensor(e,t){if(!It().shouldTransferToMLTensor)throw Error(`Trying to upload to a MLTensor while shouldTransferToMLTensor is false`);H(`verbose`,()=>`[WebNN] uploadTensor {tensorId: ${e}, data: ${t.byteLength}}`),this.tensorManager.upload(e,t)}async downloadTensor(e,t){return this.tensorManager.download(e,t)}createMLTensorDownloader(e,t){return async()=>{let n=await this.tensorManager.download(e);return xn(n,t)}}registerMLTensor(e,t,n,r){let i=Pn.get(n);if(!i)throw Error(`Unsupported ONNX data type: ${n}`);let a=this.tensorManager.registerTensor(e,t,i,r);return H(`verbose`,()=>`[WebNN] registerMLTensor {tensor: ${t}, dataType: ${i}, dimensions: ${r}} -> {tensorId: ${a}}`),a}registerMLConstant(e,t,n,r,i,a,o=!1){if(!a)throw Error(`External mounted files are not available.`);let s=e;e.startsWith(`./`)&&(s=e.substring(2));let c=a.get(s);if(!c)throw Error(`File with name ${s} not found in preloaded files.`);if(t+n>c.byteLength)throw Error(`Out of bounds: data offset and length exceed the external file data size.`);let l=c.slice(t,t+n).buffer,u;switch(i.dataType){case`float32`:u=new Float32Array(l);break;case`float16`:u=typeof Float16Array<`u`&&Float16Array.from?new Float16Array(l):new Uint16Array(l);break;case`int32`:u=new Int32Array(l);break;case`uint32`:u=new Uint32Array(l);break;case`int64`:o?(u=Cn(new Uint8Array(l),!1),i.dataType=`int32`):u=new BigInt64Array(l);break;case`uint64`:u=new BigUint64Array(l);break;case`int8`:u=new Int8Array(l);break;case`int4`:case`uint4`:case`uint8`:u=new Uint8Array(l);break;default:throw Error(`Unsupported data type: ${i.dataType} in creating WebNN Constant from external data.`)}return H(`verbose`,()=>`[WebNN] registerMLConstant {dataType: ${i.dataType}, shape: ${i.shape}}} ${o?`(Note: it was int64 data type and registered to int32 as workaround)`:``}`),r.constant(i,u)}registerGraphInput(e){this.temporaryGraphInputs.push(e)}isGraphInput(e,t){let n=this.sessionGraphInputs.get(e);return n?n.includes(t):!1}isInt64Supported(e){var t;return!!(t=this.mlContextBySessionId.get(e))?.opSupportLimits().input.dataTypes.includes(`int64`)}flush(){}}}),Rn=j(()=>{"use strict";}),zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn=j(()=>{"use strict";mn(),Rn(),zn=new Map([[64,250],[128,200],[256,200],[512,200],[2048,230],[4096,200],[8192,50],[16384,50],[32768,50],[65536,50],[131072,50],[262144,50],[524288,50],[1048576,50],[2097152,30],[4194304,20],[8388608,10],[12582912,10],[16777216,10],[26214400,15],[33554432,22],[44236800,2],[58982400,6],[67108864,6],[134217728,6],[167772160,6]]),Bn=[],Vn=e=>Math.ceil(Number(e)/16)*16,Hn=e=>{for(let t=0;tUn++,Gn=async(e,t,n,r)=>{let i=Vn(n),a=e.device.createBuffer({size:i,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ});try{let o=e.getCommandEncoder();e.endComputePass(),o.copyBufferToBuffer(t,0,a,0,i),e.flush(),await a.mapAsync(GPUMapMode.READ);let s=a.getMappedRange();if(r){let e=r();return e.set(new Uint8Array(s,0,n)),e}else return new Uint8Array(s.slice(0,n))}finally{a.destroy()}},Kn=class{constructor(e){this.backend=e,this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.buffersPending=[],this.capturedPendingBuffers=new Map;for(let[e]of zn)Bn.push(e),this.freeBuffers.set(e,[]),this.freeUniformBuffers.set(e,[]);this.sessionCount=0}upload(e,t){let n=t.buffer,r=t.byteOffset,i=t.byteLength,a=Vn(i),o=this.storageCache.get(e);if(!o)throw Error(`gpu data for uploading does not exist`);if(Number(o.originalSize)!==i)throw Error(`inconsistent data size. gpu data size=${o.originalSize}, data size=${i}`);let s=this.backend.device.createBuffer({mappedAtCreation:!0,size:a,usage:GPUBufferUsage.MAP_WRITE|GPUBufferUsage.COPY_SRC}),c=s.getMappedRange();new Uint8Array(c).set(new Uint8Array(n,r,i)),s.unmap();let l=this.backend.device.createCommandEncoder();l.copyBufferToBuffer(s,0,o.gpuData.buffer,0,a),this.backend.device.queue.submit([l.finish()]),s.destroy(),H(`verbose`,()=>`[WebGPU] GpuDataManager.upload(id=${e})`)}memcpy(e,t){let n=this.storageCache.get(e);if(!n)throw Error(`source gpu data for memcpy does not exist`);let r=this.storageCache.get(t);if(!r)throw Error(`destination gpu data for memcpy does not exist`);if(n.originalSize!==r.originalSize)throw Error(`inconsistent source and destination gpu data size`);let i=Vn(n.originalSize),a=this.backend.getCommandEncoder();this.backend.endComputePass(),a.copyBufferToBuffer(n.gpuData.buffer,0,r.gpuData.buffer,0,i)}registerExternalBuffer(e,t,n){let r;if(n){if(r=n[0],e===n[1])return H(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, buffer is the same, skip.`),r;if(this.backend.capturedCommandList.has(this.backend.currentSessionId))throw Error(`Registering a different external buffer under graph capture mode is not supported yet. - Please use the previous external buffer!`)}else r=Wn();return this.storageCache.set(r,{gpuData:{id:r,type:0,buffer:e},originalSize:t}),H(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, registered.`),r}unregisterExternalBuffer(e){e!==void 0&&(this.storageCache.delete(e),H(`verbose`,()=>`[WebGPU] GpuDataManager.unregisterExternalBuffer() => id=${e}`))}create(e,t=GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_SRC|GPUBufferUsage.COPY_DST){let n=Hn(e),r,i=(t&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE,a=(t&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM;if(i||a){let e=(i?this.freeBuffers:this.freeUniformBuffers).get(n);r=e&&e.length>0?e.pop():this.backend.device.createBuffer({size:n,usage:t})}else r=this.backend.device.createBuffer({size:n,usage:t});let o={id:Wn(),type:0,buffer:r};return this.storageCache.set(o.id,{gpuData:o,originalSize:Number(e)}),H(`verbose`,()=>`[WebGPU] GpuDataManager.create(size=${e}) => id=${o.id}`),o}get(e){var t;return(t=this.storageCache.get(e))?.gpuData}release(e){let t=typeof e==`bigint`?Number(e):e,n=this.storageCache.get(t);if(!n){if(this.storageCache.size===0)return 0;throw Error(`releasing data does not exist`)}return H(`verbose`,()=>`[WebGPU] GpuDataManager.release(id=${t}), gpuDataId=${n.gpuData.id}`),this.storageCache.delete(t),this.buffersPending.push(n.gpuData.buffer),n.originalSize}async download(e,t){let n=this.storageCache.get(Number(e));if(!n)throw Error(`data does not exist`);await Gn(this.backend,n.gpuData.buffer,n.originalSize,t)}refreshPendingBuffers(){if(this.buffersPending.length!==0)if(this.backend.sessionStatus===`default`){for(let e of this.buffersPending){let t=zn.get(e.size);if((e.usage&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE){let n=this.freeBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else if((e.usage&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM){let n=this.freeUniformBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else e.destroy()}this.buffersPending=[]}else{let e=this.capturedPendingBuffers.get(this.backend.currentSessionId);e||(e=[],this.capturedPendingBuffers.set(this.backend.currentSessionId,e));for(let t of this.buffersPending)e.push(t);this.buffersPending=[]}}dispose(){this.freeBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.freeUniformBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.capturedPendingBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.capturedPendingBuffers=new Map}onCreateSession(){this.sessionCount+=1}onReleaseSession(e){let t=this.capturedPendingBuffers.get(e);t&&(t.forEach(e=>{e.destroy()}),this.capturedPendingBuffers.delete(e)),--this.sessionCount,this.sessionCount===0&&(H(`warning`,()=>`[WebGPU] Clearing webgpu buffer cache`),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.storageCache=new Map)}},qn=(...e)=>new Kn(...e)}),Yn,Xn,Zn=j(()=>{"use strict";Yn=class{constructor(e){Object.assign(this,e)}get cacheKey(){return this.key||=Object.getOwnPropertyNames(this).sort().map(e=>`${this[e]}`).join(`;`),this.key}},Xn=e=>new Yn(e)}),Qn,$n,er,tr,G,nr,rr,ir,ar,K,or,q,J,sr,cr,lr,ur,Y=j(()=>{"use strict";V(),W(),Qn=64,$n=(e,t)=>{if(t===3)throw Error(`vec3 has same alignment as vec4, use vec4 instead`);switch(Number(e)){case 10:return t>1?`vec${t}`:`f16`;case 1:return t>1?`vec${t}`:`f32`;case 6:return t>1?`vec${t}`:`i32`;case 12:return t>1?`vec${t}`:`u32`;case 7:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`i32`];case 13:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`u32`];case 9:if(t!==4)throw Error(`bool must be vec4`);return[`u32`,`vec4`];case 22:return`i32`;case 21:return`u32`;default:throw Error(`Unknown data type: ${e}`)}},er=(e,t=1)=>{let n=$n(e,t);return typeof n==`string`?n:n[0]},tr=(e,t=1)=>{let n=$n(e,t);return typeof n==`string`?n:n[1]},G=(...e)=>{let t=[];return e.forEach(e=>{e.length!==0&&t.push({type:12,data:e},{type:12,data:U.computeStrides(e)})}),t},nr=e=>e%4==0?4:e%2==0?2:1,rr=(e=`f32`,t,n=`0`)=>!t||t===1?`${e}(${n})`:`vec${t}<${e}>(${n})`,ir=(e,t,n)=>e===`f32`?n:t===1?`f32(${n})`:`vec${t}(${n})`,ar=(e,t)=>t===4?`(${e}.x + ${e}.y + ${e}.z + ${e}.w)`:t===2?`(${e}.x + ${e}.y)`:t===3?`(${e}.x + ${e}.y + ${e}.z)`:e,K=(e,t,n,r)=>e.startsWith(`uniforms.`)&&n>4?typeof t==`string`?r===`f16`?`${e}[(${t}) / 8][(${t}) % 8 / 4][(${t}) % 8 % 4]`:`${e}[(${t}) / 4][(${t}) % 4]`:r===`f16`?`${e}[${Math.floor(t/8)}][${Math.floor(t%8/4)}][${t%8%4}]`:`${e}[${Math.floor(t/4)}][${t%4}]`:n>1?`${e}[${t}]`:e,or=(e,t,n,r,i)=>{let a=typeof n==`number`,o=a?n:n.length,s=[...Array(o).keys()],c=o<2?`u32`:o<=4?`vec${o}`:`array`,l=$n(t,i),u=typeof l==`string`?l:l[1],d=typeof l==`string`?l:l[0],f={indices:c,value:u,storage:d,tensor:t},p=e=>typeof e==`string`?e:`${e}u`,m={offsetToIndices:!1,indicesToOffset:!1,broadcastedIndicesToOffset:!1,set:!1,setByIndices:!1,get:!1,getByIndices:!1},h=a?`uniforms.`:``,g=`${h}${e}_shape`,_=`${h}${e}_strides`,v=``;for(let e=0;e ${f.indices} { - var indices: ${f.indices}; - var current = offset; - ${v} - return indices; - }`,b=t=>(m.offsetToIndices=!0,o<2?t:`o2i_${e}(${t})`),x=[];if(o>=2)for(let e=o-1;e>=0;e--)x.push(`${K(_,e,o)} * (indices[${e}])`);let S=o<2?``:` - fn i2o_${e}(indices: ${f.indices}) -> u32 { - return ${x.join(`+`)}; - }`,C=t=>(m.indicesToOffset=!0,o<2?t:`i2o_${e}(${t})`),w=(...e)=>o===0?`0u`:`${f.indices}(${e.map(p).join(`,`)})`,T=(e,t)=>o<2?`${e}`:`${K(e,t,o)}`,E=(e,t,n)=>o<2?`${e}=${n};`:`${K(e,t,o)}=${n};`,D={},O=(t,n)=>{m.broadcastedIndicesToOffset=!0;let r=`${n.name}broadcastedIndicesTo${e}Offset`;if(r in D)return`${r}(${t})`;let i=[];for(let e=o-1;e>=0;e--){let t=n.indicesGet(`outputIndices`,e+n.rank-o);i.push(`${T(_,e)} * (${t} % ${T(g,e)})`)}return D[r]=`fn ${r}(outputIndices: ${n.type.indices}) -> u32 { - return ${i.length>0?i.join(`+`):`0u`}; - }`,`${r}(${t})`},ee=(t,n)=>(()=>{if(f.storage===f.value)return`${e}[${t}]=${n};`;if(f.storage===`vec2`&&f.value===`i32`)return`${e}[${t}]=vec2(u32(${n}), select(0u, 0xFFFFFFFFu, ${n} < 0));`;if(f.storage===`vec2`&&f.value===`u32`)return`${e}[${t}]=vec2(u32(${n}), 0u);`;if(f.storage===`u32`&&f.value===`vec4`)return`${e}[${t}]=dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(${n}));`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),k=t=>(()=>{if(f.storage===f.value)return`${e}[${t}]`;if(f.storage===`vec2`&&f.value===`i32`)return`i32(${e}[${t}].x)`;if(f.storage===`vec2`&&f.value===`u32`)return`u32(${e}[${t}].x)`;if(f.storage===`u32`&&f.value===`vec4`)return`vec4(bool(${e}[${t}] & 0xFFu), bool(${e}[${t}] & 0xFF00u), bool(${e}[${t}] & 0xFF0000u), bool(${e}[${t}] & 0xFF000000u))`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),te=o<2?``:` - fn get_${e}ByIndices(indices: ${f.indices}) -> ${u} { - return ${k(`i2o_${e}(indices)`)}; - }`,ne=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` - fn get_${e}(${t}) -> ${u} { - return get_${e}ByIndices(${w(n)}); - }`})(),re=(...t)=>{if(t.length!==o)throw Error(`indices length must be ${o}`);let n=t.map(p).join(`,`);return o===0?k(`0u`):o===1?k(n[0]):(m.get=!0,m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}(${n})`)},ie=t=>o<2?k(t):(m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}ByIndices(${t})`),A=o<2?``:` - fn set_${e}ByIndices(indices: ${f.indices}, value: ${u}) { - ${ee(`i2o_${e}(indices)`,`value`)} - }`,ae=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` - fn set_${e}(${t}, value: ${u}) { - set_${e}ByIndices(${w(n)}, value); - }`})();return{impl:()=>{let e=[],t=!1;return m.offsetToIndices&&(e.push(y),t=!0),m.indicesToOffset&&(e.push(S),t=!0),m.broadcastedIndicesToOffset&&(Object.values(D).forEach(t=>e.push(t)),t=!0),m.set&&(e.push(ae),t=!0),m.setByIndices&&(e.push(A),t=!0),m.get&&(e.push(ne),t=!0),m.getByIndices&&(e.push(te),t=!0),!a&&t&&e.unshift(`const ${g} = ${f.indices}(${n.join(`,`)});`,`const ${_} = ${f.indices}(${U.computeStrides(n).join(`,`)});`),e.join(` -`)},type:f,offsetToIndices:b,indicesToOffset:C,broadcastedIndicesToOffset:O,indices:w,indicesGet:T,indicesSet:E,set:(...t)=>{if(t.length!==o+1)throw Error(`indices length must be ${o}`);let n=t[o];if(typeof n!=`string`)throw Error(`value must be string`);let r=t.slice(0,o).map(p).join(`,`);return o===0?ee(`0u`,n):o===1?ee(r[0],n):(m.set=!0,m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}(${r}, ${n})`)},setByOffset:ee,setByIndices:(t,n)=>o<2?ee(t,n):(m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}ByIndices(${t}, ${n});`),get:re,getByOffset:k,getByIndices:ie,usage:r,name:e,strides:_,shape:g,rank:o}},q=(e,t,n,r=1)=>or(e,t,n,`input`,r),J=(e,t,n,r=1)=>or(e,t,n,`output`,r),sr=(e,t,n)=>or(e,t,n,`atomicOutput`,1),cr=(e,t,n,r=1)=>or(e,t,n,`internal`,r),lr=class{constructor(e,t){this.normalizedDispatchGroup=e,this.limits=t,this.internalVariables=[],this.variables=[],this.uniforms=[],this.variableIndex=0}guardAgainstOutOfBoundsWorkgroupSizes(e){return`if (global_idx >= ${typeof e==`number`?`${e}u`:e}) { return; }`}mainStart(e=Qn){let t=typeof e==`number`?e:e[0],n=typeof e==`number`?1:e[1],r=typeof e==`number`?1:e[2];if(t>this.limits.maxComputeWorkgroupSizeX||n>this.limits.maxComputeWorkgroupSizeY||r>this.limits.maxComputeWorkgroupSizeZ)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup size [${this.limits.maxComputeWorkgroupSizeX}, ${this.limits.maxComputeWorkgroupSizeY}, ${this.limits.maxComputeWorkgroupSizeZ}].`);if(t*n*r>this.limits.maxComputeInvocationsPerWorkgroup)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup invocations ${this.limits.maxComputeInvocationsPerWorkgroup}.`);let i=this.normalizedDispatchGroup[1]===1&&this.normalizedDispatchGroup[2]===1,a=i?`@builtin(global_invocation_id) global_id : vec3, - @builtin(workgroup_id) workgroup_id : vec3, - @builtin(local_invocation_index) local_idx : u32, - @builtin(local_invocation_id) local_id : vec3`:`@builtin(global_invocation_id) global_id : vec3, - @builtin(local_invocation_id) local_id : vec3, - @builtin(local_invocation_index) local_idx : u32, - @builtin(workgroup_id) workgroup_id : vec3, - @builtin(num_workgroups) num_workgroups : vec3`,o=i?`let global_idx = global_id.x; - let workgroup_index = workgroup_id.x;`:`let workgroup_index = workgroup_id.z * num_workgroups[0] * num_workgroups[1] + - workgroup_id.y * num_workgroups[0] + workgroup_id.x; - let global_idx = workgroup_index * ${t*n*r}u + local_idx;`;return`@compute @workgroup_size(${t}, ${n}, ${r}) - fn main(${a}) { - ${o} - `}appendVariableUniforms(e){e.rank!==0&&(e.shape.startsWith(`uniforms.`)&&this.uniforms.push({name:e.shape.replace(`uniforms.`,``),type:`u32`,length:e.rank}),e.strides.startsWith(`uniforms.`)&&this.uniforms.push({name:e.strides.replace(`uniforms.`,``),type:`u32`,length:e.rank}))}declareVariable(e,t){if(e.usage===`internal`)throw Error(`cannot use internal variable with declareVariable(). use registerInternalVariables() instead.`);this.variables.push(e),this.appendVariableUniforms(e);let n=e.usage===`input`?`read`:`read_write`,r=e.usage===`atomicOutput`?`atomic`:e.type.storage;return`@group(0) @binding(${t}) var ${e.name}: array<${r}>;`}declareVariables(...e){return e.map(e=>this.declareVariable(e,this.variableIndex++)).join(` -`)}registerInternalVariable(e){if(e.usage!==`internal`)throw Error(`cannot use input or output variable with registerInternalVariable(). use declareVariables() instead.`);this.internalVariables.push(e),this.appendVariableUniforms(e)}registerInternalVariables(...e){return e.forEach(e=>this.registerInternalVariable(e)),this}registerUniform(e,t,n=1){return this.uniforms.push({name:e,type:t,length:n}),this}registerUniforms(e){return this.uniforms=this.uniforms.concat(e),this}uniformDeclaration(){if(this.uniforms.length===0)return``;let e=[];for(let{name:t,type:n,length:r}of this.uniforms)if(r&&r>4)n===`f16`?e.push(`@align(16) ${t}:array, ${Math.ceil(r/8)}>`):e.push(`${t}:array, ${Math.ceil(r/4)}>`);else{let i=r==null||r===1?n:`vec${r}<${n}>`;e.push(`${t}:${i}`)}return` - struct Uniforms { ${e.join(`, `)} }; - @group(0) @binding(${this.variableIndex}) var uniforms: Uniforms;`}get additionalImplementations(){return this.uniformDeclaration()+this.variables.map(e=>e.impl()).join(` -`)+this.internalVariables.map(e=>e.impl()).join(` -`)}get variablesInfo(){if(this.uniforms.length===0)return;let e=e=>[12,10,1,6][[`u32`,`f16`,`f32`,`i32`].indexOf(e)];return this.uniforms.map(t=>[e(t.type),t.length??1])}},ur=(e,t)=>new lr(e,t)}),dr,fr,pr,mr,X,hr,gr,_r,vr,yr=j(()=>{"use strict";V(),W(),Zn(),Y(),dr=(e,t)=>{if(!e||e.length!==1)throw Error(`Transpose requires 1 input.`);if(t.length!==0&&t.length!==e[0].dims.length)throw Error(`perm size ${t.length} does not match input rank ${e[0].dims.length}`)},fr=(e,t)=>t.length===0?[...Array(e).keys()].reverse():t,pr=(e,t)=>U.sortBasedOnPerm(e,fr(e.length,t)),mr=(e,t,n,r)=>{let i=`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { - var a: ${n.type.indices};`;for(let n=0;n{let n=[],r=[];for(let i=0;i{let n=0;for(let r=0;r{let n=e.dataType,r=e.dims.length,i=fr(r,t),a=pr(e.dims,i),o=e.dims,s=a,c=r<2||hr(i,e.dims),l;if(c)return l=e=>{let t=q(`input`,n,o,4),r=J(`output`,n,s,4);return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(t,r)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - output[global_idx] = input[global_idx]; - }`},{name:`TransposeCopy`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64/4)},programUniforms:[{type:12,data:Math.ceil(t/4)}]}},getShaderSource:l};let{newShape:u,newPerm:d}=X(e.dims,i),f=U.areEqual(d,[2,3,1]),p=U.areEqual(d,[3,1,2]);if(u.length===2||f||p){o=f?[u[0],u[1]*u[2]]:p?[u[0]*u[1],u[2]]:u,s=[o[1],o[0]];let t=16;return l=e=>{let r=q(`a`,n,o.length),i=J(`output`,n,s.length);return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(r,i)} - var tile : array, ${t}>; - ${e.mainStart([t,t,1])} - let stride = (uniforms.output_shape[1] - 1) / ${t} + 1; - let workgroup_id_x = workgroup_index % stride; - let workgroup_id_y = workgroup_index / stride; - let input_col = workgroup_id_y * ${t}u + local_id.x; - let input_row = workgroup_id_x * ${t}u + local_id.y; - if (input_row < uniforms.a_shape[0] && input_col < uniforms.a_shape[1]) { - tile[local_id.y][local_id.x] = ${r.getByIndices(`${r.type.indices}(input_row, input_col)`)}; - } - workgroupBarrier(); - - let output_col = workgroup_id_x * ${t}u + local_id.x; - let output_row = workgroup_id_y * ${t}u + local_id.y; - if (output_row < uniforms.output_shape[0] && output_col < uniforms.output_shape[1]) { - ${i.setByIndices(`${i.type.indices}(output_row, output_col)`,`tile[local_id.x][local_id.y]`)} - } - }`},{name:`TransposeShared`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let n=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(s[1]/t),y:Math.ceil(s[0]/t)},programUniforms:[{type:12,data:n},...G(o,s)]}},getShaderSource:l}}return l=e=>{let t=q(`a`,n,o.length),a=J(`output`,n,s.length);return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(t,a)} - - ${mr(i,r,t,a)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let indices = ${a.offsetToIndices(`global_idx`)}; - let aIndices = perm(indices); - - ${a.setByOffset(`global_idx`,t.getByIndices(`aIndices`))} - }`},{name:`Transpose`,shaderCache:{hint:`${t}`,inputDependencies:[`rank`]},getRunData:()=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:[{type:12,data:t},...G(o,s)]}},getShaderSource:l}},_r=(e,t)=>{dr(e.inputs,t.perm),e.compute(gr(e.inputs[0],t.perm))},vr=e=>Xn({perm:e.perm})}),br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,Lr,Rr,zr,Br,Vr=j(()=>{"use strict";V(),W(),Y(),mi(),yr(),br={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate * candidate`,logSumExp:`bestValue + exp(candidate)`,l1:`bestValue + abs(candidate)`,l2:`bestValue + candidate * candidate`,logSum:`bestValue + candidate`},xr={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate`,logSumExp:`bestValue + candidate`,l1:`bestValue + candidate`,l2:`bestValue + candidate`,logSum:`bestValue + candidate`},Sr={max:`_A[offset]`,min:`_A[offset]`,mean:`0`,sum:`0`,prod:`1`,sumSquare:`0`,logSumExp:`0`,l1:`0`,l2:`0`,logSum:`0`},Cr={max:`bestValue`,min:`bestValue`,sum:`bestValue`,prod:`bestValue`,sumSquare:`bestValue`,logSumExp:`log(bestValue)`,l1:`bestValue`,l2:`sqrt(bestValue)`,logSum:`log(bestValue)`},wr=(e,t)=>{let n=[];for(let r=t-e;r{let n=[],r=e.length;for(let i=0;ie[t]);return[n,i]},Er=(e,t)=>{let n=e.length+t.length,r=[],i=0;for(let a=0;a{for(let n=0;n{let n=[];if(!Dr(e,t)){for(let r=0;rn.push(e))}return n},kr=(e,t,n,r,i,a,o)=>{let s=n[0].dims,c=U.size(a),l=U.size(o),u=q(`_A`,n[0].dataType,s),d=J(`output`,i,a),f=64;c===1&&(f=256);let p=` - var aBestValues : array; - `,m=e=>` - ${e.registerUniform(`reduceSize`,`u32`).declareVariables(u,d)} - ${p} - fn DIV_CEIL(a : u32, b : u32) -> u32 { - return ((a - 1u) / b + 1u); - } - ${e.mainStart(f)} - - let outputIndex = global_idx / ${f}; - let offset = outputIndex * uniforms.reduceSize; - - var bestValue = f32(${Sr[r]}); - let Length = uniforms.reduceSize; - for (var k = local_idx; k < Length; k = k + ${f}) { - let candidate = f32(${u.getByOffset(`offset + k`)}); - bestValue = ${br[r]}; - } - aBestValues[local_idx] = bestValue; - workgroupBarrier(); - - var reduceSize = min(Length, ${f}u); - for (var currentSize = reduceSize / 2u; reduceSize > 1u; - currentSize = reduceSize / 2u) { - let interval = DIV_CEIL(reduceSize, 2u); - if (local_idx < currentSize) { - let candidate = aBestValues[local_idx + interval]; - bestValue = ${xr[r]}; - aBestValues[local_idx] = bestValue; - } - reduceSize = interval; - workgroupBarrier(); - } - - if (local_idx == 0u) { - ${d.setByOffset(`outputIndex`,`${r===`mean`?`${d.type.storage}(bestValue / f32(uniforms.reduceSize))`:`${d.type.storage}(${Cr[r]})`}`)}; - } - }`;return{name:e,shaderCache:{hint:`${t};${f}`,inputDependencies:[`type`]},getShaderSource:m,getRunData:()=>({outputs:[{dims:a,dataType:i}],dispatchGroup:{x:c},programUniforms:[{type:12,data:l}]})}},Ar=(e,t,n,r)=>{let i=e.inputs.length===1?n:Gr(e.inputs,n),a=i.axes;a.length===0&&!i.noopWithEmptyAxes&&(a=e.inputs[0].dims.map((e,t)=>t));let o=U.normalizeAxes(a,e.inputs[0].dims.length),s=o,c=e.inputs[0],l=Or(s,e.inputs[0].dims.length);l.length>0&&(c=e.compute(gr(e.inputs[0],l),{inputs:[0],outputs:[-1]})[0],s=wr(s.length,c.dims.length));let[u,d]=Tr(c.dims,s),f=u;i.keepDims&&(f=Er(u,o)),e.compute(kr(t,i.cacheKey,[c],r,e.inputs[0].dataType,f,d),{inputs:[c]})},jr=(e,t)=>{Ar(e,`ReduceMeanShared`,t,`mean`)},Mr=(e,t)=>{Ar(e,`ReduceL1Shared`,t,`l1`)},Nr=(e,t)=>{Ar(e,`ReduceL2Shared`,t,`l2`)},Pr=(e,t)=>{Ar(e,`ReduceLogSumExpShared`,t,`logSumExp`)},Fr=(e,t)=>{Ar(e,`ReduceMaxShared`,t,`max`)},Ir=(e,t)=>{Ar(e,`ReduceMinShared`,t,`min`)},Lr=(e,t)=>{Ar(e,`ReduceProdShared`,t,`prod`)},Rr=(e,t)=>{Ar(e,`ReduceSumShared`,t,`sum`)},zr=(e,t)=>{Ar(e,`ReduceSumSquareShared`,t,`sumSquare`)},Br=(e,t)=>{Ar(e,`ReduceLogSumShared`,t,`logSum`)}}),Hr,Ur,Wr,Gr,Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi=j(()=>{"use strict";V(),W(),Zn(),Y(),Vr(),Hr=e=>{if(!e||e.length===0||e.length>2)throw Error(`Reduce op requires 1 or 2 inputs.`);if(e.length===2&&e[1].dims.length!==1)throw Error(`Invalid axes input dims.`)},Ur=e=>[``,``,`var value = ${e.getByIndices(`input_indices`)};`,``],Wr=(e,t,n,r,i,a,o=!1,s=!1)=>{let c=[],l=n[0].dims,u=l.length,d=U.normalizeAxes(i,u),f=!s&&d.length===0;l.forEach((e,t)=>{f||d.indexOf(t)>=0?o&&c.push(1):c.push(e)});let p=c.length,m=U.size(c);return{name:e,shaderCache:t,getShaderSource:e=>{let t=[],i=q(`_A`,n[0].dataType,u),s=J(`output`,a,p),c=r(i,s,d),m=c[2];for(let e=0,n=0;e=0?(o&&n++,m=`for(var j${e}: u32 = 0; j${e} < ${l[e]}; j${e}++) { - ${c[2].includes(`last_index`)?`let last_index = j${e};`:``} - ${i.indicesSet(`input_indices`,e,`j${e}`)} - ${m} - }`):(t.push(`${i.indicesSet(`input_indices`,e,s.indicesGet(`output_indices`,n))};`),n++);return` - - ${e.registerUniform(`output_size`,`u32`).declareVariables(i,s)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - var input_indices: ${i.type.indices}; - let output_indices = ${s.offsetToIndices(`global_idx`)}; - - ${t.join(` -`)} - ${c[0]} // init ops for reduce max/min - ${c[1]} - ${m} - ${c[3]} - ${c.length===4?s.setByOffset(`global_idx`,`value`):c.slice(4).join(` -`)} - }`},getRunData:()=>({outputs:[{dims:c,dataType:a}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:[{type:12,data:m},...G(l,c)]})}},Gr=(e,t)=>{let n=[];return e[1].dims[0]>0&&e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),Xn({axes:n,keepDims:t.keepDims,noopWithEmptyAxes:t.noopWithEmptyAxes})},Kr=(e,t,n,r)=>{let i=e.inputs,a=i.length===1?n:Gr(i,n);e.compute(Wr(t,{hint:a.cacheKey,inputDependencies:[`rank`]},[i[0]],a.noopWithEmptyAxes&&a.axes.length===0?Ur:r,a.axes,i[0].dataType,a.keepDims,a.noopWithEmptyAxes),{inputs:[0]})},qr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceLogSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,`value = log(value);`])},Jr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceL1`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += abs(${e.getByIndices(`input_indices`)});`,``])},Yr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceL2`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += (t * t);`,`value = sqrt(value);`])},Xr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceLogSumExp`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += exp(${e.getByIndices(`input_indices`)});`,`value = log(value);`])},Zr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceMax`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(e.indicesSet(`input_indices`,t,0));return[`${r.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = max(value, ${e.getByIndices(`input_indices`)});`,``]})},Qr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceMean`,t,(t,n,r)=>{let i=1;for(let n=0;n=0||r.length===0)&&(i*=e.inputs[0].dims[n]);return[`var sum = f32(0);`,``,`sum += f32(${t.getByIndices(`input_indices`)});`,`let value = ${n.type.value}(sum / ${i});`]})},$r=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceMin`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(`input_indices[${t}] = 0;`);return[`${r.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = min(value, ${e.getByIndices(`input_indices`)});`,``]})},ei=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceProd`,t,(e,t)=>[`var value = ${t.type.storage}(1);`,``,`value *= ${e.getByIndices(`input_indices`)};`,``])},ti=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,``])},ni=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceSumSquare`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += t * t;`,``])},ri=(e,t,n)=>{if(t.length===0)return n;let r=1,i=1;for(let n=0;n1024},ii=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Qr(e,t):jr(e,t)},ai=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Jr(e,t):Mr(e,t)},oi=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Yr(e,t):Nr(e,t)},si=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Xr(e,t):Pr(e,t)},ci=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Zr(e,t):Fr(e,t)},li=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?$r(e,t):Ir(e,t)},ui=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ei(e,t):Lr(e,t)},di=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ti(e,t):Rr(e,t)},fi=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ni(e,t):zr(e,t)},pi=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?qr(e,t):Br(e,t)}}),hi,gi,_i,vi,yi=j(()=>{"use strict";V(),Zn(),mi(),hi=e=>{if(!e||e.length===0||e.length>2)throw Error(`ArgMinMaxOp op requires 1 or 2 inputs.`);if(e[0].dataType!==1)throw Error(`Invalid input type.`)},gi=(e,t)=>{hi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)}; -var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`<=`:`<`} value) { - value = ${e.getByIndices(`input_indices`)}; - best_index = i32(last_index); - }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Wr(`ArgMin`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},_i=(e,t)=>{hi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)}; -var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`>=`:`>`} value) { - value = ${e.getByIndices(`input_indices`)}; - best_index = i32(last_index); - }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Wr(`argMax`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},vi=e=>Xn(e)}),bi,xi,Si,Ci,wi,Ti,Ei,Di,Oi=j(()=>{"use strict";V(),W(),Rn(),Y(),bi=(e,t)=>{let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5];if(o&&s)throw Error(`Attention cannot have both past and attention_bias`);if(n.dims.length!==3)throw Error(`Input "input" must have 3 dimensions`);let c=n.dims[0],l=n.dims[1],u=n.dims[2];if(i.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimensions`);if(r.dims.length!==2)throw Error(`Input "weights" is expected to have 2 dimensions`);if(r.dims[0]!==u)throw Error(`Input 1 dimension 0 should have same length as dimension 2 of input 0`);if(i.dims[0]!==r.dims[1])throw Error(`Input "bias" dimension 0 should have same length as dimension 1 of input "weights"`);let d=i.dims[0]/3,f=d,p=f;if(t.qkvHiddenSizes.length>0){if(t.qkvHiddenSizes.length!==3)throw Error(`qkv_hidden_sizes attribute should have 3 elements`);for(let e of t.qkvHiddenSizes)if(e%t.numHeads!==0)throw Error(`qkv_hidden_sizes should be divisible by num_heads`);d=t.qkvHiddenSizes[0],f=t.qkvHiddenSizes[1],p=t.qkvHiddenSizes[2]}let m=l;if(d!==f)throw Error(`qkv_hidden_sizes first element should be same as the second`);if(i.dims[0]!==d+f+p)throw Error(`Input "bias" dimension 0 should have same length as sum of Q/K/V hidden sizes`);let h=0;if(o){if(f!==p)throw Error(`Input "past" expect k_hidden_size == v_hidden_size`);if(o.dims.length!==5)throw Error(`Input "past" must have 5 dimensions`);if(o.dims[0]!==2)throw Error(`Input "past" first dimension must be 2`);if(o.dims[1]!==c)throw Error(`Input "past" second dimension must be batch_size`);if(o.dims[2]!==t.numHeads)throw Error(`Input "past" third dimension must be num_heads`);if(o.dims[4]!==f/t.numHeads)throw Error(`Input "past" fifth dimension must be k_hidden_size / num_heads`);t.pastPresentShareBuffer||(h=o.dims[3])}let g=m+h,_=-1,v=0;if(a)throw Error(`Mask not supported`);if(o)throw Error(`past is not supported`);if(s){if(s.dims.length!==4)throw Error(`Input "attention_bias" must have 4 dimensions`);if(s.dims[0]!==c||s.dims[1]!==t.numHeads||s.dims[2]!==l||s.dims[3]!==g)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:c,sequenceLength:l,pastSequenceLength:h,kvSequenceLength:m,totalSequenceLength:g,maxSequenceLength:_,inputHiddenSize:u,hiddenSize:d,vHiddenSize:p,headSize:Math.floor(d/t.numHeads),vHeadSize:Math.floor(p/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:!1,qkvFormat:1}},xi=(e,t,n)=>t&&e?` - let total_sequence_length_input = u32(${t.getByOffset(`0`)}); - let present_sequence_length = max(total_sequence_length_input, uniforms.past_sequence_length); - let is_subsequent_prompt: bool = sequence_length > 1 && sequence_length != total_sequence_length_input; - let is_first_prompt: bool = is_subsequent_prompt == false && sequence_length == total_sequence_length_input; - total_sequence_length = u32(${e?.getByOffset(`batchIdx`)}) + 1; - var past_sequence_length: u32 = 0; - if (is_first_prompt == false) { - past_sequence_length = total_sequence_length - sequence_length; - } - `:` - ${n?`let past_sequence_length = uniforms.past_sequence_length`:``}; - let present_sequence_length = total_sequence_length; - `,Si=(e,t,n,r,i,a,o,s)=>{let c=nr(o?1:a),l=64,u=a/c;u{let n=J(`x`,e.dataType,e.dims,c),r=[n],i=o?q(`seq_lens`,o.dataType,o.dims):void 0;i&&r.push(i);let a=s?q(`total_sequence_length_input`,s.dataType,s.dims):void 0;a&&r.push(a);let u=tr(e.dataType),d=[{name:`batch_size`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`total_sequence_length`,type:`u32`},{name:`elements_per_thread`,type:`u32`}];return` - var thread_max: array; - var thread_sum: array; - ${t.registerUniforms(d).declareVariables(...r)} - ${t.mainStart([l,1,1])} - let batchIdx = workgroup_id.z / uniforms.num_heads; - let headIdx = workgroup_id.z % uniforms.num_heads; - let sequence_length = uniforms.sequence_length; - var total_sequence_length = uniforms.total_sequence_length; - ${xi(i,a,!1)} - let local_offset = local_idx * uniforms.elements_per_thread; - let offset = (global_idx / ${l}) * uniforms.total_sequence_length + local_offset; - let seq_causal_length = ${o?`u32(past_sequence_length + workgroup_id.y + 1)`:`total_sequence_length`}; - var thread_max_vector = ${m}(-3.402823e+38f); - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - thread_max_vector = max(${m}(x[offset + i]), thread_max_vector); - } - thread_max[local_idx] = ${(()=>{switch(c){case 1:return`thread_max_vector`;case 2:return`max(thread_max_vector.x, thread_max_vector.y)`;case 4:return`max(max(thread_max_vector.x, thread_max_vector.y), max(thread_max_vector.z, thread_max_vector.w))`;default:throw Error(`Unsupported components: ${c}`)}})()}; - workgroupBarrier(); - - var max_value = f32(-3.402823e+38f); - for (var i = 0u; i < ${l}; i++) { - max_value = max(thread_max[i], max_value); - } - - var sum_vector = ${m}(0); - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - sum_vector += exp(${m}(x[offset + i]) - max_value); - } - thread_sum[local_idx] = ${(()=>{switch(c){case 1:return`sum_vector`;case 2:return`sum_vector.x + sum_vector.y`;case 4:return`sum_vector.x + sum_vector.y + sum_vector.z + sum_vector.w`;default:throw Error(`Unsupported components: ${c}`)}})()}; - workgroupBarrier(); - - var sum: f32 = 0; - for (var i = 0u; i < ${l}; i++) { - sum += thread_sum[i]; - } - - if (sum == 0) { - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - x[offset + i] = ${n.type.value}(${u}(1.0) / ${u}(seq_causal_length)); - } - } else { - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - var f32input = ${m}(x[offset + i]); - x[offset + i] = ${n.type.value}(exp(f32input - max_value) / sum); - } - } - ${o?` - for (var total_seq_id: u32 = seq_causal_length; total_seq_id + local_offset < uniforms.total_sequence_length; total_seq_id++) { - x[offset + total_seq_id] = ${n.type.value}(${u}(0)); - }`:``}; - }`};return{name:`AttentionProbsSoftmax`,shaderCache:{hint:`${l};${p};${c}`,inputDependencies:h},getShaderSource:g,getRunData:()=>({outputs:[],dispatchGroup:{x:1,y:i,z:t*n},programUniforms:f})}},Ci=(e,t,n,r,i,a,o,s,c)=>{let l=o+a.kvSequenceLength,u=[a.batchSize,a.numHeads,a.sequenceLength,l],d=e>1&&r,f=a.kvNumHeads?a.kvNumHeads:a.numHeads,p=d?[a.batchSize,f,l,a.headSize]:void 0,m=a.nReps?a.nReps:1,h=a.scale===0?1/Math.sqrt(a.headSize):a.scale,g=nr(a.headSize),_=a.headSize/g,v=12,y={x:Math.ceil(l/v),y:Math.ceil(a.sequenceLength/v),z:a.batchSize*a.numHeads},b=[{type:12,data:a.sequenceLength},{type:12,data:_},{type:12,data:l},{type:12,data:a.numHeads},{type:12,data:a.headSize},{type:1,data:h},{type:12,data:o},{type:12,data:a.kvSequenceLength},{type:12,data:m}],x=d&&r&&U.size(r.dims)>0,S=[`type`,`type`];x&&S.push(`type`),i&&S.push(`type`),s&&S.push(`type`),c&&S.push(`type`);let C=[{dims:u,dataType:t.dataType,gpuDataType:0}];d&&C.push({dims:p,dataType:t.dataType,gpuDataType:0});let w=e=>{let a=q(`q`,t.dataType,t.dims,g),o=q(`key`,n.dataType,n.dims,g),l=[a,o];if(x){let e=q(`past_key`,r.dataType,r.dims,g);l.push(e)}i&&l.push(q(`attention_bias`,i.dataType,i.dims));let f=s?q(`seq_lens`,s.dataType,s.dims):void 0;f&&l.push(f);let h=c?q(`total_sequence_length_input`,c.dataType,c.dims):void 0;h&&l.push(h);let _=J(`output`,t.dataType,u),y=[_];d&&y.push(J(`present_key`,t.dataType,p,g));let b=tr(1,g),S=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`alpha`,type:`f32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` - const TILE_SIZE = ${v}u; - - var tileQ: array<${a.type.storage}, ${v*v}>; - var tileK: array<${a.type.storage}, ${v*v}>; - ${e.registerUniforms(S).declareVariables(...l,...y)} - ${e.mainStart([v,v,1])} - // x holds the N and y holds the M - let headIdx = workgroup_id.z % uniforms.num_heads; - let kvHeadIdx = ${m===1?`headIdx`:`headIdx / uniforms.n_reps`}; - let kv_num_heads = ${m===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; - let batchIdx = workgroup_id.z / uniforms.num_heads; - let m = workgroup_id.y * TILE_SIZE; - let n = workgroup_id.x * TILE_SIZE; - let sequence_length = uniforms.M; - var total_sequence_length = uniforms.N; - ${xi(f,h,!0)} - let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; - let qOffset = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; - ${x&&d?`let pastKeyOffset = absKvHeadIdx * uniforms.past_sequence_length * uniforms.K;`:``}; - let kOffset = absKvHeadIdx * uniforms.kv_sequence_length * uniforms.K; - ${d?`let presentKeyOffset = absKvHeadIdx * uniforms.N * uniforms.K;`:``} - var value = ${b}(0); - for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { - if (global_id.y < uniforms.M && w + local_id.x < uniforms.K) { - tileQ[TILE_SIZE * local_id.y + local_id.x] = q[qOffset + local_id.y * uniforms.K + w + local_id.x]; - } - if (n + local_id.y < uniforms.N && w + local_id.x < uniforms.K) { - var idx = TILE_SIZE * local_id.y + local_id.x; - ${x&&d?` - if (n + local_id.y < past_sequence_length) { - tileK[idx] = past_key[pastKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; - } else if (n + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { - tileK[idx] = key[kOffset + (n + local_id.y - past_sequence_length) * uniforms.K + w + local_id.x]; - }`:` - if (n + local_id.y < uniforms.kv_sequence_length) { - tileK[idx] = key[kOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; - }`} - ${d?`if (n + local_id.y < present_sequence_length) { - present_key[presentKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x] = tileK[idx]; - }`:``} - } - workgroupBarrier(); - - for (var k: u32 = 0u; k < TILE_SIZE && w+k < uniforms.K; k++) { - value += ${b}(tileQ[TILE_SIZE * local_id.y + k] * tileK[TILE_SIZE * local_id.x + k]); - } - - workgroupBarrier(); - } - - if (global_id.y < uniforms.M && global_id.x < total_sequence_length) { - let headOffset = workgroup_id.z * uniforms.M * uniforms.N; - let outputIdx = headOffset + global_id.y * uniforms.N + global_id.x; - var sum: f32 = ${(()=>{switch(g){case 1:return`value`;case 2:return`value.x + value.y`;case 4:return`value.x + value.y + value.z + value.w`;default:throw Error(`Unsupported components: ${g}`)}})()}; - output[outputIdx] = ${_.type.value} (sum * uniforms.alpha) + ${i?`attention_bias[outputIdx]`:`0.0`}; - } - }`};return{name:`AttentionProbs`,shaderCache:{hint:`${g};${i!==void 0};${r!==void 0};${e}`,inputDependencies:S},getRunData:()=>({outputs:C,dispatchGroup:y,programUniforms:b}),getShaderSource:w}},wi=(e,t,n,r,i,a,o=void 0,s=void 0)=>{let c=a+i.kvSequenceLength,l=i.nReps?i.nReps:1,u=i.vHiddenSize*l,d=e>1&&r,f=i.kvNumHeads?i.kvNumHeads:i.numHeads,p=d?[i.batchSize,f,c,i.headSize]:void 0,m=[i.batchSize,i.sequenceLength,u],h=12,g={x:Math.ceil(i.vHeadSize/h),y:Math.ceil(i.sequenceLength/h),z:i.batchSize*i.numHeads},_=[{type:12,data:i.sequenceLength},{type:12,data:c},{type:12,data:i.vHeadSize},{type:12,data:i.numHeads},{type:12,data:i.headSize},{type:12,data:u},{type:12,data:a},{type:12,data:i.kvSequenceLength},{type:12,data:l}],v=d&&r&&U.size(r.dims)>0,y=[`type`,`type`];v&&y.push(`type`),o&&y.push(`type`),s&&y.push(`type`);let b=[{dims:m,dataType:t.dataType,gpuDataType:0}];d&&b.push({dims:p,dataType:t.dataType,gpuDataType:0});let x=e=>{let i=q(`probs`,t.dataType,t.dims),a=q(`v`,n.dataType,n.dims),c=[i,a];v&&c.push(q(`past_value`,r.dataType,r.dims));let u=o?q(`seq_lens`,o.dataType,o.dims):void 0;o&&c.push(u);let f=s?q(`total_sequence_length_input`,s.dataType,s.dims):void 0;s&&c.push(f);let g=[J(`output`,t.dataType,m)];d&&g.push(J(`present_value`,t.dataType,p));let _=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`v_hidden_size`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` - const TILE_SIZE = ${h}u; - var tileQ: array<${i.type.value}, ${h*h}>; - var tileV: array<${i.type.value}, ${h*h}>; - ${e.registerUniforms(_).declareVariables(...c,...g)} - ${e.mainStart([h,h,1])} - let headIdx = workgroup_id.z % uniforms.num_heads; - let batchIdx = workgroup_id.z / uniforms.num_heads; - let kvHeadIdx = ${l===1?`headIdx`:`headIdx / uniforms.n_reps`}; - let kv_num_heads = ${l===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; - let m = global_id.y; - let n = global_id.x; - let sequence_length = uniforms.M; - var total_sequence_length = uniforms.K; - ${xi(u,f,!0)} - let offsetA = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; - let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; // kvHeadIdx is relative to the batch - ${v&&d?`let pastValueOffset = absKvHeadIdx * uniforms.N * uniforms.past_sequence_length + n;`:``}; - let vOffset = absKvHeadIdx * uniforms.N * uniforms.kv_sequence_length + n; - ${d?`let presentValueOffset = absKvHeadIdx * uniforms.N * uniforms.K + n;`:``} - var value = ${i.type.storage}(0); - for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { - if (m < uniforms.M && w + local_id.x < uniforms.K) { - tileQ[TILE_SIZE * local_id.y + local_id.x] = probs[offsetA + w + local_id.x]; - } - if (n < uniforms.N && w + local_id.y < uniforms.K) { - var idx = TILE_SIZE * local_id.y + local_id.x; - ${v&&d?` - if (w + local_id.y < past_sequence_length) { - tileV[idx] = past_value[pastValueOffset + (w + local_id.y) * uniforms.N]; - } else if (w + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { - tileV[idx] = v[vOffset + (w + local_id.y - past_sequence_length) * uniforms.N]; - } - `:` - if (w + local_id.y < uniforms.kv_sequence_length) { - tileV[idx] = v[vOffset + (w + local_id.y) * uniforms.N]; - }`} - ${d?` - if (w + local_id.y < present_sequence_length) { - present_value[presentValueOffset + (w + local_id.y) * uniforms.N] = tileV[idx]; - }`:``} - } - workgroupBarrier(); - for (var k: u32 = 0u; k < TILE_SIZE && w+k < total_sequence_length; k++) { - value += tileQ[TILE_SIZE * local_id.y + k] * tileV[TILE_SIZE * k + local_id.x]; - } - workgroupBarrier(); - } - - // we need to transpose output from BNSH_v to BSND_v - if (m < uniforms.M && n < uniforms.N) { - let outputIdx = batchIdx * uniforms.M * uniforms.v_hidden_size + m * uniforms.v_hidden_size - + headIdx * uniforms.N + n; - output[outputIdx] = value; - } - }`};return{name:`AttentionScore`,shaderCache:{hint:`${r!==void 0};${e}`,inputDependencies:y},getRunData:()=>({outputs:b,dispatchGroup:g,programUniforms:_}),getShaderSource:x}},Ti=(e,t,n,r,i,a,o,s,c,l,u=void 0,d=void 0)=>{let f=Math.min(e.outputCount,1+(o?1:0)+(s?1:0)),p=f>1?l.pastSequenceLength:0,m=p+l.kvSequenceLength,h=c&&U.size(c.dims)>0?c:void 0,g=[t,n];f>1&&o&&U.size(o.dims)>0&&g.push(o),h&&g.push(h),u&&g.push(u),d&&g.push(d);let _=e.compute(Ci(f,t,n,o,h,l,p,u,d),{inputs:g,outputs:f>1?[-1,1]:[-1]})[0];e.compute(Si(_,l.batchSize,l.numHeads,p,l.sequenceLength,m,u,d),{inputs:u&&d?[_,u,d]:[_],outputs:[]});let v=[_,r];f>1&&s&&U.size(s.dims)>0&&v.push(s),u&&v.push(u),d&&v.push(d),e.compute(wi(f,_,r,s,l,p,u,d),{inputs:v,outputs:f>1?[0,2]:[0]})},Ei=(e,t)=>{let n=[t.batchSize,t.numHeads,t.sequenceLength,t.headSize],r=t.sequenceLength,i=t.inputHiddenSize,a=t.headSize,o=12,s={x:Math.ceil(t.headSize/o),y:Math.ceil(t.sequenceLength/o),z:t.batchSize*t.numHeads},c=[e.inputs[0],e.inputs[1],e.inputs[2]],l=[{type:12,data:r},{type:12,data:i},{type:12,data:a},{type:12,data:t.numHeads},{type:12,data:t.headSize},{type:12,data:t.hiddenSize},{type:12,data:t.hiddenSize+t.hiddenSize+t.vHiddenSize}],u=e=>{let t=J(`output_q`,c[0].dataType,n),r=J(`output_k`,c[0].dataType,n),i=J(`output_v`,c[0].dataType,n),a=q(`input`,c[0].dataType,c[0].dims),s=q(`weight`,c[1].dataType,c[1].dims),l=q(`bias`,c[2].dataType,c[2].dims),u=a.type.storage,d=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`ldb`,type:`u32`}];return` - const TILE_SIZE = ${o}u; - var tileInput: array<${u}, ${o*o}>; - var tileWeightQ: array<${u}, ${o*o}>; - var tileWeightK: array<${u}, ${o*o}>; - var tileWeightV: array<${u}, ${o*o}>; - ${e.registerUniforms(d).declareVariables(a,s,l,t,r,i)} - ${e.mainStart([o,o,1])} - let batchIndex = workgroup_id.z / uniforms.num_heads; - let headNumber = workgroup_id.z % uniforms.num_heads; - let m = global_id.y; - let n = global_id.x; - - let inputOffset = batchIndex * (uniforms.M * uniforms.K) + m * uniforms.K; - let biasOffsetQ = headNumber * uniforms.head_size; - let biasOffsetK = uniforms.hidden_size + biasOffsetQ; - let biasOffsetV = uniforms.hidden_size + biasOffsetK; - - var valueQ = ${u}(0); - var valueK = ${u}(0); - var valueV = ${u}(0); - for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { - if (m < uniforms.M && w + local_id.x < uniforms.K) { - tileInput[TILE_SIZE * local_id.y + local_id.x] = input[inputOffset + w + local_id.x]; - } - if (n < uniforms.N && w + local_id.y < uniforms.K) { - let offset = n + (w + local_id.y) * uniforms.ldb; - tileWeightQ[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetQ + offset]; - tileWeightK[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetK + offset]; - tileWeightV[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetV + offset]; - } - workgroupBarrier(); - for (var k: u32 = 0u; k({outputs:[{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0}],dispatchGroup:s,programUniforms:l}),getShaderSource:u},{inputs:c,outputs:[-1,-1,-1]})},Di=(e,t)=>{let n=bi(e.inputs,t),[r,i,a]=Ei(e,n);return Ti(e,r,i,a,e.inputs[4],void 0,void 0,void 0,e.inputs[5],n)}}),ki,Ai,ji,Mi,Ni=j(()=>{"use strict";et(),V(),W(),Zn(),Y(),ki=(e,t)=>{if(!e||e.length!==5)throw Error(`BatchNormalization requires 5 inputs`);let n=(e,t,n)=>{let r=t.length;if(r!==e.length)throw Error(`${n}: num dimensions != ${r}`);t.forEach((t,r)=>{if(t!==e[r])throw Error(`${n}: dim[${r}] do not match`)})};if(e[0].dims.length>1){let r=t.format===`NHWC`?t.spatial?e[0].dims.slice(-1):e[0].dims.slice(-1).concat(e[0].dims.slice(1,e[0].dims.length-1)):e[0].dims.slice(1,t.spatial?2:void 0);n(e[1].dims,r,`Invalid input scale`),n(e[2].dims,r,`Invalid input B`),n(e[3].dims,r,`Invalid input mean`),n(e[4].dims,r,`Invalid input var`)}else n(e[1].dims,[1],`Invalid input scale`),n(e[2].dims,[1],`Invalid input B`),n(e[3].dims,[1],`Invalid input mean`),n(e[4].dims,[1],`Invalid input var`)},Ai=(e,t)=>{let{epsilon:n,spatial:r,format:i}=t,a=e[0].dims,o=r?nr(a[a.length-1]):1,s=i===`NHWC`&&a.length>1?o:1,c=U.size(a)/o,l=r,u=l?a.length:a,d=q(`x`,e[0].dataType,e[0].dims,o),f=q(`scale`,e[1].dataType,e[1].dims,s),p=q(`bias`,e[2].dataType,e[2].dims,s),m=q(`inputMean`,e[3].dataType,e[3].dims,s),h=q(`inputVar`,e[4].dataType,e[4].dims,s),g=J(`y`,e[0].dataType,u,o),_=()=>{let e=``;if(r)e=`let cOffset = ${a.length===1?`0u`:i===`NHWC`?`outputIndices[${a.length-1}] / ${o}`:`outputIndices[1]`};`;else if(i===`NCHW`)e=` - ${g.indicesSet(`outputIndices`,`0`,`0`)} - let cOffset = ${g.indicesToOffset(`outputIndices`)};`;else{e=`var cIndices = ${f.type.indices}(0); - cIndices[0] = outputIndices[${a.length-1}];`;for(let t=1;t` - const epsilon = ${n}; - ${e.registerUniform(`outputSize`,`u32`).declareVariables(d,f,p,m,h,g)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - var outputIndices = ${g.offsetToIndices(`global_idx * ${o}`)}; - ${_()} - let scale = ${f.getByOffset(`cOffset`)}; - let bias = ${p.getByOffset(`cOffset`)}; - let inputMean = ${m.getByOffset(`cOffset`)}; - let inputVar = ${h.getByOffset(`cOffset`)}; - let x = ${d.getByOffset(`global_idx`)}; - let value = (x - inputMean) * inverseSqrt(inputVar + epsilon) * scale + bias; - ${g.setByOffset(`global_idx`,`value`)} - }`;return{name:`BatchNormalization`,shaderCache:{hint:`${t.epsilon}_${t.format}_${r}_${o}`,inputDependencies:l?[`rank`,`type`,`type`,`type`,`type`]:void 0},getShaderSource:v,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l?[{type:12,data:c},...G(a)]:[{type:12,data:c}]})}},ji=e=>Xn(e),Mi=(e,t)=>{let{inputs:n,outputCount:r}=e,i=ji({...t,outputCount:r});if(R.webgpu.validateInputContent&&ki(n,i),t.trainingMode)throw Error(`BatchNormalization trainingMode is not supported yet.`);e.compute(Ai(n,i))}}),Pi,Fi,Ii,Li=j(()=>{"use strict";W(),Y(),Pi=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![320,640,1280].includes(e[0].dims[2]))throw Error(`number of channels should be 320, 640 or 1280`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},Fi=e=>{let t=e[0].dims,n=e[0].dims[2],r=U.size(t)/4,i=e[0].dataType,a=q(`input`,i,t,4),o=q(`bias`,i,[n],4),s=q(`residual`,i,t,4),c=J(`output`,i,t,4);return{name:`BiasAdd`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(r/64)}}),getShaderSource:e=>` - const channels = ${n}u / 4; - ${e.declareVariables(a,o,s,c)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(r)} - let value = ${a.getByOffset(`global_idx`)} - + ${o.getByOffset(`global_idx % channels`)} + ${s.getByOffset(`global_idx`)}; - ${c.setByOffset(`global_idx`,`value`)} - }`}},Ii=e=>{Pi(e.inputs),e.compute(Fi(e.inputs))}}),Ri,zi,Bi,Vi,Hi,Ui,Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,$i,ea,ta,na,ra,ia,aa,oa,sa,ca,la,ua,da,fa,pa,ma,ha,ga,_a,va,ya,ba,xa,Sa,Ca,wa,Ta,Ea,Da,Oa,ka=j(()=>{"use strict";V(),W(),Zn(),Y(),Ri=(e,t,n,r,i,a,o)=>{let s=Math.ceil(t/4),c=``;c=typeof i==`string`?`${i}(a)`:i(`a`);let l=q(`inputData`,n,[s],4),u=J(`outputData`,r,[s],4),d=[{name:`vec_size`,type:`u32`}];return o&&d.push(...o),` - ${e.registerUniforms(d).declareVariables(l,u)} - - ${a??``} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - - let a = ${l.getByOffset(`global_idx`)}; - ${u.setByOffset(`global_idx`,c)} - }`},zi=(e,t,n,r,i,a=e.dataType,o,s)=>{let c=[{type:12,data:Math.ceil(U.size(e.dims)/4)}];return o&&c.push(...o),{name:t,shaderCache:{hint:i,inputDependencies:[`type`]},getShaderSource:t=>Ri(t,U.size(e.dims),e.dataType,a,n,r,s),getRunData:t=>({outputs:[{dims:e.dims,dataType:a}],dispatchGroup:{x:Math.ceil(U.size(t[0].dims)/64/4)},programUniforms:c})}},Bi=e=>{e.compute(zi(e.inputs[0],`Abs`,`abs`))},Vi=e=>{e.compute(zi(e.inputs[0],`Acos`,`acos`))},Hi=e=>{e.compute(zi(e.inputs[0],`Acosh`,`acosh`))},Ui=e=>{e.compute(zi(e.inputs[0],`Asin`,`asin`))},Wi=e=>{e.compute(zi(e.inputs[0],`Asinh`,`asinh`))},Gi=e=>{e.compute(zi(e.inputs[0],`Atan`,`atan`))},Ki=e=>{e.compute(zi(e.inputs[0],`Atanh`,`atanh`))},qi=e=>Xn(e),Ji=(e,t)=>{let n;switch(t.to){case 10:n=`vec4`;break;case 1:n=`vec4`;break;case 12:n=`vec4`;break;case 6:n=`vec4`;break;case 9:n=`vec4`;break;default:throw RangeError(`not supported type (specified in attribute 'to' from 'Cast' operator): ${t.to}`)}e.compute(zi(e.inputs[0],`Cast`,n,void 0,t.cacheKey,t.to))},Yi=e=>{let t,n,r=e.length>=2&&e[1].data!==0,i=e.length>=3&&e[2].data!==0;switch(e[0].dataType){case 1:t=r?e[1].getFloat32Array()[0]:-34028234663852886e22,n=i?e[2].getFloat32Array()[0]:34028234663852886e22;break;case 10:t=r?e[1].getUint16Array()[0]:64511,n=i?e[2].getUint16Array()[0]:31743;break;default:throw Error(`Unsupport data type`)}return Xn({min:t,max:n})},Xi=(e,t)=>{let n=t||Yi(e.inputs),r=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Clip`,e=>`clamp(${e}, vec4<${r}>(uniforms.min), vec4<${r}>(uniforms.max))`,void 0,n.cacheKey,void 0,[{type:e.inputs[0].dataType,data:n.min},{type:e.inputs[0].dataType,data:n.max}],[{name:`min`,type:r},{name:`max`,type:r}]),{inputs:[0]})},Zi=e=>{e.compute(zi(e.inputs[0],`Ceil`,`ceil`))},Qi=e=>{e.compute(zi(e.inputs[0],`Cos`,`cos`))},$i=e=>{e.compute(zi(e.inputs[0],`Cosh`,`cosh`))},ea=e=>Xn(e),ta=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Elu`,e=>`elu_vf32(${e})`,` - const elu_alpha_ = ${n}(${t.alpha}); - - fn elu_f32(a: ${n}) -> ${n} { - return select((exp(a) - 1.0) * elu_alpha_, a, a >= 0.0); - } - - fn elu_vf32(v: vec4<${n}>) -> vec4<${n}> { - return vec4(elu_f32(v.x), elu_f32(v.y), elu_f32(v.z), elu_f32(v.w)); - }`,t.cacheKey))},na=(e=`f32`)=>` -const r0: ${e} = 0.3275911; -const r1: ${e} = 0.254829592; -const r2: ${e} = -0.284496736; -const r3: ${e} = 1.421413741; -const r4: ${e} = -1.453152027; -const r5: ${e} = 1.061405429; - -fn erf_vf32(v: vec4<${e}>) -> vec4<${e}> { - let absv = abs(v); - let x = 1.0 / (1.0 + r0 * absv); - return sign(v) * (1.0 - ((((r5 * x + r4) * x + r3) * x + r2) * x + r1) * x * exp(-absv * absv)); -}`,ra=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Erf`,e=>`erf_vf32(${e})`,na(t)))},ia=e=>{e.compute(zi(e.inputs[0],`Exp`,`exp`))},aa=e=>{e.compute(zi(e.inputs[0],`Floor`,`floor`))},oa=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Gelu`,e=>`0.5 * ${e} * (1.0 + erf_vf32(${e} * 0.7071067811865475))`,na(t)))},sa=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`LeakyRelu`,e=>`select(leaky_relu_alpha_ * ${e}, ${e}, ${e} >= vec4<${n}>(0.0))`,`const leaky_relu_alpha_ = ${n}(${t.alpha});`,t.cacheKey))},ca=e=>{e.compute(zi(e.inputs[0],`Not`,e=>`!${e}`))},la=e=>{e.compute(zi(e.inputs[0],`Neg`,e=>`-${e}`))},ua=e=>{e.compute(zi(e.inputs[0],`Reciprocal`,e=>`1.0/${e}`))},da=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Relu`,e=>`select(vec4<${t}>(0.0), ${e}, ${e} > vec4<${t}>(0.0))`))},fa=e=>{e.compute(zi(e.inputs[0],`Sigmoid`,e=>`(1.0 / (1.0 + exp(-${e})))`))},pa=e=>Xn(e),ma=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`HardSigmoid`,e=>`max(vec4<${n}>(0.0), min(vec4<${n}>(1.0), ${t.alpha} * ${e} + vec4<${n}>(${t.beta})))`,void 0,t.cacheKey))},ha=e=>{e.compute(zi(e.inputs[0],`Sin`,`sin`))},ga=e=>{e.compute(zi(e.inputs[0],`Sinh`,`sinh`))},_a=e=>{e.compute(zi(e.inputs[0],`Sqrt`,`sqrt`))},va=e=>{e.compute(zi(e.inputs[0],`Tan`,`tan`))},ya=e=>`sign(${e}) * (1 - exp(-2 * abs(${e}))) / (1 + exp(-2 * abs(${e})))`,ba=e=>{e.compute(zi(e.inputs[0],`Tanh`,ya))},xa=(e=`f32`)=>` -const fast_gelu_a: ${e} = 0.5; -const fast_gelu_b: ${e} = 0.7978845608028654; -const fast_gelu_c: ${e} = 0.035677408136300125; - -fn tanh_v(v: vec4<${e}>) -> vec4<${e}> { - return ${ya(`v`)}; -} -`,Sa=e=>`(fast_gelu_a + fast_gelu_a * tanh_v(${e} * (fast_gelu_c * ${e} * ${e} + fast_gelu_b))) * ${e}`,Ca=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`FastGelu`,Sa,xa(t),void 0,e.inputs[0].dataType))},wa=(e,t)=>{let n=tr(e.inputs[0].dataType);return e.compute(zi(e.inputs[0],`ThresholdedRelu`,e=>`select(vec4<${n}>(0.0), ${e}, ${e} > thresholded_relu_alpha_)`,`const thresholded_relu_alpha_ = vec4<${n}>(${t.alpha});`,t.cacheKey)),0},Ta=e=>{e.compute(zi(e.inputs[0],`Log`,`log`))},Ea=(e,t)=>` -const alpha = vec4<${e}>(${t}); -const one = ${e}(1.0); -const zero = ${e}(0.0); - -fn quick_gelu_impl(x: vec4<${e}>) -> vec4<${e}> { - let v = x *alpha; - var x1 : vec4<${e}>; - for (var i = 0; i < 4; i = i + 1) { - if (v[i] >= zero) { - x1[i] = one / (one + exp(-v[i])); - } else { - x1[i] = one - one / (one + exp(v[i])); - } - } - return x * x1; -} -`,Da=e=>`quick_gelu_impl(${e})`,Oa=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`QuickGelu`,Da,Ea(n,t.alpha),t.cacheKey,e.inputs[0].dataType))}}),Aa,ja,Ma,Na=j(()=>{"use strict";W(),Y(),ka(),Aa=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![2560,5120,10240].includes(e[0].dims[2]))throw Error(`hidden state should be 2560, 5120 or 10240`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},ja=e=>{let t=e[0].dims.slice();t[2]/=2;let n=q(`input`,e[0].dataType,e[0].dims,4),r=q(`bias`,e[0].dataType,[e[0].dims[2]],4),i=J(`output`,e[0].dataType,t,4),a=U.size(t)/4,o=er(e[0].dataType);return{name:`BiasSplitGelu`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)}}),getShaderSource:t=>` - const M_SQRT2 = sqrt(2.0); - const halfChannels = ${e[0].dims[2]/4/2}u; - - ${t.declareVariables(n,r,i)} - - ${na(o)} - - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(a)} - let biasIdx = global_idx % halfChannels; - let batchIndex = global_idx / halfChannels; - let inputOffset = biasIdx + batchIndex * halfChannels * 2; - let valueLeft = input[inputOffset] + bias[biasIdx]; - let valueRight = input[inputOffset + halfChannels] + bias[biasIdx + halfChannels]; - let geluRight = valueRight * 0.5 * (erf_vf32(valueRight / M_SQRT2) + 1); - - ${i.setByOffset(`global_idx`,`valueLeft * geluRight`)} - }`}},Ma=e=>{Aa(e.inputs),e.compute(ja(e.inputs))}}),Pa,Fa,Ia,La,Ra,za,Ba,Va,Ha,Ua,Wa,Ga,Ka,qa=j(()=>{"use strict";V(),W(),Y(),Pa=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f,p;typeof s==`string`?f=p=(e,t)=>`${s}((${e}),(${t}))`:typeof s==`function`?f=p=s:(f=s.scalar,p=s.vector);let m=J(`outputData`,u,r.length,4),h=q(`aData`,c,t.length,4),g=q(`bData`,l,n.length,4),_;if(i)if(a){let e=U.size(t)===1,r=U.size(n)===1,i=t.length>0&&t[t.length-1]%4==0,a=n.length>0&&n[n.length-1]%4==0;_=e||r?m.setByOffset(`global_idx`,p(e?`${h.type.value}(${h.getByOffset(`0`)}.x)`:h.getByOffset(`global_idx`),r?`${g.type.value}(${g.getByOffset(`0`)}.x)`:g.getByOffset(`global_idx`))):` - let outputIndices = ${m.offsetToIndices(`global_idx * 4u`)}; - let offsetA = ${h.broadcastedIndicesToOffset(`outputIndices`,m)}; - let offsetB = ${g.broadcastedIndicesToOffset(`outputIndices`,m)}; - ${m.setByOffset(`global_idx`,p(o||i?h.getByOffset(`offsetA / 4u`):`${h.type.value}(${h.getByOffset(`offsetA / 4u`)}[offsetA % 4u])`,o||a?g.getByOffset(`offsetB / 4u`):`${g.type.value}(${g.getByOffset(`offsetB / 4u`)}[offsetB % 4u])`))} - `}else _=m.setByOffset(`global_idx`,p(h.getByOffset(`global_idx`),g.getByOffset(`global_idx`)));else{if(!a)throw Error(`no necessary to use scalar implementation for element-wise binary op implementation.`);let e=(e,t,n=``)=>{let r=`aData[indexA${t}][componentA${t}]`,i=`bData[indexB${t}][componentB${t}]`;return` - let outputIndices${t} = ${m.offsetToIndices(`global_idx * 4u + ${t}u`)}; - let offsetA${t} = ${h.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; - let offsetB${t} = ${g.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; - let indexA${t} = offsetA${t} / 4u; - let indexB${t} = offsetB${t} / 4u; - let componentA${t} = offsetA${t} % 4u; - let componentB${t} = offsetB${t} % 4u; - ${e}[${t}] = ${n}(${f(r,i)}); - `};_=u===9?` - var data = vec4(0); - ${e(`data`,0,`u32`)} - ${e(`data`,1,`u32`)} - ${e(`data`,2,`u32`)} - ${e(`data`,3,`u32`)} - outputData[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` - ${e(`outputData[global_idx]`,0)} - ${e(`outputData[global_idx]`,1)} - ${e(`outputData[global_idx]`,2)} - ${e(`outputData[global_idx]`,3)} - `}return` - ${e.registerUniform(`vec_size`,`u32`).declareVariables(h,g,m)} - - ${d??``} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - ${_} - }`},Fa=(e,t,n,r,i,a,o=n.dataType)=>{let s=n.dims.map(e=>Number(e)??1),c=r.dims.map(e=>Number(e)??1),l=!U.areEqual(s,c),u=s,d=U.size(s),f=!1,p=!1,m=[l];if(l){let e=gn.calcShape(s,c,!1);if(!e)throw Error(`Can't perform binary op on the given tensors`);u=e.slice(),d=U.size(u);let t=U.size(s)===1,n=U.size(c)===1,r=s.length>0&&s[s.length-1]%4==0,i=c.length>0&&c[c.length-1]%4==0;m.push(t),m.push(n),m.push(r),m.push(i);let a=1;for(let e=1;ee.toString()).join(`_`),inputDependencies:[`rank`,`rank`]},getShaderSource:e=>Pa(e,s,c,u,f,l,p,i,n.dataType,r.dataType,o,a),getRunData:()=>({outputs:[{dims:u,dataType:o}],dispatchGroup:{x:Math.ceil(d/64/4)},programUniforms:[{type:12,data:Math.ceil(U.size(u)/4)},...G(s,c,u)]})}},Ia=(e,t,n,r,i,a)=>{e.compute(Fa(t,i??``,e.inputs[0],e.inputs[1],n,r,a))},La=e=>{Ia(e,`Add`,(e,t)=>`${e}+${t}`)},Ra=e=>{Ia(e,`Div`,(e,t)=>`${e}/${t}`)},za=e=>{Ia(e,`Equal`,{scalar:(e,t)=>`u32(${e}==${t})`,vector:(e,t)=>`vec4(${e}==${t})`},void 0,void 0,9)},Ba=e=>{Ia(e,`Mul`,(e,t)=>`${e}*${t}`)},Va=e=>{let t=q(`input`,e.inputs[0].dataType,e.inputs[0].dims).type.value;Ia(e,`Pow`,{scalar:(e,t)=>`pow_custom(${e},${t})`,vector:(e,t)=>`pow_vector_custom(${e},${t})`},` - fn pow_custom(a : ${t}, b : ${t}) -> ${t} { - if (b == ${t}(0.0)) { - return ${t}(1.0); - } else if (a < ${t}(0.0) && f32(b) != floor(f32(b))) { - return ${t}(pow(f32(a), f32(b))); // NaN - } - return select(sign(a), ${t}(1.0), round(f32(abs(b) % ${t}(2.0))) != 1.0) * ${t}(${t===`i32`?`round`:``}(pow(f32(abs(a)), f32(b)))); - } - fn pow_vector_custom(a : vec4<${t}>, b : vec4<${t}>) -> vec4<${t}> { - // TODO: implement vectorized pow - return vec4<${t}>(pow_custom(a.x, b.x), pow_custom(a.y, b.y), pow_custom(a.z, b.z), pow_custom(a.w, b.w)); - } - `)},Ha=e=>{Ia(e,`Sub`,(e,t)=>`${e}-${t}`)},Ua=e=>{Ia(e,`Greater`,{scalar:(e,t)=>`u32(${e}>${t})`,vector:(e,t)=>`vec4(${e}>${t})`},void 0,void 0,9)},Wa=e=>{Ia(e,`Less`,{scalar:(e,t)=>`u32(${e}<${t})`,vector:(e,t)=>`vec4(${e}<${t})`},void 0,void 0,9)},Ga=e=>{Ia(e,`GreaterOrEqual`,{scalar:(e,t)=>`u32(${e}>=${t})`,vector:(e,t)=>`vec4(${e}>=${t})`},void 0,void 0,9)},Ka=e=>{Ia(e,`LessOrEqual`,{scalar:(e,t)=>`u32(${e}<=${t})`,vector:(e,t)=>`vec4(${e}<=${t})`},void 0,void 0,9)}}),Ja,Ya,Xa,Za,Qa,$a,eo=j(()=>{"use strict";V(),W(),Zn(),Y(),Ja=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);let n=0,r=e[n],i=r.dataType,a=r.dims.length;e.forEach((e,o)=>{if(o!==n){if(e.dataType!==i)throw Error(`input tensors should be one type`);if(e.dims.length!==a)throw Error(`input tensors should have the same shape`);e.dims.forEach((e,n)=>{if(n!==t&&e!==r.dims[n])throw Error(`non concat dimensions must match`)})}})},Ya=(e,t)=>` - fn calculateInputIndex(index: u32) -> u32 { - let sizeInConcatAxis = array(${t}); - for (var i: u32 = 0u; i < ${e}; i += 1u ) { - if (index < sizeInConcatAxis[i]) { - return i; - } - } - return ${e}u; - }`,Xa=(e,t)=>{let n=e.length,r=[];for(let i=0;i{let i=U.size(n),a=Array(e.length),o=Array(e.length),s=0,c=[],l=[],u=[{type:12,data:i}];for(let n=0;n`uniforms.sizeInConcatAxis${e}`).join(`,`),m=t=>` - - ${(()=>{t.registerUniform(`outputSize`,`u32`);for(let n=0;n(${p}); - ${f} -= sizeInConcatAxis[inputIndex - 1u]; - } - - ${Xa(o,d)} - }`;return{name:`Concat`,shaderCache:{hint:`${t}`,inputDependencies:c},getRunData:()=>({outputs:[{dims:n,dataType:r}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:u}),getShaderSource:m}},Qa=(e,t)=>{let n=e.inputs,r=n[0].dims,i=U.normalizeAxis(t.axis,r.length);Ja(n,i);let a=r.slice();a[i]=n.reduce((e,t)=>e+(t.dims.length>i?t.dims[i]:0),0);let o=n.filter(e=>U.size(e.dims)>0);e.compute(Za(o,i,a,n[0].dataType),{inputs:o})},$a=e=>Xn({axis:e.axis})}),to,no,ro,io,ao=j(()=>{"use strict";V(),W(),to=(e,t,n=`f32`)=>{switch(e.activation){case`Relu`:return`value = max(value, ${t}(0.0));`;case`Sigmoid`:return`value = (${t}(1.0) / (${t}(1.0) + exp(-value)));`;case`Clip`:return`value = clamp(value, ${t}(${n}(uniforms.clip_min)), ${t}(${n}(uniforms.clip_max)));`;case`HardSigmoid`:return`value = max(${t}(0.0), min(${t}(1.0), ${n}(uniforms.alpha) * value + ${n}(uniforms.beta)));`;case`LeakyRelu`:return`value = select(${n}(uniforms.alpha) * value, value, value >= ${t}(0.0));`;case`Tanh`:return`let e2x = exp(-2.0 * abs(value)); - value = sign(value) * (1.0 - e2x) / (1.0 + e2x); - `;case``:return``;default:throw Error(`Unsupported activation ${e.activation}`)}},no=(e,t)=>{e.activation===`Clip`?t.push({type:1,data:e.clipMax},{type:1,data:e.clipMin}):e.activation===`HardSigmoid`?t.push({type:1,data:e.alpha},{type:1,data:e.beta}):e.activation===`LeakyRelu`&&t.push({type:1,data:e.alpha})},ro=(e,t)=>{e.activation===`Clip`?t.push({name:`clip_max`,type:`f32`},{name:`clip_min`,type:`f32`}):e.activation===`HardSigmoid`?t.push({name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}):e.activation===`LeakyRelu`&&t.push({name:`alpha`,type:`f32`})},io=e=>{let t=e?.activation||``;if(t===`HardSigmoid`){let[n,r]=e?.activation_params||[.2,.5];return{activation:t,alpha:n,beta:r}}else if(t===`Clip`){let[n,r]=e?.activation_params||[yn,bn];return{activation:t,clipMax:r,clipMin:n}}else if(t===`LeakyRelu`){let[n]=e?.activation_params||[.01];return{activation:t,alpha:n}}return{activation:t}}}),oo,so,co=j(()=>{"use strict";oo=(e,t)=>{switch(e){case 1:return t;case 2:return`vec2<${t}>`;case 3:return`vec3<${t}>`;case 4:return`vec4<${t}>`;default:throw Error(`${e}-component is not supported.`)}},so=e=>` - ${e?`value = value + getBiasByOutputCoords(coords);`:``} - `}),lo,uo=j(()=>{"use strict";lo=e=>` -fn getIndexFromCoords4D(coords : vec4, shape : vec4) -> i32 { - return dot(coords, vec4( - shape.y * shape.z * shape.w, shape.z * shape.w, shape.w, 1)); -} -fn getOutputIndexFromCoords(coords : vec4) -> i32 { - return dot(coords, vec4( - i32(${e}.x), i32(${e}.y), i32(${e}.z), 1)); -} -`}),fo,po,mo=j(()=>{"use strict";V(),W(),Y(),ao(),fo=(e,t,n,r,i)=>{let a=r-n;return` - ${Array.from({length:n}).map((n,o)=>` - if (${K(t.shape,o,t.rank)} != 1) { - ${t.indicesSet(e,o,K(i,o+a,r))} - } else { - ${t.indicesSet(e,o,0)} - }`).join(``)} -`},po=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o[o.length-2],l=s[s.length-1],u=o[o.length-1],d=nr(l),f=nr(u),p=nr(c),m=U.size(n)/d/p,h=e.length>2,g=r?r.slice(0,-2):n.slice(0,-2),_=[U.size(g),c,l],v=[{type:12,data:m},{type:12,data:c},{type:12,data:l},{type:12,data:u}];no(t,v),v.push(...G(g,o,s)),h&&v.push(...G(e[2].dims)),v.push(...G(_));let y=r=>{let a=cr(`batch_dims`,e[0].dataType,g.length),c=q(`a`,e[0].dataType,o.length,f),l=q(`b`,e[1].dataType,s.length,d),u=J(`output`,e[0].dataType,_.length,d),m=er(u.type.tensor),v=to(t,u.type.value,m),y=[c,l],b=``;if(h){let t=i?d:1;y.push(q(`bias`,e[2].dataType,e[2].dims.length,t)),b=`${i?`value += bias[col / ${t}];`:`value += ${u.type.value}(bias[row + i]);`}`}let x=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`}];ro(t,x);let S=()=>{let e=`var a_data: ${c.type.value};`;for(let t=0;t; - for (var k: u32 = 0u; k < uniforms.K; k = k + ${f}) { - ${S()} - } - for (var i = 0u; i < ${p}u; i++) { - var value = values[i]; - ${b} - ${v} - let cur_indices = ${u.type.indices}(batch, row + i, col); - let offset = ${u.indicesToOffset(`cur_indices`)}; - ${u.setByOffset(`offset / ${d}`,`value`)}; - } - } - `};return{name:`MatMulNaive`,shaderCache:{hint:`${t.activation};${d};${f};${p};${i}`,inputDependencies:h?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:v}),getShaderSource:y}}}),ho,go,_o,vo,yo,bo,xo,So,Co=j(()=>{"use strict";V(),W(),Y(),ao(),mo(),co(),ho=(e,t)=>e?` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - kStart + inputRow, - globalRowStart / innerElementSize + inputCol${t?`, batchIndices`:``}); - `:` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - globalRow + innerRow, - kStart / innerElementSize + inputCol${t?`, batchIndices`:``}); - `,go=(e,t)=>e?` - let ACached0 = mm_Asub[k * innerElementSize][localRow]; - let ACached1 = mm_Asub[k * innerElementSize + 1][localRow]; - let ACached2 = mm_Asub[k * innerElementSize + 2][localRow]; - ${t===3?``:`let ACached3 = mm_Asub[k * innerElementSize + 3][localRow];`} - for (var i = 0; i < rowPerThread; i = i + 1) { - acc[i] = BCached0 * ACached0[i] + acc[i]; - acc[i] = BCached1 * ACached1[i] + acc[i]; - acc[i] = BCached2 * ACached2[i] + acc[i]; - ${t===3?``:`acc[i] = BCached3 * ACached3[i] + acc[i];`} - }`:` - for (var i = 0; i < rowPerThread; i = i + 1) { - let ACached = mm_Asub[tileRow + i][k]; - acc[i] = BCached0 * ACached.x + acc[i]; - acc[i] = BCached1 * ACached.y + acc[i]; - acc[i] = BCached2 * ACached.z + acc[i]; - ${t===3?``:`acc[i] = BCached3 * ACached.w + acc[i];`} - }`,_o=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32)=>{let c=t[1]*e[1],l=t[0]*e[0],u=i?c:a,d=i?a:c,f=u/t[0],p=a/t[1];if(!((i&&f===4&&e[1]===4||!i&&(f===3||f===4))&&u%t[0]===0&&a%t[1]===0&&e[0]===4))throw Error(`If transposeA ${i} is true, innerElementSize ${f} and workPerThread[1] ${e[1]} must be 4. - Otherwise, innerElementSize ${f} must be 3 or 4. - tileAWidth ${u} must be divisible by workgroupSize[0]${t[0]}. tileInner ${a} must be divisible by workgroupSize[1] ${t[1]}. colPerThread ${e[0]} must be 4.`);return` -var mm_Asub: array, ${u/f}>, ${d}>; -var mm_Bsub: array, ${l/e[0]}>, ${a}>; - -const rowPerThread = ${e[1]}; -const colPerThread = ${e[0]}; -const innerElementSize = ${f}; -const tileInner = ${a}; - -@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) -fn main(@builtin(local_invocation_id) localId : vec3, - @builtin(global_invocation_id) globalId : vec3, - @builtin(workgroup_id) workgroupId : vec3) { - let localRow = i32(localId.y); - let tileRow = localRow * rowPerThread; - let tileCol = i32(localId.x); - - let globalRow =i32(globalId.y) * rowPerThread; - let globalCol = i32(globalId.x); - let batch = ${o?`0`:`i32(globalId.z)`}; - ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} - let globalRowStart = i32(workgroupId.y) * ${c}; - - let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; - var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; - - var acc: array, rowPerThread>; - - // Loop over shared dimension. - let tileRowB = localRow * ${p}; - for (var t = 0; t < num_tiles; t = t + 1) { - // Load one tile of A into local memory. - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - let inputRow = tileRow + innerRow; - let inputCol = tileCol; - ${ho(i,r)} - } - - // Load one tile of B into local memory. - for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { - let inputRow = tileRowB + innerRow; - let inputCol = tileCol; - mm_Bsub[inputRow][inputCol] = mm_readB(batch, kStart + inputRow, globalCol${r?`, batchIndices`:``}); - } - kStart = kStart + tileInner; - workgroupBarrier(); - - // Compute acc values for a single thread. - for (var k = 0; k < tileInner / innerElementSize; k = k + 1) { - let BCached0 = mm_Bsub[k * innerElementSize][tileCol]; - let BCached1 = mm_Bsub[k * innerElementSize + 1][tileCol]; - let BCached2 = mm_Bsub[k * innerElementSize + 2][tileCol]; - ${f===3?``:`let BCached3 = mm_Bsub[k * innerElementSize + 3][tileCol];`} - - ${go(i,f)} - } - - workgroupBarrier(); - } - - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - mm_write(batch, globalRow + innerRow, globalCol, acc[innerRow]); - } -}`},vo=(e,t)=>e?` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - kStart + inputRow, - globalRowStart + inputCol${t?`, batchIndices`:``}); - `:` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - globalRowStart + inputRow, - kStart + inputCol${t?`, batchIndices`:``}); - `,yo=e=>e?`let ACached = mm_Asub[k][tileRow + innerRow];`:`let ACached = mm_Asub[tileRow + innerRow][k];`,bo=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32,c=!1)=>{let l=e[1]*t[1],u=e[0]*t[0],d=i?l:a,f=i?a:l;if(!(f%t[1]===0&&d%t[0]===0&&a%t[1]===0))throw Error(`tileAHight ${f} must be divisible by workgroupSize[1]${t[1]}, tileAWidth ${d} must be divisible by workgroupSize[0]${t[0]}, tileInner ${a} must be divisible by workgroupSize[1]${t[1]}`);let p=f/t[1],m=d/t[0],h=a/t[1],g=c?` - let localRow = i32(localId.y); - let localCol = i32(localId.x); - let globalRowStart = i32(workgroupId.y) * ${l}; - let globalColStart = i32(workgroupId.x) * ${u}; - - // Loop over shared dimension. - for (var t = 0; t < num_tiles; t = t + 1) { - // Load one tile of A into local memory. - for (var inputRow = localRow; inputRow < ${f}; inputRow = inputRow + ${t[1]}) { - for (var inputCol = localCol; inputCol < ${d}; inputCol = inputCol + ${t[0]}) { - ${vo(i,r)} - } - } - // Load one tile of B into local memory. - for (var inputRow = localRow; inputRow < ${a}; inputRow = inputRow + ${t[1]}) { - for (var inputCol = localCol; inputCol < ${u}; inputCol = inputCol + ${t[0]}) { - mm_Bsub[inputRow][inputCol] = mm_readB(batch, - kStart + inputRow, - globalColStart + inputCol${r?`, batchIndices`:``}); - } - } - kStart = kStart + tileInner; - workgroupBarrier(); - - // Compute acc values for a single thread. - var BCached : array<${n}, colPerThread>; - for (var k = 0; k < tileInner; k = k + 1) { - for (var inner = 0; inner < colPerThread; inner = inner + 1) { - BCached[inner] = mm_Bsub[k][localCol + inner * ${t[0]}]; - } - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - let ACached = ${i?`mm_Asub[k][localRow + innerRow * ${t[1]}];`:`mm_Asub[localRow + innerRow * ${t[1]}][k];`} - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - acc[innerRow][innerCol] = acc[innerRow][innerCol] + - ACached * BCached[innerCol]; - } - } - } - workgroupBarrier(); - } - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - let gRow = globalRowStart + localRow + innerRow * ${t[1]}; - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - let gCol = globalColStart + localCol + innerCol * ${t[0]}; - mm_write(batch, gRow, gCol, acc[innerRow][innerCol]); - } - } - `:` -let tileRow = i32(localId.y) * rowPerThread; -let tileCol = i32(localId.x) * colPerThread; - -let globalRow = i32(globalId.y) * rowPerThread; -let globalCol = i32(globalId.x) * colPerThread; -let globalRowStart = i32(workgroupId.y) * ${l}; - -let tileRowA = i32(localId.y) * ${p}; -let tileColA = i32(localId.x) * ${m}; -let tileRowB = i32(localId.y) * ${h}; -// Loop over shared dimension. -for (var t = 0; t < num_tiles; t = t + 1) { - // Load one tile of A into local memory. - for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { - for (var innerCol = 0; innerCol < ${m}; innerCol = innerCol + 1) { - let inputRow = tileRowA + innerRow; - let inputCol = tileColA + innerCol; - ${vo(i,r)} - } - } - - // Load one tile of B into local memory. - for (var innerRow = 0; innerRow < ${h}; innerRow = innerRow + 1) { - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - let inputRow = tileRowB + innerRow; - let inputCol = tileCol + innerCol; - mm_Bsub[inputRow][inputCol] = mm_readB(batch, - kStart + inputRow, - globalCol + innerCol${r?`, batchIndices`:``}); - } - } - kStart = kStart + tileInner; - workgroupBarrier(); - - // Compute acc values for a single thread. - var BCached : array<${n}, colPerThread>; - for (var k = 0; k < tileInner; k = k + 1) { - for (var inner = 0; inner < colPerThread; inner = inner + 1) { - BCached[inner] = mm_Bsub[k][tileCol + inner]; - } - - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - ${yo(i)} - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - acc[innerRow][innerCol] = acc[innerRow][innerCol] + ACached * BCached[innerCol]; - } - } - } - - workgroupBarrier(); -} - -for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - mm_write(batch, globalRow + innerRow, globalCol + innerCol, - acc[innerRow][innerCol]); - } -} -`;return` - var mm_Asub : array, ${f}>; - var mm_Bsub : array, ${a}>; - const rowPerThread = ${e[1]}; - const colPerThread = ${e[0]}; - const tileInner = ${a}; - -@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) -fn main(@builtin(local_invocation_id) localId : vec3, - @builtin(global_invocation_id) globalId : vec3, - @builtin(workgroup_id) workgroupId : vec3) { - let batch = ${o?`0`:`i32(globalId.z)`}; - ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} - let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; - var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; - - var acc : array, rowPerThread>; - ${g} - } -`},xo=(e,t,n,r,i=!1)=>{let[a,o,s,c]=r,l=er(r[0].type.tensor);return` - fn mm_readA(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${oo(e,l)} { - var value = ${oo(e,l)}(0.0); - let col = colIn * ${e}; - if(row < uniforms.dim_a_outer && col < uniforms.dim_inner) - { - var aIndices: ${o.type.indices}; - ${fo(`aIndices`,o,o.rank-2,a.rank,`batchIndices`)} - ${o.indicesSet(`aIndices`,o.rank-2,`u32(row)`)} - ${o.indicesSet(`aIndices`,o.rank-1,`u32(colIn)`)} - value = ${o.getByIndices(`aIndices`)}; - } - return value; - } - - fn mm_readB(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${oo(e,l)} { - var value = ${oo(e,l)}(0.0); - let col = colIn * ${e}; - if(row < uniforms.dim_inner && col < uniforms.dim_b_outer) - { - var bIndices: ${s.type.indices}; - ${fo(`bIndices`,s,s.rank-2,a.rank,`batchIndices`)} - ${s.indicesSet(`bIndices`,s.rank-2,`u32(row)`)} - ${s.indicesSet(`bIndices`,s.rank-1,`u32(colIn)`)} - value = ${s.getByIndices(`bIndices`)}; - } - return value; - } - - fn mm_write(batch: i32, row: i32, colIn: i32, valueIn: ${oo(e,l)}) { - let col = colIn * ${e}; - if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) { - var value = valueIn; - let coords = vec3(batch, row, colIn); - ${t?`value = value + ${i?`bias[colIn]`:`${oo(e,l)}(bias[row])`};`:``} - ${n} - ${c.setByIndices(`vec3(coords)`,`value`)} - } - } - `},So=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o.slice(0,-2),l=s.slice(0,-2),u=r?r.slice(0,-2):n.slice(0,-2),d=U.size(u),f=o[o.length-2],p=o[o.length-1],m=s[s.length-1],h=p%4==0&&m%4==0,g=f<=8?[4,1,1]:[4,4,1],_=[8,8,1],v=[Math.ceil(m/_[0]/g[0]),Math.ceil(f/_[1]/g[1]),Math.ceil(d/_[2]/g[2])],y=h?4:1,b=[...c,f,p/y],x=b.length,S=[...l,p,m/y],C=S.length,w=[d,f,m/y],T=[{type:6,data:f},{type:6,data:m},{type:6,data:p}];no(t,T),T.push(...G(u,b,S));let E=[`rank`,`rank`],D=e.length>2;D&&(T.push(...G(e[2].dims)),E.push(`rank`)),T.push(...G(w));let O=n=>{let r=u.length,a=cr(`batchDims`,e[0].dataType,r,1),o=er(e[0].dataType),s=q(`a`,e[0].dataType,x,y),c=q(`b`,e[1].dataType,C,y),l=J(`result`,e[0].dataType,w.length,y),d=[s,c];if(D){let t=i?y:1;d.push(q(`bias`,e[2].dataType,e[2].dims.length,t))}let f=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`}];ro(t,f);let p=er(l.type.tensor),m=to(t,l.type.value,p),v=xo(y,D,m,[a,s,c,l],i);return` - ${n.registerUniforms(f).registerInternalVariables(a).declareVariables(...d,l)} - ${v} - ${h?_o(g,_,o,a):bo(g,_,o,a)} - `};return{name:`MatMul`,shaderCache:{hint:`${g};${t.activation};${h};${i}`,inputDependencies:E},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:v[0],y:v[1],z:v[2]},programUniforms:T}),getShaderSource:O}}}),wo,To,Eo=j(()=>{"use strict";V(),mn(),Y(),ao(),co(),uo(),Co(),wo=(e,t,n,r,i=!1,a,o=4,s=4,c=4,l=`f32`)=>{let u=e=>{switch(e){case 1:return`resData = x[xIndex];`;case 3:return`resData = vec3<${l}>(x[xIndex], x[xIndex + 1], x[xIndex + 2]);`;case 4:return`resData = x[xIndex / 4];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},d=e=>{switch(e){case 1:return`return w[row * i32(uniforms.w_shape[3]) + colIn];`;case 4:return`return w[row * i32(uniforms.w_shape[3]) / 4 + colIn];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},f=e?` - let coord = vec4(batch, xRow, xCol, xCh); - `:` - let coord = vec4(batch, xCh, xRow, xCol); - `,p=e?` - let coords = vec4( - batch, - row / outWidth, - row % outWidth, - col); - `:` - let coords = vec4( - batch, - row, - col / outWidth, - col % outWidth); - `,m=e?`i32(uniforms.x_shape[1])`:`i32(uniforms.x_shape[2])`,h=e?`i32(uniforms.x_shape[2])`:`i32(uniforms.x_shape[3])`,g=e?`row`:`col`,_=e?`col`:`row`,v=` - let inChannels = i32(uniforms.w_shape[2]); - let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; - let outRow = ${g} / outWidth; - let outCol = ${g} % outWidth; - - let WRow = ${_} / (i32(uniforms.w_shape[1]) * inChannels); - let WCol = ${_} / inChannels % i32(uniforms.w_shape[1]); - let xRow = outRow * uniforms.stride[0] + uniforms.dilation[0] * WRow - uniforms.pad[0]; - let xCol = outCol * uniforms.stride[1] + uniforms.dilation[1] * WCol - uniforms.pad[1]; - let xCh = ${_} % inChannels; - var resData = ${oo(o,l)}(0.0); - // The bounds checking is always needed since we use it to pad zero for - // the 'same' padding type. - if (xRow >= 0 && xRow < ${m} && xCol >= 0 && xCol < ${h}) { - ${f} - let xIndex = getIndexFromCoords4D(coord, vec4(uniforms.x_shape)); - ${u(o)} - } - return resData;`,y=e?t&&r?` - let col = colIn * ${o}; - ${v}`:` - let col = colIn * ${o}; - if (row < uniforms.dim_a_outer && col < uniforms.dim_inner) { - ${v} - } - return ${oo(o,l)}(0.0);`:r&&n?` - let col = colIn * ${o}; - ${v}`:` - let col = colIn * ${o}; - if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { - ${v} - } - return ${oo(o,l)}(0.0);`,b=e?r&&n?d(s):` - let col = colIn * ${s}; - if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { - ${d(s)} - } - return ${oo(s,l)}(0.0);`:` - let col = colIn * ${s}; - if (row < uniforms.dim_inner && col < uniforms.dim_a_outer) { - ${d(s)} - } - return ${oo(s,l)}(0.0);`,x=oo(c,l),S=oo(e?o:s,l),C=oo(e?s:o,l),w=to(a,x,l);return` - fn mm_readA(batch: i32, row : i32, colIn : i32) -> ${S} { - ${e?y:b} - } - - fn mm_readB(batch: i32, row : i32, colIn : i32) -> ${C} { - ${e?b:y} - } - - fn mm_write(batch: i32, row : i32, colIn : i32, valueIn : ${x}) { - let col = colIn * ${c}; - if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) - { - var value = valueIn; - let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; - ${p} - ${so(i)} - ${w} - setOutputAtCoords(coords[0], coords[1], coords[2], coords[3], value); - } - }`},To=(e,t,n,r,i,a,o,s,c)=>{let l=t.format===`NHWC`,u=l?e[0].dims[3]:e[0].dims[1],d=n[0],f=l?n[2]:n[3],p=l?n[1]:n[2],m=l?n[3]:n[1],h=l&&(u%4==0||u%3==0)&&m%4==0,g=l?m:f*p,_=l?f*p:m,v=[8,8,1],y=r<=8?[4,1,1]:[4,4,1],b=[Math.ceil(g/v[0]/y[0]),Math.ceil(_/v[1]/y[1]),Math.ceil(d/v[2]/y[2])];H(`verbose`,()=>`[conv2d_mm_webgpu] dispatch = ${b}`);let x=h?l&&u%4!=0?3:4:1,S=v[1]*y[1],C=v[0]*y[0],w=Math.max(v[0]*x,v[1]),T=r%S===0,E=i%C===0,D=a%w===0,O=h?[x,4,4]:[1,1,1],ee=[{type:6,data:r},{type:6,data:i},{type:6,data:a},{type:6,data:[t.pads[0],t.pads[1]]},{type:6,data:t.strides},{type:6,data:t.dilations}];no(t,ee),ee.push(...G(e[0].dims,e[1].dims));let k=[`rank`,`rank`];o&&(ee.push(...G(e[2].dims)),k.push(`rank`)),ee.push(...G(n));let te=r=>{let i=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`},{name:`pad`,type:`i32`,length:2},{name:`stride`,type:`i32`,length:2},{name:`dilation`,type:`i32`,length:2}];ro(t,i);let a=h?4:1,c=er(e[0].dataType),u=` - fn setOutputAtIndex(flatIndex : i32, value : ${h?`vec4<${c}>`:c}) { - result[flatIndex] = ${h?`vec4<${c}>`:c}(value); - } - fn setOutputAtCoords(d0 : i32, d1 : i32, d2 : i32, d3 : i32, value : ${h?`vec4<${c}>`:c}) { - let flatIndex = getOutputIndexFromCoords(vec4(d0, d1, d2, d3)); - setOutputAtIndex(flatIndex ${h?`/ 4`:``}, value); - }`,d=q(`x`,e[0].dataType,e[0].dims.length,x===3?1:x),f=q(`w`,e[1].dataType,e[1].dims.length,a),p=[d,f],m=J(`result`,e[0].dataType,n.length,a);if(o){let t=q(`bias`,e[2].dataType,e[2].dims.length,a);p.push(t),u+=` - fn getBiasByOutputCoords(coords : vec4) -> ${h?`vec4<${c}>`:c} { - return bias[coords.${l?`w`:`y`}${h?`/ 4`:``}]; - }`}return` - ${lo(`uniforms.result_strides`)} - //struct Uniforms { xShape : vec4, wShape : vec4, outShape : vec4, - // outShapeStrides: vec3, filterDims : vec2, pad : vec2, stride : vec2, - // dilation : vec2, dimAOuter : i32, dimBOuter : i32, dimInner : i32 }; - ${r.registerUniforms(i).declareVariables(...p,m)} - ${u} - ${wo(l,T,E,D,o,t,O[0],O[1],O[2],c)} - ${h?_o(y,v,c,void 0,!l,w):bo(y,v,c,void 0,!l,w,!1,void 0,s)}`};return{name:`Conv2DMatMul`,shaderCache:{hint:`${t.cacheKey};${x};${h};${T};${E};${D};${S};${C};${w}`,inputDependencies:k},getRunData:()=>({outputs:[{dims:c?c(n):n,dataType:e[0].dataType}],dispatchGroup:{x:b[0],y:b[1],z:b[2]},programUniforms:ee}),getShaderSource:te}}}),Do,Oo,ko,Ao,jo,Mo,No,Po,Fo=j(()=>{"use strict";V(),mn(),W(),Y(),ao(),co(),Do=e=>{let t=1;for(let n=0;ntypeof e==`number`?[e,e,e]:e,ko=(e,t)=>t<=1?e:e+(e-1)*(t-1),Ao=(e,t,n,r=1)=>{let i=ko(t,r);return Math.floor((e[0]*(n-1)-n+i)/2)},jo=(e,t,n,r,i)=>{i??=Ao(e,t[0],r[0]);let a=[0,0,0,n];for(let n=0;n<3;n++)e[n]+2*i>=t[n]&&(a[n]=Math.trunc((e[n]-t[n]+2*i)/r[n]+1));return a},Mo=(e,t,n,r,i,a,o,s,c,l)=>{let u,d,f,p;if(e===`VALID`&&(e=0),typeof e==`number`){u={top:e,bottom:e,left:e,right:e,front:e,back:e};let m=jo([t,n,r,1],[s,c,l],1,[i,a,o],e);d=m[0],f=m[1],p=m[2]}else if(Array.isArray(e)){if(!e.every((e,t,n)=>e===n[0]))throw Error(`Unsupported padding parameter: ${e}`);u={top:e[0],bottom:e[1],left:e[2],right:e[3],front:e[4],back:e[5]};let m=jo([t,n,r,1],[s,c,l],1,[i,a,o],e[0]);d=m[0],f=m[1],p=m[2]}else if(e===`SAME_UPPER`){d=Math.ceil(t/i),f=Math.ceil(n/a),p=Math.ceil(r/o);let e=(d-1)*i+s-t,m=(f-1)*a+c-n,h=(p-1)*o+l-r,g=Math.floor(e/2),_=e-g,v=Math.floor(m/2),y=m-v,b=Math.floor(h/2),x=h-b;u={top:v,bottom:y,left:b,right:x,front:g,back:_}}else throw Error(`Unknown padding parameter: ${e}`);return{padInfo:u,outDepth:d,outHeight:f,outWidth:p}},No=(e,t,n,r,i,a=!1,o=`channelsLast`)=>{let s,c,l,u,d;if(o===`channelsLast`)[s,c,l,u,d]=e;else if(o===`channelsFirst`)[s,d,c,l,u]=e;else throw Error(`Unknown dataFormat ${o}`);let[f,,p,m,h]=t,[g,_,v]=Oo(n),[y,b,x]=Oo(r),S=ko(p,y),C=ko(m,b),w=ko(h,x),{padInfo:T,outDepth:E,outHeight:D,outWidth:O}=Mo(i,c,l,u,g,_,v,S,C,w),ee=a?f*d:f,k=[0,0,0,0,0];return o===`channelsFirst`?k=[s,ee,E,D,O]:o===`channelsLast`&&(k=[s,E,D,O,ee]),{batchSize:s,dataFormat:o,inDepth:c,inHeight:l,inWidth:u,inChannels:d,outDepth:E,outHeight:D,outWidth:O,outChannels:ee,padInfo:T,strideDepth:g,strideHeight:_,strideWidth:v,filterDepth:p,filterHeight:m,filterWidth:h,effectiveFilterDepth:S,effectiveFilterHeight:C,effectiveFilterWidth:w,dilationDepth:y,dilationHeight:b,dilationWidth:x,inShape:e,outShape:k,filterShape:t}},Po=(e,t,n,r,i,a)=>{let o=a===`channelsLast`,s=o?e[0].dims[3]:e[0].dims[1],c=!1,l=[64,1,1],u={x:n.map((e,t)=>t)},d=[Math.ceil(Do(u.x.map(e=>n[e]))/l[0]),1,1];H(`verbose`,()=>`[conv3d_naive_webgpu] dispatch = ${d}`);let f=c?o&&s%4!=0?3:4:1,p=U.size(n),m=[{type:12,data:p},{type:12,data:r},{type:12,data:i},{type:12,data:t.strides},{type:12,data:t.dilations}];no(t,m),m.push(...G(e[0].dims,e[1].dims));let h=[`rank`,`rank`],g=e.length===3;g&&(m.push(...G(e[2].dims)),h.push(`rank`)),m.push(...G(n));let _=a=>{let s=[{name:`output_size`,type:`u32`},{name:`filter_dims`,type:`u32`,length:r.length},{name:`pads`,type:`u32`,length:i.length},{name:`strides`,type:`u32`,length:t.strides.length},{name:`dilations`,type:`u32`,length:t.dilations.length}];ro(t,s);let l=c?4:1,u=er(e[0].dataType),d=q(`x`,e[0].dataType,e[0].dims.length,f===3?1:f),p=q(`W`,e[1].dataType,e[1].dims.length,l),m=[d,p],h=J(`result`,e[0].dataType,n.length,l),_=``;if(g){let t=q(`bias`,e[2].dataType,e[2].dims.length,l);m.push(t),_+=` - fn getBiasByOutputCoords(coords : array) -> ${c?`vec4<${u}>`:u} { - return bias[${o?K(`coords`,4,5):K(`coords`,1,5)}${c?`/ 4`:``}]; - }`}let v=oo(f,u),y=to(t,v,u);return` - ${_} - fn getX(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { - let aIndices = array(d0, d1, d2, d3, d4); - return ${d.getByIndices(`aIndices`)}; - } - fn getW(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { - let aIndices = array(d0, d1, d2, d3, d4); - return ${p.getByIndices(`aIndices`)}; - } - ${a.registerUniforms(s).declareVariables(...m,h)} - ${a.mainStart()} - ${a.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let coords = ${h.offsetToIndices(`global_idx`)}; - let batch = ${K(`coords`,0,d.rank)}; - let d2 = ${o?K(`coords`,d.rank-1,d.rank):K(`coords`,1,d.rank)}; - let xFRCCorner = vec3(${o?K(`coords`,1,d.rank):K(`coords`,2,d.rank)}, - ${o?K(`coords`,2,d.rank):K(`coords`,3,d.rank)}, - ${o?K(`coords`,3,d.rank):K(`coords`,4,d.rank)}) * uniforms.strides - uniforms.pads; - let xFCorner = xFRCCorner.x; - let xRCorner = xFRCCorner.y; - let xCCorner = xFRCCorner.z; - let xShapeY = ${o?K(`uniforms.x_shape`,1,d.rank):K(`uniforms.x_shape`,2,d.rank)}; - let xShapeZ = ${o?K(`uniforms.x_shape`,2,d.rank):K(`uniforms.x_shape`,3,d.rank)}; - let xShapeW = ${o?K(`uniforms.x_shape`,3,d.rank):K(`uniforms.x_shape`,4,d.rank)}; - let xShapeU = ${o?K(`uniforms.x_shape`,4,d.rank):K(`uniforms.x_shape`,1,d.rank)}; - let inputDepthNearestVec4 = (xShapeU / 4) * 4; - let inputDepthVec4Remainder = xShapeU % 4; - - var value = 0.0; - for (var wF = 0u; wF < uniforms.filter_dims[0]; wF++) { - let xF = xFCorner + wF * uniforms.dilations[0]; - if (xF < 0 || xF >= xShapeY) { - continue; - } - - for (var wR = 0u; wR < uniforms.filter_dims[1]; wR++) { - let xR = xRCorner + wR * uniforms.dilations[1]; - if (xR < 0 || xR >= xShapeZ) { - continue; - } - - for (var wC = 0u; wC < uniforms.filter_dims[2]; wC++) { - let xC = xCCorner + wC * uniforms.dilations[2]; - if (xC < 0 || xC >= xShapeW) { - continue; - } - - for (var d1 = 0u; d1 < inputDepthNearestVec4; d1 += 4) { - ${o?`let xValues = vec4( - getX(batch, xF, xR, xC, d1), - getX(batch, xF, xR, xC, d1 + 1), - getX(batch, xF, xR, xC, d1 + 2), - getX(batch, xF, xR, xC, d1 + 3)); - `:`let xValues = vec4( - getX(batch, d1, xF, xR, xC), - getX(batch, d1 + 1, xF, xR, xC), - getX(batch, d1 + 2, xF, xR, xC), - getX(batch, d1 + 3, xF, xR, xC)); - `} - let wValues = vec4( - getW(d2, d1, wF, wR, wC), - getW(d2, d1 + 1, wF, wR, wC), - getW(d2, d1 + 2, wF, wR, wC), - getW(d2, d1 + 3, wF, wR, wC)); - value += dot(xValues, wValues); - } - if (inputDepthVec4Remainder == 1) { - ${o?`value += getX(batch, xF, xR, xC, inputDepthNearestVec4) - * getW(d2, inputDepthNearestVec4, wF, wR, wC);`:`value += getX(batch, inputDepthNearestVec4, xF, xR, xC) - * getW(d2, inputDepthNearestVec4, wF, wR, wC);`} - } else if (inputDepthVec4Remainder == 2) { - ${o?`let xValues = vec2( - getX(batch, xF, xR, xC, inputDepthNearestVec4), - getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1)); - `:`let xValues = vec2( - getX(batch, inputDepthNearestVec4, xF, xR, xC), - getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC)); - `} - let wValues = vec2( - getW(d2, inputDepthNearestVec4, wF, wR, wC), - getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC)); - value += dot(xValues, wValues); - } else if (inputDepthVec4Remainder == 3) { - ${o?`let xValues = vec3( - getX(batch, xF, xR, xC, inputDepthNearestVec4), - getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1), - getX(batch, xF, xR, xC, inputDepthNearestVec4 + 2)); - `:`let xValues = vec3( - getX(batch, inputDepthNearestVec4, xF, xR, xC), - getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC), - getX(batch, inputDepthNearestVec4 + 2, xF, xR, xC)); - `} - let wValues = vec3( - getW(d2, inputDepthNearestVec4, wF, wR, wC), - getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC), - getW(d2, inputDepthNearestVec4 + 2, wF, wR, wC)); - value += dot(xValues, wValues); - } - } - } - } - ${g?`value = value + getBiasByOutputCoords(coords)`:``}; - ${y} - result[global_idx] = f32(value); - }`};return{name:`Conv3DNaive`,shaderCache:{hint:`${t.cacheKey};${o};${f};${g}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:d[0],y:d[1],z:d[2]},programUniforms:m}),getShaderSource:_}}}),Io,Lo,Ro=j(()=>{"use strict";V(),W(),Y(),ao(),Io=(e,t,n,r)=>{let i=e.length>2,a=i?`value += b[output_channel];`:``,o=e[0].dims,s=e[1].dims,c=t.format===`NHWC`,l=c?n[3]:n[1],u=l/t.group,d=c&&u>=4?nr(l):1,f=U.size(n)/d,p=[{type:12,data:f},{type:12,data:t.dilations},{type:12,data:[t.strides[0],t.strides[1]]},{type:12,data:[t.pads[0],t.pads[1]]},{type:12,data:u}];no(t,p),p.push(...G(o,[s[0],s[1],s[2],s[3]/d]));let m=i?[`rank`,`rank`,`rank`]:[`rank`,`rank`];p.push(...G([n[0],n[1],n[2],n[3]/d]));let h=r=>{let l=J(`output`,e[0].dataType,n.length,d),u=er(l.type.tensor),f=to(t,l.type.value,u),p=q(`x`,e[0].dataType,o.length),m=q(`w`,e[1].dataType,s.length,d),h=[p,m];i&&h.push(q(`b`,e[2].dataType,e[2].dims,d));let g=[{name:`output_size`,type:`u32`},{name:`dilations`,type:`u32`,length:t.dilations.length},{name:`strides`,type:`u32`,length:2},{name:`pads`,type:`u32`,length:2},{name:`output_channels_per_group`,type:`u32`}];ro(t,g);let _=c?` - for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[0]; wHeight++) { - let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; - - if (xHeight < 0u || xHeight >= uniforms.x_shape[1]) { - continue; - } - - for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[1]; wWidth++) { - let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; - if (xWidth < 0u || xWidth >= uniforms.x_shape[2]) { - continue; - } - - for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[2]; wInChannel++) { - let input_channel = in_channel_offset + wInChannel; - let xVal = ${p.get(`batch`,`xHeight`,`xWidth`,`input_channel`)}; - let wVal = ${m.get(`wHeight`,`wWidth`,`wInChannel`,`output_channel`)}; - value += xVal * wVal; - } - } - } - `:` - for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[1]; wInChannel++) { - let input_channel = in_channel_offset + wInChannel; - for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[2]; wHeight++) { - let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; - - if (xHeight < 0u || xHeight >= uniforms.x_shape[2]) { - continue; - } - - for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[3]; wWidth++) { - let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; - if (xWidth < 0u || xWidth >= uniforms.x_shape[3]) { - continue; - } - - let xVal = ${p.get(`batch`,`input_channel`,`xHeight`,`xWidth`)}; - let wVal = ${m.get(`output_channel`,`wInChannel`,`wHeight`,`wWidth`)}; - value += xVal * wVal; - } - } - } - `;return` - ${r.registerUniforms(g).declareVariables(...h,l)} - - ${r.mainStart()} - ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let outputIndices = ${l.offsetToIndices(`global_idx`)}; - let batch: u32 = outputIndices[0]; - let output_channel: u32 = outputIndices[${c?3:1}]; - let xRCCorner: vec2 = vec2(outputIndices[${c?1:2}], outputIndices[${c?2:3}]) * uniforms.strides - uniforms.pads; - let group_id: u32 = output_channel * ${d} / uniforms.output_channels_per_group; - var in_channel_offset = group_id * uniforms.w_shape[${c?2:1}]; - - var value: ${l.type.value} = ${l.type.value}(0); - ${_} - ${a} - ${f} - ${l.setByOffset(`global_idx`,`value`)} - }`};return{name:`GroupedConv`,shaderCache:{hint:`${t.cacheKey}_${d}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},Lo=(e,t,n,r)=>{let i=e.length>2,a=nr(n[3]),o=nr(n[2]),s=U.size(n)/a/o,c=[e[0].dims[0],e[0].dims[1],e[0].dims[2],e[0].dims[3]/a],l=[e[1].dims[0],e[1].dims[1],e[1].dims[2],e[1].dims[3]/a],u=[n[0],n[1],n[2],n[3]/a],d=[{type:12,data:s},{type:6,data:[t.strides[0],t.strides[1]]},{type:6,data:[t.pads[0],t.pads[1]]}];no(t,d),d.push(...G(c,l,u));let f=(o-1)*t.strides[1]+l[1],p=n=>{let r=J(`output`,e[0].dataType,u.length,a),s=er(r.type.tensor),d=to(t,r.type.value,s),p=q(`x`,e[0].dataType,c.length,a),m=q(`w`,e[1].dataType,l.length,a),h=[p,m];i&&h.push(q(`b`,e[2].dataType,e[2].dims,a));let g=i?`value += b[output_channel];`:``,_=[{name:`output_size`,type:`u32`},{name:`strides`,type:`i32`,length:2},{name:`pads`,type:`i32`,length:2}];return ro(t,_),` - ${n.registerUniforms(_).declareVariables(...h,r)} - ${n.mainStart()} - ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let width0 = uniforms.output_shape[3]; - let output_channel = global_idx % width0; - var index1 = global_idx / width0; - let width1 = uniforms.output_shape[2] / ${o}u; - let col = (index1 % width1) * ${o}u; - index1 = index1 / width1; - let row = index1 % uniforms.output_shape[1]; - let batch = index1 / uniforms.output_shape[1]; - - let x_corner = vec2(i32(row), i32(col)) * uniforms.strides - uniforms.pads; - - var x_vals: array<${p.type.value}, ${f}>; - var values: array<${r.type.value}, ${o}>; - let input_channel = output_channel; - // Use constant instead of uniform can give better performance for w's height/width. - for (var w_height: u32 = 0u; w_height < ${l[0]}; w_height++) { - let x_height = x_corner.x + i32(w_height); - if (x_height >= 0 && u32(x_height) < uniforms.x_shape[1]) { - for (var i = 0; i < ${f}; i++) { - let x_width = x_corner.y + i; - if (x_width >= 0 && u32(x_width) < uniforms.x_shape[2]) { - x_vals[i] = ${p.get(`batch`,`u32(x_height)`,`u32(x_width)`,`input_channel`)}; - } else { - x_vals[i] = ${p.type.value}(0); - } - } - for (var w_width: u32 = 0u; w_width < ${l[1]}; w_width++) { - let w_val = ${m.get(`w_height`,`w_width`,`0`,`output_channel`)}; - for (var i = 0u; i < ${o}u; i++) { - values[i] = fma(x_vals[i * u32(uniforms.strides[1]) + w_width], w_val, values[i]); - } - } - } - } - - for (var i = 0u; i < ${o}u; i++) { - var value = values[i]; - ${g} - ${d} - ${r.set(`batch`,`row`,`col + i`,`output_channel`,`value`)}; - } - }`};return{name:`GroupedConv-Vectorize`,shaderCache:{hint:`${t.cacheKey};${a};${o};${f};${l[0]};${l[1]}`,inputDependencies:i?[`rank`,`rank`,`type`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:d}),getShaderSource:p}}}),zo,Bo,Vo,Ho,Uo,Wo,Go,Ko,qo,Jo=j(()=>{"use strict";W(),Eo(),Fo(),Co(),Ro(),ao(),mo(),yr(),zo=(e,t,n,r,i,a)=>{let o=e[0],s=e.slice(a?1:2,a?3:4),c=s.length,l=t[0],u=t.slice(2).map((e,t)=>e+(e-1)*(n[t]-1)),d=s.map((e,t)=>e+r[t]+r[t+c]).map((e,t)=>Math.floor((e-u[t]+i[t])/i[t]));return d.splice(0,0,o),d.splice(a?3:1,0,l),d},Bo=[2,3,1,0],Vo=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length>5)throw Error(`greater than 5D is not supported`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[1]*t.group;if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);if(e.length===3&&(e[2].dims.length!==1||e[1].dims[0]!==e[2].dims[0]))throw Error(`invalid bias`);let i=e[0].dims.length-2;if(t.dilations.length!==i)throw Error(`dilations should be ${i}D`);if(t.strides.length!==i)throw Error(`strides should be ${i}D`);if(t.pads.length!==i*2)throw Error(`pads should be ${i*2}D`);if(t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`)},Ho=(e,t)=>{let n=e.kernelShape.slice();n.length{let t=io(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],i=e.dilations,a=e.group,o=e.kernel_shape,s=e.pads,c=e.strides,l=e.w_is_const();return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},Wo=(e,t,n,r)=>{let i=n.format===`NHWC`,a=zo(t[0].dims,t[1].dims,n.dilations,n.pads,n.strides,i);if(n.group!==1){let o=[t[0]];if(i){let r=e.kernelCustomData.wT??e.compute(gr(t[1],Bo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),o.push(r)}else o.push(t[1]);t.length===3&&o.push(t[2]),!e.adapterInfo.isArchitecture(`ampere`)&&i&&t[1].dims[0]===n.group&&t[1].dims[1]===1&&n.dilations[0]===1&&n.dilations[1]===1?e.compute(Lo(o,n,a,r),{inputs:o}):e.compute(Io(o,n,a,r),{inputs:o});return}let o=t.length===3,s=t[0].dims[i?1:2],c=t[0].dims[i?2:3],l=t[0].dims[i?3:1],u=t[1].dims[2],d=t[1].dims[3],f=a[i?1:2],p=a[i?2:3],m=a[i?3:1],h=i&&u===s&&d===c&&n.pads[0]===0&&n.pads[1]===0;if(h||u===1&&d===1&&n.dilations[0]===1&&n.dilations[1]===1&&n.strides[0]===1&&n.strides[1]===1&&n.pads[0]===0&&n.pads[1]===0){let u=a[0],d,g,_,v=[];if(i){let r=e.kernelCustomData.wT??e.compute(gr(t[1],Bo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];if(n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),h){let e=s*c*l;d=t[0].reshape([1,u,e]),g=r.reshape([1,e,m]),_=[1,u,m]}else d=t[0].reshape([u,s*c,l]),g=r.reshape([1,l,m]),_=[u,f*p,m];v.push(d),v.push(g)}else d=t[0].reshape([u,l,s*c]),g=t[1].reshape([1,m,l]),_=[u,m,f*p],v.push(g),v.push(d);o&&v.push(t[2]);let y=_[2],b=v[0].dims[v[0].dims.length-1];y<8&&b<8?e.compute(po(v,n,a,_,i,r),{inputs:v}):e.compute(So(v,n,a,_,i,r),{inputs:v});return}let g=!0,_=e.kernelCustomData.wT??e.compute(gr(t[1],Bo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=_);let v=[t[0],_];o&&v.push(t[2]);let y=i?f*p:m,b=i?m:f*p,x=u*d*l;e.compute(To(v,n,a,y,b,x,o,g,r),{inputs:v})},Go=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=[0,t.pads[0],0,t.pads[1]],a=[1].concat(t.strides),o=[1].concat(t.dilations),s=[1].concat(t.kernelShape),c=Ho({...t,pads:i,strides:a,dilations:o,kernelShape:s},r);Wo(e,r,c,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},Ko=(e,t,n)=>{let r=n.format===`NHWC`?`channelsLast`:`channelsFirst`,i=Ho(n,t),a=n.autoPad===`NOTSET`?n.pads:n.autoPad,o=No(t[0].dims,t[1].dims,n.strides,n.dilations,a,!1,r);e.compute(Po(t,i,o.outShape,[o.filterDepth,o.filterHeight,o.filterWidth],[o.padInfo.front,o.padInfo.top,o.padInfo.left],r))},qo=(e,t)=>{if(Vo(e.inputs,t),e.inputs[0].dims.length===3)Go(e,t);else if(e.inputs[0].dims.length===5)Ko(e,e.inputs,t);else{let n=Ho(t,e.inputs);Wo(e,e.inputs,n)}}}),Yo,Xo=j(()=>{"use strict";V(),mn(),W(),Y(),Yo=(e,t,n)=>{let r=e.length>2,i=t.outputShape,a=t.format===`NHWC`,o=t.group,s=e[1].dims,c=s[2]/o,l=s[3],u=a?nr(c):1,d=a&&l===1&&c>=4,f=d?Math.floor(c/4)*4:Math.floor(c/u)*u,p=c-f,m=a?nr(l):1,h=a?l===1?u:m:1,g=U.size(i)/m,_=[Math.ceil(g/64),1,1];H(`verbose`,()=>`[conv2d_backprop_webgpu] dispatch = ${_}`);let v=[`rank`,`rank`],y=[t.strides[0],t.strides[1]],b=[t.kernelShape[a?1:2],t.kernelShape[a?2:3]],x=[t.dilations[0],t.dilations[1]],S=[b[0]+(t.dilations[0]<=1?0:(t.kernelShape[a?1:2]-1)*(t.dilations[0]-1)),b[1]+(t.dilations[1]<=1?0:(t.kernelShape[a?2:3]-1)*(t.dilations[1]-1))],C=[S[0]-1-Math.floor((t.pads[0]+t.pads[2])/2),S[1]-1-Math.floor((t.pads[1]+t.pads[3])/2)],w=[{type:12,data:g},{type:12,data:y},{type:12,data:b},{type:12,data:x},{type:12,data:S},{type:6,data:C},{type:12,data:f},{type:12,data:c},{type:12,data:l},...G(e[0].dims,e[1].dims)];r&&(w.push(...G(e[2].dims)),v.push(`rank`)),w.push(...G(i));let T=t=>{let n=[{name:`output_size`,type:`u32`},{name:`strides`,type:`u32`,length:y.length},{name:`filter_dims`,type:`u32`,length:b.length},{name:`dilations`,type:`u32`,length:b.length},{name:`effective_filter_dims`,type:`u32`,length:S.length},{name:`pads`,type:`i32`,length:C.length},{name:`input_channels_per_group_int`,type:`u32`},{name:`input_channels_per_group`,type:`u32`},{name:`output_channels_per_group`,type:`u32`}],o=er(e[0].dataType),s=a?1:2,c=a?2:3,l=a?3:1,f=q(`W`,e[1].dataType,e[1].dims.length,h),g=q(`Dy`,e[0].dataType,e[0].dims.length,u),_=[g,f];r&&_.push(q(`bias`,e[2].dataType,[i[l]].length,m));let v=J(`result`,e[0].dataType,i.length,m),x=()=>{let e=``;if(d)u===4?e+=` - let xValue = ${g.getByOffset(`x_offset`)}; - let wValue = ${f.getByOffset(`w_offset`)}; - dotProd = dotProd + dot(xValue, wValue); - x_offset += 1u; - w_offset += 1u;`:u===2?e+=` - dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)})); - x_offset += 2u; - w_offset += 2u;`:u===1&&(e+=` - dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}, ${g.getByOffset(`x_offset + 2u`)}, ${g.getByOffset(`x_offset + 3u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)}, ${f.getByOffset(`w_offset + 2u`)}, ${f.getByOffset(`w_offset + 3u`)})); - x_offset += 4u; - w_offset += 4u;`);else if(e+=` - let xValue = ${a?g.getByOffset(`${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}`):g.get(`batch`,`inputChannel`,`idyR`,`idyC`)}; - `,u===1)e+=` - let w_offset = ${f.indicesToOffset(`${f.type.indices}(u32(wRPerm), u32(wCPerm), inputChannel, wOutChannel)`)}; - let wValue = ${f.getByOffset(`w_offset / ${h}`)}; - dotProd = dotProd + xValue * wValue;`;else for(let t=0;t{if(p===0)return``;if(!d)throw Error(`packInputAs4 ${d} is not true.`);let e=``;if(u===1){e+=`dotProd = dotProd`;for(let t=0;t(i32(r), i32(c)) - uniforms.pads; - let dyRCorner = dyCorner.x; - let dyCCorner = dyCorner.y; - let groupId = d1 / uniforms.output_channels_per_group; - let wOutChannel = d1 - groupId * uniforms.output_channels_per_group; - // Convolve dy(?, ?, d2) with w(:, :, d1, d2) to compute dx(xR, xC, d1). - // ? = to be determined. : = across all values in that axis. - var dotProd = ${v.type.value}(0.0); - var wR: u32 = 0; - if (uniforms.dilations.x == 1) { - // Minimum wR >= 0 that satisfies (dyRCorner + wR) % (uniforms.strides.x) == 0 - wR = u32(((dyRCorner + i32(uniforms.strides.x) - 1) / i32(uniforms.strides.x)) * i32(uniforms.strides.x) - dyRCorner); - } - for (; wR < uniforms.effective_filter_dims.x; wR = wR + 1) { - if (wR % uniforms.dilations.x != 0) { - continue; - } - let dyR = (${o}(dyRCorner) + ${o}(wR)) / ${o}(uniforms.strides[0]); - let wRPerm = uniforms.filter_dims.x - 1 - wR / uniforms.dilations.x; - if (dyR < 0.0 || dyR >= ${o}(uniforms.Dy_shape[${s}]) || fract(dyR) > 0.0 || - wRPerm < 0) { - continue; - } - let idyR: u32 = u32(dyR); - var wC: u32 = 0; - if (uniforms.dilations.y == 1) { - // Minimum wC >= 0 that satisfies (dyCCorner + wC) % (uniforms.strides.y) == 0 - wC = u32(((dyCCorner + i32(uniforms.strides.y) - 1) / i32(uniforms.strides.y)) * i32(uniforms.strides.y) - dyCCorner); - } - for (; wC < uniforms.effective_filter_dims.y; wC = wC + 1) { - if (wC % uniforms.dilations.y != 0) { - continue; - } - let dyC = (${o}(dyCCorner) + ${o}(wC)) / ${o}(uniforms.strides.y); - let wCPerm = uniforms.filter_dims.y - 1 - wC / uniforms.dilations.y; - if (dyC < 0.0 || dyC >= ${o}(uniforms.Dy_shape[${c}]) || - fract(dyC) > 0.0 || wCPerm < 0) { - continue; - } - let idyC: u32 = u32(dyC); - var inputChannel = groupId * uniforms.input_channels_per_group; - ${d?` - var x_offset = ${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}; - var w_offset = ${f.indicesToOffset(`${f.type.indices}(wRPerm, wCPerm, inputChannel, wOutChannel)`)} / ${h}; - `:``} - for (var d2: u32 = 0; d2 < uniforms.input_channels_per_group_int; d2 = d2 + ${d?4:u}) { - ${x()} - inputChannel = inputChannel + ${d?4:u}; - } - ${w()} - wC = wC + uniforms.strides.y - 1; - } - wR = wR + uniforms.strides[0] - 1; - } - let value = dotProd${r?` + bias[d1 / ${m}]`:``}; - ${v.setByOffset(`global_idx`,`value`)}; - `;return` - ${t.registerUniforms(n).declareVariables(..._,v)} - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)}; - ${T}}`};return{name:`ConvTranspose2D`,shaderCache:{hint:`${t.cacheKey};${u}${h}${m}${d}${p}`,inputDependencies:v},getRunData:()=>({dispatchGroup:{x:_[0],y:_[1],z:_[2]},outputs:[{dims:n?n(i):i,dataType:e[0].dataType}],programUniforms:w}),getShaderSource:T}}}),Zo,Qo,$o,es,ts,ns,rs,os,ss,cs=j(()=>{"use strict";Xo(),ao(),yr(),Zo=(e,t,n,r,i,a)=>(e-1)*t+n+(r-1)*i+1-a,Qo=(e,t,n,r,i)=>{let a=Math.floor(e/2);t===`SAME_UPPER`?(n[r]=a,n[i]=e-a):t===`SAME_LOWER`&&(n[r]=e-a,n[i]=a)},$o=(e,t,n,r,i,a,o,s,c,l)=>{let u=e.length-2,d=l.length===0;c.length{let n=e.kernelShape.slice();if(e.kernelShape.length===0||e.kernelShape.reduce((e,t)=>e*t,1)===0){n.length=0;for(let e=2;ee+t,0)===0){let e=t[0].dims.length-2;c=Array(e).fill(1)}let l=e.strides.slice();if(l.reduce((e,t)=>e+t,0)===0){let e=t[0].dims.length-2;l=Array(e).fill(1)}$o(s,n,c,e.autoPad,e.group,i,l,r,o,a);let u=Object.assign({},e);return Object.assign(u,{kernelShape:n,pads:i,outputPadding:o,outputShape:a,dilations:c,strides:l}),u},ts=e=>{let t=io(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][typeof e.autoPad>`u`?0:e.autoPad],i=e.dilations,a=e.group,o=e.kernelShape,s=e.pads,c=e.strides,l=e.wIsConst(),u=e.outputPadding,d=e.outputShape;return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,outputPadding:u,outputShape:d,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},ns=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length!==4&&e[0].dims.length!==3)throw Error(`currently only support 2-dimensional conv`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[0];if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);let i=e[1].dims[1]*t.group;if(e.length===3&&(e[2].dims.length!==1||e[2].dims[0]!==i))throw Error(`invalid bias`);let a=e[0].dims.length-2;if(t.dilations.reduce((e,t)=>e+t,0)>0&&t.dilations.length!==a)throw Error(`dilations should be ${a}D`);if(t.strides.reduce((e,t)=>e+t,0)>0&&t.strides.length!==a)throw Error(`strides should be ${a}D`);if(t.pads.reduce((e,t)=>e+t,0)>0&&t.pads.length!==a*2)throw Error(`pads should be ${a*2}D`);if(t.outputPadding.length!==a&&t.outputPadding.length!==0)throw Error(`output_padding should be ${a}D`);if(t.kernelShape.reduce((e,t)=>e+t,0)>0&&t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`);if(t.outputShape.length!==0&&t.outputShape.length!==e[0].dims.length-2)throw Error(`invalid output shape`)},rs=(e,t,n,r)=>{let i=e.kernelCustomData.wT??e.compute(gr(t[1],[2,3,0,1]),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=i);let a=[t[0],i];t.length===3&&a.push(t[2]),e.compute(Yo(a,n,r),{inputs:a})},os=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=t.kernelShape;(i.length===0||i[0]===0)&&(i=[e.inputs[1].dims[2]]);let a=t.dilations;(a.length===0||a[0]===0)&&(a=[1]);let o=t.strides;(o.length===0||o[0]===0)&&(o=[1]);let s=t.pads;s.length===0&&(s=[0,0]),s=[0,s[0],0,s[1]],o=[1].concat(o),a=[1].concat(a),i=[1].concat(i);let c=t.outputPadding;c=[0].concat(c);let l=es({...t,pads:s,strides:o,dilations:a,kernelShape:i,outputPadding:c},r);rs(e,r,l,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},ss=(e,t)=>{if(ns(e.inputs,t),e.inputs[0].dims.length===3)os(e,t);else{let n=es(t,e.inputs);rs(e,e.inputs,n)}}}),ls,us,ds,fs=j(()=>{"use strict";V(),W(),Zn(),Y(),ls=(e,t,n,r)=>{let i=U.size(t),a=t.length,o=q(`input`,e,a),s=J(`output`,e,a),c=n.dataType===6?n.getInt32Array()[0]:Number(n.getBigInt64Array()[0]),l=U.normalizeAxis(c,a),u=e=>{let t=` i32(${o.indicesGet(`inputIndices`,`uniforms.axis`)}) `,n=K(`uniforms.input_shape`,`uniforms.axis`,a),i=r.reverse?t+(r.exclusive?` + 1`:``):`0`,c=r.reverse?n:t+(r.exclusive?``:` + 1`);return` - ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axis`,`u32`).declareVariables(o,s)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - var inputIndices = ${s.offsetToIndices(`global_idx`)}; - var sum = ${s.type.value}(0); - let first : i32 = ${i}; - let last : i32 = ${c}; - for (var i : i32 = first; i < last; i++) { - ${o.indicesSet(`inputIndices`,`uniforms.axis`,`u32(i)`)}; - sum = sum + ${o.getByIndices(`inputIndices`)}; - } - ${s.setByOffset(`global_idx`,`sum`)}; - }`};return{name:`CumSum`,shaderCache:{hint:r.cacheKey,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:t,dataType:e}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:[{type:12,data:i},{type:12,data:l},...G(t,t)]}),getShaderSource:u}},us=(e,t)=>{let n=e.inputs[0].dims,r=e.inputs[0].dataType,i=e.inputs[1];e.compute(ls(r,n,i,t),{inputs:[0]})},ds=e=>{let t=e.exclusive===1,n=e.reverse===1;return Xn({exclusive:t,reverse:n})}}),ps,ms,hs,gs,_s,vs=j(()=>{"use strict";V(),W(),Zn(),Y(),ps=e=>{if(!e||e.length!==1)throw Error(`DepthToSpace requires 1 input.`);if(e[0].dims.length!==4)throw Error(`DepthToSpace requires 4D input.`)},ms=(e,t,n,r)=>{let i=[];i.push(`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { - var a: ${n.type.indices};`);for(let r=0;r{let n,r,i,a,o,s,c=t.format===`NHWC`,l=t.blocksize,u=t.mode===`DCR`;c?([n,r,i,a]=e.dims,o=u?[n,r,i,l,l,a/l**2]:[n,r,i,a/l**2,l,l],s=u?[0,1,3,2,4,5]:[0,1,4,2,5,3]):([n,r,i,a]=[e.dims[0],e.dims[2],e.dims[3],e.dims[1]],o=u?[n,l,l,a/l**2,r,i]:[n,a/l**2,l,l,r,i],s=u?[0,3,4,1,5,2]:[0,1,4,2,5,3]);let d=e.reshape(o),f=d.dims.length,p=e.dataType,m=q(`a`,p,f),h=J(`output`,p,f),g=e=>` - ${e.registerUniform(`output_size`,`u32`).declareVariables(m,h)} - - ${ms(s,f,m,h)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let indices = ${h.offsetToIndices(`global_idx`)}; - let aIndices = perm(indices); - - ${h.setByOffset(`global_idx`,m.getByIndices(`aIndices`))} - }`;return{name:`DepthToSpace`,shaderCache:{hint:`${e.dims};${t.blocksize};${t.mode}`,inputDependencies:[`rank`]},getRunData:e=>{let t=c?[n,r*l,i*l,a/l**2]:[n,a/l**2,r*l,i*l],o=U.size(t),u=d.dims,f=U.sortBasedOnPerm(u,s);return{outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:[{type:12,data:o},...G(u,f)]}},getShaderSource:g}},gs=(e,t)=>{ps(e.inputs),e.compute(hs(e.inputs[0],t))},_s=e=>Xn({blocksize:e.blocksize,mode:e.mode,format:e.format})}),ys,bs,xs,Ss,Cs,ws,Ts,Es,Ds,Os,ks,As=j(()=>{"use strict";V(),W(),Zn(),Y(),ys=`[a-zA-Z]|\\.\\.\\.`,bs=`(`+ys+`)+`,xs=`^`+bs+`$`,Ss=`(`+bs+`,)*`+bs,Cs=`^`+Ss+`$`,ws=class{constructor(e=-1){this.symbolToIndices=new Map,this.inputIndex=e}addSymbol(e,t){let n=this.symbolToIndices.get(e);n===void 0?n=[t]:n.push(t),this.symbolToIndices.set(e,n)}},Ts=class{constructor(e,t){var n;this.equation=t,this.hasEllipsis=!1,this.symbolToInfo=new Map,this.lhs=[],this.outputDims=[];let[r,i]=t.includes(`->`)?t.split(`->`,2):[t,``];if(!r.match(RegExp(Cs)))throw Error(`Invalid LHS term`);if(r.split(`,`).forEach((t,n)=>{let r=e[n].dims.slice();if(!t.match(RegExp(xs)))throw Error(`Invalid LHS term`);let i=this.processTerm(t,!0,r,n);this.lhs.push(i)}),i===``)i+=[...this.symbolToInfo.entries()].filter(([e,t])=>t.count===1||e===`...`).map(([e])=>e).join(``);else if(!i.match(RegExp(bs)))throw Error(`Invalid RHS`);(n=i.match(RegExp(ys,`g`)))?.forEach(e=>{if(e===`...`)this.outputDims=this.outputDims.concat(this.ellipsisDims);else{let t=this.symbolToInfo.get(e);if(t===void 0)throw Error(`Invalid RHS symbol`);this.outputDims.push(t.dimValue)}}),this.rhs=this.processTerm(i,!1,this.outputDims)}addSymbol(e,t,n){let r=this.symbolToInfo.get(e);if(r!==void 0){if(r.dimValue!==t&&r.count!==1)throw Error(`Dimension mismatch`);r.count++,r.inputIndices.push(n)}else r={count:1,dimValue:t,inputIndices:[n]};this.symbolToInfo.set(e,r)}processTerm(e,t,n,r=-1){let i=n.length,a=!1,o=[],s=0;if(!e.match(RegExp(xs))&&!t&&e!==``)throw Error(`Invalid LHS term`);let c=e.match(RegExp(ys,`g`)),l=new ws(r);return c?.forEach((e,u)=>{if(e===`...`){if(a)throw Error(`Only one ellipsis is allowed per input term`);a=!0;let e=i-c.length+1;if(e<0)throw Error(`Ellipsis out of bounds`);if(o=n.slice(s,s+e),this.hasEllipsis){if(this.ellipsisDims.length!==o.length||this.ellipsisDims.toString()!==o.toString())throw Error(`Ellipsis dimensions mismatch`)}else if(t)this.hasEllipsis=!0,this.ellipsisDims=o;else throw Error(`Ellipsis must be specified in the LHS`);for(let e=0;ee+`_max`,Ds=(e,t,n,r)=>{let i=e.map(e=>e.length).map((e,n)=>q(`input${n}`,t,e)),a=U.size(r),o=J(`output`,t,r.length),s=[...n.symbolToInfo.keys()].filter(e=>!n.rhs.symbolToIndices.has(e)),c=e=>{let t=[],r=`var prod = 1.0;`,a=`var sum = 0.0;`,c=`sum += prod;`,l=[],u=[],d=[],f=[],p=n.symbolToInfo.size===n.rhs.symbolToIndices.size;n.symbolToInfo.forEach((e,r)=>{if(n.rhs.symbolToIndices.has(r)){var a;let s=(a=n.rhs.symbolToIndices.get(r))?.[0];s!==void 0&&n.lhs.forEach((n,a)=>{if(e.inputIndices.includes(a)){let e=n.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{t.push(`${i[a].indicesSet(`input${a}Indices`,e,o.indicesGet(`outputIndices`,s))}`)})}})}else n.lhs.forEach((t,n)=>{if(e.inputIndices.includes(n)){let e=t.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{l.push(`${i[n].indicesSet(`input${n}Indices`,e,`${r}`)}`)}),f.push(`prod *= ${i[n].getByIndices(`input${n}Indices`)};`)}}),u.push(`for(var ${r}: u32 = 0; ${r} < uniforms.${Es(r)}; ${r}++) {`),d.push(`}`)});let m=p?[...t,`let sum = ${i.map((e,t)=>e.getByIndices(`input${t}Indices`)).join(` * `)};`]:[...t,a,...u,...l,r,...f,c,...d];return` - ${e.registerUniforms(s.map(e=>({name:`${Es(e)}`,type:`u32`}))).registerUniform(`outputSize`,`u32`).declareVariables(...i,o)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - var outputIndices = ${o.offsetToIndices(`global_idx`)}; - ${i.map((e,t)=>`var input${t}Indices: ${i[t].type.indices};`).join(` -`)} - ${m.join(` -`)}; - ${o.setByOffset(`global_idx`,`sum`)}; - }`};return{name:`Einsum`,shaderCache:{hint:n.equation,inputDependencies:e.map(()=>`rank`)},getRunData:()=>{let i=s.filter(e=>n.symbolToInfo.has(e)).map(e=>{var t;return{type:12,data:(t=n.symbolToInfo.get(e))?.dimValue||0}});i.push({type:12,data:a});let o=e.map((e,t)=>[...G(e)]).reduce((e,t)=>e.concat(t),i);return o.push(...G(r)),{outputs:[{dims:r,dataType:t}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:o}},getShaderSource:c}},Os=(e,t)=>{let n=new Ts(e.inputs,t.equation),r=n.outputDims,i=e.inputs.map((e,t)=>e.dims);e.compute(Ds(i,e.inputs[0].dataType,n,r))},ks=e=>{let t=e.equation.replace(/\s+/g,``);return Xn({equation:t})}}),js,Ms,Ns,Ps,Fs,Is=j(()=>{"use strict";V(),W(),Y(),js=e=>{if(!e||e.length!==2)throw Error(`Expand requires 2 input.`);let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=n.length{let n=e.length-t.length,r=[];for(let t=0;te.length>t.length?Ms(e,t):Ms(t,e),Ps=e=>{let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=Ns(t,n),i=e[0].dataType,a=i===9||U.size(t)===1,o=i===9||t.length>0&&t[t.length-1]%4==0?4:1,s=a||r.length>0&&r[r.length-1]%4==0?4:1,c=Math.ceil(U.size(r)/s),l=e=>{let n=q(`input`,i,t.length,o),a=J(`output`,i,r.length,s),c;if(i===9){let e=(e,t,r=``)=>` - let outputIndices${t} = ${a.offsetToIndices(`outputOffset + ${t}u`)}; - let offset${t} = ${n.broadcastedIndicesToOffset(`outputIndices${t}`,a)}; - let index${t} = offset${t} / 4u; - let component${t} = offset${t} % 4u; - ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); - `;c=` - let outputOffset = global_idx * ${s}; - var data = vec4(0); - ${e(`data`,0,`u32`)} - ${e(`data`,1,`u32`)} - ${e(`data`,2,`u32`)} - ${e(`data`,3,`u32`)} - ${a.setByOffset(`global_idx`,`data`)} - }`}else c=` - let outputIndices = ${a.offsetToIndices(`global_idx * ${s}`)}; - let inputOffset = ${n.broadcastedIndicesToOffset(`outputIndices`,a)}; - let data = ${a.type.value}(${n.getByOffset(`inputOffset / ${o}`)}); - ${a.setByOffset(`global_idx`,`data`)} - }`;return` - ${e.registerUniform(`vec_size`,`u32`).declareVariables(n,a)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - ${c}`},u=[{type:12,data:c},...G(t,r)];return{name:`Expand`,shaderCache:{hint:`${r.length};${o}${s}`,inputDependencies:[`rank`]},getShaderSource:l,getRunData:()=>({outputs:[{dims:r,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:u})}},Fs=e=>{js(e.inputs),e.compute(Ps(e.inputs),{inputs:[0]})}}),Ls,Rs,zs=j(()=>{"use strict";V(),W(),Y(),ka(),Ls=e=>{let t=e[0].dataType,n=U.size(e[0].dims),r=U.size(e[1].dims),i=r%4==0,a=e=>{let n=q(`x`,t,[1],4),r=q(`bias`,t,[1],4),a=J(`y`,t,[1],4),o=[{name:`output_vec_size`,type:`u32`},{name:`bias_size`,type:`u32`}],s=e=>` - let bias${e}_offset: u32 = (global_idx * 4 + ${e}) % uniforms.bias_size; - let bias${e} = ${r.getByOffset(`bias${e}_offset / 4`)}[bias${e}_offset % 4];`,c=i?` - let bias = ${r.getByOffset(`global_idx % (uniforms.bias_size / 4)`)};`:`${s(0)}${s(1)}${s(2)}${s(3)} - let bias = ${n.type.value}(bias0, bias1, bias2, bias3);`;return`${e.registerUniforms(o).declareVariables(n,r,a)} - - ${xa(tr(t))} - - ${e.mainStart(Qn)} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_vec_size`)} - - let x = ${n.getByOffset(`global_idx`)}; - ${c} - let x_in = x + bias; - ${a.setByOffset(`global_idx`,Sa(`x_in`))} - }`};return{name:`FastGeluWithBias`,shaderCache:{hint:`${i}`,inputDependencies:[`type`,`type`]},getShaderSource:a,getRunData:e=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],programUniforms:[{type:12,data:Math.ceil(n/4)},{type:12,data:r}],dispatchGroup:{x:Math.ceil(n/Qn/4)}})}},Rs=e=>{e.inputs.length<2||U.size(e.inputs[1].dims)===0?Ca(e):e.compute(Ls(e.inputs))}}),Bs,Vs,Hs,Us,Ws=j(()=>{"use strict";V(),W(),Zn(),Y(),Bs=e=>{if(!e||e.length!==2)throw Error(`Gather requires 2 inputs.`)},Vs=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=U.normalizeAxis(t.axis,i),o=n.slice(0);o.splice(a,1,...r);let s=n[a],c=e[0].dataType===9?4:1,l=Math.ceil(U.size(o)/c),u=[{type:12,data:l},{type:6,data:s},{type:12,data:a},...G(e[0].dims,e[1].dims,o)],d=t=>{let n=q(`data`,e[0].dataType,e[0].dims.length,c),s=q(`inputIndices`,e[1].dataType,e[1].dims.length),l=J(`output`,e[0].dataType,o.length,c),u=e=>{let t=r.length,c=`var indicesIndices${e} = ${s.type.indices}(0);`;for(let n=0;n1?`indicesIndices${e}[${n}]`:`indicesIndices${e}`} = ${o.length>1?`outputIndices${e}[uniforms.axis + ${n}]`:`outputIndices${e}`};`;c+=` - var idx${e} = ${s.getByIndices(`indicesIndices${e}`)}; - if (idx${e} < 0) { - idx${e} = idx${e} + uniforms.axisDimLimit; - } - var dataIndices${e} : ${n.type.indices}; - `;for(let n=0,r=0;n1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = u32(idx${e});`,r+=t):(c+=`${i>1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = ${o.length>1?`outputIndices${e}[${r}]`:`outputIndices${e}`};`,r++);return c},d;if(e[0].dataType===9){let e=(e,t,r=``)=>` - let outputIndices${t} = ${l.offsetToIndices(`outputOffset + ${t}u`)}; - ${u(t)}; - let offset${t} = ${n.indicesToOffset(`dataIndices${t}`)}; - let index${t} = offset${t} / 4u; - let component${t} = offset${t} % 4u; - ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); - `;d=` - let outputOffset = global_idx * ${c}; - var value = vec4(0); - ${e(`value`,0,`u32`)} - ${e(`value`,1,`u32`)} - ${e(`value`,2,`u32`)} - ${e(`value`,3,`u32`)} - ${l.setByOffset(`global_idx`,`value`)} - `}else d=` - let outputIndices = ${l.offsetToIndices(`global_idx`)}; - ${u(``)}; - let value = ${n.getByIndices(`dataIndices`)}; - ${l.setByOffset(`global_idx`,`value`)}; - `;return` - ${t.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(n,s,l)} - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - ${d} - }`};return{name:`Gather`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:o,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:d}},Hs=e=>Xn({axis:e.axis}),Us=(e,t)=>{let n=e.inputs;Bs(n),e.compute(Vs(e.inputs,t))}}),Gs,Ks,qs,Js=j(()=>{"use strict";V(),W(),Y(),Gs=(e,t,n,r,i,a,o,s,c)=>{let l=[{type:12,data:a},{type:12,data:r},{type:12,data:i},{type:12,data:n},{type:12,data:o},{type:12,data:s},{type:12,data:c}],u=[a];l.push(...G(t.dims,u));let d=e=>{let r=q(`indices_data`,t.dataType,t.dims.length),a=J(`input_slice_offsets_data`,12,1,1),o=[r,a],s=[{name:`output_size`,type:`u32`},{name:`batch_dims`,type:`u32`},{name:`input_dims`,type:`u32`,length:i.length},{name:`sizes_from_slice_dims_data`,type:`u32`,length:n.length},{name:`num_slices_per_batch`,type:`u32`},{name:`input_batch_stride`,type:`u32`},{name:`num_slice_dims`,type:`u32`}];return` - ${e.registerUniforms(s).declareVariables(...o)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let batch_idx = global_idx / uniforms.num_slices_per_batch; - let base_offset = batch_idx * uniforms.input_batch_stride; - - let slice_indices_base_offset = global_idx * uniforms.num_slice_dims; - var relative_slice_offset = 0; - for (var dim_idx = 0u; dim_idx < uniforms.num_slice_dims; dim_idx ++) { - var index = i32(indices_data[dim_idx + slice_indices_base_offset].x); - let input_dim_idx = uniforms.batch_dims + dim_idx; - if (index < 0) { - ${i.length===1?`index += i32(uniforms.input_dims);`:`index += i32(uniforms.input_dims[input_dim_idx]);`} - } - ${n.length===1?`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data);`:`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data[dim_idx]);`} - } - - input_slice_offsets_data[global_idx] = base_offset + u32(relative_slice_offset); - }`};return e.compute({name:`computeSliceOffsets`,shaderCache:{hint:`${i.length}_${n.length}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:u,dataType:e.inputs[1].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:l}),getShaderSource:d},{inputs:[t],outputs:[-1]})[0]},Ks=(e,t)=>{let n=e.inputs,r=n[0].dims,i=n[0].dataType,a=n[1].dims,o=a[a.length-1],s=U.sizeToDimension(a,a.length-1),c=U.sizeFromDimension(r,t.batchDims+o),l=U.sizeToDimension(r,t.batchDims),u=U.sizeFromDimension(r,t.batchDims),d=s/l,f=Array(o),p=c;for(let e=0;er.length)throw Error(`last dimension of indices must not be larger than rank of input tensor`);let g=a.slice(0,-1).concat(r.slice(h)),_=U.size(g),v=[{type:12,data:_},{type:12,data:c},...G(n[0].dims,m.dims,g)],y=e=>{let t=q(`data`,n[0].dataType,n[0].dims.length),r=q(`slice_offsets`,12,m.dims.length),i=J(`output`,n[0].dataType,g.length);return` - ${e.registerUniform(`output_size`,`u32`).registerUniform(`slice_size`,`u32`).declareVariables(t,r,i)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let slice_offset = slice_offsets[global_idx / uniforms.slice_size]; - output[global_idx] = data[u32(slice_offset) + global_idx % uniforms.slice_size]; - }`};e.compute({name:`GatherND`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:g,dataType:i}],dispatchGroup:{x:Math.ceil(_/64)},programUniforms:v}),getShaderSource:y},{inputs:[n[0],m]})},qs=e=>({batchDims:e.batch_dims,cacheKey:``})}),Ys,Xs,Zs,Qs,$s=j(()=>{"use strict";V(),W(),Zn(),Y(),Ys=(e,t)=>{if(e.length<3||e.length>4)throw Error(`GatherBlockQuantized requires 3 or 4 inputs.`);let n=U.normalizeAxis(t.quantizeAxis,e[0].dims.length),r=t.blockSize,i=e[0],a=e[2],o=e.length===4?e[3]:void 0;if(a.dims.length!==i.dims.length||!i.dims.map((e,t)=>t===n?Math.ceil(e/r)===a.dims[t]:e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Scales must have the same rank as the input tensor and the dims should match except on gatherAxis.`);if(o){if(o.dataType!==i.dataType)throw Error(`Zero point must have the same data type as the input tensor.`);if(o.dims.length!==a.dims.length||!o.dims.map((e,t)=>e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Zero point must have the same rank as the input tensor and the dims should match except on quantizeAxis.`)}},Xs=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=U.normalizeAxis(t.gatherAxis,i),o=U.normalizeAxis(t.quantizeAxis,i),s=n.slice(0);s.splice(a,1,...r);let c=U.size(s),l=e[2].dataType,u=e[0].dataType===22,d=[{type:12,data:c},{type:12,data:o},{type:12,data:a},{type:12,data:t.blockSize},...G(...e.map((e,t)=>e.dims),s)],f=t=>{let i=q(`data`,e[0].dataType,e[0].dims.length),o=q(`inputIndices`,e[1].dataType,e[1].dims.length),c=q(`scales`,e[2].dataType,e[2].dims.length),d=e.length>3?q(`zeroPoint`,e[3].dataType,e[3].dims.length):void 0,f=J(`output`,l,s.length),p=[i,o,c];d&&p.push(d);let m=[{name:`output_size`,type:`u32`},{name:`quantize_axis`,type:`u32`},{name:`gather_axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` - ${t.registerUniforms(m).declareVariables(...p,f)} - ${t.mainStart()} - let output_indices = ${f.offsetToIndices(`global_idx`)}; - var indices_indices = ${o.type.indices}(0); - ${r.length>1?` - for (var i: u32 = 0; i < ${r.length}; i++) { - let index = ${f.indicesGet(`output_indices`,`uniforms.gather_axis + i`)}; - ${o.indicesSet(`indices_indices`,`i`,`index`)}; - }`:`indices_indices = ${f.indicesGet(`output_indices`,`uniforms.gather_axis`)};`}; - var data_indices = ${i.type.indices}(0); - for (var i: u32 = 0; i < uniforms.gather_axis; i++) { - let index = ${f.indicesGet(`output_indices`,`i`)}; - ${i.indicesSet(`data_indices`,`i`,`index`)}; - } - var index_from_indices = ${o.getByIndices(`indices_indices`)}; - if (index_from_indices < 0) { - index_from_indices += ${n[a]}; - } - ${i.indicesSet(`data_indices`,`uniforms.gather_axis`,`u32(index_from_indices)`)}; - for (var i = uniforms.gather_axis + 1; i < ${s.length}; i++) { - let index = ${f.indicesGet(`output_indices`,`i + ${r.length} - 1`)}; - ${i.indicesSet(`data_indices`,`i`,`index`)}; - } - let data_offset = ${i.indicesToOffset(`data_indices`)}; - let data_index = data_offset % 8; - // Convert 4-bit packed data to 8-bit packed data. - let packed_4bit_quantized_data = ${i.getByOffset(`data_offset / 8`)}; - let packed_8bit_quantized_data = (packed_4bit_quantized_data >> (4 * (data_index % 2))) & 0x0f0f0f0f; - let quantized_data_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_quantized_data)); - let quantized_data = quantized_data_vec[data_index / 2]; - var scale_indices = data_indices; - let quantize_axis_index = ${c.indicesGet(`data_indices`,`uniforms.quantize_axis`)} / uniforms.block_size; - ${c.indicesSet(`scale_indices`,`uniforms.quantize_axis`,`quantize_axis_index`)}; - var scale = ${c.getByIndices(`scale_indices`)}; - ${d?` - let zero_point_indices = scale_indices; - let zero_point_offset = ${d.indicesToOffset(`zero_point_indices`)}; - let zero_point_index = zero_point_offset % 8; - let packed_4bit_zero_points = ${d.getByOffset(`zero_point_offset / 8`)}; - let packed_8bit_zero_points = (packed_4bit_zero_points >> (4 * (zero_point_index % 2))) & 0x0f0f0f0f; - let zero_point_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_zero_points)); - let zero_point = zero_point_vec[zero_point_index / 2];`:`var zero_point = 0`}; - let dequantized_data = ${tr(l)}(quantized_data - zero_point) * scale; - ${f.setByOffset(`global_idx`,`dequantized_data`)}; - }`};return{name:`GatherBlockQuantized`,shaderCache:{hint:`${t.cacheKey};${e.filter((e,t)=>t!==1).map(e=>e.dims.join(`_`)).join(`;`)}`,inputDependencies:Array.from({length:e.length},(e,t)=>`rank`)},getRunData:()=>({outputs:[{dims:s,dataType:l}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:d}),getShaderSource:f}},Zs=(e,t)=>{let n=e.inputs;Ys(n,t),e.compute(Xs(e.inputs,t))},Qs=e=>Xn({blockSize:e.blockSize,gatherAxis:e.gatherAxis,quantizeAxis:e.quantizeAxis})}),ec,tc,nc,rc,ic=j(()=>{"use strict";V(),W(),Zn(),Y(),ec=e=>{if(!e||e.length!==2)throw Error(`GatherElements requires 2 inputs.`);if(e[0].dims.length<1)throw Error(`GatherElements requires that the data input be rank >= 1.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`GatherElements requires that the data input and - indices input tensors be of same rank.`)},tc=(e,t)=>{let n=e[0].dims,r=e[0].dataType,i=n.length,a=e[1].dims,o=e[1].dataType,s=U.normalizeAxis(t.axis,i),c=n[s],l=a.slice(0),u=U.size(l),d=q(`input`,r,i),f=q(`indicesInput`,o,a.length),p=J(`output`,r,l.length),m=[{type:12,data:u},{type:6,data:c},{type:12,data:s}];return m.push(...G(n,a,l)),{name:`GatherElements`,shaderCache:{inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:l,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:m}),getShaderSource:e=>` - ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(d,f,p)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - - let outputIndices = ${p.offsetToIndices(`global_idx`)}; - - var idx = ${f.getByOffset(`global_idx`)}; - if (idx < 0) { - idx = idx + uniforms.axisDimLimit; - } - var inputIndices = ${d.type.indices}(outputIndices); - ${d.indicesSet(`inputIndices`,`uniforms.axis`,`u32(idx)`)}; - let value = ${d.getByIndices(`inputIndices`)}; - - ${p.setByOffset(`global_idx`,`value`)}; - }`}},nc=e=>Xn({axis:e.axis}),rc=(e,t)=>{let n=e.inputs;ec(n),e.compute(tc(e.inputs,t))}}),ac,oc,sc,cc,lc=j(()=>{"use strict";V(),W(),Y(),ac=e=>{if(!e)throw Error(`Input is missing`);if(e.length<2||e.length>3)throw Error(`Invaid input number.`);if(e.length===3&&e[2].dims.length>2)throw Error(`Invalid input shape of C`);if(e[0].dataType!==e[1].dataType||e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`Input types are mismatched`)},oc=(e,t)=>{let n=e[0].dims.slice(),r=e[1].dims.slice(),[i,a,o]=vn.getShapeOfGemmResult(n,t.transA,r,t.transB,e.length===3?e[2].dims:void 0),s=[i,a];if(!s)throw Error(`Can't use gemm on the given tensors`);let c=16,l=Math.ceil(a/c),u=Math.ceil(i/c),d=!0,f=U.size(s),p=[{type:12,data:d?l:f},{type:12,data:i},{type:12,data:a},{type:12,data:o},{type:1,data:t.alpha},{type:1,data:t.beta}],m=[`type`,`type`];e.length===3&&(p.push(...G(e[2].dims)),m.push(`rank`)),p.push(...G(s));let h=n=>{let r=``;t.transA&&t.transB?r=`value += a[k * uniforms.M + m] * b[n * uniforms.K + k];`:t.transA&&!t.transB?r=`value += a[k * uniforms.M + m] * b[k * uniforms.N + n];`:!t.transA&&t.transB?r=`value += a[m * uniforms.K + k] * b[n * uniforms.K + k];`:!t.transA&&!t.transB&&(r=`value += a[m * uniforms.K + k] * b[k * uniforms.N + n];`);let i=t.alpha===1?``:`value *= uniforms.alpha;`,a=q(`a`,e[0].dataType,e[0].dims),o=q(`b`,e[1].dataType,e[1].dims),c=a.type.value,l=null,u=[a,o];e.length===3&&(l=q(`c`,e[2].dataType,e[2].dims.length),u.push(l));let d=J(`output`,e[0].dataType,s.length);u.push(d);let f=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}];return` - ${n.registerUniforms(f).declareVariables(...u)} - - ${n.mainStart()} - ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let m = global_idx / uniforms.N; - let n = global_idx % uniforms.N; - - var value = ${c}(0); - for (var k: u32 = 0u; k < uniforms.K; k++) { - ${r} - } - - ${i} - ${l==null?``:`let cOffset = ${l.broadcastedIndicesToOffset(`vec2(m, n)`,d)}; value += ${c}(uniforms.beta) * ${l.getByOffset(`cOffset`)};`} - output[global_idx] = value; - }`},g=n=>{let r=q(`a`,e[0].dataType,e[0].dims),i=q(`b`,e[1].dataType,e[1].dims),a=null,o=[r,i];e.length===3&&(a=q(`c`,e[2].dataType,e[2].dims.length),o.push(a));let l=J(`output`,e[0].dataType,s.length);o.push(l);let u=[{name:`num_tile_n`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}],d=``,f=``;t.transA&&t.transB?(f=` - var col = tile_row_start + local_id.x; - var row = k_start + local_id.y; - if (col < uniforms.M && row < uniforms.K) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = k_start + local_id.x; - row = tile_col_start + local_id.y; - if (col < uniforms.K && row < uniforms.N) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[k][local_id.y] * tile_b[local_id.x][k];`):t.transA&&!t.transB?(f=` - var col = tile_row_start + local_id.x; - var row = k_start + local_id.y; - if (col < uniforms.M && row < uniforms.K) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = tile_col_start + local_id.x; - row = k_start + local_id.y; - if (col < uniforms.N && row < uniforms.K) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[k][local_id.y] * tile_b[k][local_id.x];`):!t.transA&&t.transB?(f=` - var col = k_start + local_id.x; - var row = tile_row_start + local_id.y; - if (col < uniforms.K && row < uniforms.M) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = k_start + local_id.x; - row = tile_col_start + local_id.y; - if (col < uniforms.K && row < uniforms.N) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[local_id.y][k] * tile_b[local_id.x][k];`):!t.transA&&!t.transB&&(f=` - var col = k_start + local_id.x; - var row = tile_row_start + local_id.y; - if (col < uniforms.K && row < uniforms.M) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = tile_col_start + local_id.x; - row = k_start + local_id.y; - if (col < uniforms.N && row < uniforms.K) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[local_id.y][k] * tile_b[k][local_id.x];`);let p=t.alpha===1?``:`value *= uniforms.alpha;`;return` - ${n.registerUniforms(u).declareVariables(...o)} - var tile_a: array, ${c}>; - var tile_b: array, ${c}>; - ${n.mainStart([c,c,1])} - let tile_col_start = (workgroup_index % uniforms.num_tile_n) * ${c}; - let tile_row_start = (workgroup_index / uniforms.num_tile_n) * ${c}; - let num_tiles = (uniforms.K - 1) / ${c} + 1; - var k_start = 0u; - var value = ${l.type.value}(0); - for (var t: u32 = 0u; t < num_tiles; t++) { - ${f} - k_start = k_start + ${c}; - workgroupBarrier(); - - for (var k: u32 = 0u; k < ${c}; k++) { - ${d} - } - workgroupBarrier(); - } - - ${p} - let m = tile_row_start + local_id.y; - let n = tile_col_start + local_id.x; - ${a==null?``:`let cOffset = ${a.broadcastedIndicesToOffset(`vec2(m, n)`,l)}; value += ${l.type.value}(uniforms.beta) * ${a.getByOffset(`cOffset`)};`} - if (m < uniforms.M && n < uniforms.N) { - output[m * uniforms.N + n] = value; - } - }`};return d?{name:`GemmShared`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:l*u},programUniforms:p}),getShaderSource:g}:{name:`Gemm`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},sc=e=>{let t=e.transA,n=e.transB,r=e.alpha,i=e.beta;return{transA:t,transB:n,alpha:r,beta:i,cacheKey:`${e.transA};${e.transB};${e.alpha===1}`}},cc=(e,t)=>{ac(e.inputs),e.compute(oc(e.inputs,t))}}),uc,dc,fc,pc,mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc=j(()=>{"use strict";V(),W(),Zn(),Y(),[uc,dc,fc,pc]=[0,1,2,3],mc=e=>{if(e[0].dims.length!==4)throw Error(`only 4-D tensor is supported.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`input dimensions must be equal to grid dimensions`);if(e[0].dims.length-2!==e[1].dims[e[1].dims.length-1])throw Error(`last dimension of grid must be equal to ${e[0].dims.length-2}`);if(e[0].dims[0]!==e[1].dims[0])throw Error(`grid batch size must match input batch size`)},hc=` - fn gs_get_cubic_coeffs(x: f32) -> vec4 { - let cubic_alpha = -0.75f; - let x_abs = abs(x); - var coeffs: vec4; - coeffs[0] = (((cubic_alpha * (x_abs + 1) - 5 * cubic_alpha) * (x_abs + 1) + 8 * cubic_alpha) * (x_abs + 1) - 4 * cubic_alpha); - coeffs[1] = (((cubic_alpha + 2) * x_abs - (cubic_alpha + 3)) * x_abs * x_abs + 1); - coeffs[2] = (((cubic_alpha + 2) * (1 - x_abs) - (cubic_alpha + 3)) * (1 - x_abs) * (1 - x_abs) + 1); - coeffs[3] = (((cubic_alpha * (2 - x_abs) - 5 * cubic_alpha) * (2 - x_abs) + 8 * cubic_alpha) * (2 - x_abs) - 4 * cubic_alpha); - return coeffs; - } -`,gc=e=>` - fn gs_bicubic_interpolate(p: mat4x4<${e}>, x: f32, y: f32) -> ${e} { - var v: vec4; - var coeffs = gs_get_cubic_coeffs(x); - for (var i = 0; i < 4; i++) { - v[i] = coeffs[0] * p[i][0] + coeffs[1] * p[i][1] + coeffs[2] * p[i][2] + coeffs[3] * p[i][3]; - } - coeffs = gs_get_cubic_coeffs(y); - let pixel = ${e}(coeffs[0] * v[0] + coeffs[1] * v[1] + coeffs[2] * v[2] + coeffs[3] * v[3]); - return pixel; - } -`,_c=e=>` - fn gs_denormalize(n: f32, length: i32) -> f32 { - ${e.alignCorners===0?` - // alignCorners: false => [-1, 1] to [-0.5, length - 0.5] - return ((n + 1.0) * f32(length) - 1.0) / 2.0; - `:` - // alignCorners: true => [-1, 1] to [0, length - 1] - return (n + 1.0) / 2.0 * (f32(length - 1)); - `} - } -`,vc=e=>` - ${e.paddingMode===`reflection`?` - fn gs_reflect(x: i32, x_min: f32, x_max: f32) -> u32 { - var dx = 0.0; - var fx = f32(x); - let range = x_max - x_min; - if (fx < x_min) { - dx = x_min - fx; - let n = u32(dx / range); - let r = dx - f32(n) * range; - if (n % 2 == 0) { - fx = x_min + r; - } else { - fx = x_max - r; - } - } else if (fx > x_max) { - dx = fx - x_max; - let n = u32(dx / range); - let r = dx - f32(n) * range; - if (n % 2 == 0) { - fx = x_max - r; - } else { - fx = x_min + r; - } - } - return u32(fx); - }`:``} -`,yc=(e,t,n)=>` - fn pixel_at_grid(r: i32, c: i32, H: i32, W: i32, batch: u32, channel: u32, border: vec4) -> ${t} { - var pixel = ${t}(0); - var indices = vec4(0); - indices[${uc}] = batch; - indices[${dc}] = channel;`+(()=>{switch(n.paddingMode){case`zeros`:return` - if (r >= 0 && r < H && c >=0 && c < W) { - indices[${fc}] = u32(r); - indices[${pc}] = u32(c); - } else { - return ${t}(0); - } - `;case`border`:return` - indices[${fc}] = u32(clamp(r, 0, H - 1)); - indices[${pc}] = u32(clamp(c, 0, W - 1)); - `;case`reflection`:return` - indices[${fc}] = gs_reflect(r, border[1], border[3]); - indices[${pc}] = gs_reflect(c, border[0], border[2]); - `;default:throw Error(`padding mode ${n.paddingMode} is not supported`)}})()+` - return ${e.getByIndices(`indices`)}; - } -`,bc=(e,t,n)=>(()=>{switch(n.mode){case`nearest`:return` - let result = pixel_at_grid(i32(round(y)), i32(round(x)), H_in, W_in, indices[${uc}], indices[${dc}], border); - `;case`bilinear`:return` - let x1 = i32(floor(x)); - let y1 = i32(floor(y)); - let x2 = x1 + 1; - let y2 = y1 + 1; - - let p11 = pixel_at_grid(y1, x1, H_in, W_in, indices[${uc}], indices[${dc}], border); - let p12 = pixel_at_grid(y1, x2, H_in, W_in, indices[${uc}], indices[${dc}], border); - let p21 = pixel_at_grid(y2, x1, H_in, W_in, indices[${uc}], indices[${dc}], border); - let p22 = pixel_at_grid(y2, x2, H_in, W_in, indices[${uc}], indices[${dc}], border); - - let dx2 = ${t}(f32(x2) - x); - let dx1 = ${t}(x - f32(x1)); - let dy2 = ${t}(f32(y2) - y); - let dy1 = ${t}(y - f32(y1)); - let result = dy2 * (dx2 * p11 + dx1 * p12) + dy1 * (dx2 * p21 + dx1 * p22); - `;case`bicubic`:return` - let x0 = i32(floor(x)) - 1; - let y0 = i32(floor(y)) - 1; - var p: mat4x4<${t}>; - for (var h = 0; h < 4; h++) { - for (var w = 0; w < 4; w++) { - p[h][w] = pixel_at_grid(h + y0, w + x0, H_in, W_in, indices[${uc}], indices[${dc}], border); - } - } - - let dx = x - f32(x0 + 1); - let dy = y - f32(y0 + 1); - let result = gs_bicubic_interpolate(p, dx, dy); - `;default:throw Error(`mode ${n.mode} is not supported`)}})()+`${e.setByOffset(`global_idx`,`result`)}`,xc=(e,t)=>{let n=q(`x`,e[0].dataType,e[0].dims.length),r=[e[1].dims[0],e[1].dims[1],e[1].dims[2]],i=q(`grid`,e[1].dataType,r.length,2),a=[e[0].dims[0],e[0].dims[1],e[1].dims[1],e[1].dims[2]];t.format===`NHWC`&&(a=[e[0].dims[0],e[1].dims[1],e[1].dims[2],e[0].dims[3]],[uc,dc,fc,pc]=[0,3,1,2]);let o=J(`output`,e[0].dataType,a.length),s=n.type.value,c=U.size(a),l=[{type:12,data:c},...G(e[0].dims,r,a)],u=e=>` - ${e.registerUniform(`output_size`,`u32`).declareVariables(n,i,o)} - ${hc} - ${gc(s)} - ${_c(t)} - ${vc(t)} - ${yc(n,s,t)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let H_in = i32(uniforms.x_shape[${fc}]); - let W_in = i32(uniforms.x_shape[${pc}]); - - ${t.alignCorners===0?` - let x_min = -0.5; - let x_max = f32(W_in) - 0.5; - let y_min = -0.5; - let y_max = f32(H_in) - 0.5; - `:` - let x_min = 0.0; - let x_max = f32(W_in) - 1.0; - let y_min = 0.0; - let y_max = f32(H_in) - 1.0; - `}; - let border = vec4(x_min, y_min, x_max, y_max); - - let indices = ${o.offsetToIndices(`global_idx`)}; - var grid_indices = vec3(indices[${uc}], indices[${fc}], indices[${pc}]); - let nxy = ${i.getByIndices(`grid_indices`)}; - var x = gs_denormalize(f32(nxy[0]), W_in); - var y = gs_denormalize(f32(nxy[1]), H_in); - - ${bc(o,s,t)} - }`;return{name:`GridSample`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:[`type`,`type`]},getRunData:e=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:l}},getShaderSource:u}},Sc=(e,t)=>{mc(e.inputs),e.compute(xc(e.inputs,t))},Cc=e=>Xn({alignCorners:e.align_corners,mode:e.mode,paddingMode:e.padding_mode,format:e.format})}),Tc,Ec,Dc,Oc,kc,Ac,jc,Mc=j(()=>{"use strict";V(),W(),Zn(),Rn(),Oi(),Y(),yr(),Tc=(e,t)=>e.length>t&&e[t].dims.length>0?e[t]:void 0,Ec=(e,t)=>{let n=e[0],r=Tc(e,1),i=Tc(e,2),a=Tc(e,3),o=Tc(e,4),s=Tc(e,5),c=Tc(e,6),l=Tc(e,7);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let u=n.dims[0],d=n.dims[1],f=n.dims.length===3?n.dims[2]:t.numHeads*n.dims[4],p=d,m=0,h=0,g=Math.floor(f/t.numHeads);if(c&&l&&U.size(c.dims)&&U.size(l.dims)){if(c.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(c.dims[0]!==u||c.dims[1]!==t.numHeads||c.dims[3]!==g)throw Error(`Input "past_key" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(l.dims[0]!==u||l.dims[1]!==t.numHeads||l.dims[3]!==g)throw Error(`Input "past_value" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(c.dims[2]!==l.dims[2])throw Error(`Input "past_key" and "past_value" shall have same dim 2 (past_sequence_length)`);if(l.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);m=c.dims[2],h=c.dims[2]}else if(c&&U.size(c.dims)||l&&U.size(l.dims))throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _;if(r&&U.size(r.dims)>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(r.dims[2]!==n.dims[2])throw Error(`Input "query" and "key" shall have same dim 2 (hidden_size)`);_=2,p=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==g)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);_=5,p=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==g)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);_=0,p=r.dims[2]}}else{if(n.dims.length!==5)throw Error(`Input "query" is expected to have 5 dimensions when key is empty`);if(n.dims[2]!==t.numHeads||n.dims[3]!==3)throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}if(a&&U.size(a.dims)>0){if(a.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimension`);if(r&&r.dims.length===5&&r.dims[3]===2)throw Error(`bias is not allowed for packed kv.`)}let v=m+p,y=0;if(o&&U.size(o.dims)>0){y=8;let e=o.dims;throw e.length===1?e[0]===u?y=1:e[0]===3*u+2&&(y=3):e.length===2&&e[0]===u&&e[1]===v&&(y=5),y===8?Error(`Input "key_padding_mask" shape shall be (batch_size) or (batch_size, total_sequence_length)`):Error(`Mask not supported`)}let b=!1,x=f;if(i&&U.size(i.dims)>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(p!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);x=i.dims[2]}else{if(p!==i.dims[2])throw Error(`Input "key" and "value" shall have the same dim 2 (kv_sequence_length)`);x=i.dims[1]*i.dims[3],b=!0}}let S=!1;if(o&&U.size(o.dims)>0)throw Error(`Key padding mask is not supported`);if(s&&U.size(s.dims)>0){if(s.dims.length!==4)throw Error(`Input "attention_bias" is expected to have 4 dimensions`);if(s.dims[0]!==u||s.dims[1]!==t.numHeads||s.dims[2]!==d||s.dims[3]!==v)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:u,sequenceLength:d,pastSequenceLength:m,kvSequenceLength:p,totalSequenceLength:v,maxSequenceLength:h,inputHiddenSize:0,hiddenSize:f,vHiddenSize:x,headSize:g,vHeadSize:Math.floor(x/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:y,scale:t.scale,broadcastResPosBias:S,passPastInKv:b,qkvFormat:_}},Dc=e=>Xn({...e}),Oc=Xn({perm:[0,2,1,3]}),kc=(e,t,n,r,i,a,o)=>{let s=[r,i,a],c=U.size(s),l=[{type:12,data:c},{type:12,data:o},{type:12,data:a}],u=e=>{let r=J(`qkv_with_bias`,t.dataType,s),i=q(`qkv`,t.dataType,s),a=q(`bias`,n.dataType,s),o=[{name:`output_size`,type:`u32`},{name:`bias_offset`,type:`u32`},{name:`hidden_size`,type:`u32`}];return` - ${e.registerUniforms(o).declareVariables(i,a,r)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let bias_offset_idx = (global_idx % uniforms.hidden_size) + uniforms.bias_offset; - - qkv_with_bias[global_idx] = qkv[global_idx] + bias[bias_offset_idx]; - }`};return e.compute({name:`MultiHeadAttentionAddBias`,shaderCache:{inputDependencies:[`type`,`type`]},getRunData:()=>({outputs:[{dims:s,dataType:t.dataType,gpuDataType:0}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l}),getShaderSource:u},{inputs:[t,n],outputs:[-1]})[0]},Ac=(e,t,n,r,i,a,o,s)=>{let c=a;if(o&&U.size(o.dims)>0){if(r===1)throw Error(`AddBiasReshape is not implemented. Please export your model with packed QKV or KV`);return c=kc(e,a,o,t,r,n*i,s),c=c.reshape([t,r,n,i]),n===1||r===1?c:e.compute(gr(c,Oc.perm),{inputs:[c],outputs:[-1]})[0]}else return a.dims.length===3&&(c=a.reshape([t,r,n,i])),n===1||r===1?c:e.compute(gr(c,Oc.perm),{inputs:[c],outputs:[-1]})[0]},jc=(e,t)=>{let n=Ec(e.inputs,t),r=e.inputs[0],i=Tc(e.inputs,1),a=Tc(e.inputs,2),o=Tc(e.inputs,3),s=Tc(e.inputs,4),c=Tc(e.inputs,5),l=Tc(e.inputs,6),u=Tc(e.inputs,7);if(r.dims.length===5)throw Error(`Packed QKV is not implemented`);if(i?.dims.length===5)throw Error(`Packed KV is not implemented`);let d=i&&a&&i.dims.length===4&&a.dims.length===4,f=Ac(e,n.batchSize,n.numHeads,n.sequenceLength,n.headSize,r,o,0);if(d)return Ti(e,f,i,a,s,void 0,l,u,c,n);if(!i||!a)throw Error(`key and value must be provided`);let p=Ac(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.headSize,i,o,n.hiddenSize),m=Ac(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.vHeadSize,a,o,2*n.hiddenSize);Ti(e,f,p,m,s,void 0,l,u,c,n)}}),Nc,Pc,Fc,Ic,Lc,Rc,zc,Bc=j(()=>{"use strict";V(),W(),Zn(),Y(),Nc=e=>{if(!e||e.length<1)throw Error(`too few inputs`)},Pc=(e,t)=>{let n=[],r=t.numOutputs;return e[1].dims[0]>0&&(e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),r=n.length),Xn({numOutputs:r,axis:t.axis,splitSizes:n})},Fc=e=>` -fn calculateOutputIndex(index: u32) -> u32 { - for (var i: u32 = 0u; i < ${e}u; i += 1u ) { - if (index < ${K(`uniforms.size_in_split_axis`,`i`,e)}) { - return i; - } - } - return ${e}u; -}`,Ic=e=>{let t=e.length,n=[];for(let r=0;r{let n=e[0].dims,r=U.size(n),i=e[0].dataType,a=U.normalizeAxis(t.axis,n.length),o=Array(t.numOutputs),s=q(`input`,i,n.length),c=Array(t.numOutputs),l=[],u=[],d=0,f=[{type:12,data:r}];for(let r=0;r` - ${e.registerUniform(`input_size`,`u32`).registerUniform(`size_in_split_axis`,`u32`,c.length).declareVariables(s,...o)} - ${Fc(c.length)} - ${Ic(o)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.input_size`)} - - var indices = ${s.offsetToIndices(`global_idx`)}; - var index = ${s.indicesGet(`indices`,a)}; - let output_number = calculateOutputIndex(index); - if (output_number != 0) { - index -= ${K(`uniforms.size_in_split_axis`,`output_number - 1u`,c.length)}; - ${s.indicesSet(`indices`,a,`index`)}; - } - writeBufferData(output_number, indices, global_idx); - }`;return{name:`Split`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`]},getShaderSource:p,getRunData:()=>({outputs:l,dispatchGroup:{x:Math.ceil(r/64)},programUniforms:f})}},Rc=(e,t)=>{Nc(e.inputs);let n=e.inputs.length===1?t:Pc(e.inputs,t);e.compute(Lc(e.inputs,n),{inputs:[0]})},zc=e=>{let t=e.axis,n=e.splitSizes,r=e.numOutputs<0?n.length:e.numOutputs;if(r!==n.length)throw Error(`numOutputs and splitSizes lengh must be equal`);return Xn({axis:t,numOutputs:r,splitSizes:n})}}),Vc,Hc,Uc,Wc=j(()=>{"use strict";V(),W(),Zn(),Y(),Vc=(e,t)=>{let[n,r,i,a]=e,{numHeads:o,rotaryEmbeddingDim:s}=t;if(n.dims.length!==3&&n.dims.length!==4)throw Error(`Input 'x' is expected to have 3 or 4 dimensions, got ${n.dims.length}`);if(!U.areEqual(r.dims,[])&&!U.areEqual(r.dims,[1])&&r.dims.length!==2)throw Error(`Input 'position_ids' is expected to have 0, 1, or 2 dimensions, got ${r.dims.length}`);if(i.dims.length!==2)throw Error(`Input 'cos_cache' is expected to have 2 dimensions, got ${i.dims.length}`);if(a.dims.length!==2)throw Error(`Input 'sin_cache' is expected to have 2 dimensions, got ${a.dims.length}`);if(!U.areEqual(i.dims,a.dims))throw Error(`Inputs 'cos_cache' and 'sin_cache' are expected to have the same shape`);if(s>0&&o===0)throw Error(`num_heads must be provided if rotary_embedding_dim is specified`);let c=n.dims[0],l=n.dims[n.dims.length-2],u=i.dims[0],d=U.sizeFromDimension(n.dims,1)/l,f=s===0?i.dims[1]*2:d/o;if(s>f)throw Error(`rotary_embedding_dim must be less than or equal to head_size`);if(r.dims.length===2){if(c!==r.dims[0])throw Error(`Input 'position_ids' dimension 0 should be of size batch_size, got ${r.dims[0]}`);if(l!==r.dims[1])throw Error(`Input 'position_ids' dimension 1 should be of size sequence_length, got ${r.dims[1]}`)}if(f/2!==i.dims[1]&&s/2!==i.dims[1])throw Error(`Input 'cos_cache' dimension 1 should be same as head_size / 2 or rotary_embedding_dim / 2, got ${i.dims[1]}`);if(l>u)throw Error(`Updating cos_cache and sin_cache in RotaryEmbedding is not currently supported`)},Hc=(e,t)=>{let{interleaved:n,numHeads:r,rotaryEmbeddingDim:i,scale:a}=t,o=e[0].dims[0],s=U.sizeFromDimension(e[0].dims,1),c=e[0].dims[e[0].dims.length-2],l=s/c,u=e[2].dims[1],d=i===0?u*2:l/r,f=[o,c,l/d,d-u],p=U.computeStrides(f),m=[{type:1,data:a},{type:12,data:f},{type:12,data:p},...e[0].dims.length===3?Array({type:12,data:[s,l,d,1]}):[],...e[0].dims.length===4?Array({type:12,data:[s,d,c*d,1]}):[],...G(e[0].dims,e[1].dims,e[2].dims,e[3].dims,e[0].dims)],h=t=>{let r=q(`input`,e[0].dataType,e[0].dims.length),i=q(`position_ids`,e[1].dataType,e[1].dims.length),a=q(`cos_cache`,e[2].dataType,e[2].dims.length),o=q(`sin_cache`,e[3].dataType,e[3].dims.length),s=J(`output`,e[0].dataType,e[0].dims.length);return t.registerUniforms([{name:`scale`,type:`f32`},{name:`global_shape`,type:`u32`,length:f.length},{name:`global_strides`,type:`u32`,length:p.length},{name:`input_output_strides`,type:`u32`,length:p.length}]),` - ${t.declareVariables(r,i,a,o,s)} - - ${t.mainStart(Qn)} - let half_rotary_emb_dim = uniforms.${a.name}_shape[1]; - let bsnh = global_idx / uniforms.global_strides % uniforms.global_shape; - let size = uniforms.global_shape[0] * uniforms.global_strides[0]; - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`size`)} - - if (bsnh[3] < half_rotary_emb_dim) { - let position_ids_idx = - ${i.broadcastedIndicesToOffset(`bsnh.xy`,J(``,i.type.tensor,2))}; - let position_id = - u32(${i.getByOffset(`position_ids_idx`)}) + select(0, bsnh[1], position_ids_idx == 0); - let i = dot(bsnh, uniforms.input_output_strides) + select(0, bsnh[3], ${n}); - let j = i + select(half_rotary_emb_dim, 1, ${n}); - let re = ${r.getByOffset(`i`)} * ${a.get(`position_id`,`bsnh[3]`)} - - ${r.getByOffset(`j`)} * ${o.get(`position_id`,`bsnh[3]`)}; - ${s.setByOffset(`i`,`re`)} - let im = ${r.getByOffset(`i`)} * ${o.get(`position_id`,`bsnh[3]`)} + - ${r.getByOffset(`j`)} * ${a.get(`position_id`,`bsnh[3]`)}; - ${s.setByOffset(`j`,`im`)} - } else { - let k = dot(bsnh, uniforms.input_output_strides) + half_rotary_emb_dim; - ${s.setByOffset(`k`,r.getByOffset(`k`))} - } - }`};return{name:`RotaryEmbedding`,shaderCache:{hint:Xn({interleaved:n}).cacheKey,inputDependencies:[`rank`,`rank`,`rank`,`rank`]},getShaderSource:h,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(U.size(f)/Qn)},programUniforms:m})}},Uc=(e,t)=>{Vc(e.inputs,t),e.compute(Hc(e.inputs,t))}}),Gc,Kc,qc,Jc,Yc,Xc=j(()=>{"use strict";Zn(),V(),Oi(),Mc(),Bc(),yr(),Wc(),Y(),Gc=(e,t)=>{if(t.doRotary&&e.length<=7)throw Error(`cos_cache and sin_cache inputs are required if do_rotary is specified`);let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4];if(t.doRotary!==0&&e.length<=7)throw Error(`cos_cast and sin_cache are expected if do_rotary attribute is non-zero`);if(t.localWindowSize!==-1)throw Error(`Local attention is not supported`);if(t.softcap!==0)throw Error(`Softcap is not supported`);if(t.rotaryInterleaved!==0)throw Error(`Rotary interleaved is not supported`);if(t.smoothSoftmax)throw Error(`Smooth softmax is not supported`);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let s=!1,c=n.dims[0],l=n.dims[1],u=n.dims.length===3?s?n.dims[2]/3:n.dims[2]:t.numHeads*n.dims[4],d=l,f=0,p=!r||r.dims.length===0,m=Math.floor(p?u/(t.numHeads+2*t.kvNumHeads):u/t.numHeads);p&&(u=m*t.numHeads);let h=a&&a.dims.length!==0,g=o&&o.dims.length!==0;if(h&&a.dims.length===4&&a.dims[0]===c&&a.dims[1]!==t.kvNumHeads&&a.dims[2]===t.kvNumHeads&&a.dims[3]===m)throw Error(`BSNH pastKey/pastValue is not supported`);if(h&&g){if(a.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(o.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);f=a.dims[2]}else if(h||g)throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _=1;if(r&&r.dims.length>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(n.dims[2]%r.dims[2]!==0)throw Error(`Dimension 2 of "query" should be a multiple of "key"`);d=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==m)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);d=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==m)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);d=r.dims[2]}}else{if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input "query" is expected to have 3 or 5 dimensions when key is empty`);if(n.dims.length===5&&(n.dims[2]!==t.numHeads||n.dims[3]!==3))throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}let v=0,y=!1,b=t.kvNumHeads?m*t.kvNumHeads:u;if(i&&i.dims.length>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(d!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);b=i.dims[2]}else{if(d!==i.dims[2])throw Error(`Input "past_key" and "past_value" shall have the same dim 2 (kv_sequence_length)`);b=i.dims[1]*i.dims[3],y=!0}}let x=e.length>4?e[5]:void 0;if(x&&x.dims.length!==1&&x.dims[0]!==c)throw Error(`Input "seqlens" is expected to have 1 dimension and the same dim 0 as batch_size`);return{batchSize:c,sequenceLength:l,pastSequenceLength:f,kvSequenceLength:d,totalSequenceLength:-1,maxSequenceLength:-1,inputHiddenSize:0,hiddenSize:u,vHiddenSize:b,headSize:m,vHeadSize:Math.floor(b/t.kvNumHeads),numHeads:t.numHeads,kvNumHeads:t.kvNumHeads,nReps:t.numHeads/t.kvNumHeads,pastPresentShareBuffer:!1,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:y,qkvFormat:_}},Kc=Xn({perm:[0,2,1,3]}),qc=(e,t,n)=>{let r=t,i=n.kvNumHeads;return t.dims.length===3&&n.kvSequenceLength!==0&&(r=t.reshape([n.batchSize,n.kvSequenceLength,i,n.headSize]),r=e.compute(gr(r,Kc.perm),{inputs:[r],outputs:[-1]})[0]),r},Jc=(e,t,n,r)=>{let i=7,a=[`type`,`type`],o=[e*t],s=e*t,c=[{type:12,data:s},{type:12,data:t},{type:12,data:e}],l=e=>{let t=q(`seq_lens`,n.dataType,n.dims),a=q(`total_seq_lens`,r.dataType,r.dims),s=J(`pos_ids`,i,o),c=[{name:`output_size`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`batch_size`,type:`u32`}];return` - ${e.registerUniforms(c).declareVariables(t,a,s)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let total_sequence_length = u32(${a.getByOffset(`0`)}); - let is_subsequent_prompt = uniforms.sequence_length > 1 && uniforms.sequence_length != total_sequence_length; - let is_first_prompt = !is_subsequent_prompt && uniforms.sequence_length == total_sequence_length; - let batch_idx = global_idx / uniforms.sequence_length; - let sequence_idx = i32(global_idx % uniforms.sequence_length); - var pos_id: i32 = 0; - let seqlen = ${t.getByOffset(`batch_idx`)}; - let total_seqlen = seqlen + 1; - if (is_first_prompt) { - if (sequence_idx < total_seqlen) { - pos_id = sequence_idx; - } else { - pos_id = 1; - } - ${s.setByOffset(`global_idx`,`pos_id`)} - } else if (is_subsequent_prompt) { - let past_seqlen = total_seqlen - i32(uniforms.sequence_length); - if (past_seqlen + sequence_idx < total_seqlen) { - pos_id = past_seqlen + sequence_idx; - } else { - pos_id = 1; - } - ${s.setByOffset(`global_idx`,`pos_id`)} - } else if (global_idx < uniforms.batch_size) { - ${s.setByOffset(`global_idx`,`seqlen`)} - }; - } - `};return{name:`GeneratePositionIds`,shaderCache:{hint:`${e};${t}`,inputDependencies:a},getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:c}),getShaderSource:l}},Yc=(e,t)=>{var n;let r=Gc(e.inputs,t);if(e.inputs[0].dims.length===5)throw Error(`Packed QKV is not implemented`);if((n=e.inputs[1])?.dims.length===5)throw Error(`Packed KV is not implemented`);let i=e.inputs[0],a=e.inputs[1]&&e.inputs[1].dims.length>0?e.inputs[1]:void 0,o=e.inputs[2]&&e.inputs[2].dims.length>0?e.inputs[2]:void 0,s=e.inputs[3]&&e.inputs[3].dims.length!==0?e.inputs[3]:void 0,c=e.inputs[4]&&e.inputs[4].dims.length!==0?e.inputs[4]:void 0,l=e.inputs.length>4?e.inputs[5]:void 0,u=e.inputs.length>5?e.inputs[6]:void 0,d=r.kvNumHeads?r.kvNumHeads:r.numHeads,f=Xn({axis:2,numOutputs:3,splitSizes:[r.numHeads*r.headSize,d*r.headSize,d*r.headSize]}),[p,m,h]=!a&&!o?e.compute(Lc([i],f),{inputs:[i],outputs:[-1,-1,-1]}):[i,a,o],g,_;if(t.doRotary){let n=e.compute(Jc(r.batchSize,r.sequenceLength,l,u),{inputs:[l,u],outputs:[-1]})[0],i=e.inputs[7],a=e.inputs[8],o=Xn({interleaved:t.rotaryInterleaved!==0,numHeads:r.numHeads,rotaryEmbeddingDim:0,scale:t.scale}),s=[p,n,i,a],c=[-1];g=e.compute(Hc(s,o),{inputs:s,outputs:c})[0],s.splice(0,1,m);let d=Xn({interleaved:t.rotaryInterleaved!==0,numHeads:r.kvNumHeads,rotaryEmbeddingDim:0,scale:t.scale});_=e.compute(Hc(s,d),{inputs:s,outputs:c})[0]}let v=Ac(e,r.batchSize,r.numHeads,r.sequenceLength,r.headSize,t.doRotary?g:p,void 0,0),y=qc(e,t.doRotary?_:m,r),b=qc(e,h,r);Ti(e,v,y,b,void 0,void 0,s,c,void 0,r,l,u)}}),Zc,Qc,$c,el,tl=j(()=>{"use strict";V(),W(),yr(),Y(),Zc=(e,t,n,r,i,a,o,s)=>{let c=nr(a),l=c===1?`f32`:`vec${c}f`,u=c===1?`vec2f`:`mat2x${c}f`,d=i*o,f=64;d===1&&(f=256);let p=[i,o,a/c],m=[i,o,2],h=[`rank`,`type`,`type`],g=[];g.push(...G(p,m));let _=e=>{let i=q(`x`,t.dataType,3,c),a=q(`scale`,n.dataType,n.dims),o=q(`bias`,r.dataType,r.dims),d=J(`output`,1,3,2),p=[i,a,o,d];return` - var workgroup_shared : array<${u}, ${f}>; - const workgroup_size = ${f}u; - ${e.declareVariables(...p)} - ${e.mainStart(f)} - let batch = workgroup_index / uniforms.x_shape[1]; - let channel = workgroup_index % uniforms.x_shape[1]; - let hight = uniforms.x_shape[2]; - // initialize workgroup memory - var sum = ${l}(0); - var squared_sum = ${l}(0); - for (var h = local_idx; h < hight; h += workgroup_size) { - let value = ${l}(${i.get(`batch`,`channel`,`h`)}); - sum += value; - squared_sum += value * value; - } - workgroup_shared[local_idx] = ${u}(sum, squared_sum); - workgroupBarrier(); - - for (var currSize = workgroup_size >> 1; currSize > 0; currSize = currSize >> 1) { - if (local_idx < currSize) { - workgroup_shared[local_idx] = workgroup_shared[local_idx] + workgroup_shared[local_idx + currSize]; - } - workgroupBarrier(); - } - if (local_idx == 0) { - let sum_final = ${ar(`workgroup_shared[0][0]`,c)} / f32(hight * ${c}); - let squared_sum_final = ${ar(`workgroup_shared[0][1]`,c)} / f32(hight * ${c}); - - let inv_std_dev = inverseSqrt(squared_sum_final - sum_final * sum_final + f32(${s})); - let channel_scale = inv_std_dev * f32(scale[channel]); - let channel_shift = f32(bias[channel]) - sum_final * channel_scale; - output[workgroup_index] = vec2f(channel_scale, channel_shift); - } - }`};return e.compute({name:`InstanceNormComputeChannelScaleShift`,shaderCache:{hint:`${c};${s};${f}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:m,dataType:1}],dispatchGroup:{x:d},programUniforms:g}),getShaderSource:_},{inputs:[t,n,r],outputs:[-1]})[0]},Qc=(e,t,n)=>{let r=t[0].dims,i=r,a=2,o=r[0],s=r[1],c=U.sizeFromDimension(r,a),l=nr(c),u=U.size(i)/l,d=Zc(e,t[0],t[1],t[2],o,c,s,n.epsilon),f=[o,s,c/l],p=[o,s],m=[`type`,`none`],h=e=>{let n=q(`x`,t[0].dataType,f.length,l),r=q(`scale_shift`,1,p.length,2),i=J(`output`,t[0].dataType,f.length,l),a=[n,r,i];return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(...a)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let outputIndices = ${i.offsetToIndices(`global_idx`)}; - let batch = outputIndices[0]; - let channel = outputIndices[1]; - let scale_shift = ${r.getByIndices(`vec2(batch, channel)`)}; - let value = ${n.getByOffset(`global_idx`)} * ${i.type.value}(scale_shift.x) + ${i.type.value}(scale_shift.y); - ${i.setByOffset(`global_idx`,`value`)}; - }`};e.compute({name:`InstanceNormalization`,shaderCache:{hint:`${l}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:[{type:12,data:u},...G(f,p,f)]}),getShaderSource:h},{inputs:[t[0],d]})},$c=(e,t,n)=>{let r=t[0].dims,i=r,a=r[0],o=r[r.length-1],s=U.sizeFromDimension(r,1)/o,c=nr(o),l=U.size(i)/c,u=[{type:12,data:s},{type:12,data:Math.floor(o/c)}],d=[`type`,`type`],f=!1,p=[0,r.length-1];for(let e=0;er[p[t]])),h=Zc(e,m,t[1],t[2],a,s,o,n.epsilon),g=e=>{let n=er(t[0].dataType),r=c===1?`vec2f`:`mat${c}x2f`,a=e=>{let t=e===0?`x`:`y`,r=c===1?`f32`:`vec${c}f`;switch(c){case 1:return`${n}(${r}(scale.${t}))`;case 2:return`vec2<${n}>(${r}(scale[0].${t}, scale[1].${t}))`;case 4:return`vec4<${n}>(${r}(scale[0].${t}, scale[1].${t}, scale[2].${t}, scale[3].${t}))`;default:throw Error(`Not supported compoents ${c}`)}},o=q(`input`,t[0].dataType,t[0].dims,c),s=J(`output`,t[0].dataType,i,c);return` - @group(0) @binding(0) var input : array<${o.type.storage}>; - @group(0) @binding(1) var scale_input : array<${r}>; - @group(0) @binding(2) var output : array<${s.type.storage}>; - struct Uniforms {H: u32, C : u32}; - @group(0) @binding(3) var uniforms: Uniforms; - - ${e.mainStart()} - let current_image_number = global_idx / (uniforms.C * uniforms.H); - let current_channel_number = global_idx % uniforms.C; - - let scale_offset = current_image_number * uniforms.C + current_channel_number; - let scale = scale_input[scale_offset]; - output[global_idx] = fma(input[global_idx], ${a(0)}, ${a(1)}); - }`};e.compute({name:`InstanceNormalizationNHWC`,shaderCache:{hint:`${c}`,inputDependencies:d},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:g},{inputs:[t[0],h]})},el=(e,t)=>{t.format===`NHWC`?$c(e,e.inputs,t):Qc(e,e.inputs,t)}}),nl,rl,il,al=j(()=>{"use strict";V(),W(),Y(),nl=e=>{if(!e||e.length<2)throw Error(`layerNorm requires at least 2 inputs.`)},rl=(e,t,n)=>{let r=t.simplified,i=e[0].dims,a=e[1],o=!r&&e[2],s=i,c=U.normalizeAxis(t.axis,i.length),l=U.sizeToDimension(i,c),u=U.sizeFromDimension(i,c),d=U.size(a.dims),f=o?U.size(o.dims):0;if(d!==u||o&&f!==u)throw Error(`Size of X.shape()[axis:] == ${u}. - Size of scale and bias (if provided) must match this. - Got scale size of ${d} and bias size of ${f}`);let p=[];for(let e=0;e1,v=n>2,y=t=>{let n=er(e[0].dataType),i=[q(`x`,e[0].dataType,e[0].dims,m),q(`scale`,a.dataType,a.dims,m)];o&&i.push(q(`bias`,o.dataType,o.dims,m)),i.push(J(`output`,e[0].dataType,s,m)),_&&i.push(J(`mean_data_output`,1,p)),v&&i.push(J(`inv_std_output`,1,p));let c=[{name:`norm_count`,type:`u32`},{name:`norm_size`,type:`f32`},{name:`norm_size_vectorized`,type:`u32`},{name:`epsilon`,type:`f32`}];return` - ${t.registerUniforms(c).declareVariables(...i)} - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.norm_count`)} - let offset = global_idx * uniforms.norm_size_vectorized; - var mean_vector = ${rr(`f32`,m)}; - var mean_square_vector = ${rr(`f32`,m)}; - - for (var h: u32 = 0u; h < uniforms.norm_size_vectorized; h++) { - let value = ${ir(n,m,`x[h + offset]`)}; - mean_vector += value; - mean_square_vector += value * value; - } - let mean = ${ar(`mean_vector`,m)} / uniforms.norm_size; - let inv_std_dev = inverseSqrt(${ar(`mean_square_vector`,m)} / uniforms.norm_size ${r?``:`- mean * mean`} + uniforms.epsilon); - - for (var j: u32 = 0; j < uniforms.norm_size_vectorized; j++) { - let f32input = ${ir(n,m,`x[j + offset]`)}; - let f32scale = ${ir(n,m,`scale[j]`)}; - output[j + offset] = ${i[0].type.value}((f32input ${r?``:`- mean`}) * inv_std_dev * f32scale - ${o?`+ ${ir(n,m,`bias[j]`)}`:``} - ); - } - - ${_?`mean_data_output[global_idx] = mean`:``}; - ${v?`inv_std_output[global_idx] = inv_std_dev`:``}; - }`},b=[{dims:s,dataType:e[0].dataType}];return _&&b.push({dims:p,dataType:1}),v&&b.push({dims:p,dataType:1}),{name:`LayerNormalization`,shaderCache:{hint:`${m};${n};${r}`,inputDependencies:h},getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(l/64)},programUniforms:g}),getShaderSource:y}},il=(e,t)=>{nl(e.inputs),e.compute(rl(e.inputs,t,e.outputCount))}}),ol,sl,cl=j(()=>{"use strict";W(),mo(),Co(),ol=e=>{if(!e||e.length!==2)throw Error(`MatMul requires 2 inputs.`);if(e[0].dims[e[0].dims.length-1]!==e[1].dims[e[1].dims.length-2])throw Error(`shared dimension does not match.`)},sl=e=>{ol(e.inputs);let t=gn.calcShape(e.inputs[0].dims,e.inputs[1].dims,!0);if(!t)throw Error(`Can't use matmul on the given tensors`);let n=t[t.length-1],r=e.inputs[0].dims[e.inputs[0].dims.length-1];if(n<8&&r<8)e.compute(po(e.inputs,{activation:``},t));else{let i=t[t.length-2],a=U.size(e.inputs[0].dims.slice(0,-2)),o=U.size(e.inputs[1].dims.slice(0,-2));if(a!==1&&i===1&&o===1){let i=e.inputs[0].reshape([1,a,r]),o=e.inputs[1].reshape([1,r,n]),s=[1,a,n],c=[i,o];e.compute(So(c,{activation:``},t,s),{inputs:c})}else e.compute(So(e.inputs,{activation:``},t))}}}),ll,ul,dl,fl,pl,ml=j(()=>{"use strict";V(),W(),Zn(),Y(),ll=(e,t)=>{if(e.length<3||e.length>4)throw Error(`MatMulNBits requires 3 or 4 inputs`);let n=e[0],r=n.dims.length;if(n.dims[r-1]!==t.k)throw Error(`The last dim of input shape does not match the k value`);let i=Math.floor((t.k+t.blockSize-1)/t.blockSize),a=t.blockSize/8*t.bits,o=e[1];if(!U.areEqual(o.dims,[t.n,i,a]))throw Error(`The second inputs must be 3D tensor with shape N X nBlocksPerCol X blobSize`);let s=e[2].dims;if(U.size(s)!==t.n*i)throw Error(`scales input size error.`);if(e.length===4){let n=e[3].dims,r=t.bits>4?t.n*i:t.n*Math.floor((i+1)/2);if(U.size(n)!==r)throw Error(`zeroPoints input size error.`)}},ul=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=U.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=nr(t.k),f=nr(l),p=nr(o),m=s.concat([i,o]),h=i>1&&o/p%2==0?2:1,g=U.size(m)/p/h,_=64,v=[],y=[c,i,a/d],b=U.convertShape(e[1].dims).slice();b.splice(-1,1,l/f),v.push(...G(y)),v.push(...G(b)),v.push(...G(e[2].dims)),e.length===4&&v.push(...G(U.convertShape(e[3].dims)));let x=[c,i,o/p];v.push(...G(x));let S=n=>{let r=y.length,i=q(`a`,e[0].dataType,r,d),a=q(`b`,12,b.length,f),o=q(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?q(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let u=x.length,m=J(`output`,e[0].dataType,u,p),g=er(e[0].dataType),v=(()=>{switch(d){case 1:return`array<${g}, 8>`;case 2:return`mat4x2<${g}>`;case 4:return`mat2x4<${g}>`;default:throw Error(`${d}-component is not supported.`)}})(),S=()=>{let e=` - // reuse a data - var input_offset = ${i.indicesToOffset(`${i.type.indices}(batch, row, word_offset)`)}; - var a_data: ${v}; - for (var j: u32 = 0; j < ${8/d}; j++) { - a_data[j] = ${i.getByOffset(`input_offset`)}; - input_offset++; - } - `;for(let t=0;t> 4) & b_mask); - b_quantized_values = ${v}(${Array.from({length:4},(e,t)=>`${g}(b_value_lower[${t}]), ${g}(b_value_upper[${t}])`).join(`, `)}); - b_dequantized_values = ${d===1?`${v}(${Array.from({length:8},(e,n)=>`(b_quantized_values[${n}] - ${c?`zero_point${t}`:`zero_point`}) * scale${t}`).join(`, `)});`:`(b_quantized_values - ${v}(${Array(8).fill(`${c?`zero_point${t}`:`zero_point`}`).join(`,`)})) * scale${t};`}; - workgroup_shared[local_id.x * ${h} + ${Math.floor(t/p)}]${p>1?`[${t%p}]`:``} += ${Array.from({length:8/d},(e,t)=>`${d===1?`a_data[${t}] * b_dequantized_values[${t}]`:`dot(a_data[${t}], b_dequantized_values[${t}])`}`).join(` + `)}; - `;return e},C=()=>{let e=` - var col_index = col * ${p}; - ${c?` - let zero_point_bytes_per_col = (nBlocksPerCol + 1) / 2; - var zero_point_byte_count: u32; - var zero_point_word_index: u32; - var zero_point_byte_offset: u32; - let zero_point_nibble_offset: u32 = block & 0x1u; - var zero_point_bits_offset: u32; - var zero_point_word: u32;`:` - // The default zero point is 8 for unsigned 4-bit quantization. - let zero_point = ${g}(8);`} - `;for(let t=0;t> 0x1u); - zero_point_word_index = zero_point_byte_count >> 0x2u; - zero_point_byte_offset = zero_point_byte_count & 0x3u; - zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); - zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; - let zero_point${t} = ${g}((zero_point_word) & 0xFu);`:``} - col_index += 1;`;return e},w=()=>{let e=`col_index = col * ${p};`;for(let t=0;t; - var b_value_upper: vec4; - var b_quantized_values: ${v}; - var b_dequantized_values: ${v};`,e};return` - var workgroup_shared: array<${m.type.value}, ${h*_}>; - ${n.declareVariables(...s,m)} - ${n.mainStart([_,1,1])} - let output_indices = ${m.offsetToIndices(`(global_idx / ${_}) * ${h}`)}; - let col = output_indices[2]; - let row = output_indices[1]; - let batch = output_indices[0]; - let nBlocksPerCol = uniforms.b_shape[1]; - - for (var block = local_id.x; block < nBlocksPerCol; block += ${_}) { - //process one block - var word_offset: u32 = block * ${t.blockSize/d}; - ${C()} - for (var word: u32 = 0; word < ${l}; word += ${f}) { - ${w()} - for (var i: u32 = 0; i < ${f}; i++) { - ${S()} - word_offset += ${8/d}; - } - } - } - workgroupBarrier(); - - if (local_id.x < ${h}) { - var output_value: ${m.type.value} = ${m.type.value}(0); - var workgroup_shared_offset: u32 = local_id.x; - for (var b: u32 = 0u; b < ${_}u; b++) { - output_value += workgroup_shared[workgroup_shared_offset]; - workgroup_shared_offset += ${h}; - } - ${m.setByIndices(`${m.type.indices}(batch, row, col + local_id.x)`,`output_value`)}; - } - }`};return{name:`MatMulNBits`,shaderCache:{hint:`${t.blockSize};${t.bits};${d};${f};${p};${h};${_}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:m,dataType:u}],dispatchGroup:{x:g},programUniforms:v}),getShaderSource:S}},dl=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=U.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=nr(t.k),f=nr(l),p=s.concat([i,o]),m=128,h=o%8==0?8:o%4==0?4:1,g=m/h,_=g*f*8,v=_/d,y=_/t.blockSize,b=U.size(p)/h,x=[],S=[c,i,a/d],C=U.convertShape(e[1].dims).slice();C.splice(-1,1,l/f),x.push(...G(S)),x.push(...G(C)),x.push(...G(e[2].dims)),e.length===4&&x.push(...G(U.convertShape(e[3].dims)));let w=[c,i,o];x.push(...G(w));let T=n=>{let r=S.length,i=q(`a`,e[0].dataType,r,d),a=q(`b`,12,C.length,f),o=q(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?q(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let l=w.length,u=J(`output`,e[0].dataType,l),p=er(e[0].dataType),_=()=>{switch(d){case 1:return` - let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1], sub_a[word_offset + 2], sub_a[word_offset + 3]); - let a_data1 = vec4<${p}>(sub_a[word_offset + 4], sub_a[word_offset + 5], sub_a[word_offset + 6], sub_a[word_offset + 7]);`;case 2:return` - let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1]); - let a_data1 = vec4<${p}>(sub_a[word_offset + 2], sub_a[word_offset + 3]);`;case 4:return` - let a_data0 = sub_a[word_offset]; - let a_data1 = sub_a[word_offset + 1];`;default:throw Error(`${d}-component is not supported.`)}};return` - var sub_a: array<${i.type.value}, ${v}>; - var inter_results: array, ${h}>; - ${n.declareVariables(...s,u)} - ${n.mainStart([g,h,1])} - let output_indices = ${u.offsetToIndices(`workgroup_index * ${h}`)}; - let col = output_indices[2]; - let row = output_indices[1]; - let batch = output_indices[0]; - let n_blocks_per_col = uniforms.b_shape[1]; - let num_tiles = (n_blocks_per_col - 1) / ${y} + 1; - - // Loop over shared dimension. - for (var tile: u32 = 0; tile < num_tiles; tile += 1) { - let a_col_start = tile * ${v}; - // load one tile A data into shared memory. - for (var a_offset = local_idx; a_offset < ${v}; a_offset += ${m}) - { - let a_col = a_col_start + a_offset; - if (a_col < uniforms.a_shape[2]) - { - sub_a[a_offset] = ${i.getByIndices(`${i.type.indices}(batch, row, a_col)`)}; - } else { - sub_a[a_offset] = ${i.type.value}(0); - } - } - workgroupBarrier(); - - // each thread process one block - let b_row = col + local_id.y; - let block = tile * ${y} + local_id.x; - ${c?` - let zero_point_bytes_per_col = (n_blocks_per_col + 1) / 2; - let zero_point_byte_count = b_row * zero_point_bytes_per_col + (block >> 0x1u); - let zero_point_word_index = zero_point_byte_count >> 0x2u; - let zero_point_byte_offset = zero_point_byte_count & 0x3u; - let zero_point_nibble_offset: u32 = block & 0x1u; - let zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); - let zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; - let zero_point = ${p}((zero_point_word) & 0xFu);`:` - // The default zero point is 8 for unsigned 4-bit quantization. - let zero_point = ${p}(8);`} - let scale = ${o.getByOffset(`b_row * n_blocks_per_col + block`)}; - let b_data = ${a.getByIndices(`${a.type.indices}(b_row, block, 0)`)}; - var word_offset = local_id.x * ${t.blockSize/d}; - for (var i: u32 = 0; i < ${f}; i++) { - ${_()} - let b_value = ${f===1?`b_data`:`b_data[i]`}; - let b_value_lower = unpack4xU8(b_value & 0x0F0F0F0Fu); - let b_value_upper = unpack4xU8((b_value >> 4) & 0x0F0F0F0Fu); - let b_quantized_values = mat2x4<${p}>(${Array.from({length:4},(e,t)=>`${p}(b_value_lower[${t}]), ${p}(b_value_upper[${t}])`).join(`, `)}); - let b_dequantized_values = (b_quantized_values - mat2x4<${p}>(${Array(8).fill(`zero_point`).join(`,`)})) * scale; - inter_results[local_id.y][local_id.x] += ${Array.from({length:2},(e,t)=>`${`dot(a_data${t}, b_dequantized_values[${t}])`}`).join(` + `)}; - word_offset += ${8/d}; - } - workgroupBarrier(); - } - - if (local_idx < ${h}) { - var output_value: ${u.type.value} = ${u.type.value}(0); - for (var b = 0u; b < ${g}; b++) { - output_value += inter_results[local_idx][b]; - } - if (col + local_idx < uniforms.output_shape[2]) - { - ${u.setByIndices(`${u.type.indices}(batch, row, col + local_idx)`,`output_value`)} - } - } - }`};return{name:`BlockwiseMatMulNBits32`,shaderCache:{hint:`${t.blockSize};${d};${f};${g};${h}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:p,dataType:u}],dispatchGroup:{x:b},programUniforms:x}),getShaderSource:T}},fl=(e,t)=>{ll(e.inputs,t),t.blockSize===32&&e.adapterInfo.isVendor(`intel`)&&e.adapterInfo.isArchitecture(`gen-12lp`)?e.compute(dl(e.inputs,t)):e.compute(ul(e.inputs,t))},pl=e=>Xn(e)}),hl,gl,_l,vl,yl,bl,xl,Sl,Cl,wl=j(()=>{"use strict";V(),W(),Y(),hl=e=>{if(!e||e.length<1)throw Error(`Too few inputs`);if(e[0].dataType!==1&&e[0].dataType!==10)throw Error(`Input type must be float or float16.`);if(e.length>=2){let t=e[0].dims.length*2===e[1].dims[0];if(e.length===4&&(t=e[3].dims[0]*2===e[1].dims[0]),!t)throw Error(`The pads should be a 1D tensor of shape [2 * input_rank] or [2 * num_axes].`)}},gl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; - if (k < 0) { - break; - } - if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { - break; - } - offset += k * i32(${K(`uniforms.x_strides`,i,t)}); - `;return` - value = ${e.type.value}(uniforms.constant_value); - for (var i = 0; i < 1; i++) { - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - } - `},_l=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; - if (k < 0) { - k = -k; - } - { - let _2n_1 = 2 * (i32(${K(`uniforms.x_shape`,i,t)}) - 1); - k = k % _2n_1; - if(k >= i32(${K(`uniforms.x_shape`,i,t)})) { - k = _2n_1 - k; - } - } - offset += k * i32(${K(`uniforms.x_strides`,i,t)}); - `;return` - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - `},vl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; - if (k < 0) { - k = 0; - } - if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { - k = i32(${K(`uniforms.x_shape`,i,t)}) - 1; - } - offset += k * i32(${K(`uniforms.x_strides`,i,t)}); - `;return` - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - `},yl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; - if (k < 0) { - k += i32(${K(`uniforms.x_shape`,i,t)}]); - } - if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { - k -= i32(${K(`uniforms.x_shape`,i,t)}); - } - offset += k * i32(${K(`uniforms.x_strides`,i,t)}); - `;return` - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - `},bl=(e,t,n)=>{switch(n.mode){case 0:return gl(e,t,n.pads.length);case 1:return _l(e,t,n.pads.length);case 2:return vl(e,t,n.pads.length);case 3:return yl(e,t,n.pads.length);default:throw Error(`Invalid mode`)}},xl=(e,t)=>{let n=U.padShape(e[0].dims.slice(),t.pads),r=e[0].dims,i=U.size(n),a=[{type:12,data:i},{type:6,data:t.pads}],o=e.length>=3&&e[2].data;t.mode===0&&a.push({type:o?e[2].dataType:1,data:t.value}),a.push(...G(e[0].dims,n));let s=[`rank`],c=i=>{let a=J(`output`,e[0].dataType,n.length),s=q(`x`,e[0].dataType,r.length),c=s.type.value,l=bl(a,r.length,t),u=[{name:`output_size`,type:`u32`},{name:`pads`,type:`i32`,length:t.pads.length}];return t.mode===0&&u.push({name:`constant_value`,type:o?c:`f32`}),` - ${i.registerUniforms(u).declareVariables(s,a)} - ${i.mainStart()} - ${i.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let indices = ${a.offsetToIndices(`global_idx`)}; - - var value = ${c}(0); - ${l} - output[global_idx] = value; - }`};return{name:`Pad`,shaderCache:{hint:`${t.mode}${o}`,inputDependencies:s},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(U.size(n)/64)},programUniforms:a}),getShaderSource:c}},Sl=(e,t)=>{if(e.length>1){let n=e[1].getBigInt64Array(),r=e.length>=3&&e[2].data?e[2].dataType===10?e[2].getUint16Array()[0]:e[2].getFloat32Array()[0]:0,i=e[0].dims.length,a=new Int32Array(2*i).fill(0);if(e.length>=4){let t=e[3].getBigInt64Array();for(let e=0;ea[Number(t)]=Number(e));let o=[];return a.forEach(e=>o.push(e)),{mode:t.mode,value:r,pads:o}}else return t},Cl=(e,t)=>{hl(e.inputs);let n=Sl(e.inputs,t);e.compute(xl(e.inputs,n),{inputs:[0]})}}),Z,Tl,El,Dl,Ol,kl,Al,jl,Ml,Nl,Pl,Fl,Il,Ll,Rl,zl,Bl,Vl,Hl,Ul=j(()=>{"use strict";et(),V(),W(),Y(),Z=e=>{if(R.webgpu.validateInputContent&&(!e||e.length!==1))throw Error(`Pool ops requires 1 input.`)},Tl=(e,t,n)=>{let r=t.format===`NHWC`,i=e.dims.slice();r&&i.splice(1,0,i.pop());let a=Object.hasOwnProperty.call(t,`dilations`),o=t.kernelShape.slice(),s=t.strides.slice(),c=a?t.dilations.slice():[],l=t.pads.slice();_n.adjustPoolAttributes(n,i,o,s,c,l);let u=_n.computePoolOutputShape(n,i,s,c,o,l,t.autoPad),d=Object.assign({},t);a?Object.assign(d,{kernelShape:o,strides:s,pads:l,dilations:c,cacheKey:t.cacheKey}):Object.assign(d,{kernelShape:o,strides:s,pads:l,cacheKey:t.cacheKey});let f=u.slice();return f.push(f.splice(1,1)[0]),[d,r?f:u]},El=(e,t)=>{let n=t.format===`NHWC`,r=U.size(e),i=U.size(t.kernelShape),a=[{type:12,data:r},{type:12,data:i}],o=[{name:`outputSize`,type:`u32`},{name:`kernelSize`,type:`u32`}];if(t.kernelShape.length<=2){let e=t.kernelShape[t.kernelShape.length-1],n=t.strides[t.strides.length-1],r=t.pads[t.pads.length/2-1],i=t.pads[t.pads.length-1],s=!!(r+i);a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kw`,type:`u32`},{name:`sw`,type:`u32`},{name:`pwStart`,type:`u32`},{name:`pwEnd`,type:`u32`});let c=!1;if(t.kernelShape.length===2){let e=t.kernelShape[t.kernelShape.length-2],n=t.strides[t.strides.length-2],r=t.pads[t.pads.length/2-2],i=t.pads[t.pads.length-2];c=!!(r+i),a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kh`,type:`u32`},{name:`sh`,type:`u32`},{name:`phStart`,type:`u32`},{name:`phEnd`,type:`u32`})}return[a,o,!0,s,c]}else{if(n)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let e=U.computeStrides(t.kernelShape);a.push({type:12,data:e},{type:12,data:t.pads},{type:12,data:t.strides}),o.push({name:`kernelStrides`,type:`u32`,length:e.length},{name:`pads`,type:`u32`,length:t.pads.length},{name:`strides`,type:`u32`,length:t.strides.length});let r=t.pads.reduce((e,t)=>e+t);return[a,o,!!r,!1,!1]}},Dl=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f=i.format===`NHWC`,p=t.type.value,m=J(`output`,t.type.tensor,r);if(i.kernelShape.length<=2){let r=``,l=``,h=``,g=n-(f?2:1);if(r=u?` - for (var i: u32 = 0u; i < uniforms.kw; i++) { - xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; - if (xIndices[${g}] < 0 || xIndices[${g}] - >= uniforms.x_shape[${g}]) { - pad++; - continue; - } - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - }`:` - for (var i: u32 = 0u; i < uniforms.kw; i++) { - xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - }`,i.kernelShape.length===2){let e=n-(f?3:2);l=d?` - for (var j: u32 = 0u; j < uniforms.kh; j++) { - xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; - if (xIndices[${e}] < 0 || xIndices[${e}] >= uniforms.x_shape[${e}]) { - pad += i32(uniforms.kw); - continue; - } - `:` - for (var j: u32 = 0u; j < uniforms.kh; j++) { - xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; - `,h=` - } - `}return` - ${e.registerUniforms(c).declareVariables(t,m)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - - let indices = ${m.offsetToIndices(`global_idx`)}; - var xIndices = ${m.offsetToIndices(`global_idx`)}; - - var value = ${p}(${s}); - var pad = 0; - ${l} - ${r} - ${h} - ${o} - - output[global_idx] = value; - }`}else{if(f)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let r=i.kernelShape.length,u=i.pads.length,d=``;return d=l?` - if (xIndices[j] >= uniforms.x_shape[j]) { - pad++; - isPad = true; - break; - } - } - if (!isPad) { - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - }`:` - } - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - `,` - ${e.registerUniforms(c).declareVariables(t,m)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - let indices = ${m.offsetToIndices(`global_idx`)}; - var xIndices = ${m.offsetToIndices(`global_idx`)}; - - var offsets: array; - - var value = ${p}(${s}); - var pad = 0; - var isPad = false; - - for (var i: u32 = 0u; i < uniforms.kernelSize; i++) { - var offset = i; - for (var j = 0u; j < ${r-1}u; j++) { - offsets[j] = offset / ${K(`uniforms.kernelStrides`,`j`,r)}; - offset -= offsets[j] * ${K(`uniforms.kernelStrides`,`j`,r)}; - } - offsets[${r-1}] = offset; - - isPad = false; - for (var j = ${n-r}u; j < ${n}u; j++) { - xIndices[j] = indices[j] * ${K(`uniforms.strides`,`j - ${n-r}u`,r)} - + offsets[j - ${n-r}u] - ${K(`uniforms.pads`,`j - 2u`,u)}; - ${d} - } - ${o} - - output[global_idx] = value; - }`}},Ol=e=>`${e.format};${e.ceilMode};${e.autoPad};${e.kernelShape.length}`,kl=e=>`${Ol(e)};${e.countIncludePad}`,Al=e=>`${Ol(e)};${e.storageOrder};${e.dilations}`,jl=e=>({format:e.format,autoPad:[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],ceilMode:e.ceil_mode,kernelShape:e.kernel_shape,strides:e.strides,pads:e.pads}),Ml=(e,t,n,r)=>{let[i,a]=Tl(t,r,n),o=q(`x`,t.dataType,t.dims.length),s=o.type.value,c=`value += x_val;`,l=``;i.countIncludePad?l+=`value /= ${s}(uniforms.kernelSize);`:l+=`value /= ${s}(i32(uniforms.kernelSize) - pad);`;let[u,d,f,p,m]=El(a,i);u.push(...G(t.dims,a));let h=[`rank`];return{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(U.size(a)/64)},programUniforms:u}),getShaderSource:e=>Dl(e,o,t.dims.length,a.length,i,c,l,0,d,f,p,m)}},Nl=e=>{let t=e.count_include_pad!==0,n=jl(e);if(n.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for AveragePool`);let r={countIncludePad:t,...n,cacheKey:``};return{...r,cacheKey:kl(r)}},Pl=(e,t)=>{Z(e.inputs),e.compute(Ml(`AveragePool`,e.inputs[0],!1,t))},Fl={autoPad:``,ceilMode:0,countIncludePad:!1,kernelShape:[],strides:[],pads:[],storageOrder:0,dilations:[]},Il=e=>{let t=e.format;return{format:t,...Fl,cacheKey:t}},Ll=(e,t)=>{Z(e.inputs),e.compute(Ml(`GlobalAveragePool`,e.inputs[0],!0,t))},Rl=(e,t,n,r)=>{let[i,a]=Tl(t,r,n),o=` - value = max(x_val, value); - `,s=``,c=q(`x`,t.dataType,t.dims.length),l=[`rank`],[u,d,f,p,m]=El(a,i);return u.push(...G(t.dims,a)),{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:l},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(U.size(a)/64)},programUniforms:u}),getShaderSource:e=>Dl(e,c,t.dims.length,a.length,i,o,s,t.dataType===10?-65504:-1e5,d,f,p,m)}},zl=(e,t)=>{Z(e.inputs),e.compute(Rl(`MaxPool`,e.inputs[0],!1,t))},Bl=e=>{let t=e.storage_order,n=e.dilations,r=jl(e);if(t!==0)throw Error(`column major storage order is not yet supported for MaxPool`);if(r.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for MaxPool`);let i={storageOrder:t,dilations:n,...r,cacheKey:``};return{...i,cacheKey:Al(i)}},Vl=e=>{let t=e.format;return{format:t,...Fl,cacheKey:t}},Hl=(e,t)=>{Z(e.inputs),e.compute(Rl(`GlobalMaxPool`,e.inputs[0],!0,t))}}),Wl,Gl,Kl,ql,Jl=j(()=>{"use strict";V(),W(),Zn(),Y(),Wl=(e,t)=>{if(e.length<2||e.length>3)throw Error(`DequantizeLinear requires 2 or 3 inputs.`);if(e.length===3&&e[1].dims===e[2].dims)throw Error(`x-scale and x-zero-point must have the same shape.`);if(e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[0].dataType===6&&e.length>2)throw Error(`In the case of dequantizing int32 there is no zero point.`);if(e[1].dims.length!==0&&e[1].dims.length!==1&&e[1].dims.length!==e[0].dims.length)throw Error(`scale input must be a scalar, a 1D tensor, or have the same rank as the input tensor.`);if(e.length>2){if(e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[1].dims.length!==e[2].dims.length)throw Error(`scale and zero-point inputs must have the same rank.`);if(!e[1].dims.map((t,n)=>t===e[2].dims[n]).reduce((e,t)=>e&&t,!0))throw Error(`scale and zero-point inputs must have the same shape.`)}if(t.blockSize>0){if(e[1].dims.length===0||e[1].dims.length===1&&e[1].dims[0]===1)throw Error(`blockSize must be set only for block quantization.`);if(!e[1].dims.map((n,r)=>r===t.axis||n===e[0].dims[r]).reduce((e,t)=>e&&t,!0))throw Error(`For block qunatization, scale input shape to match the input shape except for the axis`);if(e[1].dims.length!==e[0].dims.length)throw Error(`For block qunatization the scale input rank must be the same as the x rank.`);let n=e[0].dims[t.axis],r=e[1].dims[t.axis];if(t.blockSizeMath.ceil(n/(r-1)-1))throw Error(`blockSize must be with in the range [ceil(dI / Si), ceil(dI / (Si - 1) - 1)].`)}},Gl=(e,t)=>{let n=U.normalizeAxis(t.axis,e[0].dims.length),r=e[0].dataType,i=r===3,a=e[0].dims,o=e[1].dataType,s=U.size(a),c=r===3||r===2,l=c?[Math.ceil(U.size(e[0].dims)/4)]:e[0].dims,u=e[1].dims,d=e.length>2?e[2]:void 0,f=d?c?[Math.ceil(U.size(d.dims)/4)]:d.dims:void 0,p=u.length===0||u.length===1&&u[0]===1,m=p===!1&&u.length===1,h=nr(s),g=p&&(!c||h===4),_=g?h:1,v=g&&!c?h:1,y=q(`input`,c?12:r,l.length,v),b=q(`scale`,o,u.length),x=d?q(`zero_point`,c?12:r,f.length):void 0,S=J(`output`,o,a.length,_),C=[y,b];x&&C.push(x);let w=[l,u];d&&w.push(f);let T=[{type:12,data:s/_},{type:12,data:n},{type:12,data:t.blockSize},...G(...w,a)],E=e=>{let t=[{name:`output_size`,type:`u32`},{name:`axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` - ${e.registerUniforms(t).declareVariables(...C,S)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let output_indices = ${S.offsetToIndices(`global_idx`)}; - - // Set input x - ${c?` - let input = ${y.getByOffset(`global_idx / 4`)}; - let x_vec = ${i?`unpack4xI8(input)`:`unpack4xU8(input)`}; - let x_value = ${_===1?`x_vec[global_idx % 4]`:`x_vec`};`:`let x_value = ${y.getByOffset(`global_idx`)};`}; - - // Set scale input - ${p?`let scale_value= ${b.getByOffset(`0`)}`:m?` - let scale_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; - let scale_value= ${b.getByOffset(`scale_index`)};`:` - var scale_indices: ${b.type.indices} = output_indices; - let index = ${b.indicesGet(`scale_indices`,`uniforms.axis`)} / uniforms.block_size; - ${b.indicesSet(`scale_indices`,`uniforms.axis`,`index`)}; - let scale_value= ${b.getByIndices(`scale_indices`)};`}; - - // Set zero-point input - ${x?p?c?` - let zero_point_input = ${x.getByOffset(`0`)}; - let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; - let zero_point_value= zero_point_vec[0]`:`let zero_point_value = ${x.getByOffset(`0`)}`:m?c?` - let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; - let zero_point_input = ${x.getByOffset(`zero_point_index / 4`)}; - let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; - let zero_point_value = zero_point_vec[zero_point_index % 4]`:` - let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; - let zero_point_value = ${x.getByOffset(`zero_point_index`)};`:c?` - let zero_point_offset = ${b.indicesToOffset(`scale_indices`)}; - let zero_point_input = ${x.getByOffset(`zero_point_offset / 4`)}; - let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; - let zero_point_value = zero_point_vec[zero_point_offset % 4];`:`let zero_point_value = ${x.getByIndices(`scale_indices`)};`:`let zero_point_value = ${c?i?`i32`:`u32`:y.type.value}(0);`}; - // Compute and write output - ${S.setByOffset(`global_idx`,`${S.type.value}(x_value - zero_point_value) * scale_value`)}; - }`};return{name:`DequantizeLinear`,shaderCache:{hint:t.cacheKey,inputDependencies:x?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getShaderSource:E,getRunData:()=>({outputs:[{dims:a,dataType:o}],dispatchGroup:{x:Math.ceil(s/_/64),y:1,z:1},programUniforms:T})}},Kl=(e,t)=>{Wl(e.inputs,t),e.compute(Gl(e.inputs,t))},ql=e=>Xn({axis:e.axis,blockSize:e.blockSize})}),Yl,Xl,Zl,Ql=j(()=>{"use strict";et(),V(),Y(),Yl=(e,t,n)=>{let r=e===t,i=et&&n>0;if(r||i||a)throw Error(`Range these inputs' contents are invalid.`)},Xl=(e,t,n,r)=>{let i=Math.abs(Math.ceil((t-e)/n)),a=[i],o=i,s=[{type:12,data:o},{type:r,data:e},{type:r,data:n},...G(a)],c=e=>{let t=J(`output`,r,a.length),n=t.type.value,i=[{name:`outputSize`,type:`u32`},{name:`start`,type:n},{name:`delta`,type:n}];return` - ${e.registerUniforms(i).declareVariables(t)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - output[global_idx] = uniforms.start + ${n}(global_idx) * uniforms.delta; - }`};return{name:`Range`,shaderCache:{hint:`${r}`},getShaderSource:c,getRunData:()=>({outputs:[{dims:a,dataType:r}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:s})}},Zl=e=>{let t=0,n=0,r=0;e.inputs[0].dataType===6?(t=e.inputs[0].getInt32Array()[0],n=e.inputs[1].getInt32Array()[0],r=e.inputs[2].getInt32Array()[0]):e.inputs[0].dataType===1&&(t=e.inputs[0].getFloat32Array()[0],n=e.inputs[1].getFloat32Array()[0],r=e.inputs[2].getFloat32Array()[0]),R.webgpu.validateInputContent&&Yl(t,n,r),e.compute(Xl(t,n,r,e.inputs[0].dataType),{inputs:[]})}}),$l,eu,tu,nu,ru,iu,au=j(()=>{"use strict";V(),W(),Zn(),Y(),$l=(e,t,n,r)=>{if(e!==`none`&&r!==`i32`&&r!==`u32`&&r!==`f32`)throw Error(`Input ${r} is not supported with reduction ${e}.`);let i=`{ - var oldValue = 0; - loop { - let newValueF32 =`,a=`; - let newValue = bitcast(newValueF32); - let res = atomicCompareExchangeWeak(&${t}, oldValue, newValue); - if res.exchanged { - break; - } - oldValue = res.old_value; - } - }`;switch(e){case`none`:return`${t}=${n};`;case`add`:return r===`i32`||r===`u32`?`atomicAdd(&${t}, bitcast<${r}>(${n}));`:` - ${i}bitcast<${r}>(oldValue) + (${n})${a}`;case`max`:return r===`i32`||r===`u32`?`atomicMax(&${t}, bitcast<${r}>(${n}));`:` - ${i}max(bitcast(oldValue), (${n}))${a}`;case`min`:return r===`i32`||r===`u32`?`atomicMin(&${t}, bitcast<${r}>(${n}));`:`${i}min(bitcast<${r}>(oldValue), (${n}))${a}`;case`mul`:return`${i}(bitcast<${r}>(oldValue) * (${n}))${a}`;default:throw Error(`Reduction ${e} is not supported.`)}},eu=(e,t)=>`${e===1?` - let element_count_dim = uniforms.output_strides; - let dim_value = uniforms.output_shape;`:` - let element_count_dim = uniforms.output_strides[${t?`i - indices_start`:`i`}]; - let dim_value = uniforms.output_shape[${t?`i - indices_start`:`i`} + uniforms.last_index_dimension];`} - - if (index >= 0) { - if (index >= i32(dim_value)) { - index = i32(dim_value - 1); - } - } else { - if (index < -i32(dim_value)) { - index = 0; - } else { - index += i32(dim_value); - } - } - data_offset += u32((u32(index) * element_count_dim));`,tu=(e,t,n)=>`for (var i = 0u; i < uniforms.num_updates_elements; i++) { - let value = updates[uniforms.num_updates_elements * ${n?`global_idx`:`idx`} + i]; - ${$l(e.reduction,`output[data_offset + i]`,`value`,t)} - }`,nu=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n,a=1,o=Math.ceil(U.size(r)/a),s=r[r.length-1],c=U.sizeFromDimension(n,s),l=U.sizeFromDimension(r,0)/s,u=[{type:12,data:o},{type:12,data:s},{type:12,data:c},...G(e[1].dims,e[2].dims,i)],d=r=>{let o=q(`indices`,e[1].dataType,e[1].dims.length),s=q(`updates`,e[2].dataType,e[2].dims.length,a),c=t.reduction!==`none`&&t.reduction!==``?sr(`output`,e[0].dataType,i.length):J(`output`,e[0].dataType,i.length,a);return` - ${r.registerUniform(`output_size`,`u32`).registerUniform(`last_index_dimension`,`u32`).registerUniform(`num_updates_elements`,`u32`).declareVariables(o,s,c)} - ${r.mainStart()} - ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - var hasDuplicates = false; - if (${t.reduction===`none`}) { - for (var i = 0; i < ${l}; i = i + 1) { - for (var j = i + 1; j < ${l}; j = j + 1) { - var index_i = i32(indices[i].x); - var index_j = i32(indices[j].x); - if (index_i == index_j) { - hasDuplicates = true; - break; - } - } - if (hasDuplicates) { - break; - } - } - } - - if (${t.reduction===`none`} && hasDuplicates) { - if (global_idx != 0u) { - return; - } - // Process each index-update pair individually when duplicates exist - for (var idx = 0u; idx < ${l}u; idx++) { - var data_offset = 0u; - for (var i = 0u; i < uniforms.last_index_dimension; i++) { - var index = i32(indices[idx * uniforms.last_index_dimension + i].x); - ${eu(n.length,!1)} - } - ${tu(t,c.type.value,!1)} - } - return; - } - - var data_offset = 0u; - var indices_start = uniforms.last_index_dimension * global_idx; - var indices_end = indices_start + uniforms.last_index_dimension; - for (var i = indices_start; i < indices_end; i++) { - var index = i32(indices[i].x); - ${eu(n.length,!0)} - } - ${tu(t,c.type.value,!0)} - }`};return{name:`ScatterND`,shaderCache:{hint:`${t.cacheKey}_${t.reduction}`,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:u}),getShaderSource:d}},ru=e=>Xn({reduction:e.reduction}),iu=(e,t)=>{e.compute(nu(e.inputs,t),{inputs:[e.inputs[1],e.inputs[2]],outputs:[]})}}),ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u,vu,yu,bu,xu,Su,Cu,wu,Tu,Eu=j(()=>{"use strict";V(),W(),Zn(),Y(),ou=(e,t)=>{if(e.every(e=>e>0||(()=>{throw Error(`Resize requires scales input values to be positive`)})),e.length>0){if(t.mode===`linear`){if(!(e.length===2||e.length===3||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1||e.length===5&&e[0]===1&&e[1]===1))throw Error(`For linear mode, Resize requires scales to be 2D, 3D, 4D with either two outermost or one innermost and - one outermost scale values equal to 1, or 5D with two outermost scale values equal to 1`)}else if(t.mode===`cubic`&&!(e.length===2||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1))throw Error(`Resize requires scales input size to be 2 or 4 for cubic mode`)}},su=(e,t,n)=>{t.every(e=>e>=0&&e{throw Error(`Resize requires axes input values to be positive and less than rank`)}));let r=Array(n).fill(1);return t.forEach((t,n)=>r[t]=e[n]),r},cu=(e,t,n,r,i,a)=>{let[o,s,c]=n>10?[1,2,3]:[-1,e.length>1?1:-1,-1],l=e[0].dims.length;if(o>0&&e.length>o&&e[o].dims.length>0)e[o].getFloat32Array().forEach(e=>a.push(e));else if(t.coordinateTransformMode===`tf_crop_and_resize`)throw Error(`Resize requires RoI input to be specified when coordinateTransformMode is tfCropAndResize`);if(s>0&&e.length>s&&e[s].dims.length===1&&e[s].dims[0]>0){if(e[s].getFloat32Array().forEach(e=>r.push(e)),r.length!==0&&r.length!==l&&n>=18&&r.length!==t.axes.length)throw Error(`Resize requires scales input size to be same as input rank or axes size for opset 18 and up`);ou(r,t),t.axes.length>0&&su(r,t.axes,l).forEach((e,t)=>r[t]=e)}if(c>0&&e.length>c&&e[c].dims.length===1&&e[c].dims[0]>0&&(e[c].getBigInt64Array().forEach(e=>i.push(Number(e))),i.length!==0&&i.length!==l&&n>=18&&i.length!==t.axes.length))throw Error(`Resize requires sizes input size to be same as input rank or axes size for opset 18 and up`);if(t.axes.length>0){if(r.length!==0&&r.length!==t.axes.length)throw Error(`Resize requires "scales" input size to be of axes rank when axes attributes is specified`);if(i.length!==0&&i.length!==t.axes.length)throw Error(`Resize requires "sizes" input size to be of rank axes rank when axes attributes is specified`)}if(typeof r<`u`&&typeof i<`u`&&r.length>0&&i.length>l)throw Error(`Resize requires only of scales or sizes to be specified`)},lu=(e,t,n,r)=>` - // The whole part and the fractional part are calculated separately due to inaccuracy of floating - // point division. As an example, f32(21) / f32(7) may evaluate to 2.99... instead of 3, causing an - // offset-by-one error later in floor(). - let big = (${e}) * (${t}); - let whole = ${r}(big / (${n})); - let fract = ${r}(big % (${n})) / ${r}(${n}); - return whole + fract; -`,uu=(e,t)=>`fn getOriginalCoordinateFromResizedCoordinate(xResized: u32, xScale: f32, lengthResized: u32, - lengthOriginal: u32, roiStart: f32, roiEnd: f32) -> ${t} { `+(()=>{switch(e){case`asymmetric`:return` - if (xScale < 1.0 || floor(xScale) != xScale) { - return ${t}(xResized) / ${t}(xScale); - } else { - ${lu(`xResized`,`lengthOriginal`,`lengthResized`,t)} - } - `;case`pytorch_half_pixel`:return`if (lengthResized > 1) { - return (${t}(xResized) + 0.5) / ${t}(xScale) - 0.5; - } else { - return 0.0; - }`;case`tf_half_pixel_for_nn`:return`return (${t}(xResized) + 0.5) / ${t}(xScale);`;case`align_corners`:return`if (lengthResized == 1) { - return 0.0; - } else { - ${lu(`xResized`,`lengthOriginal - 1`,`lengthResized - 1`,t)} - }`;case`tf_crop_and_resize`:return`if (lengthResized > 1) { - return ${t}(roiStart) * ${t}(lengthOriginal - 1) + - (${t}(xResized) * ${t}(roiEnd - roiStart) * ${t}(lengthOriginal - 1)) / - ${t}(lengthResized - 1); - } else { - return 0.5 * ${t}(roiStart + roiEnd) * ${t}(lengthOriginal - 1); - }`;case`half_pixel_symmetric`:return`const outputWidth = ${t}xScale * ${t}(lengthResized); - const adjustment = ${t}(lengthResized) / outputWidth; - const center = ${t}(lengthOriginal) / 2; - const offset = center * (1 - adjustment); - return offset + ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;case`half_pixel`:return`return ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;default:throw Error(`Coordinate transform mode ${e} is not supported`)}})()+`}`,du=(e,t,n)=>`fn getNearestPixelFromOriginal(xOriginal: ${n}, isDownSample: bool) -> ${n} {`+(()=>{switch(e){case`round_prefer_ceil`:return`if (fract(xOriginal) == 0.5) { return ceil(xOriginal); } else { return round(xOriginal); }`;case`floor`:return`return floor(xOriginal);`;case`ceil`:return`return ceil(xOriginal);`;case`round_prefer_floor`:return`if (fract(xOriginal) == 0.5) { return floor(xOriginal); } else { return round(xOriginal); }`;case`simple`:default:if(t<11)return`if (isDownSample) { return ceil(xOriginal); } else { return xOriginal; }`;throw Error(`Nearest mode ${e} is not supported`)}})()+`}`,fu=(e,t,n)=>{let r=Array(n).fill(0).concat(Array(n).fill(1)),i=e.length===0?r:e.slice();return t.length>0?(t.forEach((e,a)=>{r[e]=i[a],r[a+n]=i[t.length+a]}),r):i},pu=(e,t,n,r)=>{let i=[];if(n.length>0)if(r.length>0){if(e.forEach(e=>i.push(e)),Math.max(...r)>e.length)throw Error(`axes is out of bound`);r.forEach((e,t)=>i[e]=n[t])}else n.forEach(e=>i.push(e));else{if(t.length===0)throw Error(`Resize requires either scales or sizes.`);i=e.map((e,n)=>Math.round(e*t[n]))}return i},mu=(e,t,n)=>{let r=(()=>{switch(n.keepAspectRatioPolicy){case`not_larger`:return n.axes.length>0?Math.min(...n.axes.map(e=>t[e]),Number.MAX_VALUE):Math.min(...t,Number.MAX_VALUE);case`not_smaller`:return n.axes.length>0?Math.max(...n.axes.map(e=>t[e]),Number.MIN_VALUE):Math.max(...t,Number.MIN_VALUE);default:throw Error(`Keep aspect ratio policy ${n.keepAspectRatioPolicy} is not supported`)}})();t.fill(1,0,t.length);let i=e.slice();return n.axes.length>0?(n.axes.forEach(e=>t[e]=r),n.axes.forEach(n=>i[n]=Math.round(e[n]*t[n]))):(t.fill(r,0,t.length),i.forEach((e,n)=>i[n]=Math.round(e*t[n]))),i},hu=(e,t,n,r,i)=>` - fn calculateOriginalIndicesFromOutputIndices(output_indices: ${e.type.indices}) -> array<${e.type.value}, ${n.length}> { - var original_indices: array<${e.type.value}, ${n.length}>; - for (var i:u32 = 0; i < ${n.length}; i++) { - var output_index = ${e.indicesGet(`output_indices`,`i`)}; - var scale = ${K(`uniforms.scales`,`i`,r)}; - var roi_low = ${K(`uniforms.roi`,`i`,i)}; - var roi_hi = ${K(`uniforms.roi`,`i + ${t.length}`,i)}; - if (scale == 1.0) { - original_indices[i] = ${e.type.value}(output_index); - } else { - var input_shape_i = ${K(`uniforms.input_shape`,`i`,t.length)}; - var output_shape_i = ${K(`uniforms.output_shape`,`i`,n.length)}; - original_indices[i] = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, - input_shape_i, roi_low, roi_hi); - } - } - return original_indices; - }`,gu=(e,t,n,r,i,a,o)=>` - fn calculateInputIndicesFromOutputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { - var input_indices: ${e.type.indices}; - for (var i:u32 = 0; i < ${r.length}; i++) { - var output_index = ${t.indicesGet(`output_indices`,`i`)}; - var input_index: u32; - var scale = ${K(`uniforms.scales`,`i`,i)}; - if (scale == 1.0) { - input_index = output_index; - } else { - var roi_low = ${K(`uniforms.roi`,`i`,a)}; - var roi_hi = ${K(`uniforms.roi`,`i + ${n.length}`,a)}; - var input_shape_i = ${K(`uniforms.input_shape`,`i`,n.length)}; - var output_shape_i = ${K(`uniforms.output_shape`,`i`,r.length)}; - var original_idx = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, - input_shape_i, roi_low, roi_hi); - if (!${o} || (original_idx >= 0 && original_idx < ${t.type.value}(input_shape_i))) { - if (original_idx < 0) { - input_index = 0; - } else if (original_idx > ${t.type.value}(input_shape_i - 1)) { - input_index = input_shape_i - 1; - } else { - input_index = u32(getNearestPixelFromOriginal(original_idx, scale < 1)); - } - } else { - input_index = u32(original_idx); - } - } - ${e.indicesSet(`input_indices`,`i`,`input_index`)} - } - return input_indices; - }`,_u=(e,t)=>` - fn checkInputIndices(input_indices: ${e.type.indices}) -> bool { - for (var i:u32 = 0; i < ${t.length}; i++) { - var input_index = ${e.indicesGet(`input_indices`,`i`)}; - if (input_index < 0 || input_index >= ${K(`uniforms.input_shape`,`i`,t.length)}) { - return false; - } - } - return true; - }`,vu=(e,t,n,r)=>e.rank>r?` - ${e.indicesSet(`input_indices`,t,`channel`)}; - ${e.indicesSet(`input_indices`,n,`batch`)}; -`:``,yu=(e,t,n,r,i)=>{let[a,o,s,c]=n.length===2?[-1,0,1,-1]:[0,2,3,1],l=e.type.value;return` - fn getInputValue(batch: u32, channel: u32, row: u32, col: u32) -> ${l} { - var input_indices: ${e.type.indices}; - ${e.indicesSet(`input_indices`,o,`max(0, min(row, ${n[o]} - 1))`)}; - ${e.indicesSet(`input_indices`,s,`max(0, min(col, ${n[s]} - 1))`)}; - ${vu(e,c,a,2)} - return ${e.getByIndices(`input_indices`)}; - } - - fn bilinearInterpolation(output_indices: ${t.type.indices}) -> ${l} { - var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); - var row:${l} = originalIndices[${o}]; - var col:${l} = originalIndices[${s}]; - ${r?`if (row < 0 || row > (${n[o]} - 1) || col < 0 || col > (${n[s]} - 1)) { - return ${i}; - }`:``}; - row = max(0, min(row, ${n[o]} - 1)); - col = max(0, min(col, ${n[s]} - 1)); - var row1: u32 = u32(row); - var col1: u32 = u32(col); - var row2: u32 = u32(row + 1); - var col2: u32 = u32(col + 1); - var channel: u32 = ${n.length>2?`u32(originalIndices[${c}])`:`0`}; - var batch: u32 = ${n.length>2?`u32(originalIndices[${a}])`:`0`}; - var x11: ${l} = getInputValue(batch, channel, row1, col1); - var x12: ${l} = getInputValue(batch, channel, row1, col2); - var x21: ${l} = getInputValue(batch, channel, row2, col1); - var x22: ${l} = getInputValue(batch, channel, row2, col2); - var dx1: ${l} = abs(row - ${l}(row1)); - var dx2: ${l} = abs(${l}(row2) - row); - var dy1: ${l} = abs(col - ${l}(col1)); - var dy2: ${l} = abs(${l}(col2) - col); - if (row1 == row2) { - dx1 = 0.5; - dx2 = 0.5; - } - if (col1 == col2) { - dy1 = 0.5; - dy2 = 0.5; - } - return (x11 * dx2 * dy2 + x12 * dx2 * dy1 + x21 * dx1 * dy2 + x22 * dx1 * dy1); - }`},bu=(e,t,n,r,i,a,o,s,c,l)=>{let u=n.length===2,d=!0,[f,p]=u?[0,1]:d?[2,3]:[1,2],m=e.type.value,h=o=>{let u=o===f?`row`:`col`;return` - fn ${u}CubicInterpolation(input_indices: ${e.type.indices}, output_indices: ${t.type.indices}) -> ${m} { - var output_index = ${t.indicesGet(`output_indices`,o)}; - var originalIdx: ${m} = getOriginalCoordinateFromResizedCoordinate(output_index, ${i[o]}, - ${r[o]}, ${n[o]}, ${a[o]}, ${a[o]} + ${n.length}); - var fractOriginalIdx: ${m} = originalIdx - floor(originalIdx); - var coefs = getCubicInterpolationCoefs(fractOriginalIdx); - - if (${s} && (originalIdx < 0 || originalIdx > (${n[o]} - 1))) { - return ${c}; - } - var data: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); - for (var i: i32 = -1; i < 3; i++) { - var ${u}: ${m} = originalIdx + ${m}(i); - if (${u} < 0 || ${u} >= ${n[o]}) { - ${l?`coefs[i + 1] = 0.0; - continue;`:s?`return ${c};`:`${u} = max(0, min(${u}, ${n[o]} - 1));`}; - } - var input_indices_copy: ${e.type.indices} = input_indices; - ${e.indicesSet(`input_indices_copy`,o,`u32(${u})`)}; - data[i + 1] = ${o===f?e.getByIndices(`input_indices_copy`):`rowCubicInterpolation(input_indices_copy, output_indices)`}; - } - return cubicInterpolation1D(data, coefs); - }`};return` - ${h(f)}; - ${h(p)}; - fn getCubicInterpolationCoefs(s: ${m}) -> array<${m}, 4> { - var absS = abs(s); - var coeffs: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); - var oneMinusAbsS: ${m} = 1.0 - absS; - var twoMinusAbsS: ${m} = 2.0 - absS; - var onePlusAbsS: ${m} = 1.0 + absS; - coeffs[0] = ((${o} * onePlusAbsS - 5 * ${o}) * onePlusAbsS + 8 * ${o}) * onePlusAbsS - 4 * ${o}; - coeffs[1] = ((${o} + 2) * absS - (${o} + 3)) * absS * absS + 1; - coeffs[2] = ((${o} + 2) * oneMinusAbsS - (${o} + 3)) * oneMinusAbsS * oneMinusAbsS + 1; - coeffs[3] = ((${o} * twoMinusAbsS - 5 * ${o}) * twoMinusAbsS + 8 * ${o}) * twoMinusAbsS - 4 * ${o}; - return coeffs; - } - - fn cubicInterpolation1D(x: array<${m}, 4>, coefs: array<${m}, 4>) -> ${m} { - var coefsSum: ${m} = coefs[0] + coefs[1] + coefs[2] + coefs[3]; - return (x[0] * coefs[0] + x[1] * coefs[1]+ x[2] * coefs[2]+ x[3] * coefs[3]) / coefsSum; - } - - fn bicubicInterpolation(output_indices: ${t.type.indices}) -> ${m} { - var input_indices: ${e.type.indices} = output_indices; - return colCubicInterpolation(input_indices, output_indices); - } - `},xu=(e,t,n,r,i)=>{let[a,o,s,c,l]=n.length===3?[-1,0,1,2,-1]:[0,2,3,4,1],u=e.type.value;return` - fn getInputValue(batch: u32, channel: u32, depth:u32, height: u32, width: u32) -> ${u} { - var input_indices: ${e.type.indices}; - ${e.indicesSet(`input_indices`,o,`max(0, min(depth, ${n[o]} - 1))`)}; - ${e.indicesSet(`input_indices`,s,`max(0, min(height, ${n[s]} - 1))`)}; - ${e.indicesSet(`input_indices`,c,`max(0, min(width, ${n[c]} - 1))`)}; - ${vu(e,l,a,3)} - return ${e.getByIndices(`input_indices`)}; - } - - fn trilinearInterpolation(output_indices: ${t.type.indices}) -> ${u} { - var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); - var depth:${u} = originalIndices[${o}]; - var height:${u} = originalIndices[${s}]; - var width:${u} = originalIndices[${c}]; - ${r?`if (depth < 0 || depth > (${n[o]} - 1) || height < 0 || height > (${n[s]} - 1) || width < 0 || (width > ${n[c]} - 1)) { - return ${i}; - }`:``}; - - depth = max(0, min(depth, ${n[o]} - 1)); - height = max(0, min(height, ${n[s]} - 1)); - width = max(0, min(width, ${n[c]} - 1)); - var depth1: u32 = u32(depth); - var height1: u32 = u32(height); - var width1: u32 = u32(width); - var depth2: u32 = u32(depth + 1); - var height2: u32 = u32(height + 1); - var width2: u32 = u32(width + 1); - var channel: u32 = ${n.length>3?`u32(originalIndices[${l}])`:`0`}; - var batch: u32 = ${n.length>3?`u32(originalIndices[${a}])`:`0`}; - - var x111: ${u} = getInputValue(batch, channel, depth1, height1, width1); - var x112: ${u} = getInputValue(batch, channel, depth1, height1, width2); - var x121: ${u} = getInputValue(batch, channel, depth1, height2, width1); - var x122: ${u} = getInputValue(batch, channel, depth1, height2, width2); - var x211: ${u} = getInputValue(batch, channel, depth2, height1, width1); - var x212: ${u} = getInputValue(batch, channel, depth2, height1, width2); - var x221: ${u} = getInputValue(batch, channel, depth2, height2, width1); - var x222: ${u} = getInputValue(batch, channel, depth2, height2, width2); - var dx1: ${u} = abs(depth - ${u}(depth1)); - var dx2: ${u} = abs(${u}(depth2) - depth); - var dy1: ${u} = abs(height - ${u}(height1)); - var dy2: ${u} = abs(${u}(height2) - height); - var dz1: ${u} = abs(width - ${u}(width1)); - var dz2: ${u} = abs(${u}(width2) - width); - if (depth1 == depth2) { - dx1 = 0.5; - dx2 = 0.5; - } - if (height1 == height2) { - dy1 = 0.5; - dy2 = 0.5; - } - if (width1 == width2) { - dz1 = 0.5; - dz2 = 0.5; - } - return (x111 * dx2 * dy2 * dz2 + x112 * dx2 * dy2 * dz1 + x121 * dx2 * dy1 *dz2 + x122 * dx2 * dy1 * dz1 + - x211 * dx1 * dy2 * dz2 + x212 * dx1 * dy2 * dz1 + x221 * dx1 * dy1 *dz2 + x222 * dx1 * dy1 * dz1); - }`},Su=(e,t,n,r,i,a)=>{let o=e.dims,s=fu(a,t.axes,o.length),c=pu(o,r,i,t.axes),l=r.slice();r.length===0&&(l=o.map((e,t)=>e===0?1:c[t]/e),t.keepAspectRatioPolicy!==`stretch`&&(c=mu(o,l,t)));let u=J(`output`,e.dataType,c.length),d=q(`input`,e.dataType,o.length),f=U.size(c),p=o.length===c.length&&o.every((e,t)=>e===c[t]),m=t.coordinateTransformMode===`tf_crop_and_resize`,h=t.extrapolationValue,g=d.type.value,_=e=>` - ${p?``:` - ${uu(t.coordinateTransformMode,g)}; - ${(()=>{switch(t.mode){case`nearest`:return` - ${_u(d,o)}; - ${du(t.nearestMode,n,g)}; - ${gu(d,u,o,c,l.length,s.length,m)}; - `;case`linear`:return` - ${hu(u,o,c,l.length,s.length)}; - ${(()=>{if(o.length===2||o.length===4)return`${yu(d,u,o,m,h)}`;if(o.length===3||o.length===5)return`${xu(d,u,o,m,h)}`;throw Error(`Linear mode only supports input dims 2, 3, 4 and 5 are supported in linear mode.`)})()}; - `;case`cubic`:return` - ${(()=>{if(o.length===2||o.length===4)return`${bu(d,u,o,c,l,s,t.cubicCoeffA,m,t.extrapolationValue,t.excludeOutside)}`;throw Error(`Cubic mode only supports input dims 2 and 4 are supported in linear mode.`)})()}; - `;default:throw Error(`Invalid resize mode`)}})()}; - `} - ${e.registerUniform(`output_size`,`u32`).registerUniform(`scales`,`f32`,l.length).registerUniform(`roi`,`f32`,s.length).declareVariables(d,u)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - ${p?`output[global_idx] = input[global_idx];`:` - let output_indices = ${u.offsetToIndices(`global_idx`)}; - var input_indices: ${d.type.indices}; - ${(()=>{switch(t.mode){case`nearest`:return`input_indices = calculateInputIndicesFromOutputIndices(output_indices); - if (checkInputIndices(input_indices)) { - output[global_idx] = ${d.getByIndices(`input_indices`)}; - } else { - output[global_idx] = ${t.extrapolationValue}; - }`;case`linear`:return`output[global_idx] = ${o.length===2||o.length===4?`bilinearInterpolation`:`trilinearInterpolation`}(output_indices);`;case`cubic`:return`output[global_idx] = bicubicInterpolation(output_indices);`;default:throw Error(`Unsupported resize mode: ${t.mode}`)}})()}; -`} - }`;return{name:`Resize`,shaderCache:{hint:`${t.cacheKey}|${n}|${l.length>0?t.mode===`cubic`?l:l.length:``}|${i.length>0?i:``}|${s.length>0?s:``}|${p}|${t.mode===`nearest`?o.length:o}`,inputDependencies:[`rank`]},getShaderSource:_,getRunData:()=>({outputs:[{dims:c,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:[{type:12,data:f},{type:1,data:l},{type:1,data:s},...G(o,c)]})}},Cu=e=>{let t=e.customDataBuffer;return new Uint32Array(t,t.byteOffset,1)[0]},wu=(e,t)=>{let n=[],r=[],i=[],a=Cu(e);if(t.antialias!==0)throw Error(`Only default value (0) for Antialias attribute is supported`);cu(e.inputs,t,a,n,r,i),e.compute(Su(e.inputs[0],t,a,n,r,i),{inputs:[0]})},Tu=e=>{let t=e.antialias,n=e.axes,r=e.coordinateTransformMode,i=e.cubicCoeffA,a=e.excludeOutside!==0,o=e.extrapolationValue,s=e.keepAspectRatioPolicy,c=e.mode,l=e.nearestMode===``?`simple`:e.nearestMode;return Xn({antialias:t,axes:n,coordinateTransformMode:r,cubicCoeffA:i,excludeOutside:a,extrapolationValue:o,keepAspectRatioPolicy:s,mode:c,nearestMode:l})}}),Du,Ou,ku,Au=j(()=>{"use strict";V(),W(),Y(),Du=e=>{if(!e||e.length<3)throw Error(`layerNorm requires at least 3 inputs.`);let t=e[0],n=e[1],r=e[2];if(t.dataType!==n.dataType||t.dataType!==r.dataType)throw Error(`All inputs must have the same data type`);if(t.dims.length!==3&&t.dims.length!==2)throw Error(`Input must be 2D or 3D`);if(n.dims.length!==3&&n.dims.length!==2)throw Error(`Skip must be 2D or 3D`);let i=t.dims[t.dims.length-1],a=t.dims[t.dims.length-2];if(n.dims[n.dims.length-1]!==i)throw Error(`Skip must have the same hidden size as input`);if(n.dims[n.dims.length-2]!==a)throw Error(`Skip must have the same sequence length as input`);if(r.dims.length!==1)throw Error(`Gamma must be 1D`);if(r.dims[r.dims.length-1]!==i)throw Error(`Gamma must have the same hidden size as input`);if(e.length>3){let t=e[3];if(t.dims.length!==1)throw Error(`Beta must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Beta must have the same hidden size as input`)}if(e.length>4){let t=e[4];if(t.dims.length!==1)throw Error(`Bias must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Bias must have the same hidden size as input`)}},Ou=(e,t,n,r)=>{let i=t.simplified,a=e[0].dims,o=U.size(a),s=a,c=o,l=a.slice(-1)[0],u=r?a.slice(0,-1).concat(1):[],d=!i&&e.length>3,f=e.length>4,p=r&&n>1,m=r&&n>2,h=n>3,g=64,_=nr(l),v=[{type:12,data:c},{type:12,data:_},{type:12,data:l},{type:1,data:t.epsilon}],y=t=>{let n=[{name:`output_size`,type:`u32`},{name:`components`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`epsilon`,type:`f32`}],r=[q(`x`,e[0].dataType,e[0].dims,_),q(`skip`,e[1].dataType,e[1].dims,_),q(`gamma`,e[2].dataType,e[2].dims,_)];d&&r.push(q(`beta`,e[3].dataType,e[3].dims,_)),f&&r.push(q(`bias`,e[4].dataType,e[4].dims,_)),r.push(J(`output`,e[0].dataType,s,_)),p&&r.push(J(`mean_output`,1,u)),m&&r.push(J(`inv_std_output`,1,u)),h&&r.push(J(`input_skip_bias_sum`,e[0].dataType,s,_));let a=er(e[0].dataType),o=er(1,_);return` - - ${t.registerUniforms(n).declareVariables(...r)} - var sum_shared : array<${o}, ${g}>; - var sum_squared_shared : array<${o}, ${g}>; - - ${t.mainStart([g,1,1])} - let ix = local_id.x; - let iy = global_id.x / ${g}; - - let hidden_size_vectorized: u32 = uniforms.hidden_size / uniforms.components; - var stride = hidden_size_vectorized / ${g}; - let offset = ix * stride + iy * hidden_size_vectorized; - let offset1d = stride * ix; - if (ix == ${g-1}) { - stride = hidden_size_vectorized - stride * ix; - } - for (var i: u32 = 0; i < stride; i++) { - let skip_value = skip[offset + i]; - let bias_value = ${f?`bias[offset1d + i]`:a+`(0.0)`}; - let input_value = x[offset + i]; - let value = input_value + skip_value + bias_value; - ${h?`input_skip_bias_sum[offset + i] = value;`:``} - output[offset + i] = value; - let f32_value = ${ir(a,_,`value`)}; - sum_shared[ix] += f32_value; - sum_squared_shared[ix] += f32_value * f32_value; - } - workgroupBarrier(); - - var reduce_size : u32 = ${g}; - for (var curr_size = reduce_size >> 1; curr_size > 0; curr_size = reduce_size >> 1) { - reduce_size = curr_size + (reduce_size & 1); - if (ix < curr_size) { - sum_shared[ix] += sum_shared[ix + reduce_size]; - sum_squared_shared[ix] += sum_squared_shared[ix + reduce_size]; - } - workgroupBarrier(); - } - - let sum = sum_shared[0]; - let square_sum = sum_squared_shared[0]; - let mean = ${ar(`sum`,_)} / f32(uniforms.hidden_size); - let inv_std_dev = inverseSqrt(${ar(`square_sum`,_)} / f32(uniforms.hidden_size) ${i?``:`- mean * mean`} + uniforms.epsilon); - ${p?`mean_output[global_idx] = mean;`:``} - ${m?`inv_std_output[global_idx] = inv_std_dev;`:``} - - for (var i: u32 = 0; i < stride; i++) { - output[offset + i] = (output[offset + i] ${i?``:`- ${a}(mean)`}) * - ${a}(inv_std_dev) * gamma[offset1d + i] - ${d?`+ beta[offset1d + i]`:``}; - } - }`},b=[{dims:s,dataType:e[0].dataType}];return n>1&&b.push({dims:u,dataType:1}),n>2&&b.push({dims:u,dataType:1}),n>3&&b.push({dims:a,dataType:e[0].dataType}),{name:`SkipLayerNormalization`,shaderCache:{hint:`${_};${p};${m};${h}`,inputDependencies:e.map((e,t)=>`type`)},getShaderSource:y,getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(c/l)},programUniforms:v})}},ku=(e,t)=>{Du(e.inputs);let n=[0];e.outputCount>1&&n.push(-3),e.outputCount>2&&n.push(-3),e.outputCount>3&&n.push(3),e.compute(Ou(e.inputs,t,e.outputCount,!1),{outputs:n})}}),ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu=j(()=>{"use strict";V(),W(),Zn(),Y(),ju=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);if(t.axes.length!==0){if(t.axes.length!==t.starts.length||t.axes.length!==t.ends.length)throw Error(`axes, starts and ends must have the same length`)}else if(t.starts.length!==t.ends.length)throw Error(`starts and ends must have the same length`);e.slice(1).forEach((t,n)=>{if(e[n+1].dataType!==6&&e[n+1].dataType!==7)throw Error(`Input ${n} must be an array of int32 or int64`)})},Mu=(e,t)=>{let n=[];if(e.length>t)if(e[t].dataType===7)e[t].getBigInt64Array().forEach(e=>n.push(Number(e)));else if(e[t].dataType===6)e[t].getInt32Array().forEach(e=>n.push(Number(e)));else throw Error(`Input ${t} must be an array of int32 or int64`);return n},Nu=(e,t)=>{if(e.length>1){let t=Mu(e,1),n=Mu(e,2),r=Mu(e,3);return r.length===0&&(r=[...Array(e[0].dims.length).keys()]),Xn({starts:t,ends:n,axes:r})}else return t},Pu=(e,t,n,r,i)=>{let a=e;return e<0&&(a+=n[r[t]]),i[t]<0?Math.max(0,Math.min(a,n[r[t]]-1)):Math.max(0,Math.min(a,n[r[t]]))},Fu=(e,t,n)=>`fn calculateInputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { - var input_indices: ${e.type.indices}; - var carry = 0u; - for (var i = ${n.length}; i >= 0; i--) { - let input_shape_i = ${K(`uniforms.input_shape`,`i`,n.length)}; - let steps_i = ${K(`uniforms.steps`,`i`,n.length)}; - let signs_i = ${K(`uniforms.signs`,`i`,n.length)}; - let starts_i = ${K(`uniforms.starts`,`i`,n.length)}; - var output_index = ${t.indicesGet(`output_indices`,`i`)}; - var input_index = output_index * steps_i + starts_i + carry; - carry = input_index / input_shape_i; - input_index = input_index % input_shape_i; - if (signs_i < 0) { - input_index = input_shape_i - input_index - 1u + starts_i; - } - ${e.indicesSet(`input_indices`,`i`,`input_index`)}; - } - return input_indices; - }`,Iu=(e,t)=>{let n=e[0].dims,r=U.size(n),i=t.axes.length>0?U.normalizeAxes(t.axes,n.length):[...Array(n.length).keys()],a=Mu(e,4);a.forEach(e=>e!==0||(()=>{throw Error(`step cannot be 0`)})),a.length===0&&(a=Array(i.length).fill(1));let o=t.starts.map((e,t)=>Pu(e,t,n,i,a)),s=t.ends.map((e,t)=>Pu(e,t,n,i,a));if(i.length!==o.length||i.length!==s.length)throw Error(`start, ends and axes should have the same number of elements`);if(i.length!==n.length)for(let e=0;eMath.sign(e));a.forEach((e,t,n)=>{if(e<0){let r=(s[t]-o[t])/e,i=o[t],c=i+r*a[t];o[t]=c,s[t]=i,n[t]=-e}});let l=n.slice(0);i.forEach((e,t)=>{l[e]=Math.ceil((s[e]-o[e])/a[e])});let u={dims:l,dataType:e[0].dataType},d=J(`output`,e[0].dataType,l.length),f=q(`input`,e[0].dataType,e[0].dims.length),p=U.size(l),m=[{name:`outputSize`,type:`u32`},{name:`starts`,type:`u32`,length:o.length},{name:`signs`,type:`i32`,length:c.length},{name:`steps`,type:`u32`,length:a.length}],h=[{type:12,data:p},{type:12,data:o},{type:6,data:c},{type:12,data:a},...G(e[0].dims,l)],g=e=>` - ${e.registerUniforms(m).declareVariables(f,d)} - ${Fu(f,d,n)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - let output_indices = ${d.offsetToIndices(`global_idx`)}; - let input_indices = calculateInputIndices(output_indices); - ${d.setByOffset(`global_idx`,f.getByIndices(`input_indices`))} - }`;return{name:`Slice`,shaderCache:{hint:`${c.length}_${o.length}_${a.length}`,inputDependencies:[`rank`]},getShaderSource:g,getRunData:()=>({outputs:[u],dispatchGroup:{x:Math.ceil(r/64)},programUniforms:h})}},Lu=(e,t)=>{ju(e.inputs,t);let n=Nu(e.inputs,t);e.compute(Iu(e.inputs,n),{inputs:[0]})},Ru=e=>{let t=e.starts,n=e.ends,r=e.axes;return Xn({starts:t,ends:n,axes:r})}}),Bu,Vu,Q,Hu,Uu=j(()=>{"use strict";V(),W(),Zn(),yr(),Y(),Bu=e=>{if(!e||e.length!==1)throw Error(`Softmax op requires 1 input.`)},Vu=(e,t)=>{let n=e.inputs[0],r=n.dims,i=U.size(r),a=r.length,o=U.normalizeAxis(t.axis,a),s=ot),l[o]=a-1,l[a-1]=o,c=e.compute(gr(n,l),{inputs:[n],outputs:[-1]})[0]):c=n;let u=c.dims,d=u[a-1],f=i/d,p=nr(d),m=d/p,h=64;f===1&&(h=256);let g=(e,t)=>t===4?`max(max(${e}.x, ${e}.y), max(${e}.z, ${e}.w))`:t===2?`max(${e}.x, ${e}.y)`:t===3?`max(max(${e}.x, ${e}.y), ${e}.z)`:e,_=q(`x`,c.dataType,c.dims,p),v=J(`result`,c.dataType,c.dims,p),y=_.type.value,b=er(c.dataType)===`f32`?`var threadMax = ${y}(-3.402823e+38f);`:`var threadMax = ${y}(-65504.0h);`,x=e=>` - var rowMaxShared : ${y}; - var rowSumShared : ${y}; - var threadShared : array<${y}, ${h}>; - - fn getValue(row: i32, col: i32, row_stride: i32) -> ${y} { - let index = row * row_stride + col; - return x[index]; - } - - fn setValue(row: i32, col: i32, row_stride: i32, value: ${y}) { - let index = row * row_stride + col; - result[index] = value; - } - ${e.registerUniform(`packedCols`,`i32`).declareVariables(_,v)} - ${e.mainStart(h)} - let gindex = i32(global_idx); - let lindex = i32(local_idx); - const wg = ${h}; - let row = gindex / wg; - let cols = uniforms.packedCols; - let row_stride : i32 = uniforms.packedCols; - - // find the rows max - ${b} - for (var col = lindex; col < cols; col += wg) { - let value = getValue(row, col, row_stride); - threadMax = max(threadMax, value); - } - if (lindex < cols) { - threadShared[lindex] = threadMax; - } - workgroupBarrier(); - - var reduceSize = min(cols, wg); - for (var currSize = reduceSize >> 1; currSize > 0; currSize = reduceSize >> 1) { - reduceSize = currSize + (reduceSize & 1); - if (lindex < currSize) { - threadShared[lindex] = max(threadShared[lindex], threadShared[lindex + reduceSize]); - } - workgroupBarrier(); - } - if (lindex == 0) { - rowMaxShared = ${y}(${g(`threadShared[0]`,p)}); - } - workgroupBarrier(); - - // find the rows sum - var threadSum = ${y}(0.0); - for (var col = lindex; col < cols; col += wg) { - let subExp = exp(getValue(row, col, row_stride) - rowMaxShared); - threadSum += subExp; - } - threadShared[lindex] = threadSum; - workgroupBarrier(); - - for (var currSize = wg >> 1; currSize > 0; currSize = currSize >> 1) { - if (lindex < currSize) { - threadShared[lindex] = threadShared[lindex] + threadShared[lindex + currSize]; - } - workgroupBarrier(); - } - if (lindex == 0) { - rowSumShared = ${y}(${ar(`threadShared[0]`,p)}); - } - workgroupBarrier(); - - // calculate final value for each element in the row - for (var col = lindex; col < cols; col += wg) { - let value = exp(getValue(row, col, row_stride) - rowMaxShared) / rowSumShared; - setValue(row, col, row_stride, value); - } - }`,S=e.compute({name:`Softmax`,shaderCache:{hint:`${p};${h}`,inputDependencies:[`type`]},getRunData:()=>({outputs:[{dims:u,dataType:c.dataType}],dispatchGroup:{x:f},programUniforms:[{type:6,data:m}]}),getShaderSource:x},{inputs:[c],outputs:[s?-1:0]})[0];s&&e.compute(gr(S,l),{inputs:[S]})},Q=(e,t)=>{Bu(e.inputs),Vu(e,t)},Hu=e=>Xn({axis:e.axis})}),Wu,Gu,Ku,qu,Ju,Yu=j(()=>{"use strict";V(),W(),Y(),Wu=e=>Array.from(e.getBigInt64Array(),Number),Gu=e=>{if(!e||e.length!==2)throw Error(`Tile requires 2 inputs.`);if(e[0].dataType!==1&&e[0].dataType!==10&&e[0].dataType!==6&&e[0].dataType!==12)throw Error(`Tile only support float, float16, int32, and uint32 data types`);if(e[1].dataType!==7)throw Error("Tile `repeats` input should be of int64 data type");if(e[1].dims.length!==1)throw Error("Tile `repeats` input should be 1-D");if(Wu(e[1]).length!==e[0].dims.length)throw Error("Tile `repeats` input should have same number of elements as rank of input data tensor")},Ku=(e,t)=>{let n=[];for(let r=0;r{let n=e[0].dims,r=t??Wu(e[1]),i=Ku(n,r),a=U.size(i),o=e[0].dataType,s=q(`input`,o,n.length),c=J(`output`,o,i.length),l=e=>` - const inputShape = ${s.indices(...n)}; - ${e.registerUniform(`output_size`,`u32`).declareVariables(s,c)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let output_indices = ${c.offsetToIndices(`global_idx`)}; - var input_indices: ${s.type.indices}; - for (var i = 0; i < ${n.length}; i++) { - let input_dim_i = ${s.indicesGet(`uniforms.input_shape`,`i`)}; - let input_dim_value = ${c.indicesGet(`output_indices`,`i`)} % input_dim_i; - - ${s.indicesSet(`input_indices`,`i`,`input_dim_value`)} - } - ${c.setByOffset(`global_idx`,s.getByIndices(`input_indices`))} - }`;return{name:`Tile`,shaderCache:{hint:`${r}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:[{type:12,data:a},...G(e[0].dims,i)]}),getShaderSource:l}},Ju=e=>{Gu(e.inputs),e.compute(qu(e.inputs),{inputs:[0]})}}),Xu,Zu,Qu,$u=j(()=>{"use strict";V(),W(),Y(),Xu=(e,t,n,r,i)=>{let a=J(`output_data`,i,n.length,4),o=q(`a_data`,t[1].dataType,t[1].dims.length,4),s=q(`b_data`,t[2].dataType,t[2].dims.length,4),c=q(`c_data`,t[0].dataType,t[0].dims.length,4),l,u=(e,t,n)=>`select(${t}, ${e}, ${n})`;if(!r)l=a.setByOffset(`global_idx`,u(o.getByOffset(`global_idx`),s.getByOffset(`global_idx`),c.getByOffset(`global_idx`)));else{let e=(e,t,n=``)=>{let r=`a_data[index_a${t}][component_a${t}]`,i=`b_data[index_b${t}][component_b${t}]`,l=`bool(c_data[index_c${t}] & (0xffu << (component_c${t} * 8)))`;return` - let output_indices${t} = ${a.offsetToIndices(`global_idx * 4u + ${t}u`)}; - let offset_a${t} = ${o.broadcastedIndicesToOffset(`output_indices${t}`,a)}; - let offset_b${t} = ${s.broadcastedIndicesToOffset(`output_indices${t}`,a)}; - let offset_c${t} = ${c.broadcastedIndicesToOffset(`output_indices${t}`,a)}; - let index_a${t} = offset_a${t} / 4u; - let index_b${t} = offset_b${t} / 4u; - let index_c${t} = offset_c${t} / 4u; - let component_a${t} = offset_a${t} % 4u; - let component_b${t} = offset_b${t} % 4u; - let component_c${t} = offset_c${t} % 4u; - ${e}[${t}] = ${n}(${u(r,i,l)}); - `};l=i===9?` - var data = vec4(0); - ${e(`data`,0,`u32`)} - ${e(`data`,1,`u32`)} - ${e(`data`,2,`u32`)} - ${e(`data`,3,`u32`)} - output_data[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` - ${e(`output_data[global_idx]`,0)} - ${e(`output_data[global_idx]`,1)} - ${e(`output_data[global_idx]`,2)} - ${e(`output_data[global_idx]`,3)} - `}return` - ${e.registerUniform(`vec_size`,`u32`).declareVariables(c,o,s,a)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - ${l} - }`},Zu=e=>{let t=e[1].dims,n=e[2].dims,r=e[0].dims,i=e[1].dataType,a=!(U.areEqual(t,n)&&U.areEqual(n,r)),o=t,s=U.size(t);if(a){let e=gn.calcShape(gn.calcShape(t,n,!1),r,!1);if(!e)throw Error(`Can't perform where op on the given tensors`);o=e,s=U.size(o)}let c=Math.ceil(s/4);return{name:`Where`,shaderCache:{inputDependencies:[`rank`,`rank`,`rank`]},getShaderSource:t=>Xu(t,e,o,a,i),getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64/4)},programUniforms:[{type:12,data:c},...G(r,t,n,o)]})}},Qu=e=>{e.compute(Zu(e.inputs))}}),ed,td=j(()=>{"use strict";yi(),Oi(),Ni(),Li(),Na(),qa(),eo(),Jo(),cs(),fs(),vs(),As(),Is(),zs(),Ws(),Js(),$s(),ic(),lc(),wc(),Xc(),tl(),al(),cl(),ml(),Mc(),wl(),Ul(),Jl(),Ql(),au(),mi(),Eu(),Wc(),Au(),zu(),Uu(),Bc(),Yu(),yr(),ka(),$u(),ed=new Map([[`Abs`,[Bi]],[`Acos`,[Vi]],[`Acosh`,[Hi]],[`Add`,[La]],[`ArgMax`,[_i,vi]],[`ArgMin`,[gi,vi]],[`Asin`,[Ui]],[`Asinh`,[Wi]],[`Atan`,[Gi]],[`Atanh`,[Ki]],[`Attention`,[Di]],[`AveragePool`,[Pl,Nl]],[`BatchNormalization`,[Mi]],[`BiasAdd`,[Ii]],[`BiasSplitGelu`,[Ma]],[`Cast`,[Ji,qi]],[`Ceil`,[Zi]],[`Clip`,[Xi]],[`Concat`,[Qa,$a]],[`Conv`,[qo,Uo]],[`ConvTranspose`,[ss,ts]],[`Cos`,[Qi]],[`Cosh`,[$i]],[`CumSum`,[us,ds]],[`DepthToSpace`,[gs,_s]],[`DequantizeLinear`,[Kl,ql]],[`Div`,[Ra]],[`Einsum`,[Os,ks]],[`Elu`,[ta,ea]],[`Equal`,[za]],[`Erf`,[ra]],[`Exp`,[ia]],[`Expand`,[Fs]],[`FastGelu`,[Rs]],[`Floor`,[aa]],[`FusedConv`,[qo,Uo]],[`Gather`,[Us,Hs]],[`GatherElements`,[rc,nc]],[`GatherBlockQuantized`,[Zs,Qs]],[`GatherND`,[Ks,qs]],[`Gelu`,[oa]],[`Gemm`,[cc,sc]],[`GlobalAveragePool`,[Ll,Il]],[`GlobalMaxPool`,[Hl,Vl]],[`Greater`,[Ua]],[`GreaterOrEqual`,[Ga]],[`GridSample`,[Sc,Cc]],[`GroupQueryAttention`,[Yc]],[`HardSigmoid`,[ma,pa]],[`InstanceNormalization`,[el]],[`LayerNormalization`,[il]],[`LeakyRelu`,[sa,ea]],[`Less`,[Wa]],[`LessOrEqual`,[Ka]],[`Log`,[Ta]],[`MatMul`,[sl]],[`MatMulNBits`,[fl,pl]],[`MaxPool`,[zl,Bl]],[`Mul`,[Ba]],[`MultiHeadAttention`,[jc,Dc]],[`Neg`,[la]],[`Not`,[ca]],[`Pad`,[Cl]],[`Pow`,[Va]],[`QuickGelu`,[Oa,ea]],[`Range`,[Zl]],[`Reciprocal`,[ua]],[`ReduceMin`,[li]],[`ReduceMean`,[ii]],[`ReduceMax`,[ci]],[`ReduceSum`,[di]],[`ReduceProd`,[ui]],[`ReduceL1`,[ai]],[`ReduceL2`,[oi]],[`ReduceLogSum`,[pi]],[`ReduceLogSumExp`,[si]],[`ReduceSumSquare`,[fi]],[`Relu`,[da]],[`Resize`,[wu,Tu]],[`RotaryEmbedding`,[Uc]],[`ScatterND`,[iu,ru]],[`Sigmoid`,[fa]],[`Sin`,[ha]],[`Sinh`,[ga]],[`Slice`,[Lu,Ru]],[`SkipLayerNormalization`,[ku]],[`Split`,[Rc,zc]],[`Sqrt`,[_a]],[`Softmax`,[Q,Hu]],[`Sub`,[Ha]],[`Tan`,[va]],[`Tanh`,[ba]],[`ThresholdedRelu`,[wa,ea]],[`Tile`,[Ju]],[`Transpose`,[_r,vr]],[`Where`,[Qu]]])}),nd,rd=j(()=>{"use strict";et(),mn(),Y(),nd=class{constructor(e){this.backend=e,this.repo=new Map,this.attributesBound=!1}getArtifact(e){return this.repo.get(e)}setArtifact(e,t){this.repo.set(e,t)}run(e,t,n,r,i){He(e.programInfo.name);let a=this.backend.device,o=this.backend.getComputePassEncoder();this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2);let s=[];for(let e of t)s.push({binding:s.length,resource:{buffer:e.buffer}});for(let e of n)s.push({binding:s.length,resource:{buffer:e.buffer}});i&&s.push({binding:s.length,resource:i});let c=a.createBindGroup({layout:e.computePipeline.getBindGroupLayout(0),entries:s,label:e.programInfo.name});if(this.backend.sessionStatus===`capturing`){let t={kernelId:this.backend.currentKernelId,computePipeline:e.computePipeline,bindGroup:c,dispatchGroup:r};this.backend.capturedCommandList.get(this.backend.currentSessionId).push(t)}o.setPipeline(e.computePipeline),o.setBindGroup(0,c),o.dispatchWorkgroups(...r),this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2+1),this.backend.pendingDispatchNumber++,(this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber||this.backend.queryType===`at-passes`)&&this.backend.endComputePass(),this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber&&this.backend.flush(),Ue(e.programInfo.name)}dispose(){}build(e,t){He(e.name);let n=this.backend.device,r=[];[{feature:`shader-f16`,extension:`f16`},{feature:`subgroups`,extension:`subgroups`}].forEach(e=>{n.features.has(e.feature)&&r.push(`enable ${e.extension};`)});let i=ur(t,this.backend.device.limits),a=e.getShaderSource(i),o=`${r.join(` -`)} -${i.additionalImplementations} -${a}`,s=n.createShaderModule({code:o,label:e.name});H(`verbose`,()=>`[WebGPU] ${e.name} shader code: ${o}`);let c=n.createComputePipeline({compute:{module:s,entryPoint:`main`},layout:`auto`,label:e.name});return Ue(e.name),{programInfo:e,computePipeline:c,uniformVariablesInfo:i.variablesInfo}}normalizeDispatchGroupSize(e){let t=typeof e==`number`?e:e.x,n=typeof e==`number`?1:e.y||1,r=typeof e==`number`?1:e.z||1,i=this.backend.device.limits.maxComputeWorkgroupsPerDimension;if(t<=i&&n<=i&&r<=i)return[t,n,r];let a=t*n*r,o=Math.ceil(Math.sqrt(a));if(o>i){if(o=Math.ceil(Math.cbrt(a)),o>i)throw Error(`Total dispatch size exceeds WebGPU maximum.`);return[o,o,o]}else return[o,o,1]}}}),id={};M(id,{WebGpuBackend:()=>cd});var ad,od,sd,cd,ld=j(()=>{"use strict";et(),V(),mn(),Sn(),Jn(),td(),rd(),ad=(e,t)=>{if(t.length!==e.length)throw Error(`inputDependencies length ${t.length} is not equal to inputTensors length ${e.length}.`);let n=[];for(let r=0;r{var r,i;let a=e.name;return(r=e.shaderCache)?.hint&&(a+=`[`+e.shaderCache.hint+`]`),a+=`:`+n+`:${ad(t,(i=e.shaderCache)?.inputDependencies??Array(t.length).fill(`dims`))}`,a},sd=class{constructor(e){e&&(this.architecture=e.architecture,this.vendor=e.vendor)}isArchitecture(e){return this.architecture===e}isVendor(e){return this.vendor===e}},cd=class{constructor(){this.currentSessionId=null,this.currentKernelId=null,this.commandEncoder=null,this.computePassEncoder=null,this.maxDispatchNumber=16,this.pendingDispatchNumber=0,this.pendingKernels=[],this.pendingQueries=new Map,this.sessionStatus=`default`,this.capturedCommandList=new Map,this.capturedPendingKernels=new Map,this.sessionExternalDataMapping=new Map}get currentKernelCustomData(){if(this.currentKernelId===null)throw Error(`currentKernelCustomData(): currentKernelId is null. (should not happen)`);let e=this.kernelCustomData.get(this.currentKernelId);return e||(e={},this.kernelCustomData.set(this.currentKernelId,e)),e}async initialize(e,t){this.env=e;let n=[],r={requiredLimits:{maxComputeWorkgroupStorageSize:t.limits.maxComputeWorkgroupStorageSize,maxComputeWorkgroupsPerDimension:t.limits.maxComputeWorkgroupsPerDimension,maxStorageBufferBindingSize:t.limits.maxStorageBufferBindingSize,maxBufferSize:t.limits.maxBufferSize,maxComputeInvocationsPerWorkgroup:t.limits.maxComputeInvocationsPerWorkgroup,maxComputeWorkgroupSizeX:t.limits.maxComputeWorkgroupSizeX,maxComputeWorkgroupSizeY:t.limits.maxComputeWorkgroupSizeY,maxComputeWorkgroupSizeZ:t.limits.maxComputeWorkgroupSizeZ},requiredFeatures:n},i=e=>t.features.has(e)&&n.push(e)&&!0;i(`chromium-experimental-timestamp-query-inside-passes`)||i(`timestamp-query`),i(`shader-f16`),i(`subgroups`),this.device=await t.requestDevice(r),this.adapterInfo=new sd(t.info||await t.requestAdapterInfo()),this.gpuDataManager=qn(this),this.programManager=new nd(this),this.kernels=new Map,this.kernelPersistentData=new Map,this.kernelCustomData=new Map,fn(e.logLevel,!!e.debug),this.device.onuncapturederror=e=>{e.error instanceof GPUValidationError&&console.error(`An uncaught WebGPU validation error was raised: ${e.error.message}`)},Object.defineProperty(this.env.webgpu,`device`,{value:this.device,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(this.env.webgpu,`adapter`,{value:t,writable:!1,enumerable:!0,configurable:!1}),this.setQueryType()}dispose(){typeof this.querySet<`u`&&this.querySet.destroy(),this.gpuDataManager.dispose()}getCommandEncoder(){return this.commandEncoder||=this.device.createCommandEncoder(),this.commandEncoder}getComputePassEncoder(){if(!this.computePassEncoder){let e=this.getCommandEncoder(),t={};this.queryType===`at-passes`&&(t.timestampWrites={querySet:this.querySet,beginningOfPassWriteIndex:this.pendingDispatchNumber*2,endOfPassWriteIndex:this.pendingDispatchNumber*2+1}),this.computePassEncoder=e.beginComputePass(t)}return this.computePassEncoder}endComputePass(){this.computePassEncoder&&(this.computePassEncoder.end(),this.computePassEncoder=null)}flush(){if(!this.commandEncoder)return;He(),this.endComputePass();let e;this.queryType!==`none`&&(this.commandEncoder.resolveQuerySet(this.querySet,0,this.pendingDispatchNumber*2,this.queryResolveBuffer,0),e=this.device.createBuffer({size:this.pendingDispatchNumber*2*8,usage:GPUBufferUsage.MAP_READ|GPUBufferUsage.COPY_DST}),this.pendingQueries.set(e,this.pendingKernels),this.pendingKernels=[],this.commandEncoder.copyBufferToBuffer(this.queryResolveBuffer,0,e,0,this.pendingDispatchNumber*2*8)),this.device.queue.submit([this.commandEncoder.finish()]),this.gpuDataManager.refreshPendingBuffers(),this.commandEncoder=null,this.pendingDispatchNumber=0,this.queryType!==`none`&&e.mapAsync(GPUMapMode.READ).then(()=>{let t=new BigUint64Array(e.getMappedRange()),n=this.pendingQueries.get(e);for(let e=0;e`u`&&(this.queryTimeBase=f);let m=Number(f-this.queryTimeBase),h=Number(p-this.queryTimeBase);if(!Number.isSafeInteger(m)||!Number.isSafeInteger(h))throw RangeError(`incorrect timestamp range`);if((r=this.env.webgpu.profiling)?.ondata)this.env.webgpu.profiling.ondata({version:1,inputsMetadata:u.map(e=>({dims:e.dims,dataType:Qt(e.dataType)})),outputsMetadata:d.map(e=>({dims:e.dims,dataType:Qt(e.dataType)})),kernelId:a,kernelType:s,kernelName:c,programName:l,startTime:m,endTime:h});else{let e=``;u.forEach((t,n)=>{e+=`input[${n}]: [${t.dims}] | ${Qt(t.dataType)}, `});let t=``;d.forEach((e,n)=>{t+=`output[${n}]: [${e.dims}] | ${Qt(e.dataType)}, `}),console.log(`[profiling] kernel "${a}|${s}|${c}|${l}" ${e}${t}execution time: ${h-m} ns`)}B(`GPU`,`${l}::${f}::${p}`)}e.unmap(),this.pendingQueries.delete(e)}),Ue()}run(e,t,n,r,i,a){He(e.name);let o=[];for(let e=0;et):n;if(u.length!==s.length)throw Error(`Output size ${u.length} must be equal to ${s.length}.`);let d=[],f=[];for(let e=0;e=a)throw Error(`Invalid output index: ${u[e]}`);if(u[e]===-3)continue;let t=u[e]===-1,n=u[e]===-2,o=t||n?i(s[e].dataType,s[e].dims):r(u[e],s[e].dataType,s[e].dims);if(d.push(o),o.data===0)continue;let c=this.gpuDataManager.get(o.data);if(!c)throw Error(`no GPU data for output: ${o.data}`);if(t&&this.temporaryData.push(c),n){let e=this.kernelPersistentData.get(this.currentKernelId);e||(e=[],this.kernelPersistentData.set(this.currentKernelId,e)),e.push(c)}f.push(c)}if(o.length!==t.length||f.length!==d.length){if(f.length===0)return Ue(e.name),d;throw Error(`Program ${e.name} has zero-sized tensor(s) in inputs or outputs. This is not supported now.`)}let p;if(l){let e=0,t=[];l.forEach(n=>{let r=typeof n.data==`number`?[n.data]:n.data;if(r.length===0)return;let i=n.type===10?2:4,a,o;n.type===10?(o=r.length>4?16:r.length>2?8:r.length*i,a=r.length>4?16:i*r.length):(o=r.length<=2?r.length*i:16,a=16),e=Math.ceil(e/o)*o,t.push(e);let s=n.type===10?8:4;e+=r.length>4?Math.ceil(r.length/s)*a:r.length*i});let n=16;e=Math.ceil(e/n)*n;let r=new ArrayBuffer(e);l.forEach((e,n)=>{let i=t[n],a=typeof e.data==`number`?[e.data]:e.data;if(e.type===6)new Int32Array(r,i,a.length).set(a);else if(e.type===12)new Uint32Array(r,i,a.length).set(a);else if(e.type===10)new Uint16Array(r,i,a.length).set(a);else if(e.type===1)new Float32Array(r,i,a.length).set(a);else throw Error(`Unsupported uniform type: ${Qt(e.type)}`)});let i=this.gpuDataManager.create(e,GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM);this.device.queue.writeBuffer(i.buffer,0,r,0,e),this.gpuDataManager.release(i.id),p={offset:0,size:e,buffer:i.buffer}}let m=this.programManager.normalizeDispatchGroupSize(c),h=m[1]===1&&m[2]===1,g=od(e,t,h),_=this.programManager.getArtifact(g);if(_||(_=this.programManager.build(e,m),this.programManager.setArtifact(g,_),H(`info`,()=>`[artifact] key: ${g}, programName: ${e.name}`)),l&&_.uniformVariablesInfo){if(l.length!==_.uniformVariablesInfo.length)throw Error(`Uniform variables count mismatch: expect ${_.uniformVariablesInfo.length}, got ${l.length} in program "${_.programInfo.name}".`);for(let e=0;e`[ProgramManager] run "${e.name}" (key=${g}) with ${m[0]}x${m[1]}x${m[2]}`),this.queryType!==`none`||this.sessionStatus===`capturing`){let e={kernelId:this.currentKernelId,programName:_.programInfo.name,inputTensorViews:t,outputTensorViews:d};this.pendingKernels.push(e),this.sessionStatus===`capturing`&&this.capturedPendingKernels.get(this.currentSessionId).push(e)}return this.programManager.run(_,o,f,m,p),Ue(e.name),d}upload(e,t){this.gpuDataManager.upload(e,t)}memcpy(e,t){this.gpuDataManager.memcpy(e,t)}async download(e,t){await this.gpuDataManager.download(e,t)}alloc(e){return this.gpuDataManager.create(e).id}free(e){return this.gpuDataManager.release(e)}createKernel(e,t,n,r){let i=ed.get(e);if(!i)throw Error(`kernel not implemented: ${e}`);let a={kernelType:e,kernelName:r,kernelEntry:i[0],attributes:[i[1],n]};this.kernels.set(t,a)}releaseKernel(e){let t=this.kernelPersistentData.get(e);if(t){for(let e of t)this.gpuDataManager.release(e.id);this.kernelPersistentData.delete(e)}this.kernelCustomData.delete(e),this.kernels.delete(e)}computeKernel(e,t,n){let r=this.kernels.get(e);if(!r)throw Error(`kernel not created: ${e}`);let i=r.kernelType,a=r.kernelName,o=r.kernelEntry,s=r.attributes;if(this.currentKernelId!==null)throw Error(`kernel "[${i}] ${a}" is not allowed to be called recursively`);this.currentKernelId=e,s[0]&&(s[1]=s[0](s[1]),s[0]=void 0),H(`info`,()=>`[WebGPU] Start to run kernel "[${i}] ${a}"...`);let c=this.env.debug;this.temporaryData=[];try{return c&&this.device.pushErrorScope(`validation`),o(t,s[1]),0}catch(e){return n.push(Promise.resolve(`[WebGPU] Kernel "[${i}] ${a}" failed. ${e}`)),1}finally{c&&n.push(this.device.popErrorScope().then(e=>e?`GPU validation error for kernel "[${i}] ${a}": ${e.message}`:null));for(let e of this.temporaryData)this.gpuDataManager.release(e.id);this.temporaryData=[],this.currentKernelId=null}}registerBuffer(e,t,n,r){let i=this.sessionExternalDataMapping.get(e);i||(i=new Map,this.sessionExternalDataMapping.set(e,i));let a=i.get(t),o=this.gpuDataManager.registerExternalBuffer(n,r,a);return i.set(t,[o,n]),o}unregisterBuffers(e){let t=this.sessionExternalDataMapping.get(e);t&&(t.forEach(e=>this.gpuDataManager.unregisterExternalBuffer(e[0])),this.sessionExternalDataMapping.delete(e))}getBuffer(e){let t=this.gpuDataManager.get(e);if(!t)throw Error(`no GPU data for buffer: ${e}`);return t.buffer}createDownloader(e,t,n){return async()=>{let r=await Gn(this,e,t);return xn(r.buffer,n)}}writeTimestamp(e){this.queryType===`inside-passes`&&this.computePassEncoder.writeTimestamp(this.querySet,e)}setQueryType(){var e;this.queryType=`none`,((e=this.env.webgpu.profiling)?.mode===`default`||(typeof this.env.trace>`u`?this.env.wasm.trace:this.env.trace))&&(this.device.features.has(`chromium-experimental-timestamp-query-inside-passes`)?this.queryType=`inside-passes`:this.device.features.has(`timestamp-query`)&&(this.queryType=`at-passes`),this.queryType!==`none`&&typeof this.querySet>`u`&&(this.querySet=this.device.createQuerySet({type:`timestamp`,count:this.maxDispatchNumber*2}),this.queryResolveBuffer=this.device.createBuffer({size:this.maxDispatchNumber*2*8,usage:GPUBufferUsage.COPY_SRC|GPUBufferUsage.QUERY_RESOLVE})))}captureBegin(){H(`info`,`captureBegin`),this.capturedCommandList.get(this.currentSessionId)||this.capturedCommandList.set(this.currentSessionId,[]),this.capturedPendingKernels.get(this.currentSessionId)||this.capturedPendingKernels.set(this.currentSessionId,[]),this.flush(),this.sessionStatus=`capturing`}captureEnd(){H(`info`,`captureEnd`),this.flush(),this.sessionStatus=`default`}replay(){H(`info`,`replay`),this.sessionStatus=`replaying`;let e=this.capturedCommandList.get(this.currentSessionId),t=this.capturedPendingKernels.get(this.currentSessionId),n=e.length;this.pendingKernels=[];for(let r=0;r=this.maxDispatchNumber||this.queryType===`at-passes`)&&this.endComputePass(),this.pendingDispatchNumber>=this.maxDispatchNumber&&this.flush()}this.flush(),this.sessionStatus=`default`}onCreateSession(){this.gpuDataManager.onCreateSession()}onReleaseSession(e){this.unregisterBuffers(e),this.capturedCommandList.has(e)&&this.capturedCommandList.delete(e),this.capturedPendingKernels.has(e)&&this.capturedPendingKernels.delete(e),this.gpuDataManager.onReleaseSession(e)}onRunStart(e){this.currentSessionId=e,this.setQueryType()}}}),ud={};M(ud,{init:()=>pd});var dd,fd,pd,md=j(()=>{"use strict";V(),mn(),W(),Ln(),dd=class e{constructor(e,t,n,r){this.module=e,this.dataType=t,this.data=n,this.dims=r}getFloat32Array(){if(this.dataType!==1)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Float32Array:new Float32Array(this.module.HEAP8.buffer,this.data,e)}getBigInt64Array(){if(this.dataType!==7)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new BigInt64Array:new BigInt64Array(this.module.HEAP8.buffer,this.data,e)}getInt32Array(){if(this.dataType!==6)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Int32Array:new Int32Array(this.module.HEAP8.buffer,this.data,e)}getUint16Array(){if(this.dataType!==10&&this.dataType!==4)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Uint16Array:new Uint16Array(this.module.HEAP8.buffer,this.data,e)}reshape(t){if(U.size(t)!==U.size(this.dims))throw Error(`Invalid new shape`);return new e(this.module,this.dataType,this.data,t)}},fd=class{constructor(e,t,n){this.module=e,this.backend=t,this.customDataOffset=0,this.customDataSize=0,this.adapterInfo=t.adapterInfo;let r=e.PTR_SIZE,i=n/e.PTR_SIZE,a=r===4?`i32`:`i64`;this.opKernelContext=Number(e.getValue(r*i++,a));let o=Number(e.getValue(r*i++,a));this.outputCount=Number(e.getValue(r*i++,a)),this.customDataOffset=Number(e.getValue(r*i++,`*`)),this.customDataSize=Number(e.getValue(r*i++,a));let s=[];for(let t=0;ttypeof e==`number`?this.inputs[e]:e))??this.inputs,i=t?.outputs??[],a=(e,t,n)=>new dd(this.module,t,this.output(e,n),n),o=(e,t)=>{let n=$t(e,t);if(!n)throw Error(`Unsupported data type: ${e}`);let r=n>0?this.backend.gpuDataManager.create(n).id:0;return new dd(this.module,e,r,t)};return this.backend.run(e,r,i,a,o,this.outputCount)}output(e,t){let n=this.module.stackSave();try{let n=this.module.PTR_SIZE,r=n===4?`i32`:`i64`,i=this.module.stackAlloc((1+t.length)*n);this.module.setValue(i,t.length,r);for(let e=0;e{let i=t.jsepInit;if(!i)throw Error(`Failed to initialize JSEP. The WebAssembly module is not built with JSEP support.`);if(e===`webgpu`){let e=(ld(),ue(id)).WebGpuBackend,a=new e;await a.initialize(n,r),i(`webgpu`,[a,e=>a.alloc(Number(e)),e=>a.free(e),(e,n,r,i=!1)=>{if(i)H(`verbose`,()=>`[WebGPU] jsepCopyGpuToGpu: src=${Number(e)}, dst=${Number(n)}, size=${Number(r)}`),a.memcpy(Number(e),Number(n));else{H(`verbose`,()=>`[WebGPU] jsepCopyCpuToGpu: dataOffset=${Number(e)}, gpuDataId=${Number(n)}, size=${Number(r)}`);let i=t.HEAPU8.subarray(Number(e>>>0),Number(e>>>0)+Number(r));a.upload(Number(n),i)}},async(e,n,r)=>{H(`verbose`,()=>`[WebGPU] jsepCopyGpuToCpu: gpuDataId=${e}, dataOffset=${n}, size=${r}`),await a.download(Number(e),()=>t.HEAPU8.subarray(Number(n)>>>0,Number(n+r)>>>0))},(e,n,r)=>a.createKernel(e,Number(n),r,t.UTF8ToString(t._JsepGetNodeName(Number(n)))),e=>a.releaseKernel(e),(e,n,r,i)=>{H(`verbose`,()=>`[WebGPU] jsepRun: sessionHandle=${r}, kernel=${e}, contextDataOffset=${n}`);let o=new fd(t,a,Number(n));return a.computeKernel(Number(e),o,i)},()=>a.captureBegin(),()=>a.captureEnd(),()=>a.replay()])}else{let e=new In(n);i(`webnn`,[e,()=>e.reserveTensorId(),t=>e.releaseTensorId(t),async(t,n,r,i,a)=>e.ensureTensor(t,n,r,i,a),(t,n)=>{e.uploadTensor(t,n)},async(t,n)=>e.downloadTensor(t,n)])}}}),hd,gd,_d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed,Dd,Od=j(()=>{"use strict";Ut(),Xt(),V(),Lt(),Vt(),sn(),hd=(e,t)=>{It()._OrtInit(e,t)!==0&&Bt(`Can't initialize onnxruntime.`)},gd=async e=>{hd(e.wasm.numThreads,tn(e.logLevel))},_d=async(e,t)=>{var n,r;(n=(r=It()).asyncInit)?.call(r);{let n=(md(),ue(ud)).init;if(t===`webgpu`){if(typeof navigator>`u`||!navigator.gpu)throw Error(`WebGPU is not supported in current environment`);let t=e.webgpu.adapter;if(t){if(typeof t.limits!=`object`||typeof t.features!=`object`||typeof t.requestDevice!=`function`)throw Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let n=e.webgpu.powerPreference;if(n!==void 0&&n!==`low-power`&&n!==`high-performance`)throw Error(`Invalid powerPreference setting: "${n}"`);let r=e.webgpu.forceFallbackAdapter;if(r!==void 0&&typeof r!=`boolean`)throw Error(`Invalid forceFallbackAdapter setting: "${r}"`);if(t=await navigator.gpu.requestAdapter({powerPreference:n,forceFallbackAdapter:r}),!t)throw Error(`Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.`)}await n(`webgpu`,It(),e,t)}if(t===`webnn`){if(typeof navigator>`u`||!navigator.ml)throw Error(`WebNN is not supported in current environment`);await n(`webnn`,It(),e)}}},vd=new Map,yd=e=>{let t=It(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetInputOutputCount(e,r,r+n)!==0&&Bt(`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)}},bd=(e,t)=>{let n=It(),r=n.stackSave(),i=0;try{let r=n.PTR_SIZE,a=n.stackAlloc(2*r);n._OrtGetInputOutputMetadata(e,t,a,a+r)!==0&&Bt(`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{let t=It(),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]},Sd=async(e,t)=>{let n,r,i=It();Array.isArray(e)?[n,r]=e:e.buffer===i.HEAPU8.buffer?[n,r]=[e.byteOffset,e.byteLength]:[n,r]=xd(e);let a=0,o=0,s=0,c=[],l=[],u=[];try{var d,f;if([o,c]=await Yt(t),t?.externalData&&i.mountExternalData){let e=[];for(let n of t.externalData){let t=typeof n==`string`?n:n.path;e.push(on(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;n?i.currentContext=n:r?i.currentContext=await i.webnnCreateMLContext(r):i.currentContext=await i.webnnCreateMLContext({deviceType:a,powerPreference:o})}else i.currentContext=await i.webnnCreateMLContext();break}a=await i._OrtCreateSession(n,r,o),(d=i.webgpuOnCreateSession)?.call(i,a),a===0&&Bt(`Can't create a session.`),(f=i.jsepOnCreateSession)?.call(i),i.currentContext&&(i.webnnRegisterMLContext(a,i.currentContext),i.currentContext=void 0,i.shouldTransferToMLTensor=!0);let[e,m]=yd(a),h=!!t?.enableGraphCapture,g=[],_=[],v=[],y=[],b=[];for(let t=0;te===`gpu-buffer`||e===`ml-tensor`)&&(s=i._OrtCreateBinding(a),s===0&&Bt(`Can't create IO binding.`),x={handle:s,outputPreferredLocations:b,outputPreferredLocationsEncoded:b.map(e=>an(e))}),vd.set(a,[a,l,u,x,h,!1]),[a,g,_,v,y]}catch(e){throw l.forEach(e=>i._OrtFree(e)),u.forEach(e=>i._OrtFree(e)),s!==0&&i._OrtReleaseBinding(s)!==0&&Bt(`Can't release IO binding.`),a!==0&&i._OrtReleaseSession(a)!==0&&Bt(`Can't release session.`),e}finally{var m;i._free(n),o!==0&&i._OrtReleaseSessionOptions(o)!==0&&Bt(`Can't release session options.`),c.forEach(e=>i._free(e)),(m=i.unmountExternalData)?.call(i)}},Cd=e=>{var t,n,r;let i=It(),a=vd.get(e);if(!a)throw Error(`cannot release session. invalid session id: ${e}`);let[o,s,c,l,u]=a;l&&(u&&i._OrtClearBoundOutputs(l.handle)!==0&&Bt(`Can't clear bound outputs.`),i._OrtReleaseBinding(l.handle)!==0&&Bt(`Can't release IO binding.`)),(t=i.jsepOnReleaseSession)?.call(i,e),(n=i.webnnOnReleaseSession)?.call(i,e),(r=i.webgpuOnReleaseSession)?.call(i,e),s.forEach(e=>i._OrtFree(e)),c.forEach(e=>i._OrtFree(e)),i._OrtReleaseSession(o)!==0&&Bt(`Can't release session.`),vd.delete(e)},wd=async(e,t,n,r,i,a,o=!1)=>{if(!e){t.push(0);return}let s=It(),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=$t(Zt(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=$t(Zt(l),u);let n=s.webnnRegisterMLTensor;if(!n)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);p=n(r,t,Zt(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;es.setValue(g+t*c,e,c===4?`i32`:`i64`));let e=s._OrtCreateTensor(Zt(l),p,m,g,u.length,an(f));e===0&&Bt(`Can't create tensor for input/output. session=${r}, index=${a}.`),t.push(e)}finally{s.stackRestore(h)}},Td=async(e,t,n,r,i,a)=>{let o=It(),s=o.PTR_SIZE,c=vd.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],m=c[5],h=t.length,g=r.length,_=0,v=[],y=[],b=[],x=[],S=o.stackSave(),C=o.stackAlloc(h*s),w=o.stackAlloc(h*s),T=o.stackAlloc(g*s),E=o.stackAlloc(g*s);try{var D,O;[_,v]=Ht(a);for(let r=0;re*t,1);d=Qt(a);let _=f?.outputPreferredLocations[r[t]];if(d===`string`){if(_===`gpu-buffer`||_===`ml-tensor`)throw Error(`String tensor is not supported on GPU.`);let e=[];for(let t=0;t0){let e=o.jsepGetBuffer;if(!e)throw Error(`preferredLocation "gpu-buffer" is not supported without using WebGPU.`);let t=e(p),r=$t(a,g);if(r===void 0||!nn(d))throw Error(`Unsupported data type: ${d}`);u=!0,S.push([d,h,{gpuBuffer:t,download:o.jsepCreateDownloader(t,r,d),dispose:()=>{o._OrtReleaseTensor(n)!==0&&Bt(`Can't release tensor.`)}},`gpu-buffer`])}else if(_===`ml-tensor`&&g>0){let t=o.webnnEnsureTensor,r=o.webnnIsInt64Supported;if(!t||!r)throw Error(`preferredLocation "ml-tensor" is not supported without using WebNN.`);if($t(a,g)===void 0||!rn(d))throw Error(`Unsupported data type: ${d}`);if(d===`int64`&&!r(e))throw Error(`preferredLocation "ml-tensor" for int64 output is not supported by current WebNN Context.`);let i=await t(e,p,a,h,!1);u=!0,S.push([d,h,{mlTensor:i,download:o.webnnCreateMLTensorDownloader(p,d),dispose:()=>{o.webnnReleaseTensorId(p),o._OrtReleaseTensor(n)}},`ml-tensor`])}else{let e=en(d),t=new e(g);new Uint8Array(t.buffer,t.byteOffset,t.byteLength).set(o.HEAPU8.subarray(p,p+t.byteLength)),S.push([d,h,t,`cpu`])}}finally{var k;o.stackRestore(a),d===`string`&&p&&o._free(p),u||o._OrtReleaseTensor(n),(k=o.webnnOnRunEnd)?.call(o,l)}}return f&&!p&&(o._OrtClearBoundOutputs(f.handle)!==0&&Bt(`Can't clear bound outputs.`),vd.set(e,[l,u,d,f,p,!1])),S}finally{o.stackRestore(S),y.forEach(e=>o._OrtReleaseTensor(e)),b.forEach(e=>o._OrtReleaseTensor(e)),x.forEach(e=>o._free(e)),_!==0&&o._OrtReleaseRunOptions(_),v.forEach(e=>o._free(e))}},Ed=e=>{let t=It(),n=vd.get(e);if(!n)throw Error(`invalid session id`);let r=n[0],i=t._OrtEndProfiling(r);i===0&&Bt(`Can't get an profile file name.`),t._OrtFree(i)},Dd=e=>{let t=[];for(let n of e){let e=n[2];!Array.isArray(e)&&`buffer`in e&&t.push(e.buffer)}return t}}),kd,Ad,jd,Md,Nd,Pd,Fd,Id,Ld,Rd,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd,qd=j(()=>{"use strict";et(),Od(),Lt(),Dt(),kd=()=>!!R.wasm.proxy&&typeof document<`u`,jd=!1,Md=!1,Nd=!1,Id=new Map,Ld=(e,t)=>{let n=Id.get(e);n?n.push(t):Id.set(e,[t])},Rd=()=>{if(jd||!Md||Nd||!Ad)throw Error(`worker not ready`)},zd=e=>{switch(e.data.type){case`init-wasm`:jd=!1,e.data.err?(Nd=!0,Fd[1](e.data.err)):(Md=!0,Fd[0]()),Pd&&(URL.revokeObjectURL(Pd),Pd=void 0);break;case`init-ep`:case`copy-from`:case`create`:case`release`:case`run`:case`end-profiling`:{let t=Id.get(e.data.type);e.data.err?t.shift()[1](e.data.err):t.shift()[0](e.data.out);break}default:}},Bd=async()=>{if(!Md){if(jd)throw Error(`multiple calls to 'initWasm()' detected.`);if(Nd)throw Error(`previous call to 'initWasm()' failed.`);if(jd=!0,kd())return new Promise((e,t)=>{Ad?.terminate(),wt().then(([n,r])=>{try{Ad=r,Ad.onerror=e=>t(e),Ad.onmessage=zd,Fd=[e,t];let i={type:`init-wasm`,in:R};!i.in.wasm.wasmPaths&&(n||mt)&&(i.in.wasm.wasmPaths={wasm:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+import.meta.url).href}),Ad.postMessage(i),Pd=n}catch(e){t(e)}},t)});try{await Ft(R.wasm),await gd(R),Md=!0}catch(e){throw Nd=!0,e}finally{jd=!1}}},Vd=async e=>{if(kd())return Rd(),new Promise((t,n)=>{Ld(`init-ep`,[t,n]);let r={type:`init-ep`,in:{epName:e,env:R}};Ad.postMessage(r)});await _d(R,e)},Hd=async e=>kd()?(Rd(),new Promise((t,n)=>{Ld(`copy-from`,[t,n]);let r={type:`copy-from`,in:{buffer:e}};Ad.postMessage(r,[e.buffer])})):xd(e),Ud=async(e,t)=>{if(kd()){if(t?.preferredOutputLocation)throw Error(`session option "preferredOutputLocation" is not supported for proxy.`);return Rd(),new Promise((n,r)=>{Ld(`create`,[n,r]);let i={type:`create`,in:{model:e,options:{...t}}},a=[];e instanceof Uint8Array&&a.push(e.buffer),Ad.postMessage(i,a)})}else return Sd(e,t)},Wd=async e=>{if(kd())return Rd(),new Promise((t,n)=>{Ld(`release`,[t,n]);let r={type:`release`,in:e};Ad.postMessage(r)});Cd(e)},Gd=async(e,t,n,r,i,a)=>{if(kd()){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 Rd(),new Promise((i,o)=>{Ld(`run`,[i,o]);let s=n,c={type:`run`,in:{sessionId:e,inputIndices:t,inputs:s,outputIndices:r,options:a}};Ad.postMessage(c,Dd(s))})}else return Td(e,t,n,r,i,a)},Kd=async e=>{if(kd())return Rd(),new Promise((t,n)=>{Ld(`end-profiling`,[t,n]);let r={type:`end-profiling`,in:e};Ad.postMessage(r)});Ed(e)}}),Jd,Yd,Xd,Zd=j(()=>{"use strict";et(),qd(),V(),tt(),sn(),Jd=(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()}`)}},Yd=e=>{switch(e[3]){case`cpu`:return new ze(e[0],e[2],e[1]);case`gpu-buffer`:{let t=e[0];if(!nn(t))throw Error(`not supported data type: ${t} for deserializing GPU tensor`);let{gpuBuffer:n,download:r,dispose:i}=e[2];return ze.fromGpuBuffer(n,{dataType:t,dims:e[1],download:r,dispose:i})}case`ml-tensor`:{let t=e[0];if(!rn(t))throw Error(`not supported data type: ${t} for deserializing MLTensor tensor`);let{mlTensor:n,download:r,dispose:i}=e[2];return ze.fromMLTensor(n,{dataType:t,dims:e[1],download:r,dispose:i})}default:throw Error(`invalid data location: ${e[3]}`)}},Xd=class{async fetchModelAndCopyToWasmMemory(e){return Hd(await on(e))}async loadModel(e,t){He();let n;n=typeof e==`string`?await this.fetchModelAndCopyToWasmMemory(e):e,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await Ud(n,t),Ue()}async dispose(){return Wd(this.sessionId)}async run(e,t,n){He();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)=>Jd(e,()=>`input "${this.inputNames[i[t]]}"`)),c=a.map((e,t)=>e?Jd(e,()=>`output "${this.outputNames[o[t]]}"`):null),l=await Gd(this.sessionId,i,s,o,c,n),u={};for(let e=0;eef,initializeFlags:()=>$d,wasmBackend:()=>tf});var $d,ef,tf,nf=j(()=>{"use strict";et(),qd(),Zd(),$d=()=>{(typeof R.wasm.initTimeout!=`number`||R.wasm.initTimeout<0)&&(R.wasm.initTimeout=0);let e=R.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.`),R.wasm.simd=!1),typeof R.wasm.proxy!=`boolean`&&(R.wasm.proxy=!1),typeof R.wasm.trace!=`boolean`&&(R.wasm.trace=!1),typeof R.wasm.numThreads!=`number`||!Number.isInteger(R.wasm.numThreads)||R.wasm.numThreads<=0)if(typeof self<`u`&&!self.crossOriginIsolated)R.wasm.numThreads=1;else{let e=typeof navigator>`u`?le(`node:os`).cpus().length:navigator.hardwareConcurrency;R.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},ef=class{async init(e){$d(),await Bd(),await Vd(e)}async createInferenceSessionHandler(e,t){let n=new Xd;return await n.loadModel(e,t),n}},tf=new ef});et(),et(),et();var rf=`1.22.0-dev.20250409-89f8206ba4`,af=$e;{let e=(nf(),ue(Qd)).wasmBackend;P(`webgpu`,e,5),P(`webnn`,e,5),P(`cpu`,e,10),P(`wasm`,e,10)}Object.defineProperty(R.versions,`web`,{value:rf,enumerable:!0}); -/** -* @license -* Copyright 2021 Google LLC. All Rights Reserved. -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* ============================================================================= -*/ -/** -* @license -* Copyright 2020 Google LLC. All Rights Reserved. -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* ============================================================================= -*/ -/** -* @license -* Copyright 2019 Google LLC. All Rights Reserved. -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* ============================================================================= -*/ -var sf={"onnxruntime-common":e=>{e.exports=ie},"onnxruntime-web":e=>{e.exports=A},"?2ce3":()=>{},"?7992":()=>{},"?5af5":()=>{},"?2b25":()=>{},"?db59":()=>{},"?383f":()=>{},"?fa4b":()=>{},"./node_modules/@huggingface/jinja/dist/index.js":(t,n,r)=>{r.r(n),r.d(n,{Environment:()=>R,Interpreter:()=>ye,Template:()=>Pe,parse:()=>le,tokenize:()=>f});var i=Object.freeze({Text:`Text`,NumericLiteral:`NumericLiteral`,BooleanLiteral:`BooleanLiteral`,NullLiteral:`NullLiteral`,StringLiteral:`StringLiteral`,Identifier:`Identifier`,Equals:`Equals`,OpenParen:`OpenParen`,CloseParen:`CloseParen`,OpenStatement:`OpenStatement`,CloseStatement:`CloseStatement`,OpenExpression:`OpenExpression`,CloseExpression:`CloseExpression`,OpenSquareBracket:`OpenSquareBracket`,CloseSquareBracket:`CloseSquareBracket`,OpenCurlyBracket:`OpenCurlyBracket`,CloseCurlyBracket:`CloseCurlyBracket`,Comma:`Comma`,Dot:`Dot`,Colon:`Colon`,Pipe:`Pipe`,CallOperator:`CallOperator`,AdditiveBinaryOperator:`AdditiveBinaryOperator`,MultiplicativeBinaryOperator:`MultiplicativeBinaryOperator`,ComparisonBinaryOperator:`ComparisonBinaryOperator`,UnaryOperator:`UnaryOperator`,Set:`Set`,If:`If`,For:`For`,In:`In`,Is:`Is`,NotIn:`NotIn`,Else:`Else`,EndSet:`EndSet`,EndIf:`EndIf`,ElseIf:`ElseIf`,EndFor:`EndFor`,And:`And`,Or:`Or`,Not:`UnaryOperator`,Macro:`Macro`,EndMacro:`EndMacro`,Break:`Break`,Continue:`Continue`}),a=Object.freeze({set:i.Set,for:i.For,in:i.In,is:i.Is,if:i.If,else:i.Else,endset:i.EndSet,endif:i.EndIf,elif:i.ElseIf,endfor:i.EndFor,and:i.And,or:i.Or,not:i.Not,"not in":i.NotIn,macro:i.Macro,endmacro:i.EndMacro,break:i.Break,continue:i.Continue,true:i.BooleanLiteral,false:i.BooleanLiteral,none:i.NullLiteral,True:i.BooleanLiteral,False:i.BooleanLiteral,None:i.NullLiteral}),o=class{constructor(e,t){this.value=e,this.type=t}};function s(e){return/\w/.test(e)}function c(e){return/[0-9]/.test(e)}var l=[[`{%`,i.OpenStatement],[`%}`,i.CloseStatement],[`{{`,i.OpenExpression],[`}}`,i.CloseExpression],[`(`,i.OpenParen],[`)`,i.CloseParen],[`{`,i.OpenCurlyBracket],[`}`,i.CloseCurlyBracket],[`[`,i.OpenSquareBracket],[`]`,i.CloseSquareBracket],[`,`,i.Comma],[`.`,i.Dot],[`:`,i.Colon],[`|`,i.Pipe],[`<=`,i.ComparisonBinaryOperator],[`>=`,i.ComparisonBinaryOperator],[`==`,i.ComparisonBinaryOperator],[`!=`,i.ComparisonBinaryOperator],[`<`,i.ComparisonBinaryOperator],[`>`,i.ComparisonBinaryOperator],[`+`,i.AdditiveBinaryOperator],[`-`,i.AdditiveBinaryOperator],[`*`,i.MultiplicativeBinaryOperator],[`/`,i.MultiplicativeBinaryOperator],[`%`,i.MultiplicativeBinaryOperator],[`=`,i.Equals]],u=new Map([[`n`,` -`],[`t`,` `],[`r`,`\r`],[`b`,`\b`],[`f`,`\f`],[`v`,`\v`],[`'`,`'`],[`"`,`"`],[`\\`,`\\`]]);function d(e,t={}){return e.endsWith(` -`)&&(e=e.slice(0,-1)),e=e.replace(/{#.*?#}/gs,`{##}`),t.lstrip_blocks&&(e=e.replace(/^[ \t]*({[#%])/gm,`$1`)),t.trim_blocks&&(e=e.replace(/([#%]})\n/g,`$1`)),e.replace(/{##}/g,``).replace(/-%}\s*/g,`%}`).replace(/\s*{%-/g,`{%`).replace(/-}}\s*/g,`}}`).replace(/\s*{{-/g,`{{`)}function f(e,t={}){let n=[],r=d(e,t),f=0,p=e=>{let t=``;for(;e(r[f]);){if(r[f]===`\\`){if(++f,f>=r.length)throw SyntaxError(`Unexpected end of input`);let e=r[f++],n=u.get(e);if(n===void 0)throw SyntaxError(`Unexpected escaped character: ${e}`);t+=n;continue}if(t+=r[f++],f>=r.length)throw SyntaxError(`Unexpected end of input`)}return t};main:for(;f0){n.push(new o(e,i.Text));continue}}p(e=>/\s/.test(e));let t=r[f];if(t===`-`||t===`+`){var h;let e=(h=n.at(-1))?.type;if(e===i.Text||e===void 0)throw SyntaxError(`Unexpected character: ${t}`);switch(e){case i.Identifier:case i.NumericLiteral:case i.BooleanLiteral:case i.NullLiteral:case i.StringLiteral:case i.CloseParen:case i.CloseSquareBracket:break;default:{++f;let e=p(c);n.push(new o(`${t}${e}`,e.length>0?i.NumericLiteral:i.UnaryOperator));continue}}}for(let[e,t]of l){let i=r.slice(f,f+e.length);if(i===e){n.push(new o(e,t)),f+=e.length;continue main}}if(t===`'`||t===`"`){++f;let e=p(e=>e!==t);n.push(new o(e,i.StringLiteral)),++f;continue}if(c(t)){let e=p(c);n.push(new o(e,i.NumericLiteral));continue}if(s(t)){var g;let e=p(s),t=Object.hasOwn(a,e)?a[e]:i.Identifier;t===i.In&&(g=n.at(-1))?.type===i.Not?(n.pop(),n.push(new o(`not in`,i.NotIn))):n.push(new o(e,t));continue}throw SyntaxError(`Unexpected character: ${t}`)}return n}var p=class{constructor(){e.defineProperty(this,`type`,`Statement`)}},m=class extends p{constructor(t){super(),e.defineProperty(this,`type`,`Program`),this.body=t}},h=class extends p{constructor(t,n,r){super(),e.defineProperty(this,`type`,`If`),this.test=t,this.body=n,this.alternate=r}},g=class extends p{constructor(t,n,r,i){super(),e.defineProperty(this,`type`,`For`),this.loopvar=t,this.iterable=n,this.body=r,this.defaultBlock=i}},_=class extends p{constructor(...t){super(...t),e.defineProperty(this,`type`,`Break`)}},v=class extends p{constructor(...t){super(...t),e.defineProperty(this,`type`,`Continue`)}},y=class extends p{constructor(t,n,r){super(),e.defineProperty(this,`type`,`Set`),this.assignee=t,this.value=n,this.body=r}},b=class extends p{constructor(t,n,r){super(),e.defineProperty(this,`type`,`Macro`),this.name=t,this.args=n,this.body=r}},x=class extends p{constructor(...t){super(...t),e.defineProperty(this,`type`,`Expression`)}},S=class extends x{constructor(t,n,r){super(),e.defineProperty(this,`type`,`MemberExpression`),this.object=t,this.property=n,this.computed=r}},C=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`CallExpression`),this.callee=t,this.args=n}},w=class extends x{constructor(t){super(),e.defineProperty(this,`type`,`Identifier`),this.value=t}},T=class extends x{constructor(t){super(),e.defineProperty(this,`type`,`Literal`),this.value=t}},E=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`NumericLiteral`)}},D=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`StringLiteral`)}},O=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`BooleanLiteral`)}},ee=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`NullLiteral`)}},k=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`ArrayLiteral`)}},te=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`TupleLiteral`)}},ne=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`ObjectLiteral`)}},re=class extends x{constructor(t,n,r){super(),e.defineProperty(this,`type`,`BinaryExpression`),this.operator=t,this.left=n,this.right=r}},ie=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`FilterExpression`),this.operand=t,this.filter=n}},A=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`SelectExpression`),this.iterable=t,this.test=n}},ae=class extends x{constructor(t,n,r){super(),e.defineProperty(this,`type`,`TestExpression`),this.operand=t,this.negate=n,this.test=r}},oe=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`UnaryExpression`),this.operator=t,this.argument=n}},se=class extends x{constructor(t=void 0,n=void 0,r=void 0){super(),e.defineProperty(this,`type`,`SliceExpression`),this.start=t,this.stop=n,this.step=r}},ce=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`KeywordArgumentExpression`),this.key=t,this.value=n}};function le(e){let t=new m([]),n=0;function r(t,r){let i=e[n++];if(!i||i.type!==t)throw Error(`Parser Error: ${r}. ${i.type} !== ${t}.`);return i}function a(){switch(e[n].type){case i.Text:return c();case i.OpenStatement:return l();case i.OpenExpression:return u();default:throw SyntaxError(`Unexpected token type: ${e[n].type}`)}}function o(...t){return n+t.length<=e.length&&t.some((t,r)=>t!==e[n+r].type)}function s(...t){return n+t.length<=e.length&&t.every((t,r)=>t===e[n+r].type)}function c(){return new D(r(i.Text,`Expected text token`).value)}function l(){r(i.OpenStatement,`Expected opening statement token`);let t;switch(e[n].type){case i.Set:++n,t=d(),r(i.CloseStatement,`Expected closing statement token`);break;case i.If:++n,t=f(),r(i.OpenStatement,`Expected {% token`),r(i.EndIf,`Expected endif token`),r(i.CloseStatement,`Expected %} token`);break;case i.Macro:++n,t=p(),r(i.OpenStatement,`Expected {% token`),r(i.EndMacro,`Expected endmacro token`),r(i.CloseStatement,`Expected %} token`);break;case i.For:++n,t=T(),r(i.OpenStatement,`Expected {% token`),r(i.EndFor,`Expected endfor token`),r(i.CloseStatement,`Expected %} token`);break;case i.Break:++n,r(i.CloseStatement,`Expected closing statement token`),t=new _;break;case i.Continue:++n,r(i.CloseStatement,`Expected closing statement token`),t=new v;break;default:throw SyntaxError(`Unknown statement type: ${e[n].type}`)}return t}function u(){r(i.OpenExpression,`Expected opening expression token`);let e=le();return r(i.CloseExpression,`Expected closing expression token`),e}function d(){let t=le();if(s(i.Equals)){++n;let e=le();return new y(t,e,[])}else{var o,c;let s=[];for(r(i.CloseStatement,`Expected %} token`);!((o=e[n])?.type===i.OpenStatement&&(c=e[n+1])?.type===i.EndSet);){let e=a();s.push(e)}return r(i.OpenStatement,`Expected {% token`),r(i.EndSet,`Expected endset token`),new y(t,null,s)}}function f(){var t,o,c,l,u,d;let p=le();r(i.CloseStatement,`Expected closing statement token`);let m=[],g=[];for(;!((t=e[n])?.type===i.OpenStatement&&((o=e[n+1])?.type===i.ElseIf||(c=e[n+1])?.type===i.Else||(l=e[n+1])?.type===i.EndIf));)m.push(a());if((u=e[n])?.type===i.OpenStatement&&(d=e[n+1])?.type!==i.EndIf)if(++n,s(i.ElseIf))r(i.ElseIf,`Expected elseif token`),g.push(f());else{var _,v;for(r(i.Else,`Expected else token`),r(i.CloseStatement,`Expected closing statement token`);!((_=e[n])?.type===i.OpenStatement&&(v=e[n+1])?.type===i.EndIf);)g.push(a())}return new h(p,m,g)}function p(){let e=ve();if(e.type!==`Identifier`)throw SyntaxError(`Expected identifier following macro statement`);let t=I();r(i.CloseStatement,`Expected closing statement token`);let n=[];for(;o(i.OpenStatement,i.EndMacro);)n.push(a());return new b(e,t,n)}function x(e=!1){let t=e?ve:le,r=[t()],a=s(i.Comma);for(;a&&(++n,r.push(t()),s(i.Comma)););return a?new te(r):r[0]}function T(){let e=x(!0);if(!(e instanceof w||e instanceof te))throw SyntaxError(`Expected identifier/tuple for the loop variable, got ${e.type} instead`);r(i.In,"Expected `in` keyword following loop variable");let t=le();r(i.CloseStatement,`Expected closing statement token`);let c=[];for(;o(i.OpenStatement,i.EndFor)&&o(i.OpenStatement,i.Else);)c.push(a());let l=[];if(s(i.OpenStatement,i.Else))for(++n,++n,r(i.CloseStatement,`Expected closing statement token`);o(i.OpenStatement,i.EndFor);)l.push(a());return new g(e,t,c,l)}function le(){return j()}function j(){let e=M();if(s(i.If)){++n;let t=M();if(s(i.Else)){++n;let r=M();return new h(t,[e],[r])}else return new A(e,t)}return e}function M(){let t=N();for(;s(i.Or);){let r=e[n];++n;let i=N();t=new re(r,t,i)}return t}function N(){let t=ue();for(;s(i.And);){let r=e[n];++n;let i=ue();t=new re(r,t,i)}return t}function ue(){let t;for(;s(i.Not);){let r=e[n];++n;let i=ue();t=new oe(r,i)}return t??de()}function de(){let t=fe();for(;s(i.ComparisonBinaryOperator)||s(i.In)||s(i.NotIn);){let r=e[n];++n;let i=fe();t=new re(r,t,i)}return t}function fe(){let t=he();for(;s(i.AdditiveBinaryOperator);){let r=e[n];++n;let i=he();t=new re(r,t,i)}return t}function P(){let e=me(ve());return s(i.OpenParen)?F(e):e}function F(e){let t=new C(e,I());return t=me(t),s(i.OpenParen)&&(t=F(t)),t}function I(){r(i.OpenParen,`Expected opening parenthesis for arguments list`);let e=L();return r(i.CloseParen,`Expected closing parenthesis for arguments list`),e}function L(){let e=[];for(;!s(i.CloseParen);){let t=le();if(s(i.Equals)){if(++n,!(t instanceof w))throw SyntaxError(`Expected identifier for keyword argument`);let e=le();t=new ce(t,e)}e.push(t),s(i.Comma)&&++n}return e}function pe(){let e=[],t=!1;for(;!s(i.CloseSquareBracket);)s(i.Colon)?(e.push(void 0),++n,t=!0):(e.push(le()),s(i.Colon)&&(++n,t=!0));if(e.length===0)throw SyntaxError(`Expected at least one argument for member/slice expression`);if(t){if(e.length>3)throw SyntaxError(`Expected 0-3 arguments for slice expression`);return new se(...e)}return e[0]}function me(t){for(;s(i.Dot)||s(i.OpenSquareBracket);){let a=e[n];++n;let o,s=a.type!==i.Dot;if(s)o=pe(),r(i.CloseSquareBracket,`Expected closing square bracket`);else if(o=ve(),o.type!==`Identifier`)throw SyntaxError(`Expected identifier following dot operator`);t=new S(t,o,s)}return t}function he(){let t=ge();for(;s(i.MultiplicativeBinaryOperator);){let r=e[n];++n;let i=ge();t=new re(r,t,i)}return t}function ge(){let e=_e();for(;s(i.Is);){++n;let t=s(i.Not);t&&++n;let r=ve();if(r instanceof O?r=new w(r.value.toString()):r instanceof ee&&(r=new w(`none`)),!(r instanceof w))throw SyntaxError(`Expected identifier for the test`);e=new ae(e,t,r)}return e}function _e(){let e=P();for(;s(i.Pipe);){++n;let t=ve();if(!(t instanceof w))throw SyntaxError(`Expected identifier for the filter`);s(i.OpenParen)&&(t=F(t)),e=new ie(e,t)}return e}function ve(){let t=e[n];switch(t.type){case i.NumericLiteral:return++n,new E(Number(t.value));case i.StringLiteral:return++n,new D(t.value);case i.BooleanLiteral:return++n,new O(t.value.toLowerCase()===`true`);case i.NullLiteral:return++n,new ee(null);case i.Identifier:return++n,new w(t.value);case i.OpenParen:{++n;let t=x();if(e[n].type!==i.CloseParen)throw SyntaxError(`Expected closing parenthesis, got ${e[n].type} instead`);return++n,t}case i.OpenSquareBracket:{++n;let e=[];for(;!s(i.CloseSquareBracket);)e.push(le()),s(i.Comma)&&++n;return++n,new k(e)}case i.OpenCurlyBracket:{++n;let e=new Map;for(;!s(i.CloseCurlyBracket);){let t=le();r(i.Colon,`Expected colon between key and value in object literal`);let a=le();e.set(t,a),s(i.Comma)&&++n}return++n,new ne(e)}default:throw SyntaxError(`Unexpected token: ${t.type}`)}}for(;n=0?(t=(t??=0)<0?Math.max(e.length+t,0):Math.min(t,e.length),n=(n??=e.length)<0?Math.max(e.length+n,0):Math.min(n,e.length)):(t=(t??=e.length-1)<0?Math.max(e.length+t,-1):Math.min(t,e.length-1),n=(n??=-1)<-1?Math.max(e.length+n,-1):Math.min(n,e.length-1));let a=[];for(let o=t;i*oe.toUpperCase())}var ue=class extends Error{},de=class extends Error{},fe=class{constructor(t=void 0){e.defineProperty(this,`type`,`RuntimeValue`),e.defineProperty(this,`value`,void 0),e.defineProperty(this,`builtins`,new Map),this.value=t}__bool__(){return new I(!!this.value)}},P=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`NumericValue`)}},F=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`StringValue`),e.defineProperty(this,`builtins`,new Map([[`upper`,new ge(()=>new F(this.value.toUpperCase()))],[`lower`,new ge(()=>new F(this.value.toLowerCase()))],[`strip`,new ge(()=>new F(this.value.trim()))],[`title`,new ge(()=>new F(N(this.value)))],[`length`,new P(this.value.length)],[`rstrip`,new ge(()=>new F(this.value.trimEnd()))],[`lstrip`,new ge(()=>new F(this.value.trimStart()))],[`startswith`,new ge(e=>{if(e.length===0)throw Error(`startswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`startswith() argument must be a string`);return new I(this.value.startsWith(t.value))})],[`endswith`,new ge(e=>{if(e.length===0)throw Error(`endswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`endswith() argument must be a string`);return new I(this.value.endsWith(t.value))})],[`split`,new ge(e=>{let t=e[0]??new _e;if(!(t instanceof F||t instanceof _e))throw Error(`sep argument must be a string or null`);let n=e[1]??new P(-1);if(!(n instanceof P))throw Error(`maxsplit argument must be a number`);let r=[];if(t instanceof _e){let e=this.value.trimStart();for(let{0:t,index:i}of e.matchAll(/\S+/g)){if(n.value!==-1&&r.length>=n.value&&i!==void 0){r.push(t+e.slice(i+t.length));break}r.push(t)}}else{if(t.value===``)throw Error(`empty separator`);r=this.value.split(t.value),n.value!==-1&&r.length>n.value&&r.push(r.splice(n.value).join(t.value))}return new me(r.map(e=>new F(e)))})]]))}},I=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`BooleanValue`)}},L=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`ObjectValue`),e.defineProperty(this,`builtins`,new Map([[`get`,new ge(([e,t])=>{if(!(e instanceof F))throw Error(`Object key must be a string: got ${e.type}`);return this.value.get(e.value)??t??new _e})],[`items`,new ge(()=>new me(Array.from(this.value.entries()).map(([e,t])=>new me([new F(e),t]))))]]))}__bool__(){return new I(this.value.size>0)}},pe=class extends L{constructor(...t){super(...t),e.defineProperty(this,`type`,`KeywordArgumentsValue`)}},me=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`ArrayValue`),e.defineProperty(this,`builtins`,new Map([[`length`,new P(this.value.length)]]))}__bool__(){return new I(this.value.length>0)}},he=class extends me{constructor(...t){super(...t),e.defineProperty(this,`type`,`TupleValue`)}},ge=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`FunctionValue`)}},_e=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`NullValue`)}},ve=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`UndefinedValue`)}},R=class{constructor(t){e.defineProperty(this,`variables`,new Map([[`namespace`,new ge(e=>{if(e.length===0)return new L(new Map);if(e.length!==1||!(e[0]instanceof L))throw Error("`namespace` expects either zero arguments or a single object argument");return e[0]})]])),e.defineProperty(this,`tests`,new Map([[`boolean`,e=>e.type===`BooleanValue`],[`callable`,e=>e instanceof ge],[`odd`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "odd" to type: ${e.type}`);return e.value%2!=0}],[`even`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "even" to type: ${e.type}`);return e.value%2==0}],[`false`,e=>e.type===`BooleanValue`&&!e.value],[`true`,e=>e.type===`BooleanValue`&&e.value],[`none`,e=>e.type===`NullValue`],[`string`,e=>e.type===`StringValue`],[`number`,e=>e.type===`NumericValue`],[`integer`,e=>e.type===`NumericValue`&&Number.isInteger(e.value)],[`iterable`,e=>e.type===`ArrayValue`||e.type===`StringValue`],[`mapping`,e=>e.type===`ObjectValue`],[`lower`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toLowerCase()}],[`upper`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toUpperCase()}],[`none`,e=>e.type===`NullValue`],[`defined`,e=>e.type!==`UndefinedValue`],[`undefined`,e=>e.type===`UndefinedValue`],[`equalto`,(e,t)=>e.value===t.value],[`eq`,(e,t)=>e.value===t.value]])),this.parent=t}set(e,t){return this.declareVariable(e,be(t))}declareVariable(e,t){if(this.variables.has(e))throw SyntaxError(`Variable already declared: ${e}`);return this.variables.set(e,t),t}setVariable(e,t){return this.variables.set(e,t),t}resolve(e){if(this.variables.has(e))return this;if(this.parent)return this.parent.resolve(e);throw Error(`Unknown variable: ${e}`)}lookupVariable(e){try{return this.resolve(e).variables.get(e)??new ve}catch{return new ve}}},ye=class{constructor(t){e.defineProperty(this,`global`,void 0),this.global=t??new R}run(e){return this.evaluate(e,this.global)}evaluateBinaryExpression(e,t){let n=this.evaluate(e.left,t);switch(e.operator.value){case`and`:return n.__bool__().value?this.evaluate(e.right,t):n;case`or`:return n.__bool__().value?n:this.evaluate(e.right,t)}let r=this.evaluate(e.right,t);switch(e.operator.value){case`==`:return new I(n.value==r.value);case`!=`:return new I(n.value!=r.value)}if(n instanceof ve||r instanceof ve)throw Error(`Cannot perform operation on undefined values`);if(n instanceof _e||r instanceof _e)throw Error(`Cannot perform operation on null values`);if(n instanceof P&&r instanceof P)switch(e.operator.value){case`+`:return new P(n.value+r.value);case`-`:return new P(n.value-r.value);case`*`:return new P(n.value*r.value);case`/`:return new P(n.value/r.value);case`%`:return new P(n.value%r.value);case`<`:return new I(n.value`:return new I(n.value>r.value);case`>=`:return new I(n.value>=r.value);case`<=`:return new I(n.value<=r.value)}else if(n instanceof me&&r instanceof me)switch(e.operator.value){case`+`:return new me(n.value.concat(r.value))}else if(r instanceof me){let t=r.value.find(e=>e.value===n.value)!==void 0;switch(e.operator.value){case`in`:return new I(t);case`not in`:return new I(!t)}}if(n instanceof F||r instanceof F)switch(e.operator.value){case`+`:return new F(n.value.toString()+r.value.toString())}if(n instanceof F&&r instanceof F)switch(e.operator.value){case`in`:return new I(r.value.includes(n.value));case`not in`:return new I(!r.value.includes(n.value))}if(n instanceof F&&r instanceof L)switch(e.operator.value){case`in`:return new I(r.value.has(n.value));case`not in`:return new I(!r.value.has(n.value))}throw SyntaxError(`Unknown operator "${e.operator.value}" between ${n.type} and ${r.type}`)}evaluateArguments(e,t){let n=[],r=new Map;for(let i of e)if(i.type===`KeywordArgumentExpression`){let e=i;r.set(e.key.value,this.evaluate(e.value,t))}else{if(r.size>0)throw Error(`Positional arguments must come before keyword arguments`);n.push(this.evaluate(i,t))}return[n,r]}evaluateFilterExpression(e,t){let n=this.evaluate(e.operand,t);if(e.filter.type===`Identifier`){let t=e.filter;if(t.value===`tojson`)return new F(xe(n));if(n instanceof me)switch(t.value){case`list`:return n;case`first`:return n.value[0];case`last`:return n.value[n.value.length-1];case`length`:return new P(n.value.length);case`reverse`:return new me(n.value.reverse());case`sort`:return new me(n.value.sort((e,t)=>{if(e.type!==t.type)throw Error(`Cannot compare different types: ${e.type} and ${t.type}`);switch(e.type){case`NumericValue`:return e.value-t.value;case`StringValue`:return e.value.localeCompare(t.value);default:throw Error(`Cannot compare type: ${e.type}`)}}));case`join`:return new F(n.value.map(e=>e.value).join(``));case`string`:return new F(xe(n));default:throw Error(`Unknown ArrayValue filter: ${t.value}`)}else if(n instanceof F)switch(t.value){case`length`:return new P(n.value.length);case`upper`:return new F(n.value.toUpperCase());case`lower`:return new F(n.value.toLowerCase());case`title`:return new F(N(n.value));case`capitalize`:return new F(n.value.charAt(0).toUpperCase()+n.value.slice(1));case`trim`:return new F(n.value.trim());case`indent`:return new F(n.value.split(` -`).map((e,t)=>t===0||e.length===0?e:` `+e).join(` -`));case`join`:case`string`:return n;default:throw Error(`Unknown StringValue filter: ${t.value}`)}else if(n instanceof P)switch(t.value){case`abs`:return new P(Math.abs(n.value));default:throw Error(`Unknown NumericValue filter: ${t.value}`)}else if(n instanceof L)switch(t.value){case`items`:return new me(Array.from(n.value.entries()).map(([e,t])=>new me([new F(e),t])));case`length`:return new P(n.value.size);default:throw Error(`Unknown ObjectValue filter: ${t.value}`)}throw Error(`Cannot apply filter "${t.value}" to type: ${n.type}`)}else if(e.filter.type===`CallExpression`){let r=e.filter;if(r.callee.type!==`Identifier`)throw Error(`Unknown filter: ${r.callee.type}`);let i=r.callee.value;if(i===`tojson`){let[,e]=this.evaluateArguments(r.args,t),i=e.get(`indent`)??new _e;if(!(i instanceof P||i instanceof _e))throw Error(`If set, indent must be a number`);return new F(xe(n,i.value))}else if(i===`join`){let e;if(n instanceof F)e=Array.from(n.value);else if(n instanceof me)e=n.value.map(e=>e.value);else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`);let[a,o]=this.evaluateArguments(r.args,t),s=a.at(0)??o.get(`separator`)??new F(``);if(!(s instanceof F))throw Error(`separator must be a string`);return new F(e.join(s.value))}if(n instanceof me){switch(i){case`selectattr`:case`rejectattr`:{let e=i===`selectattr`;if(n.value.some(e=>!(e instanceof L)))throw Error(`\`${i}\` can only be applied to array of objects`);if(r.args.some(e=>e.type!==`StringLiteral`))throw Error(`arguments of \`${i}\` must be strings`);let[a,o,s]=r.args.map(e=>this.evaluate(e,t)),c;if(o){let e=t.tests.get(o.value);if(!e)throw Error(`Unknown test: ${o.value}`);c=e}else c=(...e)=>e[0].__bool__().value;let l=n.value.filter(t=>{let n=t.value.get(a.value),r=n?c(n,s):!1;return e?r:!r});return new me(l)}case`map`:{let[,e]=this.evaluateArguments(r.args,t);if(e.has(`attribute`)){let t=e.get(`attribute`);if(!(t instanceof F))throw Error(`attribute must be a string`);let r=e.get(`default`),i=n.value.map(e=>{if(!(e instanceof L))throw Error(`items in map must be an object`);return e.value.get(t.value)??r??new ve});return new me(i)}else throw Error("`map` expressions without `attribute` set are not currently supported.")}}throw Error(`Unknown ArrayValue filter: ${i}`)}else if(n instanceof F){switch(i){case`indent`:{let[e,i]=this.evaluateArguments(r.args,t),a=e.at(0)??i.get(`width`)??new P(4);if(!(a instanceof P))throw Error(`width must be a number`);let o=e.at(1)??i.get(`first`)??new I(!1),s=e.at(2)??i.get(`blank`)??new I(!1),c=n.value.split(` -`),l=` `.repeat(a.value),u=c.map((e,t)=>!o.value&&t===0||!s.value&&e.length===0?e:l+e);return new F(u.join(` -`))}}throw Error(`Unknown StringValue filter: ${i}`)}else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`)}throw Error(`Unknown filter: ${e.filter.type}`)}evaluateTestExpression(e,t){let n=this.evaluate(e.operand,t),r=t.tests.get(e.test.value);if(!r)throw Error(`Unknown test: ${e.test.value}`);let i=r(n);return new I(e.negate?!i:i)}evaluateUnaryExpression(e,t){let n=this.evaluate(e.argument,t);switch(e.operator.value){case`not`:return new I(!n.value);default:throw SyntaxError(`Unknown operator: ${e.operator.value}`)}}evalProgram(e,t){return this.evaluateBlock(e.body,t)}evaluateBlock(e,t){let n=``;for(let r of e){let e=this.evaluate(r,t);e.type!==`NullValue`&&e.type!==`UndefinedValue`&&(n+=e.value)}return new F(n)}evaluateIdentifier(e,t){return t.lookupVariable(e.value)}evaluateCallExpression(e,t){let[n,r]=this.evaluateArguments(e.args,t);r.size>0&&n.push(new pe(r));let i=this.evaluate(e.callee,t);if(i.type!==`FunctionValue`)throw Error(`Cannot call something that is not a function: got ${i.type}`);return i.value(n,t)}evaluateSliceExpression(e,t,n){if(!(e instanceof me||e instanceof F))throw Error(`Slice object must be an array or string`);let r=this.evaluate(t.start,n),i=this.evaluate(t.stop,n),a=this.evaluate(t.step,n);if(!(r instanceof P||r instanceof ve))throw Error(`Slice start must be numeric or undefined`);if(!(i instanceof P||i instanceof ve))throw Error(`Slice stop must be numeric or undefined`);if(!(a instanceof P||a instanceof ve))throw Error(`Slice step must be numeric or undefined`);return e instanceof me?new me(M(e.value,r.value,i.value,a.value)):new F(M(Array.from(e.value),r.value,i.value,a.value).join(``))}evaluateMemberExpression(e,t){let n=this.evaluate(e.object,t),r;if(e.computed){if(e.property.type===`SliceExpression`)return this.evaluateSliceExpression(n,e.property,t);r=this.evaluate(e.property,t)}else r=new F(e.property.value);let i;if(n instanceof L){if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.value.get(r.value)??n.builtins.get(r.value)}else if(n instanceof me||n instanceof F)if(r instanceof P)i=n.value.at(r.value),n instanceof F&&(i=new F(n.value.at(r.value)));else if(r instanceof F)i=n.builtins.get(r.value);else throw Error(`Cannot access property with non-string/non-number: got ${r.type}`);else{if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.builtins.get(r.value)}return i instanceof fe?i:new ve}evaluateSet(e,t){let n=e.value?this.evaluate(e.value,t):this.evaluateBlock(e.body,t);if(e.assignee.type===`Identifier`){let r=e.assignee.value;t.setVariable(r,n)}else if(e.assignee.type===`MemberExpression`){let r=e.assignee,i=this.evaluate(r.object,t);if(!(i instanceof L))throw Error(`Cannot assign to member of non-object`);if(r.property.type!==`Identifier`)throw Error(`Cannot assign to member with non-identifier property`);i.value.set(r.property.value,n)}else throw Error(`Invalid LHS inside assignment expression: ${JSON.stringify(e.assignee)}`);return new _e}evaluateIf(e,t){let n=this.evaluate(e.test,t);return this.evaluateBlock(n.__bool__().value?e.body:e.alternate,t)}evaluateFor(e,t){let n=new R(t),r,i;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=this.evaluate(t.iterable,n),r=t.test}else i=this.evaluate(e.iterable,n);if(!(i instanceof me))throw Error(`Expected iterable type in for loop: got ${i.type}`);let a=[],o=[];for(let t=0;tt.setVariable(e.loopvar.value,c);else if(e.loopvar.type===`TupleLiteral`){let t=e.loopvar;if(c.type!==`ArrayValue`)throw Error(`Cannot unpack non-iterable type: ${c.type}`);let n=c;if(t.value.length!==n.value.length)throw Error(`Too ${t.value.length>n.value.length?`few`:`many`} items to unpack`);l=e=>{for(let r=0;r0?a[t-1]:new ve],[`nextitem`,t{var r;let i=new R(n);t=t.slice();let a;(r=t.at(-1))?.type===`KeywordArgumentsValue`&&(a=t.pop());for(let n=0;nthis.evaluate(e,t)));case`TupleLiteral`:return new he(e.value.map(e=>this.evaluate(e,t)));case`ObjectLiteral`:{let n=new Map;for(let[r,i]of e.value){let e=this.evaluate(r,t);if(!(e instanceof F))throw Error(`Object keys must be strings: got ${e.type}`);n.set(e.value,this.evaluate(i,t))}return new L(n)}case`Identifier`:return this.evaluateIdentifier(e,t);case`CallExpression`:return this.evaluateCallExpression(e,t);case`MemberExpression`:return this.evaluateMemberExpression(e,t);case`UnaryExpression`:return this.evaluateUnaryExpression(e,t);case`BinaryExpression`:return this.evaluateBinaryExpression(e,t);case`FilterExpression`:return this.evaluateFilterExpression(e,t);case`TestExpression`:return this.evaluateTestExpression(e,t);default:throw SyntaxError(`Unknown node type: ${e.type}`)}}};function be(e){switch(typeof e){case`number`:return new P(e);case`string`:return new F(e);case`boolean`:return new I(e);case`undefined`:return new ve;case`object`:return e===null?new _e:Array.isArray(e)?new me(e.map(be)):new L(new Map(Object.entries(e).map(([e,t])=>[e,be(t)])));case`function`:return new ge((t,n)=>{let r=e(...t.map(e=>e.value))??null;return be(r)});default:throw Error(`Cannot convert to runtime value: ${e}`)}}function xe(e,t,n){let r=n??0;switch(e.type){case`NullValue`:case`UndefinedValue`:return`null`;case`NumericValue`:case`StringValue`:case`BooleanValue`:return JSON.stringify(e.value);case`ArrayValue`:case`ObjectValue`:{let n=t?` `.repeat(t):``,i=` -`+n.repeat(r),a=i+n;if(e.type===`ArrayValue`){let n=e.value.map(e=>xe(e,t,r+1));return t?`[${a}${n.join(`,${a}`)}${i}]`:`[${n.join(`, `)}]`}else{let n=Array.from(e.value.entries()).map(([e,n])=>{let i=`"${e}": ${xe(n,t,r+1)}`;return t?`${a}${i}`:i});return t?`{${n.join(`,`)}${i}}`:`{${n.join(`, `)}}`}}default:throw Error(`Cannot convert to JSON: ${e.type}`)}}var Se=` -`,Ce=`{%- `,we=` -%}`,Te={MultiplicativeBinaryOperator:2,AdditiveBinaryOperator:1,ComparisonBinaryOperator:0};function Ee(e,t=` `){let n=typeof t==`number`?` `.repeat(t):t,r=Oe(e.body,0,n);return r.replace(/\n$/,``)}function De(...e){return Ce+e.join(` `)+we}function Oe(e,t,n){return e.map(e=>ke(e,t,n)).join(Se)}function ke(e,t,n){let r=n.repeat(t);switch(e.type){case`Program`:return Oe(e.body,t,n);case`If`:return Ae(e,t,n);case`For`:return je(e,t,n);case`Set`:return Me(e,t,n);case`Macro`:return Ne(e,t,n);case`Break`:return r+De(`break`);case`Continue`:return r+De(`continue`);default:return r+`{{- `+z(e)+` -}}`}}function Ae(e,t,n){let r=n.repeat(t),i=[],a=e;for(;a&&(i.push({test:a.test,body:a.body}),a.alternate.length===1&&a.alternate[0].type===`If`);)a=a.alternate[0];let o=r+De(`if`,z(i[0].test))+Se+Oe(i[0].body,t+1,n);for(let e=1;e0&&(o+=Se+r+De(`else`)+Se+Oe(a.alternate,t+1,n)),o+=Se+r+De(`endif`),o}function je(e,t,n){let r=n.repeat(t),i=``;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=`${z(t.iterable)} if ${z(t.test)}`}else i=z(e.iterable);let a=r+De(`for`,z(e.loopvar),`in`,i)+Se+Oe(e.body,t+1,n);return e.defaultBlock.length>0&&(a+=Se+r+De(`else`)+Se+Oe(e.defaultBlock,t+1,n)),a+=Se+r+De(`endfor`),a}function Me(e,t,n){let r=n.repeat(t),i=z(e.assignee),a=e.value?z(e.value):``,o=r+De(`set`,`${i}${e.value?` = `+a:``}`);return e.body.length===0?o:o+Se+Oe(e.body,t+1,n)+Se+r+De(`endset`)}function Ne(e,t,n){let r=n.repeat(t),i=e.args.map(z).join(`, `);return r+De(`macro`,`${e.name.value}(${i})`)+Se+Oe(e.body,t+1,n)+Se+r+De(`endmacro`)}function z(e,t=-1){switch(e.type){case`Identifier`:return e.value;case`NullLiteral`:return`none`;case`NumericLiteral`:case`BooleanLiteral`:return`${e.value}`;case`StringLiteral`:return JSON.stringify(e.value);case`BinaryExpression`:{let n=e,r=Te[n.operator.type]??0,i=z(n.left,r),a=z(n.right,r+1),o=`${i} ${n.operator.value} ${a}`;return rz(e,-1)).join(`, `);return`${z(t.callee,-1)}(${n})`}case`MemberExpression`:{let t=e,n=z(t.object,-1);t.object.type!==`Identifier`&&(n=`(${n})`);let r=z(t.property,-1);return!t.computed&&t.property.type!==`Identifier`&&(r=`(${r})`),t.computed?`${n}[${r}]`:`${n}.${r}`}case`FilterExpression`:{let t=e,n=z(t.operand,1/0);return t.filter.type===`CallExpression`?`${n} | ${z(t.filter,-1)}`:`${n} | ${t.filter.value}`}case`SelectExpression`:{let t=e;return`${z(t.iterable,-1)} | select(${z(t.test,-1)})`}case`TestExpression`:{let t=e;return`${z(t.operand,-1)} is${t.negate?` not`:``} ${t.test.value}`}case`ArrayLiteral`:case`TupleLiteral`:{let t=e.value.map(e=>z(e,-1)),n=e.type===`ArrayLiteral`?`[]`:`()`;return`${n[0]}${t.join(`, `)}${n[1]}`}case`ObjectLiteral`:{let t=Array.from(e.value.entries()).map(([e,t])=>`${z(e,-1)}: ${z(t,-1)}`);return`{ ${t.join(`, `)} }`}case`SliceExpression`:{let t=e,n=t.start?z(t.start,-1):``,r=t.stop?z(t.stop,-1):``,i=t.step?`:${z(t.step,-1)}`:``;return`${n}:${r}${i}`}case`KeywordArgumentExpression`:{let t=e;return`${t.key.value}=${z(t.value,-1)}`}case`If`:{let t=e,n=z(t.test,-1),r=z(t.body[0],0),i=z(t.alternate[0],-1);return`${r} if ${n} else ${i}`}default:throw Error(`Unknown expression type: ${e.type}`)}}var Pe=class{constructor(t){e.defineProperty(this,`parsed`,void 0);let n=f(t,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=le(n)}render(e){let t=new R;if(t.set(`false`,!1),t.set(`true`,!0),t.set(`raise_exception`,e=>{throw Error(e)}),t.set(`range`,j),e)for(let[n,r]of Object.entries(e))t.set(n,r);let n=new ye(t),r=n.run(this.parsed);return r.value}format(e){return Ee(this.parsed,e?.indent||` `)}}},"./src/backends/onnx.js":(e,t,n)=>{var r;n.r(t),n.d(t,{Tensor:()=>s.Tensor,createInferenceSession:()=>g,deviceToExecutionProviders:()=>m,isONNXProxy:()=>y,isONNXTensor:()=>_});var i=n( -/*! ../env.js */ -`./src/env.js`),a=n( -/*! onnxruntime-node */ -`?2ce3`),o=n( -/*! onnxruntime-web */ -`onnxruntime-web`),s=n( -/*! onnxruntime-common */ -`onnxruntime-common`);let c=Object.freeze({auto:null,gpu:null,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:{name:`webnn`,deviceType:`cpu`},"webnn-npu":{name:`webnn`,deviceType:`npu`},"webnn-gpu":{name:`webnn`,deviceType:`gpu`},"webnn-cpu":{name:`webnn`,deviceType:`cpu`}}),l=[],u,d,f=Symbol.for(`onnxruntime`);if(f in globalThis)d=globalThis[f];else if(i.apis.IS_NODE_ENV){switch(d=a??(r||=n.t(a,2)),process.platform){case`win32`:l.push(`dml`);break;case`linux`:process.arch===`x64`&&l.push(`cuda`);break;case`darwin`:break}l.push(`cpu`),u=[`cpu`]}else d=o,i.apis.IS_WEBNN_AVAILABLE&&l.push(`webnn-npu`,`webnn-gpu`,`webnn-cpu`,`webnn`),i.apis.IS_WEBGPU_AVAILABLE&&l.push(`webgpu`),l.push(`wasm`),u=[`wasm`];let p=d.InferenceSession;function m(e=null){if(!e)return u;switch(e){case`auto`:return l;case`gpu`:return l.filter(e=>[`webgpu`,`cuda`,`dml`,`webnn-gpu`].includes(e))}if(l.includes(e))return[c[e]??e];throw Error(`Unsupported device: "${e}". Should be one of: ${l.join(`, `)}.`)}let h=null;async function g(e,t,n){h&&await h;let r=p.create(e,t);h??=r;let i=await r;return i.config=n,i}function _(e){return e instanceof d.Tensor}let v=d?.env;v?.wasm&&(!(typeof ServiceWorkerGlobalScope<`u`&&self instanceof ServiceWorkerGlobalScope)&&!v.wasm.wasmPaths&&(v.wasm.wasmPaths=`https://cdn.jsdelivr.net/npm/@huggingface/transformers@${i.env.version}/dist/`),v.wasm.proxy=!1),v?.webgpu&&(v.webgpu.powerPreference=`high-performance`);function y(){var e;return v==null||(e=v.wasm)==null?void 0:e.proxy}i.env.backends.onnx=v},"./src/base/feature_extraction_utils.js":(e,t,n)=>{n.r(t),n.d(t,{FeatureExtractor:()=>o,validate_audio_inputs:()=>s});var r=n( -/*! ../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),a=n( -/*! ../utils/hub.js */ -`./src/utils/hub.js`);class o extends i.Callable{constructor(e){super(),this.config=e}static async from_pretrained(e,t={}){let n=await(0,a.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t);return new this(n)}}function s(e,t){var n;if(!(e instanceof Float32Array||e instanceof Float64Array))throw Error(`${t} expects input to be a Float32Array or a Float64Array, but got ${(e==null||(n=e.constructor)==null?void 0:n.name)??typeof e} instead. If using the feature extractor directly, remember to use \`read_audio(url, sampling_rate)\` to obtain the raw audio data of the file/url.`)}},"./src/base/image_processors_utils.js":(e,t,n)=>{n.r(t),n.d(t,{ImageProcessor:()=>x,center_to_corners_format:()=>f,post_process_instance_segmentation:()=>b,post_process_object_detection:()=>p,post_process_panoptic_segmentation:()=>y,post_process_semantic_segmentation:()=>m});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),i=n( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../utils/maths.js */ -`./src/utils/maths.js`),o=n( -/*! ../utils/image.js */ -`./src/utils/image.js`),s=n( -/*! ../utils/core.js */ -`./src/utils/core.js`),c=n( -/*! ../utils/hub.js */ -`./src/utils/hub.js`),l=n( -/*! ../utils/constants.js */ -`./src/utils/constants.js`);function u(e,t,n=0,r=null){let i=e/t,o=(0,a.bankers_round)(i)*t;return r!==null&&o>r&&(o=Math.floor(i)*t),ot&&i.push(e)}else{let e=(0,a.max)(n.data)[1];if(e===l-1||(o=(0,a.softmax)(n.data),o[e]e*s[(t+1)%2])),d.boxes.push(n),d.classes.push(t),d.scores.push(o[t])}}u.push(d)}return u}function m(e,t=null){let n=e.logits,r=n.dims[0];if(t!==null&&t.length!==r)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let a=[];for(let e=0;eu[n]&&(u[n]=t[n],d[n]=e)}let f=Array(o.dims[0]);for(let e=0;ee!==void 0);a.push({segmentation:l,labels:p})}return a}function h(e,t,n,r){let i=[],o=[],s=[];for(let c=0;cn&&(i.push(u),o.push(p),s.push(d))}return[i,o,s]}function g(e,t,n,r=.5,i=.8){let a=[],o=0,s=0,c=t[n].data;for(let t=0;t=r&&++s;let l=o>0&&s>0;if(l){let e=o/s;l=e>i}return[l,a]}function _(e,t,n,r,a,o=null,s=null){let[c,l]=s??e[0].dims,u=new i.Tensor(`int32`,new Int32Array(c*l),[c,l]),d=[];if(s!==null)for(let t=0;tp[e]&&(f[e]=n,p[e]=i[e])}let m=0,h=u.data;for(let i=0;i200)throw Error(`absolute aspect ratio must be smaller than 200, got ${Math.max(e,t)/Math.min(e,t)}`);let a=Math.round(e/n)*n,o=Math.round(t/n)*n;if(a*o>i){let r=Math.sqrt(e*t/i);a=Math.floor(e/r/n)*n,o=Math.floor(t/r/n)*n}else if(a*oi?c=Math.floor(i*s/r):i>r&&(s=Math.floor(r*c/i)),await e.resize(c,s,{resample:n}))}async crop_margin(e,t=200){let n=e.clone().grayscale(),r=(0,a.min)(n.data)[0],i=(0,a.max)(n.data)[0],o=i-r;if(o===0)return e;let s=t/255,c=n.width,l=n.height,u=0,d=0,f=n.data;for(let e=0;ethis.preprocess(e))),r=(0,i.stack)(n.map(e=>e.pixel_values),0);return{pixel_values:r,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}static async from_pretrained(e,t={}){let n=await(0,c.getModelJSON)(e,l.IMAGE_PROCESSOR_NAME,!0,t);return new this(n)}}},"./src/base/processing_utils.js":(t,n,r)=>{r.r(n),r.d(n,{Processor:()=>s});var i=r( -/*! ../utils/constants.js */ -`./src/utils/constants.js`),a=r( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),o=r( -/*! ../utils/hub.js */ -`./src/utils/hub.js`);class s extends a.Callable{constructor(e,t,n){super(),this.config=e,this.components=t,this.chat_template=n}get image_processor(){return this.components.image_processor}get tokenizer(){return this.components.tokenizer}get feature_extractor(){return this.components.feature_extractor}apply_chat_template(e,t={}){if(!this.tokenizer)throw Error(`Unable to apply chat template without a tokenizer.`);return this.tokenizer.apply_chat_template(e,{tokenize:!1,chat_template:this.chat_template??void 0,...t})}batch_decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.batch_decode(...e)}decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.decode(...e)}async _call(e,...t){for(let n of[this.image_processor,this.feature_extractor,this.tokenizer])if(n)return n(e,...t);throw Error(`No image processor, feature extractor, or tokenizer found.`)}static async from_pretrained(e,t={}){let[n,r,a]=await Promise.all([this.uses_processor_config?(0,o.getModelJSON)(e,i.PROCESSOR_NAME,!0,t):{},Promise.all(this.classes.filter(e=>e in this).map(async n=>{let r=await this[n].from_pretrained(e,t);return[n.replace(/_class$/,``),r]})).then(Object.fromEntries),this.uses_chat_template_file?(0,o.getModelText)(e,i.CHAT_TEMPLATE_NAME,!0,t):null]);return new this(n,r,a)}}e.defineProperty(s,`classes`,[`image_processor_class`,`tokenizer_class`,`feature_extractor_class`]),e.defineProperty(s,`uses_processor_config`,!1),e.defineProperty(s,`uses_chat_template_file`,!1)},"./src/configs.js":(t,n,r)=>{r.r(n),r.d(n,{AutoConfig:()=>u,PretrainedConfig:()=>l,getKeyValueShapes:()=>c});var i=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),a=r( -/*! ./utils/hub.js */ -`./src/utils/hub.js`);async function o(e,t){return await(0,a.getModelJSON)(e,`config.json`,!0,t)}function s(e){let t={},n={};switch(e.model_type){case`llava`:case`paligemma`:case`gemma3`:case`florence2`:case`llava_onevision`:case`idefics3`:case`ultravox`:case`smolvlm`:case`gemma3n`:n=s(e.text_config);break;case`moondream1`:n=s(e.phi_config);break;case`musicgen`:n=s(e.decoder);break;case`multi_modality`:n=s(e.language_config);break;case`gpt2`:case`gptj`:case`jais`:case`codegen`:case`gpt_bigcode`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`n_embd`;break;case`gpt_neox`:case`stablelm`:case`opt`:case`falcon`:t.num_heads=`num_attention_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`;break;case`llama`:case`olmo`:case`olmo2`:case`mobilellm`:case`granite`:case`cohere`:case`mistral`:case`starcoder2`:case`qwen2`:case`qwen2_vl`:case`phi`:case`phi3`:case`phi3_v`:case`llava_qwen2`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`,t.num_attention_heads=`num_attention_heads`;break;case`qwen3`:case`gemma`:case`gemma2`:case`gemma3_text`:case`gemma3n_text`:case`glm`:case`helium`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.dim_kv=`head_dim`;break;case`openelm`:t.num_heads=`num_kv_heads`,t.num_layers=`num_transformer_layers`,t.dim_kv=`head_dim`;break;case`gpt_neo`:case`donut-swin`:t.num_heads=`num_heads`,t.num_layers=`num_layers`,t.hidden_size=`hidden_size`;break;case`bloom`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`hidden_size`;break;case`mpt`:t.num_heads=`n_heads`,t.num_layers=`n_layers`,t.hidden_size=`d_model`;break;case`exaone`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_layers`,t.dim_kv=`head_dim`,t.num_attention_heads=`num_attention_heads`;break;case`t5`:case`mt5`:case`longt5`:t.num_decoder_layers=`num_decoder_layers`,t.num_decoder_heads=`num_heads`,t.decoder_dim_kv=`d_kv`,t.num_encoder_layers=`num_layers`,t.num_encoder_heads=`num_heads`,t.encoder_dim_kv=`d_kv`;break;case`bart`:case`mbart`:case`marian`:case`whisper`:case`lite-whisper`:case`m2m_100`:case`blenderbot`:case`blenderbot-small`:case`florence2_language`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`d_model`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`d_model`;break;case`speecht5`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`hidden_size`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`hidden_size`;break;case`trocr`:t.num_encoder_layers=t.num_decoder_layers=`decoder_layers`,t.num_encoder_heads=t.num_decoder_heads=`decoder_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`d_model`;break;case`musicgen_decoder`:t.num_encoder_layers=t.num_decoder_layers=`num_hidden_layers`,t.num_encoder_heads=t.num_decoder_heads=`num_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`moonshine`:t.num_decoder_layers=`decoder_num_hidden_layers`,t.num_decoder_heads=`decoder_num_key_value_heads`,t.num_encoder_layers=`encoder_num_hidden_layers`,t.num_encoder_heads=`encoder_num_key_value_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`vision-encoder-decoder`:let r=s(e.decoder),a=`num_decoder_layers`in r,o=(0,i.pick)(e,[`model_type`,`is_encoder_decoder`]);return a?(o.num_decoder_layers=r.num_decoder_layers,o.num_decoder_heads=r.num_decoder_heads,o.decoder_hidden_size=r.decoder_hidden_size,o.num_encoder_layers=r.num_encoder_layers,o.num_encoder_heads=r.num_encoder_heads,o.encoder_hidden_size=r.encoder_hidden_size):(o.num_layers=r.num_layers,o.num_heads=r.num_heads,o.hidden_size=r.hidden_size),o}let r={...n,...(0,i.pick)(e,[`model_type`,`multi_query`,`is_encoder_decoder`])};for(let n in t)r[n]=e[t[n]];return r}function c(e,{prefix:t=`past_key_values`,batch_size:n=1}={}){let r={},i=e.normalized_config;if(i.is_encoder_decoder&&`num_encoder_heads`in i&&`num_decoder_heads`in i){let e=i.encoder_dim_kv??i.encoder_hidden_size/i.num_encoder_heads,a=i.decoder_dim_kv??i.decoder_hidden_size/i.num_decoder_heads,o=[n,i.num_encoder_heads,0,e],s=[n,i.num_decoder_heads,0,a];for(let e=0;e{var r,i;n.r(t),n.d(t,{apis:()=>b,env:()=>E});var a=n( -/*! node:fs */ -`?db59`),o=n( -/*! node:path */ -`?383f`),s=n( -/*! node:url */ -`?fa4b`);let c=`3.6.1`,l=typeof window<`u`&&window.document!==void 0,u=typeof self<`u`&&[`DedicatedWorkerGlobalScope`,`ServiceWorkerGlobalScope`,`SharedWorkerGlobalScope`].includes((r=self.constructor)?.name),d=typeof self<`u`&&`caches`in self,f=typeof navigator<`u`&&`gpu`in navigator,p=typeof navigator<`u`&&`ml`in navigator,m=typeof process<`u`,h=m&&((i=process)==null||(i=i.release)==null?void 0:i.name)===`node`,g=!D(a),_=!D(o),v=globalThis.Deno!==void 0,y=globalThis.Bun!==void 0,b=Object.freeze({IS_BROWSER_ENV:l,IS_WEBWORKER_ENV:u,IS_WEB_CACHE_AVAILABLE:d,IS_WEBGPU_AVAILABLE:f,IS_WEBNN_AVAILABLE:p,IS_PROCESS_AVAILABLE:m,IS_NODE_ENV:h,IS_FS_AVAILABLE:g,IS_PATH_AVAILABLE:_}),x=g&&_,S=`./`;if(x){let e=Object(import.meta).url;e?S=o.dirname(o.dirname(s.fileURLToPath(e))):typeof __dirname<`u`&&(S=o.dirname(__dirname))}let C=x?o.join(S,`/.cache/`):null,w=`/models/`,T=x?o.join(S,w):w,E={version:c,backends:{onnx:{}},allowRemoteModels:!0,remoteHost:`https://huggingface.co/`,remotePathTemplate:`{model}/resolve/{revision}/`,allowLocalModels:!(l||u),localModelPath:T,useFS:g,useBrowserCache:d&&!v,useFSCache:g,cacheDir:C,useCustomCache:!1,customCache:null};function D(e){return Object.keys(e).length===0}},"./src/generation/configuration_utils.js":(t,n,r)=>{r.r(n),r.d(n,{GenerationConfig:()=>a});var i=r( -/*! ../utils/core.js */ -`./src/utils/core.js`);class a{constructor(t){e.defineProperty(this,`max_length`,20),e.defineProperty(this,`max_new_tokens`,null),e.defineProperty(this,`min_length`,0),e.defineProperty(this,`min_new_tokens`,null),e.defineProperty(this,`early_stopping`,!1),e.defineProperty(this,`max_time`,null),e.defineProperty(this,`do_sample`,!1),e.defineProperty(this,`num_beams`,1),e.defineProperty(this,`num_beam_groups`,1),e.defineProperty(this,`penalty_alpha`,null),e.defineProperty(this,`use_cache`,!0),e.defineProperty(this,`temperature`,1),e.defineProperty(this,`top_k`,50),e.defineProperty(this,`top_p`,1),e.defineProperty(this,`typical_p`,1),e.defineProperty(this,`epsilon_cutoff`,0),e.defineProperty(this,`eta_cutoff`,0),e.defineProperty(this,`diversity_penalty`,0),e.defineProperty(this,`repetition_penalty`,1),e.defineProperty(this,`encoder_repetition_penalty`,1),e.defineProperty(this,`length_penalty`,1),e.defineProperty(this,`no_repeat_ngram_size`,0),e.defineProperty(this,`bad_words_ids`,null),e.defineProperty(this,`force_words_ids`,null),e.defineProperty(this,`renormalize_logits`,!1),e.defineProperty(this,`constraints`,null),e.defineProperty(this,`forced_bos_token_id`,null),e.defineProperty(this,`forced_eos_token_id`,null),e.defineProperty(this,`remove_invalid_values`,!1),e.defineProperty(this,`exponential_decay_length_penalty`,null),e.defineProperty(this,`suppress_tokens`,null),e.defineProperty(this,`streamer`,null),e.defineProperty(this,`begin_suppress_tokens`,null),e.defineProperty(this,`forced_decoder_ids`,null),e.defineProperty(this,`guidance_scale`,null),e.defineProperty(this,`num_return_sequences`,1),e.defineProperty(this,`output_attentions`,!1),e.defineProperty(this,`output_hidden_states`,!1),e.defineProperty(this,`output_scores`,!1),e.defineProperty(this,`return_dict_in_generate`,!1),e.defineProperty(this,`pad_token_id`,null),e.defineProperty(this,`bos_token_id`,null),e.defineProperty(this,`eos_token_id`,null),e.defineProperty(this,`encoder_no_repeat_ngram_size`,0),e.defineProperty(this,`decoder_start_token_id`,null),e.defineProperty(this,`generation_kwargs`,{}),Object.assign(this,(0,i.pick)(t,Object.getOwnPropertyNames(this)))}}},"./src/generation/logits_process.js":(e,t,n)=>{n.r(t),n.d(t,{ClassifierFreeGuidanceLogitsProcessor:()=>v,ForcedBOSTokenLogitsProcessor:()=>l,ForcedEOSTokenLogitsProcessor:()=>u,LogitsProcessor:()=>o,LogitsProcessorList:()=>c,LogitsWarper:()=>s,MinLengthLogitsProcessor:()=>h,MinNewTokensLengthLogitsProcessor:()=>g,NoBadWordsLogitsProcessor:()=>_,NoRepeatNGramLogitsProcessor:()=>p,RepetitionPenaltyLogitsProcessor:()=>m,SuppressTokensAtBeginLogitsProcessor:()=>d,TemperatureLogitsWarper:()=>y,TopKLogitsWarper:()=>x,TopPLogitsWarper:()=>b,WhisperTimeStampLogitsProcessor:()=>f});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),i=n( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../utils/maths.js */ -`./src/utils/maths.js`);class o extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class s extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class c extends r.Callable{constructor(){super(),this.processors=[]}push(e){this.processors.push(e)}extend(e){this.processors.push(...e)}_call(e,t){let n=t;for(let t of this.processors)n=t(e,n);return n}[Symbol.iterator](){return this.processors.values()}}class l extends o{constructor(e){super(),this.bos_token_id=e}_call(e,t){for(let n=0;n=1&&i[i.length-1]>=this.timestamp_begin,s=i.length<2||i[i.length-2]>=this.timestamp_begin;if(o&&(s?r.subarray(this.timestamp_begin).fill(-1/0):r.subarray(0,this.eos_token_id).fill(-1/0)),e[n].length===this.begin_index&&this.max_initial_timestamp_index!==null){let e=this.timestamp_begin+this.max_initial_timestamp_index;r.subarray(e+1).fill(-1/0)}let c=(0,a.log_softmax)(r),l=Math.log(c.subarray(this.timestamp_begin).map(Math.exp).reduce((e,t)=>e+t)),u=(0,a.max)(c.subarray(0,this.timestamp_begin))[0];l>u&&r.subarray(0,this.timestamp_begin).fill(-1/0)}return t}}class p extends o{constructor(e){super(),this.no_repeat_ngram_size=e}getNgrams(e){let t=e.length,n=[];for(let r=0;r1 to use the classifier free guidance processor, got guidance scale ${e}.`);this.guidance_scale=e}_call(e,t){if(t.dims[0]!==2*e.length)throw Error(`Logits should have twice the batch size of the input ids, the first half of batches corresponding to the conditional inputs, and the second half of batches corresponding to the unconditional inputs. Got batch size ${t.dims[0]} for the logits and ${e.length} for the input ids.`);let n=e.length,r=t.slice([0,n],null),i=t.slice([n,t.dims[0]],null);for(let e=0;e1)throw Error(`\`top_p\` must be a float > 0 and < 1, but is ${e}`);if(!Number.isInteger(n)||n<1)throw Error(`\`min_tokens_to_keep\` must be a positive integer, but is ${n}`);this.top_p=e,this.filter_value=t,this.min_tokens_to_keep=n}}class x extends s{constructor(e,{filter_value:t=-1/0,min_tokens_to_keep:n=1}={}){if(super(),!Number.isInteger(e)||e<0)throw Error(`\`top_k\` must be a positive integer, but is ${e}`);this.top_k=Math.max(e,n),this.filter_value=t}}},"./src/generation/logits_sampler.js":(e,t,n)=>{n.r(t),n.d(t,{LogitsSampler:()=>s});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),i=n( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../utils/maths.js */ -`./src/utils/maths.js`),o=n( -/*! ../generation/configuration_utils.js */ -`./src/generation/configuration_utils.js`);class s extends r.Callable{constructor(e){super(),this.generation_config=e}async _call(e){return this.sample(e)}async sample(e){throw Error(`sample should be implemented in subclasses.`)}getLogits(e,t){let n=e.dims.at(-1),r=e.data;if(t===-1)r=r.slice(-n);else{let e=t*n;r=r.slice(e,e+n)}return r}randomSelect(e){let t=0;for(let n=0;n1)return new u(e);if(e.num_return_sequences>1)throw Error(`num_return_sequences has to be 1 when doing greedy search, but is ${e.num_return_sequences}.`);return new c(e)}}class c extends s{async sample(e){let t=(0,a.max)(e.data)[1];return[[BigInt(t),0]]}}class l extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},()=>{let e=this.randomSelect(o);return[r.data[e],Math.log(o[e])]})}}class u extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},(e,t)=>[r.data[t],Math.log(o[t])])}}},"./src/generation/stopping_criteria.js":(e,t,n)=>{n.r(t),n.d(t,{EosTokenCriteria:()=>s,InterruptableStoppingCriteria:()=>c,MaxLengthCriteria:()=>o,StoppingCriteria:()=>i,StoppingCriteriaList:()=>a});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`);class i extends r.Callable{_call(e,t){throw Error(`StoppingCriteria needs to be subclassed`)}}class a extends r.Callable{constructor(){super(),this.criteria=[]}push(e){this.criteria.push(e)}extend(e){e instanceof a?e=e.criteria:e instanceof i&&(e=[e]),this.criteria.push(...e)}_call(e,t){let n=Array(e.length).fill(!1);for(let i of this.criteria){var r;let a=i(e,t);for(let e=0;ee.length>=this.max_length)}}class s extends i{constructor(e){super(),Array.isArray(e)||(e=[e]),this.eos_token_id=e}_call(e,t){return e.map(e=>{let t=e.at(-1);return this.eos_token_id.some(e=>t==e)})}}class c extends i{constructor(){super(),this.interrupted=!1}interrupt(){this.interrupted=!0}reset(){this.interrupted=!1}_call(e,t){return Array(e.length).fill(this.interrupted)}}},"./src/generation/streamers.js":(e,t,n)=>{n.r(t),n.d(t,{BaseStreamer:()=>o,TextStreamer:()=>c,WhisperTextStreamer:()=>l});var r=n( -/*! ../utils/core.js */ -`./src/utils/core.js`),i=n( -/*! ../tokenizers.js */ -`./src/tokenizers.js`),a=n( -/*! ../env.js */ -`./src/env.js`);class o{put(e){throw Error(`Not implemented`)}end(){throw Error(`Not implemented`)}}let s=a.apis.IS_PROCESS_AVAILABLE?e=>process.stdout.write(e):e=>console.log(e);class c extends o{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,skip_special_tokens:i=!0,decode_kwargs:a={},...o}={}){super(),this.tokenizer=e,this.skip_prompt=t,this.callback_function=n??s,this.token_callback_function=r,this.decode_kwargs={skip_special_tokens:i,...a,...o},this.token_cache=[],this.print_len=0,this.next_tokens_are_prompt=!0}put(e){var t;if(e.length>1)throw Error(`TextStreamer only supports batch size of 1`);let n=this.next_tokens_are_prompt;if(n&&(this.next_tokens_are_prompt=!1,this.skip_prompt))return;let a=e[0];(t=this.token_callback_function)?.call(this,a),this.token_cache=(0,r.mergeArrays)(this.token_cache,a);let o=this.tokenizer.decode(this.token_cache,this.decode_kwargs),s;n||o.endsWith(` -`)?(s=o.slice(this.print_len),this.token_cache=[],this.print_len=0):o.length>0&&(0,i.is_chinese_char)(o.charCodeAt(o.length-1))?(s=o.slice(this.print_len),this.print_len+=s.length):(s=o.slice(this.print_len,o.lastIndexOf(` `)+1),this.print_len+=s.length),this.on_finalized_text(s,!1)}end(){let e;if(this.token_cache.length>0){let t=this.tokenizer.decode(this.token_cache,this.decode_kwargs);e=t.slice(this.print_len),this.token_cache=[],this.print_len=0}else e=``;this.next_tokens_are_prompt=!0,this.on_finalized_text(e,!0)}on_finalized_text(e,t){var n,r;e.length>0&&(n=this.callback_function)?.call(this,e),t&&this.callback_function===s&&a.apis.IS_PROCESS_AVAILABLE&&(r=this.callback_function)?.call(this,` -`)}}class l extends c{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,on_chunk_start:i=null,on_chunk_end:a=null,on_finalize:o=null,time_precision:s=.02,skip_special_tokens:c=!0,decode_kwargs:l={}}={}){super(e,{skip_prompt:t,skip_special_tokens:c,callback_function:n,token_callback_function:r,decode_kwargs:l}),this.timestamp_begin=e.timestamp_begin,this.on_chunk_start=i,this.on_chunk_end=a,this.on_finalize=o,this.time_precision=s,this.waiting_for_timestamp=!1}put(e){if(e.length>1)throw Error(`WhisperTextStreamer only supports batch size of 1`);let t=e[0];if(t.length===1){let e=Number(t[0])-this.timestamp_begin;if(e>=0){var n,r,i;let a=e*this.time_precision;this.waiting_for_timestamp?(n=this.on_chunk_end)?.call(this,a):(r=this.on_chunk_start)?.call(this,a),this.waiting_for_timestamp=!this.waiting_for_timestamp,(i=this.token_callback_function)?.call(this,t);return}}return super.put(e)}end(){var e;super.end(),(e=this.on_finalize)?.call(this)}}},"./src/models.js":(t,n,r)=>{r.r(n),r.d(n,{ASTForAudioClassification:()=>Mn,ASTModel:()=>jn,ASTPreTrainedModel:()=>An,AlbertForMaskedLM:()=>Wt,AlbertForQuestionAnswering:()=>Ut,AlbertForSequenceClassification:()=>Ht,AlbertModel:()=>Vt,AlbertPreTrainedModel:()=>Bt,AutoModel:()=>uu,AutoModelForAudioClassification:()=>ku,AutoModelForAudioFrameClassification:()=>ju,AutoModelForAudioTextToText:()=>Bu,AutoModelForCTC:()=>Ou,AutoModelForCausalLM:()=>_u,AutoModelForDepthEstimation:()=>Fu,AutoModelForDocumentQuestionAnswering:()=>Mu,AutoModelForImageClassification:()=>xu,AutoModelForImageFeatureExtraction:()=>Ru,AutoModelForImageMatting:()=>Nu,AutoModelForImageSegmentation:()=>Su,AutoModelForImageTextToText:()=>zu,AutoModelForImageToImage:()=>Pu,AutoModelForMaskGeneration:()=>Du,AutoModelForMaskedLM:()=>vu,AutoModelForNormalEstimation:()=>Iu,AutoModelForObjectDetection:()=>Tu,AutoModelForPoseEstimation:()=>Lu,AutoModelForQuestionAnswering:()=>yu,AutoModelForSemanticSegmentation:()=>Cu,AutoModelForSeq2SeqLM:()=>pu,AutoModelForSequenceClassification:()=>du,AutoModelForSpeechSeq2Seq:()=>mu,AutoModelForTextToSpectrogram:()=>hu,AutoModelForTextToWaveform:()=>gu,AutoModelForTokenClassification:()=>fu,AutoModelForUniversalSegmentation:()=>wu,AutoModelForVision2Seq:()=>bu,AutoModelForXVector:()=>Au,AutoModelForZeroShotObjectDetection:()=>Eu,BartForConditionalGeneration:()=>nn,BartForSequenceClassification:()=>rn,BartModel:()=>tn,BartPretrainedModel:()=>en,BaseModelOutput:()=>me,BeitForImageClassification:()=>Oa,BeitModel:()=>Da,BeitPreTrainedModel:()=>Ea,BertForMaskedLM:()=>_e,BertForQuestionAnswering:()=>ye,BertForSequenceClassification:()=>ve,BertForTokenClassification:()=>R,BertModel:()=>ge,BertPreTrainedModel:()=>he,BlenderbotForConditionalGeneration:()=>dn,BlenderbotModel:()=>un,BlenderbotPreTrainedModel:()=>ln,BlenderbotSmallForConditionalGeneration:()=>H,BlenderbotSmallModel:()=>pn,BlenderbotSmallPreTrainedModel:()=>fn,BloomForCausalLM:()=>Ri,BloomModel:()=>Li,BloomPreTrainedModel:()=>Ii,CLIPModel:()=>rr,CLIPPreTrainedModel:()=>nr,CLIPSegForImageSegmentation:()=>hr,CLIPSegModel:()=>X,CLIPSegPreTrainedModel:()=>mr,CLIPTextModel:()=>ir,CLIPTextModelWithProjection:()=>ar,CLIPVisionModel:()=>K,CLIPVisionModelWithProjection:()=>or,CamembertForMaskedLM:()=>Ze,CamembertForQuestionAnswering:()=>et,CamembertForSequenceClassification:()=>Qe,CamembertForTokenClassification:()=>$e,CamembertModel:()=>Xe,CamembertPreTrainedModel:()=>Ye,CausalLMOutput:()=>Ku,CausalLMOutputWithPast:()=>qu,ChineseCLIPModel:()=>ur,ChineseCLIPPreTrainedModel:()=>lr,ClapAudioModelWithProjection:()=>hc,ClapModel:()=>pc,ClapPreTrainedModel:()=>fc,ClapTextModelWithProjection:()=>mc,CodeGenForCausalLM:()=>Ir,CodeGenModel:()=>Fr,CodeGenPreTrainedModel:()=>Pr,CohereForCausalLM:()=>li,CohereModel:()=>ci,CoherePreTrainedModel:()=>si,ConvBertForMaskedLM:()=>Be,ConvBertForQuestionAnswering:()=>He,ConvBertForSequenceClassification:()=>B,ConvBertForTokenClassification:()=>Ve,ConvBertModel:()=>ze,ConvBertPreTrainedModel:()=>Re,ConvNextForImageClassification:()=>Ho,ConvNextModel:()=>Vo,ConvNextPreTrainedModel:()=>Bo,ConvNextV2ForImageClassification:()=>Go,ConvNextV2Model:()=>Wo,ConvNextV2PreTrainedModel:()=>Uo,DFineForObjectDetection:()=>Ya,DFineModel:()=>Ja,DFinePreTrainedModel:()=>qa,DPTForDepthEstimation:()=>yo,DPTModel:()=>vo,DPTPreTrainedModel:()=>_o,DacDecoderModel:()=>bl,DacDecoderOutput:()=>_l,DacEncoderModel:()=>yl,DacEncoderOutput:()=>gl,DacModel:()=>vl,DacPreTrainedModel:()=>hl,DebertaForMaskedLM:()=>rt,DebertaForQuestionAnswering:()=>ot,DebertaForSequenceClassification:()=>it,DebertaForTokenClassification:()=>at,DebertaModel:()=>nt,DebertaPreTrainedModel:()=>tt,DebertaV2ForMaskedLM:()=>lt,DebertaV2ForQuestionAnswering:()=>ft,DebertaV2ForSequenceClassification:()=>ut,DebertaV2ForTokenClassification:()=>dt,DebertaV2Model:()=>ct,DebertaV2PreTrainedModel:()=>st,DecisionTransformerModel:()=>Yc,DecisionTransformerPreTrainedModel:()=>Jc,DeiTForImageClassification:()=>no,DeiTModel:()=>to,DeiTPreTrainedModel:()=>eo,DepthAnythingForDepthEstimation:()=>xo,DepthAnythingPreTrainedModel:()=>bo,DepthProForDepthEstimation:()=>Do,DepthProPreTrainedModel:()=>Eo,DetrForObjectDetection:()=>ja,DetrForSegmentation:()=>Ma,DetrModel:()=>Aa,DetrObjectDetectionOutput:()=>Na,DetrPreTrainedModel:()=>ka,DetrSegmentationOutput:()=>Pa,Dinov2ForImageClassification:()=>Jo,Dinov2Model:()=>qo,Dinov2PreTrainedModel:()=>Ko,Dinov2WithRegistersForImageClassification:()=>Zo,Dinov2WithRegistersModel:()=>Xo,Dinov2WithRegistersPreTrainedModel:()=>Yo,DistilBertForMaskedLM:()=>vt,DistilBertForQuestionAnswering:()=>_t,DistilBertForSequenceClassification:()=>ht,DistilBertForTokenClassification:()=>gt,DistilBertModel:()=>mt,DistilBertPreTrainedModel:()=>pt,DonutSwinModel:()=>zo,DonutSwinPreTrainedModel:()=>Ro,EfficientNetForImageClassification:()=>Dc,EfficientNetModel:()=>Ec,EfficientNetPreTrainedModel:()=>Tc,ElectraForMaskedLM:()=>Ge,ElectraForQuestionAnswering:()=>Je,ElectraForSequenceClassification:()=>Ke,ElectraForTokenClassification:()=>qe,ElectraModel:()=>We,ElectraPreTrainedModel:()=>Ue,EsmForMaskedLM:()=>xt,EsmForSequenceClassification:()=>St,EsmForTokenClassification:()=>Ct,EsmModel:()=>bt,EsmPreTrainedModel:()=>yt,ExaoneForCausalLM:()=>Jr,ExaoneModel:()=>qr,ExaonePreTrainedModel:()=>Kr,FalconForCausalLM:()=>dc,FalconModel:()=>uc,FalconPreTrainedModel:()=>lc,FastViTForImageClassification:()=>da,FastViTModel:()=>ua,FastViTPreTrainedModel:()=>la,Florence2ForConditionalGeneration:()=>Kn,Florence2PreTrainedModel:()=>Gn,GLPNForDepthEstimation:()=>Lo,GLPNModel:()=>Io,GLPNPreTrainedModel:()=>Fo,GPT2LMHeadModel:()=>vr,GPT2Model:()=>_r,GPT2PreTrainedModel:()=>gr,GPTBigCodeForCausalLM:()=>Nr,GPTBigCodeModel:()=>Mr,GPTBigCodePreTrainedModel:()=>jr,GPTJForCausalLM:()=>Ar,GPTJModel:()=>kr,GPTJPreTrainedModel:()=>Or,GPTNeoForCausalLM:()=>wr,GPTNeoModel:()=>Cr,GPTNeoPreTrainedModel:()=>Sr,GPTNeoXForCausalLM:()=>Dr,GPTNeoXModel:()=>Er,GPTNeoXPreTrainedModel:()=>Tr,Gemma2ForCausalLM:()=>hi,Gemma2Model:()=>mi,Gemma2PreTrainedModel:()=>pi,Gemma3ForCausalLM:()=>vi,Gemma3Model:()=>_i,Gemma3PreTrainedModel:()=>gi,Gemma3nForConditionalGeneration:()=>Zn,Gemma3nPreTrainedModel:()=>Xn,GemmaForCausalLM:()=>fi,GemmaModel:()=>di,GemmaPreTrainedModel:()=>ui,GlmForCausalLM:()=>Gr,GlmModel:()=>Wr,GlmPreTrainedModel:()=>Ur,GraniteForCausalLM:()=>oi,GraniteModel:()=>ai,GranitePreTrainedModel:()=>ii,GroundingDinoForObjectDetection:()=>$o,GroundingDinoPreTrainedModel:()=>Qo,GroupViTModel:()=>ca,GroupViTPreTrainedModel:()=>sa,HeliumForCausalLM:()=>Hr,HeliumModel:()=>Vr,HeliumPreTrainedModel:()=>Br,HieraForImageClassification:()=>ao,HieraModel:()=>io,HieraPreTrainedModel:()=>ro,HubertForCTC:()=>Bs,HubertForSequenceClassification:()=>Vs,HubertModel:()=>zs,HubertPreTrainedModel:()=>Rs,IJepaForImageClassification:()=>Xi,IJepaModel:()=>Yi,IJepaPreTrainedModel:()=>Ji,Idefics3ForConditionalGeneration:()=>$n,Idefics3PreTrainedModel:()=>Qn,ImageMattingOutput:()=>Ju,JAISLMHeadModel:()=>xr,JAISModel:()=>br,JAISPreTrainedModel:()=>yr,JinaCLIPModel:()=>dr,JinaCLIPPreTrainedModel:()=>Y,JinaCLIPTextModel:()=>fr,JinaCLIPVisionModel:()=>pr,LiteWhisperForConditionalGeneration:()=>In,LlamaForCausalLM:()=>zr,LlamaModel:()=>Rr,LlamaPreTrainedModel:()=>Lr,LlavaForConditionalGeneration:()=>Hn,LlavaOnevisionForConditionalGeneration:()=>Un,LlavaPreTrainedModel:()=>Vn,LlavaQwen2ForCausalLM:()=>Yn,LongT5ForConditionalGeneration:()=>Xt,LongT5Model:()=>Yt,LongT5PreTrainedModel:()=>Jt,M2M100ForConditionalGeneration:()=>ms,M2M100Model:()=>ps,M2M100PreTrainedModel:()=>fs,MBartForCausalLM:()=>cn,MBartForConditionalGeneration:()=>on,MBartForSequenceClassification:()=>sn,MBartModel:()=>V,MBartPreTrainedModel:()=>an,MPNetForMaskedLM:()=>jt,MPNetForQuestionAnswering:()=>Pt,MPNetForSequenceClassification:()=>Mt,MPNetForTokenClassification:()=>Nt,MPNetModel:()=>At,MPNetPreTrainedModel:()=>kt,MT5ForConditionalGeneration:()=>$t,MT5Model:()=>Qt,MT5PreTrainedModel:()=>Zt,MarianMTModel:()=>ds,MarianModel:()=>us,MarianPreTrainedModel:()=>ls,MaskFormerForInstanceSegmentation:()=>Po,MaskFormerModel:()=>No,MaskFormerPreTrainedModel:()=>Mo,MaskedLMOutput:()=>Wu,Metric3DForDepthEstimation:()=>ko,Metric3DPreTrainedModel:()=>Oo,Metric3Dv2ForDepthEstimation:()=>jo,Metric3Dv2PreTrainedModel:()=>Ao,MgpstrForSceneTextRecognition:()=>el,MgpstrModelOutput:()=>Qc,MgpstrPreTrainedModel:()=>$c,MimiDecoderModel:()=>ml,MimiDecoderOutput:()=>dl,MimiEncoderModel:()=>pl,MimiEncoderOutput:()=>ul,MimiModel:()=>fl,MimiPreTrainedModel:()=>ll,MistralForCausalLM:()=>ac,MistralModel:()=>ic,MistralPreTrainedModel:()=>rc,MobileBertForMaskedLM:()=>Et,MobileBertForQuestionAnswering:()=>Ot,MobileBertForSequenceClassification:()=>Dt,MobileBertModel:()=>Tt,MobileBertPreTrainedModel:()=>wt,MobileLLMForCausalLM:()=>Zr,MobileLLMModel:()=>Xr,MobileLLMPreTrainedModel:()=>Yr,MobileNetV1ForImageClassification:()=>Pc,MobileNetV1ForSemanticSegmentation:()=>Fc,MobileNetV1Model:()=>Nc,MobileNetV1PreTrainedModel:()=>Mc,MobileNetV2ForImageClassification:()=>Rc,MobileNetV2ForSemanticSegmentation:()=>zc,MobileNetV2Model:()=>Lc,MobileNetV2PreTrainedModel:()=>Ic,MobileNetV3ForImageClassification:()=>Hc,MobileNetV3ForSemanticSegmentation:()=>Uc,MobileNetV3Model:()=>Vc,MobileNetV3PreTrainedModel:()=>Bc,MobileNetV4ForImageClassification:()=>Kc,MobileNetV4ForSemanticSegmentation:()=>qc,MobileNetV4Model:()=>Gc,MobileNetV4PreTrainedModel:()=>Wc,MobileViTForImageClassification:()=>ga,MobileViTModel:()=>ha,MobileViTPreTrainedModel:()=>ma,MobileViTV2ForImageClassification:()=>ya,MobileViTV2Model:()=>va,MobileViTV2PreTrainedModel:()=>_a,ModelOutput:()=>pe,ModernBertForMaskedLM:()=>Oe,ModernBertForSequenceClassification:()=>ke,ModernBertForTokenClassification:()=>Ae,ModernBertModel:()=>De,ModernBertPreTrainedModel:()=>Ee,Moondream1ForConditionalGeneration:()=>Wn,MoonshineForConditionalGeneration:()=>zn,MoonshineModel:()=>Rn,MoonshinePreTrainedModel:()=>Ln,MptForCausalLM:()=>Vi,MptModel:()=>Bi,MptPreTrainedModel:()=>zi,MultiModalityCausalLM:()=>Zc,MultiModalityPreTrainedModel:()=>Xc,MusicgenForCausalLM:()=>Ac,MusicgenForConditionalGeneration:()=>jc,MusicgenModel:()=>kc,MusicgenPreTrainedModel:()=>Oc,NeoBertForMaskedLM:()=>Se,NeoBertForQuestionAnswering:()=>Te,NeoBertForSequenceClassification:()=>Ce,NeoBertForTokenClassification:()=>we,NeoBertModel:()=>xe,NeoBertPreTrainedModel:()=>be,NomicBertModel:()=>Me,NomicBertPreTrainedModel:()=>je,OPTForCausalLM:()=>Wi,OPTModel:()=>Ui,OPTPreTrainedModel:()=>Hi,Olmo2ForCausalLM:()=>ri,Olmo2Model:()=>ni,Olmo2PreTrainedModel:()=>ti,OlmoForCausalLM:()=>ei,OlmoModel:()=>$r,OlmoPreTrainedModel:()=>Qr,OpenELMForCausalLM:()=>xi,OpenELMModel:()=>bi,OpenELMPreTrainedModel:()=>yi,OwlViTForObjectDetection:()=>Sa,OwlViTModel:()=>xa,OwlViTPreTrainedModel:()=>ba,Owlv2ForObjectDetection:()=>Ta,Owlv2Model:()=>wa,Owlv2PreTrainedModel:()=>Ca,PaliGemmaForConditionalGeneration:()=>Jn,PaliGemmaPreTrainedModel:()=>qn,PatchTSMixerForPrediction:()=>ol,PatchTSMixerModel:()=>al,PatchTSMixerPreTrainedModel:()=>il,PatchTSTForPrediction:()=>rl,PatchTSTModel:()=>nl,PatchTSTPreTrainedModel:()=>tl,Phi3ForCausalLM:()=>Fi,Phi3Model:()=>Pi,Phi3PreTrainedModel:()=>Ni,Phi3VForCausalLM:()=>G,Phi3VPreTrainedModel:()=>tr,PhiForCausalLM:()=>Mi,PhiModel:()=>ji,PhiPreTrainedModel:()=>Ai,PreTrainedModel:()=>L,PretrainedMixin:()=>Z,PvtForImageClassification:()=>ta,PvtModel:()=>ea,PvtPreTrainedModel:()=>$i,PyAnnoteForAudioFrameClassification:()=>Ss,PyAnnoteModel:()=>xs,PyAnnotePreTrainedModel:()=>bs,QuestionAnsweringModelOutput:()=>Gu,Qwen2ForCausalLM:()=>wi,Qwen2Model:()=>Ci,Qwen2PreTrainedModel:()=>Si,Qwen2VLForConditionalGeneration:()=>ki,Qwen2VLPreTrainedModel:()=>Oi,Qwen3ForCausalLM:()=>Di,Qwen3Model:()=>Ei,Qwen3PreTrainedModel:()=>Ti,RFDetrForObjectDetection:()=>Ga,RFDetrModel:()=>Wa,RFDetrObjectDetectionOutput:()=>Ka,RFDetrPreTrainedModel:()=>Ua,RTDetrForObjectDetection:()=>La,RTDetrModel:()=>Ia,RTDetrObjectDetectionOutput:()=>Ra,RTDetrPreTrainedModel:()=>Fa,RTDetrV2ForObjectDetection:()=>Va,RTDetrV2Model:()=>Ba,RTDetrV2ObjectDetectionOutput:()=>Ha,RTDetrV2PreTrainedModel:()=>za,ResNetForImageClassification:()=>co,ResNetModel:()=>so,ResNetPreTrainedModel:()=>oo,RoFormerForMaskedLM:()=>Pe,RoFormerForQuestionAnswering:()=>Le,RoFormerForSequenceClassification:()=>Fe,RoFormerForTokenClassification:()=>Ie,RoFormerModel:()=>z,RoFormerPreTrainedModel:()=>Ne,RobertaForMaskedLM:()=>gn,RobertaForQuestionAnswering:()=>vn,RobertaForSequenceClassification:()=>U,RobertaForTokenClassification:()=>_n,RobertaModel:()=>hn,RobertaPreTrainedModel:()=>mn,SamImageSegmentationOutput:()=>cs,SamModel:()=>ss,SamPreTrainedModel:()=>os,SapiensForDepthEstimation:()=>wo,SapiensForNormalEstimation:()=>To,SapiensForSemanticSegmentation:()=>Co,SapiensPreTrainedModel:()=>So,SegformerForImageClassification:()=>bc,SegformerForSemanticSegmentation:()=>xc,SegformerModel:()=>yc,SegformerPreTrainedModel:()=>vc,Seq2SeqLMOutput:()=>Vu,SequenceClassifierOutput:()=>Q,SiglipModel:()=>J,SiglipPreTrainedModel:()=>q,SiglipTextModel:()=>sr,SiglipVisionModel:()=>cr,SmolVLMForConditionalGeneration:()=>er,SnacDecoderModel:()=>wl,SnacEncoderModel:()=>Cl,SnacModel:()=>Sl,SnacPreTrainedModel:()=>xl,SpeechT5ForSpeechToText:()=>Qs,SpeechT5ForTextToSpeech:()=>$s,SpeechT5HifiGan:()=>ec,SpeechT5Model:()=>Zs,SpeechT5PreTrainedModel:()=>Xs,SqueezeBertForMaskedLM:()=>Lt,SqueezeBertForQuestionAnswering:()=>zt,SqueezeBertForSequenceClassification:()=>Rt,SqueezeBertModel:()=>It,SqueezeBertPreTrainedModel:()=>Ft,StableLmForCausalLM:()=>wc,StableLmModel:()=>Cc,StableLmPreTrainedModel:()=>Sc,Starcoder2ForCausalLM:()=>cc,Starcoder2Model:()=>sc,Starcoder2PreTrainedModel:()=>oc,StyleTextToSpeech2Model:()=>Ys,StyleTextToSpeech2PreTrainedModel:()=>Js,Swin2SRForImageSuperResolution:()=>go,Swin2SRModel:()=>ho,Swin2SRPreTrainedModel:()=>mo,SwinForImageClassification:()=>fo,SwinForSemanticSegmentation:()=>po,SwinModel:()=>uo,SwinPreTrainedModel:()=>lo,T5ForConditionalGeneration:()=>qt,T5Model:()=>Kt,T5PreTrainedModel:()=>Gt,TableTransformerForObjectDetection:()=>Qa,TableTransformerModel:()=>Za,TableTransformerObjectDetectionOutput:()=>$a,TableTransformerPreTrainedModel:()=>Xa,TokenClassifierOutput:()=>Uu,TrOCRForCausalLM:()=>nc,TrOCRPreTrainedModel:()=>tc,UltravoxModel:()=>cl,UltravoxPreTrainedModel:()=>sl,UniSpeechForCTC:()=>Ds,UniSpeechForSequenceClassification:()=>Os,UniSpeechModel:()=>Es,UniSpeechPreTrainedModel:()=>Ts,UniSpeechSatForAudioFrameClassification:()=>Ns,UniSpeechSatForCTC:()=>js,UniSpeechSatForSequenceClassification:()=>Ms,UniSpeechSatModel:()=>As,UniSpeechSatPreTrainedModel:()=>ks,ViTForImageClassification:()=>qi,ViTMAEModel:()=>ra,ViTMAEPreTrainedModel:()=>na,ViTMSNForImageClassification:()=>oa,ViTMSNModel:()=>aa,ViTMSNPreTrainedModel:()=>ia,ViTModel:()=>Ki,ViTPreTrainedModel:()=>Gi,VisionEncoderDecoderModel:()=>Bn,VitMatteForImageMatting:()=>pa,VitMattePreTrainedModel:()=>fa,VitPoseForPoseEstimation:()=>Qi,VitPosePreTrainedModel:()=>Zi,VitsModel:()=>_c,VitsModelOutput:()=>Yu,VitsPreTrainedModel:()=>gc,Wav2Vec2BertForCTC:()=>Is,Wav2Vec2BertForSequenceClassification:()=>Ls,Wav2Vec2BertModel:()=>Fs,Wav2Vec2BertPreTrainedModel:()=>Ps,Wav2Vec2ForAudioFrameClassification:()=>ys,Wav2Vec2ForCTC:()=>_s,Wav2Vec2ForSequenceClassification:()=>vs,Wav2Vec2Model:()=>gs,Wav2Vec2PreTrainedModel:()=>hs,WavLMForAudioFrameClassification:()=>qs,WavLMForCTC:()=>Ws,WavLMForSequenceClassification:()=>Gs,WavLMForXVector:()=>Ks,WavLMModel:()=>Us,WavLMPreTrainedModel:()=>Hs,WeSpeakerResNetModel:()=>ws,WeSpeakerResNetPreTrainedModel:()=>Cs,WhisperForConditionalGeneration:()=>Fn,WhisperModel:()=>Pn,WhisperPreTrainedModel:()=>Nn,XLMForQuestionAnswering:()=>Cn,XLMForSequenceClassification:()=>xn,XLMForTokenClassification:()=>Sn,XLMModel:()=>bn,XLMPreTrainedModel:()=>yn,XLMRobertaForMaskedLM:()=>En,XLMRobertaForQuestionAnswering:()=>kn,XLMRobertaForSequenceClassification:()=>Dn,XLMRobertaForTokenClassification:()=>On,XLMRobertaModel:()=>Tn,XLMRobertaPreTrainedModel:()=>wn,XLMWithLMHeadModel:()=>W,XVectorOutput:()=>Hu,YolosForObjectDetection:()=>ns,YolosModel:()=>ts,YolosObjectDetectionOutput:()=>rs,YolosPreTrainedModel:()=>es});var i=r( -/*! ./configs.js */ -`./src/configs.js`),a=r( -/*! ./backends/onnx.js */ -`./src/backends/onnx.js`),o=r( -/*! ./utils/dtypes.js */ -`./src/utils/dtypes.js`),s=r( -/*! ./utils/generic.js */ -`./src/utils/generic.js`),c=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),l=r( -/*! ./utils/hub.js */ -`./src/utils/hub.js`),u=r( -/*! ./utils/constants.js */ -`./src/utils/constants.js`),d=r( -/*! ./generation/logits_process.js */ -`./src/generation/logits_process.js`),f=r( -/*! ./generation/configuration_utils.js */ -`./src/generation/configuration_utils.js`),p=r( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),m=r( -/*! ./utils/image.js */ -`./src/utils/image.js`),h=r( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),g=r( -/*! ./generation/stopping_criteria.js */ -`./src/generation/stopping_criteria.js`),_=r( -/*! ./generation/logits_sampler.js */ -`./src/generation/logits_sampler.js`),v=r( -/*! ./env.js */ -`./src/env.js`),y=r( -/*! ./models/whisper/generation_whisper.js */ -`./src/models/whisper/generation_whisper.js`),b=r( -/*! ./models/whisper/common_whisper.js */ -`./src/models/whisper/common_whisper.js`);let x={EncoderOnly:0,EncoderDecoder:1,Seq2Seq:2,Vision2Seq:3,DecoderOnly:4,MaskGeneration:5,ImageTextToText:6,Musicgen:7,MultiModality:8,Phi3V:9,AudioTextToText:10,AutoEncoder:11,ImageAudioTextToText:12},S=new Map,C=new Map,w=new Map;async function T(e,t,n){var r;let s=(r=n.config)?.[`transformers.js_config`]??{},c=n.device??s.device;c&&typeof c!=`string`&&(c.hasOwnProperty(t)?c=c[t]:(console.warn(`device not specified for "${t}". Using the default device.`),c=null));let u=c??(v.apis.IS_NODE_ENV?`cpu`:`wasm`),d=(0,a.deviceToExecutionProviders)(u),f=s.device_config??{};f.hasOwnProperty(u)&&(s={...s,...f[u]});let p=n.dtype??s.dtype;if(typeof p!=`string`&&(p&&p.hasOwnProperty(t)?p=p[t]:(p=o.DEFAULT_DEVICE_DTYPE_MAPPING[u]??o.DATA_TYPES.fp32,console.warn(`dtype not specified for "${t}". Using the default dtype (${p}) for this device (${u}).`))),p===o.DATA_TYPES.auto){let e=s.dtype;typeof e!=`string`&&(e=e?.[t]),p=e&&e!==o.DATA_TYPES.auto&&o.DATA_TYPES.hasOwnProperty(e)?e:o.DEFAULT_DEVICE_DTYPE_MAPPING[u]??o.DATA_TYPES.fp32}let m=p;if(o.DEFAULT_DTYPE_SUFFIX_MAPPING.hasOwnProperty(m)){if(m===o.DATA_TYPES.fp16&&u===`webgpu`&&!await(0,o.isWebGpuFp16Supported)())throw Error(`The device (${u}) does not support fp16.`)}else throw Error(`Invalid dtype: ${m}. Should be one of: ${Object.keys(o.DATA_TYPES).join(`, `)}`);let h=s.kv_cache_dtype,g=h?typeof h==`string`?h:h[m]??`float32`:void 0;if(g&&![`float32`,`float16`].includes(g))throw Error(`Invalid kv_cache_dtype: ${g}. Should be one of: float32, float16`);let _={dtype:m,kv_cache_dtype:g,device:u},y=o.DEFAULT_DTYPE_SUFFIX_MAPPING[m],b=`${t}${y}.onnx`,x=`${n.subfolder??``}/${b}`,S={...n.session_options};S.executionProviders??=d;let C=s.free_dimension_overrides;C?S.freeDimensionOverrides??=C:u.startsWith(`webnn`)&&!S.freeDimensionOverrides&&console.warn(`WebNN does not currently support dynamic shapes and requires 'free_dimension_overrides' to be set in config.json, preferably as a field within config["transformers.js_config"]["device_config"]["${u}"]. When 'free_dimension_overrides' is not set, you may experience significant performance degradation.`);let w=v.apis.IS_NODE_ENV&&v.env.useFSCache,T=(0,l.getModelFile)(e,x,!0,n,w),E=n.use_external_data_format??s.use_external_data_format,D=[];if(E){let r;r=typeof E==`object`?E.hasOwnProperty(b)?E[b]:E.hasOwnProperty(t)?E[t]:!1:E;let i=+r;if(i>l.MAX_EXTERNAL_DATA_CHUNKS)throw Error(`The number of external data chunks (${i}) exceeds the maximum allowed value (${l.MAX_EXTERNAL_DATA_CHUNKS}).`);for(let t=0;t{let o=await(0,l.getModelFile)(e,i,!0,n,w);t(o instanceof Uint8Array?{path:r,data:o}:r)}))}}else S.externalData!==void 0&&(D=S.externalData.map(async t=>{if(typeof t.data==`string`){let r=await(0,l.getModelFile)(e,t.data,!0,n);return{...t,data:r}}return t}));if(D.length>0){let e=await Promise.all(D);v.apis.IS_NODE_ENV||(S.externalData=e)}if(u===`webgpu`){let e=(0,i.getKeyValueShapes)(n.config,{prefix:`present`});if(Object.keys(e).length>0&&!(0,a.isONNXProxy)()){let t={};for(let n in e)t[n]=`gpu-buffer`;S.preferredOutputLocation=t}}let O=await T;return{buffer_or_path:O,session_options:S,session_config:_}}async function E(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let{buffer_or_path:i,session_options:o,session_config:s}=await T(e,t[r],n),c=await(0,a.createInferenceSession)(i,o,s);return[r,c]})))}async function D(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let i=await(0,l.getModelJSON)(e,t[r],!1,n);return[r,i]})))}function O(e,t){let n=Object.create(null),r=[];for(let i of e.inputNames){let e=t[i];if(!(e instanceof p.Tensor)){r.push(i);continue}n[i]=(0,a.isONNXProxy)()?e.clone():e}if(r.length>0)throw Error(`An error occurred during model execution: "Missing the following inputs: ${r.join(`, `)}.`);let i=Object.keys(t).length,o=e.inputNames.length;if(i>o){let n=Object.keys(t).filter(t=>!e.inputNames.includes(t));console.warn(`WARNING: Too many inputs were provided (${i} > ${o}). The following inputs will be ignored: "${n.join(`, `)}".`)}return n}let ee=Promise.resolve();async function k(e,t){let n=O(e,t);try{let t=Object.fromEntries(Object.entries(n).map(([e,t])=>[e,t.ort_tensor])),r=()=>e.run(t),i=await(v.apis.IS_BROWSER_ENV||v.apis.IS_WEBWORKER_ENV?ee=ee.then(r):r());return te(i)}catch(e){let t=Object.fromEntries(Object.entries(n).map(([e,t])=>{let n={type:t.type,dims:t.dims,location:t.location};return n.location!==`gpu-buffer`&&(n.data=t.data),[e,n]}));throw console.error(`An error occurred during model execution: "${e}".`),console.error(`Inputs given to model:`,t),e}}function te(e){for(let t in e)(0,a.isONNXTensor)(e[t])?e[t]=new p.Tensor(e[t]):typeof e[t]==`object`&&te(e[t]);return e}function ne(e){if(e instanceof p.Tensor)return e;if(e.length===0)throw Error(`items must be non-empty`);if(Array.isArray(e[0])){if(e.some(t=>t.length!==e[0].length))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' and/or 'truncation=True' to have batched tensors with the same length.`);return new p.Tensor(`int64`,BigInt64Array.from(e.flat().map(e=>BigInt(e))),[e.length,e[0].length])}else return new p.Tensor(`int64`,BigInt64Array.from(e.map(e=>BigInt(e))),[1,e.length])}function re(e){return new p.Tensor(`bool`,[e],[1])}async function ie(e,t){let{encoder_outputs:n,input_ids:r,decoder_input_ids:i,...a}=t;if(!n){let r=(0,c.pick)(t,e.sessions.model.inputNames);n=(await A(e,r)).last_hidden_state}a.input_ids=i,a.encoder_hidden_states=n,e.sessions.decoder_model_merged.inputNames.includes(`encoder_attention_mask`)&&(a.encoder_attention_mask=t.attention_mask);let o=await oe(e,a,!0);return o}async function A(e,t){let n=e.sessions.model,r=(0,c.pick)(t,n.inputNames);if(n.inputNames.includes(`inputs_embeds`)&&!r.inputs_embeds){if(!t.input_ids)throw Error("Both `input_ids` and `inputs_embeds` are missing in the model inputs.");r.inputs_embeds=await e.encode_text({input_ids:t.input_ids})}if(n.inputNames.includes(`token_type_ids`)&&!r.token_type_ids){if(!r.input_ids)throw Error("Both `input_ids` and `token_type_ids` are missing in the model inputs.");r.token_type_ids=(0,p.zeros_like)(r.input_ids)}if(n.inputNames.includes(`pixel_mask`)&&!r.pixel_mask){if(!r.pixel_values)throw Error("Both `pixel_values` and `pixel_mask` are missing in the model inputs.");let e=r.pixel_values.dims;r.pixel_mask=(0,p.ones)([e[0],e[2],e[3]])}return await k(n,r)}async function ae(e,t){let n=await e.encode(t),r=await e.decode(n);return r}async function oe(e,t,n=!1){let r=e.sessions[n?`decoder_model_merged`:`model`],{past_key_values:i,...a}=t;if(r.inputNames.includes(`use_cache_branch`)&&(a.use_cache_branch=re(!!i)),r.inputNames.includes(`position_ids`)&&a.attention_mask&&!a.position_ids){let t=[`paligemma`,`gemma3_text`,`gemma3`].includes(e.config.model_type)?1:0;a.position_ids=de(a,i,t)}e.addPastKeyValues(a,i);let o=(0,c.pick)(a,r.inputNames);return await k(r,o)}function se({modality_token_id:e,inputs_embeds:t,modality_features:n,input_ids:r,attention_mask:i}){let a=r.tolist().map(t=>t.reduce((t,n,r)=>(n==e&&t.push(r),t),[])),o=a.reduce((e,t)=>e+t.length,0),s=n.dims[0];if(o!==s)throw Error(`Number of tokens and features do not match: tokens: ${o}, features ${s}`);let c=0;for(let e=0;ee.dims[1]||i[e.at(-1)])),{...n,decoder_input_ids:ne(t)}}function F(e,...t){return e.config.is_encoder_decoder?P(e,...t):fe(e,...t)}function I(e,t,n,r){let i=!!n.past_key_values;if(r.guidance_scale!==null&&r.guidance_scale>1&&(i?n.input_ids=(0,p.cat)([n.input_ids,n.input_ids],0):(n.input_ids=(0,p.cat)([n.input_ids,(0,p.full_like)(n.input_ids,BigInt(r.pad_token_id))],0),n.attention_mask=(0,p.cat)([n.attention_mask,(0,p.full_like)(n.attention_mask,0n)],0))),(i||!n.pixel_values)&&(n.pixel_values=(0,p.full)([0,0,3,384,384],1)),i){let e=0,t=1,r=e>0?1:0,i=1;n.images_seq_mask=new p.Tensor(`bool`,Array(e+t).fill(!0).fill(!1,0,t),[i,e+t]),n.images_emb_mask=new p.Tensor(`bool`,Array(e).fill(!!r),[i,1,e])}return n}class L extends s.Callable{constructor(t,n,r){super(),e.defineProperty(this,`main_input_name`,`input_ids`),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`]),this.config=t,this.sessions=n,this.configs=r;let i=w.get(this.constructor),a=S.get(i);switch(this.can_generate=!1,this._forward=null,this._prepare_inputs_for_generation=null,a){case x.DecoderOnly:this.can_generate=!0,this._forward=oe,this._prepare_inputs_for_generation=fe;break;case x.Seq2Seq:case x.Vision2Seq:case x.Musicgen:this.can_generate=!0,this._forward=ie,this._prepare_inputs_for_generation=P;break;case x.EncoderDecoder:this._forward=ie;break;case x.ImageTextToText:this.can_generate=!0,this._forward=N,this._prepare_inputs_for_generation=F;break;case x.AudioTextToText:this.can_generate=!0,this._forward=M,this._prepare_inputs_for_generation=F;break;case x.Phi3V:case x.ImageAudioTextToText:this.can_generate=!0,this._prepare_inputs_for_generation=F;break;case x.MultiModality:this.can_generate=!0,this._prepare_inputs_for_generation=I;break;case x.AutoEncoder:this._forward=ae;break;default:this._forward=A;break}this.can_generate&&this.forward_params.push(`past_key_values`),this.custom_config=this.config[`transformers.js_config`]??{}}async dispose(){var e;let t=[];for(let n of Object.values(this.sessions))!(n==null||(e=n.handler)==null)&&e.dispose&&t.push(n.handler.dispose());return await Promise.all(t)}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:l=null,dtype:d=null,use_external_data_format:f=null,session_options:p={}}={}){let m={progress_callback:t,config:n,cache_dir:r,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:l,dtype:d,use_external_data_format:f,session_options:p},h=w.get(this),g=S.get(h);n=m.config=await i.AutoConfig.from_pretrained(e,m);let _;if(g===x.DecoderOnly)_=await Promise.all([E(e,{model:m.model_file_name??`model`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.Seq2Seq||g===x.Vision2Seq)_=await Promise.all([E(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.MaskGeneration)_=await Promise.all([E(e,{model:`vision_encoder`,prompt_encoder_mask_decoder:`prompt_encoder_mask_decoder`},m)]);else if(g===x.EncoderDecoder)_=await Promise.all([E(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m)]);else if(g===x.ImageTextToText){let t={embed_tokens:`embed_tokens`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};n.is_encoder_decoder&&(t.model=`encoder_model`),_=await Promise.all([E(e,t,m),D(e,{generation_config:`generation_config.json`},m)])}else if(g===x.AudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([E(e,t,m),D(e,{generation_config:`generation_config.json`},m)])}else if(g===x.ImageAudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([E(e,t,m),D(e,{generation_config:`generation_config.json`},m)])}else if(g===x.Musicgen)_=await Promise.all([E(e,{model:`text_encoder`,decoder_model_merged:`decoder_model_merged`,encodec_decode:`encodec_decode`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.MultiModality)_=await Promise.all([E(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`language_model`,lm_head:`lm_head`,gen_head:`gen_head`,gen_img_embeds:`gen_img_embeds`,image_decode:`image_decode`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.Phi3V)_=await Promise.all([E(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`model`,vision_encoder:`vision_encoder`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.AutoEncoder)_=await Promise.all([E(e,{encoder_model:`encoder_model`,decoder_model:`decoder_model`},m)]);else{if(g!==x.EncoderOnly){let e=h??n?.model_type;e!==`custom`&&console.warn(`Model type for '${e}' not found, assuming encoder-only architecture. Please report this at ${u.GITHUB_ISSUE_URL}.`)}_=await Promise.all([E(e,{model:m.model_file_name??`model`},m)])}return new this(n,..._)}async _call(e){return await this.forward(e)}async forward(e){return await this._forward(this,e)}get generation_config(){var e;return(e=this.configs)?.generation_config??null}_get_logits_warper(e){let t=new d.LogitsProcessorList;return e.temperature!==null&&e.temperature!==1&&t.push(new d.TemperatureLogitsWarper(e.temperature)),e.top_k!==null&&e.top_k!==0&&t.push(new d.TopKLogitsWarper(e.top_k)),e.top_p!==null&&e.top_p<1&&t.push(new d.TopPLogitsWarper(e.top_p)),t}_get_logits_processor(e,t,n=null){let r=new d.LogitsProcessorList;if(e.repetition_penalty!==null&&e.repetition_penalty!==1&&r.push(new d.RepetitionPenaltyLogitsProcessor(e.repetition_penalty)),e.no_repeat_ngram_size!==null&&e.no_repeat_ngram_size>0&&r.push(new d.NoRepeatNGramLogitsProcessor(e.no_repeat_ngram_size)),e.bad_words_ids!==null&&r.push(new d.NoBadWordsLogitsProcessor(e.bad_words_ids,e.eos_token_id)),e.min_length!==null&&e.eos_token_id!==null&&e.min_length>0&&r.push(new d.MinLengthLogitsProcessor(e.min_length,e.eos_token_id)),e.min_new_tokens!==null&&e.eos_token_id!==null&&e.min_new_tokens>0&&r.push(new d.MinNewTokensLengthLogitsProcessor(t,e.min_new_tokens,e.eos_token_id)),e.forced_bos_token_id!==null&&r.push(new d.ForcedBOSTokenLogitsProcessor(e.forced_bos_token_id)),e.forced_eos_token_id!==null&&r.push(new d.ForcedEOSTokenLogitsProcessor(e.max_length,e.forced_eos_token_id)),e.begin_suppress_tokens!==null){let n=t>1||e.forced_bos_token_id===null?t:t+1;r.push(new d.SuppressTokensAtBeginLogitsProcessor(e.begin_suppress_tokens,n))}return e.guidance_scale!==null&&e.guidance_scale>1&&r.push(new d.ClassifierFreeGuidanceLogitsProcessor(e.guidance_scale)),n!==null&&r.extend(n),r}_prepare_generation_config(e,t,n=f.GenerationConfig){let r={...this.config};for(let e of[`decoder`,`generator`,`text_config`])e in r&&Object.assign(r,r[e]);let i=new n(r);return Object.assign(i,this.generation_config??{}),e&&Object.assign(i,e),t&&Object.assign(i,(0,c.pick)(t,Object.getOwnPropertyNames(i))),i}_get_stopping_criteria(e,t=null){let n=new g.StoppingCriteriaList;return e.max_length!==null&&n.push(new g.MaxLengthCriteria(e.max_length,this.config.max_position_embeddings??null)),e.eos_token_id!==null&&n.push(new g.EosTokenCriteria(e.eos_token_id)),t&&n.extend(t),n}_validate_model_class(){if(!this.can_generate){let e=[Fl,zl,Pl,kl],t=w.get(this.constructor),n=new Set,r=this.config.model_type;for(let t of e){let e=t.get(r);e&&n.add(e[0])}let i=`The current model class (${t}) is not compatible with \`.generate()\`, as it doesn't have a language model head.`;throw n.size>0&&(i+=` Please use the following class instead: ${[...n].join(`, `)}`),Error(i)}}prepare_inputs_for_generation(...e){return this._prepare_inputs_for_generation(this,...e)}_update_model_kwargs_for_generation({generated_input_ids:e,outputs:t,model_inputs:n,is_encoder_decoder:r}){return n.past_key_values=this.getPastKeyValues(t,n.past_key_values),n.input_ids=new p.Tensor(`int64`,e.flat(),[e.length,1]),r?`decoder_attention_mask`in n:n.attention_mask=(0,p.cat)([n.attention_mask,(0,p.ones)([n.attention_mask.dims[0],1])],1),n.position_ids=null,n}_prepare_model_inputs({inputs:e,bos_token_id:t,model_kwargs:n}){let r=(0,c.pick)(n,this.forward_params),i=this.main_input_name;if(i in r){if(e)throw Error("`inputs`: {inputs}` were passed alongside {input_name} which is not allowed. Make sure to either pass {inputs} or {input_name}=...")}else r[i]=e;let a=r[i];return{inputs_tensor:a,model_inputs:r,model_input_name:i}}async _prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:e,model_inputs:t,model_input_name:n,generation_config:r}){if(this.sessions.model.inputNames.includes(`inputs_embeds`)&&!t.inputs_embeds&&`_prepare_inputs_embeds`in this){let{input_ids:e,pixel_values:n,attention_mask:r,...i}=t,a=await this._prepare_inputs_embeds(t);t={...i,...(0,c.pick)(a,[`inputs_embeds`,`attention_mask`])}}let{last_hidden_state:i}=await A(this,t);if(r.guidance_scale!==null&&r.guidance_scale>1)i=(0,p.cat)([i,(0,p.full_like)(i,0)],0),`attention_mask`in t&&(t.attention_mask=(0,p.cat)([t.attention_mask,(0,p.zeros_like)(t.attention_mask)],0));else if(t.decoder_input_ids){let e=ne(t.decoder_input_ids).dims[0];if(e!==i.dims[0]){if(i.dims[0]!==1)throw Error(`The encoder outputs have a different batch size (${i.dims[0]}) than the decoder inputs (${e}).`);i=(0,p.cat)(Array.from({length:e},()=>i),0)}}return t.encoder_outputs=i,t}_prepare_decoder_input_ids_for_generation({batch_size:e,model_input_name:t,model_kwargs:n,decoder_start_token_id:r,bos_token_id:i,generation_config:a}){let{decoder_input_ids:o,...s}=n;if(!(o instanceof p.Tensor)){if(o)Array.isArray(o[0])||(o=Array.from({length:e},()=>o));else if(r??=i,this.config.model_type===`musicgen`)o=Array.from({length:e*this.config.decoder.num_codebooks},()=>[r]);else if(Array.isArray(r)){if(r.length!==e)throw Error(`\`decoder_start_token_id\` expcted to have length ${e} but got ${r.length}`);o=r}else o=Array.from({length:e},()=>[r]);o=ne(o)}return n.decoder_attention_mask=(0,p.ones_like)(o),{input_ids:o,model_inputs:s}}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,streamer:i=null,...a}){this._validate_model_class(),t=this._prepare_generation_config(t,a);let{inputs_tensor:o,model_inputs:s,model_input_name:c}=this._prepare_model_inputs({inputs:e,model_kwargs:a}),l=this.config.is_encoder_decoder;l&&(`encoder_outputs`in s||(s=await this._prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:o,model_inputs:s,model_input_name:c,generation_config:t})));let u;l?{input_ids:u,model_inputs:s}=this._prepare_decoder_input_ids_for_generation({batch_size:s[c].dims.at(0),model_input_name:c,model_kwargs:s,decoder_start_token_id:t.decoder_start_token_id,bos_token_id:t.bos_token_id,generation_config:t}):u=s[c];let d=u.dims.at(-1);t.max_new_tokens!==null&&(t.max_length=d+t.max_new_tokens);let f=this._get_logits_processor(t,d,n),m=this._get_stopping_criteria(t,r),h=s[c].dims.at(0),g=_.LogitsSampler.getSampler(t),v=Array(h).fill(0),y=u.tolist();i&&i.put(y);let b,x={};for(;;){if(s=this.prepare_inputs_for_generation(y,s,t),b=await this.forward(s),t.output_attentions&&t.return_dict_in_generate){let e=this.getAttentions(b);for(let t in e)t in x||(x[t]=[]),x[t].push(e[t])}let e=b.logits.slice(null,-1,null),n=f(y,e),r=[];for(let e=0;ee))break;s=this._update_model_kwargs_for_generation({generated_input_ids:r,outputs:b,model_inputs:s,is_encoder_decoder:l})}i&&i.end();let S=this.getPastKeyValues(b,s.past_key_values,!0),C=new p.Tensor(`int64`,y.flat(),[y.length,y[0].length]);if(t.return_dict_in_generate)return{sequences:C,past_key_values:S,...x};for(let e of Object.values(b))e.location===`gpu-buffer`&&e.dispose();return C}getPastKeyValues(e,t,n=!1){let r=Object.create(null);for(let i in e)if(i.startsWith(`present`)){let a=i.replace(`present`,`past_key_values`),o=i.includes(`encoder`);if(o&&t?r[a]=t[a]:r[a]=e[i],t&&(!o||n)){let e=t[a];e.location===`gpu-buffer`&&e.dispose()}}return r}getAttentions(e){let t={};for(let n of[`cross_attentions`,`encoder_attentions`,`decoder_attentions`])for(let r in e)r.startsWith(n)&&(n in t||(t[n]=[]),t[n].push(e[r]));return t}addPastKeyValues(e,t){if(t)Object.assign(e,t);else{var n,r;let t=this.sessions.decoder_model_merged??this.sessions.model,a=(t==null||(n=t.config)==null?void 0:n.kv_cache_dtype)??`float32`,o=a===`float16`?new p.DataTypeMap.float16:[],s=((r=e[this.main_input_name]??e.attention_mask)==null||(r=r.dims)==null?void 0:r[0])??1,c=(0,i.getKeyValueShapes)(this.config,{batch_size:s});for(let t in c)e[t]=new p.Tensor(a,o,c[t])}}async encode_image({pixel_values:e}){return(await k(this.sessions.vision_encoder,{pixel_values:e})).image_features}async encode_text({input_ids:e}){return(await k(this.sessions.embed_tokens,{input_ids:e})).inputs_embeds}async encode_audio({audio_values:e}){return(await k(this.sessions.audio_encoder,{audio_values:e})).audio_features}}class pe{}class me extends pe{constructor({last_hidden_state:e,hidden_states:t=null,attentions:n=null}){super(),this.last_hidden_state=e,this.hidden_states=t,this.attentions=n}}class he extends L{}class ge extends he{}class _e extends he{async _call(e){return new Wu(await super._call(e))}}class ve extends he{async _call(e){return new Q(await super._call(e))}}class R extends he{async _call(e){return new Uu(await super._call(e))}}class ye extends he{async _call(e){return new Gu(await super._call(e))}}class be extends L{}class xe extends be{}class Se extends be{async _call(e){return new Wu(await super._call(e))}}class Ce extends be{async _call(e){return new Q(await super._call(e))}}class we extends be{async _call(e){return new Uu(await super._call(e))}}class Te extends be{async _call(e){return new Gu(await super._call(e))}}class Ee extends L{}class De extends Ee{}class Oe extends Ee{async _call(e){return new Wu(await super._call(e))}}class ke extends Ee{async _call(e){return new Q(await super._call(e))}}class Ae extends Ee{async _call(e){return new Uu(await super._call(e))}}class je extends L{}class Me extends je{}class Ne extends L{}class z extends Ne{}class Pe extends Ne{async _call(e){return new Wu(await super._call(e))}}class Fe extends Ne{async _call(e){return new Q(await super._call(e))}}class Ie extends Ne{async _call(e){return new Uu(await super._call(e))}}class Le extends Ne{async _call(e){return new Gu(await super._call(e))}}class Re extends L{}class ze extends Re{}class Be extends Re{async _call(e){return new Wu(await super._call(e))}}class B extends Re{async _call(e){return new Q(await super._call(e))}}class Ve extends Re{async _call(e){return new Uu(await super._call(e))}}class He extends Re{async _call(e){return new Gu(await super._call(e))}}class Ue extends L{}class We extends Ue{}class Ge extends Ue{async _call(e){return new Wu(await super._call(e))}}class Ke extends Ue{async _call(e){return new Q(await super._call(e))}}class qe extends Ue{async _call(e){return new Uu(await super._call(e))}}class Je extends Ue{async _call(e){return new Gu(await super._call(e))}}class Ye extends L{}class Xe extends Ye{}class Ze extends Ye{async _call(e){return new Wu(await super._call(e))}}class Qe extends Ye{async _call(e){return new Q(await super._call(e))}}class $e extends Ye{async _call(e){return new Uu(await super._call(e))}}class et extends Ye{async _call(e){return new Gu(await super._call(e))}}class tt extends L{}class nt extends tt{}class rt extends tt{async _call(e){return new Wu(await super._call(e))}}class it extends tt{async _call(e){return new Q(await super._call(e))}}class at extends tt{async _call(e){return new Uu(await super._call(e))}}class ot extends tt{async _call(e){return new Gu(await super._call(e))}}class st extends L{}class ct extends st{}class lt extends st{async _call(e){return new Wu(await super._call(e))}}class ut extends st{async _call(e){return new Q(await super._call(e))}}class dt extends st{async _call(e){return new Uu(await super._call(e))}}class ft extends st{async _call(e){return new Gu(await super._call(e))}}class pt extends L{}class mt extends pt{}class ht extends pt{async _call(e){return new Q(await super._call(e))}}class gt extends pt{async _call(e){return new Uu(await super._call(e))}}class _t extends pt{async _call(e){return new Gu(await super._call(e))}}class vt extends pt{async _call(e){return new Wu(await super._call(e))}}class yt extends L{}class bt extends yt{}class xt extends yt{async _call(e){return new Wu(await super._call(e))}}class St extends yt{async _call(e){return new Q(await super._call(e))}}class Ct extends yt{async _call(e){return new Uu(await super._call(e))}}class wt extends L{}class Tt extends wt{}class Et extends wt{async _call(e){return new Wu(await super._call(e))}}class Dt extends wt{async _call(e){return new Q(await super._call(e))}}class Ot extends wt{async _call(e){return new Gu(await super._call(e))}}class kt extends L{}class At extends kt{}class jt extends kt{async _call(e){return new Wu(await super._call(e))}}class Mt extends kt{async _call(e){return new Q(await super._call(e))}}class Nt extends kt{async _call(e){return new Uu(await super._call(e))}}class Pt extends kt{async _call(e){return new Gu(await super._call(e))}}class Ft extends L{}class It extends Ft{}class Lt extends Ft{async _call(e){return new Wu(await super._call(e))}}class Rt extends Ft{async _call(e){return new Q(await super._call(e))}}class zt extends Ft{async _call(e){return new Gu(await super._call(e))}}class Bt extends L{}class Vt extends Bt{}class Ht extends Bt{async _call(e){return new Q(await super._call(e))}}class Ut extends Bt{async _call(e){return new Gu(await super._call(e))}}class Wt extends Bt{async _call(e){return new Wu(await super._call(e))}}class Gt extends L{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`])}}class Kt extends Gt{}class qt extends Gt{}class Jt extends L{}class Yt extends Jt{}class Xt extends Jt{}class Zt extends L{}class Qt extends Zt{}class $t extends Zt{}class en extends L{}class tn extends en{}class nn extends en{}class rn extends en{async _call(e){return new Q(await super._call(e))}}class an extends L{}class V extends an{}class on extends an{}class sn extends an{async _call(e){return new Q(await super._call(e))}}class cn extends an{}class ln extends L{}class un extends ln{}class dn extends ln{}class fn extends L{}class pn extends fn{}class H extends fn{}class mn extends L{}class hn extends mn{}class gn extends mn{async _call(e){return new Wu(await super._call(e))}}class U extends mn{async _call(e){return new Q(await super._call(e))}}class _n extends mn{async _call(e){return new Uu(await super._call(e))}}class vn extends mn{async _call(e){return new Gu(await super._call(e))}}class yn extends L{}class bn extends yn{}class W extends yn{async _call(e){return new Wu(await super._call(e))}}class xn extends yn{async _call(e){return new Q(await super._call(e))}}class Sn extends yn{async _call(e){return new Uu(await super._call(e))}}class Cn extends yn{async _call(e){return new Gu(await super._call(e))}}class wn extends L{}class Tn extends wn{}class En extends wn{async _call(e){return new Wu(await super._call(e))}}class Dn extends wn{async _call(e){return new Q(await super._call(e))}}class On extends wn{async _call(e){return new Uu(await super._call(e))}}class kn extends wn{async _call(e){return new Gu(await super._call(e))}}class An extends L{}class jn extends An{}class Mn extends An{}class Nn extends L{constructor(...t){super(...t),e.defineProperty(this,`requires_attention_mask`,!1),e.defineProperty(this,`main_input_name`,`input_features`),e.defineProperty(this,`forward_params`,[`input_features`,`attention_mask`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`])}}class Pn extends Nn{}class Fn extends Nn{_prepare_generation_config(e,t){return super._prepare_generation_config(e,t,y.WhisperGenerationConfig)}_retrieve_init_tokens(e){let t=[e.decoder_start_token_id],n=e.language,r=e.task;if(e.is_multilingual){n||(console.warn(`No language specified - defaulting to English (en).`),n=`en`);let i=(0,b.whisper_language_to_code)(n),a=`<|${i}|>`;t.push(e.lang_to_id[a]),t.push(e.task_to_id[r??`transcribe`])}else if(n||r)throw Error("Cannot specify `task` or `language` for an English-only model. If the model is intended to be multilingual, pass `is_multilingual=true` to generate, or update the generation config.");return!e.return_timestamps&&e.no_timestamps_token_id&&t.at(-1)!==e.no_timestamps_token_id?t.push(e.no_timestamps_token_id):e.return_timestamps&&t.at(-1)===e.no_timestamps_token_id&&(console.warn("<|notimestamps|> prompt token is removed from generation_config since `return_timestamps` is set to `true`."),t.pop()),t.filter(e=>e!=null)}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,...i}){t=this._prepare_generation_config(t,i);let a=i.decoder_input_ids??this._retrieve_init_tokens(t);if(t.return_timestamps&&(n??=new d.LogitsProcessorList,n.push(new d.WhisperTimeStampLogitsProcessor(t,a))),t.begin_suppress_tokens&&(n??=new d.LogitsProcessorList,n.push(new d.SuppressTokensAtBeginLogitsProcessor(t.begin_suppress_tokens,a.length))),t.return_token_timestamps){if(!t.alignment_heads)throw Error("Model generation config has no `alignment_heads`, token-level timestamps not available. See https://gist.github.com/hollance/42e32852f24243b748ae6bc1f985b13a on how to add this property to the generation config.");t.task===`translate`&&console.warn(`Token-level timestamps may not be reliable for task 'translate'.`),t.output_attentions=!0,t.return_dict_in_generate=!0}let o=await super.generate({inputs:e,generation_config:t,logits_processor:n,decoder_input_ids:a,...i});return t.return_token_timestamps&&(o.token_timestamps=this._extract_token_timestamps(o,t.alignment_heads,t.num_frames)),o}_extract_token_timestamps(e,t,n=null,r=.02){if(!e.cross_attentions)throw Error("Model outputs must contain cross attentions to extract timestamps. This is most likely because the model was not exported with `output_attentions=True`.");n??console.warn("`num_frames` has not been set, meaning the entire audio will be analyzed. This may lead to inaccurate token-level timestamps for short audios (< 30 seconds).");let i=this.config.median_filter_width;i===void 0&&(console.warn("Model config has no `median_filter_width`, using default value of 7."),i=7);let a=e.cross_attentions,o=Array.from({length:this.config.decoder_layers},(e,t)=>(0,p.cat)(a.map(e=>e[t]),2)),s=(0,p.stack)(t.map(([e,t])=>{if(e>=o.length)throw Error(`Layer index ${e} is out of bounds for cross attentions (length ${o.length}).`);return n?o[e].slice(null,t,null,[0,n]):o[e].slice(null,t)})).transpose(1,0,2,3),[l,u]=(0,p.std_mean)(s,-2,0,!0),d=s.clone();for(let e=0;en[t+1]-n[t]),o=(0,c.mergeArrays)([1],a).map(e=>!!e),s=[];for(let e=0;eArray.from({length:e.dims[0]},t=>Array.from({length:e.dims[1]},e=>1))),f=t?t.tolist():[],m=n?n.tolist():[],g=0,_=0;for(let e=0;eu[e][n]==1),n=t.reduce((e,t,n)=>(t==s&&e.push(n),e),[]),r=n.map(e=>t[e+1]),p=r.filter(e=>e==a).length,v=r.filter(e=>e==o).length,y=[],b=0,x=p,S=v;for(let e=0;et>b&&e==a),n=t.findIndex((e,t)=>t>b&&e==o),r=x>0&&e!==-1?e:t.length+1,i=S>0&&n!==-1?n:t.length+1,s,l,u,d;r0?(0,h.max)(y.at(-1))[0]+1:0;y.push(Array.from({length:3*w},(e,t)=>T+t%w));let E=w+T,D=p*v*C,O=Array.from({length:D},(e,t)=>E+Math.floor(t/(v*C))),ee=Array.from({length:D},(e,t)=>E+Math.floor(t/C)%v),k=Array.from({length:D},(e,t)=>E+t%C);y.push([O,ee,k].flat()),b=s+D}if(b0?(0,h.max)(y.at(-1))[0]+1:0,n=t.length-b;y.push(Array.from({length:3*n},(t,r)=>e+r%n))}let C=y.reduce((e,t)=>e+t.length,0),w=Array(C),T=0;for(let e=0;e<3;++e)for(let t=0;te[n%e.length]),i=Array.from({length:t[0]},(n,r)=>(0,h.max)(e.subarray(t[1]*r,t[1]*(r+1)))[0]+1n+BigInt(t[1]));return[new p.Tensor(`int64`,n,[3,...t]),new p.Tensor(`int64`,i,[i.length,1])]}else{let[t,n]=e.dims,r=BigInt64Array.from({length:3*t*n},(e,r)=>BigInt(Math.floor(r%n/t)));return[new p.Tensor(`int64`,r,[3,...e.dims]),(0,p.zeros)([t,1])]}}async encode_image({pixel_values:e,image_grid_thw:t}){let n=(await k(this.sessions.vision_encoder,{pixel_values:e,grid_thw:t})).image_features;return n}_merge_input_ids_with_image_features(e){return ce({image_token_id:this.config.image_token_id,...e})}prepare_inputs_for_generation(e,t,n){if(t.attention_mask&&!t.position_ids)if(!t.past_key_values)[t.position_ids,t.rope_deltas]=this.get_rope_index(t.input_ids,t.image_grid_thw,t.video_grid_thw,t.attention_mask);else{t.pixel_values=null;let e=BigInt(Object.values(t.past_key_values)[0].dims.at(-2)),n=t.rope_deltas.map(t=>e+t);t.position_ids=(0,p.stack)([n,n,n],0)}return t}}class Ai extends L{}class ji extends Ai{}class Mi extends Ai{}class Ni extends L{}class Pi extends Ni{}class Fi extends Ni{}class Ii extends L{}class Li extends Ii{}class Ri extends Ii{}class zi extends L{}class Bi extends zi{}class Vi extends zi{}class Hi extends L{}class Ui extends Hi{}class Wi extends Hi{}class Gi extends L{}class Ki extends Gi{}class qi extends Gi{async _call(e){return new Q(await super._call(e))}}class Ji extends L{}class Yi extends Ji{}class Xi extends Ji{async _call(e){return new Q(await super._call(e))}}class Zi extends L{}class Qi extends Zi{}class $i extends L{}class ea extends $i{}class ta extends $i{async _call(e){return new Q(await super._call(e))}}class na extends L{}class ra extends na{}class ia extends L{}class aa extends ia{}class oa extends ia{async _call(e){return new Q(await super._call(e))}}class sa extends L{}class ca extends sa{}class la extends L{}class ua extends la{}class da extends la{async _call(e){return new Q(await super._call(e))}}class fa extends L{}class pa extends fa{async _call(e){return new Ju(await super._call(e))}}class ma extends L{}class ha extends ma{}class ga extends ma{async _call(e){return new Q(await super._call(e))}}class _a extends L{}class va extends _a{}class ya extends _a{async _call(e){return new Q(await super._call(e))}}class ba extends L{}class xa extends ba{}class Sa extends ba{}class Ca extends L{}class wa extends Ca{}class Ta extends Ca{}class Ea extends L{}class Da extends Ea{}class Oa extends Ea{async _call(e){return new Q(await super._call(e))}}class ka extends L{}class Aa extends ka{}class ja extends ka{async _call(e){return new Na(await super._call(e))}}class Ma extends ka{async _call(e){return new Pa(await super._call(e))}}class Na extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Pa extends pe{constructor({logits:e,pred_boxes:t,pred_masks:n}){super(),this.logits=e,this.pred_boxes=t,this.pred_masks=n}}class Fa extends L{}class Ia extends Fa{}class La extends Fa{async _call(e){return new Ra(await super._call(e))}}class Ra extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class za extends L{}class Ba extends za{}class Va extends za{async _call(e){return new Ha(await super._call(e))}}class Ha extends Ra{}class Ua extends L{}class Wa extends Ua{}class Ga extends Ua{async _call(e){return new Ka(await super._call(e))}}class Ka extends Ra{}class qa extends L{}class Ja extends qa{}class Ya extends qa{async _call(e){return new Ra(await super._call(e))}}class Xa extends L{}class Za extends Xa{}class Qa extends Xa{async _call(e){return new $a(await super._call(e))}}class $a extends Na{}class eo extends L{}class to extends eo{}class no extends eo{async _call(e){return new Q(await super._call(e))}}class ro extends L{}class io extends ro{}class ao extends ro{async _call(e){return new Q(await super._call(e))}}class oo extends L{}class so extends oo{}class co extends oo{async _call(e){return new Q(await super._call(e))}}class lo extends L{}class uo extends lo{}class fo extends lo{async _call(e){return new Q(await super._call(e))}}class po extends lo{}class mo extends L{}class ho extends mo{}class go extends mo{}class _o extends L{}class vo extends _o{}class yo extends _o{}class bo extends L{}class xo extends bo{}class So extends L{}class Co extends So{}class wo extends So{}class To extends So{}class Eo extends L{}class Do extends Eo{}class Oo extends L{}class ko extends Oo{}class Ao extends L{}class jo extends Ao{}class Mo extends L{}class No extends Mo{}class Po extends Mo{}class Fo extends L{}class Io extends Fo{}class Lo extends Fo{}class Ro extends L{}class zo extends Ro{}class Bo extends L{}class Vo extends Bo{}class Ho extends Bo{async _call(e){return new Q(await super._call(e))}}class Uo extends L{}class Wo extends Uo{}class Go extends Uo{async _call(e){return new Q(await super._call(e))}}class Ko extends L{}class qo extends Ko{}class Jo extends Ko{async _call(e){return new Q(await super._call(e))}}class Yo extends L{}class Xo extends Yo{}class Zo extends Yo{async _call(e){return new Q(await super._call(e))}}class Qo extends L{}class $o extends Qo{}class es extends L{}class ts extends es{}class ns extends es{async _call(e){return new rs(await super._call(e))}}class rs extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class os extends L{}class ss extends os{async get_image_embeddings({pixel_values:e}){return await A(this,{pixel_values:e})}async forward(e){if((!e.image_embeddings||!e.image_positional_embeddings)&&(e={...e,...await this.get_image_embeddings(e)}),!e.input_labels&&e.input_points){let t=e.input_points.dims.slice(0,-1),n=t.reduce((e,t)=>e*t,1);e.input_labels=new p.Tensor(`int64`,new BigInt64Array(n).fill(1n),t)}let t={image_embeddings:e.image_embeddings,image_positional_embeddings:e.image_positional_embeddings};return e.input_points&&(t.input_points=e.input_points),e.input_labels&&(t.input_labels=e.input_labels),e.input_boxes&&(t.input_boxes=e.input_boxes),await k(this.sessions.prompt_encoder_mask_decoder,t)}async _call(e){return new cs(await super._call(e))}}class cs extends pe{constructor({iou_scores:e,pred_masks:t}){super(),this.iou_scores=e,this.pred_masks=t}}class ls extends L{}class us extends ls{}class ds extends ls{}class fs extends L{}class ps extends fs{}class ms extends fs{}class hs extends L{}class gs extends hs{}class _s extends hs{async _call(e){return new Ku(await super._call(e))}}class vs extends hs{async _call(e){return new Q(await super._call(e))}}class ys extends hs{async _call(e){return new Uu(await super._call(e))}}class bs extends L{}class xs extends bs{}class Ss extends bs{async _call(e){return new Uu(await super._call(e))}}class Cs extends L{}class ws extends Cs{}class Ts extends L{}class Es extends Ts{}class Ds extends Ts{async _call(e){return new Ku(await super._call(e))}}class Os extends Ts{async _call(e){return new Q(await super._call(e))}}class ks extends L{}class As extends ks{}class js extends ks{async _call(e){return new Ku(await super._call(e))}}class Ms extends ks{async _call(e){return new Q(await super._call(e))}}class Ns extends ks{async _call(e){return new Uu(await super._call(e))}}class Ps extends L{}class Fs extends Ps{}class Is extends Ps{async _call(e){return new Ku(await super._call(e))}}class Ls extends Ps{async _call(e){return new Q(await super._call(e))}}class Rs extends L{}class zs extends hs{}class Bs extends hs{async _call(e){return new Ku(await super._call(e))}}class Vs extends hs{async _call(e){return new Q(await super._call(e))}}class Hs extends L{}class Us extends Hs{}class Ws extends Hs{async _call(e){return new Ku(await super._call(e))}}class Gs extends Hs{async _call(e){return new Q(await super._call(e))}}class Ks extends Hs{async _call(e){return new Hu(await super._call(e))}}class qs extends Hs{async _call(e){return new Uu(await super._call(e))}}class Js extends L{}class Ys extends Js{}class Xs extends L{}class Zs extends Xs{}class Qs extends Xs{}class $s extends Xs{async generate_speech(e,t,{threshold:n=.5,minlenratio:r=0,maxlenratio:i=20,vocoder:a=null}={}){let o={input_ids:e},{encoder_outputs:s,encoder_attention_mask:c}=await A(this,o),l=s.dims[1]/this.config.reduction_factor,u=Math.floor(l*i),d=Math.floor(l*r),f=this.config.num_mel_bins,m=[],h=null,g=null,_=0;for(;;){++_;let e=re(!!g),r;r=g?g.output_sequence_out:new p.Tensor(`float32`,new Float32Array(f),[1,1,f]);let i={use_cache_branch:e,output_sequence:r,encoder_attention_mask:c,speaker_embeddings:t,encoder_hidden_states:s};this.addPastKeyValues(i,h),g=await k(this.sessions.decoder_model_merged,i),h=this.getPastKeyValues(g,h);let{prob:a,spectrum:o}=g;if(m.push(o),_>=d&&(Array.from(a.data).filter(e=>e>=n).length>0||_>=u))break}let v=(0,p.cat)(m),{waveform:y}=await k(a.sessions.model,{spectrogram:v});return{spectrogram:v,waveform:y}}}class ec extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`spectrogram`)}}class tc extends L{}class nc extends tc{}class rc extends L{}class ic extends rc{}class ac extends rc{}class oc extends L{}class sc extends oc{}class cc extends oc{}class lc extends L{}class uc extends lc{}class dc extends lc{}class fc extends L{}class pc extends fc{}class mc extends fc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`text_model`})}}class hc extends fc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`audio_model`})}}class gc extends L{}class _c extends gc{async _call(e){return new Yu(await super._call(e))}}class vc extends L{}class yc extends vc{}class bc extends vc{}class xc extends vc{}class Sc extends L{}class Cc extends Sc{}class wc extends Sc{}class Tc extends L{}class Ec extends Tc{}class Dc extends Tc{async _call(e){return new Q(await super._call(e))}}class Oc extends L{}class kc extends Oc{}class Ac extends Oc{}class jc extends L{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`])}_apply_and_filter_by_delay_pattern_mask(e){let[t,n]=e.dims,r=this.config.decoder.num_codebooks,i=n-r,a=0;for(let t=0;t0&&c<=i&&(e.data[a++]=e.data[t])}let o=Math.floor(t/r),s=a/(o*r);return new p.Tensor(e.type,e.data.slice(0,a),[o,r,s])}prepare_inputs_for_generation(e,t,n){let r=structuredClone(e);for(let e=0;e=t&&(r[e][t]=BigInt(this.config.decoder.pad_token_id));n.guidance_scale!==null&&n.guidance_scale>1&&(r=r.concat(r));let i=super.prepare_inputs_for_generation(r,t,n);return i}async generate(e){let t=await super.generate(e),n=this._apply_and_filter_by_delay_pattern_mask(t).unsqueeze_(0),{audio_values:r}=await k(this.sessions.encodec_decode,{audio_codes:n});return r}}class Mc extends L{}class Nc extends Mc{}class Pc extends Mc{async _call(e){return new Q(await super._call(e))}}class Fc extends Mc{}class Ic extends L{}class Lc extends Ic{}class Rc extends Ic{async _call(e){return new Q(await super._call(e))}}class zc extends Ic{}class Bc extends L{}class Vc extends Bc{}class Hc extends Bc{async _call(e){return new Q(await super._call(e))}}class Uc extends Bc{}class Wc extends L{}class Gc extends Wc{}class Kc extends Wc{async _call(e){return new Q(await super._call(e))}}class qc extends Wc{}class Jc extends L{}class Yc extends Jc{}class Xc extends L{}class Zc extends Xc{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`pixel_values`,`images_seq_mask`,`images_emb_mask`,`attention_mask`,`position_ids`,`past_key_values`]),this._generation_mode=`text`}async forward(e){let t=this._generation_mode??`text`,n;if(t===`text`||!e.past_key_values){let t=this.sessions.prepare_inputs_embeds,r=(0,c.pick)(e,t.inputNames);n=await k(t,r)}else{let t=this.sessions.gen_img_embeds,r=(0,c.pick)({image_ids:e.input_ids},t.inputNames);n=await k(t,r)}let r={...e,...n},i=await oe(this,r),a=this.sessions[t===`text`?`lm_head`:`gen_head`];if(!a)throw Error(`Unable to find "${a}" generation head`);let o=await k(a,(0,c.pick)(i,a.inputNames));return{...n,...i,...o}}async generate(e){return this._generation_mode=`text`,super.generate(e)}async generate_images(e){this._generation_mode=`image`;let t=(e.inputs??e[this.main_input_name]).dims[1],n=await super.generate(e),r=n.slice(null,[t,null]),i=this.sessions.image_decode,{decoded_image:a}=await k(i,{generated_tokens:r}),o=a.add_(1).mul_(255/2).clamp_(0,255).to(`uint8`),s=[];for(let e of o){let t=m.RawImage.fromTensor(e);s.push(t)}return s}}class Qc extends pe{constructor({char_logits:e,bpe_logits:t,wp_logits:n}){super(),this.char_logits=e,this.bpe_logits=t,this.wp_logits=n}get logits(){return[this.char_logits,this.bpe_logits,this.wp_logits]}}class $c extends L{}class el extends $c{async _call(e){return new Qc(await super._call(e))}}class tl extends L{}class nl extends tl{}class rl extends tl{}class il extends L{}class al extends il{}class ol extends il{}class sl extends L{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`,`position_ids`,`audio_values`,`past_key_values`])}}class cl extends sl{_merge_input_ids_with_audio_features(e){let t=e.audio_features.dims.at(-1),n=e.audio_features.view(-1,t);return le({audio_token_id:this.config.ignore_index,...e,audio_features:n})}}class ll extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`input_values`),e.defineProperty(this,`forward_params`,[`input_values`])}}class ul extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class dl extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class fl extends ll{async encode(e){return new ul(await k(this.sessions.encoder_model,e))}async decode(e){return new dl(await k(this.sessions.decoder_model,e))}}class pl extends ll{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class ml extends ll{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class hl extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`input_values`),e.defineProperty(this,`forward_params`,[`input_values`])}}class gl extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class _l extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class vl extends hl{async encode(e){return new gl(await k(this.sessions.encoder_model,e))}async decode(e){return new _l(await k(this.sessions.decoder_model,e))}}class yl extends hl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class bl extends hl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class xl extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`input_values`),e.defineProperty(this,`forward_params`,[`input_values`])}}class Sl extends xl{async encode(e){return await k(this.sessions.encoder_model,e)}async decode(e){return await k(this.sessions.decoder_model,e)}}class Cl extends xl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class wl extends xl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class Z{static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:l=null,dtype:u=null,use_external_data_format:d=null,session_options:f={}}={}){let p={progress_callback:t,config:n,cache_dir:r,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:l,dtype:u,use_external_data_format:d,session_options:f};if(p.config=await i.AutoConfig.from_pretrained(e,p),!this.MODEL_CLASS_MAPPINGS)throw Error("`MODEL_CLASS_MAPPINGS` not implemented for this type of `AutoClass`: "+this.name);let m=p.config.model_type;for(let t of this.MODEL_CLASS_MAPPINGS){let n=t.get(m);if(!n){for(let e of t.values())if(e[0]===m){n=e;break}if(!n)continue}return await n[1].from_pretrained(e,p)}if(this.BASE_IF_FAIL)return lu.has(m)||console.warn(`Unknown model class "${m}", attempting to construct from base class.`),await L.from_pretrained(e,p);throw Error(`Unsupported model type: ${m}`)}}e.defineProperty(Z,`MODEL_CLASS_MAPPINGS`,null),e.defineProperty(Z,`BASE_IF_FAIL`,!1);let Tl=new Map([[`bert`,[`BertModel`,ge]],[`neobert`,[`NeoBertModel`,xe]],[`modernbert`,[`ModernBertModel`,De]],[`nomic_bert`,[`NomicBertModel`,Me]],[`roformer`,[`RoFormerModel`,z]],[`electra`,[`ElectraModel`,We]],[`esm`,[`EsmModel`,bt]],[`convbert`,[`ConvBertModel`,ze]],[`camembert`,[`CamembertModel`,Xe]],[`deberta`,[`DebertaModel`,nt]],[`deberta-v2`,[`DebertaV2Model`,ct]],[`mpnet`,[`MPNetModel`,At]],[`albert`,[`AlbertModel`,Vt]],[`distilbert`,[`DistilBertModel`,mt]],[`roberta`,[`RobertaModel`,hn]],[`xlm`,[`XLMModel`,bn]],[`xlm-roberta`,[`XLMRobertaModel`,Tn]],[`clap`,[`ClapModel`,pc]],[`clip`,[`CLIPModel`,rr]],[`clipseg`,[`CLIPSegModel`,X]],[`chinese_clip`,[`ChineseCLIPModel`,ur]],[`siglip`,[`SiglipModel`,J]],[`jina_clip`,[`JinaCLIPModel`,dr]],[`mobilebert`,[`MobileBertModel`,Tt]],[`squeezebert`,[`SqueezeBertModel`,It]],[`wav2vec2`,[`Wav2Vec2Model`,gs]],[`wav2vec2-bert`,[`Wav2Vec2BertModel`,Fs]],[`unispeech`,[`UniSpeechModel`,Es]],[`unispeech-sat`,[`UniSpeechSatModel`,As]],[`hubert`,[`HubertModel`,zs]],[`wavlm`,[`WavLMModel`,Us]],[`audio-spectrogram-transformer`,[`ASTModel`,jn]],[`vits`,[`VitsModel`,_c]],[`pyannote`,[`PyAnnoteModel`,xs]],[`wespeaker-resnet`,[`WeSpeakerResNetModel`,ws]],[`detr`,[`DetrModel`,Aa]],[`rt_detr`,[`RTDetrModel`,Ia]],[`rt_detr_v2`,[`RTDetrV2Model`,Ba]],[`rf_detr`,[`RFDetrModel`,Wa]],[`d_fine`,[`DFineModel`,Ja]],[`table-transformer`,[`TableTransformerModel`,Za]],[`vit`,[`ViTModel`,Ki]],[`ijepa`,[`IJepaModel`,Yi]],[`pvt`,[`PvtModel`,ea]],[`vit_msn`,[`ViTMSNModel`,aa]],[`vit_mae`,[`ViTMAEModel`,ra]],[`groupvit`,[`GroupViTModel`,ca]],[`fastvit`,[`FastViTModel`,ua]],[`mobilevit`,[`MobileViTModel`,ha]],[`mobilevitv2`,[`MobileViTV2Model`,va]],[`owlvit`,[`OwlViTModel`,xa]],[`owlv2`,[`Owlv2Model`,wa]],[`beit`,[`BeitModel`,Da]],[`deit`,[`DeiTModel`,to]],[`hiera`,[`HieraModel`,io]],[`convnext`,[`ConvNextModel`,Vo]],[`convnextv2`,[`ConvNextV2Model`,Wo]],[`dinov2`,[`Dinov2Model`,qo]],[`dinov2_with_registers`,[`Dinov2WithRegistersModel`,Xo]],[`resnet`,[`ResNetModel`,so]],[`swin`,[`SwinModel`,uo]],[`swin2sr`,[`Swin2SRModel`,ho]],[`donut-swin`,[`DonutSwinModel`,zo]],[`yolos`,[`YolosModel`,ts]],[`dpt`,[`DPTModel`,vo]],[`glpn`,[`GLPNModel`,Io]],[`hifigan`,[`SpeechT5HifiGan`,ec]],[`efficientnet`,[`EfficientNetModel`,Ec]],[`decision_transformer`,[`DecisionTransformerModel`,Yc]],[`patchtst`,[`PatchTSTForPrediction`,nl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,al]],[`mobilenet_v1`,[`MobileNetV1Model`,Nc]],[`mobilenet_v2`,[`MobileNetV2Model`,Lc]],[`mobilenet_v3`,[`MobileNetV3Model`,Vc]],[`mobilenet_v4`,[`MobileNetV4Model`,Gc]],[`maskformer`,[`MaskFormerModel`,No]],[`mgp-str`,[`MgpstrForSceneTextRecognition`,el]],[`style_text_to_speech_2`,[`StyleTextToSpeech2Model`,Ys]]]),El=new Map([[`t5`,[`T5Model`,Kt]],[`longt5`,[`LongT5Model`,Yt]],[`mt5`,[`MT5Model`,Qt]],[`bart`,[`BartModel`,tn]],[`mbart`,[`MBartModel`,V]],[`marian`,[`MarianModel`,us]],[`whisper`,[`WhisperModel`,Pn]],[`m2m_100`,[`M2M100Model`,ps]],[`blenderbot`,[`BlenderbotModel`,un]],[`blenderbot-small`,[`BlenderbotSmallModel`,pn]]]),Dl=new Map([[`mimi`,[`MimiModel`,fl]],[`dac`,[`DacModel`,vl]],[`snac`,[`SnacModel`,Sl]]]),Ol=new Map([[`bloom`,[`BloomModel`,Li]],[`jais`,[`JAISModel`,br]],[`gpt2`,[`GPT2Model`,_r]],[`gptj`,[`GPTJModel`,kr]],[`gpt_bigcode`,[`GPTBigCodeModel`,Mr]],[`gpt_neo`,[`GPTNeoModel`,Cr]],[`gpt_neox`,[`GPTNeoXModel`,Er]],[`codegen`,[`CodeGenModel`,Fr]],[`llama`,[`LlamaModel`,Rr]],[`exaone`,[`ExaoneModel`,qr]],[`olmo`,[`OlmoModel`,$r]],[`olmo2`,[`Olmo2Model`,ni]],[`mobilellm`,[`MobileLLMModel`,Xr]],[`granite`,[`GraniteModel`,ai]],[`cohere`,[`CohereModel`,ci]],[`gemma`,[`GemmaModel`,di]],[`gemma2`,[`Gemma2Model`,mi]],[`gemma3_text`,[`Gemma3Model`,_i]],[`helium`,[`HeliumModel`,Vr]],[`glm`,[`GlmModel`,Wr]],[`openelm`,[`OpenELMModel`,bi]],[`qwen2`,[`Qwen2Model`,Ci]],[`qwen3`,[`Qwen3Model`,Ei]],[`phi`,[`PhiModel`,ji]],[`phi3`,[`Phi3Model`,Pi]],[`mpt`,[`MptModel`,Bi]],[`opt`,[`OPTModel`,Ui]],[`mistral`,[`MistralModel`,ic]],[`starcoder2`,[`Starcoder2Model`,sc]],[`falcon`,[`FalconModel`,uc]],[`stablelm`,[`StableLmModel`,Cc]]]),kl=new Map([[`speecht5`,[`SpeechT5ForSpeechToText`,Qs]],[`whisper`,[`WhisperForConditionalGeneration`,Fn]],[`lite-whisper`,[`LiteWhisperForConditionalGeneration`,In]],[`moonshine`,[`MoonshineForConditionalGeneration`,zn]]]),Al=new Map([[`speecht5`,[`SpeechT5ForTextToSpeech`,$s]]]),jl=new Map([[`vits`,[`VitsModel`,_c]],[`musicgen`,[`MusicgenForConditionalGeneration`,jc]]]),Ml=new Map([[`bert`,[`BertForSequenceClassification`,ve]],[`neobert`,[`NeoBertForSequenceClassification`,Ce]],[`modernbert`,[`ModernBertForSequenceClassification`,ke]],[`roformer`,[`RoFormerForSequenceClassification`,Fe]],[`electra`,[`ElectraForSequenceClassification`,Ke]],[`esm`,[`EsmForSequenceClassification`,St]],[`convbert`,[`ConvBertForSequenceClassification`,B]],[`camembert`,[`CamembertForSequenceClassification`,Qe]],[`deberta`,[`DebertaForSequenceClassification`,it]],[`deberta-v2`,[`DebertaV2ForSequenceClassification`,ut]],[`mpnet`,[`MPNetForSequenceClassification`,Mt]],[`albert`,[`AlbertForSequenceClassification`,Ht]],[`distilbert`,[`DistilBertForSequenceClassification`,ht]],[`roberta`,[`RobertaForSequenceClassification`,U]],[`xlm`,[`XLMForSequenceClassification`,xn]],[`xlm-roberta`,[`XLMRobertaForSequenceClassification`,Dn]],[`bart`,[`BartForSequenceClassification`,rn]],[`mbart`,[`MBartForSequenceClassification`,sn]],[`mobilebert`,[`MobileBertForSequenceClassification`,Dt]],[`squeezebert`,[`SqueezeBertForSequenceClassification`,Rt]]]),Nl=new Map([[`bert`,[`BertForTokenClassification`,R]],[`neobert`,[`NeoBertForTokenClassification`,we]],[`modernbert`,[`ModernBertForTokenClassification`,Ae]],[`roformer`,[`RoFormerForTokenClassification`,Ie]],[`electra`,[`ElectraForTokenClassification`,qe]],[`esm`,[`EsmForTokenClassification`,Ct]],[`convbert`,[`ConvBertForTokenClassification`,Ve]],[`camembert`,[`CamembertForTokenClassification`,$e]],[`deberta`,[`DebertaForTokenClassification`,at]],[`deberta-v2`,[`DebertaV2ForTokenClassification`,dt]],[`mpnet`,[`MPNetForTokenClassification`,Nt]],[`distilbert`,[`DistilBertForTokenClassification`,gt]],[`roberta`,[`RobertaForTokenClassification`,_n]],[`xlm`,[`XLMForTokenClassification`,Sn]],[`xlm-roberta`,[`XLMRobertaForTokenClassification`,On]]]),Pl=new Map([[`t5`,[`T5ForConditionalGeneration`,qt]],[`longt5`,[`LongT5ForConditionalGeneration`,Xt]],[`mt5`,[`MT5ForConditionalGeneration`,$t]],[`bart`,[`BartForConditionalGeneration`,nn]],[`mbart`,[`MBartForConditionalGeneration`,on]],[`marian`,[`MarianMTModel`,ds]],[`m2m_100`,[`M2M100ForConditionalGeneration`,ms]],[`blenderbot`,[`BlenderbotForConditionalGeneration`,dn]],[`blenderbot-small`,[`BlenderbotSmallForConditionalGeneration`,H]]]),Fl=new Map([[`bloom`,[`BloomForCausalLM`,Ri]],[`gpt2`,[`GPT2LMHeadModel`,vr]],[`jais`,[`JAISLMHeadModel`,xr]],[`gptj`,[`GPTJForCausalLM`,Ar]],[`gpt_bigcode`,[`GPTBigCodeForCausalLM`,Nr]],[`gpt_neo`,[`GPTNeoForCausalLM`,wr]],[`gpt_neox`,[`GPTNeoXForCausalLM`,Dr]],[`codegen`,[`CodeGenForCausalLM`,Ir]],[`llama`,[`LlamaForCausalLM`,zr]],[`exaone`,[`ExaoneForCausalLM`,Jr]],[`olmo`,[`OlmoForCausalLM`,ei]],[`olmo2`,[`Olmo2ForCausalLM`,ri]],[`mobilellm`,[`MobileLLMForCausalLM`,Zr]],[`granite`,[`GraniteForCausalLM`,oi]],[`cohere`,[`CohereForCausalLM`,li]],[`gemma`,[`GemmaForCausalLM`,fi]],[`gemma2`,[`Gemma2ForCausalLM`,hi]],[`gemma3_text`,[`Gemma3ForCausalLM`,vi]],[`helium`,[`HeliumForCausalLM`,Hr]],[`glm`,[`GlmForCausalLM`,Gr]],[`openelm`,[`OpenELMForCausalLM`,xi]],[`qwen2`,[`Qwen2ForCausalLM`,wi]],[`qwen3`,[`Qwen3ForCausalLM`,Di]],[`phi`,[`PhiForCausalLM`,Mi]],[`phi3`,[`Phi3ForCausalLM`,Fi]],[`mpt`,[`MptForCausalLM`,Vi]],[`opt`,[`OPTForCausalLM`,Wi]],[`mbart`,[`MBartForCausalLM`,cn]],[`mistral`,[`MistralForCausalLM`,ac]],[`starcoder2`,[`Starcoder2ForCausalLM`,cc]],[`falcon`,[`FalconForCausalLM`,dc]],[`trocr`,[`TrOCRForCausalLM`,nc]],[`stablelm`,[`StableLmForCausalLM`,wc]],[`phi3_v`,[`Phi3VForCausalLM`,G]]]),Il=new Map([[`multi_modality`,[`MultiModalityCausalLM`,Zc]]]),Ll=new Map([[`bert`,[`BertForMaskedLM`,_e]],[`neobert`,[`NeoBertForMaskedLM`,Se]],[`modernbert`,[`ModernBertForMaskedLM`,Oe]],[`roformer`,[`RoFormerForMaskedLM`,Pe]],[`electra`,[`ElectraForMaskedLM`,Ge]],[`esm`,[`EsmForMaskedLM`,xt]],[`convbert`,[`ConvBertForMaskedLM`,Be]],[`camembert`,[`CamembertForMaskedLM`,Ze]],[`deberta`,[`DebertaForMaskedLM`,rt]],[`deberta-v2`,[`DebertaV2ForMaskedLM`,lt]],[`mpnet`,[`MPNetForMaskedLM`,jt]],[`albert`,[`AlbertForMaskedLM`,Wt]],[`distilbert`,[`DistilBertForMaskedLM`,vt]],[`roberta`,[`RobertaForMaskedLM`,gn]],[`xlm`,[`XLMWithLMHeadModel`,W]],[`xlm-roberta`,[`XLMRobertaForMaskedLM`,En]],[`mobilebert`,[`MobileBertForMaskedLM`,Et]],[`squeezebert`,[`SqueezeBertForMaskedLM`,Lt]]]),Rl=new Map([[`bert`,[`BertForQuestionAnswering`,ye]],[`neobert`,[`NeoBertForQuestionAnswering`,Te]],[`roformer`,[`RoFormerForQuestionAnswering`,Le]],[`electra`,[`ElectraForQuestionAnswering`,Je]],[`convbert`,[`ConvBertForQuestionAnswering`,He]],[`camembert`,[`CamembertForQuestionAnswering`,et]],[`deberta`,[`DebertaForQuestionAnswering`,ot]],[`deberta-v2`,[`DebertaV2ForQuestionAnswering`,ft]],[`mpnet`,[`MPNetForQuestionAnswering`,Pt]],[`albert`,[`AlbertForQuestionAnswering`,Ut]],[`distilbert`,[`DistilBertForQuestionAnswering`,_t]],[`roberta`,[`RobertaForQuestionAnswering`,vn]],[`xlm`,[`XLMForQuestionAnswering`,Cn]],[`xlm-roberta`,[`XLMRobertaForQuestionAnswering`,kn]],[`mobilebert`,[`MobileBertForQuestionAnswering`,Ot]],[`squeezebert`,[`SqueezeBertForQuestionAnswering`,zt]]]),zl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,Bn]],[`idefics3`,[`Idefics3ForConditionalGeneration`,$n]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,er]]]),Bl=new Map([[`llava`,[`LlavaForConditionalGeneration`,Hn]],[`llava_onevision`,[`LlavaOnevisionForConditionalGeneration`,Un]],[`moondream1`,[`Moondream1ForConditionalGeneration`,Wn]],[`florence2`,[`Florence2ForConditionalGeneration`,Kn]],[`qwen2-vl`,[`Qwen2VLForConditionalGeneration`,ki]],[`idefics3`,[`Idefics3ForConditionalGeneration`,$n]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,er]],[`paligemma`,[`PaliGemmaForConditionalGeneration`,Jn]],[`llava_qwen2`,[`LlavaQwen2ForCausalLM`,Yn]],[`gemma3n`,[`Gemma3nForConditionalGeneration`,Zn]]]),Vl=new Map([[`ultravox`,[`UltravoxModel`,cl]]]),Hl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,Bn]]]),Ul=new Map([[`vit`,[`ViTForImageClassification`,qi]],[`ijepa`,[`IJepaForImageClassification`,Xi]],[`pvt`,[`PvtForImageClassification`,ta]],[`vit_msn`,[`ViTMSNForImageClassification`,oa]],[`fastvit`,[`FastViTForImageClassification`,da]],[`mobilevit`,[`MobileViTForImageClassification`,ga]],[`mobilevitv2`,[`MobileViTV2ForImageClassification`,ya]],[`beit`,[`BeitForImageClassification`,Oa]],[`deit`,[`DeiTForImageClassification`,no]],[`hiera`,[`HieraForImageClassification`,ao]],[`convnext`,[`ConvNextForImageClassification`,Ho]],[`convnextv2`,[`ConvNextV2ForImageClassification`,Go]],[`dinov2`,[`Dinov2ForImageClassification`,Jo]],[`dinov2_with_registers`,[`Dinov2WithRegistersForImageClassification`,Zo]],[`resnet`,[`ResNetForImageClassification`,co]],[`swin`,[`SwinForImageClassification`,fo]],[`segformer`,[`SegformerForImageClassification`,bc]],[`efficientnet`,[`EfficientNetForImageClassification`,Dc]],[`mobilenet_v1`,[`MobileNetV1ForImageClassification`,Pc]],[`mobilenet_v2`,[`MobileNetV2ForImageClassification`,Rc]],[`mobilenet_v3`,[`MobileNetV3ForImageClassification`,Hc]],[`mobilenet_v4`,[`MobileNetV4ForImageClassification`,Kc]]]),Wl=new Map([[`detr`,[`DetrForObjectDetection`,ja]],[`rt_detr`,[`RTDetrForObjectDetection`,La]],[`rt_detr_v2`,[`RTDetrV2ForObjectDetection`,Va]],[`rf_detr`,[`RFDetrForObjectDetection`,Ga]],[`d_fine`,[`DFineForObjectDetection`,Ya]],[`table-transformer`,[`TableTransformerForObjectDetection`,Qa]],[`yolos`,[`YolosForObjectDetection`,ns]]]),Gl=new Map([[`owlvit`,[`OwlViTForObjectDetection`,Sa]],[`owlv2`,[`Owlv2ForObjectDetection`,Ta]],[`grounding-dino`,[`GroundingDinoForObjectDetection`,$o]]]),Kl=new Map([[`detr`,[`DetrForSegmentation`,Ma]],[`clipseg`,[`CLIPSegForImageSegmentation`,hr]]]),ql=new Map([[`segformer`,[`SegformerForSemanticSegmentation`,xc]],[`sapiens`,[`SapiensForSemanticSegmentation`,Co]],[`swin`,[`SwinForSemanticSegmentation`,po]],[`mobilenet_v1`,[`MobileNetV1ForSemanticSegmentation`,Fc]],[`mobilenet_v2`,[`MobileNetV2ForSemanticSegmentation`,zc]],[`mobilenet_v3`,[`MobileNetV3ForSemanticSegmentation`,Uc]],[`mobilenet_v4`,[`MobileNetV4ForSemanticSegmentation`,qc]]]),Jl=new Map([[`detr`,[`DetrForSegmentation`,Ma]],[`maskformer`,[`MaskFormerForInstanceSegmentation`,Po]]]),Yl=new Map([[`sam`,[`SamModel`,ss]]]),Xl=new Map([[`wav2vec2`,[`Wav2Vec2ForCTC`,_s]],[`wav2vec2-bert`,[`Wav2Vec2BertForCTC`,Is]],[`unispeech`,[`UniSpeechForCTC`,Ds]],[`unispeech-sat`,[`UniSpeechSatForCTC`,js]],[`wavlm`,[`WavLMForCTC`,Ws]],[`hubert`,[`HubertForCTC`,Bs]]]),Zl=new Map([[`wav2vec2`,[`Wav2Vec2ForSequenceClassification`,vs]],[`wav2vec2-bert`,[`Wav2Vec2BertForSequenceClassification`,Ls]],[`unispeech`,[`UniSpeechForSequenceClassification`,Os]],[`unispeech-sat`,[`UniSpeechSatForSequenceClassification`,Ms]],[`wavlm`,[`WavLMForSequenceClassification`,Gs]],[`hubert`,[`HubertForSequenceClassification`,Vs]],[`audio-spectrogram-transformer`,[`ASTForAudioClassification`,Mn]]]),Ql=new Map([[`wavlm`,[`WavLMForXVector`,Ks]]]),$l=new Map([[`unispeech-sat`,[`UniSpeechSatForAudioFrameClassification`,Ns]],[`wavlm`,[`WavLMForAudioFrameClassification`,qs]],[`wav2vec2`,[`Wav2Vec2ForAudioFrameClassification`,ys]],[`pyannote`,[`PyAnnoteForAudioFrameClassification`,Ss]]]),eu=new Map([[`vitmatte`,[`VitMatteForImageMatting`,pa]]]),tu=new Map([[`patchtst`,[`PatchTSTForPrediction`,rl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,ol]]]),nu=new Map([[`swin2sr`,[`Swin2SRForImageSuperResolution`,go]]]),ru=new Map([[`dpt`,[`DPTForDepthEstimation`,yo]],[`depth_anything`,[`DepthAnythingForDepthEstimation`,xo]],[`glpn`,[`GLPNForDepthEstimation`,Lo]],[`sapiens`,[`SapiensForDepthEstimation`,wo]],[`depth_pro`,[`DepthProForDepthEstimation`,Do]],[`metric3d`,[`Metric3DForDepthEstimation`,ko]],[`metric3dv2`,[`Metric3Dv2ForDepthEstimation`,jo]]]),iu=new Map([[`sapiens`,[`SapiensForNormalEstimation`,To]]]),au=new Map([[`vitpose`,[`VitPoseForPoseEstimation`,Qi]]]),ou=new Map([[`clip`,[`CLIPVisionModelWithProjection`,or]],[`siglip`,[`SiglipVisionModel`,cr]],[`jina_clip`,[`JinaCLIPVisionModel`,pr]]]),su=[[Tl,x.EncoderOnly],[El,x.EncoderDecoder],[Ol,x.DecoderOnly],[Dl,x.AutoEncoder],[Ml,x.EncoderOnly],[Nl,x.EncoderOnly],[Pl,x.Seq2Seq],[kl,x.Seq2Seq],[Fl,x.DecoderOnly],[Il,x.MultiModality],[Ll,x.EncoderOnly],[Rl,x.EncoderOnly],[zl,x.Vision2Seq],[Bl,x.ImageTextToText],[Vl,x.AudioTextToText],[Ul,x.EncoderOnly],[Kl,x.EncoderOnly],[Jl,x.EncoderOnly],[ql,x.EncoderOnly],[eu,x.EncoderOnly],[tu,x.EncoderOnly],[nu,x.EncoderOnly],[ru,x.EncoderOnly],[iu,x.EncoderOnly],[au,x.EncoderOnly],[Wl,x.EncoderOnly],[Gl,x.EncoderOnly],[Yl,x.MaskGeneration],[Xl,x.EncoderOnly],[Zl,x.EncoderOnly],[Al,x.Seq2Seq],[jl,x.EncoderOnly],[Ql,x.EncoderOnly],[$l,x.EncoderOnly],[ou,x.EncoderOnly]];for(let[e,t]of su)for(let[n,r]of e.values())S.set(n,t),w.set(r,n),C.set(n,r);let cu=[[`MusicgenForConditionalGeneration`,jc,x.Musicgen],[`Phi3VForCausalLM`,G,x.Phi3V],[`CLIPTextModelWithProjection`,ar,x.EncoderOnly],[`SiglipTextModel`,sr,x.EncoderOnly],[`JinaCLIPTextModel`,fr,x.EncoderOnly],[`ClapTextModelWithProjection`,mc,x.EncoderOnly],[`ClapAudioModelWithProjection`,hc,x.EncoderOnly],[`DacEncoderModel`,yl,x.EncoderOnly],[`DacDecoderModel`,bl,x.EncoderOnly],[`MimiEncoderModel`,pl,x.EncoderOnly],[`MimiDecoderModel`,ml,x.EncoderOnly],[`SnacEncoderModel`,Cl,x.EncoderOnly],[`SnacDecoderModel`,wl,x.EncoderOnly],[`Gemma3nForConditionalGeneration`,Zn,x.ImageAudioTextToText]];for(let[e,t,n]of cu)S.set(e,n),w.set(t,e),C.set(e,t);let lu=new Map([[`modnet`,Kl],[`birefnet`,Kl],[`isnet`,Kl],[`ben`,Kl]]);for(let[e,t]of lu.entries())t.set(e,[`PreTrainedModel`,L]),S.set(e,x.EncoderOnly),w.set(L,e),C.set(e,L);class uu extends Z{}e.defineProperty(uu,`MODEL_CLASS_MAPPINGS`,su.map(e=>e[0])),e.defineProperty(uu,`BASE_IF_FAIL`,!0);class du extends Z{}e.defineProperty(du,`MODEL_CLASS_MAPPINGS`,[Ml]);class fu extends Z{}e.defineProperty(fu,`MODEL_CLASS_MAPPINGS`,[Nl]);class pu extends Z{}e.defineProperty(pu,`MODEL_CLASS_MAPPINGS`,[Pl]);class mu extends Z{}e.defineProperty(mu,`MODEL_CLASS_MAPPINGS`,[kl]);class hu extends Z{}e.defineProperty(hu,`MODEL_CLASS_MAPPINGS`,[Al]);class gu extends Z{}e.defineProperty(gu,`MODEL_CLASS_MAPPINGS`,[jl]);class _u extends Z{}e.defineProperty(_u,`MODEL_CLASS_MAPPINGS`,[Fl]);class vu extends Z{}e.defineProperty(vu,`MODEL_CLASS_MAPPINGS`,[Ll]);class yu extends Z{}e.defineProperty(yu,`MODEL_CLASS_MAPPINGS`,[Rl]);class bu extends Z{}e.defineProperty(bu,`MODEL_CLASS_MAPPINGS`,[zl]);class xu extends Z{}e.defineProperty(xu,`MODEL_CLASS_MAPPINGS`,[Ul]);class Su extends Z{}e.defineProperty(Su,`MODEL_CLASS_MAPPINGS`,[Kl]);class Cu extends Z{}e.defineProperty(Cu,`MODEL_CLASS_MAPPINGS`,[ql]);class wu extends Z{}e.defineProperty(wu,`MODEL_CLASS_MAPPINGS`,[Jl]);class Tu extends Z{}e.defineProperty(Tu,`MODEL_CLASS_MAPPINGS`,[Wl]);class Eu extends Z{}e.defineProperty(Eu,`MODEL_CLASS_MAPPINGS`,[Gl]);class Du extends Z{}e.defineProperty(Du,`MODEL_CLASS_MAPPINGS`,[Yl]);class Ou extends Z{}e.defineProperty(Ou,`MODEL_CLASS_MAPPINGS`,[Xl]);class ku extends Z{}e.defineProperty(ku,`MODEL_CLASS_MAPPINGS`,[Zl]);class Au extends Z{}e.defineProperty(Au,`MODEL_CLASS_MAPPINGS`,[Ql]);class ju extends Z{}e.defineProperty(ju,`MODEL_CLASS_MAPPINGS`,[$l]);class Mu extends Z{}e.defineProperty(Mu,`MODEL_CLASS_MAPPINGS`,[Hl]);class Nu extends Z{}e.defineProperty(Nu,`MODEL_CLASS_MAPPINGS`,[eu]);class Pu extends Z{}e.defineProperty(Pu,`MODEL_CLASS_MAPPINGS`,[nu]);class Fu extends Z{}e.defineProperty(Fu,`MODEL_CLASS_MAPPINGS`,[ru]);class Iu extends Z{}e.defineProperty(Iu,`MODEL_CLASS_MAPPINGS`,[iu]);class Lu extends Z{}e.defineProperty(Lu,`MODEL_CLASS_MAPPINGS`,[au]);class Ru extends Z{}e.defineProperty(Ru,`MODEL_CLASS_MAPPINGS`,[ou]);class zu extends Z{}e.defineProperty(zu,`MODEL_CLASS_MAPPINGS`,[Bl]);class Bu extends Z{}e.defineProperty(Bu,`MODEL_CLASS_MAPPINGS`,[Vl]);class Vu extends pe{constructor({logits:e,past_key_values:t,encoder_outputs:n,decoder_attentions:r=null,cross_attentions:i=null}){super(),this.logits=e,this.past_key_values=t,this.encoder_outputs=n,this.decoder_attentions=r,this.cross_attentions=i}}class Q extends pe{constructor({logits:e,...t}){super(),this.logits=e;let n=Object.values(t);n.length>0&&(this.attentions=n)}}class Hu extends pe{constructor({logits:e,embeddings:t}){super(),this.logits=e,this.embeddings=t}}class Uu extends pe{constructor({logits:e}){super(),this.logits=e}}class Wu extends pe{constructor({logits:e}){super(),this.logits=e}}class Gu extends pe{constructor({start_logits:e,end_logits:t}){super(),this.start_logits=e,this.end_logits=t}}class Ku extends pe{constructor({logits:e}){super(),this.logits=e}}class qu extends pe{constructor({logits:e,past_key_values:t}){super(),this.logits=e,this.past_key_values=t}}class Ju extends pe{constructor({alphas:e}){super(),this.alphas=e}}class Yu extends pe{constructor({waveform:e,spectrogram:t}){super(),this.waveform=e,this.spectrogram=t}}},"./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hann`,{periodic:!1}),this.mean=this.config.mean,this.std=this.config.std}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e){(0,r.validate_audio_inputs)(e,`ASTFeatureExtractor`);let t=await this._extract_fbank_features(e,this.config.max_length);if(this.config.do_normalize){let e=this.std*2,n=t.data;for(let t=0;t{n.r(t),n.d(t,{AutoFeatureExtractor:()=>s});var r=n( -/*! ../../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../../utils/hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),o=n( -/*! ../feature_extractors.js */ -`./src/models/feature_extractors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t),a=n.feature_extractor_type,s=o[a];if(!s)throw Error(`Unknown feature_extractor_type: '${a}'. Please report this at ${r.GITHUB_ISSUE_URL}.`);return new s(n)}}},"./src/models/auto/image_processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoImageProcessor:()=>s});var r=n( -/*! ../../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../../utils/hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),o=n( -/*! ../image_processors.js */ -`./src/models/image_processors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),s=n.image_processor_type??n.feature_extractor_type,c=o[s?.replace(/Fast$/,``)];return c||(s!==void 0&&console.warn(`Image processor type '${s}' not found, assuming base ImageProcessor. Please report this at ${r.GITHUB_ISSUE_URL}.`),c=a.ImageProcessor),new c(n)}}},"./src/models/auto/processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoProcessor:()=>l});var r=n( -/*! ../../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../../utils/hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),o=n( -/*! ../processors.js */ -`./src/models/processors.js`),s=n( -/*! ../image_processors.js */ -`./src/models/image_processors.js`),c=n( -/*! ../feature_extractors.js */ -`./src/models/feature_extractors.js`);class l{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),{image_processor_type:l,feature_extractor_type:u,processor_class:d}=n;if(d&&o[d])return o[d].from_pretrained(e,t);if(!l&&!u)throw Error("No `image_processor_type` or `feature_extractor_type` found in the config.");let f={};if(l){let e=s[l.replace(/Fast$/,``)];if(!e)throw Error(`Unknown image_processor_type: '${l}'.`);f.image_processor=new e(n)}if(u){let e=s[u];if(e)f.image_processor=new e(n);else{let e=c[u];if(!e)throw Error(`Unknown feature_extractor_type: '${u}'.`);f.feature_extractor=new e(n)}}let p={};return new a.Processor(p,f,null)}}},"./src/models/beit/image_processing_beit.js":(e,t,n)=>{n.r(t),n.d(t,{BeitFeatureExtractor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/bit/image_processing_bit.js":(e,t,n)=>{n.r(t),n.d(t,{BitImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/chinese_clip/image_processing_chinese_clip.js":(e,t,n)=>{n.r(t),n.d(t,{ChineseCLIPFeatureExtractor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/clap/feature_extraction_clap.js":(e,t,n)=>{n.r(t),n.d(t,{ClapFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e),this.mel_filters=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,null,`htk`),this.mel_filters_slaney=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,`slaney`,`slaney`),this.window=(0,a.window_function)(this.config.fft_window_size,`hann`)}async _get_input_mel(e,t,n,r){let i,a=!1,o=e.length-t;if(o>0)if(n===`rand_trunc`){a=!0;let n=Math.floor(Math.random()*(o+1));e=e.subarray(n,n+t),i=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}else throw Error(`Truncation strategy "${n}" not implemented`);else{if(o<0){let n=new Float64Array(t);if(n.set(e),r===`repeat`)for(let r=e.length;r{n.r(t),n.d(t,{CLIPFeatureExtractor:()=>a,CLIPImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/convnext/image_processing_convnext.js":(e,t,n)=>{n.r(t),n.d(t,{ConvNextFeatureExtractor:()=>a,ConvNextImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.crop_pct=this.config.crop_pct??224/256}async resize(e){var t;let n=(t=this.size)?.shortest_edge;if(n===void 0)throw Error(`Size dictionary must contain 'shortest_edge' key.`);if(n<384){let t=Math.floor(n/this.crop_pct),[r,i]=this.get_resize_output_image_size(e,{shortest_edge:t});e=await e.resize(r,i,{resample:this.resample}),e=await e.center_crop(n,n)}else e=await e.resize(n,n,{resample:this.resample});return e}}class a extends i{}},"./src/models/dac/feature_extraction_dac.js":(e,t,n)=>{n.r(t),n.d(t,{DacFeatureExtractor:()=>i});var r=n( -/*! ../encodec/feature_extraction_encodec.js */ -`./src/models/encodec/feature_extraction_encodec.js`);class i extends r.EncodecFeatureExtractor{}},"./src/models/deit/image_processing_deit.js":(e,t,n)=>{n.r(t),n.d(t,{DeiTFeatureExtractor:()=>a,DeiTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/detr/image_processing_detr.js":(e,t,n)=>{n.r(t),n.d(t,{DetrFeatureExtractor:()=>o,DetrImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=[t.pixel_values.dims[0],64,64],r=(0,i.full)(n,1n);return{...t,pixel_mask:r}}post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class o extends a{}},"./src/models/donut/image_processing_donut.js":(e,t,n)=>{n.r(t),n.d(t,{DonutFeatureExtractor:()=>a,DonutImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t,s=this.image_mean;Array.isArray(this.image_mean)||(s=Array(o).fill(s));let c=this.image_std;Array.isArray(c)||(c=Array(o).fill(s));let l=s.map((e,t)=>-e/c[t]);return super.pad_image(e,t,n,{center:!0,constant_values:l,...r})}}class a extends i{}},"./src/models/dpt/image_processing_dpt.js":(e,t,n)=>{n.r(t),n.d(t,{DPTFeatureExtractor:()=>a,DPTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/efficientnet/image_processing_efficientnet.js":(e,t,n)=>{n.r(t),n.d(t,{EfficientNetImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.include_top=this.config.include_top??!0,this.include_top&&(this.image_std=this.image_std.map(e=>e*e))}}},"./src/models/encodec/feature_extraction_encodec.js":(e,t,n)=>{n.r(t),n.d(t,{EncodecFeatureExtractor:()=>a});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`EncodecFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=this.config.feature_size;if(e.length%t!==0)throw Error(`The length of the audio data must be a multiple of the number of channels (${t}).`);let n=[1,t,e.length/t];return{input_values:new i.Tensor(`float32`,e,n)}}}},"./src/models/feature_extractors.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>r.ASTFeatureExtractor,ClapFeatureExtractor:()=>a.ClapFeatureExtractor,DacFeatureExtractor:()=>o.DacFeatureExtractor,EncodecFeatureExtractor:()=>i.EncodecFeatureExtractor,Gemma3nAudioFeatureExtractor:()=>s.Gemma3nAudioFeatureExtractor,ImageFeatureExtractor:()=>g.ImageProcessor,MoonshineFeatureExtractor:()=>c.MoonshineFeatureExtractor,PyAnnoteFeatureExtractor:()=>l.PyAnnoteFeatureExtractor,SeamlessM4TFeatureExtractor:()=>u.SeamlessM4TFeatureExtractor,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SpeechT5FeatureExtractor:()=>f.SpeechT5FeatureExtractor,Wav2Vec2FeatureExtractor:()=>p.Wav2Vec2FeatureExtractor,WeSpeakerFeatureExtractor:()=>m.WeSpeakerFeatureExtractor,WhisperFeatureExtractor:()=>h.WhisperFeatureExtractor});var r=n( -/*! ./audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js */ -`./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js`),i=n( -/*! ./encodec/feature_extraction_encodec.js */ -`./src/models/encodec/feature_extraction_encodec.js`),a=n( -/*! ./clap/feature_extraction_clap.js */ -`./src/models/clap/feature_extraction_clap.js`),o=n( -/*! ./dac/feature_extraction_dac.js */ -`./src/models/dac/feature_extraction_dac.js`),s=n( -/*! ./gemma3n/feature_extraction_gemma3n.js */ -`./src/models/gemma3n/feature_extraction_gemma3n.js`),c=n( -/*! ./moonshine/feature_extraction_moonshine.js */ -`./src/models/moonshine/feature_extraction_moonshine.js`),l=n( -/*! ./pyannote/feature_extraction_pyannote.js */ -`./src/models/pyannote/feature_extraction_pyannote.js`),u=n( -/*! ./seamless_m4t/feature_extraction_seamless_m4t.js */ -`./src/models/seamless_m4t/feature_extraction_seamless_m4t.js`),d=n( -/*! ./snac/feature_extraction_snac.js */ -`./src/models/snac/feature_extraction_snac.js`),f=n( -/*! ./speecht5/feature_extraction_speecht5.js */ -`./src/models/speecht5/feature_extraction_speecht5.js`),p=n( -/*! ./wav2vec2/feature_extraction_wav2vec2.js */ -`./src/models/wav2vec2/feature_extraction_wav2vec2.js`),m=n( -/*! ./wespeaker/feature_extraction_wespeaker.js */ -`./src/models/wespeaker/feature_extraction_wespeaker.js`),h=n( -/*! ./whisper/feature_extraction_whisper.js */ -`./src/models/whisper/feature_extraction_whisper.js`),g=n( -/*! ../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`)},"./src/models/florence2/processing_florence2.js":(t,n,r)=>{r.r(n),r.d(n,{Florence2Processor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{constructor(e,t,n){super(e,t,n);let{tasks_answer_post_processing_type:r,task_prompts_without_inputs:i,task_prompts_with_input:a}=this.image_processor.config;this.tasks_answer_post_processing_type=new Map(Object.entries(r??{})),this.task_prompts_without_inputs=new Map(Object.entries(i??{})),this.task_prompts_with_input=new Map(Object.entries(a??{})),this.regexes={quad_boxes:/(.+?)/gm,bboxes:/([^<]+)?/gm},this.size_per_bin=1e3}construct_prompts(e){typeof e==`string`&&(e=[e]);let t=[];for(let n of e)if(this.task_prompts_without_inputs.has(n))t.push(this.task_prompts_without_inputs.get(n));else{for(let[e,r]of this.task_prompts_with_input)if(n.includes(e)){t.push(r.replaceAll(`{input}`,n).replaceAll(e,``));break}t.length!==e.length&&t.push(n)}return t}post_process_generation(e,t,n){let r=this.tasks_answer_post_processing_type.get(t)??`pure_text`;e=e.replaceAll(``,``).replaceAll(``,``);let i;switch(r){case`pure_text`:i=e;break;case`description_with_bboxes`:case`bboxes`:case`phrase_grounding`:case`ocr`:let a=r===`ocr`?`quad_boxes`:`bboxes`,o=e.matchAll(this.regexes[a]),s=[],c=[];for(let[e,t,...r]of o)s.push(t?t.trim():s.at(-1)??``),c.push(r.map((e,t)=>(Number(e)+.5)/this.size_per_bin*n[t%2]));i={labels:s,[a]:c};break;default:throw Error(`Task "${t}" (of type "${r}") not yet implemented.`)}return{[t]:i}}async _call(e,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=await this.image_processor(e,n),i=t?this.tokenizer(this.construct_prompts(t),n):{};return{...r,...i}}}e.defineProperty(s,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(s,`image_processor_class`,a.AutoImageProcessor)},"./src/models/gemma3n/feature_extraction_gemma3n.js":(e,t,n)=>{n.r(t),n.d(t,{Gemma3nAudioFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let{fft_length:t,feature_size:n,min_frequency:r,max_frequency:i,sampling_rate:o,frame_length:s}=this.config,c=(0,a.mel_filter_bank)(Math.floor(1+t/2),n,r,i,o,null,`htk`,!1);this.mel_filters=c,this.window=(0,a.window_function)(s,`hann`)}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,this.config.frame_length,this.config.hop_length,{fft_length:this.config.fft_length,center:!1,onesided:!0,preemphasis:this.config.preemphasis,preemphasis_htk_flavor:this.config.preemphasis_htk_flavor,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:this.config.mel_floor,remove_dc_offset:!1,transpose:!0})}async _call(e,{max_length:t=48e4,truncation:n=!0,padding:a=!0,pad_to_multiple_of:o=128}={}){if((0,r.validate_audio_inputs)(e,`Gemma3nAudioFeatureExtractor`),n&&e.length>t&&(e=e.slice(0,t)),a&&e.length%o!==0){let t=o-e.length%o,n=new Float64Array(e.length+t);n.set(e),this.config.padding_value!==0&&n.fill(this.config.padding_value,e.length),e=n}let s=await this._extract_fbank_features(e,this.config.max_length),c=(0,i.full)([1,s.dims[0]],!0);return{input_features:s.unsqueeze_(0),input_features_mask:c}}}},"./src/models/gemma3n/processing_gemma3n.js":(t,n,r)=>{r.r(n),r.d(n,{Gemma3nProcessor:()=>u});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),s=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),c=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`),l=r( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class u extends i.Processor{constructor(e,t,n){super(e,t,n),this.audio_seq_length=this.config.audio_seq_length,this.image_seq_length=this.config.image_seq_length;let{audio_token_id:r,boa_token:i,audio_token:a,eoa_token:o,image_token_id:s,boi_token:c,image_token:l,eoi_token:u}=this.tokenizer.config;this.audio_token_id=r,this.boa_token=i,this.audio_token=a;let d=a.repeat(this.audio_seq_length);this.full_audio_sequence=`\n\n${i}${d}${o}\n\n`,this.image_token_id=s,this.boi_token=c,this.image_token=l;let f=l.repeat(this.image_seq_length);this.full_image_sequence=`\n\n${c}${f}${u}\n\n`}async _call(e,t=null,n=null,r={}){typeof e==`string`&&(e=[e]);let i;n&&(i=await this.feature_extractor(n,r),e=e.map(e=>e.replaceAll(this.audio_token,this.full_audio_sequence)));let a;t&&(a=await this.image_processor(t,r),e=e.map(e=>e.replaceAll(this.image_token,this.full_image_sequence)));let o=this.tokenizer(e,r);return{...o,...a,...i}}}e.defineProperty(u,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(u,`feature_extractor_class`,o.AutoFeatureExtractor),e.defineProperty(u,`tokenizer_class`,s.AutoTokenizer),e.defineProperty(u,`uses_processor_config`,!0),e.defineProperty(u,`uses_chat_template_file`,!0)},"./src/models/glpn/image_processing_glpn.js":(e,t,n)=>{n.r(t),n.d(t,{GLPNFeatureExtractor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/grounding_dino/image_processing_grounding_dino.js":(e,t,n)=>{n.r(t),n.d(t,{GroundingDinoImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=t.pixel_values.dims,r=(0,i.ones)([n[0],n[2],n[3]]);return{...t,pixel_mask:r}}}},"./src/models/grounding_dino/processing_grounding_dino.js":(t,n,r)=>{r.r(n),r.d(n,{GroundingDinoProcessor:()=>l});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);function c(e,t){let n=0,r=e.dims.at(-1)-1,i=e.tolist();i.fill(!1,0,n+1),i.fill(!1,r);let a=t.tolist();return i.map((e,t)=>e?t:null).filter(e=>e!==null).map(e=>a[e])}class l extends i.Processor{async _call(e,t,n={}){let r=e?await this.image_processor(e,n):{},i=t?this.tokenizer(t,n):{};return{...i,...r}}post_process_grounded_object_detection(e,t,{box_threshold:n=.25,text_threshold:r=.25,target_sizes:i=null}={}){let{logits:a,pred_boxes:o}=e,l=a.dims[0];if(i!==null&&i.length!==l)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let u=a.dims.at(1),d=a.sigmoid(),f=d.max(-1).tolist(),p=o.tolist().map(e=>e.map(e=>(0,s.center_to_corners_format)(e))),m=[];for(let e=0;ee.map((e,t)=>e*a[(t+1)%2])));let o=f[e],s=[],l=[],h=[];for(let i=0;i{n.r(t),n.d(t,{Idefics3ImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{constructor(e){super(e),this.do_image_splitting=e.do_image_splitting??!0,this.max_image_size=e.max_image_size}get_resize_for_vision_encoder(e,t){let[n,r]=e.dims.slice(-2),i=r/n;return r>=n?(r=Math.ceil(r/t)*t,n=Math.floor(r/i),n=Math.ceil(n/t)*t):(n=Math.ceil(n/t)*t,r=Math.floor(n*i),r=Math.ceil(r/t)*t),{height:n,width:r}}async _call(e,{do_image_splitting:t=null,return_row_col_info:n=!1}={}){let r;if(!Array.isArray(e))r=[[e]];else{if(e.length===0||!e[0])throw Error(`No images provided.`);r=Array.isArray(e[0])?e:[e]}let a=[],o=[],s=[],c=[],l=[];for(let e of r){let n=await Promise.all(e.map(e=>this.preprocess(e)));c.push(...n.map(e=>e.original_size)),l.push(...n.map(e=>e.reshaped_input_size)),n.forEach(e=>e.pixel_values.unsqueeze_(0));let{longest_edge:r}=this.max_image_size,u;if(t??this.do_image_splitting){let e=Array(n.length),t=Array(n.length);u=await Promise.all(n.map(async(n,a)=>{let o=this.get_resize_for_vision_encoder(n.pixel_values,r),s=await(0,i.interpolate_4d)(n.pixel_values,{size:[o.height,o.width]}),{frames:c,num_splits_h:l,num_splits_w:u}=await this.split_image(s,this.max_image_size);return e[a]=l,t[a]=u,(0,i.cat)(c,0)})),o.push(e),s.push(t)}else{let e=[r,r];u=await Promise.all(n.map(t=>(0,i.interpolate_4d)(t.pixel_values,{size:e}))),o.push(Array(n.length).fill(0)),s.push(Array(n.length).fill(0))}a.push((0,i.cat)(u,0))}let u=a.length,[d,f,p,m]=a[0].dims,h,g;if(u===1)h=a[0].unsqueeze_(0),g=(0,i.full)([u,d,p,m],!0);else{let e=Math.max(...a.map(e=>e.dims.at(0)));g=(0,i.full)([u,e,p,m],!0);let t=g.data,n=e*p*m;for(let r=0;rn||s>r){c=Math.ceil(o/n),l=Math.ceil(s/r);let t=Math.ceil(o/c),u=Math.ceil(s/l);for(let n=0;n{r.r(n),r.d(n,{Idefics3Processor:()=>f});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`),c=r( -/*! ../../utils/core.js */ -`./src/utils/core.js`);function l(e,t,n,r,i,a){let o=``;for(let a=0;a`+i.repeat(e);o+=` -`}return o+=`\n${r}${a}`+i.repeat(e)+`${r}`,o}function u(e,t,n,r){return`${t}${r}`+n.repeat(e)+`${t}`}function d(e,t,n,r,i,a){return e===0&&t===0?u(n,r,i,a):l(n,e,t,r,i,a)}class f extends i.Processor{constructor(...t){super(...t),e.defineProperty(this,`fake_image_token`,``),e.defineProperty(this,`image_token`,``),e.defineProperty(this,`global_img_token`,``)}async _call(e,t=null,n={}){n.return_row_col_info??=!0;let r;t&&(r=await this.image_processor(t,n)),Array.isArray(e)||(e=[e]);let i=r.rows??[Array(e.length).fill(0)],a=r.cols??[Array(e.length).fill(0)],o=this.config.image_seq_len,s=[],l=[];for(let t=0;td(e,u[t],o,this.fake_image_token,this.image_token,this.global_img_token)),p=n.split(this.image_token);if(p.length===0)throw Error(`The image token should be present in the text.`);let m=p[0];for(let e=0;e{n.r(t),n.d(t,{BeitFeatureExtractor:()=>r.BeitFeatureExtractor,BitImageProcessor:()=>i.BitImageProcessor,CLIPFeatureExtractor:()=>o.CLIPFeatureExtractor,CLIPImageProcessor:()=>o.CLIPImageProcessor,ChineseCLIPFeatureExtractor:()=>a.ChineseCLIPFeatureExtractor,ConvNextFeatureExtractor:()=>s.ConvNextFeatureExtractor,ConvNextImageProcessor:()=>s.ConvNextImageProcessor,DPTFeatureExtractor:()=>d.DPTFeatureExtractor,DPTImageProcessor:()=>d.DPTImageProcessor,DeiTFeatureExtractor:()=>c.DeiTFeatureExtractor,DeiTImageProcessor:()=>c.DeiTImageProcessor,DetrFeatureExtractor:()=>l.DetrFeatureExtractor,DetrImageProcessor:()=>l.DetrImageProcessor,DonutFeatureExtractor:()=>u.DonutFeatureExtractor,DonutImageProcessor:()=>u.DonutImageProcessor,EfficientNetImageProcessor:()=>f.EfficientNetImageProcessor,GLPNFeatureExtractor:()=>p.GLPNFeatureExtractor,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,Idefics3ImageProcessor:()=>h.Idefics3ImageProcessor,JinaCLIPImageProcessor:()=>_.JinaCLIPImageProcessor,LlavaOnevisionImageProcessor:()=>v.LlavaOnevisionImageProcessor,Mask2FormerImageProcessor:()=>y.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>b.MaskFormerFeatureExtractor,MaskFormerImageProcessor:()=>b.MaskFormerImageProcessor,MobileNetV1FeatureExtractor:()=>x.MobileNetV1FeatureExtractor,MobileNetV1ImageProcessor:()=>x.MobileNetV1ImageProcessor,MobileNetV2FeatureExtractor:()=>S.MobileNetV2FeatureExtractor,MobileNetV2ImageProcessor:()=>S.MobileNetV2ImageProcessor,MobileNetV3FeatureExtractor:()=>C.MobileNetV3FeatureExtractor,MobileNetV3ImageProcessor:()=>C.MobileNetV3ImageProcessor,MobileNetV4FeatureExtractor:()=>w.MobileNetV4FeatureExtractor,MobileNetV4ImageProcessor:()=>w.MobileNetV4ImageProcessor,MobileViTFeatureExtractor:()=>T.MobileViTFeatureExtractor,MobileViTImageProcessor:()=>T.MobileViTImageProcessor,NougatImageProcessor:()=>E.NougatImageProcessor,OwlViTFeatureExtractor:()=>O.OwlViTFeatureExtractor,OwlViTImageProcessor:()=>O.OwlViTImageProcessor,Owlv2ImageProcessor:()=>D.Owlv2ImageProcessor,Phi3VImageProcessor:()=>ee.Phi3VImageProcessor,PvtImageProcessor:()=>k.PvtImageProcessor,Qwen2VLImageProcessor:()=>te.Qwen2VLImageProcessor,RTDetrImageProcessor:()=>ne.RTDetrImageProcessor,SamImageProcessor:()=>re.SamImageProcessor,SegformerFeatureExtractor:()=>ie.SegformerFeatureExtractor,SegformerImageProcessor:()=>ie.SegformerImageProcessor,SiglipImageProcessor:()=>A.SiglipImageProcessor,SmolVLMImageProcessor:()=>ae.SmolVLMImageProcessor,Swin2SRImageProcessor:()=>oe.Swin2SRImageProcessor,VLMImageProcessor:()=>g.VLMImageProcessor,ViTFeatureExtractor:()=>se.ViTFeatureExtractor,ViTImageProcessor:()=>se.ViTImageProcessor,VitMatteImageProcessor:()=>ce.VitMatteImageProcessor,VitPoseImageProcessor:()=>le.VitPoseImageProcessor,YolosFeatureExtractor:()=>j.YolosFeatureExtractor,YolosImageProcessor:()=>j.YolosImageProcessor});var r=n( -/*! ./beit/image_processing_beit.js */ -`./src/models/beit/image_processing_beit.js`),i=n( -/*! ./bit/image_processing_bit.js */ -`./src/models/bit/image_processing_bit.js`),a=n( -/*! ./chinese_clip/image_processing_chinese_clip.js */ -`./src/models/chinese_clip/image_processing_chinese_clip.js`),o=n( -/*! ./clip/image_processing_clip.js */ -`./src/models/clip/image_processing_clip.js`),s=n( -/*! ./convnext/image_processing_convnext.js */ -`./src/models/convnext/image_processing_convnext.js`),c=n( -/*! ./deit/image_processing_deit.js */ -`./src/models/deit/image_processing_deit.js`),l=n( -/*! ./detr/image_processing_detr.js */ -`./src/models/detr/image_processing_detr.js`),u=n( -/*! ./donut/image_processing_donut.js */ -`./src/models/donut/image_processing_donut.js`),d=n( -/*! ./dpt/image_processing_dpt.js */ -`./src/models/dpt/image_processing_dpt.js`),f=n( -/*! ./efficientnet/image_processing_efficientnet.js */ -`./src/models/efficientnet/image_processing_efficientnet.js`),p=n( -/*! ./glpn/image_processing_glpn.js */ -`./src/models/glpn/image_processing_glpn.js`),m=n( -/*! ./grounding_dino/image_processing_grounding_dino.js */ -`./src/models/grounding_dino/image_processing_grounding_dino.js`),h=n( -/*! ./idefics3/image_processing_idefics3.js */ -`./src/models/idefics3/image_processing_idefics3.js`),g=n( -/*! ./janus/image_processing_janus.js */ -`./src/models/janus/image_processing_janus.js`),_=n( -/*! ./jina_clip/image_processing_jina_clip.js */ -`./src/models/jina_clip/image_processing_jina_clip.js`),v=n( -/*! ./llava_onevision/image_processing_llava_onevision.js */ -`./src/models/llava_onevision/image_processing_llava_onevision.js`),y=n( -/*! ./mask2former/image_processing_mask2former.js */ -`./src/models/mask2former/image_processing_mask2former.js`),b=n( -/*! ./maskformer/image_processing_maskformer.js */ -`./src/models/maskformer/image_processing_maskformer.js`),x=n( -/*! ./mobilenet_v1/image_processing_mobilenet_v1.js */ -`./src/models/mobilenet_v1/image_processing_mobilenet_v1.js`),S=n( -/*! ./mobilenet_v2/image_processing_mobilenet_v2.js */ -`./src/models/mobilenet_v2/image_processing_mobilenet_v2.js`),C=n( -/*! ./mobilenet_v3/image_processing_mobilenet_v3.js */ -`./src/models/mobilenet_v3/image_processing_mobilenet_v3.js`),w=n( -/*! ./mobilenet_v4/image_processing_mobilenet_v4.js */ -`./src/models/mobilenet_v4/image_processing_mobilenet_v4.js`),T=n( -/*! ./mobilevit/image_processing_mobilevit.js */ -`./src/models/mobilevit/image_processing_mobilevit.js`),E=n( -/*! ./nougat/image_processing_nougat.js */ -`./src/models/nougat/image_processing_nougat.js`),D=n( -/*! ./owlv2/image_processing_owlv2.js */ -`./src/models/owlv2/image_processing_owlv2.js`),O=n( -/*! ./owlvit/image_processing_owlvit.js */ -`./src/models/owlvit/image_processing_owlvit.js`),ee=n( -/*! ./phi3_v/image_processing_phi3_v.js */ -`./src/models/phi3_v/image_processing_phi3_v.js`),k=n( -/*! ./pvt/image_processing_pvt.js */ -`./src/models/pvt/image_processing_pvt.js`),te=n( -/*! ./qwen2_vl/image_processing_qwen2_vl.js */ -`./src/models/qwen2_vl/image_processing_qwen2_vl.js`),ne=n( -/*! ./rt_detr/image_processing_rt_detr.js */ -`./src/models/rt_detr/image_processing_rt_detr.js`),re=n( -/*! ./sam/image_processing_sam.js */ -`./src/models/sam/image_processing_sam.js`),ie=n( -/*! ./segformer/image_processing_segformer.js */ -`./src/models/segformer/image_processing_segformer.js`),A=n( -/*! ./siglip/image_processing_siglip.js */ -`./src/models/siglip/image_processing_siglip.js`),ae=n( -/*! ./smolvlm/image_processing_smolvlm.js */ -`./src/models/smolvlm/image_processing_smolvlm.js`),oe=n( -/*! ./swin2sr/image_processing_swin2sr.js */ -`./src/models/swin2sr/image_processing_swin2sr.js`),se=n( -/*! ./vit/image_processing_vit.js */ -`./src/models/vit/image_processing_vit.js`),ce=n( -/*! ./vitmatte/image_processing_vitmatte.js */ -`./src/models/vitmatte/image_processing_vitmatte.js`),le=n( -/*! ./vitpose/image_processing_vitpose.js */ -`./src/models/vitpose/image_processing_vitpose.js`),j=n( -/*! ./yolos/image_processing_yolos.js */ -`./src/models/yolos/image_processing_yolos.js`)},"./src/models/janus/image_processing_janus.js":(e,t,n)=>{n.r(t),n.d(t,{VLMImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super({do_pad:!0,pad_size:{width:e.image_size,height:e.image_size},...e}),this.constant_values=this.config.background_color.map(e=>e*this.rescale_factor)}pad_image(e,t,n,r){return super.pad_image(e,t,n,{constant_values:this.constant_values,center:!0,...r})}}},"./src/models/janus/processing_janus.js":(t,n,r)=>{r.r(n),r.d(n,{VLChatProcessor:()=>u});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/core.js */ -`./src/utils/core.js`),c=r( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),l=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`);class u extends i.Processor{constructor(e,t,n){super(e,t,n),this.image_tag=this.config.image_tag,this.image_start_tag=this.config.image_start_tag,this.image_end_tag=this.config.image_end_tag,this.num_image_tokens=this.config.num_image_tokens}async _call(e,{images:t=null,chat_template:n=`default`}={}){t?Array.isArray(t)||(t=[t]):t=await Promise.all(e.filter(e=>e.images).flatMap(e=>e.images).map(e=>l.RawImage.read(e)));let r=this.tokenizer,i=r.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0,chat_template:n}),a=e=>r.encode(e,{add_special_tokens:!1}),o=i.split(this.image_tag),u=o.length-1;if(t.length!==u)throw Error(`Number of images provided (${t.length}) does not match number of "${this.image_tag}" image tags (${u})`);let[d,f,p]=r.model.convert_tokens_to_ids([this.image_tag,this.image_start_tag,this.image_end_tag]),m=a(o[0]),h=Array(m.length).fill(!1);for(let e=1;e0){let e=await this.image_processor(t);return e.pixel_values.unsqueeze_(0),{..._,...e}}return _}}e.defineProperty(u,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(u,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(u,`uses_processor_config`,!0)},"./src/models/jina_clip/image_processing_jina_clip.js":(e,t,n)=>{n.r(t),n.d(t,{JinaCLIPImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){let{resize_mode:t,fill_color:n,interpolation:r,size:i,...a}=e,o=t===`squash`?{width:i,height:i}:t===`shortest`?{shortest_edge:i}:{longest_edge:i},s=r===`bicubic`?3:2;super({...a,size:o,resample:s,do_center_crop:!0,crop_size:i,do_normalize:!0})}}},"./src/models/jina_clip/processing_jina_clip.js":(t,n,r)=>{r.r(n),r.d(n,{JinaCLIPProcessor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{async _call(e=null,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=e?this.tokenizer(e,n):{},i=t?await this.image_processor(t,n):{};return{...r,...i}}}e.defineProperty(s,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(s,`image_processor_class`,a.AutoImageProcessor)},"./src/models/llava/processing_llava.js":(t,n,r)=>{r.r(n),r.d(n,{LlavaProcessor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{async _call(e,t=null,n={}){let r=await this.image_processor(e,n);if(t){let[e,n]=r.pixel_values.dims.slice(-2),{image_token:i,patch_size:a,num_additional_image_tokens:o}=this.config,s=Math.floor(e/a)*Math.floor(n/a)+o;t=structuredClone(t),Array.isArray(t)||(t=[t]);for(let e=0;e{n.r(t),n.d(t,{LlavaOnevisionImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/mask2former/image_processing_mask2former.js":(e,t,n)=>{n.r(t),n.d(t,{Mask2FormerImageProcessor:()=>i});var r=n( -/*! ../maskformer/image_processing_maskformer.js */ -`./src/models/maskformer/image_processing_maskformer.js`);class i extends r.MaskFormerImageProcessor{}},"./src/models/maskformer/image_processing_maskformer.js":(e,t,n)=>{n.r(t),n.d(t,{MaskFormerFeatureExtractor:()=>a,MaskFormerImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class a extends i{}},"./src/models/mgp_str/processing_mgp_str.js":(t,n,r)=>{r.r(n),r.d(n,{MgpstrProcessor:()=>l});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/maths.js */ -`./src/utils/maths.js`);let c={char:[`char_decode`,1],bpe:[`bpe_decode`,2],wp:[`wp_decode`,102]};class l extends i.Processor{get char_tokenizer(){return this.components.char_tokenizer}get bpe_tokenizer(){return this.components.bpe_tokenizer}get wp_tokenizer(){return this.components.wp_tokenizer}_decode_helper(e,t){if(!c.hasOwnProperty(t))throw Error(`Format ${t} is not supported.`);let[n,r]=c[t],i=this[n].bind(this),[a,o]=e.dims,l=[],u=[],d=e.tolist();for(let e=0;e0?i.reduce((e,t)=>e*t,1):0;u.push(n),l.push(a)}let f=i(u);return[f,l]}char_decode(e){return this.char_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}bpe_decode(e){return this.bpe_tokenizer.batch_decode(e)}wp_decode(e){return this.wp_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}batch_decode([e,t,n]){let[r,i]=this._decode_helper(e,`char`),[a,o]=this._decode_helper(t,`bpe`),[c,l]=this._decode_helper(n,`wp`),u=[],d=[];for(let e=0;e{n.r(t),n.d(t,{MobileNetV1FeatureExtractor:()=>a,MobileNetV1ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v2/image_processing_mobilenet_v2.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV2FeatureExtractor:()=>a,MobileNetV2ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v3/image_processing_mobilenet_v3.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV3FeatureExtractor:()=>a,MobileNetV3ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v4/image_processing_mobilenet_v4.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV4FeatureExtractor:()=>a,MobileNetV4ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilevit/image_processing_mobilevit.js":(e,t,n)=>{n.r(t),n.d(t,{MobileViTFeatureExtractor:()=>a,MobileViTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/moonshine/feature_extraction_moonshine.js":(e,t,n)=>{n.r(t),n.d(t,{MoonshineFeatureExtractor:()=>a});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`MoonshineFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}}},"./src/models/moonshine/processing_moonshine.js":(t,n,r)=>{r.r(n),r.d(n,{MoonshineProcessor:()=>s});var i=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,i.AutoFeatureExtractor)},"./src/models/nougat/image_processing_nougat.js":(e,t,n)=>{n.r(t),n.d(t,{NougatImageProcessor:()=>i});var r=n( -/*! ../donut/image_processing_donut.js */ -`./src/models/donut/image_processing_donut.js`);class i extends r.DonutImageProcessor{}},"./src/models/owlv2/image_processing_owlv2.js":(e,t,n)=>{n.r(t),n.d(t,{Owlv2ImageProcessor:()=>i});var r=n( -/*! ../owlvit/image_processing_owlvit.js */ -`./src/models/owlvit/image_processing_owlvit.js`);class i extends r.OwlViTImageProcessor{}},"./src/models/owlvit/image_processing_owlvit.js":(e,t,n)=>{n.r(t),n.d(t,{OwlViTFeatureExtractor:()=>a,OwlViTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/models/owlvit/processing_owlvit.js":(t,n,r)=>{r.r(n),r.d(n,{OwlViTProcessor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{}e.defineProperty(s,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(s,`image_processor_class`,a.AutoImageProcessor)},"./src/models/paligemma/processing_paligemma.js":(t,n,r)=>{r.r(n),r.d(n,{PaliGemmaProcessor:()=>l});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);let s=``;function c(e,t,n,r,i){return`${r.repeat(n*i)}${t}${e}\n`}class l extends i.Processor{async _call(e,t=null,n={}){t||(console.warn(`You are using PaliGemma without a text prefix. It will perform as a picture-captioning model.`),t=``),Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let r=this.tokenizer.bos_token,i=this.image_processor.config.image_seq_length,a;t.some(e=>e.includes(s))?a=t.map(e=>{let t=e.replaceAll(s,s.repeat(i)),n=t.lastIndexOf(s),a=n===-1?0:n+s.length;return t.slice(0,a)+r+t.slice(a)+` -`}):(console.warn("You are passing both `text` and `images` to `PaliGemmaProcessor`. The processor expects special image tokens in the text, as many tokens as there are images per each text. It is recommended to add `` tokens in the very beginning of your text. For this call, we will infer how many images each text has and add special tokens."),a=t.map(t=>c(t,r,i,s,e.length)));let o=this.tokenizer(a,n),l=await this.image_processor(e,n);return{...l,...o}}}e.defineProperty(l,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(l,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(l,`uses_processor_config`,!1)},"./src/models/phi3_v/image_processing_phi3_v.js":(e,t,n)=>{n.r(t),n.d(t,{Phi3VImageProcessor:()=>u});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);let a=336,o=[2,3],{ceil:s,floor:c,sqrt:l}=Math;class u extends r.ImageProcessor{constructor(e){super({...e,do_normalize:!0,do_pad:!0,pad_size:`custom`,do_convert_rgb:!0,do_resize:!0}),this._num_crops=e.num_crops}calc_num_image_tokens_from_image_size(e,t){let{num_img_tokens:n}=this.config;return c((c(t/a)*c(e/a)+1)*n+1+(c(t/a)+1)*l(n))}get_resize_output_image_size(e,t){let n=this._num_crops,[r,i]=e.size,a=r/i,o=1;for(;o*Math.ceil(o/a)<=n;)o+=1;--o;let s=Math.floor(o*336),c=Math.floor(s/a);return[s,c]}pad_image(e,t,n,r={}){let[i,o]=t,c=a*s(i/a),l=a*s(o/a),u=[1,1,1].map((e,t)=>(e-this.image_mean[t])/this.image_std[t]);return super.pad_image(e,t,{width:l,height:c},{center:!0,constant_values:u,...r})}async _call(e,{num_crops:t=null}={}){if(this._num_crops=t??=this.config.num_crops,t<4||l(t)%1!=0)throw Error(`num_crops must be a square number >= 4`);Array.isArray(e)||(e=[e]);let n=e.length,r=await Promise.all(e.map(e=>this.preprocess(e))),u=r.map(e=>e.original_size),d=r.map(e=>e.reshaped_input_size),f=[];for(let{pixel_values:e}of r){e.unsqueeze_(0);let[n,r]=e.dims.slice(-2),s=await(0,i.interpolate_4d)(e,{size:[a,a],mode:`bicubic`});if(t>0){let u=[],d=l(t),p=c(r/d),m=c(n/d);for(let t=0;te.map(e=>a*s(e/a))),h=new i.Tensor(`int64`,m.flat(),[n,2]),g=m.map(([e,t])=>this.calc_num_image_tokens_from_image_size(t,e));return{pixel_values:p,original_sizes:u,reshaped_input_sizes:d,image_sizes:h,num_img_tokens:g}}}},"./src/models/phi3_v/processing_phi3_v.js":(t,n,r)=>{r.r(n),r.d(n,{Phi3VProcessor:()=>u});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`);let c=`<|image|>`,l=/<\|image_\d+\|>/g;class u extends i.Processor{async _call(e,t=null,{padding:n=!0,truncation:r=!0,num_crops:i=null}={}){Array.isArray(e)||(e=[e]);let a,o;if(t){o=await this.image_processor(t,{num_crops:i});let{num_img_tokens:s}=o,u=e.map((e,t)=>e.split(l).join(c.repeat(s[t])));a=this.tokenizer(u,{padding:n,truncation:r});let d=this.tokenizer.model.convert_tokens_to_ids([c])[0];a.input_ids.map_(e=>e==d?-e:e)}else a=this.tokenizer(e);return{...a,...o}}}e.defineProperty(u,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(u,`tokenizer_class`,o.AutoTokenizer)},"./src/models/processors.js":(e,t,n)=>{n.r(t),n.d(t,{Florence2Processor:()=>r.Florence2Processor,Gemma3nProcessor:()=>i.Gemma3nProcessor,GroundingDinoProcessor:()=>a.GroundingDinoProcessor,Idefics3Processor:()=>o.Idefics3Processor,JinaCLIPProcessor:()=>c.JinaCLIPProcessor,LlavaProcessor:()=>l.LlavaProcessor,MgpstrProcessor:()=>u.MgpstrProcessor,MoonshineProcessor:()=>d.MoonshineProcessor,OwlViTProcessor:()=>f.OwlViTProcessor,PaliGemmaProcessor:()=>m.PaliGemmaProcessor,Phi3VProcessor:()=>p.Phi3VProcessor,PyAnnoteProcessor:()=>h.PyAnnoteProcessor,Qwen2VLProcessor:()=>g.Qwen2VLProcessor,SamProcessor:()=>_.SamProcessor,SmolVLMProcessor:()=>v.SmolVLMProcessor,SpeechT5Processor:()=>y.SpeechT5Processor,UltravoxProcessor:()=>b.UltravoxProcessor,VLChatProcessor:()=>s.VLChatProcessor,Wav2Vec2Processor:()=>x.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>S.Wav2Vec2ProcessorWithLM,WhisperProcessor:()=>C.WhisperProcessor});var r=n( -/*! ./florence2/processing_florence2.js */ -`./src/models/florence2/processing_florence2.js`),i=n( -/*! ./gemma3n/processing_gemma3n.js */ -`./src/models/gemma3n/processing_gemma3n.js`),a=n( -/*! ./grounding_dino/processing_grounding_dino.js */ -`./src/models/grounding_dino/processing_grounding_dino.js`),o=n( -/*! ./idefics3/processing_idefics3.js */ -`./src/models/idefics3/processing_idefics3.js`),s=n( -/*! ./janus/processing_janus.js */ -`./src/models/janus/processing_janus.js`),c=n( -/*! ./jina_clip/processing_jina_clip.js */ -`./src/models/jina_clip/processing_jina_clip.js`),l=n( -/*! ./llava/processing_llava.js */ -`./src/models/llava/processing_llava.js`),u=n( -/*! ./mgp_str/processing_mgp_str.js */ -`./src/models/mgp_str/processing_mgp_str.js`),d=n( -/*! ./moonshine/processing_moonshine.js */ -`./src/models/moonshine/processing_moonshine.js`),f=n( -/*! ./owlvit/processing_owlvit.js */ -`./src/models/owlvit/processing_owlvit.js`),p=n( -/*! ./phi3_v/processing_phi3_v.js */ -`./src/models/phi3_v/processing_phi3_v.js`),m=n( -/*! ./paligemma/processing_paligemma.js */ -`./src/models/paligemma/processing_paligemma.js`),h=n( -/*! ./pyannote/processing_pyannote.js */ -`./src/models/pyannote/processing_pyannote.js`),g=n( -/*! ./qwen2_vl/processing_qwen2_vl.js */ -`./src/models/qwen2_vl/processing_qwen2_vl.js`),_=n( -/*! ./sam/processing_sam.js */ -`./src/models/sam/processing_sam.js`),v=n( -/*! ./smolvlm/processing_smolvlm.js */ -`./src/models/smolvlm/processing_smolvlm.js`),y=n( -/*! ./speecht5/processing_speecht5.js */ -`./src/models/speecht5/processing_speecht5.js`),b=n( -/*! ./ultravox/processing_ultravox.js */ -`./src/models/ultravox/processing_ultravox.js`),x=n( -/*! ./wav2vec2/processing_wav2vec2.js */ -`./src/models/wav2vec2/processing_wav2vec2.js`),S=n( -/*! ./wav2vec2_with_lm/processing_wav2vec2_with_lm.js */ -`./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js`),C=n( -/*! ./whisper/processing_whisper.js */ -`./src/models/whisper/processing_whisper.js`)},"./src/models/pvt/image_processing_pvt.js":(e,t,n)=>{n.r(t),n.d(t,{PvtImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/pyannote/feature_extraction_pyannote.js":(e,t,n)=>{n.r(t),n.d(t,{PyAnnoteFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/maths.js */ -`./src/utils/maths.js`);class o extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`PyAnnoteFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}samples_to_frames(e){return(e-this.config.offset)/this.config.step}post_process_speaker_diarization(e,t){let n=t/this.samples_to_frames(t)/this.config.sampling_rate,r=[];for(let t of e.tolist()){let e=[],i=-1;for(let n=0;n({id:e,start:t*n,end:r*n,confidence:i/(r-t)})))}return r}}},"./src/models/pyannote/processing_pyannote.js":(t,n,r)=>{r.r(n),r.d(n,{PyAnnoteProcessor:()=>o});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ./feature_extraction_pyannote.js */ -`./src/models/pyannote/feature_extraction_pyannote.js`);class o extends i.Processor{async _call(e){return await this.feature_extractor(e)}post_process_speaker_diarization(...e){return this.feature_extractor.post_process_speaker_diarization(...e)}get sampling_rate(){return this.feature_extractor.config.sampling_rate}}e.defineProperty(o,`feature_extractor_class`,a.PyAnnoteFeatureExtractor)},"./src/models/qwen2_vl/image_processing_qwen2_vl.js":(e,t,n)=>{n.r(t),n.d(t,{Qwen2VLImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,...t){let{pixel_values:n,original_sizes:r,reshaped_input_sizes:a}=await super._call(e,...t),o=n,{temporal_patch_size:s,merge_size:c,patch_size:l}=this.config;o.dims[0]===1&&(o=(0,i.cat)(Array.from({length:s},()=>o),0));let u=o.dims[0]/s,d=o.dims[1],f=Math.floor(o.dims[2]/l),p=Math.floor(o.dims[3]/l),m=o.view(u,s,d,Math.floor(f/c),c,l,Math.floor(p/c),c,l).permute(0,3,6,4,7,2,1,5,8).view(u*f*p,d*s*l*l),h=new i.Tensor(`int64`,[u,f,p],[1,3]);return{pixel_values:m,image_grid_thw:h,original_sizes:r,reshaped_input_sizes:a}}}},"./src/models/qwen2_vl/processing_qwen2_vl.js":(t,n,r)=>{r.r(n),r.d(n,{Qwen2VLProcessor:()=>c});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`);class c extends i.Processor{async _call(e,t=null,...n){Array.isArray(e)||(e=[e]);let r,i;if(t&&(r=await this.image_processor(t),i=r.image_grid_thw),i){let t=this.image_processor.config.merge_size**2,n=0,r=i.tolist();e=e.map(e=>{for(;e.includes(`<|image_pad|>`);){let i=Number(r[n++].reduce((e,t)=>e*t,1n));e=e.replace(`<|image_pad|>`,`<|placeholder|>`.repeat(Math.floor(i/t)))}return e.replaceAll(`<|placeholder|>`,`<|image_pad|>`)})}let a=this.tokenizer(e);return{...a,...r}}}e.defineProperty(c,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(c,`tokenizer_class`,o.AutoTokenizer)},"./src/models/rt_detr/image_processing_rt_detr.js":(e,t,n)=>{n.r(t),n.d(t,{RTDetrImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}},"./src/models/sam/image_processing_sam.js":(e,t,n)=>{n.r(t),n.d(t,{SamImageProcessor:()=>o});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/core.js */ -`./src/utils/core.js`),a=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class o extends r.ImageProcessor{reshape_input_points(e,t,n,r=!1){e=structuredClone(e);let o=(0,i.calculateDimensions)(e);if(o.length===3)r||(o=[1,...o]),e=[e];else if(o.length!==4)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");for(let r=0;re!==t.dims[n]))throw Error(`The first ${n.length} dimensions of 'input_points' and 'input_labels' must be the same.`);return new a.Tensor(`int64`,e.flat(1/0).map(BigInt),n)}async _call(e,{input_points:t=null,input_labels:n=null,input_boxes:r=null}={}){let i=await super._call(e);if(t&&(i.input_points=this.reshape_input_points(t,i.original_sizes,i.reshaped_input_sizes)),n){if(!i.input_points)throw Error("`input_points` must be provided if `input_labels` are provided.");i.input_labels=this.add_input_labels(n,i.input_points)}return r&&(i.input_boxes=this.reshape_input_points(r,i.original_sizes,i.reshaped_input_sizes,!0)),i}async post_process_masks(e,t,n,{mask_threshold:r=0,binarize:i=!0,pad_size:o=null}={}){let s=[];o??=this.pad_size;let c=[o.height,o.width];for(let o=0;or&&(t[n]=1);d=new a.Tensor(`bool`,t,d.dims)}s.push(d)}return s}generate_crop_boxes(e,t,{crop_n_layers:n=0,overlap_ratio:r=512/1500,points_per_crop:i=32,crop_n_points_downscale_factor:a=1}={}){}}},"./src/models/sam/processing_sam.js":(t,n,r)=>{r.r(n),r.d(n,{SamProcessor:()=>o});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`);class o extends i.Processor{async _call(...e){return await this.image_processor(...e)}post_process_masks(...e){return this.image_processor.post_process_masks(...e)}reshape_input_points(...e){return this.image_processor.reshape_input_points(...e)}}e.defineProperty(o,`image_processor_class`,a.AutoImageProcessor)},"./src/models/seamless_m4t/feature_extraction_seamless_m4t.js":(e,t,n)=>{n.r(t),n.d(t,{SeamlessM4TFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`povey`,{periodic:!1})}async _extract_fbank_features(e,t){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e,{padding:t=!0,pad_to_multiple_of:n=2,do_normalize_per_mel_bins:a=!0,return_attention_mask:o=!0}={}){(0,r.validate_audio_inputs)(e,`SeamlessM4TFeatureExtractor`);let s=await this._extract_fbank_features(e,this.config.max_length);if(a){let[e,t]=s.dims,n=s.data;for(let r=0;r0){let n=new Float32Array(t*(e+a));n.set(r),n.fill(this.config.padding_value,r.length);let l=e+a;s=new i.Tensor(s.type,n,[l,t]),o&&(c=new i.Tensor(`int64`,new BigInt64Array(l),[1,l]),c.data.fill(1n,0,e))}}let[l,u]=s.dims,d=this.config.stride,f=l%d;if(f!==0)throw Error(`The number of frames (${l}) must be a multiple of the stride (${d}).`);let p=s.view(1,Math.floor(l/d),u*d),m={input_features:p};if(o){let e=p.dims[1],t=new BigInt64Array(e);if(c){let e=c.data;for(let n=1,r=0;n{n.r(t),n.d(t,{SegformerFeatureExtractor:()=>a,SegformerImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_semantic_segmentation(...e){return(0,r.post_process_semantic_segmentation)(...e)}}class a extends i{}},"./src/models/siglip/image_processing_siglip.js":(e,t,n)=>{n.r(t),n.d(t,{SiglipImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/smolvlm/image_processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMImageProcessor:()=>r.Idefics3ImageProcessor});var r=n( -/*! ../idefics3/image_processing_idefics3.js */ -`./src/models/idefics3/image_processing_idefics3.js`)},"./src/models/smolvlm/processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMProcessor:()=>r.Idefics3Processor});var r=n( -/*! ../idefics3/processing_idefics3.js */ -`./src/models/idefics3/processing_idefics3.js`)},"./src/models/snac/feature_extraction_snac.js":(e,t,n)=>{n.r(t),n.d(t,{SnacFeatureExtractor:()=>i});var r=n( -/*! ../dac/feature_extraction_dac.js */ -`./src/models/dac/feature_extraction_dac.js`);class i extends r.DacFeatureExtractor{}},"./src/models/speecht5/feature_extraction_speecht5.js":(e,t,n)=>{n.r(t),n.d(t,{SpeechT5FeatureExtractor:()=>i});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`);class i extends r.FeatureExtractor{}},"./src/models/speecht5/processing_speecht5.js":(t,n,r)=>{r.r(n),r.d(n,{SpeechT5Processor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`);class s extends i.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,o.AutoFeatureExtractor)},"./src/models/swin2sr/image_processing_swin2sr.js":(e,t,n)=>{n.r(t),n.d(t,{Swin2SRImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t;return super.pad_image(e,t,{width:a+(n-a%n)%n,height:i+(n-i%n)%n},{mode:`symmetric`,center:!1,constant_values:-1,...r})}}},"./src/models/ultravox/processing_ultravox.js":(t,n,r)=>{r.r(n),r.d(n,{UltravoxProcessor:()=>s});var i=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e,t=null,n={}){if(Array.isArray(e))throw Error(`Batched inputs are not supported yet.`);let r={};if(t){let i=t.length,{input_features:a}=await this.feature_extractor(t,{...n,max_length:i}),o=Math.round(i/this.config.encoder_ds_factor+1e-4),s=1+Math.ceil(o/this.config.stack_factor);r.audio_token_len=[s],r.audio_values=a;let c=this.config.audio_placeholder;if(!e.includes(c))throw Error(`The input text does not contain the image token ${c}.`);e=e.replaceAll(c,c.repeat(s))}let i=this.tokenizer(e,{add_special_tokens:!1,...n});return{...i,...r}}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,i.AutoFeatureExtractor),e.defineProperty(s,`uses_processor_config`,!0)},"./src/models/vit/image_processing_vit.js":(e,t,n)=>{n.r(t),n.d(t,{ViTFeatureExtractor:()=>a,ViTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/vitmatte/image_processing_vitmatte.js":(e,t,n)=>{n.r(t),n.d(t,{VitMatteImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,t){Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let n=await Promise.all(e.map(e=>this.preprocess(e))),r=await Promise.all(t.map(e=>this.preprocess(e,{do_normalize:!1,do_convert_rgb:!1,do_convert_grayscale:!0}))),a=(0,i.stack)(n.map((e,t)=>(0,i.cat)([e.pixel_values,r[t].pixel_values],0)),0);return{pixel_values:a,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}}},"./src/models/vitpose/image_processing_vitpose.js":(e,t,n)=>{n.r(t),n.d(t,{VitPoseImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_pose_estimation(e,t,{threshold:n=null}={}){let r=e.tolist(),[i,a,o,s]=e.dims,c=[];for(let e=0;e{n.r(t),n.d(t,{Wav2Vec2FeatureExtractor:()=>a});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.FeatureExtractor{_zero_mean_unit_var_norm(e){let t=e.reduce((e,t)=>e+t,0),n=t/e.length,r=e.reduce((e,t)=>e+(t-n)**2,0)/e.length;return e.map(e=>(e-n)/Math.sqrt(r+1e-7))}async _call(e){(0,r.validate_audio_inputs)(e,`Wav2Vec2FeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=e;this.config.do_normalize&&(t=this._zero_mean_unit_var_norm(t));let n=[1,t.length];return{input_values:new i.Tensor(`float32`,t,n),attention_mask:new i.Tensor(`int64`,new BigInt64Array(t.length).fill(1n),n)}}}},"./src/models/wav2vec2/processing_wav2vec2.js":(t,n,r)=>{r.r(n),r.d(n,{Wav2Vec2Processor:()=>s});var i=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),a=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,i.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,a.AutoFeatureExtractor)},"./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js":(t,n,r)=>{r.r(n),r.d(n,{Wav2Vec2ProcessorWithLM:()=>s});var i=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),a=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,i.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,a.AutoFeatureExtractor)},"./src/models/wespeaker/feature_extraction_wespeaker.js":(e,t,n)=>{n.r(t),n.d(t,{WeSpeakerFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hamming`,{periodic:!1}),this.min_num_frames=this.config.min_num_frames}async _extract_fbank_features(e){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,transpose:!0,min_num_frames:this.min_num_frames})}async _call(e){(0,r.validate_audio_inputs)(e,`WeSpeakerFeatureExtractor`);let t=(await this._extract_fbank_features(e)).unsqueeze_(0);if(this.config.fbank_centering_span===null){let e=t.mean(1).data,n=t.data,[r,i,a]=t.dims;for(let t=0;t{n.r(t),n.d(t,{WHISPER_LANGUAGE_MAPPING:()=>i,WHISPER_TO_LANGUAGE_CODE_MAPPING:()=>a,whisper_language_to_code:()=>o});let r=[[`en`,`english`],[`zh`,`chinese`],[`de`,`german`],[`es`,`spanish`],[`ru`,`russian`],[`ko`,`korean`],[`fr`,`french`],[`ja`,`japanese`],[`pt`,`portuguese`],[`tr`,`turkish`],[`pl`,`polish`],[`ca`,`catalan`],[`nl`,`dutch`],[`ar`,`arabic`],[`sv`,`swedish`],[`it`,`italian`],[`id`,`indonesian`],[`hi`,`hindi`],[`fi`,`finnish`],[`vi`,`vietnamese`],[`he`,`hebrew`],[`uk`,`ukrainian`],[`el`,`greek`],[`ms`,`malay`],[`cs`,`czech`],[`ro`,`romanian`],[`da`,`danish`],[`hu`,`hungarian`],[`ta`,`tamil`],[`no`,`norwegian`],[`th`,`thai`],[`ur`,`urdu`],[`hr`,`croatian`],[`bg`,`bulgarian`],[`lt`,`lithuanian`],[`la`,`latin`],[`mi`,`maori`],[`ml`,`malayalam`],[`cy`,`welsh`],[`sk`,`slovak`],[`te`,`telugu`],[`fa`,`persian`],[`lv`,`latvian`],[`bn`,`bengali`],[`sr`,`serbian`],[`az`,`azerbaijani`],[`sl`,`slovenian`],[`kn`,`kannada`],[`et`,`estonian`],[`mk`,`macedonian`],[`br`,`breton`],[`eu`,`basque`],[`is`,`icelandic`],[`hy`,`armenian`],[`ne`,`nepali`],[`mn`,`mongolian`],[`bs`,`bosnian`],[`kk`,`kazakh`],[`sq`,`albanian`],[`sw`,`swahili`],[`gl`,`galician`],[`mr`,`marathi`],[`pa`,`punjabi`],[`si`,`sinhala`],[`km`,`khmer`],[`sn`,`shona`],[`yo`,`yoruba`],[`so`,`somali`],[`af`,`afrikaans`],[`oc`,`occitan`],[`ka`,`georgian`],[`be`,`belarusian`],[`tg`,`tajik`],[`sd`,`sindhi`],[`gu`,`gujarati`],[`am`,`amharic`],[`yi`,`yiddish`],[`lo`,`lao`],[`uz`,`uzbek`],[`fo`,`faroese`],[`ht`,`haitian creole`],[`ps`,`pashto`],[`tk`,`turkmen`],[`nn`,`nynorsk`],[`mt`,`maltese`],[`sa`,`sanskrit`],[`lb`,`luxembourgish`],[`my`,`myanmar`],[`bo`,`tibetan`],[`tl`,`tagalog`],[`mg`,`malagasy`],[`as`,`assamese`],[`tt`,`tatar`],[`haw`,`hawaiian`],[`ln`,`lingala`],[`ha`,`hausa`],[`ba`,`bashkir`],[`jw`,`javanese`],[`su`,`sundanese`]],i=new Map(r),a=new Map([...r.map(([e,t])=>[t,e]),...[[`burmese`,`my`],[`valencian`,`ca`],[`flemish`,`nl`],[`haitian`,`ht`],[`letzeburgesch`,`lb`],[`pushto`,`ps`],[`panjabi`,`pa`],[`moldavian`,`ro`],[`moldovan`,`ro`],[`sinhalese`,`si`],[`castilian`,`es`]]]);function o(e){e=e.toLowerCase();let t=a.get(e);if(t===void 0){let n=e.match(/^<\|([a-z]{2})\|>$/);if(n&&(e=n[1]),i.has(e))t=e;else{let t=e.length===2,n=t?i.keys():i.values();throw Error(`Language "${e}" is not supported. Must be one of: ${JSON.stringify(Array.from(n))}`)}}return t}},"./src/models/whisper/feature_extraction_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperFeatureExtractor:()=>s});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`),o=n( -/*! ../../utils/maths.js */ -`./src/utils/maths.js`);class s extends r.FeatureExtractor{constructor(e){var t;super(e),(t=this.config).mel_filters??(t.mel_filters=(0,a.mel_filter_bank)(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,`slaney`,`slaney`)),this.window=(0,a.window_function)(this.config.n_fft,`hann`)}async _extract_fbank_features(e){let t=await(0,a.spectrogram)(e,this.window,this.config.n_fft,this.config.hop_length,{power:2,mel_filters:this.config.mel_filters,log_mel:`log10`,max_num_frames:Math.min(Math.floor(e.length/this.config.hop_length),this.config.nb_max_frames)}),n=t.data,r=(0,o.max)(n)[0];for(let e=0;ei?(e.length>this.config.n_samples&&console.warn("Attempting to extract features for audio longer than 30 seconds. If using a pipeline to extract transcript from a long audio clip, remember to specify `chunk_length_s` and/or `stride_length_s`."),n=e.slice(0,i)):(n=new Float32Array(i),n.set(e));let a=await this._extract_fbank_features(n);return{input_features:a.unsqueeze_(0)}}}},"./src/models/whisper/generation_whisper.js":(t,n,r)=>{r.r(n),r.d(n,{WhisperGenerationConfig:()=>a});var i=r( -/*! ../../generation/configuration_utils.js */ -`./src/generation/configuration_utils.js`);class a extends i.GenerationConfig{constructor(...t){super(...t),e.defineProperty(this,`return_timestamps`,null),e.defineProperty(this,`return_token_timestamps`,null),e.defineProperty(this,`num_frames`,null),e.defineProperty(this,`alignment_heads`,null),e.defineProperty(this,`task`,null),e.defineProperty(this,`language`,null),e.defineProperty(this,`no_timestamps_token_id`,null),e.defineProperty(this,`prompt_ids`,null),e.defineProperty(this,`is_multilingual`,null),e.defineProperty(this,`lang_to_id`,null),e.defineProperty(this,`task_to_id`,null),e.defineProperty(this,`max_initial_timestamp_index`,1)}}},"./src/models/whisper/processing_whisper.js":(t,n,r)=>{r.r(n),r.d(n,{WhisperProcessor:()=>s});var i=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,i.AutoFeatureExtractor)},"./src/models/yolos/image_processing_yolos.js":(e,t,n)=>{n.r(t),n.d(t,{YolosFeatureExtractor:()=>a,YolosImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/ops/registry.js":(t,n,r)=>{r.r(n),r.d(n,{TensorOpRegistry:()=>l});var i=r( -/*! ../backends/onnx.js */ -`./src/backends/onnx.js`),a=r( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),o=r( -/*! ../env.js */ -`./src/env.js`);let s=o.apis.IS_BROWSER_ENV||o.apis.IS_WEBWORKER_ENV,c=async(e,t,n)=>{let r=await(0,i.createInferenceSession)(new Uint8Array(e),t),o=Promise.resolve();return async e=>{let t=(0,i.isONNXProxy)(),c=Object.fromEntries(Object.entries(e).map(([e,n])=>[e,(t?n.clone():n).ort_tensor])),l=await(o=s?o.then(()=>r.run(c)):r.run(c));return Array.isArray(n)?n.map(e=>new a.Tensor(l[e])):new a.Tensor(l[n])}};class l{static get nearest_interpolate_4d(){return this._nearest_interpolate_4d||=c([8,10,18,0,58,129,1,10,41,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,18,10,4,109,111,100,101,34,7,110,101,97,114,101,115,116,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,21],this.session_options,`y`),this._nearest_interpolate_4d}static get bilinear_interpolate_4d(){return this._bilinear_interpolate_4d||=c([8,9,18,0,58,128,1,10,40,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,17,10,4,109,111,100,101,34,6,108,105,110,101,97,114,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bilinear_interpolate_4d}static get bicubic_interpolate_4d(){return this._bicubic_interpolate_4d||=c([8,9,18,0,58,127,10,39,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,16,10,4,109,111,100,101,34,5,99,117,98,105,99,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bicubic_interpolate_4d}static get matmul(){return this._matmul||=c([8,9,18,0,58,55,10,17,10,1,97,10,1,98,18,1,99,34,6,77,97,116,77,117,108,18,1,114,90,9,10,1,97,18,4,10,2,8,1,90,9,10,1,98,18,4,10,2,8,1,98,9,10,1,99,18,4,10,2,8,1,66,2,16,20],this.session_options,`c`),this._matmul}static get stft(){return this._stft||=c([8,7,18,0,58,148,1,10,38,10,1,115,10,1,106,10,1,119,10,1,108,18,1,111,34,4,83,84,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,115,90,26,10,1,115,18,21,10,19,8,1,18,15,10,3,18,1,98,10,3,18,1,115,10,3,18,1,99,90,11,10,1,106,18,6,10,4,8,7,18,0,90,16,10,1,119,18,11,10,9,8,1,18,5,10,3,18,1,119,90,11,10,1,108,18,6,10,4,8,7,18,0,98,31,10,1,111,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,102,10,3,18,1,100,10,3,18,1,99,66,2,16,17],this.session_options,`o`),this._stft}static get rfft(){return this._rfft||=c([8,9,18,0,58,97,10,33,10,1,120,10,0,10,1,97,18,1,121,34,3,68,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,100,90,21,10,1,120,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,90,11,10,1,97,18,6,10,4,8,7,18,0,98,21,10,1,121,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,66,2,16,20],this.session_options,`y`),this._rfft}static get top_k(){return this._top_k||=c([8,10,18,0,58,73,10,18,10,1,120,10,1,107,18,1,118,18,1,105,34,4,84,111,112,75,18,1,116,90,9,10,1,120,18,4,10,2,8,1,90,15,10,1,107,18,10,10,8,8,7,18,4,10,2,8,1,98,9,10,1,118,18,4,10,2,8,1,98,9,10,1,105,18,4,10,2,8,7,66,2,16,21],this.session_options,[`v`,`i`]),this._top_k}static get slice(){return this._slice||=c([8,7,18,0,58,96,10,25,10,1,120,10,1,115,10,1,101,10,1,97,10,1,116,18,1,121,34,5,83,108,105,99,101,18,1,114,90,9,10,1,120,18,4,10,2,8,1,90,9,10,1,115,18,4,10,2,8,7,90,9,10,1,101,18,4,10,2,8,7,90,9,10,1,97,18,4,10,2,8,7,90,9,10,1,116,18,4,10,2,8,7,98,9,10,1,121,18,4,10,2,8,1,66,2,16,13],this.session_options,`y`),this._slice}}e.defineProperty(l,`session_options`,{})},"./src/pipelines.js":(t,n,r)=>{r.r(n),r.d(n,{AudioClassificationPipeline:()=>k,AutomaticSpeechRecognitionPipeline:()=>ne,BackgroundRemovalPipeline:()=>ae,DepthEstimationPipeline:()=>N,DocumentQuestionAnsweringPipeline:()=>le,FeatureExtractionPipeline:()=>O,FillMaskPipeline:()=>x,ImageClassificationPipeline:()=>ie,ImageFeatureExtractionPipeline:()=>ee,ImageSegmentationPipeline:()=>A,ImageToImagePipeline:()=>M,ImageToTextPipeline:()=>re,ObjectDetectionPipeline:()=>se,Pipeline:()=>_,QuestionAnsweringPipeline:()=>b,SummarizationPipeline:()=>C,Text2TextGenerationPipeline:()=>S,TextClassificationPipeline:()=>v,TextGenerationPipeline:()=>E,TextToAudioPipeline:()=>j,TokenClassificationPipeline:()=>y,TranslationPipeline:()=>w,ZeroShotAudioClassificationPipeline:()=>te,ZeroShotClassificationPipeline:()=>D,ZeroShotImageClassificationPipeline:()=>oe,ZeroShotObjectDetectionPipeline:()=>ce,pipeline:()=>fe});var i=r( -/*! ./tokenizers.js */ -`./src/tokenizers.js`),a=r( -/*! ./models.js */ -`./src/models.js`),o=r( -/*! ./models/auto/processing_auto.js */ -`./src/models/auto/processing_auto.js`),s=r( -/*! ./base/processing_utils.js */ -`./src/base/processing_utils.js`),c=r( -/*! ./utils/generic.js */ -`./src/utils/generic.js`),l=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),u=r( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),d=r( -/*! ./utils/audio.js */ -`./src/utils/audio.js`),f=r( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),p=r( -/*! ./utils/image.js */ -`./src/utils/image.js`);async function m(e){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>p.RawImage.read(e)))}async function h(e,t){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>typeof e==`string`||e instanceof URL?(0,d.read_audio)(e,t):e instanceof Float64Array?new Float32Array(e):e))}function g(e,t){t&&(e=e.map(e=>e|0));let[n,r,i,a]=e;return{xmin:n,ymin:r,xmax:i,ymax:a}}class _ extends c.Callable{constructor({task:e,model:t,tokenizer:n=null,processor:r=null}){super(),this.task=e,this.model=t,this.tokenizer=n,this.processor=r}async dispose(){await this.model.dispose()}}class v extends _{constructor(e){super(e)}async _call(e,{top_k:t=1}={}){let n=this.tokenizer(e,{padding:!0,truncation:!0}),r=await this.model(n),i=this.model.config.problem_type===`multi_label_classification`?e=>e.sigmoid():e=>new f.Tensor(`float32`,(0,u.softmax)(e.data),e.dims),a=this.model.config.id2label,o=[];for(let e of r.logits){let n=i(e),r=await(0,f.topk)(n,t),s=r[0].tolist(),c=r[1].tolist(),l=c.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:s[t]}));t===1?o.push(...l):o.push(l)}return Array.isArray(e)||t===1?o:o[0]}}class y extends _{constructor(e){super(e)}async _call(e,{ignore_labels:t=[`O`]}={}){let n=Array.isArray(e),r=this.tokenizer(n?e:[e],{padding:!0,truncation:!0}),i=await this.model(r),a=i.logits,o=this.model.config.id2label,s=[];for(let e=0;ee==this.tokenizer.sep_token_id),f=s[e].map((e,n)=>e==1&&(n===0||n>r&&c.findIndex(e=>e==t[n])===-1)),p=i[e].tolist(),m=a[e].tolist();for(let n=1;ne==t[n])!==-1)&&(p[n]=-1/0,m[n]=-1/0);let h=(0,u.softmax)(p).map((e,t)=>[e,t]),g=(0,u.softmax)(m).map((e,t)=>[e,t]);h[0][0]=0,g[0][0]=0;let _=(0,l.product)(h,g).filter(e=>e[0][1]<=e[1][1]).map(e=>[e[0][1],e[1][1],e[0][0]*e[1][0]]).sort((e,t)=>t[2]-e[2]);for(let e=0;ee==this.tokenizer.mask_token_id);if(o===-1)throw Error(`Mask token (${this.tokenizer.mask_token}) not found in text.`);let s=r[e][o],c=await(0,f.topk)(new f.Tensor(`float32`,(0,u.softmax)(s.data),s.dims),t),l=c[0].tolist(),d=c[1].tolist();i.push(d.map((e,t)=>{let r=n.slice();return r[o]=e,{score:l[t],token:Number(e),token_str:this.tokenizer.decode([e]),sequence:this.tokenizer.decode(r,{skip_special_tokens:!0})}}))}return Array.isArray(e)?i:i[0]}}class S extends _{constructor(t){super(t),e.defineProperty(this,`_key`,`generated_text`)}async _call(e,t={}){Array.isArray(e)||(e=[e]),this.model.config.prefix&&(e=e.map(e=>this.model.config.prefix+e));let n=this.model.config.task_specific_params;n&&n[this.task]&&n[this.task].prefix&&(e=e.map(e=>n[this.task].prefix+e));let r=this.tokenizer,i={padding:!0,truncation:!0},a;a=this instanceof w&&`_build_translation_inputs`in r?r._build_translation_inputs(e,i,t):r(e,i);let o=await this.model.generate({...a,...t});return r.batch_decode(o,{skip_special_tokens:!0}).map(e=>({[this._key]:e}))}}class C extends S{constructor(t){super(t),e.defineProperty(this,`_key`,`summary_text`)}}class w extends S{constructor(t){super(t),e.defineProperty(this,`_key`,`translation_text`)}}function T(e){return Array.isArray(e)&&e.every(e=>`role`in e&&`content`in e)}class E extends _{constructor(e){super(e)}async _call(e,t={}){let n=!1,r=!1,i;if(typeof e==`string`)i=e=[e];else if(Array.isArray(e)&&e.every(e=>typeof e==`string`))n=!0,i=e;else{if(T(e))e=[e];else if(Array.isArray(e)&&e.every(T))n=!0;else throw Error(`Input must be a string, an array of strings, a Chat, or an array of Chats`);r=!0,i=e.map(e=>this.tokenizer.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0}))}let a=t.add_special_tokens??!1,o=r?!1:t.return_full_text??!0;this.tokenizer.padding_side=`left`;let s=this.tokenizer(i,{add_special_tokens:a,padding:!0,truncation:!0}),c=await this.model.generate({...s,...t}),l=this.tokenizer.batch_decode(c,{skip_special_tokens:!0}),u;!o&&s.input_ids.dims.at(-1)>0&&(u=this.tokenizer.batch_decode(s.input_ids,{skip_special_tokens:!0}).map(e=>e.length));let d=Array.from({length:e.length},e=>[]);for(let t=0;t[e.toLowerCase(),t])),this.entailment_id=this.label2id.entailment,this.entailment_id===void 0&&(console.warn(`Could not find 'entailment' in label2id mapping. Using 2 as entailment_id.`),this.entailment_id=2),this.contradiction_id=this.label2id.contradiction??this.label2id.not_entailment,this.contradiction_id===void 0&&(console.warn(`Could not find 'contradiction' in label2id mapping. Using 0 as contradiction_id.`),this.contradiction_id=0)}async _call(e,t,{hypothesis_template:n=`This example is {}.`,multi_label:r=!1}={}){let i=Array.isArray(e);i||(e=[e]),Array.isArray(t)||(t=[t]);let a=t.map(e=>n.replace(`{}`,e)),o=r||t.length===1,s=[];for(let n of e){let e=[];for(let t of a){let r=this.tokenizer(n,{text_pair:t,padding:!0,truncation:!0}),i=await this.model(r);o?e.push([i.logits.data[this.contradiction_id],i.logits.data[this.entailment_id]]):e.push(i.logits.data[this.entailment_id])}let r=o?e.map(e=>(0,u.softmax)(e)[1]):(0,u.softmax)(e),i=r.map((e,t)=>[e,t]).sort((e,t)=>t[0]-e[0]);s.push({sequence:n,labels:i.map(e=>t[e[1]]),scores:i.map(e=>e[0])})}return i?s:s[0]}}class O extends _{constructor(e){super(e)}async _call(e,{pooling:t=`none`,normalize:n=!1,quantize:r=!1,precision:i=`binary`}={}){let a=this.tokenizer(e,{padding:!0,truncation:!0}),o=await this.model(a),s=o.last_hidden_state??o.logits??o.token_embeddings;switch(t){case`none`:break;case`mean`:s=(0,f.mean_pooling)(s,a.attention_mask);break;case`first_token`:case`cls`:s=s.slice(null,0);break;case`last_token`:case`eos`:s=s.slice(null,-1);break;default:throw Error(`Pooling method '${t}' not supported.`)}return n&&(s=s.normalize(2,-1)),r&&(s=(0,f.quantize_embeddings)(s,i)),s}}class ee extends _{constructor(e){super(e)}async _call(e,{pool:t=null}={}){let n=await m(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a;if(t){if(!(`pooler_output`in i))throw Error(`No pooled output was returned. Make sure the model has a 'pooler' layer when using the 'pool' option.`);a=i.pooler_output}else a=i.last_hidden_state??i.logits??i.image_embeds;return a}}class k extends _{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=this.processor.feature_extractor.config.sampling_rate,r=await h(e,n),i=this.model.config.id2label,a=[];for(let e of r){let n=await this.processor(e),r=await this.model(n),o=r.logits[0],s=await(0,f.topk)(new f.Tensor(`float32`,(0,u.softmax)(o.data),o.dims),t),c=s[0].tolist(),l=s[1].tolist(),d=l.map((e,t)=>({label:i?i[e]:`LABEL_${e}`,score:c[t]}));a.push(d)}return Array.isArray(e)?a:a[0]}}class te extends _{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a sound of {}.`}={}){let r=!Array.isArray(e);r&&(e=[e]);let i=t.map(e=>n.replace(`{}`,e)),a=this.tokenizer(i,{padding:!0,truncation:!0}),o=this.processor.feature_extractor.config.sampling_rate,s=await h(e,o),c=[];for(let e of s){let n=await this.processor(e),r=await this.model({...a,...n}),i=(0,u.softmax)(r.logits_per_audio.data);c.push([...i].map((e,n)=>({score:e,label:t[n]})))}return r?c[0]:c}}class ne extends _{constructor(e){super(e)}async _call(e,t={}){switch(this.model.config.model_type){case`whisper`:case`lite-whisper`:return this._call_whisper(e,t);case`wav2vec2`:case`wav2vec2-bert`:case`unispeech`:case`unispeech-sat`:case`hubert`:return this._call_wav2vec2(e,t);case`moonshine`:return this._call_moonshine(e,t);default:throw Error(`AutomaticSpeechRecognitionPipeline does not support model type '${this.model.config.model_type}'.`)}}async _call_wav2vec2(e,t){t.language&&console.warn('`language` parameter is not yet supported for `wav2vec2` models, defaulting to "English".'),t.task&&console.warn('`task` parameter is not yet supported for `wav2vec2` models, defaulting to "transcribe".');let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await h(e,r),a=[];for(let e of i){let t=await this.processor(e),n=await this.model(t),r=n.logits[0],i=[];for(let e of r)i.push((0,u.max)(e.data)[1]);let o=this.tokenizer.decode(i);a.push({text:o})}return n?a[0]:a}async _call_whisper(e,t){let n=t.return_timestamps??!1,r=t.chunk_length_s??0,i=t.force_full_sequences??!1,a=t.stride_length_s??null,o={...t};n===`word`&&(o.return_token_timestamps=!0,o.return_timestamps=!1);let s=!Array.isArray(e);s&&(e=[e]);let c=this.processor.feature_extractor.config.chunk_length/this.model.config.max_source_positions,l=this.processor.feature_extractor.config.hop_length,d=this.processor.feature_extractor.config.sampling_rate,f=await h(e,d),p=[];for(let e of f){let t=[];if(r>0){if(a===null)a=r/6;else if(r<=a)throw Error("`chunk_length_s` must be larger than `stride_length_s`.");let n=d*r,i=d*a,o=n-2*i,s=0;for(;;){let r=s+n,a=e.subarray(s,r),c=await this.processor(a),l=s===0,u=r>=e.length;if(t.push({stride:[a.length,l?0:i,u?0:i],input_features:c.input_features,is_last:u}),u)break;s+=o}}else t=[{stride:[e.length,0,0],input_features:(await this.processor(e)).input_features,is_last:!0}];for(let e of t){o.num_frames=Math.floor(e.stride[0]/l);let t=await this.model.generate({inputs:e.input_features,...o});n===`word`?(e.tokens=t.sequences.tolist()[0],e.token_timestamps=t.token_timestamps.tolist()[0].map(e=>(0,u.round)(e,2))):e.tokens=t[0].tolist(),e.stride=e.stride.map(e=>e/d)}let[s,f]=this.tokenizer._decode_asr(t,{time_precision:c,return_timestamps:n,force_full_sequences:i});p.push({text:s,...f})}return s?p[0]:p}async _call_moonshine(e,t){let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await h(e,r),a=[];for(let e of i){let n=await this.processor(e),i=Math.floor(e.length/r)*6,o=await this.model.generate({max_new_tokens:i,...t,...n}),s=this.processor.batch_decode(o,{skip_special_tokens:!0})[0];a.push({text:s})}return n?a[0]:a}}class re extends _{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e),r=await m(e),{pixel_values:i}=await this.processor(r),a=[];for(let e of i){e.dims=[1,...e.dims];let n=await this.model.generate({inputs:e,...t}),r=this.tokenizer.batch_decode(n,{skip_special_tokens:!0}).map(e=>({generated_text:e.trim()}));a.push(r)}return n?a:a[0]}}class ie extends _{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=await m(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a=this.model.config.id2label,o=[];for(let e of i.logits){let n=await(0,f.topk)(new f.Tensor(`float32`,(0,u.softmax)(e.data),e.dims),t),r=n[0].tolist(),i=n[1].tolist(),s=i.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:r[t]}));o.push(s)}return Array.isArray(e)?o:o[0]}}class A extends _{constructor(e){super(e),this.subtasks_mapping={panoptic:`post_process_panoptic_segmentation`,instance:`post_process_instance_segmentation`,semantic:`post_process_semantic_segmentation`}}async _call(e,{threshold:t=.5,mask_threshold:n=.5,overlap_mask_area_threshold:r=.8,label_ids_to_fuse:i=null,target_sizes:a=null,subtask:o=null}={}){let s=Array.isArray(e);if(s&&e.length!==1)throw Error(`Image segmentation pipeline currently only supports a batch size of 1.`);let c=await m(e),l=c.map(e=>[e.height,e.width]),u=await this.processor(c),{inputNames:d,outputNames:f}=this.model.sessions.model;if(!d.includes(`pixel_values`)){if(d.length!==1)throw Error(`Expected a single input name, but got ${d.length} inputs: ${d}.`);let e=d[0];if(e in u)throw Error(`Input name ${e} already exists in the inputs.`);u[e]=u.pixel_values}let h=await this.model(u),g=null;if(o!==null)g=this.subtasks_mapping[o];else if(this.processor.image_processor){for(let[e,t]of Object.entries(this.subtasks_mapping))if(t in this.processor.image_processor){g=this.processor.image_processor[t].bind(this.processor.image_processor),o=e;break}}let _=this.model.config.id2label,v=[];if(o)if(o===`panoptic`||o===`instance`){let e=g(h,t,n,r,i,a??l)[0],o=e.segmentation;for(let t of e.segments_info){let e=new Uint8ClampedArray(o.data.length);for(let n=0;nt<-e||t>1+e)&&i.sigmoid_();let a=await p.RawImage.fromTensor(i.mul_(255).to(`uint8`)).resize(r[1],r[0]);v.push({label:null,score:null,mask:a})}}return v}}class ae extends A{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e);if(n&&e.length!==1)throw Error(`Background removal pipeline currently only supports a batch size of 1.`);let r=await m(e),i=await super._call(e,t),a=r.map((e,t)=>{let n=e.clone();return n.putAlpha(i[t].mask),n});return a}}class oe extends _{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a photo of {}`}={}){let r=Array.isArray(e),i=await m(e),a=t.map(e=>n.replace(`{}`,e)),o=this.tokenizer(a,{padding:this.model.config.model_type===`siglip`?`max_length`:!0,truncation:!0}),{pixel_values:s}=await this.processor(i),c=await this.model({...o,pixel_values:s}),l=this.model.config.model_type===`siglip`?e=>e.sigmoid().data:e=>(0,u.softmax)(e.data),d=[];for(let e of c.logits_per_image){let n=l(e),r=[...n].map((e,n)=>({score:e,label:t[n]}));r.sort((e,t)=>t.score-e.score),d.push(r)}return r?d:d[0]}}class se extends _{constructor(e){super(e)}async _call(e,{threshold:t=.9,percentage:n=!1}={}){let r=Array.isArray(e);if(r&&e.length!==1)throw Error(`Object detection pipeline currently only supports a batch size of 1.`);let i=await m(e),a=n?null:i.map(e=>[e.height,e.width]),{pixel_values:o,pixel_mask:s}=await this.processor(i),c=await this.model({pixel_values:o,pixel_mask:s}),l=this.processor.image_processor.post_process_object_detection(c,t,a),u=this.model.config.id2label,d=l.map(e=>e.boxes.map((t,r)=>({score:e.scores[r],label:u[e.classes[r]],box:g(t,!n)})));return r?d:d[0]}}class ce extends _{constructor(e){super(e)}async _call(e,t,{threshold:n=.1,top_k:r=null,percentage:i=!1}={}){let a=Array.isArray(e),o=await m(e),s=this.tokenizer(t,{padding:!0,truncation:!0}),c=await this.processor(o),l=[];for(let e=0;e({score:e.scores[n],label:e.labels[n],box:g(t,!i)}))}else{let e=this.processor.image_processor.post_process_object_detection(f,n,u,!0)[0];p=e.boxes.map((n,r)=>({score:e.scores[r],label:t[e.classes[r]],box:g(n,!i)}))}p.sort((e,t)=>t.score-e.score),r!==null&&(p=p.slice(0,r)),l.push(p)}return a?l:l[0]}}class le extends _{constructor(e){super(e)}async _call(e,t,n={}){let r=(await m(e))[0],{pixel_values:i}=await this.processor(r),a=`${t}`,o=this.tokenizer(a,{add_special_tokens:!1,padding:!0,truncation:!0}).input_ids,s=await this.model.generate({inputs:i,max_length:this.model.config.decoder.max_position_embeddings,decoder_input_ids:o,...n}),c=this.tokenizer.batch_decode(s)[0],l=c.match(/(.*?)<\/s_answer>/),u=null;return l&&l.length>=2&&(u=l[1].trim()),[{answer:u}]}}class j extends _{constructor(t){super(t),e.defineProperty(this,`DEFAULT_VOCODER_ID`,`Xenova/speecht5_hifigan`),this.vocoder=t.vocoder??null}async _call(e,{speaker_embeddings:t=null}={}){return this.processor?this._call_text_to_spectrogram(e,{speaker_embeddings:t}):this._call_text_to_waveform(e)}async _call_text_to_waveform(e){let t=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:n}=await this.model(t),r=this.model.config.sampling_rate;return new d.RawAudio(n.data,r)}async _call_text_to_spectrogram(e,{speaker_embeddings:t}){if(this.vocoder||(console.log(`No vocoder specified, using default HifiGan vocoder.`),this.vocoder=await a.AutoModel.from_pretrained(this.DEFAULT_VOCODER_ID,{dtype:`fp32`})),(typeof t==`string`||t instanceof URL)&&(t=new Float32Array(await(await fetch(t)).arrayBuffer())),t instanceof Float32Array)t=new f.Tensor(`float32`,t,[1,t.length]);else if(!(t instanceof f.Tensor))throw Error("Speaker embeddings must be a `Tensor`, `Float32Array`, `string`, or `URL`.");let{input_ids:n}=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:r}=await this.model.generate_speech(n,t,{vocoder:this.vocoder}),i=this.processor.feature_extractor.config.sampling_rate;return new d.RawAudio(r.data,i)}}class M extends _{constructor(e){super(e)}async _call(e){let t=await m(e),n=await this.processor(t),r=await this.model(n),i=[];for(let e of r.reconstruction){let t=e.squeeze().clamp_(0,1).mul_(255).round_().to(`uint8`);i.push(p.RawImage.fromTensor(t))}return i.length>1?i:i[0]}}class N extends _{constructor(e){super(e)}async _call(e){let t=await m(e),n=await this.processor(t),{predicted_depth:r}=await this.model(n),i=[];for(let e=0;e1?i:i[0]}}let ue=Object.freeze({"text-classification":{tokenizer:i.AutoTokenizer,pipeline:v,model:a.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-finetuned-sst-2-english`},type:`text`},"token-classification":{tokenizer:i.AutoTokenizer,pipeline:y,model:a.AutoModelForTokenClassification,default:{model:`Xenova/bert-base-multilingual-cased-ner-hrl`},type:`text`},"question-answering":{tokenizer:i.AutoTokenizer,pipeline:b,model:a.AutoModelForQuestionAnswering,default:{model:`Xenova/distilbert-base-cased-distilled-squad`},type:`text`},"fill-mask":{tokenizer:i.AutoTokenizer,pipeline:x,model:a.AutoModelForMaskedLM,default:{model:`Xenova/bert-base-uncased`},type:`text`},summarization:{tokenizer:i.AutoTokenizer,pipeline:C,model:a.AutoModelForSeq2SeqLM,default:{model:`Xenova/distilbart-cnn-6-6`},type:`text`},translation:{tokenizer:i.AutoTokenizer,pipeline:w,model:a.AutoModelForSeq2SeqLM,default:{model:`Xenova/t5-small`},type:`text`},"text2text-generation":{tokenizer:i.AutoTokenizer,pipeline:S,model:a.AutoModelForSeq2SeqLM,default:{model:`Xenova/flan-t5-small`},type:`text`},"text-generation":{tokenizer:i.AutoTokenizer,pipeline:E,model:a.AutoModelForCausalLM,default:{model:`Xenova/gpt2`},type:`text`},"zero-shot-classification":{tokenizer:i.AutoTokenizer,pipeline:D,model:a.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-mnli`},type:`text`},"audio-classification":{pipeline:k,model:a.AutoModelForAudioClassification,processor:o.AutoProcessor,default:{model:`Xenova/wav2vec2-base-superb-ks`},type:`audio`},"zero-shot-audio-classification":{tokenizer:i.AutoTokenizer,pipeline:te,model:a.AutoModel,processor:o.AutoProcessor,default:{model:`Xenova/clap-htsat-unfused`},type:`multimodal`},"automatic-speech-recognition":{tokenizer:i.AutoTokenizer,pipeline:ne,model:[a.AutoModelForSpeechSeq2Seq,a.AutoModelForCTC],processor:o.AutoProcessor,default:{model:`Xenova/whisper-tiny.en`},type:`multimodal`},"text-to-audio":{tokenizer:i.AutoTokenizer,pipeline:j,model:[a.AutoModelForTextToWaveform,a.AutoModelForTextToSpectrogram],processor:[o.AutoProcessor,null],default:{model:`Xenova/speecht5_tts`},type:`text`},"image-to-text":{tokenizer:i.AutoTokenizer,pipeline:re,model:a.AutoModelForVision2Seq,processor:o.AutoProcessor,default:{model:`Xenova/vit-gpt2-image-captioning`},type:`multimodal`},"image-classification":{pipeline:ie,model:a.AutoModelForImageClassification,processor:o.AutoProcessor,default:{model:`Xenova/vit-base-patch16-224`},type:`multimodal`},"image-segmentation":{pipeline:A,model:[a.AutoModelForImageSegmentation,a.AutoModelForSemanticSegmentation,a.AutoModelForUniversalSegmentation],processor:o.AutoProcessor,default:{model:`Xenova/detr-resnet-50-panoptic`},type:`multimodal`},"background-removal":{pipeline:ae,model:[a.AutoModelForImageSegmentation,a.AutoModelForSemanticSegmentation,a.AutoModelForUniversalSegmentation],processor:o.AutoProcessor,default:{model:`Xenova/modnet`},type:`image`},"zero-shot-image-classification":{tokenizer:i.AutoTokenizer,pipeline:oe,model:a.AutoModel,processor:o.AutoProcessor,default:{model:`Xenova/clip-vit-base-patch32`},type:`multimodal`},"object-detection":{pipeline:se,model:a.AutoModelForObjectDetection,processor:o.AutoProcessor,default:{model:`Xenova/detr-resnet-50`},type:`multimodal`},"zero-shot-object-detection":{tokenizer:i.AutoTokenizer,pipeline:ce,model:a.AutoModelForZeroShotObjectDetection,processor:o.AutoProcessor,default:{model:`Xenova/owlvit-base-patch32`},type:`multimodal`},"document-question-answering":{tokenizer:i.AutoTokenizer,pipeline:le,model:a.AutoModelForDocumentQuestionAnswering,processor:o.AutoProcessor,default:{model:`Xenova/donut-base-finetuned-docvqa`},type:`multimodal`},"image-to-image":{pipeline:M,model:a.AutoModelForImageToImage,processor:o.AutoProcessor,default:{model:`Xenova/swin2SR-classical-sr-x2-64`},type:`image`},"depth-estimation":{pipeline:N,model:a.AutoModelForDepthEstimation,processor:o.AutoProcessor,default:{model:`Xenova/dpt-large`},type:`image`},"feature-extraction":{tokenizer:i.AutoTokenizer,pipeline:O,model:a.AutoModel,default:{model:`Xenova/all-MiniLM-L6-v2`},type:`text`},"image-feature-extraction":{processor:o.AutoProcessor,pipeline:ee,model:[a.AutoModelForImageFeatureExtraction,a.AutoModel],default:{model:`Xenova/vit-base-patch16-224-in21k`},type:`image`}}),de=Object.freeze({"sentiment-analysis":`text-classification`,ner:`token-classification`,asr:`automatic-speech-recognition`,"text-to-speech":`text-to-audio`,embeddings:`feature-extraction`});async function fe(e,t=null,{progress_callback:n=null,config:r=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,device:s=null,dtype:c=null,subfolder:u=`onnx`,use_external_data_format:d=null,model_file_name:f=null,session_options:p={}}={}){e=de[e]??e;let m=ue[e.split(`_`,1)[0]];if(!m)throw Error(`Unsupported pipeline: ${e}. Must be one of [${Object.keys(ue)}]`);t||(t=m.default.model,console.log(`No model specified. Using default model: "${t}".`));let h={progress_callback:n,config:r,cache_dir:i,local_files_only:a,revision:o,device:s,dtype:c,subfolder:u,use_external_data_format:d,model_file_name:f,session_options:p},g=new Map([[`tokenizer`,m.tokenizer],[`model`,m.model],[`processor`,m.processor]]),_=await P(g,t,h);_.task=e,(0,l.dispatchCallback)(n,{status:`ready`,task:e,model:t});let v=m.pipeline;return new v(_)}async function P(e,t,n){let r=Object.create(null),i=[];for(let[a,o]of e.entries()){if(!o)continue;let e;e=Array.isArray(o)?new Promise(async(e,r)=>{let i;for(let c of o){if(c===null){e(null);return}try{e(await c.from_pretrained(t,n));return}catch(e){var a,s;if((a=e.message)?.includes(`Unsupported model type`))i=e;else if((s=e.message)?.includes(`Could not locate file`))i=e;else{r(e);return}}}r(i)}):o.from_pretrained(t,n),r[a]=e,i.push(e)}await Promise.all(i);for(let[e,t]of Object.entries(r))r[e]=await t;return r}},"./src/tokenizers.js":(t,n,r)=>{r.r(n),r.d(n,{AlbertTokenizer:()=>He,AutoTokenizer:()=>Pt,BartTokenizer:()=>nt,BertTokenizer:()=>Ve,BlenderbotSmallTokenizer:()=>Ot,BlenderbotTokenizer:()=>Dt,BloomTokenizer:()=>ot,CLIPTokenizer:()=>Ct,CamembertTokenizer:()=>Ze,CodeGenTokenizer:()=>St,CodeLlamaTokenizer:()=>lt,CohereTokenizer:()=>Mt,ConvBertTokenizer:()=>Je,DebertaTokenizer:()=>Ge,DebertaV2Tokenizer:()=>Ke,DistilBertTokenizer:()=>Xe,ElectraTokenizer:()=>$e,EsmTokenizer:()=>mt,FalconTokenizer:()=>ft,GPT2Tokenizer:()=>tt,GPTNeoXTokenizer:()=>pt,GemmaTokenizer:()=>gt,Grok1Tokenizer:()=>_t,HerbertTokenizer:()=>qe,LlamaTokenizer:()=>ct,M2M100Tokenizer:()=>bt,MBart50Tokenizer:()=>it,MBartTokenizer:()=>rt,MPNetTokenizer:()=>dt,MarianTokenizer:()=>Tt,MgpstrTokenizer:()=>Nt,MobileBertTokenizer:()=>Ue,NllbTokenizer:()=>yt,NougatTokenizer:()=>At,PreTrainedTokenizer:()=>B,Qwen2Tokenizer:()=>ht,RoFormerTokenizer:()=>Ye,RobertaTokenizer:()=>at,SiglipTokenizer:()=>wt,SpeechT5Tokenizer:()=>kt,SqueezeBertTokenizer:()=>We,T5Tokenizer:()=>et,TokenizerModel:()=>O,VitsTokenizer:()=>jt,Wav2Vec2CTCTokenizer:()=>Et,WhisperTokenizer:()=>xt,XLMRobertaTokenizer:()=>ut,XLMTokenizer:()=>Qe,is_chinese_char:()=>b});var i=r( -/*! ./utils/generic.js */ -`./src/utils/generic.js`),a=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),o=r( -/*! ./utils/hub.js */ -`./src/utils/hub.js`),s=r( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),c=r( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),l=r( -/*! ./utils/data-structures.js */ -`./src/utils/data-structures.js`),u=r( -/*! @huggingface/jinja */ -`./node_modules/@huggingface/jinja/dist/index.js`),d=r( -/*! ./models/whisper/common_whisper.js */ -`./src/models/whisper/common_whisper.js`);async function f(e,t){let n=await Promise.all([(0,o.getModelJSON)(e,`tokenizer.json`,!0,t),(0,o.getModelJSON)(e,`tokenizer_config.json`,!0,t)]);return t.legacy!==null&&(n[1].legacy=t.legacy),n}function p(e,t){let n=[],r=0;for(let i of e.matchAll(t)){let t=i[0];r0&&n.push(t),r=i.index+t.length}return r=19968&&e<=40959||e>=13312&&e<=19903||e>=131072&&e<=173791||e>=173824&&e<=177983||e>=177984&&e<=178207||e>=178208&&e<=183983||e>=63744&&e<=64255||e>=194560&&e<=195103}function x(e,t,n){let r=[],i=0;for(;ithis.tokens_to_ids.get(e)??this.unk_token_id)}convert_ids_to_tokens(e){return e.map(e=>this.vocab[e]??this.unk_token)}}class ee extends O{constructor(e){super(e),this.tokens_to_ids=h(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.max_input_chars_per_word=e.max_input_chars_per_word??100,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){let t=[];for(let n of e){let e=[...n];if(e.length>this.max_input_chars_per_word){t.push(this.unk_token);continue}let r=!1,i=0,a=[];for(;i0&&(r=this.config.continuing_subword_prefix+r),this.tokens_to_ids.has(r)){n=r;break}--t}if(n===null){r=!0;break}a.push(n),i=t}r?t.push(this.unk_token):t.push(...a)}return t}}class k extends O{constructor(e,t){super(e);let n=e.vocab.length;this.vocab=Array(n),this.scores=Array(n);for(let t=0;t[e,t])),this.bos_token=` `,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.minScore=(0,s.min)(this.scores)[0],this.unk_score=this.minScore-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new l.CharTrie,this.trie.extend(this.vocab),this.fuse_unk=!0}populateNodes(e){let t=e.chars,n=1,r=0;for(;r{let e=[...Array.from({length:94},(e,t)=>t+33),...Array.from({length:12},(e,t)=>t+161),...Array.from({length:82},(e,t)=>t+174)],t=e.slice(),n=0;for(let r=0;r<256;++r)e.includes(r)||(e.push(r),t.push(256+n),n+=1);let r=t.map(e=>String.fromCharCode(e));return Object.fromEntries(e.map((e,t)=>[e,r[t]]))})(),ne=(0,a.reverseDictionary)(te);class re extends O{constructor(e){super(e),this.tokens_to_ids=h(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e;let t=Array.isArray(e.merges[0]);this.merges=t?e.merges:e.merges.map(e=>e.split(` `,2)),this.bpe_ranks=new Map(this.merges.map((e,t)=>[JSON.stringify(e),t])),this.end_of_word_suffix=e.end_of_word_suffix,this.continuing_subword_suffix=e.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new l.LRUCache(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(e){if(e.length===0)return[];let t=this.cache.get(e);if(t!==void 0)return t;let n=Array.from(e);this.end_of_word_suffix&&(n[n.length-1]+=this.end_of_word_suffix);let r=[];if(n.length>1){let e=new l.PriorityQueue((e,t)=>e.score`<0x${e.toString(16).toUpperCase().padStart(2,`0`)}>`);e.every(e=>this.tokens_to_ids.has(e))?t.push(...e):t.push(this.unk_token)}else t.push(this.unk_token)}return t}}class ie extends O{constructor(e,t){super(e),this.tokens_to_ids=h(t.target_lang?e.vocab[t.target_lang]:e.vocab),this.bos_token=t.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=t.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=t.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){return e}}class A extends i.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`BertNormalizer`:return new P(e);case`Precompiled`:return new z(e);case`Sequence`:return new fe(e);case`Replace`:return new ae(e);case`NFC`:return new se(e);case`NFD`:return new ce(e);case`NFKC`:return new le(e);case`NFKD`:return new j(e);case`Strip`:return new M(e);case`StripAccents`:return new N(e);case`Lowercase`:return new ue(e);case`Prepend`:return new de(e);default:throw Error(`Unknown Normalizer type: ${e.type}`)}}normalize(e){throw Error(`normalize should be implemented in subclass.`)}_call(e){return this.normalize(e)}}class ae extends A{normalize(e){let t=m(this.config.pattern);return t===null?e:e.replaceAll(t,this.config.content)}}class oe extends A{constructor(...t){super(...t),e.defineProperty(this,`form`,void 0)}normalize(e){return e=e.normalize(this.form),e}}class se extends oe{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFC`)}}class ce extends oe{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFD`)}}class le extends oe{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFKC`)}}class j extends oe{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFKD`)}}class M extends A{normalize(e){return this.config.strip_left&&this.config.strip_right?e=e.trim():(this.config.strip_left&&(e=e.trimStart()),this.config.strip_right&&(e=e.trimEnd())),e}}class N extends A{normalize(e){return e=v(e),e}}class ue extends A{normalize(e){return e=e.toLowerCase(),e}}class de extends A{normalize(e){return e=this.config.prepend+e,e}}class fe extends A{constructor(e){super(e),this.normalizers=e.normalizers.map(e=>A.fromConfig(e))}normalize(e){return this.normalizers.reduce((e,t)=>t.normalize(e),e)}}class P extends A{_tokenize_chinese_chars(e){let t=[];for(let n=0;nthis.pre_tokenize_text(e,t)):this.pre_tokenize_text(e,t)).flat()}_call(e,t){return this.pre_tokenize(e,t)}}class I extends F{constructor(e){super(),this.pattern=RegExp(`[^\\s${C}]+|[${C}]`,`gu`)}pre_tokenize_text(e,t){return e.trim().match(this.pattern)||[]}}class L extends F{constructor(e){super(),this.config=e,this.add_prefix_space=this.config.add_prefix_space,this.trim_offsets=this.config.trim_offsets,this.use_regex=this.config.use_regex??!0,this.pattern=/'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+/gu,this.byte_encoder=te,this.text_encoder=new TextEncoder}pre_tokenize_text(e,t){this.add_prefix_space&&!e.startsWith(` `)&&(e=` `+e);let n=this.use_regex?e.match(this.pattern)||[]:[e];return n.map(e=>Array.from(this.text_encoder.encode(e),e=>this.byte_encoder[e]).join(``))}}class pe extends F{constructor(e){super(),this.config=e,this.pattern=m(this.config.pattern,this.config.invert)}pre_tokenize_text(e,t){var n;return this.pattern===null?[]:this.config.invert?e.match(this.pattern)||[]:(n=this.config.behavior)?.toLowerCase()===`removed`?e.split(this.pattern).filter(e=>e):p(e,this.pattern)}}class me extends F{constructor(e){super(),this.config=e,this.pattern=RegExp(`[^${C}]+|[${C}]+`,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class he extends F{constructor(e){super(),this.config=e;let t=`[^\\d]+|\\d${this.config.individual_digits?``:`+`}`;this.pattern=new RegExp(t,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class ge extends i.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`TemplateProcessing`:return new R(e);case`ByteLevel`:return new ye(e);case`RobertaProcessing`:return new ve(e);case`BertProcessing`:return new _e(e);case`Sequence`:return new be(e);default:throw Error(`Unknown PostProcessor type: ${e.type}`)}}post_process(e,...t){throw Error(`post_process should be implemented in subclass.`)}_call(e,...t){return this.post_process(e,...t)}}class _e extends ge{constructor(e){super(e),this.cls=e.cls[0],this.sep=e.sep[0]}post_process(e,t=null,{add_special_tokens:n=!0}={}){n&&(e=(0,a.mergeArrays)([this.cls],e,[this.sep]));let r=Array(e.length).fill(0);if(t!==null){let i=n&&this instanceof ve?[this.sep]:[],o=n?[this.sep]:[];e=(0,a.mergeArrays)(e,i,t,o),r=(0,a.mergeArrays)(r,Array(t.length+i.length+o.length).fill(1))}return{tokens:e,token_type_ids:r}}}class ve extends _e{}class R extends ge{constructor(e){super(e),this.single=e.single,this.pair=e.pair}post_process(e,t=null,{add_special_tokens:n=!0}={}){let r=t===null?this.single:this.pair,i=[],o=[];for(let s of r)`SpecialToken`in s?n&&(i.push(s.SpecialToken.id),o.push(s.SpecialToken.type_id)):`Sequence`in s&&(s.Sequence.id===`A`?(i=(0,a.mergeArrays)(i,e),o=(0,a.mergeArrays)(o,Array(e.length).fill(s.Sequence.type_id))):s.Sequence.id===`B`&&(i=(0,a.mergeArrays)(i,t),o=(0,a.mergeArrays)(o,Array(t.length).fill(s.Sequence.type_id))));return{tokens:i,token_type_ids:o}}}class ye extends ge{post_process(e,t=null){return t&&(e=(0,a.mergeArrays)(e,t)),{tokens:e}}}class be extends ge{constructor(e){super(e),this.processors=e.processors.map(e=>ge.fromConfig(e))}post_process(e,t=null,n={}){let r;for(let i of this.processors)if(i instanceof ye){let n=i.post_process(e);if(e=n.tokens,t){let e=i.post_process(t);t=e.tokens}}else{let a=i.post_process(e,t,n);e=a.tokens,r=a.token_type_ids}return{tokens:e,token_type_ids:r}}}class xe extends i.Callable{constructor(e){super(),this.config=e,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets=e.trim_offsets}static fromConfig(e){if(e===null)return null;switch(e.type){case`WordPiece`:return new Ee(e);case`Metaspace`:return new Ne(e);case`ByteLevel`:return new De(e);case`Replace`:return new Se(e);case`ByteFallback`:return new Ce(e);case`Fuse`:return new we(e);case`Strip`:return new Te(e);case`Sequence`:return new ke(e);case`CTC`:return new Oe(e);case`BPEDecoder`:return new Ae(e);default:throw Error(`Unknown Decoder type: ${e.type}`)}}_call(e){return this.decode(e)}decode(e){return this.decode_chain(e).join(``)}decode_chain(e){throw Error("`decode_chain` should be implemented in subclass.")}}class Se extends xe{decode_chain(e){let t=m(this.config.pattern);return t===null?e:e.map(e=>e.replaceAll(t,this.config.content))}}class Ce extends xe{constructor(e){super(e),this.text_decoder=new TextDecoder}decode_chain(e){let t=[],n=[];for(let r of e){let e=null;if(r.length===6&&r.startsWith(`<0x`)&&r.endsWith(`>`)){let t=parseInt(r.slice(3,5),16);isNaN(t)||(e=t)}if(e!==null)n.push(e);else{if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}t.push(r)}}if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}return t}}class we extends xe{decode_chain(e){return[e.join(``)]}}class Te extends xe{constructor(e){super(e),this.content=this.config.content,this.start=this.config.start,this.stop=this.config.stop}decode_chain(e){return e.map(e=>{let t=0;for(let n=0;n(t!==0&&(e=e.startsWith(this.config.prefix)?e.replace(this.config.prefix,``):` `+e),this.cleanup&&(e=_(e)),e))}}class De extends xe{constructor(e){super(e),this.byte_decoder=ne,this.text_decoder=new TextDecoder(`utf-8`,{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(e){let t=e.join(``),n=new Uint8Array([...t].map(e=>this.byte_decoder[e])),r=this.text_decoder.decode(n);return r}decode_chain(e){let t=[],n=[];for(let r of e)this.added_tokens.find(e=>e.content===r)===void 0?n.push(r):(n.length>0&&(t.push(this.convert_tokens_to_string(n)),n=[]),t.push(r));return n.length>0&&t.push(this.convert_tokens_to_string(n)),t}}class Oe extends xe{constructor(e){super(e),this.pad_token=this.config.pad_token,this.word_delimiter_token=this.config.word_delimiter_token,this.cleanup=this.config.cleanup}convert_tokens_to_string(e){if(e.length===0)return``;let t=[e[0]];for(let n=1;ne!==this.pad_token),r=n.join(``);return this.cleanup&&(r=_(r).replaceAll(this.word_delimiter_token,` `).trim()),r}decode_chain(e){return[this.convert_tokens_to_string(e)]}}class ke extends xe{constructor(e){super(e),this.decoders=e.decoders.map(e=>xe.fromConfig(e))}decode_chain(e){return this.decoders.reduce((e,t)=>t.decode_chain(e),e)}}class Ae extends xe{constructor(e){super(e),this.suffix=this.config.suffix}decode_chain(e){return e.map((t,n)=>t.replaceAll(this.suffix,n===e.length-1?``:` `))}}class je extends xe{decode_chain(e){let t=``;for(let n=1;ne.normalize(`NFKC`)).join(`~`)}else e=e.normalize(`NFKC`);return e}}class Pe extends F{constructor(e){super(),this.tokenizers=e.pretokenizers.map(e=>F.fromConfig(e))}pre_tokenize_text(e,t){return this.tokenizers.reduce((e,n)=>n.pre_tokenize(e,t),[e])}}class Fe extends F{constructor(e){super()}pre_tokenize_text(e,t){return e.match(/\w+|[^\w\s]+/g)||[]}}class Ie extends F{constructor(e){super()}pre_tokenize_text(e,t){return S(e)}}class Le extends F{constructor(e){super(),this.config=e,this.pattern=m(this.config.pattern),this.content=this.config.content}pre_tokenize_text(e,t){return this.pattern===null?[e]:[e.replaceAll(this.pattern,this.config.content)]}}let Re=[`bos_token`,`eos_token`,`unk_token`,`sep_token`,`pad_token`,`cls_token`,`mask_token`];function ze(e,t,n,r){for(let i of Object.keys(e)){let o=t-e[i].length,s=n(i),c=Array(o).fill(s);e[i]=r===`right`?(0,a.mergeArrays)(e[i],c):(0,a.mergeArrays)(c,e[i])}}function Be(e,t){for(let n of Object.keys(e))e[n].length=t}class B extends i.Callable{constructor(t,n){super(),e.defineProperty(this,`return_token_type_ids`,!1),e.defineProperty(this,`padding_side`,`right`),this.config=n,this.normalizer=A.fromConfig(t.normalizer),this.pre_tokenizer=F.fromConfig(t.pre_tokenizer),this.model=O.fromConfig(t.model,n),this.post_processor=ge.fromConfig(t.post_processor),this.decoder=xe.fromConfig(t.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[];for(let e of t.added_tokens){let t=new D(e);this.added_tokens.push(t),this.model.tokens_to_ids.set(t.content,t.id),this.model.vocab[t.id]=t.content,t.special&&(this.special_tokens.push(t.content),this.all_special_ids.push(t.id))}if(this.additional_special_tokens=n.additional_special_tokens??[],this.special_tokens.push(...this.additional_special_tokens),this.special_tokens=[...new Set(this.special_tokens)],this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.added_tokens_splitter=new l.DictionarySplitter(this.added_tokens.map(e=>e.content)),this.added_tokens_map=new Map(this.added_tokens.map(e=>[e.content,e])),this.mask_token=this.getToken(`mask_token`),this.mask_token_id=this.model.tokens_to_ids.get(this.mask_token),this.pad_token=this.getToken(`pad_token`,`eos_token`),this.pad_token_id=this.model.tokens_to_ids.get(this.pad_token),this.sep_token=this.getToken(`sep_token`),this.sep_token_id=this.model.tokens_to_ids.get(this.sep_token),this.unk_token=this.getToken(`unk_token`),this.unk_token_id=this.model.tokens_to_ids.get(this.unk_token),this.bos_token=this.getToken(`bos_token`),this.bos_token_id=this.model.tokens_to_ids.get(this.bos_token),this.eos_token=this.getToken(`eos_token`),this.eos_token_id=this.model.tokens_to_ids.get(this.eos_token),this.model_max_length=n.model_max_length,this.remove_space=n.remove_space,this.clean_up_tokenization_spaces=n.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=n.do_lowercase_and_remove_accent??!1,n.padding_side&&(this.padding_side=n.padding_side),this.legacy=!1,this.chat_template=n.chat_template??null,Array.isArray(this.chat_template)){let e=Object.create(null);for(let{name:t,template:n}of this.chat_template){if(typeof t!=`string`||typeof n!=`string`)throw Error(`Chat template must be a list of objects with "name" and "template" properties`);e[t]=n}this.chat_template=e}this._compiled_template_cache=new Map}getToken(...e){for(let t of e){let e=this.config[t];if(!e)continue;if(typeof e==`object`){if(e.__type===`AddedToken`)return e.content;throw Error(`Unknown token: ${e}`)}else return e}return null}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){let s=await f(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o});return new this(...s)}_call(e,{text_pair:t=null,add_special_tokens:n=!0,padding:r=!1,truncation:i=null,max_length:a=null,return_tensor:o=!0,return_token_type_ids:l=null}={}){let u=Array.isArray(e),d;if(u){if(e.length===0)throw Error(`text array must be non-empty`);if(t!==null){if(Array.isArray(t)){if(e.length!==t.length)throw Error(`text and text_pair must have the same length`)}else throw Error(`text_pair must also be an array`);d=e.map((e,r)=>this._encode_plus(e,{text_pair:t[r],add_special_tokens:n,return_token_type_ids:l}))}else d=e.map(e=>this._encode_plus(e,{add_special_tokens:n,return_token_type_ids:l}))}else{if(e==null)throw Error(`text may not be null or undefined`);if(Array.isArray(t))throw Error("When specifying `text_pair`, since `text` is a string, `text_pair` must also be a string (i.e., not an array).");d=[this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:l})]}if(a===null?a=this.model_max_length:i===null&&(r===!0?(console.warn("`max_length` is ignored when `padding: true` and there is no truncation strategy. To pad to max length, use `padding: 'max_length'`."),a=this.model_max_length):r===!1&&(console.warn("Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation: true` to explicitly truncate examples to max length."),i=!0)),r===!0&&(a=Math.min((0,s.max)(d.map(e=>e.input_ids.length))[0],a??1/0)),a=Math.min(a,this.model_max_length??1/0),r||i)for(let e=0;ea?i&&Be(d[e],a):r&&ze(d[e],a,e=>e===`input_ids`?this.pad_token_id:0,this.padding_side);let f={};if(o){if(!(r&&i)&&d.some(e=>{var t;for(let n of Object.keys(e))if(e[n].length!==(t=d[0][n])?.length)return!0;return!1}))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=true' and 'truncation=true' to have batched tensors with the same length.`);let e=[d.length,d[0].input_ids.length];for(let t of Object.keys(d[0]))f[t]=new c.Tensor(`int64`,BigInt64Array.from(d.flatMap(e=>e[t]).map(BigInt)),e)}else{for(let e of Object.keys(d[0]))f[e]=d.map(t=>t[e]);if(!u)for(let e of Object.keys(f))f[e]=f[e][0]}return f}_encode_text(e){if(e===null)return null;let t=this.added_tokens_splitter.split(e);for(let e=0;e0&&(t[e-1]=t[e-1].trimEnd()),n.rstrip&&e{if(e.length===0)return[];if(this.added_tokens_map.has(e))return[e];if(this.remove_space===!0&&(e=e.trim().split(/\s+/).join(` `)),this.do_lowercase_and_remove_accent&&(e=y(e)),this.normalizer!==null&&(e=this.normalizer(e)),e.length===0)return[];let n=this.pre_tokenizer===null?[e]:this.pre_tokenizer(e,{section_index:t}),r=this.model(n);return r});return n}_encode_plus(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){let{tokens:i,token_type_ids:a}=this._tokenize_helper(e,{pair:t,add_special_tokens:n}),o=this.model.convert_tokens_to_ids(i),s={input_ids:o,attention_mask:Array(o.length).fill(1)};return(r??this.return_token_type_ids)&&a&&(s.token_type_ids=a),s}_tokenize_helper(e,{pair:t=null,add_special_tokens:n=!1}={}){let r=this._encode_text(e),i=this._encode_text(t);return this.post_processor?this.post_processor(r,i,{add_special_tokens:n}):{tokens:(0,a.mergeArrays)(r??[],i??[])}}tokenize(e,{pair:t=null,add_special_tokens:n=!1}={}){return this._tokenize_helper(e,{pair:t,add_special_tokens:n}).tokens}encode(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){return this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:r}).input_ids}batch_decode(e,t={}){return e instanceof c.Tensor&&(e=e.tolist()),e.map(e=>this.decode(e,t))}decode(e,t={}){if(e instanceof c.Tensor&&(e=g(e)),!Array.isArray(e)||e.length===0||!(0,a.isIntegralNumber)(e[0]))throw Error(`token_ids must be a non-empty array of integers.`);return this.decode_single(e,t)}decode_single(e,{skip_special_tokens:t=!1,clean_up_tokenization_spaces:n=null}){let r=this.model.convert_ids_to_tokens(e);t&&(r=r.filter(e=>!this.special_tokens.includes(e)));let i=this.decoder?this.decoder(r):r.join(` `);return this.decoder&&this.decoder.end_of_word_suffix&&(i=i.replaceAll(this.decoder.end_of_word_suffix,` `),t&&(i=i.trim())),(n??this.clean_up_tokenization_spaces)&&(i=_(i)),i}get_chat_template({chat_template:e=null,tools:t=null}={}){if(this.chat_template&&typeof this.chat_template==`object`){let n=this.chat_template;if(e!==null&&Object.hasOwn(n,e))e=n[e];else if(e===null)if(t!==null&&`tool_use`in n)e=n.tool_use;else if(`default`in n)e=n.default;else throw Error(`This model has multiple chat templates with no default specified! Please either pass a chat template or the name of the template you wish to use to the 'chat_template' argument. Available template names are ${Object.keys(n).sort()}.`)}else if(e===null)if(this.chat_template)e=this.chat_template;else throw Error(`Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating`);return e}apply_chat_template(e,{tools:t=null,documents:n=null,chat_template:r=null,add_generation_prompt:i=!1,tokenize:a=!0,padding:o=!1,truncation:s=!1,max_length:c=null,return_tensor:l=!0,return_dict:d=!1,tokenizer_kwargs:f={},...p}={}){if(r=this.get_chat_template({chat_template:r,tools:t}),typeof r!=`string`)throw Error(`chat_template must be a string, but got ${typeof r}`);let m=this._compiled_template_cache.get(r);m===void 0&&(m=new u.Template(r),this._compiled_template_cache.set(r,m));let h=Object.create(null);for(let e of Re){let t=this.getToken(e);t&&(h[e]=t)}let g=m.render({messages:e,add_generation_prompt:i,tools:t,documents:n,...h,...p});if(a){let e=this._call(g,{add_special_tokens:!1,padding:o,truncation:s,max_length:c,return_tensor:l,...f});return d?e:e.input_ids}return g}}class Ve extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class He extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ue extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class We extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ge extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ke extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class qe extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Je extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ye extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Xe extends B{}class Ze extends B{}class Qe extends B{constructor(t,n){super(t,n),e.defineProperty(this,`return_token_type_ids`,!0),console.warn('WARNING: `XLMTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}}class $e extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class et extends B{}class tt extends B{}class nt extends B{}class rt extends B{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{2}_[A-Z]{2}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return vt(this,e,t,n)}}class it extends rt{}class at extends B{}class ot extends B{}let st=`▁`;class ct extends B{constructor(t,n){super(t,n),e.defineProperty(this,`padding_side`,`left`),this.legacy=n.legacy??!0,this.legacy||(this.normalizer=null,this.pre_tokenizer=new Me({replacement:st,add_prefix_space:!0,prepend_scheme:`first`}))}_encode_text(e){if(e===null)return null;if(this.legacy||e.length===0)return super._encode_text(e);let t=super._encode_text(st+e.replaceAll(st,` `));return t.length>1&&t[0]===st&&this.special_tokens.includes(t[1])&&(t=t.slice(1)),t}}class lt extends B{}class ut extends B{}class dt extends B{}class ft extends B{}class pt extends B{}class mt extends B{}class ht extends B{}class gt extends B{}class _t extends B{}function vt(e,t,n,r){if(!(`language_codes`in e)||!Array.isArray(e.language_codes))throw Error("Tokenizer must have `language_codes` attribute set and it should be an array of language ids.");if(!(`languageRegex`in e)||!(e.languageRegex instanceof RegExp))throw Error("Tokenizer must have `languageRegex` attribute set and it should be a regular expression.");if(!(`lang_to_token`in e)||typeof e.lang_to_token!=`function`)throw Error("Tokenizer must have `lang_to_token` attribute set and it should be a function.");let i=r.src_lang,a=r.tgt_lang;if(!e.language_codes.includes(a))throw Error(`Target language code "${a}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);if(i!==void 0){if(!e.language_codes.includes(i))throw Error(`Source language code "${i}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);for(let t of e.post_processor.config.single)if(`SpecialToken`in t&&e.languageRegex.test(t.SpecialToken.id)){t.SpecialToken.id=e.lang_to_token(i);break}}return r.forced_bos_token_id=e.model.convert_tokens_to_ids([e.lang_to_token(a)])[0],e._call(t,n)}class yt extends B{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{3}_[A-Z][a-z]{3}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return vt(this,e,t,n)}}class bt extends B{constructor(e,t){super(e,t),this.languageRegex=/^__[a-z]{2,3}__$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)).map(e=>e.slice(2,-2)),this.lang_to_token=e=>`__${e}__`}_build_translation_inputs(e,t,n){return vt(this,e,t,n)}}class xt extends B{get timestamp_begin(){return this.model.convert_tokens_to_ids([`<|notimestamps|>`])[0]+1}_decode_asr(e,{return_timestamps:t=!1,return_language:n=!1,time_precision:r=null,force_full_sequences:i=!0}={}){if(r===null)throw Error(`Must specify time_precision`);let a=null,o=t===`word`;function c(){return{language:a,timestamp:[null,null],text:``}}let l=[],u=c(),f=0,p=this.timestamp_begin,m=1500,h=p+m,g=[],_=[],v=!1,y=null,b=new Set(this.all_special_ids);for(let n of e){let e=n.tokens,i=o?n.token_timestamps:null,m=null,x=p;if(`stride`in n){let[t,i,a]=n.stride;if(f-=i,y=t-a,i&&(x=i/r+p),a)for(let t=e.length-1;t>=0;--t){let n=Number(e[t]);if(n>=p){if(m!==null&&(n-p)*r=p&&y<=h){let e=(y-p)*r+f,t=(0,s.round)(e,2);if(m!==null&&y>=m)v=!0;else if(v||g.length>0&&y0?(g.push(S),o&&_.push(C)):g.every(e=>e.length===0)&&(u=c(),g=[],S=[],_=[],C=[])}if(g.length>0){if(i&&t)throw Error(`Whisper did not predict an ending timestamp, which can happen if audio is cut off in the middle of a word. Also make sure WhisperTimeStampLogitsProcessor was used during generation.`);let[e,n]=this.findLongestCommonSequence(g,_),r=this.decode(e);u.text=r,o&&(u.words=this.collateWordTimestamps(e,n,a)),l.push(u)}let x=Object.create(null),S=l.map(e=>e.text).join(``);if(t||n){for(let e=0;e0,o=a?[]:null,s=a?t[0]:null;for(let c=1;ce===g[n]&&s[i+n]<=t[c][m+n]).length:p.filter((e,t)=>e===g[t]).length;let v=e/1e4,y=_/e+v;_>1&&y>u&&(u=y,d=[i,o,m,h])}let[p,m,h,g]=d,_=Math.floor((m+p)/2),v=Math.floor((g+h)/2);i.push(...n.slice(0,_)),n=l.slice(v),r=n.length,a&&(o.push(...s.slice(0,_)),s=t[c].slice(v))}return i.push(...n),a?(o.push(...s),[i,o]):[i,[]]}collateWordTimestamps(e,t,n){let[r,i,a]=this.combineTokensIntoWords(e,n),o=[];for(let e=0;e=r){let e=((t-r)*n).toFixed(2);i.push(`<|${e}|>`),i.push([])}else i[i.length-1].push(t);return i=i.map(e=>typeof e==`string`?e:super.decode(e,t)),i.join(``)}splitTokensOnUnicode(e){let t=this.decode(e,{decode_with_timestamps:!0}),n=`�`,r=[],i=[],a=[],o=[],s=[],c=0;for(let l=0;l=this.model.tokens_to_ids.get(`<|endoftext|>`),f=c.startsWith(` `),p=c.trim(),m=s.test(p);if(d||f||m||i.length===0)i.push(c),a.push(l),o.push(u);else{let e=i.length-1;i[e]+=c,a[e].push(...l),o[e].push(...u)}}return[i,a,o]}mergePunctuations(e,t,n,r,i){let o=structuredClone(e),s=structuredClone(t),c=structuredClone(n),l=o.length-2,u=o.length-1;for(;l>=0;)o[l].startsWith(` `)&&r.includes(o[l].trim())?(o[u]=o[l]+o[u],s[u]=(0,a.mergeArrays)(s[l],s[u]),c[u]=(0,a.mergeArrays)(c[l],c[u]),o[l]=``,s[l]=[],c[l]=[]):u=l,--l;for(l=0,u=1;ue),s.filter(e=>e.length>0),c.filter(e=>e.length>0)]}}class St extends B{}class Ct extends B{}class wt extends B{}class Tt extends B{constructor(e,t){super(e,t),this.languageRegex=/^(>>\w+<<)\s*/g,this.supported_language_codes=this.model.vocab.filter(e=>this.languageRegex.test(e)),console.warn('WARNING: `MarianTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}_encode_text(e){if(e===null)return null;let[t,...n]=e.trim().split(this.languageRegex);if(n.length===0)return super._encode_text(t);if(n.length===2){let[e,t]=n;return this.supported_language_codes.includes(e)||console.warn(`Unsupported language code "${e}" detected, which may lead to unexpected behavior. Should be one of: ${JSON.stringify(this.supported_language_codes)}`),(0,a.mergeArrays)([e],super._encode_text(t))}}}class Et extends B{}class Dt extends B{}class Ot extends B{}class kt extends B{}class At extends B{}class jt extends B{constructor(e,t){super(e,t),this.decoder=new je({})}}class Mt extends B{}class Nt extends B{}class Pt{static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){var s;let[c,l]=await f(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o}),u=(s=l.tokenizer_class)?.replace(/Fast$/,``)??`PreTrainedTokenizer`,d=this.TOKENIZER_CLASS_MAPPING[u];return d||(console.warn(`Unknown tokenizer class "${u}", attempting to construct from base class.`),d=B),new d(c,l)}}e.defineProperty(Pt,`TOKENIZER_CLASS_MAPPING`,{T5Tokenizer:et,DistilBertTokenizer:Xe,CamembertTokenizer:Ze,DebertaTokenizer:Ge,DebertaV2Tokenizer:Ke,BertTokenizer:Ve,HerbertTokenizer:qe,ConvBertTokenizer:Je,RoFormerTokenizer:Ye,XLMTokenizer:Qe,ElectraTokenizer:$e,MobileBertTokenizer:Ue,SqueezeBertTokenizer:We,AlbertTokenizer:He,GPT2Tokenizer:tt,BartTokenizer:nt,MBartTokenizer:rt,MBart50Tokenizer:it,RobertaTokenizer:at,WhisperTokenizer:xt,CodeGenTokenizer:St,CLIPTokenizer:Ct,SiglipTokenizer:wt,MarianTokenizer:Tt,BloomTokenizer:ot,NllbTokenizer:yt,M2M100Tokenizer:bt,LlamaTokenizer:ct,CodeLlamaTokenizer:lt,XLMRobertaTokenizer:ut,MPNetTokenizer:dt,FalconTokenizer:ft,GPTNeoXTokenizer:pt,EsmTokenizer:mt,Wav2Vec2CTCTokenizer:Et,BlenderbotTokenizer:Dt,BlenderbotSmallTokenizer:Ot,SpeechT5Tokenizer:kt,NougatTokenizer:At,VitsTokenizer:jt,Qwen2Tokenizer:ht,GemmaTokenizer:gt,Grok1Tokenizer:_t,CohereTokenizer:Mt,MgpstrTokenizer:Nt,PreTrainedTokenizer:B})},"./src/utils/audio.js":(e,t,n)=>{n.r(t),n.d(t,{RawAudio:()=>O,hamming:()=>f,hanning:()=>d,mel_filter_bank:()=>y,read_audio:()=>l,spectrogram:()=>w,window_function:()=>T});var r=n( -/*! ./hub.js */ -`./src/utils/hub.js`),i=n( -/*! ./maths.js */ -`./src/utils/maths.js`),a=n( -/*! ./core.js */ -`./src/utils/core.js`),o=n( -/*! ../env.js */ -`./src/env.js`),s=n( -/*! ./tensor.js */ -`./src/utils/tensor.js`),c=n( -/*! node:fs */ -`?7992`);async function l(e,t){if(typeof AudioContext>`u`)throw Error("Unable to load audio from path/URL since `AudioContext` is not available in your environment. Instead, audio data should be passed directly to the pipeline/processor. For more information and some example code, see https://huggingface.co/docs/transformers.js/guides/node-audio-processing.");let n=await(await(0,r.getFile)(e)).arrayBuffer(),i=new AudioContext({sampleRate:t});t===void 0&&console.warn(`No sampling rate provided, using default of ${i.sampleRate}Hz.`);let a=await i.decodeAudioData(n),o;if(a.numberOfChannels===2){let e=Math.sqrt(2),t=a.getChannelData(0),n=a.getChannelData(1);o=new Float32Array(t.length);for(let r=0;r2595*Math.log10(1+e/700),kaldi:e=>1127*Math.log(1+e/700),slaney:(e,t=1e3,n=15,r=27/Math.log(6.4))=>e>=t?n+Math.log(e/t)*r:3*e/200};function m(e,t=`htk`){let n=p[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}let h={htk:e=>700*(10**(e/2595)-1),kaldi:e=>700*(Math.exp(e/1127)-1),slaney:(e,t=1e3,n=15,r=Math.log(6.4)/27)=>e>=n?t*Math.exp(r*(e-n)):200*e/3};function g(e,t=`htk`){let n=h[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}function _(e,t){let n=Float64Array.from({length:t.length-1},(e,n)=>t[n+1]-t[n]),r=Array.from({length:e.length},()=>Array(t.length));for(let n=0;nArray(e.length));for(let t=0;te+r*n)}function y(e,t,n,r,i,a=null,o=`htk`,s=!1){if(a!==null&&a!==`slaney`)throw Error(`norm must be one of null or "slaney"`);if(e<2)throw Error(`Require num_frequency_bins: ${e} >= 2`);if(n>r)throw Error(`Require min_frequency: ${n} <= max_frequency: ${r}`);let c=m(n,o),l=m(r,o),u=v(c,l,t+2),d=g(u,o),f;if(s){let t=i/((e-1)*2);f=m(Float64Array.from({length:e},(e,n)=>n*t),o),d=u}else f=v(0,Math.floor(i/2),e);let p=_(f,d);if(a!==null&&a===`slaney`)for(let n=0;na)throw Error(`frame_length (${n}) may not be larger than fft_length (${a})`);if(D!==n)throw Error(`Length of the window (${D}) must equal frame_length (${n})`);if(r<=0)throw Error(`hop_length must be greater than zero`);if(o===null&&p!==null)throw Error("You have provided `mel_filters` but `power` is `None`. Mel spectrogram computation is not yet supported for complex-valued spectrogram. Specify `power` to fix this issue.");if(!f)throw Error("`preemphasis_htk_flavor=false` is not currently supported.");if(c){if(l!==`reflect`)throw Error(`pad_mode="${l}" not implemented yet.`);let t=Math.floor((a-1)/2)+1;e=b(e,t,t)}let O=Math.floor(1+Math.floor((e.length-n)/r));x!==null&&OO?T&&(te=w):te=k=w);let ne=new i.FFT(a),re=new Float64Array(a),ie=new Float64Array(ne.outputBufferSize),A=new Float32Array(ee*te);for(let i=0;i=1;--e)re[e]-=d*re[e-1];re[0]*=1-d}for(let e=0;ee**.85);break;default:throw Error(`Unknown window type ${t}.`)}if(n&&(o=o.subarray(0,e)),r===null)return o;if(e>r)throw Error(`Length of the window (${e}) may not be larger than frame_length (${r})`);return o}function E(e,t){let n=44,r=new ArrayBuffer(n+e.length*4),i=new DataView(r);D(i,0,`RIFF`),i.setUint32(4,36+e.length*4,!0),D(i,8,`WAVE`),D(i,12,`fmt `),i.setUint32(16,16,!0),i.setUint16(20,3,!0),i.setUint16(22,1,!0),i.setUint32(24,t,!0),i.setUint32(28,t*4,!0),i.setUint16(32,4,!0),i.setUint16(34,32,!0),D(i,36,`data`),i.setUint32(40,e.length*4,!0);for(let t=0;t{let n=await t.arrayBuffer();c.writeFileSync(e,Buffer.from(n))};else throw Error(`Unable to save because filesystem is disabled in this environment.`);await t(e,this.toBlob())}}},"./src/utils/constants.js":(e,t,n)=>{n.r(t),n.d(t,{CHAT_TEMPLATE_NAME:()=>c,CONFIG_NAME:()=>i,FEATURE_EXTRACTOR_NAME:()=>a,GENERATION_CONFIG_NAME:()=>l,GITHUB_ISSUE_URL:()=>r,IMAGE_PROCESSOR_NAME:()=>o,PROCESSOR_NAME:()=>s});let r=`https://github.com/huggingface/transformers.js/issues/new/choose`,i=`config.json`,a=`preprocessor_config.json`,o=a,s=`processor_config.json`,c=`chat_template.jinja`,l=`generation_config.json`},"./src/utils/core.js":(e,t,n)=>{n.r(t),n.d(t,{calculateDimensions:()=>l,calculateReflectOffset:()=>p,count:()=>_,dispatchCallback:()=>r,escapeRegExp:()=>a,isIntegralNumber:()=>s,isNullishDimension:()=>c,isTypedArray:()=>o,len:()=>g,mergeArrays:()=>d,pick:()=>h,pop:()=>u,product:()=>f,reverseDictionary:()=>i,saveBlob:()=>m});function r(e,t){e&&e(t)}function i(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[t,e]))}function a(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function o(e){var t;return(e==null||(t=e.prototype)==null||(t=t.__proto__)==null||(t=t.constructor)==null?void 0:t.name)===`TypedArray`}function s(e){return Number.isInteger(e)||typeof e==`bigint`}function c(e){return e==null||e===-1}function l(e){let t=[],n=e;for(;Array.isArray(n);)t.push(n.length),n=n[0];return t}function u(e,t,n=void 0){let r=e[t];if(r!==void 0)return delete e[t],r;if(n===void 0)throw Error(`Key ${t} does not exist in object.`);return n}function d(...e){return Array.prototype.concat.apply([],e)}function f(...e){return e.reduce((e,t)=>e.flatMap(e=>t.map(t=>[e,t])))}function p(e,t){return Math.abs((e+t)%(2*t)-t)}function m(e,t){let n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=e,r.click(),r.remove(),URL.revokeObjectURL(n)}function h(e,t){return Object.assign({},...t.map(t=>{if(e[t]!==void 0)return{[t]:e[t]}}))}function g(e){let t=0;for(let n of e)++t;return t}function _(e,t){let n=0;for(let r of e)r===t&&++n;return n}},"./src/utils/data-structures.js":(e,t,n)=>{n.r(t),n.d(t,{CharTrie:()=>i,DictionarySplitter:()=>c,LRUCache:()=>l,PriorityQueue:()=>r,TokenLattice:()=>o});class r{constructor(e=(e,t)=>e>t,t=1/0){this._heap=[],this._comparator=e,this._maxSize=t}get size(){return this._heap.length}isEmpty(){return this.size===0}peek(){return this._heap[0]}push(...e){return this.extend(e)}extend(e){for(let t of e)if(this.size0&&this._swap(0,t),this._heap.pop(),this._siftDown(),e}replace(e){let t=this.peek();return this._heap[0]=e,this._siftDown(),t}_parent(e){return(e+1>>>1)-1}_left(e){return(e<<1)+1}_right(e){return e+1<<1}_greater(e,t){return this._comparator(this._heap[e],this._heap[t])}_swap(e,t){let n=this._heap[e];this._heap[e]=this._heap[t],this._heap[t]=n}_siftUp(){this._siftUpFrom(this.size-1)}_siftUpFrom(e){for(;e>0&&this._greater(e,this._parent(e));)this._swap(e,this._parent(e)),e=this._parent(e)}_siftDown(){let e=0;for(;this._left(e)[]),this.endNodes=Array.from({length:this.len+1},()=>[]);let r=new s(this.bosTokenId,0,0,0,0),i=new s(this.eosTokenId,1,this.len,0,0);this.nodes.push(r.clone()),this.nodes.push(i.clone()),this.beginNodes[this.len].push(i),this.endNodes[0].push(r)}insert(e,t,n,r){let i=this.nodes.length,a=new s(r,i,e,t,n);this.beginNodes[e].push(a),this.endNodes[e+t].push(a),this.nodes.push(a)}viterbi(){let e=this.len,t=0;for(;t<=e;){if(this.beginNodes[t].length==0)return[];for(let e of this.beginNodes[t]){e.prev=null;let n=0,r=null;for(let i of this.endNodes[t]){let t=i.backtraceScore+e.score;(r===null||t>n)&&(r=i.clone(),n=t)}if(r!==null)e.prev=r,e.backtraceScore=n;else return[]}++t}let n=[],r=this.beginNodes[e][0],i=r.prev;if(i===null)return[];let a=i.clone();for(;a.prev!==null;){n.push(a.clone());let e=a.clone();a=e.prev.clone()}return n.reverse(),n}piece(e){return this.chars.slice(e.pos,e.pos+e.length).join(``)}tokens(){let e=this.viterbi();return e.map(e=>this.piece(e))}tokenIds(){let e=this.viterbi();return e.map(e=>e.tokenId)}}class s{constructor(e,t,n,r,i){this.tokenId=e,this.nodeId=t,this.pos=n,this.length=r,this.score=i,this.prev=null,this.backtraceScore=0}clone(){let e=new s(this.tokenId,this.nodeId,this.pos,this.length,this.score);return e.prev=this.prev,e.backtraceScore=this.backtraceScore,e}}class c{constructor(e){this.trie=this._buildTrie(e)}_buildTrie(e){let t=Object.create(null);for(let i of e){var n,r;let e=t;for(let t=0;tr&&t.push(e.slice(r,i)),t.push(o),i+=o.length,r=i):++i}return rthis.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}}},"./src/utils/devices.js":(e,t,n)=>{n.r(t),n.d(t,{DEVICE_TYPES:()=>r});let r=Object.freeze({auto:`auto`,gpu:`gpu`,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:`webnn`,"webnn-npu":`webnn-npu`,"webnn-gpu":`webnn-gpu`,"webnn-cpu":`webnn-cpu`})},"./src/utils/dtypes.js":(e,t,n)=>{n.r(t),n.d(t,{DATA_TYPES:()=>o,DEFAULT_DEVICE_DTYPE_MAPPING:()=>s,DEFAULT_DTYPE_SUFFIX_MAPPING:()=>c,isWebGpuFp16Supported:()=>a});var r=n( -/*! ../env.js */ -`./src/env.js`),i=n( -/*! ./devices.js */ -`./src/utils/devices.js`);let a=function(){let e;return async function(){if(e===void 0)if(!r.apis.IS_WEBGPU_AVAILABLE)e=!1;else try{let t=await navigator.gpu.requestAdapter();e=t.features.has(`shader-f16`)}catch{e=!1}return e}}(),o=Object.freeze({auto:`auto`,fp32:`fp32`,fp16:`fp16`,q8:`q8`,int8:`int8`,uint8:`uint8`,q4:`q4`,bnb4:`bnb4`,q4f16:`q4f16`}),s=Object.freeze({[i.DEVICE_TYPES.wasm]:o.q8}),c=Object.freeze({[o.fp32]:``,[o.fp16]:`_fp16`,[o.int8]:`_int8`,[o.uint8]:`_uint8`,[o.q8]:`_quantized`,[o.q4]:`_q4`,[o.q4f16]:`_q4f16`,[o.bnb4]:`_bnb4`})},"./src/utils/generic.js":(e,t,n)=>{n.r(t),n.d(t,{Callable:()=>r});let r=class{constructor(){let e=function(...t){return e._call(...t)};return Object.setPrototypeOf(e,new.target.prototype)}_call(...e){throw Error(`Must implement _call method in subclass`)}}},"./src/utils/hub.js":(e,t,n)=>{n.r(t),n.d(t,{MAX_EXTERNAL_DATA_CHUNKS:()=>s,getFile:()=>p,getModelFile:()=>v,getModelJSON:()=>b,getModelText:()=>y});var r=n( -/*! node:fs */ -`?7992`),i=n( -/*! node:path */ -`?5af5`),a=n( -/*! ../env.js */ -`./src/env.js`),o=n( -/*! ./core.js */ -`./src/utils/core.js`);let s=100,c={txt:`text/plain`,html:`text/html`,css:`text/css`,js:`text/javascript`,json:`application/json`,png:`image/png`,jpg:`image/jpeg`,jpeg:`image/jpeg`,gif:`image/gif`};class l{constructor(e){if(this.filePath=e,this.headers=new Headers,this.exists=r.existsSync(e),this.exists){this.status=200,this.statusText=`OK`;let t=r.statSync(e);this.headers.set(`content-length`,t.size.toString()),this.updateContentType();let n=r.createReadStream(e);this.body=new ReadableStream({start(e){n.on(`data`,t=>e.enqueue(t)),n.on(`end`,()=>e.close()),n.on(`error`,t=>e.error(t))},cancel(){n.destroy()}})}else this.status=404,this.statusText=`Not Found`,this.body=null}updateContentType(){let e=this.filePath.toString().split(`.`).pop().toLowerCase();this.headers.set(`content-type`,c[e]??`application/octet-stream`)}clone(){let e=new l(this.filePath);return e.exists=this.exists,e.status=this.status,e.statusText=this.statusText,e.headers=new Headers(this.headers),e}async arrayBuffer(){let e=await r.promises.readFile(this.filePath);return e.buffer}async blob(){let e=await r.promises.readFile(this.filePath);return new Blob([e],{type:this.headers.get(`content-type`)})}async text(){let e=await r.promises.readFile(this.filePath,`utf8`);return e}async json(){return JSON.parse(await this.text())}}function u(e,t=null,n=null){let r;try{r=new URL(e)}catch{return!1}return!(t&&!t.includes(r.protocol)||n&&!n.includes(r.hostname))}let d=/^(\b[\w\-.]+\b\/)?\b[\w\-.]{1,96}\b$/;function f(e){return!(!d.test(e)||e.includes(`..`)||e.includes(`--`)||e.endsWith(`.git`)||e.endsWith(`.ipynb`))}async function p(e){var t;if(a.env.useFS&&!u(e,[`http:`,`https:`,`blob:`]))return new l(e instanceof URL?e.protocol===`file:`?e.pathname:e.toString():e);if(typeof process<`u`&&((t=process)==null||(t=t.release)==null?void 0:t.name)===`node`){var n;let t=!!(n={})?.TESTING_REMOTELY,o=a.env.version,s=new Headers;s.set(`User-Agent`,`transformers.js/${o}; is_ci/${t};`);let c=u(e,[`http:`,`https:`],[`huggingface.co`,`hf.co`]);if(c){var r,i;let e=(r={})?.HF_TOKEN??(i={})?.HF_ACCESS_TOKEN;e&&s.set(`Authorization`,`Bearer ${e}`)}return fetch(e,{headers:s})}else return fetch(e)}let m={400:`Bad request error occurred while trying to load file`,401:`Unauthorized access to file`,403:`Forbidden access to file`,404:`Could not locate file`,408:`Request timeout error occurred while trying to load file`,500:`Internal server error error occurred while trying to load file`,502:`Bad gateway error occurred while trying to load file`,503:`Service unavailable error occurred while trying to load file`,504:`Gateway timeout error occurred while trying to load file`};function h(e,t,n){if(!n)return null;let r=m[e]??`Error (${e}) occurred while trying to load file`;throw Error(`${r}: "${t}".`)}class g{constructor(e){this.path=e}async match(e){let t=i.join(this.path,e),n=new l(t);if(n.exists)return n}async put(e,t,n=void 0){let a=i.join(this.path,e);try{let e=t.headers.get(`Content-Length`),o=parseInt(e??`0`),s=0;await r.promises.mkdir(i.dirname(a),{recursive:!0});let c=r.createWriteStream(a),l=t.body.getReader();for(;;){let{done:e,value:t}=await l.read();if(e)break;await new Promise((e,n)=>{c.write(t,t=>{if(t){n(t);return}e()})}),s+=t.length;let r=o?s/o*100:0;n?.({progress:r,loaded:s,total:o})}c.close()}catch(e){try{await r.promises.unlink(a)}catch{}throw e}}}async function _(e,...t){for(let n of t)try{let t=await e.match(n);if(t)return t}catch{continue}}async function v(e,t,n=!0,r={},i=!1){if(!a.env.allowLocalModels){if(r.local_files_only)throw Error("Invalid configuration detected: local models are disabled (`env.allowLocalModels=false`) but you have requested to only use local models (`local_files_only=true`).");if(!a.env.allowRemoteModels)throw Error("Invalid configuration detected: both local and remote models are disabled. Fix by setting `env.allowLocalModels` or `env.allowRemoteModels` to `true`.")}(0,o.dispatchCallback)(r.progress_callback,{status:`initiate`,name:e,file:t});let s;if(!s&&a.env.useCustomCache){if(!a.env.customCache)throw Error("`env.useCustomCache=true`, but `env.customCache` is not defined.");if(!a.env.customCache.match||!a.env.customCache.put)throw Error("`env.customCache` must be an object which implements the `match` and `put` functions of the Web Cache API. For more information, see https://developer.mozilla.org/en-US/docs/Web/API/Cache");s=a.env.customCache}if(!s&&a.env.useBrowserCache){if(typeof caches>`u`)throw Error(`Browser cache is not available in this environment.`);try{s=await caches.open(`transformers-cache`)}catch(e){console.warn(`An error occurred while opening the browser cache:`,e)}}if(!s&&a.env.useFSCache){if(!a.apis.IS_FS_AVAILABLE)throw Error(`File System Cache is not available in this environment.`);s=new g(r.cache_dir??a.env.cacheDir)}let c=r.revision??`main`,d=S(e,t),m=f(e),v=m?S(a.env.localModelPath,d):d,y=S(a.env.remoteHost,a.env.remotePathTemplate.replaceAll(`{model}`,e).replaceAll(`{revision}`,encodeURIComponent(c)),t),b,C=s instanceof g?c===`main`?d:S(e,c,t):y,w=!1,T;s&&(T=await _(s,v,C));let E=T!==void 0;if(T===void 0){if(a.env.allowLocalModels){let e=u(d,[`http:`,`https:`]);if(e){if(r.local_files_only)throw Error(`\`local_files_only=true\`, but attempted to load a remote file from: ${d}.`);if(!a.env.allowRemoteModels)throw Error(`\`env.allowRemoteModels=false\`, but attempted to load a remote file from: ${d}.`)}else try{T=await p(v),b=v}catch(e){console.warn(`Unable to load from local path "${v}": "${e}"`)}}if(T===void 0||T.status===404){if(r.local_files_only||!a.env.allowRemoteModels){if(n)throw Error(`\`local_files_only=true\` or \`env.allowRemoteModels=false\` and file was not found locally at "${v}".`);return null}if(!m)throw Error(`Local file missing at "${v}" and download aborted due to invalid model ID "${e}".`);if(T=await p(y),T.status!==200)return h(T.status,y,n);b=C}w=s&&typeof Response<`u`&&T instanceof Response&&T.status===200}(0,o.dispatchCallback)(r.progress_callback,{status:`download`,name:e,file:t});let D;if(!(a.apis.IS_NODE_ENV&&i)){let n;r.progress_callback?E&&typeof navigator<`u`&&/firefox/i.test(navigator.userAgent)?(n=new Uint8Array(await T.arrayBuffer()),(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,progress:100,loaded:n.length,total:n.length})):n=await x(T,n=>{(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,...n})}):n=new Uint8Array(await T.arrayBuffer()),D=n}if(w&&b&&await s.match(b)===void 0&&(D?await s.put(b,new Response(D,{headers:T.headers})).catch(e=>{console.warn(`Unable to add response to browser cache: ${e}.`)}):await s.put(b,T,r.progress_callback)),(0,o.dispatchCallback)(r.progress_callback,{status:`done`,name:e,file:t}),D){if(!a.apis.IS_NODE_ENV&&i)throw Error(`Cannot return path in a browser environment.`);return D}if(T instanceof l)return T.filePath;let O=await s?.match(b);if(O instanceof l)return O.filePath;if(O instanceof Response)return new Uint8Array(await O.arrayBuffer());if(typeof O==`string`)return O;throw Error(`Unable to get model file path or buffer.`)}async function y(e,t,n=!0,r={}){let i=await v(e,t,n,r,!1);if(i===null)return null;let a=new TextDecoder(`utf-8`);return a.decode(i)}async function b(e,t,n=!0,r={}){let i=await y(e,t,n,r);return i===null?{}:JSON.parse(i)}async function x(e,t){let n=e.headers.get(`Content-Length`);n===null&&console.warn(`Unable to determine content-length from response headers. Will expand buffer when needed.`);let r=parseInt(n??`0`),i=new Uint8Array(r),a=0,o=e.body.getReader();async function s(){let{done:e,value:n}=await o.read();if(e)return;let c=a+n.length;if(c>r){r=c;let e=new Uint8Array(r);e.set(i),i=e}i.set(n,a),a=c;let l=a/r*100;return t({progress:l,loaded:a,total:r}),s()}return await s(),i}function S(...e){return e=e.map((t,n)=>(n&&(t=t.replace(RegExp(`^/`),``)),n!==e.length-1&&(t=t.replace(RegExp(`/$`),``)),t)),e.join(`/`)}},"./src/utils/image.js":(e,t,n)=>{n.r(t),n.d(t,{RawImage:()=>m,load_image:()=>h});var r=n( -/*! ./core.js */ -`./src/utils/core.js`),i=n( -/*! ./hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../env.js */ -`./src/env.js`),o=n( -/*! ./tensor.js */ -`./src/utils/tensor.js`),s=n( -/*! sharp */ -`?2b25`);let c,l,u,d=a.apis.IS_BROWSER_ENV||a.apis.IS_WEBWORKER_ENV;if(d)c=(e,t)=>{if(!self.OffscreenCanvas)throw Error(`OffscreenCanvas not supported by this browser.`);return new self.OffscreenCanvas(e,t)},u=self.createImageBitmap,l=self.ImageData;else if(s)u=async e=>{let t=await e.metadata(),n=t.channels,{data:r,info:i}=await e.rotate().raw().toBuffer({resolveWithObject:!0}),a=new m(new Uint8ClampedArray(r),i.width,i.height,i.channels);return n!==void 0&&n!==i.channels&&a.convert(n),a};else throw Error(`Unable to load image processing library.`);let f={0:`nearest`,1:`lanczos`,2:`bilinear`,3:`bicubic`,4:`box`,5:`hamming`},p=new Map([[`png`,`image/png`],[`jpg`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`gif`,`image/gif`]]);class m{constructor(e,t,n,r){this.data=e,this.width=t,this.height=n,this.channels=r}get size(){return[this.width,this.height]}static async read(e){if(e instanceof m)return e;if(typeof e==`string`||e instanceof URL)return await this.fromURL(e);if(e instanceof Blob)return await this.fromBlob(e);if(typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof OffscreenCanvas<`u`&&e instanceof OffscreenCanvas)return this.fromCanvas(e);throw Error(`Unsupported input type: ${typeof e}`)}static fromCanvas(e){if(!d)throw Error(`fromCanvas() is only supported in browser environments.`);let t=e.getContext(`2d`),n=t.getImageData(0,0,e.width,e.height).data;return new m(n,e.width,e.height,4)}static async fromURL(e){let t=await(0,i.getFile)(e);if(t.status!==200)throw Error(`Unable to read image from "${e}" (${t.status} ${t.statusText})`);let n=await t.blob();return this.fromBlob(n)}static async fromBlob(e){if(d){let t=await u(e),n=c(t.width,t.height).getContext(`2d`);return n.drawImage(t,0,0),new this(n.getImageData(0,0,t.width,t.height).data,t.width,t.height,4)}else{let t=s(await e.arrayBuffer());return await u(t)}}static fromTensor(e,t=`CHW`){if(e.dims.length!==3)throw Error(`Tensor should have 3 dimensions, but has ${e.dims.length} dimensions.`);if(t===`CHW`)e=e.transpose(1,2,0);else if(t!==`HWC`)throw Error(`Unsupported channel format: ${t}`);if(!(e.data instanceof Uint8ClampedArray||e.data instanceof Uint8Array))throw Error(`Unsupported tensor type: ${e.type}`);switch(e.dims[2]){case 1:case 2:case 3:case 4:return new m(e.data,e.dims[1],e.dims[0],e.dims[2]);default:throw Error(`Unsupported number of channels: ${e.dims[2]}`)}}grayscale(){if(this.channels===1)return this;let e=new Uint8ClampedArray(this.width*this.height*1);switch(this.channels){case 3:case 4:for(let t=0,n=0;t=0?s=n:u=-n,r>=0?l=r:d=-r,o.drawImage(a,s,l,e,t,u,d,e,t);let f=new m(o.getImageData(0,0,e,t).data,e,t,4);return f.convert(i)}else{let i=this.toSharp();if(n>=0&&r>=0)i=i.extract({left:Math.floor(n),top:Math.floor(r),width:e,height:t});else if(n<=0&&r<=0){let a=Math.floor(-r),o=Math.floor(-n);i=i.extend({top:a,left:o,right:e-this.width-o,bottom:t-this.height-a})}else{let a=[0,0],o=0;r<0?(a[0]=Math.floor(-r),a[1]=t-this.height-a[0]):o=Math.floor(r);let s=[0,0],c=0;n<0?(s[0]=Math.floor(-n),s[1]=e-this.width-s[0]):c=Math.floor(n),i=i.extend({top:a[0],bottom:a[1],left:s[0],right:s[1]}).extract({left:c,top:o,width:e,height:t})}return await u(i)}}async toBlob(e=`image/png`,t=1){if(!d)throw Error(`toBlob() is only supported in browser environments.`);let n=this.toCanvas();return await n.convertToBlob({type:e,quality:t})}toTensor(e=`CHW`){let t=new o.Tensor(`uint8`,new Uint8Array(this.data),[this.height,this.width,this.channels]);if(e!==`HWC`)if(e===`CHW`)t=t.permute(2,0,1);else throw Error(`Unsupported channel format: ${e}`);return t}toCanvas(){if(!d)throw Error(`toCanvas() is only supported in browser environments.`);let e=this.clone().rgba(),t=c(e.width,e.height),n=new l(e.data,e.width,e.height);return t.getContext(`2d`).putImageData(n,0,0),t}split(){let{data:e,width:t,height:n,channels:r}=this,i=e.constructor,a=e.length/r,o=Array.from({length:r},()=>new i(a));for(let t=0;tnew m(e,t,n,1))}_update(e,t,n,r=null){return this.data=e,this.width=t,this.height=n,r!==null&&(this.channels=r),this}clone(){return new m(this.data.slice(),this.width,this.height,this.channels)}convert(e){if(this.channels===e)return this;switch(e){case 1:this.grayscale();break;case 3:this.rgb();break;case 4:this.rgba();break;default:throw Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this}async save(e){if(d){if(a.apis.IS_WEBWORKER_ENV)throw Error(`Unable to save an image from a Web Worker.`);let t=e.split(`.`).pop().toLowerCase(),n=p.get(t)??`image/png`,i=await this.toBlob(n);(0,r.saveBlob)(e,i)}else if(a.apis.IS_FS_AVAILABLE){let t=this.toSharp();return await t.toFile(e)}else throw Error(`Unable to save the image because filesystem is disabled in this environment.`)}toSharp(){if(d)throw Error(`toSharp() is only supported in server-side environments.`);return s(this.data,{raw:{width:this.width,height:this.height,channels:this.channels}})}}let h=m.read.bind(m)},"./src/utils/maths.js":(e,t,n)=>{n.r(t),n.d(t,{FFT:()=>h,bankers_round:()=>v,cos_sim:()=>c,dot:()=>s,dynamic_time_warping:()=>y,interpolate_data:()=>r,log_softmax:()=>o,magnitude:()=>l,max:()=>d,medianFilter:()=>g,min:()=>u,permute_data:()=>i,round:()=>_,softmax:()=>a});function r(e,[t,n,r],[i,a],o=`bilinear`,s=!1){let c=a/r,l=i/n,u=new e.constructor(i*a*t),d=n*r,f=i*a;for(let o=0;o=0;--e)i[e]=a,r[e]=t[n[e]],a*=r[e];let a=n.map((e,t)=>i[n.indexOf(t)]),o=new e.constructor(e.length);for(let n=0;n=0;--e)r+=i%t[e]*a[e],i=Math.floor(i/t[e]);o[r]=e[n]}return[o,r]}function a(e){let t=d(e)[0],n=e.map(e=>Math.exp(e-t)),r=n.reduce((e,t)=>e+t,0),i=n.map(e=>e/r);return i}function o(e){let t=d(e)[0],n=0;for(let r=0;re-t-r);return i}function s(e,t){let n=0;for(let r=0;re+t*t,0))}function u(e){if(e.length===0)throw Error(`Array must not be empty`);let t=e[0],n=0;for(let r=1;rt&&(t=e[r],n=r);return[t,n]}function f(e){return e>0&&(e&e-1)==0}class p{constructor(e){if(this.size=e|0,this.size<=1||!f(this.size))throw Error(`FFT size must be a power of two larger than 1`);this._csize=e<<1,this.table=new Float64Array(this.size*2);for(let e=0;ee;e<<=1)++t;this._width=t%2==0?t-1:t,this._bitrev=new Int32Array(1<>>t&3)<>>1);for(let t=0;t>>1]=e[t];return n}toComplexArray(e,t){let n=t||this.createComplexArray();for(let t=0;t>>1],n[t+1]=0;return n}transform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,1)}realTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._realTransform4(e,t,1)}inverseTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,-1);for(let t=0;t>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>2;for(s=0;s>>1,a>>>1)}else for(s=0,c=0;s>>1,a>>>1,n)}let u=this.table;for(a>>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>1,i=t>>>1,c=i>>>1;for(s=0;s>>1;for(let t=2;t>1;++t){let n=(t+1-e)**2/2,r=Math.sqrt(s**2+c**2)**n,o=n*Math.atan2(c,s),l=2*t;i[l]=r*Math.cos(o),i[l+1]=r*Math.sin(o),a[l]=i[l],a[l+1]=-i[l+1]}this._slicedChirpBuffer=i.subarray(t,n),this._f=new p(r>>1),this._f.transform(this._chirpBuffer,a)}_transform(e,t,n){let r=this._buffer1,i=this._buffer2,a=this._outBuffer1,o=this._outBuffer2,s=this._chirpBuffer,c=this._slicedChirpBuffer,l=this._a;if(n)for(let e=0;e>1,a=t[i];r[e]=a*c[e],r[n]=a*c[n]}else for(let e=0;e=e.length&&(i=2*(e.length-1)-i),r[a++]=e[i]}r.sort(),n[t]=r[i]}return n}function _(e,t){let n=10**t;return Math.round(e*n)/n}function v(e){let t=Math.round(e),n=Math.abs(e)%1==.5?t%2==0?t:t-1:t;return n}function y(e){let t=e.length,n=e[0].length,r=[t+1,n+1],i=Array.from({length:r[0]},()=>Array(r[1]).fill(1/0));i[0][0]=0;let a=Array.from({length:r[0]},()=>Array(r[1]).fill(-1));for(let t=1;t0||s>0;)switch(c.push(o-1),l.push(s-1),a[o][s]){case 0:--o,--s;break;case 1:--o;break;case 2:--s;break;default:throw Error(`Internal error in dynamic time warping. Unexpected trace[${o}, ${s}]. Please file a bug report.`)}return c.reverse(),l.reverse(),[c,l]}},"./src/utils/tensor.js":(t,n,r)=>{let i;r.r(n),r.d(n,{DataTypeMap:()=>c,Tensor:()=>l,cat:()=>w,full:()=>te,full_like:()=>ne,interpolate:()=>f,interpolate_4d:()=>p,layer_norm:()=>b,matmul:()=>m,mean:()=>O,mean_pooling:()=>y,ones:()=>re,ones_like:()=>ie,permute:()=>d,quantize_embeddings:()=>se,rand:()=>oe,rfft:()=>h,slice:()=>v,stack:()=>T,std_mean:()=>D,topk:()=>g,zeros:()=>A,zeros_like:()=>ae});var a=r( -/*! ./maths.js */ -`./src/utils/maths.js`),o=r( -/*! ../backends/onnx.js */ -`./src/backends/onnx.js`),s=r( -/*! ../ops/registry.js */ -`./src/ops/registry.js`);let c=Object.freeze({float32:Float32Array,float16:typeof Float16Array<`u`?Float16Array:Uint16Array,float64:Float64Array,string:Array,int8:Int8Array,uint8:Uint8Array,int16:Int16Array,uint16:Uint16Array,int32:Int32Array,uint32:Uint32Array,int64:BigInt64Array,uint64:BigUint64Array,bool:Uint8Array,uint4:Uint8Array,int4:Int8Array});i=Symbol.iterator;class l{get dims(){return this.ort_tensor.dims}set dims(e){this.ort_tensor.dims=e}get type(){return this.ort_tensor.type}get data(){return this.ort_tensor.data}get size(){return this.ort_tensor.size}get location(){return this.ort_tensor.location}constructor(...t){return e.defineProperty(this,`ort_tensor`,void 0),(0,o.isONNXTensor)(t[0])?this.ort_tensor=t[0]:this.ort_tensor=new o.Tensor(t[0],t[1],t[2]),new Proxy(this,{get:(e,t)=>{if(typeof t==`string`){let n=Number(t);if(Number.isInteger(n))return e._getitem(n)}return e[t]},set:(e,t,n)=>e[t]=n})}dispose(){this.ort_tensor.dispose()}*[i](){let[e,...t]=this.dims;if(t.length>0){let n=t.reduce((e,t)=>e*t);for(let r=0;r0){let t=n.reduce((e,t)=>e*t);return this._subarray(e,t,n)}else return new l(this.type,[this.data[e]],n)}indexOf(e){let t=this.data;for(let n=0;na)throw Error(`Invalid slice: ${i}`);let o=[Math.max(e,0),Math.min(a,this.dims[r])];n.push(o),t.push(o[1]-o[0])}else throw Error(`Invalid slice: ${i}`)}let r=n.map(([e,t])=>t-e),i=r.reduce((e,t)=>e*t),a=this.data,o=new a.constructor(i),s=this.stride();for(let e=0;e=0;--i){let e=r[i];t+=(a%e+n[i][0])*s[i],a=Math.floor(a/e)}o[e]=a[t]}return new l(this.type,o,t)}permute(...e){return d(this,e)}transpose(...e){return this.permute(...e)}sum(e=null,t=!1){return this.norm(1,e,t)}norm(e=`fro`,t=null,n=!1){if(e===`fro`)e=2;else if(typeof e==`string`)throw Error(`Unsupported norm: ${e}`);let r=this.data,i=(t,n)=>t+n**e;if(t===null){let t=r.reduce(i,0)**(1/e);return new l(this.type,[t],[])}let[a,o,s]=E(i,this,t,n);if(e!==1)for(let t=0;t=0;--r){let e=this.dims[r];if(r!==t){let t=i%e;n+=t*a,a*=this.dims[r]}i=Math.floor(i/e)}r[e]/=i[n]}return this}normalize(e=2,t=1){return this.clone().normalize_(e,t)}stride(){return ee(this.dims)}squeeze(e=null){return new l(this.type,this.data,x(this.dims,e))}squeeze_(e=null){return this.dims=x(this.dims,e),this}unsqueeze(e=null){return new l(this.type,this.data,S(this.dims,e))}unsqueeze_(e=null){return this.dims=S(this.dims,e),this}flatten_(e=0,t=-1){t=(t+this.dims.length)%this.dims.length;let n=this.dims.slice(0,e),r=this.dims.slice(e,t+1),i=this.dims.slice(t+1);return this.dims=[...n,r.reduce((e,t)=>e*t,1),...i],this}flatten(e=0,t=-1){return this.clone().flatten_(e,t)}view(...e){let t=-1;for(let n=0;nr===t?e:e*n,1);e[t]=n.length/r}return new l(this.type,n,e)}neg_(){let e=this.data;for(let t=0;te?1:0;return new l(`bool`,t,this.dims)}lt(e){let t=new Uint8Array(this.data.length),n=this.data;for(let r=0;rMath.min(e,t),this,e,t,1/0);return new l(n,r,i)}max(e=null,t=!1){if(e===null){let e=(0,a.max)(this.data)[0];return new l(this.type,[e],[])}let[n,r,i]=E((e,t)=>Math.max(e,t),this,e,t,-1/0);return new l(n,r,i)}argmin(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,a.min)(this.data)[1];return new l(`int64`,[BigInt(n)],[])}argmax(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,a.max)(this.data)[1];return new l(`int64`,[BigInt(n)],[])}to(e){if(this.type===e)return this;if(!c.hasOwnProperty(e))throw Error(`Unsupported type: ${e}`);let t,n=[`int64`,`uint64`].includes(this.type),r=[`int64`,`uint64`].includes(e);return n&&!r?t=Number:!n&&r&&(t=BigInt),new l(e,c[e].from(this.data,t),this.dims)}}function u(e,t){let n=e.length,r=t.reduce((e,t)=>e*t);if(n!==r)throw Error(`cannot reshape array of size ${n} into shape (${t})`);let i=e;for(let e=t.length-1;e>=0;e--)i=i.reduce((n,r)=>{let i=n[n.length-1];return i.lengthnew l(`int64`,e,[e.length]);async function v(e,t,n,r,i){let a=await s.TensorOpRegistry.slice;return await a({x:e,s:_(t),e:_(n),a:_(r),t:_(i??Array(r.length).fill(1))})}function y(e,t){let n=e.data,r=t.data,i=[e.dims[0],e.dims[2]],a=new n.constructor(i[0]*i[1]),[o,s,c]=e.dims,u=0;for(let e=0;ee!==1):typeof t==`number`?e[t]===1&&e.splice(t,1):Array.isArray(t)&&(e=e.filter((e,n)=>e!==1||!t.includes(n))),e}function S(e,t){return t=C(t,e.length+1),e=e.slice(),e.splice(t,0,1),e}function C(e,t,n=null,r=!0){if(e<-t||e>=t){if(r)throw Error(`IndexError: index ${e} is out of bounds for dimension${n===null?``:` `+n} with size ${t}`);return e<-t?0:t}return e<0&&(e=(e%t+t)%t),e}function w(e,t=0){t=C(t,e[0].dims.length);let n=e[0].dims.slice();n[t]=e.reduce((e,n)=>e+n.dims[t],0);let r=n.reduce((e,t)=>e*t,1),i=new e[0].data.constructor(r),a=e[0].type;if(t===0){let t=0;for(let n of e){let e=n.data;i.set(e,t),t+=e.length}}else{let r=0;for(let a=0;a=0;--i){let e=s[i],l=o%e;i===t&&(l+=r),a+=l*c,c*=n[i],o=Math.floor(o/e)}i[a]=o[e]}r+=s[t]}}return new l(a,i,n)}function T(e,t=0){return w(e.map(e=>e.unsqueeze(t)),t)}function E(e,t,n=null,r=!1,i=null){let a=t.data,o=t.dims;n=C(n,o.length);let s=o.slice();s[n]=1;let c=new a.constructor(a.length/o[n]);i!==null&&c.fill(i);for(let t=0;t=0;--e){let t=o[e];if(e!==n){let n=i%t;r+=n*a,a*=s[e]}i=Math.floor(i/t)}c[r]=e(c[r],a[t],t,r)}return r||s.splice(n,1),[t.type,c,s]}function D(e,t=null,n=1,r=!1){let i=e.data,a=e.dims;if(t===null){let t=i.reduce((e,t)=>e+t,0),r=t/i.length,a=Math.sqrt(i.reduce((e,t)=>e+(t-r)**2,0)/(i.length-n)),o=new l(e.type,[r],[]),s=new l(e.type,[a],[]);return[s,o]}t=C(t,a.length);let o=O(e,t,r),s=o.data,[c,u,d]=E((e,t,n,r)=>e+(t-s[r])**2,e,t,r);for(let e=0;ee+t,0);return new l(e.type,[t/i.length],[])}t=C(t,r.length);let[a,o,s]=E((e,t)=>e+t,e,t,n);if(r[t]!==1)for(let e=0;e=0;--n)t[n]=r,r*=e[n];return t}function k(e,t,n,r){let i=e.reduce((e,t)=>e*t,1);return new l(n,new r(i).fill(t),e)}function te(e,t){let n,r;if(typeof t==`number`)n=`float32`,r=Float32Array;else if(typeof t==`bigint`)n=`int64`,r=BigInt64Array;else if(typeof t==`boolean`)n=`bool`,r=Uint8Array;else throw Error(`Unsupported data type: ${typeof t}`);return k(e,t,n,r)}function ne(e,t){return te(e.dims,t)}function re(e){return k(e,1n,`int64`,BigInt64Array)}function ie(e){return re(e.dims)}function A(e){return k(e,0n,`int64`,BigInt64Array)}function ae(e){return A(e.dims)}function oe(e){let t=e.reduce((e,t)=>e*t,1);return new l(`float32`,Float32Array.from({length:t},()=>Math.random()),e)}function se(e,t){if(e.dims.length!==2)throw Error(`The tensor must have 2 dimensions`);if(e.dims.at(-1)%8!=0)throw Error(`The last dimension of the tensor must be a multiple of 8`);if(![`binary`,`ubinary`].includes(t))throw Error(`The precision must be either 'binary' or 'ubinary'`);let n=t===`binary`,r=n?`int8`:`uint8`,i=n?Int8Array:Uint8Array,a=e.data,o=new i(a.length/8);for(let e=0;e0?1:0,r=Math.floor(e/8),i=e%8;o[r]|=t<<7-i,n&&i===0&&(o[r]-=128)}return new l(r,o,[e.dims[0],e.dims[1]/8])}},"./src/utils/video.js":(e,t,n)=>{n.r(t),n.d(t,{RawVideo:()=>o,RawVideoFrame:()=>a,load_video:()=>s});var r=n( -/*! ./image.js */ -`./src/utils/image.js`),i=n( -/*! ../env.js */ -`./src/env.js`);class a{constructor(e,t){this.image=e,this.timestamp=t}}class o{constructor(e,t){e.length>0&&e[0]instanceof r.RawImage&&(e=e.map((n,r)=>new a(n,(r+1)/(e.length+1)*t))),this.frames=e,this.duration=t}get width(){return this.frames[0].image.width}get height(){return this.frames[0].image.height}get fps(){return this.frames.length/this.duration}}async function s(e,{num_frames:t=null,fps:n=null}={}){if(!i.apis.IS_BROWSER_ENV)throw Error("`load_video` is currently only supported in browser environments.");if(t==null&&n==null)throw Error(`Either num_frames or fps must be provided.`);let s=[],c=document.createElement(`video`);if(c.crossOrigin=`anonymous`,c.muted=!0,typeof e==`string`)c.src=e;else if(e instanceof Blob)c.src=URL.createObjectURL(e);else if(e instanceof HTMLVideoElement)c.src=e.src;else throw Error(`Invalid URL or video element provided.`);if(await new Promise(e=>c.onloadedmetadata=e),c.seekable.start(0)===c.seekable.end(0)){let e=await fetch(c.src),t=await e.blob();c.src=URL.createObjectURL(t),await new Promise(e=>c.onloadedmetadata=e)}let l=c.duration,u,d;t==null?(d=1/n,u=Math.floor(l/d)):(u=t,d=t===1?0:l/(t-1));let f=[];for(let e=0;e{c.onseeked=e}),m.drawImage(c,0,0,p.width,p.height);let t=m.getImageData(0,0,p.width,p.height),n=new r.RawImage(t.data,p.width,p.height,4),i=new a(n,e);s.push(i)}return c.remove(),new o(s,l)}}},cf={};function lf(e){var t=cf[e];if(t!==void 0)return t.exports;var n=cf[e]={exports:{}};return sf[e](n,n.exports,lf),n.exports}(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t;lf.t=function(n,r){if(r&1&&(n=this(n)),r&8||typeof n==`object`&&n&&(r&4&&n.__esModule||r&16&&typeof n.then==`function`))return n;var i=Object.create(null);lf.r(i);var a={};t||=[null,e({}),e([]),e(e)];for(var o=r&2&&n;typeof o==`object`&&!~t.indexOf(o);o=e(o))Object.getOwnPropertyNames(o).forEach(e=>a[e]=()=>n[e]);return a.default=()=>n,lf.d(i,a),i}})(),lf.d=(exports,t)=>{for(var n in t)lf.o(t,n)&&!lf.o(exports,n)&&Object.defineProperty(exports,n,{enumerable:!0,get:t[n]})},lf.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),lf.r=exports=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(exports,`__esModule`,{value:!0})};var $={};(()=>{lf.r($),lf.d($,{ASTFeatureExtractor:()=>d.ASTFeatureExtractor,ASTForAudioClassification:()=>n.ASTForAudioClassification,ASTModel:()=>n.ASTModel,ASTPreTrainedModel:()=>n.ASTPreTrainedModel,AlbertForMaskedLM:()=>n.AlbertForMaskedLM,AlbertForQuestionAnswering:()=>n.AlbertForQuestionAnswering,AlbertForSequenceClassification:()=>n.AlbertForSequenceClassification,AlbertModel:()=>n.AlbertModel,AlbertPreTrainedModel:()=>n.AlbertPreTrainedModel,AlbertTokenizer:()=>r.AlbertTokenizer,AudioClassificationPipeline:()=>t.AudioClassificationPipeline,AutoConfig:()=>i.AutoConfig,AutoFeatureExtractor:()=>f.AutoFeatureExtractor,AutoImageProcessor:()=>h.AutoImageProcessor,AutoModel:()=>n.AutoModel,AutoModelForAudioClassification:()=>n.AutoModelForAudioClassification,AutoModelForAudioFrameClassification:()=>n.AutoModelForAudioFrameClassification,AutoModelForAudioTextToText:()=>n.AutoModelForAudioTextToText,AutoModelForCTC:()=>n.AutoModelForCTC,AutoModelForCausalLM:()=>n.AutoModelForCausalLM,AutoModelForDepthEstimation:()=>n.AutoModelForDepthEstimation,AutoModelForDocumentQuestionAnswering:()=>n.AutoModelForDocumentQuestionAnswering,AutoModelForImageClassification:()=>n.AutoModelForImageClassification,AutoModelForImageFeatureExtraction:()=>n.AutoModelForImageFeatureExtraction,AutoModelForImageMatting:()=>n.AutoModelForImageMatting,AutoModelForImageSegmentation:()=>n.AutoModelForImageSegmentation,AutoModelForImageTextToText:()=>n.AutoModelForImageTextToText,AutoModelForImageToImage:()=>n.AutoModelForImageToImage,AutoModelForMaskGeneration:()=>n.AutoModelForMaskGeneration,AutoModelForMaskedLM:()=>n.AutoModelForMaskedLM,AutoModelForNormalEstimation:()=>n.AutoModelForNormalEstimation,AutoModelForObjectDetection:()=>n.AutoModelForObjectDetection,AutoModelForPoseEstimation:()=>n.AutoModelForPoseEstimation,AutoModelForQuestionAnswering:()=>n.AutoModelForQuestionAnswering,AutoModelForSemanticSegmentation:()=>n.AutoModelForSemanticSegmentation,AutoModelForSeq2SeqLM:()=>n.AutoModelForSeq2SeqLM,AutoModelForSequenceClassification:()=>n.AutoModelForSequenceClassification,AutoModelForSpeechSeq2Seq:()=>n.AutoModelForSpeechSeq2Seq,AutoModelForTextToSpectrogram:()=>n.AutoModelForTextToSpectrogram,AutoModelForTextToWaveform:()=>n.AutoModelForTextToWaveform,AutoModelForTokenClassification:()=>n.AutoModelForTokenClassification,AutoModelForUniversalSegmentation:()=>n.AutoModelForUniversalSegmentation,AutoModelForVision2Seq:()=>n.AutoModelForVision2Seq,AutoModelForXVector:()=>n.AutoModelForXVector,AutoModelForZeroShotObjectDetection:()=>n.AutoModelForZeroShotObjectDetection,AutoProcessor:()=>v.AutoProcessor,AutoTokenizer:()=>r.AutoTokenizer,AutomaticSpeechRecognitionPipeline:()=>t.AutomaticSpeechRecognitionPipeline,BackgroundRemovalPipeline:()=>t.BackgroundRemovalPipeline,BartForConditionalGeneration:()=>n.BartForConditionalGeneration,BartForSequenceClassification:()=>n.BartForSequenceClassification,BartModel:()=>n.BartModel,BartPretrainedModel:()=>n.BartPretrainedModel,BartTokenizer:()=>r.BartTokenizer,BaseModelOutput:()=>n.BaseModelOutput,BaseStreamer:()=>y.BaseStreamer,BeitFeatureExtractor:()=>m.BeitFeatureExtractor,BeitForImageClassification:()=>n.BeitForImageClassification,BeitModel:()=>n.BeitModel,BeitPreTrainedModel:()=>n.BeitPreTrainedModel,BertForMaskedLM:()=>n.BertForMaskedLM,BertForQuestionAnswering:()=>n.BertForQuestionAnswering,BertForSequenceClassification:()=>n.BertForSequenceClassification,BertForTokenClassification:()=>n.BertForTokenClassification,BertModel:()=>n.BertModel,BertPreTrainedModel:()=>n.BertPreTrainedModel,BertTokenizer:()=>r.BertTokenizer,BitImageProcessor:()=>m.BitImageProcessor,BlenderbotForConditionalGeneration:()=>n.BlenderbotForConditionalGeneration,BlenderbotModel:()=>n.BlenderbotModel,BlenderbotPreTrainedModel:()=>n.BlenderbotPreTrainedModel,BlenderbotSmallForConditionalGeneration:()=>n.BlenderbotSmallForConditionalGeneration,BlenderbotSmallModel:()=>n.BlenderbotSmallModel,BlenderbotSmallPreTrainedModel:()=>n.BlenderbotSmallPreTrainedModel,BlenderbotSmallTokenizer:()=>r.BlenderbotSmallTokenizer,BlenderbotTokenizer:()=>r.BlenderbotTokenizer,BloomForCausalLM:()=>n.BloomForCausalLM,BloomModel:()=>n.BloomModel,BloomPreTrainedModel:()=>n.BloomPreTrainedModel,BloomTokenizer:()=>r.BloomTokenizer,CLIPFeatureExtractor:()=>m.CLIPFeatureExtractor,CLIPImageProcessor:()=>m.CLIPImageProcessor,CLIPModel:()=>n.CLIPModel,CLIPPreTrainedModel:()=>n.CLIPPreTrainedModel,CLIPSegForImageSegmentation:()=>n.CLIPSegForImageSegmentation,CLIPSegModel:()=>n.CLIPSegModel,CLIPSegPreTrainedModel:()=>n.CLIPSegPreTrainedModel,CLIPTextModel:()=>n.CLIPTextModel,CLIPTextModelWithProjection:()=>n.CLIPTextModelWithProjection,CLIPTokenizer:()=>r.CLIPTokenizer,CLIPVisionModel:()=>n.CLIPVisionModel,CLIPVisionModelWithProjection:()=>n.CLIPVisionModelWithProjection,CamembertForMaskedLM:()=>n.CamembertForMaskedLM,CamembertForQuestionAnswering:()=>n.CamembertForQuestionAnswering,CamembertForSequenceClassification:()=>n.CamembertForSequenceClassification,CamembertForTokenClassification:()=>n.CamembertForTokenClassification,CamembertModel:()=>n.CamembertModel,CamembertPreTrainedModel:()=>n.CamembertPreTrainedModel,CamembertTokenizer:()=>r.CamembertTokenizer,CausalLMOutput:()=>n.CausalLMOutput,CausalLMOutputWithPast:()=>n.CausalLMOutputWithPast,ChineseCLIPFeatureExtractor:()=>m.ChineseCLIPFeatureExtractor,ChineseCLIPModel:()=>n.ChineseCLIPModel,ChineseCLIPPreTrainedModel:()=>n.ChineseCLIPPreTrainedModel,ClapAudioModelWithProjection:()=>n.ClapAudioModelWithProjection,ClapFeatureExtractor:()=>d.ClapFeatureExtractor,ClapModel:()=>n.ClapModel,ClapPreTrainedModel:()=>n.ClapPreTrainedModel,ClapTextModelWithProjection:()=>n.ClapTextModelWithProjection,ClassifierFreeGuidanceLogitsProcessor:()=>x.ClassifierFreeGuidanceLogitsProcessor,CodeGenForCausalLM:()=>n.CodeGenForCausalLM,CodeGenModel:()=>n.CodeGenModel,CodeGenPreTrainedModel:()=>n.CodeGenPreTrainedModel,CodeGenTokenizer:()=>r.CodeGenTokenizer,CodeLlamaTokenizer:()=>r.CodeLlamaTokenizer,CohereForCausalLM:()=>n.CohereForCausalLM,CohereModel:()=>n.CohereModel,CoherePreTrainedModel:()=>n.CoherePreTrainedModel,CohereTokenizer:()=>r.CohereTokenizer,ConvBertForMaskedLM:()=>n.ConvBertForMaskedLM,ConvBertForQuestionAnswering:()=>n.ConvBertForQuestionAnswering,ConvBertForSequenceClassification:()=>n.ConvBertForSequenceClassification,ConvBertForTokenClassification:()=>n.ConvBertForTokenClassification,ConvBertModel:()=>n.ConvBertModel,ConvBertPreTrainedModel:()=>n.ConvBertPreTrainedModel,ConvBertTokenizer:()=>r.ConvBertTokenizer,ConvNextFeatureExtractor:()=>m.ConvNextFeatureExtractor,ConvNextForImageClassification:()=>n.ConvNextForImageClassification,ConvNextImageProcessor:()=>m.ConvNextImageProcessor,ConvNextModel:()=>n.ConvNextModel,ConvNextPreTrainedModel:()=>n.ConvNextPreTrainedModel,ConvNextV2ForImageClassification:()=>n.ConvNextV2ForImageClassification,ConvNextV2Model:()=>n.ConvNextV2Model,ConvNextV2PreTrainedModel:()=>n.ConvNextV2PreTrainedModel,DFineForObjectDetection:()=>n.DFineForObjectDetection,DFineModel:()=>n.DFineModel,DFinePreTrainedModel:()=>n.DFinePreTrainedModel,DPTFeatureExtractor:()=>m.DPTFeatureExtractor,DPTForDepthEstimation:()=>n.DPTForDepthEstimation,DPTImageProcessor:()=>m.DPTImageProcessor,DPTModel:()=>n.DPTModel,DPTPreTrainedModel:()=>n.DPTPreTrainedModel,DacDecoderModel:()=>n.DacDecoderModel,DacDecoderOutput:()=>n.DacDecoderOutput,DacEncoderModel:()=>n.DacEncoderModel,DacEncoderOutput:()=>n.DacEncoderOutput,DacFeatureExtractor:()=>d.DacFeatureExtractor,DacModel:()=>n.DacModel,DacPreTrainedModel:()=>n.DacPreTrainedModel,DataTypeMap:()=>c.DataTypeMap,DebertaForMaskedLM:()=>n.DebertaForMaskedLM,DebertaForQuestionAnswering:()=>n.DebertaForQuestionAnswering,DebertaForSequenceClassification:()=>n.DebertaForSequenceClassification,DebertaForTokenClassification:()=>n.DebertaForTokenClassification,DebertaModel:()=>n.DebertaModel,DebertaPreTrainedModel:()=>n.DebertaPreTrainedModel,DebertaTokenizer:()=>r.DebertaTokenizer,DebertaV2ForMaskedLM:()=>n.DebertaV2ForMaskedLM,DebertaV2ForQuestionAnswering:()=>n.DebertaV2ForQuestionAnswering,DebertaV2ForSequenceClassification:()=>n.DebertaV2ForSequenceClassification,DebertaV2ForTokenClassification:()=>n.DebertaV2ForTokenClassification,DebertaV2Model:()=>n.DebertaV2Model,DebertaV2PreTrainedModel:()=>n.DebertaV2PreTrainedModel,DebertaV2Tokenizer:()=>r.DebertaV2Tokenizer,DecisionTransformerModel:()=>n.DecisionTransformerModel,DecisionTransformerPreTrainedModel:()=>n.DecisionTransformerPreTrainedModel,DeiTFeatureExtractor:()=>m.DeiTFeatureExtractor,DeiTForImageClassification:()=>n.DeiTForImageClassification,DeiTImageProcessor:()=>m.DeiTImageProcessor,DeiTModel:()=>n.DeiTModel,DeiTPreTrainedModel:()=>n.DeiTPreTrainedModel,DepthAnythingForDepthEstimation:()=>n.DepthAnythingForDepthEstimation,DepthAnythingPreTrainedModel:()=>n.DepthAnythingPreTrainedModel,DepthEstimationPipeline:()=>t.DepthEstimationPipeline,DepthProForDepthEstimation:()=>n.DepthProForDepthEstimation,DepthProPreTrainedModel:()=>n.DepthProPreTrainedModel,DetrFeatureExtractor:()=>m.DetrFeatureExtractor,DetrForObjectDetection:()=>n.DetrForObjectDetection,DetrForSegmentation:()=>n.DetrForSegmentation,DetrImageProcessor:()=>m.DetrImageProcessor,DetrModel:()=>n.DetrModel,DetrObjectDetectionOutput:()=>n.DetrObjectDetectionOutput,DetrPreTrainedModel:()=>n.DetrPreTrainedModel,DetrSegmentationOutput:()=>n.DetrSegmentationOutput,Dinov2ForImageClassification:()=>n.Dinov2ForImageClassification,Dinov2Model:()=>n.Dinov2Model,Dinov2PreTrainedModel:()=>n.Dinov2PreTrainedModel,Dinov2WithRegistersForImageClassification:()=>n.Dinov2WithRegistersForImageClassification,Dinov2WithRegistersModel:()=>n.Dinov2WithRegistersModel,Dinov2WithRegistersPreTrainedModel:()=>n.Dinov2WithRegistersPreTrainedModel,DistilBertForMaskedLM:()=>n.DistilBertForMaskedLM,DistilBertForQuestionAnswering:()=>n.DistilBertForQuestionAnswering,DistilBertForSequenceClassification:()=>n.DistilBertForSequenceClassification,DistilBertForTokenClassification:()=>n.DistilBertForTokenClassification,DistilBertModel:()=>n.DistilBertModel,DistilBertPreTrainedModel:()=>n.DistilBertPreTrainedModel,DistilBertTokenizer:()=>r.DistilBertTokenizer,DocumentQuestionAnsweringPipeline:()=>t.DocumentQuestionAnsweringPipeline,DonutFeatureExtractor:()=>m.DonutFeatureExtractor,DonutImageProcessor:()=>m.DonutImageProcessor,DonutSwinModel:()=>n.DonutSwinModel,DonutSwinPreTrainedModel:()=>n.DonutSwinPreTrainedModel,EfficientNetForImageClassification:()=>n.EfficientNetForImageClassification,EfficientNetImageProcessor:()=>m.EfficientNetImageProcessor,EfficientNetModel:()=>n.EfficientNetModel,EfficientNetPreTrainedModel:()=>n.EfficientNetPreTrainedModel,ElectraForMaskedLM:()=>n.ElectraForMaskedLM,ElectraForQuestionAnswering:()=>n.ElectraForQuestionAnswering,ElectraForSequenceClassification:()=>n.ElectraForSequenceClassification,ElectraForTokenClassification:()=>n.ElectraForTokenClassification,ElectraModel:()=>n.ElectraModel,ElectraPreTrainedModel:()=>n.ElectraPreTrainedModel,ElectraTokenizer:()=>r.ElectraTokenizer,EncodecFeatureExtractor:()=>d.EncodecFeatureExtractor,EosTokenCriteria:()=>b.EosTokenCriteria,EsmForMaskedLM:()=>n.EsmForMaskedLM,EsmForSequenceClassification:()=>n.EsmForSequenceClassification,EsmForTokenClassification:()=>n.EsmForTokenClassification,EsmModel:()=>n.EsmModel,EsmPreTrainedModel:()=>n.EsmPreTrainedModel,EsmTokenizer:()=>r.EsmTokenizer,ExaoneForCausalLM:()=>n.ExaoneForCausalLM,ExaoneModel:()=>n.ExaoneModel,ExaonePreTrainedModel:()=>n.ExaonePreTrainedModel,FFT:()=>l.FFT,FalconForCausalLM:()=>n.FalconForCausalLM,FalconModel:()=>n.FalconModel,FalconPreTrainedModel:()=>n.FalconPreTrainedModel,FalconTokenizer:()=>r.FalconTokenizer,FastViTForImageClassification:()=>n.FastViTForImageClassification,FastViTModel:()=>n.FastViTModel,FastViTPreTrainedModel:()=>n.FastViTPreTrainedModel,FeatureExtractionPipeline:()=>t.FeatureExtractionPipeline,FeatureExtractor:()=>u.FeatureExtractor,FillMaskPipeline:()=>t.FillMaskPipeline,Florence2ForConditionalGeneration:()=>n.Florence2ForConditionalGeneration,Florence2PreTrainedModel:()=>n.Florence2PreTrainedModel,Florence2Processor:()=>_.Florence2Processor,ForcedBOSTokenLogitsProcessor:()=>x.ForcedBOSTokenLogitsProcessor,ForcedEOSTokenLogitsProcessor:()=>x.ForcedEOSTokenLogitsProcessor,GLPNFeatureExtractor:()=>m.GLPNFeatureExtractor,GLPNForDepthEstimation:()=>n.GLPNForDepthEstimation,GLPNModel:()=>n.GLPNModel,GLPNPreTrainedModel:()=>n.GLPNPreTrainedModel,GPT2LMHeadModel:()=>n.GPT2LMHeadModel,GPT2Model:()=>n.GPT2Model,GPT2PreTrainedModel:()=>n.GPT2PreTrainedModel,GPT2Tokenizer:()=>r.GPT2Tokenizer,GPTBigCodeForCausalLM:()=>n.GPTBigCodeForCausalLM,GPTBigCodeModel:()=>n.GPTBigCodeModel,GPTBigCodePreTrainedModel:()=>n.GPTBigCodePreTrainedModel,GPTJForCausalLM:()=>n.GPTJForCausalLM,GPTJModel:()=>n.GPTJModel,GPTJPreTrainedModel:()=>n.GPTJPreTrainedModel,GPTNeoForCausalLM:()=>n.GPTNeoForCausalLM,GPTNeoModel:()=>n.GPTNeoModel,GPTNeoPreTrainedModel:()=>n.GPTNeoPreTrainedModel,GPTNeoXForCausalLM:()=>n.GPTNeoXForCausalLM,GPTNeoXModel:()=>n.GPTNeoXModel,GPTNeoXPreTrainedModel:()=>n.GPTNeoXPreTrainedModel,GPTNeoXTokenizer:()=>r.GPTNeoXTokenizer,Gemma2ForCausalLM:()=>n.Gemma2ForCausalLM,Gemma2Model:()=>n.Gemma2Model,Gemma2PreTrainedModel:()=>n.Gemma2PreTrainedModel,Gemma3ForCausalLM:()=>n.Gemma3ForCausalLM,Gemma3Model:()=>n.Gemma3Model,Gemma3PreTrainedModel:()=>n.Gemma3PreTrainedModel,Gemma3nAudioFeatureExtractor:()=>d.Gemma3nAudioFeatureExtractor,Gemma3nForConditionalGeneration:()=>n.Gemma3nForConditionalGeneration,Gemma3nPreTrainedModel:()=>n.Gemma3nPreTrainedModel,Gemma3nProcessor:()=>_.Gemma3nProcessor,GemmaForCausalLM:()=>n.GemmaForCausalLM,GemmaModel:()=>n.GemmaModel,GemmaPreTrainedModel:()=>n.GemmaPreTrainedModel,GemmaTokenizer:()=>r.GemmaTokenizer,GlmForCausalLM:()=>n.GlmForCausalLM,GlmModel:()=>n.GlmModel,GlmPreTrainedModel:()=>n.GlmPreTrainedModel,GraniteForCausalLM:()=>n.GraniteForCausalLM,GraniteModel:()=>n.GraniteModel,GranitePreTrainedModel:()=>n.GranitePreTrainedModel,Grok1Tokenizer:()=>r.Grok1Tokenizer,GroundingDinoForObjectDetection:()=>n.GroundingDinoForObjectDetection,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,GroundingDinoPreTrainedModel:()=>n.GroundingDinoPreTrainedModel,GroundingDinoProcessor:()=>_.GroundingDinoProcessor,GroupViTModel:()=>n.GroupViTModel,GroupViTPreTrainedModel:()=>n.GroupViTPreTrainedModel,HeliumForCausalLM:()=>n.HeliumForCausalLM,HeliumModel:()=>n.HeliumModel,HeliumPreTrainedModel:()=>n.HeliumPreTrainedModel,HerbertTokenizer:()=>r.HerbertTokenizer,HieraForImageClassification:()=>n.HieraForImageClassification,HieraModel:()=>n.HieraModel,HieraPreTrainedModel:()=>n.HieraPreTrainedModel,HubertForCTC:()=>n.HubertForCTC,HubertForSequenceClassification:()=>n.HubertForSequenceClassification,HubertModel:()=>n.HubertModel,HubertPreTrainedModel:()=>n.HubertPreTrainedModel,IJepaForImageClassification:()=>n.IJepaForImageClassification,IJepaModel:()=>n.IJepaModel,IJepaPreTrainedModel:()=>n.IJepaPreTrainedModel,Idefics3ForConditionalGeneration:()=>n.Idefics3ForConditionalGeneration,Idefics3ImageProcessor:()=>m.Idefics3ImageProcessor,Idefics3PreTrainedModel:()=>n.Idefics3PreTrainedModel,Idefics3Processor:()=>_.Idefics3Processor,ImageClassificationPipeline:()=>t.ImageClassificationPipeline,ImageFeatureExtractionPipeline:()=>t.ImageFeatureExtractionPipeline,ImageFeatureExtractor:()=>d.ImageFeatureExtractor,ImageMattingOutput:()=>n.ImageMattingOutput,ImageProcessor:()=>p.ImageProcessor,ImageSegmentationPipeline:()=>t.ImageSegmentationPipeline,ImageToImagePipeline:()=>t.ImageToImagePipeline,ImageToTextPipeline:()=>t.ImageToTextPipeline,InterruptableStoppingCriteria:()=>b.InterruptableStoppingCriteria,JAISLMHeadModel:()=>n.JAISLMHeadModel,JAISModel:()=>n.JAISModel,JAISPreTrainedModel:()=>n.JAISPreTrainedModel,JinaCLIPImageProcessor:()=>m.JinaCLIPImageProcessor,JinaCLIPModel:()=>n.JinaCLIPModel,JinaCLIPPreTrainedModel:()=>n.JinaCLIPPreTrainedModel,JinaCLIPProcessor:()=>_.JinaCLIPProcessor,JinaCLIPTextModel:()=>n.JinaCLIPTextModel,JinaCLIPVisionModel:()=>n.JinaCLIPVisionModel,LiteWhisperForConditionalGeneration:()=>n.LiteWhisperForConditionalGeneration,LlamaForCausalLM:()=>n.LlamaForCausalLM,LlamaModel:()=>n.LlamaModel,LlamaPreTrainedModel:()=>n.LlamaPreTrainedModel,LlamaTokenizer:()=>r.LlamaTokenizer,LlavaForConditionalGeneration:()=>n.LlavaForConditionalGeneration,LlavaOnevisionForConditionalGeneration:()=>n.LlavaOnevisionForConditionalGeneration,LlavaOnevisionImageProcessor:()=>m.LlavaOnevisionImageProcessor,LlavaPreTrainedModel:()=>n.LlavaPreTrainedModel,LlavaProcessor:()=>_.LlavaProcessor,LlavaQwen2ForCausalLM:()=>n.LlavaQwen2ForCausalLM,LogitsProcessor:()=>x.LogitsProcessor,LogitsProcessorList:()=>x.LogitsProcessorList,LogitsWarper:()=>x.LogitsWarper,LongT5ForConditionalGeneration:()=>n.LongT5ForConditionalGeneration,LongT5Model:()=>n.LongT5Model,LongT5PreTrainedModel:()=>n.LongT5PreTrainedModel,M2M100ForConditionalGeneration:()=>n.M2M100ForConditionalGeneration,M2M100Model:()=>n.M2M100Model,M2M100PreTrainedModel:()=>n.M2M100PreTrainedModel,M2M100Tokenizer:()=>r.M2M100Tokenizer,MBart50Tokenizer:()=>r.MBart50Tokenizer,MBartForCausalLM:()=>n.MBartForCausalLM,MBartForConditionalGeneration:()=>n.MBartForConditionalGeneration,MBartForSequenceClassification:()=>n.MBartForSequenceClassification,MBartModel:()=>n.MBartModel,MBartPreTrainedModel:()=>n.MBartPreTrainedModel,MBartTokenizer:()=>r.MBartTokenizer,MPNetForMaskedLM:()=>n.MPNetForMaskedLM,MPNetForQuestionAnswering:()=>n.MPNetForQuestionAnswering,MPNetForSequenceClassification:()=>n.MPNetForSequenceClassification,MPNetForTokenClassification:()=>n.MPNetForTokenClassification,MPNetModel:()=>n.MPNetModel,MPNetPreTrainedModel:()=>n.MPNetPreTrainedModel,MPNetTokenizer:()=>r.MPNetTokenizer,MT5ForConditionalGeneration:()=>n.MT5ForConditionalGeneration,MT5Model:()=>n.MT5Model,MT5PreTrainedModel:()=>n.MT5PreTrainedModel,MarianMTModel:()=>n.MarianMTModel,MarianModel:()=>n.MarianModel,MarianPreTrainedModel:()=>n.MarianPreTrainedModel,MarianTokenizer:()=>r.MarianTokenizer,Mask2FormerImageProcessor:()=>m.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>m.MaskFormerFeatureExtractor,MaskFormerForInstanceSegmentation:()=>n.MaskFormerForInstanceSegmentation,MaskFormerImageProcessor:()=>m.MaskFormerImageProcessor,MaskFormerModel:()=>n.MaskFormerModel,MaskFormerPreTrainedModel:()=>n.MaskFormerPreTrainedModel,MaskedLMOutput:()=>n.MaskedLMOutput,MaxLengthCriteria:()=>b.MaxLengthCriteria,Metric3DForDepthEstimation:()=>n.Metric3DForDepthEstimation,Metric3DPreTrainedModel:()=>n.Metric3DPreTrainedModel,Metric3Dv2ForDepthEstimation:()=>n.Metric3Dv2ForDepthEstimation,Metric3Dv2PreTrainedModel:()=>n.Metric3Dv2PreTrainedModel,MgpstrForSceneTextRecognition:()=>n.MgpstrForSceneTextRecognition,MgpstrModelOutput:()=>n.MgpstrModelOutput,MgpstrPreTrainedModel:()=>n.MgpstrPreTrainedModel,MgpstrProcessor:()=>_.MgpstrProcessor,MgpstrTokenizer:()=>r.MgpstrTokenizer,MimiDecoderModel:()=>n.MimiDecoderModel,MimiDecoderOutput:()=>n.MimiDecoderOutput,MimiEncoderModel:()=>n.MimiEncoderModel,MimiEncoderOutput:()=>n.MimiEncoderOutput,MimiModel:()=>n.MimiModel,MimiPreTrainedModel:()=>n.MimiPreTrainedModel,MinLengthLogitsProcessor:()=>x.MinLengthLogitsProcessor,MinNewTokensLengthLogitsProcessor:()=>x.MinNewTokensLengthLogitsProcessor,MistralForCausalLM:()=>n.MistralForCausalLM,MistralModel:()=>n.MistralModel,MistralPreTrainedModel:()=>n.MistralPreTrainedModel,MobileBertForMaskedLM:()=>n.MobileBertForMaskedLM,MobileBertForQuestionAnswering:()=>n.MobileBertForQuestionAnswering,MobileBertForSequenceClassification:()=>n.MobileBertForSequenceClassification,MobileBertModel:()=>n.MobileBertModel,MobileBertPreTrainedModel:()=>n.MobileBertPreTrainedModel,MobileBertTokenizer:()=>r.MobileBertTokenizer,MobileLLMForCausalLM:()=>n.MobileLLMForCausalLM,MobileLLMModel:()=>n.MobileLLMModel,MobileLLMPreTrainedModel:()=>n.MobileLLMPreTrainedModel,MobileNetV1FeatureExtractor:()=>m.MobileNetV1FeatureExtractor,MobileNetV1ForImageClassification:()=>n.MobileNetV1ForImageClassification,MobileNetV1ForSemanticSegmentation:()=>n.MobileNetV1ForSemanticSegmentation,MobileNetV1ImageProcessor:()=>m.MobileNetV1ImageProcessor,MobileNetV1Model:()=>n.MobileNetV1Model,MobileNetV1PreTrainedModel:()=>n.MobileNetV1PreTrainedModel,MobileNetV2FeatureExtractor:()=>m.MobileNetV2FeatureExtractor,MobileNetV2ForImageClassification:()=>n.MobileNetV2ForImageClassification,MobileNetV2ForSemanticSegmentation:()=>n.MobileNetV2ForSemanticSegmentation,MobileNetV2ImageProcessor:()=>m.MobileNetV2ImageProcessor,MobileNetV2Model:()=>n.MobileNetV2Model,MobileNetV2PreTrainedModel:()=>n.MobileNetV2PreTrainedModel,MobileNetV3FeatureExtractor:()=>m.MobileNetV3FeatureExtractor,MobileNetV3ForImageClassification:()=>n.MobileNetV3ForImageClassification,MobileNetV3ForSemanticSegmentation:()=>n.MobileNetV3ForSemanticSegmentation,MobileNetV3ImageProcessor:()=>m.MobileNetV3ImageProcessor,MobileNetV3Model:()=>n.MobileNetV3Model,MobileNetV3PreTrainedModel:()=>n.MobileNetV3PreTrainedModel,MobileNetV4FeatureExtractor:()=>m.MobileNetV4FeatureExtractor,MobileNetV4ForImageClassification:()=>n.MobileNetV4ForImageClassification,MobileNetV4ForSemanticSegmentation:()=>n.MobileNetV4ForSemanticSegmentation,MobileNetV4ImageProcessor:()=>m.MobileNetV4ImageProcessor,MobileNetV4Model:()=>n.MobileNetV4Model,MobileNetV4PreTrainedModel:()=>n.MobileNetV4PreTrainedModel,MobileViTFeatureExtractor:()=>m.MobileViTFeatureExtractor,MobileViTForImageClassification:()=>n.MobileViTForImageClassification,MobileViTImageProcessor:()=>m.MobileViTImageProcessor,MobileViTModel:()=>n.MobileViTModel,MobileViTPreTrainedModel:()=>n.MobileViTPreTrainedModel,MobileViTV2ForImageClassification:()=>n.MobileViTV2ForImageClassification,MobileViTV2Model:()=>n.MobileViTV2Model,MobileViTV2PreTrainedModel:()=>n.MobileViTV2PreTrainedModel,ModelOutput:()=>n.ModelOutput,ModernBertForMaskedLM:()=>n.ModernBertForMaskedLM,ModernBertForSequenceClassification:()=>n.ModernBertForSequenceClassification,ModernBertForTokenClassification:()=>n.ModernBertForTokenClassification,ModernBertModel:()=>n.ModernBertModel,ModernBertPreTrainedModel:()=>n.ModernBertPreTrainedModel,Moondream1ForConditionalGeneration:()=>n.Moondream1ForConditionalGeneration,MoonshineFeatureExtractor:()=>d.MoonshineFeatureExtractor,MoonshineForConditionalGeneration:()=>n.MoonshineForConditionalGeneration,MoonshineModel:()=>n.MoonshineModel,MoonshinePreTrainedModel:()=>n.MoonshinePreTrainedModel,MoonshineProcessor:()=>_.MoonshineProcessor,MptForCausalLM:()=>n.MptForCausalLM,MptModel:()=>n.MptModel,MptPreTrainedModel:()=>n.MptPreTrainedModel,MultiModalityCausalLM:()=>n.MultiModalityCausalLM,MultiModalityPreTrainedModel:()=>n.MultiModalityPreTrainedModel,MusicgenForCausalLM:()=>n.MusicgenForCausalLM,MusicgenForConditionalGeneration:()=>n.MusicgenForConditionalGeneration,MusicgenModel:()=>n.MusicgenModel,MusicgenPreTrainedModel:()=>n.MusicgenPreTrainedModel,NeoBertForMaskedLM:()=>n.NeoBertForMaskedLM,NeoBertForQuestionAnswering:()=>n.NeoBertForQuestionAnswering,NeoBertForSequenceClassification:()=>n.NeoBertForSequenceClassification,NeoBertForTokenClassification:()=>n.NeoBertForTokenClassification,NeoBertModel:()=>n.NeoBertModel,NeoBertPreTrainedModel:()=>n.NeoBertPreTrainedModel,NllbTokenizer:()=>r.NllbTokenizer,NoBadWordsLogitsProcessor:()=>x.NoBadWordsLogitsProcessor,NoRepeatNGramLogitsProcessor:()=>x.NoRepeatNGramLogitsProcessor,NomicBertModel:()=>n.NomicBertModel,NomicBertPreTrainedModel:()=>n.NomicBertPreTrainedModel,NougatImageProcessor:()=>m.NougatImageProcessor,NougatTokenizer:()=>r.NougatTokenizer,OPTForCausalLM:()=>n.OPTForCausalLM,OPTModel:()=>n.OPTModel,OPTPreTrainedModel:()=>n.OPTPreTrainedModel,ObjectDetectionPipeline:()=>t.ObjectDetectionPipeline,Olmo2ForCausalLM:()=>n.Olmo2ForCausalLM,Olmo2Model:()=>n.Olmo2Model,Olmo2PreTrainedModel:()=>n.Olmo2PreTrainedModel,OlmoForCausalLM:()=>n.OlmoForCausalLM,OlmoModel:()=>n.OlmoModel,OlmoPreTrainedModel:()=>n.OlmoPreTrainedModel,OpenELMForCausalLM:()=>n.OpenELMForCausalLM,OpenELMModel:()=>n.OpenELMModel,OpenELMPreTrainedModel:()=>n.OpenELMPreTrainedModel,OwlViTFeatureExtractor:()=>m.OwlViTFeatureExtractor,OwlViTForObjectDetection:()=>n.OwlViTForObjectDetection,OwlViTImageProcessor:()=>m.OwlViTImageProcessor,OwlViTModel:()=>n.OwlViTModel,OwlViTPreTrainedModel:()=>n.OwlViTPreTrainedModel,OwlViTProcessor:()=>_.OwlViTProcessor,Owlv2ForObjectDetection:()=>n.Owlv2ForObjectDetection,Owlv2ImageProcessor:()=>m.Owlv2ImageProcessor,Owlv2Model:()=>n.Owlv2Model,Owlv2PreTrainedModel:()=>n.Owlv2PreTrainedModel,PaliGemmaForConditionalGeneration:()=>n.PaliGemmaForConditionalGeneration,PaliGemmaPreTrainedModel:()=>n.PaliGemmaPreTrainedModel,PaliGemmaProcessor:()=>_.PaliGemmaProcessor,PatchTSMixerForPrediction:()=>n.PatchTSMixerForPrediction,PatchTSMixerModel:()=>n.PatchTSMixerModel,PatchTSMixerPreTrainedModel:()=>n.PatchTSMixerPreTrainedModel,PatchTSTForPrediction:()=>n.PatchTSTForPrediction,PatchTSTModel:()=>n.PatchTSTModel,PatchTSTPreTrainedModel:()=>n.PatchTSTPreTrainedModel,Phi3ForCausalLM:()=>n.Phi3ForCausalLM,Phi3Model:()=>n.Phi3Model,Phi3PreTrainedModel:()=>n.Phi3PreTrainedModel,Phi3VForCausalLM:()=>n.Phi3VForCausalLM,Phi3VImageProcessor:()=>m.Phi3VImageProcessor,Phi3VPreTrainedModel:()=>n.Phi3VPreTrainedModel,Phi3VProcessor:()=>_.Phi3VProcessor,PhiForCausalLM:()=>n.PhiForCausalLM,PhiModel:()=>n.PhiModel,PhiPreTrainedModel:()=>n.PhiPreTrainedModel,Pipeline:()=>t.Pipeline,PreTrainedModel:()=>n.PreTrainedModel,PreTrainedTokenizer:()=>r.PreTrainedTokenizer,PretrainedConfig:()=>i.PretrainedConfig,PretrainedMixin:()=>n.PretrainedMixin,Processor:()=>g.Processor,PvtForImageClassification:()=>n.PvtForImageClassification,PvtImageProcessor:()=>m.PvtImageProcessor,PvtModel:()=>n.PvtModel,PvtPreTrainedModel:()=>n.PvtPreTrainedModel,PyAnnoteFeatureExtractor:()=>d.PyAnnoteFeatureExtractor,PyAnnoteForAudioFrameClassification:()=>n.PyAnnoteForAudioFrameClassification,PyAnnoteModel:()=>n.PyAnnoteModel,PyAnnotePreTrainedModel:()=>n.PyAnnotePreTrainedModel,PyAnnoteProcessor:()=>_.PyAnnoteProcessor,QuestionAnsweringModelOutput:()=>n.QuestionAnsweringModelOutput,QuestionAnsweringPipeline:()=>t.QuestionAnsweringPipeline,Qwen2ForCausalLM:()=>n.Qwen2ForCausalLM,Qwen2Model:()=>n.Qwen2Model,Qwen2PreTrainedModel:()=>n.Qwen2PreTrainedModel,Qwen2Tokenizer:()=>r.Qwen2Tokenizer,Qwen2VLForConditionalGeneration:()=>n.Qwen2VLForConditionalGeneration,Qwen2VLImageProcessor:()=>m.Qwen2VLImageProcessor,Qwen2VLPreTrainedModel:()=>n.Qwen2VLPreTrainedModel,Qwen2VLProcessor:()=>_.Qwen2VLProcessor,Qwen3ForCausalLM:()=>n.Qwen3ForCausalLM,Qwen3Model:()=>n.Qwen3Model,Qwen3PreTrainedModel:()=>n.Qwen3PreTrainedModel,RFDetrForObjectDetection:()=>n.RFDetrForObjectDetection,RFDetrModel:()=>n.RFDetrModel,RFDetrObjectDetectionOutput:()=>n.RFDetrObjectDetectionOutput,RFDetrPreTrainedModel:()=>n.RFDetrPreTrainedModel,RTDetrForObjectDetection:()=>n.RTDetrForObjectDetection,RTDetrImageProcessor:()=>m.RTDetrImageProcessor,RTDetrModel:()=>n.RTDetrModel,RTDetrObjectDetectionOutput:()=>n.RTDetrObjectDetectionOutput,RTDetrPreTrainedModel:()=>n.RTDetrPreTrainedModel,RTDetrV2ForObjectDetection:()=>n.RTDetrV2ForObjectDetection,RTDetrV2Model:()=>n.RTDetrV2Model,RTDetrV2ObjectDetectionOutput:()=>n.RTDetrV2ObjectDetectionOutput,RTDetrV2PreTrainedModel:()=>n.RTDetrV2PreTrainedModel,RawAudio:()=>a.RawAudio,RawImage:()=>o.RawImage,RawVideo:()=>s.RawVideo,RawVideoFrame:()=>s.RawVideoFrame,RepetitionPenaltyLogitsProcessor:()=>x.RepetitionPenaltyLogitsProcessor,ResNetForImageClassification:()=>n.ResNetForImageClassification,ResNetModel:()=>n.ResNetModel,ResNetPreTrainedModel:()=>n.ResNetPreTrainedModel,RoFormerForMaskedLM:()=>n.RoFormerForMaskedLM,RoFormerForQuestionAnswering:()=>n.RoFormerForQuestionAnswering,RoFormerForSequenceClassification:()=>n.RoFormerForSequenceClassification,RoFormerForTokenClassification:()=>n.RoFormerForTokenClassification,RoFormerModel:()=>n.RoFormerModel,RoFormerPreTrainedModel:()=>n.RoFormerPreTrainedModel,RoFormerTokenizer:()=>r.RoFormerTokenizer,RobertaForMaskedLM:()=>n.RobertaForMaskedLM,RobertaForQuestionAnswering:()=>n.RobertaForQuestionAnswering,RobertaForSequenceClassification:()=>n.RobertaForSequenceClassification,RobertaForTokenClassification:()=>n.RobertaForTokenClassification,RobertaModel:()=>n.RobertaModel,RobertaPreTrainedModel:()=>n.RobertaPreTrainedModel,RobertaTokenizer:()=>r.RobertaTokenizer,SamImageProcessor:()=>m.SamImageProcessor,SamImageSegmentationOutput:()=>n.SamImageSegmentationOutput,SamModel:()=>n.SamModel,SamPreTrainedModel:()=>n.SamPreTrainedModel,SamProcessor:()=>_.SamProcessor,SapiensForDepthEstimation:()=>n.SapiensForDepthEstimation,SapiensForNormalEstimation:()=>n.SapiensForNormalEstimation,SapiensForSemanticSegmentation:()=>n.SapiensForSemanticSegmentation,SapiensPreTrainedModel:()=>n.SapiensPreTrainedModel,SeamlessM4TFeatureExtractor:()=>d.SeamlessM4TFeatureExtractor,SegformerFeatureExtractor:()=>m.SegformerFeatureExtractor,SegformerForImageClassification:()=>n.SegformerForImageClassification,SegformerForSemanticSegmentation:()=>n.SegformerForSemanticSegmentation,SegformerImageProcessor:()=>m.SegformerImageProcessor,SegformerModel:()=>n.SegformerModel,SegformerPreTrainedModel:()=>n.SegformerPreTrainedModel,Seq2SeqLMOutput:()=>n.Seq2SeqLMOutput,SequenceClassifierOutput:()=>n.SequenceClassifierOutput,SiglipImageProcessor:()=>m.SiglipImageProcessor,SiglipModel:()=>n.SiglipModel,SiglipPreTrainedModel:()=>n.SiglipPreTrainedModel,SiglipTextModel:()=>n.SiglipTextModel,SiglipTokenizer:()=>r.SiglipTokenizer,SiglipVisionModel:()=>n.SiglipVisionModel,SmolVLMForConditionalGeneration:()=>n.SmolVLMForConditionalGeneration,SmolVLMImageProcessor:()=>m.SmolVLMImageProcessor,SmolVLMProcessor:()=>_.SmolVLMProcessor,SnacDecoderModel:()=>n.SnacDecoderModel,SnacEncoderModel:()=>n.SnacEncoderModel,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SnacModel:()=>n.SnacModel,SnacPreTrainedModel:()=>n.SnacPreTrainedModel,SpeechT5FeatureExtractor:()=>d.SpeechT5FeatureExtractor,SpeechT5ForSpeechToText:()=>n.SpeechT5ForSpeechToText,SpeechT5ForTextToSpeech:()=>n.SpeechT5ForTextToSpeech,SpeechT5HifiGan:()=>n.SpeechT5HifiGan,SpeechT5Model:()=>n.SpeechT5Model,SpeechT5PreTrainedModel:()=>n.SpeechT5PreTrainedModel,SpeechT5Processor:()=>_.SpeechT5Processor,SpeechT5Tokenizer:()=>r.SpeechT5Tokenizer,SqueezeBertForMaskedLM:()=>n.SqueezeBertForMaskedLM,SqueezeBertForQuestionAnswering:()=>n.SqueezeBertForQuestionAnswering,SqueezeBertForSequenceClassification:()=>n.SqueezeBertForSequenceClassification,SqueezeBertModel:()=>n.SqueezeBertModel,SqueezeBertPreTrainedModel:()=>n.SqueezeBertPreTrainedModel,SqueezeBertTokenizer:()=>r.SqueezeBertTokenizer,StableLmForCausalLM:()=>n.StableLmForCausalLM,StableLmModel:()=>n.StableLmModel,StableLmPreTrainedModel:()=>n.StableLmPreTrainedModel,Starcoder2ForCausalLM:()=>n.Starcoder2ForCausalLM,Starcoder2Model:()=>n.Starcoder2Model,Starcoder2PreTrainedModel:()=>n.Starcoder2PreTrainedModel,StoppingCriteria:()=>b.StoppingCriteria,StoppingCriteriaList:()=>b.StoppingCriteriaList,StyleTextToSpeech2Model:()=>n.StyleTextToSpeech2Model,StyleTextToSpeech2PreTrainedModel:()=>n.StyleTextToSpeech2PreTrainedModel,SummarizationPipeline:()=>t.SummarizationPipeline,SuppressTokensAtBeginLogitsProcessor:()=>x.SuppressTokensAtBeginLogitsProcessor,Swin2SRForImageSuperResolution:()=>n.Swin2SRForImageSuperResolution,Swin2SRImageProcessor:()=>m.Swin2SRImageProcessor,Swin2SRModel:()=>n.Swin2SRModel,Swin2SRPreTrainedModel:()=>n.Swin2SRPreTrainedModel,SwinForImageClassification:()=>n.SwinForImageClassification,SwinForSemanticSegmentation:()=>n.SwinForSemanticSegmentation,SwinModel:()=>n.SwinModel,SwinPreTrainedModel:()=>n.SwinPreTrainedModel,T5ForConditionalGeneration:()=>n.T5ForConditionalGeneration,T5Model:()=>n.T5Model,T5PreTrainedModel:()=>n.T5PreTrainedModel,T5Tokenizer:()=>r.T5Tokenizer,TableTransformerForObjectDetection:()=>n.TableTransformerForObjectDetection,TableTransformerModel:()=>n.TableTransformerModel,TableTransformerObjectDetectionOutput:()=>n.TableTransformerObjectDetectionOutput,TableTransformerPreTrainedModel:()=>n.TableTransformerPreTrainedModel,TemperatureLogitsWarper:()=>x.TemperatureLogitsWarper,Tensor:()=>c.Tensor,Text2TextGenerationPipeline:()=>t.Text2TextGenerationPipeline,TextClassificationPipeline:()=>t.TextClassificationPipeline,TextGenerationPipeline:()=>t.TextGenerationPipeline,TextStreamer:()=>y.TextStreamer,TextToAudioPipeline:()=>t.TextToAudioPipeline,TokenClassificationPipeline:()=>t.TokenClassificationPipeline,TokenClassifierOutput:()=>n.TokenClassifierOutput,TokenizerModel:()=>r.TokenizerModel,TopKLogitsWarper:()=>x.TopKLogitsWarper,TopPLogitsWarper:()=>x.TopPLogitsWarper,TrOCRForCausalLM:()=>n.TrOCRForCausalLM,TrOCRPreTrainedModel:()=>n.TrOCRPreTrainedModel,TranslationPipeline:()=>t.TranslationPipeline,UltravoxModel:()=>n.UltravoxModel,UltravoxPreTrainedModel:()=>n.UltravoxPreTrainedModel,UltravoxProcessor:()=>_.UltravoxProcessor,UniSpeechForCTC:()=>n.UniSpeechForCTC,UniSpeechForSequenceClassification:()=>n.UniSpeechForSequenceClassification,UniSpeechModel:()=>n.UniSpeechModel,UniSpeechPreTrainedModel:()=>n.UniSpeechPreTrainedModel,UniSpeechSatForAudioFrameClassification:()=>n.UniSpeechSatForAudioFrameClassification,UniSpeechSatForCTC:()=>n.UniSpeechSatForCTC,UniSpeechSatForSequenceClassification:()=>n.UniSpeechSatForSequenceClassification,UniSpeechSatModel:()=>n.UniSpeechSatModel,UniSpeechSatPreTrainedModel:()=>n.UniSpeechSatPreTrainedModel,VLChatProcessor:()=>_.VLChatProcessor,VLMImageProcessor:()=>m.VLMImageProcessor,ViTFeatureExtractor:()=>m.ViTFeatureExtractor,ViTForImageClassification:()=>n.ViTForImageClassification,ViTImageProcessor:()=>m.ViTImageProcessor,ViTMAEModel:()=>n.ViTMAEModel,ViTMAEPreTrainedModel:()=>n.ViTMAEPreTrainedModel,ViTMSNForImageClassification:()=>n.ViTMSNForImageClassification,ViTMSNModel:()=>n.ViTMSNModel,ViTMSNPreTrainedModel:()=>n.ViTMSNPreTrainedModel,ViTModel:()=>n.ViTModel,ViTPreTrainedModel:()=>n.ViTPreTrainedModel,VisionEncoderDecoderModel:()=>n.VisionEncoderDecoderModel,VitMatteForImageMatting:()=>n.VitMatteForImageMatting,VitMatteImageProcessor:()=>m.VitMatteImageProcessor,VitMattePreTrainedModel:()=>n.VitMattePreTrainedModel,VitPoseForPoseEstimation:()=>n.VitPoseForPoseEstimation,VitPoseImageProcessor:()=>m.VitPoseImageProcessor,VitPosePreTrainedModel:()=>n.VitPosePreTrainedModel,VitsModel:()=>n.VitsModel,VitsModelOutput:()=>n.VitsModelOutput,VitsPreTrainedModel:()=>n.VitsPreTrainedModel,VitsTokenizer:()=>r.VitsTokenizer,Wav2Vec2BertForCTC:()=>n.Wav2Vec2BertForCTC,Wav2Vec2BertForSequenceClassification:()=>n.Wav2Vec2BertForSequenceClassification,Wav2Vec2BertModel:()=>n.Wav2Vec2BertModel,Wav2Vec2BertPreTrainedModel:()=>n.Wav2Vec2BertPreTrainedModel,Wav2Vec2CTCTokenizer:()=>r.Wav2Vec2CTCTokenizer,Wav2Vec2FeatureExtractor:()=>d.Wav2Vec2FeatureExtractor,Wav2Vec2ForAudioFrameClassification:()=>n.Wav2Vec2ForAudioFrameClassification,Wav2Vec2ForCTC:()=>n.Wav2Vec2ForCTC,Wav2Vec2ForSequenceClassification:()=>n.Wav2Vec2ForSequenceClassification,Wav2Vec2Model:()=>n.Wav2Vec2Model,Wav2Vec2PreTrainedModel:()=>n.Wav2Vec2PreTrainedModel,Wav2Vec2Processor:()=>_.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>_.Wav2Vec2ProcessorWithLM,WavLMForAudioFrameClassification:()=>n.WavLMForAudioFrameClassification,WavLMForCTC:()=>n.WavLMForCTC,WavLMForSequenceClassification:()=>n.WavLMForSequenceClassification,WavLMForXVector:()=>n.WavLMForXVector,WavLMModel:()=>n.WavLMModel,WavLMPreTrainedModel:()=>n.WavLMPreTrainedModel,WeSpeakerFeatureExtractor:()=>d.WeSpeakerFeatureExtractor,WeSpeakerResNetModel:()=>n.WeSpeakerResNetModel,WeSpeakerResNetPreTrainedModel:()=>n.WeSpeakerResNetPreTrainedModel,WhisperFeatureExtractor:()=>d.WhisperFeatureExtractor,WhisperForConditionalGeneration:()=>n.WhisperForConditionalGeneration,WhisperModel:()=>n.WhisperModel,WhisperPreTrainedModel:()=>n.WhisperPreTrainedModel,WhisperProcessor:()=>_.WhisperProcessor,WhisperTextStreamer:()=>y.WhisperTextStreamer,WhisperTimeStampLogitsProcessor:()=>x.WhisperTimeStampLogitsProcessor,WhisperTokenizer:()=>r.WhisperTokenizer,XLMForQuestionAnswering:()=>n.XLMForQuestionAnswering,XLMForSequenceClassification:()=>n.XLMForSequenceClassification,XLMForTokenClassification:()=>n.XLMForTokenClassification,XLMModel:()=>n.XLMModel,XLMPreTrainedModel:()=>n.XLMPreTrainedModel,XLMRobertaForMaskedLM:()=>n.XLMRobertaForMaskedLM,XLMRobertaForQuestionAnswering:()=>n.XLMRobertaForQuestionAnswering,XLMRobertaForSequenceClassification:()=>n.XLMRobertaForSequenceClassification,XLMRobertaForTokenClassification:()=>n.XLMRobertaForTokenClassification,XLMRobertaModel:()=>n.XLMRobertaModel,XLMRobertaPreTrainedModel:()=>n.XLMRobertaPreTrainedModel,XLMRobertaTokenizer:()=>r.XLMRobertaTokenizer,XLMTokenizer:()=>r.XLMTokenizer,XLMWithLMHeadModel:()=>n.XLMWithLMHeadModel,XVectorOutput:()=>n.XVectorOutput,YolosFeatureExtractor:()=>m.YolosFeatureExtractor,YolosForObjectDetection:()=>n.YolosForObjectDetection,YolosImageProcessor:()=>m.YolosImageProcessor,YolosModel:()=>n.YolosModel,YolosObjectDetectionOutput:()=>n.YolosObjectDetectionOutput,YolosPreTrainedModel:()=>n.YolosPreTrainedModel,ZeroShotAudioClassificationPipeline:()=>t.ZeroShotAudioClassificationPipeline,ZeroShotClassificationPipeline:()=>t.ZeroShotClassificationPipeline,ZeroShotImageClassificationPipeline:()=>t.ZeroShotImageClassificationPipeline,ZeroShotObjectDetectionPipeline:()=>t.ZeroShotObjectDetectionPipeline,bankers_round:()=>l.bankers_round,cat:()=>c.cat,cos_sim:()=>l.cos_sim,dot:()=>l.dot,dynamic_time_warping:()=>l.dynamic_time_warping,env:()=>e.env,full:()=>c.full,full_like:()=>c.full_like,getKeyValueShapes:()=>i.getKeyValueShapes,hamming:()=>a.hamming,hanning:()=>a.hanning,interpolate:()=>c.interpolate,interpolate_4d:()=>c.interpolate_4d,interpolate_data:()=>l.interpolate_data,is_chinese_char:()=>r.is_chinese_char,layer_norm:()=>c.layer_norm,load_image:()=>o.load_image,load_video:()=>s.load_video,log_softmax:()=>l.log_softmax,magnitude:()=>l.magnitude,matmul:()=>c.matmul,max:()=>l.max,mean:()=>c.mean,mean_pooling:()=>c.mean_pooling,medianFilter:()=>l.medianFilter,mel_filter_bank:()=>a.mel_filter_bank,min:()=>l.min,ones:()=>c.ones,ones_like:()=>c.ones_like,permute:()=>c.permute,permute_data:()=>l.permute_data,pipeline:()=>t.pipeline,quantize_embeddings:()=>c.quantize_embeddings,rand:()=>c.rand,read_audio:()=>a.read_audio,rfft:()=>c.rfft,round:()=>l.round,slice:()=>c.slice,softmax:()=>l.softmax,spectrogram:()=>a.spectrogram,stack:()=>c.stack,std_mean:()=>c.std_mean,topk:()=>c.topk,window_function:()=>a.window_function,zeros:()=>c.zeros,zeros_like:()=>c.zeros_like});var e=lf( -/*! ./env.js */ -`./src/env.js`),t=lf( -/*! ./pipelines.js */ -`./src/pipelines.js`),n=lf( -/*! ./models.js */ -`./src/models.js`),r=lf( -/*! ./tokenizers.js */ -`./src/tokenizers.js`),i=lf( -/*! ./configs.js */ -`./src/configs.js`),a=lf( -/*! ./utils/audio.js */ -`./src/utils/audio.js`),o=lf( -/*! ./utils/image.js */ -`./src/utils/image.js`),s=lf( -/*! ./utils/video.js */ -`./src/utils/video.js`),c=lf( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),l=lf( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),u=lf( -/*! ./base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),d=lf( -/*! ./models/feature_extractors.js */ -`./src/models/feature_extractors.js`),f=lf( -/*! ./models/auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),p=lf( -/*! ./base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),m=lf( -/*! ./models/image_processors.js */ -`./src/models/image_processors.js`),h=lf( -/*! ./models/auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),g=lf( -/*! ./base/processing_utils.js */ -`./src/base/processing_utils.js`),_=lf( -/*! ./models/processors.js */ -`./src/models/processors.js`),v=lf( -/*! ./models/auto/processing_auto.js */ -`./src/models/auto/processing_auto.js`),y=lf( -/*! ./generation/streamers.js */ -`./src/generation/streamers.js`),b=lf( -/*! ./generation/stopping_criteria.js */ -`./src/generation/stopping_criteria.js`),x=lf( -/*! ./generation/logits_process.js */ -`./src/generation/logits_process.js`)})();var uf=$.ASTFeatureExtractor,df=$.ASTForAudioClassification,ff=$.ASTModel,pf=$.ASTPreTrainedModel,mf=$.AlbertForMaskedLM,hf=$.AlbertForQuestionAnswering,gf=$.AlbertForSequenceClassification,_f=$.AlbertModel,vf=$.AlbertPreTrainedModel,yf=$.AlbertTokenizer,bf=$.AudioClassificationPipeline,xf=$.AutoConfig,Sf=$.AutoFeatureExtractor,Cf=$.AutoImageProcessor,wf=$.AutoModel,Tf=$.AutoModelForAudioClassification,Ef=$.AutoModelForAudioFrameClassification,Df=$.AutoModelForAudioTextToText,Of=$.AutoModelForCTC,kf=$.AutoModelForCausalLM,Af=$.AutoModelForDepthEstimation,jf=$.AutoModelForDocumentQuestionAnswering,Mf=$.AutoModelForImageClassification,Nf=$.AutoModelForImageFeatureExtraction,Pf=$.AutoModelForImageMatting,Ff=$.AutoModelForImageSegmentation,If=$.AutoModelForImageTextToText,Lf=$.AutoModelForImageToImage,Rf=$.AutoModelForMaskGeneration,zf=$.AutoModelForMaskedLM,Bf=$.AutoModelForNormalEstimation,Vf=$.AutoModelForObjectDetection,Hf=$.AutoModelForPoseEstimation,Uf=$.AutoModelForQuestionAnswering,Wf=$.AutoModelForSemanticSegmentation,Gf=$.AutoModelForSeq2SeqLM,Kf=$.AutoModelForSequenceClassification,qf=$.AutoModelForSpeechSeq2Seq,Jf=$.AutoModelForTextToSpectrogram,Yf=$.AutoModelForTextToWaveform,Xf=$.AutoModelForTokenClassification,Zf=$.AutoModelForUniversalSegmentation,Qf=$.AutoModelForVision2Seq,$f=$.AutoModelForXVector,ep=$.AutoModelForZeroShotObjectDetection,tp=$.AutoProcessor,np=$.AutoTokenizer,rp=$.AutomaticSpeechRecognitionPipeline,ip=$.BackgroundRemovalPipeline,ap=$.BartForConditionalGeneration,op=$.BartForSequenceClassification,sp=$.BartModel,cp=$.BartPretrainedModel,lp=$.BartTokenizer,up=$.BaseModelOutput,dp=$.BaseStreamer,fp=$.BeitFeatureExtractor,pp=$.BeitForImageClassification,mp=$.BeitModel,hp=$.BeitPreTrainedModel,gp=$.BertForMaskedLM,_p=$.BertForQuestionAnswering,vp=$.BertForSequenceClassification,yp=$.BertForTokenClassification,bp=$.BertModel,xp=$.BertPreTrainedModel,Sp=$.BertTokenizer,Cp=$.BitImageProcessor,wp=$.BlenderbotForConditionalGeneration,Tp=$.BlenderbotModel,Ep=$.BlenderbotPreTrainedModel,Dp=$.BlenderbotSmallForConditionalGeneration,Op=$.BlenderbotSmallModel,kp=$.BlenderbotSmallPreTrainedModel,Ap=$.BlenderbotSmallTokenizer,jp=$.BlenderbotTokenizer,Mp=$.BloomForCausalLM,Np=$.BloomModel,Pp=$.BloomPreTrainedModel,Fp=$.BloomTokenizer,Ip=$.CLIPFeatureExtractor,Lp=$.CLIPImageProcessor,Rp=$.CLIPModel,zp=$.CLIPPreTrainedModel,Bp=$.CLIPSegForImageSegmentation,Vp=$.CLIPSegModel,Hp=$.CLIPSegPreTrainedModel,Up=$.CLIPTextModel,Wp=$.CLIPTextModelWithProjection,Gp=$.CLIPTokenizer,Kp=$.CLIPVisionModel,qp=$.CLIPVisionModelWithProjection,Jp=$.CamembertForMaskedLM,Yp=$.CamembertForQuestionAnswering,Xp=$.CamembertForSequenceClassification,Zp=$.CamembertForTokenClassification,Qp=$.CamembertModel,$p=$.CamembertPreTrainedModel,em=$.CamembertTokenizer,tm=$.CausalLMOutput,nm=$.CausalLMOutputWithPast,rm=$.ChineseCLIPFeatureExtractor,im=$.ChineseCLIPModel,am=$.ChineseCLIPPreTrainedModel,om=$.ClapAudioModelWithProjection,sm=$.ClapFeatureExtractor,cm=$.ClapModel,lm=$.ClapPreTrainedModel,um=$.ClapTextModelWithProjection,dm=$.ClassifierFreeGuidanceLogitsProcessor,fm=$.CodeGenForCausalLM,pm=$.CodeGenModel,mm=$.CodeGenPreTrainedModel,hm=$.CodeGenTokenizer,gm=$.CodeLlamaTokenizer,_m=$.CohereForCausalLM,vm=$.CohereModel,ym=$.CoherePreTrainedModel,bm=$.CohereTokenizer,xm=$.ConvBertForMaskedLM,Sm=$.ConvBertForQuestionAnswering,Cm=$.ConvBertForSequenceClassification,wm=$.ConvBertForTokenClassification,Tm=$.ConvBertModel,Em=$.ConvBertPreTrainedModel,Dm=$.ConvBertTokenizer,Om=$.ConvNextFeatureExtractor,km=$.ConvNextForImageClassification,Am=$.ConvNextImageProcessor,jm=$.ConvNextModel,Mm=$.ConvNextPreTrainedModel,Nm=$.ConvNextV2ForImageClassification,Pm=$.ConvNextV2Model,Fm=$.ConvNextV2PreTrainedModel,Im=$.DFineForObjectDetection,Lm=$.DFineModel,Rm=$.DFinePreTrainedModel,zm=$.DPTFeatureExtractor,Bm=$.DPTForDepthEstimation,Vm=$.DPTImageProcessor,Hm=$.DPTModel,Um=$.DPTPreTrainedModel,Wm=$.DacDecoderModel,Gm=$.DacDecoderOutput,Km=$.DacEncoderModel,qm=$.DacEncoderOutput,Jm=$.DacFeatureExtractor,Ym=$.DacModel,Xm=$.DacPreTrainedModel,Zm=$.DataTypeMap,Qm=$.DebertaForMaskedLM,$m=$.DebertaForQuestionAnswering,eh=$.DebertaForSequenceClassification,th=$.DebertaForTokenClassification,nh=$.DebertaModel,rh=$.DebertaPreTrainedModel,ih=$.DebertaTokenizer,ah=$.DebertaV2ForMaskedLM,oh=$.DebertaV2ForQuestionAnswering,sh=$.DebertaV2ForSequenceClassification,ch=$.DebertaV2ForTokenClassification,lh=$.DebertaV2Model,uh=$.DebertaV2PreTrainedModel,dh=$.DebertaV2Tokenizer,fh=$.DecisionTransformerModel,ph=$.DecisionTransformerPreTrainedModel,mh=$.DeiTFeatureExtractor,hh=$.DeiTForImageClassification,gh=$.DeiTImageProcessor,_h=$.DeiTModel,vh=$.DeiTPreTrainedModel,yh=$.DepthAnythingForDepthEstimation,bh=$.DepthAnythingPreTrainedModel,xh=$.DepthEstimationPipeline,Sh=$.DepthProForDepthEstimation,Ch=$.DepthProPreTrainedModel,wh=$.DetrFeatureExtractor,Th=$.DetrForObjectDetection,Eh=$.DetrForSegmentation,Dh=$.DetrImageProcessor,Oh=$.DetrModel,kh=$.DetrObjectDetectionOutput,Ah=$.DetrPreTrainedModel,jh=$.DetrSegmentationOutput,Mh=$.Dinov2ForImageClassification,Nh=$.Dinov2Model,Ph=$.Dinov2PreTrainedModel,Fh=$.Dinov2WithRegistersForImageClassification,Ih=$.Dinov2WithRegistersModel,Lh=$.Dinov2WithRegistersPreTrainedModel,Rh=$.DistilBertForMaskedLM,zh=$.DistilBertForQuestionAnswering,Bh=$.DistilBertForSequenceClassification,Vh=$.DistilBertForTokenClassification,Hh=$.DistilBertModel,Uh=$.DistilBertPreTrainedModel,Wh=$.DistilBertTokenizer,Gh=$.DocumentQuestionAnsweringPipeline,Kh=$.DonutFeatureExtractor,qh=$.DonutImageProcessor,Jh=$.DonutSwinModel,Yh=$.DonutSwinPreTrainedModel,Xh=$.EfficientNetForImageClassification,Zh=$.EfficientNetImageProcessor,Qh=$.EfficientNetModel,$h=$.EfficientNetPreTrainedModel,eg=$.ElectraForMaskedLM,tg=$.ElectraForQuestionAnswering,ng=$.ElectraForSequenceClassification,rg=$.ElectraForTokenClassification,ig=$.ElectraModel,ag=$.ElectraPreTrainedModel,og=$.ElectraTokenizer,sg=$.EncodecFeatureExtractor,cg=$.EosTokenCriteria,lg=$.EsmForMaskedLM,ug=$.EsmForSequenceClassification,dg=$.EsmForTokenClassification,fg=$.EsmModel,pg=$.EsmPreTrainedModel,mg=$.EsmTokenizer,hg=$.ExaoneForCausalLM,gg=$.ExaoneModel,_g=$.ExaonePreTrainedModel,vg=$.FFT,yg=$.FalconForCausalLM,bg=$.FalconModel,xg=$.FalconPreTrainedModel,Sg=$.FalconTokenizer,Cg=$.FastViTForImageClassification,wg=$.FastViTModel,Tg=$.FastViTPreTrainedModel,Eg=$.FeatureExtractionPipeline,Dg=$.FeatureExtractor,Og=$.FillMaskPipeline,kg=$.Florence2ForConditionalGeneration,Ag=$.Florence2PreTrainedModel,jg=$.Florence2Processor,Mg=$.ForcedBOSTokenLogitsProcessor,Ng=$.ForcedEOSTokenLogitsProcessor,Pg=$.GLPNFeatureExtractor,Fg=$.GLPNForDepthEstimation,Ig=$.GLPNModel,Lg=$.GLPNPreTrainedModel,Rg=$.GPT2LMHeadModel,zg=$.GPT2Model,Bg=$.GPT2PreTrainedModel,Vg=$.GPT2Tokenizer,Hg=$.GPTBigCodeForCausalLM,Ug=$.GPTBigCodeModel,Wg=$.GPTBigCodePreTrainedModel,Gg=$.GPTJForCausalLM,Kg=$.GPTJModel,qg=$.GPTJPreTrainedModel,Jg=$.GPTNeoForCausalLM,Yg=$.GPTNeoModel,Xg=$.GPTNeoPreTrainedModel,Zg=$.GPTNeoXForCausalLM,Qg=$.GPTNeoXModel,$g=$.GPTNeoXPreTrainedModel,e_=$.GPTNeoXTokenizer,t_=$.Gemma2ForCausalLM,n_=$.Gemma2Model,r_=$.Gemma2PreTrainedModel,i_=$.Gemma3ForCausalLM,a_=$.Gemma3Model,o_=$.Gemma3PreTrainedModel,s_=$.Gemma3nAudioFeatureExtractor,c_=$.Gemma3nForConditionalGeneration,l_=$.Gemma3nPreTrainedModel,u_=$.Gemma3nProcessor,d_=$.GemmaForCausalLM,f_=$.GemmaModel,p_=$.GemmaPreTrainedModel,m_=$.GemmaTokenizer,h_=$.GlmForCausalLM,g_=$.GlmModel,__=$.GlmPreTrainedModel,v_=$.GraniteForCausalLM,y_=$.GraniteModel,b_=$.GranitePreTrainedModel,x_=$.Grok1Tokenizer,S_=$.GroundingDinoForObjectDetection,C_=$.GroundingDinoImageProcessor,w_=$.GroundingDinoPreTrainedModel,T_=$.GroundingDinoProcessor,E_=$.GroupViTModel,D_=$.GroupViTPreTrainedModel,O_=$.HeliumForCausalLM,k_=$.HeliumModel,A_=$.HeliumPreTrainedModel,j_=$.HerbertTokenizer,M_=$.HieraForImageClassification,N_=$.HieraModel,P_=$.HieraPreTrainedModel,F_=$.HubertForCTC,I_=$.HubertForSequenceClassification,L_=$.HubertModel,R_=$.HubertPreTrainedModel,z_=$.IJepaForImageClassification,B_=$.IJepaModel,V_=$.IJepaPreTrainedModel,H_=$.Idefics3ForConditionalGeneration,U_=$.Idefics3ImageProcessor,W_=$.Idefics3PreTrainedModel,G_=$.Idefics3Processor,K_=$.ImageClassificationPipeline,q_=$.ImageFeatureExtractionPipeline,J_=$.ImageFeatureExtractor,Y_=$.ImageMattingOutput,X_=$.ImageProcessor,Z_=$.ImageSegmentationPipeline,Q_=$.ImageToImagePipeline,$_=$.ImageToTextPipeline,ev=$.InterruptableStoppingCriteria,tv=$.JAISLMHeadModel,nv=$.JAISModel,rv=$.JAISPreTrainedModel,iv=$.JinaCLIPImageProcessor,av=$.JinaCLIPModel,ov=$.JinaCLIPPreTrainedModel,sv=$.JinaCLIPProcessor,cv=$.JinaCLIPTextModel,lv=$.JinaCLIPVisionModel,uv=$.LiteWhisperForConditionalGeneration,dv=$.LlamaForCausalLM,fv=$.LlamaModel,pv=$.LlamaPreTrainedModel,mv=$.LlamaTokenizer,hv=$.LlavaForConditionalGeneration,gv=$.LlavaOnevisionForConditionalGeneration,_v=$.LlavaOnevisionImageProcessor,vv=$.LlavaPreTrainedModel,yv=$.LlavaProcessor,bv=$.LlavaQwen2ForCausalLM,xv=$.LogitsProcessor,Sv=$.LogitsProcessorList,Cv=$.LogitsWarper,wv=$.LongT5ForConditionalGeneration,Tv=$.LongT5Model,Ev=$.LongT5PreTrainedModel,Dv=$.M2M100ForConditionalGeneration,Ov=$.M2M100Model,kv=$.M2M100PreTrainedModel,Av=$.M2M100Tokenizer,jv=$.MBart50Tokenizer,Mv=$.MBartForCausalLM,Nv=$.MBartForConditionalGeneration,Pv=$.MBartForSequenceClassification,Fv=$.MBartModel,Iv=$.MBartPreTrainedModel,Lv=$.MBartTokenizer,Rv=$.MPNetForMaskedLM,zv=$.MPNetForQuestionAnswering,Bv=$.MPNetForSequenceClassification,Vv=$.MPNetForTokenClassification,Hv=$.MPNetModel,Uv=$.MPNetPreTrainedModel,Wv=$.MPNetTokenizer,Gv=$.MT5ForConditionalGeneration,Kv=$.MT5Model,qv=$.MT5PreTrainedModel,Jv=$.MarianMTModel,Yv=$.MarianModel,Xv=$.MarianPreTrainedModel,Zv=$.MarianTokenizer,Qv=$.Mask2FormerImageProcessor,$v=$.MaskFormerFeatureExtractor,ey=$.MaskFormerForInstanceSegmentation,ty=$.MaskFormerImageProcessor,ny=$.MaskFormerModel,ry=$.MaskFormerPreTrainedModel,iy=$.MaskedLMOutput,ay=$.MaxLengthCriteria,oy=$.Metric3DForDepthEstimation,sy=$.Metric3DPreTrainedModel,cy=$.Metric3Dv2ForDepthEstimation,ly=$.Metric3Dv2PreTrainedModel,uy=$.MgpstrForSceneTextRecognition,dy=$.MgpstrModelOutput,fy=$.MgpstrPreTrainedModel,py=$.MgpstrProcessor,my=$.MgpstrTokenizer,hy=$.MimiDecoderModel,gy=$.MimiDecoderOutput,_y=$.MimiEncoderModel,vy=$.MimiEncoderOutput,yy=$.MimiModel,by=$.MimiPreTrainedModel,xy=$.MinLengthLogitsProcessor,Sy=$.MinNewTokensLengthLogitsProcessor,Cy=$.MistralForCausalLM,wy=$.MistralModel,Ty=$.MistralPreTrainedModel,Ey=$.MobileBertForMaskedLM,Dy=$.MobileBertForQuestionAnswering,Oy=$.MobileBertForSequenceClassification,ky=$.MobileBertModel,Ay=$.MobileBertPreTrainedModel,jy=$.MobileBertTokenizer,My=$.MobileLLMForCausalLM,Ny=$.MobileLLMModel,Py=$.MobileLLMPreTrainedModel,Fy=$.MobileNetV1FeatureExtractor,Iy=$.MobileNetV1ForImageClassification,Ly=$.MobileNetV1ForSemanticSegmentation,Ry=$.MobileNetV1ImageProcessor,zy=$.MobileNetV1Model,By=$.MobileNetV1PreTrainedModel,Vy=$.MobileNetV2FeatureExtractor,Hy=$.MobileNetV2ForImageClassification,Uy=$.MobileNetV2ForSemanticSegmentation,Wy=$.MobileNetV2ImageProcessor,Gy=$.MobileNetV2Model,Ky=$.MobileNetV2PreTrainedModel,qy=$.MobileNetV3FeatureExtractor,Jy=$.MobileNetV3ForImageClassification,Yy=$.MobileNetV3ForSemanticSegmentation,Xy=$.MobileNetV3ImageProcessor,Zy=$.MobileNetV3Model,Qy=$.MobileNetV3PreTrainedModel,$y=$.MobileNetV4FeatureExtractor,eb=$.MobileNetV4ForImageClassification,tb=$.MobileNetV4ForSemanticSegmentation,nb=$.MobileNetV4ImageProcessor,rb=$.MobileNetV4Model,ib=$.MobileNetV4PreTrainedModel,ab=$.MobileViTFeatureExtractor,ob=$.MobileViTForImageClassification,sb=$.MobileViTImageProcessor,cb=$.MobileViTModel,lb=$.MobileViTPreTrainedModel,ub=$.MobileViTV2ForImageClassification,db=$.MobileViTV2Model,fb=$.MobileViTV2PreTrainedModel,pb=$.ModelOutput,mb=$.ModernBertForMaskedLM,hb=$.ModernBertForSequenceClassification,gb=$.ModernBertForTokenClassification,_b=$.ModernBertModel,vb=$.ModernBertPreTrainedModel,yb=$.Moondream1ForConditionalGeneration,bb=$.MoonshineFeatureExtractor,xb=$.MoonshineForConditionalGeneration,Sb=$.MoonshineModel,Cb=$.MoonshinePreTrainedModel,wb=$.MoonshineProcessor,Tb=$.MptForCausalLM,Eb=$.MptModel,Db=$.MptPreTrainedModel,Ob=$.MultiModalityCausalLM,kb=$.MultiModalityPreTrainedModel,Ab=$.MusicgenForCausalLM,jb=$.MusicgenForConditionalGeneration,Mb=$.MusicgenModel,Nb=$.MusicgenPreTrainedModel,Pb=$.NeoBertForMaskedLM,Fb=$.NeoBertForQuestionAnswering,Ib=$.NeoBertForSequenceClassification,Lb=$.NeoBertForTokenClassification,Rb=$.NeoBertModel,zb=$.NeoBertPreTrainedModel,Bb=$.NllbTokenizer,Vb=$.NoBadWordsLogitsProcessor,Hb=$.NoRepeatNGramLogitsProcessor,Ub=$.NomicBertModel,Wb=$.NomicBertPreTrainedModel,Gb=$.NougatImageProcessor,Kb=$.NougatTokenizer,qb=$.OPTForCausalLM,Jb=$.OPTModel,Yb=$.OPTPreTrainedModel,Xb=$.ObjectDetectionPipeline,Zb=$.Olmo2ForCausalLM,Qb=$.Olmo2Model,$b=$.Olmo2PreTrainedModel,ex=$.OlmoForCausalLM,tx=$.OlmoModel,nx=$.OlmoPreTrainedModel,rx=$.OpenELMForCausalLM,ix=$.OpenELMModel,ax=$.OpenELMPreTrainedModel,ox=$.OwlViTFeatureExtractor,sx=$.OwlViTForObjectDetection,cx=$.OwlViTImageProcessor,lx=$.OwlViTModel,ux=$.OwlViTPreTrainedModel,dx=$.OwlViTProcessor,fx=$.Owlv2ForObjectDetection,px=$.Owlv2ImageProcessor,mx=$.Owlv2Model,hx=$.Owlv2PreTrainedModel,gx=$.PaliGemmaForConditionalGeneration,_x=$.PaliGemmaPreTrainedModel,vx=$.PaliGemmaProcessor,yx=$.PatchTSMixerForPrediction,bx=$.PatchTSMixerModel,xx=$.PatchTSMixerPreTrainedModel,Sx=$.PatchTSTForPrediction,Cx=$.PatchTSTModel,wx=$.PatchTSTPreTrainedModel,Tx=$.Phi3ForCausalLM,Ex=$.Phi3Model,Dx=$.Phi3PreTrainedModel,Ox=$.Phi3VForCausalLM,kx=$.Phi3VImageProcessor,Ax=$.Phi3VPreTrainedModel,jx=$.Phi3VProcessor,Mx=$.PhiForCausalLM,Nx=$.PhiModel,Px=$.PhiPreTrainedModel,Fx=$.Pipeline,Ix=$.PreTrainedModel,Lx=$.PreTrainedTokenizer,Rx=$.PretrainedConfig,zx=$.PretrainedMixin,Bx=$.Processor,Vx=$.PvtForImageClassification,Hx=$.PvtImageProcessor,Ux=$.PvtModel,Wx=$.PvtPreTrainedModel,Gx=$.PyAnnoteFeatureExtractor,Kx=$.PyAnnoteForAudioFrameClassification,qx=$.PyAnnoteModel,Jx=$.PyAnnotePreTrainedModel,Yx=$.PyAnnoteProcessor,Xx=$.QuestionAnsweringModelOutput,Zx=$.QuestionAnsweringPipeline,Qx=$.Qwen2ForCausalLM,$x=$.Qwen2Model,eS=$.Qwen2PreTrainedModel,tS=$.Qwen2Tokenizer,nS=$.Qwen2VLForConditionalGeneration,rS=$.Qwen2VLImageProcessor,iS=$.Qwen2VLPreTrainedModel,aS=$.Qwen2VLProcessor,oS=$.Qwen3ForCausalLM,sS=$.Qwen3Model,cS=$.Qwen3PreTrainedModel,lS=$.RFDetrForObjectDetection,uS=$.RFDetrModel,dS=$.RFDetrObjectDetectionOutput,fS=$.RFDetrPreTrainedModel,pS=$.RTDetrForObjectDetection,mS=$.RTDetrImageProcessor,hS=$.RTDetrModel,gS=$.RTDetrObjectDetectionOutput,_S=$.RTDetrPreTrainedModel,vS=$.RTDetrV2ForObjectDetection,yS=$.RTDetrV2Model,bS=$.RTDetrV2ObjectDetectionOutput,xS=$.RTDetrV2PreTrainedModel,SS=$.RawAudio,CS=$.RawImage,wS=$.RawVideo,TS=$.RawVideoFrame,ES=$.RepetitionPenaltyLogitsProcessor,DS=$.ResNetForImageClassification,OS=$.ResNetModel,kS=$.ResNetPreTrainedModel,AS=$.RoFormerForMaskedLM,jS=$.RoFormerForQuestionAnswering,MS=$.RoFormerForSequenceClassification,NS=$.RoFormerForTokenClassification,PS=$.RoFormerModel,FS=$.RoFormerPreTrainedModel,IS=$.RoFormerTokenizer,LS=$.RobertaForMaskedLM,RS=$.RobertaForQuestionAnswering,zS=$.RobertaForSequenceClassification,BS=$.RobertaForTokenClassification,VS=$.RobertaModel,HS=$.RobertaPreTrainedModel,US=$.RobertaTokenizer,WS=$.SamImageProcessor,GS=$.SamImageSegmentationOutput,KS=$.SamModel,qS=$.SamPreTrainedModel,JS=$.SamProcessor,YS=$.SapiensForDepthEstimation,XS=$.SapiensForNormalEstimation,ZS=$.SapiensForSemanticSegmentation,QS=$.SapiensPreTrainedModel,$S=$.SeamlessM4TFeatureExtractor,eC=$.SegformerFeatureExtractor,tC=$.SegformerForImageClassification,nC=$.SegformerForSemanticSegmentation,rC=$.SegformerImageProcessor,iC=$.SegformerModel,aC=$.SegformerPreTrainedModel,oC=$.Seq2SeqLMOutput,sC=$.SequenceClassifierOutput,cC=$.SiglipImageProcessor,lC=$.SiglipModel,uC=$.SiglipPreTrainedModel,dC=$.SiglipTextModel,fC=$.SiglipTokenizer,pC=$.SiglipVisionModel,mC=$.SmolVLMForConditionalGeneration,hC=$.SmolVLMImageProcessor,gC=$.SmolVLMProcessor,_C=$.SnacDecoderModel,vC=$.SnacEncoderModel,yC=$.SnacFeatureExtractor,bC=$.SnacModel,xC=$.SnacPreTrainedModel,SC=$.SpeechT5FeatureExtractor,CC=$.SpeechT5ForSpeechToText,wC=$.SpeechT5ForTextToSpeech,TC=$.SpeechT5HifiGan,EC=$.SpeechT5Model,DC=$.SpeechT5PreTrainedModel,OC=$.SpeechT5Processor,kC=$.SpeechT5Tokenizer,AC=$.SqueezeBertForMaskedLM,jC=$.SqueezeBertForQuestionAnswering,MC=$.SqueezeBertForSequenceClassification,NC=$.SqueezeBertModel,PC=$.SqueezeBertPreTrainedModel,FC=$.SqueezeBertTokenizer,IC=$.StableLmForCausalLM,LC=$.StableLmModel,RC=$.StableLmPreTrainedModel,zC=$.Starcoder2ForCausalLM,BC=$.Starcoder2Model,VC=$.Starcoder2PreTrainedModel,HC=$.StoppingCriteria,UC=$.StoppingCriteriaList,WC=$.StyleTextToSpeech2Model,GC=$.StyleTextToSpeech2PreTrainedModel,KC=$.SummarizationPipeline,qC=$.SuppressTokensAtBeginLogitsProcessor,JC=$.Swin2SRForImageSuperResolution,YC=$.Swin2SRImageProcessor,XC=$.Swin2SRModel,ZC=$.Swin2SRPreTrainedModel,QC=$.SwinForImageClassification,$C=$.SwinForSemanticSegmentation,ew=$.SwinModel,tw=$.SwinPreTrainedModel,nw=$.T5ForConditionalGeneration,rw=$.T5Model,iw=$.T5PreTrainedModel,aw=$.T5Tokenizer,ow=$.TableTransformerForObjectDetection,sw=$.TableTransformerModel,cw=$.TableTransformerObjectDetectionOutput,lw=$.TableTransformerPreTrainedModel,uw=$.TemperatureLogitsWarper,dw=$.Tensor,fw=$.Text2TextGenerationPipeline,pw=$.TextClassificationPipeline,mw=$.TextGenerationPipeline,hw=$.TextStreamer,gw=$.TextToAudioPipeline,_w=$.TokenClassificationPipeline,vw=$.TokenClassifierOutput,yw=$.TokenizerModel,bw=$.TopKLogitsWarper,xw=$.TopPLogitsWarper,Sw=$.TrOCRForCausalLM,Cw=$.TrOCRPreTrainedModel,ww=$.TranslationPipeline,Tw=$.UltravoxModel,Ew=$.UltravoxPreTrainedModel,Dw=$.UltravoxProcessor,Ow=$.UniSpeechForCTC,kw=$.UniSpeechForSequenceClassification,Aw=$.UniSpeechModel,jw=$.UniSpeechPreTrainedModel,Mw=$.UniSpeechSatForAudioFrameClassification,Nw=$.UniSpeechSatForCTC,Pw=$.UniSpeechSatForSequenceClassification,Fw=$.UniSpeechSatModel,Iw=$.UniSpeechSatPreTrainedModel,Lw=$.VLChatProcessor,Rw=$.VLMImageProcessor,zw=$.ViTFeatureExtractor,Bw=$.ViTForImageClassification,Vw=$.ViTImageProcessor,Hw=$.ViTMAEModel,Uw=$.ViTMAEPreTrainedModel,Ww=$.ViTMSNForImageClassification,Gw=$.ViTMSNModel,Kw=$.ViTMSNPreTrainedModel,qw=$.ViTModel,Jw=$.ViTPreTrainedModel,Yw=$.VisionEncoderDecoderModel,Xw=$.VitMatteForImageMatting,Zw=$.VitMatteImageProcessor,Qw=$.VitMattePreTrainedModel,$w=$.VitPoseForPoseEstimation,eT=$.VitPoseImageProcessor,tT=$.VitPosePreTrainedModel,nT=$.VitsModel,rT=$.VitsModelOutput,iT=$.VitsPreTrainedModel,aT=$.VitsTokenizer,oT=$.Wav2Vec2BertForCTC,sT=$.Wav2Vec2BertForSequenceClassification,cT=$.Wav2Vec2BertModel,lT=$.Wav2Vec2BertPreTrainedModel,uT=$.Wav2Vec2CTCTokenizer,dT=$.Wav2Vec2FeatureExtractor,fT=$.Wav2Vec2ForAudioFrameClassification,pT=$.Wav2Vec2ForCTC,mT=$.Wav2Vec2ForSequenceClassification,hT=$.Wav2Vec2Model,gT=$.Wav2Vec2PreTrainedModel,_T=$.Wav2Vec2Processor,vT=$.Wav2Vec2ProcessorWithLM,yT=$.WavLMForAudioFrameClassification,bT=$.WavLMForCTC,xT=$.WavLMForSequenceClassification,ST=$.WavLMForXVector,CT=$.WavLMModel,wT=$.WavLMPreTrainedModel,TT=$.WeSpeakerFeatureExtractor,ET=$.WeSpeakerResNetModel,DT=$.WeSpeakerResNetPreTrainedModel,OT=$.WhisperFeatureExtractor,kT=$.WhisperForConditionalGeneration,AT=$.WhisperModel,jT=$.WhisperPreTrainedModel,MT=$.WhisperProcessor,NT=$.WhisperTextStreamer,PT=$.WhisperTimeStampLogitsProcessor,FT=$.WhisperTokenizer,IT=$.XLMForQuestionAnswering,LT=$.XLMForSequenceClassification,RT=$.XLMForTokenClassification,zT=$.XLMModel,BT=$.XLMPreTrainedModel,VT=$.XLMRobertaForMaskedLM,HT=$.XLMRobertaForQuestionAnswering,UT=$.XLMRobertaForSequenceClassification,WT=$.XLMRobertaForTokenClassification,GT=$.XLMRobertaModel,KT=$.XLMRobertaPreTrainedModel,qT=$.XLMRobertaTokenizer,JT=$.XLMTokenizer,YT=$.XLMWithLMHeadModel,XT=$.XVectorOutput,ZT=$.YolosFeatureExtractor,QT=$.YolosForObjectDetection,$T=$.YolosImageProcessor,eE=$.YolosModel,tE=$.YolosObjectDetectionOutput,nE=$.YolosPreTrainedModel,rE=$.ZeroShotAudioClassificationPipeline,iE=$.ZeroShotClassificationPipeline,aE=$.ZeroShotImageClassificationPipeline,oE=$.ZeroShotObjectDetectionPipeline,sE=$.bankers_round,cE=$.cat,lE=$.cos_sim,uE=$.dot,dE=$.dynamic_time_warping,fE=$.env,pE=$.full,mE=$.full_like,hE=$.getKeyValueShapes,gE=$.hamming,_E=$.hanning,vE=$.interpolate,yE=$.interpolate_4d,bE=$.interpolate_data,xE=$.is_chinese_char,SE=$.layer_norm,CE=$.load_image,wE=$.load_video,TE=$.log_softmax,EE=$.magnitude,DE=$.matmul,OE=$.max,kE=$.mean,AE=$.mean_pooling,jE=$.medianFilter,ME=$.mel_filter_bank,NE=$.min,PE=$.ones,FE=$.ones_like,IE=$.permute,LE=$.permute_data,RE=$.pipeline,zE=$.quantize_embeddings,BE=$.rand,VE=$.read_audio,HE=$.rfft,UE=$.round,WE=$.slice,GE=$.softmax,KE=$.spectrogram,qE=$.stack,JE=$.std_mean,YE=$.topk,XE=$.window_function,ZE=$.zeros,QE=$.zeros_like;export{wf as __webpack_exports__AutoModel,tp as __webpack_exports__AutoProcessor,CS as __webpack_exports__RawImage,dw as __webpack_exports__Tensor,fE as __webpack_exports__env}; \ No newline at end of file diff --git a/assets/valibot-CbgwcZn_-Brv-hcxF.js b/assets/valibot-CbgwcZn_-Brv-hcxF.js deleted file mode 100644 index 506b25a1944b9fd8e6169615e768a1211bc2e5bc..0000000000000000000000000000000000000000 --- a/assets/valibot-CbgwcZn_-Brv-hcxF.js +++ /dev/null @@ -1 +0,0 @@ -import{__vitePreload as e,tryImport as t}from"./index-iQVr9nx1.js";const n=async()=>{let{toJsonSchema:n}=await t(e(()=>import(`./dist-BjoOBWKx.js`),[]),`@valibot/to-json-schema`);return e=>n(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/valibot-CbgwcZn_-CI1fVJf9.js b/assets/valibot-CbgwcZn_-CI1fVJf9.js new file mode 100644 index 0000000000000000000000000000000000000000..bda4fc4e0190dade207c12ab9fc2de0769e94e8c --- /dev/null +++ b/assets/valibot-CbgwcZn_-CI1fVJf9.js @@ -0,0 +1 @@ +import{aI as e,m as t}from"./index-C9kcCpP-.js";const n=async()=>{let{toJsonSchema:n}=await t(e(()=>import(`./dist-6SPr9_vA.js`),[]),`@valibot/to-json-schema`);return e=>n(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/vibrant-BQJAnvPb.js b/assets/vibrant-BQJAnvPb.js deleted file mode 100644 index 9194ea3305d9d3e36e2fb13779089f400adef4ec..0000000000000000000000000000000000000000 --- a/assets/vibrant-BQJAnvPb.js +++ /dev/null @@ -1 +0,0 @@ -import{InputFile_default as e}from"./InputFile-BJcnvuYo.js";import{Fragment as t,createBaseVNode as n,createCommentVNode as r,createElementBlock as i,createVNode as a,defineComponent as o,normalizeStyle as s,openBlock as c,ref as l,renderList as u,toDisplayString as d,unref as f,watch as p}from"./index-iQVr9nx1.js";import{Vibrant as m}from"./browser-3IcCfs_4.js";const h={flex:``,"flex-col":``,"gap-4":``},g={border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"w-full":``,flex:``,"gap-2":``,"rounded-lg":``,"p-4":``},_={border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"w-full":``,flex:``,"gap-2":``,"rounded-lg":``,"p-4":``},v={flex:``,"gap-2":``},y={"h-60":``,border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"rounded-lg":``},b=[`src`];var x=o({__name:`vibrant`,setup(o){let x=l([]),S=l(),C=l([]),w=l([]);function T(e){let t=new Image;t.src=URL.createObjectURL(e),t.onload=E,S.value=t}async function E(){if(!S.value)return;let e=new m(S.value),t=await e.getPalette();C.value=Object.values(t).map(e=>e?.hex).filter(e=>typeof e==`string`),w.value=Object.values(t).map(e=>JSON.stringify(e))}return p(x,e=>{T(e[0])},{deep:!0}),(o,l)=>(c(),i(`div`,h,[n(`div`,g,[(c(!0),i(t,null,u(C.value,(e,t)=>(c(),i(`div`,{key:t,style:s({backgroundColor:e}),"size-20":``,"rounded-full":``},null,4))),128))]),n(`div`,_,d(w.value),1),n(`div`,v,[a(f(e),{modelValue:x.value,"onUpdate:modelValue":l[0]||=e=>x.value=e,"h-60":``,"w-full":``},null,8,[`modelValue`])]),n(`div`,y,[S.value?(c(),i(`img`,{key:0,src:S.value.src,"h-full":``,"w-full":``,"object-contain":``},null,8,b)):r(``,!0)])]))}}),S=x;export{S as default}; \ No newline at end of file diff --git a/assets/vibrant-DdAX8FW9.js b/assets/vibrant-DdAX8FW9.js new file mode 100644 index 0000000000000000000000000000000000000000..21a3b28649af20fa1c2344100e6a471a5b97c970 --- /dev/null +++ b/assets/vibrant-DdAX8FW9.js @@ -0,0 +1 @@ +import{b as e}from"./InputFile-B-1kiNIu.js";import{d7 as t,d9 as n,dB as r,dF as i,dH as a,dK as o,dV as s,db as c,dj as l,dl as u,du as d,e1 as f,e3 as p}from"./index-C9kcCpP-.js";import{b as m}from"./browser-UfbE_1lV.js";const h={flex:``,"flex-col":``,"gap-4":``},g={border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"w-full":``,flex:``,"gap-2":``,"rounded-lg":``,"p-4":``},_={border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"w-full":``,flex:``,"gap-2":``,"rounded-lg":``,"p-4":``},v={flex:``,"gap-2":``},y={"h-60":``,border:`2 solid neutral-200 dark:neutral-800`,bg:`neutral-50 dark:neutral-900`,"rounded-lg":``},b=[`src`];var x=t({__name:`vibrant`,setup(t){let x=o([]),S=o(),C=o([]),w=o([]);function T(e){let t=new Image;t.src=URL.createObjectURL(e),t.onload=E,S.value=t}async function E(){if(!S.value)return;let e=new m(S.value),t=await e.getPalette();C.value=Object.values(t).map(e=>e?.hex).filter(e=>typeof e==`string`),w.value=Object.values(t).map(e=>JSON.stringify(e))}return i(x,e=>{T(e[0])},{deep:!0}),(t,i)=>(a(),c(`div`,h,[l(`div`,g,[(a(!0),c(d,null,u(C.value,(e,t)=>(a(),c(`div`,{key:t,style:p({backgroundColor:e}),"size-20":``,"rounded-full":``},null,4))),128))]),l(`div`,_,f(w.value),1),l(`div`,v,[r(s(e),{modelValue:x.value,"onUpdate:modelValue":i[0]||=e=>x.value=e,"h-60":``,"w-full":``},null,8,[`modelValue`])]),l(`div`,y,[S.value?(a(),c(`img`,{key:0,src:S.value.src,"h-full":``,"w-full":``,"object-contain":``},null,8,b)):n(``,!0)])]))}}),S=x;export{S as default}; \ No newline at end of file diff --git a/assets/volcengine-BmRMK9-E.js b/assets/volcengine-BmRMK9-E.js new file mode 100644 index 0000000000000000000000000000000000000000..6bb745550aee432020383bf719ca77cd3bd32cd2 --- /dev/null +++ b/assets/volcengine-BmRMK9-E.js @@ -0,0 +1 @@ +import{K as e,Q as t,a8 as n,aJ as r,aa as i,b as a,d3 as o,d7 as s,dB as c,dF as l,dH as u,dK as d,dV as f,da as p,dj as m,dn as h,dv as g,g as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b={flex:`~ col gap-4`},x=`volcengine`,S=`v1`;var C=s({__name:`volcengine`,setup(s){let y=d(1),C=_(),w=v(),{providers:T}=r(w),{t:E}=t(),D=g({get:()=>(T.value[x]?.app)?.appId||``,set:e=>{T.value[x]||(T.value[x]={}),T.value[x].app={appId:e}}}),O=g(()=>!!T.value[x]?.apiKey),k=g(()=>C.availableVoices[x]||[]);async function A(e,t,n){let r=w.getProviderInstance(x);if(!r)throw Error(`Failed to initialize speech provider`);let i=w.getProviderConfig(x),a=i.model||S;return await C.speech(r,a,e,t,{...i})}return o(async()=>{let e=w.getProviderConfig(x),t=w.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await C.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)}),l(y,async()=>{let e=w.getProviderConfig(x);e.audio||={},e.audio.speedRatio=y.value}),l([T,D],async()=>{let e=w.getProviderConfig(x),t=w.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await C.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)},{immediate:!0}),(t,r)=>(u(),h(f(a),{"provider-id":x,"default-model":S},{"basic-settings":p(()=>[m(`div`,b,[c(f(i),{modelValue:D.value,"onUpdate:modelValue":r[0]||=e=>D.value=e,label:f(E)(`settings.pages.providers.provider.volcengine.fields.field.appId.label`),description:f(E)(`settings.pages.providers.provider.volcengine.fields.field.appId.description`),required:``},null,8,[`modelValue`,`label`,`description`])])]),"voice-settings":p(()=>[c(f(n),{modelValue:y.value,"onUpdate:modelValue":r[1]||=e=>y.value=e,label:f(E)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:f(E)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`])]),playground:p(()=>[c(f(e),{"available-voices":k.value,"generate-speech":A,"api-key-configured":O.value,"default-text":`Hello! This is a test of the ElevenLabs voice synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof y==`function`&&y(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/volcengine-DjrEGih7.js b/assets/volcengine-DjrEGih7.js deleted file mode 100644 index e8b8ab3a0bd7d1fdf5f1cfb4705cc9c20feb6bc3..0000000000000000000000000000000000000000 --- a/assets/volcengine-DjrEGih7.js +++ /dev/null @@ -1 +0,0 @@ -import{FieldInput_default as e,FieldRange_default as t,SpeechPlayground_default as n,SpeechProviderSettings_default as r,computed as i,createBaseVNode as a,createBlock as o,createVNode as s,defineComponent as c,onMounted as l,openBlock as u,ref as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useSpeechStore as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b={flex:`~ col gap-4`},x=`volcengine`,S=`v1`;var C=c({__name:`volcengine`,setup(c){let y=d(1),C=g(),w=h(),{providers:T}=f(w),{t:E}=m(),D=i({get:()=>{var e;return((e=T.value[x])==null||(e=e.app)==null?void 0:e.appId)||``},set:e=>{T.value[x]||(T.value[x]={}),T.value[x].app={appId:e}}}),O=i(()=>{var e;return!!(e=T.value[x])?.apiKey}),k=i(()=>C.availableVoices[x]||[]);async function A(e,t,n){let r=w.getProviderInstance(x);if(!r)throw Error(`Failed to initialize speech provider`);let i=w.getProviderConfig(x),a=i.model||S;return await C.speech(r,a,e,t,{...i})}return l(async()=>{let e=w.getProviderConfig(x),t=w.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await C.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)}),_(y,async()=>{let e=w.getProviderConfig(x);e.audio||={},e.audio.speedRatio=y.value}),_([T,D],async()=>{let e=w.getProviderConfig(x),t=w.getProviderMetadata(x);await t.validators.validateProviderConfig(e)?await C.loadVoicesForProvider(x):console.error(`Failed to validate provider config`,e)},{immediate:!0}),(i,c)=>(u(),o(p(r),{"provider-id":x,"default-model":S},{"basic-settings":v(()=>[a(`div`,b,[s(p(e),{modelValue:D.value,"onUpdate:modelValue":c[0]||=e=>D.value=e,label:p(E)(`settings.pages.providers.provider.volcengine.fields.field.appId.label`),description:p(E)(`settings.pages.providers.provider.volcengine.fields.field.appId.description`),required:``},null,8,[`modelValue`,`label`,`description`])])]),"voice-settings":v(()=>[s(p(t),{modelValue:y.value,"onUpdate:modelValue":c[1]||=e=>y.value=e,label:p(E)(`settings.pages.providers.provider.common.fields.field.speed.label`),description:p(E)(`settings.pages.providers.provider.common.fields.field.speed.description`),min:.5,max:2,step:.01},null,8,[`modelValue`,`label`,`description`])]),playground:v(()=>[s(p(n),{"available-voices":k.value,"generate-speech":A,"api-key-configured":O.value,"default-text":`Hello! This is a test of the ElevenLabs voice synthesis.`},null,8,[`available-voices`,`api-key-configured`])]),_:1}))}});typeof y==`function`&&y(C);var w=C;export{w as default}; \ No newline at end of file diff --git a/assets/worker-Bv82ofgX.js b/assets/worker-Bv82ofgX.js new file mode 100644 index 0000000000000000000000000000000000000000..05275f8b3284cba1040431f2c825942f3b597777 --- /dev/null +++ b/assets/worker-Bv82ofgX.js @@ -0,0 +1,3598 @@ +(function(){var e=Object.defineProperty,t=(t,n)=>{for(var r in n)e(t,r,{get:n[r],enumerable:!0})};let n=new Map,r=[],i=(e,t,i)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let a=n.get(e);if(a===void 0)n.set(e,{backend:t,priority:i});else if(a.priority>i)return;else if(a.priority===i&&a.backend!==t)throw Error(`cannot register backend "${e}" using priority ${i}`);if(i>=0){let t=r.indexOf(e);t!==-1&&r.splice(t,1);for(let t=0;t{let t=n.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},o=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),i=n.length===0?r:n,o,s=[],c=new Set;for(let e of i){let t=await a(e);typeof t==`string`?s.push({name:e,err:t}):(o||=t,o===t&&c.add(e))}if(!o)throw Error(`no available backend found. ERR: ${s.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of s)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let l=t.filter(e=>c.has(typeof e==`string`?e:e.name));return[o,new Proxy(e,{get:(e,t)=>t===`executionProviders`?l:Reflect.get(e,t)})]},s=`1.22.0`,c=`warning`,l={wasm:{},webgl:{},webgpu:{},versions:{common:s},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);c=e}},get logLevel(){return c}};Object.defineProperty(l,`logLevel`,{enumerable:!0});let u=l,d=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t===void 0||t.format===void 0?`RGB`:t.format,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat===void 0||t.tensorFormat===void 0?`RGB`:t.tensorFormat,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,p(o,s)}else throw Error(`Can not access image data`)}else if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(p(e.data,s))}});else throw Error(`Input data provided is not supported - aborted tensor creation`);if(o!==void 0)return p(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},h=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new T({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},g=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new T({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},_=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new T({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},v=(e,t,n)=>new T({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]}),y=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),b=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),x=!1,S=()=>{if(!x){x=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=n!==void 0&&n.from;e&&(y.set(`int64`,BigInt64Array),b.set(BigInt64Array,`int64`)),t&&(y.set(`uint64`,BigUint64Array),b.set(BigUint64Array,`uint64`)),r?(y.set(`float16`,n),b.set(n,`float16`)):y.set(`float16`,Uint16Array)}},C=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new T(e.type,e.data,t);case`cpu-pinned`:return new T({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new T({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new T({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new T({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}};var T=class{constructor(e,t,n){S();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=y.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=y.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=b.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=C(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return m(e,t)}static fromTexture(e,t){return h(e,t)}static fromGpuBuffer(e,t){return g(e,t)}static fromMLTensor(e,t){return _(e,t)}static fromPinnedBuffer(e,t,n){return v(e,t,n)}toDataURL(e){return d(this,e)}toImageData(e){return f(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return w(this,e)}};let E=T,D=(e,t)=>{(l.trace===void 0?!l.wasm.trace:!l.trace)||console.timeStamp(`${e}::ORT::${t}`)},O=(e,t)=>{let n=Error().stack?.split(/\r\n|\r|\n/g)||[],r=!1;for(let i=0;i{(l.trace===void 0?!l.wasm.trace:!l.trace)||O(`BEGIN`,e)},A=e=>{(l.trace===void 0?!l.wasm.trace:!l.trace)||O(`END`,e)};var ee=class e{constructor(e){this.handler=e}async run(e,t,n){k();let r={},i={};if(typeof e!=`object`||!e||e instanceof E||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof E)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof E)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else i=t}}else if(t!==void 0)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(e[t]===void 0)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof E?s[e]=t:s[e]=new E(t.type,t.data,t.dims)}return A(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){k();let a,s={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)s=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)s=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,o=0,c=t.byteLength;if(typeof n==`object`&&n)s=n;else if(typeof n==`number`){if(o=n,!Number.isSafeInteger(o))throw RangeError(`'byteOffset' must be an integer.`);if(o<0||o>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-o,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||o+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-o}].`);if(typeof i==`object`&&i)s=i;else if(i!==void 0)throw TypeError(`'options' must be an object.`)}else if(r!==void 0)throw TypeError(`'byteLength' must be a number.`)}else if(n!==void 0)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,o,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[c,l]=await o(s),u=await c.createInferenceSessionHandler(a,l);return A(),new e(u)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}};let te=ee;var ne={};t(ne,{InferenceSession:()=>te,TRACE:()=>D,TRACE_FUNC_BEGIN:()=>k,TRACE_FUNC_END:()=>A,Tensor:()=>E,env:()=>u,registerBackend:()=>i});var j={};t(j,{InferenceSession:()=>Ke,TRACE:()=>z,TRACE_FUNC_BEGIN:()=>He,TRACE_FUNC_END:()=>B,Tensor:()=>ze,default:()=>rf,env:()=>L,registerBackend:()=>P}); +/*! +* ONNX Runtime Web v1.22.0-dev.20250409-89f8206ba4 +* Copyright (c) Microsoft Corporation. All rights reserved. +* Licensed under the MIT License. +*/ +var re=Object.defineProperty,ie=Object.getOwnPropertyDescriptor,ae=Object.getOwnPropertyNames,oe=Object.prototype.hasOwnProperty,se=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),M=(e,t)=>()=>(e&&(t=e(e=0)),t),N=(e,t)=>{for(var n in t)re(e,n,{get:t[n],enumerable:!0})},ce=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of ae(t))!oe.call(e,i)&&i!==n&&re(e,i,{get:()=>t[i],enumerable:!(r=ie(t,i))||r.enumerable});return e},le=e=>ce(re({},`__esModule`,{value:!0}),e),ue,de,P,F,fe,I=M(()=>{"use strict";ue=new Map,de=[],P=(e,t,n)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let r=ue.get(e);if(r===void 0)ue.set(e,{backend:t,priority:n});else{if(r.priority>n)return;if(r.priority===n&&r.backend!==t)throw Error(`cannot register backend "${e}" using priority ${n}`)}if(n>=0){let t=de.indexOf(e);t!==-1&&de.splice(t,1);for(let t=0;t{let t=ue.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},fe=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),r=n.length===0?de:n,i,a=[],o=new Set;for(let e of r){let t=await F(e);typeof t==`string`?a.push({name:e,err:t}):(i||=t,i===t&&o.add(e))}if(!i)throw Error(`no available backend found. ERR: ${a.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of a)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let s=t.filter(e=>o.has(typeof e==`string`?e:e.name));return[i,new Proxy(e,{get:(e,t)=>t===`executionProviders`?s:Reflect.get(e,t)})]}}),pe=M(()=>{"use strict";I()}),me,he=M(()=>{"use strict";me=`1.22.0-dev.20250409-89f8206ba4`}),ge,_e,ve=M(()=>{"use strict";he(),ge=`warning`,_e={wasm:{},webgl:{},webgpu:{},versions:{common:me},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);ge=e}},get logLevel(){return ge}},Object.defineProperty(_e,`logLevel`,{enumerable:!0})}),L,ye=M(()=>{"use strict";ve(),L=_e}),be,xe,Se=M(()=>{"use strict";be=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t!==void 0&&t.format!==void 0?t.format:`RGB`,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{"use strict";Re(),Ce=(e,t)=>{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat!==void 0&&t.tensorFormat!==void 0?t.tensorFormat:`RGB`,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,Ce(o,s)}else throw Error(`Can not access image data`)}else{if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(Ce(e.data,s))}});throw Error(`Input data provided is not supported - aborted tensor creation`)}if(o!==void 0)return Ce(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},Te=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new Le({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},Ee=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Le({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},De=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Le({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},Oe=(e,t,n)=>new Le({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]})}),Ae,je,Me,Ne,R=M(()=>{"use strict";Ae=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),je=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),Me=!1,Ne=()=>{if(!Me){Me=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=typeof n<`u`&&n.from;e&&(Ae.set(`int64`,BigInt64Array),je.set(BigInt64Array,`int64`)),t&&(Ae.set(`uint64`,BigUint64Array),je.set(BigUint64Array,`uint64`)),r?(Ae.set(`float16`,n),je.set(n,`float16`)):Ae.set(`float16`,Uint16Array)}}}),Pe,Fe,Ie=M(()=>{"use strict";Re(),Pe=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new Le(e.type,e.data,t);case`cpu-pinned`:return new Le({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new Le({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new Le({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new Le({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}}}),Le,Re=M(()=>{"use strict";Se(),ke(),R(),Ie(),Le=class{constructor(e,t,n){Ne();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=Ae.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=Ae.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=je.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=Pe(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return we(e,t)}static fromTexture(e,t){return Te(e,t)}static fromGpuBuffer(e,t){return Ee(e,t)}static fromMLTensor(e,t){return De(e,t)}static fromPinnedBuffer(e,t,n){return Oe(e,t,n)}toDataURL(e){return be(this,e)}toImageData(e){return xe(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return Fe(this,e)}}}),ze,Be=M(()=>{"use strict";Re(),ze=Le}),z,Ve,He,B,Ue=M(()=>{"use strict";ve(),z=(e,t)=>{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||console.timeStamp(`${e}::ORT::${t}`)},Ve=(e,t)=>{let n=Error().stack?.split(/\r\n|\r|\n/g)||[],r=!1;for(let i=0;i{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||Ve(`BEGIN`,e)},B=e=>{(typeof _e.trace>`u`?!_e.wasm.trace:!_e.trace)||Ve(`END`,e)}}),We,Ge=M(()=>{"use strict";I(),Be(),Ue(),We=class e{constructor(e){this.handler=e}async run(e,t,n){He();let r={},i={};if(typeof e!=`object`||!e||e instanceof ze||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof ze)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof ze)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else i=t}}else if(typeof t<`u`)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(typeof e[t]>`u`)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof ze?s[e]=t:s[e]=new ze(t.type,t.data,t.dims)}return B(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){He();let a,o={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,s=0,c=t.byteLength;if(typeof n==`object`&&n)o=n;else if(typeof n==`number`){if(s=n,!Number.isSafeInteger(s))throw RangeError(`'byteOffset' must be an integer.`);if(s<0||s>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-s,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||s+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-s}].`);if(typeof i==`object`&&i)o=i;else if(typeof i<`u`)throw TypeError(`'options' must be an object.`)}else if(typeof r<`u`)throw TypeError(`'byteLength' must be a number.`)}else if(typeof n<`u`)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,s,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[s,c]=await fe(o),l=await s.createInferenceSessionHandler(a,c);return B(),new e(l)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}}}),Ke,qe=M(()=>{"use strict";Ge(),Ke=We}),Je=M(()=>{"use strict";}),Ye=M(()=>{"use strict";}),Xe=M(()=>{"use strict";}),Ze=M(()=>{"use strict";}),Qe={};N(Qe,{InferenceSession:()=>Ke,TRACE:()=>z,TRACE_FUNC_BEGIN:()=>He,TRACE_FUNC_END:()=>B,Tensor:()=>ze,env:()=>L,registerBackend:()=>P});var $e=M(()=>{"use strict";pe(),ye(),qe(),Be(),Je(),Ye(),Ue(),Xe(),Ze()}),et=M(()=>{"use strict";}),tt={};N(tt,{default:()=>it});var nt,rt,it,at=M(()=>{"use strict";Dd(),It(),Et(),nt=`ort-wasm-proxy-worker`,rt=globalThis.self?.name===nt,rt&&(self.onmessage=e=>{let{type:t,in:n}=e.data;try{switch(t){case`init-wasm`:Pt(n.wasm).then(()=>{hd(n).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})})},e=>{postMessage({type:t,err:e})});break;case`init-ep`:{let{epName:e,env:r}=n;gd(r,e).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})});break}case`copy-from`:{let{buffer:e}=n,r=bd(e);postMessage({type:t,out:r});break}case`create`:{let{model:e,options:r}=n;xd(e,r).then(e=>{postMessage({type:t,out:e})},e=>{postMessage({type:t,err:e})});break}case`release`:Sd(n),postMessage({type:t});break;case`run`:{let{sessionId:e,inputIndices:r,inputs:i,outputIndices:a,options:o}=n;wd(e,r,i,a,Array(a.length).fill(null),o).then(e=>{e.some(e=>e[3]!==`cpu`)?postMessage({type:t,err:`Proxy does not support non-cpu tensor location.`}):postMessage({type:t,out:e},Ed([...i,...e]))},e=>{postMessage({type:t,err:e})});break}case`end-profiling`:Td(n),postMessage({type:t});break;default:}}catch(e){postMessage({type:t,err:e})}}),it=rt?null:e=>new Worker(e??ht,{type:`module`,name:nt})}),ot={};N(ot,{default:()=>lt});var st,ct,lt,ut,dt=M(()=>{"use strict";ct=(st=self.location.href,async function(e={}){var t,n,r=e,i=new Promise((e,r)=>{t=e,n=r}),a=typeof window==`object`,o=typeof WorkerGlobalScope<`u`,s=o&&self.name?.startsWith(`em-pthread`);r.mountExternalData=(e,t)=>{e.startsWith(`./`)&&(e=e.substring(2)),(r.Eb||=new Map).set(e,t)},r.unmountExternalData=()=>{delete r.Eb};var c=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,pc:!0}).buffer.constructor;let l=e=>async(...t)=>{try{if(r.Fb)throw Error(`Session already started`);let n=r.Fb={dc:t[0],errors:[]},i=await e(...t);if(r.Fb!==n)throw Error(`Session mismatch`);r.Jb?.flush();let a=n.errors;if(0e),0{if(e===`webgpu`){[r.Jb,r.Ub,r.Yb,r.Kb,r.Xb,r.jb,r.Zb,r.ac,r.Vb,r.Wb,r.$b]=t;let e=r.Jb;r.jsepRegisterBuffer=(t,n,r,i)=>e.registerBuffer(t,n,r,i),r.jsepGetBuffer=t=>e.getBuffer(t),r.jsepCreateDownloader=(t,n,r)=>e.createDownloader(t,n,r),r.jsepOnCreateSession=t=>{e.onCreateSession(t)},r.jsepOnReleaseSession=t=>{e.onReleaseSession(t)},r.jsepOnRunStart=t=>e.onRunStart(t),r.bc=(t,n)=>{e.upload(t,n)}}else if(e===`webnn`){let e=t[0];[r.nc,r.Nb,r.webnnEnsureTensor,r.Ob,r.webnnDownloadTensor]=t.slice(1),r.webnnReleaseTensorId=r.Nb,r.webnnUploadTensor=r.Ob,r.webnnOnRunStart=t=>e.onRunStart(t),r.webnnOnRunEnd=e.onRunEnd.bind(e),r.webnnRegisterMLContext=(t,n)=>{e.registerMLContext(t,n)},r.webnnOnReleaseSession=t=>{e.onReleaseSession(t)},r.webnnCreateMLTensorDownloader=(t,n)=>e.createMLTensorDownloader(t,n),r.webnnRegisterMLTensor=(t,n,r,i)=>e.registerMLTensor(t,n,r,i),r.webnnCreateMLContext=t=>e.createMLContext(t),r.webnnRegisterMLConstant=(t,n,i,a,o,s)=>e.registerMLConstant(t,n,i,a,o,r.Eb,s),r.webnnRegisterGraphInput=e.registerGraphInput.bind(e),r.webnnIsGraphInput=e.isGraphInput.bind(e),r.webnnCreateTemporaryTensor=e.createTemporaryTensor.bind(e),r.webnnIsInt64Supported=e.isInt64Supported.bind(e)}};let u=()=>{let e=(e,t,n)=>(...r)=>{let i=tn,a=t?.();r=e(...r);let o=t?.();return a!==o&&(e=o,n(a),t=n=null),tn==i?r:new Promise((e,t)=>{sn={resolve:e,reject:t}})};(()=>{for(let t of[`_OrtAppendExecutionProvider`,`_OrtCreateSession`,`_OrtRun`,`_OrtRunWithBinding`,`_OrtBindInput`])r[t]=e(r[t],()=>r[t],e=>r[t]=e)})(),l!==void 0&&(r._OrtRun=l(r._OrtRun),r._OrtRunWithBinding=l(r._OrtRunWithBinding)),u=void 0};r.asyncInit=()=>{u?.()};var d,f,p=Object.assign({},r),m=(e,t)=>{throw t},h=``;(a||o)&&(o?h=self.location.href:typeof document<`u`&&document.currentScript&&(h=document.currentScript.src),st&&(h=st),h=h.startsWith(`blob:`)?``:h.slice(0,h.replace(/[?#].*/,``).lastIndexOf(`/`)+1),o&&(f=e=>{var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),d=async e=>{if(re(e))return new Promise((t,n)=>{var r=new XMLHttpRequest;r.open(`GET`,e,!0),r.responseType=`arraybuffer`,r.onload=()=>{r.status==200||r.status==0&&r.response?t(r.response):n(r.status)},r.onerror=n,r.send(null)});var t=await fetch(e,{credentials:`same-origin`});if(t.ok)return t.arrayBuffer();throw Error(t.status+` : `+t.url)});var g=console.log.bind(console),_=console.error.bind(console),v=g,y=_;Object.assign(r,p),p=null;var b,x,S,C,w,T,E,D,O,k,A,ee,te,ne=r.wasmBinary,j=!1,re=e=>e.startsWith(`file://`);function ie(){return b.buffer!=C.buffer&&F(),C}function ae(){return b.buffer!=C.buffer&&F(),w}function oe(){return b.buffer!=C.buffer&&F(),T}function se(){return b.buffer!=C.buffer&&F(),E}function M(){return b.buffer!=C.buffer&&F(),D}function N(){return b.buffer!=C.buffer&&F(),O}function ce(){return b.buffer!=C.buffer&&F(),k}function le(){return b.buffer!=C.buffer&&F(),te}if(s){let e=function(t){try{var n=t.data,i=n.Bb;if(i===`load`){let t=[];self.onmessage=e=>t.push(e),self.startWorker=()=>{postMessage({Bb:`loaded`});for(let n of t)e(n);self.onmessage=e};for(let e of n.Rb)r[e]&&!r[e].proxy||(r[e]=(...t)=>{postMessage({Bb:`callHandler`,Qb:e,args:t})},e==`print`&&(v=r[e]),e==`printErr`&&(y=r[e]));b=n.kc,F(),de(n.lc)}else if(i===`run`){Ie(n.Ab),yr(n.Ab,0,0,1,0,0),R(),Vt(n.Ab),P||(hr(),P=!0);try{Le(n.fc,n.Hb)}catch(e){if(e!=`unwind`)throw e}}else n.target!==`setimmediate`&&(i===`checkMailbox`?P&&Ht():i&&(y(`worker: received unknown command ${i}`),y(n)))}catch(e){throw br(),e}};var ue=e,de,P=!1;y=function(...e){e=e.join(` `),console.error(e)},self.alert=function(...e){postMessage({Bb:`alert`,text:e.join(` `),ic:gr()})},self.onunhandledrejection=e=>{throw e.reason||e},self.onmessage=e}function F(){var e=b.buffer;r.HEAP8=C=new Int8Array(e),r.HEAP16=T=new Int16Array(e),r.HEAPU8=w=new Uint8Array(e),r.HEAPU16=E=new Uint16Array(e),r.HEAP32=D=new Int32Array(e),r.HEAPU32=O=new Uint32Array(e),r.HEAPF32=k=new Float32Array(e),r.HEAPF64=te=new Float64Array(e),r.HEAP64=A=new BigInt64Array(e),r.HEAPU64=ee=new BigUint64Array(e)}function fe(){s?startWorker(r):X.Ca()}s||(b=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),F());var I,pe=0,me=null;function he(){if(--pe==0&&me){var e=me;me=null,e()}}function ge(e){throw y(e=`Aborted(`+e+`)`),j=!0,e=new WebAssembly.RuntimeError(e+`. Build with -sASSERTIONS for more info.`),n(e),e}function _e(){return{a:{L:ye,Aa:L,b:ze,$:z,A:Ue,pa:We,X:qe,Z:Je,qa:Ye,na:Xe,ga:Ze,ma:Qe,J:$e,Y:et,V:tt,oa:nt,W:rt,va:ot,E:mt,Q:gt,O:wt,D:Et,u:Dt,r:Ot,P:kt,z:Lt,R:Rt,ja:zt,T:Ut,aa:Gt,M:Kt,F:qt,ia:Vt,sa:Jt,t:Zt,Ba:Qt,w:un,o:fn,l:mn,c:yt,n:U,j:yn,v:W,p:bn,f:xn,s:Sn,m:Cn,e:wn,k:Tn,i:En,g:Dn,d:On,da:kn,ea:Nn,fa:Pn,ba:Fn,ca:In,N:zn,xa:Bn,ua:Un,h:Kn,C:qn,G:Jn,ta:Vn,x:Yn,ra:Xn,U:Zn,q:Rn,y:Qn,K:$n,S:er,za:rr,ya:ir,ka:J,la:or,_:Oe,B:sr,I:cr,ha:lr,H:ur,a:b,wa:Ee}}}var ve={829644:(e,t,n,i,a)=>{if(r===void 0||!r.Eb)return 1;if((e=B(Number(e>>>0))).startsWith(`./`)&&(e=e.substring(2)),!(e=r.Eb.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:ae().set(o,i>>>0);break;case 1:r.mc?r.mc(i,o):r.bc(i,o);break;default:return 4}return 0}catch{return 4}},830468:(e,t,n)=>{r.Ob(e,ae().subarray(t>>>0,t+n>>>0))},830532:()=>r.nc(),830574:e=>{r.Nb(e)},830611:()=>{r.Vb()},830642:()=>{r.Wb()},830671:()=>{r.$b()},830696:e=>r.Ub(e),830729:e=>r.Yb(e),830761:(e,t,n)=>{r.Kb(Number(e),Number(t),Number(n),!0)},830824:(e,t,n)=>{r.Kb(Number(e),Number(t),Number(n))},830881:()=>typeof wasmOffsetConverter<`u`,830938:e=>{r.jb(`Abs`,e,void 0)},830989:e=>{r.jb(`Neg`,e,void 0)},831040:e=>{r.jb(`Floor`,e,void 0)},831093:e=>{r.jb(`Ceil`,e,void 0)},831145:e=>{r.jb(`Reciprocal`,e,void 0)},831203:e=>{r.jb(`Sqrt`,e,void 0)},831255:e=>{r.jb(`Exp`,e,void 0)},831306:e=>{r.jb(`Erf`,e,void 0)},831357:e=>{r.jb(`Sigmoid`,e,void 0)},831412:(e,t,n)=>{r.jb(`HardSigmoid`,e,{alpha:t,beta:n})},831491:e=>{r.jb(`Log`,e,void 0)},831542:e=>{r.jb(`Sin`,e,void 0)},831593:e=>{r.jb(`Cos`,e,void 0)},831644:e=>{r.jb(`Tan`,e,void 0)},831695:e=>{r.jb(`Asin`,e,void 0)},831747:e=>{r.jb(`Acos`,e,void 0)},831799:e=>{r.jb(`Atan`,e,void 0)},831851:e=>{r.jb(`Sinh`,e,void 0)},831903:e=>{r.jb(`Cosh`,e,void 0)},831955:e=>{r.jb(`Asinh`,e,void 0)},832008:e=>{r.jb(`Acosh`,e,void 0)},832061:e=>{r.jb(`Atanh`,e,void 0)},832114:e=>{r.jb(`Tanh`,e,void 0)},832166:e=>{r.jb(`Not`,e,void 0)},832217:(e,t,n)=>{r.jb(`Clip`,e,{min:t,max:n})},832286:e=>{r.jb(`Clip`,e,void 0)},832338:(e,t)=>{r.jb(`Elu`,e,{alpha:t})},832396:e=>{r.jb(`Gelu`,e,void 0)},832448:e=>{r.jb(`Relu`,e,void 0)},832500:(e,t)=>{r.jb(`LeakyRelu`,e,{alpha:t})},832564:(e,t)=>{r.jb(`ThresholdedRelu`,e,{alpha:t})},832634:(e,t)=>{r.jb(`Cast`,e,{to:t})},832692:e=>{r.jb(`Add`,e,void 0)},832743:e=>{r.jb(`Sub`,e,void 0)},832794:e=>{r.jb(`Mul`,e,void 0)},832845:e=>{r.jb(`Div`,e,void 0)},832896:e=>{r.jb(`Pow`,e,void 0)},832947:e=>{r.jb(`Equal`,e,void 0)},833e3:e=>{r.jb(`Greater`,e,void 0)},833055:e=>{r.jb(`GreaterOrEqual`,e,void 0)},833117:e=>{r.jb(`Less`,e,void 0)},833169:e=>{r.jb(`LessOrEqual`,e,void 0)},833228:(e,t,n,i,a)=>{r.jb(`ReduceMean`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833403:(e,t,n,i,a)=>{r.jb(`ReduceMax`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833577:(e,t,n,i,a)=>{r.jb(`ReduceMin`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833751:(e,t,n,i,a)=>{r.jb(`ReduceProd`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},833926:(e,t,n,i,a)=>{r.jb(`ReduceSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834100:(e,t,n,i,a)=>{r.jb(`ReduceL1`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834273:(e,t,n,i,a)=>{r.jb(`ReduceL2`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834446:(e,t,n,i,a)=>{r.jb(`ReduceLogSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834623:(e,t,n,i,a)=>{r.jb(`ReduceSumSquare`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834803:(e,t,n,i,a)=>{r.jb(`ReduceLogSumExp`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},834983:e=>{r.jb(`Where`,e,void 0)},835036:(e,t,n)=>{r.jb(`Transpose`,e,{perm:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[]})},835160:(e,t,n,i)=>{r.jb(`DepthToSpace`,e,{blocksize:t,mode:B(n),format:i?`NHWC`:`NCHW`})},835293:(e,t,n,i)=>{r.jb(`DepthToSpace`,e,{blocksize:t,mode:B(n),format:i?`NHWC`:`NCHW`})},835426:(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h)=>{r.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:i,kernelShape:[a],pads:[o,s],strides:[c],wIsConst:()=>!!ie()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:B(h)})},835859:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:i,kernelShape:Array.from(M().subarray(Number(a)>>>0,2+(Number(a)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!ie()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:B(m)})},836520:(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h)=>{r.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:i,kernelShape:[a],pads:[o,s],strides:[c],wIsConst:()=>!!ie()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:B(h)})},836953:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:i,kernelShape:Array.from(M().subarray(Number(a)>>>0,2+(Number(a)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!ie()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:B(m)})},837614:(e,t)=>{r.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},837705:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838184:(e,t)=>{r.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},838275:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838754:(e,t)=>{r.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},838841:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839316:(e,t)=>{r.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},839403:(e,t,n,i,a,o,s,c,l,u,d,f,p,m)=>{r.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:i,storage_order:a,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839878:(e,t,n,i,a)=>{r.jb(`Gemm`,e,{alpha:t,beta:n,transA:i,transB:a})},839982:e=>{r.jb(`MatMul`,e,void 0)},840036:(e,t,n,i)=>{r.jb(`ArgMax`,e,{keepDims:!!t,selectLastIndex:!!n,axis:i})},840144:(e,t,n,i)=>{r.jb(`ArgMin`,e,{keepDims:!!t,selectLastIndex:!!n,axis:i})},840252:(e,t)=>{r.jb(`Softmax`,e,{axis:t})},840315:(e,t)=>{r.jb(`Concat`,e,{axis:t})},840375:(e,t,n,i,a)=>{r.jb(`Split`,e,{axis:t,numOutputs:n,splitSizes:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},840531:e=>{r.jb(`Expand`,e,void 0)},840585:(e,t)=>{r.jb(`Gather`,e,{axis:Number(t)})},840656:(e,t)=>{r.jb(`GatherElements`,e,{axis:Number(t)})},840735:(e,t)=>{r.jb(`GatherND`,e,{batch_dims:Number(t)})},840814:(e,t,n,i,a,o,s,c,l,u,d)=>{r.jb(`Resize`,e,{antialias:t,axes:n?Array.from(M().subarray(Number(n)>>>0,Number(i)>>>0)):[],coordinateTransformMode:B(a),cubicCoeffA:o,excludeOutside:s,extrapolationValue:c,keepAspectRatioPolicy:B(l),mode:B(u),nearestMode:B(d)})},841176:(e,t,n,i,a,o,s)=>{r.jb(`Slice`,e,{starts:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[],ends:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[],axes:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[]})},841440:e=>{r.jb(`Tile`,e,void 0)},841492:(e,t,n)=>{r.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841606:(e,t,n)=>{r.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841720:e=>{r.jb(`Range`,e,void 0)},841773:(e,t)=>{r.jb(`Einsum`,e,{equation:B(t)})},841854:(e,t,n,i,a)=>{r.jb(`Pad`,e,{mode:t,value:n,pads:i?Array.from(M().subarray(Number(i)>>>0,Number(a)>>>0)):[]})},841997:(e,t,n,i,a,o)=>{r.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!a,trainingMode:!!i,format:o?`NHWC`:`NCHW`})},842166:(e,t,n,i,a,o)=>{r.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!a,trainingMode:!!i,format:o?`NHWC`:`NCHW`})},842335:(e,t,n)=>{r.jb(`CumSum`,e,{exclusive:Number(t),reverse:Number(n)})},842432:(e,t,n)=>{r.jb(`DequantizeLinear`,e,{axis:t,blockSize:n})},842522:(e,t,n,i,a)=>{r.jb(`GridSample`,e,{align_corners:t,mode:B(n),padding_mode:B(i),format:a?`NHWC`:`NCHW`})},842692:(e,t,n,i,a)=>{r.jb(`GridSample`,e,{align_corners:t,mode:B(n),padding_mode:B(i),format:a?`NHWC`:`NCHW`})},842862:(e,t)=>{r.jb(`ScatterND`,e,{reduction:B(t)})},842947:(e,t,n,i,a,o,s,c,l)=>{r.jb(`Attention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:i,scale:a,doRotary:o,qkvHiddenSizes:s?Array.from(M().subarray(Number(c)>>>0,Number(c)+s>>>0)):[],pastPresentShareBuffer:!!l})},843219:e=>{r.jb(`BiasAdd`,e,void 0)},843274:e=>{r.jb(`BiasSplitGelu`,e,void 0)},843335:e=>{r.jb(`FastGelu`,e,void 0)},843391:(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h,g)=>{r.jb(`Conv`,e,{format:f?`NHWC`:`NCHW`,auto_pad:t,dilations:n?Array.from(M().subarray(Number(n)>>>0,Number(i)>>>0)):[],group:a,kernel_shape:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],pads:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],strides:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],w_is_const:()=>!!ie()[Number(p)>>>0],activation:B(m),activation_params:h?Array.from(ce().subarray(Number(h)>>>0,Number(g)>>>0)):[]})},843975:e=>{r.jb(`Gelu`,e,void 0)},844027:(e,t,n,i,a,o,s,c,l)=>{r.jb(`GroupQueryAttention`,e,{numHeads:t,kvNumHeads:n,scale:i,softcap:a,doRotary:o,rotaryInterleaved:s,smoothSoftmax:c,localWindowSize:l})},844244:(e,t,n,i)=>{r.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!i})},844355:(e,t,n,i)=>{r.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!i})},844466:(e,t,n,i,a,o)=>{r.jb(`MatMulNBits`,e,{k:t,n,accuracyLevel:i,bits:a,blockSize:o})},844593:(e,t,n,i,a,o)=>{r.jb(`MultiHeadAttention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:i,scale:a,doRotary:o})},844752:(e,t)=>{r.jb(`QuickGelu`,e,{alpha:t})},844816:(e,t,n,i,a)=>{r.jb(`RotaryEmbedding`,e,{interleaved:!!t,numHeads:n,rotaryEmbeddingDim:i,scale:a})},844955:(e,t,n)=>{r.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845057:(e,t,n)=>{r.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845159:(e,t,n,i)=>{r.jb(`GatherBlockQuantized`,e,{gatherAxis:t,quantizeAxis:n,blockSize:i})},845280:e=>{r.Zb(e)},845314:(e,t)=>r.ac(Number(e),Number(t),r.Fb.dc,r.Fb.errors)};function L(e,t,n){return ln(async()=>{await r.Xb(Number(e),Number(t),Number(n))})}function ye(){return typeof wasmOffsetConverter<`u`}class be{name=`ExitStatus`;constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var xe=e=>{e.terminate(),e.onmessage=()=>{}},Se=[],Ce=e=>{ke.length==0&&(Fe(),Pe(ke[0]));var t=ke.pop();if(!t)return 6;Ae.push(t),Me[e.Ab]=t,t.Ab=e.Ab;var n={Bb:`run`,fc:e.ec,Hb:e.Hb,Ab:e.Ab};return t.postMessage(n,e.Mb),0},we=0,Te=(e,t,...n)=>{for(var r=2*n.length,i=kr(),a=Or(8*r),o=a>>>3,s=0;s>>0]=c)}return e=xr(e,0,r,a,t),Dr(i),e};function Ee(e){if(s)return Te(0,1,e);if(S=e,!(0{if(S=e,s)throw De(e),`unwind`;Ee(e)},ke=[],Ae=[],je=[],Me={},Ne=e=>{var t=e.Ab;delete Me[t],ke.push(e),Ae.splice(Ae.indexOf(e),1),e.Ab=0,Sr(t)};function R(){je.forEach(e=>e())}var Pe=e=>new Promise(t=>{e.onmessage=n=>{var i=(n=n.data).Bb;if(n.Gb&&n.Gb!=gr()){var a=Me[n.Gb];a?a.postMessage(n,n.Mb):y(`Internal error! Worker sent a message "${i}" to target pthread ${n.Gb}, but that thread no longer exists!`)}else i===`checkMailbox`?Ht():i===`spawnThread`?Ce(n):i===`cleanupThread`?Ne(Me[n.hc]):i===`loaded`?(e.loaded=!0,t(e)):i===`alert`?alert(`Thread ${n.ic}: ${n.text}`):n.target===`setimmediate`?e.postMessage(n):i===`callHandler`?r[n.Qb](...n.args):i&&y(`worker sent an unknown command ${i}`)},e.onerror=e=>{throw y(`worker sent an error! ${e.filename}:${e.lineno}: ${e.message}`),e};var n,i=[];for(n of[])r.propertyIsEnumerable(n)&&i.push(n);e.postMessage({Bb:`load`,Rb:i,kc:b,lc:x})});function Fe(){var e=new Worker((()=>{let e=URL;return self.location.href>`file:`&&self.location.href<`file;`?new e(`ort.bundle.min.mjs`,self.location.href):new URL(self.location.href)})(),{type:`module`,workerData:`em-pthread`,name:`em-pthread`});ke.push(e)}var Ie=e=>{F();var t=N()[e+52>>>2>>>0];e=N()[e+56>>>2>>>0],Er(t,t-e),Dr(t)},Le=(e,t)=>{we=0,e=Ar(e,t),0>>=0);throw t>>>=0,n>>>=0,N()[r.Ib+16>>>2>>>0]=0,N()[r.Ib+4>>>2>>>0]=t,N()[r.Ib+8>>>2>>>0]=n,e}function Be(e,t,n,r){return s?Te(2,1,e,t,n,r):z(e,t,n,r)}function z(e,t,n,r){if(e>>>=0,n>>>=0,r>>>=0,c===void 0)return 6;var i=[];return s&&i.length===0?Be(e,t>>>=0,n,r):(e={ec:n,Ab:e,Hb:r,Mb:i},s?(e.Bb=`spawnThread`,postMessage(e,i),0):Ce(e))}var Ve=typeof TextDecoder<`u`?new TextDecoder:void 0,He=(e,t=0,n=NaN)=>{var r=(t>>>=0)+n;for(n=t;e[n]&&!(n>=r);)++n;if(16(i=(240&i)==224?(15&i)<<12|a<<6|o:(7&i)<<18|a<<12|o<<6|63&e[t++])?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else r+=String.fromCharCode(i)}return r},B=(e,t)=>(e>>>=0)?He(ae(),e,t):``;function Ue(e,t,n){return s?Te(3,1,e,t,n):0}function We(e,t){if(s)return Te(4,1,e,t)}var Ge=e=>{for(var t=0,n=0;n=r?t++:2047>=r?t+=2:55296<=r&&57343>=r?(t+=4,++n):t+=3}return t},Ke=(e,t,n)=>{var r=ae();if(t>>>=0,0=o&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++a)),127>=o){if(t>=n)break;r[t++>>>0]=o}else{if(2047>=o){if(t+1>=n)break;r[t++>>>0]=192|o>>6}else{if(65535>=o){if(t+2>=n)break;r[t++>>>0]=224|o>>12}else{if(t+3>=n)break;r[t++>>>0]=240|o>>18,r[t++>>>0]=128|o>>12&63}r[t++>>>0]=128|o>>6&63}r[t++>>>0]=128|63&o}}r[t>>>0]=0,e=t-i}else e=0;return e};function qe(e,t){if(s)return Te(5,1,e,t)}function Je(e,t,n){if(s)return Te(6,1,e,t,n)}function Ye(e,t,n){return s?Te(7,1,e,t,n):0}function Xe(e,t){if(s)return Te(8,1,e,t)}function Ze(e,t,n){if(s)return Te(9,1,e,t,n)}function Qe(e,t,n,r){if(s)return Te(10,1,e,t,n,r)}function $e(e,t,n,r){if(s)return Te(11,1,e,t,n,r)}function et(e,t,n,r){if(s)return Te(12,1,e,t,n,r)}function tt(e){if(s)return Te(13,1,e)}function nt(e,t){if(s)return Te(14,1,e,t)}function rt(e,t,n){if(s)return Te(15,1,e,t,n)}var it,at,ot=()=>ge(``),ct=e=>{for(var t=``;ae()[e>>>0];)t+=it[ae()[e++>>>0]];return t},lt={},ut={},dt={};function ft(e,t,n={}){return function(e,t,n={}){var r=t.name;if(!e)throw new at(`type "${r}" must have a positive integer typeid pointer`);if(ut.hasOwnProperty(e)){if(n.Sb)return;throw new at(`Cannot register type '${r}' twice`)}ut[e]=t,delete dt[e],lt.hasOwnProperty(e)&&(t=lt[e],delete lt[e],t.forEach(e=>e()))}(e,t,n)}var pt=(e,t,n)=>{switch(t){case 1:return n?e=>ie()[e>>>0]:e=>ae()[e>>>0];case 2:return n?e=>oe()[e>>>1>>>0]:e=>se()[e>>>1>>>0];case 4:return n?e=>M()[e>>>2>>>0]:e=>N()[e>>>2>>>0];case 8:return n?e=>A[e>>>3]:e=>ee[e>>>3];default:throw TypeError(`invalid integer width (${t}): ${e}`)}};function mt(e,t,n){n>>>=0,ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:e=>e,toWireType:function(e,t){if(typeof t!=`bigint`&&typeof t!=`number`)throw t=t===null?`null`:(e=typeof t)==`object`||e===`array`||e===`function`?t.toString():``+t,TypeError(`Cannot convert "${t}" to ${this.name}`);return typeof t==`number`&&(t=BigInt(t)),t},Cb:ht,readValueFromPointer:pt(t,n,t.indexOf(`u`)==-1),Db:null})}var ht=8;function gt(e,t,n,r){ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?n:r},Cb:ht,readValueFromPointer:function(e){return this.fromWireType(ae()[e>>>0])},Db:null})}var _t=[],vt=[];function yt(e){9<(e>>>=0)&&--vt[e+1]==0&&(vt[e]=void 0,_t.push(e))}var bt=e=>{if(!e)throw new at(`Cannot use deleted val. handle = `+e);return vt[e]},xt=e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let t=_t.pop()||vt.length;return vt[t]=e,vt[t+1]=1,t}};function St(e){return this.fromWireType(N()[e>>>2>>>0])}var Ct={name:`emscripten::val`,fromWireType:e=>{var t=bt(e);return yt(e),t},toWireType:(e,t)=>xt(t),Cb:ht,readValueFromPointer:St,Db:null};function wt(e){return ft(e>>>0,Ct)}var Tt=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(ce()[e>>>2>>>0])};case 8:return function(e){return this.fromWireType(le()[e>>>3>>>0])};default:throw TypeError(`invalid float width (${t}): ${e}`)}};function Et(e,t,n){n>>>=0,ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:e=>e,toWireType:(e,t)=>t,Cb:ht,readValueFromPointer:Tt(t,n),Db:null})}function Dt(e,t,n,r,i){if(e>>>=0,n>>>=0,t=ct(t>>>0),i===-1&&(i=4294967295),i=e=>e,r===0){var a=32-8*n;i=e=>e<>>a}var o=t.includes(`unsigned`)?function(e,t){return t>>>0}:function(e,t){return t};ft(e,{name:t,fromWireType:i,toWireType:o,Cb:ht,readValueFromPointer:pt(t,n,r!==0),Db:null})}function Ot(e,t,n){function r(e){var t=N()[e>>>2>>>0];return e=N()[e+4>>>2>>>0],new i(ie().buffer,e,t)}var i=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][t];ft(e>>>=0,{name:n=ct(n>>>0),fromWireType:r,Cb:ht,readValueFromPointer:r},{Sb:!0})}function kt(e,t){ft(e>>>=0,{name:t=ct(t>>>0),fromWireType:function(e){for(var t,n=N()[e>>>2>>>0],r=e+4,i=r,a=0;a<=n;++a){var o=r+a;a!=n&&ae()[o>>>0]!=0||(i=B(i,o-i),t===void 0?t=i:(t+=`\0`,t+=i),i=o+1)}return _r(e),t},toWireType:function(e,t){t instanceof ArrayBuffer&&(t=new Uint8Array(t));var n=typeof t==`string`;if(!(n||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array))throw new at(`Cannot pass non-string to std::string`);var r=n?Ge(t):t.length,i=vr(4+r+1),a=i+4;if(N()[i>>>2>>>0]=r,n)Ke(t,a,r+1);else if(n)for(n=0;n>>0]=o}else for(n=0;n>>0]=t[n];return e!==null&&e.push(_r,i),i},Cb:ht,readValueFromPointer:St,Db(e){_r(e)}})}var At=typeof TextDecoder<`u`?new TextDecoder(`utf-16le`):void 0,jt=(e,t)=>{for(var n=e>>1,r=n+t/2;!(n>=r)&&se()[n>>>0];)++n;if(32<(n<<=1)-e&&At)return At.decode(ae().slice(e,n));for(n=``,r=0;!(r>=t/2);++r){var i=oe()[e+2*r>>>1>>>0];if(i==0)break;n+=String.fromCharCode(i)}return n},Mt=(e,t,n)=>{if(n??=2147483647,2>n)return 0;var r=t;n=(n-=2)<2*e.length?n/2:e.length;for(var i=0;i>>1>>>0]=a,t+=2}return oe()[t>>>1>>>0]=0,t-r},Nt=e=>2*e.length,Pt=(e,t)=>{for(var n=0,r=``;!(n>=t/4);){var i=M()[e+4*n>>>2>>>0];if(i==0)break;++n,65536<=i?(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i)):r+=String.fromCharCode(i)}return r},Ft=(e,t,n)=>{if(t>>>=0,n??=2147483647,4>n)return 0;var r=t;n=r+n-4;for(var i=0;i=a&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),M()[t>>>2>>>0]=a,(t+=4)+4>n)break}return M()[t>>>2>>>0]=0,t-r},It=e=>{for(var t=0,n=0;n=r&&++n,t+=4}return t};function Lt(e,t,n){if(e>>>=0,t>>>=0,n=ct(n>>>=0),t===2)var r=jt,i=Mt,a=Nt,o=e=>se()[e>>>1>>>0];else t===4&&(r=Pt,i=Ft,a=It,o=e=>N()[e>>>2>>>0]);ft(e,{name:n,fromWireType:e=>{for(var n,i=N()[e>>>2>>>0],a=e+4,s=0;s<=i;++s){var c=e+4+s*t;s!=i&&o(c)!=0||(a=r(a,c-a),n===void 0?n=a:(n+=`\0`,n+=a),a=c+t)}return _r(e),n},toWireType:(e,r)=>{if(typeof r!=`string`)throw new at(`Cannot pass non-string to C++ string type ${n}`);var o=a(r),s=vr(4+o+t);return N()[s>>>2>>>0]=o/t,i(r,s+4,o+t),e!==null&&e.push(_r,s),s},Cb:ht,readValueFromPointer:St,Db(e){_r(e)}})}function Rt(e,t){ft(e>>>=0,{Tb:!0,name:t=ct(t>>>0),Cb:0,fromWireType:()=>{},toWireType:()=>{}})}function zt(e){yr(e>>>0,!o,1,!a,131072,!1),R()}var Bt=e=>{if(!j)try{if(e(),!(0>>=0,typeof Atomics.jc==`function`&&(Atomics.jc(M(),e>>>2,e).value.then(Ht),e+=128,Atomics.store(M(),e>>>2,1))}var Ht=()=>{var e=gr();e&&(Vt(e),Bt(Tr))};function Ut(e,t){(e>>>=0)==t>>>0?setTimeout(Ht):s?postMessage({Gb:e,Bb:`checkMailbox`}):(e=Me[e])&&e.postMessage({Bb:`checkMailbox`})}var Wt=[];function Gt(e,t,n,r,i){for(t>>>=0,r/=2,Wt.length=r,n=i>>>0>>>3,i=0;i>>0];return(t?ve[t]:pr[e])(...Wt)}var Kt=()=>{we=0};function qt(e){e>>>=0,s?postMessage({Bb:`cleanupThread`,hc:e}):Ne(Me[e])}function Jt(e){}var Yt=(e,t)=>{var n=ut[e];if(n===void 0)throw e=mr(e),n=ct(e),_r(e),new at(`${t} has unknown type ${n}`);return n},Xt=(e,t,n)=>{var r=[];return e=e.toWireType(r,n),r.length&&(N()[t>>>2>>>0]=xt(r)),e};function Zt(e,t,n){return t>>>=0,n>>>=0,e=bt(e>>>0),t=Yt(t,`emval::as`),Xt(t,n,e)}function Qt(e,t){return t>>>=0,e=bt(e>>>0),(t=Yt(t,`emval::as`)).toWireType(null,e)}var $t=e=>{try{e()}catch(e){ge(e)}},en=0,tn=null,nn=0,rn=[],V={},an={},on=0,sn=null,cn=[];function ln(e){return function(e){if(!j){if(en===0){var t=!1,n=!1;e((e=0)=>{if(!j&&(nn=e,t=!0,n)){en=2,$t(()=>Nr(tn)),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.resume(),e=!1;try{var r=function(){var e=M()[tn+8>>>2>>>0];return e=X[an[e]],--we,e()}()}catch(t){r=t,e=!0}var i=!1;if(!tn){var a=sn;a&&(sn=null,(e?a.reject:a.resolve)(r),i=!0)}if(e&&!i)throw r}}),n=!0,t||(en=1,tn=function(){var e=vr(65548),t=e+12;N()[e>>>2>>>0]=t,N()[e+4>>>2>>>0]=t+65536,t=rn[0];var n=V[t];return n===void 0&&(n=on++,V[t]=n,an[n]=t),t=n,M()[e+8>>>2>>>0]=t,e}(),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.pause(),$t(()=>jr(tn)))}else en===2?(en=0,$t(Pr),_r(tn),tn=null,cn.forEach(Bt)):ge(`invalid state: ${en}`);return nn}}(t=>{e().then(t)})}function un(e){return e>>>=0,ln(async()=>{var t=await bt(e);return xt(t)})}var dn=[];function fn(e,t,n,r){return n>>>=0,r>>>=0,(e=dn[e>>>0])(null,t=bt(t>>>0),n,r)}var H={},pn=e=>{var t=H[e];return t===void 0?ct(e):t};function mn(e,t,n,r,i){return n>>>=0,r>>>=0,i>>>=0,(e=dn[e>>>0])(t=bt(t>>>0),t[n=pn(n)],r,i)}var hn=()=>typeof globalThis==`object`?globalThis:Function(`return this`)();function U(e){return(e>>>=0)==0?xt(hn()):(e=pn(e),xt(hn()[e]))}var gn=e=>{var t=dn.length;return dn.push(e),t},_n=(e,t)=>{for(var n=Array(e),r=0;r>>2>>>0],`parameter `+r);return n},vn=(e,t)=>Object.defineProperty(t,`name`,{value:e});function yn(e,t,n){var r=(t=_n(e,t>>>0)).shift();e--;var i=`return function (obj, func, destructorsRef, args) { +`,a=0,o=[];n===0&&o.push(`obj`);for(var s=[`retType`],c=[r],l=0;le.name).join(`, `)}) => ${r.name}>`,gn(vn(n,e))}function W(e){return e=pn(e>>>0),xt(r[e])}function bn(e,t){return t>>>=0,e=bt(e>>>0),t=bt(t),xt(e[t])}function xn(e){9<(e>>>=0)&&(vt[e+1]+=1)}function Sn(){return xt([])}function Cn(e){e=bt(e>>>0);for(var t=Array(e.length),n=0;n>>0))}function Tn(){return xt({})}function En(e){for(var t=bt(e>>>=0);t.length;){var n=t.pop();t.pop()(n)}yt(e)}function Dn(e,t,n){t>>>=0,n>>>=0,e=bt(e>>>0),t=bt(t),n=bt(n),e[t]=n}function On(e,t){return t>>>=0,e=(e=Yt(e>>>0,`_emval_take_value`)).readValueFromPointer(t),xt(e)}function kn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getUTCSeconds(),M()[t+4>>>2>>>0]=e.getUTCMinutes(),M()[t+8>>>2>>>0]=e.getUTCHours(),M()[t+12>>>2>>>0]=e.getUTCDate(),M()[t+16>>>2>>>0]=e.getUTCMonth(),M()[t+20>>>2>>>0]=e.getUTCFullYear()-1900,M()[t+24>>>2>>>0]=e.getUTCDay(),e=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,M()[t+28>>>2>>>0]=e}var An=e=>e%4==0&&(e%100!=0||e%400==0),jn=[0,31,60,91,121,152,182,213,244,274,305,335],Mn=[0,31,59,90,120,151,181,212,243,273,304,334];function Nn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getSeconds(),M()[t+4>>>2>>>0]=e.getMinutes(),M()[t+8>>>2>>>0]=e.getHours(),M()[t+12>>>2>>>0]=e.getDate(),M()[t+16>>>2>>>0]=e.getMonth(),M()[t+20>>>2>>>0]=e.getFullYear()-1900,M()[t+24>>>2>>>0]=e.getDay();var n=(An(e.getFullYear())?jn:Mn)[e.getMonth()]+e.getDate()-1|0;M()[t+28>>>2>>>0]=n,M()[t+36>>>2>>>0]=-60*e.getTimezoneOffset(),n=new Date(e.getFullYear(),6,1).getTimezoneOffset();var r=new Date(e.getFullYear(),0,1).getTimezoneOffset();e=0|(n!=r&&e.getTimezoneOffset()==Math.min(r,n)),M()[t+32>>>2>>>0]=e}function Pn(e){e>>>=0;var t=new Date(M()[e+20>>>2>>>0]+1900,M()[e+16>>>2>>>0],M()[e+12>>>2>>>0],M()[e+8>>>2>>>0],M()[e+4>>>2>>>0],M()[e>>>2>>>0],0),n=M()[e+32>>>2>>>0],r=t.getTimezoneOffset(),i=new Date(t.getFullYear(),6,1).getTimezoneOffset(),a=new Date(t.getFullYear(),0,1).getTimezoneOffset(),o=Math.min(a,i);return 0>n?M()[e+32>>>2>>>0]=+(i!=a&&o==r):0>>2>>>0]=t.getDay(),n=(An(t.getFullYear())?jn:Mn)[t.getMonth()]+t.getDate()-1|0,M()[e+28>>>2>>>0]=n,M()[e>>>2>>>0]=t.getSeconds(),M()[e+4>>>2>>>0]=t.getMinutes(),M()[e+8>>>2>>>0]=t.getHours(),M()[e+12>>>2>>>0]=t.getDate(),M()[e+16>>>2>>>0]=t.getMonth(),M()[e+20>>>2>>>0]=t.getYear(),e=t.getTime(),BigInt(isNaN(e)?-1:e/1e3)}function Fn(e,t,n,r,i,a,o){return s?Te(16,1,e,t,n,r,i,a,o):-52}function In(e,t,n,r,i,a){if(s)return Te(17,1,e,t,n,r,i,a)}var Ln={},Rn=()=>performance.timeOrigin+performance.now();function zn(e,t){if(s)return Te(18,1,e,t);if(Ln[e]&&(clearTimeout(Ln[e].id),delete Ln[e]),!t)return 0;var n=setTimeout(()=>{delete Ln[e],Bt(()=>wr(e,performance.timeOrigin+performance.now()))},t);return Ln[e]={id:n,qc:t},0}function Bn(e,t,n,r){e>>>=0,t>>>=0,n>>>=0,r>>>=0;var i=new Date().getFullYear(),a=new Date(i,0,1).getTimezoneOffset();i=new Date(i,6,1).getTimezoneOffset();var o=Math.max(a,i);N()[e>>>2>>>0]=60*o,M()[t>>>2>>>0]=+(a!=i),e=(t=e=>{var t=Math.abs(e);return`UTC${0<=e?`-`:`+`}${String(Math.floor(t/60)).padStart(2,`0`)}${String(t%60).padStart(2,`0`)}`})(a),t=t(i),iDate.now(),Hn=1;function Un(e,t,n){if(!(0<=e&&3>=e))return 28;if(e===0)e=Date.now();else{if(!Hn)return 52;e=performance.timeOrigin+performance.now()}return A[n>>>0>>>3]=BigInt(Math.round(1e6*e)),0}var Wn=[],Gn=(e,t)=>{Wn.length=0;for(var n;n=ae()[e++>>>0];){var r=n!=105;t+=(r&=n!=112)&&t%8?4:0,Wn.push(n==112?N()[t>>>2>>>0]:n==106?A[t>>>3]:n==105?M()[t>>>2>>>0]:le()[t>>>3>>>0]),t+=r?8:4}return Wn};function Kn(e,t,n){return e>>>=0,t=Gn(t>>>0,n>>>0),ve[e](...t)}function qn(e,t,n){return e>>>=0,t=Gn(t>>>0,n>>>0),ve[e](...t)}var Jn=()=>{};function Yn(e,t){return y(B(e>>>0,t>>>0))}var Xn=()=>{throw we+=1,`unwind`};function Zn(){return 4294901760}var Qn=()=>navigator.hardwareConcurrency;function $n(){return ge(`Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER`),0}function er(e){e>>>=0;var t=ae().length;if(e<=t||4294901760=n;n*=2){var r=t*(1+.2/n);r=Math.min(r,e+100663296);e:{r=(Math.min(4294901760,65536*Math.ceil(Math.max(e,r)/65536))-b.buffer.byteLength+65535)/65536|0;try{b.grow(r),F();var i=1;break e}catch{}i=void 0}if(i)return!0}return!1}var G=()=>(ge(`Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER`),0),tr={},nr=e=>{e.forEach(e=>{var t=G();t&&(tr[t]=e)})};function rr(){var e=Error().stack.toString().split(` +`);return e[0]==`Error`&&e.shift(),nr(e),tr.Lb=G(),tr.cc=e,tr.Lb}function ir(e,t,n){if(e>>>=0,t>>>=0,tr.Lb==e)var r=tr.cc;else (r=Error().stack.toString().split(` +`))[0]==`Error`&&r.shift(),nr(r);for(var i=3;r[i]&&G()!=e;)++i;for(e=0;e>>2>>>0]=G();return e}var K,ar={},q=()=>{if(!K){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 ar)ar[e]===void 0?delete t[e]:t[e]=ar[e];var n=[];for(e in t)n.push(`${e}=${t[e]}`);K=n}return K};function J(e,t){if(s)return Te(19,1,e,t);e>>>=0,t>>>=0;var n=0;return q().forEach((r,i)=>{var a=t+n;for(i=N()[e+4*i>>>2>>>0]=a,a=0;a>>0]=r.charCodeAt(a);ie()[i>>>0]=0,n+=r.length+1}),0}function or(e,t){if(s)return Te(20,1,e,t);e>>>=0,t>>>=0;var n=q();N()[e>>>2>>>0]=n.length;var r=0;return n.forEach(e=>r+=e.length+1),N()[t>>>2>>>0]=r,0}function sr(e){return s?Te(21,1,e):52}function cr(e,t,n,r){return s?Te(22,1,e,t,n,r):52}function lr(e,t,n,r){return s?Te(23,1,e,t,n,r):70}var Y=[null,[],[]];function ur(e,t,n,r){if(s)return Te(24,1,e,t,n,r);t>>>=0,n>>>=0,r>>>=0;for(var i=0,a=0;a>>2>>>0],c=N()[t+4>>>2>>>0];t+=8;for(var l=0;l>>0],d=Y[e];u===0||u===10?((e===1?v:y)(He(d)),d.length=0):d.push(u)}i+=c}return N()[r>>>2>>>0]=i,0}s||function(){for(var e=r.numThreads-1;e--;)Fe();Se.unshift(()=>{pe++,function(e){s?e():Promise.all(ke.map(Pe)).then(e)}(()=>he())})}();for(var dr=Array(256),fr=0;256>fr;++fr)dr[fr]=String.fromCharCode(fr);it=dr,at=r.BindingError=class extends Error{constructor(e){super(e),this.name=`BindingError`}},r.InternalError=class extends Error{constructor(e){super(e),this.name=`InternalError`}},vt.push(0,1,void 0,1,null,1,!0,1,!1,1),r.count_emval_handles=()=>vt.length/2-5-_t.length;var X,pr=[Ee,De,Be,Ue,We,qe,Je,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,Fn,In,zn,J,or,sr,cr,lr,ur];(async function(){function e(e,t){return X=e.exports,X=function(){var e=X,t={};for(let[n,r]of Object.entries(e))t[n]=typeof r==`function`?(...e)=>{rn.push(n);try{return r(...e)}finally{j||(rn.pop(),tn&&en===1&&rn.length===0&&(en=0,we+=1,$t(Mr),typeof Fibers<`u`&&Fibers.rc()))}}:r;return t}(),X=function(){var e=X,t=e=>t=>e(t)>>>0,n=e=>()=>e()>>>0;return(e=Object.assign({},e)).Da=t(e.Da),e.fb=n(e.fb),e.hb=t(e.hb),e.tb=t(e.tb),e.ub=n(e.ub),e.__cxa_get_exception_ptr=t(e.__cxa_get_exception_ptr),e}(),je.push(X.ib),x=t,he(),X}pe++;var t=_e();if(r.instantiateWasm)return new Promise(n=>{r.instantiateWasm(t,(t,r)=>{e(t,r),n(t.exports)})});if(s)return new Promise(t=>{de=n=>{var r=new WebAssembly.Instance(n,_e());t(e(r,n))}});I??=r.locateFile?r.locateFile?r.locateFile(`ort-wasm-simd-threaded.jsep.wasm`,h):h+`ort-wasm-simd-threaded.jsep.wasm`:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+self.location.href).href;try{var i=await async function(e){var t=I;if(!ne&&typeof WebAssembly.instantiateStreaming==`function`&&!re(t))try{var n=fetch(t,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(n,e)}catch(e){y(`wasm streaming compile failed: ${e}`),y(`falling back to ArrayBuffer instantiation`)}return async function(e,t){try{var n=await async function(e){if(!ne)try{var t=await d(e);return new Uint8Array(t)}catch{}if(e==I&&ne)e=new Uint8Array(ne);else{if(!f)throw`both async and sync fetching of the wasm failed`;e=f(e)}return e}(e);return await WebAssembly.instantiate(n,t)}catch(e){y(`failed to asynchronously prepare wasm: ${e}`),ge(e)}}(t,e)}(t);return e(i.instance,i.module)}catch(e){return n(e),Promise.reject(e)}})();var mr=e=>(mr=X.Da)(e),hr=()=>(hr=X.Ea)();r._OrtInit=(e,t)=>(r._OrtInit=X.Fa)(e,t),r._OrtGetLastError=(e,t)=>(r._OrtGetLastError=X.Ga)(e,t),r._OrtCreateSessionOptions=(e,t,n,i,a,o,s,c,l,u)=>(r._OrtCreateSessionOptions=X.Ha)(e,t,n,i,a,o,s,c,l,u),r._OrtAppendExecutionProvider=(e,t,n,i,a)=>(r._OrtAppendExecutionProvider=X.Ia)(e,t,n,i,a),r._OrtAddFreeDimensionOverride=(e,t,n)=>(r._OrtAddFreeDimensionOverride=X.Ja)(e,t,n),r._OrtAddSessionConfigEntry=(e,t,n)=>(r._OrtAddSessionConfigEntry=X.Ka)(e,t,n),r._OrtReleaseSessionOptions=e=>(r._OrtReleaseSessionOptions=X.La)(e),r._OrtCreateSession=(e,t,n)=>(r._OrtCreateSession=X.Ma)(e,t,n),r._OrtReleaseSession=e=>(r._OrtReleaseSession=X.Na)(e),r._OrtGetInputOutputCount=(e,t,n)=>(r._OrtGetInputOutputCount=X.Oa)(e,t,n),r._OrtGetInputOutputMetadata=(e,t,n,i)=>(r._OrtGetInputOutputMetadata=X.Pa)(e,t,n,i),r._OrtFree=e=>(r._OrtFree=X.Qa)(e),r._OrtCreateTensor=(e,t,n,i,a,o)=>(r._OrtCreateTensor=X.Ra)(e,t,n,i,a,o),r._OrtGetTensorData=(e,t,n,i,a)=>(r._OrtGetTensorData=X.Sa)(e,t,n,i,a),r._OrtReleaseTensor=e=>(r._OrtReleaseTensor=X.Ta)(e),r._OrtCreateRunOptions=(e,t,n,i)=>(r._OrtCreateRunOptions=X.Ua)(e,t,n,i),r._OrtAddRunConfigEntry=(e,t,n)=>(r._OrtAddRunConfigEntry=X.Va)(e,t,n),r._OrtReleaseRunOptions=e=>(r._OrtReleaseRunOptions=X.Wa)(e),r._OrtCreateBinding=e=>(r._OrtCreateBinding=X.Xa)(e),r._OrtBindInput=(e,t,n)=>(r._OrtBindInput=X.Ya)(e,t,n),r._OrtBindOutput=(e,t,n,i)=>(r._OrtBindOutput=X.Za)(e,t,n,i),r._OrtClearBoundOutputs=e=>(r._OrtClearBoundOutputs=X._a)(e),r._OrtReleaseBinding=e=>(r._OrtReleaseBinding=X.$a)(e),r._OrtRunWithBinding=(e,t,n,i,a)=>(r._OrtRunWithBinding=X.ab)(e,t,n,i,a),r._OrtRun=(e,t,n,i,a,o,s,c)=>(r._OrtRun=X.bb)(e,t,n,i,a,o,s,c),r._OrtEndProfiling=e=>(r._OrtEndProfiling=X.cb)(e),r._JsepOutput=(e,t,n)=>(r._JsepOutput=X.db)(e,t,n),r._JsepGetNodeName=e=>(r._JsepGetNodeName=X.eb)(e);var gr=()=>(gr=X.fb)(),_r=r._free=e=>(_r=r._free=X.gb)(e),vr=r._malloc=e=>(vr=r._malloc=X.hb)(e),yr=(e,t,n,r,i,a)=>(yr=X.kb)(e,t,n,r,i,a),br=()=>(br=X.lb)(),xr=(e,t,n,r,i)=>(xr=X.mb)(e,t,n,r,i),Sr=e=>(Sr=X.nb)(e),Cr=e=>(Cr=X.ob)(e),wr=(e,t)=>(wr=X.pb)(e,t),Tr=()=>(Tr=X.qb)(),Er=(e,t)=>(Er=X.rb)(e,t),Dr=e=>(Dr=X.sb)(e),Or=e=>(Or=X.tb)(e),kr=()=>(kr=X.ub)(),Ar=r.dynCall_ii=(e,t)=>(Ar=r.dynCall_ii=X.vb)(e,t),jr=e=>(jr=X.wb)(e),Mr=()=>(Mr=X.xb)(),Nr=e=>(Nr=X.yb)(e),Pr=()=>(Pr=X.zb)();return r.stackSave=()=>kr(),r.stackRestore=e=>Dr(e),r.stackAlloc=e=>Or(e),r.setValue=function(e,t,n=`i8`){switch(n.endsWith(`*`)&&(n=`*`),n){case`i1`:case`i8`:ie()[e>>>0]=t;break;case`i16`:oe()[e>>>1>>>0]=t;break;case`i32`:M()[e>>>2>>>0]=t;break;case`i64`:A[e>>>3]=BigInt(t);break;case`float`:ce()[e>>>2>>>0]=t;break;case`double`:le()[e>>>3>>>0]=t;break;case`*`:N()[e>>>2>>>0]=t;break;default:ge(`invalid type for setValue: ${n}`)}},r.getValue=function(e,t=`i8`){switch(t.endsWith(`*`)&&(t=`*`),t){case`i1`:case`i8`:return ie()[e>>>0];case`i16`:return oe()[e>>>1>>>0];case`i32`:return M()[e>>>2>>>0];case`i64`:return A[e>>>3];case`float`:return ce()[e>>>2>>>0];case`double`:return le()[e>>>3>>>0];case`*`:return N()[e>>>2>>>0];default:ge(`invalid type for getValue: ${t}`)}},r.UTF8ToString=B,r.stringToUTF8=Ke,r.lengthBytesUTF8=Ge,function e(){if(0{"use strict";et(),ft=typeof location>`u`?void 0:location.origin,pt=self.location.href>`file:`&&self.location.href<`file;`,mt=()=>{if(pt){let e=URL;return new URL(new e(`ort.bundle.min.mjs`,self.location.href).href,ft).href}return self.location.href},ht=mt(),gt=()=>{if(ht&&!ht.startsWith(`blob:`))return ht.substring(0,ht.lastIndexOf(`/`)+1)},_t=(e,t)=>{try{let n=t??ht;return(n?new URL(e,n):new URL(e)).origin===ft}catch{return!1}},vt=(e,t)=>{let n=t??ht;try{return(n?new URL(e,n):new URL(e)).href}catch{return}},yt=(e,t)=>`${t??`./`}${e}`,bt=async e=>{let t=await(await fetch(e,{credentials:`same-origin`})).blob();return URL.createObjectURL(t)},xt=async e=>(await import(e)).default,St=(at(),le(tt)).default,Ct=async()=>{if(!ht)throw Error(`Failed to load proxy worker: cannot determine the script source URL.`);if(_t(ht))return[void 0,St()];let e=await bt(ht);return[e,St(e)]},wt=(dt(),le(ot)).default,Tt=async(e,t,n)=>{if(!e&&!t&&wt&&ht&&_t(ht))return[void 0,wt];{let r=`ort-wasm-simd-threaded.jsep.mjs`,i=e??vt(r,t),a=n&&i&&!_t(i,t),o=a?await bt(i):i??yt(r,t);return[a?o:void 0,await xt(o)]}}}),Dt,Ot,kt,At,jt,Mt,Nt,Pt,Ft,It=M(()=>{"use strict";Et(),Ot=!1,kt=!1,At=!1,jt=()=>{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}},Mt=()=>{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}},Pt=async e=>{if(Ot)return Promise.resolve();if(kt)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if(At)throw Error(`previous call to 'initializeWebAssembly()' failed.`);kt=!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(!Mt())throw Error(`WebAssembly SIMD is not supported in the current environment.`)}let r=jt();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 Tt(s,a,n>1),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=gt();e&&(r.locateFile=t=>e+t)}f(r).then(t=>{kt=!1,Ot=!0,Dt=t,e(),d&&URL.revokeObjectURL(d)},e=>{kt=!1,At=!0,t(e)})})),await Promise.race(m),p)throw Error(`WebAssembly backend initializing failed due to timeout: ${t}ms`)},Ft=()=>{if(Ot&&Dt)return Dt;throw Error(`WebAssembly is not initialized yet.`)}}),Lt,Rt,zt,Bt=M(()=>{"use strict";It(),Lt=(e,t)=>{let n=Ft(),r=n.lengthBytesUTF8(e)+1,i=n._malloc(r);return n.stringToUTF8(e,i,r),t.push(i),i},Rt=(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`)Rt(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}`)})},zt=e=>{let t=Ft(),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)}}}),Vt,Ht=M(()=>{"use strict";It(),Bt(),Vt=e=>{let t=Ft(),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 serverity 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=Lt(e.tag,r)),n=t._OrtCreateRunOptions(i.logSeverityLevel,i.logVerbosityLevel,!!i.terminate,a),n===0&&zt(`Can't create run options.`),e?.extra!==void 0&&Rt(e.extra,``,new WeakSet,(e,i)=>{let a=Lt(e,r),o=Lt(i,r);t._OrtAddRunConfigEntry(n,a,o)!==0&&zt(`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}}}),Ut,Wt,Gt,Kt,qt,Jt,Yt=M(()=>{"use strict";It(),Bt(),Ut=e=>{switch(e){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${e}`)}},Wt=e=>{switch(e){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${e}`)}},Gt=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)},Kt=(e,t,n,r)=>{let i=Lt(t,r),a=Lt(n,r);Ft()._OrtAddSessionConfigEntry(e,i,a)!==0&&zt(`Can't set a session config entry: ${t} - ${n}.`)},qt=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&&Kt(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}`);Kt(e,`preferredLayout`,t.preferredLayout,n)}}break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported execution provider: ${t}`)}let a=Lt(t,n),o=i.length,s=0,c=0;if(o>0){s=Ft()._malloc(o*Ft().PTR_SIZE),n.push(s),c=Ft()._malloc(o*Ft().PTR_SIZE),n.push(c);for(let e=0;e{let t=Ft(),n=0,r=[],i=e||{};Gt(i);try{let e=Ut(i.graphOptimizationLevel??`all`),a=Wt(i.executionMode??`sequential`),o=typeof i.logId==`string`?Lt(i.logId,r):0,s=i.logSeverityLevel??2;if(!Number.isInteger(s)||s<0||s>4)throw Error(`log serverity 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`?Lt(i.optimizedModelFilePath,r):0;if(n=t._OrtCreateSessionOptions(e,!!i.enableCpuMemArena,!!i.enableMemPattern,a,!!i.enableProfiling,0,o,s,c,l),n===0&&zt(`Can't create session options.`),i.executionProviders&&await qt(n,i.executionProviders,r),i.enableGraphCapture!==void 0){if(typeof i.enableGraphCapture!=`boolean`)throw Error(`enableGraphCapture must be a boolean value: ${i.enableGraphCapture}`);Kt(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=Lt(e,r);t._OrtAddFreeDimensionOverride(n,i,a)!==0&&zt(`Can't set a free dimension override: ${e} - ${a}.`)}return i.extra!==void 0&&Rt(i.extra,``,new WeakSet,(e,t)=>{Kt(n,e,t,r)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseSessionOptions(n)!==0&&zt(`Can't release session options.`),r.forEach(e=>t._free(e)),e}}}),Xt,Zt,Qt,$t,en,tn,nn,rn,V=M(()=>{"use strict";Xt=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}`)}},Zt=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}`)}},Qt=(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}`)}},en=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}`)}},tn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,nn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint64`||e===`int8`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,rn=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}`)}}}),an,on=M(()=>{"use strict";et(),an=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)}}else return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),sn,cn,ln,un,dn,fn,H,pn=M(()=>{"use strict";V(),sn=[`V`,`I`,`W`,`E`,`F`],cn=(e,t)=>{console.log(`[${sn[e]},${new Date().toISOString()}]${t}`)},dn=(e,t)=>{ln=e,un=t},fn=(e,t)=>{let n=en(e),r=en(ln);n>=r&&cn(n,typeof t==`function`?t():t)},H=(...e)=>{un&&fn(...e)}}),mn,hn,U,gn,_n,vn,yn,W=M(()=>{"use strict";mn=class{static calcMatMulShape(e,t){return e[1]===t[0]?[e[0],t[1]]:void 0}},hn=class{static calcShape(e,t,n=!1){let r=e.length,i=t.length;if(r===0)return t;if(i===0)return e;let a=Math.max(e.length,t.length),o=Array(a);if(n){if(r<2||i<2)return;let n=mn.calcMatMulShape([e[r-2],e[r-1]],[t[i-2],t[i-1]]);if(n===void 0)return;[o[a-2],o[a-1]]=n}for(let s=n?3:1;s<=a;s++){let n=r-s<0?1:e[r-s],c=i-s<0?1:t[i-s];if(n!==c&&n>1&&c>1)return;let l=Math.max(n,c);if(n&&c)o[a-s]=Math.max(n,c);else{if(l>1)return;o[a-s]=0}}return o}static isValidBroadcast(e,t){let n=e.length,r=t.length;if(n>r)return!1;for(let i=1;i<=n;i++)if(e[n-i]!==1&&e[n-i]!==t[r-i])return!1;return!0}},U=class e{static size(t){return e.getSizeFromDimensionRange(t,0,t.length)}static convertShape(e,t=4){let n=e.length;if(n===0)return[];let r=Array(n),i=n-1;for(;i>=0;){if(e[i]%t===0){r[i]=e[i]/t;break}if(t%e[i]!==0)throw Error(`cannot convert shape`);r[i]=1,t/=e[i],i--}for(i--;i>=0;i--)r[i]=e[i];return r}static sizeFromDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeFromDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,n,t.length)}static sizeToDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeToDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,0,n)}static getSizeFromDimensionRange(e,t,n){let r=1;for(let i=t;i=0;--r)n[r]=n[r+1]*e[r+1];return n}static normalizeAxis(e,t){if(e<-t&&e>=t)throw Error(`unsupported axis for this operation.`);return e<0?e+t:e}static normalizeAxes(e,t){return e.map(n=>this.normalizeAxis(n,t??e.length))}static sortBasedOnPerm(e,t){return t?t.map(t=>e[t]):e.slice().reverse()}static padShape(e,t){let n=e.length;return e.map((e,r)=>e+t[r]+t[r+n])}static areEqual(e,t){return e.length===t.length?e.every((e,n)=>e===t[n]):!1}},gn=class e{static adjustPoolAttributes(e,t,n,r,i,a){if(!e&&n.length!==t.length-2)throw Error(`length of specified kernel shapes should be 2 less than length of input dimensions`);if(e)for(let e=0;e=n.length?n.push(t[e+2]):n[e]=t[e+2];for(let e=0;e=n[e]||a[e+n.length]>=n[e])throw Error(`pads should be smaller than kernel`)}}static adjustPadsBasedOnAutoPad(t,n,r,i,a,o,s){if(s){if(a.length!==2*(t.length-2))throw Error(`length of pads should be twice the length of data dimensions`);if(n.length!==t.length-2)throw Error(`length of strides should be the length of data dimensions`);if(i.length!==t.length-2)throw Error(`length of kernel shapes should be the length of data dimensions`);for(let c=0;c{"use strict";V(),bn=(e,t)=>new($t(t))(e)}),Sn,Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn=M(()=>{"use strict";pn(),Sn=(e,t=!0)=>{if(e.byteLength%8!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 8 (BigInt).`);let n=e.byteLength/8,r=new BigInt64Array(e.buffer,e.byteOffset,n),i=new Int32Array(n);for(let e=0;e2147483647n||t<-2147483648n)throw Error(`Overflow occurred when converting BigInt to Int32 at index ${e}: ${t}`);i[e]=Number(t)}return t?new Uint8Array(i.buffer):i},Cn=(e,t=!0)=>{if(e.byteLength%4!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 4 (Int32).`);let n=e.byteLength/4,r=new Int32Array(e.buffer,e.byteOffset,n),i=BigInt64Array.from(r,BigInt);return t?new Uint8Array(i.buffer):i},wn=1,Tn=()=>wn++,En=new Map([[`float32`,32],[`float16`,16],[`int32`,32],[`uint32`,32],[`int64`,64],[`uint64`,64],[`int8`,8],[`uint8`,8],[`int4`,4],[`uint4`,4]]),Dn=(e,t)=>{let n=En.get(e);if(!n)throw Error(`Unsupported data type.`);return t.length>0?Math.ceil(t.reduce((e,t)=>e*t)*n/8):0},On=class{constructor(e){this.shouldConvertInt64toInt32=!1,this.isInt64ToInt32Converted=!1;let{sessionId:t,context:n,tensor:r,dataType:i,shape:a,shouldConvertInt64toInt32:o=!1}=e;this.sessionId=t,this.mlContext=n,this.mlTensor=r,this.dataType=i,this.tensorShape=a,this.shouldConvertInt64toInt32=o}get tensor(){return this.mlTensor}get type(){return this.dataType}get shape(){return this.tensorShape}get byteLength(){return Dn(this.dataType,this.tensorShape)}destroy(){H(`verbose`,()=>`[WebNN] TensorWrapper.destroy`),this.mlTensor.destroy()}write(e){this.mlContext.writeTensor(this.mlTensor,e)}async read(e,t){if(e){let e=await this.mlContext.readTensor(this.mlTensor),n=Cn(new Uint8Array(e));if(t){(t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)).set(n);return}else return n.buffer}else return t?this.mlContext.readTensor(this.mlTensor,t):this.mlContext.readTensor(this.mlTensor)}canReuseTensor(e,t,n){return this.mlContext===e&&this.dataType===t&&this.tensorShape.length===n.length&&this.tensorShape.every((e,t)=>e===n[t])}setIsInt64ToInt32Converted(e){this.isInt64ToInt32Converted=e}},kn=class{constructor(e,t){this.tensorManager=e,this.wrapper=t}get tensorWrapper(){return this.wrapper}releaseTensor(){this.tensorWrapper&&(this.tensorManager.releaseTensor(this.tensorWrapper),this.wrapper=void 0)}async ensureTensor(e,t,n,r){let i=t,a=this.tensorManager.getMLContext(e),o=i===`int64`&&!a.opSupportLimits().input.dataTypes.includes(`int64`);if(o&&(i=`int32`,H(`verbose`,()=>`[WebNN] TensorIdTracker.ensureTensor: convert dataType from int64 to int32`)),this.wrapper){if(this.wrapper.canReuseTensor(a,i,n))return this.wrapper.tensor;if(r){if(this.wrapper.byteLength!==Dn(i,n))throw Error(`Unable to copy data to tensor with different size.`);this.activeUpload=new Uint8Array(await this.wrapper.read())}this.tensorManager.releaseTensor(this.wrapper)}let s=typeof MLTensorUsage>`u`?void 0:MLTensorUsage.READ|MLTensorUsage.WRITE;return this.wrapper=await this.tensorManager.getCachedTensor(e,i,n,s,!0,!0,o),r&&this.activeUpload&&(this.wrapper.write(this.activeUpload),this.activeUpload=void 0),this.wrapper.tensor}upload(e){let t=e;if(this.wrapper)if(this.wrapper.shouldConvertInt64toInt32&&(t=Sn(e,!0),this.wrapper.setIsInt64ToInt32Converted(!0)),t.byteLength===this.wrapper.byteLength){this.wrapper.write(t);return}else H(`verbose`,()=>`Data size does not match tensor size. Releasing tensor.`),this.releaseTensor();this.activeUpload?this.activeUpload.set(t):this.activeUpload=new Uint8Array(t)}async download(e){if(this.activeUpload){let t=this.wrapper?.isInt64ToInt32Converted?Cn(this.activeUpload):this.activeUpload;if(e){e instanceof ArrayBuffer?new Uint8Array(e).set(t):new Uint8Array(e.buffer,e.byteOffset,e.byteLength).set(t);return}else return t.buffer}if(!this.wrapper)throw Error(`Tensor has not been created.`);return e?this.wrapper.read(this.wrapper?.shouldConvertInt64toInt32,e):this.wrapper.read(this.wrapper?.shouldConvertInt64toInt32)}},An=class{constructor(e){this.backend=e,this.tensorTrackersById=new Map,this.freeTensors=[],this.externalTensors=new Set}getMLContext(e){let t=this.backend.getMLContext(e);if(!t)throw Error(`MLContext not found for session.`);return t}reserveTensorId(){let e=Tn();return this.tensorTrackersById.set(e,new kn(this)),e}releaseTensorId(e){let t=this.tensorTrackersById.get(e);t&&(this.tensorTrackersById.delete(e),t.tensorWrapper&&this.releaseTensor(t.tensorWrapper))}async ensureTensor(e,t,n,r,i){H(`verbose`,()=>`[WebNN] TensorManager.ensureTensor {tensorId: ${t}, dataType: ${n}, shape: ${r}, copyOld: ${i}}`);let a=this.tensorTrackersById.get(t);if(!a)throw Error(`Tensor not found.`);return a.ensureTensor(e,n,r,i)}upload(e,t){let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);n.upload(t)}async download(e,t){H(`verbose`,()=>`[WebNN] TensorManager.download {tensorId: ${e}, dstBuffer: ${t?.byteLength}}`);let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);return n.download(t)}releaseTensorsForSession(e){for(let t of this.freeTensors)t.sessionId===e&&t.destroy();this.freeTensors=this.freeTensors.filter(t=>t.sessionId!==e)}registerTensor(e,t,n,r){let i=this.getMLContext(e),a=Tn(),o=new On({sessionId:e,context:i,tensor:t,dataType:n,shape:r});return this.tensorTrackersById.set(a,new kn(this,o)),this.externalTensors.add(o),a}async getCachedTensor(e,t,n,r,i,a,o=!1){let s=this.getMLContext(e);for(let[r,i]of this.freeTensors.entries())if(i.canReuseTensor(s,t,n)){H(`verbose`,()=>`[WebNN] Reusing tensor {dataType: ${t}, shape: ${n}}`);let i=this.freeTensors.splice(r,1)[0];return i.sessionId=e,i}H(`verbose`,()=>`[WebNN] MLContext.createTensor {dataType: ${t}, shape: ${n}}`);let c=await s.createTensor({dataType:t,shape:n,dimensions:n,usage:r,writable:i,readable:a});return new On({sessionId:e,context:s,tensor:c,dataType:t,shape:n,shouldConvertInt64toInt32:o})}releaseTensor(e){this.externalTensors.has(e)&&this.externalTensors.delete(e),this.freeTensors.push(e)}},jn=(...e)=>new An(...e)}),Nn,Pn,Fn,In=M(()=>{"use strict";V(),It(),xn(),Mn(),pn(),Nn=new Map([[1,`float32`],[10,`float16`],[6,`int32`],[12,`uint32`],[7,`int64`],[13,`uint64`],[22,`int4`],[21,`uint4`],[3,`int8`],[2,`uint8`],[9,`uint8`]]),Pn=(e,t)=>{if(e===t)return!0;if(e===void 0||t===void 0)return!1;let n=Object.keys(e).sort(),r=Object.keys(t).sort();return n.length===r.length&&n.every((n,i)=>n===r[i]&&e[n]===t[n])},Fn=class{constructor(e){this.tensorManager=jn(this),this.mlContextBySessionId=new Map,this.sessionIdsByMLContext=new Map,this.mlContextCache=[],this.sessionGraphInputs=new Map,this.temporaryGraphInputs=[],this.temporarySessionTensorIds=new Map,dn(e.logLevel,!!e.debug)}get currentSessionId(){if(this.activeSessionId===void 0)throw Error(`No active session`);return this.activeSessionId}onRunStart(e){H(`verbose`,()=>`[WebNN] onRunStart {sessionId: ${e}}`),this.activeSessionId=e}onRunEnd(e){H(`verbose`,()=>`[WebNN] onRunEnd {sessionId: ${e}}`);let t=this.temporarySessionTensorIds.get(e);if(t){for(let e of t)H(`verbose`,()=>`[WebNN] releasing temporary tensor {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e);this.temporarySessionTensorIds.delete(e),this.activeSessionId=void 0}}async createMLContext(e){if(e instanceof GPUDevice){let t=this.mlContextCache.findIndex(t=>t.gpuDevice===e);if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({gpuDevice:e,mlContext:t}),t}}else if(e===void 0){let e=this.mlContextCache.findIndex(e=>e.options===void 0&&e.gpuDevice===void 0);if(e!==-1)return this.mlContextCache[e].mlContext;{let e=await navigator.ml.createContext();return this.mlContextCache.push({mlContext:e}),e}}let t=this.mlContextCache.findIndex(t=>Pn(t.options,e));if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({options:e,mlContext:t}),t}}registerMLContext(e,t){this.mlContextBySessionId.set(e,t);let n=this.sessionIdsByMLContext.get(t);n||(n=new Set,this.sessionIdsByMLContext.set(t,n)),n.add(e),this.temporaryGraphInputs.length>0&&(this.sessionGraphInputs.set(e,this.temporaryGraphInputs),this.temporaryGraphInputs=[])}onReleaseSession(e){this.sessionGraphInputs.delete(e);let t=this.mlContextBySessionId.get(e);if(!t)return;this.tensorManager.releaseTensorsForSession(e),this.mlContextBySessionId.delete(e);let n=this.sessionIdsByMLContext.get(t);if(n.delete(e),n.size===0){this.sessionIdsByMLContext.delete(t);let e=this.mlContextCache.findIndex(e=>e.mlContext===t);e!==-1&&this.mlContextCache.splice(e,1)}}getMLContext(e){return this.mlContextBySessionId.get(e)}reserveTensorId(){return this.tensorManager.reserveTensorId()}releaseTensorId(e){H(`verbose`,()=>`[WebNN] releaseTensorId {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e)}async ensureTensor(e,t,n,r,i){let a=Nn.get(n);if(!a)throw Error(`Unsupported ONNX data type: ${n}`);return this.tensorManager.ensureTensor(e??this.currentSessionId,t,a,r,i)}async createTemporaryTensor(e,t,n){H(`verbose`,()=>`[WebNN] createTemporaryTensor {onnxDataType: ${t}, shape: ${n}}`);let r=Nn.get(t);if(!r)throw Error(`Unsupported ONNX data type: ${t}`);let i=this.tensorManager.reserveTensorId();await this.tensorManager.ensureTensor(e,i,r,n,!1);let a=this.temporarySessionTensorIds.get(e);return a?a.push(i):this.temporarySessionTensorIds.set(e,[i]),i}uploadTensor(e,t){if(!Ft().shouldTransferToMLTensor)throw Error(`Trying to upload to a MLTensor while shouldTransferToMLTensor is false`);H(`verbose`,()=>`[WebNN] uploadTensor {tensorId: ${e}, data: ${t.byteLength}}`),this.tensorManager.upload(e,t)}async downloadTensor(e,t){return this.tensorManager.download(e,t)}createMLTensorDownloader(e,t){return async()=>{let n=await this.tensorManager.download(e);return bn(n,t)}}registerMLTensor(e,t,n,r){let i=Nn.get(n);if(!i)throw Error(`Unsupported ONNX data type: ${n}`);let a=this.tensorManager.registerTensor(e,t,i,r);return H(`verbose`,()=>`[WebNN] registerMLTensor {tensor: ${t}, dataType: ${i}, dimensions: ${r}} -> {tensorId: ${a}}`),a}registerMLConstant(e,t,n,r,i,a,o=!1){if(!a)throw Error(`External mounted files are not available.`);let s=e;e.startsWith(`./`)&&(s=e.substring(2));let c=a.get(s);if(!c)throw Error(`File with name ${s} not found in preloaded files.`);if(t+n>c.byteLength)throw Error(`Out of bounds: data offset and length exceed the external file data size.`);let l=c.slice(t,t+n).buffer,u;switch(i.dataType){case`float32`:u=new Float32Array(l);break;case`float16`:u=typeof Float16Array<`u`&&Float16Array.from?new Float16Array(l):new Uint16Array(l);break;case`int32`:u=new Int32Array(l);break;case`uint32`:u=new Uint32Array(l);break;case`int64`:o?(u=Sn(new Uint8Array(l),!1),i.dataType=`int32`):u=new BigInt64Array(l);break;case`uint64`:u=new BigUint64Array(l);break;case`int8`:u=new Int8Array(l);break;case`int4`:case`uint4`:case`uint8`:u=new Uint8Array(l);break;default:throw Error(`Unsupported data type: ${i.dataType} in creating WebNN Constant from external data.`)}return H(`verbose`,()=>`[WebNN] registerMLConstant {dataType: ${i.dataType}, shape: ${i.shape}}} ${o?`(Note: it was int64 data type and registered to int32 as workaround)`:``}`),r.constant(i,u)}registerGraphInput(e){this.temporaryGraphInputs.push(e)}isGraphInput(e,t){let n=this.sessionGraphInputs.get(e);return n?n.includes(t):!1}isInt64Supported(e){return!!this.mlContextBySessionId.get(e)?.opSupportLimits().input.dataTypes.includes(`int64`)}flush(){}}}),Ln=M(()=>{"use strict";}),Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn=M(()=>{"use strict";pn(),Ln(),Rn=new Map([[64,250],[128,200],[256,200],[512,200],[2048,230],[4096,200],[8192,50],[16384,50],[32768,50],[65536,50],[131072,50],[262144,50],[524288,50],[1048576,50],[2097152,30],[4194304,20],[8388608,10],[12582912,10],[16777216,10],[26214400,15],[33554432,22],[44236800,2],[58982400,6],[67108864,6],[134217728,6],[167772160,6]]),zn=[],Bn=e=>Math.ceil(Number(e)/16)*16,Vn=e=>{for(let t=0;tHn++,Wn=async(e,t,n,r)=>{let i=Bn(n),a=e.device.createBuffer({size:i,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ});try{let o=e.getCommandEncoder();e.endComputePass(),o.copyBufferToBuffer(t,0,a,0,i),e.flush(),await a.mapAsync(GPUMapMode.READ);let s=a.getMappedRange();if(r){let e=r();return e.set(new Uint8Array(s,0,n)),e}else return new Uint8Array(s.slice(0,n))}finally{a.destroy()}},Gn=class{constructor(e){this.backend=e,this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.buffersPending=[],this.capturedPendingBuffers=new Map;for(let[e]of Rn)zn.push(e),this.freeBuffers.set(e,[]),this.freeUniformBuffers.set(e,[]);this.sessionCount=0}upload(e,t){let n=t.buffer,r=t.byteOffset,i=t.byteLength,a=Bn(i),o=this.storageCache.get(e);if(!o)throw Error(`gpu data for uploading does not exist`);if(Number(o.originalSize)!==i)throw Error(`inconsistent data size. gpu data size=${o.originalSize}, data size=${i}`);let s=this.backend.device.createBuffer({mappedAtCreation:!0,size:a,usage:GPUBufferUsage.MAP_WRITE|GPUBufferUsage.COPY_SRC}),c=s.getMappedRange();new Uint8Array(c).set(new Uint8Array(n,r,i)),s.unmap();let l=this.backend.device.createCommandEncoder();l.copyBufferToBuffer(s,0,o.gpuData.buffer,0,a),this.backend.device.queue.submit([l.finish()]),s.destroy(),H(`verbose`,()=>`[WebGPU] GpuDataManager.upload(id=${e})`)}memcpy(e,t){let n=this.storageCache.get(e);if(!n)throw Error(`source gpu data for memcpy does not exist`);let r=this.storageCache.get(t);if(!r)throw Error(`destination gpu data for memcpy does not exist`);if(n.originalSize!==r.originalSize)throw Error(`inconsistent source and destination gpu data size`);let i=Bn(n.originalSize),a=this.backend.getCommandEncoder();this.backend.endComputePass(),a.copyBufferToBuffer(n.gpuData.buffer,0,r.gpuData.buffer,0,i)}registerExternalBuffer(e,t,n){let r;if(n){if(r=n[0],e===n[1])return H(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, buffer is the same, skip.`),r;if(this.backend.capturedCommandList.has(this.backend.currentSessionId))throw Error(`Registering a different external buffer under graph capture mode is not supported yet. + Please use the previous external buffer!`)}else r=Un();return this.storageCache.set(r,{gpuData:{id:r,type:0,buffer:e},originalSize:t}),H(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, registered.`),r}unregisterExternalBuffer(e){e!==void 0&&(this.storageCache.delete(e),H(`verbose`,()=>`[WebGPU] GpuDataManager.unregisterExternalBuffer() => id=${e}`))}create(e,t=GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_SRC|GPUBufferUsage.COPY_DST){let n=Vn(e),r,i=(t&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE,a=(t&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM;if(i||a){let e=(i?this.freeBuffers:this.freeUniformBuffers).get(n);r=e&&e.length>0?e.pop():this.backend.device.createBuffer({size:n,usage:t})}else r=this.backend.device.createBuffer({size:n,usage:t});let o={id:Un(),type:0,buffer:r};return this.storageCache.set(o.id,{gpuData:o,originalSize:Number(e)}),H(`verbose`,()=>`[WebGPU] GpuDataManager.create(size=${e}) => id=${o.id}`),o}get(e){return this.storageCache.get(e)?.gpuData}release(e){let t=typeof e==`bigint`?Number(e):e,n=this.storageCache.get(t);if(!n){if(this.storageCache.size===0)return 0;throw Error(`releasing data does not exist`)}return H(`verbose`,()=>`[WebGPU] GpuDataManager.release(id=${t}), gpuDataId=${n.gpuData.id}`),this.storageCache.delete(t),this.buffersPending.push(n.gpuData.buffer),n.originalSize}async download(e,t){let n=this.storageCache.get(Number(e));if(!n)throw Error(`data does not exist`);await Wn(this.backend,n.gpuData.buffer,n.originalSize,t)}refreshPendingBuffers(){if(this.buffersPending.length!==0)if(this.backend.sessionStatus===`default`){for(let e of this.buffersPending){let t=Rn.get(e.size);if((e.usage&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE){let n=this.freeBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else if((e.usage&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM){let n=this.freeUniformBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else e.destroy()}this.buffersPending=[]}else{let e=this.capturedPendingBuffers.get(this.backend.currentSessionId);e||(e=[],this.capturedPendingBuffers.set(this.backend.currentSessionId,e));for(let t of this.buffersPending)e.push(t);this.buffersPending=[]}}dispose(){this.freeBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.freeUniformBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.capturedPendingBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.capturedPendingBuffers=new Map}onCreateSession(){this.sessionCount+=1}onReleaseSession(e){let t=this.capturedPendingBuffers.get(e);t&&(t.forEach(e=>{e.destroy()}),this.capturedPendingBuffers.delete(e)),--this.sessionCount,this.sessionCount===0&&(H(`warning`,()=>`[WebGPU] Clearing webgpu buffer cache`),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.storageCache=new Map)}},Kn=(...e)=>new Gn(...e)}),Jn,Yn,Xn=M(()=>{"use strict";Jn=class{constructor(e){Object.assign(this,e)}get cacheKey(){return this.key||=Object.getOwnPropertyNames(this).sort().map(e=>`${this[e]}`).join(`;`),this.key}},Yn=e=>new Jn(e)}),Zn,Qn,$n,er,G,tr,nr,rr,ir,K,ar,q,J,or,sr,cr,lr,Y=M(()=>{"use strict";V(),W(),Zn=64,Qn=(e,t)=>{if(t===3)throw Error(`vec3 has same alignment as vec4, use vec4 instead`);switch(Number(e)){case 10:return t>1?`vec${t}`:`f16`;case 1:return t>1?`vec${t}`:`f32`;case 6:return t>1?`vec${t}`:`i32`;case 12:return t>1?`vec${t}`:`u32`;case 7:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`i32`];case 13:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`u32`];case 9:if(t!==4)throw Error(`bool must be vec4`);return[`u32`,`vec4`];case 22:return`i32`;case 21:return`u32`;default:throw Error(`Unknown data type: ${e}`)}},$n=(e,t=1)=>{let n=Qn(e,t);return typeof n==`string`?n:n[0]},er=(e,t=1)=>{let n=Qn(e,t);return typeof n==`string`?n:n[1]},G=(...e)=>{let t=[];return e.forEach(e=>{e.length!==0&&t.push({type:12,data:e},{type:12,data:U.computeStrides(e)})}),t},tr=e=>e%4==0?4:e%2==0?2:1,nr=(e=`f32`,t,n=`0`)=>!t||t===1?`${e}(${n})`:`vec${t}<${e}>(${n})`,rr=(e,t,n)=>e===`f32`?n:t===1?`f32(${n})`:`vec${t}(${n})`,ir=(e,t)=>t===4?`(${e}.x + ${e}.y + ${e}.z + ${e}.w)`:t===2?`(${e}.x + ${e}.y)`:t===3?`(${e}.x + ${e}.y + ${e}.z)`:e,K=(e,t,n,r)=>e.startsWith(`uniforms.`)&&n>4?typeof t==`string`?r===`f16`?`${e}[(${t}) / 8][(${t}) % 8 / 4][(${t}) % 8 % 4]`:`${e}[(${t}) / 4][(${t}) % 4]`:r===`f16`?`${e}[${Math.floor(t/8)}][${Math.floor(t%8/4)}][${t%8%4}]`:`${e}[${Math.floor(t/4)}][${t%4}]`:n>1?`${e}[${t}]`:e,ar=(e,t,n,r,i)=>{let a=typeof n==`number`,o=a?n:n.length,s=[...Array(o).keys()],c=o<2?`u32`:o<=4?`vec${o}`:`array`,l=Qn(t,i),u=typeof l==`string`?l:l[1],d=typeof l==`string`?l:l[0],f={indices:c,value:u,storage:d,tensor:t},p=e=>typeof e==`string`?e:`${e}u`,m={offsetToIndices:!1,indicesToOffset:!1,broadcastedIndicesToOffset:!1,set:!1,setByIndices:!1,get:!1,getByIndices:!1},h=a?`uniforms.`:``,g=`${h}${e}_shape`,_=`${h}${e}_strides`,v=``;for(let e=0;e ${f.indices} { + var indices: ${f.indices}; + var current = offset; + ${v} + return indices; + }`,b=t=>(m.offsetToIndices=!0,o<2?t:`o2i_${e}(${t})`),x=[];if(o>=2)for(let e=o-1;e>=0;e--)x.push(`${K(_,e,o)} * (indices[${e}])`);let S=o<2?``:` + fn i2o_${e}(indices: ${f.indices}) -> u32 { + return ${x.join(`+`)}; + }`,C=t=>(m.indicesToOffset=!0,o<2?t:`i2o_${e}(${t})`),w=(...e)=>o===0?`0u`:`${f.indices}(${e.map(p).join(`,`)})`,T=(e,t)=>o<2?`${e}`:`${K(e,t,o)}`,E=(e,t,n)=>o<2?`${e}=${n};`:`${K(e,t,o)}=${n};`,D={},O=(t,n)=>{m.broadcastedIndicesToOffset=!0;let r=`${n.name}broadcastedIndicesTo${e}Offset`;if(r in D)return`${r}(${t})`;let i=[];for(let e=o-1;e>=0;e--){let t=n.indicesGet(`outputIndices`,e+n.rank-o);i.push(`${T(_,e)} * (${t} % ${T(g,e)})`)}return D[r]=`fn ${r}(outputIndices: ${n.type.indices}) -> u32 { + return ${i.length>0?i.join(`+`):`0u`}; + }`,`${r}(${t})`},k=(t,n)=>(()=>{if(f.storage===f.value)return`${e}[${t}]=${n};`;if(f.storage===`vec2`&&f.value===`i32`)return`${e}[${t}]=vec2(u32(${n}), select(0u, 0xFFFFFFFFu, ${n} < 0));`;if(f.storage===`vec2`&&f.value===`u32`)return`${e}[${t}]=vec2(u32(${n}), 0u);`;if(f.storage===`u32`&&f.value===`vec4`)return`${e}[${t}]=dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(${n}));`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),A=t=>(()=>{if(f.storage===f.value)return`${e}[${t}]`;if(f.storage===`vec2`&&f.value===`i32`)return`i32(${e}[${t}].x)`;if(f.storage===`vec2`&&f.value===`u32`)return`u32(${e}[${t}].x)`;if(f.storage===`u32`&&f.value===`vec4`)return`vec4(bool(${e}[${t}] & 0xFFu), bool(${e}[${t}] & 0xFF00u), bool(${e}[${t}] & 0xFF0000u), bool(${e}[${t}] & 0xFF000000u))`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),ee=o<2?``:` + fn get_${e}ByIndices(indices: ${f.indices}) -> ${u} { + return ${A(`i2o_${e}(indices)`)}; + }`,te=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` + fn get_${e}(${t}) -> ${u} { + return get_${e}ByIndices(${w(n)}); + }`})(),ne=(...t)=>{if(t.length!==o)throw Error(`indices length must be ${o}`);let n=t.map(p).join(`,`);return o===0?A(`0u`):o===1?A(n[0]):(m.get=!0,m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}(${n})`)},j=t=>o<2?A(t):(m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}ByIndices(${t})`),re=o<2?``:` + fn set_${e}ByIndices(indices: ${f.indices}, value: ${u}) { + ${k(`i2o_${e}(indices)`,`value`)} + }`,ie=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` + fn set_${e}(${t}, value: ${u}) { + set_${e}ByIndices(${w(n)}, value); + }`})();return{impl:()=>{let e=[],t=!1;return m.offsetToIndices&&(e.push(y),t=!0),m.indicesToOffset&&(e.push(S),t=!0),m.broadcastedIndicesToOffset&&(Object.values(D).forEach(t=>e.push(t)),t=!0),m.set&&(e.push(ie),t=!0),m.setByIndices&&(e.push(re),t=!0),m.get&&(e.push(te),t=!0),m.getByIndices&&(e.push(ee),t=!0),!a&&t&&e.unshift(`const ${g} = ${f.indices}(${n.join(`,`)});`,`const ${_} = ${f.indices}(${U.computeStrides(n).join(`,`)});`),e.join(` +`)},type:f,offsetToIndices:b,indicesToOffset:C,broadcastedIndicesToOffset:O,indices:w,indicesGet:T,indicesSet:E,set:(...t)=>{if(t.length!==o+1)throw Error(`indices length must be ${o}`);let n=t[o];if(typeof n!=`string`)throw Error(`value must be string`);let r=t.slice(0,o).map(p).join(`,`);return o===0?k(`0u`,n):o===1?k(r[0],n):(m.set=!0,m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}(${r}, ${n})`)},setByOffset:k,setByIndices:(t,n)=>o<2?k(t,n):(m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}ByIndices(${t}, ${n});`),get:ne,getByOffset:A,getByIndices:j,usage:r,name:e,strides:_,shape:g,rank:o}},q=(e,t,n,r=1)=>ar(e,t,n,`input`,r),J=(e,t,n,r=1)=>ar(e,t,n,`output`,r),or=(e,t,n)=>ar(e,t,n,`atomicOutput`,1),sr=(e,t,n,r=1)=>ar(e,t,n,`internal`,r),cr=class{constructor(e,t){this.normalizedDispatchGroup=e,this.limits=t,this.internalVariables=[],this.variables=[],this.uniforms=[],this.variableIndex=0}guardAgainstOutOfBoundsWorkgroupSizes(e){return`if (global_idx >= ${typeof e==`number`?`${e}u`:e}) { return; }`}mainStart(e=Zn){let t=typeof e==`number`?e:e[0],n=typeof e==`number`?1:e[1],r=typeof e==`number`?1:e[2];if(t>this.limits.maxComputeWorkgroupSizeX||n>this.limits.maxComputeWorkgroupSizeY||r>this.limits.maxComputeWorkgroupSizeZ)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup size [${this.limits.maxComputeWorkgroupSizeX}, ${this.limits.maxComputeWorkgroupSizeY}, ${this.limits.maxComputeWorkgroupSizeZ}].`);if(t*n*r>this.limits.maxComputeInvocationsPerWorkgroup)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup invocations ${this.limits.maxComputeInvocationsPerWorkgroup}.`);let i=this.normalizedDispatchGroup[1]===1&&this.normalizedDispatchGroup[2]===1,a=i?`@builtin(global_invocation_id) global_id : vec3, + @builtin(workgroup_id) workgroup_id : vec3, + @builtin(local_invocation_index) local_idx : u32, + @builtin(local_invocation_id) local_id : vec3`:`@builtin(global_invocation_id) global_id : vec3, + @builtin(local_invocation_id) local_id : vec3, + @builtin(local_invocation_index) local_idx : u32, + @builtin(workgroup_id) workgroup_id : vec3, + @builtin(num_workgroups) num_workgroups : vec3`,o=i?`let global_idx = global_id.x; + let workgroup_index = workgroup_id.x;`:`let workgroup_index = workgroup_id.z * num_workgroups[0] * num_workgroups[1] + + workgroup_id.y * num_workgroups[0] + workgroup_id.x; + let global_idx = workgroup_index * ${t*n*r}u + local_idx;`;return`@compute @workgroup_size(${t}, ${n}, ${r}) + fn main(${a}) { + ${o} + `}appendVariableUniforms(e){e.rank!==0&&(e.shape.startsWith(`uniforms.`)&&this.uniforms.push({name:e.shape.replace(`uniforms.`,``),type:`u32`,length:e.rank}),e.strides.startsWith(`uniforms.`)&&this.uniforms.push({name:e.strides.replace(`uniforms.`,``),type:`u32`,length:e.rank}))}declareVariable(e,t){if(e.usage===`internal`)throw Error(`cannot use internal variable with declareVariable(). use registerInternalVariables() instead.`);this.variables.push(e),this.appendVariableUniforms(e);let n=e.usage===`input`?`read`:`read_write`,r=e.usage===`atomicOutput`?`atomic`:e.type.storage;return`@group(0) @binding(${t}) var ${e.name}: array<${r}>;`}declareVariables(...e){return e.map(e=>this.declareVariable(e,this.variableIndex++)).join(` +`)}registerInternalVariable(e){if(e.usage!==`internal`)throw Error(`cannot use input or output variable with registerInternalVariable(). use declareVariables() instead.`);this.internalVariables.push(e),this.appendVariableUniforms(e)}registerInternalVariables(...e){return e.forEach(e=>this.registerInternalVariable(e)),this}registerUniform(e,t,n=1){return this.uniforms.push({name:e,type:t,length:n}),this}registerUniforms(e){return this.uniforms=this.uniforms.concat(e),this}uniformDeclaration(){if(this.uniforms.length===0)return``;let e=[];for(let{name:t,type:n,length:r}of this.uniforms)if(r&&r>4)n===`f16`?e.push(`@align(16) ${t}:array, ${Math.ceil(r/8)}>`):e.push(`${t}:array, ${Math.ceil(r/4)}>`);else{let i=r==null||r===1?n:`vec${r}<${n}>`;e.push(`${t}:${i}`)}return` + struct Uniforms { ${e.join(`, `)} }; + @group(0) @binding(${this.variableIndex}) var uniforms: Uniforms;`}get additionalImplementations(){return this.uniformDeclaration()+this.variables.map(e=>e.impl()).join(` +`)+this.internalVariables.map(e=>e.impl()).join(` +`)}get variablesInfo(){if(this.uniforms.length===0)return;let e=e=>[12,10,1,6][[`u32`,`f16`,`f32`,`i32`].indexOf(e)];return this.uniforms.map(t=>[e(t.type),t.length??1])}},lr=(e,t)=>new cr(e,t)}),ur,dr,fr,X,pr,mr,hr,gr,_r,vr=M(()=>{"use strict";V(),W(),Xn(),Y(),ur=(e,t)=>{if(!e||e.length!==1)throw Error(`Transpose requires 1 input.`);if(t.length!==0&&t.length!==e[0].dims.length)throw Error(`perm size ${t.length} does not match input rank ${e[0].dims.length}`)},dr=(e,t)=>t.length===0?[...Array(e).keys()].reverse():t,fr=(e,t)=>U.sortBasedOnPerm(e,dr(e.length,t)),X=(e,t,n,r)=>{let i=`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { + var a: ${n.type.indices};`;for(let n=0;n{let n=[],r=[];for(let i=0;i{let n=0;for(let r=0;r{let n=e.dataType,r=e.dims.length,i=dr(r,t),a=fr(e.dims,i),o=e.dims,s=a,c=r<2||mr(i,e.dims),l;if(c)return l=e=>{let t=q(`input`,n,o,4),r=J(`output`,n,s,4);return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(t,r)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + output[global_idx] = input[global_idx]; + }`},{name:`TransposeCopy`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64/4)},programUniforms:[{type:12,data:Math.ceil(t/4)}]}},getShaderSource:l};let{newShape:u,newPerm:d}=pr(e.dims,i),f=U.areEqual(d,[2,3,1]),p=U.areEqual(d,[3,1,2]);if(u.length===2||f||p){o=f?[u[0],u[1]*u[2]]:p?[u[0]*u[1],u[2]]:u,s=[o[1],o[0]];let t=16;return l=e=>{let r=q(`a`,n,o.length),i=J(`output`,n,s.length);return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(r,i)} + var tile : array, ${t}>; + ${e.mainStart([t,t,1])} + let stride = (uniforms.output_shape[1] - 1) / ${t} + 1; + let workgroup_id_x = workgroup_index % stride; + let workgroup_id_y = workgroup_index / stride; + let input_col = workgroup_id_y * ${t}u + local_id.x; + let input_row = workgroup_id_x * ${t}u + local_id.y; + if (input_row < uniforms.a_shape[0] && input_col < uniforms.a_shape[1]) { + tile[local_id.y][local_id.x] = ${r.getByIndices(`${r.type.indices}(input_row, input_col)`)}; + } + workgroupBarrier(); + + let output_col = workgroup_id_x * ${t}u + local_id.x; + let output_row = workgroup_id_y * ${t}u + local_id.y; + if (output_row < uniforms.output_shape[0] && output_col < uniforms.output_shape[1]) { + ${i.setByIndices(`${i.type.indices}(output_row, output_col)`,`tile[local_id.x][local_id.y]`)} + } + }`},{name:`TransposeShared`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let n=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(s[1]/t),y:Math.ceil(s[0]/t)},programUniforms:[{type:12,data:n},...G(o,s)]}},getShaderSource:l}}return l=e=>{let t=q(`a`,n,o.length),a=J(`output`,n,s.length);return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(t,a)} + + ${X(i,r,t,a)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let indices = ${a.offsetToIndices(`global_idx`)}; + let aIndices = perm(indices); + + ${a.setByOffset(`global_idx`,t.getByIndices(`aIndices`))} + }`},{name:`Transpose`,shaderCache:{hint:`${t}`,inputDependencies:[`rank`]},getRunData:()=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:[{type:12,data:t},...G(o,s)]}},getShaderSource:l}},gr=(e,t)=>{ur(e.inputs,t.perm),e.compute(hr(e.inputs[0],t.perm))},_r=e=>Yn({perm:e.perm})}),yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,Lr,Rr,zr,Br=M(()=>{"use strict";V(),W(),Y(),pi(),vr(),yr={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate * candidate`,logSumExp:`bestValue + exp(candidate)`,l1:`bestValue + abs(candidate)`,l2:`bestValue + candidate * candidate`,logSum:`bestValue + candidate`},br={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate`,logSumExp:`bestValue + candidate`,l1:`bestValue + candidate`,l2:`bestValue + candidate`,logSum:`bestValue + candidate`},xr={max:`_A[offset]`,min:`_A[offset]`,mean:`0`,sum:`0`,prod:`1`,sumSquare:`0`,logSumExp:`0`,l1:`0`,l2:`0`,logSum:`0`},Sr={max:`bestValue`,min:`bestValue`,sum:`bestValue`,prod:`bestValue`,sumSquare:`bestValue`,logSumExp:`log(bestValue)`,l1:`bestValue`,l2:`sqrt(bestValue)`,logSum:`log(bestValue)`},Cr=(e,t)=>{let n=[];for(let r=t-e;r{let n=[],r=e.length;for(let i=0;ie[t]);return[n,i]},Tr=(e,t)=>{let n=e.length+t.length,r=[],i=0;for(let a=0;a{for(let n=0;n{let n=[];if(!Er(e,t)){for(let r=0;rn.push(e))}return n},Or=(e,t,n,r,i,a,o)=>{let s=n[0].dims,c=U.size(a),l=U.size(o),u=q(`_A`,n[0].dataType,s),d=J(`output`,i,a),f=64;c===1&&(f=256);let p=` + var aBestValues : array; + `,m=e=>` + ${e.registerUniform(`reduceSize`,`u32`).declareVariables(u,d)} + ${p} + fn DIV_CEIL(a : u32, b : u32) -> u32 { + return ((a - 1u) / b + 1u); + } + ${e.mainStart(f)} + + let outputIndex = global_idx / ${f}; + let offset = outputIndex * uniforms.reduceSize; + + var bestValue = f32(${xr[r]}); + let Length = uniforms.reduceSize; + for (var k = local_idx; k < Length; k = k + ${f}) { + let candidate = f32(${u.getByOffset(`offset + k`)}); + bestValue = ${yr[r]}; + } + aBestValues[local_idx] = bestValue; + workgroupBarrier(); + + var reduceSize = min(Length, ${f}u); + for (var currentSize = reduceSize / 2u; reduceSize > 1u; + currentSize = reduceSize / 2u) { + let interval = DIV_CEIL(reduceSize, 2u); + if (local_idx < currentSize) { + let candidate = aBestValues[local_idx + interval]; + bestValue = ${br[r]}; + aBestValues[local_idx] = bestValue; + } + reduceSize = interval; + workgroupBarrier(); + } + + if (local_idx == 0u) { + ${d.setByOffset(`outputIndex`,`${r===`mean`?`${d.type.storage}(bestValue / f32(uniforms.reduceSize))`:`${d.type.storage}(${Sr[r]})`}`)}; + } + }`;return{name:e,shaderCache:{hint:`${t};${f}`,inputDependencies:[`type`]},getShaderSource:m,getRunData:()=>({outputs:[{dims:a,dataType:i}],dispatchGroup:{x:c},programUniforms:[{type:12,data:l}]})}},kr=(e,t,n,r)=>{let i=e.inputs.length===1?n:Wr(e.inputs,n),a=i.axes;a.length===0&&!i.noopWithEmptyAxes&&(a=e.inputs[0].dims.map((e,t)=>t));let o=U.normalizeAxes(a,e.inputs[0].dims.length),s=o,c=e.inputs[0],l=Dr(s,e.inputs[0].dims.length);l.length>0&&(c=e.compute(hr(e.inputs[0],l),{inputs:[0],outputs:[-1]})[0],s=Cr(s.length,c.dims.length));let[u,d]=wr(c.dims,s),f=u;i.keepDims&&(f=Tr(u,o)),e.compute(Or(t,i.cacheKey,[c],r,e.inputs[0].dataType,f,d),{inputs:[c]})},Ar=(e,t)=>{kr(e,`ReduceMeanShared`,t,`mean`)},jr=(e,t)=>{kr(e,`ReduceL1Shared`,t,`l1`)},Mr=(e,t)=>{kr(e,`ReduceL2Shared`,t,`l2`)},Nr=(e,t)=>{kr(e,`ReduceLogSumExpShared`,t,`logSumExp`)},Pr=(e,t)=>{kr(e,`ReduceMaxShared`,t,`max`)},Fr=(e,t)=>{kr(e,`ReduceMinShared`,t,`min`)},Ir=(e,t)=>{kr(e,`ReduceProdShared`,t,`prod`)},Lr=(e,t)=>{kr(e,`ReduceSumShared`,t,`sum`)},Rr=(e,t)=>{kr(e,`ReduceSumSquareShared`,t,`sumSquare`)},zr=(e,t)=>{kr(e,`ReduceLogSumShared`,t,`logSum`)}}),Vr,Hr,Ur,Wr,Gr,Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi=M(()=>{"use strict";V(),W(),Xn(),Y(),Br(),Vr=e=>{if(!e||e.length===0||e.length>2)throw Error(`Reduce op requires 1 or 2 inputs.`);if(e.length===2&&e[1].dims.length!==1)throw Error(`Invalid axes input dims.`)},Hr=e=>[``,``,`var value = ${e.getByIndices(`input_indices`)};`,``],Ur=(e,t,n,r,i,a,o=!1,s=!1)=>{let c=[],l=n[0].dims,u=l.length,d=U.normalizeAxes(i,u),f=!s&&d.length===0;l.forEach((e,t)=>{f||d.indexOf(t)>=0?o&&c.push(1):c.push(e)});let p=c.length,m=U.size(c);return{name:e,shaderCache:t,getShaderSource:e=>{let t=[],i=q(`_A`,n[0].dataType,u),s=J(`output`,a,p),c=r(i,s,d),m=c[2];for(let e=0,n=0;e=0?(o&&n++,m=`for(var j${e}: u32 = 0; j${e} < ${l[e]}; j${e}++) { + ${c[2].includes(`last_index`)?`let last_index = j${e};`:``} + ${i.indicesSet(`input_indices`,e,`j${e}`)} + ${m} + }`):(t.push(`${i.indicesSet(`input_indices`,e,s.indicesGet(`output_indices`,n))};`),n++);return` + + ${e.registerUniform(`output_size`,`u32`).declareVariables(i,s)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + var input_indices: ${i.type.indices}; + let output_indices = ${s.offsetToIndices(`global_idx`)}; + + ${t.join(` +`)} + ${c[0]} // init ops for reduce max/min + ${c[1]} + ${m} + ${c[3]} + ${c.length===4?s.setByOffset(`global_idx`,`value`):c.slice(4).join(` +`)} + }`},getRunData:()=>({outputs:[{dims:c,dataType:a}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:[{type:12,data:m},...G(l,c)]})}},Wr=(e,t)=>{let n=[];return e[1].dims[0]>0&&e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),Yn({axes:n,keepDims:t.keepDims,noopWithEmptyAxes:t.noopWithEmptyAxes})},Gr=(e,t,n,r)=>{let i=e.inputs,a=i.length===1?n:Wr(i,n);e.compute(Ur(t,{hint:a.cacheKey,inputDependencies:[`rank`]},[i[0]],a.noopWithEmptyAxes&&a.axes.length===0?Hr:r,a.axes,i[0].dataType,a.keepDims,a.noopWithEmptyAxes),{inputs:[0]})},Kr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceLogSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,`value = log(value);`])},qr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceL1`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += abs(${e.getByIndices(`input_indices`)});`,``])},Jr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceL2`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += (t * t);`,`value = sqrt(value);`])},Yr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceLogSumExp`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += exp(${e.getByIndices(`input_indices`)});`,`value = log(value);`])},Xr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceMax`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(e.indicesSet(`input_indices`,t,0));return[`${r.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = max(value, ${e.getByIndices(`input_indices`)});`,``]})},Zr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceMean`,t,(t,n,r)=>{let i=1;for(let n=0;n=0||r.length===0)&&(i*=e.inputs[0].dims[n]);return[`var sum = f32(0);`,``,`sum += f32(${t.getByIndices(`input_indices`)});`,`let value = ${n.type.value}(sum / ${i});`]})},Qr=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceMin`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(`input_indices[${t}] = 0;`);return[`${r.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = min(value, ${e.getByIndices(`input_indices`)});`,``]})},$r=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceProd`,t,(e,t)=>[`var value = ${t.type.storage}(1);`,``,`value *= ${e.getByIndices(`input_indices`)};`,``])},ei=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,``])},ti=(e,t)=>{Vr(e.inputs),Gr(e,`ReduceSumSquare`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += t * t;`,``])},ni=(e,t,n)=>{if(t.length===0)return n;let r=1,i=1;for(let n=0;n1024},ri=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Zr(e,t):Ar(e,t)},ii=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?qr(e,t):jr(e,t)},ai=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Jr(e,t):Mr(e,t)},oi=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Yr(e,t):Nr(e,t)},si=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Xr(e,t):Pr(e,t)},ci=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Qr(e,t):Fr(e,t)},li=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?$r(e,t):Ir(e,t)},ui=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ei(e,t):Lr(e,t)},di=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ti(e,t):Rr(e,t)},fi=(e,t)=>{ni(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Kr(e,t):zr(e,t)}}),mi,hi,gi,_i,vi=M(()=>{"use strict";V(),Xn(),pi(),mi=e=>{if(!e||e.length===0||e.length>2)throw Error(`ArgMinMaxOp op requires 1 or 2 inputs.`);if(e[0].dataType!==1)throw Error(`Invalid input type.`)},hi=(e,t)=>{mi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)}; +var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`<=`:`<`} value) { + value = ${e.getByIndices(`input_indices`)}; + best_index = i32(last_index); + }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Ur(`ArgMin`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},gi=(e,t)=>{mi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` +`)}`,`var value = ${e.getByIndices(`input_indices`)}; +var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`>=`:`>`} value) { + value = ${e.getByIndices(`input_indices`)}; + best_index = i32(last_index); + }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Ur(`argMax`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},_i=e=>Yn(e)}),yi,bi,xi,Si,Ci,wi,Ti,Ei,Di=M(()=>{"use strict";V(),W(),Ln(),Y(),yi=(e,t)=>{let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5];if(o&&s)throw Error(`Attention cannot have both past and attention_bias`);if(n.dims.length!==3)throw Error(`Input "input" must have 3 dimensions`);let c=n.dims[0],l=n.dims[1],u=n.dims[2];if(i.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimensions`);if(r.dims.length!==2)throw Error(`Input "weights" is expected to have 2 dimensions`);if(r.dims[0]!==u)throw Error(`Input 1 dimension 0 should have same length as dimension 2 of input 0`);if(i.dims[0]!==r.dims[1])throw Error(`Input "bias" dimension 0 should have same length as dimension 1 of input "weights"`);let d=i.dims[0]/3,f=d,p=f;if(t.qkvHiddenSizes.length>0){if(t.qkvHiddenSizes.length!==3)throw Error(`qkv_hidden_sizes attribute should have 3 elements`);for(let e of t.qkvHiddenSizes)if(e%t.numHeads!==0)throw Error(`qkv_hidden_sizes should be divisible by num_heads`);d=t.qkvHiddenSizes[0],f=t.qkvHiddenSizes[1],p=t.qkvHiddenSizes[2]}let m=l;if(d!==f)throw Error(`qkv_hidden_sizes first element should be same as the second`);if(i.dims[0]!==d+f+p)throw Error(`Input "bias" dimension 0 should have same length as sum of Q/K/V hidden sizes`);let h=0;if(o){if(f!==p)throw Error(`Input "past" expect k_hidden_size == v_hidden_size`);if(o.dims.length!==5)throw Error(`Input "past" must have 5 dimensions`);if(o.dims[0]!==2)throw Error(`Input "past" first dimension must be 2`);if(o.dims[1]!==c)throw Error(`Input "past" second dimension must be batch_size`);if(o.dims[2]!==t.numHeads)throw Error(`Input "past" third dimension must be num_heads`);if(o.dims[4]!==f/t.numHeads)throw Error(`Input "past" fifth dimension must be k_hidden_size / num_heads`);t.pastPresentShareBuffer||(h=o.dims[3])}let g=m+h,_=-1,v=0;if(a)throw Error(`Mask not supported`);if(o)throw Error(`past is not supported`);if(s){if(s.dims.length!==4)throw Error(`Input "attention_bias" must have 4 dimensions`);if(s.dims[0]!==c||s.dims[1]!==t.numHeads||s.dims[2]!==l||s.dims[3]!==g)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:c,sequenceLength:l,pastSequenceLength:h,kvSequenceLength:m,totalSequenceLength:g,maxSequenceLength:_,inputHiddenSize:u,hiddenSize:d,vHiddenSize:p,headSize:Math.floor(d/t.numHeads),vHeadSize:Math.floor(p/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:!1,qkvFormat:1}},bi=(e,t,n)=>t&&e?` + let total_sequence_length_input = u32(${t.getByOffset(`0`)}); + let present_sequence_length = max(total_sequence_length_input, uniforms.past_sequence_length); + let is_subsequent_prompt: bool = sequence_length > 1 && sequence_length != total_sequence_length_input; + let is_first_prompt: bool = is_subsequent_prompt == false && sequence_length == total_sequence_length_input; + total_sequence_length = u32(${e?.getByOffset(`batchIdx`)}) + 1; + var past_sequence_length: u32 = 0; + if (is_first_prompt == false) { + past_sequence_length = total_sequence_length - sequence_length; + } + `:` + ${n?`let past_sequence_length = uniforms.past_sequence_length`:``}; + let present_sequence_length = total_sequence_length; + `,xi=(e,t,n,r,i,a,o,s)=>{let c=tr(o?1:a),l=64,u=a/c;u{let n=J(`x`,e.dataType,e.dims,c),r=[n],i=o?q(`seq_lens`,o.dataType,o.dims):void 0;i&&r.push(i);let a=s?q(`total_sequence_length_input`,s.dataType,s.dims):void 0;a&&r.push(a);let u=er(e.dataType),d=[{name:`batch_size`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`total_sequence_length`,type:`u32`},{name:`elements_per_thread`,type:`u32`}];return` + var thread_max: array; + var thread_sum: array; + ${t.registerUniforms(d).declareVariables(...r)} + ${t.mainStart([l,1,1])} + let batchIdx = workgroup_id.z / uniforms.num_heads; + let headIdx = workgroup_id.z % uniforms.num_heads; + let sequence_length = uniforms.sequence_length; + var total_sequence_length = uniforms.total_sequence_length; + ${bi(i,a,!1)} + let local_offset = local_idx * uniforms.elements_per_thread; + let offset = (global_idx / ${l}) * uniforms.total_sequence_length + local_offset; + let seq_causal_length = ${o?`u32(past_sequence_length + workgroup_id.y + 1)`:`total_sequence_length`}; + var thread_max_vector = ${m}(-3.402823e+38f); + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + thread_max_vector = max(${m}(x[offset + i]), thread_max_vector); + } + thread_max[local_idx] = ${(()=>{switch(c){case 1:return`thread_max_vector`;case 2:return`max(thread_max_vector.x, thread_max_vector.y)`;case 4:return`max(max(thread_max_vector.x, thread_max_vector.y), max(thread_max_vector.z, thread_max_vector.w))`;default:throw Error(`Unsupported components: ${c}`)}})()}; + workgroupBarrier(); + + var max_value = f32(-3.402823e+38f); + for (var i = 0u; i < ${l}; i++) { + max_value = max(thread_max[i], max_value); + } + + var sum_vector = ${m}(0); + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + sum_vector += exp(${m}(x[offset + i]) - max_value); + } + thread_sum[local_idx] = ${(()=>{switch(c){case 1:return`sum_vector`;case 2:return`sum_vector.x + sum_vector.y`;case 4:return`sum_vector.x + sum_vector.y + sum_vector.z + sum_vector.w`;default:throw Error(`Unsupported components: ${c}`)}})()}; + workgroupBarrier(); + + var sum: f32 = 0; + for (var i = 0u; i < ${l}; i++) { + sum += thread_sum[i]; + } + + if (sum == 0) { + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + x[offset + i] = ${n.type.value}(${u}(1.0) / ${u}(seq_causal_length)); + } + } else { + for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { + var f32input = ${m}(x[offset + i]); + x[offset + i] = ${n.type.value}(exp(f32input - max_value) / sum); + } + } + ${o?` + for (var total_seq_id: u32 = seq_causal_length; total_seq_id + local_offset < uniforms.total_sequence_length; total_seq_id++) { + x[offset + total_seq_id] = ${n.type.value}(${u}(0)); + }`:``}; + }`};return{name:`AttentionProbsSoftmax`,shaderCache:{hint:`${l};${p};${c}`,inputDependencies:h},getShaderSource:g,getRunData:()=>({outputs:[],dispatchGroup:{x:1,y:i,z:t*n},programUniforms:f})}},Si=(e,t,n,r,i,a,o,s,c)=>{let l=o+a.kvSequenceLength,u=[a.batchSize,a.numHeads,a.sequenceLength,l],d=e>1&&r,f=a.kvNumHeads?a.kvNumHeads:a.numHeads,p=d?[a.batchSize,f,l,a.headSize]:void 0,m=a.nReps?a.nReps:1,h=a.scale===0?1/Math.sqrt(a.headSize):a.scale,g=tr(a.headSize),_=a.headSize/g,v=12,y={x:Math.ceil(l/v),y:Math.ceil(a.sequenceLength/v),z:a.batchSize*a.numHeads},b=[{type:12,data:a.sequenceLength},{type:12,data:_},{type:12,data:l},{type:12,data:a.numHeads},{type:12,data:a.headSize},{type:1,data:h},{type:12,data:o},{type:12,data:a.kvSequenceLength},{type:12,data:m}],x=d&&r&&U.size(r.dims)>0,S=[`type`,`type`];x&&S.push(`type`),i&&S.push(`type`),s&&S.push(`type`),c&&S.push(`type`);let C=[{dims:u,dataType:t.dataType,gpuDataType:0}];d&&C.push({dims:p,dataType:t.dataType,gpuDataType:0});let w=e=>{let a=q(`q`,t.dataType,t.dims,g),o=q(`key`,n.dataType,n.dims,g),l=[a,o];if(x){let e=q(`past_key`,r.dataType,r.dims,g);l.push(e)}i&&l.push(q(`attention_bias`,i.dataType,i.dims));let f=s?q(`seq_lens`,s.dataType,s.dims):void 0;f&&l.push(f);let h=c?q(`total_sequence_length_input`,c.dataType,c.dims):void 0;h&&l.push(h);let _=J(`output`,t.dataType,u),y=[_];d&&y.push(J(`present_key`,t.dataType,p,g));let b=er(1,g),S=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`alpha`,type:`f32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` + const TILE_SIZE = ${v}u; + + var tileQ: array<${a.type.storage}, ${v*v}>; + var tileK: array<${a.type.storage}, ${v*v}>; + ${e.registerUniforms(S).declareVariables(...l,...y)} + ${e.mainStart([v,v,1])} + // x holds the N and y holds the M + let headIdx = workgroup_id.z % uniforms.num_heads; + let kvHeadIdx = ${m===1?`headIdx`:`headIdx / uniforms.n_reps`}; + let kv_num_heads = ${m===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; + let batchIdx = workgroup_id.z / uniforms.num_heads; + let m = workgroup_id.y * TILE_SIZE; + let n = workgroup_id.x * TILE_SIZE; + let sequence_length = uniforms.M; + var total_sequence_length = uniforms.N; + ${bi(f,h,!0)} + let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; + let qOffset = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; + ${x&&d?`let pastKeyOffset = absKvHeadIdx * uniforms.past_sequence_length * uniforms.K;`:``}; + let kOffset = absKvHeadIdx * uniforms.kv_sequence_length * uniforms.K; + ${d?`let presentKeyOffset = absKvHeadIdx * uniforms.N * uniforms.K;`:``} + var value = ${b}(0); + for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { + if (global_id.y < uniforms.M && w + local_id.x < uniforms.K) { + tileQ[TILE_SIZE * local_id.y + local_id.x] = q[qOffset + local_id.y * uniforms.K + w + local_id.x]; + } + if (n + local_id.y < uniforms.N && w + local_id.x < uniforms.K) { + var idx = TILE_SIZE * local_id.y + local_id.x; + ${x&&d?` + if (n + local_id.y < past_sequence_length) { + tileK[idx] = past_key[pastKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; + } else if (n + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { + tileK[idx] = key[kOffset + (n + local_id.y - past_sequence_length) * uniforms.K + w + local_id.x]; + }`:` + if (n + local_id.y < uniforms.kv_sequence_length) { + tileK[idx] = key[kOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; + }`} + ${d?`if (n + local_id.y < present_sequence_length) { + present_key[presentKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x] = tileK[idx]; + }`:``} + } + workgroupBarrier(); + + for (var k: u32 = 0u; k < TILE_SIZE && w+k < uniforms.K; k++) { + value += ${b}(tileQ[TILE_SIZE * local_id.y + k] * tileK[TILE_SIZE * local_id.x + k]); + } + + workgroupBarrier(); + } + + if (global_id.y < uniforms.M && global_id.x < total_sequence_length) { + let headOffset = workgroup_id.z * uniforms.M * uniforms.N; + let outputIdx = headOffset + global_id.y * uniforms.N + global_id.x; + var sum: f32 = ${(()=>{switch(g){case 1:return`value`;case 2:return`value.x + value.y`;case 4:return`value.x + value.y + value.z + value.w`;default:throw Error(`Unsupported components: ${g}`)}})()}; + output[outputIdx] = ${_.type.value} (sum * uniforms.alpha) + ${i?`attention_bias[outputIdx]`:`0.0`}; + } + }`};return{name:`AttentionProbs`,shaderCache:{hint:`${g};${i!==void 0};${r!==void 0};${e}`,inputDependencies:S},getRunData:()=>({outputs:C,dispatchGroup:y,programUniforms:b}),getShaderSource:w}},Ci=(e,t,n,r,i,a,o=void 0,s=void 0)=>{let c=a+i.kvSequenceLength,l=i.nReps?i.nReps:1,u=i.vHiddenSize*l,d=e>1&&r,f=i.kvNumHeads?i.kvNumHeads:i.numHeads,p=d?[i.batchSize,f,c,i.headSize]:void 0,m=[i.batchSize,i.sequenceLength,u],h=12,g={x:Math.ceil(i.vHeadSize/h),y:Math.ceil(i.sequenceLength/h),z:i.batchSize*i.numHeads},_=[{type:12,data:i.sequenceLength},{type:12,data:c},{type:12,data:i.vHeadSize},{type:12,data:i.numHeads},{type:12,data:i.headSize},{type:12,data:u},{type:12,data:a},{type:12,data:i.kvSequenceLength},{type:12,data:l}],v=d&&r&&U.size(r.dims)>0,y=[`type`,`type`];v&&y.push(`type`),o&&y.push(`type`),s&&y.push(`type`);let b=[{dims:m,dataType:t.dataType,gpuDataType:0}];d&&b.push({dims:p,dataType:t.dataType,gpuDataType:0});let x=e=>{let i=q(`probs`,t.dataType,t.dims),a=q(`v`,n.dataType,n.dims),c=[i,a];v&&c.push(q(`past_value`,r.dataType,r.dims));let u=o?q(`seq_lens`,o.dataType,o.dims):void 0;o&&c.push(u);let f=s?q(`total_sequence_length_input`,s.dataType,s.dims):void 0;s&&c.push(f);let g=[J(`output`,t.dataType,m)];d&&g.push(J(`present_value`,t.dataType,p));let _=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`v_hidden_size`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` + const TILE_SIZE = ${h}u; + var tileQ: array<${i.type.value}, ${h*h}>; + var tileV: array<${i.type.value}, ${h*h}>; + ${e.registerUniforms(_).declareVariables(...c,...g)} + ${e.mainStart([h,h,1])} + let headIdx = workgroup_id.z % uniforms.num_heads; + let batchIdx = workgroup_id.z / uniforms.num_heads; + let kvHeadIdx = ${l===1?`headIdx`:`headIdx / uniforms.n_reps`}; + let kv_num_heads = ${l===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; + let m = global_id.y; + let n = global_id.x; + let sequence_length = uniforms.M; + var total_sequence_length = uniforms.K; + ${bi(u,f,!0)} + let offsetA = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; + let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; // kvHeadIdx is relative to the batch + ${v&&d?`let pastValueOffset = absKvHeadIdx * uniforms.N * uniforms.past_sequence_length + n;`:``}; + let vOffset = absKvHeadIdx * uniforms.N * uniforms.kv_sequence_length + n; + ${d?`let presentValueOffset = absKvHeadIdx * uniforms.N * uniforms.K + n;`:``} + var value = ${i.type.storage}(0); + for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { + if (m < uniforms.M && w + local_id.x < uniforms.K) { + tileQ[TILE_SIZE * local_id.y + local_id.x] = probs[offsetA + w + local_id.x]; + } + if (n < uniforms.N && w + local_id.y < uniforms.K) { + var idx = TILE_SIZE * local_id.y + local_id.x; + ${v&&d?` + if (w + local_id.y < past_sequence_length) { + tileV[idx] = past_value[pastValueOffset + (w + local_id.y) * uniforms.N]; + } else if (w + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { + tileV[idx] = v[vOffset + (w + local_id.y - past_sequence_length) * uniforms.N]; + } + `:` + if (w + local_id.y < uniforms.kv_sequence_length) { + tileV[idx] = v[vOffset + (w + local_id.y) * uniforms.N]; + }`} + ${d?` + if (w + local_id.y < present_sequence_length) { + present_value[presentValueOffset + (w + local_id.y) * uniforms.N] = tileV[idx]; + }`:``} + } + workgroupBarrier(); + for (var k: u32 = 0u; k < TILE_SIZE && w+k < total_sequence_length; k++) { + value += tileQ[TILE_SIZE * local_id.y + k] * tileV[TILE_SIZE * k + local_id.x]; + } + workgroupBarrier(); + } + + // we need to transpose output from BNSH_v to BSND_v + if (m < uniforms.M && n < uniforms.N) { + let outputIdx = batchIdx * uniforms.M * uniforms.v_hidden_size + m * uniforms.v_hidden_size + + headIdx * uniforms.N + n; + output[outputIdx] = value; + } + }`};return{name:`AttentionScore`,shaderCache:{hint:`${r!==void 0};${e}`,inputDependencies:y},getRunData:()=>({outputs:b,dispatchGroup:g,programUniforms:_}),getShaderSource:x}},wi=(e,t,n,r,i,a,o,s,c,l,u=void 0,d=void 0)=>{let f=Math.min(e.outputCount,1+(o?1:0)+(s?1:0)),p=f>1?l.pastSequenceLength:0,m=p+l.kvSequenceLength,h=c&&U.size(c.dims)>0?c:void 0,g=[t,n];f>1&&o&&U.size(o.dims)>0&&g.push(o),h&&g.push(h),u&&g.push(u),d&&g.push(d);let _=e.compute(Si(f,t,n,o,h,l,p,u,d),{inputs:g,outputs:f>1?[-1,1]:[-1]})[0];e.compute(xi(_,l.batchSize,l.numHeads,p,l.sequenceLength,m,u,d),{inputs:u&&d?[_,u,d]:[_],outputs:[]});let v=[_,r];f>1&&s&&U.size(s.dims)>0&&v.push(s),u&&v.push(u),d&&v.push(d),e.compute(Ci(f,_,r,s,l,p,u,d),{inputs:v,outputs:f>1?[0,2]:[0]})},Ti=(e,t)=>{let n=[t.batchSize,t.numHeads,t.sequenceLength,t.headSize],r=t.sequenceLength,i=t.inputHiddenSize,a=t.headSize,o=12,s={x:Math.ceil(t.headSize/o),y:Math.ceil(t.sequenceLength/o),z:t.batchSize*t.numHeads},c=[e.inputs[0],e.inputs[1],e.inputs[2]],l=[{type:12,data:r},{type:12,data:i},{type:12,data:a},{type:12,data:t.numHeads},{type:12,data:t.headSize},{type:12,data:t.hiddenSize},{type:12,data:t.hiddenSize+t.hiddenSize+t.vHiddenSize}],u=e=>{let t=J(`output_q`,c[0].dataType,n),r=J(`output_k`,c[0].dataType,n),i=J(`output_v`,c[0].dataType,n),a=q(`input`,c[0].dataType,c[0].dims),s=q(`weight`,c[1].dataType,c[1].dims),l=q(`bias`,c[2].dataType,c[2].dims),u=a.type.storage,d=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`ldb`,type:`u32`}];return` + const TILE_SIZE = ${o}u; + var tileInput: array<${u}, ${o*o}>; + var tileWeightQ: array<${u}, ${o*o}>; + var tileWeightK: array<${u}, ${o*o}>; + var tileWeightV: array<${u}, ${o*o}>; + ${e.registerUniforms(d).declareVariables(a,s,l,t,r,i)} + ${e.mainStart([o,o,1])} + let batchIndex = workgroup_id.z / uniforms.num_heads; + let headNumber = workgroup_id.z % uniforms.num_heads; + let m = global_id.y; + let n = global_id.x; + + let inputOffset = batchIndex * (uniforms.M * uniforms.K) + m * uniforms.K; + let biasOffsetQ = headNumber * uniforms.head_size; + let biasOffsetK = uniforms.hidden_size + biasOffsetQ; + let biasOffsetV = uniforms.hidden_size + biasOffsetK; + + var valueQ = ${u}(0); + var valueK = ${u}(0); + var valueV = ${u}(0); + for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { + if (m < uniforms.M && w + local_id.x < uniforms.K) { + tileInput[TILE_SIZE * local_id.y + local_id.x] = input[inputOffset + w + local_id.x]; + } + if (n < uniforms.N && w + local_id.y < uniforms.K) { + let offset = n + (w + local_id.y) * uniforms.ldb; + tileWeightQ[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetQ + offset]; + tileWeightK[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetK + offset]; + tileWeightV[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetV + offset]; + } + workgroupBarrier(); + for (var k: u32 = 0u; k({outputs:[{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0}],dispatchGroup:s,programUniforms:l}),getShaderSource:u},{inputs:c,outputs:[-1,-1,-1]})},Ei=(e,t)=>{let n=yi(e.inputs,t),[r,i,a]=Ti(e,n);return wi(e,r,i,a,e.inputs[4],void 0,void 0,void 0,e.inputs[5],n)}}),Oi,ki,Ai,ji,Mi=M(()=>{"use strict";$e(),V(),W(),Xn(),Y(),Oi=(e,t)=>{if(!e||e.length!==5)throw Error(`BatchNormalization requires 5 inputs`);let n=(e,t,n)=>{let r=t.length;if(r!==e.length)throw Error(`${n}: num dimensions != ${r}`);t.forEach((t,r)=>{if(t!==e[r])throw Error(`${n}: dim[${r}] do not match`)})};if(e[0].dims.length>1){let r=t.format===`NHWC`?t.spatial?e[0].dims.slice(-1):e[0].dims.slice(-1).concat(e[0].dims.slice(1,e[0].dims.length-1)):e[0].dims.slice(1,t.spatial?2:void 0);n(e[1].dims,r,`Invalid input scale`),n(e[2].dims,r,`Invalid input B`),n(e[3].dims,r,`Invalid input mean`),n(e[4].dims,r,`Invalid input var`)}else n(e[1].dims,[1],`Invalid input scale`),n(e[2].dims,[1],`Invalid input B`),n(e[3].dims,[1],`Invalid input mean`),n(e[4].dims,[1],`Invalid input var`)},ki=(e,t)=>{let{epsilon:n,spatial:r,format:i}=t,a=e[0].dims,o=r?tr(a[a.length-1]):1,s=i===`NHWC`&&a.length>1?o:1,c=U.size(a)/o,l=r,u=l?a.length:a,d=q(`x`,e[0].dataType,e[0].dims,o),f=q(`scale`,e[1].dataType,e[1].dims,s),p=q(`bias`,e[2].dataType,e[2].dims,s),m=q(`inputMean`,e[3].dataType,e[3].dims,s),h=q(`inputVar`,e[4].dataType,e[4].dims,s),g=J(`y`,e[0].dataType,u,o),_=()=>{let e=``;if(r)e=`let cOffset = ${a.length===1?`0u`:i===`NHWC`?`outputIndices[${a.length-1}] / ${o}`:`outputIndices[1]`};`;else if(i===`NCHW`)e=` + ${g.indicesSet(`outputIndices`,`0`,`0`)} + let cOffset = ${g.indicesToOffset(`outputIndices`)};`;else{e=`var cIndices = ${f.type.indices}(0); + cIndices[0] = outputIndices[${a.length-1}];`;for(let t=1;t` + const epsilon = ${n}; + ${e.registerUniform(`outputSize`,`u32`).declareVariables(d,f,p,m,h,g)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + var outputIndices = ${g.offsetToIndices(`global_idx * ${o}`)}; + ${_()} + let scale = ${f.getByOffset(`cOffset`)}; + let bias = ${p.getByOffset(`cOffset`)}; + let inputMean = ${m.getByOffset(`cOffset`)}; + let inputVar = ${h.getByOffset(`cOffset`)}; + let x = ${d.getByOffset(`global_idx`)}; + let value = (x - inputMean) * inverseSqrt(inputVar + epsilon) * scale + bias; + ${g.setByOffset(`global_idx`,`value`)} + }`;return{name:`BatchNormalization`,shaderCache:{hint:`${t.epsilon}_${t.format}_${r}_${o}`,inputDependencies:l?[`rank`,`type`,`type`,`type`,`type`]:void 0},getShaderSource:v,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l?[{type:12,data:c},...G(a)]:[{type:12,data:c}]})}},Ai=e=>Yn(e),ji=(e,t)=>{let{inputs:n,outputCount:r}=e,i=Ai({...t,outputCount:r});if(L.webgpu.validateInputContent&&Oi(n,i),t.trainingMode)throw Error(`BatchNormalization trainingMode is not supported yet.`);e.compute(ki(n,i))}}),Ni,Pi,Fi,Ii=M(()=>{"use strict";W(),Y(),Ni=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![320,640,1280].includes(e[0].dims[2]))throw Error(`number of channels should be 320, 640 or 1280`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},Pi=e=>{let t=e[0].dims,n=e[0].dims[2],r=U.size(t)/4,i=e[0].dataType,a=q(`input`,i,t,4),o=q(`bias`,i,[n],4),s=q(`residual`,i,t,4),c=J(`output`,i,t,4);return{name:`BiasAdd`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(r/64)}}),getShaderSource:e=>` + const channels = ${n}u / 4; + ${e.declareVariables(a,o,s,c)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(r)} + let value = ${a.getByOffset(`global_idx`)} + + ${o.getByOffset(`global_idx % channels`)} + ${s.getByOffset(`global_idx`)}; + ${c.setByOffset(`global_idx`,`value`)} + }`}},Fi=e=>{Ni(e.inputs),e.compute(Pi(e.inputs))}}),Li,Ri,zi,Bi,Vi,Hi,Ui,Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,$i,ea,ta,na,ra,ia,aa,oa,sa,ca,la,ua,da,fa,pa,ma,ha,ga,_a,va,ya,ba,xa,Sa,Ca,wa,Ta,Ea,Da,Oa=M(()=>{"use strict";V(),W(),Xn(),Y(),Li=(e,t,n,r,i,a,o)=>{let s=Math.ceil(t/4),c=``;c=typeof i==`string`?`${i}(a)`:i(`a`);let l=q(`inputData`,n,[s],4),u=J(`outputData`,r,[s],4),d=[{name:`vec_size`,type:`u32`}];return o&&d.push(...o),` + ${e.registerUniforms(d).declareVariables(l,u)} + + ${a??``} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + + let a = ${l.getByOffset(`global_idx`)}; + ${u.setByOffset(`global_idx`,c)} + }`},Ri=(e,t,n,r,i,a=e.dataType,o,s)=>{let c=[{type:12,data:Math.ceil(U.size(e.dims)/4)}];return o&&c.push(...o),{name:t,shaderCache:{hint:i,inputDependencies:[`type`]},getShaderSource:t=>Li(t,U.size(e.dims),e.dataType,a,n,r,s),getRunData:t=>({outputs:[{dims:e.dims,dataType:a}],dispatchGroup:{x:Math.ceil(U.size(t[0].dims)/64/4)},programUniforms:c})}},zi=e=>{e.compute(Ri(e.inputs[0],`Abs`,`abs`))},Bi=e=>{e.compute(Ri(e.inputs[0],`Acos`,`acos`))},Vi=e=>{e.compute(Ri(e.inputs[0],`Acosh`,`acosh`))},Hi=e=>{e.compute(Ri(e.inputs[0],`Asin`,`asin`))},Ui=e=>{e.compute(Ri(e.inputs[0],`Asinh`,`asinh`))},Wi=e=>{e.compute(Ri(e.inputs[0],`Atan`,`atan`))},Gi=e=>{e.compute(Ri(e.inputs[0],`Atanh`,`atanh`))},Ki=e=>Yn(e),qi=(e,t)=>{let n;switch(t.to){case 10:n=`vec4`;break;case 1:n=`vec4`;break;case 12:n=`vec4`;break;case 6:n=`vec4`;break;case 9:n=`vec4`;break;default:throw RangeError(`not supported type (specified in attribute 'to' from 'Cast' operator): ${t.to}`)}e.compute(Ri(e.inputs[0],`Cast`,n,void 0,t.cacheKey,t.to))},Ji=e=>{let t,n,r=e.length>=2&&e[1].data!==0,i=e.length>=3&&e[2].data!==0;switch(e[0].dataType){case 1:t=r?e[1].getFloat32Array()[0]:-34028234663852886e22,n=i?e[2].getFloat32Array()[0]:34028234663852886e22;break;case 10:t=r?e[1].getUint16Array()[0]:64511,n=i?e[2].getUint16Array()[0]:31743;break;default:throw Error(`Unsupport data type`)}return Yn({min:t,max:n})},Yi=(e,t)=>{let n=t||Ji(e.inputs),r=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Clip`,e=>`clamp(${e}, vec4<${r}>(uniforms.min), vec4<${r}>(uniforms.max))`,void 0,n.cacheKey,void 0,[{type:e.inputs[0].dataType,data:n.min},{type:e.inputs[0].dataType,data:n.max}],[{name:`min`,type:r},{name:`max`,type:r}]),{inputs:[0]})},Xi=e=>{e.compute(Ri(e.inputs[0],`Ceil`,`ceil`))},Zi=e=>{e.compute(Ri(e.inputs[0],`Cos`,`cos`))},Qi=e=>{e.compute(Ri(e.inputs[0],`Cosh`,`cosh`))},$i=e=>Yn(e),ea=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Elu`,e=>`elu_vf32(${e})`,` + const elu_alpha_ = ${n}(${t.alpha}); + + fn elu_f32(a: ${n}) -> ${n} { + return select((exp(a) - 1.0) * elu_alpha_, a, a >= 0.0); + } + + fn elu_vf32(v: vec4<${n}>) -> vec4<${n}> { + return vec4(elu_f32(v.x), elu_f32(v.y), elu_f32(v.z), elu_f32(v.w)); + }`,t.cacheKey))},ta=(e=`f32`)=>` +const r0: ${e} = 0.3275911; +const r1: ${e} = 0.254829592; +const r2: ${e} = -0.284496736; +const r3: ${e} = 1.421413741; +const r4: ${e} = -1.453152027; +const r5: ${e} = 1.061405429; + +fn erf_vf32(v: vec4<${e}>) -> vec4<${e}> { + let absv = abs(v); + let x = 1.0 / (1.0 + r0 * absv); + return sign(v) * (1.0 - ((((r5 * x + r4) * x + r3) * x + r2) * x + r1) * x * exp(-absv * absv)); +}`,na=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Erf`,e=>`erf_vf32(${e})`,ta(t)))},ra=e=>{e.compute(Ri(e.inputs[0],`Exp`,`exp`))},ia=e=>{e.compute(Ri(e.inputs[0],`Floor`,`floor`))},aa=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Gelu`,e=>`0.5 * ${e} * (1.0 + erf_vf32(${e} * 0.7071067811865475))`,ta(t)))},oa=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`LeakyRelu`,e=>`select(leaky_relu_alpha_ * ${e}, ${e}, ${e} >= vec4<${n}>(0.0))`,`const leaky_relu_alpha_ = ${n}(${t.alpha});`,t.cacheKey))},sa=e=>{e.compute(Ri(e.inputs[0],`Not`,e=>`!${e}`))},ca=e=>{e.compute(Ri(e.inputs[0],`Neg`,e=>`-${e}`))},la=e=>{e.compute(Ri(e.inputs[0],`Reciprocal`,e=>`1.0/${e}`))},ua=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`Relu`,e=>`select(vec4<${t}>(0.0), ${e}, ${e} > vec4<${t}>(0.0))`))},da=e=>{e.compute(Ri(e.inputs[0],`Sigmoid`,e=>`(1.0 / (1.0 + exp(-${e})))`))},fa=e=>Yn(e),pa=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`HardSigmoid`,e=>`max(vec4<${n}>(0.0), min(vec4<${n}>(1.0), ${t.alpha} * ${e} + vec4<${n}>(${t.beta})))`,void 0,t.cacheKey))},ma=e=>{e.compute(Ri(e.inputs[0],`Sin`,`sin`))},ha=e=>{e.compute(Ri(e.inputs[0],`Sinh`,`sinh`))},ga=e=>{e.compute(Ri(e.inputs[0],`Sqrt`,`sqrt`))},_a=e=>{e.compute(Ri(e.inputs[0],`Tan`,`tan`))},va=e=>`sign(${e}) * (1 - exp(-2 * abs(${e}))) / (1 + exp(-2 * abs(${e})))`,ya=e=>{e.compute(Ri(e.inputs[0],`Tanh`,va))},ba=(e=`f32`)=>` +const fast_gelu_a: ${e} = 0.5; +const fast_gelu_b: ${e} = 0.7978845608028654; +const fast_gelu_c: ${e} = 0.035677408136300125; + +fn tanh_v(v: vec4<${e}>) -> vec4<${e}> { + return ${va(`v`)}; +} +`,xa=e=>`(fast_gelu_a + fast_gelu_a * tanh_v(${e} * (fast_gelu_c * ${e} * ${e} + fast_gelu_b))) * ${e}`,Sa=e=>{let t=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`FastGelu`,xa,ba(t),void 0,e.inputs[0].dataType))},Ca=(e,t)=>{let n=er(e.inputs[0].dataType);return e.compute(Ri(e.inputs[0],`ThresholdedRelu`,e=>`select(vec4<${n}>(0.0), ${e}, ${e} > thresholded_relu_alpha_)`,`const thresholded_relu_alpha_ = vec4<${n}>(${t.alpha});`,t.cacheKey)),0},wa=e=>{e.compute(Ri(e.inputs[0],`Log`,`log`))},Ta=(e,t)=>` +const alpha = vec4<${e}>(${t}); +const one = ${e}(1.0); +const zero = ${e}(0.0); + +fn quick_gelu_impl(x: vec4<${e}>) -> vec4<${e}> { + let v = x *alpha; + var x1 : vec4<${e}>; + for (var i = 0; i < 4; i = i + 1) { + if (v[i] >= zero) { + x1[i] = one / (one + exp(-v[i])); + } else { + x1[i] = one - one / (one + exp(v[i])); + } + } + return x * x1; +} +`,Ea=e=>`quick_gelu_impl(${e})`,Da=(e,t)=>{let n=er(e.inputs[0].dataType);e.compute(Ri(e.inputs[0],`QuickGelu`,Ea,Ta(n,t.alpha),t.cacheKey,e.inputs[0].dataType))}}),ka,Aa,ja,Ma=M(()=>{"use strict";W(),Y(),Oa(),ka=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![2560,5120,10240].includes(e[0].dims[2]))throw Error(`hidden state should be 2560, 5120 or 10240`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},Aa=e=>{let t=e[0].dims.slice();t[2]/=2;let n=q(`input`,e[0].dataType,e[0].dims,4),r=q(`bias`,e[0].dataType,[e[0].dims[2]],4),i=J(`output`,e[0].dataType,t,4),a=U.size(t)/4,o=$n(e[0].dataType);return{name:`BiasSplitGelu`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)}}),getShaderSource:t=>` + const M_SQRT2 = sqrt(2.0); + const halfChannels = ${e[0].dims[2]/4/2}u; + + ${t.declareVariables(n,r,i)} + + ${ta(o)} + + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(a)} + let biasIdx = global_idx % halfChannels; + let batchIndex = global_idx / halfChannels; + let inputOffset = biasIdx + batchIndex * halfChannels * 2; + let valueLeft = input[inputOffset] + bias[biasIdx]; + let valueRight = input[inputOffset + halfChannels] + bias[biasIdx + halfChannels]; + let geluRight = valueRight * 0.5 * (erf_vf32(valueRight / M_SQRT2) + 1); + + ${i.setByOffset(`global_idx`,`valueLeft * geluRight`)} + }`}},ja=e=>{ka(e.inputs),e.compute(Aa(e.inputs))}}),Na,Pa,Fa,Ia,La,Ra,za,Ba,Va,Ha,Ua,Wa,Ga,Ka=M(()=>{"use strict";V(),W(),Y(),Na=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f,p;typeof s==`string`?f=p=(e,t)=>`${s}((${e}),(${t}))`:typeof s==`function`?f=p=s:(f=s.scalar,p=s.vector);let m=J(`outputData`,u,r.length,4),h=q(`aData`,c,t.length,4),g=q(`bData`,l,n.length,4),_;if(i)if(a){let e=U.size(t)===1,r=U.size(n)===1,i=t.length>0&&t[t.length-1]%4==0,a=n.length>0&&n[n.length-1]%4==0;_=e||r?m.setByOffset(`global_idx`,p(e?`${h.type.value}(${h.getByOffset(`0`)}.x)`:h.getByOffset(`global_idx`),r?`${g.type.value}(${g.getByOffset(`0`)}.x)`:g.getByOffset(`global_idx`))):` + let outputIndices = ${m.offsetToIndices(`global_idx * 4u`)}; + let offsetA = ${h.broadcastedIndicesToOffset(`outputIndices`,m)}; + let offsetB = ${g.broadcastedIndicesToOffset(`outputIndices`,m)}; + ${m.setByOffset(`global_idx`,p(o||i?h.getByOffset(`offsetA / 4u`):`${h.type.value}(${h.getByOffset(`offsetA / 4u`)}[offsetA % 4u])`,o||a?g.getByOffset(`offsetB / 4u`):`${g.type.value}(${g.getByOffset(`offsetB / 4u`)}[offsetB % 4u])`))} + `}else _=m.setByOffset(`global_idx`,p(h.getByOffset(`global_idx`),g.getByOffset(`global_idx`)));else{if(!a)throw Error(`no necessary to use scalar implementation for element-wise binary op implementation.`);let e=(e,t,n=``)=>{let r=`aData[indexA${t}][componentA${t}]`,i=`bData[indexB${t}][componentB${t}]`;return` + let outputIndices${t} = ${m.offsetToIndices(`global_idx * 4u + ${t}u`)}; + let offsetA${t} = ${h.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; + let offsetB${t} = ${g.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; + let indexA${t} = offsetA${t} / 4u; + let indexB${t} = offsetB${t} / 4u; + let componentA${t} = offsetA${t} % 4u; + let componentB${t} = offsetB${t} % 4u; + ${e}[${t}] = ${n}(${f(r,i)}); + `};_=u===9?` + var data = vec4(0); + ${e(`data`,0,`u32`)} + ${e(`data`,1,`u32`)} + ${e(`data`,2,`u32`)} + ${e(`data`,3,`u32`)} + outputData[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` + ${e(`outputData[global_idx]`,0)} + ${e(`outputData[global_idx]`,1)} + ${e(`outputData[global_idx]`,2)} + ${e(`outputData[global_idx]`,3)} + `}return` + ${e.registerUniform(`vec_size`,`u32`).declareVariables(h,g,m)} + + ${d??``} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + ${_} + }`},Pa=(e,t,n,r,i,a,o=n.dataType)=>{let s=n.dims.map(e=>Number(e)??1),c=r.dims.map(e=>Number(e)??1),l=!U.areEqual(s,c),u=s,d=U.size(s),f=!1,p=!1,m=[l];if(l){let e=hn.calcShape(s,c,!1);if(!e)throw Error(`Can't perform binary op on the given tensors`);u=e.slice(),d=U.size(u);let t=U.size(s)===1,n=U.size(c)===1,r=s.length>0&&s[s.length-1]%4==0,i=c.length>0&&c[c.length-1]%4==0;m.push(t),m.push(n),m.push(r),m.push(i);let a=1;for(let e=1;ee.toString()).join(`_`),inputDependencies:[`rank`,`rank`]},getShaderSource:e=>Na(e,s,c,u,f,l,p,i,n.dataType,r.dataType,o,a),getRunData:()=>({outputs:[{dims:u,dataType:o}],dispatchGroup:{x:Math.ceil(d/64/4)},programUniforms:[{type:12,data:Math.ceil(U.size(u)/4)},...G(s,c,u)]})}},Fa=(e,t,n,r,i,a)=>{e.compute(Pa(t,i??``,e.inputs[0],e.inputs[1],n,r,a))},Ia=e=>{Fa(e,`Add`,(e,t)=>`${e}+${t}`)},La=e=>{Fa(e,`Div`,(e,t)=>`${e}/${t}`)},Ra=e=>{Fa(e,`Equal`,{scalar:(e,t)=>`u32(${e}==${t})`,vector:(e,t)=>`vec4(${e}==${t})`},void 0,void 0,9)},za=e=>{Fa(e,`Mul`,(e,t)=>`${e}*${t}`)},Ba=e=>{let t=q(`input`,e.inputs[0].dataType,e.inputs[0].dims).type.value;Fa(e,`Pow`,{scalar:(e,t)=>`pow_custom(${e},${t})`,vector:(e,t)=>`pow_vector_custom(${e},${t})`},` + fn pow_custom(a : ${t}, b : ${t}) -> ${t} { + if (b == ${t}(0.0)) { + return ${t}(1.0); + } else if (a < ${t}(0.0) && f32(b) != floor(f32(b))) { + return ${t}(pow(f32(a), f32(b))); // NaN + } + return select(sign(a), ${t}(1.0), round(f32(abs(b) % ${t}(2.0))) != 1.0) * ${t}(${t===`i32`?`round`:``}(pow(f32(abs(a)), f32(b)))); + } + fn pow_vector_custom(a : vec4<${t}>, b : vec4<${t}>) -> vec4<${t}> { + // TODO: implement vectorized pow + return vec4<${t}>(pow_custom(a.x, b.x), pow_custom(a.y, b.y), pow_custom(a.z, b.z), pow_custom(a.w, b.w)); + } + `)},Va=e=>{Fa(e,`Sub`,(e,t)=>`${e}-${t}`)},Ha=e=>{Fa(e,`Greater`,{scalar:(e,t)=>`u32(${e}>${t})`,vector:(e,t)=>`vec4(${e}>${t})`},void 0,void 0,9)},Ua=e=>{Fa(e,`Less`,{scalar:(e,t)=>`u32(${e}<${t})`,vector:(e,t)=>`vec4(${e}<${t})`},void 0,void 0,9)},Wa=e=>{Fa(e,`GreaterOrEqual`,{scalar:(e,t)=>`u32(${e}>=${t})`,vector:(e,t)=>`vec4(${e}>=${t})`},void 0,void 0,9)},Ga=e=>{Fa(e,`LessOrEqual`,{scalar:(e,t)=>`u32(${e}<=${t})`,vector:(e,t)=>`vec4(${e}<=${t})`},void 0,void 0,9)}}),qa,Ja,Ya,Xa,Za,Qa,$a=M(()=>{"use strict";V(),W(),Xn(),Y(),qa=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);let n=0,r=e[n],i=r.dataType,a=r.dims.length;e.forEach((e,o)=>{if(o!==n){if(e.dataType!==i)throw Error(`input tensors should be one type`);if(e.dims.length!==a)throw Error(`input tensors should have the same shape`);e.dims.forEach((e,n)=>{if(n!==t&&e!==r.dims[n])throw Error(`non concat dimensions must match`)})}})},Ja=(e,t)=>` + fn calculateInputIndex(index: u32) -> u32 { + let sizeInConcatAxis = array(${t}); + for (var i: u32 = 0u; i < ${e}; i += 1u ) { + if (index < sizeInConcatAxis[i]) { + return i; + } + } + return ${e}u; + }`,Ya=(e,t)=>{let n=e.length,r=[];for(let i=0;i{let i=U.size(n),a=Array(e.length),o=Array(e.length),s=0,c=[],l=[],u=[{type:12,data:i}];for(let n=0;n`uniforms.sizeInConcatAxis${e}`).join(`,`),m=t=>` + + ${(()=>{t.registerUniform(`outputSize`,`u32`);for(let n=0;n(${p}); + ${f} -= sizeInConcatAxis[inputIndex - 1u]; + } + + ${Ya(o,d)} + }`;return{name:`Concat`,shaderCache:{hint:`${t}`,inputDependencies:c},getRunData:()=>({outputs:[{dims:n,dataType:r}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:u}),getShaderSource:m}},Za=(e,t)=>{let n=e.inputs,r=n[0].dims,i=U.normalizeAxis(t.axis,r.length);qa(n,i);let a=r.slice();a[i]=n.reduce((e,t)=>e+(t.dims.length>i?t.dims[i]:0),0);let o=n.filter(e=>U.size(e.dims)>0);e.compute(Xa(o,i,a,n[0].dataType),{inputs:o})},Qa=e=>Yn({axis:e.axis})}),eo,to,no,ro,io=M(()=>{"use strict";V(),W(),eo=(e,t,n=`f32`)=>{switch(e.activation){case`Relu`:return`value = max(value, ${t}(0.0));`;case`Sigmoid`:return`value = (${t}(1.0) / (${t}(1.0) + exp(-value)));`;case`Clip`:return`value = clamp(value, ${t}(${n}(uniforms.clip_min)), ${t}(${n}(uniforms.clip_max)));`;case`HardSigmoid`:return`value = max(${t}(0.0), min(${t}(1.0), ${n}(uniforms.alpha) * value + ${n}(uniforms.beta)));`;case`LeakyRelu`:return`value = select(${n}(uniforms.alpha) * value, value, value >= ${t}(0.0));`;case`Tanh`:return`let e2x = exp(-2.0 * abs(value)); + value = sign(value) * (1.0 - e2x) / (1.0 + e2x); + `;case``:return``;default:throw Error(`Unsupported activation ${e.activation}`)}},to=(e,t)=>{e.activation===`Clip`?t.push({type:1,data:e.clipMax},{type:1,data:e.clipMin}):e.activation===`HardSigmoid`?t.push({type:1,data:e.alpha},{type:1,data:e.beta}):e.activation===`LeakyRelu`&&t.push({type:1,data:e.alpha})},no=(e,t)=>{e.activation===`Clip`?t.push({name:`clip_max`,type:`f32`},{name:`clip_min`,type:`f32`}):e.activation===`HardSigmoid`?t.push({name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}):e.activation===`LeakyRelu`&&t.push({name:`alpha`,type:`f32`})},ro=e=>{let t=e?.activation||``;if(t===`HardSigmoid`){let[n,r]=e?.activation_params||[.2,.5];return{activation:t,alpha:n,beta:r}}else if(t===`Clip`){let[n,r]=e?.activation_params||[vn,yn];return{activation:t,clipMax:r,clipMin:n}}else if(t===`LeakyRelu`){let[n]=e?.activation_params||[.01];return{activation:t,alpha:n}}return{activation:t}}}),ao,oo,so=M(()=>{"use strict";ao=(e,t)=>{switch(e){case 1:return t;case 2:return`vec2<${t}>`;case 3:return`vec3<${t}>`;case 4:return`vec4<${t}>`;default:throw Error(`${e}-component is not supported.`)}},oo=e=>` + ${e?`value = value + getBiasByOutputCoords(coords);`:``} + `}),co,lo=M(()=>{"use strict";co=e=>` +fn getIndexFromCoords4D(coords : vec4, shape : vec4) -> i32 { + return dot(coords, vec4( + shape.y * shape.z * shape.w, shape.z * shape.w, shape.w, 1)); +} +fn getOutputIndexFromCoords(coords : vec4) -> i32 { + return dot(coords, vec4( + i32(${e}.x), i32(${e}.y), i32(${e}.z), 1)); +} +`}),uo,fo,po=M(()=>{"use strict";V(),W(),Y(),io(),uo=(e,t,n,r,i)=>{let a=r-n;return` + ${Array.from({length:n}).map((n,o)=>` + if (${K(t.shape,o,t.rank)} != 1) { + ${t.indicesSet(e,o,K(i,o+a,r))} + } else { + ${t.indicesSet(e,o,0)} + }`).join(``)} +`},fo=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o[o.length-2],l=s[s.length-1],u=o[o.length-1],d=tr(l),f=tr(u),p=tr(c),m=U.size(n)/d/p,h=e.length>2,g=r?r.slice(0,-2):n.slice(0,-2),_=[U.size(g),c,l],v=[{type:12,data:m},{type:12,data:c},{type:12,data:l},{type:12,data:u}];to(t,v),v.push(...G(g,o,s)),h&&v.push(...G(e[2].dims)),v.push(...G(_));let y=r=>{let a=sr(`batch_dims`,e[0].dataType,g.length),c=q(`a`,e[0].dataType,o.length,f),l=q(`b`,e[1].dataType,s.length,d),u=J(`output`,e[0].dataType,_.length,d),m=$n(u.type.tensor),v=eo(t,u.type.value,m),y=[c,l],b=``;if(h){let t=i?d:1;y.push(q(`bias`,e[2].dataType,e[2].dims.length,t)),b=`${i?`value += bias[col / ${t}];`:`value += ${u.type.value}(bias[row + i]);`}`}let x=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`}];no(t,x);let S=()=>{let e=`var a_data: ${c.type.value};`;for(let t=0;t; + for (var k: u32 = 0u; k < uniforms.K; k = k + ${f}) { + ${S()} + } + for (var i = 0u; i < ${p}u; i++) { + var value = values[i]; + ${b} + ${v} + let cur_indices = ${u.type.indices}(batch, row + i, col); + let offset = ${u.indicesToOffset(`cur_indices`)}; + ${u.setByOffset(`offset / ${d}`,`value`)}; + } + } + `};return{name:`MatMulNaive`,shaderCache:{hint:`${t.activation};${d};${f};${p};${i}`,inputDependencies:h?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:v}),getShaderSource:y}}}),mo,ho,go,_o,vo,yo,bo,xo,So=M(()=>{"use strict";V(),W(),Y(),io(),po(),so(),mo=(e,t)=>e?` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + kStart + inputRow, + globalRowStart / innerElementSize + inputCol${t?`, batchIndices`:``}); + `:` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + globalRow + innerRow, + kStart / innerElementSize + inputCol${t?`, batchIndices`:``}); + `,ho=(e,t)=>e?` + let ACached0 = mm_Asub[k * innerElementSize][localRow]; + let ACached1 = mm_Asub[k * innerElementSize + 1][localRow]; + let ACached2 = mm_Asub[k * innerElementSize + 2][localRow]; + ${t===3?``:`let ACached3 = mm_Asub[k * innerElementSize + 3][localRow];`} + for (var i = 0; i < rowPerThread; i = i + 1) { + acc[i] = BCached0 * ACached0[i] + acc[i]; + acc[i] = BCached1 * ACached1[i] + acc[i]; + acc[i] = BCached2 * ACached2[i] + acc[i]; + ${t===3?``:`acc[i] = BCached3 * ACached3[i] + acc[i];`} + }`:` + for (var i = 0; i < rowPerThread; i = i + 1) { + let ACached = mm_Asub[tileRow + i][k]; + acc[i] = BCached0 * ACached.x + acc[i]; + acc[i] = BCached1 * ACached.y + acc[i]; + acc[i] = BCached2 * ACached.z + acc[i]; + ${t===3?``:`acc[i] = BCached3 * ACached.w + acc[i];`} + }`,go=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32)=>{let c=t[1]*e[1],l=t[0]*e[0],u=i?c:a,d=i?a:c,f=u/t[0],p=a/t[1];if(!((i&&f===4&&e[1]===4||!i&&(f===3||f===4))&&u%t[0]===0&&a%t[1]===0&&e[0]===4))throw Error(`If transposeA ${i} is true, innerElementSize ${f} and workPerThread[1] ${e[1]} must be 4. + Otherwise, innerElementSize ${f} must be 3 or 4. + tileAWidth ${u} must be divisible by workgroupSize[0]${t[0]}. tileInner ${a} must be divisible by workgroupSize[1] ${t[1]}. colPerThread ${e[0]} must be 4.`);return` +var mm_Asub: array, ${u/f}>, ${d}>; +var mm_Bsub: array, ${l/e[0]}>, ${a}>; + +const rowPerThread = ${e[1]}; +const colPerThread = ${e[0]}; +const innerElementSize = ${f}; +const tileInner = ${a}; + +@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) +fn main(@builtin(local_invocation_id) localId : vec3, + @builtin(global_invocation_id) globalId : vec3, + @builtin(workgroup_id) workgroupId : vec3) { + let localRow = i32(localId.y); + let tileRow = localRow * rowPerThread; + let tileCol = i32(localId.x); + + let globalRow =i32(globalId.y) * rowPerThread; + let globalCol = i32(globalId.x); + let batch = ${o?`0`:`i32(globalId.z)`}; + ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} + let globalRowStart = i32(workgroupId.y) * ${c}; + + let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; + var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; + + var acc: array, rowPerThread>; + + // Loop over shared dimension. + let tileRowB = localRow * ${p}; + for (var t = 0; t < num_tiles; t = t + 1) { + // Load one tile of A into local memory. + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + let inputRow = tileRow + innerRow; + let inputCol = tileCol; + ${mo(i,r)} + } + + // Load one tile of B into local memory. + for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { + let inputRow = tileRowB + innerRow; + let inputCol = tileCol; + mm_Bsub[inputRow][inputCol] = mm_readB(batch, kStart + inputRow, globalCol${r?`, batchIndices`:``}); + } + kStart = kStart + tileInner; + workgroupBarrier(); + + // Compute acc values for a single thread. + for (var k = 0; k < tileInner / innerElementSize; k = k + 1) { + let BCached0 = mm_Bsub[k * innerElementSize][tileCol]; + let BCached1 = mm_Bsub[k * innerElementSize + 1][tileCol]; + let BCached2 = mm_Bsub[k * innerElementSize + 2][tileCol]; + ${f===3?``:`let BCached3 = mm_Bsub[k * innerElementSize + 3][tileCol];`} + + ${ho(i,f)} + } + + workgroupBarrier(); + } + + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + mm_write(batch, globalRow + innerRow, globalCol, acc[innerRow]); + } +}`},_o=(e,t)=>e?` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + kStart + inputRow, + globalRowStart + inputCol${t?`, batchIndices`:``}); + `:` + mm_Asub[inputRow][inputCol] = mm_readA(batch, + globalRowStart + inputRow, + kStart + inputCol${t?`, batchIndices`:``}); + `,vo=e=>e?`let ACached = mm_Asub[k][tileRow + innerRow];`:`let ACached = mm_Asub[tileRow + innerRow][k];`,yo=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32,c=!1)=>{let l=e[1]*t[1],u=e[0]*t[0],d=i?l:a,f=i?a:l;if(!(f%t[1]===0&&d%t[0]===0&&a%t[1]===0))throw Error(`tileAHight ${f} must be divisible by workgroupSize[1]${t[1]}, tileAWidth ${d} must be divisible by workgroupSize[0]${t[0]}, tileInner ${a} must be divisible by workgroupSize[1]${t[1]}`);let p=f/t[1],m=d/t[0],h=a/t[1],g=c?` + let localRow = i32(localId.y); + let localCol = i32(localId.x); + let globalRowStart = i32(workgroupId.y) * ${l}; + let globalColStart = i32(workgroupId.x) * ${u}; + + // Loop over shared dimension. + for (var t = 0; t < num_tiles; t = t + 1) { + // Load one tile of A into local memory. + for (var inputRow = localRow; inputRow < ${f}; inputRow = inputRow + ${t[1]}) { + for (var inputCol = localCol; inputCol < ${d}; inputCol = inputCol + ${t[0]}) { + ${_o(i,r)} + } + } + // Load one tile of B into local memory. + for (var inputRow = localRow; inputRow < ${a}; inputRow = inputRow + ${t[1]}) { + for (var inputCol = localCol; inputCol < ${u}; inputCol = inputCol + ${t[0]}) { + mm_Bsub[inputRow][inputCol] = mm_readB(batch, + kStart + inputRow, + globalColStart + inputCol${r?`, batchIndices`:``}); + } + } + kStart = kStart + tileInner; + workgroupBarrier(); + + // Compute acc values for a single thread. + var BCached : array<${n}, colPerThread>; + for (var k = 0; k < tileInner; k = k + 1) { + for (var inner = 0; inner < colPerThread; inner = inner + 1) { + BCached[inner] = mm_Bsub[k][localCol + inner * ${t[0]}]; + } + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + let ACached = ${i?`mm_Asub[k][localRow + innerRow * ${t[1]}];`:`mm_Asub[localRow + innerRow * ${t[1]}][k];`} + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + acc[innerRow][innerCol] = acc[innerRow][innerCol] + + ACached * BCached[innerCol]; + } + } + } + workgroupBarrier(); + } + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + let gRow = globalRowStart + localRow + innerRow * ${t[1]}; + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + let gCol = globalColStart + localCol + innerCol * ${t[0]}; + mm_write(batch, gRow, gCol, acc[innerRow][innerCol]); + } + } + `:` +let tileRow = i32(localId.y) * rowPerThread; +let tileCol = i32(localId.x) * colPerThread; + +let globalRow = i32(globalId.y) * rowPerThread; +let globalCol = i32(globalId.x) * colPerThread; +let globalRowStart = i32(workgroupId.y) * ${l}; + +let tileRowA = i32(localId.y) * ${p}; +let tileColA = i32(localId.x) * ${m}; +let tileRowB = i32(localId.y) * ${h}; +// Loop over shared dimension. +for (var t = 0; t < num_tiles; t = t + 1) { + // Load one tile of A into local memory. + for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { + for (var innerCol = 0; innerCol < ${m}; innerCol = innerCol + 1) { + let inputRow = tileRowA + innerRow; + let inputCol = tileColA + innerCol; + ${_o(i,r)} + } + } + + // Load one tile of B into local memory. + for (var innerRow = 0; innerRow < ${h}; innerRow = innerRow + 1) { + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + let inputRow = tileRowB + innerRow; + let inputCol = tileCol + innerCol; + mm_Bsub[inputRow][inputCol] = mm_readB(batch, + kStart + inputRow, + globalCol + innerCol${r?`, batchIndices`:``}); + } + } + kStart = kStart + tileInner; + workgroupBarrier(); + + // Compute acc values for a single thread. + var BCached : array<${n}, colPerThread>; + for (var k = 0; k < tileInner; k = k + 1) { + for (var inner = 0; inner < colPerThread; inner = inner + 1) { + BCached[inner] = mm_Bsub[k][tileCol + inner]; + } + + for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + ${vo(i)} + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + acc[innerRow][innerCol] = acc[innerRow][innerCol] + ACached * BCached[innerCol]; + } + } + } + + workgroupBarrier(); +} + +for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { + for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { + mm_write(batch, globalRow + innerRow, globalCol + innerCol, + acc[innerRow][innerCol]); + } +} +`;return` + var mm_Asub : array, ${f}>; + var mm_Bsub : array, ${a}>; + const rowPerThread = ${e[1]}; + const colPerThread = ${e[0]}; + const tileInner = ${a}; + +@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) +fn main(@builtin(local_invocation_id) localId : vec3, + @builtin(global_invocation_id) globalId : vec3, + @builtin(workgroup_id) workgroupId : vec3) { + let batch = ${o?`0`:`i32(globalId.z)`}; + ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} + let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; + var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; + + var acc : array, rowPerThread>; + ${g} + } +`},bo=(e,t,n,r,i=!1)=>{let[a,o,s,c]=r,l=$n(r[0].type.tensor);return` + fn mm_readA(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${ao(e,l)} { + var value = ${ao(e,l)}(0.0); + let col = colIn * ${e}; + if(row < uniforms.dim_a_outer && col < uniforms.dim_inner) + { + var aIndices: ${o.type.indices}; + ${uo(`aIndices`,o,o.rank-2,a.rank,`batchIndices`)} + ${o.indicesSet(`aIndices`,o.rank-2,`u32(row)`)} + ${o.indicesSet(`aIndices`,o.rank-1,`u32(colIn)`)} + value = ${o.getByIndices(`aIndices`)}; + } + return value; + } + + fn mm_readB(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${ao(e,l)} { + var value = ${ao(e,l)}(0.0); + let col = colIn * ${e}; + if(row < uniforms.dim_inner && col < uniforms.dim_b_outer) + { + var bIndices: ${s.type.indices}; + ${uo(`bIndices`,s,s.rank-2,a.rank,`batchIndices`)} + ${s.indicesSet(`bIndices`,s.rank-2,`u32(row)`)} + ${s.indicesSet(`bIndices`,s.rank-1,`u32(colIn)`)} + value = ${s.getByIndices(`bIndices`)}; + } + return value; + } + + fn mm_write(batch: i32, row: i32, colIn: i32, valueIn: ${ao(e,l)}) { + let col = colIn * ${e}; + if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) { + var value = valueIn; + let coords = vec3(batch, row, colIn); + ${t?`value = value + ${i?`bias[colIn]`:`${ao(e,l)}(bias[row])`};`:``} + ${n} + ${c.setByIndices(`vec3(coords)`,`value`)} + } + } + `},xo=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o.slice(0,-2),l=s.slice(0,-2),u=r?r.slice(0,-2):n.slice(0,-2),d=U.size(u),f=o[o.length-2],p=o[o.length-1],m=s[s.length-1],h=p%4==0&&m%4==0,g=f<=8?[4,1,1]:[4,4,1],_=[8,8,1],v=[Math.ceil(m/_[0]/g[0]),Math.ceil(f/_[1]/g[1]),Math.ceil(d/_[2]/g[2])],y=h?4:1,b=[...c,f,p/y],x=b.length,S=[...l,p,m/y],C=S.length,w=[d,f,m/y],T=[{type:6,data:f},{type:6,data:m},{type:6,data:p}];to(t,T),T.push(...G(u,b,S));let E=[`rank`,`rank`],D=e.length>2;D&&(T.push(...G(e[2].dims)),E.push(`rank`)),T.push(...G(w));let O=n=>{let r=u.length,a=sr(`batchDims`,e[0].dataType,r,1),o=$n(e[0].dataType),s=q(`a`,e[0].dataType,x,y),c=q(`b`,e[1].dataType,C,y),l=J(`result`,e[0].dataType,w.length,y),d=[s,c];if(D){let t=i?y:1;d.push(q(`bias`,e[2].dataType,e[2].dims.length,t))}let f=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`}];no(t,f);let p=$n(l.type.tensor),m=eo(t,l.type.value,p),v=bo(y,D,m,[a,s,c,l],i);return` + ${n.registerUniforms(f).registerInternalVariables(a).declareVariables(...d,l)} + ${v} + ${h?go(g,_,o,a):yo(g,_,o,a)} + `};return{name:`MatMul`,shaderCache:{hint:`${g};${t.activation};${h};${i}`,inputDependencies:E},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:v[0],y:v[1],z:v[2]},programUniforms:T}),getShaderSource:O}}}),Co,wo,To=M(()=>{"use strict";V(),pn(),Y(),io(),so(),lo(),So(),Co=(e,t,n,r,i=!1,a,o=4,s=4,c=4,l=`f32`)=>{let u=e=>{switch(e){case 1:return`resData = x[xIndex];`;case 3:return`resData = vec3<${l}>(x[xIndex], x[xIndex + 1], x[xIndex + 2]);`;case 4:return`resData = x[xIndex / 4];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},d=e=>{switch(e){case 1:return`return w[row * i32(uniforms.w_shape[3]) + colIn];`;case 4:return`return w[row * i32(uniforms.w_shape[3]) / 4 + colIn];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},f=e?` + let coord = vec4(batch, xRow, xCol, xCh); + `:` + let coord = vec4(batch, xCh, xRow, xCol); + `,p=e?` + let coords = vec4( + batch, + row / outWidth, + row % outWidth, + col); + `:` + let coords = vec4( + batch, + row, + col / outWidth, + col % outWidth); + `,m=e?`i32(uniforms.x_shape[1])`:`i32(uniforms.x_shape[2])`,h=e?`i32(uniforms.x_shape[2])`:`i32(uniforms.x_shape[3])`,g=e?`row`:`col`,_=e?`col`:`row`,v=` + let inChannels = i32(uniforms.w_shape[2]); + let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; + let outRow = ${g} / outWidth; + let outCol = ${g} % outWidth; + + let WRow = ${_} / (i32(uniforms.w_shape[1]) * inChannels); + let WCol = ${_} / inChannels % i32(uniforms.w_shape[1]); + let xRow = outRow * uniforms.stride[0] + uniforms.dilation[0] * WRow - uniforms.pad[0]; + let xCol = outCol * uniforms.stride[1] + uniforms.dilation[1] * WCol - uniforms.pad[1]; + let xCh = ${_} % inChannels; + var resData = ${ao(o,l)}(0.0); + // The bounds checking is always needed since we use it to pad zero for + // the 'same' padding type. + if (xRow >= 0 && xRow < ${m} && xCol >= 0 && xCol < ${h}) { + ${f} + let xIndex = getIndexFromCoords4D(coord, vec4(uniforms.x_shape)); + ${u(o)} + } + return resData;`,y=e?t&&r?` + let col = colIn * ${o}; + ${v}`:` + let col = colIn * ${o}; + if (row < uniforms.dim_a_outer && col < uniforms.dim_inner) { + ${v} + } + return ${ao(o,l)}(0.0);`:r&&n?` + let col = colIn * ${o}; + ${v}`:` + let col = colIn * ${o}; + if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { + ${v} + } + return ${ao(o,l)}(0.0);`,b=e?r&&n?d(s):` + let col = colIn * ${s}; + if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { + ${d(s)} + } + return ${ao(s,l)}(0.0);`:` + let col = colIn * ${s}; + if (row < uniforms.dim_inner && col < uniforms.dim_a_outer) { + ${d(s)} + } + return ${ao(s,l)}(0.0);`,x=ao(c,l),S=ao(e?o:s,l),C=ao(e?s:o,l),w=eo(a,x,l);return` + fn mm_readA(batch: i32, row : i32, colIn : i32) -> ${S} { + ${e?y:b} + } + + fn mm_readB(batch: i32, row : i32, colIn : i32) -> ${C} { + ${e?b:y} + } + + fn mm_write(batch: i32, row : i32, colIn : i32, valueIn : ${x}) { + let col = colIn * ${c}; + if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) + { + var value = valueIn; + let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; + ${p} + ${oo(i)} + ${w} + setOutputAtCoords(coords[0], coords[1], coords[2], coords[3], value); + } + }`},wo=(e,t,n,r,i,a,o,s,c)=>{let l=t.format===`NHWC`,u=l?e[0].dims[3]:e[0].dims[1],d=n[0],f=l?n[2]:n[3],p=l?n[1]:n[2],m=l?n[3]:n[1],h=l&&(u%4==0||u%3==0)&&m%4==0,g=l?m:f*p,_=l?f*p:m,v=[8,8,1],y=r<=8?[4,1,1]:[4,4,1],b=[Math.ceil(g/v[0]/y[0]),Math.ceil(_/v[1]/y[1]),Math.ceil(d/v[2]/y[2])];H(`verbose`,()=>`[conv2d_mm_webgpu] dispatch = ${b}`);let x=h?l&&u%4!=0?3:4:1,S=v[1]*y[1],C=v[0]*y[0],w=Math.max(v[0]*x,v[1]),T=r%S===0,E=i%C===0,D=a%w===0,O=h?[x,4,4]:[1,1,1],k=[{type:6,data:r},{type:6,data:i},{type:6,data:a},{type:6,data:[t.pads[0],t.pads[1]]},{type:6,data:t.strides},{type:6,data:t.dilations}];to(t,k),k.push(...G(e[0].dims,e[1].dims));let A=[`rank`,`rank`];o&&(k.push(...G(e[2].dims)),A.push(`rank`)),k.push(...G(n));let ee=r=>{let i=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`},{name:`pad`,type:`i32`,length:2},{name:`stride`,type:`i32`,length:2},{name:`dilation`,type:`i32`,length:2}];no(t,i);let a=h?4:1,c=$n(e[0].dataType),u=` + fn setOutputAtIndex(flatIndex : i32, value : ${h?`vec4<${c}>`:c}) { + result[flatIndex] = ${h?`vec4<${c}>`:c}(value); + } + fn setOutputAtCoords(d0 : i32, d1 : i32, d2 : i32, d3 : i32, value : ${h?`vec4<${c}>`:c}) { + let flatIndex = getOutputIndexFromCoords(vec4(d0, d1, d2, d3)); + setOutputAtIndex(flatIndex ${h?`/ 4`:``}, value); + }`,d=q(`x`,e[0].dataType,e[0].dims.length,x===3?1:x),f=q(`w`,e[1].dataType,e[1].dims.length,a),p=[d,f],m=J(`result`,e[0].dataType,n.length,a);if(o){let t=q(`bias`,e[2].dataType,e[2].dims.length,a);p.push(t),u+=` + fn getBiasByOutputCoords(coords : vec4) -> ${h?`vec4<${c}>`:c} { + return bias[coords.${l?`w`:`y`}${h?`/ 4`:``}]; + }`}return` + ${co(`uniforms.result_strides`)} + //struct Uniforms { xShape : vec4, wShape : vec4, outShape : vec4, + // outShapeStrides: vec3, filterDims : vec2, pad : vec2, stride : vec2, + // dilation : vec2, dimAOuter : i32, dimBOuter : i32, dimInner : i32 }; + ${r.registerUniforms(i).declareVariables(...p,m)} + ${u} + ${Co(l,T,E,D,o,t,O[0],O[1],O[2],c)} + ${h?go(y,v,c,void 0,!l,w):yo(y,v,c,void 0,!l,w,!1,void 0,s)}`};return{name:`Conv2DMatMul`,shaderCache:{hint:`${t.cacheKey};${x};${h};${T};${E};${D};${S};${C};${w}`,inputDependencies:A},getRunData:()=>({outputs:[{dims:c?c(n):n,dataType:e[0].dataType}],dispatchGroup:{x:b[0],y:b[1],z:b[2]},programUniforms:k}),getShaderSource:ee}}}),Eo,Do,Oo,ko,Ao,jo,Mo,No,Po=M(()=>{"use strict";V(),pn(),W(),Y(),io(),so(),Eo=e=>{let t=1;for(let n=0;ntypeof e==`number`?[e,e,e]:e,Oo=(e,t)=>t<=1?e:e+(e-1)*(t-1),ko=(e,t,n,r=1)=>{let i=Oo(t,r);return Math.floor((e[0]*(n-1)-n+i)/2)},Ao=(e,t,n,r,i)=>{i??=ko(e,t[0],r[0]);let a=[0,0,0,n];for(let n=0;n<3;n++)e[n]+2*i>=t[n]&&(a[n]=Math.trunc((e[n]-t[n]+2*i)/r[n]+1));return a},jo=(e,t,n,r,i,a,o,s,c,l)=>{let u,d,f,p;if(e===`VALID`&&(e=0),typeof e==`number`){u={top:e,bottom:e,left:e,right:e,front:e,back:e};let m=Ao([t,n,r,1],[s,c,l],1,[i,a,o],e);d=m[0],f=m[1],p=m[2]}else if(Array.isArray(e)){if(!e.every((e,t,n)=>e===n[0]))throw Error(`Unsupported padding parameter: ${e}`);u={top:e[0],bottom:e[1],left:e[2],right:e[3],front:e[4],back:e[5]};let m=Ao([t,n,r,1],[s,c,l],1,[i,a,o],e[0]);d=m[0],f=m[1],p=m[2]}else if(e===`SAME_UPPER`){d=Math.ceil(t/i),f=Math.ceil(n/a),p=Math.ceil(r/o);let e=(d-1)*i+s-t,m=(f-1)*a+c-n,h=(p-1)*o+l-r,g=Math.floor(e/2),_=e-g,v=Math.floor(m/2),y=m-v,b=Math.floor(h/2),x=h-b;u={top:v,bottom:y,left:b,right:x,front:g,back:_}}else throw Error(`Unknown padding parameter: ${e}`);return{padInfo:u,outDepth:d,outHeight:f,outWidth:p}},Mo=(e,t,n,r,i,a=!1,o=`channelsLast`)=>{let s,c,l,u,d;if(o===`channelsLast`)[s,c,l,u,d]=e;else if(o===`channelsFirst`)[s,d,c,l,u]=e;else throw Error(`Unknown dataFormat ${o}`);let[f,,p,m,h]=t,[g,_,v]=Do(n),[y,b,x]=Do(r),S=Oo(p,y),C=Oo(m,b),w=Oo(h,x),{padInfo:T,outDepth:E,outHeight:D,outWidth:O}=jo(i,c,l,u,g,_,v,S,C,w),k=a?f*d:f,A=[0,0,0,0,0];return o===`channelsFirst`?A=[s,k,E,D,O]:o===`channelsLast`&&(A=[s,E,D,O,k]),{batchSize:s,dataFormat:o,inDepth:c,inHeight:l,inWidth:u,inChannels:d,outDepth:E,outHeight:D,outWidth:O,outChannels:k,padInfo:T,strideDepth:g,strideHeight:_,strideWidth:v,filterDepth:p,filterHeight:m,filterWidth:h,effectiveFilterDepth:S,effectiveFilterHeight:C,effectiveFilterWidth:w,dilationDepth:y,dilationHeight:b,dilationWidth:x,inShape:e,outShape:A,filterShape:t}},No=(e,t,n,r,i,a)=>{let o=a===`channelsLast`,s=o?e[0].dims[3]:e[0].dims[1],c=!1,l=[64,1,1],u={x:n.map((e,t)=>t)},d=[Math.ceil(Eo(u.x.map(e=>n[e]))/l[0]),1,1];H(`verbose`,()=>`[conv3d_naive_webgpu] dispatch = ${d}`);let f=c?o&&s%4!=0?3:4:1,p=U.size(n),m=[{type:12,data:p},{type:12,data:r},{type:12,data:i},{type:12,data:t.strides},{type:12,data:t.dilations}];to(t,m),m.push(...G(e[0].dims,e[1].dims));let h=[`rank`,`rank`],g=e.length===3;g&&(m.push(...G(e[2].dims)),h.push(`rank`)),m.push(...G(n));let _=a=>{let s=[{name:`output_size`,type:`u32`},{name:`filter_dims`,type:`u32`,length:r.length},{name:`pads`,type:`u32`,length:i.length},{name:`strides`,type:`u32`,length:t.strides.length},{name:`dilations`,type:`u32`,length:t.dilations.length}];no(t,s);let l=c?4:1,u=$n(e[0].dataType),d=q(`x`,e[0].dataType,e[0].dims.length,f===3?1:f),p=q(`W`,e[1].dataType,e[1].dims.length,l),m=[d,p],h=J(`result`,e[0].dataType,n.length,l),_=``;if(g){let t=q(`bias`,e[2].dataType,e[2].dims.length,l);m.push(t),_+=` + fn getBiasByOutputCoords(coords : array) -> ${c?`vec4<${u}>`:u} { + return bias[${o?K(`coords`,4,5):K(`coords`,1,5)}${c?`/ 4`:``}]; + }`}let v=ao(f,u),y=eo(t,v,u);return` + ${_} + fn getX(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { + let aIndices = array(d0, d1, d2, d3, d4); + return ${d.getByIndices(`aIndices`)}; + } + fn getW(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { + let aIndices = array(d0, d1, d2, d3, d4); + return ${p.getByIndices(`aIndices`)}; + } + ${a.registerUniforms(s).declareVariables(...m,h)} + ${a.mainStart()} + ${a.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let coords = ${h.offsetToIndices(`global_idx`)}; + let batch = ${K(`coords`,0,d.rank)}; + let d2 = ${o?K(`coords`,d.rank-1,d.rank):K(`coords`,1,d.rank)}; + let xFRCCorner = vec3(${o?K(`coords`,1,d.rank):K(`coords`,2,d.rank)}, + ${o?K(`coords`,2,d.rank):K(`coords`,3,d.rank)}, + ${o?K(`coords`,3,d.rank):K(`coords`,4,d.rank)}) * uniforms.strides - uniforms.pads; + let xFCorner = xFRCCorner.x; + let xRCorner = xFRCCorner.y; + let xCCorner = xFRCCorner.z; + let xShapeY = ${o?K(`uniforms.x_shape`,1,d.rank):K(`uniforms.x_shape`,2,d.rank)}; + let xShapeZ = ${o?K(`uniforms.x_shape`,2,d.rank):K(`uniforms.x_shape`,3,d.rank)}; + let xShapeW = ${o?K(`uniforms.x_shape`,3,d.rank):K(`uniforms.x_shape`,4,d.rank)}; + let xShapeU = ${o?K(`uniforms.x_shape`,4,d.rank):K(`uniforms.x_shape`,1,d.rank)}; + let inputDepthNearestVec4 = (xShapeU / 4) * 4; + let inputDepthVec4Remainder = xShapeU % 4; + + var value = 0.0; + for (var wF = 0u; wF < uniforms.filter_dims[0]; wF++) { + let xF = xFCorner + wF * uniforms.dilations[0]; + if (xF < 0 || xF >= xShapeY) { + continue; + } + + for (var wR = 0u; wR < uniforms.filter_dims[1]; wR++) { + let xR = xRCorner + wR * uniforms.dilations[1]; + if (xR < 0 || xR >= xShapeZ) { + continue; + } + + for (var wC = 0u; wC < uniforms.filter_dims[2]; wC++) { + let xC = xCCorner + wC * uniforms.dilations[2]; + if (xC < 0 || xC >= xShapeW) { + continue; + } + + for (var d1 = 0u; d1 < inputDepthNearestVec4; d1 += 4) { + ${o?`let xValues = vec4( + getX(batch, xF, xR, xC, d1), + getX(batch, xF, xR, xC, d1 + 1), + getX(batch, xF, xR, xC, d1 + 2), + getX(batch, xF, xR, xC, d1 + 3)); + `:`let xValues = vec4( + getX(batch, d1, xF, xR, xC), + getX(batch, d1 + 1, xF, xR, xC), + getX(batch, d1 + 2, xF, xR, xC), + getX(batch, d1 + 3, xF, xR, xC)); + `} + let wValues = vec4( + getW(d2, d1, wF, wR, wC), + getW(d2, d1 + 1, wF, wR, wC), + getW(d2, d1 + 2, wF, wR, wC), + getW(d2, d1 + 3, wF, wR, wC)); + value += dot(xValues, wValues); + } + if (inputDepthVec4Remainder == 1) { + ${o?`value += getX(batch, xF, xR, xC, inputDepthNearestVec4) + * getW(d2, inputDepthNearestVec4, wF, wR, wC);`:`value += getX(batch, inputDepthNearestVec4, xF, xR, xC) + * getW(d2, inputDepthNearestVec4, wF, wR, wC);`} + } else if (inputDepthVec4Remainder == 2) { + ${o?`let xValues = vec2( + getX(batch, xF, xR, xC, inputDepthNearestVec4), + getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1)); + `:`let xValues = vec2( + getX(batch, inputDepthNearestVec4, xF, xR, xC), + getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC)); + `} + let wValues = vec2( + getW(d2, inputDepthNearestVec4, wF, wR, wC), + getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC)); + value += dot(xValues, wValues); + } else if (inputDepthVec4Remainder == 3) { + ${o?`let xValues = vec3( + getX(batch, xF, xR, xC, inputDepthNearestVec4), + getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1), + getX(batch, xF, xR, xC, inputDepthNearestVec4 + 2)); + `:`let xValues = vec3( + getX(batch, inputDepthNearestVec4, xF, xR, xC), + getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC), + getX(batch, inputDepthNearestVec4 + 2, xF, xR, xC)); + `} + let wValues = vec3( + getW(d2, inputDepthNearestVec4, wF, wR, wC), + getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC), + getW(d2, inputDepthNearestVec4 + 2, wF, wR, wC)); + value += dot(xValues, wValues); + } + } + } + } + ${g?`value = value + getBiasByOutputCoords(coords)`:``}; + ${y} + result[global_idx] = f32(value); + }`};return{name:`Conv3DNaive`,shaderCache:{hint:`${t.cacheKey};${o};${f};${g}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:d[0],y:d[1],z:d[2]},programUniforms:m}),getShaderSource:_}}}),Fo,Io,Lo=M(()=>{"use strict";V(),W(),Y(),io(),Fo=(e,t,n,r)=>{let i=e.length>2,a=i?`value += b[output_channel];`:``,o=e[0].dims,s=e[1].dims,c=t.format===`NHWC`,l=c?n[3]:n[1],u=l/t.group,d=c&&u>=4?tr(l):1,f=U.size(n)/d,p=[{type:12,data:f},{type:12,data:t.dilations},{type:12,data:[t.strides[0],t.strides[1]]},{type:12,data:[t.pads[0],t.pads[1]]},{type:12,data:u}];to(t,p),p.push(...G(o,[s[0],s[1],s[2],s[3]/d]));let m=i?[`rank`,`rank`,`rank`]:[`rank`,`rank`];p.push(...G([n[0],n[1],n[2],n[3]/d]));let h=r=>{let l=J(`output`,e[0].dataType,n.length,d),u=$n(l.type.tensor),f=eo(t,l.type.value,u),p=q(`x`,e[0].dataType,o.length),m=q(`w`,e[1].dataType,s.length,d),h=[p,m];i&&h.push(q(`b`,e[2].dataType,e[2].dims,d));let g=[{name:`output_size`,type:`u32`},{name:`dilations`,type:`u32`,length:t.dilations.length},{name:`strides`,type:`u32`,length:2},{name:`pads`,type:`u32`,length:2},{name:`output_channels_per_group`,type:`u32`}];no(t,g);let _=c?` + for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[0]; wHeight++) { + let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; + + if (xHeight < 0u || xHeight >= uniforms.x_shape[1]) { + continue; + } + + for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[1]; wWidth++) { + let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; + if (xWidth < 0u || xWidth >= uniforms.x_shape[2]) { + continue; + } + + for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[2]; wInChannel++) { + let input_channel = in_channel_offset + wInChannel; + let xVal = ${p.get(`batch`,`xHeight`,`xWidth`,`input_channel`)}; + let wVal = ${m.get(`wHeight`,`wWidth`,`wInChannel`,`output_channel`)}; + value += xVal * wVal; + } + } + } + `:` + for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[1]; wInChannel++) { + let input_channel = in_channel_offset + wInChannel; + for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[2]; wHeight++) { + let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; + + if (xHeight < 0u || xHeight >= uniforms.x_shape[2]) { + continue; + } + + for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[3]; wWidth++) { + let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; + if (xWidth < 0u || xWidth >= uniforms.x_shape[3]) { + continue; + } + + let xVal = ${p.get(`batch`,`input_channel`,`xHeight`,`xWidth`)}; + let wVal = ${m.get(`output_channel`,`wInChannel`,`wHeight`,`wWidth`)}; + value += xVal * wVal; + } + } + } + `;return` + ${r.registerUniforms(g).declareVariables(...h,l)} + + ${r.mainStart()} + ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let outputIndices = ${l.offsetToIndices(`global_idx`)}; + let batch: u32 = outputIndices[0]; + let output_channel: u32 = outputIndices[${c?3:1}]; + let xRCCorner: vec2 = vec2(outputIndices[${c?1:2}], outputIndices[${c?2:3}]) * uniforms.strides - uniforms.pads; + let group_id: u32 = output_channel * ${d} / uniforms.output_channels_per_group; + var in_channel_offset = group_id * uniforms.w_shape[${c?2:1}]; + + var value: ${l.type.value} = ${l.type.value}(0); + ${_} + ${a} + ${f} + ${l.setByOffset(`global_idx`,`value`)} + }`};return{name:`GroupedConv`,shaderCache:{hint:`${t.cacheKey}_${d}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},Io=(e,t,n,r)=>{let i=e.length>2,a=tr(n[3]),o=tr(n[2]),s=U.size(n)/a/o,c=[e[0].dims[0],e[0].dims[1],e[0].dims[2],e[0].dims[3]/a],l=[e[1].dims[0],e[1].dims[1],e[1].dims[2],e[1].dims[3]/a],u=[n[0],n[1],n[2],n[3]/a],d=[{type:12,data:s},{type:6,data:[t.strides[0],t.strides[1]]},{type:6,data:[t.pads[0],t.pads[1]]}];to(t,d),d.push(...G(c,l,u));let f=(o-1)*t.strides[1]+l[1],p=n=>{let r=J(`output`,e[0].dataType,u.length,a),s=$n(r.type.tensor),d=eo(t,r.type.value,s),p=q(`x`,e[0].dataType,c.length,a),m=q(`w`,e[1].dataType,l.length,a),h=[p,m];i&&h.push(q(`b`,e[2].dataType,e[2].dims,a));let g=i?`value += b[output_channel];`:``,_=[{name:`output_size`,type:`u32`},{name:`strides`,type:`i32`,length:2},{name:`pads`,type:`i32`,length:2}];return no(t,_),` + ${n.registerUniforms(_).declareVariables(...h,r)} + ${n.mainStart()} + ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let width0 = uniforms.output_shape[3]; + let output_channel = global_idx % width0; + var index1 = global_idx / width0; + let width1 = uniforms.output_shape[2] / ${o}u; + let col = (index1 % width1) * ${o}u; + index1 = index1 / width1; + let row = index1 % uniforms.output_shape[1]; + let batch = index1 / uniforms.output_shape[1]; + + let x_corner = vec2(i32(row), i32(col)) * uniforms.strides - uniforms.pads; + + var x_vals: array<${p.type.value}, ${f}>; + var values: array<${r.type.value}, ${o}>; + let input_channel = output_channel; + // Use constant instead of uniform can give better performance for w's height/width. + for (var w_height: u32 = 0u; w_height < ${l[0]}; w_height++) { + let x_height = x_corner.x + i32(w_height); + if (x_height >= 0 && u32(x_height) < uniforms.x_shape[1]) { + for (var i = 0; i < ${f}; i++) { + let x_width = x_corner.y + i; + if (x_width >= 0 && u32(x_width) < uniforms.x_shape[2]) { + x_vals[i] = ${p.get(`batch`,`u32(x_height)`,`u32(x_width)`,`input_channel`)}; + } else { + x_vals[i] = ${p.type.value}(0); + } + } + for (var w_width: u32 = 0u; w_width < ${l[1]}; w_width++) { + let w_val = ${m.get(`w_height`,`w_width`,`0`,`output_channel`)}; + for (var i = 0u; i < ${o}u; i++) { + values[i] = fma(x_vals[i * u32(uniforms.strides[1]) + w_width], w_val, values[i]); + } + } + } + } + + for (var i = 0u; i < ${o}u; i++) { + var value = values[i]; + ${g} + ${d} + ${r.set(`batch`,`row`,`col + i`,`output_channel`,`value`)}; + } + }`};return{name:`GroupedConv-Vectorize`,shaderCache:{hint:`${t.cacheKey};${a};${o};${f};${l[0]};${l[1]}`,inputDependencies:i?[`rank`,`rank`,`type`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:d}),getShaderSource:p}}}),Ro,zo,Bo,Vo,Ho,Uo,Wo,Go,Ko,qo=M(()=>{"use strict";W(),To(),Po(),So(),Lo(),io(),po(),vr(),Ro=(e,t,n,r,i,a)=>{let o=e[0],s=e.slice(a?1:2,a?3:4),c=s.length,l=t[0],u=t.slice(2).map((e,t)=>e+(e-1)*(n[t]-1)),d=s.map((e,t)=>e+r[t]+r[t+c]).map((e,t)=>Math.floor((e-u[t]+i[t])/i[t]));return d.splice(0,0,o),d.splice(a?3:1,0,l),d},zo=[2,3,1,0],Bo=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length>5)throw Error(`greater than 5D is not supported`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[1]*t.group;if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);if(e.length===3&&(e[2].dims.length!==1||e[1].dims[0]!==e[2].dims[0]))throw Error(`invalid bias`);let i=e[0].dims.length-2;if(t.dilations.length!==i)throw Error(`dilations should be ${i}D`);if(t.strides.length!==i)throw Error(`strides should be ${i}D`);if(t.pads.length!==i*2)throw Error(`pads should be ${i*2}D`);if(t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`)},Vo=(e,t)=>{let n=e.kernelShape.slice();n.length{let t=ro(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],i=e.dilations,a=e.group,o=e.kernel_shape,s=e.pads,c=e.strides,l=e.w_is_const();return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},Uo=(e,t,n,r)=>{let i=n.format===`NHWC`,a=Ro(t[0].dims,t[1].dims,n.dilations,n.pads,n.strides,i);if(n.group!==1){let o=[t[0]];if(i){let r=e.kernelCustomData.wT??e.compute(hr(t[1],zo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),o.push(r)}else o.push(t[1]);t.length===3&&o.push(t[2]),!e.adapterInfo.isArchitecture(`ampere`)&&i&&t[1].dims[0]===n.group&&t[1].dims[1]===1&&n.dilations[0]===1&&n.dilations[1]===1?e.compute(Io(o,n,a,r),{inputs:o}):e.compute(Fo(o,n,a,r),{inputs:o});return}let o=t.length===3,s=t[0].dims[i?1:2],c=t[0].dims[i?2:3],l=t[0].dims[i?3:1],u=t[1].dims[2],d=t[1].dims[3],f=a[i?1:2],p=a[i?2:3],m=a[i?3:1],h=i&&u===s&&d===c&&n.pads[0]===0&&n.pads[1]===0;if(h||u===1&&d===1&&n.dilations[0]===1&&n.dilations[1]===1&&n.strides[0]===1&&n.strides[1]===1&&n.pads[0]===0&&n.pads[1]===0){let u=a[0],d,g,_,v=[];if(i){let r=e.kernelCustomData.wT??e.compute(hr(t[1],zo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];if(n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),h){let e=s*c*l;d=t[0].reshape([1,u,e]),g=r.reshape([1,e,m]),_=[1,u,m]}else d=t[0].reshape([u,s*c,l]),g=r.reshape([1,l,m]),_=[u,f*p,m];v.push(d),v.push(g)}else d=t[0].reshape([u,l,s*c]),g=t[1].reshape([1,m,l]),_=[u,m,f*p],v.push(g),v.push(d);o&&v.push(t[2]);let y=_[2],b=v[0].dims[v[0].dims.length-1];y<8&&b<8?e.compute(fo(v,n,a,_,i,r),{inputs:v}):e.compute(xo(v,n,a,_,i,r),{inputs:v});return}let g=!0,_=e.kernelCustomData.wT??e.compute(hr(t[1],zo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=_);let v=[t[0],_];o&&v.push(t[2]);let y=i?f*p:m,b=i?m:f*p,x=u*d*l;e.compute(wo(v,n,a,y,b,x,o,g,r),{inputs:v})},Wo=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=[0,t.pads[0],0,t.pads[1]],a=[1].concat(t.strides),o=[1].concat(t.dilations),s=[1].concat(t.kernelShape),c=Vo({...t,pads:i,strides:a,dilations:o,kernelShape:s},r);Uo(e,r,c,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},Go=(e,t,n)=>{let r=n.format===`NHWC`?`channelsLast`:`channelsFirst`,i=Vo(n,t),a=n.autoPad===`NOTSET`?n.pads:n.autoPad,o=Mo(t[0].dims,t[1].dims,n.strides,n.dilations,a,!1,r);e.compute(No(t,i,o.outShape,[o.filterDepth,o.filterHeight,o.filterWidth],[o.padInfo.front,o.padInfo.top,o.padInfo.left],r))},Ko=(e,t)=>{if(Bo(e.inputs,t),e.inputs[0].dims.length===3)Wo(e,t);else if(e.inputs[0].dims.length===5)Go(e,e.inputs,t);else{let n=Vo(t,e.inputs);Uo(e,e.inputs,n)}}}),Jo,Yo=M(()=>{"use strict";V(),pn(),W(),Y(),Jo=(e,t,n)=>{let r=e.length>2,i=t.outputShape,a=t.format===`NHWC`,o=t.group,s=e[1].dims,c=s[2]/o,l=s[3],u=a?tr(c):1,d=a&&l===1&&c>=4,f=d?Math.floor(c/4)*4:Math.floor(c/u)*u,p=c-f,m=a?tr(l):1,h=a?l===1?u:m:1,g=U.size(i)/m,_=[Math.ceil(g/64),1,1];H(`verbose`,()=>`[conv2d_backprop_webgpu] dispatch = ${_}`);let v=[`rank`,`rank`],y=[t.strides[0],t.strides[1]],b=[t.kernelShape[a?1:2],t.kernelShape[a?2:3]],x=[t.dilations[0],t.dilations[1]],S=[b[0]+(t.dilations[0]<=1?0:(t.kernelShape[a?1:2]-1)*(t.dilations[0]-1)),b[1]+(t.dilations[1]<=1?0:(t.kernelShape[a?2:3]-1)*(t.dilations[1]-1))],C=[S[0]-1-Math.floor((t.pads[0]+t.pads[2])/2),S[1]-1-Math.floor((t.pads[1]+t.pads[3])/2)],w=[{type:12,data:g},{type:12,data:y},{type:12,data:b},{type:12,data:x},{type:12,data:S},{type:6,data:C},{type:12,data:f},{type:12,data:c},{type:12,data:l},...G(e[0].dims,e[1].dims)];r&&(w.push(...G(e[2].dims)),v.push(`rank`)),w.push(...G(i));let T=t=>{let n=[{name:`output_size`,type:`u32`},{name:`strides`,type:`u32`,length:y.length},{name:`filter_dims`,type:`u32`,length:b.length},{name:`dilations`,type:`u32`,length:b.length},{name:`effective_filter_dims`,type:`u32`,length:S.length},{name:`pads`,type:`i32`,length:C.length},{name:`input_channels_per_group_int`,type:`u32`},{name:`input_channels_per_group`,type:`u32`},{name:`output_channels_per_group`,type:`u32`}],o=$n(e[0].dataType),s=a?1:2,c=a?2:3,l=a?3:1,f=q(`W`,e[1].dataType,e[1].dims.length,h),g=q(`Dy`,e[0].dataType,e[0].dims.length,u),_=[g,f];r&&_.push(q(`bias`,e[2].dataType,[i[l]].length,m));let v=J(`result`,e[0].dataType,i.length,m),x=()=>{let e=``;if(d)u===4?e+=` + let xValue = ${g.getByOffset(`x_offset`)}; + let wValue = ${f.getByOffset(`w_offset`)}; + dotProd = dotProd + dot(xValue, wValue); + x_offset += 1u; + w_offset += 1u;`:u===2?e+=` + dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)})); + x_offset += 2u; + w_offset += 2u;`:u===1&&(e+=` + dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}, ${g.getByOffset(`x_offset + 2u`)}, ${g.getByOffset(`x_offset + 3u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)}, ${f.getByOffset(`w_offset + 2u`)}, ${f.getByOffset(`w_offset + 3u`)})); + x_offset += 4u; + w_offset += 4u;`);else if(e+=` + let xValue = ${a?g.getByOffset(`${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}`):g.get(`batch`,`inputChannel`,`idyR`,`idyC`)}; + `,u===1)e+=` + let w_offset = ${f.indicesToOffset(`${f.type.indices}(u32(wRPerm), u32(wCPerm), inputChannel, wOutChannel)`)}; + let wValue = ${f.getByOffset(`w_offset / ${h}`)}; + dotProd = dotProd + xValue * wValue;`;else for(let t=0;t{if(p===0)return``;if(!d)throw Error(`packInputAs4 ${d} is not true.`);let e=``;if(u===1){e+=`dotProd = dotProd`;for(let t=0;t(i32(r), i32(c)) - uniforms.pads; + let dyRCorner = dyCorner.x; + let dyCCorner = dyCorner.y; + let groupId = d1 / uniforms.output_channels_per_group; + let wOutChannel = d1 - groupId * uniforms.output_channels_per_group; + // Convolve dy(?, ?, d2) with w(:, :, d1, d2) to compute dx(xR, xC, d1). + // ? = to be determined. : = across all values in that axis. + var dotProd = ${v.type.value}(0.0); + var wR: u32 = 0; + if (uniforms.dilations.x == 1) { + // Minimum wR >= 0 that satisfies (dyRCorner + wR) % (uniforms.strides.x) == 0 + wR = u32(((dyRCorner + i32(uniforms.strides.x) - 1) / i32(uniforms.strides.x)) * i32(uniforms.strides.x) - dyRCorner); + } + for (; wR < uniforms.effective_filter_dims.x; wR = wR + 1) { + if (wR % uniforms.dilations.x != 0) { + continue; + } + let dyR = (${o}(dyRCorner) + ${o}(wR)) / ${o}(uniforms.strides[0]); + let wRPerm = uniforms.filter_dims.x - 1 - wR / uniforms.dilations.x; + if (dyR < 0.0 || dyR >= ${o}(uniforms.Dy_shape[${s}]) || fract(dyR) > 0.0 || + wRPerm < 0) { + continue; + } + let idyR: u32 = u32(dyR); + var wC: u32 = 0; + if (uniforms.dilations.y == 1) { + // Minimum wC >= 0 that satisfies (dyCCorner + wC) % (uniforms.strides.y) == 0 + wC = u32(((dyCCorner + i32(uniforms.strides.y) - 1) / i32(uniforms.strides.y)) * i32(uniforms.strides.y) - dyCCorner); + } + for (; wC < uniforms.effective_filter_dims.y; wC = wC + 1) { + if (wC % uniforms.dilations.y != 0) { + continue; + } + let dyC = (${o}(dyCCorner) + ${o}(wC)) / ${o}(uniforms.strides.y); + let wCPerm = uniforms.filter_dims.y - 1 - wC / uniforms.dilations.y; + if (dyC < 0.0 || dyC >= ${o}(uniforms.Dy_shape[${c}]) || + fract(dyC) > 0.0 || wCPerm < 0) { + continue; + } + let idyC: u32 = u32(dyC); + var inputChannel = groupId * uniforms.input_channels_per_group; + ${d?` + var x_offset = ${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}; + var w_offset = ${f.indicesToOffset(`${f.type.indices}(wRPerm, wCPerm, inputChannel, wOutChannel)`)} / ${h}; + `:``} + for (var d2: u32 = 0; d2 < uniforms.input_channels_per_group_int; d2 = d2 + ${d?4:u}) { + ${x()} + inputChannel = inputChannel + ${d?4:u}; + } + ${w()} + wC = wC + uniforms.strides.y - 1; + } + wR = wR + uniforms.strides[0] - 1; + } + let value = dotProd${r?` + bias[d1 / ${m}]`:``}; + ${v.setByOffset(`global_idx`,`value`)}; + `;return` + ${t.registerUniforms(n).declareVariables(..._,v)} + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)}; + ${T}}`};return{name:`ConvTranspose2D`,shaderCache:{hint:`${t.cacheKey};${u}${h}${m}${d}${p}`,inputDependencies:v},getRunData:()=>({dispatchGroup:{x:_[0],y:_[1],z:_[2]},outputs:[{dims:n?n(i):i,dataType:e[0].dataType}],programUniforms:w}),getShaderSource:T}}}),Xo,Zo,Qo,$o,es,ts,ns,rs,os,ss=M(()=>{"use strict";Yo(),io(),vr(),Xo=(e,t,n,r,i,a)=>(e-1)*t+n+(r-1)*i+1-a,Zo=(e,t,n,r,i)=>{let a=Math.floor(e/2);t===`SAME_UPPER`?(n[r]=a,n[i]=e-a):t===`SAME_LOWER`&&(n[r]=e-a,n[i]=a)},Qo=(e,t,n,r,i,a,o,s,c,l)=>{let u=e.length-2,d=l.length===0;c.length{let n=e.kernelShape.slice();if(e.kernelShape.length===0||e.kernelShape.reduce((e,t)=>e*t,1)===0){n.length=0;for(let e=2;ee+t,0)===0){let e=t[0].dims.length-2;c=Array(e).fill(1)}let l=e.strides.slice();if(l.reduce((e,t)=>e+t,0)===0){let e=t[0].dims.length-2;l=Array(e).fill(1)}Qo(s,n,c,e.autoPad,e.group,i,l,r,o,a);let u=Object.assign({},e);return Object.assign(u,{kernelShape:n,pads:i,outputPadding:o,outputShape:a,dilations:c,strides:l}),u},es=e=>{let t=ro(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][typeof e.autoPad>`u`?0:e.autoPad],i=e.dilations,a=e.group,o=e.kernelShape,s=e.pads,c=e.strides,l=e.wIsConst(),u=e.outputPadding,d=e.outputShape;return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,outputPadding:u,outputShape:d,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},ts=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length!==4&&e[0].dims.length!==3)throw Error(`currently only support 2-dimensional conv`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[0];if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);let i=e[1].dims[1]*t.group;if(e.length===3&&(e[2].dims.length!==1||e[2].dims[0]!==i))throw Error(`invalid bias`);let a=e[0].dims.length-2;if(t.dilations.reduce((e,t)=>e+t,0)>0&&t.dilations.length!==a)throw Error(`dilations should be ${a}D`);if(t.strides.reduce((e,t)=>e+t,0)>0&&t.strides.length!==a)throw Error(`strides should be ${a}D`);if(t.pads.reduce((e,t)=>e+t,0)>0&&t.pads.length!==a*2)throw Error(`pads should be ${a*2}D`);if(t.outputPadding.length!==a&&t.outputPadding.length!==0)throw Error(`output_padding should be ${a}D`);if(t.kernelShape.reduce((e,t)=>e+t,0)>0&&t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`);if(t.outputShape.length!==0&&t.outputShape.length!==e[0].dims.length-2)throw Error(`invalid output shape`)},ns=(e,t,n,r)=>{let i=e.kernelCustomData.wT??e.compute(hr(t[1],[2,3,0,1]),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=i);let a=[t[0],i];t.length===3&&a.push(t[2]),e.compute(Jo(a,n,r),{inputs:a})},rs=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=t.kernelShape;(i.length===0||i[0]===0)&&(i=[e.inputs[1].dims[2]]);let a=t.dilations;(a.length===0||a[0]===0)&&(a=[1]);let o=t.strides;(o.length===0||o[0]===0)&&(o=[1]);let s=t.pads;s.length===0&&(s=[0,0]),s=[0,s[0],0,s[1]],o=[1].concat(o),a=[1].concat(a),i=[1].concat(i);let c=t.outputPadding;c=[0].concat(c);let l=$o({...t,pads:s,strides:o,dilations:a,kernelShape:i,outputPadding:c},r);ns(e,r,l,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},os=(e,t)=>{if(ts(e.inputs,t),e.inputs[0].dims.length===3)rs(e,t);else{let n=$o(t,e.inputs);ns(e,e.inputs,n)}}}),cs,ls,us,ds=M(()=>{"use strict";V(),W(),Xn(),Y(),cs=(e,t,n,r)=>{let i=U.size(t),a=t.length,o=q(`input`,e,a),s=J(`output`,e,a),c=n.dataType===6?n.getInt32Array()[0]:Number(n.getBigInt64Array()[0]),l=U.normalizeAxis(c,a),u=e=>{let t=` i32(${o.indicesGet(`inputIndices`,`uniforms.axis`)}) `,n=K(`uniforms.input_shape`,`uniforms.axis`,a),i=r.reverse?t+(r.exclusive?` + 1`:``):`0`,c=r.reverse?n:t+(r.exclusive?``:` + 1`);return` + ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axis`,`u32`).declareVariables(o,s)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + var inputIndices = ${s.offsetToIndices(`global_idx`)}; + var sum = ${s.type.value}(0); + let first : i32 = ${i}; + let last : i32 = ${c}; + for (var i : i32 = first; i < last; i++) { + ${o.indicesSet(`inputIndices`,`uniforms.axis`,`u32(i)`)}; + sum = sum + ${o.getByIndices(`inputIndices`)}; + } + ${s.setByOffset(`global_idx`,`sum`)}; + }`};return{name:`CumSum`,shaderCache:{hint:r.cacheKey,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:t,dataType:e}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:[{type:12,data:i},{type:12,data:l},...G(t,t)]}),getShaderSource:u}},ls=(e,t)=>{let n=e.inputs[0].dims,r=e.inputs[0].dataType,i=e.inputs[1];e.compute(cs(r,n,i,t),{inputs:[0]})},us=e=>{let t=e.exclusive===1,n=e.reverse===1;return Yn({exclusive:t,reverse:n})}}),fs,ps,ms,hs,gs,_s=M(()=>{"use strict";V(),W(),Xn(),Y(),fs=e=>{if(!e||e.length!==1)throw Error(`DepthToSpace requires 1 input.`);if(e[0].dims.length!==4)throw Error(`DepthToSpace requires 4D input.`)},ps=(e,t,n,r)=>{let i=[];i.push(`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { + var a: ${n.type.indices};`);for(let r=0;r{let n,r,i,a,o,s,c=t.format===`NHWC`,l=t.blocksize,u=t.mode===`DCR`;c?([n,r,i,a]=e.dims,o=u?[n,r,i,l,l,a/l**2]:[n,r,i,a/l**2,l,l],s=u?[0,1,3,2,4,5]:[0,1,4,2,5,3]):([n,r,i,a]=[e.dims[0],e.dims[2],e.dims[3],e.dims[1]],o=u?[n,l,l,a/l**2,r,i]:[n,a/l**2,l,l,r,i],s=u?[0,3,4,1,5,2]:[0,1,4,2,5,3]);let d=e.reshape(o),f=d.dims.length,p=e.dataType,m=q(`a`,p,f),h=J(`output`,p,f),g=e=>` + ${e.registerUniform(`output_size`,`u32`).declareVariables(m,h)} + + ${ps(s,f,m,h)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let indices = ${h.offsetToIndices(`global_idx`)}; + let aIndices = perm(indices); + + ${h.setByOffset(`global_idx`,m.getByIndices(`aIndices`))} + }`;return{name:`DepthToSpace`,shaderCache:{hint:`${e.dims};${t.blocksize};${t.mode}`,inputDependencies:[`rank`]},getRunData:e=>{let t=c?[n,r*l,i*l,a/l**2]:[n,a/l**2,r*l,i*l],o=U.size(t),u=d.dims,f=U.sortBasedOnPerm(u,s);return{outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:[{type:12,data:o},...G(u,f)]}},getShaderSource:g}},hs=(e,t)=>{fs(e.inputs),e.compute(ms(e.inputs[0],t))},gs=e=>Yn({blocksize:e.blocksize,mode:e.mode,format:e.format})}),vs,ys,bs,xs,Ss,Cs,ws,Ts,Es,Ds,Os,ks=M(()=>{"use strict";V(),W(),Xn(),Y(),vs=`[a-zA-Z]|\\.\\.\\.`,ys=`(`+vs+`)+`,bs=`^`+ys+`$`,xs=`(`+ys+`,)*`+ys,Ss=`^`+xs+`$`,Cs=class{constructor(e=-1){this.symbolToIndices=new Map,this.inputIndex=e}addSymbol(e,t){let n=this.symbolToIndices.get(e);n===void 0?n=[t]:n.push(t),this.symbolToIndices.set(e,n)}},ws=class{constructor(e,t){this.equation=t,this.hasEllipsis=!1,this.symbolToInfo=new Map,this.lhs=[],this.outputDims=[];let[n,r]=t.includes(`->`)?t.split(`->`,2):[t,``];if(!n.match(RegExp(Ss)))throw Error(`Invalid LHS term`);if(n.split(`,`).forEach((t,n)=>{let r=e[n].dims.slice();if(!t.match(RegExp(bs)))throw Error(`Invalid LHS term`);let i=this.processTerm(t,!0,r,n);this.lhs.push(i)}),r===``)r+=[...this.symbolToInfo.entries()].filter(([e,t])=>t.count===1||e===`...`).map(([e])=>e).join(``);else if(!r.match(RegExp(ys)))throw Error(`Invalid RHS`);r.match(RegExp(vs,`g`))?.forEach(e=>{if(e===`...`)this.outputDims=this.outputDims.concat(this.ellipsisDims);else{let t=this.symbolToInfo.get(e);if(t===void 0)throw Error(`Invalid RHS symbol`);this.outputDims.push(t.dimValue)}}),this.rhs=this.processTerm(r,!1,this.outputDims)}addSymbol(e,t,n){let r=this.symbolToInfo.get(e);if(r!==void 0){if(r.dimValue!==t&&r.count!==1)throw Error(`Dimension mismatch`);r.count++,r.inputIndices.push(n)}else r={count:1,dimValue:t,inputIndices:[n]};this.symbolToInfo.set(e,r)}processTerm(e,t,n,r=-1){let i=n.length,a=!1,o=[],s=0;if(!e.match(RegExp(bs))&&!t&&e!==``)throw Error(`Invalid LHS term`);let c=e.match(RegExp(vs,`g`)),l=new Cs(r);return c?.forEach((e,u)=>{if(e===`...`){if(a)throw Error(`Only one ellipsis is allowed per input term`);a=!0;let e=i-c.length+1;if(e<0)throw Error(`Ellipsis out of bounds`);if(o=n.slice(s,s+e),this.hasEllipsis){if(this.ellipsisDims.length!==o.length||this.ellipsisDims.toString()!==o.toString())throw Error(`Ellipsis dimensions mismatch`)}else if(t)this.hasEllipsis=!0,this.ellipsisDims=o;else throw Error(`Ellipsis must be specified in the LHS`);for(let e=0;ee+`_max`,Es=(e,t,n,r)=>{let i=e.map(e=>e.length).map((e,n)=>q(`input${n}`,t,e)),a=U.size(r),o=J(`output`,t,r.length),s=[...n.symbolToInfo.keys()].filter(e=>!n.rhs.symbolToIndices.has(e)),c=e=>{let t=[],r=`var prod = 1.0;`,a=`var sum = 0.0;`,c=`sum += prod;`,l=[],u=[],d=[],f=[],p=n.symbolToInfo.size===n.rhs.symbolToIndices.size;n.symbolToInfo.forEach((e,r)=>{if(n.rhs.symbolToIndices.has(r)){let a=n.rhs.symbolToIndices.get(r)?.[0];a!==void 0&&n.lhs.forEach((n,s)=>{if(e.inputIndices.includes(s)){let e=n.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{t.push(`${i[s].indicesSet(`input${s}Indices`,e,o.indicesGet(`outputIndices`,a))}`)})}})}else n.lhs.forEach((t,n)=>{if(e.inputIndices.includes(n)){let e=t.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{l.push(`${i[n].indicesSet(`input${n}Indices`,e,`${r}`)}`)}),f.push(`prod *= ${i[n].getByIndices(`input${n}Indices`)};`)}}),u.push(`for(var ${r}: u32 = 0; ${r} < uniforms.${Ts(r)}; ${r}++) {`),d.push(`}`)});let m=p?[...t,`let sum = ${i.map((e,t)=>e.getByIndices(`input${t}Indices`)).join(` * `)};`]:[...t,a,...u,...l,r,...f,c,...d];return` + ${e.registerUniforms(s.map(e=>({name:`${Ts(e)}`,type:`u32`}))).registerUniform(`outputSize`,`u32`).declareVariables(...i,o)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + var outputIndices = ${o.offsetToIndices(`global_idx`)}; + ${i.map((e,t)=>`var input${t}Indices: ${i[t].type.indices};`).join(` +`)} + ${m.join(` +`)}; + ${o.setByOffset(`global_idx`,`sum`)}; + }`};return{name:`Einsum`,shaderCache:{hint:n.equation,inputDependencies:e.map(()=>`rank`)},getRunData:()=>{let i=s.filter(e=>n.symbolToInfo.has(e)).map(e=>({type:12,data:n.symbolToInfo.get(e)?.dimValue||0}));i.push({type:12,data:a});let o=e.map((e,t)=>[...G(e)]).reduce((e,t)=>e.concat(t),i);return o.push(...G(r)),{outputs:[{dims:r,dataType:t}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:o}},getShaderSource:c}},Ds=(e,t)=>{let n=new ws(e.inputs,t.equation),r=n.outputDims,i=e.inputs.map((e,t)=>e.dims);e.compute(Es(i,e.inputs[0].dataType,n,r))},Os=e=>{let t=e.equation.replace(/\s+/g,``);return Yn({equation:t})}}),As,js,Ms,Ns,Ps,Fs=M(()=>{"use strict";V(),W(),Y(),As=e=>{if(!e||e.length!==2)throw Error(`Expand requires 2 input.`);let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=n.length{let n=e.length-t.length,r=[];for(let t=0;te.length>t.length?js(e,t):js(t,e),Ns=e=>{let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=Ms(t,n),i=e[0].dataType,a=i===9||U.size(t)===1,o=i===9||t.length>0&&t[t.length-1]%4==0?4:1,s=a||r.length>0&&r[r.length-1]%4==0?4:1,c=Math.ceil(U.size(r)/s),l=e=>{let n=q(`input`,i,t.length,o),a=J(`output`,i,r.length,s),c;if(i===9){let e=(e,t,r=``)=>` + let outputIndices${t} = ${a.offsetToIndices(`outputOffset + ${t}u`)}; + let offset${t} = ${n.broadcastedIndicesToOffset(`outputIndices${t}`,a)}; + let index${t} = offset${t} / 4u; + let component${t} = offset${t} % 4u; + ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); + `;c=` + let outputOffset = global_idx * ${s}; + var data = vec4(0); + ${e(`data`,0,`u32`)} + ${e(`data`,1,`u32`)} + ${e(`data`,2,`u32`)} + ${e(`data`,3,`u32`)} + ${a.setByOffset(`global_idx`,`data`)} + }`}else c=` + let outputIndices = ${a.offsetToIndices(`global_idx * ${s}`)}; + let inputOffset = ${n.broadcastedIndicesToOffset(`outputIndices`,a)}; + let data = ${a.type.value}(${n.getByOffset(`inputOffset / ${o}`)}); + ${a.setByOffset(`global_idx`,`data`)} + }`;return` + ${e.registerUniform(`vec_size`,`u32`).declareVariables(n,a)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + ${c}`},u=[{type:12,data:c},...G(t,r)];return{name:`Expand`,shaderCache:{hint:`${r.length};${o}${s}`,inputDependencies:[`rank`]},getShaderSource:l,getRunData:()=>({outputs:[{dims:r,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:u})}},Ps=e=>{As(e.inputs),e.compute(Ns(e.inputs),{inputs:[0]})}}),Is,Ls,Rs=M(()=>{"use strict";V(),W(),Y(),Oa(),Is=e=>{let t=e[0].dataType,n=U.size(e[0].dims),r=U.size(e[1].dims),i=r%4==0,a=e=>{let n=q(`x`,t,[1],4),r=q(`bias`,t,[1],4),a=J(`y`,t,[1],4),o=[{name:`output_vec_size`,type:`u32`},{name:`bias_size`,type:`u32`}],s=e=>` + let bias${e}_offset: u32 = (global_idx * 4 + ${e}) % uniforms.bias_size; + let bias${e} = ${r.getByOffset(`bias${e}_offset / 4`)}[bias${e}_offset % 4];`,c=i?` + let bias = ${r.getByOffset(`global_idx % (uniforms.bias_size / 4)`)};`:`${s(0)}${s(1)}${s(2)}${s(3)} + let bias = ${n.type.value}(bias0, bias1, bias2, bias3);`;return`${e.registerUniforms(o).declareVariables(n,r,a)} + + ${ba(er(t))} + + ${e.mainStart(Zn)} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_vec_size`)} + + let x = ${n.getByOffset(`global_idx`)}; + ${c} + let x_in = x + bias; + ${a.setByOffset(`global_idx`,xa(`x_in`))} + }`};return{name:`FastGeluWithBias`,shaderCache:{hint:`${i}`,inputDependencies:[`type`,`type`]},getShaderSource:a,getRunData:e=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],programUniforms:[{type:12,data:Math.ceil(n/4)},{type:12,data:r}],dispatchGroup:{x:Math.ceil(n/Zn/4)}})}},Ls=e=>{e.inputs.length<2||U.size(e.inputs[1].dims)===0?Sa(e):e.compute(Is(e.inputs))}}),zs,Bs,Vs,Hs,Us=M(()=>{"use strict";V(),W(),Xn(),Y(),zs=e=>{if(!e||e.length!==2)throw Error(`Gather requires 2 inputs.`)},Bs=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=U.normalizeAxis(t.axis,i),o=n.slice(0);o.splice(a,1,...r);let s=n[a],c=e[0].dataType===9?4:1,l=Math.ceil(U.size(o)/c),u=[{type:12,data:l},{type:6,data:s},{type:12,data:a},...G(e[0].dims,e[1].dims,o)],d=t=>{let n=q(`data`,e[0].dataType,e[0].dims.length,c),s=q(`inputIndices`,e[1].dataType,e[1].dims.length),l=J(`output`,e[0].dataType,o.length,c),u=e=>{let t=r.length,c=`var indicesIndices${e} = ${s.type.indices}(0);`;for(let n=0;n1?`indicesIndices${e}[${n}]`:`indicesIndices${e}`} = ${o.length>1?`outputIndices${e}[uniforms.axis + ${n}]`:`outputIndices${e}`};`;c+=` + var idx${e} = ${s.getByIndices(`indicesIndices${e}`)}; + if (idx${e} < 0) { + idx${e} = idx${e} + uniforms.axisDimLimit; + } + var dataIndices${e} : ${n.type.indices}; + `;for(let n=0,r=0;n1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = u32(idx${e});`,r+=t):(c+=`${i>1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = ${o.length>1?`outputIndices${e}[${r}]`:`outputIndices${e}`};`,r++);return c},d;if(e[0].dataType===9){let e=(e,t,r=``)=>` + let outputIndices${t} = ${l.offsetToIndices(`outputOffset + ${t}u`)}; + ${u(t)}; + let offset${t} = ${n.indicesToOffset(`dataIndices${t}`)}; + let index${t} = offset${t} / 4u; + let component${t} = offset${t} % 4u; + ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); + `;d=` + let outputOffset = global_idx * ${c}; + var value = vec4(0); + ${e(`value`,0,`u32`)} + ${e(`value`,1,`u32`)} + ${e(`value`,2,`u32`)} + ${e(`value`,3,`u32`)} + ${l.setByOffset(`global_idx`,`value`)} + `}else d=` + let outputIndices = ${l.offsetToIndices(`global_idx`)}; + ${u(``)}; + let value = ${n.getByIndices(`dataIndices`)}; + ${l.setByOffset(`global_idx`,`value`)}; + `;return` + ${t.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(n,s,l)} + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + ${d} + }`};return{name:`Gather`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:o,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:d}},Vs=e=>Yn({axis:e.axis}),Hs=(e,t)=>{let n=e.inputs;zs(n),e.compute(Bs(e.inputs,t))}}),Ws,Gs,Ks,qs=M(()=>{"use strict";V(),W(),Y(),Ws=(e,t,n,r,i,a,o,s,c)=>{let l=[{type:12,data:a},{type:12,data:r},{type:12,data:i},{type:12,data:n},{type:12,data:o},{type:12,data:s},{type:12,data:c}],u=[a];l.push(...G(t.dims,u));let d=e=>{let r=q(`indices_data`,t.dataType,t.dims.length),a=J(`input_slice_offsets_data`,12,1,1),o=[r,a],s=[{name:`output_size`,type:`u32`},{name:`batch_dims`,type:`u32`},{name:`input_dims`,type:`u32`,length:i.length},{name:`sizes_from_slice_dims_data`,type:`u32`,length:n.length},{name:`num_slices_per_batch`,type:`u32`},{name:`input_batch_stride`,type:`u32`},{name:`num_slice_dims`,type:`u32`}];return` + ${e.registerUniforms(s).declareVariables(...o)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let batch_idx = global_idx / uniforms.num_slices_per_batch; + let base_offset = batch_idx * uniforms.input_batch_stride; + + let slice_indices_base_offset = global_idx * uniforms.num_slice_dims; + var relative_slice_offset = 0; + for (var dim_idx = 0u; dim_idx < uniforms.num_slice_dims; dim_idx ++) { + var index = i32(indices_data[dim_idx + slice_indices_base_offset].x); + let input_dim_idx = uniforms.batch_dims + dim_idx; + if (index < 0) { + ${i.length===1?`index += i32(uniforms.input_dims);`:`index += i32(uniforms.input_dims[input_dim_idx]);`} + } + ${n.length===1?`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data);`:`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data[dim_idx]);`} + } + + input_slice_offsets_data[global_idx] = base_offset + u32(relative_slice_offset); + }`};return e.compute({name:`computeSliceOffsets`,shaderCache:{hint:`${i.length}_${n.length}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:u,dataType:e.inputs[1].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:l}),getShaderSource:d},{inputs:[t],outputs:[-1]})[0]},Gs=(e,t)=>{let n=e.inputs,r=n[0].dims,i=n[0].dataType,a=n[1].dims,o=a[a.length-1],s=U.sizeToDimension(a,a.length-1),c=U.sizeFromDimension(r,t.batchDims+o),l=U.sizeToDimension(r,t.batchDims),u=U.sizeFromDimension(r,t.batchDims),d=s/l,f=Array(o),p=c;for(let e=0;er.length)throw Error(`last dimension of indices must not be larger than rank of input tensor`);let g=a.slice(0,-1).concat(r.slice(h)),_=U.size(g),v=[{type:12,data:_},{type:12,data:c},...G(n[0].dims,m.dims,g)],y=e=>{let t=q(`data`,n[0].dataType,n[0].dims.length),r=q(`slice_offsets`,12,m.dims.length),i=J(`output`,n[0].dataType,g.length);return` + ${e.registerUniform(`output_size`,`u32`).registerUniform(`slice_size`,`u32`).declareVariables(t,r,i)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let slice_offset = slice_offsets[global_idx / uniforms.slice_size]; + output[global_idx] = data[u32(slice_offset) + global_idx % uniforms.slice_size]; + }`};e.compute({name:`GatherND`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:g,dataType:i}],dispatchGroup:{x:Math.ceil(_/64)},programUniforms:v}),getShaderSource:y},{inputs:[n[0],m]})},Ks=e=>({batchDims:e.batch_dims,cacheKey:``})}),Js,Ys,Xs,Zs,Qs=M(()=>{"use strict";V(),W(),Xn(),Y(),Js=(e,t)=>{if(e.length<3||e.length>4)throw Error(`GatherBlockQuantized requires 3 or 4 inputs.`);let n=U.normalizeAxis(t.quantizeAxis,e[0].dims.length),r=t.blockSize,i=e[0],a=e[2],o=e.length===4?e[3]:void 0;if(a.dims.length!==i.dims.length||!i.dims.map((e,t)=>t===n?Math.ceil(e/r)===a.dims[t]:e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Scales must have the same rank as the input tensor and the dims should match except on gatherAxis.`);if(o){if(o.dataType!==i.dataType)throw Error(`Zero point must have the same data type as the input tensor.`);if(o.dims.length!==a.dims.length||!o.dims.map((e,t)=>e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Zero point must have the same rank as the input tensor and the dims should match except on quantizeAxis.`)}},Ys=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=U.normalizeAxis(t.gatherAxis,i),o=U.normalizeAxis(t.quantizeAxis,i),s=n.slice(0);s.splice(a,1,...r);let c=U.size(s),l=e[2].dataType,u=e[0].dataType===22,d=[{type:12,data:c},{type:12,data:o},{type:12,data:a},{type:12,data:t.blockSize},...G(...e.map((e,t)=>e.dims),s)],f=t=>{let i=q(`data`,e[0].dataType,e[0].dims.length),o=q(`inputIndices`,e[1].dataType,e[1].dims.length),c=q(`scales`,e[2].dataType,e[2].dims.length),d=e.length>3?q(`zeroPoint`,e[3].dataType,e[3].dims.length):void 0,f=J(`output`,l,s.length),p=[i,o,c];d&&p.push(d);let m=[{name:`output_size`,type:`u32`},{name:`quantize_axis`,type:`u32`},{name:`gather_axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` + ${t.registerUniforms(m).declareVariables(...p,f)} + ${t.mainStart()} + let output_indices = ${f.offsetToIndices(`global_idx`)}; + var indices_indices = ${o.type.indices}(0); + ${r.length>1?` + for (var i: u32 = 0; i < ${r.length}; i++) { + let index = ${f.indicesGet(`output_indices`,`uniforms.gather_axis + i`)}; + ${o.indicesSet(`indices_indices`,`i`,`index`)}; + }`:`indices_indices = ${f.indicesGet(`output_indices`,`uniforms.gather_axis`)};`}; + var data_indices = ${i.type.indices}(0); + for (var i: u32 = 0; i < uniforms.gather_axis; i++) { + let index = ${f.indicesGet(`output_indices`,`i`)}; + ${i.indicesSet(`data_indices`,`i`,`index`)}; + } + var index_from_indices = ${o.getByIndices(`indices_indices`)}; + if (index_from_indices < 0) { + index_from_indices += ${n[a]}; + } + ${i.indicesSet(`data_indices`,`uniforms.gather_axis`,`u32(index_from_indices)`)}; + for (var i = uniforms.gather_axis + 1; i < ${s.length}; i++) { + let index = ${f.indicesGet(`output_indices`,`i + ${r.length} - 1`)}; + ${i.indicesSet(`data_indices`,`i`,`index`)}; + } + let data_offset = ${i.indicesToOffset(`data_indices`)}; + let data_index = data_offset % 8; + // Convert 4-bit packed data to 8-bit packed data. + let packed_4bit_quantized_data = ${i.getByOffset(`data_offset / 8`)}; + let packed_8bit_quantized_data = (packed_4bit_quantized_data >> (4 * (data_index % 2))) & 0x0f0f0f0f; + let quantized_data_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_quantized_data)); + let quantized_data = quantized_data_vec[data_index / 2]; + var scale_indices = data_indices; + let quantize_axis_index = ${c.indicesGet(`data_indices`,`uniforms.quantize_axis`)} / uniforms.block_size; + ${c.indicesSet(`scale_indices`,`uniforms.quantize_axis`,`quantize_axis_index`)}; + var scale = ${c.getByIndices(`scale_indices`)}; + ${d?` + let zero_point_indices = scale_indices; + let zero_point_offset = ${d.indicesToOffset(`zero_point_indices`)}; + let zero_point_index = zero_point_offset % 8; + let packed_4bit_zero_points = ${d.getByOffset(`zero_point_offset / 8`)}; + let packed_8bit_zero_points = (packed_4bit_zero_points >> (4 * (zero_point_index % 2))) & 0x0f0f0f0f; + let zero_point_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_zero_points)); + let zero_point = zero_point_vec[zero_point_index / 2];`:`var zero_point = 0`}; + let dequantized_data = ${er(l)}(quantized_data - zero_point) * scale; + ${f.setByOffset(`global_idx`,`dequantized_data`)}; + }`};return{name:`GatherBlockQuantized`,shaderCache:{hint:`${t.cacheKey};${e.filter((e,t)=>t!==1).map(e=>e.dims.join(`_`)).join(`;`)}`,inputDependencies:Array.from({length:e.length},(e,t)=>`rank`)},getRunData:()=>({outputs:[{dims:s,dataType:l}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:d}),getShaderSource:f}},Xs=(e,t)=>{let n=e.inputs;Js(n,t),e.compute(Ys(e.inputs,t))},Zs=e=>Yn({blockSize:e.blockSize,gatherAxis:e.gatherAxis,quantizeAxis:e.quantizeAxis})}),$s,ec,tc,nc,rc=M(()=>{"use strict";V(),W(),Xn(),Y(),$s=e=>{if(!e||e.length!==2)throw Error(`GatherElements requires 2 inputs.`);if(e[0].dims.length<1)throw Error(`GatherElements requires that the data input be rank >= 1.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`GatherElements requires that the data input and + indices input tensors be of same rank.`)},ec=(e,t)=>{let n=e[0].dims,r=e[0].dataType,i=n.length,a=e[1].dims,o=e[1].dataType,s=U.normalizeAxis(t.axis,i),c=n[s],l=a.slice(0),u=U.size(l),d=q(`input`,r,i),f=q(`indicesInput`,o,a.length),p=J(`output`,r,l.length),m=[{type:12,data:u},{type:6,data:c},{type:12,data:s}];return m.push(...G(n,a,l)),{name:`GatherElements`,shaderCache:{inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:l,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:m}),getShaderSource:e=>` + ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(d,f,p)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + + let outputIndices = ${p.offsetToIndices(`global_idx`)}; + + var idx = ${f.getByOffset(`global_idx`)}; + if (idx < 0) { + idx = idx + uniforms.axisDimLimit; + } + var inputIndices = ${d.type.indices}(outputIndices); + ${d.indicesSet(`inputIndices`,`uniforms.axis`,`u32(idx)`)}; + let value = ${d.getByIndices(`inputIndices`)}; + + ${p.setByOffset(`global_idx`,`value`)}; + }`}},tc=e=>Yn({axis:e.axis}),nc=(e,t)=>{let n=e.inputs;$s(n),e.compute(ec(e.inputs,t))}}),ic,ac,oc,sc,cc=M(()=>{"use strict";V(),W(),Y(),ic=e=>{if(!e)throw Error(`Input is missing`);if(e.length<2||e.length>3)throw Error(`Invaid input number.`);if(e.length===3&&e[2].dims.length>2)throw Error(`Invalid input shape of C`);if(e[0].dataType!==e[1].dataType||e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`Input types are mismatched`)},ac=(e,t)=>{let n=e[0].dims.slice(),r=e[1].dims.slice(),[i,a,o]=_n.getShapeOfGemmResult(n,t.transA,r,t.transB,e.length===3?e[2].dims:void 0),s=[i,a];if(!s)throw Error(`Can't use gemm on the given tensors`);let c=16,l=Math.ceil(a/c),u=Math.ceil(i/c),d=!0,f=U.size(s),p=[{type:12,data:d?l:f},{type:12,data:i},{type:12,data:a},{type:12,data:o},{type:1,data:t.alpha},{type:1,data:t.beta}],m=[`type`,`type`];e.length===3&&(p.push(...G(e[2].dims)),m.push(`rank`)),p.push(...G(s));let h=n=>{let r=``;t.transA&&t.transB?r=`value += a[k * uniforms.M + m] * b[n * uniforms.K + k];`:t.transA&&!t.transB?r=`value += a[k * uniforms.M + m] * b[k * uniforms.N + n];`:!t.transA&&t.transB?r=`value += a[m * uniforms.K + k] * b[n * uniforms.K + k];`:!t.transA&&!t.transB&&(r=`value += a[m * uniforms.K + k] * b[k * uniforms.N + n];`);let i=t.alpha===1?``:`value *= uniforms.alpha;`,a=q(`a`,e[0].dataType,e[0].dims),o=q(`b`,e[1].dataType,e[1].dims),c=a.type.value,l=null,u=[a,o];e.length===3&&(l=q(`c`,e[2].dataType,e[2].dims.length),u.push(l));let d=J(`output`,e[0].dataType,s.length);u.push(d);let f=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}];return` + ${n.registerUniforms(f).declareVariables(...u)} + + ${n.mainStart()} + ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let m = global_idx / uniforms.N; + let n = global_idx % uniforms.N; + + var value = ${c}(0); + for (var k: u32 = 0u; k < uniforms.K; k++) { + ${r} + } + + ${i} + ${l==null?``:`let cOffset = ${l.broadcastedIndicesToOffset(`vec2(m, n)`,d)}; value += ${c}(uniforms.beta) * ${l.getByOffset(`cOffset`)};`} + output[global_idx] = value; + }`},g=n=>{let r=q(`a`,e[0].dataType,e[0].dims),i=q(`b`,e[1].dataType,e[1].dims),a=null,o=[r,i];e.length===3&&(a=q(`c`,e[2].dataType,e[2].dims.length),o.push(a));let l=J(`output`,e[0].dataType,s.length);o.push(l);let u=[{name:`num_tile_n`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}],d=``,f=``;t.transA&&t.transB?(f=` + var col = tile_row_start + local_id.x; + var row = k_start + local_id.y; + if (col < uniforms.M && row < uniforms.K) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = k_start + local_id.x; + row = tile_col_start + local_id.y; + if (col < uniforms.K && row < uniforms.N) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[k][local_id.y] * tile_b[local_id.x][k];`):t.transA&&!t.transB?(f=` + var col = tile_row_start + local_id.x; + var row = k_start + local_id.y; + if (col < uniforms.M && row < uniforms.K) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = tile_col_start + local_id.x; + row = k_start + local_id.y; + if (col < uniforms.N && row < uniforms.K) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[k][local_id.y] * tile_b[k][local_id.x];`):!t.transA&&t.transB?(f=` + var col = k_start + local_id.x; + var row = tile_row_start + local_id.y; + if (col < uniforms.K && row < uniforms.M) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = k_start + local_id.x; + row = tile_col_start + local_id.y; + if (col < uniforms.K && row < uniforms.N) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[local_id.y][k] * tile_b[local_id.x][k];`):!t.transA&&!t.transB&&(f=` + var col = k_start + local_id.x; + var row = tile_row_start + local_id.y; + if (col < uniforms.K && row < uniforms.M) { + tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; + } else { + tile_a[local_id.y][local_id.x] = ${r.type.value}(0); + } + + col = tile_col_start + local_id.x; + row = k_start + local_id.y; + if (col < uniforms.N && row < uniforms.K) { + tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; + } else { + tile_b[local_id.y][local_id.x] = ${i.type.value}(0); + } + `,d=`value += tile_a[local_id.y][k] * tile_b[k][local_id.x];`);let p=t.alpha===1?``:`value *= uniforms.alpha;`;return` + ${n.registerUniforms(u).declareVariables(...o)} + var tile_a: array, ${c}>; + var tile_b: array, ${c}>; + ${n.mainStart([c,c,1])} + let tile_col_start = (workgroup_index % uniforms.num_tile_n) * ${c}; + let tile_row_start = (workgroup_index / uniforms.num_tile_n) * ${c}; + let num_tiles = (uniforms.K - 1) / ${c} + 1; + var k_start = 0u; + var value = ${l.type.value}(0); + for (var t: u32 = 0u; t < num_tiles; t++) { + ${f} + k_start = k_start + ${c}; + workgroupBarrier(); + + for (var k: u32 = 0u; k < ${c}; k++) { + ${d} + } + workgroupBarrier(); + } + + ${p} + let m = tile_row_start + local_id.y; + let n = tile_col_start + local_id.x; + ${a==null?``:`let cOffset = ${a.broadcastedIndicesToOffset(`vec2(m, n)`,l)}; value += ${l.type.value}(uniforms.beta) * ${a.getByOffset(`cOffset`)};`} + if (m < uniforms.M && n < uniforms.N) { + output[m * uniforms.N + n] = value; + } + }`};return d?{name:`GemmShared`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:l*u},programUniforms:p}),getShaderSource:g}:{name:`Gemm`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},oc=e=>{let t=e.transA,n=e.transB,r=e.alpha,i=e.beta;return{transA:t,transB:n,alpha:r,beta:i,cacheKey:`${e.transA};${e.transB};${e.alpha===1}`}},sc=(e,t)=>{ic(e.inputs),e.compute(ac(e.inputs,t))}}),lc,uc,dc,fc,pc,mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc=M(()=>{"use strict";V(),W(),Xn(),Y(),[lc,uc,dc,fc]=[0,1,2,3],pc=e=>{if(e[0].dims.length!==4)throw Error(`only 4-D tensor is supported.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`input dimensions must be equal to grid dimensions`);if(e[0].dims.length-2!==e[1].dims[e[1].dims.length-1])throw Error(`last dimension of grid must be equal to ${e[0].dims.length-2}`);if(e[0].dims[0]!==e[1].dims[0])throw Error(`grid batch size must match input batch size`)},mc=` + fn gs_get_cubic_coeffs(x: f32) -> vec4 { + let cubic_alpha = -0.75f; + let x_abs = abs(x); + var coeffs: vec4; + coeffs[0] = (((cubic_alpha * (x_abs + 1) - 5 * cubic_alpha) * (x_abs + 1) + 8 * cubic_alpha) * (x_abs + 1) - 4 * cubic_alpha); + coeffs[1] = (((cubic_alpha + 2) * x_abs - (cubic_alpha + 3)) * x_abs * x_abs + 1); + coeffs[2] = (((cubic_alpha + 2) * (1 - x_abs) - (cubic_alpha + 3)) * (1 - x_abs) * (1 - x_abs) + 1); + coeffs[3] = (((cubic_alpha * (2 - x_abs) - 5 * cubic_alpha) * (2 - x_abs) + 8 * cubic_alpha) * (2 - x_abs) - 4 * cubic_alpha); + return coeffs; + } +`,hc=e=>` + fn gs_bicubic_interpolate(p: mat4x4<${e}>, x: f32, y: f32) -> ${e} { + var v: vec4; + var coeffs = gs_get_cubic_coeffs(x); + for (var i = 0; i < 4; i++) { + v[i] = coeffs[0] * p[i][0] + coeffs[1] * p[i][1] + coeffs[2] * p[i][2] + coeffs[3] * p[i][3]; + } + coeffs = gs_get_cubic_coeffs(y); + let pixel = ${e}(coeffs[0] * v[0] + coeffs[1] * v[1] + coeffs[2] * v[2] + coeffs[3] * v[3]); + return pixel; + } +`,gc=e=>` + fn gs_denormalize(n: f32, length: i32) -> f32 { + ${e.alignCorners===0?` + // alignCorners: false => [-1, 1] to [-0.5, length - 0.5] + return ((n + 1.0) * f32(length) - 1.0) / 2.0; + `:` + // alignCorners: true => [-1, 1] to [0, length - 1] + return (n + 1.0) / 2.0 * (f32(length - 1)); + `} + } +`,_c=e=>` + ${e.paddingMode===`reflection`?` + fn gs_reflect(x: i32, x_min: f32, x_max: f32) -> u32 { + var dx = 0.0; + var fx = f32(x); + let range = x_max - x_min; + if (fx < x_min) { + dx = x_min - fx; + let n = u32(dx / range); + let r = dx - f32(n) * range; + if (n % 2 == 0) { + fx = x_min + r; + } else { + fx = x_max - r; + } + } else if (fx > x_max) { + dx = fx - x_max; + let n = u32(dx / range); + let r = dx - f32(n) * range; + if (n % 2 == 0) { + fx = x_max - r; + } else { + fx = x_min + r; + } + } + return u32(fx); + }`:``} +`,vc=(e,t,n)=>` + fn pixel_at_grid(r: i32, c: i32, H: i32, W: i32, batch: u32, channel: u32, border: vec4) -> ${t} { + var pixel = ${t}(0); + var indices = vec4(0); + indices[${lc}] = batch; + indices[${uc}] = channel;`+(()=>{switch(n.paddingMode){case`zeros`:return` + if (r >= 0 && r < H && c >=0 && c < W) { + indices[${dc}] = u32(r); + indices[${fc}] = u32(c); + } else { + return ${t}(0); + } + `;case`border`:return` + indices[${dc}] = u32(clamp(r, 0, H - 1)); + indices[${fc}] = u32(clamp(c, 0, W - 1)); + `;case`reflection`:return` + indices[${dc}] = gs_reflect(r, border[1], border[3]); + indices[${fc}] = gs_reflect(c, border[0], border[2]); + `;default:throw Error(`padding mode ${n.paddingMode} is not supported`)}})()+` + return ${e.getByIndices(`indices`)}; + } +`,yc=(e,t,n)=>(()=>{switch(n.mode){case`nearest`:return` + let result = pixel_at_grid(i32(round(y)), i32(round(x)), H_in, W_in, indices[${lc}], indices[${uc}], border); + `;case`bilinear`:return` + let x1 = i32(floor(x)); + let y1 = i32(floor(y)); + let x2 = x1 + 1; + let y2 = y1 + 1; + + let p11 = pixel_at_grid(y1, x1, H_in, W_in, indices[${lc}], indices[${uc}], border); + let p12 = pixel_at_grid(y1, x2, H_in, W_in, indices[${lc}], indices[${uc}], border); + let p21 = pixel_at_grid(y2, x1, H_in, W_in, indices[${lc}], indices[${uc}], border); + let p22 = pixel_at_grid(y2, x2, H_in, W_in, indices[${lc}], indices[${uc}], border); + + let dx2 = ${t}(f32(x2) - x); + let dx1 = ${t}(x - f32(x1)); + let dy2 = ${t}(f32(y2) - y); + let dy1 = ${t}(y - f32(y1)); + let result = dy2 * (dx2 * p11 + dx1 * p12) + dy1 * (dx2 * p21 + dx1 * p22); + `;case`bicubic`:return` + let x0 = i32(floor(x)) - 1; + let y0 = i32(floor(y)) - 1; + var p: mat4x4<${t}>; + for (var h = 0; h < 4; h++) { + for (var w = 0; w < 4; w++) { + p[h][w] = pixel_at_grid(h + y0, w + x0, H_in, W_in, indices[${lc}], indices[${uc}], border); + } + } + + let dx = x - f32(x0 + 1); + let dy = y - f32(y0 + 1); + let result = gs_bicubic_interpolate(p, dx, dy); + `;default:throw Error(`mode ${n.mode} is not supported`)}})()+`${e.setByOffset(`global_idx`,`result`)}`,bc=(e,t)=>{let n=q(`x`,e[0].dataType,e[0].dims.length),r=[e[1].dims[0],e[1].dims[1],e[1].dims[2]],i=q(`grid`,e[1].dataType,r.length,2),a=[e[0].dims[0],e[0].dims[1],e[1].dims[1],e[1].dims[2]];t.format===`NHWC`&&(a=[e[0].dims[0],e[1].dims[1],e[1].dims[2],e[0].dims[3]],[lc,uc,dc,fc]=[0,3,1,2]);let o=J(`output`,e[0].dataType,a.length),s=n.type.value,c=U.size(a),l=[{type:12,data:c},...G(e[0].dims,r,a)],u=e=>` + ${e.registerUniform(`output_size`,`u32`).declareVariables(n,i,o)} + ${mc} + ${hc(s)} + ${gc(t)} + ${_c(t)} + ${vc(n,s,t)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let H_in = i32(uniforms.x_shape[${dc}]); + let W_in = i32(uniforms.x_shape[${fc}]); + + ${t.alignCorners===0?` + let x_min = -0.5; + let x_max = f32(W_in) - 0.5; + let y_min = -0.5; + let y_max = f32(H_in) - 0.5; + `:` + let x_min = 0.0; + let x_max = f32(W_in) - 1.0; + let y_min = 0.0; + let y_max = f32(H_in) - 1.0; + `}; + let border = vec4(x_min, y_min, x_max, y_max); + + let indices = ${o.offsetToIndices(`global_idx`)}; + var grid_indices = vec3(indices[${lc}], indices[${dc}], indices[${fc}]); + let nxy = ${i.getByIndices(`grid_indices`)}; + var x = gs_denormalize(f32(nxy[0]), W_in); + var y = gs_denormalize(f32(nxy[1]), H_in); + + ${yc(o,s,t)} + }`;return{name:`GridSample`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:[`type`,`type`]},getRunData:e=>{let t=U.size(a);return{outputs:[{dims:a,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:l}},getShaderSource:u}},xc=(e,t)=>{pc(e.inputs),e.compute(bc(e.inputs,t))},Sc=e=>Yn({alignCorners:e.align_corners,mode:e.mode,paddingMode:e.padding_mode,format:e.format})}),wc,Tc,Ec,Dc,Oc,kc,Ac,jc=M(()=>{"use strict";V(),W(),Xn(),Ln(),Di(),Y(),vr(),wc=(e,t)=>e.length>t&&e[t].dims.length>0?e[t]:void 0,Tc=(e,t)=>{let n=e[0],r=wc(e,1),i=wc(e,2),a=wc(e,3),o=wc(e,4),s=wc(e,5),c=wc(e,6),l=wc(e,7);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let u=n.dims[0],d=n.dims[1],f=n.dims.length===3?n.dims[2]:t.numHeads*n.dims[4],p=d,m=0,h=0,g=Math.floor(f/t.numHeads);if(c&&l&&U.size(c.dims)&&U.size(l.dims)){if(c.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(c.dims[0]!==u||c.dims[1]!==t.numHeads||c.dims[3]!==g)throw Error(`Input "past_key" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(l.dims[0]!==u||l.dims[1]!==t.numHeads||l.dims[3]!==g)throw Error(`Input "past_value" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(c.dims[2]!==l.dims[2])throw Error(`Input "past_key" and "past_value" shall have same dim 2 (past_sequence_length)`);if(l.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);m=c.dims[2],h=c.dims[2]}else if(c&&U.size(c.dims)||l&&U.size(l.dims))throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _;if(r&&U.size(r.dims)>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(r.dims[2]!==n.dims[2])throw Error(`Input "query" and "key" shall have same dim 2 (hidden_size)`);_=2,p=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==g)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);_=5,p=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==g)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);_=0,p=r.dims[2]}}else{if(n.dims.length!==5)throw Error(`Input "query" is expected to have 5 dimensions when key is empty`);if(n.dims[2]!==t.numHeads||n.dims[3]!==3)throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}if(a&&U.size(a.dims)>0){if(a.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimension`);if(r&&r.dims.length===5&&r.dims[3]===2)throw Error(`bias is not allowed for packed kv.`)}let v=m+p,y=0;if(o&&U.size(o.dims)>0){y=8;let e=o.dims;throw e.length===1?e[0]===u?y=1:e[0]===3*u+2&&(y=3):e.length===2&&e[0]===u&&e[1]===v&&(y=5),y===8?Error(`Input "key_padding_mask" shape shall be (batch_size) or (batch_size, total_sequence_length)`):Error(`Mask not supported`)}let b=!1,x=f;if(i&&U.size(i.dims)>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(p!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);x=i.dims[2]}else{if(p!==i.dims[2])throw Error(`Input "key" and "value" shall have the same dim 2 (kv_sequence_length)`);x=i.dims[1]*i.dims[3],b=!0}}let S=!1;if(o&&U.size(o.dims)>0)throw Error(`Key padding mask is not supported`);if(s&&U.size(s.dims)>0){if(s.dims.length!==4)throw Error(`Input "attention_bias" is expected to have 4 dimensions`);if(s.dims[0]!==u||s.dims[1]!==t.numHeads||s.dims[2]!==d||s.dims[3]!==v)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:u,sequenceLength:d,pastSequenceLength:m,kvSequenceLength:p,totalSequenceLength:v,maxSequenceLength:h,inputHiddenSize:0,hiddenSize:f,vHiddenSize:x,headSize:g,vHeadSize:Math.floor(x/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:y,scale:t.scale,broadcastResPosBias:S,passPastInKv:b,qkvFormat:_}},Ec=e=>Yn({...e}),Dc=Yn({perm:[0,2,1,3]}),Oc=(e,t,n,r,i,a,o)=>{let s=[r,i,a],c=U.size(s),l=[{type:12,data:c},{type:12,data:o},{type:12,data:a}],u=e=>{let r=J(`qkv_with_bias`,t.dataType,s),i=q(`qkv`,t.dataType,s),a=q(`bias`,n.dataType,s),o=[{name:`output_size`,type:`u32`},{name:`bias_offset`,type:`u32`},{name:`hidden_size`,type:`u32`}];return` + ${e.registerUniforms(o).declareVariables(i,a,r)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let bias_offset_idx = (global_idx % uniforms.hidden_size) + uniforms.bias_offset; + + qkv_with_bias[global_idx] = qkv[global_idx] + bias[bias_offset_idx]; + }`};return e.compute({name:`MultiHeadAttentionAddBias`,shaderCache:{inputDependencies:[`type`,`type`]},getRunData:()=>({outputs:[{dims:s,dataType:t.dataType,gpuDataType:0}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l}),getShaderSource:u},{inputs:[t,n],outputs:[-1]})[0]},kc=(e,t,n,r,i,a,o,s)=>{let c=a;if(o&&U.size(o.dims)>0){if(r===1)throw Error(`AddBiasReshape is not implemented. Please export your model with packed QKV or KV`);return c=Oc(e,a,o,t,r,n*i,s),c=c.reshape([t,r,n,i]),n===1||r===1?c:e.compute(hr(c,Dc.perm),{inputs:[c],outputs:[-1]})[0]}else return a.dims.length===3&&(c=a.reshape([t,r,n,i])),n===1||r===1?c:e.compute(hr(c,Dc.perm),{inputs:[c],outputs:[-1]})[0]},Ac=(e,t)=>{let n=Tc(e.inputs,t),r=e.inputs[0],i=wc(e.inputs,1),a=wc(e.inputs,2),o=wc(e.inputs,3),s=wc(e.inputs,4),c=wc(e.inputs,5),l=wc(e.inputs,6),u=wc(e.inputs,7);if(r.dims.length===5)throw Error(`Packed QKV is not implemented`);if(i?.dims.length===5)throw Error(`Packed KV is not implemented`);let d=i&&a&&i.dims.length===4&&a.dims.length===4,f=kc(e,n.batchSize,n.numHeads,n.sequenceLength,n.headSize,r,o,0);if(d)return wi(e,f,i,a,s,void 0,l,u,c,n);if(!i||!a)throw Error(`key and value must be provided`);let p=kc(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.headSize,i,o,n.hiddenSize),m=kc(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.vHeadSize,a,o,2*n.hiddenSize);wi(e,f,p,m,s,void 0,l,u,c,n)}}),Mc,Nc,Pc,Fc,Ic,Lc,Rc,zc=M(()=>{"use strict";V(),W(),Xn(),Y(),Mc=e=>{if(!e||e.length<1)throw Error(`too few inputs`)},Nc=(e,t)=>{let n=[],r=t.numOutputs;return e[1].dims[0]>0&&(e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),r=n.length),Yn({numOutputs:r,axis:t.axis,splitSizes:n})},Pc=e=>` +fn calculateOutputIndex(index: u32) -> u32 { + for (var i: u32 = 0u; i < ${e}u; i += 1u ) { + if (index < ${K(`uniforms.size_in_split_axis`,`i`,e)}) { + return i; + } + } + return ${e}u; +}`,Fc=e=>{let t=e.length,n=[];for(let r=0;r{let n=e[0].dims,r=U.size(n),i=e[0].dataType,a=U.normalizeAxis(t.axis,n.length),o=Array(t.numOutputs),s=q(`input`,i,n.length),c=Array(t.numOutputs),l=[],u=[],d=0,f=[{type:12,data:r}];for(let r=0;r` + ${e.registerUniform(`input_size`,`u32`).registerUniform(`size_in_split_axis`,`u32`,c.length).declareVariables(s,...o)} + ${Pc(c.length)} + ${Fc(o)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.input_size`)} + + var indices = ${s.offsetToIndices(`global_idx`)}; + var index = ${s.indicesGet(`indices`,a)}; + let output_number = calculateOutputIndex(index); + if (output_number != 0) { + index -= ${K(`uniforms.size_in_split_axis`,`output_number - 1u`,c.length)}; + ${s.indicesSet(`indices`,a,`index`)}; + } + writeBufferData(output_number, indices, global_idx); + }`;return{name:`Split`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`]},getShaderSource:p,getRunData:()=>({outputs:l,dispatchGroup:{x:Math.ceil(r/64)},programUniforms:f})}},Lc=(e,t)=>{Mc(e.inputs);let n=e.inputs.length===1?t:Nc(e.inputs,t);e.compute(Ic(e.inputs,n),{inputs:[0]})},Rc=e=>{let t=e.axis,n=e.splitSizes,r=e.numOutputs<0?n.length:e.numOutputs;if(r!==n.length)throw Error(`numOutputs and splitSizes lengh must be equal`);return Yn({axis:t,numOutputs:r,splitSizes:n})}}),Bc,Vc,Hc,Uc=M(()=>{"use strict";V(),W(),Xn(),Y(),Bc=(e,t)=>{let[n,r,i,a]=e,{numHeads:o,rotaryEmbeddingDim:s}=t;if(n.dims.length!==3&&n.dims.length!==4)throw Error(`Input 'x' is expected to have 3 or 4 dimensions, got ${n.dims.length}`);if(!U.areEqual(r.dims,[])&&!U.areEqual(r.dims,[1])&&r.dims.length!==2)throw Error(`Input 'position_ids' is expected to have 0, 1, or 2 dimensions, got ${r.dims.length}`);if(i.dims.length!==2)throw Error(`Input 'cos_cache' is expected to have 2 dimensions, got ${i.dims.length}`);if(a.dims.length!==2)throw Error(`Input 'sin_cache' is expected to have 2 dimensions, got ${a.dims.length}`);if(!U.areEqual(i.dims,a.dims))throw Error(`Inputs 'cos_cache' and 'sin_cache' are expected to have the same shape`);if(s>0&&o===0)throw Error(`num_heads must be provided if rotary_embedding_dim is specified`);let c=n.dims[0],l=n.dims[n.dims.length-2],u=i.dims[0],d=U.sizeFromDimension(n.dims,1)/l,f=s===0?i.dims[1]*2:d/o;if(s>f)throw Error(`rotary_embedding_dim must be less than or equal to head_size`);if(r.dims.length===2){if(c!==r.dims[0])throw Error(`Input 'position_ids' dimension 0 should be of size batch_size, got ${r.dims[0]}`);if(l!==r.dims[1])throw Error(`Input 'position_ids' dimension 1 should be of size sequence_length, got ${r.dims[1]}`)}if(f/2!==i.dims[1]&&s/2!==i.dims[1])throw Error(`Input 'cos_cache' dimension 1 should be same as head_size / 2 or rotary_embedding_dim / 2, got ${i.dims[1]}`);if(l>u)throw Error(`Updating cos_cache and sin_cache in RotaryEmbedding is not currently supported`)},Vc=(e,t)=>{let{interleaved:n,numHeads:r,rotaryEmbeddingDim:i,scale:a}=t,o=e[0].dims[0],s=U.sizeFromDimension(e[0].dims,1),c=e[0].dims[e[0].dims.length-2],l=s/c,u=e[2].dims[1],d=i===0?u*2:l/r,f=[o,c,l/d,d-u],p=U.computeStrides(f),m=[{type:1,data:a},{type:12,data:f},{type:12,data:p},...e[0].dims.length===3?Array({type:12,data:[s,l,d,1]}):[],...e[0].dims.length===4?Array({type:12,data:[s,d,c*d,1]}):[],...G(e[0].dims,e[1].dims,e[2].dims,e[3].dims,e[0].dims)],h=t=>{let r=q(`input`,e[0].dataType,e[0].dims.length),i=q(`position_ids`,e[1].dataType,e[1].dims.length),a=q(`cos_cache`,e[2].dataType,e[2].dims.length),o=q(`sin_cache`,e[3].dataType,e[3].dims.length),s=J(`output`,e[0].dataType,e[0].dims.length);return t.registerUniforms([{name:`scale`,type:`f32`},{name:`global_shape`,type:`u32`,length:f.length},{name:`global_strides`,type:`u32`,length:p.length},{name:`input_output_strides`,type:`u32`,length:p.length}]),` + ${t.declareVariables(r,i,a,o,s)} + + ${t.mainStart(Zn)} + let half_rotary_emb_dim = uniforms.${a.name}_shape[1]; + let bsnh = global_idx / uniforms.global_strides % uniforms.global_shape; + let size = uniforms.global_shape[0] * uniforms.global_strides[0]; + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`size`)} + + if (bsnh[3] < half_rotary_emb_dim) { + let position_ids_idx = + ${i.broadcastedIndicesToOffset(`bsnh.xy`,J(``,i.type.tensor,2))}; + let position_id = + u32(${i.getByOffset(`position_ids_idx`)}) + select(0, bsnh[1], position_ids_idx == 0); + let i = dot(bsnh, uniforms.input_output_strides) + select(0, bsnh[3], ${n}); + let j = i + select(half_rotary_emb_dim, 1, ${n}); + let re = ${r.getByOffset(`i`)} * ${a.get(`position_id`,`bsnh[3]`)} - + ${r.getByOffset(`j`)} * ${o.get(`position_id`,`bsnh[3]`)}; + ${s.setByOffset(`i`,`re`)} + let im = ${r.getByOffset(`i`)} * ${o.get(`position_id`,`bsnh[3]`)} + + ${r.getByOffset(`j`)} * ${a.get(`position_id`,`bsnh[3]`)}; + ${s.setByOffset(`j`,`im`)} + } else { + let k = dot(bsnh, uniforms.input_output_strides) + half_rotary_emb_dim; + ${s.setByOffset(`k`,r.getByOffset(`k`))} + } + }`};return{name:`RotaryEmbedding`,shaderCache:{hint:Yn({interleaved:n}).cacheKey,inputDependencies:[`rank`,`rank`,`rank`,`rank`]},getShaderSource:h,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(U.size(f)/Zn)},programUniforms:m})}},Hc=(e,t)=>{Bc(e.inputs,t),e.compute(Vc(e.inputs,t))}}),Wc,Gc,Kc,qc,Jc,Yc=M(()=>{"use strict";Xn(),V(),Di(),jc(),zc(),vr(),Uc(),Y(),Wc=(e,t)=>{if(t.doRotary&&e.length<=7)throw Error(`cos_cache and sin_cache inputs are required if do_rotary is specified`);let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4];if(t.doRotary!==0&&e.length<=7)throw Error(`cos_cast and sin_cache are expected if do_rotary attribute is non-zero`);if(t.localWindowSize!==-1)throw Error(`Local attention is not supported`);if(t.softcap!==0)throw Error(`Softcap is not supported`);if(t.rotaryInterleaved!==0)throw Error(`Rotary interleaved is not supported`);if(t.smoothSoftmax)throw Error(`Smooth softmax is not supported`);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let s=!1,c=n.dims[0],l=n.dims[1],u=n.dims.length===3?s?n.dims[2]/3:n.dims[2]:t.numHeads*n.dims[4],d=l,f=0,p=!r||r.dims.length===0,m=Math.floor(p?u/(t.numHeads+2*t.kvNumHeads):u/t.numHeads);p&&(u=m*t.numHeads);let h=a&&a.dims.length!==0,g=o&&o.dims.length!==0;if(h&&a.dims.length===4&&a.dims[0]===c&&a.dims[1]!==t.kvNumHeads&&a.dims[2]===t.kvNumHeads&&a.dims[3]===m)throw Error(`BSNH pastKey/pastValue is not supported`);if(h&&g){if(a.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(o.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);f=a.dims[2]}else if(h||g)throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _=1;if(r&&r.dims.length>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(n.dims[2]%r.dims[2]!==0)throw Error(`Dimension 2 of "query" should be a multiple of "key"`);d=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==m)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);d=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==m)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);d=r.dims[2]}}else{if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input "query" is expected to have 3 or 5 dimensions when key is empty`);if(n.dims.length===5&&(n.dims[2]!==t.numHeads||n.dims[3]!==3))throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}let v=0,y=!1,b=t.kvNumHeads?m*t.kvNumHeads:u;if(i&&i.dims.length>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(d!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);b=i.dims[2]}else{if(d!==i.dims[2])throw Error(`Input "past_key" and "past_value" shall have the same dim 2 (kv_sequence_length)`);b=i.dims[1]*i.dims[3],y=!0}}let x=e.length>4?e[5]:void 0;if(x&&x.dims.length!==1&&x.dims[0]!==c)throw Error(`Input "seqlens" is expected to have 1 dimension and the same dim 0 as batch_size`);return{batchSize:c,sequenceLength:l,pastSequenceLength:f,kvSequenceLength:d,totalSequenceLength:-1,maxSequenceLength:-1,inputHiddenSize:0,hiddenSize:u,vHiddenSize:b,headSize:m,vHeadSize:Math.floor(b/t.kvNumHeads),numHeads:t.numHeads,kvNumHeads:t.kvNumHeads,nReps:t.numHeads/t.kvNumHeads,pastPresentShareBuffer:!1,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:y,qkvFormat:_}},Gc=Yn({perm:[0,2,1,3]}),Kc=(e,t,n)=>{let r=t,i=n.kvNumHeads;return t.dims.length===3&&n.kvSequenceLength!==0&&(r=t.reshape([n.batchSize,n.kvSequenceLength,i,n.headSize]),r=e.compute(hr(r,Gc.perm),{inputs:[r],outputs:[-1]})[0]),r},qc=(e,t,n,r)=>{let i=7,a=[`type`,`type`],o=[e*t],s=e*t,c=[{type:12,data:s},{type:12,data:t},{type:12,data:e}],l=e=>{let t=q(`seq_lens`,n.dataType,n.dims),a=q(`total_seq_lens`,r.dataType,r.dims),s=J(`pos_ids`,i,o),c=[{name:`output_size`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`batch_size`,type:`u32`}];return` + ${e.registerUniforms(c).declareVariables(t,a,s)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let total_sequence_length = u32(${a.getByOffset(`0`)}); + let is_subsequent_prompt = uniforms.sequence_length > 1 && uniforms.sequence_length != total_sequence_length; + let is_first_prompt = !is_subsequent_prompt && uniforms.sequence_length == total_sequence_length; + let batch_idx = global_idx / uniforms.sequence_length; + let sequence_idx = i32(global_idx % uniforms.sequence_length); + var pos_id: i32 = 0; + let seqlen = ${t.getByOffset(`batch_idx`)}; + let total_seqlen = seqlen + 1; + if (is_first_prompt) { + if (sequence_idx < total_seqlen) { + pos_id = sequence_idx; + } else { + pos_id = 1; + } + ${s.setByOffset(`global_idx`,`pos_id`)} + } else if (is_subsequent_prompt) { + let past_seqlen = total_seqlen - i32(uniforms.sequence_length); + if (past_seqlen + sequence_idx < total_seqlen) { + pos_id = past_seqlen + sequence_idx; + } else { + pos_id = 1; + } + ${s.setByOffset(`global_idx`,`pos_id`)} + } else if (global_idx < uniforms.batch_size) { + ${s.setByOffset(`global_idx`,`seqlen`)} + }; + } + `};return{name:`GeneratePositionIds`,shaderCache:{hint:`${e};${t}`,inputDependencies:a},getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:c}),getShaderSource:l}},Jc=(e,t)=>{let n=Wc(e.inputs,t);if(e.inputs[0].dims.length===5)throw Error(`Packed QKV is not implemented`);if(e.inputs[1]?.dims.length===5)throw Error(`Packed KV is not implemented`);let r=e.inputs[0],i=e.inputs[1]&&e.inputs[1].dims.length>0?e.inputs[1]:void 0,a=e.inputs[2]&&e.inputs[2].dims.length>0?e.inputs[2]:void 0,o=e.inputs[3]&&e.inputs[3].dims.length!==0?e.inputs[3]:void 0,s=e.inputs[4]&&e.inputs[4].dims.length!==0?e.inputs[4]:void 0,c=e.inputs.length>4?e.inputs[5]:void 0,l=e.inputs.length>5?e.inputs[6]:void 0,u=n.kvNumHeads?n.kvNumHeads:n.numHeads,d=Yn({axis:2,numOutputs:3,splitSizes:[n.numHeads*n.headSize,u*n.headSize,u*n.headSize]}),[f,p,m]=!i&&!a?e.compute(Ic([r],d),{inputs:[r],outputs:[-1,-1,-1]}):[r,i,a],h,g;if(t.doRotary){let r=e.compute(qc(n.batchSize,n.sequenceLength,c,l),{inputs:[c,l],outputs:[-1]})[0],i=e.inputs[7],a=e.inputs[8],o=Yn({interleaved:t.rotaryInterleaved!==0,numHeads:n.numHeads,rotaryEmbeddingDim:0,scale:t.scale}),s=[f,r,i,a],u=[-1];h=e.compute(Vc(s,o),{inputs:s,outputs:u})[0],s.splice(0,1,p);let d=Yn({interleaved:t.rotaryInterleaved!==0,numHeads:n.kvNumHeads,rotaryEmbeddingDim:0,scale:t.scale});g=e.compute(Vc(s,d),{inputs:s,outputs:u})[0]}let _=kc(e,n.batchSize,n.numHeads,n.sequenceLength,n.headSize,t.doRotary?h:f,void 0,0),v=Kc(e,t.doRotary?g:p,n),y=Kc(e,m,n);wi(e,_,v,y,void 0,void 0,o,s,void 0,n,c,l)}}),Xc,Zc,Qc,$c,el=M(()=>{"use strict";V(),W(),vr(),Y(),Xc=(e,t,n,r,i,a,o,s)=>{let c=tr(a),l=c===1?`f32`:`vec${c}f`,u=c===1?`vec2f`:`mat2x${c}f`,d=i*o,f=64;d===1&&(f=256);let p=[i,o,a/c],m=[i,o,2],h=[`rank`,`type`,`type`],g=[];g.push(...G(p,m));let _=e=>{let i=q(`x`,t.dataType,3,c),a=q(`scale`,n.dataType,n.dims),o=q(`bias`,r.dataType,r.dims),d=J(`output`,1,3,2),p=[i,a,o,d];return` + var workgroup_shared : array<${u}, ${f}>; + const workgroup_size = ${f}u; + ${e.declareVariables(...p)} + ${e.mainStart(f)} + let batch = workgroup_index / uniforms.x_shape[1]; + let channel = workgroup_index % uniforms.x_shape[1]; + let hight = uniforms.x_shape[2]; + // initialize workgroup memory + var sum = ${l}(0); + var squared_sum = ${l}(0); + for (var h = local_idx; h < hight; h += workgroup_size) { + let value = ${l}(${i.get(`batch`,`channel`,`h`)}); + sum += value; + squared_sum += value * value; + } + workgroup_shared[local_idx] = ${u}(sum, squared_sum); + workgroupBarrier(); + + for (var currSize = workgroup_size >> 1; currSize > 0; currSize = currSize >> 1) { + if (local_idx < currSize) { + workgroup_shared[local_idx] = workgroup_shared[local_idx] + workgroup_shared[local_idx + currSize]; + } + workgroupBarrier(); + } + if (local_idx == 0) { + let sum_final = ${ir(`workgroup_shared[0][0]`,c)} / f32(hight * ${c}); + let squared_sum_final = ${ir(`workgroup_shared[0][1]`,c)} / f32(hight * ${c}); + + let inv_std_dev = inverseSqrt(squared_sum_final - sum_final * sum_final + f32(${s})); + let channel_scale = inv_std_dev * f32(scale[channel]); + let channel_shift = f32(bias[channel]) - sum_final * channel_scale; + output[workgroup_index] = vec2f(channel_scale, channel_shift); + } + }`};return e.compute({name:`InstanceNormComputeChannelScaleShift`,shaderCache:{hint:`${c};${s};${f}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:m,dataType:1}],dispatchGroup:{x:d},programUniforms:g}),getShaderSource:_},{inputs:[t,n,r],outputs:[-1]})[0]},Zc=(e,t,n)=>{let r=t[0].dims,i=r,a=2,o=r[0],s=r[1],c=U.sizeFromDimension(r,a),l=tr(c),u=U.size(i)/l,d=Xc(e,t[0],t[1],t[2],o,c,s,n.epsilon),f=[o,s,c/l],p=[o,s],m=[`type`,`none`],h=e=>{let n=q(`x`,t[0].dataType,f.length,l),r=q(`scale_shift`,1,p.length,2),i=J(`output`,t[0].dataType,f.length,l),a=[n,r,i];return` + ${e.registerUniform(`output_size`,`u32`).declareVariables(...a)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let outputIndices = ${i.offsetToIndices(`global_idx`)}; + let batch = outputIndices[0]; + let channel = outputIndices[1]; + let scale_shift = ${r.getByIndices(`vec2(batch, channel)`)}; + let value = ${n.getByOffset(`global_idx`)} * ${i.type.value}(scale_shift.x) + ${i.type.value}(scale_shift.y); + ${i.setByOffset(`global_idx`,`value`)}; + }`};e.compute({name:`InstanceNormalization`,shaderCache:{hint:`${l}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:[{type:12,data:u},...G(f,p,f)]}),getShaderSource:h},{inputs:[t[0],d]})},Qc=(e,t,n)=>{let r=t[0].dims,i=r,a=r[0],o=r[r.length-1],s=U.sizeFromDimension(r,1)/o,c=tr(o),l=U.size(i)/c,u=[{type:12,data:s},{type:12,data:Math.floor(o/c)}],d=[`type`,`type`],f=!1,p=[0,r.length-1];for(let e=0;er[p[t]])),h=Xc(e,m,t[1],t[2],a,s,o,n.epsilon),g=e=>{let n=$n(t[0].dataType),r=c===1?`vec2f`:`mat${c}x2f`,a=e=>{let t=e===0?`x`:`y`,r=c===1?`f32`:`vec${c}f`;switch(c){case 1:return`${n}(${r}(scale.${t}))`;case 2:return`vec2<${n}>(${r}(scale[0].${t}, scale[1].${t}))`;case 4:return`vec4<${n}>(${r}(scale[0].${t}, scale[1].${t}, scale[2].${t}, scale[3].${t}))`;default:throw Error(`Not supported compoents ${c}`)}},o=q(`input`,t[0].dataType,t[0].dims,c),s=J(`output`,t[0].dataType,i,c);return` + @group(0) @binding(0) var input : array<${o.type.storage}>; + @group(0) @binding(1) var scale_input : array<${r}>; + @group(0) @binding(2) var output : array<${s.type.storage}>; + struct Uniforms {H: u32, C : u32}; + @group(0) @binding(3) var uniforms: Uniforms; + + ${e.mainStart()} + let current_image_number = global_idx / (uniforms.C * uniforms.H); + let current_channel_number = global_idx % uniforms.C; + + let scale_offset = current_image_number * uniforms.C + current_channel_number; + let scale = scale_input[scale_offset]; + output[global_idx] = fma(input[global_idx], ${a(0)}, ${a(1)}); + }`};e.compute({name:`InstanceNormalizationNHWC`,shaderCache:{hint:`${c}`,inputDependencies:d},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:g},{inputs:[t[0],h]})},$c=(e,t)=>{t.format===`NHWC`?Qc(e,e.inputs,t):Zc(e,e.inputs,t)}}),tl,nl,rl,il=M(()=>{"use strict";V(),W(),Y(),tl=e=>{if(!e||e.length<2)throw Error(`layerNorm requires at least 2 inputs.`)},nl=(e,t,n)=>{let r=t.simplified,i=e[0].dims,a=e[1],o=!r&&e[2],s=i,c=U.normalizeAxis(t.axis,i.length),l=U.sizeToDimension(i,c),u=U.sizeFromDimension(i,c),d=U.size(a.dims),f=o?U.size(o.dims):0;if(d!==u||o&&f!==u)throw Error(`Size of X.shape()[axis:] == ${u}. + Size of scale and bias (if provided) must match this. + Got scale size of ${d} and bias size of ${f}`);let p=[];for(let e=0;e1,v=n>2,y=t=>{let n=$n(e[0].dataType),i=[q(`x`,e[0].dataType,e[0].dims,m),q(`scale`,a.dataType,a.dims,m)];o&&i.push(q(`bias`,o.dataType,o.dims,m)),i.push(J(`output`,e[0].dataType,s,m)),_&&i.push(J(`mean_data_output`,1,p)),v&&i.push(J(`inv_std_output`,1,p));let c=[{name:`norm_count`,type:`u32`},{name:`norm_size`,type:`f32`},{name:`norm_size_vectorized`,type:`u32`},{name:`epsilon`,type:`f32`}];return` + ${t.registerUniforms(c).declareVariables(...i)} + ${t.mainStart()} + ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.norm_count`)} + let offset = global_idx * uniforms.norm_size_vectorized; + var mean_vector = ${nr(`f32`,m)}; + var mean_square_vector = ${nr(`f32`,m)}; + + for (var h: u32 = 0u; h < uniforms.norm_size_vectorized; h++) { + let value = ${rr(n,m,`x[h + offset]`)}; + mean_vector += value; + mean_square_vector += value * value; + } + let mean = ${ir(`mean_vector`,m)} / uniforms.norm_size; + let inv_std_dev = inverseSqrt(${ir(`mean_square_vector`,m)} / uniforms.norm_size ${r?``:`- mean * mean`} + uniforms.epsilon); + + for (var j: u32 = 0; j < uniforms.norm_size_vectorized; j++) { + let f32input = ${rr(n,m,`x[j + offset]`)}; + let f32scale = ${rr(n,m,`scale[j]`)}; + output[j + offset] = ${i[0].type.value}((f32input ${r?``:`- mean`}) * inv_std_dev * f32scale + ${o?`+ ${rr(n,m,`bias[j]`)}`:``} + ); + } + + ${_?`mean_data_output[global_idx] = mean`:``}; + ${v?`inv_std_output[global_idx] = inv_std_dev`:``}; + }`},b=[{dims:s,dataType:e[0].dataType}];return _&&b.push({dims:p,dataType:1}),v&&b.push({dims:p,dataType:1}),{name:`LayerNormalization`,shaderCache:{hint:`${m};${n};${r}`,inputDependencies:h},getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(l/64)},programUniforms:g}),getShaderSource:y}},rl=(e,t)=>{tl(e.inputs),e.compute(nl(e.inputs,t,e.outputCount))}}),al,ol,sl=M(()=>{"use strict";W(),po(),So(),al=e=>{if(!e||e.length!==2)throw Error(`MatMul requires 2 inputs.`);if(e[0].dims[e[0].dims.length-1]!==e[1].dims[e[1].dims.length-2])throw Error(`shared dimension does not match.`)},ol=e=>{al(e.inputs);let t=hn.calcShape(e.inputs[0].dims,e.inputs[1].dims,!0);if(!t)throw Error(`Can't use matmul on the given tensors`);let n=t[t.length-1],r=e.inputs[0].dims[e.inputs[0].dims.length-1];if(n<8&&r<8)e.compute(fo(e.inputs,{activation:``},t));else{let i=t[t.length-2],a=U.size(e.inputs[0].dims.slice(0,-2)),o=U.size(e.inputs[1].dims.slice(0,-2));if(a!==1&&i===1&&o===1){let i=e.inputs[0].reshape([1,a,r]),o=e.inputs[1].reshape([1,r,n]),s=[1,a,n],c=[i,o];e.compute(xo(c,{activation:``},t,s),{inputs:c})}else e.compute(xo(e.inputs,{activation:``},t))}}}),cl,ll,ul,dl,fl,pl=M(()=>{"use strict";V(),W(),Xn(),Y(),cl=(e,t)=>{if(e.length<3||e.length>4)throw Error(`MatMulNBits requires 3 or 4 inputs`);let n=e[0],r=n.dims.length;if(n.dims[r-1]!==t.k)throw Error(`The last dim of input shape does not match the k value`);let i=Math.floor((t.k+t.blockSize-1)/t.blockSize),a=t.blockSize/8*t.bits,o=e[1];if(!U.areEqual(o.dims,[t.n,i,a]))throw Error(`The second inputs must be 3D tensor with shape N X nBlocksPerCol X blobSize`);let s=e[2].dims;if(U.size(s)!==t.n*i)throw Error(`scales input size error.`);if(e.length===4){let n=e[3].dims,r=t.bits>4?t.n*i:t.n*Math.floor((i+1)/2);if(U.size(n)!==r)throw Error(`zeroPoints input size error.`)}},ll=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=U.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=tr(t.k),f=tr(l),p=tr(o),m=s.concat([i,o]),h=i>1&&o/p%2==0?2:1,g=U.size(m)/p/h,_=64,v=[],y=[c,i,a/d],b=U.convertShape(e[1].dims).slice();b.splice(-1,1,l/f),v.push(...G(y)),v.push(...G(b)),v.push(...G(e[2].dims)),e.length===4&&v.push(...G(U.convertShape(e[3].dims)));let x=[c,i,o/p];v.push(...G(x));let S=n=>{let r=y.length,i=q(`a`,e[0].dataType,r,d),a=q(`b`,12,b.length,f),o=q(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?q(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let u=x.length,m=J(`output`,e[0].dataType,u,p),g=$n(e[0].dataType),v=(()=>{switch(d){case 1:return`array<${g}, 8>`;case 2:return`mat4x2<${g}>`;case 4:return`mat2x4<${g}>`;default:throw Error(`${d}-component is not supported.`)}})(),S=()=>{let e=` + // reuse a data + var input_offset = ${i.indicesToOffset(`${i.type.indices}(batch, row, word_offset)`)}; + var a_data: ${v}; + for (var j: u32 = 0; j < ${8/d}; j++) { + a_data[j] = ${i.getByOffset(`input_offset`)}; + input_offset++; + } + `;for(let t=0;t> 4) & b_mask); + b_quantized_values = ${v}(${Array.from({length:4},(e,t)=>`${g}(b_value_lower[${t}]), ${g}(b_value_upper[${t}])`).join(`, `)}); + b_dequantized_values = ${d===1?`${v}(${Array.from({length:8},(e,n)=>`(b_quantized_values[${n}] - ${c?`zero_point${t}`:`zero_point`}) * scale${t}`).join(`, `)});`:`(b_quantized_values - ${v}(${Array(8).fill(`${c?`zero_point${t}`:`zero_point`}`).join(`,`)})) * scale${t};`}; + workgroup_shared[local_id.x * ${h} + ${Math.floor(t/p)}]${p>1?`[${t%p}]`:``} += ${Array.from({length:8/d},(e,t)=>`${d===1?`a_data[${t}] * b_dequantized_values[${t}]`:`dot(a_data[${t}], b_dequantized_values[${t}])`}`).join(` + `)}; + `;return e},C=()=>{let e=` + var col_index = col * ${p}; + ${c?` + let zero_point_bytes_per_col = (nBlocksPerCol + 1) / 2; + var zero_point_byte_count: u32; + var zero_point_word_index: u32; + var zero_point_byte_offset: u32; + let zero_point_nibble_offset: u32 = block & 0x1u; + var zero_point_bits_offset: u32; + var zero_point_word: u32;`:` + // The default zero point is 8 for unsigned 4-bit quantization. + let zero_point = ${g}(8);`} + `;for(let t=0;t> 0x1u); + zero_point_word_index = zero_point_byte_count >> 0x2u; + zero_point_byte_offset = zero_point_byte_count & 0x3u; + zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); + zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; + let zero_point${t} = ${g}((zero_point_word) & 0xFu);`:``} + col_index += 1;`;return e},w=()=>{let e=`col_index = col * ${p};`;for(let t=0;t; + var b_value_upper: vec4; + var b_quantized_values: ${v}; + var b_dequantized_values: ${v};`,e};return` + var workgroup_shared: array<${m.type.value}, ${h*_}>; + ${n.declareVariables(...s,m)} + ${n.mainStart([_,1,1])} + let output_indices = ${m.offsetToIndices(`(global_idx / ${_}) * ${h}`)}; + let col = output_indices[2]; + let row = output_indices[1]; + let batch = output_indices[0]; + let nBlocksPerCol = uniforms.b_shape[1]; + + for (var block = local_id.x; block < nBlocksPerCol; block += ${_}) { + //process one block + var word_offset: u32 = block * ${t.blockSize/d}; + ${C()} + for (var word: u32 = 0; word < ${l}; word += ${f}) { + ${w()} + for (var i: u32 = 0; i < ${f}; i++) { + ${S()} + word_offset += ${8/d}; + } + } + } + workgroupBarrier(); + + if (local_id.x < ${h}) { + var output_value: ${m.type.value} = ${m.type.value}(0); + var workgroup_shared_offset: u32 = local_id.x; + for (var b: u32 = 0u; b < ${_}u; b++) { + output_value += workgroup_shared[workgroup_shared_offset]; + workgroup_shared_offset += ${h}; + } + ${m.setByIndices(`${m.type.indices}(batch, row, col + local_id.x)`,`output_value`)}; + } + }`};return{name:`MatMulNBits`,shaderCache:{hint:`${t.blockSize};${t.bits};${d};${f};${p};${h};${_}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:m,dataType:u}],dispatchGroup:{x:g},programUniforms:v}),getShaderSource:S}},ul=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=U.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=tr(t.k),f=tr(l),p=s.concat([i,o]),m=128,h=o%8==0?8:o%4==0?4:1,g=m/h,_=g*f*8,v=_/d,y=_/t.blockSize,b=U.size(p)/h,x=[],S=[c,i,a/d],C=U.convertShape(e[1].dims).slice();C.splice(-1,1,l/f),x.push(...G(S)),x.push(...G(C)),x.push(...G(e[2].dims)),e.length===4&&x.push(...G(U.convertShape(e[3].dims)));let w=[c,i,o];x.push(...G(w));let T=n=>{let r=S.length,i=q(`a`,e[0].dataType,r,d),a=q(`b`,12,C.length,f),o=q(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?q(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let l=w.length,u=J(`output`,e[0].dataType,l),p=$n(e[0].dataType),_=()=>{switch(d){case 1:return` + let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1], sub_a[word_offset + 2], sub_a[word_offset + 3]); + let a_data1 = vec4<${p}>(sub_a[word_offset + 4], sub_a[word_offset + 5], sub_a[word_offset + 6], sub_a[word_offset + 7]);`;case 2:return` + let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1]); + let a_data1 = vec4<${p}>(sub_a[word_offset + 2], sub_a[word_offset + 3]);`;case 4:return` + let a_data0 = sub_a[word_offset]; + let a_data1 = sub_a[word_offset + 1];`;default:throw Error(`${d}-component is not supported.`)}};return` + var sub_a: array<${i.type.value}, ${v}>; + var inter_results: array, ${h}>; + ${n.declareVariables(...s,u)} + ${n.mainStart([g,h,1])} + let output_indices = ${u.offsetToIndices(`workgroup_index * ${h}`)}; + let col = output_indices[2]; + let row = output_indices[1]; + let batch = output_indices[0]; + let n_blocks_per_col = uniforms.b_shape[1]; + let num_tiles = (n_blocks_per_col - 1) / ${y} + 1; + + // Loop over shared dimension. + for (var tile: u32 = 0; tile < num_tiles; tile += 1) { + let a_col_start = tile * ${v}; + // load one tile A data into shared memory. + for (var a_offset = local_idx; a_offset < ${v}; a_offset += ${m}) + { + let a_col = a_col_start + a_offset; + if (a_col < uniforms.a_shape[2]) + { + sub_a[a_offset] = ${i.getByIndices(`${i.type.indices}(batch, row, a_col)`)}; + } else { + sub_a[a_offset] = ${i.type.value}(0); + } + } + workgroupBarrier(); + + // each thread process one block + let b_row = col + local_id.y; + let block = tile * ${y} + local_id.x; + ${c?` + let zero_point_bytes_per_col = (n_blocks_per_col + 1) / 2; + let zero_point_byte_count = b_row * zero_point_bytes_per_col + (block >> 0x1u); + let zero_point_word_index = zero_point_byte_count >> 0x2u; + let zero_point_byte_offset = zero_point_byte_count & 0x3u; + let zero_point_nibble_offset: u32 = block & 0x1u; + let zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); + let zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; + let zero_point = ${p}((zero_point_word) & 0xFu);`:` + // The default zero point is 8 for unsigned 4-bit quantization. + let zero_point = ${p}(8);`} + let scale = ${o.getByOffset(`b_row * n_blocks_per_col + block`)}; + let b_data = ${a.getByIndices(`${a.type.indices}(b_row, block, 0)`)}; + var word_offset = local_id.x * ${t.blockSize/d}; + for (var i: u32 = 0; i < ${f}; i++) { + ${_()} + let b_value = ${f===1?`b_data`:`b_data[i]`}; + let b_value_lower = unpack4xU8(b_value & 0x0F0F0F0Fu); + let b_value_upper = unpack4xU8((b_value >> 4) & 0x0F0F0F0Fu); + let b_quantized_values = mat2x4<${p}>(${Array.from({length:4},(e,t)=>`${p}(b_value_lower[${t}]), ${p}(b_value_upper[${t}])`).join(`, `)}); + let b_dequantized_values = (b_quantized_values - mat2x4<${p}>(${Array(8).fill(`zero_point`).join(`,`)})) * scale; + inter_results[local_id.y][local_id.x] += ${Array.from({length:2},(e,t)=>`${`dot(a_data${t}, b_dequantized_values[${t}])`}`).join(` + `)}; + word_offset += ${8/d}; + } + workgroupBarrier(); + } + + if (local_idx < ${h}) { + var output_value: ${u.type.value} = ${u.type.value}(0); + for (var b = 0u; b < ${g}; b++) { + output_value += inter_results[local_idx][b]; + } + if (col + local_idx < uniforms.output_shape[2]) + { + ${u.setByIndices(`${u.type.indices}(batch, row, col + local_idx)`,`output_value`)} + } + } + }`};return{name:`BlockwiseMatMulNBits32`,shaderCache:{hint:`${t.blockSize};${d};${f};${g};${h}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:p,dataType:u}],dispatchGroup:{x:b},programUniforms:x}),getShaderSource:T}},dl=(e,t)=>{cl(e.inputs,t),t.blockSize===32&&e.adapterInfo.isVendor(`intel`)&&e.adapterInfo.isArchitecture(`gen-12lp`)?e.compute(ul(e.inputs,t)):e.compute(ll(e.inputs,t))},fl=e=>Yn(e)}),ml,hl,gl,_l,vl,yl,bl,xl,Sl,Cl=M(()=>{"use strict";V(),W(),Y(),ml=e=>{if(!e||e.length<1)throw Error(`Too few inputs`);if(e[0].dataType!==1&&e[0].dataType!==10)throw Error(`Input type must be float or float16.`);if(e.length>=2){let t=e[0].dims.length*2===e[1].dims[0];if(e.length===4&&(t=e[3].dims[0]*2===e[1].dims[0]),!t)throw Error(`The pads should be a 1D tensor of shape [2 * input_rank] or [2 * num_axes].`)}},hl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + break; + } + if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { + break; + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + value = ${e.type.value}(uniforms.constant_value); + for (var i = 0; i < 1; i++) { + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + } + `},gl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + k = -k; + } + { + let _2n_1 = 2 * (i32(${K(`uniforms.x_shape`,i,t)}) - 1); + k = k % _2n_1; + if(k >= i32(${K(`uniforms.x_shape`,i,t)})) { + k = _2n_1 - k; + } + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + `},_l=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + k = 0; + } + if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { + k = i32(${K(`uniforms.x_shape`,i,t)}) - 1; + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + `},vl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` + k = i32(${e.indicesGet(`indices`,i)}) - ${K(`uniforms.pads`,i,n)}; + if (k < 0) { + k += i32(${K(`uniforms.x_shape`,i,t)}]); + } + if (k >= i32(${K(`uniforms.x_shape`,i,t)})) { + k -= i32(${K(`uniforms.x_shape`,i,t)}); + } + offset += k * i32(${K(`uniforms.x_strides`,i,t)}); + `;return` + var offset = 0; + var k = 0; + ${r} + value = x[offset]; + `},yl=(e,t,n)=>{switch(n.mode){case 0:return hl(e,t,n.pads.length);case 1:return gl(e,t,n.pads.length);case 2:return _l(e,t,n.pads.length);case 3:return vl(e,t,n.pads.length);default:throw Error(`Invalid mode`)}},bl=(e,t)=>{let n=U.padShape(e[0].dims.slice(),t.pads),r=e[0].dims,i=U.size(n),a=[{type:12,data:i},{type:6,data:t.pads}],o=e.length>=3&&e[2].data;t.mode===0&&a.push({type:o?e[2].dataType:1,data:t.value}),a.push(...G(e[0].dims,n));let s=[`rank`],c=i=>{let a=J(`output`,e[0].dataType,n.length),s=q(`x`,e[0].dataType,r.length),c=s.type.value,l=yl(a,r.length,t),u=[{name:`output_size`,type:`u32`},{name:`pads`,type:`i32`,length:t.pads.length}];return t.mode===0&&u.push({name:`constant_value`,type:o?c:`f32`}),` + ${i.registerUniforms(u).declareVariables(s,a)} + ${i.mainStart()} + ${i.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + + let indices = ${a.offsetToIndices(`global_idx`)}; + + var value = ${c}(0); + ${l} + output[global_idx] = value; + }`};return{name:`Pad`,shaderCache:{hint:`${t.mode}${o}`,inputDependencies:s},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(U.size(n)/64)},programUniforms:a}),getShaderSource:c}},xl=(e,t)=>{if(e.length>1){let n=e[1].getBigInt64Array(),r=e.length>=3&&e[2].data?e[2].dataType===10?e[2].getUint16Array()[0]:e[2].getFloat32Array()[0]:0,i=e[0].dims.length,a=new Int32Array(2*i).fill(0);if(e.length>=4){let t=e[3].getBigInt64Array();for(let e=0;ea[Number(t)]=Number(e));let o=[];return a.forEach(e=>o.push(e)),{mode:t.mode,value:r,pads:o}}else return t},Sl=(e,t)=>{ml(e.inputs);let n=xl(e.inputs,t);e.compute(bl(e.inputs,n),{inputs:[0]})}}),Z,wl,Tl,El,Dl,Ol,kl,Al,jl,Ml,Nl,Pl,Fl,Il,Ll,Rl,zl,Bl,Vl,Hl=M(()=>{"use strict";$e(),V(),W(),Y(),Z=e=>{if(L.webgpu.validateInputContent&&(!e||e.length!==1))throw Error(`Pool ops requires 1 input.`)},wl=(e,t,n)=>{let r=t.format===`NHWC`,i=e.dims.slice();r&&i.splice(1,0,i.pop());let a=Object.hasOwnProperty.call(t,`dilations`),o=t.kernelShape.slice(),s=t.strides.slice(),c=a?t.dilations.slice():[],l=t.pads.slice();gn.adjustPoolAttributes(n,i,o,s,c,l);let u=gn.computePoolOutputShape(n,i,s,c,o,l,t.autoPad),d=Object.assign({},t);a?Object.assign(d,{kernelShape:o,strides:s,pads:l,dilations:c,cacheKey:t.cacheKey}):Object.assign(d,{kernelShape:o,strides:s,pads:l,cacheKey:t.cacheKey});let f=u.slice();return f.push(f.splice(1,1)[0]),[d,r?f:u]},Tl=(e,t)=>{let n=t.format===`NHWC`,r=U.size(e),i=U.size(t.kernelShape),a=[{type:12,data:r},{type:12,data:i}],o=[{name:`outputSize`,type:`u32`},{name:`kernelSize`,type:`u32`}];if(t.kernelShape.length<=2){let e=t.kernelShape[t.kernelShape.length-1],n=t.strides[t.strides.length-1],r=t.pads[t.pads.length/2-1],i=t.pads[t.pads.length-1],s=!!(r+i);a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kw`,type:`u32`},{name:`sw`,type:`u32`},{name:`pwStart`,type:`u32`},{name:`pwEnd`,type:`u32`});let c=!1;if(t.kernelShape.length===2){let e=t.kernelShape[t.kernelShape.length-2],n=t.strides[t.strides.length-2],r=t.pads[t.pads.length/2-2],i=t.pads[t.pads.length-2];c=!!(r+i),a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kh`,type:`u32`},{name:`sh`,type:`u32`},{name:`phStart`,type:`u32`},{name:`phEnd`,type:`u32`})}return[a,o,!0,s,c]}else{if(n)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let e=U.computeStrides(t.kernelShape);a.push({type:12,data:e},{type:12,data:t.pads},{type:12,data:t.strides}),o.push({name:`kernelStrides`,type:`u32`,length:e.length},{name:`pads`,type:`u32`,length:t.pads.length},{name:`strides`,type:`u32`,length:t.strides.length});let r=t.pads.reduce((e,t)=>e+t);return[a,o,!!r,!1,!1]}},El=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f=i.format===`NHWC`,p=t.type.value,m=J(`output`,t.type.tensor,r);if(i.kernelShape.length<=2){let r=``,l=``,h=``,g=n-(f?2:1);if(r=u?` + for (var i: u32 = 0u; i < uniforms.kw; i++) { + xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; + if (xIndices[${g}] < 0 || xIndices[${g}] + >= uniforms.x_shape[${g}]) { + pad++; + continue; + } + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + }`:` + for (var i: u32 = 0u; i < uniforms.kw; i++) { + xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + }`,i.kernelShape.length===2){let e=n-(f?3:2);l=d?` + for (var j: u32 = 0u; j < uniforms.kh; j++) { + xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; + if (xIndices[${e}] < 0 || xIndices[${e}] >= uniforms.x_shape[${e}]) { + pad += i32(uniforms.kw); + continue; + } + `:` + for (var j: u32 = 0u; j < uniforms.kh; j++) { + xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; + `,h=` + } + `}return` + ${e.registerUniforms(c).declareVariables(t,m)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + + let indices = ${m.offsetToIndices(`global_idx`)}; + var xIndices = ${m.offsetToIndices(`global_idx`)}; + + var value = ${p}(${s}); + var pad = 0; + ${l} + ${r} + ${h} + ${o} + + output[global_idx] = value; + }`}else{if(f)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let r=i.kernelShape.length,u=i.pads.length,d=``;return d=l?` + if (xIndices[j] >= uniforms.x_shape[j]) { + pad++; + isPad = true; + break; + } + } + if (!isPad) { + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + }`:` + } + let x_val = x[${t.indicesToOffset(`xIndices`)}]; + ${a} + `,` + ${e.registerUniforms(c).declareVariables(t,m)} + + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + let indices = ${m.offsetToIndices(`global_idx`)}; + var xIndices = ${m.offsetToIndices(`global_idx`)}; + + var offsets: array; + + var value = ${p}(${s}); + var pad = 0; + var isPad = false; + + for (var i: u32 = 0u; i < uniforms.kernelSize; i++) { + var offset = i; + for (var j = 0u; j < ${r-1}u; j++) { + offsets[j] = offset / ${K(`uniforms.kernelStrides`,`j`,r)}; + offset -= offsets[j] * ${K(`uniforms.kernelStrides`,`j`,r)}; + } + offsets[${r-1}] = offset; + + isPad = false; + for (var j = ${n-r}u; j < ${n}u; j++) { + xIndices[j] = indices[j] * ${K(`uniforms.strides`,`j - ${n-r}u`,r)} + + offsets[j - ${n-r}u] - ${K(`uniforms.pads`,`j - 2u`,u)}; + ${d} + } + ${o} + + output[global_idx] = value; + }`}},Dl=e=>`${e.format};${e.ceilMode};${e.autoPad};${e.kernelShape.length}`,Ol=e=>`${Dl(e)};${e.countIncludePad}`,kl=e=>`${Dl(e)};${e.storageOrder};${e.dilations}`,Al=e=>({format:e.format,autoPad:[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],ceilMode:e.ceil_mode,kernelShape:e.kernel_shape,strides:e.strides,pads:e.pads}),jl=(e,t,n,r)=>{let[i,a]=wl(t,r,n),o=q(`x`,t.dataType,t.dims.length),s=o.type.value,c=`value += x_val;`,l=``;i.countIncludePad?l+=`value /= ${s}(uniforms.kernelSize);`:l+=`value /= ${s}(i32(uniforms.kernelSize) - pad);`;let[u,d,f,p,m]=Tl(a,i);u.push(...G(t.dims,a));let h=[`rank`];return{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(U.size(a)/64)},programUniforms:u}),getShaderSource:e=>El(e,o,t.dims.length,a.length,i,c,l,0,d,f,p,m)}},Ml=e=>{let t=e.count_include_pad!==0,n=Al(e);if(n.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for AveragePool`);let r={countIncludePad:t,...n,cacheKey:``};return{...r,cacheKey:Ol(r)}},Nl=(e,t)=>{Z(e.inputs),e.compute(jl(`AveragePool`,e.inputs[0],!1,t))},Pl={autoPad:``,ceilMode:0,countIncludePad:!1,kernelShape:[],strides:[],pads:[],storageOrder:0,dilations:[]},Fl=e=>{let t=e.format;return{format:t,...Pl,cacheKey:t}},Il=(e,t)=>{Z(e.inputs),e.compute(jl(`GlobalAveragePool`,e.inputs[0],!0,t))},Ll=(e,t,n,r)=>{let[i,a]=wl(t,r,n),o=` + value = max(x_val, value); + `,s=``,c=q(`x`,t.dataType,t.dims.length),l=[`rank`],[u,d,f,p,m]=Tl(a,i);return u.push(...G(t.dims,a)),{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:l},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(U.size(a)/64)},programUniforms:u}),getShaderSource:e=>El(e,c,t.dims.length,a.length,i,o,s,t.dataType===10?-65504:-1e5,d,f,p,m)}},Rl=(e,t)=>{Z(e.inputs),e.compute(Ll(`MaxPool`,e.inputs[0],!1,t))},zl=e=>{let t=e.storage_order,n=e.dilations,r=Al(e);if(t!==0)throw Error(`column major storage order is not yet supported for MaxPool`);if(r.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for MaxPool`);let i={storageOrder:t,dilations:n,...r,cacheKey:``};return{...i,cacheKey:kl(i)}},Bl=e=>{let t=e.format;return{format:t,...Pl,cacheKey:t}},Vl=(e,t)=>{Z(e.inputs),e.compute(Ll(`GlobalMaxPool`,e.inputs[0],!0,t))}}),Ul,Wl,Gl,Kl,ql=M(()=>{"use strict";V(),W(),Xn(),Y(),Ul=(e,t)=>{if(e.length<2||e.length>3)throw Error(`DequantizeLinear requires 2 or 3 inputs.`);if(e.length===3&&e[1].dims===e[2].dims)throw Error(`x-scale and x-zero-point must have the same shape.`);if(e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[0].dataType===6&&e.length>2)throw Error(`In the case of dequantizing int32 there is no zero point.`);if(e[1].dims.length!==0&&e[1].dims.length!==1&&e[1].dims.length!==e[0].dims.length)throw Error(`scale input must be a scalar, a 1D tensor, or have the same rank as the input tensor.`);if(e.length>2){if(e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[1].dims.length!==e[2].dims.length)throw Error(`scale and zero-point inputs must have the same rank.`);if(!e[1].dims.map((t,n)=>t===e[2].dims[n]).reduce((e,t)=>e&&t,!0))throw Error(`scale and zero-point inputs must have the same shape.`)}if(t.blockSize>0){if(e[1].dims.length===0||e[1].dims.length===1&&e[1].dims[0]===1)throw Error(`blockSize must be set only for block quantization.`);if(!e[1].dims.map((n,r)=>r===t.axis||n===e[0].dims[r]).reduce((e,t)=>e&&t,!0))throw Error(`For block qunatization, scale input shape to match the input shape except for the axis`);if(e[1].dims.length!==e[0].dims.length)throw Error(`For block qunatization the scale input rank must be the same as the x rank.`);let n=e[0].dims[t.axis],r=e[1].dims[t.axis];if(t.blockSizeMath.ceil(n/(r-1)-1))throw Error(`blockSize must be with in the range [ceil(dI / Si), ceil(dI / (Si - 1) - 1)].`)}},Wl=(e,t)=>{let n=U.normalizeAxis(t.axis,e[0].dims.length),r=e[0].dataType,i=r===3,a=e[0].dims,o=e[1].dataType,s=U.size(a),c=r===3||r===2,l=c?[Math.ceil(U.size(e[0].dims)/4)]:e[0].dims,u=e[1].dims,d=e.length>2?e[2]:void 0,f=d?c?[Math.ceil(U.size(d.dims)/4)]:d.dims:void 0,p=u.length===0||u.length===1&&u[0]===1,m=p===!1&&u.length===1,h=tr(s),g=p&&(!c||h===4),_=g?h:1,v=g&&!c?h:1,y=q(`input`,c?12:r,l.length,v),b=q(`scale`,o,u.length),x=d?q(`zero_point`,c?12:r,f.length):void 0,S=J(`output`,o,a.length,_),C=[y,b];x&&C.push(x);let w=[l,u];d&&w.push(f);let T=[{type:12,data:s/_},{type:12,data:n},{type:12,data:t.blockSize},...G(...w,a)],E=e=>{let t=[{name:`output_size`,type:`u32`},{name:`axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` + ${e.registerUniforms(t).declareVariables(...C,S)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let output_indices = ${S.offsetToIndices(`global_idx`)}; + + // Set input x + ${c?` + let input = ${y.getByOffset(`global_idx / 4`)}; + let x_vec = ${i?`unpack4xI8(input)`:`unpack4xU8(input)`}; + let x_value = ${_===1?`x_vec[global_idx % 4]`:`x_vec`};`:`let x_value = ${y.getByOffset(`global_idx`)};`}; + + // Set scale input + ${p?`let scale_value= ${b.getByOffset(`0`)}`:m?` + let scale_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; + let scale_value= ${b.getByOffset(`scale_index`)};`:` + var scale_indices: ${b.type.indices} = output_indices; + let index = ${b.indicesGet(`scale_indices`,`uniforms.axis`)} / uniforms.block_size; + ${b.indicesSet(`scale_indices`,`uniforms.axis`,`index`)}; + let scale_value= ${b.getByIndices(`scale_indices`)};`}; + + // Set zero-point input + ${x?p?c?` + let zero_point_input = ${x.getByOffset(`0`)}; + let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; + let zero_point_value= zero_point_vec[0]`:`let zero_point_value = ${x.getByOffset(`0`)}`:m?c?` + let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; + let zero_point_input = ${x.getByOffset(`zero_point_index / 4`)}; + let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; + let zero_point_value = zero_point_vec[zero_point_index % 4]`:` + let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; + let zero_point_value = ${x.getByOffset(`zero_point_index`)};`:c?` + let zero_point_offset = ${b.indicesToOffset(`scale_indices`)}; + let zero_point_input = ${x.getByOffset(`zero_point_offset / 4`)}; + let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; + let zero_point_value = zero_point_vec[zero_point_offset % 4];`:`let zero_point_value = ${x.getByIndices(`scale_indices`)};`:`let zero_point_value = ${c?i?`i32`:`u32`:y.type.value}(0);`}; + // Compute and write output + ${S.setByOffset(`global_idx`,`${S.type.value}(x_value - zero_point_value) * scale_value`)}; + }`};return{name:`DequantizeLinear`,shaderCache:{hint:t.cacheKey,inputDependencies:x?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getShaderSource:E,getRunData:()=>({outputs:[{dims:a,dataType:o}],dispatchGroup:{x:Math.ceil(s/_/64),y:1,z:1},programUniforms:T})}},Gl=(e,t)=>{Ul(e.inputs,t),e.compute(Wl(e.inputs,t))},Kl=e=>Yn({axis:e.axis,blockSize:e.blockSize})}),Jl,Yl,Xl,Zl=M(()=>{"use strict";$e(),V(),Y(),Jl=(e,t,n)=>{let r=e===t,i=et&&n>0;if(r||i||a)throw Error(`Range these inputs' contents are invalid.`)},Yl=(e,t,n,r)=>{let i=Math.abs(Math.ceil((t-e)/n)),a=[i],o=i,s=[{type:12,data:o},{type:r,data:e},{type:r,data:n},...G(a)],c=e=>{let t=J(`output`,r,a.length),n=t.type.value,i=[{name:`outputSize`,type:`u32`},{name:`start`,type:n},{name:`delta`,type:n}];return` + ${e.registerUniforms(i).declareVariables(t)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + output[global_idx] = uniforms.start + ${n}(global_idx) * uniforms.delta; + }`};return{name:`Range`,shaderCache:{hint:`${r}`},getShaderSource:c,getRunData:()=>({outputs:[{dims:a,dataType:r}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:s})}},Xl=e=>{let t=0,n=0,r=0;e.inputs[0].dataType===6?(t=e.inputs[0].getInt32Array()[0],n=e.inputs[1].getInt32Array()[0],r=e.inputs[2].getInt32Array()[0]):e.inputs[0].dataType===1&&(t=e.inputs[0].getFloat32Array()[0],n=e.inputs[1].getFloat32Array()[0],r=e.inputs[2].getFloat32Array()[0]),L.webgpu.validateInputContent&&Jl(t,n,r),e.compute(Yl(t,n,r,e.inputs[0].dataType),{inputs:[]})}}),Ql,$l,eu,tu,nu,ru,iu=M(()=>{"use strict";V(),W(),Xn(),Y(),Ql=(e,t,n,r)=>{if(e!==`none`&&r!==`i32`&&r!==`u32`&&r!==`f32`)throw Error(`Input ${r} is not supported with reduction ${e}.`);let i=`{ + var oldValue = 0; + loop { + let newValueF32 =`,a=`; + let newValue = bitcast(newValueF32); + let res = atomicCompareExchangeWeak(&${t}, oldValue, newValue); + if res.exchanged { + break; + } + oldValue = res.old_value; + } + }`;switch(e){case`none`:return`${t}=${n};`;case`add`:return r===`i32`||r===`u32`?`atomicAdd(&${t}, bitcast<${r}>(${n}));`:` + ${i}bitcast<${r}>(oldValue) + (${n})${a}`;case`max`:return r===`i32`||r===`u32`?`atomicMax(&${t}, bitcast<${r}>(${n}));`:` + ${i}max(bitcast(oldValue), (${n}))${a}`;case`min`:return r===`i32`||r===`u32`?`atomicMin(&${t}, bitcast<${r}>(${n}));`:`${i}min(bitcast<${r}>(oldValue), (${n}))${a}`;case`mul`:return`${i}(bitcast<${r}>(oldValue) * (${n}))${a}`;default:throw Error(`Reduction ${e} is not supported.`)}},$l=(e,t)=>`${e===1?` + let element_count_dim = uniforms.output_strides; + let dim_value = uniforms.output_shape;`:` + let element_count_dim = uniforms.output_strides[${t?`i - indices_start`:`i`}]; + let dim_value = uniforms.output_shape[${t?`i - indices_start`:`i`} + uniforms.last_index_dimension];`} + + if (index >= 0) { + if (index >= i32(dim_value)) { + index = i32(dim_value - 1); + } + } else { + if (index < -i32(dim_value)) { + index = 0; + } else { + index += i32(dim_value); + } + } + data_offset += u32((u32(index) * element_count_dim));`,eu=(e,t,n)=>`for (var i = 0u; i < uniforms.num_updates_elements; i++) { + let value = updates[uniforms.num_updates_elements * ${n?`global_idx`:`idx`} + i]; + ${Ql(e.reduction,`output[data_offset + i]`,`value`,t)} + }`,tu=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n,a=1,o=Math.ceil(U.size(r)/a),s=r[r.length-1],c=U.sizeFromDimension(n,s),l=U.sizeFromDimension(r,0)/s,u=[{type:12,data:o},{type:12,data:s},{type:12,data:c},...G(e[1].dims,e[2].dims,i)],d=r=>{let o=q(`indices`,e[1].dataType,e[1].dims.length),s=q(`updates`,e[2].dataType,e[2].dims.length,a),c=t.reduction!==`none`&&t.reduction!==``?or(`output`,e[0].dataType,i.length):J(`output`,e[0].dataType,i.length,a);return` + ${r.registerUniform(`output_size`,`u32`).registerUniform(`last_index_dimension`,`u32`).registerUniform(`num_updates_elements`,`u32`).declareVariables(o,s,c)} + ${r.mainStart()} + ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + var hasDuplicates = false; + if (${t.reduction===`none`}) { + for (var i = 0; i < ${l}; i = i + 1) { + for (var j = i + 1; j < ${l}; j = j + 1) { + var index_i = i32(indices[i].x); + var index_j = i32(indices[j].x); + if (index_i == index_j) { + hasDuplicates = true; + break; + } + } + if (hasDuplicates) { + break; + } + } + } + + if (${t.reduction===`none`} && hasDuplicates) { + if (global_idx != 0u) { + return; + } + // Process each index-update pair individually when duplicates exist + for (var idx = 0u; idx < ${l}u; idx++) { + var data_offset = 0u; + for (var i = 0u; i < uniforms.last_index_dimension; i++) { + var index = i32(indices[idx * uniforms.last_index_dimension + i].x); + ${$l(n.length,!1)} + } + ${eu(t,c.type.value,!1)} + } + return; + } + + var data_offset = 0u; + var indices_start = uniforms.last_index_dimension * global_idx; + var indices_end = indices_start + uniforms.last_index_dimension; + for (var i = indices_start; i < indices_end; i++) { + var index = i32(indices[i].x); + ${$l(n.length,!0)} + } + ${eu(t,c.type.value,!0)} + }`};return{name:`ScatterND`,shaderCache:{hint:`${t.cacheKey}_${t.reduction}`,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:u}),getShaderSource:d}},nu=e=>Yn({reduction:e.reduction}),ru=(e,t)=>{e.compute(tu(e.inputs,t),{inputs:[e.inputs[1],e.inputs[2]],outputs:[]})}}),au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u,vu,yu,bu,xu,Su,Cu,wu,Tu=M(()=>{"use strict";V(),W(),Xn(),Y(),au=(e,t)=>{if(e.every(e=>e>0||(()=>{throw Error(`Resize requires scales input values to be positive`)})),e.length>0){if(t.mode===`linear`){if(!(e.length===2||e.length===3||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1||e.length===5&&e[0]===1&&e[1]===1))throw Error(`For linear mode, Resize requires scales to be 2D, 3D, 4D with either two outermost or one innermost and + one outermost scale values equal to 1, or 5D with two outermost scale values equal to 1`)}else if(t.mode===`cubic`&&!(e.length===2||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1))throw Error(`Resize requires scales input size to be 2 or 4 for cubic mode`)}},ou=(e,t,n)=>{t.every(e=>e>=0&&e{throw Error(`Resize requires axes input values to be positive and less than rank`)}));let r=Array(n).fill(1);return t.forEach((t,n)=>r[t]=e[n]),r},su=(e,t,n,r,i,a)=>{let[o,s,c]=n>10?[1,2,3]:[-1,e.length>1?1:-1,-1],l=e[0].dims.length;if(o>0&&e.length>o&&e[o].dims.length>0)e[o].getFloat32Array().forEach(e=>a.push(e));else if(t.coordinateTransformMode===`tf_crop_and_resize`)throw Error(`Resize requires RoI input to be specified when coordinateTransformMode is tfCropAndResize`);if(s>0&&e.length>s&&e[s].dims.length===1&&e[s].dims[0]>0){if(e[s].getFloat32Array().forEach(e=>r.push(e)),r.length!==0&&r.length!==l&&n>=18&&r.length!==t.axes.length)throw Error(`Resize requires scales input size to be same as input rank or axes size for opset 18 and up`);au(r,t),t.axes.length>0&&ou(r,t.axes,l).forEach((e,t)=>r[t]=e)}if(c>0&&e.length>c&&e[c].dims.length===1&&e[c].dims[0]>0&&(e[c].getBigInt64Array().forEach(e=>i.push(Number(e))),i.length!==0&&i.length!==l&&n>=18&&i.length!==t.axes.length))throw Error(`Resize requires sizes input size to be same as input rank or axes size for opset 18 and up`);if(t.axes.length>0){if(r.length!==0&&r.length!==t.axes.length)throw Error(`Resize requires "scales" input size to be of axes rank when axes attributes is specified`);if(i.length!==0&&i.length!==t.axes.length)throw Error(`Resize requires "sizes" input size to be of rank axes rank when axes attributes is specified`)}if(typeof r<`u`&&typeof i<`u`&&r.length>0&&i.length>l)throw Error(`Resize requires only of scales or sizes to be specified`)},cu=(e,t,n,r)=>` + // The whole part and the fractional part are calculated separately due to inaccuracy of floating + // point division. As an example, f32(21) / f32(7) may evaluate to 2.99... instead of 3, causing an + // offset-by-one error later in floor(). + let big = (${e}) * (${t}); + let whole = ${r}(big / (${n})); + let fract = ${r}(big % (${n})) / ${r}(${n}); + return whole + fract; +`,lu=(e,t)=>`fn getOriginalCoordinateFromResizedCoordinate(xResized: u32, xScale: f32, lengthResized: u32, + lengthOriginal: u32, roiStart: f32, roiEnd: f32) -> ${t} { `+(()=>{switch(e){case`asymmetric`:return` + if (xScale < 1.0 || floor(xScale) != xScale) { + return ${t}(xResized) / ${t}(xScale); + } else { + ${cu(`xResized`,`lengthOriginal`,`lengthResized`,t)} + } + `;case`pytorch_half_pixel`:return`if (lengthResized > 1) { + return (${t}(xResized) + 0.5) / ${t}(xScale) - 0.5; + } else { + return 0.0; + }`;case`tf_half_pixel_for_nn`:return`return (${t}(xResized) + 0.5) / ${t}(xScale);`;case`align_corners`:return`if (lengthResized == 1) { + return 0.0; + } else { + ${cu(`xResized`,`lengthOriginal - 1`,`lengthResized - 1`,t)} + }`;case`tf_crop_and_resize`:return`if (lengthResized > 1) { + return ${t}(roiStart) * ${t}(lengthOriginal - 1) + + (${t}(xResized) * ${t}(roiEnd - roiStart) * ${t}(lengthOriginal - 1)) / + ${t}(lengthResized - 1); + } else { + return 0.5 * ${t}(roiStart + roiEnd) * ${t}(lengthOriginal - 1); + }`;case`half_pixel_symmetric`:return`const outputWidth = ${t}xScale * ${t}(lengthResized); + const adjustment = ${t}(lengthResized) / outputWidth; + const center = ${t}(lengthOriginal) / 2; + const offset = center * (1 - adjustment); + return offset + ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;case`half_pixel`:return`return ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;default:throw Error(`Coordinate transform mode ${e} is not supported`)}})()+`}`,uu=(e,t,n)=>`fn getNearestPixelFromOriginal(xOriginal: ${n}, isDownSample: bool) -> ${n} {`+(()=>{switch(e){case`round_prefer_ceil`:return`if (fract(xOriginal) == 0.5) { return ceil(xOriginal); } else { return round(xOriginal); }`;case`floor`:return`return floor(xOriginal);`;case`ceil`:return`return ceil(xOriginal);`;case`round_prefer_floor`:return`if (fract(xOriginal) == 0.5) { return floor(xOriginal); } else { return round(xOriginal); }`;case`simple`:default:if(t<11)return`if (isDownSample) { return ceil(xOriginal); } else { return xOriginal; }`;throw Error(`Nearest mode ${e} is not supported`)}})()+`}`,du=(e,t,n)=>{let r=Array(n).fill(0).concat(Array(n).fill(1)),i=e.length===0?r:e.slice();return t.length>0?(t.forEach((e,a)=>{r[e]=i[a],r[a+n]=i[t.length+a]}),r):i},fu=(e,t,n,r)=>{let i=[];if(n.length>0)if(r.length>0){if(e.forEach(e=>i.push(e)),Math.max(...r)>e.length)throw Error(`axes is out of bound`);r.forEach((e,t)=>i[e]=n[t])}else n.forEach(e=>i.push(e));else{if(t.length===0)throw Error(`Resize requires either scales or sizes.`);i=e.map((e,n)=>Math.round(e*t[n]))}return i},pu=(e,t,n)=>{let r=(()=>{switch(n.keepAspectRatioPolicy){case`not_larger`:return n.axes.length>0?Math.min(...n.axes.map(e=>t[e]),Number.MAX_VALUE):Math.min(...t,Number.MAX_VALUE);case`not_smaller`:return n.axes.length>0?Math.max(...n.axes.map(e=>t[e]),Number.MIN_VALUE):Math.max(...t,Number.MIN_VALUE);default:throw Error(`Keep aspect ratio policy ${n.keepAspectRatioPolicy} is not supported`)}})();t.fill(1,0,t.length);let i=e.slice();return n.axes.length>0?(n.axes.forEach(e=>t[e]=r),n.axes.forEach(n=>i[n]=Math.round(e[n]*t[n]))):(t.fill(r,0,t.length),i.forEach((e,n)=>i[n]=Math.round(e*t[n]))),i},mu=(e,t,n,r,i)=>` + fn calculateOriginalIndicesFromOutputIndices(output_indices: ${e.type.indices}) -> array<${e.type.value}, ${n.length}> { + var original_indices: array<${e.type.value}, ${n.length}>; + for (var i:u32 = 0; i < ${n.length}; i++) { + var output_index = ${e.indicesGet(`output_indices`,`i`)}; + var scale = ${K(`uniforms.scales`,`i`,r)}; + var roi_low = ${K(`uniforms.roi`,`i`,i)}; + var roi_hi = ${K(`uniforms.roi`,`i + ${t.length}`,i)}; + if (scale == 1.0) { + original_indices[i] = ${e.type.value}(output_index); + } else { + var input_shape_i = ${K(`uniforms.input_shape`,`i`,t.length)}; + var output_shape_i = ${K(`uniforms.output_shape`,`i`,n.length)}; + original_indices[i] = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, + input_shape_i, roi_low, roi_hi); + } + } + return original_indices; + }`,hu=(e,t,n,r,i,a,o)=>` + fn calculateInputIndicesFromOutputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { + var input_indices: ${e.type.indices}; + for (var i:u32 = 0; i < ${r.length}; i++) { + var output_index = ${t.indicesGet(`output_indices`,`i`)}; + var input_index: u32; + var scale = ${K(`uniforms.scales`,`i`,i)}; + if (scale == 1.0) { + input_index = output_index; + } else { + var roi_low = ${K(`uniforms.roi`,`i`,a)}; + var roi_hi = ${K(`uniforms.roi`,`i + ${n.length}`,a)}; + var input_shape_i = ${K(`uniforms.input_shape`,`i`,n.length)}; + var output_shape_i = ${K(`uniforms.output_shape`,`i`,r.length)}; + var original_idx = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, + input_shape_i, roi_low, roi_hi); + if (!${o} || (original_idx >= 0 && original_idx < ${t.type.value}(input_shape_i))) { + if (original_idx < 0) { + input_index = 0; + } else if (original_idx > ${t.type.value}(input_shape_i - 1)) { + input_index = input_shape_i - 1; + } else { + input_index = u32(getNearestPixelFromOriginal(original_idx, scale < 1)); + } + } else { + input_index = u32(original_idx); + } + } + ${e.indicesSet(`input_indices`,`i`,`input_index`)} + } + return input_indices; + }`,gu=(e,t)=>` + fn checkInputIndices(input_indices: ${e.type.indices}) -> bool { + for (var i:u32 = 0; i < ${t.length}; i++) { + var input_index = ${e.indicesGet(`input_indices`,`i`)}; + if (input_index < 0 || input_index >= ${K(`uniforms.input_shape`,`i`,t.length)}) { + return false; + } + } + return true; + }`,_u=(e,t,n,r)=>e.rank>r?` + ${e.indicesSet(`input_indices`,t,`channel`)}; + ${e.indicesSet(`input_indices`,n,`batch`)}; +`:``,vu=(e,t,n,r,i)=>{let[a,o,s,c]=n.length===2?[-1,0,1,-1]:[0,2,3,1],l=e.type.value;return` + fn getInputValue(batch: u32, channel: u32, row: u32, col: u32) -> ${l} { + var input_indices: ${e.type.indices}; + ${e.indicesSet(`input_indices`,o,`max(0, min(row, ${n[o]} - 1))`)}; + ${e.indicesSet(`input_indices`,s,`max(0, min(col, ${n[s]} - 1))`)}; + ${_u(e,c,a,2)} + return ${e.getByIndices(`input_indices`)}; + } + + fn bilinearInterpolation(output_indices: ${t.type.indices}) -> ${l} { + var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); + var row:${l} = originalIndices[${o}]; + var col:${l} = originalIndices[${s}]; + ${r?`if (row < 0 || row > (${n[o]} - 1) || col < 0 || col > (${n[s]} - 1)) { + return ${i}; + }`:``}; + row = max(0, min(row, ${n[o]} - 1)); + col = max(0, min(col, ${n[s]} - 1)); + var row1: u32 = u32(row); + var col1: u32 = u32(col); + var row2: u32 = u32(row + 1); + var col2: u32 = u32(col + 1); + var channel: u32 = ${n.length>2?`u32(originalIndices[${c}])`:`0`}; + var batch: u32 = ${n.length>2?`u32(originalIndices[${a}])`:`0`}; + var x11: ${l} = getInputValue(batch, channel, row1, col1); + var x12: ${l} = getInputValue(batch, channel, row1, col2); + var x21: ${l} = getInputValue(batch, channel, row2, col1); + var x22: ${l} = getInputValue(batch, channel, row2, col2); + var dx1: ${l} = abs(row - ${l}(row1)); + var dx2: ${l} = abs(${l}(row2) - row); + var dy1: ${l} = abs(col - ${l}(col1)); + var dy2: ${l} = abs(${l}(col2) - col); + if (row1 == row2) { + dx1 = 0.5; + dx2 = 0.5; + } + if (col1 == col2) { + dy1 = 0.5; + dy2 = 0.5; + } + return (x11 * dx2 * dy2 + x12 * dx2 * dy1 + x21 * dx1 * dy2 + x22 * dx1 * dy1); + }`},yu=(e,t,n,r,i,a,o,s,c,l)=>{let u=n.length===2,d=!0,[f,p]=u?[0,1]:d?[2,3]:[1,2],m=e.type.value,h=o=>{let u=o===f?`row`:`col`;return` + fn ${u}CubicInterpolation(input_indices: ${e.type.indices}, output_indices: ${t.type.indices}) -> ${m} { + var output_index = ${t.indicesGet(`output_indices`,o)}; + var originalIdx: ${m} = getOriginalCoordinateFromResizedCoordinate(output_index, ${i[o]}, + ${r[o]}, ${n[o]}, ${a[o]}, ${a[o]} + ${n.length}); + var fractOriginalIdx: ${m} = originalIdx - floor(originalIdx); + var coefs = getCubicInterpolationCoefs(fractOriginalIdx); + + if (${s} && (originalIdx < 0 || originalIdx > (${n[o]} - 1))) { + return ${c}; + } + var data: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); + for (var i: i32 = -1; i < 3; i++) { + var ${u}: ${m} = originalIdx + ${m}(i); + if (${u} < 0 || ${u} >= ${n[o]}) { + ${l?`coefs[i + 1] = 0.0; + continue;`:s?`return ${c};`:`${u} = max(0, min(${u}, ${n[o]} - 1));`}; + } + var input_indices_copy: ${e.type.indices} = input_indices; + ${e.indicesSet(`input_indices_copy`,o,`u32(${u})`)}; + data[i + 1] = ${o===f?e.getByIndices(`input_indices_copy`):`rowCubicInterpolation(input_indices_copy, output_indices)`}; + } + return cubicInterpolation1D(data, coefs); + }`};return` + ${h(f)}; + ${h(p)}; + fn getCubicInterpolationCoefs(s: ${m}) -> array<${m}, 4> { + var absS = abs(s); + var coeffs: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); + var oneMinusAbsS: ${m} = 1.0 - absS; + var twoMinusAbsS: ${m} = 2.0 - absS; + var onePlusAbsS: ${m} = 1.0 + absS; + coeffs[0] = ((${o} * onePlusAbsS - 5 * ${o}) * onePlusAbsS + 8 * ${o}) * onePlusAbsS - 4 * ${o}; + coeffs[1] = ((${o} + 2) * absS - (${o} + 3)) * absS * absS + 1; + coeffs[2] = ((${o} + 2) * oneMinusAbsS - (${o} + 3)) * oneMinusAbsS * oneMinusAbsS + 1; + coeffs[3] = ((${o} * twoMinusAbsS - 5 * ${o}) * twoMinusAbsS + 8 * ${o}) * twoMinusAbsS - 4 * ${o}; + return coeffs; + } + + fn cubicInterpolation1D(x: array<${m}, 4>, coefs: array<${m}, 4>) -> ${m} { + var coefsSum: ${m} = coefs[0] + coefs[1] + coefs[2] + coefs[3]; + return (x[0] * coefs[0] + x[1] * coefs[1]+ x[2] * coefs[2]+ x[3] * coefs[3]) / coefsSum; + } + + fn bicubicInterpolation(output_indices: ${t.type.indices}) -> ${m} { + var input_indices: ${e.type.indices} = output_indices; + return colCubicInterpolation(input_indices, output_indices); + } + `},bu=(e,t,n,r,i)=>{let[a,o,s,c,l]=n.length===3?[-1,0,1,2,-1]:[0,2,3,4,1],u=e.type.value;return` + fn getInputValue(batch: u32, channel: u32, depth:u32, height: u32, width: u32) -> ${u} { + var input_indices: ${e.type.indices}; + ${e.indicesSet(`input_indices`,o,`max(0, min(depth, ${n[o]} - 1))`)}; + ${e.indicesSet(`input_indices`,s,`max(0, min(height, ${n[s]} - 1))`)}; + ${e.indicesSet(`input_indices`,c,`max(0, min(width, ${n[c]} - 1))`)}; + ${_u(e,l,a,3)} + return ${e.getByIndices(`input_indices`)}; + } + + fn trilinearInterpolation(output_indices: ${t.type.indices}) -> ${u} { + var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); + var depth:${u} = originalIndices[${o}]; + var height:${u} = originalIndices[${s}]; + var width:${u} = originalIndices[${c}]; + ${r?`if (depth < 0 || depth > (${n[o]} - 1) || height < 0 || height > (${n[s]} - 1) || width < 0 || (width > ${n[c]} - 1)) { + return ${i}; + }`:``}; + + depth = max(0, min(depth, ${n[o]} - 1)); + height = max(0, min(height, ${n[s]} - 1)); + width = max(0, min(width, ${n[c]} - 1)); + var depth1: u32 = u32(depth); + var height1: u32 = u32(height); + var width1: u32 = u32(width); + var depth2: u32 = u32(depth + 1); + var height2: u32 = u32(height + 1); + var width2: u32 = u32(width + 1); + var channel: u32 = ${n.length>3?`u32(originalIndices[${l}])`:`0`}; + var batch: u32 = ${n.length>3?`u32(originalIndices[${a}])`:`0`}; + + var x111: ${u} = getInputValue(batch, channel, depth1, height1, width1); + var x112: ${u} = getInputValue(batch, channel, depth1, height1, width2); + var x121: ${u} = getInputValue(batch, channel, depth1, height2, width1); + var x122: ${u} = getInputValue(batch, channel, depth1, height2, width2); + var x211: ${u} = getInputValue(batch, channel, depth2, height1, width1); + var x212: ${u} = getInputValue(batch, channel, depth2, height1, width2); + var x221: ${u} = getInputValue(batch, channel, depth2, height2, width1); + var x222: ${u} = getInputValue(batch, channel, depth2, height2, width2); + var dx1: ${u} = abs(depth - ${u}(depth1)); + var dx2: ${u} = abs(${u}(depth2) - depth); + var dy1: ${u} = abs(height - ${u}(height1)); + var dy2: ${u} = abs(${u}(height2) - height); + var dz1: ${u} = abs(width - ${u}(width1)); + var dz2: ${u} = abs(${u}(width2) - width); + if (depth1 == depth2) { + dx1 = 0.5; + dx2 = 0.5; + } + if (height1 == height2) { + dy1 = 0.5; + dy2 = 0.5; + } + if (width1 == width2) { + dz1 = 0.5; + dz2 = 0.5; + } + return (x111 * dx2 * dy2 * dz2 + x112 * dx2 * dy2 * dz1 + x121 * dx2 * dy1 *dz2 + x122 * dx2 * dy1 * dz1 + + x211 * dx1 * dy2 * dz2 + x212 * dx1 * dy2 * dz1 + x221 * dx1 * dy1 *dz2 + x222 * dx1 * dy1 * dz1); + }`},xu=(e,t,n,r,i,a)=>{let o=e.dims,s=du(a,t.axes,o.length),c=fu(o,r,i,t.axes),l=r.slice();r.length===0&&(l=o.map((e,t)=>e===0?1:c[t]/e),t.keepAspectRatioPolicy!==`stretch`&&(c=pu(o,l,t)));let u=J(`output`,e.dataType,c.length),d=q(`input`,e.dataType,o.length),f=U.size(c),p=o.length===c.length&&o.every((e,t)=>e===c[t]),m=t.coordinateTransformMode===`tf_crop_and_resize`,h=t.extrapolationValue,g=d.type.value,_=e=>` + ${p?``:` + ${lu(t.coordinateTransformMode,g)}; + ${(()=>{switch(t.mode){case`nearest`:return` + ${gu(d,o)}; + ${uu(t.nearestMode,n,g)}; + ${hu(d,u,o,c,l.length,s.length,m)}; + `;case`linear`:return` + ${mu(u,o,c,l.length,s.length)}; + ${(()=>{if(o.length===2||o.length===4)return`${vu(d,u,o,m,h)}`;if(o.length===3||o.length===5)return`${bu(d,u,o,m,h)}`;throw Error(`Linear mode only supports input dims 2, 3, 4 and 5 are supported in linear mode.`)})()}; + `;case`cubic`:return` + ${(()=>{if(o.length===2||o.length===4)return`${yu(d,u,o,c,l,s,t.cubicCoeffA,m,t.extrapolationValue,t.excludeOutside)}`;throw Error(`Cubic mode only supports input dims 2 and 4 are supported in linear mode.`)})()}; + `;default:throw Error(`Invalid resize mode`)}})()}; + `} + ${e.registerUniform(`output_size`,`u32`).registerUniform(`scales`,`f32`,l.length).registerUniform(`roi`,`f32`,s.length).declareVariables(d,u)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + ${p?`output[global_idx] = input[global_idx];`:` + let output_indices = ${u.offsetToIndices(`global_idx`)}; + var input_indices: ${d.type.indices}; + ${(()=>{switch(t.mode){case`nearest`:return`input_indices = calculateInputIndicesFromOutputIndices(output_indices); + if (checkInputIndices(input_indices)) { + output[global_idx] = ${d.getByIndices(`input_indices`)}; + } else { + output[global_idx] = ${t.extrapolationValue}; + }`;case`linear`:return`output[global_idx] = ${o.length===2||o.length===4?`bilinearInterpolation`:`trilinearInterpolation`}(output_indices);`;case`cubic`:return`output[global_idx] = bicubicInterpolation(output_indices);`;default:throw Error(`Unsupported resize mode: ${t.mode}`)}})()}; +`} + }`;return{name:`Resize`,shaderCache:{hint:`${t.cacheKey}|${n}|${l.length>0?t.mode===`cubic`?l:l.length:``}|${i.length>0?i:``}|${s.length>0?s:``}|${p}|${t.mode===`nearest`?o.length:o}`,inputDependencies:[`rank`]},getShaderSource:_,getRunData:()=>({outputs:[{dims:c,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:[{type:12,data:f},{type:1,data:l},{type:1,data:s},...G(o,c)]})}},Su=e=>{let t=e.customDataBuffer;return new Uint32Array(t,t.byteOffset,1)[0]},Cu=(e,t)=>{let n=[],r=[],i=[],a=Su(e);if(t.antialias!==0)throw Error(`Only default value (0) for Antialias attribute is supported`);su(e.inputs,t,a,n,r,i),e.compute(xu(e.inputs[0],t,a,n,r,i),{inputs:[0]})},wu=e=>{let t=e.antialias,n=e.axes,r=e.coordinateTransformMode,i=e.cubicCoeffA,a=e.excludeOutside!==0,o=e.extrapolationValue,s=e.keepAspectRatioPolicy,c=e.mode,l=e.nearestMode===``?`simple`:e.nearestMode;return Yn({antialias:t,axes:n,coordinateTransformMode:r,cubicCoeffA:i,excludeOutside:a,extrapolationValue:o,keepAspectRatioPolicy:s,mode:c,nearestMode:l})}}),Eu,Du,Ou,ku=M(()=>{"use strict";V(),W(),Y(),Eu=e=>{if(!e||e.length<3)throw Error(`layerNorm requires at least 3 inputs.`);let t=e[0],n=e[1],r=e[2];if(t.dataType!==n.dataType||t.dataType!==r.dataType)throw Error(`All inputs must have the same data type`);if(t.dims.length!==3&&t.dims.length!==2)throw Error(`Input must be 2D or 3D`);if(n.dims.length!==3&&n.dims.length!==2)throw Error(`Skip must be 2D or 3D`);let i=t.dims[t.dims.length-1],a=t.dims[t.dims.length-2];if(n.dims[n.dims.length-1]!==i)throw Error(`Skip must have the same hidden size as input`);if(n.dims[n.dims.length-2]!==a)throw Error(`Skip must have the same sequence length as input`);if(r.dims.length!==1)throw Error(`Gamma must be 1D`);if(r.dims[r.dims.length-1]!==i)throw Error(`Gamma must have the same hidden size as input`);if(e.length>3){let t=e[3];if(t.dims.length!==1)throw Error(`Beta must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Beta must have the same hidden size as input`)}if(e.length>4){let t=e[4];if(t.dims.length!==1)throw Error(`Bias must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Bias must have the same hidden size as input`)}},Du=(e,t,n,r)=>{let i=t.simplified,a=e[0].dims,o=U.size(a),s=a,c=o,l=a.slice(-1)[0],u=r?a.slice(0,-1).concat(1):[],d=!i&&e.length>3,f=e.length>4,p=r&&n>1,m=r&&n>2,h=n>3,g=64,_=tr(l),v=[{type:12,data:c},{type:12,data:_},{type:12,data:l},{type:1,data:t.epsilon}],y=t=>{let n=[{name:`output_size`,type:`u32`},{name:`components`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`epsilon`,type:`f32`}],r=[q(`x`,e[0].dataType,e[0].dims,_),q(`skip`,e[1].dataType,e[1].dims,_),q(`gamma`,e[2].dataType,e[2].dims,_)];d&&r.push(q(`beta`,e[3].dataType,e[3].dims,_)),f&&r.push(q(`bias`,e[4].dataType,e[4].dims,_)),r.push(J(`output`,e[0].dataType,s,_)),p&&r.push(J(`mean_output`,1,u)),m&&r.push(J(`inv_std_output`,1,u)),h&&r.push(J(`input_skip_bias_sum`,e[0].dataType,s,_));let a=$n(e[0].dataType),o=$n(1,_);return` + + ${t.registerUniforms(n).declareVariables(...r)} + var sum_shared : array<${o}, ${g}>; + var sum_squared_shared : array<${o}, ${g}>; + + ${t.mainStart([g,1,1])} + let ix = local_id.x; + let iy = global_id.x / ${g}; + + let hidden_size_vectorized: u32 = uniforms.hidden_size / uniforms.components; + var stride = hidden_size_vectorized / ${g}; + let offset = ix * stride + iy * hidden_size_vectorized; + let offset1d = stride * ix; + if (ix == ${g-1}) { + stride = hidden_size_vectorized - stride * ix; + } + for (var i: u32 = 0; i < stride; i++) { + let skip_value = skip[offset + i]; + let bias_value = ${f?`bias[offset1d + i]`:a+`(0.0)`}; + let input_value = x[offset + i]; + let value = input_value + skip_value + bias_value; + ${h?`input_skip_bias_sum[offset + i] = value;`:``} + output[offset + i] = value; + let f32_value = ${rr(a,_,`value`)}; + sum_shared[ix] += f32_value; + sum_squared_shared[ix] += f32_value * f32_value; + } + workgroupBarrier(); + + var reduce_size : u32 = ${g}; + for (var curr_size = reduce_size >> 1; curr_size > 0; curr_size = reduce_size >> 1) { + reduce_size = curr_size + (reduce_size & 1); + if (ix < curr_size) { + sum_shared[ix] += sum_shared[ix + reduce_size]; + sum_squared_shared[ix] += sum_squared_shared[ix + reduce_size]; + } + workgroupBarrier(); + } + + let sum = sum_shared[0]; + let square_sum = sum_squared_shared[0]; + let mean = ${ir(`sum`,_)} / f32(uniforms.hidden_size); + let inv_std_dev = inverseSqrt(${ir(`square_sum`,_)} / f32(uniforms.hidden_size) ${i?``:`- mean * mean`} + uniforms.epsilon); + ${p?`mean_output[global_idx] = mean;`:``} + ${m?`inv_std_output[global_idx] = inv_std_dev;`:``} + + for (var i: u32 = 0; i < stride; i++) { + output[offset + i] = (output[offset + i] ${i?``:`- ${a}(mean)`}) * + ${a}(inv_std_dev) * gamma[offset1d + i] + ${d?`+ beta[offset1d + i]`:``}; + } + }`},b=[{dims:s,dataType:e[0].dataType}];return n>1&&b.push({dims:u,dataType:1}),n>2&&b.push({dims:u,dataType:1}),n>3&&b.push({dims:a,dataType:e[0].dataType}),{name:`SkipLayerNormalization`,shaderCache:{hint:`${_};${p};${m};${h}`,inputDependencies:e.map((e,t)=>`type`)},getShaderSource:y,getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(c/l)},programUniforms:v})}},Ou=(e,t)=>{Eu(e.inputs);let n=[0];e.outputCount>1&&n.push(-3),e.outputCount>2&&n.push(-3),e.outputCount>3&&n.push(3),e.compute(Du(e.inputs,t,e.outputCount,!1),{outputs:n})}}),Au,ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru=M(()=>{"use strict";V(),W(),Xn(),Y(),Au=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);if(t.axes.length!==0){if(t.axes.length!==t.starts.length||t.axes.length!==t.ends.length)throw Error(`axes, starts and ends must have the same length`)}else if(t.starts.length!==t.ends.length)throw Error(`starts and ends must have the same length`);e.slice(1).forEach((t,n)=>{if(e[n+1].dataType!==6&&e[n+1].dataType!==7)throw Error(`Input ${n} must be an array of int32 or int64`)})},ju=(e,t)=>{let n=[];if(e.length>t)if(e[t].dataType===7)e[t].getBigInt64Array().forEach(e=>n.push(Number(e)));else if(e[t].dataType===6)e[t].getInt32Array().forEach(e=>n.push(Number(e)));else throw Error(`Input ${t} must be an array of int32 or int64`);return n},Mu=(e,t)=>{if(e.length>1){let t=ju(e,1),n=ju(e,2),r=ju(e,3);return r.length===0&&(r=[...Array(e[0].dims.length).keys()]),Yn({starts:t,ends:n,axes:r})}else return t},Nu=(e,t,n,r,i)=>{let a=e;return e<0&&(a+=n[r[t]]),i[t]<0?Math.max(0,Math.min(a,n[r[t]]-1)):Math.max(0,Math.min(a,n[r[t]]))},Pu=(e,t,n)=>`fn calculateInputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { + var input_indices: ${e.type.indices}; + var carry = 0u; + for (var i = ${n.length}; i >= 0; i--) { + let input_shape_i = ${K(`uniforms.input_shape`,`i`,n.length)}; + let steps_i = ${K(`uniforms.steps`,`i`,n.length)}; + let signs_i = ${K(`uniforms.signs`,`i`,n.length)}; + let starts_i = ${K(`uniforms.starts`,`i`,n.length)}; + var output_index = ${t.indicesGet(`output_indices`,`i`)}; + var input_index = output_index * steps_i + starts_i + carry; + carry = input_index / input_shape_i; + input_index = input_index % input_shape_i; + if (signs_i < 0) { + input_index = input_shape_i - input_index - 1u + starts_i; + } + ${e.indicesSet(`input_indices`,`i`,`input_index`)}; + } + return input_indices; + }`,Fu=(e,t)=>{let n=e[0].dims,r=U.size(n),i=t.axes.length>0?U.normalizeAxes(t.axes,n.length):[...Array(n.length).keys()],a=ju(e,4);a.forEach(e=>e!==0||(()=>{throw Error(`step cannot be 0`)})),a.length===0&&(a=Array(i.length).fill(1));let o=t.starts.map((e,t)=>Nu(e,t,n,i,a)),s=t.ends.map((e,t)=>Nu(e,t,n,i,a));if(i.length!==o.length||i.length!==s.length)throw Error(`start, ends and axes should have the same number of elements`);if(i.length!==n.length)for(let e=0;eMath.sign(e));a.forEach((e,t,n)=>{if(e<0){let r=(s[t]-o[t])/e,i=o[t],c=i+r*a[t];o[t]=c,s[t]=i,n[t]=-e}});let l=n.slice(0);i.forEach((e,t)=>{l[e]=Math.ceil((s[e]-o[e])/a[e])});let u={dims:l,dataType:e[0].dataType},d=J(`output`,e[0].dataType,l.length),f=q(`input`,e[0].dataType,e[0].dims.length),p=U.size(l),m=[{name:`outputSize`,type:`u32`},{name:`starts`,type:`u32`,length:o.length},{name:`signs`,type:`i32`,length:c.length},{name:`steps`,type:`u32`,length:a.length}],h=[{type:12,data:p},{type:12,data:o},{type:6,data:c},{type:12,data:a},...G(e[0].dims,l)],g=e=>` + ${e.registerUniforms(m).declareVariables(f,d)} + ${Pu(f,d,n)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} + let output_indices = ${d.offsetToIndices(`global_idx`)}; + let input_indices = calculateInputIndices(output_indices); + ${d.setByOffset(`global_idx`,f.getByIndices(`input_indices`))} + }`;return{name:`Slice`,shaderCache:{hint:`${c.length}_${o.length}_${a.length}`,inputDependencies:[`rank`]},getShaderSource:g,getRunData:()=>({outputs:[u],dispatchGroup:{x:Math.ceil(r/64)},programUniforms:h})}},Iu=(e,t)=>{Au(e.inputs,t);let n=Mu(e.inputs,t);e.compute(Fu(e.inputs,n),{inputs:[0]})},Lu=e=>{let t=e.starts,n=e.ends,r=e.axes;return Yn({starts:t,ends:n,axes:r})}}),zu,Bu,Q,Vu,Hu=M(()=>{"use strict";V(),W(),Xn(),vr(),Y(),zu=e=>{if(!e||e.length!==1)throw Error(`Softmax op requires 1 input.`)},Bu=(e,t)=>{let n=e.inputs[0],r=n.dims,i=U.size(r),a=r.length,o=U.normalizeAxis(t.axis,a),s=ot),l[o]=a-1,l[a-1]=o,c=e.compute(hr(n,l),{inputs:[n],outputs:[-1]})[0]):c=n;let u=c.dims,d=u[a-1],f=i/d,p=tr(d),m=d/p,h=64;f===1&&(h=256);let g=(e,t)=>t===4?`max(max(${e}.x, ${e}.y), max(${e}.z, ${e}.w))`:t===2?`max(${e}.x, ${e}.y)`:t===3?`max(max(${e}.x, ${e}.y), ${e}.z)`:e,_=q(`x`,c.dataType,c.dims,p),v=J(`result`,c.dataType,c.dims,p),y=_.type.value,b=$n(c.dataType)===`f32`?`var threadMax = ${y}(-3.402823e+38f);`:`var threadMax = ${y}(-65504.0h);`,x=e=>` + var rowMaxShared : ${y}; + var rowSumShared : ${y}; + var threadShared : array<${y}, ${h}>; + + fn getValue(row: i32, col: i32, row_stride: i32) -> ${y} { + let index = row * row_stride + col; + return x[index]; + } + + fn setValue(row: i32, col: i32, row_stride: i32, value: ${y}) { + let index = row * row_stride + col; + result[index] = value; + } + ${e.registerUniform(`packedCols`,`i32`).declareVariables(_,v)} + ${e.mainStart(h)} + let gindex = i32(global_idx); + let lindex = i32(local_idx); + const wg = ${h}; + let row = gindex / wg; + let cols = uniforms.packedCols; + let row_stride : i32 = uniforms.packedCols; + + // find the rows max + ${b} + for (var col = lindex; col < cols; col += wg) { + let value = getValue(row, col, row_stride); + threadMax = max(threadMax, value); + } + if (lindex < cols) { + threadShared[lindex] = threadMax; + } + workgroupBarrier(); + + var reduceSize = min(cols, wg); + for (var currSize = reduceSize >> 1; currSize > 0; currSize = reduceSize >> 1) { + reduceSize = currSize + (reduceSize & 1); + if (lindex < currSize) { + threadShared[lindex] = max(threadShared[lindex], threadShared[lindex + reduceSize]); + } + workgroupBarrier(); + } + if (lindex == 0) { + rowMaxShared = ${y}(${g(`threadShared[0]`,p)}); + } + workgroupBarrier(); + + // find the rows sum + var threadSum = ${y}(0.0); + for (var col = lindex; col < cols; col += wg) { + let subExp = exp(getValue(row, col, row_stride) - rowMaxShared); + threadSum += subExp; + } + threadShared[lindex] = threadSum; + workgroupBarrier(); + + for (var currSize = wg >> 1; currSize > 0; currSize = currSize >> 1) { + if (lindex < currSize) { + threadShared[lindex] = threadShared[lindex] + threadShared[lindex + currSize]; + } + workgroupBarrier(); + } + if (lindex == 0) { + rowSumShared = ${y}(${ir(`threadShared[0]`,p)}); + } + workgroupBarrier(); + + // calculate final value for each element in the row + for (var col = lindex; col < cols; col += wg) { + let value = exp(getValue(row, col, row_stride) - rowMaxShared) / rowSumShared; + setValue(row, col, row_stride, value); + } + }`,S=e.compute({name:`Softmax`,shaderCache:{hint:`${p};${h}`,inputDependencies:[`type`]},getRunData:()=>({outputs:[{dims:u,dataType:c.dataType}],dispatchGroup:{x:f},programUniforms:[{type:6,data:m}]}),getShaderSource:x},{inputs:[c],outputs:[s?-1:0]})[0];s&&e.compute(hr(S,l),{inputs:[S]})},Q=(e,t)=>{zu(e.inputs),Bu(e,t)},Vu=e=>Yn({axis:e.axis})}),Uu,Wu,Gu,Ku,qu,Ju=M(()=>{"use strict";V(),W(),Y(),Uu=e=>Array.from(e.getBigInt64Array(),Number),Wu=e=>{if(!e||e.length!==2)throw Error(`Tile requires 2 inputs.`);if(e[0].dataType!==1&&e[0].dataType!==10&&e[0].dataType!==6&&e[0].dataType!==12)throw Error(`Tile only support float, float16, int32, and uint32 data types`);if(e[1].dataType!==7)throw Error("Tile `repeats` input should be of int64 data type");if(e[1].dims.length!==1)throw Error("Tile `repeats` input should be 1-D");if(Uu(e[1]).length!==e[0].dims.length)throw Error("Tile `repeats` input should have same number of elements as rank of input data tensor")},Gu=(e,t)=>{let n=[];for(let r=0;r{let n=e[0].dims,r=t??Uu(e[1]),i=Gu(n,r),a=U.size(i),o=e[0].dataType,s=q(`input`,o,n.length),c=J(`output`,o,i.length),l=e=>` + const inputShape = ${s.indices(...n)}; + ${e.registerUniform(`output_size`,`u32`).declareVariables(s,c)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} + let output_indices = ${c.offsetToIndices(`global_idx`)}; + var input_indices: ${s.type.indices}; + for (var i = 0; i < ${n.length}; i++) { + let input_dim_i = ${s.indicesGet(`uniforms.input_shape`,`i`)}; + let input_dim_value = ${c.indicesGet(`output_indices`,`i`)} % input_dim_i; + + ${s.indicesSet(`input_indices`,`i`,`input_dim_value`)} + } + ${c.setByOffset(`global_idx`,s.getByIndices(`input_indices`))} + }`;return{name:`Tile`,shaderCache:{hint:`${r}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:[{type:12,data:a},...G(e[0].dims,i)]}),getShaderSource:l}},qu=e=>{Wu(e.inputs),e.compute(Ku(e.inputs),{inputs:[0]})}}),Yu,Xu,Zu,Qu=M(()=>{"use strict";V(),W(),Y(),Yu=(e,t,n,r,i)=>{let a=J(`output_data`,i,n.length,4),o=q(`a_data`,t[1].dataType,t[1].dims.length,4),s=q(`b_data`,t[2].dataType,t[2].dims.length,4),c=q(`c_data`,t[0].dataType,t[0].dims.length,4),l,u=(e,t,n)=>`select(${t}, ${e}, ${n})`;if(!r)l=a.setByOffset(`global_idx`,u(o.getByOffset(`global_idx`),s.getByOffset(`global_idx`),c.getByOffset(`global_idx`)));else{let e=(e,t,n=``)=>{let r=`a_data[index_a${t}][component_a${t}]`,i=`b_data[index_b${t}][component_b${t}]`,l=`bool(c_data[index_c${t}] & (0xffu << (component_c${t} * 8)))`;return` + let output_indices${t} = ${a.offsetToIndices(`global_idx * 4u + ${t}u`)}; + let offset_a${t} = ${o.broadcastedIndicesToOffset(`output_indices${t}`,a)}; + let offset_b${t} = ${s.broadcastedIndicesToOffset(`output_indices${t}`,a)}; + let offset_c${t} = ${c.broadcastedIndicesToOffset(`output_indices${t}`,a)}; + let index_a${t} = offset_a${t} / 4u; + let index_b${t} = offset_b${t} / 4u; + let index_c${t} = offset_c${t} / 4u; + let component_a${t} = offset_a${t} % 4u; + let component_b${t} = offset_b${t} % 4u; + let component_c${t} = offset_c${t} % 4u; + ${e}[${t}] = ${n}(${u(r,i,l)}); + `};l=i===9?` + var data = vec4(0); + ${e(`data`,0,`u32`)} + ${e(`data`,1,`u32`)} + ${e(`data`,2,`u32`)} + ${e(`data`,3,`u32`)} + output_data[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` + ${e(`output_data[global_idx]`,0)} + ${e(`output_data[global_idx]`,1)} + ${e(`output_data[global_idx]`,2)} + ${e(`output_data[global_idx]`,3)} + `}return` + ${e.registerUniform(`vec_size`,`u32`).declareVariables(c,o,s,a)} + ${e.mainStart()} + ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} + ${l} + }`},Xu=e=>{let t=e[1].dims,n=e[2].dims,r=e[0].dims,i=e[1].dataType,a=!(U.areEqual(t,n)&&U.areEqual(n,r)),o=t,s=U.size(t);if(a){let e=hn.calcShape(hn.calcShape(t,n,!1),r,!1);if(!e)throw Error(`Can't perform where op on the given tensors`);o=e,s=U.size(o)}let c=Math.ceil(s/4);return{name:`Where`,shaderCache:{inputDependencies:[`rank`,`rank`,`rank`]},getShaderSource:t=>Yu(t,e,o,a,i),getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64/4)},programUniforms:[{type:12,data:c},...G(r,t,n,o)]})}},Zu=e=>{e.compute(Xu(e.inputs))}}),$u,ed=M(()=>{"use strict";vi(),Di(),Mi(),Ii(),Ma(),Ka(),$a(),qo(),ss(),ds(),_s(),ks(),Fs(),Rs(),Us(),qs(),Qs(),rc(),cc(),Cc(),Yc(),el(),il(),sl(),pl(),jc(),Cl(),Hl(),ql(),Zl(),iu(),pi(),Tu(),Uc(),ku(),Ru(),Hu(),zc(),Ju(),vr(),Oa(),Qu(),$u=new Map([[`Abs`,[zi]],[`Acos`,[Bi]],[`Acosh`,[Vi]],[`Add`,[Ia]],[`ArgMax`,[gi,_i]],[`ArgMin`,[hi,_i]],[`Asin`,[Hi]],[`Asinh`,[Ui]],[`Atan`,[Wi]],[`Atanh`,[Gi]],[`Attention`,[Ei]],[`AveragePool`,[Nl,Ml]],[`BatchNormalization`,[ji]],[`BiasAdd`,[Fi]],[`BiasSplitGelu`,[ja]],[`Cast`,[qi,Ki]],[`Ceil`,[Xi]],[`Clip`,[Yi]],[`Concat`,[Za,Qa]],[`Conv`,[Ko,Ho]],[`ConvTranspose`,[os,es]],[`Cos`,[Zi]],[`Cosh`,[Qi]],[`CumSum`,[ls,us]],[`DepthToSpace`,[hs,gs]],[`DequantizeLinear`,[Gl,Kl]],[`Div`,[La]],[`Einsum`,[Ds,Os]],[`Elu`,[ea,$i]],[`Equal`,[Ra]],[`Erf`,[na]],[`Exp`,[ra]],[`Expand`,[Ps]],[`FastGelu`,[Ls]],[`Floor`,[ia]],[`FusedConv`,[Ko,Ho]],[`Gather`,[Hs,Vs]],[`GatherElements`,[nc,tc]],[`GatherBlockQuantized`,[Xs,Zs]],[`GatherND`,[Gs,Ks]],[`Gelu`,[aa]],[`Gemm`,[sc,oc]],[`GlobalAveragePool`,[Il,Fl]],[`GlobalMaxPool`,[Vl,Bl]],[`Greater`,[Ha]],[`GreaterOrEqual`,[Wa]],[`GridSample`,[xc,Sc]],[`GroupQueryAttention`,[Jc]],[`HardSigmoid`,[pa,fa]],[`InstanceNormalization`,[$c]],[`LayerNormalization`,[rl]],[`LeakyRelu`,[oa,$i]],[`Less`,[Ua]],[`LessOrEqual`,[Ga]],[`Log`,[wa]],[`MatMul`,[ol]],[`MatMulNBits`,[dl,fl]],[`MaxPool`,[Rl,zl]],[`Mul`,[za]],[`MultiHeadAttention`,[Ac,Ec]],[`Neg`,[ca]],[`Not`,[sa]],[`Pad`,[Sl]],[`Pow`,[Ba]],[`QuickGelu`,[Da,$i]],[`Range`,[Xl]],[`Reciprocal`,[la]],[`ReduceMin`,[ci]],[`ReduceMean`,[ri]],[`ReduceMax`,[si]],[`ReduceSum`,[ui]],[`ReduceProd`,[li]],[`ReduceL1`,[ii]],[`ReduceL2`,[ai]],[`ReduceLogSum`,[fi]],[`ReduceLogSumExp`,[oi]],[`ReduceSumSquare`,[di]],[`Relu`,[ua]],[`Resize`,[Cu,wu]],[`RotaryEmbedding`,[Hc]],[`ScatterND`,[ru,nu]],[`Sigmoid`,[da]],[`Sin`,[ma]],[`Sinh`,[ha]],[`Slice`,[Iu,Lu]],[`SkipLayerNormalization`,[Ou]],[`Split`,[Lc,Rc]],[`Sqrt`,[ga]],[`Softmax`,[Q,Vu]],[`Sub`,[Va]],[`Tan`,[_a]],[`Tanh`,[ya]],[`ThresholdedRelu`,[Ca,$i]],[`Tile`,[qu]],[`Transpose`,[gr,_r]],[`Where`,[Zu]]])}),td,nd=M(()=>{"use strict";$e(),pn(),Y(),td=class{constructor(e){this.backend=e,this.repo=new Map,this.attributesBound=!1}getArtifact(e){return this.repo.get(e)}setArtifact(e,t){this.repo.set(e,t)}run(e,t,n,r,i){He(e.programInfo.name);let a=this.backend.device,o=this.backend.getComputePassEncoder();this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2);let s=[];for(let e of t)s.push({binding:s.length,resource:{buffer:e.buffer}});for(let e of n)s.push({binding:s.length,resource:{buffer:e.buffer}});i&&s.push({binding:s.length,resource:i});let c=a.createBindGroup({layout:e.computePipeline.getBindGroupLayout(0),entries:s,label:e.programInfo.name});if(this.backend.sessionStatus===`capturing`){let t={kernelId:this.backend.currentKernelId,computePipeline:e.computePipeline,bindGroup:c,dispatchGroup:r};this.backend.capturedCommandList.get(this.backend.currentSessionId).push(t)}o.setPipeline(e.computePipeline),o.setBindGroup(0,c),o.dispatchWorkgroups(...r),this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2+1),this.backend.pendingDispatchNumber++,(this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber||this.backend.queryType===`at-passes`)&&this.backend.endComputePass(),this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber&&this.backend.flush(),B(e.programInfo.name)}dispose(){}build(e,t){He(e.name);let n=this.backend.device,r=[];[{feature:`shader-f16`,extension:`f16`},{feature:`subgroups`,extension:`subgroups`}].forEach(e=>{n.features.has(e.feature)&&r.push(`enable ${e.extension};`)});let i=lr(t,this.backend.device.limits),a=e.getShaderSource(i),o=`${r.join(` +`)} +${i.additionalImplementations} +${a}`,s=n.createShaderModule({code:o,label:e.name});H(`verbose`,()=>`[WebGPU] ${e.name} shader code: ${o}`);let c=n.createComputePipeline({compute:{module:s,entryPoint:`main`},layout:`auto`,label:e.name});return B(e.name),{programInfo:e,computePipeline:c,uniformVariablesInfo:i.variablesInfo}}normalizeDispatchGroupSize(e){let t=typeof e==`number`?e:e.x,n=typeof e==`number`?1:e.y||1,r=typeof e==`number`?1:e.z||1,i=this.backend.device.limits.maxComputeWorkgroupsPerDimension;if(t<=i&&n<=i&&r<=i)return[t,n,r];let a=t*n*r,o=Math.ceil(Math.sqrt(a));if(o>i){if(o=Math.ceil(Math.cbrt(a)),o>i)throw Error(`Total dispatch size exceeds WebGPU maximum.`);return[o,o,o]}else return[o,o,1]}}}),rd={};N(rd,{WebGpuBackend:()=>sd});var id,ad,od,sd,cd=M(()=>{"use strict";$e(),V(),pn(),xn(),qn(),ed(),nd(),id=(e,t)=>{if(t.length!==e.length)throw Error(`inputDependencies length ${t.length} is not equal to inputTensors length ${e.length}.`);let n=[];for(let r=0;r{let r=e.name;return e.shaderCache?.hint&&(r+=`[`+e.shaderCache.hint+`]`),r+=`:`+n+`:${id(t,e.shaderCache?.inputDependencies??Array(t.length).fill(`dims`))}`,r},od=class{constructor(e){e&&(this.architecture=e.architecture,this.vendor=e.vendor)}isArchitecture(e){return this.architecture===e}isVendor(e){return this.vendor===e}},sd=class{constructor(){this.currentSessionId=null,this.currentKernelId=null,this.commandEncoder=null,this.computePassEncoder=null,this.maxDispatchNumber=16,this.pendingDispatchNumber=0,this.pendingKernels=[],this.pendingQueries=new Map,this.sessionStatus=`default`,this.capturedCommandList=new Map,this.capturedPendingKernels=new Map,this.sessionExternalDataMapping=new Map}get currentKernelCustomData(){if(this.currentKernelId===null)throw Error(`currentKernelCustomData(): currentKernelId is null. (should not happen)`);let e=this.kernelCustomData.get(this.currentKernelId);return e||(e={},this.kernelCustomData.set(this.currentKernelId,e)),e}async initialize(e,t){this.env=e;let n=[],r={requiredLimits:{maxComputeWorkgroupStorageSize:t.limits.maxComputeWorkgroupStorageSize,maxComputeWorkgroupsPerDimension:t.limits.maxComputeWorkgroupsPerDimension,maxStorageBufferBindingSize:t.limits.maxStorageBufferBindingSize,maxBufferSize:t.limits.maxBufferSize,maxComputeInvocationsPerWorkgroup:t.limits.maxComputeInvocationsPerWorkgroup,maxComputeWorkgroupSizeX:t.limits.maxComputeWorkgroupSizeX,maxComputeWorkgroupSizeY:t.limits.maxComputeWorkgroupSizeY,maxComputeWorkgroupSizeZ:t.limits.maxComputeWorkgroupSizeZ},requiredFeatures:n},i=e=>t.features.has(e)&&n.push(e)&&!0;i(`chromium-experimental-timestamp-query-inside-passes`)||i(`timestamp-query`),i(`shader-f16`),i(`subgroups`),this.device=await t.requestDevice(r),this.adapterInfo=new od(t.info||await t.requestAdapterInfo()),this.gpuDataManager=Kn(this),this.programManager=new td(this),this.kernels=new Map,this.kernelPersistentData=new Map,this.kernelCustomData=new Map,dn(e.logLevel,!!e.debug),this.device.onuncapturederror=e=>{e.error instanceof GPUValidationError&&console.error(`An uncaught WebGPU validation error was raised: ${e.error.message}`)},Object.defineProperty(this.env.webgpu,`device`,{value:this.device,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(this.env.webgpu,`adapter`,{value:t,writable:!1,enumerable:!0,configurable:!1}),this.setQueryType()}dispose(){typeof this.querySet<`u`&&this.querySet.destroy(),this.gpuDataManager.dispose()}getCommandEncoder(){return this.commandEncoder||=this.device.createCommandEncoder(),this.commandEncoder}getComputePassEncoder(){if(!this.computePassEncoder){let e=this.getCommandEncoder(),t={};this.queryType===`at-passes`&&(t.timestampWrites={querySet:this.querySet,beginningOfPassWriteIndex:this.pendingDispatchNumber*2,endOfPassWriteIndex:this.pendingDispatchNumber*2+1}),this.computePassEncoder=e.beginComputePass(t)}return this.computePassEncoder}endComputePass(){this.computePassEncoder&&(this.computePassEncoder.end(),this.computePassEncoder=null)}flush(){if(!this.commandEncoder)return;He(),this.endComputePass();let e;this.queryType!==`none`&&(this.commandEncoder.resolveQuerySet(this.querySet,0,this.pendingDispatchNumber*2,this.queryResolveBuffer,0),e=this.device.createBuffer({size:this.pendingDispatchNumber*2*8,usage:GPUBufferUsage.MAP_READ|GPUBufferUsage.COPY_DST}),this.pendingQueries.set(e,this.pendingKernels),this.pendingKernels=[],this.commandEncoder.copyBufferToBuffer(this.queryResolveBuffer,0,e,0,this.pendingDispatchNumber*2*8)),this.device.queue.submit([this.commandEncoder.finish()]),this.gpuDataManager.refreshPendingBuffers(),this.commandEncoder=null,this.pendingDispatchNumber=0,this.queryType!==`none`&&e.mapAsync(GPUMapMode.READ).then(()=>{let t=new BigUint64Array(e.getMappedRange()),n=this.pendingQueries.get(e);for(let e=0;e`u`&&(this.queryTimeBase=d);let p=Number(d-this.queryTimeBase),m=Number(f-this.queryTimeBase);if(!Number.isSafeInteger(p)||!Number.isSafeInteger(m))throw RangeError(`incorrect timestamp range`);if(this.env.webgpu.profiling?.ondata)this.env.webgpu.profiling.ondata({version:1,inputsMetadata:l.map(e=>({dims:e.dims,dataType:Zt(e.dataType)})),outputsMetadata:u.map(e=>({dims:e.dims,dataType:Zt(e.dataType)})),kernelId:i,kernelType:o,kernelName:s,programName:c,startTime:p,endTime:m});else{let e=``;l.forEach((t,n)=>{e+=`input[${n}]: [${t.dims}] | ${Zt(t.dataType)}, `});let t=``;u.forEach((e,n)=>{t+=`output[${n}]: [${e.dims}] | ${Zt(e.dataType)}, `}),console.log(`[profiling] kernel "${i}|${o}|${s}|${c}" ${e}${t}execution time: ${m-p} ns`)}z(`GPU`,`${c}::${d}::${f}`)}e.unmap(),this.pendingQueries.delete(e)}),B()}run(e,t,n,r,i,a){He(e.name);let o=[];for(let e=0;et):n;if(u.length!==s.length)throw Error(`Output size ${u.length} must be equal to ${s.length}.`);let d=[],f=[];for(let e=0;e=a)throw Error(`Invalid output index: ${u[e]}`);if(u[e]===-3)continue;let t=u[e]===-1,n=u[e]===-2,o=t||n?i(s[e].dataType,s[e].dims):r(u[e],s[e].dataType,s[e].dims);if(d.push(o),o.data===0)continue;let c=this.gpuDataManager.get(o.data);if(!c)throw Error(`no GPU data for output: ${o.data}`);if(t&&this.temporaryData.push(c),n){let e=this.kernelPersistentData.get(this.currentKernelId);e||(e=[],this.kernelPersistentData.set(this.currentKernelId,e)),e.push(c)}f.push(c)}if(o.length!==t.length||f.length!==d.length){if(f.length===0)return B(e.name),d;throw Error(`Program ${e.name} has zero-sized tensor(s) in inputs or outputs. This is not supported now.`)}let p;if(l){let e=0,t=[];l.forEach(n=>{let r=typeof n.data==`number`?[n.data]:n.data;if(r.length===0)return;let i=n.type===10?2:4,a,o;n.type===10?(o=r.length>4?16:r.length>2?8:r.length*i,a=r.length>4?16:i*r.length):(o=r.length<=2?r.length*i:16,a=16),e=Math.ceil(e/o)*o,t.push(e);let s=n.type===10?8:4;e+=r.length>4?Math.ceil(r.length/s)*a:r.length*i});let n=16;e=Math.ceil(e/n)*n;let r=new ArrayBuffer(e);l.forEach((e,n)=>{let i=t[n],a=typeof e.data==`number`?[e.data]:e.data;if(e.type===6)new Int32Array(r,i,a.length).set(a);else if(e.type===12)new Uint32Array(r,i,a.length).set(a);else if(e.type===10)new Uint16Array(r,i,a.length).set(a);else if(e.type===1)new Float32Array(r,i,a.length).set(a);else throw Error(`Unsupported uniform type: ${Zt(e.type)}`)});let i=this.gpuDataManager.create(e,GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM);this.device.queue.writeBuffer(i.buffer,0,r,0,e),this.gpuDataManager.release(i.id),p={offset:0,size:e,buffer:i.buffer}}let m=this.programManager.normalizeDispatchGroupSize(c),h=m[1]===1&&m[2]===1,g=ad(e,t,h),_=this.programManager.getArtifact(g);if(_||(_=this.programManager.build(e,m),this.programManager.setArtifact(g,_),H(`info`,()=>`[artifact] key: ${g}, programName: ${e.name}`)),l&&_.uniformVariablesInfo){if(l.length!==_.uniformVariablesInfo.length)throw Error(`Uniform variables count mismatch: expect ${_.uniformVariablesInfo.length}, got ${l.length} in program "${_.programInfo.name}".`);for(let e=0;e`[ProgramManager] run "${e.name}" (key=${g}) with ${m[0]}x${m[1]}x${m[2]}`),this.queryType!==`none`||this.sessionStatus===`capturing`){let e={kernelId:this.currentKernelId,programName:_.programInfo.name,inputTensorViews:t,outputTensorViews:d};this.pendingKernels.push(e),this.sessionStatus===`capturing`&&this.capturedPendingKernels.get(this.currentSessionId).push(e)}return this.programManager.run(_,o,f,m,p),B(e.name),d}upload(e,t){this.gpuDataManager.upload(e,t)}memcpy(e,t){this.gpuDataManager.memcpy(e,t)}async download(e,t){await this.gpuDataManager.download(e,t)}alloc(e){return this.gpuDataManager.create(e).id}free(e){return this.gpuDataManager.release(e)}createKernel(e,t,n,r){let i=$u.get(e);if(!i)throw Error(`kernel not implemented: ${e}`);let a={kernelType:e,kernelName:r,kernelEntry:i[0],attributes:[i[1],n]};this.kernels.set(t,a)}releaseKernel(e){let t=this.kernelPersistentData.get(e);if(t){for(let e of t)this.gpuDataManager.release(e.id);this.kernelPersistentData.delete(e)}this.kernelCustomData.delete(e),this.kernels.delete(e)}computeKernel(e,t,n){let r=this.kernels.get(e);if(!r)throw Error(`kernel not created: ${e}`);let i=r.kernelType,a=r.kernelName,o=r.kernelEntry,s=r.attributes;if(this.currentKernelId!==null)throw Error(`kernel "[${i}] ${a}" is not allowed to be called recursively`);this.currentKernelId=e,s[0]&&(s[1]=s[0](s[1]),s[0]=void 0),H(`info`,()=>`[WebGPU] Start to run kernel "[${i}] ${a}"...`);let c=this.env.debug;this.temporaryData=[];try{return c&&this.device.pushErrorScope(`validation`),o(t,s[1]),0}catch(e){return n.push(Promise.resolve(`[WebGPU] Kernel "[${i}] ${a}" failed. ${e}`)),1}finally{c&&n.push(this.device.popErrorScope().then(e=>e?`GPU validation error for kernel "[${i}] ${a}": ${e.message}`:null));for(let e of this.temporaryData)this.gpuDataManager.release(e.id);this.temporaryData=[],this.currentKernelId=null}}registerBuffer(e,t,n,r){let i=this.sessionExternalDataMapping.get(e);i||(i=new Map,this.sessionExternalDataMapping.set(e,i));let a=i.get(t),o=this.gpuDataManager.registerExternalBuffer(n,r,a);return i.set(t,[o,n]),o}unregisterBuffers(e){let t=this.sessionExternalDataMapping.get(e);t&&(t.forEach(e=>this.gpuDataManager.unregisterExternalBuffer(e[0])),this.sessionExternalDataMapping.delete(e))}getBuffer(e){let t=this.gpuDataManager.get(e);if(!t)throw Error(`no GPU data for buffer: ${e}`);return t.buffer}createDownloader(e,t,n){return async()=>{let r=await Wn(this,e,t);return bn(r.buffer,n)}}writeTimestamp(e){this.queryType===`inside-passes`&&this.computePassEncoder.writeTimestamp(this.querySet,e)}setQueryType(){this.queryType=`none`,(this.env.webgpu.profiling?.mode===`default`||(typeof this.env.trace>`u`?this.env.wasm.trace:this.env.trace))&&(this.device.features.has(`chromium-experimental-timestamp-query-inside-passes`)?this.queryType=`inside-passes`:this.device.features.has(`timestamp-query`)&&(this.queryType=`at-passes`),this.queryType!==`none`&&typeof this.querySet>`u`&&(this.querySet=this.device.createQuerySet({type:`timestamp`,count:this.maxDispatchNumber*2}),this.queryResolveBuffer=this.device.createBuffer({size:this.maxDispatchNumber*2*8,usage:GPUBufferUsage.COPY_SRC|GPUBufferUsage.QUERY_RESOLVE})))}captureBegin(){H(`info`,`captureBegin`),this.capturedCommandList.get(this.currentSessionId)||this.capturedCommandList.set(this.currentSessionId,[]),this.capturedPendingKernels.get(this.currentSessionId)||this.capturedPendingKernels.set(this.currentSessionId,[]),this.flush(),this.sessionStatus=`capturing`}captureEnd(){H(`info`,`captureEnd`),this.flush(),this.sessionStatus=`default`}replay(){H(`info`,`replay`),this.sessionStatus=`replaying`;let e=this.capturedCommandList.get(this.currentSessionId),t=this.capturedPendingKernels.get(this.currentSessionId),n=e.length;this.pendingKernels=[];for(let r=0;r=this.maxDispatchNumber||this.queryType===`at-passes`)&&this.endComputePass(),this.pendingDispatchNumber>=this.maxDispatchNumber&&this.flush()}this.flush(),this.sessionStatus=`default`}onCreateSession(){this.gpuDataManager.onCreateSession()}onReleaseSession(e){this.unregisterBuffers(e),this.capturedCommandList.has(e)&&this.capturedCommandList.delete(e),this.capturedPendingKernels.has(e)&&this.capturedPendingKernels.delete(e),this.gpuDataManager.onReleaseSession(e)}onRunStart(e){this.currentSessionId=e,this.setQueryType()}}}),ld={};N(ld,{init:()=>fd});var ud,dd,fd,pd=M(()=>{"use strict";V(),pn(),W(),In(),ud=class e{constructor(e,t,n,r){this.module=e,this.dataType=t,this.data=n,this.dims=r}getFloat32Array(){if(this.dataType!==1)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Float32Array:new Float32Array(this.module.HEAP8.buffer,this.data,e)}getBigInt64Array(){if(this.dataType!==7)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new BigInt64Array:new BigInt64Array(this.module.HEAP8.buffer,this.data,e)}getInt32Array(){if(this.dataType!==6)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Int32Array:new Int32Array(this.module.HEAP8.buffer,this.data,e)}getUint16Array(){if(this.dataType!==10&&this.dataType!==4)throw Error(`Invalid data type`);let e=U.size(this.dims);return e===0?new Uint16Array:new Uint16Array(this.module.HEAP8.buffer,this.data,e)}reshape(t){if(U.size(t)!==U.size(this.dims))throw Error(`Invalid new shape`);return new e(this.module,this.dataType,this.data,t)}},dd=class{constructor(e,t,n){this.module=e,this.backend=t,this.customDataOffset=0,this.customDataSize=0,this.adapterInfo=t.adapterInfo;let r=e.PTR_SIZE,i=n/e.PTR_SIZE,a=r===4?`i32`:`i64`;this.opKernelContext=Number(e.getValue(r*i++,a));let o=Number(e.getValue(r*i++,a));this.outputCount=Number(e.getValue(r*i++,a)),this.customDataOffset=Number(e.getValue(r*i++,`*`)),this.customDataSize=Number(e.getValue(r*i++,a));let s=[];for(let t=0;ttypeof e==`number`?this.inputs[e]:e)??this.inputs,r=t?.outputs??[],i=(e,t,n)=>new ud(this.module,t,this.output(e,n),n),a=(e,t)=>{let n=Qt(e,t);if(!n)throw Error(`Unsupported data type: ${e}`);let r=n>0?this.backend.gpuDataManager.create(n).id:0;return new ud(this.module,e,r,t)};return this.backend.run(e,n,r,i,a,this.outputCount)}output(e,t){let n=this.module.stackSave();try{let n=this.module.PTR_SIZE,r=n===4?`i32`:`i64`,i=this.module.stackAlloc((1+t.length)*n);this.module.setValue(i,t.length,r);for(let e=0;e{let i=t.jsepInit;if(!i)throw Error(`Failed to initialize JSEP. The WebAssembly module is not built with JSEP support.`);if(e===`webgpu`){let e=(cd(),le(rd)).WebGpuBackend,a=new e;await a.initialize(n,r),i(`webgpu`,[a,e=>a.alloc(Number(e)),e=>a.free(e),(e,n,r,i=!1)=>{if(i)H(`verbose`,()=>`[WebGPU] jsepCopyGpuToGpu: src=${Number(e)}, dst=${Number(n)}, size=${Number(r)}`),a.memcpy(Number(e),Number(n));else{H(`verbose`,()=>`[WebGPU] jsepCopyCpuToGpu: dataOffset=${Number(e)}, gpuDataId=${Number(n)}, size=${Number(r)}`);let i=t.HEAPU8.subarray(Number(e>>>0),Number(e>>>0)+Number(r));a.upload(Number(n),i)}},async(e,n,r)=>{H(`verbose`,()=>`[WebGPU] jsepCopyGpuToCpu: gpuDataId=${e}, dataOffset=${n}, size=${r}`),await a.download(Number(e),()=>t.HEAPU8.subarray(Number(n)>>>0,Number(n+r)>>>0))},(e,n,r)=>a.createKernel(e,Number(n),r,t.UTF8ToString(t._JsepGetNodeName(Number(n)))),e=>a.releaseKernel(e),(e,n,r,i)=>{H(`verbose`,()=>`[WebGPU] jsepRun: sessionHandle=${r}, kernel=${e}, contextDataOffset=${n}`);let o=new dd(t,a,Number(n));return a.computeKernel(Number(e),o,i)},()=>a.captureBegin(),()=>a.captureEnd(),()=>a.replay()])}else{let e=new Fn(n);i(`webnn`,[e,()=>e.reserveTensorId(),t=>e.releaseTensorId(t),async(t,n,r,i,a)=>e.ensureTensor(t,n,r,i,a),(t,n)=>{e.uploadTensor(t,n)},async(t,n)=>e.downloadTensor(t,n)])}}}),md,hd,gd,_d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed,Dd=M(()=>{"use strict";Ht(),Yt(),V(),It(),Bt(),on(),md=(e,t)=>{Ft()._OrtInit(e,t)!==0&&zt(`Can't initialize onnxruntime.`)},hd=async e=>{md(e.wasm.numThreads,en(e.logLevel))},gd=async(e,t)=>{Ft().asyncInit?.();{let n=(pd(),le(ld)).init;if(t===`webgpu`){if(typeof navigator>`u`||!navigator.gpu)throw Error(`WebGPU is not supported in current environment`);let t=e.webgpu.adapter;if(t){if(typeof t.limits!=`object`||typeof t.features!=`object`||typeof t.requestDevice!=`function`)throw Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let n=e.webgpu.powerPreference;if(n!==void 0&&n!==`low-power`&&n!==`high-performance`)throw Error(`Invalid powerPreference setting: "${n}"`);let r=e.webgpu.forceFallbackAdapter;if(r!==void 0&&typeof r!=`boolean`)throw Error(`Invalid forceFallbackAdapter setting: "${r}"`);if(t=await navigator.gpu.requestAdapter({powerPreference:n,forceFallbackAdapter:r}),!t)throw Error(`Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.`)}await n(`webgpu`,Ft(),e,t)}if(t===`webnn`){if(typeof navigator>`u`||!navigator.ml)throw Error(`WebNN is not supported in current environment`);await n(`webnn`,Ft(),e)}}},_d=new Map,vd=e=>{let t=Ft(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetInputOutputCount(e,r,r+n)!==0&&zt(`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)}},yd=(e,t)=>{let n=Ft(),r=n.stackSave(),i=0;try{let r=n.PTR_SIZE,a=n.stackAlloc(2*r);n._OrtGetInputOutputMetadata(e,t,a,a+r)!==0&&zt(`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{let t=Ft(),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]},xd=async(e,t)=>{let n,r,i=Ft();Array.isArray(e)?[n,r]=e:e.buffer===i.HEAPU8.buffer?[n,r]=[e.byteOffset,e.byteLength]:[n,r]=bd(e);let a=0,o=0,s=0,c=[],l=[],u=[];try{if([o,c]=await Jt(t),t?.externalData&&i.mountExternalData){let e=[];for(let n of t.externalData){let t=typeof n==`string`?n:n.path;e.push(an(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;n?i.currentContext=n:r?i.currentContext=await i.webnnCreateMLContext(r):i.currentContext=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&&zt(`Can't create a session.`),i.jsepOnCreateSession?.(),i.currentContext&&(i.webnnRegisterMLContext(a,i.currentContext),i.currentContext=void 0,i.shouldTransferToMLTensor=!0);let[e,d]=vd(a),f=!!t?.enableGraphCapture,p=[],m=[],h=[],g=[],_=[];for(let t=0;te===`gpu-buffer`||e===`ml-tensor`)&&(s=i._OrtCreateBinding(a),s===0&&zt(`Can't create IO binding.`),v={handle:s,outputPreferredLocations:_,outputPreferredLocationsEncoded:_.map(e=>rn(e))}),_d.set(a,[a,l,u,v,f,!1]),[a,p,m,h,g]}catch(e){throw l.forEach(e=>i._OrtFree(e)),u.forEach(e=>i._OrtFree(e)),s!==0&&i._OrtReleaseBinding(s)!==0&&zt(`Can't release IO binding.`),a!==0&&i._OrtReleaseSession(a)!==0&&zt(`Can't release session.`),e}finally{i._free(n),o!==0&&i._OrtReleaseSessionOptions(o)!==0&&zt(`Can't release session options.`),c.forEach(e=>i._free(e)),i.unmountExternalData?.()}},Sd=e=>{let t=Ft(),n=_d.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&&zt(`Can't clear bound outputs.`),t._OrtReleaseBinding(o.handle)!==0&&zt(`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&&zt(`Can't release session.`),_d.delete(e)},Cd=async(e,t,n,r,i,a,o=!1)=>{if(!e){t.push(0);return}let s=Ft(),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=Qt(Xt(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=Qt(Xt(l),u);let n=s.webnnRegisterMLTensor;if(!n)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);p=n(r,t,Xt(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;es.setValue(g+t*c,e,c===4?`i32`:`i64`));let e=s._OrtCreateTensor(Xt(l),p,m,g,u.length,rn(f));e===0&&zt(`Can't create tensor for input/output. session=${r}, index=${a}.`),t.push(e)}finally{s.stackRestore(h)}},wd=async(e,t,n,r,i,a)=>{let o=Ft(),s=o.PTR_SIZE,c=_d.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],m=c[5],h=t.length,g=r.length,_=0,v=[],y=[],b=[],x=[],S=o.stackSave(),C=o.stackAlloc(h*s),w=o.stackAlloc(h*s),T=o.stackAlloc(g*s),E=o.stackAlloc(g*s);try{[_,v]=Vt(a);for(let r=0;re*t,1);d=Zt(a);let _=f?.outputPreferredLocations[r[t]];if(d===`string`){if(_===`gpu-buffer`||_===`ml-tensor`)throw Error(`String tensor is not supported on GPU.`);let e=[];for(let t=0;t0){let e=o.jsepGetBuffer;if(!e)throw Error(`preferredLocation "gpu-buffer" is not supported without using WebGPU.`);let t=e(p),r=Qt(a,g);if(r===void 0||!tn(d))throw Error(`Unsupported data type: ${d}`);u=!0,S.push([d,h,{gpuBuffer:t,download:o.jsepCreateDownloader(t,r,d),dispose:()=>{o._OrtReleaseTensor(n)!==0&&zt(`Can't release tensor.`)}},`gpu-buffer`])}else if(_===`ml-tensor`&&g>0){let t=o.webnnEnsureTensor,r=o.webnnIsInt64Supported;if(!t||!r)throw Error(`preferredLocation "ml-tensor" is not supported without using WebNN.`);if(Qt(a,g)===void 0||!nn(d))throw Error(`Unsupported data type: ${d}`);if(d===`int64`&&!r(e))throw Error(`preferredLocation "ml-tensor" for int64 output is not supported by current WebNN Context.`);let i=await t(e,p,a,h,!1);u=!0,S.push([d,h,{mlTensor:i,download:o.webnnCreateMLTensorDownloader(p,d),dispose:()=>{o.webnnReleaseTensorId(p),o._OrtReleaseTensor(n)}},`ml-tensor`])}else{let e=$t(d),t=new e(g);new Uint8Array(t.buffer,t.byteOffset,t.byteLength).set(o.HEAPU8.subarray(p,p+t.byteLength)),S.push([d,h,t,`cpu`])}}finally{o.stackRestore(a),d===`string`&&p&&o._free(p),u||o._OrtReleaseTensor(n),o.webnnOnRunEnd?.(l)}}return f&&!p&&(o._OrtClearBoundOutputs(f.handle)!==0&&zt(`Can't clear bound outputs.`),_d.set(e,[l,u,d,f,p,!1])),S}finally{o.stackRestore(S),y.forEach(e=>o._OrtReleaseTensor(e)),b.forEach(e=>o._OrtReleaseTensor(e)),x.forEach(e=>o._free(e)),_!==0&&o._OrtReleaseRunOptions(_),v.forEach(e=>o._free(e))}},Td=e=>{let t=Ft(),n=_d.get(e);if(!n)throw Error(`invalid session id`);let r=n[0],i=t._OrtEndProfiling(r);i===0&&zt(`Can't get an profile file name.`),t._OrtFree(i)},Ed=e=>{let t=[];for(let n of e){let e=n[2];!Array.isArray(e)&&`buffer`in e&&t.push(e.buffer)}return t}}),Od,kd,Ad,jd,Md,Nd,Pd,Fd,Id,Ld,Rd,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd=M(()=>{"use strict";$e(),Dd(),It(),Et(),Od=()=>!!L.wasm.proxy&&typeof document<`u`,Ad=!1,jd=!1,Md=!1,Fd=new Map,Id=(e,t)=>{let n=Fd.get(e);n?n.push(t):Fd.set(e,[t])},Ld=()=>{if(Ad||!jd||Md||!kd)throw Error(`worker not ready`)},Rd=e=>{switch(e.data.type){case`init-wasm`:Ad=!1,e.data.err?(Md=!0,Pd[1](e.data.err)):(jd=!0,Pd[0]()),Nd&&(URL.revokeObjectURL(Nd),Nd=void 0);break;case`init-ep`:case`copy-from`:case`create`:case`release`:case`run`:case`end-profiling`:{let t=Fd.get(e.data.type);e.data.err?t.shift()[1](e.data.err):t.shift()[0](e.data.out);break}default:}},zd=async()=>{if(!jd){if(Ad)throw Error(`multiple calls to 'initWasm()' detected.`);if(Md)throw Error(`previous call to 'initWasm()' failed.`);if(Ad=!0,Od())return new Promise((e,t)=>{kd?.terminate(),Ct().then(([n,r])=>{try{kd=r,kd.onerror=e=>t(e),kd.onmessage=Rd,Pd=[e,t];let i={type:`init-wasm`,in:L};!i.in.wasm.wasmPaths&&(n||pt)&&(i.in.wasm.wasmPaths={wasm:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+self.location.href).href}),kd.postMessage(i),Nd=n}catch(e){t(e)}},t)});try{await Pt(L.wasm),await hd(L),jd=!0}catch(e){throw Md=!0,e}finally{Ad=!1}}},Bd=async e=>{if(Od())return Ld(),new Promise((t,n)=>{Id(`init-ep`,[t,n]);let r={type:`init-ep`,in:{epName:e,env:L}};kd.postMessage(r)});await gd(L,e)},Vd=async e=>Od()?(Ld(),new Promise((t,n)=>{Id(`copy-from`,[t,n]);let r={type:`copy-from`,in:{buffer:e}};kd.postMessage(r,[e.buffer])})):bd(e),Hd=async(e,t)=>{if(Od()){if(t?.preferredOutputLocation)throw Error(`session option "preferredOutputLocation" is not supported for proxy.`);return Ld(),new Promise((n,r)=>{Id(`create`,[n,r]);let i={type:`create`,in:{model:e,options:{...t}}},a=[];e instanceof Uint8Array&&a.push(e.buffer),kd.postMessage(i,a)})}else return xd(e,t)},Ud=async e=>{if(Od())return Ld(),new Promise((t,n)=>{Id(`release`,[t,n]);let r={type:`release`,in:e};kd.postMessage(r)});Sd(e)},Wd=async(e,t,n,r,i,a)=>{if(Od()){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 Ld(),new Promise((i,o)=>{Id(`run`,[i,o]);let s=n,c={type:`run`,in:{sessionId:e,inputIndices:t,inputs:s,outputIndices:r,options:a}};kd.postMessage(c,Ed(s))})}else return wd(e,t,n,r,i,a)},Gd=async e=>{if(Od())return Ld(),new Promise((t,n)=>{Id(`end-profiling`,[t,n]);let r={type:`end-profiling`,in:e};kd.postMessage(r)});Td(e)}}),qd,Jd,Yd,Xd=M(()=>{"use strict";$e(),Kd(),V(),et(),on(),qd=(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()}`)}},Jd=e=>{switch(e[3]){case`cpu`:return new ze(e[0],e[2],e[1]);case`gpu-buffer`:{let t=e[0];if(!tn(t))throw Error(`not supported data type: ${t} for deserializing GPU tensor`);let{gpuBuffer:n,download:r,dispose:i}=e[2];return ze.fromGpuBuffer(n,{dataType:t,dims:e[1],download:r,dispose:i})}case`ml-tensor`:{let t=e[0];if(!nn(t))throw Error(`not supported data type: ${t} for deserializing MLTensor tensor`);let{mlTensor:n,download:r,dispose:i}=e[2];return ze.fromMLTensor(n,{dataType:t,dims:e[1],download:r,dispose:i})}default:throw Error(`invalid data location: ${e[3]}`)}},Yd=class{async fetchModelAndCopyToWasmMemory(e){return Vd(await an(e))}async loadModel(e,t){He();let n;n=typeof e==`string`?await this.fetchModelAndCopyToWasmMemory(e):e,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await Hd(n,t),B()}async dispose(){return Ud(this.sessionId)}async run(e,t,n){He();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)=>qd(e,()=>`input "${this.inputNames[i[t]]}"`)),c=a.map((e,t)=>e?qd(e,()=>`output "${this.outputNames[o[t]]}"`):null),l=await Wd(this.sessionId,i,s,o,c,n),u={};for(let e=0;e$d,initializeFlags:()=>Qd,wasmBackend:()=>ef});var Qd,$d,ef,tf=M(()=>{"use strict";$e(),Kd(),Xd(),Qd=()=>{(typeof L.wasm.initTimeout!=`number`||L.wasm.initTimeout<0)&&(L.wasm.initTimeout=0);let e=L.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.`),L.wasm.simd=!1),typeof L.wasm.proxy!=`boolean`&&(L.wasm.proxy=!1),typeof L.wasm.trace!=`boolean`&&(L.wasm.trace=!1),typeof L.wasm.numThreads!=`number`||!Number.isInteger(L.wasm.numThreads)||L.wasm.numThreads<=0)if(typeof self<`u`&&!self.crossOriginIsolated)L.wasm.numThreads=1;else{let e=typeof navigator>`u`?se(`node:os`).cpus().length:navigator.hardwareConcurrency;L.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},$d=class{async init(e){Qd(),await zd(),await Bd(e)}async createInferenceSessionHandler(e,t){let n=new Yd;return await n.loadModel(e,t),n}},ef=new $d});$e(),$e(),$e();var nf=`1.22.0-dev.20250409-89f8206ba4`,rf=Qe;{let e=(tf(),le(Zd)).wasmBackend;P(`webgpu`,e,5),P(`webnn`,e,5),P(`cpu`,e,10),P(`wasm`,e,10)}Object.defineProperty(L.versions,`web`,{value:nf,enumerable:!0}); +/** +* @license +* Copyright 2021 Google LLC. All Rights Reserved. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============================================================================= +*/ +/** +* @license +* Copyright 2020 Google LLC. All Rights Reserved. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============================================================================= +*/ +/** +* @license +* Copyright 2019 Google LLC. All Rights Reserved. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============================================================================= +*/ +let af={url:self.location.href};var sf={"onnxruntime-common":e=>{e.exports=ne},"onnxruntime-web":e=>{e.exports=j},"?2ce3":()=>{},"?7992":()=>{},"?5af5":()=>{},"?2b25":()=>{},"?db59":()=>{},"?383f":()=>{},"?fa4b":()=>{},"./node_modules/@huggingface/jinja/dist/index.js":(e,t,n)=>{n.r(t),n.d(t,{Environment:()=>L,Interpreter:()=>ye,Template:()=>Pe,parse:()=>se,tokenize:()=>d});var r=Object.freeze({Text:`Text`,NumericLiteral:`NumericLiteral`,BooleanLiteral:`BooleanLiteral`,NullLiteral:`NullLiteral`,StringLiteral:`StringLiteral`,Identifier:`Identifier`,Equals:`Equals`,OpenParen:`OpenParen`,CloseParen:`CloseParen`,OpenStatement:`OpenStatement`,CloseStatement:`CloseStatement`,OpenExpression:`OpenExpression`,CloseExpression:`CloseExpression`,OpenSquareBracket:`OpenSquareBracket`,CloseSquareBracket:`CloseSquareBracket`,OpenCurlyBracket:`OpenCurlyBracket`,CloseCurlyBracket:`CloseCurlyBracket`,Comma:`Comma`,Dot:`Dot`,Colon:`Colon`,Pipe:`Pipe`,CallOperator:`CallOperator`,AdditiveBinaryOperator:`AdditiveBinaryOperator`,MultiplicativeBinaryOperator:`MultiplicativeBinaryOperator`,ComparisonBinaryOperator:`ComparisonBinaryOperator`,UnaryOperator:`UnaryOperator`,Set:`Set`,If:`If`,For:`For`,In:`In`,Is:`Is`,NotIn:`NotIn`,Else:`Else`,EndSet:`EndSet`,EndIf:`EndIf`,ElseIf:`ElseIf`,EndFor:`EndFor`,And:`And`,Or:`Or`,Not:`UnaryOperator`,Macro:`Macro`,EndMacro:`EndMacro`,Break:`Break`,Continue:`Continue`}),i=Object.freeze({set:r.Set,for:r.For,in:r.In,is:r.Is,if:r.If,else:r.Else,endset:r.EndSet,endif:r.EndIf,elif:r.ElseIf,endfor:r.EndFor,and:r.And,or:r.Or,not:r.Not,"not in":r.NotIn,macro:r.Macro,endmacro:r.EndMacro,break:r.Break,continue:r.Continue,true:r.BooleanLiteral,false:r.BooleanLiteral,none:r.NullLiteral,True:r.BooleanLiteral,False:r.BooleanLiteral,None:r.NullLiteral}),a=class{constructor(e,t){this.value=e,this.type=t}};function o(e){return/\w/.test(e)}function s(e){return/[0-9]/.test(e)}var c=[[`{%`,r.OpenStatement],[`%}`,r.CloseStatement],[`{{`,r.OpenExpression],[`}}`,r.CloseExpression],[`(`,r.OpenParen],[`)`,r.CloseParen],[`{`,r.OpenCurlyBracket],[`}`,r.CloseCurlyBracket],[`[`,r.OpenSquareBracket],[`]`,r.CloseSquareBracket],[`,`,r.Comma],[`.`,r.Dot],[`:`,r.Colon],[`|`,r.Pipe],[`<=`,r.ComparisonBinaryOperator],[`>=`,r.ComparisonBinaryOperator],[`==`,r.ComparisonBinaryOperator],[`!=`,r.ComparisonBinaryOperator],[`<`,r.ComparisonBinaryOperator],[`>`,r.ComparisonBinaryOperator],[`+`,r.AdditiveBinaryOperator],[`-`,r.AdditiveBinaryOperator],[`*`,r.MultiplicativeBinaryOperator],[`/`,r.MultiplicativeBinaryOperator],[`%`,r.MultiplicativeBinaryOperator],[`=`,r.Equals]],l=new Map([[`n`,` +`],[`t`,` `],[`r`,`\r`],[`b`,`\b`],[`f`,`\f`],[`v`,`\v`],[`'`,`'`],[`"`,`"`],[`\\`,`\\`]]);function u(e,t={}){return e.endsWith(` +`)&&(e=e.slice(0,-1)),e=e.replace(/{#.*?#}/gs,`{##}`),t.lstrip_blocks&&(e=e.replace(/^[ \t]*({[#%])/gm,`$1`)),t.trim_blocks&&(e=e.replace(/([#%]})\n/g,`$1`)),e.replace(/{##}/g,``).replace(/-%}\s*/g,`%}`).replace(/\s*{%-/g,`{%`).replace(/-}}\s*/g,`}}`).replace(/\s*{{-/g,`{{`)}function d(e,t={}){let n=[],d=u(e,t),f=0,p=e=>{let t=``;for(;e(d[f]);){if(d[f]===`\\`){if(++f,f>=d.length)throw SyntaxError(`Unexpected end of input`);let e=d[f++],n=l.get(e);if(n===void 0)throw SyntaxError(`Unexpected escaped character: ${e}`);t+=n;continue}if(t+=d[f++],f>=d.length)throw SyntaxError(`Unexpected end of input`)}return t};main:for(;f0){n.push(new a(e,r.Text));continue}}p(e=>/\s/.test(e));let t=d[f];if(t===`-`||t===`+`){let e=n.at(-1)?.type;if(e===r.Text||e===void 0)throw SyntaxError(`Unexpected character: ${t}`);switch(e){case r.Identifier:case r.NumericLiteral:case r.BooleanLiteral:case r.NullLiteral:case r.StringLiteral:case r.CloseParen:case r.CloseSquareBracket:break;default:{++f;let e=p(s);n.push(new a(`${t}${e}`,e.length>0?r.NumericLiteral:r.UnaryOperator));continue}}}for(let[e,t]of c){let r=d.slice(f,f+e.length);if(r===e){n.push(new a(e,t)),f+=e.length;continue main}}if(t===`'`||t===`"`){++f;let e=p(e=>e!==t);n.push(new a(e,r.StringLiteral)),++f;continue}if(s(t)){let e=p(s);n.push(new a(e,r.NumericLiteral));continue}if(o(t)){let e=p(o),t=Object.hasOwn(i,e)?i[e]:r.Identifier;t===r.In&&n.at(-1)?.type===r.Not?(n.pop(),n.push(new a(`not in`,r.NotIn))):n.push(new a(e,t));continue}throw SyntaxError(`Unexpected character: ${t}`)}return n}var f=class{type=`Statement`},p=class extends f{constructor(e){super(),this.body=e}type=`Program`},m=class extends f{constructor(e,t,n){super(),this.test=e,this.body=t,this.alternate=n}type=`If`},h=class extends f{constructor(e,t,n,r){super(),this.loopvar=e,this.iterable=t,this.body=n,this.defaultBlock=r}type=`For`},g=class extends f{type=`Break`},_=class extends f{type=`Continue`},v=class extends f{constructor(e,t,n){super(),this.assignee=e,this.value=t,this.body=n}type=`Set`},y=class extends f{constructor(e,t,n){super(),this.name=e,this.args=t,this.body=n}type=`Macro`},b=class extends f{type=`Expression`},x=class extends b{constructor(e,t,n){super(),this.object=e,this.property=t,this.computed=n}type=`MemberExpression`},S=class extends b{constructor(e,t){super(),this.callee=e,this.args=t}type=`CallExpression`},C=class extends b{constructor(e){super(),this.value=e}type=`Identifier`},w=class extends b{constructor(e){super(),this.value=e}type=`Literal`},T=class extends w{type=`NumericLiteral`},E=class extends w{type=`StringLiteral`},D=class extends w{type=`BooleanLiteral`},O=class extends w{type=`NullLiteral`},k=class extends w{type=`ArrayLiteral`},A=class extends w{type=`TupleLiteral`},ee=class extends w{type=`ObjectLiteral`},te=class extends b{constructor(e,t,n){super(),this.operator=e,this.left=t,this.right=n}type=`BinaryExpression`},ne=class extends b{constructor(e,t){super(),this.operand=e,this.filter=t}type=`FilterExpression`},j=class extends b{constructor(e,t){super(),this.iterable=e,this.test=t}type=`SelectExpression`},re=class extends b{constructor(e,t,n){super(),this.operand=e,this.negate=t,this.test=n}type=`TestExpression`},ie=class extends b{constructor(e,t){super(),this.operator=e,this.argument=t}type=`UnaryExpression`},ae=class extends b{constructor(e=void 0,t=void 0,n=void 0){super(),this.start=e,this.stop=t,this.step=n}type=`SliceExpression`},oe=class extends b{constructor(e,t){super(),this.key=e,this.value=t}type=`KeywordArgumentExpression`};function se(e){let t=new p([]),n=0;function i(t,r){let i=e[n++];if(!i||i.type!==t)throw Error(`Parser Error: ${r}. ${i.type} !== ${t}.`);return i}function a(){switch(e[n].type){case r.Text:return c();case r.OpenStatement:return l();case r.OpenExpression:return u();default:throw SyntaxError(`Unexpected token type: ${e[n].type}`)}}function o(...t){return n+t.length<=e.length&&t.some((t,r)=>t!==e[n+r].type)}function s(...t){return n+t.length<=e.length&&t.every((t,r)=>t===e[n+r].type)}function c(){return new E(i(r.Text,`Expected text token`).value)}function l(){i(r.OpenStatement,`Expected opening statement token`);let t;switch(e[n].type){case r.Set:++n,t=d(),i(r.CloseStatement,`Expected closing statement token`);break;case r.If:++n,t=f(),i(r.OpenStatement,`Expected {% token`),i(r.EndIf,`Expected endif token`),i(r.CloseStatement,`Expected %} token`);break;case r.Macro:++n,t=b(),i(r.OpenStatement,`Expected {% token`),i(r.EndMacro,`Expected endmacro token`),i(r.CloseStatement,`Expected %} token`);break;case r.For:++n,t=se(),i(r.OpenStatement,`Expected {% token`),i(r.EndFor,`Expected endfor token`),i(r.CloseStatement,`Expected %} token`);break;case r.Break:++n,i(r.CloseStatement,`Expected closing statement token`),t=new g;break;case r.Continue:++n,i(r.CloseStatement,`Expected closing statement token`),t=new _;break;default:throw SyntaxError(`Unknown statement type: ${e[n].type}`)}return t}function u(){i(r.OpenExpression,`Expected opening expression token`);let e=M();return i(r.CloseExpression,`Expected closing expression token`),e}function d(){let t=M();if(s(r.Equals)){++n;let e=M();return new v(t,e,[])}else{let o=[];for(i(r.CloseStatement,`Expected %} token`);!(e[n]?.type===r.OpenStatement&&e[n+1]?.type===r.EndSet);){let e=a();o.push(e)}return i(r.OpenStatement,`Expected {% token`),i(r.EndSet,`Expected endset token`),new v(t,null,o)}}function f(){let t=M();i(r.CloseStatement,`Expected closing statement token`);let o=[],c=[];for(;!(e[n]?.type===r.OpenStatement&&(e[n+1]?.type===r.ElseIf||e[n+1]?.type===r.Else||e[n+1]?.type===r.EndIf));)o.push(a());if(e[n]?.type===r.OpenStatement&&e[n+1]?.type!==r.EndIf)if(++n,s(r.ElseIf))i(r.ElseIf,`Expected elseif token`),c.push(f());else for(i(r.Else,`Expected else token`),i(r.CloseStatement,`Expected closing statement token`);!(e[n]?.type===r.OpenStatement&&e[n+1]?.type===r.EndIf);)c.push(a());return new m(t,o,c)}function b(){let e=L();if(e.type!==`Identifier`)throw SyntaxError(`Expected identifier following macro statement`);let t=I();i(r.CloseStatement,`Expected closing statement token`);let n=[];for(;o(r.OpenStatement,r.EndMacro);)n.push(a());return new y(e,t,n)}function w(e=!1){let t=e?L:M,i=[t()],a=s(r.Comma);for(;a&&(++n,i.push(t()),s(r.Comma)););return a?new A(i):i[0]}function se(){let e=w(!0);if(!(e instanceof C||e instanceof A))throw SyntaxError(`Expected identifier/tuple for the loop variable, got ${e.type} instead`);i(r.In,"Expected `in` keyword following loop variable");let t=M();i(r.CloseStatement,`Expected closing statement token`);let c=[];for(;o(r.OpenStatement,r.EndFor)&&o(r.OpenStatement,r.Else);)c.push(a());let l=[];if(s(r.OpenStatement,r.Else))for(++n,++n,i(r.CloseStatement,`Expected closing statement token`);o(r.OpenStatement,r.EndFor);)l.push(a());return new h(e,t,c,l)}function M(){return N()}function N(){let e=ce();if(s(r.If)){++n;let t=ce();if(s(r.Else)){++n;let r=ce();return new m(t,[e],[r])}else return new j(e,t)}return e}function ce(){let t=le();for(;s(r.Or);){let r=e[n];++n;let i=le();t=new te(r,t,i)}return t}function le(){let t=ue();for(;s(r.And);){let r=e[n];++n;let i=ue();t=new te(r,t,i)}return t}function ue(){let t;for(;s(r.Not);){let r=e[n];++n;let i=ue();t=new ie(r,i)}return t??de()}function de(){let t=P();for(;s(r.ComparisonBinaryOperator)||s(r.In)||s(r.NotIn);){let r=e[n];++n;let i=P();t=new te(r,t,i)}return t}function P(){let t=ge();for(;s(r.AdditiveBinaryOperator);){let r=e[n];++n;let i=ge();t=new te(r,t,i)}return t}function F(){let e=he(L());return s(r.OpenParen)?fe(e):e}function fe(e){let t=new S(e,I());return t=he(t),s(r.OpenParen)&&(t=fe(t)),t}function I(){i(r.OpenParen,`Expected opening parenthesis for arguments list`);let e=pe();return i(r.CloseParen,`Expected closing parenthesis for arguments list`),e}function pe(){let e=[];for(;!s(r.CloseParen);){let t=M();if(s(r.Equals)){if(++n,!(t instanceof C))throw SyntaxError(`Expected identifier for keyword argument`);let e=M();t=new oe(t,e)}e.push(t),s(r.Comma)&&++n}return e}function me(){let e=[],t=!1;for(;!s(r.CloseSquareBracket);)s(r.Colon)?(e.push(void 0),++n,t=!0):(e.push(M()),s(r.Colon)&&(++n,t=!0));if(e.length===0)throw SyntaxError(`Expected at least one argument for member/slice expression`);if(t){if(e.length>3)throw SyntaxError(`Expected 0-3 arguments for slice expression`);return new ae(...e)}return e[0]}function he(t){for(;s(r.Dot)||s(r.OpenSquareBracket);){let a=e[n];++n;let o,s=a.type!==r.Dot;if(s)o=me(),i(r.CloseSquareBracket,`Expected closing square bracket`);else if(o=L(),o.type!==`Identifier`)throw SyntaxError(`Expected identifier following dot operator`);t=new x(t,o,s)}return t}function ge(){let t=_e();for(;s(r.MultiplicativeBinaryOperator);){let r=e[n];++n;let i=_e();t=new te(r,t,i)}return t}function _e(){let e=ve();for(;s(r.Is);){++n;let t=s(r.Not);t&&++n;let i=L();if(i instanceof D?i=new C(i.value.toString()):i instanceof O&&(i=new C(`none`)),!(i instanceof C))throw SyntaxError(`Expected identifier for the test`);e=new re(e,t,i)}return e}function ve(){let e=F();for(;s(r.Pipe);){++n;let t=L();if(!(t instanceof C))throw SyntaxError(`Expected identifier for the filter`);s(r.OpenParen)&&(t=fe(t)),e=new ne(e,t)}return e}function L(){let t=e[n];switch(t.type){case r.NumericLiteral:return++n,new T(Number(t.value));case r.StringLiteral:return++n,new E(t.value);case r.BooleanLiteral:return++n,new D(t.value.toLowerCase()===`true`);case r.NullLiteral:return++n,new O(null);case r.Identifier:return++n,new C(t.value);case r.OpenParen:{++n;let t=w();if(e[n].type!==r.CloseParen)throw SyntaxError(`Expected closing parenthesis, got ${e[n].type} instead`);return++n,t}case r.OpenSquareBracket:{++n;let e=[];for(;!s(r.CloseSquareBracket);)e.push(M()),s(r.Comma)&&++n;return++n,new k(e)}case r.OpenCurlyBracket:{++n;let e=new Map;for(;!s(r.CloseCurlyBracket);){let t=M();i(r.Colon,`Expected colon between key and value in object literal`);let a=M();e.set(t,a),s(r.Comma)&&++n}return++n,new ee(e)}default:throw SyntaxError(`Unexpected token: ${t.type}`)}}for(;n=0?(t=(t??=0)<0?Math.max(e.length+t,0):Math.min(t,e.length),n=(n??=e.length)<0?Math.max(e.length+n,0):Math.min(n,e.length)):(t=(t??=e.length-1)<0?Math.max(e.length+t,-1):Math.min(t,e.length-1),n=(n??=-1)<-1?Math.max(e.length+n,-1):Math.min(n,e.length-1));let a=[];for(let o=t;i*oe.toUpperCase())}var le=class extends Error{},ue=class extends Error{},de=class{type=`RuntimeValue`;value;builtins=new Map;constructor(e=void 0){this.value=e}__bool__(){return new fe(!!this.value)}},P=class extends de{type=`NumericValue`},F=class extends de{type=`StringValue`;builtins=new Map([[`upper`,new ge(()=>new F(this.value.toUpperCase()))],[`lower`,new ge(()=>new F(this.value.toLowerCase()))],[`strip`,new ge(()=>new F(this.value.trim()))],[`title`,new ge(()=>new F(ce(this.value)))],[`length`,new P(this.value.length)],[`rstrip`,new ge(()=>new F(this.value.trimEnd()))],[`lstrip`,new ge(()=>new F(this.value.trimStart()))],[`startswith`,new ge(e=>{if(e.length===0)throw Error(`startswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`startswith() argument must be a string`);return new fe(this.value.startsWith(t.value))})],[`endswith`,new ge(e=>{if(e.length===0)throw Error(`endswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`endswith() argument must be a string`);return new fe(this.value.endsWith(t.value))})],[`split`,new ge(e=>{let t=e[0]??new _e;if(!(t instanceof F||t instanceof _e))throw Error(`sep argument must be a string or null`);let n=e[1]??new P(-1);if(!(n instanceof P))throw Error(`maxsplit argument must be a number`);let r=[];if(t instanceof _e){let e=this.value.trimStart();for(let{0:t,index:i}of e.matchAll(/\S+/g)){if(n.value!==-1&&r.length>=n.value&&i!==void 0){r.push(t+e.slice(i+t.length));break}r.push(t)}}else{if(t.value===``)throw Error(`empty separator`);r=this.value.split(t.value),n.value!==-1&&r.length>n.value&&r.push(r.splice(n.value).join(t.value))}return new me(r.map(e=>new F(e)))})]])},fe=class extends de{type=`BooleanValue`},I=class extends de{type=`ObjectValue`;__bool__(){return new fe(this.value.size>0)}builtins=new Map([[`get`,new ge(([e,t])=>{if(!(e instanceof F))throw Error(`Object key must be a string: got ${e.type}`);return this.value.get(e.value)??t??new _e})],[`items`,new ge(()=>new me(Array.from(this.value.entries()).map(([e,t])=>new me([new F(e),t]))))]])},pe=class extends I{type=`KeywordArgumentsValue`},me=class extends de{type=`ArrayValue`;builtins=new Map([[`length`,new P(this.value.length)]]);__bool__(){return new fe(this.value.length>0)}},he=class extends me{type=`TupleValue`},ge=class extends de{type=`FunctionValue`},_e=class extends de{type=`NullValue`},ve=class extends de{type=`UndefinedValue`},L=class{constructor(e){this.parent=e}variables=new Map([[`namespace`,new ge(e=>{if(e.length===0)return new I(new Map);if(e.length!==1||!(e[0]instanceof I))throw Error("`namespace` expects either zero arguments or a single object argument");return e[0]})]]);tests=new Map([[`boolean`,e=>e.type===`BooleanValue`],[`callable`,e=>e instanceof ge],[`odd`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "odd" to type: ${e.type}`);return e.value%2!=0}],[`even`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "even" to type: ${e.type}`);return e.value%2==0}],[`false`,e=>e.type===`BooleanValue`&&!e.value],[`true`,e=>e.type===`BooleanValue`&&e.value],[`none`,e=>e.type===`NullValue`],[`string`,e=>e.type===`StringValue`],[`number`,e=>e.type===`NumericValue`],[`integer`,e=>e.type===`NumericValue`&&Number.isInteger(e.value)],[`iterable`,e=>e.type===`ArrayValue`||e.type===`StringValue`],[`mapping`,e=>e.type===`ObjectValue`],[`lower`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toLowerCase()}],[`upper`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toUpperCase()}],[`none`,e=>e.type===`NullValue`],[`defined`,e=>e.type!==`UndefinedValue`],[`undefined`,e=>e.type===`UndefinedValue`],[`equalto`,(e,t)=>e.value===t.value],[`eq`,(e,t)=>e.value===t.value]]);set(e,t){return this.declareVariable(e,be(t))}declareVariable(e,t){if(this.variables.has(e))throw SyntaxError(`Variable already declared: ${e}`);return this.variables.set(e,t),t}setVariable(e,t){return this.variables.set(e,t),t}resolve(e){if(this.variables.has(e))return this;if(this.parent)return this.parent.resolve(e);throw Error(`Unknown variable: ${e}`)}lookupVariable(e){try{return this.resolve(e).variables.get(e)??new ve}catch{return new ve}}},ye=class{global;constructor(e){this.global=e??new L}run(e){return this.evaluate(e,this.global)}evaluateBinaryExpression(e,t){let n=this.evaluate(e.left,t);switch(e.operator.value){case`and`:return n.__bool__().value?this.evaluate(e.right,t):n;case`or`:return n.__bool__().value?n:this.evaluate(e.right,t)}let r=this.evaluate(e.right,t);switch(e.operator.value){case`==`:return new fe(n.value==r.value);case`!=`:return new fe(n.value!=r.value)}if(n instanceof ve||r instanceof ve)throw Error(`Cannot perform operation on undefined values`);if(n instanceof _e||r instanceof _e)throw Error(`Cannot perform operation on null values`);if(n instanceof P&&r instanceof P)switch(e.operator.value){case`+`:return new P(n.value+r.value);case`-`:return new P(n.value-r.value);case`*`:return new P(n.value*r.value);case`/`:return new P(n.value/r.value);case`%`:return new P(n.value%r.value);case`<`:return new fe(n.value`:return new fe(n.value>r.value);case`>=`:return new fe(n.value>=r.value);case`<=`:return new fe(n.value<=r.value)}else if(n instanceof me&&r instanceof me)switch(e.operator.value){case`+`:return new me(n.value.concat(r.value))}else if(r instanceof me){let t=r.value.find(e=>e.value===n.value)!==void 0;switch(e.operator.value){case`in`:return new fe(t);case`not in`:return new fe(!t)}}if(n instanceof F||r instanceof F)switch(e.operator.value){case`+`:return new F(n.value.toString()+r.value.toString())}if(n instanceof F&&r instanceof F)switch(e.operator.value){case`in`:return new fe(r.value.includes(n.value));case`not in`:return new fe(!r.value.includes(n.value))}if(n instanceof F&&r instanceof I)switch(e.operator.value){case`in`:return new fe(r.value.has(n.value));case`not in`:return new fe(!r.value.has(n.value))}throw SyntaxError(`Unknown operator "${e.operator.value}" between ${n.type} and ${r.type}`)}evaluateArguments(e,t){let n=[],r=new Map;for(let i of e)if(i.type===`KeywordArgumentExpression`){let e=i;r.set(e.key.value,this.evaluate(e.value,t))}else{if(r.size>0)throw Error(`Positional arguments must come before keyword arguments`);n.push(this.evaluate(i,t))}return[n,r]}evaluateFilterExpression(e,t){let n=this.evaluate(e.operand,t);if(e.filter.type===`Identifier`){let t=e.filter;if(t.value===`tojson`)return new F(xe(n));if(n instanceof me)switch(t.value){case`list`:return n;case`first`:return n.value[0];case`last`:return n.value[n.value.length-1];case`length`:return new P(n.value.length);case`reverse`:return new me(n.value.reverse());case`sort`:return new me(n.value.sort((e,t)=>{if(e.type!==t.type)throw Error(`Cannot compare different types: ${e.type} and ${t.type}`);switch(e.type){case`NumericValue`:return e.value-t.value;case`StringValue`:return e.value.localeCompare(t.value);default:throw Error(`Cannot compare type: ${e.type}`)}}));case`join`:return new F(n.value.map(e=>e.value).join(``));case`string`:return new F(xe(n));default:throw Error(`Unknown ArrayValue filter: ${t.value}`)}else if(n instanceof F)switch(t.value){case`length`:return new P(n.value.length);case`upper`:return new F(n.value.toUpperCase());case`lower`:return new F(n.value.toLowerCase());case`title`:return new F(ce(n.value));case`capitalize`:return new F(n.value.charAt(0).toUpperCase()+n.value.slice(1));case`trim`:return new F(n.value.trim());case`indent`:return new F(n.value.split(` +`).map((e,t)=>t===0||e.length===0?e:` `+e).join(` +`));case`join`:case`string`:return n;default:throw Error(`Unknown StringValue filter: ${t.value}`)}else if(n instanceof P)switch(t.value){case`abs`:return new P(Math.abs(n.value));default:throw Error(`Unknown NumericValue filter: ${t.value}`)}else if(n instanceof I)switch(t.value){case`items`:return new me(Array.from(n.value.entries()).map(([e,t])=>new me([new F(e),t])));case`length`:return new P(n.value.size);default:throw Error(`Unknown ObjectValue filter: ${t.value}`)}throw Error(`Cannot apply filter "${t.value}" to type: ${n.type}`)}else if(e.filter.type===`CallExpression`){let r=e.filter;if(r.callee.type!==`Identifier`)throw Error(`Unknown filter: ${r.callee.type}`);let i=r.callee.value;if(i===`tojson`){let[,e]=this.evaluateArguments(r.args,t),i=e.get(`indent`)??new _e;if(!(i instanceof P||i instanceof _e))throw Error(`If set, indent must be a number`);return new F(xe(n,i.value))}else if(i===`join`){let e;if(n instanceof F)e=Array.from(n.value);else if(n instanceof me)e=n.value.map(e=>e.value);else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`);let[a,o]=this.evaluateArguments(r.args,t),s=a.at(0)??o.get(`separator`)??new F(``);if(!(s instanceof F))throw Error(`separator must be a string`);return new F(e.join(s.value))}if(n instanceof me){switch(i){case`selectattr`:case`rejectattr`:{let e=i===`selectattr`;if(n.value.some(e=>!(e instanceof I)))throw Error(`\`${i}\` can only be applied to array of objects`);if(r.args.some(e=>e.type!==`StringLiteral`))throw Error(`arguments of \`${i}\` must be strings`);let[a,o,s]=r.args.map(e=>this.evaluate(e,t)),c;if(o){let e=t.tests.get(o.value);if(!e)throw Error(`Unknown test: ${o.value}`);c=e}else c=(...e)=>e[0].__bool__().value;let l=n.value.filter(t=>{let n=t.value.get(a.value),r=n?c(n,s):!1;return e?r:!r});return new me(l)}case`map`:{let[,e]=this.evaluateArguments(r.args,t);if(e.has(`attribute`)){let t=e.get(`attribute`);if(!(t instanceof F))throw Error(`attribute must be a string`);let r=e.get(`default`),i=n.value.map(e=>{if(!(e instanceof I))throw Error(`items in map must be an object`);return e.value.get(t.value)??r??new ve});return new me(i)}else throw Error("`map` expressions without `attribute` set are not currently supported.")}}throw Error(`Unknown ArrayValue filter: ${i}`)}else if(n instanceof F){switch(i){case`indent`:{let[e,i]=this.evaluateArguments(r.args,t),a=e.at(0)??i.get(`width`)??new P(4);if(!(a instanceof P))throw Error(`width must be a number`);let o=e.at(1)??i.get(`first`)??new fe(!1),s=e.at(2)??i.get(`blank`)??new fe(!1),c=n.value.split(` +`),l=` `.repeat(a.value),u=c.map((e,t)=>!o.value&&t===0||!s.value&&e.length===0?e:l+e);return new F(u.join(` +`))}}throw Error(`Unknown StringValue filter: ${i}`)}else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`)}throw Error(`Unknown filter: ${e.filter.type}`)}evaluateTestExpression(e,t){let n=this.evaluate(e.operand,t),r=t.tests.get(e.test.value);if(!r)throw Error(`Unknown test: ${e.test.value}`);let i=r(n);return new fe(e.negate?!i:i)}evaluateUnaryExpression(e,t){let n=this.evaluate(e.argument,t);switch(e.operator.value){case`not`:return new fe(!n.value);default:throw SyntaxError(`Unknown operator: ${e.operator.value}`)}}evalProgram(e,t){return this.evaluateBlock(e.body,t)}evaluateBlock(e,t){let n=``;for(let r of e){let e=this.evaluate(r,t);e.type!==`NullValue`&&e.type!==`UndefinedValue`&&(n+=e.value)}return new F(n)}evaluateIdentifier(e,t){return t.lookupVariable(e.value)}evaluateCallExpression(e,t){let[n,r]=this.evaluateArguments(e.args,t);r.size>0&&n.push(new pe(r));let i=this.evaluate(e.callee,t);if(i.type!==`FunctionValue`)throw Error(`Cannot call something that is not a function: got ${i.type}`);return i.value(n,t)}evaluateSliceExpression(e,t,n){if(!(e instanceof me||e instanceof F))throw Error(`Slice object must be an array or string`);let r=this.evaluate(t.start,n),i=this.evaluate(t.stop,n),a=this.evaluate(t.step,n);if(!(r instanceof P||r instanceof ve))throw Error(`Slice start must be numeric or undefined`);if(!(i instanceof P||i instanceof ve))throw Error(`Slice stop must be numeric or undefined`);if(!(a instanceof P||a instanceof ve))throw Error(`Slice step must be numeric or undefined`);return e instanceof me?new me(N(e.value,r.value,i.value,a.value)):new F(N(Array.from(e.value),r.value,i.value,a.value).join(``))}evaluateMemberExpression(e,t){let n=this.evaluate(e.object,t),r;if(e.computed){if(e.property.type===`SliceExpression`)return this.evaluateSliceExpression(n,e.property,t);r=this.evaluate(e.property,t)}else r=new F(e.property.value);let i;if(n instanceof I){if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.value.get(r.value)??n.builtins.get(r.value)}else if(n instanceof me||n instanceof F)if(r instanceof P)i=n.value.at(r.value),n instanceof F&&(i=new F(n.value.at(r.value)));else if(r instanceof F)i=n.builtins.get(r.value);else throw Error(`Cannot access property with non-string/non-number: got ${r.type}`);else{if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.builtins.get(r.value)}return i instanceof de?i:new ve}evaluateSet(e,t){let n=e.value?this.evaluate(e.value,t):this.evaluateBlock(e.body,t);if(e.assignee.type===`Identifier`){let r=e.assignee.value;t.setVariable(r,n)}else if(e.assignee.type===`MemberExpression`){let r=e.assignee,i=this.evaluate(r.object,t);if(!(i instanceof I))throw Error(`Cannot assign to member of non-object`);if(r.property.type!==`Identifier`)throw Error(`Cannot assign to member with non-identifier property`);i.value.set(r.property.value,n)}else throw Error(`Invalid LHS inside assignment expression: ${JSON.stringify(e.assignee)}`);return new _e}evaluateIf(e,t){let n=this.evaluate(e.test,t);return this.evaluateBlock(n.__bool__().value?e.body:e.alternate,t)}evaluateFor(e,t){let n=new L(t),r,i;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=this.evaluate(t.iterable,n),r=t.test}else i=this.evaluate(e.iterable,n);if(!(i instanceof me))throw Error(`Expected iterable type in for loop: got ${i.type}`);let a=[],o=[];for(let t=0;tt.setVariable(e.loopvar.value,c);else if(e.loopvar.type===`TupleLiteral`){let t=e.loopvar;if(c.type!==`ArrayValue`)throw Error(`Cannot unpack non-iterable type: ${c.type}`);let n=c;if(t.value.length!==n.value.length)throw Error(`Too ${t.value.length>n.value.length?`few`:`many`} items to unpack`);l=e=>{for(let r=0;r0?a[t-1]:new ve],[`nextitem`,t{let r=new L(n);t=t.slice();let i;t.at(-1)?.type===`KeywordArgumentsValue`&&(i=t.pop());for(let n=0;nthis.evaluate(e,t)));case`TupleLiteral`:return new he(e.value.map(e=>this.evaluate(e,t)));case`ObjectLiteral`:{let n=new Map;for(let[r,i]of e.value){let e=this.evaluate(r,t);if(!(e instanceof F))throw Error(`Object keys must be strings: got ${e.type}`);n.set(e.value,this.evaluate(i,t))}return new I(n)}case`Identifier`:return this.evaluateIdentifier(e,t);case`CallExpression`:return this.evaluateCallExpression(e,t);case`MemberExpression`:return this.evaluateMemberExpression(e,t);case`UnaryExpression`:return this.evaluateUnaryExpression(e,t);case`BinaryExpression`:return this.evaluateBinaryExpression(e,t);case`FilterExpression`:return this.evaluateFilterExpression(e,t);case`TestExpression`:return this.evaluateTestExpression(e,t);default:throw SyntaxError(`Unknown node type: ${e.type}`)}}};function be(e){switch(typeof e){case`number`:return new P(e);case`string`:return new F(e);case`boolean`:return new fe(e);case`undefined`:return new ve;case`object`:return e===null?new _e:Array.isArray(e)?new me(e.map(be)):new I(new Map(Object.entries(e).map(([e,t])=>[e,be(t)])));case`function`:return new ge((t,n)=>{let r=e(...t.map(e=>e.value))??null;return be(r)});default:throw Error(`Cannot convert to runtime value: ${e}`)}}function xe(e,t,n){let r=n??0;switch(e.type){case`NullValue`:case`UndefinedValue`:return`null`;case`NumericValue`:case`StringValue`:case`BooleanValue`:return JSON.stringify(e.value);case`ArrayValue`:case`ObjectValue`:{let n=t?` `.repeat(t):``,i=` +`+n.repeat(r),a=i+n;if(e.type===`ArrayValue`){let n=e.value.map(e=>xe(e,t,r+1));return t?`[${a}${n.join(`,${a}`)}${i}]`:`[${n.join(`, `)}]`}else{let n=Array.from(e.value.entries()).map(([e,n])=>{let i=`"${e}": ${xe(n,t,r+1)}`;return t?`${a}${i}`:i});return t?`{${n.join(`,`)}${i}}`:`{${n.join(`, `)}}`}}default:throw Error(`Cannot convert to JSON: ${e.type}`)}}var Se=` +`,Ce=`{%- `,we=` -%}`,Te={MultiplicativeBinaryOperator:2,AdditiveBinaryOperator:1,ComparisonBinaryOperator:0};function Ee(e,t=` `){let n=typeof t==`number`?` `.repeat(t):t,r=Oe(e.body,0,n);return r.replace(/\n$/,``)}function De(...e){return Ce+e.join(` `)+we}function Oe(e,t,n){return e.map(e=>ke(e,t,n)).join(Se)}function ke(e,t,n){let r=n.repeat(t);switch(e.type){case`Program`:return Oe(e.body,t,n);case`If`:return Ae(e,t,n);case`For`:return je(e,t,n);case`Set`:return Me(e,t,n);case`Macro`:return Ne(e,t,n);case`Break`:return r+De(`break`);case`Continue`:return r+De(`continue`);default:return r+`{{- `+R(e)+` -}}`}}function Ae(e,t,n){let r=n.repeat(t),i=[],a=e;for(;a&&(i.push({test:a.test,body:a.body}),a.alternate.length===1&&a.alternate[0].type===`If`);)a=a.alternate[0];let o=r+De(`if`,R(i[0].test))+Se+Oe(i[0].body,t+1,n);for(let e=1;e0&&(o+=Se+r+De(`else`)+Se+Oe(a.alternate,t+1,n)),o+=Se+r+De(`endif`),o}function je(e,t,n){let r=n.repeat(t),i=``;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=`${R(t.iterable)} if ${R(t.test)}`}else i=R(e.iterable);let a=r+De(`for`,R(e.loopvar),`in`,i)+Se+Oe(e.body,t+1,n);return e.defaultBlock.length>0&&(a+=Se+r+De(`else`)+Se+Oe(e.defaultBlock,t+1,n)),a+=Se+r+De(`endfor`),a}function Me(e,t,n){let r=n.repeat(t),i=R(e.assignee),a=e.value?R(e.value):``,o=r+De(`set`,`${i}${e.value?` = `+a:``}`);return e.body.length===0?o:o+Se+Oe(e.body,t+1,n)+Se+r+De(`endset`)}function Ne(e,t,n){let r=n.repeat(t),i=e.args.map(R).join(`, `);return r+De(`macro`,`${e.name.value}(${i})`)+Se+Oe(e.body,t+1,n)+Se+r+De(`endmacro`)}function R(e,t=-1){switch(e.type){case`Identifier`:return e.value;case`NullLiteral`:return`none`;case`NumericLiteral`:case`BooleanLiteral`:return`${e.value}`;case`StringLiteral`:return JSON.stringify(e.value);case`BinaryExpression`:{let n=e,r=Te[n.operator.type]??0,i=R(n.left,r),a=R(n.right,r+1),o=`${i} ${n.operator.value} ${a}`;return rR(e,-1)).join(`, `);return`${R(t.callee,-1)}(${n})`}case`MemberExpression`:{let t=e,n=R(t.object,-1);t.object.type!==`Identifier`&&(n=`(${n})`);let r=R(t.property,-1);return!t.computed&&t.property.type!==`Identifier`&&(r=`(${r})`),t.computed?`${n}[${r}]`:`${n}.${r}`}case`FilterExpression`:{let t=e,n=R(t.operand,1/0);return t.filter.type===`CallExpression`?`${n} | ${R(t.filter,-1)}`:`${n} | ${t.filter.value}`}case`SelectExpression`:{let t=e;return`${R(t.iterable,-1)} | select(${R(t.test,-1)})`}case`TestExpression`:{let t=e;return`${R(t.operand,-1)} is${t.negate?` not`:``} ${t.test.value}`}case`ArrayLiteral`:case`TupleLiteral`:{let t=e.value.map(e=>R(e,-1)),n=e.type===`ArrayLiteral`?`[]`:`()`;return`${n[0]}${t.join(`, `)}${n[1]}`}case`ObjectLiteral`:{let t=Array.from(e.value.entries()).map(([e,t])=>`${R(e,-1)}: ${R(t,-1)}`);return`{ ${t.join(`, `)} }`}case`SliceExpression`:{let t=e,n=t.start?R(t.start,-1):``,r=t.stop?R(t.stop,-1):``,i=t.step?`:${R(t.step,-1)}`:``;return`${n}:${r}${i}`}case`KeywordArgumentExpression`:{let t=e;return`${t.key.value}=${R(t.value,-1)}`}case`If`:{let t=e,n=R(t.test,-1),r=R(t.body[0],0),i=R(t.alternate[0],-1);return`${r} if ${n} else ${i}`}default:throw Error(`Unknown expression type: ${e.type}`)}}var Pe=class{parsed;constructor(e){let t=d(e,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=se(t)}render(e){let t=new L;if(t.set(`false`,!1),t.set(`true`,!0),t.set(`raise_exception`,e=>{throw Error(e)}),t.set(`range`,M),e)for(let[n,r]of Object.entries(e))t.set(n,r);let n=new ye(t),r=n.run(this.parsed);return r.value}format(e){return Ee(this.parsed,e?.indent||` `)}}},"./src/backends/onnx.js":(e,t,n)=>{var r;n.r(t),n.d(t,{Tensor:()=>s.Tensor,createInferenceSession:()=>g,deviceToExecutionProviders:()=>m,isONNXProxy:()=>y,isONNXTensor:()=>_});var i=n( +/*! ../env.js */ +`./src/env.js`),a=n( +/*! onnxruntime-node */ +`?2ce3`),o=n( +/*! onnxruntime-web */ +`onnxruntime-web`),s=n( +/*! onnxruntime-common */ +`onnxruntime-common`);let c=Object.freeze({auto:null,gpu:null,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:{name:`webnn`,deviceType:`cpu`},"webnn-npu":{name:`webnn`,deviceType:`npu`},"webnn-gpu":{name:`webnn`,deviceType:`gpu`},"webnn-cpu":{name:`webnn`,deviceType:`cpu`}}),l=[],u,d,f=Symbol.for(`onnxruntime`);if(f in globalThis)d=globalThis[f];else if(i.apis.IS_NODE_ENV){switch(d=a??(r||=n.t(a,2)),process.platform){case`win32`:l.push(`dml`);break;case`linux`:process.arch===`x64`&&l.push(`cuda`);break;case`darwin`:break}l.push(`cpu`),u=[`cpu`]}else d=o,i.apis.IS_WEBNN_AVAILABLE&&l.push(`webnn-npu`,`webnn-gpu`,`webnn-cpu`,`webnn`),i.apis.IS_WEBGPU_AVAILABLE&&l.push(`webgpu`),l.push(`wasm`),u=[`wasm`];let p=d.InferenceSession;function m(e=null){if(!e)return u;switch(e){case`auto`:return l;case`gpu`:return l.filter(e=>[`webgpu`,`cuda`,`dml`,`webnn-gpu`].includes(e))}if(l.includes(e))return[c[e]??e];throw Error(`Unsupported device: "${e}". Should be one of: ${l.join(`, `)}.`)}let h=null;async function g(e,t,n){h&&await h;let r=p.create(e,t);h??=r;let i=await r;return i.config=n,i}function _(e){return e instanceof d.Tensor}let v=d?.env;v?.wasm&&(!(typeof ServiceWorkerGlobalScope<`u`&&self instanceof ServiceWorkerGlobalScope)&&!v.wasm.wasmPaths&&(v.wasm.wasmPaths=`https://cdn.jsdelivr.net/npm/@huggingface/transformers@${i.env.version}/dist/`),v.wasm.proxy=!1),v?.webgpu&&(v.webgpu.powerPreference=`high-performance`);function y(){return v?.wasm?.proxy}i.env.backends.onnx=v},"./src/base/feature_extraction_utils.js":(e,t,n)=>{n.r(t),n.d(t,{FeatureExtractor:()=>o,validate_audio_inputs:()=>s});var r=n( +/*! ../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),a=n( +/*! ../utils/hub.js */ +`./src/utils/hub.js`);class o extends i.Callable{constructor(e){super(),this.config=e}static async from_pretrained(e,t={}){let n=await(0,a.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t);return new this(n)}}function s(e,t){if(!(e instanceof Float32Array||e instanceof Float64Array))throw Error(`${t} expects input to be a Float32Array or a Float64Array, but got ${e?.constructor?.name??typeof e} instead. If using the feature extractor directly, remember to use \`read_audio(url, sampling_rate)\` to obtain the raw audio data of the file/url.`)}},"./src/base/image_processors_utils.js":(e,t,n)=>{n.r(t),n.d(t,{ImageProcessor:()=>x,center_to_corners_format:()=>f,post_process_instance_segmentation:()=>b,post_process_object_detection:()=>p,post_process_panoptic_segmentation:()=>y,post_process_semantic_segmentation:()=>m});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../utils/maths.js */ +`./src/utils/maths.js`),o=n( +/*! ../utils/image.js */ +`./src/utils/image.js`),s=n( +/*! ../utils/core.js */ +`./src/utils/core.js`),c=n( +/*! ../utils/hub.js */ +`./src/utils/hub.js`),l=n( +/*! ../utils/constants.js */ +`./src/utils/constants.js`);function u(e,t,n=0,r=null){let i=e/t,o=(0,a.bankers_round)(i)*t;return r!==null&&o>r&&(o=Math.floor(i)*t),ot&&i.push(e)}else{let e=(0,a.max)(n.data)[1];if(e===l-1||(o=(0,a.softmax)(n.data),o[e]e*s[(t+1)%2])),d.boxes.push(n),d.classes.push(t),d.scores.push(o[t])}}u.push(d)}return u}function m(e,t=null){let n=e.logits,r=n.dims[0];if(t!==null&&t.length!==r)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let a=[];for(let e=0;eu[n]&&(u[n]=t[n],d[n]=e)}let f=Array(o.dims[0]);for(let e=0;ee!==void 0);a.push({segmentation:l,labels:p})}return a}function h(e,t,n,r){let i=[],o=[],s=[];for(let c=0;cn&&(i.push(u),o.push(p),s.push(d))}return[i,o,s]}function g(e,t,n,r=.5,i=.8){let a=[],o=0,s=0,c=t[n].data;for(let t=0;t=r&&++s;let l=o>0&&s>0;if(l){let e=o/s;l=e>i}return[l,a]}function _(e,t,n,r,a,o=null,s=null){let[c,l]=s??e[0].dims,u=new i.Tensor(`int32`,new Int32Array(c*l),[c,l]),d=[];if(s!==null)for(let t=0;tp[e]&&(f[e]=n,p[e]=i[e])}let m=0,h=u.data;for(let i=0;i200)throw Error(`absolute aspect ratio must be smaller than 200, got ${Math.max(e,t)/Math.min(e,t)}`);let a=Math.round(e/n)*n,o=Math.round(t/n)*n;if(a*o>i){let r=Math.sqrt(e*t/i);a=Math.floor(e/r/n)*n,o=Math.floor(t/r/n)*n}else if(a*oi?c=Math.floor(i*s/r):i>r&&(s=Math.floor(r*c/i)),await e.resize(c,s,{resample:n}))}async crop_margin(e,t=200){let n=e.clone().grayscale(),r=(0,a.min)(n.data)[0],i=(0,a.max)(n.data)[0],o=i-r;if(o===0)return e;let s=t/255,c=n.width,l=n.height,u=0,d=0,f=n.data;for(let e=0;ethis.preprocess(e))),r=(0,i.stack)(n.map(e=>e.pixel_values),0);return{pixel_values:r,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}static async from_pretrained(e,t={}){let n=await(0,c.getModelJSON)(e,l.IMAGE_PROCESSOR_NAME,!0,t);return new this(n)}}},"./src/base/processing_utils.js":(e,t,n)=>{n.r(t),n.d(t,{Processor:()=>o});var r=n( +/*! ../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),a=n( +/*! ../utils/hub.js */ +`./src/utils/hub.js`);class o extends i.Callable{static classes=[`image_processor_class`,`tokenizer_class`,`feature_extractor_class`];static uses_processor_config=!1;static uses_chat_template_file=!1;constructor(e,t,n){super(),this.config=e,this.components=t,this.chat_template=n}get image_processor(){return this.components.image_processor}get tokenizer(){return this.components.tokenizer}get feature_extractor(){return this.components.feature_extractor}apply_chat_template(e,t={}){if(!this.tokenizer)throw Error(`Unable to apply chat template without a tokenizer.`);return this.tokenizer.apply_chat_template(e,{tokenize:!1,chat_template:this.chat_template??void 0,...t})}batch_decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.batch_decode(...e)}decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.decode(...e)}async _call(e,...t){for(let n of[this.image_processor,this.feature_extractor,this.tokenizer])if(n)return n(e,...t);throw Error(`No image processor, feature extractor, or tokenizer found.`)}static async from_pretrained(e,t={}){let[n,i,o]=await Promise.all([this.uses_processor_config?(0,a.getModelJSON)(e,r.PROCESSOR_NAME,!0,t):{},Promise.all(this.classes.filter(e=>e in this).map(async n=>{let r=await this[n].from_pretrained(e,t);return[n.replace(/_class$/,``),r]})).then(Object.fromEntries),this.uses_chat_template_file?(0,a.getModelText)(e,r.CHAT_TEMPLATE_NAME,!0,t):null]);return new this(n,i,o)}}},"./src/configs.js":(e,t,n)=>{n.r(t),n.d(t,{AutoConfig:()=>l,PretrainedConfig:()=>c,getKeyValueShapes:()=>s});var r=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),i=n( +/*! ./utils/hub.js */ +`./src/utils/hub.js`);async function a(e,t){return await(0,i.getModelJSON)(e,`config.json`,!0,t)}function o(e){let t={},n={};switch(e.model_type){case`llava`:case`paligemma`:case`gemma3`:case`florence2`:case`llava_onevision`:case`idefics3`:case`ultravox`:case`smolvlm`:case`gemma3n`:n=o(e.text_config);break;case`moondream1`:n=o(e.phi_config);break;case`musicgen`:n=o(e.decoder);break;case`multi_modality`:n=o(e.language_config);break;case`gpt2`:case`gptj`:case`jais`:case`codegen`:case`gpt_bigcode`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`n_embd`;break;case`gpt_neox`:case`stablelm`:case`opt`:case`falcon`:t.num_heads=`num_attention_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`;break;case`llama`:case`olmo`:case`olmo2`:case`mobilellm`:case`granite`:case`cohere`:case`mistral`:case`starcoder2`:case`qwen2`:case`qwen2_vl`:case`phi`:case`phi3`:case`phi3_v`:case`llava_qwen2`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`,t.num_attention_heads=`num_attention_heads`;break;case`qwen3`:case`gemma`:case`gemma2`:case`gemma3_text`:case`gemma3n_text`:case`glm`:case`helium`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.dim_kv=`head_dim`;break;case`openelm`:t.num_heads=`num_kv_heads`,t.num_layers=`num_transformer_layers`,t.dim_kv=`head_dim`;break;case`gpt_neo`:case`donut-swin`:t.num_heads=`num_heads`,t.num_layers=`num_layers`,t.hidden_size=`hidden_size`;break;case`bloom`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`hidden_size`;break;case`mpt`:t.num_heads=`n_heads`,t.num_layers=`n_layers`,t.hidden_size=`d_model`;break;case`exaone`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_layers`,t.dim_kv=`head_dim`,t.num_attention_heads=`num_attention_heads`;break;case`t5`:case`mt5`:case`longt5`:t.num_decoder_layers=`num_decoder_layers`,t.num_decoder_heads=`num_heads`,t.decoder_dim_kv=`d_kv`,t.num_encoder_layers=`num_layers`,t.num_encoder_heads=`num_heads`,t.encoder_dim_kv=`d_kv`;break;case`bart`:case`mbart`:case`marian`:case`whisper`:case`lite-whisper`:case`m2m_100`:case`blenderbot`:case`blenderbot-small`:case`florence2_language`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`d_model`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`d_model`;break;case`speecht5`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`hidden_size`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`hidden_size`;break;case`trocr`:t.num_encoder_layers=t.num_decoder_layers=`decoder_layers`,t.num_encoder_heads=t.num_decoder_heads=`decoder_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`d_model`;break;case`musicgen_decoder`:t.num_encoder_layers=t.num_decoder_layers=`num_hidden_layers`,t.num_encoder_heads=t.num_decoder_heads=`num_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`moonshine`:t.num_decoder_layers=`decoder_num_hidden_layers`,t.num_decoder_heads=`decoder_num_key_value_heads`,t.num_encoder_layers=`encoder_num_hidden_layers`,t.num_encoder_heads=`encoder_num_key_value_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`vision-encoder-decoder`:let i=o(e.decoder),a=`num_decoder_layers`in i,s=(0,r.pick)(e,[`model_type`,`is_encoder_decoder`]);return a?(s.num_decoder_layers=i.num_decoder_layers,s.num_decoder_heads=i.num_decoder_heads,s.decoder_hidden_size=i.decoder_hidden_size,s.num_encoder_layers=i.num_encoder_layers,s.num_encoder_heads=i.num_encoder_heads,s.encoder_hidden_size=i.encoder_hidden_size):(s.num_layers=i.num_layers,s.num_heads=i.num_heads,s.hidden_size=i.hidden_size),s}let i={...n,...(0,r.pick)(e,[`model_type`,`multi_query`,`is_encoder_decoder`])};for(let n in t)i[n]=e[t[n]];return i}function s(e,{prefix:t=`past_key_values`,batch_size:n=1}={}){let r={},i=e.normalized_config;if(i.is_encoder_decoder&&`num_encoder_heads`in i&&`num_decoder_heads`in i){let e=i.encoder_dim_kv??i.encoder_hidden_size/i.num_encoder_heads,a=i.decoder_dim_kv??i.decoder_hidden_size/i.num_decoder_heads,o=[n,i.num_encoder_heads,0,e],s=[n,i.num_decoder_heads,0,a];for(let e=0;e{n.r(t),n.d(t,{apis:()=>v,env:()=>w});var r=n( +/*! node:fs */ +`?db59`),i=n( +/*! node:path */ +`?383f`),a=n( +/*! node:url */ +`?fa4b`);let o=`3.6.1`,s=typeof window<`u`&&window.document!==void 0,c=typeof self<`u`&&[`DedicatedWorkerGlobalScope`,`ServiceWorkerGlobalScope`,`SharedWorkerGlobalScope`].includes(self.constructor?.name),l=typeof self<`u`&&`caches`in self,u=typeof navigator<`u`&&`gpu`in navigator,d=typeof navigator<`u`&&`ml`in navigator,f=typeof process<`u`,p=f&&process?.release?.name===`node`,m=!T(r),h=!T(i),g=globalThis.Deno!==void 0,_=globalThis.Bun!==void 0,v=Object.freeze({IS_BROWSER_ENV:s,IS_WEBWORKER_ENV:c,IS_WEB_CACHE_AVAILABLE:l,IS_WEBGPU_AVAILABLE:u,IS_WEBNN_AVAILABLE:d,IS_PROCESS_AVAILABLE:f,IS_NODE_ENV:p,IS_FS_AVAILABLE:m,IS_PATH_AVAILABLE:h}),y=m&&h,b=`./`;if(y){let e=Object(af).url;e?b=i.dirname(i.dirname(a.fileURLToPath(e))):typeof __dirname<`u`&&(b=i.dirname(__dirname))}let x=y?i.join(b,`/.cache/`):null,S=`/models/`,C=y?i.join(b,S):S,w={version:o,backends:{onnx:{}},allowRemoteModels:!0,remoteHost:`https://huggingface.co/`,remotePathTemplate:`{model}/resolve/{revision}/`,allowLocalModels:!(s||c),localModelPath:C,useFS:m,useBrowserCache:l&&!g,useFSCache:m,cacheDir:x,useCustomCache:!1,customCache:null};function T(e){return Object.keys(e).length===0}},"./src/generation/configuration_utils.js":(e,t,n)=>{n.r(t),n.d(t,{GenerationConfig:()=>i});var r=n( +/*! ../utils/core.js */ +`./src/utils/core.js`);class i{max_length=20;max_new_tokens=null;min_length=0;min_new_tokens=null;early_stopping=!1;max_time=null;do_sample=!1;num_beams=1;num_beam_groups=1;penalty_alpha=null;use_cache=!0;temperature=1;top_k=50;top_p=1;typical_p=1;epsilon_cutoff=0;eta_cutoff=0;diversity_penalty=0;repetition_penalty=1;encoder_repetition_penalty=1;length_penalty=1;no_repeat_ngram_size=0;bad_words_ids=null;force_words_ids=null;renormalize_logits=!1;constraints=null;forced_bos_token_id=null;forced_eos_token_id=null;remove_invalid_values=!1;exponential_decay_length_penalty=null;suppress_tokens=null;streamer=null;begin_suppress_tokens=null;forced_decoder_ids=null;guidance_scale=null;num_return_sequences=1;output_attentions=!1;output_hidden_states=!1;output_scores=!1;return_dict_in_generate=!1;pad_token_id=null;bos_token_id=null;eos_token_id=null;encoder_no_repeat_ngram_size=0;decoder_start_token_id=null;generation_kwargs={};constructor(e){Object.assign(this,(0,r.pick)(e,Object.getOwnPropertyNames(this)))}}},"./src/generation/logits_process.js":(e,t,n)=>{n.r(t),n.d(t,{ClassifierFreeGuidanceLogitsProcessor:()=>v,ForcedBOSTokenLogitsProcessor:()=>l,ForcedEOSTokenLogitsProcessor:()=>u,LogitsProcessor:()=>o,LogitsProcessorList:()=>c,LogitsWarper:()=>s,MinLengthLogitsProcessor:()=>h,MinNewTokensLengthLogitsProcessor:()=>g,NoBadWordsLogitsProcessor:()=>_,NoRepeatNGramLogitsProcessor:()=>p,RepetitionPenaltyLogitsProcessor:()=>m,SuppressTokensAtBeginLogitsProcessor:()=>d,TemperatureLogitsWarper:()=>y,TopKLogitsWarper:()=>x,TopPLogitsWarper:()=>b,WhisperTimeStampLogitsProcessor:()=>f});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../utils/maths.js */ +`./src/utils/maths.js`);class o extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class s extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class c extends r.Callable{constructor(){super(),this.processors=[]}push(e){this.processors.push(e)}extend(e){this.processors.push(...e)}_call(e,t){let n=t;for(let t of this.processors)n=t(e,n);return n}[Symbol.iterator](){return this.processors.values()}}class l extends o{constructor(e){super(),this.bos_token_id=e}_call(e,t){for(let n=0;n=1&&i[i.length-1]>=this.timestamp_begin,s=i.length<2||i[i.length-2]>=this.timestamp_begin;if(o&&(s?r.subarray(this.timestamp_begin).fill(-1/0):r.subarray(0,this.eos_token_id).fill(-1/0)),e[n].length===this.begin_index&&this.max_initial_timestamp_index!==null){let e=this.timestamp_begin+this.max_initial_timestamp_index;r.subarray(e+1).fill(-1/0)}let c=(0,a.log_softmax)(r),l=Math.log(c.subarray(this.timestamp_begin).map(Math.exp).reduce((e,t)=>e+t)),u=(0,a.max)(c.subarray(0,this.timestamp_begin))[0];l>u&&r.subarray(0,this.timestamp_begin).fill(-1/0)}return t}}class p extends o{constructor(e){super(),this.no_repeat_ngram_size=e}getNgrams(e){let t=e.length,n=[];for(let r=0;r1 to use the classifier free guidance processor, got guidance scale ${e}.`);this.guidance_scale=e}_call(e,t){if(t.dims[0]!==2*e.length)throw Error(`Logits should have twice the batch size of the input ids, the first half of batches corresponding to the conditional inputs, and the second half of batches corresponding to the unconditional inputs. Got batch size ${t.dims[0]} for the logits and ${e.length} for the input ids.`);let n=e.length,r=t.slice([0,n],null),i=t.slice([n,t.dims[0]],null);for(let e=0;e1)throw Error(`\`top_p\` must be a float > 0 and < 1, but is ${e}`);if(!Number.isInteger(n)||n<1)throw Error(`\`min_tokens_to_keep\` must be a positive integer, but is ${n}`);this.top_p=e,this.filter_value=t,this.min_tokens_to_keep=n}}class x extends s{constructor(e,{filter_value:t=-1/0,min_tokens_to_keep:n=1}={}){if(super(),!Number.isInteger(e)||e<0)throw Error(`\`top_k\` must be a positive integer, but is ${e}`);this.top_k=Math.max(e,n),this.filter_value=t}}},"./src/generation/logits_sampler.js":(e,t,n)=>{n.r(t),n.d(t,{LogitsSampler:()=>s});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../utils/maths.js */ +`./src/utils/maths.js`),o=n( +/*! ../generation/configuration_utils.js */ +`./src/generation/configuration_utils.js`);class s extends r.Callable{constructor(e){super(),this.generation_config=e}async _call(e){return this.sample(e)}async sample(e){throw Error(`sample should be implemented in subclasses.`)}getLogits(e,t){let n=e.dims.at(-1),r=e.data;if(t===-1)r=r.slice(-n);else{let e=t*n;r=r.slice(e,e+n)}return r}randomSelect(e){let t=0;for(let n=0;n1)return new u(e);if(e.num_return_sequences>1)throw Error(`num_return_sequences has to be 1 when doing greedy search, but is ${e.num_return_sequences}.`);return new c(e)}}class c extends s{async sample(e){let t=(0,a.max)(e.data)[1];return[[BigInt(t),0]]}}class l extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},()=>{let e=this.randomSelect(o);return[r.data[e],Math.log(o[e])]})}}class u extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},(e,t)=>[r.data[t],Math.log(o[t])])}}},"./src/generation/stopping_criteria.js":(e,t,n)=>{n.r(t),n.d(t,{EosTokenCriteria:()=>s,InterruptableStoppingCriteria:()=>c,MaxLengthCriteria:()=>o,StoppingCriteria:()=>i,StoppingCriteriaList:()=>a});var r=n( +/*! ../utils/generic.js */ +`./src/utils/generic.js`);class i extends r.Callable{_call(e,t){throw Error(`StoppingCriteria needs to be subclassed`)}}class a extends r.Callable{constructor(){super(),this.criteria=[]}push(e){this.criteria.push(e)}extend(e){e instanceof a?e=e.criteria:e instanceof i&&(e=[e]),this.criteria.push(...e)}_call(e,t){let n=Array(e.length).fill(!1);for(let r of this.criteria){let i=r(e,t);for(let e=0;ee.length>=this.max_length)}}class s extends i{constructor(e){super(),Array.isArray(e)||(e=[e]),this.eos_token_id=e}_call(e,t){return e.map(e=>{let t=e.at(-1);return this.eos_token_id.some(e=>t==e)})}}class c extends i{constructor(){super(),this.interrupted=!1}interrupt(){this.interrupted=!0}reset(){this.interrupted=!1}_call(e,t){return Array(e.length).fill(this.interrupted)}}},"./src/generation/streamers.js":(e,t,n)=>{n.r(t),n.d(t,{BaseStreamer:()=>o,TextStreamer:()=>c,WhisperTextStreamer:()=>l});var r=n( +/*! ../utils/core.js */ +`./src/utils/core.js`),i=n( +/*! ../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../env.js */ +`./src/env.js`);class o{put(e){throw Error(`Not implemented`)}end(){throw Error(`Not implemented`)}}let s=a.apis.IS_PROCESS_AVAILABLE?e=>process.stdout.write(e):e=>console.log(e);class c extends o{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,skip_special_tokens:i=!0,decode_kwargs:a={},...o}={}){super(),this.tokenizer=e,this.skip_prompt=t,this.callback_function=n??s,this.token_callback_function=r,this.decode_kwargs={skip_special_tokens:i,...a,...o},this.token_cache=[],this.print_len=0,this.next_tokens_are_prompt=!0}put(e){if(e.length>1)throw Error(`TextStreamer only supports batch size of 1`);let t=this.next_tokens_are_prompt;if(t&&(this.next_tokens_are_prompt=!1,this.skip_prompt))return;let n=e[0];this.token_callback_function?.(n),this.token_cache=(0,r.mergeArrays)(this.token_cache,n);let a=this.tokenizer.decode(this.token_cache,this.decode_kwargs),o;t||a.endsWith(` +`)?(o=a.slice(this.print_len),this.token_cache=[],this.print_len=0):a.length>0&&(0,i.is_chinese_char)(a.charCodeAt(a.length-1))?(o=a.slice(this.print_len),this.print_len+=o.length):(o=a.slice(this.print_len,a.lastIndexOf(` `)+1),this.print_len+=o.length),this.on_finalized_text(o,!1)}end(){let e;if(this.token_cache.length>0){let t=this.tokenizer.decode(this.token_cache,this.decode_kwargs);e=t.slice(this.print_len),this.token_cache=[],this.print_len=0}else e=``;this.next_tokens_are_prompt=!0,this.on_finalized_text(e,!0)}on_finalized_text(e,t){e.length>0&&this.callback_function?.(e),t&&this.callback_function===s&&a.apis.IS_PROCESS_AVAILABLE&&this.callback_function?.(` +`)}}class l extends c{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,on_chunk_start:i=null,on_chunk_end:a=null,on_finalize:o=null,time_precision:s=.02,skip_special_tokens:c=!0,decode_kwargs:l={}}={}){super(e,{skip_prompt:t,skip_special_tokens:c,callback_function:n,token_callback_function:r,decode_kwargs:l}),this.timestamp_begin=e.timestamp_begin,this.on_chunk_start=i,this.on_chunk_end=a,this.on_finalize=o,this.time_precision=s,this.waiting_for_timestamp=!1}put(e){if(e.length>1)throw Error(`WhisperTextStreamer only supports batch size of 1`);let t=e[0];if(t.length===1){let e=Number(t[0])-this.timestamp_begin;if(e>=0){let n=e*this.time_precision;this.waiting_for_timestamp?this.on_chunk_end?.(n):this.on_chunk_start?.(n),this.waiting_for_timestamp=!this.waiting_for_timestamp,this.token_callback_function?.(t);return}}return super.put(e)}end(){super.end(),this.on_finalize?.()}}},"./src/models.js":(e,t,n)=>{n.r(t),n.d(t,{ASTForAudioClassification:()=>jn,ASTModel:()=>An,ASTPreTrainedModel:()=>kn,AlbertForMaskedLM:()=>Ut,AlbertForQuestionAnswering:()=>Ht,AlbertForSequenceClassification:()=>Vt,AlbertModel:()=>Bt,AlbertPreTrainedModel:()=>zt,AutoModel:()=>lu,AutoModelForAudioClassification:()=>Ou,AutoModelForAudioFrameClassification:()=>Au,AutoModelForAudioTextToText:()=>zu,AutoModelForCTC:()=>Du,AutoModelForCausalLM:()=>gu,AutoModelForDepthEstimation:()=>Pu,AutoModelForDocumentQuestionAnswering:()=>ju,AutoModelForImageClassification:()=>bu,AutoModelForImageFeatureExtraction:()=>Lu,AutoModelForImageMatting:()=>Mu,AutoModelForImageSegmentation:()=>xu,AutoModelForImageTextToText:()=>Ru,AutoModelForImageToImage:()=>Nu,AutoModelForMaskGeneration:()=>Eu,AutoModelForMaskedLM:()=>_u,AutoModelForNormalEstimation:()=>Fu,AutoModelForObjectDetection:()=>wu,AutoModelForPoseEstimation:()=>Iu,AutoModelForQuestionAnswering:()=>vu,AutoModelForSemanticSegmentation:()=>Su,AutoModelForSeq2SeqLM:()=>fu,AutoModelForSequenceClassification:()=>uu,AutoModelForSpeechSeq2Seq:()=>pu,AutoModelForTextToSpectrogram:()=>mu,AutoModelForTextToWaveform:()=>hu,AutoModelForTokenClassification:()=>du,AutoModelForUniversalSegmentation:()=>Cu,AutoModelForVision2Seq:()=>yu,AutoModelForXVector:()=>ku,AutoModelForZeroShotObjectDetection:()=>Tu,BartForConditionalGeneration:()=>tn,BartForSequenceClassification:()=>nn,BartModel:()=>en,BartPretrainedModel:()=>$t,BaseModelOutput:()=>me,BeitForImageClassification:()=>Da,BeitModel:()=>Ea,BeitPreTrainedModel:()=>Ta,BertForMaskedLM:()=>_e,BertForQuestionAnswering:()=>ye,BertForSequenceClassification:()=>ve,BertForTokenClassification:()=>L,BertModel:()=>ge,BertPreTrainedModel:()=>he,BlenderbotForConditionalGeneration:()=>un,BlenderbotModel:()=>ln,BlenderbotPreTrainedModel:()=>cn,BlenderbotSmallForConditionalGeneration:()=>H,BlenderbotSmallModel:()=>fn,BlenderbotSmallPreTrainedModel:()=>dn,BloomForCausalLM:()=>Li,BloomModel:()=>Ii,BloomPreTrainedModel:()=>Fi,CLIPModel:()=>nr,CLIPPreTrainedModel:()=>tr,CLIPSegForImageSegmentation:()=>mr,CLIPSegModel:()=>pr,CLIPSegPreTrainedModel:()=>X,CLIPTextModel:()=>rr,CLIPTextModelWithProjection:()=>ir,CLIPVisionModel:()=>K,CLIPVisionModelWithProjection:()=>ar,CamembertForMaskedLM:()=>Xe,CamembertForQuestionAnswering:()=>$e,CamembertForSequenceClassification:()=>Ze,CamembertForTokenClassification:()=>Qe,CamembertModel:()=>Ye,CamembertPreTrainedModel:()=>Je,CausalLMOutput:()=>Gu,CausalLMOutputWithPast:()=>Ku,ChineseCLIPModel:()=>lr,ChineseCLIPPreTrainedModel:()=>cr,ClapAudioModelWithProjection:()=>mc,ClapModel:()=>fc,ClapPreTrainedModel:()=>dc,ClapTextModelWithProjection:()=>pc,CodeGenForCausalLM:()=>Fr,CodeGenModel:()=>Pr,CodeGenPreTrainedModel:()=>Nr,CohereForCausalLM:()=>ci,CohereModel:()=>si,CoherePreTrainedModel:()=>oi,ConvBertForMaskedLM:()=>Be,ConvBertForQuestionAnswering:()=>He,ConvBertForSequenceClassification:()=>z,ConvBertForTokenClassification:()=>Ve,ConvBertModel:()=>ze,ConvBertPreTrainedModel:()=>Re,ConvNextForImageClassification:()=>Vo,ConvNextModel:()=>Bo,ConvNextPreTrainedModel:()=>zo,ConvNextV2ForImageClassification:()=>Wo,ConvNextV2Model:()=>Uo,ConvNextV2PreTrainedModel:()=>Ho,DFineForObjectDetection:()=>Ja,DFineModel:()=>qa,DFinePreTrainedModel:()=>Ka,DPTForDepthEstimation:()=>vo,DPTModel:()=>_o,DPTPreTrainedModel:()=>go,DacDecoderModel:()=>yl,DacDecoderOutput:()=>gl,DacEncoderModel:()=>vl,DacEncoderOutput:()=>hl,DacModel:()=>_l,DacPreTrainedModel:()=>ml,DebertaForMaskedLM:()=>nt,DebertaForQuestionAnswering:()=>at,DebertaForSequenceClassification:()=>rt,DebertaForTokenClassification:()=>it,DebertaModel:()=>tt,DebertaPreTrainedModel:()=>et,DebertaV2ForMaskedLM:()=>ct,DebertaV2ForQuestionAnswering:()=>dt,DebertaV2ForSequenceClassification:()=>lt,DebertaV2ForTokenClassification:()=>ut,DebertaV2Model:()=>st,DebertaV2PreTrainedModel:()=>ot,DecisionTransformerModel:()=>Jc,DecisionTransformerPreTrainedModel:()=>qc,DeiTForImageClassification:()=>to,DeiTModel:()=>eo,DeiTPreTrainedModel:()=>$a,DepthAnythingForDepthEstimation:()=>bo,DepthAnythingPreTrainedModel:()=>yo,DepthProForDepthEstimation:()=>Eo,DepthProPreTrainedModel:()=>To,DetrForObjectDetection:()=>Aa,DetrForSegmentation:()=>ja,DetrModel:()=>ka,DetrObjectDetectionOutput:()=>Ma,DetrPreTrainedModel:()=>Oa,DetrSegmentationOutput:()=>Na,Dinov2ForImageClassification:()=>qo,Dinov2Model:()=>Ko,Dinov2PreTrainedModel:()=>Go,Dinov2WithRegistersForImageClassification:()=>Xo,Dinov2WithRegistersModel:()=>Yo,Dinov2WithRegistersPreTrainedModel:()=>Jo,DistilBertForMaskedLM:()=>_t,DistilBertForQuestionAnswering:()=>gt,DistilBertForSequenceClassification:()=>mt,DistilBertForTokenClassification:()=>ht,DistilBertModel:()=>pt,DistilBertPreTrainedModel:()=>ft,DonutSwinModel:()=>Ro,DonutSwinPreTrainedModel:()=>Lo,EfficientNetForImageClassification:()=>Ec,EfficientNetModel:()=>Tc,EfficientNetPreTrainedModel:()=>wc,ElectraForMaskedLM:()=>We,ElectraForQuestionAnswering:()=>qe,ElectraForSequenceClassification:()=>Ge,ElectraForTokenClassification:()=>Ke,ElectraModel:()=>Ue,ElectraPreTrainedModel:()=>B,EsmForMaskedLM:()=>bt,EsmForSequenceClassification:()=>xt,EsmForTokenClassification:()=>St,EsmModel:()=>yt,EsmPreTrainedModel:()=>vt,ExaoneForCausalLM:()=>qr,ExaoneModel:()=>Kr,ExaonePreTrainedModel:()=>Gr,FalconForCausalLM:()=>uc,FalconModel:()=>lc,FalconPreTrainedModel:()=>cc,FastViTForImageClassification:()=>ua,FastViTModel:()=>la,FastViTPreTrainedModel:()=>ca,Florence2ForConditionalGeneration:()=>Gn,Florence2PreTrainedModel:()=>Wn,GLPNForDepthEstimation:()=>Io,GLPNModel:()=>Fo,GLPNPreTrainedModel:()=>Po,GPT2LMHeadModel:()=>_r,GPT2Model:()=>gr,GPT2PreTrainedModel:()=>hr,GPTBigCodeForCausalLM:()=>Mr,GPTBigCodeModel:()=>jr,GPTBigCodePreTrainedModel:()=>Ar,GPTJForCausalLM:()=>kr,GPTJModel:()=>Or,GPTJPreTrainedModel:()=>Dr,GPTNeoForCausalLM:()=>Cr,GPTNeoModel:()=>Sr,GPTNeoPreTrainedModel:()=>xr,GPTNeoXForCausalLM:()=>Er,GPTNeoXModel:()=>Tr,GPTNeoXPreTrainedModel:()=>wr,Gemma2ForCausalLM:()=>mi,Gemma2Model:()=>pi,Gemma2PreTrainedModel:()=>fi,Gemma3ForCausalLM:()=>_i,Gemma3Model:()=>gi,Gemma3PreTrainedModel:()=>hi,Gemma3nForConditionalGeneration:()=>Xn,Gemma3nPreTrainedModel:()=>Yn,GemmaForCausalLM:()=>di,GemmaModel:()=>ui,GemmaPreTrainedModel:()=>li,GlmForCausalLM:()=>Wr,GlmModel:()=>Ur,GlmPreTrainedModel:()=>Hr,GraniteForCausalLM:()=>ai,GraniteModel:()=>ii,GranitePreTrainedModel:()=>ri,GroundingDinoForObjectDetection:()=>Qo,GroundingDinoPreTrainedModel:()=>Zo,GroupViTModel:()=>sa,GroupViTPreTrainedModel:()=>oa,HeliumForCausalLM:()=>Vr,HeliumModel:()=>Br,HeliumPreTrainedModel:()=>zr,HieraForImageClassification:()=>io,HieraModel:()=>ro,HieraPreTrainedModel:()=>no,HubertForCTC:()=>zs,HubertForSequenceClassification:()=>Bs,HubertModel:()=>Rs,HubertPreTrainedModel:()=>Ls,IJepaForImageClassification:()=>Yi,IJepaModel:()=>Ji,IJepaPreTrainedModel:()=>qi,Idefics3ForConditionalGeneration:()=>Qn,Idefics3PreTrainedModel:()=>Zn,ImageMattingOutput:()=>qu,JAISLMHeadModel:()=>br,JAISModel:()=>yr,JAISPreTrainedModel:()=>vr,JinaCLIPModel:()=>ur,JinaCLIPPreTrainedModel:()=>Y,JinaCLIPTextModel:()=>dr,JinaCLIPVisionModel:()=>fr,LiteWhisperForConditionalGeneration:()=>Fn,LlamaForCausalLM:()=>Rr,LlamaModel:()=>Lr,LlamaPreTrainedModel:()=>Ir,LlavaForConditionalGeneration:()=>Vn,LlavaOnevisionForConditionalGeneration:()=>Hn,LlavaPreTrainedModel:()=>Bn,LlavaQwen2ForCausalLM:()=>Jn,LongT5ForConditionalGeneration:()=>Yt,LongT5Model:()=>Jt,LongT5PreTrainedModel:()=>qt,M2M100ForConditionalGeneration:()=>ps,M2M100Model:()=>fs,M2M100PreTrainedModel:()=>ds,MBartForCausalLM:()=>sn,MBartForConditionalGeneration:()=>an,MBartForSequenceClassification:()=>on,MBartModel:()=>V,MBartPreTrainedModel:()=>rn,MPNetForMaskedLM:()=>At,MPNetForQuestionAnswering:()=>Nt,MPNetForSequenceClassification:()=>jt,MPNetForTokenClassification:()=>Mt,MPNetModel:()=>kt,MPNetPreTrainedModel:()=>Ot,MT5ForConditionalGeneration:()=>Qt,MT5Model:()=>Zt,MT5PreTrainedModel:()=>Xt,MarianMTModel:()=>us,MarianModel:()=>ls,MarianPreTrainedModel:()=>cs,MaskFormerForInstanceSegmentation:()=>No,MaskFormerModel:()=>Mo,MaskFormerPreTrainedModel:()=>jo,MaskedLMOutput:()=>Uu,Metric3DForDepthEstimation:()=>Oo,Metric3DPreTrainedModel:()=>Do,Metric3Dv2ForDepthEstimation:()=>Ao,Metric3Dv2PreTrainedModel:()=>ko,MgpstrForSceneTextRecognition:()=>$c,MgpstrModelOutput:()=>Zc,MgpstrPreTrainedModel:()=>Qc,MimiDecoderModel:()=>pl,MimiDecoderOutput:()=>ul,MimiEncoderModel:()=>fl,MimiEncoderOutput:()=>ll,MimiModel:()=>dl,MimiPreTrainedModel:()=>cl,MistralForCausalLM:()=>ic,MistralModel:()=>rc,MistralPreTrainedModel:()=>nc,MobileBertForMaskedLM:()=>Tt,MobileBertForQuestionAnswering:()=>Dt,MobileBertForSequenceClassification:()=>Et,MobileBertModel:()=>wt,MobileBertPreTrainedModel:()=>Ct,MobileLLMForCausalLM:()=>Xr,MobileLLMModel:()=>Yr,MobileLLMPreTrainedModel:()=>Jr,MobileNetV1ForImageClassification:()=>Nc,MobileNetV1ForSemanticSegmentation:()=>Pc,MobileNetV1Model:()=>Mc,MobileNetV1PreTrainedModel:()=>jc,MobileNetV2ForImageClassification:()=>Lc,MobileNetV2ForSemanticSegmentation:()=>Rc,MobileNetV2Model:()=>Ic,MobileNetV2PreTrainedModel:()=>Fc,MobileNetV3ForImageClassification:()=>Vc,MobileNetV3ForSemanticSegmentation:()=>Hc,MobileNetV3Model:()=>Bc,MobileNetV3PreTrainedModel:()=>zc,MobileNetV4ForImageClassification:()=>Gc,MobileNetV4ForSemanticSegmentation:()=>Kc,MobileNetV4Model:()=>Wc,MobileNetV4PreTrainedModel:()=>Uc,MobileViTForImageClassification:()=>ha,MobileViTModel:()=>ma,MobileViTPreTrainedModel:()=>pa,MobileViTV2ForImageClassification:()=>va,MobileViTV2Model:()=>_a,MobileViTV2PreTrainedModel:()=>ga,ModelOutput:()=>pe,ModernBertForMaskedLM:()=>Oe,ModernBertForSequenceClassification:()=>ke,ModernBertForTokenClassification:()=>Ae,ModernBertModel:()=>De,ModernBertPreTrainedModel:()=>Ee,Moondream1ForConditionalGeneration:()=>Un,MoonshineForConditionalGeneration:()=>Rn,MoonshineModel:()=>Ln,MoonshinePreTrainedModel:()=>In,MptForCausalLM:()=>Bi,MptModel:()=>zi,MptPreTrainedModel:()=>Ri,MultiModalityCausalLM:()=>Xc,MultiModalityPreTrainedModel:()=>Yc,MusicgenForCausalLM:()=>kc,MusicgenForConditionalGeneration:()=>Ac,MusicgenModel:()=>Oc,MusicgenPreTrainedModel:()=>Dc,NeoBertForMaskedLM:()=>Se,NeoBertForQuestionAnswering:()=>Te,NeoBertForSequenceClassification:()=>Ce,NeoBertForTokenClassification:()=>we,NeoBertModel:()=>xe,NeoBertPreTrainedModel:()=>be,NomicBertModel:()=>Me,NomicBertPreTrainedModel:()=>je,OPTForCausalLM:()=>Ui,OPTModel:()=>Hi,OPTPreTrainedModel:()=>Vi,Olmo2ForCausalLM:()=>ni,Olmo2Model:()=>ti,Olmo2PreTrainedModel:()=>ei,OlmoForCausalLM:()=>$r,OlmoModel:()=>Qr,OlmoPreTrainedModel:()=>Zr,OpenELMForCausalLM:()=>bi,OpenELMModel:()=>yi,OpenELMPreTrainedModel:()=>vi,OwlViTForObjectDetection:()=>xa,OwlViTModel:()=>ba,OwlViTPreTrainedModel:()=>ya,Owlv2ForObjectDetection:()=>wa,Owlv2Model:()=>Ca,Owlv2PreTrainedModel:()=>Sa,PaliGemmaForConditionalGeneration:()=>qn,PaliGemmaPreTrainedModel:()=>Kn,PatchTSMixerForPrediction:()=>al,PatchTSMixerModel:()=>il,PatchTSMixerPreTrainedModel:()=>rl,PatchTSTForPrediction:()=>nl,PatchTSTModel:()=>tl,PatchTSTPreTrainedModel:()=>el,Phi3ForCausalLM:()=>Pi,Phi3Model:()=>Ni,Phi3PreTrainedModel:()=>Mi,Phi3VForCausalLM:()=>G,Phi3VPreTrainedModel:()=>er,PhiForCausalLM:()=>ji,PhiModel:()=>Ai,PhiPreTrainedModel:()=>ki,PreTrainedModel:()=>I,PretrainedMixin:()=>Z,PvtForImageClassification:()=>ea,PvtModel:()=>$i,PvtPreTrainedModel:()=>Qi,PyAnnoteForAudioFrameClassification:()=>xs,PyAnnoteModel:()=>bs,PyAnnotePreTrainedModel:()=>ys,QuestionAnsweringModelOutput:()=>Wu,Qwen2ForCausalLM:()=>Ci,Qwen2Model:()=>Si,Qwen2PreTrainedModel:()=>xi,Qwen2VLForConditionalGeneration:()=>Oi,Qwen2VLPreTrainedModel:()=>Di,Qwen3ForCausalLM:()=>Ei,Qwen3Model:()=>Ti,Qwen3PreTrainedModel:()=>wi,RFDetrForObjectDetection:()=>Wa,RFDetrModel:()=>Ua,RFDetrObjectDetectionOutput:()=>Ga,RFDetrPreTrainedModel:()=>Ha,RTDetrForObjectDetection:()=>Ia,RTDetrModel:()=>Fa,RTDetrObjectDetectionOutput:()=>La,RTDetrPreTrainedModel:()=>Pa,RTDetrV2ForObjectDetection:()=>Ba,RTDetrV2Model:()=>za,RTDetrV2ObjectDetectionOutput:()=>Va,RTDetrV2PreTrainedModel:()=>Ra,ResNetForImageClassification:()=>so,ResNetModel:()=>oo,ResNetPreTrainedModel:()=>ao,RoFormerForMaskedLM:()=>Pe,RoFormerForQuestionAnswering:()=>Le,RoFormerForSequenceClassification:()=>Fe,RoFormerForTokenClassification:()=>Ie,RoFormerModel:()=>R,RoFormerPreTrainedModel:()=>Ne,RobertaForMaskedLM:()=>hn,RobertaForQuestionAnswering:()=>_n,RobertaForSequenceClassification:()=>U,RobertaForTokenClassification:()=>gn,RobertaModel:()=>mn,RobertaPreTrainedModel:()=>pn,SamImageSegmentationOutput:()=>ss,SamModel:()=>os,SamPreTrainedModel:()=>rs,SapiensForDepthEstimation:()=>Co,SapiensForNormalEstimation:()=>wo,SapiensForSemanticSegmentation:()=>So,SapiensPreTrainedModel:()=>xo,SegformerForImageClassification:()=>yc,SegformerForSemanticSegmentation:()=>bc,SegformerModel:()=>vc,SegformerPreTrainedModel:()=>_c,Seq2SeqLMOutput:()=>Bu,SequenceClassifierOutput:()=>Q,SiglipModel:()=>J,SiglipPreTrainedModel:()=>q,SiglipTextModel:()=>or,SiglipVisionModel:()=>sr,SmolVLMForConditionalGeneration:()=>$n,SnacDecoderModel:()=>Cl,SnacEncoderModel:()=>Sl,SnacModel:()=>xl,SnacPreTrainedModel:()=>bl,SpeechT5ForSpeechToText:()=>Zs,SpeechT5ForTextToSpeech:()=>Qs,SpeechT5HifiGan:()=>$s,SpeechT5Model:()=>Xs,SpeechT5PreTrainedModel:()=>Ys,SqueezeBertForMaskedLM:()=>It,SqueezeBertForQuestionAnswering:()=>Rt,SqueezeBertForSequenceClassification:()=>Lt,SqueezeBertModel:()=>Ft,SqueezeBertPreTrainedModel:()=>Pt,StableLmForCausalLM:()=>Cc,StableLmModel:()=>Sc,StableLmPreTrainedModel:()=>xc,Starcoder2ForCausalLM:()=>sc,Starcoder2Model:()=>oc,Starcoder2PreTrainedModel:()=>ac,StyleTextToSpeech2Model:()=>Js,StyleTextToSpeech2PreTrainedModel:()=>qs,Swin2SRForImageSuperResolution:()=>ho,Swin2SRModel:()=>mo,Swin2SRPreTrainedModel:()=>po,SwinForImageClassification:()=>uo,SwinForSemanticSegmentation:()=>fo,SwinModel:()=>lo,SwinPreTrainedModel:()=>co,T5ForConditionalGeneration:()=>Kt,T5Model:()=>Gt,T5PreTrainedModel:()=>Wt,TableTransformerForObjectDetection:()=>Za,TableTransformerModel:()=>Xa,TableTransformerObjectDetectionOutput:()=>Qa,TableTransformerPreTrainedModel:()=>Ya,TokenClassifierOutput:()=>Hu,TrOCRForCausalLM:()=>tc,TrOCRPreTrainedModel:()=>ec,UltravoxModel:()=>sl,UltravoxPreTrainedModel:()=>ol,UniSpeechForCTC:()=>Es,UniSpeechForSequenceClassification:()=>Ds,UniSpeechModel:()=>Ts,UniSpeechPreTrainedModel:()=>ws,UniSpeechSatForAudioFrameClassification:()=>Ms,UniSpeechSatForCTC:()=>As,UniSpeechSatForSequenceClassification:()=>js,UniSpeechSatModel:()=>ks,UniSpeechSatPreTrainedModel:()=>Os,ViTForImageClassification:()=>Ki,ViTMAEModel:()=>na,ViTMAEPreTrainedModel:()=>ta,ViTMSNForImageClassification:()=>aa,ViTMSNModel:()=>ia,ViTMSNPreTrainedModel:()=>ra,ViTModel:()=>Gi,ViTPreTrainedModel:()=>Wi,VisionEncoderDecoderModel:()=>zn,VitMatteForImageMatting:()=>fa,VitMattePreTrainedModel:()=>da,VitPoseForPoseEstimation:()=>Zi,VitPosePreTrainedModel:()=>Xi,VitsModel:()=>gc,VitsModelOutput:()=>Ju,VitsPreTrainedModel:()=>hc,Wav2Vec2BertForCTC:()=>Fs,Wav2Vec2BertForSequenceClassification:()=>Is,Wav2Vec2BertModel:()=>Ps,Wav2Vec2BertPreTrainedModel:()=>Ns,Wav2Vec2ForAudioFrameClassification:()=>vs,Wav2Vec2ForCTC:()=>gs,Wav2Vec2ForSequenceClassification:()=>_s,Wav2Vec2Model:()=>hs,Wav2Vec2PreTrainedModel:()=>ms,WavLMForAudioFrameClassification:()=>Ks,WavLMForCTC:()=>Us,WavLMForSequenceClassification:()=>Ws,WavLMForXVector:()=>Gs,WavLMModel:()=>Hs,WavLMPreTrainedModel:()=>Vs,WeSpeakerResNetModel:()=>Cs,WeSpeakerResNetPreTrainedModel:()=>Ss,WhisperForConditionalGeneration:()=>Pn,WhisperModel:()=>Nn,WhisperPreTrainedModel:()=>Mn,XLMForQuestionAnswering:()=>Sn,XLMForSequenceClassification:()=>bn,XLMForTokenClassification:()=>xn,XLMModel:()=>yn,XLMPreTrainedModel:()=>vn,XLMRobertaForMaskedLM:()=>Tn,XLMRobertaForQuestionAnswering:()=>On,XLMRobertaForSequenceClassification:()=>En,XLMRobertaForTokenClassification:()=>Dn,XLMRobertaModel:()=>wn,XLMRobertaPreTrainedModel:()=>Cn,XLMWithLMHeadModel:()=>W,XVectorOutput:()=>Vu,YolosForObjectDetection:()=>ts,YolosModel:()=>es,YolosObjectDetectionOutput:()=>ns,YolosPreTrainedModel:()=>$o});var r=n( +/*! ./configs.js */ +`./src/configs.js`),i=n( +/*! ./backends/onnx.js */ +`./src/backends/onnx.js`),a=n( +/*! ./utils/dtypes.js */ +`./src/utils/dtypes.js`),o=n( +/*! ./utils/generic.js */ +`./src/utils/generic.js`),s=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),c=n( +/*! ./utils/hub.js */ +`./src/utils/hub.js`),l=n( +/*! ./utils/constants.js */ +`./src/utils/constants.js`),u=n( +/*! ./generation/logits_process.js */ +`./src/generation/logits_process.js`),d=n( +/*! ./generation/configuration_utils.js */ +`./src/generation/configuration_utils.js`),f=n( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),p=n( +/*! ./utils/image.js */ +`./src/utils/image.js`),m=n( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),h=n( +/*! ./generation/stopping_criteria.js */ +`./src/generation/stopping_criteria.js`),g=n( +/*! ./generation/logits_sampler.js */ +`./src/generation/logits_sampler.js`),_=n( +/*! ./env.js */ +`./src/env.js`),v=n( +/*! ./models/whisper/generation_whisper.js */ +`./src/models/whisper/generation_whisper.js`),y=n( +/*! ./models/whisper/common_whisper.js */ +`./src/models/whisper/common_whisper.js`);let b={EncoderOnly:0,EncoderDecoder:1,Seq2Seq:2,Vision2Seq:3,DecoderOnly:4,MaskGeneration:5,ImageTextToText:6,Musicgen:7,MultiModality:8,Phi3V:9,AudioTextToText:10,AutoEncoder:11,ImageAudioTextToText:12},x=new Map,S=new Map,C=new Map;async function w(e,t,n){let o=n.config?.[`transformers.js_config`]??{},s=n.device??o.device;s&&typeof s!=`string`&&(s.hasOwnProperty(t)?s=s[t]:(console.warn(`device not specified for "${t}". Using the default device.`),s=null));let l=s??(_.apis.IS_NODE_ENV?`cpu`:`wasm`),u=(0,i.deviceToExecutionProviders)(l),d=o.device_config??{};d.hasOwnProperty(l)&&(o={...o,...d[l]});let f=n.dtype??o.dtype;if(typeof f!=`string`&&(f&&f.hasOwnProperty(t)?f=f[t]:(f=a.DEFAULT_DEVICE_DTYPE_MAPPING[l]??a.DATA_TYPES.fp32,console.warn(`dtype not specified for "${t}". Using the default dtype (${f}) for this device (${l}).`))),f===a.DATA_TYPES.auto){let e=o.dtype;typeof e!=`string`&&(e=e?.[t]),f=e&&e!==a.DATA_TYPES.auto&&a.DATA_TYPES.hasOwnProperty(e)?e:a.DEFAULT_DEVICE_DTYPE_MAPPING[l]??a.DATA_TYPES.fp32}let p=f;if(a.DEFAULT_DTYPE_SUFFIX_MAPPING.hasOwnProperty(p)){if(p===a.DATA_TYPES.fp16&&l===`webgpu`&&!await(0,a.isWebGpuFp16Supported)())throw Error(`The device (${l}) does not support fp16.`)}else throw Error(`Invalid dtype: ${p}. Should be one of: ${Object.keys(a.DATA_TYPES).join(`, `)}`);let m=o.kv_cache_dtype,h=m?typeof m==`string`?m:m[p]??`float32`:void 0;if(h&&![`float32`,`float16`].includes(h))throw Error(`Invalid kv_cache_dtype: ${h}. Should be one of: float32, float16`);let g={dtype:p,kv_cache_dtype:h,device:l},v=a.DEFAULT_DTYPE_SUFFIX_MAPPING[p],y=`${t}${v}.onnx`,b=`${n.subfolder??``}/${y}`,x={...n.session_options};x.executionProviders??=u;let S=o.free_dimension_overrides;S?x.freeDimensionOverrides??=S:l.startsWith(`webnn`)&&!x.freeDimensionOverrides&&console.warn(`WebNN does not currently support dynamic shapes and requires 'free_dimension_overrides' to be set in config.json, preferably as a field within config["transformers.js_config"]["device_config"]["${l}"]. When 'free_dimension_overrides' is not set, you may experience significant performance degradation.`);let C=_.apis.IS_NODE_ENV&&_.env.useFSCache,w=(0,c.getModelFile)(e,b,!0,n,C),T=n.use_external_data_format??o.use_external_data_format,E=[];if(T){let r;r=typeof T==`object`?T.hasOwnProperty(y)?T[y]:T.hasOwnProperty(t)?T[t]:!1:T;let i=+r;if(i>c.MAX_EXTERNAL_DATA_CHUNKS)throw Error(`The number of external data chunks (${i}) exceeds the maximum allowed value (${c.MAX_EXTERNAL_DATA_CHUNKS}).`);for(let t=0;t{let o=await(0,c.getModelFile)(e,i,!0,n,C);t(o instanceof Uint8Array?{path:r,data:o}:r)}))}}else x.externalData!==void 0&&(E=x.externalData.map(async t=>{if(typeof t.data==`string`){let r=await(0,c.getModelFile)(e,t.data,!0,n);return{...t,data:r}}return t}));if(E.length>0){let e=await Promise.all(E);_.apis.IS_NODE_ENV||(x.externalData=e)}if(l===`webgpu`){let e=(0,r.getKeyValueShapes)(n.config,{prefix:`present`});if(Object.keys(e).length>0&&!(0,i.isONNXProxy)()){let t={};for(let n in e)t[n]=`gpu-buffer`;x.preferredOutputLocation=t}}let D=await w;return{buffer_or_path:D,session_options:x,session_config:g}}async function T(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let{buffer_or_path:a,session_options:o,session_config:s}=await w(e,t[r],n),c=await(0,i.createInferenceSession)(a,o,s);return[r,c]})))}async function E(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let i=await(0,c.getModelJSON)(e,t[r],!1,n);return[r,i]})))}function D(e,t){let n=Object.create(null),r=[];for(let a of e.inputNames){let e=t[a];if(!(e instanceof f.Tensor)){r.push(a);continue}n[a]=(0,i.isONNXProxy)()?e.clone():e}if(r.length>0)throw Error(`An error occurred during model execution: "Missing the following inputs: ${r.join(`, `)}.`);let a=Object.keys(t).length,o=e.inputNames.length;if(a>o){let n=Object.keys(t).filter(t=>!e.inputNames.includes(t));console.warn(`WARNING: Too many inputs were provided (${a} > ${o}). The following inputs will be ignored: "${n.join(`, `)}".`)}return n}let O=Promise.resolve();async function k(e,t){let n=D(e,t);try{let t=Object.fromEntries(Object.entries(n).map(([e,t])=>[e,t.ort_tensor])),r=()=>e.run(t),i=await(_.apis.IS_BROWSER_ENV||_.apis.IS_WEBWORKER_ENV?O=O.then(r):r());return A(i)}catch(e){let t=Object.fromEntries(Object.entries(n).map(([e,t])=>{let n={type:t.type,dims:t.dims,location:t.location};return n.location!==`gpu-buffer`&&(n.data=t.data),[e,n]}));throw console.error(`An error occurred during model execution: "${e}".`),console.error(`Inputs given to model:`,t),e}}function A(e){for(let t in e)(0,i.isONNXTensor)(e[t])?e[t]=new f.Tensor(e[t]):typeof e[t]==`object`&&A(e[t]);return e}function ee(e){if(e instanceof f.Tensor)return e;if(e.length===0)throw Error(`items must be non-empty`);if(Array.isArray(e[0])){if(e.some(t=>t.length!==e[0].length))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' and/or 'truncation=True' to have batched tensors with the same length.`);return new f.Tensor(`int64`,BigInt64Array.from(e.flat().map(e=>BigInt(e))),[e.length,e[0].length])}else return new f.Tensor(`int64`,BigInt64Array.from(e.map(e=>BigInt(e))),[1,e.length])}function te(e){return new f.Tensor(`bool`,[e],[1])}async function ne(e,t){let{encoder_outputs:n,input_ids:r,decoder_input_ids:i,...a}=t;if(!n){let r=(0,s.pick)(t,e.sessions.model.inputNames);n=(await j(e,r)).last_hidden_state}a.input_ids=i,a.encoder_hidden_states=n,e.sessions.decoder_model_merged.inputNames.includes(`encoder_attention_mask`)&&(a.encoder_attention_mask=t.attention_mask);let o=await ie(e,a,!0);return o}async function j(e,t){let n=e.sessions.model,r=(0,s.pick)(t,n.inputNames);if(n.inputNames.includes(`inputs_embeds`)&&!r.inputs_embeds){if(!t.input_ids)throw Error("Both `input_ids` and `inputs_embeds` are missing in the model inputs.");r.inputs_embeds=await e.encode_text({input_ids:t.input_ids})}if(n.inputNames.includes(`token_type_ids`)&&!r.token_type_ids){if(!r.input_ids)throw Error("Both `input_ids` and `token_type_ids` are missing in the model inputs.");r.token_type_ids=(0,f.zeros_like)(r.input_ids)}if(n.inputNames.includes(`pixel_mask`)&&!r.pixel_mask){if(!r.pixel_values)throw Error("Both `pixel_values` and `pixel_mask` are missing in the model inputs.");let e=r.pixel_values.dims;r.pixel_mask=(0,f.ones)([e[0],e[2],e[3]])}return await k(n,r)}async function re(e,t){let n=await e.encode(t),r=await e.decode(n);return r}async function ie(e,t,n=!1){let r=e.sessions[n?`decoder_model_merged`:`model`],{past_key_values:i,...a}=t;if(r.inputNames.includes(`use_cache_branch`)&&(a.use_cache_branch=te(!!i)),r.inputNames.includes(`position_ids`)&&a.attention_mask&&!a.position_ids){let t=[`paligemma`,`gemma3_text`,`gemma3`].includes(e.config.model_type)?1:0;a.position_ids=ue(a,i,t)}e.addPastKeyValues(a,i);let o=(0,s.pick)(a,r.inputNames);return await k(r,o)}function ae({modality_token_id:e,inputs_embeds:t,modality_features:n,input_ids:r,attention_mask:i}){let a=r.tolist().map(t=>t.reduce((t,n,r)=>(n==e&&t.push(r),t),[])),o=a.reduce((e,t)=>e+t.length,0),s=n.dims[0];if(o!==s)throw Error(`Number of tokens and features do not match: tokens: ${o}, features ${s}`);let c=0;for(let e=0;ee.dims[1]||i[e.at(-1)])),{...n,decoder_input_ids:ee(t)}}function F(e,...t){return e.config.is_encoder_decoder?P(e,...t):de(e,...t)}function fe(e,t,n,r){let i=!!n.past_key_values;if(r.guidance_scale!==null&&r.guidance_scale>1&&(i?n.input_ids=(0,f.cat)([n.input_ids,n.input_ids],0):(n.input_ids=(0,f.cat)([n.input_ids,(0,f.full_like)(n.input_ids,BigInt(r.pad_token_id))],0),n.attention_mask=(0,f.cat)([n.attention_mask,(0,f.full_like)(n.attention_mask,0n)],0))),(i||!n.pixel_values)&&(n.pixel_values=(0,f.full)([0,0,3,384,384],1)),i){let e=0,t=1,r=e>0?1:0,i=1;n.images_seq_mask=new f.Tensor(`bool`,Array(e+t).fill(!0).fill(!1,0,t),[i,e+t]),n.images_emb_mask=new f.Tensor(`bool`,Array(e).fill(!!r),[i,1,e])}return n}class I extends o.Callable{main_input_name=`input_ids`;forward_params=[`input_ids`,`attention_mask`];constructor(e,t,n){super(),this.config=e,this.sessions=t,this.configs=n;let r=C.get(this.constructor),i=x.get(r);switch(this.can_generate=!1,this._forward=null,this._prepare_inputs_for_generation=null,i){case b.DecoderOnly:this.can_generate=!0,this._forward=ie,this._prepare_inputs_for_generation=de;break;case b.Seq2Seq:case b.Vision2Seq:case b.Musicgen:this.can_generate=!0,this._forward=ne,this._prepare_inputs_for_generation=P;break;case b.EncoderDecoder:this._forward=ne;break;case b.ImageTextToText:this.can_generate=!0,this._forward=ce,this._prepare_inputs_for_generation=F;break;case b.AudioTextToText:this.can_generate=!0,this._forward=N,this._prepare_inputs_for_generation=F;break;case b.Phi3V:case b.ImageAudioTextToText:this.can_generate=!0,this._prepare_inputs_for_generation=F;break;case b.MultiModality:this.can_generate=!0,this._prepare_inputs_for_generation=fe;break;case b.AutoEncoder:this._forward=re;break;default:this._forward=j;break}this.can_generate&&this.forward_params.push(`past_key_values`),this.custom_config=this.config[`transformers.js_config`]??{}}async dispose(){let e=[];for(let t of Object.values(this.sessions))t?.handler?.dispose&&e.push(t.handler.dispose());return await Promise.all(e)}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:u=null,dtype:d=null,use_external_data_format:f=null,session_options:p={}}={}){let m={progress_callback:t,config:n,cache_dir:i,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:u,dtype:d,use_external_data_format:f,session_options:p},h=C.get(this),g=x.get(h);n=m.config=await r.AutoConfig.from_pretrained(e,m);let _;if(g===b.DecoderOnly)_=await Promise.all([T(e,{model:m.model_file_name??`model`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.Seq2Seq||g===b.Vision2Seq)_=await Promise.all([T(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.MaskGeneration)_=await Promise.all([T(e,{model:`vision_encoder`,prompt_encoder_mask_decoder:`prompt_encoder_mask_decoder`},m)]);else if(g===b.EncoderDecoder)_=await Promise.all([T(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m)]);else if(g===b.ImageTextToText){let t={embed_tokens:`embed_tokens`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};n.is_encoder_decoder&&(t.model=`encoder_model`),_=await Promise.all([T(e,t,m),E(e,{generation_config:`generation_config.json`},m)])}else if(g===b.AudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([T(e,t,m),E(e,{generation_config:`generation_config.json`},m)])}else if(g===b.ImageAudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([T(e,t,m),E(e,{generation_config:`generation_config.json`},m)])}else if(g===b.Musicgen)_=await Promise.all([T(e,{model:`text_encoder`,decoder_model_merged:`decoder_model_merged`,encodec_decode:`encodec_decode`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.MultiModality)_=await Promise.all([T(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`language_model`,lm_head:`lm_head`,gen_head:`gen_head`,gen_img_embeds:`gen_img_embeds`,image_decode:`image_decode`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.Phi3V)_=await Promise.all([T(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`model`,vision_encoder:`vision_encoder`},m),E(e,{generation_config:`generation_config.json`},m)]);else if(g===b.AutoEncoder)_=await Promise.all([T(e,{encoder_model:`encoder_model`,decoder_model:`decoder_model`},m)]);else{if(g!==b.EncoderOnly){let e=h??n?.model_type;e!==`custom`&&console.warn(`Model type for '${e}' not found, assuming encoder-only architecture. Please report this at ${l.GITHUB_ISSUE_URL}.`)}_=await Promise.all([T(e,{model:m.model_file_name??`model`},m)])}return new this(n,..._)}async _call(e){return await this.forward(e)}async forward(e){return await this._forward(this,e)}get generation_config(){return this.configs?.generation_config??null}_get_logits_warper(e){let t=new u.LogitsProcessorList;return e.temperature!==null&&e.temperature!==1&&t.push(new u.TemperatureLogitsWarper(e.temperature)),e.top_k!==null&&e.top_k!==0&&t.push(new u.TopKLogitsWarper(e.top_k)),e.top_p!==null&&e.top_p<1&&t.push(new u.TopPLogitsWarper(e.top_p)),t}_get_logits_processor(e,t,n=null){let r=new u.LogitsProcessorList;if(e.repetition_penalty!==null&&e.repetition_penalty!==1&&r.push(new u.RepetitionPenaltyLogitsProcessor(e.repetition_penalty)),e.no_repeat_ngram_size!==null&&e.no_repeat_ngram_size>0&&r.push(new u.NoRepeatNGramLogitsProcessor(e.no_repeat_ngram_size)),e.bad_words_ids!==null&&r.push(new u.NoBadWordsLogitsProcessor(e.bad_words_ids,e.eos_token_id)),e.min_length!==null&&e.eos_token_id!==null&&e.min_length>0&&r.push(new u.MinLengthLogitsProcessor(e.min_length,e.eos_token_id)),e.min_new_tokens!==null&&e.eos_token_id!==null&&e.min_new_tokens>0&&r.push(new u.MinNewTokensLengthLogitsProcessor(t,e.min_new_tokens,e.eos_token_id)),e.forced_bos_token_id!==null&&r.push(new u.ForcedBOSTokenLogitsProcessor(e.forced_bos_token_id)),e.forced_eos_token_id!==null&&r.push(new u.ForcedEOSTokenLogitsProcessor(e.max_length,e.forced_eos_token_id)),e.begin_suppress_tokens!==null){let n=t>1||e.forced_bos_token_id===null?t:t+1;r.push(new u.SuppressTokensAtBeginLogitsProcessor(e.begin_suppress_tokens,n))}return e.guidance_scale!==null&&e.guidance_scale>1&&r.push(new u.ClassifierFreeGuidanceLogitsProcessor(e.guidance_scale)),n!==null&&r.extend(n),r}_prepare_generation_config(e,t,n=d.GenerationConfig){let r={...this.config};for(let e of[`decoder`,`generator`,`text_config`])e in r&&Object.assign(r,r[e]);let i=new n(r);return Object.assign(i,this.generation_config??{}),e&&Object.assign(i,e),t&&Object.assign(i,(0,s.pick)(t,Object.getOwnPropertyNames(i))),i}_get_stopping_criteria(e,t=null){let n=new h.StoppingCriteriaList;return e.max_length!==null&&n.push(new h.MaxLengthCriteria(e.max_length,this.config.max_position_embeddings??null)),e.eos_token_id!==null&&n.push(new h.EosTokenCriteria(e.eos_token_id)),t&&n.extend(t),n}_validate_model_class(){if(!this.can_generate){let e=[Pl,Rl,Nl,Ol],t=C.get(this.constructor),n=new Set,r=this.config.model_type;for(let t of e){let e=t.get(r);e&&n.add(e[0])}let i=`The current model class (${t}) is not compatible with \`.generate()\`, as it doesn't have a language model head.`;throw n.size>0&&(i+=` Please use the following class instead: ${[...n].join(`, `)}`),Error(i)}}prepare_inputs_for_generation(...e){return this._prepare_inputs_for_generation(this,...e)}_update_model_kwargs_for_generation({generated_input_ids:e,outputs:t,model_inputs:n,is_encoder_decoder:r}){return n.past_key_values=this.getPastKeyValues(t,n.past_key_values),n.input_ids=new f.Tensor(`int64`,e.flat(),[e.length,1]),r?`decoder_attention_mask`in n:n.attention_mask=(0,f.cat)([n.attention_mask,(0,f.ones)([n.attention_mask.dims[0],1])],1),n.position_ids=null,n}_prepare_model_inputs({inputs:e,bos_token_id:t,model_kwargs:n}){let r=(0,s.pick)(n,this.forward_params),i=this.main_input_name;if(i in r){if(e)throw Error("`inputs`: {inputs}` were passed alongside {input_name} which is not allowed. Make sure to either pass {inputs} or {input_name}=...")}else r[i]=e;let a=r[i];return{inputs_tensor:a,model_inputs:r,model_input_name:i}}async _prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:e,model_inputs:t,model_input_name:n,generation_config:r}){if(this.sessions.model.inputNames.includes(`inputs_embeds`)&&!t.inputs_embeds&&`_prepare_inputs_embeds`in this){let{input_ids:e,pixel_values:n,attention_mask:r,...i}=t,a=await this._prepare_inputs_embeds(t);t={...i,...(0,s.pick)(a,[`inputs_embeds`,`attention_mask`])}}let{last_hidden_state:i}=await j(this,t);if(r.guidance_scale!==null&&r.guidance_scale>1)i=(0,f.cat)([i,(0,f.full_like)(i,0)],0),`attention_mask`in t&&(t.attention_mask=(0,f.cat)([t.attention_mask,(0,f.zeros_like)(t.attention_mask)],0));else if(t.decoder_input_ids){let e=ee(t.decoder_input_ids).dims[0];if(e!==i.dims[0]){if(i.dims[0]!==1)throw Error(`The encoder outputs have a different batch size (${i.dims[0]}) than the decoder inputs (${e}).`);i=(0,f.cat)(Array.from({length:e},()=>i),0)}}return t.encoder_outputs=i,t}_prepare_decoder_input_ids_for_generation({batch_size:e,model_input_name:t,model_kwargs:n,decoder_start_token_id:r,bos_token_id:i,generation_config:a}){let{decoder_input_ids:o,...s}=n;if(!(o instanceof f.Tensor)){if(o)Array.isArray(o[0])||(o=Array.from({length:e},()=>o));else if(r??=i,this.config.model_type===`musicgen`)o=Array.from({length:e*this.config.decoder.num_codebooks},()=>[r]);else if(Array.isArray(r)){if(r.length!==e)throw Error(`\`decoder_start_token_id\` expcted to have length ${e} but got ${r.length}`);o=r}else o=Array.from({length:e},()=>[r]);o=ee(o)}return n.decoder_attention_mask=(0,f.ones_like)(o),{input_ids:o,model_inputs:s}}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,streamer:i=null,...a}){this._validate_model_class(),t=this._prepare_generation_config(t,a);let{inputs_tensor:o,model_inputs:s,model_input_name:c}=this._prepare_model_inputs({inputs:e,model_kwargs:a}),l=this.config.is_encoder_decoder;l&&(`encoder_outputs`in s||(s=await this._prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:o,model_inputs:s,model_input_name:c,generation_config:t})));let u;l?{input_ids:u,model_inputs:s}=this._prepare_decoder_input_ids_for_generation({batch_size:s[c].dims.at(0),model_input_name:c,model_kwargs:s,decoder_start_token_id:t.decoder_start_token_id,bos_token_id:t.bos_token_id,generation_config:t}):u=s[c];let d=u.dims.at(-1);t.max_new_tokens!==null&&(t.max_length=d+t.max_new_tokens);let p=this._get_logits_processor(t,d,n),m=this._get_stopping_criteria(t,r),h=s[c].dims.at(0),_=g.LogitsSampler.getSampler(t),v=Array(h).fill(0),y=u.tolist();i&&i.put(y);let b,x={};for(;;){if(s=this.prepare_inputs_for_generation(y,s,t),b=await this.forward(s),t.output_attentions&&t.return_dict_in_generate){let e=this.getAttentions(b);for(let t in e)t in x||(x[t]=[]),x[t].push(e[t])}let e=b.logits.slice(null,-1,null),n=p(y,e),r=[];for(let e=0;ee))break;s=this._update_model_kwargs_for_generation({generated_input_ids:r,outputs:b,model_inputs:s,is_encoder_decoder:l})}i&&i.end();let S=this.getPastKeyValues(b,s.past_key_values,!0),C=new f.Tensor(`int64`,y.flat(),[y.length,y[0].length]);if(t.return_dict_in_generate)return{sequences:C,past_key_values:S,...x};for(let e of Object.values(b))e.location===`gpu-buffer`&&e.dispose();return C}getPastKeyValues(e,t,n=!1){let r=Object.create(null);for(let i in e)if(i.startsWith(`present`)){let a=i.replace(`present`,`past_key_values`),o=i.includes(`encoder`);if(o&&t?r[a]=t[a]:r[a]=e[i],t&&(!o||n)){let e=t[a];e.location===`gpu-buffer`&&e.dispose()}}return r}getAttentions(e){let t={};for(let n of[`cross_attentions`,`encoder_attentions`,`decoder_attentions`])for(let r in e)r.startsWith(n)&&(n in t||(t[n]=[]),t[n].push(e[r]));return t}addPastKeyValues(e,t){if(t)Object.assign(e,t);else{let t=this.sessions.decoder_model_merged??this.sessions.model,n=t?.config?.kv_cache_dtype??`float32`,i=n===`float16`?new f.DataTypeMap.float16:[],a=(e[this.main_input_name]??e.attention_mask)?.dims?.[0]??1,o=(0,r.getKeyValueShapes)(this.config,{batch_size:a});for(let t in o)e[t]=new f.Tensor(n,i,o[t])}}async encode_image({pixel_values:e}){return(await k(this.sessions.vision_encoder,{pixel_values:e})).image_features}async encode_text({input_ids:e}){return(await k(this.sessions.embed_tokens,{input_ids:e})).inputs_embeds}async encode_audio({audio_values:e}){return(await k(this.sessions.audio_encoder,{audio_values:e})).audio_features}}class pe{}class me extends pe{constructor({last_hidden_state:e,hidden_states:t=null,attentions:n=null}){super(),this.last_hidden_state=e,this.hidden_states=t,this.attentions=n}}class he extends I{}class ge extends he{}class _e extends he{async _call(e){return new Uu(await super._call(e))}}class ve extends he{async _call(e){return new Q(await super._call(e))}}class L extends he{async _call(e){return new Hu(await super._call(e))}}class ye extends he{async _call(e){return new Wu(await super._call(e))}}class be extends I{}class xe extends be{}class Se extends be{async _call(e){return new Uu(await super._call(e))}}class Ce extends be{async _call(e){return new Q(await super._call(e))}}class we extends be{async _call(e){return new Hu(await super._call(e))}}class Te extends be{async _call(e){return new Wu(await super._call(e))}}class Ee extends I{}class De extends Ee{}class Oe extends Ee{async _call(e){return new Uu(await super._call(e))}}class ke extends Ee{async _call(e){return new Q(await super._call(e))}}class Ae extends Ee{async _call(e){return new Hu(await super._call(e))}}class je extends I{}class Me extends je{}class Ne extends I{}class R extends Ne{}class Pe extends Ne{async _call(e){return new Uu(await super._call(e))}}class Fe extends Ne{async _call(e){return new Q(await super._call(e))}}class Ie extends Ne{async _call(e){return new Hu(await super._call(e))}}class Le extends Ne{async _call(e){return new Wu(await super._call(e))}}class Re extends I{}class ze extends Re{}class Be extends Re{async _call(e){return new Uu(await super._call(e))}}class z extends Re{async _call(e){return new Q(await super._call(e))}}class Ve extends Re{async _call(e){return new Hu(await super._call(e))}}class He extends Re{async _call(e){return new Wu(await super._call(e))}}class B extends I{}class Ue extends B{}class We extends B{async _call(e){return new Uu(await super._call(e))}}class Ge extends B{async _call(e){return new Q(await super._call(e))}}class Ke extends B{async _call(e){return new Hu(await super._call(e))}}class qe extends B{async _call(e){return new Wu(await super._call(e))}}class Je extends I{}class Ye extends Je{}class Xe extends Je{async _call(e){return new Uu(await super._call(e))}}class Ze extends Je{async _call(e){return new Q(await super._call(e))}}class Qe extends Je{async _call(e){return new Hu(await super._call(e))}}class $e extends Je{async _call(e){return new Wu(await super._call(e))}}class et extends I{}class tt extends et{}class nt extends et{async _call(e){return new Uu(await super._call(e))}}class rt extends et{async _call(e){return new Q(await super._call(e))}}class it extends et{async _call(e){return new Hu(await super._call(e))}}class at extends et{async _call(e){return new Wu(await super._call(e))}}class ot extends I{}class st extends ot{}class ct extends ot{async _call(e){return new Uu(await super._call(e))}}class lt extends ot{async _call(e){return new Q(await super._call(e))}}class ut extends ot{async _call(e){return new Hu(await super._call(e))}}class dt extends ot{async _call(e){return new Wu(await super._call(e))}}class ft extends I{}class pt extends ft{}class mt extends ft{async _call(e){return new Q(await super._call(e))}}class ht extends ft{async _call(e){return new Hu(await super._call(e))}}class gt extends ft{async _call(e){return new Wu(await super._call(e))}}class _t extends ft{async _call(e){return new Uu(await super._call(e))}}class vt extends I{}class yt extends vt{}class bt extends vt{async _call(e){return new Uu(await super._call(e))}}class xt extends vt{async _call(e){return new Q(await super._call(e))}}class St extends vt{async _call(e){return new Hu(await super._call(e))}}class Ct extends I{}class wt extends Ct{}class Tt extends Ct{async _call(e){return new Uu(await super._call(e))}}class Et extends Ct{async _call(e){return new Q(await super._call(e))}}class Dt extends Ct{async _call(e){return new Wu(await super._call(e))}}class Ot extends I{}class kt extends Ot{}class At extends Ot{async _call(e){return new Uu(await super._call(e))}}class jt extends Ot{async _call(e){return new Q(await super._call(e))}}class Mt extends Ot{async _call(e){return new Hu(await super._call(e))}}class Nt extends Ot{async _call(e){return new Wu(await super._call(e))}}class Pt extends I{}class Ft extends Pt{}class It extends Pt{async _call(e){return new Uu(await super._call(e))}}class Lt extends Pt{async _call(e){return new Q(await super._call(e))}}class Rt extends Pt{async _call(e){return new Wu(await super._call(e))}}class zt extends I{}class Bt extends zt{}class Vt extends zt{async _call(e){return new Q(await super._call(e))}}class Ht extends zt{async _call(e){return new Wu(await super._call(e))}}class Ut extends zt{async _call(e){return new Uu(await super._call(e))}}class Wt extends I{forward_params=[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`]}class Gt extends Wt{}class Kt extends Wt{}class qt extends I{}class Jt extends qt{}class Yt extends qt{}class Xt extends I{}class Zt extends Xt{}class Qt extends Xt{}class $t extends I{}class en extends $t{}class tn extends $t{}class nn extends $t{async _call(e){return new Q(await super._call(e))}}class rn extends I{}class V extends rn{}class an extends rn{}class on extends rn{async _call(e){return new Q(await super._call(e))}}class sn extends rn{}class cn extends I{}class ln extends cn{}class un extends cn{}class dn extends I{}class fn extends dn{}class H extends dn{}class pn extends I{}class mn extends pn{}class hn extends pn{async _call(e){return new Uu(await super._call(e))}}class U extends pn{async _call(e){return new Q(await super._call(e))}}class gn extends pn{async _call(e){return new Hu(await super._call(e))}}class _n extends pn{async _call(e){return new Wu(await super._call(e))}}class vn extends I{}class yn extends vn{}class W extends vn{async _call(e){return new Uu(await super._call(e))}}class bn extends vn{async _call(e){return new Q(await super._call(e))}}class xn extends vn{async _call(e){return new Hu(await super._call(e))}}class Sn extends vn{async _call(e){return new Wu(await super._call(e))}}class Cn extends I{}class wn extends Cn{}class Tn extends Cn{async _call(e){return new Uu(await super._call(e))}}class En extends Cn{async _call(e){return new Q(await super._call(e))}}class Dn extends Cn{async _call(e){return new Hu(await super._call(e))}}class On extends Cn{async _call(e){return new Wu(await super._call(e))}}class kn extends I{}class An extends kn{}class jn extends kn{}class Mn extends I{requires_attention_mask=!1;main_input_name=`input_features`;forward_params=[`input_features`,`attention_mask`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`]}class Nn extends Mn{}class Pn extends Mn{_prepare_generation_config(e,t){return super._prepare_generation_config(e,t,v.WhisperGenerationConfig)}_retrieve_init_tokens(e){let t=[e.decoder_start_token_id],n=e.language,r=e.task;if(e.is_multilingual){n||(console.warn(`No language specified - defaulting to English (en).`),n=`en`);let i=(0,y.whisper_language_to_code)(n),a=`<|${i}|>`;t.push(e.lang_to_id[a]),t.push(e.task_to_id[r??`transcribe`])}else if(n||r)throw Error("Cannot specify `task` or `language` for an English-only model. If the model is intended to be multilingual, pass `is_multilingual=true` to generate, or update the generation config.");return!e.return_timestamps&&e.no_timestamps_token_id&&t.at(-1)!==e.no_timestamps_token_id?t.push(e.no_timestamps_token_id):e.return_timestamps&&t.at(-1)===e.no_timestamps_token_id&&(console.warn("<|notimestamps|> prompt token is removed from generation_config since `return_timestamps` is set to `true`."),t.pop()),t.filter(e=>e!=null)}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,...i}){t=this._prepare_generation_config(t,i);let a=i.decoder_input_ids??this._retrieve_init_tokens(t);if(t.return_timestamps&&(n??=new u.LogitsProcessorList,n.push(new u.WhisperTimeStampLogitsProcessor(t,a))),t.begin_suppress_tokens&&(n??=new u.LogitsProcessorList,n.push(new u.SuppressTokensAtBeginLogitsProcessor(t.begin_suppress_tokens,a.length))),t.return_token_timestamps){if(!t.alignment_heads)throw Error("Model generation config has no `alignment_heads`, token-level timestamps not available. See https://gist.github.com/hollance/42e32852f24243b748ae6bc1f985b13a on how to add this property to the generation config.");t.task===`translate`&&console.warn(`Token-level timestamps may not be reliable for task 'translate'.`),t.output_attentions=!0,t.return_dict_in_generate=!0}let o=await super.generate({inputs:e,generation_config:t,logits_processor:n,decoder_input_ids:a,...i});return t.return_token_timestamps&&(o.token_timestamps=this._extract_token_timestamps(o,t.alignment_heads,t.num_frames)),o}_extract_token_timestamps(e,t,n=null,r=.02){if(!e.cross_attentions)throw Error("Model outputs must contain cross attentions to extract timestamps. This is most likely because the model was not exported with `output_attentions=True`.");n??console.warn("`num_frames` has not been set, meaning the entire audio will be analyzed. This may lead to inaccurate token-level timestamps for short audios (< 30 seconds).");let i=this.config.median_filter_width;i===void 0&&(console.warn("Model config has no `median_filter_width`, using default value of 7."),i=7);let a=e.cross_attentions,o=Array.from({length:this.config.decoder_layers},(e,t)=>(0,f.cat)(a.map(e=>e[t]),2)),c=(0,f.stack)(t.map(([e,t])=>{if(e>=o.length)throw Error(`Layer index ${e} is out of bounds for cross attentions (length ${o.length}).`);return n?o[e].slice(null,t,null,[0,n]):o[e].slice(null,t)})).transpose(1,0,2,3),[l,u]=(0,f.std_mean)(c,-2,0,!0),d=c.clone();for(let e=0;en[t+1]-n[t]),o=(0,s.mergeArrays)([1],a).map(e=>!!e),c=[];for(let e=0;eArray.from({length:e.dims[0]},t=>Array.from({length:e.dims[1]},e=>1))),p=t?t.tolist():[],h=n?n.tolist():[],g=0,_=0;for(let e=0;eu[e][n]==1),n=t.reduce((e,t,n)=>(t==s&&e.push(n),e),[]),r=n.map(e=>t[e+1]),f=r.filter(e=>e==a).length,v=r.filter(e=>e==o).length,y=[],b=0,x=f,S=v;for(let e=0;et>b&&e==a),n=t.findIndex((e,t)=>t>b&&e==o),r=x>0&&e!==-1?e:t.length+1,i=S>0&&n!==-1?n:t.length+1,s,l,u,d;r0?(0,m.max)(y.at(-1))[0]+1:0;y.push(Array.from({length:3*w},(e,t)=>T+t%w));let E=w+T,D=f*v*C,O=Array.from({length:D},(e,t)=>E+Math.floor(t/(v*C))),k=Array.from({length:D},(e,t)=>E+Math.floor(t/C)%v),A=Array.from({length:D},(e,t)=>E+t%C);y.push([O,k,A].flat()),b=s+D}if(b0?(0,m.max)(y.at(-1))[0]+1:0,n=t.length-b;y.push(Array.from({length:3*n},(t,r)=>e+r%n))}let C=y.reduce((e,t)=>e+t.length,0),w=Array(C),T=0;for(let e=0;e<3;++e)for(let t=0;te[n%e.length]),i=Array.from({length:t[0]},(n,r)=>(0,m.max)(e.subarray(t[1]*r,t[1]*(r+1)))[0]+1n+BigInt(t[1]));return[new f.Tensor(`int64`,n,[3,...t]),new f.Tensor(`int64`,i,[i.length,1])]}else{let[t,n]=e.dims,r=BigInt64Array.from({length:3*t*n},(e,r)=>BigInt(Math.floor(r%n/t)));return[new f.Tensor(`int64`,r,[3,...e.dims]),(0,f.zeros)([t,1])]}}async encode_image({pixel_values:e,image_grid_thw:t}){let n=(await k(this.sessions.vision_encoder,{pixel_values:e,grid_thw:t})).image_features;return n}_merge_input_ids_with_image_features(e){return oe({image_token_id:this.config.image_token_id,...e})}prepare_inputs_for_generation(e,t,n){if(t.attention_mask&&!t.position_ids)if(!t.past_key_values)[t.position_ids,t.rope_deltas]=this.get_rope_index(t.input_ids,t.image_grid_thw,t.video_grid_thw,t.attention_mask);else{t.pixel_values=null;let e=BigInt(Object.values(t.past_key_values)[0].dims.at(-2)),n=t.rope_deltas.map(t=>e+t);t.position_ids=(0,f.stack)([n,n,n],0)}return t}}class ki extends I{}class Ai extends ki{}class ji extends ki{}class Mi extends I{}class Ni extends Mi{}class Pi extends Mi{}class Fi extends I{}class Ii extends Fi{}class Li extends Fi{}class Ri extends I{}class zi extends Ri{}class Bi extends Ri{}class Vi extends I{}class Hi extends Vi{}class Ui extends Vi{}class Wi extends I{}class Gi extends Wi{}class Ki extends Wi{async _call(e){return new Q(await super._call(e))}}class qi extends I{}class Ji extends qi{}class Yi extends qi{async _call(e){return new Q(await super._call(e))}}class Xi extends I{}class Zi extends Xi{}class Qi extends I{}class $i extends Qi{}class ea extends Qi{async _call(e){return new Q(await super._call(e))}}class ta extends I{}class na extends ta{}class ra extends I{}class ia extends ra{}class aa extends ra{async _call(e){return new Q(await super._call(e))}}class oa extends I{}class sa extends oa{}class ca extends I{}class la extends ca{}class ua extends ca{async _call(e){return new Q(await super._call(e))}}class da extends I{}class fa extends da{async _call(e){return new qu(await super._call(e))}}class pa extends I{}class ma extends pa{}class ha extends pa{async _call(e){return new Q(await super._call(e))}}class ga extends I{}class _a extends ga{}class va extends ga{async _call(e){return new Q(await super._call(e))}}class ya extends I{}class ba extends ya{}class xa extends ya{}class Sa extends I{}class Ca extends Sa{}class wa extends Sa{}class Ta extends I{}class Ea extends Ta{}class Da extends Ta{async _call(e){return new Q(await super._call(e))}}class Oa extends I{}class ka extends Oa{}class Aa extends Oa{async _call(e){return new Ma(await super._call(e))}}class ja extends Oa{async _call(e){return new Na(await super._call(e))}}class Ma extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Na extends pe{constructor({logits:e,pred_boxes:t,pred_masks:n}){super(),this.logits=e,this.pred_boxes=t,this.pred_masks=n}}class Pa extends I{}class Fa extends Pa{}class Ia extends Pa{async _call(e){return new La(await super._call(e))}}class La extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Ra extends I{}class za extends Ra{}class Ba extends Ra{async _call(e){return new Va(await super._call(e))}}class Va extends La{}class Ha extends I{}class Ua extends Ha{}class Wa extends Ha{async _call(e){return new Ga(await super._call(e))}}class Ga extends La{}class Ka extends I{}class qa extends Ka{}class Ja extends Ka{async _call(e){return new La(await super._call(e))}}class Ya extends I{}class Xa extends Ya{}class Za extends Ya{async _call(e){return new Qa(await super._call(e))}}class Qa extends Ma{}class $a extends I{}class eo extends $a{}class to extends $a{async _call(e){return new Q(await super._call(e))}}class no extends I{}class ro extends no{}class io extends no{async _call(e){return new Q(await super._call(e))}}class ao extends I{}class oo extends ao{}class so extends ao{async _call(e){return new Q(await super._call(e))}}class co extends I{}class lo extends co{}class uo extends co{async _call(e){return new Q(await super._call(e))}}class fo extends co{}class po extends I{}class mo extends po{}class ho extends po{}class go extends I{}class _o extends go{}class vo extends go{}class yo extends I{}class bo extends yo{}class xo extends I{}class So extends xo{}class Co extends xo{}class wo extends xo{}class To extends I{}class Eo extends To{}class Do extends I{}class Oo extends Do{}class ko extends I{}class Ao extends ko{}class jo extends I{}class Mo extends jo{}class No extends jo{}class Po extends I{}class Fo extends Po{}class Io extends Po{}class Lo extends I{}class Ro extends Lo{}class zo extends I{}class Bo extends zo{}class Vo extends zo{async _call(e){return new Q(await super._call(e))}}class Ho extends I{}class Uo extends Ho{}class Wo extends Ho{async _call(e){return new Q(await super._call(e))}}class Go extends I{}class Ko extends Go{}class qo extends Go{async _call(e){return new Q(await super._call(e))}}class Jo extends I{}class Yo extends Jo{}class Xo extends Jo{async _call(e){return new Q(await super._call(e))}}class Zo extends I{}class Qo extends Zo{}class $o extends I{}class es extends $o{}class ts extends $o{async _call(e){return new ns(await super._call(e))}}class ns extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class rs extends I{}class os extends rs{async get_image_embeddings({pixel_values:e}){return await j(this,{pixel_values:e})}async forward(e){if((!e.image_embeddings||!e.image_positional_embeddings)&&(e={...e,...await this.get_image_embeddings(e)}),!e.input_labels&&e.input_points){let t=e.input_points.dims.slice(0,-1),n=t.reduce((e,t)=>e*t,1);e.input_labels=new f.Tensor(`int64`,new BigInt64Array(n).fill(1n),t)}let t={image_embeddings:e.image_embeddings,image_positional_embeddings:e.image_positional_embeddings};return e.input_points&&(t.input_points=e.input_points),e.input_labels&&(t.input_labels=e.input_labels),e.input_boxes&&(t.input_boxes=e.input_boxes),await k(this.sessions.prompt_encoder_mask_decoder,t)}async _call(e){return new ss(await super._call(e))}}class ss extends pe{constructor({iou_scores:e,pred_masks:t}){super(),this.iou_scores=e,this.pred_masks=t}}class cs extends I{}class ls extends cs{}class us extends cs{}class ds extends I{}class fs extends ds{}class ps extends ds{}class ms extends I{}class hs extends ms{}class gs extends ms{async _call(e){return new Gu(await super._call(e))}}class _s extends ms{async _call(e){return new Q(await super._call(e))}}class vs extends ms{async _call(e){return new Hu(await super._call(e))}}class ys extends I{}class bs extends ys{}class xs extends ys{async _call(e){return new Hu(await super._call(e))}}class Ss extends I{}class Cs extends Ss{}class ws extends I{}class Ts extends ws{}class Es extends ws{async _call(e){return new Gu(await super._call(e))}}class Ds extends ws{async _call(e){return new Q(await super._call(e))}}class Os extends I{}class ks extends Os{}class As extends Os{async _call(e){return new Gu(await super._call(e))}}class js extends Os{async _call(e){return new Q(await super._call(e))}}class Ms extends Os{async _call(e){return new Hu(await super._call(e))}}class Ns extends I{}class Ps extends Ns{}class Fs extends Ns{async _call(e){return new Gu(await super._call(e))}}class Is extends Ns{async _call(e){return new Q(await super._call(e))}}class Ls extends I{}class Rs extends ms{}class zs extends ms{async _call(e){return new Gu(await super._call(e))}}class Bs extends ms{async _call(e){return new Q(await super._call(e))}}class Vs extends I{}class Hs extends Vs{}class Us extends Vs{async _call(e){return new Gu(await super._call(e))}}class Ws extends Vs{async _call(e){return new Q(await super._call(e))}}class Gs extends Vs{async _call(e){return new Vu(await super._call(e))}}class Ks extends Vs{async _call(e){return new Hu(await super._call(e))}}class qs extends I{}class Js extends qs{}class Ys extends I{}class Xs extends Ys{}class Zs extends Ys{}class Qs extends Ys{async generate_speech(e,t,{threshold:n=.5,minlenratio:r=0,maxlenratio:i=20,vocoder:a=null}={}){let o={input_ids:e},{encoder_outputs:s,encoder_attention_mask:c}=await j(this,o),l=s.dims[1]/this.config.reduction_factor,u=Math.floor(l*i),d=Math.floor(l*r),p=this.config.num_mel_bins,m=[],h=null,g=null,_=0;for(;;){++_;let e=te(!!g),r;r=g?g.output_sequence_out:new f.Tensor(`float32`,new Float32Array(p),[1,1,p]);let i={use_cache_branch:e,output_sequence:r,encoder_attention_mask:c,speaker_embeddings:t,encoder_hidden_states:s};this.addPastKeyValues(i,h),g=await k(this.sessions.decoder_model_merged,i),h=this.getPastKeyValues(g,h);let{prob:a,spectrum:o}=g;if(m.push(o),_>=d&&(Array.from(a.data).filter(e=>e>=n).length>0||_>=u))break}let v=(0,f.cat)(m),{waveform:y}=await k(a.sessions.model,{spectrogram:v});return{spectrogram:v,waveform:y}}}class $s extends I{main_input_name=`spectrogram`}class ec extends I{}class tc extends ec{}class nc extends I{}class rc extends nc{}class ic extends nc{}class ac extends I{}class oc extends ac{}class sc extends ac{}class cc extends I{}class lc extends cc{}class uc extends cc{}class dc extends I{}class fc extends dc{}class pc extends dc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`text_model`})}}class mc extends dc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`audio_model`})}}class hc extends I{}class gc extends hc{async _call(e){return new Ju(await super._call(e))}}class _c extends I{}class vc extends _c{}class yc extends _c{}class bc extends _c{}class xc extends I{}class Sc extends xc{}class Cc extends xc{}class wc extends I{}class Tc extends wc{}class Ec extends wc{async _call(e){return new Q(await super._call(e))}}class Dc extends I{}class Oc extends Dc{}class kc extends Dc{}class Ac extends I{forward_params=[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`];_apply_and_filter_by_delay_pattern_mask(e){let[t,n]=e.dims,r=this.config.decoder.num_codebooks,i=n-r,a=0;for(let t=0;t0&&c<=i&&(e.data[a++]=e.data[t])}let o=Math.floor(t/r),s=a/(o*r);return new f.Tensor(e.type,e.data.slice(0,a),[o,r,s])}prepare_inputs_for_generation(e,t,n){let r=structuredClone(e);for(let e=0;e=t&&(r[e][t]=BigInt(this.config.decoder.pad_token_id));n.guidance_scale!==null&&n.guidance_scale>1&&(r=r.concat(r));let i=super.prepare_inputs_for_generation(r,t,n);return i}async generate(e){let t=await super.generate(e),n=this._apply_and_filter_by_delay_pattern_mask(t).unsqueeze_(0),{audio_values:r}=await k(this.sessions.encodec_decode,{audio_codes:n});return r}}class jc extends I{}class Mc extends jc{}class Nc extends jc{async _call(e){return new Q(await super._call(e))}}class Pc extends jc{}class Fc extends I{}class Ic extends Fc{}class Lc extends Fc{async _call(e){return new Q(await super._call(e))}}class Rc extends Fc{}class zc extends I{}class Bc extends zc{}class Vc extends zc{async _call(e){return new Q(await super._call(e))}}class Hc extends zc{}class Uc extends I{}class Wc extends Uc{}class Gc extends Uc{async _call(e){return new Q(await super._call(e))}}class Kc extends Uc{}class qc extends I{}class Jc extends qc{}class Yc extends I{}class Xc extends Yc{forward_params=[`input_ids`,`pixel_values`,`images_seq_mask`,`images_emb_mask`,`attention_mask`,`position_ids`,`past_key_values`];constructor(...e){super(...e),this._generation_mode=`text`}async forward(e){let t=this._generation_mode??`text`,n;if(t===`text`||!e.past_key_values){let t=this.sessions.prepare_inputs_embeds,r=(0,s.pick)(e,t.inputNames);n=await k(t,r)}else{let t=this.sessions.gen_img_embeds,r=(0,s.pick)({image_ids:e.input_ids},t.inputNames);n=await k(t,r)}let r={...e,...n},i=await ie(this,r),a=this.sessions[t===`text`?`lm_head`:`gen_head`];if(!a)throw Error(`Unable to find "${a}" generation head`);let o=await k(a,(0,s.pick)(i,a.inputNames));return{...n,...i,...o}}async generate(e){return this._generation_mode=`text`,super.generate(e)}async generate_images(e){this._generation_mode=`image`;let t=(e.inputs??e[this.main_input_name]).dims[1],n=await super.generate(e),r=n.slice(null,[t,null]),i=this.sessions.image_decode,{decoded_image:a}=await k(i,{generated_tokens:r}),o=a.add_(1).mul_(255/2).clamp_(0,255).to(`uint8`),s=[];for(let e of o){let t=p.RawImage.fromTensor(e);s.push(t)}return s}}class Zc extends pe{constructor({char_logits:e,bpe_logits:t,wp_logits:n}){super(),this.char_logits=e,this.bpe_logits=t,this.wp_logits=n}get logits(){return[this.char_logits,this.bpe_logits,this.wp_logits]}}class Qc extends I{}class $c extends Qc{async _call(e){return new Zc(await super._call(e))}}class el extends I{}class tl extends el{}class nl extends el{}class rl extends I{}class il extends rl{}class al extends rl{}class ol extends I{forward_params=[`input_ids`,`attention_mask`,`position_ids`,`audio_values`,`past_key_values`]}class sl extends ol{_merge_input_ids_with_audio_features(e){let t=e.audio_features.dims.at(-1),n=e.audio_features.view(-1,t);return se({audio_token_id:this.config.ignore_index,...e,audio_features:n})}}class cl extends I{main_input_name=`input_values`;forward_params=[`input_values`]}class ll extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class ul extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class dl extends cl{async encode(e){return new ll(await k(this.sessions.encoder_model,e))}async decode(e){return new ul(await k(this.sessions.decoder_model,e))}}class fl extends cl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class pl extends cl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class ml extends I{main_input_name=`input_values`;forward_params=[`input_values`]}class hl extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class gl extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class _l extends ml{async encode(e){return new hl(await k(this.sessions.encoder_model,e))}async decode(e){return new gl(await k(this.sessions.decoder_model,e))}}class vl extends ml{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class yl extends ml{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class bl extends I{main_input_name=`input_values`;forward_params=[`input_values`]}class xl extends bl{async encode(e){return await k(this.sessions.encoder_model,e)}async decode(e){return await k(this.sessions.decoder_model,e)}}class Sl extends bl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class Cl extends bl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class Z{static MODEL_CLASS_MAPPINGS=null;static BASE_IF_FAIL=!1;static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:l=null,dtype:u=null,use_external_data_format:d=null,session_options:f={}}={}){let p={progress_callback:t,config:n,cache_dir:i,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:l,dtype:u,use_external_data_format:d,session_options:f};if(p.config=await r.AutoConfig.from_pretrained(e,p),!this.MODEL_CLASS_MAPPINGS)throw Error("`MODEL_CLASS_MAPPINGS` not implemented for this type of `AutoClass`: "+this.name);let m=p.config.model_type;for(let t of this.MODEL_CLASS_MAPPINGS){let n=t.get(m);if(!n){for(let e of t.values())if(e[0]===m){n=e;break}if(!n)continue}return await n[1].from_pretrained(e,p)}if(this.BASE_IF_FAIL)return cu.has(m)||console.warn(`Unknown model class "${m}", attempting to construct from base class.`),await I.from_pretrained(e,p);throw Error(`Unsupported model type: ${m}`)}}let wl=new Map([[`bert`,[`BertModel`,ge]],[`neobert`,[`NeoBertModel`,xe]],[`modernbert`,[`ModernBertModel`,De]],[`nomic_bert`,[`NomicBertModel`,Me]],[`roformer`,[`RoFormerModel`,R]],[`electra`,[`ElectraModel`,Ue]],[`esm`,[`EsmModel`,yt]],[`convbert`,[`ConvBertModel`,ze]],[`camembert`,[`CamembertModel`,Ye]],[`deberta`,[`DebertaModel`,tt]],[`deberta-v2`,[`DebertaV2Model`,st]],[`mpnet`,[`MPNetModel`,kt]],[`albert`,[`AlbertModel`,Bt]],[`distilbert`,[`DistilBertModel`,pt]],[`roberta`,[`RobertaModel`,mn]],[`xlm`,[`XLMModel`,yn]],[`xlm-roberta`,[`XLMRobertaModel`,wn]],[`clap`,[`ClapModel`,fc]],[`clip`,[`CLIPModel`,nr]],[`clipseg`,[`CLIPSegModel`,pr]],[`chinese_clip`,[`ChineseCLIPModel`,lr]],[`siglip`,[`SiglipModel`,J]],[`jina_clip`,[`JinaCLIPModel`,ur]],[`mobilebert`,[`MobileBertModel`,wt]],[`squeezebert`,[`SqueezeBertModel`,Ft]],[`wav2vec2`,[`Wav2Vec2Model`,hs]],[`wav2vec2-bert`,[`Wav2Vec2BertModel`,Ps]],[`unispeech`,[`UniSpeechModel`,Ts]],[`unispeech-sat`,[`UniSpeechSatModel`,ks]],[`hubert`,[`HubertModel`,Rs]],[`wavlm`,[`WavLMModel`,Hs]],[`audio-spectrogram-transformer`,[`ASTModel`,An]],[`vits`,[`VitsModel`,gc]],[`pyannote`,[`PyAnnoteModel`,bs]],[`wespeaker-resnet`,[`WeSpeakerResNetModel`,Cs]],[`detr`,[`DetrModel`,ka]],[`rt_detr`,[`RTDetrModel`,Fa]],[`rt_detr_v2`,[`RTDetrV2Model`,za]],[`rf_detr`,[`RFDetrModel`,Ua]],[`d_fine`,[`DFineModel`,qa]],[`table-transformer`,[`TableTransformerModel`,Xa]],[`vit`,[`ViTModel`,Gi]],[`ijepa`,[`IJepaModel`,Ji]],[`pvt`,[`PvtModel`,$i]],[`vit_msn`,[`ViTMSNModel`,ia]],[`vit_mae`,[`ViTMAEModel`,na]],[`groupvit`,[`GroupViTModel`,sa]],[`fastvit`,[`FastViTModel`,la]],[`mobilevit`,[`MobileViTModel`,ma]],[`mobilevitv2`,[`MobileViTV2Model`,_a]],[`owlvit`,[`OwlViTModel`,ba]],[`owlv2`,[`Owlv2Model`,Ca]],[`beit`,[`BeitModel`,Ea]],[`deit`,[`DeiTModel`,eo]],[`hiera`,[`HieraModel`,ro]],[`convnext`,[`ConvNextModel`,Bo]],[`convnextv2`,[`ConvNextV2Model`,Uo]],[`dinov2`,[`Dinov2Model`,Ko]],[`dinov2_with_registers`,[`Dinov2WithRegistersModel`,Yo]],[`resnet`,[`ResNetModel`,oo]],[`swin`,[`SwinModel`,lo]],[`swin2sr`,[`Swin2SRModel`,mo]],[`donut-swin`,[`DonutSwinModel`,Ro]],[`yolos`,[`YolosModel`,es]],[`dpt`,[`DPTModel`,_o]],[`glpn`,[`GLPNModel`,Fo]],[`hifigan`,[`SpeechT5HifiGan`,$s]],[`efficientnet`,[`EfficientNetModel`,Tc]],[`decision_transformer`,[`DecisionTransformerModel`,Jc]],[`patchtst`,[`PatchTSTForPrediction`,tl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,il]],[`mobilenet_v1`,[`MobileNetV1Model`,Mc]],[`mobilenet_v2`,[`MobileNetV2Model`,Ic]],[`mobilenet_v3`,[`MobileNetV3Model`,Bc]],[`mobilenet_v4`,[`MobileNetV4Model`,Wc]],[`maskformer`,[`MaskFormerModel`,Mo]],[`mgp-str`,[`MgpstrForSceneTextRecognition`,$c]],[`style_text_to_speech_2`,[`StyleTextToSpeech2Model`,Js]]]),Tl=new Map([[`t5`,[`T5Model`,Gt]],[`longt5`,[`LongT5Model`,Jt]],[`mt5`,[`MT5Model`,Zt]],[`bart`,[`BartModel`,en]],[`mbart`,[`MBartModel`,V]],[`marian`,[`MarianModel`,ls]],[`whisper`,[`WhisperModel`,Nn]],[`m2m_100`,[`M2M100Model`,fs]],[`blenderbot`,[`BlenderbotModel`,ln]],[`blenderbot-small`,[`BlenderbotSmallModel`,fn]]]),El=new Map([[`mimi`,[`MimiModel`,dl]],[`dac`,[`DacModel`,_l]],[`snac`,[`SnacModel`,xl]]]),Dl=new Map([[`bloom`,[`BloomModel`,Ii]],[`jais`,[`JAISModel`,yr]],[`gpt2`,[`GPT2Model`,gr]],[`gptj`,[`GPTJModel`,Or]],[`gpt_bigcode`,[`GPTBigCodeModel`,jr]],[`gpt_neo`,[`GPTNeoModel`,Sr]],[`gpt_neox`,[`GPTNeoXModel`,Tr]],[`codegen`,[`CodeGenModel`,Pr]],[`llama`,[`LlamaModel`,Lr]],[`exaone`,[`ExaoneModel`,Kr]],[`olmo`,[`OlmoModel`,Qr]],[`olmo2`,[`Olmo2Model`,ti]],[`mobilellm`,[`MobileLLMModel`,Yr]],[`granite`,[`GraniteModel`,ii]],[`cohere`,[`CohereModel`,si]],[`gemma`,[`GemmaModel`,ui]],[`gemma2`,[`Gemma2Model`,pi]],[`gemma3_text`,[`Gemma3Model`,gi]],[`helium`,[`HeliumModel`,Br]],[`glm`,[`GlmModel`,Ur]],[`openelm`,[`OpenELMModel`,yi]],[`qwen2`,[`Qwen2Model`,Si]],[`qwen3`,[`Qwen3Model`,Ti]],[`phi`,[`PhiModel`,Ai]],[`phi3`,[`Phi3Model`,Ni]],[`mpt`,[`MptModel`,zi]],[`opt`,[`OPTModel`,Hi]],[`mistral`,[`MistralModel`,rc]],[`starcoder2`,[`Starcoder2Model`,oc]],[`falcon`,[`FalconModel`,lc]],[`stablelm`,[`StableLmModel`,Sc]]]),Ol=new Map([[`speecht5`,[`SpeechT5ForSpeechToText`,Zs]],[`whisper`,[`WhisperForConditionalGeneration`,Pn]],[`lite-whisper`,[`LiteWhisperForConditionalGeneration`,Fn]],[`moonshine`,[`MoonshineForConditionalGeneration`,Rn]]]),kl=new Map([[`speecht5`,[`SpeechT5ForTextToSpeech`,Qs]]]),Al=new Map([[`vits`,[`VitsModel`,gc]],[`musicgen`,[`MusicgenForConditionalGeneration`,Ac]]]),jl=new Map([[`bert`,[`BertForSequenceClassification`,ve]],[`neobert`,[`NeoBertForSequenceClassification`,Ce]],[`modernbert`,[`ModernBertForSequenceClassification`,ke]],[`roformer`,[`RoFormerForSequenceClassification`,Fe]],[`electra`,[`ElectraForSequenceClassification`,Ge]],[`esm`,[`EsmForSequenceClassification`,xt]],[`convbert`,[`ConvBertForSequenceClassification`,z]],[`camembert`,[`CamembertForSequenceClassification`,Ze]],[`deberta`,[`DebertaForSequenceClassification`,rt]],[`deberta-v2`,[`DebertaV2ForSequenceClassification`,lt]],[`mpnet`,[`MPNetForSequenceClassification`,jt]],[`albert`,[`AlbertForSequenceClassification`,Vt]],[`distilbert`,[`DistilBertForSequenceClassification`,mt]],[`roberta`,[`RobertaForSequenceClassification`,U]],[`xlm`,[`XLMForSequenceClassification`,bn]],[`xlm-roberta`,[`XLMRobertaForSequenceClassification`,En]],[`bart`,[`BartForSequenceClassification`,nn]],[`mbart`,[`MBartForSequenceClassification`,on]],[`mobilebert`,[`MobileBertForSequenceClassification`,Et]],[`squeezebert`,[`SqueezeBertForSequenceClassification`,Lt]]]),Ml=new Map([[`bert`,[`BertForTokenClassification`,L]],[`neobert`,[`NeoBertForTokenClassification`,we]],[`modernbert`,[`ModernBertForTokenClassification`,Ae]],[`roformer`,[`RoFormerForTokenClassification`,Ie]],[`electra`,[`ElectraForTokenClassification`,Ke]],[`esm`,[`EsmForTokenClassification`,St]],[`convbert`,[`ConvBertForTokenClassification`,Ve]],[`camembert`,[`CamembertForTokenClassification`,Qe]],[`deberta`,[`DebertaForTokenClassification`,it]],[`deberta-v2`,[`DebertaV2ForTokenClassification`,ut]],[`mpnet`,[`MPNetForTokenClassification`,Mt]],[`distilbert`,[`DistilBertForTokenClassification`,ht]],[`roberta`,[`RobertaForTokenClassification`,gn]],[`xlm`,[`XLMForTokenClassification`,xn]],[`xlm-roberta`,[`XLMRobertaForTokenClassification`,Dn]]]),Nl=new Map([[`t5`,[`T5ForConditionalGeneration`,Kt]],[`longt5`,[`LongT5ForConditionalGeneration`,Yt]],[`mt5`,[`MT5ForConditionalGeneration`,Qt]],[`bart`,[`BartForConditionalGeneration`,tn]],[`mbart`,[`MBartForConditionalGeneration`,an]],[`marian`,[`MarianMTModel`,us]],[`m2m_100`,[`M2M100ForConditionalGeneration`,ps]],[`blenderbot`,[`BlenderbotForConditionalGeneration`,un]],[`blenderbot-small`,[`BlenderbotSmallForConditionalGeneration`,H]]]),Pl=new Map([[`bloom`,[`BloomForCausalLM`,Li]],[`gpt2`,[`GPT2LMHeadModel`,_r]],[`jais`,[`JAISLMHeadModel`,br]],[`gptj`,[`GPTJForCausalLM`,kr]],[`gpt_bigcode`,[`GPTBigCodeForCausalLM`,Mr]],[`gpt_neo`,[`GPTNeoForCausalLM`,Cr]],[`gpt_neox`,[`GPTNeoXForCausalLM`,Er]],[`codegen`,[`CodeGenForCausalLM`,Fr]],[`llama`,[`LlamaForCausalLM`,Rr]],[`exaone`,[`ExaoneForCausalLM`,qr]],[`olmo`,[`OlmoForCausalLM`,$r]],[`olmo2`,[`Olmo2ForCausalLM`,ni]],[`mobilellm`,[`MobileLLMForCausalLM`,Xr]],[`granite`,[`GraniteForCausalLM`,ai]],[`cohere`,[`CohereForCausalLM`,ci]],[`gemma`,[`GemmaForCausalLM`,di]],[`gemma2`,[`Gemma2ForCausalLM`,mi]],[`gemma3_text`,[`Gemma3ForCausalLM`,_i]],[`helium`,[`HeliumForCausalLM`,Vr]],[`glm`,[`GlmForCausalLM`,Wr]],[`openelm`,[`OpenELMForCausalLM`,bi]],[`qwen2`,[`Qwen2ForCausalLM`,Ci]],[`qwen3`,[`Qwen3ForCausalLM`,Ei]],[`phi`,[`PhiForCausalLM`,ji]],[`phi3`,[`Phi3ForCausalLM`,Pi]],[`mpt`,[`MptForCausalLM`,Bi]],[`opt`,[`OPTForCausalLM`,Ui]],[`mbart`,[`MBartForCausalLM`,sn]],[`mistral`,[`MistralForCausalLM`,ic]],[`starcoder2`,[`Starcoder2ForCausalLM`,sc]],[`falcon`,[`FalconForCausalLM`,uc]],[`trocr`,[`TrOCRForCausalLM`,tc]],[`stablelm`,[`StableLmForCausalLM`,Cc]],[`phi3_v`,[`Phi3VForCausalLM`,G]]]),Fl=new Map([[`multi_modality`,[`MultiModalityCausalLM`,Xc]]]),Il=new Map([[`bert`,[`BertForMaskedLM`,_e]],[`neobert`,[`NeoBertForMaskedLM`,Se]],[`modernbert`,[`ModernBertForMaskedLM`,Oe]],[`roformer`,[`RoFormerForMaskedLM`,Pe]],[`electra`,[`ElectraForMaskedLM`,We]],[`esm`,[`EsmForMaskedLM`,bt]],[`convbert`,[`ConvBertForMaskedLM`,Be]],[`camembert`,[`CamembertForMaskedLM`,Xe]],[`deberta`,[`DebertaForMaskedLM`,nt]],[`deberta-v2`,[`DebertaV2ForMaskedLM`,ct]],[`mpnet`,[`MPNetForMaskedLM`,At]],[`albert`,[`AlbertForMaskedLM`,Ut]],[`distilbert`,[`DistilBertForMaskedLM`,_t]],[`roberta`,[`RobertaForMaskedLM`,hn]],[`xlm`,[`XLMWithLMHeadModel`,W]],[`xlm-roberta`,[`XLMRobertaForMaskedLM`,Tn]],[`mobilebert`,[`MobileBertForMaskedLM`,Tt]],[`squeezebert`,[`SqueezeBertForMaskedLM`,It]]]),Ll=new Map([[`bert`,[`BertForQuestionAnswering`,ye]],[`neobert`,[`NeoBertForQuestionAnswering`,Te]],[`roformer`,[`RoFormerForQuestionAnswering`,Le]],[`electra`,[`ElectraForQuestionAnswering`,qe]],[`convbert`,[`ConvBertForQuestionAnswering`,He]],[`camembert`,[`CamembertForQuestionAnswering`,$e]],[`deberta`,[`DebertaForQuestionAnswering`,at]],[`deberta-v2`,[`DebertaV2ForQuestionAnswering`,dt]],[`mpnet`,[`MPNetForQuestionAnswering`,Nt]],[`albert`,[`AlbertForQuestionAnswering`,Ht]],[`distilbert`,[`DistilBertForQuestionAnswering`,gt]],[`roberta`,[`RobertaForQuestionAnswering`,_n]],[`xlm`,[`XLMForQuestionAnswering`,Sn]],[`xlm-roberta`,[`XLMRobertaForQuestionAnswering`,On]],[`mobilebert`,[`MobileBertForQuestionAnswering`,Dt]],[`squeezebert`,[`SqueezeBertForQuestionAnswering`,Rt]]]),Rl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,zn]],[`idefics3`,[`Idefics3ForConditionalGeneration`,Qn]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,$n]]]),zl=new Map([[`llava`,[`LlavaForConditionalGeneration`,Vn]],[`llava_onevision`,[`LlavaOnevisionForConditionalGeneration`,Hn]],[`moondream1`,[`Moondream1ForConditionalGeneration`,Un]],[`florence2`,[`Florence2ForConditionalGeneration`,Gn]],[`qwen2-vl`,[`Qwen2VLForConditionalGeneration`,Oi]],[`idefics3`,[`Idefics3ForConditionalGeneration`,Qn]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,$n]],[`paligemma`,[`PaliGemmaForConditionalGeneration`,qn]],[`llava_qwen2`,[`LlavaQwen2ForCausalLM`,Jn]],[`gemma3n`,[`Gemma3nForConditionalGeneration`,Xn]]]),Bl=new Map([[`ultravox`,[`UltravoxModel`,sl]]]),Vl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,zn]]]),Hl=new Map([[`vit`,[`ViTForImageClassification`,Ki]],[`ijepa`,[`IJepaForImageClassification`,Yi]],[`pvt`,[`PvtForImageClassification`,ea]],[`vit_msn`,[`ViTMSNForImageClassification`,aa]],[`fastvit`,[`FastViTForImageClassification`,ua]],[`mobilevit`,[`MobileViTForImageClassification`,ha]],[`mobilevitv2`,[`MobileViTV2ForImageClassification`,va]],[`beit`,[`BeitForImageClassification`,Da]],[`deit`,[`DeiTForImageClassification`,to]],[`hiera`,[`HieraForImageClassification`,io]],[`convnext`,[`ConvNextForImageClassification`,Vo]],[`convnextv2`,[`ConvNextV2ForImageClassification`,Wo]],[`dinov2`,[`Dinov2ForImageClassification`,qo]],[`dinov2_with_registers`,[`Dinov2WithRegistersForImageClassification`,Xo]],[`resnet`,[`ResNetForImageClassification`,so]],[`swin`,[`SwinForImageClassification`,uo]],[`segformer`,[`SegformerForImageClassification`,yc]],[`efficientnet`,[`EfficientNetForImageClassification`,Ec]],[`mobilenet_v1`,[`MobileNetV1ForImageClassification`,Nc]],[`mobilenet_v2`,[`MobileNetV2ForImageClassification`,Lc]],[`mobilenet_v3`,[`MobileNetV3ForImageClassification`,Vc]],[`mobilenet_v4`,[`MobileNetV4ForImageClassification`,Gc]]]),Ul=new Map([[`detr`,[`DetrForObjectDetection`,Aa]],[`rt_detr`,[`RTDetrForObjectDetection`,Ia]],[`rt_detr_v2`,[`RTDetrV2ForObjectDetection`,Ba]],[`rf_detr`,[`RFDetrForObjectDetection`,Wa]],[`d_fine`,[`DFineForObjectDetection`,Ja]],[`table-transformer`,[`TableTransformerForObjectDetection`,Za]],[`yolos`,[`YolosForObjectDetection`,ts]]]),Wl=new Map([[`owlvit`,[`OwlViTForObjectDetection`,xa]],[`owlv2`,[`Owlv2ForObjectDetection`,wa]],[`grounding-dino`,[`GroundingDinoForObjectDetection`,Qo]]]),Gl=new Map([[`detr`,[`DetrForSegmentation`,ja]],[`clipseg`,[`CLIPSegForImageSegmentation`,mr]]]),Kl=new Map([[`segformer`,[`SegformerForSemanticSegmentation`,bc]],[`sapiens`,[`SapiensForSemanticSegmentation`,So]],[`swin`,[`SwinForSemanticSegmentation`,fo]],[`mobilenet_v1`,[`MobileNetV1ForSemanticSegmentation`,Pc]],[`mobilenet_v2`,[`MobileNetV2ForSemanticSegmentation`,Rc]],[`mobilenet_v3`,[`MobileNetV3ForSemanticSegmentation`,Hc]],[`mobilenet_v4`,[`MobileNetV4ForSemanticSegmentation`,Kc]]]),ql=new Map([[`detr`,[`DetrForSegmentation`,ja]],[`maskformer`,[`MaskFormerForInstanceSegmentation`,No]]]),Jl=new Map([[`sam`,[`SamModel`,os]]]),Yl=new Map([[`wav2vec2`,[`Wav2Vec2ForCTC`,gs]],[`wav2vec2-bert`,[`Wav2Vec2BertForCTC`,Fs]],[`unispeech`,[`UniSpeechForCTC`,Es]],[`unispeech-sat`,[`UniSpeechSatForCTC`,As]],[`wavlm`,[`WavLMForCTC`,Us]],[`hubert`,[`HubertForCTC`,zs]]]),Xl=new Map([[`wav2vec2`,[`Wav2Vec2ForSequenceClassification`,_s]],[`wav2vec2-bert`,[`Wav2Vec2BertForSequenceClassification`,Is]],[`unispeech`,[`UniSpeechForSequenceClassification`,Ds]],[`unispeech-sat`,[`UniSpeechSatForSequenceClassification`,js]],[`wavlm`,[`WavLMForSequenceClassification`,Ws]],[`hubert`,[`HubertForSequenceClassification`,Bs]],[`audio-spectrogram-transformer`,[`ASTForAudioClassification`,jn]]]),Zl=new Map([[`wavlm`,[`WavLMForXVector`,Gs]]]),Ql=new Map([[`unispeech-sat`,[`UniSpeechSatForAudioFrameClassification`,Ms]],[`wavlm`,[`WavLMForAudioFrameClassification`,Ks]],[`wav2vec2`,[`Wav2Vec2ForAudioFrameClassification`,vs]],[`pyannote`,[`PyAnnoteForAudioFrameClassification`,xs]]]),$l=new Map([[`vitmatte`,[`VitMatteForImageMatting`,fa]]]),eu=new Map([[`patchtst`,[`PatchTSTForPrediction`,nl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,al]]]),tu=new Map([[`swin2sr`,[`Swin2SRForImageSuperResolution`,ho]]]),nu=new Map([[`dpt`,[`DPTForDepthEstimation`,vo]],[`depth_anything`,[`DepthAnythingForDepthEstimation`,bo]],[`glpn`,[`GLPNForDepthEstimation`,Io]],[`sapiens`,[`SapiensForDepthEstimation`,Co]],[`depth_pro`,[`DepthProForDepthEstimation`,Eo]],[`metric3d`,[`Metric3DForDepthEstimation`,Oo]],[`metric3dv2`,[`Metric3Dv2ForDepthEstimation`,Ao]]]),ru=new Map([[`sapiens`,[`SapiensForNormalEstimation`,wo]]]),iu=new Map([[`vitpose`,[`VitPoseForPoseEstimation`,Zi]]]),au=new Map([[`clip`,[`CLIPVisionModelWithProjection`,ar]],[`siglip`,[`SiglipVisionModel`,sr]],[`jina_clip`,[`JinaCLIPVisionModel`,fr]]]),ou=[[wl,b.EncoderOnly],[Tl,b.EncoderDecoder],[Dl,b.DecoderOnly],[El,b.AutoEncoder],[jl,b.EncoderOnly],[Ml,b.EncoderOnly],[Nl,b.Seq2Seq],[Ol,b.Seq2Seq],[Pl,b.DecoderOnly],[Fl,b.MultiModality],[Il,b.EncoderOnly],[Ll,b.EncoderOnly],[Rl,b.Vision2Seq],[zl,b.ImageTextToText],[Bl,b.AudioTextToText],[Hl,b.EncoderOnly],[Gl,b.EncoderOnly],[ql,b.EncoderOnly],[Kl,b.EncoderOnly],[$l,b.EncoderOnly],[eu,b.EncoderOnly],[tu,b.EncoderOnly],[nu,b.EncoderOnly],[ru,b.EncoderOnly],[iu,b.EncoderOnly],[Ul,b.EncoderOnly],[Wl,b.EncoderOnly],[Jl,b.MaskGeneration],[Yl,b.EncoderOnly],[Xl,b.EncoderOnly],[kl,b.Seq2Seq],[Al,b.EncoderOnly],[Zl,b.EncoderOnly],[Ql,b.EncoderOnly],[au,b.EncoderOnly]];for(let[e,t]of ou)for(let[n,r]of e.values())x.set(n,t),C.set(r,n),S.set(n,r);let su=[[`MusicgenForConditionalGeneration`,Ac,b.Musicgen],[`Phi3VForCausalLM`,G,b.Phi3V],[`CLIPTextModelWithProjection`,ir,b.EncoderOnly],[`SiglipTextModel`,or,b.EncoderOnly],[`JinaCLIPTextModel`,dr,b.EncoderOnly],[`ClapTextModelWithProjection`,pc,b.EncoderOnly],[`ClapAudioModelWithProjection`,mc,b.EncoderOnly],[`DacEncoderModel`,vl,b.EncoderOnly],[`DacDecoderModel`,yl,b.EncoderOnly],[`MimiEncoderModel`,fl,b.EncoderOnly],[`MimiDecoderModel`,pl,b.EncoderOnly],[`SnacEncoderModel`,Sl,b.EncoderOnly],[`SnacDecoderModel`,Cl,b.EncoderOnly],[`Gemma3nForConditionalGeneration`,Xn,b.ImageAudioTextToText]];for(let[e,t,n]of su)x.set(e,n),C.set(t,e),S.set(e,t);let cu=new Map([[`modnet`,Gl],[`birefnet`,Gl],[`isnet`,Gl],[`ben`,Gl]]);for(let[e,t]of cu.entries())t.set(e,[`PreTrainedModel`,I]),x.set(e,b.EncoderOnly),C.set(I,e),S.set(e,I);class lu extends Z{static MODEL_CLASS_MAPPINGS=ou.map(e=>e[0]);static BASE_IF_FAIL=!0}class uu extends Z{static MODEL_CLASS_MAPPINGS=[jl]}class du extends Z{static MODEL_CLASS_MAPPINGS=[Ml]}class fu extends Z{static MODEL_CLASS_MAPPINGS=[Nl]}class pu extends Z{static MODEL_CLASS_MAPPINGS=[Ol]}class mu extends Z{static MODEL_CLASS_MAPPINGS=[kl]}class hu extends Z{static MODEL_CLASS_MAPPINGS=[Al]}class gu extends Z{static MODEL_CLASS_MAPPINGS=[Pl]}class _u extends Z{static MODEL_CLASS_MAPPINGS=[Il]}class vu extends Z{static MODEL_CLASS_MAPPINGS=[Ll]}class yu extends Z{static MODEL_CLASS_MAPPINGS=[Rl]}class bu extends Z{static MODEL_CLASS_MAPPINGS=[Hl]}class xu extends Z{static MODEL_CLASS_MAPPINGS=[Gl]}class Su extends Z{static MODEL_CLASS_MAPPINGS=[Kl]}class Cu extends Z{static MODEL_CLASS_MAPPINGS=[ql]}class wu extends Z{static MODEL_CLASS_MAPPINGS=[Ul]}class Tu extends Z{static MODEL_CLASS_MAPPINGS=[Wl]}class Eu extends Z{static MODEL_CLASS_MAPPINGS=[Jl]}class Du extends Z{static MODEL_CLASS_MAPPINGS=[Yl]}class Ou extends Z{static MODEL_CLASS_MAPPINGS=[Xl]}class ku extends Z{static MODEL_CLASS_MAPPINGS=[Zl]}class Au extends Z{static MODEL_CLASS_MAPPINGS=[Ql]}class ju extends Z{static MODEL_CLASS_MAPPINGS=[Vl]}class Mu extends Z{static MODEL_CLASS_MAPPINGS=[$l]}class Nu extends Z{static MODEL_CLASS_MAPPINGS=[tu]}class Pu extends Z{static MODEL_CLASS_MAPPINGS=[nu]}class Fu extends Z{static MODEL_CLASS_MAPPINGS=[ru]}class Iu extends Z{static MODEL_CLASS_MAPPINGS=[iu]}class Lu extends Z{static MODEL_CLASS_MAPPINGS=[au]}class Ru extends Z{static MODEL_CLASS_MAPPINGS=[zl]}class zu extends Z{static MODEL_CLASS_MAPPINGS=[Bl]}class Bu extends pe{constructor({logits:e,past_key_values:t,encoder_outputs:n,decoder_attentions:r=null,cross_attentions:i=null}){super(),this.logits=e,this.past_key_values=t,this.encoder_outputs=n,this.decoder_attentions=r,this.cross_attentions=i}}class Q extends pe{constructor({logits:e,...t}){super(),this.logits=e;let n=Object.values(t);n.length>0&&(this.attentions=n)}}class Vu extends pe{constructor({logits:e,embeddings:t}){super(),this.logits=e,this.embeddings=t}}class Hu extends pe{constructor({logits:e}){super(),this.logits=e}}class Uu extends pe{constructor({logits:e}){super(),this.logits=e}}class Wu extends pe{constructor({start_logits:e,end_logits:t}){super(),this.start_logits=e,this.end_logits=t}}class Gu extends pe{constructor({logits:e}){super(),this.logits=e}}class Ku extends pe{constructor({logits:e,past_key_values:t}){super(),this.logits=e,this.past_key_values=t}}class qu extends pe{constructor({alphas:e}){super(),this.alphas=e}}class Ju extends pe{constructor({waveform:e,spectrogram:t}){super(),this.waveform=e,this.spectrogram=t}}},"./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hann`,{periodic:!1}),this.mean=this.config.mean,this.std=this.config.std}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e){(0,r.validate_audio_inputs)(e,`ASTFeatureExtractor`);let t=await this._extract_fbank_features(e,this.config.max_length);if(this.config.do_normalize){let e=this.std*2,n=t.data;for(let t=0;t{n.r(t),n.d(t,{AutoFeatureExtractor:()=>s});var r=n( +/*! ../../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../../utils/hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),o=n( +/*! ../feature_extractors.js */ +`./src/models/feature_extractors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t),a=n.feature_extractor_type,s=o[a];if(!s)throw Error(`Unknown feature_extractor_type: '${a}'. Please report this at ${r.GITHUB_ISSUE_URL}.`);return new s(n)}}},"./src/models/auto/image_processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoImageProcessor:()=>s});var r=n( +/*! ../../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../../utils/hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),o=n( +/*! ../image_processors.js */ +`./src/models/image_processors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),s=n.image_processor_type??n.feature_extractor_type,c=o[s?.replace(/Fast$/,``)];return c||(s!==void 0&&console.warn(`Image processor type '${s}' not found, assuming base ImageProcessor. Please report this at ${r.GITHUB_ISSUE_URL}.`),c=a.ImageProcessor),new c(n)}}},"./src/models/auto/processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoProcessor:()=>l});var r=n( +/*! ../../utils/constants.js */ +`./src/utils/constants.js`),i=n( +/*! ../../utils/hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),o=n( +/*! ../processors.js */ +`./src/models/processors.js`),s=n( +/*! ../image_processors.js */ +`./src/models/image_processors.js`),c=n( +/*! ../feature_extractors.js */ +`./src/models/feature_extractors.js`);class l{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),{image_processor_type:l,feature_extractor_type:u,processor_class:d}=n;if(d&&o[d])return o[d].from_pretrained(e,t);if(!l&&!u)throw Error("No `image_processor_type` or `feature_extractor_type` found in the config.");let f={};if(l){let e=s[l.replace(/Fast$/,``)];if(!e)throw Error(`Unknown image_processor_type: '${l}'.`);f.image_processor=new e(n)}if(u){let e=s[u];if(e)f.image_processor=new e(n);else{let e=c[u];if(!e)throw Error(`Unknown feature_extractor_type: '${u}'.`);f.feature_extractor=new e(n)}}let p={};return new a.Processor(p,f,null)}}},"./src/models/beit/image_processing_beit.js":(e,t,n)=>{n.r(t),n.d(t,{BeitFeatureExtractor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/bit/image_processing_bit.js":(e,t,n)=>{n.r(t),n.d(t,{BitImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/chinese_clip/image_processing_chinese_clip.js":(e,t,n)=>{n.r(t),n.d(t,{ChineseCLIPFeatureExtractor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/clap/feature_extraction_clap.js":(e,t,n)=>{n.r(t),n.d(t,{ClapFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e),this.mel_filters=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,null,`htk`),this.mel_filters_slaney=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,`slaney`,`slaney`),this.window=(0,a.window_function)(this.config.fft_window_size,`hann`)}async _get_input_mel(e,t,n,r){let i,a=!1,o=e.length-t;if(o>0)if(n===`rand_trunc`){a=!0;let n=Math.floor(Math.random()*(o+1));e=e.subarray(n,n+t),i=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}else throw Error(`Truncation strategy "${n}" not implemented`);else{if(o<0){let n=new Float64Array(t);if(n.set(e),r===`repeat`)for(let r=e.length;r{n.r(t),n.d(t,{CLIPFeatureExtractor:()=>a,CLIPImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/convnext/image_processing_convnext.js":(e,t,n)=>{n.r(t),n.d(t,{ConvNextFeatureExtractor:()=>a,ConvNextImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.crop_pct=this.config.crop_pct??224/256}async resize(e){let t=this.size?.shortest_edge;if(t===void 0)throw Error(`Size dictionary must contain 'shortest_edge' key.`);if(t<384){let n=Math.floor(t/this.crop_pct),[r,i]=this.get_resize_output_image_size(e,{shortest_edge:n});e=await e.resize(r,i,{resample:this.resample}),e=await e.center_crop(t,t)}else e=await e.resize(t,t,{resample:this.resample});return e}}class a extends i{}},"./src/models/dac/feature_extraction_dac.js":(e,t,n)=>{n.r(t),n.d(t,{DacFeatureExtractor:()=>i});var r=n( +/*! ../encodec/feature_extraction_encodec.js */ +`./src/models/encodec/feature_extraction_encodec.js`);class i extends r.EncodecFeatureExtractor{}},"./src/models/deit/image_processing_deit.js":(e,t,n)=>{n.r(t),n.d(t,{DeiTFeatureExtractor:()=>a,DeiTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/detr/image_processing_detr.js":(e,t,n)=>{n.r(t),n.d(t,{DetrFeatureExtractor:()=>o,DetrImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=[t.pixel_values.dims[0],64,64],r=(0,i.full)(n,1n);return{...t,pixel_mask:r}}post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class o extends a{}},"./src/models/donut/image_processing_donut.js":(e,t,n)=>{n.r(t),n.d(t,{DonutFeatureExtractor:()=>a,DonutImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t,s=this.image_mean;Array.isArray(this.image_mean)||(s=Array(o).fill(s));let c=this.image_std;Array.isArray(c)||(c=Array(o).fill(s));let l=s.map((e,t)=>-e/c[t]);return super.pad_image(e,t,n,{center:!0,constant_values:l,...r})}}class a extends i{}},"./src/models/dpt/image_processing_dpt.js":(e,t,n)=>{n.r(t),n.d(t,{DPTFeatureExtractor:()=>a,DPTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/efficientnet/image_processing_efficientnet.js":(e,t,n)=>{n.r(t),n.d(t,{EfficientNetImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.include_top=this.config.include_top??!0,this.include_top&&(this.image_std=this.image_std.map(e=>e*e))}}},"./src/models/encodec/feature_extraction_encodec.js":(e,t,n)=>{n.r(t),n.d(t,{EncodecFeatureExtractor:()=>a});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`EncodecFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=this.config.feature_size;if(e.length%t!==0)throw Error(`The length of the audio data must be a multiple of the number of channels (${t}).`);let n=[1,t,e.length/t];return{input_values:new i.Tensor(`float32`,e,n)}}}},"./src/models/feature_extractors.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>r.ASTFeatureExtractor,ClapFeatureExtractor:()=>a.ClapFeatureExtractor,DacFeatureExtractor:()=>o.DacFeatureExtractor,EncodecFeatureExtractor:()=>i.EncodecFeatureExtractor,Gemma3nAudioFeatureExtractor:()=>s.Gemma3nAudioFeatureExtractor,ImageFeatureExtractor:()=>g.ImageProcessor,MoonshineFeatureExtractor:()=>c.MoonshineFeatureExtractor,PyAnnoteFeatureExtractor:()=>l.PyAnnoteFeatureExtractor,SeamlessM4TFeatureExtractor:()=>u.SeamlessM4TFeatureExtractor,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SpeechT5FeatureExtractor:()=>f.SpeechT5FeatureExtractor,Wav2Vec2FeatureExtractor:()=>p.Wav2Vec2FeatureExtractor,WeSpeakerFeatureExtractor:()=>m.WeSpeakerFeatureExtractor,WhisperFeatureExtractor:()=>h.WhisperFeatureExtractor});var r=n( +/*! ./audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js */ +`./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js`),i=n( +/*! ./encodec/feature_extraction_encodec.js */ +`./src/models/encodec/feature_extraction_encodec.js`),a=n( +/*! ./clap/feature_extraction_clap.js */ +`./src/models/clap/feature_extraction_clap.js`),o=n( +/*! ./dac/feature_extraction_dac.js */ +`./src/models/dac/feature_extraction_dac.js`),s=n( +/*! ./gemma3n/feature_extraction_gemma3n.js */ +`./src/models/gemma3n/feature_extraction_gemma3n.js`),c=n( +/*! ./moonshine/feature_extraction_moonshine.js */ +`./src/models/moonshine/feature_extraction_moonshine.js`),l=n( +/*! ./pyannote/feature_extraction_pyannote.js */ +`./src/models/pyannote/feature_extraction_pyannote.js`),u=n( +/*! ./seamless_m4t/feature_extraction_seamless_m4t.js */ +`./src/models/seamless_m4t/feature_extraction_seamless_m4t.js`),d=n( +/*! ./snac/feature_extraction_snac.js */ +`./src/models/snac/feature_extraction_snac.js`),f=n( +/*! ./speecht5/feature_extraction_speecht5.js */ +`./src/models/speecht5/feature_extraction_speecht5.js`),p=n( +/*! ./wav2vec2/feature_extraction_wav2vec2.js */ +`./src/models/wav2vec2/feature_extraction_wav2vec2.js`),m=n( +/*! ./wespeaker/feature_extraction_wespeaker.js */ +`./src/models/wespeaker/feature_extraction_wespeaker.js`),h=n( +/*! ./whisper/feature_extraction_whisper.js */ +`./src/models/whisper/feature_extraction_whisper.js`),g=n( +/*! ../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`)},"./src/models/florence2/processing_florence2.js":(e,t,n)=>{n.r(t),n.d(t,{Florence2Processor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;constructor(e,t,n){super(e,t,n);let{tasks_answer_post_processing_type:r,task_prompts_without_inputs:i,task_prompts_with_input:a}=this.image_processor.config;this.tasks_answer_post_processing_type=new Map(Object.entries(r??{})),this.task_prompts_without_inputs=new Map(Object.entries(i??{})),this.task_prompts_with_input=new Map(Object.entries(a??{})),this.regexes={quad_boxes:/(.+?)/gm,bboxes:/([^<]+)?/gm},this.size_per_bin=1e3}construct_prompts(e){typeof e==`string`&&(e=[e]);let t=[];for(let n of e)if(this.task_prompts_without_inputs.has(n))t.push(this.task_prompts_without_inputs.get(n));else{for(let[e,r]of this.task_prompts_with_input)if(n.includes(e)){t.push(r.replaceAll(`{input}`,n).replaceAll(e,``));break}t.length!==e.length&&t.push(n)}return t}post_process_generation(e,t,n){let r=this.tasks_answer_post_processing_type.get(t)??`pure_text`;e=e.replaceAll(``,``).replaceAll(``,``);let i;switch(r){case`pure_text`:i=e;break;case`description_with_bboxes`:case`bboxes`:case`phrase_grounding`:case`ocr`:let a=r===`ocr`?`quad_boxes`:`bboxes`,o=e.matchAll(this.regexes[a]),s=[],c=[];for(let[e,t,...r]of o)s.push(t?t.trim():s.at(-1)??``),c.push(r.map((e,t)=>(Number(e)+.5)/this.size_per_bin*n[t%2]));i={labels:s,[a]:c};break;default:throw Error(`Task "${t}" (of type "${r}") not yet implemented.`)}return{[t]:i}}async _call(e,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=await this.image_processor(e,n),i=t?this.tokenizer(this.construct_prompts(t),n):{};return{...r,...i}}}},"./src/models/gemma3n/feature_extraction_gemma3n.js":(e,t,n)=>{n.r(t),n.d(t,{Gemma3nAudioFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let{fft_length:t,feature_size:n,min_frequency:r,max_frequency:i,sampling_rate:o,frame_length:s}=this.config,c=(0,a.mel_filter_bank)(Math.floor(1+t/2),n,r,i,o,null,`htk`,!1);this.mel_filters=c,this.window=(0,a.window_function)(s,`hann`)}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,this.config.frame_length,this.config.hop_length,{fft_length:this.config.fft_length,center:!1,onesided:!0,preemphasis:this.config.preemphasis,preemphasis_htk_flavor:this.config.preemphasis_htk_flavor,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:this.config.mel_floor,remove_dc_offset:!1,transpose:!0})}async _call(e,{max_length:t=48e4,truncation:n=!0,padding:a=!0,pad_to_multiple_of:o=128}={}){if((0,r.validate_audio_inputs)(e,`Gemma3nAudioFeatureExtractor`),n&&e.length>t&&(e=e.slice(0,t)),a&&e.length%o!==0){let t=o-e.length%o,n=new Float64Array(e.length+t);n.set(e),this.config.padding_value!==0&&n.fill(this.config.padding_value,e.length),e=n}let s=await this._extract_fbank_features(e,this.config.max_length),c=(0,i.full)([1,s.dims[0]],!0);return{input_features:s.unsqueeze_(0),input_features_mask:c}}}},"./src/models/gemma3n/processing_gemma3n.js":(e,t,n)=>{n.r(t),n.d(t,{Gemma3nProcessor:()=>l});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),o=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),s=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`),c=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class l extends r.Processor{static image_processor_class=i.AutoImageProcessor;static feature_extractor_class=a.AutoFeatureExtractor;static tokenizer_class=o.AutoTokenizer;static uses_processor_config=!0;static uses_chat_template_file=!0;constructor(e,t,n){super(e,t,n),this.audio_seq_length=this.config.audio_seq_length,this.image_seq_length=this.config.image_seq_length;let{audio_token_id:r,boa_token:i,audio_token:a,eoa_token:o,image_token_id:s,boi_token:c,image_token:l,eoi_token:u}=this.tokenizer.config;this.audio_token_id=r,this.boa_token=i,this.audio_token=a;let d=a.repeat(this.audio_seq_length);this.full_audio_sequence=`\n\n${i}${d}${o}\n\n`,this.image_token_id=s,this.boi_token=c,this.image_token=l;let f=l.repeat(this.image_seq_length);this.full_image_sequence=`\n\n${c}${f}${u}\n\n`}async _call(e,t=null,n=null,r={}){typeof e==`string`&&(e=[e]);let i;n&&(i=await this.feature_extractor(n,r),e=e.map(e=>e.replaceAll(this.audio_token,this.full_audio_sequence)));let a;t&&(a=await this.image_processor(t,r),e=e.map(e=>e.replaceAll(this.image_token,this.full_image_sequence)));let o=this.tokenizer(e,r);return{...o,...a,...i}}}},"./src/models/glpn/image_processing_glpn.js":(e,t,n)=>{n.r(t),n.d(t,{GLPNFeatureExtractor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/grounding_dino/image_processing_grounding_dino.js":(e,t,n)=>{n.r(t),n.d(t,{GroundingDinoImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=t.pixel_values.dims,r=(0,i.ones)([n[0],n[2],n[3]]);return{...t,pixel_mask:r}}}},"./src/models/grounding_dino/processing_grounding_dino.js":(e,t,n)=>{n.r(t),n.d(t,{GroundingDinoProcessor:()=>c});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);function s(e,t){let n=0,r=e.dims.at(-1)-1,i=e.tolist();i.fill(!1,0,n+1),i.fill(!1,r);let a=t.tolist();return i.map((e,t)=>e?t:null).filter(e=>e!==null).map(e=>a[e])}class c extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;async _call(e,t,n={}){let r=e?await this.image_processor(e,n):{},i=t?this.tokenizer(t,n):{};return{...i,...r}}post_process_grounded_object_detection(e,t,{box_threshold:n=.25,text_threshold:r=.25,target_sizes:i=null}={}){let{logits:a,pred_boxes:c}=e,l=a.dims[0];if(i!==null&&i.length!==l)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let u=a.dims.at(1),d=a.sigmoid(),f=d.max(-1).tolist(),p=c.tolist().map(e=>e.map(e=>(0,o.center_to_corners_format)(e))),m=[];for(let e=0;ee.map((e,t)=>e*a[(t+1)%2])));let o=f[e],c=[],l=[],h=[];for(let i=0;i{n.r(t),n.d(t,{Idefics3ImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{constructor(e){super(e),this.do_image_splitting=e.do_image_splitting??!0,this.max_image_size=e.max_image_size}get_resize_for_vision_encoder(e,t){let[n,r]=e.dims.slice(-2),i=r/n;return r>=n?(r=Math.ceil(r/t)*t,n=Math.floor(r/i),n=Math.ceil(n/t)*t):(n=Math.ceil(n/t)*t,r=Math.floor(n*i),r=Math.ceil(r/t)*t),{height:n,width:r}}async _call(e,{do_image_splitting:t=null,return_row_col_info:n=!1}={}){let r;if(!Array.isArray(e))r=[[e]];else{if(e.length===0||!e[0])throw Error(`No images provided.`);r=Array.isArray(e[0])?e:[e]}let a=[],o=[],s=[],c=[],l=[];for(let e of r){let n=await Promise.all(e.map(e=>this.preprocess(e)));c.push(...n.map(e=>e.original_size)),l.push(...n.map(e=>e.reshaped_input_size)),n.forEach(e=>e.pixel_values.unsqueeze_(0));let{longest_edge:r}=this.max_image_size,u;if(t??this.do_image_splitting){let e=Array(n.length),t=Array(n.length);u=await Promise.all(n.map(async(n,a)=>{let o=this.get_resize_for_vision_encoder(n.pixel_values,r),s=await(0,i.interpolate_4d)(n.pixel_values,{size:[o.height,o.width]}),{frames:c,num_splits_h:l,num_splits_w:u}=await this.split_image(s,this.max_image_size);return e[a]=l,t[a]=u,(0,i.cat)(c,0)})),o.push(e),s.push(t)}else{let e=[r,r];u=await Promise.all(n.map(t=>(0,i.interpolate_4d)(t.pixel_values,{size:e}))),o.push(Array(n.length).fill(0)),s.push(Array(n.length).fill(0))}a.push((0,i.cat)(u,0))}let u=a.length,[d,f,p,m]=a[0].dims,h,g;if(u===1)h=a[0].unsqueeze_(0),g=(0,i.full)([u,d,p,m],!0);else{let e=Math.max(...a.map(e=>e.dims.at(0)));g=(0,i.full)([u,e,p,m],!0);let t=g.data,n=e*p*m;for(let r=0;rn||s>r){c=Math.ceil(o/n),l=Math.ceil(s/r);let t=Math.ceil(o/c),u=Math.ceil(s/l);for(let n=0;n{n.r(t),n.d(t,{Idefics3Processor:()=>d});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`),s=n( +/*! ../../utils/core.js */ +`./src/utils/core.js`);function c(e,t,n,r,i,a){let o=``;for(let a=0;a`+i.repeat(e);o+=` +`}return o+=`\n${r}${a}`+i.repeat(e)+`${r}`,o}function l(e,t,n,r){return`${t}${r}`+n.repeat(e)+`${t}`}function u(e,t,n,r,i,a){return e===0&&t===0?l(n,r,i,a):c(n,e,t,r,i,a)}class d extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;static uses_processor_config=!0;fake_image_token=``;image_token=``;global_img_token=``;async _call(e,t=null,n={}){n.return_row_col_info??=!0;let r;t&&(r=await this.image_processor(t,n)),Array.isArray(e)||(e=[e]);let i=r.rows??[Array(e.length).fill(0)],a=r.cols??[Array(e.length).fill(0)],o=this.config.image_seq_len,c=[],l=[];for(let t=0;tu(e,d[t],o,this.fake_image_token,this.image_token,this.global_img_token)),p=n.split(this.image_token);if(p.length===0)throw Error(`The image token should be present in the text.`);let m=p[0];for(let e=0;e{n.r(t),n.d(t,{BeitFeatureExtractor:()=>r.BeitFeatureExtractor,BitImageProcessor:()=>i.BitImageProcessor,CLIPFeatureExtractor:()=>o.CLIPFeatureExtractor,CLIPImageProcessor:()=>o.CLIPImageProcessor,ChineseCLIPFeatureExtractor:()=>a.ChineseCLIPFeatureExtractor,ConvNextFeatureExtractor:()=>s.ConvNextFeatureExtractor,ConvNextImageProcessor:()=>s.ConvNextImageProcessor,DPTFeatureExtractor:()=>d.DPTFeatureExtractor,DPTImageProcessor:()=>d.DPTImageProcessor,DeiTFeatureExtractor:()=>c.DeiTFeatureExtractor,DeiTImageProcessor:()=>c.DeiTImageProcessor,DetrFeatureExtractor:()=>l.DetrFeatureExtractor,DetrImageProcessor:()=>l.DetrImageProcessor,DonutFeatureExtractor:()=>u.DonutFeatureExtractor,DonutImageProcessor:()=>u.DonutImageProcessor,EfficientNetImageProcessor:()=>f.EfficientNetImageProcessor,GLPNFeatureExtractor:()=>p.GLPNFeatureExtractor,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,Idefics3ImageProcessor:()=>h.Idefics3ImageProcessor,JinaCLIPImageProcessor:()=>_.JinaCLIPImageProcessor,LlavaOnevisionImageProcessor:()=>v.LlavaOnevisionImageProcessor,Mask2FormerImageProcessor:()=>y.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>b.MaskFormerFeatureExtractor,MaskFormerImageProcessor:()=>b.MaskFormerImageProcessor,MobileNetV1FeatureExtractor:()=>x.MobileNetV1FeatureExtractor,MobileNetV1ImageProcessor:()=>x.MobileNetV1ImageProcessor,MobileNetV2FeatureExtractor:()=>S.MobileNetV2FeatureExtractor,MobileNetV2ImageProcessor:()=>S.MobileNetV2ImageProcessor,MobileNetV3FeatureExtractor:()=>C.MobileNetV3FeatureExtractor,MobileNetV3ImageProcessor:()=>C.MobileNetV3ImageProcessor,MobileNetV4FeatureExtractor:()=>w.MobileNetV4FeatureExtractor,MobileNetV4ImageProcessor:()=>w.MobileNetV4ImageProcessor,MobileViTFeatureExtractor:()=>T.MobileViTFeatureExtractor,MobileViTImageProcessor:()=>T.MobileViTImageProcessor,NougatImageProcessor:()=>E.NougatImageProcessor,OwlViTFeatureExtractor:()=>O.OwlViTFeatureExtractor,OwlViTImageProcessor:()=>O.OwlViTImageProcessor,Owlv2ImageProcessor:()=>D.Owlv2ImageProcessor,Phi3VImageProcessor:()=>k.Phi3VImageProcessor,PvtImageProcessor:()=>A.PvtImageProcessor,Qwen2VLImageProcessor:()=>ee.Qwen2VLImageProcessor,RTDetrImageProcessor:()=>te.RTDetrImageProcessor,SamImageProcessor:()=>ne.SamImageProcessor,SegformerFeatureExtractor:()=>j.SegformerFeatureExtractor,SegformerImageProcessor:()=>j.SegformerImageProcessor,SiglipImageProcessor:()=>re.SiglipImageProcessor,SmolVLMImageProcessor:()=>ie.SmolVLMImageProcessor,Swin2SRImageProcessor:()=>ae.Swin2SRImageProcessor,VLMImageProcessor:()=>g.VLMImageProcessor,ViTFeatureExtractor:()=>oe.ViTFeatureExtractor,ViTImageProcessor:()=>oe.ViTImageProcessor,VitMatteImageProcessor:()=>se.VitMatteImageProcessor,VitPoseImageProcessor:()=>M.VitPoseImageProcessor,YolosFeatureExtractor:()=>N.YolosFeatureExtractor,YolosImageProcessor:()=>N.YolosImageProcessor});var r=n( +/*! ./beit/image_processing_beit.js */ +`./src/models/beit/image_processing_beit.js`),i=n( +/*! ./bit/image_processing_bit.js */ +`./src/models/bit/image_processing_bit.js`),a=n( +/*! ./chinese_clip/image_processing_chinese_clip.js */ +`./src/models/chinese_clip/image_processing_chinese_clip.js`),o=n( +/*! ./clip/image_processing_clip.js */ +`./src/models/clip/image_processing_clip.js`),s=n( +/*! ./convnext/image_processing_convnext.js */ +`./src/models/convnext/image_processing_convnext.js`),c=n( +/*! ./deit/image_processing_deit.js */ +`./src/models/deit/image_processing_deit.js`),l=n( +/*! ./detr/image_processing_detr.js */ +`./src/models/detr/image_processing_detr.js`),u=n( +/*! ./donut/image_processing_donut.js */ +`./src/models/donut/image_processing_donut.js`),d=n( +/*! ./dpt/image_processing_dpt.js */ +`./src/models/dpt/image_processing_dpt.js`),f=n( +/*! ./efficientnet/image_processing_efficientnet.js */ +`./src/models/efficientnet/image_processing_efficientnet.js`),p=n( +/*! ./glpn/image_processing_glpn.js */ +`./src/models/glpn/image_processing_glpn.js`),m=n( +/*! ./grounding_dino/image_processing_grounding_dino.js */ +`./src/models/grounding_dino/image_processing_grounding_dino.js`),h=n( +/*! ./idefics3/image_processing_idefics3.js */ +`./src/models/idefics3/image_processing_idefics3.js`),g=n( +/*! ./janus/image_processing_janus.js */ +`./src/models/janus/image_processing_janus.js`),_=n( +/*! ./jina_clip/image_processing_jina_clip.js */ +`./src/models/jina_clip/image_processing_jina_clip.js`),v=n( +/*! ./llava_onevision/image_processing_llava_onevision.js */ +`./src/models/llava_onevision/image_processing_llava_onevision.js`),y=n( +/*! ./mask2former/image_processing_mask2former.js */ +`./src/models/mask2former/image_processing_mask2former.js`),b=n( +/*! ./maskformer/image_processing_maskformer.js */ +`./src/models/maskformer/image_processing_maskformer.js`),x=n( +/*! ./mobilenet_v1/image_processing_mobilenet_v1.js */ +`./src/models/mobilenet_v1/image_processing_mobilenet_v1.js`),S=n( +/*! ./mobilenet_v2/image_processing_mobilenet_v2.js */ +`./src/models/mobilenet_v2/image_processing_mobilenet_v2.js`),C=n( +/*! ./mobilenet_v3/image_processing_mobilenet_v3.js */ +`./src/models/mobilenet_v3/image_processing_mobilenet_v3.js`),w=n( +/*! ./mobilenet_v4/image_processing_mobilenet_v4.js */ +`./src/models/mobilenet_v4/image_processing_mobilenet_v4.js`),T=n( +/*! ./mobilevit/image_processing_mobilevit.js */ +`./src/models/mobilevit/image_processing_mobilevit.js`),E=n( +/*! ./nougat/image_processing_nougat.js */ +`./src/models/nougat/image_processing_nougat.js`),D=n( +/*! ./owlv2/image_processing_owlv2.js */ +`./src/models/owlv2/image_processing_owlv2.js`),O=n( +/*! ./owlvit/image_processing_owlvit.js */ +`./src/models/owlvit/image_processing_owlvit.js`),k=n( +/*! ./phi3_v/image_processing_phi3_v.js */ +`./src/models/phi3_v/image_processing_phi3_v.js`),A=n( +/*! ./pvt/image_processing_pvt.js */ +`./src/models/pvt/image_processing_pvt.js`),ee=n( +/*! ./qwen2_vl/image_processing_qwen2_vl.js */ +`./src/models/qwen2_vl/image_processing_qwen2_vl.js`),te=n( +/*! ./rt_detr/image_processing_rt_detr.js */ +`./src/models/rt_detr/image_processing_rt_detr.js`),ne=n( +/*! ./sam/image_processing_sam.js */ +`./src/models/sam/image_processing_sam.js`),j=n( +/*! ./segformer/image_processing_segformer.js */ +`./src/models/segformer/image_processing_segformer.js`),re=n( +/*! ./siglip/image_processing_siglip.js */ +`./src/models/siglip/image_processing_siglip.js`),ie=n( +/*! ./smolvlm/image_processing_smolvlm.js */ +`./src/models/smolvlm/image_processing_smolvlm.js`),ae=n( +/*! ./swin2sr/image_processing_swin2sr.js */ +`./src/models/swin2sr/image_processing_swin2sr.js`),oe=n( +/*! ./vit/image_processing_vit.js */ +`./src/models/vit/image_processing_vit.js`),se=n( +/*! ./vitmatte/image_processing_vitmatte.js */ +`./src/models/vitmatte/image_processing_vitmatte.js`),M=n( +/*! ./vitpose/image_processing_vitpose.js */ +`./src/models/vitpose/image_processing_vitpose.js`),N=n( +/*! ./yolos/image_processing_yolos.js */ +`./src/models/yolos/image_processing_yolos.js`)},"./src/models/janus/image_processing_janus.js":(e,t,n)=>{n.r(t),n.d(t,{VLMImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super({do_pad:!0,pad_size:{width:e.image_size,height:e.image_size},...e}),this.constant_values=this.config.background_color.map(e=>e*this.rescale_factor)}pad_image(e,t,n,r){return super.pad_image(e,t,n,{constant_values:this.constant_values,center:!0,...r})}}},"./src/models/janus/processing_janus.js":(e,t,n)=>{n.r(t),n.d(t,{VLChatProcessor:()=>l});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/core.js */ +`./src/utils/core.js`),s=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),c=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`);class l extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;static uses_processor_config=!0;constructor(e,t,n){super(e,t,n),this.image_tag=this.config.image_tag,this.image_start_tag=this.config.image_start_tag,this.image_end_tag=this.config.image_end_tag,this.num_image_tokens=this.config.num_image_tokens}async _call(e,{images:t=null,chat_template:n=`default`}={}){t?Array.isArray(t)||(t=[t]):t=await Promise.all(e.filter(e=>e.images).flatMap(e=>e.images).map(e=>c.RawImage.read(e)));let r=this.tokenizer,i=r.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0,chat_template:n}),a=e=>r.encode(e,{add_special_tokens:!1}),l=i.split(this.image_tag),u=l.length-1;if(t.length!==u)throw Error(`Number of images provided (${t.length}) does not match number of "${this.image_tag}" image tags (${u})`);let[d,f,p]=r.model.convert_tokens_to_ids([this.image_tag,this.image_start_tag,this.image_end_tag]),m=a(l[0]),h=Array(m.length).fill(!1);for(let e=1;e0){let e=await this.image_processor(t);return e.pixel_values.unsqueeze_(0),{..._,...e}}return _}}},"./src/models/jina_clip/image_processing_jina_clip.js":(e,t,n)=>{n.r(t),n.d(t,{JinaCLIPImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){let{resize_mode:t,fill_color:n,interpolation:r,size:i,...a}=e,o=t===`squash`?{width:i,height:i}:t===`shortest`?{shortest_edge:i}:{longest_edge:i},s=r===`bicubic`?3:2;super({...a,size:o,resample:s,do_center_crop:!0,crop_size:i,do_normalize:!0})}}},"./src/models/jina_clip/processing_jina_clip.js":(e,t,n)=>{n.r(t),n.d(t,{JinaCLIPProcessor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;async _call(e=null,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=e?this.tokenizer(e,n):{},i=t?await this.image_processor(t,n):{};return{...r,...i}}}},"./src/models/llava/processing_llava.js":(e,t,n)=>{n.r(t),n.d(t,{LlavaProcessor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;static uses_processor_config=!0;async _call(e,t=null,n={}){let r=await this.image_processor(e,n);if(t){let[e,n]=r.pixel_values.dims.slice(-2),{image_token:i,patch_size:a,num_additional_image_tokens:o}=this.config,s=Math.floor(e/a)*Math.floor(n/a)+o;t=structuredClone(t),Array.isArray(t)||(t=[t]);for(let e=0;e{n.r(t),n.d(t,{LlavaOnevisionImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/mask2former/image_processing_mask2former.js":(e,t,n)=>{n.r(t),n.d(t,{Mask2FormerImageProcessor:()=>i});var r=n( +/*! ../maskformer/image_processing_maskformer.js */ +`./src/models/maskformer/image_processing_maskformer.js`);class i extends r.MaskFormerImageProcessor{}},"./src/models/maskformer/image_processing_maskformer.js":(e,t,n)=>{n.r(t),n.d(t,{MaskFormerFeatureExtractor:()=>a,MaskFormerImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class a extends i{}},"./src/models/mgp_str/processing_mgp_str.js":(e,t,n)=>{n.r(t),n.d(t,{MgpstrProcessor:()=>c});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/maths.js */ +`./src/utils/maths.js`);let s={char:[`char_decode`,1],bpe:[`bpe_decode`,2],wp:[`wp_decode`,102]};class c extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;get char_tokenizer(){return this.components.char_tokenizer}get bpe_tokenizer(){return this.components.bpe_tokenizer}get wp_tokenizer(){return this.components.wp_tokenizer}_decode_helper(e,t){if(!s.hasOwnProperty(t))throw Error(`Format ${t} is not supported.`);let[n,r]=s[t],i=this[n].bind(this),[a,c]=e.dims,l=[],u=[],d=e.tolist();for(let e=0;e0?i.reduce((e,t)=>e*t,1):0;u.push(n),l.push(a)}let f=i(u);return[f,l]}char_decode(e){return this.char_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}bpe_decode(e){return this.bpe_tokenizer.batch_decode(e)}wp_decode(e){return this.wp_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}batch_decode([e,t,n]){let[r,i]=this._decode_helper(e,`char`),[a,s]=this._decode_helper(t,`bpe`),[c,l]=this._decode_helper(n,`wp`),u=[],d=[];for(let e=0;e{n.r(t),n.d(t,{MobileNetV1FeatureExtractor:()=>a,MobileNetV1ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v2/image_processing_mobilenet_v2.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV2FeatureExtractor:()=>a,MobileNetV2ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v3/image_processing_mobilenet_v3.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV3FeatureExtractor:()=>a,MobileNetV3ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v4/image_processing_mobilenet_v4.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV4FeatureExtractor:()=>a,MobileNetV4ImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilevit/image_processing_mobilevit.js":(e,t,n)=>{n.r(t),n.d(t,{MobileViTFeatureExtractor:()=>a,MobileViTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/moonshine/feature_extraction_moonshine.js":(e,t,n)=>{n.r(t),n.d(t,{MoonshineFeatureExtractor:()=>a});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`MoonshineFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}}},"./src/models/moonshine/processing_moonshine.js":(e,t,n)=>{n.r(t),n.d(t,{MoonshineProcessor:()=>o});var r=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=r.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/nougat/image_processing_nougat.js":(e,t,n)=>{n.r(t),n.d(t,{NougatImageProcessor:()=>i});var r=n( +/*! ../donut/image_processing_donut.js */ +`./src/models/donut/image_processing_donut.js`);class i extends r.DonutImageProcessor{}},"./src/models/owlv2/image_processing_owlv2.js":(e,t,n)=>{n.r(t),n.d(t,{Owlv2ImageProcessor:()=>i});var r=n( +/*! ../owlvit/image_processing_owlvit.js */ +`./src/models/owlvit/image_processing_owlvit.js`);class i extends r.OwlViTImageProcessor{}},"./src/models/owlvit/image_processing_owlvit.js":(e,t,n)=>{n.r(t),n.d(t,{OwlViTFeatureExtractor:()=>a,OwlViTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/models/owlvit/processing_owlvit.js":(e,t,n)=>{n.r(t),n.d(t,{OwlViTProcessor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);class o extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor}},"./src/models/paligemma/processing_paligemma.js":(e,t,n)=>{n.r(t),n.d(t,{PaliGemmaProcessor:()=>c});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`);let o=``;function s(e,t,n,r,i){return`${r.repeat(n*i)}${t}${e}\n`}class c extends r.Processor{static tokenizer_class=a.AutoTokenizer;static image_processor_class=i.AutoImageProcessor;static uses_processor_config=!1;async _call(e,t=null,n={}){t||(console.warn(`You are using PaliGemma without a text prefix. It will perform as a picture-captioning model.`),t=``),Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let r=this.tokenizer.bos_token,i=this.image_processor.config.image_seq_length,a;t.some(e=>e.includes(o))?a=t.map(e=>{let t=e.replaceAll(o,o.repeat(i)),n=t.lastIndexOf(o),a=n===-1?0:n+7;return t.slice(0,a)+r+t.slice(a)+` +`}):(console.warn("You are passing both `text` and `images` to `PaliGemmaProcessor`. The processor expects special image tokens in the text, as many tokens as there are images per each text. It is recommended to add `` tokens in the very beginning of your text. For this call, we will infer how many images each text has and add special tokens."),a=t.map(t=>s(t,r,i,o,e.length)));let c=this.tokenizer(a,n),l=await this.image_processor(e,n);return{...l,...c}}}},"./src/models/phi3_v/image_processing_phi3_v.js":(e,t,n)=>{n.r(t),n.d(t,{Phi3VImageProcessor:()=>u});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);let a=336,o=[2,3],{ceil:s,floor:c,sqrt:l}=Math;class u extends r.ImageProcessor{constructor(e){super({...e,do_normalize:!0,do_pad:!0,pad_size:`custom`,do_convert_rgb:!0,do_resize:!0}),this._num_crops=e.num_crops}calc_num_image_tokens_from_image_size(e,t){let{num_img_tokens:n}=this.config;return c((c(t/a)*c(e/a)+1)*n+1+(c(t/a)+1)*l(n))}get_resize_output_image_size(e,t){let n=this._num_crops,[r,i]=e.size,a=r/i,o=1;for(;o*Math.ceil(o/a)<=n;)o+=1;--o;let s=Math.floor(o*336),c=Math.floor(s/a);return[s,c]}pad_image(e,t,n,r={}){let[i,o]=t,c=a*s(i/a),l=a*s(o/a),u=[1,1,1].map((e,t)=>(e-this.image_mean[t])/this.image_std[t]);return super.pad_image(e,t,{width:l,height:c},{center:!0,constant_values:u,...r})}async _call(e,{num_crops:t=null}={}){if(this._num_crops=t??=this.config.num_crops,t<4||l(t)%1!=0)throw Error(`num_crops must be a square number >= 4`);Array.isArray(e)||(e=[e]);let n=e.length,r=await Promise.all(e.map(e=>this.preprocess(e))),u=r.map(e=>e.original_size),d=r.map(e=>e.reshaped_input_size),f=[];for(let{pixel_values:e}of r){e.unsqueeze_(0);let[n,r]=e.dims.slice(-2),s=await(0,i.interpolate_4d)(e,{size:[a,a],mode:`bicubic`});if(t>0){let u=[],d=l(t),p=c(r/d),m=c(n/d);for(let t=0;te.map(e=>a*s(e/a))),h=new i.Tensor(`int64`,m.flat(),[n,2]),g=m.map(([e,t])=>this.calc_num_image_tokens_from_image_size(t,e));return{pixel_values:p,original_sizes:u,reshaped_input_sizes:d,image_sizes:h,num_img_tokens:g}}}},"./src/models/phi3_v/processing_phi3_v.js":(e,t,n)=>{n.r(t),n.d(t,{Phi3VProcessor:()=>l});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`);let s=`<|image|>`,c=/<\|image_\d+\|>/g;class l extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;async _call(e,t=null,{padding:n=!0,truncation:r=!0,num_crops:i=null}={}){Array.isArray(e)||(e=[e]);let a,o;if(t){o=await this.image_processor(t,{num_crops:i});let{num_img_tokens:l}=o,u=e.map((e,t)=>e.split(c).join(s.repeat(l[t])));a=this.tokenizer(u,{padding:n,truncation:r});let d=this.tokenizer.model.convert_tokens_to_ids([s])[0];a.input_ids.map_(e=>e==d?-e:e)}else a=this.tokenizer(e);return{...a,...o}}}},"./src/models/processors.js":(e,t,n)=>{n.r(t),n.d(t,{Florence2Processor:()=>r.Florence2Processor,Gemma3nProcessor:()=>i.Gemma3nProcessor,GroundingDinoProcessor:()=>a.GroundingDinoProcessor,Idefics3Processor:()=>o.Idefics3Processor,JinaCLIPProcessor:()=>c.JinaCLIPProcessor,LlavaProcessor:()=>l.LlavaProcessor,MgpstrProcessor:()=>u.MgpstrProcessor,MoonshineProcessor:()=>d.MoonshineProcessor,OwlViTProcessor:()=>f.OwlViTProcessor,PaliGemmaProcessor:()=>m.PaliGemmaProcessor,Phi3VProcessor:()=>p.Phi3VProcessor,PyAnnoteProcessor:()=>h.PyAnnoteProcessor,Qwen2VLProcessor:()=>g.Qwen2VLProcessor,SamProcessor:()=>_.SamProcessor,SmolVLMProcessor:()=>v.SmolVLMProcessor,SpeechT5Processor:()=>y.SpeechT5Processor,UltravoxProcessor:()=>b.UltravoxProcessor,VLChatProcessor:()=>s.VLChatProcessor,Wav2Vec2Processor:()=>x.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>S.Wav2Vec2ProcessorWithLM,WhisperProcessor:()=>C.WhisperProcessor});var r=n( +/*! ./florence2/processing_florence2.js */ +`./src/models/florence2/processing_florence2.js`),i=n( +/*! ./gemma3n/processing_gemma3n.js */ +`./src/models/gemma3n/processing_gemma3n.js`),a=n( +/*! ./grounding_dino/processing_grounding_dino.js */ +`./src/models/grounding_dino/processing_grounding_dino.js`),o=n( +/*! ./idefics3/processing_idefics3.js */ +`./src/models/idefics3/processing_idefics3.js`),s=n( +/*! ./janus/processing_janus.js */ +`./src/models/janus/processing_janus.js`),c=n( +/*! ./jina_clip/processing_jina_clip.js */ +`./src/models/jina_clip/processing_jina_clip.js`),l=n( +/*! ./llava/processing_llava.js */ +`./src/models/llava/processing_llava.js`),u=n( +/*! ./mgp_str/processing_mgp_str.js */ +`./src/models/mgp_str/processing_mgp_str.js`),d=n( +/*! ./moonshine/processing_moonshine.js */ +`./src/models/moonshine/processing_moonshine.js`),f=n( +/*! ./owlvit/processing_owlvit.js */ +`./src/models/owlvit/processing_owlvit.js`),p=n( +/*! ./phi3_v/processing_phi3_v.js */ +`./src/models/phi3_v/processing_phi3_v.js`),m=n( +/*! ./paligemma/processing_paligemma.js */ +`./src/models/paligemma/processing_paligemma.js`),h=n( +/*! ./pyannote/processing_pyannote.js */ +`./src/models/pyannote/processing_pyannote.js`),g=n( +/*! ./qwen2_vl/processing_qwen2_vl.js */ +`./src/models/qwen2_vl/processing_qwen2_vl.js`),_=n( +/*! ./sam/processing_sam.js */ +`./src/models/sam/processing_sam.js`),v=n( +/*! ./smolvlm/processing_smolvlm.js */ +`./src/models/smolvlm/processing_smolvlm.js`),y=n( +/*! ./speecht5/processing_speecht5.js */ +`./src/models/speecht5/processing_speecht5.js`),b=n( +/*! ./ultravox/processing_ultravox.js */ +`./src/models/ultravox/processing_ultravox.js`),x=n( +/*! ./wav2vec2/processing_wav2vec2.js */ +`./src/models/wav2vec2/processing_wav2vec2.js`),S=n( +/*! ./wav2vec2_with_lm/processing_wav2vec2_with_lm.js */ +`./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js`),C=n( +/*! ./whisper/processing_whisper.js */ +`./src/models/whisper/processing_whisper.js`)},"./src/models/pvt/image_processing_pvt.js":(e,t,n)=>{n.r(t),n.d(t,{PvtImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/pyannote/feature_extraction_pyannote.js":(e,t,n)=>{n.r(t),n.d(t,{PyAnnoteFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/maths.js */ +`./src/utils/maths.js`);class o extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`PyAnnoteFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}samples_to_frames(e){return(e-this.config.offset)/this.config.step}post_process_speaker_diarization(e,t){let n=t/this.samples_to_frames(t)/this.config.sampling_rate,r=[];for(let t of e.tolist()){let e=[],i=-1;for(let n=0;n({id:e,start:t*n,end:r*n,confidence:i/(r-t)})))}return r}}},"./src/models/pyannote/processing_pyannote.js":(e,t,n)=>{n.r(t),n.d(t,{PyAnnoteProcessor:()=>a});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ./feature_extraction_pyannote.js */ +`./src/models/pyannote/feature_extraction_pyannote.js`);class a extends r.Processor{static feature_extractor_class=i.PyAnnoteFeatureExtractor;async _call(e){return await this.feature_extractor(e)}post_process_speaker_diarization(...e){return this.feature_extractor.post_process_speaker_diarization(...e)}get sampling_rate(){return this.feature_extractor.config.sampling_rate}}},"./src/models/qwen2_vl/image_processing_qwen2_vl.js":(e,t,n)=>{n.r(t),n.d(t,{Qwen2VLImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,...t){let{pixel_values:n,original_sizes:r,reshaped_input_sizes:a}=await super._call(e,...t),o=n,{temporal_patch_size:s,merge_size:c,patch_size:l}=this.config;o.dims[0]===1&&(o=(0,i.cat)(Array.from({length:s},()=>o),0));let u=o.dims[0]/s,d=o.dims[1],f=Math.floor(o.dims[2]/l),p=Math.floor(o.dims[3]/l),m=o.view(u,s,d,Math.floor(f/c),c,l,Math.floor(p/c),c,l).permute(0,3,6,4,7,2,1,5,8).view(u*f*p,d*s*l*l),h=new i.Tensor(`int64`,[u,f,p],[1,3]);return{pixel_values:m,image_grid_thw:h,original_sizes:r,reshaped_input_sizes:a}}}},"./src/models/qwen2_vl/processing_qwen2_vl.js":(e,t,n)=>{n.r(t),n.d(t,{Qwen2VLProcessor:()=>s});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),a=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),o=n( +/*! ../../utils/image.js */ +`./src/utils/image.js`);class s extends r.Processor{static image_processor_class=i.AutoImageProcessor;static tokenizer_class=a.AutoTokenizer;async _call(e,t=null,...n){Array.isArray(e)||(e=[e]);let r,i;if(t&&(r=await this.image_processor(t),i=r.image_grid_thw),i){let t=this.image_processor.config.merge_size**2,n=0,r=i.tolist();e=e.map(e=>{for(;e.includes(`<|image_pad|>`);){let i=Number(r[n++].reduce((e,t)=>e*t,1n));e=e.replace(`<|image_pad|>`,`<|placeholder|>`.repeat(Math.floor(i/t)))}return e.replaceAll(`<|placeholder|>`,`<|image_pad|>`)})}let a=this.tokenizer(e);return{...a,...r}}}},"./src/models/rt_detr/image_processing_rt_detr.js":(e,t,n)=>{n.r(t),n.d(t,{RTDetrImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}},"./src/models/sam/image_processing_sam.js":(e,t,n)=>{n.r(t),n.d(t,{SamImageProcessor:()=>o});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/core.js */ +`./src/utils/core.js`),a=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class o extends r.ImageProcessor{reshape_input_points(e,t,n,r=!1){e=structuredClone(e);let o=(0,i.calculateDimensions)(e);if(o.length===3)r||(o=[1,...o]),e=[e];else if(o.length!==4)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");for(let r=0;re!==t.dims[n]))throw Error(`The first ${n.length} dimensions of 'input_points' and 'input_labels' must be the same.`);return new a.Tensor(`int64`,e.flat(1/0).map(BigInt),n)}async _call(e,{input_points:t=null,input_labels:n=null,input_boxes:r=null}={}){let i=await super._call(e);if(t&&(i.input_points=this.reshape_input_points(t,i.original_sizes,i.reshaped_input_sizes)),n){if(!i.input_points)throw Error("`input_points` must be provided if `input_labels` are provided.");i.input_labels=this.add_input_labels(n,i.input_points)}return r&&(i.input_boxes=this.reshape_input_points(r,i.original_sizes,i.reshaped_input_sizes,!0)),i}async post_process_masks(e,t,n,{mask_threshold:r=0,binarize:i=!0,pad_size:o=null}={}){let s=[];o??=this.pad_size;let c=[o.height,o.width];for(let o=0;or&&(t[n]=1);d=new a.Tensor(`bool`,t,d.dims)}s.push(d)}return s}generate_crop_boxes(e,t,{crop_n_layers:n=0,overlap_ratio:r=512/1500,points_per_crop:i=32,crop_n_points_downscale_factor:a=1}={}){}}},"./src/models/sam/processing_sam.js":(e,t,n)=>{n.r(t),n.d(t,{SamProcessor:()=>a});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`);class a extends r.Processor{static image_processor_class=i.AutoImageProcessor;async _call(...e){return await this.image_processor(...e)}post_process_masks(...e){return this.image_processor.post_process_masks(...e)}reshape_input_points(...e){return this.image_processor.reshape_input_points(...e)}}},"./src/models/seamless_m4t/feature_extraction_seamless_m4t.js":(e,t,n)=>{n.r(t),n.d(t,{SeamlessM4TFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`povey`,{periodic:!1})}async _extract_fbank_features(e,t){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e,{padding:t=!0,pad_to_multiple_of:n=2,do_normalize_per_mel_bins:a=!0,return_attention_mask:o=!0}={}){(0,r.validate_audio_inputs)(e,`SeamlessM4TFeatureExtractor`);let s=await this._extract_fbank_features(e,this.config.max_length);if(a){let[e,t]=s.dims,n=s.data;for(let r=0;r0){let n=new Float32Array(t*(e+a));n.set(r),n.fill(this.config.padding_value,r.length);let l=e+a;s=new i.Tensor(s.type,n,[l,t]),o&&(c=new i.Tensor(`int64`,new BigInt64Array(l),[1,l]),c.data.fill(1n,0,e))}}let[l,u]=s.dims,d=this.config.stride,f=l%d;if(f!==0)throw Error(`The number of frames (${l}) must be a multiple of the stride (${d}).`);let p=s.view(1,Math.floor(l/d),u*d),m={input_features:p};if(o){let e=p.dims[1],t=new BigInt64Array(e);if(c){let e=c.data;for(let n=1,r=0;n{n.r(t),n.d(t,{SegformerFeatureExtractor:()=>a,SegformerImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_semantic_segmentation(...e){return(0,r.post_process_semantic_segmentation)(...e)}}class a extends i{}},"./src/models/siglip/image_processing_siglip.js":(e,t,n)=>{n.r(t),n.d(t,{SiglipImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/smolvlm/image_processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMImageProcessor:()=>r.Idefics3ImageProcessor});var r=n( +/*! ../idefics3/image_processing_idefics3.js */ +`./src/models/idefics3/image_processing_idefics3.js`)},"./src/models/smolvlm/processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMProcessor:()=>r.Idefics3Processor});var r=n( +/*! ../idefics3/processing_idefics3.js */ +`./src/models/idefics3/processing_idefics3.js`)},"./src/models/snac/feature_extraction_snac.js":(e,t,n)=>{n.r(t),n.d(t,{SnacFeatureExtractor:()=>i});var r=n( +/*! ../dac/feature_extraction_dac.js */ +`./src/models/dac/feature_extraction_dac.js`);class i extends r.DacFeatureExtractor{}},"./src/models/speecht5/feature_extraction_speecht5.js":(e,t,n)=>{n.r(t),n.d(t,{SpeechT5FeatureExtractor:()=>i});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`);class i extends r.FeatureExtractor{}},"./src/models/speecht5/processing_speecht5.js":(e,t,n)=>{n.r(t),n.d(t,{SpeechT5Processor:()=>o});var r=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`);class o extends r.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=a.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/swin2sr/image_processing_swin2sr.js":(e,t,n)=>{n.r(t),n.d(t,{Swin2SRImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t;return super.pad_image(e,t,{width:a+(n-a%n)%n,height:i+(n-i%n)%n},{mode:`symmetric`,center:!1,constant_values:-1,...r})}}},"./src/models/ultravox/processing_ultravox.js":(e,t,n)=>{n.r(t),n.d(t,{UltravoxProcessor:()=>o});var r=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=r.AutoFeatureExtractor;static uses_processor_config=!0;async _call(e,t=null,n={}){if(Array.isArray(e))throw Error(`Batched inputs are not supported yet.`);let r={};if(t){let i=t.length,{input_features:a}=await this.feature_extractor(t,{...n,max_length:i}),o=Math.round(i/this.config.encoder_ds_factor+1e-4),s=1+Math.ceil(o/this.config.stack_factor);r.audio_token_len=[s],r.audio_values=a;let c=this.config.audio_placeholder;if(!e.includes(c))throw Error(`The input text does not contain the image token ${c}.`);e=e.replaceAll(c,c.repeat(s))}let i=this.tokenizer(e,{add_special_tokens:!1,...n});return{...i,...r}}}},"./src/models/vit/image_processing_vit.js":(e,t,n)=>{n.r(t),n.d(t,{ViTFeatureExtractor:()=>a,ViTImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/vitmatte/image_processing_vitmatte.js":(e,t,n)=>{n.r(t),n.d(t,{VitMatteImageProcessor:()=>a});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,t){Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let n=await Promise.all(e.map(e=>this.preprocess(e))),r=await Promise.all(t.map(e=>this.preprocess(e,{do_normalize:!1,do_convert_rgb:!1,do_convert_grayscale:!0}))),a=(0,i.stack)(n.map((e,t)=>(0,i.cat)([e.pixel_values,r[t].pixel_values],0)),0);return{pixel_values:a,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}}},"./src/models/vitpose/image_processing_vitpose.js":(e,t,n)=>{n.r(t),n.d(t,{VitPoseImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_pose_estimation(e,t,{threshold:n=null}={}){let r=e.tolist(),[i,a,o,s]=e.dims,c=[];for(let e=0;e{n.r(t),n.d(t,{Wav2Vec2FeatureExtractor:()=>a});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`);class a extends r.FeatureExtractor{_zero_mean_unit_var_norm(e){let t=e.reduce((e,t)=>e+t,0),n=t/e.length,r=e.reduce((e,t)=>e+(t-n)**2,0)/e.length;return e.map(e=>(e-n)/Math.sqrt(r+1e-7))}async _call(e){(0,r.validate_audio_inputs)(e,`Wav2Vec2FeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=e;this.config.do_normalize&&(t=this._zero_mean_unit_var_norm(t));let n=[1,t.length];return{input_values:new i.Tensor(`float32`,t,n),attention_mask:new i.Tensor(`int64`,new BigInt64Array(t.length).fill(1n),n)}}}},"./src/models/wav2vec2/processing_wav2vec2.js":(e,t,n)=>{n.r(t),n.d(t,{Wav2Vec2Processor:()=>o});var r=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),i=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=r.AutoTokenizer;static feature_extractor_class=i.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js":(e,t,n)=>{n.r(t),n.d(t,{Wav2Vec2ProcessorWithLM:()=>o});var r=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),i=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=r.AutoTokenizer;static feature_extractor_class=i.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/wespeaker/feature_extraction_wespeaker.js":(e,t,n)=>{n.r(t),n.d(t,{WeSpeakerFeatureExtractor:()=>o});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hamming`,{periodic:!1}),this.min_num_frames=this.config.min_num_frames}async _extract_fbank_features(e){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,transpose:!0,min_num_frames:this.min_num_frames})}async _call(e){(0,r.validate_audio_inputs)(e,`WeSpeakerFeatureExtractor`);let t=(await this._extract_fbank_features(e)).unsqueeze_(0);if(this.config.fbank_centering_span===null){let e=t.mean(1).data,n=t.data,[r,i,a]=t.dims;for(let t=0;t{n.r(t),n.d(t,{WHISPER_LANGUAGE_MAPPING:()=>i,WHISPER_TO_LANGUAGE_CODE_MAPPING:()=>a,whisper_language_to_code:()=>o});let r=[[`en`,`english`],[`zh`,`chinese`],[`de`,`german`],[`es`,`spanish`],[`ru`,`russian`],[`ko`,`korean`],[`fr`,`french`],[`ja`,`japanese`],[`pt`,`portuguese`],[`tr`,`turkish`],[`pl`,`polish`],[`ca`,`catalan`],[`nl`,`dutch`],[`ar`,`arabic`],[`sv`,`swedish`],[`it`,`italian`],[`id`,`indonesian`],[`hi`,`hindi`],[`fi`,`finnish`],[`vi`,`vietnamese`],[`he`,`hebrew`],[`uk`,`ukrainian`],[`el`,`greek`],[`ms`,`malay`],[`cs`,`czech`],[`ro`,`romanian`],[`da`,`danish`],[`hu`,`hungarian`],[`ta`,`tamil`],[`no`,`norwegian`],[`th`,`thai`],[`ur`,`urdu`],[`hr`,`croatian`],[`bg`,`bulgarian`],[`lt`,`lithuanian`],[`la`,`latin`],[`mi`,`maori`],[`ml`,`malayalam`],[`cy`,`welsh`],[`sk`,`slovak`],[`te`,`telugu`],[`fa`,`persian`],[`lv`,`latvian`],[`bn`,`bengali`],[`sr`,`serbian`],[`az`,`azerbaijani`],[`sl`,`slovenian`],[`kn`,`kannada`],[`et`,`estonian`],[`mk`,`macedonian`],[`br`,`breton`],[`eu`,`basque`],[`is`,`icelandic`],[`hy`,`armenian`],[`ne`,`nepali`],[`mn`,`mongolian`],[`bs`,`bosnian`],[`kk`,`kazakh`],[`sq`,`albanian`],[`sw`,`swahili`],[`gl`,`galician`],[`mr`,`marathi`],[`pa`,`punjabi`],[`si`,`sinhala`],[`km`,`khmer`],[`sn`,`shona`],[`yo`,`yoruba`],[`so`,`somali`],[`af`,`afrikaans`],[`oc`,`occitan`],[`ka`,`georgian`],[`be`,`belarusian`],[`tg`,`tajik`],[`sd`,`sindhi`],[`gu`,`gujarati`],[`am`,`amharic`],[`yi`,`yiddish`],[`lo`,`lao`],[`uz`,`uzbek`],[`fo`,`faroese`],[`ht`,`haitian creole`],[`ps`,`pashto`],[`tk`,`turkmen`],[`nn`,`nynorsk`],[`mt`,`maltese`],[`sa`,`sanskrit`],[`lb`,`luxembourgish`],[`my`,`myanmar`],[`bo`,`tibetan`],[`tl`,`tagalog`],[`mg`,`malagasy`],[`as`,`assamese`],[`tt`,`tatar`],[`haw`,`hawaiian`],[`ln`,`lingala`],[`ha`,`hausa`],[`ba`,`bashkir`],[`jw`,`javanese`],[`su`,`sundanese`]],i=new Map(r),a=new Map([...r.map(([e,t])=>[t,e]),...[[`burmese`,`my`],[`valencian`,`ca`],[`flemish`,`nl`],[`haitian`,`ht`],[`letzeburgesch`,`lb`],[`pushto`,`ps`],[`panjabi`,`pa`],[`moldavian`,`ro`],[`moldovan`,`ro`],[`sinhalese`,`si`],[`castilian`,`es`]]]);function o(e){e=e.toLowerCase();let t=a.get(e);if(t===void 0){let n=e.match(/^<\|([a-z]{2})\|>$/);if(n&&(e=n[1]),i.has(e))t=e;else{let t=e.length===2,n=t?i.keys():i.values();throw Error(`Language "${e}" is not supported. Must be one of: ${JSON.stringify(Array.from(n))}`)}}return t}},"./src/models/whisper/feature_extraction_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperFeatureExtractor:()=>s});var r=n( +/*! ../../base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),i=n( +/*! ../../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../../utils/audio.js */ +`./src/utils/audio.js`),o=n( +/*! ../../utils/maths.js */ +`./src/utils/maths.js`);class s extends r.FeatureExtractor{constructor(e){super(e),this.config.mel_filters??=(0,a.mel_filter_bank)(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,`slaney`,`slaney`),this.window=(0,a.window_function)(this.config.n_fft,`hann`)}async _extract_fbank_features(e){let t=await(0,a.spectrogram)(e,this.window,this.config.n_fft,this.config.hop_length,{power:2,mel_filters:this.config.mel_filters,log_mel:`log10`,max_num_frames:Math.min(Math.floor(e.length/this.config.hop_length),this.config.nb_max_frames)}),n=t.data,r=(0,o.max)(n)[0];for(let e=0;ei?(e.length>this.config.n_samples&&console.warn("Attempting to extract features for audio longer than 30 seconds. If using a pipeline to extract transcript from a long audio clip, remember to specify `chunk_length_s` and/or `stride_length_s`."),n=e.slice(0,i)):(n=new Float32Array(i),n.set(e));let a=await this._extract_fbank_features(n);return{input_features:a.unsqueeze_(0)}}}},"./src/models/whisper/generation_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperGenerationConfig:()=>i});var r=n( +/*! ../../generation/configuration_utils.js */ +`./src/generation/configuration_utils.js`);class i extends r.GenerationConfig{return_timestamps=null;return_token_timestamps=null;num_frames=null;alignment_heads=null;task=null;language=null;no_timestamps_token_id=null;prompt_ids=null;is_multilingual=null;lang_to_id=null;task_to_id=null;max_initial_timestamp_index=1}},"./src/models/whisper/processing_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperProcessor:()=>o});var r=n( +/*! ../auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),i=n( +/*! ../../tokenizers.js */ +`./src/tokenizers.js`),a=n( +/*! ../../base/processing_utils.js */ +`./src/base/processing_utils.js`);class o extends a.Processor{static tokenizer_class=i.AutoTokenizer;static feature_extractor_class=r.AutoFeatureExtractor;async _call(e){return await this.feature_extractor(e)}}},"./src/models/yolos/image_processing_yolos.js":(e,t,n)=>{n.r(t),n.d(t,{YolosFeatureExtractor:()=>a,YolosImageProcessor:()=>i});var r=n( +/*! ../../base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/ops/registry.js":(e,t,n)=>{n.r(t),n.d(t,{TensorOpRegistry:()=>c});var r=n( +/*! ../backends/onnx.js */ +`./src/backends/onnx.js`),i=n( +/*! ../utils/tensor.js */ +`./src/utils/tensor.js`),a=n( +/*! ../env.js */ +`./src/env.js`);let o=a.apis.IS_BROWSER_ENV||a.apis.IS_WEBWORKER_ENV,s=async(e,t,n)=>{let a=await(0,r.createInferenceSession)(new Uint8Array(e),t),s=Promise.resolve();return async e=>{let t=(0,r.isONNXProxy)(),c=Object.fromEntries(Object.entries(e).map(([e,n])=>[e,(t?n.clone():n).ort_tensor])),l=await(s=o?s.then(()=>a.run(c)):a.run(c));return Array.isArray(n)?n.map(e=>new i.Tensor(l[e])):new i.Tensor(l[n])}};class c{static session_options={};static get nearest_interpolate_4d(){return this._nearest_interpolate_4d||=s([8,10,18,0,58,129,1,10,41,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,18,10,4,109,111,100,101,34,7,110,101,97,114,101,115,116,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,21],this.session_options,`y`),this._nearest_interpolate_4d}static get bilinear_interpolate_4d(){return this._bilinear_interpolate_4d||=s([8,9,18,0,58,128,1,10,40,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,17,10,4,109,111,100,101,34,6,108,105,110,101,97,114,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bilinear_interpolate_4d}static get bicubic_interpolate_4d(){return this._bicubic_interpolate_4d||=s([8,9,18,0,58,127,10,39,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,16,10,4,109,111,100,101,34,5,99,117,98,105,99,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bicubic_interpolate_4d}static get matmul(){return this._matmul||=s([8,9,18,0,58,55,10,17,10,1,97,10,1,98,18,1,99,34,6,77,97,116,77,117,108,18,1,114,90,9,10,1,97,18,4,10,2,8,1,90,9,10,1,98,18,4,10,2,8,1,98,9,10,1,99,18,4,10,2,8,1,66,2,16,20],this.session_options,`c`),this._matmul}static get stft(){return this._stft||=s([8,7,18,0,58,148,1,10,38,10,1,115,10,1,106,10,1,119,10,1,108,18,1,111,34,4,83,84,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,115,90,26,10,1,115,18,21,10,19,8,1,18,15,10,3,18,1,98,10,3,18,1,115,10,3,18,1,99,90,11,10,1,106,18,6,10,4,8,7,18,0,90,16,10,1,119,18,11,10,9,8,1,18,5,10,3,18,1,119,90,11,10,1,108,18,6,10,4,8,7,18,0,98,31,10,1,111,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,102,10,3,18,1,100,10,3,18,1,99,66,2,16,17],this.session_options,`o`),this._stft}static get rfft(){return this._rfft||=s([8,9,18,0,58,97,10,33,10,1,120,10,0,10,1,97,18,1,121,34,3,68,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,100,90,21,10,1,120,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,90,11,10,1,97,18,6,10,4,8,7,18,0,98,21,10,1,121,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,66,2,16,20],this.session_options,`y`),this._rfft}static get top_k(){return this._top_k||=s([8,10,18,0,58,73,10,18,10,1,120,10,1,107,18,1,118,18,1,105,34,4,84,111,112,75,18,1,116,90,9,10,1,120,18,4,10,2,8,1,90,15,10,1,107,18,10,10,8,8,7,18,4,10,2,8,1,98,9,10,1,118,18,4,10,2,8,1,98,9,10,1,105,18,4,10,2,8,7,66,2,16,21],this.session_options,[`v`,`i`]),this._top_k}static get slice(){return this._slice||=s([8,7,18,0,58,96,10,25,10,1,120,10,1,115,10,1,101,10,1,97,10,1,116,18,1,121,34,5,83,108,105,99,101,18,1,114,90,9,10,1,120,18,4,10,2,8,1,90,9,10,1,115,18,4,10,2,8,7,90,9,10,1,101,18,4,10,2,8,7,90,9,10,1,97,18,4,10,2,8,7,90,9,10,1,116,18,4,10,2,8,7,98,9,10,1,121,18,4,10,2,8,1,66,2,16,13],this.session_options,`y`),this._slice}}},"./src/pipelines.js":(e,t,n)=>{n.r(t),n.d(t,{AudioClassificationPipeline:()=>k,AutomaticSpeechRecognitionPipeline:()=>ee,BackgroundRemovalPipeline:()=>re,DepthEstimationPipeline:()=>ce,DocumentQuestionAnsweringPipeline:()=>se,FeatureExtractionPipeline:()=>D,FillMaskPipeline:()=>b,ImageClassificationPipeline:()=>ne,ImageFeatureExtractionPipeline:()=>O,ImageSegmentationPipeline:()=>j,ImageToImagePipeline:()=>N,ImageToTextPipeline:()=>te,ObjectDetectionPipeline:()=>ae,Pipeline:()=>g,QuestionAnsweringPipeline:()=>y,SummarizationPipeline:()=>S,Text2TextGenerationPipeline:()=>x,TextClassificationPipeline:()=>_,TextGenerationPipeline:()=>T,TextToAudioPipeline:()=>M,TokenClassificationPipeline:()=>v,TranslationPipeline:()=>C,ZeroShotAudioClassificationPipeline:()=>A,ZeroShotClassificationPipeline:()=>E,ZeroShotImageClassificationPipeline:()=>ie,ZeroShotObjectDetectionPipeline:()=>oe,pipeline:()=>de});var r=n( +/*! ./tokenizers.js */ +`./src/tokenizers.js`),i=n( +/*! ./models.js */ +`./src/models.js`),a=n( +/*! ./models/auto/processing_auto.js */ +`./src/models/auto/processing_auto.js`),o=n( +/*! ./base/processing_utils.js */ +`./src/base/processing_utils.js`),s=n( +/*! ./utils/generic.js */ +`./src/utils/generic.js`),c=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),l=n( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),u=n( +/*! ./utils/audio.js */ +`./src/utils/audio.js`),d=n( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),f=n( +/*! ./utils/image.js */ +`./src/utils/image.js`);async function p(e){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>f.RawImage.read(e)))}async function m(e,t){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>typeof e==`string`||e instanceof URL?(0,u.read_audio)(e,t):e instanceof Float64Array?new Float32Array(e):e))}function h(e,t){t&&(e=e.map(e=>e|0));let[n,r,i,a]=e;return{xmin:n,ymin:r,xmax:i,ymax:a}}class g extends s.Callable{constructor({task:e,model:t,tokenizer:n=null,processor:r=null}){super(),this.task=e,this.model=t,this.tokenizer=n,this.processor=r}async dispose(){await this.model.dispose()}}class _ extends g{constructor(e){super(e)}async _call(e,{top_k:t=1}={}){let n=this.tokenizer(e,{padding:!0,truncation:!0}),r=await this.model(n),i=this.model.config.problem_type===`multi_label_classification`?e=>e.sigmoid():e=>new d.Tensor(`float32`,(0,l.softmax)(e.data),e.dims),a=this.model.config.id2label,o=[];for(let e of r.logits){let n=i(e),r=await(0,d.topk)(n,t),s=r[0].tolist(),c=r[1].tolist(),l=c.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:s[t]}));t===1?o.push(...l):o.push(l)}return Array.isArray(e)||t===1?o:o[0]}}class v extends g{constructor(e){super(e)}async _call(e,{ignore_labels:t=[`O`]}={}){let n=Array.isArray(e),r=this.tokenizer(n?e:[e],{padding:!0,truncation:!0}),i=await this.model(r),a=i.logits,o=this.model.config.id2label,s=[];for(let e=0;ee==this.tokenizer.sep_token_id),f=s[e].map((e,n)=>e==1&&(n===0||n>r&&u.findIndex(e=>e==t[n])===-1)),p=i[e].tolist(),m=a[e].tolist();for(let n=1;ne==t[n])!==-1)&&(p[n]=-1/0,m[n]=-1/0);let h=(0,l.softmax)(p).map((e,t)=>[e,t]),g=(0,l.softmax)(m).map((e,t)=>[e,t]);h[0][0]=0,g[0][0]=0;let _=(0,c.product)(h,g).filter(e=>e[0][1]<=e[1][1]).map(e=>[e[0][1],e[1][1],e[0][0]*e[1][0]]).sort((e,t)=>t[2]-e[2]);for(let e=0;ee==this.tokenizer.mask_token_id);if(o===-1)throw Error(`Mask token (${this.tokenizer.mask_token}) not found in text.`);let s=r[e][o],c=await(0,d.topk)(new d.Tensor(`float32`,(0,l.softmax)(s.data),s.dims),t),u=c[0].tolist(),f=c[1].tolist();i.push(f.map((e,t)=>{let r=n.slice();return r[o]=e,{score:u[t],token:Number(e),token_str:this.tokenizer.decode([e]),sequence:this.tokenizer.decode(r,{skip_special_tokens:!0})}}))}return Array.isArray(e)?i:i[0]}}class x extends g{_key=`generated_text`;constructor(e){super(e)}async _call(e,t={}){Array.isArray(e)||(e=[e]),this.model.config.prefix&&(e=e.map(e=>this.model.config.prefix+e));let n=this.model.config.task_specific_params;n&&n[this.task]&&n[this.task].prefix&&(e=e.map(e=>n[this.task].prefix+e));let r=this.tokenizer,i={padding:!0,truncation:!0},a;a=this instanceof C&&`_build_translation_inputs`in r?r._build_translation_inputs(e,i,t):r(e,i);let o=await this.model.generate({...a,...t});return r.batch_decode(o,{skip_special_tokens:!0}).map(e=>({[this._key]:e}))}}class S extends x{_key=`summary_text`;constructor(e){super(e)}}class C extends x{_key=`translation_text`;constructor(e){super(e)}}function w(e){return Array.isArray(e)&&e.every(e=>`role`in e&&`content`in e)}class T extends g{constructor(e){super(e)}async _call(e,t={}){let n=!1,r=!1,i;if(typeof e==`string`)i=e=[e];else if(Array.isArray(e)&&e.every(e=>typeof e==`string`))n=!0,i=e;else{if(w(e))e=[e];else if(Array.isArray(e)&&e.every(w))n=!0;else throw Error(`Input must be a string, an array of strings, a Chat, or an array of Chats`);r=!0,i=e.map(e=>this.tokenizer.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0}))}let a=t.add_special_tokens??!1,o=r?!1:t.return_full_text??!0;this.tokenizer.padding_side=`left`;let s=this.tokenizer(i,{add_special_tokens:a,padding:!0,truncation:!0}),c=await this.model.generate({...s,...t}),l=this.tokenizer.batch_decode(c,{skip_special_tokens:!0}),u;!o&&s.input_ids.dims.at(-1)>0&&(u=this.tokenizer.batch_decode(s.input_ids,{skip_special_tokens:!0}).map(e=>e.length));let d=Array.from({length:e.length},e=>[]);for(let t=0;t[e.toLowerCase(),t])),this.entailment_id=this.label2id.entailment,this.entailment_id===void 0&&(console.warn(`Could not find 'entailment' in label2id mapping. Using 2 as entailment_id.`),this.entailment_id=2),this.contradiction_id=this.label2id.contradiction??this.label2id.not_entailment,this.contradiction_id===void 0&&(console.warn(`Could not find 'contradiction' in label2id mapping. Using 0 as contradiction_id.`),this.contradiction_id=0)}async _call(e,t,{hypothesis_template:n=`This example is {}.`,multi_label:r=!1}={}){let i=Array.isArray(e);i||(e=[e]),Array.isArray(t)||(t=[t]);let a=t.map(e=>n.replace(`{}`,e)),o=r||t.length===1,s=[];for(let n of e){let e=[];for(let t of a){let r=this.tokenizer(n,{text_pair:t,padding:!0,truncation:!0}),i=await this.model(r);o?e.push([i.logits.data[this.contradiction_id],i.logits.data[this.entailment_id]]):e.push(i.logits.data[this.entailment_id])}let r=o?e.map(e=>(0,l.softmax)(e)[1]):(0,l.softmax)(e),i=r.map((e,t)=>[e,t]).sort((e,t)=>t[0]-e[0]);s.push({sequence:n,labels:i.map(e=>t[e[1]]),scores:i.map(e=>e[0])})}return i?s:s[0]}}class D extends g{constructor(e){super(e)}async _call(e,{pooling:t=`none`,normalize:n=!1,quantize:r=!1,precision:i=`binary`}={}){let a=this.tokenizer(e,{padding:!0,truncation:!0}),o=await this.model(a),s=o.last_hidden_state??o.logits??o.token_embeddings;switch(t){case`none`:break;case`mean`:s=(0,d.mean_pooling)(s,a.attention_mask);break;case`first_token`:case`cls`:s=s.slice(null,0);break;case`last_token`:case`eos`:s=s.slice(null,-1);break;default:throw Error(`Pooling method '${t}' not supported.`)}return n&&(s=s.normalize(2,-1)),r&&(s=(0,d.quantize_embeddings)(s,i)),s}}class O extends g{constructor(e){super(e)}async _call(e,{pool:t=null}={}){let n=await p(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a;if(t){if(!(`pooler_output`in i))throw Error(`No pooled output was returned. Make sure the model has a 'pooler' layer when using the 'pool' option.`);a=i.pooler_output}else a=i.last_hidden_state??i.logits??i.image_embeds;return a}}class k extends g{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=this.processor.feature_extractor.config.sampling_rate,r=await m(e,n),i=this.model.config.id2label,a=[];for(let e of r){let n=await this.processor(e),r=await this.model(n),o=r.logits[0],s=await(0,d.topk)(new d.Tensor(`float32`,(0,l.softmax)(o.data),o.dims),t),c=s[0].tolist(),u=s[1].tolist(),f=u.map((e,t)=>({label:i?i[e]:`LABEL_${e}`,score:c[t]}));a.push(f)}return Array.isArray(e)?a:a[0]}}class A extends g{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a sound of {}.`}={}){let r=!Array.isArray(e);r&&(e=[e]);let i=t.map(e=>n.replace(`{}`,e)),a=this.tokenizer(i,{padding:!0,truncation:!0}),o=this.processor.feature_extractor.config.sampling_rate,s=await m(e,o),c=[];for(let e of s){let n=await this.processor(e),r=await this.model({...a,...n}),i=(0,l.softmax)(r.logits_per_audio.data);c.push([...i].map((e,n)=>({score:e,label:t[n]})))}return r?c[0]:c}}class ee extends g{constructor(e){super(e)}async _call(e,t={}){switch(this.model.config.model_type){case`whisper`:case`lite-whisper`:return this._call_whisper(e,t);case`wav2vec2`:case`wav2vec2-bert`:case`unispeech`:case`unispeech-sat`:case`hubert`:return this._call_wav2vec2(e,t);case`moonshine`:return this._call_moonshine(e,t);default:throw Error(`AutomaticSpeechRecognitionPipeline does not support model type '${this.model.config.model_type}'.`)}}async _call_wav2vec2(e,t){t.language&&console.warn('`language` parameter is not yet supported for `wav2vec2` models, defaulting to "English".'),t.task&&console.warn('`task` parameter is not yet supported for `wav2vec2` models, defaulting to "transcribe".');let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await m(e,r),a=[];for(let e of i){let t=await this.processor(e),n=await this.model(t),r=n.logits[0],i=[];for(let e of r)i.push((0,l.max)(e.data)[1]);let o=this.tokenizer.decode(i);a.push({text:o})}return n?a[0]:a}async _call_whisper(e,t){let n=t.return_timestamps??!1,r=t.chunk_length_s??0,i=t.force_full_sequences??!1,a=t.stride_length_s??null,o={...t};n===`word`&&(o.return_token_timestamps=!0,o.return_timestamps=!1);let s=!Array.isArray(e);s&&(e=[e]);let c=this.processor.feature_extractor.config.chunk_length/this.model.config.max_source_positions,u=this.processor.feature_extractor.config.hop_length,d=this.processor.feature_extractor.config.sampling_rate,f=await m(e,d),p=[];for(let e of f){let t=[];if(r>0){if(a===null)a=r/6;else if(r<=a)throw Error("`chunk_length_s` must be larger than `stride_length_s`.");let n=d*r,i=d*a,o=n-2*i,s=0;for(;;){let r=s+n,a=e.subarray(s,r),c=await this.processor(a),l=s===0,u=r>=e.length;if(t.push({stride:[a.length,l?0:i,u?0:i],input_features:c.input_features,is_last:u}),u)break;s+=o}}else t=[{stride:[e.length,0,0],input_features:(await this.processor(e)).input_features,is_last:!0}];for(let e of t){o.num_frames=Math.floor(e.stride[0]/u);let t=await this.model.generate({inputs:e.input_features,...o});n===`word`?(e.tokens=t.sequences.tolist()[0],e.token_timestamps=t.token_timestamps.tolist()[0].map(e=>(0,l.round)(e,2))):e.tokens=t[0].tolist(),e.stride=e.stride.map(e=>e/d)}let[s,f]=this.tokenizer._decode_asr(t,{time_precision:c,return_timestamps:n,force_full_sequences:i});p.push({text:s,...f})}return s?p[0]:p}async _call_moonshine(e,t){let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await m(e,r),a=[];for(let e of i){let n=await this.processor(e),i=Math.floor(e.length/r)*6,o=await this.model.generate({max_new_tokens:i,...t,...n}),s=this.processor.batch_decode(o,{skip_special_tokens:!0})[0];a.push({text:s})}return n?a[0]:a}}class te extends g{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e),r=await p(e),{pixel_values:i}=await this.processor(r),a=[];for(let e of i){e.dims=[1,...e.dims];let n=await this.model.generate({inputs:e,...t}),r=this.tokenizer.batch_decode(n,{skip_special_tokens:!0}).map(e=>({generated_text:e.trim()}));a.push(r)}return n?a:a[0]}}class ne extends g{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=await p(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a=this.model.config.id2label,o=[];for(let e of i.logits){let n=await(0,d.topk)(new d.Tensor(`float32`,(0,l.softmax)(e.data),e.dims),t),r=n[0].tolist(),i=n[1].tolist(),s=i.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:r[t]}));o.push(s)}return Array.isArray(e)?o:o[0]}}class j extends g{constructor(e){super(e),this.subtasks_mapping={panoptic:`post_process_panoptic_segmentation`,instance:`post_process_instance_segmentation`,semantic:`post_process_semantic_segmentation`}}async _call(e,{threshold:t=.5,mask_threshold:n=.5,overlap_mask_area_threshold:r=.8,label_ids_to_fuse:i=null,target_sizes:a=null,subtask:o=null}={}){let s=Array.isArray(e);if(s&&e.length!==1)throw Error(`Image segmentation pipeline currently only supports a batch size of 1.`);let c=await p(e),l=c.map(e=>[e.height,e.width]),u=await this.processor(c),{inputNames:d,outputNames:m}=this.model.sessions.model;if(!d.includes(`pixel_values`)){if(d.length!==1)throw Error(`Expected a single input name, but got ${d.length} inputs: ${d}.`);let e=d[0];if(e in u)throw Error(`Input name ${e} already exists in the inputs.`);u[e]=u.pixel_values}let h=await this.model(u),g=null;if(o!==null)g=this.subtasks_mapping[o];else if(this.processor.image_processor){for(let[e,t]of Object.entries(this.subtasks_mapping))if(t in this.processor.image_processor){g=this.processor.image_processor[t].bind(this.processor.image_processor),o=e;break}}let _=this.model.config.id2label,v=[];if(o)if(o===`panoptic`||o===`instance`){let e=g(h,t,n,r,i,a??l)[0],o=e.segmentation;for(let t of e.segments_info){let e=new Uint8ClampedArray(o.data.length);for(let n=0;nt<-e||t>1+e)&&i.sigmoid_();let a=await f.RawImage.fromTensor(i.mul_(255).to(`uint8`)).resize(r[1],r[0]);v.push({label:null,score:null,mask:a})}}return v}}class re extends j{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e);if(n&&e.length!==1)throw Error(`Background removal pipeline currently only supports a batch size of 1.`);let r=await p(e),i=await super._call(e,t),a=r.map((e,t)=>{let n=e.clone();return n.putAlpha(i[t].mask),n});return a}}class ie extends g{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a photo of {}`}={}){let r=Array.isArray(e),i=await p(e),a=t.map(e=>n.replace(`{}`,e)),o=this.tokenizer(a,{padding:this.model.config.model_type===`siglip`?`max_length`:!0,truncation:!0}),{pixel_values:s}=await this.processor(i),c=await this.model({...o,pixel_values:s}),u=this.model.config.model_type===`siglip`?e=>e.sigmoid().data:e=>(0,l.softmax)(e.data),d=[];for(let e of c.logits_per_image){let n=u(e),r=[...n].map((e,n)=>({score:e,label:t[n]}));r.sort((e,t)=>t.score-e.score),d.push(r)}return r?d:d[0]}}class ae extends g{constructor(e){super(e)}async _call(e,{threshold:t=.9,percentage:n=!1}={}){let r=Array.isArray(e);if(r&&e.length!==1)throw Error(`Object detection pipeline currently only supports a batch size of 1.`);let i=await p(e),a=n?null:i.map(e=>[e.height,e.width]),{pixel_values:o,pixel_mask:s}=await this.processor(i),c=await this.model({pixel_values:o,pixel_mask:s}),l=this.processor.image_processor.post_process_object_detection(c,t,a),u=this.model.config.id2label,d=l.map(e=>e.boxes.map((t,r)=>({score:e.scores[r],label:u[e.classes[r]],box:h(t,!n)})));return r?d:d[0]}}class oe extends g{constructor(e){super(e)}async _call(e,t,{threshold:n=.1,top_k:r=null,percentage:i=!1}={}){let a=Array.isArray(e),o=await p(e),s=this.tokenizer(t,{padding:!0,truncation:!0}),c=await this.processor(o),l=[];for(let e=0;e({score:e.scores[n],label:e.labels[n],box:h(t,!i)}))}else{let e=this.processor.image_processor.post_process_object_detection(f,n,u,!0)[0];p=e.boxes.map((n,r)=>({score:e.scores[r],label:t[e.classes[r]],box:h(n,!i)}))}p.sort((e,t)=>t.score-e.score),r!==null&&(p=p.slice(0,r)),l.push(p)}return a?l:l[0]}}class se extends g{constructor(e){super(e)}async _call(e,t,n={}){let r=(await p(e))[0],{pixel_values:i}=await this.processor(r),a=`${t}`,o=this.tokenizer(a,{add_special_tokens:!1,padding:!0,truncation:!0}).input_ids,s=await this.model.generate({inputs:i,max_length:this.model.config.decoder.max_position_embeddings,decoder_input_ids:o,...n}),c=this.tokenizer.batch_decode(s)[0],l=c.match(/(.*?)<\/s_answer>/),u=null;return l&&l.length>=2&&(u=l[1].trim()),[{answer:u}]}}class M extends g{DEFAULT_VOCODER_ID=`Xenova/speecht5_hifigan`;constructor(e){super(e),this.vocoder=e.vocoder??null}async _call(e,{speaker_embeddings:t=null}={}){return this.processor?this._call_text_to_spectrogram(e,{speaker_embeddings:t}):this._call_text_to_waveform(e)}async _call_text_to_waveform(e){let t=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:n}=await this.model(t),r=this.model.config.sampling_rate;return new u.RawAudio(n.data,r)}async _call_text_to_spectrogram(e,{speaker_embeddings:t}){if(this.vocoder||(console.log(`No vocoder specified, using default HifiGan vocoder.`),this.vocoder=await i.AutoModel.from_pretrained(this.DEFAULT_VOCODER_ID,{dtype:`fp32`})),(typeof t==`string`||t instanceof URL)&&(t=new Float32Array(await(await fetch(t)).arrayBuffer())),t instanceof Float32Array)t=new d.Tensor(`float32`,t,[1,t.length]);else if(!(t instanceof d.Tensor))throw Error("Speaker embeddings must be a `Tensor`, `Float32Array`, `string`, or `URL`.");let{input_ids:n}=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:r}=await this.model.generate_speech(n,t,{vocoder:this.vocoder}),a=this.processor.feature_extractor.config.sampling_rate;return new u.RawAudio(r.data,a)}}class N extends g{constructor(e){super(e)}async _call(e){let t=await p(e),n=await this.processor(t),r=await this.model(n),i=[];for(let e of r.reconstruction){let t=e.squeeze().clamp_(0,1).mul_(255).round_().to(`uint8`);i.push(f.RawImage.fromTensor(t))}return i.length>1?i:i[0]}}class ce extends g{constructor(e){super(e)}async _call(e){let t=await p(e),n=await this.processor(t),{predicted_depth:r}=await this.model(n),i=[];for(let e=0;e1?i:i[0]}}let le=Object.freeze({"text-classification":{tokenizer:r.AutoTokenizer,pipeline:_,model:i.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-finetuned-sst-2-english`},type:`text`},"token-classification":{tokenizer:r.AutoTokenizer,pipeline:v,model:i.AutoModelForTokenClassification,default:{model:`Xenova/bert-base-multilingual-cased-ner-hrl`},type:`text`},"question-answering":{tokenizer:r.AutoTokenizer,pipeline:y,model:i.AutoModelForQuestionAnswering,default:{model:`Xenova/distilbert-base-cased-distilled-squad`},type:`text`},"fill-mask":{tokenizer:r.AutoTokenizer,pipeline:b,model:i.AutoModelForMaskedLM,default:{model:`Xenova/bert-base-uncased`},type:`text`},summarization:{tokenizer:r.AutoTokenizer,pipeline:S,model:i.AutoModelForSeq2SeqLM,default:{model:`Xenova/distilbart-cnn-6-6`},type:`text`},translation:{tokenizer:r.AutoTokenizer,pipeline:C,model:i.AutoModelForSeq2SeqLM,default:{model:`Xenova/t5-small`},type:`text`},"text2text-generation":{tokenizer:r.AutoTokenizer,pipeline:x,model:i.AutoModelForSeq2SeqLM,default:{model:`Xenova/flan-t5-small`},type:`text`},"text-generation":{tokenizer:r.AutoTokenizer,pipeline:T,model:i.AutoModelForCausalLM,default:{model:`Xenova/gpt2`},type:`text`},"zero-shot-classification":{tokenizer:r.AutoTokenizer,pipeline:E,model:i.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-mnli`},type:`text`},"audio-classification":{pipeline:k,model:i.AutoModelForAudioClassification,processor:a.AutoProcessor,default:{model:`Xenova/wav2vec2-base-superb-ks`},type:`audio`},"zero-shot-audio-classification":{tokenizer:r.AutoTokenizer,pipeline:A,model:i.AutoModel,processor:a.AutoProcessor,default:{model:`Xenova/clap-htsat-unfused`},type:`multimodal`},"automatic-speech-recognition":{tokenizer:r.AutoTokenizer,pipeline:ee,model:[i.AutoModelForSpeechSeq2Seq,i.AutoModelForCTC],processor:a.AutoProcessor,default:{model:`Xenova/whisper-tiny.en`},type:`multimodal`},"text-to-audio":{tokenizer:r.AutoTokenizer,pipeline:M,model:[i.AutoModelForTextToWaveform,i.AutoModelForTextToSpectrogram],processor:[a.AutoProcessor,null],default:{model:`Xenova/speecht5_tts`},type:`text`},"image-to-text":{tokenizer:r.AutoTokenizer,pipeline:te,model:i.AutoModelForVision2Seq,processor:a.AutoProcessor,default:{model:`Xenova/vit-gpt2-image-captioning`},type:`multimodal`},"image-classification":{pipeline:ne,model:i.AutoModelForImageClassification,processor:a.AutoProcessor,default:{model:`Xenova/vit-base-patch16-224`},type:`multimodal`},"image-segmentation":{pipeline:j,model:[i.AutoModelForImageSegmentation,i.AutoModelForSemanticSegmentation,i.AutoModelForUniversalSegmentation],processor:a.AutoProcessor,default:{model:`Xenova/detr-resnet-50-panoptic`},type:`multimodal`},"background-removal":{pipeline:re,model:[i.AutoModelForImageSegmentation,i.AutoModelForSemanticSegmentation,i.AutoModelForUniversalSegmentation],processor:a.AutoProcessor,default:{model:`Xenova/modnet`},type:`image`},"zero-shot-image-classification":{tokenizer:r.AutoTokenizer,pipeline:ie,model:i.AutoModel,processor:a.AutoProcessor,default:{model:`Xenova/clip-vit-base-patch32`},type:`multimodal`},"object-detection":{pipeline:ae,model:i.AutoModelForObjectDetection,processor:a.AutoProcessor,default:{model:`Xenova/detr-resnet-50`},type:`multimodal`},"zero-shot-object-detection":{tokenizer:r.AutoTokenizer,pipeline:oe,model:i.AutoModelForZeroShotObjectDetection,processor:a.AutoProcessor,default:{model:`Xenova/owlvit-base-patch32`},type:`multimodal`},"document-question-answering":{tokenizer:r.AutoTokenizer,pipeline:se,model:i.AutoModelForDocumentQuestionAnswering,processor:a.AutoProcessor,default:{model:`Xenova/donut-base-finetuned-docvqa`},type:`multimodal`},"image-to-image":{pipeline:N,model:i.AutoModelForImageToImage,processor:a.AutoProcessor,default:{model:`Xenova/swin2SR-classical-sr-x2-64`},type:`image`},"depth-estimation":{pipeline:ce,model:i.AutoModelForDepthEstimation,processor:a.AutoProcessor,default:{model:`Xenova/dpt-large`},type:`image`},"feature-extraction":{tokenizer:r.AutoTokenizer,pipeline:D,model:i.AutoModel,default:{model:`Xenova/all-MiniLM-L6-v2`},type:`text`},"image-feature-extraction":{processor:a.AutoProcessor,pipeline:O,model:[i.AutoModelForImageFeatureExtraction,i.AutoModel],default:{model:`Xenova/vit-base-patch16-224-in21k`},type:`image`}}),ue=Object.freeze({"sentiment-analysis":`text-classification`,ner:`token-classification`,asr:`automatic-speech-recognition`,"text-to-speech":`text-to-audio`,embeddings:`feature-extraction`});async function de(e,t=null,{progress_callback:n=null,config:r=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,device:s=null,dtype:l=null,subfolder:u=`onnx`,use_external_data_format:d=null,model_file_name:f=null,session_options:p={}}={}){e=ue[e]??e;let m=le[e.split(`_`,1)[0]];if(!m)throw Error(`Unsupported pipeline: ${e}. Must be one of [${Object.keys(le)}]`);t||(t=m.default.model,console.log(`No model specified. Using default model: "${t}".`));let h={progress_callback:n,config:r,cache_dir:i,local_files_only:a,revision:o,device:s,dtype:l,subfolder:u,use_external_data_format:d,model_file_name:f,session_options:p},g=new Map([[`tokenizer`,m.tokenizer],[`model`,m.model],[`processor`,m.processor]]),_=await P(g,t,h);_.task=e,(0,c.dispatchCallback)(n,{status:`ready`,task:e,model:t});let v=m.pipeline;return new v(_)}async function P(e,t,n){let r=Object.create(null),i=[];for(let[a,o]of e.entries()){if(!o)continue;let e;e=Array.isArray(o)?new Promise(async(e,r)=>{let i;for(let a of o){if(a===null){e(null);return}try{e(await a.from_pretrained(t,n));return}catch(e){if(e.message?.includes(`Unsupported model type`))i=e;else if(e.message?.includes(`Could not locate file`))i=e;else{r(e);return}}}r(i)}):o.from_pretrained(t,n),r[a]=e,i.push(e)}await Promise.all(i);for(let[e,t]of Object.entries(r))r[e]=await t;return r}},"./src/tokenizers.js":(e,t,n)=>{n.r(t),n.d(t,{AlbertTokenizer:()=>He,AutoTokenizer:()=>Nt,BartTokenizer:()=>tt,BertTokenizer:()=>Ve,BlenderbotSmallTokenizer:()=>Dt,BlenderbotTokenizer:()=>Et,BloomTokenizer:()=>at,CLIPTokenizer:()=>St,CamembertTokenizer:()=>Xe,CodeGenTokenizer:()=>xt,CodeLlamaTokenizer:()=>ct,CohereTokenizer:()=>jt,ConvBertTokenizer:()=>qe,DebertaTokenizer:()=>We,DebertaV2Tokenizer:()=>Ge,DistilBertTokenizer:()=>Ye,ElectraTokenizer:()=>Qe,EsmTokenizer:()=>pt,FalconTokenizer:()=>dt,GPT2Tokenizer:()=>et,GPTNeoXTokenizer:()=>ft,GemmaTokenizer:()=>ht,Grok1Tokenizer:()=>gt,HerbertTokenizer:()=>Ke,LlamaTokenizer:()=>st,M2M100Tokenizer:()=>yt,MBart50Tokenizer:()=>rt,MBartTokenizer:()=>nt,MPNetTokenizer:()=>ut,MarianTokenizer:()=>wt,MgpstrTokenizer:()=>Mt,MobileBertTokenizer:()=>B,NllbTokenizer:()=>vt,NougatTokenizer:()=>kt,PreTrainedTokenizer:()=>z,Qwen2Tokenizer:()=>mt,RoFormerTokenizer:()=>Je,RobertaTokenizer:()=>it,SiglipTokenizer:()=>Ct,SpeechT5Tokenizer:()=>Ot,SqueezeBertTokenizer:()=>Ue,T5Tokenizer:()=>$e,TokenizerModel:()=>D,VitsTokenizer:()=>At,Wav2Vec2CTCTokenizer:()=>Tt,WhisperTokenizer:()=>bt,XLMRobertaTokenizer:()=>lt,XLMTokenizer:()=>Ze,is_chinese_char:()=>y});var r=n( +/*! ./utils/generic.js */ +`./src/utils/generic.js`),i=n( +/*! ./utils/core.js */ +`./src/utils/core.js`),a=n( +/*! ./utils/hub.js */ +`./src/utils/hub.js`),o=n( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),s=n( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),c=n( +/*! ./utils/data-structures.js */ +`./src/utils/data-structures.js`),l=n( +/*! @huggingface/jinja */ +`./node_modules/@huggingface/jinja/dist/index.js`),u=n( +/*! ./models/whisper/common_whisper.js */ +`./src/models/whisper/common_whisper.js`);async function d(e,t){let n=await Promise.all([(0,a.getModelJSON)(e,`tokenizer.json`,!0,t),(0,a.getModelJSON)(e,`tokenizer_config.json`,!0,t)]);return t.legacy!==null&&(n[1].legacy=t.legacy),n}function f(e,t){let n=[],r=0;for(let i of e.matchAll(t)){let t=i[0];r0&&n.push(t),r=i.index+t.length}return r=19968&&e<=40959||e>=13312&&e<=19903||e>=131072&&e<=173791||e>=173824&&e<=177983||e>=177984&&e<=178207||e>=178208&&e<=183983||e>=63744&&e<=64255||e>=194560&&e<=195103}function b(e,t,n){let r=[],i=0;for(;ithis.tokens_to_ids.get(e)??this.unk_token_id)}convert_ids_to_tokens(e){return e.map(e=>this.vocab[e]??this.unk_token)}}class O extends D{constructor(e){super(e),this.tokens_to_ids=m(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.max_input_chars_per_word=e.max_input_chars_per_word??100,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){let t=[];for(let n of e){let e=[...n];if(e.length>this.max_input_chars_per_word){t.push(this.unk_token);continue}let r=!1,i=0,a=[];for(;i0&&(r=this.config.continuing_subword_prefix+r),this.tokens_to_ids.has(r)){n=r;break}--t}if(n===null){r=!0;break}a.push(n),i=t}r?t.push(this.unk_token):t.push(...a)}return t}}class k extends D{constructor(e,t){super(e);let n=e.vocab.length;this.vocab=Array(n),this.scores=Array(n);for(let t=0;t[e,t])),this.bos_token=` `,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.minScore=(0,o.min)(this.scores)[0],this.unk_score=this.minScore-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new c.CharTrie,this.trie.extend(this.vocab),this.fuse_unk=!0}populateNodes(e){let t=e.chars,n=1,r=0;for(;r{let e=[...Array.from({length:94},(e,t)=>t+33),...Array.from({length:12},(e,t)=>t+161),...Array.from({length:82},(e,t)=>t+174)],t=e.slice(),n=0;for(let r=0;r<256;++r)e.includes(r)||(e.push(r),t.push(256+n),n+=1);let r=t.map(e=>String.fromCharCode(e));return Object.fromEntries(e.map((e,t)=>[e,r[t]]))})(),ee=(0,i.reverseDictionary)(A);class te extends D{constructor(e){super(e),this.tokens_to_ids=m(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e;let t=Array.isArray(e.merges[0]);this.merges=t?e.merges:e.merges.map(e=>e.split(` `,2)),this.bpe_ranks=new Map(this.merges.map((e,t)=>[JSON.stringify(e),t])),this.end_of_word_suffix=e.end_of_word_suffix,this.continuing_subword_suffix=e.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new c.LRUCache(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(e){if(e.length===0)return[];let t=this.cache.get(e);if(t!==void 0)return t;let n=Array.from(e);this.end_of_word_suffix&&(n[n.length-1]+=this.end_of_word_suffix);let r=[];if(n.length>1){let e=new c.PriorityQueue((e,t)=>e.score`<0x${e.toString(16).toUpperCase().padStart(2,`0`)}>`);e.every(e=>this.tokens_to_ids.has(e))?t.push(...e):t.push(this.unk_token)}else t.push(this.unk_token)}return t}}class ne extends D{constructor(e,t){super(e),this.tokens_to_ids=m(t.target_lang?e.vocab[t.target_lang]:e.vocab),this.bos_token=t.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=t.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=t.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){return e}}class j extends r.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`BertNormalizer`:return new P(e);case`Precompiled`:return new R(e);case`Sequence`:return new de(e);case`Replace`:return new re(e);case`NFC`:return new ae(e);case`NFD`:return new oe(e);case`NFKC`:return new se(e);case`NFKD`:return new M(e);case`Strip`:return new N(e);case`StripAccents`:return new ce(e);case`Lowercase`:return new le(e);case`Prepend`:return new ue(e);default:throw Error(`Unknown Normalizer type: ${e.type}`)}}normalize(e){throw Error(`normalize should be implemented in subclass.`)}_call(e){return this.normalize(e)}}class re extends j{normalize(e){let t=p(this.config.pattern);return t===null?e:e.replaceAll(t,this.config.content)}}class ie extends j{form=void 0;normalize(e){return e=e.normalize(this.form),e}}class ae extends ie{form=`NFC`}class oe extends ie{form=`NFD`}class se extends ie{form=`NFKC`}class M extends ie{form=`NFKD`}class N extends j{normalize(e){return this.config.strip_left&&this.config.strip_right?e=e.trim():(this.config.strip_left&&(e=e.trimStart()),this.config.strip_right&&(e=e.trimEnd())),e}}class ce extends j{normalize(e){return e=_(e),e}}class le extends j{normalize(e){return e=e.toLowerCase(),e}}class ue extends j{normalize(e){return e=this.config.prepend+e,e}}class de extends j{constructor(e){super(e),this.normalizers=e.normalizers.map(e=>j.fromConfig(e))}normalize(e){return this.normalizers.reduce((e,t)=>t.normalize(e),e)}}class P extends j{_tokenize_chinese_chars(e){let t=[];for(let n=0;nthis.pre_tokenize_text(e,t)):this.pre_tokenize_text(e,t)).flat()}_call(e,t){return this.pre_tokenize(e,t)}}class fe extends F{constructor(e){super(),this.pattern=RegExp(`[^\\s${S}]+|[${S}]`,`gu`)}pre_tokenize_text(e,t){return e.trim().match(this.pattern)||[]}}class I extends F{constructor(e){super(),this.config=e,this.add_prefix_space=this.config.add_prefix_space,this.trim_offsets=this.config.trim_offsets,this.use_regex=this.config.use_regex??!0,this.pattern=/'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+/gu,this.byte_encoder=A,this.text_encoder=new TextEncoder}pre_tokenize_text(e,t){this.add_prefix_space&&!e.startsWith(` `)&&(e=` `+e);let n=this.use_regex?e.match(this.pattern)||[]:[e];return n.map(e=>Array.from(this.text_encoder.encode(e),e=>this.byte_encoder[e]).join(``))}}class pe extends F{constructor(e){super(),this.config=e,this.pattern=p(this.config.pattern,this.config.invert)}pre_tokenize_text(e,t){return this.pattern===null?[]:this.config.invert?e.match(this.pattern)||[]:this.config.behavior?.toLowerCase()===`removed`?e.split(this.pattern).filter(e=>e):f(e,this.pattern)}}class me extends F{constructor(e){super(),this.config=e,this.pattern=RegExp(`[^${S}]+|[${S}]+`,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class he extends F{constructor(e){super(),this.config=e;let t=`[^\\d]+|\\d${this.config.individual_digits?``:`+`}`;this.pattern=new RegExp(t,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class ge extends r.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`TemplateProcessing`:return new L(e);case`ByteLevel`:return new ye(e);case`RobertaProcessing`:return new ve(e);case`BertProcessing`:return new _e(e);case`Sequence`:return new be(e);default:throw Error(`Unknown PostProcessor type: ${e.type}`)}}post_process(e,...t){throw Error(`post_process should be implemented in subclass.`)}_call(e,...t){return this.post_process(e,...t)}}class _e extends ge{constructor(e){super(e),this.cls=e.cls[0],this.sep=e.sep[0]}post_process(e,t=null,{add_special_tokens:n=!0}={}){n&&(e=(0,i.mergeArrays)([this.cls],e,[this.sep]));let r=Array(e.length).fill(0);if(t!==null){let a=n&&this instanceof ve?[this.sep]:[],o=n?[this.sep]:[];e=(0,i.mergeArrays)(e,a,t,o),r=(0,i.mergeArrays)(r,Array(t.length+a.length+o.length).fill(1))}return{tokens:e,token_type_ids:r}}}class ve extends _e{}class L extends ge{constructor(e){super(e),this.single=e.single,this.pair=e.pair}post_process(e,t=null,{add_special_tokens:n=!0}={}){let r=t===null?this.single:this.pair,a=[],o=[];for(let s of r)`SpecialToken`in s?n&&(a.push(s.SpecialToken.id),o.push(s.SpecialToken.type_id)):`Sequence`in s&&(s.Sequence.id===`A`?(a=(0,i.mergeArrays)(a,e),o=(0,i.mergeArrays)(o,Array(e.length).fill(s.Sequence.type_id))):s.Sequence.id===`B`&&(a=(0,i.mergeArrays)(a,t),o=(0,i.mergeArrays)(o,Array(t.length).fill(s.Sequence.type_id))));return{tokens:a,token_type_ids:o}}}class ye extends ge{post_process(e,t=null){return t&&(e=(0,i.mergeArrays)(e,t)),{tokens:e}}}class be extends ge{constructor(e){super(e),this.processors=e.processors.map(e=>ge.fromConfig(e))}post_process(e,t=null,n={}){let r;for(let i of this.processors)if(i instanceof ye){let n=i.post_process(e);if(e=n.tokens,t){let e=i.post_process(t);t=e.tokens}}else{let a=i.post_process(e,t,n);e=a.tokens,r=a.token_type_ids}return{tokens:e,token_type_ids:r}}}class xe extends r.Callable{constructor(e){super(),this.config=e,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets=e.trim_offsets}static fromConfig(e){if(e===null)return null;switch(e.type){case`WordPiece`:return new Ee(e);case`Metaspace`:return new Ne(e);case`ByteLevel`:return new De(e);case`Replace`:return new Se(e);case`ByteFallback`:return new Ce(e);case`Fuse`:return new we(e);case`Strip`:return new Te(e);case`Sequence`:return new ke(e);case`CTC`:return new Oe(e);case`BPEDecoder`:return new Ae(e);default:throw Error(`Unknown Decoder type: ${e.type}`)}}_call(e){return this.decode(e)}decode(e){return this.decode_chain(e).join(``)}decode_chain(e){throw Error("`decode_chain` should be implemented in subclass.")}}class Se extends xe{decode_chain(e){let t=p(this.config.pattern);return t===null?e:e.map(e=>e.replaceAll(t,this.config.content))}}class Ce extends xe{constructor(e){super(e),this.text_decoder=new TextDecoder}decode_chain(e){let t=[],n=[];for(let r of e){let e=null;if(r.length===6&&r.startsWith(`<0x`)&&r.endsWith(`>`)){let t=parseInt(r.slice(3,5),16);isNaN(t)||(e=t)}if(e!==null)n.push(e);else{if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}t.push(r)}}if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}return t}}class we extends xe{decode_chain(e){return[e.join(``)]}}class Te extends xe{constructor(e){super(e),this.content=this.config.content,this.start=this.config.start,this.stop=this.config.stop}decode_chain(e){return e.map(e=>{let t=0;for(let n=0;n(t!==0&&(e=e.startsWith(this.config.prefix)?e.replace(this.config.prefix,``):` `+e),this.cleanup&&(e=g(e)),e))}}class De extends xe{constructor(e){super(e),this.byte_decoder=ee,this.text_decoder=new TextDecoder(`utf-8`,{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(e){let t=e.join(``),n=new Uint8Array([...t].map(e=>this.byte_decoder[e])),r=this.text_decoder.decode(n);return r}decode_chain(e){let t=[],n=[];for(let r of e)this.added_tokens.find(e=>e.content===r)===void 0?n.push(r):(n.length>0&&(t.push(this.convert_tokens_to_string(n)),n=[]),t.push(r));return n.length>0&&t.push(this.convert_tokens_to_string(n)),t}}class Oe extends xe{constructor(e){super(e),this.pad_token=this.config.pad_token,this.word_delimiter_token=this.config.word_delimiter_token,this.cleanup=this.config.cleanup}convert_tokens_to_string(e){if(e.length===0)return``;let t=[e[0]];for(let n=1;ne!==this.pad_token),r=n.join(``);return this.cleanup&&(r=g(r).replaceAll(this.word_delimiter_token,` `).trim()),r}decode_chain(e){return[this.convert_tokens_to_string(e)]}}class ke extends xe{constructor(e){super(e),this.decoders=e.decoders.map(e=>xe.fromConfig(e))}decode_chain(e){return this.decoders.reduce((e,t)=>t.decode_chain(e),e)}}class Ae extends xe{constructor(e){super(e),this.suffix=this.config.suffix}decode_chain(e){return e.map((t,n)=>t.replaceAll(this.suffix,n===e.length-1?``:` `))}}class je extends xe{decode_chain(e){let t=``;for(let n=1;ne.normalize(`NFKC`)).join(`~`)}else e=e.normalize(`NFKC`);return e}}class Pe extends F{constructor(e){super(),this.tokenizers=e.pretokenizers.map(e=>F.fromConfig(e))}pre_tokenize_text(e,t){return this.tokenizers.reduce((e,n)=>n.pre_tokenize(e,t),[e])}}class Fe extends F{constructor(e){super()}pre_tokenize_text(e,t){return e.match(/\w+|[^\w\s]+/g)||[]}}class Ie extends F{constructor(e){super()}pre_tokenize_text(e,t){return x(e)}}class Le extends F{constructor(e){super(),this.config=e,this.pattern=p(this.config.pattern),this.content=this.config.content}pre_tokenize_text(e,t){return this.pattern===null?[e]:[e.replaceAll(this.pattern,this.config.content)]}}let Re=[`bos_token`,`eos_token`,`unk_token`,`sep_token`,`pad_token`,`cls_token`,`mask_token`];function ze(e,t,n,r){for(let a of Object.keys(e)){let o=t-e[a].length,s=n(a),c=Array(o).fill(s);e[a]=r===`right`?(0,i.mergeArrays)(e[a],c):(0,i.mergeArrays)(c,e[a])}}function Be(e,t){for(let n of Object.keys(e))e[n].length=t}class z extends r.Callable{return_token_type_ids=!1;padding_side=`right`;constructor(e,t){super(),this.config=t,this.normalizer=j.fromConfig(e.normalizer),this.pre_tokenizer=F.fromConfig(e.pre_tokenizer),this.model=D.fromConfig(e.model,t),this.post_processor=ge.fromConfig(e.post_processor),this.decoder=xe.fromConfig(e.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[];for(let t of e.added_tokens){let e=new E(t);this.added_tokens.push(e),this.model.tokens_to_ids.set(e.content,e.id),this.model.vocab[e.id]=e.content,e.special&&(this.special_tokens.push(e.content),this.all_special_ids.push(e.id))}if(this.additional_special_tokens=t.additional_special_tokens??[],this.special_tokens.push(...this.additional_special_tokens),this.special_tokens=[...new Set(this.special_tokens)],this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.added_tokens_splitter=new c.DictionarySplitter(this.added_tokens.map(e=>e.content)),this.added_tokens_map=new Map(this.added_tokens.map(e=>[e.content,e])),this.mask_token=this.getToken(`mask_token`),this.mask_token_id=this.model.tokens_to_ids.get(this.mask_token),this.pad_token=this.getToken(`pad_token`,`eos_token`),this.pad_token_id=this.model.tokens_to_ids.get(this.pad_token),this.sep_token=this.getToken(`sep_token`),this.sep_token_id=this.model.tokens_to_ids.get(this.sep_token),this.unk_token=this.getToken(`unk_token`),this.unk_token_id=this.model.tokens_to_ids.get(this.unk_token),this.bos_token=this.getToken(`bos_token`),this.bos_token_id=this.model.tokens_to_ids.get(this.bos_token),this.eos_token=this.getToken(`eos_token`),this.eos_token_id=this.model.tokens_to_ids.get(this.eos_token),this.model_max_length=t.model_max_length,this.remove_space=t.remove_space,this.clean_up_tokenization_spaces=t.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=t.do_lowercase_and_remove_accent??!1,t.padding_side&&(this.padding_side=t.padding_side),this.legacy=!1,this.chat_template=t.chat_template??null,Array.isArray(this.chat_template)){let e=Object.create(null);for(let{name:t,template:n}of this.chat_template){if(typeof t!=`string`||typeof n!=`string`)throw Error(`Chat template must be a list of objects with "name" and "template" properties`);e[t]=n}this.chat_template=e}this._compiled_template_cache=new Map}getToken(...e){for(let t of e){let e=this.config[t];if(!e)continue;if(typeof e==`object`){if(e.__type===`AddedToken`)return e.content;throw Error(`Unknown token: ${e}`)}else return e}return null}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){let s=await d(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o});return new this(...s)}_call(e,{text_pair:t=null,add_special_tokens:n=!0,padding:r=!1,truncation:i=null,max_length:a=null,return_tensor:c=!0,return_token_type_ids:l=null}={}){let u=Array.isArray(e),d;if(u){if(e.length===0)throw Error(`text array must be non-empty`);if(t!==null){if(Array.isArray(t)){if(e.length!==t.length)throw Error(`text and text_pair must have the same length`)}else throw Error(`text_pair must also be an array`);d=e.map((e,r)=>this._encode_plus(e,{text_pair:t[r],add_special_tokens:n,return_token_type_ids:l}))}else d=e.map(e=>this._encode_plus(e,{add_special_tokens:n,return_token_type_ids:l}))}else{if(e==null)throw Error(`text may not be null or undefined`);if(Array.isArray(t))throw Error("When specifying `text_pair`, since `text` is a string, `text_pair` must also be a string (i.e., not an array).");d=[this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:l})]}if(a===null?a=this.model_max_length:i===null&&(r===!0?(console.warn("`max_length` is ignored when `padding: true` and there is no truncation strategy. To pad to max length, use `padding: 'max_length'`."),a=this.model_max_length):r===!1&&(console.warn("Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation: true` to explicitly truncate examples to max length."),i=!0)),r===!0&&(a=Math.min((0,o.max)(d.map(e=>e.input_ids.length))[0],a??1/0)),a=Math.min(a,this.model_max_length??1/0),r||i)for(let e=0;ea?i&&Be(d[e],a):r&&ze(d[e],a,e=>e===`input_ids`?this.pad_token_id:0,this.padding_side);let f={};if(c){if(!(r&&i)&&d.some(e=>{for(let t of Object.keys(e))if(e[t].length!==d[0][t]?.length)return!0;return!1}))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=true' and 'truncation=true' to have batched tensors with the same length.`);let e=[d.length,d[0].input_ids.length];for(let t of Object.keys(d[0]))f[t]=new s.Tensor(`int64`,BigInt64Array.from(d.flatMap(e=>e[t]).map(BigInt)),e)}else{for(let e of Object.keys(d[0]))f[e]=d.map(t=>t[e]);if(!u)for(let e of Object.keys(f))f[e]=f[e][0]}return f}_encode_text(e){if(e===null)return null;let t=this.added_tokens_splitter.split(e);for(let e=0;e0&&(t[e-1]=t[e-1].trimEnd()),n.rstrip&&e{if(e.length===0)return[];if(this.added_tokens_map.has(e))return[e];if(this.remove_space===!0&&(e=e.trim().split(/\s+/).join(` `)),this.do_lowercase_and_remove_accent&&(e=v(e)),this.normalizer!==null&&(e=this.normalizer(e)),e.length===0)return[];let n=this.pre_tokenizer===null?[e]:this.pre_tokenizer(e,{section_index:t}),r=this.model(n);return r});return n}_encode_plus(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){let{tokens:i,token_type_ids:a}=this._tokenize_helper(e,{pair:t,add_special_tokens:n}),o=this.model.convert_tokens_to_ids(i),s={input_ids:o,attention_mask:Array(o.length).fill(1)};return(r??this.return_token_type_ids)&&a&&(s.token_type_ids=a),s}_tokenize_helper(e,{pair:t=null,add_special_tokens:n=!1}={}){let r=this._encode_text(e),a=this._encode_text(t);return this.post_processor?this.post_processor(r,a,{add_special_tokens:n}):{tokens:(0,i.mergeArrays)(r??[],a??[])}}tokenize(e,{pair:t=null,add_special_tokens:n=!1}={}){return this._tokenize_helper(e,{pair:t,add_special_tokens:n}).tokens}encode(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){return this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:r}).input_ids}batch_decode(e,t={}){return e instanceof s.Tensor&&(e=e.tolist()),e.map(e=>this.decode(e,t))}decode(e,t={}){if(e instanceof s.Tensor&&(e=h(e)),!Array.isArray(e)||e.length===0||!(0,i.isIntegralNumber)(e[0]))throw Error(`token_ids must be a non-empty array of integers.`);return this.decode_single(e,t)}decode_single(e,{skip_special_tokens:t=!1,clean_up_tokenization_spaces:n=null}){let r=this.model.convert_ids_to_tokens(e);t&&(r=r.filter(e=>!this.special_tokens.includes(e)));let i=this.decoder?this.decoder(r):r.join(` `);return this.decoder&&this.decoder.end_of_word_suffix&&(i=i.replaceAll(this.decoder.end_of_word_suffix,` `),t&&(i=i.trim())),(n??this.clean_up_tokenization_spaces)&&(i=g(i)),i}get_chat_template({chat_template:e=null,tools:t=null}={}){if(this.chat_template&&typeof this.chat_template==`object`){let n=this.chat_template;if(e!==null&&Object.hasOwn(n,e))e=n[e];else if(e===null)if(t!==null&&`tool_use`in n)e=n.tool_use;else if(`default`in n)e=n.default;else throw Error(`This model has multiple chat templates with no default specified! Please either pass a chat template or the name of the template you wish to use to the 'chat_template' argument. Available template names are ${Object.keys(n).sort()}.`)}else if(e===null)if(this.chat_template)e=this.chat_template;else throw Error(`Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating`);return e}apply_chat_template(e,{tools:t=null,documents:n=null,chat_template:r=null,add_generation_prompt:i=!1,tokenize:a=!0,padding:o=!1,truncation:s=!1,max_length:c=null,return_tensor:u=!0,return_dict:d=!1,tokenizer_kwargs:f={},...p}={}){if(r=this.get_chat_template({chat_template:r,tools:t}),typeof r!=`string`)throw Error(`chat_template must be a string, but got ${typeof r}`);let m=this._compiled_template_cache.get(r);m===void 0&&(m=new l.Template(r),this._compiled_template_cache.set(r,m));let h=Object.create(null);for(let e of Re){let t=this.getToken(e);t&&(h[e]=t)}let g=m.render({messages:e,add_generation_prompt:i,tools:t,documents:n,...h,...p});if(a){let e=this._call(g,{add_special_tokens:!1,padding:o,truncation:s,max_length:c,return_tensor:u,...f});return d?e:e.input_ids}return g}}class Ve extends z{return_token_type_ids=!0}class He extends z{return_token_type_ids=!0}class B extends z{return_token_type_ids=!0}class Ue extends z{return_token_type_ids=!0}class We extends z{return_token_type_ids=!0}class Ge extends z{return_token_type_ids=!0}class Ke extends z{return_token_type_ids=!0}class qe extends z{return_token_type_ids=!0}class Je extends z{return_token_type_ids=!0}class Ye extends z{}class Xe extends z{}class Ze extends z{return_token_type_ids=!0;constructor(e,t){super(e,t),console.warn('WARNING: `XLMTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}}class Qe extends z{return_token_type_ids=!0}class $e extends z{}class et extends z{}class tt extends z{}class nt extends z{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{2}_[A-Z]{2}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class rt extends nt{}class it extends z{}class at extends z{}let ot=`▁`;class st extends z{padding_side=`left`;constructor(e,t){super(e,t),this.legacy=t.legacy??!0,this.legacy||(this.normalizer=null,this.pre_tokenizer=new Me({replacement:ot,add_prefix_space:!0,prepend_scheme:`first`}))}_encode_text(e){if(e===null)return null;if(this.legacy||e.length===0)return super._encode_text(e);let t=super._encode_text(ot+e.replaceAll(ot,` `));return t.length>1&&t[0]===ot&&this.special_tokens.includes(t[1])&&(t=t.slice(1)),t}}class ct extends z{}class lt extends z{}class ut extends z{}class dt extends z{}class ft extends z{}class pt extends z{}class mt extends z{}class ht extends z{}class gt extends z{}function _t(e,t,n,r){if(!(`language_codes`in e)||!Array.isArray(e.language_codes))throw Error("Tokenizer must have `language_codes` attribute set and it should be an array of language ids.");if(!(`languageRegex`in e)||!(e.languageRegex instanceof RegExp))throw Error("Tokenizer must have `languageRegex` attribute set and it should be a regular expression.");if(!(`lang_to_token`in e)||typeof e.lang_to_token!=`function`)throw Error("Tokenizer must have `lang_to_token` attribute set and it should be a function.");let i=r.src_lang,a=r.tgt_lang;if(!e.language_codes.includes(a))throw Error(`Target language code "${a}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);if(i!==void 0){if(!e.language_codes.includes(i))throw Error(`Source language code "${i}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);for(let t of e.post_processor.config.single)if(`SpecialToken`in t&&e.languageRegex.test(t.SpecialToken.id)){t.SpecialToken.id=e.lang_to_token(i);break}}return r.forced_bos_token_id=e.model.convert_tokens_to_ids([e.lang_to_token(a)])[0],e._call(t,n)}class vt extends z{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{3}_[A-Z][a-z]{3}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class yt extends z{constructor(e,t){super(e,t),this.languageRegex=/^__[a-z]{2,3}__$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)).map(e=>e.slice(2,-2)),this.lang_to_token=e=>`__${e}__`}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class bt extends z{get timestamp_begin(){return this.model.convert_tokens_to_ids([`<|notimestamps|>`])[0]+1}_decode_asr(e,{return_timestamps:t=!1,return_language:n=!1,time_precision:r=null,force_full_sequences:i=!0}={}){if(r===null)throw Error(`Must specify time_precision`);let a=null,s=t===`word`;function c(){return{language:a,timestamp:[null,null],text:``}}let l=[],d=c(),f=0,p=this.timestamp_begin,m=1500,h=p+m,g=[],_=[],v=!1,y=null,b=new Set(this.all_special_ids);for(let n of e){let e=n.tokens,i=s?n.token_timestamps:null,m=null,x=p;if(`stride`in n){let[t,i,a]=n.stride;if(f-=i,y=t-a,i&&(x=i/r+p),a)for(let t=e.length-1;t>=0;--t){let n=Number(e[t]);if(n>=p){if(m!==null&&(n-p)*r=p&&y<=h){let e=(y-p)*r+f,t=(0,o.round)(e,2);if(m!==null&&y>=m)v=!0;else if(v||g.length>0&&y0?(g.push(S),s&&_.push(w)):g.every(e=>e.length===0)&&(d=c(),g=[],S=[],_=[],w=[])}if(g.length>0){if(i&&t)throw Error(`Whisper did not predict an ending timestamp, which can happen if audio is cut off in the middle of a word. Also make sure WhisperTimeStampLogitsProcessor was used during generation.`);let[e,n]=this.findLongestCommonSequence(g,_),r=this.decode(e);d.text=r,s&&(d.words=this.collateWordTimestamps(e,n,a)),l.push(d)}let x=Object.create(null),S=l.map(e=>e.text).join(``);if(t||n){for(let e=0;e0,o=a?[]:null,s=a?t[0]:null;for(let c=1;ce===g[n]&&s[i+n]<=t[c][m+n]).length:p.filter((e,t)=>e===g[t]).length;let v=e/1e4,y=_/e+v;_>1&&y>u&&(u=y,d=[i,o,m,h])}let[p,m,h,g]=d,_=Math.floor((m+p)/2),v=Math.floor((g+h)/2);i.push(...n.slice(0,_)),n=l.slice(v),r=n.length,a&&(o.push(...s.slice(0,_)),s=t[c].slice(v))}return i.push(...n),a?(o.push(...s),[i,o]):[i,[]]}collateWordTimestamps(e,t,n){let[r,i,a]=this.combineTokensIntoWords(e,n),o=[];for(let e=0;e=r){let e=((t-r)*n).toFixed(2);i.push(`<|${e}|>`),i.push([])}else i[i.length-1].push(t);return i=i.map(e=>typeof e==`string`?e:super.decode(e,t)),i.join(``)}splitTokensOnUnicode(e){let t=this.decode(e,{decode_with_timestamps:!0}),n=`�`,r=[],i=[],a=[],o=[],s=[],c=0;for(let l=0;l=this.model.tokens_to_ids.get(`<|endoftext|>`),f=c.startsWith(` `),p=c.trim(),m=s.test(p);if(d||f||m||i.length===0)i.push(c),a.push(l),o.push(u);else{let e=i.length-1;i[e]+=c,a[e].push(...l),o[e].push(...u)}}return[i,a,o]}mergePunctuations(e,t,n,r,a){let o=structuredClone(e),s=structuredClone(t),c=structuredClone(n),l=o.length-2,u=o.length-1;for(;l>=0;)o[l].startsWith(` `)&&r.includes(o[l].trim())?(o[u]=o[l]+o[u],s[u]=(0,i.mergeArrays)(s[l],s[u]),c[u]=(0,i.mergeArrays)(c[l],c[u]),o[l]=``,s[l]=[],c[l]=[]):u=l,--l;for(l=0,u=1;ue),s.filter(e=>e.length>0),c.filter(e=>e.length>0)]}}class xt extends z{}class St extends z{}class Ct extends z{}class wt extends z{constructor(e,t){super(e,t),this.languageRegex=/^(>>\w+<<)\s*/g,this.supported_language_codes=this.model.vocab.filter(e=>this.languageRegex.test(e)),console.warn('WARNING: `MarianTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}_encode_text(e){if(e===null)return null;let[t,...n]=e.trim().split(this.languageRegex);if(n.length===0)return super._encode_text(t);if(n.length===2){let[e,t]=n;return this.supported_language_codes.includes(e)||console.warn(`Unsupported language code "${e}" detected, which may lead to unexpected behavior. Should be one of: ${JSON.stringify(this.supported_language_codes)}`),(0,i.mergeArrays)([e],super._encode_text(t))}}}class Tt extends z{}class Et extends z{}class Dt extends z{}class Ot extends z{}class kt extends z{}class At extends z{constructor(e,t){super(e,t),this.decoder=new je({})}}class jt extends z{}class Mt extends z{}class Nt{static TOKENIZER_CLASS_MAPPING={T5Tokenizer:$e,DistilBertTokenizer:Ye,CamembertTokenizer:Xe,DebertaTokenizer:We,DebertaV2Tokenizer:Ge,BertTokenizer:Ve,HerbertTokenizer:Ke,ConvBertTokenizer:qe,RoFormerTokenizer:Je,XLMTokenizer:Ze,ElectraTokenizer:Qe,MobileBertTokenizer:B,SqueezeBertTokenizer:Ue,AlbertTokenizer:He,GPT2Tokenizer:et,BartTokenizer:tt,MBartTokenizer:nt,MBart50Tokenizer:rt,RobertaTokenizer:it,WhisperTokenizer:bt,CodeGenTokenizer:xt,CLIPTokenizer:St,SiglipTokenizer:Ct,MarianTokenizer:wt,BloomTokenizer:at,NllbTokenizer:vt,M2M100Tokenizer:yt,LlamaTokenizer:st,CodeLlamaTokenizer:ct,XLMRobertaTokenizer:lt,MPNetTokenizer:ut,FalconTokenizer:dt,GPTNeoXTokenizer:ft,EsmTokenizer:pt,Wav2Vec2CTCTokenizer:Tt,BlenderbotTokenizer:Et,BlenderbotSmallTokenizer:Dt,SpeechT5Tokenizer:Ot,NougatTokenizer:kt,VitsTokenizer:At,Qwen2Tokenizer:mt,GemmaTokenizer:ht,Grok1Tokenizer:gt,CohereTokenizer:jt,MgpstrTokenizer:Mt,PreTrainedTokenizer:z};static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){let[s,c]=await d(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o}),l=c.tokenizer_class?.replace(/Fast$/,``)??`PreTrainedTokenizer`,u=this.TOKENIZER_CLASS_MAPPING[l];return u||(console.warn(`Unknown tokenizer class "${l}", attempting to construct from base class.`),u=z),new u(s,c)}}},"./src/utils/audio.js":(e,t,n)=>{n.r(t),n.d(t,{RawAudio:()=>O,hamming:()=>f,hanning:()=>d,mel_filter_bank:()=>y,read_audio:()=>l,spectrogram:()=>w,window_function:()=>T});var r=n( +/*! ./hub.js */ +`./src/utils/hub.js`),i=n( +/*! ./maths.js */ +`./src/utils/maths.js`),a=n( +/*! ./core.js */ +`./src/utils/core.js`),o=n( +/*! ../env.js */ +`./src/env.js`),s=n( +/*! ./tensor.js */ +`./src/utils/tensor.js`),c=n( +/*! node:fs */ +`?7992`);async function l(e,t){if(typeof AudioContext>`u`)throw Error("Unable to load audio from path/URL since `AudioContext` is not available in your environment. Instead, audio data should be passed directly to the pipeline/processor. For more information and some example code, see https://huggingface.co/docs/transformers.js/guides/node-audio-processing.");let n=await(await(0,r.getFile)(e)).arrayBuffer(),i=new AudioContext({sampleRate:t});t===void 0&&console.warn(`No sampling rate provided, using default of ${i.sampleRate}Hz.`);let a=await i.decodeAudioData(n),o;if(a.numberOfChannels===2){let e=Math.sqrt(2),t=a.getChannelData(0),n=a.getChannelData(1);o=new Float32Array(t.length);for(let r=0;r2595*Math.log10(1+e/700),kaldi:e=>1127*Math.log(1+e/700),slaney:(e,t=1e3,n=15,r=27/Math.log(6.4))=>e>=t?n+Math.log(e/t)*r:3*e/200};function m(e,t=`htk`){let n=p[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}let h={htk:e=>700*(10**(e/2595)-1),kaldi:e=>700*(Math.exp(e/1127)-1),slaney:(e,t=1e3,n=15,r=Math.log(6.4)/27)=>e>=n?t*Math.exp(r*(e-n)):200*e/3};function g(e,t=`htk`){let n=h[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}function _(e,t){let n=Float64Array.from({length:t.length-1},(e,n)=>t[n+1]-t[n]),r=Array.from({length:e.length},()=>Array(t.length));for(let n=0;nArray(e.length));for(let t=0;te+r*n)}function y(e,t,n,r,i,a=null,o=`htk`,s=!1){if(a!==null&&a!==`slaney`)throw Error(`norm must be one of null or "slaney"`);if(e<2)throw Error(`Require num_frequency_bins: ${e} >= 2`);if(n>r)throw Error(`Require min_frequency: ${n} <= max_frequency: ${r}`);let c=m(n,o),l=m(r,o),u=v(c,l,t+2),d=g(u,o),f;if(s){let t=i/((e-1)*2);f=m(Float64Array.from({length:e},(e,n)=>n*t),o),d=u}else f=v(0,Math.floor(i/2),e);let p=_(f,d);if(a!==null&&a===`slaney`)for(let n=0;na)throw Error(`frame_length (${n}) may not be larger than fft_length (${a})`);if(D!==n)throw Error(`Length of the window (${D}) must equal frame_length (${n})`);if(r<=0)throw Error(`hop_length must be greater than zero`);if(o===null&&p!==null)throw Error("You have provided `mel_filters` but `power` is `None`. Mel spectrogram computation is not yet supported for complex-valued spectrogram. Specify `power` to fix this issue.");if(!f)throw Error("`preemphasis_htk_flavor=false` is not currently supported.");if(c){if(l!==`reflect`)throw Error(`pad_mode="${l}" not implemented yet.`);let t=Math.floor((a-1)/2)+1;e=b(e,t,t)}let O=Math.floor(1+Math.floor((e.length-n)/r));x!==null&&OO?T&&(ee=w):ee=A=w);let te=new i.FFT(a),ne=new Float64Array(a),j=new Float64Array(te.outputBufferSize),re=new Float32Array(k*ee);for(let i=0;i=1;--e)ne[e]-=d*ne[e-1];ne[0]*=1-d}for(let e=0;ee**.85);break;default:throw Error(`Unknown window type ${t}.`)}if(n&&(o=o.subarray(0,e)),r===null)return o;if(e>r)throw Error(`Length of the window (${e}) may not be larger than frame_length (${r})`);return o}function E(e,t){let n=44,r=new ArrayBuffer(n+e.length*4),i=new DataView(r);D(i,0,`RIFF`),i.setUint32(4,36+e.length*4,!0),D(i,8,`WAVE`),D(i,12,`fmt `),i.setUint32(16,16,!0),i.setUint16(20,3,!0),i.setUint16(22,1,!0),i.setUint32(24,t,!0),i.setUint32(28,t*4,!0),i.setUint16(32,4,!0),i.setUint16(34,32,!0),D(i,36,`data`),i.setUint32(40,e.length*4,!0);for(let t=0;t{let n=await t.arrayBuffer();c.writeFileSync(e,Buffer.from(n))};else throw Error(`Unable to save because filesystem is disabled in this environment.`);await t(e,this.toBlob())}}},"./src/utils/constants.js":(e,t,n)=>{n.r(t),n.d(t,{CHAT_TEMPLATE_NAME:()=>c,CONFIG_NAME:()=>i,FEATURE_EXTRACTOR_NAME:()=>a,GENERATION_CONFIG_NAME:()=>l,GITHUB_ISSUE_URL:()=>r,IMAGE_PROCESSOR_NAME:()=>o,PROCESSOR_NAME:()=>s});let r=`https://github.com/huggingface/transformers.js/issues/new/choose`,i=`config.json`,a=`preprocessor_config.json`,o=a,s=`processor_config.json`,c=`chat_template.jinja`,l=`generation_config.json`},"./src/utils/core.js":(e,t,n)=>{n.r(t),n.d(t,{calculateDimensions:()=>l,calculateReflectOffset:()=>p,count:()=>_,dispatchCallback:()=>r,escapeRegExp:()=>a,isIntegralNumber:()=>s,isNullishDimension:()=>c,isTypedArray:()=>o,len:()=>g,mergeArrays:()=>d,pick:()=>h,pop:()=>u,product:()=>f,reverseDictionary:()=>i,saveBlob:()=>m});function r(e,t){e&&e(t)}function i(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[t,e]))}function a(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function o(e){return e?.prototype?.__proto__?.constructor?.name===`TypedArray`}function s(e){return Number.isInteger(e)||typeof e==`bigint`}function c(e){return e==null||e===-1}function l(e){let t=[],n=e;for(;Array.isArray(n);)t.push(n.length),n=n[0];return t}function u(e,t,n=void 0){let r=e[t];if(r!==void 0)return delete e[t],r;if(n===void 0)throw Error(`Key ${t} does not exist in object.`);return n}function d(...e){return Array.prototype.concat.apply([],e)}function f(...e){return e.reduce((e,t)=>e.flatMap(e=>t.map(t=>[e,t])))}function p(e,t){return Math.abs((e+t)%(2*t)-t)}function m(e,t){let n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=e,r.click(),r.remove(),URL.revokeObjectURL(n)}function h(e,t){return Object.assign({},...t.map(t=>{if(e[t]!==void 0)return{[t]:e[t]}}))}function g(e){let t=0;for(let n of e)++t;return t}function _(e,t){let n=0;for(let r of e)r===t&&++n;return n}},"./src/utils/data-structures.js":(e,t,n)=>{n.r(t),n.d(t,{CharTrie:()=>i,DictionarySplitter:()=>c,LRUCache:()=>l,PriorityQueue:()=>r,TokenLattice:()=>o});class r{constructor(e=(e,t)=>e>t,t=1/0){this._heap=[],this._comparator=e,this._maxSize=t}get size(){return this._heap.length}isEmpty(){return this.size===0}peek(){return this._heap[0]}push(...e){return this.extend(e)}extend(e){for(let t of e)if(this.size0&&this._swap(0,t),this._heap.pop(),this._siftDown(),e}replace(e){let t=this.peek();return this._heap[0]=e,this._siftDown(),t}_parent(e){return(e+1>>>1)-1}_left(e){return(e<<1)+1}_right(e){return e+1<<1}_greater(e,t){return this._comparator(this._heap[e],this._heap[t])}_swap(e,t){let n=this._heap[e];this._heap[e]=this._heap[t],this._heap[t]=n}_siftUp(){this._siftUpFrom(this.size-1)}_siftUpFrom(e){for(;e>0&&this._greater(e,this._parent(e));)this._swap(e,this._parent(e)),e=this._parent(e)}_siftDown(){let e=0;for(;this._left(e)[]),this.endNodes=Array.from({length:this.len+1},()=>[]);let r=new s(this.bosTokenId,0,0,0,0),i=new s(this.eosTokenId,1,this.len,0,0);this.nodes.push(r.clone()),this.nodes.push(i.clone()),this.beginNodes[this.len].push(i),this.endNodes[0].push(r)}insert(e,t,n,r){let i=this.nodes.length,a=new s(r,i,e,t,n);this.beginNodes[e].push(a),this.endNodes[e+t].push(a),this.nodes.push(a)}viterbi(){let e=this.len,t=0;for(;t<=e;){if(this.beginNodes[t].length==0)return[];for(let e of this.beginNodes[t]){e.prev=null;let n=0,r=null;for(let i of this.endNodes[t]){let t=i.backtraceScore+e.score;(r===null||t>n)&&(r=i.clone(),n=t)}if(r!==null)e.prev=r,e.backtraceScore=n;else return[]}++t}let n=[],r=this.beginNodes[e][0],i=r.prev;if(i===null)return[];let a=i.clone();for(;a.prev!==null;){n.push(a.clone());let e=a.clone();a=e.prev.clone()}return n.reverse(),n}piece(e){return this.chars.slice(e.pos,e.pos+e.length).join(``)}tokens(){let e=this.viterbi();return e.map(e=>this.piece(e))}tokenIds(){let e=this.viterbi();return e.map(e=>e.tokenId)}}class s{constructor(e,t,n,r,i){this.tokenId=e,this.nodeId=t,this.pos=n,this.length=r,this.score=i,this.prev=null,this.backtraceScore=0}clone(){let e=new s(this.tokenId,this.nodeId,this.pos,this.length,this.score);return e.prev=this.prev,e.backtraceScore=this.backtraceScore,e}}class c{constructor(e){this.trie=this._buildTrie(e)}_buildTrie(e){let t=Object.create(null);for(let n of e){let e=t;for(let t=0;tr&&t.push(e.slice(r,i)),t.push(o),i+=o.length,r=i):++i}return rthis.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}}},"./src/utils/devices.js":(e,t,n)=>{n.r(t),n.d(t,{DEVICE_TYPES:()=>r});let r=Object.freeze({auto:`auto`,gpu:`gpu`,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:`webnn`,"webnn-npu":`webnn-npu`,"webnn-gpu":`webnn-gpu`,"webnn-cpu":`webnn-cpu`})},"./src/utils/dtypes.js":(e,t,n)=>{n.r(t),n.d(t,{DATA_TYPES:()=>o,DEFAULT_DEVICE_DTYPE_MAPPING:()=>s,DEFAULT_DTYPE_SUFFIX_MAPPING:()=>c,isWebGpuFp16Supported:()=>a});var r=n( +/*! ../env.js */ +`./src/env.js`),i=n( +/*! ./devices.js */ +`./src/utils/devices.js`);let a=function(){let e;return async function(){if(e===void 0)if(!r.apis.IS_WEBGPU_AVAILABLE)e=!1;else try{let t=await navigator.gpu.requestAdapter();e=t.features.has(`shader-f16`)}catch{e=!1}return e}}(),o=Object.freeze({auto:`auto`,fp32:`fp32`,fp16:`fp16`,q8:`q8`,int8:`int8`,uint8:`uint8`,q4:`q4`,bnb4:`bnb4`,q4f16:`q4f16`}),s=Object.freeze({[i.DEVICE_TYPES.wasm]:o.q8}),c=Object.freeze({[o.fp32]:``,[o.fp16]:`_fp16`,[o.int8]:`_int8`,[o.uint8]:`_uint8`,[o.q8]:`_quantized`,[o.q4]:`_q4`,[o.q4f16]:`_q4f16`,[o.bnb4]:`_bnb4`})},"./src/utils/generic.js":(e,t,n)=>{n.r(t),n.d(t,{Callable:()=>r});let r=class{constructor(){let e=function(...t){return e._call(...t)};return Object.setPrototypeOf(e,new.target.prototype)}_call(...e){throw Error(`Must implement _call method in subclass`)}}},"./src/utils/hub.js":(e,t,n)=>{n.r(t),n.d(t,{MAX_EXTERNAL_DATA_CHUNKS:()=>s,getFile:()=>p,getModelFile:()=>v,getModelJSON:()=>b,getModelText:()=>y});var r=n( +/*! node:fs */ +`?7992`),i=n( +/*! node:path */ +`?5af5`),a=n( +/*! ../env.js */ +`./src/env.js`),o=n( +/*! ./core.js */ +`./src/utils/core.js`);let s=100,c={txt:`text/plain`,html:`text/html`,css:`text/css`,js:`text/javascript`,json:`application/json`,png:`image/png`,jpg:`image/jpeg`,jpeg:`image/jpeg`,gif:`image/gif`};class l{constructor(e){if(this.filePath=e,this.headers=new Headers,this.exists=r.existsSync(e),this.exists){this.status=200,this.statusText=`OK`;let t=r.statSync(e);this.headers.set(`content-length`,t.size.toString()),this.updateContentType();let n=r.createReadStream(e);this.body=new ReadableStream({start(e){n.on(`data`,t=>e.enqueue(t)),n.on(`end`,()=>e.close()),n.on(`error`,t=>e.error(t))},cancel(){n.destroy()}})}else this.status=404,this.statusText=`Not Found`,this.body=null}updateContentType(){let e=this.filePath.toString().split(`.`).pop().toLowerCase();this.headers.set(`content-type`,c[e]??`application/octet-stream`)}clone(){let e=new l(this.filePath);return e.exists=this.exists,e.status=this.status,e.statusText=this.statusText,e.headers=new Headers(this.headers),e}async arrayBuffer(){let e=await r.promises.readFile(this.filePath);return e.buffer}async blob(){let e=await r.promises.readFile(this.filePath);return new Blob([e],{type:this.headers.get(`content-type`)})}async text(){let e=await r.promises.readFile(this.filePath,`utf8`);return e}async json(){return JSON.parse(await this.text())}}function u(e,t=null,n=null){let r;try{r=new URL(e)}catch{return!1}return!(t&&!t.includes(r.protocol)||n&&!n.includes(r.hostname))}let d=/^(\b[\w\-.]+\b\/)?\b[\w\-.]{1,96}\b$/;function f(e){return!(!d.test(e)||e.includes(`..`)||e.includes(`--`)||e.endsWith(`.git`)||e.endsWith(`.ipynb`))}async function p(e){if(a.env.useFS&&!u(e,[`http:`,`https:`,`blob:`]))return new l(e instanceof URL?e.protocol===`file:`?e.pathname:e.toString():e);if(typeof process<`u`&&process?.release?.name===`node`){let t=!!{}?.TESTING_REMOTELY,n=a.env.version,r=new Headers;r.set(`User-Agent`,`transformers.js/${n}; is_ci/${t};`);let i=u(e,[`http:`,`https:`],[`huggingface.co`,`hf.co`]);if(i){let e={}?.HF_TOKEN??{}?.HF_ACCESS_TOKEN;e&&r.set(`Authorization`,`Bearer ${e}`)}return fetch(e,{headers:r})}else return fetch(e)}let m={400:`Bad request error occurred while trying to load file`,401:`Unauthorized access to file`,403:`Forbidden access to file`,404:`Could not locate file`,408:`Request timeout error occurred while trying to load file`,500:`Internal server error error occurred while trying to load file`,502:`Bad gateway error occurred while trying to load file`,503:`Service unavailable error occurred while trying to load file`,504:`Gateway timeout error occurred while trying to load file`};function h(e,t,n){if(!n)return null;let r=m[e]??`Error (${e}) occurred while trying to load file`;throw Error(`${r}: "${t}".`)}class g{constructor(e){this.path=e}async match(e){let t=i.join(this.path,e),n=new l(t);if(n.exists)return n}async put(e,t,n=void 0){let a=i.join(this.path,e);try{let e=t.headers.get(`Content-Length`),o=parseInt(e??`0`),s=0;await r.promises.mkdir(i.dirname(a),{recursive:!0});let c=r.createWriteStream(a),l=t.body.getReader();for(;;){let{done:e,value:t}=await l.read();if(e)break;await new Promise((e,n)=>{c.write(t,t=>{if(t){n(t);return}e()})}),s+=t.length;let r=o?s/o*100:0;n?.({progress:r,loaded:s,total:o})}c.close()}catch(e){try{await r.promises.unlink(a)}catch{}throw e}}}async function _(e,...t){for(let n of t)try{let t=await e.match(n);if(t)return t}catch{continue}}async function v(e,t,n=!0,r={},i=!1){if(!a.env.allowLocalModels){if(r.local_files_only)throw Error("Invalid configuration detected: local models are disabled (`env.allowLocalModels=false`) but you have requested to only use local models (`local_files_only=true`).");if(!a.env.allowRemoteModels)throw Error("Invalid configuration detected: both local and remote models are disabled. Fix by setting `env.allowLocalModels` or `env.allowRemoteModels` to `true`.")}(0,o.dispatchCallback)(r.progress_callback,{status:`initiate`,name:e,file:t});let s;if(!s&&a.env.useCustomCache){if(!a.env.customCache)throw Error("`env.useCustomCache=true`, but `env.customCache` is not defined.");if(!a.env.customCache.match||!a.env.customCache.put)throw Error("`env.customCache` must be an object which implements the `match` and `put` functions of the Web Cache API. For more information, see https://developer.mozilla.org/en-US/docs/Web/API/Cache");s=a.env.customCache}if(!s&&a.env.useBrowserCache){if(typeof caches>`u`)throw Error(`Browser cache is not available in this environment.`);try{s=await caches.open(`transformers-cache`)}catch(e){console.warn(`An error occurred while opening the browser cache:`,e)}}if(!s&&a.env.useFSCache){if(!a.apis.IS_FS_AVAILABLE)throw Error(`File System Cache is not available in this environment.`);s=new g(r.cache_dir??a.env.cacheDir)}let c=r.revision??`main`,d=S(e,t),m=f(e),v=m?S(a.env.localModelPath,d):d,y=S(a.env.remoteHost,a.env.remotePathTemplate.replaceAll(`{model}`,e).replaceAll(`{revision}`,encodeURIComponent(c)),t),b,C=s instanceof g?c===`main`?d:S(e,c,t):y,w=!1,T;s&&(T=await _(s,v,C));let E=T!==void 0;if(T===void 0){if(a.env.allowLocalModels){let e=u(d,[`http:`,`https:`]);if(e){if(r.local_files_only)throw Error(`\`local_files_only=true\`, but attempted to load a remote file from: ${d}.`);if(!a.env.allowRemoteModels)throw Error(`\`env.allowRemoteModels=false\`, but attempted to load a remote file from: ${d}.`)}else try{T=await p(v),b=v}catch(e){console.warn(`Unable to load from local path "${v}": "${e}"`)}}if(T===void 0||T.status===404){if(r.local_files_only||!a.env.allowRemoteModels){if(n)throw Error(`\`local_files_only=true\` or \`env.allowRemoteModels=false\` and file was not found locally at "${v}".`);return null}if(!m)throw Error(`Local file missing at "${v}" and download aborted due to invalid model ID "${e}".`);if(T=await p(y),T.status!==200)return h(T.status,y,n);b=C}w=s&&typeof Response<`u`&&T instanceof Response&&T.status===200}(0,o.dispatchCallback)(r.progress_callback,{status:`download`,name:e,file:t});let D;if(!(a.apis.IS_NODE_ENV&&i)){let n;r.progress_callback?E&&typeof navigator<`u`&&/firefox/i.test(navigator.userAgent)?(n=new Uint8Array(await T.arrayBuffer()),(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,progress:100,loaded:n.length,total:n.length})):n=await x(T,n=>{(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,...n})}):n=new Uint8Array(await T.arrayBuffer()),D=n}if(w&&b&&await s.match(b)===void 0&&(D?await s.put(b,new Response(D,{headers:T.headers})).catch(e=>{console.warn(`Unable to add response to browser cache: ${e}.`)}):await s.put(b,T,r.progress_callback)),(0,o.dispatchCallback)(r.progress_callback,{status:`done`,name:e,file:t}),D){if(!a.apis.IS_NODE_ENV&&i)throw Error(`Cannot return path in a browser environment.`);return D}if(T instanceof l)return T.filePath;let O=await s?.match(b);if(O instanceof l)return O.filePath;if(O instanceof Response)return new Uint8Array(await O.arrayBuffer());if(typeof O==`string`)return O;throw Error(`Unable to get model file path or buffer.`)}async function y(e,t,n=!0,r={}){let i=await v(e,t,n,r,!1);if(i===null)return null;let a=new TextDecoder(`utf-8`);return a.decode(i)}async function b(e,t,n=!0,r={}){let i=await y(e,t,n,r);return i===null?{}:JSON.parse(i)}async function x(e,t){let n=e.headers.get(`Content-Length`);n===null&&console.warn(`Unable to determine content-length from response headers. Will expand buffer when needed.`);let r=parseInt(n??`0`),i=new Uint8Array(r),a=0,o=e.body.getReader();async function s(){let{done:e,value:n}=await o.read();if(e)return;let c=a+n.length;if(c>r){r=c;let e=new Uint8Array(r);e.set(i),i=e}i.set(n,a),a=c;let l=a/r*100;return t({progress:l,loaded:a,total:r}),s()}return await s(),i}function S(...e){return e=e.map((t,n)=>(n&&(t=t.replace(RegExp(`^/`),``)),n!==e.length-1&&(t=t.replace(RegExp(`/$`),``)),t)),e.join(`/`)}},"./src/utils/image.js":(e,t,n)=>{n.r(t),n.d(t,{RawImage:()=>m,load_image:()=>h});var r=n( +/*! ./core.js */ +`./src/utils/core.js`),i=n( +/*! ./hub.js */ +`./src/utils/hub.js`),a=n( +/*! ../env.js */ +`./src/env.js`),o=n( +/*! ./tensor.js */ +`./src/utils/tensor.js`),s=n( +/*! sharp */ +`?2b25`);let c,l,u,d=a.apis.IS_BROWSER_ENV||a.apis.IS_WEBWORKER_ENV;if(d)c=(e,t)=>{if(!self.OffscreenCanvas)throw Error(`OffscreenCanvas not supported by this browser.`);return new self.OffscreenCanvas(e,t)},u=self.createImageBitmap,l=self.ImageData;else if(s)u=async e=>{let t=await e.metadata(),n=t.channels,{data:r,info:i}=await e.rotate().raw().toBuffer({resolveWithObject:!0}),a=new m(new Uint8ClampedArray(r),i.width,i.height,i.channels);return n!==void 0&&n!==i.channels&&a.convert(n),a};else throw Error(`Unable to load image processing library.`);let f={0:`nearest`,1:`lanczos`,2:`bilinear`,3:`bicubic`,4:`box`,5:`hamming`},p=new Map([[`png`,`image/png`],[`jpg`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`gif`,`image/gif`]]);class m{constructor(e,t,n,r){this.data=e,this.width=t,this.height=n,this.channels=r}get size(){return[this.width,this.height]}static async read(e){if(e instanceof m)return e;if(typeof e==`string`||e instanceof URL)return await this.fromURL(e);if(e instanceof Blob)return await this.fromBlob(e);if(typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof OffscreenCanvas<`u`&&e instanceof OffscreenCanvas)return this.fromCanvas(e);throw Error(`Unsupported input type: ${typeof e}`)}static fromCanvas(e){if(!d)throw Error(`fromCanvas() is only supported in browser environments.`);let t=e.getContext(`2d`),n=t.getImageData(0,0,e.width,e.height).data;return new m(n,e.width,e.height,4)}static async fromURL(e){let t=await(0,i.getFile)(e);if(t.status!==200)throw Error(`Unable to read image from "${e}" (${t.status} ${t.statusText})`);let n=await t.blob();return this.fromBlob(n)}static async fromBlob(e){if(d){let t=await u(e),n=c(t.width,t.height).getContext(`2d`);return n.drawImage(t,0,0),new this(n.getImageData(0,0,t.width,t.height).data,t.width,t.height,4)}else{let t=s(await e.arrayBuffer());return await u(t)}}static fromTensor(e,t=`CHW`){if(e.dims.length!==3)throw Error(`Tensor should have 3 dimensions, but has ${e.dims.length} dimensions.`);if(t===`CHW`)e=e.transpose(1,2,0);else if(t!==`HWC`)throw Error(`Unsupported channel format: ${t}`);if(!(e.data instanceof Uint8ClampedArray||e.data instanceof Uint8Array))throw Error(`Unsupported tensor type: ${e.type}`);switch(e.dims[2]){case 1:case 2:case 3:case 4:return new m(e.data,e.dims[1],e.dims[0],e.dims[2]);default:throw Error(`Unsupported number of channels: ${e.dims[2]}`)}}grayscale(){if(this.channels===1)return this;let e=new Uint8ClampedArray(this.width*this.height*1);switch(this.channels){case 3:case 4:for(let t=0,n=0;t=0?s=n:u=-n,r>=0?l=r:d=-r,o.drawImage(a,s,l,e,t,u,d,e,t);let f=new m(o.getImageData(0,0,e,t).data,e,t,4);return f.convert(i)}else{let i=this.toSharp();if(n>=0&&r>=0)i=i.extract({left:Math.floor(n),top:Math.floor(r),width:e,height:t});else if(n<=0&&r<=0){let a=Math.floor(-r),o=Math.floor(-n);i=i.extend({top:a,left:o,right:e-this.width-o,bottom:t-this.height-a})}else{let a=[0,0],o=0;r<0?(a[0]=Math.floor(-r),a[1]=t-this.height-a[0]):o=Math.floor(r);let s=[0,0],c=0;n<0?(s[0]=Math.floor(-n),s[1]=e-this.width-s[0]):c=Math.floor(n),i=i.extend({top:a[0],bottom:a[1],left:s[0],right:s[1]}).extract({left:c,top:o,width:e,height:t})}return await u(i)}}async toBlob(e=`image/png`,t=1){if(!d)throw Error(`toBlob() is only supported in browser environments.`);let n=this.toCanvas();return await n.convertToBlob({type:e,quality:t})}toTensor(e=`CHW`){let t=new o.Tensor(`uint8`,new Uint8Array(this.data),[this.height,this.width,this.channels]);if(e!==`HWC`)if(e===`CHW`)t=t.permute(2,0,1);else throw Error(`Unsupported channel format: ${e}`);return t}toCanvas(){if(!d)throw Error(`toCanvas() is only supported in browser environments.`);let e=this.clone().rgba(),t=c(e.width,e.height),n=new l(e.data,e.width,e.height);return t.getContext(`2d`).putImageData(n,0,0),t}split(){let{data:e,width:t,height:n,channels:r}=this,i=e.constructor,a=e.length/r,o=Array.from({length:r},()=>new i(a));for(let t=0;tnew m(e,t,n,1))}_update(e,t,n,r=null){return this.data=e,this.width=t,this.height=n,r!==null&&(this.channels=r),this}clone(){return new m(this.data.slice(),this.width,this.height,this.channels)}convert(e){if(this.channels===e)return this;switch(e){case 1:this.grayscale();break;case 3:this.rgb();break;case 4:this.rgba();break;default:throw Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this}async save(e){if(d){if(a.apis.IS_WEBWORKER_ENV)throw Error(`Unable to save an image from a Web Worker.`);let t=e.split(`.`).pop().toLowerCase(),n=p.get(t)??`image/png`,i=await this.toBlob(n);(0,r.saveBlob)(e,i)}else if(a.apis.IS_FS_AVAILABLE){let t=this.toSharp();return await t.toFile(e)}else throw Error(`Unable to save the image because filesystem is disabled in this environment.`)}toSharp(){if(d)throw Error(`toSharp() is only supported in server-side environments.`);return s(this.data,{raw:{width:this.width,height:this.height,channels:this.channels}})}}let h=m.read.bind(m)},"./src/utils/maths.js":(e,t,n)=>{n.r(t),n.d(t,{FFT:()=>h,bankers_round:()=>v,cos_sim:()=>c,dot:()=>s,dynamic_time_warping:()=>y,interpolate_data:()=>r,log_softmax:()=>o,magnitude:()=>l,max:()=>d,medianFilter:()=>g,min:()=>u,permute_data:()=>i,round:()=>_,softmax:()=>a});function r(e,[t,n,r],[i,a],o=`bilinear`,s=!1){let c=a/r,l=i/n,u=new e.constructor(i*a*t),d=n*r,f=i*a;for(let o=0;o=0;--e)i[e]=a,r[e]=t[n[e]],a*=r[e];let a=n.map((e,t)=>i[n.indexOf(t)]),o=new e.constructor(e.length);for(let n=0;n=0;--e)r+=i%t[e]*a[e],i=Math.floor(i/t[e]);o[r]=e[n]}return[o,r]}function a(e){let t=d(e)[0],n=e.map(e=>Math.exp(e-t)),r=n.reduce((e,t)=>e+t,0),i=n.map(e=>e/r);return i}function o(e){let t=d(e)[0],n=0;for(let r=0;re-t-r);return i}function s(e,t){let n=0;for(let r=0;re+t*t,0))}function u(e){if(e.length===0)throw Error(`Array must not be empty`);let t=e[0],n=0;for(let r=1;rt&&(t=e[r],n=r);return[t,n]}function f(e){return e>0&&(e&e-1)==0}class p{constructor(e){if(this.size=e|0,this.size<=1||!f(this.size))throw Error(`FFT size must be a power of two larger than 1`);this._csize=e<<1,this.table=new Float64Array(this.size*2);for(let e=0;ee;e<<=1)++t;this._width=t%2==0?t-1:t,this._bitrev=new Int32Array(1<>>t&3)<>>1);for(let t=0;t>>1]=e[t];return n}toComplexArray(e,t){let n=t||this.createComplexArray();for(let t=0;t>>1],n[t+1]=0;return n}transform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,1)}realTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._realTransform4(e,t,1)}inverseTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,-1);for(let t=0;t>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>2;for(s=0;s>>1,a>>>1)}else for(s=0,c=0;s>>1,a>>>1,n)}let u=this.table;for(a>>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>1,i=t>>>1,c=i>>>1;for(s=0;s>>1;for(let t=2;t>1;++t){let n=(t+1-e)**2/2,r=Math.sqrt(s**2+c**2)**n,o=n*Math.atan2(c,s),l=2*t;i[l]=r*Math.cos(o),i[l+1]=r*Math.sin(o),a[l]=i[l],a[l+1]=-i[l+1]}this._slicedChirpBuffer=i.subarray(t,n),this._f=new p(r>>1),this._f.transform(this._chirpBuffer,a)}_transform(e,t,n){let r=this._buffer1,i=this._buffer2,a=this._outBuffer1,o=this._outBuffer2,s=this._chirpBuffer,c=this._slicedChirpBuffer,l=this._a;if(n)for(let e=0;e>1,a=t[i];r[e]=a*c[e],r[n]=a*c[n]}else for(let e=0;e=e.length&&(i=2*(e.length-1)-i),r[a++]=e[i]}r.sort(),n[t]=r[i]}return n}function _(e,t){let n=10**t;return Math.round(e*n)/n}function v(e){let t=Math.round(e),n=Math.abs(e)%1==.5?t%2==0?t:t-1:t;return n}function y(e){let t=e.length,n=e[0].length,r=[t+1,n+1],i=Array.from({length:r[0]},()=>Array(r[1]).fill(1/0));i[0][0]=0;let a=Array.from({length:r[0]},()=>Array(r[1]).fill(-1));for(let t=1;t0||s>0;)switch(c.push(o-1),l.push(s-1),a[o][s]){case 0:--o,--s;break;case 1:--o;break;case 2:--s;break;default:throw Error(`Internal error in dynamic time warping. Unexpected trace[${o}, ${s}]. Please file a bug report.`)}return c.reverse(),l.reverse(),[c,l]}},"./src/utils/tensor.js":(e,t,n)=>{n.r(t),n.d(t,{DataTypeMap:()=>o,Tensor:()=>s,cat:()=>S,full:()=>k,full_like:()=>A,interpolate:()=>u,interpolate_4d:()=>d,layer_norm:()=>v,matmul:()=>f,mean:()=>E,mean_pooling:()=>_,ones:()=>ee,ones_like:()=>te,permute:()=>l,quantize_embeddings:()=>ie,rand:()=>re,rfft:()=>p,slice:()=>g,stack:()=>C,std_mean:()=>T,topk:()=>m,zeros:()=>ne,zeros_like:()=>j});var r=n( +/*! ./maths.js */ +`./src/utils/maths.js`),i=n( +/*! ../backends/onnx.js */ +`./src/backends/onnx.js`),a=n( +/*! ../ops/registry.js */ +`./src/ops/registry.js`);let o=Object.freeze({float32:Float32Array,float16:typeof Float16Array<`u`?Float16Array:Uint16Array,float64:Float64Array,string:Array,int8:Int8Array,uint8:Uint8Array,int16:Int16Array,uint16:Uint16Array,int32:Int32Array,uint32:Uint32Array,int64:BigInt64Array,uint64:BigUint64Array,bool:Uint8Array,uint4:Uint8Array,int4:Int8Array});class s{get dims(){return this.ort_tensor.dims}set dims(e){this.ort_tensor.dims=e}get type(){return this.ort_tensor.type}get data(){return this.ort_tensor.data}get size(){return this.ort_tensor.size}get location(){return this.ort_tensor.location}ort_tensor;constructor(...e){return(0,i.isONNXTensor)(e[0])?this.ort_tensor=e[0]:this.ort_tensor=new i.Tensor(e[0],e[1],e[2]),new Proxy(this,{get:(e,t)=>{if(typeof t==`string`){let n=Number(t);if(Number.isInteger(n))return e._getitem(n)}return e[t]},set:(e,t,n)=>e[t]=n})}dispose(){this.ort_tensor.dispose()}*[Symbol.iterator](){let[e,...t]=this.dims;if(t.length>0){let n=t.reduce((e,t)=>e*t);for(let r=0;r0){let t=n.reduce((e,t)=>e*t);return this._subarray(e,t,n)}else return new s(this.type,[this.data[e]],n)}indexOf(e){let t=this.data;for(let n=0;na)throw Error(`Invalid slice: ${i}`);let o=[Math.max(e,0),Math.min(a,this.dims[r])];n.push(o),t.push(o[1]-o[0])}else throw Error(`Invalid slice: ${i}`)}let r=n.map(([e,t])=>t-e),i=r.reduce((e,t)=>e*t),a=this.data,o=new a.constructor(i),c=this.stride();for(let e=0;e=0;--i){let e=r[i];t+=(a%e+n[i][0])*c[i],a=Math.floor(a/e)}o[e]=a[t]}return new s(this.type,o,t)}permute(...e){return l(this,e)}transpose(...e){return this.permute(...e)}sum(e=null,t=!1){return this.norm(1,e,t)}norm(e=`fro`,t=null,n=!1){if(e===`fro`)e=2;else if(typeof e==`string`)throw Error(`Unsupported norm: ${e}`);let r=this.data,i=(t,n)=>t+n**e;if(t===null){let t=r.reduce(i,0)**(1/e);return new s(this.type,[t],[])}let[a,o,c]=w(i,this,t,n);if(e!==1)for(let t=0;t=0;--r){let e=this.dims[r];if(r!==t){let t=i%e;n+=t*a,a*=this.dims[r]}i=Math.floor(i/e)}r[e]/=i[n]}return this}normalize(e=2,t=1){return this.clone().normalize_(e,t)}stride(){return D(this.dims)}squeeze(e=null){return new s(this.type,this.data,y(this.dims,e))}squeeze_(e=null){return this.dims=y(this.dims,e),this}unsqueeze(e=null){return new s(this.type,this.data,b(this.dims,e))}unsqueeze_(e=null){return this.dims=b(this.dims,e),this}flatten_(e=0,t=-1){t=(t+this.dims.length)%this.dims.length;let n=this.dims.slice(0,e),r=this.dims.slice(e,t+1),i=this.dims.slice(t+1);return this.dims=[...n,r.reduce((e,t)=>e*t,1),...i],this}flatten(e=0,t=-1){return this.clone().flatten_(e,t)}view(...e){let t=-1;for(let n=0;nr===t?e:e*n,1);e[t]=n.length/r}return new s(this.type,n,e)}neg_(){let e=this.data;for(let t=0;te?1:0;return new s(`bool`,t,this.dims)}lt(e){let t=new Uint8Array(this.data.length),n=this.data;for(let r=0;rMath.min(e,t),this,e,t,1/0);return new s(n,i,a)}max(e=null,t=!1){if(e===null){let e=(0,r.max)(this.data)[0];return new s(this.type,[e],[])}let[n,i,a]=w((e,t)=>Math.max(e,t),this,e,t,-1/0);return new s(n,i,a)}argmin(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,r.min)(this.data)[1];return new s(`int64`,[BigInt(n)],[])}argmax(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,r.max)(this.data)[1];return new s(`int64`,[BigInt(n)],[])}to(e){if(this.type===e)return this;if(!o.hasOwnProperty(e))throw Error(`Unsupported type: ${e}`);let t,n=[`int64`,`uint64`].includes(this.type),r=[`int64`,`uint64`].includes(e);return n&&!r?t=Number:!n&&r&&(t=BigInt),new s(e,o[e].from(this.data,t),this.dims)}}function c(e,t){let n=e.length,r=t.reduce((e,t)=>e*t);if(n!==r)throw Error(`cannot reshape array of size ${n} into shape (${t})`);let i=e;for(let e=t.length-1;e>=0;e--)i=i.reduce((n,r)=>{let i=n[n.length-1];return i.lengthnew s(`int64`,e,[e.length]);async function g(e,t,n,r,i){let o=await a.TensorOpRegistry.slice;return await o({x:e,s:h(t),e:h(n),a:h(r),t:h(i??Array(r.length).fill(1))})}function _(e,t){let n=e.data,r=t.data,i=[e.dims[0],e.dims[2]],a=new n.constructor(i[0]*i[1]),[o,c,l]=e.dims,u=0;for(let e=0;ee!==1):typeof t==`number`?e[t]===1&&e.splice(t,1):Array.isArray(t)&&(e=e.filter((e,n)=>e!==1||!t.includes(n))),e}function b(e,t){return t=x(t,e.length+1),e=e.slice(),e.splice(t,0,1),e}function x(e,t,n=null,r=!0){if(e<-t||e>=t){if(r)throw Error(`IndexError: index ${e} is out of bounds for dimension${n===null?``:` `+n} with size ${t}`);return e<-t?0:t}return e<0&&(e=(e%t+t)%t),e}function S(e,t=0){t=x(t,e[0].dims.length);let n=e[0].dims.slice();n[t]=e.reduce((e,n)=>e+n.dims[t],0);let r=n.reduce((e,t)=>e*t,1),i=new e[0].data.constructor(r),a=e[0].type;if(t===0){let t=0;for(let n of e){let e=n.data;i.set(e,t),t+=e.length}}else{let r=0;for(let a=0;a=0;--i){let e=s[i],l=o%e;i===t&&(l+=r),a+=l*c,c*=n[i],o=Math.floor(o/e)}i[a]=o[e]}r+=s[t]}}return new s(a,i,n)}function C(e,t=0){return S(e.map(e=>e.unsqueeze(t)),t)}function w(e,t,n=null,r=!1,i=null){let a=t.data,o=t.dims;n=x(n,o.length);let s=o.slice();s[n]=1;let c=new a.constructor(a.length/o[n]);i!==null&&c.fill(i);for(let t=0;t=0;--e){let t=o[e];if(e!==n){let n=i%t;r+=n*a,a*=s[e]}i=Math.floor(i/t)}c[r]=e(c[r],a[t],t,r)}return r||s.splice(n,1),[t.type,c,s]}function T(e,t=null,n=1,r=!1){let i=e.data,a=e.dims;if(t===null){let t=i.reduce((e,t)=>e+t,0),r=t/i.length,a=Math.sqrt(i.reduce((e,t)=>e+(t-r)**2,0)/(i.length-n)),o=new s(e.type,[r],[]),c=new s(e.type,[a],[]);return[c,o]}t=x(t,a.length);let o=E(e,t,r),c=o.data,[l,u,d]=w((e,t,n,r)=>e+(t-c[r])**2,e,t,r);for(let e=0;ee+t,0);return new s(e.type,[t/i.length],[])}t=x(t,r.length);let[a,o,c]=w((e,t)=>e+t,e,t,n);if(r[t]!==1)for(let e=0;e=0;--n)t[n]=r,r*=e[n];return t}function O(e,t,n,r){let i=e.reduce((e,t)=>e*t,1);return new s(n,new r(i).fill(t),e)}function k(e,t){let n,r;if(typeof t==`number`)n=`float32`,r=Float32Array;else if(typeof t==`bigint`)n=`int64`,r=BigInt64Array;else if(typeof t==`boolean`)n=`bool`,r=Uint8Array;else throw Error(`Unsupported data type: ${typeof t}`);return O(e,t,n,r)}function A(e,t){return k(e.dims,t)}function ee(e){return O(e,1n,`int64`,BigInt64Array)}function te(e){return ee(e.dims)}function ne(e){return O(e,0n,`int64`,BigInt64Array)}function j(e){return ne(e.dims)}function re(e){let t=e.reduce((e,t)=>e*t,1);return new s(`float32`,Float32Array.from({length:t},()=>Math.random()),e)}function ie(e,t){if(e.dims.length!==2)throw Error(`The tensor must have 2 dimensions`);if(e.dims.at(-1)%8!=0)throw Error(`The last dimension of the tensor must be a multiple of 8`);if(![`binary`,`ubinary`].includes(t))throw Error(`The precision must be either 'binary' or 'ubinary'`);let n=t===`binary`,r=n?`int8`:`uint8`,i=n?Int8Array:Uint8Array,a=e.data,o=new i(a.length/8);for(let e=0;e0?1:0,r=Math.floor(e/8),i=e%8;o[r]|=t<<7-i,n&&i===0&&(o[r]-=128)}return new s(r,o,[e.dims[0],e.dims[1]/8])}},"./src/utils/video.js":(e,t,n)=>{n.r(t),n.d(t,{RawVideo:()=>o,RawVideoFrame:()=>a,load_video:()=>s});var r=n( +/*! ./image.js */ +`./src/utils/image.js`),i=n( +/*! ../env.js */ +`./src/env.js`);class a{constructor(e,t){this.image=e,this.timestamp=t}}class o{constructor(e,t){e.length>0&&e[0]instanceof r.RawImage&&(e=e.map((n,r)=>new a(n,(r+1)/(e.length+1)*t))),this.frames=e,this.duration=t}get width(){return this.frames[0].image.width}get height(){return this.frames[0].image.height}get fps(){return this.frames.length/this.duration}}async function s(e,{num_frames:t=null,fps:n=null}={}){if(!i.apis.IS_BROWSER_ENV)throw Error("`load_video` is currently only supported in browser environments.");if(t==null&&n==null)throw Error(`Either num_frames or fps must be provided.`);let s=[],c=document.createElement(`video`);if(c.crossOrigin=`anonymous`,c.muted=!0,typeof e==`string`)c.src=e;else if(e instanceof Blob)c.src=URL.createObjectURL(e);else if(e instanceof HTMLVideoElement)c.src=e.src;else throw Error(`Invalid URL or video element provided.`);if(await new Promise(e=>c.onloadedmetadata=e),c.seekable.start(0)===c.seekable.end(0)){let e=await fetch(c.src),t=await e.blob();c.src=URL.createObjectURL(t),await new Promise(e=>c.onloadedmetadata=e)}let l=c.duration,u,d;t==null?(d=1/n,u=Math.floor(l/d)):(u=t,d=t===1?0:l/(t-1));let f=[];for(let e=0;e{c.onseeked=e}),m.drawImage(c,0,0,p.width,p.height);let t=m.getImageData(0,0,p.width,p.height),n=new r.RawImage(t.data,p.width,p.height,4),i=new a(n,e);s.push(i)}return c.remove(),new o(s,l)}}},cf={};function lf(e){var t=cf[e];if(t!==void 0)return t.exports;var n=cf[e]={exports:{}};return sf[e](n,n.exports,lf),n.exports}(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t;lf.t=function(n,r){if(r&1&&(n=this(n)),r&8||typeof n==`object`&&n&&(r&4&&n.__esModule||r&16&&typeof n.then==`function`))return n;var i=Object.create(null);lf.r(i);var a={};t||=[null,e({}),e([]),e(e)];for(var o=r&2&&n;typeof o==`object`&&!~t.indexOf(o);o=e(o))Object.getOwnPropertyNames(o).forEach(e=>a[e]=()=>n[e]);return a.default=()=>n,lf.d(i,a),i}})(),lf.d=(e,t)=>{for(var n in t)lf.o(t,n)&&!lf.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},lf.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),lf.r=e=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(e,`__esModule`,{value:!0})};var $={};(()=>{lf.r($),lf.d($,{ASTFeatureExtractor:()=>d.ASTFeatureExtractor,ASTForAudioClassification:()=>n.ASTForAudioClassification,ASTModel:()=>n.ASTModel,ASTPreTrainedModel:()=>n.ASTPreTrainedModel,AlbertForMaskedLM:()=>n.AlbertForMaskedLM,AlbertForQuestionAnswering:()=>n.AlbertForQuestionAnswering,AlbertForSequenceClassification:()=>n.AlbertForSequenceClassification,AlbertModel:()=>n.AlbertModel,AlbertPreTrainedModel:()=>n.AlbertPreTrainedModel,AlbertTokenizer:()=>r.AlbertTokenizer,AudioClassificationPipeline:()=>t.AudioClassificationPipeline,AutoConfig:()=>i.AutoConfig,AutoFeatureExtractor:()=>f.AutoFeatureExtractor,AutoImageProcessor:()=>h.AutoImageProcessor,AutoModel:()=>n.AutoModel,AutoModelForAudioClassification:()=>n.AutoModelForAudioClassification,AutoModelForAudioFrameClassification:()=>n.AutoModelForAudioFrameClassification,AutoModelForAudioTextToText:()=>n.AutoModelForAudioTextToText,AutoModelForCTC:()=>n.AutoModelForCTC,AutoModelForCausalLM:()=>n.AutoModelForCausalLM,AutoModelForDepthEstimation:()=>n.AutoModelForDepthEstimation,AutoModelForDocumentQuestionAnswering:()=>n.AutoModelForDocumentQuestionAnswering,AutoModelForImageClassification:()=>n.AutoModelForImageClassification,AutoModelForImageFeatureExtraction:()=>n.AutoModelForImageFeatureExtraction,AutoModelForImageMatting:()=>n.AutoModelForImageMatting,AutoModelForImageSegmentation:()=>n.AutoModelForImageSegmentation,AutoModelForImageTextToText:()=>n.AutoModelForImageTextToText,AutoModelForImageToImage:()=>n.AutoModelForImageToImage,AutoModelForMaskGeneration:()=>n.AutoModelForMaskGeneration,AutoModelForMaskedLM:()=>n.AutoModelForMaskedLM,AutoModelForNormalEstimation:()=>n.AutoModelForNormalEstimation,AutoModelForObjectDetection:()=>n.AutoModelForObjectDetection,AutoModelForPoseEstimation:()=>n.AutoModelForPoseEstimation,AutoModelForQuestionAnswering:()=>n.AutoModelForQuestionAnswering,AutoModelForSemanticSegmentation:()=>n.AutoModelForSemanticSegmentation,AutoModelForSeq2SeqLM:()=>n.AutoModelForSeq2SeqLM,AutoModelForSequenceClassification:()=>n.AutoModelForSequenceClassification,AutoModelForSpeechSeq2Seq:()=>n.AutoModelForSpeechSeq2Seq,AutoModelForTextToSpectrogram:()=>n.AutoModelForTextToSpectrogram,AutoModelForTextToWaveform:()=>n.AutoModelForTextToWaveform,AutoModelForTokenClassification:()=>n.AutoModelForTokenClassification,AutoModelForUniversalSegmentation:()=>n.AutoModelForUniversalSegmentation,AutoModelForVision2Seq:()=>n.AutoModelForVision2Seq,AutoModelForXVector:()=>n.AutoModelForXVector,AutoModelForZeroShotObjectDetection:()=>n.AutoModelForZeroShotObjectDetection,AutoProcessor:()=>v.AutoProcessor,AutoTokenizer:()=>r.AutoTokenizer,AutomaticSpeechRecognitionPipeline:()=>t.AutomaticSpeechRecognitionPipeline,BackgroundRemovalPipeline:()=>t.BackgroundRemovalPipeline,BartForConditionalGeneration:()=>n.BartForConditionalGeneration,BartForSequenceClassification:()=>n.BartForSequenceClassification,BartModel:()=>n.BartModel,BartPretrainedModel:()=>n.BartPretrainedModel,BartTokenizer:()=>r.BartTokenizer,BaseModelOutput:()=>n.BaseModelOutput,BaseStreamer:()=>y.BaseStreamer,BeitFeatureExtractor:()=>m.BeitFeatureExtractor,BeitForImageClassification:()=>n.BeitForImageClassification,BeitModel:()=>n.BeitModel,BeitPreTrainedModel:()=>n.BeitPreTrainedModel,BertForMaskedLM:()=>n.BertForMaskedLM,BertForQuestionAnswering:()=>n.BertForQuestionAnswering,BertForSequenceClassification:()=>n.BertForSequenceClassification,BertForTokenClassification:()=>n.BertForTokenClassification,BertModel:()=>n.BertModel,BertPreTrainedModel:()=>n.BertPreTrainedModel,BertTokenizer:()=>r.BertTokenizer,BitImageProcessor:()=>m.BitImageProcessor,BlenderbotForConditionalGeneration:()=>n.BlenderbotForConditionalGeneration,BlenderbotModel:()=>n.BlenderbotModel,BlenderbotPreTrainedModel:()=>n.BlenderbotPreTrainedModel,BlenderbotSmallForConditionalGeneration:()=>n.BlenderbotSmallForConditionalGeneration,BlenderbotSmallModel:()=>n.BlenderbotSmallModel,BlenderbotSmallPreTrainedModel:()=>n.BlenderbotSmallPreTrainedModel,BlenderbotSmallTokenizer:()=>r.BlenderbotSmallTokenizer,BlenderbotTokenizer:()=>r.BlenderbotTokenizer,BloomForCausalLM:()=>n.BloomForCausalLM,BloomModel:()=>n.BloomModel,BloomPreTrainedModel:()=>n.BloomPreTrainedModel,BloomTokenizer:()=>r.BloomTokenizer,CLIPFeatureExtractor:()=>m.CLIPFeatureExtractor,CLIPImageProcessor:()=>m.CLIPImageProcessor,CLIPModel:()=>n.CLIPModel,CLIPPreTrainedModel:()=>n.CLIPPreTrainedModel,CLIPSegForImageSegmentation:()=>n.CLIPSegForImageSegmentation,CLIPSegModel:()=>n.CLIPSegModel,CLIPSegPreTrainedModel:()=>n.CLIPSegPreTrainedModel,CLIPTextModel:()=>n.CLIPTextModel,CLIPTextModelWithProjection:()=>n.CLIPTextModelWithProjection,CLIPTokenizer:()=>r.CLIPTokenizer,CLIPVisionModel:()=>n.CLIPVisionModel,CLIPVisionModelWithProjection:()=>n.CLIPVisionModelWithProjection,CamembertForMaskedLM:()=>n.CamembertForMaskedLM,CamembertForQuestionAnswering:()=>n.CamembertForQuestionAnswering,CamembertForSequenceClassification:()=>n.CamembertForSequenceClassification,CamembertForTokenClassification:()=>n.CamembertForTokenClassification,CamembertModel:()=>n.CamembertModel,CamembertPreTrainedModel:()=>n.CamembertPreTrainedModel,CamembertTokenizer:()=>r.CamembertTokenizer,CausalLMOutput:()=>n.CausalLMOutput,CausalLMOutputWithPast:()=>n.CausalLMOutputWithPast,ChineseCLIPFeatureExtractor:()=>m.ChineseCLIPFeatureExtractor,ChineseCLIPModel:()=>n.ChineseCLIPModel,ChineseCLIPPreTrainedModel:()=>n.ChineseCLIPPreTrainedModel,ClapAudioModelWithProjection:()=>n.ClapAudioModelWithProjection,ClapFeatureExtractor:()=>d.ClapFeatureExtractor,ClapModel:()=>n.ClapModel,ClapPreTrainedModel:()=>n.ClapPreTrainedModel,ClapTextModelWithProjection:()=>n.ClapTextModelWithProjection,ClassifierFreeGuidanceLogitsProcessor:()=>x.ClassifierFreeGuidanceLogitsProcessor,CodeGenForCausalLM:()=>n.CodeGenForCausalLM,CodeGenModel:()=>n.CodeGenModel,CodeGenPreTrainedModel:()=>n.CodeGenPreTrainedModel,CodeGenTokenizer:()=>r.CodeGenTokenizer,CodeLlamaTokenizer:()=>r.CodeLlamaTokenizer,CohereForCausalLM:()=>n.CohereForCausalLM,CohereModel:()=>n.CohereModel,CoherePreTrainedModel:()=>n.CoherePreTrainedModel,CohereTokenizer:()=>r.CohereTokenizer,ConvBertForMaskedLM:()=>n.ConvBertForMaskedLM,ConvBertForQuestionAnswering:()=>n.ConvBertForQuestionAnswering,ConvBertForSequenceClassification:()=>n.ConvBertForSequenceClassification,ConvBertForTokenClassification:()=>n.ConvBertForTokenClassification,ConvBertModel:()=>n.ConvBertModel,ConvBertPreTrainedModel:()=>n.ConvBertPreTrainedModel,ConvBertTokenizer:()=>r.ConvBertTokenizer,ConvNextFeatureExtractor:()=>m.ConvNextFeatureExtractor,ConvNextForImageClassification:()=>n.ConvNextForImageClassification,ConvNextImageProcessor:()=>m.ConvNextImageProcessor,ConvNextModel:()=>n.ConvNextModel,ConvNextPreTrainedModel:()=>n.ConvNextPreTrainedModel,ConvNextV2ForImageClassification:()=>n.ConvNextV2ForImageClassification,ConvNextV2Model:()=>n.ConvNextV2Model,ConvNextV2PreTrainedModel:()=>n.ConvNextV2PreTrainedModel,DFineForObjectDetection:()=>n.DFineForObjectDetection,DFineModel:()=>n.DFineModel,DFinePreTrainedModel:()=>n.DFinePreTrainedModel,DPTFeatureExtractor:()=>m.DPTFeatureExtractor,DPTForDepthEstimation:()=>n.DPTForDepthEstimation,DPTImageProcessor:()=>m.DPTImageProcessor,DPTModel:()=>n.DPTModel,DPTPreTrainedModel:()=>n.DPTPreTrainedModel,DacDecoderModel:()=>n.DacDecoderModel,DacDecoderOutput:()=>n.DacDecoderOutput,DacEncoderModel:()=>n.DacEncoderModel,DacEncoderOutput:()=>n.DacEncoderOutput,DacFeatureExtractor:()=>d.DacFeatureExtractor,DacModel:()=>n.DacModel,DacPreTrainedModel:()=>n.DacPreTrainedModel,DataTypeMap:()=>c.DataTypeMap,DebertaForMaskedLM:()=>n.DebertaForMaskedLM,DebertaForQuestionAnswering:()=>n.DebertaForQuestionAnswering,DebertaForSequenceClassification:()=>n.DebertaForSequenceClassification,DebertaForTokenClassification:()=>n.DebertaForTokenClassification,DebertaModel:()=>n.DebertaModel,DebertaPreTrainedModel:()=>n.DebertaPreTrainedModel,DebertaTokenizer:()=>r.DebertaTokenizer,DebertaV2ForMaskedLM:()=>n.DebertaV2ForMaskedLM,DebertaV2ForQuestionAnswering:()=>n.DebertaV2ForQuestionAnswering,DebertaV2ForSequenceClassification:()=>n.DebertaV2ForSequenceClassification,DebertaV2ForTokenClassification:()=>n.DebertaV2ForTokenClassification,DebertaV2Model:()=>n.DebertaV2Model,DebertaV2PreTrainedModel:()=>n.DebertaV2PreTrainedModel,DebertaV2Tokenizer:()=>r.DebertaV2Tokenizer,DecisionTransformerModel:()=>n.DecisionTransformerModel,DecisionTransformerPreTrainedModel:()=>n.DecisionTransformerPreTrainedModel,DeiTFeatureExtractor:()=>m.DeiTFeatureExtractor,DeiTForImageClassification:()=>n.DeiTForImageClassification,DeiTImageProcessor:()=>m.DeiTImageProcessor,DeiTModel:()=>n.DeiTModel,DeiTPreTrainedModel:()=>n.DeiTPreTrainedModel,DepthAnythingForDepthEstimation:()=>n.DepthAnythingForDepthEstimation,DepthAnythingPreTrainedModel:()=>n.DepthAnythingPreTrainedModel,DepthEstimationPipeline:()=>t.DepthEstimationPipeline,DepthProForDepthEstimation:()=>n.DepthProForDepthEstimation,DepthProPreTrainedModel:()=>n.DepthProPreTrainedModel,DetrFeatureExtractor:()=>m.DetrFeatureExtractor,DetrForObjectDetection:()=>n.DetrForObjectDetection,DetrForSegmentation:()=>n.DetrForSegmentation,DetrImageProcessor:()=>m.DetrImageProcessor,DetrModel:()=>n.DetrModel,DetrObjectDetectionOutput:()=>n.DetrObjectDetectionOutput,DetrPreTrainedModel:()=>n.DetrPreTrainedModel,DetrSegmentationOutput:()=>n.DetrSegmentationOutput,Dinov2ForImageClassification:()=>n.Dinov2ForImageClassification,Dinov2Model:()=>n.Dinov2Model,Dinov2PreTrainedModel:()=>n.Dinov2PreTrainedModel,Dinov2WithRegistersForImageClassification:()=>n.Dinov2WithRegistersForImageClassification,Dinov2WithRegistersModel:()=>n.Dinov2WithRegistersModel,Dinov2WithRegistersPreTrainedModel:()=>n.Dinov2WithRegistersPreTrainedModel,DistilBertForMaskedLM:()=>n.DistilBertForMaskedLM,DistilBertForQuestionAnswering:()=>n.DistilBertForQuestionAnswering,DistilBertForSequenceClassification:()=>n.DistilBertForSequenceClassification,DistilBertForTokenClassification:()=>n.DistilBertForTokenClassification,DistilBertModel:()=>n.DistilBertModel,DistilBertPreTrainedModel:()=>n.DistilBertPreTrainedModel,DistilBertTokenizer:()=>r.DistilBertTokenizer,DocumentQuestionAnsweringPipeline:()=>t.DocumentQuestionAnsweringPipeline,DonutFeatureExtractor:()=>m.DonutFeatureExtractor,DonutImageProcessor:()=>m.DonutImageProcessor,DonutSwinModel:()=>n.DonutSwinModel,DonutSwinPreTrainedModel:()=>n.DonutSwinPreTrainedModel,EfficientNetForImageClassification:()=>n.EfficientNetForImageClassification,EfficientNetImageProcessor:()=>m.EfficientNetImageProcessor,EfficientNetModel:()=>n.EfficientNetModel,EfficientNetPreTrainedModel:()=>n.EfficientNetPreTrainedModel,ElectraForMaskedLM:()=>n.ElectraForMaskedLM,ElectraForQuestionAnswering:()=>n.ElectraForQuestionAnswering,ElectraForSequenceClassification:()=>n.ElectraForSequenceClassification,ElectraForTokenClassification:()=>n.ElectraForTokenClassification,ElectraModel:()=>n.ElectraModel,ElectraPreTrainedModel:()=>n.ElectraPreTrainedModel,ElectraTokenizer:()=>r.ElectraTokenizer,EncodecFeatureExtractor:()=>d.EncodecFeatureExtractor,EosTokenCriteria:()=>b.EosTokenCriteria,EsmForMaskedLM:()=>n.EsmForMaskedLM,EsmForSequenceClassification:()=>n.EsmForSequenceClassification,EsmForTokenClassification:()=>n.EsmForTokenClassification,EsmModel:()=>n.EsmModel,EsmPreTrainedModel:()=>n.EsmPreTrainedModel,EsmTokenizer:()=>r.EsmTokenizer,ExaoneForCausalLM:()=>n.ExaoneForCausalLM,ExaoneModel:()=>n.ExaoneModel,ExaonePreTrainedModel:()=>n.ExaonePreTrainedModel,FFT:()=>l.FFT,FalconForCausalLM:()=>n.FalconForCausalLM,FalconModel:()=>n.FalconModel,FalconPreTrainedModel:()=>n.FalconPreTrainedModel,FalconTokenizer:()=>r.FalconTokenizer,FastViTForImageClassification:()=>n.FastViTForImageClassification,FastViTModel:()=>n.FastViTModel,FastViTPreTrainedModel:()=>n.FastViTPreTrainedModel,FeatureExtractionPipeline:()=>t.FeatureExtractionPipeline,FeatureExtractor:()=>u.FeatureExtractor,FillMaskPipeline:()=>t.FillMaskPipeline,Florence2ForConditionalGeneration:()=>n.Florence2ForConditionalGeneration,Florence2PreTrainedModel:()=>n.Florence2PreTrainedModel,Florence2Processor:()=>_.Florence2Processor,ForcedBOSTokenLogitsProcessor:()=>x.ForcedBOSTokenLogitsProcessor,ForcedEOSTokenLogitsProcessor:()=>x.ForcedEOSTokenLogitsProcessor,GLPNFeatureExtractor:()=>m.GLPNFeatureExtractor,GLPNForDepthEstimation:()=>n.GLPNForDepthEstimation,GLPNModel:()=>n.GLPNModel,GLPNPreTrainedModel:()=>n.GLPNPreTrainedModel,GPT2LMHeadModel:()=>n.GPT2LMHeadModel,GPT2Model:()=>n.GPT2Model,GPT2PreTrainedModel:()=>n.GPT2PreTrainedModel,GPT2Tokenizer:()=>r.GPT2Tokenizer,GPTBigCodeForCausalLM:()=>n.GPTBigCodeForCausalLM,GPTBigCodeModel:()=>n.GPTBigCodeModel,GPTBigCodePreTrainedModel:()=>n.GPTBigCodePreTrainedModel,GPTJForCausalLM:()=>n.GPTJForCausalLM,GPTJModel:()=>n.GPTJModel,GPTJPreTrainedModel:()=>n.GPTJPreTrainedModel,GPTNeoForCausalLM:()=>n.GPTNeoForCausalLM,GPTNeoModel:()=>n.GPTNeoModel,GPTNeoPreTrainedModel:()=>n.GPTNeoPreTrainedModel,GPTNeoXForCausalLM:()=>n.GPTNeoXForCausalLM,GPTNeoXModel:()=>n.GPTNeoXModel,GPTNeoXPreTrainedModel:()=>n.GPTNeoXPreTrainedModel,GPTNeoXTokenizer:()=>r.GPTNeoXTokenizer,Gemma2ForCausalLM:()=>n.Gemma2ForCausalLM,Gemma2Model:()=>n.Gemma2Model,Gemma2PreTrainedModel:()=>n.Gemma2PreTrainedModel,Gemma3ForCausalLM:()=>n.Gemma3ForCausalLM,Gemma3Model:()=>n.Gemma3Model,Gemma3PreTrainedModel:()=>n.Gemma3PreTrainedModel,Gemma3nAudioFeatureExtractor:()=>d.Gemma3nAudioFeatureExtractor,Gemma3nForConditionalGeneration:()=>n.Gemma3nForConditionalGeneration,Gemma3nPreTrainedModel:()=>n.Gemma3nPreTrainedModel,Gemma3nProcessor:()=>_.Gemma3nProcessor,GemmaForCausalLM:()=>n.GemmaForCausalLM,GemmaModel:()=>n.GemmaModel,GemmaPreTrainedModel:()=>n.GemmaPreTrainedModel,GemmaTokenizer:()=>r.GemmaTokenizer,GlmForCausalLM:()=>n.GlmForCausalLM,GlmModel:()=>n.GlmModel,GlmPreTrainedModel:()=>n.GlmPreTrainedModel,GraniteForCausalLM:()=>n.GraniteForCausalLM,GraniteModel:()=>n.GraniteModel,GranitePreTrainedModel:()=>n.GranitePreTrainedModel,Grok1Tokenizer:()=>r.Grok1Tokenizer,GroundingDinoForObjectDetection:()=>n.GroundingDinoForObjectDetection,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,GroundingDinoPreTrainedModel:()=>n.GroundingDinoPreTrainedModel,GroundingDinoProcessor:()=>_.GroundingDinoProcessor,GroupViTModel:()=>n.GroupViTModel,GroupViTPreTrainedModel:()=>n.GroupViTPreTrainedModel,HeliumForCausalLM:()=>n.HeliumForCausalLM,HeliumModel:()=>n.HeliumModel,HeliumPreTrainedModel:()=>n.HeliumPreTrainedModel,HerbertTokenizer:()=>r.HerbertTokenizer,HieraForImageClassification:()=>n.HieraForImageClassification,HieraModel:()=>n.HieraModel,HieraPreTrainedModel:()=>n.HieraPreTrainedModel,HubertForCTC:()=>n.HubertForCTC,HubertForSequenceClassification:()=>n.HubertForSequenceClassification,HubertModel:()=>n.HubertModel,HubertPreTrainedModel:()=>n.HubertPreTrainedModel,IJepaForImageClassification:()=>n.IJepaForImageClassification,IJepaModel:()=>n.IJepaModel,IJepaPreTrainedModel:()=>n.IJepaPreTrainedModel,Idefics3ForConditionalGeneration:()=>n.Idefics3ForConditionalGeneration,Idefics3ImageProcessor:()=>m.Idefics3ImageProcessor,Idefics3PreTrainedModel:()=>n.Idefics3PreTrainedModel,Idefics3Processor:()=>_.Idefics3Processor,ImageClassificationPipeline:()=>t.ImageClassificationPipeline,ImageFeatureExtractionPipeline:()=>t.ImageFeatureExtractionPipeline,ImageFeatureExtractor:()=>d.ImageFeatureExtractor,ImageMattingOutput:()=>n.ImageMattingOutput,ImageProcessor:()=>p.ImageProcessor,ImageSegmentationPipeline:()=>t.ImageSegmentationPipeline,ImageToImagePipeline:()=>t.ImageToImagePipeline,ImageToTextPipeline:()=>t.ImageToTextPipeline,InterruptableStoppingCriteria:()=>b.InterruptableStoppingCriteria,JAISLMHeadModel:()=>n.JAISLMHeadModel,JAISModel:()=>n.JAISModel,JAISPreTrainedModel:()=>n.JAISPreTrainedModel,JinaCLIPImageProcessor:()=>m.JinaCLIPImageProcessor,JinaCLIPModel:()=>n.JinaCLIPModel,JinaCLIPPreTrainedModel:()=>n.JinaCLIPPreTrainedModel,JinaCLIPProcessor:()=>_.JinaCLIPProcessor,JinaCLIPTextModel:()=>n.JinaCLIPTextModel,JinaCLIPVisionModel:()=>n.JinaCLIPVisionModel,LiteWhisperForConditionalGeneration:()=>n.LiteWhisperForConditionalGeneration,LlamaForCausalLM:()=>n.LlamaForCausalLM,LlamaModel:()=>n.LlamaModel,LlamaPreTrainedModel:()=>n.LlamaPreTrainedModel,LlamaTokenizer:()=>r.LlamaTokenizer,LlavaForConditionalGeneration:()=>n.LlavaForConditionalGeneration,LlavaOnevisionForConditionalGeneration:()=>n.LlavaOnevisionForConditionalGeneration,LlavaOnevisionImageProcessor:()=>m.LlavaOnevisionImageProcessor,LlavaPreTrainedModel:()=>n.LlavaPreTrainedModel,LlavaProcessor:()=>_.LlavaProcessor,LlavaQwen2ForCausalLM:()=>n.LlavaQwen2ForCausalLM,LogitsProcessor:()=>x.LogitsProcessor,LogitsProcessorList:()=>x.LogitsProcessorList,LogitsWarper:()=>x.LogitsWarper,LongT5ForConditionalGeneration:()=>n.LongT5ForConditionalGeneration,LongT5Model:()=>n.LongT5Model,LongT5PreTrainedModel:()=>n.LongT5PreTrainedModel,M2M100ForConditionalGeneration:()=>n.M2M100ForConditionalGeneration,M2M100Model:()=>n.M2M100Model,M2M100PreTrainedModel:()=>n.M2M100PreTrainedModel,M2M100Tokenizer:()=>r.M2M100Tokenizer,MBart50Tokenizer:()=>r.MBart50Tokenizer,MBartForCausalLM:()=>n.MBartForCausalLM,MBartForConditionalGeneration:()=>n.MBartForConditionalGeneration,MBartForSequenceClassification:()=>n.MBartForSequenceClassification,MBartModel:()=>n.MBartModel,MBartPreTrainedModel:()=>n.MBartPreTrainedModel,MBartTokenizer:()=>r.MBartTokenizer,MPNetForMaskedLM:()=>n.MPNetForMaskedLM,MPNetForQuestionAnswering:()=>n.MPNetForQuestionAnswering,MPNetForSequenceClassification:()=>n.MPNetForSequenceClassification,MPNetForTokenClassification:()=>n.MPNetForTokenClassification,MPNetModel:()=>n.MPNetModel,MPNetPreTrainedModel:()=>n.MPNetPreTrainedModel,MPNetTokenizer:()=>r.MPNetTokenizer,MT5ForConditionalGeneration:()=>n.MT5ForConditionalGeneration,MT5Model:()=>n.MT5Model,MT5PreTrainedModel:()=>n.MT5PreTrainedModel,MarianMTModel:()=>n.MarianMTModel,MarianModel:()=>n.MarianModel,MarianPreTrainedModel:()=>n.MarianPreTrainedModel,MarianTokenizer:()=>r.MarianTokenizer,Mask2FormerImageProcessor:()=>m.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>m.MaskFormerFeatureExtractor,MaskFormerForInstanceSegmentation:()=>n.MaskFormerForInstanceSegmentation,MaskFormerImageProcessor:()=>m.MaskFormerImageProcessor,MaskFormerModel:()=>n.MaskFormerModel,MaskFormerPreTrainedModel:()=>n.MaskFormerPreTrainedModel,MaskedLMOutput:()=>n.MaskedLMOutput,MaxLengthCriteria:()=>b.MaxLengthCriteria,Metric3DForDepthEstimation:()=>n.Metric3DForDepthEstimation,Metric3DPreTrainedModel:()=>n.Metric3DPreTrainedModel,Metric3Dv2ForDepthEstimation:()=>n.Metric3Dv2ForDepthEstimation,Metric3Dv2PreTrainedModel:()=>n.Metric3Dv2PreTrainedModel,MgpstrForSceneTextRecognition:()=>n.MgpstrForSceneTextRecognition,MgpstrModelOutput:()=>n.MgpstrModelOutput,MgpstrPreTrainedModel:()=>n.MgpstrPreTrainedModel,MgpstrProcessor:()=>_.MgpstrProcessor,MgpstrTokenizer:()=>r.MgpstrTokenizer,MimiDecoderModel:()=>n.MimiDecoderModel,MimiDecoderOutput:()=>n.MimiDecoderOutput,MimiEncoderModel:()=>n.MimiEncoderModel,MimiEncoderOutput:()=>n.MimiEncoderOutput,MimiModel:()=>n.MimiModel,MimiPreTrainedModel:()=>n.MimiPreTrainedModel,MinLengthLogitsProcessor:()=>x.MinLengthLogitsProcessor,MinNewTokensLengthLogitsProcessor:()=>x.MinNewTokensLengthLogitsProcessor,MistralForCausalLM:()=>n.MistralForCausalLM,MistralModel:()=>n.MistralModel,MistralPreTrainedModel:()=>n.MistralPreTrainedModel,MobileBertForMaskedLM:()=>n.MobileBertForMaskedLM,MobileBertForQuestionAnswering:()=>n.MobileBertForQuestionAnswering,MobileBertForSequenceClassification:()=>n.MobileBertForSequenceClassification,MobileBertModel:()=>n.MobileBertModel,MobileBertPreTrainedModel:()=>n.MobileBertPreTrainedModel,MobileBertTokenizer:()=>r.MobileBertTokenizer,MobileLLMForCausalLM:()=>n.MobileLLMForCausalLM,MobileLLMModel:()=>n.MobileLLMModel,MobileLLMPreTrainedModel:()=>n.MobileLLMPreTrainedModel,MobileNetV1FeatureExtractor:()=>m.MobileNetV1FeatureExtractor,MobileNetV1ForImageClassification:()=>n.MobileNetV1ForImageClassification,MobileNetV1ForSemanticSegmentation:()=>n.MobileNetV1ForSemanticSegmentation,MobileNetV1ImageProcessor:()=>m.MobileNetV1ImageProcessor,MobileNetV1Model:()=>n.MobileNetV1Model,MobileNetV1PreTrainedModel:()=>n.MobileNetV1PreTrainedModel,MobileNetV2FeatureExtractor:()=>m.MobileNetV2FeatureExtractor,MobileNetV2ForImageClassification:()=>n.MobileNetV2ForImageClassification,MobileNetV2ForSemanticSegmentation:()=>n.MobileNetV2ForSemanticSegmentation,MobileNetV2ImageProcessor:()=>m.MobileNetV2ImageProcessor,MobileNetV2Model:()=>n.MobileNetV2Model,MobileNetV2PreTrainedModel:()=>n.MobileNetV2PreTrainedModel,MobileNetV3FeatureExtractor:()=>m.MobileNetV3FeatureExtractor,MobileNetV3ForImageClassification:()=>n.MobileNetV3ForImageClassification,MobileNetV3ForSemanticSegmentation:()=>n.MobileNetV3ForSemanticSegmentation,MobileNetV3ImageProcessor:()=>m.MobileNetV3ImageProcessor,MobileNetV3Model:()=>n.MobileNetV3Model,MobileNetV3PreTrainedModel:()=>n.MobileNetV3PreTrainedModel,MobileNetV4FeatureExtractor:()=>m.MobileNetV4FeatureExtractor,MobileNetV4ForImageClassification:()=>n.MobileNetV4ForImageClassification,MobileNetV4ForSemanticSegmentation:()=>n.MobileNetV4ForSemanticSegmentation,MobileNetV4ImageProcessor:()=>m.MobileNetV4ImageProcessor,MobileNetV4Model:()=>n.MobileNetV4Model,MobileNetV4PreTrainedModel:()=>n.MobileNetV4PreTrainedModel,MobileViTFeatureExtractor:()=>m.MobileViTFeatureExtractor,MobileViTForImageClassification:()=>n.MobileViTForImageClassification,MobileViTImageProcessor:()=>m.MobileViTImageProcessor,MobileViTModel:()=>n.MobileViTModel,MobileViTPreTrainedModel:()=>n.MobileViTPreTrainedModel,MobileViTV2ForImageClassification:()=>n.MobileViTV2ForImageClassification,MobileViTV2Model:()=>n.MobileViTV2Model,MobileViTV2PreTrainedModel:()=>n.MobileViTV2PreTrainedModel,ModelOutput:()=>n.ModelOutput,ModernBertForMaskedLM:()=>n.ModernBertForMaskedLM,ModernBertForSequenceClassification:()=>n.ModernBertForSequenceClassification,ModernBertForTokenClassification:()=>n.ModernBertForTokenClassification,ModernBertModel:()=>n.ModernBertModel,ModernBertPreTrainedModel:()=>n.ModernBertPreTrainedModel,Moondream1ForConditionalGeneration:()=>n.Moondream1ForConditionalGeneration,MoonshineFeatureExtractor:()=>d.MoonshineFeatureExtractor,MoonshineForConditionalGeneration:()=>n.MoonshineForConditionalGeneration,MoonshineModel:()=>n.MoonshineModel,MoonshinePreTrainedModel:()=>n.MoonshinePreTrainedModel,MoonshineProcessor:()=>_.MoonshineProcessor,MptForCausalLM:()=>n.MptForCausalLM,MptModel:()=>n.MptModel,MptPreTrainedModel:()=>n.MptPreTrainedModel,MultiModalityCausalLM:()=>n.MultiModalityCausalLM,MultiModalityPreTrainedModel:()=>n.MultiModalityPreTrainedModel,MusicgenForCausalLM:()=>n.MusicgenForCausalLM,MusicgenForConditionalGeneration:()=>n.MusicgenForConditionalGeneration,MusicgenModel:()=>n.MusicgenModel,MusicgenPreTrainedModel:()=>n.MusicgenPreTrainedModel,NeoBertForMaskedLM:()=>n.NeoBertForMaskedLM,NeoBertForQuestionAnswering:()=>n.NeoBertForQuestionAnswering,NeoBertForSequenceClassification:()=>n.NeoBertForSequenceClassification,NeoBertForTokenClassification:()=>n.NeoBertForTokenClassification,NeoBertModel:()=>n.NeoBertModel,NeoBertPreTrainedModel:()=>n.NeoBertPreTrainedModel,NllbTokenizer:()=>r.NllbTokenizer,NoBadWordsLogitsProcessor:()=>x.NoBadWordsLogitsProcessor,NoRepeatNGramLogitsProcessor:()=>x.NoRepeatNGramLogitsProcessor,NomicBertModel:()=>n.NomicBertModel,NomicBertPreTrainedModel:()=>n.NomicBertPreTrainedModel,NougatImageProcessor:()=>m.NougatImageProcessor,NougatTokenizer:()=>r.NougatTokenizer,OPTForCausalLM:()=>n.OPTForCausalLM,OPTModel:()=>n.OPTModel,OPTPreTrainedModel:()=>n.OPTPreTrainedModel,ObjectDetectionPipeline:()=>t.ObjectDetectionPipeline,Olmo2ForCausalLM:()=>n.Olmo2ForCausalLM,Olmo2Model:()=>n.Olmo2Model,Olmo2PreTrainedModel:()=>n.Olmo2PreTrainedModel,OlmoForCausalLM:()=>n.OlmoForCausalLM,OlmoModel:()=>n.OlmoModel,OlmoPreTrainedModel:()=>n.OlmoPreTrainedModel,OpenELMForCausalLM:()=>n.OpenELMForCausalLM,OpenELMModel:()=>n.OpenELMModel,OpenELMPreTrainedModel:()=>n.OpenELMPreTrainedModel,OwlViTFeatureExtractor:()=>m.OwlViTFeatureExtractor,OwlViTForObjectDetection:()=>n.OwlViTForObjectDetection,OwlViTImageProcessor:()=>m.OwlViTImageProcessor,OwlViTModel:()=>n.OwlViTModel,OwlViTPreTrainedModel:()=>n.OwlViTPreTrainedModel,OwlViTProcessor:()=>_.OwlViTProcessor,Owlv2ForObjectDetection:()=>n.Owlv2ForObjectDetection,Owlv2ImageProcessor:()=>m.Owlv2ImageProcessor,Owlv2Model:()=>n.Owlv2Model,Owlv2PreTrainedModel:()=>n.Owlv2PreTrainedModel,PaliGemmaForConditionalGeneration:()=>n.PaliGemmaForConditionalGeneration,PaliGemmaPreTrainedModel:()=>n.PaliGemmaPreTrainedModel,PaliGemmaProcessor:()=>_.PaliGemmaProcessor,PatchTSMixerForPrediction:()=>n.PatchTSMixerForPrediction,PatchTSMixerModel:()=>n.PatchTSMixerModel,PatchTSMixerPreTrainedModel:()=>n.PatchTSMixerPreTrainedModel,PatchTSTForPrediction:()=>n.PatchTSTForPrediction,PatchTSTModel:()=>n.PatchTSTModel,PatchTSTPreTrainedModel:()=>n.PatchTSTPreTrainedModel,Phi3ForCausalLM:()=>n.Phi3ForCausalLM,Phi3Model:()=>n.Phi3Model,Phi3PreTrainedModel:()=>n.Phi3PreTrainedModel,Phi3VForCausalLM:()=>n.Phi3VForCausalLM,Phi3VImageProcessor:()=>m.Phi3VImageProcessor,Phi3VPreTrainedModel:()=>n.Phi3VPreTrainedModel,Phi3VProcessor:()=>_.Phi3VProcessor,PhiForCausalLM:()=>n.PhiForCausalLM,PhiModel:()=>n.PhiModel,PhiPreTrainedModel:()=>n.PhiPreTrainedModel,Pipeline:()=>t.Pipeline,PreTrainedModel:()=>n.PreTrainedModel,PreTrainedTokenizer:()=>r.PreTrainedTokenizer,PretrainedConfig:()=>i.PretrainedConfig,PretrainedMixin:()=>n.PretrainedMixin,Processor:()=>g.Processor,PvtForImageClassification:()=>n.PvtForImageClassification,PvtImageProcessor:()=>m.PvtImageProcessor,PvtModel:()=>n.PvtModel,PvtPreTrainedModel:()=>n.PvtPreTrainedModel,PyAnnoteFeatureExtractor:()=>d.PyAnnoteFeatureExtractor,PyAnnoteForAudioFrameClassification:()=>n.PyAnnoteForAudioFrameClassification,PyAnnoteModel:()=>n.PyAnnoteModel,PyAnnotePreTrainedModel:()=>n.PyAnnotePreTrainedModel,PyAnnoteProcessor:()=>_.PyAnnoteProcessor,QuestionAnsweringModelOutput:()=>n.QuestionAnsweringModelOutput,QuestionAnsweringPipeline:()=>t.QuestionAnsweringPipeline,Qwen2ForCausalLM:()=>n.Qwen2ForCausalLM,Qwen2Model:()=>n.Qwen2Model,Qwen2PreTrainedModel:()=>n.Qwen2PreTrainedModel,Qwen2Tokenizer:()=>r.Qwen2Tokenizer,Qwen2VLForConditionalGeneration:()=>n.Qwen2VLForConditionalGeneration,Qwen2VLImageProcessor:()=>m.Qwen2VLImageProcessor,Qwen2VLPreTrainedModel:()=>n.Qwen2VLPreTrainedModel,Qwen2VLProcessor:()=>_.Qwen2VLProcessor,Qwen3ForCausalLM:()=>n.Qwen3ForCausalLM,Qwen3Model:()=>n.Qwen3Model,Qwen3PreTrainedModel:()=>n.Qwen3PreTrainedModel,RFDetrForObjectDetection:()=>n.RFDetrForObjectDetection,RFDetrModel:()=>n.RFDetrModel,RFDetrObjectDetectionOutput:()=>n.RFDetrObjectDetectionOutput,RFDetrPreTrainedModel:()=>n.RFDetrPreTrainedModel,RTDetrForObjectDetection:()=>n.RTDetrForObjectDetection,RTDetrImageProcessor:()=>m.RTDetrImageProcessor,RTDetrModel:()=>n.RTDetrModel,RTDetrObjectDetectionOutput:()=>n.RTDetrObjectDetectionOutput,RTDetrPreTrainedModel:()=>n.RTDetrPreTrainedModel,RTDetrV2ForObjectDetection:()=>n.RTDetrV2ForObjectDetection,RTDetrV2Model:()=>n.RTDetrV2Model,RTDetrV2ObjectDetectionOutput:()=>n.RTDetrV2ObjectDetectionOutput,RTDetrV2PreTrainedModel:()=>n.RTDetrV2PreTrainedModel,RawAudio:()=>a.RawAudio,RawImage:()=>o.RawImage,RawVideo:()=>s.RawVideo,RawVideoFrame:()=>s.RawVideoFrame,RepetitionPenaltyLogitsProcessor:()=>x.RepetitionPenaltyLogitsProcessor,ResNetForImageClassification:()=>n.ResNetForImageClassification,ResNetModel:()=>n.ResNetModel,ResNetPreTrainedModel:()=>n.ResNetPreTrainedModel,RoFormerForMaskedLM:()=>n.RoFormerForMaskedLM,RoFormerForQuestionAnswering:()=>n.RoFormerForQuestionAnswering,RoFormerForSequenceClassification:()=>n.RoFormerForSequenceClassification,RoFormerForTokenClassification:()=>n.RoFormerForTokenClassification,RoFormerModel:()=>n.RoFormerModel,RoFormerPreTrainedModel:()=>n.RoFormerPreTrainedModel,RoFormerTokenizer:()=>r.RoFormerTokenizer,RobertaForMaskedLM:()=>n.RobertaForMaskedLM,RobertaForQuestionAnswering:()=>n.RobertaForQuestionAnswering,RobertaForSequenceClassification:()=>n.RobertaForSequenceClassification,RobertaForTokenClassification:()=>n.RobertaForTokenClassification,RobertaModel:()=>n.RobertaModel,RobertaPreTrainedModel:()=>n.RobertaPreTrainedModel,RobertaTokenizer:()=>r.RobertaTokenizer,SamImageProcessor:()=>m.SamImageProcessor,SamImageSegmentationOutput:()=>n.SamImageSegmentationOutput,SamModel:()=>n.SamModel,SamPreTrainedModel:()=>n.SamPreTrainedModel,SamProcessor:()=>_.SamProcessor,SapiensForDepthEstimation:()=>n.SapiensForDepthEstimation,SapiensForNormalEstimation:()=>n.SapiensForNormalEstimation,SapiensForSemanticSegmentation:()=>n.SapiensForSemanticSegmentation,SapiensPreTrainedModel:()=>n.SapiensPreTrainedModel,SeamlessM4TFeatureExtractor:()=>d.SeamlessM4TFeatureExtractor,SegformerFeatureExtractor:()=>m.SegformerFeatureExtractor,SegformerForImageClassification:()=>n.SegformerForImageClassification,SegformerForSemanticSegmentation:()=>n.SegformerForSemanticSegmentation,SegformerImageProcessor:()=>m.SegformerImageProcessor,SegformerModel:()=>n.SegformerModel,SegformerPreTrainedModel:()=>n.SegformerPreTrainedModel,Seq2SeqLMOutput:()=>n.Seq2SeqLMOutput,SequenceClassifierOutput:()=>n.SequenceClassifierOutput,SiglipImageProcessor:()=>m.SiglipImageProcessor,SiglipModel:()=>n.SiglipModel,SiglipPreTrainedModel:()=>n.SiglipPreTrainedModel,SiglipTextModel:()=>n.SiglipTextModel,SiglipTokenizer:()=>r.SiglipTokenizer,SiglipVisionModel:()=>n.SiglipVisionModel,SmolVLMForConditionalGeneration:()=>n.SmolVLMForConditionalGeneration,SmolVLMImageProcessor:()=>m.SmolVLMImageProcessor,SmolVLMProcessor:()=>_.SmolVLMProcessor,SnacDecoderModel:()=>n.SnacDecoderModel,SnacEncoderModel:()=>n.SnacEncoderModel,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SnacModel:()=>n.SnacModel,SnacPreTrainedModel:()=>n.SnacPreTrainedModel,SpeechT5FeatureExtractor:()=>d.SpeechT5FeatureExtractor,SpeechT5ForSpeechToText:()=>n.SpeechT5ForSpeechToText,SpeechT5ForTextToSpeech:()=>n.SpeechT5ForTextToSpeech,SpeechT5HifiGan:()=>n.SpeechT5HifiGan,SpeechT5Model:()=>n.SpeechT5Model,SpeechT5PreTrainedModel:()=>n.SpeechT5PreTrainedModel,SpeechT5Processor:()=>_.SpeechT5Processor,SpeechT5Tokenizer:()=>r.SpeechT5Tokenizer,SqueezeBertForMaskedLM:()=>n.SqueezeBertForMaskedLM,SqueezeBertForQuestionAnswering:()=>n.SqueezeBertForQuestionAnswering,SqueezeBertForSequenceClassification:()=>n.SqueezeBertForSequenceClassification,SqueezeBertModel:()=>n.SqueezeBertModel,SqueezeBertPreTrainedModel:()=>n.SqueezeBertPreTrainedModel,SqueezeBertTokenizer:()=>r.SqueezeBertTokenizer,StableLmForCausalLM:()=>n.StableLmForCausalLM,StableLmModel:()=>n.StableLmModel,StableLmPreTrainedModel:()=>n.StableLmPreTrainedModel,Starcoder2ForCausalLM:()=>n.Starcoder2ForCausalLM,Starcoder2Model:()=>n.Starcoder2Model,Starcoder2PreTrainedModel:()=>n.Starcoder2PreTrainedModel,StoppingCriteria:()=>b.StoppingCriteria,StoppingCriteriaList:()=>b.StoppingCriteriaList,StyleTextToSpeech2Model:()=>n.StyleTextToSpeech2Model,StyleTextToSpeech2PreTrainedModel:()=>n.StyleTextToSpeech2PreTrainedModel,SummarizationPipeline:()=>t.SummarizationPipeline,SuppressTokensAtBeginLogitsProcessor:()=>x.SuppressTokensAtBeginLogitsProcessor,Swin2SRForImageSuperResolution:()=>n.Swin2SRForImageSuperResolution,Swin2SRImageProcessor:()=>m.Swin2SRImageProcessor,Swin2SRModel:()=>n.Swin2SRModel,Swin2SRPreTrainedModel:()=>n.Swin2SRPreTrainedModel,SwinForImageClassification:()=>n.SwinForImageClassification,SwinForSemanticSegmentation:()=>n.SwinForSemanticSegmentation,SwinModel:()=>n.SwinModel,SwinPreTrainedModel:()=>n.SwinPreTrainedModel,T5ForConditionalGeneration:()=>n.T5ForConditionalGeneration,T5Model:()=>n.T5Model,T5PreTrainedModel:()=>n.T5PreTrainedModel,T5Tokenizer:()=>r.T5Tokenizer,TableTransformerForObjectDetection:()=>n.TableTransformerForObjectDetection,TableTransformerModel:()=>n.TableTransformerModel,TableTransformerObjectDetectionOutput:()=>n.TableTransformerObjectDetectionOutput,TableTransformerPreTrainedModel:()=>n.TableTransformerPreTrainedModel,TemperatureLogitsWarper:()=>x.TemperatureLogitsWarper,Tensor:()=>c.Tensor,Text2TextGenerationPipeline:()=>t.Text2TextGenerationPipeline,TextClassificationPipeline:()=>t.TextClassificationPipeline,TextGenerationPipeline:()=>t.TextGenerationPipeline,TextStreamer:()=>y.TextStreamer,TextToAudioPipeline:()=>t.TextToAudioPipeline,TokenClassificationPipeline:()=>t.TokenClassificationPipeline,TokenClassifierOutput:()=>n.TokenClassifierOutput,TokenizerModel:()=>r.TokenizerModel,TopKLogitsWarper:()=>x.TopKLogitsWarper,TopPLogitsWarper:()=>x.TopPLogitsWarper,TrOCRForCausalLM:()=>n.TrOCRForCausalLM,TrOCRPreTrainedModel:()=>n.TrOCRPreTrainedModel,TranslationPipeline:()=>t.TranslationPipeline,UltravoxModel:()=>n.UltravoxModel,UltravoxPreTrainedModel:()=>n.UltravoxPreTrainedModel,UltravoxProcessor:()=>_.UltravoxProcessor,UniSpeechForCTC:()=>n.UniSpeechForCTC,UniSpeechForSequenceClassification:()=>n.UniSpeechForSequenceClassification,UniSpeechModel:()=>n.UniSpeechModel,UniSpeechPreTrainedModel:()=>n.UniSpeechPreTrainedModel,UniSpeechSatForAudioFrameClassification:()=>n.UniSpeechSatForAudioFrameClassification,UniSpeechSatForCTC:()=>n.UniSpeechSatForCTC,UniSpeechSatForSequenceClassification:()=>n.UniSpeechSatForSequenceClassification,UniSpeechSatModel:()=>n.UniSpeechSatModel,UniSpeechSatPreTrainedModel:()=>n.UniSpeechSatPreTrainedModel,VLChatProcessor:()=>_.VLChatProcessor,VLMImageProcessor:()=>m.VLMImageProcessor,ViTFeatureExtractor:()=>m.ViTFeatureExtractor,ViTForImageClassification:()=>n.ViTForImageClassification,ViTImageProcessor:()=>m.ViTImageProcessor,ViTMAEModel:()=>n.ViTMAEModel,ViTMAEPreTrainedModel:()=>n.ViTMAEPreTrainedModel,ViTMSNForImageClassification:()=>n.ViTMSNForImageClassification,ViTMSNModel:()=>n.ViTMSNModel,ViTMSNPreTrainedModel:()=>n.ViTMSNPreTrainedModel,ViTModel:()=>n.ViTModel,ViTPreTrainedModel:()=>n.ViTPreTrainedModel,VisionEncoderDecoderModel:()=>n.VisionEncoderDecoderModel,VitMatteForImageMatting:()=>n.VitMatteForImageMatting,VitMatteImageProcessor:()=>m.VitMatteImageProcessor,VitMattePreTrainedModel:()=>n.VitMattePreTrainedModel,VitPoseForPoseEstimation:()=>n.VitPoseForPoseEstimation,VitPoseImageProcessor:()=>m.VitPoseImageProcessor,VitPosePreTrainedModel:()=>n.VitPosePreTrainedModel,VitsModel:()=>n.VitsModel,VitsModelOutput:()=>n.VitsModelOutput,VitsPreTrainedModel:()=>n.VitsPreTrainedModel,VitsTokenizer:()=>r.VitsTokenizer,Wav2Vec2BertForCTC:()=>n.Wav2Vec2BertForCTC,Wav2Vec2BertForSequenceClassification:()=>n.Wav2Vec2BertForSequenceClassification,Wav2Vec2BertModel:()=>n.Wav2Vec2BertModel,Wav2Vec2BertPreTrainedModel:()=>n.Wav2Vec2BertPreTrainedModel,Wav2Vec2CTCTokenizer:()=>r.Wav2Vec2CTCTokenizer,Wav2Vec2FeatureExtractor:()=>d.Wav2Vec2FeatureExtractor,Wav2Vec2ForAudioFrameClassification:()=>n.Wav2Vec2ForAudioFrameClassification,Wav2Vec2ForCTC:()=>n.Wav2Vec2ForCTC,Wav2Vec2ForSequenceClassification:()=>n.Wav2Vec2ForSequenceClassification,Wav2Vec2Model:()=>n.Wav2Vec2Model,Wav2Vec2PreTrainedModel:()=>n.Wav2Vec2PreTrainedModel,Wav2Vec2Processor:()=>_.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>_.Wav2Vec2ProcessorWithLM,WavLMForAudioFrameClassification:()=>n.WavLMForAudioFrameClassification,WavLMForCTC:()=>n.WavLMForCTC,WavLMForSequenceClassification:()=>n.WavLMForSequenceClassification,WavLMForXVector:()=>n.WavLMForXVector,WavLMModel:()=>n.WavLMModel,WavLMPreTrainedModel:()=>n.WavLMPreTrainedModel,WeSpeakerFeatureExtractor:()=>d.WeSpeakerFeatureExtractor,WeSpeakerResNetModel:()=>n.WeSpeakerResNetModel,WeSpeakerResNetPreTrainedModel:()=>n.WeSpeakerResNetPreTrainedModel,WhisperFeatureExtractor:()=>d.WhisperFeatureExtractor,WhisperForConditionalGeneration:()=>n.WhisperForConditionalGeneration,WhisperModel:()=>n.WhisperModel,WhisperPreTrainedModel:()=>n.WhisperPreTrainedModel,WhisperProcessor:()=>_.WhisperProcessor,WhisperTextStreamer:()=>y.WhisperTextStreamer,WhisperTimeStampLogitsProcessor:()=>x.WhisperTimeStampLogitsProcessor,WhisperTokenizer:()=>r.WhisperTokenizer,XLMForQuestionAnswering:()=>n.XLMForQuestionAnswering,XLMForSequenceClassification:()=>n.XLMForSequenceClassification,XLMForTokenClassification:()=>n.XLMForTokenClassification,XLMModel:()=>n.XLMModel,XLMPreTrainedModel:()=>n.XLMPreTrainedModel,XLMRobertaForMaskedLM:()=>n.XLMRobertaForMaskedLM,XLMRobertaForQuestionAnswering:()=>n.XLMRobertaForQuestionAnswering,XLMRobertaForSequenceClassification:()=>n.XLMRobertaForSequenceClassification,XLMRobertaForTokenClassification:()=>n.XLMRobertaForTokenClassification,XLMRobertaModel:()=>n.XLMRobertaModel,XLMRobertaPreTrainedModel:()=>n.XLMRobertaPreTrainedModel,XLMRobertaTokenizer:()=>r.XLMRobertaTokenizer,XLMTokenizer:()=>r.XLMTokenizer,XLMWithLMHeadModel:()=>n.XLMWithLMHeadModel,XVectorOutput:()=>n.XVectorOutput,YolosFeatureExtractor:()=>m.YolosFeatureExtractor,YolosForObjectDetection:()=>n.YolosForObjectDetection,YolosImageProcessor:()=>m.YolosImageProcessor,YolosModel:()=>n.YolosModel,YolosObjectDetectionOutput:()=>n.YolosObjectDetectionOutput,YolosPreTrainedModel:()=>n.YolosPreTrainedModel,ZeroShotAudioClassificationPipeline:()=>t.ZeroShotAudioClassificationPipeline,ZeroShotClassificationPipeline:()=>t.ZeroShotClassificationPipeline,ZeroShotImageClassificationPipeline:()=>t.ZeroShotImageClassificationPipeline,ZeroShotObjectDetectionPipeline:()=>t.ZeroShotObjectDetectionPipeline,bankers_round:()=>l.bankers_round,cat:()=>c.cat,cos_sim:()=>l.cos_sim,dot:()=>l.dot,dynamic_time_warping:()=>l.dynamic_time_warping,env:()=>e.env,full:()=>c.full,full_like:()=>c.full_like,getKeyValueShapes:()=>i.getKeyValueShapes,hamming:()=>a.hamming,hanning:()=>a.hanning,interpolate:()=>c.interpolate,interpolate_4d:()=>c.interpolate_4d,interpolate_data:()=>l.interpolate_data,is_chinese_char:()=>r.is_chinese_char,layer_norm:()=>c.layer_norm,load_image:()=>o.load_image,load_video:()=>s.load_video,log_softmax:()=>l.log_softmax,magnitude:()=>l.magnitude,matmul:()=>c.matmul,max:()=>l.max,mean:()=>c.mean,mean_pooling:()=>c.mean_pooling,medianFilter:()=>l.medianFilter,mel_filter_bank:()=>a.mel_filter_bank,min:()=>l.min,ones:()=>c.ones,ones_like:()=>c.ones_like,permute:()=>c.permute,permute_data:()=>l.permute_data,pipeline:()=>t.pipeline,quantize_embeddings:()=>c.quantize_embeddings,rand:()=>c.rand,read_audio:()=>a.read_audio,rfft:()=>c.rfft,round:()=>l.round,slice:()=>c.slice,softmax:()=>l.softmax,spectrogram:()=>a.spectrogram,stack:()=>c.stack,std_mean:()=>c.std_mean,topk:()=>c.topk,window_function:()=>a.window_function,zeros:()=>c.zeros,zeros_like:()=>c.zeros_like});var e=lf( +/*! ./env.js */ +`./src/env.js`),t=lf( +/*! ./pipelines.js */ +`./src/pipelines.js`),n=lf( +/*! ./models.js */ +`./src/models.js`),r=lf( +/*! ./tokenizers.js */ +`./src/tokenizers.js`),i=lf( +/*! ./configs.js */ +`./src/configs.js`),a=lf( +/*! ./utils/audio.js */ +`./src/utils/audio.js`),o=lf( +/*! ./utils/image.js */ +`./src/utils/image.js`),s=lf( +/*! ./utils/video.js */ +`./src/utils/video.js`),c=lf( +/*! ./utils/tensor.js */ +`./src/utils/tensor.js`),l=lf( +/*! ./utils/maths.js */ +`./src/utils/maths.js`),u=lf( +/*! ./base/feature_extraction_utils.js */ +`./src/base/feature_extraction_utils.js`),d=lf( +/*! ./models/feature_extractors.js */ +`./src/models/feature_extractors.js`),f=lf( +/*! ./models/auto/feature_extraction_auto.js */ +`./src/models/auto/feature_extraction_auto.js`),p=lf( +/*! ./base/image_processors_utils.js */ +`./src/base/image_processors_utils.js`),m=lf( +/*! ./models/image_processors.js */ +`./src/models/image_processors.js`),h=lf( +/*! ./models/auto/image_processing_auto.js */ +`./src/models/auto/image_processing_auto.js`),g=lf( +/*! ./base/processing_utils.js */ +`./src/base/processing_utils.js`),_=lf( +/*! ./models/processors.js */ +`./src/models/processors.js`),v=lf( +/*! ./models/auto/processing_auto.js */ +`./src/models/auto/processing_auto.js`),y=lf( +/*! ./generation/streamers.js */ +`./src/generation/streamers.js`),b=lf( +/*! ./generation/stopping_criteria.js */ +`./src/generation/stopping_criteria.js`),x=lf( +/*! ./generation/logits_process.js */ +`./src/generation/logits_process.js`)})();var uf=$.ASTFeatureExtractor,df=$.ASTForAudioClassification,ff=$.ASTModel,pf=$.ASTPreTrainedModel,mf=$.AlbertForMaskedLM,hf=$.AlbertForQuestionAnswering,gf=$.AlbertForSequenceClassification,_f=$.AlbertModel,vf=$.AlbertPreTrainedModel,yf=$.AlbertTokenizer,bf=$.AudioClassificationPipeline,xf=$.AutoConfig,Sf=$.AutoFeatureExtractor,Cf=$.AutoImageProcessor,wf=$.AutoModel,Tf=$.AutoModelForAudioClassification,Ef=$.AutoModelForAudioFrameClassification,Df=$.AutoModelForAudioTextToText,Of=$.AutoModelForCTC,kf=$.AutoModelForCausalLM,Af=$.AutoModelForDepthEstimation,jf=$.AutoModelForDocumentQuestionAnswering,Mf=$.AutoModelForImageClassification,Nf=$.AutoModelForImageFeatureExtraction,Pf=$.AutoModelForImageMatting,Ff=$.AutoModelForImageSegmentation,If=$.AutoModelForImageTextToText,Lf=$.AutoModelForImageToImage,Rf=$.AutoModelForMaskGeneration,zf=$.AutoModelForMaskedLM,Bf=$.AutoModelForNormalEstimation,Vf=$.AutoModelForObjectDetection,Hf=$.AutoModelForPoseEstimation,Uf=$.AutoModelForQuestionAnswering,Wf=$.AutoModelForSemanticSegmentation,Gf=$.AutoModelForSeq2SeqLM,Kf=$.AutoModelForSequenceClassification,qf=$.AutoModelForSpeechSeq2Seq,Jf=$.AutoModelForTextToSpectrogram,Yf=$.AutoModelForTextToWaveform,Xf=$.AutoModelForTokenClassification,Zf=$.AutoModelForUniversalSegmentation,Qf=$.AutoModelForVision2Seq,$f=$.AutoModelForXVector,ep=$.AutoModelForZeroShotObjectDetection,tp=$.AutoProcessor,np=$.AutoTokenizer,rp=$.AutomaticSpeechRecognitionPipeline,ip=$.BackgroundRemovalPipeline,ap=$.BartForConditionalGeneration,op=$.BartForSequenceClassification,sp=$.BartModel,cp=$.BartPretrainedModel,lp=$.BartTokenizer,up=$.BaseModelOutput,dp=$.BaseStreamer,fp=$.BeitFeatureExtractor,pp=$.BeitForImageClassification,mp=$.BeitModel,hp=$.BeitPreTrainedModel,gp=$.BertForMaskedLM,_p=$.BertForQuestionAnswering,vp=$.BertForSequenceClassification,yp=$.BertForTokenClassification,bp=$.BertModel,xp=$.BertPreTrainedModel,Sp=$.BertTokenizer,Cp=$.BitImageProcessor,wp=$.BlenderbotForConditionalGeneration,Tp=$.BlenderbotModel,Ep=$.BlenderbotPreTrainedModel,Dp=$.BlenderbotSmallForConditionalGeneration,Op=$.BlenderbotSmallModel,kp=$.BlenderbotSmallPreTrainedModel,Ap=$.BlenderbotSmallTokenizer,jp=$.BlenderbotTokenizer,Mp=$.BloomForCausalLM,Np=$.BloomModel,Pp=$.BloomPreTrainedModel,Fp=$.BloomTokenizer,Ip=$.CLIPFeatureExtractor,Lp=$.CLIPImageProcessor,Rp=$.CLIPModel,zp=$.CLIPPreTrainedModel,Bp=$.CLIPSegForImageSegmentation,Vp=$.CLIPSegModel,Hp=$.CLIPSegPreTrainedModel,Up=$.CLIPTextModel,Wp=$.CLIPTextModelWithProjection,Gp=$.CLIPTokenizer,Kp=$.CLIPVisionModel,qp=$.CLIPVisionModelWithProjection,Jp=$.CamembertForMaskedLM,Yp=$.CamembertForQuestionAnswering,Xp=$.CamembertForSequenceClassification,Zp=$.CamembertForTokenClassification,Qp=$.CamembertModel,$p=$.CamembertPreTrainedModel,em=$.CamembertTokenizer,tm=$.CausalLMOutput,nm=$.CausalLMOutputWithPast,rm=$.ChineseCLIPFeatureExtractor,im=$.ChineseCLIPModel,am=$.ChineseCLIPPreTrainedModel,om=$.ClapAudioModelWithProjection,sm=$.ClapFeatureExtractor,cm=$.ClapModel,lm=$.ClapPreTrainedModel,um=$.ClapTextModelWithProjection,dm=$.ClassifierFreeGuidanceLogitsProcessor,fm=$.CodeGenForCausalLM,pm=$.CodeGenModel,mm=$.CodeGenPreTrainedModel,hm=$.CodeGenTokenizer,gm=$.CodeLlamaTokenizer,_m=$.CohereForCausalLM,vm=$.CohereModel,ym=$.CoherePreTrainedModel,bm=$.CohereTokenizer,xm=$.ConvBertForMaskedLM,Sm=$.ConvBertForQuestionAnswering,Cm=$.ConvBertForSequenceClassification,wm=$.ConvBertForTokenClassification,Tm=$.ConvBertModel,Em=$.ConvBertPreTrainedModel,Dm=$.ConvBertTokenizer,Om=$.ConvNextFeatureExtractor,km=$.ConvNextForImageClassification,Am=$.ConvNextImageProcessor,jm=$.ConvNextModel,Mm=$.ConvNextPreTrainedModel,Nm=$.ConvNextV2ForImageClassification,Pm=$.ConvNextV2Model,Fm=$.ConvNextV2PreTrainedModel,Im=$.DFineForObjectDetection,Lm=$.DFineModel,Rm=$.DFinePreTrainedModel,zm=$.DPTFeatureExtractor,Bm=$.DPTForDepthEstimation,Vm=$.DPTImageProcessor,Hm=$.DPTModel,Um=$.DPTPreTrainedModel,Wm=$.DacDecoderModel,Gm=$.DacDecoderOutput,Km=$.DacEncoderModel,qm=$.DacEncoderOutput,Jm=$.DacFeatureExtractor,Ym=$.DacModel,Xm=$.DacPreTrainedModel,Zm=$.DataTypeMap,Qm=$.DebertaForMaskedLM,$m=$.DebertaForQuestionAnswering,eh=$.DebertaForSequenceClassification,th=$.DebertaForTokenClassification,nh=$.DebertaModel,rh=$.DebertaPreTrainedModel,ih=$.DebertaTokenizer,ah=$.DebertaV2ForMaskedLM,oh=$.DebertaV2ForQuestionAnswering,sh=$.DebertaV2ForSequenceClassification,ch=$.DebertaV2ForTokenClassification,lh=$.DebertaV2Model,uh=$.DebertaV2PreTrainedModel,dh=$.DebertaV2Tokenizer,fh=$.DecisionTransformerModel,ph=$.DecisionTransformerPreTrainedModel,mh=$.DeiTFeatureExtractor,hh=$.DeiTForImageClassification,gh=$.DeiTImageProcessor,_h=$.DeiTModel,vh=$.DeiTPreTrainedModel,yh=$.DepthAnythingForDepthEstimation,bh=$.DepthAnythingPreTrainedModel,xh=$.DepthEstimationPipeline,Sh=$.DepthProForDepthEstimation,Ch=$.DepthProPreTrainedModel,wh=$.DetrFeatureExtractor,Th=$.DetrForObjectDetection,Eh=$.DetrForSegmentation,Dh=$.DetrImageProcessor,Oh=$.DetrModel,kh=$.DetrObjectDetectionOutput,Ah=$.DetrPreTrainedModel,jh=$.DetrSegmentationOutput,Mh=$.Dinov2ForImageClassification,Nh=$.Dinov2Model,Ph=$.Dinov2PreTrainedModel,Fh=$.Dinov2WithRegistersForImageClassification,Ih=$.Dinov2WithRegistersModel,Lh=$.Dinov2WithRegistersPreTrainedModel,Rh=$.DistilBertForMaskedLM,zh=$.DistilBertForQuestionAnswering,Bh=$.DistilBertForSequenceClassification,Vh=$.DistilBertForTokenClassification,Hh=$.DistilBertModel,Uh=$.DistilBertPreTrainedModel,Wh=$.DistilBertTokenizer,Gh=$.DocumentQuestionAnsweringPipeline,Kh=$.DonutFeatureExtractor,qh=$.DonutImageProcessor,Jh=$.DonutSwinModel,Yh=$.DonutSwinPreTrainedModel,Xh=$.EfficientNetForImageClassification,Zh=$.EfficientNetImageProcessor,Qh=$.EfficientNetModel,$h=$.EfficientNetPreTrainedModel,eg=$.ElectraForMaskedLM,tg=$.ElectraForQuestionAnswering,ng=$.ElectraForSequenceClassification,rg=$.ElectraForTokenClassification,ig=$.ElectraModel,ag=$.ElectraPreTrainedModel,og=$.ElectraTokenizer,sg=$.EncodecFeatureExtractor,cg=$.EosTokenCriteria,lg=$.EsmForMaskedLM,ug=$.EsmForSequenceClassification,dg=$.EsmForTokenClassification,fg=$.EsmModel,pg=$.EsmPreTrainedModel,mg=$.EsmTokenizer,hg=$.ExaoneForCausalLM,gg=$.ExaoneModel,_g=$.ExaonePreTrainedModel,vg=$.FFT,yg=$.FalconForCausalLM,bg=$.FalconModel,xg=$.FalconPreTrainedModel,Sg=$.FalconTokenizer,Cg=$.FastViTForImageClassification,wg=$.FastViTModel,Tg=$.FastViTPreTrainedModel,Eg=$.FeatureExtractionPipeline,Dg=$.FeatureExtractor,Og=$.FillMaskPipeline,kg=$.Florence2ForConditionalGeneration,Ag=$.Florence2PreTrainedModel,jg=$.Florence2Processor,Mg=$.ForcedBOSTokenLogitsProcessor,Ng=$.ForcedEOSTokenLogitsProcessor,Pg=$.GLPNFeatureExtractor,Fg=$.GLPNForDepthEstimation,Ig=$.GLPNModel,Lg=$.GLPNPreTrainedModel,Rg=$.GPT2LMHeadModel,zg=$.GPT2Model,Bg=$.GPT2PreTrainedModel,Vg=$.GPT2Tokenizer,Hg=$.GPTBigCodeForCausalLM,Ug=$.GPTBigCodeModel,Wg=$.GPTBigCodePreTrainedModel,Gg=$.GPTJForCausalLM,Kg=$.GPTJModel,qg=$.GPTJPreTrainedModel,Jg=$.GPTNeoForCausalLM,Yg=$.GPTNeoModel,Xg=$.GPTNeoPreTrainedModel,Zg=$.GPTNeoXForCausalLM,Qg=$.GPTNeoXModel,$g=$.GPTNeoXPreTrainedModel,e_=$.GPTNeoXTokenizer,t_=$.Gemma2ForCausalLM,n_=$.Gemma2Model,r_=$.Gemma2PreTrainedModel,i_=$.Gemma3ForCausalLM,a_=$.Gemma3Model,o_=$.Gemma3PreTrainedModel,s_=$.Gemma3nAudioFeatureExtractor,c_=$.Gemma3nForConditionalGeneration,l_=$.Gemma3nPreTrainedModel,u_=$.Gemma3nProcessor,d_=$.GemmaForCausalLM,f_=$.GemmaModel,p_=$.GemmaPreTrainedModel,m_=$.GemmaTokenizer,h_=$.GlmForCausalLM,g_=$.GlmModel,__=$.GlmPreTrainedModel,v_=$.GraniteForCausalLM,y_=$.GraniteModel,b_=$.GranitePreTrainedModel,x_=$.Grok1Tokenizer,S_=$.GroundingDinoForObjectDetection,C_=$.GroundingDinoImageProcessor,w_=$.GroundingDinoPreTrainedModel,T_=$.GroundingDinoProcessor,E_=$.GroupViTModel,D_=$.GroupViTPreTrainedModel,O_=$.HeliumForCausalLM,k_=$.HeliumModel,A_=$.HeliumPreTrainedModel,j_=$.HerbertTokenizer,M_=$.HieraForImageClassification,N_=$.HieraModel,P_=$.HieraPreTrainedModel,F_=$.HubertForCTC,I_=$.HubertForSequenceClassification,L_=$.HubertModel,R_=$.HubertPreTrainedModel,z_=$.IJepaForImageClassification,B_=$.IJepaModel,V_=$.IJepaPreTrainedModel,H_=$.Idefics3ForConditionalGeneration,U_=$.Idefics3ImageProcessor,W_=$.Idefics3PreTrainedModel,G_=$.Idefics3Processor,K_=$.ImageClassificationPipeline,q_=$.ImageFeatureExtractionPipeline,J_=$.ImageFeatureExtractor,Y_=$.ImageMattingOutput,X_=$.ImageProcessor,Z_=$.ImageSegmentationPipeline,Q_=$.ImageToImagePipeline,$_=$.ImageToTextPipeline,ev=$.InterruptableStoppingCriteria,tv=$.JAISLMHeadModel,nv=$.JAISModel,rv=$.JAISPreTrainedModel,iv=$.JinaCLIPImageProcessor,av=$.JinaCLIPModel,ov=$.JinaCLIPPreTrainedModel,sv=$.JinaCLIPProcessor,cv=$.JinaCLIPTextModel,lv=$.JinaCLIPVisionModel,uv=$.LiteWhisperForConditionalGeneration,dv=$.LlamaForCausalLM,fv=$.LlamaModel,pv=$.LlamaPreTrainedModel,mv=$.LlamaTokenizer,hv=$.LlavaForConditionalGeneration,gv=$.LlavaOnevisionForConditionalGeneration,_v=$.LlavaOnevisionImageProcessor,vv=$.LlavaPreTrainedModel,yv=$.LlavaProcessor,bv=$.LlavaQwen2ForCausalLM,xv=$.LogitsProcessor,Sv=$.LogitsProcessorList,Cv=$.LogitsWarper,wv=$.LongT5ForConditionalGeneration,Tv=$.LongT5Model,Ev=$.LongT5PreTrainedModel,Dv=$.M2M100ForConditionalGeneration,Ov=$.M2M100Model,kv=$.M2M100PreTrainedModel,Av=$.M2M100Tokenizer,jv=$.MBart50Tokenizer,Mv=$.MBartForCausalLM,Nv=$.MBartForConditionalGeneration,Pv=$.MBartForSequenceClassification,Fv=$.MBartModel,Iv=$.MBartPreTrainedModel,Lv=$.MBartTokenizer,Rv=$.MPNetForMaskedLM,zv=$.MPNetForQuestionAnswering,Bv=$.MPNetForSequenceClassification,Vv=$.MPNetForTokenClassification,Hv=$.MPNetModel,Uv=$.MPNetPreTrainedModel,Wv=$.MPNetTokenizer,Gv=$.MT5ForConditionalGeneration,Kv=$.MT5Model,qv=$.MT5PreTrainedModel,Jv=$.MarianMTModel,Yv=$.MarianModel,Xv=$.MarianPreTrainedModel,Zv=$.MarianTokenizer,Qv=$.Mask2FormerImageProcessor,$v=$.MaskFormerFeatureExtractor,ey=$.MaskFormerForInstanceSegmentation,ty=$.MaskFormerImageProcessor,ny=$.MaskFormerModel,ry=$.MaskFormerPreTrainedModel,iy=$.MaskedLMOutput,ay=$.MaxLengthCriteria,oy=$.Metric3DForDepthEstimation,sy=$.Metric3DPreTrainedModel,cy=$.Metric3Dv2ForDepthEstimation,ly=$.Metric3Dv2PreTrainedModel,uy=$.MgpstrForSceneTextRecognition,dy=$.MgpstrModelOutput,fy=$.MgpstrPreTrainedModel,py=$.MgpstrProcessor,my=$.MgpstrTokenizer,hy=$.MimiDecoderModel,gy=$.MimiDecoderOutput,_y=$.MimiEncoderModel,vy=$.MimiEncoderOutput,yy=$.MimiModel,by=$.MimiPreTrainedModel,xy=$.MinLengthLogitsProcessor,Sy=$.MinNewTokensLengthLogitsProcessor,Cy=$.MistralForCausalLM,wy=$.MistralModel,Ty=$.MistralPreTrainedModel,Ey=$.MobileBertForMaskedLM,Dy=$.MobileBertForQuestionAnswering,Oy=$.MobileBertForSequenceClassification,ky=$.MobileBertModel,Ay=$.MobileBertPreTrainedModel,jy=$.MobileBertTokenizer,My=$.MobileLLMForCausalLM,Ny=$.MobileLLMModel,Py=$.MobileLLMPreTrainedModel,Fy=$.MobileNetV1FeatureExtractor,Iy=$.MobileNetV1ForImageClassification,Ly=$.MobileNetV1ForSemanticSegmentation,Ry=$.MobileNetV1ImageProcessor,zy=$.MobileNetV1Model,By=$.MobileNetV1PreTrainedModel,Vy=$.MobileNetV2FeatureExtractor,Hy=$.MobileNetV2ForImageClassification,Uy=$.MobileNetV2ForSemanticSegmentation,Wy=$.MobileNetV2ImageProcessor,Gy=$.MobileNetV2Model,Ky=$.MobileNetV2PreTrainedModel,qy=$.MobileNetV3FeatureExtractor,Jy=$.MobileNetV3ForImageClassification,Yy=$.MobileNetV3ForSemanticSegmentation,Xy=$.MobileNetV3ImageProcessor,Zy=$.MobileNetV3Model,Qy=$.MobileNetV3PreTrainedModel,$y=$.MobileNetV4FeatureExtractor,eb=$.MobileNetV4ForImageClassification,tb=$.MobileNetV4ForSemanticSegmentation,nb=$.MobileNetV4ImageProcessor,rb=$.MobileNetV4Model,ib=$.MobileNetV4PreTrainedModel,ab=$.MobileViTFeatureExtractor,ob=$.MobileViTForImageClassification,sb=$.MobileViTImageProcessor,cb=$.MobileViTModel,lb=$.MobileViTPreTrainedModel,ub=$.MobileViTV2ForImageClassification,db=$.MobileViTV2Model,fb=$.MobileViTV2PreTrainedModel,pb=$.ModelOutput,mb=$.ModernBertForMaskedLM,hb=$.ModernBertForSequenceClassification,gb=$.ModernBertForTokenClassification,_b=$.ModernBertModel,vb=$.ModernBertPreTrainedModel,yb=$.Moondream1ForConditionalGeneration,bb=$.MoonshineFeatureExtractor,xb=$.MoonshineForConditionalGeneration,Sb=$.MoonshineModel,Cb=$.MoonshinePreTrainedModel,wb=$.MoonshineProcessor,Tb=$.MptForCausalLM,Eb=$.MptModel,Db=$.MptPreTrainedModel,Ob=$.MultiModalityCausalLM,kb=$.MultiModalityPreTrainedModel,Ab=$.MusicgenForCausalLM,jb=$.MusicgenForConditionalGeneration,Mb=$.MusicgenModel,Nb=$.MusicgenPreTrainedModel,Pb=$.NeoBertForMaskedLM,Fb=$.NeoBertForQuestionAnswering,Ib=$.NeoBertForSequenceClassification,Lb=$.NeoBertForTokenClassification,Rb=$.NeoBertModel,zb=$.NeoBertPreTrainedModel,Bb=$.NllbTokenizer,Vb=$.NoBadWordsLogitsProcessor,Hb=$.NoRepeatNGramLogitsProcessor,Ub=$.NomicBertModel,Wb=$.NomicBertPreTrainedModel,Gb=$.NougatImageProcessor,Kb=$.NougatTokenizer,qb=$.OPTForCausalLM,Jb=$.OPTModel,Yb=$.OPTPreTrainedModel,Xb=$.ObjectDetectionPipeline,Zb=$.Olmo2ForCausalLM,Qb=$.Olmo2Model,$b=$.Olmo2PreTrainedModel,ex=$.OlmoForCausalLM,tx=$.OlmoModel,nx=$.OlmoPreTrainedModel,rx=$.OpenELMForCausalLM,ix=$.OpenELMModel,ax=$.OpenELMPreTrainedModel,ox=$.OwlViTFeatureExtractor,sx=$.OwlViTForObjectDetection,cx=$.OwlViTImageProcessor,lx=$.OwlViTModel,ux=$.OwlViTPreTrainedModel,dx=$.OwlViTProcessor,fx=$.Owlv2ForObjectDetection,px=$.Owlv2ImageProcessor,mx=$.Owlv2Model,hx=$.Owlv2PreTrainedModel,gx=$.PaliGemmaForConditionalGeneration,_x=$.PaliGemmaPreTrainedModel,vx=$.PaliGemmaProcessor,yx=$.PatchTSMixerForPrediction,bx=$.PatchTSMixerModel,xx=$.PatchTSMixerPreTrainedModel,Sx=$.PatchTSTForPrediction,Cx=$.PatchTSTModel,wx=$.PatchTSTPreTrainedModel,Tx=$.Phi3ForCausalLM,Ex=$.Phi3Model,Dx=$.Phi3PreTrainedModel,Ox=$.Phi3VForCausalLM,kx=$.Phi3VImageProcessor,Ax=$.Phi3VPreTrainedModel,jx=$.Phi3VProcessor,Mx=$.PhiForCausalLM,Nx=$.PhiModel,Px=$.PhiPreTrainedModel,Fx=$.Pipeline,Ix=$.PreTrainedModel,Lx=$.PreTrainedTokenizer,Rx=$.PretrainedConfig,zx=$.PretrainedMixin,Bx=$.Processor,Vx=$.PvtForImageClassification,Hx=$.PvtImageProcessor,Ux=$.PvtModel,Wx=$.PvtPreTrainedModel,Gx=$.PyAnnoteFeatureExtractor,Kx=$.PyAnnoteForAudioFrameClassification,qx=$.PyAnnoteModel,Jx=$.PyAnnotePreTrainedModel,Yx=$.PyAnnoteProcessor,Xx=$.QuestionAnsweringModelOutput,Zx=$.QuestionAnsweringPipeline,Qx=$.Qwen2ForCausalLM,$x=$.Qwen2Model,eS=$.Qwen2PreTrainedModel,tS=$.Qwen2Tokenizer,nS=$.Qwen2VLForConditionalGeneration,rS=$.Qwen2VLImageProcessor,iS=$.Qwen2VLPreTrainedModel,aS=$.Qwen2VLProcessor,oS=$.Qwen3ForCausalLM,sS=$.Qwen3Model,cS=$.Qwen3PreTrainedModel,lS=$.RFDetrForObjectDetection,uS=$.RFDetrModel,dS=$.RFDetrObjectDetectionOutput,fS=$.RFDetrPreTrainedModel,pS=$.RTDetrForObjectDetection,mS=$.RTDetrImageProcessor,hS=$.RTDetrModel,gS=$.RTDetrObjectDetectionOutput,_S=$.RTDetrPreTrainedModel,vS=$.RTDetrV2ForObjectDetection,yS=$.RTDetrV2Model,bS=$.RTDetrV2ObjectDetectionOutput,xS=$.RTDetrV2PreTrainedModel,SS=$.RawAudio,CS=$.RawImage,wS=$.RawVideo,TS=$.RawVideoFrame,ES=$.RepetitionPenaltyLogitsProcessor,DS=$.ResNetForImageClassification,OS=$.ResNetModel,kS=$.ResNetPreTrainedModel,AS=$.RoFormerForMaskedLM,jS=$.RoFormerForQuestionAnswering,MS=$.RoFormerForSequenceClassification,NS=$.RoFormerForTokenClassification,PS=$.RoFormerModel,FS=$.RoFormerPreTrainedModel,IS=$.RoFormerTokenizer,LS=$.RobertaForMaskedLM,RS=$.RobertaForQuestionAnswering,zS=$.RobertaForSequenceClassification,BS=$.RobertaForTokenClassification,VS=$.RobertaModel,HS=$.RobertaPreTrainedModel,US=$.RobertaTokenizer,WS=$.SamImageProcessor,GS=$.SamImageSegmentationOutput,KS=$.SamModel,qS=$.SamPreTrainedModel,JS=$.SamProcessor,YS=$.SapiensForDepthEstimation,XS=$.SapiensForNormalEstimation,ZS=$.SapiensForSemanticSegmentation,QS=$.SapiensPreTrainedModel,$S=$.SeamlessM4TFeatureExtractor,eC=$.SegformerFeatureExtractor,tC=$.SegformerForImageClassification,nC=$.SegformerForSemanticSegmentation,rC=$.SegformerImageProcessor,iC=$.SegformerModel,aC=$.SegformerPreTrainedModel,oC=$.Seq2SeqLMOutput,sC=$.SequenceClassifierOutput,cC=$.SiglipImageProcessor,lC=$.SiglipModel,uC=$.SiglipPreTrainedModel,dC=$.SiglipTextModel,fC=$.SiglipTokenizer,pC=$.SiglipVisionModel,mC=$.SmolVLMForConditionalGeneration,hC=$.SmolVLMImageProcessor,gC=$.SmolVLMProcessor,_C=$.SnacDecoderModel,vC=$.SnacEncoderModel,yC=$.SnacFeatureExtractor,bC=$.SnacModel,xC=$.SnacPreTrainedModel,SC=$.SpeechT5FeatureExtractor,CC=$.SpeechT5ForSpeechToText,wC=$.SpeechT5ForTextToSpeech,TC=$.SpeechT5HifiGan,EC=$.SpeechT5Model,DC=$.SpeechT5PreTrainedModel,OC=$.SpeechT5Processor,kC=$.SpeechT5Tokenizer,AC=$.SqueezeBertForMaskedLM,jC=$.SqueezeBertForQuestionAnswering,MC=$.SqueezeBertForSequenceClassification,NC=$.SqueezeBertModel,PC=$.SqueezeBertPreTrainedModel,FC=$.SqueezeBertTokenizer,IC=$.StableLmForCausalLM,LC=$.StableLmModel,RC=$.StableLmPreTrainedModel,zC=$.Starcoder2ForCausalLM,BC=$.Starcoder2Model,VC=$.Starcoder2PreTrainedModel,HC=$.StoppingCriteria,UC=$.StoppingCriteriaList,WC=$.StyleTextToSpeech2Model,GC=$.StyleTextToSpeech2PreTrainedModel,KC=$.SummarizationPipeline,qC=$.SuppressTokensAtBeginLogitsProcessor,JC=$.Swin2SRForImageSuperResolution,YC=$.Swin2SRImageProcessor,XC=$.Swin2SRModel,ZC=$.Swin2SRPreTrainedModel,QC=$.SwinForImageClassification,$C=$.SwinForSemanticSegmentation,ew=$.SwinModel,tw=$.SwinPreTrainedModel,nw=$.T5ForConditionalGeneration,rw=$.T5Model,iw=$.T5PreTrainedModel,aw=$.T5Tokenizer,ow=$.TableTransformerForObjectDetection,sw=$.TableTransformerModel,cw=$.TableTransformerObjectDetectionOutput,lw=$.TableTransformerPreTrainedModel,uw=$.TemperatureLogitsWarper,dw=$.Tensor,fw=$.Text2TextGenerationPipeline,pw=$.TextClassificationPipeline,mw=$.TextGenerationPipeline,hw=$.TextStreamer,gw=$.TextToAudioPipeline,_w=$.TokenClassificationPipeline,vw=$.TokenClassifierOutput,yw=$.TokenizerModel,bw=$.TopKLogitsWarper,xw=$.TopPLogitsWarper,Sw=$.TrOCRForCausalLM,Cw=$.TrOCRPreTrainedModel,ww=$.TranslationPipeline,Tw=$.UltravoxModel,Ew=$.UltravoxPreTrainedModel,Dw=$.UltravoxProcessor,Ow=$.UniSpeechForCTC,kw=$.UniSpeechForSequenceClassification,Aw=$.UniSpeechModel,jw=$.UniSpeechPreTrainedModel,Mw=$.UniSpeechSatForAudioFrameClassification,Nw=$.UniSpeechSatForCTC,Pw=$.UniSpeechSatForSequenceClassification,Fw=$.UniSpeechSatModel,Iw=$.UniSpeechSatPreTrainedModel,Lw=$.VLChatProcessor,Rw=$.VLMImageProcessor,zw=$.ViTFeatureExtractor,Bw=$.ViTForImageClassification,Vw=$.ViTImageProcessor,Hw=$.ViTMAEModel,Uw=$.ViTMAEPreTrainedModel,Ww=$.ViTMSNForImageClassification,Gw=$.ViTMSNModel,Kw=$.ViTMSNPreTrainedModel,qw=$.ViTModel,Jw=$.ViTPreTrainedModel,Yw=$.VisionEncoderDecoderModel,Xw=$.VitMatteForImageMatting,Zw=$.VitMatteImageProcessor,Qw=$.VitMattePreTrainedModel,$w=$.VitPoseForPoseEstimation,eT=$.VitPoseImageProcessor,tT=$.VitPosePreTrainedModel,nT=$.VitsModel,rT=$.VitsModelOutput,iT=$.VitsPreTrainedModel,aT=$.VitsTokenizer,oT=$.Wav2Vec2BertForCTC,sT=$.Wav2Vec2BertForSequenceClassification,cT=$.Wav2Vec2BertModel,lT=$.Wav2Vec2BertPreTrainedModel,uT=$.Wav2Vec2CTCTokenizer,dT=$.Wav2Vec2FeatureExtractor,fT=$.Wav2Vec2ForAudioFrameClassification,pT=$.Wav2Vec2ForCTC,mT=$.Wav2Vec2ForSequenceClassification,hT=$.Wav2Vec2Model,gT=$.Wav2Vec2PreTrainedModel,_T=$.Wav2Vec2Processor,vT=$.Wav2Vec2ProcessorWithLM,yT=$.WavLMForAudioFrameClassification,bT=$.WavLMForCTC,xT=$.WavLMForSequenceClassification,ST=$.WavLMForXVector,CT=$.WavLMModel,wT=$.WavLMPreTrainedModel,TT=$.WeSpeakerFeatureExtractor,ET=$.WeSpeakerResNetModel,DT=$.WeSpeakerResNetPreTrainedModel,OT=$.WhisperFeatureExtractor,kT=$.WhisperForConditionalGeneration,AT=$.WhisperModel,jT=$.WhisperPreTrainedModel,MT=$.WhisperProcessor,NT=$.WhisperTextStreamer,PT=$.WhisperTimeStampLogitsProcessor,FT=$.WhisperTokenizer,IT=$.XLMForQuestionAnswering,LT=$.XLMForSequenceClassification,RT=$.XLMForTokenClassification,zT=$.XLMModel,BT=$.XLMPreTrainedModel,VT=$.XLMRobertaForMaskedLM,HT=$.XLMRobertaForQuestionAnswering,UT=$.XLMRobertaForSequenceClassification,WT=$.XLMRobertaForTokenClassification,GT=$.XLMRobertaModel,KT=$.XLMRobertaPreTrainedModel,qT=$.XLMRobertaTokenizer,JT=$.XLMTokenizer,YT=$.XLMWithLMHeadModel,XT=$.XVectorOutput,ZT=$.YolosFeatureExtractor,QT=$.YolosForObjectDetection,$T=$.YolosImageProcessor,eE=$.YolosModel,tE=$.YolosObjectDetectionOutput,nE=$.YolosPreTrainedModel,rE=$.ZeroShotAudioClassificationPipeline,iE=$.ZeroShotClassificationPipeline,aE=$.ZeroShotImageClassificationPipeline,oE=$.ZeroShotObjectDetectionPipeline,sE=$.bankers_round,cE=$.cat,lE=$.cos_sim,uE=$.dot,dE=$.dynamic_time_warping,fE=$.env,pE=$.full,mE=$.full_like,hE=$.getKeyValueShapes,gE=$.hamming,_E=$.hanning,vE=$.interpolate,yE=$.interpolate_4d,bE=$.interpolate_data,xE=$.is_chinese_char,SE=$.layer_norm,CE=$.load_image,wE=$.load_video,TE=$.log_softmax,EE=$.magnitude,DE=$.matmul,OE=$.max,kE=$.mean,AE=$.mean_pooling,jE=$.medianFilter,ME=$.mel_filter_bank,NE=$.min,PE=$.ones,FE=$.ones_like,IE=$.permute,LE=$.permute_data,RE=$.pipeline,zE=$.quantize_embeddings,BE=$.rand,VE=$.read_audio,HE=$.rfft,UE=$.round,WE=$.slice,GE=$.softmax,KE=$.spectrogram,qE=$.stack,JE=$.std_mean,YE=$.topk,XE=$.window_function,ZE=$.zeros,QE=$.zeros_like;let $E=64;var eD=class{static model_id=null;static tokenizer;static processor;static model;static async getInstance(e){return this.model_id=`onnx-community/whisper-large-v3-turbo`,this.tokenizer??=np.from_pretrained(this.model_id,{progress_callback:e}),this.processor??=tp.from_pretrained(this.model_id,{progress_callback:e}),this.model??=kT.from_pretrained(this.model_id,{dtype:{encoder_model:`fp16`,decoder_model_merged:`q4`},device:`webgpu`,progress_callback:e}),Promise.all([this.tokenizer,this.processor,this.model])}};async function tD(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e{o??=performance.now();let t;s++>0&&(t=s/(performance.now()-o)*1e3),globalThis.postMessage({status:`update`,output:e,tps:t,numTokens:s})},l=new hw(r,{skip_prompt:!0,decode_kwargs:{skip_special_tokens:!0},callback_function:c}),u=await i(n),d=await a.generate({...u,max_new_tokens:$E,language:t,streamer:l}),f=r.batch_decode(d,{skip_special_tokens:!0});globalThis.postMessage({status:`complete`,output:f}),nD=!1}async function iD(){globalThis.postMessage({status:`loading`,data:`Loading model...`});let[e,t,n]=await eD.getInstance(e=>{globalThis.postMessage(e)});globalThis.postMessage({status:`loading`,data:`Compiling shaders and warming up model...`}),await n.generate({input_features:pE([1,128,3e3],0),max_new_tokens:1}),globalThis.postMessage({status:`ready`})}globalThis.addEventListener(`message`,async e=>{let{type:t,data:n}=e.data;switch(t){case`load`:iD();break;case`generate`:rD(n);break}})})(); \ No newline at end of file diff --git a/assets/worker-CkF6jqty.js b/assets/worker-CkF6jqty.js deleted file mode 100644 index 5f9d97ee9061efc91a08e22fd7cdc87e000f1a68..0000000000000000000000000000000000000000 --- a/assets/worker-CkF6jqty.js +++ /dev/null @@ -1,3598 +0,0 @@ -(function(){var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({}),t,n=Object.defineProperty,r=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})};let i=new Map,a=[],o=(e,t,n)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let r=i.get(e);if(r===void 0)i.set(e,{backend:t,priority:n});else if(r.priority>n)return;else if(r.priority===n&&r.backend!==t)throw Error(`cannot register backend "${e}" using priority ${n}`);if(n>=0){let t=a.indexOf(e);t!==-1&&a.splice(t,1);for(let t=0;t{let t=i.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},c=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),r=n.length===0?a:n,i,o=[],c=new Set;for(let e of r){let t=await s(e);typeof t==`string`?o.push({name:e,err:t}):(i||=t,i===t&&c.add(e))}if(!i)throw Error(`no available backend found. ERR: ${o.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of o)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let l=t.filter(e=>c.has(typeof e==`string`?e:e.name));return[i,new Proxy(e,{get:(e,t)=>t===`executionProviders`?l:Reflect.get(e,t)})]},l=`1.22.0`,u=`warning`,d={wasm:{},webgl:{},webgpu:{},versions:{common:l},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);u=e}},get logLevel(){return u}};Object.defineProperty(d,`logLevel`,{enumerable:!0});let f=d,p=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t===void 0||t.format===void 0?`RGB`:t.format,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat===void 0||t.tensorFormat===void 0?`RGB`:t.tensorFormat,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,h(o,s)}else throw Error(`Can not access image data`)}else if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(h(e.data,s))}});else throw Error(`Input data provided is not supported - aborted tensor creation`);if(o!==void 0)return h(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},_=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new D({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},v=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new D({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},y=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new D({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},b=(e,t,n)=>new D({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]}),x=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),S=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),C=!1,w=()=>{if(!C){C=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=n!==void 0&&n.from;e&&(x.set(`int64`,BigInt64Array),S.set(BigInt64Array,`int64`)),t&&(x.set(`uint64`,BigUint64Array),S.set(BigUint64Array,`uint64`)),r?(x.set(`float16`,n),S.set(n,`float16`)):x.set(`float16`,Uint16Array)}},T=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new D(e.type,e.data,t);case`cpu-pinned`:return new D({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new D({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new D({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new D({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}};var D=class{constructor(e,t,n){w();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=x.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=x.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=S.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=T(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return g(e,t)}static fromTexture(e,t){return _(e,t)}static fromGpuBuffer(e,t){return v(e,t)}static fromMLTensor(e,t){return y(e,t)}static fromPinnedBuffer(e,t,n){return b(e,t,n)}toDataURL(e){return p(this,e)}toImageData(e){return m(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return E(this,e)}};let O=D,k=(e,t)=>{(d.trace===void 0?!d.wasm.trace:!d.trace)||console.timeStamp(`${e}::ORT::${t}`)},A=(e,t)=>{var n;let r=(n=Error().stack)?.split(/\r\n|\r|\n/g)||[],i=!1;for(let n=0;n{(d.trace===void 0?!d.wasm.trace:!d.trace)||A(`BEGIN`,e)},te=e=>{(d.trace===void 0?!d.wasm.trace:!d.trace)||A(`END`,e)};var ne=class e{constructor(e){this.handler=e}async run(e,t,n){ee();let r={},i={};if(typeof e!=`object`||!e||e instanceof O||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof O)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof O)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else i=t}}else if(t!==void 0)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(e[t]===void 0)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof O?s[e]=t:s[e]=new O(t.type,t.data,t.dims)}return te(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){ee();let a,o={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)o=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)o=n;else if(n!==void 0)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,s=0,c=t.byteLength;if(typeof n==`object`&&n)o=n;else if(typeof n==`number`){if(s=n,!Number.isSafeInteger(s))throw RangeError(`'byteOffset' must be an integer.`);if(s<0||s>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-s,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||s+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-s}].`);if(typeof i==`object`&&i)o=i;else if(i!==void 0)throw TypeError(`'options' must be an object.`)}else if(r!==void 0)throw TypeError(`'byteLength' must be a number.`)}else if(n!==void 0)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,s,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[s,l]=await c(o),u=await s.createInferenceSessionHandler(a,l);return te(),new e(u)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}};let re=ne;var j={};r(j,{InferenceSession:()=>re,TRACE:()=>k,TRACE_FUNC_BEGIN:()=>ee,TRACE_FUNC_END:()=>te,Tensor:()=>O,env:()=>f,registerBackend:()=>o});var ie={};r(ie,{InferenceSession:()=>qe,TRACE:()=>Ve,TRACE_FUNC_BEGIN:()=>Ue,TRACE_FUNC_END:()=>V,Tensor:()=>Be,default:()=>sf,env:()=>ye,registerBackend:()=>F}); -/*! -* ONNX Runtime Web v1.22.0-dev.20250409-89f8206ba4 -* Copyright (c) Microsoft Corporation. All rights reserved. -* Licensed under the MIT License. -*/ -var ae=Object.defineProperty,oe=Object.getOwnPropertyDescriptor,se=Object.getOwnPropertyNames,ce=Object.prototype.hasOwnProperty,le=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),M=(e,t)=>()=>(e&&(t=e(e=0)),t),N=(e,t)=>{for(var n in t)ae(e,n,{get:t[n],enumerable:!0})},ue=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of se(t))!ce.call(e,i)&&i!==n&&ae(e,i,{get:()=>t[i],enumerable:!(r=oe(t,i))||r.enumerable});return e},de=e=>ue(ae({},`__esModule`,{value:!0}),e),fe,P,F,I,L,pe=M(()=>{"use strict";fe=new Map,P=[],F=(e,t,n)=>{if(t&&typeof t.init==`function`&&typeof t.createInferenceSessionHandler==`function`){let r=fe.get(e);if(r===void 0)fe.set(e,{backend:t,priority:n});else{if(r.priority>n)return;if(r.priority===n&&r.backend!==t)throw Error(`cannot register backend "${e}" using priority ${n}`)}if(n>=0){let t=P.indexOf(e);t!==-1&&P.splice(t,1);for(let t=0;t{let t=fe.get(e);if(!t)return`backend not found.`;if(t.initialized)return t.backend;if(t.aborted)return t.error;{let n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},L=async e=>{let t=e.executionProviders||[],n=t.map(e=>typeof e==`string`?e:e.name),r=n.length===0?P:n,i,a=[],o=new Set;for(let e of r){let t=await I(e);typeof t==`string`?a.push({name:e,err:t}):(i||=t,i===t&&o.add(e))}if(!i)throw Error(`no available backend found. ERR: ${a.map(e=>`[${e.name}] ${e.err}`).join(`, `)}`);for(let{name:e,err:t}of a)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);let s=t.filter(e=>o.has(typeof e==`string`?e:e.name));return[i,new Proxy(e,{get:(e,t)=>t===`executionProviders`?s:Reflect.get(e,t)})]}}),me=M(()=>{"use strict";pe()}),he,ge=M(()=>{"use strict";he=`1.22.0-dev.20250409-89f8206ba4`}),_e,R,ve=M(()=>{"use strict";ge(),_e=`warning`,R={wasm:{},webgl:{},webgpu:{},versions:{common:he},set logLevel(e){if(e!==void 0){if(typeof e!=`string`||[`verbose`,`info`,`warning`,`error`,`fatal`].indexOf(e)===-1)throw Error(`Unsupported logging level: ${e}`);_e=e}},get logLevel(){return _e}},Object.defineProperty(R,`logLevel`,{enumerable:!0})}),ye,be=M(()=>{"use strict";ve(),ye=R}),xe,Se,Ce=M(()=>{"use strict";xe=(e,t)=>{let n=typeof document<`u`?document.createElement(`canvas`):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];let r=n.getContext(`2d`);if(r!=null){let i,a;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[3]):(i=e.dims[3],a=e.dims[2]);let o=t?.format===void 0?`RGB`:t.format,s=t?.norm,c,l;s===void 0||s.mean===void 0?c=[255,255,255,255]:typeof s.mean==`number`?c=[s.mean,s.mean,s.mean,s.mean]:(c=[s.mean[0],s.mean[1],s.mean[2],0],s.mean[3]!==void 0&&(c[3]=s.mean[3])),s===void 0||s.bias===void 0?l=[0,0,0,0]:typeof s.bias==`number`?l=[s.bias,s.bias,s.bias,s.bias]:(l=[s.bias[0],s.bias[1],s.bias[2],0],s.bias[3]!==void 0&&(l[3]=s.bias[3]));let u=a*i,d=0,f=u,p=u*2,m=-1;o===`RGBA`?(d=0,f=u,p=u*2,m=u*3):o===`RGB`?(d=0,f=u,p=u*2):o===`RBG`&&(d=0,p=u,f=u*2);for(let t=0;t{let n=typeof document<`u`?document.createElement(`canvas`).getContext(`2d`):new OffscreenCanvas(1,1).getContext(`2d`),r;if(n!=null){let i,a,o;t?.tensorLayout!==void 0&&t.tensorLayout===`NHWC`?(i=e.dims[2],a=e.dims[1],o=e.dims[3]):(i=e.dims[3],a=e.dims[2],o=e.dims[1]);let s=t!==void 0&&t.format!==void 0?t.format:`RGB`,c=t?.norm,l,u;c===void 0||c.mean===void 0?l=[255,255,255,255]:typeof c.mean==`number`?l=[c.mean,c.mean,c.mean,c.mean]:(l=[c.mean[0],c.mean[1],c.mean[2],255],c.mean[3]!==void 0&&(l[3]=c.mean[3])),c===void 0||c.bias===void 0?u=[0,0,0,0]:typeof c.bias==`number`?u=[c.bias,c.bias,c.bias,c.bias]:(u=[c.bias[0],c.bias[1],c.bias[2],0],c.bias[3]!==void 0&&(u[3]=c.bias[3]));let d=a*i;if(t!==void 0&&(t.format!==void 0&&o===4&&t.format!==`RGBA`||o===3&&t.format!==`RGB`&&t.format!==`BGR`))throw Error(`Tensor format doesn't match input tensor dims`);let f=4,p=0,m=1,h=2,g=3,_=0,v=d,y=d*2,b=-1;s===`RGBA`?(_=0,v=d,y=d*2,b=d*3):s===`RGB`?(_=0,v=d,y=d*2):s===`RBG`&&(_=0,y=d,v=d*2),r=n.createImageData(i,a);for(let t=0;t{"use strict";ze(),we=(e,t)=>{if(e===void 0)throw Error(`Image buffer must be defined`);if(t.height===void 0||t.width===void 0)throw Error(`Image height and width must be defined`);if(t.tensorLayout===`NHWC`)throw Error(`NHWC Tensor layout is not supported yet`);let{height:n,width:r}=t,i=t.norm??{mean:255,bias:0},a,o;a=typeof i.mean==`number`?[i.mean,i.mean,i.mean,i.mean]:[i.mean[0],i.mean[1],i.mean[2],i.mean[3]??255],o=typeof i.bias==`number`?[i.bias,i.bias,i.bias,i.bias]:[i.bias[0],i.bias[1],i.bias[2],i.bias[3]??0];let s=t.format===void 0?`RGBA`:t.format,c=t.tensorFormat!==void 0&&t.tensorFormat!==void 0?t.tensorFormat:`RGB`,l=n*r,u=c===`RGBA`?new Float32Array(l*4):new Float32Array(l*3),d=4,f=0,p=1,m=2,h=3,g=0,_=l,v=l*2,y=-1;s===`RGB`&&(d=3,f=0,p=1,m=2,h=-1),c===`RGBA`?y=l*3:c===`RBG`?(g=0,v=l,_=l*2):c===`BGR`&&(v=0,_=l,g=l*2);for(let t=0;t{let n=typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement,r=typeof ImageData<`u`&&e instanceof ImageData,i=typeof ImageBitmap<`u`&&e instanceof ImageBitmap,a=typeof e==`string`,o,s=t??{},c=()=>{if(typeof document<`u`)return document.createElement(`canvas`);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(1,1);throw Error(`Canvas is not supported`)},l=e=>typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext(`2d`):null;if(n){let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let n=e.height,i=e.width;if(t!==void 0&&t.resizedHeight!==void 0&&t.resizedWidth!==void 0&&(n=t.resizedHeight,i=t.resizedWidth),t!==void 0){if(s=t,t.tensorFormat!==void 0)throw Error(`Image input config format must be RGBA for HTMLImageElement`);s.tensorFormat=`RGBA`,s.height=n,s.width=i}else s.tensorFormat=`RGBA`,s.height=n,s.width=i;r.drawImage(e,0,0),o=r.getImageData(0,0,i,n).data}else throw Error(`Can not access image data`)}else if(r){let n,r;if(t!==void 0&&t.resizedWidth!==void 0&&t.resizedHeight!==void 0?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),t!==void 0&&(s=t),s.format=`RGBA`,s.height=n,s.width=r,t!==void 0){let t=c();t.width=r,t.height=n;let i=l(t);if(i!=null)i.putImageData(e,0,0),o=i.getImageData(0,0,r,n).data;else throw Error(`Can not access image data`)}else o=e.data}else if(i){if(t===void 0)throw Error(`Please provide image config with format for Imagebitmap`);let n=c();n.width=e.width,n.height=e.height;let r=l(n);if(r!=null){let t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),o=r.getImageData(0,0,n,t).data,s.height=t,s.width=n,we(o,s)}else throw Error(`Can not access image data`)}else{if(a)return new Promise((t,n)=>{let r=c(),i=l(r);if(!e||!i)return n();let a=new Image;a.crossOrigin=`Anonymous`,a.src=e,a.onload=()=>{r.width=a.width,r.height=a.height,i.drawImage(a,0,0,r.width,r.height);let e=i.getImageData(0,0,r.width,r.height);s.height=r.height,s.width=r.width,t(we(e.data,s))}});throw Error(`Input data provided is not supported - aborted tensor creation`)}if(o!==void 0)return we(o,s);throw Error(`Input data provided is not supported - aborted tensor creation`)},Ee=(e,t)=>{let{width:n,height:r,download:i,dispose:a}=t,o=[1,r,n,4];return new Re({location:`texture`,type:`float32`,texture:e,dims:o,download:i,dispose:a})},De=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Re({location:`gpu-buffer`,type:n??`float32`,gpuBuffer:e,dims:r,download:i,dispose:a})},Oe=(e,t)=>{let{dataType:n,dims:r,download:i,dispose:a}=t;return new Re({location:`ml-tensor`,type:n??`float32`,mlTensor:e,dims:r,download:i,dispose:a})},ke=(e,t,n)=>new Re({location:`cpu-pinned`,type:e,data:t,dims:n??[t.length]})}),je,Me,Ne,z,Pe=M(()=>{"use strict";je=new Map([[`float32`,Float32Array],[`uint8`,Uint8Array],[`int8`,Int8Array],[`uint16`,Uint16Array],[`int16`,Int16Array],[`int32`,Int32Array],[`bool`,Uint8Array],[`float64`,Float64Array],[`uint32`,Uint32Array],[`int4`,Uint8Array],[`uint4`,Uint8Array]]),Me=new Map([[Float32Array,`float32`],[Uint8Array,`uint8`],[Int8Array,`int8`],[Uint16Array,`uint16`],[Int16Array,`int16`],[Int32Array,`int32`],[Float64Array,`float64`],[Uint32Array,`uint32`]]),Ne=!1,z=()=>{if(!Ne){Ne=!0;let e=typeof BigInt64Array<`u`&&BigInt64Array.from,t=typeof BigUint64Array<`u`&&BigUint64Array.from,n=globalThis.Float16Array,r=typeof n<`u`&&n.from;e&&(je.set(`int64`,BigInt64Array),Me.set(BigInt64Array,`int64`)),t&&(je.set(`uint64`,BigUint64Array),Me.set(BigUint64Array,`uint64`)),r?(je.set(`float16`,n),Me.set(n,`float16`)):je.set(`float16`,Uint16Array)}}}),Fe,Ie,Le=M(()=>{"use strict";ze(),Fe=e=>{let t=1;for(let n=0;n{switch(e.location){case`cpu`:return new Re(e.type,e.data,t);case`cpu-pinned`:return new Re({location:`cpu-pinned`,data:e.data,type:e.type,dims:t});case`texture`:return new Re({location:`texture`,texture:e.texture,type:e.type,dims:t});case`gpu-buffer`:return new Re({location:`gpu-buffer`,gpuBuffer:e.gpuBuffer,type:e.type,dims:t});case`ml-tensor`:return new Re({location:`ml-tensor`,mlTensor:e.mlTensor,type:e.type,dims:t});default:throw Error(`tensorReshape: tensor location ${e.location} is not supported`)}}}),Re,ze=M(()=>{"use strict";Ce(),Ae(),Pe(),Le(),Re=class{constructor(e,t,n){z();let r,i;if(typeof e==`object`&&`location`in e)switch(this.dataLocation=e.location,r=e.type,i=e.dims,e.location){case`cpu-pinned`:{let t=je.get(r);if(!t)throw TypeError(`unsupported type "${r}" to create tensor from pinned buffer`);if(!(e.data instanceof t))throw TypeError(`buffer should be of type ${t.name}`);this.cpuData=e.data;break}case`texture`:if(r!==`float32`)throw TypeError(`unsupported type "${r}" to create tensor from texture`);this.gpuTextureData=e.texture,this.downloader=e.download,this.disposer=e.dispose;break;case`gpu-buffer`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from gpu buffer`);this.gpuBufferData=e.gpuBuffer,this.downloader=e.download,this.disposer=e.dispose;break;case`ml-tensor`:if(r!==`float32`&&r!==`float16`&&r!==`int32`&&r!==`int64`&&r!==`uint32`&&r!==`uint64`&&r!==`int8`&&r!==`uint8`&&r!==`bool`&&r!==`uint4`&&r!==`int4`)throw TypeError(`unsupported type "${r}" to create tensor from MLTensor`);this.mlTensorData=e.mlTensor,this.downloader=e.download,this.disposer=e.dispose;break;default:throw Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,o;if(typeof e==`string`)if(r=e,o=n,e===`string`){if(!Array.isArray(t))throw TypeError(`A string tensor's data must be a string array.`);a=t}else{let n=je.get(e);if(n===void 0)throw TypeError(`Unsupported tensor type: ${e}.`);if(Array.isArray(t)){if(e===`float16`&&n===Uint16Array||e===`uint4`||e===`int4`)throw TypeError(`Creating a ${e} tensor from number array is not supported. Please use ${n.name} as data.`);a=e===`uint64`||e===`int64`?n.from(t,BigInt):n.from(t)}else if(t instanceof n)a=t;else if(t instanceof Uint8ClampedArray)if(e===`uint8`)a=Uint8Array.from(t);else throw TypeError(`A Uint8ClampedArray tensor's data must be type of uint8`);else if(e===`float16`&&t instanceof Uint16Array&&n!==Uint16Array)a=new globalThis.Float16Array(t.buffer,t.byteOffset,t.length);else throw TypeError(`A ${r} tensor's data must be type of ${n}`)}else if(o=t,Array.isArray(e)){if(e.length===0)throw TypeError(`Tensor type cannot be inferred from an empty array.`);let t=typeof e[0];if(t===`string`)r=`string`,a=e;else if(t===`boolean`)r=`bool`,a=Uint8Array.from(e);else throw TypeError(`Invalid element type of data array: ${t}.`)}else if(e instanceof Uint8ClampedArray)r=`uint8`,a=Uint8Array.from(e);else{let t=Me.get(e.constructor);if(t===void 0)throw TypeError(`Unsupported type for tensor data: ${e.constructor}.`);r=t,a=e}if(o===void 0)o=[a.length];else if(!Array.isArray(o))throw TypeError(`A tensor's dims must be a number array`);i=o,this.cpuData=a,this.dataLocation=`cpu`}let a=Fe(i);if(this.cpuData&&a!==this.cpuData.length&&!((r===`uint4`||r===`int4`)&&Math.ceil(a/2)===this.cpuData.length))throw Error(`Tensor's size(${a}) does not match data length(${this.cpuData.length}).`);this.type=r,this.dims=i,this.size=a}static async fromImage(e,t){return Te(e,t)}static fromTexture(e,t){return Ee(e,t)}static fromGpuBuffer(e,t){return De(e,t)}static fromMLTensor(e,t){return Oe(e,t)}static fromPinnedBuffer(e,t,n){return ke(e,t,n)}toDataURL(e){return xe(this,e)}toImageData(e){return Se(this,e)}get data(){if(this.ensureValid(),!this.cpuData)throw Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw Error(`The data is not stored as a WebGL texture.`);return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw Error(`The data is not stored as a WebGPU buffer.`);return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw Error(`The data is not stored as a WebNN MLTensor.`);return this.mlTensorData}async getData(e){switch(this.ensureValid(),this.dataLocation){case`cpu`:case`cpu-pinned`:return this.data;case`texture`:case`gpu-buffer`:case`ml-tensor`:if(!this.downloader)throw Error(`The current tensor is not created with a specified data downloader.`);if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);try{this.isDownloading=!0;let t=await this.downloader();return this.downloader=void 0,this.dataLocation=`cpu`,this.cpuData=t,e&&this.disposer&&(this.disposer(),this.disposer=void 0),t}finally{this.isDownloading=!1}default:throw Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw Error(`The current tensor is being downloaded.`);this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation=`none`}ensureValid(){if(this.dataLocation===`none`)throw Error(`The tensor is disposed.`)}reshape(e){if(this.ensureValid(),this.downloader||this.disposer)throw Error(`Cannot reshape a tensor that owns GPU resource.`);return Ie(this,e)}}}),Be,B=M(()=>{"use strict";ze(),Be=Re}),Ve,He,Ue,V,We=M(()=>{"use strict";ve(),Ve=(e,t)=>{(typeof R.trace>`u`?!R.wasm.trace:!R.trace)||console.timeStamp(`${e}::ORT::${t}`)},He=(e,t)=>{var n;let r=(n=Error().stack)?.split(/\r\n|\r|\n/g)||[],i=!1;for(let n=0;n{(typeof R.trace>`u`?!R.wasm.trace:!R.trace)||He(`BEGIN`,e)},V=e=>{(typeof R.trace>`u`?!R.wasm.trace:!R.trace)||He(`END`,e)}}),Ge,Ke=M(()=>{"use strict";pe(),B(),We(),Ge=class e{constructor(e){this.handler=e}async run(e,t,n){Ue();let r={},i={};if(typeof e!=`object`||!e||e instanceof Be||Array.isArray(e))throw TypeError(`'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.`);let a=!0;if(typeof t==`object`){if(t===null)throw TypeError(`Unexpected argument[1]: cannot be null.`);if(t instanceof Be)throw TypeError(`'fetches' cannot be a Tensor`);if(Array.isArray(t)){if(t.length===0)throw TypeError(`'fetches' cannot be an empty array.`);a=!1;for(let e of t){if(typeof e!=`string`)throw TypeError(`'fetches' must be a string array or an object.`);if(this.outputNames.indexOf(e)===-1)throw RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else{let e=!1,o=Object.getOwnPropertyNames(t);for(let n of this.outputNames)if(o.indexOf(n)!==-1){let i=t[n];(i===null||i instanceof Be)&&(e=!0,a=!1,r[n]=i)}if(e){if(typeof n==`object`&&n)i=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else i=t}}else if(typeof t<`u`)throw TypeError(`Unexpected argument[1]: must be 'fetches' or 'options'.`);for(let t of this.inputNames)if(typeof e[t]>`u`)throw Error(`input '${t}' is missing in 'feeds'.`);if(a)for(let e of this.outputNames)r[e]=null;let o=await this.handler.run(e,r,i),s={};for(let e in o)if(Object.hasOwnProperty.call(o,e)){let t=o[e];t instanceof Be?s[e]=t:s[e]=new Be(t.type,t.data,t.dims)}return V(),s}async release(){return this.handler.dispose()}static async create(t,n,r,i){Ue();let a,o={};if(typeof t==`string`){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof Uint8Array){if(a=t,typeof n==`object`&&n)o=n;else if(typeof n<`u`)throw TypeError(`'options' must be an object.`)}else if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&t instanceof SharedArrayBuffer){let e=t,s=0,c=t.byteLength;if(typeof n==`object`&&n)o=n;else if(typeof n==`number`){if(s=n,!Number.isSafeInteger(s))throw RangeError(`'byteOffset' must be an integer.`);if(s<0||s>=e.byteLength)throw RangeError(`'byteOffset' is out of range [0, ${e.byteLength}).`);if(c=t.byteLength-s,typeof r==`number`){if(c=r,!Number.isSafeInteger(c))throw RangeError(`'byteLength' must be an integer.`);if(c<=0||s+c>e.byteLength)throw RangeError(`'byteLength' is out of range (0, ${e.byteLength-s}].`);if(typeof i==`object`&&i)o=i;else if(typeof i<`u`)throw TypeError(`'options' must be an object.`)}else if(typeof r<`u`)throw TypeError(`'byteLength' must be a number.`)}else if(typeof n<`u`)throw TypeError(`'options' must be an object.`);a=new Uint8Array(e,s,c)}else throw TypeError(`Unexpected argument[0]: must be 'path' or 'buffer'.`);let[s,c]=await L(o),l=await s.createInferenceSessionHandler(a,c);return V(),new e(l)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}}}),qe,Je=M(()=>{"use strict";Ke(),qe=Ge}),Ye=M(()=>{"use strict";}),Xe=M(()=>{"use strict";}),Ze=M(()=>{"use strict";}),Qe=M(()=>{"use strict";}),$e={};N($e,{InferenceSession:()=>qe,TRACE:()=>Ve,TRACE_FUNC_BEGIN:()=>Ue,TRACE_FUNC_END:()=>V,Tensor:()=>Be,env:()=>ye,registerBackend:()=>F});var et=M(()=>{"use strict";me(),be(),Je(),B(),Ye(),Xe(),We(),Ze(),Qe()}),tt=M(()=>{"use strict";}),nt={};N(nt,{default:()=>at});var rt,it,at,ot=M(()=>{"use strict";var e;kd(),Lt(),Dt(),rt=`ort-wasm-proxy-worker`,it=(e=globalThis.self)?.name===rt,it&&(self.onmessage=e=>{let{type:t,in:n}=e.data;try{switch(t){case`init-wasm`:Ft(n.wasm).then(()=>{_d(n).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})})},e=>{postMessage({type:t,err:e})});break;case`init-ep`:{let{epName:e,env:r}=n;vd(r,e).then(()=>{postMessage({type:t})},e=>{postMessage({type:t,err:e})});break}case`copy-from`:{let{buffer:e}=n,r=Sd(e);postMessage({type:t,out:r});break}case`create`:{let{model:e,options:r}=n;Cd(e,r).then(e=>{postMessage({type:t,out:e})},e=>{postMessage({type:t,err:e})});break}case`release`:wd(n),postMessage({type:t});break;case`run`:{let{sessionId:e,inputIndices:r,inputs:i,outputIndices:a,options:o}=n;Ed(e,r,i,a,Array(a.length).fill(null),o).then(e=>{e.some(e=>e[3]!==`cpu`)?postMessage({type:t,err:`Proxy does not support non-cpu tensor location.`}):postMessage({type:t,out:e},Od([...i,...e]))},e=>{postMessage({type:t,err:e})});break}case`end-profiling`:Dd(n),postMessage({type:t});break;default:}}catch(e){postMessage({type:t,err:e})}}),at=it?null:e=>new Worker(e??gt,{type:`module`,name:rt})}),st={};N(st,{default:()=>ut});var ct,lt,ut,dt,ft=M(()=>{"use strict";var t;lt=(ct=self.location.href,async function(t={}){var n,r,i,a=t,o=new Promise((e,t)=>{r=e,i=t}),s=typeof window==`object`,c=typeof WorkerGlobalScope<`u`,l=c&&(n=self.name)?.startsWith(`em-pthread`);a.mountExternalData=(e,t)=>{e.startsWith(`./`)&&(e=e.substring(2)),(a.Eb||=new Map).set(e,t)},a.unmountExternalData=()=>{delete a.Eb};var u=globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,pc:!0}).buffer.constructor;let d=e=>async(...t)=>{try{var n;if(a.Fb)throw Error(`Session already started`);let r=a.Fb={dc:t[0],errors:[]},i=await e(...t);if(a.Fb!==r)throw Error(`Session mismatch`);(n=a.Jb)?.flush();let o=r.errors;if(0e),0{if(e===`webgpu`){[a.Jb,a.Ub,a.Yb,a.Kb,a.Xb,a.jb,a.Zb,a.ac,a.Vb,a.Wb,a.$b]=t;let e=a.Jb;a.jsepRegisterBuffer=(t,n,r,i)=>e.registerBuffer(t,n,r,i),a.jsepGetBuffer=t=>e.getBuffer(t),a.jsepCreateDownloader=(t,n,r)=>e.createDownloader(t,n,r),a.jsepOnCreateSession=t=>{e.onCreateSession(t)},a.jsepOnReleaseSession=t=>{e.onReleaseSession(t)},a.jsepOnRunStart=t=>e.onRunStart(t),a.bc=(t,n)=>{e.upload(t,n)}}else if(e===`webnn`){let e=t[0];[a.nc,a.Nb,a.webnnEnsureTensor,a.Ob,a.webnnDownloadTensor]=t.slice(1),a.webnnReleaseTensorId=a.Nb,a.webnnUploadTensor=a.Ob,a.webnnOnRunStart=t=>e.onRunStart(t),a.webnnOnRunEnd=e.onRunEnd.bind(e),a.webnnRegisterMLContext=(t,n)=>{e.registerMLContext(t,n)},a.webnnOnReleaseSession=t=>{e.onReleaseSession(t)},a.webnnCreateMLTensorDownloader=(t,n)=>e.createMLTensorDownloader(t,n),a.webnnRegisterMLTensor=(t,n,r,i)=>e.registerMLTensor(t,n,r,i),a.webnnCreateMLContext=t=>e.createMLContext(t),a.webnnRegisterMLConstant=(t,n,r,i,o,s)=>e.registerMLConstant(t,n,r,i,o,a.Eb,s),a.webnnRegisterGraphInput=e.registerGraphInput.bind(e),a.webnnIsGraphInput=e.isGraphInput.bind(e),a.webnnCreateTemporaryTensor=e.createTemporaryTensor.bind(e),a.webnnIsInt64Supported=e.isInt64Supported.bind(e)}};let f=()=>{let e=(e,t,n)=>(...r)=>{let i=nn,a=t?.();r=e(...r);let o=t?.();return a!==o&&(e=o,n(a),t=n=null),nn==i?r:new Promise((e,t)=>{cn={resolve:e,reject:t}})};(()=>{for(let t of[`_OrtAppendExecutionProvider`,`_OrtCreateSession`,`_OrtRun`,`_OrtRunWithBinding`,`_OrtBindInput`])a[t]=e(a[t],()=>a[t],e=>a[t]=e)})(),d!==void 0&&(a._OrtRun=d(a._OrtRun),a._OrtRunWithBinding=d(a._OrtRunWithBinding)),f=void 0};a.asyncInit=()=>{f?.()};var p,m,h=Object.assign({},a),g=(e,t)=>{throw t},_=``;(s||c)&&(c?_=self.location.href:typeof document<`u`&&document.currentScript&&(_=document.currentScript.src),ct&&(_=ct),_=_.startsWith(`blob:`)?``:_.slice(0,_.replace(/[?#].*/,``).lastIndexOf(`/`)+1),c&&(m=e=>{var t=new XMLHttpRequest;return t.open(`GET`,e,!1),t.responseType=`arraybuffer`,t.send(null),new Uint8Array(t.response)}),p=async e=>{if(ae(e))return new Promise((t,n)=>{var r=new XMLHttpRequest;r.open(`GET`,e,!0),r.responseType=`arraybuffer`,r.onload=()=>{r.status==200||r.status==0&&r.response?t(r.response):n(r.status)},r.onerror=n,r.send(null)});var t=await fetch(e,{credentials:`same-origin`});if(t.ok)return t.arrayBuffer();throw Error(t.status+` : `+t.url)});var v=console.log.bind(console),y=console.error.bind(console),b=v,x=y;Object.assign(a,h),h=null;var S,C,w,T,E,D,O,k,A,ee,te,ne,re,j=a.wasmBinary,ie=!1,ae=e=>e.startsWith(`file://`);function oe(){return S.buffer!=T.buffer&&I(),T}function se(){return S.buffer!=T.buffer&&I(),E}function ce(){return S.buffer!=T.buffer&&I(),D}function le(){return S.buffer!=T.buffer&&I(),O}function M(){return S.buffer!=T.buffer&&I(),k}function N(){return S.buffer!=T.buffer&&I(),A}function ue(){return S.buffer!=T.buffer&&I(),ee}function de(){return S.buffer!=T.buffer&&I(),re}if(l){let e=function(t){try{var n=t.data,r=n.Bb;if(r===`load`){let t=[];self.onmessage=e=>t.push(e),self.startWorker=()=>{postMessage({Bb:`loaded`});for(let n of t)e(n);self.onmessage=e};for(let e of n.Rb)a[e]&&!a[e].proxy||(a[e]=(...t)=>{postMessage({Bb:`callHandler`,Qb:e,args:t})},e==`print`&&(b=a[e]),e==`printErr`&&(x=a[e]));S=n.kc,I(),P(n.lc)}else if(r===`run`){Le(n.Ab),br(n.Ab,0,0,1,0,0),Pe(),Ht(n.Ab),F||(gr(),F=!0);try{Re(n.fc,n.Hb)}catch(e){if(e!=`unwind`)throw e}}else n.target!==`setimmediate`&&(r===`checkMailbox`?F&&Ut():r&&(x(`worker: received unknown command ${r}`),x(n)))}catch(e){throw xr(),e}};var fe=e,P,F=!1;x=function(...e){e=e.join(` `),console.error(e)},self.alert=function(...e){postMessage({Bb:`alert`,text:e.join(` `),ic:_r()})},self.onunhandledrejection=e=>{throw e.reason||e},self.onmessage=e}function I(){var e=S.buffer;a.HEAP8=T=new Int8Array(e),a.HEAP16=D=new Int16Array(e),a.HEAPU8=E=new Uint8Array(e),a.HEAPU16=O=new Uint16Array(e),a.HEAP32=k=new Int32Array(e),a.HEAPU32=A=new Uint32Array(e),a.HEAPF32=ee=new Float32Array(e),a.HEAPF64=re=new Float64Array(e),a.HEAP64=te=new BigInt64Array(e),a.HEAPU64=ne=new BigUint64Array(e)}function L(){l?startWorker(a):Z.Ca()}l||(S=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),I());var pe,me=0,he=null;function ge(){if(--me==0&&he){var e=he;he=null,e()}}function _e(e){throw x(e=`Aborted(`+e+`)`),ie=!0,e=new WebAssembly.RuntimeError(e+`. Build with -sASSERTIONS for more info.`),i(e),e}function R(){return{a:{L:be,Aa:ye,b:Be,$:Ve,A:We,pa:Ge,X:Je,Z:Ye,qa:Xe,na:Ze,ga:Qe,ma:$e,J:et,Y:tt,V:nt,oa:rt,W:it,va:st,E:ht,Q:_t,O:Tt,D:Dt,u:Ot,r:kt,P:At,z:Rt,R:zt,ja:Bt,T:Wt,aa:Kt,M:qt,F:Jt,ia:Ht,sa:Yt,t:Qt,Ba:$t,w:dn,o:pn,l:hn,c:bt,n:W,j:bn,v:G,p:xn,f:Sn,s:Cn,m:wn,e:Tn,k:En,i:Dn,g:On,d:kn,da:An,ea:Pn,fa:Fn,ba:In,ca:Ln,N:Bn,xa:Vn,ua:Wn,h:qn,C:Jn,G:Yn,ta:Hn,x:Xn,ra:Zn,U:Qn,q:zn,y:$n,K:er,S:tr,za:ir,ya:ar,ka:Y,la:sr,_:ke,B:cr,I:lr,ha:ur,H:dr,a:S,wa:De}}}var ve={829644:(e,t,n,r,i)=>{if(a===void 0||!a.Eb)return 1;if((e=V(Number(e>>>0))).startsWith(`./`)&&(e=e.substring(2)),!(e=a.Eb.get(e)))return 2;if(t=Number(t>>>0),n=Number(n>>>0),r=Number(r>>>0),t+n>e.byteLength)return 3;try{let o=e.subarray(t,t+n);switch(i){case 0:se().set(o,r>>>0);break;case 1:a.mc?a.mc(r,o):a.bc(r,o);break;default:return 4}return 0}catch{return 4}},830468:(e,t,n)=>{a.Ob(e,se().subarray(t>>>0,t+n>>>0))},830532:()=>a.nc(),830574:e=>{a.Nb(e)},830611:()=>{a.Vb()},830642:()=>{a.Wb()},830671:()=>{a.$b()},830696:e=>a.Ub(e),830729:e=>a.Yb(e),830761:(e,t,n)=>{a.Kb(Number(e),Number(t),Number(n),!0)},830824:(e,t,n)=>{a.Kb(Number(e),Number(t),Number(n))},830881:()=>typeof wasmOffsetConverter<`u`,830938:e=>{a.jb(`Abs`,e,void 0)},830989:e=>{a.jb(`Neg`,e,void 0)},831040:e=>{a.jb(`Floor`,e,void 0)},831093:e=>{a.jb(`Ceil`,e,void 0)},831145:e=>{a.jb(`Reciprocal`,e,void 0)},831203:e=>{a.jb(`Sqrt`,e,void 0)},831255:e=>{a.jb(`Exp`,e,void 0)},831306:e=>{a.jb(`Erf`,e,void 0)},831357:e=>{a.jb(`Sigmoid`,e,void 0)},831412:(e,t,n)=>{a.jb(`HardSigmoid`,e,{alpha:t,beta:n})},831491:e=>{a.jb(`Log`,e,void 0)},831542:e=>{a.jb(`Sin`,e,void 0)},831593:e=>{a.jb(`Cos`,e,void 0)},831644:e=>{a.jb(`Tan`,e,void 0)},831695:e=>{a.jb(`Asin`,e,void 0)},831747:e=>{a.jb(`Acos`,e,void 0)},831799:e=>{a.jb(`Atan`,e,void 0)},831851:e=>{a.jb(`Sinh`,e,void 0)},831903:e=>{a.jb(`Cosh`,e,void 0)},831955:e=>{a.jb(`Asinh`,e,void 0)},832008:e=>{a.jb(`Acosh`,e,void 0)},832061:e=>{a.jb(`Atanh`,e,void 0)},832114:e=>{a.jb(`Tanh`,e,void 0)},832166:e=>{a.jb(`Not`,e,void 0)},832217:(e,t,n)=>{a.jb(`Clip`,e,{min:t,max:n})},832286:e=>{a.jb(`Clip`,e,void 0)},832338:(e,t)=>{a.jb(`Elu`,e,{alpha:t})},832396:e=>{a.jb(`Gelu`,e,void 0)},832448:e=>{a.jb(`Relu`,e,void 0)},832500:(e,t)=>{a.jb(`LeakyRelu`,e,{alpha:t})},832564:(e,t)=>{a.jb(`ThresholdedRelu`,e,{alpha:t})},832634:(e,t)=>{a.jb(`Cast`,e,{to:t})},832692:e=>{a.jb(`Add`,e,void 0)},832743:e=>{a.jb(`Sub`,e,void 0)},832794:e=>{a.jb(`Mul`,e,void 0)},832845:e=>{a.jb(`Div`,e,void 0)},832896:e=>{a.jb(`Pow`,e,void 0)},832947:e=>{a.jb(`Equal`,e,void 0)},833e3:e=>{a.jb(`Greater`,e,void 0)},833055:e=>{a.jb(`GreaterOrEqual`,e,void 0)},833117:e=>{a.jb(`Less`,e,void 0)},833169:e=>{a.jb(`LessOrEqual`,e,void 0)},833228:(e,t,n,r,i)=>{a.jb(`ReduceMean`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833403:(e,t,n,r,i)=>{a.jb(`ReduceMax`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833577:(e,t,n,r,i)=>{a.jb(`ReduceMin`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833751:(e,t,n,r,i)=>{a.jb(`ReduceProd`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},833926:(e,t,n,r,i)=>{a.jb(`ReduceSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834100:(e,t,n,r,i)=>{a.jb(`ReduceL1`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834273:(e,t,n,r,i)=>{a.jb(`ReduceL2`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834446:(e,t,n,r,i)=>{a.jb(`ReduceLogSum`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834623:(e,t,n,r,i)=>{a.jb(`ReduceSumSquare`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834803:(e,t,n,r,i)=>{a.jb(`ReduceLogSumExp`,e,{keepDims:!!t,noopWithEmptyAxes:!!n,axes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},834983:e=>{a.jb(`Where`,e,void 0)},835036:(e,t,n)=>{a.jb(`Transpose`,e,{perm:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[]})},835160:(e,t,n,r)=>{a.jb(`DepthToSpace`,e,{blocksize:t,mode:V(n),format:r?`NHWC`:`NCHW`})},835293:(e,t,n,r)=>{a.jb(`DepthToSpace`,e,{blocksize:t,mode:V(n),format:r?`NHWC`:`NCHW`})},835426:(e,t,n,r,i,o,s,c,l,u,d,f,p,m,h)=>{a.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:r,kernelShape:[i],pads:[o,s],strides:[c],wIsConst:()=>!!oe()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:V(h)})},835859:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:r,kernelShape:Array.from(M().subarray(Number(i)>>>0,2+(Number(i)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!oe()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:V(m)})},836520:(e,t,n,r,i,o,s,c,l,u,d,f,p,m,h)=>{a.jb(`ConvTranspose`,e,{format:l?`NHWC`:`NCHW`,autoPad:t,dilations:[n],group:r,kernelShape:[i],pads:[o,s],strides:[c],wIsConst:()=>!!oe()[u>>>0],outputPadding:d?Array.from(M().subarray(Number(d)>>>0,Number(f)>>>0)):[],outputShape:p?Array.from(M().subarray(Number(p)>>>0,Number(m)>>>0)):[],activation:V(h)})},836953:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`ConvTranspose`,e,{format:c?`NHWC`:`NCHW`,autoPad:t,dilations:Array.from(M().subarray(Number(n)>>>0,2+(Number(n)>>>0)>>>0)),group:r,kernelShape:Array.from(M().subarray(Number(i)>>>0,2+(Number(i)>>>0)>>>0)),pads:Array.from(M().subarray(Number(o)>>>0,4+(Number(o)>>>0)>>>0)),strides:Array.from(M().subarray(Number(s)>>>0,2+(Number(s)>>>0)>>>0)),wIsConst:()=>!!oe()[l>>>0],outputPadding:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],outputShape:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[],activation:V(m)})},837614:(e,t)=>{a.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},837705:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838184:(e,t)=>{a.jb(`GlobalAveragePool`,e,{format:t?`NHWC`:`NCHW`})},838275:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`AveragePool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},838754:(e,t)=>{a.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},838841:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839316:(e,t)=>{a.jb(`GlobalMaxPool`,e,{format:t?`NHWC`:`NCHW`})},839403:(e,t,n,r,i,o,s,c,l,u,d,f,p,m)=>{a.jb(`MaxPool`,e,{format:m?`NHWC`:`NCHW`,auto_pad:t,ceil_mode:n,count_include_pad:r,storage_order:i,dilations:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],kernel_shape:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],pads:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],strides:f?Array.from(M().subarray(Number(f)>>>0,Number(p)>>>0)):[]})},839878:(e,t,n,r,i)=>{a.jb(`Gemm`,e,{alpha:t,beta:n,transA:r,transB:i})},839982:e=>{a.jb(`MatMul`,e,void 0)},840036:(e,t,n,r)=>{a.jb(`ArgMax`,e,{keepDims:!!t,selectLastIndex:!!n,axis:r})},840144:(e,t,n,r)=>{a.jb(`ArgMin`,e,{keepDims:!!t,selectLastIndex:!!n,axis:r})},840252:(e,t)=>{a.jb(`Softmax`,e,{axis:t})},840315:(e,t)=>{a.jb(`Concat`,e,{axis:t})},840375:(e,t,n,r,i)=>{a.jb(`Split`,e,{axis:t,numOutputs:n,splitSizes:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},840531:e=>{a.jb(`Expand`,e,void 0)},840585:(e,t)=>{a.jb(`Gather`,e,{axis:Number(t)})},840656:(e,t)=>{a.jb(`GatherElements`,e,{axis:Number(t)})},840735:(e,t)=>{a.jb(`GatherND`,e,{batch_dims:Number(t)})},840814:(e,t,n,r,i,o,s,c,l,u,d)=>{a.jb(`Resize`,e,{antialias:t,axes:n?Array.from(M().subarray(Number(n)>>>0,Number(r)>>>0)):[],coordinateTransformMode:V(i),cubicCoeffA:o,excludeOutside:s,extrapolationValue:c,keepAspectRatioPolicy:V(l),mode:V(u),nearestMode:V(d)})},841176:(e,t,n,r,i,o,s)=>{a.jb(`Slice`,e,{starts:t?Array.from(M().subarray(Number(t)>>>0,Number(n)>>>0)):[],ends:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[],axes:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[]})},841440:e=>{a.jb(`Tile`,e,void 0)},841492:(e,t,n)=>{a.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841606:(e,t,n)=>{a.jb(`InstanceNormalization`,e,{epsilon:t,format:n?`NHWC`:`NCHW`})},841720:e=>{a.jb(`Range`,e,void 0)},841773:(e,t)=>{a.jb(`Einsum`,e,{equation:V(t)})},841854:(e,t,n,r,i)=>{a.jb(`Pad`,e,{mode:t,value:n,pads:r?Array.from(M().subarray(Number(r)>>>0,Number(i)>>>0)):[]})},841997:(e,t,n,r,i,o)=>{a.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!i,trainingMode:!!r,format:o?`NHWC`:`NCHW`})},842166:(e,t,n,r,i,o)=>{a.jb(`BatchNormalization`,e,{epsilon:t,momentum:n,spatial:!!i,trainingMode:!!r,format:o?`NHWC`:`NCHW`})},842335:(e,t,n)=>{a.jb(`CumSum`,e,{exclusive:Number(t),reverse:Number(n)})},842432:(e,t,n)=>{a.jb(`DequantizeLinear`,e,{axis:t,blockSize:n})},842522:(e,t,n,r,i)=>{a.jb(`GridSample`,e,{align_corners:t,mode:V(n),padding_mode:V(r),format:i?`NHWC`:`NCHW`})},842692:(e,t,n,r,i)=>{a.jb(`GridSample`,e,{align_corners:t,mode:V(n),padding_mode:V(r),format:i?`NHWC`:`NCHW`})},842862:(e,t)=>{a.jb(`ScatterND`,e,{reduction:V(t)})},842947:(e,t,n,r,i,o,s,c,l)=>{a.jb(`Attention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:r,scale:i,doRotary:o,qkvHiddenSizes:s?Array.from(M().subarray(Number(c)>>>0,Number(c)+s>>>0)):[],pastPresentShareBuffer:!!l})},843219:e=>{a.jb(`BiasAdd`,e,void 0)},843274:e=>{a.jb(`BiasSplitGelu`,e,void 0)},843335:e=>{a.jb(`FastGelu`,e,void 0)},843391:(e,t,n,r,i,o,s,c,l,u,d,f,p,m,h,g)=>{a.jb(`Conv`,e,{format:f?`NHWC`:`NCHW`,auto_pad:t,dilations:n?Array.from(M().subarray(Number(n)>>>0,Number(r)>>>0)):[],group:i,kernel_shape:o?Array.from(M().subarray(Number(o)>>>0,Number(s)>>>0)):[],pads:c?Array.from(M().subarray(Number(c)>>>0,Number(l)>>>0)):[],strides:u?Array.from(M().subarray(Number(u)>>>0,Number(d)>>>0)):[],w_is_const:()=>!!oe()[Number(p)>>>0],activation:V(m),activation_params:h?Array.from(ue().subarray(Number(h)>>>0,Number(g)>>>0)):[]})},843975:e=>{a.jb(`Gelu`,e,void 0)},844027:(e,t,n,r,i,o,s,c,l)=>{a.jb(`GroupQueryAttention`,e,{numHeads:t,kvNumHeads:n,scale:r,softcap:i,doRotary:o,rotaryInterleaved:s,smoothSoftmax:c,localWindowSize:l})},844244:(e,t,n,r)=>{a.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!r})},844355:(e,t,n,r)=>{a.jb(`LayerNormalization`,e,{axis:t,epsilon:n,simplified:!!r})},844466:(e,t,n,r,i,o)=>{a.jb(`MatMulNBits`,e,{k:t,n,accuracyLevel:r,bits:i,blockSize:o})},844593:(e,t,n,r,i,o)=>{a.jb(`MultiHeadAttention`,e,{numHeads:t,isUnidirectional:n,maskFilterValue:r,scale:i,doRotary:o})},844752:(e,t)=>{a.jb(`QuickGelu`,e,{alpha:t})},844816:(e,t,n,r,i)=>{a.jb(`RotaryEmbedding`,e,{interleaved:!!t,numHeads:n,rotaryEmbeddingDim:r,scale:i})},844955:(e,t,n)=>{a.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845057:(e,t,n)=>{a.jb(`SkipLayerNormalization`,e,{epsilon:t,simplified:!!n})},845159:(e,t,n,r)=>{a.jb(`GatherBlockQuantized`,e,{gatherAxis:t,quantizeAxis:n,blockSize:r})},845280:e=>{a.Zb(e)},845314:(e,t)=>a.ac(Number(e),Number(t),a.Fb.dc,a.Fb.errors)};function ye(e,t,n){return un(async()=>{await a.Xb(Number(e),Number(t),Number(n))})}function be(){return typeof wasmOffsetConverter<`u`}class xe{constructor(t){e.defineProperty(this,`name`,`ExitStatus`),this.message=`Program terminated with exit(${t})`,this.status=t}}var Se=e=>{e.terminate(),e.onmessage=()=>{}},Ce=[],we=e=>{Ae.length==0&&(Ie(),Fe(Ae[0]));var t=Ae.pop();if(!t)return 6;je.push(t),Ne[e.Ab]=t,t.Ab=e.Ab;var n={Bb:`run`,fc:e.ec,Hb:e.Hb,Ab:e.Ab};return t.postMessage(n,e.Mb),0},Te=0,Ee=(e,t,...n)=>{for(var r=2*n.length,i=Ar(),a=kr(8*r),o=a>>>3,s=0;s>>0]=c)}return e=Sr(e,0,r,a,t),Or(i),e};function De(e){if(l)return Ee(0,1,e);if(w=e,!(0{if(w=e,l)throw Oe(e),`unwind`;De(e)},Ae=[],je=[],Me=[],Ne={},z=e=>{var t=e.Ab;delete Ne[t],Ae.push(e),je.splice(je.indexOf(e),1),e.Ab=0,Cr(t)};function Pe(){Me.forEach(e=>e())}var Fe=e=>new Promise(t=>{e.onmessage=n=>{var r=(n=n.data).Bb;if(n.Gb&&n.Gb!=_r()){var i=Ne[n.Gb];i?i.postMessage(n,n.Mb):x(`Internal error! Worker sent a message "${r}" to target pthread ${n.Gb}, but that thread no longer exists!`)}else r===`checkMailbox`?Ut():r===`spawnThread`?we(n):r===`cleanupThread`?z(Ne[n.hc]):r===`loaded`?(e.loaded=!0,t(e)):r===`alert`?alert(`Thread ${n.ic}: ${n.text}`):n.target===`setimmediate`?e.postMessage(n):r===`callHandler`?a[n.Qb](...n.args):r&&x(`worker sent an unknown command ${r}`)},e.onerror=e=>{throw x(`worker sent an error! ${e.filename}:${e.lineno}: ${e.message}`),e};var n,r=[];for(n of[])a.propertyIsEnumerable(n)&&r.push(n);e.postMessage({Bb:`load`,Rb:r,kc:S,lc:C})});function Ie(){var e=new Worker((()=>{let e=URL;return self.location.href>`file:`&&self.location.href<`file;`?new e(`ort.bundle.min.mjs`,self.location.href):new URL(self.location.href)})(),{type:`module`,workerData:`em-pthread`,name:`em-pthread`});Ae.push(e)}var Le=e=>{I();var t=N()[e+52>>>2>>>0];e=N()[e+56>>>2>>>0],Dr(t,t-e),Or(t)},Re=(e,t)=>{Te=0,e=jr(e,t),0>>=0);throw t>>>=0,n>>>=0,N()[r.Ib+16>>>2>>>0]=0,N()[r.Ib+4>>>2>>>0]=t,N()[r.Ib+8>>>2>>>0]=n,e}function B(e,t,n,r){return l?Ee(2,1,e,t,n,r):Ve(e,t,n,r)}function Ve(e,t,n,r){if(e>>>=0,n>>>=0,r>>>=0,u===void 0)return 6;var i=[];return l&&i.length===0?B(e,t>>>=0,n,r):(e={ec:n,Ab:e,Hb:r,Mb:i},l?(e.Bb=`spawnThread`,postMessage(e,i),0):we(e))}var He=typeof TextDecoder<`u`?new TextDecoder:void 0,Ue=(e,t=0,n=NaN)=>{var r=(t>>>=0)+n;for(n=t;e[n]&&!(n>=r);)++n;if(16(i=(240&i)==224?(15&i)<<12|a<<6|o:(7&i)<<18|a<<12|o<<6|63&e[t++])?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else r+=String.fromCharCode(i)}return r},V=(e,t)=>(e>>>=0)?Ue(se(),e,t):``;function We(e,t,n){return l?Ee(3,1,e,t,n):0}function Ge(e,t){if(l)return Ee(4,1,e,t)}var Ke=e=>{for(var t=0,n=0;n=r?t++:2047>=r?t+=2:55296<=r&&57343>=r?(t+=4,++n):t+=3}return t},qe=(e,t,n)=>{var r=se();if(t>>>=0,0=o&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++a)),127>=o){if(t>=n)break;r[t++>>>0]=o}else{if(2047>=o){if(t+1>=n)break;r[t++>>>0]=192|o>>6}else{if(65535>=o){if(t+2>=n)break;r[t++>>>0]=224|o>>12}else{if(t+3>=n)break;r[t++>>>0]=240|o>>18,r[t++>>>0]=128|o>>12&63}r[t++>>>0]=128|o>>6&63}r[t++>>>0]=128|63&o}}r[t>>>0]=0,e=t-i}else e=0;return e};function Je(e,t){if(l)return Ee(5,1,e,t)}function Ye(e,t,n){if(l)return Ee(6,1,e,t,n)}function Xe(e,t,n){return l?Ee(7,1,e,t,n):0}function Ze(e,t){if(l)return Ee(8,1,e,t)}function Qe(e,t,n){if(l)return Ee(9,1,e,t,n)}function $e(e,t,n,r){if(l)return Ee(10,1,e,t,n,r)}function et(e,t,n,r){if(l)return Ee(11,1,e,t,n,r)}function tt(e,t,n,r){if(l)return Ee(12,1,e,t,n,r)}function nt(e){if(l)return Ee(13,1,e)}function rt(e,t){if(l)return Ee(14,1,e,t)}function it(e,t,n){if(l)return Ee(15,1,e,t,n)}var at,ot,st=()=>_e(``),lt=e=>{for(var t=``;se()[e>>>0];)t+=at[se()[e++>>>0]];return t},ut={},dt={},ft={};function pt(e,t,n={}){return function(e,t,n={}){var r=t.name;if(!e)throw new ot(`type "${r}" must have a positive integer typeid pointer`);if(dt.hasOwnProperty(e)){if(n.Sb)return;throw new ot(`Cannot register type '${r}' twice`)}dt[e]=t,delete ft[e],ut.hasOwnProperty(e)&&(t=ut[e],delete ut[e],t.forEach(e=>e()))}(e,t,n)}var mt=(e,t,n)=>{switch(t){case 1:return n?e=>oe()[e>>>0]:e=>se()[e>>>0];case 2:return n?e=>ce()[e>>>1>>>0]:e=>le()[e>>>1>>>0];case 4:return n?e=>M()[e>>>2>>>0]:e=>N()[e>>>2>>>0];case 8:return n?e=>te[e>>>3]:e=>ne[e>>>3];default:throw TypeError(`invalid integer width (${t}): ${e}`)}};function ht(e,t,n){n>>>=0,pt(e>>>=0,{name:t=lt(t>>>0),fromWireType:e=>e,toWireType:function(e,t){if(typeof t!=`bigint`&&typeof t!=`number`)throw t=t===null?`null`:(e=typeof t)==`object`||e===`array`||e===`function`?t.toString():``+t,TypeError(`Cannot convert "${t}" to ${this.name}`);return typeof t==`number`&&(t=BigInt(t)),t},Cb:gt,readValueFromPointer:mt(t,n,t.indexOf(`u`)==-1),Db:null})}var gt=8;function _t(e,t,n,r){pt(e>>>=0,{name:t=lt(t>>>0),fromWireType:function(e){return!!e},toWireType:function(e,t){return t?n:r},Cb:gt,readValueFromPointer:function(e){return this.fromWireType(se()[e>>>0])},Db:null})}var vt=[],yt=[];function bt(e){9<(e>>>=0)&&--yt[e+1]==0&&(yt[e]=void 0,vt.push(e))}var xt=e=>{if(!e)throw new ot(`Cannot use deleted val. handle = `+e);return yt[e]},St=e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let t=vt.pop()||yt.length;return yt[t]=e,yt[t+1]=1,t}};function Ct(e){return this.fromWireType(N()[e>>>2>>>0])}var wt={name:`emscripten::val`,fromWireType:e=>{var t=xt(e);return bt(e),t},toWireType:(e,t)=>St(t),Cb:gt,readValueFromPointer:Ct,Db:null};function Tt(e){return pt(e>>>0,wt)}var Et=(e,t)=>{switch(t){case 4:return function(e){return this.fromWireType(ue()[e>>>2>>>0])};case 8:return function(e){return this.fromWireType(de()[e>>>3>>>0])};default:throw TypeError(`invalid float width (${t}): ${e}`)}};function Dt(e,t,n){n>>>=0,pt(e>>>=0,{name:t=lt(t>>>0),fromWireType:e=>e,toWireType:(e,t)=>t,Cb:gt,readValueFromPointer:Et(t,n),Db:null})}function Ot(e,t,n,r,i){if(e>>>=0,n>>>=0,t=lt(t>>>0),i===-1&&(i=4294967295),i=e=>e,r===0){var a=32-8*n;i=e=>e<>>a}var o=t.includes(`unsigned`)?function(e,t){return t>>>0}:function(e,t){return t};pt(e,{name:t,fromWireType:i,toWireType:o,Cb:gt,readValueFromPointer:mt(t,n,r!==0),Db:null})}function kt(e,t,n){function r(e){var t=N()[e>>>2>>>0];return e=N()[e+4>>>2>>>0],new i(oe().buffer,e,t)}var i=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][t];pt(e>>>=0,{name:n=lt(n>>>0),fromWireType:r,Cb:gt,readValueFromPointer:r},{Sb:!0})}function At(e,t){pt(e>>>=0,{name:t=lt(t>>>0),fromWireType:function(e){for(var t,n=N()[e>>>2>>>0],r=e+4,i=r,a=0;a<=n;++a){var o=r+a;a!=n&&se()[o>>>0]!=0||(i=V(i,o-i),t===void 0?t=i:(t+=`\0`,t+=i),i=o+1)}return vr(e),t},toWireType:function(e,t){t instanceof ArrayBuffer&&(t=new Uint8Array(t));var n=typeof t==`string`;if(!(n||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array))throw new ot(`Cannot pass non-string to std::string`);var r=n?Ke(t):t.length,i=yr(4+r+1),a=i+4;if(N()[i>>>2>>>0]=r,n)qe(t,a,r+1);else if(n)for(n=0;n>>0]=o}else for(n=0;n>>0]=t[n];return e!==null&&e.push(vr,i),i},Cb:gt,readValueFromPointer:Ct,Db(e){vr(e)}})}var jt=typeof TextDecoder<`u`?new TextDecoder(`utf-16le`):void 0,Mt=(e,t)=>{for(var n=e>>1,r=n+t/2;!(n>=r)&&le()[n>>>0];)++n;if(32<(n<<=1)-e&&jt)return jt.decode(se().slice(e,n));for(n=``,r=0;!(r>=t/2);++r){var i=ce()[e+2*r>>>1>>>0];if(i==0)break;n+=String.fromCharCode(i)}return n},Nt=(e,t,n)=>{if(n??=2147483647,2>n)return 0;var r=t;n=(n-=2)<2*e.length?n/2:e.length;for(var i=0;i>>1>>>0]=a,t+=2}return ce()[t>>>1>>>0]=0,t-r},Pt=e=>2*e.length,Ft=(e,t)=>{for(var n=0,r=``;!(n>=t/4);){var i=M()[e+4*n>>>2>>>0];if(i==0)break;++n,65536<=i?(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i)):r+=String.fromCharCode(i)}return r},It=(e,t,n)=>{if(t>>>=0,n??=2147483647,4>n)return 0;var r=t;n=r+n-4;for(var i=0;i=a&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),M()[t>>>2>>>0]=a,(t+=4)+4>n)break}return M()[t>>>2>>>0]=0,t-r},Lt=e=>{for(var t=0,n=0;n=r&&++n,t+=4}return t};function Rt(e,t,n){if(e>>>=0,t>>>=0,n=lt(n>>>=0),t===2)var r=Mt,i=Nt,a=Pt,o=e=>le()[e>>>1>>>0];else t===4&&(r=Ft,i=It,a=Lt,o=e=>N()[e>>>2>>>0]);pt(e,{name:n,fromWireType:e=>{for(var n,i=N()[e>>>2>>>0],a=e+4,s=0;s<=i;++s){var c=e+4+s*t;s!=i&&o(c)!=0||(a=r(a,c-a),n===void 0?n=a:(n+=`\0`,n+=a),a=c+t)}return vr(e),n},toWireType:(e,r)=>{if(typeof r!=`string`)throw new ot(`Cannot pass non-string to C++ string type ${n}`);var o=a(r),s=yr(4+o+t);return N()[s>>>2>>>0]=o/t,i(r,s+4,o+t),e!==null&&e.push(vr,s),s},Cb:gt,readValueFromPointer:Ct,Db(e){vr(e)}})}function zt(e,t){pt(e>>>=0,{Tb:!0,name:t=lt(t>>>0),Cb:0,fromWireType:()=>{},toWireType:()=>{}})}function Bt(e){br(e>>>0,!c,1,!s,131072,!1),Pe()}var Vt=e=>{if(!ie)try{if(e(),!(0>>=0,typeof Atomics.jc==`function`&&(Atomics.jc(M(),e>>>2,e).value.then(Ut),e+=128,Atomics.store(M(),e>>>2,1))}var Ut=()=>{var e=_r();e&&(Ht(e),Vt(Er))};function Wt(e,t){(e>>>=0)==t>>>0?setTimeout(Ut):l?postMessage({Gb:e,Bb:`checkMailbox`}):(e=Ne[e])&&e.postMessage({Bb:`checkMailbox`})}var Gt=[];function Kt(e,t,n,r,i){for(t>>>=0,r/=2,Gt.length=r,n=i>>>0>>>3,i=0;i>>0];return(t?ve[t]:mr[e])(...Gt)}var qt=()=>{Te=0};function Jt(e){e>>>=0,l?postMessage({Bb:`cleanupThread`,hc:e}):z(Ne[e])}function Yt(e){}var Xt=(e,t)=>{var n=dt[e];if(n===void 0)throw e=hr(e),n=lt(e),vr(e),new ot(`${t} has unknown type ${n}`);return n},Zt=(e,t,n)=>{var r=[];return e=e.toWireType(r,n),r.length&&(N()[t>>>2>>>0]=St(r)),e};function Qt(e,t,n){return t>>>=0,n>>>=0,e=xt(e>>>0),t=Xt(t,`emval::as`),Zt(t,n,e)}function $t(e,t){return t>>>=0,e=xt(e>>>0),(t=Xt(t,`emval::as`)).toWireType(null,e)}var en=e=>{try{e()}catch(e){_e(e)}},tn=0,nn=null,rn=0,an=[],H={},on={},sn=0,cn=null,ln=[];function un(e){return function(e){if(!ie){if(tn===0){var t=!1,n=!1;e((e=0)=>{if(!ie&&(rn=e,t=!0,n)){tn=2,en(()=>Pr(nn)),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.resume(),e=!1;try{var r=function(){var e=M()[nn+8>>>2>>>0];return e=Z[on[e]],--Te,e()}()}catch(t){r=t,e=!0}var i=!1;if(!nn){var a=cn;a&&(cn=null,(e?a.reject:a.resolve)(r),i=!0)}if(e&&!i)throw r}}),n=!0,t||(tn=1,nn=function(){var e=yr(65548),t=e+12;N()[e>>>2>>>0]=t,N()[e+4>>>2>>>0]=t+65536,t=an[0];var n=H[t];return n===void 0&&(n=sn++,H[t]=n,on[n]=t),t=n,M()[e+8>>>2>>>0]=t,e}(),typeof MainLoop<`u`&&MainLoop.Pb&&MainLoop.pause(),en(()=>Mr(nn)))}else tn===2?(tn=0,en(Fr),vr(nn),nn=null,ln.forEach(Vt)):_e(`invalid state: ${tn}`);return rn}}(t=>{e().then(t)})}function dn(e){return e>>>=0,un(async()=>{var t=await xt(e);return St(t)})}var fn=[];function pn(e,t,n,r){return n>>>=0,r>>>=0,(e=fn[e>>>0])(null,t=xt(t>>>0),n,r)}var U={},mn=e=>{var t=U[e];return t===void 0?lt(e):t};function hn(e,t,n,r,i){return n>>>=0,r>>>=0,i>>>=0,(e=fn[e>>>0])(t=xt(t>>>0),t[n=mn(n)],r,i)}var gn=()=>typeof globalThis==`object`?globalThis:Function(`return this`)();function W(e){return(e>>>=0)==0?St(gn()):(e=mn(e),St(gn()[e]))}var _n=e=>{var t=fn.length;return fn.push(e),t},vn=(e,t)=>{for(var n=Array(e),r=0;r>>2>>>0],`parameter `+r);return n},yn=(e,t)=>Object.defineProperty(t,`name`,{value:e});function bn(e,t,n){var r=(t=vn(e,t>>>0)).shift();e--;var i=`return function (obj, func, destructorsRef, args) { -`,a=0,o=[];n===0&&o.push(`obj`);for(var s=[`retType`],c=[r],l=0;le.name).join(`, `)}) => ${r.name}>`,_n(yn(n,e))}function G(e){return e=mn(e>>>0),St(a[e])}function xn(e,t){return t>>>=0,e=xt(e>>>0),t=xt(t),St(e[t])}function Sn(e){9<(e>>>=0)&&(yt[e+1]+=1)}function Cn(){return St([])}function wn(e){e=xt(e>>>0);for(var t=Array(e.length),n=0;n>>0))}function En(){return St({})}function Dn(e){for(var t=xt(e>>>=0);t.length;){var n=t.pop();t.pop()(n)}bt(e)}function On(e,t,n){t>>>=0,n>>>=0,e=xt(e>>>0),t=xt(t),n=xt(n),e[t]=n}function kn(e,t){return t>>>=0,e=(e=Xt(e>>>0,`_emval_take_value`)).readValueFromPointer(t),St(e)}function An(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getUTCSeconds(),M()[t+4>>>2>>>0]=e.getUTCMinutes(),M()[t+8>>>2>>>0]=e.getUTCHours(),M()[t+12>>>2>>>0]=e.getUTCDate(),M()[t+16>>>2>>>0]=e.getUTCMonth(),M()[t+20>>>2>>>0]=e.getUTCFullYear()-1900,M()[t+24>>>2>>>0]=e.getUTCDay(),e=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,M()[t+28>>>2>>>0]=e}var jn=e=>e%4==0&&(e%100!=0||e%400==0),Mn=[0,31,60,91,121,152,182,213,244,274,305,335],Nn=[0,31,59,90,120,151,181,212,243,273,304,334];function Pn(e,t){e=-9007199254740992>e||9007199254740992>>=0,e=new Date(1e3*e),M()[t>>>2>>>0]=e.getSeconds(),M()[t+4>>>2>>>0]=e.getMinutes(),M()[t+8>>>2>>>0]=e.getHours(),M()[t+12>>>2>>>0]=e.getDate(),M()[t+16>>>2>>>0]=e.getMonth(),M()[t+20>>>2>>>0]=e.getFullYear()-1900,M()[t+24>>>2>>>0]=e.getDay();var n=(jn(e.getFullYear())?Mn:Nn)[e.getMonth()]+e.getDate()-1|0;M()[t+28>>>2>>>0]=n,M()[t+36>>>2>>>0]=-60*e.getTimezoneOffset(),n=new Date(e.getFullYear(),6,1).getTimezoneOffset();var r=new Date(e.getFullYear(),0,1).getTimezoneOffset();e=0|(n!=r&&e.getTimezoneOffset()==Math.min(r,n)),M()[t+32>>>2>>>0]=e}function Fn(e){e>>>=0;var t=new Date(M()[e+20>>>2>>>0]+1900,M()[e+16>>>2>>>0],M()[e+12>>>2>>>0],M()[e+8>>>2>>>0],M()[e+4>>>2>>>0],M()[e>>>2>>>0],0),n=M()[e+32>>>2>>>0],r=t.getTimezoneOffset(),i=new Date(t.getFullYear(),6,1).getTimezoneOffset(),a=new Date(t.getFullYear(),0,1).getTimezoneOffset(),o=Math.min(a,i);return 0>n?M()[e+32>>>2>>>0]=+(i!=a&&o==r):0>>2>>>0]=t.getDay(),n=(jn(t.getFullYear())?Mn:Nn)[t.getMonth()]+t.getDate()-1|0,M()[e+28>>>2>>>0]=n,M()[e>>>2>>>0]=t.getSeconds(),M()[e+4>>>2>>>0]=t.getMinutes(),M()[e+8>>>2>>>0]=t.getHours(),M()[e+12>>>2>>>0]=t.getDate(),M()[e+16>>>2>>>0]=t.getMonth(),M()[e+20>>>2>>>0]=t.getYear(),e=t.getTime(),BigInt(isNaN(e)?-1:e/1e3)}function In(e,t,n,r,i,a,o){return l?Ee(16,1,e,t,n,r,i,a,o):-52}function Ln(e,t,n,r,i,a){if(l)return Ee(17,1,e,t,n,r,i,a)}var Rn={},zn=()=>performance.timeOrigin+performance.now();function Bn(e,t){if(l)return Ee(18,1,e,t);if(Rn[e]&&(clearTimeout(Rn[e].id),delete Rn[e]),!t)return 0;var n=setTimeout(()=>{delete Rn[e],Vt(()=>Tr(e,performance.timeOrigin+performance.now()))},t);return Rn[e]={id:n,qc:t},0}function Vn(e,t,n,r){e>>>=0,t>>>=0,n>>>=0,r>>>=0;var i=new Date().getFullYear(),a=new Date(i,0,1).getTimezoneOffset();i=new Date(i,6,1).getTimezoneOffset();var o=Math.max(a,i);N()[e>>>2>>>0]=60*o,M()[t>>>2>>>0]=+(a!=i),e=(t=e=>{var t=Math.abs(e);return`UTC${0<=e?`-`:`+`}${String(Math.floor(t/60)).padStart(2,`0`)}${String(t%60).padStart(2,`0`)}`})(a),t=t(i),iDate.now(),Un=1;function Wn(e,t,n){if(!(0<=e&&3>=e))return 28;if(e===0)e=Date.now();else{if(!Un)return 52;e=performance.timeOrigin+performance.now()}return te[n>>>0>>>3]=BigInt(Math.round(1e6*e)),0}var Gn=[],Kn=(e,t)=>{Gn.length=0;for(var n;n=se()[e++>>>0];){var r=n!=105;t+=(r&=n!=112)&&t%8?4:0,Gn.push(n==112?N()[t>>>2>>>0]:n==106?te[t>>>3]:n==105?M()[t>>>2>>>0]:de()[t>>>3>>>0]),t+=r?8:4}return Gn};function qn(e,t,n){return e>>>=0,t=Kn(t>>>0,n>>>0),ve[e](...t)}function Jn(e,t,n){return e>>>=0,t=Kn(t>>>0,n>>>0),ve[e](...t)}var Yn=()=>{};function Xn(e,t){return x(V(e>>>0,t>>>0))}var Zn=()=>{throw Te+=1,`unwind`};function Qn(){return 4294901760}var $n=()=>navigator.hardwareConcurrency;function er(){return _e(`Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER`),0}function tr(e){e>>>=0;var t=se().length;if(e<=t||4294901760=n;n*=2){var r=t*(1+.2/n);r=Math.min(r,e+100663296);e:{r=(Math.min(4294901760,65536*Math.ceil(Math.max(e,r)/65536))-S.buffer.byteLength+65535)/65536|0;try{S.grow(r),I();var i=1;break e}catch{}i=void 0}if(i)return!0}return!1}var K=()=>(_e(`Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER`),0),nr={},rr=e=>{e.forEach(e=>{var t=K();t&&(nr[t]=e)})};function ir(){var e=Error().stack.toString().split(` -`);return e[0]==`Error`&&e.shift(),rr(e),nr.Lb=K(),nr.cc=e,nr.Lb}function ar(e,t,n){if(e>>>=0,t>>>=0,nr.Lb==e)var r=nr.cc;else (r=Error().stack.toString().split(` -`))[0]==`Error`&&r.shift(),rr(r);for(var i=3;r[i]&&K()!=e;)++i;for(e=0;e>>2>>>0]=K();return e}var q,or={},J=()=>{if(!q){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 or)or[e]===void 0?delete t[e]:t[e]=or[e];var n=[];for(e in t)n.push(`${e}=${t[e]}`);q=n}return q};function Y(e,t){if(l)return Ee(19,1,e,t);e>>>=0,t>>>=0;var n=0;return J().forEach((r,i)=>{var a=t+n;for(i=N()[e+4*i>>>2>>>0]=a,a=0;a>>0]=r.charCodeAt(a);oe()[i>>>0]=0,n+=r.length+1}),0}function sr(e,t){if(l)return Ee(20,1,e,t);e>>>=0,t>>>=0;var n=J();N()[e>>>2>>>0]=n.length;var r=0;return n.forEach(e=>r+=e.length+1),N()[t>>>2>>>0]=r,0}function cr(e){return l?Ee(21,1,e):52}function lr(e,t,n,r){return l?Ee(22,1,e,t,n,r):52}function ur(e,t,n,r){return l?Ee(23,1,e,t,n,r):70}var X=[null,[],[]];function dr(e,t,n,r){if(l)return Ee(24,1,e,t,n,r);t>>>=0,n>>>=0,r>>>=0;for(var i=0,a=0;a>>2>>>0],s=N()[t+4>>>2>>>0];t+=8;for(var c=0;c>>0],d=X[e];u===0||u===10?((e===1?b:x)(Ue(d)),d.length=0):d.push(u)}i+=s}return N()[r>>>2>>>0]=i,0}l||function(){for(var e=a.numThreads-1;e--;)Ie();Ce.unshift(()=>{me++,function(e){l?e():Promise.all(Ae.map(Fe)).then(e)}(()=>ge())})}();for(var fr=Array(256),pr=0;256>pr;++pr)fr[pr]=String.fromCharCode(pr);at=fr,ot=a.BindingError=class extends Error{constructor(e){super(e),this.name=`BindingError`}},a.InternalError=class extends Error{constructor(e){super(e),this.name=`InternalError`}},yt.push(0,1,void 0,1,null,1,!0,1,!1,1),a.count_emval_handles=()=>yt.length/2-5-vt.length;var Z,mr=[De,Oe,B,We,Ge,Je,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,it,In,Ln,Bn,Y,sr,cr,lr,ur,dr];(async function(){function e(e,t){return Z=e.exports,Z=function(){var e=Z,t={};for(let[n,r]of Object.entries(e))t[n]=typeof r==`function`?(...e)=>{an.push(n);try{return r(...e)}finally{ie||(an.pop(),nn&&tn===1&&an.length===0&&(tn=0,Te+=1,en(Nr),typeof Fibers<`u`&&Fibers.rc()))}}:r;return t}(),Z=function(){var e=Z,t=e=>t=>e(t)>>>0,n=e=>()=>e()>>>0;return(e=Object.assign({},e)).Da=t(e.Da),e.fb=n(e.fb),e.hb=t(e.hb),e.tb=t(e.tb),e.ub=n(e.ub),e.__cxa_get_exception_ptr=t(e.__cxa_get_exception_ptr),e}(),Me.push(Z.ib),C=t,ge(),Z}me++;var t=R();if(a.instantiateWasm)return new Promise(n=>{a.instantiateWasm(t,(t,r)=>{e(t,r),n(t.exports)})});if(l)return new Promise(t=>{P=n=>{var r=new WebAssembly.Instance(n,R());t(e(r,n))}});pe??=a.locateFile?a.locateFile?a.locateFile(`ort-wasm-simd-threaded.jsep.wasm`,_):_+`ort-wasm-simd-threaded.jsep.wasm`:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+self.location.href).href;try{var n=await async function(e){var t=pe;if(!j&&typeof WebAssembly.instantiateStreaming==`function`&&!ae(t))try{var n=fetch(t,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(n,e)}catch(e){x(`wasm streaming compile failed: ${e}`),x(`falling back to ArrayBuffer instantiation`)}return async function(e,t){try{var n=await async function(e){if(!j)try{var t=await p(e);return new Uint8Array(t)}catch{}if(e==pe&&j)e=new Uint8Array(j);else{if(!m)throw`both async and sync fetching of the wasm failed`;e=m(e)}return e}(e);return await WebAssembly.instantiate(n,t)}catch(e){x(`failed to asynchronously prepare wasm: ${e}`),_e(e)}}(t,e)}(t);return e(n.instance,n.module)}catch(e){return i(e),Promise.reject(e)}})();var hr=e=>(hr=Z.Da)(e),gr=()=>(gr=Z.Ea)();a._OrtInit=(e,t)=>(a._OrtInit=Z.Fa)(e,t),a._OrtGetLastError=(e,t)=>(a._OrtGetLastError=Z.Ga)(e,t),a._OrtCreateSessionOptions=(e,t,n,r,i,o,s,c,l,u)=>(a._OrtCreateSessionOptions=Z.Ha)(e,t,n,r,i,o,s,c,l,u),a._OrtAppendExecutionProvider=(e,t,n,r,i)=>(a._OrtAppendExecutionProvider=Z.Ia)(e,t,n,r,i),a._OrtAddFreeDimensionOverride=(e,t,n)=>(a._OrtAddFreeDimensionOverride=Z.Ja)(e,t,n),a._OrtAddSessionConfigEntry=(e,t,n)=>(a._OrtAddSessionConfigEntry=Z.Ka)(e,t,n),a._OrtReleaseSessionOptions=e=>(a._OrtReleaseSessionOptions=Z.La)(e),a._OrtCreateSession=(e,t,n)=>(a._OrtCreateSession=Z.Ma)(e,t,n),a._OrtReleaseSession=e=>(a._OrtReleaseSession=Z.Na)(e),a._OrtGetInputOutputCount=(e,t,n)=>(a._OrtGetInputOutputCount=Z.Oa)(e,t,n),a._OrtGetInputOutputMetadata=(e,t,n,r)=>(a._OrtGetInputOutputMetadata=Z.Pa)(e,t,n,r),a._OrtFree=e=>(a._OrtFree=Z.Qa)(e),a._OrtCreateTensor=(e,t,n,r,i,o)=>(a._OrtCreateTensor=Z.Ra)(e,t,n,r,i,o),a._OrtGetTensorData=(e,t,n,r,i)=>(a._OrtGetTensorData=Z.Sa)(e,t,n,r,i),a._OrtReleaseTensor=e=>(a._OrtReleaseTensor=Z.Ta)(e),a._OrtCreateRunOptions=(e,t,n,r)=>(a._OrtCreateRunOptions=Z.Ua)(e,t,n,r),a._OrtAddRunConfigEntry=(e,t,n)=>(a._OrtAddRunConfigEntry=Z.Va)(e,t,n),a._OrtReleaseRunOptions=e=>(a._OrtReleaseRunOptions=Z.Wa)(e),a._OrtCreateBinding=e=>(a._OrtCreateBinding=Z.Xa)(e),a._OrtBindInput=(e,t,n)=>(a._OrtBindInput=Z.Ya)(e,t,n),a._OrtBindOutput=(e,t,n,r)=>(a._OrtBindOutput=Z.Za)(e,t,n,r),a._OrtClearBoundOutputs=e=>(a._OrtClearBoundOutputs=Z._a)(e),a._OrtReleaseBinding=e=>(a._OrtReleaseBinding=Z.$a)(e),a._OrtRunWithBinding=(e,t,n,r,i)=>(a._OrtRunWithBinding=Z.ab)(e,t,n,r,i),a._OrtRun=(e,t,n,r,i,o,s,c)=>(a._OrtRun=Z.bb)(e,t,n,r,i,o,s,c),a._OrtEndProfiling=e=>(a._OrtEndProfiling=Z.cb)(e),a._JsepOutput=(e,t,n)=>(a._JsepOutput=Z.db)(e,t,n),a._JsepGetNodeName=e=>(a._JsepGetNodeName=Z.eb)(e);var _r=()=>(_r=Z.fb)(),vr=a._free=e=>(vr=a._free=Z.gb)(e),yr=a._malloc=e=>(yr=a._malloc=Z.hb)(e),br=(e,t,n,r,i,a)=>(br=Z.kb)(e,t,n,r,i,a),xr=()=>(xr=Z.lb)(),Sr=(e,t,n,r,i)=>(Sr=Z.mb)(e,t,n,r,i),Cr=e=>(Cr=Z.nb)(e),wr=e=>(wr=Z.ob)(e),Tr=(e,t)=>(Tr=Z.pb)(e,t),Er=()=>(Er=Z.qb)(),Dr=(e,t)=>(Dr=Z.rb)(e,t),Or=e=>(Or=Z.sb)(e),kr=e=>(kr=Z.tb)(e),Ar=()=>(Ar=Z.ub)(),jr=a.dynCall_ii=(e,t)=>(jr=a.dynCall_ii=Z.vb)(e,t),Mr=e=>(Mr=Z.wb)(e),Nr=()=>(Nr=Z.xb)(),Pr=e=>(Pr=Z.yb)(e),Fr=()=>(Fr=Z.zb)();return a.stackSave=()=>Ar(),a.stackRestore=e=>Or(e),a.stackAlloc=e=>kr(e),a.setValue=function(e,t,n=`i8`){switch(n.endsWith(`*`)&&(n=`*`),n){case`i1`:case`i8`:oe()[e>>>0]=t;break;case`i16`:ce()[e>>>1>>>0]=t;break;case`i32`:M()[e>>>2>>>0]=t;break;case`i64`:te[e>>>3]=BigInt(t);break;case`float`:ue()[e>>>2>>>0]=t;break;case`double`:de()[e>>>3>>>0]=t;break;case`*`:N()[e>>>2>>>0]=t;break;default:_e(`invalid type for setValue: ${n}`)}},a.getValue=function(e,t=`i8`){switch(t.endsWith(`*`)&&(t=`*`),t){case`i1`:case`i8`:return oe()[e>>>0];case`i16`:return ce()[e>>>1>>>0];case`i32`:return M()[e>>>2>>>0];case`i64`:return te[e>>>3];case`float`:return ue()[e>>>2>>>0];case`double`:return de()[e>>>3>>>0];case`*`:return N()[e>>>2>>>0];default:_e(`invalid type for getValue: ${t}`)}},a.UTF8ToString=V,a.stringToUTF8=qe,a.lengthBytesUTF8=Ke,function e(){if(0{"use strict";tt(),pt=typeof location>`u`?void 0:location.origin,mt=self.location.href>`file:`&&self.location.href<`file;`,ht=()=>{if(mt){let e=URL;return new URL(new e(`ort.bundle.min.mjs`,self.location.href).href,pt).href}return self.location.href},gt=ht(),_t=()=>{if(gt&&!gt.startsWith(`blob:`))return gt.substring(0,gt.lastIndexOf(`/`)+1)},vt=(e,t)=>{try{let n=t??gt;return(n?new URL(e,n):new URL(e)).origin===pt}catch{return!1}},yt=(e,t)=>{let n=t??gt;try{return(n?new URL(e,n):new URL(e)).href}catch{return}},bt=(e,t)=>`${t??`./`}${e}`,xt=async e=>{let t=await(await fetch(e,{credentials:`same-origin`})).blob();return URL.createObjectURL(t)},St=async e=>(await import(e)).default,Ct=(ot(),de(nt)).default,wt=async()=>{if(!gt)throw Error(`Failed to load proxy worker: cannot determine the script source URL.`);if(vt(gt))return[void 0,Ct()];let e=await xt(gt);return[e,Ct(e)]},Tt=(ft(),de(st)).default,Et=async(e,t,n)=>{if(!e&&!t&&Tt&>&&vt(gt))return[void 0,Tt];{let r=`ort-wasm-simd-threaded.jsep.mjs`,i=e??yt(r,t),a=n&&i&&!vt(i,t),o=a?await xt(i):i??bt(r,t);return[a?o:void 0,await St(o)]}}}),Ot,kt,At,jt,Mt,Nt,Pt,Ft,It,Lt=M(()=>{"use strict";Dt(),kt=!1,At=!1,jt=!1,Mt=()=>{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}},Nt=()=>{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}},Pt=()=>{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}},Ft=async e=>{if(kt)return Promise.resolve();if(At)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if(jt)throw Error(`previous call to 'initializeWebAssembly()' failed.`);At=!0;let t=e.initTimeout,n=e.numThreads;if(e.simd!==!1){if(e.simd===`relaxed`){if(!Pt())throw Error(`Relaxed WebAssembly SIMD is not supported in the current environment.`)}else if(!Nt())throw Error(`WebAssembly SIMD is not supported in the current environment.`)}let r=Mt();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 Et(s,a,n>1),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=_t();e&&(r.locateFile=t=>e+t)}f(r).then(t=>{At=!1,kt=!0,Ot=t,e(),d&&URL.revokeObjectURL(d)},e=>{At=!1,jt=!0,t(e)})})),await Promise.race(m),p)throw Error(`WebAssembly backend initializing failed due to timeout: ${t}ms`)},It=()=>{if(kt&&Ot)return Ot;throw Error(`WebAssembly is not initialized yet.`)}}),Rt,zt,Bt,Vt=M(()=>{"use strict";Lt(),Rt=(e,t)=>{let n=It(),r=n.lengthBytesUTF8(e)+1,i=n._malloc(r);return n.stringToUTF8(e,i,r),t.push(i),i},zt=(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`)zt(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}`)})},Bt=e=>{let t=It(),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)}}}),Ht,Ut=M(()=>{"use strict";Lt(),Vt(),Ht=e=>{let t=It(),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 serverity 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=Rt(e.tag,r)),n=t._OrtCreateRunOptions(i.logSeverityLevel,i.logVerbosityLevel,!!i.terminate,a),n===0&&Bt(`Can't create run options.`),e?.extra!==void 0&&zt(e.extra,``,new WeakSet,(e,i)=>{let a=Rt(e,r),o=Rt(i,r);t._OrtAddRunConfigEntry(n,a,o)!==0&&Bt(`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}}}),Wt,Gt,Kt,qt,Jt,Yt,Xt=M(()=>{"use strict";Lt(),Vt(),Wt=e=>{switch(e){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${e}`)}},Gt=e=>{switch(e){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${e}`)}},Kt=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)},qt=(e,t,n,r)=>{let i=Rt(t,r),a=Rt(n,r);It()._OrtAddSessionConfigEntry(e,i,a)!==0&&Bt(`Can't set a session config entry: ${t} - ${n}.`)},Jt=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&&qt(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}`);qt(e,`preferredLayout`,t.preferredLayout,n)}}break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported execution provider: ${t}`)}let a=Rt(t,n),o=i.length,s=0,c=0;if(o>0){s=It()._malloc(o*It().PTR_SIZE),n.push(s),c=It()._malloc(o*It().PTR_SIZE),n.push(c);for(let e=0;e{let t=It(),n=0,r=[],i=e||{};Kt(i);try{let e=Wt(i.graphOptimizationLevel??`all`),a=Gt(i.executionMode??`sequential`),o=typeof i.logId==`string`?Rt(i.logId,r):0,s=i.logSeverityLevel??2;if(!Number.isInteger(s)||s<0||s>4)throw Error(`log serverity 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`?Rt(i.optimizedModelFilePath,r):0;if(n=t._OrtCreateSessionOptions(e,!!i.enableCpuMemArena,!!i.enableMemPattern,a,!!i.enableProfiling,0,o,s,c,l),n===0&&Bt(`Can't create session options.`),i.executionProviders&&await Jt(n,i.executionProviders,r),i.enableGraphCapture!==void 0){if(typeof i.enableGraphCapture!=`boolean`)throw Error(`enableGraphCapture must be a boolean value: ${i.enableGraphCapture}`);qt(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=Rt(e,r);t._OrtAddFreeDimensionOverride(n,i,a)!==0&&Bt(`Can't set a free dimension override: ${e} - ${a}.`)}return i.extra!==void 0&&zt(i.extra,``,new WeakSet,(e,t)=>{qt(n,e,t,r)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseSessionOptions(n)!==0&&Bt(`Can't release session options.`),r.forEach(e=>t._free(e)),e}}}),Zt,Qt,$t,en,tn,nn,rn,an,H=M(()=>{"use strict";Zt=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}`)}},Qt=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}`)}},$t=(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},en=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}`)}},tn=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}`)}},nn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,rn=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint64`||e===`int8`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,an=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}`)}}}),on,sn=M(()=>{"use strict";tt(),on=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)}}else return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),cn,ln,un,dn,fn,pn,U,mn=M(()=>{"use strict";H(),cn=[`V`,`I`,`W`,`E`,`F`],ln=(e,t)=>{console.log(`[${cn[e]},${new Date().toISOString()}]${t}`)},fn=(e,t)=>{un=e,dn=t},pn=(e,t)=>{let n=tn(e),r=tn(un);n>=r&&ln(n,typeof t==`function`?t():t)},U=(...e)=>{dn&&pn(...e)}}),hn,gn,W,_n,vn,yn,bn,G=M(()=>{"use strict";hn=class{static calcMatMulShape(e,t){return e[1]===t[0]?[e[0],t[1]]:void 0}},gn=class{static calcShape(e,t,n=!1){let r=e.length,i=t.length;if(r===0)return t;if(i===0)return e;let a=Math.max(e.length,t.length),o=Array(a);if(n){if(r<2||i<2)return;let n=hn.calcMatMulShape([e[r-2],e[r-1]],[t[i-2],t[i-1]]);if(n===void 0)return;[o[a-2],o[a-1]]=n}for(let s=n?3:1;s<=a;s++){let n=r-s<0?1:e[r-s],c=i-s<0?1:t[i-s];if(n!==c&&n>1&&c>1)return;let l=Math.max(n,c);if(n&&c)o[a-s]=Math.max(n,c);else{if(l>1)return;o[a-s]=0}}return o}static isValidBroadcast(e,t){let n=e.length,r=t.length;if(n>r)return!1;for(let i=1;i<=n;i++)if(e[n-i]!==1&&e[n-i]!==t[r-i])return!1;return!0}},W=class e{static size(t){return e.getSizeFromDimensionRange(t,0,t.length)}static convertShape(e,t=4){let n=e.length;if(n===0)return[];let r=Array(n),i=n-1;for(;i>=0;){if(e[i]%t===0){r[i]=e[i]/t;break}if(t%e[i]!==0)throw Error(`cannot convert shape`);r[i]=1,t/=e[i],i--}for(i--;i>=0;i--)r[i]=e[i];return r}static sizeFromDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeFromDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,n,t.length)}static sizeToDimension(t,n){if(n<0||n>t.length)throw Error(`invalid dimension of ${n} for sizeToDimension as Tensor has ${t.length} dimensions.`);return e.getSizeFromDimensionRange(t,0,n)}static getSizeFromDimensionRange(e,t,n){let r=1;for(let i=t;i=0;--r)n[r]=n[r+1]*e[r+1];return n}static normalizeAxis(e,t){if(e<-t&&e>=t)throw Error(`unsupported axis for this operation.`);return e<0?e+t:e}static normalizeAxes(e,t){return e.map(n=>this.normalizeAxis(n,t??e.length))}static sortBasedOnPerm(e,t){return t?t.map(t=>e[t]):e.slice().reverse()}static padShape(e,t){let n=e.length;return e.map((e,r)=>e+t[r]+t[r+n])}static areEqual(e,t){return e.length===t.length?e.every((e,n)=>e===t[n]):!1}},_n=class e{static adjustPoolAttributes(e,t,n,r,i,a){if(!e&&n.length!==t.length-2)throw Error(`length of specified kernel shapes should be 2 less than length of input dimensions`);if(e)for(let e=0;e=n.length?n.push(t[e+2]):n[e]=t[e+2];for(let e=0;e=n[e]||a[e+n.length]>=n[e])throw Error(`pads should be smaller than kernel`)}}static adjustPadsBasedOnAutoPad(t,n,r,i,a,o,s){if(s){if(a.length!==2*(t.length-2))throw Error(`length of pads should be twice the length of data dimensions`);if(n.length!==t.length-2)throw Error(`length of strides should be the length of data dimensions`);if(i.length!==t.length-2)throw Error(`length of kernel shapes should be the length of data dimensions`);for(let c=0;c{"use strict";H(),xn=(e,t)=>new(en(t))(e)}),Cn,wn,Tn,En,Dn,On,kn,An,jn,Mn,Nn=M(()=>{"use strict";mn(),Cn=(e,t=!0)=>{if(e.byteLength%8!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 8 (BigInt).`);let n=e.byteLength/8,r=new BigInt64Array(e.buffer,e.byteOffset,n),i=new Int32Array(n);for(let e=0;e2147483647n||t<-2147483648n)throw Error(`Overflow occurred when converting BigInt to Int32 at index ${e}: ${t}`);i[e]=Number(t)}return t?new Uint8Array(i.buffer):i},wn=(e,t=!0)=>{if(e.byteLength%4!=0)throw Error(`Invalid Uint8Array length - must be a multiple of 4 (Int32).`);let n=e.byteLength/4,r=new Int32Array(e.buffer,e.byteOffset,n),i=BigInt64Array.from(r,BigInt);return t?new Uint8Array(i.buffer):i},Tn=1,En=()=>Tn++,Dn=new Map([[`float32`,32],[`float16`,16],[`int32`,32],[`uint32`,32],[`int64`,64],[`uint64`,64],[`int8`,8],[`uint8`,8],[`int4`,4],[`uint4`,4]]),On=(e,t)=>{let n=Dn.get(e);if(!n)throw Error(`Unsupported data type.`);return t.length>0?Math.ceil(t.reduce((e,t)=>e*t)*n/8):0},kn=class{constructor(e){this.shouldConvertInt64toInt32=!1,this.isInt64ToInt32Converted=!1;let{sessionId:t,context:n,tensor:r,dataType:i,shape:a,shouldConvertInt64toInt32:o=!1}=e;this.sessionId=t,this.mlContext=n,this.mlTensor=r,this.dataType=i,this.tensorShape=a,this.shouldConvertInt64toInt32=o}get tensor(){return this.mlTensor}get type(){return this.dataType}get shape(){return this.tensorShape}get byteLength(){return On(this.dataType,this.tensorShape)}destroy(){U(`verbose`,()=>`[WebNN] TensorWrapper.destroy`),this.mlTensor.destroy()}write(e){this.mlContext.writeTensor(this.mlTensor,e)}async read(e,t){if(e){let e=await this.mlContext.readTensor(this.mlTensor),n=wn(new Uint8Array(e));if(t){(t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)).set(n);return}else return n.buffer}else return t?this.mlContext.readTensor(this.mlTensor,t):this.mlContext.readTensor(this.mlTensor)}canReuseTensor(e,t,n){return this.mlContext===e&&this.dataType===t&&this.tensorShape.length===n.length&&this.tensorShape.every((e,t)=>e===n[t])}setIsInt64ToInt32Converted(e){this.isInt64ToInt32Converted=e}},An=class{constructor(e,t){this.tensorManager=e,this.wrapper=t}get tensorWrapper(){return this.wrapper}releaseTensor(){this.tensorWrapper&&(this.tensorManager.releaseTensor(this.tensorWrapper),this.wrapper=void 0)}async ensureTensor(e,t,n,r){let i=t,a=this.tensorManager.getMLContext(e),o=i===`int64`&&!a.opSupportLimits().input.dataTypes.includes(`int64`);if(o&&(i=`int32`,U(`verbose`,()=>`[WebNN] TensorIdTracker.ensureTensor: convert dataType from int64 to int32`)),this.wrapper){if(this.wrapper.canReuseTensor(a,i,n))return this.wrapper.tensor;if(r){if(this.wrapper.byteLength!==On(i,n))throw Error(`Unable to copy data to tensor with different size.`);this.activeUpload=new Uint8Array(await this.wrapper.read())}this.tensorManager.releaseTensor(this.wrapper)}let s=typeof MLTensorUsage>`u`?void 0:MLTensorUsage.READ|MLTensorUsage.WRITE;return this.wrapper=await this.tensorManager.getCachedTensor(e,i,n,s,!0,!0,o),r&&this.activeUpload&&(this.wrapper.write(this.activeUpload),this.activeUpload=void 0),this.wrapper.tensor}upload(e){let t=e;if(this.wrapper)if(this.wrapper.shouldConvertInt64toInt32&&(t=Cn(e,!0),this.wrapper.setIsInt64ToInt32Converted(!0)),t.byteLength===this.wrapper.byteLength){this.wrapper.write(t);return}else U(`verbose`,()=>`Data size does not match tensor size. Releasing tensor.`),this.releaseTensor();this.activeUpload?this.activeUpload.set(t):this.activeUpload=new Uint8Array(t)}async download(e){var t,n;if(this.activeUpload){var r;let t=(r=this.wrapper)?.isInt64ToInt32Converted?wn(this.activeUpload):this.activeUpload;if(e){e instanceof ArrayBuffer?new Uint8Array(e).set(t):new Uint8Array(e.buffer,e.byteOffset,e.byteLength).set(t);return}else return t.buffer}if(!this.wrapper)throw Error(`Tensor has not been created.`);return e?this.wrapper.read((t=this.wrapper)?.shouldConvertInt64toInt32,e):this.wrapper.read((n=this.wrapper)?.shouldConvertInt64toInt32)}},jn=class{constructor(e){this.backend=e,this.tensorTrackersById=new Map,this.freeTensors=[],this.externalTensors=new Set}getMLContext(e){let t=this.backend.getMLContext(e);if(!t)throw Error(`MLContext not found for session.`);return t}reserveTensorId(){let e=En();return this.tensorTrackersById.set(e,new An(this)),e}releaseTensorId(e){let t=this.tensorTrackersById.get(e);t&&(this.tensorTrackersById.delete(e),t.tensorWrapper&&this.releaseTensor(t.tensorWrapper))}async ensureTensor(e,t,n,r,i){U(`verbose`,()=>`[WebNN] TensorManager.ensureTensor {tensorId: ${t}, dataType: ${n}, shape: ${r}, copyOld: ${i}}`);let a=this.tensorTrackersById.get(t);if(!a)throw Error(`Tensor not found.`);return a.ensureTensor(e,n,r,i)}upload(e,t){let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);n.upload(t)}async download(e,t){U(`verbose`,()=>`[WebNN] TensorManager.download {tensorId: ${e}, dstBuffer: ${t?.byteLength}}`);let n=this.tensorTrackersById.get(e);if(!n)throw Error(`Tensor not found.`);return n.download(t)}releaseTensorsForSession(e){for(let t of this.freeTensors)t.sessionId===e&&t.destroy();this.freeTensors=this.freeTensors.filter(t=>t.sessionId!==e)}registerTensor(e,t,n,r){let i=this.getMLContext(e),a=En(),o=new kn({sessionId:e,context:i,tensor:t,dataType:n,shape:r});return this.tensorTrackersById.set(a,new An(this,o)),this.externalTensors.add(o),a}async getCachedTensor(e,t,n,r,i,a,o=!1){let s=this.getMLContext(e);for(let[r,i]of this.freeTensors.entries())if(i.canReuseTensor(s,t,n)){U(`verbose`,()=>`[WebNN] Reusing tensor {dataType: ${t}, shape: ${n}}`);let i=this.freeTensors.splice(r,1)[0];return i.sessionId=e,i}U(`verbose`,()=>`[WebNN] MLContext.createTensor {dataType: ${t}, shape: ${n}}`);let c=await s.createTensor({dataType:t,shape:n,dimensions:n,usage:r,writable:i,readable:a});return new kn({sessionId:e,context:s,tensor:c,dataType:t,shape:n,shouldConvertInt64toInt32:o})}releaseTensor(e){this.externalTensors.has(e)&&this.externalTensors.delete(e),this.freeTensors.push(e)}},Mn=(...e)=>new jn(...e)}),Pn,Fn,In,Ln=M(()=>{"use strict";H(),Lt(),Sn(),Nn(),mn(),Pn=new Map([[1,`float32`],[10,`float16`],[6,`int32`],[12,`uint32`],[7,`int64`],[13,`uint64`],[22,`int4`],[21,`uint4`],[3,`int8`],[2,`uint8`],[9,`uint8`]]),Fn=(e,t)=>{if(e===t)return!0;if(e===void 0||t===void 0)return!1;let n=Object.keys(e).sort(),r=Object.keys(t).sort();return n.length===r.length&&n.every((n,i)=>n===r[i]&&e[n]===t[n])},In=class{constructor(e){this.tensorManager=Mn(this),this.mlContextBySessionId=new Map,this.sessionIdsByMLContext=new Map,this.mlContextCache=[],this.sessionGraphInputs=new Map,this.temporaryGraphInputs=[],this.temporarySessionTensorIds=new Map,fn(e.logLevel,!!e.debug)}get currentSessionId(){if(this.activeSessionId===void 0)throw Error(`No active session`);return this.activeSessionId}onRunStart(e){U(`verbose`,()=>`[WebNN] onRunStart {sessionId: ${e}}`),this.activeSessionId=e}onRunEnd(e){U(`verbose`,()=>`[WebNN] onRunEnd {sessionId: ${e}}`);let t=this.temporarySessionTensorIds.get(e);if(t){for(let e of t)U(`verbose`,()=>`[WebNN] releasing temporary tensor {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e);this.temporarySessionTensorIds.delete(e),this.activeSessionId=void 0}}async createMLContext(e){if(e instanceof GPUDevice){let t=this.mlContextCache.findIndex(t=>t.gpuDevice===e);if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({gpuDevice:e,mlContext:t}),t}}else if(e===void 0){let e=this.mlContextCache.findIndex(e=>e.options===void 0&&e.gpuDevice===void 0);if(e!==-1)return this.mlContextCache[e].mlContext;{let e=await navigator.ml.createContext();return this.mlContextCache.push({mlContext:e}),e}}let t=this.mlContextCache.findIndex(t=>Fn(t.options,e));if(t!==-1)return this.mlContextCache[t].mlContext;{let t=await navigator.ml.createContext(e);return this.mlContextCache.push({options:e,mlContext:t}),t}}registerMLContext(e,t){this.mlContextBySessionId.set(e,t);let n=this.sessionIdsByMLContext.get(t);n||(n=new Set,this.sessionIdsByMLContext.set(t,n)),n.add(e),this.temporaryGraphInputs.length>0&&(this.sessionGraphInputs.set(e,this.temporaryGraphInputs),this.temporaryGraphInputs=[])}onReleaseSession(e){this.sessionGraphInputs.delete(e);let t=this.mlContextBySessionId.get(e);if(!t)return;this.tensorManager.releaseTensorsForSession(e),this.mlContextBySessionId.delete(e);let n=this.sessionIdsByMLContext.get(t);if(n.delete(e),n.size===0){this.sessionIdsByMLContext.delete(t);let e=this.mlContextCache.findIndex(e=>e.mlContext===t);e!==-1&&this.mlContextCache.splice(e,1)}}getMLContext(e){return this.mlContextBySessionId.get(e)}reserveTensorId(){return this.tensorManager.reserveTensorId()}releaseTensorId(e){U(`verbose`,()=>`[WebNN] releaseTensorId {tensorId: ${e}}`),this.tensorManager.releaseTensorId(e)}async ensureTensor(e,t,n,r,i){let a=Pn.get(n);if(!a)throw Error(`Unsupported ONNX data type: ${n}`);return this.tensorManager.ensureTensor(e??this.currentSessionId,t,a,r,i)}async createTemporaryTensor(e,t,n){U(`verbose`,()=>`[WebNN] createTemporaryTensor {onnxDataType: ${t}, shape: ${n}}`);let r=Pn.get(t);if(!r)throw Error(`Unsupported ONNX data type: ${t}`);let i=this.tensorManager.reserveTensorId();await this.tensorManager.ensureTensor(e,i,r,n,!1);let a=this.temporarySessionTensorIds.get(e);return a?a.push(i):this.temporarySessionTensorIds.set(e,[i]),i}uploadTensor(e,t){if(!It().shouldTransferToMLTensor)throw Error(`Trying to upload to a MLTensor while shouldTransferToMLTensor is false`);U(`verbose`,()=>`[WebNN] uploadTensor {tensorId: ${e}, data: ${t.byteLength}}`),this.tensorManager.upload(e,t)}async downloadTensor(e,t){return this.tensorManager.download(e,t)}createMLTensorDownloader(e,t){return async()=>{let n=await this.tensorManager.download(e);return xn(n,t)}}registerMLTensor(e,t,n,r){let i=Pn.get(n);if(!i)throw Error(`Unsupported ONNX data type: ${n}`);let a=this.tensorManager.registerTensor(e,t,i,r);return U(`verbose`,()=>`[WebNN] registerMLTensor {tensor: ${t}, dataType: ${i}, dimensions: ${r}} -> {tensorId: ${a}}`),a}registerMLConstant(e,t,n,r,i,a,o=!1){if(!a)throw Error(`External mounted files are not available.`);let s=e;e.startsWith(`./`)&&(s=e.substring(2));let c=a.get(s);if(!c)throw Error(`File with name ${s} not found in preloaded files.`);if(t+n>c.byteLength)throw Error(`Out of bounds: data offset and length exceed the external file data size.`);let l=c.slice(t,t+n).buffer,u;switch(i.dataType){case`float32`:u=new Float32Array(l);break;case`float16`:u=typeof Float16Array<`u`&&Float16Array.from?new Float16Array(l):new Uint16Array(l);break;case`int32`:u=new Int32Array(l);break;case`uint32`:u=new Uint32Array(l);break;case`int64`:o?(u=Cn(new Uint8Array(l),!1),i.dataType=`int32`):u=new BigInt64Array(l);break;case`uint64`:u=new BigUint64Array(l);break;case`int8`:u=new Int8Array(l);break;case`int4`:case`uint4`:case`uint8`:u=new Uint8Array(l);break;default:throw Error(`Unsupported data type: ${i.dataType} in creating WebNN Constant from external data.`)}return U(`verbose`,()=>`[WebNN] registerMLConstant {dataType: ${i.dataType}, shape: ${i.shape}}} ${o?`(Note: it was int64 data type and registered to int32 as workaround)`:``}`),r.constant(i,u)}registerGraphInput(e){this.temporaryGraphInputs.push(e)}isGraphInput(e,t){let n=this.sessionGraphInputs.get(e);return n?n.includes(t):!1}isInt64Supported(e){var t;return!!(t=this.mlContextBySessionId.get(e))?.opSupportLimits().input.dataTypes.includes(`int64`)}flush(){}}}),Rn=M(()=>{"use strict";}),zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn=M(()=>{"use strict";mn(),Rn(),zn=new Map([[64,250],[128,200],[256,200],[512,200],[2048,230],[4096,200],[8192,50],[16384,50],[32768,50],[65536,50],[131072,50],[262144,50],[524288,50],[1048576,50],[2097152,30],[4194304,20],[8388608,10],[12582912,10],[16777216,10],[26214400,15],[33554432,22],[44236800,2],[58982400,6],[67108864,6],[134217728,6],[167772160,6]]),Bn=[],Vn=e=>Math.ceil(Number(e)/16)*16,Hn=e=>{for(let t=0;tUn++,Gn=async(e,t,n,r)=>{let i=Vn(n),a=e.device.createBuffer({size:i,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ});try{let o=e.getCommandEncoder();e.endComputePass(),o.copyBufferToBuffer(t,0,a,0,i),e.flush(),await a.mapAsync(GPUMapMode.READ);let s=a.getMappedRange();if(r){let e=r();return e.set(new Uint8Array(s,0,n)),e}else return new Uint8Array(s.slice(0,n))}finally{a.destroy()}},Kn=class{constructor(e){this.backend=e,this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.buffersPending=[],this.capturedPendingBuffers=new Map;for(let[e]of zn)Bn.push(e),this.freeBuffers.set(e,[]),this.freeUniformBuffers.set(e,[]);this.sessionCount=0}upload(e,t){let n=t.buffer,r=t.byteOffset,i=t.byteLength,a=Vn(i),o=this.storageCache.get(e);if(!o)throw Error(`gpu data for uploading does not exist`);if(Number(o.originalSize)!==i)throw Error(`inconsistent data size. gpu data size=${o.originalSize}, data size=${i}`);let s=this.backend.device.createBuffer({mappedAtCreation:!0,size:a,usage:GPUBufferUsage.MAP_WRITE|GPUBufferUsage.COPY_SRC}),c=s.getMappedRange();new Uint8Array(c).set(new Uint8Array(n,r,i)),s.unmap();let l=this.backend.device.createCommandEncoder();l.copyBufferToBuffer(s,0,o.gpuData.buffer,0,a),this.backend.device.queue.submit([l.finish()]),s.destroy(),U(`verbose`,()=>`[WebGPU] GpuDataManager.upload(id=${e})`)}memcpy(e,t){let n=this.storageCache.get(e);if(!n)throw Error(`source gpu data for memcpy does not exist`);let r=this.storageCache.get(t);if(!r)throw Error(`destination gpu data for memcpy does not exist`);if(n.originalSize!==r.originalSize)throw Error(`inconsistent source and destination gpu data size`);let i=Vn(n.originalSize),a=this.backend.getCommandEncoder();this.backend.endComputePass(),a.copyBufferToBuffer(n.gpuData.buffer,0,r.gpuData.buffer,0,i)}registerExternalBuffer(e,t,n){let r;if(n){if(r=n[0],e===n[1])return U(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, buffer is the same, skip.`),r;if(this.backend.capturedCommandList.has(this.backend.currentSessionId))throw Error(`Registering a different external buffer under graph capture mode is not supported yet. - Please use the previous external buffer!`)}else r=Wn();return this.storageCache.set(r,{gpuData:{id:r,type:0,buffer:e},originalSize:t}),U(`verbose`,()=>`[WebGPU] GpuDataManager.registerExternalBuffer(size=${t}) => id=${r}, registered.`),r}unregisterExternalBuffer(e){e!==void 0&&(this.storageCache.delete(e),U(`verbose`,()=>`[WebGPU] GpuDataManager.unregisterExternalBuffer() => id=${e}`))}create(e,t=GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_SRC|GPUBufferUsage.COPY_DST){let n=Hn(e),r,i=(t&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE,a=(t&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM;if(i||a){let e=(i?this.freeBuffers:this.freeUniformBuffers).get(n);r=e&&e.length>0?e.pop():this.backend.device.createBuffer({size:n,usage:t})}else r=this.backend.device.createBuffer({size:n,usage:t});let o={id:Wn(),type:0,buffer:r};return this.storageCache.set(o.id,{gpuData:o,originalSize:Number(e)}),U(`verbose`,()=>`[WebGPU] GpuDataManager.create(size=${e}) => id=${o.id}`),o}get(e){var t;return(t=this.storageCache.get(e))?.gpuData}release(e){let t=typeof e==`bigint`?Number(e):e,n=this.storageCache.get(t);if(!n){if(this.storageCache.size===0)return 0;throw Error(`releasing data does not exist`)}return U(`verbose`,()=>`[WebGPU] GpuDataManager.release(id=${t}), gpuDataId=${n.gpuData.id}`),this.storageCache.delete(t),this.buffersPending.push(n.gpuData.buffer),n.originalSize}async download(e,t){let n=this.storageCache.get(Number(e));if(!n)throw Error(`data does not exist`);await Gn(this.backend,n.gpuData.buffer,n.originalSize,t)}refreshPendingBuffers(){if(this.buffersPending.length!==0)if(this.backend.sessionStatus===`default`){for(let e of this.buffersPending){let t=zn.get(e.size);if((e.usage&GPUBufferUsage.STORAGE)===GPUBufferUsage.STORAGE){let n=this.freeBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else if((e.usage&GPUBufferUsage.UNIFORM)===GPUBufferUsage.UNIFORM){let n=this.freeUniformBuffers.get(e.size)||[];t===void 0||n.length>=t?e.destroy():n.push(e)}else e.destroy()}this.buffersPending=[]}else{let e=this.capturedPendingBuffers.get(this.backend.currentSessionId);e||(e=[],this.capturedPendingBuffers.set(this.backend.currentSessionId,e));for(let t of this.buffersPending)e.push(t);this.buffersPending=[]}}dispose(){this.freeBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.freeUniformBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.capturedPendingBuffers.forEach(e=>{e.forEach(e=>{e.destroy()})}),this.storageCache=new Map,this.freeBuffers=new Map,this.freeUniformBuffers=new Map,this.capturedPendingBuffers=new Map}onCreateSession(){this.sessionCount+=1}onReleaseSession(e){let t=this.capturedPendingBuffers.get(e);t&&(t.forEach(e=>{e.destroy()}),this.capturedPendingBuffers.delete(e)),--this.sessionCount,this.sessionCount===0&&(U(`warning`,()=>`[WebGPU] Clearing webgpu buffer cache`),this.storageCache.forEach(e=>{e.gpuData.buffer.destroy()}),this.storageCache=new Map)}},qn=(...e)=>new Kn(...e)}),Yn,Xn,Zn=M(()=>{"use strict";Yn=class{constructor(e){Object.assign(this,e)}get cacheKey(){return this.key||=Object.getOwnPropertyNames(this).sort().map(e=>`${this[e]}`).join(`;`),this.key}},Xn=e=>new Yn(e)}),Qn,$n,er,tr,K,nr,rr,ir,ar,q,or,J,Y,sr,cr,lr,ur,X=M(()=>{"use strict";H(),G(),Qn=64,$n=(e,t)=>{if(t===3)throw Error(`vec3 has same alignment as vec4, use vec4 instead`);switch(Number(e)){case 10:return t>1?`vec${t}`:`f16`;case 1:return t>1?`vec${t}`:`f32`;case 6:return t>1?`vec${t}`:`i32`;case 12:return t>1?`vec${t}`:`u32`;case 7:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`i32`];case 13:if(t>1)throw Error(`currently not supported vecX of uint64 yet`);return[`vec2`,`u32`];case 9:if(t!==4)throw Error(`bool must be vec4`);return[`u32`,`vec4`];case 22:return`i32`;case 21:return`u32`;default:throw Error(`Unknown data type: ${e}`)}},er=(e,t=1)=>{let n=$n(e,t);return typeof n==`string`?n:n[0]},tr=(e,t=1)=>{let n=$n(e,t);return typeof n==`string`?n:n[1]},K=(...e)=>{let t=[];return e.forEach(e=>{e.length!==0&&t.push({type:12,data:e},{type:12,data:W.computeStrides(e)})}),t},nr=e=>e%4==0?4:e%2==0?2:1,rr=(e=`f32`,t,n=`0`)=>!t||t===1?`${e}(${n})`:`vec${t}<${e}>(${n})`,ir=(e,t,n)=>e===`f32`?n:t===1?`f32(${n})`:`vec${t}(${n})`,ar=(e,t)=>t===4?`(${e}.x + ${e}.y + ${e}.z + ${e}.w)`:t===2?`(${e}.x + ${e}.y)`:t===3?`(${e}.x + ${e}.y + ${e}.z)`:e,q=(e,t,n,r)=>e.startsWith(`uniforms.`)&&n>4?typeof t==`string`?r===`f16`?`${e}[(${t}) / 8][(${t}) % 8 / 4][(${t}) % 8 % 4]`:`${e}[(${t}) / 4][(${t}) % 4]`:r===`f16`?`${e}[${Math.floor(t/8)}][${Math.floor(t%8/4)}][${t%8%4}]`:`${e}[${Math.floor(t/4)}][${t%4}]`:n>1?`${e}[${t}]`:e,or=(e,t,n,r,i)=>{let a=typeof n==`number`,o=a?n:n.length,s=[...Array(o).keys()],c=o<2?`u32`:o<=4?`vec${o}`:`array`,l=$n(t,i),u=typeof l==`string`?l:l[1],d=typeof l==`string`?l:l[0],f={indices:c,value:u,storage:d,tensor:t},p=e=>typeof e==`string`?e:`${e}u`,m={offsetToIndices:!1,indicesToOffset:!1,broadcastedIndicesToOffset:!1,set:!1,setByIndices:!1,get:!1,getByIndices:!1},h=a?`uniforms.`:``,g=`${h}${e}_shape`,_=`${h}${e}_strides`,v=``;for(let e=0;e ${f.indices} { - var indices: ${f.indices}; - var current = offset; - ${v} - return indices; - }`,b=t=>(m.offsetToIndices=!0,o<2?t:`o2i_${e}(${t})`),x=[];if(o>=2)for(let e=o-1;e>=0;e--)x.push(`${q(_,e,o)} * (indices[${e}])`);let S=o<2?``:` - fn i2o_${e}(indices: ${f.indices}) -> u32 { - return ${x.join(`+`)}; - }`,C=t=>(m.indicesToOffset=!0,o<2?t:`i2o_${e}(${t})`),w=(...e)=>o===0?`0u`:`${f.indices}(${e.map(p).join(`,`)})`,T=(e,t)=>o<2?`${e}`:`${q(e,t,o)}`,E=(e,t,n)=>o<2?`${e}=${n};`:`${q(e,t,o)}=${n};`,D={},O=(t,n)=>{m.broadcastedIndicesToOffset=!0;let r=`${n.name}broadcastedIndicesTo${e}Offset`;if(r in D)return`${r}(${t})`;let i=[];for(let e=o-1;e>=0;e--){let t=n.indicesGet(`outputIndices`,e+n.rank-o);i.push(`${T(_,e)} * (${t} % ${T(g,e)})`)}return D[r]=`fn ${r}(outputIndices: ${n.type.indices}) -> u32 { - return ${i.length>0?i.join(`+`):`0u`}; - }`,`${r}(${t})`},k=(t,n)=>(()=>{if(f.storage===f.value)return`${e}[${t}]=${n};`;if(f.storage===`vec2`&&f.value===`i32`)return`${e}[${t}]=vec2(u32(${n}), select(0u, 0xFFFFFFFFu, ${n} < 0));`;if(f.storage===`vec2`&&f.value===`u32`)return`${e}[${t}]=vec2(u32(${n}), 0u);`;if(f.storage===`u32`&&f.value===`vec4`)return`${e}[${t}]=dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(${n}));`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),A=t=>(()=>{if(f.storage===f.value)return`${e}[${t}]`;if(f.storage===`vec2`&&f.value===`i32`)return`i32(${e}[${t}].x)`;if(f.storage===`vec2`&&f.value===`u32`)return`u32(${e}[${t}].x)`;if(f.storage===`u32`&&f.value===`vec4`)return`vec4(bool(${e}[${t}] & 0xFFu), bool(${e}[${t}] & 0xFF00u), bool(${e}[${t}] & 0xFF0000u), bool(${e}[${t}] & 0xFF000000u))`;throw Error(`not supported combination of storage type ${f.storage} and value type ${f.value} yet`)})(),ee=o<2?``:` - fn get_${e}ByIndices(indices: ${f.indices}) -> ${u} { - return ${A(`i2o_${e}(indices)`)}; - }`,te=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` - fn get_${e}(${t}) -> ${u} { - return get_${e}ByIndices(${w(n)}); - }`})(),ne=(...t)=>{if(t.length!==o)throw Error(`indices length must be ${o}`);let n=t.map(p).join(`,`);return o===0?A(`0u`):o===1?A(n[0]):(m.get=!0,m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}(${n})`)},re=t=>o<2?A(t):(m.getByIndices=!0,m.indicesToOffset=!0,`get_${e}ByIndices(${t})`),j=o<2?``:` - fn set_${e}ByIndices(indices: ${f.indices}, value: ${u}) { - ${k(`i2o_${e}(indices)`,`value`)} - }`,ie=o<2?``:(()=>{let t=s.map(e=>`d${e}: u32`).join(`, `),n=s.map(e=>`d${e}`).join(`, `);return` - fn set_${e}(${t}, value: ${u}) { - set_${e}ByIndices(${w(n)}, value); - }`})();return{impl:()=>{let e=[],t=!1;return m.offsetToIndices&&(e.push(y),t=!0),m.indicesToOffset&&(e.push(S),t=!0),m.broadcastedIndicesToOffset&&(Object.values(D).forEach(t=>e.push(t)),t=!0),m.set&&(e.push(ie),t=!0),m.setByIndices&&(e.push(j),t=!0),m.get&&(e.push(te),t=!0),m.getByIndices&&(e.push(ee),t=!0),!a&&t&&e.unshift(`const ${g} = ${f.indices}(${n.join(`,`)});`,`const ${_} = ${f.indices}(${W.computeStrides(n).join(`,`)});`),e.join(` -`)},type:f,offsetToIndices:b,indicesToOffset:C,broadcastedIndicesToOffset:O,indices:w,indicesGet:T,indicesSet:E,set:(...t)=>{if(t.length!==o+1)throw Error(`indices length must be ${o}`);let n=t[o];if(typeof n!=`string`)throw Error(`value must be string`);let r=t.slice(0,o).map(p).join(`,`);return o===0?k(`0u`,n):o===1?k(r[0],n):(m.set=!0,m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}(${r}, ${n})`)},setByOffset:k,setByIndices:(t,n)=>o<2?k(t,n):(m.setByIndices=!0,m.indicesToOffset=!0,`set_${e}ByIndices(${t}, ${n});`),get:ne,getByOffset:A,getByIndices:re,usage:r,name:e,strides:_,shape:g,rank:o}},J=(e,t,n,r=1)=>or(e,t,n,`input`,r),Y=(e,t,n,r=1)=>or(e,t,n,`output`,r),sr=(e,t,n)=>or(e,t,n,`atomicOutput`,1),cr=(e,t,n,r=1)=>or(e,t,n,`internal`,r),lr=class{constructor(e,t){this.normalizedDispatchGroup=e,this.limits=t,this.internalVariables=[],this.variables=[],this.uniforms=[],this.variableIndex=0}guardAgainstOutOfBoundsWorkgroupSizes(e){return`if (global_idx >= ${typeof e==`number`?`${e}u`:e}) { return; }`}mainStart(e=Qn){let t=typeof e==`number`?e:e[0],n=typeof e==`number`?1:e[1],r=typeof e==`number`?1:e[2];if(t>this.limits.maxComputeWorkgroupSizeX||n>this.limits.maxComputeWorkgroupSizeY||r>this.limits.maxComputeWorkgroupSizeZ)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup size [${this.limits.maxComputeWorkgroupSizeX}, ${this.limits.maxComputeWorkgroupSizeY}, ${this.limits.maxComputeWorkgroupSizeZ}].`);if(t*n*r>this.limits.maxComputeInvocationsPerWorkgroup)throw Error(`workgroup size [${t}, ${n}, ${r}] exceeds the maximum workgroup invocations ${this.limits.maxComputeInvocationsPerWorkgroup}.`);let i=this.normalizedDispatchGroup[1]===1&&this.normalizedDispatchGroup[2]===1,a=i?`@builtin(global_invocation_id) global_id : vec3, - @builtin(workgroup_id) workgroup_id : vec3, - @builtin(local_invocation_index) local_idx : u32, - @builtin(local_invocation_id) local_id : vec3`:`@builtin(global_invocation_id) global_id : vec3, - @builtin(local_invocation_id) local_id : vec3, - @builtin(local_invocation_index) local_idx : u32, - @builtin(workgroup_id) workgroup_id : vec3, - @builtin(num_workgroups) num_workgroups : vec3`,o=i?`let global_idx = global_id.x; - let workgroup_index = workgroup_id.x;`:`let workgroup_index = workgroup_id.z * num_workgroups[0] * num_workgroups[1] + - workgroup_id.y * num_workgroups[0] + workgroup_id.x; - let global_idx = workgroup_index * ${t*n*r}u + local_idx;`;return`@compute @workgroup_size(${t}, ${n}, ${r}) - fn main(${a}) { - ${o} - `}appendVariableUniforms(e){e.rank!==0&&(e.shape.startsWith(`uniforms.`)&&this.uniforms.push({name:e.shape.replace(`uniforms.`,``),type:`u32`,length:e.rank}),e.strides.startsWith(`uniforms.`)&&this.uniforms.push({name:e.strides.replace(`uniforms.`,``),type:`u32`,length:e.rank}))}declareVariable(e,t){if(e.usage===`internal`)throw Error(`cannot use internal variable with declareVariable(). use registerInternalVariables() instead.`);this.variables.push(e),this.appendVariableUniforms(e);let n=e.usage===`input`?`read`:`read_write`,r=e.usage===`atomicOutput`?`atomic`:e.type.storage;return`@group(0) @binding(${t}) var ${e.name}: array<${r}>;`}declareVariables(...e){return e.map(e=>this.declareVariable(e,this.variableIndex++)).join(` -`)}registerInternalVariable(e){if(e.usage!==`internal`)throw Error(`cannot use input or output variable with registerInternalVariable(). use declareVariables() instead.`);this.internalVariables.push(e),this.appendVariableUniforms(e)}registerInternalVariables(...e){return e.forEach(e=>this.registerInternalVariable(e)),this}registerUniform(e,t,n=1){return this.uniforms.push({name:e,type:t,length:n}),this}registerUniforms(e){return this.uniforms=this.uniforms.concat(e),this}uniformDeclaration(){if(this.uniforms.length===0)return``;let e=[];for(let{name:t,type:n,length:r}of this.uniforms)if(r&&r>4)n===`f16`?e.push(`@align(16) ${t}:array, ${Math.ceil(r/8)}>`):e.push(`${t}:array, ${Math.ceil(r/4)}>`);else{let i=r==null||r===1?n:`vec${r}<${n}>`;e.push(`${t}:${i}`)}return` - struct Uniforms { ${e.join(`, `)} }; - @group(0) @binding(${this.variableIndex}) var uniforms: Uniforms;`}get additionalImplementations(){return this.uniformDeclaration()+this.variables.map(e=>e.impl()).join(` -`)+this.internalVariables.map(e=>e.impl()).join(` -`)}get variablesInfo(){if(this.uniforms.length===0)return;let e=e=>[12,10,1,6][[`u32`,`f16`,`f32`,`i32`].indexOf(e)];return this.uniforms.map(t=>[e(t.type),t.length??1])}},ur=(e,t)=>new lr(e,t)}),dr,fr,pr,Z,mr,hr,gr,_r,vr,yr=M(()=>{"use strict";H(),G(),Zn(),X(),dr=(e,t)=>{if(!e||e.length!==1)throw Error(`Transpose requires 1 input.`);if(t.length!==0&&t.length!==e[0].dims.length)throw Error(`perm size ${t.length} does not match input rank ${e[0].dims.length}`)},fr=(e,t)=>t.length===0?[...Array(e).keys()].reverse():t,pr=(e,t)=>W.sortBasedOnPerm(e,fr(e.length,t)),Z=(e,t,n,r)=>{let i=`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { - var a: ${n.type.indices};`;for(let n=0;n{let n=[],r=[];for(let i=0;i{let n=0;for(let r=0;r{let n=e.dataType,r=e.dims.length,i=fr(r,t),a=pr(e.dims,i),o=e.dims,s=a,c=r<2||hr(i,e.dims),l;if(c)return l=e=>{let t=J(`input`,n,o,4),r=Y(`output`,n,s,4);return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(t,r)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - output[global_idx] = input[global_idx]; - }`},{name:`TransposeCopy`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let t=W.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64/4)},programUniforms:[{type:12,data:Math.ceil(t/4)}]}},getShaderSource:l};let{newShape:u,newPerm:d}=mr(e.dims,i),f=W.areEqual(d,[2,3,1]),p=W.areEqual(d,[3,1,2]);if(u.length===2||f||p){o=f?[u[0],u[1]*u[2]]:p?[u[0]*u[1],u[2]]:u,s=[o[1],o[0]];let t=16;return l=e=>{let r=J(`a`,n,o.length),i=Y(`output`,n,s.length);return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(r,i)} - var tile : array, ${t}>; - ${e.mainStart([t,t,1])} - let stride = (uniforms.output_shape[1] - 1) / ${t} + 1; - let workgroup_id_x = workgroup_index % stride; - let workgroup_id_y = workgroup_index / stride; - let input_col = workgroup_id_y * ${t}u + local_id.x; - let input_row = workgroup_id_x * ${t}u + local_id.y; - if (input_row < uniforms.a_shape[0] && input_col < uniforms.a_shape[1]) { - tile[local_id.y][local_id.x] = ${r.getByIndices(`${r.type.indices}(input_row, input_col)`)}; - } - workgroupBarrier(); - - let output_col = workgroup_id_x * ${t}u + local_id.x; - let output_row = workgroup_id_y * ${t}u + local_id.y; - if (output_row < uniforms.output_shape[0] && output_col < uniforms.output_shape[1]) { - ${i.setByIndices(`${i.type.indices}(output_row, output_col)`,`tile[local_id.x][local_id.y]`)} - } - }`},{name:`TransposeShared`,shaderCache:{inputDependencies:[`type`]},getRunData:()=>{let n=W.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(s[1]/t),y:Math.ceil(s[0]/t)},programUniforms:[{type:12,data:n},...K(o,s)]}},getShaderSource:l}}return l=e=>{let t=J(`a`,n,o.length),a=Y(`output`,n,s.length);return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(t,a)} - - ${Z(i,r,t,a)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let indices = ${a.offsetToIndices(`global_idx`)}; - let aIndices = perm(indices); - - ${a.setByOffset(`global_idx`,t.getByIndices(`aIndices`))} - }`},{name:`Transpose`,shaderCache:{hint:`${t}`,inputDependencies:[`rank`]},getRunData:()=>{let t=W.size(a);return{outputs:[{dims:a,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:[{type:12,data:t},...K(o,s)]}},getShaderSource:l}},_r=(e,t)=>{dr(e.inputs,t.perm),e.compute(gr(e.inputs[0],t.perm))},vr=e=>Xn({perm:e.perm})}),br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar,jr,Mr,Nr,Pr,Fr,Ir,Lr,Rr,zr,Br,Vr=M(()=>{"use strict";H(),G(),X(),mi(),yr(),br={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate * candidate`,logSumExp:`bestValue + exp(candidate)`,l1:`bestValue + abs(candidate)`,l2:`bestValue + candidate * candidate`,logSum:`bestValue + candidate`},xr={max:`select(bestValue, candidate, candidate > bestValue)`,min:`select(bestValue, candidate, candidate < bestValue)`,mean:`bestValue + candidate`,sum:`bestValue + candidate`,prod:`bestValue * candidate`,sumSquare:`bestValue + candidate`,logSumExp:`bestValue + candidate`,l1:`bestValue + candidate`,l2:`bestValue + candidate`,logSum:`bestValue + candidate`},Sr={max:`_A[offset]`,min:`_A[offset]`,mean:`0`,sum:`0`,prod:`1`,sumSquare:`0`,logSumExp:`0`,l1:`0`,l2:`0`,logSum:`0`},Cr={max:`bestValue`,min:`bestValue`,sum:`bestValue`,prod:`bestValue`,sumSquare:`bestValue`,logSumExp:`log(bestValue)`,l1:`bestValue`,l2:`sqrt(bestValue)`,logSum:`log(bestValue)`},wr=(e,t)=>{let n=[];for(let r=t-e;r{let n=[],r=e.length;for(let i=0;ie[t]);return[n,i]},Er=(e,t)=>{let n=e.length+t.length,r=[],i=0;for(let a=0;a{for(let n=0;n{let n=[];if(!Dr(e,t)){for(let r=0;rn.push(e))}return n},kr=(e,t,n,r,i,a,o)=>{let s=n[0].dims,c=W.size(a),l=W.size(o),u=J(`_A`,n[0].dataType,s),d=Y(`output`,i,a),f=64;c===1&&(f=256);let p=` - var aBestValues : array; - `,m=e=>` - ${e.registerUniform(`reduceSize`,`u32`).declareVariables(u,d)} - ${p} - fn DIV_CEIL(a : u32, b : u32) -> u32 { - return ((a - 1u) / b + 1u); - } - ${e.mainStart(f)} - - let outputIndex = global_idx / ${f}; - let offset = outputIndex * uniforms.reduceSize; - - var bestValue = f32(${Sr[r]}); - let Length = uniforms.reduceSize; - for (var k = local_idx; k < Length; k = k + ${f}) { - let candidate = f32(${u.getByOffset(`offset + k`)}); - bestValue = ${br[r]}; - } - aBestValues[local_idx] = bestValue; - workgroupBarrier(); - - var reduceSize = min(Length, ${f}u); - for (var currentSize = reduceSize / 2u; reduceSize > 1u; - currentSize = reduceSize / 2u) { - let interval = DIV_CEIL(reduceSize, 2u); - if (local_idx < currentSize) { - let candidate = aBestValues[local_idx + interval]; - bestValue = ${xr[r]}; - aBestValues[local_idx] = bestValue; - } - reduceSize = interval; - workgroupBarrier(); - } - - if (local_idx == 0u) { - ${d.setByOffset(`outputIndex`,`${r===`mean`?`${d.type.storage}(bestValue / f32(uniforms.reduceSize))`:`${d.type.storage}(${Cr[r]})`}`)}; - } - }`;return{name:e,shaderCache:{hint:`${t};${f}`,inputDependencies:[`type`]},getShaderSource:m,getRunData:()=>({outputs:[{dims:a,dataType:i}],dispatchGroup:{x:c},programUniforms:[{type:12,data:l}]})}},Ar=(e,t,n,r)=>{let i=e.inputs.length===1?n:Gr(e.inputs,n),a=i.axes;a.length===0&&!i.noopWithEmptyAxes&&(a=e.inputs[0].dims.map((e,t)=>t));let o=W.normalizeAxes(a,e.inputs[0].dims.length),s=o,c=e.inputs[0],l=Or(s,e.inputs[0].dims.length);l.length>0&&(c=e.compute(gr(e.inputs[0],l),{inputs:[0],outputs:[-1]})[0],s=wr(s.length,c.dims.length));let[u,d]=Tr(c.dims,s),f=u;i.keepDims&&(f=Er(u,o)),e.compute(kr(t,i.cacheKey,[c],r,e.inputs[0].dataType,f,d),{inputs:[c]})},jr=(e,t)=>{Ar(e,`ReduceMeanShared`,t,`mean`)},Mr=(e,t)=>{Ar(e,`ReduceL1Shared`,t,`l1`)},Nr=(e,t)=>{Ar(e,`ReduceL2Shared`,t,`l2`)},Pr=(e,t)=>{Ar(e,`ReduceLogSumExpShared`,t,`logSumExp`)},Fr=(e,t)=>{Ar(e,`ReduceMaxShared`,t,`max`)},Ir=(e,t)=>{Ar(e,`ReduceMinShared`,t,`min`)},Lr=(e,t)=>{Ar(e,`ReduceProdShared`,t,`prod`)},Rr=(e,t)=>{Ar(e,`ReduceSumShared`,t,`sum`)},zr=(e,t)=>{Ar(e,`ReduceSumSquareShared`,t,`sumSquare`)},Br=(e,t)=>{Ar(e,`ReduceLogSumShared`,t,`logSum`)}}),Hr,Ur,Wr,Gr,Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi=M(()=>{"use strict";H(),G(),Zn(),X(),Vr(),Hr=e=>{if(!e||e.length===0||e.length>2)throw Error(`Reduce op requires 1 or 2 inputs.`);if(e.length===2&&e[1].dims.length!==1)throw Error(`Invalid axes input dims.`)},Ur=e=>[``,``,`var value = ${e.getByIndices(`input_indices`)};`,``],Wr=(e,t,n,r,i,a,o=!1,s=!1)=>{let c=[],l=n[0].dims,u=l.length,d=W.normalizeAxes(i,u),f=!s&&d.length===0;l.forEach((e,t)=>{f||d.indexOf(t)>=0?o&&c.push(1):c.push(e)});let p=c.length,m=W.size(c);return{name:e,shaderCache:t,getShaderSource:e=>{let t=[],i=J(`_A`,n[0].dataType,u),s=Y(`output`,a,p),c=r(i,s,d),m=c[2];for(let e=0,n=0;e=0?(o&&n++,m=`for(var j${e}: u32 = 0; j${e} < ${l[e]}; j${e}++) { - ${c[2].includes(`last_index`)?`let last_index = j${e};`:``} - ${i.indicesSet(`input_indices`,e,`j${e}`)} - ${m} - }`):(t.push(`${i.indicesSet(`input_indices`,e,s.indicesGet(`output_indices`,n))};`),n++);return` - - ${e.registerUniform(`output_size`,`u32`).declareVariables(i,s)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - var input_indices: ${i.type.indices}; - let output_indices = ${s.offsetToIndices(`global_idx`)}; - - ${t.join(` -`)} - ${c[0]} // init ops for reduce max/min - ${c[1]} - ${m} - ${c[3]} - ${c.length===4?s.setByOffset(`global_idx`,`value`):c.slice(4).join(` -`)} - }`},getRunData:()=>({outputs:[{dims:c,dataType:a}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:[{type:12,data:m},...K(l,c)]})}},Gr=(e,t)=>{let n=[];return e[1].dims[0]>0&&e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),Xn({axes:n,keepDims:t.keepDims,noopWithEmptyAxes:t.noopWithEmptyAxes})},Kr=(e,t,n,r)=>{let i=e.inputs,a=i.length===1?n:Gr(i,n);e.compute(Wr(t,{hint:a.cacheKey,inputDependencies:[`rank`]},[i[0]],a.noopWithEmptyAxes&&a.axes.length===0?Ur:r,a.axes,i[0].dataType,a.keepDims,a.noopWithEmptyAxes),{inputs:[0]})},qr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceLogSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,`value = log(value);`])},Jr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceL1`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += abs(${e.getByIndices(`input_indices`)});`,``])},Yr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceL2`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += (t * t);`,`value = sqrt(value);`])},Xr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceLogSumExp`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += exp(${e.getByIndices(`input_indices`)});`,`value = log(value);`])},Zr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceMax`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(e.indicesSet(`input_indices`,t,0));return[`${r.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = max(value, ${e.getByIndices(`input_indices`)});`,``]})},Qr=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceMean`,t,(t,n,r)=>{let i=1;for(let n=0;n=0||r.length===0)&&(i*=e.inputs[0].dims[n]);return[`var sum = f32(0);`,``,`sum += f32(${t.getByIndices(`input_indices`)});`,`let value = ${n.type.value}(sum / ${i});`]})},$r=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceMin`,t,(e,t,n)=>{let r=[];for(let t=0;t=0||n.length===0)&&r.push(`input_indices[${t}] = 0;`);return[`${r.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)};`,`value = min(value, ${e.getByIndices(`input_indices`)});`,``]})},ei=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceProd`,t,(e,t)=>[`var value = ${t.type.storage}(1);`,``,`value *= ${e.getByIndices(`input_indices`)};`,``])},ti=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceSum`,t,(e,t)=>[`var value = ${t.type.storage}(0);`,``,`value += ${e.getByIndices(`input_indices`)};`,``])},ni=(e,t)=>{Hr(e.inputs),Kr(e,`ReduceSumSquare`,t,(e,t)=>[`var t = ${t.type.value}(0); var value = ${t.type.value}(0);`,``,`t = ${e.getByIndices(`input_indices`)}; value += t * t;`,``])},ri=(e,t,n)=>{if(t.length===0)return n;let r=1,i=1;for(let n=0;n1024},ii=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Qr(e,t):jr(e,t)},ai=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Jr(e,t):Mr(e,t)},oi=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Yr(e,t):Nr(e,t)},si=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Xr(e,t):Pr(e,t)},ci=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?Zr(e,t):Fr(e,t)},li=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?$r(e,t):Ir(e,t)},ui=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ei(e,t):Lr(e,t)},di=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ti(e,t):Rr(e,t)},fi=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?ni(e,t):zr(e,t)},pi=(e,t)=>{ri(e.inputs[0].dims,t.axes,t.noopWithEmptyAxes)?qr(e,t):Br(e,t)}}),hi,gi,_i,vi,yi=M(()=>{"use strict";H(),Zn(),mi(),hi=e=>{if(!e||e.length===0||e.length>2)throw Error(`ArgMinMaxOp op requires 1 or 2 inputs.`);if(e[0].dataType!==1)throw Error(`Invalid input type.`)},gi=(e,t)=>{hi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)}; -var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`<=`:`<`} value) { - value = ${e.getByIndices(`input_indices`)}; - best_index = i32(last_index); - }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Wr(`ArgMin`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},_i=(e,t)=>{hi(e.inputs);let n=(e,n,r)=>{let i=[];for(let t=0;t=0||r.length===0)&&i.push(`input_indices[${t}] = 0;`);return[`${i.join(` -`)}`,`var value = ${e.getByIndices(`input_indices`)}; -var best_index : i32 = 0;`,`if (${e.getByIndices(`input_indices`)} ${t.selectLastIndex>0?`>=`:`>`} value) { - value = ${e.getByIndices(`input_indices`)}; - best_index = i32(last_index); - }`,``,n.setByOffset(`global_idx`,`best_index`)]};e.compute(Wr(`argMax`,{hint:t.cacheKey,inputDependencies:[`rank`]},[e.inputs[0]],n,[t.axis],7,t.keepDims),{inputs:[0]})},vi=e=>Xn(e)}),bi,xi,Si,Ci,wi,Ti,Ei,Di,Oi=M(()=>{"use strict";H(),G(),Rn(),X(),bi=(e,t)=>{let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5];if(o&&s)throw Error(`Attention cannot have both past and attention_bias`);if(n.dims.length!==3)throw Error(`Input "input" must have 3 dimensions`);let c=n.dims[0],l=n.dims[1],u=n.dims[2];if(i.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimensions`);if(r.dims.length!==2)throw Error(`Input "weights" is expected to have 2 dimensions`);if(r.dims[0]!==u)throw Error(`Input 1 dimension 0 should have same length as dimension 2 of input 0`);if(i.dims[0]!==r.dims[1])throw Error(`Input "bias" dimension 0 should have same length as dimension 1 of input "weights"`);let d=i.dims[0]/3,f=d,p=f;if(t.qkvHiddenSizes.length>0){if(t.qkvHiddenSizes.length!==3)throw Error(`qkv_hidden_sizes attribute should have 3 elements`);for(let e of t.qkvHiddenSizes)if(e%t.numHeads!==0)throw Error(`qkv_hidden_sizes should be divisible by num_heads`);d=t.qkvHiddenSizes[0],f=t.qkvHiddenSizes[1],p=t.qkvHiddenSizes[2]}let m=l;if(d!==f)throw Error(`qkv_hidden_sizes first element should be same as the second`);if(i.dims[0]!==d+f+p)throw Error(`Input "bias" dimension 0 should have same length as sum of Q/K/V hidden sizes`);let h=0;if(o){if(f!==p)throw Error(`Input "past" expect k_hidden_size == v_hidden_size`);if(o.dims.length!==5)throw Error(`Input "past" must have 5 dimensions`);if(o.dims[0]!==2)throw Error(`Input "past" first dimension must be 2`);if(o.dims[1]!==c)throw Error(`Input "past" second dimension must be batch_size`);if(o.dims[2]!==t.numHeads)throw Error(`Input "past" third dimension must be num_heads`);if(o.dims[4]!==f/t.numHeads)throw Error(`Input "past" fifth dimension must be k_hidden_size / num_heads`);t.pastPresentShareBuffer||(h=o.dims[3])}let g=m+h,_=-1,v=0;if(a)throw Error(`Mask not supported`);if(o)throw Error(`past is not supported`);if(s){if(s.dims.length!==4)throw Error(`Input "attention_bias" must have 4 dimensions`);if(s.dims[0]!==c||s.dims[1]!==t.numHeads||s.dims[2]!==l||s.dims[3]!==g)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:c,sequenceLength:l,pastSequenceLength:h,kvSequenceLength:m,totalSequenceLength:g,maxSequenceLength:_,inputHiddenSize:u,hiddenSize:d,vHiddenSize:p,headSize:Math.floor(d/t.numHeads),vHeadSize:Math.floor(p/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:!1,qkvFormat:1}},xi=(e,t,n)=>t&&e?` - let total_sequence_length_input = u32(${t.getByOffset(`0`)}); - let present_sequence_length = max(total_sequence_length_input, uniforms.past_sequence_length); - let is_subsequent_prompt: bool = sequence_length > 1 && sequence_length != total_sequence_length_input; - let is_first_prompt: bool = is_subsequent_prompt == false && sequence_length == total_sequence_length_input; - total_sequence_length = u32(${e?.getByOffset(`batchIdx`)}) + 1; - var past_sequence_length: u32 = 0; - if (is_first_prompt == false) { - past_sequence_length = total_sequence_length - sequence_length; - } - `:` - ${n?`let past_sequence_length = uniforms.past_sequence_length`:``}; - let present_sequence_length = total_sequence_length; - `,Si=(e,t,n,r,i,a,o,s)=>{let c=nr(o?1:a),l=64,u=a/c;u{let n=Y(`x`,e.dataType,e.dims,c),r=[n],i=o?J(`seq_lens`,o.dataType,o.dims):void 0;i&&r.push(i);let a=s?J(`total_sequence_length_input`,s.dataType,s.dims):void 0;a&&r.push(a);let u=tr(e.dataType),d=[{name:`batch_size`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`total_sequence_length`,type:`u32`},{name:`elements_per_thread`,type:`u32`}];return` - var thread_max: array; - var thread_sum: array; - ${t.registerUniforms(d).declareVariables(...r)} - ${t.mainStart([l,1,1])} - let batchIdx = workgroup_id.z / uniforms.num_heads; - let headIdx = workgroup_id.z % uniforms.num_heads; - let sequence_length = uniforms.sequence_length; - var total_sequence_length = uniforms.total_sequence_length; - ${xi(i,a,!1)} - let local_offset = local_idx * uniforms.elements_per_thread; - let offset = (global_idx / ${l}) * uniforms.total_sequence_length + local_offset; - let seq_causal_length = ${o?`u32(past_sequence_length + workgroup_id.y + 1)`:`total_sequence_length`}; - var thread_max_vector = ${m}(-3.402823e+38f); - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - thread_max_vector = max(${m}(x[offset + i]), thread_max_vector); - } - thread_max[local_idx] = ${(()=>{switch(c){case 1:return`thread_max_vector`;case 2:return`max(thread_max_vector.x, thread_max_vector.y)`;case 4:return`max(max(thread_max_vector.x, thread_max_vector.y), max(thread_max_vector.z, thread_max_vector.w))`;default:throw Error(`Unsupported components: ${c}`)}})()}; - workgroupBarrier(); - - var max_value = f32(-3.402823e+38f); - for (var i = 0u; i < ${l}; i++) { - max_value = max(thread_max[i], max_value); - } - - var sum_vector = ${m}(0); - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - sum_vector += exp(${m}(x[offset + i]) - max_value); - } - thread_sum[local_idx] = ${(()=>{switch(c){case 1:return`sum_vector`;case 2:return`sum_vector.x + sum_vector.y`;case 4:return`sum_vector.x + sum_vector.y + sum_vector.z + sum_vector.w`;default:throw Error(`Unsupported components: ${c}`)}})()}; - workgroupBarrier(); - - var sum: f32 = 0; - for (var i = 0u; i < ${l}; i++) { - sum += thread_sum[i]; - } - - if (sum == 0) { - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - x[offset + i] = ${n.type.value}(${u}(1.0) / ${u}(seq_causal_length)); - } - } else { - for (var i: u32 = 0; i < uniforms.elements_per_thread && i + local_offset < seq_causal_length; i++) { - var f32input = ${m}(x[offset + i]); - x[offset + i] = ${n.type.value}(exp(f32input - max_value) / sum); - } - } - ${o?` - for (var total_seq_id: u32 = seq_causal_length; total_seq_id + local_offset < uniforms.total_sequence_length; total_seq_id++) { - x[offset + total_seq_id] = ${n.type.value}(${u}(0)); - }`:``}; - }`};return{name:`AttentionProbsSoftmax`,shaderCache:{hint:`${l};${p};${c}`,inputDependencies:h},getShaderSource:g,getRunData:()=>({outputs:[],dispatchGroup:{x:1,y:i,z:t*n},programUniforms:f})}},Ci=(e,t,n,r,i,a,o,s,c)=>{let l=o+a.kvSequenceLength,u=[a.batchSize,a.numHeads,a.sequenceLength,l],d=e>1&&r,f=a.kvNumHeads?a.kvNumHeads:a.numHeads,p=d?[a.batchSize,f,l,a.headSize]:void 0,m=a.nReps?a.nReps:1,h=a.scale===0?1/Math.sqrt(a.headSize):a.scale,g=nr(a.headSize),_=a.headSize/g,v=12,y={x:Math.ceil(l/v),y:Math.ceil(a.sequenceLength/v),z:a.batchSize*a.numHeads},b=[{type:12,data:a.sequenceLength},{type:12,data:_},{type:12,data:l},{type:12,data:a.numHeads},{type:12,data:a.headSize},{type:1,data:h},{type:12,data:o},{type:12,data:a.kvSequenceLength},{type:12,data:m}],x=d&&r&&W.size(r.dims)>0,S=[`type`,`type`];x&&S.push(`type`),i&&S.push(`type`),s&&S.push(`type`),c&&S.push(`type`);let C=[{dims:u,dataType:t.dataType,gpuDataType:0}];d&&C.push({dims:p,dataType:t.dataType,gpuDataType:0});let w=e=>{let a=J(`q`,t.dataType,t.dims,g),o=J(`key`,n.dataType,n.dims,g),l=[a,o];if(x){let e=J(`past_key`,r.dataType,r.dims,g);l.push(e)}i&&l.push(J(`attention_bias`,i.dataType,i.dims));let f=s?J(`seq_lens`,s.dataType,s.dims):void 0;f&&l.push(f);let h=c?J(`total_sequence_length_input`,c.dataType,c.dims):void 0;h&&l.push(h);let _=Y(`output`,t.dataType,u),y=[_];d&&y.push(Y(`present_key`,t.dataType,p,g));let b=tr(1,g),S=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`alpha`,type:`f32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` - const TILE_SIZE = ${v}u; - - var tileQ: array<${a.type.storage}, ${v*v}>; - var tileK: array<${a.type.storage}, ${v*v}>; - ${e.registerUniforms(S).declareVariables(...l,...y)} - ${e.mainStart([v,v,1])} - // x holds the N and y holds the M - let headIdx = workgroup_id.z % uniforms.num_heads; - let kvHeadIdx = ${m===1?`headIdx`:`headIdx / uniforms.n_reps`}; - let kv_num_heads = ${m===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; - let batchIdx = workgroup_id.z / uniforms.num_heads; - let m = workgroup_id.y * TILE_SIZE; - let n = workgroup_id.x * TILE_SIZE; - let sequence_length = uniforms.M; - var total_sequence_length = uniforms.N; - ${xi(f,h,!0)} - let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; - let qOffset = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; - ${x&&d?`let pastKeyOffset = absKvHeadIdx * uniforms.past_sequence_length * uniforms.K;`:``}; - let kOffset = absKvHeadIdx * uniforms.kv_sequence_length * uniforms.K; - ${d?`let presentKeyOffset = absKvHeadIdx * uniforms.N * uniforms.K;`:``} - var value = ${b}(0); - for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { - if (global_id.y < uniforms.M && w + local_id.x < uniforms.K) { - tileQ[TILE_SIZE * local_id.y + local_id.x] = q[qOffset + local_id.y * uniforms.K + w + local_id.x]; - } - if (n + local_id.y < uniforms.N && w + local_id.x < uniforms.K) { - var idx = TILE_SIZE * local_id.y + local_id.x; - ${x&&d?` - if (n + local_id.y < past_sequence_length) { - tileK[idx] = past_key[pastKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; - } else if (n + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { - tileK[idx] = key[kOffset + (n + local_id.y - past_sequence_length) * uniforms.K + w + local_id.x]; - }`:` - if (n + local_id.y < uniforms.kv_sequence_length) { - tileK[idx] = key[kOffset + (n + local_id.y) * uniforms.K + w + local_id.x]; - }`} - ${d?`if (n + local_id.y < present_sequence_length) { - present_key[presentKeyOffset + (n + local_id.y) * uniforms.K + w + local_id.x] = tileK[idx]; - }`:``} - } - workgroupBarrier(); - - for (var k: u32 = 0u; k < TILE_SIZE && w+k < uniforms.K; k++) { - value += ${b}(tileQ[TILE_SIZE * local_id.y + k] * tileK[TILE_SIZE * local_id.x + k]); - } - - workgroupBarrier(); - } - - if (global_id.y < uniforms.M && global_id.x < total_sequence_length) { - let headOffset = workgroup_id.z * uniforms.M * uniforms.N; - let outputIdx = headOffset + global_id.y * uniforms.N + global_id.x; - var sum: f32 = ${(()=>{switch(g){case 1:return`value`;case 2:return`value.x + value.y`;case 4:return`value.x + value.y + value.z + value.w`;default:throw Error(`Unsupported components: ${g}`)}})()}; - output[outputIdx] = ${_.type.value} (sum * uniforms.alpha) + ${i?`attention_bias[outputIdx]`:`0.0`}; - } - }`};return{name:`AttentionProbs`,shaderCache:{hint:`${g};${i!==void 0};${r!==void 0};${e}`,inputDependencies:S},getRunData:()=>({outputs:C,dispatchGroup:y,programUniforms:b}),getShaderSource:w}},wi=(e,t,n,r,i,a,o=void 0,s=void 0)=>{let c=a+i.kvSequenceLength,l=i.nReps?i.nReps:1,u=i.vHiddenSize*l,d=e>1&&r,f=i.kvNumHeads?i.kvNumHeads:i.numHeads,p=d?[i.batchSize,f,c,i.headSize]:void 0,m=[i.batchSize,i.sequenceLength,u],h=12,g={x:Math.ceil(i.vHeadSize/h),y:Math.ceil(i.sequenceLength/h),z:i.batchSize*i.numHeads},_=[{type:12,data:i.sequenceLength},{type:12,data:c},{type:12,data:i.vHeadSize},{type:12,data:i.numHeads},{type:12,data:i.headSize},{type:12,data:u},{type:12,data:a},{type:12,data:i.kvSequenceLength},{type:12,data:l}],v=d&&r&&W.size(r.dims)>0,y=[`type`,`type`];v&&y.push(`type`),o&&y.push(`type`),s&&y.push(`type`);let b=[{dims:m,dataType:t.dataType,gpuDataType:0}];d&&b.push({dims:p,dataType:t.dataType,gpuDataType:0});let x=e=>{let i=J(`probs`,t.dataType,t.dims),a=J(`v`,n.dataType,n.dims),c=[i,a];v&&c.push(J(`past_value`,r.dataType,r.dims));let u=o?J(`seq_lens`,o.dataType,o.dims):void 0;o&&c.push(u);let f=s?J(`total_sequence_length_input`,s.dataType,s.dims):void 0;s&&c.push(f);let g=[Y(`output`,t.dataType,m)];d&&g.push(Y(`present_value`,t.dataType,p));let _=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`v_hidden_size`,type:`u32`},{name:`past_sequence_length`,type:`u32`},{name:`kv_sequence_length`,type:`u32`},{name:`n_reps`,type:`u32`}];return` - const TILE_SIZE = ${h}u; - var tileQ: array<${i.type.value}, ${h*h}>; - var tileV: array<${i.type.value}, ${h*h}>; - ${e.registerUniforms(_).declareVariables(...c,...g)} - ${e.mainStart([h,h,1])} - let headIdx = workgroup_id.z % uniforms.num_heads; - let batchIdx = workgroup_id.z / uniforms.num_heads; - let kvHeadIdx = ${l===1?`headIdx`:`headIdx / uniforms.n_reps`}; - let kv_num_heads = ${l===1?`uniforms.num_heads`:`uniforms.num_heads / uniforms.n_reps`}; - let m = global_id.y; - let n = global_id.x; - let sequence_length = uniforms.M; - var total_sequence_length = uniforms.K; - ${xi(u,f,!0)} - let offsetA = workgroup_id.z * uniforms.M * uniforms.K + m * uniforms.K; - let absKvHeadIdx = batchIdx * kv_num_heads + kvHeadIdx; // kvHeadIdx is relative to the batch - ${v&&d?`let pastValueOffset = absKvHeadIdx * uniforms.N * uniforms.past_sequence_length + n;`:``}; - let vOffset = absKvHeadIdx * uniforms.N * uniforms.kv_sequence_length + n; - ${d?`let presentValueOffset = absKvHeadIdx * uniforms.N * uniforms.K + n;`:``} - var value = ${i.type.storage}(0); - for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { - if (m < uniforms.M && w + local_id.x < uniforms.K) { - tileQ[TILE_SIZE * local_id.y + local_id.x] = probs[offsetA + w + local_id.x]; - } - if (n < uniforms.N && w + local_id.y < uniforms.K) { - var idx = TILE_SIZE * local_id.y + local_id.x; - ${v&&d?` - if (w + local_id.y < past_sequence_length) { - tileV[idx] = past_value[pastValueOffset + (w + local_id.y) * uniforms.N]; - } else if (w + local_id.y - past_sequence_length < uniforms.kv_sequence_length) { - tileV[idx] = v[vOffset + (w + local_id.y - past_sequence_length) * uniforms.N]; - } - `:` - if (w + local_id.y < uniforms.kv_sequence_length) { - tileV[idx] = v[vOffset + (w + local_id.y) * uniforms.N]; - }`} - ${d?` - if (w + local_id.y < present_sequence_length) { - present_value[presentValueOffset + (w + local_id.y) * uniforms.N] = tileV[idx]; - }`:``} - } - workgroupBarrier(); - for (var k: u32 = 0u; k < TILE_SIZE && w+k < total_sequence_length; k++) { - value += tileQ[TILE_SIZE * local_id.y + k] * tileV[TILE_SIZE * k + local_id.x]; - } - workgroupBarrier(); - } - - // we need to transpose output from BNSH_v to BSND_v - if (m < uniforms.M && n < uniforms.N) { - let outputIdx = batchIdx * uniforms.M * uniforms.v_hidden_size + m * uniforms.v_hidden_size - + headIdx * uniforms.N + n; - output[outputIdx] = value; - } - }`};return{name:`AttentionScore`,shaderCache:{hint:`${r!==void 0};${e}`,inputDependencies:y},getRunData:()=>({outputs:b,dispatchGroup:g,programUniforms:_}),getShaderSource:x}},Ti=(e,t,n,r,i,a,o,s,c,l,u=void 0,d=void 0)=>{let f=Math.min(e.outputCount,1+(o?1:0)+(s?1:0)),p=f>1?l.pastSequenceLength:0,m=p+l.kvSequenceLength,h=c&&W.size(c.dims)>0?c:void 0,g=[t,n];f>1&&o&&W.size(o.dims)>0&&g.push(o),h&&g.push(h),u&&g.push(u),d&&g.push(d);let _=e.compute(Ci(f,t,n,o,h,l,p,u,d),{inputs:g,outputs:f>1?[-1,1]:[-1]})[0];e.compute(Si(_,l.batchSize,l.numHeads,p,l.sequenceLength,m,u,d),{inputs:u&&d?[_,u,d]:[_],outputs:[]});let v=[_,r];f>1&&s&&W.size(s.dims)>0&&v.push(s),u&&v.push(u),d&&v.push(d),e.compute(wi(f,_,r,s,l,p,u,d),{inputs:v,outputs:f>1?[0,2]:[0]})},Ei=(e,t)=>{let n=[t.batchSize,t.numHeads,t.sequenceLength,t.headSize],r=t.sequenceLength,i=t.inputHiddenSize,a=t.headSize,o=12,s={x:Math.ceil(t.headSize/o),y:Math.ceil(t.sequenceLength/o),z:t.batchSize*t.numHeads},c=[e.inputs[0],e.inputs[1],e.inputs[2]],l=[{type:12,data:r},{type:12,data:i},{type:12,data:a},{type:12,data:t.numHeads},{type:12,data:t.headSize},{type:12,data:t.hiddenSize},{type:12,data:t.hiddenSize+t.hiddenSize+t.vHiddenSize}],u=e=>{let t=Y(`output_q`,c[0].dataType,n),r=Y(`output_k`,c[0].dataType,n),i=Y(`output_v`,c[0].dataType,n),a=J(`input`,c[0].dataType,c[0].dims),s=J(`weight`,c[1].dataType,c[1].dims),l=J(`bias`,c[2].dataType,c[2].dims),u=a.type.storage,d=[{name:`M`,type:`u32`},{name:`K`,type:`u32`},{name:`N`,type:`u32`},{name:`num_heads`,type:`u32`},{name:`head_size`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`ldb`,type:`u32`}];return` - const TILE_SIZE = ${o}u; - var tileInput: array<${u}, ${o*o}>; - var tileWeightQ: array<${u}, ${o*o}>; - var tileWeightK: array<${u}, ${o*o}>; - var tileWeightV: array<${u}, ${o*o}>; - ${e.registerUniforms(d).declareVariables(a,s,l,t,r,i)} - ${e.mainStart([o,o,1])} - let batchIndex = workgroup_id.z / uniforms.num_heads; - let headNumber = workgroup_id.z % uniforms.num_heads; - let m = global_id.y; - let n = global_id.x; - - let inputOffset = batchIndex * (uniforms.M * uniforms.K) + m * uniforms.K; - let biasOffsetQ = headNumber * uniforms.head_size; - let biasOffsetK = uniforms.hidden_size + biasOffsetQ; - let biasOffsetV = uniforms.hidden_size + biasOffsetK; - - var valueQ = ${u}(0); - var valueK = ${u}(0); - var valueV = ${u}(0); - for (var w: u32 = 0u; w < uniforms.K; w += TILE_SIZE) { - if (m < uniforms.M && w + local_id.x < uniforms.K) { - tileInput[TILE_SIZE * local_id.y + local_id.x] = input[inputOffset + w + local_id.x]; - } - if (n < uniforms.N && w + local_id.y < uniforms.K) { - let offset = n + (w + local_id.y) * uniforms.ldb; - tileWeightQ[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetQ + offset]; - tileWeightK[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetK + offset]; - tileWeightV[TILE_SIZE * local_id.y + local_id.x] = weight[biasOffsetV + offset]; - } - workgroupBarrier(); - for (var k: u32 = 0u; k({outputs:[{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0},{dims:n,dataType:e.inputs[0].dataType,gpuDataType:0}],dispatchGroup:s,programUniforms:l}),getShaderSource:u},{inputs:c,outputs:[-1,-1,-1]})},Di=(e,t)=>{let n=bi(e.inputs,t),[r,i,a]=Ei(e,n);return Ti(e,r,i,a,e.inputs[4],void 0,void 0,void 0,e.inputs[5],n)}}),ki,Ai,ji,Mi,Ni=M(()=>{"use strict";et(),H(),G(),Zn(),X(),ki=(e,t)=>{if(!e||e.length!==5)throw Error(`BatchNormalization requires 5 inputs`);let n=(e,t,n)=>{let r=t.length;if(r!==e.length)throw Error(`${n}: num dimensions != ${r}`);t.forEach((t,r)=>{if(t!==e[r])throw Error(`${n}: dim[${r}] do not match`)})};if(e[0].dims.length>1){let r=t.format===`NHWC`?t.spatial?e[0].dims.slice(-1):e[0].dims.slice(-1).concat(e[0].dims.slice(1,e[0].dims.length-1)):e[0].dims.slice(1,t.spatial?2:void 0);n(e[1].dims,r,`Invalid input scale`),n(e[2].dims,r,`Invalid input B`),n(e[3].dims,r,`Invalid input mean`),n(e[4].dims,r,`Invalid input var`)}else n(e[1].dims,[1],`Invalid input scale`),n(e[2].dims,[1],`Invalid input B`),n(e[3].dims,[1],`Invalid input mean`),n(e[4].dims,[1],`Invalid input var`)},Ai=(e,t)=>{let{epsilon:n,spatial:r,format:i}=t,a=e[0].dims,o=r?nr(a[a.length-1]):1,s=i===`NHWC`&&a.length>1?o:1,c=W.size(a)/o,l=r,u=l?a.length:a,d=J(`x`,e[0].dataType,e[0].dims,o),f=J(`scale`,e[1].dataType,e[1].dims,s),p=J(`bias`,e[2].dataType,e[2].dims,s),m=J(`inputMean`,e[3].dataType,e[3].dims,s),h=J(`inputVar`,e[4].dataType,e[4].dims,s),g=Y(`y`,e[0].dataType,u,o),_=()=>{let e=``;if(r)e=`let cOffset = ${a.length===1?`0u`:i===`NHWC`?`outputIndices[${a.length-1}] / ${o}`:`outputIndices[1]`};`;else if(i===`NCHW`)e=` - ${g.indicesSet(`outputIndices`,`0`,`0`)} - let cOffset = ${g.indicesToOffset(`outputIndices`)};`;else{e=`var cIndices = ${f.type.indices}(0); - cIndices[0] = outputIndices[${a.length-1}];`;for(let t=1;t` - const epsilon = ${n}; - ${e.registerUniform(`outputSize`,`u32`).declareVariables(d,f,p,m,h,g)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - var outputIndices = ${g.offsetToIndices(`global_idx * ${o}`)}; - ${_()} - let scale = ${f.getByOffset(`cOffset`)}; - let bias = ${p.getByOffset(`cOffset`)}; - let inputMean = ${m.getByOffset(`cOffset`)}; - let inputVar = ${h.getByOffset(`cOffset`)}; - let x = ${d.getByOffset(`global_idx`)}; - let value = (x - inputMean) * inverseSqrt(inputVar + epsilon) * scale + bias; - ${g.setByOffset(`global_idx`,`value`)} - }`;return{name:`BatchNormalization`,shaderCache:{hint:`${t.epsilon}_${t.format}_${r}_${o}`,inputDependencies:l?[`rank`,`type`,`type`,`type`,`type`]:void 0},getShaderSource:v,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l?[{type:12,data:c},...K(a)]:[{type:12,data:c}]})}},ji=e=>Xn(e),Mi=(e,t)=>{let{inputs:n,outputCount:r}=e,i=ji({...t,outputCount:r});if(ye.webgpu.validateInputContent&&ki(n,i),t.trainingMode)throw Error(`BatchNormalization trainingMode is not supported yet.`);e.compute(Ai(n,i))}}),Pi,Fi,Ii,Li=M(()=>{"use strict";G(),X(),Pi=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![320,640,1280].includes(e[0].dims[2]))throw Error(`number of channels should be 320, 640 or 1280`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},Fi=e=>{let t=e[0].dims,n=e[0].dims[2],r=W.size(t)/4,i=e[0].dataType,a=J(`input`,i,t,4),o=J(`bias`,i,[n],4),s=J(`residual`,i,t,4),c=Y(`output`,i,t,4);return{name:`BiasAdd`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(r/64)}}),getShaderSource:e=>` - const channels = ${n}u / 4; - ${e.declareVariables(a,o,s,c)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(r)} - let value = ${a.getByOffset(`global_idx`)} - + ${o.getByOffset(`global_idx % channels`)} + ${s.getByOffset(`global_idx`)}; - ${c.setByOffset(`global_idx`,`value`)} - }`}},Ii=e=>{Pi(e.inputs),e.compute(Fi(e.inputs))}}),Ri,zi,Bi,Vi,Hi,Ui,Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,$i,ea,ta,na,ra,ia,aa,oa,sa,ca,la,ua,da,fa,pa,ma,ha,ga,_a,va,ya,ba,xa,Sa,Ca,wa,Ta,Ea,Da,Oa,ka=M(()=>{"use strict";H(),G(),Zn(),X(),Ri=(e,t,n,r,i,a,o)=>{let s=Math.ceil(t/4),c=``;c=typeof i==`string`?`${i}(a)`:i(`a`);let l=J(`inputData`,n,[s],4),u=Y(`outputData`,r,[s],4),d=[{name:`vec_size`,type:`u32`}];return o&&d.push(...o),` - ${e.registerUniforms(d).declareVariables(l,u)} - - ${a??``} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - - let a = ${l.getByOffset(`global_idx`)}; - ${u.setByOffset(`global_idx`,c)} - }`},zi=(e,t,n,r,i,a=e.dataType,o,s)=>{let c=[{type:12,data:Math.ceil(W.size(e.dims)/4)}];return o&&c.push(...o),{name:t,shaderCache:{hint:i,inputDependencies:[`type`]},getShaderSource:t=>Ri(t,W.size(e.dims),e.dataType,a,n,r,s),getRunData:t=>({outputs:[{dims:e.dims,dataType:a}],dispatchGroup:{x:Math.ceil(W.size(t[0].dims)/64/4)},programUniforms:c})}},Bi=e=>{e.compute(zi(e.inputs[0],`Abs`,`abs`))},Vi=e=>{e.compute(zi(e.inputs[0],`Acos`,`acos`))},Hi=e=>{e.compute(zi(e.inputs[0],`Acosh`,`acosh`))},Ui=e=>{e.compute(zi(e.inputs[0],`Asin`,`asin`))},Wi=e=>{e.compute(zi(e.inputs[0],`Asinh`,`asinh`))},Gi=e=>{e.compute(zi(e.inputs[0],`Atan`,`atan`))},Ki=e=>{e.compute(zi(e.inputs[0],`Atanh`,`atanh`))},qi=e=>Xn(e),Ji=(e,t)=>{let n;switch(t.to){case 10:n=`vec4`;break;case 1:n=`vec4`;break;case 12:n=`vec4`;break;case 6:n=`vec4`;break;case 9:n=`vec4`;break;default:throw RangeError(`not supported type (specified in attribute 'to' from 'Cast' operator): ${t.to}`)}e.compute(zi(e.inputs[0],`Cast`,n,void 0,t.cacheKey,t.to))},Yi=e=>{let t,n,r=e.length>=2&&e[1].data!==0,i=e.length>=3&&e[2].data!==0;switch(e[0].dataType){case 1:t=r?e[1].getFloat32Array()[0]:-34028234663852886e22,n=i?e[2].getFloat32Array()[0]:34028234663852886e22;break;case 10:t=r?e[1].getUint16Array()[0]:64511,n=i?e[2].getUint16Array()[0]:31743;break;default:throw Error(`Unsupport data type`)}return Xn({min:t,max:n})},Xi=(e,t)=>{let n=t||Yi(e.inputs),r=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Clip`,e=>`clamp(${e}, vec4<${r}>(uniforms.min), vec4<${r}>(uniforms.max))`,void 0,n.cacheKey,void 0,[{type:e.inputs[0].dataType,data:n.min},{type:e.inputs[0].dataType,data:n.max}],[{name:`min`,type:r},{name:`max`,type:r}]),{inputs:[0]})},Zi=e=>{e.compute(zi(e.inputs[0],`Ceil`,`ceil`))},Qi=e=>{e.compute(zi(e.inputs[0],`Cos`,`cos`))},$i=e=>{e.compute(zi(e.inputs[0],`Cosh`,`cosh`))},ea=e=>Xn(e),ta=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Elu`,e=>`elu_vf32(${e})`,` - const elu_alpha_ = ${n}(${t.alpha}); - - fn elu_f32(a: ${n}) -> ${n} { - return select((exp(a) - 1.0) * elu_alpha_, a, a >= 0.0); - } - - fn elu_vf32(v: vec4<${n}>) -> vec4<${n}> { - return vec4(elu_f32(v.x), elu_f32(v.y), elu_f32(v.z), elu_f32(v.w)); - }`,t.cacheKey))},na=(e=`f32`)=>` -const r0: ${e} = 0.3275911; -const r1: ${e} = 0.254829592; -const r2: ${e} = -0.284496736; -const r3: ${e} = 1.421413741; -const r4: ${e} = -1.453152027; -const r5: ${e} = 1.061405429; - -fn erf_vf32(v: vec4<${e}>) -> vec4<${e}> { - let absv = abs(v); - let x = 1.0 / (1.0 + r0 * absv); - return sign(v) * (1.0 - ((((r5 * x + r4) * x + r3) * x + r2) * x + r1) * x * exp(-absv * absv)); -}`,ra=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Erf`,e=>`erf_vf32(${e})`,na(t)))},ia=e=>{e.compute(zi(e.inputs[0],`Exp`,`exp`))},aa=e=>{e.compute(zi(e.inputs[0],`Floor`,`floor`))},oa=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Gelu`,e=>`0.5 * ${e} * (1.0 + erf_vf32(${e} * 0.7071067811865475))`,na(t)))},sa=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`LeakyRelu`,e=>`select(leaky_relu_alpha_ * ${e}, ${e}, ${e} >= vec4<${n}>(0.0))`,`const leaky_relu_alpha_ = ${n}(${t.alpha});`,t.cacheKey))},ca=e=>{e.compute(zi(e.inputs[0],`Not`,e=>`!${e}`))},la=e=>{e.compute(zi(e.inputs[0],`Neg`,e=>`-${e}`))},ua=e=>{e.compute(zi(e.inputs[0],`Reciprocal`,e=>`1.0/${e}`))},da=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`Relu`,e=>`select(vec4<${t}>(0.0), ${e}, ${e} > vec4<${t}>(0.0))`))},fa=e=>{e.compute(zi(e.inputs[0],`Sigmoid`,e=>`(1.0 / (1.0 + exp(-${e})))`))},pa=e=>Xn(e),ma=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`HardSigmoid`,e=>`max(vec4<${n}>(0.0), min(vec4<${n}>(1.0), ${t.alpha} * ${e} + vec4<${n}>(${t.beta})))`,void 0,t.cacheKey))},ha=e=>{e.compute(zi(e.inputs[0],`Sin`,`sin`))},ga=e=>{e.compute(zi(e.inputs[0],`Sinh`,`sinh`))},_a=e=>{e.compute(zi(e.inputs[0],`Sqrt`,`sqrt`))},va=e=>{e.compute(zi(e.inputs[0],`Tan`,`tan`))},ya=e=>`sign(${e}) * (1 - exp(-2 * abs(${e}))) / (1 + exp(-2 * abs(${e})))`,ba=e=>{e.compute(zi(e.inputs[0],`Tanh`,ya))},xa=(e=`f32`)=>` -const fast_gelu_a: ${e} = 0.5; -const fast_gelu_b: ${e} = 0.7978845608028654; -const fast_gelu_c: ${e} = 0.035677408136300125; - -fn tanh_v(v: vec4<${e}>) -> vec4<${e}> { - return ${ya(`v`)}; -} -`,Sa=e=>`(fast_gelu_a + fast_gelu_a * tanh_v(${e} * (fast_gelu_c * ${e} * ${e} + fast_gelu_b))) * ${e}`,Ca=e=>{let t=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`FastGelu`,Sa,xa(t),void 0,e.inputs[0].dataType))},wa=(e,t)=>{let n=tr(e.inputs[0].dataType);return e.compute(zi(e.inputs[0],`ThresholdedRelu`,e=>`select(vec4<${n}>(0.0), ${e}, ${e} > thresholded_relu_alpha_)`,`const thresholded_relu_alpha_ = vec4<${n}>(${t.alpha});`,t.cacheKey)),0},Ta=e=>{e.compute(zi(e.inputs[0],`Log`,`log`))},Ea=(e,t)=>` -const alpha = vec4<${e}>(${t}); -const one = ${e}(1.0); -const zero = ${e}(0.0); - -fn quick_gelu_impl(x: vec4<${e}>) -> vec4<${e}> { - let v = x *alpha; - var x1 : vec4<${e}>; - for (var i = 0; i < 4; i = i + 1) { - if (v[i] >= zero) { - x1[i] = one / (one + exp(-v[i])); - } else { - x1[i] = one - one / (one + exp(v[i])); - } - } - return x * x1; -} -`,Da=e=>`quick_gelu_impl(${e})`,Oa=(e,t)=>{let n=tr(e.inputs[0].dataType);e.compute(zi(e.inputs[0],`QuickGelu`,Da,Ea(n,t.alpha),t.cacheKey,e.inputs[0].dataType))}}),Aa,ja,Ma,Na=M(()=>{"use strict";G(),X(),ka(),Aa=e=>{if(e[0].dims.length!==3)throw Error(`input should have 3 dimensions`);if(![2560,5120,10240].includes(e[0].dims[2]))throw Error(`hidden state should be 2560, 5120 or 10240`);if(e[1].dims.length!==1)throw Error(`bias is expected to have 1 dimensions`);if(e[0].dims[2]!==e[1].dims[0])throw Error(`last dimension of input and bias are not the same`)},ja=e=>{let t=e[0].dims.slice();t[2]/=2;let n=J(`input`,e[0].dataType,e[0].dims,4),r=J(`bias`,e[0].dataType,[e[0].dims[2]],4),i=Y(`output`,e[0].dataType,t,4),a=W.size(t)/4,o=er(e[0].dataType);return{name:`BiasSplitGelu`,getRunData:()=>({outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)}}),getShaderSource:t=>` - const M_SQRT2 = sqrt(2.0); - const halfChannels = ${e[0].dims[2]/4/2}u; - - ${t.declareVariables(n,r,i)} - - ${na(o)} - - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(a)} - let biasIdx = global_idx % halfChannels; - let batchIndex = global_idx / halfChannels; - let inputOffset = biasIdx + batchIndex * halfChannels * 2; - let valueLeft = input[inputOffset] + bias[biasIdx]; - let valueRight = input[inputOffset + halfChannels] + bias[biasIdx + halfChannels]; - let geluRight = valueRight * 0.5 * (erf_vf32(valueRight / M_SQRT2) + 1); - - ${i.setByOffset(`global_idx`,`valueLeft * geluRight`)} - }`}},Ma=e=>{Aa(e.inputs),e.compute(ja(e.inputs))}}),Pa,Fa,Ia,La,Ra,za,Ba,Va,Ha,Ua,Wa,Ga,Ka,qa=M(()=>{"use strict";H(),G(),X(),Pa=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f,p;typeof s==`string`?f=p=(e,t)=>`${s}((${e}),(${t}))`:typeof s==`function`?f=p=s:(f=s.scalar,p=s.vector);let m=Y(`outputData`,u,r.length,4),h=J(`aData`,c,t.length,4),g=J(`bData`,l,n.length,4),_;if(i)if(a){let e=W.size(t)===1,r=W.size(n)===1,i=t.length>0&&t[t.length-1]%4==0,a=n.length>0&&n[n.length-1]%4==0;_=e||r?m.setByOffset(`global_idx`,p(e?`${h.type.value}(${h.getByOffset(`0`)}.x)`:h.getByOffset(`global_idx`),r?`${g.type.value}(${g.getByOffset(`0`)}.x)`:g.getByOffset(`global_idx`))):` - let outputIndices = ${m.offsetToIndices(`global_idx * 4u`)}; - let offsetA = ${h.broadcastedIndicesToOffset(`outputIndices`,m)}; - let offsetB = ${g.broadcastedIndicesToOffset(`outputIndices`,m)}; - ${m.setByOffset(`global_idx`,p(o||i?h.getByOffset(`offsetA / 4u`):`${h.type.value}(${h.getByOffset(`offsetA / 4u`)}[offsetA % 4u])`,o||a?g.getByOffset(`offsetB / 4u`):`${g.type.value}(${g.getByOffset(`offsetB / 4u`)}[offsetB % 4u])`))} - `}else _=m.setByOffset(`global_idx`,p(h.getByOffset(`global_idx`),g.getByOffset(`global_idx`)));else{if(!a)throw Error(`no necessary to use scalar implementation for element-wise binary op implementation.`);let e=(e,t,n=``)=>{let r=`aData[indexA${t}][componentA${t}]`,i=`bData[indexB${t}][componentB${t}]`;return` - let outputIndices${t} = ${m.offsetToIndices(`global_idx * 4u + ${t}u`)}; - let offsetA${t} = ${h.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; - let offsetB${t} = ${g.broadcastedIndicesToOffset(`outputIndices${t}`,m)}; - let indexA${t} = offsetA${t} / 4u; - let indexB${t} = offsetB${t} / 4u; - let componentA${t} = offsetA${t} % 4u; - let componentB${t} = offsetB${t} % 4u; - ${e}[${t}] = ${n}(${f(r,i)}); - `};_=u===9?` - var data = vec4(0); - ${e(`data`,0,`u32`)} - ${e(`data`,1,`u32`)} - ${e(`data`,2,`u32`)} - ${e(`data`,3,`u32`)} - outputData[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` - ${e(`outputData[global_idx]`,0)} - ${e(`outputData[global_idx]`,1)} - ${e(`outputData[global_idx]`,2)} - ${e(`outputData[global_idx]`,3)} - `}return` - ${e.registerUniform(`vec_size`,`u32`).declareVariables(h,g,m)} - - ${d??``} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - ${_} - }`},Fa=(e,t,n,r,i,a,o=n.dataType)=>{let s=n.dims.map(e=>Number(e)??1),c=r.dims.map(e=>Number(e)??1),l=!W.areEqual(s,c),u=s,d=W.size(s),f=!1,p=!1,m=[l];if(l){let e=gn.calcShape(s,c,!1);if(!e)throw Error(`Can't perform binary op on the given tensors`);u=e.slice(),d=W.size(u);let t=W.size(s)===1,n=W.size(c)===1,r=s.length>0&&s[s.length-1]%4==0,i=c.length>0&&c[c.length-1]%4==0;m.push(t),m.push(n),m.push(r),m.push(i);let a=1;for(let e=1;ee.toString()).join(`_`),inputDependencies:[`rank`,`rank`]},getShaderSource:e=>Pa(e,s,c,u,f,l,p,i,n.dataType,r.dataType,o,a),getRunData:()=>({outputs:[{dims:u,dataType:o}],dispatchGroup:{x:Math.ceil(d/64/4)},programUniforms:[{type:12,data:Math.ceil(W.size(u)/4)},...K(s,c,u)]})}},Ia=(e,t,n,r,i,a)=>{e.compute(Fa(t,i??``,e.inputs[0],e.inputs[1],n,r,a))},La=e=>{Ia(e,`Add`,(e,t)=>`${e}+${t}`)},Ra=e=>{Ia(e,`Div`,(e,t)=>`${e}/${t}`)},za=e=>{Ia(e,`Equal`,{scalar:(e,t)=>`u32(${e}==${t})`,vector:(e,t)=>`vec4(${e}==${t})`},void 0,void 0,9)},Ba=e=>{Ia(e,`Mul`,(e,t)=>`${e}*${t}`)},Va=e=>{let t=J(`input`,e.inputs[0].dataType,e.inputs[0].dims).type.value;Ia(e,`Pow`,{scalar:(e,t)=>`pow_custom(${e},${t})`,vector:(e,t)=>`pow_vector_custom(${e},${t})`},` - fn pow_custom(a : ${t}, b : ${t}) -> ${t} { - if (b == ${t}(0.0)) { - return ${t}(1.0); - } else if (a < ${t}(0.0) && f32(b) != floor(f32(b))) { - return ${t}(pow(f32(a), f32(b))); // NaN - } - return select(sign(a), ${t}(1.0), round(f32(abs(b) % ${t}(2.0))) != 1.0) * ${t}(${t===`i32`?`round`:``}(pow(f32(abs(a)), f32(b)))); - } - fn pow_vector_custom(a : vec4<${t}>, b : vec4<${t}>) -> vec4<${t}> { - // TODO: implement vectorized pow - return vec4<${t}>(pow_custom(a.x, b.x), pow_custom(a.y, b.y), pow_custom(a.z, b.z), pow_custom(a.w, b.w)); - } - `)},Ha=e=>{Ia(e,`Sub`,(e,t)=>`${e}-${t}`)},Ua=e=>{Ia(e,`Greater`,{scalar:(e,t)=>`u32(${e}>${t})`,vector:(e,t)=>`vec4(${e}>${t})`},void 0,void 0,9)},Wa=e=>{Ia(e,`Less`,{scalar:(e,t)=>`u32(${e}<${t})`,vector:(e,t)=>`vec4(${e}<${t})`},void 0,void 0,9)},Ga=e=>{Ia(e,`GreaterOrEqual`,{scalar:(e,t)=>`u32(${e}>=${t})`,vector:(e,t)=>`vec4(${e}>=${t})`},void 0,void 0,9)},Ka=e=>{Ia(e,`LessOrEqual`,{scalar:(e,t)=>`u32(${e}<=${t})`,vector:(e,t)=>`vec4(${e}<=${t})`},void 0,void 0,9)}}),Ja,Ya,Xa,Za,Qa,$a,eo=M(()=>{"use strict";H(),G(),Zn(),X(),Ja=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);let n=0,r=e[n],i=r.dataType,a=r.dims.length;e.forEach((e,o)=>{if(o!==n){if(e.dataType!==i)throw Error(`input tensors should be one type`);if(e.dims.length!==a)throw Error(`input tensors should have the same shape`);e.dims.forEach((e,n)=>{if(n!==t&&e!==r.dims[n])throw Error(`non concat dimensions must match`)})}})},Ya=(e,t)=>` - fn calculateInputIndex(index: u32) -> u32 { - let sizeInConcatAxis = array(${t}); - for (var i: u32 = 0u; i < ${e}; i += 1u ) { - if (index < sizeInConcatAxis[i]) { - return i; - } - } - return ${e}u; - }`,Xa=(e,t)=>{let n=e.length,r=[];for(let i=0;i{let i=W.size(n),a=Array(e.length),o=Array(e.length),s=0,c=[],l=[],u=[{type:12,data:i}];for(let n=0;n`uniforms.sizeInConcatAxis${e}`).join(`,`),m=t=>` - - ${(()=>{t.registerUniform(`outputSize`,`u32`);for(let n=0;n(${p}); - ${f} -= sizeInConcatAxis[inputIndex - 1u]; - } - - ${Xa(o,d)} - }`;return{name:`Concat`,shaderCache:{hint:`${t}`,inputDependencies:c},getRunData:()=>({outputs:[{dims:n,dataType:r}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:u}),getShaderSource:m}},Qa=(e,t)=>{let n=e.inputs,r=n[0].dims,i=W.normalizeAxis(t.axis,r.length);Ja(n,i);let a=r.slice();a[i]=n.reduce((e,t)=>e+(t.dims.length>i?t.dims[i]:0),0);let o=n.filter(e=>W.size(e.dims)>0);e.compute(Za(o,i,a,n[0].dataType),{inputs:o})},$a=e=>Xn({axis:e.axis})}),to,no,ro,io,ao=M(()=>{"use strict";H(),G(),to=(e,t,n=`f32`)=>{switch(e.activation){case`Relu`:return`value = max(value, ${t}(0.0));`;case`Sigmoid`:return`value = (${t}(1.0) / (${t}(1.0) + exp(-value)));`;case`Clip`:return`value = clamp(value, ${t}(${n}(uniforms.clip_min)), ${t}(${n}(uniforms.clip_max)));`;case`HardSigmoid`:return`value = max(${t}(0.0), min(${t}(1.0), ${n}(uniforms.alpha) * value + ${n}(uniforms.beta)));`;case`LeakyRelu`:return`value = select(${n}(uniforms.alpha) * value, value, value >= ${t}(0.0));`;case`Tanh`:return`let e2x = exp(-2.0 * abs(value)); - value = sign(value) * (1.0 - e2x) / (1.0 + e2x); - `;case``:return``;default:throw Error(`Unsupported activation ${e.activation}`)}},no=(e,t)=>{e.activation===`Clip`?t.push({type:1,data:e.clipMax},{type:1,data:e.clipMin}):e.activation===`HardSigmoid`?t.push({type:1,data:e.alpha},{type:1,data:e.beta}):e.activation===`LeakyRelu`&&t.push({type:1,data:e.alpha})},ro=(e,t)=>{e.activation===`Clip`?t.push({name:`clip_max`,type:`f32`},{name:`clip_min`,type:`f32`}):e.activation===`HardSigmoid`?t.push({name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}):e.activation===`LeakyRelu`&&t.push({name:`alpha`,type:`f32`})},io=e=>{let t=e?.activation||``;if(t===`HardSigmoid`){let[n,r]=e?.activation_params||[.2,.5];return{activation:t,alpha:n,beta:r}}else if(t===`Clip`){let[n,r]=e?.activation_params||[yn,bn];return{activation:t,clipMax:r,clipMin:n}}else if(t===`LeakyRelu`){let[n]=e?.activation_params||[.01];return{activation:t,alpha:n}}return{activation:t}}}),oo,so,co=M(()=>{"use strict";oo=(e,t)=>{switch(e){case 1:return t;case 2:return`vec2<${t}>`;case 3:return`vec3<${t}>`;case 4:return`vec4<${t}>`;default:throw Error(`${e}-component is not supported.`)}},so=e=>` - ${e?`value = value + getBiasByOutputCoords(coords);`:``} - `}),lo,uo=M(()=>{"use strict";lo=e=>` -fn getIndexFromCoords4D(coords : vec4, shape : vec4) -> i32 { - return dot(coords, vec4( - shape.y * shape.z * shape.w, shape.z * shape.w, shape.w, 1)); -} -fn getOutputIndexFromCoords(coords : vec4) -> i32 { - return dot(coords, vec4( - i32(${e}.x), i32(${e}.y), i32(${e}.z), 1)); -} -`}),fo,po,mo=M(()=>{"use strict";H(),G(),X(),ao(),fo=(e,t,n,r,i)=>{let a=r-n;return` - ${Array.from({length:n}).map((n,o)=>` - if (${q(t.shape,o,t.rank)} != 1) { - ${t.indicesSet(e,o,q(i,o+a,r))} - } else { - ${t.indicesSet(e,o,0)} - }`).join(``)} -`},po=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o[o.length-2],l=s[s.length-1],u=o[o.length-1],d=nr(l),f=nr(u),p=nr(c),m=W.size(n)/d/p,h=e.length>2,g=r?r.slice(0,-2):n.slice(0,-2),_=[W.size(g),c,l],v=[{type:12,data:m},{type:12,data:c},{type:12,data:l},{type:12,data:u}];no(t,v),v.push(...K(g,o,s)),h&&v.push(...K(e[2].dims)),v.push(...K(_));let y=r=>{let a=cr(`batch_dims`,e[0].dataType,g.length),c=J(`a`,e[0].dataType,o.length,f),l=J(`b`,e[1].dataType,s.length,d),u=Y(`output`,e[0].dataType,_.length,d),m=er(u.type.tensor),v=to(t,u.type.value,m),y=[c,l],b=``;if(h){let t=i?d:1;y.push(J(`bias`,e[2].dataType,e[2].dims.length,t)),b=`${i?`value += bias[col / ${t}];`:`value += ${u.type.value}(bias[row + i]);`}`}let x=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`}];ro(t,x);let S=()=>{let e=`var a_data: ${c.type.value};`;for(let t=0;t; - for (var k: u32 = 0u; k < uniforms.K; k = k + ${f}) { - ${S()} - } - for (var i = 0u; i < ${p}u; i++) { - var value = values[i]; - ${b} - ${v} - let cur_indices = ${u.type.indices}(batch, row + i, col); - let offset = ${u.indicesToOffset(`cur_indices`)}; - ${u.setByOffset(`offset / ${d}`,`value`)}; - } - } - `};return{name:`MatMulNaive`,shaderCache:{hint:`${t.activation};${d};${f};${p};${i}`,inputDependencies:h?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(m/64)},programUniforms:v}),getShaderSource:y}}}),ho,go,_o,vo,yo,bo,xo,So,Co=M(()=>{"use strict";H(),G(),X(),ao(),mo(),co(),ho=(e,t)=>e?` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - kStart + inputRow, - globalRowStart / innerElementSize + inputCol${t?`, batchIndices`:``}); - `:` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - globalRow + innerRow, - kStart / innerElementSize + inputCol${t?`, batchIndices`:``}); - `,go=(e,t)=>e?` - let ACached0 = mm_Asub[k * innerElementSize][localRow]; - let ACached1 = mm_Asub[k * innerElementSize + 1][localRow]; - let ACached2 = mm_Asub[k * innerElementSize + 2][localRow]; - ${t===3?``:`let ACached3 = mm_Asub[k * innerElementSize + 3][localRow];`} - for (var i = 0; i < rowPerThread; i = i + 1) { - acc[i] = BCached0 * ACached0[i] + acc[i]; - acc[i] = BCached1 * ACached1[i] + acc[i]; - acc[i] = BCached2 * ACached2[i] + acc[i]; - ${t===3?``:`acc[i] = BCached3 * ACached3[i] + acc[i];`} - }`:` - for (var i = 0; i < rowPerThread; i = i + 1) { - let ACached = mm_Asub[tileRow + i][k]; - acc[i] = BCached0 * ACached.x + acc[i]; - acc[i] = BCached1 * ACached.y + acc[i]; - acc[i] = BCached2 * ACached.z + acc[i]; - ${t===3?``:`acc[i] = BCached3 * ACached.w + acc[i];`} - }`,_o=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32)=>{let c=t[1]*e[1],l=t[0]*e[0],u=i?c:a,d=i?a:c,f=u/t[0],p=a/t[1];if(!((i&&f===4&&e[1]===4||!i&&(f===3||f===4))&&u%t[0]===0&&a%t[1]===0&&e[0]===4))throw Error(`If transposeA ${i} is true, innerElementSize ${f} and workPerThread[1] ${e[1]} must be 4. - Otherwise, innerElementSize ${f} must be 3 or 4. - tileAWidth ${u} must be divisible by workgroupSize[0]${t[0]}. tileInner ${a} must be divisible by workgroupSize[1] ${t[1]}. colPerThread ${e[0]} must be 4.`);return` -var mm_Asub: array, ${u/f}>, ${d}>; -var mm_Bsub: array, ${l/e[0]}>, ${a}>; - -const rowPerThread = ${e[1]}; -const colPerThread = ${e[0]}; -const innerElementSize = ${f}; -const tileInner = ${a}; - -@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) -fn main(@builtin(local_invocation_id) localId : vec3, - @builtin(global_invocation_id) globalId : vec3, - @builtin(workgroup_id) workgroupId : vec3) { - let localRow = i32(localId.y); - let tileRow = localRow * rowPerThread; - let tileCol = i32(localId.x); - - let globalRow =i32(globalId.y) * rowPerThread; - let globalCol = i32(globalId.x); - let batch = ${o?`0`:`i32(globalId.z)`}; - ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} - let globalRowStart = i32(workgroupId.y) * ${c}; - - let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; - var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; - - var acc: array, rowPerThread>; - - // Loop over shared dimension. - let tileRowB = localRow * ${p}; - for (var t = 0; t < num_tiles; t = t + 1) { - // Load one tile of A into local memory. - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - let inputRow = tileRow + innerRow; - let inputCol = tileCol; - ${ho(i,r)} - } - - // Load one tile of B into local memory. - for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { - let inputRow = tileRowB + innerRow; - let inputCol = tileCol; - mm_Bsub[inputRow][inputCol] = mm_readB(batch, kStart + inputRow, globalCol${r?`, batchIndices`:``}); - } - kStart = kStart + tileInner; - workgroupBarrier(); - - // Compute acc values for a single thread. - for (var k = 0; k < tileInner / innerElementSize; k = k + 1) { - let BCached0 = mm_Bsub[k * innerElementSize][tileCol]; - let BCached1 = mm_Bsub[k * innerElementSize + 1][tileCol]; - let BCached2 = mm_Bsub[k * innerElementSize + 2][tileCol]; - ${f===3?``:`let BCached3 = mm_Bsub[k * innerElementSize + 3][tileCol];`} - - ${go(i,f)} - } - - workgroupBarrier(); - } - - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - mm_write(batch, globalRow + innerRow, globalCol, acc[innerRow]); - } -}`},vo=(e,t)=>e?` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - kStart + inputRow, - globalRowStart + inputCol${t?`, batchIndices`:``}); - `:` - mm_Asub[inputRow][inputCol] = mm_readA(batch, - globalRowStart + inputRow, - kStart + inputCol${t?`, batchIndices`:``}); - `,yo=e=>e?`let ACached = mm_Asub[k][tileRow + innerRow];`:`let ACached = mm_Asub[tileRow + innerRow][k];`,bo=(e,t,n=`f32`,r,i=!1,a=32,o=!1,s=32,c=!1)=>{let l=e[1]*t[1],u=e[0]*t[0],d=i?l:a,f=i?a:l;if(!(f%t[1]===0&&d%t[0]===0&&a%t[1]===0))throw Error(`tileAHight ${f} must be divisible by workgroupSize[1]${t[1]}, tileAWidth ${d} must be divisible by workgroupSize[0]${t[0]}, tileInner ${a} must be divisible by workgroupSize[1]${t[1]}`);let p=f/t[1],m=d/t[0],h=a/t[1],g=c?` - let localRow = i32(localId.y); - let localCol = i32(localId.x); - let globalRowStart = i32(workgroupId.y) * ${l}; - let globalColStart = i32(workgroupId.x) * ${u}; - - // Loop over shared dimension. - for (var t = 0; t < num_tiles; t = t + 1) { - // Load one tile of A into local memory. - for (var inputRow = localRow; inputRow < ${f}; inputRow = inputRow + ${t[1]}) { - for (var inputCol = localCol; inputCol < ${d}; inputCol = inputCol + ${t[0]}) { - ${vo(i,r)} - } - } - // Load one tile of B into local memory. - for (var inputRow = localRow; inputRow < ${a}; inputRow = inputRow + ${t[1]}) { - for (var inputCol = localCol; inputCol < ${u}; inputCol = inputCol + ${t[0]}) { - mm_Bsub[inputRow][inputCol] = mm_readB(batch, - kStart + inputRow, - globalColStart + inputCol${r?`, batchIndices`:``}); - } - } - kStart = kStart + tileInner; - workgroupBarrier(); - - // Compute acc values for a single thread. - var BCached : array<${n}, colPerThread>; - for (var k = 0; k < tileInner; k = k + 1) { - for (var inner = 0; inner < colPerThread; inner = inner + 1) { - BCached[inner] = mm_Bsub[k][localCol + inner * ${t[0]}]; - } - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - let ACached = ${i?`mm_Asub[k][localRow + innerRow * ${t[1]}];`:`mm_Asub[localRow + innerRow * ${t[1]}][k];`} - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - acc[innerRow][innerCol] = acc[innerRow][innerCol] + - ACached * BCached[innerCol]; - } - } - } - workgroupBarrier(); - } - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - let gRow = globalRowStart + localRow + innerRow * ${t[1]}; - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - let gCol = globalColStart + localCol + innerCol * ${t[0]}; - mm_write(batch, gRow, gCol, acc[innerRow][innerCol]); - } - } - `:` -let tileRow = i32(localId.y) * rowPerThread; -let tileCol = i32(localId.x) * colPerThread; - -let globalRow = i32(globalId.y) * rowPerThread; -let globalCol = i32(globalId.x) * colPerThread; -let globalRowStart = i32(workgroupId.y) * ${l}; - -let tileRowA = i32(localId.y) * ${p}; -let tileColA = i32(localId.x) * ${m}; -let tileRowB = i32(localId.y) * ${h}; -// Loop over shared dimension. -for (var t = 0; t < num_tiles; t = t + 1) { - // Load one tile of A into local memory. - for (var innerRow = 0; innerRow < ${p}; innerRow = innerRow + 1) { - for (var innerCol = 0; innerCol < ${m}; innerCol = innerCol + 1) { - let inputRow = tileRowA + innerRow; - let inputCol = tileColA + innerCol; - ${vo(i,r)} - } - } - - // Load one tile of B into local memory. - for (var innerRow = 0; innerRow < ${h}; innerRow = innerRow + 1) { - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - let inputRow = tileRowB + innerRow; - let inputCol = tileCol + innerCol; - mm_Bsub[inputRow][inputCol] = mm_readB(batch, - kStart + inputRow, - globalCol + innerCol${r?`, batchIndices`:``}); - } - } - kStart = kStart + tileInner; - workgroupBarrier(); - - // Compute acc values for a single thread. - var BCached : array<${n}, colPerThread>; - for (var k = 0; k < tileInner; k = k + 1) { - for (var inner = 0; inner < colPerThread; inner = inner + 1) { - BCached[inner] = mm_Bsub[k][tileCol + inner]; - } - - for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - ${yo(i)} - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - acc[innerRow][innerCol] = acc[innerRow][innerCol] + ACached * BCached[innerCol]; - } - } - } - - workgroupBarrier(); -} - -for (var innerRow = 0; innerRow < rowPerThread; innerRow = innerRow + 1) { - for (var innerCol = 0; innerCol < colPerThread; innerCol = innerCol + 1) { - mm_write(batch, globalRow + innerRow, globalCol + innerCol, - acc[innerRow][innerCol]); - } -} -`;return` - var mm_Asub : array, ${f}>; - var mm_Bsub : array, ${a}>; - const rowPerThread = ${e[1]}; - const colPerThread = ${e[0]}; - const tileInner = ${a}; - -@compute @workgroup_size(${t[0]}, ${t[1]}, ${t[2]}) -fn main(@builtin(local_invocation_id) localId : vec3, - @builtin(global_invocation_id) globalId : vec3, - @builtin(workgroup_id) workgroupId : vec3) { - let batch = ${o?`0`:`i32(globalId.z)`}; - ${r?`let batchIndices = ${r.offsetToIndices(`u32(batch)`)};`:``} - let num_tiles = ${o?`${Math.ceil(s/a)}`:`(uniforms.dim_inner - 1) / tileInner + 1`}; - var kStart = ${o?`i32(globalId.z) * ${s}`:`0`}; - - var acc : array, rowPerThread>; - ${g} - } -`},xo=(e,t,n,r,i=!1)=>{let[a,o,s,c]=r,l=er(r[0].type.tensor);return` - fn mm_readA(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${oo(e,l)} { - var value = ${oo(e,l)}(0.0); - let col = colIn * ${e}; - if(row < uniforms.dim_a_outer && col < uniforms.dim_inner) - { - var aIndices: ${o.type.indices}; - ${fo(`aIndices`,o,o.rank-2,a.rank,`batchIndices`)} - ${o.indicesSet(`aIndices`,o.rank-2,`u32(row)`)} - ${o.indicesSet(`aIndices`,o.rank-1,`u32(colIn)`)} - value = ${o.getByIndices(`aIndices`)}; - } - return value; - } - - fn mm_readB(batch: i32, row: i32, colIn: i32, batchIndices: ${a.type.indices}) -> ${oo(e,l)} { - var value = ${oo(e,l)}(0.0); - let col = colIn * ${e}; - if(row < uniforms.dim_inner && col < uniforms.dim_b_outer) - { - var bIndices: ${s.type.indices}; - ${fo(`bIndices`,s,s.rank-2,a.rank,`batchIndices`)} - ${s.indicesSet(`bIndices`,s.rank-2,`u32(row)`)} - ${s.indicesSet(`bIndices`,s.rank-1,`u32(colIn)`)} - value = ${s.getByIndices(`bIndices`)}; - } - return value; - } - - fn mm_write(batch: i32, row: i32, colIn: i32, valueIn: ${oo(e,l)}) { - let col = colIn * ${e}; - if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) { - var value = valueIn; - let coords = vec3(batch, row, colIn); - ${t?`value = value + ${i?`bias[colIn]`:`${oo(e,l)}(bias[row])`};`:``} - ${n} - ${c.setByIndices(`vec3(coords)`,`value`)} - } - } - `},So=(e,t,n,r,i=!1,a)=>{let o=e[0].dims,s=e[1].dims,c=o.slice(0,-2),l=s.slice(0,-2),u=r?r.slice(0,-2):n.slice(0,-2),d=W.size(u),f=o[o.length-2],p=o[o.length-1],m=s[s.length-1],h=p%4==0&&m%4==0,g=f<=8?[4,1,1]:[4,4,1],_=[8,8,1],v=[Math.ceil(m/_[0]/g[0]),Math.ceil(f/_[1]/g[1]),Math.ceil(d/_[2]/g[2])],y=h?4:1,b=[...c,f,p/y],x=b.length,S=[...l,p,m/y],C=S.length,w=[d,f,m/y],T=[{type:6,data:f},{type:6,data:m},{type:6,data:p}];no(t,T),T.push(...K(u,b,S));let E=[`rank`,`rank`],D=e.length>2;D&&(T.push(...K(e[2].dims)),E.push(`rank`)),T.push(...K(w));let O=n=>{let r=u.length,a=cr(`batchDims`,e[0].dataType,r,1),o=er(e[0].dataType),s=J(`a`,e[0].dataType,x,y),c=J(`b`,e[1].dataType,C,y),l=Y(`result`,e[0].dataType,w.length,y),d=[s,c];if(D){let t=i?y:1;d.push(J(`bias`,e[2].dataType,e[2].dims.length,t))}let f=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`}];ro(t,f);let p=er(l.type.tensor),m=to(t,l.type.value,p),v=xo(y,D,m,[a,s,c,l],i);return` - ${n.registerUniforms(f).registerInternalVariables(a).declareVariables(...d,l)} - ${v} - ${h?_o(g,_,o,a):bo(g,_,o,a)} - `};return{name:`MatMul`,shaderCache:{hint:`${g};${t.activation};${h};${i}`,inputDependencies:E},getRunData:()=>({outputs:[{dims:a?a(n):n,dataType:e[0].dataType}],dispatchGroup:{x:v[0],y:v[1],z:v[2]},programUniforms:T}),getShaderSource:O}}}),wo,To,Eo=M(()=>{"use strict";H(),mn(),X(),ao(),co(),uo(),Co(),wo=(e,t,n,r,i=!1,a,o=4,s=4,c=4,l=`f32`)=>{let u=e=>{switch(e){case 1:return`resData = x[xIndex];`;case 3:return`resData = vec3<${l}>(x[xIndex], x[xIndex + 1], x[xIndex + 2]);`;case 4:return`resData = x[xIndex / 4];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},d=e=>{switch(e){case 1:return`return w[row * i32(uniforms.w_shape[3]) + colIn];`;case 4:return`return w[row * i32(uniforms.w_shape[3]) / 4 + colIn];`;default:throw Error(`innerElementSize ${e} is not supported.`)}},f=e?` - let coord = vec4(batch, xRow, xCol, xCh); - `:` - let coord = vec4(batch, xCh, xRow, xCol); - `,p=e?` - let coords = vec4( - batch, - row / outWidth, - row % outWidth, - col); - `:` - let coords = vec4( - batch, - row, - col / outWidth, - col % outWidth); - `,m=e?`i32(uniforms.x_shape[1])`:`i32(uniforms.x_shape[2])`,h=e?`i32(uniforms.x_shape[2])`:`i32(uniforms.x_shape[3])`,g=e?`row`:`col`,_=e?`col`:`row`,v=` - let inChannels = i32(uniforms.w_shape[2]); - let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; - let outRow = ${g} / outWidth; - let outCol = ${g} % outWidth; - - let WRow = ${_} / (i32(uniforms.w_shape[1]) * inChannels); - let WCol = ${_} / inChannels % i32(uniforms.w_shape[1]); - let xRow = outRow * uniforms.stride[0] + uniforms.dilation[0] * WRow - uniforms.pad[0]; - let xCol = outCol * uniforms.stride[1] + uniforms.dilation[1] * WCol - uniforms.pad[1]; - let xCh = ${_} % inChannels; - var resData = ${oo(o,l)}(0.0); - // The bounds checking is always needed since we use it to pad zero for - // the 'same' padding type. - if (xRow >= 0 && xRow < ${m} && xCol >= 0 && xCol < ${h}) { - ${f} - let xIndex = getIndexFromCoords4D(coord, vec4(uniforms.x_shape)); - ${u(o)} - } - return resData;`,y=e?t&&r?` - let col = colIn * ${o}; - ${v}`:` - let col = colIn * ${o}; - if (row < uniforms.dim_a_outer && col < uniforms.dim_inner) { - ${v} - } - return ${oo(o,l)}(0.0);`:r&&n?` - let col = colIn * ${o}; - ${v}`:` - let col = colIn * ${o}; - if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { - ${v} - } - return ${oo(o,l)}(0.0);`,b=e?r&&n?d(s):` - let col = colIn * ${s}; - if (row < uniforms.dim_inner && col < uniforms.dim_b_outer) { - ${d(s)} - } - return ${oo(s,l)}(0.0);`:` - let col = colIn * ${s}; - if (row < uniforms.dim_inner && col < uniforms.dim_a_outer) { - ${d(s)} - } - return ${oo(s,l)}(0.0);`,x=oo(c,l),S=oo(e?o:s,l),C=oo(e?s:o,l),w=to(a,x,l);return` - fn mm_readA(batch: i32, row : i32, colIn : i32) -> ${S} { - ${e?y:b} - } - - fn mm_readB(batch: i32, row : i32, colIn : i32) -> ${C} { - ${e?b:y} - } - - fn mm_write(batch: i32, row : i32, colIn : i32, valueIn : ${x}) { - let col = colIn * ${c}; - if (row < uniforms.dim_a_outer && col < uniforms.dim_b_outer) - { - var value = valueIn; - let outWidth = ${e?`i32(uniforms.result_shape[2])`:`i32(uniforms.result_shape[3])`}; - ${p} - ${so(i)} - ${w} - setOutputAtCoords(coords[0], coords[1], coords[2], coords[3], value); - } - }`},To=(e,t,n,r,i,a,o,s,c)=>{let l=t.format===`NHWC`,u=l?e[0].dims[3]:e[0].dims[1],d=n[0],f=l?n[2]:n[3],p=l?n[1]:n[2],m=l?n[3]:n[1],h=l&&(u%4==0||u%3==0)&&m%4==0,g=l?m:f*p,_=l?f*p:m,v=[8,8,1],y=r<=8?[4,1,1]:[4,4,1],b=[Math.ceil(g/v[0]/y[0]),Math.ceil(_/v[1]/y[1]),Math.ceil(d/v[2]/y[2])];U(`verbose`,()=>`[conv2d_mm_webgpu] dispatch = ${b}`);let x=h?l&&u%4!=0?3:4:1,S=v[1]*y[1],C=v[0]*y[0],w=Math.max(v[0]*x,v[1]),T=r%S===0,E=i%C===0,D=a%w===0,O=h?[x,4,4]:[1,1,1],k=[{type:6,data:r},{type:6,data:i},{type:6,data:a},{type:6,data:[t.pads[0],t.pads[1]]},{type:6,data:t.strides},{type:6,data:t.dilations}];no(t,k),k.push(...K(e[0].dims,e[1].dims));let A=[`rank`,`rank`];o&&(k.push(...K(e[2].dims)),A.push(`rank`)),k.push(...K(n));let ee=r=>{let i=[{name:`dim_a_outer`,type:`i32`},{name:`dim_b_outer`,type:`i32`},{name:`dim_inner`,type:`i32`},{name:`pad`,type:`i32`,length:2},{name:`stride`,type:`i32`,length:2},{name:`dilation`,type:`i32`,length:2}];ro(t,i);let a=h?4:1,c=er(e[0].dataType),u=` - fn setOutputAtIndex(flatIndex : i32, value : ${h?`vec4<${c}>`:c}) { - result[flatIndex] = ${h?`vec4<${c}>`:c}(value); - } - fn setOutputAtCoords(d0 : i32, d1 : i32, d2 : i32, d3 : i32, value : ${h?`vec4<${c}>`:c}) { - let flatIndex = getOutputIndexFromCoords(vec4(d0, d1, d2, d3)); - setOutputAtIndex(flatIndex ${h?`/ 4`:``}, value); - }`,d=J(`x`,e[0].dataType,e[0].dims.length,x===3?1:x),f=J(`w`,e[1].dataType,e[1].dims.length,a),p=[d,f],m=Y(`result`,e[0].dataType,n.length,a);if(o){let t=J(`bias`,e[2].dataType,e[2].dims.length,a);p.push(t),u+=` - fn getBiasByOutputCoords(coords : vec4) -> ${h?`vec4<${c}>`:c} { - return bias[coords.${l?`w`:`y`}${h?`/ 4`:``}]; - }`}return` - ${lo(`uniforms.result_strides`)} - //struct Uniforms { xShape : vec4, wShape : vec4, outShape : vec4, - // outShapeStrides: vec3, filterDims : vec2, pad : vec2, stride : vec2, - // dilation : vec2, dimAOuter : i32, dimBOuter : i32, dimInner : i32 }; - ${r.registerUniforms(i).declareVariables(...p,m)} - ${u} - ${wo(l,T,E,D,o,t,O[0],O[1],O[2],c)} - ${h?_o(y,v,c,void 0,!l,w):bo(y,v,c,void 0,!l,w,!1,void 0,s)}`};return{name:`Conv2DMatMul`,shaderCache:{hint:`${t.cacheKey};${x};${h};${T};${E};${D};${S};${C};${w}`,inputDependencies:A},getRunData:()=>({outputs:[{dims:c?c(n):n,dataType:e[0].dataType}],dispatchGroup:{x:b[0],y:b[1],z:b[2]},programUniforms:k}),getShaderSource:ee}}}),Do,Oo,ko,Ao,jo,Mo,No,Po,Fo=M(()=>{"use strict";H(),mn(),G(),X(),ao(),co(),Do=e=>{let t=1;for(let n=0;ntypeof e==`number`?[e,e,e]:e,ko=(e,t)=>t<=1?e:e+(e-1)*(t-1),Ao=(e,t,n,r=1)=>{let i=ko(t,r);return Math.floor((e[0]*(n-1)-n+i)/2)},jo=(e,t,n,r,i)=>{i??=Ao(e,t[0],r[0]);let a=[0,0,0,n];for(let n=0;n<3;n++)e[n]+2*i>=t[n]&&(a[n]=Math.trunc((e[n]-t[n]+2*i)/r[n]+1));return a},Mo=(e,t,n,r,i,a,o,s,c,l)=>{let u,d,f,p;if(e===`VALID`&&(e=0),typeof e==`number`){u={top:e,bottom:e,left:e,right:e,front:e,back:e};let m=jo([t,n,r,1],[s,c,l],1,[i,a,o],e);d=m[0],f=m[1],p=m[2]}else if(Array.isArray(e)){if(!e.every((e,t,n)=>e===n[0]))throw Error(`Unsupported padding parameter: ${e}`);u={top:e[0],bottom:e[1],left:e[2],right:e[3],front:e[4],back:e[5]};let m=jo([t,n,r,1],[s,c,l],1,[i,a,o],e[0]);d=m[0],f=m[1],p=m[2]}else if(e===`SAME_UPPER`){d=Math.ceil(t/i),f=Math.ceil(n/a),p=Math.ceil(r/o);let e=(d-1)*i+s-t,m=(f-1)*a+c-n,h=(p-1)*o+l-r,g=Math.floor(e/2),_=e-g,v=Math.floor(m/2),y=m-v,b=Math.floor(h/2),x=h-b;u={top:v,bottom:y,left:b,right:x,front:g,back:_}}else throw Error(`Unknown padding parameter: ${e}`);return{padInfo:u,outDepth:d,outHeight:f,outWidth:p}},No=(e,t,n,r,i,a=!1,o=`channelsLast`)=>{let s,c,l,u,d;if(o===`channelsLast`)[s,c,l,u,d]=e;else if(o===`channelsFirst`)[s,d,c,l,u]=e;else throw Error(`Unknown dataFormat ${o}`);let[f,,p,m,h]=t,[g,_,v]=Oo(n),[y,b,x]=Oo(r),S=ko(p,y),C=ko(m,b),w=ko(h,x),{padInfo:T,outDepth:E,outHeight:D,outWidth:O}=Mo(i,c,l,u,g,_,v,S,C,w),k=a?f*d:f,A=[0,0,0,0,0];return o===`channelsFirst`?A=[s,k,E,D,O]:o===`channelsLast`&&(A=[s,E,D,O,k]),{batchSize:s,dataFormat:o,inDepth:c,inHeight:l,inWidth:u,inChannels:d,outDepth:E,outHeight:D,outWidth:O,outChannels:k,padInfo:T,strideDepth:g,strideHeight:_,strideWidth:v,filterDepth:p,filterHeight:m,filterWidth:h,effectiveFilterDepth:S,effectiveFilterHeight:C,effectiveFilterWidth:w,dilationDepth:y,dilationHeight:b,dilationWidth:x,inShape:e,outShape:A,filterShape:t}},Po=(e,t,n,r,i,a)=>{let o=a===`channelsLast`,s=o?e[0].dims[3]:e[0].dims[1],c=!1,l=[64,1,1],u={x:n.map((e,t)=>t)},d=[Math.ceil(Do(u.x.map(e=>n[e]))/l[0]),1,1];U(`verbose`,()=>`[conv3d_naive_webgpu] dispatch = ${d}`);let f=c?o&&s%4!=0?3:4:1,p=W.size(n),m=[{type:12,data:p},{type:12,data:r},{type:12,data:i},{type:12,data:t.strides},{type:12,data:t.dilations}];no(t,m),m.push(...K(e[0].dims,e[1].dims));let h=[`rank`,`rank`],g=e.length===3;g&&(m.push(...K(e[2].dims)),h.push(`rank`)),m.push(...K(n));let _=a=>{let s=[{name:`output_size`,type:`u32`},{name:`filter_dims`,type:`u32`,length:r.length},{name:`pads`,type:`u32`,length:i.length},{name:`strides`,type:`u32`,length:t.strides.length},{name:`dilations`,type:`u32`,length:t.dilations.length}];ro(t,s);let l=c?4:1,u=er(e[0].dataType),d=J(`x`,e[0].dataType,e[0].dims.length,f===3?1:f),p=J(`W`,e[1].dataType,e[1].dims.length,l),m=[d,p],h=Y(`result`,e[0].dataType,n.length,l),_=``;if(g){let t=J(`bias`,e[2].dataType,e[2].dims.length,l);m.push(t),_+=` - fn getBiasByOutputCoords(coords : array) -> ${c?`vec4<${u}>`:u} { - return bias[${o?q(`coords`,4,5):q(`coords`,1,5)}${c?`/ 4`:``}]; - }`}let v=oo(f,u),y=to(t,v,u);return` - ${_} - fn getX(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { - let aIndices = array(d0, d1, d2, d3, d4); - return ${d.getByIndices(`aIndices`)}; - } - fn getW(d0 : u32, d1 : u32, d2 : u32, d3 : u32, d4 : u32) -> f32 { - let aIndices = array(d0, d1, d2, d3, d4); - return ${p.getByIndices(`aIndices`)}; - } - ${a.registerUniforms(s).declareVariables(...m,h)} - ${a.mainStart()} - ${a.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let coords = ${h.offsetToIndices(`global_idx`)}; - let batch = ${q(`coords`,0,d.rank)}; - let d2 = ${o?q(`coords`,d.rank-1,d.rank):q(`coords`,1,d.rank)}; - let xFRCCorner = vec3(${o?q(`coords`,1,d.rank):q(`coords`,2,d.rank)}, - ${o?q(`coords`,2,d.rank):q(`coords`,3,d.rank)}, - ${o?q(`coords`,3,d.rank):q(`coords`,4,d.rank)}) * uniforms.strides - uniforms.pads; - let xFCorner = xFRCCorner.x; - let xRCorner = xFRCCorner.y; - let xCCorner = xFRCCorner.z; - let xShapeY = ${o?q(`uniforms.x_shape`,1,d.rank):q(`uniforms.x_shape`,2,d.rank)}; - let xShapeZ = ${o?q(`uniforms.x_shape`,2,d.rank):q(`uniforms.x_shape`,3,d.rank)}; - let xShapeW = ${o?q(`uniforms.x_shape`,3,d.rank):q(`uniforms.x_shape`,4,d.rank)}; - let xShapeU = ${o?q(`uniforms.x_shape`,4,d.rank):q(`uniforms.x_shape`,1,d.rank)}; - let inputDepthNearestVec4 = (xShapeU / 4) * 4; - let inputDepthVec4Remainder = xShapeU % 4; - - var value = 0.0; - for (var wF = 0u; wF < uniforms.filter_dims[0]; wF++) { - let xF = xFCorner + wF * uniforms.dilations[0]; - if (xF < 0 || xF >= xShapeY) { - continue; - } - - for (var wR = 0u; wR < uniforms.filter_dims[1]; wR++) { - let xR = xRCorner + wR * uniforms.dilations[1]; - if (xR < 0 || xR >= xShapeZ) { - continue; - } - - for (var wC = 0u; wC < uniforms.filter_dims[2]; wC++) { - let xC = xCCorner + wC * uniforms.dilations[2]; - if (xC < 0 || xC >= xShapeW) { - continue; - } - - for (var d1 = 0u; d1 < inputDepthNearestVec4; d1 += 4) { - ${o?`let xValues = vec4( - getX(batch, xF, xR, xC, d1), - getX(batch, xF, xR, xC, d1 + 1), - getX(batch, xF, xR, xC, d1 + 2), - getX(batch, xF, xR, xC, d1 + 3)); - `:`let xValues = vec4( - getX(batch, d1, xF, xR, xC), - getX(batch, d1 + 1, xF, xR, xC), - getX(batch, d1 + 2, xF, xR, xC), - getX(batch, d1 + 3, xF, xR, xC)); - `} - let wValues = vec4( - getW(d2, d1, wF, wR, wC), - getW(d2, d1 + 1, wF, wR, wC), - getW(d2, d1 + 2, wF, wR, wC), - getW(d2, d1 + 3, wF, wR, wC)); - value += dot(xValues, wValues); - } - if (inputDepthVec4Remainder == 1) { - ${o?`value += getX(batch, xF, xR, xC, inputDepthNearestVec4) - * getW(d2, inputDepthNearestVec4, wF, wR, wC);`:`value += getX(batch, inputDepthNearestVec4, xF, xR, xC) - * getW(d2, inputDepthNearestVec4, wF, wR, wC);`} - } else if (inputDepthVec4Remainder == 2) { - ${o?`let xValues = vec2( - getX(batch, xF, xR, xC, inputDepthNearestVec4), - getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1)); - `:`let xValues = vec2( - getX(batch, inputDepthNearestVec4, xF, xR, xC), - getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC)); - `} - let wValues = vec2( - getW(d2, inputDepthNearestVec4, wF, wR, wC), - getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC)); - value += dot(xValues, wValues); - } else if (inputDepthVec4Remainder == 3) { - ${o?`let xValues = vec3( - getX(batch, xF, xR, xC, inputDepthNearestVec4), - getX(batch, xF, xR, xC, inputDepthNearestVec4 + 1), - getX(batch, xF, xR, xC, inputDepthNearestVec4 + 2)); - `:`let xValues = vec3( - getX(batch, inputDepthNearestVec4, xF, xR, xC), - getX(batch, inputDepthNearestVec4 + 1, xF, xR, xC), - getX(batch, inputDepthNearestVec4 + 2, xF, xR, xC)); - `} - let wValues = vec3( - getW(d2, inputDepthNearestVec4, wF, wR, wC), - getW(d2, inputDepthNearestVec4 + 1, wF, wR, wC), - getW(d2, inputDepthNearestVec4 + 2, wF, wR, wC)); - value += dot(xValues, wValues); - } - } - } - } - ${g?`value = value + getBiasByOutputCoords(coords)`:``}; - ${y} - result[global_idx] = f32(value); - }`};return{name:`Conv3DNaive`,shaderCache:{hint:`${t.cacheKey};${o};${f};${g}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:d[0],y:d[1],z:d[2]},programUniforms:m}),getShaderSource:_}}}),Io,Lo,Ro=M(()=>{"use strict";H(),G(),X(),ao(),Io=(e,t,n,r)=>{let i=e.length>2,a=i?`value += b[output_channel];`:``,o=e[0].dims,s=e[1].dims,c=t.format===`NHWC`,l=c?n[3]:n[1],u=l/t.group,d=c&&u>=4?nr(l):1,f=W.size(n)/d,p=[{type:12,data:f},{type:12,data:t.dilations},{type:12,data:[t.strides[0],t.strides[1]]},{type:12,data:[t.pads[0],t.pads[1]]},{type:12,data:u}];no(t,p),p.push(...K(o,[s[0],s[1],s[2],s[3]/d]));let m=i?[`rank`,`rank`,`rank`]:[`rank`,`rank`];p.push(...K([n[0],n[1],n[2],n[3]/d]));let h=r=>{let l=Y(`output`,e[0].dataType,n.length,d),u=er(l.type.tensor),f=to(t,l.type.value,u),p=J(`x`,e[0].dataType,o.length),m=J(`w`,e[1].dataType,s.length,d),h=[p,m];i&&h.push(J(`b`,e[2].dataType,e[2].dims,d));let g=[{name:`output_size`,type:`u32`},{name:`dilations`,type:`u32`,length:t.dilations.length},{name:`strides`,type:`u32`,length:2},{name:`pads`,type:`u32`,length:2},{name:`output_channels_per_group`,type:`u32`}];ro(t,g);let _=c?` - for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[0]; wHeight++) { - let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; - - if (xHeight < 0u || xHeight >= uniforms.x_shape[1]) { - continue; - } - - for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[1]; wWidth++) { - let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; - if (xWidth < 0u || xWidth >= uniforms.x_shape[2]) { - continue; - } - - for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[2]; wInChannel++) { - let input_channel = in_channel_offset + wInChannel; - let xVal = ${p.get(`batch`,`xHeight`,`xWidth`,`input_channel`)}; - let wVal = ${m.get(`wHeight`,`wWidth`,`wInChannel`,`output_channel`)}; - value += xVal * wVal; - } - } - } - `:` - for (var wInChannel: u32 = 0u; wInChannel < uniforms.w_shape[1]; wInChannel++) { - let input_channel = in_channel_offset + wInChannel; - for (var wHeight: u32 = 0u; wHeight < uniforms.w_shape[2]; wHeight++) { - let xHeight = xRCCorner.x + wHeight * uniforms.dilations[0]; - - if (xHeight < 0u || xHeight >= uniforms.x_shape[2]) { - continue; - } - - for (var wWidth: u32 = 0u; wWidth < uniforms.w_shape[3]; wWidth++) { - let xWidth = xRCCorner.y + wWidth * uniforms.dilations[1]; - if (xWidth < 0u || xWidth >= uniforms.x_shape[3]) { - continue; - } - - let xVal = ${p.get(`batch`,`input_channel`,`xHeight`,`xWidth`)}; - let wVal = ${m.get(`output_channel`,`wInChannel`,`wHeight`,`wWidth`)}; - value += xVal * wVal; - } - } - } - `;return` - ${r.registerUniforms(g).declareVariables(...h,l)} - - ${r.mainStart()} - ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let outputIndices = ${l.offsetToIndices(`global_idx`)}; - let batch: u32 = outputIndices[0]; - let output_channel: u32 = outputIndices[${c?3:1}]; - let xRCCorner: vec2 = vec2(outputIndices[${c?1:2}], outputIndices[${c?2:3}]) * uniforms.strides - uniforms.pads; - let group_id: u32 = output_channel * ${d} / uniforms.output_channels_per_group; - var in_channel_offset = group_id * uniforms.w_shape[${c?2:1}]; - - var value: ${l.type.value} = ${l.type.value}(0); - ${_} - ${a} - ${f} - ${l.setByOffset(`global_idx`,`value`)} - }`};return{name:`GroupedConv`,shaderCache:{hint:`${t.cacheKey}_${d}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},Lo=(e,t,n,r)=>{let i=e.length>2,a=nr(n[3]),o=nr(n[2]),s=W.size(n)/a/o,c=[e[0].dims[0],e[0].dims[1],e[0].dims[2],e[0].dims[3]/a],l=[e[1].dims[0],e[1].dims[1],e[1].dims[2],e[1].dims[3]/a],u=[n[0],n[1],n[2],n[3]/a],d=[{type:12,data:s},{type:6,data:[t.strides[0],t.strides[1]]},{type:6,data:[t.pads[0],t.pads[1]]}];no(t,d),d.push(...K(c,l,u));let f=(o-1)*t.strides[1]+l[1],p=n=>{let r=Y(`output`,e[0].dataType,u.length,a),s=er(r.type.tensor),d=to(t,r.type.value,s),p=J(`x`,e[0].dataType,c.length,a),m=J(`w`,e[1].dataType,l.length,a),h=[p,m];i&&h.push(J(`b`,e[2].dataType,e[2].dims,a));let g=i?`value += b[output_channel];`:``,_=[{name:`output_size`,type:`u32`},{name:`strides`,type:`i32`,length:2},{name:`pads`,type:`i32`,length:2}];return ro(t,_),` - ${n.registerUniforms(_).declareVariables(...h,r)} - ${n.mainStart()} - ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let width0 = uniforms.output_shape[3]; - let output_channel = global_idx % width0; - var index1 = global_idx / width0; - let width1 = uniforms.output_shape[2] / ${o}u; - let col = (index1 % width1) * ${o}u; - index1 = index1 / width1; - let row = index1 % uniforms.output_shape[1]; - let batch = index1 / uniforms.output_shape[1]; - - let x_corner = vec2(i32(row), i32(col)) * uniforms.strides - uniforms.pads; - - var x_vals: array<${p.type.value}, ${f}>; - var values: array<${r.type.value}, ${o}>; - let input_channel = output_channel; - // Use constant instead of uniform can give better performance for w's height/width. - for (var w_height: u32 = 0u; w_height < ${l[0]}; w_height++) { - let x_height = x_corner.x + i32(w_height); - if (x_height >= 0 && u32(x_height) < uniforms.x_shape[1]) { - for (var i = 0; i < ${f}; i++) { - let x_width = x_corner.y + i; - if (x_width >= 0 && u32(x_width) < uniforms.x_shape[2]) { - x_vals[i] = ${p.get(`batch`,`u32(x_height)`,`u32(x_width)`,`input_channel`)}; - } else { - x_vals[i] = ${p.type.value}(0); - } - } - for (var w_width: u32 = 0u; w_width < ${l[1]}; w_width++) { - let w_val = ${m.get(`w_height`,`w_width`,`0`,`output_channel`)}; - for (var i = 0u; i < ${o}u; i++) { - values[i] = fma(x_vals[i * u32(uniforms.strides[1]) + w_width], w_val, values[i]); - } - } - } - } - - for (var i = 0u; i < ${o}u; i++) { - var value = values[i]; - ${g} - ${d} - ${r.set(`batch`,`row`,`col + i`,`output_channel`,`value`)}; - } - }`};return{name:`GroupedConv-Vectorize`,shaderCache:{hint:`${t.cacheKey};${a};${o};${f};${l[0]};${l[1]}`,inputDependencies:i?[`rank`,`rank`,`type`]:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:r?r(n):n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:d}),getShaderSource:p}}}),zo,Bo,Vo,Ho,Uo,Wo,Go,Ko,qo,Jo=M(()=>{"use strict";G(),Eo(),Fo(),Co(),Ro(),ao(),mo(),yr(),zo=(e,t,n,r,i,a)=>{let o=e[0],s=e.slice(a?1:2,a?3:4),c=s.length,l=t[0],u=t.slice(2).map((e,t)=>e+(e-1)*(n[t]-1)),d=s.map((e,t)=>e+r[t]+r[t+c]).map((e,t)=>Math.floor((e-u[t]+i[t])/i[t]));return d.splice(0,0,o),d.splice(a?3:1,0,l),d},Bo=[2,3,1,0],Vo=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length>5)throw Error(`greater than 5D is not supported`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[1]*t.group;if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);if(e.length===3&&(e[2].dims.length!==1||e[1].dims[0]!==e[2].dims[0]))throw Error(`invalid bias`);let i=e[0].dims.length-2;if(t.dilations.length!==i)throw Error(`dilations should be ${i}D`);if(t.strides.length!==i)throw Error(`strides should be ${i}D`);if(t.pads.length!==i*2)throw Error(`pads should be ${i*2}D`);if(t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`)},Ho=(e,t)=>{let n=e.kernelShape.slice();n.length{let t=io(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],i=e.dilations,a=e.group,o=e.kernel_shape,s=e.pads,c=e.strides,l=e.w_is_const();return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},Wo=(e,t,n,r)=>{let i=n.format===`NHWC`,a=zo(t[0].dims,t[1].dims,n.dilations,n.pads,n.strides,i);if(n.group!==1){let o=[t[0]];if(i){let r=e.kernelCustomData.wT??e.compute(gr(t[1],Bo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),o.push(r)}else o.push(t[1]);t.length===3&&o.push(t[2]),!e.adapterInfo.isArchitecture(`ampere`)&&i&&t[1].dims[0]===n.group&&t[1].dims[1]===1&&n.dilations[0]===1&&n.dilations[1]===1?e.compute(Lo(o,n,a,r),{inputs:o}):e.compute(Io(o,n,a,r),{inputs:o});return}let o=t.length===3,s=t[0].dims[i?1:2],c=t[0].dims[i?2:3],l=t[0].dims[i?3:1],u=t[1].dims[2],d=t[1].dims[3],f=a[i?1:2],p=a[i?2:3],m=a[i?3:1],h=i&&u===s&&d===c&&n.pads[0]===0&&n.pads[1]===0;if(h||u===1&&d===1&&n.dilations[0]===1&&n.dilations[1]===1&&n.strides[0]===1&&n.strides[1]===1&&n.pads[0]===0&&n.pads[1]===0){let u=a[0],d,g,_,v=[];if(i){let r=e.kernelCustomData.wT??e.compute(gr(t[1],Bo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];if(n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=r),h){let e=s*c*l;d=t[0].reshape([1,u,e]),g=r.reshape([1,e,m]),_=[1,u,m]}else d=t[0].reshape([u,s*c,l]),g=r.reshape([1,l,m]),_=[u,f*p,m];v.push(d),v.push(g)}else d=t[0].reshape([u,l,s*c]),g=t[1].reshape([1,m,l]),_=[u,m,f*p],v.push(g),v.push(d);o&&v.push(t[2]);let y=_[2],b=v[0].dims[v[0].dims.length-1];y<8&&b<8?e.compute(po(v,n,a,_,i,r),{inputs:v}):e.compute(So(v,n,a,_,i,r),{inputs:v});return}let g=!0,_=e.kernelCustomData.wT??e.compute(gr(t[1],Bo),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=_);let v=[t[0],_];o&&v.push(t[2]);let y=i?f*p:m,b=i?m:f*p,x=u*d*l;e.compute(To(v,n,a,y,b,x,o,g,r),{inputs:v})},Go=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=[0,t.pads[0],0,t.pads[1]],a=[1].concat(t.strides),o=[1].concat(t.dilations),s=[1].concat(t.kernelShape),c=Ho({...t,pads:i,strides:a,dilations:o,kernelShape:s},r);Wo(e,r,c,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},Ko=(e,t,n)=>{let r=n.format===`NHWC`?`channelsLast`:`channelsFirst`,i=Ho(n,t),a=n.autoPad===`NOTSET`?n.pads:n.autoPad,o=No(t[0].dims,t[1].dims,n.strides,n.dilations,a,!1,r);e.compute(Po(t,i,o.outShape,[o.filterDepth,o.filterHeight,o.filterWidth],[o.padInfo.front,o.padInfo.top,o.padInfo.left],r))},qo=(e,t)=>{if(Vo(e.inputs,t),e.inputs[0].dims.length===3)Go(e,t);else if(e.inputs[0].dims.length===5)Ko(e,e.inputs,t);else{let n=Ho(t,e.inputs);Wo(e,e.inputs,n)}}}),Yo,Xo=M(()=>{"use strict";H(),mn(),G(),X(),Yo=(e,t,n)=>{let r=e.length>2,i=t.outputShape,a=t.format===`NHWC`,o=t.group,s=e[1].dims,c=s[2]/o,l=s[3],u=a?nr(c):1,d=a&&l===1&&c>=4,f=d?Math.floor(c/4)*4:Math.floor(c/u)*u,p=c-f,m=a?nr(l):1,h=a?l===1?u:m:1,g=W.size(i)/m,_=[Math.ceil(g/64),1,1];U(`verbose`,()=>`[conv2d_backprop_webgpu] dispatch = ${_}`);let v=[`rank`,`rank`],y=[t.strides[0],t.strides[1]],b=[t.kernelShape[a?1:2],t.kernelShape[a?2:3]],x=[t.dilations[0],t.dilations[1]],S=[b[0]+(t.dilations[0]<=1?0:(t.kernelShape[a?1:2]-1)*(t.dilations[0]-1)),b[1]+(t.dilations[1]<=1?0:(t.kernelShape[a?2:3]-1)*(t.dilations[1]-1))],C=[S[0]-1-Math.floor((t.pads[0]+t.pads[2])/2),S[1]-1-Math.floor((t.pads[1]+t.pads[3])/2)],w=[{type:12,data:g},{type:12,data:y},{type:12,data:b},{type:12,data:x},{type:12,data:S},{type:6,data:C},{type:12,data:f},{type:12,data:c},{type:12,data:l},...K(e[0].dims,e[1].dims)];r&&(w.push(...K(e[2].dims)),v.push(`rank`)),w.push(...K(i));let T=t=>{let n=[{name:`output_size`,type:`u32`},{name:`strides`,type:`u32`,length:y.length},{name:`filter_dims`,type:`u32`,length:b.length},{name:`dilations`,type:`u32`,length:b.length},{name:`effective_filter_dims`,type:`u32`,length:S.length},{name:`pads`,type:`i32`,length:C.length},{name:`input_channels_per_group_int`,type:`u32`},{name:`input_channels_per_group`,type:`u32`},{name:`output_channels_per_group`,type:`u32`}],o=er(e[0].dataType),s=a?1:2,c=a?2:3,l=a?3:1,f=J(`W`,e[1].dataType,e[1].dims.length,h),g=J(`Dy`,e[0].dataType,e[0].dims.length,u),_=[g,f];r&&_.push(J(`bias`,e[2].dataType,[i[l]].length,m));let v=Y(`result`,e[0].dataType,i.length,m),x=()=>{let e=``;if(d)u===4?e+=` - let xValue = ${g.getByOffset(`x_offset`)}; - let wValue = ${f.getByOffset(`w_offset`)}; - dotProd = dotProd + dot(xValue, wValue); - x_offset += 1u; - w_offset += 1u;`:u===2?e+=` - dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)})); - x_offset += 2u; - w_offset += 2u;`:u===1&&(e+=` - dotProd = dotProd + dot(vec4<${o}>(${g.getByOffset(`x_offset`)}, ${g.getByOffset(`x_offset + 1u`)}, ${g.getByOffset(`x_offset + 2u`)}, ${g.getByOffset(`x_offset + 3u`)}), vec4<${o}>(${f.getByOffset(`w_offset`)}, ${f.getByOffset(`w_offset + 1u`)}, ${f.getByOffset(`w_offset + 2u`)}, ${f.getByOffset(`w_offset + 3u`)})); - x_offset += 4u; - w_offset += 4u;`);else if(e+=` - let xValue = ${a?g.getByOffset(`${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}`):g.get(`batch`,`inputChannel`,`idyR`,`idyC`)}; - `,u===1)e+=` - let w_offset = ${f.indicesToOffset(`${f.type.indices}(u32(wRPerm), u32(wCPerm), inputChannel, wOutChannel)`)}; - let wValue = ${f.getByOffset(`w_offset / ${h}`)}; - dotProd = dotProd + xValue * wValue;`;else for(let t=0;t{if(p===0)return``;if(!d)throw Error(`packInputAs4 ${d} is not true.`);let e=``;if(u===1){e+=`dotProd = dotProd`;for(let t=0;t(i32(r), i32(c)) - uniforms.pads; - let dyRCorner = dyCorner.x; - let dyCCorner = dyCorner.y; - let groupId = d1 / uniforms.output_channels_per_group; - let wOutChannel = d1 - groupId * uniforms.output_channels_per_group; - // Convolve dy(?, ?, d2) with w(:, :, d1, d2) to compute dx(xR, xC, d1). - // ? = to be determined. : = across all values in that axis. - var dotProd = ${v.type.value}(0.0); - var wR: u32 = 0; - if (uniforms.dilations.x == 1) { - // Minimum wR >= 0 that satisfies (dyRCorner + wR) % (uniforms.strides.x) == 0 - wR = u32(((dyRCorner + i32(uniforms.strides.x) - 1) / i32(uniforms.strides.x)) * i32(uniforms.strides.x) - dyRCorner); - } - for (; wR < uniforms.effective_filter_dims.x; wR = wR + 1) { - if (wR % uniforms.dilations.x != 0) { - continue; - } - let dyR = (${o}(dyRCorner) + ${o}(wR)) / ${o}(uniforms.strides[0]); - let wRPerm = uniforms.filter_dims.x - 1 - wR / uniforms.dilations.x; - if (dyR < 0.0 || dyR >= ${o}(uniforms.Dy_shape[${s}]) || fract(dyR) > 0.0 || - wRPerm < 0) { - continue; - } - let idyR: u32 = u32(dyR); - var wC: u32 = 0; - if (uniforms.dilations.y == 1) { - // Minimum wC >= 0 that satisfies (dyCCorner + wC) % (uniforms.strides.y) == 0 - wC = u32(((dyCCorner + i32(uniforms.strides.y) - 1) / i32(uniforms.strides.y)) * i32(uniforms.strides.y) - dyCCorner); - } - for (; wC < uniforms.effective_filter_dims.y; wC = wC + 1) { - if (wC % uniforms.dilations.y != 0) { - continue; - } - let dyC = (${o}(dyCCorner) + ${o}(wC)) / ${o}(uniforms.strides.y); - let wCPerm = uniforms.filter_dims.y - 1 - wC / uniforms.dilations.y; - if (dyC < 0.0 || dyC >= ${o}(uniforms.Dy_shape[${c}]) || - fract(dyC) > 0.0 || wCPerm < 0) { - continue; - } - let idyC: u32 = u32(dyC); - var inputChannel = groupId * uniforms.input_channels_per_group; - ${d?` - var x_offset = ${g.indicesToOffset(`${g.type.indices}(batch, idyR, idyC, inputChannel)`)} / ${u}; - var w_offset = ${f.indicesToOffset(`${f.type.indices}(wRPerm, wCPerm, inputChannel, wOutChannel)`)} / ${h}; - `:``} - for (var d2: u32 = 0; d2 < uniforms.input_channels_per_group_int; d2 = d2 + ${d?4:u}) { - ${x()} - inputChannel = inputChannel + ${d?4:u}; - } - ${w()} - wC = wC + uniforms.strides.y - 1; - } - wR = wR + uniforms.strides[0] - 1; - } - let value = dotProd${r?` + bias[d1 / ${m}]`:``}; - ${v.setByOffset(`global_idx`,`value`)}; - `;return` - ${t.registerUniforms(n).declareVariables(..._,v)} - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)}; - ${T}}`};return{name:`ConvTranspose2D`,shaderCache:{hint:`${t.cacheKey};${u}${h}${m}${d}${p}`,inputDependencies:v},getRunData:()=>({dispatchGroup:{x:_[0],y:_[1],z:_[2]},outputs:[{dims:n?n(i):i,dataType:e[0].dataType}],programUniforms:w}),getShaderSource:T}}}),Zo,Qo,$o,es,ts,ns,rs,os,ss,cs=M(()=>{"use strict";Xo(),ao(),yr(),Zo=(e,t,n,r,i,a)=>(e-1)*t+n+(r-1)*i+1-a,Qo=(e,t,n,r,i)=>{let a=Math.floor(e/2);t===`SAME_UPPER`?(n[r]=a,n[i]=e-a):t===`SAME_LOWER`&&(n[r]=e-a,n[i]=a)},$o=(e,t,n,r,i,a,o,s,c,l)=>{let u=e.length-2,d=l.length===0;c.length{let n=e.kernelShape.slice();if(e.kernelShape.length===0||e.kernelShape.reduce((e,t)=>e*t,1)===0){n.length=0;for(let e=2;ee+t,0)===0){let e=t[0].dims.length-2;c=Array(e).fill(1)}let l=e.strides.slice();if(l.reduce((e,t)=>e+t,0)===0){let e=t[0].dims.length-2;l=Array(e).fill(1)}$o(s,n,c,e.autoPad,e.group,i,l,r,o,a);let u=Object.assign({},e);return Object.assign(u,{kernelShape:n,pads:i,outputPadding:o,outputShape:a,dilations:c,strides:l}),u},ts=e=>{let t=io(e),n=e.format,r=[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][typeof e.autoPad>`u`?0:e.autoPad],i=e.dilations,a=e.group,o=e.kernelShape,s=e.pads,c=e.strides,l=e.wIsConst(),u=e.outputPadding,d=e.outputShape;return{autoPad:r,format:n,dilations:i,group:a,kernelShape:o,outputPadding:u,outputShape:d,pads:s,strides:c,wIsConst:l,...t,cacheKey:`${e.format};${t.activation};`}},ns=(e,t)=>{if(!e||e.length!==2&&e.length!==3)throw Error(`Conv requires 2 or 3 inputs`);if(e[0].dims.length!==4&&e[0].dims.length!==3)throw Error(`currently only support 2-dimensional conv`);if(e[0].dims.length!==e[1].dims.length)throw Error(`filter does not have same dimension as input`);let n=e[0].dims[t.format===`NHWC`?e[0].dims.length-1:1],r=e[1].dims[0];if(n!==r)throw Error(`FILTER_IN_CHANNEL should be equal to DATA_CHANNEL`);let i=e[1].dims[1]*t.group;if(e.length===3&&(e[2].dims.length!==1||e[2].dims[0]!==i))throw Error(`invalid bias`);let a=e[0].dims.length-2;if(t.dilations.reduce((e,t)=>e+t,0)>0&&t.dilations.length!==a)throw Error(`dilations should be ${a}D`);if(t.strides.reduce((e,t)=>e+t,0)>0&&t.strides.length!==a)throw Error(`strides should be ${a}D`);if(t.pads.reduce((e,t)=>e+t,0)>0&&t.pads.length!==a*2)throw Error(`pads should be ${a*2}D`);if(t.outputPadding.length!==a&&t.outputPadding.length!==0)throw Error(`output_padding should be ${a}D`);if(t.kernelShape.reduce((e,t)=>e+t,0)>0&&t.kernelShape.length!==0&&t.kernelShape.length!==e[1].dims.length-2)throw Error(`invalid kernel shape`);if(t.outputShape.length!==0&&t.outputShape.length!==e[0].dims.length-2)throw Error(`invalid output shape`)},rs=(e,t,n,r)=>{let i=e.kernelCustomData.wT??e.compute(gr(t[1],[2,3,0,1]),{inputs:[1],outputs:[n.wIsConst?-2:-1]})[0];n.wIsConst&&!e.kernelCustomData.wT&&(e.kernelCustomData.wT=i);let a=[t[0],i];t.length===3&&a.push(t[2]),e.compute(Yo(a,n,r),{inputs:a})},os=(e,t)=>{let n=t.format===`NHWC`,r=[e.inputs[0].reshape(n?[e.inputs[0].dims[0],1,e.inputs[0].dims[1],e.inputs[0].dims[2]]:[e.inputs[0].dims[0],e.inputs[0].dims[1],1,e.inputs[0].dims[2]]),e.inputs[1].reshape([e.inputs[1].dims[0],e.inputs[1].dims[1],1,e.inputs[1].dims[2]])];e.inputs.length===3&&r.push(e.inputs[2]);let i=t.kernelShape;(i.length===0||i[0]===0)&&(i=[e.inputs[1].dims[2]]);let a=t.dilations;(a.length===0||a[0]===0)&&(a=[1]);let o=t.strides;(o.length===0||o[0]===0)&&(o=[1]);let s=t.pads;s.length===0&&(s=[0,0]),s=[0,s[0],0,s[1]],o=[1].concat(o),a=[1].concat(a),i=[1].concat(i);let c=t.outputPadding;c=[0].concat(c);let l=es({...t,pads:s,strides:o,dilations:a,kernelShape:i,outputPadding:c},r);rs(e,r,l,e=>n?[e[0],e[2],e[3]]:[e[0],e[1],e[3]])},ss=(e,t)=>{if(ns(e.inputs,t),e.inputs[0].dims.length===3)os(e,t);else{let n=es(t,e.inputs);rs(e,e.inputs,n)}}}),ls,us,ds,fs=M(()=>{"use strict";H(),G(),Zn(),X(),ls=(e,t,n,r)=>{let i=W.size(t),a=t.length,o=J(`input`,e,a),s=Y(`output`,e,a),c=n.dataType===6?n.getInt32Array()[0]:Number(n.getBigInt64Array()[0]),l=W.normalizeAxis(c,a),u=e=>{let t=` i32(${o.indicesGet(`inputIndices`,`uniforms.axis`)}) `,n=q(`uniforms.input_shape`,`uniforms.axis`,a),i=r.reverse?t+(r.exclusive?` + 1`:``):`0`,c=r.reverse?n:t+(r.exclusive?``:` + 1`);return` - ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axis`,`u32`).declareVariables(o,s)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - var inputIndices = ${s.offsetToIndices(`global_idx`)}; - var sum = ${s.type.value}(0); - let first : i32 = ${i}; - let last : i32 = ${c}; - for (var i : i32 = first; i < last; i++) { - ${o.indicesSet(`inputIndices`,`uniforms.axis`,`u32(i)`)}; - sum = sum + ${o.getByIndices(`inputIndices`)}; - } - ${s.setByOffset(`global_idx`,`sum`)}; - }`};return{name:`CumSum`,shaderCache:{hint:r.cacheKey,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:t,dataType:e}],dispatchGroup:{x:Math.ceil(i/64)},programUniforms:[{type:12,data:i},{type:12,data:l},...K(t,t)]}),getShaderSource:u}},us=(e,t)=>{let n=e.inputs[0].dims,r=e.inputs[0].dataType,i=e.inputs[1];e.compute(ls(r,n,i,t),{inputs:[0]})},ds=e=>{let t=e.exclusive===1,n=e.reverse===1;return Xn({exclusive:t,reverse:n})}}),ps,ms,hs,gs,_s,vs=M(()=>{"use strict";H(),G(),Zn(),X(),ps=e=>{if(!e||e.length!==1)throw Error(`DepthToSpace requires 1 input.`);if(e[0].dims.length!==4)throw Error(`DepthToSpace requires 4D input.`)},ms=(e,t,n,r)=>{let i=[];i.push(`fn perm(i: ${r.type.indices}) -> ${n.type.indices} { - var a: ${n.type.indices};`);for(let r=0;r{let n,r,i,a,o,s,c=t.format===`NHWC`,l=t.blocksize,u=t.mode===`DCR`;c?([n,r,i,a]=e.dims,o=u?[n,r,i,l,l,a/l**2]:[n,r,i,a/l**2,l,l],s=u?[0,1,3,2,4,5]:[0,1,4,2,5,3]):([n,r,i,a]=[e.dims[0],e.dims[2],e.dims[3],e.dims[1]],o=u?[n,l,l,a/l**2,r,i]:[n,a/l**2,l,l,r,i],s=u?[0,3,4,1,5,2]:[0,1,4,2,5,3]);let d=e.reshape(o),f=d.dims.length,p=e.dataType,m=J(`a`,p,f),h=Y(`output`,p,f),g=e=>` - ${e.registerUniform(`output_size`,`u32`).declareVariables(m,h)} - - ${ms(s,f,m,h)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let indices = ${h.offsetToIndices(`global_idx`)}; - let aIndices = perm(indices); - - ${h.setByOffset(`global_idx`,m.getByIndices(`aIndices`))} - }`;return{name:`DepthToSpace`,shaderCache:{hint:`${e.dims};${t.blocksize};${t.mode}`,inputDependencies:[`rank`]},getRunData:e=>{let t=c?[n,r*l,i*l,a/l**2]:[n,a/l**2,r*l,i*l],o=W.size(t),u=d.dims,f=W.sortBasedOnPerm(u,s);return{outputs:[{dims:t,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:[{type:12,data:o},...K(u,f)]}},getShaderSource:g}},gs=(e,t)=>{ps(e.inputs),e.compute(hs(e.inputs[0],t))},_s=e=>Xn({blocksize:e.blocksize,mode:e.mode,format:e.format})}),ys,bs,xs,Ss,Cs,ws,Ts,Es,Ds,Os,ks,As=M(()=>{"use strict";H(),G(),Zn(),X(),ys=`[a-zA-Z]|\\.\\.\\.`,bs=`(`+ys+`)+`,xs=`^`+bs+`$`,Ss=`(`+bs+`,)*`+bs,Cs=`^`+Ss+`$`,ws=class{constructor(e=-1){this.symbolToIndices=new Map,this.inputIndex=e}addSymbol(e,t){let n=this.symbolToIndices.get(e);n===void 0?n=[t]:n.push(t),this.symbolToIndices.set(e,n)}},Ts=class{constructor(e,t){var n;this.equation=t,this.hasEllipsis=!1,this.symbolToInfo=new Map,this.lhs=[],this.outputDims=[];let[r,i]=t.includes(`->`)?t.split(`->`,2):[t,``];if(!r.match(RegExp(Cs)))throw Error(`Invalid LHS term`);if(r.split(`,`).forEach((t,n)=>{let r=e[n].dims.slice();if(!t.match(RegExp(xs)))throw Error(`Invalid LHS term`);let i=this.processTerm(t,!0,r,n);this.lhs.push(i)}),i===``)i+=[...this.symbolToInfo.entries()].filter(([e,t])=>t.count===1||e===`...`).map(([e])=>e).join(``);else if(!i.match(RegExp(bs)))throw Error(`Invalid RHS`);(n=i.match(RegExp(ys,`g`)))?.forEach(e=>{if(e===`...`)this.outputDims=this.outputDims.concat(this.ellipsisDims);else{let t=this.symbolToInfo.get(e);if(t===void 0)throw Error(`Invalid RHS symbol`);this.outputDims.push(t.dimValue)}}),this.rhs=this.processTerm(i,!1,this.outputDims)}addSymbol(e,t,n){let r=this.symbolToInfo.get(e);if(r!==void 0){if(r.dimValue!==t&&r.count!==1)throw Error(`Dimension mismatch`);r.count++,r.inputIndices.push(n)}else r={count:1,dimValue:t,inputIndices:[n]};this.symbolToInfo.set(e,r)}processTerm(e,t,n,r=-1){let i=n.length,a=!1,o=[],s=0;if(!e.match(RegExp(xs))&&!t&&e!==``)throw Error(`Invalid LHS term`);let c=e.match(RegExp(ys,`g`)),l=new ws(r);return c?.forEach((e,u)=>{if(e===`...`){if(a)throw Error(`Only one ellipsis is allowed per input term`);a=!0;let e=i-c.length+1;if(e<0)throw Error(`Ellipsis out of bounds`);if(o=n.slice(s,s+e),this.hasEllipsis){if(this.ellipsisDims.length!==o.length||this.ellipsisDims.toString()!==o.toString())throw Error(`Ellipsis dimensions mismatch`)}else if(t)this.hasEllipsis=!0,this.ellipsisDims=o;else throw Error(`Ellipsis must be specified in the LHS`);for(let e=0;ee+`_max`,Ds=(e,t,n,r)=>{let i=e.map(e=>e.length).map((e,n)=>J(`input${n}`,t,e)),a=W.size(r),o=Y(`output`,t,r.length),s=[...n.symbolToInfo.keys()].filter(e=>!n.rhs.symbolToIndices.has(e)),c=e=>{let t=[],r=`var prod = 1.0;`,a=`var sum = 0.0;`,c=`sum += prod;`,l=[],u=[],d=[],f=[],p=n.symbolToInfo.size===n.rhs.symbolToIndices.size;n.symbolToInfo.forEach((e,r)=>{if(n.rhs.symbolToIndices.has(r)){var a;let s=(a=n.rhs.symbolToIndices.get(r))?.[0];s!==void 0&&n.lhs.forEach((n,a)=>{if(e.inputIndices.includes(a)){let e=n.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{t.push(`${i[a].indicesSet(`input${a}Indices`,e,o.indicesGet(`outputIndices`,s))}`)})}})}else n.lhs.forEach((t,n)=>{if(e.inputIndices.includes(n)){let e=t.symbolToIndices.get(r);if(e===void 0)throw Error(`Invalid symbol error`);e.forEach(e=>{l.push(`${i[n].indicesSet(`input${n}Indices`,e,`${r}`)}`)}),f.push(`prod *= ${i[n].getByIndices(`input${n}Indices`)};`)}}),u.push(`for(var ${r}: u32 = 0; ${r} < uniforms.${Es(r)}; ${r}++) {`),d.push(`}`)});let m=p?[...t,`let sum = ${i.map((e,t)=>e.getByIndices(`input${t}Indices`)).join(` * `)};`]:[...t,a,...u,...l,r,...f,c,...d];return` - ${e.registerUniforms(s.map(e=>({name:`${Es(e)}`,type:`u32`}))).registerUniform(`outputSize`,`u32`).declareVariables(...i,o)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - var outputIndices = ${o.offsetToIndices(`global_idx`)}; - ${i.map((e,t)=>`var input${t}Indices: ${i[t].type.indices};`).join(` -`)} - ${m.join(` -`)}; - ${o.setByOffset(`global_idx`,`sum`)}; - }`};return{name:`Einsum`,shaderCache:{hint:n.equation,inputDependencies:e.map(()=>`rank`)},getRunData:()=>{let i=s.filter(e=>n.symbolToInfo.has(e)).map(e=>{var t;return{type:12,data:(t=n.symbolToInfo.get(e))?.dimValue||0}});i.push({type:12,data:a});let o=e.map((e,t)=>[...K(e)]).reduce((e,t)=>e.concat(t),i);return o.push(...K(r)),{outputs:[{dims:r,dataType:t}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:o}},getShaderSource:c}},Os=(e,t)=>{let n=new Ts(e.inputs,t.equation),r=n.outputDims,i=e.inputs.map((e,t)=>e.dims);e.compute(Ds(i,e.inputs[0].dataType,n,r))},ks=e=>{let t=e.equation.replace(/\s+/g,``);return Xn({equation:t})}}),js,Ms,Ns,Ps,Fs,Is=M(()=>{"use strict";H(),G(),X(),js=e=>{if(!e||e.length!==2)throw Error(`Expand requires 2 input.`);let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=n.length{let n=e.length-t.length,r=[];for(let t=0;te.length>t.length?Ms(e,t):Ms(t,e),Ps=e=>{let t=e[0].dims,n=Array.from(e[1].getBigInt64Array(),Number),r=Ns(t,n),i=e[0].dataType,a=i===9||W.size(t)===1,o=i===9||t.length>0&&t[t.length-1]%4==0?4:1,s=a||r.length>0&&r[r.length-1]%4==0?4:1,c=Math.ceil(W.size(r)/s),l=e=>{let n=J(`input`,i,t.length,o),a=Y(`output`,i,r.length,s),c;if(i===9){let e=(e,t,r=``)=>` - let outputIndices${t} = ${a.offsetToIndices(`outputOffset + ${t}u`)}; - let offset${t} = ${n.broadcastedIndicesToOffset(`outputIndices${t}`,a)}; - let index${t} = offset${t} / 4u; - let component${t} = offset${t} % 4u; - ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); - `;c=` - let outputOffset = global_idx * ${s}; - var data = vec4(0); - ${e(`data`,0,`u32`)} - ${e(`data`,1,`u32`)} - ${e(`data`,2,`u32`)} - ${e(`data`,3,`u32`)} - ${a.setByOffset(`global_idx`,`data`)} - }`}else c=` - let outputIndices = ${a.offsetToIndices(`global_idx * ${s}`)}; - let inputOffset = ${n.broadcastedIndicesToOffset(`outputIndices`,a)}; - let data = ${a.type.value}(${n.getByOffset(`inputOffset / ${o}`)}); - ${a.setByOffset(`global_idx`,`data`)} - }`;return` - ${e.registerUniform(`vec_size`,`u32`).declareVariables(n,a)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - ${c}`},u=[{type:12,data:c},...K(t,r)];return{name:`Expand`,shaderCache:{hint:`${r.length};${o}${s}`,inputDependencies:[`rank`]},getShaderSource:l,getRunData:()=>({outputs:[{dims:r,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:u})}},Fs=e=>{js(e.inputs),e.compute(Ps(e.inputs),{inputs:[0]})}}),Ls,Rs,zs=M(()=>{"use strict";H(),G(),X(),ka(),Ls=e=>{let t=e[0].dataType,n=W.size(e[0].dims),r=W.size(e[1].dims),i=r%4==0,a=e=>{let n=J(`x`,t,[1],4),r=J(`bias`,t,[1],4),a=Y(`y`,t,[1],4),o=[{name:`output_vec_size`,type:`u32`},{name:`bias_size`,type:`u32`}],s=e=>` - let bias${e}_offset: u32 = (global_idx * 4 + ${e}) % uniforms.bias_size; - let bias${e} = ${r.getByOffset(`bias${e}_offset / 4`)}[bias${e}_offset % 4];`,c=i?` - let bias = ${r.getByOffset(`global_idx % (uniforms.bias_size / 4)`)};`:`${s(0)}${s(1)}${s(2)}${s(3)} - let bias = ${n.type.value}(bias0, bias1, bias2, bias3);`;return`${e.registerUniforms(o).declareVariables(n,r,a)} - - ${xa(tr(t))} - - ${e.mainStart(Qn)} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_vec_size`)} - - let x = ${n.getByOffset(`global_idx`)}; - ${c} - let x_in = x + bias; - ${a.setByOffset(`global_idx`,Sa(`x_in`))} - }`};return{name:`FastGeluWithBias`,shaderCache:{hint:`${i}`,inputDependencies:[`type`,`type`]},getShaderSource:a,getRunData:e=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],programUniforms:[{type:12,data:Math.ceil(n/4)},{type:12,data:r}],dispatchGroup:{x:Math.ceil(n/Qn/4)}})}},Rs=e=>{e.inputs.length<2||W.size(e.inputs[1].dims)===0?Ca(e):e.compute(Ls(e.inputs))}}),Bs,Vs,Hs,Us,Ws=M(()=>{"use strict";H(),G(),Zn(),X(),Bs=e=>{if(!e||e.length!==2)throw Error(`Gather requires 2 inputs.`)},Vs=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=W.normalizeAxis(t.axis,i),o=n.slice(0);o.splice(a,1,...r);let s=n[a],c=e[0].dataType===9?4:1,l=Math.ceil(W.size(o)/c),u=[{type:12,data:l},{type:6,data:s},{type:12,data:a},...K(e[0].dims,e[1].dims,o)],d=t=>{let n=J(`data`,e[0].dataType,e[0].dims.length,c),s=J(`inputIndices`,e[1].dataType,e[1].dims.length),l=Y(`output`,e[0].dataType,o.length,c),u=e=>{let t=r.length,c=`var indicesIndices${e} = ${s.type.indices}(0);`;for(let n=0;n1?`indicesIndices${e}[${n}]`:`indicesIndices${e}`} = ${o.length>1?`outputIndices${e}[uniforms.axis + ${n}]`:`outputIndices${e}`};`;c+=` - var idx${e} = ${s.getByIndices(`indicesIndices${e}`)}; - if (idx${e} < 0) { - idx${e} = idx${e} + uniforms.axisDimLimit; - } - var dataIndices${e} : ${n.type.indices}; - `;for(let n=0,r=0;n1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = u32(idx${e});`,r+=t):(c+=`${i>1?`dataIndices${e}[${n}]`:`dataIndices${e}`} = ${o.length>1?`outputIndices${e}[${r}]`:`outputIndices${e}`};`,r++);return c},d;if(e[0].dataType===9){let e=(e,t,r=``)=>` - let outputIndices${t} = ${l.offsetToIndices(`outputOffset + ${t}u`)}; - ${u(t)}; - let offset${t} = ${n.indicesToOffset(`dataIndices${t}`)}; - let index${t} = offset${t} / 4u; - let component${t} = offset${t} % 4u; - ${e}[${t}] = ${r}(${n.getByOffset(`index${t}`)}[component${t}]); - `;d=` - let outputOffset = global_idx * ${c}; - var value = vec4(0); - ${e(`value`,0,`u32`)} - ${e(`value`,1,`u32`)} - ${e(`value`,2,`u32`)} - ${e(`value`,3,`u32`)} - ${l.setByOffset(`global_idx`,`value`)} - `}else d=` - let outputIndices = ${l.offsetToIndices(`global_idx`)}; - ${u(``)}; - let value = ${n.getByIndices(`dataIndices`)}; - ${l.setByOffset(`global_idx`,`value`)}; - `;return` - ${t.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(n,s,l)} - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - ${d} - }`};return{name:`Gather`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:o,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:d}},Hs=e=>Xn({axis:e.axis}),Us=(e,t)=>{let n=e.inputs;Bs(n),e.compute(Vs(e.inputs,t))}}),Gs,Ks,qs,Js=M(()=>{"use strict";H(),G(),X(),Gs=(e,t,n,r,i,a,o,s,c)=>{let l=[{type:12,data:a},{type:12,data:r},{type:12,data:i},{type:12,data:n},{type:12,data:o},{type:12,data:s},{type:12,data:c}],u=[a];l.push(...K(t.dims,u));let d=e=>{let r=J(`indices_data`,t.dataType,t.dims.length),a=Y(`input_slice_offsets_data`,12,1,1),o=[r,a],s=[{name:`output_size`,type:`u32`},{name:`batch_dims`,type:`u32`},{name:`input_dims`,type:`u32`,length:i.length},{name:`sizes_from_slice_dims_data`,type:`u32`,length:n.length},{name:`num_slices_per_batch`,type:`u32`},{name:`input_batch_stride`,type:`u32`},{name:`num_slice_dims`,type:`u32`}];return` - ${e.registerUniforms(s).declareVariables(...o)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let batch_idx = global_idx / uniforms.num_slices_per_batch; - let base_offset = batch_idx * uniforms.input_batch_stride; - - let slice_indices_base_offset = global_idx * uniforms.num_slice_dims; - var relative_slice_offset = 0; - for (var dim_idx = 0u; dim_idx < uniforms.num_slice_dims; dim_idx ++) { - var index = i32(indices_data[dim_idx + slice_indices_base_offset].x); - let input_dim_idx = uniforms.batch_dims + dim_idx; - if (index < 0) { - ${i.length===1?`index += i32(uniforms.input_dims);`:`index += i32(uniforms.input_dims[input_dim_idx]);`} - } - ${n.length===1?`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data);`:`relative_slice_offset += index * i32(uniforms.sizes_from_slice_dims_data[dim_idx]);`} - } - - input_slice_offsets_data[global_idx] = base_offset + u32(relative_slice_offset); - }`};return e.compute({name:`computeSliceOffsets`,shaderCache:{hint:`${i.length}_${n.length}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:u,dataType:e.inputs[1].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:l}),getShaderSource:d},{inputs:[t],outputs:[-1]})[0]},Ks=(e,t)=>{let n=e.inputs,r=n[0].dims,i=n[0].dataType,a=n[1].dims,o=a[a.length-1],s=W.sizeToDimension(a,a.length-1),c=W.sizeFromDimension(r,t.batchDims+o),l=W.sizeToDimension(r,t.batchDims),u=W.sizeFromDimension(r,t.batchDims),d=s/l,f=Array(o),p=c;for(let e=0;er.length)throw Error(`last dimension of indices must not be larger than rank of input tensor`);let g=a.slice(0,-1).concat(r.slice(h)),_=W.size(g),v=[{type:12,data:_},{type:12,data:c},...K(n[0].dims,m.dims,g)],y=e=>{let t=J(`data`,n[0].dataType,n[0].dims.length),r=J(`slice_offsets`,12,m.dims.length),i=Y(`output`,n[0].dataType,g.length);return` - ${e.registerUniform(`output_size`,`u32`).registerUniform(`slice_size`,`u32`).declareVariables(t,r,i)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let slice_offset = slice_offsets[global_idx / uniforms.slice_size]; - output[global_idx] = data[u32(slice_offset) + global_idx % uniforms.slice_size]; - }`};e.compute({name:`GatherND`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:g,dataType:i}],dispatchGroup:{x:Math.ceil(_/64)},programUniforms:v}),getShaderSource:y},{inputs:[n[0],m]})},qs=e=>({batchDims:e.batch_dims,cacheKey:``})}),Ys,Xs,Zs,Qs,$s=M(()=>{"use strict";H(),G(),Zn(),X(),Ys=(e,t)=>{if(e.length<3||e.length>4)throw Error(`GatherBlockQuantized requires 3 or 4 inputs.`);let n=W.normalizeAxis(t.quantizeAxis,e[0].dims.length),r=t.blockSize,i=e[0],a=e[2],o=e.length===4?e[3]:void 0;if(a.dims.length!==i.dims.length||!i.dims.map((e,t)=>t===n?Math.ceil(e/r)===a.dims[t]:e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Scales must have the same rank as the input tensor and the dims should match except on gatherAxis.`);if(o){if(o.dataType!==i.dataType)throw Error(`Zero point must have the same data type as the input tensor.`);if(o.dims.length!==a.dims.length||!o.dims.map((e,t)=>e===a.dims[t]).reduce((e,t)=>e&&t,!0))throw Error(`Zero point must have the same rank as the input tensor and the dims should match except on quantizeAxis.`)}},Xs=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n.length,a=W.normalizeAxis(t.gatherAxis,i),o=W.normalizeAxis(t.quantizeAxis,i),s=n.slice(0);s.splice(a,1,...r);let c=W.size(s),l=e[2].dataType,u=e[0].dataType===22,d=[{type:12,data:c},{type:12,data:o},{type:12,data:a},{type:12,data:t.blockSize},...K(...e.map((e,t)=>e.dims),s)],f=t=>{let i=J(`data`,e[0].dataType,e[0].dims.length),o=J(`inputIndices`,e[1].dataType,e[1].dims.length),c=J(`scales`,e[2].dataType,e[2].dims.length),d=e.length>3?J(`zeroPoint`,e[3].dataType,e[3].dims.length):void 0,f=Y(`output`,l,s.length),p=[i,o,c];d&&p.push(d);let m=[{name:`output_size`,type:`u32`},{name:`quantize_axis`,type:`u32`},{name:`gather_axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` - ${t.registerUniforms(m).declareVariables(...p,f)} - ${t.mainStart()} - let output_indices = ${f.offsetToIndices(`global_idx`)}; - var indices_indices = ${o.type.indices}(0); - ${r.length>1?` - for (var i: u32 = 0; i < ${r.length}; i++) { - let index = ${f.indicesGet(`output_indices`,`uniforms.gather_axis + i`)}; - ${o.indicesSet(`indices_indices`,`i`,`index`)}; - }`:`indices_indices = ${f.indicesGet(`output_indices`,`uniforms.gather_axis`)};`}; - var data_indices = ${i.type.indices}(0); - for (var i: u32 = 0; i < uniforms.gather_axis; i++) { - let index = ${f.indicesGet(`output_indices`,`i`)}; - ${i.indicesSet(`data_indices`,`i`,`index`)}; - } - var index_from_indices = ${o.getByIndices(`indices_indices`)}; - if (index_from_indices < 0) { - index_from_indices += ${n[a]}; - } - ${i.indicesSet(`data_indices`,`uniforms.gather_axis`,`u32(index_from_indices)`)}; - for (var i = uniforms.gather_axis + 1; i < ${s.length}; i++) { - let index = ${f.indicesGet(`output_indices`,`i + ${r.length} - 1`)}; - ${i.indicesSet(`data_indices`,`i`,`index`)}; - } - let data_offset = ${i.indicesToOffset(`data_indices`)}; - let data_index = data_offset % 8; - // Convert 4-bit packed data to 8-bit packed data. - let packed_4bit_quantized_data = ${i.getByOffset(`data_offset / 8`)}; - let packed_8bit_quantized_data = (packed_4bit_quantized_data >> (4 * (data_index % 2))) & 0x0f0f0f0f; - let quantized_data_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_quantized_data)); - let quantized_data = quantized_data_vec[data_index / 2]; - var scale_indices = data_indices; - let quantize_axis_index = ${c.indicesGet(`data_indices`,`uniforms.quantize_axis`)} / uniforms.block_size; - ${c.indicesSet(`scale_indices`,`uniforms.quantize_axis`,`quantize_axis_index`)}; - var scale = ${c.getByIndices(`scale_indices`)}; - ${d?` - let zero_point_indices = scale_indices; - let zero_point_offset = ${d.indicesToOffset(`zero_point_indices`)}; - let zero_point_index = zero_point_offset % 8; - let packed_4bit_zero_points = ${d.getByOffset(`zero_point_offset / 8`)}; - let packed_8bit_zero_points = (packed_4bit_zero_points >> (4 * (zero_point_index % 2))) & 0x0f0f0f0f; - let zero_point_vec = ${u?`unpack4xI8`:`unpack4xU8`}(u32(packed_8bit_zero_points)); - let zero_point = zero_point_vec[zero_point_index / 2];`:`var zero_point = 0`}; - let dequantized_data = ${tr(l)}(quantized_data - zero_point) * scale; - ${f.setByOffset(`global_idx`,`dequantized_data`)}; - }`};return{name:`GatherBlockQuantized`,shaderCache:{hint:`${t.cacheKey};${e.filter((e,t)=>t!==1).map(e=>e.dims.join(`_`)).join(`;`)}`,inputDependencies:Array.from({length:e.length},(e,t)=>`rank`)},getRunData:()=>({outputs:[{dims:s,dataType:l}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:d}),getShaderSource:f}},Zs=(e,t)=>{let n=e.inputs;Ys(n,t),e.compute(Xs(e.inputs,t))},Qs=e=>Xn({blockSize:e.blockSize,gatherAxis:e.gatherAxis,quantizeAxis:e.quantizeAxis})}),ec,tc,nc,rc,ic=M(()=>{"use strict";H(),G(),Zn(),X(),ec=e=>{if(!e||e.length!==2)throw Error(`GatherElements requires 2 inputs.`);if(e[0].dims.length<1)throw Error(`GatherElements requires that the data input be rank >= 1.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`GatherElements requires that the data input and - indices input tensors be of same rank.`)},tc=(e,t)=>{let n=e[0].dims,r=e[0].dataType,i=n.length,a=e[1].dims,o=e[1].dataType,s=W.normalizeAxis(t.axis,i),c=n[s],l=a.slice(0),u=W.size(l),d=J(`input`,r,i),f=J(`indicesInput`,o,a.length),p=Y(`output`,r,l.length),m=[{type:12,data:u},{type:6,data:c},{type:12,data:s}];return m.push(...K(n,a,l)),{name:`GatherElements`,shaderCache:{inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:l,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:m}),getShaderSource:e=>` - ${e.registerUniform(`outputSize`,`u32`).registerUniform(`axisDimLimit`,`i32`).registerUniform(`axis`,`u32`).declareVariables(d,f,p)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - - let outputIndices = ${p.offsetToIndices(`global_idx`)}; - - var idx = ${f.getByOffset(`global_idx`)}; - if (idx < 0) { - idx = idx + uniforms.axisDimLimit; - } - var inputIndices = ${d.type.indices}(outputIndices); - ${d.indicesSet(`inputIndices`,`uniforms.axis`,`u32(idx)`)}; - let value = ${d.getByIndices(`inputIndices`)}; - - ${p.setByOffset(`global_idx`,`value`)}; - }`}},nc=e=>Xn({axis:e.axis}),rc=(e,t)=>{let n=e.inputs;ec(n),e.compute(tc(e.inputs,t))}}),ac,oc,sc,cc,lc=M(()=>{"use strict";H(),G(),X(),ac=e=>{if(!e)throw Error(`Input is missing`);if(e.length<2||e.length>3)throw Error(`Invaid input number.`);if(e.length===3&&e[2].dims.length>2)throw Error(`Invalid input shape of C`);if(e[0].dataType!==e[1].dataType||e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`Input types are mismatched`)},oc=(e,t)=>{let n=e[0].dims.slice(),r=e[1].dims.slice(),[i,a,o]=vn.getShapeOfGemmResult(n,t.transA,r,t.transB,e.length===3?e[2].dims:void 0),s=[i,a];if(!s)throw Error(`Can't use gemm on the given tensors`);let c=16,l=Math.ceil(a/c),u=Math.ceil(i/c),d=!0,f=W.size(s),p=[{type:12,data:d?l:f},{type:12,data:i},{type:12,data:a},{type:12,data:o},{type:1,data:t.alpha},{type:1,data:t.beta}],m=[`type`,`type`];e.length===3&&(p.push(...K(e[2].dims)),m.push(`rank`)),p.push(...K(s));let h=n=>{let r=``;t.transA&&t.transB?r=`value += a[k * uniforms.M + m] * b[n * uniforms.K + k];`:t.transA&&!t.transB?r=`value += a[k * uniforms.M + m] * b[k * uniforms.N + n];`:!t.transA&&t.transB?r=`value += a[m * uniforms.K + k] * b[n * uniforms.K + k];`:!t.transA&&!t.transB&&(r=`value += a[m * uniforms.K + k] * b[k * uniforms.N + n];`);let i=t.alpha===1?``:`value *= uniforms.alpha;`,a=J(`a`,e[0].dataType,e[0].dims),o=J(`b`,e[1].dataType,e[1].dims),c=a.type.value,l=null,u=[a,o];e.length===3&&(l=J(`c`,e[2].dataType,e[2].dims.length),u.push(l));let d=Y(`output`,e[0].dataType,s.length);u.push(d);let f=[{name:`output_size`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}];return` - ${n.registerUniforms(f).declareVariables(...u)} - - ${n.mainStart()} - ${n.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let m = global_idx / uniforms.N; - let n = global_idx % uniforms.N; - - var value = ${c}(0); - for (var k: u32 = 0u; k < uniforms.K; k++) { - ${r} - } - - ${i} - ${l==null?``:`let cOffset = ${l.broadcastedIndicesToOffset(`vec2(m, n)`,d)}; value += ${c}(uniforms.beta) * ${l.getByOffset(`cOffset`)};`} - output[global_idx] = value; - }`},g=n=>{let r=J(`a`,e[0].dataType,e[0].dims),i=J(`b`,e[1].dataType,e[1].dims),a=null,o=[r,i];e.length===3&&(a=J(`c`,e[2].dataType,e[2].dims.length),o.push(a));let l=Y(`output`,e[0].dataType,s.length);o.push(l);let u=[{name:`num_tile_n`,type:`u32`},{name:`M`,type:`u32`},{name:`N`,type:`u32`},{name:`K`,type:`u32`},{name:`alpha`,type:`f32`},{name:`beta`,type:`f32`}],d=``,f=``;t.transA&&t.transB?(f=` - var col = tile_row_start + local_id.x; - var row = k_start + local_id.y; - if (col < uniforms.M && row < uniforms.K) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = k_start + local_id.x; - row = tile_col_start + local_id.y; - if (col < uniforms.K && row < uniforms.N) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[k][local_id.y] * tile_b[local_id.x][k];`):t.transA&&!t.transB?(f=` - var col = tile_row_start + local_id.x; - var row = k_start + local_id.y; - if (col < uniforms.M && row < uniforms.K) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.M + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = tile_col_start + local_id.x; - row = k_start + local_id.y; - if (col < uniforms.N && row < uniforms.K) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[k][local_id.y] * tile_b[k][local_id.x];`):!t.transA&&t.transB?(f=` - var col = k_start + local_id.x; - var row = tile_row_start + local_id.y; - if (col < uniforms.K && row < uniforms.M) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = k_start + local_id.x; - row = tile_col_start + local_id.y; - if (col < uniforms.K && row < uniforms.N) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.K + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[local_id.y][k] * tile_b[local_id.x][k];`):!t.transA&&!t.transB&&(f=` - var col = k_start + local_id.x; - var row = tile_row_start + local_id.y; - if (col < uniforms.K && row < uniforms.M) { - tile_a[local_id.y][local_id.x] = a[row * uniforms.K + col]; - } else { - tile_a[local_id.y][local_id.x] = ${r.type.value}(0); - } - - col = tile_col_start + local_id.x; - row = k_start + local_id.y; - if (col < uniforms.N && row < uniforms.K) { - tile_b[local_id.y][local_id.x] = b[row * uniforms.N + col]; - } else { - tile_b[local_id.y][local_id.x] = ${i.type.value}(0); - } - `,d=`value += tile_a[local_id.y][k] * tile_b[k][local_id.x];`);let p=t.alpha===1?``:`value *= uniforms.alpha;`;return` - ${n.registerUniforms(u).declareVariables(...o)} - var tile_a: array, ${c}>; - var tile_b: array, ${c}>; - ${n.mainStart([c,c,1])} - let tile_col_start = (workgroup_index % uniforms.num_tile_n) * ${c}; - let tile_row_start = (workgroup_index / uniforms.num_tile_n) * ${c}; - let num_tiles = (uniforms.K - 1) / ${c} + 1; - var k_start = 0u; - var value = ${l.type.value}(0); - for (var t: u32 = 0u; t < num_tiles; t++) { - ${f} - k_start = k_start + ${c}; - workgroupBarrier(); - - for (var k: u32 = 0u; k < ${c}; k++) { - ${d} - } - workgroupBarrier(); - } - - ${p} - let m = tile_row_start + local_id.y; - let n = tile_col_start + local_id.x; - ${a==null?``:`let cOffset = ${a.broadcastedIndicesToOffset(`vec2(m, n)`,l)}; value += ${l.type.value}(uniforms.beta) * ${a.getByOffset(`cOffset`)};`} - if (m < uniforms.M && n < uniforms.N) { - output[m * uniforms.N + n] = value; - } - }`};return d?{name:`GemmShared`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:l*u},programUniforms:p}),getShaderSource:g}:{name:`Gemm`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:s,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:p}),getShaderSource:h}},sc=e=>{let t=e.transA,n=e.transB,r=e.alpha,i=e.beta;return{transA:t,transB:n,alpha:r,beta:i,cacheKey:`${e.transA};${e.transB};${e.alpha===1}`}},cc=(e,t)=>{ac(e.inputs),e.compute(oc(e.inputs,t))}}),uc,dc,fc,pc,mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc=M(()=>{"use strict";H(),G(),Zn(),X(),[uc,dc,fc,pc]=[0,1,2,3],mc=e=>{if(e[0].dims.length!==4)throw Error(`only 4-D tensor is supported.`);if(e[0].dims.length!==e[1].dims.length)throw Error(`input dimensions must be equal to grid dimensions`);if(e[0].dims.length-2!==e[1].dims[e[1].dims.length-1])throw Error(`last dimension of grid must be equal to ${e[0].dims.length-2}`);if(e[0].dims[0]!==e[1].dims[0])throw Error(`grid batch size must match input batch size`)},hc=` - fn gs_get_cubic_coeffs(x: f32) -> vec4 { - let cubic_alpha = -0.75f; - let x_abs = abs(x); - var coeffs: vec4; - coeffs[0] = (((cubic_alpha * (x_abs + 1) - 5 * cubic_alpha) * (x_abs + 1) + 8 * cubic_alpha) * (x_abs + 1) - 4 * cubic_alpha); - coeffs[1] = (((cubic_alpha + 2) * x_abs - (cubic_alpha + 3)) * x_abs * x_abs + 1); - coeffs[2] = (((cubic_alpha + 2) * (1 - x_abs) - (cubic_alpha + 3)) * (1 - x_abs) * (1 - x_abs) + 1); - coeffs[3] = (((cubic_alpha * (2 - x_abs) - 5 * cubic_alpha) * (2 - x_abs) + 8 * cubic_alpha) * (2 - x_abs) - 4 * cubic_alpha); - return coeffs; - } -`,gc=e=>` - fn gs_bicubic_interpolate(p: mat4x4<${e}>, x: f32, y: f32) -> ${e} { - var v: vec4; - var coeffs = gs_get_cubic_coeffs(x); - for (var i = 0; i < 4; i++) { - v[i] = coeffs[0] * p[i][0] + coeffs[1] * p[i][1] + coeffs[2] * p[i][2] + coeffs[3] * p[i][3]; - } - coeffs = gs_get_cubic_coeffs(y); - let pixel = ${e}(coeffs[0] * v[0] + coeffs[1] * v[1] + coeffs[2] * v[2] + coeffs[3] * v[3]); - return pixel; - } -`,_c=e=>` - fn gs_denormalize(n: f32, length: i32) -> f32 { - ${e.alignCorners===0?` - // alignCorners: false => [-1, 1] to [-0.5, length - 0.5] - return ((n + 1.0) * f32(length) - 1.0) / 2.0; - `:` - // alignCorners: true => [-1, 1] to [0, length - 1] - return (n + 1.0) / 2.0 * (f32(length - 1)); - `} - } -`,vc=e=>` - ${e.paddingMode===`reflection`?` - fn gs_reflect(x: i32, x_min: f32, x_max: f32) -> u32 { - var dx = 0.0; - var fx = f32(x); - let range = x_max - x_min; - if (fx < x_min) { - dx = x_min - fx; - let n = u32(dx / range); - let r = dx - f32(n) * range; - if (n % 2 == 0) { - fx = x_min + r; - } else { - fx = x_max - r; - } - } else if (fx > x_max) { - dx = fx - x_max; - let n = u32(dx / range); - let r = dx - f32(n) * range; - if (n % 2 == 0) { - fx = x_max - r; - } else { - fx = x_min + r; - } - } - return u32(fx); - }`:``} -`,yc=(e,t,n)=>` - fn pixel_at_grid(r: i32, c: i32, H: i32, W: i32, batch: u32, channel: u32, border: vec4) -> ${t} { - var pixel = ${t}(0); - var indices = vec4(0); - indices[${uc}] = batch; - indices[${dc}] = channel;`+(()=>{switch(n.paddingMode){case`zeros`:return` - if (r >= 0 && r < H && c >=0 && c < W) { - indices[${fc}] = u32(r); - indices[${pc}] = u32(c); - } else { - return ${t}(0); - } - `;case`border`:return` - indices[${fc}] = u32(clamp(r, 0, H - 1)); - indices[${pc}] = u32(clamp(c, 0, W - 1)); - `;case`reflection`:return` - indices[${fc}] = gs_reflect(r, border[1], border[3]); - indices[${pc}] = gs_reflect(c, border[0], border[2]); - `;default:throw Error(`padding mode ${n.paddingMode} is not supported`)}})()+` - return ${e.getByIndices(`indices`)}; - } -`,bc=(e,t,n)=>(()=>{switch(n.mode){case`nearest`:return` - let result = pixel_at_grid(i32(round(y)), i32(round(x)), H_in, W_in, indices[${uc}], indices[${dc}], border); - `;case`bilinear`:return` - let x1 = i32(floor(x)); - let y1 = i32(floor(y)); - let x2 = x1 + 1; - let y2 = y1 + 1; - - let p11 = pixel_at_grid(y1, x1, H_in, W_in, indices[${uc}], indices[${dc}], border); - let p12 = pixel_at_grid(y1, x2, H_in, W_in, indices[${uc}], indices[${dc}], border); - let p21 = pixel_at_grid(y2, x1, H_in, W_in, indices[${uc}], indices[${dc}], border); - let p22 = pixel_at_grid(y2, x2, H_in, W_in, indices[${uc}], indices[${dc}], border); - - let dx2 = ${t}(f32(x2) - x); - let dx1 = ${t}(x - f32(x1)); - let dy2 = ${t}(f32(y2) - y); - let dy1 = ${t}(y - f32(y1)); - let result = dy2 * (dx2 * p11 + dx1 * p12) + dy1 * (dx2 * p21 + dx1 * p22); - `;case`bicubic`:return` - let x0 = i32(floor(x)) - 1; - let y0 = i32(floor(y)) - 1; - var p: mat4x4<${t}>; - for (var h = 0; h < 4; h++) { - for (var w = 0; w < 4; w++) { - p[h][w] = pixel_at_grid(h + y0, w + x0, H_in, W_in, indices[${uc}], indices[${dc}], border); - } - } - - let dx = x - f32(x0 + 1); - let dy = y - f32(y0 + 1); - let result = gs_bicubic_interpolate(p, dx, dy); - `;default:throw Error(`mode ${n.mode} is not supported`)}})()+`${e.setByOffset(`global_idx`,`result`)}`,xc=(e,t)=>{let n=J(`x`,e[0].dataType,e[0].dims.length),r=[e[1].dims[0],e[1].dims[1],e[1].dims[2]],i=J(`grid`,e[1].dataType,r.length,2),a=[e[0].dims[0],e[0].dims[1],e[1].dims[1],e[1].dims[2]];t.format===`NHWC`&&(a=[e[0].dims[0],e[1].dims[1],e[1].dims[2],e[0].dims[3]],[uc,dc,fc,pc]=[0,3,1,2]);let o=Y(`output`,e[0].dataType,a.length),s=n.type.value,c=W.size(a),l=[{type:12,data:c},...K(e[0].dims,r,a)],u=e=>` - ${e.registerUniform(`output_size`,`u32`).declareVariables(n,i,o)} - ${hc} - ${gc(s)} - ${_c(t)} - ${vc(t)} - ${yc(n,s,t)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let H_in = i32(uniforms.x_shape[${fc}]); - let W_in = i32(uniforms.x_shape[${pc}]); - - ${t.alignCorners===0?` - let x_min = -0.5; - let x_max = f32(W_in) - 0.5; - let y_min = -0.5; - let y_max = f32(H_in) - 0.5; - `:` - let x_min = 0.0; - let x_max = f32(W_in) - 1.0; - let y_min = 0.0; - let y_max = f32(H_in) - 1.0; - `}; - let border = vec4(x_min, y_min, x_max, y_max); - - let indices = ${o.offsetToIndices(`global_idx`)}; - var grid_indices = vec3(indices[${uc}], indices[${fc}], indices[${pc}]); - let nxy = ${i.getByIndices(`grid_indices`)}; - var x = gs_denormalize(f32(nxy[0]), W_in); - var y = gs_denormalize(f32(nxy[1]), H_in); - - ${bc(o,s,t)} - }`;return{name:`GridSample`,shaderCache:{hint:`${t.cacheKey}`,inputDependencies:[`type`,`type`]},getRunData:e=>{let t=W.size(a);return{outputs:[{dims:a,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(t/64)},programUniforms:l}},getShaderSource:u}},Sc=(e,t)=>{mc(e.inputs),e.compute(xc(e.inputs,t))},Cc=e=>Xn({alignCorners:e.align_corners,mode:e.mode,paddingMode:e.padding_mode,format:e.format})}),Tc,Ec,Dc,Oc,kc,Ac,jc,Mc=M(()=>{"use strict";H(),G(),Zn(),Rn(),Oi(),X(),yr(),Tc=(e,t)=>e.length>t&&e[t].dims.length>0?e[t]:void 0,Ec=(e,t)=>{let n=e[0],r=Tc(e,1),i=Tc(e,2),a=Tc(e,3),o=Tc(e,4),s=Tc(e,5),c=Tc(e,6),l=Tc(e,7);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let u=n.dims[0],d=n.dims[1],f=n.dims.length===3?n.dims[2]:t.numHeads*n.dims[4],p=d,m=0,h=0,g=Math.floor(f/t.numHeads);if(c&&l&&W.size(c.dims)&&W.size(l.dims)){if(c.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(c.dims[0]!==u||c.dims[1]!==t.numHeads||c.dims[3]!==g)throw Error(`Input "past_key" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(l.dims[0]!==u||l.dims[1]!==t.numHeads||l.dims[3]!==g)throw Error(`Input "past_value" shape (batch_size, num_heads, past_sequence_length, head_size)`);if(c.dims[2]!==l.dims[2])throw Error(`Input "past_key" and "past_value" shall have same dim 2 (past_sequence_length)`);if(l.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);m=c.dims[2],h=c.dims[2]}else if(c&&W.size(c.dims)||l&&W.size(l.dims))throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _;if(r&&W.size(r.dims)>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(r.dims[2]!==n.dims[2])throw Error(`Input "query" and "key" shall have same dim 2 (hidden_size)`);_=2,p=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==g)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);_=5,p=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==g)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);_=0,p=r.dims[2]}}else{if(n.dims.length!==5)throw Error(`Input "query" is expected to have 5 dimensions when key is empty`);if(n.dims[2]!==t.numHeads||n.dims[3]!==3)throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}if(a&&W.size(a.dims)>0){if(a.dims.length!==1)throw Error(`Input "bias" is expected to have 1 dimension`);if(r&&r.dims.length===5&&r.dims[3]===2)throw Error(`bias is not allowed for packed kv.`)}let v=m+p,y=0;if(o&&W.size(o.dims)>0){y=8;let e=o.dims;throw e.length===1?e[0]===u?y=1:e[0]===3*u+2&&(y=3):e.length===2&&e[0]===u&&e[1]===v&&(y=5),y===8?Error(`Input "key_padding_mask" shape shall be (batch_size) or (batch_size, total_sequence_length)`):Error(`Mask not supported`)}let b=!1,x=f;if(i&&W.size(i.dims)>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(p!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);x=i.dims[2]}else{if(p!==i.dims[2])throw Error(`Input "key" and "value" shall have the same dim 2 (kv_sequence_length)`);x=i.dims[1]*i.dims[3],b=!0}}let S=!1;if(o&&W.size(o.dims)>0)throw Error(`Key padding mask is not supported`);if(s&&W.size(s.dims)>0){if(s.dims.length!==4)throw Error(`Input "attention_bias" is expected to have 4 dimensions`);if(s.dims[0]!==u||s.dims[1]!==t.numHeads||s.dims[2]!==d||s.dims[3]!==v)throw Error(`Expect "attention_bias" shape (batch_size, num_heads, sequence_length, total_sequence_length)`)}return{batchSize:u,sequenceLength:d,pastSequenceLength:m,kvSequenceLength:p,totalSequenceLength:v,maxSequenceLength:h,inputHiddenSize:0,hiddenSize:f,vHiddenSize:x,headSize:g,vHeadSize:Math.floor(x/t.numHeads),numHeads:t.numHeads,isUnidirectional:!1,pastPresentShareBuffer:!1,maskFilterValue:t.maskFilterValue,maskType:y,scale:t.scale,broadcastResPosBias:S,passPastInKv:b,qkvFormat:_}},Dc=e=>Xn({...e}),Oc=Xn({perm:[0,2,1,3]}),kc=(e,t,n,r,i,a,o)=>{let s=[r,i,a],c=W.size(s),l=[{type:12,data:c},{type:12,data:o},{type:12,data:a}],u=e=>{let r=Y(`qkv_with_bias`,t.dataType,s),i=J(`qkv`,t.dataType,s),a=J(`bias`,n.dataType,s),o=[{name:`output_size`,type:`u32`},{name:`bias_offset`,type:`u32`},{name:`hidden_size`,type:`u32`}];return` - ${e.registerUniforms(o).declareVariables(i,a,r)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let bias_offset_idx = (global_idx % uniforms.hidden_size) + uniforms.bias_offset; - - qkv_with_bias[global_idx] = qkv[global_idx] + bias[bias_offset_idx]; - }`};return e.compute({name:`MultiHeadAttentionAddBias`,shaderCache:{inputDependencies:[`type`,`type`]},getRunData:()=>({outputs:[{dims:s,dataType:t.dataType,gpuDataType:0}],dispatchGroup:{x:Math.ceil(c/64)},programUniforms:l}),getShaderSource:u},{inputs:[t,n],outputs:[-1]})[0]},Ac=(e,t,n,r,i,a,o,s)=>{let c=a;if(o&&W.size(o.dims)>0){if(r===1)throw Error(`AddBiasReshape is not implemented. Please export your model with packed QKV or KV`);return c=kc(e,a,o,t,r,n*i,s),c=c.reshape([t,r,n,i]),n===1||r===1?c:e.compute(gr(c,Oc.perm),{inputs:[c],outputs:[-1]})[0]}else return a.dims.length===3&&(c=a.reshape([t,r,n,i])),n===1||r===1?c:e.compute(gr(c,Oc.perm),{inputs:[c],outputs:[-1]})[0]},jc=(e,t)=>{let n=Ec(e.inputs,t),r=e.inputs[0],i=Tc(e.inputs,1),a=Tc(e.inputs,2),o=Tc(e.inputs,3),s=Tc(e.inputs,4),c=Tc(e.inputs,5),l=Tc(e.inputs,6),u=Tc(e.inputs,7);if(r.dims.length===5)throw Error(`Packed QKV is not implemented`);if(i?.dims.length===5)throw Error(`Packed KV is not implemented`);let d=i&&a&&i.dims.length===4&&a.dims.length===4,f=Ac(e,n.batchSize,n.numHeads,n.sequenceLength,n.headSize,r,o,0);if(d)return Ti(e,f,i,a,s,void 0,l,u,c,n);if(!i||!a)throw Error(`key and value must be provided`);let p=Ac(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.headSize,i,o,n.hiddenSize),m=Ac(e,n.batchSize,n.numHeads,n.kvSequenceLength,n.vHeadSize,a,o,2*n.hiddenSize);Ti(e,f,p,m,s,void 0,l,u,c,n)}}),Nc,Pc,Fc,Ic,Lc,Rc,zc,Bc=M(()=>{"use strict";H(),G(),Zn(),X(),Nc=e=>{if(!e||e.length<1)throw Error(`too few inputs`)},Pc=(e,t)=>{let n=[],r=t.numOutputs;return e[1].dims[0]>0&&(e[1].getBigInt64Array().forEach(e=>n.push(Number(e))),r=n.length),Xn({numOutputs:r,axis:t.axis,splitSizes:n})},Fc=e=>` -fn calculateOutputIndex(index: u32) -> u32 { - for (var i: u32 = 0u; i < ${e}u; i += 1u ) { - if (index < ${q(`uniforms.size_in_split_axis`,`i`,e)}) { - return i; - } - } - return ${e}u; -}`,Ic=e=>{let t=e.length,n=[];for(let r=0;r{let n=e[0].dims,r=W.size(n),i=e[0].dataType,a=W.normalizeAxis(t.axis,n.length),o=Array(t.numOutputs),s=J(`input`,i,n.length),c=Array(t.numOutputs),l=[],u=[],d=0,f=[{type:12,data:r}];for(let r=0;r` - ${e.registerUniform(`input_size`,`u32`).registerUniform(`size_in_split_axis`,`u32`,c.length).declareVariables(s,...o)} - ${Fc(c.length)} - ${Ic(o)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.input_size`)} - - var indices = ${s.offsetToIndices(`global_idx`)}; - var index = ${s.indicesGet(`indices`,a)}; - let output_number = calculateOutputIndex(index); - if (output_number != 0) { - index -= ${q(`uniforms.size_in_split_axis`,`output_number - 1u`,c.length)}; - ${s.indicesSet(`indices`,a,`index`)}; - } - writeBufferData(output_number, indices, global_idx); - }`;return{name:`Split`,shaderCache:{hint:t.cacheKey,inputDependencies:[`rank`]},getShaderSource:p,getRunData:()=>({outputs:l,dispatchGroup:{x:Math.ceil(r/64)},programUniforms:f})}},Rc=(e,t)=>{Nc(e.inputs);let n=e.inputs.length===1?t:Pc(e.inputs,t);e.compute(Lc(e.inputs,n),{inputs:[0]})},zc=e=>{let t=e.axis,n=e.splitSizes,r=e.numOutputs<0?n.length:e.numOutputs;if(r!==n.length)throw Error(`numOutputs and splitSizes lengh must be equal`);return Xn({axis:t,numOutputs:r,splitSizes:n})}}),Vc,Hc,Uc,Wc=M(()=>{"use strict";H(),G(),Zn(),X(),Vc=(e,t)=>{let[n,r,i,a]=e,{numHeads:o,rotaryEmbeddingDim:s}=t;if(n.dims.length!==3&&n.dims.length!==4)throw Error(`Input 'x' is expected to have 3 or 4 dimensions, got ${n.dims.length}`);if(!W.areEqual(r.dims,[])&&!W.areEqual(r.dims,[1])&&r.dims.length!==2)throw Error(`Input 'position_ids' is expected to have 0, 1, or 2 dimensions, got ${r.dims.length}`);if(i.dims.length!==2)throw Error(`Input 'cos_cache' is expected to have 2 dimensions, got ${i.dims.length}`);if(a.dims.length!==2)throw Error(`Input 'sin_cache' is expected to have 2 dimensions, got ${a.dims.length}`);if(!W.areEqual(i.dims,a.dims))throw Error(`Inputs 'cos_cache' and 'sin_cache' are expected to have the same shape`);if(s>0&&o===0)throw Error(`num_heads must be provided if rotary_embedding_dim is specified`);let c=n.dims[0],l=n.dims[n.dims.length-2],u=i.dims[0],d=W.sizeFromDimension(n.dims,1)/l,f=s===0?i.dims[1]*2:d/o;if(s>f)throw Error(`rotary_embedding_dim must be less than or equal to head_size`);if(r.dims.length===2){if(c!==r.dims[0])throw Error(`Input 'position_ids' dimension 0 should be of size batch_size, got ${r.dims[0]}`);if(l!==r.dims[1])throw Error(`Input 'position_ids' dimension 1 should be of size sequence_length, got ${r.dims[1]}`)}if(f/2!==i.dims[1]&&s/2!==i.dims[1])throw Error(`Input 'cos_cache' dimension 1 should be same as head_size / 2 or rotary_embedding_dim / 2, got ${i.dims[1]}`);if(l>u)throw Error(`Updating cos_cache and sin_cache in RotaryEmbedding is not currently supported`)},Hc=(e,t)=>{let{interleaved:n,numHeads:r,rotaryEmbeddingDim:i,scale:a}=t,o=e[0].dims[0],s=W.sizeFromDimension(e[0].dims,1),c=e[0].dims[e[0].dims.length-2],l=s/c,u=e[2].dims[1],d=i===0?u*2:l/r,f=[o,c,l/d,d-u],p=W.computeStrides(f),m=[{type:1,data:a},{type:12,data:f},{type:12,data:p},...e[0].dims.length===3?Array({type:12,data:[s,l,d,1]}):[],...e[0].dims.length===4?Array({type:12,data:[s,d,c*d,1]}):[],...K(e[0].dims,e[1].dims,e[2].dims,e[3].dims,e[0].dims)],h=t=>{let r=J(`input`,e[0].dataType,e[0].dims.length),i=J(`position_ids`,e[1].dataType,e[1].dims.length),a=J(`cos_cache`,e[2].dataType,e[2].dims.length),o=J(`sin_cache`,e[3].dataType,e[3].dims.length),s=Y(`output`,e[0].dataType,e[0].dims.length);return t.registerUniforms([{name:`scale`,type:`f32`},{name:`global_shape`,type:`u32`,length:f.length},{name:`global_strides`,type:`u32`,length:p.length},{name:`input_output_strides`,type:`u32`,length:p.length}]),` - ${t.declareVariables(r,i,a,o,s)} - - ${t.mainStart(Qn)} - let half_rotary_emb_dim = uniforms.${a.name}_shape[1]; - let bsnh = global_idx / uniforms.global_strides % uniforms.global_shape; - let size = uniforms.global_shape[0] * uniforms.global_strides[0]; - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`size`)} - - if (bsnh[3] < half_rotary_emb_dim) { - let position_ids_idx = - ${i.broadcastedIndicesToOffset(`bsnh.xy`,Y(``,i.type.tensor,2))}; - let position_id = - u32(${i.getByOffset(`position_ids_idx`)}) + select(0, bsnh[1], position_ids_idx == 0); - let i = dot(bsnh, uniforms.input_output_strides) + select(0, bsnh[3], ${n}); - let j = i + select(half_rotary_emb_dim, 1, ${n}); - let re = ${r.getByOffset(`i`)} * ${a.get(`position_id`,`bsnh[3]`)} - - ${r.getByOffset(`j`)} * ${o.get(`position_id`,`bsnh[3]`)}; - ${s.setByOffset(`i`,`re`)} - let im = ${r.getByOffset(`i`)} * ${o.get(`position_id`,`bsnh[3]`)} + - ${r.getByOffset(`j`)} * ${a.get(`position_id`,`bsnh[3]`)}; - ${s.setByOffset(`j`,`im`)} - } else { - let k = dot(bsnh, uniforms.input_output_strides) + half_rotary_emb_dim; - ${s.setByOffset(`k`,r.getByOffset(`k`))} - } - }`};return{name:`RotaryEmbedding`,shaderCache:{hint:Xn({interleaved:n}).cacheKey,inputDependencies:[`rank`,`rank`,`rank`,`rank`]},getShaderSource:h,getRunData:()=>({outputs:[{dims:e[0].dims,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(W.size(f)/Qn)},programUniforms:m})}},Uc=(e,t)=>{Vc(e.inputs,t),e.compute(Hc(e.inputs,t))}}),Gc,Kc,qc,Jc,Yc,Xc=M(()=>{"use strict";Zn(),H(),Oi(),Mc(),Bc(),yr(),Wc(),X(),Gc=(e,t)=>{if(t.doRotary&&e.length<=7)throw Error(`cos_cache and sin_cache inputs are required if do_rotary is specified`);let n=e[0],r=e[1],i=e[2],a=e[3],o=e[4];if(t.doRotary!==0&&e.length<=7)throw Error(`cos_cast and sin_cache are expected if do_rotary attribute is non-zero`);if(t.localWindowSize!==-1)throw Error(`Local attention is not supported`);if(t.softcap!==0)throw Error(`Softcap is not supported`);if(t.rotaryInterleaved!==0)throw Error(`Rotary interleaved is not supported`);if(t.smoothSoftmax)throw Error(`Smooth softmax is not supported`);if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input query is expected to have 3 or 5 dimensions`);let s=!1,c=n.dims[0],l=n.dims[1],u=n.dims.length===3?s?n.dims[2]/3:n.dims[2]:t.numHeads*n.dims[4],d=l,f=0,p=!r||r.dims.length===0,m=Math.floor(p?u/(t.numHeads+2*t.kvNumHeads):u/t.numHeads);p&&(u=m*t.numHeads);let h=a&&a.dims.length!==0,g=o&&o.dims.length!==0;if(h&&a.dims.length===4&&a.dims[0]===c&&a.dims[1]!==t.kvNumHeads&&a.dims[2]===t.kvNumHeads&&a.dims[3]===m)throw Error(`BSNH pastKey/pastValue is not supported`);if(h&&g){if(a.dims.length!==4)throw Error(`Input "past_key" is expected to have 4 dimensions`);if(o.dims.length!==4)throw Error(`Input "past_value" is expected to have 4 dimensions`);f=a.dims[2]}else if(h||g)throw Error(`Input "past_key" and "past_value" shall be both present or both absent`);let _=1;if(r&&r.dims.length>0){if(n.dims.length!==3)throw Error(`Input "query" is expected to have 3 dimensions when key is given`);if(r.dims.length<3||r.dims.length>5)throw Error(`Input "key" is expected to have 3, 4, or 5 dimensions`);if(n.dims[0]!==r.dims[0])throw Error(`Input "query" and "key" shall have same dim 0 (batch size)`);if(r.dims.length===3){if(n.dims[2]%r.dims[2]!==0)throw Error(`Dimension 2 of "query" should be a multiple of "key"`);d=r.dims[1]}else if(r.dims.length===5){if(r.dims[2]!==t.numHeads||r.dims[3]!==2||r.dims[4]!==m)throw Error(`Expect "key" shape (batch_size, kv_sequence_length, num_heads, 2, head_size) for packed kv`);if(i)throw Error(`Expect "value" be none when "key" has packed kv format.`);d=r.dims[1]}else{if(r.dims[1]!==t.numHeads||r.dims[3]!==m)throw Error(`Expect "key" shape (batch_size, num_heads, kv_sequence_length, head_size) for past_key`);d=r.dims[2]}}else{if(n.dims.length!==3&&n.dims.length!==5)throw Error(`Input "query" is expected to have 3 or 5 dimensions when key is empty`);if(n.dims.length===5&&(n.dims[2]!==t.numHeads||n.dims[3]!==3))throw Error(`Expect "query" shape (batch_size, kv_sequence_length, num_heads, 3, head_size) for packed kv`);_=3}let v=0,y=!1,b=t.kvNumHeads?m*t.kvNumHeads:u;if(i&&i.dims.length>0){if(i.dims.length!==3&&i.dims.length!==4)throw Error(`Input "value" is expected to have 3 or 4 dimensions`);if(n.dims[0]!==i.dims[0])throw Error(`Input "query" and "value" shall have same dim 0 (batch_size)`);if(i.dims.length===3){if(d!==i.dims[1])throw Error(`Input "key" and "value" shall have the same dim 1 (kv_sequence_length)`);b=i.dims[2]}else{if(d!==i.dims[2])throw Error(`Input "past_key" and "past_value" shall have the same dim 2 (kv_sequence_length)`);b=i.dims[1]*i.dims[3],y=!0}}let x=e.length>4?e[5]:void 0;if(x&&x.dims.length!==1&&x.dims[0]!==c)throw Error(`Input "seqlens" is expected to have 1 dimension and the same dim 0 as batch_size`);return{batchSize:c,sequenceLength:l,pastSequenceLength:f,kvSequenceLength:d,totalSequenceLength:-1,maxSequenceLength:-1,inputHiddenSize:0,hiddenSize:u,vHiddenSize:b,headSize:m,vHeadSize:Math.floor(b/t.kvNumHeads),numHeads:t.numHeads,kvNumHeads:t.kvNumHeads,nReps:t.numHeads/t.kvNumHeads,pastPresentShareBuffer:!1,maskType:v,scale:t.scale,broadcastResPosBias:!1,passPastInKv:y,qkvFormat:_}},Kc=Xn({perm:[0,2,1,3]}),qc=(e,t,n)=>{let r=t,i=n.kvNumHeads;return t.dims.length===3&&n.kvSequenceLength!==0&&(r=t.reshape([n.batchSize,n.kvSequenceLength,i,n.headSize]),r=e.compute(gr(r,Kc.perm),{inputs:[r],outputs:[-1]})[0]),r},Jc=(e,t,n,r)=>{let i=7,a=[`type`,`type`],o=[e*t],s=e*t,c=[{type:12,data:s},{type:12,data:t},{type:12,data:e}],l=e=>{let t=J(`seq_lens`,n.dataType,n.dims),a=J(`total_seq_lens`,r.dataType,r.dims),s=Y(`pos_ids`,i,o),c=[{name:`output_size`,type:`u32`},{name:`sequence_length`,type:`u32`},{name:`batch_size`,type:`u32`}];return` - ${e.registerUniforms(c).declareVariables(t,a,s)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let total_sequence_length = u32(${a.getByOffset(`0`)}); - let is_subsequent_prompt = uniforms.sequence_length > 1 && uniforms.sequence_length != total_sequence_length; - let is_first_prompt = !is_subsequent_prompt && uniforms.sequence_length == total_sequence_length; - let batch_idx = global_idx / uniforms.sequence_length; - let sequence_idx = i32(global_idx % uniforms.sequence_length); - var pos_id: i32 = 0; - let seqlen = ${t.getByOffset(`batch_idx`)}; - let total_seqlen = seqlen + 1; - if (is_first_prompt) { - if (sequence_idx < total_seqlen) { - pos_id = sequence_idx; - } else { - pos_id = 1; - } - ${s.setByOffset(`global_idx`,`pos_id`)} - } else if (is_subsequent_prompt) { - let past_seqlen = total_seqlen - i32(uniforms.sequence_length); - if (past_seqlen + sequence_idx < total_seqlen) { - pos_id = past_seqlen + sequence_idx; - } else { - pos_id = 1; - } - ${s.setByOffset(`global_idx`,`pos_id`)} - } else if (global_idx < uniforms.batch_size) { - ${s.setByOffset(`global_idx`,`seqlen`)} - }; - } - `};return{name:`GeneratePositionIds`,shaderCache:{hint:`${e};${t}`,inputDependencies:a},getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64)},programUniforms:c}),getShaderSource:l}},Yc=(e,t)=>{var n;let r=Gc(e.inputs,t);if(e.inputs[0].dims.length===5)throw Error(`Packed QKV is not implemented`);if((n=e.inputs[1])?.dims.length===5)throw Error(`Packed KV is not implemented`);let i=e.inputs[0],a=e.inputs[1]&&e.inputs[1].dims.length>0?e.inputs[1]:void 0,o=e.inputs[2]&&e.inputs[2].dims.length>0?e.inputs[2]:void 0,s=e.inputs[3]&&e.inputs[3].dims.length!==0?e.inputs[3]:void 0,c=e.inputs[4]&&e.inputs[4].dims.length!==0?e.inputs[4]:void 0,l=e.inputs.length>4?e.inputs[5]:void 0,u=e.inputs.length>5?e.inputs[6]:void 0,d=r.kvNumHeads?r.kvNumHeads:r.numHeads,f=Xn({axis:2,numOutputs:3,splitSizes:[r.numHeads*r.headSize,d*r.headSize,d*r.headSize]}),[p,m,h]=!a&&!o?e.compute(Lc([i],f),{inputs:[i],outputs:[-1,-1,-1]}):[i,a,o],g,_;if(t.doRotary){let n=e.compute(Jc(r.batchSize,r.sequenceLength,l,u),{inputs:[l,u],outputs:[-1]})[0],i=e.inputs[7],a=e.inputs[8],o=Xn({interleaved:t.rotaryInterleaved!==0,numHeads:r.numHeads,rotaryEmbeddingDim:0,scale:t.scale}),s=[p,n,i,a],c=[-1];g=e.compute(Hc(s,o),{inputs:s,outputs:c})[0],s.splice(0,1,m);let d=Xn({interleaved:t.rotaryInterleaved!==0,numHeads:r.kvNumHeads,rotaryEmbeddingDim:0,scale:t.scale});_=e.compute(Hc(s,d),{inputs:s,outputs:c})[0]}let v=Ac(e,r.batchSize,r.numHeads,r.sequenceLength,r.headSize,t.doRotary?g:p,void 0,0),y=qc(e,t.doRotary?_:m,r),b=qc(e,h,r);Ti(e,v,y,b,void 0,void 0,s,c,void 0,r,l,u)}}),Zc,Qc,$c,el,tl=M(()=>{"use strict";H(),G(),yr(),X(),Zc=(e,t,n,r,i,a,o,s)=>{let c=nr(a),l=c===1?`f32`:`vec${c}f`,u=c===1?`vec2f`:`mat2x${c}f`,d=i*o,f=64;d===1&&(f=256);let p=[i,o,a/c],m=[i,o,2],h=[`rank`,`type`,`type`],g=[];g.push(...K(p,m));let _=e=>{let i=J(`x`,t.dataType,3,c),a=J(`scale`,n.dataType,n.dims),o=J(`bias`,r.dataType,r.dims),d=Y(`output`,1,3,2),p=[i,a,o,d];return` - var workgroup_shared : array<${u}, ${f}>; - const workgroup_size = ${f}u; - ${e.declareVariables(...p)} - ${e.mainStart(f)} - let batch = workgroup_index / uniforms.x_shape[1]; - let channel = workgroup_index % uniforms.x_shape[1]; - let hight = uniforms.x_shape[2]; - // initialize workgroup memory - var sum = ${l}(0); - var squared_sum = ${l}(0); - for (var h = local_idx; h < hight; h += workgroup_size) { - let value = ${l}(${i.get(`batch`,`channel`,`h`)}); - sum += value; - squared_sum += value * value; - } - workgroup_shared[local_idx] = ${u}(sum, squared_sum); - workgroupBarrier(); - - for (var currSize = workgroup_size >> 1; currSize > 0; currSize = currSize >> 1) { - if (local_idx < currSize) { - workgroup_shared[local_idx] = workgroup_shared[local_idx] + workgroup_shared[local_idx + currSize]; - } - workgroupBarrier(); - } - if (local_idx == 0) { - let sum_final = ${ar(`workgroup_shared[0][0]`,c)} / f32(hight * ${c}); - let squared_sum_final = ${ar(`workgroup_shared[0][1]`,c)} / f32(hight * ${c}); - - let inv_std_dev = inverseSqrt(squared_sum_final - sum_final * sum_final + f32(${s})); - let channel_scale = inv_std_dev * f32(scale[channel]); - let channel_shift = f32(bias[channel]) - sum_final * channel_scale; - output[workgroup_index] = vec2f(channel_scale, channel_shift); - } - }`};return e.compute({name:`InstanceNormComputeChannelScaleShift`,shaderCache:{hint:`${c};${s};${f}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:m,dataType:1}],dispatchGroup:{x:d},programUniforms:g}),getShaderSource:_},{inputs:[t,n,r],outputs:[-1]})[0]},Qc=(e,t,n)=>{let r=t[0].dims,i=r,a=2,o=r[0],s=r[1],c=W.sizeFromDimension(r,a),l=nr(c),u=W.size(i)/l,d=Zc(e,t[0],t[1],t[2],o,c,s,n.epsilon),f=[o,s,c/l],p=[o,s],m=[`type`,`none`],h=e=>{let n=J(`x`,t[0].dataType,f.length,l),r=J(`scale_shift`,1,p.length,2),i=Y(`output`,t[0].dataType,f.length,l),a=[n,r,i];return` - ${e.registerUniform(`output_size`,`u32`).declareVariables(...a)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let outputIndices = ${i.offsetToIndices(`global_idx`)}; - let batch = outputIndices[0]; - let channel = outputIndices[1]; - let scale_shift = ${r.getByIndices(`vec2(batch, channel)`)}; - let value = ${n.getByOffset(`global_idx`)} * ${i.type.value}(scale_shift.x) + ${i.type.value}(scale_shift.y); - ${i.setByOffset(`global_idx`,`value`)}; - }`};e.compute({name:`InstanceNormalization`,shaderCache:{hint:`${l}`,inputDependencies:m},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(u/64)},programUniforms:[{type:12,data:u},...K(f,p,f)]}),getShaderSource:h},{inputs:[t[0],d]})},$c=(e,t,n)=>{let r=t[0].dims,i=r,a=r[0],o=r[r.length-1],s=W.sizeFromDimension(r,1)/o,c=nr(o),l=W.size(i)/c,u=[{type:12,data:s},{type:12,data:Math.floor(o/c)}],d=[`type`,`type`],f=!1,p=[0,r.length-1];for(let e=0;er[p[t]])),h=Zc(e,m,t[1],t[2],a,s,o,n.epsilon),g=e=>{let n=er(t[0].dataType),r=c===1?`vec2f`:`mat${c}x2f`,a=e=>{let t=e===0?`x`:`y`,r=c===1?`f32`:`vec${c}f`;switch(c){case 1:return`${n}(${r}(scale.${t}))`;case 2:return`vec2<${n}>(${r}(scale[0].${t}, scale[1].${t}))`;case 4:return`vec4<${n}>(${r}(scale[0].${t}, scale[1].${t}, scale[2].${t}, scale[3].${t}))`;default:throw Error(`Not supported compoents ${c}`)}},o=J(`input`,t[0].dataType,t[0].dims,c),s=Y(`output`,t[0].dataType,i,c);return` - @group(0) @binding(0) var input : array<${o.type.storage}>; - @group(0) @binding(1) var scale_input : array<${r}>; - @group(0) @binding(2) var output : array<${s.type.storage}>; - struct Uniforms {H: u32, C : u32}; - @group(0) @binding(3) var uniforms: Uniforms; - - ${e.mainStart()} - let current_image_number = global_idx / (uniforms.C * uniforms.H); - let current_channel_number = global_idx % uniforms.C; - - let scale_offset = current_image_number * uniforms.C + current_channel_number; - let scale = scale_input[scale_offset]; - output[global_idx] = fma(input[global_idx], ${a(0)}, ${a(1)}); - }`};e.compute({name:`InstanceNormalizationNHWC`,shaderCache:{hint:`${c}`,inputDependencies:d},getRunData:()=>({outputs:[{dims:i,dataType:t[0].dataType}],dispatchGroup:{x:Math.ceil(l/64)},programUniforms:u}),getShaderSource:g},{inputs:[t[0],h]})},el=(e,t)=>{t.format===`NHWC`?$c(e,e.inputs,t):Qc(e,e.inputs,t)}}),nl,rl,il,al=M(()=>{"use strict";H(),G(),X(),nl=e=>{if(!e||e.length<2)throw Error(`layerNorm requires at least 2 inputs.`)},rl=(e,t,n)=>{let r=t.simplified,i=e[0].dims,a=e[1],o=!r&&e[2],s=i,c=W.normalizeAxis(t.axis,i.length),l=W.sizeToDimension(i,c),u=W.sizeFromDimension(i,c),d=W.size(a.dims),f=o?W.size(o.dims):0;if(d!==u||o&&f!==u)throw Error(`Size of X.shape()[axis:] == ${u}. - Size of scale and bias (if provided) must match this. - Got scale size of ${d} and bias size of ${f}`);let p=[];for(let e=0;e1,v=n>2,y=t=>{let n=er(e[0].dataType),i=[J(`x`,e[0].dataType,e[0].dims,m),J(`scale`,a.dataType,a.dims,m)];o&&i.push(J(`bias`,o.dataType,o.dims,m)),i.push(Y(`output`,e[0].dataType,s,m)),_&&i.push(Y(`mean_data_output`,1,p)),v&&i.push(Y(`inv_std_output`,1,p));let c=[{name:`norm_count`,type:`u32`},{name:`norm_size`,type:`f32`},{name:`norm_size_vectorized`,type:`u32`},{name:`epsilon`,type:`f32`}];return` - ${t.registerUniforms(c).declareVariables(...i)} - ${t.mainStart()} - ${t.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.norm_count`)} - let offset = global_idx * uniforms.norm_size_vectorized; - var mean_vector = ${rr(`f32`,m)}; - var mean_square_vector = ${rr(`f32`,m)}; - - for (var h: u32 = 0u; h < uniforms.norm_size_vectorized; h++) { - let value = ${ir(n,m,`x[h + offset]`)}; - mean_vector += value; - mean_square_vector += value * value; - } - let mean = ${ar(`mean_vector`,m)} / uniforms.norm_size; - let inv_std_dev = inverseSqrt(${ar(`mean_square_vector`,m)} / uniforms.norm_size ${r?``:`- mean * mean`} + uniforms.epsilon); - - for (var j: u32 = 0; j < uniforms.norm_size_vectorized; j++) { - let f32input = ${ir(n,m,`x[j + offset]`)}; - let f32scale = ${ir(n,m,`scale[j]`)}; - output[j + offset] = ${i[0].type.value}((f32input ${r?``:`- mean`}) * inv_std_dev * f32scale - ${o?`+ ${ir(n,m,`bias[j]`)}`:``} - ); - } - - ${_?`mean_data_output[global_idx] = mean`:``}; - ${v?`inv_std_output[global_idx] = inv_std_dev`:``}; - }`},b=[{dims:s,dataType:e[0].dataType}];return _&&b.push({dims:p,dataType:1}),v&&b.push({dims:p,dataType:1}),{name:`LayerNormalization`,shaderCache:{hint:`${m};${n};${r}`,inputDependencies:h},getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(l/64)},programUniforms:g}),getShaderSource:y}},il=(e,t)=>{nl(e.inputs),e.compute(rl(e.inputs,t,e.outputCount))}}),ol,sl,cl=M(()=>{"use strict";G(),mo(),Co(),ol=e=>{if(!e||e.length!==2)throw Error(`MatMul requires 2 inputs.`);if(e[0].dims[e[0].dims.length-1]!==e[1].dims[e[1].dims.length-2])throw Error(`shared dimension does not match.`)},sl=e=>{ol(e.inputs);let t=gn.calcShape(e.inputs[0].dims,e.inputs[1].dims,!0);if(!t)throw Error(`Can't use matmul on the given tensors`);let n=t[t.length-1],r=e.inputs[0].dims[e.inputs[0].dims.length-1];if(n<8&&r<8)e.compute(po(e.inputs,{activation:``},t));else{let i=t[t.length-2],a=W.size(e.inputs[0].dims.slice(0,-2)),o=W.size(e.inputs[1].dims.slice(0,-2));if(a!==1&&i===1&&o===1){let i=e.inputs[0].reshape([1,a,r]),o=e.inputs[1].reshape([1,r,n]),s=[1,a,n],c=[i,o];e.compute(So(c,{activation:``},t,s),{inputs:c})}else e.compute(So(e.inputs,{activation:``},t))}}}),ll,ul,dl,fl,pl,ml=M(()=>{"use strict";H(),G(),Zn(),X(),ll=(e,t)=>{if(e.length<3||e.length>4)throw Error(`MatMulNBits requires 3 or 4 inputs`);let n=e[0],r=n.dims.length;if(n.dims[r-1]!==t.k)throw Error(`The last dim of input shape does not match the k value`);let i=Math.floor((t.k+t.blockSize-1)/t.blockSize),a=t.blockSize/8*t.bits,o=e[1];if(!W.areEqual(o.dims,[t.n,i,a]))throw Error(`The second inputs must be 3D tensor with shape N X nBlocksPerCol X blobSize`);let s=e[2].dims;if(W.size(s)!==t.n*i)throw Error(`scales input size error.`);if(e.length===4){let n=e[3].dims,r=t.bits>4?t.n*i:t.n*Math.floor((i+1)/2);if(W.size(n)!==r)throw Error(`zeroPoints input size error.`)}},ul=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=W.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=nr(t.k),f=nr(l),p=nr(o),m=s.concat([i,o]),h=i>1&&o/p%2==0?2:1,g=W.size(m)/p/h,_=64,v=[],y=[c,i,a/d],b=W.convertShape(e[1].dims).slice();b.splice(-1,1,l/f),v.push(...K(y)),v.push(...K(b)),v.push(...K(e[2].dims)),e.length===4&&v.push(...K(W.convertShape(e[3].dims)));let x=[c,i,o/p];v.push(...K(x));let S=n=>{let r=y.length,i=J(`a`,e[0].dataType,r,d),a=J(`b`,12,b.length,f),o=J(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?J(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let u=x.length,m=Y(`output`,e[0].dataType,u,p),g=er(e[0].dataType),v=(()=>{switch(d){case 1:return`array<${g}, 8>`;case 2:return`mat4x2<${g}>`;case 4:return`mat2x4<${g}>`;default:throw Error(`${d}-component is not supported.`)}})(),S=()=>{let e=` - // reuse a data - var input_offset = ${i.indicesToOffset(`${i.type.indices}(batch, row, word_offset)`)}; - var a_data: ${v}; - for (var j: u32 = 0; j < ${8/d}; j++) { - a_data[j] = ${i.getByOffset(`input_offset`)}; - input_offset++; - } - `;for(let t=0;t> 4) & b_mask); - b_quantized_values = ${v}(${Array.from({length:4},(e,t)=>`${g}(b_value_lower[${t}]), ${g}(b_value_upper[${t}])`).join(`, `)}); - b_dequantized_values = ${d===1?`${v}(${Array.from({length:8},(e,n)=>`(b_quantized_values[${n}] - ${c?`zero_point${t}`:`zero_point`}) * scale${t}`).join(`, `)});`:`(b_quantized_values - ${v}(${Array(8).fill(`${c?`zero_point${t}`:`zero_point`}`).join(`,`)})) * scale${t};`}; - workgroup_shared[local_id.x * ${h} + ${Math.floor(t/p)}]${p>1?`[${t%p}]`:``} += ${Array.from({length:8/d},(e,t)=>`${d===1?`a_data[${t}] * b_dequantized_values[${t}]`:`dot(a_data[${t}], b_dequantized_values[${t}])`}`).join(` + `)}; - `;return e},C=()=>{let e=` - var col_index = col * ${p}; - ${c?` - let zero_point_bytes_per_col = (nBlocksPerCol + 1) / 2; - var zero_point_byte_count: u32; - var zero_point_word_index: u32; - var zero_point_byte_offset: u32; - let zero_point_nibble_offset: u32 = block & 0x1u; - var zero_point_bits_offset: u32; - var zero_point_word: u32;`:` - // The default zero point is 8 for unsigned 4-bit quantization. - let zero_point = ${g}(8);`} - `;for(let t=0;t> 0x1u); - zero_point_word_index = zero_point_byte_count >> 0x2u; - zero_point_byte_offset = zero_point_byte_count & 0x3u; - zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); - zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; - let zero_point${t} = ${g}((zero_point_word) & 0xFu);`:``} - col_index += 1;`;return e},w=()=>{let e=`col_index = col * ${p};`;for(let t=0;t; - var b_value_upper: vec4; - var b_quantized_values: ${v}; - var b_dequantized_values: ${v};`,e};return` - var workgroup_shared: array<${m.type.value}, ${h*_}>; - ${n.declareVariables(...s,m)} - ${n.mainStart([_,1,1])} - let output_indices = ${m.offsetToIndices(`(global_idx / ${_}) * ${h}`)}; - let col = output_indices[2]; - let row = output_indices[1]; - let batch = output_indices[0]; - let nBlocksPerCol = uniforms.b_shape[1]; - - for (var block = local_id.x; block < nBlocksPerCol; block += ${_}) { - //process one block - var word_offset: u32 = block * ${t.blockSize/d}; - ${C()} - for (var word: u32 = 0; word < ${l}; word += ${f}) { - ${w()} - for (var i: u32 = 0; i < ${f}; i++) { - ${S()} - word_offset += ${8/d}; - } - } - } - workgroupBarrier(); - - if (local_id.x < ${h}) { - var output_value: ${m.type.value} = ${m.type.value}(0); - var workgroup_shared_offset: u32 = local_id.x; - for (var b: u32 = 0u; b < ${_}u; b++) { - output_value += workgroup_shared[workgroup_shared_offset]; - workgroup_shared_offset += ${h}; - } - ${m.setByIndices(`${m.type.indices}(batch, row, col + local_id.x)`,`output_value`)}; - } - }`};return{name:`MatMulNBits`,shaderCache:{hint:`${t.blockSize};${t.bits};${d};${f};${p};${h};${_}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:m,dataType:u}],dispatchGroup:{x:g},programUniforms:v}),getShaderSource:S}},dl=(e,t)=>{let n=e[0].dims,r=n.length,i=n[r-2],a=t.k,o=t.n,s=n.slice(0,r-2),c=W.size(s),l=e[1].dims[2]/4,u=e[0].dataType,d=nr(t.k),f=nr(l),p=s.concat([i,o]),m=128,h=o%8==0?8:o%4==0?4:1,g=m/h,_=g*f*8,v=_/d,y=_/t.blockSize,b=W.size(p)/h,x=[],S=[c,i,a/d],C=W.convertShape(e[1].dims).slice();C.splice(-1,1,l/f),x.push(...K(S)),x.push(...K(C)),x.push(...K(e[2].dims)),e.length===4&&x.push(...K(W.convertShape(e[3].dims)));let w=[c,i,o];x.push(...K(w));let T=n=>{let r=S.length,i=J(`a`,e[0].dataType,r,d),a=J(`b`,12,C.length,f),o=J(`scales`,e[2].dataType,e[2].dims.length),s=[i,a,o],c=e.length===4?J(`zero_points`,12,e[3].dims.length):void 0;c&&s.push(c);let l=w.length,u=Y(`output`,e[0].dataType,l),p=er(e[0].dataType),_=()=>{switch(d){case 1:return` - let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1], sub_a[word_offset + 2], sub_a[word_offset + 3]); - let a_data1 = vec4<${p}>(sub_a[word_offset + 4], sub_a[word_offset + 5], sub_a[word_offset + 6], sub_a[word_offset + 7]);`;case 2:return` - let a_data0 = vec4<${p}>(sub_a[word_offset], sub_a[word_offset + 1]); - let a_data1 = vec4<${p}>(sub_a[word_offset + 2], sub_a[word_offset + 3]);`;case 4:return` - let a_data0 = sub_a[word_offset]; - let a_data1 = sub_a[word_offset + 1];`;default:throw Error(`${d}-component is not supported.`)}};return` - var sub_a: array<${i.type.value}, ${v}>; - var inter_results: array, ${h}>; - ${n.declareVariables(...s,u)} - ${n.mainStart([g,h,1])} - let output_indices = ${u.offsetToIndices(`workgroup_index * ${h}`)}; - let col = output_indices[2]; - let row = output_indices[1]; - let batch = output_indices[0]; - let n_blocks_per_col = uniforms.b_shape[1]; - let num_tiles = (n_blocks_per_col - 1) / ${y} + 1; - - // Loop over shared dimension. - for (var tile: u32 = 0; tile < num_tiles; tile += 1) { - let a_col_start = tile * ${v}; - // load one tile A data into shared memory. - for (var a_offset = local_idx; a_offset < ${v}; a_offset += ${m}) - { - let a_col = a_col_start + a_offset; - if (a_col < uniforms.a_shape[2]) - { - sub_a[a_offset] = ${i.getByIndices(`${i.type.indices}(batch, row, a_col)`)}; - } else { - sub_a[a_offset] = ${i.type.value}(0); - } - } - workgroupBarrier(); - - // each thread process one block - let b_row = col + local_id.y; - let block = tile * ${y} + local_id.x; - ${c?` - let zero_point_bytes_per_col = (n_blocks_per_col + 1) / 2; - let zero_point_byte_count = b_row * zero_point_bytes_per_col + (block >> 0x1u); - let zero_point_word_index = zero_point_byte_count >> 0x2u; - let zero_point_byte_offset = zero_point_byte_count & 0x3u; - let zero_point_nibble_offset: u32 = block & 0x1u; - let zero_point_bits_offset = (zero_point_byte_offset << 3) + (zero_point_nibble_offset << 2); - let zero_point_word = ${c.getByOffset(`zero_point_word_index`)} >> zero_point_bits_offset; - let zero_point = ${p}((zero_point_word) & 0xFu);`:` - // The default zero point is 8 for unsigned 4-bit quantization. - let zero_point = ${p}(8);`} - let scale = ${o.getByOffset(`b_row * n_blocks_per_col + block`)}; - let b_data = ${a.getByIndices(`${a.type.indices}(b_row, block, 0)`)}; - var word_offset = local_id.x * ${t.blockSize/d}; - for (var i: u32 = 0; i < ${f}; i++) { - ${_()} - let b_value = ${f===1?`b_data`:`b_data[i]`}; - let b_value_lower = unpack4xU8(b_value & 0x0F0F0F0Fu); - let b_value_upper = unpack4xU8((b_value >> 4) & 0x0F0F0F0Fu); - let b_quantized_values = mat2x4<${p}>(${Array.from({length:4},(e,t)=>`${p}(b_value_lower[${t}]), ${p}(b_value_upper[${t}])`).join(`, `)}); - let b_dequantized_values = (b_quantized_values - mat2x4<${p}>(${Array(8).fill(`zero_point`).join(`,`)})) * scale; - inter_results[local_id.y][local_id.x] += ${Array.from({length:2},(e,t)=>`${`dot(a_data${t}, b_dequantized_values[${t}])`}`).join(` + `)}; - word_offset += ${8/d}; - } - workgroupBarrier(); - } - - if (local_idx < ${h}) { - var output_value: ${u.type.value} = ${u.type.value}(0); - for (var b = 0u; b < ${g}; b++) { - output_value += inter_results[local_idx][b]; - } - if (col + local_idx < uniforms.output_shape[2]) - { - ${u.setByIndices(`${u.type.indices}(batch, row, col + local_idx)`,`output_value`)} - } - } - }`};return{name:`BlockwiseMatMulNBits32`,shaderCache:{hint:`${t.blockSize};${d};${f};${g};${h}`,inputDependencies:Array(e.length).fill(`rank`)},getRunData:()=>({outputs:[{dims:p,dataType:u}],dispatchGroup:{x:b},programUniforms:x}),getShaderSource:T}},fl=(e,t)=>{ll(e.inputs,t),t.blockSize===32&&e.adapterInfo.isVendor(`intel`)&&e.adapterInfo.isArchitecture(`gen-12lp`)?e.compute(dl(e.inputs,t)):e.compute(ul(e.inputs,t))},pl=e=>Xn(e)}),hl,gl,_l,vl,yl,bl,xl,Sl,Cl,wl=M(()=>{"use strict";H(),G(),X(),hl=e=>{if(!e||e.length<1)throw Error(`Too few inputs`);if(e[0].dataType!==1&&e[0].dataType!==10)throw Error(`Input type must be float or float16.`);if(e.length>=2){let t=e[0].dims.length*2===e[1].dims[0];if(e.length===4&&(t=e[3].dims[0]*2===e[1].dims[0]),!t)throw Error(`The pads should be a 1D tensor of shape [2 * input_rank] or [2 * num_axes].`)}},gl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${q(`uniforms.pads`,i,n)}; - if (k < 0) { - break; - } - if (k >= i32(${q(`uniforms.x_shape`,i,t)})) { - break; - } - offset += k * i32(${q(`uniforms.x_strides`,i,t)}); - `;return` - value = ${e.type.value}(uniforms.constant_value); - for (var i = 0; i < 1; i++) { - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - } - `},_l=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${q(`uniforms.pads`,i,n)}; - if (k < 0) { - k = -k; - } - { - let _2n_1 = 2 * (i32(${q(`uniforms.x_shape`,i,t)}) - 1); - k = k % _2n_1; - if(k >= i32(${q(`uniforms.x_shape`,i,t)})) { - k = _2n_1 - k; - } - } - offset += k * i32(${q(`uniforms.x_strides`,i,t)}); - `;return` - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - `},vl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${q(`uniforms.pads`,i,n)}; - if (k < 0) { - k = 0; - } - if (k >= i32(${q(`uniforms.x_shape`,i,t)})) { - k = i32(${q(`uniforms.x_shape`,i,t)}) - 1; - } - offset += k * i32(${q(`uniforms.x_strides`,i,t)}); - `;return` - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - `},yl=(e,t,n)=>{let r=``;for(let i=t-1;i>=0;--i)r+=` - k = i32(${e.indicesGet(`indices`,i)}) - ${q(`uniforms.pads`,i,n)}; - if (k < 0) { - k += i32(${q(`uniforms.x_shape`,i,t)}]); - } - if (k >= i32(${q(`uniforms.x_shape`,i,t)})) { - k -= i32(${q(`uniforms.x_shape`,i,t)}); - } - offset += k * i32(${q(`uniforms.x_strides`,i,t)}); - `;return` - var offset = 0; - var k = 0; - ${r} - value = x[offset]; - `},bl=(e,t,n)=>{switch(n.mode){case 0:return gl(e,t,n.pads.length);case 1:return _l(e,t,n.pads.length);case 2:return vl(e,t,n.pads.length);case 3:return yl(e,t,n.pads.length);default:throw Error(`Invalid mode`)}},xl=(e,t)=>{let n=W.padShape(e[0].dims.slice(),t.pads),r=e[0].dims,i=W.size(n),a=[{type:12,data:i},{type:6,data:t.pads}],o=e.length>=3&&e[2].data;t.mode===0&&a.push({type:o?e[2].dataType:1,data:t.value}),a.push(...K(e[0].dims,n));let s=[`rank`],c=i=>{let a=Y(`output`,e[0].dataType,n.length),s=J(`x`,e[0].dataType,r.length),c=s.type.value,l=bl(a,r.length,t),u=[{name:`output_size`,type:`u32`},{name:`pads`,type:`i32`,length:t.pads.length}];return t.mode===0&&u.push({name:`constant_value`,type:o?c:`f32`}),` - ${i.registerUniforms(u).declareVariables(s,a)} - ${i.mainStart()} - ${i.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - - let indices = ${a.offsetToIndices(`global_idx`)}; - - var value = ${c}(0); - ${l} - output[global_idx] = value; - }`};return{name:`Pad`,shaderCache:{hint:`${t.mode}${o}`,inputDependencies:s},getRunData:()=>({outputs:[{dims:n,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(W.size(n)/64)},programUniforms:a}),getShaderSource:c}},Sl=(e,t)=>{if(e.length>1){let n=e[1].getBigInt64Array(),r=e.length>=3&&e[2].data?e[2].dataType===10?e[2].getUint16Array()[0]:e[2].getFloat32Array()[0]:0,i=e[0].dims.length,a=new Int32Array(2*i).fill(0);if(e.length>=4){let t=e[3].getBigInt64Array();for(let e=0;ea[Number(t)]=Number(e));let o=[];return a.forEach(e=>o.push(e)),{mode:t.mode,value:r,pads:o}}else return t},Cl=(e,t)=>{hl(e.inputs);let n=Sl(e.inputs,t);e.compute(xl(e.inputs,n),{inputs:[0]})}}),Tl,El,Dl,Ol,kl,Al,jl,Ml,Nl,Pl,Fl,Il,Ll,Rl,zl,Bl,Vl,Hl,Ul,Wl=M(()=>{"use strict";et(),H(),G(),X(),Tl=e=>{if(ye.webgpu.validateInputContent&&(!e||e.length!==1))throw Error(`Pool ops requires 1 input.`)},El=(e,t,n)=>{let r=t.format===`NHWC`,i=e.dims.slice();r&&i.splice(1,0,i.pop());let a=Object.hasOwnProperty.call(t,`dilations`),o=t.kernelShape.slice(),s=t.strides.slice(),c=a?t.dilations.slice():[],l=t.pads.slice();_n.adjustPoolAttributes(n,i,o,s,c,l);let u=_n.computePoolOutputShape(n,i,s,c,o,l,t.autoPad),d=Object.assign({},t);a?Object.assign(d,{kernelShape:o,strides:s,pads:l,dilations:c,cacheKey:t.cacheKey}):Object.assign(d,{kernelShape:o,strides:s,pads:l,cacheKey:t.cacheKey});let f=u.slice();return f.push(f.splice(1,1)[0]),[d,r?f:u]},Dl=(e,t)=>{let n=t.format===`NHWC`,r=W.size(e),i=W.size(t.kernelShape),a=[{type:12,data:r},{type:12,data:i}],o=[{name:`outputSize`,type:`u32`},{name:`kernelSize`,type:`u32`}];if(t.kernelShape.length<=2){let e=t.kernelShape[t.kernelShape.length-1],n=t.strides[t.strides.length-1],r=t.pads[t.pads.length/2-1],i=t.pads[t.pads.length-1],s=!!(r+i);a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kw`,type:`u32`},{name:`sw`,type:`u32`},{name:`pwStart`,type:`u32`},{name:`pwEnd`,type:`u32`});let c=!1;if(t.kernelShape.length===2){let e=t.kernelShape[t.kernelShape.length-2],n=t.strides[t.strides.length-2],r=t.pads[t.pads.length/2-2],i=t.pads[t.pads.length-2];c=!!(r+i),a.push({type:12,data:e},{type:12,data:n},{type:12,data:r},{type:12,data:i}),o.push({name:`kh`,type:`u32`},{name:`sh`,type:`u32`},{name:`phStart`,type:`u32`},{name:`phEnd`,type:`u32`})}return[a,o,!0,s,c]}else{if(n)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let e=W.computeStrides(t.kernelShape);a.push({type:12,data:e},{type:12,data:t.pads},{type:12,data:t.strides}),o.push({name:`kernelStrides`,type:`u32`,length:e.length},{name:`pads`,type:`u32`,length:t.pads.length},{name:`strides`,type:`u32`,length:t.strides.length});let r=t.pads.reduce((e,t)=>e+t);return[a,o,!!r,!1,!1]}},Ol=(e,t,n,r,i,a,o,s,c,l,u,d)=>{let f=i.format===`NHWC`,p=t.type.value,m=Y(`output`,t.type.tensor,r);if(i.kernelShape.length<=2){let r=``,l=``,h=``,g=n-(f?2:1);if(r=u?` - for (var i: u32 = 0u; i < uniforms.kw; i++) { - xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; - if (xIndices[${g}] < 0 || xIndices[${g}] - >= uniforms.x_shape[${g}]) { - pad++; - continue; - } - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - }`:` - for (var i: u32 = 0u; i < uniforms.kw; i++) { - xIndices[${g}] = indices[${g}] * uniforms.sw - uniforms.pwStart + i; - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - }`,i.kernelShape.length===2){let e=n-(f?3:2);l=d?` - for (var j: u32 = 0u; j < uniforms.kh; j++) { - xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; - if (xIndices[${e}] < 0 || xIndices[${e}] >= uniforms.x_shape[${e}]) { - pad += i32(uniforms.kw); - continue; - } - `:` - for (var j: u32 = 0u; j < uniforms.kh; j++) { - xIndices[${e}] = indices[${e}] * uniforms.sh - uniforms.phStart + j; - `,h=` - } - `}return` - ${e.registerUniforms(c).declareVariables(t,m)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - - let indices = ${m.offsetToIndices(`global_idx`)}; - var xIndices = ${m.offsetToIndices(`global_idx`)}; - - var value = ${p}(${s}); - var pad = 0; - ${l} - ${r} - ${h} - ${o} - - output[global_idx] = value; - }`}else{if(f)throw Error(`Pooling with kernelShape.length > 2 is not supported for NHWC format.`);let r=i.kernelShape.length,u=i.pads.length,d=``;return d=l?` - if (xIndices[j] >= uniforms.x_shape[j]) { - pad++; - isPad = true; - break; - } - } - if (!isPad) { - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - }`:` - } - let x_val = x[${t.indicesToOffset(`xIndices`)}]; - ${a} - `,` - ${e.registerUniforms(c).declareVariables(t,m)} - - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - let indices = ${m.offsetToIndices(`global_idx`)}; - var xIndices = ${m.offsetToIndices(`global_idx`)}; - - var offsets: array; - - var value = ${p}(${s}); - var pad = 0; - var isPad = false; - - for (var i: u32 = 0u; i < uniforms.kernelSize; i++) { - var offset = i; - for (var j = 0u; j < ${r-1}u; j++) { - offsets[j] = offset / ${q(`uniforms.kernelStrides`,`j`,r)}; - offset -= offsets[j] * ${q(`uniforms.kernelStrides`,`j`,r)}; - } - offsets[${r-1}] = offset; - - isPad = false; - for (var j = ${n-r}u; j < ${n}u; j++) { - xIndices[j] = indices[j] * ${q(`uniforms.strides`,`j - ${n-r}u`,r)} - + offsets[j - ${n-r}u] - ${q(`uniforms.pads`,`j - 2u`,u)}; - ${d} - } - ${o} - - output[global_idx] = value; - }`}},kl=e=>`${e.format};${e.ceilMode};${e.autoPad};${e.kernelShape.length}`,Al=e=>`${kl(e)};${e.countIncludePad}`,jl=e=>`${kl(e)};${e.storageOrder};${e.dilations}`,Ml=e=>({format:e.format,autoPad:[`NOTSET`,`VALID`,`SAME_UPPER`,`SAME_LOWER`][e.auto_pad],ceilMode:e.ceil_mode,kernelShape:e.kernel_shape,strides:e.strides,pads:e.pads}),Nl=(e,t,n,r)=>{let[i,a]=El(t,r,n),o=J(`x`,t.dataType,t.dims.length),s=o.type.value,c=`value += x_val;`,l=``;i.countIncludePad?l+=`value /= ${s}(uniforms.kernelSize);`:l+=`value /= ${s}(i32(uniforms.kernelSize) - pad);`;let[u,d,f,p,m]=Dl(a,i);u.push(...K(t.dims,a));let h=[`rank`];return{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:h},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(W.size(a)/64)},programUniforms:u}),getShaderSource:e=>Ol(e,o,t.dims.length,a.length,i,c,l,0,d,f,p,m)}},Pl=e=>{let t=e.count_include_pad!==0,n=Ml(e);if(n.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for AveragePool`);let r={countIncludePad:t,...n,cacheKey:``};return{...r,cacheKey:Al(r)}},Fl=(e,t)=>{Tl(e.inputs),e.compute(Nl(`AveragePool`,e.inputs[0],!1,t))},Il={autoPad:``,ceilMode:0,countIncludePad:!1,kernelShape:[],strides:[],pads:[],storageOrder:0,dilations:[]},Ll=e=>{let t=e.format;return{format:t,...Il,cacheKey:t}},Rl=(e,t)=>{Tl(e.inputs),e.compute(Nl(`GlobalAveragePool`,e.inputs[0],!0,t))},zl=(e,t,n,r)=>{let[i,a]=El(t,r,n),o=` - value = max(x_val, value); - `,s=``,c=J(`x`,t.dataType,t.dims.length),l=[`rank`],[u,d,f,p,m]=Dl(a,i);return u.push(...K(t.dims,a)),{name:e,shaderCache:{hint:`${r.cacheKey};${f};${p};${m}`,inputDependencies:l},getRunData:()=>({outputs:[{dims:a,dataType:t.dataType}],dispatchGroup:{x:Math.ceil(W.size(a)/64)},programUniforms:u}),getShaderSource:e=>Ol(e,c,t.dims.length,a.length,i,o,s,t.dataType===10?-65504:-1e5,d,f,p,m)}},Bl=(e,t)=>{Tl(e.inputs),e.compute(zl(`MaxPool`,e.inputs[0],!1,t))},Vl=e=>{let t=e.storage_order,n=e.dilations,r=Ml(e);if(t!==0)throw Error(`column major storage order is not yet supported for MaxPool`);if(r.ceilMode!==0)throw Error(`using ceil() in shape computation is not yet supported for MaxPool`);let i={storageOrder:t,dilations:n,...r,cacheKey:``};return{...i,cacheKey:jl(i)}},Hl=e=>{let t=e.format;return{format:t,...Il,cacheKey:t}},Ul=(e,t)=>{Tl(e.inputs),e.compute(zl(`GlobalMaxPool`,e.inputs[0],!0,t))}}),Gl,Kl,ql,Jl,Yl=M(()=>{"use strict";H(),G(),Zn(),X(),Gl=(e,t)=>{if(e.length<2||e.length>3)throw Error(`DequantizeLinear requires 2 or 3 inputs.`);if(e.length===3&&e[1].dims===e[2].dims)throw Error(`x-scale and x-zero-point must have the same shape.`);if(e.length===3&&e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[0].dataType===6&&e.length>2)throw Error(`In the case of dequantizing int32 there is no zero point.`);if(e[1].dims.length!==0&&e[1].dims.length!==1&&e[1].dims.length!==e[0].dims.length)throw Error(`scale input must be a scalar, a 1D tensor, or have the same rank as the input tensor.`);if(e.length>2){if(e[0].dataType!==e[2].dataType)throw Error(`x and x-zero-point must have the same data type.`);if(e[1].dims.length!==e[2].dims.length)throw Error(`scale and zero-point inputs must have the same rank.`);if(!e[1].dims.map((t,n)=>t===e[2].dims[n]).reduce((e,t)=>e&&t,!0))throw Error(`scale and zero-point inputs must have the same shape.`)}if(t.blockSize>0){if(e[1].dims.length===0||e[1].dims.length===1&&e[1].dims[0]===1)throw Error(`blockSize must be set only for block quantization.`);if(!e[1].dims.map((n,r)=>r===t.axis||n===e[0].dims[r]).reduce((e,t)=>e&&t,!0))throw Error(`For block qunatization, scale input shape to match the input shape except for the axis`);if(e[1].dims.length!==e[0].dims.length)throw Error(`For block qunatization the scale input rank must be the same as the x rank.`);let n=e[0].dims[t.axis],r=e[1].dims[t.axis];if(t.blockSizeMath.ceil(n/(r-1)-1))throw Error(`blockSize must be with in the range [ceil(dI / Si), ceil(dI / (Si - 1) - 1)].`)}},Kl=(e,t)=>{let n=W.normalizeAxis(t.axis,e[0].dims.length),r=e[0].dataType,i=r===3,a=e[0].dims,o=e[1].dataType,s=W.size(a),c=r===3||r===2,l=c?[Math.ceil(W.size(e[0].dims)/4)]:e[0].dims,u=e[1].dims,d=e.length>2?e[2]:void 0,f=d?c?[Math.ceil(W.size(d.dims)/4)]:d.dims:void 0,p=u.length===0||u.length===1&&u[0]===1,m=p===!1&&u.length===1,h=nr(s),g=p&&(!c||h===4),_=g?h:1,v=g&&!c?h:1,y=J(`input`,c?12:r,l.length,v),b=J(`scale`,o,u.length),x=d?J(`zero_point`,c?12:r,f.length):void 0,S=Y(`output`,o,a.length,_),C=[y,b];x&&C.push(x);let w=[l,u];d&&w.push(f);let T=[{type:12,data:s/_},{type:12,data:n},{type:12,data:t.blockSize},...K(...w,a)],E=e=>{let t=[{name:`output_size`,type:`u32`},{name:`axis`,type:`u32`},{name:`block_size`,type:`u32`}];return` - ${e.registerUniforms(t).declareVariables(...C,S)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let output_indices = ${S.offsetToIndices(`global_idx`)}; - - // Set input x - ${c?` - let input = ${y.getByOffset(`global_idx / 4`)}; - let x_vec = ${i?`unpack4xI8(input)`:`unpack4xU8(input)`}; - let x_value = ${_===1?`x_vec[global_idx % 4]`:`x_vec`};`:`let x_value = ${y.getByOffset(`global_idx`)};`}; - - // Set scale input - ${p?`let scale_value= ${b.getByOffset(`0`)}`:m?` - let scale_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; - let scale_value= ${b.getByOffset(`scale_index`)};`:` - var scale_indices: ${b.type.indices} = output_indices; - let index = ${b.indicesGet(`scale_indices`,`uniforms.axis`)} / uniforms.block_size; - ${b.indicesSet(`scale_indices`,`uniforms.axis`,`index`)}; - let scale_value= ${b.getByIndices(`scale_indices`)};`}; - - // Set zero-point input - ${x?p?c?` - let zero_point_input = ${x.getByOffset(`0`)}; - let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; - let zero_point_value= zero_point_vec[0]`:`let zero_point_value = ${x.getByOffset(`0`)}`:m?c?` - let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; - let zero_point_input = ${x.getByOffset(`zero_point_index / 4`)}; - let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; - let zero_point_value = zero_point_vec[zero_point_index % 4]`:` - let zero_point_index = ${S.indicesGet(`output_indices`,`uniforms.axis`)}; - let zero_point_value = ${x.getByOffset(`zero_point_index`)};`:c?` - let zero_point_offset = ${b.indicesToOffset(`scale_indices`)}; - let zero_point_input = ${x.getByOffset(`zero_point_offset / 4`)}; - let zero_point_vec = ${i?`unpack4xI8(zero_point_input)`:`unpack4xU8(zero_point_input)`}; - let zero_point_value = zero_point_vec[zero_point_offset % 4];`:`let zero_point_value = ${x.getByIndices(`scale_indices`)};`:`let zero_point_value = ${c?i?`i32`:`u32`:y.type.value}(0);`}; - // Compute and write output - ${S.setByOffset(`global_idx`,`${S.type.value}(x_value - zero_point_value) * scale_value`)}; - }`};return{name:`DequantizeLinear`,shaderCache:{hint:t.cacheKey,inputDependencies:x?[`rank`,`rank`,`rank`]:[`rank`,`rank`]},getShaderSource:E,getRunData:()=>({outputs:[{dims:a,dataType:o}],dispatchGroup:{x:Math.ceil(s/_/64),y:1,z:1},programUniforms:T})}},ql=(e,t)=>{Gl(e.inputs,t),e.compute(Kl(e.inputs,t))},Jl=e=>Xn({axis:e.axis,blockSize:e.blockSize})}),Xl,Zl,Ql,$l=M(()=>{"use strict";et(),H(),X(),Xl=(e,t,n)=>{let r=e===t,i=et&&n>0;if(r||i||a)throw Error(`Range these inputs' contents are invalid.`)},Zl=(e,t,n,r)=>{let i=Math.abs(Math.ceil((t-e)/n)),a=[i],o=i,s=[{type:12,data:o},{type:r,data:e},{type:r,data:n},...K(a)],c=e=>{let t=Y(`output`,r,a.length),n=t.type.value,i=[{name:`outputSize`,type:`u32`},{name:`start`,type:n},{name:`delta`,type:n}];return` - ${e.registerUniforms(i).declareVariables(t)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - output[global_idx] = uniforms.start + ${n}(global_idx) * uniforms.delta; - }`};return{name:`Range`,shaderCache:{hint:`${r}`},getShaderSource:c,getRunData:()=>({outputs:[{dims:a,dataType:r}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:s})}},Ql=e=>{let t=0,n=0,r=0;e.inputs[0].dataType===6?(t=e.inputs[0].getInt32Array()[0],n=e.inputs[1].getInt32Array()[0],r=e.inputs[2].getInt32Array()[0]):e.inputs[0].dataType===1&&(t=e.inputs[0].getFloat32Array()[0],n=e.inputs[1].getFloat32Array()[0],r=e.inputs[2].getFloat32Array()[0]),ye.webgpu.validateInputContent&&Xl(t,n,r),e.compute(Zl(t,n,r,e.inputs[0].dataType),{inputs:[]})}}),eu,tu,nu,ru,iu,au,ou=M(()=>{"use strict";H(),G(),Zn(),X(),eu=(e,t,n,r)=>{if(e!==`none`&&r!==`i32`&&r!==`u32`&&r!==`f32`)throw Error(`Input ${r} is not supported with reduction ${e}.`);let i=`{ - var oldValue = 0; - loop { - let newValueF32 =`,a=`; - let newValue = bitcast(newValueF32); - let res = atomicCompareExchangeWeak(&${t}, oldValue, newValue); - if res.exchanged { - break; - } - oldValue = res.old_value; - } - }`;switch(e){case`none`:return`${t}=${n};`;case`add`:return r===`i32`||r===`u32`?`atomicAdd(&${t}, bitcast<${r}>(${n}));`:` - ${i}bitcast<${r}>(oldValue) + (${n})${a}`;case`max`:return r===`i32`||r===`u32`?`atomicMax(&${t}, bitcast<${r}>(${n}));`:` - ${i}max(bitcast(oldValue), (${n}))${a}`;case`min`:return r===`i32`||r===`u32`?`atomicMin(&${t}, bitcast<${r}>(${n}));`:`${i}min(bitcast<${r}>(oldValue), (${n}))${a}`;case`mul`:return`${i}(bitcast<${r}>(oldValue) * (${n}))${a}`;default:throw Error(`Reduction ${e} is not supported.`)}},tu=(e,t)=>`${e===1?` - let element_count_dim = uniforms.output_strides; - let dim_value = uniforms.output_shape;`:` - let element_count_dim = uniforms.output_strides[${t?`i - indices_start`:`i`}]; - let dim_value = uniforms.output_shape[${t?`i - indices_start`:`i`} + uniforms.last_index_dimension];`} - - if (index >= 0) { - if (index >= i32(dim_value)) { - index = i32(dim_value - 1); - } - } else { - if (index < -i32(dim_value)) { - index = 0; - } else { - index += i32(dim_value); - } - } - data_offset += u32((u32(index) * element_count_dim));`,nu=(e,t,n)=>`for (var i = 0u; i < uniforms.num_updates_elements; i++) { - let value = updates[uniforms.num_updates_elements * ${n?`global_idx`:`idx`} + i]; - ${eu(e.reduction,`output[data_offset + i]`,`value`,t)} - }`,ru=(e,t)=>{let n=e[0].dims,r=e[1].dims,i=n,a=1,o=Math.ceil(W.size(r)/a),s=r[r.length-1],c=W.sizeFromDimension(n,s),l=W.sizeFromDimension(r,0)/s,u=[{type:12,data:o},{type:12,data:s},{type:12,data:c},...K(e[1].dims,e[2].dims,i)],d=r=>{let o=J(`indices`,e[1].dataType,e[1].dims.length),s=J(`updates`,e[2].dataType,e[2].dims.length,a),c=t.reduction!==`none`&&t.reduction!==``?sr(`output`,e[0].dataType,i.length):Y(`output`,e[0].dataType,i.length,a);return` - ${r.registerUniform(`output_size`,`u32`).registerUniform(`last_index_dimension`,`u32`).registerUniform(`num_updates_elements`,`u32`).declareVariables(o,s,c)} - ${r.mainStart()} - ${r.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - var hasDuplicates = false; - if (${t.reduction===`none`}) { - for (var i = 0; i < ${l}; i = i + 1) { - for (var j = i + 1; j < ${l}; j = j + 1) { - var index_i = i32(indices[i].x); - var index_j = i32(indices[j].x); - if (index_i == index_j) { - hasDuplicates = true; - break; - } - } - if (hasDuplicates) { - break; - } - } - } - - if (${t.reduction===`none`} && hasDuplicates) { - if (global_idx != 0u) { - return; - } - // Process each index-update pair individually when duplicates exist - for (var idx = 0u; idx < ${l}u; idx++) { - var data_offset = 0u; - for (var i = 0u; i < uniforms.last_index_dimension; i++) { - var index = i32(indices[idx * uniforms.last_index_dimension + i].x); - ${tu(n.length,!1)} - } - ${nu(t,c.type.value,!1)} - } - return; - } - - var data_offset = 0u; - var indices_start = uniforms.last_index_dimension * global_idx; - var indices_end = indices_start + uniforms.last_index_dimension; - for (var i = indices_start; i < indices_end; i++) { - var index = i32(indices[i].x); - ${tu(n.length,!0)} - } - ${nu(t,c.type.value,!0)} - }`};return{name:`ScatterND`,shaderCache:{hint:`${t.cacheKey}_${t.reduction}`,inputDependencies:[`rank`,`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(o/64)},programUniforms:u}),getShaderSource:d}},iu=e=>Xn({reduction:e.reduction}),au=(e,t)=>{e.compute(ru(e.inputs,t),{inputs:[e.inputs[1],e.inputs[2]],outputs:[]})}}),su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u,vu,yu,bu,xu,Su,Cu,wu,Tu,Eu,Du=M(()=>{"use strict";H(),G(),Zn(),X(),su=(e,t)=>{if(e.every(e=>e>0||(()=>{throw Error(`Resize requires scales input values to be positive`)})),e.length>0){if(t.mode===`linear`){if(!(e.length===2||e.length===3||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1||e.length===5&&e[0]===1&&e[1]===1))throw Error(`For linear mode, Resize requires scales to be 2D, 3D, 4D with either two outermost or one innermost and - one outermost scale values equal to 1, or 5D with two outermost scale values equal to 1`)}else if(t.mode===`cubic`&&!(e.length===2||e.length===4&&e[0]===1&&e[1]===1||e.length===4&&e[0]===1&&e[3]===1))throw Error(`Resize requires scales input size to be 2 or 4 for cubic mode`)}},cu=(e,t,n)=>{t.every(e=>e>=0&&e{throw Error(`Resize requires axes input values to be positive and less than rank`)}));let r=Array(n).fill(1);return t.forEach((t,n)=>r[t]=e[n]),r},lu=(e,t,n,r,i,a)=>{let[o,s,c]=n>10?[1,2,3]:[-1,e.length>1?1:-1,-1],l=e[0].dims.length;if(o>0&&e.length>o&&e[o].dims.length>0)e[o].getFloat32Array().forEach(e=>a.push(e));else if(t.coordinateTransformMode===`tf_crop_and_resize`)throw Error(`Resize requires RoI input to be specified when coordinateTransformMode is tfCropAndResize`);if(s>0&&e.length>s&&e[s].dims.length===1&&e[s].dims[0]>0){if(e[s].getFloat32Array().forEach(e=>r.push(e)),r.length!==0&&r.length!==l&&n>=18&&r.length!==t.axes.length)throw Error(`Resize requires scales input size to be same as input rank or axes size for opset 18 and up`);su(r,t),t.axes.length>0&&cu(r,t.axes,l).forEach((e,t)=>r[t]=e)}if(c>0&&e.length>c&&e[c].dims.length===1&&e[c].dims[0]>0&&(e[c].getBigInt64Array().forEach(e=>i.push(Number(e))),i.length!==0&&i.length!==l&&n>=18&&i.length!==t.axes.length))throw Error(`Resize requires sizes input size to be same as input rank or axes size for opset 18 and up`);if(t.axes.length>0){if(r.length!==0&&r.length!==t.axes.length)throw Error(`Resize requires "scales" input size to be of axes rank when axes attributes is specified`);if(i.length!==0&&i.length!==t.axes.length)throw Error(`Resize requires "sizes" input size to be of rank axes rank when axes attributes is specified`)}if(typeof r<`u`&&typeof i<`u`&&r.length>0&&i.length>l)throw Error(`Resize requires only of scales or sizes to be specified`)},uu=(e,t,n,r)=>` - // The whole part and the fractional part are calculated separately due to inaccuracy of floating - // point division. As an example, f32(21) / f32(7) may evaluate to 2.99... instead of 3, causing an - // offset-by-one error later in floor(). - let big = (${e}) * (${t}); - let whole = ${r}(big / (${n})); - let fract = ${r}(big % (${n})) / ${r}(${n}); - return whole + fract; -`,du=(e,t)=>`fn getOriginalCoordinateFromResizedCoordinate(xResized: u32, xScale: f32, lengthResized: u32, - lengthOriginal: u32, roiStart: f32, roiEnd: f32) -> ${t} { `+(()=>{switch(e){case`asymmetric`:return` - if (xScale < 1.0 || floor(xScale) != xScale) { - return ${t}(xResized) / ${t}(xScale); - } else { - ${uu(`xResized`,`lengthOriginal`,`lengthResized`,t)} - } - `;case`pytorch_half_pixel`:return`if (lengthResized > 1) { - return (${t}(xResized) + 0.5) / ${t}(xScale) - 0.5; - } else { - return 0.0; - }`;case`tf_half_pixel_for_nn`:return`return (${t}(xResized) + 0.5) / ${t}(xScale);`;case`align_corners`:return`if (lengthResized == 1) { - return 0.0; - } else { - ${uu(`xResized`,`lengthOriginal - 1`,`lengthResized - 1`,t)} - }`;case`tf_crop_and_resize`:return`if (lengthResized > 1) { - return ${t}(roiStart) * ${t}(lengthOriginal - 1) + - (${t}(xResized) * ${t}(roiEnd - roiStart) * ${t}(lengthOriginal - 1)) / - ${t}(lengthResized - 1); - } else { - return 0.5 * ${t}(roiStart + roiEnd) * ${t}(lengthOriginal - 1); - }`;case`half_pixel_symmetric`:return`const outputWidth = ${t}xScale * ${t}(lengthResized); - const adjustment = ${t}(lengthResized) / outputWidth; - const center = ${t}(lengthOriginal) / 2; - const offset = center * (1 - adjustment); - return offset + ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;case`half_pixel`:return`return ((${t}(xResized) + 0.5) / ${t}(xScale)) - 0.5;`;default:throw Error(`Coordinate transform mode ${e} is not supported`)}})()+`}`,fu=(e,t,n)=>`fn getNearestPixelFromOriginal(xOriginal: ${n}, isDownSample: bool) -> ${n} {`+(()=>{switch(e){case`round_prefer_ceil`:return`if (fract(xOriginal) == 0.5) { return ceil(xOriginal); } else { return round(xOriginal); }`;case`floor`:return`return floor(xOriginal);`;case`ceil`:return`return ceil(xOriginal);`;case`round_prefer_floor`:return`if (fract(xOriginal) == 0.5) { return floor(xOriginal); } else { return round(xOriginal); }`;case`simple`:default:if(t<11)return`if (isDownSample) { return ceil(xOriginal); } else { return xOriginal; }`;throw Error(`Nearest mode ${e} is not supported`)}})()+`}`,pu=(e,t,n)=>{let r=Array(n).fill(0).concat(Array(n).fill(1)),i=e.length===0?r:e.slice();return t.length>0?(t.forEach((e,a)=>{r[e]=i[a],r[a+n]=i[t.length+a]}),r):i},mu=(e,t,n,r)=>{let i=[];if(n.length>0)if(r.length>0){if(e.forEach(e=>i.push(e)),Math.max(...r)>e.length)throw Error(`axes is out of bound`);r.forEach((e,t)=>i[e]=n[t])}else n.forEach(e=>i.push(e));else{if(t.length===0)throw Error(`Resize requires either scales or sizes.`);i=e.map((e,n)=>Math.round(e*t[n]))}return i},hu=(e,t,n)=>{let r=(()=>{switch(n.keepAspectRatioPolicy){case`not_larger`:return n.axes.length>0?Math.min(...n.axes.map(e=>t[e]),Number.MAX_VALUE):Math.min(...t,Number.MAX_VALUE);case`not_smaller`:return n.axes.length>0?Math.max(...n.axes.map(e=>t[e]),Number.MIN_VALUE):Math.max(...t,Number.MIN_VALUE);default:throw Error(`Keep aspect ratio policy ${n.keepAspectRatioPolicy} is not supported`)}})();t.fill(1,0,t.length);let i=e.slice();return n.axes.length>0?(n.axes.forEach(e=>t[e]=r),n.axes.forEach(n=>i[n]=Math.round(e[n]*t[n]))):(t.fill(r,0,t.length),i.forEach((e,n)=>i[n]=Math.round(e*t[n]))),i},gu=(e,t,n,r,i)=>` - fn calculateOriginalIndicesFromOutputIndices(output_indices: ${e.type.indices}) -> array<${e.type.value}, ${n.length}> { - var original_indices: array<${e.type.value}, ${n.length}>; - for (var i:u32 = 0; i < ${n.length}; i++) { - var output_index = ${e.indicesGet(`output_indices`,`i`)}; - var scale = ${q(`uniforms.scales`,`i`,r)}; - var roi_low = ${q(`uniforms.roi`,`i`,i)}; - var roi_hi = ${q(`uniforms.roi`,`i + ${t.length}`,i)}; - if (scale == 1.0) { - original_indices[i] = ${e.type.value}(output_index); - } else { - var input_shape_i = ${q(`uniforms.input_shape`,`i`,t.length)}; - var output_shape_i = ${q(`uniforms.output_shape`,`i`,n.length)}; - original_indices[i] = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, - input_shape_i, roi_low, roi_hi); - } - } - return original_indices; - }`,_u=(e,t,n,r,i,a,o)=>` - fn calculateInputIndicesFromOutputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { - var input_indices: ${e.type.indices}; - for (var i:u32 = 0; i < ${r.length}; i++) { - var output_index = ${t.indicesGet(`output_indices`,`i`)}; - var input_index: u32; - var scale = ${q(`uniforms.scales`,`i`,i)}; - if (scale == 1.0) { - input_index = output_index; - } else { - var roi_low = ${q(`uniforms.roi`,`i`,a)}; - var roi_hi = ${q(`uniforms.roi`,`i + ${n.length}`,a)}; - var input_shape_i = ${q(`uniforms.input_shape`,`i`,n.length)}; - var output_shape_i = ${q(`uniforms.output_shape`,`i`,r.length)}; - var original_idx = getOriginalCoordinateFromResizedCoordinate(output_index, scale, output_shape_i, - input_shape_i, roi_low, roi_hi); - if (!${o} || (original_idx >= 0 && original_idx < ${t.type.value}(input_shape_i))) { - if (original_idx < 0) { - input_index = 0; - } else if (original_idx > ${t.type.value}(input_shape_i - 1)) { - input_index = input_shape_i - 1; - } else { - input_index = u32(getNearestPixelFromOriginal(original_idx, scale < 1)); - } - } else { - input_index = u32(original_idx); - } - } - ${e.indicesSet(`input_indices`,`i`,`input_index`)} - } - return input_indices; - }`,vu=(e,t)=>` - fn checkInputIndices(input_indices: ${e.type.indices}) -> bool { - for (var i:u32 = 0; i < ${t.length}; i++) { - var input_index = ${e.indicesGet(`input_indices`,`i`)}; - if (input_index < 0 || input_index >= ${q(`uniforms.input_shape`,`i`,t.length)}) { - return false; - } - } - return true; - }`,yu=(e,t,n,r)=>e.rank>r?` - ${e.indicesSet(`input_indices`,t,`channel`)}; - ${e.indicesSet(`input_indices`,n,`batch`)}; -`:``,bu=(e,t,n,r,i)=>{let[a,o,s,c]=n.length===2?[-1,0,1,-1]:[0,2,3,1],l=e.type.value;return` - fn getInputValue(batch: u32, channel: u32, row: u32, col: u32) -> ${l} { - var input_indices: ${e.type.indices}; - ${e.indicesSet(`input_indices`,o,`max(0, min(row, ${n[o]} - 1))`)}; - ${e.indicesSet(`input_indices`,s,`max(0, min(col, ${n[s]} - 1))`)}; - ${yu(e,c,a,2)} - return ${e.getByIndices(`input_indices`)}; - } - - fn bilinearInterpolation(output_indices: ${t.type.indices}) -> ${l} { - var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); - var row:${l} = originalIndices[${o}]; - var col:${l} = originalIndices[${s}]; - ${r?`if (row < 0 || row > (${n[o]} - 1) || col < 0 || col > (${n[s]} - 1)) { - return ${i}; - }`:``}; - row = max(0, min(row, ${n[o]} - 1)); - col = max(0, min(col, ${n[s]} - 1)); - var row1: u32 = u32(row); - var col1: u32 = u32(col); - var row2: u32 = u32(row + 1); - var col2: u32 = u32(col + 1); - var channel: u32 = ${n.length>2?`u32(originalIndices[${c}])`:`0`}; - var batch: u32 = ${n.length>2?`u32(originalIndices[${a}])`:`0`}; - var x11: ${l} = getInputValue(batch, channel, row1, col1); - var x12: ${l} = getInputValue(batch, channel, row1, col2); - var x21: ${l} = getInputValue(batch, channel, row2, col1); - var x22: ${l} = getInputValue(batch, channel, row2, col2); - var dx1: ${l} = abs(row - ${l}(row1)); - var dx2: ${l} = abs(${l}(row2) - row); - var dy1: ${l} = abs(col - ${l}(col1)); - var dy2: ${l} = abs(${l}(col2) - col); - if (row1 == row2) { - dx1 = 0.5; - dx2 = 0.5; - } - if (col1 == col2) { - dy1 = 0.5; - dy2 = 0.5; - } - return (x11 * dx2 * dy2 + x12 * dx2 * dy1 + x21 * dx1 * dy2 + x22 * dx1 * dy1); - }`},xu=(e,t,n,r,i,a,o,s,c,l)=>{let u=n.length===2,d=!0,[f,p]=u?[0,1]:d?[2,3]:[1,2],m=e.type.value,h=o=>{let u=o===f?`row`:`col`;return` - fn ${u}CubicInterpolation(input_indices: ${e.type.indices}, output_indices: ${t.type.indices}) -> ${m} { - var output_index = ${t.indicesGet(`output_indices`,o)}; - var originalIdx: ${m} = getOriginalCoordinateFromResizedCoordinate(output_index, ${i[o]}, - ${r[o]}, ${n[o]}, ${a[o]}, ${a[o]} + ${n.length}); - var fractOriginalIdx: ${m} = originalIdx - floor(originalIdx); - var coefs = getCubicInterpolationCoefs(fractOriginalIdx); - - if (${s} && (originalIdx < 0 || originalIdx > (${n[o]} - 1))) { - return ${c}; - } - var data: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); - for (var i: i32 = -1; i < 3; i++) { - var ${u}: ${m} = originalIdx + ${m}(i); - if (${u} < 0 || ${u} >= ${n[o]}) { - ${l?`coefs[i + 1] = 0.0; - continue;`:s?`return ${c};`:`${u} = max(0, min(${u}, ${n[o]} - 1));`}; - } - var input_indices_copy: ${e.type.indices} = input_indices; - ${e.indicesSet(`input_indices_copy`,o,`u32(${u})`)}; - data[i + 1] = ${o===f?e.getByIndices(`input_indices_copy`):`rowCubicInterpolation(input_indices_copy, output_indices)`}; - } - return cubicInterpolation1D(data, coefs); - }`};return` - ${h(f)}; - ${h(p)}; - fn getCubicInterpolationCoefs(s: ${m}) -> array<${m}, 4> { - var absS = abs(s); - var coeffs: array<${m}, 4> = array<${m}, 4>(0.0, 0.0, 0.0, 0.0); - var oneMinusAbsS: ${m} = 1.0 - absS; - var twoMinusAbsS: ${m} = 2.0 - absS; - var onePlusAbsS: ${m} = 1.0 + absS; - coeffs[0] = ((${o} * onePlusAbsS - 5 * ${o}) * onePlusAbsS + 8 * ${o}) * onePlusAbsS - 4 * ${o}; - coeffs[1] = ((${o} + 2) * absS - (${o} + 3)) * absS * absS + 1; - coeffs[2] = ((${o} + 2) * oneMinusAbsS - (${o} + 3)) * oneMinusAbsS * oneMinusAbsS + 1; - coeffs[3] = ((${o} * twoMinusAbsS - 5 * ${o}) * twoMinusAbsS + 8 * ${o}) * twoMinusAbsS - 4 * ${o}; - return coeffs; - } - - fn cubicInterpolation1D(x: array<${m}, 4>, coefs: array<${m}, 4>) -> ${m} { - var coefsSum: ${m} = coefs[0] + coefs[1] + coefs[2] + coefs[3]; - return (x[0] * coefs[0] + x[1] * coefs[1]+ x[2] * coefs[2]+ x[3] * coefs[3]) / coefsSum; - } - - fn bicubicInterpolation(output_indices: ${t.type.indices}) -> ${m} { - var input_indices: ${e.type.indices} = output_indices; - return colCubicInterpolation(input_indices, output_indices); - } - `},Su=(e,t,n,r,i)=>{let[a,o,s,c,l]=n.length===3?[-1,0,1,2,-1]:[0,2,3,4,1],u=e.type.value;return` - fn getInputValue(batch: u32, channel: u32, depth:u32, height: u32, width: u32) -> ${u} { - var input_indices: ${e.type.indices}; - ${e.indicesSet(`input_indices`,o,`max(0, min(depth, ${n[o]} - 1))`)}; - ${e.indicesSet(`input_indices`,s,`max(0, min(height, ${n[s]} - 1))`)}; - ${e.indicesSet(`input_indices`,c,`max(0, min(width, ${n[c]} - 1))`)}; - ${yu(e,l,a,3)} - return ${e.getByIndices(`input_indices`)}; - } - - fn trilinearInterpolation(output_indices: ${t.type.indices}) -> ${u} { - var originalIndices = calculateOriginalIndicesFromOutputIndices(output_indices); - var depth:${u} = originalIndices[${o}]; - var height:${u} = originalIndices[${s}]; - var width:${u} = originalIndices[${c}]; - ${r?`if (depth < 0 || depth > (${n[o]} - 1) || height < 0 || height > (${n[s]} - 1) || width < 0 || (width > ${n[c]} - 1)) { - return ${i}; - }`:``}; - - depth = max(0, min(depth, ${n[o]} - 1)); - height = max(0, min(height, ${n[s]} - 1)); - width = max(0, min(width, ${n[c]} - 1)); - var depth1: u32 = u32(depth); - var height1: u32 = u32(height); - var width1: u32 = u32(width); - var depth2: u32 = u32(depth + 1); - var height2: u32 = u32(height + 1); - var width2: u32 = u32(width + 1); - var channel: u32 = ${n.length>3?`u32(originalIndices[${l}])`:`0`}; - var batch: u32 = ${n.length>3?`u32(originalIndices[${a}])`:`0`}; - - var x111: ${u} = getInputValue(batch, channel, depth1, height1, width1); - var x112: ${u} = getInputValue(batch, channel, depth1, height1, width2); - var x121: ${u} = getInputValue(batch, channel, depth1, height2, width1); - var x122: ${u} = getInputValue(batch, channel, depth1, height2, width2); - var x211: ${u} = getInputValue(batch, channel, depth2, height1, width1); - var x212: ${u} = getInputValue(batch, channel, depth2, height1, width2); - var x221: ${u} = getInputValue(batch, channel, depth2, height2, width1); - var x222: ${u} = getInputValue(batch, channel, depth2, height2, width2); - var dx1: ${u} = abs(depth - ${u}(depth1)); - var dx2: ${u} = abs(${u}(depth2) - depth); - var dy1: ${u} = abs(height - ${u}(height1)); - var dy2: ${u} = abs(${u}(height2) - height); - var dz1: ${u} = abs(width - ${u}(width1)); - var dz2: ${u} = abs(${u}(width2) - width); - if (depth1 == depth2) { - dx1 = 0.5; - dx2 = 0.5; - } - if (height1 == height2) { - dy1 = 0.5; - dy2 = 0.5; - } - if (width1 == width2) { - dz1 = 0.5; - dz2 = 0.5; - } - return (x111 * dx2 * dy2 * dz2 + x112 * dx2 * dy2 * dz1 + x121 * dx2 * dy1 *dz2 + x122 * dx2 * dy1 * dz1 + - x211 * dx1 * dy2 * dz2 + x212 * dx1 * dy2 * dz1 + x221 * dx1 * dy1 *dz2 + x222 * dx1 * dy1 * dz1); - }`},Cu=(e,t,n,r,i,a)=>{let o=e.dims,s=pu(a,t.axes,o.length),c=mu(o,r,i,t.axes),l=r.slice();r.length===0&&(l=o.map((e,t)=>e===0?1:c[t]/e),t.keepAspectRatioPolicy!==`stretch`&&(c=hu(o,l,t)));let u=Y(`output`,e.dataType,c.length),d=J(`input`,e.dataType,o.length),f=W.size(c),p=o.length===c.length&&o.every((e,t)=>e===c[t]),m=t.coordinateTransformMode===`tf_crop_and_resize`,h=t.extrapolationValue,g=d.type.value,_=e=>` - ${p?``:` - ${du(t.coordinateTransformMode,g)}; - ${(()=>{switch(t.mode){case`nearest`:return` - ${vu(d,o)}; - ${fu(t.nearestMode,n,g)}; - ${_u(d,u,o,c,l.length,s.length,m)}; - `;case`linear`:return` - ${gu(u,o,c,l.length,s.length)}; - ${(()=>{if(o.length===2||o.length===4)return`${bu(d,u,o,m,h)}`;if(o.length===3||o.length===5)return`${Su(d,u,o,m,h)}`;throw Error(`Linear mode only supports input dims 2, 3, 4 and 5 are supported in linear mode.`)})()}; - `;case`cubic`:return` - ${(()=>{if(o.length===2||o.length===4)return`${xu(d,u,o,c,l,s,t.cubicCoeffA,m,t.extrapolationValue,t.excludeOutside)}`;throw Error(`Cubic mode only supports input dims 2 and 4 are supported in linear mode.`)})()}; - `;default:throw Error(`Invalid resize mode`)}})()}; - `} - ${e.registerUniform(`output_size`,`u32`).registerUniform(`scales`,`f32`,l.length).registerUniform(`roi`,`f32`,s.length).declareVariables(d,u)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - ${p?`output[global_idx] = input[global_idx];`:` - let output_indices = ${u.offsetToIndices(`global_idx`)}; - var input_indices: ${d.type.indices}; - ${(()=>{switch(t.mode){case`nearest`:return`input_indices = calculateInputIndicesFromOutputIndices(output_indices); - if (checkInputIndices(input_indices)) { - output[global_idx] = ${d.getByIndices(`input_indices`)}; - } else { - output[global_idx] = ${t.extrapolationValue}; - }`;case`linear`:return`output[global_idx] = ${o.length===2||o.length===4?`bilinearInterpolation`:`trilinearInterpolation`}(output_indices);`;case`cubic`:return`output[global_idx] = bicubicInterpolation(output_indices);`;default:throw Error(`Unsupported resize mode: ${t.mode}`)}})()}; -`} - }`;return{name:`Resize`,shaderCache:{hint:`${t.cacheKey}|${n}|${l.length>0?t.mode===`cubic`?l:l.length:``}|${i.length>0?i:``}|${s.length>0?s:``}|${p}|${t.mode===`nearest`?o.length:o}`,inputDependencies:[`rank`]},getShaderSource:_,getRunData:()=>({outputs:[{dims:c,dataType:e.dataType}],dispatchGroup:{x:Math.ceil(f/64)},programUniforms:[{type:12,data:f},{type:1,data:l},{type:1,data:s},...K(o,c)]})}},wu=e=>{let t=e.customDataBuffer;return new Uint32Array(t,t.byteOffset,1)[0]},Tu=(e,t)=>{let n=[],r=[],i=[],a=wu(e);if(t.antialias!==0)throw Error(`Only default value (0) for Antialias attribute is supported`);lu(e.inputs,t,a,n,r,i),e.compute(Cu(e.inputs[0],t,a,n,r,i),{inputs:[0]})},Eu=e=>{let t=e.antialias,n=e.axes,r=e.coordinateTransformMode,i=e.cubicCoeffA,a=e.excludeOutside!==0,o=e.extrapolationValue,s=e.keepAspectRatioPolicy,c=e.mode,l=e.nearestMode===``?`simple`:e.nearestMode;return Xn({antialias:t,axes:n,coordinateTransformMode:r,cubicCoeffA:i,excludeOutside:a,extrapolationValue:o,keepAspectRatioPolicy:s,mode:c,nearestMode:l})}}),Ou,ku,Au,ju=M(()=>{"use strict";H(),G(),X(),Ou=e=>{if(!e||e.length<3)throw Error(`layerNorm requires at least 3 inputs.`);let t=e[0],n=e[1],r=e[2];if(t.dataType!==n.dataType||t.dataType!==r.dataType)throw Error(`All inputs must have the same data type`);if(t.dims.length!==3&&t.dims.length!==2)throw Error(`Input must be 2D or 3D`);if(n.dims.length!==3&&n.dims.length!==2)throw Error(`Skip must be 2D or 3D`);let i=t.dims[t.dims.length-1],a=t.dims[t.dims.length-2];if(n.dims[n.dims.length-1]!==i)throw Error(`Skip must have the same hidden size as input`);if(n.dims[n.dims.length-2]!==a)throw Error(`Skip must have the same sequence length as input`);if(r.dims.length!==1)throw Error(`Gamma must be 1D`);if(r.dims[r.dims.length-1]!==i)throw Error(`Gamma must have the same hidden size as input`);if(e.length>3){let t=e[3];if(t.dims.length!==1)throw Error(`Beta must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Beta must have the same hidden size as input`)}if(e.length>4){let t=e[4];if(t.dims.length!==1)throw Error(`Bias must be 1D`);if(t.dims[t.dims.length-1]!==i)throw Error(`Bias must have the same hidden size as input`)}},ku=(e,t,n,r)=>{let i=t.simplified,a=e[0].dims,o=W.size(a),s=a,c=o,l=a.slice(-1)[0],u=r?a.slice(0,-1).concat(1):[],d=!i&&e.length>3,f=e.length>4,p=r&&n>1,m=r&&n>2,h=n>3,g=64,_=nr(l),v=[{type:12,data:c},{type:12,data:_},{type:12,data:l},{type:1,data:t.epsilon}],y=t=>{let n=[{name:`output_size`,type:`u32`},{name:`components`,type:`u32`},{name:`hidden_size`,type:`u32`},{name:`epsilon`,type:`f32`}],r=[J(`x`,e[0].dataType,e[0].dims,_),J(`skip`,e[1].dataType,e[1].dims,_),J(`gamma`,e[2].dataType,e[2].dims,_)];d&&r.push(J(`beta`,e[3].dataType,e[3].dims,_)),f&&r.push(J(`bias`,e[4].dataType,e[4].dims,_)),r.push(Y(`output`,e[0].dataType,s,_)),p&&r.push(Y(`mean_output`,1,u)),m&&r.push(Y(`inv_std_output`,1,u)),h&&r.push(Y(`input_skip_bias_sum`,e[0].dataType,s,_));let a=er(e[0].dataType),o=er(1,_);return` - - ${t.registerUniforms(n).declareVariables(...r)} - var sum_shared : array<${o}, ${g}>; - var sum_squared_shared : array<${o}, ${g}>; - - ${t.mainStart([g,1,1])} - let ix = local_id.x; - let iy = global_id.x / ${g}; - - let hidden_size_vectorized: u32 = uniforms.hidden_size / uniforms.components; - var stride = hidden_size_vectorized / ${g}; - let offset = ix * stride + iy * hidden_size_vectorized; - let offset1d = stride * ix; - if (ix == ${g-1}) { - stride = hidden_size_vectorized - stride * ix; - } - for (var i: u32 = 0; i < stride; i++) { - let skip_value = skip[offset + i]; - let bias_value = ${f?`bias[offset1d + i]`:a+`(0.0)`}; - let input_value = x[offset + i]; - let value = input_value + skip_value + bias_value; - ${h?`input_skip_bias_sum[offset + i] = value;`:``} - output[offset + i] = value; - let f32_value = ${ir(a,_,`value`)}; - sum_shared[ix] += f32_value; - sum_squared_shared[ix] += f32_value * f32_value; - } - workgroupBarrier(); - - var reduce_size : u32 = ${g}; - for (var curr_size = reduce_size >> 1; curr_size > 0; curr_size = reduce_size >> 1) { - reduce_size = curr_size + (reduce_size & 1); - if (ix < curr_size) { - sum_shared[ix] += sum_shared[ix + reduce_size]; - sum_squared_shared[ix] += sum_squared_shared[ix + reduce_size]; - } - workgroupBarrier(); - } - - let sum = sum_shared[0]; - let square_sum = sum_squared_shared[0]; - let mean = ${ar(`sum`,_)} / f32(uniforms.hidden_size); - let inv_std_dev = inverseSqrt(${ar(`square_sum`,_)} / f32(uniforms.hidden_size) ${i?``:`- mean * mean`} + uniforms.epsilon); - ${p?`mean_output[global_idx] = mean;`:``} - ${m?`inv_std_output[global_idx] = inv_std_dev;`:``} - - for (var i: u32 = 0; i < stride; i++) { - output[offset + i] = (output[offset + i] ${i?``:`- ${a}(mean)`}) * - ${a}(inv_std_dev) * gamma[offset1d + i] - ${d?`+ beta[offset1d + i]`:``}; - } - }`},b=[{dims:s,dataType:e[0].dataType}];return n>1&&b.push({dims:u,dataType:1}),n>2&&b.push({dims:u,dataType:1}),n>3&&b.push({dims:a,dataType:e[0].dataType}),{name:`SkipLayerNormalization`,shaderCache:{hint:`${_};${p};${m};${h}`,inputDependencies:e.map((e,t)=>`type`)},getShaderSource:y,getRunData:()=>({outputs:b,dispatchGroup:{x:Math.ceil(c/l)},programUniforms:v})}},Au=(e,t)=>{Ou(e.inputs);let n=[0];e.outputCount>1&&n.push(-3),e.outputCount>2&&n.push(-3),e.outputCount>3&&n.push(3),e.compute(ku(e.inputs,t,e.outputCount,!1),{outputs:n})}}),Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu,Bu=M(()=>{"use strict";H(),G(),Zn(),X(),Mu=(e,t)=>{if(!e||e.length<1)throw Error(`too few inputs`);if(t.axes.length!==0){if(t.axes.length!==t.starts.length||t.axes.length!==t.ends.length)throw Error(`axes, starts and ends must have the same length`)}else if(t.starts.length!==t.ends.length)throw Error(`starts and ends must have the same length`);e.slice(1).forEach((t,n)=>{if(e[n+1].dataType!==6&&e[n+1].dataType!==7)throw Error(`Input ${n} must be an array of int32 or int64`)})},Nu=(e,t)=>{let n=[];if(e.length>t)if(e[t].dataType===7)e[t].getBigInt64Array().forEach(e=>n.push(Number(e)));else if(e[t].dataType===6)e[t].getInt32Array().forEach(e=>n.push(Number(e)));else throw Error(`Input ${t} must be an array of int32 or int64`);return n},Pu=(e,t)=>{if(e.length>1){let t=Nu(e,1),n=Nu(e,2),r=Nu(e,3);return r.length===0&&(r=[...Array(e[0].dims.length).keys()]),Xn({starts:t,ends:n,axes:r})}else return t},Fu=(e,t,n,r,i)=>{let a=e;return e<0&&(a+=n[r[t]]),i[t]<0?Math.max(0,Math.min(a,n[r[t]]-1)):Math.max(0,Math.min(a,n[r[t]]))},Iu=(e,t,n)=>`fn calculateInputIndices(output_indices: ${t.type.indices}) -> ${e.type.indices} { - var input_indices: ${e.type.indices}; - var carry = 0u; - for (var i = ${n.length}; i >= 0; i--) { - let input_shape_i = ${q(`uniforms.input_shape`,`i`,n.length)}; - let steps_i = ${q(`uniforms.steps`,`i`,n.length)}; - let signs_i = ${q(`uniforms.signs`,`i`,n.length)}; - let starts_i = ${q(`uniforms.starts`,`i`,n.length)}; - var output_index = ${t.indicesGet(`output_indices`,`i`)}; - var input_index = output_index * steps_i + starts_i + carry; - carry = input_index / input_shape_i; - input_index = input_index % input_shape_i; - if (signs_i < 0) { - input_index = input_shape_i - input_index - 1u + starts_i; - } - ${e.indicesSet(`input_indices`,`i`,`input_index`)}; - } - return input_indices; - }`,Lu=(e,t)=>{let n=e[0].dims,r=W.size(n),i=t.axes.length>0?W.normalizeAxes(t.axes,n.length):[...Array(n.length).keys()],a=Nu(e,4);a.forEach(e=>e!==0||(()=>{throw Error(`step cannot be 0`)})),a.length===0&&(a=Array(i.length).fill(1));let o=t.starts.map((e,t)=>Fu(e,t,n,i,a)),s=t.ends.map((e,t)=>Fu(e,t,n,i,a));if(i.length!==o.length||i.length!==s.length)throw Error(`start, ends and axes should have the same number of elements`);if(i.length!==n.length)for(let e=0;eMath.sign(e));a.forEach((e,t,n)=>{if(e<0){let r=(s[t]-o[t])/e,i=o[t],c=i+r*a[t];o[t]=c,s[t]=i,n[t]=-e}});let l=n.slice(0);i.forEach((e,t)=>{l[e]=Math.ceil((s[e]-o[e])/a[e])});let u={dims:l,dataType:e[0].dataType},d=Y(`output`,e[0].dataType,l.length),f=J(`input`,e[0].dataType,e[0].dims.length),p=W.size(l),m=[{name:`outputSize`,type:`u32`},{name:`starts`,type:`u32`,length:o.length},{name:`signs`,type:`i32`,length:c.length},{name:`steps`,type:`u32`,length:a.length}],h=[{type:12,data:p},{type:12,data:o},{type:6,data:c},{type:12,data:a},...K(e[0].dims,l)],g=e=>` - ${e.registerUniforms(m).declareVariables(f,d)} - ${Iu(f,d,n)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.outputSize`)} - let output_indices = ${d.offsetToIndices(`global_idx`)}; - let input_indices = calculateInputIndices(output_indices); - ${d.setByOffset(`global_idx`,f.getByIndices(`input_indices`))} - }`;return{name:`Slice`,shaderCache:{hint:`${c.length}_${o.length}_${a.length}`,inputDependencies:[`rank`]},getShaderSource:g,getRunData:()=>({outputs:[u],dispatchGroup:{x:Math.ceil(r/64)},programUniforms:h})}},Ru=(e,t)=>{Mu(e.inputs,t);let n=Pu(e.inputs,t);e.compute(Lu(e.inputs,n),{inputs:[0]})},zu=e=>{let t=e.starts,n=e.ends,r=e.axes;return Xn({starts:t,ends:n,axes:r})}}),Vu,Q,Hu,Uu,Wu=M(()=>{"use strict";H(),G(),Zn(),yr(),X(),Vu=e=>{if(!e||e.length!==1)throw Error(`Softmax op requires 1 input.`)},Q=(e,t)=>{let n=e.inputs[0],r=n.dims,i=W.size(r),a=r.length,o=W.normalizeAxis(t.axis,a),s=ot),l[o]=a-1,l[a-1]=o,c=e.compute(gr(n,l),{inputs:[n],outputs:[-1]})[0]):c=n;let u=c.dims,d=u[a-1],f=i/d,p=nr(d),m=d/p,h=64;f===1&&(h=256);let g=(e,t)=>t===4?`max(max(${e}.x, ${e}.y), max(${e}.z, ${e}.w))`:t===2?`max(${e}.x, ${e}.y)`:t===3?`max(max(${e}.x, ${e}.y), ${e}.z)`:e,_=J(`x`,c.dataType,c.dims,p),v=Y(`result`,c.dataType,c.dims,p),y=_.type.value,b=er(c.dataType)===`f32`?`var threadMax = ${y}(-3.402823e+38f);`:`var threadMax = ${y}(-65504.0h);`,x=e=>` - var rowMaxShared : ${y}; - var rowSumShared : ${y}; - var threadShared : array<${y}, ${h}>; - - fn getValue(row: i32, col: i32, row_stride: i32) -> ${y} { - let index = row * row_stride + col; - return x[index]; - } - - fn setValue(row: i32, col: i32, row_stride: i32, value: ${y}) { - let index = row * row_stride + col; - result[index] = value; - } - ${e.registerUniform(`packedCols`,`i32`).declareVariables(_,v)} - ${e.mainStart(h)} - let gindex = i32(global_idx); - let lindex = i32(local_idx); - const wg = ${h}; - let row = gindex / wg; - let cols = uniforms.packedCols; - let row_stride : i32 = uniforms.packedCols; - - // find the rows max - ${b} - for (var col = lindex; col < cols; col += wg) { - let value = getValue(row, col, row_stride); - threadMax = max(threadMax, value); - } - if (lindex < cols) { - threadShared[lindex] = threadMax; - } - workgroupBarrier(); - - var reduceSize = min(cols, wg); - for (var currSize = reduceSize >> 1; currSize > 0; currSize = reduceSize >> 1) { - reduceSize = currSize + (reduceSize & 1); - if (lindex < currSize) { - threadShared[lindex] = max(threadShared[lindex], threadShared[lindex + reduceSize]); - } - workgroupBarrier(); - } - if (lindex == 0) { - rowMaxShared = ${y}(${g(`threadShared[0]`,p)}); - } - workgroupBarrier(); - - // find the rows sum - var threadSum = ${y}(0.0); - for (var col = lindex; col < cols; col += wg) { - let subExp = exp(getValue(row, col, row_stride) - rowMaxShared); - threadSum += subExp; - } - threadShared[lindex] = threadSum; - workgroupBarrier(); - - for (var currSize = wg >> 1; currSize > 0; currSize = currSize >> 1) { - if (lindex < currSize) { - threadShared[lindex] = threadShared[lindex] + threadShared[lindex + currSize]; - } - workgroupBarrier(); - } - if (lindex == 0) { - rowSumShared = ${y}(${ar(`threadShared[0]`,p)}); - } - workgroupBarrier(); - - // calculate final value for each element in the row - for (var col = lindex; col < cols; col += wg) { - let value = exp(getValue(row, col, row_stride) - rowMaxShared) / rowSumShared; - setValue(row, col, row_stride, value); - } - }`,S=e.compute({name:`Softmax`,shaderCache:{hint:`${p};${h}`,inputDependencies:[`type`]},getRunData:()=>({outputs:[{dims:u,dataType:c.dataType}],dispatchGroup:{x:f},programUniforms:[{type:6,data:m}]}),getShaderSource:x},{inputs:[c],outputs:[s?-1:0]})[0];s&&e.compute(gr(S,l),{inputs:[S]})},Hu=(e,t)=>{Vu(e.inputs),Q(e,t)},Uu=e=>Xn({axis:e.axis})}),Gu,Ku,qu,Ju,Yu,Xu=M(()=>{"use strict";H(),G(),X(),Gu=e=>Array.from(e.getBigInt64Array(),Number),Ku=e=>{if(!e||e.length!==2)throw Error(`Tile requires 2 inputs.`);if(e[0].dataType!==1&&e[0].dataType!==10&&e[0].dataType!==6&&e[0].dataType!==12)throw Error(`Tile only support float, float16, int32, and uint32 data types`);if(e[1].dataType!==7)throw Error("Tile `repeats` input should be of int64 data type");if(e[1].dims.length!==1)throw Error("Tile `repeats` input should be 1-D");if(Gu(e[1]).length!==e[0].dims.length)throw Error("Tile `repeats` input should have same number of elements as rank of input data tensor")},qu=(e,t)=>{let n=[];for(let r=0;r{let n=e[0].dims,r=t??Gu(e[1]),i=qu(n,r),a=W.size(i),o=e[0].dataType,s=J(`input`,o,n.length),c=Y(`output`,o,i.length),l=e=>` - const inputShape = ${s.indices(...n)}; - ${e.registerUniform(`output_size`,`u32`).declareVariables(s,c)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.output_size`)} - let output_indices = ${c.offsetToIndices(`global_idx`)}; - var input_indices: ${s.type.indices}; - for (var i = 0; i < ${n.length}; i++) { - let input_dim_i = ${s.indicesGet(`uniforms.input_shape`,`i`)}; - let input_dim_value = ${c.indicesGet(`output_indices`,`i`)} % input_dim_i; - - ${s.indicesSet(`input_indices`,`i`,`input_dim_value`)} - } - ${c.setByOffset(`global_idx`,s.getByIndices(`input_indices`))} - }`;return{name:`Tile`,shaderCache:{hint:`${r}`,inputDependencies:[`rank`]},getRunData:()=>({outputs:[{dims:i,dataType:e[0].dataType}],dispatchGroup:{x:Math.ceil(a/64)},programUniforms:[{type:12,data:a},...K(e[0].dims,i)]}),getShaderSource:l}},Yu=e=>{Ku(e.inputs),e.compute(Ju(e.inputs),{inputs:[0]})}}),Zu,Qu,$u,ed=M(()=>{"use strict";H(),G(),X(),Zu=(e,t,n,r,i)=>{let a=Y(`output_data`,i,n.length,4),o=J(`a_data`,t[1].dataType,t[1].dims.length,4),s=J(`b_data`,t[2].dataType,t[2].dims.length,4),c=J(`c_data`,t[0].dataType,t[0].dims.length,4),l,u=(e,t,n)=>`select(${t}, ${e}, ${n})`;if(!r)l=a.setByOffset(`global_idx`,u(o.getByOffset(`global_idx`),s.getByOffset(`global_idx`),c.getByOffset(`global_idx`)));else{let e=(e,t,n=``)=>{let r=`a_data[index_a${t}][component_a${t}]`,i=`b_data[index_b${t}][component_b${t}]`,l=`bool(c_data[index_c${t}] & (0xffu << (component_c${t} * 8)))`;return` - let output_indices${t} = ${a.offsetToIndices(`global_idx * 4u + ${t}u`)}; - let offset_a${t} = ${o.broadcastedIndicesToOffset(`output_indices${t}`,a)}; - let offset_b${t} = ${s.broadcastedIndicesToOffset(`output_indices${t}`,a)}; - let offset_c${t} = ${c.broadcastedIndicesToOffset(`output_indices${t}`,a)}; - let index_a${t} = offset_a${t} / 4u; - let index_b${t} = offset_b${t} / 4u; - let index_c${t} = offset_c${t} / 4u; - let component_a${t} = offset_a${t} % 4u; - let component_b${t} = offset_b${t} % 4u; - let component_c${t} = offset_c${t} % 4u; - ${e}[${t}] = ${n}(${u(r,i,l)}); - `};l=i===9?` - var data = vec4(0); - ${e(`data`,0,`u32`)} - ${e(`data`,1,`u32`)} - ${e(`data`,2,`u32`)} - ${e(`data`,3,`u32`)} - output_data[global_idx] = dot(vec4(0x1, 0x100, 0x10000, 0x1000000), vec4(data));`:` - ${e(`output_data[global_idx]`,0)} - ${e(`output_data[global_idx]`,1)} - ${e(`output_data[global_idx]`,2)} - ${e(`output_data[global_idx]`,3)} - `}return` - ${e.registerUniform(`vec_size`,`u32`).declareVariables(c,o,s,a)} - ${e.mainStart()} - ${e.guardAgainstOutOfBoundsWorkgroupSizes(`uniforms.vec_size`)} - ${l} - }`},Qu=e=>{let t=e[1].dims,n=e[2].dims,r=e[0].dims,i=e[1].dataType,a=!(W.areEqual(t,n)&&W.areEqual(n,r)),o=t,s=W.size(t);if(a){let e=gn.calcShape(gn.calcShape(t,n,!1),r,!1);if(!e)throw Error(`Can't perform where op on the given tensors`);o=e,s=W.size(o)}let c=Math.ceil(s/4);return{name:`Where`,shaderCache:{inputDependencies:[`rank`,`rank`,`rank`]},getShaderSource:t=>Zu(t,e,o,a,i),getRunData:()=>({outputs:[{dims:o,dataType:i}],dispatchGroup:{x:Math.ceil(s/64/4)},programUniforms:[{type:12,data:c},...K(r,t,n,o)]})}},$u=e=>{e.compute(Qu(e.inputs))}}),td,nd=M(()=>{"use strict";yi(),Oi(),Ni(),Li(),Na(),qa(),eo(),Jo(),cs(),fs(),vs(),As(),Is(),zs(),Ws(),Js(),$s(),ic(),lc(),wc(),Xc(),tl(),al(),cl(),ml(),Mc(),wl(),Wl(),Yl(),$l(),ou(),mi(),Du(),Wc(),ju(),Bu(),Wu(),Bc(),Xu(),yr(),ka(),ed(),td=new Map([[`Abs`,[Bi]],[`Acos`,[Vi]],[`Acosh`,[Hi]],[`Add`,[La]],[`ArgMax`,[_i,vi]],[`ArgMin`,[gi,vi]],[`Asin`,[Ui]],[`Asinh`,[Wi]],[`Atan`,[Gi]],[`Atanh`,[Ki]],[`Attention`,[Di]],[`AveragePool`,[Fl,Pl]],[`BatchNormalization`,[Mi]],[`BiasAdd`,[Ii]],[`BiasSplitGelu`,[Ma]],[`Cast`,[Ji,qi]],[`Ceil`,[Zi]],[`Clip`,[Xi]],[`Concat`,[Qa,$a]],[`Conv`,[qo,Uo]],[`ConvTranspose`,[ss,ts]],[`Cos`,[Qi]],[`Cosh`,[$i]],[`CumSum`,[us,ds]],[`DepthToSpace`,[gs,_s]],[`DequantizeLinear`,[ql,Jl]],[`Div`,[Ra]],[`Einsum`,[Os,ks]],[`Elu`,[ta,ea]],[`Equal`,[za]],[`Erf`,[ra]],[`Exp`,[ia]],[`Expand`,[Fs]],[`FastGelu`,[Rs]],[`Floor`,[aa]],[`FusedConv`,[qo,Uo]],[`Gather`,[Us,Hs]],[`GatherElements`,[rc,nc]],[`GatherBlockQuantized`,[Zs,Qs]],[`GatherND`,[Ks,qs]],[`Gelu`,[oa]],[`Gemm`,[cc,sc]],[`GlobalAveragePool`,[Rl,Ll]],[`GlobalMaxPool`,[Ul,Hl]],[`Greater`,[Ua]],[`GreaterOrEqual`,[Ga]],[`GridSample`,[Sc,Cc]],[`GroupQueryAttention`,[Yc]],[`HardSigmoid`,[ma,pa]],[`InstanceNormalization`,[el]],[`LayerNormalization`,[il]],[`LeakyRelu`,[sa,ea]],[`Less`,[Wa]],[`LessOrEqual`,[Ka]],[`Log`,[Ta]],[`MatMul`,[sl]],[`MatMulNBits`,[fl,pl]],[`MaxPool`,[Bl,Vl]],[`Mul`,[Ba]],[`MultiHeadAttention`,[jc,Dc]],[`Neg`,[la]],[`Not`,[ca]],[`Pad`,[Cl]],[`Pow`,[Va]],[`QuickGelu`,[Oa,ea]],[`Range`,[Ql]],[`Reciprocal`,[ua]],[`ReduceMin`,[li]],[`ReduceMean`,[ii]],[`ReduceMax`,[ci]],[`ReduceSum`,[di]],[`ReduceProd`,[ui]],[`ReduceL1`,[ai]],[`ReduceL2`,[oi]],[`ReduceLogSum`,[pi]],[`ReduceLogSumExp`,[si]],[`ReduceSumSquare`,[fi]],[`Relu`,[da]],[`Resize`,[Tu,Eu]],[`RotaryEmbedding`,[Uc]],[`ScatterND`,[au,iu]],[`Sigmoid`,[fa]],[`Sin`,[ha]],[`Sinh`,[ga]],[`Slice`,[Ru,zu]],[`SkipLayerNormalization`,[Au]],[`Split`,[Rc,zc]],[`Sqrt`,[_a]],[`Softmax`,[Hu,Uu]],[`Sub`,[Ha]],[`Tan`,[va]],[`Tanh`,[ba]],[`ThresholdedRelu`,[wa,ea]],[`Tile`,[Yu]],[`Transpose`,[_r,vr]],[`Where`,[$u]]])}),rd,id=M(()=>{"use strict";et(),mn(),X(),rd=class{constructor(e){this.backend=e,this.repo=new Map,this.attributesBound=!1}getArtifact(e){return this.repo.get(e)}setArtifact(e,t){this.repo.set(e,t)}run(e,t,n,r,i){Ue(e.programInfo.name);let a=this.backend.device,o=this.backend.getComputePassEncoder();this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2);let s=[];for(let e of t)s.push({binding:s.length,resource:{buffer:e.buffer}});for(let e of n)s.push({binding:s.length,resource:{buffer:e.buffer}});i&&s.push({binding:s.length,resource:i});let c=a.createBindGroup({layout:e.computePipeline.getBindGroupLayout(0),entries:s,label:e.programInfo.name});if(this.backend.sessionStatus===`capturing`){let t={kernelId:this.backend.currentKernelId,computePipeline:e.computePipeline,bindGroup:c,dispatchGroup:r};this.backend.capturedCommandList.get(this.backend.currentSessionId).push(t)}o.setPipeline(e.computePipeline),o.setBindGroup(0,c),o.dispatchWorkgroups(...r),this.backend.writeTimestamp(this.backend.pendingDispatchNumber*2+1),this.backend.pendingDispatchNumber++,(this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber||this.backend.queryType===`at-passes`)&&this.backend.endComputePass(),this.backend.pendingDispatchNumber>=this.backend.maxDispatchNumber&&this.backend.flush(),V(e.programInfo.name)}dispose(){}build(e,t){Ue(e.name);let n=this.backend.device,r=[];[{feature:`shader-f16`,extension:`f16`},{feature:`subgroups`,extension:`subgroups`}].forEach(e=>{n.features.has(e.feature)&&r.push(`enable ${e.extension};`)});let i=ur(t,this.backend.device.limits),a=e.getShaderSource(i),o=`${r.join(` -`)} -${i.additionalImplementations} -${a}`,s=n.createShaderModule({code:o,label:e.name});U(`verbose`,()=>`[WebGPU] ${e.name} shader code: ${o}`);let c=n.createComputePipeline({compute:{module:s,entryPoint:`main`},layout:`auto`,label:e.name});return V(e.name),{programInfo:e,computePipeline:c,uniformVariablesInfo:i.variablesInfo}}normalizeDispatchGroupSize(e){let t=typeof e==`number`?e:e.x,n=typeof e==`number`?1:e.y||1,r=typeof e==`number`?1:e.z||1,i=this.backend.device.limits.maxComputeWorkgroupsPerDimension;if(t<=i&&n<=i&&r<=i)return[t,n,r];let a=t*n*r,o=Math.ceil(Math.sqrt(a));if(o>i){if(o=Math.ceil(Math.cbrt(a)),o>i)throw Error(`Total dispatch size exceeds WebGPU maximum.`);return[o,o,o]}else return[o,o,1]}}}),ad={};N(ad,{WebGpuBackend:()=>ld});var od,sd,cd,ld,ud=M(()=>{"use strict";et(),H(),mn(),Sn(),Jn(),nd(),id(),od=(e,t)=>{if(t.length!==e.length)throw Error(`inputDependencies length ${t.length} is not equal to inputTensors length ${e.length}.`);let n=[];for(let r=0;r{var r,i;let a=e.name;return(r=e.shaderCache)?.hint&&(a+=`[`+e.shaderCache.hint+`]`),a+=`:`+n+`:${od(t,(i=e.shaderCache)?.inputDependencies??Array(t.length).fill(`dims`))}`,a},cd=class{constructor(e){e&&(this.architecture=e.architecture,this.vendor=e.vendor)}isArchitecture(e){return this.architecture===e}isVendor(e){return this.vendor===e}},ld=class{constructor(){this.currentSessionId=null,this.currentKernelId=null,this.commandEncoder=null,this.computePassEncoder=null,this.maxDispatchNumber=16,this.pendingDispatchNumber=0,this.pendingKernels=[],this.pendingQueries=new Map,this.sessionStatus=`default`,this.capturedCommandList=new Map,this.capturedPendingKernels=new Map,this.sessionExternalDataMapping=new Map}get currentKernelCustomData(){if(this.currentKernelId===null)throw Error(`currentKernelCustomData(): currentKernelId is null. (should not happen)`);let e=this.kernelCustomData.get(this.currentKernelId);return e||(e={},this.kernelCustomData.set(this.currentKernelId,e)),e}async initialize(e,t){this.env=e;let n=[],r={requiredLimits:{maxComputeWorkgroupStorageSize:t.limits.maxComputeWorkgroupStorageSize,maxComputeWorkgroupsPerDimension:t.limits.maxComputeWorkgroupsPerDimension,maxStorageBufferBindingSize:t.limits.maxStorageBufferBindingSize,maxBufferSize:t.limits.maxBufferSize,maxComputeInvocationsPerWorkgroup:t.limits.maxComputeInvocationsPerWorkgroup,maxComputeWorkgroupSizeX:t.limits.maxComputeWorkgroupSizeX,maxComputeWorkgroupSizeY:t.limits.maxComputeWorkgroupSizeY,maxComputeWorkgroupSizeZ:t.limits.maxComputeWorkgroupSizeZ},requiredFeatures:n},i=e=>t.features.has(e)&&n.push(e)&&!0;i(`chromium-experimental-timestamp-query-inside-passes`)||i(`timestamp-query`),i(`shader-f16`),i(`subgroups`),this.device=await t.requestDevice(r),this.adapterInfo=new cd(t.info||await t.requestAdapterInfo()),this.gpuDataManager=qn(this),this.programManager=new rd(this),this.kernels=new Map,this.kernelPersistentData=new Map,this.kernelCustomData=new Map,fn(e.logLevel,!!e.debug),this.device.onuncapturederror=e=>{e.error instanceof GPUValidationError&&console.error(`An uncaught WebGPU validation error was raised: ${e.error.message}`)},Object.defineProperty(this.env.webgpu,`device`,{value:this.device,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(this.env.webgpu,`adapter`,{value:t,writable:!1,enumerable:!0,configurable:!1}),this.setQueryType()}dispose(){typeof this.querySet<`u`&&this.querySet.destroy(),this.gpuDataManager.dispose()}getCommandEncoder(){return this.commandEncoder||=this.device.createCommandEncoder(),this.commandEncoder}getComputePassEncoder(){if(!this.computePassEncoder){let e=this.getCommandEncoder(),t={};this.queryType===`at-passes`&&(t.timestampWrites={querySet:this.querySet,beginningOfPassWriteIndex:this.pendingDispatchNumber*2,endOfPassWriteIndex:this.pendingDispatchNumber*2+1}),this.computePassEncoder=e.beginComputePass(t)}return this.computePassEncoder}endComputePass(){this.computePassEncoder&&(this.computePassEncoder.end(),this.computePassEncoder=null)}flush(){if(!this.commandEncoder)return;Ue(),this.endComputePass();let e;this.queryType!==`none`&&(this.commandEncoder.resolveQuerySet(this.querySet,0,this.pendingDispatchNumber*2,this.queryResolveBuffer,0),e=this.device.createBuffer({size:this.pendingDispatchNumber*2*8,usage:GPUBufferUsage.MAP_READ|GPUBufferUsage.COPY_DST}),this.pendingQueries.set(e,this.pendingKernels),this.pendingKernels=[],this.commandEncoder.copyBufferToBuffer(this.queryResolveBuffer,0,e,0,this.pendingDispatchNumber*2*8)),this.device.queue.submit([this.commandEncoder.finish()]),this.gpuDataManager.refreshPendingBuffers(),this.commandEncoder=null,this.pendingDispatchNumber=0,this.queryType!==`none`&&e.mapAsync(GPUMapMode.READ).then(()=>{let t=new BigUint64Array(e.getMappedRange()),n=this.pendingQueries.get(e);for(let e=0;e`u`&&(this.queryTimeBase=f);let m=Number(f-this.queryTimeBase),h=Number(p-this.queryTimeBase);if(!Number.isSafeInteger(m)||!Number.isSafeInteger(h))throw RangeError(`incorrect timestamp range`);if((r=this.env.webgpu.profiling)?.ondata)this.env.webgpu.profiling.ondata({version:1,inputsMetadata:u.map(e=>({dims:e.dims,dataType:Qt(e.dataType)})),outputsMetadata:d.map(e=>({dims:e.dims,dataType:Qt(e.dataType)})),kernelId:a,kernelType:s,kernelName:c,programName:l,startTime:m,endTime:h});else{let e=``;u.forEach((t,n)=>{e+=`input[${n}]: [${t.dims}] | ${Qt(t.dataType)}, `});let t=``;d.forEach((e,n)=>{t+=`output[${n}]: [${e.dims}] | ${Qt(e.dataType)}, `}),console.log(`[profiling] kernel "${a}|${s}|${c}|${l}" ${e}${t}execution time: ${h-m} ns`)}Ve(`GPU`,`${l}::${f}::${p}`)}e.unmap(),this.pendingQueries.delete(e)}),V()}run(e,t,n,r,i,a){Ue(e.name);let o=[];for(let e=0;et):n;if(u.length!==s.length)throw Error(`Output size ${u.length} must be equal to ${s.length}.`);let d=[],f=[];for(let e=0;e=a)throw Error(`Invalid output index: ${u[e]}`);if(u[e]===-3)continue;let t=u[e]===-1,n=u[e]===-2,o=t||n?i(s[e].dataType,s[e].dims):r(u[e],s[e].dataType,s[e].dims);if(d.push(o),o.data===0)continue;let c=this.gpuDataManager.get(o.data);if(!c)throw Error(`no GPU data for output: ${o.data}`);if(t&&this.temporaryData.push(c),n){let e=this.kernelPersistentData.get(this.currentKernelId);e||(e=[],this.kernelPersistentData.set(this.currentKernelId,e)),e.push(c)}f.push(c)}if(o.length!==t.length||f.length!==d.length){if(f.length===0)return V(e.name),d;throw Error(`Program ${e.name} has zero-sized tensor(s) in inputs or outputs. This is not supported now.`)}let p;if(l){let e=0,t=[];l.forEach(n=>{let r=typeof n.data==`number`?[n.data]:n.data;if(r.length===0)return;let i=n.type===10?2:4,a,o;n.type===10?(o=r.length>4?16:r.length>2?8:r.length*i,a=r.length>4?16:i*r.length):(o=r.length<=2?r.length*i:16,a=16),e=Math.ceil(e/o)*o,t.push(e);let s=n.type===10?8:4;e+=r.length>4?Math.ceil(r.length/s)*a:r.length*i});let n=16;e=Math.ceil(e/n)*n;let r=new ArrayBuffer(e);l.forEach((e,n)=>{let i=t[n],a=typeof e.data==`number`?[e.data]:e.data;if(e.type===6)new Int32Array(r,i,a.length).set(a);else if(e.type===12)new Uint32Array(r,i,a.length).set(a);else if(e.type===10)new Uint16Array(r,i,a.length).set(a);else if(e.type===1)new Float32Array(r,i,a.length).set(a);else throw Error(`Unsupported uniform type: ${Qt(e.type)}`)});let i=this.gpuDataManager.create(e,GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM);this.device.queue.writeBuffer(i.buffer,0,r,0,e),this.gpuDataManager.release(i.id),p={offset:0,size:e,buffer:i.buffer}}let m=this.programManager.normalizeDispatchGroupSize(c),h=m[1]===1&&m[2]===1,g=sd(e,t,h),_=this.programManager.getArtifact(g);if(_||(_=this.programManager.build(e,m),this.programManager.setArtifact(g,_),U(`info`,()=>`[artifact] key: ${g}, programName: ${e.name}`)),l&&_.uniformVariablesInfo){if(l.length!==_.uniformVariablesInfo.length)throw Error(`Uniform variables count mismatch: expect ${_.uniformVariablesInfo.length}, got ${l.length} in program "${_.programInfo.name}".`);for(let e=0;e`[ProgramManager] run "${e.name}" (key=${g}) with ${m[0]}x${m[1]}x${m[2]}`),this.queryType!==`none`||this.sessionStatus===`capturing`){let e={kernelId:this.currentKernelId,programName:_.programInfo.name,inputTensorViews:t,outputTensorViews:d};this.pendingKernels.push(e),this.sessionStatus===`capturing`&&this.capturedPendingKernels.get(this.currentSessionId).push(e)}return this.programManager.run(_,o,f,m,p),V(e.name),d}upload(e,t){this.gpuDataManager.upload(e,t)}memcpy(e,t){this.gpuDataManager.memcpy(e,t)}async download(e,t){await this.gpuDataManager.download(e,t)}alloc(e){return this.gpuDataManager.create(e).id}free(e){return this.gpuDataManager.release(e)}createKernel(e,t,n,r){let i=td.get(e);if(!i)throw Error(`kernel not implemented: ${e}`);let a={kernelType:e,kernelName:r,kernelEntry:i[0],attributes:[i[1],n]};this.kernels.set(t,a)}releaseKernel(e){let t=this.kernelPersistentData.get(e);if(t){for(let e of t)this.gpuDataManager.release(e.id);this.kernelPersistentData.delete(e)}this.kernelCustomData.delete(e),this.kernels.delete(e)}computeKernel(e,t,n){let r=this.kernels.get(e);if(!r)throw Error(`kernel not created: ${e}`);let i=r.kernelType,a=r.kernelName,o=r.kernelEntry,s=r.attributes;if(this.currentKernelId!==null)throw Error(`kernel "[${i}] ${a}" is not allowed to be called recursively`);this.currentKernelId=e,s[0]&&(s[1]=s[0](s[1]),s[0]=void 0),U(`info`,()=>`[WebGPU] Start to run kernel "[${i}] ${a}"...`);let c=this.env.debug;this.temporaryData=[];try{return c&&this.device.pushErrorScope(`validation`),o(t,s[1]),0}catch(e){return n.push(Promise.resolve(`[WebGPU] Kernel "[${i}] ${a}" failed. ${e}`)),1}finally{c&&n.push(this.device.popErrorScope().then(e=>e?`GPU validation error for kernel "[${i}] ${a}": ${e.message}`:null));for(let e of this.temporaryData)this.gpuDataManager.release(e.id);this.temporaryData=[],this.currentKernelId=null}}registerBuffer(e,t,n,r){let i=this.sessionExternalDataMapping.get(e);i||(i=new Map,this.sessionExternalDataMapping.set(e,i));let a=i.get(t),o=this.gpuDataManager.registerExternalBuffer(n,r,a);return i.set(t,[o,n]),o}unregisterBuffers(e){let t=this.sessionExternalDataMapping.get(e);t&&(t.forEach(e=>this.gpuDataManager.unregisterExternalBuffer(e[0])),this.sessionExternalDataMapping.delete(e))}getBuffer(e){let t=this.gpuDataManager.get(e);if(!t)throw Error(`no GPU data for buffer: ${e}`);return t.buffer}createDownloader(e,t,n){return async()=>{let r=await Gn(this,e,t);return xn(r.buffer,n)}}writeTimestamp(e){this.queryType===`inside-passes`&&this.computePassEncoder.writeTimestamp(this.querySet,e)}setQueryType(){var e;this.queryType=`none`,((e=this.env.webgpu.profiling)?.mode===`default`||(typeof this.env.trace>`u`?this.env.wasm.trace:this.env.trace))&&(this.device.features.has(`chromium-experimental-timestamp-query-inside-passes`)?this.queryType=`inside-passes`:this.device.features.has(`timestamp-query`)&&(this.queryType=`at-passes`),this.queryType!==`none`&&typeof this.querySet>`u`&&(this.querySet=this.device.createQuerySet({type:`timestamp`,count:this.maxDispatchNumber*2}),this.queryResolveBuffer=this.device.createBuffer({size:this.maxDispatchNumber*2*8,usage:GPUBufferUsage.COPY_SRC|GPUBufferUsage.QUERY_RESOLVE})))}captureBegin(){U(`info`,`captureBegin`),this.capturedCommandList.get(this.currentSessionId)||this.capturedCommandList.set(this.currentSessionId,[]),this.capturedPendingKernels.get(this.currentSessionId)||this.capturedPendingKernels.set(this.currentSessionId,[]),this.flush(),this.sessionStatus=`capturing`}captureEnd(){U(`info`,`captureEnd`),this.flush(),this.sessionStatus=`default`}replay(){U(`info`,`replay`),this.sessionStatus=`replaying`;let e=this.capturedCommandList.get(this.currentSessionId),t=this.capturedPendingKernels.get(this.currentSessionId),n=e.length;this.pendingKernels=[];for(let r=0;r=this.maxDispatchNumber||this.queryType===`at-passes`)&&this.endComputePass(),this.pendingDispatchNumber>=this.maxDispatchNumber&&this.flush()}this.flush(),this.sessionStatus=`default`}onCreateSession(){this.gpuDataManager.onCreateSession()}onReleaseSession(e){this.unregisterBuffers(e),this.capturedCommandList.has(e)&&this.capturedCommandList.delete(e),this.capturedPendingKernels.has(e)&&this.capturedPendingKernels.delete(e),this.gpuDataManager.onReleaseSession(e)}onRunStart(e){this.currentSessionId=e,this.setQueryType()}}}),dd={};N(dd,{init:()=>md});var fd,pd,md,hd=M(()=>{"use strict";H(),mn(),G(),Ln(),fd=class e{constructor(e,t,n,r){this.module=e,this.dataType=t,this.data=n,this.dims=r}getFloat32Array(){if(this.dataType!==1)throw Error(`Invalid data type`);let e=W.size(this.dims);return e===0?new Float32Array:new Float32Array(this.module.HEAP8.buffer,this.data,e)}getBigInt64Array(){if(this.dataType!==7)throw Error(`Invalid data type`);let e=W.size(this.dims);return e===0?new BigInt64Array:new BigInt64Array(this.module.HEAP8.buffer,this.data,e)}getInt32Array(){if(this.dataType!==6)throw Error(`Invalid data type`);let e=W.size(this.dims);return e===0?new Int32Array:new Int32Array(this.module.HEAP8.buffer,this.data,e)}getUint16Array(){if(this.dataType!==10&&this.dataType!==4)throw Error(`Invalid data type`);let e=W.size(this.dims);return e===0?new Uint16Array:new Uint16Array(this.module.HEAP8.buffer,this.data,e)}reshape(t){if(W.size(t)!==W.size(this.dims))throw Error(`Invalid new shape`);return new e(this.module,this.dataType,this.data,t)}},pd=class{constructor(e,t,n){this.module=e,this.backend=t,this.customDataOffset=0,this.customDataSize=0,this.adapterInfo=t.adapterInfo;let r=e.PTR_SIZE,i=n/e.PTR_SIZE,a=r===4?`i32`:`i64`;this.opKernelContext=Number(e.getValue(r*i++,a));let o=Number(e.getValue(r*i++,a));this.outputCount=Number(e.getValue(r*i++,a)),this.customDataOffset=Number(e.getValue(r*i++,`*`)),this.customDataSize=Number(e.getValue(r*i++,a));let s=[];for(let t=0;ttypeof e==`number`?this.inputs[e]:e))??this.inputs,i=t?.outputs??[],a=(e,t,n)=>new fd(this.module,t,this.output(e,n),n),o=(e,t)=>{let n=$t(e,t);if(!n)throw Error(`Unsupported data type: ${e}`);let r=n>0?this.backend.gpuDataManager.create(n).id:0;return new fd(this.module,e,r,t)};return this.backend.run(e,r,i,a,o,this.outputCount)}output(e,t){let n=this.module.stackSave();try{let n=this.module.PTR_SIZE,r=n===4?`i32`:`i64`,i=this.module.stackAlloc((1+t.length)*n);this.module.setValue(i,t.length,r);for(let e=0;e{let i=t.jsepInit;if(!i)throw Error(`Failed to initialize JSEP. The WebAssembly module is not built with JSEP support.`);if(e===`webgpu`){let e=(ud(),de(ad)).WebGpuBackend,a=new e;await a.initialize(n,r),i(`webgpu`,[a,e=>a.alloc(Number(e)),e=>a.free(e),(e,n,r,i=!1)=>{if(i)U(`verbose`,()=>`[WebGPU] jsepCopyGpuToGpu: src=${Number(e)}, dst=${Number(n)}, size=${Number(r)}`),a.memcpy(Number(e),Number(n));else{U(`verbose`,()=>`[WebGPU] jsepCopyCpuToGpu: dataOffset=${Number(e)}, gpuDataId=${Number(n)}, size=${Number(r)}`);let i=t.HEAPU8.subarray(Number(e>>>0),Number(e>>>0)+Number(r));a.upload(Number(n),i)}},async(e,n,r)=>{U(`verbose`,()=>`[WebGPU] jsepCopyGpuToCpu: gpuDataId=${e}, dataOffset=${n}, size=${r}`),await a.download(Number(e),()=>t.HEAPU8.subarray(Number(n)>>>0,Number(n+r)>>>0))},(e,n,r)=>a.createKernel(e,Number(n),r,t.UTF8ToString(t._JsepGetNodeName(Number(n)))),e=>a.releaseKernel(e),(e,n,r,i)=>{U(`verbose`,()=>`[WebGPU] jsepRun: sessionHandle=${r}, kernel=${e}, contextDataOffset=${n}`);let o=new pd(t,a,Number(n));return a.computeKernel(Number(e),o,i)},()=>a.captureBegin(),()=>a.captureEnd(),()=>a.replay()])}else{let e=new In(n);i(`webnn`,[e,()=>e.reserveTensorId(),t=>e.releaseTensorId(t),async(t,n,r,i,a)=>e.ensureTensor(t,n,r,i,a),(t,n)=>{e.uploadTensor(t,n)},async(t,n)=>e.downloadTensor(t,n)])}}}),gd,_d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed,Dd,Od,kd=M(()=>{"use strict";Ut(),Xt(),H(),Lt(),Vt(),sn(),gd=(e,t)=>{It()._OrtInit(e,t)!==0&&Bt(`Can't initialize onnxruntime.`)},_d=async e=>{gd(e.wasm.numThreads,tn(e.logLevel))},vd=async(e,t)=>{var n,r;(n=(r=It()).asyncInit)?.call(r);{let n=(hd(),de(dd)).init;if(t===`webgpu`){if(typeof navigator>`u`||!navigator.gpu)throw Error(`WebGPU is not supported in current environment`);let t=e.webgpu.adapter;if(t){if(typeof t.limits!=`object`||typeof t.features!=`object`||typeof t.requestDevice!=`function`)throw Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let n=e.webgpu.powerPreference;if(n!==void 0&&n!==`low-power`&&n!==`high-performance`)throw Error(`Invalid powerPreference setting: "${n}"`);let r=e.webgpu.forceFallbackAdapter;if(r!==void 0&&typeof r!=`boolean`)throw Error(`Invalid forceFallbackAdapter setting: "${r}"`);if(t=await navigator.gpu.requestAdapter({powerPreference:n,forceFallbackAdapter:r}),!t)throw Error(`Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.`)}await n(`webgpu`,It(),e,t)}if(t===`webnn`){if(typeof navigator>`u`||!navigator.ml)throw Error(`WebNN is not supported in current environment`);await n(`webnn`,It(),e)}}},yd=new Map,bd=e=>{let t=It(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetInputOutputCount(e,r,r+n)!==0&&Bt(`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)}},xd=(e,t)=>{let n=It(),r=n.stackSave(),i=0;try{let r=n.PTR_SIZE,a=n.stackAlloc(2*r);n._OrtGetInputOutputMetadata(e,t,a,a+r)!==0&&Bt(`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{let t=It(),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]},Cd=async(e,t)=>{let n,r,i=It();Array.isArray(e)?[n,r]=e:e.buffer===i.HEAPU8.buffer?[n,r]=[e.byteOffset,e.byteLength]:[n,r]=Sd(e);let a=0,o=0,s=0,c=[],l=[],u=[];try{var d,f;if([o,c]=await Yt(t),t?.externalData&&i.mountExternalData){let e=[];for(let n of t.externalData){let t=typeof n==`string`?n:n.path;e.push(on(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;n?i.currentContext=n:r?i.currentContext=await i.webnnCreateMLContext(r):i.currentContext=await i.webnnCreateMLContext({deviceType:a,powerPreference:o})}else i.currentContext=await i.webnnCreateMLContext();break}a=await i._OrtCreateSession(n,r,o),(d=i.webgpuOnCreateSession)?.call(i,a),a===0&&Bt(`Can't create a session.`),(f=i.jsepOnCreateSession)?.call(i),i.currentContext&&(i.webnnRegisterMLContext(a,i.currentContext),i.currentContext=void 0,i.shouldTransferToMLTensor=!0);let[e,m]=bd(a),h=!!t?.enableGraphCapture,g=[],_=[],v=[],y=[],b=[];for(let t=0;te===`gpu-buffer`||e===`ml-tensor`)&&(s=i._OrtCreateBinding(a),s===0&&Bt(`Can't create IO binding.`),x={handle:s,outputPreferredLocations:b,outputPreferredLocationsEncoded:b.map(e=>an(e))}),yd.set(a,[a,l,u,x,h,!1]),[a,g,_,v,y]}catch(e){throw l.forEach(e=>i._OrtFree(e)),u.forEach(e=>i._OrtFree(e)),s!==0&&i._OrtReleaseBinding(s)!==0&&Bt(`Can't release IO binding.`),a!==0&&i._OrtReleaseSession(a)!==0&&Bt(`Can't release session.`),e}finally{var m;i._free(n),o!==0&&i._OrtReleaseSessionOptions(o)!==0&&Bt(`Can't release session options.`),c.forEach(e=>i._free(e)),(m=i.unmountExternalData)?.call(i)}},wd=e=>{var t,n,r;let i=It(),a=yd.get(e);if(!a)throw Error(`cannot release session. invalid session id: ${e}`);let[o,s,c,l,u]=a;l&&(u&&i._OrtClearBoundOutputs(l.handle)!==0&&Bt(`Can't clear bound outputs.`),i._OrtReleaseBinding(l.handle)!==0&&Bt(`Can't release IO binding.`)),(t=i.jsepOnReleaseSession)?.call(i,e),(n=i.webnnOnReleaseSession)?.call(i,e),(r=i.webgpuOnReleaseSession)?.call(i,e),s.forEach(e=>i._OrtFree(e)),c.forEach(e=>i._OrtFree(e)),i._OrtReleaseSession(o)!==0&&Bt(`Can't release session.`),yd.delete(e)},Td=async(e,t,n,r,i,a,o=!1)=>{if(!e){t.push(0);return}let s=It(),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=$t(Zt(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=$t(Zt(l),u);let n=s.webnnRegisterMLTensor;if(!n)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);p=n(r,t,Zt(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;es.setValue(g+t*c,e,c===4?`i32`:`i64`));let e=s._OrtCreateTensor(Zt(l),p,m,g,u.length,an(f));e===0&&Bt(`Can't create tensor for input/output. session=${r}, index=${a}.`),t.push(e)}finally{s.stackRestore(h)}},Ed=async(e,t,n,r,i,a)=>{let o=It(),s=o.PTR_SIZE,c=yd.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],m=c[5],h=t.length,g=r.length,_=0,v=[],y=[],b=[],x=[],S=o.stackSave(),C=o.stackAlloc(h*s),w=o.stackAlloc(h*s),T=o.stackAlloc(g*s),E=o.stackAlloc(g*s);try{var D,O;[_,v]=Ht(a);for(let r=0;re*t,1);d=Qt(a);let _=f?.outputPreferredLocations[r[t]];if(d===`string`){if(_===`gpu-buffer`||_===`ml-tensor`)throw Error(`String tensor is not supported on GPU.`);let e=[];for(let t=0;t0){let e=o.jsepGetBuffer;if(!e)throw Error(`preferredLocation "gpu-buffer" is not supported without using WebGPU.`);let t=e(p),r=$t(a,g);if(r===void 0||!nn(d))throw Error(`Unsupported data type: ${d}`);u=!0,S.push([d,h,{gpuBuffer:t,download:o.jsepCreateDownloader(t,r,d),dispose:()=>{o._OrtReleaseTensor(n)!==0&&Bt(`Can't release tensor.`)}},`gpu-buffer`])}else if(_===`ml-tensor`&&g>0){let t=o.webnnEnsureTensor,r=o.webnnIsInt64Supported;if(!t||!r)throw Error(`preferredLocation "ml-tensor" is not supported without using WebNN.`);if($t(a,g)===void 0||!rn(d))throw Error(`Unsupported data type: ${d}`);if(d===`int64`&&!r(e))throw Error(`preferredLocation "ml-tensor" for int64 output is not supported by current WebNN Context.`);let i=await t(e,p,a,h,!1);u=!0,S.push([d,h,{mlTensor:i,download:o.webnnCreateMLTensorDownloader(p,d),dispose:()=>{o.webnnReleaseTensorId(p),o._OrtReleaseTensor(n)}},`ml-tensor`])}else{let e=en(d),t=new e(g);new Uint8Array(t.buffer,t.byteOffset,t.byteLength).set(o.HEAPU8.subarray(p,p+t.byteLength)),S.push([d,h,t,`cpu`])}}finally{var A;o.stackRestore(a),d===`string`&&p&&o._free(p),u||o._OrtReleaseTensor(n),(A=o.webnnOnRunEnd)?.call(o,l)}}return f&&!p&&(o._OrtClearBoundOutputs(f.handle)!==0&&Bt(`Can't clear bound outputs.`),yd.set(e,[l,u,d,f,p,!1])),S}finally{o.stackRestore(S),y.forEach(e=>o._OrtReleaseTensor(e)),b.forEach(e=>o._OrtReleaseTensor(e)),x.forEach(e=>o._free(e)),_!==0&&o._OrtReleaseRunOptions(_),v.forEach(e=>o._free(e))}},Dd=e=>{let t=It(),n=yd.get(e);if(!n)throw Error(`invalid session id`);let r=n[0],i=t._OrtEndProfiling(r);i===0&&Bt(`Can't get an profile file name.`),t._OrtFree(i)},Od=e=>{let t=[];for(let n of e){let e=n[2];!Array.isArray(e)&&`buffer`in e&&t.push(e.buffer)}return t}}),Ad,jd,Md,Nd,Pd,Fd,Id,Ld,Rd,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd,qd,Jd=M(()=>{"use strict";et(),kd(),Lt(),Dt(),Ad=()=>!!ye.wasm.proxy&&typeof document<`u`,Md=!1,Nd=!1,Pd=!1,Ld=new Map,Rd=(e,t)=>{let n=Ld.get(e);n?n.push(t):Ld.set(e,[t])},zd=()=>{if(Md||!Nd||Pd||!jd)throw Error(`worker not ready`)},Bd=e=>{switch(e.data.type){case`init-wasm`:Md=!1,e.data.err?(Pd=!0,Id[1](e.data.err)):(Nd=!0,Id[0]()),Fd&&(URL.revokeObjectURL(Fd),Fd=void 0);break;case`init-ep`:case`copy-from`:case`create`:case`release`:case`run`:case`end-profiling`:{let t=Ld.get(e.data.type);e.data.err?t.shift()[1](e.data.err):t.shift()[0](e.data.out);break}default:}},Vd=async()=>{if(!Nd){if(Md)throw Error(`multiple calls to 'initWasm()' detected.`);if(Pd)throw Error(`previous call to 'initWasm()' failed.`);if(Md=!0,Ad())return new Promise((e,t)=>{jd?.terminate(),wt().then(([n,r])=>{try{jd=r,jd.onerror=e=>t(e),jd.onmessage=Bd,Id=[e,t];let i={type:`init-wasm`,in:ye};!i.in.wasm.wasmPaths&&(n||mt)&&(i.in.wasm.wasmPaths={wasm:new URL(`/assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm`,``+self.location.href).href}),jd.postMessage(i),Fd=n}catch(e){t(e)}},t)});try{await Ft(ye.wasm),await _d(ye),Nd=!0}catch(e){throw Pd=!0,e}finally{Md=!1}}},Hd=async e=>{if(Ad())return zd(),new Promise((t,n)=>{Rd(`init-ep`,[t,n]);let r={type:`init-ep`,in:{epName:e,env:ye}};jd.postMessage(r)});await vd(ye,e)},Ud=async e=>Ad()?(zd(),new Promise((t,n)=>{Rd(`copy-from`,[t,n]);let r={type:`copy-from`,in:{buffer:e}};jd.postMessage(r,[e.buffer])})):Sd(e),Wd=async(e,t)=>{if(Ad()){if(t?.preferredOutputLocation)throw Error(`session option "preferredOutputLocation" is not supported for proxy.`);return zd(),new Promise((n,r)=>{Rd(`create`,[n,r]);let i={type:`create`,in:{model:e,options:{...t}}},a=[];e instanceof Uint8Array&&a.push(e.buffer),jd.postMessage(i,a)})}else return Cd(e,t)},Gd=async e=>{if(Ad())return zd(),new Promise((t,n)=>{Rd(`release`,[t,n]);let r={type:`release`,in:e};jd.postMessage(r)});wd(e)},Kd=async(e,t,n,r,i,a)=>{if(Ad()){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 zd(),new Promise((i,o)=>{Rd(`run`,[i,o]);let s=n,c={type:`run`,in:{sessionId:e,inputIndices:t,inputs:s,outputIndices:r,options:a}};jd.postMessage(c,Od(s))})}else return Ed(e,t,n,r,i,a)},qd=async e=>{if(Ad())return zd(),new Promise((t,n)=>{Rd(`end-profiling`,[t,n]);let r={type:`end-profiling`,in:e};jd.postMessage(r)});Dd(e)}}),Yd,Xd,Zd,Qd=M(()=>{"use strict";et(),Jd(),H(),tt(),sn(),Yd=(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()}`)}},Xd=e=>{switch(e[3]){case`cpu`:return new Be(e[0],e[2],e[1]);case`gpu-buffer`:{let t=e[0];if(!nn(t))throw Error(`not supported data type: ${t} for deserializing GPU tensor`);let{gpuBuffer:n,download:r,dispose:i}=e[2];return Be.fromGpuBuffer(n,{dataType:t,dims:e[1],download:r,dispose:i})}case`ml-tensor`:{let t=e[0];if(!rn(t))throw Error(`not supported data type: ${t} for deserializing MLTensor tensor`);let{mlTensor:n,download:r,dispose:i}=e[2];return Be.fromMLTensor(n,{dataType:t,dims:e[1],download:r,dispose:i})}default:throw Error(`invalid data location: ${e[3]}`)}},Zd=class{async fetchModelAndCopyToWasmMemory(e){return Ud(await on(e))}async loadModel(e,t){Ue();let n;n=typeof e==`string`?await this.fetchModelAndCopyToWasmMemory(e):e,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await Wd(n,t),V()}async dispose(){return Gd(this.sessionId)}async run(e,t,n){Ue();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)=>Yd(e,()=>`input "${this.inputNames[i[t]]}"`)),c=a.map((e,t)=>e?Yd(e,()=>`output "${this.outputNames[o[t]]}"`):null),l=await Kd(this.sessionId,i,s,o,c,n),u={};for(let e=0;etf,initializeFlags:()=>ef,wasmBackend:()=>nf});var ef,tf,nf,rf=M(()=>{"use strict";et(),Jd(),Qd(),ef=()=>{(typeof ye.wasm.initTimeout!=`number`||ye.wasm.initTimeout<0)&&(ye.wasm.initTimeout=0);let e=ye.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.`),ye.wasm.simd=!1),typeof ye.wasm.proxy!=`boolean`&&(ye.wasm.proxy=!1),typeof ye.wasm.trace!=`boolean`&&(ye.wasm.trace=!1),typeof ye.wasm.numThreads!=`number`||!Number.isInteger(ye.wasm.numThreads)||ye.wasm.numThreads<=0)if(typeof self<`u`&&!self.crossOriginIsolated)ye.wasm.numThreads=1;else{let e=typeof navigator>`u`?le(`node:os`).cpus().length:navigator.hardwareConcurrency;ye.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},tf=class{async init(e){ef(),await Vd(),await Hd(e)}async createInferenceSessionHandler(e,t){let n=new Zd;return await n.loadModel(e,t),n}},nf=new tf});et(),et(),et();var af=`1.22.0-dev.20250409-89f8206ba4`,sf=$e;{let e=(rf(),de($d)).wasmBackend;F(`webgpu`,e,5),F(`webnn`,e,5),F(`cpu`,e,10),F(`wasm`,e,10)}Object.defineProperty(ye.versions,`web`,{value:af,enumerable:!0}); -/** -* @license -* Copyright 2021 Google LLC. All Rights Reserved. -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* ============================================================================= -*/ -/** -* @license -* Copyright 2020 Google LLC. All Rights Reserved. -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* ============================================================================= -*/ -/** -* @license -* Copyright 2019 Google LLC. All Rights Reserved. -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* ============================================================================= -*/ -let cf={url:self.location.href};var lf={"onnxruntime-common":e=>{e.exports=j},"onnxruntime-web":e=>{e.exports=ie},"?2ce3":()=>{},"?7992":()=>{},"?5af5":()=>{},"?2b25":()=>{},"?db59":()=>{},"?383f":()=>{},"?fa4b":()=>{},"./node_modules/@huggingface/jinja/dist/index.js":(t,n,r)=>{r.r(n),r.d(n,{Environment:()=>ve,Interpreter:()=>ye,Template:()=>Pe,parse:()=>ce,tokenize:()=>f});var i=Object.freeze({Text:`Text`,NumericLiteral:`NumericLiteral`,BooleanLiteral:`BooleanLiteral`,NullLiteral:`NullLiteral`,StringLiteral:`StringLiteral`,Identifier:`Identifier`,Equals:`Equals`,OpenParen:`OpenParen`,CloseParen:`CloseParen`,OpenStatement:`OpenStatement`,CloseStatement:`CloseStatement`,OpenExpression:`OpenExpression`,CloseExpression:`CloseExpression`,OpenSquareBracket:`OpenSquareBracket`,CloseSquareBracket:`CloseSquareBracket`,OpenCurlyBracket:`OpenCurlyBracket`,CloseCurlyBracket:`CloseCurlyBracket`,Comma:`Comma`,Dot:`Dot`,Colon:`Colon`,Pipe:`Pipe`,CallOperator:`CallOperator`,AdditiveBinaryOperator:`AdditiveBinaryOperator`,MultiplicativeBinaryOperator:`MultiplicativeBinaryOperator`,ComparisonBinaryOperator:`ComparisonBinaryOperator`,UnaryOperator:`UnaryOperator`,Set:`Set`,If:`If`,For:`For`,In:`In`,Is:`Is`,NotIn:`NotIn`,Else:`Else`,EndSet:`EndSet`,EndIf:`EndIf`,ElseIf:`ElseIf`,EndFor:`EndFor`,And:`And`,Or:`Or`,Not:`UnaryOperator`,Macro:`Macro`,EndMacro:`EndMacro`,Break:`Break`,Continue:`Continue`}),a=Object.freeze({set:i.Set,for:i.For,in:i.In,is:i.Is,if:i.If,else:i.Else,endset:i.EndSet,endif:i.EndIf,elif:i.ElseIf,endfor:i.EndFor,and:i.And,or:i.Or,not:i.Not,"not in":i.NotIn,macro:i.Macro,endmacro:i.EndMacro,break:i.Break,continue:i.Continue,true:i.BooleanLiteral,false:i.BooleanLiteral,none:i.NullLiteral,True:i.BooleanLiteral,False:i.BooleanLiteral,None:i.NullLiteral}),o=class{constructor(e,t){this.value=e,this.type=t}};function s(e){return/\w/.test(e)}function c(e){return/[0-9]/.test(e)}var l=[[`{%`,i.OpenStatement],[`%}`,i.CloseStatement],[`{{`,i.OpenExpression],[`}}`,i.CloseExpression],[`(`,i.OpenParen],[`)`,i.CloseParen],[`{`,i.OpenCurlyBracket],[`}`,i.CloseCurlyBracket],[`[`,i.OpenSquareBracket],[`]`,i.CloseSquareBracket],[`,`,i.Comma],[`.`,i.Dot],[`:`,i.Colon],[`|`,i.Pipe],[`<=`,i.ComparisonBinaryOperator],[`>=`,i.ComparisonBinaryOperator],[`==`,i.ComparisonBinaryOperator],[`!=`,i.ComparisonBinaryOperator],[`<`,i.ComparisonBinaryOperator],[`>`,i.ComparisonBinaryOperator],[`+`,i.AdditiveBinaryOperator],[`-`,i.AdditiveBinaryOperator],[`*`,i.MultiplicativeBinaryOperator],[`/`,i.MultiplicativeBinaryOperator],[`%`,i.MultiplicativeBinaryOperator],[`=`,i.Equals]],u=new Map([[`n`,` -`],[`t`,` `],[`r`,`\r`],[`b`,`\b`],[`f`,`\f`],[`v`,`\v`],[`'`,`'`],[`"`,`"`],[`\\`,`\\`]]);function d(e,t={}){return e.endsWith(` -`)&&(e=e.slice(0,-1)),e=e.replace(/{#.*?#}/gs,`{##}`),t.lstrip_blocks&&(e=e.replace(/^[ \t]*({[#%])/gm,`$1`)),t.trim_blocks&&(e=e.replace(/([#%]})\n/g,`$1`)),e.replace(/{##}/g,``).replace(/-%}\s*/g,`%}`).replace(/\s*{%-/g,`{%`).replace(/-}}\s*/g,`}}`).replace(/\s*{{-/g,`{{`)}function f(e,t={}){let n=[],r=d(e,t),f=0,p=e=>{let t=``;for(;e(r[f]);){if(r[f]===`\\`){if(++f,f>=r.length)throw SyntaxError(`Unexpected end of input`);let e=r[f++],n=u.get(e);if(n===void 0)throw SyntaxError(`Unexpected escaped character: ${e}`);t+=n;continue}if(t+=r[f++],f>=r.length)throw SyntaxError(`Unexpected end of input`)}return t};main:for(;f0){n.push(new o(e,i.Text));continue}}p(e=>/\s/.test(e));let t=r[f];if(t===`-`||t===`+`){var h;let e=(h=n.at(-1))?.type;if(e===i.Text||e===void 0)throw SyntaxError(`Unexpected character: ${t}`);switch(e){case i.Identifier:case i.NumericLiteral:case i.BooleanLiteral:case i.NullLiteral:case i.StringLiteral:case i.CloseParen:case i.CloseSquareBracket:break;default:{++f;let e=p(c);n.push(new o(`${t}${e}`,e.length>0?i.NumericLiteral:i.UnaryOperator));continue}}}for(let[e,t]of l){let i=r.slice(f,f+e.length);if(i===e){n.push(new o(e,t)),f+=e.length;continue main}}if(t===`'`||t===`"`){++f;let e=p(e=>e!==t);n.push(new o(e,i.StringLiteral)),++f;continue}if(c(t)){let e=p(c);n.push(new o(e,i.NumericLiteral));continue}if(s(t)){var g;let e=p(s),t=Object.hasOwn(a,e)?a[e]:i.Identifier;t===i.In&&(g=n.at(-1))?.type===i.Not?(n.pop(),n.push(new o(`not in`,i.NotIn))):n.push(new o(e,t));continue}throw SyntaxError(`Unexpected character: ${t}`)}return n}var p=class{constructor(){e.defineProperty(this,`type`,`Statement`)}},m=class extends p{constructor(t){super(),e.defineProperty(this,`type`,`Program`),this.body=t}},h=class extends p{constructor(t,n,r){super(),e.defineProperty(this,`type`,`If`),this.test=t,this.body=n,this.alternate=r}},g=class extends p{constructor(t,n,r,i){super(),e.defineProperty(this,`type`,`For`),this.loopvar=t,this.iterable=n,this.body=r,this.defaultBlock=i}},_=class extends p{constructor(...t){super(...t),e.defineProperty(this,`type`,`Break`)}},v=class extends p{constructor(...t){super(...t),e.defineProperty(this,`type`,`Continue`)}},y=class extends p{constructor(t,n,r){super(),e.defineProperty(this,`type`,`Set`),this.assignee=t,this.value=n,this.body=r}},b=class extends p{constructor(t,n,r){super(),e.defineProperty(this,`type`,`Macro`),this.name=t,this.args=n,this.body=r}},x=class extends p{constructor(...t){super(...t),e.defineProperty(this,`type`,`Expression`)}},S=class extends x{constructor(t,n,r){super(),e.defineProperty(this,`type`,`MemberExpression`),this.object=t,this.property=n,this.computed=r}},C=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`CallExpression`),this.callee=t,this.args=n}},w=class extends x{constructor(t){super(),e.defineProperty(this,`type`,`Identifier`),this.value=t}},T=class extends x{constructor(t){super(),e.defineProperty(this,`type`,`Literal`),this.value=t}},E=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`NumericLiteral`)}},D=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`StringLiteral`)}},O=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`BooleanLiteral`)}},k=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`NullLiteral`)}},A=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`ArrayLiteral`)}},ee=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`TupleLiteral`)}},te=class extends T{constructor(...t){super(...t),e.defineProperty(this,`type`,`ObjectLiteral`)}},ne=class extends x{constructor(t,n,r){super(),e.defineProperty(this,`type`,`BinaryExpression`),this.operator=t,this.left=n,this.right=r}},re=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`FilterExpression`),this.operand=t,this.filter=n}},j=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`SelectExpression`),this.iterable=t,this.test=n}},ie=class extends x{constructor(t,n,r){super(),e.defineProperty(this,`type`,`TestExpression`),this.operand=t,this.negate=n,this.test=r}},ae=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`UnaryExpression`),this.operator=t,this.argument=n}},oe=class extends x{constructor(t=void 0,n=void 0,r=void 0){super(),e.defineProperty(this,`type`,`SliceExpression`),this.start=t,this.stop=n,this.step=r}},se=class extends x{constructor(t,n){super(),e.defineProperty(this,`type`,`KeywordArgumentExpression`),this.key=t,this.value=n}};function ce(e){let t=new m([]),n=0;function r(t,r){let i=e[n++];if(!i||i.type!==t)throw Error(`Parser Error: ${r}. ${i.type} !== ${t}.`);return i}function a(){switch(e[n].type){case i.Text:return c();case i.OpenStatement:return l();case i.OpenExpression:return u();default:throw SyntaxError(`Unexpected token type: ${e[n].type}`)}}function o(...t){return n+t.length<=e.length&&t.some((t,r)=>t!==e[n+r].type)}function s(...t){return n+t.length<=e.length&&t.every((t,r)=>t===e[n+r].type)}function c(){return new D(r(i.Text,`Expected text token`).value)}function l(){r(i.OpenStatement,`Expected opening statement token`);let t;switch(e[n].type){case i.Set:++n,t=d(),r(i.CloseStatement,`Expected closing statement token`);break;case i.If:++n,t=f(),r(i.OpenStatement,`Expected {% token`),r(i.EndIf,`Expected endif token`),r(i.CloseStatement,`Expected %} token`);break;case i.Macro:++n,t=p(),r(i.OpenStatement,`Expected {% token`),r(i.EndMacro,`Expected endmacro token`),r(i.CloseStatement,`Expected %} token`);break;case i.For:++n,t=T(),r(i.OpenStatement,`Expected {% token`),r(i.EndFor,`Expected endfor token`),r(i.CloseStatement,`Expected %} token`);break;case i.Break:++n,r(i.CloseStatement,`Expected closing statement token`),t=new _;break;case i.Continue:++n,r(i.CloseStatement,`Expected closing statement token`),t=new v;break;default:throw SyntaxError(`Unknown statement type: ${e[n].type}`)}return t}function u(){r(i.OpenExpression,`Expected opening expression token`);let e=ce();return r(i.CloseExpression,`Expected closing expression token`),e}function d(){let t=ce();if(s(i.Equals)){++n;let e=ce();return new y(t,e,[])}else{var o,c;let s=[];for(r(i.CloseStatement,`Expected %} token`);!((o=e[n])?.type===i.OpenStatement&&(c=e[n+1])?.type===i.EndSet);){let e=a();s.push(e)}return r(i.OpenStatement,`Expected {% token`),r(i.EndSet,`Expected endset token`),new y(t,null,s)}}function f(){var t,o,c,l,u,d;let p=ce();r(i.CloseStatement,`Expected closing statement token`);let m=[],g=[];for(;!((t=e[n])?.type===i.OpenStatement&&((o=e[n+1])?.type===i.ElseIf||(c=e[n+1])?.type===i.Else||(l=e[n+1])?.type===i.EndIf));)m.push(a());if((u=e[n])?.type===i.OpenStatement&&(d=e[n+1])?.type!==i.EndIf)if(++n,s(i.ElseIf))r(i.ElseIf,`Expected elseif token`),g.push(f());else{var _,v;for(r(i.Else,`Expected else token`),r(i.CloseStatement,`Expected closing statement token`);!((_=e[n])?.type===i.OpenStatement&&(v=e[n+1])?.type===i.EndIf);)g.push(a())}return new h(p,m,g)}function p(){let e=R();if(e.type!==`Identifier`)throw SyntaxError(`Expected identifier following macro statement`);let t=I();r(i.CloseStatement,`Expected closing statement token`);let n=[];for(;o(i.OpenStatement,i.EndMacro);)n.push(a());return new b(e,t,n)}function x(e=!1){let t=e?R:ce,r=[t()],a=s(i.Comma);for(;a&&(++n,r.push(t()),s(i.Comma)););return a?new ee(r):r[0]}function T(){let e=x(!0);if(!(e instanceof w||e instanceof ee))throw SyntaxError(`Expected identifier/tuple for the loop variable, got ${e.type} instead`);r(i.In,"Expected `in` keyword following loop variable");let t=ce();r(i.CloseStatement,`Expected closing statement token`);let c=[];for(;o(i.OpenStatement,i.EndFor)&&o(i.OpenStatement,i.Else);)c.push(a());let l=[];if(s(i.OpenStatement,i.Else))for(++n,++n,r(i.CloseStatement,`Expected closing statement token`);o(i.OpenStatement,i.EndFor);)l.push(a());return new g(e,t,c,l)}function ce(){return le()}function le(){let e=M();if(s(i.If)){++n;let t=M();if(s(i.Else)){++n;let r=M();return new h(t,[e],[r])}else return new j(e,t)}return e}function M(){let t=N();for(;s(i.Or);){let r=e[n];++n;let i=N();t=new ne(r,t,i)}return t}function N(){let t=ue();for(;s(i.And);){let r=e[n];++n;let i=ue();t=new ne(r,t,i)}return t}function ue(){let t;for(;s(i.Not);){let r=e[n];++n;let i=ue();t=new ae(r,i)}return t??de()}function de(){let t=fe();for(;s(i.ComparisonBinaryOperator)||s(i.In)||s(i.NotIn);){let r=e[n];++n;let i=fe();t=new ne(r,t,i)}return t}function fe(){let t=he();for(;s(i.AdditiveBinaryOperator);){let r=e[n];++n;let i=he();t=new ne(r,t,i)}return t}function P(){let e=me(R());return s(i.OpenParen)?F(e):e}function F(e){let t=new C(e,I());return t=me(t),s(i.OpenParen)&&(t=F(t)),t}function I(){r(i.OpenParen,`Expected opening parenthesis for arguments list`);let e=L();return r(i.CloseParen,`Expected closing parenthesis for arguments list`),e}function L(){let e=[];for(;!s(i.CloseParen);){let t=ce();if(s(i.Equals)){if(++n,!(t instanceof w))throw SyntaxError(`Expected identifier for keyword argument`);let e=ce();t=new se(t,e)}e.push(t),s(i.Comma)&&++n}return e}function pe(){let e=[],t=!1;for(;!s(i.CloseSquareBracket);)s(i.Colon)?(e.push(void 0),++n,t=!0):(e.push(ce()),s(i.Colon)&&(++n,t=!0));if(e.length===0)throw SyntaxError(`Expected at least one argument for member/slice expression`);if(t){if(e.length>3)throw SyntaxError(`Expected 0-3 arguments for slice expression`);return new oe(...e)}return e[0]}function me(t){for(;s(i.Dot)||s(i.OpenSquareBracket);){let a=e[n];++n;let o,s=a.type!==i.Dot;if(s)o=pe(),r(i.CloseSquareBracket,`Expected closing square bracket`);else if(o=R(),o.type!==`Identifier`)throw SyntaxError(`Expected identifier following dot operator`);t=new S(t,o,s)}return t}function he(){let t=ge();for(;s(i.MultiplicativeBinaryOperator);){let r=e[n];++n;let i=ge();t=new ne(r,t,i)}return t}function ge(){let e=_e();for(;s(i.Is);){++n;let t=s(i.Not);t&&++n;let r=R();if(r instanceof O?r=new w(r.value.toString()):r instanceof k&&(r=new w(`none`)),!(r instanceof w))throw SyntaxError(`Expected identifier for the test`);e=new ie(e,t,r)}return e}function _e(){let e=P();for(;s(i.Pipe);){++n;let t=R();if(!(t instanceof w))throw SyntaxError(`Expected identifier for the filter`);s(i.OpenParen)&&(t=F(t)),e=new re(e,t)}return e}function R(){let t=e[n];switch(t.type){case i.NumericLiteral:return++n,new E(Number(t.value));case i.StringLiteral:return++n,new D(t.value);case i.BooleanLiteral:return++n,new O(t.value.toLowerCase()===`true`);case i.NullLiteral:return++n,new k(null);case i.Identifier:return++n,new w(t.value);case i.OpenParen:{++n;let t=x();if(e[n].type!==i.CloseParen)throw SyntaxError(`Expected closing parenthesis, got ${e[n].type} instead`);return++n,t}case i.OpenSquareBracket:{++n;let e=[];for(;!s(i.CloseSquareBracket);)e.push(ce()),s(i.Comma)&&++n;return++n,new A(e)}case i.OpenCurlyBracket:{++n;let e=new Map;for(;!s(i.CloseCurlyBracket);){let t=ce();r(i.Colon,`Expected colon between key and value in object literal`);let a=ce();e.set(t,a),s(i.Comma)&&++n}return++n,new te(e)}default:throw SyntaxError(`Unexpected token: ${t.type}`)}}for(;n=0?(t=(t??=0)<0?Math.max(e.length+t,0):Math.min(t,e.length),n=(n??=e.length)<0?Math.max(e.length+n,0):Math.min(n,e.length)):(t=(t??=e.length-1)<0?Math.max(e.length+t,-1):Math.min(t,e.length-1),n=(n??=-1)<-1?Math.max(e.length+n,-1):Math.min(n,e.length-1));let a=[];for(let o=t;i*oe.toUpperCase())}var ue=class extends Error{},de=class extends Error{},fe=class{constructor(t=void 0){e.defineProperty(this,`type`,`RuntimeValue`),e.defineProperty(this,`value`,void 0),e.defineProperty(this,`builtins`,new Map),this.value=t}__bool__(){return new I(!!this.value)}},P=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`NumericValue`)}},F=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`StringValue`),e.defineProperty(this,`builtins`,new Map([[`upper`,new ge(()=>new F(this.value.toUpperCase()))],[`lower`,new ge(()=>new F(this.value.toLowerCase()))],[`strip`,new ge(()=>new F(this.value.trim()))],[`title`,new ge(()=>new F(N(this.value)))],[`length`,new P(this.value.length)],[`rstrip`,new ge(()=>new F(this.value.trimEnd()))],[`lstrip`,new ge(()=>new F(this.value.trimStart()))],[`startswith`,new ge(e=>{if(e.length===0)throw Error(`startswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`startswith() argument must be a string`);return new I(this.value.startsWith(t.value))})],[`endswith`,new ge(e=>{if(e.length===0)throw Error(`endswith() requires at least one argument`);let t=e[0];if(!(t instanceof F))throw Error(`endswith() argument must be a string`);return new I(this.value.endsWith(t.value))})],[`split`,new ge(e=>{let t=e[0]??new _e;if(!(t instanceof F||t instanceof _e))throw Error(`sep argument must be a string or null`);let n=e[1]??new P(-1);if(!(n instanceof P))throw Error(`maxsplit argument must be a number`);let r=[];if(t instanceof _e){let e=this.value.trimStart();for(let{0:t,index:i}of e.matchAll(/\S+/g)){if(n.value!==-1&&r.length>=n.value&&i!==void 0){r.push(t+e.slice(i+t.length));break}r.push(t)}}else{if(t.value===``)throw Error(`empty separator`);r=this.value.split(t.value),n.value!==-1&&r.length>n.value&&r.push(r.splice(n.value).join(t.value))}return new me(r.map(e=>new F(e)))})]]))}},I=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`BooleanValue`)}},L=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`ObjectValue`),e.defineProperty(this,`builtins`,new Map([[`get`,new ge(([e,t])=>{if(!(e instanceof F))throw Error(`Object key must be a string: got ${e.type}`);return this.value.get(e.value)??t??new _e})],[`items`,new ge(()=>new me(Array.from(this.value.entries()).map(([e,t])=>new me([new F(e),t]))))]]))}__bool__(){return new I(this.value.size>0)}},pe=class extends L{constructor(...t){super(...t),e.defineProperty(this,`type`,`KeywordArgumentsValue`)}},me=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`ArrayValue`),e.defineProperty(this,`builtins`,new Map([[`length`,new P(this.value.length)]]))}__bool__(){return new I(this.value.length>0)}},he=class extends me{constructor(...t){super(...t),e.defineProperty(this,`type`,`TupleValue`)}},ge=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`FunctionValue`)}},_e=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`NullValue`)}},R=class extends fe{constructor(...t){super(...t),e.defineProperty(this,`type`,`UndefinedValue`)}},ve=class{constructor(t){e.defineProperty(this,`variables`,new Map([[`namespace`,new ge(e=>{if(e.length===0)return new L(new Map);if(e.length!==1||!(e[0]instanceof L))throw Error("`namespace` expects either zero arguments or a single object argument");return e[0]})]])),e.defineProperty(this,`tests`,new Map([[`boolean`,e=>e.type===`BooleanValue`],[`callable`,e=>e instanceof ge],[`odd`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "odd" to type: ${e.type}`);return e.value%2!=0}],[`even`,e=>{if(e.type!==`NumericValue`)throw Error(`Cannot apply test "even" to type: ${e.type}`);return e.value%2==0}],[`false`,e=>e.type===`BooleanValue`&&!e.value],[`true`,e=>e.type===`BooleanValue`&&e.value],[`none`,e=>e.type===`NullValue`],[`string`,e=>e.type===`StringValue`],[`number`,e=>e.type===`NumericValue`],[`integer`,e=>e.type===`NumericValue`&&Number.isInteger(e.value)],[`iterable`,e=>e.type===`ArrayValue`||e.type===`StringValue`],[`mapping`,e=>e.type===`ObjectValue`],[`lower`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toLowerCase()}],[`upper`,e=>{let t=e.value;return e.type===`StringValue`&&t===t.toUpperCase()}],[`none`,e=>e.type===`NullValue`],[`defined`,e=>e.type!==`UndefinedValue`],[`undefined`,e=>e.type===`UndefinedValue`],[`equalto`,(e,t)=>e.value===t.value],[`eq`,(e,t)=>e.value===t.value]])),this.parent=t}set(e,t){return this.declareVariable(e,be(t))}declareVariable(e,t){if(this.variables.has(e))throw SyntaxError(`Variable already declared: ${e}`);return this.variables.set(e,t),t}setVariable(e,t){return this.variables.set(e,t),t}resolve(e){if(this.variables.has(e))return this;if(this.parent)return this.parent.resolve(e);throw Error(`Unknown variable: ${e}`)}lookupVariable(e){try{return this.resolve(e).variables.get(e)??new R}catch{return new R}}},ye=class{constructor(t){e.defineProperty(this,`global`,void 0),this.global=t??new ve}run(e){return this.evaluate(e,this.global)}evaluateBinaryExpression(e,t){let n=this.evaluate(e.left,t);switch(e.operator.value){case`and`:return n.__bool__().value?this.evaluate(e.right,t):n;case`or`:return n.__bool__().value?n:this.evaluate(e.right,t)}let r=this.evaluate(e.right,t);switch(e.operator.value){case`==`:return new I(n.value==r.value);case`!=`:return new I(n.value!=r.value)}if(n instanceof R||r instanceof R)throw Error(`Cannot perform operation on undefined values`);if(n instanceof _e||r instanceof _e)throw Error(`Cannot perform operation on null values`);if(n instanceof P&&r instanceof P)switch(e.operator.value){case`+`:return new P(n.value+r.value);case`-`:return new P(n.value-r.value);case`*`:return new P(n.value*r.value);case`/`:return new P(n.value/r.value);case`%`:return new P(n.value%r.value);case`<`:return new I(n.value`:return new I(n.value>r.value);case`>=`:return new I(n.value>=r.value);case`<=`:return new I(n.value<=r.value)}else if(n instanceof me&&r instanceof me)switch(e.operator.value){case`+`:return new me(n.value.concat(r.value))}else if(r instanceof me){let t=r.value.find(e=>e.value===n.value)!==void 0;switch(e.operator.value){case`in`:return new I(t);case`not in`:return new I(!t)}}if(n instanceof F||r instanceof F)switch(e.operator.value){case`+`:return new F(n.value.toString()+r.value.toString())}if(n instanceof F&&r instanceof F)switch(e.operator.value){case`in`:return new I(r.value.includes(n.value));case`not in`:return new I(!r.value.includes(n.value))}if(n instanceof F&&r instanceof L)switch(e.operator.value){case`in`:return new I(r.value.has(n.value));case`not in`:return new I(!r.value.has(n.value))}throw SyntaxError(`Unknown operator "${e.operator.value}" between ${n.type} and ${r.type}`)}evaluateArguments(e,t){let n=[],r=new Map;for(let i of e)if(i.type===`KeywordArgumentExpression`){let e=i;r.set(e.key.value,this.evaluate(e.value,t))}else{if(r.size>0)throw Error(`Positional arguments must come before keyword arguments`);n.push(this.evaluate(i,t))}return[n,r]}evaluateFilterExpression(e,t){let n=this.evaluate(e.operand,t);if(e.filter.type===`Identifier`){let t=e.filter;if(t.value===`tojson`)return new F(xe(n));if(n instanceof me)switch(t.value){case`list`:return n;case`first`:return n.value[0];case`last`:return n.value[n.value.length-1];case`length`:return new P(n.value.length);case`reverse`:return new me(n.value.reverse());case`sort`:return new me(n.value.sort((e,t)=>{if(e.type!==t.type)throw Error(`Cannot compare different types: ${e.type} and ${t.type}`);switch(e.type){case`NumericValue`:return e.value-t.value;case`StringValue`:return e.value.localeCompare(t.value);default:throw Error(`Cannot compare type: ${e.type}`)}}));case`join`:return new F(n.value.map(e=>e.value).join(``));case`string`:return new F(xe(n));default:throw Error(`Unknown ArrayValue filter: ${t.value}`)}else if(n instanceof F)switch(t.value){case`length`:return new P(n.value.length);case`upper`:return new F(n.value.toUpperCase());case`lower`:return new F(n.value.toLowerCase());case`title`:return new F(N(n.value));case`capitalize`:return new F(n.value.charAt(0).toUpperCase()+n.value.slice(1));case`trim`:return new F(n.value.trim());case`indent`:return new F(n.value.split(` -`).map((e,t)=>t===0||e.length===0?e:` `+e).join(` -`));case`join`:case`string`:return n;default:throw Error(`Unknown StringValue filter: ${t.value}`)}else if(n instanceof P)switch(t.value){case`abs`:return new P(Math.abs(n.value));default:throw Error(`Unknown NumericValue filter: ${t.value}`)}else if(n instanceof L)switch(t.value){case`items`:return new me(Array.from(n.value.entries()).map(([e,t])=>new me([new F(e),t])));case`length`:return new P(n.value.size);default:throw Error(`Unknown ObjectValue filter: ${t.value}`)}throw Error(`Cannot apply filter "${t.value}" to type: ${n.type}`)}else if(e.filter.type===`CallExpression`){let r=e.filter;if(r.callee.type!==`Identifier`)throw Error(`Unknown filter: ${r.callee.type}`);let i=r.callee.value;if(i===`tojson`){let[,e]=this.evaluateArguments(r.args,t),i=e.get(`indent`)??new _e;if(!(i instanceof P||i instanceof _e))throw Error(`If set, indent must be a number`);return new F(xe(n,i.value))}else if(i===`join`){let e;if(n instanceof F)e=Array.from(n.value);else if(n instanceof me)e=n.value.map(e=>e.value);else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`);let[a,o]=this.evaluateArguments(r.args,t),s=a.at(0)??o.get(`separator`)??new F(``);if(!(s instanceof F))throw Error(`separator must be a string`);return new F(e.join(s.value))}if(n instanceof me){switch(i){case`selectattr`:case`rejectattr`:{let e=i===`selectattr`;if(n.value.some(e=>!(e instanceof L)))throw Error(`\`${i}\` can only be applied to array of objects`);if(r.args.some(e=>e.type!==`StringLiteral`))throw Error(`arguments of \`${i}\` must be strings`);let[a,o,s]=r.args.map(e=>this.evaluate(e,t)),c;if(o){let e=t.tests.get(o.value);if(!e)throw Error(`Unknown test: ${o.value}`);c=e}else c=(...e)=>e[0].__bool__().value;let l=n.value.filter(t=>{let n=t.value.get(a.value),r=n?c(n,s):!1;return e?r:!r});return new me(l)}case`map`:{let[,e]=this.evaluateArguments(r.args,t);if(e.has(`attribute`)){let t=e.get(`attribute`);if(!(t instanceof F))throw Error(`attribute must be a string`);let r=e.get(`default`),i=n.value.map(e=>{if(!(e instanceof L))throw Error(`items in map must be an object`);return e.value.get(t.value)??r??new R});return new me(i)}else throw Error("`map` expressions without `attribute` set are not currently supported.")}}throw Error(`Unknown ArrayValue filter: ${i}`)}else if(n instanceof F){switch(i){case`indent`:{let[e,i]=this.evaluateArguments(r.args,t),a=e.at(0)??i.get(`width`)??new P(4);if(!(a instanceof P))throw Error(`width must be a number`);let o=e.at(1)??i.get(`first`)??new I(!1),s=e.at(2)??i.get(`blank`)??new I(!1),c=n.value.split(` -`),l=` `.repeat(a.value),u=c.map((e,t)=>!o.value&&t===0||!s.value&&e.length===0?e:l+e);return new F(u.join(` -`))}}throw Error(`Unknown StringValue filter: ${i}`)}else throw Error(`Cannot apply filter "${i}" to type: ${n.type}`)}throw Error(`Unknown filter: ${e.filter.type}`)}evaluateTestExpression(e,t){let n=this.evaluate(e.operand,t),r=t.tests.get(e.test.value);if(!r)throw Error(`Unknown test: ${e.test.value}`);let i=r(n);return new I(e.negate?!i:i)}evaluateUnaryExpression(e,t){let n=this.evaluate(e.argument,t);switch(e.operator.value){case`not`:return new I(!n.value);default:throw SyntaxError(`Unknown operator: ${e.operator.value}`)}}evalProgram(e,t){return this.evaluateBlock(e.body,t)}evaluateBlock(e,t){let n=``;for(let r of e){let e=this.evaluate(r,t);e.type!==`NullValue`&&e.type!==`UndefinedValue`&&(n+=e.value)}return new F(n)}evaluateIdentifier(e,t){return t.lookupVariable(e.value)}evaluateCallExpression(e,t){let[n,r]=this.evaluateArguments(e.args,t);r.size>0&&n.push(new pe(r));let i=this.evaluate(e.callee,t);if(i.type!==`FunctionValue`)throw Error(`Cannot call something that is not a function: got ${i.type}`);return i.value(n,t)}evaluateSliceExpression(e,t,n){if(!(e instanceof me||e instanceof F))throw Error(`Slice object must be an array or string`);let r=this.evaluate(t.start,n),i=this.evaluate(t.stop,n),a=this.evaluate(t.step,n);if(!(r instanceof P||r instanceof R))throw Error(`Slice start must be numeric or undefined`);if(!(i instanceof P||i instanceof R))throw Error(`Slice stop must be numeric or undefined`);if(!(a instanceof P||a instanceof R))throw Error(`Slice step must be numeric or undefined`);return e instanceof me?new me(M(e.value,r.value,i.value,a.value)):new F(M(Array.from(e.value),r.value,i.value,a.value).join(``))}evaluateMemberExpression(e,t){let n=this.evaluate(e.object,t),r;if(e.computed){if(e.property.type===`SliceExpression`)return this.evaluateSliceExpression(n,e.property,t);r=this.evaluate(e.property,t)}else r=new F(e.property.value);let i;if(n instanceof L){if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.value.get(r.value)??n.builtins.get(r.value)}else if(n instanceof me||n instanceof F)if(r instanceof P)i=n.value.at(r.value),n instanceof F&&(i=new F(n.value.at(r.value)));else if(r instanceof F)i=n.builtins.get(r.value);else throw Error(`Cannot access property with non-string/non-number: got ${r.type}`);else{if(!(r instanceof F))throw Error(`Cannot access property with non-string: got ${r.type}`);i=n.builtins.get(r.value)}return i instanceof fe?i:new R}evaluateSet(e,t){let n=e.value?this.evaluate(e.value,t):this.evaluateBlock(e.body,t);if(e.assignee.type===`Identifier`){let r=e.assignee.value;t.setVariable(r,n)}else if(e.assignee.type===`MemberExpression`){let r=e.assignee,i=this.evaluate(r.object,t);if(!(i instanceof L))throw Error(`Cannot assign to member of non-object`);if(r.property.type!==`Identifier`)throw Error(`Cannot assign to member with non-identifier property`);i.value.set(r.property.value,n)}else throw Error(`Invalid LHS inside assignment expression: ${JSON.stringify(e.assignee)}`);return new _e}evaluateIf(e,t){let n=this.evaluate(e.test,t);return this.evaluateBlock(n.__bool__().value?e.body:e.alternate,t)}evaluateFor(e,t){let n=new ve(t),r,i;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=this.evaluate(t.iterable,n),r=t.test}else i=this.evaluate(e.iterable,n);if(!(i instanceof me))throw Error(`Expected iterable type in for loop: got ${i.type}`);let a=[],o=[];for(let t=0;tt.setVariable(e.loopvar.value,c);else if(e.loopvar.type===`TupleLiteral`){let t=e.loopvar;if(c.type!==`ArrayValue`)throw Error(`Cannot unpack non-iterable type: ${c.type}`);let n=c;if(t.value.length!==n.value.length)throw Error(`Too ${t.value.length>n.value.length?`few`:`many`} items to unpack`);l=e=>{for(let r=0;r0?a[t-1]:new R],[`nextitem`,t{var r;let i=new ve(n);t=t.slice();let a;(r=t.at(-1))?.type===`KeywordArgumentsValue`&&(a=t.pop());for(let n=0;nthis.evaluate(e,t)));case`TupleLiteral`:return new he(e.value.map(e=>this.evaluate(e,t)));case`ObjectLiteral`:{let n=new Map;for(let[r,i]of e.value){let e=this.evaluate(r,t);if(!(e instanceof F))throw Error(`Object keys must be strings: got ${e.type}`);n.set(e.value,this.evaluate(i,t))}return new L(n)}case`Identifier`:return this.evaluateIdentifier(e,t);case`CallExpression`:return this.evaluateCallExpression(e,t);case`MemberExpression`:return this.evaluateMemberExpression(e,t);case`UnaryExpression`:return this.evaluateUnaryExpression(e,t);case`BinaryExpression`:return this.evaluateBinaryExpression(e,t);case`FilterExpression`:return this.evaluateFilterExpression(e,t);case`TestExpression`:return this.evaluateTestExpression(e,t);default:throw SyntaxError(`Unknown node type: ${e.type}`)}}};function be(e){switch(typeof e){case`number`:return new P(e);case`string`:return new F(e);case`boolean`:return new I(e);case`undefined`:return new R;case`object`:return e===null?new _e:Array.isArray(e)?new me(e.map(be)):new L(new Map(Object.entries(e).map(([e,t])=>[e,be(t)])));case`function`:return new ge((t,n)=>{let r=e(...t.map(e=>e.value))??null;return be(r)});default:throw Error(`Cannot convert to runtime value: ${e}`)}}function xe(e,t,n){let r=n??0;switch(e.type){case`NullValue`:case`UndefinedValue`:return`null`;case`NumericValue`:case`StringValue`:case`BooleanValue`:return JSON.stringify(e.value);case`ArrayValue`:case`ObjectValue`:{let n=t?` `.repeat(t):``,i=` -`+n.repeat(r),a=i+n;if(e.type===`ArrayValue`){let n=e.value.map(e=>xe(e,t,r+1));return t?`[${a}${n.join(`,${a}`)}${i}]`:`[${n.join(`, `)}]`}else{let n=Array.from(e.value.entries()).map(([e,n])=>{let i=`"${e}": ${xe(n,t,r+1)}`;return t?`${a}${i}`:i});return t?`{${n.join(`,`)}${i}}`:`{${n.join(`, `)}}`}}default:throw Error(`Cannot convert to JSON: ${e.type}`)}}var Se=` -`,Ce=`{%- `,we=` -%}`,Te={MultiplicativeBinaryOperator:2,AdditiveBinaryOperator:1,ComparisonBinaryOperator:0};function Ee(e,t=` `){let n=typeof t==`number`?` `.repeat(t):t,r=Oe(e.body,0,n);return r.replace(/\n$/,``)}function De(...e){return Ce+e.join(` `)+we}function Oe(e,t,n){return e.map(e=>ke(e,t,n)).join(Se)}function ke(e,t,n){let r=n.repeat(t);switch(e.type){case`Program`:return Oe(e.body,t,n);case`If`:return Ae(e,t,n);case`For`:return je(e,t,n);case`Set`:return Me(e,t,n);case`Macro`:return Ne(e,t,n);case`Break`:return r+De(`break`);case`Continue`:return r+De(`continue`);default:return r+`{{- `+z(e)+` -}}`}}function Ae(e,t,n){let r=n.repeat(t),i=[],a=e;for(;a&&(i.push({test:a.test,body:a.body}),a.alternate.length===1&&a.alternate[0].type===`If`);)a=a.alternate[0];let o=r+De(`if`,z(i[0].test))+Se+Oe(i[0].body,t+1,n);for(let e=1;e0&&(o+=Se+r+De(`else`)+Se+Oe(a.alternate,t+1,n)),o+=Se+r+De(`endif`),o}function je(e,t,n){let r=n.repeat(t),i=``;if(e.iterable.type===`SelectExpression`){let t=e.iterable;i=`${z(t.iterable)} if ${z(t.test)}`}else i=z(e.iterable);let a=r+De(`for`,z(e.loopvar),`in`,i)+Se+Oe(e.body,t+1,n);return e.defaultBlock.length>0&&(a+=Se+r+De(`else`)+Se+Oe(e.defaultBlock,t+1,n)),a+=Se+r+De(`endfor`),a}function Me(e,t,n){let r=n.repeat(t),i=z(e.assignee),a=e.value?z(e.value):``,o=r+De(`set`,`${i}${e.value?` = `+a:``}`);return e.body.length===0?o:o+Se+Oe(e.body,t+1,n)+Se+r+De(`endset`)}function Ne(e,t,n){let r=n.repeat(t),i=e.args.map(z).join(`, `);return r+De(`macro`,`${e.name.value}(${i})`)+Se+Oe(e.body,t+1,n)+Se+r+De(`endmacro`)}function z(e,t=-1){switch(e.type){case`Identifier`:return e.value;case`NullLiteral`:return`none`;case`NumericLiteral`:case`BooleanLiteral`:return`${e.value}`;case`StringLiteral`:return JSON.stringify(e.value);case`BinaryExpression`:{let n=e,r=Te[n.operator.type]??0,i=z(n.left,r),a=z(n.right,r+1),o=`${i} ${n.operator.value} ${a}`;return rz(e,-1)).join(`, `);return`${z(t.callee,-1)}(${n})`}case`MemberExpression`:{let t=e,n=z(t.object,-1);t.object.type!==`Identifier`&&(n=`(${n})`);let r=z(t.property,-1);return!t.computed&&t.property.type!==`Identifier`&&(r=`(${r})`),t.computed?`${n}[${r}]`:`${n}.${r}`}case`FilterExpression`:{let t=e,n=z(t.operand,1/0);return t.filter.type===`CallExpression`?`${n} | ${z(t.filter,-1)}`:`${n} | ${t.filter.value}`}case`SelectExpression`:{let t=e;return`${z(t.iterable,-1)} | select(${z(t.test,-1)})`}case`TestExpression`:{let t=e;return`${z(t.operand,-1)} is${t.negate?` not`:``} ${t.test.value}`}case`ArrayLiteral`:case`TupleLiteral`:{let t=e.value.map(e=>z(e,-1)),n=e.type===`ArrayLiteral`?`[]`:`()`;return`${n[0]}${t.join(`, `)}${n[1]}`}case`ObjectLiteral`:{let t=Array.from(e.value.entries()).map(([e,t])=>`${z(e,-1)}: ${z(t,-1)}`);return`{ ${t.join(`, `)} }`}case`SliceExpression`:{let t=e,n=t.start?z(t.start,-1):``,r=t.stop?z(t.stop,-1):``,i=t.step?`:${z(t.step,-1)}`:``;return`${n}:${r}${i}`}case`KeywordArgumentExpression`:{let t=e;return`${t.key.value}=${z(t.value,-1)}`}case`If`:{let t=e,n=z(t.test,-1),r=z(t.body[0],0),i=z(t.alternate[0],-1);return`${r} if ${n} else ${i}`}default:throw Error(`Unknown expression type: ${e.type}`)}}var Pe=class{constructor(t){e.defineProperty(this,`parsed`,void 0);let n=f(t,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=ce(n)}render(e){let t=new ve;if(t.set(`false`,!1),t.set(`true`,!0),t.set(`raise_exception`,e=>{throw Error(e)}),t.set(`range`,le),e)for(let[n,r]of Object.entries(e))t.set(n,r);let n=new ye(t),r=n.run(this.parsed);return r.value}format(e){return Ee(this.parsed,e?.indent||` `)}}},"./src/backends/onnx.js":(e,t,n)=>{var r;n.r(t),n.d(t,{Tensor:()=>s.Tensor,createInferenceSession:()=>g,deviceToExecutionProviders:()=>m,isONNXProxy:()=>y,isONNXTensor:()=>_});var i=n( -/*! ../env.js */ -`./src/env.js`),a=n( -/*! onnxruntime-node */ -`?2ce3`),o=n( -/*! onnxruntime-web */ -`onnxruntime-web`),s=n( -/*! onnxruntime-common */ -`onnxruntime-common`);let c=Object.freeze({auto:null,gpu:null,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:{name:`webnn`,deviceType:`cpu`},"webnn-npu":{name:`webnn`,deviceType:`npu`},"webnn-gpu":{name:`webnn`,deviceType:`gpu`},"webnn-cpu":{name:`webnn`,deviceType:`cpu`}}),l=[],u,d,f=Symbol.for(`onnxruntime`);if(f in globalThis)d=globalThis[f];else if(i.apis.IS_NODE_ENV){switch(d=a??(r||=n.t(a,2)),process.platform){case`win32`:l.push(`dml`);break;case`linux`:process.arch===`x64`&&l.push(`cuda`);break;case`darwin`:break}l.push(`cpu`),u=[`cpu`]}else d=o,i.apis.IS_WEBNN_AVAILABLE&&l.push(`webnn-npu`,`webnn-gpu`,`webnn-cpu`,`webnn`),i.apis.IS_WEBGPU_AVAILABLE&&l.push(`webgpu`),l.push(`wasm`),u=[`wasm`];let p=d.InferenceSession;function m(e=null){if(!e)return u;switch(e){case`auto`:return l;case`gpu`:return l.filter(e=>[`webgpu`,`cuda`,`dml`,`webnn-gpu`].includes(e))}if(l.includes(e))return[c[e]??e];throw Error(`Unsupported device: "${e}". Should be one of: ${l.join(`, `)}.`)}let h=null;async function g(e,t,n){h&&await h;let r=p.create(e,t);h??=r;let i=await r;return i.config=n,i}function _(e){return e instanceof d.Tensor}let v=d?.env;v?.wasm&&(!(typeof ServiceWorkerGlobalScope<`u`&&self instanceof ServiceWorkerGlobalScope)&&!v.wasm.wasmPaths&&(v.wasm.wasmPaths=`https://cdn.jsdelivr.net/npm/@huggingface/transformers@${i.env.version}/dist/`),v.wasm.proxy=!1),v?.webgpu&&(v.webgpu.powerPreference=`high-performance`);function y(){var e;return v==null||(e=v.wasm)==null?void 0:e.proxy}i.env.backends.onnx=v},"./src/base/feature_extraction_utils.js":(e,t,n)=>{n.r(t),n.d(t,{FeatureExtractor:()=>o,validate_audio_inputs:()=>s});var r=n( -/*! ../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),a=n( -/*! ../utils/hub.js */ -`./src/utils/hub.js`);class o extends i.Callable{constructor(e){super(),this.config=e}static async from_pretrained(e,t={}){let n=await(0,a.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t);return new this(n)}}function s(e,t){var n;if(!(e instanceof Float32Array||e instanceof Float64Array))throw Error(`${t} expects input to be a Float32Array or a Float64Array, but got ${(e==null||(n=e.constructor)==null?void 0:n.name)??typeof e} instead. If using the feature extractor directly, remember to use \`read_audio(url, sampling_rate)\` to obtain the raw audio data of the file/url.`)}},"./src/base/image_processors_utils.js":(e,t,n)=>{n.r(t),n.d(t,{ImageProcessor:()=>x,center_to_corners_format:()=>f,post_process_instance_segmentation:()=>b,post_process_object_detection:()=>p,post_process_panoptic_segmentation:()=>y,post_process_semantic_segmentation:()=>m});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),i=n( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../utils/maths.js */ -`./src/utils/maths.js`),o=n( -/*! ../utils/image.js */ -`./src/utils/image.js`),s=n( -/*! ../utils/core.js */ -`./src/utils/core.js`),c=n( -/*! ../utils/hub.js */ -`./src/utils/hub.js`),l=n( -/*! ../utils/constants.js */ -`./src/utils/constants.js`);function u(e,t,n=0,r=null){let i=e/t,o=(0,a.bankers_round)(i)*t;return r!==null&&o>r&&(o=Math.floor(i)*t),ot&&i.push(e)}else{let e=(0,a.max)(n.data)[1];if(e===l-1||(o=(0,a.softmax)(n.data),o[e]e*s[(t+1)%2])),d.boxes.push(n),d.classes.push(t),d.scores.push(o[t])}}u.push(d)}return u}function m(e,t=null){let n=e.logits,r=n.dims[0];if(t!==null&&t.length!==r)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let a=[];for(let e=0;eu[n]&&(u[n]=t[n],d[n]=e)}let f=Array(o.dims[0]);for(let e=0;ee!==void 0);a.push({segmentation:l,labels:p})}return a}function h(e,t,n,r){let i=[],o=[],s=[];for(let c=0;cn&&(i.push(u),o.push(p),s.push(d))}return[i,o,s]}function g(e,t,n,r=.5,i=.8){let a=[],o=0,s=0,c=t[n].data;for(let t=0;t=r&&++s;let l=o>0&&s>0;if(l){let e=o/s;l=e>i}return[l,a]}function _(e,t,n,r,a,o=null,s=null){let[c,l]=s??e[0].dims,u=new i.Tensor(`int32`,new Int32Array(c*l),[c,l]),d=[];if(s!==null)for(let t=0;tp[e]&&(f[e]=n,p[e]=i[e])}let m=0,h=u.data;for(let i=0;i200)throw Error(`absolute aspect ratio must be smaller than 200, got ${Math.max(e,t)/Math.min(e,t)}`);let a=Math.round(e/n)*n,o=Math.round(t/n)*n;if(a*o>i){let r=Math.sqrt(e*t/i);a=Math.floor(e/r/n)*n,o=Math.floor(t/r/n)*n}else if(a*oi?c=Math.floor(i*s/r):i>r&&(s=Math.floor(r*c/i)),await e.resize(c,s,{resample:n}))}async crop_margin(e,t=200){let n=e.clone().grayscale(),r=(0,a.min)(n.data)[0],i=(0,a.max)(n.data)[0],o=i-r;if(o===0)return e;let s=t/255,c=n.width,l=n.height,u=0,d=0,f=n.data;for(let e=0;ethis.preprocess(e))),r=(0,i.stack)(n.map(e=>e.pixel_values),0);return{pixel_values:r,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}static async from_pretrained(e,t={}){let n=await(0,c.getModelJSON)(e,l.IMAGE_PROCESSOR_NAME,!0,t);return new this(n)}}},"./src/base/processing_utils.js":(t,n,r)=>{r.r(n),r.d(n,{Processor:()=>s});var i=r( -/*! ../utils/constants.js */ -`./src/utils/constants.js`),a=r( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),o=r( -/*! ../utils/hub.js */ -`./src/utils/hub.js`);class s extends a.Callable{constructor(e,t,n){super(),this.config=e,this.components=t,this.chat_template=n}get image_processor(){return this.components.image_processor}get tokenizer(){return this.components.tokenizer}get feature_extractor(){return this.components.feature_extractor}apply_chat_template(e,t={}){if(!this.tokenizer)throw Error(`Unable to apply chat template without a tokenizer.`);return this.tokenizer.apply_chat_template(e,{tokenize:!1,chat_template:this.chat_template??void 0,...t})}batch_decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.batch_decode(...e)}decode(...e){if(!this.tokenizer)throw Error(`Unable to decode without a tokenizer.`);return this.tokenizer.decode(...e)}async _call(e,...t){for(let n of[this.image_processor,this.feature_extractor,this.tokenizer])if(n)return n(e,...t);throw Error(`No image processor, feature extractor, or tokenizer found.`)}static async from_pretrained(e,t={}){let[n,r,a]=await Promise.all([this.uses_processor_config?(0,o.getModelJSON)(e,i.PROCESSOR_NAME,!0,t):{},Promise.all(this.classes.filter(e=>e in this).map(async n=>{let r=await this[n].from_pretrained(e,t);return[n.replace(/_class$/,``),r]})).then(Object.fromEntries),this.uses_chat_template_file?(0,o.getModelText)(e,i.CHAT_TEMPLATE_NAME,!0,t):null]);return new this(n,r,a)}}e.defineProperty(s,`classes`,[`image_processor_class`,`tokenizer_class`,`feature_extractor_class`]),e.defineProperty(s,`uses_processor_config`,!1),e.defineProperty(s,`uses_chat_template_file`,!1)},"./src/configs.js":(t,n,r)=>{r.r(n),r.d(n,{AutoConfig:()=>u,PretrainedConfig:()=>l,getKeyValueShapes:()=>c});var i=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),a=r( -/*! ./utils/hub.js */ -`./src/utils/hub.js`);async function o(e,t){return await(0,a.getModelJSON)(e,`config.json`,!0,t)}function s(e){let t={},n={};switch(e.model_type){case`llava`:case`paligemma`:case`gemma3`:case`florence2`:case`llava_onevision`:case`idefics3`:case`ultravox`:case`smolvlm`:case`gemma3n`:n=s(e.text_config);break;case`moondream1`:n=s(e.phi_config);break;case`musicgen`:n=s(e.decoder);break;case`multi_modality`:n=s(e.language_config);break;case`gpt2`:case`gptj`:case`jais`:case`codegen`:case`gpt_bigcode`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`n_embd`;break;case`gpt_neox`:case`stablelm`:case`opt`:case`falcon`:t.num_heads=`num_attention_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`;break;case`llama`:case`olmo`:case`olmo2`:case`mobilellm`:case`granite`:case`cohere`:case`mistral`:case`starcoder2`:case`qwen2`:case`qwen2_vl`:case`phi`:case`phi3`:case`phi3_v`:case`llava_qwen2`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.hidden_size=`hidden_size`,t.num_attention_heads=`num_attention_heads`;break;case`qwen3`:case`gemma`:case`gemma2`:case`gemma3_text`:case`gemma3n_text`:case`glm`:case`helium`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_hidden_layers`,t.dim_kv=`head_dim`;break;case`openelm`:t.num_heads=`num_kv_heads`,t.num_layers=`num_transformer_layers`,t.dim_kv=`head_dim`;break;case`gpt_neo`:case`donut-swin`:t.num_heads=`num_heads`,t.num_layers=`num_layers`,t.hidden_size=`hidden_size`;break;case`bloom`:t.num_heads=`n_head`,t.num_layers=`n_layer`,t.hidden_size=`hidden_size`;break;case`mpt`:t.num_heads=`n_heads`,t.num_layers=`n_layers`,t.hidden_size=`d_model`;break;case`exaone`:t.num_heads=`num_key_value_heads`,t.num_layers=`num_layers`,t.dim_kv=`head_dim`,t.num_attention_heads=`num_attention_heads`;break;case`t5`:case`mt5`:case`longt5`:t.num_decoder_layers=`num_decoder_layers`,t.num_decoder_heads=`num_heads`,t.decoder_dim_kv=`d_kv`,t.num_encoder_layers=`num_layers`,t.num_encoder_heads=`num_heads`,t.encoder_dim_kv=`d_kv`;break;case`bart`:case`mbart`:case`marian`:case`whisper`:case`lite-whisper`:case`m2m_100`:case`blenderbot`:case`blenderbot-small`:case`florence2_language`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`d_model`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`d_model`;break;case`speecht5`:t.num_decoder_layers=`decoder_layers`,t.num_decoder_heads=`decoder_attention_heads`,t.decoder_hidden_size=`hidden_size`,t.num_encoder_layers=`encoder_layers`,t.num_encoder_heads=`encoder_attention_heads`,t.encoder_hidden_size=`hidden_size`;break;case`trocr`:t.num_encoder_layers=t.num_decoder_layers=`decoder_layers`,t.num_encoder_heads=t.num_decoder_heads=`decoder_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`d_model`;break;case`musicgen_decoder`:t.num_encoder_layers=t.num_decoder_layers=`num_hidden_layers`,t.num_encoder_heads=t.num_decoder_heads=`num_attention_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`moonshine`:t.num_decoder_layers=`decoder_num_hidden_layers`,t.num_decoder_heads=`decoder_num_key_value_heads`,t.num_encoder_layers=`encoder_num_hidden_layers`,t.num_encoder_heads=`encoder_num_key_value_heads`,t.encoder_hidden_size=t.decoder_hidden_size=`hidden_size`;break;case`vision-encoder-decoder`:let r=s(e.decoder),a=`num_decoder_layers`in r,o=(0,i.pick)(e,[`model_type`,`is_encoder_decoder`]);return a?(o.num_decoder_layers=r.num_decoder_layers,o.num_decoder_heads=r.num_decoder_heads,o.decoder_hidden_size=r.decoder_hidden_size,o.num_encoder_layers=r.num_encoder_layers,o.num_encoder_heads=r.num_encoder_heads,o.encoder_hidden_size=r.encoder_hidden_size):(o.num_layers=r.num_layers,o.num_heads=r.num_heads,o.hidden_size=r.hidden_size),o}let r={...n,...(0,i.pick)(e,[`model_type`,`multi_query`,`is_encoder_decoder`])};for(let n in t)r[n]=e[t[n]];return r}function c(e,{prefix:t=`past_key_values`,batch_size:n=1}={}){let r={},i=e.normalized_config;if(i.is_encoder_decoder&&`num_encoder_heads`in i&&`num_decoder_heads`in i){let e=i.encoder_dim_kv??i.encoder_hidden_size/i.num_encoder_heads,a=i.decoder_dim_kv??i.decoder_hidden_size/i.num_decoder_heads,o=[n,i.num_encoder_heads,0,e],s=[n,i.num_decoder_heads,0,a];for(let e=0;e{var r,i;n.r(t),n.d(t,{apis:()=>b,env:()=>E});var a=n( -/*! node:fs */ -`?db59`),o=n( -/*! node:path */ -`?383f`),s=n( -/*! node:url */ -`?fa4b`);let c=`3.6.1`,l=typeof window<`u`&&window.document!==void 0,u=typeof self<`u`&&[`DedicatedWorkerGlobalScope`,`ServiceWorkerGlobalScope`,`SharedWorkerGlobalScope`].includes((r=self.constructor)?.name),d=typeof self<`u`&&`caches`in self,f=typeof navigator<`u`&&`gpu`in navigator,p=typeof navigator<`u`&&`ml`in navigator,m=typeof process<`u`,h=m&&((i=process)==null||(i=i.release)==null?void 0:i.name)===`node`,g=!D(a),_=!D(o),v=globalThis.Deno!==void 0,y=globalThis.Bun!==void 0,b=Object.freeze({IS_BROWSER_ENV:l,IS_WEBWORKER_ENV:u,IS_WEB_CACHE_AVAILABLE:d,IS_WEBGPU_AVAILABLE:f,IS_WEBNN_AVAILABLE:p,IS_PROCESS_AVAILABLE:m,IS_NODE_ENV:h,IS_FS_AVAILABLE:g,IS_PATH_AVAILABLE:_}),x=g&&_,S=`./`;if(x){let e=Object(cf).url;e?S=o.dirname(o.dirname(s.fileURLToPath(e))):typeof __dirname<`u`&&(S=o.dirname(__dirname))}let C=x?o.join(S,`/.cache/`):null,w=`/models/`,T=x?o.join(S,w):w,E={version:c,backends:{onnx:{}},allowRemoteModels:!0,remoteHost:`https://huggingface.co/`,remotePathTemplate:`{model}/resolve/{revision}/`,allowLocalModels:!(l||u),localModelPath:T,useFS:g,useBrowserCache:d&&!v,useFSCache:g,cacheDir:C,useCustomCache:!1,customCache:null};function D(e){return Object.keys(e).length===0}},"./src/generation/configuration_utils.js":(t,n,r)=>{r.r(n),r.d(n,{GenerationConfig:()=>a});var i=r( -/*! ../utils/core.js */ -`./src/utils/core.js`);class a{constructor(t){e.defineProperty(this,`max_length`,20),e.defineProperty(this,`max_new_tokens`,null),e.defineProperty(this,`min_length`,0),e.defineProperty(this,`min_new_tokens`,null),e.defineProperty(this,`early_stopping`,!1),e.defineProperty(this,`max_time`,null),e.defineProperty(this,`do_sample`,!1),e.defineProperty(this,`num_beams`,1),e.defineProperty(this,`num_beam_groups`,1),e.defineProperty(this,`penalty_alpha`,null),e.defineProperty(this,`use_cache`,!0),e.defineProperty(this,`temperature`,1),e.defineProperty(this,`top_k`,50),e.defineProperty(this,`top_p`,1),e.defineProperty(this,`typical_p`,1),e.defineProperty(this,`epsilon_cutoff`,0),e.defineProperty(this,`eta_cutoff`,0),e.defineProperty(this,`diversity_penalty`,0),e.defineProperty(this,`repetition_penalty`,1),e.defineProperty(this,`encoder_repetition_penalty`,1),e.defineProperty(this,`length_penalty`,1),e.defineProperty(this,`no_repeat_ngram_size`,0),e.defineProperty(this,`bad_words_ids`,null),e.defineProperty(this,`force_words_ids`,null),e.defineProperty(this,`renormalize_logits`,!1),e.defineProperty(this,`constraints`,null),e.defineProperty(this,`forced_bos_token_id`,null),e.defineProperty(this,`forced_eos_token_id`,null),e.defineProperty(this,`remove_invalid_values`,!1),e.defineProperty(this,`exponential_decay_length_penalty`,null),e.defineProperty(this,`suppress_tokens`,null),e.defineProperty(this,`streamer`,null),e.defineProperty(this,`begin_suppress_tokens`,null),e.defineProperty(this,`forced_decoder_ids`,null),e.defineProperty(this,`guidance_scale`,null),e.defineProperty(this,`num_return_sequences`,1),e.defineProperty(this,`output_attentions`,!1),e.defineProperty(this,`output_hidden_states`,!1),e.defineProperty(this,`output_scores`,!1),e.defineProperty(this,`return_dict_in_generate`,!1),e.defineProperty(this,`pad_token_id`,null),e.defineProperty(this,`bos_token_id`,null),e.defineProperty(this,`eos_token_id`,null),e.defineProperty(this,`encoder_no_repeat_ngram_size`,0),e.defineProperty(this,`decoder_start_token_id`,null),e.defineProperty(this,`generation_kwargs`,{}),Object.assign(this,(0,i.pick)(t,Object.getOwnPropertyNames(this)))}}},"./src/generation/logits_process.js":(e,t,n)=>{n.r(t),n.d(t,{ClassifierFreeGuidanceLogitsProcessor:()=>v,ForcedBOSTokenLogitsProcessor:()=>l,ForcedEOSTokenLogitsProcessor:()=>u,LogitsProcessor:()=>o,LogitsProcessorList:()=>c,LogitsWarper:()=>s,MinLengthLogitsProcessor:()=>h,MinNewTokensLengthLogitsProcessor:()=>g,NoBadWordsLogitsProcessor:()=>_,NoRepeatNGramLogitsProcessor:()=>p,RepetitionPenaltyLogitsProcessor:()=>m,SuppressTokensAtBeginLogitsProcessor:()=>d,TemperatureLogitsWarper:()=>y,TopKLogitsWarper:()=>x,TopPLogitsWarper:()=>b,WhisperTimeStampLogitsProcessor:()=>f});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),i=n( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../utils/maths.js */ -`./src/utils/maths.js`);class o extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class s extends r.Callable{_call(e,t){throw Error("`_call` should be implemented in a subclass")}}class c extends r.Callable{constructor(){super(),this.processors=[]}push(e){this.processors.push(e)}extend(e){this.processors.push(...e)}_call(e,t){let n=t;for(let t of this.processors)n=t(e,n);return n}[Symbol.iterator](){return this.processors.values()}}class l extends o{constructor(e){super(),this.bos_token_id=e}_call(e,t){for(let n=0;n=1&&i[i.length-1]>=this.timestamp_begin,s=i.length<2||i[i.length-2]>=this.timestamp_begin;if(o&&(s?r.subarray(this.timestamp_begin).fill(-1/0):r.subarray(0,this.eos_token_id).fill(-1/0)),e[n].length===this.begin_index&&this.max_initial_timestamp_index!==null){let e=this.timestamp_begin+this.max_initial_timestamp_index;r.subarray(e+1).fill(-1/0)}let c=(0,a.log_softmax)(r),l=Math.log(c.subarray(this.timestamp_begin).map(Math.exp).reduce((e,t)=>e+t)),u=(0,a.max)(c.subarray(0,this.timestamp_begin))[0];l>u&&r.subarray(0,this.timestamp_begin).fill(-1/0)}return t}}class p extends o{constructor(e){super(),this.no_repeat_ngram_size=e}getNgrams(e){let t=e.length,n=[];for(let r=0;r1 to use the classifier free guidance processor, got guidance scale ${e}.`);this.guidance_scale=e}_call(e,t){if(t.dims[0]!==2*e.length)throw Error(`Logits should have twice the batch size of the input ids, the first half of batches corresponding to the conditional inputs, and the second half of batches corresponding to the unconditional inputs. Got batch size ${t.dims[0]} for the logits and ${e.length} for the input ids.`);let n=e.length,r=t.slice([0,n],null),i=t.slice([n,t.dims[0]],null);for(let e=0;e1)throw Error(`\`top_p\` must be a float > 0 and < 1, but is ${e}`);if(!Number.isInteger(n)||n<1)throw Error(`\`min_tokens_to_keep\` must be a positive integer, but is ${n}`);this.top_p=e,this.filter_value=t,this.min_tokens_to_keep=n}}class x extends s{constructor(e,{filter_value:t=-1/0,min_tokens_to_keep:n=1}={}){if(super(),!Number.isInteger(e)||e<0)throw Error(`\`top_k\` must be a positive integer, but is ${e}`);this.top_k=Math.max(e,n),this.filter_value=t}}},"./src/generation/logits_sampler.js":(e,t,n)=>{n.r(t),n.d(t,{LogitsSampler:()=>s});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`),i=n( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../utils/maths.js */ -`./src/utils/maths.js`),o=n( -/*! ../generation/configuration_utils.js */ -`./src/generation/configuration_utils.js`);class s extends r.Callable{constructor(e){super(),this.generation_config=e}async _call(e){return this.sample(e)}async sample(e){throw Error(`sample should be implemented in subclasses.`)}getLogits(e,t){let n=e.dims.at(-1),r=e.data;if(t===-1)r=r.slice(-n);else{let e=t*n;r=r.slice(e,e+n)}return r}randomSelect(e){let t=0;for(let n=0;n1)return new u(e);if(e.num_return_sequences>1)throw Error(`num_return_sequences has to be 1 when doing greedy search, but is ${e.num_return_sequences}.`);return new c(e)}}class c extends s{async sample(e){let t=(0,a.max)(e.data)[1];return[[BigInt(t),0]]}}class l extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},()=>{let e=this.randomSelect(o);return[r.data[e],Math.log(o[e])]})}}class u extends s{async sample(e){let t=e.dims.at(-1);this.generation_config.top_k>0&&(t=Math.min(this.generation_config.top_k,t));let[n,r]=await(0,i.topk)(e,t),o=(0,a.softmax)(n.data);return Array.from({length:this.generation_config.num_beams},(e,t)=>[r.data[t],Math.log(o[t])])}}},"./src/generation/stopping_criteria.js":(e,t,n)=>{n.r(t),n.d(t,{EosTokenCriteria:()=>s,InterruptableStoppingCriteria:()=>c,MaxLengthCriteria:()=>o,StoppingCriteria:()=>i,StoppingCriteriaList:()=>a});var r=n( -/*! ../utils/generic.js */ -`./src/utils/generic.js`);class i extends r.Callable{_call(e,t){throw Error(`StoppingCriteria needs to be subclassed`)}}class a extends r.Callable{constructor(){super(),this.criteria=[]}push(e){this.criteria.push(e)}extend(e){e instanceof a?e=e.criteria:e instanceof i&&(e=[e]),this.criteria.push(...e)}_call(e,t){let n=Array(e.length).fill(!1);for(let i of this.criteria){var r;let a=i(e,t);for(let e=0;ee.length>=this.max_length)}}class s extends i{constructor(e){super(),Array.isArray(e)||(e=[e]),this.eos_token_id=e}_call(e,t){return e.map(e=>{let t=e.at(-1);return this.eos_token_id.some(e=>t==e)})}}class c extends i{constructor(){super(),this.interrupted=!1}interrupt(){this.interrupted=!0}reset(){this.interrupted=!1}_call(e,t){return Array(e.length).fill(this.interrupted)}}},"./src/generation/streamers.js":(e,t,n)=>{n.r(t),n.d(t,{BaseStreamer:()=>o,TextStreamer:()=>c,WhisperTextStreamer:()=>l});var r=n( -/*! ../utils/core.js */ -`./src/utils/core.js`),i=n( -/*! ../tokenizers.js */ -`./src/tokenizers.js`),a=n( -/*! ../env.js */ -`./src/env.js`);class o{put(e){throw Error(`Not implemented`)}end(){throw Error(`Not implemented`)}}let s=a.apis.IS_PROCESS_AVAILABLE?e=>process.stdout.write(e):e=>console.log(e);class c extends o{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,skip_special_tokens:i=!0,decode_kwargs:a={},...o}={}){super(),this.tokenizer=e,this.skip_prompt=t,this.callback_function=n??s,this.token_callback_function=r,this.decode_kwargs={skip_special_tokens:i,...a,...o},this.token_cache=[],this.print_len=0,this.next_tokens_are_prompt=!0}put(e){var t;if(e.length>1)throw Error(`TextStreamer only supports batch size of 1`);let n=this.next_tokens_are_prompt;if(n&&(this.next_tokens_are_prompt=!1,this.skip_prompt))return;let a=e[0];(t=this.token_callback_function)?.call(this,a),this.token_cache=(0,r.mergeArrays)(this.token_cache,a);let o=this.tokenizer.decode(this.token_cache,this.decode_kwargs),s;n||o.endsWith(` -`)?(s=o.slice(this.print_len),this.token_cache=[],this.print_len=0):o.length>0&&(0,i.is_chinese_char)(o.charCodeAt(o.length-1))?(s=o.slice(this.print_len),this.print_len+=s.length):(s=o.slice(this.print_len,o.lastIndexOf(` `)+1),this.print_len+=s.length),this.on_finalized_text(s,!1)}end(){let e;if(this.token_cache.length>0){let t=this.tokenizer.decode(this.token_cache,this.decode_kwargs);e=t.slice(this.print_len),this.token_cache=[],this.print_len=0}else e=``;this.next_tokens_are_prompt=!0,this.on_finalized_text(e,!0)}on_finalized_text(e,t){var n,r;e.length>0&&(n=this.callback_function)?.call(this,e),t&&this.callback_function===s&&a.apis.IS_PROCESS_AVAILABLE&&(r=this.callback_function)?.call(this,` -`)}}class l extends c{constructor(e,{skip_prompt:t=!1,callback_function:n=null,token_callback_function:r=null,on_chunk_start:i=null,on_chunk_end:a=null,on_finalize:o=null,time_precision:s=.02,skip_special_tokens:c=!0,decode_kwargs:l={}}={}){super(e,{skip_prompt:t,skip_special_tokens:c,callback_function:n,token_callback_function:r,decode_kwargs:l}),this.timestamp_begin=e.timestamp_begin,this.on_chunk_start=i,this.on_chunk_end=a,this.on_finalize=o,this.time_precision=s,this.waiting_for_timestamp=!1}put(e){if(e.length>1)throw Error(`WhisperTextStreamer only supports batch size of 1`);let t=e[0];if(t.length===1){let e=Number(t[0])-this.timestamp_begin;if(e>=0){var n,r,i;let a=e*this.time_precision;this.waiting_for_timestamp?(n=this.on_chunk_end)?.call(this,a):(r=this.on_chunk_start)?.call(this,a),this.waiting_for_timestamp=!this.waiting_for_timestamp,(i=this.token_callback_function)?.call(this,t);return}}return super.put(e)}end(){var e;super.end(),(e=this.on_finalize)?.call(this)}}},"./src/models.js":(t,n,r)=>{r.r(n),r.d(n,{ASTForAudioClassification:()=>jn,ASTModel:()=>An,ASTPreTrainedModel:()=>kn,AlbertForMaskedLM:()=>Ut,AlbertForQuestionAnswering:()=>Ht,AlbertForSequenceClassification:()=>Vt,AlbertModel:()=>Bt,AlbertPreTrainedModel:()=>zt,AutoModel:()=>uu,AutoModelForAudioClassification:()=>ku,AutoModelForAudioFrameClassification:()=>ju,AutoModelForAudioTextToText:()=>Bu,AutoModelForCTC:()=>Ou,AutoModelForCausalLM:()=>_u,AutoModelForDepthEstimation:()=>Fu,AutoModelForDocumentQuestionAnswering:()=>Mu,AutoModelForImageClassification:()=>xu,AutoModelForImageFeatureExtraction:()=>Ru,AutoModelForImageMatting:()=>Nu,AutoModelForImageSegmentation:()=>Su,AutoModelForImageTextToText:()=>zu,AutoModelForImageToImage:()=>Pu,AutoModelForMaskGeneration:()=>Du,AutoModelForMaskedLM:()=>vu,AutoModelForNormalEstimation:()=>Iu,AutoModelForObjectDetection:()=>Tu,AutoModelForPoseEstimation:()=>Lu,AutoModelForQuestionAnswering:()=>yu,AutoModelForSemanticSegmentation:()=>Cu,AutoModelForSeq2SeqLM:()=>pu,AutoModelForSequenceClassification:()=>du,AutoModelForSpeechSeq2Seq:()=>mu,AutoModelForTextToSpectrogram:()=>hu,AutoModelForTextToWaveform:()=>gu,AutoModelForTokenClassification:()=>fu,AutoModelForUniversalSegmentation:()=>wu,AutoModelForVision2Seq:()=>bu,AutoModelForXVector:()=>Au,AutoModelForZeroShotObjectDetection:()=>Eu,BartForConditionalGeneration:()=>tn,BartForSequenceClassification:()=>nn,BartModel:()=>en,BartPretrainedModel:()=>$t,BaseModelOutput:()=>me,BeitForImageClassification:()=>Da,BeitModel:()=>Ea,BeitPreTrainedModel:()=>Ta,BertForMaskedLM:()=>_e,BertForQuestionAnswering:()=>ye,BertForSequenceClassification:()=>R,BertForTokenClassification:()=>ve,BertModel:()=>ge,BertPreTrainedModel:()=>he,BlenderbotForConditionalGeneration:()=>un,BlenderbotModel:()=>ln,BlenderbotPreTrainedModel:()=>cn,BlenderbotSmallForConditionalGeneration:()=>pn,BlenderbotSmallModel:()=>fn,BlenderbotSmallPreTrainedModel:()=>dn,BloomForCausalLM:()=>Li,BloomModel:()=>Ii,BloomPreTrainedModel:()=>Fi,CLIPModel:()=>nr,CLIPPreTrainedModel:()=>K,CLIPSegForImageSegmentation:()=>mr,CLIPSegModel:()=>Z,CLIPSegPreTrainedModel:()=>pr,CLIPTextModel:()=>rr,CLIPTextModelWithProjection:()=>ir,CLIPVisionModel:()=>ar,CLIPVisionModelWithProjection:()=>q,CamembertForMaskedLM:()=>Xe,CamembertForQuestionAnswering:()=>$e,CamembertForSequenceClassification:()=>Ze,CamembertForTokenClassification:()=>Qe,CamembertModel:()=>Ye,CamembertPreTrainedModel:()=>Je,CausalLMOutput:()=>Ku,CausalLMOutputWithPast:()=>qu,ChineseCLIPModel:()=>lr,ChineseCLIPPreTrainedModel:()=>cr,ClapAudioModelWithProjection:()=>mc,ClapModel:()=>fc,ClapPreTrainedModel:()=>dc,ClapTextModelWithProjection:()=>pc,CodeGenForCausalLM:()=>Fr,CodeGenModel:()=>Pr,CodeGenPreTrainedModel:()=>Nr,CohereForCausalLM:()=>ci,CohereModel:()=>si,CoherePreTrainedModel:()=>oi,ConvBertForMaskedLM:()=>Be,ConvBertForQuestionAnswering:()=>He,ConvBertForSequenceClassification:()=>B,ConvBertForTokenClassification:()=>Ve,ConvBertModel:()=>ze,ConvBertPreTrainedModel:()=>Re,ConvNextForImageClassification:()=>Vo,ConvNextModel:()=>Bo,ConvNextPreTrainedModel:()=>zo,ConvNextV2ForImageClassification:()=>Wo,ConvNextV2Model:()=>Uo,ConvNextV2PreTrainedModel:()=>Ho,DFineForObjectDetection:()=>Ja,DFineModel:()=>qa,DFinePreTrainedModel:()=>Ka,DPTForDepthEstimation:()=>vo,DPTModel:()=>_o,DPTPreTrainedModel:()=>go,DacDecoderModel:()=>yl,DacDecoderOutput:()=>gl,DacEncoderModel:()=>vl,DacEncoderOutput:()=>hl,DacModel:()=>_l,DacPreTrainedModel:()=>ml,DebertaForMaskedLM:()=>nt,DebertaForQuestionAnswering:()=>at,DebertaForSequenceClassification:()=>rt,DebertaForTokenClassification:()=>it,DebertaModel:()=>tt,DebertaPreTrainedModel:()=>et,DebertaV2ForMaskedLM:()=>ct,DebertaV2ForQuestionAnswering:()=>dt,DebertaV2ForSequenceClassification:()=>lt,DebertaV2ForTokenClassification:()=>ut,DebertaV2Model:()=>st,DebertaV2PreTrainedModel:()=>ot,DecisionTransformerModel:()=>Jc,DecisionTransformerPreTrainedModel:()=>qc,DeiTForImageClassification:()=>to,DeiTModel:()=>eo,DeiTPreTrainedModel:()=>$a,DepthAnythingForDepthEstimation:()=>bo,DepthAnythingPreTrainedModel:()=>yo,DepthProForDepthEstimation:()=>Eo,DepthProPreTrainedModel:()=>To,DetrForObjectDetection:()=>Aa,DetrForSegmentation:()=>ja,DetrModel:()=>ka,DetrObjectDetectionOutput:()=>Ma,DetrPreTrainedModel:()=>Oa,DetrSegmentationOutput:()=>Na,Dinov2ForImageClassification:()=>qo,Dinov2Model:()=>Ko,Dinov2PreTrainedModel:()=>Go,Dinov2WithRegistersForImageClassification:()=>Xo,Dinov2WithRegistersModel:()=>Yo,Dinov2WithRegistersPreTrainedModel:()=>Jo,DistilBertForMaskedLM:()=>_t,DistilBertForQuestionAnswering:()=>gt,DistilBertForSequenceClassification:()=>mt,DistilBertForTokenClassification:()=>ht,DistilBertModel:()=>pt,DistilBertPreTrainedModel:()=>ft,DonutSwinModel:()=>Ro,DonutSwinPreTrainedModel:()=>Lo,EfficientNetForImageClassification:()=>Ec,EfficientNetModel:()=>Tc,EfficientNetPreTrainedModel:()=>wc,ElectraForMaskedLM:()=>We,ElectraForQuestionAnswering:()=>qe,ElectraForSequenceClassification:()=>Ge,ElectraForTokenClassification:()=>Ke,ElectraModel:()=>V,ElectraPreTrainedModel:()=>Ue,EsmForMaskedLM:()=>bt,EsmForSequenceClassification:()=>xt,EsmForTokenClassification:()=>St,EsmModel:()=>yt,EsmPreTrainedModel:()=>vt,ExaoneForCausalLM:()=>qr,ExaoneModel:()=>Kr,ExaonePreTrainedModel:()=>Gr,FalconForCausalLM:()=>uc,FalconModel:()=>lc,FalconPreTrainedModel:()=>cc,FastViTForImageClassification:()=>ua,FastViTModel:()=>la,FastViTPreTrainedModel:()=>ca,Florence2ForConditionalGeneration:()=>Gn,Florence2PreTrainedModel:()=>Wn,GLPNForDepthEstimation:()=>Io,GLPNModel:()=>Fo,GLPNPreTrainedModel:()=>Po,GPT2LMHeadModel:()=>_r,GPT2Model:()=>gr,GPT2PreTrainedModel:()=>hr,GPTBigCodeForCausalLM:()=>Mr,GPTBigCodeModel:()=>jr,GPTBigCodePreTrainedModel:()=>Ar,GPTJForCausalLM:()=>kr,GPTJModel:()=>Or,GPTJPreTrainedModel:()=>Dr,GPTNeoForCausalLM:()=>Cr,GPTNeoModel:()=>Sr,GPTNeoPreTrainedModel:()=>xr,GPTNeoXForCausalLM:()=>Er,GPTNeoXModel:()=>Tr,GPTNeoXPreTrainedModel:()=>wr,Gemma2ForCausalLM:()=>mi,Gemma2Model:()=>pi,Gemma2PreTrainedModel:()=>fi,Gemma3ForCausalLM:()=>_i,Gemma3Model:()=>gi,Gemma3PreTrainedModel:()=>hi,Gemma3nForConditionalGeneration:()=>Xn,Gemma3nPreTrainedModel:()=>Yn,GemmaForCausalLM:()=>di,GemmaModel:()=>ui,GemmaPreTrainedModel:()=>li,GlmForCausalLM:()=>Wr,GlmModel:()=>Ur,GlmPreTrainedModel:()=>Hr,GraniteForCausalLM:()=>ai,GraniteModel:()=>ii,GranitePreTrainedModel:()=>ri,GroundingDinoForObjectDetection:()=>Qo,GroundingDinoPreTrainedModel:()=>Zo,GroupViTModel:()=>sa,GroupViTPreTrainedModel:()=>oa,HeliumForCausalLM:()=>Vr,HeliumModel:()=>Br,HeliumPreTrainedModel:()=>zr,HieraForImageClassification:()=>io,HieraModel:()=>ro,HieraPreTrainedModel:()=>no,HubertForCTC:()=>zs,HubertForSequenceClassification:()=>Bs,HubertModel:()=>Rs,HubertPreTrainedModel:()=>Ls,IJepaForImageClassification:()=>Yi,IJepaModel:()=>Ji,IJepaPreTrainedModel:()=>qi,Idefics3ForConditionalGeneration:()=>Qn,Idefics3PreTrainedModel:()=>Zn,ImageMattingOutput:()=>Ju,JAISLMHeadModel:()=>br,JAISModel:()=>yr,JAISPreTrainedModel:()=>vr,JinaCLIPModel:()=>X,JinaCLIPPreTrainedModel:()=>ur,JinaCLIPTextModel:()=>dr,JinaCLIPVisionModel:()=>fr,LiteWhisperForConditionalGeneration:()=>Fn,LlamaForCausalLM:()=>Rr,LlamaModel:()=>Lr,LlamaPreTrainedModel:()=>Ir,LlavaForConditionalGeneration:()=>Vn,LlavaOnevisionForConditionalGeneration:()=>Hn,LlavaPreTrainedModel:()=>Bn,LlavaQwen2ForCausalLM:()=>Jn,LongT5ForConditionalGeneration:()=>Yt,LongT5Model:()=>Jt,LongT5PreTrainedModel:()=>qt,M2M100ForConditionalGeneration:()=>ps,M2M100Model:()=>fs,M2M100PreTrainedModel:()=>ds,MBartForCausalLM:()=>sn,MBartForConditionalGeneration:()=>H,MBartForSequenceClassification:()=>on,MBartModel:()=>an,MBartPreTrainedModel:()=>rn,MPNetForMaskedLM:()=>At,MPNetForQuestionAnswering:()=>Nt,MPNetForSequenceClassification:()=>jt,MPNetForTokenClassification:()=>Mt,MPNetModel:()=>kt,MPNetPreTrainedModel:()=>Ot,MT5ForConditionalGeneration:()=>Qt,MT5Model:()=>Zt,MT5PreTrainedModel:()=>Xt,MarianMTModel:()=>us,MarianModel:()=>ls,MarianPreTrainedModel:()=>cs,MaskFormerForInstanceSegmentation:()=>No,MaskFormerModel:()=>Mo,MaskFormerPreTrainedModel:()=>jo,MaskedLMOutput:()=>Wu,Metric3DForDepthEstimation:()=>Oo,Metric3DPreTrainedModel:()=>Do,Metric3Dv2ForDepthEstimation:()=>Ao,Metric3Dv2PreTrainedModel:()=>ko,MgpstrForSceneTextRecognition:()=>$c,MgpstrModelOutput:()=>Zc,MgpstrPreTrainedModel:()=>Qc,MimiDecoderModel:()=>pl,MimiDecoderOutput:()=>ul,MimiEncoderModel:()=>fl,MimiEncoderOutput:()=>ll,MimiModel:()=>dl,MimiPreTrainedModel:()=>cl,MistralForCausalLM:()=>ic,MistralModel:()=>rc,MistralPreTrainedModel:()=>nc,MobileBertForMaskedLM:()=>Tt,MobileBertForQuestionAnswering:()=>Dt,MobileBertForSequenceClassification:()=>Et,MobileBertModel:()=>wt,MobileBertPreTrainedModel:()=>Ct,MobileLLMForCausalLM:()=>Xr,MobileLLMModel:()=>Yr,MobileLLMPreTrainedModel:()=>Jr,MobileNetV1ForImageClassification:()=>Nc,MobileNetV1ForSemanticSegmentation:()=>Pc,MobileNetV1Model:()=>Mc,MobileNetV1PreTrainedModel:()=>jc,MobileNetV2ForImageClassification:()=>Lc,MobileNetV2ForSemanticSegmentation:()=>Rc,MobileNetV2Model:()=>Ic,MobileNetV2PreTrainedModel:()=>Fc,MobileNetV3ForImageClassification:()=>Vc,MobileNetV3ForSemanticSegmentation:()=>Hc,MobileNetV3Model:()=>Bc,MobileNetV3PreTrainedModel:()=>zc,MobileNetV4ForImageClassification:()=>Gc,MobileNetV4ForSemanticSegmentation:()=>Kc,MobileNetV4Model:()=>Wc,MobileNetV4PreTrainedModel:()=>Uc,MobileViTForImageClassification:()=>ha,MobileViTModel:()=>ma,MobileViTPreTrainedModel:()=>pa,MobileViTV2ForImageClassification:()=>va,MobileViTV2Model:()=>_a,MobileViTV2PreTrainedModel:()=>ga,ModelOutput:()=>pe,ModernBertForMaskedLM:()=>Oe,ModernBertForSequenceClassification:()=>ke,ModernBertForTokenClassification:()=>Ae,ModernBertModel:()=>De,ModernBertPreTrainedModel:()=>Ee,Moondream1ForConditionalGeneration:()=>Un,MoonshineForConditionalGeneration:()=>Rn,MoonshineModel:()=>Ln,MoonshinePreTrainedModel:()=>In,MptForCausalLM:()=>Bi,MptModel:()=>zi,MptPreTrainedModel:()=>Ri,MultiModalityCausalLM:()=>Xc,MultiModalityPreTrainedModel:()=>Yc,MusicgenForCausalLM:()=>kc,MusicgenForConditionalGeneration:()=>Ac,MusicgenModel:()=>Oc,MusicgenPreTrainedModel:()=>Dc,NeoBertForMaskedLM:()=>Se,NeoBertForQuestionAnswering:()=>Te,NeoBertForSequenceClassification:()=>Ce,NeoBertForTokenClassification:()=>we,NeoBertModel:()=>xe,NeoBertPreTrainedModel:()=>be,NomicBertModel:()=>Me,NomicBertPreTrainedModel:()=>je,OPTForCausalLM:()=>Ui,OPTModel:()=>Hi,OPTPreTrainedModel:()=>Vi,Olmo2ForCausalLM:()=>ni,Olmo2Model:()=>ti,Olmo2PreTrainedModel:()=>ei,OlmoForCausalLM:()=>$r,OlmoModel:()=>Qr,OlmoPreTrainedModel:()=>Zr,OpenELMForCausalLM:()=>bi,OpenELMModel:()=>yi,OpenELMPreTrainedModel:()=>vi,OwlViTForObjectDetection:()=>xa,OwlViTModel:()=>ba,OwlViTPreTrainedModel:()=>ya,Owlv2ForObjectDetection:()=>wa,Owlv2Model:()=>Ca,Owlv2PreTrainedModel:()=>Sa,PaliGemmaForConditionalGeneration:()=>qn,PaliGemmaPreTrainedModel:()=>Kn,PatchTSMixerForPrediction:()=>al,PatchTSMixerModel:()=>il,PatchTSMixerPreTrainedModel:()=>rl,PatchTSTForPrediction:()=>nl,PatchTSTModel:()=>tl,PatchTSTPreTrainedModel:()=>el,Phi3ForCausalLM:()=>Pi,Phi3Model:()=>Ni,Phi3PreTrainedModel:()=>Mi,Phi3VForCausalLM:()=>tr,Phi3VPreTrainedModel:()=>er,PhiForCausalLM:()=>ji,PhiModel:()=>Ai,PhiPreTrainedModel:()=>ki,PreTrainedModel:()=>L,PretrainedMixin:()=>wl,PvtForImageClassification:()=>ea,PvtModel:()=>$i,PvtPreTrainedModel:()=>Qi,PyAnnoteForAudioFrameClassification:()=>xs,PyAnnoteModel:()=>bs,PyAnnotePreTrainedModel:()=>ys,QuestionAnsweringModelOutput:()=>Gu,Qwen2ForCausalLM:()=>Ci,Qwen2Model:()=>Si,Qwen2PreTrainedModel:()=>xi,Qwen2VLForConditionalGeneration:()=>Oi,Qwen2VLPreTrainedModel:()=>Di,Qwen3ForCausalLM:()=>Ei,Qwen3Model:()=>Ti,Qwen3PreTrainedModel:()=>wi,RFDetrForObjectDetection:()=>Wa,RFDetrModel:()=>Ua,RFDetrObjectDetectionOutput:()=>Ga,RFDetrPreTrainedModel:()=>Ha,RTDetrForObjectDetection:()=>Ia,RTDetrModel:()=>Fa,RTDetrObjectDetectionOutput:()=>La,RTDetrPreTrainedModel:()=>Pa,RTDetrV2ForObjectDetection:()=>Ba,RTDetrV2Model:()=>za,RTDetrV2ObjectDetectionOutput:()=>Va,RTDetrV2PreTrainedModel:()=>Ra,ResNetForImageClassification:()=>so,ResNetModel:()=>oo,ResNetPreTrainedModel:()=>ao,RoFormerForMaskedLM:()=>Pe,RoFormerForQuestionAnswering:()=>Le,RoFormerForSequenceClassification:()=>Fe,RoFormerForTokenClassification:()=>Ie,RoFormerModel:()=>z,RoFormerPreTrainedModel:()=>Ne,RobertaForMaskedLM:()=>hn,RobertaForQuestionAnswering:()=>_n,RobertaForSequenceClassification:()=>gn,RobertaForTokenClassification:()=>W,RobertaModel:()=>mn,RobertaPreTrainedModel:()=>U,SamImageSegmentationOutput:()=>ss,SamModel:()=>os,SamPreTrainedModel:()=>rs,SapiensForDepthEstimation:()=>Co,SapiensForNormalEstimation:()=>wo,SapiensForSemanticSegmentation:()=>So,SapiensPreTrainedModel:()=>xo,SegformerForImageClassification:()=>yc,SegformerForSemanticSegmentation:()=>bc,SegformerModel:()=>vc,SegformerPreTrainedModel:()=>_c,Seq2SeqLMOutput:()=>Vu,SequenceClassifierOutput:()=>Q,SiglipModel:()=>J,SiglipPreTrainedModel:()=>or,SiglipTextModel:()=>Y,SiglipVisionModel:()=>sr,SmolVLMForConditionalGeneration:()=>$n,SnacDecoderModel:()=>Cl,SnacEncoderModel:()=>Sl,SnacModel:()=>xl,SnacPreTrainedModel:()=>bl,SpeechT5ForSpeechToText:()=>Zs,SpeechT5ForTextToSpeech:()=>Qs,SpeechT5HifiGan:()=>$s,SpeechT5Model:()=>Xs,SpeechT5PreTrainedModel:()=>Ys,SqueezeBertForMaskedLM:()=>It,SqueezeBertForQuestionAnswering:()=>Rt,SqueezeBertForSequenceClassification:()=>Lt,SqueezeBertModel:()=>Ft,SqueezeBertPreTrainedModel:()=>Pt,StableLmForCausalLM:()=>Cc,StableLmModel:()=>Sc,StableLmPreTrainedModel:()=>xc,Starcoder2ForCausalLM:()=>sc,Starcoder2Model:()=>oc,Starcoder2PreTrainedModel:()=>ac,StyleTextToSpeech2Model:()=>Js,StyleTextToSpeech2PreTrainedModel:()=>qs,Swin2SRForImageSuperResolution:()=>ho,Swin2SRModel:()=>mo,Swin2SRPreTrainedModel:()=>po,SwinForImageClassification:()=>uo,SwinForSemanticSegmentation:()=>fo,SwinModel:()=>lo,SwinPreTrainedModel:()=>co,T5ForConditionalGeneration:()=>Kt,T5Model:()=>Gt,T5PreTrainedModel:()=>Wt,TableTransformerForObjectDetection:()=>Za,TableTransformerModel:()=>Xa,TableTransformerObjectDetectionOutput:()=>Qa,TableTransformerPreTrainedModel:()=>Ya,TokenClassifierOutput:()=>Uu,TrOCRForCausalLM:()=>tc,TrOCRPreTrainedModel:()=>ec,UltravoxModel:()=>sl,UltravoxPreTrainedModel:()=>ol,UniSpeechForCTC:()=>Es,UniSpeechForSequenceClassification:()=>Ds,UniSpeechModel:()=>Ts,UniSpeechPreTrainedModel:()=>ws,UniSpeechSatForAudioFrameClassification:()=>Ms,UniSpeechSatForCTC:()=>As,UniSpeechSatForSequenceClassification:()=>js,UniSpeechSatModel:()=>ks,UniSpeechSatPreTrainedModel:()=>Os,ViTForImageClassification:()=>Ki,ViTMAEModel:()=>na,ViTMAEPreTrainedModel:()=>ta,ViTMSNForImageClassification:()=>aa,ViTMSNModel:()=>ia,ViTMSNPreTrainedModel:()=>ra,ViTModel:()=>Gi,ViTPreTrainedModel:()=>Wi,VisionEncoderDecoderModel:()=>zn,VitMatteForImageMatting:()=>fa,VitMattePreTrainedModel:()=>da,VitPoseForPoseEstimation:()=>Zi,VitPosePreTrainedModel:()=>Xi,VitsModel:()=>gc,VitsModelOutput:()=>Yu,VitsPreTrainedModel:()=>hc,Wav2Vec2BertForCTC:()=>Fs,Wav2Vec2BertForSequenceClassification:()=>Is,Wav2Vec2BertModel:()=>Ps,Wav2Vec2BertPreTrainedModel:()=>Ns,Wav2Vec2ForAudioFrameClassification:()=>vs,Wav2Vec2ForCTC:()=>gs,Wav2Vec2ForSequenceClassification:()=>_s,Wav2Vec2Model:()=>hs,Wav2Vec2PreTrainedModel:()=>ms,WavLMForAudioFrameClassification:()=>Ks,WavLMForCTC:()=>Us,WavLMForSequenceClassification:()=>Ws,WavLMForXVector:()=>Gs,WavLMModel:()=>Hs,WavLMPreTrainedModel:()=>Vs,WeSpeakerResNetModel:()=>Cs,WeSpeakerResNetPreTrainedModel:()=>Ss,WhisperForConditionalGeneration:()=>Pn,WhisperModel:()=>Nn,WhisperPreTrainedModel:()=>Mn,XLMForQuestionAnswering:()=>Sn,XLMForSequenceClassification:()=>G,XLMForTokenClassification:()=>xn,XLMModel:()=>yn,XLMPreTrainedModel:()=>vn,XLMRobertaForMaskedLM:()=>Tn,XLMRobertaForQuestionAnswering:()=>On,XLMRobertaForSequenceClassification:()=>En,XLMRobertaForTokenClassification:()=>Dn,XLMRobertaModel:()=>wn,XLMRobertaPreTrainedModel:()=>Cn,XLMWithLMHeadModel:()=>bn,XVectorOutput:()=>Hu,YolosForObjectDetection:()=>ts,YolosModel:()=>es,YolosObjectDetectionOutput:()=>ns,YolosPreTrainedModel:()=>$o});var i=r( -/*! ./configs.js */ -`./src/configs.js`),a=r( -/*! ./backends/onnx.js */ -`./src/backends/onnx.js`),o=r( -/*! ./utils/dtypes.js */ -`./src/utils/dtypes.js`),s=r( -/*! ./utils/generic.js */ -`./src/utils/generic.js`),c=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),l=r( -/*! ./utils/hub.js */ -`./src/utils/hub.js`),u=r( -/*! ./utils/constants.js */ -`./src/utils/constants.js`),d=r( -/*! ./generation/logits_process.js */ -`./src/generation/logits_process.js`),f=r( -/*! ./generation/configuration_utils.js */ -`./src/generation/configuration_utils.js`),p=r( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),m=r( -/*! ./utils/image.js */ -`./src/utils/image.js`),h=r( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),g=r( -/*! ./generation/stopping_criteria.js */ -`./src/generation/stopping_criteria.js`),_=r( -/*! ./generation/logits_sampler.js */ -`./src/generation/logits_sampler.js`),v=r( -/*! ./env.js */ -`./src/env.js`),y=r( -/*! ./models/whisper/generation_whisper.js */ -`./src/models/whisper/generation_whisper.js`),b=r( -/*! ./models/whisper/common_whisper.js */ -`./src/models/whisper/common_whisper.js`);let x={EncoderOnly:0,EncoderDecoder:1,Seq2Seq:2,Vision2Seq:3,DecoderOnly:4,MaskGeneration:5,ImageTextToText:6,Musicgen:7,MultiModality:8,Phi3V:9,AudioTextToText:10,AutoEncoder:11,ImageAudioTextToText:12},S=new Map,C=new Map,w=new Map;async function T(e,t,n){var r;let s=(r=n.config)?.[`transformers.js_config`]??{},c=n.device??s.device;c&&typeof c!=`string`&&(c.hasOwnProperty(t)?c=c[t]:(console.warn(`device not specified for "${t}". Using the default device.`),c=null));let u=c??(v.apis.IS_NODE_ENV?`cpu`:`wasm`),d=(0,a.deviceToExecutionProviders)(u),f=s.device_config??{};f.hasOwnProperty(u)&&(s={...s,...f[u]});let p=n.dtype??s.dtype;if(typeof p!=`string`&&(p&&p.hasOwnProperty(t)?p=p[t]:(p=o.DEFAULT_DEVICE_DTYPE_MAPPING[u]??o.DATA_TYPES.fp32,console.warn(`dtype not specified for "${t}". Using the default dtype (${p}) for this device (${u}).`))),p===o.DATA_TYPES.auto){let e=s.dtype;typeof e!=`string`&&(e=e?.[t]),p=e&&e!==o.DATA_TYPES.auto&&o.DATA_TYPES.hasOwnProperty(e)?e:o.DEFAULT_DEVICE_DTYPE_MAPPING[u]??o.DATA_TYPES.fp32}let m=p;if(o.DEFAULT_DTYPE_SUFFIX_MAPPING.hasOwnProperty(m)){if(m===o.DATA_TYPES.fp16&&u===`webgpu`&&!await(0,o.isWebGpuFp16Supported)())throw Error(`The device (${u}) does not support fp16.`)}else throw Error(`Invalid dtype: ${m}. Should be one of: ${Object.keys(o.DATA_TYPES).join(`, `)}`);let h=s.kv_cache_dtype,g=h?typeof h==`string`?h:h[m]??`float32`:void 0;if(g&&![`float32`,`float16`].includes(g))throw Error(`Invalid kv_cache_dtype: ${g}. Should be one of: float32, float16`);let _={dtype:m,kv_cache_dtype:g,device:u},y=o.DEFAULT_DTYPE_SUFFIX_MAPPING[m],b=`${t}${y}.onnx`,x=`${n.subfolder??``}/${b}`,S={...n.session_options};S.executionProviders??=d;let C=s.free_dimension_overrides;C?S.freeDimensionOverrides??=C:u.startsWith(`webnn`)&&!S.freeDimensionOverrides&&console.warn(`WebNN does not currently support dynamic shapes and requires 'free_dimension_overrides' to be set in config.json, preferably as a field within config["transformers.js_config"]["device_config"]["${u}"]. When 'free_dimension_overrides' is not set, you may experience significant performance degradation.`);let w=v.apis.IS_NODE_ENV&&v.env.useFSCache,T=(0,l.getModelFile)(e,x,!0,n,w),E=n.use_external_data_format??s.use_external_data_format,D=[];if(E){let r;r=typeof E==`object`?E.hasOwnProperty(b)?E[b]:E.hasOwnProperty(t)?E[t]:!1:E;let i=+r;if(i>l.MAX_EXTERNAL_DATA_CHUNKS)throw Error(`The number of external data chunks (${i}) exceeds the maximum allowed value (${l.MAX_EXTERNAL_DATA_CHUNKS}).`);for(let t=0;t{let o=await(0,l.getModelFile)(e,i,!0,n,w);t(o instanceof Uint8Array?{path:r,data:o}:r)}))}}else S.externalData!==void 0&&(D=S.externalData.map(async t=>{if(typeof t.data==`string`){let r=await(0,l.getModelFile)(e,t.data,!0,n);return{...t,data:r}}return t}));if(D.length>0){let e=await Promise.all(D);v.apis.IS_NODE_ENV||(S.externalData=e)}if(u===`webgpu`){let e=(0,i.getKeyValueShapes)(n.config,{prefix:`present`});if(Object.keys(e).length>0&&!(0,a.isONNXProxy)()){let t={};for(let n in e)t[n]=`gpu-buffer`;S.preferredOutputLocation=t}}let O=await T;return{buffer_or_path:O,session_options:S,session_config:_}}async function E(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let{buffer_or_path:i,session_options:o,session_config:s}=await T(e,t[r],n),c=await(0,a.createInferenceSession)(i,o,s);return[r,c]})))}async function D(e,t,n){return Object.fromEntries(await Promise.all(Object.keys(t).map(async r=>{let i=await(0,l.getModelJSON)(e,t[r],!1,n);return[r,i]})))}function O(e,t){let n=Object.create(null),r=[];for(let i of e.inputNames){let e=t[i];if(!(e instanceof p.Tensor)){r.push(i);continue}n[i]=(0,a.isONNXProxy)()?e.clone():e}if(r.length>0)throw Error(`An error occurred during model execution: "Missing the following inputs: ${r.join(`, `)}.`);let i=Object.keys(t).length,o=e.inputNames.length;if(i>o){let n=Object.keys(t).filter(t=>!e.inputNames.includes(t));console.warn(`WARNING: Too many inputs were provided (${i} > ${o}). The following inputs will be ignored: "${n.join(`, `)}".`)}return n}let k=Promise.resolve();async function A(e,t){let n=O(e,t);try{let t=Object.fromEntries(Object.entries(n).map(([e,t])=>[e,t.ort_tensor])),r=()=>e.run(t),i=await(v.apis.IS_BROWSER_ENV||v.apis.IS_WEBWORKER_ENV?k=k.then(r):r());return ee(i)}catch(e){let t=Object.fromEntries(Object.entries(n).map(([e,t])=>{let n={type:t.type,dims:t.dims,location:t.location};return n.location!==`gpu-buffer`&&(n.data=t.data),[e,n]}));throw console.error(`An error occurred during model execution: "${e}".`),console.error(`Inputs given to model:`,t),e}}function ee(e){for(let t in e)(0,a.isONNXTensor)(e[t])?e[t]=new p.Tensor(e[t]):typeof e[t]==`object`&&ee(e[t]);return e}function te(e){if(e instanceof p.Tensor)return e;if(e.length===0)throw Error(`items must be non-empty`);if(Array.isArray(e[0])){if(e.some(t=>t.length!==e[0].length))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' and/or 'truncation=True' to have batched tensors with the same length.`);return new p.Tensor(`int64`,BigInt64Array.from(e.flat().map(e=>BigInt(e))),[e.length,e[0].length])}else return new p.Tensor(`int64`,BigInt64Array.from(e.map(e=>BigInt(e))),[1,e.length])}function ne(e){return new p.Tensor(`bool`,[e],[1])}async function re(e,t){let{encoder_outputs:n,input_ids:r,decoder_input_ids:i,...a}=t;if(!n){let r=(0,c.pick)(t,e.sessions.model.inputNames);n=(await j(e,r)).last_hidden_state}a.input_ids=i,a.encoder_hidden_states=n,e.sessions.decoder_model_merged.inputNames.includes(`encoder_attention_mask`)&&(a.encoder_attention_mask=t.attention_mask);let o=await ae(e,a,!0);return o}async function j(e,t){let n=e.sessions.model,r=(0,c.pick)(t,n.inputNames);if(n.inputNames.includes(`inputs_embeds`)&&!r.inputs_embeds){if(!t.input_ids)throw Error("Both `input_ids` and `inputs_embeds` are missing in the model inputs.");r.inputs_embeds=await e.encode_text({input_ids:t.input_ids})}if(n.inputNames.includes(`token_type_ids`)&&!r.token_type_ids){if(!r.input_ids)throw Error("Both `input_ids` and `token_type_ids` are missing in the model inputs.");r.token_type_ids=(0,p.zeros_like)(r.input_ids)}if(n.inputNames.includes(`pixel_mask`)&&!r.pixel_mask){if(!r.pixel_values)throw Error("Both `pixel_values` and `pixel_mask` are missing in the model inputs.");let e=r.pixel_values.dims;r.pixel_mask=(0,p.ones)([e[0],e[2],e[3]])}return await A(n,r)}async function ie(e,t){let n=await e.encode(t),r=await e.decode(n);return r}async function ae(e,t,n=!1){let r=e.sessions[n?`decoder_model_merged`:`model`],{past_key_values:i,...a}=t;if(r.inputNames.includes(`use_cache_branch`)&&(a.use_cache_branch=ne(!!i)),r.inputNames.includes(`position_ids`)&&a.attention_mask&&!a.position_ids){let t=[`paligemma`,`gemma3_text`,`gemma3`].includes(e.config.model_type)?1:0;a.position_ids=de(a,i,t)}e.addPastKeyValues(a,i);let o=(0,c.pick)(a,r.inputNames);return await A(r,o)}function oe({modality_token_id:e,inputs_embeds:t,modality_features:n,input_ids:r,attention_mask:i}){let a=r.tolist().map(t=>t.reduce((t,n,r)=>(n==e&&t.push(r),t),[])),o=a.reduce((e,t)=>e+t.length,0),s=n.dims[0];if(o!==s)throw Error(`Number of tokens and features do not match: tokens: ${o}, features ${s}`);let c=0;for(let e=0;ee.dims[1]||i[e.at(-1)])),{...n,decoder_input_ids:te(t)}}function F(e,...t){return e.config.is_encoder_decoder?P(e,...t):fe(e,...t)}function I(e,t,n,r){let i=!!n.past_key_values;if(r.guidance_scale!==null&&r.guidance_scale>1&&(i?n.input_ids=(0,p.cat)([n.input_ids,n.input_ids],0):(n.input_ids=(0,p.cat)([n.input_ids,(0,p.full_like)(n.input_ids,BigInt(r.pad_token_id))],0),n.attention_mask=(0,p.cat)([n.attention_mask,(0,p.full_like)(n.attention_mask,0n)],0))),(i||!n.pixel_values)&&(n.pixel_values=(0,p.full)([0,0,3,384,384],1)),i){let e=0,t=1,r=e>0?1:0,i=1;n.images_seq_mask=new p.Tensor(`bool`,Array(e+t).fill(!0).fill(!1,0,t),[i,e+t]),n.images_emb_mask=new p.Tensor(`bool`,Array(e).fill(!!r),[i,1,e])}return n}class L extends s.Callable{constructor(t,n,r){super(),e.defineProperty(this,`main_input_name`,`input_ids`),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`]),this.config=t,this.sessions=n,this.configs=r;let i=w.get(this.constructor),a=S.get(i);switch(this.can_generate=!1,this._forward=null,this._prepare_inputs_for_generation=null,a){case x.DecoderOnly:this.can_generate=!0,this._forward=ae,this._prepare_inputs_for_generation=fe;break;case x.Seq2Seq:case x.Vision2Seq:case x.Musicgen:this.can_generate=!0,this._forward=re,this._prepare_inputs_for_generation=P;break;case x.EncoderDecoder:this._forward=re;break;case x.ImageTextToText:this.can_generate=!0,this._forward=N,this._prepare_inputs_for_generation=F;break;case x.AudioTextToText:this.can_generate=!0,this._forward=M,this._prepare_inputs_for_generation=F;break;case x.Phi3V:case x.ImageAudioTextToText:this.can_generate=!0,this._prepare_inputs_for_generation=F;break;case x.MultiModality:this.can_generate=!0,this._prepare_inputs_for_generation=I;break;case x.AutoEncoder:this._forward=ie;break;default:this._forward=j;break}this.can_generate&&this.forward_params.push(`past_key_values`),this.custom_config=this.config[`transformers.js_config`]??{}}async dispose(){var e;let t=[];for(let n of Object.values(this.sessions))!(n==null||(e=n.handler)==null)&&e.dispose&&t.push(n.handler.dispose());return await Promise.all(t)}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:l=null,dtype:d=null,use_external_data_format:f=null,session_options:p={}}={}){let m={progress_callback:t,config:n,cache_dir:r,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:l,dtype:d,use_external_data_format:f,session_options:p},h=w.get(this),g=S.get(h);n=m.config=await i.AutoConfig.from_pretrained(e,m);let _;if(g===x.DecoderOnly)_=await Promise.all([E(e,{model:m.model_file_name??`model`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.Seq2Seq||g===x.Vision2Seq)_=await Promise.all([E(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.MaskGeneration)_=await Promise.all([E(e,{model:`vision_encoder`,prompt_encoder_mask_decoder:`prompt_encoder_mask_decoder`},m)]);else if(g===x.EncoderDecoder)_=await Promise.all([E(e,{model:`encoder_model`,decoder_model_merged:`decoder_model_merged`},m)]);else if(g===x.ImageTextToText){let t={embed_tokens:`embed_tokens`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};n.is_encoder_decoder&&(t.model=`encoder_model`),_=await Promise.all([E(e,t,m),D(e,{generation_config:`generation_config.json`},m)])}else if(g===x.AudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([E(e,t,m),D(e,{generation_config:`generation_config.json`},m)])}else if(g===x.ImageAudioTextToText){let t={embed_tokens:`embed_tokens`,audio_encoder:`audio_encoder`,vision_encoder:`vision_encoder`,decoder_model_merged:`decoder_model_merged`};_=await Promise.all([E(e,t,m),D(e,{generation_config:`generation_config.json`},m)])}else if(g===x.Musicgen)_=await Promise.all([E(e,{model:`text_encoder`,decoder_model_merged:`decoder_model_merged`,encodec_decode:`encodec_decode`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.MultiModality)_=await Promise.all([E(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`language_model`,lm_head:`lm_head`,gen_head:`gen_head`,gen_img_embeds:`gen_img_embeds`,image_decode:`image_decode`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.Phi3V)_=await Promise.all([E(e,{prepare_inputs_embeds:`prepare_inputs_embeds`,model:`model`,vision_encoder:`vision_encoder`},m),D(e,{generation_config:`generation_config.json`},m)]);else if(g===x.AutoEncoder)_=await Promise.all([E(e,{encoder_model:`encoder_model`,decoder_model:`decoder_model`},m)]);else{if(g!==x.EncoderOnly){let e=h??n?.model_type;e!==`custom`&&console.warn(`Model type for '${e}' not found, assuming encoder-only architecture. Please report this at ${u.GITHUB_ISSUE_URL}.`)}_=await Promise.all([E(e,{model:m.model_file_name??`model`},m)])}return new this(n,..._)}async _call(e){return await this.forward(e)}async forward(e){return await this._forward(this,e)}get generation_config(){var e;return(e=this.configs)?.generation_config??null}_get_logits_warper(e){let t=new d.LogitsProcessorList;return e.temperature!==null&&e.temperature!==1&&t.push(new d.TemperatureLogitsWarper(e.temperature)),e.top_k!==null&&e.top_k!==0&&t.push(new d.TopKLogitsWarper(e.top_k)),e.top_p!==null&&e.top_p<1&&t.push(new d.TopPLogitsWarper(e.top_p)),t}_get_logits_processor(e,t,n=null){let r=new d.LogitsProcessorList;if(e.repetition_penalty!==null&&e.repetition_penalty!==1&&r.push(new d.RepetitionPenaltyLogitsProcessor(e.repetition_penalty)),e.no_repeat_ngram_size!==null&&e.no_repeat_ngram_size>0&&r.push(new d.NoRepeatNGramLogitsProcessor(e.no_repeat_ngram_size)),e.bad_words_ids!==null&&r.push(new d.NoBadWordsLogitsProcessor(e.bad_words_ids,e.eos_token_id)),e.min_length!==null&&e.eos_token_id!==null&&e.min_length>0&&r.push(new d.MinLengthLogitsProcessor(e.min_length,e.eos_token_id)),e.min_new_tokens!==null&&e.eos_token_id!==null&&e.min_new_tokens>0&&r.push(new d.MinNewTokensLengthLogitsProcessor(t,e.min_new_tokens,e.eos_token_id)),e.forced_bos_token_id!==null&&r.push(new d.ForcedBOSTokenLogitsProcessor(e.forced_bos_token_id)),e.forced_eos_token_id!==null&&r.push(new d.ForcedEOSTokenLogitsProcessor(e.max_length,e.forced_eos_token_id)),e.begin_suppress_tokens!==null){let n=t>1||e.forced_bos_token_id===null?t:t+1;r.push(new d.SuppressTokensAtBeginLogitsProcessor(e.begin_suppress_tokens,n))}return e.guidance_scale!==null&&e.guidance_scale>1&&r.push(new d.ClassifierFreeGuidanceLogitsProcessor(e.guidance_scale)),n!==null&&r.extend(n),r}_prepare_generation_config(e,t,n=f.GenerationConfig){let r={...this.config};for(let e of[`decoder`,`generator`,`text_config`])e in r&&Object.assign(r,r[e]);let i=new n(r);return Object.assign(i,this.generation_config??{}),e&&Object.assign(i,e),t&&Object.assign(i,(0,c.pick)(t,Object.getOwnPropertyNames(i))),i}_get_stopping_criteria(e,t=null){let n=new g.StoppingCriteriaList;return e.max_length!==null&&n.push(new g.MaxLengthCriteria(e.max_length,this.config.max_position_embeddings??null)),e.eos_token_id!==null&&n.push(new g.EosTokenCriteria(e.eos_token_id)),t&&n.extend(t),n}_validate_model_class(){if(!this.can_generate){let e=[Fl,zl,Pl,kl],t=w.get(this.constructor),n=new Set,r=this.config.model_type;for(let t of e){let e=t.get(r);e&&n.add(e[0])}let i=`The current model class (${t}) is not compatible with \`.generate()\`, as it doesn't have a language model head.`;throw n.size>0&&(i+=` Please use the following class instead: ${[...n].join(`, `)}`),Error(i)}}prepare_inputs_for_generation(...e){return this._prepare_inputs_for_generation(this,...e)}_update_model_kwargs_for_generation({generated_input_ids:e,outputs:t,model_inputs:n,is_encoder_decoder:r}){return n.past_key_values=this.getPastKeyValues(t,n.past_key_values),n.input_ids=new p.Tensor(`int64`,e.flat(),[e.length,1]),r?`decoder_attention_mask`in n:n.attention_mask=(0,p.cat)([n.attention_mask,(0,p.ones)([n.attention_mask.dims[0],1])],1),n.position_ids=null,n}_prepare_model_inputs({inputs:e,bos_token_id:t,model_kwargs:n}){let r=(0,c.pick)(n,this.forward_params),i=this.main_input_name;if(i in r){if(e)throw Error("`inputs`: {inputs}` were passed alongside {input_name} which is not allowed. Make sure to either pass {inputs} or {input_name}=...")}else r[i]=e;let a=r[i];return{inputs_tensor:a,model_inputs:r,model_input_name:i}}async _prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:e,model_inputs:t,model_input_name:n,generation_config:r}){if(this.sessions.model.inputNames.includes(`inputs_embeds`)&&!t.inputs_embeds&&`_prepare_inputs_embeds`in this){let{input_ids:e,pixel_values:n,attention_mask:r,...i}=t,a=await this._prepare_inputs_embeds(t);t={...i,...(0,c.pick)(a,[`inputs_embeds`,`attention_mask`])}}let{last_hidden_state:i}=await j(this,t);if(r.guidance_scale!==null&&r.guidance_scale>1)i=(0,p.cat)([i,(0,p.full_like)(i,0)],0),`attention_mask`in t&&(t.attention_mask=(0,p.cat)([t.attention_mask,(0,p.zeros_like)(t.attention_mask)],0));else if(t.decoder_input_ids){let e=te(t.decoder_input_ids).dims[0];if(e!==i.dims[0]){if(i.dims[0]!==1)throw Error(`The encoder outputs have a different batch size (${i.dims[0]}) than the decoder inputs (${e}).`);i=(0,p.cat)(Array.from({length:e},()=>i),0)}}return t.encoder_outputs=i,t}_prepare_decoder_input_ids_for_generation({batch_size:e,model_input_name:t,model_kwargs:n,decoder_start_token_id:r,bos_token_id:i,generation_config:a}){let{decoder_input_ids:o,...s}=n;if(!(o instanceof p.Tensor)){if(o)Array.isArray(o[0])||(o=Array.from({length:e},()=>o));else if(r??=i,this.config.model_type===`musicgen`)o=Array.from({length:e*this.config.decoder.num_codebooks},()=>[r]);else if(Array.isArray(r)){if(r.length!==e)throw Error(`\`decoder_start_token_id\` expcted to have length ${e} but got ${r.length}`);o=r}else o=Array.from({length:e},()=>[r]);o=te(o)}return n.decoder_attention_mask=(0,p.ones_like)(o),{input_ids:o,model_inputs:s}}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,streamer:i=null,...a}){this._validate_model_class(),t=this._prepare_generation_config(t,a);let{inputs_tensor:o,model_inputs:s,model_input_name:c}=this._prepare_model_inputs({inputs:e,model_kwargs:a}),l=this.config.is_encoder_decoder;l&&(`encoder_outputs`in s||(s=await this._prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:o,model_inputs:s,model_input_name:c,generation_config:t})));let u;l?{input_ids:u,model_inputs:s}=this._prepare_decoder_input_ids_for_generation({batch_size:s[c].dims.at(0),model_input_name:c,model_kwargs:s,decoder_start_token_id:t.decoder_start_token_id,bos_token_id:t.bos_token_id,generation_config:t}):u=s[c];let d=u.dims.at(-1);t.max_new_tokens!==null&&(t.max_length=d+t.max_new_tokens);let f=this._get_logits_processor(t,d,n),m=this._get_stopping_criteria(t,r),h=s[c].dims.at(0),g=_.LogitsSampler.getSampler(t),v=Array(h).fill(0),y=u.tolist();i&&i.put(y);let b,x={};for(;;){if(s=this.prepare_inputs_for_generation(y,s,t),b=await this.forward(s),t.output_attentions&&t.return_dict_in_generate){let e=this.getAttentions(b);for(let t in e)t in x||(x[t]=[]),x[t].push(e[t])}let e=b.logits.slice(null,-1,null),n=f(y,e),r=[];for(let e=0;ee))break;s=this._update_model_kwargs_for_generation({generated_input_ids:r,outputs:b,model_inputs:s,is_encoder_decoder:l})}i&&i.end();let S=this.getPastKeyValues(b,s.past_key_values,!0),C=new p.Tensor(`int64`,y.flat(),[y.length,y[0].length]);if(t.return_dict_in_generate)return{sequences:C,past_key_values:S,...x};for(let e of Object.values(b))e.location===`gpu-buffer`&&e.dispose();return C}getPastKeyValues(e,t,n=!1){let r=Object.create(null);for(let i in e)if(i.startsWith(`present`)){let a=i.replace(`present`,`past_key_values`),o=i.includes(`encoder`);if(o&&t?r[a]=t[a]:r[a]=e[i],t&&(!o||n)){let e=t[a];e.location===`gpu-buffer`&&e.dispose()}}return r}getAttentions(e){let t={};for(let n of[`cross_attentions`,`encoder_attentions`,`decoder_attentions`])for(let r in e)r.startsWith(n)&&(n in t||(t[n]=[]),t[n].push(e[r]));return t}addPastKeyValues(e,t){if(t)Object.assign(e,t);else{var n,r;let t=this.sessions.decoder_model_merged??this.sessions.model,a=(t==null||(n=t.config)==null?void 0:n.kv_cache_dtype)??`float32`,o=a===`float16`?new p.DataTypeMap.float16:[],s=((r=e[this.main_input_name]??e.attention_mask)==null||(r=r.dims)==null?void 0:r[0])??1,c=(0,i.getKeyValueShapes)(this.config,{batch_size:s});for(let t in c)e[t]=new p.Tensor(a,o,c[t])}}async encode_image({pixel_values:e}){return(await A(this.sessions.vision_encoder,{pixel_values:e})).image_features}async encode_text({input_ids:e}){return(await A(this.sessions.embed_tokens,{input_ids:e})).inputs_embeds}async encode_audio({audio_values:e}){return(await A(this.sessions.audio_encoder,{audio_values:e})).audio_features}}class pe{}class me extends pe{constructor({last_hidden_state:e,hidden_states:t=null,attentions:n=null}){super(),this.last_hidden_state=e,this.hidden_states=t,this.attentions=n}}class he extends L{}class ge extends he{}class _e extends he{async _call(e){return new Wu(await super._call(e))}}class R extends he{async _call(e){return new Q(await super._call(e))}}class ve extends he{async _call(e){return new Uu(await super._call(e))}}class ye extends he{async _call(e){return new Gu(await super._call(e))}}class be extends L{}class xe extends be{}class Se extends be{async _call(e){return new Wu(await super._call(e))}}class Ce extends be{async _call(e){return new Q(await super._call(e))}}class we extends be{async _call(e){return new Uu(await super._call(e))}}class Te extends be{async _call(e){return new Gu(await super._call(e))}}class Ee extends L{}class De extends Ee{}class Oe extends Ee{async _call(e){return new Wu(await super._call(e))}}class ke extends Ee{async _call(e){return new Q(await super._call(e))}}class Ae extends Ee{async _call(e){return new Uu(await super._call(e))}}class je extends L{}class Me extends je{}class Ne extends L{}class z extends Ne{}class Pe extends Ne{async _call(e){return new Wu(await super._call(e))}}class Fe extends Ne{async _call(e){return new Q(await super._call(e))}}class Ie extends Ne{async _call(e){return new Uu(await super._call(e))}}class Le extends Ne{async _call(e){return new Gu(await super._call(e))}}class Re extends L{}class ze extends Re{}class Be extends Re{async _call(e){return new Wu(await super._call(e))}}class B extends Re{async _call(e){return new Q(await super._call(e))}}class Ve extends Re{async _call(e){return new Uu(await super._call(e))}}class He extends Re{async _call(e){return new Gu(await super._call(e))}}class Ue extends L{}class V extends Ue{}class We extends Ue{async _call(e){return new Wu(await super._call(e))}}class Ge extends Ue{async _call(e){return new Q(await super._call(e))}}class Ke extends Ue{async _call(e){return new Uu(await super._call(e))}}class qe extends Ue{async _call(e){return new Gu(await super._call(e))}}class Je extends L{}class Ye extends Je{}class Xe extends Je{async _call(e){return new Wu(await super._call(e))}}class Ze extends Je{async _call(e){return new Q(await super._call(e))}}class Qe extends Je{async _call(e){return new Uu(await super._call(e))}}class $e extends Je{async _call(e){return new Gu(await super._call(e))}}class et extends L{}class tt extends et{}class nt extends et{async _call(e){return new Wu(await super._call(e))}}class rt extends et{async _call(e){return new Q(await super._call(e))}}class it extends et{async _call(e){return new Uu(await super._call(e))}}class at extends et{async _call(e){return new Gu(await super._call(e))}}class ot extends L{}class st extends ot{}class ct extends ot{async _call(e){return new Wu(await super._call(e))}}class lt extends ot{async _call(e){return new Q(await super._call(e))}}class ut extends ot{async _call(e){return new Uu(await super._call(e))}}class dt extends ot{async _call(e){return new Gu(await super._call(e))}}class ft extends L{}class pt extends ft{}class mt extends ft{async _call(e){return new Q(await super._call(e))}}class ht extends ft{async _call(e){return new Uu(await super._call(e))}}class gt extends ft{async _call(e){return new Gu(await super._call(e))}}class _t extends ft{async _call(e){return new Wu(await super._call(e))}}class vt extends L{}class yt extends vt{}class bt extends vt{async _call(e){return new Wu(await super._call(e))}}class xt extends vt{async _call(e){return new Q(await super._call(e))}}class St extends vt{async _call(e){return new Uu(await super._call(e))}}class Ct extends L{}class wt extends Ct{}class Tt extends Ct{async _call(e){return new Wu(await super._call(e))}}class Et extends Ct{async _call(e){return new Q(await super._call(e))}}class Dt extends Ct{async _call(e){return new Gu(await super._call(e))}}class Ot extends L{}class kt extends Ot{}class At extends Ot{async _call(e){return new Wu(await super._call(e))}}class jt extends Ot{async _call(e){return new Q(await super._call(e))}}class Mt extends Ot{async _call(e){return new Uu(await super._call(e))}}class Nt extends Ot{async _call(e){return new Gu(await super._call(e))}}class Pt extends L{}class Ft extends Pt{}class It extends Pt{async _call(e){return new Wu(await super._call(e))}}class Lt extends Pt{async _call(e){return new Q(await super._call(e))}}class Rt extends Pt{async _call(e){return new Gu(await super._call(e))}}class zt extends L{}class Bt extends zt{}class Vt extends zt{async _call(e){return new Q(await super._call(e))}}class Ht extends zt{async _call(e){return new Gu(await super._call(e))}}class Ut extends zt{async _call(e){return new Wu(await super._call(e))}}class Wt extends L{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`])}}class Gt extends Wt{}class Kt extends Wt{}class qt extends L{}class Jt extends qt{}class Yt extends qt{}class Xt extends L{}class Zt extends Xt{}class Qt extends Xt{}class $t extends L{}class en extends $t{}class tn extends $t{}class nn extends $t{async _call(e){return new Q(await super._call(e))}}class rn extends L{}class an extends rn{}class H extends rn{}class on extends rn{async _call(e){return new Q(await super._call(e))}}class sn extends rn{}class cn extends L{}class ln extends cn{}class un extends cn{}class dn extends L{}class fn extends dn{}class pn extends dn{}class U extends L{}class mn extends U{}class hn extends U{async _call(e){return new Wu(await super._call(e))}}class gn extends U{async _call(e){return new Q(await super._call(e))}}class W extends U{async _call(e){return new Uu(await super._call(e))}}class _n extends U{async _call(e){return new Gu(await super._call(e))}}class vn extends L{}class yn extends vn{}class bn extends vn{async _call(e){return new Wu(await super._call(e))}}class G extends vn{async _call(e){return new Q(await super._call(e))}}class xn extends vn{async _call(e){return new Uu(await super._call(e))}}class Sn extends vn{async _call(e){return new Gu(await super._call(e))}}class Cn extends L{}class wn extends Cn{}class Tn extends Cn{async _call(e){return new Wu(await super._call(e))}}class En extends Cn{async _call(e){return new Q(await super._call(e))}}class Dn extends Cn{async _call(e){return new Uu(await super._call(e))}}class On extends Cn{async _call(e){return new Gu(await super._call(e))}}class kn extends L{}class An extends kn{}class jn extends kn{}class Mn extends L{constructor(...t){super(...t),e.defineProperty(this,`requires_attention_mask`,!1),e.defineProperty(this,`main_input_name`,`input_features`),e.defineProperty(this,`forward_params`,[`input_features`,`attention_mask`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`])}}class Nn extends Mn{}class Pn extends Mn{_prepare_generation_config(e,t){return super._prepare_generation_config(e,t,y.WhisperGenerationConfig)}_retrieve_init_tokens(e){let t=[e.decoder_start_token_id],n=e.language,r=e.task;if(e.is_multilingual){n||(console.warn(`No language specified - defaulting to English (en).`),n=`en`);let i=(0,b.whisper_language_to_code)(n),a=`<|${i}|>`;t.push(e.lang_to_id[a]),t.push(e.task_to_id[r??`transcribe`])}else if(n||r)throw Error("Cannot specify `task` or `language` for an English-only model. If the model is intended to be multilingual, pass `is_multilingual=true` to generate, or update the generation config.");return!e.return_timestamps&&e.no_timestamps_token_id&&t.at(-1)!==e.no_timestamps_token_id?t.push(e.no_timestamps_token_id):e.return_timestamps&&t.at(-1)===e.no_timestamps_token_id&&(console.warn("<|notimestamps|> prompt token is removed from generation_config since `return_timestamps` is set to `true`."),t.pop()),t.filter(e=>e!=null)}async generate({inputs:e=null,generation_config:t=null,logits_processor:n=null,stopping_criteria:r=null,...i}){t=this._prepare_generation_config(t,i);let a=i.decoder_input_ids??this._retrieve_init_tokens(t);if(t.return_timestamps&&(n??=new d.LogitsProcessorList,n.push(new d.WhisperTimeStampLogitsProcessor(t,a))),t.begin_suppress_tokens&&(n??=new d.LogitsProcessorList,n.push(new d.SuppressTokensAtBeginLogitsProcessor(t.begin_suppress_tokens,a.length))),t.return_token_timestamps){if(!t.alignment_heads)throw Error("Model generation config has no `alignment_heads`, token-level timestamps not available. See https://gist.github.com/hollance/42e32852f24243b748ae6bc1f985b13a on how to add this property to the generation config.");t.task===`translate`&&console.warn(`Token-level timestamps may not be reliable for task 'translate'.`),t.output_attentions=!0,t.return_dict_in_generate=!0}let o=await super.generate({inputs:e,generation_config:t,logits_processor:n,decoder_input_ids:a,...i});return t.return_token_timestamps&&(o.token_timestamps=this._extract_token_timestamps(o,t.alignment_heads,t.num_frames)),o}_extract_token_timestamps(e,t,n=null,r=.02){if(!e.cross_attentions)throw Error("Model outputs must contain cross attentions to extract timestamps. This is most likely because the model was not exported with `output_attentions=True`.");n??console.warn("`num_frames` has not been set, meaning the entire audio will be analyzed. This may lead to inaccurate token-level timestamps for short audios (< 30 seconds).");let i=this.config.median_filter_width;i===void 0&&(console.warn("Model config has no `median_filter_width`, using default value of 7."),i=7);let a=e.cross_attentions,o=Array.from({length:this.config.decoder_layers},(e,t)=>(0,p.cat)(a.map(e=>e[t]),2)),s=(0,p.stack)(t.map(([e,t])=>{if(e>=o.length)throw Error(`Layer index ${e} is out of bounds for cross attentions (length ${o.length}).`);return n?o[e].slice(null,t,null,[0,n]):o[e].slice(null,t)})).transpose(1,0,2,3),[l,u]=(0,p.std_mean)(s,-2,0,!0),d=s.clone();for(let e=0;en[t+1]-n[t]),o=(0,c.mergeArrays)([1],a).map(e=>!!e),s=[];for(let e=0;eArray.from({length:e.dims[0]},t=>Array.from({length:e.dims[1]},e=>1))),f=t?t.tolist():[],m=n?n.tolist():[],g=0,_=0;for(let e=0;eu[e][n]==1),n=t.reduce((e,t,n)=>(t==s&&e.push(n),e),[]),r=n.map(e=>t[e+1]),p=r.filter(e=>e==a).length,v=r.filter(e=>e==o).length,y=[],b=0,x=p,S=v;for(let e=0;et>b&&e==a),n=t.findIndex((e,t)=>t>b&&e==o),r=x>0&&e!==-1?e:t.length+1,i=S>0&&n!==-1?n:t.length+1,s,l,u,d;r0?(0,h.max)(y.at(-1))[0]+1:0;y.push(Array.from({length:3*w},(e,t)=>T+t%w));let E=w+T,D=p*v*C,O=Array.from({length:D},(e,t)=>E+Math.floor(t/(v*C))),k=Array.from({length:D},(e,t)=>E+Math.floor(t/C)%v),A=Array.from({length:D},(e,t)=>E+t%C);y.push([O,k,A].flat()),b=s+D}if(b0?(0,h.max)(y.at(-1))[0]+1:0,n=t.length-b;y.push(Array.from({length:3*n},(t,r)=>e+r%n))}let C=y.reduce((e,t)=>e+t.length,0),w=Array(C),T=0;for(let e=0;e<3;++e)for(let t=0;te[n%e.length]),i=Array.from({length:t[0]},(n,r)=>(0,h.max)(e.subarray(t[1]*r,t[1]*(r+1)))[0]+1n+BigInt(t[1]));return[new p.Tensor(`int64`,n,[3,...t]),new p.Tensor(`int64`,i,[i.length,1])]}else{let[t,n]=e.dims,r=BigInt64Array.from({length:3*t*n},(e,r)=>BigInt(Math.floor(r%n/t)));return[new p.Tensor(`int64`,r,[3,...e.dims]),(0,p.zeros)([t,1])]}}async encode_image({pixel_values:e,image_grid_thw:t}){let n=(await A(this.sessions.vision_encoder,{pixel_values:e,grid_thw:t})).image_features;return n}_merge_input_ids_with_image_features(e){return se({image_token_id:this.config.image_token_id,...e})}prepare_inputs_for_generation(e,t,n){if(t.attention_mask&&!t.position_ids)if(!t.past_key_values)[t.position_ids,t.rope_deltas]=this.get_rope_index(t.input_ids,t.image_grid_thw,t.video_grid_thw,t.attention_mask);else{t.pixel_values=null;let e=BigInt(Object.values(t.past_key_values)[0].dims.at(-2)),n=t.rope_deltas.map(t=>e+t);t.position_ids=(0,p.stack)([n,n,n],0)}return t}}class ki extends L{}class Ai extends ki{}class ji extends ki{}class Mi extends L{}class Ni extends Mi{}class Pi extends Mi{}class Fi extends L{}class Ii extends Fi{}class Li extends Fi{}class Ri extends L{}class zi extends Ri{}class Bi extends Ri{}class Vi extends L{}class Hi extends Vi{}class Ui extends Vi{}class Wi extends L{}class Gi extends Wi{}class Ki extends Wi{async _call(e){return new Q(await super._call(e))}}class qi extends L{}class Ji extends qi{}class Yi extends qi{async _call(e){return new Q(await super._call(e))}}class Xi extends L{}class Zi extends Xi{}class Qi extends L{}class $i extends Qi{}class ea extends Qi{async _call(e){return new Q(await super._call(e))}}class ta extends L{}class na extends ta{}class ra extends L{}class ia extends ra{}class aa extends ra{async _call(e){return new Q(await super._call(e))}}class oa extends L{}class sa extends oa{}class ca extends L{}class la extends ca{}class ua extends ca{async _call(e){return new Q(await super._call(e))}}class da extends L{}class fa extends da{async _call(e){return new Ju(await super._call(e))}}class pa extends L{}class ma extends pa{}class ha extends pa{async _call(e){return new Q(await super._call(e))}}class ga extends L{}class _a extends ga{}class va extends ga{async _call(e){return new Q(await super._call(e))}}class ya extends L{}class ba extends ya{}class xa extends ya{}class Sa extends L{}class Ca extends Sa{}class wa extends Sa{}class Ta extends L{}class Ea extends Ta{}class Da extends Ta{async _call(e){return new Q(await super._call(e))}}class Oa extends L{}class ka extends Oa{}class Aa extends Oa{async _call(e){return new Ma(await super._call(e))}}class ja extends Oa{async _call(e){return new Na(await super._call(e))}}class Ma extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Na extends pe{constructor({logits:e,pred_boxes:t,pred_masks:n}){super(),this.logits=e,this.pred_boxes=t,this.pred_masks=n}}class Pa extends L{}class Fa extends Pa{}class Ia extends Pa{async _call(e){return new La(await super._call(e))}}class La extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class Ra extends L{}class za extends Ra{}class Ba extends Ra{async _call(e){return new Va(await super._call(e))}}class Va extends La{}class Ha extends L{}class Ua extends Ha{}class Wa extends Ha{async _call(e){return new Ga(await super._call(e))}}class Ga extends La{}class Ka extends L{}class qa extends Ka{}class Ja extends Ka{async _call(e){return new La(await super._call(e))}}class Ya extends L{}class Xa extends Ya{}class Za extends Ya{async _call(e){return new Qa(await super._call(e))}}class Qa extends Ma{}class $a extends L{}class eo extends $a{}class to extends $a{async _call(e){return new Q(await super._call(e))}}class no extends L{}class ro extends no{}class io extends no{async _call(e){return new Q(await super._call(e))}}class ao extends L{}class oo extends ao{}class so extends ao{async _call(e){return new Q(await super._call(e))}}class co extends L{}class lo extends co{}class uo extends co{async _call(e){return new Q(await super._call(e))}}class fo extends co{}class po extends L{}class mo extends po{}class ho extends po{}class go extends L{}class _o extends go{}class vo extends go{}class yo extends L{}class bo extends yo{}class xo extends L{}class So extends xo{}class Co extends xo{}class wo extends xo{}class To extends L{}class Eo extends To{}class Do extends L{}class Oo extends Do{}class ko extends L{}class Ao extends ko{}class jo extends L{}class Mo extends jo{}class No extends jo{}class Po extends L{}class Fo extends Po{}class Io extends Po{}class Lo extends L{}class Ro extends Lo{}class zo extends L{}class Bo extends zo{}class Vo extends zo{async _call(e){return new Q(await super._call(e))}}class Ho extends L{}class Uo extends Ho{}class Wo extends Ho{async _call(e){return new Q(await super._call(e))}}class Go extends L{}class Ko extends Go{}class qo extends Go{async _call(e){return new Q(await super._call(e))}}class Jo extends L{}class Yo extends Jo{}class Xo extends Jo{async _call(e){return new Q(await super._call(e))}}class Zo extends L{}class Qo extends Zo{}class $o extends L{}class es extends $o{}class ts extends $o{async _call(e){return new ns(await super._call(e))}}class ns extends pe{constructor({logits:e,pred_boxes:t}){super(),this.logits=e,this.pred_boxes=t}}class rs extends L{}class os extends rs{async get_image_embeddings({pixel_values:e}){return await j(this,{pixel_values:e})}async forward(e){if((!e.image_embeddings||!e.image_positional_embeddings)&&(e={...e,...await this.get_image_embeddings(e)}),!e.input_labels&&e.input_points){let t=e.input_points.dims.slice(0,-1),n=t.reduce((e,t)=>e*t,1);e.input_labels=new p.Tensor(`int64`,new BigInt64Array(n).fill(1n),t)}let t={image_embeddings:e.image_embeddings,image_positional_embeddings:e.image_positional_embeddings};return e.input_points&&(t.input_points=e.input_points),e.input_labels&&(t.input_labels=e.input_labels),e.input_boxes&&(t.input_boxes=e.input_boxes),await A(this.sessions.prompt_encoder_mask_decoder,t)}async _call(e){return new ss(await super._call(e))}}class ss extends pe{constructor({iou_scores:e,pred_masks:t}){super(),this.iou_scores=e,this.pred_masks=t}}class cs extends L{}class ls extends cs{}class us extends cs{}class ds extends L{}class fs extends ds{}class ps extends ds{}class ms extends L{}class hs extends ms{}class gs extends ms{async _call(e){return new Ku(await super._call(e))}}class _s extends ms{async _call(e){return new Q(await super._call(e))}}class vs extends ms{async _call(e){return new Uu(await super._call(e))}}class ys extends L{}class bs extends ys{}class xs extends ys{async _call(e){return new Uu(await super._call(e))}}class Ss extends L{}class Cs extends Ss{}class ws extends L{}class Ts extends ws{}class Es extends ws{async _call(e){return new Ku(await super._call(e))}}class Ds extends ws{async _call(e){return new Q(await super._call(e))}}class Os extends L{}class ks extends Os{}class As extends Os{async _call(e){return new Ku(await super._call(e))}}class js extends Os{async _call(e){return new Q(await super._call(e))}}class Ms extends Os{async _call(e){return new Uu(await super._call(e))}}class Ns extends L{}class Ps extends Ns{}class Fs extends Ns{async _call(e){return new Ku(await super._call(e))}}class Is extends Ns{async _call(e){return new Q(await super._call(e))}}class Ls extends L{}class Rs extends ms{}class zs extends ms{async _call(e){return new Ku(await super._call(e))}}class Bs extends ms{async _call(e){return new Q(await super._call(e))}}class Vs extends L{}class Hs extends Vs{}class Us extends Vs{async _call(e){return new Ku(await super._call(e))}}class Ws extends Vs{async _call(e){return new Q(await super._call(e))}}class Gs extends Vs{async _call(e){return new Hu(await super._call(e))}}class Ks extends Vs{async _call(e){return new Uu(await super._call(e))}}class qs extends L{}class Js extends qs{}class Ys extends L{}class Xs extends Ys{}class Zs extends Ys{}class Qs extends Ys{async generate_speech(e,t,{threshold:n=.5,minlenratio:r=0,maxlenratio:i=20,vocoder:a=null}={}){let o={input_ids:e},{encoder_outputs:s,encoder_attention_mask:c}=await j(this,o),l=s.dims[1]/this.config.reduction_factor,u=Math.floor(l*i),d=Math.floor(l*r),f=this.config.num_mel_bins,m=[],h=null,g=null,_=0;for(;;){++_;let e=ne(!!g),r;r=g?g.output_sequence_out:new p.Tensor(`float32`,new Float32Array(f),[1,1,f]);let i={use_cache_branch:e,output_sequence:r,encoder_attention_mask:c,speaker_embeddings:t,encoder_hidden_states:s};this.addPastKeyValues(i,h),g=await A(this.sessions.decoder_model_merged,i),h=this.getPastKeyValues(g,h);let{prob:a,spectrum:o}=g;if(m.push(o),_>=d&&(Array.from(a.data).filter(e=>e>=n).length>0||_>=u))break}let v=(0,p.cat)(m),{waveform:y}=await A(a.sessions.model,{spectrogram:v});return{spectrogram:v,waveform:y}}}class $s extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`spectrogram`)}}class ec extends L{}class tc extends ec{}class nc extends L{}class rc extends nc{}class ic extends nc{}class ac extends L{}class oc extends ac{}class sc extends ac{}class cc extends L{}class lc extends cc{}class uc extends cc{}class dc extends L{}class fc extends dc{}class pc extends dc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`text_model`})}}class mc extends dc{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`audio_model`})}}class hc extends L{}class gc extends hc{async _call(e){return new Yu(await super._call(e))}}class _c extends L{}class vc extends _c{}class yc extends _c{}class bc extends _c{}class xc extends L{}class Sc extends xc{}class Cc extends xc{}class wc extends L{}class Tc extends wc{}class Ec extends wc{async _call(e){return new Q(await super._call(e))}}class Dc extends L{}class Oc extends Dc{}class kc extends Dc{}class Ac extends L{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`,`encoder_outputs`,`decoder_input_ids`,`decoder_attention_mask`,`past_key_values`])}_apply_and_filter_by_delay_pattern_mask(e){let[t,n]=e.dims,r=this.config.decoder.num_codebooks,i=n-r,a=0;for(let t=0;t0&&c<=i&&(e.data[a++]=e.data[t])}let o=Math.floor(t/r),s=a/(o*r);return new p.Tensor(e.type,e.data.slice(0,a),[o,r,s])}prepare_inputs_for_generation(e,t,n){let r=structuredClone(e);for(let e=0;e=t&&(r[e][t]=BigInt(this.config.decoder.pad_token_id));n.guidance_scale!==null&&n.guidance_scale>1&&(r=r.concat(r));let i=super.prepare_inputs_for_generation(r,t,n);return i}async generate(e){let t=await super.generate(e),n=this._apply_and_filter_by_delay_pattern_mask(t).unsqueeze_(0),{audio_values:r}=await A(this.sessions.encodec_decode,{audio_codes:n});return r}}class jc extends L{}class Mc extends jc{}class Nc extends jc{async _call(e){return new Q(await super._call(e))}}class Pc extends jc{}class Fc extends L{}class Ic extends Fc{}class Lc extends Fc{async _call(e){return new Q(await super._call(e))}}class Rc extends Fc{}class zc extends L{}class Bc extends zc{}class Vc extends zc{async _call(e){return new Q(await super._call(e))}}class Hc extends zc{}class Uc extends L{}class Wc extends Uc{}class Gc extends Uc{async _call(e){return new Q(await super._call(e))}}class Kc extends Uc{}class qc extends L{}class Jc extends qc{}class Yc extends L{}class Xc extends Yc{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`pixel_values`,`images_seq_mask`,`images_emb_mask`,`attention_mask`,`position_ids`,`past_key_values`]),this._generation_mode=`text`}async forward(e){let t=this._generation_mode??`text`,n;if(t===`text`||!e.past_key_values){let t=this.sessions.prepare_inputs_embeds,r=(0,c.pick)(e,t.inputNames);n=await A(t,r)}else{let t=this.sessions.gen_img_embeds,r=(0,c.pick)({image_ids:e.input_ids},t.inputNames);n=await A(t,r)}let r={...e,...n},i=await ae(this,r),a=this.sessions[t===`text`?`lm_head`:`gen_head`];if(!a)throw Error(`Unable to find "${a}" generation head`);let o=await A(a,(0,c.pick)(i,a.inputNames));return{...n,...i,...o}}async generate(e){return this._generation_mode=`text`,super.generate(e)}async generate_images(e){this._generation_mode=`image`;let t=(e.inputs??e[this.main_input_name]).dims[1],n=await super.generate(e),r=n.slice(null,[t,null]),i=this.sessions.image_decode,{decoded_image:a}=await A(i,{generated_tokens:r}),o=a.add_(1).mul_(255/2).clamp_(0,255).to(`uint8`),s=[];for(let e of o){let t=m.RawImage.fromTensor(e);s.push(t)}return s}}class Zc extends pe{constructor({char_logits:e,bpe_logits:t,wp_logits:n}){super(),this.char_logits=e,this.bpe_logits=t,this.wp_logits=n}get logits(){return[this.char_logits,this.bpe_logits,this.wp_logits]}}class Qc extends L{}class $c extends Qc{async _call(e){return new Zc(await super._call(e))}}class el extends L{}class tl extends el{}class nl extends el{}class rl extends L{}class il extends rl{}class al extends rl{}class ol extends L{constructor(...t){super(...t),e.defineProperty(this,`forward_params`,[`input_ids`,`attention_mask`,`position_ids`,`audio_values`,`past_key_values`])}}class sl extends ol{_merge_input_ids_with_audio_features(e){let t=e.audio_features.dims.at(-1),n=e.audio_features.view(-1,t);return ce({audio_token_id:this.config.ignore_index,...e,audio_features:n})}}class cl extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`input_values`),e.defineProperty(this,`forward_params`,[`input_values`])}}class ll extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class ul extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class dl extends cl{async encode(e){return new ll(await A(this.sessions.encoder_model,e))}async decode(e){return new ul(await A(this.sessions.decoder_model,e))}}class fl extends cl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class pl extends cl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class ml extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`input_values`),e.defineProperty(this,`forward_params`,[`input_values`])}}class hl extends pe{constructor({audio_codes:e}){super(),this.audio_codes=e}}class gl extends pe{constructor({audio_values:e}){super(),this.audio_values=e}}class _l extends ml{async encode(e){return new hl(await A(this.sessions.encoder_model,e))}async decode(e){return new gl(await A(this.sessions.decoder_model,e))}}class vl extends ml{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class yl extends ml{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class bl extends L{constructor(...t){super(...t),e.defineProperty(this,`main_input_name`,`input_values`),e.defineProperty(this,`forward_params`,[`input_values`])}}class xl extends bl{async encode(e){return await A(this.sessions.encoder_model,e)}async decode(e){return await A(this.sessions.decoder_model,e)}}class Sl extends bl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`encoder_model`})}}class Cl extends bl{static async from_pretrained(e,t={}){return super.from_pretrained(e,{...t,model_file_name:t.model_file_name??`decoder_model`})}}class wl{static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:a=!1,revision:o=`main`,model_file_name:s=null,subfolder:c=`onnx`,device:l=null,dtype:u=null,use_external_data_format:d=null,session_options:f={}}={}){let p={progress_callback:t,config:n,cache_dir:r,local_files_only:a,revision:o,model_file_name:s,subfolder:c,device:l,dtype:u,use_external_data_format:d,session_options:f};if(p.config=await i.AutoConfig.from_pretrained(e,p),!this.MODEL_CLASS_MAPPINGS)throw Error("`MODEL_CLASS_MAPPINGS` not implemented for this type of `AutoClass`: "+this.name);let m=p.config.model_type;for(let t of this.MODEL_CLASS_MAPPINGS){let n=t.get(m);if(!n){for(let e of t.values())if(e[0]===m){n=e;break}if(!n)continue}return await n[1].from_pretrained(e,p)}if(this.BASE_IF_FAIL)return lu.has(m)||console.warn(`Unknown model class "${m}", attempting to construct from base class.`),await L.from_pretrained(e,p);throw Error(`Unsupported model type: ${m}`)}}e.defineProperty(wl,`MODEL_CLASS_MAPPINGS`,null),e.defineProperty(wl,`BASE_IF_FAIL`,!1);let Tl=new Map([[`bert`,[`BertModel`,ge]],[`neobert`,[`NeoBertModel`,xe]],[`modernbert`,[`ModernBertModel`,De]],[`nomic_bert`,[`NomicBertModel`,Me]],[`roformer`,[`RoFormerModel`,z]],[`electra`,[`ElectraModel`,V]],[`esm`,[`EsmModel`,yt]],[`convbert`,[`ConvBertModel`,ze]],[`camembert`,[`CamembertModel`,Ye]],[`deberta`,[`DebertaModel`,tt]],[`deberta-v2`,[`DebertaV2Model`,st]],[`mpnet`,[`MPNetModel`,kt]],[`albert`,[`AlbertModel`,Bt]],[`distilbert`,[`DistilBertModel`,pt]],[`roberta`,[`RobertaModel`,mn]],[`xlm`,[`XLMModel`,yn]],[`xlm-roberta`,[`XLMRobertaModel`,wn]],[`clap`,[`ClapModel`,fc]],[`clip`,[`CLIPModel`,nr]],[`clipseg`,[`CLIPSegModel`,Z]],[`chinese_clip`,[`ChineseCLIPModel`,lr]],[`siglip`,[`SiglipModel`,J]],[`jina_clip`,[`JinaCLIPModel`,X]],[`mobilebert`,[`MobileBertModel`,wt]],[`squeezebert`,[`SqueezeBertModel`,Ft]],[`wav2vec2`,[`Wav2Vec2Model`,hs]],[`wav2vec2-bert`,[`Wav2Vec2BertModel`,Ps]],[`unispeech`,[`UniSpeechModel`,Ts]],[`unispeech-sat`,[`UniSpeechSatModel`,ks]],[`hubert`,[`HubertModel`,Rs]],[`wavlm`,[`WavLMModel`,Hs]],[`audio-spectrogram-transformer`,[`ASTModel`,An]],[`vits`,[`VitsModel`,gc]],[`pyannote`,[`PyAnnoteModel`,bs]],[`wespeaker-resnet`,[`WeSpeakerResNetModel`,Cs]],[`detr`,[`DetrModel`,ka]],[`rt_detr`,[`RTDetrModel`,Fa]],[`rt_detr_v2`,[`RTDetrV2Model`,za]],[`rf_detr`,[`RFDetrModel`,Ua]],[`d_fine`,[`DFineModel`,qa]],[`table-transformer`,[`TableTransformerModel`,Xa]],[`vit`,[`ViTModel`,Gi]],[`ijepa`,[`IJepaModel`,Ji]],[`pvt`,[`PvtModel`,$i]],[`vit_msn`,[`ViTMSNModel`,ia]],[`vit_mae`,[`ViTMAEModel`,na]],[`groupvit`,[`GroupViTModel`,sa]],[`fastvit`,[`FastViTModel`,la]],[`mobilevit`,[`MobileViTModel`,ma]],[`mobilevitv2`,[`MobileViTV2Model`,_a]],[`owlvit`,[`OwlViTModel`,ba]],[`owlv2`,[`Owlv2Model`,Ca]],[`beit`,[`BeitModel`,Ea]],[`deit`,[`DeiTModel`,eo]],[`hiera`,[`HieraModel`,ro]],[`convnext`,[`ConvNextModel`,Bo]],[`convnextv2`,[`ConvNextV2Model`,Uo]],[`dinov2`,[`Dinov2Model`,Ko]],[`dinov2_with_registers`,[`Dinov2WithRegistersModel`,Yo]],[`resnet`,[`ResNetModel`,oo]],[`swin`,[`SwinModel`,lo]],[`swin2sr`,[`Swin2SRModel`,mo]],[`donut-swin`,[`DonutSwinModel`,Ro]],[`yolos`,[`YolosModel`,es]],[`dpt`,[`DPTModel`,_o]],[`glpn`,[`GLPNModel`,Fo]],[`hifigan`,[`SpeechT5HifiGan`,$s]],[`efficientnet`,[`EfficientNetModel`,Tc]],[`decision_transformer`,[`DecisionTransformerModel`,Jc]],[`patchtst`,[`PatchTSTForPrediction`,tl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,il]],[`mobilenet_v1`,[`MobileNetV1Model`,Mc]],[`mobilenet_v2`,[`MobileNetV2Model`,Ic]],[`mobilenet_v3`,[`MobileNetV3Model`,Bc]],[`mobilenet_v4`,[`MobileNetV4Model`,Wc]],[`maskformer`,[`MaskFormerModel`,Mo]],[`mgp-str`,[`MgpstrForSceneTextRecognition`,$c]],[`style_text_to_speech_2`,[`StyleTextToSpeech2Model`,Js]]]),El=new Map([[`t5`,[`T5Model`,Gt]],[`longt5`,[`LongT5Model`,Jt]],[`mt5`,[`MT5Model`,Zt]],[`bart`,[`BartModel`,en]],[`mbart`,[`MBartModel`,an]],[`marian`,[`MarianModel`,ls]],[`whisper`,[`WhisperModel`,Nn]],[`m2m_100`,[`M2M100Model`,fs]],[`blenderbot`,[`BlenderbotModel`,ln]],[`blenderbot-small`,[`BlenderbotSmallModel`,fn]]]),Dl=new Map([[`mimi`,[`MimiModel`,dl]],[`dac`,[`DacModel`,_l]],[`snac`,[`SnacModel`,xl]]]),Ol=new Map([[`bloom`,[`BloomModel`,Ii]],[`jais`,[`JAISModel`,yr]],[`gpt2`,[`GPT2Model`,gr]],[`gptj`,[`GPTJModel`,Or]],[`gpt_bigcode`,[`GPTBigCodeModel`,jr]],[`gpt_neo`,[`GPTNeoModel`,Sr]],[`gpt_neox`,[`GPTNeoXModel`,Tr]],[`codegen`,[`CodeGenModel`,Pr]],[`llama`,[`LlamaModel`,Lr]],[`exaone`,[`ExaoneModel`,Kr]],[`olmo`,[`OlmoModel`,Qr]],[`olmo2`,[`Olmo2Model`,ti]],[`mobilellm`,[`MobileLLMModel`,Yr]],[`granite`,[`GraniteModel`,ii]],[`cohere`,[`CohereModel`,si]],[`gemma`,[`GemmaModel`,ui]],[`gemma2`,[`Gemma2Model`,pi]],[`gemma3_text`,[`Gemma3Model`,gi]],[`helium`,[`HeliumModel`,Br]],[`glm`,[`GlmModel`,Ur]],[`openelm`,[`OpenELMModel`,yi]],[`qwen2`,[`Qwen2Model`,Si]],[`qwen3`,[`Qwen3Model`,Ti]],[`phi`,[`PhiModel`,Ai]],[`phi3`,[`Phi3Model`,Ni]],[`mpt`,[`MptModel`,zi]],[`opt`,[`OPTModel`,Hi]],[`mistral`,[`MistralModel`,rc]],[`starcoder2`,[`Starcoder2Model`,oc]],[`falcon`,[`FalconModel`,lc]],[`stablelm`,[`StableLmModel`,Sc]]]),kl=new Map([[`speecht5`,[`SpeechT5ForSpeechToText`,Zs]],[`whisper`,[`WhisperForConditionalGeneration`,Pn]],[`lite-whisper`,[`LiteWhisperForConditionalGeneration`,Fn]],[`moonshine`,[`MoonshineForConditionalGeneration`,Rn]]]),Al=new Map([[`speecht5`,[`SpeechT5ForTextToSpeech`,Qs]]]),jl=new Map([[`vits`,[`VitsModel`,gc]],[`musicgen`,[`MusicgenForConditionalGeneration`,Ac]]]),Ml=new Map([[`bert`,[`BertForSequenceClassification`,R]],[`neobert`,[`NeoBertForSequenceClassification`,Ce]],[`modernbert`,[`ModernBertForSequenceClassification`,ke]],[`roformer`,[`RoFormerForSequenceClassification`,Fe]],[`electra`,[`ElectraForSequenceClassification`,Ge]],[`esm`,[`EsmForSequenceClassification`,xt]],[`convbert`,[`ConvBertForSequenceClassification`,B]],[`camembert`,[`CamembertForSequenceClassification`,Ze]],[`deberta`,[`DebertaForSequenceClassification`,rt]],[`deberta-v2`,[`DebertaV2ForSequenceClassification`,lt]],[`mpnet`,[`MPNetForSequenceClassification`,jt]],[`albert`,[`AlbertForSequenceClassification`,Vt]],[`distilbert`,[`DistilBertForSequenceClassification`,mt]],[`roberta`,[`RobertaForSequenceClassification`,gn]],[`xlm`,[`XLMForSequenceClassification`,G]],[`xlm-roberta`,[`XLMRobertaForSequenceClassification`,En]],[`bart`,[`BartForSequenceClassification`,nn]],[`mbart`,[`MBartForSequenceClassification`,on]],[`mobilebert`,[`MobileBertForSequenceClassification`,Et]],[`squeezebert`,[`SqueezeBertForSequenceClassification`,Lt]]]),Nl=new Map([[`bert`,[`BertForTokenClassification`,ve]],[`neobert`,[`NeoBertForTokenClassification`,we]],[`modernbert`,[`ModernBertForTokenClassification`,Ae]],[`roformer`,[`RoFormerForTokenClassification`,Ie]],[`electra`,[`ElectraForTokenClassification`,Ke]],[`esm`,[`EsmForTokenClassification`,St]],[`convbert`,[`ConvBertForTokenClassification`,Ve]],[`camembert`,[`CamembertForTokenClassification`,Qe]],[`deberta`,[`DebertaForTokenClassification`,it]],[`deberta-v2`,[`DebertaV2ForTokenClassification`,ut]],[`mpnet`,[`MPNetForTokenClassification`,Mt]],[`distilbert`,[`DistilBertForTokenClassification`,ht]],[`roberta`,[`RobertaForTokenClassification`,W]],[`xlm`,[`XLMForTokenClassification`,xn]],[`xlm-roberta`,[`XLMRobertaForTokenClassification`,Dn]]]),Pl=new Map([[`t5`,[`T5ForConditionalGeneration`,Kt]],[`longt5`,[`LongT5ForConditionalGeneration`,Yt]],[`mt5`,[`MT5ForConditionalGeneration`,Qt]],[`bart`,[`BartForConditionalGeneration`,tn]],[`mbart`,[`MBartForConditionalGeneration`,H]],[`marian`,[`MarianMTModel`,us]],[`m2m_100`,[`M2M100ForConditionalGeneration`,ps]],[`blenderbot`,[`BlenderbotForConditionalGeneration`,un]],[`blenderbot-small`,[`BlenderbotSmallForConditionalGeneration`,pn]]]),Fl=new Map([[`bloom`,[`BloomForCausalLM`,Li]],[`gpt2`,[`GPT2LMHeadModel`,_r]],[`jais`,[`JAISLMHeadModel`,br]],[`gptj`,[`GPTJForCausalLM`,kr]],[`gpt_bigcode`,[`GPTBigCodeForCausalLM`,Mr]],[`gpt_neo`,[`GPTNeoForCausalLM`,Cr]],[`gpt_neox`,[`GPTNeoXForCausalLM`,Er]],[`codegen`,[`CodeGenForCausalLM`,Fr]],[`llama`,[`LlamaForCausalLM`,Rr]],[`exaone`,[`ExaoneForCausalLM`,qr]],[`olmo`,[`OlmoForCausalLM`,$r]],[`olmo2`,[`Olmo2ForCausalLM`,ni]],[`mobilellm`,[`MobileLLMForCausalLM`,Xr]],[`granite`,[`GraniteForCausalLM`,ai]],[`cohere`,[`CohereForCausalLM`,ci]],[`gemma`,[`GemmaForCausalLM`,di]],[`gemma2`,[`Gemma2ForCausalLM`,mi]],[`gemma3_text`,[`Gemma3ForCausalLM`,_i]],[`helium`,[`HeliumForCausalLM`,Vr]],[`glm`,[`GlmForCausalLM`,Wr]],[`openelm`,[`OpenELMForCausalLM`,bi]],[`qwen2`,[`Qwen2ForCausalLM`,Ci]],[`qwen3`,[`Qwen3ForCausalLM`,Ei]],[`phi`,[`PhiForCausalLM`,ji]],[`phi3`,[`Phi3ForCausalLM`,Pi]],[`mpt`,[`MptForCausalLM`,Bi]],[`opt`,[`OPTForCausalLM`,Ui]],[`mbart`,[`MBartForCausalLM`,sn]],[`mistral`,[`MistralForCausalLM`,ic]],[`starcoder2`,[`Starcoder2ForCausalLM`,sc]],[`falcon`,[`FalconForCausalLM`,uc]],[`trocr`,[`TrOCRForCausalLM`,tc]],[`stablelm`,[`StableLmForCausalLM`,Cc]],[`phi3_v`,[`Phi3VForCausalLM`,tr]]]),Il=new Map([[`multi_modality`,[`MultiModalityCausalLM`,Xc]]]),Ll=new Map([[`bert`,[`BertForMaskedLM`,_e]],[`neobert`,[`NeoBertForMaskedLM`,Se]],[`modernbert`,[`ModernBertForMaskedLM`,Oe]],[`roformer`,[`RoFormerForMaskedLM`,Pe]],[`electra`,[`ElectraForMaskedLM`,We]],[`esm`,[`EsmForMaskedLM`,bt]],[`convbert`,[`ConvBertForMaskedLM`,Be]],[`camembert`,[`CamembertForMaskedLM`,Xe]],[`deberta`,[`DebertaForMaskedLM`,nt]],[`deberta-v2`,[`DebertaV2ForMaskedLM`,ct]],[`mpnet`,[`MPNetForMaskedLM`,At]],[`albert`,[`AlbertForMaskedLM`,Ut]],[`distilbert`,[`DistilBertForMaskedLM`,_t]],[`roberta`,[`RobertaForMaskedLM`,hn]],[`xlm`,[`XLMWithLMHeadModel`,bn]],[`xlm-roberta`,[`XLMRobertaForMaskedLM`,Tn]],[`mobilebert`,[`MobileBertForMaskedLM`,Tt]],[`squeezebert`,[`SqueezeBertForMaskedLM`,It]]]),Rl=new Map([[`bert`,[`BertForQuestionAnswering`,ye]],[`neobert`,[`NeoBertForQuestionAnswering`,Te]],[`roformer`,[`RoFormerForQuestionAnswering`,Le]],[`electra`,[`ElectraForQuestionAnswering`,qe]],[`convbert`,[`ConvBertForQuestionAnswering`,He]],[`camembert`,[`CamembertForQuestionAnswering`,$e]],[`deberta`,[`DebertaForQuestionAnswering`,at]],[`deberta-v2`,[`DebertaV2ForQuestionAnswering`,dt]],[`mpnet`,[`MPNetForQuestionAnswering`,Nt]],[`albert`,[`AlbertForQuestionAnswering`,Ht]],[`distilbert`,[`DistilBertForQuestionAnswering`,gt]],[`roberta`,[`RobertaForQuestionAnswering`,_n]],[`xlm`,[`XLMForQuestionAnswering`,Sn]],[`xlm-roberta`,[`XLMRobertaForQuestionAnswering`,On]],[`mobilebert`,[`MobileBertForQuestionAnswering`,Dt]],[`squeezebert`,[`SqueezeBertForQuestionAnswering`,Rt]]]),zl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,zn]],[`idefics3`,[`Idefics3ForConditionalGeneration`,Qn]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,$n]]]),Bl=new Map([[`llava`,[`LlavaForConditionalGeneration`,Vn]],[`llava_onevision`,[`LlavaOnevisionForConditionalGeneration`,Hn]],[`moondream1`,[`Moondream1ForConditionalGeneration`,Un]],[`florence2`,[`Florence2ForConditionalGeneration`,Gn]],[`qwen2-vl`,[`Qwen2VLForConditionalGeneration`,Oi]],[`idefics3`,[`Idefics3ForConditionalGeneration`,Qn]],[`smolvlm`,[`SmolVLMForConditionalGeneration`,$n]],[`paligemma`,[`PaliGemmaForConditionalGeneration`,qn]],[`llava_qwen2`,[`LlavaQwen2ForCausalLM`,Jn]],[`gemma3n`,[`Gemma3nForConditionalGeneration`,Xn]]]),Vl=new Map([[`ultravox`,[`UltravoxModel`,sl]]]),Hl=new Map([[`vision-encoder-decoder`,[`VisionEncoderDecoderModel`,zn]]]),Ul=new Map([[`vit`,[`ViTForImageClassification`,Ki]],[`ijepa`,[`IJepaForImageClassification`,Yi]],[`pvt`,[`PvtForImageClassification`,ea]],[`vit_msn`,[`ViTMSNForImageClassification`,aa]],[`fastvit`,[`FastViTForImageClassification`,ua]],[`mobilevit`,[`MobileViTForImageClassification`,ha]],[`mobilevitv2`,[`MobileViTV2ForImageClassification`,va]],[`beit`,[`BeitForImageClassification`,Da]],[`deit`,[`DeiTForImageClassification`,to]],[`hiera`,[`HieraForImageClassification`,io]],[`convnext`,[`ConvNextForImageClassification`,Vo]],[`convnextv2`,[`ConvNextV2ForImageClassification`,Wo]],[`dinov2`,[`Dinov2ForImageClassification`,qo]],[`dinov2_with_registers`,[`Dinov2WithRegistersForImageClassification`,Xo]],[`resnet`,[`ResNetForImageClassification`,so]],[`swin`,[`SwinForImageClassification`,uo]],[`segformer`,[`SegformerForImageClassification`,yc]],[`efficientnet`,[`EfficientNetForImageClassification`,Ec]],[`mobilenet_v1`,[`MobileNetV1ForImageClassification`,Nc]],[`mobilenet_v2`,[`MobileNetV2ForImageClassification`,Lc]],[`mobilenet_v3`,[`MobileNetV3ForImageClassification`,Vc]],[`mobilenet_v4`,[`MobileNetV4ForImageClassification`,Gc]]]),Wl=new Map([[`detr`,[`DetrForObjectDetection`,Aa]],[`rt_detr`,[`RTDetrForObjectDetection`,Ia]],[`rt_detr_v2`,[`RTDetrV2ForObjectDetection`,Ba]],[`rf_detr`,[`RFDetrForObjectDetection`,Wa]],[`d_fine`,[`DFineForObjectDetection`,Ja]],[`table-transformer`,[`TableTransformerForObjectDetection`,Za]],[`yolos`,[`YolosForObjectDetection`,ts]]]),Gl=new Map([[`owlvit`,[`OwlViTForObjectDetection`,xa]],[`owlv2`,[`Owlv2ForObjectDetection`,wa]],[`grounding-dino`,[`GroundingDinoForObjectDetection`,Qo]]]),Kl=new Map([[`detr`,[`DetrForSegmentation`,ja]],[`clipseg`,[`CLIPSegForImageSegmentation`,mr]]]),ql=new Map([[`segformer`,[`SegformerForSemanticSegmentation`,bc]],[`sapiens`,[`SapiensForSemanticSegmentation`,So]],[`swin`,[`SwinForSemanticSegmentation`,fo]],[`mobilenet_v1`,[`MobileNetV1ForSemanticSegmentation`,Pc]],[`mobilenet_v2`,[`MobileNetV2ForSemanticSegmentation`,Rc]],[`mobilenet_v3`,[`MobileNetV3ForSemanticSegmentation`,Hc]],[`mobilenet_v4`,[`MobileNetV4ForSemanticSegmentation`,Kc]]]),Jl=new Map([[`detr`,[`DetrForSegmentation`,ja]],[`maskformer`,[`MaskFormerForInstanceSegmentation`,No]]]),Yl=new Map([[`sam`,[`SamModel`,os]]]),Xl=new Map([[`wav2vec2`,[`Wav2Vec2ForCTC`,gs]],[`wav2vec2-bert`,[`Wav2Vec2BertForCTC`,Fs]],[`unispeech`,[`UniSpeechForCTC`,Es]],[`unispeech-sat`,[`UniSpeechSatForCTC`,As]],[`wavlm`,[`WavLMForCTC`,Us]],[`hubert`,[`HubertForCTC`,zs]]]),Zl=new Map([[`wav2vec2`,[`Wav2Vec2ForSequenceClassification`,_s]],[`wav2vec2-bert`,[`Wav2Vec2BertForSequenceClassification`,Is]],[`unispeech`,[`UniSpeechForSequenceClassification`,Ds]],[`unispeech-sat`,[`UniSpeechSatForSequenceClassification`,js]],[`wavlm`,[`WavLMForSequenceClassification`,Ws]],[`hubert`,[`HubertForSequenceClassification`,Bs]],[`audio-spectrogram-transformer`,[`ASTForAudioClassification`,jn]]]),Ql=new Map([[`wavlm`,[`WavLMForXVector`,Gs]]]),$l=new Map([[`unispeech-sat`,[`UniSpeechSatForAudioFrameClassification`,Ms]],[`wavlm`,[`WavLMForAudioFrameClassification`,Ks]],[`wav2vec2`,[`Wav2Vec2ForAudioFrameClassification`,vs]],[`pyannote`,[`PyAnnoteForAudioFrameClassification`,xs]]]),eu=new Map([[`vitmatte`,[`VitMatteForImageMatting`,fa]]]),tu=new Map([[`patchtst`,[`PatchTSTForPrediction`,nl]],[`patchtsmixer`,[`PatchTSMixerForPrediction`,al]]]),nu=new Map([[`swin2sr`,[`Swin2SRForImageSuperResolution`,ho]]]),ru=new Map([[`dpt`,[`DPTForDepthEstimation`,vo]],[`depth_anything`,[`DepthAnythingForDepthEstimation`,bo]],[`glpn`,[`GLPNForDepthEstimation`,Io]],[`sapiens`,[`SapiensForDepthEstimation`,Co]],[`depth_pro`,[`DepthProForDepthEstimation`,Eo]],[`metric3d`,[`Metric3DForDepthEstimation`,Oo]],[`metric3dv2`,[`Metric3Dv2ForDepthEstimation`,Ao]]]),iu=new Map([[`sapiens`,[`SapiensForNormalEstimation`,wo]]]),au=new Map([[`vitpose`,[`VitPoseForPoseEstimation`,Zi]]]),ou=new Map([[`clip`,[`CLIPVisionModelWithProjection`,q]],[`siglip`,[`SiglipVisionModel`,sr]],[`jina_clip`,[`JinaCLIPVisionModel`,fr]]]),su=[[Tl,x.EncoderOnly],[El,x.EncoderDecoder],[Ol,x.DecoderOnly],[Dl,x.AutoEncoder],[Ml,x.EncoderOnly],[Nl,x.EncoderOnly],[Pl,x.Seq2Seq],[kl,x.Seq2Seq],[Fl,x.DecoderOnly],[Il,x.MultiModality],[Ll,x.EncoderOnly],[Rl,x.EncoderOnly],[zl,x.Vision2Seq],[Bl,x.ImageTextToText],[Vl,x.AudioTextToText],[Ul,x.EncoderOnly],[Kl,x.EncoderOnly],[Jl,x.EncoderOnly],[ql,x.EncoderOnly],[eu,x.EncoderOnly],[tu,x.EncoderOnly],[nu,x.EncoderOnly],[ru,x.EncoderOnly],[iu,x.EncoderOnly],[au,x.EncoderOnly],[Wl,x.EncoderOnly],[Gl,x.EncoderOnly],[Yl,x.MaskGeneration],[Xl,x.EncoderOnly],[Zl,x.EncoderOnly],[Al,x.Seq2Seq],[jl,x.EncoderOnly],[Ql,x.EncoderOnly],[$l,x.EncoderOnly],[ou,x.EncoderOnly]];for(let[e,t]of su)for(let[n,r]of e.values())S.set(n,t),w.set(r,n),C.set(n,r);let cu=[[`MusicgenForConditionalGeneration`,Ac,x.Musicgen],[`Phi3VForCausalLM`,tr,x.Phi3V],[`CLIPTextModelWithProjection`,ir,x.EncoderOnly],[`SiglipTextModel`,Y,x.EncoderOnly],[`JinaCLIPTextModel`,dr,x.EncoderOnly],[`ClapTextModelWithProjection`,pc,x.EncoderOnly],[`ClapAudioModelWithProjection`,mc,x.EncoderOnly],[`DacEncoderModel`,vl,x.EncoderOnly],[`DacDecoderModel`,yl,x.EncoderOnly],[`MimiEncoderModel`,fl,x.EncoderOnly],[`MimiDecoderModel`,pl,x.EncoderOnly],[`SnacEncoderModel`,Sl,x.EncoderOnly],[`SnacDecoderModel`,Cl,x.EncoderOnly],[`Gemma3nForConditionalGeneration`,Xn,x.ImageAudioTextToText]];for(let[e,t,n]of cu)S.set(e,n),w.set(t,e),C.set(e,t);let lu=new Map([[`modnet`,Kl],[`birefnet`,Kl],[`isnet`,Kl],[`ben`,Kl]]);for(let[e,t]of lu.entries())t.set(e,[`PreTrainedModel`,L]),S.set(e,x.EncoderOnly),w.set(L,e),C.set(e,L);class uu extends wl{}e.defineProperty(uu,`MODEL_CLASS_MAPPINGS`,su.map(e=>e[0])),e.defineProperty(uu,`BASE_IF_FAIL`,!0);class du extends wl{}e.defineProperty(du,`MODEL_CLASS_MAPPINGS`,[Ml]);class fu extends wl{}e.defineProperty(fu,`MODEL_CLASS_MAPPINGS`,[Nl]);class pu extends wl{}e.defineProperty(pu,`MODEL_CLASS_MAPPINGS`,[Pl]);class mu extends wl{}e.defineProperty(mu,`MODEL_CLASS_MAPPINGS`,[kl]);class hu extends wl{}e.defineProperty(hu,`MODEL_CLASS_MAPPINGS`,[Al]);class gu extends wl{}e.defineProperty(gu,`MODEL_CLASS_MAPPINGS`,[jl]);class _u extends wl{}e.defineProperty(_u,`MODEL_CLASS_MAPPINGS`,[Fl]);class vu extends wl{}e.defineProperty(vu,`MODEL_CLASS_MAPPINGS`,[Ll]);class yu extends wl{}e.defineProperty(yu,`MODEL_CLASS_MAPPINGS`,[Rl]);class bu extends wl{}e.defineProperty(bu,`MODEL_CLASS_MAPPINGS`,[zl]);class xu extends wl{}e.defineProperty(xu,`MODEL_CLASS_MAPPINGS`,[Ul]);class Su extends wl{}e.defineProperty(Su,`MODEL_CLASS_MAPPINGS`,[Kl]);class Cu extends wl{}e.defineProperty(Cu,`MODEL_CLASS_MAPPINGS`,[ql]);class wu extends wl{}e.defineProperty(wu,`MODEL_CLASS_MAPPINGS`,[Jl]);class Tu extends wl{}e.defineProperty(Tu,`MODEL_CLASS_MAPPINGS`,[Wl]);class Eu extends wl{}e.defineProperty(Eu,`MODEL_CLASS_MAPPINGS`,[Gl]);class Du extends wl{}e.defineProperty(Du,`MODEL_CLASS_MAPPINGS`,[Yl]);class Ou extends wl{}e.defineProperty(Ou,`MODEL_CLASS_MAPPINGS`,[Xl]);class ku extends wl{}e.defineProperty(ku,`MODEL_CLASS_MAPPINGS`,[Zl]);class Au extends wl{}e.defineProperty(Au,`MODEL_CLASS_MAPPINGS`,[Ql]);class ju extends wl{}e.defineProperty(ju,`MODEL_CLASS_MAPPINGS`,[$l]);class Mu extends wl{}e.defineProperty(Mu,`MODEL_CLASS_MAPPINGS`,[Hl]);class Nu extends wl{}e.defineProperty(Nu,`MODEL_CLASS_MAPPINGS`,[eu]);class Pu extends wl{}e.defineProperty(Pu,`MODEL_CLASS_MAPPINGS`,[nu]);class Fu extends wl{}e.defineProperty(Fu,`MODEL_CLASS_MAPPINGS`,[ru]);class Iu extends wl{}e.defineProperty(Iu,`MODEL_CLASS_MAPPINGS`,[iu]);class Lu extends wl{}e.defineProperty(Lu,`MODEL_CLASS_MAPPINGS`,[au]);class Ru extends wl{}e.defineProperty(Ru,`MODEL_CLASS_MAPPINGS`,[ou]);class zu extends wl{}e.defineProperty(zu,`MODEL_CLASS_MAPPINGS`,[Bl]);class Bu extends wl{}e.defineProperty(Bu,`MODEL_CLASS_MAPPINGS`,[Vl]);class Vu extends pe{constructor({logits:e,past_key_values:t,encoder_outputs:n,decoder_attentions:r=null,cross_attentions:i=null}){super(),this.logits=e,this.past_key_values=t,this.encoder_outputs=n,this.decoder_attentions=r,this.cross_attentions=i}}class Q extends pe{constructor({logits:e,...t}){super(),this.logits=e;let n=Object.values(t);n.length>0&&(this.attentions=n)}}class Hu extends pe{constructor({logits:e,embeddings:t}){super(),this.logits=e,this.embeddings=t}}class Uu extends pe{constructor({logits:e}){super(),this.logits=e}}class Wu extends pe{constructor({logits:e}){super(),this.logits=e}}class Gu extends pe{constructor({start_logits:e,end_logits:t}){super(),this.start_logits=e,this.end_logits=t}}class Ku extends pe{constructor({logits:e}){super(),this.logits=e}}class qu extends pe{constructor({logits:e,past_key_values:t}){super(),this.logits=e,this.past_key_values=t}}class Ju extends pe{constructor({alphas:e}){super(),this.alphas=e}}class Yu extends pe{constructor({waveform:e,spectrogram:t}){super(),this.waveform=e,this.spectrogram=t}}},"./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hann`,{periodic:!1}),this.mean=this.config.mean,this.std=this.config.std}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e){(0,r.validate_audio_inputs)(e,`ASTFeatureExtractor`);let t=await this._extract_fbank_features(e,this.config.max_length);if(this.config.do_normalize){let e=this.std*2,n=t.data;for(let t=0;t{n.r(t),n.d(t,{AutoFeatureExtractor:()=>s});var r=n( -/*! ../../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../../utils/hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),o=n( -/*! ../feature_extractors.js */ -`./src/models/feature_extractors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.FEATURE_EXTRACTOR_NAME,!0,t),a=n.feature_extractor_type,s=o[a];if(!s)throw Error(`Unknown feature_extractor_type: '${a}'. Please report this at ${r.GITHUB_ISSUE_URL}.`);return new s(n)}}},"./src/models/auto/image_processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoImageProcessor:()=>s});var r=n( -/*! ../../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../../utils/hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),o=n( -/*! ../image_processors.js */ -`./src/models/image_processors.js`);class s{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),s=n.image_processor_type??n.feature_extractor_type,c=o[s?.replace(/Fast$/,``)];return c||(s!==void 0&&console.warn(`Image processor type '${s}' not found, assuming base ImageProcessor. Please report this at ${r.GITHUB_ISSUE_URL}.`),c=a.ImageProcessor),new c(n)}}},"./src/models/auto/processing_auto.js":(e,t,n)=>{n.r(t),n.d(t,{AutoProcessor:()=>l});var r=n( -/*! ../../utils/constants.js */ -`./src/utils/constants.js`),i=n( -/*! ../../utils/hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),o=n( -/*! ../processors.js */ -`./src/models/processors.js`),s=n( -/*! ../image_processors.js */ -`./src/models/image_processors.js`),c=n( -/*! ../feature_extractors.js */ -`./src/models/feature_extractors.js`);class l{static async from_pretrained(e,t={}){let n=await(0,i.getModelJSON)(e,r.IMAGE_PROCESSOR_NAME,!0,t),{image_processor_type:l,feature_extractor_type:u,processor_class:d}=n;if(d&&o[d])return o[d].from_pretrained(e,t);if(!l&&!u)throw Error("No `image_processor_type` or `feature_extractor_type` found in the config.");let f={};if(l){let e=s[l.replace(/Fast$/,``)];if(!e)throw Error(`Unknown image_processor_type: '${l}'.`);f.image_processor=new e(n)}if(u){let e=s[u];if(e)f.image_processor=new e(n);else{let e=c[u];if(!e)throw Error(`Unknown feature_extractor_type: '${u}'.`);f.feature_extractor=new e(n)}}let p={};return new a.Processor(p,f,null)}}},"./src/models/beit/image_processing_beit.js":(e,t,n)=>{n.r(t),n.d(t,{BeitFeatureExtractor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/bit/image_processing_bit.js":(e,t,n)=>{n.r(t),n.d(t,{BitImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/chinese_clip/image_processing_chinese_clip.js":(e,t,n)=>{n.r(t),n.d(t,{ChineseCLIPFeatureExtractor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/clap/feature_extraction_clap.js":(e,t,n)=>{n.r(t),n.d(t,{ClapFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e),this.mel_filters=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,null,`htk`),this.mel_filters_slaney=(0,a.mel_filter_bank)(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,`slaney`,`slaney`),this.window=(0,a.window_function)(this.config.fft_window_size,`hann`)}async _get_input_mel(e,t,n,r){let i,a=!1,o=e.length-t;if(o>0)if(n===`rand_trunc`){a=!0;let n=Math.floor(Math.random()*(o+1));e=e.subarray(n,n+t),i=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}else throw Error(`Truncation strategy "${n}" not implemented`);else{if(o<0){let n=new Float64Array(t);if(n.set(e),r===`repeat`)for(let r=e.length;r{n.r(t),n.d(t,{CLIPFeatureExtractor:()=>a,CLIPImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/convnext/image_processing_convnext.js":(e,t,n)=>{n.r(t),n.d(t,{ConvNextFeatureExtractor:()=>a,ConvNextImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.crop_pct=this.config.crop_pct??224/256}async resize(e){var t;let n=(t=this.size)?.shortest_edge;if(n===void 0)throw Error(`Size dictionary must contain 'shortest_edge' key.`);if(n<384){let t=Math.floor(n/this.crop_pct),[r,i]=this.get_resize_output_image_size(e,{shortest_edge:t});e=await e.resize(r,i,{resample:this.resample}),e=await e.center_crop(n,n)}else e=await e.resize(n,n,{resample:this.resample});return e}}class a extends i{}},"./src/models/dac/feature_extraction_dac.js":(e,t,n)=>{n.r(t),n.d(t,{DacFeatureExtractor:()=>i});var r=n( -/*! ../encodec/feature_extraction_encodec.js */ -`./src/models/encodec/feature_extraction_encodec.js`);class i extends r.EncodecFeatureExtractor{}},"./src/models/deit/image_processing_deit.js":(e,t,n)=>{n.r(t),n.d(t,{DeiTFeatureExtractor:()=>a,DeiTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/detr/image_processing_detr.js":(e,t,n)=>{n.r(t),n.d(t,{DetrFeatureExtractor:()=>o,DetrImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=[t.pixel_values.dims[0],64,64],r=(0,i.full)(n,1n);return{...t,pixel_mask:r}}post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class o extends a{}},"./src/models/donut/image_processing_donut.js":(e,t,n)=>{n.r(t),n.d(t,{DonutFeatureExtractor:()=>a,DonutImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t,s=this.image_mean;Array.isArray(this.image_mean)||(s=Array(o).fill(s));let c=this.image_std;Array.isArray(c)||(c=Array(o).fill(s));let l=s.map((e,t)=>-e/c[t]);return super.pad_image(e,t,n,{center:!0,constant_values:l,...r})}}class a extends i{}},"./src/models/dpt/image_processing_dpt.js":(e,t,n)=>{n.r(t),n.d(t,{DPTFeatureExtractor:()=>a,DPTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/efficientnet/image_processing_efficientnet.js":(e,t,n)=>{n.r(t),n.d(t,{EfficientNetImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super(e),this.include_top=this.config.include_top??!0,this.include_top&&(this.image_std=this.image_std.map(e=>e*e))}}},"./src/models/encodec/feature_extraction_encodec.js":(e,t,n)=>{n.r(t),n.d(t,{EncodecFeatureExtractor:()=>a});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`EncodecFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=this.config.feature_size;if(e.length%t!==0)throw Error(`The length of the audio data must be a multiple of the number of channels (${t}).`);let n=[1,t,e.length/t];return{input_values:new i.Tensor(`float32`,e,n)}}}},"./src/models/feature_extractors.js":(e,t,n)=>{n.r(t),n.d(t,{ASTFeatureExtractor:()=>r.ASTFeatureExtractor,ClapFeatureExtractor:()=>a.ClapFeatureExtractor,DacFeatureExtractor:()=>o.DacFeatureExtractor,EncodecFeatureExtractor:()=>i.EncodecFeatureExtractor,Gemma3nAudioFeatureExtractor:()=>s.Gemma3nAudioFeatureExtractor,ImageFeatureExtractor:()=>g.ImageProcessor,MoonshineFeatureExtractor:()=>c.MoonshineFeatureExtractor,PyAnnoteFeatureExtractor:()=>l.PyAnnoteFeatureExtractor,SeamlessM4TFeatureExtractor:()=>u.SeamlessM4TFeatureExtractor,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SpeechT5FeatureExtractor:()=>f.SpeechT5FeatureExtractor,Wav2Vec2FeatureExtractor:()=>p.Wav2Vec2FeatureExtractor,WeSpeakerFeatureExtractor:()=>m.WeSpeakerFeatureExtractor,WhisperFeatureExtractor:()=>h.WhisperFeatureExtractor});var r=n( -/*! ./audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js */ -`./src/models/audio_spectrogram_transformer/feature_extraction_audio_spectrogram_transformer.js`),i=n( -/*! ./encodec/feature_extraction_encodec.js */ -`./src/models/encodec/feature_extraction_encodec.js`),a=n( -/*! ./clap/feature_extraction_clap.js */ -`./src/models/clap/feature_extraction_clap.js`),o=n( -/*! ./dac/feature_extraction_dac.js */ -`./src/models/dac/feature_extraction_dac.js`),s=n( -/*! ./gemma3n/feature_extraction_gemma3n.js */ -`./src/models/gemma3n/feature_extraction_gemma3n.js`),c=n( -/*! ./moonshine/feature_extraction_moonshine.js */ -`./src/models/moonshine/feature_extraction_moonshine.js`),l=n( -/*! ./pyannote/feature_extraction_pyannote.js */ -`./src/models/pyannote/feature_extraction_pyannote.js`),u=n( -/*! ./seamless_m4t/feature_extraction_seamless_m4t.js */ -`./src/models/seamless_m4t/feature_extraction_seamless_m4t.js`),d=n( -/*! ./snac/feature_extraction_snac.js */ -`./src/models/snac/feature_extraction_snac.js`),f=n( -/*! ./speecht5/feature_extraction_speecht5.js */ -`./src/models/speecht5/feature_extraction_speecht5.js`),p=n( -/*! ./wav2vec2/feature_extraction_wav2vec2.js */ -`./src/models/wav2vec2/feature_extraction_wav2vec2.js`),m=n( -/*! ./wespeaker/feature_extraction_wespeaker.js */ -`./src/models/wespeaker/feature_extraction_wespeaker.js`),h=n( -/*! ./whisper/feature_extraction_whisper.js */ -`./src/models/whisper/feature_extraction_whisper.js`),g=n( -/*! ../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`)},"./src/models/florence2/processing_florence2.js":(t,n,r)=>{r.r(n),r.d(n,{Florence2Processor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{constructor(e,t,n){super(e,t,n);let{tasks_answer_post_processing_type:r,task_prompts_without_inputs:i,task_prompts_with_input:a}=this.image_processor.config;this.tasks_answer_post_processing_type=new Map(Object.entries(r??{})),this.task_prompts_without_inputs=new Map(Object.entries(i??{})),this.task_prompts_with_input=new Map(Object.entries(a??{})),this.regexes={quad_boxes:/(.+?)/gm,bboxes:/([^<]+)?/gm},this.size_per_bin=1e3}construct_prompts(e){typeof e==`string`&&(e=[e]);let t=[];for(let n of e)if(this.task_prompts_without_inputs.has(n))t.push(this.task_prompts_without_inputs.get(n));else{for(let[e,r]of this.task_prompts_with_input)if(n.includes(e)){t.push(r.replaceAll(`{input}`,n).replaceAll(e,``));break}t.length!==e.length&&t.push(n)}return t}post_process_generation(e,t,n){let r=this.tasks_answer_post_processing_type.get(t)??`pure_text`;e=e.replaceAll(``,``).replaceAll(``,``);let i;switch(r){case`pure_text`:i=e;break;case`description_with_bboxes`:case`bboxes`:case`phrase_grounding`:case`ocr`:let a=r===`ocr`?`quad_boxes`:`bboxes`,o=e.matchAll(this.regexes[a]),s=[],c=[];for(let[e,t,...r]of o)s.push(t?t.trim():s.at(-1)??``),c.push(r.map((e,t)=>(Number(e)+.5)/this.size_per_bin*n[t%2]));i={labels:s,[a]:c};break;default:throw Error(`Task "${t}" (of type "${r}") not yet implemented.`)}return{[t]:i}}async _call(e,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=await this.image_processor(e,n),i=t?this.tokenizer(this.construct_prompts(t),n):{};return{...r,...i}}}e.defineProperty(s,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(s,`image_processor_class`,a.AutoImageProcessor)},"./src/models/gemma3n/feature_extraction_gemma3n.js":(e,t,n)=>{n.r(t),n.d(t,{Gemma3nAudioFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let{fft_length:t,feature_size:n,min_frequency:r,max_frequency:i,sampling_rate:o,frame_length:s}=this.config,c=(0,a.mel_filter_bank)(Math.floor(1+t/2),n,r,i,o,null,`htk`,!1);this.mel_filters=c,this.window=(0,a.window_function)(s,`hann`)}async _extract_fbank_features(e,t){return(0,a.spectrogram)(e,this.window,this.config.frame_length,this.config.hop_length,{fft_length:this.config.fft_length,center:!1,onesided:!0,preemphasis:this.config.preemphasis,preemphasis_htk_flavor:this.config.preemphasis_htk_flavor,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:this.config.mel_floor,remove_dc_offset:!1,transpose:!0})}async _call(e,{max_length:t=48e4,truncation:n=!0,padding:a=!0,pad_to_multiple_of:o=128}={}){if((0,r.validate_audio_inputs)(e,`Gemma3nAudioFeatureExtractor`),n&&e.length>t&&(e=e.slice(0,t)),a&&e.length%o!==0){let t=o-e.length%o,n=new Float64Array(e.length+t);n.set(e),this.config.padding_value!==0&&n.fill(this.config.padding_value,e.length),e=n}let s=await this._extract_fbank_features(e,this.config.max_length),c=(0,i.full)([1,s.dims[0]],!0);return{input_features:s.unsqueeze_(0),input_features_mask:c}}}},"./src/models/gemma3n/processing_gemma3n.js":(t,n,r)=>{r.r(n),r.d(n,{Gemma3nProcessor:()=>u});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),s=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),c=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`),l=r( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class u extends i.Processor{constructor(e,t,n){super(e,t,n),this.audio_seq_length=this.config.audio_seq_length,this.image_seq_length=this.config.image_seq_length;let{audio_token_id:r,boa_token:i,audio_token:a,eoa_token:o,image_token_id:s,boi_token:c,image_token:l,eoi_token:u}=this.tokenizer.config;this.audio_token_id=r,this.boa_token=i,this.audio_token=a;let d=a.repeat(this.audio_seq_length);this.full_audio_sequence=`\n\n${i}${d}${o}\n\n`,this.image_token_id=s,this.boi_token=c,this.image_token=l;let f=l.repeat(this.image_seq_length);this.full_image_sequence=`\n\n${c}${f}${u}\n\n`}async _call(e,t=null,n=null,r={}){typeof e==`string`&&(e=[e]);let i;n&&(i=await this.feature_extractor(n,r),e=e.map(e=>e.replaceAll(this.audio_token,this.full_audio_sequence)));let a;t&&(a=await this.image_processor(t,r),e=e.map(e=>e.replaceAll(this.image_token,this.full_image_sequence)));let o=this.tokenizer(e,r);return{...o,...a,...i}}}e.defineProperty(u,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(u,`feature_extractor_class`,o.AutoFeatureExtractor),e.defineProperty(u,`tokenizer_class`,s.AutoTokenizer),e.defineProperty(u,`uses_processor_config`,!0),e.defineProperty(u,`uses_chat_template_file`,!0)},"./src/models/glpn/image_processing_glpn.js":(e,t,n)=>{n.r(t),n.d(t,{GLPNFeatureExtractor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/grounding_dino/image_processing_grounding_dino.js":(e,t,n)=>{n.r(t),n.d(t,{GroundingDinoImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e){let t=await super._call(e),n=t.pixel_values.dims,r=(0,i.ones)([n[0],n[2],n[3]]);return{...t,pixel_mask:r}}}},"./src/models/grounding_dino/processing_grounding_dino.js":(t,n,r)=>{r.r(n),r.d(n,{GroundingDinoProcessor:()=>l});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);function c(e,t){let n=0,r=e.dims.at(-1)-1,i=e.tolist();i.fill(!1,0,n+1),i.fill(!1,r);let a=t.tolist();return i.map((e,t)=>e?t:null).filter(e=>e!==null).map(e=>a[e])}class l extends i.Processor{async _call(e,t,n={}){let r=e?await this.image_processor(e,n):{},i=t?this.tokenizer(t,n):{};return{...i,...r}}post_process_grounded_object_detection(e,t,{box_threshold:n=.25,text_threshold:r=.25,target_sizes:i=null}={}){let{logits:a,pred_boxes:o}=e,l=a.dims[0];if(i!==null&&i.length!==l)throw Error(`Make sure that you pass in as many target sizes as the batch dimension of the logits`);let u=a.dims.at(1),d=a.sigmoid(),f=d.max(-1).tolist(),p=o.tolist().map(e=>e.map(e=>(0,s.center_to_corners_format)(e))),m=[];for(let e=0;ee.map((e,t)=>e*a[(t+1)%2])));let o=f[e],s=[],l=[],h=[];for(let i=0;i{n.r(t),n.d(t,{Idefics3ImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{constructor(e){super(e),this.do_image_splitting=e.do_image_splitting??!0,this.max_image_size=e.max_image_size}get_resize_for_vision_encoder(e,t){let[n,r]=e.dims.slice(-2),i=r/n;return r>=n?(r=Math.ceil(r/t)*t,n=Math.floor(r/i),n=Math.ceil(n/t)*t):(n=Math.ceil(n/t)*t,r=Math.floor(n*i),r=Math.ceil(r/t)*t),{height:n,width:r}}async _call(e,{do_image_splitting:t=null,return_row_col_info:n=!1}={}){let r;if(!Array.isArray(e))r=[[e]];else{if(e.length===0||!e[0])throw Error(`No images provided.`);r=Array.isArray(e[0])?e:[e]}let a=[],o=[],s=[],c=[],l=[];for(let e of r){let n=await Promise.all(e.map(e=>this.preprocess(e)));c.push(...n.map(e=>e.original_size)),l.push(...n.map(e=>e.reshaped_input_size)),n.forEach(e=>e.pixel_values.unsqueeze_(0));let{longest_edge:r}=this.max_image_size,u;if(t??this.do_image_splitting){let e=Array(n.length),t=Array(n.length);u=await Promise.all(n.map(async(n,a)=>{let o=this.get_resize_for_vision_encoder(n.pixel_values,r),s=await(0,i.interpolate_4d)(n.pixel_values,{size:[o.height,o.width]}),{frames:c,num_splits_h:l,num_splits_w:u}=await this.split_image(s,this.max_image_size);return e[a]=l,t[a]=u,(0,i.cat)(c,0)})),o.push(e),s.push(t)}else{let e=[r,r];u=await Promise.all(n.map(t=>(0,i.interpolate_4d)(t.pixel_values,{size:e}))),o.push(Array(n.length).fill(0)),s.push(Array(n.length).fill(0))}a.push((0,i.cat)(u,0))}let u=a.length,[d,f,p,m]=a[0].dims,h,g;if(u===1)h=a[0].unsqueeze_(0),g=(0,i.full)([u,d,p,m],!0);else{let e=Math.max(...a.map(e=>e.dims.at(0)));g=(0,i.full)([u,e,p,m],!0);let t=g.data,n=e*p*m;for(let r=0;rn||s>r){c=Math.ceil(o/n),l=Math.ceil(s/r);let t=Math.ceil(o/c),u=Math.ceil(s/l);for(let n=0;n{r.r(n),r.d(n,{Idefics3Processor:()=>f});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`),c=r( -/*! ../../utils/core.js */ -`./src/utils/core.js`);function l(e,t,n,r,i,a){let o=``;for(let a=0;a`+i.repeat(e);o+=` -`}return o+=`\n${r}${a}`+i.repeat(e)+`${r}`,o}function u(e,t,n,r){return`${t}${r}`+n.repeat(e)+`${t}`}function d(e,t,n,r,i,a){return e===0&&t===0?u(n,r,i,a):l(n,e,t,r,i,a)}class f extends i.Processor{constructor(...t){super(...t),e.defineProperty(this,`fake_image_token`,``),e.defineProperty(this,`image_token`,``),e.defineProperty(this,`global_img_token`,``)}async _call(e,t=null,n={}){n.return_row_col_info??=!0;let r;t&&(r=await this.image_processor(t,n)),Array.isArray(e)||(e=[e]);let i=r.rows??[Array(e.length).fill(0)],a=r.cols??[Array(e.length).fill(0)],o=this.config.image_seq_len,s=[],l=[];for(let t=0;td(e,u[t],o,this.fake_image_token,this.image_token,this.global_img_token)),p=n.split(this.image_token);if(p.length===0)throw Error(`The image token should be present in the text.`);let m=p[0];for(let e=0;e{n.r(t),n.d(t,{BeitFeatureExtractor:()=>r.BeitFeatureExtractor,BitImageProcessor:()=>i.BitImageProcessor,CLIPFeatureExtractor:()=>o.CLIPFeatureExtractor,CLIPImageProcessor:()=>o.CLIPImageProcessor,ChineseCLIPFeatureExtractor:()=>a.ChineseCLIPFeatureExtractor,ConvNextFeatureExtractor:()=>s.ConvNextFeatureExtractor,ConvNextImageProcessor:()=>s.ConvNextImageProcessor,DPTFeatureExtractor:()=>d.DPTFeatureExtractor,DPTImageProcessor:()=>d.DPTImageProcessor,DeiTFeatureExtractor:()=>c.DeiTFeatureExtractor,DeiTImageProcessor:()=>c.DeiTImageProcessor,DetrFeatureExtractor:()=>l.DetrFeatureExtractor,DetrImageProcessor:()=>l.DetrImageProcessor,DonutFeatureExtractor:()=>u.DonutFeatureExtractor,DonutImageProcessor:()=>u.DonutImageProcessor,EfficientNetImageProcessor:()=>f.EfficientNetImageProcessor,GLPNFeatureExtractor:()=>p.GLPNFeatureExtractor,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,Idefics3ImageProcessor:()=>h.Idefics3ImageProcessor,JinaCLIPImageProcessor:()=>_.JinaCLIPImageProcessor,LlavaOnevisionImageProcessor:()=>v.LlavaOnevisionImageProcessor,Mask2FormerImageProcessor:()=>y.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>b.MaskFormerFeatureExtractor,MaskFormerImageProcessor:()=>b.MaskFormerImageProcessor,MobileNetV1FeatureExtractor:()=>x.MobileNetV1FeatureExtractor,MobileNetV1ImageProcessor:()=>x.MobileNetV1ImageProcessor,MobileNetV2FeatureExtractor:()=>S.MobileNetV2FeatureExtractor,MobileNetV2ImageProcessor:()=>S.MobileNetV2ImageProcessor,MobileNetV3FeatureExtractor:()=>C.MobileNetV3FeatureExtractor,MobileNetV3ImageProcessor:()=>C.MobileNetV3ImageProcessor,MobileNetV4FeatureExtractor:()=>w.MobileNetV4FeatureExtractor,MobileNetV4ImageProcessor:()=>w.MobileNetV4ImageProcessor,MobileViTFeatureExtractor:()=>T.MobileViTFeatureExtractor,MobileViTImageProcessor:()=>T.MobileViTImageProcessor,NougatImageProcessor:()=>E.NougatImageProcessor,OwlViTFeatureExtractor:()=>O.OwlViTFeatureExtractor,OwlViTImageProcessor:()=>O.OwlViTImageProcessor,Owlv2ImageProcessor:()=>D.Owlv2ImageProcessor,Phi3VImageProcessor:()=>k.Phi3VImageProcessor,PvtImageProcessor:()=>A.PvtImageProcessor,Qwen2VLImageProcessor:()=>ee.Qwen2VLImageProcessor,RTDetrImageProcessor:()=>te.RTDetrImageProcessor,SamImageProcessor:()=>ne.SamImageProcessor,SegformerFeatureExtractor:()=>re.SegformerFeatureExtractor,SegformerImageProcessor:()=>re.SegformerImageProcessor,SiglipImageProcessor:()=>j.SiglipImageProcessor,SmolVLMImageProcessor:()=>ie.SmolVLMImageProcessor,Swin2SRImageProcessor:()=>ae.Swin2SRImageProcessor,VLMImageProcessor:()=>g.VLMImageProcessor,ViTFeatureExtractor:()=>oe.ViTFeatureExtractor,ViTImageProcessor:()=>oe.ViTImageProcessor,VitMatteImageProcessor:()=>se.VitMatteImageProcessor,VitPoseImageProcessor:()=>ce.VitPoseImageProcessor,YolosFeatureExtractor:()=>le.YolosFeatureExtractor,YolosImageProcessor:()=>le.YolosImageProcessor});var r=n( -/*! ./beit/image_processing_beit.js */ -`./src/models/beit/image_processing_beit.js`),i=n( -/*! ./bit/image_processing_bit.js */ -`./src/models/bit/image_processing_bit.js`),a=n( -/*! ./chinese_clip/image_processing_chinese_clip.js */ -`./src/models/chinese_clip/image_processing_chinese_clip.js`),o=n( -/*! ./clip/image_processing_clip.js */ -`./src/models/clip/image_processing_clip.js`),s=n( -/*! ./convnext/image_processing_convnext.js */ -`./src/models/convnext/image_processing_convnext.js`),c=n( -/*! ./deit/image_processing_deit.js */ -`./src/models/deit/image_processing_deit.js`),l=n( -/*! ./detr/image_processing_detr.js */ -`./src/models/detr/image_processing_detr.js`),u=n( -/*! ./donut/image_processing_donut.js */ -`./src/models/donut/image_processing_donut.js`),d=n( -/*! ./dpt/image_processing_dpt.js */ -`./src/models/dpt/image_processing_dpt.js`),f=n( -/*! ./efficientnet/image_processing_efficientnet.js */ -`./src/models/efficientnet/image_processing_efficientnet.js`),p=n( -/*! ./glpn/image_processing_glpn.js */ -`./src/models/glpn/image_processing_glpn.js`),m=n( -/*! ./grounding_dino/image_processing_grounding_dino.js */ -`./src/models/grounding_dino/image_processing_grounding_dino.js`),h=n( -/*! ./idefics3/image_processing_idefics3.js */ -`./src/models/idefics3/image_processing_idefics3.js`),g=n( -/*! ./janus/image_processing_janus.js */ -`./src/models/janus/image_processing_janus.js`),_=n( -/*! ./jina_clip/image_processing_jina_clip.js */ -`./src/models/jina_clip/image_processing_jina_clip.js`),v=n( -/*! ./llava_onevision/image_processing_llava_onevision.js */ -`./src/models/llava_onevision/image_processing_llava_onevision.js`),y=n( -/*! ./mask2former/image_processing_mask2former.js */ -`./src/models/mask2former/image_processing_mask2former.js`),b=n( -/*! ./maskformer/image_processing_maskformer.js */ -`./src/models/maskformer/image_processing_maskformer.js`),x=n( -/*! ./mobilenet_v1/image_processing_mobilenet_v1.js */ -`./src/models/mobilenet_v1/image_processing_mobilenet_v1.js`),S=n( -/*! ./mobilenet_v2/image_processing_mobilenet_v2.js */ -`./src/models/mobilenet_v2/image_processing_mobilenet_v2.js`),C=n( -/*! ./mobilenet_v3/image_processing_mobilenet_v3.js */ -`./src/models/mobilenet_v3/image_processing_mobilenet_v3.js`),w=n( -/*! ./mobilenet_v4/image_processing_mobilenet_v4.js */ -`./src/models/mobilenet_v4/image_processing_mobilenet_v4.js`),T=n( -/*! ./mobilevit/image_processing_mobilevit.js */ -`./src/models/mobilevit/image_processing_mobilevit.js`),E=n( -/*! ./nougat/image_processing_nougat.js */ -`./src/models/nougat/image_processing_nougat.js`),D=n( -/*! ./owlv2/image_processing_owlv2.js */ -`./src/models/owlv2/image_processing_owlv2.js`),O=n( -/*! ./owlvit/image_processing_owlvit.js */ -`./src/models/owlvit/image_processing_owlvit.js`),k=n( -/*! ./phi3_v/image_processing_phi3_v.js */ -`./src/models/phi3_v/image_processing_phi3_v.js`),A=n( -/*! ./pvt/image_processing_pvt.js */ -`./src/models/pvt/image_processing_pvt.js`),ee=n( -/*! ./qwen2_vl/image_processing_qwen2_vl.js */ -`./src/models/qwen2_vl/image_processing_qwen2_vl.js`),te=n( -/*! ./rt_detr/image_processing_rt_detr.js */ -`./src/models/rt_detr/image_processing_rt_detr.js`),ne=n( -/*! ./sam/image_processing_sam.js */ -`./src/models/sam/image_processing_sam.js`),re=n( -/*! ./segformer/image_processing_segformer.js */ -`./src/models/segformer/image_processing_segformer.js`),j=n( -/*! ./siglip/image_processing_siglip.js */ -`./src/models/siglip/image_processing_siglip.js`),ie=n( -/*! ./smolvlm/image_processing_smolvlm.js */ -`./src/models/smolvlm/image_processing_smolvlm.js`),ae=n( -/*! ./swin2sr/image_processing_swin2sr.js */ -`./src/models/swin2sr/image_processing_swin2sr.js`),oe=n( -/*! ./vit/image_processing_vit.js */ -`./src/models/vit/image_processing_vit.js`),se=n( -/*! ./vitmatte/image_processing_vitmatte.js */ -`./src/models/vitmatte/image_processing_vitmatte.js`),ce=n( -/*! ./vitpose/image_processing_vitpose.js */ -`./src/models/vitpose/image_processing_vitpose.js`),le=n( -/*! ./yolos/image_processing_yolos.js */ -`./src/models/yolos/image_processing_yolos.js`)},"./src/models/janus/image_processing_janus.js":(e,t,n)=>{n.r(t),n.d(t,{VLMImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){super({do_pad:!0,pad_size:{width:e.image_size,height:e.image_size},...e}),this.constant_values=this.config.background_color.map(e=>e*this.rescale_factor)}pad_image(e,t,n,r){return super.pad_image(e,t,n,{constant_values:this.constant_values,center:!0,...r})}}},"./src/models/janus/processing_janus.js":(t,n,r)=>{r.r(n),r.d(n,{VLChatProcessor:()=>u});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/core.js */ -`./src/utils/core.js`),c=r( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),l=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`);class u extends i.Processor{constructor(e,t,n){super(e,t,n),this.image_tag=this.config.image_tag,this.image_start_tag=this.config.image_start_tag,this.image_end_tag=this.config.image_end_tag,this.num_image_tokens=this.config.num_image_tokens}async _call(e,{images:t=null,chat_template:n=`default`}={}){t?Array.isArray(t)||(t=[t]):t=await Promise.all(e.filter(e=>e.images).flatMap(e=>e.images).map(e=>l.RawImage.read(e)));let r=this.tokenizer,i=r.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0,chat_template:n}),a=e=>r.encode(e,{add_special_tokens:!1}),o=i.split(this.image_tag),u=o.length-1;if(t.length!==u)throw Error(`Number of images provided (${t.length}) does not match number of "${this.image_tag}" image tags (${u})`);let[d,f,p]=r.model.convert_tokens_to_ids([this.image_tag,this.image_start_tag,this.image_end_tag]),m=a(o[0]),h=Array(m.length).fill(!1);for(let e=1;e0){let e=await this.image_processor(t);return e.pixel_values.unsqueeze_(0),{..._,...e}}return _}}e.defineProperty(u,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(u,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(u,`uses_processor_config`,!0)},"./src/models/jina_clip/image_processing_jina_clip.js":(e,t,n)=>{n.r(t),n.d(t,{JinaCLIPImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{constructor(e){let{resize_mode:t,fill_color:n,interpolation:r,size:i,...a}=e,o=t===`squash`?{width:i,height:i}:t===`shortest`?{shortest_edge:i}:{longest_edge:i},s=r===`bicubic`?3:2;super({...a,size:o,resample:s,do_center_crop:!0,crop_size:i,do_normalize:!0})}}},"./src/models/jina_clip/processing_jina_clip.js":(t,n,r)=>{r.r(n),r.d(n,{JinaCLIPProcessor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{async _call(e=null,t=null,n={}){if(!e&&!t)throw Error(`Either text or images must be provided`);let r=e?this.tokenizer(e,n):{},i=t?await this.image_processor(t,n):{};return{...r,...i}}}e.defineProperty(s,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(s,`image_processor_class`,a.AutoImageProcessor)},"./src/models/llava/processing_llava.js":(t,n,r)=>{r.r(n),r.d(n,{LlavaProcessor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{async _call(e,t=null,n={}){let r=await this.image_processor(e,n);if(t){let[e,n]=r.pixel_values.dims.slice(-2),{image_token:i,patch_size:a,num_additional_image_tokens:o}=this.config,s=Math.floor(e/a)*Math.floor(n/a)+o;t=structuredClone(t),Array.isArray(t)||(t=[t]);for(let e=0;e{n.r(t),n.d(t,{LlavaOnevisionImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/mask2former/image_processing_mask2former.js":(e,t,n)=>{n.r(t),n.d(t,{Mask2FormerImageProcessor:()=>i});var r=n( -/*! ../maskformer/image_processing_maskformer.js */ -`./src/models/maskformer/image_processing_maskformer.js`);class i extends r.MaskFormerImageProcessor{}},"./src/models/maskformer/image_processing_maskformer.js":(e,t,n)=>{n.r(t),n.d(t,{MaskFormerFeatureExtractor:()=>a,MaskFormerImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_panoptic_segmentation(...e){return(0,r.post_process_panoptic_segmentation)(...e)}post_process_instance_segmentation(...e){return(0,r.post_process_instance_segmentation)(...e)}}class a extends i{}},"./src/models/mgp_str/processing_mgp_str.js":(t,n,r)=>{r.r(n),r.d(n,{MgpstrProcessor:()=>l});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/maths.js */ -`./src/utils/maths.js`);let c={char:[`char_decode`,1],bpe:[`bpe_decode`,2],wp:[`wp_decode`,102]};class l extends i.Processor{get char_tokenizer(){return this.components.char_tokenizer}get bpe_tokenizer(){return this.components.bpe_tokenizer}get wp_tokenizer(){return this.components.wp_tokenizer}_decode_helper(e,t){if(!c.hasOwnProperty(t))throw Error(`Format ${t} is not supported.`);let[n,r]=c[t],i=this[n].bind(this),[a,o]=e.dims,l=[],u=[],d=e.tolist();for(let e=0;e0?i.reduce((e,t)=>e*t,1):0;u.push(n),l.push(a)}let f=i(u);return[f,l]}char_decode(e){return this.char_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}bpe_decode(e){return this.bpe_tokenizer.batch_decode(e)}wp_decode(e){return this.wp_tokenizer.batch_decode(e).map(e=>e.replaceAll(` `,``))}batch_decode([e,t,n]){let[r,i]=this._decode_helper(e,`char`),[a,o]=this._decode_helper(t,`bpe`),[c,l]=this._decode_helper(n,`wp`),u=[],d=[];for(let e=0;e{n.r(t),n.d(t,{MobileNetV1FeatureExtractor:()=>a,MobileNetV1ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v2/image_processing_mobilenet_v2.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV2FeatureExtractor:()=>a,MobileNetV2ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v3/image_processing_mobilenet_v3.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV3FeatureExtractor:()=>a,MobileNetV3ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilenet_v4/image_processing_mobilenet_v4.js":(e,t,n)=>{n.r(t),n.d(t,{MobileNetV4FeatureExtractor:()=>a,MobileNetV4ImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/mobilevit/image_processing_mobilevit.js":(e,t,n)=>{n.r(t),n.d(t,{MobileViTFeatureExtractor:()=>a,MobileViTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/moonshine/feature_extraction_moonshine.js":(e,t,n)=>{n.r(t),n.d(t,{MoonshineFeatureExtractor:()=>a});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`MoonshineFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}}},"./src/models/moonshine/processing_moonshine.js":(t,n,r)=>{r.r(n),r.d(n,{MoonshineProcessor:()=>s});var i=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,i.AutoFeatureExtractor)},"./src/models/nougat/image_processing_nougat.js":(e,t,n)=>{n.r(t),n.d(t,{NougatImageProcessor:()=>i});var r=n( -/*! ../donut/image_processing_donut.js */ -`./src/models/donut/image_processing_donut.js`);class i extends r.DonutImageProcessor{}},"./src/models/owlv2/image_processing_owlv2.js":(e,t,n)=>{n.r(t),n.d(t,{Owlv2ImageProcessor:()=>i});var r=n( -/*! ../owlvit/image_processing_owlvit.js */ -`./src/models/owlvit/image_processing_owlvit.js`);class i extends r.OwlViTImageProcessor{}},"./src/models/owlvit/image_processing_owlvit.js":(e,t,n)=>{n.r(t),n.d(t,{OwlViTFeatureExtractor:()=>a,OwlViTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/models/owlvit/processing_owlvit.js":(t,n,r)=>{r.r(n),r.d(n,{OwlViTProcessor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);class s extends i.Processor{}e.defineProperty(s,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(s,`image_processor_class`,a.AutoImageProcessor)},"./src/models/paligemma/processing_paligemma.js":(t,n,r)=>{r.r(n),r.d(n,{PaliGemmaProcessor:()=>l});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`);let s=``;function c(e,t,n,r,i){return`${r.repeat(n*i)}${t}${e}\n`}class l extends i.Processor{async _call(e,t=null,n={}){t||(console.warn(`You are using PaliGemma without a text prefix. It will perform as a picture-captioning model.`),t=``),Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let r=this.tokenizer.bos_token,i=this.image_processor.config.image_seq_length,a;t.some(e=>e.includes(s))?a=t.map(e=>{let t=e.replaceAll(s,s.repeat(i)),n=t.lastIndexOf(s),a=n===-1?0:n+s.length;return t.slice(0,a)+r+t.slice(a)+` -`}):(console.warn("You are passing both `text` and `images` to `PaliGemmaProcessor`. The processor expects special image tokens in the text, as many tokens as there are images per each text. It is recommended to add `` tokens in the very beginning of your text. For this call, we will infer how many images each text has and add special tokens."),a=t.map(t=>c(t,r,i,s,e.length)));let o=this.tokenizer(a,n),l=await this.image_processor(e,n);return{...l,...o}}}e.defineProperty(l,`tokenizer_class`,o.AutoTokenizer),e.defineProperty(l,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(l,`uses_processor_config`,!1)},"./src/models/phi3_v/image_processing_phi3_v.js":(e,t,n)=>{n.r(t),n.d(t,{Phi3VImageProcessor:()=>u});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);let a=336,o=[2,3],{ceil:s,floor:c,sqrt:l}=Math;class u extends r.ImageProcessor{constructor(e){super({...e,do_normalize:!0,do_pad:!0,pad_size:`custom`,do_convert_rgb:!0,do_resize:!0}),this._num_crops=e.num_crops}calc_num_image_tokens_from_image_size(e,t){let{num_img_tokens:n}=this.config;return c((c(t/a)*c(e/a)+1)*n+1+(c(t/a)+1)*l(n))}get_resize_output_image_size(e,t){let n=this._num_crops,[r,i]=e.size,a=r/i,o=1;for(;o*Math.ceil(o/a)<=n;)o+=1;--o;let s=Math.floor(o*336),c=Math.floor(s/a);return[s,c]}pad_image(e,t,n,r={}){let[i,o]=t,c=a*s(i/a),l=a*s(o/a),u=[1,1,1].map((e,t)=>(e-this.image_mean[t])/this.image_std[t]);return super.pad_image(e,t,{width:l,height:c},{center:!0,constant_values:u,...r})}async _call(e,{num_crops:t=null}={}){if(this._num_crops=t??=this.config.num_crops,t<4||l(t)%1!=0)throw Error(`num_crops must be a square number >= 4`);Array.isArray(e)||(e=[e]);let n=e.length,r=await Promise.all(e.map(e=>this.preprocess(e))),u=r.map(e=>e.original_size),d=r.map(e=>e.reshaped_input_size),f=[];for(let{pixel_values:e}of r){e.unsqueeze_(0);let[n,r]=e.dims.slice(-2),s=await(0,i.interpolate_4d)(e,{size:[a,a],mode:`bicubic`});if(t>0){let u=[],d=l(t),p=c(r/d),m=c(n/d);for(let t=0;te.map(e=>a*s(e/a))),h=new i.Tensor(`int64`,m.flat(),[n,2]),g=m.map(([e,t])=>this.calc_num_image_tokens_from_image_size(t,e));return{pixel_values:p,original_sizes:u,reshaped_input_sizes:d,image_sizes:h,num_img_tokens:g}}}},"./src/models/phi3_v/processing_phi3_v.js":(t,n,r)=>{r.r(n),r.d(n,{Phi3VProcessor:()=>u});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`);let c=`<|image|>`,l=/<\|image_\d+\|>/g;class u extends i.Processor{async _call(e,t=null,{padding:n=!0,truncation:r=!0,num_crops:i=null}={}){Array.isArray(e)||(e=[e]);let a,o;if(t){o=await this.image_processor(t,{num_crops:i});let{num_img_tokens:s}=o,u=e.map((e,t)=>e.split(l).join(c.repeat(s[t])));a=this.tokenizer(u,{padding:n,truncation:r});let d=this.tokenizer.model.convert_tokens_to_ids([c])[0];a.input_ids.map_(e=>e==d?-e:e)}else a=this.tokenizer(e);return{...a,...o}}}e.defineProperty(u,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(u,`tokenizer_class`,o.AutoTokenizer)},"./src/models/processors.js":(e,t,n)=>{n.r(t),n.d(t,{Florence2Processor:()=>r.Florence2Processor,Gemma3nProcessor:()=>i.Gemma3nProcessor,GroundingDinoProcessor:()=>a.GroundingDinoProcessor,Idefics3Processor:()=>o.Idefics3Processor,JinaCLIPProcessor:()=>c.JinaCLIPProcessor,LlavaProcessor:()=>l.LlavaProcessor,MgpstrProcessor:()=>u.MgpstrProcessor,MoonshineProcessor:()=>d.MoonshineProcessor,OwlViTProcessor:()=>f.OwlViTProcessor,PaliGemmaProcessor:()=>m.PaliGemmaProcessor,Phi3VProcessor:()=>p.Phi3VProcessor,PyAnnoteProcessor:()=>h.PyAnnoteProcessor,Qwen2VLProcessor:()=>g.Qwen2VLProcessor,SamProcessor:()=>_.SamProcessor,SmolVLMProcessor:()=>v.SmolVLMProcessor,SpeechT5Processor:()=>y.SpeechT5Processor,UltravoxProcessor:()=>b.UltravoxProcessor,VLChatProcessor:()=>s.VLChatProcessor,Wav2Vec2Processor:()=>x.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>S.Wav2Vec2ProcessorWithLM,WhisperProcessor:()=>C.WhisperProcessor});var r=n( -/*! ./florence2/processing_florence2.js */ -`./src/models/florence2/processing_florence2.js`),i=n( -/*! ./gemma3n/processing_gemma3n.js */ -`./src/models/gemma3n/processing_gemma3n.js`),a=n( -/*! ./grounding_dino/processing_grounding_dino.js */ -`./src/models/grounding_dino/processing_grounding_dino.js`),o=n( -/*! ./idefics3/processing_idefics3.js */ -`./src/models/idefics3/processing_idefics3.js`),s=n( -/*! ./janus/processing_janus.js */ -`./src/models/janus/processing_janus.js`),c=n( -/*! ./jina_clip/processing_jina_clip.js */ -`./src/models/jina_clip/processing_jina_clip.js`),l=n( -/*! ./llava/processing_llava.js */ -`./src/models/llava/processing_llava.js`),u=n( -/*! ./mgp_str/processing_mgp_str.js */ -`./src/models/mgp_str/processing_mgp_str.js`),d=n( -/*! ./moonshine/processing_moonshine.js */ -`./src/models/moonshine/processing_moonshine.js`),f=n( -/*! ./owlvit/processing_owlvit.js */ -`./src/models/owlvit/processing_owlvit.js`),p=n( -/*! ./phi3_v/processing_phi3_v.js */ -`./src/models/phi3_v/processing_phi3_v.js`),m=n( -/*! ./paligemma/processing_paligemma.js */ -`./src/models/paligemma/processing_paligemma.js`),h=n( -/*! ./pyannote/processing_pyannote.js */ -`./src/models/pyannote/processing_pyannote.js`),g=n( -/*! ./qwen2_vl/processing_qwen2_vl.js */ -`./src/models/qwen2_vl/processing_qwen2_vl.js`),_=n( -/*! ./sam/processing_sam.js */ -`./src/models/sam/processing_sam.js`),v=n( -/*! ./smolvlm/processing_smolvlm.js */ -`./src/models/smolvlm/processing_smolvlm.js`),y=n( -/*! ./speecht5/processing_speecht5.js */ -`./src/models/speecht5/processing_speecht5.js`),b=n( -/*! ./ultravox/processing_ultravox.js */ -`./src/models/ultravox/processing_ultravox.js`),x=n( -/*! ./wav2vec2/processing_wav2vec2.js */ -`./src/models/wav2vec2/processing_wav2vec2.js`),S=n( -/*! ./wav2vec2_with_lm/processing_wav2vec2_with_lm.js */ -`./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js`),C=n( -/*! ./whisper/processing_whisper.js */ -`./src/models/whisper/processing_whisper.js`)},"./src/models/pvt/image_processing_pvt.js":(e,t,n)=>{n.r(t),n.d(t,{PvtImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/pyannote/feature_extraction_pyannote.js":(e,t,n)=>{n.r(t),n.d(t,{PyAnnoteFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/maths.js */ -`./src/utils/maths.js`);class o extends r.FeatureExtractor{async _call(e){(0,r.validate_audio_inputs)(e,`PyAnnoteFeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=[1,1,e.length];return{input_values:new i.Tensor(`float32`,e,t)}}samples_to_frames(e){return(e-this.config.offset)/this.config.step}post_process_speaker_diarization(e,t){let n=t/this.samples_to_frames(t)/this.config.sampling_rate,r=[];for(let t of e.tolist()){let e=[],i=-1;for(let n=0;n({id:e,start:t*n,end:r*n,confidence:i/(r-t)})))}return r}}},"./src/models/pyannote/processing_pyannote.js":(t,n,r)=>{r.r(n),r.d(n,{PyAnnoteProcessor:()=>o});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ./feature_extraction_pyannote.js */ -`./src/models/pyannote/feature_extraction_pyannote.js`);class o extends i.Processor{async _call(e){return await this.feature_extractor(e)}post_process_speaker_diarization(...e){return this.feature_extractor.post_process_speaker_diarization(...e)}get sampling_rate(){return this.feature_extractor.config.sampling_rate}}e.defineProperty(o,`feature_extractor_class`,a.PyAnnoteFeatureExtractor)},"./src/models/qwen2_vl/image_processing_qwen2_vl.js":(e,t,n)=>{n.r(t),n.d(t,{Qwen2VLImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,...t){let{pixel_values:n,original_sizes:r,reshaped_input_sizes:a}=await super._call(e,...t),o=n,{temporal_patch_size:s,merge_size:c,patch_size:l}=this.config;o.dims[0]===1&&(o=(0,i.cat)(Array.from({length:s},()=>o),0));let u=o.dims[0]/s,d=o.dims[1],f=Math.floor(o.dims[2]/l),p=Math.floor(o.dims[3]/l),m=o.view(u,s,d,Math.floor(f/c),c,l,Math.floor(p/c),c,l).permute(0,3,6,4,7,2,1,5,8).view(u*f*p,d*s*l*l),h=new i.Tensor(`int64`,[u,f,p],[1,3]);return{pixel_values:m,image_grid_thw:h,original_sizes:r,reshaped_input_sizes:a}}}},"./src/models/qwen2_vl/processing_qwen2_vl.js":(t,n,r)=>{r.r(n),r.d(n,{Qwen2VLProcessor:()=>c});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),o=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),s=r( -/*! ../../utils/image.js */ -`./src/utils/image.js`);class c extends i.Processor{async _call(e,t=null,...n){Array.isArray(e)||(e=[e]);let r,i;if(t&&(r=await this.image_processor(t),i=r.image_grid_thw),i){let t=this.image_processor.config.merge_size**2,n=0,r=i.tolist();e=e.map(e=>{for(;e.includes(`<|image_pad|>`);){let i=Number(r[n++].reduce((e,t)=>e*t,1n));e=e.replace(`<|image_pad|>`,`<|placeholder|>`.repeat(Math.floor(i/t)))}return e.replaceAll(`<|placeholder|>`,`<|image_pad|>`)})}let a=this.tokenizer(e);return{...a,...r}}}e.defineProperty(c,`image_processor_class`,a.AutoImageProcessor),e.defineProperty(c,`tokenizer_class`,o.AutoTokenizer)},"./src/models/rt_detr/image_processing_rt_detr.js":(e,t,n)=>{n.r(t),n.d(t,{RTDetrImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}},"./src/models/sam/image_processing_sam.js":(e,t,n)=>{n.r(t),n.d(t,{SamImageProcessor:()=>o});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/core.js */ -`./src/utils/core.js`),a=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class o extends r.ImageProcessor{reshape_input_points(e,t,n,r=!1){e=structuredClone(e);let o=(0,i.calculateDimensions)(e);if(o.length===3)r||(o=[1,...o]),e=[e];else if(o.length!==4)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");for(let r=0;re!==t.dims[n]))throw Error(`The first ${n.length} dimensions of 'input_points' and 'input_labels' must be the same.`);return new a.Tensor(`int64`,e.flat(1/0).map(BigInt),n)}async _call(e,{input_points:t=null,input_labels:n=null,input_boxes:r=null}={}){let i=await super._call(e);if(t&&(i.input_points=this.reshape_input_points(t,i.original_sizes,i.reshaped_input_sizes)),n){if(!i.input_points)throw Error("`input_points` must be provided if `input_labels` are provided.");i.input_labels=this.add_input_labels(n,i.input_points)}return r&&(i.input_boxes=this.reshape_input_points(r,i.original_sizes,i.reshaped_input_sizes,!0)),i}async post_process_masks(e,t,n,{mask_threshold:r=0,binarize:i=!0,pad_size:o=null}={}){let s=[];o??=this.pad_size;let c=[o.height,o.width];for(let o=0;or&&(t[n]=1);d=new a.Tensor(`bool`,t,d.dims)}s.push(d)}return s}generate_crop_boxes(e,t,{crop_n_layers:n=0,overlap_ratio:r=512/1500,points_per_crop:i=32,crop_n_points_downscale_factor:a=1}={}){}}},"./src/models/sam/processing_sam.js":(t,n,r)=>{r.r(n),r.d(n,{SamProcessor:()=>o});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`);class o extends i.Processor{async _call(...e){return await this.image_processor(...e)}post_process_masks(...e){return this.image_processor.post_process_masks(...e)}reshape_input_points(...e){return this.image_processor.reshape_input_points(...e)}}e.defineProperty(o,`image_processor_class`,a.AutoImageProcessor)},"./src/models/seamless_m4t/feature_extraction_seamless_m4t.js":(e,t,n)=>{n.r(t),n.d(t,{SeamlessM4TFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`povey`,{periodic:!1})}async _extract_fbank_features(e,t){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,max_num_frames:t,transpose:!0})}async _call(e,{padding:t=!0,pad_to_multiple_of:n=2,do_normalize_per_mel_bins:a=!0,return_attention_mask:o=!0}={}){(0,r.validate_audio_inputs)(e,`SeamlessM4TFeatureExtractor`);let s=await this._extract_fbank_features(e,this.config.max_length);if(a){let[e,t]=s.dims,n=s.data;for(let r=0;r0){let n=new Float32Array(t*(e+a));n.set(r),n.fill(this.config.padding_value,r.length);let l=e+a;s=new i.Tensor(s.type,n,[l,t]),o&&(c=new i.Tensor(`int64`,new BigInt64Array(l),[1,l]),c.data.fill(1n,0,e))}}let[l,u]=s.dims,d=this.config.stride,f=l%d;if(f!==0)throw Error(`The number of frames (${l}) must be a multiple of the stride (${d}).`);let p=s.view(1,Math.floor(l/d),u*d),m={input_features:p};if(o){let e=p.dims[1],t=new BigInt64Array(e);if(c){let e=c.data;for(let n=1,r=0;n{n.r(t),n.d(t,{SegformerFeatureExtractor:()=>a,SegformerImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_semantic_segmentation(...e){return(0,r.post_process_semantic_segmentation)(...e)}}class a extends i{}},"./src/models/siglip/image_processing_siglip.js":(e,t,n)=>{n.r(t),n.d(t,{SiglipImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}},"./src/models/smolvlm/image_processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMImageProcessor:()=>r.Idefics3ImageProcessor});var r=n( -/*! ../idefics3/image_processing_idefics3.js */ -`./src/models/idefics3/image_processing_idefics3.js`)},"./src/models/smolvlm/processing_smolvlm.js":(e,t,n)=>{n.r(t),n.d(t,{SmolVLMProcessor:()=>r.Idefics3Processor});var r=n( -/*! ../idefics3/processing_idefics3.js */ -`./src/models/idefics3/processing_idefics3.js`)},"./src/models/snac/feature_extraction_snac.js":(e,t,n)=>{n.r(t),n.d(t,{SnacFeatureExtractor:()=>i});var r=n( -/*! ../dac/feature_extraction_dac.js */ -`./src/models/dac/feature_extraction_dac.js`);class i extends r.DacFeatureExtractor{}},"./src/models/speecht5/feature_extraction_speecht5.js":(e,t,n)=>{n.r(t),n.d(t,{SpeechT5FeatureExtractor:()=>i});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`);class i extends r.FeatureExtractor{}},"./src/models/speecht5/processing_speecht5.js":(t,n,r)=>{r.r(n),r.d(n,{SpeechT5Processor:()=>s});var i=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`);class s extends i.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,o.AutoFeatureExtractor)},"./src/models/swin2sr/image_processing_swin2sr.js":(e,t,n)=>{n.r(t),n.d(t,{Swin2SRImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{pad_image(e,t,n,r={}){let[i,a,o]=t;return super.pad_image(e,t,{width:a+(n-a%n)%n,height:i+(n-i%n)%n},{mode:`symmetric`,center:!1,constant_values:-1,...r})}}},"./src/models/ultravox/processing_ultravox.js":(t,n,r)=>{r.r(n),r.d(n,{UltravoxProcessor:()=>s});var i=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e,t=null,n={}){if(Array.isArray(e))throw Error(`Batched inputs are not supported yet.`);let r={};if(t){let i=t.length,{input_features:a}=await this.feature_extractor(t,{...n,max_length:i}),o=Math.round(i/this.config.encoder_ds_factor+1e-4),s=1+Math.ceil(o/this.config.stack_factor);r.audio_token_len=[s],r.audio_values=a;let c=this.config.audio_placeholder;if(!e.includes(c))throw Error(`The input text does not contain the image token ${c}.`);e=e.replaceAll(c,c.repeat(s))}let i=this.tokenizer(e,{add_special_tokens:!1,...n});return{...i,...r}}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,i.AutoFeatureExtractor),e.defineProperty(s,`uses_processor_config`,!0)},"./src/models/vit/image_processing_vit.js":(e,t,n)=>{n.r(t),n.d(t,{ViTFeatureExtractor:()=>a,ViTImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{}class a extends i{}},"./src/models/vitmatte/image_processing_vitmatte.js":(e,t,n)=>{n.r(t),n.d(t,{VitMatteImageProcessor:()=>a});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.ImageProcessor{async _call(e,t){Array.isArray(e)||(e=[e]),Array.isArray(t)||(t=[t]);let n=await Promise.all(e.map(e=>this.preprocess(e))),r=await Promise.all(t.map(e=>this.preprocess(e,{do_normalize:!1,do_convert_rgb:!1,do_convert_grayscale:!0}))),a=(0,i.stack)(n.map((e,t)=>(0,i.cat)([e.pixel_values,r[t].pixel_values],0)),0);return{pixel_values:a,original_sizes:n.map(e=>e.original_size),reshaped_input_sizes:n.map(e=>e.reshaped_input_size)}}}},"./src/models/vitpose/image_processing_vitpose.js":(e,t,n)=>{n.r(t),n.d(t,{VitPoseImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_pose_estimation(e,t,{threshold:n=null}={}){let r=e.tolist(),[i,a,o,s]=e.dims,c=[];for(let e=0;e{n.r(t),n.d(t,{Wav2Vec2FeatureExtractor:()=>a});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`);class a extends r.FeatureExtractor{_zero_mean_unit_var_norm(e){let t=e.reduce((e,t)=>e+t,0),n=t/e.length,r=e.reduce((e,t)=>e+(t-n)**2,0)/e.length;return e.map(e=>(e-n)/Math.sqrt(r+1e-7))}async _call(e){(0,r.validate_audio_inputs)(e,`Wav2Vec2FeatureExtractor`),e instanceof Float64Array&&(e=new Float32Array(e));let t=e;this.config.do_normalize&&(t=this._zero_mean_unit_var_norm(t));let n=[1,t.length];return{input_values:new i.Tensor(`float32`,t,n),attention_mask:new i.Tensor(`int64`,new BigInt64Array(t.length).fill(1n),n)}}}},"./src/models/wav2vec2/processing_wav2vec2.js":(t,n,r)=>{r.r(n),r.d(n,{Wav2Vec2Processor:()=>s});var i=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),a=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,i.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,a.AutoFeatureExtractor)},"./src/models/wav2vec2_with_lm/processing_wav2vec2_with_lm.js":(t,n,r)=>{r.r(n),r.d(n,{Wav2Vec2ProcessorWithLM:()=>s});var i=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),a=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,i.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,a.AutoFeatureExtractor)},"./src/models/wespeaker/feature_extraction_wespeaker.js":(e,t,n)=>{n.r(t),n.d(t,{WeSpeakerFeatureExtractor:()=>o});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`);class o extends r.FeatureExtractor{constructor(e){super(e);let t=this.config.sampling_rate,n=(0,a.mel_filter_bank)(257,this.config.num_mel_bins,20,Math.floor(t/2),t,null,`kaldi`,!0);this.mel_filters=n,this.window=(0,a.window_function)(400,`hamming`,{periodic:!1}),this.min_num_frames=this.config.min_num_frames}async _extract_fbank_features(e){return e=e.map(e=>e*32768),(0,a.spectrogram)(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:`log`,mel_floor:1.192092955078125e-7,remove_dc_offset:!0,transpose:!0,min_num_frames:this.min_num_frames})}async _call(e){(0,r.validate_audio_inputs)(e,`WeSpeakerFeatureExtractor`);let t=(await this._extract_fbank_features(e)).unsqueeze_(0);if(this.config.fbank_centering_span===null){let e=t.mean(1).data,n=t.data,[r,i,a]=t.dims;for(let t=0;t{n.r(t),n.d(t,{WHISPER_LANGUAGE_MAPPING:()=>i,WHISPER_TO_LANGUAGE_CODE_MAPPING:()=>a,whisper_language_to_code:()=>o});let r=[[`en`,`english`],[`zh`,`chinese`],[`de`,`german`],[`es`,`spanish`],[`ru`,`russian`],[`ko`,`korean`],[`fr`,`french`],[`ja`,`japanese`],[`pt`,`portuguese`],[`tr`,`turkish`],[`pl`,`polish`],[`ca`,`catalan`],[`nl`,`dutch`],[`ar`,`arabic`],[`sv`,`swedish`],[`it`,`italian`],[`id`,`indonesian`],[`hi`,`hindi`],[`fi`,`finnish`],[`vi`,`vietnamese`],[`he`,`hebrew`],[`uk`,`ukrainian`],[`el`,`greek`],[`ms`,`malay`],[`cs`,`czech`],[`ro`,`romanian`],[`da`,`danish`],[`hu`,`hungarian`],[`ta`,`tamil`],[`no`,`norwegian`],[`th`,`thai`],[`ur`,`urdu`],[`hr`,`croatian`],[`bg`,`bulgarian`],[`lt`,`lithuanian`],[`la`,`latin`],[`mi`,`maori`],[`ml`,`malayalam`],[`cy`,`welsh`],[`sk`,`slovak`],[`te`,`telugu`],[`fa`,`persian`],[`lv`,`latvian`],[`bn`,`bengali`],[`sr`,`serbian`],[`az`,`azerbaijani`],[`sl`,`slovenian`],[`kn`,`kannada`],[`et`,`estonian`],[`mk`,`macedonian`],[`br`,`breton`],[`eu`,`basque`],[`is`,`icelandic`],[`hy`,`armenian`],[`ne`,`nepali`],[`mn`,`mongolian`],[`bs`,`bosnian`],[`kk`,`kazakh`],[`sq`,`albanian`],[`sw`,`swahili`],[`gl`,`galician`],[`mr`,`marathi`],[`pa`,`punjabi`],[`si`,`sinhala`],[`km`,`khmer`],[`sn`,`shona`],[`yo`,`yoruba`],[`so`,`somali`],[`af`,`afrikaans`],[`oc`,`occitan`],[`ka`,`georgian`],[`be`,`belarusian`],[`tg`,`tajik`],[`sd`,`sindhi`],[`gu`,`gujarati`],[`am`,`amharic`],[`yi`,`yiddish`],[`lo`,`lao`],[`uz`,`uzbek`],[`fo`,`faroese`],[`ht`,`haitian creole`],[`ps`,`pashto`],[`tk`,`turkmen`],[`nn`,`nynorsk`],[`mt`,`maltese`],[`sa`,`sanskrit`],[`lb`,`luxembourgish`],[`my`,`myanmar`],[`bo`,`tibetan`],[`tl`,`tagalog`],[`mg`,`malagasy`],[`as`,`assamese`],[`tt`,`tatar`],[`haw`,`hawaiian`],[`ln`,`lingala`],[`ha`,`hausa`],[`ba`,`bashkir`],[`jw`,`javanese`],[`su`,`sundanese`]],i=new Map(r),a=new Map([...r.map(([e,t])=>[t,e]),...[[`burmese`,`my`],[`valencian`,`ca`],[`flemish`,`nl`],[`haitian`,`ht`],[`letzeburgesch`,`lb`],[`pushto`,`ps`],[`panjabi`,`pa`],[`moldavian`,`ro`],[`moldovan`,`ro`],[`sinhalese`,`si`],[`castilian`,`es`]]]);function o(e){e=e.toLowerCase();let t=a.get(e);if(t===void 0){let n=e.match(/^<\|([a-z]{2})\|>$/);if(n&&(e=n[1]),i.has(e))t=e;else{let t=e.length===2,n=t?i.keys():i.values();throw Error(`Language "${e}" is not supported. Must be one of: ${JSON.stringify(Array.from(n))}`)}}return t}},"./src/models/whisper/feature_extraction_whisper.js":(e,t,n)=>{n.r(t),n.d(t,{WhisperFeatureExtractor:()=>s});var r=n( -/*! ../../base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),i=n( -/*! ../../utils/tensor.js */ -`./src/utils/tensor.js`),a=n( -/*! ../../utils/audio.js */ -`./src/utils/audio.js`),o=n( -/*! ../../utils/maths.js */ -`./src/utils/maths.js`);class s extends r.FeatureExtractor{constructor(e){var t;super(e),(t=this.config).mel_filters??(t.mel_filters=(0,a.mel_filter_bank)(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,`slaney`,`slaney`)),this.window=(0,a.window_function)(this.config.n_fft,`hann`)}async _extract_fbank_features(e){let t=await(0,a.spectrogram)(e,this.window,this.config.n_fft,this.config.hop_length,{power:2,mel_filters:this.config.mel_filters,log_mel:`log10`,max_num_frames:Math.min(Math.floor(e.length/this.config.hop_length),this.config.nb_max_frames)}),n=t.data,r=(0,o.max)(n)[0];for(let e=0;ei?(e.length>this.config.n_samples&&console.warn("Attempting to extract features for audio longer than 30 seconds. If using a pipeline to extract transcript from a long audio clip, remember to specify `chunk_length_s` and/or `stride_length_s`."),n=e.slice(0,i)):(n=new Float32Array(i),n.set(e));let a=await this._extract_fbank_features(n);return{input_features:a.unsqueeze_(0)}}}},"./src/models/whisper/generation_whisper.js":(t,n,r)=>{r.r(n),r.d(n,{WhisperGenerationConfig:()=>a});var i=r( -/*! ../../generation/configuration_utils.js */ -`./src/generation/configuration_utils.js`);class a extends i.GenerationConfig{constructor(...t){super(...t),e.defineProperty(this,`return_timestamps`,null),e.defineProperty(this,`return_token_timestamps`,null),e.defineProperty(this,`num_frames`,null),e.defineProperty(this,`alignment_heads`,null),e.defineProperty(this,`task`,null),e.defineProperty(this,`language`,null),e.defineProperty(this,`no_timestamps_token_id`,null),e.defineProperty(this,`prompt_ids`,null),e.defineProperty(this,`is_multilingual`,null),e.defineProperty(this,`lang_to_id`,null),e.defineProperty(this,`task_to_id`,null),e.defineProperty(this,`max_initial_timestamp_index`,1)}}},"./src/models/whisper/processing_whisper.js":(t,n,r)=>{r.r(n),r.d(n,{WhisperProcessor:()=>s});var i=r( -/*! ../auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),a=r( -/*! ../../tokenizers.js */ -`./src/tokenizers.js`),o=r( -/*! ../../base/processing_utils.js */ -`./src/base/processing_utils.js`);class s extends o.Processor{async _call(e){return await this.feature_extractor(e)}}e.defineProperty(s,`tokenizer_class`,a.AutoTokenizer),e.defineProperty(s,`feature_extractor_class`,i.AutoFeatureExtractor)},"./src/models/yolos/image_processing_yolos.js":(e,t,n)=>{n.r(t),n.d(t,{YolosFeatureExtractor:()=>a,YolosImageProcessor:()=>i});var r=n( -/*! ../../base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`);class i extends r.ImageProcessor{post_process_object_detection(...e){return(0,r.post_process_object_detection)(...e)}}class a extends i{}},"./src/ops/registry.js":(t,n,r)=>{r.r(n),r.d(n,{TensorOpRegistry:()=>l});var i=r( -/*! ../backends/onnx.js */ -`./src/backends/onnx.js`),a=r( -/*! ../utils/tensor.js */ -`./src/utils/tensor.js`),o=r( -/*! ../env.js */ -`./src/env.js`);let s=o.apis.IS_BROWSER_ENV||o.apis.IS_WEBWORKER_ENV,c=async(e,t,n)=>{let r=await(0,i.createInferenceSession)(new Uint8Array(e),t),o=Promise.resolve();return async e=>{let t=(0,i.isONNXProxy)(),c=Object.fromEntries(Object.entries(e).map(([e,n])=>[e,(t?n.clone():n).ort_tensor])),l=await(o=s?o.then(()=>r.run(c)):r.run(c));return Array.isArray(n)?n.map(e=>new a.Tensor(l[e])):new a.Tensor(l[n])}};class l{static get nearest_interpolate_4d(){return this._nearest_interpolate_4d||=c([8,10,18,0,58,129,1,10,41,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,18,10,4,109,111,100,101,34,7,110,101,97,114,101,115,116,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,21],this.session_options,`y`),this._nearest_interpolate_4d}static get bilinear_interpolate_4d(){return this._bilinear_interpolate_4d||=c([8,9,18,0,58,128,1,10,40,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,17,10,4,109,111,100,101,34,6,108,105,110,101,97,114,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bilinear_interpolate_4d}static get bicubic_interpolate_4d(){return this._bicubic_interpolate_4d||=c([8,9,18,0,58,127,10,39,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,16,10,4,109,111,100,101,34,5,99,117,98,105,99,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,`y`),this._bicubic_interpolate_4d}static get matmul(){return this._matmul||=c([8,9,18,0,58,55,10,17,10,1,97,10,1,98,18,1,99,34,6,77,97,116,77,117,108,18,1,114,90,9,10,1,97,18,4,10,2,8,1,90,9,10,1,98,18,4,10,2,8,1,98,9,10,1,99,18,4,10,2,8,1,66,2,16,20],this.session_options,`c`),this._matmul}static get stft(){return this._stft||=c([8,7,18,0,58,148,1,10,38,10,1,115,10,1,106,10,1,119,10,1,108,18,1,111,34,4,83,84,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,115,90,26,10,1,115,18,21,10,19,8,1,18,15,10,3,18,1,98,10,3,18,1,115,10,3,18,1,99,90,11,10,1,106,18,6,10,4,8,7,18,0,90,16,10,1,119,18,11,10,9,8,1,18,5,10,3,18,1,119,90,11,10,1,108,18,6,10,4,8,7,18,0,98,31,10,1,111,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,102,10,3,18,1,100,10,3,18,1,99,66,2,16,17],this.session_options,`o`),this._stft}static get rfft(){return this._rfft||=c([8,9,18,0,58,97,10,33,10,1,120,10,0,10,1,97,18,1,121,34,3,68,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,100,90,21,10,1,120,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,90,11,10,1,97,18,6,10,4,8,7,18,0,98,21,10,1,121,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,66,2,16,20],this.session_options,`y`),this._rfft}static get top_k(){return this._top_k||=c([8,10,18,0,58,73,10,18,10,1,120,10,1,107,18,1,118,18,1,105,34,4,84,111,112,75,18,1,116,90,9,10,1,120,18,4,10,2,8,1,90,15,10,1,107,18,10,10,8,8,7,18,4,10,2,8,1,98,9,10,1,118,18,4,10,2,8,1,98,9,10,1,105,18,4,10,2,8,7,66,2,16,21],this.session_options,[`v`,`i`]),this._top_k}static get slice(){return this._slice||=c([8,7,18,0,58,96,10,25,10,1,120,10,1,115,10,1,101,10,1,97,10,1,116,18,1,121,34,5,83,108,105,99,101,18,1,114,90,9,10,1,120,18,4,10,2,8,1,90,9,10,1,115,18,4,10,2,8,7,90,9,10,1,101,18,4,10,2,8,7,90,9,10,1,97,18,4,10,2,8,7,90,9,10,1,116,18,4,10,2,8,7,98,9,10,1,121,18,4,10,2,8,1,66,2,16,13],this.session_options,`y`),this._slice}}e.defineProperty(l,`session_options`,{})},"./src/pipelines.js":(t,n,r)=>{r.r(n),r.d(n,{AudioClassificationPipeline:()=>A,AutomaticSpeechRecognitionPipeline:()=>te,BackgroundRemovalPipeline:()=>ie,DepthEstimationPipeline:()=>N,DocumentQuestionAnsweringPipeline:()=>ce,FeatureExtractionPipeline:()=>O,FillMaskPipeline:()=>x,ImageClassificationPipeline:()=>re,ImageFeatureExtractionPipeline:()=>k,ImageSegmentationPipeline:()=>j,ImageToImagePipeline:()=>M,ImageToTextPipeline:()=>ne,ObjectDetectionPipeline:()=>oe,Pipeline:()=>_,QuestionAnsweringPipeline:()=>b,SummarizationPipeline:()=>C,Text2TextGenerationPipeline:()=>S,TextClassificationPipeline:()=>v,TextGenerationPipeline:()=>E,TextToAudioPipeline:()=>le,TokenClassificationPipeline:()=>y,TranslationPipeline:()=>w,ZeroShotAudioClassificationPipeline:()=>ee,ZeroShotClassificationPipeline:()=>D,ZeroShotImageClassificationPipeline:()=>ae,ZeroShotObjectDetectionPipeline:()=>se,pipeline:()=>fe});var i=r( -/*! ./tokenizers.js */ -`./src/tokenizers.js`),a=r( -/*! ./models.js */ -`./src/models.js`),o=r( -/*! ./models/auto/processing_auto.js */ -`./src/models/auto/processing_auto.js`),s=r( -/*! ./base/processing_utils.js */ -`./src/base/processing_utils.js`),c=r( -/*! ./utils/generic.js */ -`./src/utils/generic.js`),l=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),u=r( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),d=r( -/*! ./utils/audio.js */ -`./src/utils/audio.js`),f=r( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),p=r( -/*! ./utils/image.js */ -`./src/utils/image.js`);async function m(e){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>p.RawImage.read(e)))}async function h(e,t){return Array.isArray(e)||(e=[e]),await Promise.all(e.map(e=>typeof e==`string`||e instanceof URL?(0,d.read_audio)(e,t):e instanceof Float64Array?new Float32Array(e):e))}function g(e,t){t&&(e=e.map(e=>e|0));let[n,r,i,a]=e;return{xmin:n,ymin:r,xmax:i,ymax:a}}class _ extends c.Callable{constructor({task:e,model:t,tokenizer:n=null,processor:r=null}){super(),this.task=e,this.model=t,this.tokenizer=n,this.processor=r}async dispose(){await this.model.dispose()}}class v extends _{constructor(e){super(e)}async _call(e,{top_k:t=1}={}){let n=this.tokenizer(e,{padding:!0,truncation:!0}),r=await this.model(n),i=this.model.config.problem_type===`multi_label_classification`?e=>e.sigmoid():e=>new f.Tensor(`float32`,(0,u.softmax)(e.data),e.dims),a=this.model.config.id2label,o=[];for(let e of r.logits){let n=i(e),r=await(0,f.topk)(n,t),s=r[0].tolist(),c=r[1].tolist(),l=c.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:s[t]}));t===1?o.push(...l):o.push(l)}return Array.isArray(e)||t===1?o:o[0]}}class y extends _{constructor(e){super(e)}async _call(e,{ignore_labels:t=[`O`]}={}){let n=Array.isArray(e),r=this.tokenizer(n?e:[e],{padding:!0,truncation:!0}),i=await this.model(r),a=i.logits,o=this.model.config.id2label,s=[];for(let e=0;ee==this.tokenizer.sep_token_id),f=s[e].map((e,n)=>e==1&&(n===0||n>r&&c.findIndex(e=>e==t[n])===-1)),p=i[e].tolist(),m=a[e].tolist();for(let n=1;ne==t[n])!==-1)&&(p[n]=-1/0,m[n]=-1/0);let h=(0,u.softmax)(p).map((e,t)=>[e,t]),g=(0,u.softmax)(m).map((e,t)=>[e,t]);h[0][0]=0,g[0][0]=0;let _=(0,l.product)(h,g).filter(e=>e[0][1]<=e[1][1]).map(e=>[e[0][1],e[1][1],e[0][0]*e[1][0]]).sort((e,t)=>t[2]-e[2]);for(let e=0;ee==this.tokenizer.mask_token_id);if(o===-1)throw Error(`Mask token (${this.tokenizer.mask_token}) not found in text.`);let s=r[e][o],c=await(0,f.topk)(new f.Tensor(`float32`,(0,u.softmax)(s.data),s.dims),t),l=c[0].tolist(),d=c[1].tolist();i.push(d.map((e,t)=>{let r=n.slice();return r[o]=e,{score:l[t],token:Number(e),token_str:this.tokenizer.decode([e]),sequence:this.tokenizer.decode(r,{skip_special_tokens:!0})}}))}return Array.isArray(e)?i:i[0]}}class S extends _{constructor(t){super(t),e.defineProperty(this,`_key`,`generated_text`)}async _call(e,t={}){Array.isArray(e)||(e=[e]),this.model.config.prefix&&(e=e.map(e=>this.model.config.prefix+e));let n=this.model.config.task_specific_params;n&&n[this.task]&&n[this.task].prefix&&(e=e.map(e=>n[this.task].prefix+e));let r=this.tokenizer,i={padding:!0,truncation:!0},a;a=this instanceof w&&`_build_translation_inputs`in r?r._build_translation_inputs(e,i,t):r(e,i);let o=await this.model.generate({...a,...t});return r.batch_decode(o,{skip_special_tokens:!0}).map(e=>({[this._key]:e}))}}class C extends S{constructor(t){super(t),e.defineProperty(this,`_key`,`summary_text`)}}class w extends S{constructor(t){super(t),e.defineProperty(this,`_key`,`translation_text`)}}function T(e){return Array.isArray(e)&&e.every(e=>`role`in e&&`content`in e)}class E extends _{constructor(e){super(e)}async _call(e,t={}){let n=!1,r=!1,i;if(typeof e==`string`)i=e=[e];else if(Array.isArray(e)&&e.every(e=>typeof e==`string`))n=!0,i=e;else{if(T(e))e=[e];else if(Array.isArray(e)&&e.every(T))n=!0;else throw Error(`Input must be a string, an array of strings, a Chat, or an array of Chats`);r=!0,i=e.map(e=>this.tokenizer.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0}))}let a=t.add_special_tokens??!1,o=r?!1:t.return_full_text??!0;this.tokenizer.padding_side=`left`;let s=this.tokenizer(i,{add_special_tokens:a,padding:!0,truncation:!0}),c=await this.model.generate({...s,...t}),l=this.tokenizer.batch_decode(c,{skip_special_tokens:!0}),u;!o&&s.input_ids.dims.at(-1)>0&&(u=this.tokenizer.batch_decode(s.input_ids,{skip_special_tokens:!0}).map(e=>e.length));let d=Array.from({length:e.length},e=>[]);for(let t=0;t[e.toLowerCase(),t])),this.entailment_id=this.label2id.entailment,this.entailment_id===void 0&&(console.warn(`Could not find 'entailment' in label2id mapping. Using 2 as entailment_id.`),this.entailment_id=2),this.contradiction_id=this.label2id.contradiction??this.label2id.not_entailment,this.contradiction_id===void 0&&(console.warn(`Could not find 'contradiction' in label2id mapping. Using 0 as contradiction_id.`),this.contradiction_id=0)}async _call(e,t,{hypothesis_template:n=`This example is {}.`,multi_label:r=!1}={}){let i=Array.isArray(e);i||(e=[e]),Array.isArray(t)||(t=[t]);let a=t.map(e=>n.replace(`{}`,e)),o=r||t.length===1,s=[];for(let n of e){let e=[];for(let t of a){let r=this.tokenizer(n,{text_pair:t,padding:!0,truncation:!0}),i=await this.model(r);o?e.push([i.logits.data[this.contradiction_id],i.logits.data[this.entailment_id]]):e.push(i.logits.data[this.entailment_id])}let r=o?e.map(e=>(0,u.softmax)(e)[1]):(0,u.softmax)(e),i=r.map((e,t)=>[e,t]).sort((e,t)=>t[0]-e[0]);s.push({sequence:n,labels:i.map(e=>t[e[1]]),scores:i.map(e=>e[0])})}return i?s:s[0]}}class O extends _{constructor(e){super(e)}async _call(e,{pooling:t=`none`,normalize:n=!1,quantize:r=!1,precision:i=`binary`}={}){let a=this.tokenizer(e,{padding:!0,truncation:!0}),o=await this.model(a),s=o.last_hidden_state??o.logits??o.token_embeddings;switch(t){case`none`:break;case`mean`:s=(0,f.mean_pooling)(s,a.attention_mask);break;case`first_token`:case`cls`:s=s.slice(null,0);break;case`last_token`:case`eos`:s=s.slice(null,-1);break;default:throw Error(`Pooling method '${t}' not supported.`)}return n&&(s=s.normalize(2,-1)),r&&(s=(0,f.quantize_embeddings)(s,i)),s}}class k extends _{constructor(e){super(e)}async _call(e,{pool:t=null}={}){let n=await m(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a;if(t){if(!(`pooler_output`in i))throw Error(`No pooled output was returned. Make sure the model has a 'pooler' layer when using the 'pool' option.`);a=i.pooler_output}else a=i.last_hidden_state??i.logits??i.image_embeds;return a}}class A extends _{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=this.processor.feature_extractor.config.sampling_rate,r=await h(e,n),i=this.model.config.id2label,a=[];for(let e of r){let n=await this.processor(e),r=await this.model(n),o=r.logits[0],s=await(0,f.topk)(new f.Tensor(`float32`,(0,u.softmax)(o.data),o.dims),t),c=s[0].tolist(),l=s[1].tolist(),d=l.map((e,t)=>({label:i?i[e]:`LABEL_${e}`,score:c[t]}));a.push(d)}return Array.isArray(e)?a:a[0]}}class ee extends _{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a sound of {}.`}={}){let r=!Array.isArray(e);r&&(e=[e]);let i=t.map(e=>n.replace(`{}`,e)),a=this.tokenizer(i,{padding:!0,truncation:!0}),o=this.processor.feature_extractor.config.sampling_rate,s=await h(e,o),c=[];for(let e of s){let n=await this.processor(e),r=await this.model({...a,...n}),i=(0,u.softmax)(r.logits_per_audio.data);c.push([...i].map((e,n)=>({score:e,label:t[n]})))}return r?c[0]:c}}class te extends _{constructor(e){super(e)}async _call(e,t={}){switch(this.model.config.model_type){case`whisper`:case`lite-whisper`:return this._call_whisper(e,t);case`wav2vec2`:case`wav2vec2-bert`:case`unispeech`:case`unispeech-sat`:case`hubert`:return this._call_wav2vec2(e,t);case`moonshine`:return this._call_moonshine(e,t);default:throw Error(`AutomaticSpeechRecognitionPipeline does not support model type '${this.model.config.model_type}'.`)}}async _call_wav2vec2(e,t){t.language&&console.warn('`language` parameter is not yet supported for `wav2vec2` models, defaulting to "English".'),t.task&&console.warn('`task` parameter is not yet supported for `wav2vec2` models, defaulting to "transcribe".');let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await h(e,r),a=[];for(let e of i){let t=await this.processor(e),n=await this.model(t),r=n.logits[0],i=[];for(let e of r)i.push((0,u.max)(e.data)[1]);let o=this.tokenizer.decode(i);a.push({text:o})}return n?a[0]:a}async _call_whisper(e,t){let n=t.return_timestamps??!1,r=t.chunk_length_s??0,i=t.force_full_sequences??!1,a=t.stride_length_s??null,o={...t};n===`word`&&(o.return_token_timestamps=!0,o.return_timestamps=!1);let s=!Array.isArray(e);s&&(e=[e]);let c=this.processor.feature_extractor.config.chunk_length/this.model.config.max_source_positions,l=this.processor.feature_extractor.config.hop_length,d=this.processor.feature_extractor.config.sampling_rate,f=await h(e,d),p=[];for(let e of f){let t=[];if(r>0){if(a===null)a=r/6;else if(r<=a)throw Error("`chunk_length_s` must be larger than `stride_length_s`.");let n=d*r,i=d*a,o=n-2*i,s=0;for(;;){let r=s+n,a=e.subarray(s,r),c=await this.processor(a),l=s===0,u=r>=e.length;if(t.push({stride:[a.length,l?0:i,u?0:i],input_features:c.input_features,is_last:u}),u)break;s+=o}}else t=[{stride:[e.length,0,0],input_features:(await this.processor(e)).input_features,is_last:!0}];for(let e of t){o.num_frames=Math.floor(e.stride[0]/l);let t=await this.model.generate({inputs:e.input_features,...o});n===`word`?(e.tokens=t.sequences.tolist()[0],e.token_timestamps=t.token_timestamps.tolist()[0].map(e=>(0,u.round)(e,2))):e.tokens=t[0].tolist(),e.stride=e.stride.map(e=>e/d)}let[s,f]=this.tokenizer._decode_asr(t,{time_precision:c,return_timestamps:n,force_full_sequences:i});p.push({text:s,...f})}return s?p[0]:p}async _call_moonshine(e,t){let n=!Array.isArray(e);n&&(e=[e]);let r=this.processor.feature_extractor.config.sampling_rate,i=await h(e,r),a=[];for(let e of i){let n=await this.processor(e),i=Math.floor(e.length/r)*6,o=await this.model.generate({max_new_tokens:i,...t,...n}),s=this.processor.batch_decode(o,{skip_special_tokens:!0})[0];a.push({text:s})}return n?a[0]:a}}class ne extends _{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e),r=await m(e),{pixel_values:i}=await this.processor(r),a=[];for(let e of i){e.dims=[1,...e.dims];let n=await this.model.generate({inputs:e,...t}),r=this.tokenizer.batch_decode(n,{skip_special_tokens:!0}).map(e=>({generated_text:e.trim()}));a.push(r)}return n?a:a[0]}}class re extends _{constructor(e){super(e)}async _call(e,{top_k:t=5}={}){let n=await m(e),{pixel_values:r}=await this.processor(n),i=await this.model({pixel_values:r}),a=this.model.config.id2label,o=[];for(let e of i.logits){let n=await(0,f.topk)(new f.Tensor(`float32`,(0,u.softmax)(e.data),e.dims),t),r=n[0].tolist(),i=n[1].tolist(),s=i.map((e,t)=>({label:a?a[e]:`LABEL_${e}`,score:r[t]}));o.push(s)}return Array.isArray(e)?o:o[0]}}class j extends _{constructor(e){super(e),this.subtasks_mapping={panoptic:`post_process_panoptic_segmentation`,instance:`post_process_instance_segmentation`,semantic:`post_process_semantic_segmentation`}}async _call(e,{threshold:t=.5,mask_threshold:n=.5,overlap_mask_area_threshold:r=.8,label_ids_to_fuse:i=null,target_sizes:a=null,subtask:o=null}={}){let s=Array.isArray(e);if(s&&e.length!==1)throw Error(`Image segmentation pipeline currently only supports a batch size of 1.`);let c=await m(e),l=c.map(e=>[e.height,e.width]),u=await this.processor(c),{inputNames:d,outputNames:f}=this.model.sessions.model;if(!d.includes(`pixel_values`)){if(d.length!==1)throw Error(`Expected a single input name, but got ${d.length} inputs: ${d}.`);let e=d[0];if(e in u)throw Error(`Input name ${e} already exists in the inputs.`);u[e]=u.pixel_values}let h=await this.model(u),g=null;if(o!==null)g=this.subtasks_mapping[o];else if(this.processor.image_processor){for(let[e,t]of Object.entries(this.subtasks_mapping))if(t in this.processor.image_processor){g=this.processor.image_processor[t].bind(this.processor.image_processor),o=e;break}}let _=this.model.config.id2label,v=[];if(o)if(o===`panoptic`||o===`instance`){let e=g(h,t,n,r,i,a??l)[0],o=e.segmentation;for(let t of e.segments_info){let e=new Uint8ClampedArray(o.data.length);for(let n=0;nt<-e||t>1+e)&&i.sigmoid_();let a=await p.RawImage.fromTensor(i.mul_(255).to(`uint8`)).resize(r[1],r[0]);v.push({label:null,score:null,mask:a})}}return v}}class ie extends j{constructor(e){super(e)}async _call(e,t={}){let n=Array.isArray(e);if(n&&e.length!==1)throw Error(`Background removal pipeline currently only supports a batch size of 1.`);let r=await m(e),i=await super._call(e,t),a=r.map((e,t)=>{let n=e.clone();return n.putAlpha(i[t].mask),n});return a}}class ae extends _{constructor(e){super(e)}async _call(e,t,{hypothesis_template:n=`This is a photo of {}`}={}){let r=Array.isArray(e),i=await m(e),a=t.map(e=>n.replace(`{}`,e)),o=this.tokenizer(a,{padding:this.model.config.model_type===`siglip`?`max_length`:!0,truncation:!0}),{pixel_values:s}=await this.processor(i),c=await this.model({...o,pixel_values:s}),l=this.model.config.model_type===`siglip`?e=>e.sigmoid().data:e=>(0,u.softmax)(e.data),d=[];for(let e of c.logits_per_image){let n=l(e),r=[...n].map((e,n)=>({score:e,label:t[n]}));r.sort((e,t)=>t.score-e.score),d.push(r)}return r?d:d[0]}}class oe extends _{constructor(e){super(e)}async _call(e,{threshold:t=.9,percentage:n=!1}={}){let r=Array.isArray(e);if(r&&e.length!==1)throw Error(`Object detection pipeline currently only supports a batch size of 1.`);let i=await m(e),a=n?null:i.map(e=>[e.height,e.width]),{pixel_values:o,pixel_mask:s}=await this.processor(i),c=await this.model({pixel_values:o,pixel_mask:s}),l=this.processor.image_processor.post_process_object_detection(c,t,a),u=this.model.config.id2label,d=l.map(e=>e.boxes.map((t,r)=>({score:e.scores[r],label:u[e.classes[r]],box:g(t,!n)})));return r?d:d[0]}}class se extends _{constructor(e){super(e)}async _call(e,t,{threshold:n=.1,top_k:r=null,percentage:i=!1}={}){let a=Array.isArray(e),o=await m(e),s=this.tokenizer(t,{padding:!0,truncation:!0}),c=await this.processor(o),l=[];for(let e=0;e({score:e.scores[n],label:e.labels[n],box:g(t,!i)}))}else{let e=this.processor.image_processor.post_process_object_detection(f,n,u,!0)[0];p=e.boxes.map((n,r)=>({score:e.scores[r],label:t[e.classes[r]],box:g(n,!i)}))}p.sort((e,t)=>t.score-e.score),r!==null&&(p=p.slice(0,r)),l.push(p)}return a?l:l[0]}}class ce extends _{constructor(e){super(e)}async _call(e,t,n={}){let r=(await m(e))[0],{pixel_values:i}=await this.processor(r),a=`${t}`,o=this.tokenizer(a,{add_special_tokens:!1,padding:!0,truncation:!0}).input_ids,s=await this.model.generate({inputs:i,max_length:this.model.config.decoder.max_position_embeddings,decoder_input_ids:o,...n}),c=this.tokenizer.batch_decode(s)[0],l=c.match(/(.*?)<\/s_answer>/),u=null;return l&&l.length>=2&&(u=l[1].trim()),[{answer:u}]}}class le extends _{constructor(t){super(t),e.defineProperty(this,`DEFAULT_VOCODER_ID`,`Xenova/speecht5_hifigan`),this.vocoder=t.vocoder??null}async _call(e,{speaker_embeddings:t=null}={}){return this.processor?this._call_text_to_spectrogram(e,{speaker_embeddings:t}):this._call_text_to_waveform(e)}async _call_text_to_waveform(e){let t=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:n}=await this.model(t),r=this.model.config.sampling_rate;return new d.RawAudio(n.data,r)}async _call_text_to_spectrogram(e,{speaker_embeddings:t}){if(this.vocoder||(console.log(`No vocoder specified, using default HifiGan vocoder.`),this.vocoder=await a.AutoModel.from_pretrained(this.DEFAULT_VOCODER_ID,{dtype:`fp32`})),(typeof t==`string`||t instanceof URL)&&(t=new Float32Array(await(await fetch(t)).arrayBuffer())),t instanceof Float32Array)t=new f.Tensor(`float32`,t,[1,t.length]);else if(!(t instanceof f.Tensor))throw Error("Speaker embeddings must be a `Tensor`, `Float32Array`, `string`, or `URL`.");let{input_ids:n}=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:r}=await this.model.generate_speech(n,t,{vocoder:this.vocoder}),i=this.processor.feature_extractor.config.sampling_rate;return new d.RawAudio(r.data,i)}}class M extends _{constructor(e){super(e)}async _call(e){let t=await m(e),n=await this.processor(t),r=await this.model(n),i=[];for(let e of r.reconstruction){let t=e.squeeze().clamp_(0,1).mul_(255).round_().to(`uint8`);i.push(p.RawImage.fromTensor(t))}return i.length>1?i:i[0]}}class N extends _{constructor(e){super(e)}async _call(e){let t=await m(e),n=await this.processor(t),{predicted_depth:r}=await this.model(n),i=[];for(let e=0;e1?i:i[0]}}let ue=Object.freeze({"text-classification":{tokenizer:i.AutoTokenizer,pipeline:v,model:a.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-finetuned-sst-2-english`},type:`text`},"token-classification":{tokenizer:i.AutoTokenizer,pipeline:y,model:a.AutoModelForTokenClassification,default:{model:`Xenova/bert-base-multilingual-cased-ner-hrl`},type:`text`},"question-answering":{tokenizer:i.AutoTokenizer,pipeline:b,model:a.AutoModelForQuestionAnswering,default:{model:`Xenova/distilbert-base-cased-distilled-squad`},type:`text`},"fill-mask":{tokenizer:i.AutoTokenizer,pipeline:x,model:a.AutoModelForMaskedLM,default:{model:`Xenova/bert-base-uncased`},type:`text`},summarization:{tokenizer:i.AutoTokenizer,pipeline:C,model:a.AutoModelForSeq2SeqLM,default:{model:`Xenova/distilbart-cnn-6-6`},type:`text`},translation:{tokenizer:i.AutoTokenizer,pipeline:w,model:a.AutoModelForSeq2SeqLM,default:{model:`Xenova/t5-small`},type:`text`},"text2text-generation":{tokenizer:i.AutoTokenizer,pipeline:S,model:a.AutoModelForSeq2SeqLM,default:{model:`Xenova/flan-t5-small`},type:`text`},"text-generation":{tokenizer:i.AutoTokenizer,pipeline:E,model:a.AutoModelForCausalLM,default:{model:`Xenova/gpt2`},type:`text`},"zero-shot-classification":{tokenizer:i.AutoTokenizer,pipeline:D,model:a.AutoModelForSequenceClassification,default:{model:`Xenova/distilbert-base-uncased-mnli`},type:`text`},"audio-classification":{pipeline:A,model:a.AutoModelForAudioClassification,processor:o.AutoProcessor,default:{model:`Xenova/wav2vec2-base-superb-ks`},type:`audio`},"zero-shot-audio-classification":{tokenizer:i.AutoTokenizer,pipeline:ee,model:a.AutoModel,processor:o.AutoProcessor,default:{model:`Xenova/clap-htsat-unfused`},type:`multimodal`},"automatic-speech-recognition":{tokenizer:i.AutoTokenizer,pipeline:te,model:[a.AutoModelForSpeechSeq2Seq,a.AutoModelForCTC],processor:o.AutoProcessor,default:{model:`Xenova/whisper-tiny.en`},type:`multimodal`},"text-to-audio":{tokenizer:i.AutoTokenizer,pipeline:le,model:[a.AutoModelForTextToWaveform,a.AutoModelForTextToSpectrogram],processor:[o.AutoProcessor,null],default:{model:`Xenova/speecht5_tts`},type:`text`},"image-to-text":{tokenizer:i.AutoTokenizer,pipeline:ne,model:a.AutoModelForVision2Seq,processor:o.AutoProcessor,default:{model:`Xenova/vit-gpt2-image-captioning`},type:`multimodal`},"image-classification":{pipeline:re,model:a.AutoModelForImageClassification,processor:o.AutoProcessor,default:{model:`Xenova/vit-base-patch16-224`},type:`multimodal`},"image-segmentation":{pipeline:j,model:[a.AutoModelForImageSegmentation,a.AutoModelForSemanticSegmentation,a.AutoModelForUniversalSegmentation],processor:o.AutoProcessor,default:{model:`Xenova/detr-resnet-50-panoptic`},type:`multimodal`},"background-removal":{pipeline:ie,model:[a.AutoModelForImageSegmentation,a.AutoModelForSemanticSegmentation,a.AutoModelForUniversalSegmentation],processor:o.AutoProcessor,default:{model:`Xenova/modnet`},type:`image`},"zero-shot-image-classification":{tokenizer:i.AutoTokenizer,pipeline:ae,model:a.AutoModel,processor:o.AutoProcessor,default:{model:`Xenova/clip-vit-base-patch32`},type:`multimodal`},"object-detection":{pipeline:oe,model:a.AutoModelForObjectDetection,processor:o.AutoProcessor,default:{model:`Xenova/detr-resnet-50`},type:`multimodal`},"zero-shot-object-detection":{tokenizer:i.AutoTokenizer,pipeline:se,model:a.AutoModelForZeroShotObjectDetection,processor:o.AutoProcessor,default:{model:`Xenova/owlvit-base-patch32`},type:`multimodal`},"document-question-answering":{tokenizer:i.AutoTokenizer,pipeline:ce,model:a.AutoModelForDocumentQuestionAnswering,processor:o.AutoProcessor,default:{model:`Xenova/donut-base-finetuned-docvqa`},type:`multimodal`},"image-to-image":{pipeline:M,model:a.AutoModelForImageToImage,processor:o.AutoProcessor,default:{model:`Xenova/swin2SR-classical-sr-x2-64`},type:`image`},"depth-estimation":{pipeline:N,model:a.AutoModelForDepthEstimation,processor:o.AutoProcessor,default:{model:`Xenova/dpt-large`},type:`image`},"feature-extraction":{tokenizer:i.AutoTokenizer,pipeline:O,model:a.AutoModel,default:{model:`Xenova/all-MiniLM-L6-v2`},type:`text`},"image-feature-extraction":{processor:o.AutoProcessor,pipeline:k,model:[a.AutoModelForImageFeatureExtraction,a.AutoModel],default:{model:`Xenova/vit-base-patch16-224-in21k`},type:`image`}}),de=Object.freeze({"sentiment-analysis":`text-classification`,ner:`token-classification`,asr:`automatic-speech-recognition`,"text-to-speech":`text-to-audio`,embeddings:`feature-extraction`});async function fe(e,t=null,{progress_callback:n=null,config:r=null,cache_dir:i=null,local_files_only:a=!1,revision:o=`main`,device:s=null,dtype:c=null,subfolder:u=`onnx`,use_external_data_format:d=null,model_file_name:f=null,session_options:p={}}={}){e=de[e]??e;let m=ue[e.split(`_`,1)[0]];if(!m)throw Error(`Unsupported pipeline: ${e}. Must be one of [${Object.keys(ue)}]`);t||(t=m.default.model,console.log(`No model specified. Using default model: "${t}".`));let h={progress_callback:n,config:r,cache_dir:i,local_files_only:a,revision:o,device:s,dtype:c,subfolder:u,use_external_data_format:d,model_file_name:f,session_options:p},g=new Map([[`tokenizer`,m.tokenizer],[`model`,m.model],[`processor`,m.processor]]),_=await P(g,t,h);_.task=e,(0,l.dispatchCallback)(n,{status:`ready`,task:e,model:t});let v=m.pipeline;return new v(_)}async function P(e,t,n){let r=Object.create(null),i=[];for(let[a,o]of e.entries()){if(!o)continue;let e;e=Array.isArray(o)?new Promise(async(e,r)=>{let i;for(let c of o){if(c===null){e(null);return}try{e(await c.from_pretrained(t,n));return}catch(e){var a,s;if((a=e.message)?.includes(`Unsupported model type`))i=e;else if((s=e.message)?.includes(`Could not locate file`))i=e;else{r(e);return}}}r(i)}):o.from_pretrained(t,n),r[a]=e,i.push(e)}await Promise.all(i);for(let[e,t]of Object.entries(r))r[e]=await t;return r}},"./src/tokenizers.js":(t,n,r)=>{r.r(n),r.d(n,{AlbertTokenizer:()=>He,AutoTokenizer:()=>Nt,BartTokenizer:()=>tt,BertTokenizer:()=>Ve,BlenderbotSmallTokenizer:()=>Dt,BlenderbotTokenizer:()=>Et,BloomTokenizer:()=>at,CLIPTokenizer:()=>St,CamembertTokenizer:()=>Xe,CodeGenTokenizer:()=>xt,CodeLlamaTokenizer:()=>ct,CohereTokenizer:()=>jt,ConvBertTokenizer:()=>qe,DebertaTokenizer:()=>We,DebertaV2Tokenizer:()=>Ge,DistilBertTokenizer:()=>Ye,ElectraTokenizer:()=>Qe,EsmTokenizer:()=>pt,FalconTokenizer:()=>dt,GPT2Tokenizer:()=>et,GPTNeoXTokenizer:()=>ft,GemmaTokenizer:()=>ht,Grok1Tokenizer:()=>gt,HerbertTokenizer:()=>Ke,LlamaTokenizer:()=>st,M2M100Tokenizer:()=>yt,MBart50Tokenizer:()=>rt,MBartTokenizer:()=>nt,MPNetTokenizer:()=>ut,MarianTokenizer:()=>wt,MgpstrTokenizer:()=>Mt,MobileBertTokenizer:()=>Ue,NllbTokenizer:()=>vt,NougatTokenizer:()=>kt,PreTrainedTokenizer:()=>B,Qwen2Tokenizer:()=>mt,RoFormerTokenizer:()=>Je,RobertaTokenizer:()=>it,SiglipTokenizer:()=>Ct,SpeechT5Tokenizer:()=>Ot,SqueezeBertTokenizer:()=>V,T5Tokenizer:()=>$e,TokenizerModel:()=>O,VitsTokenizer:()=>At,Wav2Vec2CTCTokenizer:()=>Tt,WhisperTokenizer:()=>bt,XLMRobertaTokenizer:()=>lt,XLMTokenizer:()=>Ze,is_chinese_char:()=>b});var i=r( -/*! ./utils/generic.js */ -`./src/utils/generic.js`),a=r( -/*! ./utils/core.js */ -`./src/utils/core.js`),o=r( -/*! ./utils/hub.js */ -`./src/utils/hub.js`),s=r( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),c=r( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),l=r( -/*! ./utils/data-structures.js */ -`./src/utils/data-structures.js`),u=r( -/*! @huggingface/jinja */ -`./node_modules/@huggingface/jinja/dist/index.js`),d=r( -/*! ./models/whisper/common_whisper.js */ -`./src/models/whisper/common_whisper.js`);async function f(e,t){let n=await Promise.all([(0,o.getModelJSON)(e,`tokenizer.json`,!0,t),(0,o.getModelJSON)(e,`tokenizer_config.json`,!0,t)]);return t.legacy!==null&&(n[1].legacy=t.legacy),n}function p(e,t){let n=[],r=0;for(let i of e.matchAll(t)){let t=i[0];r0&&n.push(t),r=i.index+t.length}return r=19968&&e<=40959||e>=13312&&e<=19903||e>=131072&&e<=173791||e>=173824&&e<=177983||e>=177984&&e<=178207||e>=178208&&e<=183983||e>=63744&&e<=64255||e>=194560&&e<=195103}function x(e,t,n){let r=[],i=0;for(;ithis.tokens_to_ids.get(e)??this.unk_token_id)}convert_ids_to_tokens(e){return e.map(e=>this.vocab[e]??this.unk_token)}}class k extends O{constructor(e){super(e),this.tokens_to_ids=h(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.max_input_chars_per_word=e.max_input_chars_per_word??100,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){let t=[];for(let n of e){let e=[...n];if(e.length>this.max_input_chars_per_word){t.push(this.unk_token);continue}let r=!1,i=0,a=[];for(;i0&&(r=this.config.continuing_subword_prefix+r),this.tokens_to_ids.has(r)){n=r;break}--t}if(n===null){r=!0;break}a.push(n),i=t}r?t.push(this.unk_token):t.push(...a)}return t}}class A extends O{constructor(e,t){super(e);let n=e.vocab.length;this.vocab=Array(n),this.scores=Array(n);for(let t=0;t[e,t])),this.bos_token=` `,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.minScore=(0,s.min)(this.scores)[0],this.unk_score=this.minScore-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new l.CharTrie,this.trie.extend(this.vocab),this.fuse_unk=!0}populateNodes(e){let t=e.chars,n=1,r=0;for(;r{let e=[...Array.from({length:94},(e,t)=>t+33),...Array.from({length:12},(e,t)=>t+161),...Array.from({length:82},(e,t)=>t+174)],t=e.slice(),n=0;for(let r=0;r<256;++r)e.includes(r)||(e.push(r),t.push(256+n),n+=1);let r=t.map(e=>String.fromCharCode(e));return Object.fromEntries(e.map((e,t)=>[e,r[t]]))})(),te=(0,a.reverseDictionary)(ee);class ne extends O{constructor(e){super(e),this.tokens_to_ids=h(e.vocab),this.unk_token_id=this.tokens_to_ids.get(e.unk_token),this.unk_token=e.unk_token,this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e;let t=Array.isArray(e.merges[0]);this.merges=t?e.merges:e.merges.map(e=>e.split(` `,2)),this.bpe_ranks=new Map(this.merges.map((e,t)=>[JSON.stringify(e),t])),this.end_of_word_suffix=e.end_of_word_suffix,this.continuing_subword_suffix=e.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new l.LRUCache(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(e){if(e.length===0)return[];let t=this.cache.get(e);if(t!==void 0)return t;let n=Array.from(e);this.end_of_word_suffix&&(n[n.length-1]+=this.end_of_word_suffix);let r=[];if(n.length>1){let e=new l.PriorityQueue((e,t)=>e.score`<0x${e.toString(16).toUpperCase().padStart(2,`0`)}>`);e.every(e=>this.tokens_to_ids.has(e))?t.push(...e):t.push(this.unk_token)}else t.push(this.unk_token)}return t}}class re extends O{constructor(e,t){super(e),this.tokens_to_ids=h(t.target_lang?e.vocab[t.target_lang]:e.vocab),this.bos_token=t.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=t.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=t.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=t.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=Array(this.tokens_to_ids.size);for(let[e,t]of this.tokens_to_ids)this.vocab[t]=e}encode(e){return e}}class j extends i.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`BertNormalizer`:return new P(e);case`Precompiled`:return new z(e);case`Sequence`:return new fe(e);case`Replace`:return new ie(e);case`NFC`:return new oe(e);case`NFD`:return new se(e);case`NFKC`:return new ce(e);case`NFKD`:return new le(e);case`Strip`:return new M(e);case`StripAccents`:return new N(e);case`Lowercase`:return new ue(e);case`Prepend`:return new de(e);default:throw Error(`Unknown Normalizer type: ${e.type}`)}}normalize(e){throw Error(`normalize should be implemented in subclass.`)}_call(e){return this.normalize(e)}}class ie extends j{normalize(e){let t=m(this.config.pattern);return t===null?e:e.replaceAll(t,this.config.content)}}class ae extends j{constructor(...t){super(...t),e.defineProperty(this,`form`,void 0)}normalize(e){return e=e.normalize(this.form),e}}class oe extends ae{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFC`)}}class se extends ae{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFD`)}}class ce extends ae{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFKC`)}}class le extends ae{constructor(...t){super(...t),e.defineProperty(this,`form`,`NFKD`)}}class M extends j{normalize(e){return this.config.strip_left&&this.config.strip_right?e=e.trim():(this.config.strip_left&&(e=e.trimStart()),this.config.strip_right&&(e=e.trimEnd())),e}}class N extends j{normalize(e){return e=v(e),e}}class ue extends j{normalize(e){return e=e.toLowerCase(),e}}class de extends j{normalize(e){return e=this.config.prepend+e,e}}class fe extends j{constructor(e){super(e),this.normalizers=e.normalizers.map(e=>j.fromConfig(e))}normalize(e){return this.normalizers.reduce((e,t)=>t.normalize(e),e)}}class P extends j{_tokenize_chinese_chars(e){let t=[];for(let n=0;nthis.pre_tokenize_text(e,t)):this.pre_tokenize_text(e,t)).flat()}_call(e,t){return this.pre_tokenize(e,t)}}class I extends F{constructor(e){super(),this.pattern=RegExp(`[^\\s${C}]+|[${C}]`,`gu`)}pre_tokenize_text(e,t){return e.trim().match(this.pattern)||[]}}class L extends F{constructor(e){super(),this.config=e,this.add_prefix_space=this.config.add_prefix_space,this.trim_offsets=this.config.trim_offsets,this.use_regex=this.config.use_regex??!0,this.pattern=/'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+/gu,this.byte_encoder=ee,this.text_encoder=new TextEncoder}pre_tokenize_text(e,t){this.add_prefix_space&&!e.startsWith(` `)&&(e=` `+e);let n=this.use_regex?e.match(this.pattern)||[]:[e];return n.map(e=>Array.from(this.text_encoder.encode(e),e=>this.byte_encoder[e]).join(``))}}class pe extends F{constructor(e){super(),this.config=e,this.pattern=m(this.config.pattern,this.config.invert)}pre_tokenize_text(e,t){var n;return this.pattern===null?[]:this.config.invert?e.match(this.pattern)||[]:(n=this.config.behavior)?.toLowerCase()===`removed`?e.split(this.pattern).filter(e=>e):p(e,this.pattern)}}class me extends F{constructor(e){super(),this.config=e,this.pattern=RegExp(`[^${C}]+|[${C}]+`,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class he extends F{constructor(e){super(),this.config=e;let t=`[^\\d]+|\\d${this.config.individual_digits?``:`+`}`;this.pattern=new RegExp(t,`gu`)}pre_tokenize_text(e,t){return e.match(this.pattern)||[]}}class ge extends i.Callable{constructor(e){super(),this.config=e}static fromConfig(e){if(e===null)return null;switch(e.type){case`TemplateProcessing`:return new ve(e);case`ByteLevel`:return new ye(e);case`RobertaProcessing`:return new R(e);case`BertProcessing`:return new _e(e);case`Sequence`:return new be(e);default:throw Error(`Unknown PostProcessor type: ${e.type}`)}}post_process(e,...t){throw Error(`post_process should be implemented in subclass.`)}_call(e,...t){return this.post_process(e,...t)}}class _e extends ge{constructor(e){super(e),this.cls=e.cls[0],this.sep=e.sep[0]}post_process(e,t=null,{add_special_tokens:n=!0}={}){n&&(e=(0,a.mergeArrays)([this.cls],e,[this.sep]));let r=Array(e.length).fill(0);if(t!==null){let i=n&&this instanceof R?[this.sep]:[],o=n?[this.sep]:[];e=(0,a.mergeArrays)(e,i,t,o),r=(0,a.mergeArrays)(r,Array(t.length+i.length+o.length).fill(1))}return{tokens:e,token_type_ids:r}}}class R extends _e{}class ve extends ge{constructor(e){super(e),this.single=e.single,this.pair=e.pair}post_process(e,t=null,{add_special_tokens:n=!0}={}){let r=t===null?this.single:this.pair,i=[],o=[];for(let s of r)`SpecialToken`in s?n&&(i.push(s.SpecialToken.id),o.push(s.SpecialToken.type_id)):`Sequence`in s&&(s.Sequence.id===`A`?(i=(0,a.mergeArrays)(i,e),o=(0,a.mergeArrays)(o,Array(e.length).fill(s.Sequence.type_id))):s.Sequence.id===`B`&&(i=(0,a.mergeArrays)(i,t),o=(0,a.mergeArrays)(o,Array(t.length).fill(s.Sequence.type_id))));return{tokens:i,token_type_ids:o}}}class ye extends ge{post_process(e,t=null){return t&&(e=(0,a.mergeArrays)(e,t)),{tokens:e}}}class be extends ge{constructor(e){super(e),this.processors=e.processors.map(e=>ge.fromConfig(e))}post_process(e,t=null,n={}){let r;for(let i of this.processors)if(i instanceof ye){let n=i.post_process(e);if(e=n.tokens,t){let e=i.post_process(t);t=e.tokens}}else{let a=i.post_process(e,t,n);e=a.tokens,r=a.token_type_ids}return{tokens:e,token_type_ids:r}}}class xe extends i.Callable{constructor(e){super(),this.config=e,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets=e.trim_offsets}static fromConfig(e){if(e===null)return null;switch(e.type){case`WordPiece`:return new Ee(e);case`Metaspace`:return new Ne(e);case`ByteLevel`:return new De(e);case`Replace`:return new Se(e);case`ByteFallback`:return new Ce(e);case`Fuse`:return new we(e);case`Strip`:return new Te(e);case`Sequence`:return new ke(e);case`CTC`:return new Oe(e);case`BPEDecoder`:return new Ae(e);default:throw Error(`Unknown Decoder type: ${e.type}`)}}_call(e){return this.decode(e)}decode(e){return this.decode_chain(e).join(``)}decode_chain(e){throw Error("`decode_chain` should be implemented in subclass.")}}class Se extends xe{decode_chain(e){let t=m(this.config.pattern);return t===null?e:e.map(e=>e.replaceAll(t,this.config.content))}}class Ce extends xe{constructor(e){super(e),this.text_decoder=new TextDecoder}decode_chain(e){let t=[],n=[];for(let r of e){let e=null;if(r.length===6&&r.startsWith(`<0x`)&&r.endsWith(`>`)){let t=parseInt(r.slice(3,5),16);isNaN(t)||(e=t)}if(e!==null)n.push(e);else{if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}t.push(r)}}if(n.length>0){let e=this.text_decoder.decode(Uint8Array.from(n));t.push(e),n=[]}return t}}class we extends xe{decode_chain(e){return[e.join(``)]}}class Te extends xe{constructor(e){super(e),this.content=this.config.content,this.start=this.config.start,this.stop=this.config.stop}decode_chain(e){return e.map(e=>{let t=0;for(let n=0;n(t!==0&&(e=e.startsWith(this.config.prefix)?e.replace(this.config.prefix,``):` `+e),this.cleanup&&(e=_(e)),e))}}class De extends xe{constructor(e){super(e),this.byte_decoder=te,this.text_decoder=new TextDecoder(`utf-8`,{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(e){let t=e.join(``),n=new Uint8Array([...t].map(e=>this.byte_decoder[e])),r=this.text_decoder.decode(n);return r}decode_chain(e){let t=[],n=[];for(let r of e)this.added_tokens.find(e=>e.content===r)===void 0?n.push(r):(n.length>0&&(t.push(this.convert_tokens_to_string(n)),n=[]),t.push(r));return n.length>0&&t.push(this.convert_tokens_to_string(n)),t}}class Oe extends xe{constructor(e){super(e),this.pad_token=this.config.pad_token,this.word_delimiter_token=this.config.word_delimiter_token,this.cleanup=this.config.cleanup}convert_tokens_to_string(e){if(e.length===0)return``;let t=[e[0]];for(let n=1;ne!==this.pad_token),r=n.join(``);return this.cleanup&&(r=_(r).replaceAll(this.word_delimiter_token,` `).trim()),r}decode_chain(e){return[this.convert_tokens_to_string(e)]}}class ke extends xe{constructor(e){super(e),this.decoders=e.decoders.map(e=>xe.fromConfig(e))}decode_chain(e){return this.decoders.reduce((e,t)=>t.decode_chain(e),e)}}class Ae extends xe{constructor(e){super(e),this.suffix=this.config.suffix}decode_chain(e){return e.map((t,n)=>t.replaceAll(this.suffix,n===e.length-1?``:` `))}}class je extends xe{decode_chain(e){let t=``;for(let n=1;ne.normalize(`NFKC`)).join(`~`)}else e=e.normalize(`NFKC`);return e}}class Pe extends F{constructor(e){super(),this.tokenizers=e.pretokenizers.map(e=>F.fromConfig(e))}pre_tokenize_text(e,t){return this.tokenizers.reduce((e,n)=>n.pre_tokenize(e,t),[e])}}class Fe extends F{constructor(e){super()}pre_tokenize_text(e,t){return e.match(/\w+|[^\w\s]+/g)||[]}}class Ie extends F{constructor(e){super()}pre_tokenize_text(e,t){return S(e)}}class Le extends F{constructor(e){super(),this.config=e,this.pattern=m(this.config.pattern),this.content=this.config.content}pre_tokenize_text(e,t){return this.pattern===null?[e]:[e.replaceAll(this.pattern,this.config.content)]}}let Re=[`bos_token`,`eos_token`,`unk_token`,`sep_token`,`pad_token`,`cls_token`,`mask_token`];function ze(e,t,n,r){for(let i of Object.keys(e)){let o=t-e[i].length,s=n(i),c=Array(o).fill(s);e[i]=r===`right`?(0,a.mergeArrays)(e[i],c):(0,a.mergeArrays)(c,e[i])}}function Be(e,t){for(let n of Object.keys(e))e[n].length=t}class B extends i.Callable{constructor(t,n){super(),e.defineProperty(this,`return_token_type_ids`,!1),e.defineProperty(this,`padding_side`,`right`),this.config=n,this.normalizer=j.fromConfig(t.normalizer),this.pre_tokenizer=F.fromConfig(t.pre_tokenizer),this.model=O.fromConfig(t.model,n),this.post_processor=ge.fromConfig(t.post_processor),this.decoder=xe.fromConfig(t.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[];for(let e of t.added_tokens){let t=new D(e);this.added_tokens.push(t),this.model.tokens_to_ids.set(t.content,t.id),this.model.vocab[t.id]=t.content,t.special&&(this.special_tokens.push(t.content),this.all_special_ids.push(t.id))}if(this.additional_special_tokens=n.additional_special_tokens??[],this.special_tokens.push(...this.additional_special_tokens),this.special_tokens=[...new Set(this.special_tokens)],this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.added_tokens_splitter=new l.DictionarySplitter(this.added_tokens.map(e=>e.content)),this.added_tokens_map=new Map(this.added_tokens.map(e=>[e.content,e])),this.mask_token=this.getToken(`mask_token`),this.mask_token_id=this.model.tokens_to_ids.get(this.mask_token),this.pad_token=this.getToken(`pad_token`,`eos_token`),this.pad_token_id=this.model.tokens_to_ids.get(this.pad_token),this.sep_token=this.getToken(`sep_token`),this.sep_token_id=this.model.tokens_to_ids.get(this.sep_token),this.unk_token=this.getToken(`unk_token`),this.unk_token_id=this.model.tokens_to_ids.get(this.unk_token),this.bos_token=this.getToken(`bos_token`),this.bos_token_id=this.model.tokens_to_ids.get(this.bos_token),this.eos_token=this.getToken(`eos_token`),this.eos_token_id=this.model.tokens_to_ids.get(this.eos_token),this.model_max_length=n.model_max_length,this.remove_space=n.remove_space,this.clean_up_tokenization_spaces=n.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=n.do_lowercase_and_remove_accent??!1,n.padding_side&&(this.padding_side=n.padding_side),this.legacy=!1,this.chat_template=n.chat_template??null,Array.isArray(this.chat_template)){let e=Object.create(null);for(let{name:t,template:n}of this.chat_template){if(typeof t!=`string`||typeof n!=`string`)throw Error(`Chat template must be a list of objects with "name" and "template" properties`);e[t]=n}this.chat_template=e}this._compiled_template_cache=new Map}getToken(...e){for(let t of e){let e=this.config[t];if(!e)continue;if(typeof e==`object`){if(e.__type===`AddedToken`)return e.content;throw Error(`Unknown token: ${e}`)}else return e}return null}static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){let s=await f(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o});return new this(...s)}_call(e,{text_pair:t=null,add_special_tokens:n=!0,padding:r=!1,truncation:i=null,max_length:a=null,return_tensor:o=!0,return_token_type_ids:l=null}={}){let u=Array.isArray(e),d;if(u){if(e.length===0)throw Error(`text array must be non-empty`);if(t!==null){if(Array.isArray(t)){if(e.length!==t.length)throw Error(`text and text_pair must have the same length`)}else throw Error(`text_pair must also be an array`);d=e.map((e,r)=>this._encode_plus(e,{text_pair:t[r],add_special_tokens:n,return_token_type_ids:l}))}else d=e.map(e=>this._encode_plus(e,{add_special_tokens:n,return_token_type_ids:l}))}else{if(e==null)throw Error(`text may not be null or undefined`);if(Array.isArray(t))throw Error("When specifying `text_pair`, since `text` is a string, `text_pair` must also be a string (i.e., not an array).");d=[this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:l})]}if(a===null?a=this.model_max_length:i===null&&(r===!0?(console.warn("`max_length` is ignored when `padding: true` and there is no truncation strategy. To pad to max length, use `padding: 'max_length'`."),a=this.model_max_length):r===!1&&(console.warn("Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation: true` to explicitly truncate examples to max length."),i=!0)),r===!0&&(a=Math.min((0,s.max)(d.map(e=>e.input_ids.length))[0],a??1/0)),a=Math.min(a,this.model_max_length??1/0),r||i)for(let e=0;ea?i&&Be(d[e],a):r&&ze(d[e],a,e=>e===`input_ids`?this.pad_token_id:0,this.padding_side);let f={};if(o){if(!(r&&i)&&d.some(e=>{var t;for(let n of Object.keys(e))if(e[n].length!==(t=d[0][n])?.length)return!0;return!1}))throw Error(`Unable to create tensor, you should probably activate truncation and/or padding with 'padding=true' and 'truncation=true' to have batched tensors with the same length.`);let e=[d.length,d[0].input_ids.length];for(let t of Object.keys(d[0]))f[t]=new c.Tensor(`int64`,BigInt64Array.from(d.flatMap(e=>e[t]).map(BigInt)),e)}else{for(let e of Object.keys(d[0]))f[e]=d.map(t=>t[e]);if(!u)for(let e of Object.keys(f))f[e]=f[e][0]}return f}_encode_text(e){if(e===null)return null;let t=this.added_tokens_splitter.split(e);for(let e=0;e0&&(t[e-1]=t[e-1].trimEnd()),n.rstrip&&e{if(e.length===0)return[];if(this.added_tokens_map.has(e))return[e];if(this.remove_space===!0&&(e=e.trim().split(/\s+/).join(` `)),this.do_lowercase_and_remove_accent&&(e=y(e)),this.normalizer!==null&&(e=this.normalizer(e)),e.length===0)return[];let n=this.pre_tokenizer===null?[e]:this.pre_tokenizer(e,{section_index:t}),r=this.model(n);return r});return n}_encode_plus(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){let{tokens:i,token_type_ids:a}=this._tokenize_helper(e,{pair:t,add_special_tokens:n}),o=this.model.convert_tokens_to_ids(i),s={input_ids:o,attention_mask:Array(o.length).fill(1)};return(r??this.return_token_type_ids)&&a&&(s.token_type_ids=a),s}_tokenize_helper(e,{pair:t=null,add_special_tokens:n=!1}={}){let r=this._encode_text(e),i=this._encode_text(t);return this.post_processor?this.post_processor(r,i,{add_special_tokens:n}):{tokens:(0,a.mergeArrays)(r??[],i??[])}}tokenize(e,{pair:t=null,add_special_tokens:n=!1}={}){return this._tokenize_helper(e,{pair:t,add_special_tokens:n}).tokens}encode(e,{text_pair:t=null,add_special_tokens:n=!0,return_token_type_ids:r=null}={}){return this._encode_plus(e,{text_pair:t,add_special_tokens:n,return_token_type_ids:r}).input_ids}batch_decode(e,t={}){return e instanceof c.Tensor&&(e=e.tolist()),e.map(e=>this.decode(e,t))}decode(e,t={}){if(e instanceof c.Tensor&&(e=g(e)),!Array.isArray(e)||e.length===0||!(0,a.isIntegralNumber)(e[0]))throw Error(`token_ids must be a non-empty array of integers.`);return this.decode_single(e,t)}decode_single(e,{skip_special_tokens:t=!1,clean_up_tokenization_spaces:n=null}){let r=this.model.convert_ids_to_tokens(e);t&&(r=r.filter(e=>!this.special_tokens.includes(e)));let i=this.decoder?this.decoder(r):r.join(` `);return this.decoder&&this.decoder.end_of_word_suffix&&(i=i.replaceAll(this.decoder.end_of_word_suffix,` `),t&&(i=i.trim())),(n??this.clean_up_tokenization_spaces)&&(i=_(i)),i}get_chat_template({chat_template:e=null,tools:t=null}={}){if(this.chat_template&&typeof this.chat_template==`object`){let n=this.chat_template;if(e!==null&&Object.hasOwn(n,e))e=n[e];else if(e===null)if(t!==null&&`tool_use`in n)e=n.tool_use;else if(`default`in n)e=n.default;else throw Error(`This model has multiple chat templates with no default specified! Please either pass a chat template or the name of the template you wish to use to the 'chat_template' argument. Available template names are ${Object.keys(n).sort()}.`)}else if(e===null)if(this.chat_template)e=this.chat_template;else throw Error(`Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating`);return e}apply_chat_template(e,{tools:t=null,documents:n=null,chat_template:r=null,add_generation_prompt:i=!1,tokenize:a=!0,padding:o=!1,truncation:s=!1,max_length:c=null,return_tensor:l=!0,return_dict:d=!1,tokenizer_kwargs:f={},...p}={}){if(r=this.get_chat_template({chat_template:r,tools:t}),typeof r!=`string`)throw Error(`chat_template must be a string, but got ${typeof r}`);let m=this._compiled_template_cache.get(r);m===void 0&&(m=new u.Template(r),this._compiled_template_cache.set(r,m));let h=Object.create(null);for(let e of Re){let t=this.getToken(e);t&&(h[e]=t)}let g=m.render({messages:e,add_generation_prompt:i,tools:t,documents:n,...h,...p});if(a){let e=this._call(g,{add_special_tokens:!1,padding:o,truncation:s,max_length:c,return_tensor:l,...f});return d?e:e.input_ids}return g}}class Ve extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class He extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ue extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class V extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class We extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ge extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ke extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class qe extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Je extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class Ye extends B{}class Xe extends B{}class Ze extends B{constructor(t,n){super(t,n),e.defineProperty(this,`return_token_type_ids`,!0),console.warn('WARNING: `XLMTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}}class Qe extends B{constructor(...t){super(...t),e.defineProperty(this,`return_token_type_ids`,!0)}}class $e extends B{}class et extends B{}class tt extends B{}class nt extends B{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{2}_[A-Z]{2}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class rt extends nt{}class it extends B{}class at extends B{}let ot=`▁`;class st extends B{constructor(t,n){super(t,n),e.defineProperty(this,`padding_side`,`left`),this.legacy=n.legacy??!0,this.legacy||(this.normalizer=null,this.pre_tokenizer=new Me({replacement:ot,add_prefix_space:!0,prepend_scheme:`first`}))}_encode_text(e){if(e===null)return null;if(this.legacy||e.length===0)return super._encode_text(e);let t=super._encode_text(ot+e.replaceAll(ot,` `));return t.length>1&&t[0]===ot&&this.special_tokens.includes(t[1])&&(t=t.slice(1)),t}}class ct extends B{}class lt extends B{}class ut extends B{}class dt extends B{}class ft extends B{}class pt extends B{}class mt extends B{}class ht extends B{}class gt extends B{}function _t(e,t,n,r){if(!(`language_codes`in e)||!Array.isArray(e.language_codes))throw Error("Tokenizer must have `language_codes` attribute set and it should be an array of language ids.");if(!(`languageRegex`in e)||!(e.languageRegex instanceof RegExp))throw Error("Tokenizer must have `languageRegex` attribute set and it should be a regular expression.");if(!(`lang_to_token`in e)||typeof e.lang_to_token!=`function`)throw Error("Tokenizer must have `lang_to_token` attribute set and it should be a function.");let i=r.src_lang,a=r.tgt_lang;if(!e.language_codes.includes(a))throw Error(`Target language code "${a}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);if(i!==void 0){if(!e.language_codes.includes(i))throw Error(`Source language code "${i}" is not valid. Must be one of: {${e.language_codes.join(`, `)}}`);for(let t of e.post_processor.config.single)if(`SpecialToken`in t&&e.languageRegex.test(t.SpecialToken.id)){t.SpecialToken.id=e.lang_to_token(i);break}}return r.forced_bos_token_id=e.model.convert_tokens_to_ids([e.lang_to_token(a)])[0],e._call(t,n)}class vt extends B{constructor(e,t){super(e,t),this.languageRegex=/^[a-z]{3}_[A-Z][a-z]{3}$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)),this.lang_to_token=e=>e}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class yt extends B{constructor(e,t){super(e,t),this.languageRegex=/^__[a-z]{2,3}__$/,this.language_codes=this.special_tokens.filter(e=>this.languageRegex.test(e)).map(e=>e.slice(2,-2)),this.lang_to_token=e=>`__${e}__`}_build_translation_inputs(e,t,n){return _t(this,e,t,n)}}class bt extends B{get timestamp_begin(){return this.model.convert_tokens_to_ids([`<|notimestamps|>`])[0]+1}_decode_asr(e,{return_timestamps:t=!1,return_language:n=!1,time_precision:r=null,force_full_sequences:i=!0}={}){if(r===null)throw Error(`Must specify time_precision`);let a=null,o=t===`word`;function c(){return{language:a,timestamp:[null,null],text:``}}let l=[],u=c(),f=0,p=this.timestamp_begin,m=1500,h=p+m,g=[],_=[],v=!1,y=null,b=new Set(this.all_special_ids);for(let n of e){let e=n.tokens,i=o?n.token_timestamps:null,m=null,x=p;if(`stride`in n){let[t,i,a]=n.stride;if(f-=i,y=t-a,i&&(x=i/r+p),a)for(let t=e.length-1;t>=0;--t){let n=Number(e[t]);if(n>=p){if(m!==null&&(n-p)*r=p&&y<=h){let e=(y-p)*r+f,t=(0,s.round)(e,2);if(m!==null&&y>=m)v=!0;else if(v||g.length>0&&y0?(g.push(S),o&&_.push(C)):g.every(e=>e.length===0)&&(u=c(),g=[],S=[],_=[],C=[])}if(g.length>0){if(i&&t)throw Error(`Whisper did not predict an ending timestamp, which can happen if audio is cut off in the middle of a word. Also make sure WhisperTimeStampLogitsProcessor was used during generation.`);let[e,n]=this.findLongestCommonSequence(g,_),r=this.decode(e);u.text=r,o&&(u.words=this.collateWordTimestamps(e,n,a)),l.push(u)}let x=Object.create(null),S=l.map(e=>e.text).join(``);if(t||n){for(let e=0;e0,o=a?[]:null,s=a?t[0]:null;for(let c=1;ce===g[n]&&s[i+n]<=t[c][m+n]).length:p.filter((e,t)=>e===g[t]).length;let v=e/1e4,y=_/e+v;_>1&&y>u&&(u=y,d=[i,o,m,h])}let[p,m,h,g]=d,_=Math.floor((m+p)/2),v=Math.floor((g+h)/2);i.push(...n.slice(0,_)),n=l.slice(v),r=n.length,a&&(o.push(...s.slice(0,_)),s=t[c].slice(v))}return i.push(...n),a?(o.push(...s),[i,o]):[i,[]]}collateWordTimestamps(e,t,n){let[r,i,a]=this.combineTokensIntoWords(e,n),o=[];for(let e=0;e=r){let e=((t-r)*n).toFixed(2);i.push(`<|${e}|>`),i.push([])}else i[i.length-1].push(t);return i=i.map(e=>typeof e==`string`?e:super.decode(e,t)),i.join(``)}splitTokensOnUnicode(e){let t=this.decode(e,{decode_with_timestamps:!0}),n=`�`,r=[],i=[],a=[],o=[],s=[],c=0;for(let l=0;l=this.model.tokens_to_ids.get(`<|endoftext|>`),f=c.startsWith(` `),p=c.trim(),m=s.test(p);if(d||f||m||i.length===0)i.push(c),a.push(l),o.push(u);else{let e=i.length-1;i[e]+=c,a[e].push(...l),o[e].push(...u)}}return[i,a,o]}mergePunctuations(e,t,n,r,i){let o=structuredClone(e),s=structuredClone(t),c=structuredClone(n),l=o.length-2,u=o.length-1;for(;l>=0;)o[l].startsWith(` `)&&r.includes(o[l].trim())?(o[u]=o[l]+o[u],s[u]=(0,a.mergeArrays)(s[l],s[u]),c[u]=(0,a.mergeArrays)(c[l],c[u]),o[l]=``,s[l]=[],c[l]=[]):u=l,--l;for(l=0,u=1;ue),s.filter(e=>e.length>0),c.filter(e=>e.length>0)]}}class xt extends B{}class St extends B{}class Ct extends B{}class wt extends B{constructor(e,t){super(e,t),this.languageRegex=/^(>>\w+<<)\s*/g,this.supported_language_codes=this.model.vocab.filter(e=>this.languageRegex.test(e)),console.warn('WARNING: `MarianTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}_encode_text(e){if(e===null)return null;let[t,...n]=e.trim().split(this.languageRegex);if(n.length===0)return super._encode_text(t);if(n.length===2){let[e,t]=n;return this.supported_language_codes.includes(e)||console.warn(`Unsupported language code "${e}" detected, which may lead to unexpected behavior. Should be one of: ${JSON.stringify(this.supported_language_codes)}`),(0,a.mergeArrays)([e],super._encode_text(t))}}}class Tt extends B{}class Et extends B{}class Dt extends B{}class Ot extends B{}class kt extends B{}class At extends B{constructor(e,t){super(e,t),this.decoder=new je({})}}class jt extends B{}class Mt extends B{}class Nt{static async from_pretrained(e,{progress_callback:t=null,config:n=null,cache_dir:r=null,local_files_only:i=!1,revision:a=`main`,legacy:o=null}={}){var s;let[c,l]=await f(e,{progress_callback:t,config:n,cache_dir:r,local_files_only:i,revision:a,legacy:o}),u=(s=l.tokenizer_class)?.replace(/Fast$/,``)??`PreTrainedTokenizer`,d=this.TOKENIZER_CLASS_MAPPING[u];return d||(console.warn(`Unknown tokenizer class "${u}", attempting to construct from base class.`),d=B),new d(c,l)}}e.defineProperty(Nt,`TOKENIZER_CLASS_MAPPING`,{T5Tokenizer:$e,DistilBertTokenizer:Ye,CamembertTokenizer:Xe,DebertaTokenizer:We,DebertaV2Tokenizer:Ge,BertTokenizer:Ve,HerbertTokenizer:Ke,ConvBertTokenizer:qe,RoFormerTokenizer:Je,XLMTokenizer:Ze,ElectraTokenizer:Qe,MobileBertTokenizer:Ue,SqueezeBertTokenizer:V,AlbertTokenizer:He,GPT2Tokenizer:et,BartTokenizer:tt,MBartTokenizer:nt,MBart50Tokenizer:rt,RobertaTokenizer:it,WhisperTokenizer:bt,CodeGenTokenizer:xt,CLIPTokenizer:St,SiglipTokenizer:Ct,MarianTokenizer:wt,BloomTokenizer:at,NllbTokenizer:vt,M2M100Tokenizer:yt,LlamaTokenizer:st,CodeLlamaTokenizer:ct,XLMRobertaTokenizer:lt,MPNetTokenizer:ut,FalconTokenizer:dt,GPTNeoXTokenizer:ft,EsmTokenizer:pt,Wav2Vec2CTCTokenizer:Tt,BlenderbotTokenizer:Et,BlenderbotSmallTokenizer:Dt,SpeechT5Tokenizer:Ot,NougatTokenizer:kt,VitsTokenizer:At,Qwen2Tokenizer:mt,GemmaTokenizer:ht,Grok1Tokenizer:gt,CohereTokenizer:jt,MgpstrTokenizer:Mt,PreTrainedTokenizer:B})},"./src/utils/audio.js":(e,t,n)=>{n.r(t),n.d(t,{RawAudio:()=>O,hamming:()=>f,hanning:()=>d,mel_filter_bank:()=>y,read_audio:()=>l,spectrogram:()=>w,window_function:()=>T});var r=n( -/*! ./hub.js */ -`./src/utils/hub.js`),i=n( -/*! ./maths.js */ -`./src/utils/maths.js`),a=n( -/*! ./core.js */ -`./src/utils/core.js`),o=n( -/*! ../env.js */ -`./src/env.js`),s=n( -/*! ./tensor.js */ -`./src/utils/tensor.js`),c=n( -/*! node:fs */ -`?7992`);async function l(e,t){if(typeof AudioContext>`u`)throw Error("Unable to load audio from path/URL since `AudioContext` is not available in your environment. Instead, audio data should be passed directly to the pipeline/processor. For more information and some example code, see https://huggingface.co/docs/transformers.js/guides/node-audio-processing.");let n=await(await(0,r.getFile)(e)).arrayBuffer(),i=new AudioContext({sampleRate:t});t===void 0&&console.warn(`No sampling rate provided, using default of ${i.sampleRate}Hz.`);let a=await i.decodeAudioData(n),o;if(a.numberOfChannels===2){let e=Math.sqrt(2),t=a.getChannelData(0),n=a.getChannelData(1);o=new Float32Array(t.length);for(let r=0;r2595*Math.log10(1+e/700),kaldi:e=>1127*Math.log(1+e/700),slaney:(e,t=1e3,n=15,r=27/Math.log(6.4))=>e>=t?n+Math.log(e/t)*r:3*e/200};function m(e,t=`htk`){let n=p[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}let h={htk:e=>700*(10**(e/2595)-1),kaldi:e=>700*(Math.exp(e/1127)-1),slaney:(e,t=1e3,n=15,r=Math.log(6.4)/27)=>e>=n?t*Math.exp(r*(e-n)):200*e/3};function g(e,t=`htk`){let n=h[t];if(!n)throw Error(`mel_scale should be one of "htk", "slaney" or "kaldi".`);return typeof e==`number`?n(e):e.map(e=>n(e))}function _(e,t){let n=Float64Array.from({length:t.length-1},(e,n)=>t[n+1]-t[n]),r=Array.from({length:e.length},()=>Array(t.length));for(let n=0;nArray(e.length));for(let t=0;te+r*n)}function y(e,t,n,r,i,a=null,o=`htk`,s=!1){if(a!==null&&a!==`slaney`)throw Error(`norm must be one of null or "slaney"`);if(e<2)throw Error(`Require num_frequency_bins: ${e} >= 2`);if(n>r)throw Error(`Require min_frequency: ${n} <= max_frequency: ${r}`);let c=m(n,o),l=m(r,o),u=v(c,l,t+2),d=g(u,o),f;if(s){let t=i/((e-1)*2);f=m(Float64Array.from({length:e},(e,n)=>n*t),o),d=u}else f=v(0,Math.floor(i/2),e);let p=_(f,d);if(a!==null&&a===`slaney`)for(let n=0;na)throw Error(`frame_length (${n}) may not be larger than fft_length (${a})`);if(D!==n)throw Error(`Length of the window (${D}) must equal frame_length (${n})`);if(r<=0)throw Error(`hop_length must be greater than zero`);if(o===null&&p!==null)throw Error("You have provided `mel_filters` but `power` is `None`. Mel spectrogram computation is not yet supported for complex-valued spectrogram. Specify `power` to fix this issue.");if(!f)throw Error("`preemphasis_htk_flavor=false` is not currently supported.");if(c){if(l!==`reflect`)throw Error(`pad_mode="${l}" not implemented yet.`);let t=Math.floor((a-1)/2)+1;e=b(e,t,t)}let O=Math.floor(1+Math.floor((e.length-n)/r));x!==null&&OO?T&&(ee=w):ee=A=w);let te=new i.FFT(a),ne=new Float64Array(a),re=new Float64Array(te.outputBufferSize),j=new Float32Array(k*ee);for(let i=0;i=1;--e)ne[e]-=d*ne[e-1];ne[0]*=1-d}for(let e=0;ee**.85);break;default:throw Error(`Unknown window type ${t}.`)}if(n&&(o=o.subarray(0,e)),r===null)return o;if(e>r)throw Error(`Length of the window (${e}) may not be larger than frame_length (${r})`);return o}function E(e,t){let n=44,r=new ArrayBuffer(n+e.length*4),i=new DataView(r);D(i,0,`RIFF`),i.setUint32(4,36+e.length*4,!0),D(i,8,`WAVE`),D(i,12,`fmt `),i.setUint32(16,16,!0),i.setUint16(20,3,!0),i.setUint16(22,1,!0),i.setUint32(24,t,!0),i.setUint32(28,t*4,!0),i.setUint16(32,4,!0),i.setUint16(34,32,!0),D(i,36,`data`),i.setUint32(40,e.length*4,!0);for(let t=0;t{let n=await t.arrayBuffer();c.writeFileSync(e,Buffer.from(n))};else throw Error(`Unable to save because filesystem is disabled in this environment.`);await t(e,this.toBlob())}}},"./src/utils/constants.js":(e,t,n)=>{n.r(t),n.d(t,{CHAT_TEMPLATE_NAME:()=>c,CONFIG_NAME:()=>i,FEATURE_EXTRACTOR_NAME:()=>a,GENERATION_CONFIG_NAME:()=>l,GITHUB_ISSUE_URL:()=>r,IMAGE_PROCESSOR_NAME:()=>o,PROCESSOR_NAME:()=>s});let r=`https://github.com/huggingface/transformers.js/issues/new/choose`,i=`config.json`,a=`preprocessor_config.json`,o=a,s=`processor_config.json`,c=`chat_template.jinja`,l=`generation_config.json`},"./src/utils/core.js":(e,t,n)=>{n.r(t),n.d(t,{calculateDimensions:()=>l,calculateReflectOffset:()=>p,count:()=>_,dispatchCallback:()=>r,escapeRegExp:()=>a,isIntegralNumber:()=>s,isNullishDimension:()=>c,isTypedArray:()=>o,len:()=>g,mergeArrays:()=>d,pick:()=>h,pop:()=>u,product:()=>f,reverseDictionary:()=>i,saveBlob:()=>m});function r(e,t){e&&e(t)}function i(e){return Object.fromEntries(Object.entries(e).map(([e,t])=>[t,e]))}function a(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function o(e){var t;return(e==null||(t=e.prototype)==null||(t=t.__proto__)==null||(t=t.constructor)==null?void 0:t.name)===`TypedArray`}function s(e){return Number.isInteger(e)||typeof e==`bigint`}function c(e){return e==null||e===-1}function l(e){let t=[],n=e;for(;Array.isArray(n);)t.push(n.length),n=n[0];return t}function u(e,t,n=void 0){let r=e[t];if(r!==void 0)return delete e[t],r;if(n===void 0)throw Error(`Key ${t} does not exist in object.`);return n}function d(...e){return Array.prototype.concat.apply([],e)}function f(...e){return e.reduce((e,t)=>e.flatMap(e=>t.map(t=>[e,t])))}function p(e,t){return Math.abs((e+t)%(2*t)-t)}function m(e,t){let n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=e,r.click(),r.remove(),URL.revokeObjectURL(n)}function h(e,t){return Object.assign({},...t.map(t=>{if(e[t]!==void 0)return{[t]:e[t]}}))}function g(e){let t=0;for(let n of e)++t;return t}function _(e,t){let n=0;for(let r of e)r===t&&++n;return n}},"./src/utils/data-structures.js":(e,t,n)=>{n.r(t),n.d(t,{CharTrie:()=>i,DictionarySplitter:()=>c,LRUCache:()=>l,PriorityQueue:()=>r,TokenLattice:()=>o});class r{constructor(e=(e,t)=>e>t,t=1/0){this._heap=[],this._comparator=e,this._maxSize=t}get size(){return this._heap.length}isEmpty(){return this.size===0}peek(){return this._heap[0]}push(...e){return this.extend(e)}extend(e){for(let t of e)if(this.size0&&this._swap(0,t),this._heap.pop(),this._siftDown(),e}replace(e){let t=this.peek();return this._heap[0]=e,this._siftDown(),t}_parent(e){return(e+1>>>1)-1}_left(e){return(e<<1)+1}_right(e){return e+1<<1}_greater(e,t){return this._comparator(this._heap[e],this._heap[t])}_swap(e,t){let n=this._heap[e];this._heap[e]=this._heap[t],this._heap[t]=n}_siftUp(){this._siftUpFrom(this.size-1)}_siftUpFrom(e){for(;e>0&&this._greater(e,this._parent(e));)this._swap(e,this._parent(e)),e=this._parent(e)}_siftDown(){let e=0;for(;this._left(e)[]),this.endNodes=Array.from({length:this.len+1},()=>[]);let r=new s(this.bosTokenId,0,0,0,0),i=new s(this.eosTokenId,1,this.len,0,0);this.nodes.push(r.clone()),this.nodes.push(i.clone()),this.beginNodes[this.len].push(i),this.endNodes[0].push(r)}insert(e,t,n,r){let i=this.nodes.length,a=new s(r,i,e,t,n);this.beginNodes[e].push(a),this.endNodes[e+t].push(a),this.nodes.push(a)}viterbi(){let e=this.len,t=0;for(;t<=e;){if(this.beginNodes[t].length==0)return[];for(let e of this.beginNodes[t]){e.prev=null;let n=0,r=null;for(let i of this.endNodes[t]){let t=i.backtraceScore+e.score;(r===null||t>n)&&(r=i.clone(),n=t)}if(r!==null)e.prev=r,e.backtraceScore=n;else return[]}++t}let n=[],r=this.beginNodes[e][0],i=r.prev;if(i===null)return[];let a=i.clone();for(;a.prev!==null;){n.push(a.clone());let e=a.clone();a=e.prev.clone()}return n.reverse(),n}piece(e){return this.chars.slice(e.pos,e.pos+e.length).join(``)}tokens(){let e=this.viterbi();return e.map(e=>this.piece(e))}tokenIds(){let e=this.viterbi();return e.map(e=>e.tokenId)}}class s{constructor(e,t,n,r,i){this.tokenId=e,this.nodeId=t,this.pos=n,this.length=r,this.score=i,this.prev=null,this.backtraceScore=0}clone(){let e=new s(this.tokenId,this.nodeId,this.pos,this.length,this.score);return e.prev=this.prev,e.backtraceScore=this.backtraceScore,e}}class c{constructor(e){this.trie=this._buildTrie(e)}_buildTrie(e){let t=Object.create(null);for(let i of e){var n,r;let e=t;for(let t=0;tr&&t.push(e.slice(r,i)),t.push(o),i+=o.length,r=i):++i}return rthis.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}}},"./src/utils/devices.js":(e,t,n)=>{n.r(t),n.d(t,{DEVICE_TYPES:()=>r});let r=Object.freeze({auto:`auto`,gpu:`gpu`,cpu:`cpu`,wasm:`wasm`,webgpu:`webgpu`,cuda:`cuda`,dml:`dml`,webnn:`webnn`,"webnn-npu":`webnn-npu`,"webnn-gpu":`webnn-gpu`,"webnn-cpu":`webnn-cpu`})},"./src/utils/dtypes.js":(e,t,n)=>{n.r(t),n.d(t,{DATA_TYPES:()=>o,DEFAULT_DEVICE_DTYPE_MAPPING:()=>s,DEFAULT_DTYPE_SUFFIX_MAPPING:()=>c,isWebGpuFp16Supported:()=>a});var r=n( -/*! ../env.js */ -`./src/env.js`),i=n( -/*! ./devices.js */ -`./src/utils/devices.js`);let a=function(){let e;return async function(){if(e===void 0)if(!r.apis.IS_WEBGPU_AVAILABLE)e=!1;else try{let t=await navigator.gpu.requestAdapter();e=t.features.has(`shader-f16`)}catch{e=!1}return e}}(),o=Object.freeze({auto:`auto`,fp32:`fp32`,fp16:`fp16`,q8:`q8`,int8:`int8`,uint8:`uint8`,q4:`q4`,bnb4:`bnb4`,q4f16:`q4f16`}),s=Object.freeze({[i.DEVICE_TYPES.wasm]:o.q8}),c=Object.freeze({[o.fp32]:``,[o.fp16]:`_fp16`,[o.int8]:`_int8`,[o.uint8]:`_uint8`,[o.q8]:`_quantized`,[o.q4]:`_q4`,[o.q4f16]:`_q4f16`,[o.bnb4]:`_bnb4`})},"./src/utils/generic.js":(e,t,n)=>{n.r(t),n.d(t,{Callable:()=>r});let r=class{constructor(){let e=function(...t){return e._call(...t)};return Object.setPrototypeOf(e,new.target.prototype)}_call(...e){throw Error(`Must implement _call method in subclass`)}}},"./src/utils/hub.js":(e,t,n)=>{n.r(t),n.d(t,{MAX_EXTERNAL_DATA_CHUNKS:()=>s,getFile:()=>p,getModelFile:()=>v,getModelJSON:()=>b,getModelText:()=>y});var r=n( -/*! node:fs */ -`?7992`),i=n( -/*! node:path */ -`?5af5`),a=n( -/*! ../env.js */ -`./src/env.js`),o=n( -/*! ./core.js */ -`./src/utils/core.js`);let s=100,c={txt:`text/plain`,html:`text/html`,css:`text/css`,js:`text/javascript`,json:`application/json`,png:`image/png`,jpg:`image/jpeg`,jpeg:`image/jpeg`,gif:`image/gif`};class l{constructor(e){if(this.filePath=e,this.headers=new Headers,this.exists=r.existsSync(e),this.exists){this.status=200,this.statusText=`OK`;let t=r.statSync(e);this.headers.set(`content-length`,t.size.toString()),this.updateContentType();let n=r.createReadStream(e);this.body=new ReadableStream({start(e){n.on(`data`,t=>e.enqueue(t)),n.on(`end`,()=>e.close()),n.on(`error`,t=>e.error(t))},cancel(){n.destroy()}})}else this.status=404,this.statusText=`Not Found`,this.body=null}updateContentType(){let e=this.filePath.toString().split(`.`).pop().toLowerCase();this.headers.set(`content-type`,c[e]??`application/octet-stream`)}clone(){let e=new l(this.filePath);return e.exists=this.exists,e.status=this.status,e.statusText=this.statusText,e.headers=new Headers(this.headers),e}async arrayBuffer(){let e=await r.promises.readFile(this.filePath);return e.buffer}async blob(){let e=await r.promises.readFile(this.filePath);return new Blob([e],{type:this.headers.get(`content-type`)})}async text(){let e=await r.promises.readFile(this.filePath,`utf8`);return e}async json(){return JSON.parse(await this.text())}}function u(e,t=null,n=null){let r;try{r=new URL(e)}catch{return!1}return!(t&&!t.includes(r.protocol)||n&&!n.includes(r.hostname))}let d=/^(\b[\w\-.]+\b\/)?\b[\w\-.]{1,96}\b$/;function f(e){return!(!d.test(e)||e.includes(`..`)||e.includes(`--`)||e.endsWith(`.git`)||e.endsWith(`.ipynb`))}async function p(e){var t;if(a.env.useFS&&!u(e,[`http:`,`https:`,`blob:`]))return new l(e instanceof URL?e.protocol===`file:`?e.pathname:e.toString():e);if(typeof process<`u`&&((t=process)==null||(t=t.release)==null?void 0:t.name)===`node`){var n;let t=!!(n={})?.TESTING_REMOTELY,o=a.env.version,s=new Headers;s.set(`User-Agent`,`transformers.js/${o}; is_ci/${t};`);let c=u(e,[`http:`,`https:`],[`huggingface.co`,`hf.co`]);if(c){var r,i;let e=(r={})?.HF_TOKEN??(i={})?.HF_ACCESS_TOKEN;e&&s.set(`Authorization`,`Bearer ${e}`)}return fetch(e,{headers:s})}else return fetch(e)}let m={400:`Bad request error occurred while trying to load file`,401:`Unauthorized access to file`,403:`Forbidden access to file`,404:`Could not locate file`,408:`Request timeout error occurred while trying to load file`,500:`Internal server error error occurred while trying to load file`,502:`Bad gateway error occurred while trying to load file`,503:`Service unavailable error occurred while trying to load file`,504:`Gateway timeout error occurred while trying to load file`};function h(e,t,n){if(!n)return null;let r=m[e]??`Error (${e}) occurred while trying to load file`;throw Error(`${r}: "${t}".`)}class g{constructor(e){this.path=e}async match(e){let t=i.join(this.path,e),n=new l(t);if(n.exists)return n}async put(e,t,n=void 0){let a=i.join(this.path,e);try{let e=t.headers.get(`Content-Length`),o=parseInt(e??`0`),s=0;await r.promises.mkdir(i.dirname(a),{recursive:!0});let c=r.createWriteStream(a),l=t.body.getReader();for(;;){let{done:e,value:t}=await l.read();if(e)break;await new Promise((e,n)=>{c.write(t,t=>{if(t){n(t);return}e()})}),s+=t.length;let r=o?s/o*100:0;n?.({progress:r,loaded:s,total:o})}c.close()}catch(e){try{await r.promises.unlink(a)}catch{}throw e}}}async function _(e,...t){for(let n of t)try{let t=await e.match(n);if(t)return t}catch{continue}}async function v(e,t,n=!0,r={},i=!1){if(!a.env.allowLocalModels){if(r.local_files_only)throw Error("Invalid configuration detected: local models are disabled (`env.allowLocalModels=false`) but you have requested to only use local models (`local_files_only=true`).");if(!a.env.allowRemoteModels)throw Error("Invalid configuration detected: both local and remote models are disabled. Fix by setting `env.allowLocalModels` or `env.allowRemoteModels` to `true`.")}(0,o.dispatchCallback)(r.progress_callback,{status:`initiate`,name:e,file:t});let s;if(!s&&a.env.useCustomCache){if(!a.env.customCache)throw Error("`env.useCustomCache=true`, but `env.customCache` is not defined.");if(!a.env.customCache.match||!a.env.customCache.put)throw Error("`env.customCache` must be an object which implements the `match` and `put` functions of the Web Cache API. For more information, see https://developer.mozilla.org/en-US/docs/Web/API/Cache");s=a.env.customCache}if(!s&&a.env.useBrowserCache){if(typeof caches>`u`)throw Error(`Browser cache is not available in this environment.`);try{s=await caches.open(`transformers-cache`)}catch(e){console.warn(`An error occurred while opening the browser cache:`,e)}}if(!s&&a.env.useFSCache){if(!a.apis.IS_FS_AVAILABLE)throw Error(`File System Cache is not available in this environment.`);s=new g(r.cache_dir??a.env.cacheDir)}let c=r.revision??`main`,d=S(e,t),m=f(e),v=m?S(a.env.localModelPath,d):d,y=S(a.env.remoteHost,a.env.remotePathTemplate.replaceAll(`{model}`,e).replaceAll(`{revision}`,encodeURIComponent(c)),t),b,C=s instanceof g?c===`main`?d:S(e,c,t):y,w=!1,T;s&&(T=await _(s,v,C));let E=T!==void 0;if(T===void 0){if(a.env.allowLocalModels){let e=u(d,[`http:`,`https:`]);if(e){if(r.local_files_only)throw Error(`\`local_files_only=true\`, but attempted to load a remote file from: ${d}.`);if(!a.env.allowRemoteModels)throw Error(`\`env.allowRemoteModels=false\`, but attempted to load a remote file from: ${d}.`)}else try{T=await p(v),b=v}catch(e){console.warn(`Unable to load from local path "${v}": "${e}"`)}}if(T===void 0||T.status===404){if(r.local_files_only||!a.env.allowRemoteModels){if(n)throw Error(`\`local_files_only=true\` or \`env.allowRemoteModels=false\` and file was not found locally at "${v}".`);return null}if(!m)throw Error(`Local file missing at "${v}" and download aborted due to invalid model ID "${e}".`);if(T=await p(y),T.status!==200)return h(T.status,y,n);b=C}w=s&&typeof Response<`u`&&T instanceof Response&&T.status===200}(0,o.dispatchCallback)(r.progress_callback,{status:`download`,name:e,file:t});let D;if(!(a.apis.IS_NODE_ENV&&i)){let n;r.progress_callback?E&&typeof navigator<`u`&&/firefox/i.test(navigator.userAgent)?(n=new Uint8Array(await T.arrayBuffer()),(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,progress:100,loaded:n.length,total:n.length})):n=await x(T,n=>{(0,o.dispatchCallback)(r.progress_callback,{status:`progress`,name:e,file:t,...n})}):n=new Uint8Array(await T.arrayBuffer()),D=n}if(w&&b&&await s.match(b)===void 0&&(D?await s.put(b,new Response(D,{headers:T.headers})).catch(e=>{console.warn(`Unable to add response to browser cache: ${e}.`)}):await s.put(b,T,r.progress_callback)),(0,o.dispatchCallback)(r.progress_callback,{status:`done`,name:e,file:t}),D){if(!a.apis.IS_NODE_ENV&&i)throw Error(`Cannot return path in a browser environment.`);return D}if(T instanceof l)return T.filePath;let O=await s?.match(b);if(O instanceof l)return O.filePath;if(O instanceof Response)return new Uint8Array(await O.arrayBuffer());if(typeof O==`string`)return O;throw Error(`Unable to get model file path or buffer.`)}async function y(e,t,n=!0,r={}){let i=await v(e,t,n,r,!1);if(i===null)return null;let a=new TextDecoder(`utf-8`);return a.decode(i)}async function b(e,t,n=!0,r={}){let i=await y(e,t,n,r);return i===null?{}:JSON.parse(i)}async function x(e,t){let n=e.headers.get(`Content-Length`);n===null&&console.warn(`Unable to determine content-length from response headers. Will expand buffer when needed.`);let r=parseInt(n??`0`),i=new Uint8Array(r),a=0,o=e.body.getReader();async function s(){let{done:e,value:n}=await o.read();if(e)return;let c=a+n.length;if(c>r){r=c;let e=new Uint8Array(r);e.set(i),i=e}i.set(n,a),a=c;let l=a/r*100;return t({progress:l,loaded:a,total:r}),s()}return await s(),i}function S(...e){return e=e.map((t,n)=>(n&&(t=t.replace(RegExp(`^/`),``)),n!==e.length-1&&(t=t.replace(RegExp(`/$`),``)),t)),e.join(`/`)}},"./src/utils/image.js":(e,t,n)=>{n.r(t),n.d(t,{RawImage:()=>m,load_image:()=>h});var r=n( -/*! ./core.js */ -`./src/utils/core.js`),i=n( -/*! ./hub.js */ -`./src/utils/hub.js`),a=n( -/*! ../env.js */ -`./src/env.js`),o=n( -/*! ./tensor.js */ -`./src/utils/tensor.js`),s=n( -/*! sharp */ -`?2b25`);let c,l,u,d=a.apis.IS_BROWSER_ENV||a.apis.IS_WEBWORKER_ENV;if(d)c=(e,t)=>{if(!self.OffscreenCanvas)throw Error(`OffscreenCanvas not supported by this browser.`);return new self.OffscreenCanvas(e,t)},u=self.createImageBitmap,l=self.ImageData;else if(s)u=async e=>{let t=await e.metadata(),n=t.channels,{data:r,info:i}=await e.rotate().raw().toBuffer({resolveWithObject:!0}),a=new m(new Uint8ClampedArray(r),i.width,i.height,i.channels);return n!==void 0&&n!==i.channels&&a.convert(n),a};else throw Error(`Unable to load image processing library.`);let f={0:`nearest`,1:`lanczos`,2:`bilinear`,3:`bicubic`,4:`box`,5:`hamming`},p=new Map([[`png`,`image/png`],[`jpg`,`image/jpeg`],[`jpeg`,`image/jpeg`],[`gif`,`image/gif`]]);class m{constructor(e,t,n,r){this.data=e,this.width=t,this.height=n,this.channels=r}get size(){return[this.width,this.height]}static async read(e){if(e instanceof m)return e;if(typeof e==`string`||e instanceof URL)return await this.fromURL(e);if(e instanceof Blob)return await this.fromBlob(e);if(typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof OffscreenCanvas<`u`&&e instanceof OffscreenCanvas)return this.fromCanvas(e);throw Error(`Unsupported input type: ${typeof e}`)}static fromCanvas(e){if(!d)throw Error(`fromCanvas() is only supported in browser environments.`);let t=e.getContext(`2d`),n=t.getImageData(0,0,e.width,e.height).data;return new m(n,e.width,e.height,4)}static async fromURL(e){let t=await(0,i.getFile)(e);if(t.status!==200)throw Error(`Unable to read image from "${e}" (${t.status} ${t.statusText})`);let n=await t.blob();return this.fromBlob(n)}static async fromBlob(e){if(d){let t=await u(e),n=c(t.width,t.height).getContext(`2d`);return n.drawImage(t,0,0),new this(n.getImageData(0,0,t.width,t.height).data,t.width,t.height,4)}else{let t=s(await e.arrayBuffer());return await u(t)}}static fromTensor(e,t=`CHW`){if(e.dims.length!==3)throw Error(`Tensor should have 3 dimensions, but has ${e.dims.length} dimensions.`);if(t===`CHW`)e=e.transpose(1,2,0);else if(t!==`HWC`)throw Error(`Unsupported channel format: ${t}`);if(!(e.data instanceof Uint8ClampedArray||e.data instanceof Uint8Array))throw Error(`Unsupported tensor type: ${e.type}`);switch(e.dims[2]){case 1:case 2:case 3:case 4:return new m(e.data,e.dims[1],e.dims[0],e.dims[2]);default:throw Error(`Unsupported number of channels: ${e.dims[2]}`)}}grayscale(){if(this.channels===1)return this;let e=new Uint8ClampedArray(this.width*this.height*1);switch(this.channels){case 3:case 4:for(let t=0,n=0;t=0?s=n:u=-n,r>=0?l=r:d=-r,o.drawImage(a,s,l,e,t,u,d,e,t);let f=new m(o.getImageData(0,0,e,t).data,e,t,4);return f.convert(i)}else{let i=this.toSharp();if(n>=0&&r>=0)i=i.extract({left:Math.floor(n),top:Math.floor(r),width:e,height:t});else if(n<=0&&r<=0){let a=Math.floor(-r),o=Math.floor(-n);i=i.extend({top:a,left:o,right:e-this.width-o,bottom:t-this.height-a})}else{let a=[0,0],o=0;r<0?(a[0]=Math.floor(-r),a[1]=t-this.height-a[0]):o=Math.floor(r);let s=[0,0],c=0;n<0?(s[0]=Math.floor(-n),s[1]=e-this.width-s[0]):c=Math.floor(n),i=i.extend({top:a[0],bottom:a[1],left:s[0],right:s[1]}).extract({left:c,top:o,width:e,height:t})}return await u(i)}}async toBlob(e=`image/png`,t=1){if(!d)throw Error(`toBlob() is only supported in browser environments.`);let n=this.toCanvas();return await n.convertToBlob({type:e,quality:t})}toTensor(e=`CHW`){let t=new o.Tensor(`uint8`,new Uint8Array(this.data),[this.height,this.width,this.channels]);if(e!==`HWC`)if(e===`CHW`)t=t.permute(2,0,1);else throw Error(`Unsupported channel format: ${e}`);return t}toCanvas(){if(!d)throw Error(`toCanvas() is only supported in browser environments.`);let e=this.clone().rgba(),t=c(e.width,e.height),n=new l(e.data,e.width,e.height);return t.getContext(`2d`).putImageData(n,0,0),t}split(){let{data:e,width:t,height:n,channels:r}=this,i=e.constructor,a=e.length/r,o=Array.from({length:r},()=>new i(a));for(let t=0;tnew m(e,t,n,1))}_update(e,t,n,r=null){return this.data=e,this.width=t,this.height=n,r!==null&&(this.channels=r),this}clone(){return new m(this.data.slice(),this.width,this.height,this.channels)}convert(e){if(this.channels===e)return this;switch(e){case 1:this.grayscale();break;case 3:this.rgb();break;case 4:this.rgba();break;default:throw Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this}async save(e){if(d){if(a.apis.IS_WEBWORKER_ENV)throw Error(`Unable to save an image from a Web Worker.`);let t=e.split(`.`).pop().toLowerCase(),n=p.get(t)??`image/png`,i=await this.toBlob(n);(0,r.saveBlob)(e,i)}else if(a.apis.IS_FS_AVAILABLE){let t=this.toSharp();return await t.toFile(e)}else throw Error(`Unable to save the image because filesystem is disabled in this environment.`)}toSharp(){if(d)throw Error(`toSharp() is only supported in server-side environments.`);return s(this.data,{raw:{width:this.width,height:this.height,channels:this.channels}})}}let h=m.read.bind(m)},"./src/utils/maths.js":(e,t,n)=>{n.r(t),n.d(t,{FFT:()=>h,bankers_round:()=>v,cos_sim:()=>c,dot:()=>s,dynamic_time_warping:()=>y,interpolate_data:()=>r,log_softmax:()=>o,magnitude:()=>l,max:()=>d,medianFilter:()=>g,min:()=>u,permute_data:()=>i,round:()=>_,softmax:()=>a});function r(e,[t,n,r],[i,a],o=`bilinear`,s=!1){let c=a/r,l=i/n,u=new e.constructor(i*a*t),d=n*r,f=i*a;for(let o=0;o=0;--e)i[e]=a,r[e]=t[n[e]],a*=r[e];let a=n.map((e,t)=>i[n.indexOf(t)]),o=new e.constructor(e.length);for(let n=0;n=0;--e)r+=i%t[e]*a[e],i=Math.floor(i/t[e]);o[r]=e[n]}return[o,r]}function a(e){let t=d(e)[0],n=e.map(e=>Math.exp(e-t)),r=n.reduce((e,t)=>e+t,0),i=n.map(e=>e/r);return i}function o(e){let t=d(e)[0],n=0;for(let r=0;re-t-r);return i}function s(e,t){let n=0;for(let r=0;re+t*t,0))}function u(e){if(e.length===0)throw Error(`Array must not be empty`);let t=e[0],n=0;for(let r=1;rt&&(t=e[r],n=r);return[t,n]}function f(e){return e>0&&(e&e-1)==0}class p{constructor(e){if(this.size=e|0,this.size<=1||!f(this.size))throw Error(`FFT size must be a power of two larger than 1`);this._csize=e<<1,this.table=new Float64Array(this.size*2);for(let e=0;ee;e<<=1)++t;this._width=t%2==0?t-1:t,this._bitrev=new Int32Array(1<>>t&3)<>>1);for(let t=0;t>>1]=e[t];return n}toComplexArray(e,t){let n=t||this.createComplexArray();for(let t=0;t>>1],n[t+1]=0;return n}transform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,1)}realTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._realTransform4(e,t,1)}inverseTransform(e,t){if(e===t)throw Error(`Input and output buffers must be different`);this._transform4(e,t,-1);for(let t=0;t>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>2;for(s=0;s>>1,a>>>1)}else for(s=0,c=0;s>>1,a>>>1,n)}let u=this.table;for(a>>=2;a>=2;a>>=2){o=r/a<<1;let t=o>>>1,i=t>>>1,c=i>>>1;for(s=0;s>>1;for(let t=2;t>1;++t){let n=(t+1-e)**2/2,r=Math.sqrt(s**2+c**2)**n,o=n*Math.atan2(c,s),l=2*t;i[l]=r*Math.cos(o),i[l+1]=r*Math.sin(o),a[l]=i[l],a[l+1]=-i[l+1]}this._slicedChirpBuffer=i.subarray(t,n),this._f=new p(r>>1),this._f.transform(this._chirpBuffer,a)}_transform(e,t,n){let r=this._buffer1,i=this._buffer2,a=this._outBuffer1,o=this._outBuffer2,s=this._chirpBuffer,c=this._slicedChirpBuffer,l=this._a;if(n)for(let e=0;e>1,a=t[i];r[e]=a*c[e],r[n]=a*c[n]}else for(let e=0;e=e.length&&(i=2*(e.length-1)-i),r[a++]=e[i]}r.sort(),n[t]=r[i]}return n}function _(e,t){let n=10**t;return Math.round(e*n)/n}function v(e){let t=Math.round(e),n=Math.abs(e)%1==.5?t%2==0?t:t-1:t;return n}function y(e){let t=e.length,n=e[0].length,r=[t+1,n+1],i=Array.from({length:r[0]},()=>Array(r[1]).fill(1/0));i[0][0]=0;let a=Array.from({length:r[0]},()=>Array(r[1]).fill(-1));for(let t=1;t0||s>0;)switch(c.push(o-1),l.push(s-1),a[o][s]){case 0:--o,--s;break;case 1:--o;break;case 2:--s;break;default:throw Error(`Internal error in dynamic time warping. Unexpected trace[${o}, ${s}]. Please file a bug report.`)}return c.reverse(),l.reverse(),[c,l]}},"./src/utils/tensor.js":(t,n,r)=>{let i;r.r(n),r.d(n,{DataTypeMap:()=>c,Tensor:()=>l,cat:()=>w,full:()=>ee,full_like:()=>te,interpolate:()=>f,interpolate_4d:()=>p,layer_norm:()=>b,matmul:()=>m,mean:()=>O,mean_pooling:()=>y,ones:()=>ne,ones_like:()=>re,permute:()=>d,quantize_embeddings:()=>oe,rand:()=>ae,rfft:()=>h,slice:()=>v,stack:()=>T,std_mean:()=>D,topk:()=>g,zeros:()=>j,zeros_like:()=>ie});var a=r( -/*! ./maths.js */ -`./src/utils/maths.js`),o=r( -/*! ../backends/onnx.js */ -`./src/backends/onnx.js`),s=r( -/*! ../ops/registry.js */ -`./src/ops/registry.js`);let c=Object.freeze({float32:Float32Array,float16:typeof Float16Array<`u`?Float16Array:Uint16Array,float64:Float64Array,string:Array,int8:Int8Array,uint8:Uint8Array,int16:Int16Array,uint16:Uint16Array,int32:Int32Array,uint32:Uint32Array,int64:BigInt64Array,uint64:BigUint64Array,bool:Uint8Array,uint4:Uint8Array,int4:Int8Array});i=Symbol.iterator;class l{get dims(){return this.ort_tensor.dims}set dims(e){this.ort_tensor.dims=e}get type(){return this.ort_tensor.type}get data(){return this.ort_tensor.data}get size(){return this.ort_tensor.size}get location(){return this.ort_tensor.location}constructor(...t){return e.defineProperty(this,`ort_tensor`,void 0),(0,o.isONNXTensor)(t[0])?this.ort_tensor=t[0]:this.ort_tensor=new o.Tensor(t[0],t[1],t[2]),new Proxy(this,{get:(e,t)=>{if(typeof t==`string`){let n=Number(t);if(Number.isInteger(n))return e._getitem(n)}return e[t]},set:(e,t,n)=>e[t]=n})}dispose(){this.ort_tensor.dispose()}*[i](){let[e,...t]=this.dims;if(t.length>0){let n=t.reduce((e,t)=>e*t);for(let r=0;r0){let t=n.reduce((e,t)=>e*t);return this._subarray(e,t,n)}else return new l(this.type,[this.data[e]],n)}indexOf(e){let t=this.data;for(let n=0;na)throw Error(`Invalid slice: ${i}`);let o=[Math.max(e,0),Math.min(a,this.dims[r])];n.push(o),t.push(o[1]-o[0])}else throw Error(`Invalid slice: ${i}`)}let r=n.map(([e,t])=>t-e),i=r.reduce((e,t)=>e*t),a=this.data,o=new a.constructor(i),s=this.stride();for(let e=0;e=0;--i){let e=r[i];t+=(a%e+n[i][0])*s[i],a=Math.floor(a/e)}o[e]=a[t]}return new l(this.type,o,t)}permute(...e){return d(this,e)}transpose(...e){return this.permute(...e)}sum(e=null,t=!1){return this.norm(1,e,t)}norm(e=`fro`,t=null,n=!1){if(e===`fro`)e=2;else if(typeof e==`string`)throw Error(`Unsupported norm: ${e}`);let r=this.data,i=(t,n)=>t+n**e;if(t===null){let t=r.reduce(i,0)**(1/e);return new l(this.type,[t],[])}let[a,o,s]=E(i,this,t,n);if(e!==1)for(let t=0;t=0;--r){let e=this.dims[r];if(r!==t){let t=i%e;n+=t*a,a*=this.dims[r]}i=Math.floor(i/e)}r[e]/=i[n]}return this}normalize(e=2,t=1){return this.clone().normalize_(e,t)}stride(){return k(this.dims)}squeeze(e=null){return new l(this.type,this.data,x(this.dims,e))}squeeze_(e=null){return this.dims=x(this.dims,e),this}unsqueeze(e=null){return new l(this.type,this.data,S(this.dims,e))}unsqueeze_(e=null){return this.dims=S(this.dims,e),this}flatten_(e=0,t=-1){t=(t+this.dims.length)%this.dims.length;let n=this.dims.slice(0,e),r=this.dims.slice(e,t+1),i=this.dims.slice(t+1);return this.dims=[...n,r.reduce((e,t)=>e*t,1),...i],this}flatten(e=0,t=-1){return this.clone().flatten_(e,t)}view(...e){let t=-1;for(let n=0;nr===t?e:e*n,1);e[t]=n.length/r}return new l(this.type,n,e)}neg_(){let e=this.data;for(let t=0;te?1:0;return new l(`bool`,t,this.dims)}lt(e){let t=new Uint8Array(this.data.length),n=this.data;for(let r=0;rMath.min(e,t),this,e,t,1/0);return new l(n,r,i)}max(e=null,t=!1){if(e===null){let e=(0,a.max)(this.data)[0];return new l(this.type,[e],[])}let[n,r,i]=E((e,t)=>Math.max(e,t),this,e,t,-1/0);return new l(n,r,i)}argmin(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,a.min)(this.data)[1];return new l(`int64`,[BigInt(n)],[])}argmax(e=null,t=!1){if(e!==null)throw Error("`dim !== null` not yet implemented.");let n=(0,a.max)(this.data)[1];return new l(`int64`,[BigInt(n)],[])}to(e){if(this.type===e)return this;if(!c.hasOwnProperty(e))throw Error(`Unsupported type: ${e}`);let t,n=[`int64`,`uint64`].includes(this.type),r=[`int64`,`uint64`].includes(e);return n&&!r?t=Number:!n&&r&&(t=BigInt),new l(e,c[e].from(this.data,t),this.dims)}}function u(e,t){let n=e.length,r=t.reduce((e,t)=>e*t);if(n!==r)throw Error(`cannot reshape array of size ${n} into shape (${t})`);let i=e;for(let e=t.length-1;e>=0;e--)i=i.reduce((n,r)=>{let i=n[n.length-1];return i.lengthnew l(`int64`,e,[e.length]);async function v(e,t,n,r,i){let a=await s.TensorOpRegistry.slice;return await a({x:e,s:_(t),e:_(n),a:_(r),t:_(i??Array(r.length).fill(1))})}function y(e,t){let n=e.data,r=t.data,i=[e.dims[0],e.dims[2]],a=new n.constructor(i[0]*i[1]),[o,s,c]=e.dims,u=0;for(let e=0;ee!==1):typeof t==`number`?e[t]===1&&e.splice(t,1):Array.isArray(t)&&(e=e.filter((e,n)=>e!==1||!t.includes(n))),e}function S(e,t){return t=C(t,e.length+1),e=e.slice(),e.splice(t,0,1),e}function C(e,t,n=null,r=!0){if(e<-t||e>=t){if(r)throw Error(`IndexError: index ${e} is out of bounds for dimension${n===null?``:` `+n} with size ${t}`);return e<-t?0:t}return e<0&&(e=(e%t+t)%t),e}function w(e,t=0){t=C(t,e[0].dims.length);let n=e[0].dims.slice();n[t]=e.reduce((e,n)=>e+n.dims[t],0);let r=n.reduce((e,t)=>e*t,1),i=new e[0].data.constructor(r),a=e[0].type;if(t===0){let t=0;for(let n of e){let e=n.data;i.set(e,t),t+=e.length}}else{let r=0;for(let a=0;a=0;--i){let e=s[i],l=o%e;i===t&&(l+=r),a+=l*c,c*=n[i],o=Math.floor(o/e)}i[a]=o[e]}r+=s[t]}}return new l(a,i,n)}function T(e,t=0){return w(e.map(e=>e.unsqueeze(t)),t)}function E(e,t,n=null,r=!1,i=null){let a=t.data,o=t.dims;n=C(n,o.length);let s=o.slice();s[n]=1;let c=new a.constructor(a.length/o[n]);i!==null&&c.fill(i);for(let t=0;t=0;--e){let t=o[e];if(e!==n){let n=i%t;r+=n*a,a*=s[e]}i=Math.floor(i/t)}c[r]=e(c[r],a[t],t,r)}return r||s.splice(n,1),[t.type,c,s]}function D(e,t=null,n=1,r=!1){let i=e.data,a=e.dims;if(t===null){let t=i.reduce((e,t)=>e+t,0),r=t/i.length,a=Math.sqrt(i.reduce((e,t)=>e+(t-r)**2,0)/(i.length-n)),o=new l(e.type,[r],[]),s=new l(e.type,[a],[]);return[s,o]}t=C(t,a.length);let o=O(e,t,r),s=o.data,[c,u,d]=E((e,t,n,r)=>e+(t-s[r])**2,e,t,r);for(let e=0;ee+t,0);return new l(e.type,[t/i.length],[])}t=C(t,r.length);let[a,o,s]=E((e,t)=>e+t,e,t,n);if(r[t]!==1)for(let e=0;e=0;--n)t[n]=r,r*=e[n];return t}function A(e,t,n,r){let i=e.reduce((e,t)=>e*t,1);return new l(n,new r(i).fill(t),e)}function ee(e,t){let n,r;if(typeof t==`number`)n=`float32`,r=Float32Array;else if(typeof t==`bigint`)n=`int64`,r=BigInt64Array;else if(typeof t==`boolean`)n=`bool`,r=Uint8Array;else throw Error(`Unsupported data type: ${typeof t}`);return A(e,t,n,r)}function te(e,t){return ee(e.dims,t)}function ne(e){return A(e,1n,`int64`,BigInt64Array)}function re(e){return ne(e.dims)}function j(e){return A(e,0n,`int64`,BigInt64Array)}function ie(e){return j(e.dims)}function ae(e){let t=e.reduce((e,t)=>e*t,1);return new l(`float32`,Float32Array.from({length:t},()=>Math.random()),e)}function oe(e,t){if(e.dims.length!==2)throw Error(`The tensor must have 2 dimensions`);if(e.dims.at(-1)%8!=0)throw Error(`The last dimension of the tensor must be a multiple of 8`);if(![`binary`,`ubinary`].includes(t))throw Error(`The precision must be either 'binary' or 'ubinary'`);let n=t===`binary`,r=n?`int8`:`uint8`,i=n?Int8Array:Uint8Array,a=e.data,o=new i(a.length/8);for(let e=0;e0?1:0,r=Math.floor(e/8),i=e%8;o[r]|=t<<7-i,n&&i===0&&(o[r]-=128)}return new l(r,o,[e.dims[0],e.dims[1]/8])}},"./src/utils/video.js":(e,t,n)=>{n.r(t),n.d(t,{RawVideo:()=>o,RawVideoFrame:()=>a,load_video:()=>s});var r=n( -/*! ./image.js */ -`./src/utils/image.js`),i=n( -/*! ../env.js */ -`./src/env.js`);class a{constructor(e,t){this.image=e,this.timestamp=t}}class o{constructor(e,t){e.length>0&&e[0]instanceof r.RawImage&&(e=e.map((n,r)=>new a(n,(r+1)/(e.length+1)*t))),this.frames=e,this.duration=t}get width(){return this.frames[0].image.width}get height(){return this.frames[0].image.height}get fps(){return this.frames.length/this.duration}}async function s(e,{num_frames:t=null,fps:n=null}={}){if(!i.apis.IS_BROWSER_ENV)throw Error("`load_video` is currently only supported in browser environments.");if(t==null&&n==null)throw Error(`Either num_frames or fps must be provided.`);let s=[],c=document.createElement(`video`);if(c.crossOrigin=`anonymous`,c.muted=!0,typeof e==`string`)c.src=e;else if(e instanceof Blob)c.src=URL.createObjectURL(e);else if(e instanceof HTMLVideoElement)c.src=e.src;else throw Error(`Invalid URL or video element provided.`);if(await new Promise(e=>c.onloadedmetadata=e),c.seekable.start(0)===c.seekable.end(0)){let e=await fetch(c.src),t=await e.blob();c.src=URL.createObjectURL(t),await new Promise(e=>c.onloadedmetadata=e)}let l=c.duration,u,d;t==null?(d=1/n,u=Math.floor(l/d)):(u=t,d=t===1?0:l/(t-1));let f=[];for(let e=0;e{c.onseeked=e}),m.drawImage(c,0,0,p.width,p.height);let t=m.getImageData(0,0,p.width,p.height),n=new r.RawImage(t.data,p.width,p.height,4),i=new a(n,e);s.push(i)}return c.remove(),new o(s,l)}}},uf={};function df(e){var t=uf[e];if(t!==void 0)return t.exports;var n=uf[e]={exports:{}};return lf[e](n,n.exports,df),n.exports}(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t;df.t=function(n,r){if(r&1&&(n=this(n)),r&8||typeof n==`object`&&n&&(r&4&&n.__esModule||r&16&&typeof n.then==`function`))return n;var i=Object.create(null);df.r(i);var a={};t||=[null,e({}),e([]),e(e)];for(var o=r&2&&n;typeof o==`object`&&!~t.indexOf(o);o=e(o))Object.getOwnPropertyNames(o).forEach(e=>a[e]=()=>n[e]);return a.default=()=>n,df.d(i,a),i}})(),df.d=(e,t)=>{for(var n in t)df.o(t,n)&&!df.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},df.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),df.r=e=>{typeof Symbol<`u`&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:`Module`}),Object.defineProperty(e,`__esModule`,{value:!0})};var $={};(()=>{df.r($),df.d($,{ASTFeatureExtractor:()=>d.ASTFeatureExtractor,ASTForAudioClassification:()=>n.ASTForAudioClassification,ASTModel:()=>n.ASTModel,ASTPreTrainedModel:()=>n.ASTPreTrainedModel,AlbertForMaskedLM:()=>n.AlbertForMaskedLM,AlbertForQuestionAnswering:()=>n.AlbertForQuestionAnswering,AlbertForSequenceClassification:()=>n.AlbertForSequenceClassification,AlbertModel:()=>n.AlbertModel,AlbertPreTrainedModel:()=>n.AlbertPreTrainedModel,AlbertTokenizer:()=>r.AlbertTokenizer,AudioClassificationPipeline:()=>t.AudioClassificationPipeline,AutoConfig:()=>i.AutoConfig,AutoFeatureExtractor:()=>f.AutoFeatureExtractor,AutoImageProcessor:()=>h.AutoImageProcessor,AutoModel:()=>n.AutoModel,AutoModelForAudioClassification:()=>n.AutoModelForAudioClassification,AutoModelForAudioFrameClassification:()=>n.AutoModelForAudioFrameClassification,AutoModelForAudioTextToText:()=>n.AutoModelForAudioTextToText,AutoModelForCTC:()=>n.AutoModelForCTC,AutoModelForCausalLM:()=>n.AutoModelForCausalLM,AutoModelForDepthEstimation:()=>n.AutoModelForDepthEstimation,AutoModelForDocumentQuestionAnswering:()=>n.AutoModelForDocumentQuestionAnswering,AutoModelForImageClassification:()=>n.AutoModelForImageClassification,AutoModelForImageFeatureExtraction:()=>n.AutoModelForImageFeatureExtraction,AutoModelForImageMatting:()=>n.AutoModelForImageMatting,AutoModelForImageSegmentation:()=>n.AutoModelForImageSegmentation,AutoModelForImageTextToText:()=>n.AutoModelForImageTextToText,AutoModelForImageToImage:()=>n.AutoModelForImageToImage,AutoModelForMaskGeneration:()=>n.AutoModelForMaskGeneration,AutoModelForMaskedLM:()=>n.AutoModelForMaskedLM,AutoModelForNormalEstimation:()=>n.AutoModelForNormalEstimation,AutoModelForObjectDetection:()=>n.AutoModelForObjectDetection,AutoModelForPoseEstimation:()=>n.AutoModelForPoseEstimation,AutoModelForQuestionAnswering:()=>n.AutoModelForQuestionAnswering,AutoModelForSemanticSegmentation:()=>n.AutoModelForSemanticSegmentation,AutoModelForSeq2SeqLM:()=>n.AutoModelForSeq2SeqLM,AutoModelForSequenceClassification:()=>n.AutoModelForSequenceClassification,AutoModelForSpeechSeq2Seq:()=>n.AutoModelForSpeechSeq2Seq,AutoModelForTextToSpectrogram:()=>n.AutoModelForTextToSpectrogram,AutoModelForTextToWaveform:()=>n.AutoModelForTextToWaveform,AutoModelForTokenClassification:()=>n.AutoModelForTokenClassification,AutoModelForUniversalSegmentation:()=>n.AutoModelForUniversalSegmentation,AutoModelForVision2Seq:()=>n.AutoModelForVision2Seq,AutoModelForXVector:()=>n.AutoModelForXVector,AutoModelForZeroShotObjectDetection:()=>n.AutoModelForZeroShotObjectDetection,AutoProcessor:()=>v.AutoProcessor,AutoTokenizer:()=>r.AutoTokenizer,AutomaticSpeechRecognitionPipeline:()=>t.AutomaticSpeechRecognitionPipeline,BackgroundRemovalPipeline:()=>t.BackgroundRemovalPipeline,BartForConditionalGeneration:()=>n.BartForConditionalGeneration,BartForSequenceClassification:()=>n.BartForSequenceClassification,BartModel:()=>n.BartModel,BartPretrainedModel:()=>n.BartPretrainedModel,BartTokenizer:()=>r.BartTokenizer,BaseModelOutput:()=>n.BaseModelOutput,BaseStreamer:()=>y.BaseStreamer,BeitFeatureExtractor:()=>m.BeitFeatureExtractor,BeitForImageClassification:()=>n.BeitForImageClassification,BeitModel:()=>n.BeitModel,BeitPreTrainedModel:()=>n.BeitPreTrainedModel,BertForMaskedLM:()=>n.BertForMaskedLM,BertForQuestionAnswering:()=>n.BertForQuestionAnswering,BertForSequenceClassification:()=>n.BertForSequenceClassification,BertForTokenClassification:()=>n.BertForTokenClassification,BertModel:()=>n.BertModel,BertPreTrainedModel:()=>n.BertPreTrainedModel,BertTokenizer:()=>r.BertTokenizer,BitImageProcessor:()=>m.BitImageProcessor,BlenderbotForConditionalGeneration:()=>n.BlenderbotForConditionalGeneration,BlenderbotModel:()=>n.BlenderbotModel,BlenderbotPreTrainedModel:()=>n.BlenderbotPreTrainedModel,BlenderbotSmallForConditionalGeneration:()=>n.BlenderbotSmallForConditionalGeneration,BlenderbotSmallModel:()=>n.BlenderbotSmallModel,BlenderbotSmallPreTrainedModel:()=>n.BlenderbotSmallPreTrainedModel,BlenderbotSmallTokenizer:()=>r.BlenderbotSmallTokenizer,BlenderbotTokenizer:()=>r.BlenderbotTokenizer,BloomForCausalLM:()=>n.BloomForCausalLM,BloomModel:()=>n.BloomModel,BloomPreTrainedModel:()=>n.BloomPreTrainedModel,BloomTokenizer:()=>r.BloomTokenizer,CLIPFeatureExtractor:()=>m.CLIPFeatureExtractor,CLIPImageProcessor:()=>m.CLIPImageProcessor,CLIPModel:()=>n.CLIPModel,CLIPPreTrainedModel:()=>n.CLIPPreTrainedModel,CLIPSegForImageSegmentation:()=>n.CLIPSegForImageSegmentation,CLIPSegModel:()=>n.CLIPSegModel,CLIPSegPreTrainedModel:()=>n.CLIPSegPreTrainedModel,CLIPTextModel:()=>n.CLIPTextModel,CLIPTextModelWithProjection:()=>n.CLIPTextModelWithProjection,CLIPTokenizer:()=>r.CLIPTokenizer,CLIPVisionModel:()=>n.CLIPVisionModel,CLIPVisionModelWithProjection:()=>n.CLIPVisionModelWithProjection,CamembertForMaskedLM:()=>n.CamembertForMaskedLM,CamembertForQuestionAnswering:()=>n.CamembertForQuestionAnswering,CamembertForSequenceClassification:()=>n.CamembertForSequenceClassification,CamembertForTokenClassification:()=>n.CamembertForTokenClassification,CamembertModel:()=>n.CamembertModel,CamembertPreTrainedModel:()=>n.CamembertPreTrainedModel,CamembertTokenizer:()=>r.CamembertTokenizer,CausalLMOutput:()=>n.CausalLMOutput,CausalLMOutputWithPast:()=>n.CausalLMOutputWithPast,ChineseCLIPFeatureExtractor:()=>m.ChineseCLIPFeatureExtractor,ChineseCLIPModel:()=>n.ChineseCLIPModel,ChineseCLIPPreTrainedModel:()=>n.ChineseCLIPPreTrainedModel,ClapAudioModelWithProjection:()=>n.ClapAudioModelWithProjection,ClapFeatureExtractor:()=>d.ClapFeatureExtractor,ClapModel:()=>n.ClapModel,ClapPreTrainedModel:()=>n.ClapPreTrainedModel,ClapTextModelWithProjection:()=>n.ClapTextModelWithProjection,ClassifierFreeGuidanceLogitsProcessor:()=>x.ClassifierFreeGuidanceLogitsProcessor,CodeGenForCausalLM:()=>n.CodeGenForCausalLM,CodeGenModel:()=>n.CodeGenModel,CodeGenPreTrainedModel:()=>n.CodeGenPreTrainedModel,CodeGenTokenizer:()=>r.CodeGenTokenizer,CodeLlamaTokenizer:()=>r.CodeLlamaTokenizer,CohereForCausalLM:()=>n.CohereForCausalLM,CohereModel:()=>n.CohereModel,CoherePreTrainedModel:()=>n.CoherePreTrainedModel,CohereTokenizer:()=>r.CohereTokenizer,ConvBertForMaskedLM:()=>n.ConvBertForMaskedLM,ConvBertForQuestionAnswering:()=>n.ConvBertForQuestionAnswering,ConvBertForSequenceClassification:()=>n.ConvBertForSequenceClassification,ConvBertForTokenClassification:()=>n.ConvBertForTokenClassification,ConvBertModel:()=>n.ConvBertModel,ConvBertPreTrainedModel:()=>n.ConvBertPreTrainedModel,ConvBertTokenizer:()=>r.ConvBertTokenizer,ConvNextFeatureExtractor:()=>m.ConvNextFeatureExtractor,ConvNextForImageClassification:()=>n.ConvNextForImageClassification,ConvNextImageProcessor:()=>m.ConvNextImageProcessor,ConvNextModel:()=>n.ConvNextModel,ConvNextPreTrainedModel:()=>n.ConvNextPreTrainedModel,ConvNextV2ForImageClassification:()=>n.ConvNextV2ForImageClassification,ConvNextV2Model:()=>n.ConvNextV2Model,ConvNextV2PreTrainedModel:()=>n.ConvNextV2PreTrainedModel,DFineForObjectDetection:()=>n.DFineForObjectDetection,DFineModel:()=>n.DFineModel,DFinePreTrainedModel:()=>n.DFinePreTrainedModel,DPTFeatureExtractor:()=>m.DPTFeatureExtractor,DPTForDepthEstimation:()=>n.DPTForDepthEstimation,DPTImageProcessor:()=>m.DPTImageProcessor,DPTModel:()=>n.DPTModel,DPTPreTrainedModel:()=>n.DPTPreTrainedModel,DacDecoderModel:()=>n.DacDecoderModel,DacDecoderOutput:()=>n.DacDecoderOutput,DacEncoderModel:()=>n.DacEncoderModel,DacEncoderOutput:()=>n.DacEncoderOutput,DacFeatureExtractor:()=>d.DacFeatureExtractor,DacModel:()=>n.DacModel,DacPreTrainedModel:()=>n.DacPreTrainedModel,DataTypeMap:()=>c.DataTypeMap,DebertaForMaskedLM:()=>n.DebertaForMaskedLM,DebertaForQuestionAnswering:()=>n.DebertaForQuestionAnswering,DebertaForSequenceClassification:()=>n.DebertaForSequenceClassification,DebertaForTokenClassification:()=>n.DebertaForTokenClassification,DebertaModel:()=>n.DebertaModel,DebertaPreTrainedModel:()=>n.DebertaPreTrainedModel,DebertaTokenizer:()=>r.DebertaTokenizer,DebertaV2ForMaskedLM:()=>n.DebertaV2ForMaskedLM,DebertaV2ForQuestionAnswering:()=>n.DebertaV2ForQuestionAnswering,DebertaV2ForSequenceClassification:()=>n.DebertaV2ForSequenceClassification,DebertaV2ForTokenClassification:()=>n.DebertaV2ForTokenClassification,DebertaV2Model:()=>n.DebertaV2Model,DebertaV2PreTrainedModel:()=>n.DebertaV2PreTrainedModel,DebertaV2Tokenizer:()=>r.DebertaV2Tokenizer,DecisionTransformerModel:()=>n.DecisionTransformerModel,DecisionTransformerPreTrainedModel:()=>n.DecisionTransformerPreTrainedModel,DeiTFeatureExtractor:()=>m.DeiTFeatureExtractor,DeiTForImageClassification:()=>n.DeiTForImageClassification,DeiTImageProcessor:()=>m.DeiTImageProcessor,DeiTModel:()=>n.DeiTModel,DeiTPreTrainedModel:()=>n.DeiTPreTrainedModel,DepthAnythingForDepthEstimation:()=>n.DepthAnythingForDepthEstimation,DepthAnythingPreTrainedModel:()=>n.DepthAnythingPreTrainedModel,DepthEstimationPipeline:()=>t.DepthEstimationPipeline,DepthProForDepthEstimation:()=>n.DepthProForDepthEstimation,DepthProPreTrainedModel:()=>n.DepthProPreTrainedModel,DetrFeatureExtractor:()=>m.DetrFeatureExtractor,DetrForObjectDetection:()=>n.DetrForObjectDetection,DetrForSegmentation:()=>n.DetrForSegmentation,DetrImageProcessor:()=>m.DetrImageProcessor,DetrModel:()=>n.DetrModel,DetrObjectDetectionOutput:()=>n.DetrObjectDetectionOutput,DetrPreTrainedModel:()=>n.DetrPreTrainedModel,DetrSegmentationOutput:()=>n.DetrSegmentationOutput,Dinov2ForImageClassification:()=>n.Dinov2ForImageClassification,Dinov2Model:()=>n.Dinov2Model,Dinov2PreTrainedModel:()=>n.Dinov2PreTrainedModel,Dinov2WithRegistersForImageClassification:()=>n.Dinov2WithRegistersForImageClassification,Dinov2WithRegistersModel:()=>n.Dinov2WithRegistersModel,Dinov2WithRegistersPreTrainedModel:()=>n.Dinov2WithRegistersPreTrainedModel,DistilBertForMaskedLM:()=>n.DistilBertForMaskedLM,DistilBertForQuestionAnswering:()=>n.DistilBertForQuestionAnswering,DistilBertForSequenceClassification:()=>n.DistilBertForSequenceClassification,DistilBertForTokenClassification:()=>n.DistilBertForTokenClassification,DistilBertModel:()=>n.DistilBertModel,DistilBertPreTrainedModel:()=>n.DistilBertPreTrainedModel,DistilBertTokenizer:()=>r.DistilBertTokenizer,DocumentQuestionAnsweringPipeline:()=>t.DocumentQuestionAnsweringPipeline,DonutFeatureExtractor:()=>m.DonutFeatureExtractor,DonutImageProcessor:()=>m.DonutImageProcessor,DonutSwinModel:()=>n.DonutSwinModel,DonutSwinPreTrainedModel:()=>n.DonutSwinPreTrainedModel,EfficientNetForImageClassification:()=>n.EfficientNetForImageClassification,EfficientNetImageProcessor:()=>m.EfficientNetImageProcessor,EfficientNetModel:()=>n.EfficientNetModel,EfficientNetPreTrainedModel:()=>n.EfficientNetPreTrainedModel,ElectraForMaskedLM:()=>n.ElectraForMaskedLM,ElectraForQuestionAnswering:()=>n.ElectraForQuestionAnswering,ElectraForSequenceClassification:()=>n.ElectraForSequenceClassification,ElectraForTokenClassification:()=>n.ElectraForTokenClassification,ElectraModel:()=>n.ElectraModel,ElectraPreTrainedModel:()=>n.ElectraPreTrainedModel,ElectraTokenizer:()=>r.ElectraTokenizer,EncodecFeatureExtractor:()=>d.EncodecFeatureExtractor,EosTokenCriteria:()=>b.EosTokenCriteria,EsmForMaskedLM:()=>n.EsmForMaskedLM,EsmForSequenceClassification:()=>n.EsmForSequenceClassification,EsmForTokenClassification:()=>n.EsmForTokenClassification,EsmModel:()=>n.EsmModel,EsmPreTrainedModel:()=>n.EsmPreTrainedModel,EsmTokenizer:()=>r.EsmTokenizer,ExaoneForCausalLM:()=>n.ExaoneForCausalLM,ExaoneModel:()=>n.ExaoneModel,ExaonePreTrainedModel:()=>n.ExaonePreTrainedModel,FFT:()=>l.FFT,FalconForCausalLM:()=>n.FalconForCausalLM,FalconModel:()=>n.FalconModel,FalconPreTrainedModel:()=>n.FalconPreTrainedModel,FalconTokenizer:()=>r.FalconTokenizer,FastViTForImageClassification:()=>n.FastViTForImageClassification,FastViTModel:()=>n.FastViTModel,FastViTPreTrainedModel:()=>n.FastViTPreTrainedModel,FeatureExtractionPipeline:()=>t.FeatureExtractionPipeline,FeatureExtractor:()=>u.FeatureExtractor,FillMaskPipeline:()=>t.FillMaskPipeline,Florence2ForConditionalGeneration:()=>n.Florence2ForConditionalGeneration,Florence2PreTrainedModel:()=>n.Florence2PreTrainedModel,Florence2Processor:()=>_.Florence2Processor,ForcedBOSTokenLogitsProcessor:()=>x.ForcedBOSTokenLogitsProcessor,ForcedEOSTokenLogitsProcessor:()=>x.ForcedEOSTokenLogitsProcessor,GLPNFeatureExtractor:()=>m.GLPNFeatureExtractor,GLPNForDepthEstimation:()=>n.GLPNForDepthEstimation,GLPNModel:()=>n.GLPNModel,GLPNPreTrainedModel:()=>n.GLPNPreTrainedModel,GPT2LMHeadModel:()=>n.GPT2LMHeadModel,GPT2Model:()=>n.GPT2Model,GPT2PreTrainedModel:()=>n.GPT2PreTrainedModel,GPT2Tokenizer:()=>r.GPT2Tokenizer,GPTBigCodeForCausalLM:()=>n.GPTBigCodeForCausalLM,GPTBigCodeModel:()=>n.GPTBigCodeModel,GPTBigCodePreTrainedModel:()=>n.GPTBigCodePreTrainedModel,GPTJForCausalLM:()=>n.GPTJForCausalLM,GPTJModel:()=>n.GPTJModel,GPTJPreTrainedModel:()=>n.GPTJPreTrainedModel,GPTNeoForCausalLM:()=>n.GPTNeoForCausalLM,GPTNeoModel:()=>n.GPTNeoModel,GPTNeoPreTrainedModel:()=>n.GPTNeoPreTrainedModel,GPTNeoXForCausalLM:()=>n.GPTNeoXForCausalLM,GPTNeoXModel:()=>n.GPTNeoXModel,GPTNeoXPreTrainedModel:()=>n.GPTNeoXPreTrainedModel,GPTNeoXTokenizer:()=>r.GPTNeoXTokenizer,Gemma2ForCausalLM:()=>n.Gemma2ForCausalLM,Gemma2Model:()=>n.Gemma2Model,Gemma2PreTrainedModel:()=>n.Gemma2PreTrainedModel,Gemma3ForCausalLM:()=>n.Gemma3ForCausalLM,Gemma3Model:()=>n.Gemma3Model,Gemma3PreTrainedModel:()=>n.Gemma3PreTrainedModel,Gemma3nAudioFeatureExtractor:()=>d.Gemma3nAudioFeatureExtractor,Gemma3nForConditionalGeneration:()=>n.Gemma3nForConditionalGeneration,Gemma3nPreTrainedModel:()=>n.Gemma3nPreTrainedModel,Gemma3nProcessor:()=>_.Gemma3nProcessor,GemmaForCausalLM:()=>n.GemmaForCausalLM,GemmaModel:()=>n.GemmaModel,GemmaPreTrainedModel:()=>n.GemmaPreTrainedModel,GemmaTokenizer:()=>r.GemmaTokenizer,GlmForCausalLM:()=>n.GlmForCausalLM,GlmModel:()=>n.GlmModel,GlmPreTrainedModel:()=>n.GlmPreTrainedModel,GraniteForCausalLM:()=>n.GraniteForCausalLM,GraniteModel:()=>n.GraniteModel,GranitePreTrainedModel:()=>n.GranitePreTrainedModel,Grok1Tokenizer:()=>r.Grok1Tokenizer,GroundingDinoForObjectDetection:()=>n.GroundingDinoForObjectDetection,GroundingDinoImageProcessor:()=>m.GroundingDinoImageProcessor,GroundingDinoPreTrainedModel:()=>n.GroundingDinoPreTrainedModel,GroundingDinoProcessor:()=>_.GroundingDinoProcessor,GroupViTModel:()=>n.GroupViTModel,GroupViTPreTrainedModel:()=>n.GroupViTPreTrainedModel,HeliumForCausalLM:()=>n.HeliumForCausalLM,HeliumModel:()=>n.HeliumModel,HeliumPreTrainedModel:()=>n.HeliumPreTrainedModel,HerbertTokenizer:()=>r.HerbertTokenizer,HieraForImageClassification:()=>n.HieraForImageClassification,HieraModel:()=>n.HieraModel,HieraPreTrainedModel:()=>n.HieraPreTrainedModel,HubertForCTC:()=>n.HubertForCTC,HubertForSequenceClassification:()=>n.HubertForSequenceClassification,HubertModel:()=>n.HubertModel,HubertPreTrainedModel:()=>n.HubertPreTrainedModel,IJepaForImageClassification:()=>n.IJepaForImageClassification,IJepaModel:()=>n.IJepaModel,IJepaPreTrainedModel:()=>n.IJepaPreTrainedModel,Idefics3ForConditionalGeneration:()=>n.Idefics3ForConditionalGeneration,Idefics3ImageProcessor:()=>m.Idefics3ImageProcessor,Idefics3PreTrainedModel:()=>n.Idefics3PreTrainedModel,Idefics3Processor:()=>_.Idefics3Processor,ImageClassificationPipeline:()=>t.ImageClassificationPipeline,ImageFeatureExtractionPipeline:()=>t.ImageFeatureExtractionPipeline,ImageFeatureExtractor:()=>d.ImageFeatureExtractor,ImageMattingOutput:()=>n.ImageMattingOutput,ImageProcessor:()=>p.ImageProcessor,ImageSegmentationPipeline:()=>t.ImageSegmentationPipeline,ImageToImagePipeline:()=>t.ImageToImagePipeline,ImageToTextPipeline:()=>t.ImageToTextPipeline,InterruptableStoppingCriteria:()=>b.InterruptableStoppingCriteria,JAISLMHeadModel:()=>n.JAISLMHeadModel,JAISModel:()=>n.JAISModel,JAISPreTrainedModel:()=>n.JAISPreTrainedModel,JinaCLIPImageProcessor:()=>m.JinaCLIPImageProcessor,JinaCLIPModel:()=>n.JinaCLIPModel,JinaCLIPPreTrainedModel:()=>n.JinaCLIPPreTrainedModel,JinaCLIPProcessor:()=>_.JinaCLIPProcessor,JinaCLIPTextModel:()=>n.JinaCLIPTextModel,JinaCLIPVisionModel:()=>n.JinaCLIPVisionModel,LiteWhisperForConditionalGeneration:()=>n.LiteWhisperForConditionalGeneration,LlamaForCausalLM:()=>n.LlamaForCausalLM,LlamaModel:()=>n.LlamaModel,LlamaPreTrainedModel:()=>n.LlamaPreTrainedModel,LlamaTokenizer:()=>r.LlamaTokenizer,LlavaForConditionalGeneration:()=>n.LlavaForConditionalGeneration,LlavaOnevisionForConditionalGeneration:()=>n.LlavaOnevisionForConditionalGeneration,LlavaOnevisionImageProcessor:()=>m.LlavaOnevisionImageProcessor,LlavaPreTrainedModel:()=>n.LlavaPreTrainedModel,LlavaProcessor:()=>_.LlavaProcessor,LlavaQwen2ForCausalLM:()=>n.LlavaQwen2ForCausalLM,LogitsProcessor:()=>x.LogitsProcessor,LogitsProcessorList:()=>x.LogitsProcessorList,LogitsWarper:()=>x.LogitsWarper,LongT5ForConditionalGeneration:()=>n.LongT5ForConditionalGeneration,LongT5Model:()=>n.LongT5Model,LongT5PreTrainedModel:()=>n.LongT5PreTrainedModel,M2M100ForConditionalGeneration:()=>n.M2M100ForConditionalGeneration,M2M100Model:()=>n.M2M100Model,M2M100PreTrainedModel:()=>n.M2M100PreTrainedModel,M2M100Tokenizer:()=>r.M2M100Tokenizer,MBart50Tokenizer:()=>r.MBart50Tokenizer,MBartForCausalLM:()=>n.MBartForCausalLM,MBartForConditionalGeneration:()=>n.MBartForConditionalGeneration,MBartForSequenceClassification:()=>n.MBartForSequenceClassification,MBartModel:()=>n.MBartModel,MBartPreTrainedModel:()=>n.MBartPreTrainedModel,MBartTokenizer:()=>r.MBartTokenizer,MPNetForMaskedLM:()=>n.MPNetForMaskedLM,MPNetForQuestionAnswering:()=>n.MPNetForQuestionAnswering,MPNetForSequenceClassification:()=>n.MPNetForSequenceClassification,MPNetForTokenClassification:()=>n.MPNetForTokenClassification,MPNetModel:()=>n.MPNetModel,MPNetPreTrainedModel:()=>n.MPNetPreTrainedModel,MPNetTokenizer:()=>r.MPNetTokenizer,MT5ForConditionalGeneration:()=>n.MT5ForConditionalGeneration,MT5Model:()=>n.MT5Model,MT5PreTrainedModel:()=>n.MT5PreTrainedModel,MarianMTModel:()=>n.MarianMTModel,MarianModel:()=>n.MarianModel,MarianPreTrainedModel:()=>n.MarianPreTrainedModel,MarianTokenizer:()=>r.MarianTokenizer,Mask2FormerImageProcessor:()=>m.Mask2FormerImageProcessor,MaskFormerFeatureExtractor:()=>m.MaskFormerFeatureExtractor,MaskFormerForInstanceSegmentation:()=>n.MaskFormerForInstanceSegmentation,MaskFormerImageProcessor:()=>m.MaskFormerImageProcessor,MaskFormerModel:()=>n.MaskFormerModel,MaskFormerPreTrainedModel:()=>n.MaskFormerPreTrainedModel,MaskedLMOutput:()=>n.MaskedLMOutput,MaxLengthCriteria:()=>b.MaxLengthCriteria,Metric3DForDepthEstimation:()=>n.Metric3DForDepthEstimation,Metric3DPreTrainedModel:()=>n.Metric3DPreTrainedModel,Metric3Dv2ForDepthEstimation:()=>n.Metric3Dv2ForDepthEstimation,Metric3Dv2PreTrainedModel:()=>n.Metric3Dv2PreTrainedModel,MgpstrForSceneTextRecognition:()=>n.MgpstrForSceneTextRecognition,MgpstrModelOutput:()=>n.MgpstrModelOutput,MgpstrPreTrainedModel:()=>n.MgpstrPreTrainedModel,MgpstrProcessor:()=>_.MgpstrProcessor,MgpstrTokenizer:()=>r.MgpstrTokenizer,MimiDecoderModel:()=>n.MimiDecoderModel,MimiDecoderOutput:()=>n.MimiDecoderOutput,MimiEncoderModel:()=>n.MimiEncoderModel,MimiEncoderOutput:()=>n.MimiEncoderOutput,MimiModel:()=>n.MimiModel,MimiPreTrainedModel:()=>n.MimiPreTrainedModel,MinLengthLogitsProcessor:()=>x.MinLengthLogitsProcessor,MinNewTokensLengthLogitsProcessor:()=>x.MinNewTokensLengthLogitsProcessor,MistralForCausalLM:()=>n.MistralForCausalLM,MistralModel:()=>n.MistralModel,MistralPreTrainedModel:()=>n.MistralPreTrainedModel,MobileBertForMaskedLM:()=>n.MobileBertForMaskedLM,MobileBertForQuestionAnswering:()=>n.MobileBertForQuestionAnswering,MobileBertForSequenceClassification:()=>n.MobileBertForSequenceClassification,MobileBertModel:()=>n.MobileBertModel,MobileBertPreTrainedModel:()=>n.MobileBertPreTrainedModel,MobileBertTokenizer:()=>r.MobileBertTokenizer,MobileLLMForCausalLM:()=>n.MobileLLMForCausalLM,MobileLLMModel:()=>n.MobileLLMModel,MobileLLMPreTrainedModel:()=>n.MobileLLMPreTrainedModel,MobileNetV1FeatureExtractor:()=>m.MobileNetV1FeatureExtractor,MobileNetV1ForImageClassification:()=>n.MobileNetV1ForImageClassification,MobileNetV1ForSemanticSegmentation:()=>n.MobileNetV1ForSemanticSegmentation,MobileNetV1ImageProcessor:()=>m.MobileNetV1ImageProcessor,MobileNetV1Model:()=>n.MobileNetV1Model,MobileNetV1PreTrainedModel:()=>n.MobileNetV1PreTrainedModel,MobileNetV2FeatureExtractor:()=>m.MobileNetV2FeatureExtractor,MobileNetV2ForImageClassification:()=>n.MobileNetV2ForImageClassification,MobileNetV2ForSemanticSegmentation:()=>n.MobileNetV2ForSemanticSegmentation,MobileNetV2ImageProcessor:()=>m.MobileNetV2ImageProcessor,MobileNetV2Model:()=>n.MobileNetV2Model,MobileNetV2PreTrainedModel:()=>n.MobileNetV2PreTrainedModel,MobileNetV3FeatureExtractor:()=>m.MobileNetV3FeatureExtractor,MobileNetV3ForImageClassification:()=>n.MobileNetV3ForImageClassification,MobileNetV3ForSemanticSegmentation:()=>n.MobileNetV3ForSemanticSegmentation,MobileNetV3ImageProcessor:()=>m.MobileNetV3ImageProcessor,MobileNetV3Model:()=>n.MobileNetV3Model,MobileNetV3PreTrainedModel:()=>n.MobileNetV3PreTrainedModel,MobileNetV4FeatureExtractor:()=>m.MobileNetV4FeatureExtractor,MobileNetV4ForImageClassification:()=>n.MobileNetV4ForImageClassification,MobileNetV4ForSemanticSegmentation:()=>n.MobileNetV4ForSemanticSegmentation,MobileNetV4ImageProcessor:()=>m.MobileNetV4ImageProcessor,MobileNetV4Model:()=>n.MobileNetV4Model,MobileNetV4PreTrainedModel:()=>n.MobileNetV4PreTrainedModel,MobileViTFeatureExtractor:()=>m.MobileViTFeatureExtractor,MobileViTForImageClassification:()=>n.MobileViTForImageClassification,MobileViTImageProcessor:()=>m.MobileViTImageProcessor,MobileViTModel:()=>n.MobileViTModel,MobileViTPreTrainedModel:()=>n.MobileViTPreTrainedModel,MobileViTV2ForImageClassification:()=>n.MobileViTV2ForImageClassification,MobileViTV2Model:()=>n.MobileViTV2Model,MobileViTV2PreTrainedModel:()=>n.MobileViTV2PreTrainedModel,ModelOutput:()=>n.ModelOutput,ModernBertForMaskedLM:()=>n.ModernBertForMaskedLM,ModernBertForSequenceClassification:()=>n.ModernBertForSequenceClassification,ModernBertForTokenClassification:()=>n.ModernBertForTokenClassification,ModernBertModel:()=>n.ModernBertModel,ModernBertPreTrainedModel:()=>n.ModernBertPreTrainedModel,Moondream1ForConditionalGeneration:()=>n.Moondream1ForConditionalGeneration,MoonshineFeatureExtractor:()=>d.MoonshineFeatureExtractor,MoonshineForConditionalGeneration:()=>n.MoonshineForConditionalGeneration,MoonshineModel:()=>n.MoonshineModel,MoonshinePreTrainedModel:()=>n.MoonshinePreTrainedModel,MoonshineProcessor:()=>_.MoonshineProcessor,MptForCausalLM:()=>n.MptForCausalLM,MptModel:()=>n.MptModel,MptPreTrainedModel:()=>n.MptPreTrainedModel,MultiModalityCausalLM:()=>n.MultiModalityCausalLM,MultiModalityPreTrainedModel:()=>n.MultiModalityPreTrainedModel,MusicgenForCausalLM:()=>n.MusicgenForCausalLM,MusicgenForConditionalGeneration:()=>n.MusicgenForConditionalGeneration,MusicgenModel:()=>n.MusicgenModel,MusicgenPreTrainedModel:()=>n.MusicgenPreTrainedModel,NeoBertForMaskedLM:()=>n.NeoBertForMaskedLM,NeoBertForQuestionAnswering:()=>n.NeoBertForQuestionAnswering,NeoBertForSequenceClassification:()=>n.NeoBertForSequenceClassification,NeoBertForTokenClassification:()=>n.NeoBertForTokenClassification,NeoBertModel:()=>n.NeoBertModel,NeoBertPreTrainedModel:()=>n.NeoBertPreTrainedModel,NllbTokenizer:()=>r.NllbTokenizer,NoBadWordsLogitsProcessor:()=>x.NoBadWordsLogitsProcessor,NoRepeatNGramLogitsProcessor:()=>x.NoRepeatNGramLogitsProcessor,NomicBertModel:()=>n.NomicBertModel,NomicBertPreTrainedModel:()=>n.NomicBertPreTrainedModel,NougatImageProcessor:()=>m.NougatImageProcessor,NougatTokenizer:()=>r.NougatTokenizer,OPTForCausalLM:()=>n.OPTForCausalLM,OPTModel:()=>n.OPTModel,OPTPreTrainedModel:()=>n.OPTPreTrainedModel,ObjectDetectionPipeline:()=>t.ObjectDetectionPipeline,Olmo2ForCausalLM:()=>n.Olmo2ForCausalLM,Olmo2Model:()=>n.Olmo2Model,Olmo2PreTrainedModel:()=>n.Olmo2PreTrainedModel,OlmoForCausalLM:()=>n.OlmoForCausalLM,OlmoModel:()=>n.OlmoModel,OlmoPreTrainedModel:()=>n.OlmoPreTrainedModel,OpenELMForCausalLM:()=>n.OpenELMForCausalLM,OpenELMModel:()=>n.OpenELMModel,OpenELMPreTrainedModel:()=>n.OpenELMPreTrainedModel,OwlViTFeatureExtractor:()=>m.OwlViTFeatureExtractor,OwlViTForObjectDetection:()=>n.OwlViTForObjectDetection,OwlViTImageProcessor:()=>m.OwlViTImageProcessor,OwlViTModel:()=>n.OwlViTModel,OwlViTPreTrainedModel:()=>n.OwlViTPreTrainedModel,OwlViTProcessor:()=>_.OwlViTProcessor,Owlv2ForObjectDetection:()=>n.Owlv2ForObjectDetection,Owlv2ImageProcessor:()=>m.Owlv2ImageProcessor,Owlv2Model:()=>n.Owlv2Model,Owlv2PreTrainedModel:()=>n.Owlv2PreTrainedModel,PaliGemmaForConditionalGeneration:()=>n.PaliGemmaForConditionalGeneration,PaliGemmaPreTrainedModel:()=>n.PaliGemmaPreTrainedModel,PaliGemmaProcessor:()=>_.PaliGemmaProcessor,PatchTSMixerForPrediction:()=>n.PatchTSMixerForPrediction,PatchTSMixerModel:()=>n.PatchTSMixerModel,PatchTSMixerPreTrainedModel:()=>n.PatchTSMixerPreTrainedModel,PatchTSTForPrediction:()=>n.PatchTSTForPrediction,PatchTSTModel:()=>n.PatchTSTModel,PatchTSTPreTrainedModel:()=>n.PatchTSTPreTrainedModel,Phi3ForCausalLM:()=>n.Phi3ForCausalLM,Phi3Model:()=>n.Phi3Model,Phi3PreTrainedModel:()=>n.Phi3PreTrainedModel,Phi3VForCausalLM:()=>n.Phi3VForCausalLM,Phi3VImageProcessor:()=>m.Phi3VImageProcessor,Phi3VPreTrainedModel:()=>n.Phi3VPreTrainedModel,Phi3VProcessor:()=>_.Phi3VProcessor,PhiForCausalLM:()=>n.PhiForCausalLM,PhiModel:()=>n.PhiModel,PhiPreTrainedModel:()=>n.PhiPreTrainedModel,Pipeline:()=>t.Pipeline,PreTrainedModel:()=>n.PreTrainedModel,PreTrainedTokenizer:()=>r.PreTrainedTokenizer,PretrainedConfig:()=>i.PretrainedConfig,PretrainedMixin:()=>n.PretrainedMixin,Processor:()=>g.Processor,PvtForImageClassification:()=>n.PvtForImageClassification,PvtImageProcessor:()=>m.PvtImageProcessor,PvtModel:()=>n.PvtModel,PvtPreTrainedModel:()=>n.PvtPreTrainedModel,PyAnnoteFeatureExtractor:()=>d.PyAnnoteFeatureExtractor,PyAnnoteForAudioFrameClassification:()=>n.PyAnnoteForAudioFrameClassification,PyAnnoteModel:()=>n.PyAnnoteModel,PyAnnotePreTrainedModel:()=>n.PyAnnotePreTrainedModel,PyAnnoteProcessor:()=>_.PyAnnoteProcessor,QuestionAnsweringModelOutput:()=>n.QuestionAnsweringModelOutput,QuestionAnsweringPipeline:()=>t.QuestionAnsweringPipeline,Qwen2ForCausalLM:()=>n.Qwen2ForCausalLM,Qwen2Model:()=>n.Qwen2Model,Qwen2PreTrainedModel:()=>n.Qwen2PreTrainedModel,Qwen2Tokenizer:()=>r.Qwen2Tokenizer,Qwen2VLForConditionalGeneration:()=>n.Qwen2VLForConditionalGeneration,Qwen2VLImageProcessor:()=>m.Qwen2VLImageProcessor,Qwen2VLPreTrainedModel:()=>n.Qwen2VLPreTrainedModel,Qwen2VLProcessor:()=>_.Qwen2VLProcessor,Qwen3ForCausalLM:()=>n.Qwen3ForCausalLM,Qwen3Model:()=>n.Qwen3Model,Qwen3PreTrainedModel:()=>n.Qwen3PreTrainedModel,RFDetrForObjectDetection:()=>n.RFDetrForObjectDetection,RFDetrModel:()=>n.RFDetrModel,RFDetrObjectDetectionOutput:()=>n.RFDetrObjectDetectionOutput,RFDetrPreTrainedModel:()=>n.RFDetrPreTrainedModel,RTDetrForObjectDetection:()=>n.RTDetrForObjectDetection,RTDetrImageProcessor:()=>m.RTDetrImageProcessor,RTDetrModel:()=>n.RTDetrModel,RTDetrObjectDetectionOutput:()=>n.RTDetrObjectDetectionOutput,RTDetrPreTrainedModel:()=>n.RTDetrPreTrainedModel,RTDetrV2ForObjectDetection:()=>n.RTDetrV2ForObjectDetection,RTDetrV2Model:()=>n.RTDetrV2Model,RTDetrV2ObjectDetectionOutput:()=>n.RTDetrV2ObjectDetectionOutput,RTDetrV2PreTrainedModel:()=>n.RTDetrV2PreTrainedModel,RawAudio:()=>a.RawAudio,RawImage:()=>o.RawImage,RawVideo:()=>s.RawVideo,RawVideoFrame:()=>s.RawVideoFrame,RepetitionPenaltyLogitsProcessor:()=>x.RepetitionPenaltyLogitsProcessor,ResNetForImageClassification:()=>n.ResNetForImageClassification,ResNetModel:()=>n.ResNetModel,ResNetPreTrainedModel:()=>n.ResNetPreTrainedModel,RoFormerForMaskedLM:()=>n.RoFormerForMaskedLM,RoFormerForQuestionAnswering:()=>n.RoFormerForQuestionAnswering,RoFormerForSequenceClassification:()=>n.RoFormerForSequenceClassification,RoFormerForTokenClassification:()=>n.RoFormerForTokenClassification,RoFormerModel:()=>n.RoFormerModel,RoFormerPreTrainedModel:()=>n.RoFormerPreTrainedModel,RoFormerTokenizer:()=>r.RoFormerTokenizer,RobertaForMaskedLM:()=>n.RobertaForMaskedLM,RobertaForQuestionAnswering:()=>n.RobertaForQuestionAnswering,RobertaForSequenceClassification:()=>n.RobertaForSequenceClassification,RobertaForTokenClassification:()=>n.RobertaForTokenClassification,RobertaModel:()=>n.RobertaModel,RobertaPreTrainedModel:()=>n.RobertaPreTrainedModel,RobertaTokenizer:()=>r.RobertaTokenizer,SamImageProcessor:()=>m.SamImageProcessor,SamImageSegmentationOutput:()=>n.SamImageSegmentationOutput,SamModel:()=>n.SamModel,SamPreTrainedModel:()=>n.SamPreTrainedModel,SamProcessor:()=>_.SamProcessor,SapiensForDepthEstimation:()=>n.SapiensForDepthEstimation,SapiensForNormalEstimation:()=>n.SapiensForNormalEstimation,SapiensForSemanticSegmentation:()=>n.SapiensForSemanticSegmentation,SapiensPreTrainedModel:()=>n.SapiensPreTrainedModel,SeamlessM4TFeatureExtractor:()=>d.SeamlessM4TFeatureExtractor,SegformerFeatureExtractor:()=>m.SegformerFeatureExtractor,SegformerForImageClassification:()=>n.SegformerForImageClassification,SegformerForSemanticSegmentation:()=>n.SegformerForSemanticSegmentation,SegformerImageProcessor:()=>m.SegformerImageProcessor,SegformerModel:()=>n.SegformerModel,SegformerPreTrainedModel:()=>n.SegformerPreTrainedModel,Seq2SeqLMOutput:()=>n.Seq2SeqLMOutput,SequenceClassifierOutput:()=>n.SequenceClassifierOutput,SiglipImageProcessor:()=>m.SiglipImageProcessor,SiglipModel:()=>n.SiglipModel,SiglipPreTrainedModel:()=>n.SiglipPreTrainedModel,SiglipTextModel:()=>n.SiglipTextModel,SiglipTokenizer:()=>r.SiglipTokenizer,SiglipVisionModel:()=>n.SiglipVisionModel,SmolVLMForConditionalGeneration:()=>n.SmolVLMForConditionalGeneration,SmolVLMImageProcessor:()=>m.SmolVLMImageProcessor,SmolVLMProcessor:()=>_.SmolVLMProcessor,SnacDecoderModel:()=>n.SnacDecoderModel,SnacEncoderModel:()=>n.SnacEncoderModel,SnacFeatureExtractor:()=>d.SnacFeatureExtractor,SnacModel:()=>n.SnacModel,SnacPreTrainedModel:()=>n.SnacPreTrainedModel,SpeechT5FeatureExtractor:()=>d.SpeechT5FeatureExtractor,SpeechT5ForSpeechToText:()=>n.SpeechT5ForSpeechToText,SpeechT5ForTextToSpeech:()=>n.SpeechT5ForTextToSpeech,SpeechT5HifiGan:()=>n.SpeechT5HifiGan,SpeechT5Model:()=>n.SpeechT5Model,SpeechT5PreTrainedModel:()=>n.SpeechT5PreTrainedModel,SpeechT5Processor:()=>_.SpeechT5Processor,SpeechT5Tokenizer:()=>r.SpeechT5Tokenizer,SqueezeBertForMaskedLM:()=>n.SqueezeBertForMaskedLM,SqueezeBertForQuestionAnswering:()=>n.SqueezeBertForQuestionAnswering,SqueezeBertForSequenceClassification:()=>n.SqueezeBertForSequenceClassification,SqueezeBertModel:()=>n.SqueezeBertModel,SqueezeBertPreTrainedModel:()=>n.SqueezeBertPreTrainedModel,SqueezeBertTokenizer:()=>r.SqueezeBertTokenizer,StableLmForCausalLM:()=>n.StableLmForCausalLM,StableLmModel:()=>n.StableLmModel,StableLmPreTrainedModel:()=>n.StableLmPreTrainedModel,Starcoder2ForCausalLM:()=>n.Starcoder2ForCausalLM,Starcoder2Model:()=>n.Starcoder2Model,Starcoder2PreTrainedModel:()=>n.Starcoder2PreTrainedModel,StoppingCriteria:()=>b.StoppingCriteria,StoppingCriteriaList:()=>b.StoppingCriteriaList,StyleTextToSpeech2Model:()=>n.StyleTextToSpeech2Model,StyleTextToSpeech2PreTrainedModel:()=>n.StyleTextToSpeech2PreTrainedModel,SummarizationPipeline:()=>t.SummarizationPipeline,SuppressTokensAtBeginLogitsProcessor:()=>x.SuppressTokensAtBeginLogitsProcessor,Swin2SRForImageSuperResolution:()=>n.Swin2SRForImageSuperResolution,Swin2SRImageProcessor:()=>m.Swin2SRImageProcessor,Swin2SRModel:()=>n.Swin2SRModel,Swin2SRPreTrainedModel:()=>n.Swin2SRPreTrainedModel,SwinForImageClassification:()=>n.SwinForImageClassification,SwinForSemanticSegmentation:()=>n.SwinForSemanticSegmentation,SwinModel:()=>n.SwinModel,SwinPreTrainedModel:()=>n.SwinPreTrainedModel,T5ForConditionalGeneration:()=>n.T5ForConditionalGeneration,T5Model:()=>n.T5Model,T5PreTrainedModel:()=>n.T5PreTrainedModel,T5Tokenizer:()=>r.T5Tokenizer,TableTransformerForObjectDetection:()=>n.TableTransformerForObjectDetection,TableTransformerModel:()=>n.TableTransformerModel,TableTransformerObjectDetectionOutput:()=>n.TableTransformerObjectDetectionOutput,TableTransformerPreTrainedModel:()=>n.TableTransformerPreTrainedModel,TemperatureLogitsWarper:()=>x.TemperatureLogitsWarper,Tensor:()=>c.Tensor,Text2TextGenerationPipeline:()=>t.Text2TextGenerationPipeline,TextClassificationPipeline:()=>t.TextClassificationPipeline,TextGenerationPipeline:()=>t.TextGenerationPipeline,TextStreamer:()=>y.TextStreamer,TextToAudioPipeline:()=>t.TextToAudioPipeline,TokenClassificationPipeline:()=>t.TokenClassificationPipeline,TokenClassifierOutput:()=>n.TokenClassifierOutput,TokenizerModel:()=>r.TokenizerModel,TopKLogitsWarper:()=>x.TopKLogitsWarper,TopPLogitsWarper:()=>x.TopPLogitsWarper,TrOCRForCausalLM:()=>n.TrOCRForCausalLM,TrOCRPreTrainedModel:()=>n.TrOCRPreTrainedModel,TranslationPipeline:()=>t.TranslationPipeline,UltravoxModel:()=>n.UltravoxModel,UltravoxPreTrainedModel:()=>n.UltravoxPreTrainedModel,UltravoxProcessor:()=>_.UltravoxProcessor,UniSpeechForCTC:()=>n.UniSpeechForCTC,UniSpeechForSequenceClassification:()=>n.UniSpeechForSequenceClassification,UniSpeechModel:()=>n.UniSpeechModel,UniSpeechPreTrainedModel:()=>n.UniSpeechPreTrainedModel,UniSpeechSatForAudioFrameClassification:()=>n.UniSpeechSatForAudioFrameClassification,UniSpeechSatForCTC:()=>n.UniSpeechSatForCTC,UniSpeechSatForSequenceClassification:()=>n.UniSpeechSatForSequenceClassification,UniSpeechSatModel:()=>n.UniSpeechSatModel,UniSpeechSatPreTrainedModel:()=>n.UniSpeechSatPreTrainedModel,VLChatProcessor:()=>_.VLChatProcessor,VLMImageProcessor:()=>m.VLMImageProcessor,ViTFeatureExtractor:()=>m.ViTFeatureExtractor,ViTForImageClassification:()=>n.ViTForImageClassification,ViTImageProcessor:()=>m.ViTImageProcessor,ViTMAEModel:()=>n.ViTMAEModel,ViTMAEPreTrainedModel:()=>n.ViTMAEPreTrainedModel,ViTMSNForImageClassification:()=>n.ViTMSNForImageClassification,ViTMSNModel:()=>n.ViTMSNModel,ViTMSNPreTrainedModel:()=>n.ViTMSNPreTrainedModel,ViTModel:()=>n.ViTModel,ViTPreTrainedModel:()=>n.ViTPreTrainedModel,VisionEncoderDecoderModel:()=>n.VisionEncoderDecoderModel,VitMatteForImageMatting:()=>n.VitMatteForImageMatting,VitMatteImageProcessor:()=>m.VitMatteImageProcessor,VitMattePreTrainedModel:()=>n.VitMattePreTrainedModel,VitPoseForPoseEstimation:()=>n.VitPoseForPoseEstimation,VitPoseImageProcessor:()=>m.VitPoseImageProcessor,VitPosePreTrainedModel:()=>n.VitPosePreTrainedModel,VitsModel:()=>n.VitsModel,VitsModelOutput:()=>n.VitsModelOutput,VitsPreTrainedModel:()=>n.VitsPreTrainedModel,VitsTokenizer:()=>r.VitsTokenizer,Wav2Vec2BertForCTC:()=>n.Wav2Vec2BertForCTC,Wav2Vec2BertForSequenceClassification:()=>n.Wav2Vec2BertForSequenceClassification,Wav2Vec2BertModel:()=>n.Wav2Vec2BertModel,Wav2Vec2BertPreTrainedModel:()=>n.Wav2Vec2BertPreTrainedModel,Wav2Vec2CTCTokenizer:()=>r.Wav2Vec2CTCTokenizer,Wav2Vec2FeatureExtractor:()=>d.Wav2Vec2FeatureExtractor,Wav2Vec2ForAudioFrameClassification:()=>n.Wav2Vec2ForAudioFrameClassification,Wav2Vec2ForCTC:()=>n.Wav2Vec2ForCTC,Wav2Vec2ForSequenceClassification:()=>n.Wav2Vec2ForSequenceClassification,Wav2Vec2Model:()=>n.Wav2Vec2Model,Wav2Vec2PreTrainedModel:()=>n.Wav2Vec2PreTrainedModel,Wav2Vec2Processor:()=>_.Wav2Vec2Processor,Wav2Vec2ProcessorWithLM:()=>_.Wav2Vec2ProcessorWithLM,WavLMForAudioFrameClassification:()=>n.WavLMForAudioFrameClassification,WavLMForCTC:()=>n.WavLMForCTC,WavLMForSequenceClassification:()=>n.WavLMForSequenceClassification,WavLMForXVector:()=>n.WavLMForXVector,WavLMModel:()=>n.WavLMModel,WavLMPreTrainedModel:()=>n.WavLMPreTrainedModel,WeSpeakerFeatureExtractor:()=>d.WeSpeakerFeatureExtractor,WeSpeakerResNetModel:()=>n.WeSpeakerResNetModel,WeSpeakerResNetPreTrainedModel:()=>n.WeSpeakerResNetPreTrainedModel,WhisperFeatureExtractor:()=>d.WhisperFeatureExtractor,WhisperForConditionalGeneration:()=>n.WhisperForConditionalGeneration,WhisperModel:()=>n.WhisperModel,WhisperPreTrainedModel:()=>n.WhisperPreTrainedModel,WhisperProcessor:()=>_.WhisperProcessor,WhisperTextStreamer:()=>y.WhisperTextStreamer,WhisperTimeStampLogitsProcessor:()=>x.WhisperTimeStampLogitsProcessor,WhisperTokenizer:()=>r.WhisperTokenizer,XLMForQuestionAnswering:()=>n.XLMForQuestionAnswering,XLMForSequenceClassification:()=>n.XLMForSequenceClassification,XLMForTokenClassification:()=>n.XLMForTokenClassification,XLMModel:()=>n.XLMModel,XLMPreTrainedModel:()=>n.XLMPreTrainedModel,XLMRobertaForMaskedLM:()=>n.XLMRobertaForMaskedLM,XLMRobertaForQuestionAnswering:()=>n.XLMRobertaForQuestionAnswering,XLMRobertaForSequenceClassification:()=>n.XLMRobertaForSequenceClassification,XLMRobertaForTokenClassification:()=>n.XLMRobertaForTokenClassification,XLMRobertaModel:()=>n.XLMRobertaModel,XLMRobertaPreTrainedModel:()=>n.XLMRobertaPreTrainedModel,XLMRobertaTokenizer:()=>r.XLMRobertaTokenizer,XLMTokenizer:()=>r.XLMTokenizer,XLMWithLMHeadModel:()=>n.XLMWithLMHeadModel,XVectorOutput:()=>n.XVectorOutput,YolosFeatureExtractor:()=>m.YolosFeatureExtractor,YolosForObjectDetection:()=>n.YolosForObjectDetection,YolosImageProcessor:()=>m.YolosImageProcessor,YolosModel:()=>n.YolosModel,YolosObjectDetectionOutput:()=>n.YolosObjectDetectionOutput,YolosPreTrainedModel:()=>n.YolosPreTrainedModel,ZeroShotAudioClassificationPipeline:()=>t.ZeroShotAudioClassificationPipeline,ZeroShotClassificationPipeline:()=>t.ZeroShotClassificationPipeline,ZeroShotImageClassificationPipeline:()=>t.ZeroShotImageClassificationPipeline,ZeroShotObjectDetectionPipeline:()=>t.ZeroShotObjectDetectionPipeline,bankers_round:()=>l.bankers_round,cat:()=>c.cat,cos_sim:()=>l.cos_sim,dot:()=>l.dot,dynamic_time_warping:()=>l.dynamic_time_warping,env:()=>e.env,full:()=>c.full,full_like:()=>c.full_like,getKeyValueShapes:()=>i.getKeyValueShapes,hamming:()=>a.hamming,hanning:()=>a.hanning,interpolate:()=>c.interpolate,interpolate_4d:()=>c.interpolate_4d,interpolate_data:()=>l.interpolate_data,is_chinese_char:()=>r.is_chinese_char,layer_norm:()=>c.layer_norm,load_image:()=>o.load_image,load_video:()=>s.load_video,log_softmax:()=>l.log_softmax,magnitude:()=>l.magnitude,matmul:()=>c.matmul,max:()=>l.max,mean:()=>c.mean,mean_pooling:()=>c.mean_pooling,medianFilter:()=>l.medianFilter,mel_filter_bank:()=>a.mel_filter_bank,min:()=>l.min,ones:()=>c.ones,ones_like:()=>c.ones_like,permute:()=>c.permute,permute_data:()=>l.permute_data,pipeline:()=>t.pipeline,quantize_embeddings:()=>c.quantize_embeddings,rand:()=>c.rand,read_audio:()=>a.read_audio,rfft:()=>c.rfft,round:()=>l.round,slice:()=>c.slice,softmax:()=>l.softmax,spectrogram:()=>a.spectrogram,stack:()=>c.stack,std_mean:()=>c.std_mean,topk:()=>c.topk,window_function:()=>a.window_function,zeros:()=>c.zeros,zeros_like:()=>c.zeros_like});var e=df( -/*! ./env.js */ -`./src/env.js`),t=df( -/*! ./pipelines.js */ -`./src/pipelines.js`),n=df( -/*! ./models.js */ -`./src/models.js`),r=df( -/*! ./tokenizers.js */ -`./src/tokenizers.js`),i=df( -/*! ./configs.js */ -`./src/configs.js`),a=df( -/*! ./utils/audio.js */ -`./src/utils/audio.js`),o=df( -/*! ./utils/image.js */ -`./src/utils/image.js`),s=df( -/*! ./utils/video.js */ -`./src/utils/video.js`),c=df( -/*! ./utils/tensor.js */ -`./src/utils/tensor.js`),l=df( -/*! ./utils/maths.js */ -`./src/utils/maths.js`),u=df( -/*! ./base/feature_extraction_utils.js */ -`./src/base/feature_extraction_utils.js`),d=df( -/*! ./models/feature_extractors.js */ -`./src/models/feature_extractors.js`),f=df( -/*! ./models/auto/feature_extraction_auto.js */ -`./src/models/auto/feature_extraction_auto.js`),p=df( -/*! ./base/image_processors_utils.js */ -`./src/base/image_processors_utils.js`),m=df( -/*! ./models/image_processors.js */ -`./src/models/image_processors.js`),h=df( -/*! ./models/auto/image_processing_auto.js */ -`./src/models/auto/image_processing_auto.js`),g=df( -/*! ./base/processing_utils.js */ -`./src/base/processing_utils.js`),_=df( -/*! ./models/processors.js */ -`./src/models/processors.js`),v=df( -/*! ./models/auto/processing_auto.js */ -`./src/models/auto/processing_auto.js`),y=df( -/*! ./generation/streamers.js */ -`./src/generation/streamers.js`),b=df( -/*! ./generation/stopping_criteria.js */ -`./src/generation/stopping_criteria.js`),x=df( -/*! ./generation/logits_process.js */ -`./src/generation/logits_process.js`)})();var ff=$.ASTFeatureExtractor,pf=$.ASTForAudioClassification,mf=$.ASTModel,hf=$.ASTPreTrainedModel,gf=$.AlbertForMaskedLM,_f=$.AlbertForQuestionAnswering,vf=$.AlbertForSequenceClassification,yf=$.AlbertModel,bf=$.AlbertPreTrainedModel,xf=$.AlbertTokenizer,Sf=$.AudioClassificationPipeline,Cf=$.AutoConfig,wf=$.AutoFeatureExtractor,Tf=$.AutoImageProcessor,Ef=$.AutoModel,Df=$.AutoModelForAudioClassification,Of=$.AutoModelForAudioFrameClassification,kf=$.AutoModelForAudioTextToText,Af=$.AutoModelForCTC,jf=$.AutoModelForCausalLM,Mf=$.AutoModelForDepthEstimation,Nf=$.AutoModelForDocumentQuestionAnswering,Pf=$.AutoModelForImageClassification,Ff=$.AutoModelForImageFeatureExtraction,If=$.AutoModelForImageMatting,Lf=$.AutoModelForImageSegmentation,Rf=$.AutoModelForImageTextToText,zf=$.AutoModelForImageToImage,Bf=$.AutoModelForMaskGeneration,Vf=$.AutoModelForMaskedLM,Hf=$.AutoModelForNormalEstimation,Uf=$.AutoModelForObjectDetection,Wf=$.AutoModelForPoseEstimation,Gf=$.AutoModelForQuestionAnswering,Kf=$.AutoModelForSemanticSegmentation,qf=$.AutoModelForSeq2SeqLM,Jf=$.AutoModelForSequenceClassification,Yf=$.AutoModelForSpeechSeq2Seq,Xf=$.AutoModelForTextToSpectrogram,Zf=$.AutoModelForTextToWaveform,Qf=$.AutoModelForTokenClassification,$f=$.AutoModelForUniversalSegmentation,ep=$.AutoModelForVision2Seq,tp=$.AutoModelForXVector,np=$.AutoModelForZeroShotObjectDetection,rp=$.AutoProcessor,ip=$.AutoTokenizer,ap=$.AutomaticSpeechRecognitionPipeline,op=$.BackgroundRemovalPipeline,sp=$.BartForConditionalGeneration,cp=$.BartForSequenceClassification,lp=$.BartModel,up=$.BartPretrainedModel,dp=$.BartTokenizer,fp=$.BaseModelOutput,pp=$.BaseStreamer,mp=$.BeitFeatureExtractor,hp=$.BeitForImageClassification,gp=$.BeitModel,_p=$.BeitPreTrainedModel,vp=$.BertForMaskedLM,yp=$.BertForQuestionAnswering,bp=$.BertForSequenceClassification,xp=$.BertForTokenClassification,Sp=$.BertModel,Cp=$.BertPreTrainedModel,wp=$.BertTokenizer,Tp=$.BitImageProcessor,Ep=$.BlenderbotForConditionalGeneration,Dp=$.BlenderbotModel,Op=$.BlenderbotPreTrainedModel,kp=$.BlenderbotSmallForConditionalGeneration,Ap=$.BlenderbotSmallModel,jp=$.BlenderbotSmallPreTrainedModel,Mp=$.BlenderbotSmallTokenizer,Np=$.BlenderbotTokenizer,Pp=$.BloomForCausalLM,Fp=$.BloomModel,Ip=$.BloomPreTrainedModel,Lp=$.BloomTokenizer,Rp=$.CLIPFeatureExtractor,zp=$.CLIPImageProcessor,Bp=$.CLIPModel,Vp=$.CLIPPreTrainedModel,Hp=$.CLIPSegForImageSegmentation,Up=$.CLIPSegModel,Wp=$.CLIPSegPreTrainedModel,Gp=$.CLIPTextModel,Kp=$.CLIPTextModelWithProjection,qp=$.CLIPTokenizer,Jp=$.CLIPVisionModel,Yp=$.CLIPVisionModelWithProjection,Xp=$.CamembertForMaskedLM,Zp=$.CamembertForQuestionAnswering,Qp=$.CamembertForSequenceClassification,$p=$.CamembertForTokenClassification,em=$.CamembertModel,tm=$.CamembertPreTrainedModel,nm=$.CamembertTokenizer,rm=$.CausalLMOutput,im=$.CausalLMOutputWithPast,am=$.ChineseCLIPFeatureExtractor,om=$.ChineseCLIPModel,sm=$.ChineseCLIPPreTrainedModel,cm=$.ClapAudioModelWithProjection,lm=$.ClapFeatureExtractor,um=$.ClapModel,dm=$.ClapPreTrainedModel,fm=$.ClapTextModelWithProjection,pm=$.ClassifierFreeGuidanceLogitsProcessor,mm=$.CodeGenForCausalLM,hm=$.CodeGenModel,gm=$.CodeGenPreTrainedModel,_m=$.CodeGenTokenizer,vm=$.CodeLlamaTokenizer,ym=$.CohereForCausalLM,bm=$.CohereModel,xm=$.CoherePreTrainedModel,Sm=$.CohereTokenizer,Cm=$.ConvBertForMaskedLM,wm=$.ConvBertForQuestionAnswering,Tm=$.ConvBertForSequenceClassification,Em=$.ConvBertForTokenClassification,Dm=$.ConvBertModel,Om=$.ConvBertPreTrainedModel,km=$.ConvBertTokenizer,Am=$.ConvNextFeatureExtractor,jm=$.ConvNextForImageClassification,Mm=$.ConvNextImageProcessor,Nm=$.ConvNextModel,Pm=$.ConvNextPreTrainedModel,Fm=$.ConvNextV2ForImageClassification,Im=$.ConvNextV2Model,Lm=$.ConvNextV2PreTrainedModel,Rm=$.DFineForObjectDetection,zm=$.DFineModel,Bm=$.DFinePreTrainedModel,Vm=$.DPTFeatureExtractor,Hm=$.DPTForDepthEstimation,Um=$.DPTImageProcessor,Wm=$.DPTModel,Gm=$.DPTPreTrainedModel,Km=$.DacDecoderModel,qm=$.DacDecoderOutput,Jm=$.DacEncoderModel,Ym=$.DacEncoderOutput,Xm=$.DacFeatureExtractor,Zm=$.DacModel,Qm=$.DacPreTrainedModel,$m=$.DataTypeMap,eh=$.DebertaForMaskedLM,th=$.DebertaForQuestionAnswering,nh=$.DebertaForSequenceClassification,rh=$.DebertaForTokenClassification,ih=$.DebertaModel,ah=$.DebertaPreTrainedModel,oh=$.DebertaTokenizer,sh=$.DebertaV2ForMaskedLM,ch=$.DebertaV2ForQuestionAnswering,lh=$.DebertaV2ForSequenceClassification,uh=$.DebertaV2ForTokenClassification,dh=$.DebertaV2Model,fh=$.DebertaV2PreTrainedModel,ph=$.DebertaV2Tokenizer,mh=$.DecisionTransformerModel,hh=$.DecisionTransformerPreTrainedModel,gh=$.DeiTFeatureExtractor,_h=$.DeiTForImageClassification,vh=$.DeiTImageProcessor,yh=$.DeiTModel,bh=$.DeiTPreTrainedModel,xh=$.DepthAnythingForDepthEstimation,Sh=$.DepthAnythingPreTrainedModel,Ch=$.DepthEstimationPipeline,wh=$.DepthProForDepthEstimation,Th=$.DepthProPreTrainedModel,Eh=$.DetrFeatureExtractor,Dh=$.DetrForObjectDetection,Oh=$.DetrForSegmentation,kh=$.DetrImageProcessor,Ah=$.DetrModel,jh=$.DetrObjectDetectionOutput,Mh=$.DetrPreTrainedModel,Nh=$.DetrSegmentationOutput,Ph=$.Dinov2ForImageClassification,Fh=$.Dinov2Model,Ih=$.Dinov2PreTrainedModel,Lh=$.Dinov2WithRegistersForImageClassification,Rh=$.Dinov2WithRegistersModel,zh=$.Dinov2WithRegistersPreTrainedModel,Bh=$.DistilBertForMaskedLM,Vh=$.DistilBertForQuestionAnswering,Hh=$.DistilBertForSequenceClassification,Uh=$.DistilBertForTokenClassification,Wh=$.DistilBertModel,Gh=$.DistilBertPreTrainedModel,Kh=$.DistilBertTokenizer,qh=$.DocumentQuestionAnsweringPipeline,Jh=$.DonutFeatureExtractor,Yh=$.DonutImageProcessor,Xh=$.DonutSwinModel,Zh=$.DonutSwinPreTrainedModel,Qh=$.EfficientNetForImageClassification,$h=$.EfficientNetImageProcessor,eg=$.EfficientNetModel,tg=$.EfficientNetPreTrainedModel,ng=$.ElectraForMaskedLM,rg=$.ElectraForQuestionAnswering,ig=$.ElectraForSequenceClassification,ag=$.ElectraForTokenClassification,og=$.ElectraModel,sg=$.ElectraPreTrainedModel,cg=$.ElectraTokenizer,lg=$.EncodecFeatureExtractor,ug=$.EosTokenCriteria,dg=$.EsmForMaskedLM,fg=$.EsmForSequenceClassification,pg=$.EsmForTokenClassification,mg=$.EsmModel,hg=$.EsmPreTrainedModel,gg=$.EsmTokenizer,_g=$.ExaoneForCausalLM,vg=$.ExaoneModel,yg=$.ExaonePreTrainedModel,bg=$.FFT,xg=$.FalconForCausalLM,Sg=$.FalconModel,Cg=$.FalconPreTrainedModel,wg=$.FalconTokenizer,Tg=$.FastViTForImageClassification,Eg=$.FastViTModel,Dg=$.FastViTPreTrainedModel,Og=$.FeatureExtractionPipeline,kg=$.FeatureExtractor,Ag=$.FillMaskPipeline,jg=$.Florence2ForConditionalGeneration,Mg=$.Florence2PreTrainedModel,Ng=$.Florence2Processor,Pg=$.ForcedBOSTokenLogitsProcessor,Fg=$.ForcedEOSTokenLogitsProcessor,Ig=$.GLPNFeatureExtractor,Lg=$.GLPNForDepthEstimation,Rg=$.GLPNModel,zg=$.GLPNPreTrainedModel,Bg=$.GPT2LMHeadModel,Vg=$.GPT2Model,Hg=$.GPT2PreTrainedModel,Ug=$.GPT2Tokenizer,Wg=$.GPTBigCodeForCausalLM,Gg=$.GPTBigCodeModel,Kg=$.GPTBigCodePreTrainedModel,qg=$.GPTJForCausalLM,Jg=$.GPTJModel,Yg=$.GPTJPreTrainedModel,Xg=$.GPTNeoForCausalLM,Zg=$.GPTNeoModel,Qg=$.GPTNeoPreTrainedModel,$g=$.GPTNeoXForCausalLM,e_=$.GPTNeoXModel,t_=$.GPTNeoXPreTrainedModel,n_=$.GPTNeoXTokenizer,r_=$.Gemma2ForCausalLM,i_=$.Gemma2Model,a_=$.Gemma2PreTrainedModel,o_=$.Gemma3ForCausalLM,s_=$.Gemma3Model,c_=$.Gemma3PreTrainedModel,l_=$.Gemma3nAudioFeatureExtractor,u_=$.Gemma3nForConditionalGeneration,d_=$.Gemma3nPreTrainedModel,f_=$.Gemma3nProcessor,p_=$.GemmaForCausalLM,m_=$.GemmaModel,h_=$.GemmaPreTrainedModel,g_=$.GemmaTokenizer,__=$.GlmForCausalLM,v_=$.GlmModel,y_=$.GlmPreTrainedModel,b_=$.GraniteForCausalLM,x_=$.GraniteModel,S_=$.GranitePreTrainedModel,C_=$.Grok1Tokenizer,w_=$.GroundingDinoForObjectDetection,T_=$.GroundingDinoImageProcessor,E_=$.GroundingDinoPreTrainedModel,D_=$.GroundingDinoProcessor,O_=$.GroupViTModel,k_=$.GroupViTPreTrainedModel,A_=$.HeliumForCausalLM,j_=$.HeliumModel,M_=$.HeliumPreTrainedModel,N_=$.HerbertTokenizer,P_=$.HieraForImageClassification,F_=$.HieraModel,I_=$.HieraPreTrainedModel,L_=$.HubertForCTC,R_=$.HubertForSequenceClassification,z_=$.HubertModel,B_=$.HubertPreTrainedModel,V_=$.IJepaForImageClassification,H_=$.IJepaModel,U_=$.IJepaPreTrainedModel,W_=$.Idefics3ForConditionalGeneration,G_=$.Idefics3ImageProcessor,K_=$.Idefics3PreTrainedModel,q_=$.Idefics3Processor,J_=$.ImageClassificationPipeline,Y_=$.ImageFeatureExtractionPipeline,X_=$.ImageFeatureExtractor,Z_=$.ImageMattingOutput,Q_=$.ImageProcessor,$_=$.ImageSegmentationPipeline,ev=$.ImageToImagePipeline,tv=$.ImageToTextPipeline,nv=$.InterruptableStoppingCriteria,rv=$.JAISLMHeadModel,iv=$.JAISModel,av=$.JAISPreTrainedModel,ov=$.JinaCLIPImageProcessor,sv=$.JinaCLIPModel,cv=$.JinaCLIPPreTrainedModel,lv=$.JinaCLIPProcessor,uv=$.JinaCLIPTextModel,dv=$.JinaCLIPVisionModel,fv=$.LiteWhisperForConditionalGeneration,pv=$.LlamaForCausalLM,mv=$.LlamaModel,hv=$.LlamaPreTrainedModel,gv=$.LlamaTokenizer,_v=$.LlavaForConditionalGeneration,vv=$.LlavaOnevisionForConditionalGeneration,yv=$.LlavaOnevisionImageProcessor,bv=$.LlavaPreTrainedModel,xv=$.LlavaProcessor,Sv=$.LlavaQwen2ForCausalLM,Cv=$.LogitsProcessor,wv=$.LogitsProcessorList,Tv=$.LogitsWarper,Ev=$.LongT5ForConditionalGeneration,Dv=$.LongT5Model,Ov=$.LongT5PreTrainedModel,kv=$.M2M100ForConditionalGeneration,Av=$.M2M100Model,jv=$.M2M100PreTrainedModel,Mv=$.M2M100Tokenizer,Nv=$.MBart50Tokenizer,Pv=$.MBartForCausalLM,Fv=$.MBartForConditionalGeneration,Iv=$.MBartForSequenceClassification,Lv=$.MBartModel,Rv=$.MBartPreTrainedModel,zv=$.MBartTokenizer,Bv=$.MPNetForMaskedLM,Vv=$.MPNetForQuestionAnswering,Hv=$.MPNetForSequenceClassification,Uv=$.MPNetForTokenClassification,Wv=$.MPNetModel,Gv=$.MPNetPreTrainedModel,Kv=$.MPNetTokenizer,qv=$.MT5ForConditionalGeneration,Jv=$.MT5Model,Yv=$.MT5PreTrainedModel,Xv=$.MarianMTModel,Zv=$.MarianModel,Qv=$.MarianPreTrainedModel,$v=$.MarianTokenizer,ey=$.Mask2FormerImageProcessor,ty=$.MaskFormerFeatureExtractor,ny=$.MaskFormerForInstanceSegmentation,ry=$.MaskFormerImageProcessor,iy=$.MaskFormerModel,ay=$.MaskFormerPreTrainedModel,oy=$.MaskedLMOutput,sy=$.MaxLengthCriteria,cy=$.Metric3DForDepthEstimation,ly=$.Metric3DPreTrainedModel,uy=$.Metric3Dv2ForDepthEstimation,dy=$.Metric3Dv2PreTrainedModel,fy=$.MgpstrForSceneTextRecognition,py=$.MgpstrModelOutput,my=$.MgpstrPreTrainedModel,hy=$.MgpstrProcessor,gy=$.MgpstrTokenizer,_y=$.MimiDecoderModel,vy=$.MimiDecoderOutput,yy=$.MimiEncoderModel,by=$.MimiEncoderOutput,xy=$.MimiModel,Sy=$.MimiPreTrainedModel,Cy=$.MinLengthLogitsProcessor,wy=$.MinNewTokensLengthLogitsProcessor,Ty=$.MistralForCausalLM,Ey=$.MistralModel,Dy=$.MistralPreTrainedModel,Oy=$.MobileBertForMaskedLM,ky=$.MobileBertForQuestionAnswering,Ay=$.MobileBertForSequenceClassification,jy=$.MobileBertModel,My=$.MobileBertPreTrainedModel,Ny=$.MobileBertTokenizer,Py=$.MobileLLMForCausalLM,Fy=$.MobileLLMModel,Iy=$.MobileLLMPreTrainedModel,Ly=$.MobileNetV1FeatureExtractor,Ry=$.MobileNetV1ForImageClassification,zy=$.MobileNetV1ForSemanticSegmentation,By=$.MobileNetV1ImageProcessor,Vy=$.MobileNetV1Model,Hy=$.MobileNetV1PreTrainedModel,Uy=$.MobileNetV2FeatureExtractor,Wy=$.MobileNetV2ForImageClassification,Gy=$.MobileNetV2ForSemanticSegmentation,Ky=$.MobileNetV2ImageProcessor,qy=$.MobileNetV2Model,Jy=$.MobileNetV2PreTrainedModel,Yy=$.MobileNetV3FeatureExtractor,Xy=$.MobileNetV3ForImageClassification,Zy=$.MobileNetV3ForSemanticSegmentation,Qy=$.MobileNetV3ImageProcessor,$y=$.MobileNetV3Model,eb=$.MobileNetV3PreTrainedModel,tb=$.MobileNetV4FeatureExtractor,nb=$.MobileNetV4ForImageClassification,rb=$.MobileNetV4ForSemanticSegmentation,ib=$.MobileNetV4ImageProcessor,ab=$.MobileNetV4Model,ob=$.MobileNetV4PreTrainedModel,sb=$.MobileViTFeatureExtractor,cb=$.MobileViTForImageClassification,lb=$.MobileViTImageProcessor,ub=$.MobileViTModel,db=$.MobileViTPreTrainedModel,fb=$.MobileViTV2ForImageClassification,pb=$.MobileViTV2Model,mb=$.MobileViTV2PreTrainedModel,hb=$.ModelOutput,gb=$.ModernBertForMaskedLM,_b=$.ModernBertForSequenceClassification,vb=$.ModernBertForTokenClassification,yb=$.ModernBertModel,bb=$.ModernBertPreTrainedModel,xb=$.Moondream1ForConditionalGeneration,Sb=$.MoonshineFeatureExtractor,Cb=$.MoonshineForConditionalGeneration,wb=$.MoonshineModel,Tb=$.MoonshinePreTrainedModel,Eb=$.MoonshineProcessor,Db=$.MptForCausalLM,Ob=$.MptModel,kb=$.MptPreTrainedModel,Ab=$.MultiModalityCausalLM,jb=$.MultiModalityPreTrainedModel,Mb=$.MusicgenForCausalLM,Nb=$.MusicgenForConditionalGeneration,Pb=$.MusicgenModel,Fb=$.MusicgenPreTrainedModel,Ib=$.NeoBertForMaskedLM,Lb=$.NeoBertForQuestionAnswering,Rb=$.NeoBertForSequenceClassification,zb=$.NeoBertForTokenClassification,Bb=$.NeoBertModel,Vb=$.NeoBertPreTrainedModel,Hb=$.NllbTokenizer,Ub=$.NoBadWordsLogitsProcessor,Wb=$.NoRepeatNGramLogitsProcessor,Gb=$.NomicBertModel,Kb=$.NomicBertPreTrainedModel,qb=$.NougatImageProcessor,Jb=$.NougatTokenizer,Yb=$.OPTForCausalLM,Xb=$.OPTModel,Zb=$.OPTPreTrainedModel,Qb=$.ObjectDetectionPipeline,$b=$.Olmo2ForCausalLM,ex=$.Olmo2Model,tx=$.Olmo2PreTrainedModel,nx=$.OlmoForCausalLM,rx=$.OlmoModel,ix=$.OlmoPreTrainedModel,ax=$.OpenELMForCausalLM,ox=$.OpenELMModel,sx=$.OpenELMPreTrainedModel,cx=$.OwlViTFeatureExtractor,lx=$.OwlViTForObjectDetection,ux=$.OwlViTImageProcessor,dx=$.OwlViTModel,fx=$.OwlViTPreTrainedModel,px=$.OwlViTProcessor,mx=$.Owlv2ForObjectDetection,hx=$.Owlv2ImageProcessor,gx=$.Owlv2Model,_x=$.Owlv2PreTrainedModel,vx=$.PaliGemmaForConditionalGeneration,yx=$.PaliGemmaPreTrainedModel,bx=$.PaliGemmaProcessor,xx=$.PatchTSMixerForPrediction,Sx=$.PatchTSMixerModel,Cx=$.PatchTSMixerPreTrainedModel,wx=$.PatchTSTForPrediction,Tx=$.PatchTSTModel,Ex=$.PatchTSTPreTrainedModel,Dx=$.Phi3ForCausalLM,Ox=$.Phi3Model,kx=$.Phi3PreTrainedModel,Ax=$.Phi3VForCausalLM,jx=$.Phi3VImageProcessor,Mx=$.Phi3VPreTrainedModel,Nx=$.Phi3VProcessor,Px=$.PhiForCausalLM,Fx=$.PhiModel,Ix=$.PhiPreTrainedModel,Lx=$.Pipeline,Rx=$.PreTrainedModel,zx=$.PreTrainedTokenizer,Bx=$.PretrainedConfig,Vx=$.PretrainedMixin,Hx=$.Processor,Ux=$.PvtForImageClassification,Wx=$.PvtImageProcessor,Gx=$.PvtModel,Kx=$.PvtPreTrainedModel,qx=$.PyAnnoteFeatureExtractor,Jx=$.PyAnnoteForAudioFrameClassification,Yx=$.PyAnnoteModel,Xx=$.PyAnnotePreTrainedModel,Zx=$.PyAnnoteProcessor,Qx=$.QuestionAnsweringModelOutput,$x=$.QuestionAnsweringPipeline,eS=$.Qwen2ForCausalLM,tS=$.Qwen2Model,nS=$.Qwen2PreTrainedModel,rS=$.Qwen2Tokenizer,iS=$.Qwen2VLForConditionalGeneration,aS=$.Qwen2VLImageProcessor,oS=$.Qwen2VLPreTrainedModel,sS=$.Qwen2VLProcessor,cS=$.Qwen3ForCausalLM,lS=$.Qwen3Model,uS=$.Qwen3PreTrainedModel,dS=$.RFDetrForObjectDetection,fS=$.RFDetrModel,pS=$.RFDetrObjectDetectionOutput,mS=$.RFDetrPreTrainedModel,hS=$.RTDetrForObjectDetection,gS=$.RTDetrImageProcessor,_S=$.RTDetrModel,vS=$.RTDetrObjectDetectionOutput,yS=$.RTDetrPreTrainedModel,bS=$.RTDetrV2ForObjectDetection,xS=$.RTDetrV2Model,SS=$.RTDetrV2ObjectDetectionOutput,CS=$.RTDetrV2PreTrainedModel,wS=$.RawAudio,TS=$.RawImage,ES=$.RawVideo,DS=$.RawVideoFrame,OS=$.RepetitionPenaltyLogitsProcessor,kS=$.ResNetForImageClassification,AS=$.ResNetModel,jS=$.ResNetPreTrainedModel,MS=$.RoFormerForMaskedLM,NS=$.RoFormerForQuestionAnswering,PS=$.RoFormerForSequenceClassification,FS=$.RoFormerForTokenClassification,IS=$.RoFormerModel,LS=$.RoFormerPreTrainedModel,RS=$.RoFormerTokenizer,zS=$.RobertaForMaskedLM,BS=$.RobertaForQuestionAnswering,VS=$.RobertaForSequenceClassification,HS=$.RobertaForTokenClassification,US=$.RobertaModel,WS=$.RobertaPreTrainedModel,GS=$.RobertaTokenizer,KS=$.SamImageProcessor,qS=$.SamImageSegmentationOutput,JS=$.SamModel,YS=$.SamPreTrainedModel,XS=$.SamProcessor,ZS=$.SapiensForDepthEstimation,QS=$.SapiensForNormalEstimation,$S=$.SapiensForSemanticSegmentation,eC=$.SapiensPreTrainedModel,tC=$.SeamlessM4TFeatureExtractor,nC=$.SegformerFeatureExtractor,rC=$.SegformerForImageClassification,iC=$.SegformerForSemanticSegmentation,aC=$.SegformerImageProcessor,oC=$.SegformerModel,sC=$.SegformerPreTrainedModel,cC=$.Seq2SeqLMOutput,lC=$.SequenceClassifierOutput,uC=$.SiglipImageProcessor,dC=$.SiglipModel,fC=$.SiglipPreTrainedModel,pC=$.SiglipTextModel,mC=$.SiglipTokenizer,hC=$.SiglipVisionModel,gC=$.SmolVLMForConditionalGeneration,_C=$.SmolVLMImageProcessor,vC=$.SmolVLMProcessor,yC=$.SnacDecoderModel,bC=$.SnacEncoderModel,xC=$.SnacFeatureExtractor,SC=$.SnacModel,CC=$.SnacPreTrainedModel,wC=$.SpeechT5FeatureExtractor,TC=$.SpeechT5ForSpeechToText,EC=$.SpeechT5ForTextToSpeech,DC=$.SpeechT5HifiGan,OC=$.SpeechT5Model,kC=$.SpeechT5PreTrainedModel,AC=$.SpeechT5Processor,jC=$.SpeechT5Tokenizer,MC=$.SqueezeBertForMaskedLM,NC=$.SqueezeBertForQuestionAnswering,PC=$.SqueezeBertForSequenceClassification,FC=$.SqueezeBertModel,IC=$.SqueezeBertPreTrainedModel,LC=$.SqueezeBertTokenizer,RC=$.StableLmForCausalLM,zC=$.StableLmModel,BC=$.StableLmPreTrainedModel,VC=$.Starcoder2ForCausalLM,HC=$.Starcoder2Model,UC=$.Starcoder2PreTrainedModel,WC=$.StoppingCriteria,GC=$.StoppingCriteriaList,KC=$.StyleTextToSpeech2Model,qC=$.StyleTextToSpeech2PreTrainedModel,JC=$.SummarizationPipeline,YC=$.SuppressTokensAtBeginLogitsProcessor,XC=$.Swin2SRForImageSuperResolution,ZC=$.Swin2SRImageProcessor,QC=$.Swin2SRModel,$C=$.Swin2SRPreTrainedModel,ew=$.SwinForImageClassification,tw=$.SwinForSemanticSegmentation,nw=$.SwinModel,rw=$.SwinPreTrainedModel,iw=$.T5ForConditionalGeneration,aw=$.T5Model,ow=$.T5PreTrainedModel,sw=$.T5Tokenizer,cw=$.TableTransformerForObjectDetection,lw=$.TableTransformerModel,uw=$.TableTransformerObjectDetectionOutput,dw=$.TableTransformerPreTrainedModel,fw=$.TemperatureLogitsWarper,pw=$.Tensor,mw=$.Text2TextGenerationPipeline,hw=$.TextClassificationPipeline,gw=$.TextGenerationPipeline,_w=$.TextStreamer,vw=$.TextToAudioPipeline,yw=$.TokenClassificationPipeline,bw=$.TokenClassifierOutput,xw=$.TokenizerModel,Sw=$.TopKLogitsWarper,Cw=$.TopPLogitsWarper,ww=$.TrOCRForCausalLM,Tw=$.TrOCRPreTrainedModel,Ew=$.TranslationPipeline,Dw=$.UltravoxModel,Ow=$.UltravoxPreTrainedModel,kw=$.UltravoxProcessor,Aw=$.UniSpeechForCTC,jw=$.UniSpeechForSequenceClassification,Mw=$.UniSpeechModel,Nw=$.UniSpeechPreTrainedModel,Pw=$.UniSpeechSatForAudioFrameClassification,Fw=$.UniSpeechSatForCTC,Iw=$.UniSpeechSatForSequenceClassification,Lw=$.UniSpeechSatModel,Rw=$.UniSpeechSatPreTrainedModel,zw=$.VLChatProcessor,Bw=$.VLMImageProcessor,Vw=$.ViTFeatureExtractor,Hw=$.ViTForImageClassification,Uw=$.ViTImageProcessor,Ww=$.ViTMAEModel,Gw=$.ViTMAEPreTrainedModel,Kw=$.ViTMSNForImageClassification,qw=$.ViTMSNModel,Jw=$.ViTMSNPreTrainedModel,Yw=$.ViTModel,Xw=$.ViTPreTrainedModel,Zw=$.VisionEncoderDecoderModel,Qw=$.VitMatteForImageMatting,$w=$.VitMatteImageProcessor,eT=$.VitMattePreTrainedModel,tT=$.VitPoseForPoseEstimation,nT=$.VitPoseImageProcessor,rT=$.VitPosePreTrainedModel,iT=$.VitsModel,aT=$.VitsModelOutput,oT=$.VitsPreTrainedModel,sT=$.VitsTokenizer,cT=$.Wav2Vec2BertForCTC,lT=$.Wav2Vec2BertForSequenceClassification,uT=$.Wav2Vec2BertModel,dT=$.Wav2Vec2BertPreTrainedModel,fT=$.Wav2Vec2CTCTokenizer,pT=$.Wav2Vec2FeatureExtractor,mT=$.Wav2Vec2ForAudioFrameClassification,hT=$.Wav2Vec2ForCTC,gT=$.Wav2Vec2ForSequenceClassification,_T=$.Wav2Vec2Model,vT=$.Wav2Vec2PreTrainedModel,yT=$.Wav2Vec2Processor,bT=$.Wav2Vec2ProcessorWithLM,xT=$.WavLMForAudioFrameClassification,ST=$.WavLMForCTC,CT=$.WavLMForSequenceClassification,wT=$.WavLMForXVector,TT=$.WavLMModel,ET=$.WavLMPreTrainedModel,DT=$.WeSpeakerFeatureExtractor,OT=$.WeSpeakerResNetModel,kT=$.WeSpeakerResNetPreTrainedModel,AT=$.WhisperFeatureExtractor,jT=$.WhisperForConditionalGeneration,MT=$.WhisperModel,NT=$.WhisperPreTrainedModel,PT=$.WhisperProcessor,FT=$.WhisperTextStreamer,IT=$.WhisperTimeStampLogitsProcessor,LT=$.WhisperTokenizer,RT=$.XLMForQuestionAnswering,zT=$.XLMForSequenceClassification,BT=$.XLMForTokenClassification,VT=$.XLMModel,HT=$.XLMPreTrainedModel,UT=$.XLMRobertaForMaskedLM,WT=$.XLMRobertaForQuestionAnswering,GT=$.XLMRobertaForSequenceClassification,KT=$.XLMRobertaForTokenClassification,qT=$.XLMRobertaModel,JT=$.XLMRobertaPreTrainedModel,YT=$.XLMRobertaTokenizer,XT=$.XLMTokenizer,ZT=$.XLMWithLMHeadModel,QT=$.XVectorOutput,$T=$.YolosFeatureExtractor,eE=$.YolosForObjectDetection,tE=$.YolosImageProcessor,nE=$.YolosModel,rE=$.YolosObjectDetectionOutput,iE=$.YolosPreTrainedModel,aE=$.ZeroShotAudioClassificationPipeline,oE=$.ZeroShotClassificationPipeline,sE=$.ZeroShotImageClassificationPipeline,cE=$.ZeroShotObjectDetectionPipeline,lE=$.bankers_round,uE=$.cat,dE=$.cos_sim,fE=$.dot,pE=$.dynamic_time_warping,mE=$.env,hE=$.full,gE=$.full_like,_E=$.getKeyValueShapes,vE=$.hamming,yE=$.hanning,bE=$.interpolate,xE=$.interpolate_4d,SE=$.interpolate_data,CE=$.is_chinese_char,wE=$.layer_norm,TE=$.load_image,EE=$.load_video,DE=$.log_softmax,OE=$.magnitude,kE=$.matmul,AE=$.max,jE=$.mean,ME=$.mean_pooling,NE=$.medianFilter,PE=$.mel_filter_bank,FE=$.min,IE=$.ones,LE=$.ones_like,RE=$.permute,zE=$.permute_data,BE=$.pipeline,VE=$.quantize_embeddings,HE=$.rand,UE=$.read_audio,WE=$.rfft,GE=$.round,KE=$.slice,qE=$.softmax,JE=$.spectrogram,YE=$.stack,XE=$.std_mean,ZE=$.topk,QE=$.window_function,$E=$.zeros,eD=$.zeros_like;let tD=64;var nD=(t=class{static async getInstance(e){return this.model_id=`onnx-community/whisper-large-v3-turbo`,this.tokenizer??=ip.from_pretrained(this.model_id,{progress_callback:e}),this.processor??=rp.from_pretrained(this.model_id,{progress_callback:e}),this.model??=jT.from_pretrained(this.model_id,{dtype:{encoder_model:`fp16`,decoder_model_merged:`q4`},device:`webgpu`,progress_callback:e}),Promise.all([this.tokenizer,this.processor,this.model])}},e.defineProperty(t,`model_id`,null),e.defineProperty(t,`tokenizer`,void 0),e.defineProperty(t,`processor`,void 0),e.defineProperty(t,`model`,void 0),t);async function rD(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e{o??=performance.now();let t;s++>0&&(t=s/(performance.now()-o)*1e3),globalThis.postMessage({status:`update`,output:e,tps:t,numTokens:s})},l=new _w(r,{skip_prompt:!0,decode_kwargs:{skip_special_tokens:!0},callback_function:c}),u=await i(n),d=await a.generate({...u,max_new_tokens:tD,language:t,streamer:l}),f=r.batch_decode(d,{skip_special_tokens:!0});globalThis.postMessage({status:`complete`,output:f}),iD=!1}async function oD(){globalThis.postMessage({status:`loading`,data:`Loading model...`});let[e,t,n]=await nD.getInstance(e=>{globalThis.postMessage(e)});globalThis.postMessage({status:`loading`,data:`Compiling shaders and warming up model...`}),await n.generate({input_features:hE([1,128,3e3],0),max_new_tokens:1}),globalThis.postMessage({status:`ready`})}globalThis.addEventListener(`message`,async e=>{let{type:t,data:n}=e.data;switch(t){case`load`:oD();break;case`generate`:aD(n);break}})})(); \ No newline at end of file diff --git a/assets/xai-5so4YKVK.js b/assets/xai-5so4YKVK.js deleted file mode 100644 index 218e8be8b708dc63672a487523e724517510a2ba..0000000000000000000000000000000000000000 --- a/assets/xai-5so4YKVK.js +++ /dev/null @@ -1 +0,0 @@ -import{ProviderAdvancedSettings_default as e,ProviderApiKeyInput_default as t,ProviderBaseUrlInput_default as n,ProviderBasicSettings_default as r,ProviderSettingsContainer_default as i,ProviderSettingsLayout_default as a,computed as o,createBlock as s,createVNode as c,defineComponent as l,onMounted as u,openBlock as d,storeToRefs as f,unref as p,useI18n as m,useProvidersStore as h,useRouter as g,watch as _,withCtx as v}from"./index-iQVr9nx1.js";import{route_block_default as y}from"./route-block-D_p8WJle.js";const b=`xai`;var x=l({__name:`xai`,setup(l){let{t:y}=m(),x=g(),S=h(),{providers:C}=f(S),w=o(()=>S.getProviderMetadata(b)),T=o({get:()=>{var e;return(e=C.value[b])?.apiKey||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=o({get:()=>{var e;return(e=C.value[b])?.baseUrl||``},set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});u(()=>{var e,t;S.initializeProvider(b),T.value=(e=C.value[b])?.apiKey||``,E.value=(t=C.value[b])?.baseUrl||``}),_([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){var e;C.value[b]={...(e=w.value)?.defaultOptions}}return(o,l)=>{var u,f;return d(),s(p(a),{"provider-name":(u=w.value)?.localizedName,"provider-icon":(f=w.value)?.icon,"on-back":()=>p(x).back()},{default:v(()=>[c(p(i),null,{default:v(()=>[c(p(r),{title:p(y)(`settings.pages.providers.common.section.basic.title`),description:p(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:v(()=>{var e;return[c(p(t),{modelValue:T.value,"onUpdate:modelValue":l[0]||=e=>T.value=e,"provider-name":(e=w.value)?.localizedName,placeholder:`xai-...`},null,8,[`modelValue`,`provider-name`])]}),_:1},8,[`title`,`description`]),c(p(e),{title:p(y)(`settings.pages.providers.common.section.advanced.title`)},{default:v(()=>[c(p(n),{modelValue:E.value,"onUpdate:modelValue":l[1]||=e=>E.value=e,placeholder:`https://api.x.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`])}}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/xai-DkCOJscz.js b/assets/xai-DkCOJscz.js new file mode 100644 index 0000000000000000000000000000000000000000..6e634e6f542c24351d4577f8968d451a3d6387cc --- /dev/null +++ b/assets/xai-DkCOJscz.js @@ -0,0 +1 @@ +import{L as e,M as t,N as n,O as r,P as i,Q as a,R as o,aE as s,aJ as c,d3 as l,d7 as u,dB as d,dF as f,dH as p,dV as m,da as h,dn as g,dv as _,i as v}from"./index-C9kcCpP-.js";import{b as y}from"./route-block-B2lA4iHQ.js";const b=`xai`;var x=u({__name:`xai`,setup(u){let{t:y}=a(),x=s(),S=v(),{providers:C}=c(S),w=_(()=>S.getProviderMetadata(b)),T=_({get:()=>C.value[b]?.apiKey||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].apiKey=e}}),E=_({get:()=>C.value[b]?.baseUrl||``,set:e=>{C.value[b]||(C.value[b]={}),C.value[b].baseUrl=e}});l(()=>{S.initializeProvider(b),T.value=C.value[b]?.apiKey||``,E.value=C.value[b]?.baseUrl||``}),f([T,E],()=>{C.value[b]={...C.value[b],apiKey:T.value,baseUrl:E.value||``}});function D(){C.value[b]={...w.value?.defaultOptions}}return(a,s)=>(p(),g(m(e),{"provider-name":w.value?.localizedName,"provider-icon":w.value?.icon,"on-back":()=>m(x).back()},{default:h(()=>[d(m(t),null,{default:h(()=>[d(m(n),{title:m(y)(`settings.pages.providers.common.section.basic.title`),description:m(y)(`settings.pages.providers.common.section.basic.description`),"on-reset":D},{default:h(()=>[d(m(i),{modelValue:T.value,"onUpdate:modelValue":s[0]||=e=>T.value=e,"provider-name":w.value?.localizedName,placeholder:`xai-...`},null,8,[`modelValue`,`provider-name`])]),_:1},8,[`title`,`description`]),d(m(o),{title:m(y)(`settings.pages.providers.common.section.advanced.title`)},{default:h(()=>[d(m(r),{modelValue:E.value,"onUpdate:modelValue":s[1]||=e=>E.value=e,placeholder:`https://api.x.ai/v1/`},null,8,[`modelValue`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`provider-name`,`provider-icon`,`on-back`]))}});typeof y==`function`&&y(x);var S=x;export{S as default}; \ No newline at end of file diff --git a/assets/zod-CD8IEU5z-BBYGiT2g.js b/assets/zod-CD8IEU5z-BBYGiT2g.js deleted file mode 100644 index e7a8de30df75fc63fe7f02b81742a41d6c1ea78c..0000000000000000000000000000000000000000 --- a/assets/zod-CD8IEU5z-BBYGiT2g.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-CM8C1Snz.js","assets/index-iQVr9nx1.js","assets/index-ChU1TNQB.css"])))=>i.map(i=>d[i]); -import{__vitePreload as e,missingDependenciesUrl as t}from"./index-iQVr9nx1.js";const n=async()=>{let n=e=>{throw Error(`xsschema: Missing zod v4 dependencies "zod". see ${t}`)},r=e=>{throw Error(`xsschema: Missing zod v3 dependencies "zod-to-json-schema". see ${t}`)};try{let{toJSONSchema:t}=await e(async()=>{let{toJSONSchema:e}=await import(`./core-BgSRlN71.js`);return{toJSONSchema:e}},[]);n=t}catch(e){e instanceof Error&&console.error(e.message)}try{let{zodToJsonSchema:t}=await e(async()=>{let{zodToJsonSchema:e}=await import(`./esm-CM8C1Snz.js`);return{zodToJsonSchema:e}},__vite__mapDeps([0,1,2]));r=t}catch(e){e instanceof Error&&console.error(e.message)}return async e=>`_zod`in e?n(e):r(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/assets/zod-CD8IEU5z-DYfvEgrv.js b/assets/zod-CD8IEU5z-DYfvEgrv.js new file mode 100644 index 0000000000000000000000000000000000000000..8587fbee687993b2d6489f1e4123f1f6d89e29c7 --- /dev/null +++ b/assets/zod-CD8IEU5z-DYfvEgrv.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-CGcXMJ5Z.js","assets/index-C9kcCpP-.js","assets/index-AqR2SpAu.css"])))=>i.map(i=>d[i]); +import{aI as e,l as t}from"./index-C9kcCpP-.js";const n=async()=>{let n=e=>{throw Error(`xsschema: Missing zod v4 dependencies "zod". see ${t}`)},r=e=>{throw Error(`xsschema: Missing zod v3 dependencies "zod-to-json-schema". see ${t}`)};try{let{toJSONSchema:t}=await e(async()=>{let{toJSONSchema:e}=await import(`./core-o524g4tY.js`);return{toJSONSchema:e}},[]);n=t}catch(e){e instanceof Error&&console.error(e.message)}try{let{zodToJsonSchema:t}=await e(async()=>{let{zodToJsonSchema:e}=await import(`./esm-CGcXMJ5Z.js`);return{zodToJsonSchema:e}},__vite__mapDeps([0,1,2]));r=t}catch(e){e instanceof Error&&console.error(e.message)}return async e=>`_zod`in e?n(e):r(e)};export{n as getToJsonSchemaFn}; \ No newline at end of file diff --git a/index.html b/index.html index c0b00948ed4b25e53575e8f14a4e37f95c1a57c6..25912ee7a6aee13bdc688149df660bf89bb53fd5 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,6 @@ - @@ -33,8 +32,8 @@ src="/remote-assets/page-external-data/js/script.js" > - - + +
diff --git a/sw.js b/sw.js index 38580e3ad60a44c779d76d8c19555c225337c126..2a44274a9c5dc99f9f5812ee33ce30bd2e83c1a5 100644 --- a/sw.js +++ b/sw.js @@ -1 +1 @@ -if(!self.define){let s,e={};const l=(l,r)=>(l=new URL(l+".js",r).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(r,i)=>{const n=s||("document"in self?document.currentScript.src:"")||location.href;if(e[n])return;let u={};const o=s=>l(s,n),a={module:{uri:n},exports:u,require:o};e[n]=Promise.all(r.map(s=>a[s]||o(s))).then(s=>(i(...s),u))}}define(["./workbox-3aa584b4"],function(s){"use strict";self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"assets/__vite-browser-external-Wa8hNVG-.js",revision:null},{url:"assets/__vite-optional-peer-dep_effect_xsschema-HpGugLyI.js",revision:null},{url:"assets/__vite-optional-peer-dep_sury_xsschema-JuQAxfFv.js",revision:null},{url:"assets/_...all_-Cu434aE7.js",revision:null},{url:"assets/airi-card-vWWO_DCt.js",revision:null},{url:"assets/alibaba-cloud-model-studio-t5KYUhHp.js",revision:null},{url:"assets/AnimatedWave-Ba4PQcRS.css",revision:null},{url:"assets/AnimatedWave-CpqzXgxy.js",revision:null},{url:"assets/anthropic-BL9968xm.js",revision:null},{url:"assets/appearance-DE27mPrm.js",revision:null},{url:"assets/arktype-C-GObzDh-D9LW_dgz.js",revision:null},{url:"assets/audio-D04pH23-.js",revision:null},{url:"assets/audio-record-BxHzK1uy.js",revision:null},{url:"assets/background-remove-BCwtw-uq.js",revision:null},{url:"assets/Basic-BE3KxqAa.js",revision:null},{url:"assets/browser-3IcCfs_4.js",revision:null},{url:"assets/browser-BSMtDYed.js",revision:null},{url:"assets/CardCreate-DrM4wEtE.js",revision:null},{url:"assets/CardCreate-QsTV9xFv.js",revision:null},{url:"assets/CardCreationDialog-6qbWAmov.js",revision:null},{url:"assets/CardCreationDialog-CG2KLbdk.css",revision:null},{url:"assets/CardCreationDialog-kvoYgWVP.js",revision:null},{url:"assets/CardDetailDialog-Ci9-z9G1.js",revision:null},{url:"assets/CardDetailDialog-iDYkHhJf.js",revision:null},{url:"assets/CardListItem-DVQOs9x9.js",revision:null},{url:"assets/CardListItem-DZ5x2i0z.js",revision:null},{url:"assets/chat-DyBPoQrn.js",revision:null},{url:"assets/cloudflare-workers-ai-Cd0fSx03.js",revision:null},{url:"assets/color-scheme-DCNDjPVh.js",revision:null},{url:"assets/color-scheme-DQ9rzeUD.css",revision:null},{url:"assets/ColorPalette-vg8v3B0o.js",revision:null},{url:"assets/consciousness-Cnr7fcj_.js",revision:null},{url:"assets/core-BgSRlN71.js",revision:null},{url:"assets/deepseek-DjD7u8Sw.js",revision:null},{url:"assets/default-browser-CAeK6Ish.js",revision:null},{url:"assets/default-node-CK1wfd3F.js",revision:null},{url:"assets/default-VFMqb8d1.js",revision:null},{url:"assets/delays-DIgAwRJp.js",revision:null},{url:"assets/DeleteCardDialog-BTqL0RX4.js",revision:null},{url:"assets/DeleteCardDialog-CJNH2uKY.js",revision:null},{url:"assets/developer-Rn-HQane.js",revision:null},{url:"assets/dist-BjoOBWKx.js",revision:null},{url:"assets/dist-GvbkCCcT.js",revision:null},{url:"assets/duckdb-browser-coi.pthread.worker-WD1J30pV.js",revision:null},{url:"assets/duckdb-browser-coi.worker-Ji2I_m5s.js",revision:null},{url:"assets/duckdb-browser-eh.worker-B2xnDV1H.js",revision:null},{url:"assets/duckdb-browser-mvp.worker-DCs3_EjR.js",revision:null},{url:"assets/duckdb-coi-CSr8FQO4.wasm",revision:null},{url:"assets/duckdb-eh-BJOC5S4x.wasm",revision:null},{url:"assets/duckdb-mvp-8HYqhb4i.wasm",revision:null},{url:"assets/duckdb-mvp-D888HGlq.js",revision:null},{url:"assets/effect-DBSVVF8G-BCfh_Z9z.js",revision:null},{url:"assets/elevenlabs-DQkIgILi.js",revision:null},{url:"assets/emotions-Bvj1954O.js",revision:null},{url:"assets/esm-CM8C1Snz.js",revision:null},{url:"assets/featherless-ai-CnXf0hdU.js",revision:null},{url:"assets/filter-message-Cz8_UJue.js",revision:null},{url:"assets/fireworks-ai-CeuUFiNS.js",revision:null},{url:"assets/general-BDYMIhOo.js",revision:null},{url:"assets/gesture-circle-D3DL8v2R.js",revision:null},{url:"assets/google-generative-ai-BGBjFWON.js",revision:null},{url:"assets/HeaderLink-Bxs3yYEi.css",revision:null},{url:"assets/HeaderLink-DjJ0Gw-G.js",revision:null},{url:"assets/hearing-Bb4rC1nx.js",revision:null},{url:"assets/home-C8SJ9QB4.js",revision:null},{url:"assets/icon-animation-B3Ug4nWM.js",revision:null},{url:"assets/IconAnimation-Ddiua4ZD.js",revision:null},{url:"assets/image-BhuwcwI9.css",revision:null},{url:"assets/image-FSHpQQAR.js",revision:null},{url:"assets/import-url-browser-7PcqReZq.js",revision:null},{url:"assets/import-url-browser-CimRTf1_.js",revision:null},{url:"assets/import-url-node-D_b2Vrj1.js",revision:null},{url:"assets/index-ChU1TNQB.css",revision:null},{url:"assets/index-iQVr9nx1.js",revision:null},{url:"assets/InputFile-BJcnvuYo.js",revision:null},{url:"assets/js/CubismSdkForWeb-5-r.3/Core/live2dcubismcore.min.js",revision:null},{url:"assets/memory-aTUtni3K.js",revision:null},{url:"assets/memory-long-term-CPfD2kUn.js",revision:null},{url:"assets/memory-short-term-DFRE0wky.js",revision:null},{url:"assets/messages-BIOkfqJ8.js",revision:null},{url:"assets/microsoft-speech-Bp0hO7OG.js",revision:null},{url:"assets/mistral-ai-DCNKx3Gc.js",revision:null},{url:"assets/models-ceI-TpWV.js",revision:null},{url:"assets/models-D8ntFVBl.css",revision:null},{url:"assets/modules-D4OJ1522.js",revision:null},{url:"assets/moonshot-ai-BdPynK2u.js",revision:null},{url:"assets/novita-ai-D-ZB8cQc.js",revision:null},{url:"assets/ollama-BdYMmRmG.js",revision:null},{url:"assets/openai-audio-speech-Dozx0Ri_.js",revision:null},{url:"assets/openai-audio-transcription--fAkPCjL.js",revision:null},{url:"assets/openai-D2msF8K1.js",revision:null},{url:"assets/openrouter-ai-EiSvPQWH.js",revision:null},{url:"assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm",revision:null},{url:"assets/pages--dRALHez.js",revision:null},{url:"assets/plain-D6gLTHFQ.js",revision:null},{url:"assets/player2-D97DJZ76.js",revision:null},{url:"assets/player2-speech-CSaGh3NS.js",revision:null},{url:"assets/polaroid-KOvlyFYP.js",revision:null},{url:"assets/process.worklet-CF6Ao8XG.js",revision:null},{url:"assets/providers-C1BmhIzi.js",revision:null},{url:"assets/queue-CCHh_YlY.js",revision:null},{url:"assets/route-block-D_p8WJle.js",revision:null},{url:"assets/scene-CyZR35vM.js",revision:null},{url:"assets/Scenes-CZT_B7Wn.js",revision:null},{url:"assets/settings-2ofGNGd6.js",revision:null},{url:"assets/settings-B9J0fQVG.js",revision:null},{url:"assets/speech-5aOToTwY.js",revision:null},{url:"assets/stage-BiKoENIs.js",revision:null},{url:"assets/stage-uGRRi7YM.js",revision:null},{url:"assets/sury-GtnkadyM-BTgkE7MM.js",revision:null},{url:"assets/Textarea-BJEUAUG6.js",revision:null},{url:"assets/theme-color-B1JvcUcD.js",revision:null},{url:"assets/together-ai-Cl6VxBMw.js",revision:null},{url:"assets/transformers.web-CZcwiFXx.js",revision:null},{url:"assets/valibot-CbgwcZn_-Brv-hcxF.js",revision:null},{url:"assets/vibrant-BQJAnvPb.js",revision:null},{url:"assets/volcengine-DjrEGih7.js",revision:null},{url:"assets/worker-CkF6jqty.js",revision:null},{url:"assets/xai-5so4YKVK.js",revision:null},{url:"assets/zod-CD8IEU5z-BBYGiT2g.js",revision:null},{url:"index.html",revision:"5c904e9fe5e3326e17ebe5acbded4629"},{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"apple-touch-icon.png",revision:"b41f3c1ba3c98364c640fe2b7348bd39"},{url:"favicon.svg",revision:"47d50a7bc31b26d14f3895982906935f"},{url:"maskable_icon_x192.png",revision:"a6ed025fb1491e8b498c9f4c0064d190"},{url:"maskable_icon_x512.png",revision:"b7b2c2d9bda88c74a295695c8a0e7468"},{url:"web-app-manifest-192x192.png",revision:"c9731148ea6befa78a495f63536c82eb"},{url:"web-app-manifest-512x512.png",revision:"bcae855d5ff588b682314fe1c6e530f0"},{url:"manifest.webmanifest",revision:"0a5a207cc5b76af4bd35f0b587dd1902"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("index.html"),{denylist:[/^\/docs\//,/^\/ui\//,/^\/remote-assets\//,/^\/api\//]}))}); +if(!self.define){let s,e={};const l=(l,r)=>(l=new URL(l+".js",r).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(r,i)=>{const n=s||("document"in self?document.currentScript.src:"")||location.href;if(e[n])return;let u={};const o=s=>l(s,n),a={module:{uri:n},exports:u,require:o};e[n]=Promise.all(r.map(s=>a[s]||o(s))).then(s=>(i(...s),u))}}define(["./workbox-3aa584b4"],function(s){"use strict";self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"assets/__vite-browser-external-Xk3YGxmN.js",revision:null},{url:"assets/__vite-optional-peer-dep_effect_xsschema-O4ggYyu8.js",revision:null},{url:"assets/__vite-optional-peer-dep_sury_xsschema-DKmH-p9C.js",revision:null},{url:"assets/_...all_-eQpeZWOw.js",revision:null},{url:"assets/airi-card-HWETNpiq.js",revision:null},{url:"assets/alibaba-cloud-model-studio-DzXYVh34.js",revision:null},{url:"assets/AnimatedWave-Ba4PQcRS.css",revision:null},{url:"assets/AnimatedWave-vmZPkx36.js",revision:null},{url:"assets/anthropic-C47u_7Ce.js",revision:null},{url:"assets/appearance-CHlIhV3Q.js",revision:null},{url:"assets/arktype-C-GObzDh-D9LW_dgz.js",revision:null},{url:"assets/audio-DDkm4nFt.js",revision:null},{url:"assets/audio-record-C0pKTMd6.js",revision:null},{url:"assets/background-remove-GD_OBr4Y.js",revision:null},{url:"assets/Basic-D95BeH1T.js",revision:null},{url:"assets/browser-BSMtDYed.js",revision:null},{url:"assets/browser-UfbE_1lV.js",revision:null},{url:"assets/CardCreate-vI7-JE_m.js",revision:null},{url:"assets/CardCreate-zpppfU_P.js",revision:null},{url:"assets/CardCreationDialog-1FdBirpE.js",revision:null},{url:"assets/CardCreationDialog-CG2KLbdk.css",revision:null},{url:"assets/CardCreationDialog-Cms6yBxy.js",revision:null},{url:"assets/CardDetailDialog-CNHw_vI_.js",revision:null},{url:"assets/CardDetailDialog-D8Olu3Yo.js",revision:null},{url:"assets/CardListItem-LYi2jKJc.js",revision:null},{url:"assets/CardListItem-noXJhtke.js",revision:null},{url:"assets/chat-OoWKER4B.js",revision:null},{url:"assets/cloudflare-workers-ai-Coo5GpSQ.js",revision:null},{url:"assets/color-scheme-CEN2sNrK.js",revision:null},{url:"assets/color-scheme-DQ9rzeUD.css",revision:null},{url:"assets/ColorPalette-BSzUrihr.js",revision:null},{url:"assets/consciousness-DLy5lbRs.js",revision:null},{url:"assets/core-o524g4tY.js",revision:null},{url:"assets/deepseek-cryzZIcn.js",revision:null},{url:"assets/default-B3hrbX4E.js",revision:null},{url:"assets/default-browser-CAeK6Ish.js",revision:null},{url:"assets/default-node-D3algJHl.js",revision:null},{url:"assets/delays-Bymja6WU.js",revision:null},{url:"assets/DeleteCardDialog-BSO29tu_.js",revision:null},{url:"assets/DeleteCardDialog-CmNQfJAN.js",revision:null},{url:"assets/developer-BMsKoloG.js",revision:null},{url:"assets/dist-6SPr9_vA.js",revision:null},{url:"assets/dist-NaQNo8Nw.js",revision:null},{url:"assets/duckdb-browser-coi.pthread.worker-WD1J30pV.js",revision:null},{url:"assets/duckdb-browser-coi.worker-Ji2I_m5s.js",revision:null},{url:"assets/duckdb-browser-eh.worker-B2xnDV1H.js",revision:null},{url:"assets/duckdb-browser-mvp.worker-DCs3_EjR.js",revision:null},{url:"assets/duckdb-coi-CSr8FQO4.wasm",revision:null},{url:"assets/duckdb-eh-BJOC5S4x.wasm",revision:null},{url:"assets/duckdb-mvp-8HYqhb4i.wasm",revision:null},{url:"assets/duckdb-mvp-D8OBsaZy.js",revision:null},{url:"assets/effect-DBSVVF8G-CevZ3D-J.js",revision:null},{url:"assets/elevenlabs-DzuUHR4k.js",revision:null},{url:"assets/emotions-B6yfBv1x.js",revision:null},{url:"assets/esm-CGcXMJ5Z.js",revision:null},{url:"assets/featherless-ai-C665TGqc.js",revision:null},{url:"assets/filter-message-CC7rWc9-.js",revision:null},{url:"assets/fireworks-ai-CNUUKc6N.js",revision:null},{url:"assets/general-DiRR6B5N.js",revision:null},{url:"assets/gesture-circle-D7hIKXta.js",revision:null},{url:"assets/google-generative-ai-DlK2YXku.js",revision:null},{url:"assets/HeaderLink-Bxs3yYEi.css",revision:null},{url:"assets/HeaderLink-xWxD2Zu3.js",revision:null},{url:"assets/hearing-DXhzYE8B.js",revision:null},{url:"assets/home-C5vBXnsS.js",revision:null},{url:"assets/icon-animation-BGVKm1so.js",revision:null},{url:"assets/IconAnimation-CvK4BRGS.js",revision:null},{url:"assets/image-BhuwcwI9.css",revision:null},{url:"assets/image-DCQY7vtj.js",revision:null},{url:"assets/import-url-browser-D6BBwmoZ.js",revision:null},{url:"assets/import-url-browser-DiF0t3Mp.js",revision:null},{url:"assets/import-url-node-6Z1GQvNO.js",revision:null},{url:"assets/index-AqR2SpAu.css",revision:null},{url:"assets/index-C9kcCpP-.js",revision:null},{url:"assets/InputFile-B-1kiNIu.js",revision:null},{url:"assets/js/CubismSdkForWeb-5-r.3/Core/live2dcubismcore.min.js",revision:null},{url:"assets/memory-BMWLkjdm.js",revision:null},{url:"assets/memory-long-term-Ct-X9BDW.js",revision:null},{url:"assets/memory-short-term-Dw4gKfK3.js",revision:null},{url:"assets/messages-E5zyAorn.js",revision:null},{url:"assets/microsoft-speech-jmLNHtkW.js",revision:null},{url:"assets/mistral-ai-DKfvUF_S.js",revision:null},{url:"assets/models-CrCwINpv.js",revision:null},{url:"assets/models-D8ntFVBl.css",revision:null},{url:"assets/modules-BIBnS6fC.js",revision:null},{url:"assets/moonshot-ai-cGYSl1Nz.js",revision:null},{url:"assets/novita-ai-B4HVg0kO.js",revision:null},{url:"assets/ollama-6INhEbAn.js",revision:null},{url:"assets/openai-audio-speech-DfzMcJUw.js",revision:null},{url:"assets/openai-audio-transcription-c5hgWOUB.js",revision:null},{url:"assets/openai-DOyMayjy.js",revision:null},{url:"assets/openrouter-ai-DzSt5Tci.js",revision:null},{url:"assets/ort-wasm-simd-threaded.jsep-B0T3yYHD.wasm",revision:null},{url:"assets/pages-Byy2Hhdn.js",revision:null},{url:"assets/plain-DBLy4JhS.js",revision:null},{url:"assets/player2-speech-BBofLZIX.js",revision:null},{url:"assets/player2-uSjrXn5Y.js",revision:null},{url:"assets/polaroid-A4EHzymE.js",revision:null},{url:"assets/process.worklet-CF6Ao8XG.js",revision:null},{url:"assets/providers-DTc4g9cH.js",revision:null},{url:"assets/queue-CiR6go9H.js",revision:null},{url:"assets/route-block-B2lA4iHQ.js",revision:null},{url:"assets/scene-COu-Ti7i.js",revision:null},{url:"assets/Scenes-HTltqZ48.js",revision:null},{url:"assets/settings-BmSeK43T.js",revision:null},{url:"assets/settings-CldBYxd-.js",revision:null},{url:"assets/speech-T1PXFj7-.js",revision:null},{url:"assets/stage-67_1mIFF.js",revision:null},{url:"assets/stage-DcWHapKr.js",revision:null},{url:"assets/sury-GtnkadyM-BxYLhecR.js",revision:null},{url:"assets/Textarea-CMwGMW-L.js",revision:null},{url:"assets/theme-color-CX8iTiuc.js",revision:null},{url:"assets/together-ai-CecV5ca4.js",revision:null},{url:"assets/transformers.web-BihMDlzQ.js",revision:null},{url:"assets/valibot-CbgwcZn_-CI1fVJf9.js",revision:null},{url:"assets/vibrant-DdAX8FW9.js",revision:null},{url:"assets/volcengine-BmRMK9-E.js",revision:null},{url:"assets/worker-Bv82ofgX.js",revision:null},{url:"assets/xai-DkCOJscz.js",revision:null},{url:"assets/zod-CD8IEU5z-DYfvEgrv.js",revision:null},{url:"index.html",revision:"25ecdfef1dfcbe23376326b1384daaab"},{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"apple-touch-icon.png",revision:"b41f3c1ba3c98364c640fe2b7348bd39"},{url:"favicon.svg",revision:"47d50a7bc31b26d14f3895982906935f"},{url:"maskable_icon_x192.png",revision:"a6ed025fb1491e8b498c9f4c0064d190"},{url:"maskable_icon_x512.png",revision:"b7b2c2d9bda88c74a295695c8a0e7468"},{url:"web-app-manifest-192x192.png",revision:"c9731148ea6befa78a495f63536c82eb"},{url:"web-app-manifest-512x512.png",revision:"bcae855d5ff588b682314fe1c6e530f0"},{url:"manifest.webmanifest",revision:"0a5a207cc5b76af4bd35f0b587dd1902"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("index.html"),{denylist:[/^\/docs\//,/^\/ui\//,/^\/remote-assets\//,/^\/api\//]}))});